obsidian-dev-utils 18.4.0 → 19.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 (644) hide show
  1. package/@types/debug/package.json +4 -0
  2. package/Async/package.json +6 -0
  3. package/Blob/package.json +6 -0
  4. package/CHANGELOG.md +12 -0
  5. package/CssClass/package.json +6 -0
  6. package/Debug/package.json +6 -0
  7. package/DebugController/package.json +6 -0
  8. package/Enum/package.json +6 -0
  9. package/Error/package.json +6 -0
  10. package/Function/package.json +6 -0
  11. package/HTMLElement/package.json +6 -0
  12. package/Library/package.json +6 -0
  13. package/Object/package.json +6 -0
  14. package/Path/package.json +6 -0
  15. package/RegExp/package.json +6 -0
  16. package/ScriptUtils/CliUtils/package.json +6 -0
  17. package/ScriptUtils/CodeGenerator/package.json +6 -0
  18. package/ScriptUtils/ESLint/@types/@guardian__eslint-plugin-tsdoc-required/package.json +4 -0
  19. package/ScriptUtils/ESLint/@types/eslint-plugin-modules-newlines/package.json +4 -0
  20. package/ScriptUtils/ESLint/@types/eslint-plugin-verify-tsdoc/package.json +4 -0
  21. package/ScriptUtils/ESLint/ESLint/package.json +6 -0
  22. package/ScriptUtils/ESLint/eslint.config/package.json +6 -0
  23. package/ScriptUtils/ESLint/index/package.json +6 -0
  24. package/ScriptUtils/ESLint/package.json +6 -0
  25. package/ScriptUtils/Exec/package.json +6 -0
  26. package/ScriptUtils/Fs/package.json +6 -0
  27. package/ScriptUtils/JSON/package.json +6 -0
  28. package/ScriptUtils/NodeModules/package.json +6 -0
  29. package/ScriptUtils/Npm/package.json +6 -0
  30. package/ScriptUtils/NpmPublish/package.json +6 -0
  31. package/ScriptUtils/ObsidianDevUtilsRepoPaths/package.json +6 -0
  32. package/ScriptUtils/Root/package.json +6 -0
  33. package/ScriptUtils/build/package.json +6 -0
  34. package/ScriptUtils/cli/package.json +6 -0
  35. package/ScriptUtils/esbuild/Dependency/package.json +6 -0
  36. package/ScriptUtils/esbuild/ObsidianPluginBuilder/package.json +6 -0
  37. package/ScriptUtils/esbuild/changeExtensionPlugin/package.json +6 -0
  38. package/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin/package.json +6 -0
  39. package/ScriptUtils/esbuild/fixEsmPlugin/package.json +6 -0
  40. package/ScriptUtils/esbuild/fixSourceMapsPlugin/package.json +6 -0
  41. package/ScriptUtils/esbuild/index/package.json +6 -0
  42. package/ScriptUtils/esbuild/package.json +6 -0
  43. package/ScriptUtils/esbuild/preprocessPlugin/package.json +6 -0
  44. package/ScriptUtils/esbuild/renameCssPlugin/package.json +6 -0
  45. package/ScriptUtils/esbuild/svelteWrapperPlugin/package.json +6 -0
  46. package/ScriptUtils/format/package.json +6 -0
  47. package/ScriptUtils/index/package.json +6 -0
  48. package/ScriptUtils/package.json +6 -0
  49. package/ScriptUtils/spellcheck/package.json +6 -0
  50. package/ScriptUtils/version/package.json +6 -0
  51. package/String/package.json +6 -0
  52. package/Transformers/DateTransformer/package.json +6 -0
  53. package/Transformers/DurationTransformer/package.json +6 -0
  54. package/Transformers/GroupTransformer/package.json +6 -0
  55. package/Transformers/SkipPrivatePropertyTransformer/package.json +6 -0
  56. package/Transformers/Transformer/package.json +6 -0
  57. package/Transformers/TypedTransformer/package.json +6 -0
  58. package/Transformers/index/package.json +6 -0
  59. package/Transformers/package.json +6 -0
  60. package/ValueProvider/package.json +6 -0
  61. package/codemirror/StateFieldSpec/package.json +6 -0
  62. package/codemirror/index/package.json +6 -0
  63. package/codemirror/package.json +6 -0
  64. package/dist/bin/cli.cjs +1 -1
  65. package/dist/lib/@types/debug.d.mts +16 -0
  66. package/dist/lib/Async.d.mts +153 -0
  67. package/dist/lib/Blob.d.mts +40 -0
  68. package/dist/lib/CssClass.d.mts +97 -0
  69. package/dist/lib/{Debug.d.ts → Debug.d.cts} +1 -1
  70. package/dist/lib/Debug.d.mts +41 -0
  71. package/dist/lib/DebugController.d.mts +85 -0
  72. package/dist/lib/Enum.d.mts +20 -0
  73. package/dist/lib/Error.d.mts +45 -0
  74. package/dist/lib/Function.d.mts +28 -0
  75. package/dist/lib/HTMLElement.d.mts +49 -0
  76. package/dist/lib/Library.cjs +1 -1
  77. package/dist/lib/Library.d.mts +16 -0
  78. package/dist/lib/Library.mjs +1 -1
  79. package/dist/lib/Object.d.mts +211 -0
  80. package/dist/lib/Path.d.mts +133 -0
  81. package/dist/lib/RegExp.d.mts +18 -0
  82. package/dist/lib/ScriptUtils/CliUtils.cjs +161 -0
  83. package/dist/lib/{scripts/CliUtils.d.ts → ScriptUtils/CliUtils.d.cts} +1 -1
  84. package/dist/lib/ScriptUtils/CliUtils.d.mts +70 -0
  85. package/dist/lib/ScriptUtils/CliUtils.mjs +135 -0
  86. package/dist/lib/{scripts → ScriptUtils}/CodeGenerator.cjs +1 -1
  87. package/dist/lib/ScriptUtils/CodeGenerator.d.mts +12 -0
  88. package/dist/lib/ScriptUtils/CodeGenerator.mjs +19 -0
  89. package/dist/lib/ScriptUtils/ESLint/@types/@guardian__eslint-plugin-tsdoc-required.d.mts +13 -0
  90. package/dist/lib/ScriptUtils/ESLint/@types/eslint-plugin-modules-newlines.d.mts +13 -0
  91. package/dist/lib/ScriptUtils/ESLint/@types/eslint-plugin-verify-tsdoc.d.mts +13 -0
  92. package/dist/lib/{scripts → ScriptUtils}/ESLint/ESLint.cjs +1 -1
  93. package/dist/lib/ScriptUtils/ESLint/ESLint.d.mts +13 -0
  94. package/dist/lib/ScriptUtils/ESLint/ESLint.mjs +28 -0
  95. package/dist/lib/ScriptUtils/ESLint/eslint.config.cjs +328 -0
  96. package/dist/lib/ScriptUtils/ESLint/eslint.config.d.mts +16 -0
  97. package/dist/lib/ScriptUtils/ESLint/eslint.config.mjs +294 -0
  98. package/dist/lib/ScriptUtils/ESLint/index.cjs +49 -0
  99. package/dist/lib/ScriptUtils/ESLint/index.d.cts +2 -0
  100. package/dist/lib/ScriptUtils/ESLint/index.d.mts +2 -0
  101. package/dist/lib/ScriptUtils/ESLint/index.mjs +14 -0
  102. package/dist/lib/ScriptUtils/Exec.cjs +119 -0
  103. package/dist/lib/ScriptUtils/Exec.d.mts +83 -0
  104. package/dist/lib/ScriptUtils/Exec.mjs +98 -0
  105. package/dist/lib/ScriptUtils/Fs.cjs +85 -0
  106. package/dist/lib/{scripts/Fs.d.ts → ScriptUtils/Fs.d.cts} +1 -1
  107. package/dist/lib/ScriptUtils/Fs.d.mts +72 -0
  108. package/dist/lib/ScriptUtils/Fs.mjs +64 -0
  109. package/dist/lib/ScriptUtils/JSON.cjs +83 -0
  110. package/dist/lib/{scripts/JSON.d.ts → ScriptUtils/JSON.d.cts} +1 -1
  111. package/dist/lib/ScriptUtils/JSON.d.mts +64 -0
  112. package/dist/lib/ScriptUtils/JSON.mjs +60 -0
  113. package/dist/lib/{scripts → ScriptUtils}/NodeModules.cjs +1 -1
  114. package/dist/lib/ScriptUtils/NodeModules.d.mts +14 -0
  115. package/dist/lib/ScriptUtils/NodeModules.mjs +62 -0
  116. package/dist/lib/ScriptUtils/Npm.cjs +138 -0
  117. package/dist/lib/{scripts/Npm.d.ts → ScriptUtils/Npm.d.cts} +1 -1
  118. package/dist/lib/ScriptUtils/Npm.d.mts +151 -0
  119. package/dist/lib/ScriptUtils/Npm.mjs +106 -0
  120. package/dist/lib/{scripts → ScriptUtils}/NpmPublish.cjs +1 -1
  121. package/dist/lib/ScriptUtils/NpmPublish.d.mts +9 -0
  122. package/dist/lib/ScriptUtils/NpmPublish.mjs +21 -0
  123. package/dist/lib/ScriptUtils/ObsidianDevUtilsRepoPaths.cjs +77 -0
  124. package/dist/lib/{scripts/ObsidianDevUtilsRepoPaths.d.ts → ScriptUtils/ObsidianDevUtilsRepoPaths.d.cts} +10 -0
  125. package/dist/lib/ScriptUtils/ObsidianDevUtilsRepoPaths.d.mts +88 -0
  126. package/dist/lib/ScriptUtils/ObsidianDevUtilsRepoPaths.mjs +53 -0
  127. package/dist/lib/ScriptUtils/Root.cjs +88 -0
  128. package/dist/lib/{scripts/Root.d.ts → ScriptUtils/Root.d.cts} +1 -1
  129. package/dist/lib/ScriptUtils/Root.d.mts +67 -0
  130. package/dist/lib/ScriptUtils/Root.mjs +66 -0
  131. package/dist/lib/ScriptUtils/build.cjs +82 -0
  132. package/dist/lib/ScriptUtils/build.d.mts +41 -0
  133. package/dist/lib/ScriptUtils/build.mjs +60 -0
  134. package/dist/lib/ScriptUtils/cli.cjs +88 -0
  135. package/dist/lib/ScriptUtils/cli.d.mts +14 -0
  136. package/dist/lib/ScriptUtils/cli.mjs +65 -0
  137. package/dist/lib/ScriptUtils/esbuild/Dependency.cjs +122 -0
  138. package/dist/lib/ScriptUtils/esbuild/Dependency.d.mts +18 -0
  139. package/dist/lib/ScriptUtils/esbuild/Dependency.mjs +95 -0
  140. package/dist/lib/ScriptUtils/esbuild/ObsidianPluginBuilder.cjs +178 -0
  141. package/dist/lib/{scripts/esbuild/ObsidianPluginBuilder.d.ts → ScriptUtils/esbuild/ObsidianPluginBuilder.d.cts} +1 -1
  142. package/dist/lib/ScriptUtils/esbuild/ObsidianPluginBuilder.d.mts +53 -0
  143. package/dist/lib/ScriptUtils/esbuild/ObsidianPluginBuilder.mjs +149 -0
  144. package/dist/lib/ScriptUtils/esbuild/changeExtensionPlugin.cjs +68 -0
  145. package/dist/lib/ScriptUtils/esbuild/changeExtensionPlugin.d.mts +12 -0
  146. package/dist/lib/ScriptUtils/esbuild/changeExtensionPlugin.mjs +44 -0
  147. package/dist/lib/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.cjs +66 -0
  148. package/dist/lib/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.d.mts +18 -0
  149. package/dist/lib/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.mjs +50 -0
  150. package/dist/lib/{scripts → ScriptUtils}/esbuild/fixEsmPlugin.cjs +1 -1
  151. package/dist/lib/ScriptUtils/esbuild/fixEsmPlugin.d.mts +11 -0
  152. package/dist/lib/ScriptUtils/esbuild/fixEsmPlugin.mjs +25 -0
  153. package/dist/lib/ScriptUtils/esbuild/fixSourceMapsPlugin.cjs +75 -0
  154. package/dist/lib/ScriptUtils/esbuild/fixSourceMapsPlugin.d.mts +17 -0
  155. package/dist/lib/ScriptUtils/esbuild/fixSourceMapsPlugin.mjs +55 -0
  156. package/dist/lib/ScriptUtils/esbuild/index.cjs +70 -0
  157. package/dist/lib/ScriptUtils/esbuild/index.d.cts +9 -0
  158. package/dist/lib/ScriptUtils/esbuild/index.d.mts +9 -0
  159. package/dist/lib/ScriptUtils/esbuild/index.mjs +28 -0
  160. package/dist/lib/ScriptUtils/esbuild/preprocessPlugin.cjs +146 -0
  161. package/dist/lib/ScriptUtils/esbuild/preprocessPlugin.d.mts +23 -0
  162. package/dist/lib/ScriptUtils/esbuild/preprocessPlugin.mjs +128 -0
  163. package/dist/lib/{scripts → ScriptUtils}/esbuild/renameCssPlugin.cjs +1 -1
  164. package/dist/lib/ScriptUtils/esbuild/renameCssPlugin.d.mts +8 -0
  165. package/dist/lib/ScriptUtils/esbuild/renameCssPlugin.mjs +31 -0
  166. package/dist/lib/{scripts → ScriptUtils}/esbuild/svelteWrapperPlugin.cjs +1 -1
  167. package/dist/lib/ScriptUtils/esbuild/svelteWrapperPlugin.d.mts +8 -0
  168. package/dist/lib/ScriptUtils/esbuild/svelteWrapperPlugin.mjs +41 -0
  169. package/dist/lib/{scripts → ScriptUtils}/format.cjs +1 -1
  170. package/dist/lib/ScriptUtils/format.d.mts +10 -0
  171. package/dist/lib/ScriptUtils/format.mjs +41 -0
  172. package/dist/lib/ScriptUtils/index.cjs +94 -0
  173. package/dist/lib/ScriptUtils/index.d.cts +17 -0
  174. package/dist/lib/ScriptUtils/index.d.mts +17 -0
  175. package/dist/lib/ScriptUtils/index.mjs +44 -0
  176. package/dist/lib/{scripts → ScriptUtils}/spellcheck.cjs +1 -1
  177. package/dist/lib/ScriptUtils/spellcheck.d.mts +14 -0
  178. package/dist/lib/ScriptUtils/spellcheck.mjs +15 -0
  179. package/dist/lib/ScriptUtils/version.cjs +389 -0
  180. package/dist/lib/ScriptUtils/version.d.mts +171 -0
  181. package/dist/lib/ScriptUtils/version.mjs +365 -0
  182. package/dist/lib/{String.d.ts → String.d.cts} +1 -1
  183. package/dist/lib/String.d.mts +138 -0
  184. package/dist/lib/Transformers/{DateTransformer.d.ts → DateTransformer.d.cts} +1 -1
  185. package/dist/lib/Transformers/DateTransformer.d.mts +35 -0
  186. package/dist/lib/Transformers/{DurationTransformer.d.ts → DurationTransformer.d.cts} +1 -1
  187. package/dist/lib/Transformers/DurationTransformer.d.mts +34 -0
  188. package/dist/lib/Transformers/{GroupTransformer.d.ts → GroupTransformer.d.cts} +1 -1
  189. package/dist/lib/Transformers/GroupTransformer.d.mts +65 -0
  190. package/dist/lib/Transformers/{SkipPrivatePropertyTransformer.d.ts → SkipPrivatePropertyTransformer.d.cts} +1 -1
  191. package/dist/lib/Transformers/SkipPrivatePropertyTransformer.d.mts +32 -0
  192. package/dist/lib/Transformers/Transformer.d.mts +67 -0
  193. package/dist/lib/Transformers/{TypedTransformer.d.ts → TypedTransformer.d.cts} +1 -1
  194. package/dist/lib/Transformers/TypedTransformer.d.mts +37 -0
  195. package/dist/lib/Transformers/index.cjs +61 -0
  196. package/dist/lib/Transformers/index.d.cts +6 -0
  197. package/dist/lib/Transformers/index.d.mts +6 -0
  198. package/dist/lib/Transformers/index.mjs +22 -0
  199. package/dist/lib/{ValueProvider.d.ts → ValueProvider.d.cts} +1 -1
  200. package/dist/lib/ValueProvider.d.mts +22 -0
  201. package/dist/lib/codemirror/StateFieldSpec.d.mts +68 -0
  202. package/dist/lib/codemirror/index.cjs +46 -0
  203. package/dist/lib/codemirror/index.d.cts +1 -0
  204. package/dist/lib/codemirror/index.d.mts +1 -0
  205. package/dist/lib/codemirror/index.mjs +12 -0
  206. package/dist/lib/index.cjs +13 -1
  207. package/dist/lib/index.d.cts +20 -0
  208. package/dist/lib/index.d.mts +20 -0
  209. package/dist/lib/index.mjs +9 -1
  210. package/dist/lib/obsidian/@types/Dataview/api/{data-array.d.ts → data-array.d.cts} +1 -1
  211. package/dist/lib/obsidian/@types/Dataview/api/data-array.d.mts +136 -0
  212. package/dist/lib/obsidian/@types/Dataview/api/{extensions.d.ts → extensions.d.cts} +1 -1
  213. package/dist/lib/obsidian/@types/Dataview/api/extensions.d.mts +15 -0
  214. package/dist/lib/obsidian/@types/Dataview/api/{inline-api.d.ts → inline-api.d.cts} +9 -9
  215. package/dist/lib/obsidian/@types/Dataview/api/inline-api.d.mts +186 -0
  216. package/dist/lib/obsidian/@types/Dataview/api/{plugin-api.d.ts → plugin-api.d.cts} +10 -10
  217. package/dist/lib/obsidian/@types/Dataview/api/plugin-api.d.mts +209 -0
  218. package/dist/lib/obsidian/@types/Dataview/api/result.d.mts +38 -0
  219. package/dist/lib/obsidian/@types/Dataview/data-import/common.d.mts +3 -0
  220. package/dist/lib/obsidian/@types/Dataview/data-import/{csv.d.ts → csv.d.cts} +1 -1
  221. package/dist/lib/obsidian/@types/Dataview/data-import/csv.d.mts +3 -0
  222. package/dist/lib/obsidian/@types/Dataview/data-import/{inline-field.d.ts → inline-field.d.cts} +1 -1
  223. package/dist/lib/obsidian/@types/Dataview/data-import/inline-field.d.mts +42 -0
  224. package/dist/lib/obsidian/@types/Dataview/data-import/{markdown-file.d.ts → markdown-file.d.cts} +3 -3
  225. package/dist/lib/obsidian/@types/Dataview/data-import/markdown-file.d.mts +52 -0
  226. package/dist/lib/obsidian/@types/Dataview/data-import/{persister.d.ts → persister.d.cts} +1 -1
  227. package/dist/lib/obsidian/@types/Dataview/data-import/persister.d.mts +32 -0
  228. package/dist/lib/obsidian/@types/Dataview/data-import/web-worker/import-entry.d.mts +1 -0
  229. package/dist/lib/obsidian/@types/Dataview/data-import/web-worker/{import-impl.d.ts → import-impl.d.cts} +1 -1
  230. package/dist/lib/obsidian/@types/Dataview/data-import/web-worker/import-impl.d.mts +6 -0
  231. package/dist/lib/obsidian/@types/Dataview/data-import/web-worker/import-manager.d.mts +37 -0
  232. package/dist/lib/obsidian/@types/Dataview/data-index/{index.d.ts → index.d.cts} +5 -5
  233. package/dist/lib/obsidian/@types/Dataview/data-index/index.d.mts +186 -0
  234. package/dist/lib/obsidian/@types/Dataview/data-index/{resolver.d.ts → resolver.d.cts} +4 -4
  235. package/dist/lib/obsidian/@types/Dataview/data-index/resolver.d.mts +23 -0
  236. package/dist/lib/obsidian/@types/Dataview/data-index/source.d.mts +71 -0
  237. package/dist/lib/obsidian/@types/Dataview/data-model/{markdown.d.ts → markdown.d.cts} +4 -4
  238. package/dist/lib/obsidian/@types/Dataview/data-model/markdown.d.mts +115 -0
  239. package/dist/lib/obsidian/@types/Dataview/data-model/serialized/{markdown.d.ts → markdown.d.cts} +1 -1
  240. package/dist/lib/obsidian/@types/Dataview/data-model/serialized/markdown.d.mts +106 -0
  241. package/dist/lib/obsidian/@types/Dataview/data-model/transferable.d.mts +7 -0
  242. package/dist/lib/obsidian/@types/Dataview/data-model/{value.d.ts → value.d.cts} +1 -1
  243. package/dist/lib/obsidian/@types/Dataview/data-model/value.d.mts +175 -0
  244. package/dist/lib/obsidian/@types/Dataview/expression/{binaryop.d.ts → binaryop.d.cts} +4 -4
  245. package/dist/lib/obsidian/@types/Dataview/expression/binaryop.d.mts +43 -0
  246. package/dist/lib/obsidian/@types/Dataview/expression/{context.d.ts → context.d.cts} +6 -6
  247. package/dist/lib/obsidian/@types/Dataview/expression/context.d.mts +49 -0
  248. package/dist/lib/obsidian/@types/Dataview/expression/{field.d.ts → field.d.cts} +1 -1
  249. package/dist/lib/obsidian/@types/Dataview/expression/field.d.mts +82 -0
  250. package/dist/lib/obsidian/@types/Dataview/expression/{functions.d.ts → functions.d.cts} +3 -3
  251. package/dist/lib/obsidian/@types/Dataview/expression/functions.d.mts +149 -0
  252. package/dist/lib/obsidian/@types/Dataview/expression/{parse.d.ts → parse.d.cts} +4 -4
  253. package/dist/lib/obsidian/@types/Dataview/expression/parse.d.mts +163 -0
  254. package/dist/lib/obsidian/@types/Dataview/{index.d.ts → index.d.cts} +11 -11
  255. package/dist/lib/obsidian/@types/Dataview/index.d.mts +55 -0
  256. package/dist/lib/obsidian/@types/Dataview/{main.d.ts → main.d.cts} +4 -4
  257. package/dist/lib/obsidian/@types/Dataview/main.d.mts +52 -0
  258. package/dist/lib/obsidian/@types/Dataview/query/{engine.d.ts → engine.d.cts} +9 -9
  259. package/dist/lib/obsidian/@types/Dataview/query/engine.d.mts +103 -0
  260. package/dist/lib/obsidian/@types/Dataview/query/{parse.d.ts → parse.d.cts} +3 -3
  261. package/dist/lib/obsidian/@types/Dataview/query/parse.d.mts +44 -0
  262. package/dist/lib/obsidian/@types/Dataview/query/{query.d.ts → query.d.cts} +2 -2
  263. package/dist/lib/obsidian/@types/Dataview/query/query.d.mts +95 -0
  264. package/dist/lib/obsidian/@types/Dataview/settings.d.mts +60 -0
  265. package/dist/lib/obsidian/@types/Dataview/typings/{obsidian-ex.d.ts → obsidian-ex.d.cts} +1 -1
  266. package/dist/lib/obsidian/@types/Dataview/typings/obsidian-ex.d.mts +28 -0
  267. package/dist/lib/obsidian/@types/Dataview/typings/workers.d.mts +4 -0
  268. package/dist/lib/obsidian/@types/Dataview/ui/export/{markdown.d.ts → markdown.d.cts} +3 -3
  269. package/dist/lib/obsidian/@types/Dataview/ui/export/markdown.d.mts +15 -0
  270. package/dist/lib/obsidian/@types/Dataview/ui/{lp-render.d.ts → lp-render.d.cts} +3 -3
  271. package/dist/lib/obsidian/@types/Dataview/ui/lp-render.d.mts +37 -0
  272. package/dist/lib/obsidian/@types/Dataview/ui/{markdown.d.ts → markdown.d.cts} +3 -3
  273. package/dist/lib/obsidian/@types/Dataview/ui/markdown.d.mts +86 -0
  274. package/dist/lib/obsidian/@types/Dataview/ui/{refreshable-view.d.ts → refreshable-view.d.cts} +2 -2
  275. package/dist/lib/obsidian/@types/Dataview/ui/refreshable-view.d.mts +18 -0
  276. package/dist/lib/obsidian/@types/Dataview/ui/{render.d.ts → render.d.cts} +2 -2
  277. package/dist/lib/obsidian/@types/Dataview/ui/render.d.mts +33 -0
  278. package/dist/lib/obsidian/@types/Dataview/ui/views/{calendar-view.d.ts → calendar-view.d.cts} +4 -4
  279. package/dist/lib/obsidian/@types/Dataview/ui/views/calendar-view.d.mts +17 -0
  280. package/dist/lib/obsidian/@types/Dataview/ui/views/{inline-field-live-preview.d.ts → inline-field-live-preview.d.cts} +2 -2
  281. package/dist/lib/obsidian/@types/Dataview/ui/views/inline-field-live-preview.d.mts +42 -0
  282. package/dist/lib/obsidian/@types/Dataview/ui/views/{inline-view.d.ts → inline-view.d.cts} +4 -4
  283. package/dist/lib/obsidian/@types/Dataview/ui/views/inline-view.d.mts +28 -0
  284. package/dist/lib/obsidian/@types/Dataview/ui/views/{js-view.d.ts → js-view.d.cts} +2 -2
  285. package/dist/lib/obsidian/@types/Dataview/ui/views/js-view.d.mts +23 -0
  286. package/dist/lib/obsidian/@types/Dataview/ui/views/{list-view.d.ts → list-view.d.cts} +3 -3
  287. package/dist/lib/obsidian/@types/Dataview/ui/views/list-view.d.mts +25 -0
  288. package/dist/lib/obsidian/@types/Dataview/ui/views/{table-view.d.ts → table-view.d.cts} +3 -3
  289. package/dist/lib/obsidian/@types/Dataview/ui/views/table-view.d.mts +28 -0
  290. package/dist/lib/obsidian/@types/Dataview/ui/views/{task-view.d.ts → task-view.d.cts} +4 -4
  291. package/dist/lib/obsidian/@types/Dataview/ui/views/task-view.d.mts +51 -0
  292. package/dist/lib/obsidian/@types/Dataview/util/hash.d.mts +1 -0
  293. package/dist/lib/obsidian/@types/Dataview/util/locale.d.mts +2 -0
  294. package/dist/lib/obsidian/@types/Dataview/util/{media.d.ts → media.d.cts} +1 -1
  295. package/dist/lib/obsidian/@types/Dataview/util/media.d.mts +6 -0
  296. package/dist/lib/obsidian/@types/Dataview/util/{normalize.d.ts → normalize.d.cts} +2 -2
  297. package/dist/lib/obsidian/@types/Dataview/util/normalize.d.mts +44 -0
  298. package/dist/lib/obsidian/App.d.mts +30 -0
  299. package/dist/lib/obsidian/{AttachmentPath.d.ts → AttachmentPath.d.cts} +1 -1
  300. package/dist/lib/obsidian/AttachmentPath.d.mts +54 -0
  301. package/dist/lib/obsidian/{Backlink.d.ts → Backlink.d.cts} +2 -2
  302. package/dist/lib/obsidian/Backlink.d.mts +60 -0
  303. package/dist/lib/obsidian/{Callout.d.ts → Callout.d.cts} +2 -2
  304. package/dist/lib/obsidian/Callout.d.mts +55 -0
  305. package/dist/lib/obsidian/Components/{DateComponent.d.ts → DateComponent.d.cts} +1 -1
  306. package/dist/lib/obsidian/Components/DateComponent.d.mts +36 -0
  307. package/dist/lib/obsidian/Components/{DateTimeComponent.d.ts → DateTimeComponent.d.cts} +1 -1
  308. package/dist/lib/obsidian/Components/DateTimeComponent.d.mts +36 -0
  309. package/dist/lib/obsidian/Components/{EmailComponent.d.ts → EmailComponent.d.cts} +1 -1
  310. package/dist/lib/obsidian/Components/EmailComponent.d.mts +29 -0
  311. package/dist/lib/obsidian/Components/{FileComponent.d.ts → FileComponent.d.cts} +1 -1
  312. package/dist/lib/obsidian/Components/FileComponent.d.mts +41 -0
  313. package/dist/lib/obsidian/Components/{MonthComponent.d.ts → MonthComponent.d.cts} +1 -1
  314. package/dist/lib/obsidian/Components/MonthComponent.d.mts +49 -0
  315. package/dist/lib/obsidian/Components/MultipleDropdownComponent.cjs +12 -1
  316. package/dist/lib/obsidian/Components/{MultipleDropdownComponent.d.ts → MultipleDropdownComponent.d.cts} +11 -4
  317. package/dist/lib/obsidian/Components/MultipleDropdownComponent.d.mts +73 -0
  318. package/dist/lib/obsidian/Components/MultipleDropdownComponent.mjs +12 -1
  319. package/dist/lib/obsidian/Components/{MultipleEmailComponent.d.ts → MultipleEmailComponent.d.cts} +1 -1
  320. package/dist/lib/obsidian/Components/MultipleEmailComponent.d.mts +36 -0
  321. package/dist/lib/obsidian/Components/{MultipleFileComponent.d.ts → MultipleFileComponent.d.cts} +1 -1
  322. package/dist/lib/obsidian/Components/MultipleFileComponent.d.mts +41 -0
  323. package/dist/lib/obsidian/Components/MultipleTextComponent.cjs +22 -1
  324. package/dist/lib/obsidian/Components/{MultipleTextComponent.d.ts → MultipleTextComponent.d.cts} +18 -4
  325. package/dist/lib/obsidian/Components/MultipleTextComponent.d.mts +67 -0
  326. package/dist/lib/obsidian/Components/MultipleTextComponent.mjs +22 -1
  327. package/dist/lib/obsidian/Components/{NumberComponent.d.ts → NumberComponent.d.cts} +1 -1
  328. package/dist/lib/obsidian/Components/NumberComponent.d.mts +29 -0
  329. package/dist/lib/obsidian/Components/{TimeComponent.d.ts → TimeComponent.d.cts} +1 -1
  330. package/dist/lib/obsidian/Components/TimeComponent.d.mts +37 -0
  331. package/dist/lib/obsidian/Components/{TypedRangeTextComponent.d.ts → TypedRangeTextComponent.d.cts} +1 -1
  332. package/dist/lib/obsidian/Components/TypedRangeTextComponent.d.mts +31 -0
  333. package/dist/lib/obsidian/Components/TypedTextComponent.cjs +2 -1
  334. package/dist/lib/obsidian/Components/{TypedTextComponent.d.ts → TypedTextComponent.d.cts} +5 -5
  335. package/dist/lib/obsidian/Components/TypedTextComponent.d.mts +84 -0
  336. package/dist/lib/obsidian/Components/TypedTextComponent.mjs +2 -1
  337. package/dist/lib/obsidian/Components/{UrlComponent.d.ts → UrlComponent.d.cts} +1 -1
  338. package/dist/lib/obsidian/Components/UrlComponent.d.mts +29 -0
  339. package/dist/lib/obsidian/Components/{ValidatorComponent.d.ts → ValidatorComponent.d.cts} +1 -1
  340. package/dist/lib/obsidian/Components/ValidatorComponent.d.mts +22 -0
  341. package/dist/lib/obsidian/Components/{ValueComponentWithChangeTracking.d.ts → ValueComponentWithChangeTracking.d.cts} +1 -1
  342. package/dist/lib/obsidian/Components/ValueComponentWithChangeTracking.d.mts +17 -0
  343. package/dist/lib/obsidian/Components/{WeekComponent.d.ts → WeekComponent.d.cts} +1 -1
  344. package/dist/lib/obsidian/Components/WeekComponent.d.mts +49 -0
  345. package/dist/lib/obsidian/Components/index.cjs +94 -0
  346. package/dist/lib/obsidian/Components/index.d.cts +17 -0
  347. package/dist/lib/obsidian/Components/index.d.mts +17 -0
  348. package/dist/lib/obsidian/Components/index.mjs +44 -0
  349. package/dist/lib/obsidian/{Dataview.d.ts → Dataview.d.cts} +6 -6
  350. package/dist/lib/obsidian/Dataview.d.mts +215 -0
  351. package/dist/lib/obsidian/{DataviewLink.d.ts → DataviewLink.d.cts} +2 -2
  352. package/dist/lib/obsidian/DataviewLink.d.mts +23 -0
  353. package/dist/lib/obsidian/{FileChange.d.ts → FileChange.d.cts} +3 -3
  354. package/dist/lib/obsidian/FileChange.d.mts +68 -0
  355. package/dist/lib/obsidian/{FileManager.d.ts → FileManager.d.cts} +4 -4
  356. package/dist/lib/obsidian/FileManager.d.mts +38 -0
  357. package/dist/lib/obsidian/FileSystem.d.mts +185 -0
  358. package/dist/lib/obsidian/Frontmatter.d.mts +69 -0
  359. package/dist/lib/obsidian/{Link.d.ts → Link.d.cts} +3 -3
  360. package/dist/lib/obsidian/Link.d.mts +366 -0
  361. package/dist/lib/obsidian/{Logger.d.ts → Logger.d.cts} +1 -1
  362. package/dist/lib/obsidian/Logger.d.mts +13 -0
  363. package/dist/lib/obsidian/{Loop.d.ts → Loop.d.cts} +1 -1
  364. package/dist/lib/obsidian/Loop.d.mts +36 -0
  365. package/dist/lib/obsidian/Markdown.d.mts +24 -0
  366. package/dist/lib/obsidian/{MarkdownCodeBlockProcessor.d.ts → MarkdownCodeBlockProcessor.d.cts} +1 -1
  367. package/dist/lib/obsidian/MarkdownCodeBlockProcessor.d.mts +23 -0
  368. package/dist/lib/obsidian/MarkdownView.d.mts +12 -0
  369. package/dist/lib/obsidian/{MetadataCache.d.ts → MetadataCache.d.cts} +3 -3
  370. package/dist/lib/obsidian/MetadataCache.d.mts +87 -0
  371. package/dist/lib/obsidian/Modals/Alert.d.mts +39 -0
  372. package/dist/lib/obsidian/Modals/Confirm.d.mts +43 -0
  373. package/dist/lib/obsidian/Modals/{ModalBase.d.ts → ModalBase.d.cts} +1 -1
  374. package/dist/lib/obsidian/Modals/ModalBase.d.mts +35 -0
  375. package/dist/lib/obsidian/Modals/Prompt.cjs +2 -2
  376. package/dist/lib/obsidian/Modals/{Prompt.d.ts → Prompt.d.cts} +1 -1
  377. package/dist/lib/obsidian/Modals/Prompt.d.mts +50 -0
  378. package/dist/lib/obsidian/Modals/Prompt.mjs +2 -2
  379. package/dist/lib/obsidian/Modals/SelectItem.d.mts +41 -0
  380. package/dist/lib/obsidian/Modals/index.cjs +58 -0
  381. package/dist/lib/obsidian/Modals/index.d.cts +5 -0
  382. package/dist/lib/obsidian/Modals/index.d.mts +5 -0
  383. package/dist/lib/obsidian/Modals/index.mjs +20 -0
  384. package/dist/lib/obsidian/ObsidianSettings.d.mts +17 -0
  385. package/dist/lib/obsidian/Pdf.d.mts +24 -0
  386. package/dist/lib/obsidian/Plugin/{EmptySettings.d.ts → EmptySettings.d.cts} +1 -1
  387. package/dist/lib/obsidian/Plugin/EmptySettings.d.mts +14 -0
  388. package/dist/lib/obsidian/Plugin/ObsidianPluginRepoPaths.d.mts +55 -0
  389. package/dist/lib/obsidian/Plugin/Plugin.d.mts +21 -0
  390. package/dist/lib/obsidian/Plugin/{PluginBase.d.ts → PluginBase.d.cts} +3 -3
  391. package/dist/lib/obsidian/Plugin/PluginBase.d.mts +108 -0
  392. package/dist/lib/obsidian/Plugin/PluginContext.d.mts +12 -0
  393. package/dist/lib/obsidian/Plugin/PluginId.d.mts +20 -0
  394. package/dist/lib/obsidian/Plugin/{PluginSettingsBase.d.ts → PluginSettingsBase.d.cts} +1 -1
  395. package/dist/lib/obsidian/Plugin/PluginSettingsBase.d.mts +31 -0
  396. package/dist/lib/obsidian/Plugin/{PluginSettingsTabBase.d.ts → PluginSettingsTabBase.d.cts} +5 -5
  397. package/dist/lib/obsidian/Plugin/PluginSettingsTabBase.d.mts +99 -0
  398. package/dist/lib/obsidian/Plugin/index.cjs +67 -0
  399. package/dist/lib/obsidian/Plugin/index.d.cts +8 -0
  400. package/dist/lib/obsidian/Plugin/index.d.mts +8 -0
  401. package/dist/lib/obsidian/Plugin/index.mjs +26 -0
  402. package/dist/lib/obsidian/{Queue.d.ts → Queue.d.cts} +1 -1
  403. package/dist/lib/obsidian/Queue.d.mts +30 -0
  404. package/dist/lib/obsidian/{Reference.d.ts → Reference.d.cts} +1 -1
  405. package/dist/lib/obsidian/Reference.d.mts +21 -0
  406. package/dist/lib/obsidian/RenameDeleteHandler.d.mts +49 -0
  407. package/dist/lib/obsidian/ResourceUrl.d.mts +14 -0
  408. package/dist/lib/obsidian/{SettingEx.d.ts → SettingEx.d.cts} +13 -13
  409. package/dist/lib/obsidian/SettingEx.d.mts +124 -0
  410. package/dist/lib/obsidian/{Vault.d.ts → Vault.d.cts} +3 -3
  411. package/dist/lib/obsidian/Vault.d.mts +130 -0
  412. package/dist/lib/obsidian/{VaultEx.d.ts → VaultEx.d.cts} +1 -1
  413. package/dist/lib/obsidian/VaultEx.d.mts +27 -0
  414. package/dist/lib/obsidian/index.cjs +130 -0
  415. package/dist/lib/obsidian/index.d.cts +29 -0
  416. package/dist/lib/obsidian/index.d.mts +29 -0
  417. package/dist/lib/obsidian/index.mjs +68 -0
  418. package/dist/lib/url.d.mts +11 -0
  419. package/index/package.json +6 -0
  420. package/obsidian/@types/Dataview/api/data-array/package.json +4 -0
  421. package/obsidian/@types/Dataview/api/extensions/package.json +4 -0
  422. package/obsidian/@types/Dataview/api/inline-api/package.json +4 -0
  423. package/obsidian/@types/Dataview/api/plugin-api/package.json +4 -0
  424. package/obsidian/@types/Dataview/api/result/package.json +4 -0
  425. package/obsidian/@types/Dataview/data-import/common/package.json +4 -0
  426. package/obsidian/@types/Dataview/data-import/csv/package.json +4 -0
  427. package/obsidian/@types/Dataview/data-import/inline-field/package.json +4 -0
  428. package/obsidian/@types/Dataview/data-import/markdown-file/package.json +4 -0
  429. package/obsidian/@types/Dataview/data-import/persister/package.json +4 -0
  430. package/obsidian/@types/Dataview/data-import/web-worker/import-entry/package.json +4 -0
  431. package/obsidian/@types/Dataview/data-import/web-worker/import-impl/package.json +4 -0
  432. package/obsidian/@types/Dataview/data-import/web-worker/import-manager/package.json +4 -0
  433. package/obsidian/@types/Dataview/data-index/index/package.json +4 -0
  434. package/obsidian/@types/Dataview/data-index/package.json +4 -0
  435. package/obsidian/@types/Dataview/data-index/resolver/package.json +4 -0
  436. package/obsidian/@types/Dataview/data-index/source/package.json +4 -0
  437. package/obsidian/@types/Dataview/data-model/markdown/package.json +4 -0
  438. package/obsidian/@types/Dataview/data-model/serialized/markdown/package.json +4 -0
  439. package/obsidian/@types/Dataview/data-model/transferable/package.json +4 -0
  440. package/obsidian/@types/Dataview/data-model/value/package.json +4 -0
  441. package/obsidian/@types/Dataview/expression/binaryop/package.json +4 -0
  442. package/obsidian/@types/Dataview/expression/context/package.json +4 -0
  443. package/obsidian/@types/Dataview/expression/field/package.json +4 -0
  444. package/obsidian/@types/Dataview/expression/functions/package.json +4 -0
  445. package/obsidian/@types/Dataview/expression/parse/package.json +4 -0
  446. package/obsidian/@types/Dataview/index/package.json +4 -0
  447. package/obsidian/@types/Dataview/main/package.json +4 -0
  448. package/obsidian/@types/Dataview/package.json +4 -0
  449. package/obsidian/@types/Dataview/query/engine/package.json +4 -0
  450. package/obsidian/@types/Dataview/query/parse/package.json +4 -0
  451. package/obsidian/@types/Dataview/query/query/package.json +4 -0
  452. package/obsidian/@types/Dataview/settings/package.json +4 -0
  453. package/obsidian/@types/Dataview/typings/obsidian-ex/package.json +4 -0
  454. package/obsidian/@types/Dataview/typings/workers/package.json +4 -0
  455. package/obsidian/@types/Dataview/ui/export/markdown/package.json +4 -0
  456. package/obsidian/@types/Dataview/ui/lp-render/package.json +4 -0
  457. package/obsidian/@types/Dataview/ui/markdown/package.json +4 -0
  458. package/obsidian/@types/Dataview/ui/refreshable-view/package.json +4 -0
  459. package/obsidian/@types/Dataview/ui/render/package.json +4 -0
  460. package/obsidian/@types/Dataview/ui/views/calendar-view/package.json +4 -0
  461. package/obsidian/@types/Dataview/ui/views/inline-field-live-preview/package.json +4 -0
  462. package/obsidian/@types/Dataview/ui/views/inline-view/package.json +4 -0
  463. package/obsidian/@types/Dataview/ui/views/js-view/package.json +4 -0
  464. package/obsidian/@types/Dataview/ui/views/list-view/package.json +4 -0
  465. package/obsidian/@types/Dataview/ui/views/table-view/package.json +4 -0
  466. package/obsidian/@types/Dataview/ui/views/task-view/package.json +4 -0
  467. package/obsidian/@types/Dataview/util/hash/package.json +4 -0
  468. package/obsidian/@types/Dataview/util/locale/package.json +4 -0
  469. package/obsidian/@types/Dataview/util/media/package.json +4 -0
  470. package/obsidian/@types/Dataview/util/normalize/package.json +4 -0
  471. package/obsidian/App/package.json +6 -0
  472. package/obsidian/AttachmentPath/package.json +6 -0
  473. package/obsidian/Backlink/package.json +6 -0
  474. package/obsidian/Callout/package.json +6 -0
  475. package/obsidian/Components/DateComponent/package.json +6 -0
  476. package/obsidian/Components/DateTimeComponent/package.json +6 -0
  477. package/obsidian/Components/EmailComponent/package.json +6 -0
  478. package/obsidian/Components/FileComponent/package.json +6 -0
  479. package/obsidian/Components/MonthComponent/package.json +6 -0
  480. package/obsidian/Components/MultipleDropdownComponent/package.json +6 -0
  481. package/obsidian/Components/MultipleEmailComponent/package.json +6 -0
  482. package/obsidian/Components/MultipleFileComponent/package.json +6 -0
  483. package/obsidian/Components/MultipleTextComponent/package.json +6 -0
  484. package/obsidian/Components/NumberComponent/package.json +6 -0
  485. package/obsidian/Components/TimeComponent/package.json +6 -0
  486. package/obsidian/Components/TypedRangeTextComponent/package.json +6 -0
  487. package/obsidian/Components/TypedTextComponent/package.json +6 -0
  488. package/obsidian/Components/UrlComponent/package.json +6 -0
  489. package/obsidian/Components/ValidatorComponent/package.json +6 -0
  490. package/obsidian/Components/ValueComponentWithChangeTracking/package.json +6 -0
  491. package/obsidian/Components/WeekComponent/package.json +6 -0
  492. package/obsidian/Components/index/package.json +6 -0
  493. package/obsidian/Components/package.json +6 -0
  494. package/obsidian/Dataview/package.json +6 -0
  495. package/obsidian/DataviewLink/package.json +6 -0
  496. package/obsidian/FileChange/package.json +6 -0
  497. package/obsidian/FileManager/package.json +6 -0
  498. package/obsidian/FileSystem/package.json +6 -0
  499. package/obsidian/Frontmatter/package.json +6 -0
  500. package/obsidian/Link/package.json +6 -0
  501. package/obsidian/Logger/package.json +6 -0
  502. package/obsidian/Loop/package.json +6 -0
  503. package/obsidian/Markdown/package.json +6 -0
  504. package/obsidian/MarkdownCodeBlockProcessor/package.json +6 -0
  505. package/obsidian/MarkdownView/package.json +6 -0
  506. package/obsidian/MetadataCache/package.json +6 -0
  507. package/obsidian/Modals/Alert/package.json +6 -0
  508. package/obsidian/Modals/Confirm/package.json +6 -0
  509. package/obsidian/Modals/ModalBase/package.json +6 -0
  510. package/obsidian/Modals/Prompt/package.json +6 -0
  511. package/obsidian/Modals/SelectItem/package.json +6 -0
  512. package/obsidian/Modals/index/package.json +6 -0
  513. package/obsidian/Modals/package.json +6 -0
  514. package/obsidian/ObsidianSettings/package.json +6 -0
  515. package/obsidian/Pdf/package.json +6 -0
  516. package/obsidian/Plugin/EmptySettings/package.json +6 -0
  517. package/obsidian/Plugin/ObsidianPluginRepoPaths/package.json +6 -0
  518. package/obsidian/Plugin/Plugin/package.json +6 -0
  519. package/obsidian/Plugin/PluginBase/package.json +6 -0
  520. package/obsidian/Plugin/PluginContext/package.json +6 -0
  521. package/obsidian/Plugin/PluginId/package.json +6 -0
  522. package/obsidian/Plugin/PluginSettingsBase/package.json +6 -0
  523. package/obsidian/Plugin/PluginSettingsTabBase/package.json +6 -0
  524. package/obsidian/Plugin/index/package.json +6 -0
  525. package/obsidian/Plugin/package.json +6 -0
  526. package/obsidian/Queue/package.json +6 -0
  527. package/obsidian/Reference/package.json +6 -0
  528. package/obsidian/RenameDeleteHandler/package.json +6 -0
  529. package/obsidian/ResourceUrl/package.json +6 -0
  530. package/obsidian/SettingEx/package.json +6 -0
  531. package/obsidian/Vault/package.json +6 -0
  532. package/obsidian/VaultEx/package.json +6 -0
  533. package/obsidian/index/package.json +6 -0
  534. package/obsidian/package.json +6 -0
  535. package/package.json +186 -315
  536. package/url/package.json +6 -0
  537. package/dist/lib/index.d.ts +0 -16
  538. package/dist/lib/scripts/CliUtils.cjs +0 -161
  539. package/dist/lib/scripts/CliUtils.mjs +0 -135
  540. package/dist/lib/scripts/CodeGenerator.mjs +0 -19
  541. package/dist/lib/scripts/ESLint/ESLint.mjs +0 -28
  542. package/dist/lib/scripts/ESLint/eslint.config.cjs +0 -328
  543. package/dist/lib/scripts/ESLint/eslint.config.mjs +0 -294
  544. package/dist/lib/scripts/Exec.cjs +0 -119
  545. package/dist/lib/scripts/Exec.mjs +0 -98
  546. package/dist/lib/scripts/Fs.cjs +0 -85
  547. package/dist/lib/scripts/Fs.mjs +0 -64
  548. package/dist/lib/scripts/JSON.cjs +0 -83
  549. package/dist/lib/scripts/JSON.mjs +0 -60
  550. package/dist/lib/scripts/NodeModules.mjs +0 -62
  551. package/dist/lib/scripts/Npm.cjs +0 -138
  552. package/dist/lib/scripts/Npm.mjs +0 -106
  553. package/dist/lib/scripts/NpmPublish.mjs +0 -21
  554. package/dist/lib/scripts/ObsidianDevUtilsRepoPaths.cjs +0 -72
  555. package/dist/lib/scripts/ObsidianDevUtilsRepoPaths.mjs +0 -48
  556. package/dist/lib/scripts/Root.cjs +0 -88
  557. package/dist/lib/scripts/Root.mjs +0 -66
  558. package/dist/lib/scripts/build.cjs +0 -82
  559. package/dist/lib/scripts/build.mjs +0 -60
  560. package/dist/lib/scripts/cli.cjs +0 -88
  561. package/dist/lib/scripts/cli.mjs +0 -65
  562. package/dist/lib/scripts/esbuild/Dependency.cjs +0 -122
  563. package/dist/lib/scripts/esbuild/Dependency.mjs +0 -95
  564. package/dist/lib/scripts/esbuild/ObsidianPluginBuilder.cjs +0 -178
  565. package/dist/lib/scripts/esbuild/ObsidianPluginBuilder.mjs +0 -149
  566. package/dist/lib/scripts/esbuild/changeExtensionPlugin.cjs +0 -67
  567. package/dist/lib/scripts/esbuild/changeExtensionPlugin.mjs +0 -43
  568. package/dist/lib/scripts/esbuild/copyToObsidianPluginsFolderPlugin.cjs +0 -66
  569. package/dist/lib/scripts/esbuild/copyToObsidianPluginsFolderPlugin.mjs +0 -50
  570. package/dist/lib/scripts/esbuild/fixEsmPlugin.mjs +0 -25
  571. package/dist/lib/scripts/esbuild/fixSourceMapsPlugin.cjs +0 -75
  572. package/dist/lib/scripts/esbuild/fixSourceMapsPlugin.mjs +0 -55
  573. package/dist/lib/scripts/esbuild/preprocessPlugin.cjs +0 -146
  574. package/dist/lib/scripts/esbuild/preprocessPlugin.mjs +0 -128
  575. package/dist/lib/scripts/esbuild/renameCssPlugin.mjs +0 -31
  576. package/dist/lib/scripts/esbuild/svelteWrapperPlugin.mjs +0 -41
  577. package/dist/lib/scripts/format.mjs +0 -41
  578. package/dist/lib/scripts/spellcheck.mjs +0 -15
  579. package/dist/lib/scripts/version.cjs +0 -389
  580. package/dist/lib/scripts/version.mjs +0 -365
  581. /package/dist/lib/@types/{debug.d.ts → debug.d.cts} +0 -0
  582. /package/dist/lib/{Async.d.ts → Async.d.cts} +0 -0
  583. /package/dist/lib/{Blob.d.ts → Blob.d.cts} +0 -0
  584. /package/dist/lib/{CssClass.d.ts → CssClass.d.cts} +0 -0
  585. /package/dist/lib/{DebugController.d.ts → DebugController.d.cts} +0 -0
  586. /package/dist/lib/{Enum.d.ts → Enum.d.cts} +0 -0
  587. /package/dist/lib/{Error.d.ts → Error.d.cts} +0 -0
  588. /package/dist/lib/{Function.d.ts → Function.d.cts} +0 -0
  589. /package/dist/lib/{HTMLElement.d.ts → HTMLElement.d.cts} +0 -0
  590. /package/dist/lib/{Library.d.ts → Library.d.cts} +0 -0
  591. /package/dist/lib/{Object.d.ts → Object.d.cts} +0 -0
  592. /package/dist/lib/{Path.d.ts → Path.d.cts} +0 -0
  593. /package/dist/lib/{RegExp.d.ts → RegExp.d.cts} +0 -0
  594. /package/dist/lib/{scripts/CodeGenerator.d.ts → ScriptUtils/CodeGenerator.d.cts} +0 -0
  595. /package/dist/lib/{scripts/ESLint/@types/@guardian__eslint-plugin-tsdoc-required.d.ts → ScriptUtils/ESLint/@types/@guardian__eslint-plugin-tsdoc-required.d.cts} +0 -0
  596. /package/dist/lib/{scripts/ESLint/@types/eslint-plugin-modules-newlines.d.ts → ScriptUtils/ESLint/@types/eslint-plugin-modules-newlines.d.cts} +0 -0
  597. /package/dist/lib/{scripts/ESLint/@types/eslint-plugin-verify-tsdoc.d.ts → ScriptUtils/ESLint/@types/eslint-plugin-verify-tsdoc.d.cts} +0 -0
  598. /package/dist/lib/{scripts/ESLint/ESLint.d.ts → ScriptUtils/ESLint/ESLint.d.cts} +0 -0
  599. /package/dist/lib/{scripts/ESLint/eslint.config.d.ts → ScriptUtils/ESLint/eslint.config.d.cts} +0 -0
  600. /package/dist/lib/{scripts/Exec.d.ts → ScriptUtils/Exec.d.cts} +0 -0
  601. /package/dist/lib/{scripts/NodeModules.d.ts → ScriptUtils/NodeModules.d.cts} +0 -0
  602. /package/dist/lib/{scripts/NpmPublish.d.ts → ScriptUtils/NpmPublish.d.cts} +0 -0
  603. /package/dist/lib/{scripts/build.d.ts → ScriptUtils/build.d.cts} +0 -0
  604. /package/dist/lib/{scripts/cli.d.ts → ScriptUtils/cli.d.cts} +0 -0
  605. /package/dist/lib/{scripts/esbuild/Dependency.d.ts → ScriptUtils/esbuild/Dependency.d.cts} +0 -0
  606. /package/dist/lib/{scripts/esbuild/changeExtensionPlugin.d.ts → ScriptUtils/esbuild/changeExtensionPlugin.d.cts} +0 -0
  607. /package/dist/lib/{scripts/esbuild/copyToObsidianPluginsFolderPlugin.d.ts → ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.d.cts} +0 -0
  608. /package/dist/lib/{scripts/esbuild/fixEsmPlugin.d.ts → ScriptUtils/esbuild/fixEsmPlugin.d.cts} +0 -0
  609. /package/dist/lib/{scripts/esbuild/fixSourceMapsPlugin.d.ts → ScriptUtils/esbuild/fixSourceMapsPlugin.d.cts} +0 -0
  610. /package/dist/lib/{scripts/esbuild/preprocessPlugin.d.ts → ScriptUtils/esbuild/preprocessPlugin.d.cts} +0 -0
  611. /package/dist/lib/{scripts/esbuild/renameCssPlugin.d.ts → ScriptUtils/esbuild/renameCssPlugin.d.cts} +0 -0
  612. /package/dist/lib/{scripts/esbuild/svelteWrapperPlugin.d.ts → ScriptUtils/esbuild/svelteWrapperPlugin.d.cts} +0 -0
  613. /package/dist/lib/{scripts/format.d.ts → ScriptUtils/format.d.cts} +0 -0
  614. /package/dist/lib/{scripts/spellcheck.d.ts → ScriptUtils/spellcheck.d.cts} +0 -0
  615. /package/dist/lib/{scripts/version.d.ts → ScriptUtils/version.d.cts} +0 -0
  616. /package/dist/lib/Transformers/{Transformer.d.ts → Transformer.d.cts} +0 -0
  617. /package/dist/lib/codemirror/{StateFieldSpec.d.ts → StateFieldSpec.d.cts} +0 -0
  618. /package/dist/lib/obsidian/@types/Dataview/api/{result.d.ts → result.d.cts} +0 -0
  619. /package/dist/lib/obsidian/@types/Dataview/data-import/{common.d.ts → common.d.cts} +0 -0
  620. /package/dist/lib/obsidian/@types/Dataview/data-import/web-worker/{import-entry.d.ts → import-entry.d.cts} +0 -0
  621. /package/dist/lib/obsidian/@types/Dataview/data-import/web-worker/{import-manager.d.ts → import-manager.d.cts} +0 -0
  622. /package/dist/lib/obsidian/@types/Dataview/data-index/{source.d.ts → source.d.cts} +0 -0
  623. /package/dist/lib/obsidian/@types/Dataview/data-model/{transferable.d.ts → transferable.d.cts} +0 -0
  624. /package/dist/lib/obsidian/@types/Dataview/{settings.d.ts → settings.d.cts} +0 -0
  625. /package/dist/lib/obsidian/@types/Dataview/typings/{workers.d.ts → workers.d.cts} +0 -0
  626. /package/dist/lib/obsidian/@types/Dataview/util/{hash.d.ts → hash.d.cts} +0 -0
  627. /package/dist/lib/obsidian/@types/Dataview/util/{locale.d.ts → locale.d.cts} +0 -0
  628. /package/dist/lib/obsidian/{App.d.ts → App.d.cts} +0 -0
  629. /package/dist/lib/obsidian/{FileSystem.d.ts → FileSystem.d.cts} +0 -0
  630. /package/dist/lib/obsidian/{Frontmatter.d.ts → Frontmatter.d.cts} +0 -0
  631. /package/dist/lib/obsidian/{Markdown.d.ts → Markdown.d.cts} +0 -0
  632. /package/dist/lib/obsidian/{MarkdownView.d.ts → MarkdownView.d.cts} +0 -0
  633. /package/dist/lib/obsidian/Modals/{Alert.d.ts → Alert.d.cts} +0 -0
  634. /package/dist/lib/obsidian/Modals/{Confirm.d.ts → Confirm.d.cts} +0 -0
  635. /package/dist/lib/obsidian/Modals/{SelectItem.d.ts → SelectItem.d.cts} +0 -0
  636. /package/dist/lib/obsidian/{ObsidianSettings.d.ts → ObsidianSettings.d.cts} +0 -0
  637. /package/dist/lib/obsidian/{Pdf.d.ts → Pdf.d.cts} +0 -0
  638. /package/dist/lib/obsidian/Plugin/{ObsidianPluginRepoPaths.d.ts → ObsidianPluginRepoPaths.d.cts} +0 -0
  639. /package/dist/lib/obsidian/Plugin/{Plugin.d.ts → Plugin.d.cts} +0 -0
  640. /package/dist/lib/obsidian/Plugin/{PluginContext.d.ts → PluginContext.d.cts} +0 -0
  641. /package/dist/lib/obsidian/Plugin/{PluginId.d.ts → PluginId.d.cts} +0 -0
  642. /package/dist/lib/obsidian/{RenameDeleteHandler.d.ts → RenameDeleteHandler.d.cts} +0 -0
  643. /package/dist/lib/obsidian/{ResourceUrl.d.ts → ResourceUrl.d.cts} +0 -0
  644. /package/dist/lib/{url.d.ts → url.d.cts} +0 -0
@@ -1,365 +0,0 @@
1
- /*
2
- THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
- if you want to view the source, please visit the github repository of this plugin
4
- */
5
-
6
- (function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"};globalThis.process=browserProcess})();
7
-
8
- import { getLibDebugger } from "../Debug.mjs";
9
- import { throwExpression } from "../Error.mjs";
10
- import { ObsidianPluginRepoPaths } from "../obsidian/Plugin/ObsidianPluginRepoPaths.mjs";
11
- import { join } from "../Path.mjs";
12
- import { replaceAll } from "../String.mjs";
13
- import { readdirPosix } from "./Fs.mjs";
14
- import { editJson } from "./JSON.mjs";
15
- import {
16
- cp,
17
- createInterface,
18
- existsSync,
19
- readFile,
20
- rm,
21
- writeFile
22
- } from "./NodeModules.mjs";
23
- import {
24
- editNpmShrinkWrapJson,
25
- editPackageJson,
26
- editPackageLockJson,
27
- readPackageJson
28
- } from "./Npm.mjs";
29
- import { ObsidianDevUtilsRepoPaths } from "./ObsidianDevUtilsRepoPaths.mjs";
30
- import {
31
- execFromRoot,
32
- resolvePathFromRootSafe
33
- } from "./Root.mjs";
34
- var VersionUpdateType = /* @__PURE__ */ ((VersionUpdateType2) => {
35
- VersionUpdateType2["Beta"] = "beta";
36
- VersionUpdateType2["Invalid"] = "invalid";
37
- VersionUpdateType2["Major"] = "major";
38
- VersionUpdateType2["Manual"] = "manual";
39
- VersionUpdateType2["Minor"] = "minor";
40
- VersionUpdateType2["Patch"] = "patch";
41
- return VersionUpdateType2;
42
- })(VersionUpdateType || {});
43
- async function addGitTag(newVersion) {
44
- await execFromRoot(`git tag -a ${newVersion} -m ${newVersion} --force`, { isQuiet: true });
45
- }
46
- async function addUpdatedFilesToGit(newVersion) {
47
- await execFromRoot(["git", "add", "--all"], { isQuiet: true });
48
- await execFromRoot(`git commit -m ${newVersion} --allow-empty`, { isQuiet: true });
49
- }
50
- async function checkGitHubCliInstalled() {
51
- try {
52
- await execFromRoot("gh --version", { isQuiet: true });
53
- } catch {
54
- throw new Error("GitHub CLI is not installed. Please install it from https://cli.github.com/");
55
- }
56
- }
57
- async function checkGitInstalled() {
58
- try {
59
- await execFromRoot("git --version", { isQuiet: true });
60
- } catch {
61
- throw new Error("Git is not installed. Please install it from https://git-scm.com/");
62
- }
63
- }
64
- async function checkGitRepoClean() {
65
- try {
66
- const stdout = await execFromRoot("git status --porcelain --untracked-files=all", { isQuiet: true });
67
- if (stdout) {
68
- throw new Error();
69
- }
70
- } catch {
71
- throw new Error("Git repository is not clean. Please commit or stash your changes before releasing a new version.");
72
- }
73
- }
74
- async function copyUpdatedManifest() {
75
- await cp(
76
- resolvePathFromRootSafe(ObsidianPluginRepoPaths.ManifestJson),
77
- resolvePathFromRootSafe(join(ObsidianPluginRepoPaths.DistBuild, ObsidianPluginRepoPaths.ManifestJson)),
78
- { force: true }
79
- );
80
- }
81
- async function getNewVersion(versionUpdateType) {
82
- const versionType = getVersionUpdateType(versionUpdateType);
83
- if (versionType === "manual" /* Manual */) {
84
- return versionUpdateType;
85
- }
86
- const packageJson = await readPackageJson();
87
- const currentVersion = packageJson.version ?? "";
88
- const match = /^(?<Major>\d+)\.(?<Minor>\d+)\.(?<Patch>\d+)(?:-beta\.(?<Beta>\d+))?$/.exec(currentVersion);
89
- if (!match) {
90
- throw new Error(`Invalid current version format: ${currentVersion}`);
91
- }
92
- let major = Number(match.groups?.["Major"] ?? "");
93
- let minor = Number(match.groups?.["Minor"] ?? "");
94
- let patch = Number(match.groups?.["Patch"] ?? "");
95
- let beta = Number(match.groups?.["Beta"] ?? "");
96
- switch (versionType) {
97
- case "beta" /* Beta */:
98
- if (beta === 0) {
99
- patch++;
100
- }
101
- beta++;
102
- break;
103
- case "major" /* Major */:
104
- major++;
105
- minor = 0;
106
- patch = 0;
107
- beta = 0;
108
- break;
109
- case "minor" /* Minor */:
110
- minor++;
111
- patch = 0;
112
- beta = 0;
113
- break;
114
- case "patch" /* Patch */:
115
- if (beta === 0) {
116
- patch++;
117
- } else {
118
- beta = 0;
119
- }
120
- break;
121
- default:
122
- throw new Error(`Invalid version update type: ${versionType}`);
123
- }
124
- return `${major.toString()}.${minor.toString()}.${patch.toString()}${beta > 0 ? `-beta.${beta.toString()}` : ""}`;
125
- }
126
- async function getReleaseNotes(newVersion) {
127
- const changelogPath = resolvePathFromRootSafe(ObsidianPluginRepoPaths.ChangelogMd);
128
- const content = await readFile(changelogPath, "utf-8");
129
- const newVersionEscaped = replaceAll(newVersion, ".", "\\.");
130
- const match = new RegExp(`
131
- ## ${newVersionEscaped}
132
-
133
- ((.|
134
- )+?)
135
-
136
- ##`).exec(content);
137
- let releaseNotes = match?.[1] ? `${match[1]}
138
-
139
- ` : "";
140
- const tags = (await execFromRoot("git tag --sort=-creatordate", { isQuiet: true })).split(/\r?\n/);
141
- const previousVersion = tags[1];
142
- let changesUrl;
143
- const repoUrl = await execFromRoot("gh repo view --json url -q .url", { isQuiet: true });
144
- if (previousVersion) {
145
- changesUrl = `${repoUrl}/compare/${previousVersion}...${newVersion}`;
146
- } else {
147
- changesUrl = `${repoUrl}/commits/${newVersion}`;
148
- }
149
- releaseNotes += `**Full Changelog**: ${changesUrl}`;
150
- return releaseNotes;
151
- }
152
- function getVersionUpdateType(versionUpdateType) {
153
- const versionUpdateTypeEnum = versionUpdateType;
154
- switch (versionUpdateTypeEnum) {
155
- case "beta" /* Beta */:
156
- case "major" /* Major */:
157
- case "minor" /* Minor */:
158
- case "patch" /* Patch */:
159
- return versionUpdateTypeEnum;
160
- default:
161
- if (/^\d+\.\d+\.\d+(?:-[\w\d.-]+)?$/.test(versionUpdateType)) {
162
- return "manual" /* Manual */;
163
- }
164
- return "invalid" /* Invalid */;
165
- }
166
- }
167
- async function gitPush() {
168
- await execFromRoot("git push --follow-tags --force", { isQuiet: true });
169
- }
170
- async function publishGitHubRelease(newVersion, isObsidianPlugin) {
171
- let filePaths;
172
- if (isObsidianPlugin) {
173
- const buildDir = resolvePathFromRootSafe(ObsidianPluginRepoPaths.DistBuild);
174
- const fileNames = await readdirPosix(buildDir);
175
- filePaths = fileNames.map((fileName) => join(buildDir, fileName));
176
- } else {
177
- const resultJson = await execFromRoot(["npm", "pack", "--pack-destination", ObsidianDevUtilsRepoPaths.Dist, "--json"], { isQuiet: true });
178
- const result = JSON.parse(resultJson);
179
- filePaths = [
180
- join(ObsidianDevUtilsRepoPaths.Dist, result[0].filename),
181
- join(ObsidianDevUtilsRepoPaths.Dist, ObsidianDevUtilsRepoPaths.StylesCss)
182
- ];
183
- }
184
- filePaths = filePaths.filter((filePath) => existsSync(resolvePathFromRootSafe(filePath)));
185
- await execFromRoot([
186
- "gh",
187
- "release",
188
- "create",
189
- newVersion,
190
- ...filePaths,
191
- "--title",
192
- `v${newVersion}`,
193
- ...isBeta(newVersion) ? ["--prerelease"] : [],
194
- "--notes-file",
195
- "-"
196
- ], {
197
- isQuiet: true,
198
- stdin: await getReleaseNotes(newVersion)
199
- });
200
- }
201
- async function updateChangelog(newVersion) {
202
- const HEADER_LINES_COUNT = 2;
203
- const changelogPath = resolvePathFromRootSafe(ObsidianPluginRepoPaths.ChangelogMd);
204
- let previousChangelogLines;
205
- if (existsSync(changelogPath)) {
206
- const content = await readFile(changelogPath, "utf-8");
207
- previousChangelogLines = content.split("\n").slice(HEADER_LINES_COUNT);
208
- if (previousChangelogLines.at(-1) === "") {
209
- previousChangelogLines.pop();
210
- }
211
- } else {
212
- previousChangelogLines = [];
213
- }
214
- const lastTag = replaceAll(previousChangelogLines[0] ?? "", "## ", "");
215
- const commitRange = lastTag ? `${lastTag}..HEAD` : "HEAD";
216
- const commitMessagesStr = await execFromRoot(`git log ${commitRange} --format=%B --first-parent -z`, { isQuiet: true });
217
- const commitMessages = commitMessagesStr.split("\0").filter(Boolean).map(toSingleLine);
218
- let newChangeLog = `# CHANGELOG
219
-
220
- ## ${newVersion}
221
-
222
- `;
223
- for (const message of commitMessages) {
224
- newChangeLog += `- ${message}
225
- `;
226
- }
227
- if (previousChangelogLines.length > 0) {
228
- newChangeLog += "\n";
229
- for (const line of previousChangelogLines) {
230
- newChangeLog += `${line}
231
- `;
232
- }
233
- }
234
- await writeFile(changelogPath, newChangeLog, "utf-8");
235
- const codeVersion = await execFromRoot("code --version", {
236
- isQuiet: true,
237
- shouldIgnoreExitCode: true
238
- });
239
- const _debugger = getLibDebugger("Version");
240
- if (codeVersion) {
241
- _debugger(`Please update the ${ObsidianPluginRepoPaths.ChangelogMd} file. Close Visual Studio Code when you are done...`);
242
- await execFromRoot(["code", "-w", changelogPath], {
243
- isQuiet: true,
244
- shouldIgnoreExitCode: true
245
- });
246
- } else {
247
- _debugger("Could not find Visual Studio Code in your PATH. Using console mode instead.");
248
- await createInterface(process.stdin, process.stdout).question(
249
- `Please update the ${ObsidianPluginRepoPaths.ChangelogMd} file. Press Enter when you are done...`
250
- );
251
- }
252
- }
253
- async function updateVersion(versionUpdateType, prepareGitHubRelease) {
254
- if (!versionUpdateType) {
255
- const npmOldVersion = process.env["npm_old_version"];
256
- const npmNewVersion = process.env["npm_new_version"];
257
- if (npmOldVersion && npmNewVersion) {
258
- await updateVersionInFiles(npmOldVersion);
259
- await updateVersion(npmNewVersion, prepareGitHubRelease);
260
- return;
261
- }
262
- throw new Error("No version update type provided");
263
- }
264
- const isObsidianPlugin = existsSync(resolvePathFromRootSafe(ObsidianPluginRepoPaths.ManifestJson));
265
- validate(versionUpdateType);
266
- await checkGitInstalled();
267
- await checkGitRepoClean();
268
- await checkGitHubCliInstalled();
269
- await runCommand("format:check");
270
- await runCommand("spellcheck");
271
- await runCommand("build");
272
- await runCommand("lint");
273
- const newVersion = await getNewVersion(versionUpdateType);
274
- await updateVersionInFiles(newVersion);
275
- if (isObsidianPlugin) {
276
- await updateVersionInFilesForPlugin(newVersion);
277
- }
278
- await updateChangelog(newVersion);
279
- await addUpdatedFilesToGit(newVersion);
280
- await addGitTag(newVersion);
281
- await gitPush();
282
- await prepareGitHubRelease?.(newVersion);
283
- await publishGitHubRelease(newVersion, isObsidianPlugin);
284
- }
285
- async function updateVersionInFiles(newVersion) {
286
- await editPackageJson((packageJson) => {
287
- packageJson.version = newVersion;
288
- });
289
- await editPackageLockJson(update, { shouldSkipIfMissing: true });
290
- await editNpmShrinkWrapJson(update, { shouldSkipIfMissing: true });
291
- function update(packageLockJson) {
292
- packageLockJson.version = newVersion;
293
- const defaultPackage = packageLockJson.packages?.[""];
294
- if (defaultPackage) {
295
- defaultPackage.version = newVersion;
296
- }
297
- }
298
- }
299
- function validate(versionUpdateType) {
300
- if (getVersionUpdateType(versionUpdateType) === "invalid" /* Invalid */) {
301
- throw new Error("Invalid version update type. Please use 'major', 'minor', 'patch', or 'x.y.z[-suffix]' format.");
302
- }
303
- }
304
- async function getLatestObsidianVersion() {
305
- const response = await fetch("https://api.github.com/repos/obsidianmd/obsidian-releases/releases/latest");
306
- const obsidianReleasesJson = await response.json();
307
- return obsidianReleasesJson.name ?? throwExpression(new Error("Could not find the name of the latest Obsidian release"));
308
- }
309
- function isBeta(version) {
310
- return version.includes("beta" /* Beta */);
311
- }
312
- async function runCommand(command) {
313
- const packageJson = await readPackageJson();
314
- const isKnownCommand = Object.keys(packageJson.scripts ?? {}).includes(command);
315
- await execFromRoot(["npm", "run", ...isKnownCommand ? [] : ["obsidian-dev-utils"], command]);
316
- }
317
- function toSingleLine(str) {
318
- const lines = str.split(/\r?\n/).filter(Boolean);
319
- return lines.join(" ");
320
- }
321
- async function updateVersionInFilesForPlugin(newVersion) {
322
- const manifestBetaJsonPath = resolvePathFromRootSafe(ObsidianPluginRepoPaths.ManifestBetaJson);
323
- if (isBeta(newVersion)) {
324
- await cp(
325
- resolvePathFromRootSafe(ObsidianPluginRepoPaths.ManifestJson),
326
- manifestBetaJsonPath,
327
- { force: true }
328
- );
329
- await editJson(ObsidianPluginRepoPaths.ManifestBetaJson, (manifest) => {
330
- manifest.version = newVersion;
331
- });
332
- } else {
333
- const latestObsidianVersion = await getLatestObsidianVersion();
334
- await editJson(ObsidianPluginRepoPaths.ManifestJson, (manifest) => {
335
- manifest.minAppVersion = latestObsidianVersion;
336
- manifest.version = newVersion;
337
- });
338
- await editJson(ObsidianPluginRepoPaths.VersionsJson, (versions) => {
339
- versions[newVersion] = latestObsidianVersion;
340
- });
341
- if (existsSync(manifestBetaJsonPath)) {
342
- await rm(manifestBetaJsonPath);
343
- }
344
- }
345
- await copyUpdatedManifest();
346
- }
347
- export {
348
- VersionUpdateType,
349
- addGitTag,
350
- addUpdatedFilesToGit,
351
- checkGitHubCliInstalled,
352
- checkGitInstalled,
353
- checkGitRepoClean,
354
- copyUpdatedManifest,
355
- getNewVersion,
356
- getReleaseNotes,
357
- getVersionUpdateType,
358
- gitPush,
359
- publishGitHubRelease,
360
- updateChangelog,
361
- updateVersion,
362
- updateVersionInFiles,
363
- validate
364
- };
365
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3NjcmlwdHMvdmVyc2lvbi50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gdmVyc2lvblxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgZnVuY3Rpb25zIGZvciBtYW5hZ2luZyB2ZXJzaW9uIHVwZGF0ZXMgaW4gYSBwcm9qZWN0LlxuICogSXQgaW5jbHVkZXMgdGFza3Mgc3VjaCBhcyB2YWxpZGF0aW5nIHZlcnNpb24gdXBkYXRlIHR5cGVzLCBjaGVja2luZyB0aGUgc3RhdGVcbiAqIG9mIEdpdCBhbmQgR2l0SHViIENMSSwgdXBkYXRpbmcgdmVyc2lvbiBudW1iZXJzIGluIGZpbGVzLCBhbmQgcGVyZm9ybWluZ1xuICogR2l0IG9wZXJhdGlvbnMgc3VjaCBhcyB0YWdnaW5nIGFuZCBwdXNoaW5nLlxuICpcbiAqIFRoZSBtYWluIGZ1bmN0aW9uLCBgdXBkYXRlVmVyc2lvbmAsIGNvb3JkaW5hdGVzIHRoZXNlIHRhc2tzIHRvIGVuc3VyZSB0aGF0XG4gKiB2ZXJzaW9uIHVwZGF0ZXMgYXJlIGhhbmRsZWQgY29uc2lzdGVudGx5IGFuZCBjb3JyZWN0bHkuIEl0IGFsc28gaW50ZWdyYXRlc1xuICogd2l0aCBPYnNpZGlhbiBwbHVnaW5zLCBpZiBhcHBsaWNhYmxlLCBieSB1cGRhdGluZyByZWxldmFudCBmaWxlcyBhbmQgcmVsZWFzaW5nXG4gKiBuZXcgdmVyc2lvbnMgb24gR2l0SHViLlxuICovXG5cbmltcG9ydCB0eXBlIHsgUGFja2FnZUxvY2tKc29uIH0gZnJvbSAnLi9OcG0udHMnO1xuXG5pbXBvcnQgeyBnZXRMaWJEZWJ1Z2dlciB9IGZyb20gJy4uL0RlYnVnLnRzJztcbmltcG9ydCB7IHRocm93RXhwcmVzc2lvbiB9IGZyb20gJy4uL0Vycm9yLnRzJztcbmltcG9ydCB7IE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzIH0gZnJvbSAnLi4vb2JzaWRpYW4vUGx1Z2luL09ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLnRzJztcbmltcG9ydCB7IGpvaW4gfSBmcm9tICcuLi9QYXRoLnRzJztcbmltcG9ydCB7IHJlcGxhY2VBbGwgfSBmcm9tICcuLi9TdHJpbmcudHMnO1xuaW1wb3J0IHsgcmVhZGRpclBvc2l4IH0gZnJvbSAnLi9Gcy50cyc7XG5pbXBvcnQgeyBlZGl0SnNvbiB9IGZyb20gJy4vSlNPTi50cyc7XG5pbXBvcnQge1xuICBjcCxcbiAgY3JlYXRlSW50ZXJmYWNlLFxuICBleGlzdHNTeW5jLFxuICByZWFkRmlsZSxcbiAgcm0sXG4gIHdyaXRlRmlsZVxufSBmcm9tICcuL05vZGVNb2R1bGVzLnRzJztcbmltcG9ydCB7XG4gIGVkaXROcG1TaHJpbmtXcmFwSnNvbixcbiAgZWRpdFBhY2thZ2VKc29uLFxuICBlZGl0UGFja2FnZUxvY2tKc29uLFxuICByZWFkUGFja2FnZUpzb25cbn0gZnJvbSAnLi9OcG0udHMnO1xuaW1wb3J0IHsgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocyB9IGZyb20gJy4vT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy50cyc7XG5pbXBvcnQge1xuICBleGVjRnJvbVJvb3QsXG4gIHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlXG59IGZyb20gJy4vUm9vdC50cyc7XG5cbi8qKlxuICogRW51bSByZXByZXNlbnRpbmcgZGlmZmVyZW50IHR5cGVzIG9mIHZlcnNpb24gdXBkYXRlcy5cbiAqL1xuZXhwb3J0IGVudW0gVmVyc2lvblVwZGF0ZVR5cGUge1xuICBCZXRhID0gJ2JldGEnLFxuICBJbnZhbGlkID0gJ2ludmFsaWQnLFxuICBNYWpvciA9ICdtYWpvcicsXG4gIE1hbnVhbCA9ICdtYW51YWwnLFxuICBNaW5vciA9ICdtaW5vcicsXG4gIFBhdGNoID0gJ3BhdGNoJ1xufVxuXG4vKipcbiAqIFR5cGUgcmVwcmVzZW50aW5nIHRoZSBtYW5pZmVzdCBmaWxlIGZvcm1hdCBmb3IgT2JzaWRpYW4gcGx1Z2lucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYW5pZmVzdCB7XG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBPYnNpZGlhbiB2ZXJzaW9uIHJlcXVpcmVkIGZvciB0aGUgcGx1Z2luLlxuICAgKi9cbiAgbWluQXBwVmVyc2lvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdmVyc2lvbiBvZiB0aGUgcGx1Z2luLlxuICAgKi9cbiAgdmVyc2lvbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFR5cGUgcmVwcmVzZW50aW5nIHRoZSBzdHJ1Y3R1cmUgb2YgT2JzaWRpYW4gcmVsZWFzZXMgSlNPTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPYnNpZGlhblJlbGVhc2VzSnNvbiB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgT2JzaWRpYW4gcmVsZWFzZS5cbiAgICovXG4gIG5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgR2l0IHRhZyBmb3IgdGhlIG5ldyB2ZXJzaW9uLlxuICpcbiAqIEBwYXJhbSBuZXdWZXJzaW9uIC0gVGhlIG5ldyB2ZXJzaW9uIG51bWJlciB0byB1c2UgZm9yIHRoZSB0YWcuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSB0YWcgaGFzIGJlZW4gY3JlYXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGFkZEdpdFRhZyhuZXdWZXJzaW9uOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgZXhlY0Zyb21Sb290KGBnaXQgdGFnIC1hICR7bmV3VmVyc2lvbn0gLW0gJHtuZXdWZXJzaW9ufSAtLWZvcmNlYCwgeyBpc1F1aWV0OiB0cnVlIH0pO1xufVxuXG4vKipcbiAqIEFkZHMgdXBkYXRlZCBmaWxlcyB0byB0aGUgR2l0IHN0YWdpbmcgYXJlYSBhbmQgY29tbWl0cyB0aGVtIHdpdGggdGhlIG5ldyB2ZXJzaW9uIG1lc3NhZ2UuXG4gKlxuICogQHBhcmFtIG5ld1ZlcnNpb24gLSBUaGUgbmV3IHZlcnNpb24gbnVtYmVyIHVzZWQgYXMgdGhlIGNvbW1pdCBtZXNzYWdlLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZmlsZXMgaGF2ZSBiZWVuIGFkZGVkIGFuZCBjb21taXR0ZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhZGRVcGRhdGVkRmlsZXNUb0dpdChuZXdWZXJzaW9uOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgZXhlY0Zyb21Sb290KFsnZ2l0JywgJ2FkZCcsICctLWFsbCddLCB7IGlzUXVpZXQ6IHRydWUgfSk7XG4gIGF3YWl0IGV4ZWNGcm9tUm9vdChgZ2l0IGNvbW1pdCAtbSAke25ld1ZlcnNpb259IC0tYWxsb3ctZW1wdHlgLCB7IGlzUXVpZXQ6IHRydWUgfSk7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBHaXRIdWIgQ0xJIGlzIGluc3RhbGxlZCBvbiB0aGUgc3lzdGVtLlxuICpcbiAqIFRocm93cyBhbiBlcnJvciBpZiB0aGUgR2l0SHViIENMSSBpcyBub3QgaW5zdGFsbGVkLlxuICpcbiAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEdpdEh1YiBDTEkgaXMgbm90IGluc3RhbGxlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNoZWNrR2l0SHViQ2xpSW5zdGFsbGVkKCk6IFByb21pc2U8dm9pZD4ge1xuICB0cnkge1xuICAgIGF3YWl0IGV4ZWNGcm9tUm9vdCgnZ2ggLS12ZXJzaW9uJywgeyBpc1F1aWV0OiB0cnVlIH0pO1xuICB9IGNhdGNoIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0dpdEh1YiBDTEkgaXMgbm90IGluc3RhbGxlZC4gUGxlYXNlIGluc3RhbGwgaXQgZnJvbSBodHRwczovL2NsaS5naXRodWIuY29tLycpO1xuICB9XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIEdpdCBpcyBpbnN0YWxsZWQgb24gdGhlIHN5c3RlbS5cbiAqXG4gKiBUaHJvd3MgYW4gZXJyb3IgaWYgR2l0IGlzIG5vdCBpbnN0YWxsZWQuXG4gKlxuICogQHRocm93cyBFcnJvciBpZiBHaXQgaXMgbm90IGluc3RhbGxlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNoZWNrR2l0SW5zdGFsbGVkKCk6IFByb21pc2U8dm9pZD4ge1xuICB0cnkge1xuICAgIGF3YWl0IGV4ZWNGcm9tUm9vdCgnZ2l0IC0tdmVyc2lvbicsIHsgaXNRdWlldDogdHJ1ZSB9KTtcbiAgfSBjYXRjaCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdHaXQgaXMgbm90IGluc3RhbGxlZC4gUGxlYXNlIGluc3RhbGwgaXQgZnJvbSBodHRwczovL2dpdC1zY20uY29tLycpO1xuICB9XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBHaXQgcmVwb3NpdG9yeSBpcyBjbGVhbiwgbWVhbmluZyB0aGVyZSBhcmUgbm8gdW5jb21taXR0ZWQgY2hhbmdlcy5cbiAqXG4gKiBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIEdpdCByZXBvc2l0b3J5IGlzIG5vdCBjbGVhbi5cbiAqXG4gKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBHaXQgcmVwb3NpdG9yeSBpcyBub3QgY2xlYW4uXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjaGVja0dpdFJlcG9DbGVhbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBzdGRvdXQgPSBhd2FpdCBleGVjRnJvbVJvb3QoJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW4gLS11bnRyYWNrZWQtZmlsZXM9YWxsJywgeyBpc1F1aWV0OiB0cnVlIH0pO1xuICAgIGlmIChzdGRvdXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigpO1xuICAgIH1cbiAgfSBjYXRjaCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdHaXQgcmVwb3NpdG9yeSBpcyBub3QgY2xlYW4uIFBsZWFzZSBjb21taXQgb3Igc3Rhc2ggeW91ciBjaGFuZ2VzIGJlZm9yZSByZWxlYXNpbmcgYSBuZXcgdmVyc2lvbi4nKTtcbiAgfVxufVxuXG4vKipcbiAqIENvcGllcyB0aGUgdXBkYXRlZCBtYW5pZmVzdCBmaWxlIHRvIHRoZSBkaXN0cmlidXRpb24gYnVpbGQgZGlyZWN0b3J5LlxuICpcbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGNvcHkgb3BlcmF0aW9uIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY29weVVwZGF0ZWRNYW5pZmVzdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgY3AoXG4gICAgcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RKc29uKSxcbiAgICByZXNvbHZlUGF0aEZyb21Sb290U2FmZShqb2luKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkRpc3RCdWlsZCwgT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RKc29uKSksXG4gICAgeyBmb3JjZTogdHJ1ZSB9XG4gICk7XG59XG5cbi8qKlxuICogR2VuZXJhdGVzIGEgbmV3IHZlcnNpb24gc3RyaW5nIGJhc2VkIG9uIHRoZSBjdXJyZW50IHZlcnNpb24gYW5kIHRoZSBzcGVjaWZpZWQgdXBkYXRlIHR5cGUuXG4gKlxuICogQHBhcmFtIHZlcnNpb25VcGRhdGVUeXBlIC0gVGhlIHR5cGUgb2YgdmVyc2lvbiB1cGRhdGUgKG1ham9yLCBtaW5vciwgcGF0Y2gsIGJldGEsIG9yIG1hbnVhbCkuXG4gKiBAcmV0dXJucyBBIGBQcm9taXNlYCB0aGF0IHJlc29sdmVzIHRvIHRoZSBuZXcgdmVyc2lvbiBzdHJpbmcuXG4gKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBjdXJyZW50IHZlcnNpb24gZm9ybWF0IGlzIGludmFsaWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXROZXdWZXJzaW9uKHZlcnNpb25VcGRhdGVUeXBlOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICBjb25zdCB2ZXJzaW9uVHlwZSA9IGdldFZlcnNpb25VcGRhdGVUeXBlKHZlcnNpb25VcGRhdGVUeXBlKTtcbiAgaWYgKHZlcnNpb25UeXBlID09PSBWZXJzaW9uVXBkYXRlVHlwZS5NYW51YWwpIHtcbiAgICByZXR1cm4gdmVyc2lvblVwZGF0ZVR5cGU7XG4gIH1cblxuICBjb25zdCBwYWNrYWdlSnNvbiA9IGF3YWl0IHJlYWRQYWNrYWdlSnNvbigpO1xuICBjb25zdCBjdXJyZW50VmVyc2lvbiA9IHBhY2thZ2VKc29uLnZlcnNpb24gPz8gJyc7XG5cbiAgY29uc3QgbWF0Y2ggPSAvXig/PE1ham9yPlxcZCspXFwuKD88TWlub3I+XFxkKylcXC4oPzxQYXRjaD5cXGQrKSg/Oi1iZXRhXFwuKD88QmV0YT5cXGQrKSk/JC8uZXhlYyhjdXJyZW50VmVyc2lvbik7XG4gIGlmICghbWF0Y2gpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY3VycmVudCB2ZXJzaW9uIGZvcm1hdDogJHtjdXJyZW50VmVyc2lvbn1gKTtcbiAgfVxuXG4gIGxldCBtYWpvciA9IE51bWJlcihtYXRjaC5ncm91cHM/LlsnTWFqb3InXSA/PyAnJyk7XG4gIGxldCBtaW5vciA9IE51bWJlcihtYXRjaC5ncm91cHM/LlsnTWlub3InXSA/PyAnJyk7XG4gIGxldCBwYXRjaCA9IE51bWJlcihtYXRjaC5ncm91cHM/LlsnUGF0Y2gnXSA/PyAnJyk7XG4gIGxldCBiZXRhID0gTnVtYmVyKG1hdGNoLmdyb3Vwcz8uWydCZXRhJ10gPz8gJycpO1xuXG4gIHN3aXRjaCAodmVyc2lvblR5cGUpIHtcbiAgICBjYXNlIFZlcnNpb25VcGRhdGVUeXBlLkJldGE6XG4gICAgICBpZiAoYmV0YSA9PT0gMCkge1xuICAgICAgICBwYXRjaCsrO1xuICAgICAgfVxuICAgICAgYmV0YSsrO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBWZXJzaW9uVXBkYXRlVHlwZS5NYWpvcjpcbiAgICAgIG1ham9yKys7XG4gICAgICBtaW5vciA9IDA7XG4gICAgICBwYXRjaCA9IDA7XG4gICAgICBiZXRhID0gMDtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgVmVyc2lvblVwZGF0ZVR5cGUuTWlub3I6XG4gICAgICBtaW5vcisrO1xuICAgICAgcGF0Y2ggPSAwO1xuICAgICAgYmV0YSA9IDA7XG4gICAgICBicmVhaztcbiAgICBjYXNlIFZlcnNpb25VcGRhdGVUeXBlLlBhdGNoOlxuICAgICAgaWYgKGJldGEgPT09IDApIHtcbiAgICAgICAgcGF0Y2grKztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJldGEgPSAwO1xuICAgICAgfVxuICAgICAgYnJlYWs7XG4gICAgZGVmYXVsdDpcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB2ZXJzaW9uIHVwZGF0ZSB0eXBlOiAke3ZlcnNpb25UeXBlfWApO1xuICB9XG5cbiAgcmV0dXJuIGAke21ham9yLnRvU3RyaW5nKCl9LiR7bWlub3IudG9TdHJpbmcoKX0uJHtwYXRjaC50b1N0cmluZygpfSR7YmV0YSA+IDAgPyBgLWJldGEuJHtiZXRhLnRvU3RyaW5nKCl9YCA6ICcnfWA7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSByZWxlYXNlIG5vdGVzIGZvciBhIHNwZWNpZmljIHZlcnNpb24gZnJvbSB0aGUgY2hhbmdlbG9nLlxuICpcbiAqIEBwYXJhbSBuZXdWZXJzaW9uIC0gVGhlIG5ldyB2ZXJzaW9uIG51bWJlciBmb3Igd2hpY2ggdG8gZ2V0IHRoZSByZWxlYXNlIG5vdGVzLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdGhlIHJlbGVhc2Ugbm90ZXMgZm9yIHRoZSBzcGVjaWZpZWQgdmVyc2lvbi5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFJlbGVhc2VOb3RlcyhuZXdWZXJzaW9uOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICBjb25zdCBjaGFuZ2Vsb2dQYXRoID0gcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuQ2hhbmdlbG9nTWQpO1xuICBjb25zdCBjb250ZW50ID0gYXdhaXQgcmVhZEZpbGUoY2hhbmdlbG9nUGF0aCwgJ3V0Zi04Jyk7XG4gIGNvbnN0IG5ld1ZlcnNpb25Fc2NhcGVkID0gcmVwbGFjZUFsbChuZXdWZXJzaW9uLCAnLicsICdcXFxcLicpO1xuICBjb25zdCBtYXRjaCA9IG5ldyBSZWdFeHAoYFxcbiMjICR7bmV3VmVyc2lvbkVzY2FwZWR9XFxuXFxuKCgufFxcbikrPylcXG5cXG4jI2ApLmV4ZWMoY29udGVudCk7XG4gIGxldCByZWxlYXNlTm90ZXMgPSBtYXRjaD8uWzFdID8gYCR7bWF0Y2hbMV19XFxuXFxuYCA6ICcnO1xuXG4gIGNvbnN0IHRhZ3MgPSAoYXdhaXQgZXhlY0Zyb21Sb290KCdnaXQgdGFnIC0tc29ydD0tY3JlYXRvcmRhdGUnLCB7IGlzUXVpZXQ6IHRydWUgfSkpLnNwbGl0KC9cXHI/XFxuLyk7XG4gIGNvbnN0IHByZXZpb3VzVmVyc2lvbiA9IHRhZ3NbMV07XG4gIGxldCBjaGFuZ2VzVXJsOiBzdHJpbmc7XG5cbiAgY29uc3QgcmVwb1VybCA9IGF3YWl0IGV4ZWNGcm9tUm9vdCgnZ2ggcmVwbyB2aWV3IC0tanNvbiB1cmwgLXEgLnVybCcsIHsgaXNRdWlldDogdHJ1ZSB9KTtcblxuICBpZiAocHJldmlvdXNWZXJzaW9uKSB7XG4gICAgY2hhbmdlc1VybCA9IGAke3JlcG9Vcmx9L2NvbXBhcmUvJHtwcmV2aW91c1ZlcnNpb259Li4uJHtuZXdWZXJzaW9ufWA7XG4gIH0gZWxzZSB7XG4gICAgY2hhbmdlc1VybCA9IGAke3JlcG9Vcmx9L2NvbW1pdHMvJHtuZXdWZXJzaW9ufWA7XG4gIH1cblxuICByZWxlYXNlTm90ZXMgKz0gYCoqRnVsbCBDaGFuZ2Vsb2cqKjogJHtjaGFuZ2VzVXJsfWA7XG4gIHJldHVybiByZWxlYXNlTm90ZXM7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB0aGUgdHlwZSBvZiB2ZXJzaW9uIHVwZGF0ZSBiYXNlZCBvbiB0aGUgaW5wdXQgc3RyaW5nLlxuICpcbiAqIEBwYXJhbSB2ZXJzaW9uVXBkYXRlVHlwZSAtIFRoZSBpbnB1dCBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSB2ZXJzaW9uIHVwZGF0ZSB0eXBlLlxuICogQHJldHVybnMgVGhlIGNvcnJlc3BvbmRpbmcgYFZlcnNpb25VcGRhdGVUeXBlYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFZlcnNpb25VcGRhdGVUeXBlKHZlcnNpb25VcGRhdGVUeXBlOiBzdHJpbmcpOiBWZXJzaW9uVXBkYXRlVHlwZSB7XG4gIGNvbnN0IHZlcnNpb25VcGRhdGVUeXBlRW51bSA9IHZlcnNpb25VcGRhdGVUeXBlIGFzIFZlcnNpb25VcGRhdGVUeXBlO1xuICBzd2l0Y2ggKHZlcnNpb25VcGRhdGVUeXBlRW51bSkge1xuICAgIGNhc2UgVmVyc2lvblVwZGF0ZVR5cGUuQmV0YTpcbiAgICBjYXNlIFZlcnNpb25VcGRhdGVUeXBlLk1ham9yOlxuICAgIGNhc2UgVmVyc2lvblVwZGF0ZVR5cGUuTWlub3I6XG4gICAgY2FzZSBWZXJzaW9uVXBkYXRlVHlwZS5QYXRjaDpcbiAgICAgIHJldHVybiB2ZXJzaW9uVXBkYXRlVHlwZUVudW07XG5cbiAgICBkZWZhdWx0OlxuICAgICAgaWYgKC9eXFxkK1xcLlxcZCtcXC5cXGQrKD86LVtcXHdcXGQuLV0rKT8kLy50ZXN0KHZlcnNpb25VcGRhdGVUeXBlKSkge1xuICAgICAgICByZXR1cm4gVmVyc2lvblVwZGF0ZVR5cGUuTWFudWFsO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gVmVyc2lvblVwZGF0ZVR5cGUuSW52YWxpZDtcbiAgfVxufVxuXG4vKipcbiAqIFB1c2hlcyBjb21taXRzIGFuZCB0YWdzIHRvIHRoZSByZW1vdGUgR2l0IHJlcG9zaXRvcnkuXG4gKlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgcHVzaCBvcGVyYXRpb24gaXMgY29tcGxldGUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnaXRQdXNoKCk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBleGVjRnJvbVJvb3QoJ2dpdCBwdXNoIC0tZm9sbG93LXRhZ3MgLS1mb3JjZScsIHsgaXNRdWlldDogdHJ1ZSB9KTtcbn1cblxuLyoqXG4gKiBQdWJsaXNoZXMgYSBHaXRIdWIgcmVsZWFzZSBmb3IgdGhlIG5ldyB2ZXJzaW9uLlxuICpcbiAqIEhhbmRsZXMgdGhlIGNyZWF0aW9uIG9mIGEgcmVsZWFzZSBhbmQgdXBsb2FkaW5nIGZpbGVzIGZvciBlaXRoZXIgYW4gT2JzaWRpYW4gcGx1Z2luIG9yIGFub3RoZXIgcHJvamVjdC5cbiAqXG4gKiBAcGFyYW0gbmV3VmVyc2lvbiAtIFRoZSBuZXcgdmVyc2lvbiBudW1iZXIgZm9yIHRoZSByZWxlYXNlLlxuICogQHBhcmFtIGlzT2JzaWRpYW5QbHVnaW4gLSBBIGJvb2xlYW4gaW5kaWNhdGluZyBpZiB0aGUgcHJvamVjdCBpcyBhbiBPYnNpZGlhbiBwbHVnaW4uXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSByZWxlYXNlIGhhcyBiZWVuIHB1Ymxpc2hlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHB1Ymxpc2hHaXRIdWJSZWxlYXNlKG5ld1ZlcnNpb246IHN0cmluZywgaXNPYnNpZGlhblBsdWdpbjogYm9vbGVhbik6IFByb21pc2U8dm9pZD4ge1xuICBsZXQgZmlsZVBhdGhzOiBzdHJpbmdbXTtcblxuICBpZiAoaXNPYnNpZGlhblBsdWdpbikge1xuICAgIGNvbnN0IGJ1aWxkRGlyID0gcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuRGlzdEJ1aWxkKTtcbiAgICBjb25zdCBmaWxlTmFtZXMgPSBhd2FpdCByZWFkZGlyUG9zaXgoYnVpbGREaXIpO1xuICAgIGZpbGVQYXRocyA9IGZpbGVOYW1lcy5tYXAoKGZpbGVOYW1lKSA9PiBqb2luKGJ1aWxkRGlyLCBmaWxlTmFtZSkpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHJlc3VsdEpzb24gPSBhd2FpdCBleGVjRnJvbVJvb3QoWyducG0nLCAncGFjaycsICctLXBhY2stZGVzdGluYXRpb24nLCBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLkRpc3QsICctLWpzb24nXSwgeyBpc1F1aWV0OiB0cnVlIH0pO1xuICAgIGNvbnN0IHJlc3VsdCA9IEpTT04ucGFyc2UocmVzdWx0SnNvbikgYXMgW3sgZmlsZW5hbWU6IHN0cmluZyB9XTtcbiAgICBmaWxlUGF0aHMgPSBbXG4gICAgICBqb2luKE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuRGlzdCwgcmVzdWx0WzBdLmZpbGVuYW1lKSxcbiAgICAgIGpvaW4oT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5EaXN0LCBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLlN0eWxlc0NzcylcbiAgICBdO1xuICB9XG5cbiAgZmlsZVBhdGhzID0gZmlsZVBhdGhzLmZpbHRlcigoZmlsZVBhdGgpID0+IGV4aXN0c1N5bmMocmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoZmlsZVBhdGgpKSk7XG5cbiAgYXdhaXQgZXhlY0Zyb21Sb290KFtcbiAgICAnZ2gnLFxuICAgICdyZWxlYXNlJyxcbiAgICAnY3JlYXRlJyxcbiAgICBuZXdWZXJzaW9uLFxuICAgIC4uLmZpbGVQYXRocyxcbiAgICAnLS10aXRsZScsXG4gICAgYHYke25ld1ZlcnNpb259YCxcbiAgICAuLi4oaXNCZXRhKG5ld1ZlcnNpb24pID8gWyctLXByZXJlbGVhc2UnXSA6IFtdKSxcbiAgICAnLS1ub3Rlcy1maWxlJyxcbiAgICAnLSdcbiAgXSwge1xuICAgIGlzUXVpZXQ6IHRydWUsXG4gICAgc3RkaW46IGF3YWl0IGdldFJlbGVhc2VOb3RlcyhuZXdWZXJzaW9uKVxuICB9KTtcbn1cblxuLyoqXG4gKiBVcGRhdGVzIHRoZSBjaGFuZ2Vsb2cgZmlsZSB3aXRoIG5ldyB2ZXJzaW9uIGluZm9ybWF0aW9uIGFuZCBjb21taXQgbWVzc2FnZXMuXG4gKlxuICogVGhpcyBmdW5jdGlvbiByZWFkcyB0aGUgY3VycmVudCBjaGFuZ2Vsb2csIGFwcGVuZHMgbmV3IGVudHJpZXMgZm9yIHRoZSBsYXRlc3QgdmVyc2lvbixcbiAqIGFuZCBwcm9tcHRzIHRoZSB1c2VyIHRvIHJldmlldyB0aGUgY2hhbmdlcy5cbiAqXG4gKiBAcGFyYW0gbmV3VmVyc2lvbiAtIFRoZSBuZXcgdmVyc2lvbiBudW1iZXIgdG8gYmUgYWRkZWQgdG8gdGhlIGNoYW5nZWxvZy5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGNoYW5nZWxvZyB1cGRhdGUgaXMgY29tcGxldGUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB1cGRhdGVDaGFuZ2Vsb2cobmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IEhFQURFUl9MSU5FU19DT1VOVCA9IDI7XG4gIGNvbnN0IGNoYW5nZWxvZ1BhdGggPSByZXNvbHZlUGF0aEZyb21Sb290U2FmZShPYnNpZGlhblBsdWdpblJlcG9QYXRocy5DaGFuZ2Vsb2dNZCk7XG4gIGxldCBwcmV2aW91c0NoYW5nZWxvZ0xpbmVzOiBzdHJpbmdbXTtcbiAgaWYgKGV4aXN0c1N5bmMoY2hhbmdlbG9nUGF0aCkpIHtcbiAgICBjb25zdCBjb250ZW50ID0gYXdhaXQgcmVhZEZpbGUoY2hhbmdlbG9nUGF0aCwgJ3V0Zi04Jyk7XG4gICAgcHJldmlvdXNDaGFuZ2Vsb2dMaW5lcyA9IGNvbnRlbnQuc3BsaXQoJ1xcbicpLnNsaWNlKEhFQURFUl9MSU5FU19DT1VOVCk7XG4gICAgaWYgKHByZXZpb3VzQ2hhbmdlbG9nTGluZXMuYXQoLTEpID09PSAnJykge1xuICAgICAgcHJldmlvdXNDaGFuZ2Vsb2dMaW5lcy5wb3AoKTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgcHJldmlvdXNDaGFuZ2Vsb2dMaW5lcyA9IFtdO1xuICB9XG5cbiAgY29uc3QgbGFzdFRhZyA9IHJlcGxhY2VBbGwocHJldmlvdXNDaGFuZ2Vsb2dMaW5lc1swXSA/PyAnJywgJyMjICcsICcnKTtcbiAgY29uc3QgY29tbWl0UmFuZ2UgPSBsYXN0VGFnID8gYCR7bGFzdFRhZ30uLkhFQURgIDogJ0hFQUQnO1xuICBjb25zdCBjb21taXRNZXNzYWdlc1N0ciA9IGF3YWl0IGV4ZWNGcm9tUm9vdChgZ2l0IGxvZyAke2NvbW1pdFJhbmdlfSAtLWZvcm1hdD0lQiAtLWZpcnN0LXBhcmVudCAtemAsIHsgaXNRdWlldDogdHJ1ZSB9KTtcbiAgY29uc3QgY29tbWl0TWVzc2FnZXMgPSBjb21taXRNZXNzYWdlc1N0ci5zcGxpdCgnXFwwJykuZmlsdGVyKEJvb2xlYW4pLm1hcCh0b1NpbmdsZUxpbmUpO1xuXG4gIGxldCBuZXdDaGFuZ2VMb2cgPSBgIyBDSEFOR0VMT0dcXG5cXG4jIyAke25ld1ZlcnNpb259XFxuXFxuYDtcblxuICBmb3IgKGNvbnN0IG1lc3NhZ2Ugb2YgY29tbWl0TWVzc2FnZXMpIHtcbiAgICBuZXdDaGFuZ2VMb2cgKz0gYC0gJHttZXNzYWdlfVxcbmA7XG4gIH1cblxuICBpZiAocHJldmlvdXNDaGFuZ2Vsb2dMaW5lcy5sZW5ndGggPiAwKSB7XG4gICAgbmV3Q2hhbmdlTG9nICs9ICdcXG4nO1xuICAgIGZvciAoY29uc3QgbGluZSBvZiBwcmV2aW91c0NoYW5nZWxvZ0xpbmVzKSB7XG4gICAgICBuZXdDaGFuZ2VMb2cgKz0gYCR7bGluZX1cXG5gO1xuICAgIH1cbiAgfVxuXG4gIGF3YWl0IHdyaXRlRmlsZShjaGFuZ2Vsb2dQYXRoLCBuZXdDaGFuZ2VMb2csICd1dGYtOCcpO1xuXG4gIGNvbnN0IGNvZGVWZXJzaW9uID0gYXdhaXQgZXhlY0Zyb21Sb290KCdjb2RlIC0tdmVyc2lvbicsIHtcbiAgICBpc1F1aWV0OiB0cnVlLFxuICAgIHNob3VsZElnbm9yZUV4aXRDb2RlOiB0cnVlXG4gIH0pO1xuICBjb25zdCBfZGVidWdnZXIgPSBnZXRMaWJEZWJ1Z2dlcignVmVyc2lvbicpO1xuICBpZiAoY29kZVZlcnNpb24pIHtcbiAgICBfZGVidWdnZXIoYFBsZWFzZSB1cGRhdGUgdGhlICR7T2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuQ2hhbmdlbG9nTWR9IGZpbGUuIENsb3NlIFZpc3VhbCBTdHVkaW8gQ29kZSB3aGVuIHlvdSBhcmUgZG9uZS4uLmApO1xuICAgIGF3YWl0IGV4ZWNGcm9tUm9vdChbJ2NvZGUnLCAnLXcnLCBjaGFuZ2Vsb2dQYXRoXSwge1xuICAgICAgaXNRdWlldDogdHJ1ZSxcbiAgICAgIHNob3VsZElnbm9yZUV4aXRDb2RlOiB0cnVlXG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgX2RlYnVnZ2VyKCdDb3VsZCBub3QgZmluZCBWaXN1YWwgU3R1ZGlvIENvZGUgaW4geW91ciBQQVRILiBVc2luZyBjb25zb2xlIG1vZGUgaW5zdGVhZC4nKTtcbiAgICBhd2FpdCBjcmVhdGVJbnRlcmZhY2UocHJvY2Vzcy5zdGRpbiwgcHJvY2Vzcy5zdGRvdXQpLnF1ZXN0aW9uKFxuICAgICAgYFBsZWFzZSB1cGRhdGUgdGhlICR7T2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuQ2hhbmdlbG9nTWR9IGZpbGUuIFByZXNzIEVudGVyIHdoZW4geW91IGFyZSBkb25lLi4uYFxuICAgICk7XG4gIH1cbn1cblxuLyoqXG4gKiBVcGRhdGVzIHRoZSB2ZXJzaW9uIG9mIHRoZSBwcm9qZWN0IGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgdXBkYXRlIHR5cGUuXG4gKlxuICogVGhpcyBmdW5jdGlvbiBwZXJmb3JtcyBhIHNlcmllcyBvZiB0YXNrcyB0byBoYW5kbGUgdmVyc2lvbiB1cGRhdGVzOlxuICogMS4gVmFsaWRhdGVzIHRoZSB2ZXJzaW9uIHVwZGF0ZSB0eXBlLlxuICogMi4gQ2hlY2tzIGlmIEdpdCBhbmQgR2l0SHViIENMSSBhcmUgaW5zdGFsbGVkLlxuICogMy4gVmVyaWZpZXMgdGhhdCB0aGUgR2l0IHJlcG9zaXRvcnkgaXMgY2xlYW4uXG4gKiA0LiBSdW5zIHNwZWxsY2hlY2sgYW5kIGxpbnRpbmcuXG4gKiA1LiBCdWlsZHMgdGhlIHByb2plY3QuXG4gKiA2LiBVcGRhdGVzIHZlcnNpb24gaW4gZmlsZXMgYW5kIGNoYW5nZWxvZy5cbiAqIDcuIEFkZHMgdXBkYXRlZCBmaWxlcyB0byBHaXQsIHRhZ3MgdGhlIGNvbW1pdCwgYW5kIHB1c2hlcyB0byB0aGUgcmVwb3NpdG9yeS5cbiAqIDguIElmIGFuIE9ic2lkaWFuIHBsdWdpbiwgY29waWVzIHRoZSB1cGRhdGVkIG1hbmlmZXN0IGFuZCBwdWJsaXNoZXMgYSBHaXRIdWIgcmVsZWFzZS5cbiAqXG4gKiBAcGFyYW0gdmVyc2lvblVwZGF0ZVR5cGUgLSBUaGUgdHlwZSBvZiB2ZXJzaW9uIHVwZGF0ZSB0byBwZXJmb3JtIChtYWpvciwgbWlub3IsIHBhdGNoLCBiZXRhLCBvciB4LnkuelstYmV0YTp1XSkuXG4gKiBAcGFyYW0gcHJlcGFyZUdpdEh1YlJlbGVhc2UgLSBBIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIHByZXBhcmUgdGhlIEdpdEh1YiByZWxlYXNlLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgdmVyc2lvbiB1cGRhdGUgaXMgY29tcGxldGUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB1cGRhdGVWZXJzaW9uKHZlcnNpb25VcGRhdGVUeXBlPzogc3RyaW5nLCBwcmVwYXJlR2l0SHViUmVsZWFzZT86IChuZXdWZXJzaW9uOiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKCF2ZXJzaW9uVXBkYXRlVHlwZSkge1xuICAgIGNvbnN0IG5wbU9sZFZlcnNpb24gPSBwcm9jZXNzLmVudlsnbnBtX29sZF92ZXJzaW9uJ107XG4gICAgY29uc3QgbnBtTmV3VmVyc2lvbiA9IHByb2Nlc3MuZW52WyducG1fbmV3X3ZlcnNpb24nXTtcblxuICAgIGlmIChucG1PbGRWZXJzaW9uICYmIG5wbU5ld1ZlcnNpb24pIHtcbiAgICAgIGF3YWl0IHVwZGF0ZVZlcnNpb25JbkZpbGVzKG5wbU9sZFZlcnNpb24pO1xuICAgICAgYXdhaXQgdXBkYXRlVmVyc2lvbihucG1OZXdWZXJzaW9uLCBwcmVwYXJlR2l0SHViUmVsZWFzZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKCdObyB2ZXJzaW9uIHVwZGF0ZSB0eXBlIHByb3ZpZGVkJyk7XG4gIH1cblxuICBjb25zdCBpc09ic2lkaWFuUGx1Z2luID0gZXhpc3RzU3luYyhyZXNvbHZlUGF0aEZyb21Sb290U2FmZShPYnNpZGlhblBsdWdpblJlcG9QYXRocy5NYW5pZmVzdEpzb24pKTtcblxuICB2YWxpZGF0ZSh2ZXJzaW9uVXBkYXRlVHlwZSk7XG4gIGF3YWl0IGNoZWNrR2l0SW5zdGFsbGVkKCk7XG4gIGF3YWl0IGNoZWNrR2l0UmVwb0NsZWFuKCk7XG4gIGF3YWl0IGNoZWNrR2l0SHViQ2xpSW5zdGFsbGVkKCk7XG4gIGF3YWl0IHJ1bkNvbW1hbmQoJ2Zvcm1hdDpjaGVjaycpO1xuICBhd2FpdCBydW5Db21tYW5kKCdzcGVsbGNoZWNrJyk7XG4gIGF3YWl0IHJ1bkNvbW1hbmQoJ2J1aWxkJyk7XG4gIGF3YWl0IHJ1bkNvbW1hbmQoJ2xpbnQnKTtcblxuICBjb25zdCBuZXdWZXJzaW9uID0gYXdhaXQgZ2V0TmV3VmVyc2lvbih2ZXJzaW9uVXBkYXRlVHlwZSk7XG4gIGF3YWl0IHVwZGF0ZVZlcnNpb25JbkZpbGVzKG5ld1ZlcnNpb24pO1xuICBpZiAoaXNPYnNpZGlhblBsdWdpbikge1xuICAgIGF3YWl0IHVwZGF0ZVZlcnNpb25JbkZpbGVzRm9yUGx1Z2luKG5ld1ZlcnNpb24pO1xuICB9XG5cbiAgYXdhaXQgdXBkYXRlQ2hhbmdlbG9nKG5ld1ZlcnNpb24pO1xuICBhd2FpdCBhZGRVcGRhdGVkRmlsZXNUb0dpdChuZXdWZXJzaW9uKTtcbiAgYXdhaXQgYWRkR2l0VGFnKG5ld1ZlcnNpb24pO1xuICBhd2FpdCBnaXRQdXNoKCk7XG4gIGF3YWl0IHByZXBhcmVHaXRIdWJSZWxlYXNlPy4obmV3VmVyc2lvbik7XG4gIGF3YWl0IHB1Ymxpc2hHaXRIdWJSZWxlYXNlKG5ld1ZlcnNpb24sIGlzT2JzaWRpYW5QbHVnaW4pO1xufVxuXG4vKipcbiAqIFVwZGF0ZXMgdGhlIHZlcnNpb24gaW4gdmFyaW91cyBmaWxlcywgaW5jbHVkaW5nIGBwYWNrYWdlLmpzb25gLCBgcGFja2FnZS1sb2NrLmpzb25gLFxuICogYW5kIE9ic2lkaWFuIHBsdWdpbiBtYW5pZmVzdHMgaWYgYXBwbGljYWJsZS5cbiAqXG4gKiBAcGFyYW0gbmV3VmVyc2lvbiAtIFRoZSBuZXcgdmVyc2lvbiBzdHJpbmcgdG8gdXBkYXRlIGluIHRoZSBmaWxlcy5cbiAqIEByZXR1cm5zIEEgYFByb21pc2VgIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgdXBkYXRlIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXBkYXRlVmVyc2lvbkluRmlsZXMobmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGVkaXRQYWNrYWdlSnNvbigocGFja2FnZUpzb24pID0+IHtcbiAgICBwYWNrYWdlSnNvbi52ZXJzaW9uID0gbmV3VmVyc2lvbjtcbiAgfSk7XG5cbiAgYXdhaXQgZWRpdFBhY2thZ2VMb2NrSnNvbih1cGRhdGUsIHsgc2hvdWxkU2tpcElmTWlzc2luZzogdHJ1ZSB9KTtcbiAgYXdhaXQgZWRpdE5wbVNocmlua1dyYXBKc29uKHVwZGF0ZSwgeyBzaG91bGRTa2lwSWZNaXNzaW5nOiB0cnVlIH0pO1xuXG4gIGZ1bmN0aW9uIHVwZGF0ZShwYWNrYWdlTG9ja0pzb246IFBhY2thZ2VMb2NrSnNvbik6IHZvaWQge1xuICAgIHBhY2thZ2VMb2NrSnNvbi52ZXJzaW9uID0gbmV3VmVyc2lvbjtcbiAgICBjb25zdCBkZWZhdWx0UGFja2FnZSA9IHBhY2thZ2VMb2NrSnNvbi5wYWNrYWdlcz8uWycnXTtcbiAgICBpZiAoZGVmYXVsdFBhY2thZ2UpIHtcbiAgICAgIGRlZmF1bHRQYWNrYWdlLnZlcnNpb24gPSBuZXdWZXJzaW9uO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFZhbGlkYXRlcyB0aGUgdmVyc2lvbiB1cGRhdGUgdHlwZSB0byBlbnN1cmUgaXQgaXMgZWl0aGVyIGEgcmVjb2duaXplZCB0eXBlXG4gKiBvciBhIHZhbGlkIG1hbnVhbCB2ZXJzaW9uIHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gdmVyc2lvblVwZGF0ZVR5cGUgLSBUaGUgdmVyc2lvbiB1cGRhdGUgdHlwZSB0byB2YWxpZGF0ZS5cbiAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIHZlcnNpb24gdXBkYXRlIHR5cGUgaXMgaW52YWxpZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlKHZlcnNpb25VcGRhdGVUeXBlOiBzdHJpbmcpOiB2b2lkIHtcbiAgaWYgKGdldFZlcnNpb25VcGRhdGVUeXBlKHZlcnNpb25VcGRhdGVUeXBlKSA9PT0gVmVyc2lvblVwZGF0ZVR5cGUuSW52YWxpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB2ZXJzaW9uIHVwZGF0ZSB0eXBlLiBQbGVhc2UgdXNlIFxcJ21ham9yXFwnLCBcXCdtaW5vclxcJywgXFwncGF0Y2hcXCcsIG9yIFxcJ3gueS56Wy1zdWZmaXhdXFwnIGZvcm1hdC4nKTtcbiAgfVxufVxuXG4vKipcbiAqIEZldGNoZXMgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIE9ic2lkaWFuIGZyb20gdGhlIEdpdEh1YiByZWxlYXNlcyBBUEkuXG4gKlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIE9ic2lkaWFuLlxuICovXG5hc3luYyBmdW5jdGlvbiBnZXRMYXRlc3RPYnNpZGlhblZlcnNpb24oKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgnaHR0cHM6Ly9hcGkuZ2l0aHViLmNvbS9yZXBvcy9vYnNpZGlhbm1kL29ic2lkaWFuLXJlbGVhc2VzL3JlbGVhc2VzL2xhdGVzdCcpO1xuICBjb25zdCBvYnNpZGlhblJlbGVhc2VzSnNvbiA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKSBhcyBQYXJ0aWFsPE9ic2lkaWFuUmVsZWFzZXNKc29uPjtcbiAgcmV0dXJuIG9ic2lkaWFuUmVsZWFzZXNKc29uLm5hbWUgPz8gdGhyb3dFeHByZXNzaW9uKG5ldyBFcnJvcignQ291bGQgbm90IGZpbmQgdGhlIG5hbWUgb2YgdGhlIGxhdGVzdCBPYnNpZGlhbiByZWxlYXNlJykpO1xufVxuXG5mdW5jdGlvbiBpc0JldGEodmVyc2lvbjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiB2ZXJzaW9uLmluY2x1ZGVzKFZlcnNpb25VcGRhdGVUeXBlLkJldGEpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBydW5Db21tYW5kKGNvbW1hbmQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBwYWNrYWdlSnNvbiA9IGF3YWl0IHJlYWRQYWNrYWdlSnNvbigpO1xuICBjb25zdCBpc0tub3duQ29tbWFuZCA9IE9iamVjdC5rZXlzKHBhY2thZ2VKc29uLnNjcmlwdHMgPz8ge30pLmluY2x1ZGVzKGNvbW1hbmQpO1xuICBhd2FpdCBleGVjRnJvbVJvb3QoWyducG0nLCAncnVuJywgLi4uKGlzS25vd25Db21tYW5kID8gW10gOiBbJ29ic2lkaWFuLWRldi11dGlscyddKSwgY29tbWFuZF0pO1xufVxuXG5mdW5jdGlvbiB0b1NpbmdsZUxpbmUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBsaW5lcyA9IHN0ci5zcGxpdCgvXFxyP1xcbi8pLmZpbHRlcihCb29sZWFuKTtcbiAgcmV0dXJuIGxpbmVzLmpvaW4oJyAnKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gdXBkYXRlVmVyc2lvbkluRmlsZXNGb3JQbHVnaW4obmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IG1hbmlmZXN0QmV0YUpzb25QYXRoID0gcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RCZXRhSnNvbik7XG4gIGlmIChpc0JldGEobmV3VmVyc2lvbikpIHtcbiAgICBhd2FpdCBjcChcbiAgICAgIHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0SnNvbiksXG4gICAgICBtYW5pZmVzdEJldGFKc29uUGF0aCxcbiAgICAgIHsgZm9yY2U6IHRydWUgfVxuICAgICk7XG4gICAgYXdhaXQgZWRpdEpzb248TWFuaWZlc3Q+KE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0QmV0YUpzb24sIChtYW5pZmVzdCkgPT4ge1xuICAgICAgbWFuaWZlc3QudmVyc2lvbiA9IG5ld1ZlcnNpb247XG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgbGF0ZXN0T2JzaWRpYW5WZXJzaW9uID0gYXdhaXQgZ2V0TGF0ZXN0T2JzaWRpYW5WZXJzaW9uKCk7XG5cbiAgICBhd2FpdCBlZGl0SnNvbjxNYW5pZmVzdD4oT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RKc29uLCAobWFuaWZlc3QpID0+IHtcbiAgICAgIG1hbmlmZXN0Lm1pbkFwcFZlcnNpb24gPSBsYXRlc3RPYnNpZGlhblZlcnNpb247XG4gICAgICBtYW5pZmVzdC52ZXJzaW9uID0gbmV3VmVyc2lvbjtcbiAgICB9KTtcblxuICAgIGF3YWl0IGVkaXRKc29uPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLlZlcnNpb25zSnNvbiwgKHZlcnNpb25zKSA9PiB7XG4gICAgICB2ZXJzaW9uc1tuZXdWZXJzaW9uXSA9IGxhdGVzdE9ic2lkaWFuVmVyc2lvbjtcbiAgICB9KTtcblxuICAgIGlmIChleGlzdHNTeW5jKG1hbmlmZXN0QmV0YUpzb25QYXRoKSkge1xuICAgICAgYXdhaXQgcm0obWFuaWZlc3RCZXRhSnNvblBhdGgpO1xuICAgIH1cbiAgfVxuXG4gIGF3YWl0IGNvcHlVcGRhdGVkTWFuaWZlc3QoKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFlQSxTQUFTLHNCQUFzQjtBQUMvQixTQUFTLHVCQUF1QjtBQUNoQyxTQUFTLCtCQUErQjtBQUN4QyxTQUFTLFlBQVk7QUFD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
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes