@nextcloud/vue 8.0.0-beta.9 → 8.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +52 -2
- package/dist/Components/NcActionButton.cjs +23 -12
- package/dist/Components/NcActionButton.cjs.map +1 -1
- package/dist/Components/NcActionButton.mjs +21 -9
- package/dist/Components/NcActionButton.mjs.map +1 -1
- package/dist/Components/NcActionInput.cjs +1 -1
- package/dist/Components/NcActionInput.mjs +1 -1
- package/dist/Components/NcActionLink.cjs +1 -1
- package/dist/Components/NcActionLink.mjs +1 -1
- package/dist/Components/NcActionRouter.cjs +1 -1
- package/dist/Components/NcActionRouter.mjs +1 -1
- package/dist/Components/NcActionText.cjs +1 -1
- package/dist/Components/NcActionText.mjs +1 -1
- package/dist/Components/NcActionTextEditable.cjs +10 -10
- package/dist/Components/NcActionTextEditable.cjs.map +1 -1
- package/dist/Components/NcActionTextEditable.mjs +1 -1
- package/dist/Components/NcActions.cjs +55 -52
- package/dist/Components/NcActions.cjs.map +1 -1
- package/dist/Components/NcActions.mjs +44 -41
- package/dist/Components/NcActions.mjs.map +1 -1
- package/dist/Components/NcAppContent.cjs +19 -20
- package/dist/Components/NcAppContent.cjs.map +1 -1
- package/dist/Components/NcAppContent.mjs +8 -8
- package/dist/Components/NcAppContent.mjs.map +1 -1
- package/dist/Components/NcAppNavigation.cjs +58 -27
- package/dist/Components/NcAppNavigation.cjs.map +1 -1
- package/dist/Components/NcAppNavigation.mjs +67 -34
- package/dist/Components/NcAppNavigation.mjs.map +1 -1
- package/dist/Components/NcAppNavigationItem.cjs +166 -62
- package/dist/Components/NcAppNavigationItem.cjs.map +1 -1
- package/dist/Components/NcAppNavigationItem.mjs +145 -43
- package/dist/Components/NcAppNavigationItem.mjs.map +1 -1
- package/dist/Components/NcAppNavigationNew.cjs +6 -6
- package/dist/Components/NcAppNavigationNew.cjs.map +1 -1
- package/dist/Components/NcAppNavigationNew.mjs +17 -17
- package/dist/Components/NcAppNavigationNew.mjs.map +1 -1
- package/dist/Components/NcAppNavigationNewItem.cjs +7 -7
- package/dist/Components/NcAppNavigationNewItem.cjs.map +1 -1
- package/dist/Components/NcAppNavigationNewItem.mjs +5 -5
- package/dist/Components/NcAppNavigationNewItem.mjs.map +1 -1
- package/dist/Components/NcAppNavigationSettings.cjs +46 -14
- package/dist/Components/NcAppNavigationSettings.cjs.map +1 -1
- package/dist/Components/NcAppNavigationSettings.mjs +48 -16
- package/dist/Components/NcAppNavigationSettings.mjs.map +1 -1
- package/dist/Components/NcAppNavigationToggle.cjs +1 -1
- package/dist/Components/NcAppNavigationToggle.mjs +1 -1
- package/dist/Components/NcAppSettingsDialog.cjs +75 -54
- package/dist/Components/NcAppSettingsDialog.cjs.map +1 -1
- package/dist/Components/NcAppSettingsDialog.mjs +79 -57
- package/dist/Components/NcAppSettingsDialog.mjs.map +1 -1
- package/dist/Components/NcAppSettingsSection.cjs +29 -10
- package/dist/Components/NcAppSettingsSection.cjs.map +1 -1
- package/dist/Components/NcAppSettingsSection.mjs +29 -10
- package/dist/Components/NcAppSettingsSection.mjs.map +1 -1
- package/dist/Components/NcAppSidebar.cjs +99 -33
- package/dist/Components/NcAppSidebar.cjs.map +1 -1
- package/dist/Components/NcAppSidebar.mjs +156 -92
- package/dist/Components/NcAppSidebar.mjs.map +1 -1
- package/dist/Components/NcAppSidebarTab.cjs +7 -7
- package/dist/Components/NcAppSidebarTab.cjs.map +1 -1
- package/dist/Components/NcAppSidebarTab.mjs +6 -6
- package/dist/Components/NcAppSidebarTab.mjs.map +1 -1
- package/dist/Components/NcAvatar.cjs +1 -1
- package/dist/Components/NcAvatar.mjs +1 -1
- package/dist/Components/NcBreadcrumb.cjs +10 -10
- package/dist/Components/NcBreadcrumb.cjs.map +1 -1
- package/dist/Components/NcBreadcrumb.mjs +1 -1
- package/dist/Components/NcBreadcrumbs.cjs +85 -53
- package/dist/Components/NcBreadcrumbs.cjs.map +1 -1
- package/dist/Components/NcBreadcrumbs.mjs +91 -60
- package/dist/Components/NcBreadcrumbs.mjs.map +1 -1
- package/dist/Components/NcButton.cjs +25 -25
- package/dist/Components/NcButton.cjs.map +1 -1
- package/dist/Components/NcButton.mjs +25 -25
- package/dist/Components/NcButton.mjs.map +1 -1
- package/dist/Components/NcCheckboxRadioSwitch.cjs +305 -67
- package/dist/Components/NcCheckboxRadioSwitch.cjs.map +1 -1
- package/dist/Components/NcCheckboxRadioSwitch.mjs +307 -75
- package/dist/Components/NcCheckboxRadioSwitch.mjs.map +1 -1
- package/dist/Components/NcColorPicker.cjs +18 -18
- package/dist/Components/NcColorPicker.cjs.map +1 -1
- package/dist/Components/NcColorPicker.mjs +17 -17
- package/dist/Components/NcColorPicker.mjs.map +1 -1
- package/dist/Components/NcCounterBubble.cjs +6 -6
- package/dist/Components/NcCounterBubble.cjs.map +1 -1
- package/dist/Components/NcCounterBubble.mjs +2 -2
- package/dist/Components/NcCounterBubble.mjs.map +1 -1
- package/dist/Components/NcDashboardWidget.cjs +30 -30
- package/dist/Components/NcDashboardWidget.cjs.map +1 -1
- package/dist/Components/NcDashboardWidget.mjs +3 -3
- package/dist/Components/NcDashboardWidgetItem.cjs +1 -1
- package/dist/Components/NcDashboardWidgetItem.mjs +1 -1
- package/dist/Components/NcDateTime.cjs +1 -1
- package/dist/Components/NcDateTime.mjs +1 -1
- package/dist/Components/NcDateTimePicker.cjs +109 -44
- package/dist/Components/NcDateTimePicker.cjs.map +1 -1
- package/dist/Components/NcDateTimePicker.mjs +115 -52
- package/dist/Components/NcDateTimePicker.mjs.map +1 -1
- package/dist/Components/NcDateTimePickerNative.cjs +1 -1
- package/dist/Components/NcDateTimePickerNative.mjs +1 -1
- package/dist/Components/NcDialogButton.cjs +11 -11
- package/dist/Components/NcDialogButton.cjs.map +1 -1
- package/dist/Components/NcDialogButton.mjs +14 -14
- package/dist/Components/NcDialogButton.mjs.map +1 -1
- package/dist/Components/NcEmojiPicker.cjs +1 -1
- package/dist/Components/NcEmojiPicker.mjs +1 -1
- package/dist/Components/NcEmptyContent.cjs +14 -14
- package/dist/Components/NcEmptyContent.cjs.map +1 -1
- package/dist/Components/NcEmptyContent.mjs +7 -7
- package/dist/Components/NcEmptyContent.mjs.map +1 -1
- package/dist/Components/NcInputField.cjs +16 -16
- package/dist/Components/NcInputField.cjs.map +1 -1
- package/dist/Components/NcInputField.mjs +5 -5
- package/dist/Components/NcInputField.mjs.map +1 -1
- package/dist/Components/NcListItem.cjs +3 -3
- package/dist/Components/NcListItem.cjs.map +1 -1
- package/dist/Components/NcListItem.mjs +3 -3
- package/dist/Components/NcListItem.mjs.map +1 -1
- package/dist/Components/NcListItemIcon.cjs +1 -1
- package/dist/Components/NcListItemIcon.mjs +1 -1
- package/dist/Components/NcModal.cjs +165 -68
- package/dist/Components/NcModal.cjs.map +1 -1
- package/dist/Components/NcModal.mjs +129 -35
- package/dist/Components/NcModal.mjs.map +1 -1
- package/dist/Components/NcNoteCard.cjs +146 -18
- package/dist/Components/NcNoteCard.cjs.map +1 -1
- package/dist/Components/NcNoteCard.mjs +146 -21
- package/dist/Components/NcNoteCard.mjs.map +1 -1
- package/dist/Components/NcPasswordField.cjs +84 -20
- package/dist/Components/NcPasswordField.cjs.map +1 -1
- package/dist/Components/NcPasswordField.mjs +104 -42
- package/dist/Components/NcPasswordField.mjs.map +1 -1
- package/dist/Components/NcRelatedResourcesPanel.cjs +48 -31
- package/dist/Components/NcRelatedResourcesPanel.cjs.map +1 -1
- package/dist/Components/NcRelatedResourcesPanel.mjs +31 -14
- package/dist/Components/NcRelatedResourcesPanel.mjs.map +1 -1
- package/dist/Components/NcRichContenteditable.cjs +22 -18
- package/dist/Components/NcRichContenteditable.cjs.map +1 -1
- package/dist/Components/NcRichContenteditable.mjs +32 -28
- package/dist/Components/NcRichContenteditable.mjs.map +1 -1
- package/dist/Components/NcRichText.cjs +1 -1
- package/dist/Components/NcRichText.mjs +3 -3
- package/dist/Components/NcSelect.cjs +80 -57
- package/dist/Components/NcSelect.cjs.map +1 -1
- package/dist/Components/NcSelect.mjs +75 -50
- package/dist/Components/NcSelect.mjs.map +1 -1
- package/dist/Components/NcSelectTags.cjs +2 -2
- package/dist/Components/NcSelectTags.cjs.map +1 -1
- package/dist/Components/NcSelectTags.mjs +4 -4
- package/dist/Components/NcSelectTags.mjs.map +1 -1
- package/dist/Components/NcSettingsInputText.cjs +1 -1
- package/dist/Components/NcSettingsInputText.mjs +1 -1
- package/dist/Components/NcSettingsSection.cjs +46 -14
- package/dist/Components/NcSettingsSection.cjs.map +1 -1
- package/dist/Components/NcSettingsSection.mjs +44 -12
- package/dist/Components/NcSettingsSection.mjs.map +1 -1
- package/dist/Components/NcSettingsSelectGroup.cjs +1 -1
- package/dist/Components/NcSettingsSelectGroup.mjs +1 -1
- package/dist/Components/NcTextArea.cjs +14 -14
- package/dist/Components/NcTextArea.cjs.map +1 -1
- package/dist/Components/NcTextArea.mjs +6 -6
- package/dist/Components/NcTextArea.mjs.map +1 -1
- package/dist/Components/NcTextField.cjs +51 -19
- package/dist/Components/NcTextField.cjs.map +1 -1
- package/dist/Components/NcTextField.mjs +59 -28
- package/dist/Components/NcTextField.mjs.map +1 -1
- package/dist/Components/NcTimezonePicker.cjs +32 -24
- package/dist/Components/NcTimezonePicker.cjs.map +1 -1
- package/dist/Components/NcTimezonePicker.mjs +36 -27
- package/dist/Components/NcTimezonePicker.mjs.map +1 -1
- package/dist/Components/NcUserBubble.cjs +24 -20
- package/dist/Components/NcUserBubble.cjs.map +1 -1
- package/dist/Components/NcUserBubble.mjs +25 -20
- package/dist/Components/NcUserBubble.mjs.map +1 -1
- package/dist/assets/{NcAppNavigationToggle-2cc5b864.css → NcAppNavigationToggle-9e170630.css} +3 -2
- package/dist/assets/{NcInputConfirmCancel-2ba60a52.css → NcInputConfirmCancel-45d1d76b.css} +7 -7
- package/dist/assets/{index-af72a30b.css → index-05760fea.css} +5 -1
- package/dist/assets/{index-30e099f7.css → index-0ac09203.css} +3 -3
- package/dist/assets/{index-eea65531.css → index-0e9b11c7.css} +20 -16
- package/dist/assets/{index-7813bab3.css → index-17673ea1.css} +7 -9
- package/dist/assets/{index-1151d229.css → index-1f25a3c0.css} +3 -3
- package/dist/assets/{index-9dcf6260.css → index-2e5e3b55.css} +30 -30
- package/dist/assets/{index-ed4adf1d.css → index-4271da53.css} +18 -17
- package/dist/assets/{index-abb90c97.css → index-4e03d941.css} +48 -48
- package/dist/assets/{index-4b75fe20.css → index-55600948.css} +11 -11
- package/dist/assets/{index-236620b0.css → index-6899d75b.css} +29 -29
- package/dist/assets/{index-5ee8a575.css → index-73ded07b.css} +63 -63
- package/dist/assets/{index-1beccc92.css → index-750c02cc.css} +28 -10
- package/dist/assets/{index-9e9587e1.css → index-77a548be.css} +4 -4
- package/dist/assets/{index-c5ae3bc4.css → index-7d211db9.css} +11 -11
- package/dist/assets/{index-8304db49.css → index-802d2118.css} +5 -1
- package/dist/assets/{index-a2d55f92.css → index-9176105d.css} +41 -41
- package/dist/assets/index-93bc89ef.css +197 -0
- package/dist/assets/{index-50b0766d.css → index-a0532427.css} +55 -70
- package/dist/assets/{index-e828b286.css → index-ab715d82.css} +4 -4
- package/dist/assets/{index-9e44e336.css → index-c221fe05.css} +9 -9
- package/dist/assets/{index-c6f0da2e.css → index-c239a2fc.css} +14 -8
- package/dist/assets/{index-73867d38.css → index-d3702c91.css} +5 -1
- package/dist/assets/{index-4a775ba1.css → index-d812ed9e.css} +43 -43
- package/dist/assets/{index-793eae6b.css → index-d9ae9479.css} +6 -6
- package/dist/assets/{index-f85aa003.css → index-db5a8b1c.css} +22 -10
- package/dist/assets/{index-574438d6.css → index-dea0aef3.css} +10 -10
- package/dist/assets/{index-0adc989c.css → index-ebbb7829.css} +9 -13
- package/dist/assets/{index-c06ad941.css → index-fbc0b606.css} +58 -42
- package/dist/chunks/AlertCircleOutline-7085c10f.cjs +35 -0
- package/dist/chunks/AlertCircleOutline-7085c10f.cjs.map +1 -0
- package/dist/chunks/AlertCircleOutline-b73838e0.mjs +37 -0
- package/dist/chunks/AlertCircleOutline-b73838e0.mjs.map +1 -0
- package/dist/chunks/ArrowLeft-2f9b9323.cjs +35 -0
- package/dist/chunks/ArrowLeft-2f9b9323.cjs.map +1 -0
- package/dist/chunks/ArrowLeft-3779ba88.mjs +37 -0
- package/dist/chunks/ArrowLeft-3779ba88.mjs.map +1 -0
- package/dist/chunks/ArrowRight-7315f6c1.cjs +35 -0
- package/dist/chunks/ArrowRight-7315f6c1.cjs.map +1 -0
- package/dist/chunks/ArrowRight-74a9fcb2.mjs +37 -0
- package/dist/chunks/ArrowRight-74a9fcb2.mjs.map +1 -0
- package/dist/chunks/Check-2ea0a88a.mjs +37 -0
- package/dist/chunks/Check-2ea0a88a.mjs.map +1 -0
- package/dist/chunks/Check-be8cd6af.cjs +35 -0
- package/dist/chunks/Check-be8cd6af.cjs.map +1 -0
- package/dist/chunks/ChevronDown-a72d365d.mjs +37 -0
- package/dist/chunks/ChevronDown-a72d365d.mjs.map +1 -0
- package/dist/chunks/ChevronDown-dc32e51d.cjs +35 -0
- package/dist/chunks/ChevronDown-dc32e51d.cjs.map +1 -0
- package/dist/chunks/ChevronRight-1a6a6cf2.mjs +37 -0
- package/dist/chunks/ChevronRight-1a6a6cf2.mjs.map +1 -0
- package/dist/chunks/ChevronRight-a4c1e0d3.cjs +35 -0
- package/dist/chunks/ChevronRight-a4c1e0d3.cjs.map +1 -0
- package/dist/chunks/Close-271f72e2.mjs +37 -0
- package/dist/chunks/Close-271f72e2.mjs.map +1 -0
- package/dist/chunks/Close-98cb6f12.cjs +35 -0
- package/dist/chunks/Close-98cb6f12.cjs.map +1 -0
- package/dist/chunks/DotsHorizontal-0ee7d901.mjs +37 -0
- package/dist/chunks/DotsHorizontal-0ee7d901.mjs.map +1 -0
- package/dist/chunks/DotsHorizontal-ac96129a.cjs +35 -0
- package/dist/chunks/DotsHorizontal-ac96129a.cjs.map +1 -0
- package/dist/chunks/NcAppNavigationToggle-60664a28.cjs +113 -0
- package/dist/chunks/NcAppNavigationToggle-60664a28.cjs.map +1 -0
- package/dist/chunks/NcAppNavigationToggle-82764816.mjs +118 -0
- package/dist/chunks/NcAppNavigationToggle-82764816.mjs.map +1 -0
- package/dist/chunks/NcInputConfirmCancel-262d455f.cjs +90 -0
- package/dist/chunks/{NcInputConfirmCancel-44052477.mjs.map → NcInputConfirmCancel-262d455f.cjs.map} +1 -1
- package/dist/chunks/{NcInputConfirmCancel-44052477.mjs → NcInputConfirmCancel-906c7816.mjs} +11 -11
- package/dist/chunks/{NcInputConfirmCancel-6bea0fdc.cjs.map → NcInputConfirmCancel-906c7816.mjs.map} +1 -1
- package/dist/chunks/{NcRichText-8fda53c8.mjs → NcRichText-1e8fd02d.mjs} +1 -1
- package/dist/chunks/{NcRichText-8fda53c8.mjs.map → NcRichText-1e8fd02d.mjs.map} +1 -1
- package/dist/chunks/{NcRichText-332fe454.cjs → NcRichText-ae95c854.cjs} +1 -1
- package/dist/chunks/{NcRichText-332fe454.cjs.map → NcRichText-ae95c854.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-fdd3309c.mjs → NcSettingsSelectGroup-ae323579.mjs} +2 -2
- package/dist/chunks/{NcSettingsSelectGroup-fdd3309c.mjs.map → NcSettingsSelectGroup-ae323579.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-a5ff8c36.cjs → NcSettingsSelectGroup-e8f9f9fe.cjs} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-a5ff8c36.cjs.map → NcSettingsSelectGroup-e8f9f9fe.cjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-9519afcc.mjs → ScopeComponent-1ab1ebb9.mjs} +1 -1
- package/dist/chunks/{ScopeComponent-9519afcc.mjs.map → ScopeComponent-1ab1ebb9.mjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-e060526a.cjs → ScopeComponent-50287dad.cjs} +1 -1
- package/dist/chunks/{ScopeComponent-e060526a.cjs.map → ScopeComponent-50287dad.cjs.map} +1 -1
- package/dist/chunks/{index-032137a6.cjs → index-e06b96d3.cjs} +56 -47
- package/dist/chunks/index-e06b96d3.cjs.map +1 -0
- package/dist/chunks/{index-fb2ee22c.mjs → index-fbf943b3.mjs} +93 -84
- package/dist/chunks/index-fbf943b3.mjs.map +1 -0
- package/dist/chunks/{l10n-9aa6482d.mjs → l10n-9fc9974f.mjs} +1 -1
- package/dist/chunks/{l10n-9aa6482d.mjs.map → l10n-9fc9974f.mjs.map} +1 -1
- package/dist/chunks/{l10n-c7bd0ea6.cjs → l10n-ec2d3010.cjs} +1 -1
- package/dist/chunks/{l10n-c7bd0ea6.cjs.map → l10n-ec2d3010.cjs.map} +1 -1
- package/dist/chunks/l10n-f491109d.cjs +29 -0
- package/dist/chunks/l10n-f491109d.cjs.map +1 -0
- package/dist/chunks/l10n-f692947e.mjs +31 -0
- package/dist/chunks/l10n-f692947e.mjs.map +1 -0
- package/dist/chunks/{referencePickerModal-443a4c57.mjs → referencePickerModal-6bc8f6b9.mjs} +156 -124
- package/dist/chunks/referencePickerModal-6bc8f6b9.mjs.map +1 -0
- package/dist/chunks/{referencePickerModal-279a483d.cjs → referencePickerModal-e033bf2c.cjs} +144 -111
- package/dist/chunks/referencePickerModal-e033bf2c.cjs.map +1 -0
- package/dist/index.cjs +4 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +26 -30
- package/dist/index.mjs.map +1 -1
- package/dist/vendor.LICENSE.txt +5 -1
- package/package.json +3 -3
- package/dist/assets/index-d646553d.css +0 -41
- package/dist/chunks/NcAppNavigationToggle-841d3015.cjs +0 -49
- package/dist/chunks/NcAppNavigationToggle-841d3015.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationToggle-e358aa47.mjs +0 -55
- package/dist/chunks/NcAppNavigationToggle-e358aa47.mjs.map +0 -1
- package/dist/chunks/NcInputConfirmCancel-6bea0fdc.cjs +0 -90
- package/dist/chunks/index-032137a6.cjs.map +0 -1
- package/dist/chunks/index-fb2ee22c.mjs.map +0 -1
- package/dist/chunks/l10n-05a09c66.mjs +0 -31
- package/dist/chunks/l10n-05a09c66.mjs.map +0 -1
- package/dist/chunks/l10n-b1d264c7.cjs +0 -29
- package/dist/chunks/l10n-b1d264c7.cjs.map +0 -1
- package/dist/chunks/referencePickerModal-279a483d.cjs.map +0 -1
- package/dist/chunks/referencePickerModal-443a4c57.mjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"referencePickerModal-e033bf2c.cjs","sources":["../../src/components/NcRichText/widgets.js","../../src/components/NcRichText/NcReferenceWidget.vue","../../src/components/NcRichText/NcReferencePicker/customPickerElements.js","../../src/components/NcRichText/NcReferencePicker/NcCustomPickerElement.vue","../../src/components/NcRichText/NcReferencePicker/providerHelper.js","../../src/components/NcRichText/NcReferencePicker/utils.js","../../node_modules/vue-material-design-icons/LinkVariant.vue","../../src/components/NcRichText/NcReferencePicker/NcProviderList.vue","../../src/components/NcRichText/NcReferencePicker/NcRawLinkInput.vue","../../src/components/NcRichText/NcReferencePicker/NcSearchResult.vue","../../src/components/NcRichText/NcReferencePicker/NcSearch.vue","../../src/components/NcRichText/NcReferencePicker/NcReferencePicker.vue","../../src/components/NcRichText/NcReferencePicker/NcReferencePickerModal.vue","../../src/components/NcRichText/NcReferencePicker/referencePickerModal.js"],"sourcesContent":["if (!window._vue_richtext_widgets) {\n\twindow._vue_richtext_widgets = {}\n}\n\nconst isWidgetRegistered = (id) => {\n\treturn !!window._vue_richtext_widgets[id]\n}\n\nconst registerWidget = (id, callback, onDestroy = (el) => {}) => {\n\tif (window._vue_richtext_widgets[id]) {\n\t\tconsole.error('Widget for id ' + id + ' already registered')\n\t\treturn\n\t}\n\n\twindow._vue_richtext_widgets[id] = {\n\t\tid,\n\t\tcallback,\n\t\tonDestroy,\n\t}\n}\n\nconst renderWidget = (el, { richObjectType, richObject, accessible }) => {\n\tif (richObjectType === 'open-graph') {\n\t\treturn\n\t}\n\n\tif (!window._vue_richtext_widgets[richObjectType]) {\n\t\tconsole.error('Widget for rich object type ' + richObjectType + ' not registered')\n\t\treturn\n\t}\n\n\twindow._vue_richtext_widgets[richObjectType].callback(el, { richObjectType, richObject, accessible })\n}\n\nconst destroyWidget = (richObjectType, el) => {\n\tif (richObjectType === 'open-graph') {\n\t\treturn\n\t}\n\n\tif (!window._vue_richtext_widgets[richObjectType]) {\n\t\treturn\n\t}\n\n\twindow._vue_richtext_widgets[richObjectType].onDestroy(el)\n}\n\nwindow._registerWidget = registerWidget\n\nexport {\n\tregisterWidget,\n\trenderWidget,\n\tdestroyWidget,\n\tisWidgetRegistered,\n}\n","<template>\n\t<div>\n\t\t<div v-if=\"reference && hasCustomWidget\" class=\"widget-custom\">\n\t\t\t<div ref=\"customWidget\" />\n\t\t</div>\n\n\t\t<a v-else-if=\"!noAccess && reference && reference.openGraphObject && !hasCustomWidget\"\n\t\t\t:href=\"reference.openGraphObject.link\"\n\t\t\trel=\"noopener noreferrer\"\n\t\t\ttarget=\"_blank\"\n\t\t\tclass=\"widget-default\">\n\t\t\t<img v-if=\"reference.openGraphObject.thumb\" class=\"widget-default--image\" :src=\"reference.openGraphObject.thumb\">\n\t\t\t<div class=\"widget-default--details\">\n\t\t\t\t<p class=\"widget-default--name\">{{ reference.openGraphObject.name }}</p>\n\t\t\t\t<p class=\"widget-default--description\" :style=\"descriptionStyle\">{{ reference.openGraphObject.description }}</p>\n\t\t\t\t<p class=\"widget-default--link\">{{ compactLink }}</p>\n\t\t\t</div>\n\t\t</a>\n\t</div>\n</template>\n<script>\nimport { renderWidget, isWidgetRegistered, destroyWidget } from './widgets.js'\n\nexport default {\n\tname: 'NcReferenceWidget',\n\tprops: {\n\t\treference: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tcompact: 3,\n\t\t}\n\t},\n\tcomputed: {\n\t\thasCustomWidget() {\n\t\t\treturn isWidgetRegistered(this.reference.richObjectType)\n\t\t},\n\t\tnoAccess() {\n\t\t\treturn this.reference && !this.reference.accessible\n\t\t},\n\t\tdescriptionStyle() {\n\t\t\tif (this.compact === 0) {\n\t\t\t\treturn {\n\t\t\t\t\tdisplay: 'none',\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst lineClamp = this.compact < 4 ? this.compact : 3\n\t\t\treturn {\n\t\t\t\tlineClamp,\n\t\t\t\twebkitLineClamp: lineClamp,\n\t\t\t}\n\t\t},\n\t\tcompactLink() {\n\t\t\tconst link = this.reference.openGraphObject.link\n\t\t\tif (!link) {\n\t\t\t\treturn ''\n\t\t\t}\n\n\t\t\tif (link.startsWith('https://')) {\n\t\t\t\treturn link.substring(8)\n\t\t\t}\n\t\t\tif (link.startsWith('http://')) {\n\t\t\t\treturn link.substring(7)\n\t\t\t}\n\t\t\treturn link\n\t\t},\n\t},\n\tmounted() {\n\t\tthis.renderWidget()\n\t\tthis.observer = new ResizeObserver(entries => {\n\t\t\tif (entries[0].contentRect.width < 450) {\n\t\t\t\tthis.compact = 0\n\t\t\t} else if (entries[0].contentRect.width < 550) {\n\t\t\t\tthis.compact = 1\n\t\t\t} else if (entries[0].contentRect.width < 650) {\n\t\t\t\tthis.compact = 2\n\t\t\t} else {\n\t\t\t\tthis.compact = 3\n\t\t\t}\n\n\t\t})\n\t\tthis.observer.observe(this.$el)\n\t},\n\tbeforeDestroy() {\n\t\tthis.observer.disconnect()\n\t\tdestroyWidget(this.reference.richObjectType, this.$el)\n\t},\n\tmethods: {\n\t\trenderWidget() {\n\t\t\tif (this.$refs.customWidget) {\n\t\t\t\tthis.$refs.customWidget.innerHTML = ''\n\t\t\t}\n\t\t\tif (this?.reference?.richObjectType === 'open-graph') {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.$nextTick(() => {\n\t\t\t\t// Waiting for the ref to become available\n\t\t\t\trenderWidget(this.$refs.customWidget, this.reference)\n\t\t\t})\n\t\t},\n\t},\n}\n</script>\n<style lang=\"scss\" scoped>\n\n@mixin widget {\n\twidth: 100%;\n\tmargin: auto;\n\tmargin-bottom: calc(var(--default-grid-baseline, 4px) * 3);\n\tmargin-top: calc(var(--default-grid-baseline, 4px) * 3);\n\toverflow: hidden;\n\tborder: 2px solid var(--color-border);\n\tborder-radius: var(--border-radius-large);\n\tbackground-color: transparent;\n\tdisplay: flex;\n}\n\n.widget-custom {\n\t@include widget;\n}\n\n.widget-access {\n\t@include widget;\n\tpadding: calc(var(--default-grid-baseline, 4px) * 3);\n}\n\n.widget-default {\n\t@include widget;\n\n\t&--compact {\n\t\tflex-direction: column;\n\n\t\t.widget-default--image {\n\t\t\twidth: 100%;\n\t\t\theight: 150px;\n\t\t}\n\n\t\t.widget-default--details {\n\t\t\twidth: 100%;\n\t\t\tpadding-top: calc(var(--default-grid-baseline, 4px) * 2);\n\t\t\tpadding-bottom: calc(var(--default-grid-baseline, 4px) * 2);\n\t\t}\n\n\t\t.widget-default--description {\n\t\t\tdisplay: none;\n\t\t}\n\n\t}\n\n\t&--image {\n\t\twidth: 40%;\n\t\tbackground-position: center;\n\t\tbackground-size: cover;\n\t\tbackground-repeat: no-repeat;\n\t}\n\n\t&--name {\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\twhite-space: nowrap;\n\t\tfont-weight: bold;\n\t}\n\n\t&--details {\n\t\tpadding: calc(var(--default-grid-baseline, 4px) * 3);\n\t\twidth: 60%;\n\n\t\tp {\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t}\n\t}\n\n\t&--description {\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\tdisplay: -webkit-box;\n\t\t-webkit-line-clamp: 3;\n\t\tline-clamp: 3;\n\t\t-webkit-box-orient: vertical;\n\t}\n\n\t&--link {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\twhite-space: nowrap;\n\t}\n}\n</style>\n","if (!window._vue_richtext_custom_picker_elements) {\n\twindow._vue_richtext_custom_picker_elements = {}\n}\n\n/**\n * Representation of the render callback result\n * It contains a dom element and an object (Vue instance or other fancy things)\n */\nclass NcCustomPickerRenderResult {\n\n\t/**\n\t * @param {HTMLElement} element The HTML element\n\t * @param {object} object The object\n\t */\n\tconstructor(element, object) {\n\t\tthis.element = element\n\t\tthis.object = object\n\t}\n\n}\n\nconst isCustomPickerElementRegistered = (id) => {\n\treturn !!window._vue_richtext_custom_picker_elements[id]\n}\n\nconst getCustomPickerElementSize = (id) => {\n\tconst size = window._vue_richtext_custom_picker_elements[id]?.size\n\tif (['small', 'normal', 'large', 'full'].includes(size)) {\n\t\treturn size\n\t}\n\treturn null\n}\n\nconst registerCustomPickerElement = (id, callback, onDestroy = (el) => {}, size = 'large') => {\n\tif (window._vue_richtext_custom_picker_elements[id]) {\n\t\tconsole.error('Custom reference picker element for id ' + id + ' already registered')\n\t\treturn\n\t}\n\n\twindow._vue_richtext_custom_picker_elements[id] = {\n\t\tid,\n\t\tcallback,\n\t\tonDestroy,\n\t\tsize,\n\t}\n}\n\nconst renderCustomPickerElement = (el, { providerId, accessible }) => {\n\tif (!window._vue_richtext_custom_picker_elements[providerId]) {\n\t\tconsole.error('Custom reference picker element for reference provider ID ' + providerId + ' not registered')\n\t\treturn\n\t}\n\n\treturn window._vue_richtext_custom_picker_elements[providerId].callback(el, { providerId, accessible })\n}\n\nconst destroyCustomPickerElement = (providerId, el, renderResult) => {\n\tif (!window._vue_richtext_custom_picker_elements[providerId]) {\n\t\treturn\n\t}\n\n\twindow._vue_richtext_custom_picker_elements[providerId].onDestroy(el, renderResult)\n}\n\nwindow._registerCustomPickerElement = registerCustomPickerElement\n\nexport {\n\tNcCustomPickerRenderResult,\n\tregisterCustomPickerElement,\n\trenderCustomPickerElement,\n\tdestroyCustomPickerElement,\n\tisCustomPickerElementRegistered,\n\tgetCustomPickerElementSize,\n}\n","<template>\n\t<div ref=\"domElement\" />\n</template>\n\n<script>\nimport { renderCustomPickerElement, isCustomPickerElementRegistered, destroyCustomPickerElement } from './customPickerElements.js'\n\nexport default {\n\tname: 'NcCustomPickerElement',\n\tprops: {\n\t\t/**\n\t\t * The reference provider\n\t\t */\n\t\tprovider: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n\temits: [\n\t\t'cancel',\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tisRegistered: isCustomPickerElementRegistered(this.provider.id),\n\t\t\trenderResult: null,\n\t\t}\n\t},\n\tmounted() {\n\t\tif (this.isRegistered) {\n\t\t\tthis.renderElement()\n\t\t}\n\t},\n\tbeforeDestroy() {\n\t\tif (this.isRegistered) {\n\t\t\tdestroyCustomPickerElement(this.provider.id, this.$el, this.renderResult)\n\t\t}\n\t},\n\tmethods: {\n\t\trenderElement() {\n\t\t\tif (this.$refs.domElement) {\n\t\t\t\tthis.$refs.domElement.innerHTML = ''\n\t\t\t}\n\n\t\t\tconst renderFunctionResult = renderCustomPickerElement(this.$refs.domElement, { providerId: this.provider.id, accessible: false })\n\t\t\t// this works whether renderCustomPickerElement returns a promise or a value\n\t\t\tPromise.resolve(renderFunctionResult).then(result => {\n\t\t\t\tthis.renderResult = result\n\t\t\t\tif (this.renderResult.object?._isVue && this.renderResult.object?.$on) {\n\t\t\t\t\tthis.renderResult.object.$on('submit', this.onSubmit)\n\t\t\t\t\tthis.renderResult.object.$on('cancel', this.onCancel)\n\t\t\t\t}\n\t\t\t\tthis.renderResult.element.addEventListener('submit', (e) => {\n\t\t\t\t\tthis.onSubmit(e.detail)\n\t\t\t\t})\n\t\t\t\tthis.renderResult.element.addEventListener('cancel', this.onCancel)\n\t\t\t})\n\t\t},\n\t\tonSubmit(value) {\n\t\t\tthis.$emit('submit', value)\n\t\t},\n\t\tonCancel() {\n\t\t\tthis.$emit('cancel')\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n// nothing yet\n</style>\n","import { isCustomPickerElementRegistered } from './customPickerElements.js'\n\nimport { t } from '../../../l10n.js'\n\nimport axios from '@nextcloud/axios'\nimport { loadState } from '@nextcloud/initial-state'\nimport { generateOcsUrl, imagePath } from '@nextcloud/router'\n\nexport const anyLinkProviderId = 'any-link'\n\nconst anyLinkProvider = {\n\tid: anyLinkProviderId,\n\ttitle: t('Any link'),\n\ticon_url: imagePath('core', 'filetypes/link.svg'),\n}\n\n// only get the provider list once, even if functions of this file are imported multiple times by different apps/components\nif (!window._vue_richtext_reference_providers) {\n\twindow._vue_richtext_reference_providers = loadState('core', 'reference-provider-list', [])\n}\n\n// single timestamps object used by every entity in the page\nif (!window._vue_richtext_reference_provider_timestamps) {\n\twindow._vue_richtext_reference_provider_timestamps = loadState('core', 'reference-provider-timestamps', {})\n}\n\n/**\n * @param {string} providerId The provider ID\n * @return {object} The provider object\n */\nexport function getProvider(providerId) {\n\tif (providerId === anyLinkProviderId) {\n\t\treturn anyLinkProvider\n\t}\n\treturn getProviders().find(p => p.id === providerId)\n}\n\n/**\n * @return {Array} Raw provider list as it was provided by the server\n */\nexport function getProviders() {\n\treturn window._vue_richtext_reference_providers.filter(p => {\n\t\t// avoid providers with no associated search provider and no custom component registered\n\t\tconst keep = (!!p.search_providers_ids && p.search_providers_ids.length > 0) || isCustomPickerElementRegistered(p.id)\n\t\tif (!keep) {\n\t\t\tconsole.debug('[smart picker]', p.id, 'reference provider is discoverable but does not have any related search provider or custom picker component registered')\n\t\t}\n\t\treturn keep\n\t})\n}\n\n/**\n * Helper function to sort a list of providers according to 2 factors:\n * - their \"last used timestamp\"\n * - their \"order\" property (coming from the provider declaration in the server implementation)\n *\n * @param {Array} providerList list of provider objects\n * @return {Array} the sorted provider list\n */\nexport function sortProviders(providerList) {\n\tconst timestamps = window._vue_richtext_reference_provider_timestamps\n\n\treturn providerList.sort((a, b) => {\n\t\treturn a.order === b.order\n\t\t\t? 0\n\t\t\t: a.order > b.order\n\t\t\t\t? 1\n\t\t\t\t: -1\n\t}).sort((a, b) => {\n\t\tconst ta = timestamps[a.id]\n\t\tconst tb = timestamps[b.id]\n\t\treturn ta === tb\n\t\t\t? 0\n\t\t\t: tb === undefined\n\t\t\t\t? -1\n\t\t\t\t: ta === undefined\n\t\t\t\t\t? 1\n\t\t\t\t\t: ta > tb\n\t\t\t\t\t\t? -1\n\t\t\t\t\t\t: 1\n\t})\n}\n\n/**\n * Helper function to search a provider from a search query\n * Result is a sorted list of providers\n *\n * @param {string} query The search query\n * @param {number} limit (optional) max number of results\n * @return {Array} the sorted/filtered provider list\n */\nexport function searchProvider(query, limit = null) {\n\tconst providers = getProviders()\n\tconst escapedQuery = query.replace(/[/\\-\\\\^$*+?.()|[\\]{}]/g, '\\\\$&')\n\tconst regexp = new RegExp(escapedQuery, 'i')\n\tconst sortedProviders = sortProviders(providers)\n\tconst filteredSortedProviders = sortedProviders.filter(p => {\n\t\treturn p.title.match(regexp)\n\t})\n\tconst searchResult = limit\n\t\t? filteredSortedProviders.slice(0, limit)\n\t\t: filteredSortedProviders\n\t// append the 'any link' provider in the full list or when there is no result\n\tif (query === '' || searchResult.length === 0) {\n\t\tsearchResult.push(anyLinkProvider)\n\t}\n\treturn searchResult\n}\n\n/**\n * Update the \"last used timestamp\" on the server side and then locally in the frontend\n *\n * @param {number} providerId The id of the search provider\n */\nexport function touchProvider(providerId) {\n\tconst timestamp = Math.floor(Date.now() / 1000)\n\tconst params = {\n\t\ttimestamp,\n\t}\n\tconst url = generateOcsUrl('references/provider/{providerId}', { providerId })\n\taxios.put(url, params)\n\t\t.then((response) => {\n\t\t\twindow._vue_richtext_reference_provider_timestamps[providerId] = timestamp\n\t\t})\n}\n","let mytimer = 0\n/**\n *\n * @param {Function} callback The callback to call after the delay\n * @param {number} ms The delay in milli-seconds\n */\nexport function delay(callback, ms) {\n\treturn function() {\n\t\tconst context = this\n\t\tconst args = arguments\n\t\tclearTimeout(mytimer)\n\t\tmytimer = setTimeout(function() {\n\t\t\tcallback.apply(context, args)\n\t\t}, ms || 0)\n\t}\n}\n/**\n *\n * @param {string} str The url\n */\nexport function isUrl(str) {\n\ttry {\n\t\treturn Boolean(new URL(str))\n\t} catch (error) {\n\t\treturn false\n\t}\n}\n","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon link-variant-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M10.59,13.41C11,13.8 11,14.44 10.59,14.83C10.2,15.22 9.56,15.22 9.17,14.83C7.22,12.88 7.22,9.71 9.17,7.76V7.76L12.71,4.22C14.66,2.27 17.83,2.27 19.78,4.22C21.73,6.17 21.73,9.34 19.78,11.29L18.29,12.78C18.3,11.96 18.17,11.14 17.89,10.36L18.36,9.88C19.54,8.71 19.54,6.81 18.36,5.64C17.19,4.46 15.29,4.46 14.12,5.64L10.59,9.17C9.41,10.34 9.41,12.24 10.59,13.41M13.41,9.17C13.8,8.78 14.44,8.78 14.83,9.17C16.78,11.12 16.78,14.29 14.83,16.24V16.24L11.29,19.78C9.34,21.73 6.17,21.73 4.22,19.78C2.27,17.83 2.27,14.66 4.22,12.71L5.71,11.22C5.7,12.04 5.83,12.86 6.11,13.65L5.64,14.12C4.46,15.29 4.46,17.19 5.64,18.36C6.81,19.54 8.71,19.54 9.88,18.36L13.41,14.83C14.59,13.66 14.59,11.76 13.41,10.59C13,10.2 13,9.56 13.41,9.17Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"LinkVariantIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","<template>\n\t<div class=\"provider-list\">\n\t\t<NcSelect ref=\"provider-select\"\n\t\t\tv-model=\"selectedProvider\"\n\t\t\tclass=\"provider-list--select\"\n\t\t\tinput-id=\"provider-select-input\"\n\t\t\tlabel=\"title\"\n\t\t\t:placeholder=\"multiselectPlaceholder\"\n\t\t\t:options=\"options\"\n\t\t\t:append-to-body=\"false\"\n\t\t\t:clear-search-on-select=\"true\"\n\t\t\t:clear-search-on-blur=\"() => false\"\n\t\t\t:filterable=\"false\"\n\t\t\t@search=\"onSearch\"\n\t\t\t@input=\"onProviderSelected\">\n\t\t\t<template #option=\"option\">\n\t\t\t\t<div v-if=\"option.isLink\" class=\"provider\">\n\t\t\t\t\t<LinkVariantIcon class=\"link-icon\" :size=\"20\" />\n\t\t\t\t\t<span>{{ option.title }}</span>\n\t\t\t\t</div>\n\t\t\t\t<div v-else class=\"provider\">\n\t\t\t\t\t<img class=\"provider-icon\"\n\t\t\t\t\t\t:src=\"option.icon_url\"\n\t\t\t\t\t\t:alt=\"providerIconAlt\">\n\t\t\t\t\t<NcHighlight class=\"option-text\"\n\t\t\t\t\t\t:search=\"query\"\n\t\t\t\t\t\t:text=\"option.title\" />\n\t\t\t\t</div>\n\t\t\t</template>\n\t\t</NcSelect>\n\t\t<NcEmptyContent class=\"provider-list--empty-content\">\n\t\t\t<template #icon>\n\t\t\t\t<LinkVariantIcon />\n\t\t\t</template>\n\t\t</NcEmptyContent>\n\t</div>\n</template>\n\n<script>\nimport { searchProvider } from './providerHelper.js'\nimport { isUrl } from './utils.js'\nimport NcEmptyContent from '../../NcEmptyContent/index.js'\nimport NcHighlight from '../../NcHighlight/index.js'\nimport NcSelect from '../../NcSelect/index.js'\nimport { t } from '../../../l10n.js'\n\nimport LinkVariantIcon from 'vue-material-design-icons/LinkVariant.vue'\n\nexport default {\n\tname: 'NcProviderList',\n\tcomponents: {\n\t\tNcSelect,\n\t\tNcHighlight,\n\t\tNcEmptyContent,\n\t\tLinkVariantIcon,\n\t},\n\temits: [\n\t\t'select-provider',\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tselectedProvider: null,\n\t\t\tquery: '',\n\t\t\tmultiselectPlaceholder: t('Select provider'),\n\t\t\tproviderIconAlt: t('Provider icon'),\n\t\t}\n\t},\n\tcomputed: {\n\t\toptions() {\n\t\t\tconst result = []\n\t\t\tif (this.query !== '' && isUrl(this.query)) {\n\t\t\t\tresult.push({\n\t\t\t\t\tid: this.query,\n\t\t\t\t\ttitle: this.query,\n\t\t\t\t\tisLink: true,\n\t\t\t\t})\n\t\t\t}\n\t\t\tresult.push(...searchProvider(this.query))\n\t\t\treturn result\n\t\t},\n\t},\n\tmethods: {\n\t\tfocus() {\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.$refs['provider-select']?.$el?.querySelector('#provider-select-input')?.focus()\n\t\t\t}, 300)\n\t\t},\n\t\tonProviderSelected(p) {\n\t\t\tif (p !== null) {\n\t\t\t\tif (p.isLink) {\n\t\t\t\t\tthis.$emit('submit', p.title)\n\t\t\t\t} else {\n\t\t\t\t\tthis.$emit('select-provider', p)\n\t\t\t\t}\n\t\t\t\tthis.selectedProvider = null\n\t\t\t}\n\t\t},\n\t\tonSearch(query, loading) {\n\t\t\tthis.query = query\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.provider-list {\n\twidth: 100%;\n\tmin-height: 400px;\n\tpadding: 0 16px 16px 16px;\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t&--select {\n\t\twidth: 100%;\n\n\t\t.provider {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\theight: 28px;\n\t\t\toverflow: hidden;\n\n\t\t\t.link-icon {\n\t\t\t\tmargin-right: 8px;\n\t\t\t}\n\n\t\t\t.provider-icon {\n\t\t\t\twidth: 20px;\n\t\t\t\theight: 20px;\n\t\t\t\tobject-fit: contain;\n\t\t\t\tmargin-right: 8px;\n\t\t\t\tfilter: var(--background-invert-if-dark);\n\t\t\t}\n\n\t\t\t.option-text {\n\t\t\t\toverflow: hidden;\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t\twhite-space: nowrap;\n\t\t\t}\n\n\t\t}\n\t}\n}\n</style>\n","<template>\n\t<div class=\"raw-link\">\n\t\t<div class=\"input-wrapper\">\n\t\t\t<NcTextField ref=\"url-input\"\n\t\t\t\t:value.sync=\"inputValue\"\n\t\t\t\t:show-trailing-button=\"inputValue !== ''\"\n\t\t\t\t:label=\"inputPlaceholder\"\n\t\t\t\t@trailing-button-click=\"onClear\"\n\t\t\t\t@update:value=\"onInput\"\n\t\t\t\t@keyup.native.enter=\"onSubmit\">\n\t\t\t\t<NcLoadingIcon v-if=\"loading\" :size=\"16\" />\n\t\t\t\t<LinkVariantIcon v-else :size=\"16\" />\n\t\t\t</NcTextField>\n\t\t</div>\n\t\t<NcReferenceWidget v-if=\"reference !== null\"\n\t\t\tclass=\"reference-widget\"\n\t\t\t:reference=\"reference\" />\n\t\t<NcEmptyContent v-else\n\t\t\tclass=\"raw-link--empty-content\">\n\t\t\t<template #icon>\n\t\t\t\t<img v-if=\"provider.icon_url\"\n\t\t\t\t\tclass=\"provider-icon\"\n\t\t\t\t\t:src=\"provider.icon_url\">\n\t\t\t\t<LinkVariantIcon v-else />\n\t\t\t</template>\n\t\t</NcEmptyContent>\n\t</div>\n</template>\n\n<script>\nimport NcReferenceWidget from '../NcReferenceWidget.vue'\nimport { isUrl, delay } from './utils.js'\nimport NcEmptyContent from '../../NcEmptyContent/index.js'\nimport NcLoadingIcon from '../../NcLoadingIcon/index.js'\nimport NcTextField from '../../NcTextField/index.js'\nimport { t } from '../../../l10n.js'\n\nimport axios from '@nextcloud/axios'\nimport { generateOcsUrl } from '@nextcloud/router'\n\nimport LinkVariantIcon from 'vue-material-design-icons/LinkVariant.vue'\n\nexport default {\n\tname: 'NcRawLinkInput',\n\tcomponents: {\n\t\tLinkVariantIcon,\n\t\tNcEmptyContent,\n\t\tNcLoadingIcon,\n\t\tNcReferenceWidget,\n\t\tNcTextField,\n\t},\n\tprops: {\n\t\t/**\n\t\t * The reference provider\n\t\t */\n\t\tprovider: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n\temits: [\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tinputValue: '',\n\t\t\tloading: false,\n\t\t\treference: null,\n\t\t\tabortController: null,\n\t\t\tinputPlaceholder: t('Enter link'),\n\t\t}\n\t},\n\tcomputed: {\n\t\tisLinkValid() {\n\t\t\treturn isUrl(this.inputValue)\n\t\t},\n\t},\n\tmethods: {\n\t\tfocus() {\n\t\t\tthis.$refs['url-input'].$el.getElementsByTagName('input')[0]?.focus()\n\t\t},\n\t\tonSubmit(e) {\n\t\t\tconst value = e.target.value\n\t\t\tif (this.isLinkValid) {\n\t\t\t\tthis.$emit('submit', value)\n\t\t\t}\n\t\t},\n\t\tonClear() {\n\t\t\tthis.inputValue = ''\n\t\t\tthis.reference = null\n\t\t},\n\t\tonInput() {\n\t\t\tthis.reference = null\n\t\t\tif (this.abortController) {\n\t\t\t\tthis.abortController.abort()\n\t\t\t}\n\t\t\tif (this.isLinkValid) {\n\t\t\t\tdelay(() => {\n\t\t\t\t\tthis.updateReference()\n\t\t\t\t}, 500)()\n\t\t\t}\n\t\t},\n\t\tupdateReference() {\n\t\t\tthis.loading = true\n\t\t\tthis.abortController = new AbortController()\n\t\t\taxios.get(generateOcsUrl('references/resolve', 2) + '?reference=' + encodeURIComponent(this.inputValue), {\n\t\t\t\tsignal: this.abortController.signal,\n\t\t\t})\n\t\t\t\t.then((response) => {\n\t\t\t\t\tthis.reference = response.data.ocs.data.references[this.inputValue]\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tconsole.error(error)\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\tthis.loading = false\n\t\t\t\t})\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.raw-link {\n\twidth: 100%;\n\tmin-height: 350px;\n\tdisplay: flex;\n\tflex-direction: column;\n\toverflow-y: auto;\n\tpadding: 0 16px 16px 16px;\n\n\t.input-wrapper {\n\t\twidth: 100%;\n\t}\n\n\t.reference-widget {\n\t\tdisplay: flex;\n\t}\n\n\t&--empty-content .provider-icon {\n\t\twidth: 150px;\n\t\theight: 150px;\n\t\tobject-fit: contain;\n\t\tfilter: var(--background-invert-if-dark);\n\t}\n\n\t&--input {\n\t\twidth: 99%;\n\t}\n}\n</style>\n","<template>\n\t<div class=\"result\">\n\t\t<div v-if=\"entry.icon\"\n\t\t\t:class=\"{ [entry.icon]: true, rounded: entry.rounded }\"\n\t\t\tclass=\"result--icon-class\" />\n\t\t<img v-else\n\t\t\tclass=\"result--image\"\n\t\t\t:class=\"{ rounded: entry.rounded }\"\n\t\t\t:src=\"entry.thumbnailUrl\">\n\t\t<div class=\"result--content\">\n\t\t\t<span class=\"result--content--name\">\n\t\t\t\t<NcHighlight :search=\"query\" :text=\"entry.title\" />\n\t\t\t</span>\n\t\t\t<span class=\"result--content--subline\">\n\t\t\t\t<NcHighlight :search=\"query\" :text=\"entry.subline\" />\n\t\t\t</span>\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport NcHighlight from '../../NcHighlight/index.js'\n\nexport default {\n\tname: 'NcSearchResult',\n\tcomponents: {\n\t\tNcHighlight,\n\t},\n\tprops: {\n\t\t/**\n\t\t * Unified search result entry\n\t\t */\n\t\tentry: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * The query that led to getting this result\n\t\t * Used to highlight the entry text\n\t\t */\n\t\tquery: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.result {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\toverflow: hidden;\n\n\t&--icon-class,\n\t&--image {\n\t\twidth: 40px;\n\t\tmin-width: 40px;\n\t\theight: 40px;\n\t\tobject-fit: contain;\n\n\t\t&.rounded {\n\t\t\tborder-radius: 50%;\n\t\t}\n\t}\n\n\t&--content {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tpadding-left: 10px;\n\t\toverflow: hidden;\n\n\t\t&--name,\n\t\t&--subline {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n}\n</style>\n","<template>\n\t<div class=\"smart-picker-search\" :class=\"{ 'with-empty-content': showEmptyContent }\">\n\t\t<NcSelect ref=\"search-select\"\n\t\t\tv-model=\"selectedResult\"\n\t\t\tclass=\"smart-picker-search--select\"\n\t\t\tinput-id=\"search-select-input\"\n\t\t\tlabel=\"name\"\n\t\t\t:placeholder=\"mySearchPlaceholder\"\n\t\t\t:options=\"options\"\n\t\t\t:append-to-body=\"false\"\n\t\t\t:close-on-select=\"false\"\n\t\t\t:clear-search-on-select=\"false\"\n\t\t\t:clear-search-on-blur=\"() => false\"\n\t\t\t:reset-focus-on-options-change=\"false\"\n\t\t\t:filterable=\"false\"\n\t\t\t:autoscroll=\"true\"\n\t\t\t:reset-on-options-change=\"false\"\n\t\t\t:loading=\"searching\"\n\t\t\t@search=\"onSearchInput\"\n\t\t\t@input=\"onSelectResultSelected\">\n\t\t\t<template #option=\"option\">\n\t\t\t\t<div v-if=\"option.isRawLink\" class=\"custom-option\">\n\t\t\t\t\t<LinkVariantIcon class=\"option-simple-icon\" :size=\"20\" />\n\t\t\t\t\t<span class=\"option-text\">\n\t\t\t\t\t\t{{ t('Raw link {options}', { options: option.resourceUrl }) }}\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t\t<NcSearchResult v-else-if=\"option.resourceUrl\"\n\t\t\t\t\tclass=\"search-result\"\n\t\t\t\t\t:entry=\"option\"\n\t\t\t\t\t:query=\"searchQuery\" />\n\t\t\t\t<span v-else-if=\"option.isCustomGroupTitle\" class=\"custom-option group-name\">\n\t\t\t\t\t<img v-if=\"provider.icon_url\"\n\t\t\t\t\t\tclass=\"provider-icon group-name-icon\"\n\t\t\t\t\t\t:src=\"provider.icon_url\">\n\t\t\t\t\t<span class=\"option-text\">\n\t\t\t\t\t\t<strong>{{ option.name }}</strong>\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\t\t\t\t<span v-else-if=\"option.isMore\" :class=\"{ 'custom-option': true }\">\n\t\t\t\t\t<span v-if=\"option.isLoading\" class=\"option-simple-icon icon-loading-small\" />\n\t\t\t\t\t<DotsHorizontalIcon v-else class=\"option-simple-icon\" :size=\"20\" />\n\t\t\t\t\t<span class=\"option-text\">\n\t\t\t\t\t\t{{ t('Load more \"{options}\"', { options: option.name }) }}\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\t\t\t</template>\n\t\t\t<template #no-options>\n\t\t\t\t{{ noOptionsText }}\n\t\t\t</template>\n\t\t</NcSelect>\n\t\t<NcEmptyContent v-if=\"showEmptyContent\"\n\t\t\tclass=\"smart-picker-search--empty-content\">\n\t\t\t<template #icon>\n\t\t\t\t<img v-if=\"provider.icon_url\"\n\t\t\t\t\tclass=\"provider-icon\"\n\t\t\t\t\t:alt=\"providerIconAlt\"\n\t\t\t\t\t:src=\"provider.icon_url\">\n\t\t\t\t<LinkVariantIcon v-else />\n\t\t\t</template>\n\t\t</NcEmptyContent>\n\t</div>\n</template>\n\n<script>\nimport NcSearchResult from './NcSearchResult.vue'\nimport { isUrl, delay } from './utils.js'\nimport NcEmptyContent from '../../NcEmptyContent/index.js'\nimport NcSelect from '../../NcSelect/index.js'\n\nimport { t } from '../../../l10n.js'\n\nimport axios from '@nextcloud/axios'\nimport { generateOcsUrl } from '@nextcloud/router'\n\nimport DotsHorizontalIcon from 'vue-material-design-icons/DotsHorizontal.vue'\nimport LinkVariantIcon from 'vue-material-design-icons/LinkVariant.vue'\n\nconst LIMIT = 5\n\nexport default {\n\tname: 'NcSearch',\n\tcomponents: {\n\t\tLinkVariantIcon,\n\t\tDotsHorizontalIcon,\n\t\tNcEmptyContent,\n\t\tNcSelect,\n\t\tNcSearchResult,\n\t},\n\tprops: {\n\t\t/**\n\t\t * The selected reference provider\n\t\t */\n\t\tprovider: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tshowEmptyContent: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\tsearchPlaceholder: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\temits: [\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tsearchQuery: '',\n\t\t\tselectedResult: null,\n\t\t\tresultsBySearchProvider: {},\n\t\t\tsearching: false,\n\t\t\tsearchingMoreOf: null,\n\t\t\tabortController: null,\n\t\t\tnoOptionsText: t('Start typing to search'),\n\t\t\tproviderIconAlt: t('Provider icon'),\n\t\t}\n\t},\n\tcomputed: {\n\t\tmySearchPlaceholder() {\n\t\t\treturn this.searchPlaceholder || t('Search')\n\t\t},\n\t\tsearchProviderIds() {\n\t\t\treturn this.provider.search_providers_ids\n\t\t},\n\t\toptions() {\n\t\t\tif (this.searchQuery === '') {\n\t\t\t\treturn []\n\t\t\t}\n\n\t\t\tconst options = []\n\t\t\tif (isUrl(this.searchQuery)) {\n\t\t\t\toptions.push(this.rawLinkEntry)\n\t\t\t}\n\t\t\toptions.push(...this.formattedSearchResults)\n\t\t\treturn options\n\t\t},\n\t\trawLinkEntry() {\n\t\t\treturn {\n\t\t\t\tid: 'rawLinkEntry',\n\t\t\t\tresourceUrl: this.searchQuery,\n\t\t\t\tisRawLink: true,\n\t\t\t}\n\t\t},\n\t\tformattedSearchResults() {\n\t\t\tconst results = []\n\t\t\tthis.searchProviderIds.forEach(pid => {\n\t\t\t\tif (this.resultsBySearchProvider[pid].entries.length > 0) {\n\t\t\t\t\t// don't show group name entry if there is only one search provider and one result\n\t\t\t\t\tif (this.searchProviderIds.length > 1 || this.resultsBySearchProvider[pid].entries.length > 1) {\n\t\t\t\t\t\tresults.push({\n\t\t\t\t\t\t\tid: 'groupTitle-' + pid,\n\t\t\t\t\t\t\tname: this.resultsBySearchProvider[pid].name,\n\t\t\t\t\t\t\tisCustomGroupTitle: true,\n\t\t\t\t\t\t\tproviderId: pid,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t\tconst providerEntriesWithId = this.resultsBySearchProvider[pid].entries.map((entry, index) => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tid: 'provider-' + pid + '-entry-' + index,\n\t\t\t\t\t\t\t...entry,\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t\tresults.push(...providerEntriesWithId)\n\t\t\t\t\tif (this.resultsBySearchProvider[pid].isPaginated) {\n\t\t\t\t\t\tresults.push({\n\t\t\t\t\t\t\tid: 'moreOf-' + pid,\n\t\t\t\t\t\t\tname: this.resultsBySearchProvider[pid].name,\n\t\t\t\t\t\t\tisMore: true,\n\t\t\t\t\t\t\tproviderId: pid,\n\t\t\t\t\t\t\tisLoading: this.searchingMoreOf === pid,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn results\n\t\t},\n\t},\n\tmounted() {\n\t\tthis.resetResults()\n\t},\n\tbeforeDestroy() {\n\t\tthis.cancelSearchRequests()\n\t},\n\tmethods: {\n\t\tt,\n\t\tresetResults() {\n\t\t\tconst resultsBySearchProvider = {}\n\t\t\tthis.searchProviderIds.forEach(pid => {\n\t\t\t\tresultsBySearchProvider[pid] = {\n\t\t\t\t\tentries: [],\n\t\t\t\t}\n\t\t\t})\n\t\t\tthis.resultsBySearchProvider = resultsBySearchProvider\n\t\t},\n\t\tfocus() {\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.$refs['search-select']?.$el?.querySelector('#search-select-input')?.focus()\n\t\t\t}, 300)\n\t\t},\n\t\tcancelSearchRequests() {\n\t\t\tif (this.abortController) {\n\t\t\t\tthis.abortController.abort()\n\t\t\t}\n\t\t},\n\t\tonSearchInput(query, loading) {\n\t\t\tthis.searchQuery = query\n\t\t\tdelay(() => {\n\t\t\t\tthis.updateSearch()\n\t\t\t}, 500)()\n\t\t},\n\t\tonSelectResultSelected(item) {\n\t\t\tif (item !== null) {\n\t\t\t\tif (item.resourceUrl) {\n\t\t\t\t\tthis.cancelSearchRequests()\n\t\t\t\t\tthis.$emit('submit', item.resourceUrl)\n\t\t\t\t} else if (item.isMore) {\n\t\t\t\t\tthis.searchMoreOf(item.providerId).then(() => {\n\t\t\t\t\t\t// allow clicking twice on the same \"more\" item\n\t\t\t\t\t\tthis.selectedResult = null\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tsearchMoreOf(searchProviderId) {\n\t\t\tthis.searchingMoreOf = searchProviderId\n\t\t\tthis.cancelSearchRequests()\n\t\t\treturn this.searchProviders(searchProviderId)\n\t\t},\n\t\tupdateSearch() {\n\t\t\tthis.cancelSearchRequests()\n\t\t\tthis.resetResults()\n\t\t\tif (this.searchQuery === '') {\n\t\t\t\tthis.searching = false\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\treturn this.searchProviders()\n\t\t},\n\t\tsearchProviders(searchProviderId = null) {\n\t\t\tthis.abortController = new AbortController()\n\t\t\tthis.searching = true\n\n\t\t\tconst searchPromises = searchProviderId === null\n\t\t\t\t? [...this.searchProviderIds].map(pid => {\n\t\t\t\t\treturn this.searchOneProvider(pid)\n\t\t\t\t})\n\t\t\t\t: [this.searchOneProvider(searchProviderId, this.resultsBySearchProvider[searchProviderId]?.cursor ?? null)]\n\t\t\t// fake one to have a request error\n\t\t\t// searchPromises.push(this.searchOneProvider('nopid'))\n\n\t\t\treturn Promise.allSettled(searchPromises)\n\t\t\t\t.then((promises) => {\n\t\t\t\t\tconst isOneCanceled = !!promises.find(p => {\n\t\t\t\t\t\treturn p.status === 'rejected' && (p.reason.name === 'CanceledError' || p.reason.code === 'ERR_CANCELED')\n\t\t\t\t\t})\n\t\t\t\t\t// nothing was canceled: not searching\n\t\t\t\t\tif (!isOneCanceled) {\n\t\t\t\t\t\tthis.searching = false\n\t\t\t\t\t\tthis.searchingMoreOf = null\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t},\n\t\tsearchOneProvider(providerId, cursor = null) {\n\t\t\tconst url = cursor === null\n\t\t\t\t? generateOcsUrl('search/providers/{providerId}/search?term={term}&limit={limit}', { providerId, term: this.searchQuery, limit: LIMIT })\n\t\t\t\t: generateOcsUrl('search/providers/{providerId}/search?term={term}&limit={limit}&cursor={cursor}', { providerId, term: this.searchQuery, limit: LIMIT, cursor })\n\t\t\treturn axios.get(url, {\n\t\t\t\tsignal: this.abortController.signal,\n\t\t\t})\n\t\t\t\t.then((response) => {\n\t\t\t\t\tconst data = response.data.ocs.data\n\t\t\t\t\tthis.resultsBySearchProvider[providerId].name = data.name\n\t\t\t\t\tthis.resultsBySearchProvider[providerId].cursor = data.cursor\n\t\t\t\t\tthis.resultsBySearchProvider[providerId].isPaginated = data.isPaginated\n\t\t\t\t\tthis.resultsBySearchProvider[providerId].entries.push(...data.entries)\n\t\t\t\t})\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.smart-picker-search {\n\twidth: 100%;\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 0 16px 16px 16px;\n\t&.with-empty-content {\n\t\tmin-height: 400px;\n\t}\n\n\t.provider-icon {\n\t\twidth: 150px;\n\t\theight: 150px;\n\t\tobject-fit: contain;\n\t\tfilter: var(--background-invert-if-dark);\n\t}\n\n\t&--select {\n\t\twidth: 100%;\n\n\t\t.search-result {\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t.group-name-icon,\n\t\t.option-simple-icon {\n\t\t\twidth: 20px;\n\t\t\theight: 20px;\n\t\t\tmargin: 0 20px 0 10px;\n\t\t}\n\n\t\t.custom-option {\n\t\t\theight: 44px;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\toverflow: hidden;\n\t\t}\n\n\t\t.option-text {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n}\n</style>\n","<template>\n\t<div class=\"reference-picker\"\n\t\t:style=\"pickerWrapperStyle\"\n\t\ttabindex=\"-1\"\n\t\t@keydown.stop.prevent.esc=\"onEscapePressed\">\n\t\t<NcProviderList v-if=\"mode === MODES.providerList\"\n\t\t\tref=\"provider-list\"\n\t\t\t@select-provider=\"onProviderSelected\"\n\t\t\t@submit=\"submitLink\"\n\t\t\t@cancel=\"cancelProviderSelection\" />\n\t\t<NcRawLinkInput v-else-if=\"mode === MODES.standardLinkInput\"\n\t\t\tref=\"url-input\"\n\t\t\t:provider=\"selectedProvider\"\n\t\t\t@submit=\"submitLink\"\n\t\t\t@cancel=\"cancelRawLinkInput\" />\n\t\t<NcSearch v-else-if=\"mode === MODES.searchInput\"\n\t\t\tref=\"url-input\"\n\t\t\t:provider=\"selectedProvider\"\n\t\t\t@cancel=\"cancelSearch\"\n\t\t\t@submit=\"submitLink\" />\n\t\t<div v-else-if=\"mode === MODES.customElement\"\n\t\t\tclass=\"custom-element-wrapper\">\n\t\t\t<NcCustomPickerElement :provider=\"selectedProvider\"\n\t\t\t\t@submit=\"submitLink\"\n\t\t\t\t@cancel=\"cancelCustomElement\" />\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport NcCustomPickerElement from './NcCustomPickerElement.vue'\nimport NcProviderList from './NcProviderList.vue'\nimport NcRawLinkInput from './NcRawLinkInput.vue'\nimport NcSearch from './NcSearch.vue'\nimport { isCustomPickerElementRegistered } from './customPickerElements.js'\nimport { touchProvider } from './providerHelper.js'\n\nconst MODES = {\n\tproviderList: 1,\n\tstandardLinkInput: 2,\n\tsearchInput: 3,\n\tcustomElement: 4,\n}\nexport default {\n\tname: 'NcReferencePicker',\n\tcomponents: {\n\t\tNcCustomPickerElement,\n\t\tNcProviderList,\n\t\tNcRawLinkInput,\n\t\tNcSearch,\n\t},\n\tprops: {\n\t\t/**\n\t\t * Provider to select on creation\n\t\t * Default: null. Show the provider list\n\t\t */\n\t\tinitialProvider: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => null,\n\t\t},\n\t\t/**\n\t\t * Optional width in pixels\n\t\t * Default: 100%\n\t\t */\n\t\twidth: {\n\t\t\ttype: Number,\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * Focus on the provider list select input on creation\n\t\t * Default: true\n\t\t */\n\t\tfocusOnCreate: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t},\n\temits: [\n\t\t'cancel',\n\t\t'cancel-raw-link',\n\t\t'cancel-search',\n\t\t'provider-selected',\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tMODES,\n\t\t\tselectedProvider: this.initialProvider,\n\t\t}\n\t},\n\tcomputed: {\n\t\tmode() {\n\t\t\treturn this.selectedProvider === null\n\t\t\t\t? MODES.providerList\n\t\t\t\t: isCustomPickerElementRegistered(this.selectedProvider.id)\n\t\t\t\t\t? MODES.customElement\n\t\t\t\t\t: this.selectedProvider.search_providers_ids\n\t\t\t\t\t\t? MODES.searchInput\n\t\t\t\t\t\t: MODES.standardLinkInput\n\t\t},\n\t\tpickerWrapperStyle() {\n\t\t\treturn {\n\t\t\t\twidth: this.width ? this.width + 'px' : undefined,\n\t\t\t}\n\t\t},\n\t},\n\tmounted() {\n\t\tif (this.focusOnCreate) {\n\t\t\tif (this.initialProvider) {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.$refs['url-input']?.focus()\n\t\t\t\t}, 300)\n\t\t\t} else {\n\t\t\t\tthis.$nextTick(() => {\n\t\t\t\t\tthis.$refs['provider-list']?.focus()\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t},\n\tmethods: {\n\t\tonEscapePressed() {\n\t\t\tif (this.selectedProvider !== null) {\n\t\t\t\tthis.deselectProvider()\n\t\t\t} else {\n\t\t\t\tthis.cancelProviderSelection()\n\t\t\t}\n\t\t},\n\t\tonProviderSelected(provider) {\n\t\t\tthis.selectedProvider = provider\n\t\t\tthis.$emit('provider-selected', provider)\n\t\t\tthis.$nextTick(() => {\n\t\t\t\tthis.$refs['url-input']?.focus()\n\t\t\t})\n\t\t},\n\t\tcancelCustomElement() {\n\t\t\tthis.deselectProvider()\n\t\t},\n\t\tcancelSearch() {\n\t\t\tthis.$emit('cancel-search', this.selectedProvider?.title)\n\t\t\tthis.deselectProvider()\n\t\t},\n\t\tcancelRawLinkInput() {\n\t\t\tthis.$emit('cancel-raw-link', this.selectedProvider?.title)\n\t\t\tthis.deselectProvider()\n\t\t},\n\t\tcancelProviderSelection() {\n\t\t\tthis.$emit('cancel')\n\t\t},\n\t\tsubmitLink(link) {\n\t\t\tif (this.selectedProvider !== null) {\n\t\t\t\ttouchProvider(this.selectedProvider.id)\n\t\t\t}\n\t\t\tthis.$emit('submit', link)\n\t\t\tthis.deselectProvider()\n\t\t},\n\t\tdeselectProvider() {\n\t\t\tthis.selectedProvider = null\n\t\t\tthis.$emit('provider-selected', null)\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.$refs['provider-list']?.focus()\n\t\t\t}, 300)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.reference-picker {\n\tdisplay: flex;\n\toverflow-y: auto;\n\twidth: 100%;\n\n\t.custom-element-wrapper {\n\t\tdisplay: flex;\n\t\toverflow-y: auto;\n\t\twidth: 100%;\n\t}\n}\n</style>\n","<template>\n\t<NcModal v-if=\"show\"\n\t\t:size=\"modalSize\"\n\t\t:can-close=\"false\"\n\t\tclass=\"reference-picker-modal\"\n\t\t@close=\"onCancel\">\n\t\t<div ref=\"modal_content\"\n\t\t\tclass=\"reference-picker-modal--content\">\n\t\t\t<NcButton v-if=\"showBackButton\"\n\t\t\t\t:aria-label=\"backButtonTitle\"\n\t\t\t\t:title=\"backButtonTitle\"\n\t\t\t\tclass=\"back-button\"\n\t\t\t\t@click=\"onBackClicked\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<ArrowLeftIcon />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t\t<NcButton :aria-label=\"closeButtonLabel\"\n\t\t\t\t:title=\"closeButtonTitle\"\n\t\t\t\ttype=\"tertiary\"\n\t\t\t\tclass=\"close-button\"\n\t\t\t\t@click=\"onCancel\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CloseIcon />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t\t<h2 v-if=\"showModalName\">\n\t\t\t\t{{ modalName }}\n\t\t\t</h2>\n\t\t\t<NcReferencePicker ref=\"referencePicker\"\n\t\t\t\t:initial-provider=\"initialProvider\"\n\t\t\t\t:focus-on-create=\"focusOnCreate\"\n\t\t\t\t@provider-selected=\"onProviderSelect\"\n\t\t\t\t@submit=\"onSubmit\"\n\t\t\t\t@cancel=\"onCancel\" />\n\t\t</div>\n\t</NcModal>\n</template>\n\n<script>\nimport NcReferencePicker from './NcReferencePicker.vue'\nimport { getCustomPickerElementSize, isCustomPickerElementRegistered } from './customPickerElements.js'\nimport NcButton from '../../NcButton/index.js'\nimport NcModal from '../../NcModal/index.js'\nimport { t } from '../../../l10n.js'\n\nimport { emit } from '@nextcloud/event-bus'\n\nimport ArrowLeftIcon from 'vue-material-design-icons/ArrowLeft.vue'\nimport CloseIcon from 'vue-material-design-icons/Close.vue'\n\nexport default {\n\tname: 'NcReferencePickerModal',\n\tcomponents: {\n\t\tNcReferencePicker,\n\t\tNcModal,\n\t\tNcButton,\n\t\tArrowLeftIcon,\n\t\tCloseIcon,\n\t},\n\tprops: {\n\t\t/**\n\t\t * Provider to select on creation\n\t\t * Show the provider list if no initial one is provided\n\t\t */\n\t\tinitialProvider: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => null,\n\t\t},\n\t\t/**\n\t\t * Focus on the input item on create\n\t\t */\n\t\tfocusOnCreate: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\t/**\n\t\t * If true, add the modal content to the Viewer trap elements via the event-bus\n\t\t */\n\t\tisInsideViewer: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\temits: [\n\t\t'cancel',\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tshow: true,\n\t\t\tselectedProvider: this.initialProvider,\n\t\t\tbackButtonTitle: t('Back to provider selection'),\n\t\t\tcloseButtonTitle: t('Close'),\n\t\t\tcloseButtonLabel: t('Close Smart Picker'),\n\t\t}\n\t},\n\tcomputed: {\n\t\tisProviderSelected() {\n\t\t\treturn this.selectedProvider !== null\n\t\t},\n\t\tshowBackButton() {\n\t\t\treturn this.initialProvider === null && this.isProviderSelected\n\t\t},\n\t\tmodalSize() {\n\t\t\treturn this.isProviderSelected && isCustomPickerElementRegistered(this.selectedProvider.id)\n\t\t\t\t? (getCustomPickerElementSize(this.selectedProvider.id) ?? 'large')\n\t\t\t\t: 'normal'\n\t\t},\n\t\tshowModalName() {\n\t\t\treturn !this.isProviderSelected || !isCustomPickerElementRegistered(this.selectedProvider.id)\n\t\t},\n\t\tmodalName() {\n\t\t\treturn this.isProviderSelected\n\t\t\t\t? this.selectedProvider.title\n\t\t\t\t: t('Smart Picker')\n\t\t},\n\t},\n\tmounted() {\n\t\tif (this.isInsideViewer) {\n\t\t\tconst elem = this.$refs.modal_content\n\t\t\temit('viewer:trapElements:changed', elem)\n\t\t}\n\t},\n\tmethods: {\n\t\tonCancel() {\n\t\t\tthis.show = false\n\t\t\tthis.$emit('cancel')\n\t\t},\n\t\tonSubmit(value) {\n\t\t\tthis.show = false\n\t\t\tthis.$emit('submit', value)\n\t\t},\n\t\tonProviderSelect(provider) {\n\t\t\tthis.selectedProvider = provider\n\t\t\t// provider was deselected and we started with an inital one: just close the modal\n\t\t\tif (provider === null && this.initialProvider !== null) {\n\t\t\t\tthis.onCancel()\n\t\t\t}\n\t\t},\n\t\tonBackClicked() {\n\t\t\tthis.$refs.referencePicker.deselectProvider()\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\">\n// this is to avoid scroll on the container and leave it to the result block\n.reference-picker-modal .modal-container {\n\tdisplay: flex !important;\n}\n</style>\n\n<style lang=\"scss\" scoped>\n.reference-picker-modal--content {\n\twidth: 100%;\n\tdisplay: flex;\n\tflex-direction: column;\n\talign-items: center;\n\tjustify-content: center;\n\toverflow-y: auto;\n\n\t.close-button,\n\t.back-button {\n\t\tposition: absolute;\n\t\ttop: 4px;\n\t}\n\t.back-button {\n\t\tleft: 4px;\n\t}\n\t.close-button {\n\t\tright: 4px;\n\t}\n\n\t> h2 {\n\t\tdisplay: flex;\n\t\tmargin: 12px 0 20px 0;\n\t\t.icon {\n\t\t\tmargin-right: 8px;\n\t\t}\n\t}\n}\n</style>\n","import NcReferencePickerModal from './NcReferencePickerModal.vue'\nimport { getProvider } from './providerHelper.js'\n\nimport Vue from 'vue'\n\n/**\n * Creates a reference picker modal and return a promise which provides the result\n *\n * @param {string} providerId Optional ID of initial selected provider\n * @param {boolean} isInsideViewer Should be true if this function is called while the Viewer is displayed\n * @return {Promise<unknown>}\n */\nexport async function getLinkWithPicker(providerId = null, isInsideViewer = undefined) {\n\treturn await new Promise((resolve, reject) => {\n\t\tconst modalId = 'referencePickerModal'\n\t\tconst modalElement = document.createElement('div')\n\t\tmodalElement.id = modalId\n\t\tdocument.body.append(modalElement)\n\n\t\tconst initialProvider = providerId === null\n\t\t\t? null\n\t\t\t: (getProvider(providerId) ?? null)\n\n\t\tconst View = Vue.extend(NcReferencePickerModal)\n\t\tconst view = new View({\n\t\t\tpropsData: {\n\t\t\t\tinitialProvider,\n\t\t\t\tisInsideViewer,\n\t\t\t},\n\t\t}).$mount(modalElement)\n\n\t\tview.$on('cancel', () => {\n\t\t\tview.$destroy()\n\t\t\treject(new Error('User cancellation'))\n\t\t})\n\t\tview.$on('submit', (link) => {\n\t\t\tview.$destroy()\n\t\t\tresolve(link)\n\t\t})\n\t})\n}\n"],"names":["isWidgetRegistered","id","registerWidget","callback","onDestroy","el","renderWidget","richObjectType","richObject","accessible","destroyWidget","_sfc_main$8","lineClamp","link","entries","_a","NcCustomPickerRenderResult","element","object","isCustomPickerElementRegistered","getCustomPickerElementSize","size","registerCustomPickerElement","renderCustomPickerElement","providerId","destroyCustomPickerElement","renderResult","_sfc_main$7","renderFunctionResult","result","_b","e","value","anyLinkProviderId","anyLinkProvider","l10n","router","initialState","getProvider","getProviders","p","keep","sortProviders","providerList","timestamps","a","b","ta","tb","searchProvider","query","limit","providers","escapedQuery","regexp","filteredSortedProviders","searchResult","touchProvider","timestamp","params","url","axios__default","response","mytimer","delay","ms","context","args","isUrl","str","_sfc_main$6","_sfc_main$5","Components_NcSelect","Components_NcHighlight","Components_NcEmptyContent","LinkVariantIcon","_c","loading","_sfc_main$4","Components_NcLoadingIcon","NcReferenceWidget","Components_NcTextField","error","_sfc_main$3","LIMIT","_sfc_main$2","DotsHorizontal","NcSearchResult","options","results","pid","providerEntriesWithId","entry","index","resultsBySearchProvider","item","searchProviderId","searchPromises","promises","cursor","data","MODES","_sfc_main$1","NcCustomPickerElement","NcProviderList","NcRawLinkInput","NcSearch","provider","_sfc_main","NcReferencePicker","Components_NcModal","Components_NcButton","ArrowLeft","Close","elem","eventBus","getLinkWithPicker","isInsideViewer","resolve","reject","modalId","modalElement","initialProvider","View","Vue__default","NcReferencePickerModal","view"],"mappings":"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","x_google_ignoreList":[6]}
|
package/dist/index.cjs
CHANGED
|
@@ -1,19 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const r = require("./Components/NcActionButton.cjs"), N = require("./Components/NcActionButtonGroup.cjs"), s = require("./Components/NcActionCaption.cjs"), p = require("./Components/NcActionCheckbox.cjs"), a = require("./Components/NcActionInput.cjs"), u = require("./Components/NcActionLink.cjs"), m = require("./Components/NcActionRadio.cjs"), C = require("./Components/NcActionRouter.cjs"), l = require("./Components/NcActions.cjs"), A = require("./Components/NcActionSeparator.cjs"), g = require("./Components/NcActionText.cjs"), d = require("./Components/NcActionTextEditable.cjs"), q = require("./Components/NcAppContent.cjs"), _ = require("./Components/NcAppContentDetails.cjs"), S = require("./Components/NcAppContentList.cjs"), b = require("./Components/NcAppNavigation.cjs"), v = require("./Components/NcAppNavigationCaption.cjs"), T = require("./Components/NcAppNavigationIconBullet.cjs"), h = require("./Components/NcAppNavigationItem.cjs"), I = require("./Components/NcAppNavigationNew.cjs"), B = require("./Components/NcAppNavigationNewItem.cjs"), P = require("./Components/NcAppNavigationSettings.cjs"), k = require("./Components/NcAppNavigationSpacer.cjs"), x = require("./Components/NcAppSettingsDialog.cjs"), D = require("./Components/NcAppSettingsSection.cjs"), R = require("./Components/NcAppSidebar.cjs"), y = require("./Components/NcAppSidebarTab.cjs"), n = require("./chunks/index-
|
|
4
|
-
require("./chunks/referencePickerModal-
|
|
3
|
+
const r = require("./Components/NcActionButton.cjs"), N = require("./Components/NcActionButtonGroup.cjs"), s = require("./Components/NcActionCaption.cjs"), p = require("./Components/NcActionCheckbox.cjs"), a = require("./Components/NcActionInput.cjs"), u = require("./Components/NcActionLink.cjs"), m = require("./Components/NcActionRadio.cjs"), C = require("./Components/NcActionRouter.cjs"), l = require("./Components/NcActions.cjs"), A = require("./Components/NcActionSeparator.cjs"), g = require("./Components/NcActionText.cjs"), d = require("./Components/NcActionTextEditable.cjs"), q = require("./Components/NcAppContent.cjs"), _ = require("./Components/NcAppContentDetails.cjs"), S = require("./Components/NcAppContentList.cjs"), b = require("./Components/NcAppNavigation.cjs"), v = require("./Components/NcAppNavigationCaption.cjs"), T = require("./Components/NcAppNavigationIconBullet.cjs"), h = require("./Components/NcAppNavigationItem.cjs"), I = require("./Components/NcAppNavigationNew.cjs"), B = require("./Components/NcAppNavigationNewItem.cjs"), P = require("./Components/NcAppNavigationSettings.cjs"), k = require("./Components/NcAppNavigationSpacer.cjs"), x = require("./Components/NcAppSettingsDialog.cjs"), D = require("./Components/NcAppSettingsSection.cjs"), R = require("./Components/NcAppSidebar.cjs"), y = require("./Components/NcAppSidebarTab.cjs"), n = require("./chunks/index-e06b96d3.cjs"), M = require("./Components/NcBreadcrumb.cjs"), L = require("./Components/NcBreadcrumbs.cjs"), f = require("./Components/NcButton.cjs"), j = require("./Components/NcCheckboxRadioSwitch.cjs"), E = require("./Components/NcColorPicker.cjs"), w = require("./Components/NcContent.cjs"), F = require("./Components/NcCounterBubble.cjs"), O = require("./Components/NcDashboardWidget.cjs"), G = require("./Components/NcDashboardWidgetItem.cjs"), W = require("./Components/NcDateTime.cjs"), H = require("./Components/NcDateTimePicker.cjs"), z = require("./Components/NcDateTimePickerNative.cjs"), V = require("./Components/NcDialog.cjs"), U = require("./Components/NcDialogButton.cjs"), J = require("./Components/NcEmojiPicker.cjs"), K = require("./Components/NcEmptyContent.cjs"), Q = require("./Components/NcGuestContent.cjs"), X = require("./Components/NcHeaderMenu.cjs"), Y = require("./chunks/index-e894376a.cjs"), Z = require("./Components/NcIconSvgWrapper.cjs"), $ = require("./Components/NcListItem.cjs"), ee = require("./Components/NcListItemIcon.cjs"), te = require("./Components/NcLoadingIcon.cjs"), oe = require("./Components/NcModal.cjs"), ce = require("./Components/NcNoteCard.cjs"), ne = require("./Components/NcPasswordField.cjs"), ie = require("./Components/NcPopover.cjs"), re = require("./Components/NcProgressBar.cjs"), Ne = require("./Components/NcRelatedResourcesPanel.cjs"), i = require("./chunks/index-4398f925.cjs"), o = require("./Components/NcRichContenteditable.cjs"), se = require("./chunks/NcRichText-ae95c854.cjs");
|
|
4
|
+
require("./chunks/referencePickerModal-e033bf2c.cjs");
|
|
5
5
|
require("@nextcloud/axios");
|
|
6
6
|
require("@nextcloud/router");
|
|
7
7
|
const pe = require("./Components/NcSelect.cjs");
|
|
8
|
-
require("./chunks/l10n-
|
|
9
|
-
require("vue-material-design-icons/LinkVariant.vue");
|
|
8
|
+
require("./chunks/l10n-f491109d.cjs");
|
|
10
9
|
const ae = require("./Components/NcTextField.cjs");
|
|
11
|
-
require("vue-material-design-icons/DotsHorizontal.vue");
|
|
12
10
|
require("@nextcloud/event-bus");
|
|
13
|
-
require("vue-material-design-icons/ArrowLeft.vue");
|
|
14
|
-
require("vue-material-design-icons/Close.vue");
|
|
15
11
|
require("vue");
|
|
16
|
-
const ue = require("./Components/NcSavingIndicatorIcon.cjs"), me = require("./Components/NcSelectTags.cjs"), Ce = require("./Components/NcSettingsInputText.cjs"), le = require("./Components/NcSettingsSection.cjs"), Ae = require("./chunks/NcSettingsSelectGroup-
|
|
12
|
+
const ue = require("./Components/NcSavingIndicatorIcon.cjs"), me = require("./Components/NcSelectTags.cjs"), Ce = require("./Components/NcSettingsInputText.cjs"), le = require("./Components/NcSettingsSection.cjs"), Ae = require("./chunks/NcSettingsSelectGroup-e8f9f9fe.cjs"), ge = require("./Components/NcTimezonePicker.cjs"), de = require("./Components/NcUserBubble.cjs"), qe = require("./Components/NcTextArea.cjs"), _e = require("./Functions/emoji.cjs"), Te = require("./Functions/usernameToColor.cjs"), Se = require("./Directives/Focus.cjs"), be = require("./Directives/Linkify.cjs");
|
|
17
13
|
require("./Directives/Tooltip.cjs");
|
|
18
14
|
const he = require("./Mixins/clickOutsideOptions.cjs"), Ie = require("./Mixins/isFullscreen.cjs"), Be = require("./Mixins/isMobile.cjs"), ve = require("floating-vue");
|
|
19
15
|
/**
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/components/index.js","../src/functions/a11y/index.ts","../src/directives/index.js","../src/plugin.ts"],"sourcesContent":["/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport { default as NcActionButton } from './NcActionButton/index.js'\nexport { default as NcActionButtonGroup } from './NcActionButtonGroup/index.js'\nexport { default as NcActionCaption } from './NcActionCaption/index.js'\nexport { default as NcActionCheckbox } from './NcActionCheckbox/index.js'\nexport { default as NcActionInput } from './NcActionInput/index.js'\nexport { default as NcActionLink } from './NcActionLink/index.js'\nexport { default as NcActionRadio } from './NcActionRadio/index.js'\nexport { default as NcActionRouter } from './NcActionRouter/index.js'\nexport { default as NcActions } from './NcActions/index.js'\nexport { default as NcActionSeparator } from './NcActionSeparator/index.js'\nexport { default as NcActionText } from './NcActionText/index.js'\nexport { default as NcActionTextEditable } from './NcActionTextEditable/index.js'\nexport { default as NcAppContent } from './NcAppContent/index.js'\nexport { default as NcAppContentDetails } from './NcAppContentDetails/index.js'\nexport { default as NcAppContentList } from './NcAppContentList/index.js'\nexport { default as NcAppNavigation } from './NcAppNavigation/index.js'\nexport { default as NcAppNavigationCaption } from './NcAppNavigationCaption/index.js'\nexport { default as NcAppNavigationIconBullet } from './NcAppNavigationIconBullet/index.js'\nexport { default as NcAppNavigationItem } from './NcAppNavigationItem/index.js'\nexport { default as NcAppNavigationNew } from './NcAppNavigationNew/index.js'\nexport { default as NcAppNavigationNewItem } from './NcAppNavigationNewItem/index.js'\nexport { default as NcAppNavigationSettings } from './NcAppNavigationSettings/index.js'\nexport { default as NcAppNavigationSpacer } from './NcAppNavigationSpacer/index.js'\nexport { default as NcAppSettingsDialog } from './NcAppSettingsDialog/index.js'\nexport { default as NcAppSettingsSection } from './NcAppSettingsSection/index.js'\nexport { default as NcAppSidebar } from './NcAppSidebar/index.js'\nexport { default as NcAppSidebarTab } from './NcAppSidebarTab/index.js'\nexport { default as NcAvatar } from './NcAvatar/index.js'\nexport { default as NcBreadcrumb } from './NcBreadcrumb/index.js'\nexport { default as NcBreadcrumbs } from './NcBreadcrumbs/index.js'\nexport { default as NcButton } from './NcButton/index.js'\nexport { default as NcCheckboxRadioSwitch } from './NcCheckboxRadioSwitch/index.js'\nexport { default as NcColorPicker } from './NcColorPicker/index.js'\nexport { default as NcContent } from './NcContent/index.js'\nexport { default as NcCounterBubble } from './NcCounterBubble/index.js'\nexport { default as NcDashboardWidget } from './NcDashboardWidget/index.js'\nexport { default as NcDashboardWidgetItem } from './NcDashboardWidgetItem/index.js'\nexport { default as NcDateTime } from './NcDateTime/index.js'\nexport { default as NcDateTimePicker } from './NcDateTimePicker/index.js'\nexport { default as NcDateTimePickerNative } from './NcDateTimePickerNative/index.js'\nexport { default as NcDialog } from './NcDialog/index.js'\nexport { default as NcDialogButton } from './NcDialogButton/index.js'\n// Not exported on purpose\n// export { default as NcEllipsisedOption } from './NcEllipsisedOption/index.js'\nexport { default as NcEmojiPicker } from './NcEmojiPicker/index.js'\nexport { default as NcEmptyContent } from './NcEmptyContent/index.js'\nexport { default as NcGuestContent } from './NcGuestContent/index.js'\nexport { default as NcHeaderMenu } from './NcHeaderMenu/index.js'\nexport { default as NcHighlight } from './NcHighlight/index.js'\nexport { default as NcIconSvgWrapper } from './NcIconSvgWrapper/index.js'\n// Not exported on purpose as it is only meant as a base component\n// export { default as NcInputField } from './NcInputField/index.js'\nexport { default as NcListItem } from './NcListItem/index.js'\nexport { default as NcListItemIcon } from './NcListItemIcon/index.js'\nexport { default as NcLoadingIcon } from './NcLoadingIcon/index.js'\nexport { default as NcModal } from './NcModal/index.js'\nexport { default as NcNoteCard } from './NcNoteCard/index.js'\nexport { default as NcPasswordField } from './NcPasswordField/index.js'\nexport { default as NcPopover } from './NcPopover/index.js'\nexport { default as NcProgressBar } from './NcProgressBar/index.js'\nexport { default as NcRelatedResourcesPanel } from './NcRelatedResourcesPanel/index.js'\nexport { default as NcRichContenteditable, NcAutoCompleteResult, NcMentionBubble } from './NcRichContenteditable/index.js'\nexport { default as NcRichText } from './NcRichText/index.js'\nexport { default as NcSavingIndicatorIcon } from './NcSavingIndicatorIcon/index.js'\nexport { default as NcSelect } from './NcSelect/index.js'\nexport { default as NcSelectTags } from './NcSelectTags/index.js'\nexport { default as NcSettingsInputText } from './NcSettingsInputText/index.js'\nexport { default as NcSettingsSection } from './NcSettingsSection/index.js'\nexport { default as NcSettingsSelectGroup } from './NcSettingsSelectGroup/index.js'\nexport { default as NcTextField } from './NcTextField/index.js'\nexport { default as NcTimezonePicker } from './NcTimezonePicker/index.js'\nexport { default as NcUserBubble } from './NcUserBubble/index.js'\nexport { default as NcTextArea } from './NcTextArea/index.js'\n","/**\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/**\n * Return true if the DOM event is an accessible mouse or keyboard element activation, false otherwise\n *\n * @param {Event} event DOM event\n *\n * @return {boolean}\n */\nexport const isA11yActivation = (event: Event) => {\n\tif (event.type === 'click') {\n\t\treturn true\n\t}\n\tif (event.type === 'keydown' && (event as KeyboardEvent).key === 'Enter') {\n\t\treturn true\n\t}\n\treturn false\n}\n","/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport { default as Focus } from './Focus/index.js'\nexport { default as Linkify } from './Linkify/index.js'\nexport { default as Tooltip } from './Tooltip/index.js'\n","import type { DefineComponent, Directive, PluginObject } from 'vue'\n\nimport * as NcComponents from './components/index.js'\nimport * as NcDirectives from './directives/index.js'\n\n/**\n * Install all Nextcloud Vue components and directives globally\n * @example\n * ```js\n * import { NextcloudVuePlugin } from '@nextcloud/vue'\n * import Vue from 'vue'\n *\n * // ...\n *\n * Vue.use(NextcloudVuePlugin)\n * new Vue({\n * // options\n * })\n * ```\n */\nexport const NextcloudVuePlugin: PluginObject<never> = {\n\tinstall(Vue) {\n\t\t// Install components\n\t\tObject.entries(NcComponents as { [key: string]: DefineComponent }).forEach(([name, component]) => {\n\t\t\tVue.component(component.name || name, component)\n\t\t})\n\n\t\t// Install directives\n\t\tObject.entries(NcDirectives as { [key: string]: Directive }).forEach(([name, directive]) => {\n\t\t\tVue.directive(name, directive)\n\t\t})\n\t},\n}\n"],"names":["isA11yActivation","event","NextcloudVuePlugin","Vue","NcComponents","name","component","NcDirectives","directive"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA6Ba,MAAAA,KAAmB,CAACC,MAC5BA,EAAM,SAAS,WAGfA,EAAM,SAAS,aAAcA,EAAwB,QAAQ;ACjClE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;8CCoBaC,KAA0C;AAAA,EACtD,QAAQC,GAAK;AAEL,WAAA,QAAQC,EAAkD,EAAE,QAAQ,CAAC,CAACC,GAAMC,CAAS,MAAM;AACjG,MAAAH,EAAI,UAAUG,EAAU,QAAQD,GAAMC,CAAS;AAAA,IAAA,CAC/C,GAGM,OAAA,QAAQC,EAA4C,EAAE,QAAQ,CAAC,CAACF,GAAMG,CAAS,MAAM;AACvF,MAAAL,EAAA,UAAUE,GAAMG,CAAS;AAAA,IAAA,CAC7B;AAAA,EACF;AACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/components/index.js","../src/functions/a11y/index.ts","../src/directives/index.js","../src/plugin.ts"],"sourcesContent":["/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport { default as NcActionButton } from './NcActionButton/index.js'\nexport { default as NcActionButtonGroup } from './NcActionButtonGroup/index.js'\nexport { default as NcActionCaption } from './NcActionCaption/index.js'\nexport { default as NcActionCheckbox } from './NcActionCheckbox/index.js'\nexport { default as NcActionInput } from './NcActionInput/index.js'\nexport { default as NcActionLink } from './NcActionLink/index.js'\nexport { default as NcActionRadio } from './NcActionRadio/index.js'\nexport { default as NcActionRouter } from './NcActionRouter/index.js'\nexport { default as NcActions } from './NcActions/index.js'\nexport { default as NcActionSeparator } from './NcActionSeparator/index.js'\nexport { default as NcActionText } from './NcActionText/index.js'\nexport { default as NcActionTextEditable } from './NcActionTextEditable/index.js'\nexport { default as NcAppContent } from './NcAppContent/index.js'\nexport { default as NcAppContentDetails } from './NcAppContentDetails/index.js'\nexport { default as NcAppContentList } from './NcAppContentList/index.js'\nexport { default as NcAppNavigation } from './NcAppNavigation/index.js'\nexport { default as NcAppNavigationCaption } from './NcAppNavigationCaption/index.js'\nexport { default as NcAppNavigationIconBullet } from './NcAppNavigationIconBullet/index.js'\nexport { default as NcAppNavigationItem } from './NcAppNavigationItem/index.js'\nexport { default as NcAppNavigationNew } from './NcAppNavigationNew/index.js'\nexport { default as NcAppNavigationNewItem } from './NcAppNavigationNewItem/index.js'\nexport { default as NcAppNavigationSettings } from './NcAppNavigationSettings/index.js'\nexport { default as NcAppNavigationSpacer } from './NcAppNavigationSpacer/index.js'\nexport { default as NcAppSettingsDialog } from './NcAppSettingsDialog/index.js'\nexport { default as NcAppSettingsSection } from './NcAppSettingsSection/index.js'\nexport { default as NcAppSidebar } from './NcAppSidebar/index.js'\nexport { default as NcAppSidebarTab } from './NcAppSidebarTab/index.js'\nexport { default as NcAvatar } from './NcAvatar/index.js'\nexport { default as NcBreadcrumb } from './NcBreadcrumb/index.js'\nexport { default as NcBreadcrumbs } from './NcBreadcrumbs/index.js'\nexport { default as NcButton } from './NcButton/index.js'\nexport { default as NcCheckboxRadioSwitch } from './NcCheckboxRadioSwitch/index.js'\nexport { default as NcColorPicker } from './NcColorPicker/index.js'\nexport { default as NcContent } from './NcContent/index.js'\nexport { default as NcCounterBubble } from './NcCounterBubble/index.js'\nexport { default as NcDashboardWidget } from './NcDashboardWidget/index.js'\nexport { default as NcDashboardWidgetItem } from './NcDashboardWidgetItem/index.js'\nexport { default as NcDateTime } from './NcDateTime/index.js'\nexport { default as NcDateTimePicker } from './NcDateTimePicker/index.js'\nexport { default as NcDateTimePickerNative } from './NcDateTimePickerNative/index.js'\nexport { default as NcDialog } from './NcDialog/index.js'\nexport { default as NcDialogButton } from './NcDialogButton/index.js'\n// Not exported on purpose\n// export { default as NcEllipsisedOption } from './NcEllipsisedOption/index.js'\nexport { default as NcEmojiPicker } from './NcEmojiPicker/index.js'\nexport { default as NcEmptyContent } from './NcEmptyContent/index.js'\nexport { default as NcGuestContent } from './NcGuestContent/index.js'\nexport { default as NcHeaderMenu } from './NcHeaderMenu/index.js'\nexport { default as NcHighlight } from './NcHighlight/index.js'\nexport { default as NcIconSvgWrapper } from './NcIconSvgWrapper/index.js'\n// Not exported on purpose as it is only meant as a base component\n// export { default as NcInputField } from './NcInputField/index.js'\nexport { default as NcListItem } from './NcListItem/index.js'\nexport { default as NcListItemIcon } from './NcListItemIcon/index.js'\nexport { default as NcLoadingIcon } from './NcLoadingIcon/index.js'\nexport { default as NcModal } from './NcModal/index.js'\nexport { default as NcNoteCard } from './NcNoteCard/index.js'\nexport { default as NcPasswordField } from './NcPasswordField/index.js'\nexport { default as NcPopover } from './NcPopover/index.js'\nexport { default as NcProgressBar } from './NcProgressBar/index.js'\nexport { default as NcRelatedResourcesPanel } from './NcRelatedResourcesPanel/index.js'\nexport { default as NcRichContenteditable, NcAutoCompleteResult, NcMentionBubble } from './NcRichContenteditable/index.js'\nexport { default as NcRichText } from './NcRichText/index.js'\nexport { default as NcSavingIndicatorIcon } from './NcSavingIndicatorIcon/index.js'\nexport { default as NcSelect } from './NcSelect/index.js'\nexport { default as NcSelectTags } from './NcSelectTags/index.js'\nexport { default as NcSettingsInputText } from './NcSettingsInputText/index.js'\nexport { default as NcSettingsSection } from './NcSettingsSection/index.js'\nexport { default as NcSettingsSelectGroup } from './NcSettingsSelectGroup/index.js'\nexport { default as NcTextField } from './NcTextField/index.js'\nexport { default as NcTimezonePicker } from './NcTimezonePicker/index.js'\nexport { default as NcUserBubble } from './NcUserBubble/index.js'\nexport { default as NcTextArea } from './NcTextArea/index.js'\n","/**\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/**\n * Return true if the DOM event is an accessible mouse or keyboard element activation, false otherwise\n *\n * @param {Event} event DOM event\n *\n * @return {boolean}\n */\nexport const isA11yActivation = (event: Event) => {\n\tif (event.type === 'click') {\n\t\treturn true\n\t}\n\tif (event.type === 'keydown' && (event as KeyboardEvent).key === 'Enter') {\n\t\treturn true\n\t}\n\treturn false\n}\n","/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport { default as Focus } from './Focus/index.js'\nexport { default as Linkify } from './Linkify/index.js'\nexport { default as Tooltip } from './Tooltip/index.js'\n","import type { DefineComponent, Directive, PluginObject } from 'vue'\n\nimport * as NcComponents from './components/index.js'\nimport * as NcDirectives from './directives/index.js'\n\n/**\n * Install all Nextcloud Vue components and directives globally\n * @example\n * ```js\n * import { NextcloudVuePlugin } from '@nextcloud/vue'\n * import Vue from 'vue'\n *\n * // ...\n *\n * Vue.use(NextcloudVuePlugin)\n * new Vue({\n * // options\n * })\n * ```\n */\nexport const NextcloudVuePlugin: PluginObject<never> = {\n\tinstall(Vue) {\n\t\t// Install components\n\t\tObject.entries(NcComponents as { [key: string]: DefineComponent }).forEach(([name, component]) => {\n\t\t\tVue.component(component.name || name, component)\n\t\t})\n\n\t\t// Install directives\n\t\tObject.entries(NcDirectives as { [key: string]: Directive }).forEach(([name, directive]) => {\n\t\t\tVue.directive(name, directive)\n\t\t})\n\t},\n}\n"],"names":["isA11yActivation","event","NextcloudVuePlugin","Vue","NcComponents","name","component","NcDirectives","directive"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA6Ba,MAAAA,KAAmB,CAACC,MAC5BA,EAAM,SAAS,WAGfA,EAAM,SAAS,aAAcA,EAAwB,QAAQ;ACjClE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;8CCoBaC,KAA0C;AAAA,EACtD,QAAQC,GAAK;AAEL,WAAA,QAAQC,EAAkD,EAAE,QAAQ,CAAC,CAACC,GAAMC,CAAS,MAAM;AACjG,MAAAH,EAAI,UAAUG,EAAU,QAAQD,GAAMC,CAAS;AAAA,IAAA,CAC/C,GAGM,OAAA,QAAQC,EAA4C,EAAE,QAAQ,CAAC,CAACF,GAAMG,CAAS,MAAM;AACvF,MAAAL,EAAA,UAAUE,GAAMG,CAAS;AAAA,IAAA,CAC7B;AAAA,EACF;AACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index.mjs
CHANGED
|
@@ -25,8 +25,8 @@ import I from "./Components/NcAppSettingsDialog.mjs";
|
|
|
25
25
|
import y from "./Components/NcAppSettingsSection.mjs";
|
|
26
26
|
import P from "./Components/NcAppSidebar.mjs";
|
|
27
27
|
import B from "./Components/NcAppSidebarTab.mjs";
|
|
28
|
-
import { N as D } from "./chunks/index-
|
|
29
|
-
import { u as
|
|
28
|
+
import { N as D } from "./chunks/index-fbf943b3.mjs";
|
|
29
|
+
import { u as tt } from "./chunks/index-fbf943b3.mjs";
|
|
30
30
|
import j from "./Components/NcBreadcrumb.mjs";
|
|
31
31
|
import R from "./Components/NcBreadcrumbs.mjs";
|
|
32
32
|
import O from "./Components/NcButton.mjs";
|
|
@@ -57,39 +57,35 @@ import io from "./Components/NcPopover.mjs";
|
|
|
57
57
|
import mo from "./Components/NcProgressBar.mjs";
|
|
58
58
|
import eo from "./Components/NcRelatedResourcesPanel.mjs";
|
|
59
59
|
import { N as po } from "./chunks/index-5f2a5f57.mjs";
|
|
60
|
-
import { r as
|
|
60
|
+
import { r as mt } from "./chunks/index-5f2a5f57.mjs";
|
|
61
61
|
import co, { NcAutoCompleteResult as fo } from "./Components/NcRichContenteditable.mjs";
|
|
62
|
-
import { N as no } from "./chunks/NcRichText-
|
|
63
|
-
import "./chunks/referencePickerModal-
|
|
62
|
+
import { N as no } from "./chunks/NcRichText-1e8fd02d.mjs";
|
|
63
|
+
import "./chunks/referencePickerModal-6bc8f6b9.mjs";
|
|
64
64
|
import "@nextcloud/axios";
|
|
65
65
|
import "@nextcloud/router";
|
|
66
66
|
import No from "./Components/NcSelect.mjs";
|
|
67
|
-
import "./chunks/l10n-
|
|
68
|
-
import "vue-material-design-icons/LinkVariant.vue";
|
|
67
|
+
import "./chunks/l10n-f692947e.mjs";
|
|
69
68
|
import ao from "./Components/NcTextField.mjs";
|
|
70
|
-
import "vue-material-design-icons/DotsHorizontal.vue";
|
|
71
69
|
import "@nextcloud/event-bus";
|
|
72
|
-
import "vue-material-design-icons/ArrowLeft.vue";
|
|
73
|
-
import "vue-material-design-icons/Close.vue";
|
|
74
70
|
import "vue";
|
|
75
71
|
import so from "./Components/NcSavingIndicatorIcon.mjs";
|
|
76
72
|
import lo from "./Components/NcSelectTags.mjs";
|
|
77
73
|
import uo from "./Components/NcSettingsInputText.mjs";
|
|
78
74
|
import Ao from "./Components/NcSettingsSection.mjs";
|
|
79
|
-
import { N as go } from "./chunks/NcSettingsSelectGroup-
|
|
75
|
+
import { N as go } from "./chunks/NcSettingsSelectGroup-ae323579.mjs";
|
|
80
76
|
import bo from "./Components/NcTimezonePicker.mjs";
|
|
81
77
|
import So from "./Components/NcUserBubble.mjs";
|
|
82
78
|
import vo from "./Components/NcTextArea.mjs";
|
|
83
|
-
import { emojiAddRecent as
|
|
84
|
-
import { default as
|
|
79
|
+
import { emojiAddRecent as pt, emojiSearch as ct } from "./Functions/emoji.mjs";
|
|
80
|
+
import { default as nt } from "./Functions/usernameToColor.mjs";
|
|
85
81
|
import { directive as To } from "./Directives/Focus.mjs";
|
|
86
82
|
import { directive as xo } from "./Directives/Linkify.mjs";
|
|
87
83
|
import "./Directives/Tooltip.mjs";
|
|
88
|
-
import { default as
|
|
89
|
-
import { default as
|
|
90
|
-
import { default as
|
|
84
|
+
import { default as at } from "./Mixins/clickOutsideOptions.mjs";
|
|
85
|
+
import { default as lt } from "./Mixins/isFullscreen.mjs";
|
|
86
|
+
import { default as dt } from "./Mixins/isMobile.mjs";
|
|
91
87
|
import { VTooltip as Co } from "floating-vue";
|
|
92
|
-
import { VTooltip as
|
|
88
|
+
import { VTooltip as gt } from "floating-vue";
|
|
93
89
|
/**
|
|
94
90
|
* @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>
|
|
95
91
|
*
|
|
@@ -206,7 +202,7 @@ const ko = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
|
206
202
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
207
203
|
*
|
|
208
204
|
*/
|
|
209
|
-
const
|
|
205
|
+
const Yr = (o) => o.type === "click" || o.type === "keydown" && o.key === "Enter";
|
|
210
206
|
/**
|
|
211
207
|
* @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>
|
|
212
208
|
*
|
|
@@ -233,7 +229,7 @@ const ho = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
|
233
229
|
Focus: To,
|
|
234
230
|
Linkify: xo,
|
|
235
231
|
Tooltip: Co
|
|
236
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
232
|
+
}, Symbol.toStringTag, { value: "Module" })), Zr = {
|
|
237
233
|
install(o) {
|
|
238
234
|
Object.entries(ko).forEach(([t, r]) => {
|
|
239
235
|
o.component(r.name || t, r);
|
|
@@ -316,15 +312,15 @@ export {
|
|
|
316
312
|
ao as NcTextField,
|
|
317
313
|
bo as NcTimezonePicker,
|
|
318
314
|
So as NcUserBubble,
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
315
|
+
Zr as NextcloudVuePlugin,
|
|
316
|
+
gt as Tooltip,
|
|
317
|
+
at as clickOutsideOptions,
|
|
318
|
+
pt as emojiAddRecent,
|
|
319
|
+
ct as emojiSearch,
|
|
320
|
+
Yr as isA11yActivation,
|
|
321
|
+
lt as isFullscreen,
|
|
322
|
+
dt as isMobile,
|
|
323
|
+
mt as richEditor,
|
|
324
|
+
tt as userStatus,
|
|
325
|
+
nt as usernameToColor
|
|
330
326
|
};
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../src/components/index.js","../src/functions/a11y/index.ts","../src/directives/index.js","../src/plugin.ts"],"sourcesContent":["/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport { default as NcActionButton } from './NcActionButton/index.js'\nexport { default as NcActionButtonGroup } from './NcActionButtonGroup/index.js'\nexport { default as NcActionCaption } from './NcActionCaption/index.js'\nexport { default as NcActionCheckbox } from './NcActionCheckbox/index.js'\nexport { default as NcActionInput } from './NcActionInput/index.js'\nexport { default as NcActionLink } from './NcActionLink/index.js'\nexport { default as NcActionRadio } from './NcActionRadio/index.js'\nexport { default as NcActionRouter } from './NcActionRouter/index.js'\nexport { default as NcActions } from './NcActions/index.js'\nexport { default as NcActionSeparator } from './NcActionSeparator/index.js'\nexport { default as NcActionText } from './NcActionText/index.js'\nexport { default as NcActionTextEditable } from './NcActionTextEditable/index.js'\nexport { default as NcAppContent } from './NcAppContent/index.js'\nexport { default as NcAppContentDetails } from './NcAppContentDetails/index.js'\nexport { default as NcAppContentList } from './NcAppContentList/index.js'\nexport { default as NcAppNavigation } from './NcAppNavigation/index.js'\nexport { default as NcAppNavigationCaption } from './NcAppNavigationCaption/index.js'\nexport { default as NcAppNavigationIconBullet } from './NcAppNavigationIconBullet/index.js'\nexport { default as NcAppNavigationItem } from './NcAppNavigationItem/index.js'\nexport { default as NcAppNavigationNew } from './NcAppNavigationNew/index.js'\nexport { default as NcAppNavigationNewItem } from './NcAppNavigationNewItem/index.js'\nexport { default as NcAppNavigationSettings } from './NcAppNavigationSettings/index.js'\nexport { default as NcAppNavigationSpacer } from './NcAppNavigationSpacer/index.js'\nexport { default as NcAppSettingsDialog } from './NcAppSettingsDialog/index.js'\nexport { default as NcAppSettingsSection } from './NcAppSettingsSection/index.js'\nexport { default as NcAppSidebar } from './NcAppSidebar/index.js'\nexport { default as NcAppSidebarTab } from './NcAppSidebarTab/index.js'\nexport { default as NcAvatar } from './NcAvatar/index.js'\nexport { default as NcBreadcrumb } from './NcBreadcrumb/index.js'\nexport { default as NcBreadcrumbs } from './NcBreadcrumbs/index.js'\nexport { default as NcButton } from './NcButton/index.js'\nexport { default as NcCheckboxRadioSwitch } from './NcCheckboxRadioSwitch/index.js'\nexport { default as NcColorPicker } from './NcColorPicker/index.js'\nexport { default as NcContent } from './NcContent/index.js'\nexport { default as NcCounterBubble } from './NcCounterBubble/index.js'\nexport { default as NcDashboardWidget } from './NcDashboardWidget/index.js'\nexport { default as NcDashboardWidgetItem } from './NcDashboardWidgetItem/index.js'\nexport { default as NcDateTime } from './NcDateTime/index.js'\nexport { default as NcDateTimePicker } from './NcDateTimePicker/index.js'\nexport { default as NcDateTimePickerNative } from './NcDateTimePickerNative/index.js'\nexport { default as NcDialog } from './NcDialog/index.js'\nexport { default as NcDialogButton } from './NcDialogButton/index.js'\n// Not exported on purpose\n// export { default as NcEllipsisedOption } from './NcEllipsisedOption/index.js'\nexport { default as NcEmojiPicker } from './NcEmojiPicker/index.js'\nexport { default as NcEmptyContent } from './NcEmptyContent/index.js'\nexport { default as NcGuestContent } from './NcGuestContent/index.js'\nexport { default as NcHeaderMenu } from './NcHeaderMenu/index.js'\nexport { default as NcHighlight } from './NcHighlight/index.js'\nexport { default as NcIconSvgWrapper } from './NcIconSvgWrapper/index.js'\n// Not exported on purpose as it is only meant as a base component\n// export { default as NcInputField } from './NcInputField/index.js'\nexport { default as NcListItem } from './NcListItem/index.js'\nexport { default as NcListItemIcon } from './NcListItemIcon/index.js'\nexport { default as NcLoadingIcon } from './NcLoadingIcon/index.js'\nexport { default as NcModal } from './NcModal/index.js'\nexport { default as NcNoteCard } from './NcNoteCard/index.js'\nexport { default as NcPasswordField } from './NcPasswordField/index.js'\nexport { default as NcPopover } from './NcPopover/index.js'\nexport { default as NcProgressBar } from './NcProgressBar/index.js'\nexport { default as NcRelatedResourcesPanel } from './NcRelatedResourcesPanel/index.js'\nexport { default as NcRichContenteditable, NcAutoCompleteResult, NcMentionBubble } from './NcRichContenteditable/index.js'\nexport { default as NcRichText } from './NcRichText/index.js'\nexport { default as NcSavingIndicatorIcon } from './NcSavingIndicatorIcon/index.js'\nexport { default as NcSelect } from './NcSelect/index.js'\nexport { default as NcSelectTags } from './NcSelectTags/index.js'\nexport { default as NcSettingsInputText } from './NcSettingsInputText/index.js'\nexport { default as NcSettingsSection } from './NcSettingsSection/index.js'\nexport { default as NcSettingsSelectGroup } from './NcSettingsSelectGroup/index.js'\nexport { default as NcTextField } from './NcTextField/index.js'\nexport { default as NcTimezonePicker } from './NcTimezonePicker/index.js'\nexport { default as NcUserBubble } from './NcUserBubble/index.js'\nexport { default as NcTextArea } from './NcTextArea/index.js'\n","/**\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/**\n * Return true if the DOM event is an accessible mouse or keyboard element activation, false otherwise\n *\n * @param {Event} event DOM event\n *\n * @return {boolean}\n */\nexport const isA11yActivation = (event: Event) => {\n\tif (event.type === 'click') {\n\t\treturn true\n\t}\n\tif (event.type === 'keydown' && (event as KeyboardEvent).key === 'Enter') {\n\t\treturn true\n\t}\n\treturn false\n}\n","/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport { default as Focus } from './Focus/index.js'\nexport { default as Linkify } from './Linkify/index.js'\nexport { default as Tooltip } from './Tooltip/index.js'\n","import type { DefineComponent, Directive, PluginObject } from 'vue'\n\nimport * as NcComponents from './components/index.js'\nimport * as NcDirectives from './directives/index.js'\n\n/**\n * Install all Nextcloud Vue components and directives globally\n * @example\n * ```js\n * import { NextcloudVuePlugin } from '@nextcloud/vue'\n * import Vue from 'vue'\n *\n * // ...\n *\n * Vue.use(NextcloudVuePlugin)\n * new Vue({\n * // options\n * })\n * ```\n */\nexport const NextcloudVuePlugin: PluginObject<never> = {\n\tinstall(Vue) {\n\t\t// Install components\n\t\tObject.entries(NcComponents as { [key: string]: DefineComponent }).forEach(([name, component]) => {\n\t\t\tVue.component(component.name || name, component)\n\t\t})\n\n\t\t// Install directives\n\t\tObject.entries(NcDirectives as { [key: string]: Directive }).forEach(([name, directive]) => {\n\t\t\tVue.directive(name, directive)\n\t\t})\n\t},\n}\n"],"names":["isA11yActivation","event","NextcloudVuePlugin","Vue","NcComponents","name","component","NcDirectives","directive"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA6Ba,MAAAA,KAAmB,CAACC,MAC5BA,EAAM,SAAS,WAGfA,EAAM,SAAS,aAAcA,EAAwB,QAAQ;ACjClE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;8CCoBaC,KAA0C;AAAA,EACtD,QAAQC,GAAK;AAEL,WAAA,QAAQC,EAAkD,EAAE,QAAQ,CAAC,CAACC,GAAMC,CAAS,MAAM;AACjG,MAAAH,EAAI,UAAUG,EAAU,QAAQD,GAAMC,CAAS;AAAA,IAAA,CAC/C,GAGM,OAAA,QAAQC,EAA4C,EAAE,QAAQ,CAAC,CAACF,GAAMG,CAAS,MAAM;AACvF,MAAAL,EAAA,UAAUE,GAAMG,CAAS;AAAA,IAAA,CAC7B;AAAA,EACF;AACD;"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../src/components/index.js","../src/functions/a11y/index.ts","../src/directives/index.js","../src/plugin.ts"],"sourcesContent":["/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport { default as NcActionButton } from './NcActionButton/index.js'\nexport { default as NcActionButtonGroup } from './NcActionButtonGroup/index.js'\nexport { default as NcActionCaption } from './NcActionCaption/index.js'\nexport { default as NcActionCheckbox } from './NcActionCheckbox/index.js'\nexport { default as NcActionInput } from './NcActionInput/index.js'\nexport { default as NcActionLink } from './NcActionLink/index.js'\nexport { default as NcActionRadio } from './NcActionRadio/index.js'\nexport { default as NcActionRouter } from './NcActionRouter/index.js'\nexport { default as NcActions } from './NcActions/index.js'\nexport { default as NcActionSeparator } from './NcActionSeparator/index.js'\nexport { default as NcActionText } from './NcActionText/index.js'\nexport { default as NcActionTextEditable } from './NcActionTextEditable/index.js'\nexport { default as NcAppContent } from './NcAppContent/index.js'\nexport { default as NcAppContentDetails } from './NcAppContentDetails/index.js'\nexport { default as NcAppContentList } from './NcAppContentList/index.js'\nexport { default as NcAppNavigation } from './NcAppNavigation/index.js'\nexport { default as NcAppNavigationCaption } from './NcAppNavigationCaption/index.js'\nexport { default as NcAppNavigationIconBullet } from './NcAppNavigationIconBullet/index.js'\nexport { default as NcAppNavigationItem } from './NcAppNavigationItem/index.js'\nexport { default as NcAppNavigationNew } from './NcAppNavigationNew/index.js'\nexport { default as NcAppNavigationNewItem } from './NcAppNavigationNewItem/index.js'\nexport { default as NcAppNavigationSettings } from './NcAppNavigationSettings/index.js'\nexport { default as NcAppNavigationSpacer } from './NcAppNavigationSpacer/index.js'\nexport { default as NcAppSettingsDialog } from './NcAppSettingsDialog/index.js'\nexport { default as NcAppSettingsSection } from './NcAppSettingsSection/index.js'\nexport { default as NcAppSidebar } from './NcAppSidebar/index.js'\nexport { default as NcAppSidebarTab } from './NcAppSidebarTab/index.js'\nexport { default as NcAvatar } from './NcAvatar/index.js'\nexport { default as NcBreadcrumb } from './NcBreadcrumb/index.js'\nexport { default as NcBreadcrumbs } from './NcBreadcrumbs/index.js'\nexport { default as NcButton } from './NcButton/index.js'\nexport { default as NcCheckboxRadioSwitch } from './NcCheckboxRadioSwitch/index.js'\nexport { default as NcColorPicker } from './NcColorPicker/index.js'\nexport { default as NcContent } from './NcContent/index.js'\nexport { default as NcCounterBubble } from './NcCounterBubble/index.js'\nexport { default as NcDashboardWidget } from './NcDashboardWidget/index.js'\nexport { default as NcDashboardWidgetItem } from './NcDashboardWidgetItem/index.js'\nexport { default as NcDateTime } from './NcDateTime/index.js'\nexport { default as NcDateTimePicker } from './NcDateTimePicker/index.js'\nexport { default as NcDateTimePickerNative } from './NcDateTimePickerNative/index.js'\nexport { default as NcDialog } from './NcDialog/index.js'\nexport { default as NcDialogButton } from './NcDialogButton/index.js'\n// Not exported on purpose\n// export { default as NcEllipsisedOption } from './NcEllipsisedOption/index.js'\nexport { default as NcEmojiPicker } from './NcEmojiPicker/index.js'\nexport { default as NcEmptyContent } from './NcEmptyContent/index.js'\nexport { default as NcGuestContent } from './NcGuestContent/index.js'\nexport { default as NcHeaderMenu } from './NcHeaderMenu/index.js'\nexport { default as NcHighlight } from './NcHighlight/index.js'\nexport { default as NcIconSvgWrapper } from './NcIconSvgWrapper/index.js'\n// Not exported on purpose as it is only meant as a base component\n// export { default as NcInputField } from './NcInputField/index.js'\nexport { default as NcListItem } from './NcListItem/index.js'\nexport { default as NcListItemIcon } from './NcListItemIcon/index.js'\nexport { default as NcLoadingIcon } from './NcLoadingIcon/index.js'\nexport { default as NcModal } from './NcModal/index.js'\nexport { default as NcNoteCard } from './NcNoteCard/index.js'\nexport { default as NcPasswordField } from './NcPasswordField/index.js'\nexport { default as NcPopover } from './NcPopover/index.js'\nexport { default as NcProgressBar } from './NcProgressBar/index.js'\nexport { default as NcRelatedResourcesPanel } from './NcRelatedResourcesPanel/index.js'\nexport { default as NcRichContenteditable, NcAutoCompleteResult, NcMentionBubble } from './NcRichContenteditable/index.js'\nexport { default as NcRichText } from './NcRichText/index.js'\nexport { default as NcSavingIndicatorIcon } from './NcSavingIndicatorIcon/index.js'\nexport { default as NcSelect } from './NcSelect/index.js'\nexport { default as NcSelectTags } from './NcSelectTags/index.js'\nexport { default as NcSettingsInputText } from './NcSettingsInputText/index.js'\nexport { default as NcSettingsSection } from './NcSettingsSection/index.js'\nexport { default as NcSettingsSelectGroup } from './NcSettingsSelectGroup/index.js'\nexport { default as NcTextField } from './NcTextField/index.js'\nexport { default as NcTimezonePicker } from './NcTimezonePicker/index.js'\nexport { default as NcUserBubble } from './NcUserBubble/index.js'\nexport { default as NcTextArea } from './NcTextArea/index.js'\n","/**\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/**\n * Return true if the DOM event is an accessible mouse or keyboard element activation, false otherwise\n *\n * @param {Event} event DOM event\n *\n * @return {boolean}\n */\nexport const isA11yActivation = (event: Event) => {\n\tif (event.type === 'click') {\n\t\treturn true\n\t}\n\tif (event.type === 'keydown' && (event as KeyboardEvent).key === 'Enter') {\n\t\treturn true\n\t}\n\treturn false\n}\n","/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport { default as Focus } from './Focus/index.js'\nexport { default as Linkify } from './Linkify/index.js'\nexport { default as Tooltip } from './Tooltip/index.js'\n","import type { DefineComponent, Directive, PluginObject } from 'vue'\n\nimport * as NcComponents from './components/index.js'\nimport * as NcDirectives from './directives/index.js'\n\n/**\n * Install all Nextcloud Vue components and directives globally\n * @example\n * ```js\n * import { NextcloudVuePlugin } from '@nextcloud/vue'\n * import Vue from 'vue'\n *\n * // ...\n *\n * Vue.use(NextcloudVuePlugin)\n * new Vue({\n * // options\n * })\n * ```\n */\nexport const NextcloudVuePlugin: PluginObject<never> = {\n\tinstall(Vue) {\n\t\t// Install components\n\t\tObject.entries(NcComponents as { [key: string]: DefineComponent }).forEach(([name, component]) => {\n\t\t\tVue.component(component.name || name, component)\n\t\t})\n\n\t\t// Install directives\n\t\tObject.entries(NcDirectives as { [key: string]: Directive }).forEach(([name, directive]) => {\n\t\t\tVue.directive(name, directive)\n\t\t})\n\t},\n}\n"],"names":["isA11yActivation","event","NextcloudVuePlugin","Vue","NcComponents","name","component","NcDirectives","directive"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA6Ba,MAAAA,KAAmB,CAACC,MAC5BA,EAAM,SAAS,WAGfA,EAAM,SAAS,aAAcA,EAAwB,QAAQ;ACjClE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;8CCoBaC,KAA0C;AAAA,EACtD,QAAQC,GAAK;AAEL,WAAA,QAAQC,EAAkD,EAAE,QAAQ,CAAC,CAACC,GAAMC,CAAS,MAAM;AACjG,MAAAH,EAAI,UAAUG,EAAU,QAAQD,GAAMC,CAAS;AAAA,IAAA,CAC/C,GAGM,OAAA,QAAQC,EAA4C,EAAE,QAAQ,CAAC,CAACF,GAAMG,CAAS,MAAM;AACvF,MAAAL,EAAA,UAAUE,GAAMG,CAAS;AAAA,IAAA,CAC7B;AAAA,EACF;AACD;"}
|
package/dist/vendor.LICENSE.txt
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nextcloud/vue",
|
|
3
|
-
"version": "8.0.
|
|
3
|
+
"version": "8.0.1",
|
|
4
4
|
"description": "Nextcloud vue components",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"vuejs",
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
"@nextcloud/l10n": "^2.0.1",
|
|
72
72
|
"@nextcloud/logger": "^2.2.1",
|
|
73
73
|
"@nextcloud/router": "^2.0.0",
|
|
74
|
-
"@nextcloud/vue-select": "^3.
|
|
74
|
+
"@nextcloud/vue-select": "^3.24.0",
|
|
75
75
|
"@vueuse/components": "^10.0.2",
|
|
76
76
|
"@vueuse/core": "^10.1.2",
|
|
77
77
|
"clone": "^2.1.2",
|
|
@@ -99,7 +99,6 @@
|
|
|
99
99
|
"vue": "^2.7.14",
|
|
100
100
|
"vue-color": "^2.8.1",
|
|
101
101
|
"vue-frag": "^1.4.3",
|
|
102
|
-
"vue-material-design-icons": "^5.1.2",
|
|
103
102
|
"vue2-datepicker": "^3.11.0"
|
|
104
103
|
},
|
|
105
104
|
"engines": {
|
|
@@ -143,6 +142,7 @@
|
|
|
143
142
|
"url-loader": "^4.1.1",
|
|
144
143
|
"vite": "^4.3.9",
|
|
145
144
|
"vue-eslint-parser": "^9.0.3",
|
|
145
|
+
"vue-material-design-icons": "^5.2.0",
|
|
146
146
|
"vue-router": "^3.6.5",
|
|
147
147
|
"vue-styleguidist": "~4.72.0",
|
|
148
148
|
"vue-template-compiler": "^2.7.14",
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
@charset "UTF-8";
|
|
2
|
-
/**
|
|
3
|
-
* @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
|
|
4
|
-
*
|
|
5
|
-
* @author John Molakvoæ <skjnldsv@protonmail.com>
|
|
6
|
-
*
|
|
7
|
-
* @license GNU AGPL version 3 or any later version
|
|
8
|
-
*
|
|
9
|
-
* This program is free software: you can redistribute it and/or modify
|
|
10
|
-
* it under the terms of the GNU Affero General Public License as
|
|
11
|
-
* published by the Free Software Foundation, either version 3 of the
|
|
12
|
-
* License, or (at your option) any later version.
|
|
13
|
-
*
|
|
14
|
-
* This program is distributed in the hope that it will be useful,
|
|
15
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
16
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
17
|
-
* GNU Affero General Public License for more details.
|
|
18
|
-
*
|
|
19
|
-
* You should have received a copy of the GNU Affero General Public License
|
|
20
|
-
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
21
|
-
*
|
|
22
|
-
*/
|
|
23
|
-
.material-design-icon {
|
|
24
|
-
display: flex;
|
|
25
|
-
align-self: center;
|
|
26
|
-
justify-self: center;
|
|
27
|
-
align-items: center;
|
|
28
|
-
justify-content: center;
|
|
29
|
-
}
|
|
30
|
-
.app-navigation-new-item__name {
|
|
31
|
-
overflow: hidden;
|
|
32
|
-
max-width: 100%;
|
|
33
|
-
white-space: nowrap;
|
|
34
|
-
text-overflow: ellipsis;
|
|
35
|
-
padding-left: 7px;
|
|
36
|
-
font-size: 14px;
|
|
37
|
-
}
|
|
38
|
-
.newItemContainer {
|
|
39
|
-
width: calc(100% - 44px);
|
|
40
|
-
margin: auto;
|
|
41
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
var m = require("../assets/NcAppNavigationToggle-2cc5b864.css");
|
|
2
|
-
const i = require("../Components/NcButton.cjs");
|
|
3
|
-
require("../Directives/Tooltip.cjs");
|
|
4
|
-
const o = require("./l10n-b1d264c7.cjs"), r = require("vue-material-design-icons/Menu.vue"), s = require("vue-material-design-icons/MenuOpen.vue"), u = require("./_plugin-vue2_normalizer-7f9efb60.cjs"), l = require("floating-vue"), a = (n) => n && n.__esModule ? n : { default: n }, c = /* @__PURE__ */ a(r), p = /* @__PURE__ */ a(s);
|
|
5
|
-
const _ = {
|
|
6
|
-
name: "NcAppNavigationToggle",
|
|
7
|
-
directives: {
|
|
8
|
-
tooltip: l.VTooltip
|
|
9
|
-
},
|
|
10
|
-
components: {
|
|
11
|
-
NcButton: i,
|
|
12
|
-
MenuIcon: c.default,
|
|
13
|
-
MenuOpenIcon: p.default
|
|
14
|
-
},
|
|
15
|
-
props: {
|
|
16
|
-
open: {
|
|
17
|
-
type: Boolean,
|
|
18
|
-
required: !0
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
emits: ["update:open"],
|
|
22
|
-
computed: {
|
|
23
|
-
label() {
|
|
24
|
-
return this.open ? o.t("Close navigation") : o.t("Open navigation");
|
|
25
|
-
}
|
|
26
|
-
},
|
|
27
|
-
methods: {
|
|
28
|
-
toggleNavigation() {
|
|
29
|
-
this.$emit("update:open", !this.open);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
var g = function() {
|
|
34
|
-
var e = this, t = e._self._c;
|
|
35
|
-
return t("NcButton", { directives: [{ name: "tooltip", rawName: "v-tooltip.auto", value: e.label, expression: "label", modifiers: { auto: !0 } }], staticClass: "app-navigation-toggle", attrs: { type: "tertiary", "aria-expanded": e.open ? "true" : "false", "aria-label": e.label, "aria-controls": "app-navigation-vue" }, on: { click: e.toggleNavigation }, scopedSlots: e._u([{ key: "icon", fn: function() {
|
|
36
|
-
return [e.open ? t("MenuOpenIcon", { attrs: { size: 20 } }) : t("MenuIcon", { attrs: { size: 20 } })];
|
|
37
|
-
}, proxy: !0 }]) });
|
|
38
|
-
}, d = [], v = /* @__PURE__ */ u.normalizeComponent(
|
|
39
|
-
_,
|
|
40
|
-
g,
|
|
41
|
-
d,
|
|
42
|
-
!1,
|
|
43
|
-
null,
|
|
44
|
-
"506dc204",
|
|
45
|
-
null,
|
|
46
|
-
null
|
|
47
|
-
);
|
|
48
|
-
const f = v.exports;
|
|
49
|
-
exports.NcAppNavigationToggle = f;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NcAppNavigationToggle-841d3015.cjs","sources":["../../src/components/NcAppNavigationToggle/NcAppNavigationToggle.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @author Christoph Wurst <christoph@winzerhof-wurst.at>\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n - @author Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n<template>\n\t<NcButton v-tooltip.auto=\"label\"\n\t\tclass=\"app-navigation-toggle\"\n\t\ttype=\"tertiary\"\n\t\t:aria-expanded=\"open ? 'true' : 'false'\"\n\t\t:aria-label=\"label\"\n\t\taria-controls=\"app-navigation-vue\"\n\t\t@click=\"toggleNavigation\">\n\t\t<template #icon>\n\t\t\t<MenuOpenIcon v-if=\"open\" :size=\"20\" />\n\t\t\t<MenuIcon v-else :size=\"20\" />\n\t\t</template>\n\t</NcButton>\n</template>\n\n<script>\nimport NcButton from '../NcButton/index.js'\nimport Tooltip from '../../directives/Tooltip/index.js'\nimport { t } from '../../l10n.js'\n\nimport MenuIcon from 'vue-material-design-icons/Menu.vue'\nimport MenuOpenIcon from 'vue-material-design-icons/MenuOpen.vue'\n\nexport default {\n\tname: 'NcAppNavigationToggle',\n\n\tdirectives: {\n\t\ttooltip: Tooltip,\n\t},\n\n\tcomponents: {\n\t\tNcButton,\n\t\tMenuIcon,\n\t\tMenuOpenIcon,\n\t},\n\n\tprops: {\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\temits: ['update:open'],\n\n\tcomputed: {\n\t\tlabel() {\n\t\t\treturn this.open ? t('Close navigation') : t('Open navigation')\n\t\t},\n\t},\n\tmethods: {\n\t\ttoggleNavigation() {\n\t\t\tthis.$emit('update:open', !this.open)\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n\nbutton.app-navigation-toggle {\n\tposition: absolute;\n\ttop: var(--app-navigation-padding);\n\tright: calc(0px - var(--app-navigation-padding));\n\tmargin-right: - $clickable-area;\n}\n\n</style>\n"],"names":["_sfc_main","floatingVue","Components_NcButton","MenuIcon__default","MenuOpenIcon__default","l10n"],"mappings":";;;;AA8CA,MAAAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,SAAAC,EAAA;AAAA,EACA;AAAA,EAEA,YAAA;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC,EAAA;AAAA,IACA,cAAAC,EAAA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,CAAA,aAAA;AAAA,EAEA,UAAA;AAAA,IACA,QAAA;AACA,aAAA,KAAA,OAAAC,EAAA,EAAA,kBAAA,IAAAA,EAAA,EAAA,iBAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,SAAA;AAAA,IACA,mBAAA;AACA,WAAA,MAAA,eAAA,CAAA,KAAA,IAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;"}
|