obsidian-dev-utils 88.8.0 → 89.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/dist/demo-vault-helper/main.js +20 -23
- package/dist/integration-test-plugin/main.js +2218 -1734
- package/dist/lib/cjs/__merged.cjs +57 -35
- package/dist/lib/cjs/__merged.d.cts +12 -10
- package/dist/lib/cjs/abort-controller.cjs +15 -22
- package/dist/lib/cjs/array.cjs +27 -26
- package/dist/lib/cjs/array.d.cts +25 -7
- package/dist/lib/cjs/async-events.cjs +87 -91
- package/dist/lib/cjs/async-events.d.cts +50 -50
- package/dist/lib/cjs/async.cjs +80 -80
- package/dist/lib/cjs/async.d.cts +23 -23
- package/dist/lib/cjs/beeper.cjs +11 -15
- package/dist/lib/cjs/blob.cjs +14 -25
- package/dist/lib/cjs/codemirror/index.cjs +11 -15
- package/dist/lib/cjs/codemirror/state-field-spec.cjs +11 -15
- package/dist/lib/cjs/debug-controller.cjs +11 -15
- package/dist/lib/cjs/debug.cjs +24 -32
- package/dist/lib/cjs/debug.d.cts +1 -1
- package/dist/lib/cjs/disposable.cjs +59 -43
- package/dist/lib/cjs/disposable.d.cts +27 -8
- package/dist/lib/cjs/enum.cjs +11 -15
- package/dist/lib/cjs/error.cjs +28 -33
- package/dist/lib/cjs/function.cjs +30 -34
- package/dist/lib/cjs/function.d.cts +26 -26
- package/dist/lib/cjs/generated-during-build.cjs +12 -16
- package/dist/lib/cjs/html-element.cjs +84 -89
- package/dist/lib/cjs/html-element.d.cts +15 -15
- package/dist/lib/cjs/index.cjs +11 -15
- package/dist/lib/cjs/integration-test-setup.cjs +11 -15
- package/dist/lib/cjs/integration-test-vitest-global-setup.cjs +11 -15
- package/dist/lib/cjs/jest-setup.cjs +11 -15
- package/dist/lib/cjs/library.cjs +11 -15
- package/dist/lib/cjs/object-utils.cjs +120 -117
- package/dist/lib/cjs/object-utils.d.cts +27 -27
- package/dist/lib/cjs/obsidian/@types/dataview/data-model/value.d.cts +1 -1
- package/dist/lib/cjs/obsidian/@types/dataview/expression/field.d.cts +1 -1
- package/dist/lib/cjs/obsidian/@types/dataview/expression/functions.d.cts +4 -4
- package/dist/lib/cjs/obsidian/active-file-provider.cjs +11 -15
- package/dist/lib/cjs/obsidian/app.cjs +11 -15
- package/dist/lib/cjs/obsidian/async-with-notice.cjs +28 -32
- package/dist/lib/cjs/obsidian/async-with-notice.d.cts +2 -2
- package/dist/lib/cjs/obsidian/attachment-path.cjs +20 -24
- package/dist/lib/cjs/obsidian/attachment-path.d.cts +5 -5
- package/dist/lib/cjs/obsidian/backlink.cjs +12 -16
- package/dist/lib/cjs/obsidian/bases-view-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/callout.cjs +27 -26
- package/dist/lib/cjs/obsidian/callout.d.cts +9 -3
- package/dist/lib/cjs/obsidian/canvas.cjs +13 -16
- package/dist/lib/cjs/obsidian/case-insensitive-file-index.cjs +18 -20
- package/dist/lib/cjs/obsidian/code-block-markdown-information.cjs +11 -15
- package/dist/lib/cjs/obsidian/code-block-markdown-information.d.cts +2 -2
- package/dist/lib/cjs/obsidian/code-block-reg-exp.cjs +11 -15
- package/dist/lib/cjs/obsidian/command-handlers/abstract-file-command-handler.cjs +18 -16
- package/dist/lib/cjs/obsidian/command-handlers/abstract-file-command-handler.d.cts +5 -0
- package/dist/lib/cjs/obsidian/command-handlers/command-handler-component.cjs +56 -31
- package/dist/lib/cjs/obsidian/command-handlers/command-handler-component.d.cts +42 -8
- package/dist/lib/cjs/obsidian/command-handlers/command-handler.cjs +11 -15
- package/dist/lib/cjs/obsidian/command-handlers/command-handler.d.cts +10 -0
- package/dist/lib/cjs/obsidian/command-handlers/editor-command-handler.cjs +26 -30
- package/dist/lib/cjs/obsidian/command-handlers/editor-command-handler.d.cts +8 -8
- package/dist/lib/cjs/obsidian/command-handlers/file-command-handler.cjs +12 -16
- package/dist/lib/cjs/obsidian/command-handlers/folder-command-handler.cjs +12 -16
- package/dist/lib/cjs/obsidian/command-handlers/global-command-handler.cjs +13 -17
- package/dist/lib/cjs/obsidian/command-handlers/index.cjs +11 -15
- package/dist/lib/cjs/obsidian/command-handlers/open-demo-vault-command-handler.cjs +11 -15
- package/dist/lib/cjs/obsidian/command-handlers/open-settings-command-handler.cjs +11 -15
- package/dist/lib/cjs/obsidian/command-handlers/unlock-active-note-command-handler.cjs +11 -15
- package/dist/lib/cjs/obsidian/command-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/community-plugins.cjs +28 -25
- package/dist/lib/cjs/obsidian/community-plugins.d.cts +19 -5
- package/dist/lib/cjs/obsidian/components/abort-signal-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/all-windows-event-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/all-windows-event-component.d.cts +4 -4
- package/dist/lib/cjs/obsidian/components/async-error-handler-component.cjs +13 -16
- package/dist/lib/cjs/obsidian/components/async-events-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/case-insensitive-file-index-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/component-ex.cjs +26 -28
- package/dist/lib/cjs/obsidian/components/component-ex.d.cts +3 -3
- package/dist/lib/cjs/obsidian/components/console-debug-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/components/console-debug-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/components/disposable-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/embed-extensions-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/generate-markdown-link-default-params-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/index.cjs +14 -15
- package/dist/lib/cjs/obsidian/components/index.d.cts +1 -0
- package/dist/lib/cjs/obsidian/components/layout-ready-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/menu-event-registrar-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/monkey-around-component.cjs +29 -33
- package/dist/lib/cjs/obsidian/components/monkey-around-component.d.cts +55 -55
- package/dist/lib/cjs/obsidian/components/notebook-navigator-menu-event-registrar-component.cjs +297 -0
- package/dist/lib/cjs/obsidian/components/notebook-navigator-menu-event-registrar-component.d.cts +139 -0
- package/dist/lib/cjs/obsidian/components/plugin-context-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/plugin-notice-component.cjs +28 -31
- package/dist/lib/cjs/obsidian/components/plugin-settings-component.cjs +26 -30
- package/dist/lib/cjs/obsidian/components/plugin-settings-component.d.cts +8 -8
- package/dist/lib/cjs/obsidian/components/plugin-settings-tab-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/pointer-position-component.cjs +13 -17
- package/dist/lib/cjs/obsidian/components/registry-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/components/rename-delete-handler-component.cjs +72 -62
- package/dist/lib/cjs/obsidian/components/rename-delete-handler-component.d.cts +12 -1
- package/dist/lib/cjs/obsidian/components/syntax-highlighting-component.cjs +16 -20
- package/dist/lib/cjs/obsidian/components/syntax-highlighting-component.d.cts +8 -8
- package/dist/lib/cjs/obsidian/constructors/get-dom-events-handlers-constructor.cjs +14 -18
- package/dist/lib/cjs/obsidian/constructors/index.cjs +11 -15
- package/dist/lib/cjs/obsidian/css-class.cjs +11 -15
- package/dist/lib/cjs/obsidian/data-handler.cjs +11 -15
- package/dist/lib/cjs/obsidian/dataview-link.cjs +13 -17
- package/dist/lib/cjs/obsidian/dataview.cjs +35 -41
- package/dist/lib/cjs/obsidian/dataview.d.cts +2 -2
- package/dist/lib/cjs/obsidian/demo-vault-helper.cjs +13 -17
- package/dist/lib/cjs/obsidian/desktop-demo-vault-opener.cjs +22 -26
- package/dist/lib/cjs/obsidian/desktop-trusted-input.cjs +23 -21
- package/dist/lib/cjs/obsidian/editor-extension-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/editor-suggest-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/editor.cjs +17 -19
- package/dist/lib/cjs/obsidian/events.cjs +12 -16
- package/dist/lib/cjs/obsidian/events.d.cts +2 -2
- package/dist/lib/cjs/obsidian/extensions-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/file-change.cjs +76 -80
- package/dist/lib/cjs/obsidian/file-change.d.cts +3 -3
- package/dist/lib/cjs/obsidian/file-manager.cjs +33 -22
- package/dist/lib/cjs/obsidian/file-manager.d.cts +20 -1
- package/dist/lib/cjs/obsidian/file-system.cjs +15 -19
- package/dist/lib/cjs/obsidian/file-system.d.cts +3 -3
- package/dist/lib/cjs/obsidian/frontmatter-link-cache-with-offsets.cjs +11 -15
- package/dist/lib/cjs/obsidian/frontmatter.cjs +15 -19
- package/dist/lib/cjs/obsidian/hover-link-source-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/html-element.cjs +13 -17
- package/dist/lib/cjs/obsidian/html-element.d.cts +2 -2
- package/dist/lib/cjs/obsidian/i18n/custom-type-options.cjs +11 -15
- package/dist/lib/cjs/obsidian/i18n/default-translations.cjs +11 -15
- package/dist/lib/cjs/obsidian/i18n/i18n.cjs +13 -16
- package/dist/lib/cjs/obsidian/i18n/i18n.d.cts +7 -0
- package/dist/lib/cjs/obsidian/i18n/index.cjs +11 -15
- package/dist/lib/cjs/obsidian/i18n/locales/en.cjs +11 -15
- package/dist/lib/cjs/obsidian/i18n/locales/index.cjs +11 -15
- package/dist/lib/cjs/obsidian/i18n/locales/translations-map.cjs +11 -15
- package/dist/lib/cjs/obsidian/index.cjs +14 -15
- package/dist/lib/cjs/obsidian/index.d.cts +1 -0
- package/dist/lib/cjs/obsidian/is-in-obsidian.cjs +11 -15
- package/dist/lib/cjs/obsidian/link-update-progress.cjs +11 -15
- package/dist/lib/cjs/obsidian/link.cjs +91 -81
- package/dist/lib/cjs/obsidian/link.d.cts +22 -22
- package/dist/lib/cjs/obsidian/logger.cjs +21 -25
- package/dist/lib/cjs/obsidian/logger.d.cts +5 -5
- package/dist/lib/cjs/obsidian/loop.cjs +14 -18
- package/dist/lib/cjs/obsidian/loop.d.cts +1 -1
- package/dist/lib/cjs/obsidian/markdown-code-block-processor-registrar.cjs +12 -16
- package/dist/lib/cjs/obsidian/markdown-code-block-processor-registrar.d.cts +3 -3
- package/dist/lib/cjs/obsidian/markdown-code-block-processor.cjs +35 -40
- package/dist/lib/cjs/obsidian/markdown-code-block-processor.d.cts +3 -3
- package/dist/lib/cjs/obsidian/markdown-post-processor-registrar.cjs +12 -16
- package/dist/lib/cjs/obsidian/markdown-post-processor-registrar.d.cts +3 -3
- package/dist/lib/cjs/obsidian/markdown-view.cjs +11 -15
- package/dist/lib/cjs/obsidian/markdown.cjs +22 -24
- package/dist/lib/cjs/obsidian/menu-event-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/menu-event-registrar.d.cts +1 -1
- package/dist/lib/cjs/obsidian/metadata-cache.cjs +16 -20
- package/dist/lib/cjs/obsidian/metadata-cache.d.cts +2 -2
- package/dist/lib/cjs/obsidian/modals/alert.cjs +11 -15
- package/dist/lib/cjs/obsidian/modals/confirm.cjs +11 -15
- package/dist/lib/cjs/obsidian/modals/index.cjs +11 -15
- package/dist/lib/cjs/obsidian/modals/minimizable-modal.cjs +28 -32
- package/dist/lib/cjs/obsidian/modals/modal.cjs +11 -15
- package/dist/lib/cjs/obsidian/modals/prompt.cjs +11 -15
- package/dist/lib/cjs/obsidian/modals/select-item.cjs +16 -20
- package/dist/lib/cjs/obsidian/modals/select-item.d.cts +1 -1
- package/dist/lib/cjs/obsidian/modals/select-option.cjs +11 -15
- package/dist/lib/cjs/obsidian/modals/suggest-modal-command-builder.cjs +26 -28
- package/dist/lib/cjs/obsidian/modals/suggest-modal-command-builder.d.cts +5 -5
- package/dist/lib/cjs/obsidian/notebook-navigator.cjs +155 -0
- package/dist/lib/cjs/obsidian/notebook-navigator.d.cts +132 -0
- package/dist/lib/cjs/obsidian/obsidian-protocol-handler-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/obsidian-settings.cjs +11 -15
- package/dist/lib/cjs/obsidian/parse-link.cjs +61 -62
- package/dist/lib/cjs/obsidian/parse-link.d.cts +4 -4
- package/dist/lib/cjs/obsidian/path-settings.cjs +27 -25
- package/dist/lib/cjs/obsidian/pdf.cjs +13 -17
- package/dist/lib/cjs/obsidian/pdf.d.cts +2 -2
- package/dist/lib/cjs/obsidian/plugin/index.cjs +11 -15
- package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.cjs +11 -15
- package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.d.cts +156 -52
- package/dist/lib/cjs/obsidian/plugin/plugin-context.cjs +17 -21
- package/dist/lib/cjs/obsidian/plugin/plugin-context.d.cts +2 -2
- package/dist/lib/cjs/obsidian/plugin/plugin-event-source.cjs +20 -24
- package/dist/lib/cjs/obsidian/plugin/plugin-event-source.d.cts +11 -9
- package/dist/lib/cjs/obsidian/plugin/plugin-settings-tab.cjs +29 -33
- package/dist/lib/cjs/obsidian/plugin/plugin.cjs +33 -16
- package/dist/lib/cjs/obsidian/plugin/plugin.d.cts +11 -1
- package/dist/lib/cjs/obsidian/plugin-cli-handler-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/popovers/field-popover.cjs +11 -15
- package/dist/lib/cjs/obsidian/popovers/index.cjs +11 -15
- package/dist/lib/cjs/obsidian/popovers/popover-anchor.cjs +14 -18
- package/dist/lib/cjs/obsidian/popovers/popover-anchor.d.cts +2 -2
- package/dist/lib/cjs/obsidian/popovers/popover.cjs +19 -23
- package/dist/lib/cjs/obsidian/queue.cjs +16 -20
- package/dist/lib/cjs/obsidian/queue.d.cts +2 -2
- package/dist/lib/cjs/obsidian/react/app-context.cjs +11 -15
- package/dist/lib/cjs/obsidian/react/index.cjs +11 -15
- package/dist/lib/cjs/obsidian/reference.cjs +11 -15
- package/dist/lib/cjs/obsidian/resource-lock.cjs +157 -78
- package/dist/lib/cjs/obsidian/resource-lock.d.cts +5 -0
- package/dist/lib/cjs/obsidian/resource-url.cjs +12 -16
- package/dist/lib/cjs/obsidian/ribbon-icon-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/ribbon-icon-registrar.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/checkbox-component.cjs +18 -22
- package/dist/lib/cjs/obsidian/setting-components/checkbox-component.d.cts +5 -5
- package/dist/lib/cjs/obsidian/setting-components/code-highlighter-component.cjs +28 -31
- package/dist/lib/cjs/obsidian/setting-components/code-highlighter-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/date-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-components/date-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/date-time-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-components/date-time-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/email-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-components/email-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/file-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/setting-components/index.cjs +11 -15
- package/dist/lib/cjs/obsidian/setting-components/month-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-components/month-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/multiple-dropdown-component.cjs +17 -21
- package/dist/lib/cjs/obsidian/setting-components/multiple-dropdown-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/multiple-email-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-components/multiple-email-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/multiple-file-component.cjs +12 -16
- package/dist/lib/cjs/obsidian/setting-components/multiple-text-component.cjs +15 -19
- package/dist/lib/cjs/obsidian/setting-components/multiple-text-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/number-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-components/number-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/password-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-components/password-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/setting-component-wrapper.cjs +16 -20
- package/dist/lib/cjs/obsidian/setting-components/setting-component-wrapper.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/telephone-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-components/telephone-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/text-based-component.cjs +16 -20
- package/dist/lib/cjs/obsidian/setting-components/text-based-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/time-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-components/time-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/tri-state-checkbox-component.cjs +15 -19
- package/dist/lib/cjs/obsidian/setting-components/tri-state-checkbox-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/typed-dropdown-component.cjs +16 -20
- package/dist/lib/cjs/obsidian/setting-components/typed-dropdown-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/typed-multiple-dropdown-component.cjs +18 -22
- package/dist/lib/cjs/obsidian/setting-components/typed-multiple-dropdown-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/typed-range-text-component.cjs +11 -15
- package/dist/lib/cjs/obsidian/setting-components/typed-text-component.cjs +16 -19
- package/dist/lib/cjs/obsidian/setting-components/typed-text-component.d.cts +4 -4
- package/dist/lib/cjs/obsidian/setting-components/url-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-components/url-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/validator-component.cjs +45 -49
- package/dist/lib/cjs/obsidian/setting-components/validator-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/value-component-with-change-tracking.cjs +11 -15
- package/dist/lib/cjs/obsidian/setting-components/week-component.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-components/week-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-ex.cjs +76 -80
- package/dist/lib/cjs/obsidian/setting-ex.d.cts +42 -42
- package/dist/lib/cjs/obsidian/setting-group-ex.cjs +14 -18
- package/dist/lib/cjs/obsidian/setting-group-ex.d.cts +2 -2
- package/dist/lib/cjs/obsidian/status-bar-item-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/validation.cjs +11 -15
- package/dist/lib/cjs/obsidian/vault-delete.cjs +23 -20
- package/dist/lib/cjs/obsidian/vault-delete.d.cts +16 -2
- package/dist/lib/cjs/obsidian/vault-transaction.cjs +17 -18
- package/dist/lib/cjs/obsidian/vault.cjs +81 -63
- package/dist/lib/cjs/obsidian/vault.d.cts +32 -11
- package/dist/lib/cjs/obsidian/view-registrar.cjs +11 -15
- package/dist/lib/cjs/obsidian/workspace.cjs +12 -16
- package/dist/lib/cjs/obsidian-dev-utils-state.cjs +11 -15
- package/dist/lib/cjs/path.cjs +18 -22
- package/dist/lib/cjs/path.d.cts +1 -1
- package/dist/lib/cjs/reg-exp.cjs +38 -35
- package/dist/lib/cjs/reg-exp.d.cts +4 -4
- package/dist/lib/cjs/script-utils/build.cjs +21 -25
- package/dist/lib/cjs/script-utils/build.d.cts +1 -1
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/change-extension-plugin.cjs +24 -28
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.cjs +36 -34
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/custom-esbuild-options-plugin.cjs +11 -15
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/dependency.cjs +20 -24
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fix-esm-plugin.cjs +13 -17
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.cjs +16 -20
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/index.cjs +11 -15
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.cjs +11 -15
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.d.cts +6 -2
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/preprocess-plugin.cjs +32 -36
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/rename-css-plugin.cjs +11 -15
- package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/svelte-wrapper-plugin.cjs +11 -15
- package/dist/lib/cjs/script-utils/bundlers/esbuild.cjs +11 -15
- package/dist/lib/cjs/script-utils/bundlers/index.cjs +11 -15
- package/dist/lib/cjs/script-utils/check-project-types.cjs +13 -17
- package/dist/lib/cjs/script-utils/check-project-types.d.cts +12 -4
- package/dist/lib/cjs/script-utils/cli-utils.cjs +39 -47
- package/dist/lib/cjs/script-utils/cli-utils.d.cts +6 -6
- package/dist/lib/cjs/script-utils/code-generator.cjs +11 -15
- package/dist/lib/cjs/script-utils/commitlint-config.cjs +11 -15
- package/dist/lib/cjs/script-utils/demo-vault-coverage.cjs +22 -23
- package/dist/lib/cjs/script-utils/demo-vault.cjs +11 -15
- package/dist/lib/cjs/script-utils/env-toggle.cjs +13 -17
- package/dist/lib/cjs/script-utils/exec.cjs +40 -44
- package/dist/lib/cjs/script-utils/exec.d.cts +4 -4
- package/dist/lib/cjs/script-utils/formatters/dprint.cjs +12 -16
- package/dist/lib/cjs/script-utils/formatters/index.cjs +11 -15
- package/dist/lib/cjs/script-utils/fs.cjs +13 -17
- package/dist/lib/cjs/script-utils/git.cjs +11 -15
- package/dist/lib/cjs/script-utils/index.cjs +11 -15
- package/dist/lib/cjs/script-utils/json.cjs +15 -19
- package/dist/lib/cjs/script-utils/json.d.cts +2 -2
- package/dist/lib/cjs/script-utils/linters/cspell.cjs +12 -16
- package/dist/lib/cjs/script-utils/linters/eslint-agnostic-core-boundary.cjs +11 -15
- package/dist/lib/cjs/script-utils/linters/eslint-config.cjs +402 -16
- package/dist/lib/cjs/script-utils/linters/eslint-no-restricted-syntax.cjs +11 -15
- package/dist/lib/cjs/script-utils/linters/eslint-rules/index.cjs +11 -15
- package/dist/lib/cjs/script-utils/linters/eslint-rules/no-async-callback-to-unsafe-return.cjs +27 -31
- package/dist/lib/cjs/script-utils/linters/eslint-rules/no-async-callback-to-unsafe-return.d.cts +3 -1
- package/dist/lib/cjs/script-utils/linters/eslint-rules/no-unused-params-members.cjs +27 -31
- package/dist/lib/cjs/script-utils/linters/eslint-rules/no-unused-params-members.d.cts +3 -1
- package/dist/lib/cjs/script-utils/linters/eslint-rules/no-used-underscore-variables.cjs +21 -25
- package/dist/lib/cjs/script-utils/linters/eslint-rules/no-used-underscore-variables.d.cts +3 -1
- package/dist/lib/cjs/script-utils/linters/eslint-rules/obsidian-dev-utils-plugin.cjs +11 -15
- package/dist/lib/cjs/script-utils/linters/eslint-rules/params-options-name-match.cjs +109 -113
- package/dist/lib/cjs/script-utils/linters/eslint-rules/params-options-name-match.d.cts +3 -1
- package/dist/lib/cjs/script-utils/linters/eslint-rules/prefer-noop-async.cjs +13 -17
- package/dist/lib/cjs/script-utils/linters/eslint-rules/prefer-noop-async.d.cts +3 -1
- package/dist/lib/cjs/script-utils/linters/eslint-rules/readonly-params-options-result-members.cjs +21 -25
- package/dist/lib/cjs/script-utils/linters/eslint-rules/readonly-params-options-result-members.d.cts +3 -1
- package/dist/lib/cjs/script-utils/linters/eslint-rules/require-component-suffix.cjs +51 -55
- package/dist/lib/cjs/script-utils/linters/eslint-rules/require-component-suffix.d.cts +9 -3
- package/dist/lib/cjs/script-utils/linters/eslint-rules/require-method-template.cjs +25 -27
- package/dist/lib/cjs/script-utils/linters/eslint-rules/require-method-template.d.cts +6 -2
- package/dist/lib/cjs/script-utils/linters/eslint-rules/require-super-call.cjs +33 -37
- package/dist/lib/cjs/script-utils/linters/eslint-rules/require-super-call.d.cts +3 -1
- package/dist/lib/cjs/script-utils/linters/eslint-rules/rule-tester-helper.cjs +11 -15
- package/dist/lib/cjs/script-utils/linters/eslint.cjs +14 -18
- package/dist/lib/cjs/script-utils/linters/index.cjs +14 -15
- package/dist/lib/cjs/script-utils/linters/index.d.cts +1 -0
- package/dist/lib/cjs/script-utils/linters/markdownlint-cli2-config.cjs +18 -17
- package/dist/lib/cjs/script-utils/linters/markdownlint-cli2-config.d.cts +2 -2
- package/dist/lib/cjs/script-utils/linters/markdownlint-ignores.cjs +138 -0
- package/dist/lib/cjs/script-utils/linters/markdownlint-ignores.d.cts +35 -0
- package/dist/lib/cjs/script-utils/linters/markdownlint.cjs +20 -23
- package/dist/lib/cjs/script-utils/linters/over-exposure.cjs +18 -22
- package/dist/lib/cjs/script-utils/linters/over-exposure.d.cts +54 -18
- package/dist/lib/cjs/script-utils/nano-staged-config.cjs +11 -15
- package/dist/lib/cjs/script-utils/npm-publish.cjs +11 -15
- package/dist/lib/cjs/script-utils/npm-run.cjs +20 -17
- package/dist/lib/cjs/script-utils/npm-run.d.cts +16 -2
- package/dist/lib/cjs/script-utils/npm.cjs +21 -25
- package/dist/lib/cjs/script-utils/npm.d.cts +11 -11
- package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.cjs +11 -15
- package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.d.cts +165 -55
- package/dist/lib/cjs/script-utils/root.cjs +11 -15
- package/dist/lib/cjs/script-utils/test-runners/index.cjs +11 -15
- package/dist/lib/cjs/script-utils/test-runners/integration-test-plugin.cjs +11 -15
- package/dist/lib/cjs/script-utils/test-runners/vitest-config.cjs +12 -15
- package/dist/lib/cjs/script-utils/test-runners/vitest.cjs +11 -15
- package/dist/lib/cjs/script-utils/validate-declarations.cjs +11 -15
- package/dist/lib/cjs/script-utils/version.cjs +62 -63
- package/dist/lib/cjs/script-utils/version.d.cts +21 -21
- package/dist/lib/cjs/script-utils/warnings-as-errors.cjs +11 -15
- package/dist/lib/cjs/setup.cjs +11 -15
- package/dist/lib/cjs/setup.d.cts +1 -1
- package/dist/lib/cjs/strict-proxy.cjs +30 -34
- package/dist/lib/cjs/strict-proxy.d.cts +2 -2
- package/dist/lib/cjs/string.cjs +90 -93
- package/dist/lib/cjs/string.d.cts +60 -60
- package/dist/lib/cjs/transformers/date-transformer.cjs +11 -15
- package/dist/lib/cjs/transformers/duration-transformer.cjs +11 -15
- package/dist/lib/cjs/transformers/group-transformer.cjs +11 -15
- package/dist/lib/cjs/transformers/index.cjs +11 -15
- package/dist/lib/cjs/transformers/map-transformer.cjs +12 -16
- package/dist/lib/cjs/transformers/set-transformer.cjs +12 -16
- package/dist/lib/cjs/transformers/skip-private-property-transformer.cjs +11 -15
- package/dist/lib/cjs/transformers/transformer.cjs +11 -15
- package/dist/lib/cjs/transformers/two-way-map-transformer.cjs +12 -16
- package/dist/lib/cjs/transformers/typed-transformer.cjs +11 -15
- package/dist/lib/cjs/two-way-map.cjs +11 -15
- package/dist/lib/cjs/type-guards.cjs +16 -20
- package/dist/lib/cjs/type-guards.d.cts +6 -6
- package/dist/lib/cjs/type.cjs +13 -17
- package/dist/lib/cjs/type.d.cts +2 -2
- package/dist/lib/cjs/url.cjs +18 -22
- package/dist/lib/cjs/url.d.cts +4 -4
- package/dist/lib/cjs/value-provider.cjs +15 -19
- package/dist/lib/cjs/value-provider.d.cts +6 -6
- package/dist/lib/cjs/value-wrapper.cjs +11 -15
- package/dist/lib/cjs/vitest-setup.cjs +11 -15
- package/dist/lib/esm/__merged.d.mts +12 -10
- package/dist/lib/esm/__merged.mjs +51 -23
- package/dist/lib/esm/abort-controller.mjs +5 -8
- package/dist/lib/esm/array.d.mts +25 -7
- package/dist/lib/esm/array.mjs +16 -12
- package/dist/lib/esm/async-events.d.mts +50 -50
- package/dist/lib/esm/async-events.mjs +81 -78
- package/dist/lib/esm/async.d.mts +23 -23
- package/dist/lib/esm/async.mjs +70 -66
- package/dist/lib/esm/blob.mjs +4 -11
- package/dist/lib/esm/debug.d.mts +1 -1
- package/dist/lib/esm/debug.mjs +14 -18
- package/dist/lib/esm/disposable.d.mts +27 -8
- package/dist/lib/esm/disposable.mjs +47 -29
- package/dist/lib/esm/error.mjs +18 -19
- package/dist/lib/esm/function.d.mts +26 -26
- package/dist/lib/esm/function.mjs +20 -20
- package/dist/lib/esm/generated-during-build.mjs +1 -1
- package/dist/lib/esm/html-element.d.mts +15 -15
- package/dist/lib/esm/html-element.mjs +74 -75
- package/dist/lib/esm/object-utils.d.mts +27 -27
- package/dist/lib/esm/object-utils.mjs +109 -102
- package/dist/lib/esm/obsidian/@types/dataview/data-model/value.d.mts +1 -1
- package/dist/lib/esm/obsidian/@types/dataview/expression/field.d.mts +1 -1
- package/dist/lib/esm/obsidian/@types/dataview/expression/functions.d.mts +4 -4
- package/dist/lib/esm/obsidian/app.mjs +1 -1
- package/dist/lib/esm/obsidian/async-with-notice.d.mts +2 -2
- package/dist/lib/esm/obsidian/async-with-notice.mjs +18 -18
- package/dist/lib/esm/obsidian/attachment-path.d.mts +5 -5
- package/dist/lib/esm/obsidian/attachment-path.mjs +10 -10
- package/dist/lib/esm/obsidian/backlink.mjs +2 -2
- package/dist/lib/esm/obsidian/callout.d.mts +9 -3
- package/dist/lib/esm/obsidian/callout.mjs +17 -12
- package/dist/lib/esm/obsidian/canvas.mjs +3 -2
- package/dist/lib/esm/obsidian/case-insensitive-file-index.mjs +8 -6
- package/dist/lib/esm/obsidian/code-block-markdown-information.d.mts +2 -2
- package/dist/lib/esm/obsidian/command-handlers/abstract-file-command-handler.d.mts +5 -0
- package/dist/lib/esm/obsidian/command-handlers/abstract-file-command-handler.mjs +8 -2
- package/dist/lib/esm/obsidian/command-handlers/command-handler-component.d.mts +42 -8
- package/dist/lib/esm/obsidian/command-handlers/command-handler-component.mjs +46 -17
- package/dist/lib/esm/obsidian/command-handlers/command-handler.d.mts +10 -0
- package/dist/lib/esm/obsidian/command-handlers/command-handler.mjs +1 -1
- package/dist/lib/esm/obsidian/command-handlers/editor-command-handler.d.mts +8 -8
- package/dist/lib/esm/obsidian/command-handlers/editor-command-handler.mjs +16 -16
- package/dist/lib/esm/obsidian/command-handlers/file-command-handler.mjs +2 -2
- package/dist/lib/esm/obsidian/command-handlers/folder-command-handler.mjs +2 -2
- package/dist/lib/esm/obsidian/command-handlers/global-command-handler.mjs +3 -3
- package/dist/lib/esm/obsidian/community-plugins.d.mts +19 -5
- package/dist/lib/esm/obsidian/community-plugins.mjs +17 -11
- package/dist/lib/esm/obsidian/components/all-windows-event-component.d.mts +4 -4
- package/dist/lib/esm/obsidian/components/all-windows-event-component.mjs +1 -1
- package/dist/lib/esm/obsidian/components/async-error-handler-component.mjs +3 -2
- package/dist/lib/esm/obsidian/components/component-ex.d.mts +3 -3
- package/dist/lib/esm/obsidian/components/component-ex.mjs +16 -14
- package/dist/lib/esm/obsidian/components/console-debug-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/components/console-debug-component.mjs +4 -4
- package/dist/lib/esm/obsidian/components/index.d.mts +1 -0
- package/dist/lib/esm/obsidian/components/index.mjs +3 -1
- package/dist/lib/esm/obsidian/components/menu-event-registrar-component.mjs +5 -5
- package/dist/lib/esm/obsidian/components/monkey-around-component.d.mts +55 -55
- package/dist/lib/esm/obsidian/components/monkey-around-component.mjs +19 -19
- package/dist/lib/esm/obsidian/components/notebook-navigator-menu-event-registrar-component.d.mts +139 -0
- package/dist/lib/esm/obsidian/components/notebook-navigator-menu-event-registrar-component.mjs +196 -0
- package/dist/lib/esm/obsidian/components/plugin-notice-component.mjs +18 -17
- package/dist/lib/esm/obsidian/components/plugin-settings-component.d.mts +8 -8
- package/dist/lib/esm/obsidian/components/plugin-settings-component.mjs +18 -18
- package/dist/lib/esm/obsidian/components/pointer-position-component.mjs +3 -3
- package/dist/lib/esm/obsidian/components/rename-delete-handler-component.d.mts +12 -1
- package/dist/lib/esm/obsidian/components/rename-delete-handler-component.mjs +62 -48
- package/dist/lib/esm/obsidian/components/syntax-highlighting-component.d.mts +8 -8
- package/dist/lib/esm/obsidian/components/syntax-highlighting-component.mjs +6 -6
- package/dist/lib/esm/obsidian/constructors/get-dom-events-handlers-constructor.mjs +4 -4
- package/dist/lib/esm/obsidian/data-handler.mjs +1 -1
- package/dist/lib/esm/obsidian/dataview-link.mjs +3 -3
- package/dist/lib/esm/obsidian/dataview.d.mts +2 -2
- package/dist/lib/esm/obsidian/dataview.mjs +25 -27
- package/dist/lib/esm/obsidian/demo-vault-helper.mjs +4 -3
- package/dist/lib/esm/obsidian/desktop-demo-vault-opener.mjs +12 -12
- package/dist/lib/esm/obsidian/desktop-trusted-input.mjs +13 -7
- package/dist/lib/esm/obsidian/editor.mjs +7 -5
- package/dist/lib/esm/obsidian/events.d.mts +2 -2
- package/dist/lib/esm/obsidian/events.mjs +2 -2
- package/dist/lib/esm/obsidian/file-change.d.mts +3 -3
- package/dist/lib/esm/obsidian/file-change.mjs +67 -67
- package/dist/lib/esm/obsidian/file-manager.d.mts +20 -1
- package/dist/lib/esm/obsidian/file-manager.mjs +22 -8
- package/dist/lib/esm/obsidian/file-system.d.mts +3 -3
- package/dist/lib/esm/obsidian/file-system.mjs +4 -4
- package/dist/lib/esm/obsidian/frontmatter.mjs +5 -5
- package/dist/lib/esm/obsidian/html-element.d.mts +2 -2
- package/dist/lib/esm/obsidian/html-element.mjs +3 -3
- package/dist/lib/esm/obsidian/i18n/i18n.d.mts +7 -0
- package/dist/lib/esm/obsidian/i18n/i18n.mjs +3 -2
- package/dist/lib/esm/obsidian/index.d.mts +1 -0
- package/dist/lib/esm/obsidian/index.mjs +3 -1
- package/dist/lib/esm/obsidian/link.d.mts +22 -22
- package/dist/lib/esm/obsidian/link.mjs +76 -62
- package/dist/lib/esm/obsidian/logger.d.mts +5 -5
- package/dist/lib/esm/obsidian/logger.mjs +11 -11
- package/dist/lib/esm/obsidian/loop.d.mts +1 -1
- package/dist/lib/esm/obsidian/loop.mjs +4 -4
- package/dist/lib/esm/obsidian/markdown-code-block-processor-registrar.d.mts +3 -3
- package/dist/lib/esm/obsidian/markdown-code-block-processor-registrar.mjs +2 -2
- package/dist/lib/esm/obsidian/markdown-code-block-processor.d.mts +3 -3
- package/dist/lib/esm/obsidian/markdown-code-block-processor.mjs +25 -26
- package/dist/lib/esm/obsidian/markdown-post-processor-registrar.d.mts +3 -3
- package/dist/lib/esm/obsidian/markdown-post-processor-registrar.mjs +2 -2
- package/dist/lib/esm/obsidian/markdown.mjs +12 -10
- package/dist/lib/esm/obsidian/menu-event-registrar.d.mts +1 -1
- package/dist/lib/esm/obsidian/metadata-cache.d.mts +2 -2
- package/dist/lib/esm/obsidian/metadata-cache.mjs +6 -6
- package/dist/lib/esm/obsidian/modals/confirm.mjs +1 -1
- package/dist/lib/esm/obsidian/modals/minimizable-modal.mjs +18 -18
- package/dist/lib/esm/obsidian/modals/select-item.d.mts +1 -1
- package/dist/lib/esm/obsidian/modals/select-item.mjs +6 -6
- package/dist/lib/esm/obsidian/modals/suggest-modal-command-builder.d.mts +5 -5
- package/dist/lib/esm/obsidian/modals/suggest-modal-command-builder.mjs +16 -14
- package/dist/lib/esm/obsidian/notebook-navigator.d.mts +132 -0
- package/dist/lib/esm/obsidian/notebook-navigator.mjs +49 -0
- package/dist/lib/esm/obsidian/parse-link.d.mts +4 -4
- package/dist/lib/esm/obsidian/parse-link.mjs +51 -48
- package/dist/lib/esm/obsidian/path-settings.mjs +17 -11
- package/dist/lib/esm/obsidian/pdf.d.mts +2 -2
- package/dist/lib/esm/obsidian/pdf.mjs +3 -3
- package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.d.mts +156 -52
- package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.mjs +1 -1
- package/dist/lib/esm/obsidian/plugin/plugin-context.d.mts +2 -2
- package/dist/lib/esm/obsidian/plugin/plugin-context.mjs +7 -7
- package/dist/lib/esm/obsidian/plugin/plugin-event-source.d.mts +11 -9
- package/dist/lib/esm/obsidian/plugin/plugin-event-source.mjs +10 -10
- package/dist/lib/esm/obsidian/plugin/plugin-settings-tab.mjs +20 -20
- package/dist/lib/esm/obsidian/plugin/plugin.d.mts +11 -1
- package/dist/lib/esm/obsidian/plugin/plugin.mjs +23 -2
- package/dist/lib/esm/obsidian/popovers/popover-anchor.d.mts +2 -2
- package/dist/lib/esm/obsidian/popovers/popover-anchor.mjs +4 -4
- package/dist/lib/esm/obsidian/popovers/popover.mjs +9 -9
- package/dist/lib/esm/obsidian/queue.d.mts +2 -2
- package/dist/lib/esm/obsidian/queue.mjs +6 -6
- package/dist/lib/esm/obsidian/resource-lock.d.mts +5 -0
- package/dist/lib/esm/obsidian/resource-lock.mjs +147 -64
- package/dist/lib/esm/obsidian/resource-url.mjs +2 -2
- package/dist/lib/esm/obsidian/ribbon-icon-registrar.d.mts +2 -2
- package/dist/lib/esm/obsidian/ribbon-icon-registrar.mjs +1 -1
- package/dist/lib/esm/obsidian/setting-components/checkbox-component.d.mts +5 -5
- package/dist/lib/esm/obsidian/setting-components/checkbox-component.mjs +8 -8
- package/dist/lib/esm/obsidian/setting-components/code-highlighter-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/code-highlighter-component.mjs +18 -17
- package/dist/lib/esm/obsidian/setting-components/date-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/date-component.mjs +4 -4
- package/dist/lib/esm/obsidian/setting-components/date-time-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/date-time-component.mjs +4 -4
- package/dist/lib/esm/obsidian/setting-components/email-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/email-component.mjs +4 -4
- package/dist/lib/esm/obsidian/setting-components/month-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/month-component.mjs +4 -4
- package/dist/lib/esm/obsidian/setting-components/multiple-dropdown-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/multiple-dropdown-component.mjs +7 -7
- package/dist/lib/esm/obsidian/setting-components/multiple-email-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/multiple-email-component.mjs +4 -4
- package/dist/lib/esm/obsidian/setting-components/multiple-file-component.mjs +2 -2
- package/dist/lib/esm/obsidian/setting-components/multiple-text-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/multiple-text-component.mjs +5 -5
- package/dist/lib/esm/obsidian/setting-components/number-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/number-component.mjs +4 -4
- package/dist/lib/esm/obsidian/setting-components/password-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/password-component.mjs +4 -4
- package/dist/lib/esm/obsidian/setting-components/setting-component-wrapper.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/setting-component-wrapper.mjs +6 -6
- package/dist/lib/esm/obsidian/setting-components/telephone-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/telephone-component.mjs +4 -4
- package/dist/lib/esm/obsidian/setting-components/text-based-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/text-based-component.mjs +6 -6
- package/dist/lib/esm/obsidian/setting-components/time-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/time-component.mjs +4 -4
- package/dist/lib/esm/obsidian/setting-components/tri-state-checkbox-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/tri-state-checkbox-component.mjs +5 -5
- package/dist/lib/esm/obsidian/setting-components/typed-dropdown-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/typed-dropdown-component.mjs +6 -6
- package/dist/lib/esm/obsidian/setting-components/typed-multiple-dropdown-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/typed-multiple-dropdown-component.mjs +8 -8
- package/dist/lib/esm/obsidian/setting-components/typed-text-component.d.mts +4 -4
- package/dist/lib/esm/obsidian/setting-components/typed-text-component.mjs +6 -5
- package/dist/lib/esm/obsidian/setting-components/url-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/url-component.mjs +4 -4
- package/dist/lib/esm/obsidian/setting-components/validator-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/validator-component.mjs +35 -35
- package/dist/lib/esm/obsidian/setting-components/week-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/week-component.mjs +4 -4
- package/dist/lib/esm/obsidian/setting-ex.d.mts +42 -42
- package/dist/lib/esm/obsidian/setting-ex.mjs +66 -66
- package/dist/lib/esm/obsidian/setting-group-ex.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-group-ex.mjs +4 -4
- package/dist/lib/esm/obsidian/vault-delete.d.mts +16 -2
- package/dist/lib/esm/obsidian/vault-delete.mjs +12 -6
- package/dist/lib/esm/obsidian/vault-transaction.mjs +8 -4
- package/dist/lib/esm/obsidian/vault.d.mts +32 -11
- package/dist/lib/esm/obsidian/vault.mjs +67 -47
- package/dist/lib/esm/obsidian/view-registrar.mjs +1 -1
- package/dist/lib/esm/obsidian/workspace.mjs +2 -2
- package/dist/lib/esm/path.d.mts +1 -1
- package/dist/lib/esm/path.mjs +7 -7
- package/dist/lib/esm/reg-exp.d.mts +4 -4
- package/dist/lib/esm/reg-exp.mjs +28 -21
- package/dist/lib/esm/script-utils/build.d.mts +1 -1
- package/dist/lib/esm/script-utils/build.mjs +15 -12
- package/dist/lib/esm/script-utils/bundlers/esbuild-impl/change-extension-plugin.mjs +14 -14
- package/dist/lib/esm/script-utils/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.mjs +26 -20
- package/dist/lib/esm/script-utils/bundlers/esbuild-impl/dependency.mjs +10 -10
- package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fix-esm-plugin.mjs +3 -3
- package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.mjs +6 -6
- package/dist/lib/esm/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.d.mts +6 -2
- package/dist/lib/esm/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.mjs +1 -1
- package/dist/lib/esm/script-utils/bundlers/esbuild-impl/preprocess-plugin.mjs +20 -20
- package/dist/lib/esm/script-utils/check-project-types.d.mts +12 -4
- package/dist/lib/esm/script-utils/check-project-types.mjs +3 -3
- package/dist/lib/esm/script-utils/cli-utils.d.mts +6 -6
- package/dist/lib/esm/script-utils/cli-utils.mjs +29 -33
- package/dist/lib/esm/script-utils/demo-vault-coverage.mjs +12 -9
- package/dist/lib/esm/script-utils/env-toggle.mjs +3 -3
- package/dist/lib/esm/script-utils/exec.d.mts +4 -4
- package/dist/lib/esm/script-utils/exec.mjs +32 -32
- package/dist/lib/esm/script-utils/formatters/dprint.mjs +2 -2
- package/dist/lib/esm/script-utils/fs.mjs +3 -3
- package/dist/lib/esm/script-utils/json.d.mts +2 -2
- package/dist/lib/esm/script-utils/json.mjs +5 -5
- package/dist/lib/esm/script-utils/linters/cspell.mjs +2 -2
- package/dist/lib/esm/script-utils/linters/eslint-config.mjs +392 -2
- package/dist/lib/esm/script-utils/linters/eslint-rules/no-async-callback-to-unsafe-return.d.mts +3 -1
- package/dist/lib/esm/script-utils/linters/eslint-rules/no-async-callback-to-unsafe-return.mjs +17 -17
- package/dist/lib/esm/script-utils/linters/eslint-rules/no-unused-params-members.d.mts +3 -1
- package/dist/lib/esm/script-utils/linters/eslint-rules/no-unused-params-members.mjs +17 -17
- package/dist/lib/esm/script-utils/linters/eslint-rules/no-used-underscore-variables.d.mts +3 -1
- package/dist/lib/esm/script-utils/linters/eslint-rules/no-used-underscore-variables.mjs +11 -11
- package/dist/lib/esm/script-utils/linters/eslint-rules/params-options-name-match.d.mts +3 -1
- package/dist/lib/esm/script-utils/linters/eslint-rules/params-options-name-match.mjs +99 -99
- package/dist/lib/esm/script-utils/linters/eslint-rules/prefer-noop-async.d.mts +3 -1
- package/dist/lib/esm/script-utils/linters/eslint-rules/prefer-noop-async.mjs +3 -3
- package/dist/lib/esm/script-utils/linters/eslint-rules/readonly-params-options-result-members.d.mts +3 -1
- package/dist/lib/esm/script-utils/linters/eslint-rules/readonly-params-options-result-members.mjs +11 -11
- package/dist/lib/esm/script-utils/linters/eslint-rules/require-component-suffix.d.mts +9 -3
- package/dist/lib/esm/script-utils/linters/eslint-rules/require-component-suffix.mjs +41 -41
- package/dist/lib/esm/script-utils/linters/eslint-rules/require-method-template.d.mts +6 -2
- package/dist/lib/esm/script-utils/linters/eslint-rules/require-method-template.mjs +15 -13
- package/dist/lib/esm/script-utils/linters/eslint-rules/require-super-call.d.mts +3 -1
- package/dist/lib/esm/script-utils/linters/eslint-rules/require-super-call.mjs +23 -23
- package/dist/lib/esm/script-utils/linters/eslint.mjs +4 -4
- package/dist/lib/esm/script-utils/linters/index.d.mts +1 -0
- package/dist/lib/esm/script-utils/linters/index.mjs +3 -1
- package/dist/lib/esm/script-utils/linters/markdownlint-cli2-config.d.mts +2 -2
- package/dist/lib/esm/script-utils/linters/markdownlint-cli2-config.mjs +8 -3
- package/dist/lib/esm/script-utils/linters/markdownlint-ignores.d.mts +35 -0
- package/dist/lib/esm/script-utils/linters/markdownlint-ignores.mjs +33 -0
- package/dist/lib/esm/script-utils/linters/markdownlint.mjs +13 -9
- package/dist/lib/esm/script-utils/linters/over-exposure.d.mts +54 -18
- package/dist/lib/esm/script-utils/linters/over-exposure.mjs +8 -8
- package/dist/lib/esm/script-utils/npm-run.d.mts +16 -2
- package/dist/lib/esm/script-utils/npm-run.mjs +9 -3
- package/dist/lib/esm/script-utils/npm.d.mts +11 -11
- package/dist/lib/esm/script-utils/npm.mjs +11 -11
- package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.d.mts +165 -55
- package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.mjs +1 -1
- package/dist/lib/esm/script-utils/test-runners/vitest-config.mjs +2 -1
- package/dist/lib/esm/script-utils/validate-declarations.mjs +1 -1
- package/dist/lib/esm/script-utils/version.d.mts +21 -21
- package/dist/lib/esm/script-utils/version.mjs +48 -45
- package/dist/lib/esm/setup.d.mts +1 -1
- package/dist/lib/esm/setup.mjs +1 -1
- package/dist/lib/esm/strict-proxy.d.mts +2 -2
- package/dist/lib/esm/strict-proxy.mjs +20 -20
- package/dist/lib/esm/string.d.mts +60 -60
- package/dist/lib/esm/string.mjs +80 -79
- package/dist/lib/esm/transformers/map-transformer.mjs +2 -2
- package/dist/lib/esm/transformers/set-transformer.mjs +2 -2
- package/dist/lib/esm/transformers/two-way-map-transformer.mjs +2 -2
- package/dist/lib/esm/type-guards.d.mts +6 -6
- package/dist/lib/esm/type-guards.mjs +6 -6
- package/dist/lib/esm/type.d.mts +2 -2
- package/dist/lib/esm/type.mjs +3 -3
- package/dist/lib/esm/url.d.mts +4 -4
- package/dist/lib/esm/url.mjs +8 -8
- package/dist/lib/esm/value-provider.d.mts +6 -6
- package/dist/lib/esm/value-provider.mjs +5 -5
- package/obsidian/components/notebook-navigator-menu-event-registrar-component/package.json +6 -0
- package/obsidian/notebook-navigator/package.json +6 -0
- package/package.json +17 -33
- package/script-utils/linters/markdownlint-ignores/package.json +6 -0
|
@@ -40,16 +40,11 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
40
40
|
globalThisRecord[key] ??= newFuncs[key]?.();
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
function name(obj) {
|
|
44
|
-
return obj;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
43
|
function extractDefault(module) {
|
|
48
44
|
return module && module.__esModule && 'default' in module ? module.default : module;
|
|
49
45
|
}
|
|
50
46
|
|
|
51
|
-
const OBSIDIAN_BUILT_IN_MODULE_NAMES = [
|
|
52
|
-
'obsidian',
|
|
47
|
+
const OBSIDIAN_BUILT_IN_MODULE_NAMES = new Set([
|
|
53
48
|
'@codemirror/autocomplete',
|
|
54
49
|
'@codemirror/collab',
|
|
55
50
|
'@codemirror/commands',
|
|
@@ -60,11 +55,12 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
60
55
|
'@codemirror/text',
|
|
61
56
|
'@codemirror/view',
|
|
62
57
|
'@lezer/common',
|
|
58
|
+
'@lezer/highlight',
|
|
63
59
|
'@lezer/lr',
|
|
64
|
-
'
|
|
65
|
-
|
|
60
|
+
'obsidian']
|
|
61
|
+
);
|
|
66
62
|
|
|
67
|
-
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = [
|
|
63
|
+
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = new Set([
|
|
68
64
|
'@codemirror/closebrackets',
|
|
69
65
|
'@codemirror/comment',
|
|
70
66
|
'@codemirror/fold',
|
|
@@ -76,11 +72,11 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
76
72
|
'@codemirror/rangeset',
|
|
77
73
|
'@codemirror/rectangular-selection',
|
|
78
74
|
'@codemirror/stream-parser',
|
|
79
|
-
'@codemirror/tooltip']
|
|
80
|
-
|
|
75
|
+
'@codemirror/tooltip']
|
|
76
|
+
);
|
|
81
77
|
|
|
82
78
|
function requirePatched(id) {
|
|
83
|
-
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.
|
|
79
|
+
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
|
|
84
80
|
return originalRequire?.(id);
|
|
85
81
|
}
|
|
86
82
|
|
|
@@ -89,8 +85,8 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
89
85
|
if (id === 'process' || id === 'node:process') {
|
|
90
86
|
// eslint-disable-next-line no-console -- Valid usage.
|
|
91
87
|
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
|
|
92
|
-
|
|
93
|
-
return
|
|
88
|
+
|
|
89
|
+
return process;
|
|
94
90
|
}
|
|
95
91
|
} else {
|
|
96
92
|
const module = originalRequire?.(id);
|
|
@@ -194,4 +190,4 @@ function registerIntegrationTestLibResolver() {
|
|
|
194
190
|
getIntegrationTestPluginPopulate,
|
|
195
191
|
registerIntegrationTestLibResolver
|
|
196
192
|
});
|
|
197
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy90ZXN0LXJ1bm5lcnMvaW50ZWdyYXRpb24tdGVzdC1wbHVnaW4udHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbInZhciBfX2ltcG9ydF9tZXRhX3VybCA9IGdsb2JhbFRoaXNbJ2ltcG9ydC5tZXRhLnVybCddID8/ICgoKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIF9fZmlsZW5hbWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbnN0IGxvY2FsUmVxdWlyZSA9IHJlcXVpcmU7XG4gICAgICAgIGNvbnN0IHVybCA9IGxvY2FsUmVxdWlyZSgnbm9kZTp1cmwnKTtcbiAgICAgICAgaWYgKHR5cGVvZiB1cmwucGF0aFRvRmlsZVVSTCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIHJldHVybiB1cmwucGF0aFRvRmlsZVVSTChfX2ZpbGVuYW1lKS5ocmVmO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICByZXR1cm4gYWN0aXZlV2luZG93LmxvY2F0aW9uLmhyZWY7XG4gICAgICB9XG5cbiAgICAgIC8vIEZhbGxiYWNrIHRvIGFuIGVtcHR5IHN0cmluZyBpZiB0aGUgZW52aXJvbm1lbnQgaXMgdW5rbm93blxuICAgICAgcmV0dXJuICcnO1xuICAgIH0pKCk7XG4vKipcbiAqIEBmaWxlXG4gKlxuICogV2lyZXMgdGhlIHNoaXBwZWQgaW50ZWdyYXRpb24tdGVzdCBoYXJuZXNzIHBsdWdpbiBpbnRvIGEgY29uc3VtZXIgcGx1Z2luJ3MgaW50ZWdyYXRpb24gdGVzdHMsIHNvIGV2ZXJ5XG4gKiBsaWJyYXJ5IGhlbHBlciBpcyByZWFjaGFibGUgYXMgYGxpYi48aGVscGVyPmAgaW5zaWRlIGFuIGBldmFsSW5PYnNpZGlhbmAgY2xvc3VyZS5cbiAqXG4gKiBUd28gaGFsdmVzLCBhbmQgYm90aCBtdXN0IGJlIHdpcmVkIG9yIGBsaWIuPGhlbHBlcj5gIGZhaWxzOlxuICpcbiAqIC0ge0BsaW5rIGdldEludGVncmF0aW9uVGVzdFBsdWdpblBvcHVsYXRlfSBwdXRzIHRoZSBoYXJuZXNzIHBsdWdpbidzIGJpbmFyaWVzIGluIHRoZSB0ZXN0IHZhdWx0LiBUaGVcbiAqICAgaGFybmVzcyBwbHVnaW4gaXMgd2hhdCBwdWJsaXNoZXMgdGhlIGxpYnJhcnkgb24gYHdpbmRvdy5fX29ic2lkaWFuRGV2VXRpbHNNb2R1bGVgOyBpbiB0aGlzIHJlcG8ncyBvd25cbiAqICAgc3VpdGUgaXQgSVMgdGhlIHBsdWdpbi11bmRlci10ZXN0LCBidXQgaW4gYSBjb25zdW1lcidzIHN1aXRlIHRoZSBwbHVnaW4tdW5kZXItdGVzdCBpcyB0aGUgY29uc3VtZXIncyBvd25cbiAqICAgcGx1Z2luLCBzbyB0aGUgaGFybmVzcyBoYXMgdG8gcmlkZSBhbG9uZyBhcyBhIHNlY29uZCwgdGVzdC1vbmx5IGNvbW11bml0eSBwbHVnaW4gXHUyMDE0IHNlZWRlZCBoZXJlLCBhbmRcbiAqICAgdHVybmVkIG9uIGJ5IGBvYnNpZGlhbi1pbnRlZ3JhdGlvbi10ZXN0aW5nYCdzIGBjcmVhdGVTZXR1cCh7IGVuYWJsZUNvbW11bml0eVBsdWdpbnMgfSlgLlxuICogLSB7QGxpbmsgcmVnaXN0ZXJJbnRlZ3JhdGlvblRlc3RMaWJSZXNvbHZlcn0gcmVnaXN0ZXJzIHRoZSByZW5kZXJlci1zaWRlIHJlc29sdmVyIHRoYXQgcmVhZHMgdGhhdCBnbG9iYWwuXG4gKlxuICogYG9ic2lkaWFuLWRldi11dGlscy9pbnRlZ3JhdGlvbi10ZXN0LXZpdGVzdC1nbG9iYWwtc2V0dXBgIGFuZFxuICogYG9ic2lkaWFuLWRldi11dGlscy9pbnRlZ3JhdGlvbi10ZXN0LXNldHVwYCBhcmUgdGhlIHR1cm5rZXkgZW5kcG9pbnRzIHRoYXQgY2FsbCB0aGVzZSBmb3IgeW91LlxuICovXG5cbmltcG9ydCB7IHJlYWRGaWxlU3luYyB9IGZyb20gJ25vZGU6ZnMnO1xuaW1wb3J0IHsgcmVnaXN0ZXJMaWJSZXNvbHZlciB9IGZyb20gJ29ic2lkaWFuLWludGVncmF0aW9uLXRlc3RpbmcnO1xuXG5pbXBvcnQgeyBPYnNpZGlhblBsdWdpblJlcG9QYXRocyB9IGZyb20gJy4uLy4uL29ic2lkaWFuL3BsdWdpbi9vYnNpZGlhbi1wbHVnaW4tcmVwby1wYXRocy50cyc7XG5pbXBvcnQge1xuICBnZXRGb2xkZXJOYW1lLFxuICBqb2luXG59IGZyb20gJy4uLy4uL3BhdGgudHMnO1xuaW1wb3J0IHsgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocyB9IGZyb20gJy4uL29ic2lkaWFuLWRldi11dGlscy1yZXBvLXBhdGhzLnRzJztcbmltcG9ydCB7IGdldFJvb3RGb2xkZXIgfSBmcm9tICcuLi9yb290LnRzJztcblxuLyoqXG4gKiBUaGUgaWQgb2YgdGhlIGludGVncmF0aW9uLXRlc3QgaGFybmVzcyBwbHVnaW4gXHUyMDE0IHRoZSBmb2xkZXIgbmFtZSBpdCBpcyBzZWVkZWQgaW50bywgYW5kIHRoZSB2YWx1ZSB0byBwYXNzXG4gKiB0byBgY3JlYXRlU2V0dXAoeyBlbmFibGVDb21tdW5pdHlQbHVnaW5zIH0pYCBzbyB0aGUgaGFybmVzcyBlbmFibGVzIGl0IGFmdGVyIHRoZSBwbHVnaW4tdW5kZXItdGVzdC5cbiAqL1xuZXhwb3J0IGNvbnN0IE9CU0lESUFOX0RFVl9VVElMU19JTlRFR1JBVElPTl9URVNUX1BMVUdJTl9JRCA9ICdvYnNpZGlhbi1kZXYtdXRpbHMtaW50ZWdyYXRpb24tdGVzdCc7XG5cbi8qKlxuICogVGhlIGZsYXQgbGlicmFyeSBiYXJyZWwgdGhlIGhhcm5lc3MgcGx1Z2luIHB1Ymxpc2hlcy5cbiAqL1xuaW50ZXJmYWNlIE9ic2lkaWFuRGV2VXRpbHNNb2R1bGUge1xuICBfX21lcmdlZDogb2JqZWN0O1xufVxuXG4vKipcbiAqIFRoZSBzaGFwZSB0aGUgaGFybmVzcyBwbHVnaW4gcHVibGlzaGVzIG9uIHRoZSByZW5kZXJlcidzIGB3aW5kb3dgLlxuICovXG5pbnRlcmZhY2UgT2JzaWRpYW5EZXZVdGlsc01vZHVsZVdpbmRvdyB7XG4gIF9fb2JzaWRpYW5EZXZVdGlsc01vZHVsZTogT2JzaWRpYW5EZXZVdGlsc01vZHVsZTtcbn1cblxuLyoqXG4gKiBCdWlsZHMgdGhlIHZhdWx0LXJlbGF0aXZlIGZpbGUgbWFwIHRoYXQgaW5zdGFsbHMgdGhlIHNoaXBwZWQgaW50ZWdyYXRpb24tdGVzdCBoYXJuZXNzIHBsdWdpbiwgcmVhZHkgdG9cbiAqIGhhbmQgdG8gYSBnbG9iYWwgc2V0dXAncyBgcG9wdWxhdGVgIChvciB0byBtZXJnZSBpbnRvIGEgbGFyZ2VyIG1hcCB0aGUgY29uc3VtZXIgYWxyZWFkeSBidWlsZHMpLlxuICpcbiAqIFRoZSByZXN1bHQgaXMgYSBgUmVjb3JkPHN0cmluZywgVWludDhBcnJheT5gLCB3aGljaCBpcyBhc3NpZ25hYmxlIHRvIGBvYnNpZGlhbi1pbnRlZ3JhdGlvbi10ZXN0aW5nYCdzXG4gKiBgUG9wdWxhdGVGaWxlc1BhcmFtc2AgXHUyMDE0IHNvIGl0IGNvbXBvc2VzIHdpdGggYGJ1aWxkRGVtb1ZhdWx0UG9wdWxhdGVgIGFuZCBmcmllbmRzLlxuICpcbiAqIEByZXR1cm5zIFRoZSBtYXAgb2YgdmF1bHQtcmVsYXRpdmUgcGF0aHMgdG8gZmlsZSBjb250ZW50cy5cbiAqIEB0aHJvd3MgSWYgdGhlIGhhcm5lc3MgcGx1Z2luIHdhcyBub3QgYnVpbHQgaW50byB0aGlzIHBhY2thZ2UgXHUyMDE0IGkuZS4gYG5wbSBydW4gYnVpbGRgIG5ldmVyIHJhbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEludGVncmF0aW9uVGVzdFBsdWdpblBvcHVsYXRlKCk6IFJlY29yZDxzdHJpbmcsIFVpbnQ4QXJyYXk+
|
|
193
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy90ZXN0LXJ1bm5lcnMvaW50ZWdyYXRpb24tdGVzdC1wbHVnaW4udHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbInZhciBfX2ltcG9ydF9tZXRhX3VybCA9IGdsb2JhbFRoaXNbJ2ltcG9ydC5tZXRhLnVybCddID8/ICgoKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIF9fZmlsZW5hbWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbnN0IGxvY2FsUmVxdWlyZSA9IHJlcXVpcmU7XG4gICAgICAgIGNvbnN0IHVybCA9IGxvY2FsUmVxdWlyZSgnbm9kZTp1cmwnKTtcbiAgICAgICAgaWYgKHR5cGVvZiB1cmwucGF0aFRvRmlsZVVSTCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIHJldHVybiB1cmwucGF0aFRvRmlsZVVSTChfX2ZpbGVuYW1lKS5ocmVmO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICByZXR1cm4gYWN0aXZlV2luZG93LmxvY2F0aW9uLmhyZWY7XG4gICAgICB9XG5cbiAgICAgIC8vIEZhbGxiYWNrIHRvIGFuIGVtcHR5IHN0cmluZyBpZiB0aGUgZW52aXJvbm1lbnQgaXMgdW5rbm93blxuICAgICAgcmV0dXJuICcnO1xuICAgIH0pKCk7XG4vKipcbiAqIEBmaWxlXG4gKlxuICogV2lyZXMgdGhlIHNoaXBwZWQgaW50ZWdyYXRpb24tdGVzdCBoYXJuZXNzIHBsdWdpbiBpbnRvIGEgY29uc3VtZXIgcGx1Z2luJ3MgaW50ZWdyYXRpb24gdGVzdHMsIHNvIGV2ZXJ5XG4gKiBsaWJyYXJ5IGhlbHBlciBpcyByZWFjaGFibGUgYXMgYGxpYi48aGVscGVyPmAgaW5zaWRlIGFuIGBldmFsSW5PYnNpZGlhbmAgY2xvc3VyZS5cbiAqXG4gKiBUd28gaGFsdmVzLCBhbmQgYm90aCBtdXN0IGJlIHdpcmVkIG9yIGBsaWIuPGhlbHBlcj5gIGZhaWxzOlxuICpcbiAqIC0ge0BsaW5rIGdldEludGVncmF0aW9uVGVzdFBsdWdpblBvcHVsYXRlfSBwdXRzIHRoZSBoYXJuZXNzIHBsdWdpbidzIGJpbmFyaWVzIGluIHRoZSB0ZXN0IHZhdWx0LiBUaGVcbiAqICAgaGFybmVzcyBwbHVnaW4gaXMgd2hhdCBwdWJsaXNoZXMgdGhlIGxpYnJhcnkgb24gYHdpbmRvdy5fX29ic2lkaWFuRGV2VXRpbHNNb2R1bGVgOyBpbiB0aGlzIHJlcG8ncyBvd25cbiAqICAgc3VpdGUgaXQgSVMgdGhlIHBsdWdpbi11bmRlci10ZXN0LCBidXQgaW4gYSBjb25zdW1lcidzIHN1aXRlIHRoZSBwbHVnaW4tdW5kZXItdGVzdCBpcyB0aGUgY29uc3VtZXIncyBvd25cbiAqICAgcGx1Z2luLCBzbyB0aGUgaGFybmVzcyBoYXMgdG8gcmlkZSBhbG9uZyBhcyBhIHNlY29uZCwgdGVzdC1vbmx5IGNvbW11bml0eSBwbHVnaW4gXHUyMDE0IHNlZWRlZCBoZXJlLCBhbmRcbiAqICAgdHVybmVkIG9uIGJ5IGBvYnNpZGlhbi1pbnRlZ3JhdGlvbi10ZXN0aW5nYCdzIGBjcmVhdGVTZXR1cCh7IGVuYWJsZUNvbW11bml0eVBsdWdpbnMgfSlgLlxuICogLSB7QGxpbmsgcmVnaXN0ZXJJbnRlZ3JhdGlvblRlc3RMaWJSZXNvbHZlcn0gcmVnaXN0ZXJzIHRoZSByZW5kZXJlci1zaWRlIHJlc29sdmVyIHRoYXQgcmVhZHMgdGhhdCBnbG9iYWwuXG4gKlxuICogYG9ic2lkaWFuLWRldi11dGlscy9pbnRlZ3JhdGlvbi10ZXN0LXZpdGVzdC1nbG9iYWwtc2V0dXBgIGFuZFxuICogYG9ic2lkaWFuLWRldi11dGlscy9pbnRlZ3JhdGlvbi10ZXN0LXNldHVwYCBhcmUgdGhlIHR1cm5rZXkgZW5kcG9pbnRzIHRoYXQgY2FsbCB0aGVzZSBmb3IgeW91LlxuICovXG5cbmltcG9ydCB7IHJlYWRGaWxlU3luYyB9IGZyb20gJ25vZGU6ZnMnO1xuaW1wb3J0IHsgcmVnaXN0ZXJMaWJSZXNvbHZlciB9IGZyb20gJ29ic2lkaWFuLWludGVncmF0aW9uLXRlc3RpbmcnO1xuXG5pbXBvcnQgeyBPYnNpZGlhblBsdWdpblJlcG9QYXRocyB9IGZyb20gJy4uLy4uL29ic2lkaWFuL3BsdWdpbi9vYnNpZGlhbi1wbHVnaW4tcmVwby1wYXRocy50cyc7XG5pbXBvcnQge1xuICBnZXRGb2xkZXJOYW1lLFxuICBqb2luXG59IGZyb20gJy4uLy4uL3BhdGgudHMnO1xuaW1wb3J0IHsgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocyB9IGZyb20gJy4uL29ic2lkaWFuLWRldi11dGlscy1yZXBvLXBhdGhzLnRzJztcbmltcG9ydCB7IGdldFJvb3RGb2xkZXIgfSBmcm9tICcuLi9yb290LnRzJztcblxuLyoqXG4gKiBUaGUgaWQgb2YgdGhlIGludGVncmF0aW9uLXRlc3QgaGFybmVzcyBwbHVnaW4gXHUyMDE0IHRoZSBmb2xkZXIgbmFtZSBpdCBpcyBzZWVkZWQgaW50bywgYW5kIHRoZSB2YWx1ZSB0byBwYXNzXG4gKiB0byBgY3JlYXRlU2V0dXAoeyBlbmFibGVDb21tdW5pdHlQbHVnaW5zIH0pYCBzbyB0aGUgaGFybmVzcyBlbmFibGVzIGl0IGFmdGVyIHRoZSBwbHVnaW4tdW5kZXItdGVzdC5cbiAqL1xuZXhwb3J0IGNvbnN0IE9CU0lESUFOX0RFVl9VVElMU19JTlRFR1JBVElPTl9URVNUX1BMVUdJTl9JRCA9ICdvYnNpZGlhbi1kZXYtdXRpbHMtaW50ZWdyYXRpb24tdGVzdCc7XG5cbi8qKlxuICogVGhlIGZsYXQgbGlicmFyeSBiYXJyZWwgdGhlIGhhcm5lc3MgcGx1Z2luIHB1Ymxpc2hlcy5cbiAqL1xuaW50ZXJmYWNlIE9ic2lkaWFuRGV2VXRpbHNNb2R1bGUge1xuICBfX21lcmdlZDogb2JqZWN0O1xufVxuXG4vKipcbiAqIFRoZSBzaGFwZSB0aGUgaGFybmVzcyBwbHVnaW4gcHVibGlzaGVzIG9uIHRoZSByZW5kZXJlcidzIGB3aW5kb3dgLlxuICovXG5pbnRlcmZhY2UgT2JzaWRpYW5EZXZVdGlsc01vZHVsZVdpbmRvdyB7XG4gIF9fb2JzaWRpYW5EZXZVdGlsc01vZHVsZTogT2JzaWRpYW5EZXZVdGlsc01vZHVsZTtcbn1cblxuLyoqXG4gKiBCdWlsZHMgdGhlIHZhdWx0LXJlbGF0aXZlIGZpbGUgbWFwIHRoYXQgaW5zdGFsbHMgdGhlIHNoaXBwZWQgaW50ZWdyYXRpb24tdGVzdCBoYXJuZXNzIHBsdWdpbiwgcmVhZHkgdG9cbiAqIGhhbmQgdG8gYSBnbG9iYWwgc2V0dXAncyBgcG9wdWxhdGVgIChvciB0byBtZXJnZSBpbnRvIGEgbGFyZ2VyIG1hcCB0aGUgY29uc3VtZXIgYWxyZWFkeSBidWlsZHMpLlxuICpcbiAqIFRoZSByZXN1bHQgaXMgYSBgUmVjb3JkPHN0cmluZywgVWludDhBcnJheT5gLCB3aGljaCBpcyBhc3NpZ25hYmxlIHRvIGBvYnNpZGlhbi1pbnRlZ3JhdGlvbi10ZXN0aW5nYCdzXG4gKiBgUG9wdWxhdGVGaWxlc1BhcmFtc2AgXHUyMDE0IHNvIGl0IGNvbXBvc2VzIHdpdGggYGJ1aWxkRGVtb1ZhdWx0UG9wdWxhdGVgIGFuZCBmcmllbmRzLlxuICpcbiAqIEByZXR1cm5zIFRoZSBtYXAgb2YgdmF1bHQtcmVsYXRpdmUgcGF0aHMgdG8gZmlsZSBjb250ZW50cy5cbiAqIEB0aHJvd3MgSWYgdGhlIGhhcm5lc3MgcGx1Z2luIHdhcyBub3QgYnVpbHQgaW50byB0aGlzIHBhY2thZ2UgXHUyMDE0IGkuZS4gYG5wbSBydW4gYnVpbGRgIG5ldmVyIHJhbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEludGVncmF0aW9uVGVzdFBsdWdpblBvcHVsYXRlKCk6IFJlY29yZDxzdHJpbmcsIFVpbnQ4QXJyYXk+IHtcbiAgY29uc3QgcGFja2FnZUZvbGRlciA9IGdldFJvb3RGb2xkZXIoZ2V0Rm9sZGVyTmFtZShpbXBvcnQubWV0YS51cmwpKTtcbiAgaWYgKCFwYWNrYWdlRm9sZGVyKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdDb3VsZCBub3QgcmVzb2x2ZSB0aGUgb2JzaWRpYW4tZGV2LXV0aWxzIHBhY2thZ2UgZm9sZGVyIHRvIHNlZWQgdGhlIGludGVncmF0aW9uLXRlc3QgaGFybmVzcyBwbHVnaW4uJyk7XG4gIH1cblxuICBjb25zdCBwbHVnaW5Tb3VyY2VGb2xkZXIgPSBqb2luKHBhY2thZ2VGb2xkZXIsIE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuRGlzdEludGVncmF0aW9uVGVzdFBsdWdpbik7XG4gIGNvbnN0IHBsdWdpblZhdWx0Rm9sZGVyID0gam9pbihcbiAgICBPYnNpZGlhblBsdWdpblJlcG9QYXRocy5Eb3RPYnNpZGlhbixcbiAgICBPYnNpZGlhblBsdWdpblJlcG9QYXRocy5QbHVnaW5zLFxuICAgIE9CU0lESUFOX0RFVl9VVElMU19JTlRFR1JBVElPTl9URVNUX1BMVUdJTl9JRFxuICApO1xuXG4gIGNvbnN0IHBvcHVsYXRlOiBSZWNvcmQ8c3RyaW5nLCBVaW50OEFycmF5PiA9IHt9O1xuXG4gIGZvciAoY29uc3QgZmlsZU5hbWUgb2YgW09ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1haW5KcywgT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RKc29uXSkge1xuICAgIGNvbnN0IHNvdXJjZVBhdGggPSBqb2luKHBsdWdpblNvdXJjZUZvbGRlciwgZmlsZU5hbWUpO1xuICAgIGxldCBjb250ZW50OiBVaW50OEFycmF5O1xuICAgIHRyeSB7XG4gICAgICBjb250ZW50ID0gcmVhZEZpbGVTeW5jKHNvdXJjZVBhdGgpO1xuICAgIH0gY2F0Y2ggKGVycm9yOiB1bmtub3duKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBDb3VsZCBub3QgcmVhZCAke3NvdXJjZVBhdGh9LiBUaGUgaW50ZWdyYXRpb24tdGVzdCBoYXJuZXNzIHBsdWdpbiBpcyBtaXNzaW5nIGZyb20gdGhlIGluc3RhbGxlZCBgXG4gICAgICAgICAgKyAnb2JzaWRpYW4tZGV2LXV0aWxzIHBhY2thZ2UgXHUyMDE0IHJ1biBgbnBtIHJ1biBidWlsZGAgaW4gb2JzaWRpYW4tZGV2LXV0aWxzLCBvciByZWluc3RhbGwgaXQuJyxcbiAgICAgICAgeyBjYXVzZTogZXJyb3IgfVxuICAgICAgKTtcbiAgICB9XG4gICAgcG9wdWxhdGVbam9pbihwbHVnaW5WYXVsdEZvbGRlciwgZmlsZU5hbWUpXSA9IGNvbnRlbnQ7XG4gIH1cblxuICByZXR1cm4gcG9wdWxhdGU7XG59XG5cbi8qKlxuICogUmVnaXN0ZXJzIHRoZSByZW5kZXJlci1zaWRlIHJlc29sdmVyIHRoYXQgbWVyZ2VzIHRoZSB3aG9sZSBsaWJyYXJ5IGludG8gdGhlIGBsaWJgIGFyZ3VtZW50IG9mIGV2ZXJ5XG4gKiBgZXZhbEluT2JzaWRpYW5gIGNhbGxiYWNrLCByZWFkaW5nIGl0IGZyb20gdGhlIGdsb2JhbCB0aGUgaGFybmVzcyBwbHVnaW4gcHVibGlzaGVzLlxuICpcbiAqIENhbGwgb25jZSBwZXIgdGVzdCB3b3JrZXIgXHUyMDE0IHRoZSBwdWJsaXNoZWQgYG9ic2lkaWFuLWRldi11dGlscy9pbnRlZ3JhdGlvbi10ZXN0LXNldHVwYCBlbmRwb2ludCBkb2VzIGl0XG4gKiBmb3IgeW91IHdoZW4gbGlzdGVkIGluIGBzZXR1cEZpbGVzYC4gUmVnaXN0cmF0aW9uIGlzIGlkZW1wb3RlbnQgKHRoZSBoYXJuZXNzIGRlZHVwZXMgcmVzb2x2ZXJzIGJ5IHNvdXJjZVxuICogdGV4dCksIHNvIGNhbGxpbmcgaXQgbW9yZSB0aGFuIG9uY2UgaXMgc2FmZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVySW50ZWdyYXRpb25UZXN0TGliUmVzb2x2ZXIoKTogdm9pZCB7XG4gIHJlZ2lzdGVyTGliUmVzb2x2ZXIoKCk6IG9iamVjdCA9PiB7XG4gICAgY29uc3Qgb2JzaWRpYW5EZXZVdGlsc01vZHVsZSA9ICh3aW5kb3cgYXMgUGFydGlhbDxPYnNpZGlhbkRldlV0aWxzTW9kdWxlV2luZG93PikuX19vYnNpZGlhbkRldlV0aWxzTW9kdWxlO1xuICAgIGlmICghb2JzaWRpYW5EZXZVdGlsc01vZHVsZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnVGhlIG9ic2lkaWFuLWRldi11dGlscyBtb2R1bGUgaXMgbm90IGV4cG9zZWQgb24gYHdpbmRvd2AuIElzIHRoZSBvYnNpZGlhbi1kZXYtdXRpbHMgaW50ZWdyYXRpb24tdGVzdCAnXG4gICAgICAgICAgKyAnaGFybmVzcyBwbHVnaW4gaW5zdGFsbGVkIGFuZCBlbmFibGVkIGluIHRoZSB0ZXN0IHZhdWx0PyBTZWUgJ1xuICAgICAgICAgICsgJ2BvYnNpZGlhbi1kZXYtdXRpbHMvaW50ZWdyYXRpb24tdGVzdC12aXRlc3QtZ2xvYmFsLXNldHVwYC4nXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gb2JzaWRpYW5EZXZVdGlsc01vZHVsZS5fX21lcmdlZDtcbiAgfSk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFtQ0EscUJBQTZCO0FBQzdCLDBDQUFvQztBQUVwQyx3Q0FBd0M7QUFDeEMsa0JBR087QUFDUCwyQ0FBMEM7QUFDMUMsa0JBQThCO0FBNUM5QixJQUFJLG9CQUFvQixXQUFXLGlCQUFpQixNQUFNLE1BQU07QUFDMUQsTUFBSSxPQUFPLGVBQWUsVUFBVTtBQUNsQyxVQUFNLGVBQWU7QUFDckIsVUFBTSxNQUFNLGFBQWEsVUFBVTtBQUNuQyxRQUFJLE9BQU8sSUFBSSxrQkFBa0IsWUFBWTtBQUMzQyxhQUFPLElBQUksY0FBYyxVQUFVLEVBQUU7QUFBQSxJQUN2QztBQUFBLEVBQ0Y7QUFFQSxNQUFJLE9BQU8sV0FBVyxhQUFhO0FBQ2pDLFdBQU8sYUFBYSxTQUFTO0FBQUEsRUFDL0I7QUFHQSxTQUFPO0FBQ1QsR0FBRztBQW1DQSxNQUFNLGdEQUFnRDtBQTBCdEQsU0FBUyxtQ0FBK0Q7QUFDN0UsUUFBTSxvQkFBZ0IsK0JBQWMsMkJBQWMsaUJBQWUsQ0FBQztBQUNsRSxNQUFJLENBQUMsZUFBZTtBQUNsQixVQUFNLElBQUksTUFBTSxzR0FBc0c7QUFBQSxFQUN4SDtBQUVBLFFBQU0seUJBQXFCLGtCQUFLLGVBQWUsK0RBQTBCLHlCQUF5QjtBQUNsRyxRQUFNLHdCQUFvQjtBQUFBLElBQ3hCLDBEQUF3QjtBQUFBLElBQ3hCLDBEQUF3QjtBQUFBLElBQ3hCO0FBQUEsRUFDRjtBQUVBLFFBQU0sV0FBdUMsQ0FBQztBQUU5QyxhQUFXLFlBQVksQ0FBQywwREFBd0IsUUFBUSwwREFBd0IsWUFBWSxHQUFHO0FBQzdGLFVBQU0saUJBQWEsa0JBQUssb0JBQW9CLFFBQVE7QUFDcEQsUUFBSTtBQUNKLFFBQUk7QUFDRixvQkFBVSw2QkFBYSxVQUFVO0FBQUEsSUFDbkMsU0FBUyxPQUFnQjtBQUN2QixZQUFNLElBQUk7QUFBQSxRQUNSLGtCQUFrQixVQUFVO0FBQUEsUUFFNUIsRUFBRSxPQUFPLE1BQU07QUFBQSxNQUNqQjtBQUFBLElBQ0Y7QUFDQSxpQkFBUyxrQkFBSyxtQkFBbUIsUUFBUSxDQUFDLElBQUk7QUFBQSxFQUNoRDtBQUVBLFNBQU87QUFDVDtBQVVPLFNBQVMscUNBQTJDO0FBQ3pELCtEQUFvQixNQUFjO0FBQ2hDLFVBQU0seUJBQTBCLE9BQWlEO0FBQ2pGLFFBQUksQ0FBQyx3QkFBd0I7QUFDM0IsWUFBTSxJQUFJO0FBQUEsUUFDUjtBQUFBLE1BR0Y7QUFBQSxJQUNGO0FBQ0EsV0FBTyx1QkFBdUI7QUFBQSxFQUNoQyxDQUFDO0FBQ0g7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
|
@@ -40,16 +40,11 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
40
40
|
globalThisRecord[key] ??= newFuncs[key]?.();
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
function name(obj) {
|
|
44
|
-
return obj;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
43
|
function extractDefault(module) {
|
|
48
44
|
return module && module.__esModule && 'default' in module ? module.default : module;
|
|
49
45
|
}
|
|
50
46
|
|
|
51
|
-
const OBSIDIAN_BUILT_IN_MODULE_NAMES = [
|
|
52
|
-
'obsidian',
|
|
47
|
+
const OBSIDIAN_BUILT_IN_MODULE_NAMES = new Set([
|
|
53
48
|
'@codemirror/autocomplete',
|
|
54
49
|
'@codemirror/collab',
|
|
55
50
|
'@codemirror/commands',
|
|
@@ -60,11 +55,12 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
60
55
|
'@codemirror/text',
|
|
61
56
|
'@codemirror/view',
|
|
62
57
|
'@lezer/common',
|
|
58
|
+
'@lezer/highlight',
|
|
63
59
|
'@lezer/lr',
|
|
64
|
-
'
|
|
65
|
-
|
|
60
|
+
'obsidian']
|
|
61
|
+
);
|
|
66
62
|
|
|
67
|
-
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = [
|
|
63
|
+
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = new Set([
|
|
68
64
|
'@codemirror/closebrackets',
|
|
69
65
|
'@codemirror/comment',
|
|
70
66
|
'@codemirror/fold',
|
|
@@ -76,11 +72,11 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
76
72
|
'@codemirror/rangeset',
|
|
77
73
|
'@codemirror/rectangular-selection',
|
|
78
74
|
'@codemirror/stream-parser',
|
|
79
|
-
'@codemirror/tooltip']
|
|
80
|
-
|
|
75
|
+
'@codemirror/tooltip']
|
|
76
|
+
);
|
|
81
77
|
|
|
82
78
|
function requirePatched(id) {
|
|
83
|
-
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.
|
|
79
|
+
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
|
|
84
80
|
return originalRequire?.(id);
|
|
85
81
|
}
|
|
86
82
|
|
|
@@ -89,8 +85,8 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
89
85
|
if (id === 'process' || id === 'node:process') {
|
|
90
86
|
// eslint-disable-next-line no-console -- Valid usage.
|
|
91
87
|
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
|
|
92
|
-
|
|
93
|
-
return
|
|
88
|
+
|
|
89
|
+
return process;
|
|
94
90
|
}
|
|
95
91
|
} else {
|
|
96
92
|
const module = originalRequire?.(id);
|
|
@@ -258,6 +254,7 @@ class ObsidianPluginVitestConfigContext {
|
|
|
258
254
|
include: [UNIT_TEST_FILES],
|
|
259
255
|
name: "unit-tests",
|
|
260
256
|
server: {
|
|
257
|
+
// eslint-disable-next-line unicorn/name-replacements -- `deps` is declared by `vitest`; renaming it here would not match the API.
|
|
261
258
|
deps: {
|
|
262
259
|
inline: ["@obsidian-typings", "obsidian-dev-utils"]
|
|
263
260
|
}
|
|
@@ -325,4 +322,4 @@ function defineObsidianPluginVitestConfig(options = {}) {
|
|
|
325
322
|
ObsidianPluginVitestConfigContext,
|
|
326
323
|
defineObsidianPluginVitestConfig
|
|
327
324
|
});
|
|
328
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy90ZXN0LXJ1bm5lcnMvdml0ZXN0LWNvbmZpZy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFNoYXJlZCB2aXRlc3QgY29uZmlndXJhdGlvbiBmb3IgT2JzaWRpYW4gcGx1Z2lucy5cbiAqXG4gKiBFdmVyeSBwbHVnaW4gaW4gdGhlIHdvcmtzcGFjZSBkZWNsYXJlcyB0aGUgc2FtZSBmaXZlIHZpdGVzdCBwcm9qZWN0cyBcdTIwMTQgYHVuaXQtdGVzdHNgIHBsdXMgdGhlXG4gKiBgaW50ZWdyYXRpb24tdGVzdHM6e25vLWFwcCxkZXNrdG9wLGRlc2t0b3AtcGVyZm9ybWFuY2UsYW5kcm9pZH1gIGZhbWlseSBcdTIwMTQgd2l0aCB0aGUgc2FtZSB0aW1lb3V0cyxcbiAqIGBzZXR1cEZpbGVzYCwgYW5kIGBnbG9iYWxTZXR1cGAgd2lyaW5nLiBNYWludGFpbmluZyB0aGF0IHBlciByZXBvIG1lYW5zIGEgY29udmVudGlvbiBjaGFuZ2UgY29zdHMgb25lXG4gKiBuZWFyLWlkZW50aWNhbCBlZGl0IHBlciBwbHVnaW4sIGFuZCBhbnkgcmVwbyB0aGF0IGlzIG1pc3NlZCBkcmlmdHMgc2lsZW50bHkuIFRoaXMgbW9kdWxlIG93bnMgdGhhdFxuICogY29uZmlndXJhdGlvbiBvbmNlLCBzbyBhIHBsdWdpbidzIGBzY3JpcHRzL3ZpdGVzdC1jb25maWcudHNgIGNvbGxhcHNlcyB0byBhIHNpbmdsZSBjYWxsLlxuICpcbiAqIFRoZSBzZWFtIG1pcnJvcnMge0BsaW5rIGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL29ic2lkaWFuLWRldi11dGlscyB8IHRoZSBFU0xpbnQgb25lfVxuICogKGBkZWZpbmVFc2xpbnRDb25maWdzYCk6IHRoZSBmYWN0b3J5IGJ1aWxkcyBhIGNvbnRleHQgaG9sZGluZyB0aGUgc3RhbmRhcmQgcHJvamVjdHMsIHRoZSBjYWxsZXIgZWRpdHNcbiAqIGl0IGluIHBsYWNlIHRocm91Z2gge0BsaW5rIERlZmluZU9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnT3B0aW9ucy5lZGl0Q29udGV4dH0sIGFuZCBhcHBlbmRzIGFueVxuICogcHJvamVjdCB0aGUgYmFzZSBkb2VzIG5vdCBrbm93IGFib3V0IHRocm91Z2hcbiAqIHtAbGluayBEZWZpbmVPYnNpZGlhblBsdWdpblZpdGVzdENvbmZpZ09wdGlvbnMuY3VzdG9tUHJvamVjdHN9LlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgVGVzdFByb2plY3RDb25maWd1cmF0aW9uLFxuICBUZXN0UHJvamVjdElubGluZUNvbmZpZ3VyYXRpb24sXG4gIFZpdGVVc2VyQ29uZmlnXG59IGZyb20gJ3ZpdGVzdC9jb25maWcnO1xuXG5pbXBvcnQgcHJvY2VzcyBmcm9tICdub2RlOnByb2Nlc3MnO1xuaW1wb3J0IHsgZGVmaW5lQ29uZmlnIH0gZnJvbSAndml0ZXN0L2NvbmZpZyc7XG5cbi8qKlxuICogVGhlIGB0ZXN0YCBzZWN0aW9uIG9mIGEgc2luZ2xlIHZpdGVzdCBwcm9qZWN0IGVudHJ5LlxuICovXG5leHBvcnQgdHlwZSBPYnNpZGlhblBsdWdpblZpdGVzdFByb2plY3RDb25maWcgPSBOb25OdWxsYWJsZTxUZXN0UHJvamVjdElubGluZUNvbmZpZ3VyYXRpb25bJ3Rlc3QnXT47XG5cbmNvbnN0IEFORFJPSURfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFMgPSA2MF8wMDA7XG5jb25zdCBCSUdfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFMgPSAzMF8wMDA7XG5jb25zdCBIT09LX1RJTUVPVVRfTVVMVElQTElFUiA9IDQ7XG5jb25zdCBQRVJGT1JNQU5DRV9USU1FT1VUX0lOX01JTExJU0VDT05EUyA9IDYwMF8wMDA7XG5cbmNvbnN0IEFORFJPSURfVEVTVF9GSUxFUyA9ICdzcmMvKiovKi5hbmRyb2lkLmludGVncmF0aW9uLnRlc3QudHMnO1xuY29uc3QgQ1JPU1NfUExBVEZPUk1fVEVTVF9GSUxFUyA9ICdzcmMvKiovKi5jcm9zcy1wbGF0Zm9ybS5pbnRlZ3JhdGlvbi50ZXN0LnRzJztcbmNvbnN0IERFU0tUT1BfUEVSRk9STUFOQ0VfVEVTVF9GSUxFUyA9ICdzcmMvKiovKi5kZXNrdG9wLXBlcmZvcm1hbmNlLmludGVncmF0aW9uLnRlc3QudHMnO1xuY29uc3QgREVTS1RPUF9URVNUX0ZJTEVTID0gJ3NyYy8qKi8qLmRlc2t0b3AuaW50ZWdyYXRpb24udGVzdC50cyc7XG5jb25zdCBJTlRFR1JBVElPTl9URVNUX0ZJTEVTID0gJ3NyYy8qKi8qLmludGVncmF0aW9uLnRlc3QudHMnO1xuY29uc3QgTk9fQVBQX1RFU1RfRklMRVMgPSAnc3JjLyoqLyoubm8tYXBwLmludGVncmF0aW9uLnRlc3QudHMnO1xuY29uc3QgVU5JVF9URVNUX0ZJTEVTID0gJ3NyYy8qKi8qLnRlc3QudHMnO1xuXG5jb25zdCBPQlNJRElBTl9WRVJTSU9OX0VOVl9WQVJJQUJMRV9OQU1FID0gJ09CU0lESUFOX1ZFUlNJT04nO1xuY29uc3QgU0hBUkVEX0VYQ0xVREUgPSBbJ25vZGVfbW9kdWxlcycsICdkaXN0J107XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgZm9yIGRlZmluaW5nIGEgcGx1Z2luJ3Mgdml0ZXN0IGNvbmZpZ3VyYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVmaW5lT2JzaWRpYW5QbHVnaW5WaXRlc3RDb25maWdPcHRpb25zIHtcbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdGhhdCBidWlsZHMgcHJvamVjdHMgdGhlIGJhc2UgY29uZmlndXJhdGlvbiBkb2VzIG5vdCBrbm93IGFib3V0LCBzdWNoIGFzIGEgcGx1Z2luJ3Mgb3duXG4gICAqIGBpbnRlZ3JhdGlvbi10ZXN0czpkZW1vLXZhdWx0YCBwcm9qZWN0LiBUaGUgcmV0dXJuZWQgcHJvamVjdHMgYXJlIGFwcGVuZGVkIGFmdGVyIHRoZSBzdGFuZGFyZCBmaXZlLlxuICAgKlxuICAgKiBAcGFyYW0gY29udGV4dCAtIFRoZSB2aXRlc3QgY29uZmlndXJhdGlvbiBjb250ZXh0LlxuICAgKiBAcmV0dXJucyBUaGUgZXh0cmEgcHJvamVjdHMuXG4gICAqL1xuICBjdXN0b21Qcm9qZWN0cz8oY29udGV4dDogT2JzaWRpYW5QbHVnaW5WaXRlc3RDb25maWdDb250ZXh0KTogVGVzdFByb2plY3RDb25maWd1cmF0aW9uW107XG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdGhhdCBlZGl0cyB0aGUgdml0ZXN0IGNvbmZpZ3VyYXRpb24gY29udGV4dCBiZWZvcmUgaXQgaXMgYXNzZW1ibGVkIGludG8gYSBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gY29udGV4dCAtIFRoZSB2aXRlc3QgY29uZmlndXJhdGlvbiBjb250ZXh0LlxuICAgKi9cbiAgZWRpdENvbnRleHQ/KGNvbnRleHQ6IE9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnQ29udGV4dCk6IHZvaWQ7XG59XG5cbi8qKlxuICogVGhlIGNvbnRleHQgZm9yIGRlZmluaW5nIGEgcGx1Z2luJ3Mgdml0ZXN0IGNvbmZpZ3VyYXRpb24uXG4gKlxuICogRXZlcnkgbWVtYmVyIGlzIGxpdmU6IHRoZSBhcnJheXMgYW5kIG9iamVjdHMgaXQgZXhwb3NlcyBhcmUgdGhlIHZlcnkgb25lcyB0aGUgYXNzZW1ibGVkIGNvbmZpZ3VyYXRpb25cbiAqIGlzIGJ1aWx0IGZyb20sIHNvIGVkaXRpbmcgdGhlbSBpbiBwbGFjZSB0aHJvdWdoXG4gKiB7QGxpbmsgRGVmaW5lT2JzaWRpYW5QbHVnaW5WaXRlc3RDb25maWdPcHRpb25zLmVkaXRDb250ZXh0fSBpcyB3aGF0IGN1c3RvbWl6ZXMgdGhlIHJlc3VsdC5cbiAqL1xuZXhwb3J0IGNsYXNzIE9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnQ29udGV4dCB7XG4gIC8qKlxuICAgKiBUaGUgYGludGVncmF0aW9uLXRlc3RzOmFuZHJvaWRgIHByb2plY3QsIHJ1bm5pbmcgdGhlIG1vYmlsZS1vbmx5IGFuZCBjcm9zcy1wbGF0Zm9ybSBzdWl0ZXMgYWdhaW5zdCBhblxuICAgKiBBbmRyb2lkIGVtdWxhdG9yIHRocm91Z2ggQXBwaXVtLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFuZHJvaWQ6IE9ic2lkaWFuUGx1Z2luVml0ZXN0UHJvamVjdENvbmZpZyA9IHtcbiAgICBlbnZpcm9ubWVudDogJ25vZGUnLFxuICAgIGVudmlyb25tZW50T3B0aW9uczoge1xuICAgICAgb2JzaWRpYW5UcmFuc3BvcnQ6IHtcbiAgICAgICAgYXBwaXVtVXJsOiAnaHR0cDovL2xvY2FsaG9zdDo0NzIzJyxcbiAgICAgICAgYXZkTmFtZTogJ29ic2lkaWFuX3Rlc3QnLFxuICAgICAgICB0eXBlOiAnb2JzaWRpYW4tYW5kcm9pZC1hcHBpdW0nXG4gICAgICB9XG4gICAgfSxcbiAgICBmaWxlUGFyYWxsZWxpc206IGZhbHNlLFxuICAgIGdsb2JhbFNldHVwOiBbJ29ic2lkaWFuLWludGVncmF0aW9uLXRlc3Rpbmcvdml0ZXN0LWdsb2JhbC1zZXR1cC1wbHVnaW4nXSxcbiAgICBob29rVGltZW91dDogQU5EUk9JRF9USU1FT1VUX0lOX01JTExJU0VDT05EUyAqIEhPT0tfVElNRU9VVF9NVUxUSVBMSUVSLFxuICAgIGluY2x1ZGU6IFtBTkRST0lEX1RFU1RfRklMRVMsIENST1NTX1BMQVRGT1JNX1RFU1RfRklMRVNdLFxuICAgIG5hbWU6ICdpbnRlZ3JhdGlvbi10ZXN0czphbmRyb2lkJyxcbiAgICBzZXR1cEZpbGVzOiBbJ29ic2lkaWFuLWludGVncmF0aW9uLXRlc3Rpbmcvdml0ZXN0LXNldHVwJ10sXG4gICAgdGVzdFRpbWVvdXQ6IEFORFJPSURfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFNcbiAgfTtcblxuICAvKipcbiAgICogVGhlIHBlci10ZXN0IGJ1ZGdldCBvZiB0aGUgQW5kcm9pZCBpbnRlZ3JhdGlvbiBwcm9qZWN0LCBpbiBtaWxsaXNlY29uZHMuIEJvb3RpbmcgYW4gZW11bGF0b3IgYW5kXG4gICAqIGRyaXZpbmcgaXQgb3ZlciBBcHBpdW0gaXMgc2xvd2VyIHRoYW4gdGhlIGRlc2t0b3AgcGF0aCwgaGVuY2UgaXRzIG93biBjb25zdGFudC5cbiAgICpcbiAgICogQGRlZmF1bHQgYDYwMDAwYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFuZHJvaWRUaW1lb3V0SW5NaWxsaXNlY29uZHMgPSBBTkRST0lEX1RJTUVPVVRfSU5fTUlMTElTRUNPTkRTO1xuXG4gIC8qKlxuICAgKiBUaGUgcGVyLXRlc3QgYnVkZ2V0IG9mIHRoZSByZWd1bGFyIGludGVncmF0aW9uIHByb2plY3RzLCBpbiBtaWxsaXNlY29uZHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGAzMDAwMGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBiaWdUaW1lb3V0SW5NaWxsaXNlY29uZHMgPSBCSUdfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFM7XG5cbiAgLyoqXG4gICAqIFRoZSBjb3ZlcmFnZSBgZXhjbHVkZWAgZ2xvYnMuIFB1c2ggb250byBpdCB0byBkcm9wIG1vcmUgZmlsZXMgZnJvbSB0aGUgY292ZXJhZ2UgcmVwb3J0LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNvdmVyYWdlRXhjbHVkZTogc3RyaW5nW10gPSBbVU5JVF9URVNUX0ZJTEVTXTtcblxuICAvKipcbiAgICogVGhlIGBpbnRlZ3JhdGlvbi10ZXN0czpkZXNrdG9wYCBwcm9qZWN0LCBydW5uaW5nIHRoZSBkZXNrdG9wLW9ubHkgYW5kIGNyb3NzLXBsYXRmb3JtIHN1aXRlcyBhZ2FpbnN0IGFcbiAgICogcmVhbCBkZXNrdG9wIE9ic2lkaWFuIG92ZXIgQ0RQLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlc2t0b3A6IE9ic2lkaWFuUGx1Z2luVml0ZXN0UHJvamVjdENvbmZpZyA9IHtcbiAgICBlbnZpcm9ubWVudDogJ25vZGUnLFxuICAgIGZpbGVQYXJhbGxlbGlzbTogZmFsc2UsXG4gICAgZ2xvYmFsU2V0dXA6IFsnb2JzaWRpYW4taW50ZWdyYXRpb24tdGVzdGluZy92aXRlc3QtZ2xvYmFsLXNldHVwLXBsdWdpbiddLFxuICAgIGhvb2tUaW1lb3V0OiBCSUdfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFMgKiBIT09LX1RJTUVPVVRfTVVMVElQTElFUixcbiAgICBpbmNsdWRlOiBbREVTS1RPUF9URVNUX0ZJTEVTLCBDUk9TU19QTEFURk9STV9URVNUX0ZJTEVTXSxcbiAgICBuYW1lOiAnaW50ZWdyYXRpb24tdGVzdHM6ZGVza3RvcCcsXG4gICAgc2V0dXBGaWxlczogWydvYnNpZGlhbi1pbnRlZ3JhdGlvbi10ZXN0aW5nL3ZpdGVzdC1zZXR1cCddLFxuICAgIHRlc3RUaW1lb3V0OiBCSUdfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFNcbiAgfTtcblxuICAvKipcbiAgICogVGhlIGBpbnRlZ3JhdGlvbi10ZXN0czpkZXNrdG9wLXBlcmZvcm1hbmNlYCBwcm9qZWN0LCBydW5uaW5nIHRoZSBhdC1zY2FsZSBzdWl0ZXMuIEl0IGlzIGRlY2xhcmVkIGZvclxuICAgKiBldmVyeSBwbHVnaW4gZXZlbiB3aGVuIHRoZXJlIGlzIG5vIHN1Y2ggc3VpdGUgeWV0IFx1MjAxNCBgcGFzc1dpdGhOb1Rlc3RzYCBtYWtlcyBhbiBlbXB0eSBwcm9qZWN0IGZyZWUsXG4gICAqIGFuZCB0aGUgbWF0Y2hpbmcgYHRlc3Q6aW50ZWdyYXRpb246ZGVza3RvcDpwZXJmb3JtYW5jZWAgc2NyaXB0IGV4aXN0cyBmbGVldC13aWRlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlc2t0b3BQZXJmb3JtYW5jZTogT2JzaWRpYW5QbHVnaW5WaXRlc3RQcm9qZWN0Q29uZmlnID0ge1xuICAgIGVudmlyb25tZW50OiAnbm9kZScsXG4gICAgZmlsZVBhcmFsbGVsaXNtOiBmYWxzZSxcbiAgICBnbG9iYWxTZXR1cDogWydvYnNpZGlhbi1pbnRlZ3JhdGlvbi10ZXN0aW5nL3ZpdGVzdC1nbG9iYWwtc2V0dXAtcGx1Z2luJ10sXG4gICAgaG9va1RpbWVvdXQ6IFBFUkZPUk1BTkNFX1RJTUVPVVRfSU5fTUlMTElTRUNPTkRTLFxuICAgIGluY2x1ZGU6IFtERVNLVE9QX1BFUkZPUk1BTkNFX1RFU1RfRklMRVNdLFxuICAgIG5hbWU6ICdpbnRlZ3JhdGlvbi10ZXN0czpkZXNrdG9wLXBlcmZvcm1hbmNlJyxcbiAgICBzZXR1cEZpbGVzOiBbJ29ic2lkaWFuLWludGVncmF0aW9uLXRlc3Rpbmcvdml0ZXN0LXNldHVwJ10sXG4gICAgdGVzdFRpbWVvdXQ6IFBFUkZPUk1BTkNFX1RJTUVPVVRfSU5fTUlMTElTRUNPTkRTXG4gIH07XG5cbiAgLyoqXG4gICAqIFRoZSBtdWx0aXBsaWVyIGFwcGxpZWQgdG8gYSBwcm9qZWN0J3MgdGVzdCBidWRnZXQgdG8gZ2V0IGl0cyBob29rIGJ1ZGdldC4gQSBob29rIHR5cGljYWxseSBwb3B1bGF0ZXNcbiAgICogYW5kIG9wZW5zIGEgdmF1bHQsIHNvIGl0IG5lZWRzIHNldmVyYWwgdGltZXMgd2hhdCBhIHNpbmdsZSB0ZXN0IGRvZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGA0YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGhvb2tUaW1lb3V0TXVsdGlwbGllciA9IEhPT0tfVElNRU9VVF9NVUxUSVBMSUVSO1xuXG4gIC8qKlxuICAgKiBUaGUgYGludGVncmF0aW9uLXRlc3RzOm5vLWFwcGAgcHJvamVjdCwgcnVubmluZyB0aGUgc3VpdGVzIHRoYXQgbmVlZCBubyBPYnNpZGlhbiBpbnN0YW5jZSBhdCBhbGwuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbm9BcHA6IE9ic2lkaWFuUGx1Z2luVml0ZXN0UHJvamVjdENvbmZpZyA9IHtcbiAgICBlbnZpcm9ubWVudDogJ25vZGUnLFxuICAgIGZpbGVQYXJhbGxlbGlzbTogZmFsc2UsXG4gICAgaG9va1RpbWVvdXQ6IEJJR19USU1FT1VUX0lOX01JTExJU0VDT05EUyAqIEhPT0tfVElNRU9VVF9NVUxUSVBMSUVSLFxuICAgIGluY2x1ZGU6IFtOT19BUFBfVEVTVF9GSUxFU10sXG4gICAgbmFtZTogJ2ludGVncmF0aW9uLXRlc3RzOm5vLWFwcCcsXG4gICAgdGVzdFRpbWVvdXQ6IEJJR19USU1FT1VUX0lOX01JTExJU0VDT05EU1xuICB9O1xuXG4gIC8qKlxuICAgKiBUaGUgcGVyLXRlc3QgYnVkZ2V0IG9mIHRoZSBwZXJmb3JtYW5jZSBpbnRlZ3JhdGlvbiBwcm9qZWN0LCBpbiBtaWxsaXNlY29uZHMuIEEgcGVyZm9ybWFuY2UgdmF1bHQgaXNcbiAgICogcHJlLXBvcHVsYXRlZCB3aXRoIHRlbnMgb2YgdGhvdXNhbmRzIG9mIG5vdGVzIGJlZm9yZSBPYnNpZGlhbiBvcGVucywgc28gYm90aCBpdHMgc2V0dXAgYW5kIGl0cyB0ZXN0c1xuICAgKiBuZWVkIGZhciBtb3JlIHRpbWUgdGhhbiB0aGUgcmVndWxhciBpbnRlZ3JhdGlvbiBwcm9qZWN0cy5cbiAgICpcbiAgICogQGRlZmF1bHQgYDYwMDAwMGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwZXJmb3JtYW5jZVRpbWVvdXRJbk1pbGxpc2Vjb25kcyA9IFBFUkZPUk1BTkNFX1RJTUVPVVRfSU5fTUlMTElTRUNPTkRTO1xuXG4gIC8qKlxuICAgKiBUaGUgYHVuaXQtdGVzdHNgIHByb2plY3QsIHJ1bm5pbmcgdGhlIG1vY2tlZC1PYnNpZGlhbiBzdWl0ZXMgaW4gYGpzZG9tYC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB1bml0VGVzdHM6IE9ic2lkaWFuUGx1Z2luVml0ZXN0UHJvamVjdENvbmZpZyA9IHtcbiAgICBlbnZpcm9ubWVudDogJ2pzZG9tJyxcbiAgICBleGNsdWRlOiBbLi4uU0hBUkVEX0VYQ0xVREUsIElOVEVHUkFUSU9OX1RFU1RfRklMRVNdLFxuICAgIGV4ZWNBcmd2OiBbJy0tbm8td2Vic3RvcmFnZSddLFxuICAgIGluY2x1ZGU6IFtVTklUX1RFU1RfRklMRVNdLFxuICAgIG5hbWU6ICd1bml0LXRlc3RzJyxcbiAgICBzZXJ2ZXI6IHtcbiAgICAgIGRlcHM6IHtcbiAgICAgICAgaW5saW5lOiBbJ0BvYnNpZGlhbi10eXBpbmdzJywgJ29ic2lkaWFuLWRldi11dGlscyddXG4gICAgICB9XG4gICAgfSxcbiAgICBzZXR1cEZpbGVzOiBbXG4gICAgICAnb2JzaWRpYW4tdGVzdC1tb2Nrcy92aXRlc3Qtc2V0dXAnLFxuICAgICAgJ29ic2lkaWFuLXRlc3QtbW9ja3Mvb2JzaWRpYW4tdHlwaW5ncy92aXRlc3Qtc2V0dXAnLFxuICAgICAgJ29ic2lkaWFuLWRldi11dGlscy92aXRlc3Qtc2V0dXAnXG4gICAgXVxuICB9O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGNvbnRleHQgc2VlZGVkIHdpdGggdGhlIHN0YW5kYXJkIHByb2plY3RzLlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IG9ic2lkaWFuVmVyc2lvbiA9IHByb2Nlc3MuZW52W09CU0lESUFOX1ZFUlNJT05fRU5WX1ZBUklBQkxFX05BTUVdO1xuXG4gICAgLypcbiAgICAgKiBTdXBwb3J0IGlzIHRoZSByYW5nZSBbbGF0ZXN0IHB1YmxpYywgbGF0ZXN0IGNhdGFseXN0XSBhbmQgQk9USCBlbmRzIG11c3Qgd29yayAoRzk5KSwgc28gdGhlIHZlcnNpb25cbiAgICAgKiBpcyBhIGtub2IgcmF0aGVyIHRoYW4gYSBjb25zdGFudC4gVGhlIGtleSBpcyBhZGRlZCBPTkxZIHdoZW4gdGhlIHZhcmlhYmxlIGlzIHNldDogYW4gZXhwbGljaXRcbiAgICAgKiBgb2JzaWRpYW5WZXJzaW9uYCBtYWtlcyB0aGUgaGFybmVzcyByZXNvbHZlIGEgY29uY3JldGUgdmVyc2lvbiBhbmQgc3dhcCB0aGUgYXNhciwgd2hpY2ggaXMgbm90IHdoYXRcbiAgICAgKiBhbiB1bnBpbm5lZCBydW4gZG9lcywgc28gc2VlZGluZyBhIGRlZmF1bHQgaGVyZSB3b3VsZCBjaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIGV2ZXJ5IHBsdWdpbi5cbiAgICAgKi9cbiAgICBpZiAob2JzaWRpYW5WZXJzaW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuZGVza3RvcC5lbnZpcm9ubWVudE9wdGlvbnMgPSB7XG4gICAgICAgIG9ic2lkaWFuVHJhbnNwb3J0OiB7XG4gICAgICAgICAgb2JzaWRpYW5WZXJzaW9uLFxuICAgICAgICAgIHR5cGU6ICdvYnNpZGlhbi1jZHAnXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgdml0ZXN0IGNvbmZpZ3VyYXRpb24gZm9yIGFuIE9ic2lkaWFuIHBsdWdpbi5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciBkZWZpbmluZyB0aGUgY29uZmlndXJhdGlvbi5cbiAqIEByZXR1cm5zIFRoZSB2aXRlc3QgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlZmluZU9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnKG9wdGlvbnM6IERlZmluZU9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnT3B0aW9ucyA9IHt9KTogVml0ZVVzZXJDb25maWcge1xuICBjb25zdCBjb250ZXh0ID0gbmV3IE9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnQ29udGV4dCgpO1xuXG4gIGlmIChvcHRpb25zLmVkaXRDb250ZXh0KSB7XG4gICAgb3B0aW9ucy5lZGl0Q29udGV4dChjb250ZXh0KTtcbiAgfVxuXG4gIGNvbnN0IGN1c3RvbVByb2plY3RzID0gb3B0aW9ucy5jdXN0b21Qcm9qZWN0cz8uKGNvbnRleHQpID8/IFtdO1xuXG4gIHJldHVybiBkZWZpbmVDb25maWcoe1xuICAgIHRlc3Q6IHtcbiAgICAgIGNvdmVyYWdlOiB7XG4gICAgICAgIGV4Y2x1ZGU6IGNvbnRleHQuY292ZXJhZ2VFeGNsdWRlLFxuICAgICAgICBpbmNsdWRlOiBbJ3NyYy8qKi8qLnRzJ10sXG4gICAgICAgIHByb3ZpZGVyOiAndjgnLFxuICAgICAgICByZXBvcnRlcjogWyd0ZXh0JywgJ2xjb3YnLCAnaHRtbCddLFxuICAgICAgICByZXBvcnRzRGlyZWN0b3J5OiAnLi9jb3ZlcmFnZSdcbiAgICAgIH0sXG4gICAgICBleGNsdWRlOiBbLi4uU0hBUkVEX0VYQ0xVREVdLFxuICAgICAgZ2xvYmFsczogZmFsc2UsXG4gICAgICBpbmNsdWRlOiBbVU5JVF9URVNUX0ZJTEVTXSxcbiAgICAgIHBhc3NXaXRoTm9UZXN0czogdHJ1ZSxcbiAgICAgIHByb2plY3RzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICByZXNvbHZlOiB7XG4gICAgICAgICAgICBhbGlhczoge1xuICAgICAgICAgICAgICBvYnNpZGlhbjogJ29ic2lkaWFuLXRlc3QtbW9ja3Mvb2JzaWRpYW4nXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICB0ZXN0OiBjb250ZXh0LnVuaXRUZXN0c1xuICAgICAgICB9LFxuICAgICAgICB7IHRlc3Q6IGNvbnRleHQubm9BcHAgfSxcbiAgICAgICAgeyB0ZXN0OiBjb250ZXh0LmRlc2t0b3AgfSxcbiAgICAgICAgeyB0ZXN0OiBjb250ZXh0LmRlc2t0b3BQZXJmb3JtYW5jZSB9LFxuICAgICAgICB7IHRlc3Q6IGNvbnRleHQuYW5kcm9pZCB9LFxuICAgICAgICAuLi5jdXN0b21Qcm9qZWN0c1xuICAgICAgXVxuICAgIH1cbiAgfSk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUF3QkEsMEJBQW9CO0FBQ3BCLG9CQUE2QjtBQU83QixNQUFNLGtDQUFrQztBQUN4QyxNQUFNLDhCQUE4QjtBQUNwQyxNQUFNLDBCQUEwQjtBQUNoQyxNQUFNLHNDQUFzQztBQUU1QyxNQUFNLHFCQUFxQjtBQUMzQixNQUFNLDRCQUE0QjtBQUNsQyxNQUFNLGlDQUFpQztBQUN2QyxNQUFNLHFCQUFxQjtBQUMzQixNQUFNLHlCQUF5QjtBQUMvQixNQUFNLG9CQUFvQjtBQUMxQixN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
|
|
325
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy90ZXN0LXJ1bm5lcnMvdml0ZXN0LWNvbmZpZy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFNoYXJlZCB2aXRlc3QgY29uZmlndXJhdGlvbiBmb3IgT2JzaWRpYW4gcGx1Z2lucy5cbiAqXG4gKiBFdmVyeSBwbHVnaW4gaW4gdGhlIHdvcmtzcGFjZSBkZWNsYXJlcyB0aGUgc2FtZSBmaXZlIHZpdGVzdCBwcm9qZWN0cyBcdTIwMTQgYHVuaXQtdGVzdHNgIHBsdXMgdGhlXG4gKiBgaW50ZWdyYXRpb24tdGVzdHM6e25vLWFwcCxkZXNrdG9wLGRlc2t0b3AtcGVyZm9ybWFuY2UsYW5kcm9pZH1gIGZhbWlseSBcdTIwMTQgd2l0aCB0aGUgc2FtZSB0aW1lb3V0cyxcbiAqIGBzZXR1cEZpbGVzYCwgYW5kIGBnbG9iYWxTZXR1cGAgd2lyaW5nLiBNYWludGFpbmluZyB0aGF0IHBlciByZXBvIG1lYW5zIGEgY29udmVudGlvbiBjaGFuZ2UgY29zdHMgb25lXG4gKiBuZWFyLWlkZW50aWNhbCBlZGl0IHBlciBwbHVnaW4sIGFuZCBhbnkgcmVwbyB0aGF0IGlzIG1pc3NlZCBkcmlmdHMgc2lsZW50bHkuIFRoaXMgbW9kdWxlIG93bnMgdGhhdFxuICogY29uZmlndXJhdGlvbiBvbmNlLCBzbyBhIHBsdWdpbidzIGBzY3JpcHRzL3ZpdGVzdC1jb25maWcudHNgIGNvbGxhcHNlcyB0byBhIHNpbmdsZSBjYWxsLlxuICpcbiAqIFRoZSBzZWFtIG1pcnJvcnMge0BsaW5rIGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL29ic2lkaWFuLWRldi11dGlscyB8IHRoZSBFU0xpbnQgb25lfVxuICogKGBkZWZpbmVFc2xpbnRDb25maWdzYCk6IHRoZSBmYWN0b3J5IGJ1aWxkcyBhIGNvbnRleHQgaG9sZGluZyB0aGUgc3RhbmRhcmQgcHJvamVjdHMsIHRoZSBjYWxsZXIgZWRpdHNcbiAqIGl0IGluIHBsYWNlIHRocm91Z2gge0BsaW5rIERlZmluZU9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnT3B0aW9ucy5lZGl0Q29udGV4dH0sIGFuZCBhcHBlbmRzIGFueVxuICogcHJvamVjdCB0aGUgYmFzZSBkb2VzIG5vdCBrbm93IGFib3V0IHRocm91Z2hcbiAqIHtAbGluayBEZWZpbmVPYnNpZGlhblBsdWdpblZpdGVzdENvbmZpZ09wdGlvbnMuY3VzdG9tUHJvamVjdHN9LlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgVGVzdFByb2plY3RDb25maWd1cmF0aW9uLFxuICBUZXN0UHJvamVjdElubGluZUNvbmZpZ3VyYXRpb24sXG4gIFZpdGVVc2VyQ29uZmlnXG59IGZyb20gJ3ZpdGVzdC9jb25maWcnO1xuXG5pbXBvcnQgcHJvY2VzcyBmcm9tICdub2RlOnByb2Nlc3MnO1xuaW1wb3J0IHsgZGVmaW5lQ29uZmlnIH0gZnJvbSAndml0ZXN0L2NvbmZpZyc7XG5cbi8qKlxuICogVGhlIGB0ZXN0YCBzZWN0aW9uIG9mIGEgc2luZ2xlIHZpdGVzdCBwcm9qZWN0IGVudHJ5LlxuICovXG5leHBvcnQgdHlwZSBPYnNpZGlhblBsdWdpblZpdGVzdFByb2plY3RDb25maWcgPSBOb25OdWxsYWJsZTxUZXN0UHJvamVjdElubGluZUNvbmZpZ3VyYXRpb25bJ3Rlc3QnXT47XG5cbmNvbnN0IEFORFJPSURfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFMgPSA2MF8wMDA7XG5jb25zdCBCSUdfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFMgPSAzMF8wMDA7XG5jb25zdCBIT09LX1RJTUVPVVRfTVVMVElQTElFUiA9IDQ7XG5jb25zdCBQRVJGT1JNQU5DRV9USU1FT1VUX0lOX01JTExJU0VDT05EUyA9IDYwMF8wMDA7XG5cbmNvbnN0IEFORFJPSURfVEVTVF9GSUxFUyA9ICdzcmMvKiovKi5hbmRyb2lkLmludGVncmF0aW9uLnRlc3QudHMnO1xuY29uc3QgQ1JPU1NfUExBVEZPUk1fVEVTVF9GSUxFUyA9ICdzcmMvKiovKi5jcm9zcy1wbGF0Zm9ybS5pbnRlZ3JhdGlvbi50ZXN0LnRzJztcbmNvbnN0IERFU0tUT1BfUEVSRk9STUFOQ0VfVEVTVF9GSUxFUyA9ICdzcmMvKiovKi5kZXNrdG9wLXBlcmZvcm1hbmNlLmludGVncmF0aW9uLnRlc3QudHMnO1xuY29uc3QgREVTS1RPUF9URVNUX0ZJTEVTID0gJ3NyYy8qKi8qLmRlc2t0b3AuaW50ZWdyYXRpb24udGVzdC50cyc7XG5jb25zdCBJTlRFR1JBVElPTl9URVNUX0ZJTEVTID0gJ3NyYy8qKi8qLmludGVncmF0aW9uLnRlc3QudHMnO1xuY29uc3QgTk9fQVBQX1RFU1RfRklMRVMgPSAnc3JjLyoqLyoubm8tYXBwLmludGVncmF0aW9uLnRlc3QudHMnO1xuY29uc3QgVU5JVF9URVNUX0ZJTEVTID0gJ3NyYy8qKi8qLnRlc3QudHMnO1xuXG5jb25zdCBPQlNJRElBTl9WRVJTSU9OX0VOVl9WQVJJQUJMRV9OQU1FID0gJ09CU0lESUFOX1ZFUlNJT04nO1xuY29uc3QgU0hBUkVEX0VYQ0xVREUgPSBbJ25vZGVfbW9kdWxlcycsICdkaXN0J107XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgZm9yIGRlZmluaW5nIGEgcGx1Z2luJ3Mgdml0ZXN0IGNvbmZpZ3VyYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVmaW5lT2JzaWRpYW5QbHVnaW5WaXRlc3RDb25maWdPcHRpb25zIHtcbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdGhhdCBidWlsZHMgcHJvamVjdHMgdGhlIGJhc2UgY29uZmlndXJhdGlvbiBkb2VzIG5vdCBrbm93IGFib3V0LCBzdWNoIGFzIGEgcGx1Z2luJ3Mgb3duXG4gICAqIGBpbnRlZ3JhdGlvbi10ZXN0czpkZW1vLXZhdWx0YCBwcm9qZWN0LiBUaGUgcmV0dXJuZWQgcHJvamVjdHMgYXJlIGFwcGVuZGVkIGFmdGVyIHRoZSBzdGFuZGFyZCBmaXZlLlxuICAgKlxuICAgKiBAcGFyYW0gY29udGV4dCAtIFRoZSB2aXRlc3QgY29uZmlndXJhdGlvbiBjb250ZXh0LlxuICAgKiBAcmV0dXJucyBUaGUgZXh0cmEgcHJvamVjdHMuXG4gICAqL1xuICBjdXN0b21Qcm9qZWN0cz8oY29udGV4dDogT2JzaWRpYW5QbHVnaW5WaXRlc3RDb25maWdDb250ZXh0KTogVGVzdFByb2plY3RDb25maWd1cmF0aW9uW107XG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdGhhdCBlZGl0cyB0aGUgdml0ZXN0IGNvbmZpZ3VyYXRpb24gY29udGV4dCBiZWZvcmUgaXQgaXMgYXNzZW1ibGVkIGludG8gYSBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gY29udGV4dCAtIFRoZSB2aXRlc3QgY29uZmlndXJhdGlvbiBjb250ZXh0LlxuICAgKi9cbiAgZWRpdENvbnRleHQ/KGNvbnRleHQ6IE9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnQ29udGV4dCk6IHZvaWQ7XG59XG5cbi8qKlxuICogVGhlIGNvbnRleHQgZm9yIGRlZmluaW5nIGEgcGx1Z2luJ3Mgdml0ZXN0IGNvbmZpZ3VyYXRpb24uXG4gKlxuICogRXZlcnkgbWVtYmVyIGlzIGxpdmU6IHRoZSBhcnJheXMgYW5kIG9iamVjdHMgaXQgZXhwb3NlcyBhcmUgdGhlIHZlcnkgb25lcyB0aGUgYXNzZW1ibGVkIGNvbmZpZ3VyYXRpb25cbiAqIGlzIGJ1aWx0IGZyb20sIHNvIGVkaXRpbmcgdGhlbSBpbiBwbGFjZSB0aHJvdWdoXG4gKiB7QGxpbmsgRGVmaW5lT2JzaWRpYW5QbHVnaW5WaXRlc3RDb25maWdPcHRpb25zLmVkaXRDb250ZXh0fSBpcyB3aGF0IGN1c3RvbWl6ZXMgdGhlIHJlc3VsdC5cbiAqL1xuZXhwb3J0IGNsYXNzIE9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnQ29udGV4dCB7XG4gIC8qKlxuICAgKiBUaGUgYGludGVncmF0aW9uLXRlc3RzOmFuZHJvaWRgIHByb2plY3QsIHJ1bm5pbmcgdGhlIG1vYmlsZS1vbmx5IGFuZCBjcm9zcy1wbGF0Zm9ybSBzdWl0ZXMgYWdhaW5zdCBhblxuICAgKiBBbmRyb2lkIGVtdWxhdG9yIHRocm91Z2ggQXBwaXVtLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFuZHJvaWQ6IE9ic2lkaWFuUGx1Z2luVml0ZXN0UHJvamVjdENvbmZpZyA9IHtcbiAgICBlbnZpcm9ubWVudDogJ25vZGUnLFxuICAgIGVudmlyb25tZW50T3B0aW9uczoge1xuICAgICAgb2JzaWRpYW5UcmFuc3BvcnQ6IHtcbiAgICAgICAgYXBwaXVtVXJsOiAnaHR0cDovL2xvY2FsaG9zdDo0NzIzJyxcbiAgICAgICAgYXZkTmFtZTogJ29ic2lkaWFuX3Rlc3QnLFxuICAgICAgICB0eXBlOiAnb2JzaWRpYW4tYW5kcm9pZC1hcHBpdW0nXG4gICAgICB9XG4gICAgfSxcbiAgICBmaWxlUGFyYWxsZWxpc206IGZhbHNlLFxuICAgIGdsb2JhbFNldHVwOiBbJ29ic2lkaWFuLWludGVncmF0aW9uLXRlc3Rpbmcvdml0ZXN0LWdsb2JhbC1zZXR1cC1wbHVnaW4nXSxcbiAgICBob29rVGltZW91dDogQU5EUk9JRF9USU1FT1VUX0lOX01JTExJU0VDT05EUyAqIEhPT0tfVElNRU9VVF9NVUxUSVBMSUVSLFxuICAgIGluY2x1ZGU6IFtBTkRST0lEX1RFU1RfRklMRVMsIENST1NTX1BMQVRGT1JNX1RFU1RfRklMRVNdLFxuICAgIG5hbWU6ICdpbnRlZ3JhdGlvbi10ZXN0czphbmRyb2lkJyxcbiAgICBzZXR1cEZpbGVzOiBbJ29ic2lkaWFuLWludGVncmF0aW9uLXRlc3Rpbmcvdml0ZXN0LXNldHVwJ10sXG4gICAgdGVzdFRpbWVvdXQ6IEFORFJPSURfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFNcbiAgfTtcblxuICAvKipcbiAgICogVGhlIHBlci10ZXN0IGJ1ZGdldCBvZiB0aGUgQW5kcm9pZCBpbnRlZ3JhdGlvbiBwcm9qZWN0LCBpbiBtaWxsaXNlY29uZHMuIEJvb3RpbmcgYW4gZW11bGF0b3IgYW5kXG4gICAqIGRyaXZpbmcgaXQgb3ZlciBBcHBpdW0gaXMgc2xvd2VyIHRoYW4gdGhlIGRlc2t0b3AgcGF0aCwgaGVuY2UgaXRzIG93biBjb25zdGFudC5cbiAgICpcbiAgICogQGRlZmF1bHQgYDYwMDAwYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFuZHJvaWRUaW1lb3V0SW5NaWxsaXNlY29uZHMgPSBBTkRST0lEX1RJTUVPVVRfSU5fTUlMTElTRUNPTkRTO1xuXG4gIC8qKlxuICAgKiBUaGUgcGVyLXRlc3QgYnVkZ2V0IG9mIHRoZSByZWd1bGFyIGludGVncmF0aW9uIHByb2plY3RzLCBpbiBtaWxsaXNlY29uZHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGAzMDAwMGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBiaWdUaW1lb3V0SW5NaWxsaXNlY29uZHMgPSBCSUdfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFM7XG5cbiAgLyoqXG4gICAqIFRoZSBjb3ZlcmFnZSBgZXhjbHVkZWAgZ2xvYnMuIFB1c2ggb250byBpdCB0byBkcm9wIG1vcmUgZmlsZXMgZnJvbSB0aGUgY292ZXJhZ2UgcmVwb3J0LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNvdmVyYWdlRXhjbHVkZTogc3RyaW5nW10gPSBbVU5JVF9URVNUX0ZJTEVTXTtcblxuICAvKipcbiAgICogVGhlIGBpbnRlZ3JhdGlvbi10ZXN0czpkZXNrdG9wYCBwcm9qZWN0LCBydW5uaW5nIHRoZSBkZXNrdG9wLW9ubHkgYW5kIGNyb3NzLXBsYXRmb3JtIHN1aXRlcyBhZ2FpbnN0IGFcbiAgICogcmVhbCBkZXNrdG9wIE9ic2lkaWFuIG92ZXIgQ0RQLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlc2t0b3A6IE9ic2lkaWFuUGx1Z2luVml0ZXN0UHJvamVjdENvbmZpZyA9IHtcbiAgICBlbnZpcm9ubWVudDogJ25vZGUnLFxuICAgIGZpbGVQYXJhbGxlbGlzbTogZmFsc2UsXG4gICAgZ2xvYmFsU2V0dXA6IFsnb2JzaWRpYW4taW50ZWdyYXRpb24tdGVzdGluZy92aXRlc3QtZ2xvYmFsLXNldHVwLXBsdWdpbiddLFxuICAgIGhvb2tUaW1lb3V0OiBCSUdfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFMgKiBIT09LX1RJTUVPVVRfTVVMVElQTElFUixcbiAgICBpbmNsdWRlOiBbREVTS1RPUF9URVNUX0ZJTEVTLCBDUk9TU19QTEFURk9STV9URVNUX0ZJTEVTXSxcbiAgICBuYW1lOiAnaW50ZWdyYXRpb24tdGVzdHM6ZGVza3RvcCcsXG4gICAgc2V0dXBGaWxlczogWydvYnNpZGlhbi1pbnRlZ3JhdGlvbi10ZXN0aW5nL3ZpdGVzdC1zZXR1cCddLFxuICAgIHRlc3RUaW1lb3V0OiBCSUdfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFNcbiAgfTtcblxuICAvKipcbiAgICogVGhlIGBpbnRlZ3JhdGlvbi10ZXN0czpkZXNrdG9wLXBlcmZvcm1hbmNlYCBwcm9qZWN0LCBydW5uaW5nIHRoZSBhdC1zY2FsZSBzdWl0ZXMuIEl0IGlzIGRlY2xhcmVkIGZvclxuICAgKiBldmVyeSBwbHVnaW4gZXZlbiB3aGVuIHRoZXJlIGlzIG5vIHN1Y2ggc3VpdGUgeWV0IFx1MjAxNCBgcGFzc1dpdGhOb1Rlc3RzYCBtYWtlcyBhbiBlbXB0eSBwcm9qZWN0IGZyZWUsXG4gICAqIGFuZCB0aGUgbWF0Y2hpbmcgYHRlc3Q6aW50ZWdyYXRpb246ZGVza3RvcDpwZXJmb3JtYW5jZWAgc2NyaXB0IGV4aXN0cyBmbGVldC13aWRlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlc2t0b3BQZXJmb3JtYW5jZTogT2JzaWRpYW5QbHVnaW5WaXRlc3RQcm9qZWN0Q29uZmlnID0ge1xuICAgIGVudmlyb25tZW50OiAnbm9kZScsXG4gICAgZmlsZVBhcmFsbGVsaXNtOiBmYWxzZSxcbiAgICBnbG9iYWxTZXR1cDogWydvYnNpZGlhbi1pbnRlZ3JhdGlvbi10ZXN0aW5nL3ZpdGVzdC1nbG9iYWwtc2V0dXAtcGx1Z2luJ10sXG4gICAgaG9va1RpbWVvdXQ6IFBFUkZPUk1BTkNFX1RJTUVPVVRfSU5fTUlMTElTRUNPTkRTLFxuICAgIGluY2x1ZGU6IFtERVNLVE9QX1BFUkZPUk1BTkNFX1RFU1RfRklMRVNdLFxuICAgIG5hbWU6ICdpbnRlZ3JhdGlvbi10ZXN0czpkZXNrdG9wLXBlcmZvcm1hbmNlJyxcbiAgICBzZXR1cEZpbGVzOiBbJ29ic2lkaWFuLWludGVncmF0aW9uLXRlc3Rpbmcvdml0ZXN0LXNldHVwJ10sXG4gICAgdGVzdFRpbWVvdXQ6IFBFUkZPUk1BTkNFX1RJTUVPVVRfSU5fTUlMTElTRUNPTkRTXG4gIH07XG5cbiAgLyoqXG4gICAqIFRoZSBtdWx0aXBsaWVyIGFwcGxpZWQgdG8gYSBwcm9qZWN0J3MgdGVzdCBidWRnZXQgdG8gZ2V0IGl0cyBob29rIGJ1ZGdldC4gQSBob29rIHR5cGljYWxseSBwb3B1bGF0ZXNcbiAgICogYW5kIG9wZW5zIGEgdmF1bHQsIHNvIGl0IG5lZWRzIHNldmVyYWwgdGltZXMgd2hhdCBhIHNpbmdsZSB0ZXN0IGRvZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGA0YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGhvb2tUaW1lb3V0TXVsdGlwbGllciA9IEhPT0tfVElNRU9VVF9NVUxUSVBMSUVSO1xuXG4gIC8qKlxuICAgKiBUaGUgYGludGVncmF0aW9uLXRlc3RzOm5vLWFwcGAgcHJvamVjdCwgcnVubmluZyB0aGUgc3VpdGVzIHRoYXQgbmVlZCBubyBPYnNpZGlhbiBpbnN0YW5jZSBhdCBhbGwuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbm9BcHA6IE9ic2lkaWFuUGx1Z2luVml0ZXN0UHJvamVjdENvbmZpZyA9IHtcbiAgICBlbnZpcm9ubWVudDogJ25vZGUnLFxuICAgIGZpbGVQYXJhbGxlbGlzbTogZmFsc2UsXG4gICAgaG9va1RpbWVvdXQ6IEJJR19USU1FT1VUX0lOX01JTExJU0VDT05EUyAqIEhPT0tfVElNRU9VVF9NVUxUSVBMSUVSLFxuICAgIGluY2x1ZGU6IFtOT19BUFBfVEVTVF9GSUxFU10sXG4gICAgbmFtZTogJ2ludGVncmF0aW9uLXRlc3RzOm5vLWFwcCcsXG4gICAgdGVzdFRpbWVvdXQ6IEJJR19USU1FT1VUX0lOX01JTExJU0VDT05EU1xuICB9O1xuXG4gIC8qKlxuICAgKiBUaGUgcGVyLXRlc3QgYnVkZ2V0IG9mIHRoZSBwZXJmb3JtYW5jZSBpbnRlZ3JhdGlvbiBwcm9qZWN0LCBpbiBtaWxsaXNlY29uZHMuIEEgcGVyZm9ybWFuY2UgdmF1bHQgaXNcbiAgICogcHJlLXBvcHVsYXRlZCB3aXRoIHRlbnMgb2YgdGhvdXNhbmRzIG9mIG5vdGVzIGJlZm9yZSBPYnNpZGlhbiBvcGVucywgc28gYm90aCBpdHMgc2V0dXAgYW5kIGl0cyB0ZXN0c1xuICAgKiBuZWVkIGZhciBtb3JlIHRpbWUgdGhhbiB0aGUgcmVndWxhciBpbnRlZ3JhdGlvbiBwcm9qZWN0cy5cbiAgICpcbiAgICogQGRlZmF1bHQgYDYwMDAwMGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwZXJmb3JtYW5jZVRpbWVvdXRJbk1pbGxpc2Vjb25kcyA9IFBFUkZPUk1BTkNFX1RJTUVPVVRfSU5fTUlMTElTRUNPTkRTO1xuXG4gIC8qKlxuICAgKiBUaGUgYHVuaXQtdGVzdHNgIHByb2plY3QsIHJ1bm5pbmcgdGhlIG1vY2tlZC1PYnNpZGlhbiBzdWl0ZXMgaW4gYGpzZG9tYC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB1bml0VGVzdHM6IE9ic2lkaWFuUGx1Z2luVml0ZXN0UHJvamVjdENvbmZpZyA9IHtcbiAgICBlbnZpcm9ubWVudDogJ2pzZG9tJyxcbiAgICBleGNsdWRlOiBbLi4uU0hBUkVEX0VYQ0xVREUsIElOVEVHUkFUSU9OX1RFU1RfRklMRVNdLFxuICAgIGV4ZWNBcmd2OiBbJy0tbm8td2Vic3RvcmFnZSddLFxuICAgIGluY2x1ZGU6IFtVTklUX1RFU1RfRklMRVNdLFxuICAgIG5hbWU6ICd1bml0LXRlc3RzJyxcbiAgICBzZXJ2ZXI6IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL25hbWUtcmVwbGFjZW1lbnRzIC0tIGBkZXBzYCBpcyBkZWNsYXJlZCBieSBgdml0ZXN0YDsgcmVuYW1pbmcgaXQgaGVyZSB3b3VsZCBub3QgbWF0Y2ggdGhlIEFQSS5cbiAgICAgIGRlcHM6IHtcbiAgICAgICAgaW5saW5lOiBbJ0BvYnNpZGlhbi10eXBpbmdzJywgJ29ic2lkaWFuLWRldi11dGlscyddXG4gICAgICB9XG4gICAgfSxcbiAgICBzZXR1cEZpbGVzOiBbXG4gICAgICAnb2JzaWRpYW4tdGVzdC1tb2Nrcy92aXRlc3Qtc2V0dXAnLFxuICAgICAgJ29ic2lkaWFuLXRlc3QtbW9ja3Mvb2JzaWRpYW4tdHlwaW5ncy92aXRlc3Qtc2V0dXAnLFxuICAgICAgJ29ic2lkaWFuLWRldi11dGlscy92aXRlc3Qtc2V0dXAnXG4gICAgXVxuICB9O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGNvbnRleHQgc2VlZGVkIHdpdGggdGhlIHN0YW5kYXJkIHByb2plY3RzLlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IG9ic2lkaWFuVmVyc2lvbiA9IHByb2Nlc3MuZW52W09CU0lESUFOX1ZFUlNJT05fRU5WX1ZBUklBQkxFX05BTUVdO1xuXG4gICAgLypcbiAgICAgKiBTdXBwb3J0IGlzIHRoZSByYW5nZSBbbGF0ZXN0IHB1YmxpYywgbGF0ZXN0IGNhdGFseXN0XSBhbmQgQk9USCBlbmRzIG11c3Qgd29yayAoRzk5KSwgc28gdGhlIHZlcnNpb25cbiAgICAgKiBpcyBhIGtub2IgcmF0aGVyIHRoYW4gYSBjb25zdGFudC4gVGhlIGtleSBpcyBhZGRlZCBPTkxZIHdoZW4gdGhlIHZhcmlhYmxlIGlzIHNldDogYW4gZXhwbGljaXRcbiAgICAgKiBgb2JzaWRpYW5WZXJzaW9uYCBtYWtlcyB0aGUgaGFybmVzcyByZXNvbHZlIGEgY29uY3JldGUgdmVyc2lvbiBhbmQgc3dhcCB0aGUgYXNhciwgd2hpY2ggaXMgbm90IHdoYXRcbiAgICAgKiBhbiB1bnBpbm5lZCBydW4gZG9lcywgc28gc2VlZGluZyBhIGRlZmF1bHQgaGVyZSB3b3VsZCBjaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIGV2ZXJ5IHBsdWdpbi5cbiAgICAgKi9cbiAgICBpZiAob2JzaWRpYW5WZXJzaW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuZGVza3RvcC5lbnZpcm9ubWVudE9wdGlvbnMgPSB7XG4gICAgICAgIG9ic2lkaWFuVHJhbnNwb3J0OiB7XG4gICAgICAgICAgb2JzaWRpYW5WZXJzaW9uLFxuICAgICAgICAgIHR5cGU6ICdvYnNpZGlhbi1jZHAnXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgdml0ZXN0IGNvbmZpZ3VyYXRpb24gZm9yIGFuIE9ic2lkaWFuIHBsdWdpbi5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciBkZWZpbmluZyB0aGUgY29uZmlndXJhdGlvbi5cbiAqIEByZXR1cm5zIFRoZSB2aXRlc3QgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlZmluZU9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnKG9wdGlvbnM6IERlZmluZU9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnT3B0aW9ucyA9IHt9KTogVml0ZVVzZXJDb25maWcge1xuICBjb25zdCBjb250ZXh0ID0gbmV3IE9ic2lkaWFuUGx1Z2luVml0ZXN0Q29uZmlnQ29udGV4dCgpO1xuXG4gIGlmIChvcHRpb25zLmVkaXRDb250ZXh0KSB7XG4gICAgb3B0aW9ucy5lZGl0Q29udGV4dChjb250ZXh0KTtcbiAgfVxuXG4gIGNvbnN0IGN1c3RvbVByb2plY3RzID0gb3B0aW9ucy5jdXN0b21Qcm9qZWN0cz8uKGNvbnRleHQpID8/IFtdO1xuXG4gIHJldHVybiBkZWZpbmVDb25maWcoe1xuICAgIHRlc3Q6IHtcbiAgICAgIGNvdmVyYWdlOiB7XG4gICAgICAgIGV4Y2x1ZGU6IGNvbnRleHQuY292ZXJhZ2VFeGNsdWRlLFxuICAgICAgICBpbmNsdWRlOiBbJ3NyYy8qKi8qLnRzJ10sXG4gICAgICAgIHByb3ZpZGVyOiAndjgnLFxuICAgICAgICByZXBvcnRlcjogWyd0ZXh0JywgJ2xjb3YnLCAnaHRtbCddLFxuICAgICAgICByZXBvcnRzRGlyZWN0b3J5OiAnLi9jb3ZlcmFnZSdcbiAgICAgIH0sXG4gICAgICBleGNsdWRlOiBbLi4uU0hBUkVEX0VYQ0xVREVdLFxuICAgICAgZ2xvYmFsczogZmFsc2UsXG4gICAgICBpbmNsdWRlOiBbVU5JVF9URVNUX0ZJTEVTXSxcbiAgICAgIHBhc3NXaXRoTm9UZXN0czogdHJ1ZSxcbiAgICAgIHByb2plY3RzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICByZXNvbHZlOiB7XG4gICAgICAgICAgICBhbGlhczoge1xuICAgICAgICAgICAgICBvYnNpZGlhbjogJ29ic2lkaWFuLXRlc3QtbW9ja3Mvb2JzaWRpYW4nXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICB0ZXN0OiBjb250ZXh0LnVuaXRUZXN0c1xuICAgICAgICB9LFxuICAgICAgICB7IHRlc3Q6IGNvbnRleHQubm9BcHAgfSxcbiAgICAgICAgeyB0ZXN0OiBjb250ZXh0LmRlc2t0b3AgfSxcbiAgICAgICAgeyB0ZXN0OiBjb250ZXh0LmRlc2t0b3BQZXJmb3JtYW5jZSB9LFxuICAgICAgICB7IHRlc3Q6IGNvbnRleHQuYW5kcm9pZCB9LFxuICAgICAgICAuLi5jdXN0b21Qcm9qZWN0c1xuICAgICAgXVxuICAgIH1cbiAgfSk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQXdCQSwwQkFBb0I7QUFDcEIsb0JBQTZCO0FBTzdCLE1BQU0sa0NBQWtDO0FBQ3hDLE1BQU0sOEJBQThCO0FBQ3BDLE1BQU0sMEJBQTBC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
|
|
@@ -40,16 +40,11 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
40
40
|
globalThisRecord[key] ??= newFuncs[key]?.();
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
function name(obj) {
|
|
44
|
-
return obj;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
43
|
function extractDefault(module) {
|
|
48
44
|
return module && module.__esModule && 'default' in module ? module.default : module;
|
|
49
45
|
}
|
|
50
46
|
|
|
51
|
-
const OBSIDIAN_BUILT_IN_MODULE_NAMES = [
|
|
52
|
-
'obsidian',
|
|
47
|
+
const OBSIDIAN_BUILT_IN_MODULE_NAMES = new Set([
|
|
53
48
|
'@codemirror/autocomplete',
|
|
54
49
|
'@codemirror/collab',
|
|
55
50
|
'@codemirror/commands',
|
|
@@ -60,11 +55,12 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
60
55
|
'@codemirror/text',
|
|
61
56
|
'@codemirror/view',
|
|
62
57
|
'@lezer/common',
|
|
58
|
+
'@lezer/highlight',
|
|
63
59
|
'@lezer/lr',
|
|
64
|
-
'
|
|
65
|
-
|
|
60
|
+
'obsidian']
|
|
61
|
+
);
|
|
66
62
|
|
|
67
|
-
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = [
|
|
63
|
+
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = new Set([
|
|
68
64
|
'@codemirror/closebrackets',
|
|
69
65
|
'@codemirror/comment',
|
|
70
66
|
'@codemirror/fold',
|
|
@@ -76,11 +72,11 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
76
72
|
'@codemirror/rangeset',
|
|
77
73
|
'@codemirror/rectangular-selection',
|
|
78
74
|
'@codemirror/stream-parser',
|
|
79
|
-
'@codemirror/tooltip']
|
|
80
|
-
|
|
75
|
+
'@codemirror/tooltip']
|
|
76
|
+
);
|
|
81
77
|
|
|
82
78
|
function requirePatched(id) {
|
|
83
|
-
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.
|
|
79
|
+
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
|
|
84
80
|
return originalRequire?.(id);
|
|
85
81
|
}
|
|
86
82
|
|
|
@@ -89,8 +85,8 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
89
85
|
if (id === 'process' || id === 'node:process') {
|
|
90
86
|
// eslint-disable-next-line no-console -- Valid usage.
|
|
91
87
|
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
|
|
92
|
-
|
|
93
|
-
return
|
|
88
|
+
|
|
89
|
+
return process;
|
|
94
90
|
}
|
|
95
91
|
} else {
|
|
96
92
|
const module = originalRequire?.(id);
|
|
@@ -159,4 +155,4 @@ function buildProjectFlags(projects) {
|
|
|
159
155
|
testCoverage,
|
|
160
156
|
testWatch
|
|
161
157
|
});
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy90ZXN0LXJ1bm5lcnMvdml0ZXN0LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgZnVuY3Rpb25zIGZvciBydW5uaW5nIHRlc3RzIHVzaW5nIHRoZSBWaXRlc3QgZnJhbWV3b3JrLlxuICovXG5cbi8qIHY4IGlnbm9yZSBzdGFydCAtLSBFeGVjdXRlcyB2aXRlc3QgYXMgYSBDTEkgc3VicHJvY2VzczsgY29ycmVjdG5lc3MgaXMgdmVyaWZpZWQgYnkgcnVubmluZyB0ZXN0cywgbm90IHVuaXQgdGVzdHMuICovXG5cbmltcG9ydCB7IGV4ZWNGcm9tUm9vdCB9IGZyb20gJy4uL3Jvb3QudHMnO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHJ1bm5pbmcgdGVzdHMgd2l0aCBjb3ZlcmFnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZXN0Q292ZXJhZ2VPcHRpb25zIGV4dGVuZHMgVGVzdE9wdGlvbnMge1xuICAvKipcbiAgICogTWluaW11bSBjb3ZlcmFnZSBwZXJjZW50YWdlIHJlcXVpcmVkLiBJZiB0aGUgYWN0dWFsIGNvdmVyYWdlIGZhbGxzIGJlbG93XG4gICAqIHRoaXMgdGhyZXNob2xkLCB0aGUgcHJvY2VzcyBleGl0cyB3aXRoIGEgbm9uLXplcm8gY29kZS5cbiAgICpcbiAgICogQGRlZmF1bHQgYDBgXG4gICAqL1xuICByZWFkb25seSBtaW5Db3ZlcmFnZUluUGVyY2VudHM/OiBudW1iZXI7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgcnVubmluZyB0ZXN0cy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZXN0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvamVjdHMgdG8gcnVuLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdHM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBydW5uaW5nIHRlc3RzIGluIHdhdGNoIG1vZGUuXG4gKi9cbmV4cG9ydCB0eXBlIFRlc3RXYXRjaE9wdGlvbnMgPSBUZXN0T3B0aW9ucztcblxuLyoqXG4gKiBSdW5zIHRoZSB0ZXN0IHN1aXRlLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSB0ZXN0LlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSB0ZXN0cyBoYXZlIGNvbXBsZXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRlc3Qob3B0aW9uczogVGVzdE9wdGlvbnMgPSB7fSk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBleGVjRnJvbVJvb3QoWyd2aXRlc3QnLCAncnVuJywgLi4uYnVpbGRQcm9qZWN0RmxhZ3Mob3B0aW9ucy5wcm9qZWN0cyldKTtcbn1cblxuLyoqXG4gKiBSdW5zIHRoZSB0ZXN0IHN1aXRlIHdpdGggY292ZXJhZ2UuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25hbCBjb3ZlcmFnZSBjb25maWd1cmF0aW9uLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSB0ZXN0cyBoYXZlIGNvbXBsZXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRlc3RDb3ZlcmFnZShvcHRpb25zOiBUZXN0Q292ZXJhZ2VPcHRpb25zID0ge30pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgdGhyZXNob2xkID0gU3RyaW5nKG9wdGlvbnMubWluQ292ZXJhZ2VJblBlcmNlbnRzID8/IDApO1xuICBhd2FpdCBleGVjRnJvbVJvb3QoW1xuICAgICd2aXRlc3QnLFxuICAgICdydW4nLFxuICAgIC4uLmJ1aWxkUHJvamVjdEZsYWdzKG9wdGlvbnMucHJvamVjdHMpLFxuICAgICctLWNvdmVyYWdlJyxcbiAgICBgLS1jb3ZlcmFnZS50aHJlc2hvbGRzLmxpbmVzPSR7dGhyZXNob2xkfWAsXG4gICAgYC0tY292ZXJhZ2UudGhyZXNob2xkcy5mdW5jdGlvbnM9JHt0aHJlc2hvbGR9YCxcbiAgICBgLS1jb3ZlcmFnZS50aHJlc2hvbGRzLmJyYW5jaGVzPSR7dGhyZXNob2xkfWAsXG4gICAgYC0tY292ZXJhZ2UudGhyZXNob2xkcy5zdGF0ZW1lbnRzPSR7dGhyZXNob2xkfWBcbiAgXSk7XG59XG5cbi8qKlxuICogUnVucyB0aGUgdGVzdCBzdWl0ZSBpbiB3YXRjaCBtb2RlLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSB0ZXN0LlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSB0ZXN0cyBoYXZlIGNvbXBsZXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRlc3RXYXRjaChvcHRpb25zOiBUZXN0V2F0Y2hPcHRpb25zID0ge30pOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgZXhlY0Zyb21Sb290KFsndml0ZXN0JywgLi4uYnVpbGRQcm9qZWN0RmxhZ3Mob3B0aW9ucy5wcm9qZWN0cyldKTtcbn1cblxuLyoqXG4gKiBCdWlsZHMgYC0tcHJvamVjdGAgZmxhZ3MgZm9yIHRoZSBnaXZlbiBwcm9qZWN0IHByZWZpeGVzLlxuICogRWFjaCBwcmVmaXggZXhwYW5kcyB0byBib3RoIGAtLXByb2plY3Q9cHJlZml4YCAoZXhhY3QgbWF0Y2gpXG4gKiBhbmQgYC0tcHJvamVjdD1wcmVmaXg6KmAgKHN1Yi1wcm9qZWN0cykuXG4gKlxuICogQHBhcmFtIHByb2plY3RzIC0gVGhlIHByb2plY3QgbmFtZSBwcmVmaXhlcy5cbiAqIEByZXR1cm5zIFRoZSBgLS1wcm9qZWN0YCBmbGFncyBhcnJheS5cbiAqL1xuZnVuY3Rpb24gYnVpbGRQcm9qZWN0RmxhZ3MocHJvamVjdHM/OiBzdHJpbmdbXSk6IHN0cmluZ1tdIHtcbiAgcmV0dXJuIChwcm9qZWN0cyA/
|
|
158
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy90ZXN0LXJ1bm5lcnMvdml0ZXN0LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgZnVuY3Rpb25zIGZvciBydW5uaW5nIHRlc3RzIHVzaW5nIHRoZSBWaXRlc3QgZnJhbWV3b3JrLlxuICovXG5cbi8qIHY4IGlnbm9yZSBzdGFydCAtLSBFeGVjdXRlcyB2aXRlc3QgYXMgYSBDTEkgc3VicHJvY2VzczsgY29ycmVjdG5lc3MgaXMgdmVyaWZpZWQgYnkgcnVubmluZyB0ZXN0cywgbm90IHVuaXQgdGVzdHMuICovXG5cbmltcG9ydCB7IGV4ZWNGcm9tUm9vdCB9IGZyb20gJy4uL3Jvb3QudHMnO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHJ1bm5pbmcgdGVzdHMgd2l0aCBjb3ZlcmFnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZXN0Q292ZXJhZ2VPcHRpb25zIGV4dGVuZHMgVGVzdE9wdGlvbnMge1xuICAvKipcbiAgICogTWluaW11bSBjb3ZlcmFnZSBwZXJjZW50YWdlIHJlcXVpcmVkLiBJZiB0aGUgYWN0dWFsIGNvdmVyYWdlIGZhbGxzIGJlbG93XG4gICAqIHRoaXMgdGhyZXNob2xkLCB0aGUgcHJvY2VzcyBleGl0cyB3aXRoIGEgbm9uLXplcm8gY29kZS5cbiAgICpcbiAgICogQGRlZmF1bHQgYDBgXG4gICAqL1xuICByZWFkb25seSBtaW5Db3ZlcmFnZUluUGVyY2VudHM/OiBudW1iZXI7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgcnVubmluZyB0ZXN0cy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZXN0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvamVjdHMgdG8gcnVuLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdHM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBydW5uaW5nIHRlc3RzIGluIHdhdGNoIG1vZGUuXG4gKi9cbmV4cG9ydCB0eXBlIFRlc3RXYXRjaE9wdGlvbnMgPSBUZXN0T3B0aW9ucztcblxuLyoqXG4gKiBSdW5zIHRoZSB0ZXN0IHN1aXRlLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSB0ZXN0LlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSB0ZXN0cyBoYXZlIGNvbXBsZXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRlc3Qob3B0aW9uczogVGVzdE9wdGlvbnMgPSB7fSk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBleGVjRnJvbVJvb3QoWyd2aXRlc3QnLCAncnVuJywgLi4uYnVpbGRQcm9qZWN0RmxhZ3Mob3B0aW9ucy5wcm9qZWN0cyldKTtcbn1cblxuLyoqXG4gKiBSdW5zIHRoZSB0ZXN0IHN1aXRlIHdpdGggY292ZXJhZ2UuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25hbCBjb3ZlcmFnZSBjb25maWd1cmF0aW9uLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSB0ZXN0cyBoYXZlIGNvbXBsZXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRlc3RDb3ZlcmFnZShvcHRpb25zOiBUZXN0Q292ZXJhZ2VPcHRpb25zID0ge30pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgdGhyZXNob2xkID0gU3RyaW5nKG9wdGlvbnMubWluQ292ZXJhZ2VJblBlcmNlbnRzID8/IDApO1xuICBhd2FpdCBleGVjRnJvbVJvb3QoW1xuICAgICd2aXRlc3QnLFxuICAgICdydW4nLFxuICAgIC4uLmJ1aWxkUHJvamVjdEZsYWdzKG9wdGlvbnMucHJvamVjdHMpLFxuICAgICctLWNvdmVyYWdlJyxcbiAgICBgLS1jb3ZlcmFnZS50aHJlc2hvbGRzLmxpbmVzPSR7dGhyZXNob2xkfWAsXG4gICAgYC0tY292ZXJhZ2UudGhyZXNob2xkcy5mdW5jdGlvbnM9JHt0aHJlc2hvbGR9YCxcbiAgICBgLS1jb3ZlcmFnZS50aHJlc2hvbGRzLmJyYW5jaGVzPSR7dGhyZXNob2xkfWAsXG4gICAgYC0tY292ZXJhZ2UudGhyZXNob2xkcy5zdGF0ZW1lbnRzPSR7dGhyZXNob2xkfWBcbiAgXSk7XG59XG5cbi8qKlxuICogUnVucyB0aGUgdGVzdCBzdWl0ZSBpbiB3YXRjaCBtb2RlLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSB0ZXN0LlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSB0ZXN0cyBoYXZlIGNvbXBsZXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRlc3RXYXRjaChvcHRpb25zOiBUZXN0V2F0Y2hPcHRpb25zID0ge30pOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgZXhlY0Zyb21Sb290KFsndml0ZXN0JywgLi4uYnVpbGRQcm9qZWN0RmxhZ3Mob3B0aW9ucy5wcm9qZWN0cyldKTtcbn1cblxuLyoqXG4gKiBCdWlsZHMgYC0tcHJvamVjdGAgZmxhZ3MgZm9yIHRoZSBnaXZlbiBwcm9qZWN0IHByZWZpeGVzLlxuICogRWFjaCBwcmVmaXggZXhwYW5kcyB0byBib3RoIGAtLXByb2plY3Q9cHJlZml4YCAoZXhhY3QgbWF0Y2gpXG4gKiBhbmQgYC0tcHJvamVjdD1wcmVmaXg6KmAgKHN1Yi1wcm9qZWN0cykuXG4gKlxuICogQHBhcmFtIHByb2plY3RzIC0gVGhlIHByb2plY3QgbmFtZSBwcmVmaXhlcy5cbiAqIEByZXR1cm5zIFRoZSBgLS1wcm9qZWN0YCBmbGFncyBhcnJheS5cbiAqL1xuZnVuY3Rpb24gYnVpbGRQcm9qZWN0RmxhZ3MocHJvamVjdHM/OiBzdHJpbmdbXSk6IHN0cmluZ1tdIHtcbiAgcmV0dXJuIChwcm9qZWN0cyA/PyBbXSkuZmxhdE1hcCgocHJvamVjdCkgPT4gW2AtLXByb2plY3Q9JHtwcm9qZWN0fWAsIGAtLXByb2plY3Q9JHtwcm9qZWN0fToqYF0pO1xufVxuXG4vKiB2OCBpZ25vcmUgc3RvcCAqL1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBUUEsa0JBQTZCO0FBb0M3QixlQUFzQixLQUFLLFVBQXVCLENBQUMsR0FBa0I7QUFDbkUsWUFBTSwwQkFBYSxDQUFDLFVBQVUsT0FBTyxHQUFHLGtCQUFrQixRQUFRLFFBQVEsQ0FBQyxDQUFDO0FBQzlFO0FBUUEsZUFBc0IsYUFBYSxVQUErQixDQUFDLEdBQWtCO0FBQ25GLFFBQU0sWUFBWSxPQUFPLFFBQVEseUJBQXlCLENBQUM7QUFDM0QsWUFBTSwwQkFBYTtBQUFBLElBQ2pCO0FBQUEsSUFDQTtBQUFBLElBQ0EsR0FBRyxrQkFBa0IsUUFBUSxRQUFRO0FBQUEsSUFDckM7QUFBQSxJQUNBLCtCQUErQixTQUFTO0FBQUEsSUFDeEMsbUNBQW1DLFNBQVM7QUFBQSxJQUM1QyxrQ0FBa0MsU0FBUztBQUFBLElBQzNDLG9DQUFvQyxTQUFTO0FBQUEsRUFDL0MsQ0FBQztBQUNIO0FBUUEsZUFBc0IsVUFBVSxVQUE0QixDQUFDLEdBQWtCO0FBQzdFLFlBQU0sMEJBQWEsQ0FBQyxVQUFVLEdBQUcsa0JBQWtCLFFBQVEsUUFBUSxDQUFDLENBQUM7QUFDdkU7QUFVQSxTQUFTLGtCQUFrQixVQUErQjtBQUN4RCxVQUFRLFlBQVksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsYUFBYSxPQUFPLElBQUksYUFBYSxPQUFPLElBQUksQ0FBQztBQUNqRzsiLAogICJuYW1lcyI6IFtdCn0K
|
|
@@ -40,16 +40,11 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
40
40
|
globalThisRecord[key] ??= newFuncs[key]?.();
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
function name(obj) {
|
|
44
|
-
return obj;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
43
|
function extractDefault(module) {
|
|
48
44
|
return module && module.__esModule && 'default' in module ? module.default : module;
|
|
49
45
|
}
|
|
50
46
|
|
|
51
|
-
const OBSIDIAN_BUILT_IN_MODULE_NAMES = [
|
|
52
|
-
'obsidian',
|
|
47
|
+
const OBSIDIAN_BUILT_IN_MODULE_NAMES = new Set([
|
|
53
48
|
'@codemirror/autocomplete',
|
|
54
49
|
'@codemirror/collab',
|
|
55
50
|
'@codemirror/commands',
|
|
@@ -60,11 +55,12 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
60
55
|
'@codemirror/text',
|
|
61
56
|
'@codemirror/view',
|
|
62
57
|
'@lezer/common',
|
|
58
|
+
'@lezer/highlight',
|
|
63
59
|
'@lezer/lr',
|
|
64
|
-
'
|
|
65
|
-
|
|
60
|
+
'obsidian']
|
|
61
|
+
);
|
|
66
62
|
|
|
67
|
-
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = [
|
|
63
|
+
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = new Set([
|
|
68
64
|
'@codemirror/closebrackets',
|
|
69
65
|
'@codemirror/comment',
|
|
70
66
|
'@codemirror/fold',
|
|
@@ -76,11 +72,11 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
76
72
|
'@codemirror/rangeset',
|
|
77
73
|
'@codemirror/rectangular-selection',
|
|
78
74
|
'@codemirror/stream-parser',
|
|
79
|
-
'@codemirror/tooltip']
|
|
80
|
-
|
|
75
|
+
'@codemirror/tooltip']
|
|
76
|
+
);
|
|
81
77
|
|
|
82
78
|
function requirePatched(id) {
|
|
83
|
-
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.
|
|
79
|
+
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
|
|
84
80
|
return originalRequire?.(id);
|
|
85
81
|
}
|
|
86
82
|
|
|
@@ -89,8 +85,8 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
89
85
|
if (id === 'process' || id === 'node:process') {
|
|
90
86
|
// eslint-disable-next-line no-console -- Valid usage.
|
|
91
87
|
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
|
|
92
|
-
|
|
93
|
-
return
|
|
88
|
+
|
|
89
|
+
return process;
|
|
94
90
|
}
|
|
95
91
|
} else {
|
|
96
92
|
const module = originalRequire?.(id);
|
|
@@ -164,4 +160,4 @@ function shouldKeepProjectFile(params) {
|
|
|
164
160
|
0 && (module.exports = {
|
|
165
161
|
validateDeclarations
|
|
166
162
|
});
|
|
167
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy92YWxpZGF0ZS1kZWNsYXJhdGlvbnMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBUeXBlLWNoZWNrcyB0aGUgZ2VuZXJhdGVkIGRlY2xhcmF0aW9uIGZpbGVzIChgLmQuY3RzYCAvIGAuZC5tdHNgKSB0byBwcm92ZSB0aGV5IGFyZSBzZWxmLWNvbnRhaW5lZFxuICogXHUyMDE0IGV2ZXJ5IGBsaWJgIGFuZCBpbnRlcm5hbCBjcm9zcy1yZWZlcmVuY2UgdGhleSByZWx5IG9uIHJlc29sdmVzIG9uIGl0cyBvd24sIGluZGVwZW5kZW50IG9mIHRoZVxuICogY29uc3VtZXIncyBgdHNjb25maWdgLlxuICpcbiAqIE9ubHkgZGlhZ25vc3RpY3Mgd2hvc2Ugc291cmNlIGZpbGUgaXMgb25lIHdlIG93biAodW5kZXIgdGhlIHByb2plY3Qgcm9vdCwgb3V0c2lkZSBgbm9kZV9tb2R1bGVzYClcbiAqIGFyZSByZXBvcnRlZC4gRGlhZ25vc3RpY3MgaW5zaWRlIGBub2RlX21vZHVsZXNgIFx1MjAxNCBicm9rZW4gdXBzdHJlYW0gYC5kLnRzYCBmaWxlcyB3ZSBkbyBub3QgY29udHJvbCBcdTIwMTRcbiAqIGFyZSBpZ25vcmVkLiBDcm9zcy1tb2R1bGUtZm9ybWF0IGludGVyb3AgZGlhZ25vc3RpY3MgaW4gb3VyIG93biBkZWNsYXJhdGlvbnMgKGZvciBleGFtcGxlIGFcbiAqIENvbW1vbkpTIGAuZC5jdHNgIGltcG9ydGluZyBhbiBFU00tb25seSBwYWNrYWdlLCBgVFMxNTQxYCAvIGBUUzE1NDJgIC8gYFRTMTQ3OWApIGFyZSBOT1QgaWdub3JlZDpcbiAqIHRoZXkgZGVzY3JpYmUgZGVjbGFyYXRpb25zIHdlIGVtaXQsIHNvIHRoZSBnZW5lcmF0b3IgbXVzdCBwcm9kdWNlIHZhbGlkIG91dHB1dCAoZS5nLiBhZGQgdGhlXG4gKiByZXF1aXJlZCBgcmVzb2x1dGlvbi1tb2RlYCBhdHRyaWJ1dGUpIHJhdGhlciB0aGFuIHRoZSB2YWxpZGF0b3IgaGlkaW5nIHRoZSBwcm9ibGVtLlxuICovXG5cbmltcG9ydCB7IGpvaW4gfSBmcm9tICcuLi9wYXRoLnRzJztcbmltcG9ydCB7XG4gIGNoZWNrUHJvamVjdFR5cGVzLFxuICBwYXJzZVRzQ29uZmlnLFxuICB0b0Nhbm9uaWNhbFxufSBmcm9tICcuL2NoZWNrLXByb2plY3QtdHlwZXMudHMnO1xuaW1wb3J0IHsgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocyB9IGZyb20gJy4vb2JzaWRpYW4tZGV2LXV0aWxzLXJlcG8tcGF0aHMudHMnO1xuaW1wb3J0IHsgZ2V0Um9vdEZvbGRlciB9IGZyb20gJy4vcm9vdC50cyc7XG5cbmNvbnN0IE5PREVfTU9EVUxFU19TRUdNRU5UID0gJy9ub2RlX21vZHVsZXMvJztcblxuY29uc3QgVkFMSURBVEVfREVDTEFSQVRJT05TX1RTX0NPTkZJR19GSUxFX05BTUVTID0gW1xuICBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLlRzQ29uZmlnVmFsaWRhdGVEZWNsYXJhdGlvbnNKc29uLFxuICBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLlRzQ29uZmlnVmFsaWRhdGVEZWNsYXJhdGlvbnNDanNKc29uXG5dO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHtAbGluayB2YWxpZGF0ZURlY2xhcmF0aW9uc30uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmFsaWRhdGVEZWNsYXJhdGlvbnNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoZW4gYHRydWVgLCB0aGUgaWdub3JlZCBgbm9kZV9tb2R1bGVzYCBkaWFnbm9zdGljcyBhcmUgcHJpbnRlZCBpbiBmdWxsIGluIGFkZGl0aW9uIHRvIHRoZWlyXG4gICAqIGNvdW50LCBzbyB0aGV5IGNhbiBiZSBpbnNwZWN0ZWQuIFdoZW4gb21pdHRlZCBvciBgZmFsc2VgLCBvbmx5IHRoZSBjb3VudCBpcyBwcmludGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgZmFsc2VgXG4gICAqL1xuICByZWFkb25seSBpc1ZlcmJvc2U/
|
|
163
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3NjcmlwdC11dGlscy92YWxpZGF0ZS1kZWNsYXJhdGlvbnMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBUeXBlLWNoZWNrcyB0aGUgZ2VuZXJhdGVkIGRlY2xhcmF0aW9uIGZpbGVzIChgLmQuY3RzYCAvIGAuZC5tdHNgKSB0byBwcm92ZSB0aGV5IGFyZSBzZWxmLWNvbnRhaW5lZFxuICogXHUyMDE0IGV2ZXJ5IGBsaWJgIGFuZCBpbnRlcm5hbCBjcm9zcy1yZWZlcmVuY2UgdGhleSByZWx5IG9uIHJlc29sdmVzIG9uIGl0cyBvd24sIGluZGVwZW5kZW50IG9mIHRoZVxuICogY29uc3VtZXIncyBgdHNjb25maWdgLlxuICpcbiAqIE9ubHkgZGlhZ25vc3RpY3Mgd2hvc2Ugc291cmNlIGZpbGUgaXMgb25lIHdlIG93biAodW5kZXIgdGhlIHByb2plY3Qgcm9vdCwgb3V0c2lkZSBgbm9kZV9tb2R1bGVzYClcbiAqIGFyZSByZXBvcnRlZC4gRGlhZ25vc3RpY3MgaW5zaWRlIGBub2RlX21vZHVsZXNgIFx1MjAxNCBicm9rZW4gdXBzdHJlYW0gYC5kLnRzYCBmaWxlcyB3ZSBkbyBub3QgY29udHJvbCBcdTIwMTRcbiAqIGFyZSBpZ25vcmVkLiBDcm9zcy1tb2R1bGUtZm9ybWF0IGludGVyb3AgZGlhZ25vc3RpY3MgaW4gb3VyIG93biBkZWNsYXJhdGlvbnMgKGZvciBleGFtcGxlIGFcbiAqIENvbW1vbkpTIGAuZC5jdHNgIGltcG9ydGluZyBhbiBFU00tb25seSBwYWNrYWdlLCBgVFMxNTQxYCAvIGBUUzE1NDJgIC8gYFRTMTQ3OWApIGFyZSBOT1QgaWdub3JlZDpcbiAqIHRoZXkgZGVzY3JpYmUgZGVjbGFyYXRpb25zIHdlIGVtaXQsIHNvIHRoZSBnZW5lcmF0b3IgbXVzdCBwcm9kdWNlIHZhbGlkIG91dHB1dCAoZS5nLiBhZGQgdGhlXG4gKiByZXF1aXJlZCBgcmVzb2x1dGlvbi1tb2RlYCBhdHRyaWJ1dGUpIHJhdGhlciB0aGFuIHRoZSB2YWxpZGF0b3IgaGlkaW5nIHRoZSBwcm9ibGVtLlxuICovXG5cbmltcG9ydCB7IGpvaW4gfSBmcm9tICcuLi9wYXRoLnRzJztcbmltcG9ydCB7XG4gIGNoZWNrUHJvamVjdFR5cGVzLFxuICBwYXJzZVRzQ29uZmlnLFxuICB0b0Nhbm9uaWNhbFxufSBmcm9tICcuL2NoZWNrLXByb2plY3QtdHlwZXMudHMnO1xuaW1wb3J0IHsgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocyB9IGZyb20gJy4vb2JzaWRpYW4tZGV2LXV0aWxzLXJlcG8tcGF0aHMudHMnO1xuaW1wb3J0IHsgZ2V0Um9vdEZvbGRlciB9IGZyb20gJy4vcm9vdC50cyc7XG5cbmNvbnN0IE5PREVfTU9EVUxFU19TRUdNRU5UID0gJy9ub2RlX21vZHVsZXMvJztcblxuY29uc3QgVkFMSURBVEVfREVDTEFSQVRJT05TX1RTX0NPTkZJR19GSUxFX05BTUVTID0gW1xuICBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLlRzQ29uZmlnVmFsaWRhdGVEZWNsYXJhdGlvbnNKc29uLFxuICBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLlRzQ29uZmlnVmFsaWRhdGVEZWNsYXJhdGlvbnNDanNKc29uXG5dO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHtAbGluayB2YWxpZGF0ZURlY2xhcmF0aW9uc30uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmFsaWRhdGVEZWNsYXJhdGlvbnNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoZW4gYHRydWVgLCB0aGUgaWdub3JlZCBgbm9kZV9tb2R1bGVzYCBkaWFnbm9zdGljcyBhcmUgcHJpbnRlZCBpbiBmdWxsIGluIGFkZGl0aW9uIHRvIHRoZWlyXG4gICAqIGNvdW50LCBzbyB0aGV5IGNhbiBiZSBpbnNwZWN0ZWQuIFdoZW4gb21pdHRlZCBvciBgZmFsc2VgLCBvbmx5IHRoZSBjb3VudCBpcyBwcmludGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgZmFsc2VgXG4gICAqL1xuICByZWFkb25seSBpc1ZlcmJvc2U/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFBhcmFtZXRlcnMgZm9yIHtAbGluayBzaG91bGRLZWVwUHJvamVjdEZpbGV9LlxuICovXG5pbnRlcmZhY2UgU2hvdWxkS2VlcFByb2plY3RGaWxlUGFyYW1zIHtcbiAgLyoqXG4gICAqIEFic29sdXRlIHBhdGggb2YgdGhlIGZpbGUgdW5kZXIgY29uc2lkZXJhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGZpbGVOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFic29sdXRlIChjYW5vbmljYWwpIHBhdGggb2YgdGhlIHByb2plY3Qgcm9vdC5cbiAgICovXG4gIHJlYWRvbmx5IHJvb3RDYW5vbmljYWw6IHN0cmluZztcbn1cblxuLyoqXG4gKiBWYWxpZGF0ZXMgdGhlIGdlbmVyYXRlZCBkZWNsYXJhdGlvbiBmaWxlcyBhZ2FpbnN0IHRoZSBgdHNjb25maWcudmFsaWRhdGUtZGVjbGFyYXRpb25zKi5qc29uYFxuICogY29uZmlncywgcmVwb3J0aW5nIGV2ZXJ5IGRpYWdub3N0aWMgdGhhdCBjb25jZXJucyB0aGUgbGlicmFyeSdzIG93biBkZWNsYXJhdGlvbnMgYW5kIGlnbm9yaW5nIG9ubHlcbiAqIHRob3NlIHdob3NlIHNvdXJjZSBmaWxlIGxpdmVzIGluIGBub2RlX21vZHVsZXNgLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgY29udHJvbGxpbmcgdmFsaWRhdGlvbiBvdXRwdXQuXG4gKiBAcmV0dXJucyBgdHJ1ZWAgd2hlbiB0aGUgbGlicmFyeSdzIG93biBkZWNsYXJhdGlvbnMgaGF2ZSBubyB0eXBlIGVycm9ycywgYGZhbHNlYCBvdGhlcndpc2UuXG4gKiBAdGhyb3dzIElmIHRoZSByb290IGZvbGRlciBjYW5ub3QgYmUgZm91bmQuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL2NvbnNpc3RlbnQtYm9vbGVhbi1uYW1lIC0tIFRoZSBuYW1lIHN0YXRlcyB0aGUgYWN0aW9uOyB0aGUgYm9vbGVhbiBvbmx5IHJlcG9ydHMgd2hldGhlciB2YWxpZGF0aW9uIHBhc3NlZC5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZURlY2xhcmF0aW9ucyhvcHRpb25zOiBWYWxpZGF0ZURlY2xhcmF0aW9uc09wdGlvbnMgPSB7fSk6IGJvb2xlYW4ge1xuICBjb25zdCByb290ID0gZ2V0Um9vdEZvbGRlcigpO1xuXG4gIGlmICghcm9vdCkge1xuICAgIHRocm93IG5ldyBFcnJvcignQ291bGQgbm90IGZpbmQgcm9vdCBmb2xkZXInKTtcbiAgfVxuXG4gIGNvbnN0IHJvb3RDYW5vbmljYWwgPSB0b0Nhbm9uaWNhbChyb290KTtcblxuICBsZXQgaXNWYWxpZCA9IHRydWU7XG5cbiAgZm9yIChjb25zdCB0c0NvbmZpZ0ZpbGVOYW1lIG9mIFZBTElEQVRFX0RFQ0xBUkFUSU9OU19UU19DT05GSUdfRklMRV9OQU1FUykge1xuICAgIGNvbnN0IHsgZmlsZU5hbWVzLCBvcHRpb25zOiBjb21waWxlck9wdGlvbnMgfSA9IHBhcnNlVHNDb25maWcoam9pbihyb290LCB0c0NvbmZpZ0ZpbGVOYW1lKSk7XG4gICAgY29uc3QgaXNDb25maWdWYWxpZCA9IGNoZWNrUHJvamVjdFR5cGVzKHtcbiAgICAgIGlzVmVyYm9zZTogb3B0aW9ucy5pc1ZlcmJvc2UgPz8gZmFsc2UsXG4gICAgICBvcHRpb25zOiBjb21waWxlck9wdGlvbnMsXG4gICAgICByb290TmFtZXM6IGZpbGVOYW1lcyxcbiAgICAgIHNob3VsZEtlZXBGaWxlOiAoZmlsZU5hbWUpID0+IHNob3VsZEtlZXBQcm9qZWN0RmlsZSh7IGZpbGVOYW1lLCByb290Q2Fub25pY2FsIH0pXG4gICAgfSk7XG4gICAgaXNWYWxpZCAmJj0gaXNDb25maWdWYWxpZDtcbiAgfVxuXG4gIHJldHVybiBpc1ZhbGlkO1xufVxuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciBhIGZpbGUgYmVsb25ncyB0byB0aGUgcHJvamVjdCAodW5kZXIgdGhlIHJvb3QgZm9sZGVyLCBvdXRzaWRlIGBub2RlX21vZHVsZXNgKS5cbiAqXG4gKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgZm9yIHRoZSBjaGVjay5cbiAqIEByZXR1cm5zIGB0cnVlYCB3aGVuIHRoZSBmaWxlIGJlbG9uZ3MgdG8gdGhlIHByb2plY3QuXG4gKi9cbmZ1bmN0aW9uIHNob3VsZEtlZXBQcm9qZWN0RmlsZShwYXJhbXM6IFNob3VsZEtlZXBQcm9qZWN0RmlsZVBhcmFtcyk6IGJvb2xlYW4ge1xuICBjb25zdCB7IGZpbGVOYW1lLCByb290Q2Fub25pY2FsIH0gPSBwYXJhbXM7XG4gIHJldHVybiBmaWxlTmFtZS5zdGFydHNXaXRoKGAke3Jvb3RDYW5vbmljYWx9L2ApICYmICFmaWxlTmFtZS5pbmNsdWRlcyhOT0RFX01PRFVMRVNfU0VHTUVOVCk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWVBLGtCQUFxQjtBQUNyQixpQ0FJTztBQUNQLDJDQUEwQztBQUMxQyxrQkFBOEI7QUFFOUIsTUFBTSx1QkFBdUI7QUFFN0IsTUFBTSw2Q0FBNkM7QUFBQSxFQUNqRCwrREFBMEI7QUFBQSxFQUMxQiwrREFBMEI7QUFDNUI7QUF3Q08sU0FBUyxxQkFBcUIsVUFBdUMsQ0FBQyxHQUFZO0FBQ3ZGLFFBQU0sV0FBTywyQkFBYztBQUUzQixNQUFJLENBQUMsTUFBTTtBQUNULFVBQU0sSUFBSSxNQUFNLDRCQUE0QjtBQUFBLEVBQzlDO0FBRUEsUUFBTSxvQkFBZ0Isd0NBQVksSUFBSTtBQUV0QyxNQUFJLFVBQVU7QUFFZCxhQUFXLG9CQUFvQiw0Q0FBNEM7QUFDekUsVUFBTSxFQUFFLFdBQVcsU0FBUyxnQkFBZ0IsUUFBSSw4Q0FBYyxrQkFBSyxNQUFNLGdCQUFnQixDQUFDO0FBQzFGLFVBQU0sb0JBQWdCLDhDQUFrQjtBQUFBLE1BQ3RDLFdBQVcsUUFBUSxhQUFhO0FBQUEsTUFDaEMsU0FBUztBQUFBLE1BQ1QsV0FBVztBQUFBLE1BQ1gsZ0JBQWdCLENBQUMsYUFBYSxzQkFBc0IsRUFBRSxVQUFVLGNBQWMsQ0FBQztBQUFBLElBQ2pGLENBQUM7QUFDRCxnQkFBWTtBQUFBLEVBQ2Q7QUFFQSxTQUFPO0FBQ1Q7QUFRQSxTQUFTLHNCQUFzQixRQUE4QztBQUMzRSxRQUFNLEVBQUUsVUFBVSxjQUFjLElBQUk7QUFDcEMsU0FBTyxTQUFTLFdBQVcsR0FBRyxhQUFhLEdBQUcsS0FBSyxDQUFDLFNBQVMsU0FBUyxvQkFBb0I7QUFDNUY7IiwKICAibmFtZXMiOiBbXQp9Cg==
|