{"_id":"@azanat/idl-ize","name":"@azanat/idl-ize","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@azanat/idl-ize","version":"1.0.0","description":"## Description","main":"build/lib/src/main.js","types":"build/lib/src/main.d.ts","keywords":[],"dependencies":{"webidl2":"^24.4.1","@types/webidl2":"^24.4.1","commander":"^10.0.0"},"devDependencies":{"@types/node":"^18.0.0","@types/chai":"^4.3.1","@types/mocha":"^9.1.0","@typescript-eslint/eslint-plugin":"^5.20.0","@typescript-eslint/parser":"^5.20.0","chai":"^4.3.6","eslint":"^8.13.0","eslint-plugin-unused-imports":"^2.0.0","mocha":"^9.2.2","source-map-support":"^0.5.21"},"scripts":{"compile":"tsc --m commonjs","clean":"rimraf build dist","run":"npm run compile && node . --dts2idl --input-dir ./ohos-sdk/component --input-file common.d.ts --verify-idl --common-to-attributes --skip-comments","run2h":"npm run compile && node . --dts2h --input-dir ./ohos-sdk/component --input-file common.d.ts --verbose","run2test":"npm run compile && node . --dts2test --input-dir ./ohos-sdk/component --verbose --test-interface ButtonAttribute","run2peer":"npm run compile && node . --dts2peer --input-dir ./ohos-sdk/component --generate-interface ButtonAttribute --verbose","lint":"npm run compile && node . --linter --input-dir ./ohos-sdk/component --input-file common.d.ts --verbose","lint:all":"npm run compile && node . --linter --input-dir ./ohos-sdk/component --verbose"},"gitHead":"c04a616335ec06425427c8b2c74ceafe364704e2","_id":"@azanat/idl-ize@1.0.0","_nodeVersion":"19.9.0","_npmVersion":"9.6.3","dist":{"integrity":"sha512-E7WQ9Lb7TdBhb+y9izAjBi+gAm7iQuyI8JUNZEVja8zq7iCBMQ4XBI4igy/yWth4MdVpx3kXSU0o5UPYvZ7xXA==","shasum":"75cdbec18c8a6035d63e145cffd3272a89ccf351","tarball":"https://registry.npmjs.org/@azanat/idl-ize/-/idl-ize-1.0.0.tgz","fileCount":33,"unpackedSize":157881,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAKljfimLsXZEqsbuAUkNL4hTfoPOgZuYtnkOMpDD+WcAiEAhxopKLZawmbVHe8ytLp1YkY7JbaiKJ2abuKLxrjTpK8="}]},"_npmUser":{"name":"azanat","email":"azanat.umarov@gmail.com"},"directories":{},"maintainers":[{"name":"azanat","email":"azanat.umarov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/idl-ize_1.0.0_1709797369874_0.7680421313813037"},"_hasShrinkwrap":false}},"time":{"created":"2024-03-07T07:42:49.784Z","1.0.0":"2024-03-07T07:42:50.015Z","modified":"2024-03-07T07:42:50.565Z"},"maintainers":[{"name":"azanat","email":"azanat.umarov@gmail.com"}],"description":"## Description","keywords":[],"readme":"# IDLizer\n\n## Description\n\nThis folder contains collection of tools for analyzing and transformation of\n.d.ts files, with aim of exposing ArkUI interfaces to more languages and runtimes.\n\n## Tools available\n\n### .d.ts linter\n\n Tool checking that given folder (ArkUI interface declarations downloaded by Arkoala build by default) only contains reasonable set of TypeScript features allowed for usage in public interfaces.\n\nTo run\n\n```bash\ncd idlize\nnpm i\nnpm run compile\nnode . --linter --input-dir ../arkui-common/ohos-sdk-ets/openharmony/10/ets/component\n```\n\nResults are in `./linter/linter.txt`.\n\n\n### IDL generator\n\n Tool producing set of WebIDL-compatible interface definitions from .d.ts interface definitions.\n Still in progress, may produce incorrect IDL.\n\n```bash\ncd idlize\nnpm i\nnpm run compile\nnode . --dts2idl --input-dir ../arkui-common/ohos-sdk-ets/openharmony/10/ets/component\n```\n\nResults are in `./idl/` folder.\n\n### C headers generator\n\n Tool producing set of C interface definitions from .d.ts interface definitions.\n Still in progress, will produce incorrect C now.\n\n```bash\ncd idlize\nnpm i\nnpm run compile\nnode . --idl2h --input-dir ../arkui-common/ohos-sdk-ets/openharmony/10/ets/component\n```\nResults are in `./headers/arkoala_api.h`.\n\n### Typescript declaration files generator\n\nTool producing set of typescript declaration files from .idl interface definitions.\n\n```bash\ncd idlize\nnpm i\nnpm run compile\nnode . --idl2dts --input-dir ./test/from-idl/idl\n```\nBy default, results are in `./dts`.\n","readmeFilename":"README.md"}