@mnaoumov/obsidian-lib 0.0.0 → 1.0.1
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/@types/dataview/api/data-array/package.json +4 -0
- package/@types/dataview/api/extensions/package.json +4 -0
- package/@types/dataview/api/inline-api/package.json +4 -0
- package/@types/dataview/api/plugin-api/package.json +4 -0
- package/@types/dataview/api/result/package.json +4 -0
- package/@types/dataview/data-import/common/package.json +4 -0
- package/@types/dataview/data-import/csv/package.json +4 -0
- package/@types/dataview/data-import/inline-field/package.json +4 -0
- package/@types/dataview/data-import/markdown-file/package.json +4 -0
- package/@types/dataview/data-import/persister/package.json +4 -0
- package/@types/dataview/data-import/web-worker/import-entry/package.json +4 -0
- package/@types/dataview/data-import/web-worker/import-impl/package.json +4 -0
- package/@types/dataview/data-import/web-worker/import-manager/package.json +4 -0
- package/@types/dataview/data-index/index/package.json +4 -0
- package/@types/dataview/data-index/package.json +4 -0
- package/@types/dataview/data-index/resolver/package.json +4 -0
- package/@types/dataview/data-index/source/package.json +4 -0
- package/@types/dataview/data-model/markdown/package.json +4 -0
- package/@types/dataview/data-model/serialized/markdown/package.json +4 -0
- package/@types/dataview/data-model/transferable/package.json +4 -0
- package/@types/dataview/data-model/value/package.json +4 -0
- package/@types/dataview/expression/binaryop/package.json +4 -0
- package/@types/dataview/expression/context/package.json +4 -0
- package/@types/dataview/expression/field/package.json +4 -0
- package/@types/dataview/expression/functions/package.json +4 -0
- package/@types/dataview/expression/parse/package.json +4 -0
- package/@types/dataview/index/package.json +4 -0
- package/@types/dataview/main/package.json +4 -0
- package/@types/dataview/package.json +4 -0
- package/@types/dataview/query/engine/package.json +4 -0
- package/@types/dataview/query/parse/package.json +4 -0
- package/@types/dataview/query/query/package.json +4 -0
- package/@types/dataview/settings/package.json +4 -0
- package/@types/dataview/typings/obsidian-ex/package.json +4 -0
- package/@types/dataview/typings/workers/package.json +4 -0
- package/@types/dataview/ui/export/markdown/package.json +4 -0
- package/@types/dataview/ui/lp-render/package.json +4 -0
- package/@types/dataview/ui/markdown/package.json +4 -0
- package/@types/dataview/ui/refreshable-view/package.json +4 -0
- package/@types/dataview/ui/render/package.json +4 -0
- package/@types/dataview/ui/views/calendar-view/package.json +4 -0
- package/@types/dataview/ui/views/inline-field-live-preview/package.json +4 -0
- package/@types/dataview/ui/views/inline-view/package.json +4 -0
- package/@types/dataview/ui/views/js-view/package.json +4 -0
- package/@types/dataview/ui/views/list-view/package.json +4 -0
- package/@types/dataview/ui/views/table-view/package.json +4 -0
- package/@types/dataview/ui/views/task-view/package.json +4 -0
- package/@types/dataview/util/hash/package.json +4 -0
- package/@types/dataview/util/locale/package.json +4 -0
- package/@types/dataview/util/media/package.json +4 -0
- package/@types/dataview/util/normalize/package.json +4 -0
- package/@types/i18next/package.json +4 -0
- package/@types/obsidian-integration-testing/package.json +4 -0
- package/@types/original-fs/package.json +4 -0
- package/LICENSE +21 -0
- package/README.md +15 -1
- package/codemirror/index/package.json +6 -0
- package/codemirror/package.json +6 -0
- package/codemirror/state-field-spec/package.json +6 -0
- package/command-handlers/abstract-file-command-handler/package.json +6 -0
- package/command-handlers/command-handler/package.json +6 -0
- package/command-handlers/command-handler-component/package.json +6 -0
- package/command-handlers/editor-command-handler/package.json +6 -0
- package/command-handlers/file-command-handler/package.json +6 -0
- package/command-handlers/folder-command-handler/package.json +6 -0
- package/command-handlers/global-command-handler/package.json +6 -0
- package/command-handlers/index/package.json +6 -0
- package/command-handlers/open-demo-vault-command-handler/package.json +6 -0
- package/command-handlers/open-settings-command-handler/package.json +6 -0
- package/command-handlers/package.json +6 -0
- package/command-handlers/unlock-active-note-command-handler/package.json +6 -0
- package/components/abort-signal-component/package.json +6 -0
- package/components/all-windows-event-component/package.json +6 -0
- package/components/async-error-handler-component/package.json +6 -0
- package/components/async-events-component/package.json +6 -0
- package/components/case-insensitive-file-index-component/package.json +6 -0
- package/components/component-ex/package.json +6 -0
- package/components/console-debug-component/package.json +6 -0
- package/components/core-plugin-toggle-component/package.json +6 -0
- package/components/disposable-component/package.json +6 -0
- package/components/embed-extensions-component/package.json +6 -0
- package/components/generate-markdown-link-default-params-component/package.json +6 -0
- package/components/index/package.json +6 -0
- package/components/layout-ready-component/package.json +6 -0
- package/components/menu-event-registrar-component/package.json +6 -0
- package/components/monkey-around-component/package.json +6 -0
- package/components/notebook-navigator-menu-event-registrar-component/package.json +6 -0
- package/components/package.json +6 -0
- package/components/plugin-context-component/package.json +6 -0
- package/components/plugin-gate-component/package.json +6 -0
- package/components/plugin-notice-component/package.json +6 -0
- package/components/plugin-settings-component/package.json +6 -0
- package/components/plugin-settings-tab-component/package.json +6 -0
- package/components/plugin-suggestion-component/package.json +6 -0
- package/components/pointer-position-component/package.json +6 -0
- package/components/registry-component/package.json +6 -0
- package/components/release-notes-component/package.json +6 -0
- package/components/rename-delete-handler-component/package.json +6 -0
- package/components/rmdir-guard-component/package.json +6 -0
- package/components/settings-migration-component/package.json +6 -0
- package/components/syntax-highlighting-component/package.json +6 -0
- package/components/templates-language-component/package.json +6 -0
- package/constructors/get-dom-events-handlers-constructor/package.json +6 -0
- package/constructors/index/package.json +6 -0
- package/constructors/package.json +6 -0
- package/dist/lib/cjs/@types/dataview/api/data-array.d.cts +137 -0
- package/dist/lib/cjs/@types/dataview/api/extensions.d.cts +16 -0
- package/dist/lib/cjs/@types/dataview/api/inline-api.d.cts +187 -0
- package/dist/lib/cjs/@types/dataview/api/plugin-api.d.cts +210 -0
- package/dist/lib/cjs/@types/dataview/api/result.d.cts +39 -0
- package/dist/lib/cjs/@types/dataview/data-import/common.d.cts +4 -0
- package/dist/lib/cjs/@types/dataview/data-import/csv.d.cts +4 -0
- package/dist/lib/cjs/@types/dataview/data-import/inline-field.d.cts +43 -0
- package/dist/lib/cjs/@types/dataview/data-import/markdown-file.d.cts +53 -0
- package/dist/lib/cjs/@types/dataview/data-import/persister.d.cts +33 -0
- package/dist/lib/cjs/@types/dataview/data-import/web-worker/import-entry.d.cts +2 -0
- package/dist/lib/cjs/@types/dataview/data-import/web-worker/import-impl.d.cts +7 -0
- package/dist/lib/cjs/@types/dataview/data-import/web-worker/import-manager.d.cts +38 -0
- package/dist/lib/cjs/@types/dataview/data-index/index.d.cts +187 -0
- package/dist/lib/cjs/@types/dataview/data-index/resolver.d.cts +24 -0
- package/dist/lib/cjs/@types/dataview/data-index/source.d.cts +72 -0
- package/dist/lib/cjs/@types/dataview/data-model/markdown.d.cts +116 -0
- package/dist/lib/cjs/@types/dataview/data-model/serialized/markdown.d.cts +107 -0
- package/dist/lib/cjs/@types/dataview/data-model/transferable.d.cts +8 -0
- package/dist/lib/cjs/@types/dataview/data-model/value.d.cts +176 -0
- package/dist/lib/cjs/@types/dataview/expression/binaryop.d.cts +44 -0
- package/dist/lib/cjs/@types/dataview/expression/context.d.cts +50 -0
- package/dist/lib/cjs/@types/dataview/expression/field.d.cts +83 -0
- package/dist/lib/cjs/@types/dataview/expression/functions.d.cts +150 -0
- package/dist/lib/cjs/@types/dataview/expression/parse.d.cts +164 -0
- package/dist/lib/cjs/@types/dataview/index.d.cts +56 -0
- package/dist/lib/cjs/@types/dataview/main.d.cts +53 -0
- package/dist/lib/cjs/@types/dataview/query/engine.d.cts +104 -0
- package/dist/lib/cjs/@types/dataview/query/parse.d.cts +45 -0
- package/dist/lib/cjs/@types/dataview/query/query.d.cts +96 -0
- package/dist/lib/cjs/@types/dataview/settings.d.cts +61 -0
- package/dist/lib/cjs/@types/dataview/typings/obsidian-ex.d.cts +29 -0
- package/dist/lib/cjs/@types/dataview/typings/workers.d.cts +5 -0
- package/dist/lib/cjs/@types/dataview/ui/export/markdown.d.cts +16 -0
- package/dist/lib/cjs/@types/dataview/ui/lp-render.d.cts +38 -0
- package/dist/lib/cjs/@types/dataview/ui/markdown.d.cts +87 -0
- package/dist/lib/cjs/@types/dataview/ui/refreshable-view.d.cts +19 -0
- package/dist/lib/cjs/@types/dataview/ui/render.d.cts +34 -0
- package/dist/lib/cjs/@types/dataview/ui/views/calendar-view.d.cts +18 -0
- package/dist/lib/cjs/@types/dataview/ui/views/inline-field-live-preview.d.cts +43 -0
- package/dist/lib/cjs/@types/dataview/ui/views/inline-view.d.cts +29 -0
- package/dist/lib/cjs/@types/dataview/ui/views/js-view.d.cts +24 -0
- package/dist/lib/cjs/@types/dataview/ui/views/list-view.d.cts +26 -0
- package/dist/lib/cjs/@types/dataview/ui/views/table-view.d.cts +29 -0
- package/dist/lib/cjs/@types/dataview/ui/views/task-view.d.cts +52 -0
- package/dist/lib/cjs/@types/dataview/util/hash.d.cts +2 -0
- package/dist/lib/cjs/@types/dataview/util/locale.d.cts +3 -0
- package/dist/lib/cjs/@types/dataview/util/media.d.cts +7 -0
- package/dist/lib/cjs/@types/dataview/util/normalize.d.cts +45 -0
- package/dist/lib/cjs/@types/i18next.d.cts +14 -0
- package/dist/lib/cjs/@types/obsidian-integration-testing.d.cts +29 -0
- package/dist/lib/cjs/@types/original-fs.d.cts +15 -0
- package/dist/lib/cjs/__merged.cjs +1656 -0
- package/dist/lib/cjs/__merged.d.cts +205 -0
- package/dist/lib/cjs/active-file-provider.cjs +161 -0
- package/dist/lib/cjs/active-file-provider.d.cts +36 -0
- package/dist/lib/cjs/app.cjs +153 -0
- package/dist/lib/cjs/app.d.cts +17 -0
- package/dist/lib/cjs/async-with-notice.cjs +235 -0
- package/dist/lib/cjs/async-with-notice.d.cts +113 -0
- package/dist/lib/cjs/attachment-path.cjs +379 -0
- package/dist/lib/cjs/attachment-path.d.cts +341 -0
- package/dist/lib/cjs/attachment-unit-folder.cjs +168 -0
- package/dist/lib/cjs/attachment-unit-folder.d.cts +103 -0
- package/dist/lib/cjs/backlink-index.cjs +249 -0
- package/dist/lib/cjs/backlink-index.d.cts +51 -0
- package/dist/lib/cjs/backlink.cjs +217 -0
- package/dist/lib/cjs/backlink.d.cts +66 -0
- package/dist/lib/cjs/bases-view-registrar.cjs +162 -0
- package/dist/lib/cjs/bases-view-registrar.d.cts +52 -0
- package/dist/lib/cjs/callout.cjs +220 -0
- package/dist/lib/cjs/callout.d.cts +76 -0
- package/dist/lib/cjs/canvas.cjs +215 -0
- package/dist/lib/cjs/canvas.d.cts +28 -0
- package/dist/lib/cjs/case-insensitive-file-index.cjs +244 -0
- package/dist/lib/cjs/case-insensitive-file-index.d.cts +92 -0
- package/dist/lib/cjs/code-block-markdown-information.cjs +131 -0
- package/dist/lib/cjs/code-block-markdown-information.d.cts +48 -0
- package/dist/lib/cjs/code-block-reg-exp.cjs +145 -0
- package/dist/lib/cjs/code-block-reg-exp.d.cts +39 -0
- package/dist/lib/cjs/codemirror/index.cjs +153 -0
- package/dist/lib/cjs/codemirror/index.d.cts +2 -0
- package/dist/lib/cjs/codemirror/state-field-spec.cjs +131 -0
- package/dist/lib/cjs/codemirror/state-field-spec.d.cts +72 -0
- package/dist/lib/cjs/command-handlers/abstract-file-command-handler.cjs +416 -0
- package/dist/lib/cjs/command-handlers/abstract-file-command-handler.d.cts +274 -0
- package/dist/lib/cjs/command-handlers/command-handler-component.cjs +278 -0
- package/dist/lib/cjs/command-handlers/command-handler-component.d.cts +146 -0
- package/dist/lib/cjs/command-handlers/command-handler.cjs +200 -0
- package/dist/lib/cjs/command-handlers/command-handler.d.cts +107 -0
- package/dist/lib/cjs/command-handlers/editor-command-handler.cjs +348 -0
- package/dist/lib/cjs/command-handlers/editor-command-handler.d.cts +208 -0
- package/dist/lib/cjs/command-handlers/file-command-handler.cjs +285 -0
- package/dist/lib/cjs/command-handlers/file-command-handler.d.cts +143 -0
- package/dist/lib/cjs/command-handlers/folder-command-handler.cjs +293 -0
- package/dist/lib/cjs/command-handlers/folder-command-handler.d.cts +149 -0
- package/dist/lib/cjs/command-handlers/global-command-handler.cjs +185 -0
- package/dist/lib/cjs/command-handlers/global-command-handler.d.cts +40 -0
- package/dist/lib/cjs/command-handlers/index.cjs +180 -0
- package/dist/lib/cjs/command-handlers/index.d.cts +11 -0
- package/dist/lib/cjs/command-handlers/open-demo-vault-command-handler.cjs +209 -0
- package/dist/lib/cjs/command-handlers/open-demo-vault-command-handler.d.cts +73 -0
- package/dist/lib/cjs/command-handlers/open-settings-command-handler.cjs +174 -0
- package/dist/lib/cjs/command-handlers/open-settings-command-handler.d.cts +44 -0
- package/dist/lib/cjs/command-handlers/unlock-active-note-command-handler.cjs +187 -0
- package/dist/lib/cjs/command-handlers/unlock-active-note-command-handler.d.cts +54 -0
- package/dist/lib/cjs/command-registrar.cjs +169 -0
- package/dist/lib/cjs/command-registrar.d.cts +48 -0
- package/dist/lib/cjs/community-plugins.cjs +322 -0
- package/dist/lib/cjs/community-plugins.d.cts +270 -0
- package/dist/lib/cjs/components/abort-signal-component.cjs +172 -0
- package/dist/lib/cjs/components/abort-signal-component.d.cts +30 -0
- package/dist/lib/cjs/components/all-windows-event-component.cjs +214 -0
- package/dist/lib/cjs/components/all-windows-event-component.d.cts +84 -0
- package/dist/lib/cjs/components/async-error-handler-component.cjs +176 -0
- package/dist/lib/cjs/components/async-error-handler-component.d.cts +30 -0
- package/dist/lib/cjs/components/async-events-component.cjs +148 -0
- package/dist/lib/cjs/components/async-events-component.d.cts +15 -0
- package/dist/lib/cjs/components/case-insensitive-file-index-component.cjs +186 -0
- package/dist/lib/cjs/components/case-insensitive-file-index-component.d.cts +36 -0
- package/dist/lib/cjs/components/component-ex.cjs +504 -0
- package/dist/lib/cjs/components/component-ex.d.cts +229 -0
- package/dist/lib/cjs/components/console-debug-component.cjs +170 -0
- package/dist/lib/cjs/components/console-debug-component.d.cts +30 -0
- package/dist/lib/cjs/components/core-plugin-toggle-component.cjs +202 -0
- package/dist/lib/cjs/components/core-plugin-toggle-component.d.cts +102 -0
- package/dist/lib/cjs/components/disposable-component.cjs +154 -0
- package/dist/lib/cjs/components/disposable-component.d.cts +24 -0
- package/dist/lib/cjs/components/embed-extensions-component.cjs +174 -0
- package/dist/lib/cjs/components/embed-extensions-component.d.cts +38 -0
- package/dist/lib/cjs/components/generate-markdown-link-default-params-component.cjs +170 -0
- package/dist/lib/cjs/components/generate-markdown-link-default-params-component.d.cts +42 -0
- package/dist/lib/cjs/components/index.cjs +237 -0
- package/dist/lib/cjs/components/index.d.cts +30 -0
- package/dist/lib/cjs/components/layout-ready-component.cjs +211 -0
- package/dist/lib/cjs/components/layout-ready-component.d.cts +48 -0
- package/dist/lib/cjs/components/menu-event-registrar-component.cjs +196 -0
- package/dist/lib/cjs/components/menu-event-registrar-component.d.cts +52 -0
- package/dist/lib/cjs/components/monkey-around-component.cjs +245 -0
- package/dist/lib/cjs/components/monkey-around-component.d.cts +241 -0
- package/dist/lib/cjs/components/notebook-navigator-menu-event-registrar-component.cjs +321 -0
- package/dist/lib/cjs/components/notebook-navigator-menu-event-registrar-component.d.cts +150 -0
- package/dist/lib/cjs/components/plugin-context-component.cjs +180 -0
- package/dist/lib/cjs/components/plugin-context-component.d.cts +36 -0
- package/dist/lib/cjs/components/plugin-gate-component.cjs +548 -0
- package/dist/lib/cjs/components/plugin-gate-component.d.cts +332 -0
- package/dist/lib/cjs/components/plugin-notice-component.cjs +629 -0
- package/dist/lib/cjs/components/plugin-notice-component.d.cts +362 -0
- package/dist/lib/cjs/components/plugin-settings-component.cjs +644 -0
- package/dist/lib/cjs/components/plugin-settings-component.d.cts +362 -0
- package/dist/lib/cjs/components/plugin-settings-tab-component.cjs +170 -0
- package/dist/lib/cjs/components/plugin-settings-tab-component.d.cts +39 -0
- package/dist/lib/cjs/components/plugin-suggestion-component.cjs +278 -0
- package/dist/lib/cjs/components/plugin-suggestion-component.d.cts +162 -0
- package/dist/lib/cjs/components/pointer-position-component.cjs +166 -0
- package/dist/lib/cjs/components/pointer-position-component.d.cts +29 -0
- package/dist/lib/cjs/components/registry-component.cjs +187 -0
- package/dist/lib/cjs/components/registry-component.d.cts +37 -0
- package/dist/lib/cjs/components/release-notes-component.cjs +225 -0
- package/dist/lib/cjs/components/release-notes-component.d.cts +129 -0
- package/dist/lib/cjs/components/rename-delete-handler-component.cjs +1275 -0
- package/dist/lib/cjs/components/rename-delete-handler-component.d.cts +165 -0
- package/dist/lib/cjs/components/rmdir-guard-component.cjs +190 -0
- package/dist/lib/cjs/components/rmdir-guard-component.d.cts +76 -0
- package/dist/lib/cjs/components/settings-migration-component.cjs +222 -0
- package/dist/lib/cjs/components/settings-migration-component.d.cts +120 -0
- package/dist/lib/cjs/components/syntax-highlighting-component.cjs +248 -0
- package/dist/lib/cjs/components/syntax-highlighting-component.d.cts +149 -0
- package/dist/lib/cjs/components/templates-language-component.cjs +276 -0
- package/dist/lib/cjs/components/templates-language-component.d.cts +124 -0
- package/dist/lib/cjs/constructors/get-dom-events-handlers-constructor.cjs +246 -0
- package/dist/lib/cjs/constructors/get-dom-events-handlers-constructor.d.cts +22 -0
- package/dist/lib/cjs/constructors/index.cjs +153 -0
- package/dist/lib/cjs/constructors/index.d.cts +2 -0
- package/dist/lib/cjs/css-class.cjs +208 -0
- package/dist/lib/cjs/css-class.d.cts +278 -0
- package/dist/lib/cjs/data-handler.cjs +170 -0
- package/dist/lib/cjs/data-handler.d.cts +49 -0
- package/dist/lib/cjs/dataview-link.cjs +160 -0
- package/dist/lib/cjs/dataview-link.d.cts +42 -0
- package/dist/lib/cjs/dataview.cjs +379 -0
- package/dist/lib/cjs/dataview.d.cts +249 -0
- package/dist/lib/cjs/debug.cjs +148 -0
- package/dist/lib/cjs/debug.d.cts +19 -0
- package/dist/lib/cjs/demo-vault-helper-settings.cjs +131 -0
- package/dist/lib/cjs/demo-vault-helper-settings.d.cts +29 -0
- package/dist/lib/cjs/demo-vault-helper.cjs +232 -0
- package/dist/lib/cjs/demo-vault-helper.d.cts +61 -0
- package/dist/lib/cjs/demo-vault-naming.cjs +157 -0
- package/dist/lib/cjs/demo-vault-naming.d.cts +54 -0
- package/dist/lib/cjs/desktop-demo-vault-opener.cjs +348 -0
- package/dist/lib/cjs/desktop-demo-vault-opener.d.cts +76 -0
- package/dist/lib/cjs/desktop-trusted-input.cjs +301 -0
- package/dist/lib/cjs/desktop-trusted-input.d.cts +288 -0
- package/dist/lib/cjs/editor-extension-registrar.cjs +162 -0
- package/dist/lib/cjs/editor-extension-registrar.d.cts +37 -0
- package/dist/lib/cjs/editor-suggest-registrar.cjs +162 -0
- package/dist/lib/cjs/editor-suggest-registrar.d.cts +36 -0
- package/dist/lib/cjs/editor.cjs +200 -0
- package/dist/lib/cjs/editor.d.cts +45 -0
- package/dist/lib/cjs/events.cjs +172 -0
- package/dist/lib/cjs/events.d.cts +98 -0
- package/dist/lib/cjs/extensions-registrar.cjs +162 -0
- package/dist/lib/cjs/extensions-registrar.d.cts +51 -0
- package/dist/lib/cjs/file-change.cjs +558 -0
- package/dist/lib/cjs/file-change.d.cts +156 -0
- package/dist/lib/cjs/file-explorer.cjs +157 -0
- package/dist/lib/cjs/file-explorer.d.cts +34 -0
- package/dist/lib/cjs/file-manager.cjs +251 -0
- package/dist/lib/cjs/file-manager.d.cts +123 -0
- package/dist/lib/cjs/file-system.cjs +571 -0
- package/dist/lib/cjs/file-system.d.cts +554 -0
- package/dist/lib/cjs/folder-note.cjs +261 -0
- package/dist/lib/cjs/folder-note.d.cts +166 -0
- package/dist/lib/cjs/frontmatter-formatting.cjs +448 -0
- package/dist/lib/cjs/frontmatter-formatting.d.cts +44 -0
- package/dist/lib/cjs/frontmatter-link-cache-with-offsets.cjs +159 -0
- package/dist/lib/cjs/frontmatter-link-cache-with-offsets.d.cts +34 -0
- package/dist/lib/cjs/frontmatter.cjs +271 -0
- package/dist/lib/cjs/frontmatter.d.cts +145 -0
- package/dist/lib/cjs/generated-during-build.cjs +146 -0
- package/dist/lib/cjs/generated-during-build.d.cts +25 -0
- package/dist/lib/cjs/hover-link-source-registrar.cjs +162 -0
- package/dist/lib/cjs/hover-link-source-registrar.d.cts +52 -0
- package/dist/lib/cjs/html-element.cjs +183 -0
- package/dist/lib/cjs/html-element.d.cts +98 -0
- package/dist/lib/cjs/i18n/custom-type-options.cjs +132 -0
- package/dist/lib/cjs/i18n/custom-type-options.d.cts +38 -0
- package/dist/lib/cjs/i18n/default-translations.cjs +132 -0
- package/dist/lib/cjs/i18n/default-translations.d.cts +15 -0
- package/dist/lib/cjs/i18n/i18n.cjs +192 -0
- package/dist/lib/cjs/i18n/i18n.d.cts +38 -0
- package/dist/lib/cjs/i18n/index.cjs +162 -0
- package/dist/lib/cjs/i18n/index.d.cts +5 -0
- package/dist/lib/cjs/i18n/locales/en.cjs +224 -0
- package/dist/lib/cjs/i18n/locales/en.d.cts +91 -0
- package/dist/lib/cjs/i18n/locales/index.cjs +156 -0
- package/dist/lib/cjs/i18n/locales/index.d.cts +3 -0
- package/dist/lib/cjs/i18n/locales/translations-map.cjs +150 -0
- package/dist/lib/cjs/i18n/locales/translations-map.d.cts +100 -0
- package/dist/lib/cjs/index.cjs +435 -0
- package/dist/lib/cjs/index.d.cts +96 -0
- package/dist/lib/cjs/is-in-obsidian.cjs +154 -0
- package/dist/lib/cjs/is-in-obsidian.d.cts +12 -0
- package/dist/lib/cjs/library-styles.cjs +173 -0
- package/dist/lib/cjs/library-styles.d.cts +56 -0
- package/dist/lib/cjs/library.cjs +181 -0
- package/dist/lib/cjs/library.d.cts +57 -0
- package/dist/lib/cjs/link-name.cjs +145 -0
- package/dist/lib/cjs/link-name.d.cts +23 -0
- package/dist/lib/cjs/link-update-progress.cjs +131 -0
- package/dist/lib/cjs/link-update-progress.d.cts +32 -0
- package/dist/lib/cjs/link.cjs +1053 -0
- package/dist/lib/cjs/link.d.cts +1369 -0
- package/dist/lib/cjs/logger.cjs +212 -0
- package/dist/lib/cjs/logger.d.cts +37 -0
- package/dist/lib/cjs/loop.cjs +243 -0
- package/dist/lib/cjs/loop.d.cts +104 -0
- package/dist/lib/cjs/markdown-code-block-processor-registrar.cjs +166 -0
- package/dist/lib/cjs/markdown-code-block-processor-registrar.d.cts +62 -0
- package/dist/lib/cjs/markdown-code-block-processor.cjs +444 -0
- package/dist/lib/cjs/markdown-code-block-processor.d.cts +137 -0
- package/dist/lib/cjs/markdown-post-processor-registrar.cjs +163 -0
- package/dist/lib/cjs/markdown-post-processor-registrar.d.cts +59 -0
- package/dist/lib/cjs/markdown-view.cjs +151 -0
- package/dist/lib/cjs/markdown-view.d.cts +14 -0
- package/dist/lib/cjs/markdown.cjs +470 -0
- package/dist/lib/cjs/markdown.d.cts +226 -0
- package/dist/lib/cjs/menu-event-registrar.cjs +131 -0
- package/dist/lib/cjs/menu-event-registrar.d.cts +84 -0
- package/dist/lib/cjs/metadata-cache.cjs +544 -0
- package/dist/lib/cjs/metadata-cache.d.cts +359 -0
- package/dist/lib/cjs/mobile-trusted-input.cjs +185 -0
- package/dist/lib/cjs/mobile-trusted-input.d.cts +98 -0
- package/dist/lib/cjs/modals/alert.cjs +178 -0
- package/dist/lib/cjs/modals/alert.d.cts +35 -0
- package/dist/lib/cjs/modals/confirm.cjs +188 -0
- package/dist/lib/cjs/modals/confirm.d.cts +39 -0
- package/dist/lib/cjs/modals/index.cjs +177 -0
- package/dist/lib/cjs/modals/index.d.cts +10 -0
- package/dist/lib/cjs/modals/minimizable-modal.cjs +441 -0
- package/dist/lib/cjs/modals/minimizable-modal.d.cts +129 -0
- package/dist/lib/cjs/modals/modal-command-builder.cjs +458 -0
- package/dist/lib/cjs/modals/modal-command-builder.d.cts +285 -0
- package/dist/lib/cjs/modals/modal.cjs +176 -0
- package/dist/lib/cjs/modals/modal.d.cts +64 -0
- package/dist/lib/cjs/modals/prompt.cjs +256 -0
- package/dist/lib/cjs/modals/prompt.d.cts +83 -0
- package/dist/lib/cjs/modals/select-item.cjs +201 -0
- package/dist/lib/cjs/modals/select-item.d.cts +55 -0
- package/dist/lib/cjs/modals/select-option.cjs +189 -0
- package/dist/lib/cjs/modals/select-option.d.cts +65 -0
- package/dist/lib/cjs/modals/suggest-modal-command-builder.cjs +144 -0
- package/dist/lib/cjs/modals/suggest-modal-command-builder.d.cts +35 -0
- package/dist/lib/cjs/note-priority.cjs +234 -0
- package/dist/lib/cjs/note-priority.d.cts +154 -0
- package/dist/lib/cjs/notebook-navigator.cjs +163 -0
- package/dist/lib/cjs/notebook-navigator.d.cts +132 -0
- package/dist/lib/cjs/obsidian-dev-utils-state.cjs +175 -0
- package/dist/lib/cjs/obsidian-dev-utils-state.d.cts +42 -0
- package/dist/lib/cjs/obsidian-protocol-handler-registrar.cjs +165 -0
- package/dist/lib/cjs/obsidian-protocol-handler-registrar.d.cts +55 -0
- package/dist/lib/cjs/obsidian-settings.cjs +182 -0
- package/dist/lib/cjs/obsidian-settings.d.cts +62 -0
- package/dist/lib/cjs/parse-link.cjs +538 -0
- package/dist/lib/cjs/parse-link.d.cts +288 -0
- package/dist/lib/cjs/path-settings.cjs +269 -0
- package/dist/lib/cjs/path-settings.d.cts +56 -0
- package/dist/lib/cjs/pdf.cjs +173 -0
- package/dist/lib/cjs/pdf.d.cts +26 -0
- package/dist/lib/cjs/plugin/index.cjs +174 -0
- package/dist/lib/cjs/plugin/index.d.cts +9 -0
- package/dist/lib/cjs/plugin/plugin-api.cjs +519 -0
- package/dist/lib/cjs/plugin/plugin-api.d.cts +413 -0
- package/dist/lib/cjs/plugin/plugin-context.cjs +191 -0
- package/dist/lib/cjs/plugin/plugin-context.d.cts +27 -0
- package/dist/lib/cjs/plugin/plugin-event-source.cjs +226 -0
- package/dist/lib/cjs/plugin/plugin-event-source.d.cts +97 -0
- package/dist/lib/cjs/plugin/plugin-install-state.cjs +195 -0
- package/dist/lib/cjs/plugin/plugin-install-state.d.cts +113 -0
- package/dist/lib/cjs/plugin/plugin-lifecycle-events.cjs +151 -0
- package/dist/lib/cjs/plugin/plugin-lifecycle-events.d.cts +127 -0
- package/dist/lib/cjs/plugin/plugin-settings-tab.cjs +611 -0
- package/dist/lib/cjs/plugin/plugin-settings-tab.d.cts +368 -0
- package/dist/lib/cjs/plugin/plugin.cjs +706 -0
- package/dist/lib/cjs/plugin/plugin.d.cts +363 -0
- package/dist/lib/cjs/plugin/settings-migration-api.cjs +131 -0
- package/dist/lib/cjs/plugin/settings-migration-api.d.cts +91 -0
- package/dist/lib/cjs/plugin-cli-handler-registrar.cjs +163 -0
- package/dist/lib/cjs/plugin-cli-handler-registrar.d.cts +64 -0
- package/dist/lib/cjs/popovers/field-popover.cjs +182 -0
- package/dist/lib/cjs/popovers/field-popover.d.cts +75 -0
- package/dist/lib/cjs/popovers/index.cjs +159 -0
- package/dist/lib/cjs/popovers/index.d.cts +4 -0
- package/dist/lib/cjs/popovers/popover-anchor.cjs +182 -0
- package/dist/lib/cjs/popovers/popover-anchor.d.cts +67 -0
- package/dist/lib/cjs/popovers/popover.cjs +229 -0
- package/dist/lib/cjs/popovers/popover.d.cts +78 -0
- package/dist/lib/cjs/property-entry.cjs +172 -0
- package/dist/lib/cjs/property-entry.d.cts +43 -0
- package/dist/lib/cjs/queue.cjs +212 -0
- package/dist/lib/cjs/queue.d.cts +93 -0
- package/dist/lib/cjs/react/app-context.cjs +151 -0
- package/dist/lib/cjs/react/app-context.d.cts +24 -0
- package/dist/lib/cjs/react/index.cjs +153 -0
- package/dist/lib/cjs/react/index.d.cts +2 -0
- package/dist/lib/cjs/reference.cjs +186 -0
- package/dist/lib/cjs/reference.d.cts +116 -0
- package/dist/lib/cjs/resource-lock.cjs +1096 -0
- package/dist/lib/cjs/resource-lock.d.cts +318 -0
- package/dist/lib/cjs/resource-url.cjs +156 -0
- package/dist/lib/cjs/resource-url.d.cts +31 -0
- package/dist/lib/cjs/ribbon-icon-registrar.cjs +163 -0
- package/dist/lib/cjs/ribbon-icon-registrar.d.cts +60 -0
- package/dist/lib/cjs/setting-components/checkbox-component.cjs +216 -0
- package/dist/lib/cjs/setting-components/checkbox-component.d.cts +69 -0
- package/dist/lib/cjs/setting-components/code-highlighter-component.cjs +378 -0
- package/dist/lib/cjs/setting-components/code-highlighter-component.d.cts +132 -0
- package/dist/lib/cjs/setting-components/date-component.cjs +180 -0
- package/dist/lib/cjs/setting-components/date-component.d.cts +38 -0
- package/dist/lib/cjs/setting-components/date-time-component.cjs +180 -0
- package/dist/lib/cjs/setting-components/date-time-component.d.cts +38 -0
- package/dist/lib/cjs/setting-components/email-component.cjs +191 -0
- package/dist/lib/cjs/setting-components/email-component.d.cts +49 -0
- package/dist/lib/cjs/setting-components/file-component.cjs +183 -0
- package/dist/lib/cjs/setting-components/file-component.d.cts +43 -0
- package/dist/lib/cjs/setting-components/index.cjs +228 -0
- package/dist/lib/cjs/setting-components/index.d.cts +27 -0
- package/dist/lib/cjs/setting-components/month-component.cjs +188 -0
- package/dist/lib/cjs/setting-components/month-component.d.cts +51 -0
- package/dist/lib/cjs/setting-components/multiple-dropdown-component.cjs +253 -0
- package/dist/lib/cjs/setting-components/multiple-dropdown-component.d.cts +92 -0
- package/dist/lib/cjs/setting-components/multiple-email-component.cjs +177 -0
- package/dist/lib/cjs/setting-components/multiple-email-component.d.cts +38 -0
- package/dist/lib/cjs/setting-components/multiple-file-component.cjs +185 -0
- package/dist/lib/cjs/setting-components/multiple-file-component.d.cts +43 -0
- package/dist/lib/cjs/setting-components/multiple-text-component.cjs +272 -0
- package/dist/lib/cjs/setting-components/multiple-text-component.d.cts +109 -0
- package/dist/lib/cjs/setting-components/number-component.cjs +201 -0
- package/dist/lib/cjs/setting-components/number-component.d.cts +56 -0
- package/dist/lib/cjs/setting-components/password-component.cjs +177 -0
- package/dist/lib/cjs/setting-components/password-component.d.cts +38 -0
- package/dist/lib/cjs/setting-components/setting-component-wrapper.cjs +160 -0
- package/dist/lib/cjs/setting-components/setting-component-wrapper.d.cts +13 -0
- package/dist/lib/cjs/setting-components/telephone-component.cjs +191 -0
- package/dist/lib/cjs/setting-components/telephone-component.d.cts +51 -0
- package/dist/lib/cjs/setting-components/text-based-component.cjs +170 -0
- package/dist/lib/cjs/setting-components/text-based-component.d.cts +38 -0
- package/dist/lib/cjs/setting-components/time-component.cjs +185 -0
- package/dist/lib/cjs/setting-components/time-component.d.cts +38 -0
- package/dist/lib/cjs/setting-components/tri-state-checkbox-component.cjs +217 -0
- package/dist/lib/cjs/setting-components/tri-state-checkbox-component.d.cts +69 -0
- package/dist/lib/cjs/setting-components/typed-dropdown-component.cjs +262 -0
- package/dist/lib/cjs/setting-components/typed-dropdown-component.d.cts +97 -0
- package/dist/lib/cjs/setting-components/typed-multiple-dropdown-component.cjs +264 -0
- package/dist/lib/cjs/setting-components/typed-multiple-dropdown-component.d.cts +99 -0
- package/dist/lib/cjs/setting-components/typed-range-text-component.cjs +175 -0
- package/dist/lib/cjs/setting-components/typed-range-text-component.d.cts +35 -0
- package/dist/lib/cjs/setting-components/typed-text-component.cjs +232 -0
- package/dist/lib/cjs/setting-components/typed-text-component.d.cts +100 -0
- package/dist/lib/cjs/setting-components/url-component.cjs +191 -0
- package/dist/lib/cjs/setting-components/url-component.d.cts +49 -0
- package/dist/lib/cjs/setting-components/validator-component.cjs +230 -0
- package/dist/lib/cjs/setting-components/validator-component.d.cts +23 -0
- package/dist/lib/cjs/setting-components/value-component-with-change-tracking.cjs +131 -0
- package/dist/lib/cjs/setting-components/value-component-with-change-tracking.d.cts +20 -0
- package/dist/lib/cjs/setting-components/week-component.cjs +188 -0
- package/dist/lib/cjs/setting-components/week-component.d.cts +51 -0
- package/dist/lib/cjs/setting-ex.cjs +372 -0
- package/dist/lib/cjs/setting-ex.d.cts +198 -0
- package/dist/lib/cjs/setting-group-ex.cjs +165 -0
- package/dist/lib/cjs/setting-group-ex.d.cts +26 -0
- package/dist/lib/cjs/status-bar-item-registrar.cjs +162 -0
- package/dist/lib/cjs/status-bar-item-registrar.d.cts +36 -0
- package/dist/lib/cjs/templater.cjs +279 -0
- package/dist/lib/cjs/templater.d.cts +284 -0
- package/dist/lib/cjs/transformers/duration-transformer.cjs +182 -0
- package/dist/lib/cjs/transformers/duration-transformer.d.cts +39 -0
- package/dist/lib/cjs/transformers/index.cjs +153 -0
- package/dist/lib/cjs/transformers/index.d.cts +2 -0
- package/dist/lib/cjs/trusted-input.cjs +196 -0
- package/dist/lib/cjs/trusted-input.d.cts +131 -0
- package/dist/lib/cjs/validation.cjs +189 -0
- package/dist/lib/cjs/validation.d.cts +87 -0
- package/dist/lib/cjs/vault-delete.cjs +222 -0
- package/dist/lib/cjs/vault-delete.d.cts +82 -0
- package/dist/lib/cjs/vault-transaction.cjs +412 -0
- package/dist/lib/cjs/vault-transaction.d.cts +163 -0
- package/dist/lib/cjs/vault.cjs +701 -0
- package/dist/lib/cjs/vault.d.cts +506 -0
- package/dist/lib/cjs/view-registrar.cjs +162 -0
- package/dist/lib/cjs/view-registrar.d.cts +52 -0
- package/dist/lib/cjs/workspace.cjs +186 -0
- package/dist/lib/cjs/workspace.d.cts +81 -0
- package/dist/lib/esm/@types/dataview/api/data-array.d.mts +137 -0
- package/dist/lib/esm/@types/dataview/api/extensions.d.mts +16 -0
- package/dist/lib/esm/@types/dataview/api/inline-api.d.mts +187 -0
- package/dist/lib/esm/@types/dataview/api/plugin-api.d.mts +210 -0
- package/dist/lib/esm/@types/dataview/api/result.d.mts +39 -0
- package/dist/lib/esm/@types/dataview/data-import/common.d.mts +4 -0
- package/dist/lib/esm/@types/dataview/data-import/csv.d.mts +4 -0
- package/dist/lib/esm/@types/dataview/data-import/inline-field.d.mts +43 -0
- package/dist/lib/esm/@types/dataview/data-import/markdown-file.d.mts +53 -0
- package/dist/lib/esm/@types/dataview/data-import/persister.d.mts +33 -0
- package/dist/lib/esm/@types/dataview/data-import/web-worker/import-entry.d.mts +2 -0
- package/dist/lib/esm/@types/dataview/data-import/web-worker/import-impl.d.mts +7 -0
- package/dist/lib/esm/@types/dataview/data-import/web-worker/import-manager.d.mts +38 -0
- package/dist/lib/esm/@types/dataview/data-index/index.d.mts +187 -0
- package/dist/lib/esm/@types/dataview/data-index/resolver.d.mts +24 -0
- package/dist/lib/esm/@types/dataview/data-index/source.d.mts +72 -0
- package/dist/lib/esm/@types/dataview/data-model/markdown.d.mts +116 -0
- package/dist/lib/esm/@types/dataview/data-model/serialized/markdown.d.mts +107 -0
- package/dist/lib/esm/@types/dataview/data-model/transferable.d.mts +8 -0
- package/dist/lib/esm/@types/dataview/data-model/value.d.mts +176 -0
- package/dist/lib/esm/@types/dataview/expression/binaryop.d.mts +44 -0
- package/dist/lib/esm/@types/dataview/expression/context.d.mts +50 -0
- package/dist/lib/esm/@types/dataview/expression/field.d.mts +83 -0
- package/dist/lib/esm/@types/dataview/expression/functions.d.mts +150 -0
- package/dist/lib/esm/@types/dataview/expression/parse.d.mts +164 -0
- package/dist/lib/esm/@types/dataview/index.d.mts +56 -0
- package/dist/lib/esm/@types/dataview/main.d.mts +53 -0
- package/dist/lib/esm/@types/dataview/query/engine.d.mts +104 -0
- package/dist/lib/esm/@types/dataview/query/parse.d.mts +45 -0
- package/dist/lib/esm/@types/dataview/query/query.d.mts +96 -0
- package/dist/lib/esm/@types/dataview/settings.d.mts +61 -0
- package/dist/lib/esm/@types/dataview/typings/obsidian-ex.d.mts +29 -0
- package/dist/lib/esm/@types/dataview/typings/workers.d.mts +5 -0
- package/dist/lib/esm/@types/dataview/ui/export/markdown.d.mts +16 -0
- package/dist/lib/esm/@types/dataview/ui/lp-render.d.mts +38 -0
- package/dist/lib/esm/@types/dataview/ui/markdown.d.mts +87 -0
- package/dist/lib/esm/@types/dataview/ui/refreshable-view.d.mts +19 -0
- package/dist/lib/esm/@types/dataview/ui/render.d.mts +34 -0
- package/dist/lib/esm/@types/dataview/ui/views/calendar-view.d.mts +18 -0
- package/dist/lib/esm/@types/dataview/ui/views/inline-field-live-preview.d.mts +43 -0
- package/dist/lib/esm/@types/dataview/ui/views/inline-view.d.mts +29 -0
- package/dist/lib/esm/@types/dataview/ui/views/js-view.d.mts +24 -0
- package/dist/lib/esm/@types/dataview/ui/views/list-view.d.mts +26 -0
- package/dist/lib/esm/@types/dataview/ui/views/table-view.d.mts +29 -0
- package/dist/lib/esm/@types/dataview/ui/views/task-view.d.mts +52 -0
- package/dist/lib/esm/@types/dataview/util/hash.d.mts +2 -0
- package/dist/lib/esm/@types/dataview/util/locale.d.mts +3 -0
- package/dist/lib/esm/@types/dataview/util/media.d.mts +7 -0
- package/dist/lib/esm/@types/dataview/util/normalize.d.mts +45 -0
- package/dist/lib/esm/@types/i18next.d.mts +14 -0
- package/dist/lib/esm/@types/obsidian-integration-testing.d.mts +29 -0
- package/dist/lib/esm/@types/original-fs.d.mts +15 -0
- package/dist/lib/esm/__merged.d.mts +205 -0
- package/dist/lib/esm/__merged.mjs +1524 -0
- package/dist/lib/esm/active-file-provider.d.mts +36 -0
- package/dist/lib/esm/active-file-provider.mjs +64 -0
- package/dist/lib/esm/app.d.mts +17 -0
- package/dist/lib/esm/app.mjs +56 -0
- package/dist/lib/esm/async-with-notice.d.mts +113 -0
- package/dist/lib/esm/async-with-notice.mjs +141 -0
- package/dist/lib/esm/attachment-path.d.mts +341 -0
- package/dist/lib/esm/attachment-path.mjs +294 -0
- package/dist/lib/esm/attachment-unit-folder.d.mts +103 -0
- package/dist/lib/esm/attachment-unit-folder.mjs +70 -0
- package/dist/lib/esm/backlink-index.d.mts +51 -0
- package/dist/lib/esm/backlink-index.mjs +152 -0
- package/dist/lib/esm/backlink.d.mts +66 -0
- package/dist/lib/esm/backlink.mjs +123 -0
- package/dist/lib/esm/bases-view-registrar.d.mts +52 -0
- package/dist/lib/esm/bases-view-registrar.mjs +65 -0
- package/dist/lib/esm/callout.d.mts +76 -0
- package/dist/lib/esm/callout.mjs +124 -0
- package/dist/lib/esm/canvas.d.mts +28 -0
- package/dist/lib/esm/canvas.mjs +121 -0
- package/dist/lib/esm/case-insensitive-file-index.d.mts +92 -0
- package/dist/lib/esm/case-insensitive-file-index.mjs +144 -0
- package/dist/lib/esm/code-block-markdown-information.d.mts +48 -0
- package/dist/lib/esm/code-block-markdown-information.mjs +42 -0
- package/dist/lib/esm/code-block-reg-exp.d.mts +39 -0
- package/dist/lib/esm/code-block-reg-exp.mjs +48 -0
- package/dist/lib/esm/codemirror/index.d.mts +2 -0
- package/dist/lib/esm/codemirror/index.mjs +46 -0
- package/dist/lib/esm/codemirror/state-field-spec.d.mts +72 -0
- package/dist/lib/esm/codemirror/state-field-spec.mjs +42 -0
- package/dist/lib/esm/command-handlers/abstract-file-command-handler.d.mts +274 -0
- package/dist/lib/esm/command-handlers/abstract-file-command-handler.mjs +322 -0
- package/dist/lib/esm/command-handlers/command-handler-component.d.mts +146 -0
- package/dist/lib/esm/command-handlers/command-handler-component.mjs +185 -0
- package/dist/lib/esm/command-handlers/command-handler.d.mts +107 -0
- package/dist/lib/esm/command-handlers/command-handler.mjs +103 -0
- package/dist/lib/esm/command-handlers/editor-command-handler.d.mts +208 -0
- package/dist/lib/esm/command-handlers/editor-command-handler.mjs +254 -0
- package/dist/lib/esm/command-handlers/file-command-handler.d.mts +143 -0
- package/dist/lib/esm/command-handlers/file-command-handler.mjs +192 -0
- package/dist/lib/esm/command-handlers/folder-command-handler.d.mts +149 -0
- package/dist/lib/esm/command-handlers/folder-command-handler.mjs +200 -0
- package/dist/lib/esm/command-handlers/global-command-handler.d.mts +40 -0
- package/dist/lib/esm/command-handlers/global-command-handler.mjs +88 -0
- package/dist/lib/esm/command-handlers/index.d.mts +11 -0
- package/dist/lib/esm/command-handlers/index.mjs +64 -0
- package/dist/lib/esm/command-handlers/open-demo-vault-command-handler.d.mts +73 -0
- package/dist/lib/esm/command-handlers/open-demo-vault-command-handler.mjs +102 -0
- package/dist/lib/esm/command-handlers/open-settings-command-handler.d.mts +44 -0
- package/dist/lib/esm/command-handlers/open-settings-command-handler.mjs +77 -0
- package/dist/lib/esm/command-handlers/unlock-active-note-command-handler.d.mts +54 -0
- package/dist/lib/esm/command-handlers/unlock-active-note-command-handler.mjs +90 -0
- package/dist/lib/esm/command-registrar.d.mts +48 -0
- package/dist/lib/esm/command-registrar.mjs +72 -0
- package/dist/lib/esm/community-plugins.d.mts +270 -0
- package/dist/lib/esm/community-plugins.mjs +214 -0
- package/dist/lib/esm/components/abort-signal-component.d.mts +30 -0
- package/dist/lib/esm/components/abort-signal-component.mjs +75 -0
- package/dist/lib/esm/components/all-windows-event-component.d.mts +84 -0
- package/dist/lib/esm/components/all-windows-event-component.mjs +117 -0
- package/dist/lib/esm/components/async-error-handler-component.d.mts +30 -0
- package/dist/lib/esm/components/async-error-handler-component.mjs +79 -0
- package/dist/lib/esm/components/async-events-component.d.mts +15 -0
- package/dist/lib/esm/components/async-events-component.mjs +51 -0
- package/dist/lib/esm/components/case-insensitive-file-index-component.d.mts +36 -0
- package/dist/lib/esm/components/case-insensitive-file-index-component.mjs +93 -0
- package/dist/lib/esm/components/component-ex.d.mts +229 -0
- package/dist/lib/esm/components/component-ex.mjs +413 -0
- package/dist/lib/esm/components/console-debug-component.d.mts +30 -0
- package/dist/lib/esm/components/console-debug-component.mjs +73 -0
- package/dist/lib/esm/components/core-plugin-toggle-component.d.mts +102 -0
- package/dist/lib/esm/components/core-plugin-toggle-component.mjs +105 -0
- package/dist/lib/esm/components/disposable-component.d.mts +24 -0
- package/dist/lib/esm/components/disposable-component.mjs +57 -0
- package/dist/lib/esm/components/embed-extensions-component.d.mts +38 -0
- package/dist/lib/esm/components/embed-extensions-component.mjs +77 -0
- package/dist/lib/esm/components/generate-markdown-link-default-params-component.d.mts +42 -0
- package/dist/lib/esm/components/generate-markdown-link-default-params-component.mjs +73 -0
- package/dist/lib/esm/components/index.d.mts +30 -0
- package/dist/lib/esm/components/index.mjs +102 -0
- package/dist/lib/esm/components/layout-ready-component.d.mts +48 -0
- package/dist/lib/esm/components/layout-ready-component.mjs +113 -0
- package/dist/lib/esm/components/menu-event-registrar-component.d.mts +52 -0
- package/dist/lib/esm/components/menu-event-registrar-component.mjs +99 -0
- package/dist/lib/esm/components/monkey-around-component.d.mts +241 -0
- package/dist/lib/esm/components/monkey-around-component.mjs +146 -0
- package/dist/lib/esm/components/notebook-navigator-menu-event-registrar-component.d.mts +150 -0
- package/dist/lib/esm/components/notebook-navigator-menu-event-registrar-component.mjs +227 -0
- package/dist/lib/esm/components/plugin-context-component.d.mts +36 -0
- package/dist/lib/esm/components/plugin-context-component.mjs +86 -0
- package/dist/lib/esm/components/plugin-gate-component.d.mts +332 -0
- package/dist/lib/esm/components/plugin-gate-component.mjs +464 -0
- package/dist/lib/esm/components/plugin-notice-component.d.mts +362 -0
- package/dist/lib/esm/components/plugin-notice-component.mjs +535 -0
- package/dist/lib/esm/components/plugin-settings-component.d.mts +362 -0
- package/dist/lib/esm/components/plugin-settings-component.mjs +554 -0
- package/dist/lib/esm/components/plugin-settings-tab-component.d.mts +39 -0
- package/dist/lib/esm/components/plugin-settings-tab-component.mjs +73 -0
- package/dist/lib/esm/components/plugin-suggestion-component.d.mts +162 -0
- package/dist/lib/esm/components/plugin-suggestion-component.mjs +184 -0
- package/dist/lib/esm/components/pointer-position-component.d.mts +29 -0
- package/dist/lib/esm/components/pointer-position-component.mjs +69 -0
- package/dist/lib/esm/components/registry-component.d.mts +37 -0
- package/dist/lib/esm/components/registry-component.mjs +90 -0
- package/dist/lib/esm/components/release-notes-component.d.mts +129 -0
- package/dist/lib/esm/components/release-notes-component.mjs +128 -0
- package/dist/lib/esm/components/rename-delete-handler-component.d.mts +165 -0
- package/dist/lib/esm/components/rename-delete-handler-component.mjs +1230 -0
- package/dist/lib/esm/components/rmdir-guard-component.d.mts +76 -0
- package/dist/lib/esm/components/rmdir-guard-component.mjs +92 -0
- package/dist/lib/esm/components/settings-migration-component.d.mts +120 -0
- package/dist/lib/esm/components/settings-migration-component.mjs +125 -0
- package/dist/lib/esm/components/syntax-highlighting-component.d.mts +149 -0
- package/dist/lib/esm/components/syntax-highlighting-component.mjs +151 -0
- package/dist/lib/esm/components/templates-language-component.d.mts +124 -0
- package/dist/lib/esm/components/templates-language-component.mjs +179 -0
- package/dist/lib/esm/constructors/get-dom-events-handlers-constructor.d.mts +22 -0
- package/dist/lib/esm/constructors/get-dom-events-handlers-constructor.mjs +149 -0
- package/dist/lib/esm/constructors/index.d.mts +2 -0
- package/dist/lib/esm/constructors/index.mjs +46 -0
- package/dist/lib/esm/css-class.d.mts +278 -0
- package/dist/lib/esm/css-class.mjs +111 -0
- package/dist/lib/esm/data-handler.d.mts +49 -0
- package/dist/lib/esm/data-handler.mjs +73 -0
- package/dist/lib/esm/dataview-link.d.mts +42 -0
- package/dist/lib/esm/dataview-link.mjs +66 -0
- package/dist/lib/esm/dataview.d.mts +249 -0
- package/dist/lib/esm/dataview.mjs +280 -0
- package/dist/lib/esm/debug.d.mts +19 -0
- package/dist/lib/esm/debug.mjs +51 -0
- package/dist/lib/esm/demo-vault-helper-settings.d.mts +29 -0
- package/dist/lib/esm/demo-vault-helper-settings.mjs +42 -0
- package/dist/lib/esm/demo-vault-helper.d.mts +61 -0
- package/dist/lib/esm/demo-vault-helper.mjs +142 -0
- package/dist/lib/esm/demo-vault-naming.d.mts +54 -0
- package/dist/lib/esm/demo-vault-naming.mjs +59 -0
- package/dist/lib/esm/desktop-demo-vault-opener.d.mts +76 -0
- package/dist/lib/esm/desktop-demo-vault-opener.mjs +266 -0
- package/dist/lib/esm/desktop-trusted-input.d.mts +288 -0
- package/dist/lib/esm/desktop-trusted-input.mjs +198 -0
- package/dist/lib/esm/editor-extension-registrar.d.mts +37 -0
- package/dist/lib/esm/editor-extension-registrar.mjs +65 -0
- package/dist/lib/esm/editor-suggest-registrar.d.mts +36 -0
- package/dist/lib/esm/editor-suggest-registrar.mjs +68 -0
- package/dist/lib/esm/editor.d.mts +45 -0
- package/dist/lib/esm/editor.mjs +107 -0
- package/dist/lib/esm/events.d.mts +98 -0
- package/dist/lib/esm/events.mjs +73 -0
- package/dist/lib/esm/extensions-registrar.d.mts +51 -0
- package/dist/lib/esm/extensions-registrar.mjs +65 -0
- package/dist/lib/esm/file-change.d.mts +156 -0
- package/dist/lib/esm/file-change.mjs +473 -0
- package/dist/lib/esm/file-explorer.d.mts +34 -0
- package/dist/lib/esm/file-explorer.mjs +60 -0
- package/dist/lib/esm/file-manager.d.mts +123 -0
- package/dist/lib/esm/file-manager.mjs +161 -0
- package/dist/lib/esm/file-system.d.mts +554 -0
- package/dist/lib/esm/file-system.mjs +458 -0
- package/dist/lib/esm/folder-note.d.mts +166 -0
- package/dist/lib/esm/folder-note.mjs +161 -0
- package/dist/lib/esm/frontmatter-formatting.d.mts +44 -0
- package/dist/lib/esm/frontmatter-formatting.mjs +368 -0
- package/dist/lib/esm/frontmatter-link-cache-with-offsets.d.mts +34 -0
- package/dist/lib/esm/frontmatter-link-cache-with-offsets.mjs +61 -0
- package/dist/lib/esm/frontmatter.d.mts +145 -0
- package/dist/lib/esm/frontmatter.mjs +174 -0
- package/dist/lib/esm/generated-during-build.d.mts +25 -0
- package/dist/lib/esm/generated-during-build.mjs +48 -0
- package/dist/lib/esm/hover-link-source-registrar.d.mts +52 -0
- package/dist/lib/esm/hover-link-source-registrar.mjs +65 -0
- package/dist/lib/esm/html-element.d.mts +98 -0
- package/dist/lib/esm/html-element.mjs +86 -0
- package/dist/lib/esm/i18n/custom-type-options.d.mts +38 -0
- package/dist/lib/esm/i18n/custom-type-options.mjs +43 -0
- package/dist/lib/esm/i18n/default-translations.d.mts +15 -0
- package/dist/lib/esm/i18n/default-translations.mjs +43 -0
- package/dist/lib/esm/i18n/i18n.d.mts +38 -0
- package/dist/lib/esm/i18n/i18n.mjs +89 -0
- package/dist/lib/esm/i18n/index.d.mts +5 -0
- package/dist/lib/esm/i18n/index.mjs +52 -0
- package/dist/lib/esm/i18n/locales/en.d.mts +91 -0
- package/dist/lib/esm/i18n/locales/en.mjs +127 -0
- package/dist/lib/esm/i18n/locales/index.d.mts +3 -0
- package/dist/lib/esm/i18n/locales/index.mjs +48 -0
- package/dist/lib/esm/i18n/locales/translations-map.d.mts +100 -0
- package/dist/lib/esm/i18n/locales/translations-map.mjs +52 -0
- package/dist/lib/esm/index.d.mts +96 -0
- package/dist/lib/esm/index.mjs +234 -0
- package/dist/lib/esm/is-in-obsidian.d.mts +12 -0
- package/dist/lib/esm/is-in-obsidian.mjs +59 -0
- package/dist/lib/esm/library-styles.d.mts +56 -0
- package/dist/lib/esm/library-styles.mjs +72 -0
- package/dist/lib/esm/library.d.mts +57 -0
- package/dist/lib/esm/library.mjs +83 -0
- package/dist/lib/esm/link-name.d.mts +23 -0
- package/dist/lib/esm/link-name.mjs +48 -0
- package/dist/lib/esm/link-update-progress.d.mts +32 -0
- package/dist/lib/esm/link-update-progress.mjs +42 -0
- package/dist/lib/esm/link.d.mts +1369 -0
- package/dist/lib/esm/link.mjs +988 -0
- package/dist/lib/esm/logger.d.mts +37 -0
- package/dist/lib/esm/logger.mjs +115 -0
- package/dist/lib/esm/loop.d.mts +104 -0
- package/dist/lib/esm/loop.mjs +151 -0
- package/dist/lib/esm/markdown-code-block-processor-registrar.d.mts +62 -0
- package/dist/lib/esm/markdown-code-block-processor-registrar.mjs +69 -0
- package/dist/lib/esm/markdown-code-block-processor.d.mts +137 -0
- package/dist/lib/esm/markdown-code-block-processor.mjs +356 -0
- package/dist/lib/esm/markdown-post-processor-registrar.d.mts +59 -0
- package/dist/lib/esm/markdown-post-processor-registrar.mjs +66 -0
- package/dist/lib/esm/markdown-view.d.mts +14 -0
- package/dist/lib/esm/markdown-view.mjs +54 -0
- package/dist/lib/esm/markdown.d.mts +226 -0
- package/dist/lib/esm/markdown.mjs +391 -0
- package/dist/lib/esm/menu-event-registrar.d.mts +84 -0
- package/dist/lib/esm/menu-event-registrar.mjs +42 -0
- package/dist/lib/esm/metadata-cache.d.mts +359 -0
- package/dist/lib/esm/metadata-cache.mjs +454 -0
- package/dist/lib/esm/mobile-trusted-input.d.mts +98 -0
- package/dist/lib/esm/mobile-trusted-input.mjs +82 -0
- package/dist/lib/esm/modals/alert.d.mts +35 -0
- package/dist/lib/esm/modals/alert.mjs +84 -0
- package/dist/lib/esm/modals/confirm.d.mts +39 -0
- package/dist/lib/esm/modals/confirm.mjs +94 -0
- package/dist/lib/esm/modals/index.d.mts +10 -0
- package/dist/lib/esm/modals/index.mjs +62 -0
- package/dist/lib/esm/modals/minimizable-modal.d.mts +129 -0
- package/dist/lib/esm/modals/minimizable-modal.mjs +348 -0
- package/dist/lib/esm/modals/modal-command-builder.d.mts +285 -0
- package/dist/lib/esm/modals/modal-command-builder.mjs +363 -0
- package/dist/lib/esm/modals/modal.d.mts +64 -0
- package/dist/lib/esm/modals/modal.mjs +78 -0
- package/dist/lib/esm/modals/prompt.d.mts +83 -0
- package/dist/lib/esm/modals/prompt.mjs +168 -0
- package/dist/lib/esm/modals/select-item.d.mts +55 -0
- package/dist/lib/esm/modals/select-item.mjs +104 -0
- package/dist/lib/esm/modals/select-option.d.mts +65 -0
- package/dist/lib/esm/modals/select-option.mjs +95 -0
- package/dist/lib/esm/modals/suggest-modal-command-builder.d.mts +35 -0
- package/dist/lib/esm/modals/suggest-modal-command-builder.mjs +47 -0
- package/dist/lib/esm/note-priority.d.mts +154 -0
- package/dist/lib/esm/note-priority.mjs +135 -0
- package/dist/lib/esm/notebook-navigator.d.mts +132 -0
- package/dist/lib/esm/notebook-navigator.mjs +64 -0
- package/dist/lib/esm/obsidian-dev-utils-state.d.mts +42 -0
- package/dist/lib/esm/obsidian-dev-utils-state.mjs +76 -0
- package/dist/lib/esm/obsidian-protocol-handler-registrar.d.mts +55 -0
- package/dist/lib/esm/obsidian-protocol-handler-registrar.mjs +68 -0
- package/dist/lib/esm/obsidian-settings.d.mts +62 -0
- package/dist/lib/esm/obsidian-settings.mjs +81 -0
- package/dist/lib/esm/parse-link.d.mts +288 -0
- package/dist/lib/esm/parse-link.mjs +428 -0
- package/dist/lib/esm/path-settings.d.mts +56 -0
- package/dist/lib/esm/path-settings.mjs +176 -0
- package/dist/lib/esm/pdf.d.mts +26 -0
- package/dist/lib/esm/pdf.mjs +76 -0
- package/dist/lib/esm/plugin/index.d.mts +9 -0
- package/dist/lib/esm/plugin/index.mjs +60 -0
- package/dist/lib/esm/plugin/plugin-api.d.mts +413 -0
- package/dist/lib/esm/plugin/plugin-api.mjs +422 -0
- package/dist/lib/esm/plugin/plugin-context.d.mts +27 -0
- package/dist/lib/esm/plugin/plugin-context.mjs +101 -0
- package/dist/lib/esm/plugin/plugin-event-source.d.mts +97 -0
- package/dist/lib/esm/plugin/plugin-event-source.mjs +129 -0
- package/dist/lib/esm/plugin/plugin-install-state.d.mts +113 -0
- package/dist/lib/esm/plugin/plugin-install-state.mjs +101 -0
- package/dist/lib/esm/plugin/plugin-lifecycle-events.d.mts +127 -0
- package/dist/lib/esm/plugin/plugin-lifecycle-events.mjs +52 -0
- package/dist/lib/esm/plugin/plugin-settings-tab.d.mts +368 -0
- package/dist/lib/esm/plugin/plugin-settings-tab.mjs +527 -0
- package/dist/lib/esm/plugin/plugin.d.mts +363 -0
- package/dist/lib/esm/plugin/plugin.mjs +611 -0
- package/dist/lib/esm/plugin/settings-migration-api.d.mts +91 -0
- package/dist/lib/esm/plugin/settings-migration-api.mjs +42 -0
- package/dist/lib/esm/plugin-cli-handler-registrar.d.mts +64 -0
- package/dist/lib/esm/plugin-cli-handler-registrar.mjs +66 -0
- package/dist/lib/esm/popovers/field-popover.d.mts +75 -0
- package/dist/lib/esm/popovers/field-popover.mjs +88 -0
- package/dist/lib/esm/popovers/index.d.mts +4 -0
- package/dist/lib/esm/popovers/index.mjs +50 -0
- package/dist/lib/esm/popovers/popover-anchor.d.mts +67 -0
- package/dist/lib/esm/popovers/popover-anchor.mjs +82 -0
- package/dist/lib/esm/popovers/popover.d.mts +78 -0
- package/dist/lib/esm/popovers/popover.mjs +132 -0
- package/dist/lib/esm/property-entry.d.mts +43 -0
- package/dist/lib/esm/property-entry.mjs +73 -0
- package/dist/lib/esm/queue.d.mts +93 -0
- package/dist/lib/esm/queue.mjs +122 -0
- package/dist/lib/esm/react/app-context.d.mts +24 -0
- package/dist/lib/esm/react/app-context.mjs +56 -0
- package/dist/lib/esm/react/index.d.mts +2 -0
- package/dist/lib/esm/react/index.mjs +46 -0
- package/dist/lib/esm/reference.d.mts +116 -0
- package/dist/lib/esm/reference.mjs +87 -0
- package/dist/lib/esm/resource-lock.d.mts +318 -0
- package/dist/lib/esm/resource-lock.mjs +1006 -0
- package/dist/lib/esm/resource-url.d.mts +31 -0
- package/dist/lib/esm/resource-url.mjs +59 -0
- package/dist/lib/esm/ribbon-icon-registrar.d.mts +60 -0
- package/dist/lib/esm/ribbon-icon-registrar.mjs +66 -0
- package/dist/lib/esm/setting-components/checkbox-component.d.mts +69 -0
- package/dist/lib/esm/setting-components/checkbox-component.mjs +119 -0
- package/dist/lib/esm/setting-components/code-highlighter-component.d.mts +132 -0
- package/dist/lib/esm/setting-components/code-highlighter-component.mjs +287 -0
- package/dist/lib/esm/setting-components/date-component.d.mts +38 -0
- package/dist/lib/esm/setting-components/date-component.mjs +83 -0
- package/dist/lib/esm/setting-components/date-time-component.d.mts +38 -0
- package/dist/lib/esm/setting-components/date-time-component.mjs +83 -0
- package/dist/lib/esm/setting-components/email-component.d.mts +49 -0
- package/dist/lib/esm/setting-components/email-component.mjs +94 -0
- package/dist/lib/esm/setting-components/file-component.d.mts +43 -0
- package/dist/lib/esm/setting-components/file-component.mjs +86 -0
- package/dist/lib/esm/setting-components/index.d.mts +27 -0
- package/dist/lib/esm/setting-components/index.mjs +96 -0
- package/dist/lib/esm/setting-components/month-component.d.mts +51 -0
- package/dist/lib/esm/setting-components/month-component.mjs +91 -0
- package/dist/lib/esm/setting-components/multiple-dropdown-component.d.mts +92 -0
- package/dist/lib/esm/setting-components/multiple-dropdown-component.mjs +159 -0
- package/dist/lib/esm/setting-components/multiple-email-component.d.mts +38 -0
- package/dist/lib/esm/setting-components/multiple-email-component.mjs +80 -0
- package/dist/lib/esm/setting-components/multiple-file-component.d.mts +43 -0
- package/dist/lib/esm/setting-components/multiple-file-component.mjs +88 -0
- package/dist/lib/esm/setting-components/multiple-text-component.d.mts +109 -0
- package/dist/lib/esm/setting-components/multiple-text-component.mjs +178 -0
- package/dist/lib/esm/setting-components/number-component.d.mts +56 -0
- package/dist/lib/esm/setting-components/number-component.mjs +104 -0
- package/dist/lib/esm/setting-components/password-component.d.mts +38 -0
- package/dist/lib/esm/setting-components/password-component.mjs +80 -0
- package/dist/lib/esm/setting-components/setting-component-wrapper.d.mts +13 -0
- package/dist/lib/esm/setting-components/setting-component-wrapper.mjs +63 -0
- package/dist/lib/esm/setting-components/telephone-component.d.mts +51 -0
- package/dist/lib/esm/setting-components/telephone-component.mjs +94 -0
- package/dist/lib/esm/setting-components/text-based-component.d.mts +38 -0
- package/dist/lib/esm/setting-components/text-based-component.mjs +73 -0
- package/dist/lib/esm/setting-components/time-component.d.mts +38 -0
- package/dist/lib/esm/setting-components/time-component.mjs +88 -0
- package/dist/lib/esm/setting-components/tri-state-checkbox-component.d.mts +69 -0
- package/dist/lib/esm/setting-components/tri-state-checkbox-component.mjs +120 -0
- package/dist/lib/esm/setting-components/typed-dropdown-component.d.mts +97 -0
- package/dist/lib/esm/setting-components/typed-dropdown-component.mjs +168 -0
- package/dist/lib/esm/setting-components/typed-multiple-dropdown-component.d.mts +99 -0
- package/dist/lib/esm/setting-components/typed-multiple-dropdown-component.mjs +167 -0
- package/dist/lib/esm/setting-components/typed-range-text-component.d.mts +35 -0
- package/dist/lib/esm/setting-components/typed-range-text-component.mjs +78 -0
- package/dist/lib/esm/setting-components/typed-text-component.d.mts +100 -0
- package/dist/lib/esm/setting-components/typed-text-component.mjs +138 -0
- package/dist/lib/esm/setting-components/url-component.d.mts +49 -0
- package/dist/lib/esm/setting-components/url-component.mjs +94 -0
- package/dist/lib/esm/setting-components/validator-component.d.mts +23 -0
- package/dist/lib/esm/setting-components/validator-component.mjs +142 -0
- package/dist/lib/esm/setting-components/value-component-with-change-tracking.d.mts +20 -0
- package/dist/lib/esm/setting-components/value-component-with-change-tracking.mjs +42 -0
- package/dist/lib/esm/setting-components/week-component.d.mts +51 -0
- package/dist/lib/esm/setting-components/week-component.mjs +91 -0
- package/dist/lib/esm/setting-ex.d.mts +198 -0
- package/dist/lib/esm/setting-ex.mjs +274 -0
- package/dist/lib/esm/setting-group-ex.d.mts +26 -0
- package/dist/lib/esm/setting-group-ex.mjs +68 -0
- package/dist/lib/esm/status-bar-item-registrar.d.mts +36 -0
- package/dist/lib/esm/status-bar-item-registrar.mjs +65 -0
- package/dist/lib/esm/templater.d.mts +284 -0
- package/dist/lib/esm/templater.mjs +173 -0
- package/dist/lib/esm/transformers/duration-transformer.d.mts +39 -0
- package/dist/lib/esm/transformers/duration-transformer.mjs +85 -0
- package/dist/lib/esm/transformers/index.d.mts +2 -0
- package/dist/lib/esm/transformers/index.mjs +46 -0
- package/dist/lib/esm/trusted-input.d.mts +131 -0
- package/dist/lib/esm/trusted-input.mjs +83 -0
- package/dist/lib/esm/validation.d.mts +87 -0
- package/dist/lib/esm/validation.mjs +87 -0
- package/dist/lib/esm/vault-delete.d.mts +82 -0
- package/dist/lib/esm/vault-delete.mjs +132 -0
- package/dist/lib/esm/vault-transaction.d.mts +163 -0
- package/dist/lib/esm/vault-transaction.mjs +325 -0
- package/dist/lib/esm/vault.d.mts +506 -0
- package/dist/lib/esm/vault.mjs +604 -0
- package/dist/lib/esm/view-registrar.d.mts +52 -0
- package/dist/lib/esm/view-registrar.mjs +65 -0
- package/dist/lib/esm/workspace.d.mts +81 -0
- package/dist/lib/esm/workspace.mjs +84 -0
- package/dist/styles.css +497 -0
- package/i18n/custom-type-options/package.json +6 -0
- package/i18n/default-translations/package.json +6 -0
- package/i18n/i18n/package.json +6 -0
- package/i18n/index/package.json +6 -0
- package/i18n/locales/en/package.json +6 -0
- package/i18n/locales/index/package.json +6 -0
- package/i18n/locales/package.json +6 -0
- package/i18n/locales/translations-map/package.json +6 -0
- package/i18n/package.json +6 -0
- package/modals/alert/package.json +6 -0
- package/modals/confirm/package.json +6 -0
- package/modals/index/package.json +6 -0
- package/modals/minimizable-modal/package.json +6 -0
- package/modals/modal/package.json +6 -0
- package/modals/modal-command-builder/package.json +6 -0
- package/modals/package.json +6 -0
- package/modals/prompt/package.json +6 -0
- package/modals/select-item/package.json +6 -0
- package/modals/select-option/package.json +6 -0
- package/modals/suggest-modal-command-builder/package.json +6 -0
- package/package.json +533 -13
- package/plugin/index/package.json +6 -0
- package/plugin/package.json +6 -0
- package/plugin/plugin/package.json +6 -0
- package/plugin/plugin-api/package.json +6 -0
- package/plugin/plugin-context/package.json +6 -0
- package/plugin/plugin-event-source/package.json +6 -0
- package/plugin/plugin-install-state/package.json +6 -0
- package/plugin/plugin-lifecycle-events/package.json +6 -0
- package/plugin/plugin-settings-tab/package.json +6 -0
- package/plugin/settings-migration-api/package.json +6 -0
- package/popovers/field-popover/package.json +6 -0
- package/popovers/index/package.json +6 -0
- package/popovers/package.json +6 -0
- package/popovers/popover/package.json +6 -0
- package/popovers/popover-anchor/package.json +6 -0
- package/react/app-context/package.json +6 -0
- package/react/index/package.json +6 -0
- package/react/package.json +6 -0
- package/setting-components/checkbox-component/package.json +6 -0
- package/setting-components/code-highlighter-component/package.json +6 -0
- package/setting-components/date-component/package.json +6 -0
- package/setting-components/date-time-component/package.json +6 -0
- package/setting-components/email-component/package.json +6 -0
- package/setting-components/file-component/package.json +6 -0
- package/setting-components/index/package.json +6 -0
- package/setting-components/month-component/package.json +6 -0
- package/setting-components/multiple-dropdown-component/package.json +6 -0
- package/setting-components/multiple-email-component/package.json +6 -0
- package/setting-components/multiple-file-component/package.json +6 -0
- package/setting-components/multiple-text-component/package.json +6 -0
- package/setting-components/number-component/package.json +6 -0
- package/setting-components/package.json +6 -0
- package/setting-components/password-component/package.json +6 -0
- package/setting-components/setting-component-wrapper/package.json +6 -0
- package/setting-components/telephone-component/package.json +6 -0
- package/setting-components/text-based-component/package.json +6 -0
- package/setting-components/time-component/package.json +6 -0
- package/setting-components/tri-state-checkbox-component/package.json +6 -0
- package/setting-components/typed-dropdown-component/package.json +6 -0
- package/setting-components/typed-multiple-dropdown-component/package.json +6 -0
- package/setting-components/typed-range-text-component/package.json +6 -0
- package/setting-components/typed-text-component/package.json +6 -0
- package/setting-components/url-component/package.json +6 -0
- package/setting-components/validator-component/package.json +6 -0
- package/setting-components/value-component-with-change-tracking/package.json +6 -0
- package/setting-components/week-component/package.json +6 -0
- package/transformers/duration-transformer/package.json +6 -0
- package/transformers/index/package.json +6 -0
- package/transformers/package.json +6 -0
|
@@ -0,0 +1,222 @@
|
|
|
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 () {
|
|
7
|
+
function ensureDisposeSymbols(symbolConstructor = Symbol) {
|
|
8
|
+
symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
|
|
9
|
+
symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
function ensureBrowserProcess() {
|
|
13
|
+
const browserProcess = {
|
|
14
|
+
browser: true,
|
|
15
|
+
cwd() {
|
|
16
|
+
return "/";
|
|
17
|
+
},
|
|
18
|
+
env: {},
|
|
19
|
+
platform: "android"
|
|
20
|
+
};
|
|
21
|
+
const existingProcess = globalThis.process;
|
|
22
|
+
if (!existingProcess) {
|
|
23
|
+
globalThis.process = browserProcess;
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
if (existingProcess.versions?.node) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const existingProcessRecord = existingProcess;
|
|
30
|
+
for (const [key, value] of Object.entries(browserProcess)) {
|
|
31
|
+
existingProcessRecord[key] ??= value;
|
|
32
|
+
}
|
|
33
|
+
existingProcessRecord["browser"] = true;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
function keepName($unknown) {
|
|
37
|
+
return $unknown;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
(function initCjs() {
|
|
41
|
+
const globalThisRecord = globalThis;
|
|
42
|
+
ensureDisposeSymbols();
|
|
43
|
+
globalThisRecord["__name"] ??= keepName;
|
|
44
|
+
globalThisRecord["__extractDefault"] ??= extractDefault;
|
|
45
|
+
ensureBrowserProcess();
|
|
46
|
+
function extractDefault(module) {
|
|
47
|
+
return module && module.__esModule && "default" in module ? module.default : module;
|
|
48
|
+
}
|
|
49
|
+
})();
|
|
50
|
+
})();
|
|
51
|
+
(function patchObsidianRequire() {
|
|
52
|
+
const originalRequire = require;
|
|
53
|
+
if (!originalRequire || originalRequire.__isPatched) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
require = Object.assign(
|
|
57
|
+
(id) => requirePatched(id),
|
|
58
|
+
originalRequire,
|
|
59
|
+
{
|
|
60
|
+
__isPatched: true
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
function extractDefault(module) {
|
|
64
|
+
return module && module.__esModule && "default" in module ? module.default : module;
|
|
65
|
+
}
|
|
66
|
+
const OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
|
|
67
|
+
"@codemirror/autocomplete",
|
|
68
|
+
"@codemirror/collab",
|
|
69
|
+
"@codemirror/commands",
|
|
70
|
+
"@codemirror/language",
|
|
71
|
+
"@codemirror/lint",
|
|
72
|
+
"@codemirror/search",
|
|
73
|
+
"@codemirror/state",
|
|
74
|
+
"@codemirror/text",
|
|
75
|
+
"@codemirror/view",
|
|
76
|
+
"@lezer/common",
|
|
77
|
+
"@lezer/highlight",
|
|
78
|
+
"@lezer/lr",
|
|
79
|
+
"obsidian"
|
|
80
|
+
]);
|
|
81
|
+
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
|
|
82
|
+
"@codemirror/closebrackets",
|
|
83
|
+
"@codemirror/comment",
|
|
84
|
+
"@codemirror/fold",
|
|
85
|
+
"@codemirror/gutter",
|
|
86
|
+
"@codemirror/highlight",
|
|
87
|
+
"@codemirror/history",
|
|
88
|
+
"@codemirror/matchbrackets",
|
|
89
|
+
"@codemirror/panel",
|
|
90
|
+
"@codemirror/rangeset",
|
|
91
|
+
"@codemirror/rectangular-selection",
|
|
92
|
+
"@codemirror/stream-parser",
|
|
93
|
+
"@codemirror/tooltip"
|
|
94
|
+
]);
|
|
95
|
+
function requirePatched(id) {
|
|
96
|
+
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
|
|
97
|
+
return originalRequire?.(id);
|
|
98
|
+
}
|
|
99
|
+
if (globalThis.app.isMobile) {
|
|
100
|
+
if (id === "process" || id === "node:process") {
|
|
101
|
+
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
|
|
102
|
+
return process;
|
|
103
|
+
}
|
|
104
|
+
} else {
|
|
105
|
+
const module = originalRequire?.(id);
|
|
106
|
+
if (module) {
|
|
107
|
+
return extractDefault(module);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
|
|
111
|
+
return {};
|
|
112
|
+
}
|
|
113
|
+
})();
|
|
114
|
+
|
|
115
|
+
"use strict";
|
|
116
|
+
var __defProp = Object.defineProperty;
|
|
117
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
118
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
119
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
120
|
+
var __export = (target, all) => {
|
|
121
|
+
for (var name in all)
|
|
122
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
123
|
+
};
|
|
124
|
+
var __copyProps = (to, from, except, desc) => {
|
|
125
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
126
|
+
for (let key of __getOwnPropNames(from))
|
|
127
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
128
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
129
|
+
}
|
|
130
|
+
return to;
|
|
131
|
+
};
|
|
132
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
133
|
+
var settings_migration_component_exports = {};
|
|
134
|
+
__export(settings_migration_component_exports, {
|
|
135
|
+
SettingsMigrationComponent: () => SettingsMigrationComponent
|
|
136
|
+
});
|
|
137
|
+
module.exports = __toCommonJS(settings_migration_component_exports);
|
|
138
|
+
var import_async = require('@mnaoumov/typescript-lib/async');
|
|
139
|
+
var import_object_utils = require('@mnaoumov/typescript-lib/object-utils');
|
|
140
|
+
var import_plugin_api = require('../plugin/plugin-api.cjs');
|
|
141
|
+
var import_async_events_component = require('./async-events-component.cjs');
|
|
142
|
+
var import_component_ex = require('./component-ex.cjs');
|
|
143
|
+
class SettingsMigrationComponent extends import_component_ex.ComponentEx {
|
|
144
|
+
apiVersionRange;
|
|
145
|
+
app;
|
|
146
|
+
contract;
|
|
147
|
+
getProposedSettings;
|
|
148
|
+
isProposing = false;
|
|
149
|
+
pluginSettingsComponent;
|
|
150
|
+
providerPluginId;
|
|
151
|
+
retireProposedSettings;
|
|
152
|
+
sourcePluginId;
|
|
153
|
+
/**
|
|
154
|
+
* Creates an instance of {@link SettingsMigrationComponent}.
|
|
155
|
+
*
|
|
156
|
+
* @param params - The constructor parameters.
|
|
157
|
+
*/
|
|
158
|
+
constructor(params) {
|
|
159
|
+
super();
|
|
160
|
+
this.apiVersionRange = params.apiVersionRange;
|
|
161
|
+
this.app = params.app;
|
|
162
|
+
this.contract = params.contract;
|
|
163
|
+
this.getProposedSettings = params.getProposedSettings;
|
|
164
|
+
this.pluginSettingsComponent = params.pluginSettingsComponent;
|
|
165
|
+
this.providerPluginId = params.providerPluginId;
|
|
166
|
+
this.retireProposedSettings = params.retireProposedSettings;
|
|
167
|
+
this.sourcePluginId = params.sourcePluginId;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Loads the component, wiring both edges that can make an offer possible.
|
|
171
|
+
*/
|
|
172
|
+
onload() {
|
|
173
|
+
const ref = (0, import_plugin_api.watchPluginApi)((0, import_object_utils.normalizeOptionalProperties)({
|
|
174
|
+
apiVersionRange: this.apiVersionRange,
|
|
175
|
+
app: this.app,
|
|
176
|
+
component: this,
|
|
177
|
+
contract: this.contract,
|
|
178
|
+
pluginId: this.providerPluginId
|
|
179
|
+
}));
|
|
180
|
+
(0, import_async_events_component.registerAsyncEvent)(
|
|
181
|
+
this,
|
|
182
|
+
ref.on("change", () => {
|
|
183
|
+
this.handleChange(ref);
|
|
184
|
+
})
|
|
185
|
+
);
|
|
186
|
+
(0, import_async_events_component.registerAsyncEvent)(
|
|
187
|
+
this,
|
|
188
|
+
this.pluginSettingsComponent.on("loadSettings", () => {
|
|
189
|
+
this.handleChange(ref);
|
|
190
|
+
})
|
|
191
|
+
);
|
|
192
|
+
this.handleChange(ref);
|
|
193
|
+
}
|
|
194
|
+
handleChange(ref) {
|
|
195
|
+
(0, import_async.invokeAsyncSafely)(async () => {
|
|
196
|
+
await this.propose(ref.value);
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
async propose(api) {
|
|
200
|
+
const proposedSettings = this.getProposedSettings();
|
|
201
|
+
if (!api || this.isProposing || proposedSettings === null) {
|
|
202
|
+
return;
|
|
203
|
+
}
|
|
204
|
+
this.isProposing = true;
|
|
205
|
+
try {
|
|
206
|
+
const result = await api.migrateSettings({
|
|
207
|
+
proposedSettings,
|
|
208
|
+
sourcePluginId: this.sourcePluginId
|
|
209
|
+
});
|
|
210
|
+
if (result.isApplied) {
|
|
211
|
+
await this.retireProposedSettings();
|
|
212
|
+
}
|
|
213
|
+
} finally {
|
|
214
|
+
this.isProposing = false;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
219
|
+
0 && (module.exports = {
|
|
220
|
+
SettingsMigrationComponent
|
|
221
|
+
});
|
|
222
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc2V0dGluZ3MtbWlncmF0aW9uLWNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbXBvbmVudCB0aGF0IG9mZmVycyBzZXR0aW5ncyB0aGlzIHBsdWdpbiB1c2VkIHRvIG93biB0byB0aGUgcGx1Z2luIHRoYXQgb3ducyB0aGVtIG5vdywgb25jZSwgdGhyb3VnaFxuICogdGhhdCBwbHVnaW4ncyBwdWJsaWMgQVBJLlxuICpcbiAqIFRoaXMgaXMgdGhlIG90aGVyIGhhbGYgb2Yge0BsaW5rIGNvbXBvbmVudHMvcGx1Z2luLXN1Z2dlc3Rpb24tY29tcG9uZW50IVBsdWdpblN1Z2dlc3Rpb25Db21wb25lbnR9LlxuICogVGhlIHN1Z2dlc3Rpb24gYXNrcyB0aGUgdXNlciB0byBpbnN0YWxsIHRoZSBwbHVnaW4gdGhhdCB0b29rIGEgZmVhdHVyZSBvdmVyOyB0aGlzIGNhcnJpZXMgdGhlIHNldHRpbmdzIHRoZXlcbiAqIGhhZCBjb25maWd1cmVkIGZvciBpdCBhY3Jvc3MsIHNvIHRha2luZyB0aGUgc3VnZ2VzdGlvbiBkb2VzIG5vdCBtZWFuIHJlLWVudGVyaW5nIGV2ZXJ5dGhpbmcgYnkgaGFuZC5cbiAqXG4gKiBBIHByb3Bvc2luZyBwbHVnaW4gbmV2ZXIgd3JpdGVzIGludG8gYW5vdGhlciBwbHVnaW4ncyBgZGF0YS5qc29uYC4gSXQgUFJPUE9TRVM6IHRoZSBvdGhlciBwbHVnaW4gb3ducyB0aGVcbiAqIHNldHRpbmdzLCBzbyBpdCBvd25zIHRoZSBkaWFsb2csIGFuZCB0aGUgdXNlciBhcHByb3ZlcywgZWRpdHMgb3IgZGVjbGluZXMuIE9ubHkgYW4gYXBwbGllZCBtaWdyYXRpb24gcmV0aXJlc1xuICogdGhlIHBlbmRpbmcgdmFsdWVzLlxuICpcbiAqIFRoZSBvZmZlciBpcyBtYWRlIHdoZW5ldmVyIGl0IENBTiBzdWNjZWVkLCB3aGljaCBuZWVkcyB0d28gaW5kZXBlbmRlbnQgdGhpbmdzIHRvIGhhdmUgaGFwcGVuZWQgXHUyMDE0IHRoZVxuICogcHJvdmlkZXIncyBBUEkgYmVpbmcgYXZhaWxhYmxlLCBhbmQgdGhpcyBwbHVnaW4ncyBvd24gc2V0dGluZ3MgaGF2aW5nIGFycml2ZWQgZnJvbSBkaXNrLiBFaXRoZXIgY2FuIGxhbmRcbiAqIGZpcnN0LCBzbyBib3RoIGVkZ2VzIGFyZSB3aXJlZCBhbmQgZWFjaCByZS1yZWFkcyB0aGUgY3VycmVudCBzdGF0ZSByYXRoZXIgdGhhbiBhc3N1bWluZyB0aGUgb3RoZXIgaGFzXG4gKiBhbHJlYWR5IGhhcHBlbmVkLlxuICovXG5cbmltcG9ydCB0eXBlIHsgQXBwIH0gZnJvbSAnb2JzaWRpYW4nO1xuaW1wb3J0IHR5cGUgeyBQcm9taXNhYmxlIH0gZnJvbSAndHlwZS1mZXN0JztcblxuaW1wb3J0IHsgaW52b2tlQXN5bmNTYWZlbHkgfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1saWIvYXN5bmMnO1xuaW1wb3J0IHsgbm9ybWFsaXplT3B0aW9uYWxQcm9wZXJ0aWVzIH0gZnJvbSAnQG1uYW91bW92L3R5cGVzY3JpcHQtbGliL29iamVjdC11dGlscyc7XG5cbmltcG9ydCB0eXBlIHtcbiAgUGx1Z2luQXBpQ29udHJhY3QsXG4gIFBsdWdpbkFwaVJlZixcbiAgV2F0Y2hQbHVnaW5BcGlQYXJhbXNcbn0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1hcGkudHMnO1xuaW1wb3J0IHR5cGUgeyBTZXR0aW5nc01pZ3JhdGlvbkFwaSB9IGZyb20gJy4uL3BsdWdpbi9zZXR0aW5ncy1taWdyYXRpb24tYXBpLnRzJztcbmltcG9ydCB0eXBlIHsgUGx1Z2luU2V0dGluZ3NDb21wb25lbnRCYXNlIH0gZnJvbSAnLi9wbHVnaW4tc2V0dGluZ3MtY29tcG9uZW50LnRzJztcblxuaW1wb3J0IHsgd2F0Y2hQbHVnaW5BcGkgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWFwaS50cyc7XG5pbXBvcnQgeyByZWdpc3RlckFzeW5jRXZlbnQgfSBmcm9tICcuL2FzeW5jLWV2ZW50cy1jb21wb25lbnQudHMnO1xuaW1wb3J0IHsgQ29tcG9uZW50RXggfSBmcm9tICcuL2NvbXBvbmVudC1leC50cyc7XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3IgdGhlIHtAbGluayBTZXR0aW5nc01pZ3JhdGlvbkNvbXBvbmVudH0gY29uc3RydWN0b3IuXG4gKlxuICogQHR5cGVQYXJhbSBUTWlncmF0YWJsZVNldHRpbmdzIC0gVGhlIHNldHRpbmdzIHRoaXMgcGx1Z2luIG1heSBoYW5kIG92ZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2V0dGluZ3NNaWdyYXRpb25Db21wb25lbnRDb25zdHJ1Y3RvclBhcmFtczxUTWlncmF0YWJsZVNldHRpbmdzIGV4dGVuZHMgb2JqZWN0PiB7XG4gIC8qKlxuICAgKiBUaGUgc2VtdmVyIHJhbmdlIG9mIGNvbnRyYWN0IHZlcnNpb25zIHRoaXMgcGx1Z2luIGNvbXBpbGVkIGFnYWluc3QsIGUuZy4gYCdeMSdgLlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBFdmFsdWF0ZWQgYnkgYGNvbXBhcmUtdmVyc2lvbnNgLCB3aGljaCBkb2VzIE5PVCBhY2NlcHQgYSBiYXJlIGAqYC4gU3BlbGwgXCJhbnkgdmVyc2lvblwiIGFzIGAnPj0wLjAuMCdgLlxuICAgKi9cbiAgcmVhZG9ubHkgYXBpVmVyc2lvblJhbmdlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICByZWFkb25seSBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIGNvbnRyYWN0IHRoaXMgcGx1Z2luIGV4cGVjdHMgb2YgdGhlIHByb3ZpZGVyLCB3aGljaCB3aW5zIG92ZXIgdGhlIHByb3ZpZGVyJ3Mgb3duIHdoZW4gc3VwcGxpZWQuXG4gICAqXG4gICAqIFdvcnRoIHN1cHBseWluZywgYW5kIHdvcnRoIGtlZXBpbmcgTkFSUk9XLiBBIG1pZ3JhdGlvbiB1c3VhbGx5IG5lZWRzIG9uZSBtZXRob2QgdGhhdCBoYXMgZXhpc3RlZCBzaW5jZSB0aGVcbiAgICogcHJvdmlkZXIncyBmaXJzdCBjb250cmFjdCB2ZXJzaW9uLCB3aGlsZSB0aGUgc2FtZSBwbHVnaW4gbWF5IHJlYWQgb3RoZXIgcGFydHMgb2YgdGhhdCBBUEkgdGhyb3VnaCBhIG11Y2hcbiAgICogbmV3ZXIgb25lLiBEZWNsYXJpbmcgdGhlIHdpZGVyIGV4cGVjdGF0aW9uIGhlcmUgd291bGQgcmVmdXNlIHRvIG9mZmVyIHRoZSBtaWdyYXRpb24gdG8gYSB1c2VyIG9uIGFuIG9sZGVyXG4gICAqIHByb3ZpZGVyIFx1MjAxNCB3aGljaCBpcyBwcmVjaXNlbHkgdGhlIHVzZXIgd2hvIHN0aWxsIGhhcyBzZXR0aW5ncyB0byBtaWdyYXRlLlxuICAgKi9cbiAgcmVhZG9ubHkgY29udHJhY3Q/OiBQbHVnaW5BcGlDb250cmFjdDtcblxuICAvKipcbiAgICogUmVhZHMgdGhlIHZhbHVlcyBjdXJyZW50bHkgd2FpdGluZyB0byBiZSBoYW5kZWQgb3Zlci5cbiAgICpcbiAgICogQ2FsbGVkIGFmcmVzaCBvbiBldmVyeSBlZGdlIHJhdGhlciB0aGFuIG9uY2UsIHNvIGFuIGltcGxlbWVudGF0aW9uIHNpbXBseSByZWFkcyBpdHMgcGx1Z2luJ3Mgc2V0dGluZ3MuXG4gICAqIFJldHVybiBgbnVsbGAgd2hlbiB0aGVyZSBpcyBub3RoaW5nIHBlbmRpbmcgXHUyMDE0IGFmdGVyIGEgbWlncmF0aW9uIGhhcyBiZWVuIGFwcGxpZWQsIG9yIG9uIGEgdmF1bHQgdGhhdCBuZXZlclxuICAgKiBoYWQgdGhlc2Ugc2V0dGluZ3MgY29uZmlndXJlZC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbHVlcyB0byBwcm9wb3NlLCBvciBgbnVsbGAgd2hlbiB0aGVyZSBpcyBub3RoaW5nIHRvIG9mZmVyLlxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0UHJvcG9zZWRTZXR0aW5nczogKCkgPT4gbnVsbCB8IFRNaWdyYXRhYmxlU2V0dGluZ3M7XG5cbiAgLyoqXG4gICAqIFRoZSBzZXR0aW5ncyBjb21wb25lbnQgb2YgdGhlIHBsdWdpbiBtYWtpbmcgdGhlIHByb3Bvc2FsLlxuICAgKlxuICAgKiBUYWtlbiBhcyBhIHdob2xlIGNvbXBvbmVudCByYXRoZXIgdGhhbiBhcyBhIGJhcmUgXCJyZWFkeVwiIGZsYWcgc28gdGhlIGhvc3QgY2Fubm90IGZvcmdldCB0byB3aXJlIHRoZSB3YWl0OlxuICAgKiB3aGF0ZXZlciB7QGxpbmsgZ2V0UHJvcG9zZWRTZXR0aW5nc30gcmVhZHMgaXMgbWVhbmluZ2xlc3MgdW50aWwgdGhpcyBjb21wb25lbnQgaGFzIHJlYWQgYGRhdGEuanNvbmAuXG4gICAqL1xuICByZWFkb25seSBwbHVnaW5TZXR0aW5nc0NvbXBvbmVudDogUGx1Z2luU2V0dGluZ3NDb21wb25lbnRCYXNlPG9iamVjdD47XG5cbiAgLyoqXG4gICAqIFRoZSBgbWFuaWZlc3QuaWRgIG9mIHRoZSBwbHVnaW4gdGhhdCBvd25zIHRoZXNlIHNldHRpbmdzIG5vdywgYXMgbGlzdGVkIGluIE9ic2lkaWFuJ3MgY29tbXVuaXR5IHBsdWdpblxuICAgKiByZWdpc3RyeS5cbiAgICovXG4gIHJlYWRvbmx5IHByb3ZpZGVyUGx1Z2luSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogUmVjb3JkcyB0aGF0IHRoZSBwZW5kaW5nIHZhbHVlcyBoYXZlIGJlZW4gaGFuZGVkIG92ZXIsIHNvIHRoZSBvZmZlciBpcyBub3QgbWFkZSBhZ2Fpbi5cbiAgICpcbiAgICogQ2FsbGVkIE9OTFkgd2hlbiB0aGUgdXNlciBhY3R1YWxseSBhcHBsaWVkIHRoZSBtaWdyYXRpb24uXG4gICAqXG4gICAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgb25jZSB0aGUgcmV0aXJlbWVudCBpcyBwZXJzaXN0ZWQuXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIEFuIGltcGxlbWVudGF0aW9uIG11c3QgUEVSU0lTVCB0aGUgcmV0aXJlbWVudCBcdTIwMTQgYHBsdWdpblNldHRpbmdzQ29tcG9uZW50LmVkaXRBbmRTYXZlKFx1MjAyNilgLCBub3RcbiAgICogYHNldFByb3BlcnR5KFx1MjAyNilgLiBUaGUgbGF0dGVyIG9ubHkgZWRpdHMgdGhlIGluLW1lbW9yeSBzdGF0ZSwgc28gdGhlIHJldGlyZW1lbnQgaXMgZm9yZ290dGVuIG9uIHRoZSBuZXh0XG4gICAqIHJlbG9hZCBhbmQgdGhlIG1pZ3JhdGlvbiBpcyBvZmZlcmVkIGFnYWluIGZvcmV2ZXIuXG4gICAqL1xuICByZWFkb25seSByZXRpcmVQcm9wb3NlZFNldHRpbmdzOiAoKSA9PiBQcm9taXNhYmxlPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBUaGUgYG1hbmlmZXN0LmlkYCBvZiB0aGUgcGx1Z2luIG1ha2luZyB0aGUgcHJvcG9zYWwsIHNvIHRoZSBwcm92aWRlcidzIGRpYWxvZyBjYW4gc2F5IHdob3NlIHNldHRpbmdzIHRoZXNlXG4gICAqIGFyZS5cbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZVBsdWdpbklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogT2ZmZXJzIHNldHRpbmdzIHRoaXMgcGx1Z2luIHVzZWQgdG8gb3duIHRvIHRoZSBwbHVnaW4gdGhhdCBvd25zIHRoZW0gbm93LlxuICpcbiAqIEB0eXBlUGFyYW0gVE1pZ3JhdGFibGVTZXR0aW5ncyAtIFRoZSBzZXR0aW5ncyB0aGlzIHBsdWdpbiBtYXkgaGFuZCBvdmVyLlxuICovXG5leHBvcnQgY2xhc3MgU2V0dGluZ3NNaWdyYXRpb25Db21wb25lbnQ8VE1pZ3JhdGFibGVTZXR0aW5ncyBleHRlbmRzIG9iamVjdD4gZXh0ZW5kcyBDb21wb25lbnRFeCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYXBpVmVyc2lvblJhbmdlOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgYXBwOiBBcHA7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29udHJhY3Q6IFBsdWdpbkFwaUNvbnRyYWN0IHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIHJlYWRvbmx5IGdldFByb3Bvc2VkU2V0dGluZ3M6ICgpID0+IG51bGwgfCBUTWlncmF0YWJsZVNldHRpbmdzO1xuICBwcml2YXRlIGlzUHJvcG9zaW5nID0gZmFsc2U7XG4gIHByaXZhdGUgcmVhZG9ubHkgcGx1Z2luU2V0dGluZ3NDb21wb25lbnQ6IFBsdWdpblNldHRpbmdzQ29tcG9uZW50QmFzZTxvYmplY3Q+O1xuICBwcml2YXRlIHJlYWRvbmx5IHByb3ZpZGVyUGx1Z2luSWQ6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSByZXRpcmVQcm9wb3NlZFNldHRpbmdzOiAoKSA9PiBQcm9taXNhYmxlPHZvaWQ+O1xuICBwcml2YXRlIHJlYWRvbmx5IHNvdXJjZVBsdWdpbklkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2Yge0BsaW5rIFNldHRpbmdzTWlncmF0aW9uQ29tcG9uZW50fS5cbiAgICpcbiAgICogQHBhcmFtIHBhcmFtcyAtIFRoZSBjb25zdHJ1Y3RvciBwYXJhbWV0ZXJzLlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKHBhcmFtczogU2V0dGluZ3NNaWdyYXRpb25Db21wb25lbnRDb25zdHJ1Y3RvclBhcmFtczxUTWlncmF0YWJsZVNldHRpbmdzPikge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5hcGlWZXJzaW9uUmFuZ2UgPSBwYXJhbXMuYXBpVmVyc2lvblJhbmdlO1xuICAgIHRoaXMuYXBwID0gcGFyYW1zLmFwcDtcbiAgICB0aGlzLmNvbnRyYWN0ID0gcGFyYW1zLmNvbnRyYWN0O1xuICAgIHRoaXMuZ2V0UHJvcG9zZWRTZXR0aW5ncyA9IHBhcmFtcy5nZXRQcm9wb3NlZFNldHRpbmdzO1xuICAgIHRoaXMucGx1Z2luU2V0dGluZ3NDb21wb25lbnQgPSBwYXJhbXMucGx1Z2luU2V0dGluZ3NDb21wb25lbnQ7XG4gICAgdGhpcy5wcm92aWRlclBsdWdpbklkID0gcGFyYW1zLnByb3ZpZGVyUGx1Z2luSWQ7XG4gICAgdGhpcy5yZXRpcmVQcm9wb3NlZFNldHRpbmdzID0gcGFyYW1zLnJldGlyZVByb3Bvc2VkU2V0dGluZ3M7XG4gICAgdGhpcy5zb3VyY2VQbHVnaW5JZCA9IHBhcmFtcy5zb3VyY2VQbHVnaW5JZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkcyB0aGUgY29tcG9uZW50LCB3aXJpbmcgYm90aCBlZGdlcyB0aGF0IGNhbiBtYWtlIGFuIG9mZmVyIHBvc3NpYmxlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIG9ubG9hZCgpOiB2b2lkIHtcbiAgICAvLyBOb3RoaW5nIGlzIGdhdGVkIG9uIHRoZSBwZW5kaW5nIHZhbHVlcyBIRVJFLiBUaGUgc2V0dGluZ3MgY29tcG9uZW50IGlzIGEgc2libGluZyB3aG9zZSBvd24gbG9hZCBpcyBzdGlsbFxuICAgIC8vIGluIGZsaWdodCBhdCB0aGlzIHBvaW50LCBzbyBpdCBzdGlsbCBob2xkcyB0aGUgREVGQVVMVFMgXHUyMDE0IHJlYWRpbmcgdGhlIHBlbmRpbmcgdmFsdWVzIG5vdyB3b3VsZCBzZWVcbiAgICAvLyBub3RoaW5nIG9uIGV4YWN0bHkgdGhlIHZhdWx0cyB0aGF0IGhhdmUgc29tZXRoaW5nLCByZWdpc3RlciBubyB3YXRjaCwgYW5kIGxvc2UgdGhlIG1pZ3JhdGlvbiBmb3IgZ29vZC5cbiAgICAvLyBCb3RoIGVkZ2VzIGFyZSB3aXJlZCBpbnN0ZWFkLCBhbmQgYHByb3Bvc2VgIHJlLXJlYWRzIHRoZSB2YWx1ZXMgZWFjaCB0aW1lIGl0IHJ1bnMuXG4gICAgY29uc3QgcmVmID0gd2F0Y2hQbHVnaW5BcGk8U2V0dGluZ3NNaWdyYXRpb25BcGk8VE1pZ3JhdGFibGVTZXR0aW5ncz4+KG5vcm1hbGl6ZU9wdGlvbmFsUHJvcGVydGllczxXYXRjaFBsdWdpbkFwaVBhcmFtcz4oe1xuICAgICAgYXBpVmVyc2lvblJhbmdlOiB0aGlzLmFwaVZlcnNpb25SYW5nZSxcbiAgICAgIGFwcDogdGhpcy5hcHAsXG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBjb250cmFjdDogdGhpcy5jb250cmFjdCxcbiAgICAgIHBsdWdpbklkOiB0aGlzLnByb3ZpZGVyUGx1Z2luSWRcbiAgICB9KSk7XG5cbiAgICAvLyBEcml2ZW4gYnkgdGhlIHJlZidzIG93biBldmVudCByYXRoZXIgdGhhbiBieSBgd2hlbkF2YWlsYWJsZSgpYCwgZGVsaWJlcmF0ZWx5LiBUaGF0IHdhaXQgYmxvY2tzIGZvciB0ZW5cbiAgICAvLyBzZWNvbmRzIGFuZCB0aGVuIHRocm93cyB3aGVuIHRoZSBwcm92aWRlciBpcyBzaW1wbHkgbm90IGluc3RhbGxlZCwgd2hpY2ggd291bGQgc3RhbGwgdGhpcyBwbHVnaW4ncyBsb2FkXG4gICAgLy8gZm9yIGV2ZXJ5IHVzZXIgd2hvIGRlY2xpbmVzIHRoZSBzdWdnZXN0aW9uLiBXYXRjaGluZyBjb3N0cyBub3RoaW5nIHdoaWxlIHRoZSBwcm92aWRlciBpcyBhYnNlbnQgYW5kXG4gICAgLy8gb2ZmZXJzIHRoZSBtaWdyYXRpb24gdGhlIG1vbWVudCBpdCBhcHBlYXJzIFx1MjAxNCBpbmNsdWRpbmcgcmlnaHQgYWZ0ZXIgdGhlIHVzZXIgaW5zdGFsbHMgaXQgZnJvbSB0aGVcbiAgICAvLyBzdWdnZXN0aW9uIGJhbm5lci5cbiAgICByZWdpc3RlckFzeW5jRXZlbnQoXG4gICAgICB0aGlzLFxuICAgICAgcmVmLm9uKCdjaGFuZ2UnLCAoKSA9PiB7XG4gICAgICAgIHRoaXMuaGFuZGxlQ2hhbmdlKHJlZik7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICAvLyBUaGUgc2Vjb25kIGVkZ2U6IHRoaXMgcGx1Z2luJ3Mgb3duIHNldHRpbmdzIGFycml2aW5nIGZyb20gZGlzay4gSXQgbWF5IGZpcmUgYmVmb3JlIG9yIGFmdGVyIHRoZSBmaXJzdC5cbiAgICByZWdpc3RlckFzeW5jRXZlbnQoXG4gICAgICB0aGlzLFxuICAgICAgdGhpcy5wbHVnaW5TZXR0aW5nc0NvbXBvbmVudC5vbignbG9hZFNldHRpbmdzJywgKCkgPT4ge1xuICAgICAgICB0aGlzLmhhbmRsZUNoYW5nZShyZWYpO1xuICAgICAgfSlcbiAgICApO1xuXG4gICAgdGhpcy5oYW5kbGVDaGFuZ2UocmVmKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlQ2hhbmdlKHJlZjogUGx1Z2luQXBpUmVmPFNldHRpbmdzTWlncmF0aW9uQXBpPFRNaWdyYXRhYmxlU2V0dGluZ3M+Pik6IHZvaWQge1xuICAgIGludm9rZUFzeW5jU2FmZWx5KGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IHRoaXMucHJvcG9zZShyZWYudmFsdWUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBwcm9wb3NlKGFwaTogbnVsbCB8IFNldHRpbmdzTWlncmF0aW9uQXBpPFRNaWdyYXRhYmxlU2V0dGluZ3M+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcHJvcG9zZWRTZXR0aW5ncyA9IHRoaXMuZ2V0UHJvcG9zZWRTZXR0aW5ncygpO1xuICAgIGlmICghYXBpIHx8IHRoaXMuaXNQcm9wb3NpbmcgfHwgcHJvcG9zZWRTZXR0aW5ncyA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIEJvdGggZWRnZXMgY2FuIGZpcmUgd2hpbGUgdGhlIHByb3ZpZGVyJ3MgZGlhbG9nIGlzIG9wZW4sIGFuZCBlYWNoIHdvdWxkIHJhaXNlIGEgc2Vjb25kIG9uZS5cbiAgICB0aGlzLmlzUHJvcG9zaW5nID0gdHJ1ZTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgYXBpLm1pZ3JhdGVTZXR0aW5ncyh7XG4gICAgICAgIHByb3Bvc2VkU2V0dGluZ3MsXG4gICAgICAgIHNvdXJjZVBsdWdpbklkOiB0aGlzLnNvdXJjZVBsdWdpbklkXG4gICAgICB9KTtcblxuICAgICAgLy8gQSBjYW5jZWwgaXMgbm90IGFuIGFuc3dlciwgc28gdGhlIHZhbHVlcyBzdGF5IHBlbmRpbmcgYW5kIHRoZSBvZmZlciBjb21lcyBiYWNrIFx1MjAxNCBvbiB0aGUgbmV4dCBsb2FkLCBvclxuICAgICAgLy8gYXMgc29vbiBhcyB0aGUgcHJvdmlkZXIgcmVsb2Fkcy4gT25seSBhbiBhcHBsaWVkIG1pZ3JhdGlvbiByZXRpcmVzIHRoZW0uXG4gICAgICBpZiAocmVzdWx0LmlzQXBwbGllZCkge1xuICAgICAgICBhd2FpdCB0aGlzLnJldGlyZVByb3Bvc2VkU2V0dGluZ3MoKTtcbiAgICAgIH1cbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5pc1Byb3Bvc2luZyA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQXVCQSxtQkFBa0M7QUFDbEMsMEJBQTRDO0FBVTVDLHdCQUErQjtBQUMvQixvQ0FBbUM7QUFDbkMsMEJBQTRCO0FBa0ZyQixNQUFNLG1DQUF1RSxnQ0FBWTtBQUFBLEVBQzdFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDVCxjQUFjO0FBQUEsRUFDTDtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9WLFlBQVksUUFBMEU7QUFDM0YsVUFBTTtBQUNOLFNBQUssa0JBQWtCLE9BQU87QUFDOUIsU0FBSyxNQUFNLE9BQU87QUFDbEIsU0FBSyxXQUFXLE9BQU87QUFDdkIsU0FBSyxzQkFBc0IsT0FBTztBQUNsQyxTQUFLLDBCQUEwQixPQUFPO0FBQ3RDLFNBQUssbUJBQW1CLE9BQU87QUFDL0IsU0FBSyx5QkFBeUIsT0FBTztBQUNyQyxTQUFLLGlCQUFpQixPQUFPO0FBQUEsRUFDL0I7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtnQixTQUFlO0FBSzdCLFVBQU0sVUFBTSxzQ0FBMEQsaURBQWtEO0FBQUEsTUFDdEgsaUJBQWlCLEtBQUs7QUFBQSxNQUN0QixLQUFLLEtBQUs7QUFBQSxNQUNWLFdBQVc7QUFBQSxNQUNYLFVBQVUsS0FBSztBQUFBLE1BQ2YsVUFBVSxLQUFLO0FBQUEsSUFDakIsQ0FBQyxDQUFDO0FBT0Y7QUFBQSxNQUNFO0FBQUEsTUFDQSxJQUFJLEdBQUcsVUFBVSxNQUFNO0FBQ3JCLGFBQUssYUFBYSxHQUFHO0FBQUEsTUFDdkIsQ0FBQztBQUFBLElBQ0g7QUFHQTtBQUFBLE1BQ0U7QUFBQSxNQUNBLEtBQUssd0JBQXdCLEdBQUcsZ0JBQWdCLE1BQU07QUFDcEQsYUFBSyxhQUFhLEdBQUc7QUFBQSxNQUN2QixDQUFDO0FBQUEsSUFDSDtBQUVBLFNBQUssYUFBYSxHQUFHO0FBQUEsRUFDdkI7QUFBQSxFQUVRLGFBQWEsS0FBb0U7QUFDdkYsd0NBQWtCLFlBQVk7QUFDNUIsWUFBTSxLQUFLLFFBQVEsSUFBSSxLQUFLO0FBQUEsSUFDOUIsQ0FBQztBQUFBLEVBQ0g7QUFBQSxFQUVBLE1BQWMsUUFBUSxLQUFzRTtBQUMxRixVQUFNLG1CQUFtQixLQUFLLG9CQUFvQjtBQUNsRCxRQUFJLENBQUMsT0FBTyxLQUFLLGVBQWUscUJBQXFCLE1BQU07QUFDekQ7QUFBQSxJQUNGO0FBR0EsU0FBSyxjQUFjO0FBQ25CLFFBQUk7QUFDRixZQUFNLFNBQVMsTUFBTSxJQUFJLGdCQUFnQjtBQUFBLFFBQ3ZDO0FBQUEsUUFDQSxnQkFBZ0IsS0FBSztBQUFBLE1BQ3ZCLENBQUM7QUFJRCxVQUFJLE9BQU8sV0FBVztBQUNwQixjQUFNLEtBQUssdUJBQXVCO0FBQUEsTUFDcEM7QUFBQSxJQUNGLFVBQUU7QUFDQSxXQUFLLGNBQWM7QUFBQSxJQUNyQjtBQUFBLEVBQ0Y7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/// <reference path="../library.d.cts" />
|
|
2
|
+
/**
|
|
3
|
+
* @file
|
|
4
|
+
*
|
|
5
|
+
* Component that offers settings this plugin used to own to the plugin that owns them now, once, through
|
|
6
|
+
* that plugin's public API.
|
|
7
|
+
*
|
|
8
|
+
* This is the other half of {@link components/plugin-suggestion-component!PluginSuggestionComponent}.
|
|
9
|
+
* The suggestion asks the user to install the plugin that took a feature over; this carries the settings they
|
|
10
|
+
* had configured for it across, so taking the suggestion does not mean re-entering everything by hand.
|
|
11
|
+
*
|
|
12
|
+
* A proposing plugin never writes into another plugin's `data.json`. It PROPOSES: the other plugin owns the
|
|
13
|
+
* settings, so it owns the dialog, and the user approves, edits or declines. Only an applied migration retires
|
|
14
|
+
* the pending values.
|
|
15
|
+
*
|
|
16
|
+
* The offer is made whenever it CAN succeed, which needs two independent things to have happened — the
|
|
17
|
+
* provider's API being available, and this plugin's own settings having arrived from disk. Either can land
|
|
18
|
+
* first, so both edges are wired and each re-reads the current state rather than assuming the other has
|
|
19
|
+
* already happened.
|
|
20
|
+
*/
|
|
21
|
+
import type { App } from 'obsidian' with { 'resolution-mode': 'import' };
|
|
22
|
+
import type { Promisable } from 'type-fest' with { 'resolution-mode': 'import' };
|
|
23
|
+
import type { PluginApiContract } from '../plugin/plugin-api.cjs';
|
|
24
|
+
import type { PluginSettingsComponentBase } from './plugin-settings-component.cjs';
|
|
25
|
+
import { ComponentEx } from './component-ex.cjs';
|
|
26
|
+
/**
|
|
27
|
+
* Parameters for the {@link SettingsMigrationComponent} constructor.
|
|
28
|
+
*
|
|
29
|
+
* @typeParam TMigratableSettings - The settings this plugin may hand over.
|
|
30
|
+
*/
|
|
31
|
+
export interface SettingsMigrationComponentConstructorParams<TMigratableSettings extends object> {
|
|
32
|
+
/**
|
|
33
|
+
* The semver range of contract versions this plugin compiled against, e.g. `'^1'`.
|
|
34
|
+
*
|
|
35
|
+
* @remarks
|
|
36
|
+
* Evaluated by `compare-versions`, which does NOT accept a bare `*`. Spell "any version" as `'>=0.0.0'`.
|
|
37
|
+
*/
|
|
38
|
+
readonly apiVersionRange: string;
|
|
39
|
+
/**
|
|
40
|
+
* The Obsidian app instance.
|
|
41
|
+
*/
|
|
42
|
+
readonly app: App;
|
|
43
|
+
/**
|
|
44
|
+
* The contract this plugin expects of the provider, which wins over the provider's own when supplied.
|
|
45
|
+
*
|
|
46
|
+
* Worth supplying, and worth keeping NARROW. A migration usually needs one method that has existed since the
|
|
47
|
+
* provider's first contract version, while the same plugin may read other parts of that API through a much
|
|
48
|
+
* newer one. Declaring the wider expectation here would refuse to offer the migration to a user on an older
|
|
49
|
+
* provider — which is precisely the user who still has settings to migrate.
|
|
50
|
+
*/
|
|
51
|
+
readonly contract?: PluginApiContract;
|
|
52
|
+
/**
|
|
53
|
+
* Reads the values currently waiting to be handed over.
|
|
54
|
+
*
|
|
55
|
+
* Called afresh on every edge rather than once, so an implementation simply reads its plugin's settings.
|
|
56
|
+
* Return `null` when there is nothing pending — after a migration has been applied, or on a vault that never
|
|
57
|
+
* had these settings configured.
|
|
58
|
+
*
|
|
59
|
+
* @returns The values to propose, or `null` when there is nothing to offer.
|
|
60
|
+
*/
|
|
61
|
+
readonly getProposedSettings: () => null | TMigratableSettings;
|
|
62
|
+
/**
|
|
63
|
+
* The settings component of the plugin making the proposal.
|
|
64
|
+
*
|
|
65
|
+
* Taken as a whole component rather than as a bare "ready" flag so the host cannot forget to wire the wait:
|
|
66
|
+
* whatever {@link getProposedSettings} reads is meaningless until this component has read `data.json`.
|
|
67
|
+
*/
|
|
68
|
+
readonly pluginSettingsComponent: PluginSettingsComponentBase<object>;
|
|
69
|
+
/**
|
|
70
|
+
* The `manifest.id` of the plugin that owns these settings now, as listed in Obsidian's community plugin
|
|
71
|
+
* registry.
|
|
72
|
+
*/
|
|
73
|
+
readonly providerPluginId: string;
|
|
74
|
+
/**
|
|
75
|
+
* Records that the pending values have been handed over, so the offer is not made again.
|
|
76
|
+
*
|
|
77
|
+
* Called ONLY when the user actually applied the migration.
|
|
78
|
+
*
|
|
79
|
+
* @returns A {@link Promise} that resolves once the retirement is persisted.
|
|
80
|
+
*
|
|
81
|
+
* @remarks
|
|
82
|
+
* An implementation must PERSIST the retirement — `pluginSettingsComponent.editAndSave(…)`, not
|
|
83
|
+
* `setProperty(…)`. The latter only edits the in-memory state, so the retirement is forgotten on the next
|
|
84
|
+
* reload and the migration is offered again forever.
|
|
85
|
+
*/
|
|
86
|
+
readonly retireProposedSettings: () => Promisable<void>;
|
|
87
|
+
/**
|
|
88
|
+
* The `manifest.id` of the plugin making the proposal, so the provider's dialog can say whose settings these
|
|
89
|
+
* are.
|
|
90
|
+
*/
|
|
91
|
+
readonly sourcePluginId: string;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Offers settings this plugin used to own to the plugin that owns them now.
|
|
95
|
+
*
|
|
96
|
+
* @typeParam TMigratableSettings - The settings this plugin may hand over.
|
|
97
|
+
*/
|
|
98
|
+
export declare class SettingsMigrationComponent<TMigratableSettings extends object> extends ComponentEx {
|
|
99
|
+
private readonly apiVersionRange;
|
|
100
|
+
private readonly app;
|
|
101
|
+
private readonly contract;
|
|
102
|
+
private readonly getProposedSettings;
|
|
103
|
+
private isProposing;
|
|
104
|
+
private readonly pluginSettingsComponent;
|
|
105
|
+
private readonly providerPluginId;
|
|
106
|
+
private readonly retireProposedSettings;
|
|
107
|
+
private readonly sourcePluginId;
|
|
108
|
+
/**
|
|
109
|
+
* Creates an instance of {@link SettingsMigrationComponent}.
|
|
110
|
+
*
|
|
111
|
+
* @param params - The constructor parameters.
|
|
112
|
+
*/
|
|
113
|
+
constructor(params: SettingsMigrationComponentConstructorParams<TMigratableSettings>);
|
|
114
|
+
/**
|
|
115
|
+
* Loads the component, wiring both edges that can make an offer possible.
|
|
116
|
+
*/
|
|
117
|
+
onload(): void;
|
|
118
|
+
private handleChange;
|
|
119
|
+
private propose;
|
|
120
|
+
}
|
|
@@ -0,0 +1,248 @@
|
|
|
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 () {
|
|
7
|
+
function ensureDisposeSymbols(symbolConstructor = Symbol) {
|
|
8
|
+
symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
|
|
9
|
+
symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
function ensureBrowserProcess() {
|
|
13
|
+
const browserProcess = {
|
|
14
|
+
browser: true,
|
|
15
|
+
cwd() {
|
|
16
|
+
return "/";
|
|
17
|
+
},
|
|
18
|
+
env: {},
|
|
19
|
+
platform: "android"
|
|
20
|
+
};
|
|
21
|
+
const existingProcess = globalThis.process;
|
|
22
|
+
if (!existingProcess) {
|
|
23
|
+
globalThis.process = browserProcess;
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
if (existingProcess.versions?.node) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const existingProcessRecord = existingProcess;
|
|
30
|
+
for (const [key, value] of Object.entries(browserProcess)) {
|
|
31
|
+
existingProcessRecord[key] ??= value;
|
|
32
|
+
}
|
|
33
|
+
existingProcessRecord["browser"] = true;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
function keepName($unknown) {
|
|
37
|
+
return $unknown;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
(function initCjs() {
|
|
41
|
+
const globalThisRecord = globalThis;
|
|
42
|
+
ensureDisposeSymbols();
|
|
43
|
+
globalThisRecord["__name"] ??= keepName;
|
|
44
|
+
globalThisRecord["__extractDefault"] ??= extractDefault;
|
|
45
|
+
ensureBrowserProcess();
|
|
46
|
+
function extractDefault(module) {
|
|
47
|
+
return module && module.__esModule && "default" in module ? module.default : module;
|
|
48
|
+
}
|
|
49
|
+
})();
|
|
50
|
+
})();
|
|
51
|
+
(function patchObsidianRequire() {
|
|
52
|
+
const originalRequire = require;
|
|
53
|
+
if (!originalRequire || originalRequire.__isPatched) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
require = Object.assign(
|
|
57
|
+
(id) => requirePatched(id),
|
|
58
|
+
originalRequire,
|
|
59
|
+
{
|
|
60
|
+
__isPatched: true
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
function extractDefault(module) {
|
|
64
|
+
return module && module.__esModule && "default" in module ? module.default : module;
|
|
65
|
+
}
|
|
66
|
+
const OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
|
|
67
|
+
"@codemirror/autocomplete",
|
|
68
|
+
"@codemirror/collab",
|
|
69
|
+
"@codemirror/commands",
|
|
70
|
+
"@codemirror/language",
|
|
71
|
+
"@codemirror/lint",
|
|
72
|
+
"@codemirror/search",
|
|
73
|
+
"@codemirror/state",
|
|
74
|
+
"@codemirror/text",
|
|
75
|
+
"@codemirror/view",
|
|
76
|
+
"@lezer/common",
|
|
77
|
+
"@lezer/highlight",
|
|
78
|
+
"@lezer/lr",
|
|
79
|
+
"obsidian"
|
|
80
|
+
]);
|
|
81
|
+
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
|
|
82
|
+
"@codemirror/closebrackets",
|
|
83
|
+
"@codemirror/comment",
|
|
84
|
+
"@codemirror/fold",
|
|
85
|
+
"@codemirror/gutter",
|
|
86
|
+
"@codemirror/highlight",
|
|
87
|
+
"@codemirror/history",
|
|
88
|
+
"@codemirror/matchbrackets",
|
|
89
|
+
"@codemirror/panel",
|
|
90
|
+
"@codemirror/rangeset",
|
|
91
|
+
"@codemirror/rectangular-selection",
|
|
92
|
+
"@codemirror/stream-parser",
|
|
93
|
+
"@codemirror/tooltip"
|
|
94
|
+
]);
|
|
95
|
+
function requirePatched(id) {
|
|
96
|
+
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
|
|
97
|
+
return originalRequire?.(id);
|
|
98
|
+
}
|
|
99
|
+
if (globalThis.app.isMobile) {
|
|
100
|
+
if (id === "process" || id === "node:process") {
|
|
101
|
+
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
|
|
102
|
+
return process;
|
|
103
|
+
}
|
|
104
|
+
} else {
|
|
105
|
+
const module = originalRequire?.(id);
|
|
106
|
+
if (module) {
|
|
107
|
+
return extractDefault(module);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
|
|
111
|
+
return {};
|
|
112
|
+
}
|
|
113
|
+
})();
|
|
114
|
+
|
|
115
|
+
"use strict";
|
|
116
|
+
var __defProp = Object.defineProperty;
|
|
117
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
118
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
119
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
120
|
+
var __export = (target, all) => {
|
|
121
|
+
for (var name in all)
|
|
122
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
123
|
+
};
|
|
124
|
+
var __copyProps = (to, from, except, desc) => {
|
|
125
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
126
|
+
for (let key of __getOwnPropNames(from))
|
|
127
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
128
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
129
|
+
}
|
|
130
|
+
return to;
|
|
131
|
+
};
|
|
132
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
133
|
+
var syntax_highlighting_component_exports = {};
|
|
134
|
+
__export(syntax_highlighting_component_exports, {
|
|
135
|
+
SyntaxHighlightingComponent: () => SyntaxHighlightingComponent
|
|
136
|
+
});
|
|
137
|
+
module.exports = __toCommonJS(syntax_highlighting_component_exports);
|
|
138
|
+
var import_error = require('@mnaoumov/typescript-lib/error');
|
|
139
|
+
var import_implementations = require('@obsidian-typings/obsidian-public-latest/implementations');
|
|
140
|
+
var import_component_ex = require('./component-ex.cjs');
|
|
141
|
+
class SyntaxHighlightingComponent extends import_component_ex.ComponentEx {
|
|
142
|
+
/**
|
|
143
|
+
* Registers a fenced code block language, highlighting it in the editor and, optionally, in reading view.
|
|
144
|
+
*
|
|
145
|
+
* @param params - The parameters for registering the language.
|
|
146
|
+
* @returns A {@link Promise} that resolves when the language is registered.
|
|
147
|
+
*
|
|
148
|
+
* @example
|
|
149
|
+
* ```ts
|
|
150
|
+
* await component.registerCodeBlockLanguage({
|
|
151
|
+
* editorMode: 'text/typescript',
|
|
152
|
+
* language: 'my-language',
|
|
153
|
+
* prismGrammar: 'typescript'
|
|
154
|
+
* });
|
|
155
|
+
* ```
|
|
156
|
+
*/
|
|
157
|
+
async registerCodeBlockLanguage(params) {
|
|
158
|
+
const {
|
|
159
|
+
editorMode,
|
|
160
|
+
language,
|
|
161
|
+
prismGrammar
|
|
162
|
+
} = params;
|
|
163
|
+
this.ensureLoaded();
|
|
164
|
+
if (prismGrammar !== void 0) {
|
|
165
|
+
await this.registerPrismLanguage({
|
|
166
|
+
grammar: prismGrammar,
|
|
167
|
+
language
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
this.ensureLoaded();
|
|
171
|
+
const previousModeFactory = window.CodeMirror.modes[language];
|
|
172
|
+
window.CodeMirror.defineMode(language, (config) => window.CodeMirror.getMode(config, editorMode));
|
|
173
|
+
this.register(() => {
|
|
174
|
+
if (previousModeFactory !== void 0) {
|
|
175
|
+
window.CodeMirror.modes[language] = previousModeFactory;
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
delete window.CodeMirror.modes[language];
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Registers a Prism language, highlighting it everywhere Prism renders code — reading view and the
|
|
183
|
+
* {@link CodeHighlighterComponent} settings field.
|
|
184
|
+
*
|
|
185
|
+
* @param params - The parameters for registering the language.
|
|
186
|
+
* @returns A {@link Promise} that resolves when the language is registered.
|
|
187
|
+
*
|
|
188
|
+
* @example
|
|
189
|
+
* ```ts
|
|
190
|
+
* await component.registerPrismLanguage({
|
|
191
|
+
* grammar: {
|
|
192
|
+
* keyword: /\bfoo\b/
|
|
193
|
+
* },
|
|
194
|
+
* language: 'my-language'
|
|
195
|
+
* });
|
|
196
|
+
* ```
|
|
197
|
+
*/
|
|
198
|
+
async registerPrismLanguage(params) {
|
|
199
|
+
const {
|
|
200
|
+
grammar,
|
|
201
|
+
language
|
|
202
|
+
} = params;
|
|
203
|
+
this.ensureLoaded();
|
|
204
|
+
const prism = await (0, import_implementations.loadPrism)();
|
|
205
|
+
this.ensureLoaded();
|
|
206
|
+
const previousGrammar = prism.languages[language];
|
|
207
|
+
prism.languages[language] = this.resolveGrammar(prism, grammar);
|
|
208
|
+
this.register(() => {
|
|
209
|
+
if (previousGrammar !== void 0) {
|
|
210
|
+
prism.languages[language] = previousGrammar;
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
delete prism.languages[language];
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Returns the grammar of an already registered Prism language.
|
|
218
|
+
*
|
|
219
|
+
* @param prism - The loaded Prism module.
|
|
220
|
+
* @param language - The language to look up.
|
|
221
|
+
* @returns The grammar of the language.
|
|
222
|
+
* @throws An {@link Error} if the language is not registered.
|
|
223
|
+
*/
|
|
224
|
+
requirePrismLanguage(prism, language) {
|
|
225
|
+
return prism.languages[language] ?? (0, import_error.throwExpression)(new Error(`Prism language "${language}" is not registered.`));
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Resolves a grammar source into the grammar to register.
|
|
229
|
+
*
|
|
230
|
+
* @param prism - The loaded Prism module.
|
|
231
|
+
* @param grammarSource - The grammar source to resolve.
|
|
232
|
+
* @returns The resolved grammar.
|
|
233
|
+
*/
|
|
234
|
+
resolveGrammar(prism, grammarSource) {
|
|
235
|
+
if (typeof grammarSource === "string") {
|
|
236
|
+
return this.requirePrismLanguage(prism, grammarSource);
|
|
237
|
+
}
|
|
238
|
+
return typeof grammarSource === "function" ? grammarSource({
|
|
239
|
+
prism,
|
|
240
|
+
requirePrismLanguage: (language) => this.requirePrismLanguage(prism, language)
|
|
241
|
+
}) : grammarSource;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
245
|
+
0 && (module.exports = {
|
|
246
|
+
SyntaxHighlightingComponent
|
|
247
|
+
});
|
|
248
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc3ludGF4LWhpZ2hsaWdodGluZy1jb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBDb250YWlucyBjbGFzcyB7QGxpbmsgU3ludGF4SGlnaGxpZ2h0aW5nQ29tcG9uZW50fSB0aGF0IHJlZ2lzdGVycyBzeW50YXggaGlnaGxpZ2h0aW5nIGxhbmd1YWdlcy5cbiAqXG4gKiBPYnNpZGlhbiBoaWdobGlnaHRzIGNvZGUgaW4gdHdvIGluZGVwZW5kZW50IHBsYWNlcywgdGhyb3VnaCB0d28gc2VwYXJhdGUgcmVnaXN0cmllcywgYW5kIGEgcGx1Z2luIGFkZGluZ1xuICogaXRzIG93biBsYW5ndWFnZSB1c3VhbGx5IGhhcyB0byB0b3VjaCBib3RoOlxuICpcbiAqIC0gKipQcmlzbSoqIChgcHJpc20ubGFuZ3VhZ2VzW2xhbmd1YWdlXWApIGhpZ2hsaWdodHMgY29kZSBpbiByZWFkaW5nIHZpZXcgYW5kIGluIGV2ZXJ5IGA8cHJlPjxjb2RlPmAgdGhlXG4gKiAgIGxpYnJhcnkgcmVuZGVycyBcdTIwMTQgaW5jbHVkaW5nIHRoZSB7QGxpbmsgQ29kZUhpZ2hsaWdodGVyQ29tcG9uZW50fSBzZXR0aW5ncyBmaWVsZC5cbiAqIC0gKipUaGUgQ29kZU1pcnJvciA1IG1vZGUgcmVnaXN0cnkqKiAoYHdpbmRvdy5Db2RlTWlycm9yLm1vZGVzW2xhbmd1YWdlXWApIGhpZ2hsaWdodHMgYSBmZW5jZWQgY29kZSBibG9ja1xuICogICBpbnNpZGUgdGhlIGVkaXRvci5cbiAqXG4gKiBUaGUgQ29kZU1pcnJvciA1IGhhbGYgbG9va3MgbGlrZSBsZWdhY3kgdGhhdCBzaG91bGQgYmUgbWlncmF0ZWQgdG8gQ29kZU1pcnJvciA2LiAqKkl0IGlzIG5vdCoqIFx1MjAxNCB2ZXJpZmllZFxuICogYWdhaW5zdCB0aGUgT2JzaWRpYW4gMS4xMy40IHJ1bnRpbWU6XG4gKlxuICogLSBPYnNpZGlhbidzIG93biBDb2RlTWlycm9yIDYgZWRpdG9yIGxhbmd1YWdlIGlzIGEgYnJpZGdlZCBDb2RlTWlycm9yIDUgbW9kZTpcbiAqICAgYFN0cmVhbUxhbmd1YWdlLmRlZmluZShDb2RlTWlycm9yLmdldE1vZGUoe30sIHsgbmFtZTogJ2h5cGVybWQnIH0pKWAuXG4gKiAtIE9ic2lkaWFuIHJlZ2lzdGVycyB0aGF0IGBoeXBlcm1kYCBtb2RlIHRocm91Z2ggYHdpbmRvdy5Db2RlTWlycm9yLmRlZmluZU1vZGVgIHdpdGhcbiAqICAgYGZlbmNlZENvZGVCbG9ja0hpZ2hsaWdodGluZzogdHJ1ZWAsIGFuZCB0aGF0IG9wdGlvbiByZXNvbHZlcyBlYWNoIGZlbmNlJ3MgbGFuZ3VhZ2UgdGhyb3VnaCB0aGVcbiAqICAgKipDb2RlTWlycm9yIDUgbW9kZSByZWdpc3RyeSoqLlxuICogLSBUaGVyZSBpcyBubyBwdWJsaWMgb3IgaW50ZXJuYWwgQ29kZU1pcnJvciA2IGxhbmd1YWdlLXJlZ2lzdHJhdGlvbiBBUEkgZm9yIGZlbmNlcy5cbiAqXG4gKiBTbyBgd2luZG93LkNvZGVNaXJyb3IuZGVmaW5lTW9kZWAgaXMgdGhlIHNhbmN0aW9uZWQgZXh0ZW5zaW9uIHBvaW50LCBub3QgbGVnYWN5IGRlYnQuIERvIG5vdCByZW9wZW4gdGhpc1xuICogYXMgYSBtaWdyYXRpb24uXG4gKlxuICogVGVhcmRvd24gUkVNT1ZFUyB0aGUgbW9kZSByYXRoZXIgdGhhbiByZWRlZmluaW5nIGl0IHRvIGBudWxsYC4gUGx1Z2lucyBwcmVkYXRpbmcgdGhpcyBjb21wb25lbnQgcmVkZWZpbmVkXG4gKiB0aGUgbW9kZSB0byBgbnVsbGAgb24gdW5sb2FkLCBiZWNhdXNlIGl0IHdhcyB1bmNsZWFyIHdoZXRoZXIgQ29kZU1pcnJvcidzIGBnZXRNb2RlYCBuZWVkcyB0aGUgZW50cnkgdG9cbiAqIHN0YXkgcHJlc2VudC4gSXQgZG9lcyBub3QgXHUyMDE0IHZlcmlmaWVkIGFnYWluc3QgYSBsaXZlIE9ic2lkaWFuIDEuMTMuNCBieVxuICogYHN5bnRheC1oaWdobGlnaHRpbmctY29tcG9uZW50Lm9ic2lkaWFuLmludGVncmF0aW9uLnRlc3QudHNgOiBhZnRlciB0aGUgZW50cnkgaXMgZGVsZXRlZCwgdGhlIGZlbmNlXG4gKiByZW5kZXJzIGl0cyB0ZXh0IHdpdGggbm8gZXJyb3IgYW5kIGRyb3BzIGJhY2sgdG8gdGhlIGV4YWN0IHRva2VuIGNvdW50IGl0IGhhZCBiZWZvcmUgdGhlIGxhbmd1YWdlIHdhc1xuICogZXZlciByZWdpc3RlcmVkLlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgR3JhbW1hcixcbiAgUHJpc21Nb2R1bGVcbn0gZnJvbSAnQG9ic2lkaWFuLXR5cGluZ3Mvb2JzaWRpYW4tcHVibGljLWxhdGVzdCc7XG5cbmltcG9ydCB7IHRocm93RXhwcmVzc2lvbiB9IGZyb20gJ0BtbmFvdW1vdi90eXBlc2NyaXB0LWxpYi9lcnJvcic7XG5pbXBvcnQgeyBsb2FkUHJpc20gfSBmcm9tICdAb2JzaWRpYW4tdHlwaW5ncy9vYnNpZGlhbi1wdWJsaWMtbGF0ZXN0L2ltcGxlbWVudGF0aW9ucyc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYENvZGVIaWdobGlnaHRlckNvbXBvbmVudGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IENvZGVIaWdobGlnaHRlckNvbXBvbmVudCB9IGZyb20gJy4uL3NldHRpbmctY29tcG9uZW50cy9jb2RlLWhpZ2hsaWdodGVyLWNvbXBvbmVudC50cyc7XG5cbmltcG9ydCB7IENvbXBvbmVudEV4IH0gZnJvbSAnLi9jb21wb25lbnQtZXgudHMnO1xuXG4vKipcbiAqIFRoZSBsb2FkZWQgUHJpc20gbW9kdWxlLCBoYW5kZWQgdG8gYSBncmFtbWFyIGZhY3RvcnkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3ludGF4SGlnaGxpZ2h0aW5nQ29tcG9uZW50R3JhbW1hckZhY3RvcnlQYXJhbXMge1xuICAvKipcbiAgICogVGhlIGxvYWRlZCBQcmlzbSBtb2R1bGUuXG4gICAqL1xuICByZWFkb25seSBwcmlzbTogUHJpc21Nb2R1bGU7XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGdyYW1tYXIgb2YgYW4gYWxyZWFkeSByZWdpc3RlcmVkIFByaXNtIGxhbmd1YWdlLCBmb3IgbmVzdGluZyBpbnRvIHRoZSBidWlsdCBncmFtbWFyLlxuICAgKlxuICAgKiBAcGFyYW0gbGFuZ3VhZ2UgLSBUaGUgbGFuZ3VhZ2UgdG8gbG9vayB1cC5cbiAgICogQHJldHVybnMgVGhlIGdyYW1tYXIgb2YgdGhlIGxhbmd1YWdlLlxuICAgKiBAdGhyb3dzIEFuIHtAbGluayBFcnJvcn0gaWYgdGhlIGxhbmd1YWdlIGlzIG5vdCByZWdpc3RlcmVkLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWlyZVByaXNtTGFuZ3VhZ2U6IChsYW5ndWFnZTogc3RyaW5nKSA9PiBHcmFtbWFyO1xufVxuXG4vKipcbiAqIEEgZ3JhbW1hciwgdGhlIG5hbWUgb2YgYW4gYWxyZWFkeSByZWdpc3RlcmVkIGxhbmd1YWdlIHRvIGFsaWFzLCBvciBhIGZhY3RvcnkgdGhhdCBidWlsZHMgdGhlIGdyYW1tYXIgZnJvbVxuICogdGhlIGxvYWRlZCBQcmlzbSBtb2R1bGUuXG4gKi9cbmV4cG9ydCB0eXBlIFN5bnRheEhpZ2hsaWdodGluZ0NvbXBvbmVudEdyYW1tYXJTb3VyY2UgPSAoKHBhcmFtczogU3ludGF4SGlnaGxpZ2h0aW5nQ29tcG9uZW50R3JhbW1hckZhY3RvcnlQYXJhbXMpID0+IEdyYW1tYXIpIHwgR3JhbW1hciB8IHN0cmluZztcblxuLyoqXG4gKiBQYXJhbWV0ZXJzIGZvciB7QGxpbmsgU3ludGF4SGlnaGxpZ2h0aW5nQ29tcG9uZW50LnJlZ2lzdGVyQ29kZUJsb2NrTGFuZ3VhZ2V9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN5bnRheEhpZ2hsaWdodGluZ0NvbXBvbmVudFJlZ2lzdGVyQ29kZUJsb2NrTGFuZ3VhZ2VQYXJhbXMge1xuICAvKipcbiAgICogVGhlIENvZGVNaXJyb3IgNSBtb2RlIG5hbWUgb3IgTUlNRSB0eXBlIHRoZSBlZGl0b3IgaGlnaGxpZ2h0cyB0aGUgZmVuY2UgYXMsIGUuZy4gYHRleHQvdHlwZXNjcmlwdGAuXG4gICAqL1xuICByZWFkb25seSBlZGl0b3JNb2RlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBmZW5jZSBsYW5ndWFnZSwgZS5nLiB0aGUgYGZvb2AgaW4gYSBgIGBgYGZvbyBgIGNvZGUgYmxvY2suXG4gICAqL1xuICByZWFkb25seSBsYW5ndWFnZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZ3JhbW1hciBoaWdobGlnaHRpbmcgdGhlIGZlbmNlIGluIHJlYWRpbmcgdmlldy4gT21pdCB3aGVuIHRoZSBmZW5jZSBpcyByZXBsYWNlZCBpbiByZWFkaW5nIHZpZXcgXHUyMDE0XG4gICAqIGUuZy4gYSBmZW5jZSByZW5kZXJlZCBhcyBhIGJ1dHRvbi5cbiAgICovXG4gIHJlYWRvbmx5IHByaXNtR3JhbW1hcj86IFN5bnRheEhpZ2hsaWdodGluZ0NvbXBvbmVudEdyYW1tYXJTb3VyY2UgfCB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIFN5bnRheEhpZ2hsaWdodGluZ0NvbXBvbmVudC5yZWdpc3RlclByaXNtTGFuZ3VhZ2V9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN5bnRheEhpZ2hsaWdodGluZ0NvbXBvbmVudFJlZ2lzdGVyUHJpc21MYW5ndWFnZVBhcmFtcyB7XG4gIC8qKlxuICAgKiBUaGUgZ3JhbW1hciB0byByZWdpc3Rlci5cbiAgICovXG4gIHJlYWRvbmx5IGdyYW1tYXI6IFN5bnRheEhpZ2hsaWdodGluZ0NvbXBvbmVudEdyYW1tYXJTb3VyY2U7XG5cbiAgLyoqXG4gICAqIFRoZSBsYW5ndWFnZSB0byByZWdpc3RlciB0aGUgZ3JhbW1hciBhcy5cbiAgICovXG4gIHJlYWRvbmx5IGxhbmd1YWdlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQSBjb21wb25lbnQgdGhhdCByZWdpc3RlcnMgYW5kIHVucmVnaXN0ZXJzIHN5bnRheCBoaWdobGlnaHRpbmcgbGFuZ3VhZ2VzLlxuICpcbiAqIEByZW1hcmtzXG4gKiBFdmVyeSByZWdpc3RyYXRpb24gaXMgdW5kb25lIHdoZW4gdGhlIGNvbXBvbmVudCBpcyB1bmxvYWRlZDogdGhlIHByZXZpb3VzIGVudHJ5IGlzIHJlc3RvcmVkIGlmIHRoZVxuICogbGFuZ3VhZ2Ugd2FzIGFscmVhZHkgcmVnaXN0ZXJlZCwgb3RoZXJ3aXNlIHRoZSBlbnRyeSBpcyByZW1vdmVkLlxuICovXG5leHBvcnQgY2xhc3MgU3ludGF4SGlnaGxpZ2h0aW5nQ29tcG9uZW50IGV4dGVuZHMgQ29tcG9uZW50RXgge1xuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgZmVuY2VkIGNvZGUgYmxvY2sgbGFuZ3VhZ2UsIGhpZ2hsaWdodGluZyBpdCBpbiB0aGUgZWRpdG9yIGFuZCwgb3B0aW9uYWxseSwgaW4gcmVhZGluZyB2aWV3LlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgZm9yIHJlZ2lzdGVyaW5nIHRoZSBsYW5ndWFnZS5cbiAgICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBsYW5ndWFnZSBpcyByZWdpc3RlcmVkLlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGB0c1xuICAgKiBhd2FpdCBjb21wb25lbnQucmVnaXN0ZXJDb2RlQmxvY2tMYW5ndWFnZSh7XG4gICAqICAgZWRpdG9yTW9kZTogJ3RleHQvdHlwZXNjcmlwdCcsXG4gICAqICAgbGFuZ3VhZ2U6ICdteS1sYW5ndWFnZScsXG4gICAqICAgcHJpc21HcmFtbWFyOiAndHlwZXNjcmlwdCdcbiAgICogfSk7XG4gICAqIGBgYFxuICAgKi9cbiAgcHVibGljIGFzeW5jIHJlZ2lzdGVyQ29kZUJsb2NrTGFuZ3VhZ2UocGFyYW1zOiBTeW50YXhIaWdobGlnaHRpbmdDb21wb25lbnRSZWdpc3RlckNvZGVCbG9ja0xhbmd1YWdlUGFyYW1zKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qge1xuICAgICAgZWRpdG9yTW9kZSxcbiAgICAgIGxhbmd1YWdlLFxuICAgICAgcHJpc21HcmFtbWFyXG4gICAgfSA9IHBhcmFtcztcblxuICAgIHRoaXMuZW5zdXJlTG9hZGVkKCk7XG5cbiAgICBpZiAocHJpc21HcmFtbWFyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGF3YWl0IHRoaXMucmVnaXN0ZXJQcmlzbUxhbmd1YWdlKHtcbiAgICAgICAgZ3JhbW1hcjogcHJpc21HcmFtbWFyLFxuICAgICAgICBsYW5ndWFnZVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5lbnN1cmVMb2FkZWQoKTtcblxuICAgIGNvbnN0IHByZXZpb3VzTW9kZUZhY3RvcnkgPSB3aW5kb3cuQ29kZU1pcnJvci5tb2Rlc1tsYW5ndWFnZV07XG4gICAgd2luZG93LkNvZGVNaXJyb3IuZGVmaW5lTW9kZShsYW5ndWFnZSwgKGNvbmZpZykgPT4gd2luZG93LkNvZGVNaXJyb3IuZ2V0TW9kZShjb25maWcsIGVkaXRvck1vZGUpKTtcblxuICAgIHRoaXMucmVnaXN0ZXIoKCkgPT4ge1xuICAgICAgaWYgKHByZXZpb3VzTW9kZUZhY3RvcnkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB3aW5kb3cuQ29kZU1pcnJvci5tb2Rlc1tsYW5ndWFnZV0gPSBwcmV2aW91c01vZGVGYWN0b3J5O1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZHluYW1pYy1kZWxldGUgLS0gVGhlIGxhbmd1YWdlIGlzIG9ubHkga25vd24gYXQgcnVudGltZS5cbiAgICAgIGRlbGV0ZSB3aW5kb3cuQ29kZU1pcnJvci5tb2Rlc1tsYW5ndWFnZV07XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgUHJpc20gbGFuZ3VhZ2UsIGhpZ2hsaWdodGluZyBpdCBldmVyeXdoZXJlIFByaXNtIHJlbmRlcnMgY29kZSBcdTIwMTQgcmVhZGluZyB2aWV3IGFuZCB0aGVcbiAgICoge0BsaW5rIENvZGVIaWdobGlnaHRlckNvbXBvbmVudH0gc2V0dGluZ3MgZmllbGQuXG4gICAqXG4gICAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgcGFyYW1ldGVycyBmb3IgcmVnaXN0ZXJpbmcgdGhlIGxhbmd1YWdlLlxuICAgKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGxhbmd1YWdlIGlzIHJlZ2lzdGVyZWQuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHRzXG4gICAqIGF3YWl0IGNvbXBvbmVudC5yZWdpc3RlclByaXNtTGFuZ3VhZ2Uoe1xuICAgKiAgIGdyYW1tYXI6IHtcbiAgICogICAgIGtleXdvcmQ6IC9cXGJmb29cXGIvXG4gICAqICAgfSxcbiAgICogICBsYW5ndWFnZTogJ215LWxhbmd1YWdlJ1xuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgcmVnaXN0ZXJQcmlzbUxhbmd1YWdlKHBhcmFtczogU3ludGF4SGlnaGxpZ2h0aW5nQ29tcG9uZW50UmVnaXN0ZXJQcmlzbUxhbmd1YWdlUGFyYW1zKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qge1xuICAgICAgZ3JhbW1hcixcbiAgICAgIGxhbmd1YWdlXG4gICAgfSA9IHBhcmFtcztcblxuICAgIHRoaXMuZW5zdXJlTG9hZGVkKCk7XG5cbiAgICBjb25zdCBwcmlzbSA9IGF3YWl0IGxvYWRQcmlzbSgpO1xuXG4gICAgLy8gVGhlIGNvbXBvbmVudCBtaWdodCBoYXZlIGJlZW4gdW5sb2FkZWQgd2hpbGUgUHJpc20gd2FzIGxvYWRpbmcuXG4gICAgdGhpcy5lbnN1cmVMb2FkZWQoKTtcblxuICAgIGNvbnN0IHByZXZpb3VzR3JhbW1hciA9IHByaXNtLmxhbmd1YWdlc1tsYW5ndWFnZV07XG4gICAgcHJpc20ubGFuZ3VhZ2VzW2xhbmd1YWdlXSA9IHRoaXMucmVzb2x2ZUdyYW1tYXIocHJpc20sIGdyYW1tYXIpO1xuXG4gICAgdGhpcy5yZWdpc3RlcigoKSA9PiB7XG4gICAgICBpZiAocHJldmlvdXNHcmFtbWFyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcHJpc20ubGFuZ3VhZ2VzW2xhbmd1YWdlXSA9IHByZXZpb3VzR3JhbW1hcjtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWR5bmFtaWMtZGVsZXRlIC0tIFRoZSBsYW5ndWFnZSBpcyBvbmx5IGtub3duIGF0IHJ1bnRpbWUuXG4gICAgICBkZWxldGUgcHJpc20ubGFuZ3VhZ2VzW2xhbmd1YWdlXTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBncmFtbWFyIG9mIGFuIGFscmVhZHkgcmVnaXN0ZXJlZCBQcmlzbSBsYW5ndWFnZS5cbiAgICpcbiAgICogQHBhcmFtIHByaXNtIC0gVGhlIGxvYWRlZCBQcmlzbSBtb2R1bGUuXG4gICAqIEBwYXJhbSBsYW5ndWFnZSAtIFRoZSBsYW5ndWFnZSB0byBsb29rIHVwLlxuICAgKiBAcmV0dXJucyBUaGUgZ3JhbW1hciBvZiB0aGUgbGFuZ3VhZ2UuXG4gICAqIEB0aHJvd3MgQW4ge0BsaW5rIEVycm9yfSBpZiB0aGUgbGFuZ3VhZ2UgaXMgbm90IHJlZ2lzdGVyZWQuXG4gICAqL1xuICBwcml2YXRlIHJlcXVpcmVQcmlzbUxhbmd1YWdlKHByaXNtOiBQcmlzbU1vZHVsZSwgbGFuZ3VhZ2U6IHN0cmluZyk6IEdyYW1tYXIge1xuICAgIHJldHVybiBwcmlzbS5sYW5ndWFnZXNbbGFuZ3VhZ2VdID8/IHRocm93RXhwcmVzc2lvbihuZXcgRXJyb3IoYFByaXNtIGxhbmd1YWdlIFwiJHtsYW5ndWFnZX1cIiBpcyBub3QgcmVnaXN0ZXJlZC5gKSk7XG4gIH1cblxuICAvKipcbiAgICogUmVzb2x2ZXMgYSBncmFtbWFyIHNvdXJjZSBpbnRvIHRoZSBncmFtbWFyIHRvIHJlZ2lzdGVyLlxuICAgKlxuICAgKiBAcGFyYW0gcHJpc20gLSBUaGUgbG9hZGVkIFByaXNtIG1vZHVsZS5cbiAgICogQHBhcmFtIGdyYW1tYXJTb3VyY2UgLSBUaGUgZ3JhbW1hciBzb3VyY2UgdG8gcmVzb2x2ZS5cbiAgICogQHJldHVybnMgVGhlIHJlc29sdmVkIGdyYW1tYXIuXG4gICAqL1xuICBwcml2YXRlIHJlc29sdmVHcmFtbWFyKHByaXNtOiBQcmlzbU1vZHVsZSwgZ3JhbW1hclNvdXJjZTogU3ludGF4SGlnaGxpZ2h0aW5nQ29tcG9uZW50R3JhbW1hclNvdXJjZSk6IEdyYW1tYXIge1xuICAgIGlmICh0eXBlb2YgZ3JhbW1hclNvdXJjZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlcXVpcmVQcmlzbUxhbmd1YWdlKHByaXNtLCBncmFtbWFyU291cmNlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHlwZW9mIGdyYW1tYXJTb3VyY2UgPT09ICdmdW5jdGlvbidcbiAgICAgID8gZ3JhbW1hclNvdXJjZSh7XG4gICAgICAgIHByaXNtLFxuICAgICAgICByZXF1aXJlUHJpc21MYW5ndWFnZTogKGxhbmd1YWdlKSA9PiB0aGlzLnJlcXVpcmVQcmlzbUxhbmd1YWdlKHByaXNtLCBsYW5ndWFnZSlcbiAgICAgIH0pXG4gICAgICA6IGdyYW1tYXJTb3VyY2U7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUF1Q0EsbUJBQWdDO0FBQ2hDLDZCQUEwQjtBQUsxQiwwQkFBNEI7QUFzRXJCLE1BQU0sb0NBQW9DLGdDQUFZO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFnQjNELE1BQWEsMEJBQTBCLFFBQW1GO0FBQ3hILFVBQU07QUFBQSxNQUNKO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxJQUNGLElBQUk7QUFFSixTQUFLLGFBQWE7QUFFbEIsUUFBSSxpQkFBaUIsUUFBVztBQUM5QixZQUFNLEtBQUssc0JBQXNCO0FBQUEsUUFDL0IsU0FBUztBQUFBLFFBQ1Q7QUFBQSxNQUNGLENBQUM7QUFBQSxJQUNIO0FBRUEsU0FBSyxhQUFhO0FBRWxCLFVBQU0sc0JBQXNCLE9BQU8sV0FBVyxNQUFNLFFBQVE7QUFDNUQsV0FBTyxXQUFXLFdBQVcsVUFBVSxDQUFDLFdBQVcsT0FBTyxXQUFXLFFBQVEsUUFBUSxVQUFVLENBQUM7QUFFaEcsU0FBSyxTQUFTLE1BQU07QUFDbEIsVUFBSSx3QkFBd0IsUUFBVztBQUNyQyxlQUFPLFdBQVcsTUFBTSxRQUFRLElBQUk7QUFDcEM7QUFBQSxNQUNGO0FBR0EsYUFBTyxPQUFPLFdBQVcsTUFBTSxRQUFRO0FBQUEsSUFDekMsQ0FBQztBQUFBLEVBQ0g7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFtQkEsTUFBYSxzQkFBc0IsUUFBK0U7QUFDaEgsVUFBTTtBQUFBLE1BQ0o7QUFBQSxNQUNBO0FBQUEsSUFDRixJQUFJO0FBRUosU0FBSyxhQUFhO0FBRWxCLFVBQU0sUUFBUSxVQUFNLGtDQUFVO0FBRzlCLFNBQUssYUFBYTtBQUVsQixVQUFNLGtCQUFrQixNQUFNLFVBQVUsUUFBUTtBQUNoRCxVQUFNLFVBQVUsUUFBUSxJQUFJLEtBQUssZUFBZSxPQUFPLE9BQU87QUFFOUQsU0FBSyxTQUFTLE1BQU07QUFDbEIsVUFBSSxvQkFBb0IsUUFBVztBQUNqQyxjQUFNLFVBQVUsUUFBUSxJQUFJO0FBQzVCO0FBQUEsTUFDRjtBQUdBLGFBQU8sTUFBTSxVQUFVLFFBQVE7QUFBQSxJQUNqQyxDQUFDO0FBQUEsRUFDSDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVVRLHFCQUFxQixPQUFvQixVQUEyQjtBQUMxRSxXQUFPLE1BQU0sVUFBVSxRQUFRLFNBQUssOEJBQWdCLElBQUksTUFBTSxtQkFBbUIsUUFBUSxzQkFBc0IsQ0FBQztBQUFBLEVBQ2xIO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVNRLGVBQWUsT0FBb0IsZUFBa0U7QUFDM0csUUFBSSxPQUFPLGtCQUFrQixVQUFVO0FBQ3JDLGFBQU8sS0FBSyxxQkFBcUIsT0FBTyxhQUFhO0FBQUEsSUFDdkQ7QUFFQSxXQUFPLE9BQU8sa0JBQWtCLGFBQzVCLGNBQWM7QUFBQSxNQUNkO0FBQUEsTUFDQSxzQkFBc0IsQ0FBQyxhQUFhLEtBQUsscUJBQXFCLE9BQU8sUUFBUTtBQUFBLElBQy9FLENBQUMsSUFDQztBQUFBLEVBQ047QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
|