@mnaoumov/obsidian-lib 1.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/README.md +9 -1
- package/dist/lib/cjs/__merged.cjs +40 -64
- package/dist/lib/cjs/active-file-provider.cjs +40 -64
- package/dist/lib/cjs/app.cjs +40 -64
- package/dist/lib/cjs/async-with-notice.cjs +40 -64
- package/dist/lib/cjs/attachment-path.cjs +40 -64
- package/dist/lib/cjs/attachment-unit-folder.cjs +40 -64
- package/dist/lib/cjs/backlink-index.cjs +41 -65
- package/dist/lib/cjs/backlink.cjs +40 -64
- package/dist/lib/cjs/bases-view-registrar.cjs +40 -64
- package/dist/lib/cjs/callout.cjs +40 -64
- package/dist/lib/cjs/canvas.cjs +40 -64
- package/dist/lib/cjs/case-insensitive-file-index.cjs +40 -64
- package/dist/lib/cjs/code-block-markdown-information.cjs +40 -64
- package/dist/lib/cjs/code-block-reg-exp.cjs +40 -64
- package/dist/lib/cjs/codemirror/index.cjs +40 -64
- package/dist/lib/cjs/codemirror/state-field-spec.cjs +40 -64
- package/dist/lib/cjs/command-handlers/abstract-file-command-handler.cjs +40 -64
- package/dist/lib/cjs/command-handlers/command-handler-component.cjs +40 -64
- package/dist/lib/cjs/command-handlers/command-handler.cjs +40 -64
- package/dist/lib/cjs/command-handlers/editor-command-handler.cjs +40 -64
- package/dist/lib/cjs/command-handlers/file-command-handler.cjs +40 -64
- package/dist/lib/cjs/command-handlers/folder-command-handler.cjs +40 -64
- package/dist/lib/cjs/command-handlers/global-command-handler.cjs +40 -64
- package/dist/lib/cjs/command-handlers/index.cjs +40 -64
- package/dist/lib/cjs/command-handlers/open-demo-vault-command-handler.cjs +40 -64
- package/dist/lib/cjs/command-handlers/open-settings-command-handler.cjs +40 -64
- package/dist/lib/cjs/command-handlers/unlock-active-note-command-handler.cjs +40 -64
- package/dist/lib/cjs/command-registrar.cjs +40 -64
- package/dist/lib/cjs/community-plugins.cjs +40 -64
- package/dist/lib/cjs/components/abort-signal-component.cjs +40 -64
- package/dist/lib/cjs/components/all-windows-event-component.cjs +40 -64
- package/dist/lib/cjs/components/async-error-handler-component.cjs +40 -64
- package/dist/lib/cjs/components/async-events-component.cjs +40 -64
- package/dist/lib/cjs/components/case-insensitive-file-index-component.cjs +40 -64
- package/dist/lib/cjs/components/component-ex.cjs +41 -65
- package/dist/lib/cjs/components/console-debug-component.cjs +40 -64
- package/dist/lib/cjs/components/core-plugin-toggle-component.cjs +40 -64
- package/dist/lib/cjs/components/disposable-component.cjs +40 -64
- package/dist/lib/cjs/components/embed-extensions-component.cjs +40 -64
- package/dist/lib/cjs/components/generate-markdown-link-default-params-component.cjs +40 -64
- package/dist/lib/cjs/components/index.cjs +40 -64
- package/dist/lib/cjs/components/layout-ready-component.cjs +40 -64
- package/dist/lib/cjs/components/menu-event-registrar-component.cjs +40 -64
- package/dist/lib/cjs/components/monkey-around-component.cjs +40 -64
- package/dist/lib/cjs/components/notebook-navigator-menu-event-registrar-component.cjs +40 -64
- package/dist/lib/cjs/components/plugin-context-component.cjs +40 -64
- package/dist/lib/cjs/components/plugin-gate-component.cjs +41 -65
- package/dist/lib/cjs/components/plugin-notice-component.cjs +40 -64
- package/dist/lib/cjs/components/plugin-settings-component.cjs +41 -65
- package/dist/lib/cjs/components/plugin-settings-tab-component.cjs +40 -64
- package/dist/lib/cjs/components/plugin-suggestion-component.cjs +40 -64
- package/dist/lib/cjs/components/pointer-position-component.cjs +40 -64
- package/dist/lib/cjs/components/registry-component.cjs +40 -64
- package/dist/lib/cjs/components/release-notes-component.cjs +40 -64
- package/dist/lib/cjs/components/rename-delete-handler-component.cjs +40 -64
- package/dist/lib/cjs/components/rmdir-guard-component.cjs +40 -64
- package/dist/lib/cjs/components/settings-migration-component.cjs +40 -64
- package/dist/lib/cjs/components/syntax-highlighting-component.cjs +40 -64
- package/dist/lib/cjs/components/templates-language-component.cjs +40 -64
- package/dist/lib/cjs/constructors/get-dom-events-handlers-constructor.cjs +40 -64
- package/dist/lib/cjs/constructors/index.cjs +40 -64
- package/dist/lib/cjs/css-class.cjs +40 -64
- package/dist/lib/cjs/data-handler.cjs +40 -64
- package/dist/lib/cjs/dataview-link.cjs +40 -64
- package/dist/lib/cjs/dataview.cjs +40 -64
- package/dist/lib/cjs/debug.cjs +40 -64
- package/dist/lib/cjs/demo-vault-helper-settings.cjs +40 -64
- package/dist/lib/cjs/demo-vault-helper.cjs +40 -64
- package/dist/lib/cjs/demo-vault-naming.cjs +40 -64
- package/dist/lib/cjs/desktop-demo-vault-opener.cjs +40 -64
- package/dist/lib/cjs/desktop-trusted-input.cjs +40 -64
- package/dist/lib/cjs/editor-extension-registrar.cjs +40 -64
- package/dist/lib/cjs/editor-suggest-registrar.cjs +40 -64
- package/dist/lib/cjs/editor.cjs +40 -64
- package/dist/lib/cjs/events.cjs +40 -64
- package/dist/lib/cjs/extensions-registrar.cjs +40 -64
- package/dist/lib/cjs/file-change.cjs +40 -64
- package/dist/lib/cjs/file-explorer.cjs +40 -64
- package/dist/lib/cjs/file-manager.cjs +40 -64
- package/dist/lib/cjs/file-system.cjs +40 -64
- package/dist/lib/cjs/folder-note.cjs +40 -64
- package/dist/lib/cjs/frontmatter-formatting.cjs +41 -65
- package/dist/lib/cjs/frontmatter-link-cache-with-offsets.cjs +40 -64
- package/dist/lib/cjs/frontmatter.cjs +40 -64
- package/dist/lib/cjs/generated-during-build.cjs +41 -65
- package/dist/lib/cjs/generated-during-build.d.cts +8 -2
- package/dist/lib/cjs/hover-link-source-registrar.cjs +40 -64
- package/dist/lib/cjs/html-element.cjs +40 -64
- package/dist/lib/cjs/i18n/custom-type-options.cjs +40 -64
- package/dist/lib/cjs/i18n/default-translations.cjs +40 -64
- package/dist/lib/cjs/i18n/i18n.cjs +40 -64
- package/dist/lib/cjs/i18n/index.cjs +40 -64
- package/dist/lib/cjs/i18n/locales/en.cjs +40 -64
- package/dist/lib/cjs/i18n/locales/index.cjs +40 -64
- package/dist/lib/cjs/i18n/locales/translations-map.cjs +40 -64
- package/dist/lib/cjs/index.cjs +40 -64
- package/dist/lib/cjs/is-in-obsidian.cjs +40 -64
- package/dist/lib/cjs/library-styles.cjs +40 -64
- package/dist/lib/cjs/library.cjs +40 -64
- package/dist/lib/cjs/link-name.cjs +40 -64
- package/dist/lib/cjs/link-update-progress.cjs +40 -64
- package/dist/lib/cjs/link.cjs +40 -64
- package/dist/lib/cjs/logger.cjs +40 -64
- package/dist/lib/cjs/loop.cjs +40 -64
- package/dist/lib/cjs/markdown-code-block-processor-registrar.cjs +40 -64
- package/dist/lib/cjs/markdown-code-block-processor.cjs +40 -64
- package/dist/lib/cjs/markdown-post-processor-registrar.cjs +40 -64
- package/dist/lib/cjs/markdown-view.cjs +40 -64
- package/dist/lib/cjs/markdown.cjs +40 -64
- package/dist/lib/cjs/menu-event-registrar.cjs +40 -64
- package/dist/lib/cjs/metadata-cache.cjs +40 -64
- package/dist/lib/cjs/mobile-trusted-input.cjs +40 -64
- package/dist/lib/cjs/modals/alert.cjs +40 -64
- package/dist/lib/cjs/modals/confirm.cjs +40 -64
- package/dist/lib/cjs/modals/index.cjs +40 -64
- package/dist/lib/cjs/modals/minimizable-modal.cjs +40 -64
- package/dist/lib/cjs/modals/modal-command-builder.cjs +40 -64
- package/dist/lib/cjs/modals/modal.cjs +40 -64
- package/dist/lib/cjs/modals/prompt.cjs +40 -64
- package/dist/lib/cjs/modals/select-item.cjs +40 -64
- package/dist/lib/cjs/modals/select-option.cjs +40 -64
- package/dist/lib/cjs/modals/suggest-modal-command-builder.cjs +40 -64
- package/dist/lib/cjs/note-priority.cjs +41 -65
- package/dist/lib/cjs/notebook-navigator.cjs +40 -64
- package/dist/lib/cjs/obsidian-dev-utils-state.cjs +40 -64
- package/dist/lib/cjs/obsidian-protocol-handler-registrar.cjs +40 -64
- package/dist/lib/cjs/obsidian-settings.cjs +40 -64
- package/dist/lib/cjs/parse-link.cjs +40 -64
- package/dist/lib/cjs/path-settings.cjs +40 -64
- package/dist/lib/cjs/pdf.cjs +40 -64
- package/dist/lib/cjs/plugin/index.cjs +40 -64
- package/dist/lib/cjs/plugin/plugin-api.cjs +40 -64
- package/dist/lib/cjs/plugin/plugin-context.cjs +40 -64
- package/dist/lib/cjs/plugin/plugin-event-source.cjs +40 -64
- package/dist/lib/cjs/plugin/plugin-install-state.cjs +40 -64
- package/dist/lib/cjs/plugin/plugin-lifecycle-events.cjs +40 -64
- package/dist/lib/cjs/plugin/plugin-settings-tab.cjs +41 -65
- package/dist/lib/cjs/plugin/plugin.cjs +41 -65
- package/dist/lib/cjs/plugin/settings-migration-api.cjs +40 -64
- package/dist/lib/cjs/plugin-cli-handler-registrar.cjs +40 -64
- package/dist/lib/cjs/popovers/field-popover.cjs +40 -64
- package/dist/lib/cjs/popovers/index.cjs +40 -64
- package/dist/lib/cjs/popovers/popover-anchor.cjs +40 -64
- package/dist/lib/cjs/popovers/popover.cjs +40 -64
- package/dist/lib/cjs/property-entry.cjs +40 -64
- package/dist/lib/cjs/queue.cjs +40 -64
- package/dist/lib/cjs/react/app-context.cjs +40 -64
- package/dist/lib/cjs/react/index.cjs +40 -64
- package/dist/lib/cjs/reference.cjs +40 -64
- package/dist/lib/cjs/resource-lock.cjs +40 -64
- package/dist/lib/cjs/resource-url.cjs +40 -64
- package/dist/lib/cjs/ribbon-icon-registrar.cjs +40 -64
- package/dist/lib/cjs/setting-components/checkbox-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/code-highlighter-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/date-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/date-time-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/email-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/file-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/index.cjs +40 -64
- package/dist/lib/cjs/setting-components/month-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/multiple-dropdown-component.cjs +41 -65
- package/dist/lib/cjs/setting-components/multiple-email-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/multiple-file-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/multiple-text-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/number-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/password-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/setting-component-wrapper.cjs +40 -64
- package/dist/lib/cjs/setting-components/telephone-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/text-based-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/time-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/tri-state-checkbox-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/typed-dropdown-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/typed-multiple-dropdown-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/typed-range-text-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/typed-text-component.cjs +41 -65
- package/dist/lib/cjs/setting-components/url-component.cjs +40 -64
- package/dist/lib/cjs/setting-components/validator-component.cjs +41 -65
- package/dist/lib/cjs/setting-components/value-component-with-change-tracking.cjs +40 -64
- package/dist/lib/cjs/setting-components/week-component.cjs +40 -64
- package/dist/lib/cjs/setting-ex.cjs +40 -64
- package/dist/lib/cjs/setting-group-ex.cjs +40 -64
- package/dist/lib/cjs/status-bar-item-registrar.cjs +40 -64
- package/dist/lib/cjs/templater.cjs +40 -64
- package/dist/lib/cjs/transformers/duration-transformer.cjs +40 -64
- package/dist/lib/cjs/transformers/index.cjs +40 -64
- package/dist/lib/cjs/trusted-input.cjs +40 -64
- package/dist/lib/cjs/validation.cjs +40 -64
- package/dist/lib/cjs/vault-delete.cjs +40 -64
- package/dist/lib/cjs/vault-transaction.cjs +40 -64
- package/dist/lib/cjs/vault.cjs +41 -65
- package/dist/lib/cjs/view-registrar.cjs +40 -64
- package/dist/lib/cjs/workspace.cjs +40 -64
- package/dist/lib/esm/__merged.mjs +6 -14
- package/dist/lib/esm/active-file-provider.mjs +6 -14
- package/dist/lib/esm/app.mjs +6 -14
- package/dist/lib/esm/async-with-notice.mjs +6 -14
- package/dist/lib/esm/attachment-path.mjs +6 -14
- package/dist/lib/esm/attachment-unit-folder.mjs +6 -14
- package/dist/lib/esm/backlink-index.mjs +6 -14
- package/dist/lib/esm/backlink.mjs +6 -14
- package/dist/lib/esm/bases-view-registrar.mjs +6 -14
- package/dist/lib/esm/callout.mjs +6 -14
- package/dist/lib/esm/canvas.mjs +6 -14
- package/dist/lib/esm/case-insensitive-file-index.mjs +6 -14
- package/dist/lib/esm/code-block-markdown-information.mjs +5 -13
- package/dist/lib/esm/code-block-reg-exp.mjs +6 -14
- package/dist/lib/esm/codemirror/index.mjs +6 -14
- package/dist/lib/esm/codemirror/state-field-spec.mjs +5 -13
- package/dist/lib/esm/command-handlers/abstract-file-command-handler.mjs +6 -14
- package/dist/lib/esm/command-handlers/command-handler-component.mjs +6 -14
- package/dist/lib/esm/command-handlers/command-handler.mjs +6 -14
- package/dist/lib/esm/command-handlers/editor-command-handler.mjs +6 -14
- package/dist/lib/esm/command-handlers/file-command-handler.mjs +6 -14
- package/dist/lib/esm/command-handlers/folder-command-handler.mjs +6 -14
- package/dist/lib/esm/command-handlers/global-command-handler.mjs +6 -14
- package/dist/lib/esm/command-handlers/index.mjs +6 -14
- package/dist/lib/esm/command-handlers/open-demo-vault-command-handler.mjs +6 -14
- package/dist/lib/esm/command-handlers/open-settings-command-handler.mjs +6 -14
- package/dist/lib/esm/command-handlers/unlock-active-note-command-handler.mjs +6 -14
- package/dist/lib/esm/command-registrar.mjs +6 -14
- package/dist/lib/esm/community-plugins.mjs +6 -14
- package/dist/lib/esm/components/abort-signal-component.mjs +6 -14
- package/dist/lib/esm/components/all-windows-event-component.mjs +6 -14
- package/dist/lib/esm/components/async-error-handler-component.mjs +6 -14
- package/dist/lib/esm/components/async-events-component.mjs +6 -14
- package/dist/lib/esm/components/case-insensitive-file-index-component.mjs +6 -14
- package/dist/lib/esm/components/component-ex.mjs +6 -14
- package/dist/lib/esm/components/console-debug-component.mjs +6 -14
- package/dist/lib/esm/components/core-plugin-toggle-component.mjs +6 -14
- package/dist/lib/esm/components/disposable-component.mjs +6 -14
- package/dist/lib/esm/components/embed-extensions-component.mjs +6 -14
- package/dist/lib/esm/components/generate-markdown-link-default-params-component.mjs +6 -14
- package/dist/lib/esm/components/index.mjs +6 -14
- package/dist/lib/esm/components/layout-ready-component.mjs +6 -14
- package/dist/lib/esm/components/menu-event-registrar-component.mjs +6 -14
- package/dist/lib/esm/components/monkey-around-component.mjs +6 -14
- package/dist/lib/esm/components/notebook-navigator-menu-event-registrar-component.mjs +6 -14
- package/dist/lib/esm/components/plugin-context-component.mjs +6 -14
- package/dist/lib/esm/components/plugin-gate-component.mjs +6 -14
- package/dist/lib/esm/components/plugin-notice-component.mjs +6 -14
- package/dist/lib/esm/components/plugin-settings-component.mjs +6 -14
- package/dist/lib/esm/components/plugin-settings-tab-component.mjs +6 -14
- package/dist/lib/esm/components/plugin-suggestion-component.mjs +6 -14
- package/dist/lib/esm/components/pointer-position-component.mjs +6 -14
- package/dist/lib/esm/components/registry-component.mjs +6 -14
- package/dist/lib/esm/components/release-notes-component.mjs +6 -14
- package/dist/lib/esm/components/rename-delete-handler-component.mjs +6 -14
- package/dist/lib/esm/components/rmdir-guard-component.mjs +6 -14
- package/dist/lib/esm/components/settings-migration-component.mjs +6 -14
- package/dist/lib/esm/components/syntax-highlighting-component.mjs +6 -14
- package/dist/lib/esm/components/templates-language-component.mjs +6 -14
- package/dist/lib/esm/constructors/get-dom-events-handlers-constructor.mjs +6 -14
- package/dist/lib/esm/constructors/index.mjs +6 -14
- package/dist/lib/esm/css-class.mjs +6 -14
- package/dist/lib/esm/data-handler.mjs +6 -14
- package/dist/lib/esm/dataview-link.mjs +6 -14
- package/dist/lib/esm/dataview.mjs +6 -14
- package/dist/lib/esm/debug.mjs +6 -14
- package/dist/lib/esm/demo-vault-helper-settings.mjs +5 -13
- package/dist/lib/esm/demo-vault-helper.mjs +6 -14
- package/dist/lib/esm/demo-vault-naming.mjs +6 -14
- package/dist/lib/esm/desktop-demo-vault-opener.mjs +6 -14
- package/dist/lib/esm/desktop-trusted-input.mjs +6 -14
- package/dist/lib/esm/editor-extension-registrar.mjs +6 -14
- package/dist/lib/esm/editor-suggest-registrar.mjs +6 -14
- package/dist/lib/esm/editor.mjs +6 -14
- package/dist/lib/esm/events.mjs +6 -14
- package/dist/lib/esm/extensions-registrar.mjs +6 -14
- package/dist/lib/esm/file-change.mjs +6 -14
- package/dist/lib/esm/file-explorer.mjs +6 -14
- package/dist/lib/esm/file-manager.mjs +6 -14
- package/dist/lib/esm/file-system.mjs +6 -14
- package/dist/lib/esm/folder-note.mjs +6 -14
- package/dist/lib/esm/frontmatter-formatting.mjs +6 -14
- package/dist/lib/esm/frontmatter-link-cache-with-offsets.mjs +6 -14
- package/dist/lib/esm/frontmatter.mjs +6 -14
- package/dist/lib/esm/generated-during-build.d.mts +8 -2
- package/dist/lib/esm/generated-during-build.mjs +7 -15
- package/dist/lib/esm/hover-link-source-registrar.mjs +6 -14
- package/dist/lib/esm/html-element.mjs +6 -14
- package/dist/lib/esm/i18n/custom-type-options.mjs +6 -14
- package/dist/lib/esm/i18n/default-translations.mjs +6 -14
- package/dist/lib/esm/i18n/i18n.mjs +6 -14
- package/dist/lib/esm/i18n/index.mjs +6 -14
- package/dist/lib/esm/i18n/locales/en.mjs +6 -14
- package/dist/lib/esm/i18n/locales/index.mjs +6 -14
- package/dist/lib/esm/i18n/locales/translations-map.mjs +6 -14
- package/dist/lib/esm/index.mjs +6 -14
- package/dist/lib/esm/is-in-obsidian.mjs +6 -14
- package/dist/lib/esm/library-styles.mjs +6 -14
- package/dist/lib/esm/library.mjs +6 -14
- package/dist/lib/esm/link-name.mjs +6 -14
- package/dist/lib/esm/link-update-progress.mjs +5 -13
- package/dist/lib/esm/link.mjs +6 -14
- package/dist/lib/esm/logger.mjs +6 -14
- package/dist/lib/esm/loop.mjs +6 -14
- package/dist/lib/esm/markdown-code-block-processor-registrar.mjs +6 -14
- package/dist/lib/esm/markdown-code-block-processor.mjs +6 -14
- package/dist/lib/esm/markdown-post-processor-registrar.mjs +6 -14
- package/dist/lib/esm/markdown-view.mjs +6 -14
- package/dist/lib/esm/markdown.mjs +6 -14
- package/dist/lib/esm/menu-event-registrar.mjs +5 -13
- package/dist/lib/esm/metadata-cache.mjs +6 -14
- package/dist/lib/esm/mobile-trusted-input.mjs +6 -14
- package/dist/lib/esm/modals/alert.mjs +6 -14
- package/dist/lib/esm/modals/confirm.mjs +6 -14
- package/dist/lib/esm/modals/index.mjs +6 -14
- package/dist/lib/esm/modals/minimizable-modal.mjs +6 -14
- package/dist/lib/esm/modals/modal-command-builder.mjs +6 -14
- package/dist/lib/esm/modals/modal.mjs +6 -14
- package/dist/lib/esm/modals/prompt.mjs +6 -14
- package/dist/lib/esm/modals/select-item.mjs +6 -14
- package/dist/lib/esm/modals/select-option.mjs +6 -14
- package/dist/lib/esm/modals/suggest-modal-command-builder.mjs +6 -14
- package/dist/lib/esm/note-priority.mjs +6 -14
- package/dist/lib/esm/notebook-navigator.mjs +6 -14
- package/dist/lib/esm/obsidian-dev-utils-state.mjs +6 -14
- package/dist/lib/esm/obsidian-protocol-handler-registrar.mjs +6 -14
- package/dist/lib/esm/obsidian-settings.mjs +6 -14
- package/dist/lib/esm/parse-link.mjs +6 -14
- package/dist/lib/esm/path-settings.mjs +6 -14
- package/dist/lib/esm/pdf.mjs +6 -14
- package/dist/lib/esm/plugin/index.mjs +6 -14
- package/dist/lib/esm/plugin/plugin-api.mjs +6 -14
- package/dist/lib/esm/plugin/plugin-context.mjs +6 -14
- package/dist/lib/esm/plugin/plugin-event-source.mjs +6 -14
- package/dist/lib/esm/plugin/plugin-install-state.mjs +6 -14
- package/dist/lib/esm/plugin/plugin-lifecycle-events.mjs +6 -14
- package/dist/lib/esm/plugin/plugin-settings-tab.mjs +6 -14
- package/dist/lib/esm/plugin/plugin.mjs +6 -14
- package/dist/lib/esm/plugin/settings-migration-api.mjs +5 -13
- package/dist/lib/esm/plugin-cli-handler-registrar.mjs +6 -14
- package/dist/lib/esm/popovers/field-popover.mjs +6 -14
- package/dist/lib/esm/popovers/index.mjs +6 -14
- package/dist/lib/esm/popovers/popover-anchor.mjs +6 -14
- package/dist/lib/esm/popovers/popover.mjs +6 -14
- package/dist/lib/esm/property-entry.mjs +6 -14
- package/dist/lib/esm/queue.mjs +6 -14
- package/dist/lib/esm/react/app-context.mjs +6 -14
- package/dist/lib/esm/react/index.mjs +6 -14
- package/dist/lib/esm/reference.mjs +6 -14
- package/dist/lib/esm/resource-lock.mjs +6 -14
- package/dist/lib/esm/resource-url.mjs +6 -14
- package/dist/lib/esm/ribbon-icon-registrar.mjs +6 -14
- package/dist/lib/esm/setting-components/checkbox-component.mjs +6 -14
- package/dist/lib/esm/setting-components/code-highlighter-component.mjs +6 -14
- package/dist/lib/esm/setting-components/date-component.mjs +6 -14
- package/dist/lib/esm/setting-components/date-time-component.mjs +6 -14
- package/dist/lib/esm/setting-components/email-component.mjs +6 -14
- package/dist/lib/esm/setting-components/file-component.mjs +6 -14
- package/dist/lib/esm/setting-components/index.mjs +6 -14
- package/dist/lib/esm/setting-components/month-component.mjs +6 -14
- package/dist/lib/esm/setting-components/multiple-dropdown-component.mjs +6 -14
- package/dist/lib/esm/setting-components/multiple-email-component.mjs +6 -14
- package/dist/lib/esm/setting-components/multiple-file-component.mjs +6 -14
- package/dist/lib/esm/setting-components/multiple-text-component.mjs +6 -14
- package/dist/lib/esm/setting-components/number-component.mjs +6 -14
- package/dist/lib/esm/setting-components/password-component.mjs +6 -14
- package/dist/lib/esm/setting-components/setting-component-wrapper.mjs +6 -14
- package/dist/lib/esm/setting-components/telephone-component.mjs +6 -14
- package/dist/lib/esm/setting-components/text-based-component.mjs +6 -14
- package/dist/lib/esm/setting-components/time-component.mjs +6 -14
- package/dist/lib/esm/setting-components/tri-state-checkbox-component.mjs +6 -14
- package/dist/lib/esm/setting-components/typed-dropdown-component.mjs +6 -14
- package/dist/lib/esm/setting-components/typed-multiple-dropdown-component.mjs +6 -14
- package/dist/lib/esm/setting-components/typed-range-text-component.mjs +6 -14
- package/dist/lib/esm/setting-components/typed-text-component.mjs +6 -14
- package/dist/lib/esm/setting-components/url-component.mjs +6 -14
- package/dist/lib/esm/setting-components/validator-component.mjs +6 -14
- package/dist/lib/esm/setting-components/value-component-with-change-tracking.mjs +5 -13
- package/dist/lib/esm/setting-components/week-component.mjs +6 -14
- package/dist/lib/esm/setting-ex.mjs +6 -14
- package/dist/lib/esm/setting-group-ex.mjs +6 -14
- package/dist/lib/esm/status-bar-item-registrar.mjs +6 -14
- package/dist/lib/esm/templater.mjs +6 -14
- package/dist/lib/esm/transformers/duration-transformer.mjs +6 -14
- package/dist/lib/esm/transformers/index.mjs +6 -14
- package/dist/lib/esm/trusted-input.mjs +6 -14
- package/dist/lib/esm/validation.mjs +6 -14
- package/dist/lib/esm/vault-delete.mjs +6 -14
- package/dist/lib/esm/vault-transaction.mjs +6 -14
- package/dist/lib/esm/vault.mjs +6 -14
- package/dist/lib/esm/view-registrar.mjs +6 -14
- package/dist/lib/esm/workspace.mjs +6 -14
- package/package.json +69 -24
|
@@ -5,40 +5,32 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
5
5
|
|
|
6
6
|
(function () {
|
|
7
7
|
function ensureDisposeSymbols(symbolConstructor = Symbol) {
|
|
8
|
-
symbolConstructor.asyncDispose ??= symbolConstructor.for(
|
|
9
|
-
symbolConstructor.dispose ??= symbolConstructor.for(
|
|
8
|
+
symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
|
|
9
|
+
symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
function ensureBrowserProcess() {
|
|
13
13
|
const browserProcess = {
|
|
14
14
|
browser: true,
|
|
15
15
|
cwd() {
|
|
16
|
-
return
|
|
16
|
+
return "/";
|
|
17
17
|
},
|
|
18
18
|
env: {},
|
|
19
|
-
platform:
|
|
19
|
+
platform: "android"
|
|
20
20
|
};
|
|
21
|
-
|
|
22
|
-
// eslint-disable-next-line obsidianmd/no-global-this, unicorn/no-unnecessary-global-this -- Must stay `globalThis`-qualified: in the emitted banner a bare `process` is a free identifier, so reading it where the host has none throws a ReferenceError instead of yielding `undefined`. That is the very case this function exists to handle.
|
|
23
21
|
const existingProcess = globalThis.process;
|
|
24
|
-
|
|
25
22
|
if (!existingProcess) {
|
|
26
|
-
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
27
23
|
globalThis.process = browserProcess;
|
|
28
24
|
return;
|
|
29
25
|
}
|
|
30
|
-
|
|
31
26
|
if (existingProcess.versions?.node) {
|
|
32
27
|
return;
|
|
33
28
|
}
|
|
34
|
-
|
|
35
29
|
const existingProcessRecord = existingProcess;
|
|
36
|
-
|
|
37
30
|
for (const [key, value] of Object.entries(browserProcess)) {
|
|
38
31
|
existingProcessRecord[key] ??= value;
|
|
39
32
|
}
|
|
40
|
-
|
|
41
|
-
existingProcessRecord['browser'] = true;
|
|
33
|
+
existingProcessRecord["browser"] = true;
|
|
42
34
|
}
|
|
43
35
|
|
|
44
36
|
function keepName($unknown) {
|
|
@@ -46,17 +38,13 @@ function keepName($unknown) {
|
|
|
46
38
|
}
|
|
47
39
|
|
|
48
40
|
(function initCjs() {
|
|
49
|
-
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
50
41
|
const globalThisRecord = globalThis;
|
|
51
42
|
ensureDisposeSymbols();
|
|
52
|
-
globalThisRecord[
|
|
53
|
-
globalThisRecord[
|
|
54
|
-
|
|
43
|
+
globalThisRecord["__name"] ??= keepName;
|
|
44
|
+
globalThisRecord["__extractDefault"] ??= extractDefault;
|
|
55
45
|
ensureBrowserProcess();
|
|
56
|
-
|
|
57
|
-
// eslint-disable-next-line unicorn/consistent-function-scoping -- Serialized with initCjs into the banner; at module scope it would be left out of it.
|
|
58
46
|
function extractDefault(module) {
|
|
59
|
-
return module && module.__esModule &&
|
|
47
|
+
return module && module.__esModule && "default" in module ? module.default : module;
|
|
60
48
|
}
|
|
61
49
|
})();
|
|
62
50
|
})();
|
|
@@ -65,8 +53,6 @@ function keepName($unknown) {
|
|
|
65
53
|
if (!originalRequire || originalRequire.__isPatched) {
|
|
66
54
|
return;
|
|
67
55
|
}
|
|
68
|
-
|
|
69
|
-
// eslint-disable-next-line no-global-assign, no-implicit-globals -- We need to patch the `require()` function.
|
|
70
56
|
require = Object.assign(
|
|
71
57
|
(id) => requirePatched(id),
|
|
72
58
|
originalRequire,
|
|
@@ -74,53 +60,45 @@ function keepName($unknown) {
|
|
|
74
60
|
__isPatched: true
|
|
75
61
|
}
|
|
76
62
|
);
|
|
77
|
-
|
|
78
63
|
function extractDefault(module) {
|
|
79
|
-
return module && module.__esModule &&
|
|
64
|
+
return module && module.__esModule && "default" in module ? module.default : module;
|
|
80
65
|
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
'@codemirror/tooltip']
|
|
111
|
-
);
|
|
112
|
-
|
|
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
|
+
]);
|
|
113
95
|
function requirePatched(id) {
|
|
114
96
|
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
|
|
115
97
|
return originalRequire?.(id);
|
|
116
98
|
}
|
|
117
|
-
|
|
118
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated, obsidianmd/no-global-this -- Need access to app. Actively use globalThis.
|
|
119
99
|
if (globalThis.app.isMobile) {
|
|
120
|
-
if (id ===
|
|
121
|
-
// eslint-disable-next-line no-console -- Valid usage.
|
|
100
|
+
if (id === "process" || id === "node:process") {
|
|
122
101
|
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
|
|
123
|
-
|
|
124
102
|
return process;
|
|
125
103
|
}
|
|
126
104
|
} else {
|
|
@@ -129,8 +107,6 @@ function keepName($unknown) {
|
|
|
129
107
|
return extractDefault(module);
|
|
130
108
|
}
|
|
131
109
|
}
|
|
132
|
-
|
|
133
|
-
// eslint-disable-next-line no-console -- Valid usage.
|
|
134
110
|
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
|
|
135
111
|
return {};
|
|
136
112
|
}
|
|
@@ -210,4 +186,4 @@ async function selectOption(params) {
|
|
|
210
186
|
0 && (module.exports = {
|
|
211
187
|
selectOption
|
|
212
188
|
});
|
|
213
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL21vZGFscy9zZWxlY3Qtb3B0aW9uLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogVXRpbGl0eSBmb3IgZGlzcGxheWluZyBhIG1vZGFsIHRoYXQgb2ZmZXJzIGEgZml4ZWQgc2V0IG9mIGxhYmVsbGVkIG9wdGlvbnMgYXMgYnV0dG9ucy5cbiAqXG4gKiBVbmxpa2Uge0BsaW5rIHNlbGVjdEl0ZW19IChhIGZ1enp5LXNlYXJjaCBwaWNrZXIgb3ZlciBhbiBhcmJpdHJhcnkgbGlzdCksIHRoaXMgbW9kYWwgcmVuZGVycyBvbmVcbiAqIGJ1dHRvbiBwZXIgb3B0aW9uIFx1MjAxNCB1c2VmdWwgZm9yIGEgc21hbGwsIGZpeGVkIHNldCBvZiBtdXR1YWxseS1leGNsdXNpdmUgY2hvaWNlcyB3aGVyZSBlYWNoIGNob2ljZVxuICogaGFzIGl0cyBvd24gbGFiZWwgYW5kIHJlc29sdmVkIHZhbHVlLiBJdCByZXNvbHZlcyB3aXRoIHRoZSBjaG9zZW4gdmFsdWUsIG9yIGBudWxsYCBpZiB0aGUgbW9kYWwgaXNcbiAqIGRpc21pc3NlZCB3aXRob3V0IGEgY2hvaWNlLlxuICovXG5cbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUge1xuICBNb2RhbEJhc2VDb25zdHJ1Y3RvclBhcmFtcyxcbiAgTW9kYWxQYXJhbXNCYXNlXG59IGZyb20gJy4vbW9kYWwudHMnO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uL2Nzcy1jbGFzcy50cyc7XG5pbXBvcnQge1xuICBNb2RhbEJhc2UsXG4gIHNob3dNb2RhbFxufSBmcm9tICcuL21vZGFsLnRzJztcblxuLyoqXG4gKiBBIHNpbmdsZSBzZWxlY3RhYmxlIG9wdGlvbiByZW5kZXJlZCBhcyBhIGJ1dHRvbiBpbiB0aGUge0BsaW5rIHNlbGVjdE9wdGlvbn0gbW9kYWwuXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHJlc29sdmVkIHdoZW4gdGhpcyBvcHRpb24gaXMgY2hvc2VuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdE9wdGlvbkl0ZW08VD4ge1xuICAvKipcbiAgICogV2hldGhlciB0byByZW5kZXIgdGhpcyBvcHRpb24gYXMgdGhlIGNhbGwtdG8tYWN0aW9uIChwcmltYXJ5KSBidXR0b24uXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIHJlYWRvbmx5IGlzQ3RhPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIGJ1dHRvbiBsYWJlbC5cbiAgICovXG4gIHJlYWRvbmx5IHRleHQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHZhbHVlIHRoZSBtb2RhbCByZXNvbHZlcyB3aXRoIHdoZW4gdGhpcyBvcHRpb24gaXMgY2hvc2VuLlxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU6IFQ7XG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIHNlbGVjdE9wdGlvbn0uXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHJlc29sdmVkIHdoZW4gYW4gb3B0aW9uIGlzIGNob3Nlbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RPcHRpb25QYXJhbXM8VD4gZXh0ZW5kcyBNb2RhbFBhcmFtc0Jhc2Uge1xuICAvKipcbiAgICogQSBtZXNzYWdlIGRpc3BsYXllZCBhYm92ZSB0aGUgb3B0aW9uIGJ1dHRvbnMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGAnJ2BcbiAgICovXG4gIHJlYWRvbmx5IG1lc3NhZ2U/OiBEb2N1bWVudEZyYWdtZW50IHwgc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc2VsZWN0YWJsZSBvcHRpb25zLCBlYWNoIHJlbmRlcmVkIGFzIGEgYnV0dG9uLlxuICAgKi9cbiAgcmVhZG9ubHkgb3B0aW9uczogU2VsZWN0T3B0aW9uSXRlbTxUPltdO1xuXG4gIC8qKlxuICAgKiBBIHRpdGxlIG9mIHRoZSBtb2RhbC5cbiAgICpcbiAgICogQGRlZmF1bHQgYCcnYFxuICAgKi9cbiAgcmVhZG9ubHkgdGl0bGU/OiBEb2N1bWVudEZyYWdtZW50IHwgc3RyaW5nO1xufVxuXG50eXBlIFNlbGVjdE9wdGlvbk1vZGFsQ29uc3RydWN0b3JQYXJhbXM8VD4gPSBNb2RhbEJhc2VDb25zdHJ1Y3RvclBhcmFtczxudWxsIHwgVD4gJiBTZWxlY3RPcHRpb25QYXJhbXM8VD47XG5cbmNsYXNzIFNlbGVjdE9wdGlvbk1vZGFsPFQ+IGV4dGVuZHMgTW9kYWxCYXNlPG51bGwgfCBUPiB7XG4gIHByaXZhdGUgaXNTZWxlY3RlZCA9IGZhbHNlO1xuICBwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2U6IERvY3VtZW50RnJhZ21lbnQgfCBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogU2VsZWN0T3B0aW9uSXRlbTxUPltdO1xuICBwcml2YXRlIHJlYWRvbmx5IHRpdGxlOiBEb2N1bWVudEZyYWdtZW50IHwgc3RyaW5nO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJhbXM6IFNlbGVjdE9wdGlvbk1vZGFsQ29uc3RydWN0b3JQYXJhbXM8VD4pIHtcbiAgICBzdXBlcihwYXJhbXMpO1xuICAgIHRoaXMuYWRkQ3NzQ2xhc3NlcyhDc3NDbGFzcy5TZWxlY3RPcHRpb25Nb2RhbCk7XG4gICAgdGhpcy5tZXNzYWdlID0gcGFyYW1zLm1lc3NhZ2UgPz8gJyc7XG4gICAgdGhpcy5vcHRpb25zID0gcGFyYW1zLm9wdGlvbnM7XG4gICAgdGhpcy50aXRsZSA9IHBhcmFtcy50aXRsZSA/PyAnJztcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbkNsb3NlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc1NlbGVjdGVkKSB7XG4gICAgICB0aGlzLnByb21pc2VSZXNvbHZlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbk9wZW4oKTogdm9pZCB7XG4gICAgdGhpcy50aXRsZUVsLnNldFRleHQodGhpcy50aXRsZSk7XG4gICAgaWYgKHRoaXMubWVzc2FnZSkge1xuICAgICAgdGhpcy5jb250ZW50RWwuY3JlYXRlRWwoJ3AnLCB7IHRleHQ6IHRoaXMubWVzc2FnZSB9KTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiB0aGlzLm9wdGlvbnMpIHtcbiAgICAgIGNvbnN0IGJ1dHRvbiA9IG5ldyBCdXR0b25Db21wb25lbnQodGhpcy5jb250ZW50RWwpO1xuICAgICAgYnV0dG9uLnNldEJ1dHRvblRleHQob3B0aW9uLnRleHQpO1xuICAgICAgaWYgKG9wdGlvbi5pc0N0YSkge1xuICAgICAgICBidXR0b24uc2V0Q3RhKCk7XG4gICAgICB9XG4gICAgICBidXR0b24ub25DbGljaygoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNTZWxlY3RlZCA9IHRydWU7XG4gICAgICAgIHRoaXMucHJvbWlzZVJlc29sdmUob3B0aW9uLnZhbHVlKTtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogRGlzcGxheXMgYSBtb2RhbCBpbiBPYnNpZGlhbiBvZmZlcmluZyBhIGZpeGVkIHNldCBvZiBsYWJlbGxlZCBvcHRpb25zIGFzIGJ1dHRvbnMuXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHJlc29sdmVkIHdoZW4gYW4gb3B0aW9uIGlzIGNob3Nlbi5cbiAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgcGFyYW1ldGVycyBmb3IgdGhlIG1vZGFsLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aXRoIHRoZSBjaG9zZW4gb3B0aW9uJ3MgdmFsdWUsIG9yIGBudWxsYCBpZiB0aGUgbW9kYWxcbiAqIHdhcyBkaXNtaXNzZWQgd2l0aG91dCBhIGNob2ljZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNlbGVjdE9wdGlvbjxUPihwYXJhbXM6IFNlbGVjdE9wdGlvblBhcmFtczxUPik6IFByb21pc2U8bnVsbCB8IFQ+
|
|
189
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL21vZGFscy9zZWxlY3Qtb3B0aW9uLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogVXRpbGl0eSBmb3IgZGlzcGxheWluZyBhIG1vZGFsIHRoYXQgb2ZmZXJzIGEgZml4ZWQgc2V0IG9mIGxhYmVsbGVkIG9wdGlvbnMgYXMgYnV0dG9ucy5cbiAqXG4gKiBVbmxpa2Uge0BsaW5rIHNlbGVjdEl0ZW19IChhIGZ1enp5LXNlYXJjaCBwaWNrZXIgb3ZlciBhbiBhcmJpdHJhcnkgbGlzdCksIHRoaXMgbW9kYWwgcmVuZGVycyBvbmVcbiAqIGJ1dHRvbiBwZXIgb3B0aW9uIFx1MjAxNCB1c2VmdWwgZm9yIGEgc21hbGwsIGZpeGVkIHNldCBvZiBtdXR1YWxseS1leGNsdXNpdmUgY2hvaWNlcyB3aGVyZSBlYWNoIGNob2ljZVxuICogaGFzIGl0cyBvd24gbGFiZWwgYW5kIHJlc29sdmVkIHZhbHVlLiBJdCByZXNvbHZlcyB3aXRoIHRoZSBjaG9zZW4gdmFsdWUsIG9yIGBudWxsYCBpZiB0aGUgbW9kYWwgaXNcbiAqIGRpc21pc3NlZCB3aXRob3V0IGEgY2hvaWNlLlxuICovXG5cbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUge1xuICBNb2RhbEJhc2VDb25zdHJ1Y3RvclBhcmFtcyxcbiAgTW9kYWxQYXJhbXNCYXNlXG59IGZyb20gJy4vbW9kYWwudHMnO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uL2Nzcy1jbGFzcy50cyc7XG5pbXBvcnQge1xuICBNb2RhbEJhc2UsXG4gIHNob3dNb2RhbFxufSBmcm9tICcuL21vZGFsLnRzJztcblxuLyoqXG4gKiBBIHNpbmdsZSBzZWxlY3RhYmxlIG9wdGlvbiByZW5kZXJlZCBhcyBhIGJ1dHRvbiBpbiB0aGUge0BsaW5rIHNlbGVjdE9wdGlvbn0gbW9kYWwuXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHJlc29sdmVkIHdoZW4gdGhpcyBvcHRpb24gaXMgY2hvc2VuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdE9wdGlvbkl0ZW08VD4ge1xuICAvKipcbiAgICogV2hldGhlciB0byByZW5kZXIgdGhpcyBvcHRpb24gYXMgdGhlIGNhbGwtdG8tYWN0aW9uIChwcmltYXJ5KSBidXR0b24uXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIHJlYWRvbmx5IGlzQ3RhPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIGJ1dHRvbiBsYWJlbC5cbiAgICovXG4gIHJlYWRvbmx5IHRleHQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHZhbHVlIHRoZSBtb2RhbCByZXNvbHZlcyB3aXRoIHdoZW4gdGhpcyBvcHRpb24gaXMgY2hvc2VuLlxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU6IFQ7XG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIHNlbGVjdE9wdGlvbn0uXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHJlc29sdmVkIHdoZW4gYW4gb3B0aW9uIGlzIGNob3Nlbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RPcHRpb25QYXJhbXM8VD4gZXh0ZW5kcyBNb2RhbFBhcmFtc0Jhc2Uge1xuICAvKipcbiAgICogQSBtZXNzYWdlIGRpc3BsYXllZCBhYm92ZSB0aGUgb3B0aW9uIGJ1dHRvbnMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGAnJ2BcbiAgICovXG4gIHJlYWRvbmx5IG1lc3NhZ2U/OiBEb2N1bWVudEZyYWdtZW50IHwgc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc2VsZWN0YWJsZSBvcHRpb25zLCBlYWNoIHJlbmRlcmVkIGFzIGEgYnV0dG9uLlxuICAgKi9cbiAgcmVhZG9ubHkgb3B0aW9uczogU2VsZWN0T3B0aW9uSXRlbTxUPltdO1xuXG4gIC8qKlxuICAgKiBBIHRpdGxlIG9mIHRoZSBtb2RhbC5cbiAgICpcbiAgICogQGRlZmF1bHQgYCcnYFxuICAgKi9cbiAgcmVhZG9ubHkgdGl0bGU/OiBEb2N1bWVudEZyYWdtZW50IHwgc3RyaW5nO1xufVxuXG50eXBlIFNlbGVjdE9wdGlvbk1vZGFsQ29uc3RydWN0b3JQYXJhbXM8VD4gPSBNb2RhbEJhc2VDb25zdHJ1Y3RvclBhcmFtczxudWxsIHwgVD4gJiBTZWxlY3RPcHRpb25QYXJhbXM8VD47XG5cbmNsYXNzIFNlbGVjdE9wdGlvbk1vZGFsPFQ+IGV4dGVuZHMgTW9kYWxCYXNlPG51bGwgfCBUPiB7XG4gIHByaXZhdGUgaXNTZWxlY3RlZCA9IGZhbHNlO1xuICBwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2U6IERvY3VtZW50RnJhZ21lbnQgfCBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogU2VsZWN0T3B0aW9uSXRlbTxUPltdO1xuICBwcml2YXRlIHJlYWRvbmx5IHRpdGxlOiBEb2N1bWVudEZyYWdtZW50IHwgc3RyaW5nO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJhbXM6IFNlbGVjdE9wdGlvbk1vZGFsQ29uc3RydWN0b3JQYXJhbXM8VD4pIHtcbiAgICBzdXBlcihwYXJhbXMpO1xuICAgIHRoaXMuYWRkQ3NzQ2xhc3NlcyhDc3NDbGFzcy5TZWxlY3RPcHRpb25Nb2RhbCk7XG4gICAgdGhpcy5tZXNzYWdlID0gcGFyYW1zLm1lc3NhZ2UgPz8gJyc7XG4gICAgdGhpcy5vcHRpb25zID0gcGFyYW1zLm9wdGlvbnM7XG4gICAgdGhpcy50aXRsZSA9IHBhcmFtcy50aXRsZSA/PyAnJztcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbkNsb3NlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc1NlbGVjdGVkKSB7XG4gICAgICB0aGlzLnByb21pc2VSZXNvbHZlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbk9wZW4oKTogdm9pZCB7XG4gICAgdGhpcy50aXRsZUVsLnNldFRleHQodGhpcy50aXRsZSk7XG4gICAgaWYgKHRoaXMubWVzc2FnZSkge1xuICAgICAgdGhpcy5jb250ZW50RWwuY3JlYXRlRWwoJ3AnLCB7IHRleHQ6IHRoaXMubWVzc2FnZSB9KTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiB0aGlzLm9wdGlvbnMpIHtcbiAgICAgIGNvbnN0IGJ1dHRvbiA9IG5ldyBCdXR0b25Db21wb25lbnQodGhpcy5jb250ZW50RWwpO1xuICAgICAgYnV0dG9uLnNldEJ1dHRvblRleHQob3B0aW9uLnRleHQpO1xuICAgICAgaWYgKG9wdGlvbi5pc0N0YSkge1xuICAgICAgICBidXR0b24uc2V0Q3RhKCk7XG4gICAgICB9XG4gICAgICBidXR0b24ub25DbGljaygoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNTZWxlY3RlZCA9IHRydWU7XG4gICAgICAgIHRoaXMucHJvbWlzZVJlc29sdmUob3B0aW9uLnZhbHVlKTtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogRGlzcGxheXMgYSBtb2RhbCBpbiBPYnNpZGlhbiBvZmZlcmluZyBhIGZpeGVkIHNldCBvZiBsYWJlbGxlZCBvcHRpb25zIGFzIGJ1dHRvbnMuXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHJlc29sdmVkIHdoZW4gYW4gb3B0aW9uIGlzIGNob3Nlbi5cbiAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgcGFyYW1ldGVycyBmb3IgdGhlIG1vZGFsLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aXRoIHRoZSBjaG9zZW4gb3B0aW9uJ3MgdmFsdWUsIG9yIGBudWxsYCBpZiB0aGUgbW9kYWxcbiAqIHdhcyBkaXNtaXNzZWQgd2l0aG91dCBhIGNob2ljZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNlbGVjdE9wdGlvbjxUPihwYXJhbXM6IFNlbGVjdE9wdGlvblBhcmFtczxUPik6IFByb21pc2U8bnVsbCB8IFQ+IHtcbiAgcmV0dXJuIGF3YWl0IHNob3dNb2RhbDxudWxsIHwgVD4oKHByb21pc2VSZXNvbHZlKSA9PlxuICAgIG5ldyBTZWxlY3RPcHRpb25Nb2RhbDxUPih7XG4gICAgICAuLi5wYXJhbXMsXG4gICAgICBwcm9taXNlUmVzb2x2ZVxuICAgIH0pXG4gICk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0Esc0JBQWdDO0FBT2hDLHVCQUF5QjtBQUN6QixtQkFHTztBQXNEUCxNQUFNLDBCQUE2Qix1QkFBb0I7QUFBQSxFQUM3QyxhQUFhO0FBQUEsRUFDSjtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFFVixZQUFZLFFBQStDO0FBQ2hFLFVBQU0sTUFBTTtBQUNaLFNBQUssY0FBYywwQkFBUyxpQkFBaUI7QUFDN0MsU0FBSyxVQUFVLE9BQU8sV0FBVztBQUNqQyxTQUFLLFVBQVUsT0FBTztBQUN0QixTQUFLLFFBQVEsT0FBTyxTQUFTO0FBQUEsRUFDL0I7QUFBQSxFQUVnQixVQUFnQjtBQUM5QixRQUFJLENBQUMsS0FBSyxZQUFZO0FBQ3BCLFdBQUssZUFBZSxJQUFJO0FBQUEsSUFDMUI7QUFBQSxFQUNGO0FBQUEsRUFFZ0IsU0FBZTtBQUM3QixTQUFLLFFBQVEsUUFBUSxLQUFLLEtBQUs7QUFDL0IsUUFBSSxLQUFLLFNBQVM7QUFDaEIsV0FBSyxVQUFVLFNBQVMsS0FBSyxFQUFFLE1BQU0sS0FBSyxRQUFRLENBQUM7QUFBQSxJQUNyRDtBQUVBLGVBQVcsVUFBVSxLQUFLLFNBQVM7QUFDakMsWUFBTSxTQUFTLElBQUksZ0NBQWdCLEtBQUssU0FBUztBQUNqRCxhQUFPLGNBQWMsT0FBTyxJQUFJO0FBQ2hDLFVBQUksT0FBTyxPQUFPO0FBQ2hCLGVBQU8sT0FBTztBQUFBLE1BQ2hCO0FBQ0EsYUFBTyxRQUFRLE1BQU07QUFDbkIsYUFBSyxhQUFhO0FBQ2xCLGFBQUssZUFBZSxPQUFPLEtBQUs7QUFDaEMsYUFBSyxNQUFNO0FBQUEsTUFDYixDQUFDO0FBQUEsSUFDSDtBQUFBLEVBQ0Y7QUFDRjtBQVVBLGVBQXNCLGFBQWdCLFFBQWtEO0FBQ3RGLFNBQU8sVUFBTTtBQUFBLElBQW9CLENBQUMsbUJBQ2hDLElBQUksa0JBQXFCO0FBQUEsTUFDdkIsR0FBRztBQUFBLE1BQ0g7QUFBQSxJQUNGLENBQUM7QUFBQSxFQUNIO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
|
@@ -5,40 +5,32 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
5
5
|
|
|
6
6
|
(function () {
|
|
7
7
|
function ensureDisposeSymbols(symbolConstructor = Symbol) {
|
|
8
|
-
symbolConstructor.asyncDispose ??= symbolConstructor.for(
|
|
9
|
-
symbolConstructor.dispose ??= symbolConstructor.for(
|
|
8
|
+
symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
|
|
9
|
+
symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
function ensureBrowserProcess() {
|
|
13
13
|
const browserProcess = {
|
|
14
14
|
browser: true,
|
|
15
15
|
cwd() {
|
|
16
|
-
return
|
|
16
|
+
return "/";
|
|
17
17
|
},
|
|
18
18
|
env: {},
|
|
19
|
-
platform:
|
|
19
|
+
platform: "android"
|
|
20
20
|
};
|
|
21
|
-
|
|
22
|
-
// eslint-disable-next-line obsidianmd/no-global-this, unicorn/no-unnecessary-global-this -- Must stay `globalThis`-qualified: in the emitted banner a bare `process` is a free identifier, so reading it where the host has none throws a ReferenceError instead of yielding `undefined`. That is the very case this function exists to handle.
|
|
23
21
|
const existingProcess = globalThis.process;
|
|
24
|
-
|
|
25
22
|
if (!existingProcess) {
|
|
26
|
-
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
27
23
|
globalThis.process = browserProcess;
|
|
28
24
|
return;
|
|
29
25
|
}
|
|
30
|
-
|
|
31
26
|
if (existingProcess.versions?.node) {
|
|
32
27
|
return;
|
|
33
28
|
}
|
|
34
|
-
|
|
35
29
|
const existingProcessRecord = existingProcess;
|
|
36
|
-
|
|
37
30
|
for (const [key, value] of Object.entries(browserProcess)) {
|
|
38
31
|
existingProcessRecord[key] ??= value;
|
|
39
32
|
}
|
|
40
|
-
|
|
41
|
-
existingProcessRecord['browser'] = true;
|
|
33
|
+
existingProcessRecord["browser"] = true;
|
|
42
34
|
}
|
|
43
35
|
|
|
44
36
|
function keepName($unknown) {
|
|
@@ -46,17 +38,13 @@ function keepName($unknown) {
|
|
|
46
38
|
}
|
|
47
39
|
|
|
48
40
|
(function initCjs() {
|
|
49
|
-
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
50
41
|
const globalThisRecord = globalThis;
|
|
51
42
|
ensureDisposeSymbols();
|
|
52
|
-
globalThisRecord[
|
|
53
|
-
globalThisRecord[
|
|
54
|
-
|
|
43
|
+
globalThisRecord["__name"] ??= keepName;
|
|
44
|
+
globalThisRecord["__extractDefault"] ??= extractDefault;
|
|
55
45
|
ensureBrowserProcess();
|
|
56
|
-
|
|
57
|
-
// eslint-disable-next-line unicorn/consistent-function-scoping -- Serialized with initCjs into the banner; at module scope it would be left out of it.
|
|
58
46
|
function extractDefault(module) {
|
|
59
|
-
return module && module.__esModule &&
|
|
47
|
+
return module && module.__esModule && "default" in module ? module.default : module;
|
|
60
48
|
}
|
|
61
49
|
})();
|
|
62
50
|
})();
|
|
@@ -65,8 +53,6 @@ function keepName($unknown) {
|
|
|
65
53
|
if (!originalRequire || originalRequire.__isPatched) {
|
|
66
54
|
return;
|
|
67
55
|
}
|
|
68
|
-
|
|
69
|
-
// eslint-disable-next-line no-global-assign, no-implicit-globals -- We need to patch the `require()` function.
|
|
70
56
|
require = Object.assign(
|
|
71
57
|
(id) => requirePatched(id),
|
|
72
58
|
originalRequire,
|
|
@@ -74,53 +60,45 @@ function keepName($unknown) {
|
|
|
74
60
|
__isPatched: true
|
|
75
61
|
}
|
|
76
62
|
);
|
|
77
|
-
|
|
78
63
|
function extractDefault(module) {
|
|
79
|
-
return module && module.__esModule &&
|
|
64
|
+
return module && module.__esModule && "default" in module ? module.default : module;
|
|
80
65
|
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
'@codemirror/tooltip']
|
|
111
|
-
);
|
|
112
|
-
|
|
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
|
+
]);
|
|
113
95
|
function requirePatched(id) {
|
|
114
96
|
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
|
|
115
97
|
return originalRequire?.(id);
|
|
116
98
|
}
|
|
117
|
-
|
|
118
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated, obsidianmd/no-global-this -- Need access to app. Actively use globalThis.
|
|
119
99
|
if (globalThis.app.isMobile) {
|
|
120
|
-
if (id ===
|
|
121
|
-
// eslint-disable-next-line no-console -- Valid usage.
|
|
100
|
+
if (id === "process" || id === "node:process") {
|
|
122
101
|
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
|
|
123
|
-
|
|
124
102
|
return process;
|
|
125
103
|
}
|
|
126
104
|
} else {
|
|
@@ -129,8 +107,6 @@ function keepName($unknown) {
|
|
|
129
107
|
return extractDefault(module);
|
|
130
108
|
}
|
|
131
109
|
}
|
|
132
|
-
|
|
133
|
-
// eslint-disable-next-line no-console -- Valid usage.
|
|
134
110
|
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
|
|
135
111
|
return {};
|
|
136
112
|
}
|
|
@@ -165,4 +141,4 @@ const SuggestModalCommandBuilder = import_modal_command_builder.ModalCommandBuil
|
|
|
165
141
|
0 && (module.exports = {
|
|
166
142
|
SuggestModalCommandBuilder
|
|
167
143
|
});
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL21vZGFscy9zdWdnZXN0LW1vZGFsLWNvbW1hbmQtYnVpbGRlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFRoZSBmb3JtZXIgaG9tZSBvZiB0aGUgYFN1Z2dlc3RNb2RhbGAgaW5zdHJ1Y3Rpb24tYmFyIGJ1aWxkZXIuXG4gKlxuICogVGhlIGJ1aWxkZXIgaXMgbm8gbG9uZ2VyIHRpZWQgdG8gYFN1Z2dlc3RNb2RhbGAgXHUyMDE0IGl0IHJlbmRlcnMgaW50byBhIHBsYWluIGBNb2RhbGAgYW5kIGludG8gYSBiYXJlXG4gKiBlbGVtZW50ICsgYFNjb3BlYCB0b28gXHUyMDE0IHNvIGl0IG1vdmVkIHRvIGBtb2RhbC1jb21tYW5kLWJ1aWxkZXIudHNgIHVuZGVyIHRoZSBob25lc3QgbmFtZVxuICoge0BsaW5rIE1vZGFsQ29tbWFuZEJ1aWxkZXJ9LiBUaGlzIG1vZHVsZSBzdGF5cyBhcyBhIGRlcHJlY2F0ZWQgYWxpYXMgc28gZXhpc3RpbmcgaW1wb3J0ZXJzIGtlZXAgd29ya2luZ1xuICogdW5jaGFuZ2VkOyBpdCByZS1leHBvcnRzIHRoZSB2ZXJ5IHNhbWUgY2xhc3MsIG5vdCBhIGNvcHkuXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBNb2RhbENvbW1hbmRCdWlsZGVyQnVpbGRPcHRpb25zIH0gZnJvbSAnLi9tb2RhbC1jb21tYW5kLWJ1aWxkZXIudHMnO1xuXG5pbXBvcnQgeyBNb2RhbENvbW1hbmRCdWlsZGVyIH0gZnJvbSAnLi9tb2RhbC1jb21tYW5kLWJ1aWxkZXIudHMnO1xuXG5leHBvcnQgdHlwZSB7XG4gIENoZWNrYm94Q29tbWFuZCxcbiAgRHJvcERvd25Db21tYW5kLFxuICBLZXlib2FyZENvbW1hbmRcbn0gZnJvbSAnLi9tb2RhbC1jb21tYW5kLWJ1aWxkZXIudHMnO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHtAbGluayBTdWdnZXN0TW9kYWxDb21tYW5kQnVpbGRlci5idWlsZH0uXG4gKlxuICogQGRlcHJlY2F0ZWQgVXNlIHtAbGluayBNb2RhbENvbW1hbmRCdWlsZGVyQnVpbGRPcHRpb25zfSBmcm9tXG4gKiBgb2JzaWRpYW4tZGV2LXV0aWxzL29ic2lkaWFuL21vZGFscy9tb2RhbC1jb21tYW5kLWJ1aWxkZXJgIGluc3RlYWQuXG4gKi9cbmV4cG9ydCB0eXBlIFN1Z2dlc3RNb2RhbENvbW1hbmRCdWlsZGVyQnVpbGRPcHRpb25zID0gTW9kYWxDb21tYW5kQnVpbGRlckJ1aWxkT3B0aW9ucztcblxuLyoqXG4gKiBCdWlsZHMgYSBgU3VnZ2VzdE1vZGFsYCdzIGluc3RydWN0aW9uIGJhci5cbiAqXG4gKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIE1vZGFsQ29tbWFuZEJ1aWxkZXJ9IGZyb21cbiAqIGBvYnNpZGlhbi1kZXYtdXRpbHMvb2JzaWRpYW4vbW9kYWxzL21vZGFsLWNvbW1hbmQtYnVpbGRlcmAgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGNvbnN0IFN1Z2dlc3RNb2RhbENvbW1hbmRCdWlsZGVyID0gTW9kYWxDb21tYW5kQnVpbGRlcjtcblxuLyoqXG4gKiBCdWlsZHMgYSBgU3VnZ2VzdE1vZGFsYCdzIGluc3RydWN0aW9uIGJhci5cbiAqXG4gKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIE1vZGFsQ29tbWFuZEJ1aWxkZXJ9IGZyb21cbiAqIGBvYnNpZGlhbi1kZXYtdXRpbHMvb2JzaWRpYW4vbW9kYWxzL21vZGFsLWNvbW1hbmQtYnVpbGRlcmAgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IHR5cGUgU3VnZ2VzdE1vZGFsQ29tbWFuZEJ1aWxkZXIgPSBNb2RhbENvbW1hbmRCdWlsZGVyO1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWFBLG1DQUFvQztBQXNCN0IsTUFBTSw2QkFBNkI7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
|
@@ -5,40 +5,32 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
5
5
|
|
|
6
6
|
(function () {
|
|
7
7
|
function ensureDisposeSymbols(symbolConstructor = Symbol) {
|
|
8
|
-
symbolConstructor.asyncDispose ??= symbolConstructor.for(
|
|
9
|
-
symbolConstructor.dispose ??= symbolConstructor.for(
|
|
8
|
+
symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
|
|
9
|
+
symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
function ensureBrowserProcess() {
|
|
13
13
|
const browserProcess = {
|
|
14
14
|
browser: true,
|
|
15
15
|
cwd() {
|
|
16
|
-
return
|
|
16
|
+
return "/";
|
|
17
17
|
},
|
|
18
18
|
env: {},
|
|
19
|
-
platform:
|
|
19
|
+
platform: "android"
|
|
20
20
|
};
|
|
21
|
-
|
|
22
|
-
// eslint-disable-next-line obsidianmd/no-global-this, unicorn/no-unnecessary-global-this -- Must stay `globalThis`-qualified: in the emitted banner a bare `process` is a free identifier, so reading it where the host has none throws a ReferenceError instead of yielding `undefined`. That is the very case this function exists to handle.
|
|
23
21
|
const existingProcess = globalThis.process;
|
|
24
|
-
|
|
25
22
|
if (!existingProcess) {
|
|
26
|
-
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
27
23
|
globalThis.process = browserProcess;
|
|
28
24
|
return;
|
|
29
25
|
}
|
|
30
|
-
|
|
31
26
|
if (existingProcess.versions?.node) {
|
|
32
27
|
return;
|
|
33
28
|
}
|
|
34
|
-
|
|
35
29
|
const existingProcessRecord = existingProcess;
|
|
36
|
-
|
|
37
30
|
for (const [key, value] of Object.entries(browserProcess)) {
|
|
38
31
|
existingProcessRecord[key] ??= value;
|
|
39
32
|
}
|
|
40
|
-
|
|
41
|
-
existingProcessRecord['browser'] = true;
|
|
33
|
+
existingProcessRecord["browser"] = true;
|
|
42
34
|
}
|
|
43
35
|
|
|
44
36
|
function keepName($unknown) {
|
|
@@ -46,17 +38,13 @@ function keepName($unknown) {
|
|
|
46
38
|
}
|
|
47
39
|
|
|
48
40
|
(function initCjs() {
|
|
49
|
-
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
50
41
|
const globalThisRecord = globalThis;
|
|
51
42
|
ensureDisposeSymbols();
|
|
52
|
-
globalThisRecord[
|
|
53
|
-
globalThisRecord[
|
|
54
|
-
|
|
43
|
+
globalThisRecord["__name"] ??= keepName;
|
|
44
|
+
globalThisRecord["__extractDefault"] ??= extractDefault;
|
|
55
45
|
ensureBrowserProcess();
|
|
56
|
-
|
|
57
|
-
// eslint-disable-next-line unicorn/consistent-function-scoping -- Serialized with initCjs into the banner; at module scope it would be left out of it.
|
|
58
46
|
function extractDefault(module) {
|
|
59
|
-
return module && module.__esModule &&
|
|
47
|
+
return module && module.__esModule && "default" in module ? module.default : module;
|
|
60
48
|
}
|
|
61
49
|
})();
|
|
62
50
|
})();
|
|
@@ -65,8 +53,6 @@ function keepName($unknown) {
|
|
|
65
53
|
if (!originalRequire || originalRequire.__isPatched) {
|
|
66
54
|
return;
|
|
67
55
|
}
|
|
68
|
-
|
|
69
|
-
// eslint-disable-next-line no-global-assign, no-implicit-globals -- We need to patch the `require()` function.
|
|
70
56
|
require = Object.assign(
|
|
71
57
|
(id) => requirePatched(id),
|
|
72
58
|
originalRequire,
|
|
@@ -74,53 +60,45 @@ function keepName($unknown) {
|
|
|
74
60
|
__isPatched: true
|
|
75
61
|
}
|
|
76
62
|
);
|
|
77
|
-
|
|
78
63
|
function extractDefault(module) {
|
|
79
|
-
return module && module.__esModule &&
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
'@codemirror/tooltip']
|
|
111
|
-
);
|
|
112
|
-
|
|
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
|
+
]);
|
|
113
95
|
function requirePatched(id) {
|
|
114
96
|
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
|
|
115
97
|
return originalRequire?.(id);
|
|
116
98
|
}
|
|
117
|
-
|
|
118
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated, obsidianmd/no-global-this -- Need access to app. Actively use globalThis.
|
|
119
99
|
if (globalThis.app.isMobile) {
|
|
120
|
-
if (id ===
|
|
121
|
-
// eslint-disable-next-line no-console -- Valid usage.
|
|
100
|
+
if (id === "process" || id === "node:process") {
|
|
122
101
|
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
|
|
123
|
-
|
|
124
102
|
return process;
|
|
125
103
|
}
|
|
126
104
|
} else {
|
|
@@ -129,8 +107,6 @@ function keepName($unknown) {
|
|
|
129
107
|
return extractDefault(module);
|
|
130
108
|
}
|
|
131
109
|
}
|
|
132
|
-
|
|
133
|
-
// eslint-disable-next-line no-console -- Valid usage.
|
|
134
110
|
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
|
|
135
111
|
return {};
|
|
136
112
|
}
|
|
@@ -255,4 +231,4 @@ function checkEntryMatches(entry, params) {
|
|
|
255
231
|
findNotePriorityRank,
|
|
256
232
|
pickHighestPriorityNotePath
|
|
257
233
|
});
|
|
258
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL25vdGUtcHJpb3JpdHkudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBEZWNpZGVzIHdoaWNoIG9mIHNldmVyYWwgbm90ZXMgcmVmZXJlbmNpbmcgdGhlIHNhbWUgYXR0YWNobWVudCBvd25zIGl0LlxuICpcbiAqIEFuIGF0dGFjaG1lbnQgcmVmZXJlbmNlZCBmcm9tIG1vcmUgdGhhbiBvbmUgbm90ZSBoYXMgbm8gc2luZ2xlIGNvcnJlY3QgaG9tZSwgc28gY29sbGVjdGluZyBpdCBmYWxsc1xuICogYmFjayB0byB3aGF0ZXZlciBgY29sbGVjdEF0dGFjaG1lbnRVc2VkQnlNdWx0aXBsZU5vdGVzTW9kZWAgc2F5cyBcdTIwMTQgc2tpcCwgY29weSwgY2FuY2VsLCBvciBhc2suIEFcbiAqIHByaW9yaXR5IGxpc3QgbGV0cyB0aGUgdXNlciBhbnN3ZXIgdGhlIHF1ZXN0aW9uIG9uY2UgaW5zdGVhZDogcHV0IGAubWRgIGFib3ZlIGAuZXhjYWxpZHJhd2AgYW5kIGFuXG4gKiBpbWFnZSBzaGFyZWQgYnkgYm90aCBsYW5kcyBpbiB0aGUgbWFya2Rvd24gbm90ZSdzIGZvbGRlci5cbiAqXG4gKiBBIHRpZSBpcyBkZWxpYmVyYXRlbHkgTk9UIHJlc29sdmVkIGhlcmUuIFR3byBub3RlcyBvZiBlcXVhbCBwcmlvcml0eSBpcyBleGFjdGx5IHRoZSBhbWJpZ3VpdHkgdGhlXG4gKiBleGlzdGluZyBtb2RlIHNldHRpbmcgYWxyZWFkeSBleGlzdHMgdG8gaGFuZGxlLCBhbmQgaW52ZW50aW5nIGEgc2Vjb25kLCBzaWxlbnQgcnVsZSBmb3IgaXQgd291bGRcbiAqIG1vdmUgYSBmaWxlIHRoZSB1c2VyIG5ldmVyIG5hbWVkLlxuICpcbiAqIFRoZSB0aWUgaXMgYWxzbyB0aGUgd2hvbGUgb2Ygd2hhdCBnZXRzIFJFUE9SVEVELiBBIG5vdGUgdGhlIGxpc3QgcmFua2VkIGJlbG93IHRoZSBiZXN0IHJhbmsgY2Fubm90XG4gKiByZXNvbHZlIHRoZSBhbWJpZ3VpdHksIHNvIGxpc3RpbmcgaXQgb25seSBhZGRzIG5vaXNlIFx1MjAxNCBhbmQgd29yc2UgaW4gYSBwaWNrZXIsIHdoZXJlIG9mZmVyaW5nIGl0XG4gKiBpbnZpdGVzIGFuIGFuc3dlciB0aGUgcHJpb3JpdHkgbGlzdCBpdHNlbGYgd291bGQgbm90IGhhdmUgZ2l2ZW4uIFRoYXQgaXMgd2h5XG4gKiB7QGxpbmsgZmlsdGVySGlnaGVzdFByaW9yaXR5Tm90ZVBhdGhzfSBleGlzdHMgYWxvbmdzaWRlIHRoZSB0d28gZnVuY3Rpb25zIHRoYXQgZGVjaWRlLlxuICovXG5cbmltcG9ydCB7IGlzVmFsaWRSZWdFeHAgfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1saWIvcmVnLWV4cCc7XG5cbmltcG9ydCB7XG4gIGNoZWNrUHJvcGVydHlFbnRyeU1hdGNoZXMsXG4gIGlzUHJvcGVydHlFbnRyeVxufSBmcm9tICcuL3Byb3BlcnR5LWVudHJ5LnRzJztcblxuY29uc3QgUkVHX0VYUF9ERUxJTUlURVIgPSAnLyc7XG5jb25zdCBFWFRFTlNJT05fUFJFRklYID0gJy4nO1xuXG4vKipcbiAqIFdoeSB0aGUgcHJpb3JpdHkgbGlzdCBkaWQgbm90IHNldHRsZSB3aGljaCBub3RlIG93bnMgYW4gYXR0YWNobWVudC5cbiAqXG4gKiBUaGUgdGhyZWUgdmFsdWVzIGFyZSBleGFjdGx5IHRoZSB0aHJlZSB3YXlzIHtAbGluayBwaWNrSGlnaGVzdFByaW9yaXR5Tm90ZVBhdGh9IChwbHVzIGl0cyBlbXB0eS1saXN0XG4gKiBndWFyZCkgY2FuIGZhaWwgdG8gbmFtZSBhIHdpbm5lciwgc28gYSBjYWxsZXIgY2FuIHRlbGwgdGhlIHVzZXIgdGhlIHJlYWwgcmVhc29uIGluc3RlYWQgb2Ygb25seVxuICogcmVwb3J0aW5nIHRoYXQgdGhlIGF0dGFjaG1lbnQgaXMgcmVmZXJlbmNlZCBieSBzZXZlcmFsIG5vdGVzLlxuICovXG5leHBvcnQgZW51bSBOb1ByaW9yaXR5V2lubmVyUmVhc29uIHtcbiAgLyoqXG4gICAqIFRoZSBwcmlvcml0eSBsaXN0IGlzIGVtcHR5IFx1MjAxNCBpdHMgZGVmYXVsdC4gTm90aGluZyB3YXMgY29uZmlndXJlZCB0byBkZWNpZGUgYmV0d2VlbiB0aGUgbm90ZXMuXG4gICAqL1xuICBFbXB0eUxpc3QgPSAnRW1wdHlMaXN0JyxcblxuICAvKipcbiAgICogVGhlIGxpc3QgaGFzIGVudHJpZXMsIGJ1dCBub25lIG9mIHRoZSByZWZlcmVuY2luZyBub3RlcyBtYXRjaGVzIGFueSBvZiB0aGVtLlxuICAgKi9cbiAgTm9NYXRjaCA9ICdOb01hdGNoJyxcblxuICAvKipcbiAgICogU2V2ZXJhbCByZWZlcmVuY2luZyBub3RlcyB0aWUgZm9yIHRoZSBiZXN0IHJhbmssIHNvIHRoZSBsaXN0IG5hbWVzIG5vIHNpbmdsZSBvd25lci5cbiAgICovXG4gIFRpZSA9ICdUaWUnXG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIGZpbHRlckhpZ2hlc3RQcmlvcml0eU5vdGVQYXRoc30uXG4gKlxuICogVGhlIHNhbWUgcXVlc3Rpb24gYXMge0BsaW5rIHBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aH0gYXNrcywgc28gZGVsaWJlcmF0ZWx5IHRoZSBzYW1lIHBhcmFtZXRlcnM6XG4gKiB0aGUgdHdvIG11c3QgYmUgYW5zd2VyZWQgZnJvbSBpZGVudGljYWwgaW5wdXRzIG9yIHRoZXkgY291bGQgZGlzYWdyZWUuXG4gKi9cbmV4cG9ydCB0eXBlIEZpbHRlckhpZ2hlc3RQcmlvcml0eU5vdGVQYXRoc1BhcmFtcyA9IFBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aFBhcmFtcztcblxuLyoqXG4gKiBQYXJhbWV0ZXJzIGZvciB7QGxpbmsgZmluZE5vUHJpb3JpdHlXaW5uZXJSZWFzb259LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZpbmROb1ByaW9yaXR5V2lubmVyUmVhc29uUGFyYW1zIGV4dGVuZHMgUGlja0hpZ2hlc3RQcmlvcml0eU5vdGVQYXRoUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSBwcmlvcml0eSBsaXN0LCBoaWdoZXN0IHByaW9yaXR5IGZpcnN0LlxuICAgKi9cbiAgcmVhZG9ubHkgZW50cmllczogcmVhZG9ubHkgc3RyaW5nW107XG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIGZpbmROb3RlUHJpb3JpdHlSYW5rfS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGaW5kTm90ZVByaW9yaXR5UmFua1BhcmFtcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJpb3JpdHkgbGlzdCwgaGlnaGVzdCBwcmlvcml0eSBmaXJzdC5cbiAgICovXG4gIHJlYWRvbmx5IGVudHJpZXM6IHJlYWRvbmx5IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgbm90ZSdzIGZyb250bWF0dGVyLCBvciBgbnVsbGAgd2hlbiBpdCBoYXMgbm9uZS5cbiAgICovXG4gIHJlYWRvbmx5IGZyb250bWF0dGVyOiBudWxsIHwgUmVhZG9ubHk8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+O1xuXG4gIC8qKlxuICAgKiBUaGUgdmF1bHQtcmVsYXRpdmUgcGF0aCBvZiB0aGUgbm90ZS5cbiAgICovXG4gIHJlYWRvbmx5IG5vdGVQYXRoOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIHBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aH0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGlja0hpZ2hlc3RQcmlvcml0eU5vdGVQYXRoUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSB2YXVsdC1yZWxhdGl2ZSBwYXRocyBvZiB0aGUgbm90ZXMgcmVmZXJlbmNpbmcgdGhlIGF0dGFjaG1lbnQuXG4gICAqL1xuICByZWFkb25seSBub3RlUGF0aHM6IHJlYWRvbmx5IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJpb3JpdHkgcmFuayBvZiBhIG5vdGUuIExvd2VyIHdpbnM7IHtAbGluayBOT19QUklPUklUWV9NQVRDSH0gbWVhbnMgdGhlIG5vdGUgbWF0Y2hlZCBub3RoaW5nLlxuICAgKlxuICAgKiBAcGFyYW0gbm90ZVBhdGggLSBUaGUgdmF1bHQtcmVsYXRpdmUgcGF0aCBvZiB0aGUgbm90ZS5cbiAgICogQHJldHVybnMgVGhlIHJhbmsuXG4gICAqL1xuICByZWFkb25seSByYW5rOiAobm90ZVBhdGg6IHN0cmluZykgPT4gbnVtYmVyO1xufVxuXG4vKipcbiAqIFRoZSByYW5rIG9mIGEgbm90ZSB0aGF0IG1hdGNoZXMgbm8gZW50cnkgaW4gdGhlIHByaW9yaXR5IGxpc3QuIEhpZ2hlciB0aGFuIGFueSByZWFsIHJhbmssIHNvIGEgbm90ZVxuICogdGhhdCBtYXRjaGVzIG5vdGhpbmcgYWx3YXlzIGxvc2VzIHRvIG9uZSB0aGF0IG1hdGNoZXMgc29tZXRoaW5nLlxuICovXG5leHBvcnQgY29uc3QgTk9fUFJJT1JJVFlfTUFUQ0ggPSBJbmZpbml0eTtcblxuLyoqXG4gKiBOYXJyb3dzIHRoZSByZWZlcmVuY2luZyBub3RlcyB0byB0aGUgb25lcyBzaGFyaW5nIHRoZSBiZXN0IHJhbmsuXG4gKlxuICogVGhvc2Ugbm90ZXMgYXJlIHRoZSB3aG9sZSBvZiB0aGUgYW1iaWd1aXR5OiBvbmUgdGhlIGxpc3QgcmFua2VkIGJlbG93IHRoZW0gY2Fubm90IHJlc29sdmUgYW55dGhpbmcsXG4gKiBzbyByZXBvcnRpbmcgaXQgb25seSBhZGRzIG5vaXNlLiBUaGlzIG1pcnJvcnMge0BsaW5rIHBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aH0ncyBjb25kaXRpb25zXG4gKiByYXRoZXIgdGhhbiByZS1kZWNpZGluZyBhbnl0aGluZywgc28gdGhlIHR3byBjYW4gb25seSBldmVyIGFncmVlIFx1MjAxNCB3aGVuZXZlciB0aGF0IG5hbWVzIGEgd2lubmVyLFxuICogdGhpcyByZXR1cm5zIGV4YWN0bHkgdGhhdCBvbmUgbm90ZS5cbiAqXG4gKiBBIGxpc3QgdGhhdCBkZWNpZGVzIG5vdGhpbmcgYXQgYWxsIFx1MjAxNCBlbXB0eSwgb3IgbWF0Y2hpbmcgbm8gbm90ZSBcdTIwMTQgcmFua3MgZXZlcnkgbm90ZVxuICoge0BsaW5rIE5PX1BSSU9SSVRZX01BVENIfSwgc28gdGhleSBhbGwgdGllIGFuZCBldmVyeSBvbmUgb2YgdGhlbSBpcyBrZXB0LiBUaGF0IGlzIHRoZSBzYW1lIGxpc3QgdGhlXG4gKiB1c2VyIHNhdyBiZWZvcmUsIHdoaWNoIGlzIGNvcnJlY3Q6IG5vdGhpbmcgaGFzIHJ1bGVkIGFueSBvZiB0aGVtIG91dC5cbiAqXG4gKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHJlZmVyZW5jaW5nIG5vdGVzIGFuZCBob3cgdG8gcmFuayBvbmUuXG4gKiBAcmV0dXJucyBUaGUgbm90ZXMgaG9sZGluZyB0aGUgYmVzdCByYW5rLCBpbiB0aGUgb3JkZXIgdGhleSB3ZXJlIGdpdmVuLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVySGlnaGVzdFByaW9yaXR5Tm90ZVBhdGhzKHBhcmFtczogRmlsdGVySGlnaGVzdFByaW9yaXR5Tm90ZVBhdGhzUGFyYW1zKTogc3RyaW5nW10ge1xuICAvLyBSYW5raW5nIGNhbiBoaXQgdGhlIHZhdWx0IGFuZCB0aGUgbWV0YWRhdGEgY2FjaGUsIHNvIGVhY2ggbm90ZSBpcyByYW5rZWQgb25jZSBhbmQgY2FycmllZC5cbiAgY29uc3QgcmFua2VkTm90ZVBhdGhzID0gcGFyYW1zLm5vdGVQYXRocy5tYXAoKG5vdGVQYXRoKSA9PiAoe1xuICAgIG5vdGVQYXRoLFxuICAgIHJhbms6IHBhcmFtcy5yYW5rKG5vdGVQYXRoKVxuICB9KSk7XG5cbiAgbGV0IGJlc3RSYW5rID0gTk9fUFJJT1JJVFlfTUFUQ0g7XG4gIGZvciAoY29uc3QgcmFua2VkIG9mIHJhbmtlZE5vdGVQYXRocykge1xuICAgIGlmIChyYW5rZWQucmFuayA8IGJlc3RSYW5rKSB7XG4gICAgICBiZXN0UmFuayA9IHJhbmtlZC5yYW5rO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiByYW5rZWROb3RlUGF0aHNcbiAgICAuZmlsdGVyKChyYW5rZWQpID0+IHJhbmtlZC5yYW5rID09PSBiZXN0UmFuaylcbiAgICAubWFwKChyYW5rZWQpID0+IHJhbmtlZC5ub3RlUGF0aCk7XG59XG5cbi8qKlxuICogRXhwbGFpbnMgd2h5IHRoZSBwcmlvcml0eSBsaXN0IG5hbWVkIG5vIG93bmVyIGZvciBhbiBhdHRhY2htZW50LlxuICpcbiAqIE9ubHkgbWVhbmluZ2Z1bCBvbmNlIHtAbGluayBwaWNrSGlnaGVzdFByaW9yaXR5Tm90ZVBhdGh9IGhhcyByZXR1cm5lZCBgbnVsbGAgKG9yIHRoZSBsaXN0IHdhcyBlbXB0eVxuICogYW5kIHdhcyBuZXZlciBjb25zdWx0ZWQpOyBpdCBtaXJyb3JzIHRoYXQgZnVuY3Rpb24ncyBvd24gY29uZGl0aW9ucyByYXRoZXIgdGhhbiByZS1kZWNpZGluZ1xuICogYW55dGhpbmcsIHNvIHRoZSB0d28gY2FuIG9ubHkgZXZlciBhZ3JlZS5cbiAqXG4gKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHByaW9yaXR5IGxpc3QsIHRoZSByZWZlcmVuY2luZyBub3RlcywgYW5kIGhvdyB0byByYW5rIG9uZS5cbiAqIEByZXR1cm5zIFdoaWNoIG9mIHRoZSB0aHJlZSB3YXlzIHRoZSBsaXN0IGZhaWxlZCB0byBzZXR0bGUgaXQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaW5kTm9Qcmlvcml0eVdpbm5lclJlYXNvbihwYXJhbXM6IEZpbmROb1ByaW9yaXR5V2lubmVyUmVhc29uUGFyYW1zKTogTm9Qcmlvcml0eVdpbm5lclJlYXNvbiB7XG4gIGlmIChwYXJhbXMuZW50cmllcy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gTm9Qcmlvcml0eVdpbm5lclJlYXNvbi5FbXB0eUxpc3Q7XG4gIH1cblxuICBsZXQgYmVzdFJhbmsgPSBOT19QUklPUklUWV9NQVRDSDtcbiAgZm9yIChjb25zdCBub3RlUGF0aCBvZiBwYXJhbXMubm90ZVBhdGhzKSB7XG4gICAgY29uc3QgY3VycmVudFJhbmsgPSBwYXJhbXMucmFuayhub3RlUGF0aCk7XG4gICAgaWYgKGN1cnJlbnRSYW5rIDwgYmVzdFJhbmspIHtcbiAgICAgIGJlc3RSYW5rID0gY3VycmVudFJhbms7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGJlc3RSYW5rID09PSBOT19QUklPUklUWV9NQVRDSCA/IE5vUHJpb3JpdHlXaW5uZXJSZWFzb24uTm9NYXRjaCA6IE5vUHJpb3JpdHlXaW5uZXJSZWFzb24uVGllO1xufVxuXG4vKipcbiAqIEZpbmRzIGhvdyBoaWdobHkgYSBub3RlIHJhbmtzIGluIHRoZSBwcmlvcml0eSBsaXN0LlxuICpcbiAqIEFuIGVudHJ5IG1hdGNoZXMgaW4gb25lIG9mIGZvdXIgd2F5cywgcGlja2VkIGJ5IGl0cyBzaGFwZSBzbyB0aGF0IG9uZSBsaXN0IGNhbiBleHByZXNzIGFsbCBvZiB0aGVtOlxuICpcbiAqIC0gYHByb3BlcnR5Om5hbWVgIFx1MjAxNCB0aGUgbm90ZSdzIGZyb250bWF0dGVyIGhhcyBgbmFtZWA7IGBwcm9wZXJ0eTpuYW1lPXZhbHVlYCBhbHNvIGNvbXBhcmVzIHRoZSB2YWx1ZS5cbiAqIC0gYC9yZWd1bGFyIGV4cHJlc3Npb24vYCBcdTIwMTQgdGVzdGVkIGFnYWluc3QgdGhlIG5vdGUncyBwYXRoLlxuICogLSBgLmV4dGAgXHUyMDE0IHRoZSBub3RlJ3MgcGF0aCBlbmRzIHdpdGggaXQsIGNhc2UtaW5zZW5zaXRpdmVseS4gVGhpcyBpcyB0aGUgZm9ybSB0aGUgcmVxdWVzdCBhc2tlZCBmb3IuXG4gKiAtIGFueXRoaW5nIGVsc2UgXHUyMDE0IGEgcGF0aCBmcm9tIHRoZSB2YXVsdCByb290LCBtYXRjaGluZyB0aGUgdm9jYWJ1bGFyeSBvZiB0aGUgaW5jbHVkZSAvIGV4Y2x1ZGVcbiAqICAgcGF0aCBzZXR0aW5ncy5cbiAqXG4gKiBXaGVuIGEgbm90ZSBtYXRjaGVzIHNldmVyYWwgZW50cmllcyB0aGUgKipsb25nZXN0Kiogb25lIGRlY2lkZXMgaXRzIHJhbmssIHNvIHRoZSBtb3N0IHNwZWNpZmljXG4gKiBlbnRyeSB3aW5zIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGxpc3QgaXMgbGVmdCB0byBleHByZXNzIHByaW9yaXR5LiBXaXRob3V0IHRoaXMgYW4gRXhjYWxpZHJhdyBub3RlXG4gKiBjb3VsZCBuZXZlciByYW5rIGJlbG93IGEgcGxhaW4gbWFya2Rvd24gb25lOiBgZHJhd2luZy5leGNhbGlkcmF3Lm1kYCBhbHNvIGVuZHMgd2l0aCBgLm1kYCwgc29cbiAqIGAubWRgIGFib3ZlIGAuZXhjYWxpZHJhdy5tZGAgXHUyMDE0IHRoZSB2ZXJ5IGV4YW1wbGUgdGhlIHJlcXVlc3QgaXMgYnVpbHQgb24gXHUyMDE0IHdvdWxkIHRpZSBpbnN0ZWFkIG9mXG4gKiByZXNvbHZpbmcuIEVxdWFsLWxlbmd0aCBtYXRjaGVzIGZhbGwgdG8gdGhlIGVhcmxpZXIgZW50cnkuXG4gKlxuICogQHBhcmFtIHBhcmFtcyAtIFRoZSBwYXJhbWV0ZXJzIGZvciBmaW5kaW5nIHRoZSByYW5rLlxuICogQHJldHVybnMgVGhlIGluZGV4IG9mIHRoZSBtb3N0IHNwZWNpZmljIG1hdGNoaW5nIGVudHJ5LCBvciB7QGxpbmsgTk9fUFJJT1JJVFlfTUFUQ0h9IHdoZW4gbm9uZSBtYXRjaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbmROb3RlUHJpb3JpdHlSYW5rKHBhcmFtczogRmluZE5vdGVQcmlvcml0eVJhbmtQYXJhbXMpOiBudW1iZXIge1xuICBsZXQgYmVzdFJhbmsgPSBOT19QUklPUklUWV9NQVRDSDtcbiAgbGV0IGJlc3RMZW5ndGggPSAtMTtcblxuICBmb3IgKGNvbnN0IFtpbmRleCwgZW50cnldIG9mIHBhcmFtcy5lbnRyaWVzLmVudHJpZXMoKSkge1xuICAgIC8vIEEgc2hvcnRlciBlbnRyeSBjYW4gbmV2ZXIgYmVhdCBvbmUgdGhhdCBhbHJlYWR5IG1hdGNoZWQsIHNvIGl0IGlzIG5vdCB3b3J0aCB0ZXN0aW5nLlxuICAgIGlmICgoZW50cnkubGVuZ3RoIDw9IGJlc3RMZW5ndGgpIHx8ICFjaGVja0VudHJ5TWF0Y2hlcyhlbnRyeSwgcGFyYW1zKSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgYmVzdFJhbmsgPSBpbmRleDtcbiAgICBiZXN0TGVuZ3RoID0gZW50cnkubGVuZ3RoO1xuICB9XG5cbiAgcmV0dXJuIGJlc3RSYW5rO1xufVxuXG4vKipcbiAqIFBpY2tzIHRoZSBzaW5nbGUgaGlnaGVzdC1wcmlvcml0eSBub3RlIGFtb25nIHRob3NlIHJlZmVyZW5jaW5nIGFuIGF0dGFjaG1lbnQuXG4gKlxuICogUmV0dXJucyBgbnVsbGAgd2hlbiB0aGUgYmVzdCByYW5rIGlzIHNoYXJlZCBieSBtb3JlIHRoYW4gb25lIG5vdGUsIG9yIHdoZW4gbm8gbm90ZSBtYXRjaGVzXG4gKiBhbnl0aGluZy4gQm90aCBhcmUgdGllcywgYW5kIGEgdGllIGlzIHRoZSBjYWxsZXIncyBwcm9ibGVtOiBpdCBpcyB3aGF0IHRoZSBtdWx0aXBsZS1ub3RlcyBtb2RlXG4gKiBzZXR0aW5nIGlzIGZvci5cbiAqXG4gKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgZm9yIHBpY2tpbmcgdGhlIG5vdGUuXG4gKiBAcmV0dXJucyBUaGUgd2lubmluZyBub3RlJ3MgcGF0aCwgb3IgYG51bGxgIHdoZW4gdGhlcmUgaXMgbm8gc2luZ2xlIHdpbm5lci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aChwYXJhbXM6IFBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aFBhcmFtcyk6IG51bGwgfCBzdHJpbmcge1xuICBsZXQgYmVzdFJhbmsgPSBOT19QUklPUklUWV9NQVRDSDtcbiAgbGV0IGJlc3ROb3RlUGF0aDogbnVsbCB8IHN0cmluZyA9IG51bGw7XG4gIGxldCBiZXN0Q291bnQgPSAwO1xuXG4gIGZvciAoY29uc3Qgbm90ZVBhdGggb2YgcGFyYW1zLm5vdGVQYXRocykge1xuICAgIGNvbnN0IGN1cnJlbnRSYW5rID0gcGFyYW1zLnJhbmsobm90ZVBhdGgpO1xuICAgIGlmIChjdXJyZW50UmFuayA8IGJlc3RSYW5rKSB7XG4gICAgICBiZXN0UmFuayA9IGN1cnJlbnRSYW5rO1xuICAgICAgYmVzdE5vdGVQYXRoID0gbm90ZVBhdGg7XG4gICAgICBiZXN0Q291bnQgPSAxO1xuICAgIH0gZWxzZSBpZiAoY3VycmVudFJhbmsgPT09IGJlc3RSYW5rKSB7XG4gICAgICBiZXN0Q291bnQrKztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gYmVzdENvdW50ICE9PSAxIHx8IGJlc3RSYW5rID09PSBOT19QUklPUklUWV9NQVRDSCA/IG51bGwgOiBiZXN0Tm90ZVBhdGg7XG59XG5cbmZ1bmN0aW9uIGNoZWNrRW50cnlNYXRjaGVzKGVudHJ5OiBzdHJpbmcsIHBhcmFtczogRmluZE5vdGVQcmlvcml0eVJhbmtQYXJhbXMpOiBib29sZWFuIHtcbiAgaWYgKCFlbnRyeSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGlmIChpc1Byb3BlcnR5RW50cnkoZW50cnkpKSB7XG4gICAgcmV0dXJuIGNoZWNrUHJvcGVydHlFbnRyeU1hdGNoZXMoeyBlbnRyeSwgZnJvbnRtYXR0ZXI6IHBhcmFtcy5mcm9udG1hdHRlciB9KTtcbiAgfVxuXG4gIGlmIChlbnRyeS5sZW5ndGggPiAxICYmIGVudHJ5LnN0YXJ0c1dpdGgoUkVHX0VYUF9ERUxJTUlURVIpICYmIGVudHJ5LmVuZHNXaXRoKFJFR19FWFBfREVMSU1JVEVSKSkge1xuICAgIGNvbnN0IHNvdXJjZSA9IGVudHJ5LnNsaWNlKDEsIC0xKTtcbiAgICAvLyBBbiB1bnBhcnNlYWJsZSBleHByZXNzaW9uIG11c3Qgbm90IHRocm93IG1pZC1jb2xsZWN0aW9uOyBpdCBzaW1wbHkgbWF0Y2hlcyBub3RoaW5nLlxuICAgIHJldHVybiBpc1ZhbGlkUmVnRXhwKHNvdXJjZSkgJiYgbmV3IFJlZ0V4cChzb3VyY2UpLnRlc3QocGFyYW1zLm5vdGVQYXRoKTtcbiAgfVxuXG4gIGlmIChlbnRyeS5zdGFydHNXaXRoKEVYVEVOU0lPTl9QUkVGSVgpKSB7XG4gICAgcmV0dXJuIHBhcmFtcy5ub3RlUGF0aC50b0xvd2VyQ2FzZSgpLmVuZHNXaXRoKGVudHJ5LnRvTG93ZXJDYXNlKCkpO1xuICB9XG5cbiAgY29uc3QgcHJlZml4ID0gZW50cnkuZW5kc1dpdGgoJy8nKSA/IGVudHJ5IDogYCR7ZW50cnl9L2A7XG4gIHJldHVybiBwYXJhbXMubm90ZVBhdGggPT09IGVudHJ5IHx8IHBhcmFtcy5ub3RlUGF0aC5zdGFydHNXaXRoKHByZWZpeCk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQW9CQSxxQkFBOEI7QUFFOUIsNEJBR087QUFFUCxNQUFNLG9CQUFvQjtBQUMxQixNQUFNLG1CQUFtQjtBQVNsQixJQUFLLHlCQUFMLGtCQUFLQSw0QkFBTDtBQUlMLEVBQUFBLHdCQUFBLGVBQVk7QUFLWixFQUFBQSx3QkFBQSxhQUFVO0FBS1YsRUFBQUEsd0JBQUEsU0FBTTtBQWRJLFNBQUFBO0FBQUEsR0FBQTtBQTZFTCxNQUFNLG9CQUFvQjtBQWlCMUIsU0FBUywrQkFBK0IsUUFBd0Q7QUFFckcsUUFBTSxrQkFBa0IsT0FBTyxVQUFVLElBQUksQ0FBQyxjQUFjO0FBQUEsSUFDMUQ7QUFBQSxJQUNBLE1BQU0sT0FBTyxLQUFLLFFBQVE7QUFBQSxFQUM1QixFQUFFO0FBRUYsTUFBSSxXQUFXO0FBQ2YsYUFBVyxVQUFVLGlCQUFpQjtBQUNwQyxRQUFJLE9BQU8sT0FBTyxVQUFVO0FBQzFCLGlCQUFXLE9BQU87QUFBQSxJQUNwQjtBQUFBLEVBQ0Y7QUFFQSxTQUFPLGdCQUNKLE9BQU8sQ0FBQyxXQUFXLE9BQU8sU0FBUyxRQUFRLEVBQzNDLElBQUksQ0FBQyxXQUFXLE9BQU8sUUFBUTtBQUNwQztBQVlPLFNBQVMsMkJBQTJCLFFBQWtFO0FBQzNHLE1BQUksT0FBTyxRQUFRLFdBQVcsR0FBRztBQUMvQixXQUFPO0FBQUEsRUFDVDtBQUVBLE1BQUksV0FBVztBQUNmLGFBQVcsWUFBWSxPQUFPLFdBQVc7QUFDdkMsVUFBTSxjQUFjLE9BQU8sS0FBSyxRQUFRO0FBQ3hDLFFBQUksY0FBYyxVQUFVO0FBQzFCLGlCQUFXO0FBQUEsSUFDYjtBQUFBLEVBQ0Y7QUFFQSxTQUFPLGFBQWEsb0JBQW9CLDBCQUFpQztBQUMzRTtBQXNCTyxTQUFTLHFCQUFxQixRQUE0QztBQUMvRSxNQUFJLFdBQVc7QUFDZixNQUFJLGFBQWE7QUFFakIsYUFBVyxDQUFDLE9BQU8sS0FBSyxLQUFLLE9BQU8sUUFBUSxRQUFRLEdBQUc7QUFFckQsUUFBSyxNQUFNLFVBQVUsY0FBZSxDQUFDLGtCQUFrQixPQUFPLE1BQU0sR0FBRztBQUNyRTtBQUFBLElBQ0Y7QUFFQSxlQUFXO0FBQ1gsaUJBQWEsTUFBTTtBQUFBLEVBQ3JCO0FBRUEsU0FBTztBQUNUO0FBWU8sU0FBUyw0QkFBNEIsUUFBMEQ7QUFDcEcsTUFBSSxXQUFXO0FBQ2YsTUFBSSxlQUE4QjtBQUNsQyxNQUFJLFlBQVk7QUFFaEIsYUFBVyxZQUFZLE9BQU8sV0FBVztBQUN2QyxVQUFNLGNBQWMsT0FBTyxLQUFLLFFBQVE7QUFDeEMsUUFBSSxjQUFjLFVBQVU7QUFDMUIsaUJBQVc7QUFDWCxxQkFBZTtBQUNmLGtCQUFZO0FBQUEsSUFDZCxXQUFXLGdCQUFnQixVQUFVO0FBQ25DO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFFQSxTQUFPLGNBQWMsS0FBSyxhQUFhLG9CQUFvQixPQUFPO0FBQ3BFO0FBRUEsU0FBUyxrQkFBa0IsT0FBZSxRQUE2QztBQUNyRixNQUFJLENBQUMsT0FBTztBQUNWLFdBQU87QUFBQSxFQUNUO0FBRUEsVUFBSSx1Q0FBZ0IsS0FBSyxHQUFHO0FBQzFCLGVBQU8saURBQTBCLEVBQUUsT0FBTyxhQUFhLE9BQU8sWUFBWSxDQUFDO0FBQUEsRUFDN0U7QUFFQSxNQUFJLE1BQU0sU0FBUyxLQUFLLE1BQU0sV0FBVyxpQkFBaUIsS0FBSyxNQUFNLFNBQVMsaUJBQWlCLEdBQUc7QUFDaEcsVUFBTSxTQUFTLE1BQU0sTUFBTSxHQUFHLEVBQUU7QUFFaEMsZUFBTyw4QkFBYyxNQUFNLEtBQUssSUFBSSxPQUFPLE1BQU0sRUFBRSxLQUFLLE9BQU8sUUFBUTtBQUFBLEVBQ3pFO0FBRUEsTUFBSSxNQUFNLFdBQVcsZ0JBQWdCLEdBQUc7QUFDdEMsV0FBTyxPQUFPLFNBQVMsWUFBWSxFQUFFLFNBQVMsTUFBTSxZQUFZLENBQUM7QUFBQSxFQUNuRTtBQUVBLFFBQU0sU0FBUyxNQUFNLFNBQVMsR0FBRyxJQUFJLFFBQVEsR0FBRyxLQUFLO0FBQ3JELFNBQU8sT0FBTyxhQUFhLFNBQVMsT0FBTyxTQUFTLFdBQVcsTUFBTTtBQUN2RTsiLAogICJuYW1lcyI6IFsiTm9Qcmlvcml0eVdpbm5lclJlYXNvbiJdCn0K
|
|
234
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL25vdGUtcHJpb3JpdHkudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBEZWNpZGVzIHdoaWNoIG9mIHNldmVyYWwgbm90ZXMgcmVmZXJlbmNpbmcgdGhlIHNhbWUgYXR0YWNobWVudCBvd25zIGl0LlxuICpcbiAqIEFuIGF0dGFjaG1lbnQgcmVmZXJlbmNlZCBmcm9tIG1vcmUgdGhhbiBvbmUgbm90ZSBoYXMgbm8gc2luZ2xlIGNvcnJlY3QgaG9tZSwgc28gY29sbGVjdGluZyBpdCBmYWxsc1xuICogYmFjayB0byB3aGF0ZXZlciBgY29sbGVjdEF0dGFjaG1lbnRVc2VkQnlNdWx0aXBsZU5vdGVzTW9kZWAgc2F5cyBcdTIwMTQgc2tpcCwgY29weSwgY2FuY2VsLCBvciBhc2suIEFcbiAqIHByaW9yaXR5IGxpc3QgbGV0cyB0aGUgdXNlciBhbnN3ZXIgdGhlIHF1ZXN0aW9uIG9uY2UgaW5zdGVhZDogcHV0IGAubWRgIGFib3ZlIGAuZXhjYWxpZHJhd2AgYW5kIGFuXG4gKiBpbWFnZSBzaGFyZWQgYnkgYm90aCBsYW5kcyBpbiB0aGUgbWFya2Rvd24gbm90ZSdzIGZvbGRlci5cbiAqXG4gKiBBIHRpZSBpcyBkZWxpYmVyYXRlbHkgTk9UIHJlc29sdmVkIGhlcmUuIFR3byBub3RlcyBvZiBlcXVhbCBwcmlvcml0eSBpcyBleGFjdGx5IHRoZSBhbWJpZ3VpdHkgdGhlXG4gKiBleGlzdGluZyBtb2RlIHNldHRpbmcgYWxyZWFkeSBleGlzdHMgdG8gaGFuZGxlLCBhbmQgaW52ZW50aW5nIGEgc2Vjb25kLCBzaWxlbnQgcnVsZSBmb3IgaXQgd291bGRcbiAqIG1vdmUgYSBmaWxlIHRoZSB1c2VyIG5ldmVyIG5hbWVkLlxuICpcbiAqIFRoZSB0aWUgaXMgYWxzbyB0aGUgd2hvbGUgb2Ygd2hhdCBnZXRzIFJFUE9SVEVELiBBIG5vdGUgdGhlIGxpc3QgcmFua2VkIGJlbG93IHRoZSBiZXN0IHJhbmsgY2Fubm90XG4gKiByZXNvbHZlIHRoZSBhbWJpZ3VpdHksIHNvIGxpc3RpbmcgaXQgb25seSBhZGRzIG5vaXNlIFx1MjAxNCBhbmQgd29yc2UgaW4gYSBwaWNrZXIsIHdoZXJlIG9mZmVyaW5nIGl0XG4gKiBpbnZpdGVzIGFuIGFuc3dlciB0aGUgcHJpb3JpdHkgbGlzdCBpdHNlbGYgd291bGQgbm90IGhhdmUgZ2l2ZW4uIFRoYXQgaXMgd2h5XG4gKiB7QGxpbmsgZmlsdGVySGlnaGVzdFByaW9yaXR5Tm90ZVBhdGhzfSBleGlzdHMgYWxvbmdzaWRlIHRoZSB0d28gZnVuY3Rpb25zIHRoYXQgZGVjaWRlLlxuICovXG5cbmltcG9ydCB7IGlzVmFsaWRSZWdFeHAgfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1saWIvcmVnLWV4cCc7XG5cbmltcG9ydCB7XG4gIGNoZWNrUHJvcGVydHlFbnRyeU1hdGNoZXMsXG4gIGlzUHJvcGVydHlFbnRyeVxufSBmcm9tICcuL3Byb3BlcnR5LWVudHJ5LnRzJztcblxuY29uc3QgUkVHX0VYUF9ERUxJTUlURVIgPSAnLyc7XG5jb25zdCBFWFRFTlNJT05fUFJFRklYID0gJy4nO1xuXG4vKipcbiAqIFdoeSB0aGUgcHJpb3JpdHkgbGlzdCBkaWQgbm90IHNldHRsZSB3aGljaCBub3RlIG93bnMgYW4gYXR0YWNobWVudC5cbiAqXG4gKiBUaGUgdGhyZWUgdmFsdWVzIGFyZSBleGFjdGx5IHRoZSB0aHJlZSB3YXlzIHtAbGluayBwaWNrSGlnaGVzdFByaW9yaXR5Tm90ZVBhdGh9IChwbHVzIGl0cyBlbXB0eS1saXN0XG4gKiBndWFyZCkgY2FuIGZhaWwgdG8gbmFtZSBhIHdpbm5lciwgc28gYSBjYWxsZXIgY2FuIHRlbGwgdGhlIHVzZXIgdGhlIHJlYWwgcmVhc29uIGluc3RlYWQgb2Ygb25seVxuICogcmVwb3J0aW5nIHRoYXQgdGhlIGF0dGFjaG1lbnQgaXMgcmVmZXJlbmNlZCBieSBzZXZlcmFsIG5vdGVzLlxuICovXG5leHBvcnQgZW51bSBOb1ByaW9yaXR5V2lubmVyUmVhc29uIHtcbiAgLyoqXG4gICAqIFRoZSBwcmlvcml0eSBsaXN0IGlzIGVtcHR5IFx1MjAxNCBpdHMgZGVmYXVsdC4gTm90aGluZyB3YXMgY29uZmlndXJlZCB0byBkZWNpZGUgYmV0d2VlbiB0aGUgbm90ZXMuXG4gICAqL1xuICBFbXB0eUxpc3QgPSAnRW1wdHlMaXN0JyxcblxuICAvKipcbiAgICogVGhlIGxpc3QgaGFzIGVudHJpZXMsIGJ1dCBub25lIG9mIHRoZSByZWZlcmVuY2luZyBub3RlcyBtYXRjaGVzIGFueSBvZiB0aGVtLlxuICAgKi9cbiAgTm9NYXRjaCA9ICdOb01hdGNoJyxcblxuICAvKipcbiAgICogU2V2ZXJhbCByZWZlcmVuY2luZyBub3RlcyB0aWUgZm9yIHRoZSBiZXN0IHJhbmssIHNvIHRoZSBsaXN0IG5hbWVzIG5vIHNpbmdsZSBvd25lci5cbiAgICovXG4gIFRpZSA9ICdUaWUnXG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIGZpbHRlckhpZ2hlc3RQcmlvcml0eU5vdGVQYXRoc30uXG4gKlxuICogVGhlIHNhbWUgcXVlc3Rpb24gYXMge0BsaW5rIHBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aH0gYXNrcywgc28gZGVsaWJlcmF0ZWx5IHRoZSBzYW1lIHBhcmFtZXRlcnM6XG4gKiB0aGUgdHdvIG11c3QgYmUgYW5zd2VyZWQgZnJvbSBpZGVudGljYWwgaW5wdXRzIG9yIHRoZXkgY291bGQgZGlzYWdyZWUuXG4gKi9cbmV4cG9ydCB0eXBlIEZpbHRlckhpZ2hlc3RQcmlvcml0eU5vdGVQYXRoc1BhcmFtcyA9IFBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aFBhcmFtcztcblxuLyoqXG4gKiBQYXJhbWV0ZXJzIGZvciB7QGxpbmsgZmluZE5vUHJpb3JpdHlXaW5uZXJSZWFzb259LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZpbmROb1ByaW9yaXR5V2lubmVyUmVhc29uUGFyYW1zIGV4dGVuZHMgUGlja0hpZ2hlc3RQcmlvcml0eU5vdGVQYXRoUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSBwcmlvcml0eSBsaXN0LCBoaWdoZXN0IHByaW9yaXR5IGZpcnN0LlxuICAgKi9cbiAgcmVhZG9ubHkgZW50cmllczogcmVhZG9ubHkgc3RyaW5nW107XG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIGZpbmROb3RlUHJpb3JpdHlSYW5rfS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGaW5kTm90ZVByaW9yaXR5UmFua1BhcmFtcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJpb3JpdHkgbGlzdCwgaGlnaGVzdCBwcmlvcml0eSBmaXJzdC5cbiAgICovXG4gIHJlYWRvbmx5IGVudHJpZXM6IHJlYWRvbmx5IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgbm90ZSdzIGZyb250bWF0dGVyLCBvciBgbnVsbGAgd2hlbiBpdCBoYXMgbm9uZS5cbiAgICovXG4gIHJlYWRvbmx5IGZyb250bWF0dGVyOiBudWxsIHwgUmVhZG9ubHk8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+O1xuXG4gIC8qKlxuICAgKiBUaGUgdmF1bHQtcmVsYXRpdmUgcGF0aCBvZiB0aGUgbm90ZS5cbiAgICovXG4gIHJlYWRvbmx5IG5vdGVQYXRoOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIHBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aH0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGlja0hpZ2hlc3RQcmlvcml0eU5vdGVQYXRoUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSB2YXVsdC1yZWxhdGl2ZSBwYXRocyBvZiB0aGUgbm90ZXMgcmVmZXJlbmNpbmcgdGhlIGF0dGFjaG1lbnQuXG4gICAqL1xuICByZWFkb25seSBub3RlUGF0aHM6IHJlYWRvbmx5IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJpb3JpdHkgcmFuayBvZiBhIG5vdGUuIExvd2VyIHdpbnM7IHtAbGluayBOT19QUklPUklUWV9NQVRDSH0gbWVhbnMgdGhlIG5vdGUgbWF0Y2hlZCBub3RoaW5nLlxuICAgKlxuICAgKiBAcGFyYW0gbm90ZVBhdGggLSBUaGUgdmF1bHQtcmVsYXRpdmUgcGF0aCBvZiB0aGUgbm90ZS5cbiAgICogQHJldHVybnMgVGhlIHJhbmsuXG4gICAqL1xuICByZWFkb25seSByYW5rOiAobm90ZVBhdGg6IHN0cmluZykgPT4gbnVtYmVyO1xufVxuXG4vKipcbiAqIFRoZSByYW5rIG9mIGEgbm90ZSB0aGF0IG1hdGNoZXMgbm8gZW50cnkgaW4gdGhlIHByaW9yaXR5IGxpc3QuIEhpZ2hlciB0aGFuIGFueSByZWFsIHJhbmssIHNvIGEgbm90ZVxuICogdGhhdCBtYXRjaGVzIG5vdGhpbmcgYWx3YXlzIGxvc2VzIHRvIG9uZSB0aGF0IG1hdGNoZXMgc29tZXRoaW5nLlxuICovXG5leHBvcnQgY29uc3QgTk9fUFJJT1JJVFlfTUFUQ0ggPSBJbmZpbml0eTtcblxuLyoqXG4gKiBOYXJyb3dzIHRoZSByZWZlcmVuY2luZyBub3RlcyB0byB0aGUgb25lcyBzaGFyaW5nIHRoZSBiZXN0IHJhbmsuXG4gKlxuICogVGhvc2Ugbm90ZXMgYXJlIHRoZSB3aG9sZSBvZiB0aGUgYW1iaWd1aXR5OiBvbmUgdGhlIGxpc3QgcmFua2VkIGJlbG93IHRoZW0gY2Fubm90IHJlc29sdmUgYW55dGhpbmcsXG4gKiBzbyByZXBvcnRpbmcgaXQgb25seSBhZGRzIG5vaXNlLiBUaGlzIG1pcnJvcnMge0BsaW5rIHBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aH0ncyBjb25kaXRpb25zXG4gKiByYXRoZXIgdGhhbiByZS1kZWNpZGluZyBhbnl0aGluZywgc28gdGhlIHR3byBjYW4gb25seSBldmVyIGFncmVlIFx1MjAxNCB3aGVuZXZlciB0aGF0IG5hbWVzIGEgd2lubmVyLFxuICogdGhpcyByZXR1cm5zIGV4YWN0bHkgdGhhdCBvbmUgbm90ZS5cbiAqXG4gKiBBIGxpc3QgdGhhdCBkZWNpZGVzIG5vdGhpbmcgYXQgYWxsIFx1MjAxNCBlbXB0eSwgb3IgbWF0Y2hpbmcgbm8gbm90ZSBcdTIwMTQgcmFua3MgZXZlcnkgbm90ZVxuICoge0BsaW5rIE5PX1BSSU9SSVRZX01BVENIfSwgc28gdGhleSBhbGwgdGllIGFuZCBldmVyeSBvbmUgb2YgdGhlbSBpcyBrZXB0LiBUaGF0IGlzIHRoZSBzYW1lIGxpc3QgdGhlXG4gKiB1c2VyIHNhdyBiZWZvcmUsIHdoaWNoIGlzIGNvcnJlY3Q6IG5vdGhpbmcgaGFzIHJ1bGVkIGFueSBvZiB0aGVtIG91dC5cbiAqXG4gKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHJlZmVyZW5jaW5nIG5vdGVzIGFuZCBob3cgdG8gcmFuayBvbmUuXG4gKiBAcmV0dXJucyBUaGUgbm90ZXMgaG9sZGluZyB0aGUgYmVzdCByYW5rLCBpbiB0aGUgb3JkZXIgdGhleSB3ZXJlIGdpdmVuLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVySGlnaGVzdFByaW9yaXR5Tm90ZVBhdGhzKHBhcmFtczogRmlsdGVySGlnaGVzdFByaW9yaXR5Tm90ZVBhdGhzUGFyYW1zKTogc3RyaW5nW10ge1xuICAvLyBSYW5raW5nIGNhbiBoaXQgdGhlIHZhdWx0IGFuZCB0aGUgbWV0YWRhdGEgY2FjaGUsIHNvIGVhY2ggbm90ZSBpcyByYW5rZWQgb25jZSBhbmQgY2FycmllZC5cbiAgY29uc3QgcmFua2VkTm90ZVBhdGhzID0gcGFyYW1zLm5vdGVQYXRocy5tYXAoKG5vdGVQYXRoKSA9PiAoe1xuICAgIG5vdGVQYXRoLFxuICAgIHJhbms6IHBhcmFtcy5yYW5rKG5vdGVQYXRoKVxuICB9KSk7XG5cbiAgbGV0IGJlc3RSYW5rID0gTk9fUFJJT1JJVFlfTUFUQ0g7XG4gIGZvciAoY29uc3QgcmFua2VkIG9mIHJhbmtlZE5vdGVQYXRocykge1xuICAgIGlmIChyYW5rZWQucmFuayA8IGJlc3RSYW5rKSB7XG4gICAgICBiZXN0UmFuayA9IHJhbmtlZC5yYW5rO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiByYW5rZWROb3RlUGF0aHNcbiAgICAuZmlsdGVyKChyYW5rZWQpID0+IHJhbmtlZC5yYW5rID09PSBiZXN0UmFuaylcbiAgICAubWFwKChyYW5rZWQpID0+IHJhbmtlZC5ub3RlUGF0aCk7XG59XG5cbi8qKlxuICogRXhwbGFpbnMgd2h5IHRoZSBwcmlvcml0eSBsaXN0IG5hbWVkIG5vIG93bmVyIGZvciBhbiBhdHRhY2htZW50LlxuICpcbiAqIE9ubHkgbWVhbmluZ2Z1bCBvbmNlIHtAbGluayBwaWNrSGlnaGVzdFByaW9yaXR5Tm90ZVBhdGh9IGhhcyByZXR1cm5lZCBgbnVsbGAgKG9yIHRoZSBsaXN0IHdhcyBlbXB0eVxuICogYW5kIHdhcyBuZXZlciBjb25zdWx0ZWQpOyBpdCBtaXJyb3JzIHRoYXQgZnVuY3Rpb24ncyBvd24gY29uZGl0aW9ucyByYXRoZXIgdGhhbiByZS1kZWNpZGluZ1xuICogYW55dGhpbmcsIHNvIHRoZSB0d28gY2FuIG9ubHkgZXZlciBhZ3JlZS5cbiAqXG4gKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHByaW9yaXR5IGxpc3QsIHRoZSByZWZlcmVuY2luZyBub3RlcywgYW5kIGhvdyB0byByYW5rIG9uZS5cbiAqIEByZXR1cm5zIFdoaWNoIG9mIHRoZSB0aHJlZSB3YXlzIHRoZSBsaXN0IGZhaWxlZCB0byBzZXR0bGUgaXQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaW5kTm9Qcmlvcml0eVdpbm5lclJlYXNvbihwYXJhbXM6IEZpbmROb1ByaW9yaXR5V2lubmVyUmVhc29uUGFyYW1zKTogTm9Qcmlvcml0eVdpbm5lclJlYXNvbiB7XG4gIGlmIChwYXJhbXMuZW50cmllcy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gTm9Qcmlvcml0eVdpbm5lclJlYXNvbi5FbXB0eUxpc3Q7XG4gIH1cblxuICBsZXQgYmVzdFJhbmsgPSBOT19QUklPUklUWV9NQVRDSDtcbiAgZm9yIChjb25zdCBub3RlUGF0aCBvZiBwYXJhbXMubm90ZVBhdGhzKSB7XG4gICAgY29uc3QgY3VycmVudFJhbmsgPSBwYXJhbXMucmFuayhub3RlUGF0aCk7XG4gICAgaWYgKGN1cnJlbnRSYW5rIDwgYmVzdFJhbmspIHtcbiAgICAgIGJlc3RSYW5rID0gY3VycmVudFJhbms7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGJlc3RSYW5rID09PSBOT19QUklPUklUWV9NQVRDSCA/IE5vUHJpb3JpdHlXaW5uZXJSZWFzb24uTm9NYXRjaCA6IE5vUHJpb3JpdHlXaW5uZXJSZWFzb24uVGllO1xufVxuXG4vKipcbiAqIEZpbmRzIGhvdyBoaWdobHkgYSBub3RlIHJhbmtzIGluIHRoZSBwcmlvcml0eSBsaXN0LlxuICpcbiAqIEFuIGVudHJ5IG1hdGNoZXMgaW4gb25lIG9mIGZvdXIgd2F5cywgcGlja2VkIGJ5IGl0cyBzaGFwZSBzbyB0aGF0IG9uZSBsaXN0IGNhbiBleHByZXNzIGFsbCBvZiB0aGVtOlxuICpcbiAqIC0gYHByb3BlcnR5Om5hbWVgIFx1MjAxNCB0aGUgbm90ZSdzIGZyb250bWF0dGVyIGhhcyBgbmFtZWA7IGBwcm9wZXJ0eTpuYW1lPXZhbHVlYCBhbHNvIGNvbXBhcmVzIHRoZSB2YWx1ZS5cbiAqIC0gYC9yZWd1bGFyIGV4cHJlc3Npb24vYCBcdTIwMTQgdGVzdGVkIGFnYWluc3QgdGhlIG5vdGUncyBwYXRoLlxuICogLSBgLmV4dGAgXHUyMDE0IHRoZSBub3RlJ3MgcGF0aCBlbmRzIHdpdGggaXQsIGNhc2UtaW5zZW5zaXRpdmVseS4gVGhpcyBpcyB0aGUgZm9ybSB0aGUgcmVxdWVzdCBhc2tlZCBmb3IuXG4gKiAtIGFueXRoaW5nIGVsc2UgXHUyMDE0IGEgcGF0aCBmcm9tIHRoZSB2YXVsdCByb290LCBtYXRjaGluZyB0aGUgdm9jYWJ1bGFyeSBvZiB0aGUgaW5jbHVkZSAvIGV4Y2x1ZGVcbiAqICAgcGF0aCBzZXR0aW5ncy5cbiAqXG4gKiBXaGVuIGEgbm90ZSBtYXRjaGVzIHNldmVyYWwgZW50cmllcyB0aGUgKipsb25nZXN0Kiogb25lIGRlY2lkZXMgaXRzIHJhbmssIHNvIHRoZSBtb3N0IHNwZWNpZmljXG4gKiBlbnRyeSB3aW5zIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGxpc3QgaXMgbGVmdCB0byBleHByZXNzIHByaW9yaXR5LiBXaXRob3V0IHRoaXMgYW4gRXhjYWxpZHJhdyBub3RlXG4gKiBjb3VsZCBuZXZlciByYW5rIGJlbG93IGEgcGxhaW4gbWFya2Rvd24gb25lOiBgZHJhd2luZy5leGNhbGlkcmF3Lm1kYCBhbHNvIGVuZHMgd2l0aCBgLm1kYCwgc29cbiAqIGAubWRgIGFib3ZlIGAuZXhjYWxpZHJhdy5tZGAgXHUyMDE0IHRoZSB2ZXJ5IGV4YW1wbGUgdGhlIHJlcXVlc3QgaXMgYnVpbHQgb24gXHUyMDE0IHdvdWxkIHRpZSBpbnN0ZWFkIG9mXG4gKiByZXNvbHZpbmcuIEVxdWFsLWxlbmd0aCBtYXRjaGVzIGZhbGwgdG8gdGhlIGVhcmxpZXIgZW50cnkuXG4gKlxuICogQHBhcmFtIHBhcmFtcyAtIFRoZSBwYXJhbWV0ZXJzIGZvciBmaW5kaW5nIHRoZSByYW5rLlxuICogQHJldHVybnMgVGhlIGluZGV4IG9mIHRoZSBtb3N0IHNwZWNpZmljIG1hdGNoaW5nIGVudHJ5LCBvciB7QGxpbmsgTk9fUFJJT1JJVFlfTUFUQ0h9IHdoZW4gbm9uZSBtYXRjaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbmROb3RlUHJpb3JpdHlSYW5rKHBhcmFtczogRmluZE5vdGVQcmlvcml0eVJhbmtQYXJhbXMpOiBudW1iZXIge1xuICBsZXQgYmVzdFJhbmsgPSBOT19QUklPUklUWV9NQVRDSDtcbiAgbGV0IGJlc3RMZW5ndGggPSAtMTtcblxuICBmb3IgKGNvbnN0IFtpbmRleCwgZW50cnldIG9mIHBhcmFtcy5lbnRyaWVzLmVudHJpZXMoKSkge1xuICAgIC8vIEEgc2hvcnRlciBlbnRyeSBjYW4gbmV2ZXIgYmVhdCBvbmUgdGhhdCBhbHJlYWR5IG1hdGNoZWQsIHNvIGl0IGlzIG5vdCB3b3J0aCB0ZXN0aW5nLlxuICAgIGlmICgoZW50cnkubGVuZ3RoIDw9IGJlc3RMZW5ndGgpIHx8ICFjaGVja0VudHJ5TWF0Y2hlcyhlbnRyeSwgcGFyYW1zKSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgYmVzdFJhbmsgPSBpbmRleDtcbiAgICBiZXN0TGVuZ3RoID0gZW50cnkubGVuZ3RoO1xuICB9XG5cbiAgcmV0dXJuIGJlc3RSYW5rO1xufVxuXG4vKipcbiAqIFBpY2tzIHRoZSBzaW5nbGUgaGlnaGVzdC1wcmlvcml0eSBub3RlIGFtb25nIHRob3NlIHJlZmVyZW5jaW5nIGFuIGF0dGFjaG1lbnQuXG4gKlxuICogUmV0dXJucyBgbnVsbGAgd2hlbiB0aGUgYmVzdCByYW5rIGlzIHNoYXJlZCBieSBtb3JlIHRoYW4gb25lIG5vdGUsIG9yIHdoZW4gbm8gbm90ZSBtYXRjaGVzXG4gKiBhbnl0aGluZy4gQm90aCBhcmUgdGllcywgYW5kIGEgdGllIGlzIHRoZSBjYWxsZXIncyBwcm9ibGVtOiBpdCBpcyB3aGF0IHRoZSBtdWx0aXBsZS1ub3RlcyBtb2RlXG4gKiBzZXR0aW5nIGlzIGZvci5cbiAqXG4gKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgZm9yIHBpY2tpbmcgdGhlIG5vdGUuXG4gKiBAcmV0dXJucyBUaGUgd2lubmluZyBub3RlJ3MgcGF0aCwgb3IgYG51bGxgIHdoZW4gdGhlcmUgaXMgbm8gc2luZ2xlIHdpbm5lci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aChwYXJhbXM6IFBpY2tIaWdoZXN0UHJpb3JpdHlOb3RlUGF0aFBhcmFtcyk6IG51bGwgfCBzdHJpbmcge1xuICBsZXQgYmVzdFJhbmsgPSBOT19QUklPUklUWV9NQVRDSDtcbiAgbGV0IGJlc3ROb3RlUGF0aDogbnVsbCB8IHN0cmluZyA9IG51bGw7XG4gIGxldCBiZXN0Q291bnQgPSAwO1xuXG4gIGZvciAoY29uc3Qgbm90ZVBhdGggb2YgcGFyYW1zLm5vdGVQYXRocykge1xuICAgIGNvbnN0IGN1cnJlbnRSYW5rID0gcGFyYW1zLnJhbmsobm90ZVBhdGgpO1xuICAgIGlmIChjdXJyZW50UmFuayA8IGJlc3RSYW5rKSB7XG4gICAgICBiZXN0UmFuayA9IGN1cnJlbnRSYW5rO1xuICAgICAgYmVzdE5vdGVQYXRoID0gbm90ZVBhdGg7XG4gICAgICBiZXN0Q291bnQgPSAxO1xuICAgIH0gZWxzZSBpZiAoY3VycmVudFJhbmsgPT09IGJlc3RSYW5rKSB7XG4gICAgICBiZXN0Q291bnQrKztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gYmVzdENvdW50ICE9PSAxIHx8IGJlc3RSYW5rID09PSBOT19QUklPUklUWV9NQVRDSCA/IG51bGwgOiBiZXN0Tm90ZVBhdGg7XG59XG5cbmZ1bmN0aW9uIGNoZWNrRW50cnlNYXRjaGVzKGVudHJ5OiBzdHJpbmcsIHBhcmFtczogRmluZE5vdGVQcmlvcml0eVJhbmtQYXJhbXMpOiBib29sZWFuIHtcbiAgaWYgKCFlbnRyeSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGlmIChpc1Byb3BlcnR5RW50cnkoZW50cnkpKSB7XG4gICAgcmV0dXJuIGNoZWNrUHJvcGVydHlFbnRyeU1hdGNoZXMoeyBlbnRyeSwgZnJvbnRtYXR0ZXI6IHBhcmFtcy5mcm9udG1hdHRlciB9KTtcbiAgfVxuXG4gIGlmIChlbnRyeS5sZW5ndGggPiAxICYmIGVudHJ5LnN0YXJ0c1dpdGgoUkVHX0VYUF9ERUxJTUlURVIpICYmIGVudHJ5LmVuZHNXaXRoKFJFR19FWFBfREVMSU1JVEVSKSkge1xuICAgIGNvbnN0IHNvdXJjZSA9IGVudHJ5LnNsaWNlKDEsIC0xKTtcbiAgICAvLyBBbiB1bnBhcnNlYWJsZSBleHByZXNzaW9uIG11c3Qgbm90IHRocm93IG1pZC1jb2xsZWN0aW9uOyBpdCBzaW1wbHkgbWF0Y2hlcyBub3RoaW5nLlxuICAgIHJldHVybiBpc1ZhbGlkUmVnRXhwKHNvdXJjZSkgJiYgbmV3IFJlZ0V4cChzb3VyY2UpLnRlc3QocGFyYW1zLm5vdGVQYXRoKTtcbiAgfVxuXG4gIGlmIChlbnRyeS5zdGFydHNXaXRoKEVYVEVOU0lPTl9QUkVGSVgpKSB7XG4gICAgcmV0dXJuIHBhcmFtcy5ub3RlUGF0aC50b0xvd2VyQ2FzZSgpLmVuZHNXaXRoKGVudHJ5LnRvTG93ZXJDYXNlKCkpO1xuICB9XG5cbiAgY29uc3QgcHJlZml4ID0gZW50cnkuZW5kc1dpdGgoJy8nKSA/IGVudHJ5IDogYCR7ZW50cnl9L2A7XG4gIHJldHVybiBwYXJhbXMubm90ZVBhdGggPT09IGVudHJ5IHx8IHBhcmFtcy5ub3RlUGF0aC5zdGFydHNXaXRoKHByZWZpeCk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQW9CQSxxQkFBOEI7QUFFOUIsNEJBR087QUFFUCxNQUFNLG9CQUFvQjtBQUMxQixNQUFNLG1CQUFtQjtBQVNsQixJQUFLLHlCQUFMLGtCQUFLQSw0QkFBTDtBQUlMLEVBQUFBLHdCQUFBLGVBQVk7QUFLWixFQUFBQSx3QkFBQSxhQUFVO0FBS1YsRUFBQUEsd0JBQUEsU0FBTTtBQWRJLFNBQUFBO0FBQUEsR0FBQTtBQTZFTCxNQUFNLG9CQUFvQjtBQWlCMUIsU0FBUywrQkFBK0IsUUFBd0Q7QUFFckcsUUFBTSxrQkFBa0IsT0FBTyxVQUFVLElBQUksQ0FBQyxjQUFjO0FBQUEsSUFDMUQ7QUFBQSxJQUNBLE1BQU0sT0FBTyxLQUFLLFFBQVE7QUFBQSxFQUM1QixFQUFFO0FBRUYsTUFBSSxXQUFXO0FBQ2YsYUFBVyxVQUFVLGlCQUFpQjtBQUNwQyxRQUFJLE9BQU8sT0FBTyxVQUFVO0FBQzFCLGlCQUFXLE9BQU87QUFBQSxJQUNwQjtBQUFBLEVBQ0Y7QUFFQSxTQUFPLGdCQUNKLE9BQU8sQ0FBQyxXQUFXLE9BQU8sU0FBUyxRQUFRLEVBQzNDLElBQUksQ0FBQyxXQUFXLE9BQU8sUUFBUTtBQUNwQztBQVlPLFNBQVMsMkJBQTJCLFFBQWtFO0FBQzNHLE1BQUksT0FBTyxRQUFRLFdBQVcsR0FBRztBQUMvQixXQUFPO0FBQUEsRUFDVDtBQUVBLE1BQUksV0FBVztBQUNmLGFBQVcsWUFBWSxPQUFPLFdBQVc7QUFDdkMsVUFBTSxjQUFjLE9BQU8sS0FBSyxRQUFRO0FBQ3hDLFFBQUksY0FBYyxVQUFVO0FBQzFCLGlCQUFXO0FBQUEsSUFDYjtBQUFBLEVBQ0Y7QUFFQSxTQUFPLGFBQWEsb0JBQW9CLDBCQUFpQztBQUMzRTtBQXNCTyxTQUFTLHFCQUFxQixRQUE0QztBQUMvRSxNQUFJLFdBQVc7QUFDZixNQUFJLGFBQWE7QUFFakIsYUFBVyxDQUFDLE9BQU8sS0FBSyxLQUFLLE9BQU8sUUFBUSxRQUFRLEdBQUc7QUFFckQsUUFBSyxNQUFNLFVBQVUsY0FBZSxDQUFDLGtCQUFrQixPQUFPLE1BQU0sR0FBRztBQUNyRTtBQUFBLElBQ0Y7QUFFQSxlQUFXO0FBQ1gsaUJBQWEsTUFBTTtBQUFBLEVBQ3JCO0FBRUEsU0FBTztBQUNUO0FBWU8sU0FBUyw0QkFBNEIsUUFBMEQ7QUFDcEcsTUFBSSxXQUFXO0FBQ2YsTUFBSSxlQUE4QjtBQUNsQyxNQUFJLFlBQVk7QUFFaEIsYUFBVyxZQUFZLE9BQU8sV0FBVztBQUN2QyxVQUFNLGNBQWMsT0FBTyxLQUFLLFFBQVE7QUFDeEMsUUFBSSxjQUFjLFVBQVU7QUFDMUIsaUJBQVc7QUFDWCxxQkFBZTtBQUNmLGtCQUFZO0FBQUEsSUFDZCxXQUFXLGdCQUFnQixVQUFVO0FBQ25DO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFFQSxTQUFPLGNBQWMsS0FBSyxhQUFhLG9CQUFvQixPQUFPO0FBQ3BFO0FBRUEsU0FBUyxrQkFBa0IsT0FBZSxRQUE2QztBQUNyRixNQUFJLENBQUMsT0FBTztBQUNWLFdBQU87QUFBQSxFQUNUO0FBRUEsVUFBSSx1Q0FBZ0IsS0FBSyxHQUFHO0FBQzFCLGVBQU8saURBQTBCLEVBQUUsT0FBTyxhQUFhLE9BQU8sWUFBWSxDQUFDO0FBQUEsRUFDN0U7QUFFQSxNQUFJLE1BQU0sU0FBUyxLQUFLLE1BQU0sV0FBVyxpQkFBaUIsS0FBSyxNQUFNLFNBQVMsaUJBQWlCLEdBQUc7QUFDaEcsVUFBTSxTQUFTLE1BQU0sTUFBTSxHQUFHLEVBQUU7QUFFaEMsZUFBTyw4QkFBYyxNQUFNLEtBQUssSUFBSSxPQUFPLE1BQU0sRUFBRSxLQUFLLE9BQU8sUUFBUTtBQUFBLEVBQ3pFO0FBRUEsTUFBSSxNQUFNLFdBQVcsZ0JBQWdCLEdBQUc7QUFDdEMsV0FBTyxPQUFPLFNBQVMsWUFBWSxFQUFFLFNBQVMsTUFBTSxZQUFZLENBQUM7QUFBQSxFQUNuRTtBQUVBLFFBQU0sU0FBUyxNQUFNLFNBQVMsR0FBRyxJQUFJLFFBQVEsR0FBRyxLQUFLO0FBQ3JELFNBQU8sT0FBTyxhQUFhLFNBQVMsT0FBTyxTQUFTLFdBQVcsTUFBTTtBQUN2RTsiLAogICJuYW1lcyI6IFsiTm9Qcmlvcml0eVdpbm5lclJlYXNvbiJdCn0K
|