obsidian-dev-utils 42.6.5 → 42.8.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 (348) hide show
  1. package/CHANGELOG.md +43 -14
  2. package/README.md +4 -4
  3. package/ScriptUtils/markdownlint/@types/markdownlint-cli2-config-schema/package.json +4 -0
  4. package/ScriptUtils/markdownlint/index/package.json +6 -0
  5. package/ScriptUtils/markdownlint/markdownlint/package.json +6 -0
  6. package/ScriptUtils/markdownlint/markdownlint-cli2-config/package.json +6 -0
  7. package/ScriptUtils/markdownlint/package.json +6 -0
  8. package/dist/.markdownlint-cli2.mjs +5 -0
  9. package/dist/.markdownlint-cli2.mts +6 -0
  10. package/dist/lib/cjs/AbortController.cjs +59 -2
  11. package/dist/lib/cjs/Array.cjs +59 -2
  12. package/dist/lib/cjs/Async.cjs +59 -2
  13. package/dist/lib/cjs/AsyncEvents.cjs +59 -2
  14. package/dist/lib/cjs/Blob.cjs +59 -2
  15. package/dist/lib/cjs/CssClass.cjs +59 -2
  16. package/dist/lib/cjs/Debug.cjs +59 -2
  17. package/dist/lib/cjs/DebugController.cjs +59 -2
  18. package/dist/lib/cjs/Enum.cjs +59 -2
  19. package/dist/lib/cjs/Error.cjs +59 -2
  20. package/dist/lib/cjs/Function.cjs +59 -2
  21. package/dist/lib/cjs/HTMLElement.cjs +59 -2
  22. package/dist/lib/cjs/Library.cjs +60 -3
  23. package/dist/lib/cjs/ObjectUtils.cjs +59 -2
  24. package/dist/lib/cjs/Path.cjs +59 -2
  25. package/dist/lib/cjs/RegExp.cjs +59 -2
  26. package/dist/lib/cjs/ScriptUtils/CliUtils.cjs +59 -2
  27. package/dist/lib/cjs/ScriptUtils/CodeGenerator.cjs +59 -2
  28. package/dist/lib/cjs/ScriptUtils/ESLint/ESLint.cjs +59 -2
  29. package/dist/lib/cjs/ScriptUtils/ESLint/eslint.config.cjs +65 -2
  30. package/dist/lib/cjs/ScriptUtils/ESLint/index.cjs +59 -2
  31. package/dist/lib/cjs/ScriptUtils/Exec.cjs +59 -2
  32. package/dist/lib/cjs/ScriptUtils/Fs.cjs +59 -2
  33. package/dist/lib/cjs/ScriptUtils/JSON.cjs +59 -2
  34. package/dist/lib/cjs/ScriptUtils/NodeModules.cjs +61 -2
  35. package/dist/lib/cjs/ScriptUtils/NodeModules.d.cts +1 -1
  36. package/dist/lib/cjs/ScriptUtils/Npm.cjs +59 -2
  37. package/dist/lib/cjs/ScriptUtils/NpmPublish.cjs +59 -2
  38. package/dist/lib/cjs/ScriptUtils/NpmRun.cjs +59 -2
  39. package/dist/lib/cjs/ScriptUtils/ObsidianDevUtilsRepoPaths.cjs +61 -2
  40. package/dist/lib/cjs/ScriptUtils/ObsidianDevUtilsRepoPaths.d.cts +4 -0
  41. package/dist/lib/cjs/ScriptUtils/Root.cjs +59 -2
  42. package/dist/lib/cjs/ScriptUtils/build.cjs +59 -2
  43. package/dist/lib/cjs/ScriptUtils/cli.cjs +65 -4
  44. package/dist/lib/cjs/ScriptUtils/esbuild/Dependency.cjs +59 -2
  45. package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.cjs +59 -2
  46. package/dist/lib/cjs/ScriptUtils/esbuild/changeExtensionPlugin.cjs +59 -2
  47. package/dist/lib/cjs/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.cjs +59 -2
  48. package/dist/lib/cjs/ScriptUtils/esbuild/customEsbuildOptionsPlugin.cjs +59 -2
  49. package/dist/lib/cjs/ScriptUtils/esbuild/fixEsmPlugin.cjs +59 -2
  50. package/dist/lib/cjs/ScriptUtils/esbuild/fixSourceMapsPlugin.cjs +59 -2
  51. package/dist/lib/cjs/ScriptUtils/esbuild/index.cjs +59 -2
  52. package/dist/lib/cjs/ScriptUtils/esbuild/preprocessPlugin.cjs +59 -2
  53. package/dist/lib/cjs/ScriptUtils/esbuild/renameCssPlugin.cjs +59 -2
  54. package/dist/lib/cjs/ScriptUtils/esbuild/svelteWrapperPlugin.cjs +59 -2
  55. package/dist/lib/cjs/ScriptUtils/format.cjs +59 -2
  56. package/dist/lib/cjs/ScriptUtils/index.cjs +62 -2
  57. package/dist/lib/cjs/ScriptUtils/index.d.cts +1 -0
  58. package/dist/lib/cjs/ScriptUtils/markdownlint/@types/markdownlint-cli2-config-schema.d.cts +1343 -0
  59. package/dist/lib/cjs/ScriptUtils/markdownlint/index.cjs +106 -0
  60. package/dist/lib/cjs/ScriptUtils/markdownlint/index.d.cts +2 -0
  61. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint-cli2-config.cjs +129 -0
  62. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint-cli2-config.d.cts +10 -0
  63. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint.cjs +166 -0
  64. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint.d.cts +11 -0
  65. package/dist/lib/cjs/ScriptUtils/spellcheck.cjs +59 -2
  66. package/dist/lib/cjs/ScriptUtils/version.cjs +60 -2
  67. package/dist/lib/cjs/String.cjs +59 -2
  68. package/dist/lib/cjs/Transformers/DateTransformer.cjs +59 -2
  69. package/dist/lib/cjs/Transformers/DurationTransformer.cjs +59 -2
  70. package/dist/lib/cjs/Transformers/GroupTransformer.cjs +59 -2
  71. package/dist/lib/cjs/Transformers/MapTransformer.cjs +59 -2
  72. package/dist/lib/cjs/Transformers/SetTransformer.cjs +59 -2
  73. package/dist/lib/cjs/Transformers/SkipPrivatePropertyTransformer.cjs +59 -2
  74. package/dist/lib/cjs/Transformers/Transformer.cjs +59 -2
  75. package/dist/lib/cjs/Transformers/TwoWayMapTransformer.cjs +59 -2
  76. package/dist/lib/cjs/Transformers/TypedTransformer.cjs +59 -2
  77. package/dist/lib/cjs/Transformers/index.cjs +59 -2
  78. package/dist/lib/cjs/TwoWayMap.cjs +59 -2
  79. package/dist/lib/cjs/Type.cjs +59 -2
  80. package/dist/lib/cjs/ValueProvider.cjs +59 -2
  81. package/dist/lib/cjs/codemirror/StateFieldSpec.cjs +59 -2
  82. package/dist/lib/cjs/codemirror/index.cjs +59 -2
  83. package/dist/lib/cjs/index.cjs +59 -2
  84. package/dist/lib/cjs/obsidian/App.cjs +59 -2
  85. package/dist/lib/cjs/obsidian/AttachmentPath.cjs +59 -2
  86. package/dist/lib/cjs/obsidian/Backlink.cjs +59 -2
  87. package/dist/lib/cjs/obsidian/Callout.cjs +59 -2
  88. package/dist/lib/cjs/obsidian/CodeBlockMarkdownInformation.cjs +59 -2
  89. package/dist/lib/cjs/obsidian/Commands/AbstractFileCommandBase.cjs +59 -2
  90. package/dist/lib/cjs/obsidian/Commands/CommandBase.cjs +59 -2
  91. package/dist/lib/cjs/obsidian/Commands/EditorCommandBase.cjs +59 -2
  92. package/dist/lib/cjs/obsidian/Commands/FileCommandBase.cjs +59 -2
  93. package/dist/lib/cjs/obsidian/Commands/FolderCommandBase.cjs +59 -2
  94. package/dist/lib/cjs/obsidian/Commands/NonEditorCommandBase.cjs +59 -2
  95. package/dist/lib/cjs/obsidian/Commands/index.cjs +59 -2
  96. package/dist/lib/cjs/obsidian/Components/AsyncEventsComponent.cjs +59 -2
  97. package/dist/lib/cjs/obsidian/Components/SettingComponents/CheckboxComponent.cjs +59 -2
  98. package/dist/lib/cjs/obsidian/Components/SettingComponents/CodeHighlighterComponent.cjs +69 -12
  99. package/dist/lib/cjs/obsidian/Components/SettingComponents/DateComponent.cjs +59 -2
  100. package/dist/lib/cjs/obsidian/Components/SettingComponents/DateTimeComponent.cjs +59 -2
  101. package/dist/lib/cjs/obsidian/Components/SettingComponents/EmailComponent.cjs +59 -2
  102. package/dist/lib/cjs/obsidian/Components/SettingComponents/FileComponent.cjs +59 -2
  103. package/dist/lib/cjs/obsidian/Components/SettingComponents/MonthComponent.cjs +59 -2
  104. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleDropdownComponent.cjs +59 -2
  105. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleEmailComponent.cjs +59 -2
  106. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleFileComponent.cjs +59 -2
  107. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleTextComponent.cjs +59 -2
  108. package/dist/lib/cjs/obsidian/Components/SettingComponents/NumberComponent.cjs +59 -2
  109. package/dist/lib/cjs/obsidian/Components/SettingComponents/PasswordComponent.cjs +59 -2
  110. package/dist/lib/cjs/obsidian/Components/SettingComponents/SettingComponentWrapper.cjs +59 -2
  111. package/dist/lib/cjs/obsidian/Components/SettingComponents/TelephoneComponent.cjs +59 -2
  112. package/dist/lib/cjs/obsidian/Components/SettingComponents/TextBasedComponent.cjs +59 -2
  113. package/dist/lib/cjs/obsidian/Components/SettingComponents/TimeComponent.cjs +59 -2
  114. package/dist/lib/cjs/obsidian/Components/SettingComponents/TriStateCheckboxComponent.cjs +59 -2
  115. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedDropdownComponent.cjs +59 -2
  116. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.cjs +59 -2
  117. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedRangeTextComponent.cjs +59 -2
  118. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedTextComponent.cjs +59 -2
  119. package/dist/lib/cjs/obsidian/Components/SettingComponents/UrlComponent.cjs +59 -2
  120. package/dist/lib/cjs/obsidian/Components/SettingComponents/ValidatorComponent.cjs +59 -2
  121. package/dist/lib/cjs/obsidian/Components/SettingComponents/ValueComponentWithChangeTracking.cjs +59 -2
  122. package/dist/lib/cjs/obsidian/Components/SettingComponents/WeekComponent.cjs +59 -2
  123. package/dist/lib/cjs/obsidian/Components/SettingComponents/index.cjs +59 -2
  124. package/dist/lib/cjs/obsidian/Components/index.cjs +59 -2
  125. package/dist/lib/cjs/obsidian/Dataview.cjs +59 -2
  126. package/dist/lib/cjs/obsidian/DataviewLink.cjs +59 -2
  127. package/dist/lib/cjs/obsidian/FileChange.cjs +59 -2
  128. package/dist/lib/cjs/obsidian/FileManager.cjs +59 -2
  129. package/dist/lib/cjs/obsidian/FileSystem.cjs +59 -2
  130. package/dist/lib/cjs/obsidian/Frontmatter.cjs +59 -2
  131. package/dist/lib/cjs/obsidian/FrontmatterLinkCacheWithOffsets.cjs +59 -2
  132. package/dist/lib/cjs/obsidian/Link.cjs +59 -2
  133. package/dist/lib/cjs/obsidian/Logger.cjs +59 -2
  134. package/dist/lib/cjs/obsidian/Loop.cjs +59 -2
  135. package/dist/lib/cjs/obsidian/Markdown.cjs +59 -2
  136. package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.cjs +59 -2
  137. package/dist/lib/cjs/obsidian/MarkdownView.cjs +59 -2
  138. package/dist/lib/cjs/obsidian/MetadataCache.cjs +59 -2
  139. package/dist/lib/cjs/obsidian/Modals/Alert.cjs +59 -2
  140. package/dist/lib/cjs/obsidian/Modals/Confirm.cjs +59 -2
  141. package/dist/lib/cjs/obsidian/Modals/ModalBase.cjs +59 -2
  142. package/dist/lib/cjs/obsidian/Modals/Prompt.cjs +59 -2
  143. package/dist/lib/cjs/obsidian/Modals/SelectItem.cjs +59 -2
  144. package/dist/lib/cjs/obsidian/Modals/index.cjs +59 -2
  145. package/dist/lib/cjs/obsidian/MonkeyAround.cjs +59 -2
  146. package/dist/lib/cjs/obsidian/ObsidianSettings.cjs +59 -2
  147. package/dist/lib/cjs/obsidian/Pdf.cjs +59 -2
  148. package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.cjs +70 -2
  149. package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.d.cts +22 -0
  150. package/dist/lib/cjs/obsidian/Plugin/Plugin.cjs +59 -2
  151. package/dist/lib/cjs/obsidian/Plugin/PluginBase.cjs +59 -2
  152. package/dist/lib/cjs/obsidian/Plugin/PluginContext.cjs +59 -2
  153. package/dist/lib/cjs/obsidian/Plugin/PluginId.cjs +59 -2
  154. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.cjs +59 -2
  155. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.cjs +59 -2
  156. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsWrapper.cjs +59 -2
  157. package/dist/lib/cjs/obsidian/Plugin/PluginTypesBase.cjs +59 -2
  158. package/dist/lib/cjs/obsidian/Plugin/index.cjs +59 -2
  159. package/dist/lib/cjs/obsidian/Queue.cjs +59 -2
  160. package/dist/lib/cjs/obsidian/React/AppContext.cjs +59 -2
  161. package/dist/lib/cjs/obsidian/React/index.cjs +59 -2
  162. package/dist/lib/cjs/obsidian/Reference.cjs +59 -2
  163. package/dist/lib/cjs/obsidian/RenameDeleteHandler.cjs +59 -2
  164. package/dist/lib/cjs/obsidian/ResourceUrl.cjs +59 -2
  165. package/dist/lib/cjs/obsidian/SettingEx.cjs +59 -2
  166. package/dist/lib/cjs/obsidian/Validation.cjs +59 -2
  167. package/dist/lib/cjs/obsidian/Vault.cjs +59 -2
  168. package/dist/lib/cjs/obsidian/VaultEx.cjs +59 -2
  169. package/dist/lib/cjs/obsidian/Workspace.cjs +59 -2
  170. package/dist/lib/cjs/obsidian/i18n/CustomTypeOptionsBase.cjs +59 -2
  171. package/dist/lib/cjs/obsidian/i18n/DefaultTranslationsBase.cjs +59 -2
  172. package/dist/lib/cjs/obsidian/i18n/i18n.cjs +59 -2
  173. package/dist/lib/cjs/obsidian/i18n/index.cjs +59 -2
  174. package/dist/lib/cjs/obsidian/i18n/locales/en.cjs +59 -2
  175. package/dist/lib/cjs/obsidian/i18n/locales/index.cjs +59 -2
  176. package/dist/lib/cjs/obsidian/i18n/locales/translationsMap.cjs +59 -2
  177. package/dist/lib/cjs/obsidian/index.cjs +59 -2
  178. package/dist/lib/cjs/url.cjs +59 -2
  179. package/dist/lib/esm/AbortController.mjs +16 -2
  180. package/dist/lib/esm/Array.mjs +16 -2
  181. package/dist/lib/esm/Async.mjs +16 -2
  182. package/dist/lib/esm/AsyncEvents.mjs +16 -2
  183. package/dist/lib/esm/Blob.mjs +16 -2
  184. package/dist/lib/esm/CssClass.mjs +16 -2
  185. package/dist/lib/esm/Debug.mjs +16 -2
  186. package/dist/lib/esm/DebugController.mjs +15 -1
  187. package/dist/lib/esm/Enum.mjs +16 -2
  188. package/dist/lib/esm/Error.mjs +16 -2
  189. package/dist/lib/esm/Function.mjs +16 -2
  190. package/dist/lib/esm/HTMLElement.mjs +16 -2
  191. package/dist/lib/esm/Library.mjs +17 -3
  192. package/dist/lib/esm/ObjectUtils.mjs +16 -2
  193. package/dist/lib/esm/Path.mjs +16 -2
  194. package/dist/lib/esm/RegExp.mjs +16 -2
  195. package/dist/lib/esm/ScriptUtils/CliUtils.mjs +16 -2
  196. package/dist/lib/esm/ScriptUtils/CodeGenerator.mjs +16 -2
  197. package/dist/lib/esm/ScriptUtils/ESLint/ESLint.mjs +16 -2
  198. package/dist/lib/esm/ScriptUtils/ESLint/eslint.config.mjs +22 -2
  199. package/dist/lib/esm/ScriptUtils/ESLint/index.mjs +16 -2
  200. package/dist/lib/esm/ScriptUtils/Exec.mjs +16 -2
  201. package/dist/lib/esm/ScriptUtils/Fs.mjs +16 -2
  202. package/dist/lib/esm/ScriptUtils/JSON.mjs +16 -2
  203. package/dist/lib/esm/ScriptUtils/NodeModules.d.mts +1 -1
  204. package/dist/lib/esm/ScriptUtils/NodeModules.mjs +18 -2
  205. package/dist/lib/esm/ScriptUtils/Npm.mjs +16 -2
  206. package/dist/lib/esm/ScriptUtils/NpmPublish.mjs +16 -2
  207. package/dist/lib/esm/ScriptUtils/NpmRun.mjs +16 -2
  208. package/dist/lib/esm/ScriptUtils/ObsidianDevUtilsRepoPaths.d.mts +4 -0
  209. package/dist/lib/esm/ScriptUtils/ObsidianDevUtilsRepoPaths.mjs +18 -2
  210. package/dist/lib/esm/ScriptUtils/Root.mjs +16 -2
  211. package/dist/lib/esm/ScriptUtils/build.mjs +16 -2
  212. package/dist/lib/esm/ScriptUtils/cli.mjs +22 -4
  213. package/dist/lib/esm/ScriptUtils/esbuild/Dependency.mjs +16 -2
  214. package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.mjs +16 -2
  215. package/dist/lib/esm/ScriptUtils/esbuild/changeExtensionPlugin.mjs +16 -2
  216. package/dist/lib/esm/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.mjs +16 -2
  217. package/dist/lib/esm/ScriptUtils/esbuild/customEsbuildOptionsPlugin.mjs +16 -2
  218. package/dist/lib/esm/ScriptUtils/esbuild/fixEsmPlugin.mjs +16 -2
  219. package/dist/lib/esm/ScriptUtils/esbuild/fixSourceMapsPlugin.mjs +16 -2
  220. package/dist/lib/esm/ScriptUtils/esbuild/index.mjs +16 -2
  221. package/dist/lib/esm/ScriptUtils/esbuild/preprocessPlugin.mjs +16 -2
  222. package/dist/lib/esm/ScriptUtils/esbuild/renameCssPlugin.mjs +16 -2
  223. package/dist/lib/esm/ScriptUtils/esbuild/svelteWrapperPlugin.mjs +16 -2
  224. package/dist/lib/esm/ScriptUtils/format.mjs +16 -2
  225. package/dist/lib/esm/ScriptUtils/index.d.mts +1 -0
  226. package/dist/lib/esm/ScriptUtils/index.mjs +18 -2
  227. package/dist/lib/esm/ScriptUtils/markdownlint/@types/markdownlint-cli2-config-schema.d.mts +1343 -0
  228. package/dist/lib/esm/ScriptUtils/markdownlint/index.d.mts +2 -0
  229. package/dist/lib/esm/ScriptUtils/markdownlint/index.mjs +28 -0
  230. package/dist/lib/esm/ScriptUtils/markdownlint/markdownlint-cli2-config.d.mts +10 -0
  231. package/dist/lib/esm/ScriptUtils/markdownlint/markdownlint-cli2-config.mjs +52 -0
  232. package/dist/lib/esm/ScriptUtils/markdownlint/markdownlint.d.mts +11 -0
  233. package/dist/lib/esm/ScriptUtils/markdownlint/markdownlint.mjs +99 -0
  234. package/dist/lib/esm/ScriptUtils/spellcheck.mjs +16 -2
  235. package/dist/lib/esm/ScriptUtils/version.mjs +17 -2
  236. package/dist/lib/esm/String.mjs +16 -2
  237. package/dist/lib/esm/Transformers/DateTransformer.mjs +16 -2
  238. package/dist/lib/esm/Transformers/DurationTransformer.mjs +16 -2
  239. package/dist/lib/esm/Transformers/GroupTransformer.mjs +16 -2
  240. package/dist/lib/esm/Transformers/MapTransformer.mjs +16 -2
  241. package/dist/lib/esm/Transformers/SetTransformer.mjs +16 -2
  242. package/dist/lib/esm/Transformers/SkipPrivatePropertyTransformer.mjs +16 -2
  243. package/dist/lib/esm/Transformers/Transformer.mjs +16 -2
  244. package/dist/lib/esm/Transformers/TwoWayMapTransformer.mjs +16 -2
  245. package/dist/lib/esm/Transformers/TypedTransformer.mjs +16 -2
  246. package/dist/lib/esm/Transformers/index.mjs +16 -2
  247. package/dist/lib/esm/TwoWayMap.mjs +16 -2
  248. package/dist/lib/esm/Type.mjs +16 -2
  249. package/dist/lib/esm/ValueProvider.mjs +16 -2
  250. package/dist/lib/esm/codemirror/StateFieldSpec.mjs +15 -1
  251. package/dist/lib/esm/codemirror/index.mjs +16 -2
  252. package/dist/lib/esm/index.mjs +16 -2
  253. package/dist/lib/esm/obsidian/App.mjs +16 -2
  254. package/dist/lib/esm/obsidian/AttachmentPath.mjs +16 -2
  255. package/dist/lib/esm/obsidian/Backlink.mjs +16 -2
  256. package/dist/lib/esm/obsidian/Callout.mjs +16 -2
  257. package/dist/lib/esm/obsidian/CodeBlockMarkdownInformation.mjs +15 -1
  258. package/dist/lib/esm/obsidian/Commands/AbstractFileCommandBase.mjs +16 -2
  259. package/dist/lib/esm/obsidian/Commands/CommandBase.mjs +16 -2
  260. package/dist/lib/esm/obsidian/Commands/EditorCommandBase.mjs +16 -2
  261. package/dist/lib/esm/obsidian/Commands/FileCommandBase.mjs +16 -2
  262. package/dist/lib/esm/obsidian/Commands/FolderCommandBase.mjs +16 -2
  263. package/dist/lib/esm/obsidian/Commands/NonEditorCommandBase.mjs +16 -2
  264. package/dist/lib/esm/obsidian/Commands/index.mjs +16 -2
  265. package/dist/lib/esm/obsidian/Components/AsyncEventsComponent.mjs +16 -2
  266. package/dist/lib/esm/obsidian/Components/SettingComponents/CheckboxComponent.mjs +16 -2
  267. package/dist/lib/esm/obsidian/Components/SettingComponents/CodeHighlighterComponent.mjs +26 -12
  268. package/dist/lib/esm/obsidian/Components/SettingComponents/DateComponent.mjs +16 -2
  269. package/dist/lib/esm/obsidian/Components/SettingComponents/DateTimeComponent.mjs +16 -2
  270. package/dist/lib/esm/obsidian/Components/SettingComponents/EmailComponent.mjs +16 -2
  271. package/dist/lib/esm/obsidian/Components/SettingComponents/FileComponent.mjs +16 -2
  272. package/dist/lib/esm/obsidian/Components/SettingComponents/MonthComponent.mjs +16 -2
  273. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleDropdownComponent.mjs +16 -2
  274. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleEmailComponent.mjs +16 -2
  275. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleFileComponent.mjs +16 -2
  276. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleTextComponent.mjs +16 -2
  277. package/dist/lib/esm/obsidian/Components/SettingComponents/NumberComponent.mjs +16 -2
  278. package/dist/lib/esm/obsidian/Components/SettingComponents/PasswordComponent.mjs +16 -2
  279. package/dist/lib/esm/obsidian/Components/SettingComponents/SettingComponentWrapper.mjs +16 -2
  280. package/dist/lib/esm/obsidian/Components/SettingComponents/TelephoneComponent.mjs +16 -2
  281. package/dist/lib/esm/obsidian/Components/SettingComponents/TextBasedComponent.mjs +16 -2
  282. package/dist/lib/esm/obsidian/Components/SettingComponents/TimeComponent.mjs +16 -2
  283. package/dist/lib/esm/obsidian/Components/SettingComponents/TriStateCheckboxComponent.mjs +16 -2
  284. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedDropdownComponent.mjs +16 -2
  285. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.mjs +16 -2
  286. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedRangeTextComponent.mjs +16 -2
  287. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedTextComponent.mjs +16 -2
  288. package/dist/lib/esm/obsidian/Components/SettingComponents/UrlComponent.mjs +16 -2
  289. package/dist/lib/esm/obsidian/Components/SettingComponents/ValidatorComponent.mjs +16 -2
  290. package/dist/lib/esm/obsidian/Components/SettingComponents/ValueComponentWithChangeTracking.mjs +15 -1
  291. package/dist/lib/esm/obsidian/Components/SettingComponents/WeekComponent.mjs +16 -2
  292. package/dist/lib/esm/obsidian/Components/SettingComponents/index.mjs +16 -2
  293. package/dist/lib/esm/obsidian/Components/index.mjs +16 -2
  294. package/dist/lib/esm/obsidian/Dataview.mjs +16 -2
  295. package/dist/lib/esm/obsidian/DataviewLink.mjs +16 -2
  296. package/dist/lib/esm/obsidian/FileChange.mjs +16 -2
  297. package/dist/lib/esm/obsidian/FileManager.mjs +16 -2
  298. package/dist/lib/esm/obsidian/FileSystem.mjs +16 -2
  299. package/dist/lib/esm/obsidian/Frontmatter.mjs +16 -2
  300. package/dist/lib/esm/obsidian/FrontmatterLinkCacheWithOffsets.mjs +16 -2
  301. package/dist/lib/esm/obsidian/Link.mjs +16 -2
  302. package/dist/lib/esm/obsidian/Logger.mjs +16 -2
  303. package/dist/lib/esm/obsidian/Loop.mjs +16 -2
  304. package/dist/lib/esm/obsidian/Markdown.mjs +16 -2
  305. package/dist/lib/esm/obsidian/MarkdownCodeBlockProcessor.mjs +16 -2
  306. package/dist/lib/esm/obsidian/MarkdownView.mjs +16 -2
  307. package/dist/lib/esm/obsidian/MetadataCache.mjs +16 -2
  308. package/dist/lib/esm/obsidian/Modals/Alert.mjs +16 -2
  309. package/dist/lib/esm/obsidian/Modals/Confirm.mjs +16 -2
  310. package/dist/lib/esm/obsidian/Modals/ModalBase.mjs +16 -2
  311. package/dist/lib/esm/obsidian/Modals/Prompt.mjs +16 -2
  312. package/dist/lib/esm/obsidian/Modals/SelectItem.mjs +16 -2
  313. package/dist/lib/esm/obsidian/Modals/index.mjs +16 -2
  314. package/dist/lib/esm/obsidian/MonkeyAround.mjs +16 -2
  315. package/dist/lib/esm/obsidian/ObsidianSettings.mjs +16 -2
  316. package/dist/lib/esm/obsidian/Pdf.mjs +16 -2
  317. package/dist/lib/esm/obsidian/Plugin/ObsidianPluginRepoPaths.d.mts +22 -0
  318. package/dist/lib/esm/obsidian/Plugin/ObsidianPluginRepoPaths.mjs +27 -2
  319. package/dist/lib/esm/obsidian/Plugin/Plugin.mjs +16 -2
  320. package/dist/lib/esm/obsidian/Plugin/PluginBase.mjs +16 -2
  321. package/dist/lib/esm/obsidian/Plugin/PluginContext.mjs +16 -2
  322. package/dist/lib/esm/obsidian/Plugin/PluginId.mjs +16 -2
  323. package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.mjs +16 -2
  324. package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.mjs +16 -2
  325. package/dist/lib/esm/obsidian/Plugin/PluginSettingsWrapper.mjs +15 -1
  326. package/dist/lib/esm/obsidian/Plugin/PluginTypesBase.mjs +15 -1
  327. package/dist/lib/esm/obsidian/Plugin/index.mjs +16 -2
  328. package/dist/lib/esm/obsidian/Queue.mjs +16 -2
  329. package/dist/lib/esm/obsidian/React/AppContext.mjs +16 -2
  330. package/dist/lib/esm/obsidian/React/index.mjs +16 -2
  331. package/dist/lib/esm/obsidian/Reference.mjs +16 -2
  332. package/dist/lib/esm/obsidian/RenameDeleteHandler.mjs +16 -2
  333. package/dist/lib/esm/obsidian/ResourceUrl.mjs +16 -2
  334. package/dist/lib/esm/obsidian/SettingEx.mjs +16 -2
  335. package/dist/lib/esm/obsidian/Validation.mjs +16 -2
  336. package/dist/lib/esm/obsidian/Vault.mjs +16 -2
  337. package/dist/lib/esm/obsidian/VaultEx.mjs +16 -2
  338. package/dist/lib/esm/obsidian/Workspace.mjs +16 -2
  339. package/dist/lib/esm/obsidian/i18n/CustomTypeOptionsBase.mjs +16 -2
  340. package/dist/lib/esm/obsidian/i18n/DefaultTranslationsBase.mjs +16 -2
  341. package/dist/lib/esm/obsidian/i18n/i18n.mjs +16 -2
  342. package/dist/lib/esm/obsidian/i18n/index.mjs +16 -2
  343. package/dist/lib/esm/obsidian/i18n/locales/en.mjs +16 -2
  344. package/dist/lib/esm/obsidian/i18n/locales/index.mjs +16 -2
  345. package/dist/lib/esm/obsidian/i18n/locales/translationsMap.mjs +16 -2
  346. package/dist/lib/esm/obsidian/index.mjs +16 -2
  347. package/dist/lib/esm/url.mjs +16 -2
  348. package/package.json +53 -19
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 42.8.0
4
+
5
+ - feat: switch from tsx to jiti
6
+
7
+ ## 42.7.0
8
+
9
+ - feat: add ctrl+tab/ctrl+shift+tab for CodeHighlighterComponent
10
+ - feat: strongly-typed settings
11
+ - chore: update libs
12
+ - feat: better error handling
13
+ - feat: enable markdown lint
14
+ - feat: allow node-js libs from scripts folder
15
+
3
16
  ## 42.6.5
4
17
 
5
18
  - chore: lint
@@ -108,16 +121,19 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
108
121
 
109
122
  ## 40.13.1
110
123
 
111
- - Don't delete notes on rename (https://github.com/RainCat1998/obsidian-custom-attachment-location/issues/223)
124
+ - Don't delete notes on rename
125
+ - fix: <https://github.com/RainCat1998/obsidian-custom-attachment-location/issues/223>
112
126
 
113
127
  ## 40.13.0
114
128
 
115
129
  - @typescript-eslint/prefer-readonly
116
- - Remove empty folder after attachment moved (https://github.com/RainCat1998/obsidian-custom-attachment-location/issues/222)
130
+ - Remove empty folder after attachment moved
131
+ - fix: <https://github.com/RainCat1998/obsidian-custom-attachment-location/issues/222>
117
132
 
118
133
  ## 40.12.1
119
134
 
120
- - Ensure MetadataDeleted processed before queue (https://github.com/RainCat1998/obsidian-custom-attachment-location/issues/220)
135
+ - Ensure MetadataDeleted processed before queue
136
+ - fix: <https://github.com/RainCat1998/obsidian-custom-attachment-location/issues/220>
121
137
 
122
138
  ## 40.12.0
123
139
 
@@ -184,7 +200,8 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
184
200
 
185
201
  ## 40.1.3
186
202
 
187
- - Handle frontmatter changes properly (https://github.com/RainCat1998/obsidian-custom-attachment-location/issues/206)
203
+ - Handle frontmatter changes properly
204
+ - fix: <https://github.com/RainCat1998/obsidian-custom-attachment-location/issues/206>
188
205
 
189
206
  ## 40.1.2
190
207
 
@@ -196,7 +213,8 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
196
213
 
197
214
  ## 40.1.0
198
215
 
199
- - shouldEscapeAlias (https://github.com/mnaoumov/obsidian-better-markdown-links/issues/22)
216
+ - shouldEscapeAlias
217
+ - fix: <https://github.com/mnaoumov/obsidian-better-markdown-links/issues/22>
200
218
 
201
219
  ## 40.0.2
202
220
 
@@ -251,7 +269,8 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
251
269
 
252
270
  ## 38.5.1
253
271
 
254
- - Don't wait for every save. Fixes performance (https://github.com/mnaoumov/obsidian-backlink-cache/issues/10)
272
+ - Don't wait for every save
273
+ - fix\[perf\]: <https://github.com/mnaoumov/obsidian-backlink-cache/issues/10>
255
274
 
256
275
  ## 38.5.0
257
276
 
@@ -259,7 +278,8 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
259
278
 
260
279
  ## 38.4.3
261
280
 
262
- - Reuse parsed alias (Fixes https://github.com/mnaoumov/obsidian-better-markdown-links/issues/21#issuecomment-3225879039)
281
+ - Reuse parsed alias
282
+ - fix: <https://github.com/mnaoumov/obsidian-better-markdown-links/issues/21#issuecomment-3225879039>
263
283
 
264
284
  ## 38.4.2
265
285
 
@@ -334,6 +354,7 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
334
354
 
335
355
  ## 35.0.1
336
356
 
357
+ - Minor changes
337
358
 
338
359
  ## 35.0.0
339
360
 
@@ -410,7 +431,8 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
410
431
 
411
432
  ## 30.5.1
412
433
 
413
- - Polyfill `AbortSignal.any()`. Needed for https://github.com/mnaoumov/obsidian-backlink-cache/issues/9
434
+ - Polyfill `AbortSignal.any()`
435
+ - fix: <https://github.com/mnaoumov/obsidian-backlink-cache/issues/9>
414
436
 
415
437
  ## 30.5.0
416
438
 
@@ -482,6 +504,7 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
482
504
 
483
505
  ## 28.2.1
484
506
 
507
+ - Minor changes
485
508
 
486
509
  ## 28.2.0
487
510
 
@@ -530,7 +553,8 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
530
553
 
531
554
  ## 27.5.0
532
555
 
533
- - Don't disable link updates if rename is disabled (https://github.com/mnaoumov/obsidian-better-markdown-links/issues/17)
556
+ - Don't disable link updates if rename is disabled
557
+ - fix: <https://github.com/mnaoumov/obsidian-better-markdown-links/issues/17>
534
558
 
535
559
  ## 27.4.0
536
560
 
@@ -552,7 +576,8 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
552
576
 
553
577
  ## 27.2.0
554
578
 
555
- - Recognize urls such mailto:foo@bar.com (For https://github.com/mnaoumov/obsidian-frontmatter-markdown-links/issues/9)
579
+ - Recognize urls such mailto:foo@bar.com
580
+ - fix: <https://github.com/mnaoumov/obsidian-frontmatter-markdown-links/issues/9>
556
581
 
557
582
  ## 27.1.0
558
583
 
@@ -561,6 +586,7 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
561
586
 
562
587
  ## 27.0.2
563
588
 
589
+ - Minor changes
564
590
 
565
591
  ## 27.0.1
566
592
 
@@ -589,7 +615,7 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
589
615
 
590
616
  ## 26.27.3
591
617
 
592
- - Parse <url>
618
+ - Parse \<url\>
593
619
 
594
620
  ## 26.27.2
595
621
 
@@ -714,11 +740,11 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
714
740
 
715
741
  - Add TelephoneComponent.
716
742
  - Add PasswordComponent.
717
- - Fixed [Issue #32: [BUG] Time input and shouldShowPlaceholderForDefaultValues](https://github.com/mnaoumov/obsidian-dev-utils/issues/32).
743
+ - fix: #32
718
744
 
719
745
  ## 26.3.0
720
746
 
721
- - Fixed [Issue #31: [BUG] Toggles animate when opening the settings tab](https://github.com/mnaoumov/obsidian-dev-utils/issues/31).
747
+ - fix: #1
722
748
 
723
749
  ## 26.2.1
724
750
 
@@ -857,6 +883,7 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
857
883
 
858
884
  ## 23.0.1
859
885
 
886
+ - Minor changes
860
887
 
861
888
  ## 23.0.0
862
889
 
@@ -1230,6 +1257,7 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
1230
1257
 
1231
1258
  ## 19.8.2
1232
1259
 
1260
+ - Minor changes
1233
1261
 
1234
1262
  ## 19.8.1
1235
1263
 
@@ -1330,6 +1358,7 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
1330
1358
 
1331
1359
  ## 19.1.0
1332
1360
 
1361
+ - Minor changes
1333
1362
 
1334
1363
  ## 19.0.1
1335
1364
 
@@ -1338,7 +1367,7 @@ BREAKING CHANGE: `generateMarkdownLink()` now doesn't support default options em
1338
1367
 
1339
1368
  ## 19.0.0
1340
1369
 
1341
- - Make compatible with https://arethetypeswrong.github.io/
1370
+ - Make compatible with [Are the types wrong?](https://arethetypeswrong.github.io/)
1342
1371
 
1343
1372
  ## 18.4.2
1344
1373
 
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # Obsidian Dev Utils [![](https://badge.fury.io/js/obsidian-dev-utils.svg)](https://npmjs.org/package/obsidian-dev-utils)
1
+ # Obsidian Dev Utils [![obsidian-dev-utils](https://badge.fury.io/js/obsidian-dev-utils.svg)](https://www.npmjs.com/package/obsidian-dev-utils)
2
2
 
3
3
  `Obsidian Dev Utils` is a collection of essential functions and CLI tools designed to streamline your Obsidian plugin development process. Whether you're building a plugin from scratch or enhancing an existing one, these utilities are here to simplify your workflow.
4
4
 
@@ -34,10 +34,10 @@ npm install obsidian-dev-utils
34
34
 
35
35
  ## Support
36
36
 
37
- <a href="https://www.buymeacoffee.com/mnaoumov" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" style="height: 60px !important;width: 217px !important;"></a>
37
+ <!-- markdownlint-disable MD033 -->
38
+ <a href="https://www.buymeacoffee.com/mnaoumov" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" height="60" width="217"></a>
39
+ <!-- markdownlint-enable MD033 -->
38
40
 
39
41
  ## License
40
42
 
41
43
  © [Michael Naumov](https://github.com/mnaoumov/)
42
-
43
- [Hot Reload]: https://github.com/pjeby/hot-reload
@@ -0,0 +1,4 @@
1
+ {
2
+ "type": "module",
3
+ "types": "../../../../dist/lib/cjs/ScriptUtils/markdownlint/@types/markdownlint-cli2-config-schema.d.cts"
4
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../../dist/lib/cjs/ScriptUtils/markdownlint/index.cjs",
3
+ "module": "../../../dist/lib/esm/ScriptUtils/markdownlint/index.mjs",
4
+ "type": "module",
5
+ "types": "../../../dist/lib/cjs/ScriptUtils/markdownlint/index.d.cts"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../../dist/lib/cjs/ScriptUtils/markdownlint/markdownlint.cjs",
3
+ "module": "../../../dist/lib/esm/ScriptUtils/markdownlint/markdownlint.mjs",
4
+ "type": "module",
5
+ "types": "../../../dist/lib/cjs/ScriptUtils/markdownlint/markdownlint.d.cts"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../../dist/lib/cjs/ScriptUtils/markdownlint/markdownlint-cli2-config.cjs",
3
+ "module": "../../../dist/lib/esm/ScriptUtils/markdownlint/markdownlint-cli2-config.mjs",
4
+ "type": "module",
5
+ "types": "../../../dist/lib/cjs/ScriptUtils/markdownlint/markdownlint-cli2-config.d.cts"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../dist/lib/cjs/ScriptUtils/markdownlint/index.cjs",
3
+ "module": "../../dist/lib/esm/ScriptUtils/markdownlint/index.mjs",
4
+ "type": "module",
5
+ "types": "../../dist/lib/cjs/ScriptUtils/markdownlint/index.d.cts"
6
+ }
@@ -0,0 +1,5 @@
1
+ import { createJiti } from 'jiti';
2
+ const jiti = createJiti(import.meta.url);
3
+ const { config } = await jiti.import('./.markdownlint-cli2.mts');
4
+ // eslint-disable-next-line import-x/no-default-export -- markdownlint-cli2 infrastructure requires a default export.
5
+ export default config;
@@ -0,0 +1,6 @@
1
+ import type { MarkdownlintCli2ConfigurationSchema } from 'obsidian-dev-utils/ScriptUtils/markdownlint/@types/markdownlint-cli2-config-schema';
2
+ import { obsidianDevUtilsConfig } from 'obsidian-dev-utils/ScriptUtils/markdownlint/markdownlint-cli2-config';
3
+
4
+ export const config: MarkdownlintCli2ConfigurationSchema = {
5
+ ...obsidianDevUtilsConfig
6
+ };
@@ -3,7 +3,64 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function initCjs(){const globalThisRecord=globalThis;globalThisRecord["__name"]??=name;const originalRequire=require;if(originalRequire&&!originalRequire.__isPatched){require=Object.assign(id=>requirePatched(id),originalRequire,{__isPatched:true})}const newFuncs={__extractDefault(){return extractDefault},process(){const browserProcess={browser:true,cwd(){return"/"},env:{},platform:"android"};return browserProcess}};for(const key of Object.keys(newFuncs)){globalThisRecord[key]??=newFuncs[key]?.()}function name(obj){return obj}__name(name,"name");function extractDefault(module){return module&&module.__esModule&&"default"in module?module.default:module}__name(extractDefault,"extractDefault");function requirePatched(id){const module=originalRequire?.(id);if(module){return extractDefault(module)}if(id==="process"||id==="node:process"){console.error(`Module not found: ${id}. Fake process object is returned instead.`);return globalThis.process}console.error(`Module not found: ${id}. Empty object is returned instead.`);return{}}__name(requirePatched,"requirePatched")})();
6
+ (function initCjs() {
7
+ const globalThisRecord = globalThis;
8
+ globalThisRecord['__name'] ??= name;
9
+ const originalRequire = require;
10
+ if (originalRequire && !originalRequire.__isPatched) {
11
+ require = Object.assign(
12
+ (id) => requirePatched(id),
13
+ originalRequire,
14
+ {
15
+ __isPatched: true
16
+ }
17
+ );
18
+ }
19
+
20
+ const newFuncs = {
21
+ __extractDefault() {
22
+ return extractDefault;
23
+ },
24
+ process() {
25
+ const browserProcess = {
26
+ browser: true,
27
+ cwd() {
28
+ return '/';
29
+ },
30
+ env: {},
31
+ platform: 'android'
32
+ };
33
+ return browserProcess;
34
+ }
35
+ };
36
+
37
+ for (const key of Object.keys(newFuncs)) {
38
+ globalThisRecord[key] ??= newFuncs[key]?.();
39
+ }
40
+
41
+ function name(obj) {
42
+ return obj;
43
+ }
44
+
45
+ function extractDefault(module) {
46
+ return module && module.__esModule && 'default' in module ? module.default : module;
47
+ }
48
+
49
+ function requirePatched(id) {
50
+ const module = originalRequire?.(id);
51
+ if (module) {
52
+ return extractDefault(module);
53
+ }
54
+
55
+ if (id === 'process' || id === 'node:process') {
56
+ console.error(`Module not found: ${id}. Fake process object is returned instead.`);
57
+ return globalThis.process;
58
+ }
59
+
60
+ console.error(`Module not found: ${id}. Empty object is returned instead.`);
61
+ return {};
62
+ }
63
+ })();
7
64
 
8
65
  "use strict";
9
66
  var __defProp = Object.defineProperty;
@@ -113,4 +170,4 @@ function waitForAbort(abortSignal, shouldRejectOnAbort) {
113
170
  onAbort,
114
171
  waitForAbort
115
172
  });
116
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL0Fib3J0Q29udHJvbGxlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBBYm9ydENvbnRyb2xsZXIgdXRpbGl0aWVzLlxuICovXG5cbmltcG9ydCB7IG5vb3AgfSBmcm9tICcuL0Z1bmN0aW9uLnRzJztcblxuLyoqXG4gKiBBIGNvbnN0YW50IHJlcHJlc2VudGluZyBhbiBpbmZpbml0ZSB0aW1lb3V0LlxuICovXG5leHBvcnQgY29uc3QgSU5GSU5JVEVfVElNRU9VVCA9IE51bWJlci5QT1NJVElWRV9JTkZJTklUWTtcblxuLyoqXG4gKiBBbiBhYm9ydCBzaWduYWwgdGhhdCBhYm9ydHMgd2hlbiBhbnkgb2YgdGhlIGdpdmVuIGFib3J0IHNpZ25hbHMgYWJvcnQuXG4gKlxuICogQHBhcmFtIG1heWJlQWJvcnRTaWduYWxzIC0gVGhlIGFib3J0IHNpZ25hbHMgdG8gYWJvcnQgd2hlbiBhbnkgb2YgdGhlbSBhYm9ydC5cbiAqIEByZXR1cm5zIFRoZSBhYm9ydCBzaWduYWwgdGhhdCBhYm9ydHMgd2hlbiBhbnkgb2YgdGhlIGdpdmVuIGFib3J0IHNpZ25hbHMgYWJvcnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhYm9ydFNpZ25hbEFueSguLi5tYXliZUFib3J0U2lnbmFsczogKEFib3J0U2lnbmFsIHwgdW5kZWZpbmVkKVtdKTogQWJvcnRTaWduYWwge1xuICBjb25zdCBhYm9ydFNpZ25hbHMgPSBtYXliZUFib3J0U2lnbmFscy5maWx0ZXIoKGFib3J0U2lnbmFsKSA9PiAhIWFib3J0U2lnbmFsKTtcblxuICBpZiAodHlwZW9mIEFib3J0U2lnbmFsLmFueSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiBBYm9ydFNpZ25hbC5hbnkoYWJvcnRTaWduYWxzKTtcbiAgfVxuXG4gIGlmIChhYm9ydFNpZ25hbHMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIGFib3J0U2lnbmFsTmV2ZXIoKTtcbiAgfVxuXG4gIGlmIChhYm9ydFNpZ25hbHMubGVuZ3RoID09PSAxICYmIGFib3J0U2lnbmFsc1swXSkge1xuICAgIHJldHVybiBhYm9ydFNpZ25hbHNbMF07XG4gIH1cblxuICBjb25zdCBhYm9ydENvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG5cbiAgZm9yIChjb25zdCBhYm9ydFNpZ25hbCBvZiBhYm9ydFNpZ25hbHMpIHtcbiAgICBpZiAoYWJvcnRTaWduYWwuYWJvcnRlZCkge1xuICAgICAgcmV0dXJuIGFib3J0U2lnbmFsO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGFib3J0SGFuZGxlclJlbW92ZXJzOiAoKCkgPT4gdm9pZClbXSA9IFtdO1xuXG4gIGZvciAoY29uc3QgYWJvcnRTaWduYWwgb2YgYWJvcnRTaWduYWxzKSB7XG4gICAgYWJvcnRIYW5kbGVyUmVtb3ZlcnMucHVzaChvbkFib3J0KGFib3J0U2lnbmFsLCBoYW5kbGVBYm9ydCkpO1xuICB9XG5cbiAgcmV0dXJuIGFib3J0Q29udHJvbGxlci5zaWduYWw7XG5cbiAgZnVuY3Rpb24gaGFuZGxlQWJvcnQoYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBhYm9ydEhhbmRsZXJSZW1vdmVyIG9mIGFib3J0SGFuZGxlclJlbW92ZXJzKSB7XG4gICAgICBhYm9ydEhhbmRsZXJSZW1vdmVyKCk7XG4gICAgfVxuXG4gICAgYWJvcnRDb250cm9sbGVyLmFib3J0KGFib3J0U2lnbmFsLnJlYXNvbik7XG4gIH1cbn1cblxuLyoqXG4gKiBBbiBhYm9ydCBzaWduYWwgdGhhdCBuZXZlciBhYm9ydHMuXG4gKlxuICogQHJldHVybnMgVGhlIGFib3J0IHNpZ25hbCB0aGF0IG5ldmVyIGFib3J0cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFib3J0U2lnbmFsTmV2ZXIoKTogQWJvcnRTaWduYWwge1xuICByZXR1cm4gbmV3IEFib3J0Q29udHJvbGxlcigpLnNpZ25hbDtcbn1cblxuLyoqXG4gKiBBbiBhYm9ydCBzaWduYWwgdGhhdCBhYm9ydHMgYWZ0ZXIgYSB0aW1lb3V0LlxuICpcbiAqIEBwYXJhbSB0aW1lb3V0SW5NaWxsaXNlY29uZHMgLSBUaGUgdGltZW91dCBpbiBtaWxsaXNlY29uZHMuXG4gKiBAcmV0dXJucyBUaGUgYWJvcnQgc2lnbmFsIHRoYXQgYWJvcnRzIGFmdGVyIGEgdGltZW91dC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFib3J0U2lnbmFsVGltZW91dCh0aW1lb3V0SW5NaWxsaXNlY29uZHM6IG51bWJlcik6IEFib3J0U2lnbmFsIHtcbiAgaWYgKHRpbWVvdXRJbk1pbGxpc2Vjb25kcyA9PT0gSU5GSU5JVEVfVElNRU9VVCkge1xuICAgIHJldHVybiBhYm9ydFNpZ25hbE5ldmVyKCk7XG4gIH1cblxuICBpZiAodHlwZW9mIEFib3J0U2lnbmFsLnRpbWVvdXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gQWJvcnRTaWduYWwudGltZW91dCh0aW1lb3V0SW5NaWxsaXNlY29uZHMpO1xuICB9XG5cbiAgY29uc3QgYWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgYWJvcnRDb250cm9sbGVyLmFib3J0KG5ldyBFcnJvcihgVGltZWQgb3V0IGluICR7U3RyaW5nKHRpbWVvdXRJbk1pbGxpc2Vjb25kcyl9IG1pbGxpc2Vjb25kc2ApKTtcbiAgfSwgdGltZW91dEluTWlsbGlzZWNvbmRzKTtcbiAgcmV0dXJuIGFib3J0Q29udHJvbGxlci5zaWduYWw7XG59XG5cbi8qKlxuICogQWRkcyBhbiBhYm9ydCBsaXN0ZW5lciB0byBhbiBhYm9ydCBzaWduYWwgYW5kIGNhbGxzIHRoZSBjYWxsYmFjayBpZiB0aGUgYWJvcnQgc2lnbmFsIGlzIGFscmVhZHkgYWJvcnRlZC5cbiAqXG4gKiBAcGFyYW0gYWJvcnRTaWduYWwgLSBUaGUgYWJvcnQgc2lnbmFsIHRvIGFkZCB0aGUgbGlzdGVuZXIgdG8uXG4gKiBAcGFyYW0gY2FsbGJhY2sgLSBUaGUgY2FsbGJhY2sgdG8gY2FsbCB3aGVuIHRoZSBhYm9ydCBzaWduYWwgYWJvcnRzLlxuICogQHJldHVybnMgQSBmdW5jdGlvbiB0byByZW1vdmUgdGhlIGFib3J0IGxpc3RlbmVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gb25BYm9ydChhYm9ydFNpZ25hbDogQWJvcnRTaWduYWwsIGNhbGxiYWNrOiAoYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsKSA9PiB2b2lkKTogKCkgPT4gdm9pZCB7XG4gIGlmIChhYm9ydFNpZ25hbC5hYm9ydGVkKSB7XG4gICAgY2FsbGJhY2soYWJvcnRTaWduYWwpO1xuICAgIHJldHVybiBub29wO1xuICB9XG5cbiAgYWJvcnRTaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCB3cmFwcGVkQ2FsbGJhY2ssIHsgb25jZTogdHJ1ZSB9KTtcbiAgcmV0dXJuICgpID0+IHtcbiAgICBhYm9ydFNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIHdyYXBwZWRDYWxsYmFjayk7XG4gIH07XG5cbiAgZnVuY3Rpb24gd3JhcHBlZENhbGxiYWNrKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICBjYWxsYmFjayhldnQudGFyZ2V0IGFzIEFib3J0U2lnbmFsKTtcbiAgfVxufVxuXG4vKipcbiAqIFdhaXRzIGZvciBhbiBhYm9ydCBzaWduYWwgdG8gYWJvcnQgYW5kIHJlc29sdmVzIHdpdGggaXRzIHJlYXNvbi5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBFeHBlY3RlZCB0eXBlIG9mIGBhYm9ydFNpZ25hbC5yZWFzb25gLlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byB3YWl0IGZvci5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgcmVhc29uIG9mIHRoZSBhYm9ydCBzaWduYWwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3YWl0Rm9yQWJvcnQ8VCA9IHVua25vd24+KGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCk6IFByb21pc2U8VD47XG5cbi8qKlxuICogV2FpdHMgZm9yIGFuIGFib3J0IHNpZ25hbCB0byBhYm9ydCBhbmQgcmVqZWN0cyB3aXRoIGl0cyByZWFzb24uXG4gKlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byB3YWl0IGZvci5cbiAqIEBwYXJhbSBzaG91bGRSZWplY3RPbkFib3J0IC0gV2hldGhlciB0byByZWplY3QgdGhlIHByb21pc2UgaWYgdGhlIGFib3J0IHNpZ25hbCBpcyBhYm9ydGVkLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZWplY3RzIHdpdGggdGhlIHJlYXNvbiBvZiB0aGUgYWJvcnQgc2lnbmFsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd2FpdEZvckFib3J0KGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCwgc2hvdWxkUmVqZWN0T25BYm9ydDogdHJ1ZSk6IFByb21pc2U8bmV2ZXI+O1xuXG4vKipcbiAqIFdhaXRzIGZvciBhbiBhYm9ydCBzaWduYWwgdG8gYWJvcnQgYW5kIHJlc29sdmVzIHdpdGggaXRzIHJlYXNvbi5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBFeHBlY3RlZCB0eXBlIG9mIGBhYm9ydFNpZ25hbC5yZWFzb25gLlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byB3YWl0IGZvci5cbiAqIEBwYXJhbSBzaG91bGRSZWplY3RPbkFib3J0IC0gV2hldGhlciB0byByZWplY3QgdGhlIHByb21pc2UgaWYgdGhlIGFib3J0IHNpZ25hbCBpcyBhYm9ydGVkLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aXRoIHRoZSByZWFzb24gb2YgdGhlIGFib3J0IHNpZ25hbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdhaXRGb3JBYm9ydDxUID0gdW5rbm93bj4oYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsLCBzaG91bGRSZWplY3RPbkFib3J0PzogYm9vbGVhbik6IFByb21pc2U8VD4ge1xuICByZXR1cm4gbmV3IFByb21pc2U8VD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIG9uQWJvcnQoYWJvcnRTaWduYWwsICgpID0+IHtcbiAgICAgIGlmIChzaG91bGRSZWplY3RPbkFib3J0KSB7XG4gICAgICAgIHJlamVjdChhYm9ydFNpZ25hbC5yZWFzb24gYXMgRXJyb3IpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzb2x2ZShhYm9ydFNpZ25hbC5yZWFzb24gYXMgVCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsc0JBQXFCO0FBS2QsTUFBTSxtQkFBbUIsT0FBTztBQVFoQyxTQUFTLGtCQUFrQixtQkFBNkQ7QUFDN0YsUUFBTSxlQUFlLGtCQUFrQixPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxXQUFXO0FBRTVFLE1BQUksT0FBTyxZQUFZLFFBQVEsWUFBWTtBQUN6QyxXQUFPLFlBQVksSUFBSSxZQUFZO0FBQUEsRUFDckM7QUFFQSxNQUFJLGFBQWEsV0FBVyxHQUFHO0FBQzdCLFdBQU8saUJBQWlCO0FBQUEsRUFDMUI7QUFFQSxNQUFJLGFBQWEsV0FBVyxLQUFLLGFBQWEsQ0FBQyxHQUFHO0FBQ2hELFdBQU8sYUFBYSxDQUFDO0FBQUEsRUFDdkI7QUFFQSxRQUFNLGtCQUFrQixJQUFJLGdCQUFnQjtBQUU1QyxhQUFXLGVBQWUsY0FBYztBQUN0QyxRQUFJLFlBQVksU0FBUztBQUN2QixhQUFPO0FBQUEsSUFDVDtBQUFBLEVBQ0Y7QUFFQSxRQUFNLHVCQUF1QyxDQUFDO0FBRTlDLGFBQVcsZUFBZSxjQUFjO0FBQ3RDLHlCQUFxQixLQUFLLFFBQVEsYUFBYSxXQUFXLENBQUM7QUFBQSxFQUM3RDtBQUVBLFNBQU8sZ0JBQWdCO0FBRXZCLFdBQVMsWUFBWSxhQUFnQztBQUNuRCxlQUFXLHVCQUF1QixzQkFBc0I7QUFDdEQsMEJBQW9CO0FBQUEsSUFDdEI7QUFFQSxvQkFBZ0IsTUFBTSxZQUFZLE1BQU07QUFBQSxFQUMxQztBQUNGO0FBT08sU0FBUyxtQkFBZ0M7QUFDOUMsU0FBTyxJQUFJLGdCQUFnQixFQUFFO0FBQy9CO0FBUU8sU0FBUyxtQkFBbUIsdUJBQTRDO0FBQzdFLE1BQUksMEJBQTBCLGtCQUFrQjtBQUM5QyxXQUFPLGlCQUFpQjtBQUFBLEVBQzFCO0FBRUEsTUFBSSxPQUFPLFlBQVksWUFBWSxZQUFZO0FBQzdDLFdBQU8sWUFBWSxRQUFRLHFCQUFxQjtBQUFBLEVBQ2xEO0FBRUEsUUFBTSxrQkFBa0IsSUFBSSxnQkFBZ0I7QUFDNUMsU0FBTyxXQUFXLE1BQU07QUFDdEIsb0JBQWdCLE1BQU0sSUFBSSxNQUFNLGdCQUFnQixPQUFPLHFCQUFxQixDQUFDLGVBQWUsQ0FBQztBQUFBLEVBQy9GLEdBQUcscUJBQXFCO0FBQ3hCLFNBQU8sZ0JBQWdCO0FBQ3pCO0FBU08sU0FBUyxRQUFRLGFBQTBCLFVBQTBEO0FBQzFHLE1BQUksWUFBWSxTQUFTO0FBQ3ZCLGFBQVMsV0FBVztBQUNwQixXQUFPO0FBQUEsRUFDVDtBQUVBLGNBQVksaUJBQWlCLFNBQVMsaUJBQWlCLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFDckUsU0FBTyxNQUFNO0FBQ1gsZ0JBQVksb0JBQW9CLFNBQVMsZUFBZTtBQUFBLEVBQzFEO0FBRUEsV0FBUyxnQkFBZ0IsS0FBa0I7QUFDekMsYUFBUyxJQUFJLE1BQXFCO0FBQUEsRUFDcEM7QUFDRjtBQTRCTyxTQUFTLGFBQTBCLGFBQTBCLHFCQUEyQztBQUM3RyxTQUFPLElBQUksUUFBVyxDQUFDLFNBQVMsV0FBVztBQUN6QyxZQUFRLGFBQWEsTUFBTTtBQUN6QixVQUFJLHFCQUFxQjtBQUN2QixlQUFPLFlBQVksTUFBZTtBQUFBLE1BQ3BDLE9BQU87QUFDTCxnQkFBUSxZQUFZLE1BQVc7QUFBQSxNQUNqQztBQUFBLElBQ0YsQ0FBQztBQUFBLEVBQ0gsQ0FBQztBQUNIOyIsCiAgIm5hbWVzIjogW10KfQo=
173
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL0Fib3J0Q29udHJvbGxlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBBYm9ydENvbnRyb2xsZXIgdXRpbGl0aWVzLlxuICovXG5cbmltcG9ydCB7IG5vb3AgfSBmcm9tICcuL0Z1bmN0aW9uLnRzJztcblxuLyoqXG4gKiBBIGNvbnN0YW50IHJlcHJlc2VudGluZyBhbiBpbmZpbml0ZSB0aW1lb3V0LlxuICovXG5leHBvcnQgY29uc3QgSU5GSU5JVEVfVElNRU9VVCA9IE51bWJlci5QT1NJVElWRV9JTkZJTklUWTtcblxuLyoqXG4gKiBBbiBhYm9ydCBzaWduYWwgdGhhdCBhYm9ydHMgd2hlbiBhbnkgb2YgdGhlIGdpdmVuIGFib3J0IHNpZ25hbHMgYWJvcnQuXG4gKlxuICogQHBhcmFtIG1heWJlQWJvcnRTaWduYWxzIC0gVGhlIGFib3J0IHNpZ25hbHMgdG8gYWJvcnQgd2hlbiBhbnkgb2YgdGhlbSBhYm9ydC5cbiAqIEByZXR1cm5zIFRoZSBhYm9ydCBzaWduYWwgdGhhdCBhYm9ydHMgd2hlbiBhbnkgb2YgdGhlIGdpdmVuIGFib3J0IHNpZ25hbHMgYWJvcnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhYm9ydFNpZ25hbEFueSguLi5tYXliZUFib3J0U2lnbmFsczogKEFib3J0U2lnbmFsIHwgdW5kZWZpbmVkKVtdKTogQWJvcnRTaWduYWwge1xuICBjb25zdCBhYm9ydFNpZ25hbHMgPSBtYXliZUFib3J0U2lnbmFscy5maWx0ZXIoKGFib3J0U2lnbmFsKSA9PiAhIWFib3J0U2lnbmFsKTtcblxuICBpZiAodHlwZW9mIEFib3J0U2lnbmFsLmFueSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiBBYm9ydFNpZ25hbC5hbnkoYWJvcnRTaWduYWxzKTtcbiAgfVxuXG4gIGlmIChhYm9ydFNpZ25hbHMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIGFib3J0U2lnbmFsTmV2ZXIoKTtcbiAgfVxuXG4gIGlmIChhYm9ydFNpZ25hbHMubGVuZ3RoID09PSAxICYmIGFib3J0U2lnbmFsc1swXSkge1xuICAgIHJldHVybiBhYm9ydFNpZ25hbHNbMF07XG4gIH1cblxuICBjb25zdCBhYm9ydENvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG5cbiAgZm9yIChjb25zdCBhYm9ydFNpZ25hbCBvZiBhYm9ydFNpZ25hbHMpIHtcbiAgICBpZiAoYWJvcnRTaWduYWwuYWJvcnRlZCkge1xuICAgICAgcmV0dXJuIGFib3J0U2lnbmFsO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGFib3J0SGFuZGxlclJlbW92ZXJzOiAoKCkgPT4gdm9pZClbXSA9IFtdO1xuXG4gIGZvciAoY29uc3QgYWJvcnRTaWduYWwgb2YgYWJvcnRTaWduYWxzKSB7XG4gICAgYWJvcnRIYW5kbGVyUmVtb3ZlcnMucHVzaChvbkFib3J0KGFib3J0U2lnbmFsLCBoYW5kbGVBYm9ydCkpO1xuICB9XG5cbiAgcmV0dXJuIGFib3J0Q29udHJvbGxlci5zaWduYWw7XG5cbiAgZnVuY3Rpb24gaGFuZGxlQWJvcnQoYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBhYm9ydEhhbmRsZXJSZW1vdmVyIG9mIGFib3J0SGFuZGxlclJlbW92ZXJzKSB7XG4gICAgICBhYm9ydEhhbmRsZXJSZW1vdmVyKCk7XG4gICAgfVxuXG4gICAgYWJvcnRDb250cm9sbGVyLmFib3J0KGFib3J0U2lnbmFsLnJlYXNvbik7XG4gIH1cbn1cblxuLyoqXG4gKiBBbiBhYm9ydCBzaWduYWwgdGhhdCBuZXZlciBhYm9ydHMuXG4gKlxuICogQHJldHVybnMgVGhlIGFib3J0IHNpZ25hbCB0aGF0IG5ldmVyIGFib3J0cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFib3J0U2lnbmFsTmV2ZXIoKTogQWJvcnRTaWduYWwge1xuICByZXR1cm4gbmV3IEFib3J0Q29udHJvbGxlcigpLnNpZ25hbDtcbn1cblxuLyoqXG4gKiBBbiBhYm9ydCBzaWduYWwgdGhhdCBhYm9ydHMgYWZ0ZXIgYSB0aW1lb3V0LlxuICpcbiAqIEBwYXJhbSB0aW1lb3V0SW5NaWxsaXNlY29uZHMgLSBUaGUgdGltZW91dCBpbiBtaWxsaXNlY29uZHMuXG4gKiBAcmV0dXJucyBUaGUgYWJvcnQgc2lnbmFsIHRoYXQgYWJvcnRzIGFmdGVyIGEgdGltZW91dC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFib3J0U2lnbmFsVGltZW91dCh0aW1lb3V0SW5NaWxsaXNlY29uZHM6IG51bWJlcik6IEFib3J0U2lnbmFsIHtcbiAgaWYgKHRpbWVvdXRJbk1pbGxpc2Vjb25kcyA9PT0gSU5GSU5JVEVfVElNRU9VVCkge1xuICAgIHJldHVybiBhYm9ydFNpZ25hbE5ldmVyKCk7XG4gIH1cblxuICBpZiAodHlwZW9mIEFib3J0U2lnbmFsLnRpbWVvdXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gQWJvcnRTaWduYWwudGltZW91dCh0aW1lb3V0SW5NaWxsaXNlY29uZHMpO1xuICB9XG5cbiAgY29uc3QgYWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgYWJvcnRDb250cm9sbGVyLmFib3J0KG5ldyBFcnJvcihgVGltZWQgb3V0IGluICR7U3RyaW5nKHRpbWVvdXRJbk1pbGxpc2Vjb25kcyl9IG1pbGxpc2Vjb25kc2ApKTtcbiAgfSwgdGltZW91dEluTWlsbGlzZWNvbmRzKTtcbiAgcmV0dXJuIGFib3J0Q29udHJvbGxlci5zaWduYWw7XG59XG5cbi8qKlxuICogQWRkcyBhbiBhYm9ydCBsaXN0ZW5lciB0byBhbiBhYm9ydCBzaWduYWwgYW5kIGNhbGxzIHRoZSBjYWxsYmFjayBpZiB0aGUgYWJvcnQgc2lnbmFsIGlzIGFscmVhZHkgYWJvcnRlZC5cbiAqXG4gKiBAcGFyYW0gYWJvcnRTaWduYWwgLSBUaGUgYWJvcnQgc2lnbmFsIHRvIGFkZCB0aGUgbGlzdGVuZXIgdG8uXG4gKiBAcGFyYW0gY2FsbGJhY2sgLSBUaGUgY2FsbGJhY2sgdG8gY2FsbCB3aGVuIHRoZSBhYm9ydCBzaWduYWwgYWJvcnRzLlxuICogQHJldHVybnMgQSBmdW5jdGlvbiB0byByZW1vdmUgdGhlIGFib3J0IGxpc3RlbmVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gb25BYm9ydChhYm9ydFNpZ25hbDogQWJvcnRTaWduYWwsIGNhbGxiYWNrOiAoYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsKSA9PiB2b2lkKTogKCkgPT4gdm9pZCB7XG4gIGlmIChhYm9ydFNpZ25hbC5hYm9ydGVkKSB7XG4gICAgY2FsbGJhY2soYWJvcnRTaWduYWwpO1xuICAgIHJldHVybiBub29wO1xuICB9XG5cbiAgYWJvcnRTaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCB3cmFwcGVkQ2FsbGJhY2ssIHsgb25jZTogdHJ1ZSB9KTtcbiAgcmV0dXJuICgpID0+IHtcbiAgICBhYm9ydFNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIHdyYXBwZWRDYWxsYmFjayk7XG4gIH07XG5cbiAgZnVuY3Rpb24gd3JhcHBlZENhbGxiYWNrKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICBjYWxsYmFjayhldnQudGFyZ2V0IGFzIEFib3J0U2lnbmFsKTtcbiAgfVxufVxuXG4vKipcbiAqIFdhaXRzIGZvciBhbiBhYm9ydCBzaWduYWwgdG8gYWJvcnQgYW5kIHJlc29sdmVzIHdpdGggaXRzIHJlYXNvbi5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBFeHBlY3RlZCB0eXBlIG9mIGBhYm9ydFNpZ25hbC5yZWFzb25gLlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byB3YWl0IGZvci5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgcmVhc29uIG9mIHRoZSBhYm9ydCBzaWduYWwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3YWl0Rm9yQWJvcnQ8VCA9IHVua25vd24+KGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCk6IFByb21pc2U8VD47XG5cbi8qKlxuICogV2FpdHMgZm9yIGFuIGFib3J0IHNpZ25hbCB0byBhYm9ydCBhbmQgcmVqZWN0cyB3aXRoIGl0cyByZWFzb24uXG4gKlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byB3YWl0IGZvci5cbiAqIEBwYXJhbSBzaG91bGRSZWplY3RPbkFib3J0IC0gV2hldGhlciB0byByZWplY3QgdGhlIHByb21pc2UgaWYgdGhlIGFib3J0IHNpZ25hbCBpcyBhYm9ydGVkLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZWplY3RzIHdpdGggdGhlIHJlYXNvbiBvZiB0aGUgYWJvcnQgc2lnbmFsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd2FpdEZvckFib3J0KGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCwgc2hvdWxkUmVqZWN0T25BYm9ydDogdHJ1ZSk6IFByb21pc2U8bmV2ZXI+O1xuXG4vKipcbiAqIFdhaXRzIGZvciBhbiBhYm9ydCBzaWduYWwgdG8gYWJvcnQgYW5kIHJlc29sdmVzIHdpdGggaXRzIHJlYXNvbi5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBFeHBlY3RlZCB0eXBlIG9mIGBhYm9ydFNpZ25hbC5yZWFzb25gLlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byB3YWl0IGZvci5cbiAqIEBwYXJhbSBzaG91bGRSZWplY3RPbkFib3J0IC0gV2hldGhlciB0byByZWplY3QgdGhlIHByb21pc2UgaWYgdGhlIGFib3J0IHNpZ25hbCBpcyBhYm9ydGVkLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aXRoIHRoZSByZWFzb24gb2YgdGhlIGFib3J0IHNpZ25hbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdhaXRGb3JBYm9ydDxUID0gdW5rbm93bj4oYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsLCBzaG91bGRSZWplY3RPbkFib3J0PzogYm9vbGVhbik6IFByb21pc2U8VD4ge1xuICByZXR1cm4gbmV3IFByb21pc2U8VD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIG9uQWJvcnQoYWJvcnRTaWduYWwsICgpID0+IHtcbiAgICAgIGlmIChzaG91bGRSZWplY3RPbkFib3J0KSB7XG4gICAgICAgIHJlamVjdChhYm9ydFNpZ25hbC5yZWFzb24gYXMgRXJyb3IpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzb2x2ZShhYm9ydFNpZ25hbC5yZWFzb24gYXMgVCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsc0JBQXFCO0FBS2QsTUFBTSxtQkFBbUIsT0FBTztBQVFoQyxTQUFTLGtCQUFrQixtQkFBNkQ7QUFDN0YsUUFBTSxlQUFlLGtCQUFrQixPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxXQUFXO0FBRTVFLE1BQUksT0FBTyxZQUFZLFFBQVEsWUFBWTtBQUN6QyxXQUFPLFlBQVksSUFBSSxZQUFZO0FBQUEsRUFDckM7QUFFQSxNQUFJLGFBQWEsV0FBVyxHQUFHO0FBQzdCLFdBQU8saUJBQWlCO0FBQUEsRUFDMUI7QUFFQSxNQUFJLGFBQWEsV0FBVyxLQUFLLGFBQWEsQ0FBQyxHQUFHO0FBQ2hELFdBQU8sYUFBYSxDQUFDO0FBQUEsRUFDdkI7QUFFQSxRQUFNLGtCQUFrQixJQUFJLGdCQUFnQjtBQUU1QyxhQUFXLGVBQWUsY0FBYztBQUN0QyxRQUFJLFlBQVksU0FBUztBQUN2QixhQUFPO0FBQUEsSUFDVDtBQUFBLEVBQ0Y7QUFFQSxRQUFNLHVCQUF1QyxDQUFDO0FBRTlDLGFBQVcsZUFBZSxjQUFjO0FBQ3RDLHlCQUFxQixLQUFLLFFBQVEsYUFBYSxXQUFXLENBQUM7QUFBQSxFQUM3RDtBQUVBLFNBQU8sZ0JBQWdCO0FBRXZCLFdBQVMsWUFBWSxhQUFnQztBQUNuRCxlQUFXLHVCQUF1QixzQkFBc0I7QUFDdEQsMEJBQW9CO0FBQUEsSUFDdEI7QUFFQSxvQkFBZ0IsTUFBTSxZQUFZLE1BQU07QUFBQSxFQUMxQztBQUNGO0FBT08sU0FBUyxtQkFBZ0M7QUFDOUMsU0FBTyxJQUFJLGdCQUFnQixFQUFFO0FBQy9CO0FBUU8sU0FBUyxtQkFBbUIsdUJBQTRDO0FBQzdFLE1BQUksMEJBQTBCLGtCQUFrQjtBQUM5QyxXQUFPLGlCQUFpQjtBQUFBLEVBQzFCO0FBRUEsTUFBSSxPQUFPLFlBQVksWUFBWSxZQUFZO0FBQzdDLFdBQU8sWUFBWSxRQUFRLHFCQUFxQjtBQUFBLEVBQ2xEO0FBRUEsUUFBTSxrQkFBa0IsSUFBSSxnQkFBZ0I7QUFDNUMsU0FBTyxXQUFXLE1BQU07QUFDdEIsb0JBQWdCLE1BQU0sSUFBSSxNQUFNLGdCQUFnQixPQUFPLHFCQUFxQixDQUFDLGVBQWUsQ0FBQztBQUFBLEVBQy9GLEdBQUcscUJBQXFCO0FBQ3hCLFNBQU8sZ0JBQWdCO0FBQ3pCO0FBU08sU0FBUyxRQUFRLGFBQTBCLFVBQTBEO0FBQzFHLE1BQUksWUFBWSxTQUFTO0FBQ3ZCLGFBQVMsV0FBVztBQUNwQixXQUFPO0FBQUEsRUFDVDtBQUVBLGNBQVksaUJBQWlCLFNBQVMsaUJBQWlCLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFDckUsU0FBTyxNQUFNO0FBQ1gsZ0JBQVksb0JBQW9CLFNBQVMsZUFBZTtBQUFBLEVBQzFEO0FBRUEsV0FBUyxnQkFBZ0IsS0FBa0I7QUFDekMsYUFBUyxJQUFJLE1BQXFCO0FBQUEsRUFDcEM7QUFDRjtBQTRCTyxTQUFTLGFBQTBCLGFBQTBCLHFCQUEyQztBQUM3RyxTQUFPLElBQUksUUFBVyxDQUFDLFNBQVMsV0FBVztBQUN6QyxZQUFRLGFBQWEsTUFBTTtBQUN6QixVQUFJLHFCQUFxQjtBQUN2QixlQUFPLFlBQVksTUFBZTtBQUFBLE1BQ3BDLE9BQU87QUFDTCxnQkFBUSxZQUFZLE1BQVc7QUFBQSxNQUNqQztBQUFBLElBQ0YsQ0FBQztBQUFBLEVBQ0gsQ0FBQztBQUNIOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -3,7 +3,64 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function initCjs(){const globalThisRecord=globalThis;globalThisRecord["__name"]??=name;const originalRequire=require;if(originalRequire&&!originalRequire.__isPatched){require=Object.assign(id=>requirePatched(id),originalRequire,{__isPatched:true})}const newFuncs={__extractDefault(){return extractDefault},process(){const browserProcess={browser:true,cwd(){return"/"},env:{},platform:"android"};return browserProcess}};for(const key of Object.keys(newFuncs)){globalThisRecord[key]??=newFuncs[key]?.()}function name(obj){return obj}__name(name,"name");function extractDefault(module){return module&&module.__esModule&&"default"in module?module.default:module}__name(extractDefault,"extractDefault");function requirePatched(id){const module=originalRequire?.(id);if(module){return extractDefault(module)}if(id==="process"||id==="node:process"){console.error(`Module not found: ${id}. Fake process object is returned instead.`);return globalThis.process}console.error(`Module not found: ${id}. Empty object is returned instead.`);return{}}__name(requirePatched,"requirePatched")})();
6
+ (function initCjs() {
7
+ const globalThisRecord = globalThis;
8
+ globalThisRecord['__name'] ??= name;
9
+ const originalRequire = require;
10
+ if (originalRequire && !originalRequire.__isPatched) {
11
+ require = Object.assign(
12
+ (id) => requirePatched(id),
13
+ originalRequire,
14
+ {
15
+ __isPatched: true
16
+ }
17
+ );
18
+ }
19
+
20
+ const newFuncs = {
21
+ __extractDefault() {
22
+ return extractDefault;
23
+ },
24
+ process() {
25
+ const browserProcess = {
26
+ browser: true,
27
+ cwd() {
28
+ return '/';
29
+ },
30
+ env: {},
31
+ platform: 'android'
32
+ };
33
+ return browserProcess;
34
+ }
35
+ };
36
+
37
+ for (const key of Object.keys(newFuncs)) {
38
+ globalThisRecord[key] ??= newFuncs[key]?.();
39
+ }
40
+
41
+ function name(obj) {
42
+ return obj;
43
+ }
44
+
45
+ function extractDefault(module) {
46
+ return module && module.__esModule && 'default' in module ? module.default : module;
47
+ }
48
+
49
+ function requirePatched(id) {
50
+ const module = originalRequire?.(id);
51
+ if (module) {
52
+ return extractDefault(module);
53
+ }
54
+
55
+ if (id === 'process' || id === 'node:process') {
56
+ console.error(`Module not found: ${id}. Fake process object is returned instead.`);
57
+ return globalThis.process;
58
+ }
59
+
60
+ console.error(`Module not found: ${id}. Empty object is returned instead.`);
61
+ return {};
62
+ }
63
+ })();
7
64
 
8
65
  "use strict";
9
66
  var __defProp = Object.defineProperty;
@@ -70,4 +127,4 @@ function uniqueInPlace(arr) {
70
127
  unique,
71
128
  uniqueInPlace
72
129
  });
73
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL0FycmF5LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEFycmF5IHV0aWxpdGllcy5cbiAqL1xuXG4vKipcbiAqIEZpbHRlciBhbiBhcnJheSBpbiBwbGFjZS5cbiAqXG4gKiBAcGFyYW0gYXJyIC0gVGhlIGFycmF5IHRvIGZpbHRlci5cbiAqIEBwYXJhbSBwcmVkaWNhdGUgLSBUaGUgcHJlZGljYXRlIHRvIGZpbHRlciB0aGUgYXJyYXkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaWx0ZXJJblBsYWNlPFQ+KGFycjogVFtdLCBwcmVkaWNhdGU6ICh2YWx1ZTogVCwgaW5kZXg6IG51bWJlciwgYXJyYXk6IFRbXSkgPT4gYm9vbGVhbik6IHZvaWQge1xuICBjb25zdCBsZW5ndGggPSBhcnIubGVuZ3RoO1xuICBsZXQgd3JpdGVJbmRleCA9IDA7XG4gIGZvciAobGV0IHJlYWRJbmRleCA9IDA7IHJlYWRJbmRleCA8IGxlbmd0aDsgcmVhZEluZGV4KyspIHtcbiAgICBpZiAoIU9iamVjdC5oYXNPd24oYXJyLCByZWFkSW5kZXgpKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBjb25zdCBjdXJyZW50ID0gYXJyW3JlYWRJbmRleF0gYXMgVDtcbiAgICBpZiAocHJlZGljYXRlKGN1cnJlbnQsIHJlYWRJbmRleCwgYXJyKSkge1xuICAgICAgYXJyW3dyaXRlSW5kZXgrK10gPSBjdXJyZW50O1xuICAgIH1cbiAgfVxuICBhcnIubGVuZ3RoID0gd3JpdGVJbmRleDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgZHVwbGljYXRlcyBmcm9tIGFuIGFycmF5LlxuICpcbiAqIEBwYXJhbSBhcnIgLSBUaGUgYXJyYXkgdG8gcmVtb3ZlIGR1cGxpY2F0ZXMgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSBhcnJheSB3aXRoIGR1cGxpY2F0ZXMgcmVtb3ZlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVuaXF1ZTxUPihhcnI6IHJlYWRvbmx5IFRbXSk6IFRbXSB7XG4gIGNvbnN0IHNldCA9IG5ldyBTZXQ8VD4oKTtcbiAgcmV0dXJuIGFyci5maWx0ZXIoKHZhbHVlKSA9PiB7XG4gICAgaWYgKHNldC5oYXModmFsdWUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHNldC5hZGQodmFsdWUpO1xuICAgIHJldHVybiB0cnVlO1xuICB9KTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgZHVwbGljYXRlcyBmcm9tIGFuIGFycmF5IGluIHBsYWNlLlxuICpcbiAqIEBwYXJhbSBhcnIgLSBUaGUgYXJyYXkgdG8gcmVtb3ZlIGR1cGxpY2F0ZXMgZnJvbS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVuaXF1ZUluUGxhY2UoYXJyOiB1bmtub3duW10pOiB2b2lkIHtcbiAgY29uc3Qgc2V0ID0gbmV3IFNldDx1bmtub3duPigpO1xuICBmaWx0ZXJJblBsYWNlKGFyciwgKHZhbHVlKSA9PiB7XG4gICAgaWYgKHNldC5oYXModmFsdWUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHNldC5hZGQodmFsdWUpO1xuICAgIHJldHVybiB0cnVlO1xuICB9KTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVlPLFNBQVMsY0FBaUIsS0FBVSxXQUFtRTtBQUM1RyxRQUFNLFNBQVMsSUFBSTtBQUNuQixNQUFJLGFBQWE7QUFDakIsV0FBUyxZQUFZLEdBQUcsWUFBWSxRQUFRLGFBQWE7QUFDdkQsUUFBSSxDQUFDLE9BQU8sT0FBTyxLQUFLLFNBQVMsR0FBRztBQUNsQztBQUFBLElBQ0Y7QUFFQSxVQUFNLFVBQVUsSUFBSSxTQUFTO0FBQzdCLFFBQUksVUFBVSxTQUFTLFdBQVcsR0FBRyxHQUFHO0FBQ3RDLFVBQUksWUFBWSxJQUFJO0FBQUEsSUFDdEI7QUFBQSxFQUNGO0FBQ0EsTUFBSSxTQUFTO0FBQ2Y7QUFRTyxTQUFTLE9BQVUsS0FBd0I7QUFDaEQsUUFBTSxNQUFNLG9CQUFJLElBQU87QUFDdkIsU0FBTyxJQUFJLE9BQU8sQ0FBQyxVQUFVO0FBQzNCLFFBQUksSUFBSSxJQUFJLEtBQUssR0FBRztBQUNsQixhQUFPO0FBQUEsSUFDVDtBQUNBLFFBQUksSUFBSSxLQUFLO0FBQ2IsV0FBTztBQUFBLEVBQ1QsQ0FBQztBQUNIO0FBT08sU0FBUyxjQUFjLEtBQXNCO0FBQ2xELFFBQU0sTUFBTSxvQkFBSSxJQUFhO0FBQzdCLGdCQUFjLEtBQUssQ0FBQyxVQUFVO0FBQzVCLFFBQUksSUFBSSxJQUFJLEtBQUssR0FBRztBQUNsQixhQUFPO0FBQUEsSUFDVDtBQUNBLFFBQUksSUFBSSxLQUFLO0FBQ2IsV0FBTztBQUFBLEVBQ1QsQ0FBQztBQUNIOyIsCiAgIm5hbWVzIjogW10KfQo=
130
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL0FycmF5LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEFycmF5IHV0aWxpdGllcy5cbiAqL1xuXG4vKipcbiAqIEZpbHRlciBhbiBhcnJheSBpbiBwbGFjZS5cbiAqXG4gKiBAcGFyYW0gYXJyIC0gVGhlIGFycmF5IHRvIGZpbHRlci5cbiAqIEBwYXJhbSBwcmVkaWNhdGUgLSBUaGUgcHJlZGljYXRlIHRvIGZpbHRlciB0aGUgYXJyYXkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaWx0ZXJJblBsYWNlPFQ+KGFycjogVFtdLCBwcmVkaWNhdGU6ICh2YWx1ZTogVCwgaW5kZXg6IG51bWJlciwgYXJyYXk6IFRbXSkgPT4gYm9vbGVhbik6IHZvaWQge1xuICBjb25zdCBsZW5ndGggPSBhcnIubGVuZ3RoO1xuICBsZXQgd3JpdGVJbmRleCA9IDA7XG4gIGZvciAobGV0IHJlYWRJbmRleCA9IDA7IHJlYWRJbmRleCA8IGxlbmd0aDsgcmVhZEluZGV4KyspIHtcbiAgICBpZiAoIU9iamVjdC5oYXNPd24oYXJyLCByZWFkSW5kZXgpKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBjb25zdCBjdXJyZW50ID0gYXJyW3JlYWRJbmRleF0gYXMgVDtcbiAgICBpZiAocHJlZGljYXRlKGN1cnJlbnQsIHJlYWRJbmRleCwgYXJyKSkge1xuICAgICAgYXJyW3dyaXRlSW5kZXgrK10gPSBjdXJyZW50O1xuICAgIH1cbiAgfVxuICBhcnIubGVuZ3RoID0gd3JpdGVJbmRleDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgZHVwbGljYXRlcyBmcm9tIGFuIGFycmF5LlxuICpcbiAqIEBwYXJhbSBhcnIgLSBUaGUgYXJyYXkgdG8gcmVtb3ZlIGR1cGxpY2F0ZXMgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSBhcnJheSB3aXRoIGR1cGxpY2F0ZXMgcmVtb3ZlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVuaXF1ZTxUPihhcnI6IHJlYWRvbmx5IFRbXSk6IFRbXSB7XG4gIGNvbnN0IHNldCA9IG5ldyBTZXQ8VD4oKTtcbiAgcmV0dXJuIGFyci5maWx0ZXIoKHZhbHVlKSA9PiB7XG4gICAgaWYgKHNldC5oYXModmFsdWUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHNldC5hZGQodmFsdWUpO1xuICAgIHJldHVybiB0cnVlO1xuICB9KTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgZHVwbGljYXRlcyBmcm9tIGFuIGFycmF5IGluIHBsYWNlLlxuICpcbiAqIEBwYXJhbSBhcnIgLSBUaGUgYXJyYXkgdG8gcmVtb3ZlIGR1cGxpY2F0ZXMgZnJvbS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVuaXF1ZUluUGxhY2UoYXJyOiB1bmtub3duW10pOiB2b2lkIHtcbiAgY29uc3Qgc2V0ID0gbmV3IFNldDx1bmtub3duPigpO1xuICBmaWx0ZXJJblBsYWNlKGFyciwgKHZhbHVlKSA9PiB7XG4gICAgaWYgKHNldC5oYXModmFsdWUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHNldC5hZGQodmFsdWUpO1xuICAgIHJldHVybiB0cnVlO1xuICB9KTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVlPLFNBQVMsY0FBaUIsS0FBVSxXQUFtRTtBQUM1RyxRQUFNLFNBQVMsSUFBSTtBQUNuQixNQUFJLGFBQWE7QUFDakIsV0FBUyxZQUFZLEdBQUcsWUFBWSxRQUFRLGFBQWE7QUFDdkQsUUFBSSxDQUFDLE9BQU8sT0FBTyxLQUFLLFNBQVMsR0FBRztBQUNsQztBQUFBLElBQ0Y7QUFFQSxVQUFNLFVBQVUsSUFBSSxTQUFTO0FBQzdCLFFBQUksVUFBVSxTQUFTLFdBQVcsR0FBRyxHQUFHO0FBQ3RDLFVBQUksWUFBWSxJQUFJO0FBQUEsSUFDdEI7QUFBQSxFQUNGO0FBQ0EsTUFBSSxTQUFTO0FBQ2Y7QUFRTyxTQUFTLE9BQVUsS0FBd0I7QUFDaEQsUUFBTSxNQUFNLG9CQUFJLElBQU87QUFDdkIsU0FBTyxJQUFJLE9BQU8sQ0FBQyxVQUFVO0FBQzNCLFFBQUksSUFBSSxJQUFJLEtBQUssR0FBRztBQUNsQixhQUFPO0FBQUEsSUFDVDtBQUNBLFFBQUksSUFBSSxLQUFLO0FBQ2IsV0FBTztBQUFBLEVBQ1QsQ0FBQztBQUNIO0FBT08sU0FBUyxjQUFjLEtBQXNCO0FBQ2xELFFBQU0sTUFBTSxvQkFBSSxJQUFhO0FBQzdCLGdCQUFjLEtBQUssQ0FBQyxVQUFVO0FBQzVCLFFBQUksSUFBSSxJQUFJLEtBQUssR0FBRztBQUNsQixhQUFPO0FBQUEsSUFDVDtBQUNBLFFBQUksSUFBSSxLQUFLO0FBQ2IsV0FBTztBQUFBLEVBQ1QsQ0FBQztBQUNIOyIsCiAgIm5hbWVzIjogW10KfQo=