obsidian-dev-utils 43.2.5 → 43.2.6

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 (165) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/lib/cjs/AbortController.cjs +1 -1
  3. package/dist/lib/cjs/Array.cjs +1 -1
  4. package/dist/lib/cjs/Async.cjs +1 -1
  5. package/dist/lib/cjs/AsyncEvents.cjs +1 -1
  6. package/dist/lib/cjs/Blob.cjs +1 -1
  7. package/dist/lib/cjs/CssClass.cjs +1 -1
  8. package/dist/lib/cjs/Debug.cjs +1 -1
  9. package/dist/lib/cjs/DebugController.cjs +1 -1
  10. package/dist/lib/cjs/Enum.cjs +1 -1
  11. package/dist/lib/cjs/Error.cjs +1 -1
  12. package/dist/lib/cjs/Function.cjs +1 -1
  13. package/dist/lib/cjs/HTMLElement.cjs +1 -1
  14. package/dist/lib/cjs/Library.cjs +2 -2
  15. package/dist/lib/cjs/ObjectUtils.cjs +1 -1
  16. package/dist/lib/cjs/Path.cjs +1 -1
  17. package/dist/lib/cjs/RegExp.cjs +1 -1
  18. package/dist/lib/cjs/ScriptUtils/CliUtils.cjs +1 -1
  19. package/dist/lib/cjs/ScriptUtils/CodeGenerator.cjs +1 -1
  20. package/dist/lib/cjs/ScriptUtils/ESLint/ESLint.cjs +1 -1
  21. package/dist/lib/cjs/ScriptUtils/ESLint/eslint.config.cjs +1 -1
  22. package/dist/lib/cjs/ScriptUtils/ESLint/index.cjs +1 -1
  23. package/dist/lib/cjs/ScriptUtils/Exec.cjs +1 -1
  24. package/dist/lib/cjs/ScriptUtils/Fs.cjs +1 -1
  25. package/dist/lib/cjs/ScriptUtils/JSON.cjs +1 -1
  26. package/dist/lib/cjs/ScriptUtils/NodeModules.cjs +1 -1
  27. package/dist/lib/cjs/ScriptUtils/Npm.cjs +1 -1
  28. package/dist/lib/cjs/ScriptUtils/NpmPublish.cjs +1 -1
  29. package/dist/lib/cjs/ScriptUtils/NpmRun.cjs +1 -1
  30. package/dist/lib/cjs/ScriptUtils/ObsidianDevUtilsRepoPaths.cjs +1 -1
  31. package/dist/lib/cjs/ScriptUtils/Root.cjs +1 -1
  32. package/dist/lib/cjs/ScriptUtils/build.cjs +1 -1
  33. package/dist/lib/cjs/ScriptUtils/cli.cjs +1 -1
  34. package/dist/lib/cjs/ScriptUtils/esbuild/Dependency.cjs +1 -1
  35. package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.cjs +1 -1
  36. package/dist/lib/cjs/ScriptUtils/esbuild/changeExtensionPlugin.cjs +1 -1
  37. package/dist/lib/cjs/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.cjs +1 -1
  38. package/dist/lib/cjs/ScriptUtils/esbuild/customEsbuildOptionsPlugin.cjs +1 -1
  39. package/dist/lib/cjs/ScriptUtils/esbuild/fixEsmPlugin.cjs +1 -1
  40. package/dist/lib/cjs/ScriptUtils/esbuild/fixSourceMapsPlugin.cjs +1 -1
  41. package/dist/lib/cjs/ScriptUtils/esbuild/index.cjs +1 -1
  42. package/dist/lib/cjs/ScriptUtils/esbuild/preprocessPlugin.cjs +3 -3
  43. package/dist/lib/cjs/ScriptUtils/esbuild/renameCssPlugin.cjs +1 -1
  44. package/dist/lib/cjs/ScriptUtils/esbuild/svelteWrapperPlugin.cjs +1 -1
  45. package/dist/lib/cjs/ScriptUtils/format.cjs +1 -1
  46. package/dist/lib/cjs/ScriptUtils/index.cjs +1 -1
  47. package/dist/lib/cjs/ScriptUtils/markdownlint/index.cjs +1 -1
  48. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint-cli2-config.cjs +1 -1
  49. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint.cjs +1 -1
  50. package/dist/lib/cjs/ScriptUtils/spellcheck.cjs +1 -1
  51. package/dist/lib/cjs/ScriptUtils/version.cjs +1 -1
  52. package/dist/lib/cjs/String.cjs +1 -1
  53. package/dist/lib/cjs/Transformers/DateTransformer.cjs +1 -1
  54. package/dist/lib/cjs/Transformers/DurationTransformer.cjs +1 -1
  55. package/dist/lib/cjs/Transformers/GroupTransformer.cjs +1 -1
  56. package/dist/lib/cjs/Transformers/MapTransformer.cjs +1 -1
  57. package/dist/lib/cjs/Transformers/SetTransformer.cjs +1 -1
  58. package/dist/lib/cjs/Transformers/SkipPrivatePropertyTransformer.cjs +1 -1
  59. package/dist/lib/cjs/Transformers/Transformer.cjs +1 -1
  60. package/dist/lib/cjs/Transformers/TwoWayMapTransformer.cjs +1 -1
  61. package/dist/lib/cjs/Transformers/TypedTransformer.cjs +1 -1
  62. package/dist/lib/cjs/Transformers/index.cjs +1 -1
  63. package/dist/lib/cjs/TwoWayMap.cjs +1 -1
  64. package/dist/lib/cjs/Type.cjs +1 -1
  65. package/dist/lib/cjs/ValueProvider.cjs +1 -1
  66. package/dist/lib/cjs/codemirror/StateFieldSpec.cjs +1 -1
  67. package/dist/lib/cjs/codemirror/index.cjs +1 -1
  68. package/dist/lib/cjs/index.cjs +1 -1
  69. package/dist/lib/cjs/obsidian/App.cjs +1 -1
  70. package/dist/lib/cjs/obsidian/AttachmentPath.cjs +1 -1
  71. package/dist/lib/cjs/obsidian/Backlink.cjs +1 -1
  72. package/dist/lib/cjs/obsidian/Callout.cjs +1 -1
  73. package/dist/lib/cjs/obsidian/CodeBlockMarkdownInformation.cjs +1 -1
  74. package/dist/lib/cjs/obsidian/Commands/AbstractFileCommandBase.cjs +1 -1
  75. package/dist/lib/cjs/obsidian/Commands/CommandBase.cjs +1 -1
  76. package/dist/lib/cjs/obsidian/Commands/EditorCommandBase.cjs +1 -1
  77. package/dist/lib/cjs/obsidian/Commands/FileCommandBase.cjs +1 -1
  78. package/dist/lib/cjs/obsidian/Commands/FolderCommandBase.cjs +1 -1
  79. package/dist/lib/cjs/obsidian/Commands/NonEditorCommandBase.cjs +1 -1
  80. package/dist/lib/cjs/obsidian/Commands/index.cjs +1 -1
  81. package/dist/lib/cjs/obsidian/Components/AsyncEventsComponent.cjs +1 -1
  82. package/dist/lib/cjs/obsidian/Components/SettingComponents/CheckboxComponent.cjs +1 -1
  83. package/dist/lib/cjs/obsidian/Components/SettingComponents/CodeHighlighterComponent.cjs +1 -1
  84. package/dist/lib/cjs/obsidian/Components/SettingComponents/DateComponent.cjs +1 -1
  85. package/dist/lib/cjs/obsidian/Components/SettingComponents/DateTimeComponent.cjs +1 -1
  86. package/dist/lib/cjs/obsidian/Components/SettingComponents/EmailComponent.cjs +1 -1
  87. package/dist/lib/cjs/obsidian/Components/SettingComponents/FileComponent.cjs +1 -1
  88. package/dist/lib/cjs/obsidian/Components/SettingComponents/MonthComponent.cjs +1 -1
  89. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleDropdownComponent.cjs +1 -1
  90. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleEmailComponent.cjs +1 -1
  91. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleFileComponent.cjs +1 -1
  92. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleTextComponent.cjs +1 -1
  93. package/dist/lib/cjs/obsidian/Components/SettingComponents/NumberComponent.cjs +1 -1
  94. package/dist/lib/cjs/obsidian/Components/SettingComponents/PasswordComponent.cjs +1 -1
  95. package/dist/lib/cjs/obsidian/Components/SettingComponents/SettingComponentWrapper.cjs +1 -1
  96. package/dist/lib/cjs/obsidian/Components/SettingComponents/TelephoneComponent.cjs +1 -1
  97. package/dist/lib/cjs/obsidian/Components/SettingComponents/TextBasedComponent.cjs +1 -1
  98. package/dist/lib/cjs/obsidian/Components/SettingComponents/TimeComponent.cjs +1 -1
  99. package/dist/lib/cjs/obsidian/Components/SettingComponents/TriStateCheckboxComponent.cjs +1 -1
  100. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedDropdownComponent.cjs +1 -1
  101. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.cjs +1 -1
  102. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedRangeTextComponent.cjs +1 -1
  103. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedTextComponent.cjs +1 -1
  104. package/dist/lib/cjs/obsidian/Components/SettingComponents/UrlComponent.cjs +1 -1
  105. package/dist/lib/cjs/obsidian/Components/SettingComponents/ValidatorComponent.cjs +1 -1
  106. package/dist/lib/cjs/obsidian/Components/SettingComponents/ValueComponentWithChangeTracking.cjs +1 -1
  107. package/dist/lib/cjs/obsidian/Components/SettingComponents/WeekComponent.cjs +1 -1
  108. package/dist/lib/cjs/obsidian/Components/SettingComponents/index.cjs +1 -1
  109. package/dist/lib/cjs/obsidian/Components/index.cjs +1 -1
  110. package/dist/lib/cjs/obsidian/Dataview.cjs +1 -1
  111. package/dist/lib/cjs/obsidian/DataviewLink.cjs +1 -1
  112. package/dist/lib/cjs/obsidian/FileChange.cjs +1 -1
  113. package/dist/lib/cjs/obsidian/FileManager.cjs +1 -1
  114. package/dist/lib/cjs/obsidian/FileSystem.cjs +1 -1
  115. package/dist/lib/cjs/obsidian/Frontmatter.cjs +1 -1
  116. package/dist/lib/cjs/obsidian/FrontmatterLinkCacheWithOffsets.cjs +1 -1
  117. package/dist/lib/cjs/obsidian/Link.cjs +1 -1
  118. package/dist/lib/cjs/obsidian/Logger.cjs +1 -1
  119. package/dist/lib/cjs/obsidian/Loop.cjs +1 -1
  120. package/dist/lib/cjs/obsidian/Markdown.cjs +1 -1
  121. package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.cjs +1 -1
  122. package/dist/lib/cjs/obsidian/MarkdownView.cjs +1 -1
  123. package/dist/lib/cjs/obsidian/MetadataCache.cjs +1 -1
  124. package/dist/lib/cjs/obsidian/Modals/Alert.cjs +1 -1
  125. package/dist/lib/cjs/obsidian/Modals/Confirm.cjs +1 -1
  126. package/dist/lib/cjs/obsidian/Modals/ModalBase.cjs +1 -1
  127. package/dist/lib/cjs/obsidian/Modals/Prompt.cjs +1 -1
  128. package/dist/lib/cjs/obsidian/Modals/SelectItem.cjs +1 -1
  129. package/dist/lib/cjs/obsidian/Modals/index.cjs +1 -1
  130. package/dist/lib/cjs/obsidian/MonkeyAround.cjs +1 -1
  131. package/dist/lib/cjs/obsidian/ObsidianSettings.cjs +1 -1
  132. package/dist/lib/cjs/obsidian/Pdf.cjs +1 -1
  133. package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.cjs +1 -1
  134. package/dist/lib/cjs/obsidian/Plugin/Plugin.cjs +1 -1
  135. package/dist/lib/cjs/obsidian/Plugin/PluginBase.cjs +1 -1
  136. package/dist/lib/cjs/obsidian/Plugin/PluginContext.cjs +1 -1
  137. package/dist/lib/cjs/obsidian/Plugin/PluginId.cjs +1 -1
  138. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.cjs +1 -1
  139. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.cjs +1 -1
  140. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsWrapper.cjs +1 -1
  141. package/dist/lib/cjs/obsidian/Plugin/PluginTypesBase.cjs +1 -1
  142. package/dist/lib/cjs/obsidian/Plugin/index.cjs +1 -1
  143. package/dist/lib/cjs/obsidian/Queue.cjs +1 -1
  144. package/dist/lib/cjs/obsidian/React/AppContext.cjs +1 -1
  145. package/dist/lib/cjs/obsidian/React/index.cjs +1 -1
  146. package/dist/lib/cjs/obsidian/Reference.cjs +1 -1
  147. package/dist/lib/cjs/obsidian/RenameDeleteHandler.cjs +1 -1
  148. package/dist/lib/cjs/obsidian/ResourceUrl.cjs +1 -1
  149. package/dist/lib/cjs/obsidian/SettingEx.cjs +1 -1
  150. package/dist/lib/cjs/obsidian/Validation.cjs +1 -1
  151. package/dist/lib/cjs/obsidian/Vault.cjs +1 -1
  152. package/dist/lib/cjs/obsidian/VaultEx.cjs +1 -1
  153. package/dist/lib/cjs/obsidian/Workspace.cjs +1 -1
  154. package/dist/lib/cjs/obsidian/i18n/CustomTypeOptionsBase.cjs +1 -1
  155. package/dist/lib/cjs/obsidian/i18n/DefaultTranslationsBase.cjs +1 -1
  156. package/dist/lib/cjs/obsidian/i18n/i18n.cjs +1 -1
  157. package/dist/lib/cjs/obsidian/i18n/index.cjs +1 -1
  158. package/dist/lib/cjs/obsidian/i18n/locales/en.cjs +1 -1
  159. package/dist/lib/cjs/obsidian/i18n/locales/index.cjs +1 -1
  160. package/dist/lib/cjs/obsidian/i18n/locales/translationsMap.cjs +1 -1
  161. package/dist/lib/cjs/obsidian/index.cjs +1 -1
  162. package/dist/lib/cjs/url.cjs +1 -1
  163. package/dist/lib/esm/Library.mjs +1 -1
  164. package/dist/lib/esm/ScriptUtils/esbuild/preprocessPlugin.mjs +2 -2
  165. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 43.2.6
4
+
5
+ - fix: better fix for missing window
6
+
3
7
  ## 43.2.5
4
8
 
5
9
  - fix: window can be optional
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -90,7 +90,7 @@ __export(Library_exports, {
90
90
  LIBRARY_VERSION: () => LIBRARY_VERSION
91
91
  });
92
92
  module.exports = __toCommonJS(Library_exports);
93
- const LIBRARY_VERSION = "43.2.5";
93
+ const LIBRARY_VERSION = "43.2.6";
94
94
  const LIBRARY_NAME = "obsidian-dev-utils";
95
95
  const LIBRARY_STYLES = ".obsidian-dev-utils.code-highlighter-component textarea, .obsidian-dev-utils.code-highlighter-component pre, .obsidian-dev-utils.code-highlighter-component code {\n font-family: var(--font-monospace);\n line-height: var(--line-height-normal);\n margin: 0;\n}\n.obsidian-dev-utils.code-highlighter-component textarea, .obsidian-dev-utils.code-highlighter-component code {\n font-size: var(--code-size);\n}\n.obsidian-dev-utils.code-highlighter-component textarea {\n background: transparent;\n color: transparent;\n z-index: 2;\n width: 20em;\n height: 10em;\n}\n.obsidian-dev-utils.code-highlighter-component pre {\n position: absolute;\n pointer-events: none;\n border: var(--input-border-width) solid transparent;\n overflow: auto;\n inset: 0;\n padding: var(--size-4-1) var(--size-4-2);\n z-index: 1;\n}\n.obsidian-dev-utils.code-highlighter-component pre::after {\n content: \"\";\n display: block;\n height: var(--bottom-gap, 0);\n}\n.obsidian-dev-utils.code-highlighter-component pre.is-placeholder {\n opacity: 0.6;\n}\n.obsidian-dev-utils.code-highlighter-component code {\n display: block;\n padding: 0;\n}\n\n.obsidian-dev-utils input[type=url] {\n height: var(--input-height);\n}\n.obsidian-dev-utils input[type=month],\n.obsidian-dev-utils input[type=tel],\n.obsidian-dev-utils input[type=time],\n.obsidian-dev-utils input[type=url],\n.obsidian-dev-utils input[type=week] {\n -webkit-app-region: no-drag;\n background: var(--background-modifier-form-field);\n border: var(--input-border-width) solid var(--background-modifier-border);\n color: var(--text-normal);\n font-family: inherit;\n padding: var(--size-4-1) var(--size-4-2);\n font-size: var(--font-ui-small);\n border-radius: var(--input-radius);\n outline: none;\n}\n@media (hover: hover) {\n .obsidian-dev-utils input[type=month]:hover,\n .obsidian-dev-utils input[type=tel]:hover,\n .obsidian-dev-utils input[type=time]:hover,\n .obsidian-dev-utils input[type=url]:hover,\n .obsidian-dev-utils input[type=week]:hover {\n border-color: var(--background-modifier-border-hover);\n transition: box-shadow 0.15s ease-in-out, border 0.15s ease-in-out;\n }\n}\n.obsidian-dev-utils input[type=month]:active, .obsidian-dev-utils input[type=month]:focus,\n.obsidian-dev-utils input[type=tel]:active,\n.obsidian-dev-utils input[type=tel]:focus,\n.obsidian-dev-utils input[type=time]:active,\n.obsidian-dev-utils input[type=time]:focus,\n.obsidian-dev-utils input[type=url]:active,\n.obsidian-dev-utils input[type=url]:focus,\n.obsidian-dev-utils input[type=week]:active,\n.obsidian-dev-utils input[type=week]:focus {\n border-color: var(--background-modifier-border-focus);\n transition: box-shadow 0.15s ease-in-out, border 0.15s ease-in-out;\n}\n.obsidian-dev-utils input[type=month]:active, .obsidian-dev-utils input[type=month]:focus, .obsidian-dev-utils input[type=month]:focus-visible,\n.obsidian-dev-utils input[type=tel]:active,\n.obsidian-dev-utils input[type=tel]:focus,\n.obsidian-dev-utils input[type=tel]:focus-visible,\n.obsidian-dev-utils input[type=time]:active,\n.obsidian-dev-utils input[type=time]:focus,\n.obsidian-dev-utils input[type=time]:focus-visible,\n.obsidian-dev-utils input[type=url]:active,\n.obsidian-dev-utils input[type=url]:focus,\n.obsidian-dev-utils input[type=url]:focus-visible,\n.obsidian-dev-utils input[type=week]:active,\n.obsidian-dev-utils input[type=week]:focus,\n.obsidian-dev-utils input[type=week]:focus-visible {\n box-shadow: 0 0 0 2px var(--background-modifier-border-focus);\n}\n.obsidian-dev-utils input[type=month]::placeholder,\n.obsidian-dev-utils input[type=tel]::placeholder,\n.obsidian-dev-utils input[type=time]::placeholder,\n.obsidian-dev-utils input[type=url]::placeholder,\n.obsidian-dev-utils input[type=week]::placeholder {\n color: var(--text-faint);\n}\n.mod-rtl input[type=month],\n.mod-rtl input[type=time],\n.mod-rtl input[type=week],\n.is-rtl input[type=month],\n.is-rtl input[type=time],\n.is-rtl input[type=week],\n.rtl input[type=month],\n.rtl input[type=time],\n.rtl input[type=week] {\n direction: rtl;\n}\n.mod-rtl input[type=month]::-webkit-calendar-picker-indicator,\n.mod-rtl input[type=time]::-webkit-calendar-picker-indicator,\n.mod-rtl input[type=week]::-webkit-calendar-picker-indicator,\n.is-rtl input[type=month]::-webkit-calendar-picker-indicator,\n.is-rtl input[type=time]::-webkit-calendar-picker-indicator,\n.is-rtl input[type=week]::-webkit-calendar-picker-indicator,\n.rtl input[type=month]::-webkit-calendar-picker-indicator,\n.rtl input[type=time]::-webkit-calendar-picker-indicator,\n.rtl input[type=week]::-webkit-calendar-picker-indicator {\n right: var(--size-4-1);\n left: auto;\n}\n\n.obsidian-dev-utils input[type=month],\n.obsidian-dev-utils input[type=time],\n.obsidian-dev-utils input[type=week] {\n font-variant-numeric: tabular-nums;\n position: relative;\n}\n.obsidian-dev-utils input[type=month]::-webkit-datetime-edit-text,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-text,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-text {\n color: var(--text-faint);\n padding-inline-end: 0;\n}\n.obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator,\n.obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator {\n position: absolute;\n left: var(--size-4-1);\n right: auto;\n opacity: 0.5;\n}\n.obsidian-dev-utils input[type=month]::-webkit-datetime-edit-month-field:active, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-month-field:focus, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-day-field:active, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-day-field:focus, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-year-field:active, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-year-field:focus,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-month-field:active,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-month-field:focus,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-day-field:active,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-day-field:focus,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-year-field:active,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-year-field:focus,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-month-field:active,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-month-field:focus,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-day-field:active,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-day-field:focus,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-year-field:active,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-year-field:focus {\n background-color: var(--text-selection);\n color: var(--text-normal);\n cursor: text;\n}\n.mod-rtl .obsidian-dev-utils input[type=month], .is-rtl .obsidian-dev-utils input[type=month], .rtl .obsidian-dev-utils input[type=month],\n.mod-rtl .obsidian-dev-utils input[type=time],\n.is-rtl .obsidian-dev-utils input[type=time],\n.rtl .obsidian-dev-utils input[type=time],\n.mod-rtl .obsidian-dev-utils input[type=week],\n.is-rtl .obsidian-dev-utils input[type=week],\n.rtl .obsidian-dev-utils input[type=week] {\n direction: rtl;\n}\n.mod-rtl .obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator, .is-rtl .obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator, .rtl .obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator,\n.mod-rtl .obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.is-rtl .obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.rtl .obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.mod-rtl .obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator,\n.is-rtl .obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator,\n.rtl .obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator {\n left: auto;\n right: var(--size-4-1);\n}\n\nbody:not(.is-ios):not(.is-android) .obsidian-dev-utils input[type=month],\nbody:not(.is-ios):not(.is-android) .obsidian-dev-utils input[type=time],\nbody:not(.is-ios):not(.is-android) .obsidian-dev-utils input[type=week] {\n padding-inline-start: var(--size-4-6);\n}\n\n.obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator {\n margin-inline-start: 0;\n}\n\n.obsidian-dev-utilsprogress.loop {\n min-width: 200px;\n}\n\n.obsidian-dev-utils.modal-container .ok-button {\n margin-right: 10px;\n margin-top: 20px;\n}\n\n.obsidian-dev-utils .multiple-dropdown-component select,\n.obsidian-dev-utils .multiple-dropdown-component select:focus,\n.obsidian-dev-utils .multiple-dropdown-component .dropdown {\n height: auto;\n padding-top: 3px;\n}\n.obsidian-dev-utils .multiple-dropdown-component select option:checked,\n.obsidian-dev-utils .multiple-dropdown-component select:focus option:checked,\n.obsidian-dev-utils .multiple-dropdown-component .dropdown option:checked {\n background-color: #1967d2;\n color: #fff;\n}\n\n.obsidian-dev-utils.plugin-settings-tab a:focus {\n outline: 2px solid var(--link-color);\n}\n\n.obsidian-dev-utils.prompt-modal .text-box {\n width: 100%;\n}\n\n.obsidian-dev-utils.tri-state-checkbox-component input[type=checkbox]:indeterminate {\n appearance: checkbox;\n}\n\n.obsidian-dev-utils :invalid {\n box-shadow: 0 0 0 2px var(--text-error);\n}\n.obsidian-dev-utils input.metadata-input-text:active:invalid, .obsidian-dev-utils input.metadata-input-text:focus-visible:invalid, .obsidian-dev-utils input.metadata-input-text:focus:invalid,\n.obsidian-dev-utils input[type=date]:active:invalid,\n.obsidian-dev-utils input[type=date]:focus-visible:invalid,\n.obsidian-dev-utils input[type=date]:focus:invalid,\n.obsidian-dev-utils input[type=datetime-local]:active:invalid,\n.obsidian-dev-utils input[type=datetime-local]:focus-visible:invalid,\n.obsidian-dev-utils input[type=datetime-local]:focus:invalid,\n.obsidian-dev-utils input[type=email]:active:invalid,\n.obsidian-dev-utils input[type=email]:focus-visible:invalid,\n.obsidian-dev-utils input[type=email]:focus:invalid,\n.obsidian-dev-utils input[type=number]:active:invalid,\n.obsidian-dev-utils input[type=number]:focus-visible:invalid,\n.obsidian-dev-utils input[type=number]:focus:invalid,\n.obsidian-dev-utils input[type=password]:active:invalid,\n.obsidian-dev-utils input[type=password]:focus-visible:invalid,\n.obsidian-dev-utils input[type=password]:focus:invalid,\n.obsidian-dev-utils input[type=search]:active:invalid,\n.obsidian-dev-utils input[type=search]:focus-visible:invalid,\n.obsidian-dev-utils input[type=search]:focus:invalid,\n.obsidian-dev-utils input[type=text]:active:invalid,\n.obsidian-dev-utils input[type=text]:focus-visible:invalid,\n.obsidian-dev-utils input[type=text]:focus:invalid,\n.obsidian-dev-utils textarea:active:invalid,\n.obsidian-dev-utils textarea:focus-visible:invalid,\n.obsidian-dev-utils textarea:focus:invalid {\n box-shadow: 0 0 0 2px var(--text-error);\n}\n.obsidian-dev-utils.setting-component-wrapper {\n position: relative;\n display: inline-flex;\n}\n.obsidian-dev-utils.overlay-validator {\n caret-color: transparent;\n cursor: default;\n position: absolute;\n background-color: transparent;\n border: none;\n outline: none;\n pointer-events: none;\n z-index: 9999;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n}\n.obsidian-dev-utils.tooltip.tooltip-validator {\n position: absolute;\n top: calc(100% + 8px);\n width: max-content;\n}\n\n/*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%22../src/styles/code-highlighter-component.scss%22,%22../src/styles/input.scss%22,%22../src/styles/input-time.scss%22,%22../src/styles/loop.scss%22,%22../src/styles/modal-container.scss%22,%22../src/styles/multiple-dropdown-component.scss%22,%22../src/styles/plugin-settings-tab.scss%22,%22../src/styles/prompt-modal.scss%22,%22../src/styles/tri-state-checkbox-component.scss%22,%22../src/styles/validation.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AAEI;EACE;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;;ACzCJ;EACE;;AAGF;AAAA;AAAA;AAAA;AAAA;EAKE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGE;EACE;AAAA;AAAA;AAAA;AAAA;IACE;IACA,YACE;;;AAMR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA,YACE;;AAIJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGE;;AAGF;AAAA;AAAA;AAAA;AAAA;EACE;;AASE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGE;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;;;AC7DV;AAAA;AAAA;EAGE;EACA;;AAEA;AAAA;AAAA;EACE;EACA;;AAGF;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAMA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;EACA;;AAIK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGP;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;;;AAKF;AAAA;AAAA;EACE;;;AAMJ;EACE;;;ACjDJ;EACE;;;ACAA;EACE;EACA;;;ACFF;AAAA;AAAA;EAGE;EACA;;AAEA;AAAA;AAAA;EACE;EACA;;;ACRJ;EACE;;;ACDF;EACE;;;ACDF;EACE;;;ACEJ;EAJA;;AAoBI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EApBJ;;AA0BA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA%22,%22file%22:%22styles.css%22,%22sourcesContent%22:%5B%22.obsidian-dev-utils%20%7B%5Cn%20%20&.code-highlighter-component%20%7B%5Cn%20%20%20%20textarea,%20pre,%20code%20%7B%5Cn%20%20%20%20%20%20font-family:%20var(--font-monospace);%5Cn%20%20%20%20%20%20line-height:%20var(--line-height-normal);%5Cn%20%20%20%20%20%20margin:%200;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20textarea,%20code%20%7B%5Cn%20%20%20%20%20%20font-size:%20var(--code-size);%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20textarea%20%7B%5Cn%20%20%20%20%20%20background:%20transparent;%5Cn%20%20%20%20%20%20color:%20transparent;%5Cn%20%20%20%20%20%20z-index:%202;%5Cn%20%20%20%20%20%20width:%2020em;%5Cn%20%20%20%20%20%20height:%2010em;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20pre%20%7B%5Cn%20%20%20%20%20%20position:%20absolute;%5Cn%20%20%20%20%20%20pointer-events:%20none;%5Cn%20%20%20%20%20%20border:%20var(--input-border-width)%20solid%20transparent;%5Cn%20%20%20%20%20%20overflow:%20auto;%5Cn%20%20%20%20%20%20inset:%200;%5Cn%20%20%20%20%20%20padding:%20var(--size-4-1)%20var(--size-4-2);%5Cn%20%20%20%20%20%20z-index:%201;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20pre::after%20%7B%5Cn%20%20%20%20%20%20content:%20%5C%22%5C%22;%5Cn%20%20%20%20%20%20display:%20block;%5Cn%20%20%20%20%20%20height:%20var(--bottom-gap,%200);%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20pre.is-placeholder%20%7B%5Cn%20%20%20%20%20%20opacity:%200.6;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20code%20%7B%5Cn%20%20%20%20%20%20display:%20block;%5Cn%20%20%20%20%20%20padding:%200;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20input%5Btype='url'%5D%20%7B%5Cn%20%20%20%20height:%20var(--input-height)%5Cn%20%20%7D%5Cn%5Cn%20%20input%5Btype='month'%5D,%5Cn%20%20input%5Btype='tel'%5D,%5Cn%20%20input%5Btype='time'%5D,%5Cn%20%20input%5Btype='url'%5D,%5Cn%20%20input%5Btype='week'%5D%20%7B%5Cn%20%20%20%20-webkit-app-region:%20no-drag;%5Cn%20%20%20%20background:%20var(--background-modifier-form-field);%5Cn%20%20%20%20border:%20var(--input-border-width)%20solid%20var(--background-modifier-border);%5Cn%20%20%20%20color:%20var(--text-normal);%5Cn%20%20%20%20font-family:%20inherit;%5Cn%20%20%20%20padding:%20var(--size-4-1)%20var(--size-4-2);%5Cn%20%20%20%20font-size:%20var(--font-ui-small);%5Cn%20%20%20%20border-radius:%20var(--input-radius);%5Cn%20%20%20%20outline:%20none;%5Cn%5Cn%20%20%20%20@at-root%20%7B%5Cn%20%20%20%20%20%20@media%20(hover:%20hover)%20%7B%5Cn%20%20%20%20%20%20%20%20&:hover%20%7B%5Cn%20%20%20%20%20%20%20%20%20%20border-color:%20var(--background-modifier-border-hover);%5Cn%20%20%20%20%20%20%20%20%20%20transition:%5Cn%20%20%20%20%20%20%20%20%20%20%20%20box-shadow%200.15s%20ease-in-out,%5Cn%20%20%20%20%20%20%20%20%20%20%20%20border%200.15s%20ease-in-out;%5Cn%20%20%20%20%20%20%20%20%7D%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&:active,%5Cn%20%20%20%20&:focus%20%7B%5Cn%20%20%20%20%20%20border-color:%20var(--background-modifier-border-focus);%5Cn%20%20%20%20%20%20transition:%5Cn%20%20%20%20%20%20%20%20box-shadow%200.15s%20ease-in-out,%5Cn%20%20%20%20%20%20%20%20border%200.15s%20ease-in-out;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&:active,%5Cn%20%20%20%20&:focus,%5Cn%20%20%20%20&:focus-visible%20%7B%5Cn%20%20%20%20%20%20box-shadow:%200%200%200%202px%20var(--background-modifier-border-focus);%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&::placeholder%20%7B%5Cn%20%20%20%20%20%20color:%20var(--text-faint);%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20@at-root%20%7B%5Cn%20%20%20%20.mod-rtl,%5Cn%20%20%20%20.is-rtl,%5Cn%20%20%20%20.rtl%20%7B%5Cn%20%20%20%20%20%20&%20%7B%5Cn%20%20%20%20%20%20%20%20input%5Btype='month'%5D,%5Cn%20%20%20%20%20%20%20%20input%5Btype='time'%5D,%5Cn%20%20%20%20%20%20%20%20input%5Btype='week'%5D%20%7B%5Cn%20%20%20%20%20%20%20%20%20%20direction:%20rtl;%5Cn%5Cn%20%20%20%20%20%20%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20right:%20var(--size-4-1);%5Cn%20%20%20%20%20%20%20%20%20%20%20%20left:%20auto;%5Cn%20%20%20%20%20%20%20%20%20%20%7D%5Cn%20%20%20%20%20%20%20%20%7D%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20input%5Btype='month'%5D,%5Cn%20%20input%5Btype='time'%5D,%5Cn%20%20input%5Btype='week'%5D%20%7B%5Cn%20%20%20%20font-variant-numeric:%20tabular-nums;%5Cn%20%20%20%20position:%20relative;%5Cn%5Cn%20%20%20%20&::-webkit-datetime-edit-text%20%7B%5Cn%20%20%20%20%20%20color:%20var(--text-faint);%5Cn%20%20%20%20%20%20padding-inline-end:%200;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20position:%20absolute;%5Cn%20%20%20%20%20%20left:%20var(--size-4-1);%5Cn%20%20%20%20%20%20right:%20auto;%5Cn%20%20%20%20%20%20opacity:%200.5;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&::-webkit-datetime-edit-month-field,%5Cn%20%20%20%20&::-webkit-datetime-edit-day-field,%5Cn%20%20%20%20&::-webkit-datetime-edit-year-field%20%7B%5Cn%20%20%20%20%20%20&:active,%5Cn%20%20%20%20%20%20&:focus%20%7B%5Cn%20%20%20%20%20%20%20%20background-color:%20var(--text-selection);%5Cn%20%20%20%20%20%20%20%20color:%20var(--text-normal);%5Cn%20%20%20%20%20%20%20%20cursor:%20text;%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20@at-root%20.mod-rtl%20&,%5Cn%20%20%20%20%20%20.is-rtl%20&,%5Cn%20%20%20%20%20%20.rtl%20&%20%7B%5Cn%20%20%20%20%20%20direction:%20rtl;%5Cn%5Cn%20%20%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20%20%20left:%20auto;%5Cn%20%20%20%20%20%20%20%20right:%20var(--size-4-1);%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20@at-root%20%7B%5Cn%20%20%20%20%20%20body:not(.is-ios):not(.is-android)%20&%20%7B%5Cn%20%20%20%20%20%20%20%20padding-inline-start:%20var(--size-4-6);%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20input%5Btype='time'%5D%20%7B%5Cn%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20margin-inline-start:%200;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20&progress.loop%20%7B%5Cn%20%20%20%20min-width:%20200px;%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20&.modal-container%20%7B%5Cn%20%20%20%20.ok-button%20%7B%5Cn%20%20%20%20%20%20margin-right:%2010px;%5Cn%20%20%20%20%20%20margin-top:%2020px;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20.multiple-dropdown-component%20%7B%5Cn%20%20%20%20select,%5Cn%20%20%20%20select:focus,%5Cn%20%20%20%20.dropdown%20%7B%5Cn%20%20%20%20%20%20height:%20auto;%5Cn%20%20%20%20%20%20padding-top:%203px;%5Cn%5Cn%20%20%20%20%20%20option:checked%20%7B%5Cn%20%20%20%20%20%20%20%20background-color:%20%231967d2;%5Cn%20%20%20%20%20%20%20%20color:%20%23fff;%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20&.plugin-settings-tab%20%7B%5Cn%20%20%20%20a:focus%20%7B%5Cn%20%20%20%20%20%20outline:%202px%20solid%20var(--link-color);%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20&.prompt-modal%20%7B%5Cn%20%20%20%20.text-box%20%7B%5Cn%20%20%20%20%20%20width:%20100%25;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cr%5Cn%20%20&.tri-state-checkbox-component%20%7B%5Cr%5Cn%20%20%20%20input%5Btype='checkbox'%5D:indeterminate%20%7B%5Cr%5Cn%20%20%20%20%20%20appearance:%20checkbox;%5Cr%5Cn%20%20%20%20%7D%5Cr%5Cn%20%20%7D%5Cr%5Cn%7D%5Cr%5Cn%22,%22@mixin%20invalid%20%7B%5Cn%20%20box-shadow:%200%200%200%202px%20var(--text-error);%5Cn%7D%5Cn%5Cn.obsidian-dev-utils%20%7B%5Cn%20%20:invalid%20%7B%5Cn%20%20%20%20@include%20invalid;%5Cn%20%20%7D%5Cn%5Cn%20%20input.metadata-input-text,%5Cn%20%20input%5Btype='date'%5D,%5Cn%20%20input%5Btype='datetime-local'%5D,%5Cn%20%20input%5Btype='email'%5D,%5Cn%20%20input%5Btype='number'%5D,%5Cn%20%20input%5Btype='password'%5D,%5Cn%20%20input%5Btype='search'%5D,%5Cn%20%20input%5Btype='text'%5D,%5Cn%20%20textarea%20%7B%5Cn%20%20%20%20&:active,%5Cn%20%20%20%20&:focus-visible,%5Cn%20%20%20%20&:focus%20%7B%5Cn%20%20%20%20%20%20&:invalid%20%7B%5Cn%20%20%20%20%20%20%20%20@include%20invalid;%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20&.setting-component-wrapper%20%7B%5Cn%20%20%20%20position:%20relative;%5Cn%20%20%20%20display:%20inline-flex;%5Cn%20%20%7D%5Cn%5Cn%20%20&.overlay-validator%20%7B%5Cn%20%20%20%20caret-color:%20transparent;%5Cn%20%20%20%20cursor:%20default;%5Cn%20%20%20%20position:%20absolute;%5Cn%20%20%20%20background-color:%20transparent;%5Cn%20%20%20%20border:%20none;%5Cn%20%20%20%20outline:%20none;%5Cn%20%20%20%20pointer-events:%20none;%5Cn%20%20%20%20z-index:%209999;%5Cn%20%20%20%20left:%200;%5Cn%20%20%20%20top:%200;%5Cn%20%20%20%20width:%20100%25;%5Cn%20%20%20%20height:%20100%25;%5Cn%20%20%7D%5Cn%5Cn%20%20&.tooltip.tooltip-validator%20%7B%5Cn%20%20%20%20position:%20absolute;%5Cn%20%20%20%20top:%20calc(100%25%20+%208px);%5Cn%20%20%20%20width:%20max-content;%5Cn%20%20%7D%5Cn%7D%5Cn%22%5D%7D */\n";
96
96
  // Annotate the CommonJS export names for ESM import in node:
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -181,7 +181,7 @@ function initCjs() {
181
181
  return module2 && module2.__esModule && "default" in module2 ? module2.default : module2;
182
182
  }
183
183
  function requirePatched(id) {
184
- const module2 = window?.app?.isMobile ? void 0 : originalRequire?.(id);
184
+ const module2 = globalThis?.app?.isMobile ? void 0 : originalRequire?.(id);
185
185
  if (module2) {
186
186
  return extractDefault(module2);
187
187
  }
@@ -211,4 +211,4 @@ function initEsm() {
211
211
  0 && (module.exports = {
212
212
  preprocessPlugin
213
213
  });
214
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL2VzYnVpbGQvcHJlcHJvY2Vzc1BsdWdpbi50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBUaGlzIG1vZHVsZSBkZWZpbmVzIGEgY3VzdG9tIGVzYnVpbGQgcGx1Z2luIHRoYXQgcHJlcHJvY2Vzc2VzIEphdmFTY3JpcHQgYW5kIFR5cGVTY3JpcHQgZmlsZXMuXG4gKlxuICogQHJlbWFya3NcbiAqIFdlIGNhbm5vdCB1c2UgYC5gIGluc3RlYWQgb2YgYChkb3QpYCBpbiB0aGUgYWJvdmUgZGVzY3JpcHRpb24gYmVjYXVzZSB0aGUgZmlsZSBpdHNlbGYgaXMgcHJlcHJvY2Vzc2VkIHdpdGggdGhlIHNhbWUgcnVsZS5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFBsdWdpbiB9IGZyb20gJ2VzYnVpbGQnO1xuXG5pbXBvcnQgdHlwZSB7IEdlbmVyaWNPYmplY3QgfSBmcm9tICcuLi8uLi9PYmplY3RVdGlscy50cyc7XG5cbmltcG9ydCB7XG4gIEZ1bmN0aW9uSGFuZGxpbmdNb2RlLFxuICB0b0pzb25cbn0gZnJvbSAnLi4vLi4vT2JqZWN0VXRpbHMudHMnO1xuaW1wb3J0IHtcbiAgbWFrZVZhbGlkVmFyaWFibGVOYW1lLFxuICByZXBsYWNlQWxsXG59IGZyb20gJy4uLy4uL1N0cmluZy50cyc7XG5pbXBvcnQgeyByZWFkRmlsZSB9IGZyb20gJy4uL05vZGVNb2R1bGVzLnRzJztcblxuaW50ZXJmYWNlIEJyb3dzZXJQcm9jZXNzIGV4dGVuZHMgUGFydGlhbDxOb2RlSlMuUHJvY2Vzcz4ge1xuICBicm93c2VyOiBib29sZWFuO1xufVxuXG5pbnRlcmZhY2UgRXNtTW9kdWxlIHtcbiAgX19lc01vZHVsZTogYm9vbGVhbjtcbiAgZGVmYXVsdDogdW5rbm93bjtcbn1cblxuaW50ZXJmYWNlIFJlcXVpcmVQYXRjaGVkIGV4dGVuZHMgTm9kZUpTLlJlcXVpcmUge1xuICBfX2lzUGF0Y2hlZDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGFuIGVzYnVpbGQgcGx1Z2luIHRoYXQgcHJlcHJvY2Vzc2VzIEphdmFTY3JpcHQgYW5kIFR5cGVTY3JpcHQgZmlsZXMuXG4gKlxuICogVGhpcyBwbHVnaW4gcGVyZm9ybXMgdGhlIGZvbGxvd2luZyB0YXNrczpcbiAqIC0gUmVwbGFjZXMgaW5zdGFuY2VzIG9mIGBpbXBvcnQoZG90KW1ldGEoZG90KXVybGAgd2l0aCBhIE5vZGUuanMtY29tcGF0aWJsZSBgX19maWxlbmFtZWAgYWx0ZXJuYXRpdmUuXG4gKiAtIE1vZGlmaWVzIHRoZSBgc291cmNlTWFwcGluZ1VSTGAgY29tbWVudCB0byBlbnN1cmUgY29tcGF0aWJpbGl0eSB3aXRoIE9ic2lkaWFuJ3MgcGx1Z2luIHN5c3RlbS5cbiAqIC0gQWRkcyBhIGJhc2ljIGBwcm9jZXNzYCBvYmplY3QgdG8gdGhlIGdsb2JhbCBzY29wZSBpZiBgcHJvY2Vzc2AgaXMgcmVmZXJlbmNlZCBidXQgbm90IGRlZmluZWQuXG4gKlxuICogQHBhcmFtIGlzRXNtIC0gV2hldGhlciB0aGUgYnVpbGQgaXMgZm9yIGFuIEVTTSBmb3JtYXQuXG4gKiBAcmV0dXJucyBBbiBlc2J1aWxkIGBQbHVnaW5gIG9iamVjdCB0aGF0IGhhbmRsZXMgdGhlIHByZXByb2Nlc3NpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcmVwcm9jZXNzUGx1Z2luKGlzRXNtPzogYm9vbGVhbik6IFBsdWdpbiB7XG4gIGNvbnN0IHJlcGxhY2VtZW50cyA9IGlzRXNtXG4gICAgPyB7fVxuICAgIDoge1xuICAgICAgW3JlcGxhY2VBbGwoJ2ltcG9ydChkb3QpbWV0YShkb3QpdXJsJywgJyhkb3QpJywgJy4nKV06ICgpOiBzdHJpbmcgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIF9fZmlsZW5hbWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgY29uc3QgbG9jYWxSZXF1aXJlID0gcmVxdWlyZTtcbiAgICAgICAgICBjb25zdCB1cmwgPSBsb2NhbFJlcXVpcmUoJ25vZGU6dXJsJykgYXMgdHlwZW9mIGltcG9ydCgnbm9kZTp1cmwnKTtcbiAgICAgICAgICBpZiAodHlwZW9mIHVybC5wYXRoVG9GaWxlVVJMID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICByZXR1cm4gdXJsLnBhdGhUb0ZpbGVVUkwoX19maWxlbmFtZSkuaHJlZjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICByZXR1cm4gd2luZG93LmxvY2F0aW9uLmhyZWY7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGYWxsYmFjayB0byBhbiBlbXB0eSBzdHJpbmcgaWYgdGhlIGVudmlyb25tZW50IGlzIHVua25vd25cbiAgICAgICAgcmV0dXJuICcnO1xuICAgICAgfVxuICAgIH07XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAncHJlcHJvY2VzcycsXG4gICAgc2V0dXAoYnVpbGQpOiB2b2lkIHtcbiAgICAgIGJ1aWxkLmluaXRpYWxPcHRpb25zLmRlZmluZSA/Pz0ge307XG5cbiAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHJlcGxhY2VtZW50cykpIHtcbiAgICAgICAgYnVpbGQuaW5pdGlhbE9wdGlvbnMuZGVmaW5lW2tleV0gPSBgX18ke21ha2VWYWxpZFZhcmlhYmxlTmFtZShrZXkpfWA7XG4gICAgICB9XG5cbiAgICAgIGJ1aWxkLmluaXRpYWxPcHRpb25zLmJhbm5lciA/Pz0ge307XG4gICAgICBidWlsZC5pbml0aWFsT3B0aW9ucy5iYW5uZXJbJ2pzJ10gPz89ICcnO1xuICAgICAgYnVpbGQuaW5pdGlhbE9wdGlvbnMuYmFubmVyWydqcyddICs9IGBcXG4oJHtTdHJpbmcoaXNFc20gPyBpbml0RXNtIDogaW5pdENqcyl9KSgpO1xcbmA7XG5cbiAgICAgIGJ1aWxkLm9uTG9hZCh7IGZpbHRlcjogL1xcLig/OmpzfHRzfGNqc3xtanN8Y3RzfG10cykkLyB9LCBhc3luYyAoYXJncykgPT4ge1xuICAgICAgICBsZXQgY29udGVudHMgPSBhd2FpdCByZWFkRmlsZShhcmdzLnBhdGgsICd1dGYtOCcpO1xuXG4gICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHJlcGxhY2VtZW50cykpIHtcbiAgICAgICAgICBjb25zdCB2YXJpYWJsZSA9IGBfXyR7bWFrZVZhbGlkVmFyaWFibGVOYW1lKGtleSl9YDtcbiAgICAgICAgICBpZiAoIWNvbnRlbnRzLmluY2x1ZGVzKGtleSkpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCB2YWx1ZVN0ciA9IHR5cGVvZiB2YWx1ZSA9PT0gJ2Z1bmN0aW9uJyA/IGAoJHtTdHJpbmcodmFsdWUpfSkoKWAgOiB0b0pzb24odmFsdWUsIHsgZnVuY3Rpb25IYW5kbGluZ01vZGU6IEZ1bmN0aW9uSGFuZGxpbmdNb2RlLkZ1bGwgfSk7XG4gICAgICAgICAgaWYgKGNvbnRlbnRzLmluY2x1ZGVzKGB2YXIgJHt2YXJpYWJsZX1gKSkge1xuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRlbnRzID0gYHZhciAke3ZhcmlhYmxlfSA9IGdsb2JhbFRoaXNbJyR7a2V5fSddID8/ICR7dmFsdWVTdHJ9O1xcbiR7Y29udGVudHN9YDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhBQ0s6IFRoZSAkeycnfSBwYXJ0IGlzIHVzZWQgdG8gZW5zdXJlIE9ic2lkaWFuIGxvYWRzIHRoZSBwbHVnaW4gcHJvcGVybHksXG4gICAgICAgIC8vIE90aGVyd2lzZSwgaXQgc3RvcHMgbG9hZGluZyBhZnRlciB0aGUgZmlyc3QgbGluZSBvZiB0aGUgc291cmNlTWFwcGluZ1VSTCBjb21tZW50LlxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdGVtcGxhdGUtY3VybHktaW4tc3RyaW5nIC0tIEl0IGlzIGludGVudGlvbmFsLCB0aGUgc3RyaW5nIGxvb2tzIGxpa2UgYSB0ZW1wbGF0ZSBsaXRlcmFsLCBidXQgaXQgaXMgbm90LlxuICAgICAgICBjb250ZW50cyA9IHJlcGxhY2VBbGwoY29udGVudHMsIC9gXFxyP1xcblxcL1xcLyMgc291cmNlTWFwcGluZ1VSTC9nLCAnYFxcbi8vIyR7XFwnXFwnfSBzb3VyY2VNYXBwaW5nVVJMJyk7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBjb250ZW50cyxcbiAgICAgICAgICBsb2FkZXI6ICd0cydcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcbn1cblxuZnVuY3Rpb24gaW5pdENqcygpOiB2b2lkIHtcbiAgY29uc3QgZ2xvYmFsVGhpc1JlY29yZCA9IGdsb2JhbFRoaXMgYXMgdW5rbm93biBhcyBHZW5lcmljT2JqZWN0O1xuICBnbG9iYWxUaGlzUmVjb3JkWydfX25hbWUnXSA/Pz0gbmFtZTtcbiAgY29uc3Qgb3JpZ2luYWxSZXF1aXJlID0gcmVxdWlyZSBhcyAoTm9kZUpTLlJlcXVpcmUgJiBQYXJ0aWFsPFJlcXVpcmVQYXRjaGVkPiB8IHVuZGVmaW5lZCk7XG4gIGlmIChvcmlnaW5hbFJlcXVpcmUgJiYgIW9yaWdpbmFsUmVxdWlyZS5fX2lzUGF0Y2hlZCkge1xuICAgIHJlcXVpcmUgPSBPYmplY3QuYXNzaWduKFxuICAgICAgKGlkOiBzdHJpbmcpID0+IHJlcXVpcmVQYXRjaGVkKGlkKSxcbiAgICAgIG9yaWdpbmFsUmVxdWlyZSxcbiAgICAgIHtcbiAgICAgICAgX19pc1BhdGNoZWQ6IHRydWVcbiAgICAgIH1cbiAgICApIGFzIFJlcXVpcmVQYXRjaGVkO1xuICB9XG5cbiAgY29uc3QgbmV3RnVuY3M6IFJlY29yZDxzdHJpbmcsICgpID0+IHVua25vd24+ID0ge1xuICAgIF9fZXh0cmFjdERlZmF1bHQoKSB7XG4gICAgICByZXR1cm4gZXh0cmFjdERlZmF1bHQ7XG4gICAgfSxcbiAgICBwcm9jZXNzKCkge1xuICAgICAgY29uc3QgYnJvd3NlclByb2Nlc3M6IEJyb3dzZXJQcm9jZXNzID0ge1xuICAgICAgICBicm93c2VyOiB0cnVlLFxuICAgICAgICBjd2QoKSB7XG4gICAgICAgICAgcmV0dXJuICcvJztcbiAgICAgICAgfSxcbiAgICAgICAgZW52OiB7fSxcbiAgICAgICAgcGxhdGZvcm06ICdhbmRyb2lkJ1xuICAgICAgfTtcbiAgICAgIHJldHVybiBicm93c2VyUHJvY2VzcztcbiAgICB9XG4gIH07XG5cbiAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMobmV3RnVuY3MpKSB7XG4gICAgZ2xvYmFsVGhpc1JlY29yZFtrZXldID8/PSBuZXdGdW5jc1trZXldPy4oKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIG5hbWUob2JqOiB1bmtub3duKTogdW5rbm93biB7XG4gICAgcmV0dXJuIG9iajtcbiAgfVxuXG4gIGZ1bmN0aW9uIGV4dHJhY3REZWZhdWx0KG1vZHVsZTogUGFydGlhbDxFc21Nb2R1bGU+IHwgdW5kZWZpbmVkKTogdW5rbm93biB7XG4gICAgcmV0dXJuIG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSAmJiAnZGVmYXVsdCcgaW4gbW9kdWxlID8gbW9kdWxlLmRlZmF1bHQgOiBtb2R1bGU7XG4gIH1cblxuICBmdW5jdGlvbiByZXF1aXJlUGF0Y2hlZChpZDogc3RyaW5nKTogdW5rbm93biB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1kZXByZWNhdGVkLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktY29uZGl0aW9uIC0tIFdlIG5lZWQgYWNjZXNzIHRvIGFwcCBoZXJlIHdoaWNoIG1pZ2h0IG5vdCBiZSBhdmFpbGFibGUgeWV0LlxuICAgIGNvbnN0IG1vZHVsZSA9IHdpbmRvdz8uYXBwPy5pc01vYmlsZSA/IHVuZGVmaW5lZCA6IG9yaWdpbmFsUmVxdWlyZT8uKGlkKSBhcyAoUGFydGlhbDxFc21Nb2R1bGU+IHwgdW5kZWZpbmVkKTtcbiAgICBpZiAobW9kdWxlKSB7XG4gICAgICByZXR1cm4gZXh0cmFjdERlZmF1bHQobW9kdWxlKTtcbiAgICB9XG5cbiAgICBpZiAoaWQgPT09ICdwcm9jZXNzJyB8fCBpZCA9PT0gJ25vZGU6cHJvY2VzcycpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlIC0tIERlYnVnIG1lc3NhZ2UgaXMgaW50ZW50aW9uYWwgaGVyZS5cbiAgICAgIGNvbnNvbGUuZGVidWcoYFRoZSBtb3N0IGxpa2VseSB5b3UgY2FuIHNhZmVseSBpZ25vcmUgdGhpcyBlcnJvci4gTW9kdWxlIG5vdCBmb3VuZDogJHtpZH0uIEZha2UgcHJvY2VzcyBvYmplY3QgaXMgcmV0dXJuZWQgaW5zdGVhZC5gKTtcbiAgICAgIHJldHVybiBnbG9iYWxUaGlzLnByb2Nlc3M7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGUgLS0gRGVidWcgbWVzc2FnZSBpcyBpbnRlbnRpb25hbCBoZXJlLlxuICAgIGNvbnNvbGUuZGVidWcoYFRoZSBtb3N0IGxpa2VseSB5b3UgY2FuIHNhZmVseSBpZ25vcmUgdGhpcyBlcnJvci4gTW9kdWxlIG5vdCBmb3VuZDogJHtpZH0uIEVtcHR5IG9iamVjdCBpcyByZXR1cm5lZCBpbnN0ZWFkLmApO1xuICAgIHJldHVybiB7fTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpbml0RXNtKCk6IHZvaWQge1xuICBpZiAoKGdsb2JhbFRoaXMucHJvY2VzcyBhcyBOb2RlSlMuUHJvY2VzcyB8IHVuZGVmaW5lZCkpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBicm93c2VyUHJvY2VzczogQnJvd3NlclByb2Nlc3MgPSB7XG4gICAgYnJvd3NlcjogdHJ1ZSxcbiAgICBjd2QoKSB7XG4gICAgICByZXR1cm4gJy8nO1xuICAgIH0sXG4gICAgZW52OiB7fSxcbiAgICBwbGF0Zm9ybTogJ2FuZHJvaWQnXG4gIH07XG4gIGdsb2JhbFRoaXMucHJvY2VzcyA9IGJyb3dzZXJQcm9jZXNzIGFzIE5vZGVKUy5Qcm9jZXNzO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFhQSx5QkFHTztBQUNQLG9CQUdPO0FBQ1AseUJBQXlCO0FBMEJsQixTQUFTLGlCQUFpQixPQUF5QjtBQUN4RCxRQUFNLGVBQWUsUUFDakIsQ0FBQyxJQUNEO0FBQUEsSUFDQSxLQUFDLDBCQUFXLDJCQUEyQixTQUFTLEdBQUcsQ0FBQyxHQUFHLE1BQWM7QUFDbkUsVUFBSSxPQUFPLGVBQWUsVUFBVTtBQUNsQyxjQUFNLGVBQWU7QUFDckIsY0FBTSxNQUFNLGFBQWEsVUFBVTtBQUNuQyxZQUFJLE9BQU8sSUFBSSxrQkFBa0IsWUFBWTtBQUMzQyxpQkFBTyxJQUFJLGNBQWMsVUFBVSxFQUFFO0FBQUEsUUFDdkM7QUFBQSxNQUNGO0FBRUEsVUFBSSxPQUFPLFdBQVcsYUFBYTtBQUNqQyxlQUFPLE9BQU8sU0FBUztBQUFBLE1BQ3pCO0FBR0EsYUFBTztBQUFBLElBQ1Q7QUFBQSxFQUNGO0FBRUYsU0FBTztBQUFBLElBQ0wsTUFBTTtBQUFBLElBQ04sTUFBTSxPQUFhO0FBQ2pCLFlBQU0sZUFBZSxXQUFXLENBQUM7QUFFakMsaUJBQVcsT0FBTyxPQUFPLEtBQUssWUFBWSxHQUFHO0FBQzNDLGNBQU0sZUFBZSxPQUFPLEdBQUcsSUFBSSxTQUFLLHFDQUFzQixHQUFHLENBQUM7QUFBQSxNQUNwRTtBQUVBLFlBQU0sZUFBZSxXQUFXLENBQUM7QUFDakMsWUFBTSxlQUFlLE9BQU8sSUFBSSxNQUFNO0FBQ3RDLFlBQU0sZUFBZSxPQUFPLElBQUksS0FBSztBQUFBLEdBQU0sT0FBTyxRQUFRLFVBQVUsT0FBTyxDQUFDO0FBQUE7QUFFNUUsWUFB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
214
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL2VzYnVpbGQvcHJlcHJvY2Vzc1BsdWdpbi50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBUaGlzIG1vZHVsZSBkZWZpbmVzIGEgY3VzdG9tIGVzYnVpbGQgcGx1Z2luIHRoYXQgcHJlcHJvY2Vzc2VzIEphdmFTY3JpcHQgYW5kIFR5cGVTY3JpcHQgZmlsZXMuXG4gKlxuICogQHJlbWFya3NcbiAqIFdlIGNhbm5vdCB1c2UgYC5gIGluc3RlYWQgb2YgYChkb3QpYCBpbiB0aGUgYWJvdmUgZGVzY3JpcHRpb24gYmVjYXVzZSB0aGUgZmlsZSBpdHNlbGYgaXMgcHJlcHJvY2Vzc2VkIHdpdGggdGhlIHNhbWUgcnVsZS5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFBsdWdpbiB9IGZyb20gJ2VzYnVpbGQnO1xuXG5pbXBvcnQgdHlwZSB7IEdlbmVyaWNPYmplY3QgfSBmcm9tICcuLi8uLi9PYmplY3RVdGlscy50cyc7XG5cbmltcG9ydCB7XG4gIEZ1bmN0aW9uSGFuZGxpbmdNb2RlLFxuICB0b0pzb25cbn0gZnJvbSAnLi4vLi4vT2JqZWN0VXRpbHMudHMnO1xuaW1wb3J0IHtcbiAgbWFrZVZhbGlkVmFyaWFibGVOYW1lLFxuICByZXBsYWNlQWxsXG59IGZyb20gJy4uLy4uL1N0cmluZy50cyc7XG5pbXBvcnQgeyByZWFkRmlsZSB9IGZyb20gJy4uL05vZGVNb2R1bGVzLnRzJztcblxuaW50ZXJmYWNlIEJyb3dzZXJQcm9jZXNzIGV4dGVuZHMgUGFydGlhbDxOb2RlSlMuUHJvY2Vzcz4ge1xuICBicm93c2VyOiBib29sZWFuO1xufVxuXG5pbnRlcmZhY2UgRXNtTW9kdWxlIHtcbiAgX19lc01vZHVsZTogYm9vbGVhbjtcbiAgZGVmYXVsdDogdW5rbm93bjtcbn1cblxuaW50ZXJmYWNlIFJlcXVpcmVQYXRjaGVkIGV4dGVuZHMgTm9kZUpTLlJlcXVpcmUge1xuICBfX2lzUGF0Y2hlZDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGFuIGVzYnVpbGQgcGx1Z2luIHRoYXQgcHJlcHJvY2Vzc2VzIEphdmFTY3JpcHQgYW5kIFR5cGVTY3JpcHQgZmlsZXMuXG4gKlxuICogVGhpcyBwbHVnaW4gcGVyZm9ybXMgdGhlIGZvbGxvd2luZyB0YXNrczpcbiAqIC0gUmVwbGFjZXMgaW5zdGFuY2VzIG9mIGBpbXBvcnQoZG90KW1ldGEoZG90KXVybGAgd2l0aCBhIE5vZGUuanMtY29tcGF0aWJsZSBgX19maWxlbmFtZWAgYWx0ZXJuYXRpdmUuXG4gKiAtIE1vZGlmaWVzIHRoZSBgc291cmNlTWFwcGluZ1VSTGAgY29tbWVudCB0byBlbnN1cmUgY29tcGF0aWJpbGl0eSB3aXRoIE9ic2lkaWFuJ3MgcGx1Z2luIHN5c3RlbS5cbiAqIC0gQWRkcyBhIGJhc2ljIGBwcm9jZXNzYCBvYmplY3QgdG8gdGhlIGdsb2JhbCBzY29wZSBpZiBgcHJvY2Vzc2AgaXMgcmVmZXJlbmNlZCBidXQgbm90IGRlZmluZWQuXG4gKlxuICogQHBhcmFtIGlzRXNtIC0gV2hldGhlciB0aGUgYnVpbGQgaXMgZm9yIGFuIEVTTSBmb3JtYXQuXG4gKiBAcmV0dXJucyBBbiBlc2J1aWxkIGBQbHVnaW5gIG9iamVjdCB0aGF0IGhhbmRsZXMgdGhlIHByZXByb2Nlc3NpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcmVwcm9jZXNzUGx1Z2luKGlzRXNtPzogYm9vbGVhbik6IFBsdWdpbiB7XG4gIGNvbnN0IHJlcGxhY2VtZW50cyA9IGlzRXNtXG4gICAgPyB7fVxuICAgIDoge1xuICAgICAgW3JlcGxhY2VBbGwoJ2ltcG9ydChkb3QpbWV0YShkb3QpdXJsJywgJyhkb3QpJywgJy4nKV06ICgpOiBzdHJpbmcgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIF9fZmlsZW5hbWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgY29uc3QgbG9jYWxSZXF1aXJlID0gcmVxdWlyZTtcbiAgICAgICAgICBjb25zdCB1cmwgPSBsb2NhbFJlcXVpcmUoJ25vZGU6dXJsJykgYXMgdHlwZW9mIGltcG9ydCgnbm9kZTp1cmwnKTtcbiAgICAgICAgICBpZiAodHlwZW9mIHVybC5wYXRoVG9GaWxlVVJMID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICByZXR1cm4gdXJsLnBhdGhUb0ZpbGVVUkwoX19maWxlbmFtZSkuaHJlZjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICByZXR1cm4gd2luZG93LmxvY2F0aW9uLmhyZWY7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGYWxsYmFjayB0byBhbiBlbXB0eSBzdHJpbmcgaWYgdGhlIGVudmlyb25tZW50IGlzIHVua25vd25cbiAgICAgICAgcmV0dXJuICcnO1xuICAgICAgfVxuICAgIH07XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAncHJlcHJvY2VzcycsXG4gICAgc2V0dXAoYnVpbGQpOiB2b2lkIHtcbiAgICAgIGJ1aWxkLmluaXRpYWxPcHRpb25zLmRlZmluZSA/Pz0ge307XG5cbiAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHJlcGxhY2VtZW50cykpIHtcbiAgICAgICAgYnVpbGQuaW5pdGlhbE9wdGlvbnMuZGVmaW5lW2tleV0gPSBgX18ke21ha2VWYWxpZFZhcmlhYmxlTmFtZShrZXkpfWA7XG4gICAgICB9XG5cbiAgICAgIGJ1aWxkLmluaXRpYWxPcHRpb25zLmJhbm5lciA/Pz0ge307XG4gICAgICBidWlsZC5pbml0aWFsT3B0aW9ucy5iYW5uZXJbJ2pzJ10gPz89ICcnO1xuICAgICAgYnVpbGQuaW5pdGlhbE9wdGlvbnMuYmFubmVyWydqcyddICs9IGBcXG4oJHtTdHJpbmcoaXNFc20gPyBpbml0RXNtIDogaW5pdENqcyl9KSgpO1xcbmA7XG5cbiAgICAgIGJ1aWxkLm9uTG9hZCh7IGZpbHRlcjogL1xcLig/OmpzfHRzfGNqc3xtanN8Y3RzfG10cykkLyB9LCBhc3luYyAoYXJncykgPT4ge1xuICAgICAgICBsZXQgY29udGVudHMgPSBhd2FpdCByZWFkRmlsZShhcmdzLnBhdGgsICd1dGYtOCcpO1xuXG4gICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHJlcGxhY2VtZW50cykpIHtcbiAgICAgICAgICBjb25zdCB2YXJpYWJsZSA9IGBfXyR7bWFrZVZhbGlkVmFyaWFibGVOYW1lKGtleSl9YDtcbiAgICAgICAgICBpZiAoIWNvbnRlbnRzLmluY2x1ZGVzKGtleSkpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCB2YWx1ZVN0ciA9IHR5cGVvZiB2YWx1ZSA9PT0gJ2Z1bmN0aW9uJyA/IGAoJHtTdHJpbmcodmFsdWUpfSkoKWAgOiB0b0pzb24odmFsdWUsIHsgZnVuY3Rpb25IYW5kbGluZ01vZGU6IEZ1bmN0aW9uSGFuZGxpbmdNb2RlLkZ1bGwgfSk7XG4gICAgICAgICAgaWYgKGNvbnRlbnRzLmluY2x1ZGVzKGB2YXIgJHt2YXJpYWJsZX1gKSkge1xuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRlbnRzID0gYHZhciAke3ZhcmlhYmxlfSA9IGdsb2JhbFRoaXNbJyR7a2V5fSddID8/ICR7dmFsdWVTdHJ9O1xcbiR7Y29udGVudHN9YDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhBQ0s6IFRoZSAkeycnfSBwYXJ0IGlzIHVzZWQgdG8gZW5zdXJlIE9ic2lkaWFuIGxvYWRzIHRoZSBwbHVnaW4gcHJvcGVybHksXG4gICAgICAgIC8vIE90aGVyd2lzZSwgaXQgc3RvcHMgbG9hZGluZyBhZnRlciB0aGUgZmlyc3QgbGluZSBvZiB0aGUgc291cmNlTWFwcGluZ1VSTCBjb21tZW50LlxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdGVtcGxhdGUtY3VybHktaW4tc3RyaW5nIC0tIEl0IGlzIGludGVudGlvbmFsLCB0aGUgc3RyaW5nIGxvb2tzIGxpa2UgYSB0ZW1wbGF0ZSBsaXRlcmFsLCBidXQgaXQgaXMgbm90LlxuICAgICAgICBjb250ZW50cyA9IHJlcGxhY2VBbGwoY29udGVudHMsIC9gXFxyP1xcblxcL1xcLyMgc291cmNlTWFwcGluZ1VSTC9nLCAnYFxcbi8vIyR7XFwnXFwnfSBzb3VyY2VNYXBwaW5nVVJMJyk7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBjb250ZW50cyxcbiAgICAgICAgICBsb2FkZXI6ICd0cydcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcbn1cblxuZnVuY3Rpb24gaW5pdENqcygpOiB2b2lkIHtcbiAgY29uc3QgZ2xvYmFsVGhpc1JlY29yZCA9IGdsb2JhbFRoaXMgYXMgdW5rbm93biBhcyBHZW5lcmljT2JqZWN0O1xuICBnbG9iYWxUaGlzUmVjb3JkWydfX25hbWUnXSA/Pz0gbmFtZTtcbiAgY29uc3Qgb3JpZ2luYWxSZXF1aXJlID0gcmVxdWlyZSBhcyAoTm9kZUpTLlJlcXVpcmUgJiBQYXJ0aWFsPFJlcXVpcmVQYXRjaGVkPiB8IHVuZGVmaW5lZCk7XG4gIGlmIChvcmlnaW5hbFJlcXVpcmUgJiYgIW9yaWdpbmFsUmVxdWlyZS5fX2lzUGF0Y2hlZCkge1xuICAgIHJlcXVpcmUgPSBPYmplY3QuYXNzaWduKFxuICAgICAgKGlkOiBzdHJpbmcpID0+IHJlcXVpcmVQYXRjaGVkKGlkKSxcbiAgICAgIG9yaWdpbmFsUmVxdWlyZSxcbiAgICAgIHtcbiAgICAgICAgX19pc1BhdGNoZWQ6IHRydWVcbiAgICAgIH1cbiAgICApIGFzIFJlcXVpcmVQYXRjaGVkO1xuICB9XG5cbiAgY29uc3QgbmV3RnVuY3M6IFJlY29yZDxzdHJpbmcsICgpID0+IHVua25vd24+ID0ge1xuICAgIF9fZXh0cmFjdERlZmF1bHQoKSB7XG4gICAgICByZXR1cm4gZXh0cmFjdERlZmF1bHQ7XG4gICAgfSxcbiAgICBwcm9jZXNzKCkge1xuICAgICAgY29uc3QgYnJvd3NlclByb2Nlc3M6IEJyb3dzZXJQcm9jZXNzID0ge1xuICAgICAgICBicm93c2VyOiB0cnVlLFxuICAgICAgICBjd2QoKSB7XG4gICAgICAgICAgcmV0dXJuICcvJztcbiAgICAgICAgfSxcbiAgICAgICAgZW52OiB7fSxcbiAgICAgICAgcGxhdGZvcm06ICdhbmRyb2lkJ1xuICAgICAgfTtcbiAgICAgIHJldHVybiBicm93c2VyUHJvY2VzcztcbiAgICB9XG4gIH07XG5cbiAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMobmV3RnVuY3MpKSB7XG4gICAgZ2xvYmFsVGhpc1JlY29yZFtrZXldID8/PSBuZXdGdW5jc1trZXldPy4oKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIG5hbWUob2JqOiB1bmtub3duKTogdW5rbm93biB7XG4gICAgcmV0dXJuIG9iajtcbiAgfVxuXG4gIGZ1bmN0aW9uIGV4dHJhY3REZWZhdWx0KG1vZHVsZTogUGFydGlhbDxFc21Nb2R1bGU+IHwgdW5kZWZpbmVkKTogdW5rbm93biB7XG4gICAgcmV0dXJuIG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSAmJiAnZGVmYXVsdCcgaW4gbW9kdWxlID8gbW9kdWxlLmRlZmF1bHQgOiBtb2R1bGU7XG4gIH1cblxuICBmdW5jdGlvbiByZXF1aXJlUGF0Y2hlZChpZDogc3RyaW5nKTogdW5rbm93biB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1kZXByZWNhdGVkLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktY29uZGl0aW9uIC0tIFdlIG5lZWQgYWNjZXNzIHRvIGFwcCBoZXJlIHdoaWNoIG1pZ2h0IG5vdCBiZSBhdmFpbGFibGUgeWV0LlxuICAgIGNvbnN0IG1vZHVsZSA9IGdsb2JhbFRoaXM/LmFwcD8uaXNNb2JpbGUgPyB1bmRlZmluZWQgOiBvcmlnaW5hbFJlcXVpcmU/LihpZCkgYXMgKFBhcnRpYWw8RXNtTW9kdWxlPiB8IHVuZGVmaW5lZCk7XG4gICAgaWYgKG1vZHVsZSkge1xuICAgICAgcmV0dXJuIGV4dHJhY3REZWZhdWx0KG1vZHVsZSk7XG4gICAgfVxuXG4gICAgaWYgKGlkID09PSAncHJvY2VzcycgfHwgaWQgPT09ICdub2RlOnByb2Nlc3MnKSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZSAtLSBEZWJ1ZyBtZXNzYWdlIGlzIGludGVudGlvbmFsIGhlcmUuXG4gICAgICBjb25zb2xlLmRlYnVnKGBUaGUgbW9zdCBsaWtlbHkgeW91IGNhbiBzYWZlbHkgaWdub3JlIHRoaXMgZXJyb3IuIE1vZHVsZSBub3QgZm91bmQ6ICR7aWR9LiBGYWtlIHByb2Nlc3Mgb2JqZWN0IGlzIHJldHVybmVkIGluc3RlYWQuYCk7XG4gICAgICByZXR1cm4gZ2xvYmFsVGhpcy5wcm9jZXNzO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlIC0tIERlYnVnIG1lc3NhZ2UgaXMgaW50ZW50aW9uYWwgaGVyZS5cbiAgICBjb25zb2xlLmRlYnVnKGBUaGUgbW9zdCBsaWtlbHkgeW91IGNhbiBzYWZlbHkgaWdub3JlIHRoaXMgZXJyb3IuIE1vZHVsZSBub3QgZm91bmQ6ICR7aWR9LiBFbXB0eSBvYmplY3QgaXMgcmV0dXJuZWQgaW5zdGVhZC5gKTtcbiAgICByZXR1cm4ge307XG4gIH1cbn1cblxuZnVuY3Rpb24gaW5pdEVzbSgpOiB2b2lkIHtcbiAgaWYgKChnbG9iYWxUaGlzLnByb2Nlc3MgYXMgTm9kZUpTLlByb2Nlc3MgfCB1bmRlZmluZWQpKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgYnJvd3NlclByb2Nlc3M6IEJyb3dzZXJQcm9jZXNzID0ge1xuICAgIGJyb3dzZXI6IHRydWUsXG4gICAgY3dkKCkge1xuICAgICAgcmV0dXJuICcvJztcbiAgICB9LFxuICAgIGVudjoge30sXG4gICAgcGxhdGZvcm06ICdhbmRyb2lkJ1xuICB9O1xuICBnbG9iYWxUaGlzLnByb2Nlc3MgPSBicm93c2VyUHJvY2VzcyBhcyBOb2RlSlMuUHJvY2Vzcztcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBYUEseUJBR087QUFDUCxvQkFHTztBQUNQLHlCQUF5QjtBQTBCbEIsU0FBUyxpQkFBaUIsT0FBeUI7QUFDeEQsUUFBTSxlQUFlLFFBQ2pCLENBQUMsSUFDRDtBQUFBLElBQ0EsS0FBQywwQkFBVywyQkFBMkIsU0FBUyxHQUFHLENBQUMsR0FBRyxNQUFjO0FBQ25FLFVBQUksT0FBTyxlQUFlLFVBQVU7QUFDbEMsY0FBTSxlQUFlO0FBQ3JCLGNBQU0sTUFBTSxhQUFhLFVBQVU7QUFDbkMsWUFBSSxPQUFPLElBQUksa0JBQWtCLFlBQVk7QUFDM0MsaUJBQU8sSUFBSSxjQUFjLFVBQVUsRUFBRTtBQUFBLFFBQ3ZDO0FBQUEsTUFDRjtBQUVBLFVBQUksT0FBTyxXQUFXLGFBQWE7QUFDakMsZUFBTyxPQUFPLFNBQVM7QUFBQSxNQUN6QjtBQUdBLGFBQU87QUFBQSxJQUNUO0FBQUEsRUFDRjtBQUVGLFNBQU87QUFBQSxJQUNMLE1BQU07QUFBQSxJQUNOLE1BQU0sT0FBYTtBQUNqQixZQUFNLGVBQWUsV0FBVyxDQUFDO0FBRWpDLGlCQUFXLE9BQU8sT0FBTyxLQUFLLFlBQVksR0FBRztBQUMzQyxjQUFNLGVBQWUsT0FBTyxHQUFHLElBQUksU0FBSyxxQ0FBc0IsR0FBRyxDQUFDO0FBQUEsTUFDcEU7QUFFQSxZQUFNLGVBQWUsV0FBVyxDQUFDO0FBQ2pDLFlBQU0sZUFBZSxPQUFPLElBQUksTUFBTTtBQUN0QyxZQUFNLGVBQWUsT0FBTyxJQUFJLEtBQUs7QUFBQSxHQUFNLE9BQU8sUUFBUSxVQUFVLE9BQU8sQ0FBQztBQUFBO0FBRTVF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
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }
@@ -48,7 +48,7 @@ if you want to view the source, please visit the github repository of this plugi
48
48
 
49
49
  function requirePatched(id) {
50
50
  // eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
51
- const module = window?.app?.isMobile ? undefined : originalRequire?.(id);
51
+ const module = globalThis?.app?.isMobile ? undefined : originalRequire?.(id);
52
52
  if (module) {
53
53
  return extractDefault(module);
54
54
  }