obsidian-dev-utils 65.0.0 → 66.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +36 -8
- package/dist/dev/main.js +4892 -4807
- package/dist/lib/cjs/async-events.cjs +15 -18
- package/dist/lib/cjs/async-events.d.cts +19 -19
- package/dist/lib/cjs/async.cjs +1 -1
- package/dist/lib/cjs/async.d.cts +9 -8
- package/dist/lib/cjs/function.cjs +1 -1
- package/dist/lib/cjs/function.d.cts +43 -3
- package/dist/lib/cjs/library.cjs +1 -1
- package/dist/lib/cjs/obsidian/@types/dataview/typings/obsidian-ex.d.cts +1 -1
- package/dist/lib/cjs/obsidian/async-with-notice.cjs +1 -1
- package/dist/lib/cjs/obsidian/async-with-notice.d.cts +2 -2
- package/dist/lib/cjs/obsidian/{plugin/components → components}/abort-signal-component.cjs +4 -4
- package/dist/lib/cjs/obsidian/{plugin/components → components}/abort-signal-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/components/all-windows-event-component.cjs +201 -0
- package/dist/lib/{esm/obsidian/components/all-windows-event-handler.d.mts → cjs/obsidian/components/all-windows-event-component.d.cts} +6 -7
- package/dist/lib/cjs/obsidian/components/async-component.cjs +3 -2
- package/dist/lib/cjs/obsidian/components/async-component.d.cts +2 -1
- package/dist/lib/cjs/obsidian/{plugin/components → components}/async-error-handler-component.cjs +5 -5
- package/dist/lib/cjs/obsidian/{plugin/components → components}/async-error-handler-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/components/async-events-component.cjs +3 -2
- package/dist/lib/cjs/obsidian/components/async-events-component.d.cts +2 -1
- package/dist/lib/cjs/obsidian/{plugin/components → components}/console-debug-component.cjs +4 -4
- package/dist/lib/cjs/obsidian/{plugin/components → components}/console-debug-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/components/disposable-component.cjs +160 -0
- package/dist/lib/cjs/obsidian/components/disposable-component.d.cts +34 -0
- package/dist/lib/cjs/obsidian/{plugin/components → components}/i18n-component.cjs +4 -4
- package/dist/lib/cjs/obsidian/{plugin/components → components}/i18n-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/components/index.cjs +40 -7
- package/dist/lib/cjs/obsidian/components/index.d.cts +13 -2
- package/dist/lib/cjs/obsidian/components/layout-ready-component.cjs +185 -0
- package/dist/lib/cjs/obsidian/components/layout-ready-component.d.cts +47 -0
- package/dist/lib/cjs/obsidian/components/menu-event-registrar-component.cjs +172 -0
- package/dist/lib/cjs/obsidian/components/menu-event-registrar-component.d.cts +41 -0
- package/dist/lib/cjs/obsidian/components/monkey-around-component.cjs +197 -0
- package/dist/lib/cjs/obsidian/components/monkey-around-component.d.cts +113 -0
- package/dist/lib/cjs/obsidian/{plugin/components → components}/plugin-context-component.cjs +6 -6
- package/dist/lib/cjs/obsidian/{plugin/components → components}/plugin-context-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/{plugin/components → components}/plugin-notice-component.cjs +3 -2
- package/dist/lib/cjs/obsidian/{plugin/components → components}/plugin-notice-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/components/plugin-settings-component.cjs +534 -0
- package/dist/lib/cjs/obsidian/{plugin/components → components}/plugin-settings-component.d.cts +6 -21
- package/dist/lib/cjs/obsidian/{plugin/components → components}/plugin-settings-tab-component.cjs +3 -2
- package/dist/lib/cjs/obsidian/{plugin/components → components}/plugin-settings-tab-component.d.cts +5 -5
- package/dist/lib/cjs/obsidian/constructors/getDomEventsHandlersConstructor.cjs +20 -16
- package/dist/lib/cjs/obsidian/dataview.cjs +1 -1
- package/dist/lib/cjs/obsidian/dataview.d.cts +1 -1
- package/dist/lib/cjs/obsidian/index.cjs +7 -4
- package/dist/lib/cjs/obsidian/index.d.cts +2 -1
- package/dist/lib/cjs/obsidian/loop.cjs +1 -1
- package/dist/lib/cjs/obsidian/loop.d.cts +2 -2
- package/dist/lib/cjs/obsidian/markdown.cjs +13 -7
- package/dist/lib/cjs/obsidian/menu-event-registrar.cjs +1 -50
- package/dist/lib/cjs/obsidian/menu-event-registrar.d.cts +1 -35
- package/dist/lib/cjs/obsidian/modals/prompt.cjs +1 -1
- package/dist/lib/cjs/obsidian/modals/prompt.d.cts +1 -1
- package/dist/lib/cjs/obsidian/modals/select-item.cjs +1 -1
- package/dist/lib/cjs/obsidian/modals/select-item.d.cts +1 -1
- package/dist/lib/cjs/obsidian/path-settings.cjs +239 -0
- package/dist/lib/cjs/obsidian/plugin/index.cjs +1 -7
- package/dist/lib/cjs/obsidian/plugin/index.d.cts +0 -2
- package/dist/lib/cjs/obsidian/plugin/plugin-settings-tab.cjs +4 -4
- package/dist/lib/cjs/obsidian/plugin/plugin-settings-tab.d.cts +5 -5
- package/dist/lib/cjs/obsidian/plugin/plugin.cjs +40 -34
- package/dist/lib/cjs/obsidian/plugin/plugin.d.cts +16 -13
- package/dist/lib/cjs/obsidian/queue.cjs +1 -1
- package/dist/lib/cjs/obsidian/queue.d.cts +2 -2
- package/dist/lib/cjs/obsidian/rename-delete-handler.cjs +19 -12
- package/dist/lib/cjs/obsidian/setting-components/checkbox-component.cjs +209 -0
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/checkbox-component.d.cts +1 -1
- package/dist/lib/cjs/obsidian/setting-components/code-highlighter-component.cjs +356 -0
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/code-highlighter-component.d.cts +1 -1
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/date-component.cjs +3 -3
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/date-time-component.cjs +3 -3
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/email-component.cjs +2 -2
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/file-component.cjs +2 -2
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/index.cjs +1 -1
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/month-component.cjs +3 -3
- package/dist/lib/cjs/obsidian/setting-components/multiple-dropdown-component.cjs +241 -0
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/multiple-dropdown-component.d.cts +1 -1
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/multiple-email-component.cjs +2 -2
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/multiple-file-component.cjs +3 -3
- package/dist/lib/cjs/obsidian/setting-components/multiple-text-component.cjs +254 -0
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/multiple-text-component.d.cts +1 -1
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/number-component.cjs +2 -2
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/password-component.cjs +2 -2
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/setting-component-wrapper.cjs +4 -4
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/telephone-component.cjs +2 -2
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/text-based-component.cjs +1 -1
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/time-component.cjs +2 -2
- package/dist/lib/cjs/obsidian/setting-components/tri-state-checkbox-component.cjs +210 -0
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/tri-state-checkbox-component.d.cts +1 -1
- package/dist/lib/cjs/obsidian/setting-components/typed-dropdown-component.cjs +247 -0
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/typed-dropdown-component.d.cts +1 -1
- package/dist/lib/cjs/obsidian/setting-components/typed-multiple-dropdown-component.cjs +249 -0
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/typed-multiple-dropdown-component.d.cts +1 -1
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/typed-range-text-component.cjs +1 -1
- package/dist/lib/cjs/obsidian/setting-components/typed-text-component.cjs +224 -0
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/typed-text-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/url-component.cjs +2 -2
- package/dist/lib/cjs/obsidian/setting-components/validator-component.cjs +226 -0
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/validator-component.d.cts +1 -1
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/value-component-with-change-tracking.cjs +1 -1
- package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/week-component.cjs +3 -3
- package/dist/lib/cjs/obsidian/setting-ex.cjs +21 -21
- package/dist/lib/cjs/obsidian/setting-ex.d.cts +20 -20
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.cjs +1 -1
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.d.cts +2 -2
- package/dist/lib/cjs/script-utils/linters/eslint-config.cjs +2 -1
- package/dist/lib/cjs/script-utils/linters/eslint-config.d.cts +2 -2
- package/dist/lib/cjs/type.cjs +1 -1
- package/dist/lib/esm/async-events.d.mts +19 -19
- package/dist/lib/esm/async-events.mjs +15 -18
- package/dist/lib/esm/async.d.mts +9 -8
- package/dist/lib/esm/async.mjs +1 -1
- package/dist/lib/esm/function.d.mts +43 -3
- package/dist/lib/esm/function.mjs +1 -1
- package/dist/lib/esm/library.mjs +1 -1
- package/dist/lib/esm/obsidian/@types/dataview/typings/obsidian-ex.d.mts +1 -1
- package/dist/lib/esm/obsidian/async-with-notice.d.mts +2 -2
- package/dist/lib/esm/obsidian/async-with-notice.mjs +1 -1
- package/dist/lib/esm/obsidian/{plugin/components → components}/abort-signal-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/components/abort-signal-component.mjs +59 -0
- package/dist/lib/{cjs/obsidian/components/all-windows-event-handler.d.cts → esm/obsidian/components/all-windows-event-component.d.mts} +6 -7
- package/dist/lib/esm/obsidian/components/all-windows-event-component.mjs +93 -0
- package/dist/lib/esm/obsidian/components/async-component.d.mts +2 -1
- package/dist/lib/esm/obsidian/components/async-component.mjs +3 -2
- package/dist/lib/esm/obsidian/{plugin/components → components}/async-error-handler-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/components/async-error-handler-component.mjs +62 -0
- package/dist/lib/esm/obsidian/components/async-events-component.d.mts +2 -1
- package/dist/lib/esm/obsidian/components/async-events-component.mjs +3 -2
- package/dist/lib/esm/obsidian/{plugin/components → components}/console-debug-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/components/console-debug-component.mjs +56 -0
- package/dist/lib/esm/obsidian/components/disposable-component.d.mts +34 -0
- package/dist/lib/esm/obsidian/components/disposable-component.mjs +50 -0
- package/dist/lib/esm/obsidian/{plugin/components → components}/i18n-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/components/i18n-component.mjs +53 -0
- package/dist/lib/esm/obsidian/components/index.d.mts +13 -2
- package/dist/lib/esm/obsidian/components/index.mjs +27 -5
- package/dist/lib/esm/obsidian/components/layout-ready-component.d.mts +47 -0
- package/dist/lib/esm/obsidian/components/layout-ready-component.mjs +76 -0
- package/dist/lib/esm/obsidian/components/menu-event-registrar-component.d.mts +41 -0
- package/dist/lib/esm/obsidian/components/menu-event-registrar-component.mjs +64 -0
- package/dist/lib/esm/obsidian/components/monkey-around-component.d.mts +113 -0
- package/dist/lib/esm/obsidian/components/monkey-around-component.mjs +87 -0
- package/dist/lib/esm/obsidian/{plugin/components → components}/plugin-context-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/components/plugin-context-component.mjs +61 -0
- package/dist/lib/esm/obsidian/{plugin/components → components}/plugin-notice-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/components/plugin-notice-component.mjs +58 -0
- package/dist/lib/esm/obsidian/{plugin/components → components}/plugin-settings-component.d.mts +6 -21
- package/dist/lib/esm/obsidian/components/plugin-settings-component.mjs +433 -0
- package/dist/lib/esm/obsidian/{plugin/components → components}/plugin-settings-tab-component.d.mts +5 -5
- package/dist/lib/esm/obsidian/components/plugin-settings-tab-component.mjs +50 -0
- package/dist/lib/esm/obsidian/constructors/getDomEventsHandlersConstructor.mjs +20 -16
- package/dist/lib/esm/obsidian/dataview.d.mts +1 -1
- package/dist/lib/esm/obsidian/dataview.mjs +1 -1
- package/dist/lib/esm/obsidian/index.d.mts +2 -1
- package/dist/lib/esm/obsidian/index.mjs +5 -3
- package/dist/lib/esm/obsidian/loop.d.mts +2 -2
- package/dist/lib/esm/obsidian/loop.mjs +1 -1
- package/dist/lib/esm/obsidian/markdown.mjs +13 -7
- package/dist/lib/esm/obsidian/menu-event-registrar.d.mts +1 -35
- package/dist/lib/esm/obsidian/menu-event-registrar.mjs +1 -42
- package/dist/lib/esm/obsidian/modals/prompt.d.mts +1 -1
- package/dist/lib/esm/obsidian/modals/prompt.mjs +1 -1
- package/dist/lib/esm/obsidian/modals/select-item.d.mts +1 -1
- package/dist/lib/esm/obsidian/modals/select-item.mjs +1 -1
- package/dist/lib/esm/obsidian/path-settings.mjs +135 -0
- package/dist/lib/esm/obsidian/plugin/index.d.mts +0 -2
- package/dist/lib/esm/obsidian/plugin/index.mjs +1 -5
- package/dist/lib/esm/obsidian/plugin/plugin-settings-tab.d.mts +5 -5
- package/dist/lib/esm/obsidian/plugin/plugin-settings-tab.mjs +4 -4
- package/dist/lib/esm/obsidian/plugin/plugin.d.mts +16 -13
- package/dist/lib/esm/obsidian/plugin/plugin.mjs +40 -34
- package/dist/lib/esm/obsidian/queue.d.mts +2 -2
- package/dist/lib/esm/obsidian/queue.mjs +1 -1
- package/dist/lib/esm/obsidian/rename-delete-handler.mjs +22 -12
- package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/checkbox-component.d.mts +1 -1
- package/dist/lib/esm/obsidian/setting-components/checkbox-component.mjs +101 -0
- package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/code-highlighter-component.d.mts +1 -1
- package/dist/lib/esm/obsidian/setting-components/code-highlighter-component.mjs +254 -0
- package/dist/lib/esm/obsidian/setting-components/date-component.mjs +62 -0
- package/dist/lib/esm/obsidian/setting-components/date-time-component.mjs +62 -0
- package/dist/lib/esm/obsidian/setting-components/email-component.mjs +72 -0
- package/dist/lib/esm/obsidian/setting-components/file-component.mjs +66 -0
- package/dist/lib/esm/obsidian/setting-components/index.mjs +78 -0
- package/dist/lib/esm/obsidian/setting-components/month-component.mjs +70 -0
- package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/multiple-dropdown-component.d.mts +1 -1
- package/dist/lib/esm/obsidian/setting-components/multiple-dropdown-component.mjs +136 -0
- package/dist/lib/esm/obsidian/setting-components/multiple-email-component.mjs +59 -0
- package/dist/lib/esm/obsidian/setting-components/multiple-file-component.mjs +68 -0
- package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/multiple-text-component.d.mts +1 -1
- package/dist/lib/esm/obsidian/setting-components/multiple-text-component.mjs +149 -0
- package/dist/lib/esm/obsidian/setting-components/number-component.mjs +82 -0
- package/dist/lib/esm/obsidian/setting-components/password-component.mjs +58 -0
- package/dist/lib/esm/obsidian/setting-components/setting-component-wrapper.mjs +45 -0
- package/dist/lib/esm/obsidian/setting-components/telephone-component.mjs +72 -0
- package/dist/lib/esm/obsidian/setting-components/text-based-component.mjs +58 -0
- package/dist/lib/esm/obsidian/setting-components/time-component.mjs +67 -0
- package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/tri-state-checkbox-component.d.mts +1 -1
- package/dist/lib/esm/obsidian/setting-components/tri-state-checkbox-component.mjs +102 -0
- package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/typed-dropdown-component.d.mts +1 -1
- package/dist/lib/esm/obsidian/setting-components/typed-dropdown-component.mjs +142 -0
- package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/typed-multiple-dropdown-component.d.mts +1 -1
- package/dist/lib/esm/obsidian/setting-components/typed-multiple-dropdown-component.mjs +141 -0
- package/dist/lib/esm/obsidian/setting-components/typed-range-text-component.mjs +60 -0
- package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/typed-text-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/typed-text-component.mjs +119 -0
- package/dist/lib/esm/obsidian/setting-components/url-component.mjs +72 -0
- package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/validator-component.d.mts +1 -1
- package/dist/lib/esm/obsidian/setting-components/validator-component.mjs +127 -0
- package/dist/lib/esm/obsidian/setting-components/week-component.mjs +70 -0
- package/dist/lib/esm/obsidian/setting-ex.d.mts +20 -20
- package/dist/lib/esm/obsidian/setting-ex.mjs +21 -21
- package/dist/lib/esm/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.d.mts +2 -2
- package/dist/lib/esm/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.mjs +1 -1
- package/dist/lib/esm/script-utils/linters/eslint-config.d.mts +2 -2
- package/dist/lib/esm/script-utils/linters/eslint-config.mjs +2 -1
- package/dist/lib/esm/type.mjs +1 -1
- package/obsidian/Components/abort-signal-component/package.json +6 -0
- package/obsidian/Components/{all-windows-event-handler → all-windows-event-component}/package.json +3 -3
- package/obsidian/Components/async-error-handler-component/package.json +6 -0
- package/obsidian/Components/console-debug-component/package.json +6 -0
- package/obsidian/Components/disposable-component/package.json +6 -0
- package/obsidian/Components/i18n-component/package.json +6 -0
- package/obsidian/Components/layout-ready-component/package.json +6 -0
- package/obsidian/Components/menu-event-registrar-component/package.json +6 -0
- package/obsidian/Components/monkey-around-component/package.json +6 -0
- package/obsidian/Components/plugin-context-component/package.json +6 -0
- package/obsidian/Components/plugin-notice-component/package.json +6 -0
- package/obsidian/Components/plugin-settings-component/package.json +6 -0
- package/obsidian/Components/plugin-settings-tab-component/package.json +6 -0
- package/obsidian/path-settings/package.json +6 -0
- package/obsidian/setting-components/checkbox-component/package.json +6 -0
- package/obsidian/setting-components/code-highlighter-component/package.json +6 -0
- package/obsidian/setting-components/date-component/package.json +6 -0
- package/obsidian/setting-components/date-time-component/package.json +6 -0
- package/obsidian/setting-components/email-component/package.json +6 -0
- package/obsidian/setting-components/file-component/package.json +6 -0
- package/obsidian/setting-components/index/package.json +6 -0
- package/obsidian/setting-components/month-component/package.json +6 -0
- package/obsidian/setting-components/multiple-dropdown-component/package.json +6 -0
- package/obsidian/setting-components/multiple-email-component/package.json +6 -0
- package/obsidian/setting-components/multiple-file-component/package.json +6 -0
- package/obsidian/setting-components/multiple-text-component/package.json +6 -0
- package/obsidian/setting-components/number-component/package.json +6 -0
- package/obsidian/setting-components/package.json +6 -0
- package/obsidian/setting-components/password-component/package.json +6 -0
- package/obsidian/setting-components/setting-component-wrapper/package.json +6 -0
- package/obsidian/setting-components/telephone-component/package.json +6 -0
- package/obsidian/setting-components/text-based-component/package.json +6 -0
- package/obsidian/setting-components/time-component/package.json +6 -0
- package/obsidian/setting-components/tri-state-checkbox-component/package.json +6 -0
- package/obsidian/setting-components/typed-dropdown-component/package.json +6 -0
- package/obsidian/setting-components/typed-multiple-dropdown-component/package.json +6 -0
- package/obsidian/setting-components/typed-range-text-component/package.json +6 -0
- package/obsidian/setting-components/typed-text-component/package.json +6 -0
- package/obsidian/setting-components/url-component/package.json +6 -0
- package/obsidian/setting-components/validator-component/package.json +6 -0
- package/obsidian/setting-components/value-component-with-change-tracking/package.json +6 -0
- package/obsidian/setting-components/week-component/package.json +6 -0
- package/package.json +23 -43
- package/dist/lib/cjs/obsidian/components/all-windows-event-handler.cjs +0 -196
- package/dist/lib/cjs/obsidian/components/setting-components/checkbox-component.cjs +0 -209
- package/dist/lib/cjs/obsidian/components/setting-components/code-highlighter-component.cjs +0 -356
- package/dist/lib/cjs/obsidian/components/setting-components/multiple-dropdown-component.cjs +0 -241
- package/dist/lib/cjs/obsidian/components/setting-components/multiple-text-component.cjs +0 -254
- package/dist/lib/cjs/obsidian/components/setting-components/tri-state-checkbox-component.cjs +0 -210
- package/dist/lib/cjs/obsidian/components/setting-components/typed-dropdown-component.cjs +0 -247
- package/dist/lib/cjs/obsidian/components/setting-components/typed-multiple-dropdown-component.cjs +0 -249
- package/dist/lib/cjs/obsidian/components/setting-components/typed-text-component.cjs +0 -224
- package/dist/lib/cjs/obsidian/components/setting-components/validator-component.cjs +0 -226
- package/dist/lib/cjs/obsidian/monkey-around.cjs +0 -177
- package/dist/lib/cjs/obsidian/monkey-around.d.cts +0 -62
- package/dist/lib/cjs/obsidian/plugin/components/index.cjs +0 -170
- package/dist/lib/cjs/obsidian/plugin/components/index.d.cts +0 -9
- package/dist/lib/cjs/obsidian/plugin/components/layout-ready-component.cjs +0 -124
- package/dist/lib/cjs/obsidian/plugin/components/layout-ready-component.d.cts +0 -18
- package/dist/lib/cjs/obsidian/plugin/components/plugin-settings-component.cjs +0 -563
- package/dist/lib/cjs/obsidian/plugin/path-settings.cjs +0 -239
- package/dist/lib/esm/obsidian/components/all-windows-event-handler.mjs +0 -88
- package/dist/lib/esm/obsidian/components/setting-components/checkbox-component.mjs +0 -101
- package/dist/lib/esm/obsidian/components/setting-components/code-highlighter-component.mjs +0 -254
- package/dist/lib/esm/obsidian/components/setting-components/date-component.mjs +0 -62
- package/dist/lib/esm/obsidian/components/setting-components/date-time-component.mjs +0 -62
- package/dist/lib/esm/obsidian/components/setting-components/email-component.mjs +0 -72
- package/dist/lib/esm/obsidian/components/setting-components/file-component.mjs +0 -66
- package/dist/lib/esm/obsidian/components/setting-components/index.mjs +0 -78
- package/dist/lib/esm/obsidian/components/setting-components/month-component.mjs +0 -70
- package/dist/lib/esm/obsidian/components/setting-components/multiple-dropdown-component.mjs +0 -136
- package/dist/lib/esm/obsidian/components/setting-components/multiple-email-component.mjs +0 -59
- package/dist/lib/esm/obsidian/components/setting-components/multiple-file-component.mjs +0 -68
- package/dist/lib/esm/obsidian/components/setting-components/multiple-text-component.mjs +0 -149
- package/dist/lib/esm/obsidian/components/setting-components/number-component.mjs +0 -82
- package/dist/lib/esm/obsidian/components/setting-components/password-component.mjs +0 -58
- package/dist/lib/esm/obsidian/components/setting-components/setting-component-wrapper.mjs +0 -45
- package/dist/lib/esm/obsidian/components/setting-components/telephone-component.mjs +0 -72
- package/dist/lib/esm/obsidian/components/setting-components/text-based-component.mjs +0 -58
- package/dist/lib/esm/obsidian/components/setting-components/time-component.mjs +0 -67
- package/dist/lib/esm/obsidian/components/setting-components/tri-state-checkbox-component.mjs +0 -102
- package/dist/lib/esm/obsidian/components/setting-components/typed-dropdown-component.mjs +0 -142
- package/dist/lib/esm/obsidian/components/setting-components/typed-multiple-dropdown-component.mjs +0 -141
- package/dist/lib/esm/obsidian/components/setting-components/typed-range-text-component.mjs +0 -60
- package/dist/lib/esm/obsidian/components/setting-components/typed-text-component.mjs +0 -119
- package/dist/lib/esm/obsidian/components/setting-components/url-component.mjs +0 -72
- package/dist/lib/esm/obsidian/components/setting-components/validator-component.mjs +0 -127
- package/dist/lib/esm/obsidian/components/setting-components/week-component.mjs +0 -70
- package/dist/lib/esm/obsidian/monkey-around.d.mts +0 -62
- package/dist/lib/esm/obsidian/monkey-around.mjs +0 -66
- package/dist/lib/esm/obsidian/plugin/components/abort-signal-component.mjs +0 -59
- package/dist/lib/esm/obsidian/plugin/components/async-error-handler-component.mjs +0 -62
- package/dist/lib/esm/obsidian/plugin/components/console-debug-component.mjs +0 -56
- package/dist/lib/esm/obsidian/plugin/components/i18n-component.mjs +0 -53
- package/dist/lib/esm/obsidian/plugin/components/index.d.mts +0 -9
- package/dist/lib/esm/obsidian/plugin/components/index.mjs +0 -44
- package/dist/lib/esm/obsidian/plugin/components/layout-ready-component.d.mts +0 -18
- package/dist/lib/esm/obsidian/plugin/components/layout-ready-component.mjs +0 -24
- package/dist/lib/esm/obsidian/plugin/components/plugin-context-component.mjs +0 -61
- package/dist/lib/esm/obsidian/plugin/components/plugin-notice-component.mjs +0 -60
- package/dist/lib/esm/obsidian/plugin/components/plugin-settings-component.mjs +0 -461
- package/dist/lib/esm/obsidian/plugin/components/plugin-settings-tab-component.mjs +0 -49
- package/dist/lib/esm/obsidian/plugin/path-settings.mjs +0 -135
- package/obsidian/Components/setting-components/checkbox-component/package.json +0 -6
- package/obsidian/Components/setting-components/code-highlighter-component/package.json +0 -6
- package/obsidian/Components/setting-components/date-component/package.json +0 -6
- package/obsidian/Components/setting-components/date-time-component/package.json +0 -6
- package/obsidian/Components/setting-components/email-component/package.json +0 -6
- package/obsidian/Components/setting-components/file-component/package.json +0 -6
- package/obsidian/Components/setting-components/index/package.json +0 -6
- package/obsidian/Components/setting-components/month-component/package.json +0 -6
- package/obsidian/Components/setting-components/multiple-dropdown-component/package.json +0 -6
- package/obsidian/Components/setting-components/multiple-email-component/package.json +0 -6
- package/obsidian/Components/setting-components/multiple-file-component/package.json +0 -6
- package/obsidian/Components/setting-components/multiple-text-component/package.json +0 -6
- package/obsidian/Components/setting-components/number-component/package.json +0 -6
- package/obsidian/Components/setting-components/package.json +0 -6
- package/obsidian/Components/setting-components/password-component/package.json +0 -6
- package/obsidian/Components/setting-components/setting-component-wrapper/package.json +0 -6
- package/obsidian/Components/setting-components/telephone-component/package.json +0 -6
- package/obsidian/Components/setting-components/text-based-component/package.json +0 -6
- package/obsidian/Components/setting-components/time-component/package.json +0 -6
- package/obsidian/Components/setting-components/tri-state-checkbox-component/package.json +0 -6
- package/obsidian/Components/setting-components/typed-dropdown-component/package.json +0 -6
- package/obsidian/Components/setting-components/typed-multiple-dropdown-component/package.json +0 -6
- package/obsidian/Components/setting-components/typed-range-text-component/package.json +0 -6
- package/obsidian/Components/setting-components/typed-text-component/package.json +0 -6
- package/obsidian/Components/setting-components/url-component/package.json +0 -6
- package/obsidian/Components/setting-components/validator-component/package.json +0 -6
- package/obsidian/Components/setting-components/value-component-with-change-tracking/package.json +0 -6
- package/obsidian/Components/setting-components/week-component/package.json +0 -6
- package/obsidian/Plugin/components/abort-signal-component/package.json +0 -6
- package/obsidian/Plugin/components/async-error-handler-component/package.json +0 -6
- package/obsidian/Plugin/components/console-debug-component/package.json +0 -6
- package/obsidian/Plugin/components/i18n-component/package.json +0 -6
- package/obsidian/Plugin/components/index/package.json +0 -6
- package/obsidian/Plugin/components/layout-ready-component/package.json +0 -6
- package/obsidian/Plugin/components/package.json +0 -6
- package/obsidian/Plugin/components/plugin-context-component/package.json +0 -6
- package/obsidian/Plugin/components/plugin-notice-component/package.json +0 -6
- package/obsidian/Plugin/components/plugin-settings-component/package.json +0 -6
- package/obsidian/Plugin/components/plugin-settings-tab-component/package.json +0 -6
- package/obsidian/Plugin/path-settings/package.json +0 -6
- package/obsidian/monkey-around/package.json +0 -6
- /package/dist/lib/cjs/obsidian/{plugin/path-settings.d.cts → path-settings.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/date-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/date-time-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/email-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/file-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/index.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/month-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/multiple-email-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/multiple-file-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/number-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/password-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/setting-component-wrapper.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/telephone-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/text-based-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/time-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/typed-range-text-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/url-component.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/value-component-with-change-tracking.d.cts +0 -0
- /package/dist/lib/cjs/obsidian/{components/setting-components → setting-components}/week-component.d.cts +0 -0
- /package/dist/lib/esm/obsidian/{plugin/path-settings.d.mts → path-settings.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/date-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/date-time-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/email-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/file-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/index.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/month-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/multiple-email-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/multiple-file-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/number-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/password-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/setting-component-wrapper.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/telephone-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/text-based-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/time-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/typed-range-text-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/url-component.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/value-component-with-change-tracking.d.mts +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/value-component-with-change-tracking.mjs +0 -0
- /package/dist/lib/esm/obsidian/{components/setting-components → setting-components}/week-component.d.mts +0 -0
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/*
|
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
(function initEsm() {
|
|
7
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
8
|
+
if (globalThis.process) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const browserProcess = {
|
|
13
|
+
browser: true,
|
|
14
|
+
cwd() {
|
|
15
|
+
return '/';
|
|
16
|
+
},
|
|
17
|
+
env: {},
|
|
18
|
+
platform: 'android'
|
|
19
|
+
};
|
|
20
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
21
|
+
globalThis.process = browserProcess;
|
|
22
|
+
})();
|
|
23
|
+
|
|
24
|
+
import { moment as moment_ } from "obsidian";
|
|
25
|
+
import { CssClass } from "../../css-class.mjs";
|
|
26
|
+
import { extractDefaultExportInterop } from "../../object-utils.mjs";
|
|
27
|
+
import { TypedRangeTextComponent } from "./typed-range-text-component.mjs";
|
|
28
|
+
const moment = extractDefaultExportInterop(moment_);
|
|
29
|
+
const DATE_FORMAT = "YYYY-MM";
|
|
30
|
+
class MonthComponent extends TypedRangeTextComponent {
|
|
31
|
+
/**
|
|
32
|
+
* Creates a new month component.
|
|
33
|
+
*
|
|
34
|
+
* @param containerEl - The container element of the component.
|
|
35
|
+
*/
|
|
36
|
+
constructor(containerEl) {
|
|
37
|
+
super(containerEl, "month", CssClass.MonthComponent);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Converts a string to a month.
|
|
41
|
+
*
|
|
42
|
+
* @param str - The string to convert.
|
|
43
|
+
* @returns The month.
|
|
44
|
+
*/
|
|
45
|
+
valueFromString(str) {
|
|
46
|
+
const parsed = moment(str, DATE_FORMAT);
|
|
47
|
+
if (!parsed.isValid()) {
|
|
48
|
+
throw new Error("Invalid month");
|
|
49
|
+
}
|
|
50
|
+
return {
|
|
51
|
+
month: parsed.month() + 1,
|
|
52
|
+
year: parsed.year()
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Converts a month to a string.
|
|
57
|
+
*
|
|
58
|
+
* @param value - The month to convert.
|
|
59
|
+
* @returns The string.
|
|
60
|
+
*/
|
|
61
|
+
// eslint-disable-next-line obsidian-dev-utils/require-super-call -- Intentionally replaces default String() conversion with custom formatting.
|
|
62
|
+
valueToString(value) {
|
|
63
|
+
const date = moment().year(value.year).month(value.month - 1);
|
|
64
|
+
return date.format(DATE_FORMAT);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
export {
|
|
68
|
+
MonthComponent
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tb250aC1jb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIG1vbnRoLlxuICovXG5cbmltcG9ydCB7IG1vbWVudCBhcyBtb21lbnRfIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBpbml0UGx1Z2luQ29udGV4dGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYFNldHRpbmdFeGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IFNldHRpbmdFeCB9IGZyb20gJy4uL3NldHRpbmctZXgudHMnO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uLy4uL2Nzcy1jbGFzcy50cyc7XG5pbXBvcnQgeyBleHRyYWN0RGVmYXVsdEV4cG9ydEludGVyb3AgfSBmcm9tICcuLi8uLi9vYmplY3QtdXRpbHMudHMnO1xuaW1wb3J0IHsgVHlwZWRSYW5nZVRleHRDb21wb25lbnQgfSBmcm9tICcuL3R5cGVkLXJhbmdlLXRleHQtY29tcG9uZW50LnRzJztcblxuY29uc3QgbW9tZW50ID0gZXh0cmFjdERlZmF1bHRFeHBvcnRJbnRlcm9wKG1vbWVudF8pO1xuXG5jb25zdCBEQVRFX0ZPUk1BVCA9ICdZWVlZLU1NJztcblxuLyoqXG4gKiBBbiBJU08gODYwMSBtb250aC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJc29Nb250aCB7XG4gIC8qKlxuICAgKiBBIG1vbnRoICgxLTEyKS5cbiAgICovXG4gIG1vbnRoOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEEgeWVhciAoMS05OTk5KS5cbiAgICovXG4gIHllYXI6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBBIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIG1vbnRoLlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkTW9udGh9LlxuICpcbiAqIEluIG9yZGVyIHRvIGFkZCB0aGUgc3R5bGVzIGZvciB0aGUgY29tcG9uZW50LCB1c2Uge0BsaW5rIGluaXRQbHVnaW5Db250ZXh0fSBpbiB5b3VyIHBsdWdpbidzIGBvbmxvYWQoKWAgZnVuY3Rpb24uXG4gKlxuICogQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb3B5IHN0eWxlcyBmcm9tIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vbW5hb3Vtb3Yvb2JzaWRpYW4tZGV2LXV0aWxzL3JlbGVhc2VzL2xhdGVzdC9kb3dubG9hZC9zdHlsZXMuY3NzfS5cbiAqL1xuZXhwb3J0IGNsYXNzIE1vbnRoQ29tcG9uZW50IGV4dGVuZHMgVHlwZWRSYW5nZVRleHRDb21wb25lbnQ8SXNvTW9udGg+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbW9udGggY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY29udGFpbmVyRWwgLSBUaGUgY29udGFpbmVyIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb250YWluZXJFbDogSFRNTEVsZW1lbnQpIHtcbiAgICBzdXBlcihjb250YWluZXJFbCwgJ21vbnRoJywgQ3NzQ2xhc3MuTW9udGhDb21wb25lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgc3RyaW5nIHRvIGEgbW9udGguXG4gICAqXG4gICAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nIHRvIGNvbnZlcnQuXG4gICAqIEByZXR1cm5zIFRoZSBtb250aC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB2YWx1ZUZyb21TdHJpbmcoc3RyOiBzdHJpbmcpOiBJc29Nb250aCB7XG4gICAgY29uc3QgcGFyc2VkID0gbW9tZW50KHN0ciwgREFURV9GT1JNQVQpO1xuXG4gICAgaWYgKCFwYXJzZWQuaXNWYWxpZCgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgbW9udGgnKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgbW9udGg6IHBhcnNlZC5tb250aCgpICsgMSxcbiAgICAgIHllYXI6IHBhcnNlZC55ZWFyKClcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgbW9udGggdG8gYSBzdHJpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBtb250aCB0byBjb252ZXJ0LlxuICAgKiBAcmV0dXJucyBUaGUgc3RyaW5nLlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG9ic2lkaWFuLWRldi11dGlscy9yZXF1aXJlLXN1cGVyLWNhbGwgLS0gSW50ZW50aW9uYWxseSByZXBsYWNlcyBkZWZhdWx0IFN0cmluZygpIGNvbnZlcnNpb24gd2l0aCBjdXN0b20gZm9ybWF0dGluZy5cbiAgcHVibGljIG92ZXJyaWRlIHZhbHVlVG9TdHJpbmcodmFsdWU6IElzb01vbnRoKTogc3RyaW5nIHtcbiAgICBjb25zdCBkYXRlID0gbW9tZW50KCkueWVhcih2YWx1ZS55ZWFyKS5tb250aCh2YWx1ZS5tb250aCAtIDEpO1xuICAgIHJldHVybiBkYXRlLmZvcm1hdChEQVRFX0ZPUk1BVCk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyxVQUFVLGVBQWU7QUFPbEMsU0FBUyxnQkFBZ0I7QUFDekIsU0FBUyxtQ0FBbUM7QUFDNUMsU0FBUywrQkFBK0I7QUFFeEMsTUFBTSxTQUFTLDRCQUE0QixPQUFPO0FBRWxELE1BQU0sY0FBYztBQTBCYixNQUFNLHVCQUF1Qix3QkFBa0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNN0QsWUFBWSxhQUEwQjtBQUMzQyxVQUFNLGFBQWEsU0FBUyxTQUFTLGNBQWM7QUFBQSxFQUNyRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGdCQUFnQixLQUF1QjtBQUNyRCxVQUFNLFNBQVMsT0FBTyxLQUFLLFdBQVc7QUFFdEMsUUFBSSxDQUFDLE9BQU8sUUFBUSxHQUFHO0FBQ3JCLFlBQU0sSUFBSSxNQUFNLGVBQWU7QUFBQSxJQUNqQztBQUVBLFdBQU87QUFBQSxNQUNMLE9BQU8sT0FBTyxNQUFNLElBQUk7QUFBQSxNQUN4QixNQUFNLE9BQU8sS0FBSztBQUFBLElBQ3BCO0FBQUEsRUFDRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTZ0IsY0FBYyxPQUF5QjtBQUNyRCxVQUFNLE9BQU8sT0FBTyxFQUFFLEtBQUssTUFBTSxJQUFJLEVBQUUsTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1RCxXQUFPLEtBQUssT0FBTyxXQUFXO0FBQUEsRUFDaEM7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { Promisable } from 'type-fest';
|
|
7
7
|
import { ValueComponent } from 'obsidian';
|
|
8
|
-
import type { ValidatorElement } from '
|
|
8
|
+
import type { ValidatorElement } from '../../html-element.mjs';
|
|
9
9
|
import type { ValidatorComponent } from './validator-component.mjs';
|
|
10
10
|
import type { ValueComponentWithChangeTracking } from './value-component-with-change-tracking.mjs';
|
|
11
11
|
/**
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/*
|
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
(function initEsm() {
|
|
7
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
8
|
+
if (globalThis.process) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const browserProcess = {
|
|
13
|
+
browser: true,
|
|
14
|
+
cwd() {
|
|
15
|
+
return '/';
|
|
16
|
+
},
|
|
17
|
+
env: {},
|
|
18
|
+
platform: 'android'
|
|
19
|
+
};
|
|
20
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
21
|
+
globalThis.process = browserProcess;
|
|
22
|
+
})();
|
|
23
|
+
|
|
24
|
+
import {
|
|
25
|
+
DropdownComponent,
|
|
26
|
+
ValueComponent
|
|
27
|
+
} from "obsidian";
|
|
28
|
+
import { CssClass } from "../../css-class.mjs";
|
|
29
|
+
import { addPluginCssClasses } from "../plugin/plugin-context.mjs";
|
|
30
|
+
class MultipleDropdownComponent extends ValueComponent {
|
|
31
|
+
/**
|
|
32
|
+
* A select element of the component.
|
|
33
|
+
*
|
|
34
|
+
* @returns The select element.
|
|
35
|
+
*/
|
|
36
|
+
get selectEl() {
|
|
37
|
+
return this.dropdownComponent.selectEl;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* A validator element of the component.
|
|
41
|
+
*
|
|
42
|
+
* @returns The validator element.
|
|
43
|
+
*/
|
|
44
|
+
get validatorEl() {
|
|
45
|
+
return this.selectEl;
|
|
46
|
+
}
|
|
47
|
+
dropdownComponent;
|
|
48
|
+
simulateChangeCallback;
|
|
49
|
+
/**
|
|
50
|
+
* Creates a new multiple dropdown component.
|
|
51
|
+
*
|
|
52
|
+
* @param containerEl - The container element of the component.
|
|
53
|
+
*/
|
|
54
|
+
constructor(containerEl) {
|
|
55
|
+
super();
|
|
56
|
+
this.dropdownComponent = new DropdownComponent(containerEl);
|
|
57
|
+
this.dropdownComponent.selectEl.multiple = true;
|
|
58
|
+
addPluginCssClasses(containerEl, CssClass.MultipleDropdownComponent);
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Adds an option to the dropdown.
|
|
62
|
+
*
|
|
63
|
+
* @param value - The value of the option.
|
|
64
|
+
* @param display - The display text of the option.
|
|
65
|
+
* @returns The component.
|
|
66
|
+
*/
|
|
67
|
+
addOption(value, display) {
|
|
68
|
+
this.dropdownComponent.addOption(value, display);
|
|
69
|
+
return this;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Adds multiple options to the dropdown.
|
|
73
|
+
*
|
|
74
|
+
* @param options - The options to add.
|
|
75
|
+
* @returns The component.
|
|
76
|
+
*/
|
|
77
|
+
addOptions(options) {
|
|
78
|
+
this.dropdownComponent.addOptions(options);
|
|
79
|
+
return this;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Gets the value of the component.
|
|
83
|
+
*
|
|
84
|
+
* @returns The value of the component.
|
|
85
|
+
*/
|
|
86
|
+
getValue() {
|
|
87
|
+
return Array.from(this.dropdownComponent.selectEl.selectedOptions).map((o) => o.value);
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Sets the callback function to be called when the component is changed.
|
|
91
|
+
*
|
|
92
|
+
* @param callback - The callback function to be called when the component is changed.
|
|
93
|
+
* @returns The component.
|
|
94
|
+
*/
|
|
95
|
+
onChange(callback) {
|
|
96
|
+
const changeHandler = () => {
|
|
97
|
+
callback(this.getValue());
|
|
98
|
+
};
|
|
99
|
+
this.simulateChangeCallback = changeHandler;
|
|
100
|
+
this.dropdownComponent.onChange(changeHandler);
|
|
101
|
+
return this;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Sets the disabled state of the component.
|
|
105
|
+
*
|
|
106
|
+
* @param disabled - The disabled state to set.
|
|
107
|
+
* @returns The component.
|
|
108
|
+
*/
|
|
109
|
+
setDisabled(disabled) {
|
|
110
|
+
super.setDisabled(disabled);
|
|
111
|
+
this.dropdownComponent.setDisabled(disabled);
|
|
112
|
+
return this;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Sets the value of the component.
|
|
116
|
+
*
|
|
117
|
+
* @param value - The value to set.
|
|
118
|
+
* @returns The component.
|
|
119
|
+
*/
|
|
120
|
+
setValue(value) {
|
|
121
|
+
for (const option of Array.from(this.dropdownComponent.selectEl.options)) {
|
|
122
|
+
option.selected = value.includes(option.value);
|
|
123
|
+
}
|
|
124
|
+
return this;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* @deprecated Use only from tests to simulate a change event.
|
|
128
|
+
*/
|
|
129
|
+
simulateChange() {
|
|
130
|
+
this.simulateChangeCallback?.();
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
export {
|
|
134
|
+
MultipleDropdownComponent
|
|
135
|
+
};
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS1kcm9wZG93bi1jb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIG11bHRpLXNlbGVjdCBkcm9wZG93bi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFByb21pc2FibGUgfSBmcm9tICd0eXBlLWZlc3QnO1xuXG5pbXBvcnQge1xuICBEcm9wZG93bkNvbXBvbmVudCxcbiAgVmFsdWVDb21wb25lbnRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckVsZW1lbnQgfSBmcm9tICcuLi8uLi9odG1sLWVsZW1lbnQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgaW5pdFBsdWdpbkNvbnRleHRgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBpbml0UGx1Z2luQ29udGV4dCB9IGZyb20gJy4uL3BsdWdpbi9wbHVnaW4tY29udGV4dC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBTZXR0aW5nRXhgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBTZXR0aW5nRXggfSBmcm9tICcuLi9zZXR0aW5nLWV4LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi92YWxpZGF0b3ItY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC13aXRoLWNoYW5nZS10cmFja2luZy50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vLi4vY3NzLWNsYXNzLnRzJztcbmltcG9ydCB7IGFkZFBsdWdpbkNzc0NsYXNzZXMgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuXG4vKipcbiAqIEEgbXVsdGktc2VsZWN0IGRyb3Bkb3duIGNvbXBvbmVudC5cbiAqXG4gKiBZb3UgY2FuIGFkZCB0aGlzIGNvbXBvbmVudCB1c2luZyB7QGxpbmsgU2V0dGluZ0V4LmFkZE11bHRpcGxlRHJvcGRvd259LlxuICpcbiAqIEluIG9yZGVyIHRvIGFkZCB0aGUgc3R5bGVzIGZvciB0aGUgY29tcG9uZW50LCB1c2Uge0BsaW5rIGluaXRQbHVnaW5Db250ZXh0fSBpbiB5b3VyIHBsdWdpbidzIGBvbmxvYWQoKWAgZnVuY3Rpb24uXG4gKlxuICogQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb3B5IHN0eWxlcyBmcm9tIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vbW5hb3Vtb3Yvb2JzaWRpYW4tZGV2LXV0aWxzL3JlbGVhc2VzL2xhdGVzdC9kb3dubG9hZC9zdHlsZXMuY3NzfS5cbiAqL1xuZXhwb3J0IGNsYXNzIE11bHRpcGxlRHJvcGRvd25Db21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudDxyZWFkb25seSBzdHJpbmdbXT5cbiAgaW1wbGVtZW50cyBWYWxpZGF0b3JDb21wb25lbnQsIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPHJlYWRvbmx5IHN0cmluZ1tdPiB7XG4gIC8qKlxuICAgKiBBIHNlbGVjdCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBzZWxlY3QgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgc2VsZWN0RWwoKTogSFRNTFNlbGVjdEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbGlkYXRvciBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCB2YWxpZGF0b3JFbCgpOiBWYWxpZGF0b3JFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RFbDtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25Db21wb25lbnQ6IERyb3Bkb3duQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz86ICgpID0+IHZvaWQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgZHJvcGRvd24gY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY29udGFpbmVyRWwgLSBUaGUgY29udGFpbmVyIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb250YWluZXJFbDogSFRNTEVsZW1lbnQpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQgPSBuZXcgRHJvcGRvd25Db21wb25lbnQoY29udGFpbmVyRWwpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWwubXVsdGlwbGUgPSB0cnVlO1xuICAgIGFkZFBsdWdpbkNzc0NsYXNzZXMoY29udGFpbmVyRWwsIENzc0NsYXNzLk11bHRpcGxlRHJvcGRvd25Db21wb25lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYW4gb3B0aW9uIHRvIHRoZSBkcm9wZG93bi5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIG9mIHRoZSBvcHRpb24uXG4gICAqIEBwYXJhbSBkaXNwbGF5IC0gVGhlIGRpc3BsYXkgdGV4dCBvZiB0aGUgb3B0aW9uLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFkZE9wdGlvbih2YWx1ZTogc3RyaW5nLCBkaXNwbGF5OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LmFkZE9wdGlvbih2YWx1ZSwgZGlzcGxheSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBtdWx0aXBsZSBvcHRpb25zIHRvIHRoZSBkcm9wZG93bi5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyB0byBhZGQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgYWRkT3B0aW9ucyhvcHRpb25zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KTogdGhpcyB7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5hZGRPcHRpb25zKG9wdGlvbnMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldFZhbHVlKCk6IHJlYWRvbmx5IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsLnNlbGVjdGVkT3B0aW9ucykubWFwKChvKSA9PiBvLnZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayAtIFRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2UoY2FsbGJhY2s6ICh2YWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pID0+IFByb21pc2FibGU8dm9pZD4pOiB0aGlzIHtcbiAgICBjb25zdCBjaGFuZ2VIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgY2FsbGJhY2sodGhpcy5nZXRWYWx1ZSgpKTtcbiAgICB9O1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjayA9IGNoYW5nZUhhbmRsZXI7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5vbkNoYW5nZShjaGFuZ2VIYW5kbGVyKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZGlzYWJsZWQgLSBUaGUgZGlzYWJsZWQgc3RhdGUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHNldERpc2FibGVkKGRpc2FibGVkOiBib29sZWFuKTogdGhpcyB7XG4gICAgc3VwZXIuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0VmFsdWUodmFsdWU6IHJlYWRvbmx5IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgZm9yIChjb25zdCBvcHRpb24gb2YgQXJyYXkuZnJvbSh0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsLm9wdGlvbnMpKSB7XG4gICAgICBvcHRpb24uc2VsZWN0ZWQgPSB2YWx1ZS5pbmNsdWRlcyhvcHRpb24udmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFVzZSBvbmx5IGZyb20gdGVzdHMgdG8gc2ltdWxhdGUgYSBjaGFuZ2UgZXZlbnQuXG4gICAqL1xuICBwdWJsaWMgc2ltdWxhdGVDaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5zaW11bGF0ZUNoYW5nZUNhbGxiYWNrPy4oKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQVVQLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsMkJBQTJCO0FBVzdCLE1BQU0sa0NBQWtDLGVBQ3NDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTW5GLElBQVcsV0FBOEI7QUFDdkMsV0FBTyxLQUFLLGtCQUFrQjtBQUFBLEVBQ2hDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsSUFBVyxjQUFnQztBQUN6QyxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUEsRUFFaUI7QUFBQSxFQUVUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0QsWUFBWSxhQUEwQjtBQUMzQyxVQUFNO0FBQ04sU0FBSyxvQkFBb0IsSUFBSSxrQkFBa0IsV0FBVztBQUMxRCxTQUFLLGtCQUFrQixTQUFTLFdBQVc7QUFDM0Msd0JBQW9CLGFBQWEsU0FBUyx5QkFBeUI7QUFBQSxFQUNyRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTTyxVQUFVLE9BQWUsU0FBdUI7QUFDckQsU0FBSyxrQkFBa0IsVUFBVSxPQUFPLE9BQU87QUFDL0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFdBQVcsU0FBdUM7QUFDdkQsU0FBSyxrQkFBa0IsV0FBVyxPQUFPO0FBQ3pDLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT08sV0FBOEI7QUFDbkMsV0FBTyxNQUFNLEtBQUssS0FBSyxrQkFBa0IsU0FBUyxlQUFlLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLO0FBQUEsRUFDdkY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsVUFBZ0U7QUFDOUUsVUFBTSxnQkFBZ0IsTUFBWTtBQUNoQyxlQUFTLEtBQUssU0FBUyxDQUFDO0FBQUEsSUFDMUI7QUFDQSxTQUFLLHlCQUF5QjtBQUM5QixTQUFLLGtCQUFrQixTQUFTLGFBQWE7QUFDN0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixZQUFZLFVBQXlCO0FBQ25ELFVBQU0sWUFBWSxRQUFRO0FBQzFCLFNBQUssa0JBQWtCLFlBQVksUUFBUTtBQUMzQyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxPQUFnQztBQUM5QyxlQUFXLFVBQVUsTUFBTSxLQUFLLEtBQUssa0JBQWtCLFNBQVMsT0FBTyxHQUFHO0FBQ3hFLGFBQU8sV0FBVyxNQUFNLFNBQVMsT0FBTyxLQUFLO0FBQUEsSUFDL0M7QUFFQSxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS08saUJBQXVCO0FBQzVCLFNBQUsseUJBQXlCO0FBQUEsRUFDaEM7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/*
|
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
(function initEsm() {
|
|
7
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
8
|
+
if (globalThis.process) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const browserProcess = {
|
|
13
|
+
browser: true,
|
|
14
|
+
cwd() {
|
|
15
|
+
return '/';
|
|
16
|
+
},
|
|
17
|
+
env: {},
|
|
18
|
+
platform: 'android'
|
|
19
|
+
};
|
|
20
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
21
|
+
globalThis.process = browserProcess;
|
|
22
|
+
})();
|
|
23
|
+
|
|
24
|
+
import { CssClass } from "../../css-class.mjs";
|
|
25
|
+
import { TypedTextComponent } from "./typed-text-component.mjs";
|
|
26
|
+
class MultipleEmailComponent extends TypedTextComponent {
|
|
27
|
+
/**
|
|
28
|
+
* Creates a new multiple emails component.
|
|
29
|
+
*
|
|
30
|
+
* @param containerEl - The container element of the component.
|
|
31
|
+
*/
|
|
32
|
+
constructor(containerEl) {
|
|
33
|
+
super(containerEl, "email", CssClass.MultipleEmailComponent);
|
|
34
|
+
this.inputEl.multiple = true;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Converts a string to an email address.
|
|
38
|
+
*
|
|
39
|
+
* @param str - The string to convert.
|
|
40
|
+
* @returns The email address.
|
|
41
|
+
*/
|
|
42
|
+
valueFromString(str) {
|
|
43
|
+
return str.split(",").map((email) => email.trim());
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Converts an email address to a string.
|
|
47
|
+
*
|
|
48
|
+
* @param value - The email address to convert.
|
|
49
|
+
* @returns The string.
|
|
50
|
+
*/
|
|
51
|
+
// eslint-disable-next-line obsidian-dev-utils/require-super-call -- Intentionally replaces default String() conversion with custom formatting.
|
|
52
|
+
valueToString(value) {
|
|
53
|
+
return value.join(", ");
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
export {
|
|
57
|
+
MultipleEmailComponent
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS1lbWFpbC1jb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBtdWx0aXBsZSBlbWFpbCBhZGRyZXNzZXMuXG4gKi9cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgaW5pdFBsdWdpbkNvbnRleHRgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBpbml0UGx1Z2luQ29udGV4dCB9IGZyb20gJy4uL3BsdWdpbi9wbHVnaW4tY29udGV4dC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBTZXR0aW5nRXhgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBTZXR0aW5nRXggfSBmcm9tICcuLi9zZXR0aW5nLWV4LnRzJztcblxuaW1wb3J0IHsgQ3NzQ2xhc3MgfSBmcm9tICcuLi8uLi9jc3MtY2xhc3MudHMnO1xuaW1wb3J0IHsgVHlwZWRUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi90eXBlZC10ZXh0LWNvbXBvbmVudC50cyc7XG5cbi8qKlxuICogQSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBhbmQgZWRpdHMgbXVsdGlwbGUgZW1haWwgYWRkcmVzc2VzLlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkTXVsdGlwbGVFbWFpbH0uXG4gKlxuICogSW4gb3JkZXIgdG8gYWRkIHRoZSBzdHlsZXMgZm9yIHRoZSBjb21wb25lbnQsIHVzZSB7QGxpbmsgaW5pdFBsdWdpbkNvbnRleHR9IGluIHlvdXIgcGx1Z2luJ3MgYG9ubG9hZCgpYCBmdW5jdGlvbi5cbiAqXG4gKiBBbHRlcm5hdGl2ZWx5LCB5b3UgY2FuIGNvcHkgc3R5bGVzIGZyb20ge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9tbmFvdW1vdi9vYnNpZGlhbi1kZXYtdXRpbHMvcmVsZWFzZXMvbGF0ZXN0L2Rvd25sb2FkL3N0eWxlcy5jc3N9LlxuICovXG5leHBvcnQgY2xhc3MgTXVsdGlwbGVFbWFpbENvbXBvbmVudCBleHRlbmRzIFR5cGVkVGV4dENvbXBvbmVudDxyZWFkb25seSBzdHJpbmdbXT4ge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBtdWx0aXBsZSBlbWFpbHMgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY29udGFpbmVyRWwgLSBUaGUgY29udGFpbmVyIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb250YWluZXJFbDogSFRNTEVsZW1lbnQpIHtcbiAgICBzdXBlcihjb250YWluZXJFbCwgJ2VtYWlsJywgQ3NzQ2xhc3MuTXVsdGlwbGVFbWFpbENvbXBvbmVudCk7XG4gICAgdGhpcy5pbnB1dEVsLm11bHRpcGxlID0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyBhIHN0cmluZyB0byBhbiBlbWFpbCBhZGRyZXNzLlxuICAgKlxuICAgKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byBjb252ZXJ0LlxuICAgKiBAcmV0dXJucyBUaGUgZW1haWwgYWRkcmVzcy5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB2YWx1ZUZyb21TdHJpbmcoc3RyOiBzdHJpbmcpOiByZWFkb25seSBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHN0ci5zcGxpdCgnLCcpLm1hcCgoZW1haWwpID0+IGVtYWlsLnRyaW0oKSk7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgYW4gZW1haWwgYWRkcmVzcyB0byBhIHN0cmluZy5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIGVtYWlsIGFkZHJlc3MgdG8gY29udmVydC5cbiAgICogQHJldHVybnMgVGhlIHN0cmluZy5cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBvYnNpZGlhbi1kZXYtdXRpbHMvcmVxdWlyZS1zdXBlci1jYWxsIC0tIEludGVudGlvbmFsbHkgcmVwbGFjZXMgZGVmYXVsdCBTdHJpbmcoKSBjb252ZXJzaW9uIHdpdGggY3VzdG9tIGZvcm1hdHRpbmcuXG4gIHB1YmxpYyBvdmVycmlkZSB2YWx1ZVRvU3RyaW5nKHZhbHVlOiByZWFkb25seSBzdHJpbmdbXSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlLmpvaW4oJywgJyk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBV0EsU0FBUyxnQkFBZ0I7QUFDekIsU0FBUywwQkFBMEI7QUFXNUIsTUFBTSwrQkFBK0IsbUJBQXNDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTXpFLFlBQVksYUFBMEI7QUFDM0MsVUFBTSxhQUFhLFNBQVMsU0FBUyxzQkFBc0I7QUFDM0QsU0FBSyxRQUFRLFdBQVc7QUFBQSxFQUMxQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGdCQUFnQixLQUFnQztBQUM5RCxXQUFPLElBQUksTUFBTSxHQUFHLEVBQUUsSUFBSSxDQUFDLFVBQVUsTUFBTSxLQUFLLENBQUM7QUFBQSxFQUNuRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTZ0IsY0FBYyxPQUFrQztBQUM5RCxXQUFPLE1BQU0sS0FBSyxJQUFJO0FBQUEsRUFDeEI7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/*
|
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
(function initEsm() {
|
|
7
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
8
|
+
if (globalThis.process) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const browserProcess = {
|
|
13
|
+
browser: true,
|
|
14
|
+
cwd() {
|
|
15
|
+
return '/';
|
|
16
|
+
},
|
|
17
|
+
env: {},
|
|
18
|
+
platform: 'android'
|
|
19
|
+
};
|
|
20
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
21
|
+
globalThis.process = browserProcess;
|
|
22
|
+
})();
|
|
23
|
+
|
|
24
|
+
import { CssClass } from "../../css-class.mjs";
|
|
25
|
+
import { ensureNonNullable } from "../../type-guards.mjs";
|
|
26
|
+
import { TypedTextComponent } from "./typed-text-component.mjs";
|
|
27
|
+
class MultipleFileComponent extends TypedTextComponent {
|
|
28
|
+
/**
|
|
29
|
+
* Creates a new multiple file component.
|
|
30
|
+
*
|
|
31
|
+
* @param containerEl - The container element of the component.
|
|
32
|
+
*/
|
|
33
|
+
constructor(containerEl) {
|
|
34
|
+
super(containerEl, "file", CssClass.MultipleFileComponent);
|
|
35
|
+
this.inputEl.multiple = true;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Gets the value of the component.
|
|
39
|
+
*
|
|
40
|
+
* @returns The value of the component.
|
|
41
|
+
*/
|
|
42
|
+
// eslint-disable-next-line obsidian-dev-utils/require-super-call -- Intentionally replaces default String() conversion with custom formatting.
|
|
43
|
+
getValue() {
|
|
44
|
+
return Array.from(ensureNonNullable(this.inputEl.files));
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Converts a string to a file.
|
|
48
|
+
*
|
|
49
|
+
* @returns The file.
|
|
50
|
+
*/
|
|
51
|
+
valueFromString() {
|
|
52
|
+
return this.getValue();
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Converts a file to a string.
|
|
56
|
+
*
|
|
57
|
+
* @param value - The file to convert.
|
|
58
|
+
* @returns The string.
|
|
59
|
+
*/
|
|
60
|
+
// eslint-disable-next-line obsidian-dev-utils/require-super-call -- Intentionally replaces default String() conversion with custom formatting.
|
|
61
|
+
valueToString(value) {
|
|
62
|
+
return value[0]?.name ?? "";
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
export {
|
|
66
|
+
MultipleFileComponent
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS1maWxlLWNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIGZpbGVzLlxuICovXG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYGluaXRQbHVnaW5Db250ZXh0YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgaW5pdFBsdWdpbkNvbnRleHQgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgU2V0dGluZ0V4YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgU2V0dGluZ0V4IH0gZnJvbSAnLi4vc2V0dGluZy1leC50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vLi4vY3NzLWNsYXNzLnRzJztcbmltcG9ydCB7IGVuc3VyZU5vbk51bGxhYmxlIH0gZnJvbSAnLi4vLi4vdHlwZS1ndWFyZHMudHMnO1xuaW1wb3J0IHsgVHlwZWRUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi90eXBlZC10ZXh0LWNvbXBvbmVudC50cyc7XG5cbi8qKlxuICogQSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBhbmQgZWRpdHMgbXVsdGlwbGUgZmlsZXMuXG4gKlxuICogWW91IGNhbiBhZGQgdGhpcyBjb21wb25lbnQgdXNpbmcge0BsaW5rIFNldHRpbmdFeC5hZGRNdWx0aXBsZUZpbGV9LlxuICpcbiAqIEluIG9yZGVyIHRvIGFkZCB0aGUgc3R5bGVzIGZvciB0aGUgY29tcG9uZW50LCB1c2Uge0BsaW5rIGluaXRQbHVnaW5Db250ZXh0fSBpbiB5b3VyIHBsdWdpbidzIGBvbmxvYWQoKWAgZnVuY3Rpb24uXG4gKlxuICogQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb3B5IHN0eWxlcyBmcm9tIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vbW5hb3Vtb3Yvb2JzaWRpYW4tZGV2LXV0aWxzL3JlbGVhc2VzL2xhdGVzdC9kb3dubG9hZC9zdHlsZXMuY3NzfS5cbiAqL1xuZXhwb3J0IGNsYXNzIE11bHRpcGxlRmlsZUNvbXBvbmVudCBleHRlbmRzIFR5cGVkVGV4dENvbXBvbmVudDxyZWFkb25seSBGaWxlW10+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgZmlsZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKGNvbnRhaW5lckVsLCAnZmlsZScsIENzc0NsYXNzLk11bHRpcGxlRmlsZUNvbXBvbmVudCk7XG4gICAgdGhpcy5pbnB1dEVsLm11bHRpcGxlID0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBvYnNpZGlhbi1kZXYtdXRpbHMvcmVxdWlyZS1zdXBlci1jYWxsIC0tIEludGVudGlvbmFsbHkgcmVwbGFjZXMgZGVmYXVsdCBTdHJpbmcoKSBjb252ZXJzaW9uIHdpdGggY3VzdG9tIGZvcm1hdHRpbmcuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXRWYWx1ZSgpOiByZWFkb25seSBGaWxlW10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKGVuc3VyZU5vbk51bGxhYmxlKHRoaXMuaW5wdXRFbC5maWxlcykpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgc3RyaW5nIHRvIGEgZmlsZS5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGZpbGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdmFsdWVGcm9tU3RyaW5nKCk6IHJlYWRvbmx5IEZpbGVbXSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyBhIGZpbGUgdG8gYSBzdHJpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBmaWxlIHRvIGNvbnZlcnQuXG4gICAqIEByZXR1cm5zIFRoZSBzdHJpbmcuXG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgb2JzaWRpYW4tZGV2LXV0aWxzL3JlcXVpcmUtc3VwZXItY2FsbCAtLSBJbnRlbnRpb25hbGx5IHJlcGxhY2VzIGRlZmF1bHQgU3RyaW5nKCkgY29udmVyc2lvbiB3aXRoIGN1c3RvbSBmb3JtYXR0aW5nLlxuICBwdWJsaWMgb3ZlcnJpZGUgdmFsdWVUb1N0cmluZyh2YWx1ZTogcmVhZG9ubHkgRmlsZVtdKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdmFsdWVbMF0/Lm5hbWUgPz8gJyc7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBV0EsU0FBUyxnQkFBZ0I7QUFDekIsU0FBUyx5QkFBeUI7QUFDbEMsU0FBUywwQkFBMEI7QUFXNUIsTUFBTSw4QkFBOEIsbUJBQW9DO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTXRFLFlBQVksYUFBMEI7QUFDM0MsVUFBTSxhQUFhLFFBQVEsU0FBUyxxQkFBcUI7QUFDekQsU0FBSyxRQUFRLFdBQVc7QUFBQSxFQUMxQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLFdBQTRCO0FBQzFDLFdBQU8sTUFBTSxLQUFLLGtCQUFrQixLQUFLLFFBQVEsS0FBSyxDQUFDO0FBQUEsRUFDekQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPZ0Isa0JBQW1DO0FBQ2pELFdBQU8sS0FBSyxTQUFTO0FBQUEsRUFDdkI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU2dCLGNBQWMsT0FBZ0M7QUFDNUQsV0FBTyxNQUFNLENBQUMsR0FBRyxRQUFRO0FBQUEsRUFDM0I7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { Promisable } from 'type-fest';
|
|
7
7
|
import { ValueComponent } from 'obsidian';
|
|
8
|
-
import type { ValidatorElement } from '
|
|
8
|
+
import type { ValidatorElement } from '../../html-element.mjs';
|
|
9
9
|
import type { TextBasedComponent } from './text-based-component.mjs';
|
|
10
10
|
import type { ValidatorComponent } from './validator-component.mjs';
|
|
11
11
|
import type { ValueComponentWithChangeTracking } from './value-component-with-change-tracking.mjs';
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/*
|
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
(function initEsm() {
|
|
7
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
8
|
+
if (globalThis.process) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const browserProcess = {
|
|
13
|
+
browser: true,
|
|
14
|
+
cwd() {
|
|
15
|
+
return '/';
|
|
16
|
+
},
|
|
17
|
+
env: {},
|
|
18
|
+
platform: 'android'
|
|
19
|
+
};
|
|
20
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
21
|
+
globalThis.process = browserProcess;
|
|
22
|
+
})();
|
|
23
|
+
|
|
24
|
+
import {
|
|
25
|
+
TextAreaComponent,
|
|
26
|
+
ValueComponent
|
|
27
|
+
} from "obsidian";
|
|
28
|
+
import { CssClass } from "../../css-class.mjs";
|
|
29
|
+
import { addPluginCssClasses } from "../plugin/plugin-context.mjs";
|
|
30
|
+
class MultipleTextComponent extends ValueComponent {
|
|
31
|
+
/**
|
|
32
|
+
* An input element of the component.
|
|
33
|
+
*
|
|
34
|
+
* @returns The input element of the component.
|
|
35
|
+
*/
|
|
36
|
+
get inputEl() {
|
|
37
|
+
return this.textAreaComponent.inputEl;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Gets the validator element of the component.
|
|
41
|
+
*
|
|
42
|
+
* @returns The validator element of the component.
|
|
43
|
+
*/
|
|
44
|
+
get validatorEl() {
|
|
45
|
+
return this.inputEl;
|
|
46
|
+
}
|
|
47
|
+
simulateChangeCallback;
|
|
48
|
+
textAreaComponent;
|
|
49
|
+
/**
|
|
50
|
+
* Creates a new multiple text component.
|
|
51
|
+
*
|
|
52
|
+
* @param containerEl - The container element of the component.
|
|
53
|
+
*/
|
|
54
|
+
constructor(containerEl) {
|
|
55
|
+
super();
|
|
56
|
+
this.textAreaComponent = new TextAreaComponent(containerEl);
|
|
57
|
+
addPluginCssClasses(containerEl, CssClass.MultipleTextComponent);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Empties the component.
|
|
61
|
+
*/
|
|
62
|
+
empty() {
|
|
63
|
+
this.textAreaComponent.setValue("");
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Gets the value of the component.
|
|
67
|
+
*
|
|
68
|
+
* @returns The value of the component.
|
|
69
|
+
*/
|
|
70
|
+
getValue() {
|
|
71
|
+
return this.textAreaComponent.getValue().split("\n");
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Checks if the component is empty.
|
|
75
|
+
*
|
|
76
|
+
* @returns `true` if the component is empty, `false` otherwise.
|
|
77
|
+
*/
|
|
78
|
+
isEmpty() {
|
|
79
|
+
return this.textAreaComponent.getValue() === "";
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Adds a change listener to the component.
|
|
83
|
+
*
|
|
84
|
+
* @param callback - The callback to call when the value changes.
|
|
85
|
+
* @returns The component.
|
|
86
|
+
*/
|
|
87
|
+
onChange(callback) {
|
|
88
|
+
const changeHandler = () => {
|
|
89
|
+
callback(this.getValue());
|
|
90
|
+
};
|
|
91
|
+
this.simulateChangeCallback = changeHandler;
|
|
92
|
+
this.textAreaComponent.onChange(changeHandler);
|
|
93
|
+
return this;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Sets the disabled state of the component.
|
|
97
|
+
*
|
|
98
|
+
* @param disabled - The disabled state to set.
|
|
99
|
+
* @returns The component.
|
|
100
|
+
*/
|
|
101
|
+
setDisabled(disabled) {
|
|
102
|
+
super.setDisabled(disabled);
|
|
103
|
+
this.textAreaComponent.setDisabled(disabled);
|
|
104
|
+
return this;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Sets the placeholder of the component.
|
|
108
|
+
*
|
|
109
|
+
* @param placeholder - The placeholder to set.
|
|
110
|
+
* @returns The component.
|
|
111
|
+
*/
|
|
112
|
+
setPlaceholder(placeholder) {
|
|
113
|
+
this.textAreaComponent.setPlaceholder(placeholder);
|
|
114
|
+
return this;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Sets the placeholder value of the component.
|
|
118
|
+
*
|
|
119
|
+
* @param placeholderValue - The placeholder value to set.
|
|
120
|
+
* @returns The component.
|
|
121
|
+
*/
|
|
122
|
+
setPlaceholderValue(placeholderValue) {
|
|
123
|
+
this.setPlaceholder(this.valueToString(placeholderValue));
|
|
124
|
+
return this;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Sets the value of the component.
|
|
128
|
+
*
|
|
129
|
+
* @param value - The value to set.
|
|
130
|
+
* @returns The component.
|
|
131
|
+
*/
|
|
132
|
+
setValue(value) {
|
|
133
|
+
this.textAreaComponent.setValue(this.valueToString(value));
|
|
134
|
+
return this;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* @deprecated Use only from tests to simulate a change event.
|
|
138
|
+
*/
|
|
139
|
+
simulateChange() {
|
|
140
|
+
this.simulateChangeCallback?.();
|
|
141
|
+
}
|
|
142
|
+
valueToString(value) {
|
|
143
|
+
return value.join("\n");
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
export {
|
|
147
|
+
MultipleTextComponent
|
|
148
|
+
};
|
|
149
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS10ZXh0LWNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzYWJsZSB9IGZyb20gJ3R5cGUtZmVzdCc7XG5cbmltcG9ydCB7XG4gIFRleHRBcmVhQ29tcG9uZW50LFxuICBWYWx1ZUNvbXBvbmVudFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJy4uLy4uL2h0bWwtZWxlbWVudC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBpbml0UGx1Z2luQ29udGV4dGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYFNldHRpbmdFeGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IFNldHRpbmdFeCB9IGZyb20gJy4uL3NldHRpbmctZXgudHMnO1xuaW1wb3J0IHR5cGUgeyBUZXh0QmFzZWRDb21wb25lbnQgfSBmcm9tICcuL3RleHQtYmFzZWQtY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi92YWxpZGF0b3ItY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC13aXRoLWNoYW5nZS10cmFja2luZy50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vLi4vY3NzLWNsYXNzLnRzJztcbmltcG9ydCB7IGFkZFBsdWdpbkNzc0NsYXNzZXMgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkTXVsdGlwbGVUZXh0fS5cbiAqXG4gKiBJbiBvcmRlciB0byBhZGQgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbXBvbmVudCwgdXNlIHtAbGluayBpbml0UGx1Z2luQ29udGV4dH0gaW4geW91ciBwbHVnaW4ncyBgb25sb2FkKClgIGZ1bmN0aW9uLlxuICpcbiAqIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gY29weSBzdHlsZXMgZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL21uYW91bW92L29ic2lkaWFuLWRldi11dGlscy9yZWxlYXNlcy9sYXRlc3QvZG93bmxvYWQvc3R5bGVzLmNzc30uXG4gKi9cbmV4cG9ydCBjbGFzcyBNdWx0aXBsZVRleHRDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudDxyZWFkb25seSBzdHJpbmdbXT5cbiAgaW1wbGVtZW50cyBUZXh0QmFzZWRDb21wb25lbnQ8cmVhZG9ubHkgc3RyaW5nW10+LCBWYWxpZGF0b3JDb21wb25lbnQsIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPHJlYWRvbmx5IHN0cmluZ1tdPiB7XG4gIC8qKlxuICAgKiBBbiBpbnB1dCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBpbnB1dCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGlucHV0RWwoKTogSFRNTFRleHRBcmVhRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMudGV4dEFyZWFDb21wb25lbnQuaW5wdXRFbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWxpZGF0b3IgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgdmFsaWRhdG9yRWwoKTogVmFsaWRhdG9yRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXRFbDtcbiAgfVxuXG4gIHByaXZhdGUgc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz86ICgpID0+IHZvaWQ7XG5cbiAgcHJpdmF0ZSByZWFkb25seSB0ZXh0QXJlYUNvbXBvbmVudDogVGV4dEFyZWFDb21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgdGV4dCBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudCA9IG5ldyBUZXh0QXJlYUNvbXBvbmVudChjb250YWluZXJFbCk7XG4gICAgYWRkUGx1Z2luQ3NzQ2xhc3Nlcyhjb250YWluZXJFbCwgQ3NzQ2xhc3MuTXVsdGlwbGVUZXh0Q29tcG9uZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbXB0aWVzIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZW1wdHkoKTogdm9pZCB7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXRWYWx1ZSgnJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0VmFsdWUoKTogcmVhZG9ubHkgc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLnRleHRBcmVhQ29tcG9uZW50LmdldFZhbHVlKCkuc3BsaXQoJ1xcbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tcG9uZW50IGlzIGVtcHR5LlxuICAgKlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGNvbXBvbmVudCBpcyBlbXB0eSwgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgaXNFbXB0eSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5nZXRWYWx1ZSgpID09PSAnJztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgY2hhbmdlIGxpc3RlbmVyIHRvIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayAtIFRoZSBjYWxsYmFjayB0byBjYWxsIHdoZW4gdGhlIHZhbHVlIGNoYW5nZXMuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2UoY2FsbGJhY2s6IChuZXdWYWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pID0+IFByb21pc2FibGU8dm9pZD4pOiB0aGlzIHtcbiAgICBjb25zdCBjaGFuZ2VIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgY2FsbGJhY2sodGhpcy5nZXRWYWx1ZSgpKTtcbiAgICB9O1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjayA9IGNoYW5nZUhhbmRsZXI7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5vbkNoYW5nZShjaGFuZ2VIYW5kbGVyKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZGlzYWJsZWQgLSBUaGUgZGlzYWJsZWQgc3RhdGUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHNldERpc2FibGVkKGRpc2FibGVkOiBib29sZWFuKTogdGhpcyB7XG4gICAgc3VwZXIuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHRoaXMudGV4dEFyZWFDb21wb25lbnQuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBsYWNlaG9sZGVyIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBwbGFjZWhvbGRlciAtIFRoZSBwbGFjZWhvbGRlciB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0UGxhY2Vob2xkZXIocGxhY2Vob2xkZXI6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudGV4dEFyZWFDb21wb25lbnQuc2V0UGxhY2Vob2xkZXIocGxhY2Vob2xkZXIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBsYWNlaG9sZGVyIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBwbGFjZWhvbGRlclZhbHVlIC0gVGhlIHBsYWNlaG9sZGVyIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRQbGFjZWhvbGRlclZhbHVlKHBsYWNlaG9sZGVyVmFsdWU6IHJlYWRvbmx5IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgdGhpcy5zZXRQbGFjZWhvbGRlcih0aGlzLnZhbHVlVG9TdHJpbmcocGxhY2Vob2xkZXJWYWx1ZSkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0VmFsdWUodmFsdWU6IHJlYWRvbmx5IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXRWYWx1ZSh0aGlzLnZhbHVlVG9TdHJpbmcodmFsdWUpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBVc2Ugb25seSBmcm9tIHRlc3RzIHRvIHNpbXVsYXRlIGEgY2hhbmdlIGV2ZW50LlxuICAgKi9cbiAgcHVibGljIHNpbXVsYXRlQ2hhbmdlKCk6IHZvaWQge1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz8uKCk7XG4gIH1cblxuICBwcml2YXRlIHZhbHVlVG9TdHJpbmcodmFsdWU6IHJlYWRvbmx5IHN0cmluZ1tdKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdmFsdWUuam9pbignXFxuJyk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBUUE7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFXUCxTQUFTLGdCQUFnQjtBQUN6QixTQUFTLDJCQUEyQjtBQVc3QixNQUFNLDhCQUE4QixlQUNpRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU0xSCxJQUFXLFVBQStCO0FBQ3hDLFdBQU8sS0FBSyxrQkFBa0I7QUFBQSxFQUNoQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLElBQVcsY0FBZ0M7QUFDekMsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBLEVBRVE7QUFBQSxFQUVTO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT1YsWUFBWSxhQUEwQjtBQUMzQyxVQUFNO0FBQ04sU0FBSyxvQkFBb0IsSUFBSSxrQkFBa0IsV0FBVztBQUMxRCx3QkFBb0IsYUFBYSxTQUFTLHFCQUFxQjtBQUFBLEVBQ2pFO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLTyxRQUFjO0FBQ25CLFNBQUssa0JBQWtCLFNBQVMsRUFBRTtBQUFBLEVBQ3BDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT2dCLFdBQThCO0FBQzVDLFdBQU8sS0FBSyxrQkFBa0IsU0FBUyxFQUFFLE1BQU0sSUFBSTtBQUFBLEVBQ3JEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT08sVUFBbUI7QUFDeEIsV0FBTyxLQUFLLGtCQUFrQixTQUFTLE1BQU07QUFBQSxFQUMvQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxVQUFtRTtBQUNqRixVQUFNLGdCQUFnQixNQUFZO0FBQ2hDLGVBQVMsS0FBSyxTQUFTLENBQUM7QUFBQSxJQUMxQjtBQUNBLFNBQUsseUJBQXlCO0FBQzlCLFNBQUssa0JBQWtCLFNBQVMsYUFBYTtBQUM3QyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLFlBQVksVUFBeUI7QUFDbkQsVUFBTSxZQUFZLFFBQVE7QUFDMUIsU0FBSyxrQkFBa0IsWUFBWSxRQUFRO0FBQzNDLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxlQUFlLGFBQTJCO0FBQy9DLFNBQUssa0JBQWtCLGVBQWUsV0FBVztBQUNqRCxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sb0JBQW9CLGtCQUEyQztBQUNwRSxTQUFLLGVBQWUsS0FBSyxjQUFjLGdCQUFnQixDQUFDO0FBQ3hELFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsU0FBUyxPQUFnQztBQUN2RCxTQUFLLGtCQUFrQixTQUFTLEtBQUssY0FBYyxLQUFLLENBQUM7QUFDekQsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtPLGlCQUF1QjtBQUM1QixTQUFLLHlCQUF5QjtBQUFBLEVBQ2hDO0FBQUEsRUFFUSxjQUFjLE9BQWtDO0FBQ3RELFdBQU8sTUFBTSxLQUFLLElBQUk7QUFBQSxFQUN4QjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/*
|
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
(function initEsm() {
|
|
7
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
8
|
+
if (globalThis.process) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const browserProcess = {
|
|
13
|
+
browser: true,
|
|
14
|
+
cwd() {
|
|
15
|
+
return '/';
|
|
16
|
+
},
|
|
17
|
+
env: {},
|
|
18
|
+
platform: 'android'
|
|
19
|
+
};
|
|
20
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
21
|
+
globalThis.process = browserProcess;
|
|
22
|
+
})();
|
|
23
|
+
|
|
24
|
+
import { CssClass } from "../../css-class.mjs";
|
|
25
|
+
import { TypedRangeTextComponent } from "./typed-range-text-component.mjs";
|
|
26
|
+
class NumberComponent extends TypedRangeTextComponent {
|
|
27
|
+
/**
|
|
28
|
+
* Creates a new number component.
|
|
29
|
+
*
|
|
30
|
+
* @param containerEl - The container element of the component.
|
|
31
|
+
*/
|
|
32
|
+
constructor(containerEl) {
|
|
33
|
+
super(containerEl, "number", CssClass.NumberComponent);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Empties the component.
|
|
37
|
+
*/
|
|
38
|
+
empty() {
|
|
39
|
+
this.textComponent.setValue("");
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Checks if the component is empty.
|
|
43
|
+
*
|
|
44
|
+
* @returns `true` if the component is empty, `false` otherwise.
|
|
45
|
+
*/
|
|
46
|
+
isEmpty() {
|
|
47
|
+
return this.textComponent.getValue() === "";
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Sets the placeholder of the component.
|
|
51
|
+
*
|
|
52
|
+
* @param placeholder - The placeholder to set.
|
|
53
|
+
* @returns The component.
|
|
54
|
+
*/
|
|
55
|
+
setPlaceholder(placeholder) {
|
|
56
|
+
this.textComponent.setPlaceholder(placeholder);
|
|
57
|
+
return this;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Sets the placeholder value of the component.
|
|
61
|
+
*
|
|
62
|
+
* @param placeholderValue - The placeholder value to set.
|
|
63
|
+
* @returns The component.
|
|
64
|
+
*/
|
|
65
|
+
setPlaceholderValue(placeholderValue) {
|
|
66
|
+
this.textComponent.setPlaceholder(this.valueToString(placeholderValue));
|
|
67
|
+
return this;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Converts a string to a number.
|
|
71
|
+
*
|
|
72
|
+
* @param str - The string to convert.
|
|
73
|
+
* @returns The number.
|
|
74
|
+
*/
|
|
75
|
+
valueFromString(str) {
|
|
76
|
+
return parseInt(str, 10);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
export {
|
|
80
|
+
NumberComponent
|
|
81
|
+
};
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9udW1iZXItY29tcG9uZW50LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogQ29udGFpbnMgYSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBhbmQgZWRpdHMgYSBudW1iZXIuXG4gKi9cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgaW5pdFBsdWdpbkNvbnRleHRgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBpbml0UGx1Z2luQ29udGV4dCB9IGZyb20gJy4uL3BsdWdpbi9wbHVnaW4tY29udGV4dC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBTZXR0aW5nRXhgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBTZXR0aW5nRXggfSBmcm9tICcuLi9zZXR0aW5nLWV4LnRzJztcbmltcG9ydCB0eXBlIHsgVGV4dEJhc2VkQ29tcG9uZW50IH0gZnJvbSAnLi90ZXh0LWJhc2VkLWNvbXBvbmVudC50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vLi4vY3NzLWNsYXNzLnRzJztcbmltcG9ydCB7IFR5cGVkUmFuZ2VUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi90eXBlZC1yYW5nZS10ZXh0LWNvbXBvbmVudC50cyc7XG5cbi8qKlxuICogQSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBhbmQgZWRpdHMgYSBudW1iZXIuXG4gKlxuICogWW91IGNhbiBhZGQgdGhpcyBjb21wb25lbnQgdXNpbmcge0BsaW5rIFNldHRpbmdFeC5hZGROdW1iZXJ9LlxuICpcbiAqIEluIG9yZGVyIHRvIGFkZCB0aGUgc3R5bGVzIGZvciB0aGUgY29tcG9uZW50LCB1c2Uge0BsaW5rIGluaXRQbHVnaW5Db250ZXh0fSBpbiB5b3VyIHBsdWdpbidzIGBvbmxvYWQoKWAgZnVuY3Rpb24uXG4gKlxuICogQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb3B5IHN0eWxlcyBmcm9tIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vbW5hb3Vtb3Yvb2JzaWRpYW4tZGV2LXV0aWxzL3JlbGVhc2VzL2xhdGVzdC9kb3dubG9hZC9zdHlsZXMuY3NzfS5cbiAqL1xuZXhwb3J0IGNsYXNzIE51bWJlckNvbXBvbmVudCBleHRlbmRzIFR5cGVkUmFuZ2VUZXh0Q29tcG9uZW50PG51bWJlcj4gaW1wbGVtZW50cyBUZXh0QmFzZWRDb21wb25lbnQ8bnVtYmVyPiB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IG51bWJlciBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKGNvbnRhaW5lckVsLCAnbnVtYmVyJywgQ3NzQ2xhc3MuTnVtYmVyQ29tcG9uZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbXB0aWVzIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZW1wdHkoKTogdm9pZCB7XG4gICAgdGhpcy50ZXh0Q29tcG9uZW50LnNldFZhbHVlKCcnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGNvbXBvbmVudCBpcyBlbXB0eS5cbiAgICpcbiAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBjb21wb25lbnQgaXMgZW1wdHksIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHVibGljIGlzRW1wdHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudGV4dENvbXBvbmVudC5nZXRWYWx1ZSgpID09PSAnJztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwbGFjZWhvbGRlciBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gcGxhY2Vob2xkZXIgLSBUaGUgcGxhY2Vob2xkZXIgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnRleHRDb21wb25lbnQuc2V0UGxhY2Vob2xkZXIocGxhY2Vob2xkZXIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBsYWNlaG9sZGVyIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBwbGFjZWhvbGRlclZhbHVlIC0gVGhlIHBsYWNlaG9sZGVyIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRQbGFjZWhvbGRlclZhbHVlKHBsYWNlaG9sZGVyVmFsdWU6IG51bWJlcik6IHRoaXMge1xuICAgIHRoaXMudGV4dENvbXBvbmVudC5zZXRQbGFjZWhvbGRlcih0aGlzLnZhbHVlVG9TdHJpbmcocGxhY2Vob2xkZXJWYWx1ZSkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgc3RyaW5nIHRvIGEgbnVtYmVyLlxuICAgKlxuICAgKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byBjb252ZXJ0LlxuICAgKiBAcmV0dXJucyBUaGUgbnVtYmVyLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHZhbHVlRnJvbVN0cmluZyhzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gICAgcmV0dXJuIHBhcnNlSW50KHN0ciwgMTApO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVlBLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsK0JBQStCO0FBV2pDLE1BQU0sd0JBQXdCLHdCQUFzRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1sRyxZQUFZLGFBQTBCO0FBQzNDLFVBQU0sYUFBYSxVQUFVLFNBQVMsZUFBZTtBQUFBLEVBQ3ZEO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLTyxRQUFjO0FBQ25CLFNBQUssY0FBYyxTQUFTLEVBQUU7QUFBQSxFQUNoQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFVBQW1CO0FBQ3hCLFdBQU8sS0FBSyxjQUFjLFNBQVMsTUFBTTtBQUFBLEVBQzNDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxlQUFlLGFBQTJCO0FBQy9DLFNBQUssY0FBYyxlQUFlLFdBQVc7QUFDN0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLG9CQUFvQixrQkFBZ0M7QUFDekQsU0FBSyxjQUFjLGVBQWUsS0FBSyxjQUFjLGdCQUFnQixDQUFDO0FBQ3RFLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZ0JBQWdCLEtBQXFCO0FBQ25ELFdBQU8sU0FBUyxLQUFLLEVBQUU7QUFBQSxFQUN6QjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
|