{"_id":"@aas-ai-editor/core","_rev":"6-5e029fa631a49362678d18ba66b95a26","name":"@aas-ai-editor/core","dist-tags":{"latest":"0.2.5"},"versions":{"0.2.0":{"name":"@aas-ai-editor/core","version":"0.2.0","keywords":["aas","asset-administration-shell","aasx","industry4.0","digital-twin","json-patch","opc","zip"],"author":{"name":"AAS AI Editor Contributors"},"license":"MIT","_id":"@aas-ai-editor/core@0.2.0","maintainers":[{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"}],"homepage":"https://github.com/aas-ai-editor/aas-ai-editor#readme","bugs":{"url":"https://github.com/aas-ai-editor/aas-ai-editor/issues"},"dist":{"shasum":"02e9cb30664480838723db33c59c58371091b0b5","tarball":"https://registry.npmjs.org/@aas-ai-editor/core/-/core-0.2.0.tgz","fileCount":98,"integrity":"sha512-eQYdrtyLM5jqtkHqhOjekn8QUFMJUrbXpnQq62OlF5s5CpZNm9Fmd7Uo0fg1CjGgizV99soY2NQrXZTOzqMvKA==","signatures":[{"sig":"MEYCIQC+CXyASi2VWp4LfNbWPE9YYHdcxScQMOPOnadRSsek1gIhAN2CM9kcElh7m05oWdCyWiBK9GkC9YtZESjv4WT7o8Qc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":242341},"main":"./dist/index.js","type":"module","_from":"file:aas-ai-editor-core-0.2.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./aas":{"types":"./dist/aas/index.d.ts","import":"./dist/aas/index.js"},"./aasx":{"types":"./dist/aasx/index.d.ts","import":"./dist/aasx/index.js"},"./diff":{"types":"./dist/diff/index.d.ts","import":"./dist/diff/index.js"},"./idta":{"types":"./dist/idta/index.d.ts","import":"./dist/idta/index.js"},"./patch":{"types":"./dist/patch/index.d.ts","import":"./dist/patch/index.js"}},"scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"vitest run","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts --fix","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","compile-templates":"tsx scripts/compile-templates.ts"},"_npmUser":{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"},"_resolved":"/tmp/0a7f8b144a39e9fa995ba05c45d463a2/aas-ai-editor-core-0.2.0.tgz","_integrity":"sha512-eQYdrtyLM5jqtkHqhOjekn8QUFMJUrbXpnQq62OlF5s5CpZNm9Fmd7Uo0fg1CjGgizV99soY2NQrXZTOzqMvKA==","repository":{"url":"git+https://github.com/aas-ai-editor/aas-ai-editor.git","type":"git","directory":"packages/core"},"_npmVersion":"10.8.2","description":"Core AASX parsing, patch operations, and validation for AAS AI Editor","directories":{},"_nodeVersion":"20.20.0","dependencies":{"zod":"^3.23.0","fflate":"^0.8.2","fast-json-patch":"^3.1.1","fast-xml-parser":"^4.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","eslint":"^9.0.0","vitest":"^2.1.0","@eslint/js":"^9.39.2","typescript":"^5.7.0","@types/node":"^20.10.0","typescript-eslint":"^8.54.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.2.0_1770141400476_0.1560063299933654","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@aas-ai-editor/core","version":"0.2.1","keywords":["aas","asset-administration-shell","aasx","industry4.0","digital-twin","json-patch","opc","zip"],"author":{"name":"AAS AI Editor Contributors"},"license":"MIT","_id":"@aas-ai-editor/core@0.2.1","maintainers":[{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"}],"homepage":"https://github.com/aas-ai-editor/aas-ai-editor#readme","bugs":{"url":"https://github.com/aas-ai-editor/aas-ai-editor/issues"},"dist":{"shasum":"fbd59f4501f68e5e4a92f9d9d5baf2bf40f3efc1","tarball":"https://registry.npmjs.org/@aas-ai-editor/core/-/core-0.2.1.tgz","fileCount":99,"integrity":"sha512-O1zvu5vnFUaXFTogNUXAjSS0B8Cw1xhSqs4J9HehMShcDVAsA8f0GveLtnIuqQTkK1xA1g2vafd5bbc2rETZvg==","signatures":[{"sig":"MEQCIHmNEMLDg2if01LCQ1RCXJJIT30YHVEBab6biQ/Z3igVAiAjQIIvLjUR3sRkidaSD4GvdYowwofT1DIXfKprW0PQNQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249644},"main":"./dist/index.js","type":"module","_from":"file:aas-ai-editor-core-0.2.1.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./aas":{"types":"./dist/aas/index.d.ts","import":"./dist/aas/index.js"},"./aasx":{"types":"./dist/aasx/index.d.ts","import":"./dist/aasx/index.js"},"./diff":{"types":"./dist/diff/index.d.ts","import":"./dist/diff/index.js"},"./idta":{"types":"./dist/idta/index.d.ts","import":"./dist/idta/index.js"},"./patch":{"types":"./dist/patch/index.d.ts","import":"./dist/patch/index.js"}},"scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"vitest run","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts --fix","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","compile-templates":"tsx scripts/compile-templates.ts"},"_npmUser":{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"},"_resolved":"/tmp/de6cb9d46f80389904480c15b77ae16e/aas-ai-editor-core-0.2.1.tgz","_integrity":"sha512-O1zvu5vnFUaXFTogNUXAjSS0B8Cw1xhSqs4J9HehMShcDVAsA8f0GveLtnIuqQTkK1xA1g2vafd5bbc2rETZvg==","repository":{"url":"git+https://github.com/aas-ai-editor/aas-ai-editor.git","type":"git","directory":"packages/core"},"_npmVersion":"10.8.2","description":"Core AASX parsing, patch operations, and validation for AAS AI Editor","directories":{},"_nodeVersion":"20.20.0","dependencies":{"zod":"^3.23.0","fflate":"^0.8.2","fast-json-patch":"^3.1.1","fast-xml-parser":"^4.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","eslint":"^9.0.0","vitest":"^2.1.0","@eslint/js":"^9.39.2","typescript":"^5.7.0","@types/node":"^20.10.0","typescript-eslint":"^8.54.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.2.1_1770142353506_0.10740358853134024","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@aas-ai-editor/core","version":"0.2.2","keywords":["aas","asset-administration-shell","aasx","industry4.0","digital-twin","json-patch","opc","zip"],"author":{"name":"AAS AI Editor Contributors"},"license":"MIT","_id":"@aas-ai-editor/core@0.2.2","maintainers":[{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"}],"homepage":"https://github.com/hadijannat/aas-ai-editor#readme","bugs":{"url":"https://github.com/hadijannat/aas-ai-editor/issues"},"dist":{"shasum":"69e0bc9df910a7c7d25e7d7e52e9c391dc2409a0","tarball":"https://registry.npmjs.org/@aas-ai-editor/core/-/core-0.2.2.tgz","fileCount":99,"integrity":"sha512-SVd9gfnt7dkCCbaTCQeJTvmnXK7j/nO3hIr6LWLMs4n7UHInlQAe1edTvQ9WtehdP2J8oGvbWLkYU3zkU9WANw==","signatures":[{"sig":"MEQCIGlDdQywjI4UFrse9Bet1ujC4JUN0wsxpxZ+LlK4lHkVAiBNMZ4Vo3wt/32wlAtQ2vv1dGEHM+elVY2dA9Ot3L+j1g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249635},"main":"./dist/index.js","type":"module","_from":"file:aas-ai-editor-core-0.2.2.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./aas":{"types":"./dist/aas/index.d.ts","import":"./dist/aas/index.js"},"./aasx":{"types":"./dist/aasx/index.d.ts","import":"./dist/aasx/index.js"},"./diff":{"types":"./dist/diff/index.d.ts","import":"./dist/diff/index.js"},"./idta":{"types":"./dist/idta/index.d.ts","import":"./dist/idta/index.js"},"./patch":{"types":"./dist/patch/index.d.ts","import":"./dist/patch/index.js"}},"scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"vitest run","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts --fix","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","compile-templates":"tsx scripts/compile-templates.ts"},"_npmUser":{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"},"_resolved":"/tmp/a91817048c2fefd574e444cb1868ef0f/aas-ai-editor-core-0.2.2.tgz","_integrity":"sha512-SVd9gfnt7dkCCbaTCQeJTvmnXK7j/nO3hIr6LWLMs4n7UHInlQAe1edTvQ9WtehdP2J8oGvbWLkYU3zkU9WANw==","repository":{"url":"git+https://github.com/hadijannat/aas-ai-editor.git","type":"git","directory":"packages/core"},"_npmVersion":"10.8.2","description":"Core AASX parsing, patch operations, and validation for AAS AI Editor","directories":{},"_nodeVersion":"20.20.0","dependencies":{"zod":"^3.23.0","fflate":"^0.8.2","fast-json-patch":"^3.1.1","fast-xml-parser":"^4.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","eslint":"^9.0.0","vitest":"^2.1.0","@eslint/js":"^9.39.2","typescript":"^5.7.0","@types/node":"^20.10.0","typescript-eslint":"^8.54.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.2.2_1770142595866_0.5608269665069154","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@aas-ai-editor/core","version":"0.2.3","keywords":["aas","asset-administration-shell","aasx","industry4.0","digital-twin","json-patch","opc","zip"],"author":{"name":"AAS AI Editor Contributors"},"license":"MIT","_id":"@aas-ai-editor/core@0.2.3","maintainers":[{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"}],"homepage":"https://github.com/hadijannat/aas-ai-editor#readme","bugs":{"url":"https://github.com/hadijannat/aas-ai-editor/issues"},"dist":{"shasum":"66e2c07ba92875a0f86db1215d0b41c639047cf1","tarball":"https://registry.npmjs.org/@aas-ai-editor/core/-/core-0.2.3.tgz","fileCount":98,"integrity":"sha512-j2fS/WuCtzaZcGiS3WT7bmGFo3F+blBqps0eRMDPa3CIh9u18+OvkCroiwIfwB7wRyy7S+VouYmFfgBGg+XNDg==","signatures":[{"sig":"MEQCIDLGgBa0/umJDsNRB2I/zsGl/p/3hoBIB4kHrNCTnL1OAiBVpsx4gHa6XGlBzV+A4F7WQMpP8RKMhuSsodiyXMEvhw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":255843},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./aas":{"types":"./dist/aas/index.d.ts","import":"./dist/aas/index.js"},"./aasx":{"types":"./dist/aasx/index.d.ts","import":"./dist/aasx/index.js"},"./diff":{"types":"./dist/diff/index.d.ts","import":"./dist/diff/index.js"},"./idta":{"types":"./dist/idta/index.d.ts","import":"./dist/idta/index.js"},"./patch":{"types":"./dist/patch/index.d.ts","import":"./dist/patch/index.js"}},"gitHead":"92c83c9dc286fc7a0300ab79fe418354e11adc08","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"vitest run","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts --fix","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"pnpm run build","compile-templates":"tsx scripts/compile-templates.ts"},"_npmUser":{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"},"repository":{"url":"git+https://github.com/hadijannat/aas-ai-editor.git","type":"git","directory":"packages/core"},"_npmVersion":"10.9.4","description":"Core AASX parsing, patch operations, and validation for AAS AI Editor","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.23.0","fflate":"^0.8.2","fast-json-patch":"^3.1.1","fast-xml-parser":"^4.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","eslint":"^9.0.0","vitest":"^2.1.0","@eslint/js":"^9.39.2","typescript":"^5.7.0","@types/node":"^20.10.0","typescript-eslint":"^8.54.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.2.3_1770146872154_0.562278305342371","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@aas-ai-editor/core","version":"0.2.4","keywords":["aas","asset-administration-shell","aasx","industry4.0","digital-twin","json-patch","opc","zip"],"author":{"name":"AAS AI Editor Contributors"},"license":"MIT","_id":"@aas-ai-editor/core@0.2.4","maintainers":[{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"}],"homepage":"https://github.com/hadijannat/aas-ai-editor#readme","bugs":{"url":"https://github.com/hadijannat/aas-ai-editor/issues"},"dist":{"shasum":"597622990f17e5d0930d9ebbf28a21eb634b11f9","tarball":"https://registry.npmjs.org/@aas-ai-editor/core/-/core-0.2.4.tgz","fileCount":98,"integrity":"sha512-zNjRc8hkIpjzO6Xp1/KLptiAuFQintXdGNLt7LhwwwMe9xF2M6+VZMsTVGbwY63tmBpQ6UrGOQRhwB6KIws4zg==","signatures":[{"sig":"MEQCIAn1aByr8z5+AseUHQmXtmwuTgss0RJgke0o8lW+FBi0AiAAh0J0zePWx2O1f8CABlbU8t+iRV1XvCyyjAshLKXDiw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":255453},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./aas":{"types":"./dist/aas/index.d.ts","import":"./dist/aas/index.js"},"./aasx":{"types":"./dist/aasx/index.d.ts","import":"./dist/aasx/index.js"},"./diff":{"types":"./dist/diff/index.d.ts","import":"./dist/diff/index.js"},"./idta":{"types":"./dist/idta/index.d.ts","import":"./dist/idta/index.js"},"./patch":{"types":"./dist/patch/index.d.ts","import":"./dist/patch/index.js"}},"gitHead":"ca52362127de97f4f629369cc69c9ea51107e8e7","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"vitest run","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts --fix","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"pnpm run build","compile-templates":"tsx scripts/compile-templates.ts"},"_npmUser":{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"},"repository":{"url":"git+https://github.com/hadijannat/aas-ai-editor.git","type":"git","directory":"packages/core"},"_npmVersion":"10.9.4","description":"Core AASX parsing, patch operations, and validation for AAS AI Editor","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.23.0","fflate":"^0.8.2","fast-json-patch":"^3.1.1","fast-xml-parser":"^4.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","eslint":"^9.0.0","vitest":"^2.1.0","@eslint/js":"^9.39.2","typescript":"^5.7.0","@types/node":"^20.10.0","typescript-eslint":"^8.54.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.2.4_1770152227690_0.5945423950315742","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@aas-ai-editor/core","version":"0.2.5","description":"Core AASX parsing, patch operations, and validation for AAS AI Editor","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./aasx":{"types":"./dist/aasx/index.d.ts","import":"./dist/aasx/index.js"},"./aas":{"types":"./dist/aas/index.d.ts","import":"./dist/aas/index.js"},"./patch":{"types":"./dist/patch/index.d.ts","import":"./dist/patch/index.js"},"./diff":{"types":"./dist/diff/index.d.ts","import":"./dist/diff/index.js"},"./idta":{"types":"./dist/idta/index.d.ts","import":"./dist/idta/index.js"}},"keywords":["aas","asset-administration-shell","aasx","industry4.0","digital-twin","json-patch","opc","zip"],"author":{"name":"AAS AI Editor Contributors"},"license":"MIT","homepage":"https://github.com/hadijannat/aas-ai-editor#readme","repository":{"type":"git","url":"git+https://github.com/hadijannat/aas-ai-editor.git","directory":"packages/core"},"bugs":{"url":"https://github.com/hadijannat/aas-ai-editor/issues"},"dependencies":{"fast-json-patch":"^3.1.1","fast-xml-parser":"^4.5.0","fflate":"^0.8.2","zod":"^3.23.0"},"devDependencies":{"@eslint/js":"^9.39.2","@types/node":"^20.10.0","eslint":"^9.0.0","tsx":"^4.7.0","typescript":"^5.7.0","typescript-eslint":"^8.54.0","vitest":"^2.1.0"},"peerDependencies":{"typescript":">=5.0.0"},"engines":{"node":">=20.0.0"},"scripts":{"build":"tsc","dev":"tsc --watch","lint":"eslint src --ext .ts","lint:fix":"eslint src --ext .ts --fix","typecheck":"tsc --noEmit","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","clean":"rm -rf dist","compile-templates":"tsx scripts/compile-templates.ts"},"_id":"@aas-ai-editor/core@0.2.5","_integrity":"sha512-gbg6X4cltT3Ee3rZ+CWxAT6WWLZR07U9diY7eLfFwjYY/Due49wO2QW4u+Tc8JchmlocoDkL6WaO26kyWmw9Iw==","_resolved":"/private/var/folders/pk/yqt38ry90vscv71zb0j4hggm0000gn/T/7d74b5afbf4fb567a13b3eed94def0a5/aas-ai-editor-core-0.2.5.tgz","_from":"file:aas-ai-editor-core-0.2.5.tgz","_nodeVersion":"22.22.0","_npmVersion":"10.9.4","dist":{"integrity":"sha512-gbg6X4cltT3Ee3rZ+CWxAT6WWLZR07U9diY7eLfFwjYY/Due49wO2QW4u+Tc8JchmlocoDkL6WaO26kyWmw9Iw==","shasum":"e9398722b8bdd995b3021750641b29306119580d","tarball":"https://registry.npmjs.org/@aas-ai-editor/core/-/core-0.2.5.tgz","fileCount":107,"unpackedSize":261997,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIErwZbskfqJN/hYu8y3Q2Hjbizmq0d8H7iLrUQNkBDUBAiBKrkr03ocHQXnNOsFGIfTaT2APVgdxTXNDs4ZUoXfgZA=="}]},"_npmUser":{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"},"directories":{},"maintainers":[{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/core_0.2.5_1770155749859_0.13707959892595234"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-03T17:56:40.375Z","modified":"2026-02-03T21:55:50.122Z","0.2.0":"2026-02-03T17:56:40.625Z","0.2.1":"2026-02-03T18:12:33.654Z","0.2.2":"2026-02-03T18:16:36.013Z","0.2.3":"2026-02-03T19:27:52.291Z","0.2.4":"2026-02-03T20:57:07.867Z","0.2.5":"2026-02-03T21:55:50.008Z"},"bugs":{"url":"https://github.com/hadijannat/aas-ai-editor/issues"},"author":{"name":"AAS AI Editor Contributors"},"license":"MIT","homepage":"https://github.com/hadijannat/aas-ai-editor#readme","keywords":["aas","asset-administration-shell","aasx","industry4.0","digital-twin","json-patch","opc","zip"],"repository":{"type":"git","url":"git+https://github.com/hadijannat/aas-ai-editor.git","directory":"packages/core"},"description":"Core AASX parsing, patch operations, and validation for AAS AI Editor","maintainers":[{"name":"hadijannat","email":"h.jannatabadi@iat.rwth-aachen.de"}],"readme":"# @aas-ai-editor/core\n\n[![npm version](https://img.shields.io/npm/v/@aas-ai-editor/core.svg)](https://www.npmjs.com/package/@aas-ai-editor/core)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n\nCore library for working with Asset Administration Shell (AAS) packages. Provides AASX file parsing, patch-based editing, semantic diffing, and IDTA template validation.\n\n## Installation\n\n```bash\nnpm install @aas-ai-editor/core\n```\n\n## Quick Start\n\n```typescript\nimport { readAasx, writeAasx } from '@aas-ai-editor/core/aasx';\nimport { selectSubmodelBySemanticId } from '@aas-ai-editor/core/aas';\nimport { applyPatch, createPatch } from '@aas-ai-editor/core/patch';\n\n// Read an AASX file\nconst buffer = await fs.readFile('example.aasx');\nconst { environment, files, metadata } = await readAasx(buffer);\n\n// Navigate the AAS structure\nconst nameplate = selectSubmodelBySemanticId(\n  environment,\n  'https://admin-shell.io/zvei/nameplate/2/0/Nameplate'\n);\n\n// Modify with patches (enables undo/redo)\nconst patch = createPatch(\n  'replace',\n  '/submodels/0/submodelElements/0/value',\n  'New Value'\n);\nconst result = applyPatch(environment, [patch]);\n\n// Write back to AASX\nconst output = await writeAasx(result.environment, { files, metadata });\nawait fs.writeFile('modified.aasx', output);\n```\n\n## API Reference\n\n### Main Export (`@aas-ai-editor/core`)\n\nRe-exports all modules for convenience:\n\n```typescript\nimport {\n  readAasx, writeAasx,           // AASX handling\n  selectSubmodelBySemanticId,    // Selectors\n  applyPatch, createPatch,       // Patch operations\n  calculateDiff,                  // Diffing\n  loadTemplate,                   // Templates\n} from '@aas-ai-editor/core';\n```\n\n---\n\n### AASX Module (`@aas-ai-editor/core/aasx`)\n\nRead and write AASX packages (OPC-based ZIP files).\n\n```typescript\nimport { readAasx, writeAasx } from '@aas-ai-editor/core/aasx';\n```\n\n#### `readAasx(buffer, options?)`\n\nParses an AASX file from a Buffer or Uint8Array.\n\n```typescript\nconst { environment, files, metadata } = await readAasx(aasxBuffer);\n\n// environment: The AAS Environment with shells, submodels, concept descriptions\n// files: Map of supplementary files (thumbnails, documents, etc.)\n// metadata: OPC package metadata\n```\n\n**Options:**\n- `strict?: boolean` - Throw on invalid structures (default: false)\n\n#### `writeAasx(environment, options?)`\n\nCreates an AASX file as a Uint8Array.\n\n```typescript\nconst buffer = await writeAasx(environment, {\n  files,      // Optional: supplementary files to include\n  metadata,   // Optional: OPC metadata\n});\n```\n\n---\n\n### AAS Module (`@aas-ai-editor/core/aas`)\n\nType definitions and selectors for navigating AAS structures.\n\n```typescript\nimport {\n  type Environment,\n  type Submodel,\n  type Property,\n  selectSubmodelBySemanticId,\n  selectSmeByIdShort,\n  selectAasById,\n} from '@aas-ai-editor/core/aas';\n```\n\n#### Selectors\n\n```typescript\n// Find submodel by semantic ID\nconst submodel = selectSubmodelBySemanticId(env, 'https://...');\n\n// Find element by idShort within a submodel\nconst property = selectSmeByIdShort(submodel, 'ManufacturerName');\n\n// Find AAS by ID\nconst aas = selectAasById(env, 'urn:example:aas:1');\n\n// Get JSON Pointer path to an element\nconst path = getElementPath(env, element); // \"/submodels/0/submodelElements/2\"\n```\n\n#### Types\n\nFull TypeScript definitions for the AAS metamodel:\n\n- `Environment` - Root container\n- `AssetAdministrationShell` - AAS with asset reference\n- `Submodel` - Submodel with elements\n- `SubmodelElement` - Base for all elements\n- `Property`, `Range`, `File`, `Blob` - Data elements\n- `SubmodelElementCollection`, `SubmodelElementList` - Containers\n- `Reference`, `Key`, `SemanticId` - Reference types\n\n---\n\n### Patch Module (`@aas-ai-editor/core/patch`)\n\nJSON Patch (RFC 6902) operations with AAS extensions.\n\n```typescript\nimport {\n  createPatch,\n  applyPatch,\n  applyPatches,\n  invertPatch,\n  classifyPatchTier,\n  ApprovalTier,\n} from '@aas-ai-editor/core/patch';\n```\n\n#### `createPatch(op, path, value?, from?)`\n\nCreates a single patch operation.\n\n```typescript\nconst addPatch = createPatch('add', '/submodels/-', newSubmodel);\nconst replacePatch = createPatch('replace', '/submodels/0/idShort', 'NewName');\nconst removePatch = createPatch('remove', '/submodels/1');\nconst movePatch = createPatch('move', '/submodels/1', undefined, '/submodels/0');\n```\n\n#### `applyPatch(environment, patches)`\n\nApplies patches and returns the modified environment.\n\n```typescript\nconst result = applyPatch(environment, [patch1, patch2]);\n// result.environment - Modified environment\n// result.applied - Successfully applied patches\n// result.failed - Patches that couldn't be applied\n```\n\n#### `invertPatch(patch)`\n\nCreates an undo patch for a given operation.\n\n```typescript\nconst undoPatch = invertPatch(originalPatch);\napplyPatch(environment, [undoPatch]); // Reverts the change\n```\n\n#### `classifyPatchTier(patch)`\n\nClassifies patches by risk level for approval workflows.\n\n```typescript\nconst tier = classifyPatchTier(patch);\n// ApprovalTier.LOW - Metadata only\n// ApprovalTier.MEDIUM - Structural changes\n// ApprovalTier.HIGH - Cross-references, deletions\n// ApprovalTier.CRITICAL - External identifiers\n```\n\n---\n\n### Diff Module (`@aas-ai-editor/core/diff`)\n\nSemantic diffing that matches elements by semanticId/idShort rather than array index.\n\n```typescript\nimport { calculateDiff, formatDiff } from '@aas-ai-editor/core/diff';\n```\n\n#### `calculateDiff(before, after)`\n\nCalculates differences between two environments.\n\n```typescript\nconst diff = calculateDiff(oldEnv, newEnv);\n\nfor (const entry of diff.entries) {\n  console.log(`${entry.type}: ${entry.path}`);\n  // 'added', 'removed', 'modified', 'moved'\n}\n```\n\n#### `formatDiff(diff)`\n\nFormats diff as human-readable text.\n\n```typescript\nconst text = formatDiff(diff);\n// \"Modified: /submodels/0/submodelElements/0/value\n//    - Old: 'Acme Corp'\n//    + New: 'Acme Corporation'\"\n```\n\n---\n\n### IDTA Module (`@aas-ai-editor/core/idta`)\n\nLoad and validate against IDTA submodel templates.\n\n```typescript\nimport {\n  loadTemplate,\n  getTemplateRegistry,\n  validateAgainstTemplate,\n} from '@aas-ai-editor/core/idta';\n```\n\n#### `loadTemplate(semanticId)`\n\nLoads a template by its semantic ID.\n\n```typescript\nconst template = await loadTemplate(\n  'https://admin-shell.io/zvei/nameplate/2/0/Nameplate'\n);\n```\n\n#### `validateAgainstTemplate(submodel, template)`\n\nValidates a submodel against an IDTA template.\n\n```typescript\nconst result = validateAgainstTemplate(submodel, template);\n\nif (!result.valid) {\n  for (const error of result.errors) {\n    console.log(`${error.path}: ${error.message}`);\n  }\n}\n```\n\n#### `getTemplateRegistry()`\n\nReturns the registry of available templates.\n\n```typescript\nconst registry = getTemplateRegistry();\nfor (const [semanticId, template] of registry.entries()) {\n  console.log(`${template.name}: ${semanticId}`);\n}\n```\n\n---\n\n## Requirements\n\n- Node.js 20+\n- TypeScript 5+ (for type definitions)\n\n## Related Packages\n\n- [`@aas-ai-editor/mcp-server`](https://www.npmjs.com/package/@aas-ai-editor/mcp-server) - MCP server for AI-assisted editing\n- [AAS AI Editor](https://github.com/hadijannat/aas-ai-editor) - Full application with web UI\n\n## License\n\nMIT\n","readmeFilename":"README.md"}