obsidian-dev-utils 97.0.0 → 99.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/LICENSE +1 -1
  3. package/dist/integration-test-plugin/main.js +686 -439
  4. package/dist/lib/cjs/__merged.cjs +22 -9
  5. package/dist/lib/cjs/__merged.d.cts +4 -3
  6. package/dist/lib/cjs/generated-during-build.cjs +1 -1
  7. package/dist/lib/cjs/obsidian/components/plugin-settings-component.cjs +36 -1
  8. package/dist/lib/cjs/obsidian/components/plugin-settings-component.d.cts +21 -0
  9. package/dist/lib/cjs/obsidian/components/plugin-suggestion-component.cjs +20 -6
  10. package/dist/lib/cjs/obsidian/components/plugin-suggestion-component.d.cts +26 -4
  11. package/dist/lib/cjs/obsidian/components/rename-delete-handler-component.cjs +38 -38
  12. package/dist/lib/cjs/obsidian/demo-vault-naming.cjs +167 -0
  13. package/dist/lib/cjs/obsidian/demo-vault-naming.d.cts +54 -0
  14. package/dist/lib/cjs/obsidian/desktop-demo-vault-opener.cjs +11 -5
  15. package/dist/lib/cjs/obsidian/desktop-demo-vault-opener.d.cts +10 -8
  16. package/dist/lib/cjs/obsidian/desktop-trusted-input.cjs +9 -9
  17. package/dist/lib/cjs/obsidian/desktop-trusted-input.d.cts +23 -4
  18. package/dist/lib/cjs/obsidian/file-change.cjs +6 -6
  19. package/dist/lib/cjs/obsidian/index.cjs +10 -1
  20. package/dist/lib/cjs/obsidian/index.d.cts +3 -0
  21. package/dist/lib/cjs/obsidian/link.cjs +33 -6
  22. package/dist/lib/cjs/obsidian/link.d.cts +35 -0
  23. package/dist/lib/cjs/obsidian/mobile-trusted-input.cjs +195 -0
  24. package/dist/lib/cjs/obsidian/mobile-trusted-input.d.cts +93 -0
  25. package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.cjs +2 -1
  26. package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.d.cts +4 -0
  27. package/dist/lib/cjs/obsidian/reference.cjs +9 -1
  28. package/dist/lib/cjs/obsidian/reference.d.cts +33 -0
  29. package/dist/lib/cjs/obsidian/resource-lock.cjs +122 -122
  30. package/dist/lib/cjs/obsidian/trusted-input.cjs +206 -0
  31. package/dist/lib/cjs/obsidian/trusted-input.d.cts +126 -0
  32. package/dist/lib/cjs/obsidian/validation.cjs +22 -3
  33. package/dist/lib/cjs/obsidian/validation.d.cts +37 -0
  34. package/dist/lib/cjs/obsidian/vault.cjs +4 -1
  35. package/dist/lib/cjs/obsidian/vault.d.cts +8 -1
  36. package/dist/lib/cjs/script-utils/build.cjs +30 -6
  37. package/dist/lib/cjs/script-utils/build.d.cts +5 -0
  38. package/dist/lib/cjs/script-utils/demo-vault.cjs +26 -6
  39. package/dist/lib/cjs/script-utils/demo-vault.d.cts +12 -8
  40. package/dist/lib/cjs/script-utils/exec.cjs +1 -1
  41. package/dist/lib/cjs/script-utils/formatters/dprint.cjs +3 -2
  42. package/dist/lib/cjs/script-utils/index.cjs +4 -1
  43. package/dist/lib/cjs/script-utils/index.d.cts +1 -0
  44. package/dist/lib/cjs/script-utils/linters/cspell.cjs +3 -3
  45. package/dist/lib/cjs/script-utils/linters/eslint-config.cjs +39 -1
  46. package/dist/lib/cjs/script-utils/linters/eslint-rules/index.cjs +16 -1
  47. package/dist/lib/cjs/script-utils/linters/eslint-rules/index.d.cts +5 -0
  48. package/dist/lib/cjs/script-utils/linters/eslint-rules/manifest-description.cjs +254 -0
  49. package/dist/lib/cjs/script-utils/linters/eslint-rules/manifest-description.d.cts +54 -0
  50. package/dist/lib/cjs/script-utils/linters/eslint-rules/manifest-helpers.cjs +217 -0
  51. package/dist/lib/cjs/script-utils/linters/eslint-rules/manifest-helpers.d.cts +141 -0
  52. package/dist/lib/cjs/script-utils/linters/eslint-rules/manifest-id.cjs +214 -0
  53. package/dist/lib/cjs/script-utils/linters/eslint-rules/manifest-id.d.cts +32 -0
  54. package/dist/lib/cjs/script-utils/linters/eslint-rules/manifest-name.cjs +215 -0
  55. package/dist/lib/cjs/script-utils/linters/eslint-rules/manifest-name.d.cts +30 -0
  56. package/dist/lib/cjs/script-utils/linters/eslint-rules/manifest-schema.cjs +318 -0
  57. package/dist/lib/cjs/script-utils/linters/eslint-rules/manifest-schema.d.cts +45 -0
  58. package/dist/lib/cjs/script-utils/linters/eslint-rules/obsidian-dev-utils-plugin.cjs +9 -1
  59. package/dist/lib/cjs/script-utils/linters/eslint.cjs +3 -2
  60. package/dist/lib/cjs/script-utils/linters/markdownlint.cjs +4 -4
  61. package/dist/lib/cjs/script-utils/nano-staged-config.cjs +7 -5
  62. package/dist/lib/cjs/script-utils/nano-staged-config.d.cts +5 -2
  63. package/dist/lib/cjs/script-utils/npm-run.cjs +4 -3
  64. package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.cjs +10 -1
  65. package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.d.cts +37 -1
  66. package/dist/lib/cjs/script-utils/package-manager.cjs +370 -0
  67. package/dist/lib/cjs/script-utils/package-manager.d.cts +93 -0
  68. package/dist/lib/cjs/script-utils/version.cjs +21 -9
  69. package/dist/lib/esm/__merged.d.mts +4 -3
  70. package/dist/lib/esm/__merged.mjs +24 -10
  71. package/dist/lib/esm/generated-during-build.mjs +1 -1
  72. package/dist/lib/esm/obsidian/components/plugin-settings-component.d.mts +21 -0
  73. package/dist/lib/esm/obsidian/components/plugin-settings-component.mjs +36 -1
  74. package/dist/lib/esm/obsidian/components/plugin-suggestion-component.d.mts +26 -4
  75. package/dist/lib/esm/obsidian/components/plugin-suggestion-component.mjs +20 -6
  76. package/dist/lib/esm/obsidian/components/rename-delete-handler-component.mjs +38 -38
  77. package/dist/lib/esm/obsidian/demo-vault-naming.d.mts +54 -0
  78. package/dist/lib/esm/obsidian/demo-vault-naming.mjs +61 -0
  79. package/dist/lib/esm/obsidian/desktop-demo-vault-opener.d.mts +10 -8
  80. package/dist/lib/esm/obsidian/desktop-demo-vault-opener.mjs +14 -5
  81. package/dist/lib/esm/obsidian/desktop-trusted-input.d.mts +23 -4
  82. package/dist/lib/esm/obsidian/desktop-trusted-input.mjs +9 -9
  83. package/dist/lib/esm/obsidian/file-change.mjs +6 -6
  84. package/dist/lib/esm/obsidian/index.d.mts +3 -0
  85. package/dist/lib/esm/obsidian/index.mjs +7 -1
  86. package/dist/lib/esm/obsidian/link.d.mts +35 -0
  87. package/dist/lib/esm/obsidian/link.mjs +38 -7
  88. package/dist/lib/esm/obsidian/mobile-trusted-input.d.mts +93 -0
  89. package/dist/lib/esm/obsidian/mobile-trusted-input.mjs +84 -0
  90. package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.d.mts +4 -0
  91. package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.mjs +2 -1
  92. package/dist/lib/esm/obsidian/reference.d.mts +33 -0
  93. package/dist/lib/esm/obsidian/reference.mjs +8 -1
  94. package/dist/lib/esm/obsidian/resource-lock.mjs +122 -122
  95. package/dist/lib/esm/obsidian/trusted-input.d.mts +126 -0
  96. package/dist/lib/esm/obsidian/trusted-input.mjs +85 -0
  97. package/dist/lib/esm/obsidian/validation.d.mts +37 -0
  98. package/dist/lib/esm/obsidian/validation.mjs +21 -2
  99. package/dist/lib/esm/obsidian/vault.d.mts +8 -1
  100. package/dist/lib/esm/obsidian/vault.mjs +4 -1
  101. package/dist/lib/esm/script-utils/build.d.mts +5 -0
  102. package/dist/lib/esm/script-utils/build.mjs +30 -6
  103. package/dist/lib/esm/script-utils/demo-vault.d.mts +12 -8
  104. package/dist/lib/esm/script-utils/demo-vault.mjs +29 -6
  105. package/dist/lib/esm/script-utils/exec.mjs +1 -1
  106. package/dist/lib/esm/script-utils/formatters/dprint.mjs +3 -2
  107. package/dist/lib/esm/script-utils/index.d.mts +1 -0
  108. package/dist/lib/esm/script-utils/index.mjs +3 -1
  109. package/dist/lib/esm/script-utils/linters/cspell.mjs +3 -3
  110. package/dist/lib/esm/script-utils/linters/eslint-config.mjs +39 -1
  111. package/dist/lib/esm/script-utils/linters/eslint-rules/index.d.mts +5 -0
  112. package/dist/lib/esm/script-utils/linters/eslint-rules/index.mjs +11 -1
  113. package/dist/lib/esm/script-utils/linters/eslint-rules/manifest-description.d.mts +54 -0
  114. package/dist/lib/esm/script-utils/linters/eslint-rules/manifest-description.mjs +148 -0
  115. package/dist/lib/esm/script-utils/linters/eslint-rules/manifest-helpers.d.mts +141 -0
  116. package/dist/lib/esm/script-utils/linters/eslint-rules/manifest-helpers.mjs +92 -0
  117. package/dist/lib/esm/script-utils/linters/eslint-rules/manifest-id.d.mts +32 -0
  118. package/dist/lib/esm/script-utils/linters/eslint-rules/manifest-id.mjs +111 -0
  119. package/dist/lib/esm/script-utils/linters/eslint-rules/manifest-name.d.mts +30 -0
  120. package/dist/lib/esm/script-utils/linters/eslint-rules/manifest-name.mjs +112 -0
  121. package/dist/lib/esm/script-utils/linters/eslint-rules/manifest-schema.d.mts +45 -0
  122. package/dist/lib/esm/script-utils/linters/eslint-rules/manifest-schema.mjs +217 -0
  123. package/dist/lib/esm/script-utils/linters/eslint-rules/obsidian-dev-utils-plugin.mjs +9 -1
  124. package/dist/lib/esm/script-utils/linters/eslint.mjs +3 -2
  125. package/dist/lib/esm/script-utils/linters/markdownlint.mjs +4 -4
  126. package/dist/lib/esm/script-utils/nano-staged-config.d.mts +5 -2
  127. package/dist/lib/esm/script-utils/nano-staged-config.mjs +7 -5
  128. package/dist/lib/esm/script-utils/npm-run.mjs +4 -3
  129. package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.d.mts +37 -1
  130. package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.mjs +10 -1
  131. package/dist/lib/esm/script-utils/package-manager.d.mts +93 -0
  132. package/dist/lib/esm/script-utils/package-manager.mjs +256 -0
  133. package/dist/lib/esm/script-utils/version.mjs +21 -9
  134. package/obsidian/demo-vault-naming/package.json +6 -0
  135. package/obsidian/mobile-trusted-input/package.json +6 -0
  136. package/obsidian/trusted-input/package.json +6 -0
  137. package/package.json +19 -17
  138. package/script-utils/linters/eslint-rules/manifest-description/package.json +6 -0
  139. package/script-utils/linters/eslint-rules/manifest-helpers/package.json +6 -0
  140. package/script-utils/linters/eslint-rules/manifest-id/package.json +6 -0
  141. package/script-utils/linters/eslint-rules/manifest-name/package.json +6 -0
  142. package/script-utils/linters/eslint-rules/manifest-schema/package.json +6 -0
  143. package/script-utils/package-manager/package.json +6 -0
@@ -46,6 +46,8 @@ import {
46
46
  isEnvVariableOff,
47
47
  loadEnvFileIfExists
48
48
  } from "./env-toggle.mjs";
49
+ import { getPackageManagerRunCommand } from "./package-manager.mjs";
50
+ const PACKAGE_MANAGER_RUN_COMMAND = getPackageManagerRunCommand().join(" ");
49
51
  const obsidianDevUtilsConfig = {
50
52
  /*
51
53
  * Lint everything except the `templates/` consumer templates: ESLint globally ignores them, and
@@ -54,16 +56,16 @@ const obsidianDevUtilsConfig = {
54
56
  * `templates`. Formatting and spellchecking still cover `templates/` via the entries above and below.
55
57
  */
56
58
  "!(templates)*.{ts,tsx,mts}": [
57
- "npm run lint:fix --"
59
+ `${PACKAGE_MANAGER_RUN_COMMAND} lint:fix --`
58
60
  ],
59
61
  "*": [
60
- "npm run spellcheck --"
62
+ `${PACKAGE_MANAGER_RUN_COMMAND} spellcheck --`
61
63
  ],
62
64
  "*.{ts,tsx,mts}": [
63
- "npm run format --"
65
+ `${PACKAGE_MANAGER_RUN_COMMAND} format --`
64
66
  ],
65
67
  "*.md": [
66
- "npm run lint:md:fix --"
68
+ `${PACKAGE_MANAGER_RUN_COMMAND} lint:md:fix --`
67
69
  ]
68
70
  };
69
71
  const NANO_STAGED_ENV_VARIABLE = "NANO_STAGED";
@@ -80,4 +82,4 @@ export {
80
82
  getNanoStagedConfig,
81
83
  obsidianDevUtilsConfig
82
84
  };
83
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy9uYW5vLXN0YWdlZC1jb25maWcudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBTaGFyZWQgbmFuby1zdGFnZWQgY29uZmlndXJhdGlvbiBmb3IgcHJlLWNvbW1pdCBob29rcy5cbiAqL1xuXG5pbXBvcnQgcHJvY2VzcyBmcm9tICdub2RlOnByb2Nlc3MnO1xuXG5pbXBvcnQge1xuICBpc0VudlZhcmlhYmxlT2ZmLFxuICBsb2FkRW52RmlsZUlmRXhpc3RzXG59IGZyb20gJy4vZW52LXRvZ2dsZS50cyc7XG5cbi8qKlxuICogTmFuby1zdGFnZWQgY29uZmlndXJhdGlvbiB0aGF0IHJ1bnMgZmlsZS1iYXNlZCBsaW50LCBmb3JtYXQsIGFuZCBzcGVsbGNoZWNrIG9uIHN0YWdlZCBmaWxlcy5cbiAqXG4gKiBPbmx5IGluY2x1ZGVzIHRvb2xzIHRoYXQgY2FuIG9wZXJhdGUgb24gaW5kaXZpZHVhbCBmaWxlcy4gV2hvbGUtcHJvamVjdCBjaGVja3NcbiAqIChUeXBlU2NyaXB0IGNvbXBpbGF0aW9uLCB1bml0IHRlc3RzKSBhcmUgbGVmdCB0byBDSS5cbiAqXG4gKiBDb21tYW5kcyB1c2UgYG5wbSBydW4gLi4uIC0tYCBzbyBuYW5vLXN0YWdlZCBmaWxlIHBhdGhzIGFyZSBmb3J3YXJkZWQgYXMgQ0xJIGFyZ3VtZW50cy5cbiAqL1xuZXhwb3J0IGNvbnN0IG9ic2lkaWFuRGV2VXRpbHNDb25maWc6IFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPiA9IHtcbiAgLypcbiAgICogTGludCBldmVyeXRoaW5nIGV4Y2VwdCB0aGUgYHRlbXBsYXRlcy9gIGNvbnN1bWVyIHRlbXBsYXRlczogRVNMaW50IGdsb2JhbGx5IGlnbm9yZXMgdGhlbSwgYW5kXG4gICAqIHRoZXkgc2hpcCB0aGVpciBvd24gY29uc3VtZXItZmFjaW5nIGNvbmZpZy9zY3JpcHRzIHRoYXQgY2Fubm90IHJlc29sdmUgaW4tcmVwbywgc28gcGFzc2luZyBvbmVcbiAgICogYnkgZXhwbGljaXQgcGF0aCBlcnJvcnMgb3V0LiBUaGUgYCEodGVtcGxhdGVzKWAgbmVnYXRpb24gZHJvcHMgYW55IHBhdGggdGhhdCBiZWdpbnMgd2l0aFxuICAgKiBgdGVtcGxhdGVzYC4gRm9ybWF0dGluZyBhbmQgc3BlbGxjaGVja2luZyBzdGlsbCBjb3ZlciBgdGVtcGxhdGVzL2AgdmlhIHRoZSBlbnRyaWVzIGFib3ZlIGFuZCBiZWxvdy5cbiAgICovXG4gICchKHRlbXBsYXRlcykqLnt0cyx0c3gsbXRzfSc6IFtcbiAgICAnbnBtIHJ1biBsaW50OmZpeCAtLSdcbiAgXSxcbiAgJyonOiBbXG4gICAgJ25wbSBydW4gc3BlbGxjaGVjayAtLSdcbiAgXSxcbiAgJyoue3RzLHRzeCxtdHN9JzogW1xuICAgICducG0gcnVuIGZvcm1hdCAtLSdcbiAgXSxcbiAgJyoubWQnOiBbXG4gICAgJ25wbSBydW4gbGludDptZDpmaXggLS0nXG4gIF1cbn07XG5cbmNvbnN0IE5BTk9fU1RBR0VEX0VOVl9WQVJJQUJMRSA9ICdOQU5PX1NUQUdFRCc7XG5cbi8qKlxuICogUmVzb2x2ZXMgdGhlIG5hbm8tc3RhZ2VkIGNvbmZpZ3VyYXRpb24gdG8gdXNlLCBob25vcmluZyBhIHBlci1kZXZlbG9wZXIgb3B0LW91dC5cbiAqXG4gKiBMb2FkcyBhIGdpdGlnbm9yZWQgYC5lbnZgIGlmIHByZXNlbnQsIHRoZW4gXHUyMDE0IHdoZW4gYE5BTk9fU1RBR0VEYCBpcyBzZXQgdG8gYW4gb2ZmIHZhbHVlIChgMGAsIGBmYWxzZWAsXG4gKiBgb2ZmYCwgb3IgYG5vYCkgXHUyMDE0IHByaW50cyBhIG5vdGljZSBhbmQgZXhpdHMgdGhlIHByb2Nlc3Mgc3VjY2Vzc2Z1bGx5IHNvIHRoZSBwcmUtY29tbWl0IGNoZWNrcyBhcmVcbiAqIHNraXBwZWQuIFRoaXMgbWlycm9ycyBodXNreSdzIG93biBgSFVTS1k9MGAgc3dpdGNoLCBidXQgc2NvcGVkIHRvIHRoZSBuYW5vLXN0YWdlZCBzdGVwIChzbyB0aGVcbiAqIGNvbW1pdC1tc2cgaG9vayBzdGlsbCBydW5zKS4gT3RoZXJ3aXNlIGl0IHJldHVybnMge0BsaW5rIG9ic2lkaWFuRGV2VXRpbHNDb25maWd9LlxuICpcbiAqIGBOQU5PX1NUQUdFRGAgaXMgbm90IGFuIG5wbSBzY3JpcHQsIHNvIGl0IGNhcnJpZXMgaXRzIG93biBzd2l0Y2ggcmF0aGVyIHRoYW4gdGhlIHNjcmlwdC1uYW1lLWRlcml2ZWQgb25lXG4gKiBldmVyeSBucG0gc2NyaXB0IGdldHMgXHUyMDE0IGJ1dCBib3RoIHNoYXJlIHRoZSBzYW1lIG5vdGlvbiBvZiBhbiBvZmYgdmFsdWUsIHZpYSB7QGxpbmsgaXNFbnZWYXJpYWJsZU9mZn0uXG4gKlxuICogVGhpcyBpcyBhIGZ1bmN0aW9uIHJhdGhlciB0aGFuIG1vZHVsZS1sZXZlbCBjb2RlIHNvIGltcG9ydGluZyB0aGUgcGFja2FnZSBiYXJyZWwgbmV2ZXIgdHJpZ2dlcnMgdGhlXG4gKiBgLmVudmAgcmVhZCBvciB0aGUgcHJvY2VzcyBleGl0OyBjYWxsIGl0IGZyb20gdGhlIHRoaW4gYHNjcmlwdHMvbmFuby1zdGFnZWQtY29uZmlnLnRzYCBlbnRyeS5cbiAqXG4gKiBAcmV0dXJucyBUaGUgbmFuby1zdGFnZWQgdGFzayBjb25maWd1cmF0aW9uLiBEb2VzIG5vdCByZXR1cm4gd2hlbiB0aGUgb3B0LW91dCBpcyBhY3RpdmUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXROYW5vU3RhZ2VkQ29uZmlnKCk6IFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPiB7XG4gIGxvYWRFbnZGaWxlSWZFeGlzdHMoKTtcblxuICBpZiAoaXNFbnZWYXJpYWJsZU9mZihOQU5PX1NUQUdFRF9FTlZfVkFSSUFCTEUpKSB7XG4gICAgcHJvY2Vzcy5zdGRvdXQud3JpdGUoYG5hbm8tc3RhZ2VkOiBza2lwcGVkICgke05BTk9fU1RBR0VEX0VOVl9WQVJJQUJMRX0gaXMgb2ZmKS5cXG5gKTtcbiAgICBwcm9jZXNzLmV4aXQoMCk7XG4gIH1cblxuICByZXR1cm4gb2JzaWRpYW5EZXZVdGlsc0NvbmZpZztcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSxPQUFPLGFBQWE7QUFFcEI7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFVQSxNQUFNLHlCQUFtRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTzlELDhCQUE4QjtBQUFBLElBQzVCO0FBQUEsRUFDRjtBQUFBLEVBQ0EsS0FBSztBQUFBLElBQ0g7QUFBQSxFQUNGO0FBQUEsRUFDQSxrQkFBa0I7QUFBQSxJQUNoQjtBQUFBLEVBQ0Y7QUFBQSxFQUNBLFFBQVE7QUFBQSxJQUNOO0FBQUEsRUFDRjtBQUNGO0FBRUEsTUFBTSwyQkFBMkI7QUFrQjFCLFNBQVMsc0JBQWdEO0FBQzlELHNCQUFvQjtBQUVwQixNQUFJLGlCQUFpQix3QkFBd0IsR0FBRztBQUM5QyxZQUFRLE9BQU8sTUFBTSx5QkFBeUIsd0JBQXdCO0FBQUEsQ0FBYTtBQUNuRixZQUFRLEtBQUssQ0FBQztBQUFBLEVBQ2hCO0FBRUEsU0FBTztBQUNUOyIsCiAgIm5hbWVzIjogW10KfQo=
85
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy9uYW5vLXN0YWdlZC1jb25maWcudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBTaGFyZWQgbmFuby1zdGFnZWQgY29uZmlndXJhdGlvbiBmb3IgcHJlLWNvbW1pdCBob29rcy5cbiAqL1xuXG5pbXBvcnQgcHJvY2VzcyBmcm9tICdub2RlOnByb2Nlc3MnO1xuXG5pbXBvcnQge1xuICBpc0VudlZhcmlhYmxlT2ZmLFxuICBsb2FkRW52RmlsZUlmRXhpc3RzXG59IGZyb20gJy4vZW52LXRvZ2dsZS50cyc7XG5pbXBvcnQgeyBnZXRQYWNrYWdlTWFuYWdlclJ1bkNvbW1hbmQgfSBmcm9tICcuL3BhY2thZ2UtbWFuYWdlci50cyc7XG5cbi8qKlxuICogVGhlIGA8bWFuYWdlcj4gcnVuYCBwcmVmaXggZXZlcnkgdGFzayBiZWxvdyBpcyBidWlsdCBvbiwgcmVzb2x2ZWQgb25jZSBmb3IgdGhlIHByb2Nlc3MuXG4gKlxuICogRGV0ZWN0aW9uIHByb2JlcyBmb3IgYSBsb2NrZmlsZSBiZXNpZGUgYHBhY2thZ2UuanNvbmAsIHNvIGl0IGlzIGEgaGFuZGZ1bCBvZiBgZXhpc3RzU3luY2AgY2FsbHMgYW5kXG4gKiBub3RoaW5nIG1vcmUgXHUyMDE0IG5vIGAuZW52YCByZWFkIGFuZCBubyBgcHJvY2Vzcy5leGl0YCwgd2hpY2ggaXMgd2hhdCBsZXRzIGl0IHNpdCBhdCBtb2R1bGUgc2NvcGUuXG4gKi9cbmNvbnN0IFBBQ0tBR0VfTUFOQUdFUl9SVU5fQ09NTUFORCA9IGdldFBhY2thZ2VNYW5hZ2VyUnVuQ29tbWFuZCgpLmpvaW4oJyAnKTtcblxuLyoqXG4gKiBOYW5vLXN0YWdlZCBjb25maWd1cmF0aW9uIHRoYXQgcnVucyBmaWxlLWJhc2VkIGxpbnQsIGZvcm1hdCwgYW5kIHNwZWxsY2hlY2sgb24gc3RhZ2VkIGZpbGVzLlxuICpcbiAqIE9ubHkgaW5jbHVkZXMgdG9vbHMgdGhhdCBjYW4gb3BlcmF0ZSBvbiBpbmRpdmlkdWFsIGZpbGVzLiBXaG9sZS1wcm9qZWN0IGNoZWNrc1xuICogKFR5cGVTY3JpcHQgY29tcGlsYXRpb24sIHVuaXQgdGVzdHMpIGFyZSBsZWZ0IHRvIENJLlxuICpcbiAqIENvbW1hbmRzIHJ1biB0aHJvdWdoIHRoZSBwYWNrYWdlIG1hbmFnZXIgdGhhdCBvd25zIHRoZSB0cmVlIFx1MjAxNCBgbnBtIHJ1biAuLi4gLS1gLCBgYnVuIHJ1biAuLi4gLS1gLCBhbmRcbiAqIHNvIG9uIFx1MjAxNCBzbyBuYW5vLXN0YWdlZCBmaWxlIHBhdGhzIGFyZSBmb3J3YXJkZWQgYXMgQ0xJIGFyZ3VtZW50cy5cbiAqL1xuZXhwb3J0IGNvbnN0IG9ic2lkaWFuRGV2VXRpbHNDb25maWc6IFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPiA9IHtcbiAgLypcbiAgICogTGludCBldmVyeXRoaW5nIGV4Y2VwdCB0aGUgYHRlbXBsYXRlcy9gIGNvbnN1bWVyIHRlbXBsYXRlczogRVNMaW50IGdsb2JhbGx5IGlnbm9yZXMgdGhlbSwgYW5kXG4gICAqIHRoZXkgc2hpcCB0aGVpciBvd24gY29uc3VtZXItZmFjaW5nIGNvbmZpZy9zY3JpcHRzIHRoYXQgY2Fubm90IHJlc29sdmUgaW4tcmVwbywgc28gcGFzc2luZyBvbmVcbiAgICogYnkgZXhwbGljaXQgcGF0aCBlcnJvcnMgb3V0LiBUaGUgYCEodGVtcGxhdGVzKWAgbmVnYXRpb24gZHJvcHMgYW55IHBhdGggdGhhdCBiZWdpbnMgd2l0aFxuICAgKiBgdGVtcGxhdGVzYC4gRm9ybWF0dGluZyBhbmQgc3BlbGxjaGVja2luZyBzdGlsbCBjb3ZlciBgdGVtcGxhdGVzL2AgdmlhIHRoZSBlbnRyaWVzIGFib3ZlIGFuZCBiZWxvdy5cbiAgICovXG4gICchKHRlbXBsYXRlcykqLnt0cyx0c3gsbXRzfSc6IFtcbiAgICBgJHtQQUNLQUdFX01BTkFHRVJfUlVOX0NPTU1BTkR9IGxpbnQ6Zml4IC0tYFxuICBdLFxuICAnKic6IFtcbiAgICBgJHtQQUNLQUdFX01BTkFHRVJfUlVOX0NPTU1BTkR9IHNwZWxsY2hlY2sgLS1gXG4gIF0sXG4gICcqLnt0cyx0c3gsbXRzfSc6IFtcbiAgICBgJHtQQUNLQUdFX01BTkFHRVJfUlVOX0NPTU1BTkR9IGZvcm1hdCAtLWBcbiAgXSxcbiAgJyoubWQnOiBbXG4gICAgYCR7UEFDS0FHRV9NQU5BR0VSX1JVTl9DT01NQU5EfSBsaW50Om1kOmZpeCAtLWBcbiAgXVxufTtcblxuY29uc3QgTkFOT19TVEFHRURfRU5WX1ZBUklBQkxFID0gJ05BTk9fU1RBR0VEJztcblxuLyoqXG4gKiBSZXNvbHZlcyB0aGUgbmFuby1zdGFnZWQgY29uZmlndXJhdGlvbiB0byB1c2UsIGhvbm9yaW5nIGEgcGVyLWRldmVsb3BlciBvcHQtb3V0LlxuICpcbiAqIExvYWRzIGEgZ2l0aWdub3JlZCBgLmVudmAgaWYgcHJlc2VudCwgdGhlbiBcdTIwMTQgd2hlbiBgTkFOT19TVEFHRURgIGlzIHNldCB0byBhbiBvZmYgdmFsdWUgKGAwYCwgYGZhbHNlYCxcbiAqIGBvZmZgLCBvciBgbm9gKSBcdTIwMTQgcHJpbnRzIGEgbm90aWNlIGFuZCBleGl0cyB0aGUgcHJvY2VzcyBzdWNjZXNzZnVsbHkgc28gdGhlIHByZS1jb21taXQgY2hlY2tzIGFyZVxuICogc2tpcHBlZC4gVGhpcyBtaXJyb3JzIGh1c2t5J3Mgb3duIGBIVVNLWT0wYCBzd2l0Y2gsIGJ1dCBzY29wZWQgdG8gdGhlIG5hbm8tc3RhZ2VkIHN0ZXAgKHNvIHRoZVxuICogY29tbWl0LW1zZyBob29rIHN0aWxsIHJ1bnMpLiBPdGhlcndpc2UgaXQgcmV0dXJucyB7QGxpbmsgb2JzaWRpYW5EZXZVdGlsc0NvbmZpZ30uXG4gKlxuICogYE5BTk9fU1RBR0VEYCBpcyBub3QgYW4gbnBtIHNjcmlwdCwgc28gaXQgY2FycmllcyBpdHMgb3duIHN3aXRjaCByYXRoZXIgdGhhbiB0aGUgc2NyaXB0LW5hbWUtZGVyaXZlZCBvbmVcbiAqIGV2ZXJ5IG5wbSBzY3JpcHQgZ2V0cyBcdTIwMTQgYnV0IGJvdGggc2hhcmUgdGhlIHNhbWUgbm90aW9uIG9mIGFuIG9mZiB2YWx1ZSwgdmlhIHtAbGluayBpc0VudlZhcmlhYmxlT2ZmfS5cbiAqXG4gKiBUaGlzIGlzIGEgZnVuY3Rpb24gcmF0aGVyIHRoYW4gbW9kdWxlLWxldmVsIGNvZGUgc28gaW1wb3J0aW5nIHRoZSBwYWNrYWdlIGJhcnJlbCBuZXZlciB0cmlnZ2VycyB0aGVcbiAqIGAuZW52YCByZWFkIG9yIHRoZSBwcm9jZXNzIGV4aXQ7IGNhbGwgaXQgZnJvbSB0aGUgdGhpbiBgc2NyaXB0cy9uYW5vLXN0YWdlZC1jb25maWcudHNgIGVudHJ5LiBSZXNvbHZpbmcgdGhlXG4gKiBwYWNrYWdlIG1hbmFnZXIgaXMgdGhlIG9uZSB0aGluZyB0aGF0IGRvZXMgcnVuIGF0IG1vZHVsZSBzY29wZSwgYW5kIGl0IGRvZXMgbmVpdGhlciBvZiB0aG9zZSB0d29cbiAqIHRoaW5ncyBcdTIwMTQgaXQgb25seSBwcm9iZXMgZm9yIGEgbG9ja2ZpbGUuXG4gKlxuICogQHJldHVybnMgVGhlIG5hbm8tc3RhZ2VkIHRhc2sgY29uZmlndXJhdGlvbi4gRG9lcyBub3QgcmV0dXJuIHdoZW4gdGhlIG9wdC1vdXQgaXMgYWN0aXZlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TmFub1N0YWdlZENvbmZpZygpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4ge1xuICBsb2FkRW52RmlsZUlmRXhpc3RzKCk7XG5cbiAgaWYgKGlzRW52VmFyaWFibGVPZmYoTkFOT19TVEFHRURfRU5WX1ZBUklBQkxFKSkge1xuICAgIHByb2Nlc3Muc3Rkb3V0LndyaXRlKGBuYW5vLXN0YWdlZDogc2tpcHBlZCAoJHtOQU5PX1NUQUdFRF9FTlZfVkFSSUFCTEV9IGlzIG9mZikuXFxuYCk7XG4gICAgcHJvY2Vzcy5leGl0KDApO1xuICB9XG5cbiAgcmV0dXJuIG9ic2lkaWFuRGV2VXRpbHNDb25maWc7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsT0FBTyxhQUFhO0FBRXBCO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1AsU0FBUyxtQ0FBbUM7QUFRNUMsTUFBTSw4QkFBOEIsNEJBQTRCLEVBQUUsS0FBSyxHQUFHO0FBV25FLE1BQU0seUJBQW1EO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPOUQsOEJBQThCO0FBQUEsSUFDNUIsR0FBRywyQkFBMkI7QUFBQSxFQUNoQztBQUFBLEVBQ0EsS0FBSztBQUFBLElBQ0gsR0FBRywyQkFBMkI7QUFBQSxFQUNoQztBQUFBLEVBQ0Esa0JBQWtCO0FBQUEsSUFDaEIsR0FBRywyQkFBMkI7QUFBQSxFQUNoQztBQUFBLEVBQ0EsUUFBUTtBQUFBLElBQ04sR0FBRywyQkFBMkI7QUFBQSxFQUNoQztBQUNGO0FBRUEsTUFBTSwyQkFBMkI7QUFvQjFCLFNBQVMsc0JBQWdEO0FBQzlELHNCQUFvQjtBQUVwQixNQUFJLGlCQUFpQix3QkFBd0IsR0FBRztBQUM5QyxZQUFRLE9BQU8sTUFBTSx5QkFBeUIsd0JBQXdCO0FBQUEsQ0FBYTtBQUNuRixZQUFRLEtBQUssQ0FBQztBQUFBLEVBQ2hCO0FBRUEsU0FBTztBQUNUOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -43,6 +43,7 @@ function ensureBrowserProcess() {
43
43
 
44
44
  import { getLibDebugger } from "../debug.mjs";
45
45
  import { readPackageJson } from "./npm.mjs";
46
+ import { getPackageManagerRunCommand } from "./package-manager.mjs";
46
47
  import { execFromRoot } from "./root.mjs";
47
48
  var NpmRunOptionalResult = /* @__PURE__ */ ((NpmRunOptionalResult2) => {
48
49
  NpmRunOptionalResult2["Skipped"] = "skipped";
@@ -53,7 +54,7 @@ async function npmRun(command) {
53
54
  const packageJson = await readPackageJson();
54
55
  const isKnownCommand = Object.keys(packageJson.scripts ?? {}).includes(command);
55
56
  if (isKnownCommand) {
56
- await execFromRoot(["npm", "run", command]);
57
+ await execFromRoot([...getPackageManagerRunCommand(), command]);
57
58
  } else {
58
59
  throw new Error(`Command ${command} is not defined in the package.json`);
59
60
  }
@@ -62,7 +63,7 @@ async function npmRunOptional(command) {
62
63
  const packageJson = await readPackageJson();
63
64
  const isKnownCommand = Object.keys(packageJson.scripts ?? {}).includes(command);
64
65
  if (isKnownCommand) {
65
- await execFromRoot(["npm", "run", command]);
66
+ await execFromRoot([...getPackageManagerRunCommand(), command]);
66
67
  return "success" /* Success */;
67
68
  }
68
69
  getLibDebugger("npmRunOptional")(`Command ${command} is not defined in the package.json, skipping`);
@@ -73,4 +74,4 @@ export {
73
74
  npmRun,
74
75
  npmRunOptional
75
76
  };
76
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy9ucG0tcnVuLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogTlBNIHJ1biB1dGlsaXRpZXMuXG4gKi9cblxuaW1wb3J0IHsgZ2V0TGliRGVidWdnZXIgfSBmcm9tICcuLi9kZWJ1Zy50cyc7XG5pbXBvcnQgeyByZWFkUGFja2FnZUpzb24gfSBmcm9tICcuL25wbS50cyc7XG5pbXBvcnQgeyBleGVjRnJvbVJvb3QgfSBmcm9tICcuL3Jvb3QudHMnO1xuXG4vKipcbiAqIFRoZSByZXN1bHQgb2YgcnVubmluZyBhbiBvcHRpb25hbCBucG0gY29tbWFuZC5cbiAqL1xuZXhwb3J0IGVudW0gTnBtUnVuT3B0aW9uYWxSZXN1bHQge1xuICAvKipcbiAgICogVGhlIGNvbW1hbmQgd2FzIHNraXBwZWQgYmVjYXVzZSBpdCB3YXMgbm90IGRlZmluZWQgaW4gdGhlIHBhY2thZ2UuanNvbiBzY3JpcHRzLlxuICAgKi9cbiAgU2tpcHBlZCA9ICdza2lwcGVkJyxcblxuICAvKipcbiAgICogVGhlIGNvbW1hbmQgd2FzIGZvdW5kIGFuZCBydW4gc3VjY2Vzc2Z1bGx5LlxuICAgKi9cbiAgU3VjY2VzcyA9ICdzdWNjZXNzJ1xufVxuXG4vKipcbiAqIFJ1bnMgYSBjb21tYW5kIHVzaW5nIG5wbSBjaGVja2luZyBpZiB0aGUgY29tbWFuZCBpcyBvdmVycmlkZGVuIGluIHRoZSBwYWNrYWdlLmpzb24uXG4gKlxuICogQHBhcmFtIGNvbW1hbmQgLSBUaGUgY29tbWFuZCB0byBydW4uXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBucG1SdW4oY29tbWFuZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHBhY2thZ2VKc29uID0gYXdhaXQgcmVhZFBhY2thZ2VKc29uKCk7XG4gIGNvbnN0IGlzS25vd25Db21tYW5kID0gT2JqZWN0LmtleXMocGFja2FnZUpzb24uc2NyaXB0cyA/PyB7fSkuaW5jbHVkZXMoY29tbWFuZCk7XG4gIGlmIChpc0tub3duQ29tbWFuZCkge1xuICAgIGF3YWl0IGV4ZWNGcm9tUm9vdChbJ25wbScsICdydW4nLCBjb21tYW5kXSk7XG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBDb21tYW5kICR7Y29tbWFuZH0gaXMgbm90IGRlZmluZWQgaW4gdGhlIHBhY2thZ2UuanNvbmApO1xuICB9XG59XG5cbi8qKlxuICogUnVucyBhIGNvbW1hbmQgdXNpbmcgbnBtIG9ubHkgaWYgdGhlIGNvbW1hbmQgaXMgZGVmaW5lZCBpbiB0aGUgcGFja2FnZS5qc29uIHNjcmlwdHMuXG4gKiBJZiB0aGUgY29tbWFuZCBpcyBub3QgZGVmaW5lZCwgaXQgaXMgc2lsZW50bHkgc2tpcHBlZC5cbiAqXG4gKiBAcGFyYW0gY29tbWFuZCAtIFRoZSBjb21tYW5kIHRvIHJ1bi5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgdG8ge0BsaW5rIE5wbVJ1bk9wdGlvbmFsUmVzdWx0LlN1Y2Nlc3N9IGlmIHRoZSBjb21tYW5kIHdhc1xuICogZm91bmQgYW5kIHJ1biwgb3Ige0BsaW5rIE5wbVJ1bk9wdGlvbmFsUmVzdWx0LlNraXBwZWR9IG90aGVyd2lzZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG5wbVJ1bk9wdGlvbmFsKGNvbW1hbmQ6IHN0cmluZyk6IFByb21pc2U8TnBtUnVuT3B0aW9uYWxSZXN1bHQ+IHtcbiAgY29uc3QgcGFja2FnZUpzb24gPSBhd2FpdCByZWFkUGFja2FnZUpzb24oKTtcbiAgY29uc3QgaXNLbm93bkNvbW1hbmQgPSBPYmplY3Qua2V5cyhwYWNrYWdlSnNvbi5zY3JpcHRzID8/IHt9KS5pbmNsdWRlcyhjb21tYW5kKTtcbiAgaWYgKGlzS25vd25Db21tYW5kKSB7XG4gICAgYXdhaXQgZXhlY0Zyb21Sb290KFsnbnBtJywgJ3J1bicsIGNvbW1hbmRdKTtcbiAgICByZXR1cm4gTnBtUnVuT3B0aW9uYWxSZXN1bHQuU3VjY2VzcztcbiAgfVxuICBnZXRMaWJEZWJ1Z2dlcignbnBtUnVuT3B0aW9uYWwnKShgQ29tbWFuZCAke2NvbW1hbmR9IGlzIG5vdCBkZWZpbmVkIGluIHRoZSBwYWNrYWdlLmpzb24sIHNraXBwaW5nYCk7XG4gIHJldHVybiBOcG1SdW5PcHRpb25hbFJlc3VsdC5Ta2lwcGVkO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU1BLFNBQVMsc0JBQXNCO0FBQy9CLFNBQVMsdUJBQXVCO0FBQ2hDLFNBQVMsb0JBQW9CO0FBS3RCLElBQUssdUJBQUwsa0JBQUtBLDBCQUFMO0FBSUwsRUFBQUEsc0JBQUEsYUFBVTtBQUtWLEVBQUFBLHNCQUFBLGFBQVU7QUFUQSxTQUFBQTtBQUFBLEdBQUE7QUFpQlosZUFBc0IsT0FBTyxTQUFnQztBQUMzRCxRQUFNLGNBQWMsTUFBTSxnQkFBZ0I7QUFDMUMsUUFBTSxpQkFBaUIsT0FBTyxLQUFLLFlBQVksV0FBVyxDQUFDLENBQUMsRUFBRSxTQUFTLE9BQU87QUFDOUUsTUFBSSxnQkFBZ0I7QUFDbEIsVUFBTSxhQUFhLENBQUMsT0FBTyxPQUFPLE9BQU8sQ0FBQztBQUFBLEVBQzVDLE9BQU87QUFDTCxVQUFNLElBQUksTUFBTSxXQUFXLE9BQU8scUNBQXFDO0FBQUEsRUFDekU7QUFDRjtBQVVBLGVBQXNCLGVBQWUsU0FBZ0Q7QUFDbkYsUUFBTSxjQUFjLE1BQU0sZ0JBQWdCO0FBQzFDLFFBQU0saUJBQWlCLE9BQU8sS0FBSyxZQUFZLFdBQVcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxPQUFPO0FBQzlFLE1BQUksZ0JBQWdCO0FBQ2xCLFVBQU0sYUFBYSxDQUFDLE9BQU8sT0FBTyxPQUFPLENBQUM7QUFDMUMsV0FBTztBQUFBLEVBQ1Q7QUFDQSxpQkFBZSxnQkFBZ0IsRUFBRSxXQUFXLE9BQU8sK0NBQStDO0FBQ2xHLFNBQU87QUFDVDsiLAogICJuYW1lcyI6IFsiTnBtUnVuT3B0aW9uYWxSZXN1bHQiXQp9Cg==
77
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy9ucG0tcnVuLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogTlBNIHJ1biB1dGlsaXRpZXMuXG4gKi9cblxuaW1wb3J0IHsgZ2V0TGliRGVidWdnZXIgfSBmcm9tICcuLi9kZWJ1Zy50cyc7XG5pbXBvcnQgeyByZWFkUGFja2FnZUpzb24gfSBmcm9tICcuL25wbS50cyc7XG5pbXBvcnQgeyBnZXRQYWNrYWdlTWFuYWdlclJ1bkNvbW1hbmQgfSBmcm9tICcuL3BhY2thZ2UtbWFuYWdlci50cyc7XG5pbXBvcnQgeyBleGVjRnJvbVJvb3QgfSBmcm9tICcuL3Jvb3QudHMnO1xuXG4vKipcbiAqIFRoZSByZXN1bHQgb2YgcnVubmluZyBhbiBvcHRpb25hbCBucG0gY29tbWFuZC5cbiAqL1xuZXhwb3J0IGVudW0gTnBtUnVuT3B0aW9uYWxSZXN1bHQge1xuICAvKipcbiAgICogVGhlIGNvbW1hbmQgd2FzIHNraXBwZWQgYmVjYXVzZSBpdCB3YXMgbm90IGRlZmluZWQgaW4gdGhlIHBhY2thZ2UuanNvbiBzY3JpcHRzLlxuICAgKi9cbiAgU2tpcHBlZCA9ICdza2lwcGVkJyxcblxuICAvKipcbiAgICogVGhlIGNvbW1hbmQgd2FzIGZvdW5kIGFuZCBydW4gc3VjY2Vzc2Z1bGx5LlxuICAgKi9cbiAgU3VjY2VzcyA9ICdzdWNjZXNzJ1xufVxuXG4vKipcbiAqIFJ1bnMgYSBjb21tYW5kIHVzaW5nIG5wbSBjaGVja2luZyBpZiB0aGUgY29tbWFuZCBpcyBvdmVycmlkZGVuIGluIHRoZSBwYWNrYWdlLmpzb24uXG4gKlxuICogQHBhcmFtIGNvbW1hbmQgLSBUaGUgY29tbWFuZCB0byBydW4uXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBucG1SdW4oY29tbWFuZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHBhY2thZ2VKc29uID0gYXdhaXQgcmVhZFBhY2thZ2VKc29uKCk7XG4gIGNvbnN0IGlzS25vd25Db21tYW5kID0gT2JqZWN0LmtleXMocGFja2FnZUpzb24uc2NyaXB0cyA/PyB7fSkuaW5jbHVkZXMoY29tbWFuZCk7XG4gIGlmIChpc0tub3duQ29tbWFuZCkge1xuICAgIGF3YWl0IGV4ZWNGcm9tUm9vdChbLi4uZ2V0UGFja2FnZU1hbmFnZXJSdW5Db21tYW5kKCksIGNvbW1hbmRdKTtcbiAgfSBlbHNlIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYENvbW1hbmQgJHtjb21tYW5kfSBpcyBub3QgZGVmaW5lZCBpbiB0aGUgcGFja2FnZS5qc29uYCk7XG4gIH1cbn1cblxuLyoqXG4gKiBSdW5zIGEgY29tbWFuZCB1c2luZyBucG0gb25seSBpZiB0aGUgY29tbWFuZCBpcyBkZWZpbmVkIGluIHRoZSBwYWNrYWdlLmpzb24gc2NyaXB0cy5cbiAqIElmIHRoZSBjb21tYW5kIGlzIG5vdCBkZWZpbmVkLCBpdCBpcyBzaWxlbnRseSBza2lwcGVkLlxuICpcbiAqIEBwYXJhbSBjb21tYW5kIC0gVGhlIGNvbW1hbmQgdG8gcnVuLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB0byB7QGxpbmsgTnBtUnVuT3B0aW9uYWxSZXN1bHQuU3VjY2Vzc30gaWYgdGhlIGNvbW1hbmQgd2FzXG4gKiBmb3VuZCBhbmQgcnVuLCBvciB7QGxpbmsgTnBtUnVuT3B0aW9uYWxSZXN1bHQuU2tpcHBlZH0gb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbnBtUnVuT3B0aW9uYWwoY29tbWFuZDogc3RyaW5nKTogUHJvbWlzZTxOcG1SdW5PcHRpb25hbFJlc3VsdD4ge1xuICBjb25zdCBwYWNrYWdlSnNvbiA9IGF3YWl0IHJlYWRQYWNrYWdlSnNvbigpO1xuICBjb25zdCBpc0tub3duQ29tbWFuZCA9IE9iamVjdC5rZXlzKHBhY2thZ2VKc29uLnNjcmlwdHMgPz8ge30pLmluY2x1ZGVzKGNvbW1hbmQpO1xuICBpZiAoaXNLbm93bkNvbW1hbmQpIHtcbiAgICBhd2FpdCBleGVjRnJvbVJvb3QoWy4uLmdldFBhY2thZ2VNYW5hZ2VyUnVuQ29tbWFuZCgpLCBjb21tYW5kXSk7XG4gICAgcmV0dXJuIE5wbVJ1bk9wdGlvbmFsUmVzdWx0LlN1Y2Nlc3M7XG4gIH1cbiAgZ2V0TGliRGVidWdnZXIoJ25wbVJ1bk9wdGlvbmFsJykoYENvbW1hbmQgJHtjb21tYW5kfSBpcyBub3QgZGVmaW5lZCBpbiB0aGUgcGFja2FnZS5qc29uLCBza2lwcGluZ2ApO1xuICByZXR1cm4gTnBtUnVuT3B0aW9uYWxSZXN1bHQuU2tpcHBlZDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSxTQUFTLHNCQUFzQjtBQUMvQixTQUFTLHVCQUF1QjtBQUNoQyxTQUFTLG1DQUFtQztBQUM1QyxTQUFTLG9CQUFvQjtBQUt0QixJQUFLLHVCQUFMLGtCQUFLQSwwQkFBTDtBQUlMLEVBQUFBLHNCQUFBLGFBQVU7QUFLVixFQUFBQSxzQkFBQSxhQUFVO0FBVEEsU0FBQUE7QUFBQSxHQUFBO0FBaUJaLGVBQXNCLE9BQU8sU0FBZ0M7QUFDM0QsUUFBTSxjQUFjLE1BQU0sZ0JBQWdCO0FBQzFDLFFBQU0saUJBQWlCLE9BQU8sS0FBSyxZQUFZLFdBQVcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxPQUFPO0FBQzlFLE1BQUksZ0JBQWdCO0FBQ2xCLFVBQU0sYUFBYSxDQUFDLEdBQUcsNEJBQTRCLEdBQUcsT0FBTyxDQUFDO0FBQUEsRUFDaEUsT0FBTztBQUNMLFVBQU0sSUFBSSxNQUFNLFdBQVcsT0FBTyxxQ0FBcUM7QUFBQSxFQUN6RTtBQUNGO0FBVUEsZUFBc0IsZUFBZSxTQUFnRDtBQUNuRixRQUFNLGNBQWMsTUFBTSxnQkFBZ0I7QUFDMUMsUUFBTSxpQkFBaUIsT0FBTyxLQUFLLFlBQVksV0FBVyxDQUFDLENBQUMsRUFBRSxTQUFTLE9BQU87QUFDOUUsTUFBSSxnQkFBZ0I7QUFDbEIsVUFBTSxhQUFhLENBQUMsR0FBRyw0QkFBNEIsR0FBRyxPQUFPLENBQUM7QUFDOUQsV0FBTztBQUFBLEVBQ1Q7QUFDQSxpQkFBZSxnQkFBZ0IsRUFBRSxXQUFXLE9BQU8sK0NBQStDO0FBQ2xHLFNBQU87QUFDVDsiLAogICJuYW1lcyI6IFsiTnBtUnVuT3B0aW9uYWxSZXN1bHQiXQp9Cg==
@@ -47,6 +47,22 @@ export declare enum ObsidianDevUtilsRepoPaths {
47
47
  */
48
48
  AstroConfigTs = "astro.config.ts",
49
49
  /**
50
+ Windows batch file extension.
51
+ */
52
+ BatExtension = ".bat",
53
+ /**
54
+ Folder holding the executable shims of locally-installed packages.
55
+ */
56
+ Bin = ".bin",
57
+ /**
58
+ Bun lockfile.
59
+ */
60
+ BunLock = "bun.lock",
61
+ /**
62
+ Binary bun lockfile, written by bun before v1.2.
63
+ */
64
+ BunLockb = "bun.lockb",
65
+ /**
50
66
  CommonJS folder.
51
67
  */
52
68
  Cjs = "cjs",
@@ -55,6 +71,10 @@ export declare enum ObsidianDevUtilsRepoPaths {
55
71
  */
56
72
  CjsExtension = ".cjs",
57
73
  /**
74
+ Windows command script extension.
75
+ */
76
+ CommandExtension = ".cmd",
77
+ /**
58
78
  Current folder.
59
79
  */
60
80
  CurrentFolder = ".",
@@ -127,6 +147,10 @@ export declare enum ObsidianDevUtilsRepoPaths {
127
147
  */
128
148
  Esm = "esm",
129
149
  /**
150
+ Windows executable extension.
151
+ */
152
+ ExeExtension = ".exe",
153
+ /**
130
154
  Generated-during-build CommonJS file.
131
155
  */
132
156
  GeneratedDuringBuildCjs = "generated-during-build.cjs",
@@ -191,10 +215,18 @@ export declare enum ObsidianDevUtilsRepoPaths {
191
215
  */
192
216
  PackageJson = "package.json",
193
217
  /**
218
+ NPM lockfile.
219
+ */
220
+ PackageLockJson = "package-lock.json",
221
+ /**
194
222
  Folder holding hand-written patched copies of third-party packages.
195
223
  */
196
224
  Patches = "patches",
197
225
  /**
226
+ Pnpm lockfile.
227
+ */
228
+ PnpmLockYaml = "pnpm-lock.yaml",
229
+ /**
198
230
  Root folder.
199
231
  */
200
232
  RootFolder = "/",
@@ -245,5 +277,9 @@ export declare enum ObsidianDevUtilsRepoPaths {
245
277
  /**
246
278
  Types folder.
247
279
  */
248
- Types = "@types"
280
+ Types = "@types",
281
+ /**
282
+ Yarn lockfile.
283
+ */
284
+ YarnLock = "yarn.lock"
249
285
  }
@@ -51,8 +51,13 @@ var ObsidianDevUtilsRepoPaths = /* @__PURE__ */ ((ObsidianDevUtilsRepoPaths2) =>
51
51
  ObsidianDevUtilsRepoPaths2["AnyPath"] = "**";
52
52
  ObsidianDevUtilsRepoPaths2["AnyTs"] = "*.ts";
53
53
  ObsidianDevUtilsRepoPaths2["AstroConfigTs"] = "astro.config.ts";
54
+ ObsidianDevUtilsRepoPaths2["BatExtension"] = ".bat";
55
+ ObsidianDevUtilsRepoPaths2["Bin"] = ".bin";
56
+ ObsidianDevUtilsRepoPaths2["BunLock"] = "bun.lock";
57
+ ObsidianDevUtilsRepoPaths2["BunLockb"] = "bun.lockb";
54
58
  ObsidianDevUtilsRepoPaths2["Cjs"] = "cjs";
55
59
  ObsidianDevUtilsRepoPaths2["CjsExtension"] = ".cjs";
60
+ ObsidianDevUtilsRepoPaths2["CommandExtension"] = ".cmd";
56
61
  ObsidianDevUtilsRepoPaths2["CurrentFolder"] = ".";
57
62
  ObsidianDevUtilsRepoPaths2["DataviewTypes"] = "src/obsidian/@types/dataview/**";
58
63
  ObsidianDevUtilsRepoPaths2["DctsExtension"] = ".d.cts";
@@ -71,6 +76,7 @@ var ObsidianDevUtilsRepoPaths = /* @__PURE__ */ ((ObsidianDevUtilsRepoPaths2) =>
71
76
  ObsidianDevUtilsRepoPaths2["DtsExtension"] = ".d.ts";
72
77
  ObsidianDevUtilsRepoPaths2["EslintConfigMts"] = "eslint.config.mts";
73
78
  ObsidianDevUtilsRepoPaths2["Esm"] = "esm";
79
+ ObsidianDevUtilsRepoPaths2["ExeExtension"] = ".exe";
74
80
  ObsidianDevUtilsRepoPaths2["GeneratedDuringBuildCjs"] = "generated-during-build.cjs";
75
81
  ObsidianDevUtilsRepoPaths2["GeneratedDuringBuildMjs"] = "generated-during-build.mjs";
76
82
  ObsidianDevUtilsRepoPaths2["IndexCjs"] = "index.cjs";
@@ -87,7 +93,9 @@ var ObsidianDevUtilsRepoPaths = /* @__PURE__ */ ((ObsidianDevUtilsRepoPaths2) =>
87
93
  ObsidianDevUtilsRepoPaths2["MjsExtension"] = ".mjs";
88
94
  ObsidianDevUtilsRepoPaths2["NodeModules"] = "node_modules";
89
95
  ObsidianDevUtilsRepoPaths2["PackageJson"] = "package.json";
96
+ ObsidianDevUtilsRepoPaths2["PackageLockJson"] = "package-lock.json";
90
97
  ObsidianDevUtilsRepoPaths2["Patches"] = "patches";
98
+ ObsidianDevUtilsRepoPaths2["PnpmLockYaml"] = "pnpm-lock.yaml";
91
99
  ObsidianDevUtilsRepoPaths2["RootFolder"] = "/";
92
100
  ObsidianDevUtilsRepoPaths2["Scripts"] = "scripts";
93
101
  ObsidianDevUtilsRepoPaths2["ScriptUtils"] = "script-utils";
@@ -101,9 +109,10 @@ var ObsidianDevUtilsRepoPaths = /* @__PURE__ */ ((ObsidianDevUtilsRepoPaths2) =>
101
109
  ObsidianDevUtilsRepoPaths2["TsConfigValidateDeclarationsJson"] = "tsconfig.validate-declarations.json";
102
110
  ObsidianDevUtilsRepoPaths2["TsExtension"] = ".ts";
103
111
  ObsidianDevUtilsRepoPaths2["Types"] = "@types";
112
+ ObsidianDevUtilsRepoPaths2["YarnLock"] = "yarn.lock";
104
113
  return ObsidianDevUtilsRepoPaths2;
105
114
  })(ObsidianDevUtilsRepoPaths || {});
106
115
  export {
107
116
  ObsidianDevUtilsRepoPaths
108
117
  };
109
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy9vYnNpZGlhbi1kZXYtdXRpbHMtcmVwby1wYXRocy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFRoaXMgbW9kdWxlIGRlZmluZXMgYW4gZW51bWVyYXRpb24gb2YgY29tbW9uIGZpbGUgcGF0aHMgYW5kIHBhdHRlcm5zIHVzZWQgaW4gdGhlIE9ic2lkaWFuIGRldmVsb3BtZW50IHV0aWxpdGllcyByZXBvc2l0b3J5LlxuICogVGhlc2UgcGF0aHMgYXJlIHVzZWQgdGhyb3VnaG91dCB0aGUgYnVpbGQgcHJvY2VzcyBhbmQgb3RoZXIgdXRpbGl0aWVzLCBlbnN1cmluZyBjb25zaXN0ZW5jeSBhbmQgcmVkdWNpbmcgdGhlIGxpa2VsaWhvb2RcbiAqIG9mIGVycm9ycyBkdWUgdG8gaGFyZGNvZGVkIHN0cmluZ3MuXG4gKi9cblxuLyoqXG4gKiBFbnVtZXJhdGlvbiBvZiBjb21tb24gZmlsZSBwYXRocyBhbmQgcGF0dGVybnMgdXNlZCBpbiB0aGUgT2JzaWRpYW4gZGV2ZWxvcG1lbnQgdXRpbGl0aWVzIHJlcG9zaXRvcnkuXG4gKi9cbmV4cG9ydCBlbnVtIE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMge1xuICAvKipcbiAgQW55IGZpbGUgb3IgZm9sZGVyLlxuICAgKi9cbiAgQW55ID0gJyonLFxuXG4gIC8qKlxuICBDb21tb25KUyBmaWxlLlxuICAgKi9cbiAgQW55Q2pzID0gJyouY2pzJyxcblxuICAvKipcbiAgQ29tbW9uSlMgVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgQW55RGN0cyA9ICcqLmQuY3RzJyxcblxuICAvKipcbiAgRVNNIFR5cGVTY3JpcHQgZGVjbGFyYXRpb24gZmlsZS5cbiAgICovXG4gIEFueURtdHMgPSAnKi5kLm10cycsXG5cbiAgLyoqXG4gIFR5cGVTY3JpcHQgZGVjbGFyYXRpb24gZmlsZS5cbiAgICovXG4gIEFueUR0cyA9ICcqLmQudHMnLFxuXG4gIC8qKlxuICBFU00gSmF2YVNjcmlwdCBmaWxlLlxuICAgKi9cbiAgQW55TWpzID0gJyoubWpzJyxcblxuICAvKipcbiAgQW55IHBhdGggcmVjdXJzaXZlbHkuXG4gICAqL1xuICBBbnlQYXRoID0gJyoqJyxcblxuICAvKipcbiAgQW55IFR5cGVTY3JpcHQgZmlsZS5cbiAgICovXG4gIEFueVRzID0gJyoudHMnLFxuXG4gIC8qKlxuICBBc3RybyBjb25maWd1cmF0aW9uIGZpbGUgKGRvY3VtZW50YXRpb24gc2l0ZSkgYXQgdGhlIHJlcG8gcm9vdC5cbiAgICovXG4gIEFzdHJvQ29uZmlnVHMgPSAnYXN0cm8uY29uZmlnLnRzJyxcblxuICAvKipcbiAgQ29tbW9uSlMgZm9sZGVyLlxuICAgKi9cbiAgQ2pzID0gJ2NqcycsXG5cbiAgLyoqXG4gIENvbW1vbkpTIGZpbGUgZXh0ZW5zaW9uLlxuICAgKi9cbiAgQ2pzRXh0ZW5zaW9uID0gJy5janMnLFxuXG4gIC8qKlxuICBDdXJyZW50IGZvbGRlci5cbiAgICovXG4gIEN1cnJlbnRGb2xkZXIgPSAnLicsXG5cbiAgLyoqXG4gIERhdGF2aWV3IHR5cGVzLlxuICAgKi9cbiAgRGF0YXZpZXdUeXBlcyA9ICdzcmMvb2JzaWRpYW4vQHR5cGVzL2RhdGF2aWV3LyoqJyxcblxuICAvKipcbiAgQ29tbW9uSlMgVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlIGV4dGVuc2lvbi5cbiAgICovXG4gIERjdHNFeHRlbnNpb24gPSAnLmQuY3RzJyxcblxuICAvKipcbiAgRGlzdHJpYnV0aW9uIGZvbGRlci5cbiAgICovXG4gIERpc3QgPSAnZGlzdCcsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgYnVpbHQgYGRlbW8tdmF1bHQtaGVscGVyYCBwbHVnaW4gd2l0aGluIHRoZSB7QGxpbmsgRGlzdH0gZm9sZGVyLCBpbmplY3RlZCBpbnRvIGRlbW8gdmF1bHRzIGF0IHJlbGVhc2UgdGltZS5cbiAgICovXG4gIERpc3REZW1vVmF1bHRIZWxwZXIgPSAnZGlzdC9kZW1vLXZhdWx0LWhlbHBlcicsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgYnVpbHQgaW50ZWdyYXRpb24tdGVzdCBoYXJuZXNzIHBsdWdpbiB3aXRoaW4gdGhlIHtAbGluayBEaXN0fSBmb2xkZXIsIHNlZWRlZCBpbnRvIGEgY29uc3VtZXIncyBpbnRlZ3JhdGlvbi10ZXN0IHZhdWx0IHNvIGl0cyBgZXZhbEluT2JzaWRpYW5gIGNsb3N1cmVzIHJlYWNoIHRoZSBsaWJyYXJ5IHZpYSBgbGliYC5cbiAgICovXG4gIERpc3RJbnRlZ3JhdGlvblRlc3RQbHVnaW4gPSAnZGlzdC9pbnRlZ3JhdGlvbi10ZXN0LXBsdWdpbicsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgYGxpYmAgZm9sZGVyIHdpdGhpbiB0aGUge0BsaW5rIERpc3R9IGZvbGRlci5cbiAgICovXG4gIERpc3RMaWIgPSAnZGlzdC9saWInLFxuXG4gIC8qKlxuICBBIHBhdGggdG8gdGhlIGJ1aWx0IHBsdWdpbi1BUEkgaW50ZWdyYXRpb24tdGVzdCBDT05TVU1FUiBwbHVnaW4gd2l0aGluIHRoZSB7QGxpbmsgRGlzdH0gZm9sZGVyLiBUZXN0LW9ubHkgYW5kIG5ldmVyIHNoaXBwZWQ7IGJ1aWx0IHNlcGFyYXRlbHkgZnJvbSBpdHMgcHJvdmlkZXIgc28gdGhlIHR3byBjYXJyeSBkaXN0aW5jdCBgb2JzaWRpYW4tZGV2LXV0aWxzYCBjb3BpZXMuXG4gICAqL1xuICBEaXN0UGx1Z2luQXBpVGVzdENvbnN1bWVyID0gJ2Rpc3QvcGx1Z2luLWFwaS10ZXN0LWNvbnN1bWVyJyxcblxuICAvKipcbiAgQSBwYXRoIHRvIHRoZSBidWlsdCBwbHVnaW4tQVBJIGludGVncmF0aW9uLXRlc3QgUFJPVklERVIgcGx1Z2luIHdpdGhpbiB0aGUge0BsaW5rIERpc3R9IGZvbGRlci4gVGVzdC1vbmx5IGFuZCBuZXZlciBzaGlwcGVkOyBidWlsdCBzZXBhcmF0ZWx5IGZyb20gaXRzIGNvbnN1bWVyIHNvIHRoZSB0d28gY2FycnkgZGlzdGluY3QgYG9ic2lkaWFuLWRldi11dGlsc2AgY29waWVzLlxuICAgKi9cbiAgRGlzdFBsdWdpbkFwaVRlc3RQcm92aWRlciA9ICdkaXN0L3BsdWdpbi1hcGktdGVzdC1wcm92aWRlcicsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgYHRlbXBsYXRlc2AgZm9sZGVyIHdpdGhpbiB0aGUge0BsaW5rIERpc3R9IGZvbGRlciwgaG9sZGluZyB0aGUgY29uc3VtZXItZmFjaW5nIHRlbXBsYXRlcy5cbiAgICovXG4gIERpc3RUZW1wbGF0ZXMgPSAnZGlzdC90ZW1wbGF0ZXMnLFxuXG4gIC8qKlxuICBUcmFuc3BpbGVkIFR5cGVTY3JpcHQgZGVjbGFyYXRpb24gZmlsZSBleHRlbnNpb24uXG4gICAqL1xuICBEanNFeHRlbnNpb24gPSAnLmQuanMnLFxuXG4gIC8qKlxuICBFU00gVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlIGV4dGVuc2lvbi5cbiAgICovXG4gIERtdHNFeHRlbnNpb24gPSAnLmQubXRzJyxcblxuICAvKipcbiAgRG9jdW1lbnRhdGlvbiBzaXRlIGZvbGRlciAoQXN0cm8gKyBTdGFybGlnaHQgQVBJLWRvY3Mgc3ViLXByb2plY3QpLlxuICAgKi9cbiAgRG9jcyA9ICdkb2NzJyxcblxuICAvKipcbiAgQnVpbGQgb3V0cHV0IGZvbGRlciBvZiB0aGUgZG9jdW1lbnRhdGlvbiBzaXRlLlxuICAgKi9cbiAgRG9jc0Rpc3QgPSAnZG9jcy9kaXN0JyxcblxuICAvKipcbiAgRHByaW50IGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIERwcmludEpzb24gPSAnZHByaW50Lmpzb24nLFxuXG4gIC8qKlxuICBUeXBlU2NyaXB0IGRlY2xhcmF0aW9uIGZpbGUgZXh0ZW5zaW9uLlxuICAgKi9cbiAgRHRzRXh0ZW5zaW9uID0gJy5kLnRzJyxcblxuICAvKipcbiAgRVNNIFR5cGVTY3JpcHQgRVNMaW50IGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIEVzbGludENvbmZpZ010cyA9ICdlc2xpbnQuY29uZmlnLm10cycsXG5cbiAgLyoqXG4gIEVTTSBKYXZhU2NyaXB0IGZvbGRlci5cbiAgICovXG4gIEVzbSA9ICdlc20nLFxuXG4gIC8qKlxuICBHZW5lcmF0ZWQtZHVyaW5nLWJ1aWxkIENvbW1vbkpTIGZpbGUuXG4gICAqL1xuICBHZW5lcmF0ZWREdXJpbmdCdWlsZENqcyA9ICdnZW5lcmF0ZWQtZHVyaW5nLWJ1aWxkLmNqcycsXG5cbiAgLyoqXG4gIEdlbmVyYXRlZC1kdXJpbmctYnVpbGQgRVNNIEphdmFTY3JpcHQgZmlsZS5cbiAgICovXG4gIEdlbmVyYXRlZER1cmluZ0J1aWxkTWpzID0gJ2dlbmVyYXRlZC1kdXJpbmctYnVpbGQubWpzJyxcblxuICAvKipcbiAgQ29tbW9uSlMgSmF2YVNjcmlwdCBpbmRleCBmaWxlLlxuICAgKi9cbiAgSW5kZXhDanMgPSAnaW5kZXguY2pzJyxcblxuICAvKipcbiAgQ29tbW9uSlMgVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlIGluZGV4IGZpbGUuXG4gICAqL1xuICBJbmRleERjdHMgPSAnaW5kZXguZC5jdHMnLFxuXG4gIC8qKlxuICBFU00gVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlIGluZGV4IGZpbGUuXG4gICAqL1xuICBJbmRleERtdHMgPSAnaW5kZXguZC5tdHMnLFxuXG4gIC8qKlxuICBFU00gSmF2YVNjcmlwdCBpbmRleCBmaWxlLlxuICAgKi9cbiAgSW5kZXhNanMgPSAnaW5kZXgubWpzJyxcblxuICAvKipcbiAgVHlwZVNjcmlwdCBpbmRleCBmaWxlLlxuICAgKi9cbiAgSW5kZXhUcyA9ICdpbmRleC50cycsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgc291cmNlcyBvZiB0aGUgcGx1Z2luLUFQSSBpbnRlZ3JhdGlvbi10ZXN0IENPTlNVTUVSIHBsdWdpbi5cbiAgICovXG4gIEludGVncmF0aW9uVGVzdFBsdWdpbkFwaUNvbnN1bWVyID0gJ2ludGVncmF0aW9uLXRlc3QtcGx1Z2luLWFwaS9jb25zdW1lcicsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgc291cmNlcyBvZiB0aGUgcGx1Z2luLUFQSSBpbnRlZ3JhdGlvbi10ZXN0IFBST1ZJREVSIHBsdWdpbi5cbiAgICovXG4gIEludGVncmF0aW9uVGVzdFBsdWdpbkFwaVByb3ZpZGVyID0gJ2ludGVncmF0aW9uLXRlc3QtcGx1Z2luLWFwaS9wcm92aWRlcicsXG5cbiAgLyoqXG4gIEphdmFTY3JpcHQgZmlsZSBleHRlbnNpb24uXG4gICAqL1xuICBKc0V4dGVuc2lvbiA9ICcuanMnLFxuXG4gIC8qKlxuICBFU00gTWFya2Rvd25saW50IENMSTIgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgTWFya2Rvd25saW50Q2xpMkNvbmZpZ01qcyA9ICcubWFya2Rvd25saW50LWNsaTIubWpzJyxcblxuICAvKipcbiAgTWFya2Rvd25saW50IENMSTIgY29uZmlndXJhdGlvbiBzY2hlbWEgVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgTWFya2Rvd25saW50VHlwZXNNYXJrZG93bmxpbnRDbGkyQ29uZmlnU2NoZW1hRHRzID0gJ3NyYy9zY3JpcHQtdXRpbHMvbGludGVycy9tYXJrZG93bmxpbnQtdHlwZXMvQHR5cGVzL21hcmtkb3dubGludC1jbGkyLWNvbmZpZy1zY2hlbWEuZC50cycsXG5cbiAgLyoqXG4gIEdlbmVyYXRlZCBmbGF0IHJlLWV4cG9ydCBiYXJyZWwgZmlsZS5cbiAgICovXG4gIE1lcmdlZFRzID0gJ19fbWVyZ2VkLnRzJyxcblxuICAvKipcbiAgRVNNIEphdmFTY3JpcHQgZmlsZSBleHRlbnNpb24uXG4gICAqL1xuICBNanNFeHRlbnNpb24gPSAnLm1qcycsXG5cbiAgLyoqXG4gIE5vZGUgbW9kdWxlcyBmb2xkZXIuXG4gICAqL1xuICBOb2RlTW9kdWxlcyA9ICdub2RlX21vZHVsZXMnLFxuXG4gIC8qKlxuICBQYWNrYWdlIEpTT04gZmlsZS5cbiAgICovXG4gIFBhY2thZ2VKc29uID0gJ3BhY2thZ2UuanNvbicsXG5cbiAgLyoqXG4gIEZvbGRlciBob2xkaW5nIGhhbmQtd3JpdHRlbiBwYXRjaGVkIGNvcGllcyBvZiB0aGlyZC1wYXJ0eSBwYWNrYWdlcy5cbiAgICovXG4gIFBhdGNoZXMgPSAncGF0Y2hlcycsXG5cbiAgLyoqXG4gIFJvb3QgZm9sZGVyLlxuICAgKi9cbiAgUm9vdEZvbGRlciA9ICcvJyxcblxuICAvKipcbiAgU2NyaXB0cyBmb2xkZXIuXG4gICAqL1xuICBTY3JpcHRzID0gJ3NjcmlwdHMnLFxuXG4gIC8qKlxuICBTY3JpcHRVdGlscyBmb2xkZXIuXG4gICAqL1xuICBTY3JpcHRVdGlscyA9ICdzY3JpcHQtdXRpbHMnLFxuXG4gIC8qKlxuICBTb3VyY2UgZm9sZGVyLlxuICAgKi9cbiAgU3JjID0gJ3NyYycsXG5cbiAgLyoqXG4gIFN0eWxlcyBmb2xkZXIuXG4gICAqL1xuICBTdHlsZXMgPSAnc3R5bGVzJyxcblxuICAvKipcbiAgU3R5bGVzIENTUyBmaWxlLlxuICAgKi9cbiAgU3R5bGVzQ3NzID0gJ3N0eWxlcy5jc3MnLFxuXG4gIC8qKlxuICBUZW1wbGF0ZXMgZm9sZGVyLlxuICAgKi9cbiAgVGVtcGxhdGVzID0gJ3RlbXBsYXRlcycsXG5cbiAgLyoqXG4gIFRlc3QgaGVscGVycyBmb2xkZXIuXG4gICAqL1xuICBUZXN0SGVscGVycyA9ICd0ZXN0LWhlbHBlcnMnLFxuXG4gIC8qKlxuICBUeXBlU2NyaXB0IGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIFRzQ29uZmlnSnNvbiA9ICd0c2NvbmZpZy5qc29uJyxcblxuICAvKipcbiAgVHlwZVNjcmlwdCBjb25maWd1cmF0aW9uIGZpbGUgdGhhdCB2YWxpZGF0ZXMgdGhlIGdlbmVyYXRlZCBDb21tb25KUyBkZWNsYXJhdGlvbnMuXG4gICAqL1xuICBUc0NvbmZpZ1ZhbGlkYXRlRGVjbGFyYXRpb25zQ2pzSnNvbiA9ICd0c2NvbmZpZy52YWxpZGF0ZS1kZWNsYXJhdGlvbnMtY2pzLmpzb24nLFxuXG4gIC8qKlxuICBUeXBlU2NyaXB0IGNvbmZpZ3VyYXRpb24gZmlsZSB0aGF0IHZhbGlkYXRlcyB0aGUgZ2VuZXJhdGVkIEVTTSBkZWNsYXJhdGlvbnMuXG4gICAqL1xuICBUc0NvbmZpZ1ZhbGlkYXRlRGVjbGFyYXRpb25zSnNvbiA9ICd0c2NvbmZpZy52YWxpZGF0ZS1kZWNsYXJhdGlvbnMuanNvbicsXG5cbiAgLyoqXG4gIFR5cGVTY3JpcHQgZmlsZSBleHRlbnNpb24uXG4gICAqL1xuICBUc0V4dGVuc2lvbiA9ICcudHMnLFxuXG4gIC8qKlxuICBUeXBlcyBmb2xkZXIuXG4gICAqL1xuICBUeXBlcyA9ICdAdHlwZXMnXG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBV08sSUFBSyw0QkFBTCxrQkFBS0EsK0JBQUw7QUFJTCxFQUFBQSwyQkFBQSxTQUFNO0FBS04sRUFBQUEsMkJBQUEsWUFBUztBQUtULEVBQUFBLDJCQUFBLGFBQVU7QUFLVixFQUFBQSwyQkFBQSxhQUFVO0FBS1YsRUFBQUEsMkJBQUEsWUFBUztBQUtULEVBQUFBLDJCQUFBLFlBQVM7QUFLVCxFQUFBQSwyQkFBQSxhQUFVO0FBS1YsRUFBQUEsMkJBQUEsV0FBUTtBQUtSLEVBQUFBLDJCQUFBLG1CQUFnQjtBQUtoQixFQUFBQSwyQkFBQSxTQUFNO0FBS04sRUFBQUEsMkJBQUEsa0JBQWU7QUFLZixFQUFBQSwyQkFBQSxtQkFBZ0I7QUFLaEIsRUFBQUEsMkJBQUEsbUJBQWdCO0FBS2hCLEVBQUFBLDJCQUFBLG1CQUFnQjtBQUtoQixFQUFBQSwyQkFBQSxVQUFPO0FBS1AsRUFBQUEsMkJBQUEseUJBQXNCO0FBS3RCLEVBQUFBLDJCQUFBLCtCQUE0QjtBQUs1QixFQUFBQSwyQkFBQSxhQUFVO0FBS1YsRUFBQUEsMkJBQUEsK0JBQTRCO0FBSzVCLEVBQUFBLDJCQUFBLCtCQUE0QjtBQUs1QixFQUFBQSwyQkFBQSxtQkFBZ0I7QUFLaEIsRUFBQUEsMkJBQUEsa0JBQWU7QUFLZixFQUFBQSwyQkFBQSxtQkFBZ0I7QUFLaEIsRUFBQUEsMkJBQUEsVUFBTztBQUtQLEVBQUFBLDJCQUFBLGNBQVc7QUFLWCxFQUFBQSwyQkFBQSxnQkFBYTtBQUtiLEVBQUFBLDJCQUFBLGtCQUFlO0FBS2YsRUFBQUEsMkJBQUEscUJBQWtCO0FBS2xCLEVBQUFBLDJCQUFBLFNBQU07QUFLTixFQUFBQSwyQkFBQSw2QkFBMEI7QUFLMUIsRUFBQUEsMkJBQUEsNkJBQTBCO0FBSzFCLEVBQUFBLDJCQUFBLGNBQVc7QUFLWCxFQUFBQSwyQkFBQSxlQUFZO0FBS1osRUFBQUEsMkJBQUEsZUFBWTtBQUtaLEVBQUFBLDJCQUFBLGNBQVc7QUFLWCxFQUFBQSwyQkFBQSxhQUFVO0FBS1YsRUFBQUEsMkJBQUEsc0NBQW1DO0FBS25DLEVBQUFBLDJCQUFBLHNDQUFtQztBQUtuQyxFQUFBQSwyQkFBQSxpQkFBYztBQUtkLEVBQUFBLDJCQUFBLCtCQUE0QjtBQUs1QixFQUFBQSwyQkFBQSxzREFBbUQ7QUFLbkQsRUFBQUEsMkJBQUEsY0FBVztBQUtYLEVBQUFBLDJCQUFBLGtCQUFlO0FBS2YsRUFBQUEsMkJBQUEsaUJBQWM7QUFLZCxFQUFBQSwyQkFBQSxpQkFBYztBQUtkLEVBQUFBLDJCQUFBLGFBQVU7QUFLVixFQUFBQSwyQkFBQSxnQkFBYTtBQUtiLEVBQUFBLDJCQUFBLGFBQVU7QUFLVixFQUFBQSwyQkFBQSxpQkFBYztBQUtkLEVBQUFBLDJCQUFBLFNBQU07QUFLTixFQUFBQSwyQkFBQSxZQUFTO0FBS1QsRUFBQUEsMkJBQUEsZUFBWTtBQUtaLEVBQUFBLDJCQUFBLGVBQVk7QUFLWixFQUFBQSwyQkFBQSxpQkFBYztBQUtkLEVBQUFBLDJCQUFBLGtCQUFlO0FBS2YsRUFBQUEsMkJBQUEseUNBQXNDO0FBS3RDLEVBQUFBLDJCQUFBLHNDQUFtQztBQUtuQyxFQUFBQSwyQkFBQSxpQkFBYztBQUtkLEVBQUFBLDJCQUFBLFdBQVE7QUF0U0UsU0FBQUE7QUFBQSxHQUFBOyIsCiAgIm5hbWVzIjogWyJPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzIl0KfQo=
118
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy9vYnNpZGlhbi1kZXYtdXRpbHMtcmVwby1wYXRocy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFRoaXMgbW9kdWxlIGRlZmluZXMgYW4gZW51bWVyYXRpb24gb2YgY29tbW9uIGZpbGUgcGF0aHMgYW5kIHBhdHRlcm5zIHVzZWQgaW4gdGhlIE9ic2lkaWFuIGRldmVsb3BtZW50IHV0aWxpdGllcyByZXBvc2l0b3J5LlxuICogVGhlc2UgcGF0aHMgYXJlIHVzZWQgdGhyb3VnaG91dCB0aGUgYnVpbGQgcHJvY2VzcyBhbmQgb3RoZXIgdXRpbGl0aWVzLCBlbnN1cmluZyBjb25zaXN0ZW5jeSBhbmQgcmVkdWNpbmcgdGhlIGxpa2VsaWhvb2RcbiAqIG9mIGVycm9ycyBkdWUgdG8gaGFyZGNvZGVkIHN0cmluZ3MuXG4gKi9cblxuLyoqXG4gKiBFbnVtZXJhdGlvbiBvZiBjb21tb24gZmlsZSBwYXRocyBhbmQgcGF0dGVybnMgdXNlZCBpbiB0aGUgT2JzaWRpYW4gZGV2ZWxvcG1lbnQgdXRpbGl0aWVzIHJlcG9zaXRvcnkuXG4gKi9cbmV4cG9ydCBlbnVtIE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMge1xuICAvKipcbiAgQW55IGZpbGUgb3IgZm9sZGVyLlxuICAgKi9cbiAgQW55ID0gJyonLFxuXG4gIC8qKlxuICBDb21tb25KUyBmaWxlLlxuICAgKi9cbiAgQW55Q2pzID0gJyouY2pzJyxcblxuICAvKipcbiAgQ29tbW9uSlMgVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgQW55RGN0cyA9ICcqLmQuY3RzJyxcblxuICAvKipcbiAgRVNNIFR5cGVTY3JpcHQgZGVjbGFyYXRpb24gZmlsZS5cbiAgICovXG4gIEFueURtdHMgPSAnKi5kLm10cycsXG5cbiAgLyoqXG4gIFR5cGVTY3JpcHQgZGVjbGFyYXRpb24gZmlsZS5cbiAgICovXG4gIEFueUR0cyA9ICcqLmQudHMnLFxuXG4gIC8qKlxuICBFU00gSmF2YVNjcmlwdCBmaWxlLlxuICAgKi9cbiAgQW55TWpzID0gJyoubWpzJyxcblxuICAvKipcbiAgQW55IHBhdGggcmVjdXJzaXZlbHkuXG4gICAqL1xuICBBbnlQYXRoID0gJyoqJyxcblxuICAvKipcbiAgQW55IFR5cGVTY3JpcHQgZmlsZS5cbiAgICovXG4gIEFueVRzID0gJyoudHMnLFxuXG4gIC8qKlxuICBBc3RybyBjb25maWd1cmF0aW9uIGZpbGUgKGRvY3VtZW50YXRpb24gc2l0ZSkgYXQgdGhlIHJlcG8gcm9vdC5cbiAgICovXG4gIEFzdHJvQ29uZmlnVHMgPSAnYXN0cm8uY29uZmlnLnRzJyxcblxuICAvKipcbiAgV2luZG93cyBiYXRjaCBmaWxlIGV4dGVuc2lvbi5cbiAgICovXG4gIEJhdEV4dGVuc2lvbiA9ICcuYmF0JyxcblxuICAvKipcbiAgRm9sZGVyIGhvbGRpbmcgdGhlIGV4ZWN1dGFibGUgc2hpbXMgb2YgbG9jYWxseS1pbnN0YWxsZWQgcGFja2FnZXMuXG4gICAqL1xuICBCaW4gPSAnLmJpbicsXG5cbiAgLyoqXG4gIEJ1biBsb2NrZmlsZS5cbiAgICovXG4gIEJ1bkxvY2sgPSAnYnVuLmxvY2snLFxuXG4gIC8qKlxuICBCaW5hcnkgYnVuIGxvY2tmaWxlLCB3cml0dGVuIGJ5IGJ1biBiZWZvcmUgdjEuMi5cbiAgICovXG4gIEJ1bkxvY2tiID0gJ2J1bi5sb2NrYicsXG5cbiAgLyoqXG4gIENvbW1vbkpTIGZvbGRlci5cbiAgICovXG4gIENqcyA9ICdjanMnLFxuXG4gIC8qKlxuICBDb21tb25KUyBmaWxlIGV4dGVuc2lvbi5cbiAgICovXG4gIENqc0V4dGVuc2lvbiA9ICcuY2pzJyxcblxuICAvKipcbiAgV2luZG93cyBjb21tYW5kIHNjcmlwdCBleHRlbnNpb24uXG4gICAqL1xuICBDb21tYW5kRXh0ZW5zaW9uID0gJy5jbWQnLFxuXG4gIC8qKlxuICBDdXJyZW50IGZvbGRlci5cbiAgICovXG4gIEN1cnJlbnRGb2xkZXIgPSAnLicsXG5cbiAgLyoqXG4gIERhdGF2aWV3IHR5cGVzLlxuICAgKi9cbiAgRGF0YXZpZXdUeXBlcyA9ICdzcmMvb2JzaWRpYW4vQHR5cGVzL2RhdGF2aWV3LyoqJyxcblxuICAvKipcbiAgQ29tbW9uSlMgVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlIGV4dGVuc2lvbi5cbiAgICovXG4gIERjdHNFeHRlbnNpb24gPSAnLmQuY3RzJyxcblxuICAvKipcbiAgRGlzdHJpYnV0aW9uIGZvbGRlci5cbiAgICovXG4gIERpc3QgPSAnZGlzdCcsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgYnVpbHQgYGRlbW8tdmF1bHQtaGVscGVyYCBwbHVnaW4gd2l0aGluIHRoZSB7QGxpbmsgRGlzdH0gZm9sZGVyLCBpbmplY3RlZCBpbnRvIGRlbW8gdmF1bHRzIGF0IHJlbGVhc2UgdGltZS5cbiAgICovXG4gIERpc3REZW1vVmF1bHRIZWxwZXIgPSAnZGlzdC9kZW1vLXZhdWx0LWhlbHBlcicsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgYnVpbHQgaW50ZWdyYXRpb24tdGVzdCBoYXJuZXNzIHBsdWdpbiB3aXRoaW4gdGhlIHtAbGluayBEaXN0fSBmb2xkZXIsIHNlZWRlZCBpbnRvIGEgY29uc3VtZXIncyBpbnRlZ3JhdGlvbi10ZXN0IHZhdWx0IHNvIGl0cyBgZXZhbEluT2JzaWRpYW5gIGNsb3N1cmVzIHJlYWNoIHRoZSBsaWJyYXJ5IHZpYSBgbGliYC5cbiAgICovXG4gIERpc3RJbnRlZ3JhdGlvblRlc3RQbHVnaW4gPSAnZGlzdC9pbnRlZ3JhdGlvbi10ZXN0LXBsdWdpbicsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgYGxpYmAgZm9sZGVyIHdpdGhpbiB0aGUge0BsaW5rIERpc3R9IGZvbGRlci5cbiAgICovXG4gIERpc3RMaWIgPSAnZGlzdC9saWInLFxuXG4gIC8qKlxuICBBIHBhdGggdG8gdGhlIGJ1aWx0IHBsdWdpbi1BUEkgaW50ZWdyYXRpb24tdGVzdCBDT05TVU1FUiBwbHVnaW4gd2l0aGluIHRoZSB7QGxpbmsgRGlzdH0gZm9sZGVyLiBUZXN0LW9ubHkgYW5kIG5ldmVyIHNoaXBwZWQ7IGJ1aWx0IHNlcGFyYXRlbHkgZnJvbSBpdHMgcHJvdmlkZXIgc28gdGhlIHR3byBjYXJyeSBkaXN0aW5jdCBgb2JzaWRpYW4tZGV2LXV0aWxzYCBjb3BpZXMuXG4gICAqL1xuICBEaXN0UGx1Z2luQXBpVGVzdENvbnN1bWVyID0gJ2Rpc3QvcGx1Z2luLWFwaS10ZXN0LWNvbnN1bWVyJyxcblxuICAvKipcbiAgQSBwYXRoIHRvIHRoZSBidWlsdCBwbHVnaW4tQVBJIGludGVncmF0aW9uLXRlc3QgUFJPVklERVIgcGx1Z2luIHdpdGhpbiB0aGUge0BsaW5rIERpc3R9IGZvbGRlci4gVGVzdC1vbmx5IGFuZCBuZXZlciBzaGlwcGVkOyBidWlsdCBzZXBhcmF0ZWx5IGZyb20gaXRzIGNvbnN1bWVyIHNvIHRoZSB0d28gY2FycnkgZGlzdGluY3QgYG9ic2lkaWFuLWRldi11dGlsc2AgY29waWVzLlxuICAgKi9cbiAgRGlzdFBsdWdpbkFwaVRlc3RQcm92aWRlciA9ICdkaXN0L3BsdWdpbi1hcGktdGVzdC1wcm92aWRlcicsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgYHRlbXBsYXRlc2AgZm9sZGVyIHdpdGhpbiB0aGUge0BsaW5rIERpc3R9IGZvbGRlciwgaG9sZGluZyB0aGUgY29uc3VtZXItZmFjaW5nIHRlbXBsYXRlcy5cbiAgICovXG4gIERpc3RUZW1wbGF0ZXMgPSAnZGlzdC90ZW1wbGF0ZXMnLFxuXG4gIC8qKlxuICBUcmFuc3BpbGVkIFR5cGVTY3JpcHQgZGVjbGFyYXRpb24gZmlsZSBleHRlbnNpb24uXG4gICAqL1xuICBEanNFeHRlbnNpb24gPSAnLmQuanMnLFxuXG4gIC8qKlxuICBFU00gVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlIGV4dGVuc2lvbi5cbiAgICovXG4gIERtdHNFeHRlbnNpb24gPSAnLmQubXRzJyxcblxuICAvKipcbiAgRG9jdW1lbnRhdGlvbiBzaXRlIGZvbGRlciAoQXN0cm8gKyBTdGFybGlnaHQgQVBJLWRvY3Mgc3ViLXByb2plY3QpLlxuICAgKi9cbiAgRG9jcyA9ICdkb2NzJyxcblxuICAvKipcbiAgQnVpbGQgb3V0cHV0IGZvbGRlciBvZiB0aGUgZG9jdW1lbnRhdGlvbiBzaXRlLlxuICAgKi9cbiAgRG9jc0Rpc3QgPSAnZG9jcy9kaXN0JyxcblxuICAvKipcbiAgRHByaW50IGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIERwcmludEpzb24gPSAnZHByaW50Lmpzb24nLFxuXG4gIC8qKlxuICBUeXBlU2NyaXB0IGRlY2xhcmF0aW9uIGZpbGUgZXh0ZW5zaW9uLlxuICAgKi9cbiAgRHRzRXh0ZW5zaW9uID0gJy5kLnRzJyxcblxuICAvKipcbiAgRVNNIFR5cGVTY3JpcHQgRVNMaW50IGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIEVzbGludENvbmZpZ010cyA9ICdlc2xpbnQuY29uZmlnLm10cycsXG5cbiAgLyoqXG4gIEVTTSBKYXZhU2NyaXB0IGZvbGRlci5cbiAgICovXG4gIEVzbSA9ICdlc20nLFxuXG4gIC8qKlxuICBXaW5kb3dzIGV4ZWN1dGFibGUgZXh0ZW5zaW9uLlxuICAgKi9cbiAgRXhlRXh0ZW5zaW9uID0gJy5leGUnLFxuXG4gIC8qKlxuICBHZW5lcmF0ZWQtZHVyaW5nLWJ1aWxkIENvbW1vbkpTIGZpbGUuXG4gICAqL1xuICBHZW5lcmF0ZWREdXJpbmdCdWlsZENqcyA9ICdnZW5lcmF0ZWQtZHVyaW5nLWJ1aWxkLmNqcycsXG5cbiAgLyoqXG4gIEdlbmVyYXRlZC1kdXJpbmctYnVpbGQgRVNNIEphdmFTY3JpcHQgZmlsZS5cbiAgICovXG4gIEdlbmVyYXRlZER1cmluZ0J1aWxkTWpzID0gJ2dlbmVyYXRlZC1kdXJpbmctYnVpbGQubWpzJyxcblxuICAvKipcbiAgQ29tbW9uSlMgSmF2YVNjcmlwdCBpbmRleCBmaWxlLlxuICAgKi9cbiAgSW5kZXhDanMgPSAnaW5kZXguY2pzJyxcblxuICAvKipcbiAgQ29tbW9uSlMgVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlIGluZGV4IGZpbGUuXG4gICAqL1xuICBJbmRleERjdHMgPSAnaW5kZXguZC5jdHMnLFxuXG4gIC8qKlxuICBFU00gVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlIGluZGV4IGZpbGUuXG4gICAqL1xuICBJbmRleERtdHMgPSAnaW5kZXguZC5tdHMnLFxuXG4gIC8qKlxuICBFU00gSmF2YVNjcmlwdCBpbmRleCBmaWxlLlxuICAgKi9cbiAgSW5kZXhNanMgPSAnaW5kZXgubWpzJyxcblxuICAvKipcbiAgVHlwZVNjcmlwdCBpbmRleCBmaWxlLlxuICAgKi9cbiAgSW5kZXhUcyA9ICdpbmRleC50cycsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgc291cmNlcyBvZiB0aGUgcGx1Z2luLUFQSSBpbnRlZ3JhdGlvbi10ZXN0IENPTlNVTUVSIHBsdWdpbi5cbiAgICovXG4gIEludGVncmF0aW9uVGVzdFBsdWdpbkFwaUNvbnN1bWVyID0gJ2ludGVncmF0aW9uLXRlc3QtcGx1Z2luLWFwaS9jb25zdW1lcicsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgc291cmNlcyBvZiB0aGUgcGx1Z2luLUFQSSBpbnRlZ3JhdGlvbi10ZXN0IFBST1ZJREVSIHBsdWdpbi5cbiAgICovXG4gIEludGVncmF0aW9uVGVzdFBsdWdpbkFwaVByb3ZpZGVyID0gJ2ludGVncmF0aW9uLXRlc3QtcGx1Z2luLWFwaS9wcm92aWRlcicsXG5cbiAgLyoqXG4gIEphdmFTY3JpcHQgZmlsZSBleHRlbnNpb24uXG4gICAqL1xuICBKc0V4dGVuc2lvbiA9ICcuanMnLFxuXG4gIC8qKlxuICBFU00gTWFya2Rvd25saW50IENMSTIgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgTWFya2Rvd25saW50Q2xpMkNvbmZpZ01qcyA9ICcubWFya2Rvd25saW50LWNsaTIubWpzJyxcblxuICAvKipcbiAgTWFya2Rvd25saW50IENMSTIgY29uZmlndXJhdGlvbiBzY2hlbWEgVHlwZVNjcmlwdCBkZWNsYXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgTWFya2Rvd25saW50VHlwZXNNYXJrZG93bmxpbnRDbGkyQ29uZmlnU2NoZW1hRHRzID0gJ3NyYy9zY3JpcHQtdXRpbHMvbGludGVycy9tYXJrZG93bmxpbnQtdHlwZXMvQHR5cGVzL21hcmtkb3dubGludC1jbGkyLWNvbmZpZy1zY2hlbWEuZC50cycsXG5cbiAgLyoqXG4gIEdlbmVyYXRlZCBmbGF0IHJlLWV4cG9ydCBiYXJyZWwgZmlsZS5cbiAgICovXG4gIE1lcmdlZFRzID0gJ19fbWVyZ2VkLnRzJyxcblxuICAvKipcbiAgRVNNIEphdmFTY3JpcHQgZmlsZSBleHRlbnNpb24uXG4gICAqL1xuICBNanNFeHRlbnNpb24gPSAnLm1qcycsXG5cbiAgLyoqXG4gIE5vZGUgbW9kdWxlcyBmb2xkZXIuXG4gICAqL1xuICBOb2RlTW9kdWxlcyA9ICdub2RlX21vZHVsZXMnLFxuXG4gIC8qKlxuICBQYWNrYWdlIEpTT04gZmlsZS5cbiAgICovXG4gIFBhY2thZ2VKc29uID0gJ3BhY2thZ2UuanNvbicsXG5cbiAgLyoqXG4gIE5QTSBsb2NrZmlsZS5cbiAgICovXG4gIFBhY2thZ2VMb2NrSnNvbiA9ICdwYWNrYWdlLWxvY2suanNvbicsXG5cbiAgLyoqXG4gIEZvbGRlciBob2xkaW5nIGhhbmQtd3JpdHRlbiBwYXRjaGVkIGNvcGllcyBvZiB0aGlyZC1wYXJ0eSBwYWNrYWdlcy5cbiAgICovXG4gIFBhdGNoZXMgPSAncGF0Y2hlcycsXG5cbiAgLyoqXG4gIFBucG0gbG9ja2ZpbGUuXG4gICAqL1xuICBQbnBtTG9ja1lhbWwgPSAncG5wbS1sb2NrLnlhbWwnLFxuXG4gIC8qKlxuICBSb290IGZvbGRlci5cbiAgICovXG4gIFJvb3RGb2xkZXIgPSAnLycsXG5cbiAgLyoqXG4gIFNjcmlwdHMgZm9sZGVyLlxuICAgKi9cbiAgU2NyaXB0cyA9ICdzY3JpcHRzJyxcblxuICAvKipcbiAgU2NyaXB0VXRpbHMgZm9sZGVyLlxuICAgKi9cbiAgU2NyaXB0VXRpbHMgPSAnc2NyaXB0LXV0aWxzJyxcblxuICAvKipcbiAgU291cmNlIGZvbGRlci5cbiAgICovXG4gIFNyYyA9ICdzcmMnLFxuXG4gIC8qKlxuICBTdHlsZXMgZm9sZGVyLlxuICAgKi9cbiAgU3R5bGVzID0gJ3N0eWxlcycsXG5cbiAgLyoqXG4gIFN0eWxlcyBDU1MgZmlsZS5cbiAgICovXG4gIFN0eWxlc0NzcyA9ICdzdHlsZXMuY3NzJyxcblxuICAvKipcbiAgVGVtcGxhdGVzIGZvbGRlci5cbiAgICovXG4gIFRlbXBsYXRlcyA9ICd0ZW1wbGF0ZXMnLFxuXG4gIC8qKlxuICBUZXN0IGhlbHBlcnMgZm9sZGVyLlxuICAgKi9cbiAgVGVzdEhlbHBlcnMgPSAndGVzdC1oZWxwZXJzJyxcblxuICAvKipcbiAgVHlwZVNjcmlwdCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBUc0NvbmZpZ0pzb24gPSAndHNjb25maWcuanNvbicsXG5cbiAgLyoqXG4gIFR5cGVTY3JpcHQgY29uZmlndXJhdGlvbiBmaWxlIHRoYXQgdmFsaWRhdGVzIHRoZSBnZW5lcmF0ZWQgQ29tbW9uSlMgZGVjbGFyYXRpb25zLlxuICAgKi9cbiAgVHNDb25maWdWYWxpZGF0ZURlY2xhcmF0aW9uc0Nqc0pzb24gPSAndHNjb25maWcudmFsaWRhdGUtZGVjbGFyYXRpb25zLWNqcy5qc29uJyxcblxuICAvKipcbiAgVHlwZVNjcmlwdCBjb25maWd1cmF0aW9uIGZpbGUgdGhhdCB2YWxpZGF0ZXMgdGhlIGdlbmVyYXRlZCBFU00gZGVjbGFyYXRpb25zLlxuICAgKi9cbiAgVHNDb25maWdWYWxpZGF0ZURlY2xhcmF0aW9uc0pzb24gPSAndHNjb25maWcudmFsaWRhdGUtZGVjbGFyYXRpb25zLmpzb24nLFxuXG4gIC8qKlxuICBUeXBlU2NyaXB0IGZpbGUgZXh0ZW5zaW9uLlxuICAgKi9cbiAgVHNFeHRlbnNpb24gPSAnLnRzJyxcblxuICAvKipcbiAgVHlwZXMgZm9sZGVyLlxuICAgKi9cbiAgVHlwZXMgPSAnQHR5cGVzJyxcblxuICAvKipcbiAgWWFybiBsb2NrZmlsZS5cbiAgICovXG4gIFlhcm5Mb2NrID0gJ3lhcm4ubG9jaydcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFXTyxJQUFLLDRCQUFMLGtCQUFLQSwrQkFBTDtBQUlMLEVBQUFBLDJCQUFBLFNBQU07QUFLTixFQUFBQSwyQkFBQSxZQUFTO0FBS1QsRUFBQUEsMkJBQUEsYUFBVTtBQUtWLEVBQUFBLDJCQUFBLGFBQVU7QUFLVixFQUFBQSwyQkFBQSxZQUFTO0FBS1QsRUFBQUEsMkJBQUEsWUFBUztBQUtULEVBQUFBLDJCQUFBLGFBQVU7QUFLVixFQUFBQSwyQkFBQSxXQUFRO0FBS1IsRUFBQUEsMkJBQUEsbUJBQWdCO0FBS2hCLEVBQUFBLDJCQUFBLGtCQUFlO0FBS2YsRUFBQUEsMkJBQUEsU0FBTTtBQUtOLEVBQUFBLDJCQUFBLGFBQVU7QUFLVixFQUFBQSwyQkFBQSxjQUFXO0FBS1gsRUFBQUEsMkJBQUEsU0FBTTtBQUtOLEVBQUFBLDJCQUFBLGtCQUFlO0FBS2YsRUFBQUEsMkJBQUEsc0JBQW1CO0FBS25CLEVBQUFBLDJCQUFBLG1CQUFnQjtBQUtoQixFQUFBQSwyQkFBQSxtQkFBZ0I7QUFLaEIsRUFBQUEsMkJBQUEsbUJBQWdCO0FBS2hCLEVBQUFBLDJCQUFBLFVBQU87QUFLUCxFQUFBQSwyQkFBQSx5QkFBc0I7QUFLdEIsRUFBQUEsMkJBQUEsK0JBQTRCO0FBSzVCLEVBQUFBLDJCQUFBLGFBQVU7QUFLVixFQUFBQSwyQkFBQSwrQkFBNEI7QUFLNUIsRUFBQUEsMkJBQUEsK0JBQTRCO0FBSzVCLEVBQUFBLDJCQUFBLG1CQUFnQjtBQUtoQixFQUFBQSwyQkFBQSxrQkFBZTtBQUtmLEVBQUFBLDJCQUFBLG1CQUFnQjtBQUtoQixFQUFBQSwyQkFBQSxVQUFPO0FBS1AsRUFBQUEsMkJBQUEsY0FBVztBQUtYLEVBQUFBLDJCQUFBLGdCQUFhO0FBS2IsRUFBQUEsMkJBQUEsa0JBQWU7QUFLZixFQUFBQSwyQkFBQSxxQkFBa0I7QUFLbEIsRUFBQUEsMkJBQUEsU0FBTTtBQUtOLEVBQUFBLDJCQUFBLGtCQUFlO0FBS2YsRUFBQUEsMkJBQUEsNkJBQTBCO0FBSzFCLEVBQUFBLDJCQUFBLDZCQUEwQjtBQUsxQixFQUFBQSwyQkFBQSxjQUFXO0FBS1gsRUFBQUEsMkJBQUEsZUFBWTtBQUtaLEVBQUFBLDJCQUFBLGVBQVk7QUFLWixFQUFBQSwyQkFBQSxjQUFXO0FBS1gsRUFBQUEsMkJBQUEsYUFBVTtBQUtWLEVBQUFBLDJCQUFBLHNDQUFtQztBQUtuQyxFQUFBQSwyQkFBQSxzQ0FBbUM7QUFLbkMsRUFBQUEsMkJBQUEsaUJBQWM7QUFLZCxFQUFBQSwyQkFBQSwrQkFBNEI7QUFLNUIsRUFBQUEsMkJBQUEsc0RBQW1EO0FBS25ELEVBQUFBLDJCQUFBLGNBQVc7QUFLWCxFQUFBQSwyQkFBQSxrQkFBZTtBQUtmLEVBQUFBLDJCQUFBLGlCQUFjO0FBS2QsRUFBQUEsMkJBQUEsaUJBQWM7QUFLZCxFQUFBQSwyQkFBQSxxQkFBa0I7QUFLbEIsRUFBQUEsMkJBQUEsYUFBVTtBQUtWLEVBQUFBLDJCQUFBLGtCQUFlO0FBS2YsRUFBQUEsMkJBQUEsZ0JBQWE7QUFLYixFQUFBQSwyQkFBQSxhQUFVO0FBS1YsRUFBQUEsMkJBQUEsaUJBQWM7QUFLZCxFQUFBQSwyQkFBQSxTQUFNO0FBS04sRUFBQUEsMkJBQUEsWUFBUztBQUtULEVBQUFBLDJCQUFBLGVBQVk7QUFLWixFQUFBQSwyQkFBQSxlQUFZO0FBS1osRUFBQUEsMkJBQUEsaUJBQWM7QUFLZCxFQUFBQSwyQkFBQSxrQkFBZTtBQUtmLEVBQUFBLDJCQUFBLHlDQUFzQztBQUt0QyxFQUFBQSwyQkFBQSxzQ0FBbUM7QUFLbkMsRUFBQUEsMkJBQUEsaUJBQWM7QUFLZCxFQUFBQSwyQkFBQSxXQUFRO0FBS1IsRUFBQUEsMkJBQUEsY0FBVztBQW5WRCxTQUFBQTtBQUFBLEdBQUE7IiwKICAibmFtZXMiOiBbIk9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMiXQp9Cg==
@@ -0,0 +1,93 @@
1
+ /// <reference path="../library.d.mts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * Resolves locally-installed tool binaries and package-script runners without assuming `npm`.
6
+ *
7
+ * Delegating to `npx` silently assumes an npm-installed tree. On Windows that assumption is fatal under
8
+ * `bun`: `bun install` writes `node_modules/.bin/<tool>.exe`, not the `<tool>.cmd` that npm's `npx` looks
9
+ * for, so `npx` misses the local install entirely and downloads the tool from the registry instead — which
10
+ * for `tsc` is the well-known decoy package, not TypeScript. Resolving the shim from `node_modules/.bin`
11
+ * ourselves sidesteps the whole shim-format question, because every package manager writes one there.
12
+ */
13
+ /**
14
+ * A package manager that can own a project's dependency tree.
15
+ */
16
+ export declare enum PackageManager {
17
+ /**
18
+ * The `bun` package manager.
19
+ */
20
+ Bun = "bun",
21
+ /**
22
+ * The `npm` package manager.
23
+ */
24
+ Npm = "npm",
25
+ /**
26
+ * The `pnpm` package manager.
27
+ */
28
+ Pnpm = "pnpm",
29
+ /**
30
+ * The `yarn` package manager.
31
+ */
32
+ Yarn = "yarn"
33
+ }
34
+ /**
35
+ * Parameters for {@link resolveToolCommand}.
36
+ */
37
+ export interface ResolveToolCommandParams {
38
+ /**
39
+ * The current working folder to resolve from.
40
+ */
41
+ readonly cwd?: string;
42
+ /**
43
+ * The name of the locally-installed tool, as it appears in `node_modules/.bin`.
44
+ */
45
+ readonly tool: string;
46
+ }
47
+ /**
48
+ * Determines which package manager owns the project's dependency tree.
49
+ *
50
+ * Every signal is collected before any of them is believed, because a repo carrying two lockfiles used to
51
+ * resolve to whichever sat earlier in a fixed list — silently reassigning every package script and every
52
+ * tool invocation to a manager that never installed the tree.
53
+ *
54
+ * The order is:
55
+ *
56
+ * 1. The `packageManager` field of `package.json`. It is a deliberate declaration by the repo's author
57
+ * rather than an artifact left behind by whatever ran last, so it outranks every lockfile — and it is
58
+ * the only signal that helps at all before the first install, when no lockfile exists yet.
59
+ * 2. The sole lockfile, when exactly one manager claims the tree.
60
+ * 3. Among several lockfiles, the manager that launched us (`npm_config_user_agent`), when it owns one of
61
+ * them — a live signal beats a file that may have been abandoned mid-migration. Otherwise the
62
+ * documented fallback order in {@link LOCKFILES} decides. Note this is deliberately NOT "the most
63
+ * recently modified lockfile": a stray lockfile is typically the newest file, so mtime picks precisely
64
+ * the wrong one.
65
+ * 4. `npm_config_user_agent` on its own, when there is no lockfile.
66
+ * 5. {@link PackageManager.Npm}.
67
+ *
68
+ * Whenever more than one manager claims the tree, the disagreement is reported once per project through
69
+ * {@link warnAboutSeveralClaimants} — the resolution stays deterministic, but it stops being silent.
70
+ *
71
+ * @param cwd - The current working folder to resolve from.
72
+ * @returns The detected package manager, or {@link PackageManager.Npm} when nothing indicates otherwise.
73
+ */
74
+ export declare function getPackageManager(cwd?: string): PackageManager;
75
+ /**
76
+ * Builds the command parts that run a package script through the manager that owns the tree.
77
+ *
78
+ * @param cwd - The current working folder to resolve from.
79
+ * @returns The command parts, e.g. `['bun', 'run']`. The script name is appended by the caller.
80
+ */
81
+ export declare function getPackageManagerRunCommand(cwd?: string): string[];
82
+ /**
83
+ * Builds the command parts that run a locally-installed tool, with the tool itself already included.
84
+ *
85
+ * Prefers the shim in the nearest `node_modules/.bin`, walking up through ancestor folders so a hoisted
86
+ * workspace install is still found. Falls back to the owning manager's exec form when no shim resolves —
87
+ * which is both the previous behavior and the only thing that works under yarn's Plug'n'Play, where
88
+ * `node_modules/.bin` does not exist at all.
89
+ *
90
+ * @param params - The parameters for the resolution.
91
+ * @returns The command parts, e.g. `['/project/node_modules/.bin/tsc']` or `['bun', 'x', 'tsc']`.
92
+ */
93
+ export declare function resolveToolCommand(params: ResolveToolCommandParams): string[];