{"_id":"@anjartiyo/giogia-semantic","_rev":"5-35cd5b84ac67612b55800250f2e09170","name":"@anjartiyo/giogia-semantic","dist-tags":{"latest":"0.1.6"},"versions":{"0.1.0":{"name":"@anjartiyo/giogia-semantic","version":"0.1.0","keywords":["testing","locators","semantic","snapshot"],"author":{"name":"Anjar Tiyo"},"license":"ISC","_id":"@anjartiyo/giogia-semantic@0.1.0","maintainers":[{"name":"anjartiyo","email":"anjar.jog@gmail.com"}],"homepage":"https://github.com/AnjarTiyo/giogia#readme","bugs":{"url":"https://github.com/AnjarTiyo/giogia/issues"},"dist":{"shasum":"1d8010e20823774e46d07adb64908dd5dc4077f8","tarball":"https://registry.npmjs.org/@anjartiyo/giogia-semantic/-/giogia-semantic-0.1.0.tgz","fileCount":3,"integrity":"sha512-EgRydnESXPDsmTNoeDlk0H+mt1qnXOL0LWTAzA1+BfoZg/+3R7HeU0246oQZ9k9wNvk9CMlOpvkIJGmwnjUvWQ==","signatures":[{"sig":"MEUCIB7CqSdIaRYRVPZMWM5ohaKC4HQ1i2RJ6FpYLaTPbmUvAiEA9rMCuPK2Y5bz/znwITAMhEcXST94a4BWP1yWngBTGMo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7833},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"4a0be37cc7e619385331267fff7da2fb3fa528a6","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist"},"_npmUser":{"name":"anjartiyo","email":"anjar.jog@gmail.com"},"repository":{"url":"git+https://github.com/AnjarTiyo/giogia.git","type":"git","directory":"packages/semantic"},"_npmVersion":"11.12.1","description":"Semantic locator engine and snapshot store for GioGia","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@anjartiyo/giogia-core":"*"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/giogia-semantic_0.1.0_1781693372036_0.29353386401482906","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@anjartiyo/giogia-semantic","version":"0.1.2","keywords":["testing","locators","semantic","snapshot"],"author":{"name":"Anjar Tiyo"},"license":"ISC","_id":"@anjartiyo/giogia-semantic@0.1.2","maintainers":[{"name":"anjartiyo","email":"anjar.jog@gmail.com"}],"homepage":"https://github.com/AnjarTiyo/giogia#readme","bugs":{"url":"https://github.com/AnjarTiyo/giogia/issues"},"dist":{"shasum":"5dc1f677a75a6b1b389f889d63e62ee07fdee8db","tarball":"https://registry.npmjs.org/@anjartiyo/giogia-semantic/-/giogia-semantic-0.1.2.tgz","fileCount":4,"integrity":"sha512-WovetAAywTB3WSfi3rYIEesGZ/wE76GtE1hWso6XTFDZFFtim45E+jIfI86lVu5hhZgmuiTfmTl4oOuZBYUpBQ==","signatures":[{"sig":"MEUCIB1UuIIbFDKfcl0xDUXVCJdJFHrAldOZm7g0i5O+2Y0AAiEAwHpM0GISySbB2Zk9TjKKNQexkYSZqJit/wvpdb1vUko=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8916},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"195284069e09f779c29036ecc925a64cde8e5057","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist"},"_npmUser":{"name":"anjartiyo","email":"anjar.jog@gmail.com"},"repository":{"url":"git+https://github.com/AnjarTiyo/giogia.git","type":"git","directory":"packages/semantic"},"_npmVersion":"11.12.1","description":"Semantic locator engine and snapshot store for GioGia","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@anjartiyo/giogia-core":"*"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/giogia-semantic_0.1.2_1781693744233_0.5926665055891442","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@anjartiyo/giogia-semantic","version":"0.1.3","keywords":["testing","locators","semantic","snapshot"],"author":{"name":"Anjar Tiyo"},"license":"ISC","_id":"@anjartiyo/giogia-semantic@0.1.3","maintainers":[{"name":"anjartiyo","email":"anjar.jog@gmail.com"}],"homepage":"https://github.com/AnjarTiyo/giogia#readme","bugs":{"url":"https://github.com/AnjarTiyo/giogia/issues"},"dist":{"shasum":"e3f6339b46b8497d4112e0a3be915d615042a2a1","tarball":"https://registry.npmjs.org/@anjartiyo/giogia-semantic/-/giogia-semantic-0.1.3.tgz","fileCount":4,"integrity":"sha512-Bj1SWRG/mgLtXPn2D7K3K0EOawBWrgbmFFLAcRplC6iH7pfACi6L3wXZHn9WlSoYd4Bfd8sxSU8hSo4ZivNx4w==","signatures":[{"sig":"MEQCIHXwFZyKZvN55q3KrqRjpeHTZYWFfaXt6Cb/+FfAzjSkAiB/UjmcPJfm17BX4fEJVMbbIzWk2jO8if3VPR2pLXwQ1g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8916},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"75205e939c3abea04d88989e88fc815669670e88","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist"},"_npmUser":{"name":"anjartiyo","email":"anjar.jog@gmail.com"},"repository":{"url":"git+https://github.com/AnjarTiyo/giogia.git","type":"git","directory":"packages/semantic"},"_npmVersion":"11.12.1","description":"Semantic locator engine and snapshot store for GioGia","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@anjartiyo/giogia-core":"*"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/giogia-semantic_0.1.3_1781694670081_0.17115521227987252","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@anjartiyo/giogia-semantic","version":"0.1.4","keywords":["testing","locators","semantic","snapshot"],"author":{"name":"Anjar Tiyo"},"license":"ISC","_id":"@anjartiyo/giogia-semantic@0.1.4","maintainers":[{"name":"anjartiyo","email":"anjar.jog@gmail.com"}],"homepage":"https://github.com/AnjarTiyo/giogia#readme","bugs":{"url":"https://github.com/AnjarTiyo/giogia/issues"},"dist":{"shasum":"e82568426e34eb771211857026ef4040e8ba47f3","tarball":"https://registry.npmjs.org/@anjartiyo/giogia-semantic/-/giogia-semantic-0.1.4.tgz","fileCount":4,"integrity":"sha512-ZaBZMRWdtrX9o7v8Cr+WSEEXF4GdZeFaa2y1nySOkj2jSbRkKDJ9Rp63Wva8xBrMoVbWxZoHGh0w7UCWegLxlg==","signatures":[{"sig":"MEUCIDey3M5tKBEGILVbyiPhAIGPBzCbHgP6UR5CPG11N6cKAiEAh31d45sV0vR3G8SyDbWHO9e0IKDHg5OPD9BMUsDB2Ng=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8916},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"82841f9d230bbd47069a7162d2074b98d3a6a342","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist"},"_npmUser":{"name":"anjartiyo","email":"anjar.jog@gmail.com"},"repository":{"url":"git+https://github.com/AnjarTiyo/giogia.git","type":"git","directory":"packages/semantic"},"_npmVersion":"11.12.1","description":"Semantic locator engine and snapshot store for GioGia","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@anjartiyo/giogia-core":"*"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/giogia-semantic_0.1.4_1781694986473_0.8966610448874166","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@anjartiyo/giogia-semantic","version":"0.1.6","type":"module","description":"Semantic locator engine and snapshot store for GioGia","license":"ISC","author":{"name":"Anjar Tiyo"},"repository":{"type":"git","url":"git+https://github.com/AnjarTiyo/giogia.git","directory":"packages/semantic"},"main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"keywords":["testing","locators","semantic","snapshot"],"scripts":{"build":"tsup","clean":"rm -rf dist","test":"vitest run"},"dependencies":{"@anjartiyo/giogia-core":"*"},"gitHead":"efaa58ec7efef9c7d64a4c2209923eeef469b5f9","_id":"@anjartiyo/giogia-semantic@0.1.6","bugs":{"url":"https://github.com/AnjarTiyo/giogia/issues"},"homepage":"https://github.com/AnjarTiyo/giogia#readme","_nodeVersion":"24.15.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-btVz9E66Ikl6NIgN4WPycNsBQEBvnUyvzuRn6JRfhk9RYoskEIUcwCVpqdrRoRu265oQhyJvHrUUlQkeIk6OVA==","shasum":"5b739387835643ea88147270f31121fc6417dc20","tarball":"https://registry.npmjs.org/@anjartiyo/giogia-semantic/-/giogia-semantic-0.1.6.tgz","fileCount":4,"unpackedSize":8916,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFP9ZePy7oJrIS1QcGYxa/g6aNr7pgQpbaSoaFvPox4aAiBLBMK7leyWDM4PQzmNRZ4mNjuGm+qoH/5UDYvpYdZqLA=="}]},"_npmUser":{"name":"anjartiyo","email":"anjar.jog@gmail.com"},"directories":{},"maintainers":[{"name":"anjartiyo","email":"anjar.jog@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/giogia-semantic_0.1.6_1781695473080_0.6136914851959572"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-17T10:49:31.908Z","modified":"2026-06-17T11:24:33.343Z","0.1.0":"2026-06-17T10:49:32.162Z","0.1.2":"2026-06-17T10:55:44.371Z","0.1.3":"2026-06-17T11:11:10.348Z","0.1.4":"2026-06-17T11:16:26.608Z","0.1.6":"2026-06-17T11:24:33.225Z"},"bugs":{"url":"https://github.com/AnjarTiyo/giogia/issues"},"author":{"name":"Anjar Tiyo"},"license":"ISC","homepage":"https://github.com/AnjarTiyo/giogia#readme","keywords":["testing","locators","semantic","snapshot"],"repository":{"type":"git","url":"git+https://github.com/AnjarTiyo/giogia.git","directory":"packages/semantic"},"description":"Semantic locator engine and snapshot store for GioGia","maintainers":[{"name":"anjartiyo","email":"anjar.jog@gmail.com"}],"readme":"# @anjartiyo/giogia-semantic\n\nSemantic locator engine for GioGia. Snapshot storage, multi-strategy locator resolution, and Page Object Model generation.\n\n## Usage\n\n### Snapshot Store\n```ts\nimport { SnapshotStore } from '@anjartiyo/giogia-semantic'\n\nconst store = new SnapshotStore()\nawait store.save(snapshot, '.gio')\nconst loaded = await store.load('.gio/snapshot.json')\nconst element = store.findElement('login_button')\n```\n\n### Locator Resolution\n```ts\nimport { LocatorResolver } from '@anjartiyo/giogia-semantic'\n\nconst resolver = new LocatorResolver(snapshot.elements)\nconst selector = resolver.resolve('login_button')\n// '#login-btn' (tries: semantic-id → label → text → role → test-id → css → xpath)\n```\n\n### POM Generation\n```ts\nimport { PageModelGenerator } from '@anjartiyo/giogia-semantic'\n\nconst gen = new PageModelGenerator()\nconst model = gen.generate(snapshot)\n// { name: 'LoginPage', elements: [...], source: 'export class LoginPage {...}' }\n```\n\n## Install\n\n```bash\nnpm install @anjartiyo/giogia-semantic\n```\n","readmeFilename":"README.md"}