{
  "name": "ArkTS2.0_build_system",
  "version": "1.0.0",
  "description": "Compile ArkTS 2.0 source code into bytecode, encompassing UI transformations.",
  "private": true,
  "engines": {
    "node": ">=14.0.0"
  },
  "main": "dist/index.js",
  "scripts": {
    "clean": "rimraf ${npm_config_outdir:-dist}",
    "build": "npm run clean && tsc",
    "build_debug": "npm run clean && tsc --sourceMap",
    "actual_test:demo_entry1.2_hsp1.2:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1.2_hsp1.2/build_config1.json && node ./dist/entry.js test/e2e/demo_entry1.2_hsp1.2/build_config2.json",
    "demo_entry1.2_hsp1.1:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1.2_hsp1.1/build_config.json",
    "demo_entry1.2_har1.2:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1.2_har1.2/build_config1.json && node ./dist/entry.js test/e2e/demo_entry1.2_har1.2/build_config2.json && node ./dist/entry.js test/e2e/demo_entry1.2_har1.2/build_config3.json",
    "actual_test:demo_entry1.1_hsp1.2:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1.1_hsp1.2/build_config1.json && node ./dist/entry.js test/e2e/demo_entry1.1_hsp1.2/build_config2.json",
    "actual_test:demo_entry1.2_har1.2_hsp1.2:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1.2_har1.2_hsp1.2/build_config1.json && node ./dist/entry.js test/e2e/demo_entry1.2_har1.2_hsp1.2/build_config2.json",
    "demo_entry1.2_har1.2_hsp1.1:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1.2_har1.2_hsp1.1/build_config.json",
    "actual_test:demo_entry1.1_har1.1_hsp1.2:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1.1_har1.1_hsp1.2/build_config1.json && node ./dist/entry.js test/e2e/demo_entry1.1_har1.1_hsp1.2/build_config2.json",
    "demo_entry1.1_har1.2_hsp1.1:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1.1_har1.2_hsp1.1/build_config1.json && node ./dist/entry.js test/e2e/demo_entry1.1_har1.2_hsp1.1/build_config2.json",
    "actual_test:demo_entry1.1_har1.2_hsp1.2:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1.1_har1.2_hsp1.2/build_config1.json && node ./dist/entry.js test/e2e/demo_entry1.1_har1.2_hsp1.2/build_config2.json",
    "demo_entry1.2_har1.1_hsp1.2:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1.2_har1.1_hsp1.2/build_config1.json && node ./dist/entry.js test/e2e/demo_entry1.2_har1.1_hsp1.2/build_config2.json",
    "demo_entry1.2_har1.1_hsp1.1:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1.2_har1.1_hsp1.1/build_config1.json && node ./dist/entry.js test/e2e/demo_entry1.2_har1.1_hsp1.1/build_config2.json && node ./dist/entry.js test/e2e/demo_entry1.2_har1.1_hsp1.1/build_config3.json",
    "actual_test:demo_entry1_2:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1_2/build_config.json",
    "actual_test:demo_file_dir_conflict:gen_abc": "node ./dist/entry.js test/e2e/demo_file_dir_conflict/build_config.json",
    "actual_test:demo_har1_2:gen_decl": "node ./dist/entry.js test/e2e/demo_har1_2/build_config_decl.json",
    "actual_test:demo_hsp1_2:gen_decl": "node ./dist/entry.js test/e2e/demo_hsp1_2/build_config_decl.json",
    "actual_test:entry1_1_external_har1_2:gen_abc": "node ./dist/entry.js test/e2e/entry1_1_external_har1_2/build_config.json",
    "actual_test:entry1_1_external_har1_2:gen_decl": "node ./dist/entry.js test/e2e/entry1_1_external_har1_2/build_config_decl.json",
    "actual_test:entry1_1_external_hsp1_2:gen_abc": "node ./dist/entry.js test/e2e/entry1_1_external_hsp1_2/build_config_decl.json && node ./dist/entry.js test/e2e/entry1_1_external_hsp1_2/build_config.json",
    "demo_entry1_2:gen_abc": "node ./dist/entry.js test/e2e/demo_entry1_2/build_config.json",
    "demo_entry1_2_obfuscationTest_1:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_1/build_config.json",
    "demo_entry1_2_obfuscationTest_2:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_2/build_config.json",
    "demo_entry1_2_obfuscationTest_2_1:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_2_1/build_config.json",
    "demo_entry1_2_obfuscationTest_3:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_3/build_config.json",
    "demo_entry1_2_obfuscationTest_3_1:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_3_1/build_config.json",
    "demo_entry1_2_obfuscationTest_4:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_4/build_config.json",
    "demo_entry1_2_obfuscationTest_4_1:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_4_1/build_config.json",
    "demo_entry1_2_obfuscationTest_5:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_5/build_config.json",
    "demo_entry1_2_obfuscationTest_5_1:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_5_1/build_config.json",
    "demo_entry1_2_obfuscationTest_6:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_6/build_config.json",
    "demo_entry1_2_obfuscationTest_6_1:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_6_1/build_config.json",
    "demo_entry1_2_obfuscationTest_7:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_7/build_config.json",
    "demo_entry1_2_obfuscationTest_7_1:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_7_1/build_config.json",
    "demo_entry1_2_obfuscationTest_8:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_8/build_config.json",
    "demo_entry1_2_obfuscationTest_9:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_9/build_config.json",
    "demo_entry1_2_obfuscationTest_9_1:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_9_1/build_config.json",
    "demo_entry1_2_obfuscationTest_10:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_10/build_config.json",
    "demo_entry1_2_obfuscationTest_11:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_11/build_config.json",
    "demo_entry1_2_obfuscationTest_12:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_12/build_config.json",
    "demo_entry1_2_obfuscationTest_13:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_13/build_config.json",
    "demo_entry1_2_obfuscationTest_14:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_14/build_config.json",
    "demo_entry1_2_obfuscationTest_15:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_15/build_config.json",
    "demo_entry1_2_obfuscationTest_16:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_16/build_config.json",
    "demo_entry1_2_obfuscationTest_17:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_17/build_config.json",
    "demo_entry1_2_obfuscationTest_18:gen_obf": "node ./dist/entry.js test/e2e_obfuscation/demo_entry1_2_obfuscationTest_18/build_config.json",
    "run_e2e_obf_test_all": "npm run demo_entry1_2_obfuscationTest_1:gen_obf && npm run demo_entry1_2_obfuscationTest_2:gen_obf && npm run demo_entry1_2_obfuscationTest_2_1:gen_obf && npm run demo_entry1_2_obfuscationTest_3:gen_obf && npm run demo_entry1_2_obfuscationTest_3_1:gen_obf && npm run demo_entry1_2_obfuscationTest_4:gen_obf && npm run demo_entry1_2_obfuscationTest_4_1:gen_obf && npm run demo_entry1_2_obfuscationTest_5:gen_obf && npm run demo_entry1_2_obfuscationTest_5_1:gen_obf && npm run demo_entry1_2_obfuscationTest_6:gen_obf && npm run demo_entry1_2_obfuscationTest_6_1:gen_obf && npm run demo_entry1_2_obfuscationTest_7:gen_obf && npm run demo_entry1_2_obfuscationTest_7_1:gen_obf && npm run demo_entry1_2_obfuscationTest_8:gen_obf && npm run demo_entry1_2_obfuscationTest_9:gen_obf && npm run demo_entry1_2_obfuscationTest_9_1:gen_obf && npm run demo_entry1_2_obfuscationTest_10:gen_obf && npm run demo_entry1_2_obfuscationTest_11:gen_obf && npm run demo_entry1_2_obfuscationTest_12:gen_obf && npm run demo_entry1_2_obfuscationTest_13:gen_obf && npm run demo_entry1_2_obfuscationTest_14:gen_obf && npm run demo_entry1_2_obfuscationTest_15:gen_obf && npm run demo_entry1_2_obfuscationTest_16:gen_obf && npm run demo_entry1_2_obfuscationTest_17:gen_obf && npm run demo_entry1_2_obfuscationTest_18:gen_obf",
    "demo_har1_2:gen_decl": "node ./dist/entry.js test/e2e/demo_har1_2/build_config_decl.json",
    "demo_hsp1_2:gen_decl": "node ./dist/entry.js test/e2e/demo_hsp1_2/build_config_decl.json",
    "entry1_1_external_har1_2:gen_abc": "node ./dist/entry.js test/e2e/entry1_1_external_har1_2/build_config.json",
    "entry1_1_external_har1_2:gen_decl": "node ./dist/entry.js test/e2e/entry1_1_external_har1_2/build_config_decl.json",
    "entry1_1_external_hsp1_2:gen_abc": "node ./dist/entry.js test/e2e/entry1_1_external_hsp1_2/build_config_decl.json && node ./dist/entry.js test/e2e/entry1_1_external_hsp1_2/build_config.json",
    "actual_test:entry1_1_external_hsp1_2:gen_decl": "node ./dist/entry.js test/e2e/entry1_1_external_hsp1_2/build_config_decl.json",
    "entry1_2_external_har1_1:gen_abc": "node ./dist/entry.js test/e2e/entry1_2_external_har1_1/build_config.json",
    "entry1_2_external_hsp1_1:gen_abc": "node ./dist/entry.js test/e2e/entry1_2_external_hsp1_1/build_config.json",
    "actual_test:entry1_2_external_har1_2:gen_abc": "node ./dist/entry.js test/e2e/entry1_2_external_har1_2/build_config.json",
    "actual_test:entry1_2_external_hsp1_2:gen_abc": "node ./dist/entry.js test/e2e/entry1_2_external_hsp1_2/build_config.json",
    "actual_test:entry1_2_external_hsp1_2:gen_decl": "node ./dist/entry.js test/e2e/entry1_2_external_hsp1_2/build_config_decl.json",
    "actual_test:demo_multi_source_roots:gen_abc": "node ./dist/entry.js test/e2e/demo_multi_source_roots/build_config.json",
    "actual_test:demo_custom_index:gen_abc": "node ./dist/entry.js test/e2e/demo_custom_index/build_config.json",
    "mixed_hap:gen_decl": "node ./dist/entry.js test/demo_mix_hap/build_config_decl.json",
    "mixed_hap:gen_abc": "node ./dist/entry.js test/demo_mix_hap/build_config.json",
    "mixed_hap:run": "npm run mixed_hap:gen_decl && npm run mixed_hap:gen_abc",
    "demo_hap:gen_abc": "node ./dist/entry.js test/demo_hap/build_config.json",
    "actual_test:gen_abc_single": "node ./dist/entry.js test/single_file/build_config.json",
    "actual_test:gen_abc_two": "node ./dist/entry.js test/two_files/build_config.json",
    "actual_test:gen_abc_multi": "node ./dist/entry.js test/multi_file/build_config.json",
    "build_binary_har_app": "node ./dist/entry.js test/mock_har_abc/build_config.json && node ./dist/entry.js test/har_app/build_config.json",
    "build_hap_ark_link": "node ./dist/entry.js test/mock_abc/build_config.json && node ./dist/entry.js test/entry_import_har/build_config.json",
    "actual_test:build_hap_hsp": "node ./dist/entry.js test/e2e/demo_entry_hsp_har/build_config.json",
    "actual_test:build_empty_files": "node ./dist/entry.js test/e2e/empty_arklink/build_config.json && node ./dist/entry.js test/e2e/empty_entry_files/build_config.json",
    "actual_test:interop_sdk": "node ./dist/entry.js test/e2e/demo_interop_sdk/build_config.json",
    "ut_test": "jest test/ut",
    "plugin_test": "jest --testMatch='<rootDir>/test/plugin/**/*.test.ts'",
    "manual_decl_test": "jest --testMatch='<rootDir>/test/ut/base_modeTest/manual.declFile.test.ts'",
    "obfuscation_config_demo_hap:gen_abc": "node ./dist/entry.js test/e2e/obfuscation_config_demo/entry/build_config.json",
    "obfuscation_config_demo_har:gen_abc": "node ./dist/entry.js test/e2e/obfuscation_config_demo/har/build_config.json",
    "obfuscation_config_demo_har2:gen_abc": "node ./dist/entry.js test/e2e/obfuscation_config_demo/har2/build_config.json",
    "obfuscation_config_demo_hsp:gen_abc": "node ./dist/entry.js test/e2e/obfuscation_config_demo/hsp/build_config.json",
    "obfuscation_config_demo_hsp_har:gen_abc": "node ./dist/entry.js test/e2e/obfuscation_config_demo/hsp_har/build_config.json",
    "obfuscation_config_release_test": "node ./dist/entry.js test/bytecode_obfuscation_release/build_config.json",
    "actual_test:obfuscation_config_test": "TEST=obfuscation_config_release_test node ./test/bytecode_obfuscation_release/byteCodeConfigTest.js",
    "build_system_Utest": "jest --testMatch='**/test/ut/**/*.test.ts' --testPathIgnorePatterns='test/e2e/'",
    "build_system_Etest": "TEST=demo_entry1.2_hsp1.1:gen_abc jest --testMatch='**/test/e2e/*.test.ts' --testPathIgnorePatterns='test/ut/'",
    "IncrementDemo:gen_abc": "node ./dist/entry.js test/e2e/IncrementDemo/build_config.json",
    "IncrementCompileTest1": "node ./dist/entry.js test/e2e/IncrementDemo/build_config.json && sed -i 's/hello world from harA!/hello world from harA! (modified)/' \"$(pwd)/test/e2e/IncrementDemo/harB/index.ets\" && TEST=IncrementDemo:gen_abc jest --testMatch='**/test/e2e/*.test.ts' --testPathIgnorePatterns='test/ut/'",
    "IncrementCompileTest2": "node ./dist/entry.js test/e2e/IncrementDemo/build_config.json && sed -i 's/console.log(strA)/console.log(strA + \"modified\")/' \"$(pwd)/test/e2e/IncrementDemo/entry/index.ets\" && TEST=IncrementDemo:gen_abc jest --testMatch='**/test/e2e/*.test.ts' --testPathIgnorePatterns='test/ut/'",
    "actual_test:incremental_build": "npm run IncrementCompileTest1 && npm run IncrementCompileTest2",
    "actual_test:simultaneous_compiling:namespace_import": "node ./dist/entry.js test/simultaneous_compiling/namespace_import/build_config.json",
    "actual_test:externalProject": "node ./dist/entry.js test/e2e/externalProject/build_config_har1_1.json && node ./dist/entry.js test/e2e/externalProject/build_config_hsp1_2.json && node ./dist/entry.js test/e2e/externalProject/build_config_hsp1_1.json && node ./dist/entry.js test/e2e/externalProject/build_config_har1_2.json",
    "actual_test:demo_circular_dependency": "node ./dist/entry.js test/e2e/demo_circular_dependency_1.2/build_config.json",
    "actual_test:demo_mix_compile1": "node ./dist/entry.js test/demo_mix_compile1/build_config.json",
    "actual_test:demo_mix_compile2": "node ./dist/entry.js test/demo_mix_compile2/build_config.json",
    "actual_test:demo_alias_packageName:gen_abc": "node ./dist/entry.js test/e2e/demo_alias_packageName/build_config.json",
    "actual_test": "npm run actual_test:demo_entry1.1_hsp1.2:gen_abc && npm run actual_test:demo_entry1.1_har1.1_hsp1.2:gen_abc && npm run actual_test:demo_entry1_2:gen_abc && npm run actual_test:demo_har1_2:gen_decl && npm run actual_test:demo_hsp1_2:gen_decl && npm run actual_test:entry1_1_external_har1_2:gen_abc && npm run actual_test:entry1_1_external_har1_2:gen_decl && npm run actual_test:entry1_1_external_hsp1_2:gen_abc && npm run actual_test:entry1_2_external_har1_2:gen_abc && npm run actual_test:entry1_2_external_hsp1_2:gen_decl && npm run actual_test:demo_multi_source_roots:gen_abc && npm run actual_test:demo_custom_index:gen_abc && npm run actual_test:gen_abc_single && npm run actual_test:gen_abc_two && npm run actual_test:gen_abc_multi && npm run actual_test:build_hap_hsp && npm run actual_test:build_empty_files && npm run actual_test:interop_sdk && npm run actual_test:simultaneous_compiling:namespace_import && npm run actual_test:externalProject && npm run actual_test:demo_circular_dependency && npm run actual_test:demo_mix_compile1 && npm run actual_test:demo_mix_compile2 && npm run actual_test:demo_entry1.1_har1.2_hsp1.2:gen_abc && npm run actual_test:demo_entry1.2_hsp1.2:gen_abc && npm run actual_test:demo_entry1.2_har1.2_hsp1.2:gen_abc && npm run actual_test:entry1_1_external_hsp1_2:gen_decl && npm run actual_test:entry1_2_external_hsp1_2:gen_abc && npm run actual_test:incremental_build && npm run actual_test:demo_alias_packageName:gen_abc && npm run actual_test:obfuscation_config_test && npm run actual_test:demo_file_dir_conflict:gen_abc",
    "run_tests:ci": "npm run build && npm run actual_test"
  },
  "devDependencies": {
    "@babel/core": "^7.24.9",
    "@babel/preset-env": "^7.24.9",
    "@babel/preset-typescript": "^7.24.9",
    "@es2panda/bindings": "file:../../bindings",
    "@tsconfig/recommended": "1.0.8",
    "@types/jest": "^29.5.12",
    "@types/lodash.clonedeep": "^4.5.9",
    "@types/node": "22.10.7",
    "babel-jest": "^29.7.0",
    "jest": "^29.7.0",
    "json5": "^2.2.3",
    "rimraf": "6.0.1",
    "ts-jest": "^29.1.1",
    "ts-node": "^10.9.2",
    "typescript": "^5.0.0"
  },
  "babel": {
    "presets": [
      [
        "@babel/preset-env",
        {
          "targets": {
            "node": "current"
          }
        }
      ],
      "@babel/preset-typescript"
    ]
  },
  "dependencies": {
    "lodash.clonedeep": "^4.5.0",
    "ts-graphviz": "^2.1.6"
  }
}