@nextcloud/vue 9.0.0-rc.3 → 9.0.0-rc.4

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.
Files changed (278) hide show
  1. package/CHANGELOG.md +70 -7
  2. package/dist/assets/{NcActionText-CWAPsJmz.css → NcActionText-BtzLDZeJ.css} +18 -18
  3. package/dist/assets/{NcActions-DxcpMfrs.css → NcActions-DfCOtp0b.css} +11 -11
  4. package/dist/assets/{NcAppContent-Zgn8-wsd.css → NcAppContent-RmHDNYBp.css} +23 -23
  5. package/dist/assets/{NcAppNavigationItem-B27WFnUV.css → NcAppNavigationItem-B-slGJHZ.css} +31 -31
  6. package/dist/assets/{NcAppNavigationNewItem-BrLekTMb.css → NcAppNavigationNewItem-CYsA6ZGQ.css} +33 -33
  7. package/dist/assets/{NcAppSidebar-PG3qIdkG.css → NcAppSidebar-BeRME1Bx.css} +44 -44
  8. package/dist/assets/{NcAppSidebarTab-BFy7uyWe.css → NcAppSidebarTab-cWhpTGp7.css} +4 -4
  9. package/dist/assets/{NcAvatar-C01qP9VA.css → NcAvatar-g7MoHyFd.css} +24 -24
  10. package/dist/assets/{NcCollectionList-DTJgOfCk.css → NcCollectionList-DVlSPO13.css} +27 -27
  11. package/dist/assets/{NcContent-C12jLe34.css → NcContent-1ivDf2e_.css} +9 -9
  12. package/dist/assets/NcDateTimePicker-_rRYVngX.css +1228 -0
  13. package/dist/assets/{NcEmojiPicker-kxoeGEM5.css → NcEmojiPicker-vTc7_EDA.css} +4 -4
  14. package/dist/assets/{NcIconSvgWrapper-cYxhjYue.css → NcIconSvgWrapper-CJfAwN6-.css} +11 -11
  15. package/dist/assets/{NcListItem-ff6bfJFE.css → NcListItem-BBaZDZQK.css} +44 -44
  16. package/dist/assets/{NcMentionBubble-DLOTFwpl.css → NcMentionBubble-lpms2_3A.css} +9 -9
  17. package/dist/assets/{NcNoteCard-C387qsQO.css → NcNoteCard-DlW6RBOO.css} +9 -9
  18. package/dist/assets/{NcPasswordField-DVV6Eiwf.css → NcPasswordField-D7XrnwDs.css} +2 -2
  19. package/dist/assets/{NcRelatedResourcesPanel-DXfywiqL.css → NcRelatedResourcesPanel-BQkQvMMD.css} +3 -3
  20. package/dist/assets/{NcRichContenteditable-KsmFPJmm.css → NcRichContenteditable-1zTxLjsG.css} +20 -20
  21. package/dist/assets/{NcRichText-Fi_WAwSP.css → NcRichText-cO2UCM_o.css} +86 -84
  22. package/dist/assets/{NcSettingsSection-Dyrgo_fF.css → NcSettingsSection-DLjgl3j1.css} +7 -7
  23. package/dist/assets/{referencePickerModal-CUVCkTmZ.css → referencePickerModal-DIHQ6_wW.css} +20 -20
  24. package/dist/chunks/{NcActionButton-BECWgEPr.mjs → NcActionButton-Bd35_0n4.mjs} +3 -3
  25. package/dist/chunks/{NcActionButton-BECWgEPr.mjs.map → NcActionButton-Bd35_0n4.mjs.map} +1 -1
  26. package/dist/chunks/{NcActionButtonGroup-e4F30E5Z.mjs → NcActionButtonGroup-BVbWDFaC.mjs} +2 -2
  27. package/dist/chunks/{NcActionButtonGroup-e4F30E5Z.mjs.map → NcActionButtonGroup-BVbWDFaC.mjs.map} +1 -1
  28. package/dist/chunks/{NcActionInput-DYLqm7AP.mjs → NcActionInput-B_f8z2fo.mjs} +8 -8
  29. package/dist/chunks/{NcActionInput-DYLqm7AP.mjs.map → NcActionInput-B_f8z2fo.mjs.map} +1 -1
  30. package/dist/chunks/{NcActionText-DJWBefhJ.mjs → NcActionText-16Mj4-P1.mjs} +3 -4
  31. package/dist/chunks/NcActionText-16Mj4-P1.mjs.map +1 -0
  32. package/dist/chunks/{NcActionTextEditable-ByA0z9nO.mjs → NcActionTextEditable-B4nTAiHu.mjs} +3 -3
  33. package/dist/chunks/{NcActionTextEditable-ByA0z9nO.mjs.map → NcActionTextEditable-B4nTAiHu.mjs.map} +1 -1
  34. package/dist/chunks/{NcActions-iwG1Tj-I.mjs → NcActions-BM3DmGLW.mjs} +6 -6
  35. package/dist/chunks/{NcActions-iwG1Tj-I.mjs.map → NcActions-BM3DmGLW.mjs.map} +1 -1
  36. package/dist/chunks/{NcAppContent-B2qF2-YG.mjs → NcAppContent-BZZyPqOo.mjs} +54 -52
  37. package/dist/chunks/NcAppContent-BZZyPqOo.mjs.map +1 -0
  38. package/dist/chunks/{NcAppNavigation-JoRJnwqf.mjs → NcAppNavigation-BmACVQVW.mjs} +2 -2
  39. package/dist/chunks/{NcAppNavigation-JoRJnwqf.mjs.map → NcAppNavigation-BmACVQVW.mjs.map} +1 -1
  40. package/dist/chunks/{NcAppNavigationCaption-DhwvNbx1.mjs → NcAppNavigationCaption-BrCiN8XK.mjs} +2 -2
  41. package/dist/chunks/{NcAppNavigationCaption-DhwvNbx1.mjs.map → NcAppNavigationCaption-BrCiN8XK.mjs.map} +1 -1
  42. package/dist/chunks/{NcAppNavigationItem-B51Guztu.mjs → NcAppNavigationItem-ClySLuSM.mjs} +9 -9
  43. package/dist/chunks/{NcAppNavigationItem-B51Guztu.mjs.map → NcAppNavigationItem-ClySLuSM.mjs.map} +1 -1
  44. package/dist/chunks/{NcAppNavigationNewItem-DyzpvBOb.mjs → NcAppNavigationNewItem-BUgPntuN.mjs} +6 -6
  45. package/dist/chunks/{NcAppNavigationNewItem-DyzpvBOb.mjs.map → NcAppNavigationNewItem-BUgPntuN.mjs.map} +1 -1
  46. package/dist/chunks/{NcAppNavigationSearch-CvHp92E-.mjs → NcAppNavigationSearch-DpjlWi9j.mjs} +3 -3
  47. package/dist/chunks/{NcAppNavigationSearch-CvHp92E-.mjs.map → NcAppNavigationSearch-DpjlWi9j.mjs.map} +1 -1
  48. package/dist/chunks/{NcAppNavigationSettings-iJ84_lwr.mjs → NcAppNavigationSettings-DGATbBqy.mjs} +2 -2
  49. package/dist/chunks/{NcAppNavigationSettings-iJ84_lwr.mjs.map → NcAppNavigationSettings-DGATbBqy.mjs.map} +1 -1
  50. package/dist/chunks/{NcAppNavigationToggle-D3UGt5TV.mjs → NcAppNavigationToggle-D9pouVyS.mjs} +2 -2
  51. package/dist/chunks/{NcAppNavigationToggle-D3UGt5TV.mjs.map → NcAppNavigationToggle-D9pouVyS.mjs.map} +1 -1
  52. package/dist/chunks/{NcAppSettingsDialog-CQnZ29WZ.mjs → NcAppSettingsDialog-Dgh5jydA.mjs} +3 -3
  53. package/dist/chunks/{NcAppSettingsDialog-CQnZ29WZ.mjs.map → NcAppSettingsDialog-Dgh5jydA.mjs.map} +1 -1
  54. package/dist/chunks/{NcAppSidebar-QEkYs8pt.mjs → NcAppSidebar-DWRmX_-Y.mjs} +12 -12
  55. package/dist/chunks/{NcAppSidebar-QEkYs8pt.mjs.map → NcAppSidebar-DWRmX_-Y.mjs.map} +1 -1
  56. package/dist/chunks/{NcAppSidebarTab-DG51ajic.mjs → NcAppSidebarTab-D1RmFRTu.mjs} +5 -5
  57. package/dist/chunks/NcAppSidebarTab-D1RmFRTu.mjs.map +1 -0
  58. package/dist/chunks/{NcAvatar-BadoF6cb.mjs → NcAvatar-PCbT0J_-.mjs} +39 -25
  59. package/dist/chunks/NcAvatar-PCbT0J_-.mjs.map +1 -0
  60. package/dist/chunks/{NcBreadcrumb-BH4XQJ8K.mjs → NcBreadcrumb-D9gRzaYP.mjs} +2 -2
  61. package/dist/chunks/{NcBreadcrumb-BH4XQJ8K.mjs.map → NcBreadcrumb-D9gRzaYP.mjs.map} +1 -1
  62. package/dist/chunks/{NcBreadcrumbs-DyWyrhrJ.mjs → NcBreadcrumbs-DjqDBMn-.mjs} +4 -4
  63. package/dist/chunks/{NcBreadcrumbs-DyWyrhrJ.mjs.map → NcBreadcrumbs-DjqDBMn-.mjs.map} +1 -1
  64. package/dist/chunks/{NcCheckboxRadioSwitch-Di0xbf6d.mjs → NcCheckboxRadioSwitch-D9N_BDHh.mjs} +2 -2
  65. package/dist/chunks/{NcCheckboxRadioSwitch-Di0xbf6d.mjs.map → NcCheckboxRadioSwitch-D9N_BDHh.mjs.map} +1 -1
  66. package/dist/chunks/{NcChip-DfDlpsAh.mjs → NcChip-BPresRp1.mjs} +6 -6
  67. package/dist/chunks/{NcChip-DfDlpsAh.mjs.map → NcChip-BPresRp1.mjs.map} +1 -1
  68. package/dist/chunks/{NcCollectionList-B2PzNHzw.mjs → NcCollectionList-BPDCogsB.mjs} +14 -11
  69. package/dist/chunks/NcCollectionList-BPDCogsB.mjs.map +1 -0
  70. package/dist/chunks/{NcColorPicker-CoteX_0P.mjs → NcColorPicker-BNpZzN-p.mjs} +3 -3
  71. package/dist/chunks/{NcColorPicker-CoteX_0P.mjs.map → NcColorPicker-BNpZzN-p.mjs.map} +1 -1
  72. package/dist/chunks/{NcContent-BImnEnMI.mjs → NcContent-CZKDyVcI.mjs} +8 -6
  73. package/dist/chunks/{NcContent-BImnEnMI.mjs.map → NcContent-CZKDyVcI.mjs.map} +1 -1
  74. package/dist/chunks/{NcDashboardWidget-DJtdcW-W.mjs → NcDashboardWidget-DhZ5c4oF.mjs} +4 -4
  75. package/dist/chunks/{NcDashboardWidget-DJtdcW-W.mjs.map → NcDashboardWidget-DhZ5c4oF.mjs.map} +1 -1
  76. package/dist/chunks/{NcDashboardWidgetItem-CZaWF40u.mjs → NcDashboardWidgetItem-pJ-PctjL.mjs} +4 -4
  77. package/dist/chunks/{NcDashboardWidgetItem-CZaWF40u.mjs.map → NcDashboardWidgetItem-pJ-PctjL.mjs.map} +1 -1
  78. package/dist/chunks/NcDateTime.vue_vue_type_script_setup_true_lang-B0Lci6v0.mjs +36 -0
  79. package/dist/chunks/{NcDateTime.vue_vue_type_script_setup_true_lang-C2VbacBQ.mjs.map → NcDateTime.vue_vue_type_script_setup_true_lang-B0Lci6v0.mjs.map} +1 -1
  80. package/dist/chunks/{NcDateTimePicker-BB--HQog.mjs → NcDateTimePicker-CKOTExmB.mjs} +149 -94
  81. package/dist/chunks/NcDateTimePicker-CKOTExmB.mjs.map +1 -0
  82. package/dist/chunks/{NcDateTimePickerNative-DaPzFiYH.mjs → NcDateTimePickerNative-NVYPDSmf.mjs} +2 -2
  83. package/dist/chunks/{NcDateTimePickerNative-DaPzFiYH.mjs.map → NcDateTimePickerNative-NVYPDSmf.mjs.map} +1 -1
  84. package/dist/chunks/{NcDialog-CXVaeWJf.mjs → NcDialog-DTbCOARa.mjs} +3 -3
  85. package/dist/chunks/{NcDialog-CXVaeWJf.mjs.map → NcDialog-DTbCOARa.mjs.map} +1 -1
  86. package/dist/chunks/{NcDialogButton.vue_vue_type_script_setup_true_lang-DSKWXzqG.mjs → NcDialogButton.vue_vue_type_script_setup_true_lang-DaU1luyJ.mjs} +3 -3
  87. package/dist/chunks/{NcDialogButton.vue_vue_type_script_setup_true_lang-DSKWXzqG.mjs.map → NcDialogButton.vue_vue_type_script_setup_true_lang-DaU1luyJ.mjs.map} +1 -1
  88. package/dist/chunks/{NcEmojiPicker-BGO0v-D5.mjs → NcEmojiPicker-DHXabPDE.mjs} +10 -10
  89. package/dist/chunks/{NcEmojiPicker-BGO0v-D5.mjs.map → NcEmojiPicker-DHXabPDE.mjs.map} +1 -1
  90. package/dist/chunks/{NcHeaderMenu-DmpJfS86.mjs → NcHeaderMenu-Bf_rW093.mjs} +2 -2
  91. package/dist/chunks/{NcHeaderMenu-DmpJfS86.mjs.map → NcHeaderMenu-Bf_rW093.mjs.map} +1 -1
  92. package/dist/chunks/{NcIconSvgWrapper-BOiCKv0b.mjs → NcIconSvgWrapper-CprKb_SE.mjs} +4 -4
  93. package/dist/chunks/{NcIconSvgWrapper-BOiCKv0b.mjs.map → NcIconSvgWrapper-CprKb_SE.mjs.map} +1 -1
  94. package/dist/chunks/{NcInputConfirmCancel-B7gAZ7U1.mjs → NcInputConfirmCancel-DCUXeKPz.mjs} +2 -2
  95. package/dist/chunks/{NcInputConfirmCancel-B7gAZ7U1.mjs.map → NcInputConfirmCancel-DCUXeKPz.mjs.map} +1 -1
  96. package/dist/chunks/{NcInputField-DH5ybroK.mjs → NcInputField-BZWRHkmQ.mjs} +3 -3
  97. package/dist/chunks/{NcInputField-DH5ybroK.mjs.map → NcInputField-BZWRHkmQ.mjs.map} +1 -1
  98. package/dist/chunks/{NcListItem-50hUlVlb.mjs → NcListItem-7BHAmqB0.mjs} +5 -5
  99. package/dist/chunks/{NcListItem-50hUlVlb.mjs.map → NcListItem-7BHAmqB0.mjs.map} +1 -1
  100. package/dist/chunks/{NcListItemIcon-BGEA45de.mjs → NcListItemIcon-gkuv5FT8.mjs} +6 -4
  101. package/dist/chunks/{NcListItemIcon-BGEA45de.mjs.map → NcListItemIcon-gkuv5FT8.mjs.map} +1 -1
  102. package/dist/chunks/NcMentionBubble.vue_vue_type_style_index_0_scoped_25f4d6e1_lang-aMwzB20D.mjs +16 -0
  103. package/dist/chunks/NcMentionBubble.vue_vue_type_style_index_0_scoped_25f4d6e1_lang-aMwzB20D.mjs.map +1 -0
  104. package/dist/chunks/{NcModal-CWRw1hyF.mjs → NcModal-CX28vCtF.mjs} +5 -5
  105. package/dist/chunks/{NcModal-CWRw1hyF.mjs.map → NcModal-CX28vCtF.mjs.map} +1 -1
  106. package/dist/chunks/{NcNoteCard-DmhVICGO.mjs → NcNoteCard-oGt6biyJ.mjs} +7 -6
  107. package/dist/chunks/{NcNoteCard-DmhVICGO.mjs.map → NcNoteCard-oGt6biyJ.mjs.map} +1 -1
  108. package/dist/chunks/NcPasswordField-w13_Lpyn.mjs +128 -0
  109. package/dist/chunks/NcPasswordField-w13_Lpyn.mjs.map +1 -0
  110. package/dist/chunks/{NcRelatedResourcesPanel-BUasditW.mjs → NcRelatedResourcesPanel-CpOgjo9h.mjs} +9 -9
  111. package/dist/chunks/{NcRelatedResourcesPanel-BUasditW.mjs.map → NcRelatedResourcesPanel-CpOgjo9h.mjs.map} +1 -1
  112. package/dist/chunks/{NcRichContenteditable-CGP8KN41.mjs → NcRichContenteditable-J9ILu0dF.mjs} +36 -29
  113. package/dist/chunks/NcRichContenteditable-J9ILu0dF.mjs.map +1 -0
  114. package/dist/chunks/{NcRichText-DDllQirJ.mjs → NcRichText-DvbC3aUR.mjs} +7 -9
  115. package/dist/chunks/{NcRichText-DDllQirJ.mjs.map → NcRichText-DvbC3aUR.mjs.map} +1 -1
  116. package/dist/chunks/{NcSelect-Bkg2rrDQ.mjs → NcSelect-D6XzjG4n.mjs} +2 -2
  117. package/dist/chunks/{NcSelect-Bkg2rrDQ.mjs.map → NcSelect-D6XzjG4n.mjs.map} +1 -1
  118. package/dist/chunks/{NcSelectTags-gJMICSS2.mjs → NcSelectTags-SNTGRj-n.mjs} +3 -3
  119. package/dist/chunks/{NcSelectTags-gJMICSS2.mjs.map → NcSelectTags-SNTGRj-n.mjs.map} +1 -1
  120. package/dist/chunks/{NcSelectUsers-mRdIiG7L.mjs → NcSelectUsers-D_eu9Uqb.mjs} +3 -3
  121. package/dist/chunks/{NcSelectUsers-mRdIiG7L.mjs.map → NcSelectUsers-D_eu9Uqb.mjs.map} +1 -1
  122. package/dist/chunks/{NcSettingsInputText-P8cEi0aP.mjs → NcSettingsInputText-D5N9XxkW.mjs} +2 -2
  123. package/dist/chunks/{NcSettingsInputText-P8cEi0aP.mjs.map → NcSettingsInputText-D5N9XxkW.mjs.map} +1 -1
  124. package/dist/chunks/{NcSettingsSection-DkDLjL_G.mjs → NcSettingsSection-93UQoiwe.mjs} +40 -65
  125. package/dist/chunks/NcSettingsSection-93UQoiwe.mjs.map +1 -0
  126. package/dist/chunks/{NcSettingsSelectGroup-BvYxv8aw.mjs → NcSettingsSelectGroup-Dr4IRbi_.mjs} +3 -3
  127. package/dist/chunks/{NcSettingsSelectGroup-BvYxv8aw.mjs.map → NcSettingsSelectGroup-Dr4IRbi_.mjs.map} +1 -1
  128. package/dist/chunks/{NcTextArea-D4hJqp6W.mjs → NcTextArea-CWqnvMl2.mjs} +3 -3
  129. package/dist/chunks/{NcTextArea-D4hJqp6W.mjs.map → NcTextArea-CWqnvMl2.mjs.map} +1 -1
  130. package/dist/chunks/{NcTextField.vue_vue_type_script_setup_true_lang-BggEO9Jn.mjs → NcTextField.vue_vue_type_script_setup_true_lang-B65hrkLW.mjs} +5 -5
  131. package/dist/chunks/{NcTextField.vue_vue_type_script_setup_true_lang-BggEO9Jn.mjs.map → NcTextField.vue_vue_type_script_setup_true_lang-B65hrkLW.mjs.map} +1 -1
  132. package/dist/chunks/NcThemeProvider.vue_vue_type_script_setup_true_lang-nUDJsDGI.mjs +30 -0
  133. package/dist/chunks/NcThemeProvider.vue_vue_type_script_setup_true_lang-nUDJsDGI.mjs.map +1 -0
  134. package/dist/chunks/{NcTimezonePicker.vue_vue_type_script_setup_true_lang-C7loAI0C.mjs → NcTimezonePicker.vue_vue_type_script_setup_true_lang-BoH1Njbp.mjs} +3 -3
  135. package/dist/chunks/{NcTimezonePicker.vue_vue_type_script_setup_true_lang-C7loAI0C.mjs.map → NcTimezonePicker.vue_vue_type_script_setup_true_lang-BoH1Njbp.mjs.map} +1 -1
  136. package/dist/chunks/{NcUserBubble-CKN4C4kP.mjs → NcUserBubble-BW0qu6mW.mjs} +2 -2
  137. package/dist/chunks/{NcUserBubble-CKN4C4kP.mjs.map → NcUserBubble-BW0qu6mW.mjs.map} +1 -1
  138. package/dist/chunks/{NcUserStatusIcon-BX9ILG2r.mjs → NcUserStatusIcon-DqQYA-EE.mjs} +2 -2
  139. package/dist/chunks/{NcUserStatusIcon-BX9ILG2r.mjs.map → NcUserStatusIcon-DqQYA-EE.mjs.map} +1 -1
  140. package/dist/chunks/{_l10n-B4AgnzNC.mjs → _l10n-tXci8WM1.mjs} +37 -43
  141. package/dist/chunks/_l10n-tXci8WM1.mjs.map +1 -0
  142. package/dist/chunks/{colors-fFK6HkHZ.mjs → colors-BaTbJhvg.mjs} +2 -2
  143. package/dist/chunks/{colors-fFK6HkHZ.mjs.map → colors-BaTbJhvg.mjs.map} +1 -1
  144. package/dist/chunks/constants-Bls5liKo.mjs +9 -0
  145. package/dist/chunks/constants-Bls5liKo.mjs.map +1 -0
  146. package/dist/chunks/{index-BF8joS9W.mjs → customPickerElements-CH9vlHLd.mjs} +46 -45
  147. package/dist/chunks/customPickerElements-CH9vlHLd.mjs.map +1 -0
  148. package/dist/chunks/{mdi-CWpCzTmH.mjs → mdi-D6fu5i4r.mjs} +10 -6
  149. package/dist/chunks/{mdi-CWpCzTmH.mjs.map → mdi-D6fu5i4r.mjs.map} +1 -1
  150. package/dist/chunks/{referencePickerModal-uLIBRHIc.mjs → referencePickerModal-DREcDQKg.mjs} +53 -59
  151. package/dist/chunks/referencePickerModal-DREcDQKg.mjs.map +1 -0
  152. package/dist/chunks/{usernameToColor-Bik5PNni.mjs → usernameToColor-2yV_Zdvb.mjs} +2 -2
  153. package/dist/chunks/{usernameToColor-Bik5PNni.mjs.map → usernameToColor-2yV_Zdvb.mjs.map} +1 -1
  154. package/dist/components/NcActionButton/NcActionButton.vue.d.ts +1 -1
  155. package/dist/components/NcActionButton/index.mjs +1 -1
  156. package/dist/components/NcActionButtonGroup/index.mjs +1 -1
  157. package/dist/components/NcActionInput/index.mjs +1 -1
  158. package/dist/components/NcActionText/index.mjs +1 -1
  159. package/dist/components/NcActionTextEditable/NcActionTextEditable.vue.d.ts +1 -1
  160. package/dist/components/NcActionTextEditable/index.mjs +1 -1
  161. package/dist/components/NcActions/index.mjs +1 -1
  162. package/dist/components/NcAppContent/NcAppContent.vue.d.ts +34 -33
  163. package/dist/components/NcAppContent/index.mjs +1 -1
  164. package/dist/components/NcAppNavigation/index.mjs +1 -1
  165. package/dist/components/NcAppNavigationCaption/index.mjs +1 -1
  166. package/dist/components/NcAppNavigationItem/index.mjs +1 -1
  167. package/dist/components/NcAppNavigationNewItem/index.mjs +1 -1
  168. package/dist/components/NcAppNavigationSearch/NcAppNavigationSearch.vue.d.ts +6 -6
  169. package/dist/components/NcAppNavigationSearch/index.mjs +1 -1
  170. package/dist/components/NcAppNavigationSettings/index.mjs +1 -1
  171. package/dist/components/NcAppNavigationToggle/index.mjs +1 -1
  172. package/dist/components/NcAppSettingsDialog/index.mjs +1 -1
  173. package/dist/components/NcAppSidebar/index.mjs +1 -1
  174. package/dist/components/NcAppSidebarTab/NcAppSidebarTab.vue.d.ts +3 -3
  175. package/dist/components/NcAppSidebarTab/index.mjs +1 -1
  176. package/dist/components/NcAvatar/index.mjs +1 -1
  177. package/dist/components/NcBreadcrumb/index.mjs +1 -1
  178. package/dist/components/NcBreadcrumbs/index.mjs +1 -1
  179. package/dist/components/NcButton/NcButton.vue.d.ts +1 -1
  180. package/dist/components/NcCheckboxRadioSwitch/index.mjs +1 -1
  181. package/dist/components/NcChip/index.mjs +1 -1
  182. package/dist/components/NcCollectionList/index.mjs +1 -1
  183. package/dist/components/NcColorPicker/index.mjs +1 -1
  184. package/dist/components/NcContent/index.mjs +1 -1
  185. package/dist/components/NcDashboardWidget/index.mjs +1 -1
  186. package/dist/components/NcDashboardWidgetItem/index.mjs +1 -1
  187. package/dist/components/NcDateTime/index.mjs +1 -1
  188. package/dist/components/NcDateTimePicker/NcDateTimePicker.vue.d.ts +1072 -4
  189. package/dist/components/NcDateTimePicker/index.mjs +1 -1
  190. package/dist/components/NcDateTimePickerNative/NcDateTimePickerNative.vue.d.ts +1 -1
  191. package/dist/components/NcDateTimePickerNative/index.mjs +1 -1
  192. package/dist/components/NcDialog/index.mjs +1 -1
  193. package/dist/components/NcDialogButton/NcDialogButton.vue.d.ts +1 -1
  194. package/dist/components/NcDialogButton/index.mjs +1 -1
  195. package/dist/components/NcEmojiPicker/index.mjs +1 -1
  196. package/dist/components/NcHeaderMenu/index.mjs +1 -1
  197. package/dist/components/NcIconSvgWrapper/NcIconSvgWrapper.vue.d.ts +1 -1
  198. package/dist/components/NcIconSvgWrapper/index.mjs +1 -1
  199. package/dist/components/NcInputField/NcInputField.vue.d.ts +1 -1
  200. package/dist/components/NcInputField/index.mjs +1 -1
  201. package/dist/components/NcListItem/index.mjs +1 -1
  202. package/dist/components/NcListItemIcon/index.mjs +1 -1
  203. package/dist/components/NcLoadingIcon/NcLoadingIcon.vue.d.ts +1 -1
  204. package/dist/components/NcModal/index.mjs +1 -1
  205. package/dist/components/NcNoteCard/index.mjs +1 -1
  206. package/dist/components/NcPasswordField/NcPasswordField.vue.d.ts +10 -7
  207. package/dist/components/NcPasswordField/index.mjs +1 -1
  208. package/dist/components/NcRelatedResourcesPanel/index.mjs +1 -1
  209. package/dist/components/NcRichContenteditable/NcAutoCompleteResult.vue.d.ts +4 -4
  210. package/dist/components/NcRichContenteditable/NcMentionBubble.vue.d.ts +4 -4
  211. package/dist/components/NcRichContenteditable/NcRichContenteditable.vue.d.ts +2 -2
  212. package/dist/components/NcRichContenteditable/index.mjs +1 -1
  213. package/dist/components/NcRichText/index.d.ts +3 -3
  214. package/dist/components/NcRichText/index.mjs +10 -10
  215. package/dist/components/NcSavingIndicatorIcon/NcSavingIndicatorIcon.vue.d.ts +1 -1
  216. package/dist/components/NcSelect/index.mjs +1 -1
  217. package/dist/components/NcSelectTags/index.mjs +1 -1
  218. package/dist/components/NcSelectUsers/index.mjs +1 -1
  219. package/dist/components/NcSettingsInputText/index.mjs +1 -1
  220. package/dist/components/NcSettingsSection/NcSettingsSection.vue.d.ts +40 -34
  221. package/dist/components/NcSettingsSection/index.d.ts +4 -0
  222. package/dist/components/NcSettingsSection/index.mjs +1 -1
  223. package/dist/components/NcSettingsSelectGroup/index.mjs +1 -1
  224. package/dist/components/NcTextArea/index.mjs +1 -1
  225. package/dist/components/NcTextField/NcTextField.vue.d.ts +6 -6
  226. package/dist/components/NcTextField/index.mjs +1 -1
  227. package/dist/components/NcThemeProvider/NcThemeProvider.vue.d.ts +27 -0
  228. package/dist/components/NcThemeProvider/index.d.ts +5 -0
  229. package/dist/components/NcThemeProvider/index.mjs +5 -0
  230. package/dist/components/NcThemeProvider/index.mjs.map +1 -0
  231. package/dist/components/NcTimezonePicker/index.mjs +1 -1
  232. package/dist/components/NcUserBubble/index.mjs +1 -1
  233. package/dist/components/NcUserStatusIcon/index.mjs +1 -1
  234. package/dist/components/index.d.ts +2 -1
  235. package/dist/composables/index.d.ts +1 -1
  236. package/dist/composables/useFormatDateTime/index.d.ts +40 -0
  237. package/dist/composables/useFormatDateTime/index.mjs +49 -0
  238. package/dist/composables/useFormatDateTime/index.mjs.map +1 -0
  239. package/dist/composables/useHotKey/index.mjs +13 -1
  240. package/dist/composables/useHotKey/index.mjs.map +1 -1
  241. package/dist/composables/useIsDarkTheme/constants.d.ts +7 -0
  242. package/dist/composables/useIsDarkTheme/index.d.ts +7 -4
  243. package/dist/composables/useIsDarkTheme/index.mjs +23 -6
  244. package/dist/composables/useIsDarkTheme/index.mjs.map +1 -1
  245. package/dist/functions/reference/customPickerElements.d.ts +48 -13
  246. package/dist/functions/reference/index.d.ts +8 -5
  247. package/dist/functions/reference/index.mjs +7 -7
  248. package/dist/functions/reference/providerHelper.d.ts +26 -15
  249. package/dist/functions/reference/referencePickerModal.d.ts +7 -4
  250. package/dist/functions/reference/widgets.d.ts +47 -28
  251. package/dist/functions/registerReference/index.d.ts +6 -2
  252. package/dist/functions/registerReference/index.mjs +4 -4
  253. package/dist/functions/usernameToColor/index.mjs +1 -1
  254. package/dist/index.mjs +71 -68
  255. package/dist/index.mjs.map +1 -1
  256. package/dist/utils/getAvatarUrl.d.ts +23 -1
  257. package/package.json +2 -2
  258. package/dist/assets/NcDateTimePicker-pmbCzZnb.css +0 -83
  259. package/dist/chunks/NcActionText-DJWBefhJ.mjs.map +0 -1
  260. package/dist/chunks/NcAppContent-B2qF2-YG.mjs.map +0 -1
  261. package/dist/chunks/NcAppSidebarTab-DG51ajic.mjs.map +0 -1
  262. package/dist/chunks/NcAvatar-BadoF6cb.mjs.map +0 -1
  263. package/dist/chunks/NcCollectionList-B2PzNHzw.mjs.map +0 -1
  264. package/dist/chunks/NcDateTime.vue_vue_type_script_setup_true_lang-C2VbacBQ.mjs +0 -31
  265. package/dist/chunks/NcDateTimePicker-BB--HQog.mjs.map +0 -1
  266. package/dist/chunks/NcMentionBubble.vue_vue_type_style_index_0_scoped_c29760cd_lang-CZdrlInz.mjs +0 -13
  267. package/dist/chunks/NcMentionBubble.vue_vue_type_style_index_0_scoped_c29760cd_lang-CZdrlInz.mjs.map +0 -1
  268. package/dist/chunks/NcPasswordField-DY-wDP9m.mjs +0 -211
  269. package/dist/chunks/NcPasswordField-DY-wDP9m.mjs.map +0 -1
  270. package/dist/chunks/NcRichContenteditable-CGP8KN41.mjs.map +0 -1
  271. package/dist/chunks/NcSettingsSection-DkDLjL_G.mjs.map +0 -1
  272. package/dist/chunks/_l10n-B4AgnzNC.mjs.map +0 -1
  273. package/dist/chunks/index-BF8joS9W.mjs.map +0 -1
  274. package/dist/chunks/referencePickerModal-uLIBRHIc.mjs.map +0 -1
  275. package/dist/chunks/useFormatDateTime-DmnI1ENQ.mjs +0 -87
  276. package/dist/chunks/useFormatDateTime-DmnI1ENQ.mjs.map +0 -1
  277. package/dist/composables/useFormatDateTime.d.ts +0 -84
  278. /package/dist/components/NcAppContent/{NcAppDetailsToggle.vue.d.ts → NcAppContentDetailsToggle.vue.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"NcAppNavigationSearch-CvHp92E-.mjs","sources":["../../src/components/NcAppNavigationSearch/NcAppNavigationSearch.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\n### Usage\n\n```vue\n<template>\n\t<div class=\"styleguide-wrapper\">\n\t\t<NcContent app-name=\"styleguide-app-navigation\" class=\"content-styleguidist\">\n\t\t\t<NcAppNavigation>\n\t\t\t\t<template #search>\n\t\t\t\t\t<NcAppNavigationSearch v-model=\"searchQuery\">\n\t\t\t\t\t\t<template #actions>\n\t\t\t\t\t\t\t<NcActions aria-label=\"Filters\">\n\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t<IconFilter :size=\"20\" />\n\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t<NcActionButton>\n\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t<IconAccount :size=\"20\" />\n\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\tFilter by name\n\t\t\t\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t\t\t\t<NcActionButton>\n\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t<IconCalendarAccount :size=\"20\" />\n\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\tFilter by year\n\t\t\t\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t\t\t</NcActions>\n\t\t\t\t\t\t\t<NcButton aria-label=\"Search globally\" variant=\"tertiary\">\n\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t<IconSearchGlobal :size=\"20\" />\n\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t</NcButton>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcAppNavigationSearch>\n\t\t\t\t</template>\n\t\t\t\t<template #list>\n\t\t\t\t\t<NcAppNavigationItem name=\"First navigation entry\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<IconStar :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcAppNavigationItem>\n\t\t\t\t\t<NcAppNavigationItem name=\"Second navigation entry\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<IconStar :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcAppNavigationItem>\n\t\t\t\t</template>\n\t\t\t</NcAppNavigation>\n\t\t\t<NcAppContent>\n\t\t\t\t<ul class=\"fake-content\">\n\t\t\t\t\t<li>Search query: {{ searchQuery }}</li>\n\t\t\t\t\t<li v-for=\"(item, index) in items\" :key=\"index\">\n\t\t\t\t\t\t{{ item }}\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t</NcAppContent>\n\t\t</NcContent>\n\t</div>\n</template>\n<script>\nimport IconAccount from 'vue-material-design-icons/Account.vue'\nimport IconCalendarAccount from 'vue-material-design-icons/CalendarAccount.vue'\nimport IconFilter from 'vue-material-design-icons/Filter.vue'\nimport IconSearchGlobal from 'vue-material-design-icons/CloudSearch.vue'\nimport IconStar from 'vue-material-design-icons/Star.vue'\n\nconst exampleItem = ['Mary', 'Patricia', 'James', 'Michael']\n\nexport default {\n\tcomponents: {\n\t\tIconAccount,\n\t\tIconCalendarAccount,\n\t\tIconFilter,\n\t\tIconSearchGlobal,\n\t\tIconStar,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tsearchQuery: '',\n\t\t}\n\t},\n\n\tcomputed: {\n\t\titems() {\n\t\t\treturn exampleItem.filter((item) => item.toLocaleLowerCase().includes(this.searchQuery.toLocaleLowerCase()))\n\t\t},\n\t},\n}\n</script>\n<style scoped>\n/* This styles just mock NcContent and NcAppContent */\n.content-styleguidist {\n\tposition: relative !important;\n\tmargin: 0 !important;\n\t/* prevent jumping */\n\tmin-height: 200px;\n}\n\n.content-styleguidist > * {\n\theight: auto;\n}\n\n.fake-content {\n\tpadding: var(--app-navigation-padding);\n\tpadding-top: calc(2 * var(--app-navigation-padding) + var(--default-clickable-area));\n}\n\n.styleguide-wrapper {\n\tbackground-color: var(--color-background-plain);\n\tpadding: var(--body-container-margin);\n}\n</style>\n```\n</docs>\n<template>\n\t<div class=\"app-navigation-search\"\n\t\t:class=\"{\n\t\t\t'app-navigation-search--has-actions': hasActions(),\n\t\t}\">\n\t\t<NcInputField ref=\"inputElement\"\n\t\t\tv-model=\"model\"\n\t\t\t:aria-label=\"label\"\n\t\t\tclass=\"app-navigation-search__input\"\n\t\t\tlabel-outside\n\t\t\t:placeholder=\"placeholder ?? label\"\n\t\t\tshow-trailing-button\n\t\t\t:trailing-button-label=\"t('Clear search')\"\n\t\t\ttype=\"search\"\n\t\t\t@trailing-button-click=\"onCloseSearch\">\n\t\t\t<template #trailing-button-icon>\n\t\t\t\t<IconClose :size=\"20\" />\n\t\t\t</template>\n\t\t</NcInputField>\n\t\t<div v-if=\"hasActions()\"\n\t\t\tref=\"actionsContainer\"\n\t\t\tclass=\"app-navigation-search__actions\"\n\t\t\t:class=\"{\n\t\t\t\t'app-navigation-search__actions--hidden': !showActions,\n\t\t\t\t'hidden-visually': hideActions,\n\t\t\t}\">\n\t\t\t<slot name=\"actions\" />\n\t\t</div>\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useFocusWithin } from '@vueuse/core'\nimport { ref, nextTick, useSlots, watch, useTemplateRef } from 'vue'\nimport { t } from '../../l10n.js'\n\nimport IconClose from 'vue-material-design-icons/Close.vue'\nimport NcInputField from '../NcInputField/NcInputField.vue'\n\ndefineProps({\n\t/**\n\t * Text used to label the search input\n\t */\n\tlabel: {\n\t\ttype: String,\n\t\tdefault: t('Search…'),\n\t},\n\n\t/**\n\t * Placeholder of the search input\n\t * By default the value of `label` is used.\n\t */\n\tplaceholder: {\n\t\ttype: String,\n\t\tdefault: null,\n\t},\n})\n\n/**\n * Current search input\n */\nconst model = defineModel<string>({ default: '' })\nconst slots = useSlots()\n\nconst inputElement = ref()\nconst { focused: inputHasFocus } = useFocusWithin(inputElement)\n\n/** Timeout used to define when the search input is fully expanded */\nconst transitionTimeout = Number.parseInt(window.getComputedStyle(window.document.body).getPropertyValue('--animation-quick')) || 100\n\nconst actionsContainer = useTemplateRef('actionsContainer')\nconst hasActions = () => !!slots.actions?.({})\nconst showActions = ref(true)\nconst timeoutId = ref()\n/** This is used to hide the actions after the transition is done */\nconst hideActions = ref(false)\nwatch(inputHasFocus, () => {\n\tshowActions.value = !inputHasFocus.value\n\twindow.clearTimeout(timeoutId.value)\n\tif (showActions.value) {\n\t\thideActions.value = false\n\t} else {\n\t\t// If the transition is done, we fully hide the actions visually\n\t\twindow.setTimeout(() => {\n\t\t\thideActions.value = !showActions.value\n\t\t}, transitionTimeout)\n\t}\n})\n\n/**\n * Handle close the search\n */\nfunction onCloseSearch() {\n\tmodel.value = ''\n\tif (hasActions()) {\n\t\tshowActions.value = true\n\t\tnextTick(() => actionsContainer.value?.querySelector('button')?.focus())\n\t}\n}\n</script>\n\n<style scoped lang=\"scss\">\n.app-navigation-search {\n\tdisplay: flex;\n\tgap: var(--app-navigation-padding);\n\tpadding: var(--app-navigation-padding);\n\n\t&--has-actions &__input {\n\t\tflex-grow: 1;\n\t\tz-index: 3;\n\t}\n\n\t&__actions {\n\t\tdisplay: flex;\n\t\tgap: var(--default-grid-baseline);\n\n\t\tmargin-inline-start: 0;\n\t\tmax-width: calc(2 * var(--default-clickable-area) + var(--default-grid-baseline));\n\t\tmax-height: var(--default-clickable-area);\n\n\t\ttransition: margin-inline-start var(--animation-quick);\n\n\t\t&--hidden {\n\t\t\tmargin-inline-start: calc(-1 * var(--default-clickable-area));\n\t\t}\n\t}\n\n\t&__input {\n\t\t// This is a fallback for legacy version (Nextcloud 29 and older) so that we keep the pill like design there\n\t\t--input-border-radius: var(--border-radius-element, var(--border-radius-pill)) !important;\n\t}\n}\n</style>\n"],"names":["_useModel"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsLM,UAAA,QAAQA,SAAmC,SAAA,YAAA;AACjD,UAAM,QAAQ,SAAS;AAEvB,UAAM,eAAe,IAAI;AACzB,UAAM,EAAE,SAAS,kBAAkB,eAAe,YAAY;AAG9D,UAAM,oBAAoB,OAAO,SAAS,OAAO,iBAAiB,OAAO,SAAS,IAAI,EAAE,iBAAiB,mBAAmB,CAAC,KAAK;AAE5H,UAAA,mBAAmB,eAAe,kBAAkB;AAC1D,UAAM,aAAa,MAAM,CAAC,CAAC,MAAM,UAAU,CAAA,CAAE;AACvC,UAAA,cAAc,IAAI,IAAI;AAC5B,UAAM,YAAY,IAAI;AAEhB,UAAA,cAAc,IAAI,KAAK;AAC7B,UAAM,eAAe,MAAM;AACd,kBAAA,QAAQ,CAAC,cAAc;AAC5B,aAAA,aAAa,UAAU,KAAK;AACnC,UAAI,YAAY,OAAO;AACtB,oBAAY,QAAQ;AAAA,MAAA,OACd;AAEN,eAAO,WAAW,MAAM;AACX,sBAAA,QAAQ,CAAC,YAAY;AAAA,WAC/B,iBAAiB;AAAA,MAAA;AAAA,IACrB,CACA;AAKD,aAAS,gBAAgB;AACxB,YAAM,QAAQ;AACd,UAAI,cAAc;AACjB,oBAAY,QAAQ;AACpB,iBAAS,MAAM,iBAAiB,OAAO,cAAc,QAAQ,GAAG,OAAO;AAAA,MAAA;AAAA,IACxE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NcAppNavigationSearch-DpjlWi9j.mjs","sources":["../../src/components/NcAppNavigationSearch/NcAppNavigationSearch.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\n### Usage\n\n```vue\n<template>\n\t<div class=\"styleguide-wrapper\">\n\t\t<NcContent app-name=\"styleguide-app-navigation\" class=\"content-styleguidist\">\n\t\t\t<NcAppNavigation>\n\t\t\t\t<template #search>\n\t\t\t\t\t<NcAppNavigationSearch v-model=\"searchQuery\">\n\t\t\t\t\t\t<template #actions>\n\t\t\t\t\t\t\t<NcActions aria-label=\"Filters\">\n\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t<IconFilter :size=\"20\" />\n\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t<NcActionButton>\n\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t<IconAccount :size=\"20\" />\n\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\tFilter by name\n\t\t\t\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t\t\t\t<NcActionButton>\n\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t<IconCalendarAccount :size=\"20\" />\n\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\tFilter by year\n\t\t\t\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t\t\t</NcActions>\n\t\t\t\t\t\t\t<NcButton aria-label=\"Search globally\" variant=\"tertiary\">\n\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t<IconSearchGlobal :size=\"20\" />\n\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t</NcButton>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcAppNavigationSearch>\n\t\t\t\t</template>\n\t\t\t\t<template #list>\n\t\t\t\t\t<NcAppNavigationItem name=\"First navigation entry\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<IconStar :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcAppNavigationItem>\n\t\t\t\t\t<NcAppNavigationItem name=\"Second navigation entry\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<IconStar :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcAppNavigationItem>\n\t\t\t\t</template>\n\t\t\t</NcAppNavigation>\n\t\t\t<NcAppContent>\n\t\t\t\t<ul class=\"fake-content\">\n\t\t\t\t\t<li>Search query: {{ searchQuery }}</li>\n\t\t\t\t\t<li v-for=\"(item, index) in items\" :key=\"index\">\n\t\t\t\t\t\t{{ item }}\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t</NcAppContent>\n\t\t</NcContent>\n\t</div>\n</template>\n<script>\nimport IconAccount from 'vue-material-design-icons/Account.vue'\nimport IconCalendarAccount from 'vue-material-design-icons/CalendarAccount.vue'\nimport IconFilter from 'vue-material-design-icons/Filter.vue'\nimport IconSearchGlobal from 'vue-material-design-icons/CloudSearch.vue'\nimport IconStar from 'vue-material-design-icons/Star.vue'\n\nconst exampleItem = ['Mary', 'Patricia', 'James', 'Michael']\n\nexport default {\n\tcomponents: {\n\t\tIconAccount,\n\t\tIconCalendarAccount,\n\t\tIconFilter,\n\t\tIconSearchGlobal,\n\t\tIconStar,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tsearchQuery: '',\n\t\t}\n\t},\n\n\tcomputed: {\n\t\titems() {\n\t\t\treturn exampleItem.filter((item) => item.toLocaleLowerCase().includes(this.searchQuery.toLocaleLowerCase()))\n\t\t},\n\t},\n}\n</script>\n<style scoped>\n/* This styles just mock NcContent and NcAppContent */\n.content-styleguidist {\n\tposition: relative !important;\n\tmargin: 0 !important;\n\t/* prevent jumping */\n\tmin-height: 200px;\n}\n\n.content-styleguidist > * {\n\theight: auto;\n}\n\n.fake-content {\n\tpadding: var(--app-navigation-padding);\n\tpadding-top: calc(2 * var(--app-navigation-padding) + var(--default-clickable-area));\n}\n\n.styleguide-wrapper {\n\tbackground-color: var(--color-background-plain);\n\tpadding: var(--body-container-margin);\n}\n</style>\n```\n</docs>\n<template>\n\t<div class=\"app-navigation-search\"\n\t\t:class=\"{\n\t\t\t'app-navigation-search--has-actions': hasActions(),\n\t\t}\">\n\t\t<NcInputField ref=\"inputElement\"\n\t\t\tv-model=\"model\"\n\t\t\t:aria-label=\"label\"\n\t\t\tclass=\"app-navigation-search__input\"\n\t\t\tlabel-outside\n\t\t\t:placeholder=\"placeholder ?? label\"\n\t\t\tshow-trailing-button\n\t\t\t:trailing-button-label=\"t('Clear search')\"\n\t\t\ttype=\"search\"\n\t\t\t@trailing-button-click=\"onCloseSearch\">\n\t\t\t<template #trailing-button-icon>\n\t\t\t\t<IconClose :size=\"20\" />\n\t\t\t</template>\n\t\t</NcInputField>\n\t\t<div v-if=\"hasActions()\"\n\t\t\tref=\"actionsContainer\"\n\t\t\tclass=\"app-navigation-search__actions\"\n\t\t\t:class=\"{\n\t\t\t\t'app-navigation-search__actions--hidden': !showActions,\n\t\t\t\t'hidden-visually': hideActions,\n\t\t\t}\">\n\t\t\t<slot name=\"actions\" />\n\t\t</div>\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useFocusWithin } from '@vueuse/core'\nimport { ref, nextTick, useSlots, watch, useTemplateRef } from 'vue'\nimport { t } from '../../l10n.js'\n\nimport IconClose from 'vue-material-design-icons/Close.vue'\nimport NcInputField from '../NcInputField/NcInputField.vue'\n\ndefineProps({\n\t/**\n\t * Text used to label the search input\n\t */\n\tlabel: {\n\t\ttype: String,\n\t\tdefault: t('Search…'),\n\t},\n\n\t/**\n\t * Placeholder of the search input\n\t * By default the value of `label` is used.\n\t */\n\tplaceholder: {\n\t\ttype: String,\n\t\tdefault: null,\n\t},\n})\n\n/**\n * Current search input\n */\nconst model = defineModel<string>({ default: '' })\nconst slots = useSlots()\n\nconst inputElement = ref()\nconst { focused: inputHasFocus } = useFocusWithin(inputElement)\n\n/** Timeout used to define when the search input is fully expanded */\nconst transitionTimeout = Number.parseInt(window.getComputedStyle(window.document.body).getPropertyValue('--animation-quick')) || 100\n\nconst actionsContainer = useTemplateRef('actionsContainer')\nconst hasActions = () => !!slots.actions?.({})\nconst showActions = ref(true)\nconst timeoutId = ref()\n/** This is used to hide the actions after the transition is done */\nconst hideActions = ref(false)\nwatch(inputHasFocus, () => {\n\tshowActions.value = !inputHasFocus.value\n\twindow.clearTimeout(timeoutId.value)\n\tif (showActions.value) {\n\t\thideActions.value = false\n\t} else {\n\t\t// If the transition is done, we fully hide the actions visually\n\t\twindow.setTimeout(() => {\n\t\t\thideActions.value = !showActions.value\n\t\t}, transitionTimeout)\n\t}\n})\n\n/**\n * Handle close the search\n */\nfunction onCloseSearch() {\n\tmodel.value = ''\n\tif (hasActions()) {\n\t\tshowActions.value = true\n\t\tnextTick(() => actionsContainer.value?.querySelector('button')?.focus())\n\t}\n}\n</script>\n\n<style scoped lang=\"scss\">\n.app-navigation-search {\n\tdisplay: flex;\n\tgap: var(--app-navigation-padding);\n\tpadding: var(--app-navigation-padding);\n\n\t&--has-actions &__input {\n\t\tflex-grow: 1;\n\t\tz-index: 3;\n\t}\n\n\t&__actions {\n\t\tdisplay: flex;\n\t\tgap: var(--default-grid-baseline);\n\n\t\tmargin-inline-start: 0;\n\t\tmax-width: calc(2 * var(--default-clickable-area) + var(--default-grid-baseline));\n\t\tmax-height: var(--default-clickable-area);\n\n\t\ttransition: margin-inline-start var(--animation-quick);\n\n\t\t&--hidden {\n\t\t\tmargin-inline-start: calc(-1 * var(--default-clickable-area));\n\t\t}\n\t}\n\n\t&__input {\n\t\t// This is a fallback for legacy version (Nextcloud 29 and older) so that we keep the pill like design there\n\t\t--input-border-radius: var(--border-radius-element, var(--border-radius-pill)) !important;\n\t}\n}\n</style>\n"],"names":["_useModel"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsLM,UAAA,QAAQA,SAAmC,SAAA,YAAA;AACjD,UAAM,QAAQ,SAAS;AAEvB,UAAM,eAAe,IAAI;AACzB,UAAM,EAAE,SAAS,kBAAkB,eAAe,YAAY;AAG9D,UAAM,oBAAoB,OAAO,SAAS,OAAO,iBAAiB,OAAO,SAAS,IAAI,EAAE,iBAAiB,mBAAmB,CAAC,KAAK;AAE5H,UAAA,mBAAmB,eAAe,kBAAkB;AAC1D,UAAM,aAAa,MAAM,CAAC,CAAC,MAAM,UAAU,CAAA,CAAE;AACvC,UAAA,cAAc,IAAI,IAAI;AAC5B,UAAM,YAAY,IAAI;AAEhB,UAAA,cAAc,IAAI,KAAK;AAC7B,UAAM,eAAe,MAAM;AACd,kBAAA,QAAQ,CAAC,cAAc;AAC5B,aAAA,aAAa,UAAU,KAAK;AACnC,UAAI,YAAY,OAAO;AACtB,oBAAY,QAAQ;AAAA,MAAA,OACd;AAEN,eAAO,WAAW,MAAM;AACX,sBAAA,QAAQ,CAAC,YAAY;AAAA,WAC/B,iBAAiB;AAAA,MAAA;AAAA,IACrB,CACA;AAKD,aAAS,gBAAgB;AACxB,YAAM,QAAQ;AACd,UAAI,cAAc;AACjB,oBAAY,QAAQ;AACpB,iBAAS,MAAM,iBAAiB,OAAO,cAAc,QAAQ,GAAG,OAAO;AAAA,MAAA;AAAA,IACxE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,7 +2,7 @@ import '../assets/NcAppNavigationSettings-B0I7HR1V.css';
2
2
  import { createElementBlock, openBlock, mergeProps, createElementVNode, createCommentVNode, toDisplayString, defineComponent, ref, useTemplateRef, computed, normalizeClass, createVNode, unref, withCtx, createTextVNode, Transition, withDirectives, renderSlot, vShow } from "vue";
3
3
  import { onClickOutside } from "@vueuse/core";
4
4
  import { c as createElementId } from "./createElementId-DhjFt1I9.mjs";
5
- import { r as register, a as t } from "./_l10n-B4AgnzNC.mjs";
5
+ import { r as register, a as t } from "./_l10n-tXci8WM1.mjs";
6
6
  import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
7
7
  import { N as NcButton } from "./NcButton-yN4vYgXb.mjs";
8
8
  register();
@@ -135,4 +135,4 @@ const NcAppNavigationSettings = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssM
135
135
  export {
136
136
  NcAppNavigationSettings as N
137
137
  };
138
- //# sourceMappingURL=NcAppNavigationSettings-iJ84_lwr.mjs.map
138
+ //# sourceMappingURL=NcAppNavigationSettings-DGATbBqy.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NcAppNavigationSettings-iJ84_lwr.mjs","sources":["../../node_modules/vue-material-design-icons/Cog.vue","../../src/components/NcAppNavigationSettings/NcAppNavigationSettings.vue"],"sourcesContent":["<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon cog-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=\"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CogIcon\",\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>","<!--\n - SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script setup lang=\"ts\">\nimport type { Slot } from 'vue'\nimport { onClickOutside } from '@vueuse/core'\nimport { computed, ref, useTemplateRef } from 'vue'\nimport { createElementId } from '../../utils/createElementId.js'\nimport { t } from '../../l10n.js'\n\nimport IconCog from 'vue-material-design-icons/Cog.vue'\nimport NcButton from '../NcButton/NcButton.vue'\n\nconst {\n\texcludeClickOutsideSelectors = [],\n\tname = t('Settings'),\n} = defineProps<{\n\t/**\n\t * A query-selector or an array of query-selectors\n\t * to be ignored when clicking outside an element\n\t */\n\texcludeClickOutsideSelectors?: string | string[]\n\n\t/**\n\t * Text of the button\n\t * @default 'Settings'\n\t */\n\tname?: string\n}>()\n\ndefineSlots<{\n\t/**\n\t * Content of the accordion button (the settings).\n\t */\n\tdefault: Slot\n}>()\n\nconst contentId = createElementId()\n/**\n * Are the settings open\n */\nconst open = ref(false)\n\n// Close the menu when the user clicks outside of the container\nconst container = useTemplateRef('wrapperElement')\nconst ignore = computed(() => Array.isArray(excludeClickOutsideSelectors)\n\t? excludeClickOutsideSelectors\n\t: excludeClickOutsideSelectors.split(' '),\n)\nonClickOutside(container, () => { open.value = false }, { ignore })\n</script>\n\n<template>\n\t<div ref=\"wrapperElement\" :class=\"$style.container\">\n\t\t<div :class=\"$style.header\">\n\t\t\t<NcButton :aria-controls=\"contentId\"\n\t\t\t\t:aria-expanded=\"open ? 'true' : 'false'\"\n\t\t\t\t:class=\"$style.button\"\n\t\t\t\talignment=\"start\"\n\t\t\t\tvariant=\"tertiary\"\n\t\t\t\twide\n\t\t\t\t@click=\"open = !open\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<IconCog :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ name }}\n\t\t\t</NcButton>\n\t\t</div>\n\t\t<Transition :enter-active-class=\"$style.animationActive\"\n\t\t\t:leave-active-class=\"$style.animationActive\"\n\t\t\t:enter-from-class=\"$style.animationStop\"\n\t\t\t:leave-to-class=\"$style.animationStop\">\n\t\t\t<div v-show=\"open\"\n\t\t\t\t:id=\"contentId\"\n\t\t\t\t:class=\"$style.content\">\n\t\t\t\t<slot />\n\t\t\t</div>\n\t\t</Transition>\n\t</div>\n</template>\n\n<style module>\n.container {\n\tmargin-top: auto;\n\tpadding: var(--default-grid-baseline);\n}\n\n.header {\n\tmargin-block: 0 var(--default-grid-baseline);\n\tmargin-inline: var(--default-grid-baseline);\n}\n\n/* Overwrite the padding to match NcAppNavigationItem */\n.button {\n\tpadding-left: 0 !important;\n\tpadding-inline-end: calc((var(--default-clickable-area) - 16px) / 2) !important;\n\n\t:global(.button-vue__text) {\n\t\tfont-weight: normal;\n\t}\n}\n\n.content {\n\tdisplay: block;\n\tpadding: 10px;\n\n\t/* prevent scrolled contents from stopping too early */\n\tmargin-bottom: calc(-1 * var(--default-grid-baseline));\n\n\t/* restrict height of settings and make scrollable */\n\tmax-height: 300px;\n\toverflow-y: auto;\n}\n\n.animationActive {\n\ttransition-duration: var(--animation-slow);\n\ttransition-property: max-height, padding;\n\toverflow-y: hidden !important;\n}\n\n.animationStop {\n\tmax-height: 0 !important;\n\tpadding: 0 10px !important;\n}\n</style>\n"],"names":["_sfc_main","_hoisted_1","_createElementBlock","_mergeProps","_createElementVNode","_createCommentVNode","container"],"mappings":";;;;;;;AAoBA,MAAKA,cAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO,CAAC,OAAO;AAAA,EACf,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM;AAAA,IACP;AAAA,IACD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IACD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AACF;AApCA,MAAAC,eAAA,CAAA,eAAA,YAAA;AAAA,MAAA,aAAA,CAAA,QAAA,SAAA,QAAA;AAYY,MAAA,aAAA,EAAA,GAAE,84BAA64B;qBAZ35B,KAAA,EAAA;;sBACEC,mBAeO,QAfPC,WAAc,KAAM,QAAA;AAAA,IACb,eAAa,OAAK,QAAA,OAAA;AAAA,IAClB,cAAY,OAAK;AAAA,IAClB,OAAM;AAAA,IACN,MAAK;AAAA,IACJ,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,YAAE,KAAK,MAAA,SAAU,MAAM;AAAA;kBACjCD,mBAQM,OAAA;AAAA,MARA,MAAM,OAAS;AAAA,MAChB,OAAM;AAAA,MACL,OAAO,OAAI;AAAA,MACX,QAAQ,OAAI;AAAA,MACb,SAAQ;AAAA;MACXE,mBAEO,QAFP,YAEO;AAAA,QADQ,OAAK,sBAAlBF,mBAAuC,SAb/C,4BAa+B,OAAK,KAAA,GAAA,CAAA,KAbpCG,mBAAA,IAAA,IAAA;AAAA;IAAA,GAAA,GAAA,UAAA;AAAA,EAAA,GAAA,IAAAJ,YAAA;;;;;;;;;;;ACuCA,UAAM,YAAY,gBAAgB;AAI5B,UAAA,OAAO,IAAI,KAAK;AAGhB,UAAAK,aAAY,eAAe,gBAAgB;AACjD,UAAM,SAAS;AAAA,MAAS,MAAM,MAAM,QAAQ,QAA4B,4BAAA,IACrE,QAAA,+BACA,QAA4B,6BAAC,MAAM,GAAG;AAAA,IACzC;AACA,mBAAeA,YAAW,MAAM;AAAE,WAAK,QAAQ;AAAA,IAAA,GAAS,EAAE,OAAA,CAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"NcAppNavigationSettings-DGATbBqy.mjs","sources":["../../node_modules/vue-material-design-icons/Cog.vue","../../src/components/NcAppNavigationSettings/NcAppNavigationSettings.vue"],"sourcesContent":["<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon cog-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=\"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CogIcon\",\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>","<!--\n - SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script setup lang=\"ts\">\nimport type { Slot } from 'vue'\nimport { onClickOutside } from '@vueuse/core'\nimport { computed, ref, useTemplateRef } from 'vue'\nimport { createElementId } from '../../utils/createElementId.js'\nimport { t } from '../../l10n.js'\n\nimport IconCog from 'vue-material-design-icons/Cog.vue'\nimport NcButton from '../NcButton/NcButton.vue'\n\nconst {\n\texcludeClickOutsideSelectors = [],\n\tname = t('Settings'),\n} = defineProps<{\n\t/**\n\t * A query-selector or an array of query-selectors\n\t * to be ignored when clicking outside an element\n\t */\n\texcludeClickOutsideSelectors?: string | string[]\n\n\t/**\n\t * Text of the button\n\t * @default 'Settings'\n\t */\n\tname?: string\n}>()\n\ndefineSlots<{\n\t/**\n\t * Content of the accordion button (the settings).\n\t */\n\tdefault: Slot\n}>()\n\nconst contentId = createElementId()\n/**\n * Are the settings open\n */\nconst open = ref(false)\n\n// Close the menu when the user clicks outside of the container\nconst container = useTemplateRef('wrapperElement')\nconst ignore = computed(() => Array.isArray(excludeClickOutsideSelectors)\n\t? excludeClickOutsideSelectors\n\t: excludeClickOutsideSelectors.split(' '),\n)\nonClickOutside(container, () => { open.value = false }, { ignore })\n</script>\n\n<template>\n\t<div ref=\"wrapperElement\" :class=\"$style.container\">\n\t\t<div :class=\"$style.header\">\n\t\t\t<NcButton :aria-controls=\"contentId\"\n\t\t\t\t:aria-expanded=\"open ? 'true' : 'false'\"\n\t\t\t\t:class=\"$style.button\"\n\t\t\t\talignment=\"start\"\n\t\t\t\tvariant=\"tertiary\"\n\t\t\t\twide\n\t\t\t\t@click=\"open = !open\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<IconCog :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ name }}\n\t\t\t</NcButton>\n\t\t</div>\n\t\t<Transition :enter-active-class=\"$style.animationActive\"\n\t\t\t:leave-active-class=\"$style.animationActive\"\n\t\t\t:enter-from-class=\"$style.animationStop\"\n\t\t\t:leave-to-class=\"$style.animationStop\">\n\t\t\t<div v-show=\"open\"\n\t\t\t\t:id=\"contentId\"\n\t\t\t\t:class=\"$style.content\">\n\t\t\t\t<slot />\n\t\t\t</div>\n\t\t</Transition>\n\t</div>\n</template>\n\n<style module>\n.container {\n\tmargin-top: auto;\n\tpadding: var(--default-grid-baseline);\n}\n\n.header {\n\tmargin-block: 0 var(--default-grid-baseline);\n\tmargin-inline: var(--default-grid-baseline);\n}\n\n/* Overwrite the padding to match NcAppNavigationItem */\n.button {\n\tpadding-left: 0 !important;\n\tpadding-inline-end: calc((var(--default-clickable-area) - 16px) / 2) !important;\n\n\t:global(.button-vue__text) {\n\t\tfont-weight: normal;\n\t}\n}\n\n.content {\n\tdisplay: block;\n\tpadding: 10px;\n\n\t/* prevent scrolled contents from stopping too early */\n\tmargin-bottom: calc(-1 * var(--default-grid-baseline));\n\n\t/* restrict height of settings and make scrollable */\n\tmax-height: 300px;\n\toverflow-y: auto;\n}\n\n.animationActive {\n\ttransition-duration: var(--animation-slow);\n\ttransition-property: max-height, padding;\n\toverflow-y: hidden !important;\n}\n\n.animationStop {\n\tmax-height: 0 !important;\n\tpadding: 0 10px !important;\n}\n</style>\n"],"names":["_sfc_main","_hoisted_1","_createElementBlock","_mergeProps","_createElementVNode","_createCommentVNode","container"],"mappings":";;;;;;;AAoBA,MAAKA,cAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO,CAAC,OAAO;AAAA,EACf,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM;AAAA,IACP;AAAA,IACD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IACD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AACF;AApCA,MAAAC,eAAA,CAAA,eAAA,YAAA;AAAA,MAAA,aAAA,CAAA,QAAA,SAAA,QAAA;AAYY,MAAA,aAAA,EAAA,GAAE,84BAA64B;qBAZ35B,KAAA,EAAA;;sBACEC,mBAeO,QAfPC,WAAc,KAAM,QAAA;AAAA,IACb,eAAa,OAAK,QAAA,OAAA;AAAA,IAClB,cAAY,OAAK;AAAA,IAClB,OAAM;AAAA,IACN,MAAK;AAAA,IACJ,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,YAAE,KAAK,MAAA,SAAU,MAAM;AAAA;kBACjCD,mBAQM,OAAA;AAAA,MARA,MAAM,OAAS;AAAA,MAChB,OAAM;AAAA,MACL,OAAO,OAAI;AAAA,MACX,QAAQ,OAAI;AAAA,MACb,SAAQ;AAAA;MACXE,mBAEO,QAFP,YAEO;AAAA,QADQ,OAAK,sBAAlBF,mBAAuC,SAb/C,4BAa+B,OAAK,KAAA,GAAA,CAAA,KAbpCG,mBAAA,IAAA,IAAA;AAAA;IAAA,GAAA,GAAA,UAAA;AAAA,EAAA,GAAA,IAAAJ,YAAA;;;;;;;;;;;ACuCA,UAAM,YAAY,gBAAgB;AAI5B,UAAA,OAAO,IAAI,KAAK;AAGhB,UAAAK,aAAY,eAAe,gBAAgB;AACjD,UAAM,SAAS;AAAA,MAAS,MAAM,MAAM,QAAQ,QAA4B,4BAAA,IACrE,QAAA,+BACA,QAA4B,6BAAC,MAAM,GAAG;AAAA,IACzC;AACA,mBAAeA,YAAW,MAAM;AAAE,WAAK,QAAQ;AAAA,IAAA,GAAS,EAAE,OAAA,CAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","x_google_ignoreList":[0]}
@@ -2,7 +2,7 @@ import '../assets/NcAppNavigationToggle-M0oDbwAS.css';
2
2
  import { createElementBlock, openBlock, mergeProps, createElementVNode, createCommentVNode, toDisplayString, defineComponent, useModel, computed, createVNode, unref, withCtx, createBlock } from "vue";
3
3
  import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
4
4
  import { N as NcButton } from "./NcButton-yN4vYgXb.mjs";
5
- import { r as register, a as t } from "./_l10n-B4AgnzNC.mjs";
5
+ import { r as register, a as t } from "./_l10n-tXci8WM1.mjs";
6
6
  const _sfc_main$2 = {
7
7
  name: "MenuIcon",
8
8
  emits: ["click"],
@@ -134,4 +134,4 @@ const NcAppNavigationToggle = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeI
134
134
  export {
135
135
  NcAppNavigationToggle as N
136
136
  };
137
- //# sourceMappingURL=NcAppNavigationToggle-D3UGt5TV.mjs.map
137
+ //# sourceMappingURL=NcAppNavigationToggle-D9pouVyS.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NcAppNavigationToggle-D3UGt5TV.mjs","sources":["../../node_modules/vue-material-design-icons/Menu.vue","../../node_modules/vue-material-design-icons/MenuOpen.vue","../../src/components/NcAppNavigationToggle/NcAppNavigationToggle.vue"],"sourcesContent":["<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon menu-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=\"M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"MenuIcon\",\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 <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon menu-open-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=\"M21,15.61L19.59,17L14.58,12L19.59,7L21,8.39L17.44,12L21,15.61M3,6H16V8H3V6M3,13V11H13V13H3M3,18V16H16V18H3Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"MenuOpenIcon\",\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>","<!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n -->\n<!--\n - This component is only used for the NcAppNavigation component and not exported otherwise.\n-->\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport MenuIcon from 'vue-material-design-icons/Menu.vue'\nimport MenuOpenIcon from 'vue-material-design-icons/MenuOpen.vue'\nimport NcButton from '../NcButton/index.ts'\nimport { t } from '../../l10n.js'\n\n/**\n * Tracks whether the toggle has been clicked or not.\n * If it has been clicked, switches between the different MenuIcons\n * and emits a boolean indicating its opened status\n */\nconst open = defineModel<boolean>('open', { required: true })\n\nconst title = computed(() => open.value ? t('Close navigation') : t('Open navigation'))\n\n/**\n * Once the toggle has been clicked, emits the toggle status\n * so parent components can gauge the status of the navigation button\n */\nfunction toggleNavigation(): void {\n\topen.value = !open.value\n}\n</script>\n\n<template>\n\t<div class=\"app-navigation-toggle-wrapper\">\n\t\t<NcButton class=\"app-navigation-toggle\"\n\t\t\taria-controls=\"app-navigation-vue\"\n\t\t\t:aria-expanded=\"open ? 'true' : 'false'\"\n\t\t\t:aria-label=\"title\"\n\t\t\t:title\n\t\t\tvariant=\"tertiary\"\n\t\t\t@click=\"toggleNavigation\">\n\t\t\t<template #icon>\n\t\t\t\t<MenuOpenIcon v-if=\"open\" :size=\"20\" />\n\t\t\t\t<MenuIcon v-else :size=\"20\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t</div>\n</template>\n\n<style scoped lang=\"scss\">\n.app-navigation-toggle-wrapper {\n\tposition: absolute;\n\ttop: var(--app-navigation-padding);\n\tinset-inline-end: calc(0px - var(--app-navigation-padding));\n\tmargin-inline-end: calc(-1 * var(--default-clickable-area));\n}\n\nbutton.app-navigation-toggle {\n\tbackground-color: var(--color-main-background);\n}\n</style>\n"],"names":["_sfc_main","_hoisted_1","_hoisted_2","_hoisted_3","_createElementBlock","_mergeProps","_createElementVNode","_hoisted_4","_createCommentVNode","_useModel"],"mappings":";;;;AAoBA,MAAKA,cAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO,CAAC,OAAO;AAAA,EACf,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM;AAAA,IACP;AAAA,IACD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IACD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AACF;AApCA,MAAAC,eAAA,CAAA,eAAA,YAAA;AAAA,MAAAC,eAAA,CAAA,QAAA,SAAA,QAAA;AAYY,MAAAC,eAAA,EAAA,GAAE,iDAAgD;uBAZ9D,KAAA,EAAA;;sBACEC,mBAeO,QAfPC,WAAc,KAAM,QAAA;AAAA,IACb,eAAa,OAAK,QAAA,OAAA;AAAA,IAClB,cAAY,OAAK;AAAA,IAClB,OAAM;AAAA,IACN,MAAK;AAAA,IACJ,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,YAAE,KAAK,MAAA,SAAU,MAAM;AAAA;kBACjCD,mBAQM,OAAA;AAAA,MARA,MAAM,OAAS;AAAA,MAChB,OAAM;AAAA,MACL,OAAO,OAAI;AAAA,MACX,QAAQ,OAAI;AAAA,MACb,SAAQ;AAAA;MACXE,mBAEO,QAFPH,cAEO;AAAA,QADQ,OAAK,sBAAlBC,mBAAuC,SAb/CG,8BAa+B,OAAK,KAAA,GAAA,CAAA,KAbpCC,mBAAA,IAAA,IAAA;AAAA;IAAA,GAAA,GAAAN,YAAA;AAAA,EAAA,GAAA,IAAAD,YAAA;;;ACoBA,MAAKD,cAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO,CAAC,OAAO;AAAA,EACf,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM;AAAA,IACP;AAAA,IACD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IACD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AACF;AApCA,MAAAC,eAAA,CAAA,eAAA,YAAA;AAAA,MAAA,aAAA,CAAA,QAAA,SAAA,QAAA;AAYY,MAAA,aAAA,EAAA,GAAE,8GAA6G;qBAZ3H,KAAA,EAAA;;sBACEG,mBAeO,QAfPC,WAAc,KAAM,QAAA;AAAA,IACb,eAAa,OAAK,QAAA,OAAA;AAAA,IAClB,cAAY,OAAK;AAAA,IAClB,OAAM;AAAA,IACN,MAAK;AAAA,IACJ,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,YAAE,KAAK,MAAA,SAAU,MAAM;AAAA;kBACjCD,mBAQM,OAAA;AAAA,MARA,MAAM,OAAS;AAAA,MAChB,OAAM;AAAA,MACL,OAAO,OAAI;AAAA,MACX,QAAQ,OAAI;AAAA,MACb,SAAQ;AAAA;MACXE,mBAEO,QAFP,YAEO;AAAA,QADQ,OAAK,sBAAlBF,mBAAuC,SAb/C,4BAa+B,OAAK,KAAA,GAAA,CAAA,KAbpCI,mBAAA,IAAA,IAAA;AAAA;IAAA,GAAA,GAAA,UAAA;AAAA,EAAA,GAAA,IAAAP,YAAA;;;;;;;;;;;;;ACoBM,UAAA,OAAOQ,SAAqB,SAAA,MAA0B;AAEtD,UAAA,QAAQ,SAAS,MAAM,KAAK,QAAQ,EAAE,kBAAkB,IAAI,EAAE,iBAAiB,CAAC;AAMtF,aAAS,mBAAyB;AAC5B,WAAA,QAAQ,CAAC,KAAK;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"NcAppNavigationToggle-D9pouVyS.mjs","sources":["../../node_modules/vue-material-design-icons/Menu.vue","../../node_modules/vue-material-design-icons/MenuOpen.vue","../../src/components/NcAppNavigationToggle/NcAppNavigationToggle.vue"],"sourcesContent":["<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon menu-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=\"M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"MenuIcon\",\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 <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon menu-open-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=\"M21,15.61L19.59,17L14.58,12L19.59,7L21,8.39L17.44,12L21,15.61M3,6H16V8H3V6M3,13V11H13V13H3M3,18V16H16V18H3Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"MenuOpenIcon\",\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>","<!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n -->\n<!--\n - This component is only used for the NcAppNavigation component and not exported otherwise.\n-->\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport MenuIcon from 'vue-material-design-icons/Menu.vue'\nimport MenuOpenIcon from 'vue-material-design-icons/MenuOpen.vue'\nimport NcButton from '../NcButton/index.ts'\nimport { t } from '../../l10n.js'\n\n/**\n * Tracks whether the toggle has been clicked or not.\n * If it has been clicked, switches between the different MenuIcons\n * and emits a boolean indicating its opened status\n */\nconst open = defineModel<boolean>('open', { required: true })\n\nconst title = computed(() => open.value ? t('Close navigation') : t('Open navigation'))\n\n/**\n * Once the toggle has been clicked, emits the toggle status\n * so parent components can gauge the status of the navigation button\n */\nfunction toggleNavigation(): void {\n\topen.value = !open.value\n}\n</script>\n\n<template>\n\t<div class=\"app-navigation-toggle-wrapper\">\n\t\t<NcButton class=\"app-navigation-toggle\"\n\t\t\taria-controls=\"app-navigation-vue\"\n\t\t\t:aria-expanded=\"open ? 'true' : 'false'\"\n\t\t\t:aria-label=\"title\"\n\t\t\t:title\n\t\t\tvariant=\"tertiary\"\n\t\t\t@click=\"toggleNavigation\">\n\t\t\t<template #icon>\n\t\t\t\t<MenuOpenIcon v-if=\"open\" :size=\"20\" />\n\t\t\t\t<MenuIcon v-else :size=\"20\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t</div>\n</template>\n\n<style scoped lang=\"scss\">\n.app-navigation-toggle-wrapper {\n\tposition: absolute;\n\ttop: var(--app-navigation-padding);\n\tinset-inline-end: calc(0px - var(--app-navigation-padding));\n\tmargin-inline-end: calc(-1 * var(--default-clickable-area));\n}\n\nbutton.app-navigation-toggle {\n\tbackground-color: var(--color-main-background);\n}\n</style>\n"],"names":["_sfc_main","_hoisted_1","_hoisted_2","_hoisted_3","_createElementBlock","_mergeProps","_createElementVNode","_hoisted_4","_createCommentVNode","_useModel"],"mappings":";;;;AAoBA,MAAKA,cAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO,CAAC,OAAO;AAAA,EACf,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM;AAAA,IACP;AAAA,IACD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IACD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AACF;AApCA,MAAAC,eAAA,CAAA,eAAA,YAAA;AAAA,MAAAC,eAAA,CAAA,QAAA,SAAA,QAAA;AAYY,MAAAC,eAAA,EAAA,GAAE,iDAAgD;uBAZ9D,KAAA,EAAA;;sBACEC,mBAeO,QAfPC,WAAc,KAAM,QAAA;AAAA,IACb,eAAa,OAAK,QAAA,OAAA;AAAA,IAClB,cAAY,OAAK;AAAA,IAClB,OAAM;AAAA,IACN,MAAK;AAAA,IACJ,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,YAAE,KAAK,MAAA,SAAU,MAAM;AAAA;kBACjCD,mBAQM,OAAA;AAAA,MARA,MAAM,OAAS;AAAA,MAChB,OAAM;AAAA,MACL,OAAO,OAAI;AAAA,MACX,QAAQ,OAAI;AAAA,MACb,SAAQ;AAAA;MACXE,mBAEO,QAFPH,cAEO;AAAA,QADQ,OAAK,sBAAlBC,mBAAuC,SAb/CG,8BAa+B,OAAK,KAAA,GAAA,CAAA,KAbpCC,mBAAA,IAAA,IAAA;AAAA;IAAA,GAAA,GAAAN,YAAA;AAAA,EAAA,GAAA,IAAAD,YAAA;;;ACoBA,MAAKD,cAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO,CAAC,OAAO;AAAA,EACf,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM;AAAA,IACP;AAAA,IACD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,IACD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AACF;AApCA,MAAAC,eAAA,CAAA,eAAA,YAAA;AAAA,MAAA,aAAA,CAAA,QAAA,SAAA,QAAA;AAYY,MAAA,aAAA,EAAA,GAAE,8GAA6G;qBAZ3H,KAAA,EAAA;;sBACEG,mBAeO,QAfPC,WAAc,KAAM,QAAA;AAAA,IACb,eAAa,OAAK,QAAA,OAAA;AAAA,IAClB,cAAY,OAAK;AAAA,IAClB,OAAM;AAAA,IACN,MAAK;AAAA,IACJ,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,YAAE,KAAK,MAAA,SAAU,MAAM;AAAA;kBACjCD,mBAQM,OAAA;AAAA,MARA,MAAM,OAAS;AAAA,MAChB,OAAM;AAAA,MACL,OAAO,OAAI;AAAA,MACX,QAAQ,OAAI;AAAA,MACb,SAAQ;AAAA;MACXE,mBAEO,QAFP,YAEO;AAAA,QADQ,OAAK,sBAAlBF,mBAAuC,SAb/C,4BAa+B,OAAK,KAAA,GAAA,CAAA,KAbpCI,mBAAA,IAAA,IAAA;AAAA;IAAA,GAAA,GAAA,UAAA;AAAA,EAAA,GAAA,IAAAP,YAAA;;;;;;;;;;;;;ACoBM,UAAA,OAAOQ,SAAqB,SAAA,MAA0B;AAEtD,UAAA,QAAQ,SAAS,MAAM,KAAK,QAAQ,EAAE,kBAAkB,IAAI,EAAE,iBAAiB,CAAC;AAMtF,aAAS,mBAAyB;AAC5B,WAAA,QAAQ,CAAC,KAAK;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;","x_google_ignoreList":[0,1]}
@@ -2,8 +2,8 @@ import '../assets/NcAppSettingsDialog-DfBJYMdm.css';
2
2
  import debounce from "debounce";
3
3
  import { resolveComponent, createBlock, createCommentVNode, openBlock, mergeProps, createSlots, withCtx, createElementVNode, renderSlot, createElementBlock, Fragment, renderList, withKeys, withModifiers, normalizeClass, toDisplayString, warn } from "vue";
4
4
  import { useIsMobile } from "../composables/useIsMobile/index.mjs";
5
- import { r as register, h as t44, a as t } from "./_l10n-B4AgnzNC.mjs";
6
- import { N as NcDialog } from "./NcDialog-CXVaeWJf.mjs";
5
+ import { r as register, h as t44, a as t } from "./_l10n-tXci8WM1.mjs";
6
+ import { N as NcDialog } from "./NcDialog-DTbCOARa.mjs";
7
7
  import { _ as _sfc_main$1 } from "./NcVNodes.vue_vue_type_script_lang-BqUHinRZ.mjs";
8
8
  import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
9
9
  register(t44);
@@ -252,4 +252,4 @@ const NcAppSettingsDialog = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _
252
252
  export {
253
253
  NcAppSettingsDialog as N
254
254
  };
255
- //# sourceMappingURL=NcAppSettingsDialog-CQnZ29WZ.mjs.map
255
+ //# sourceMappingURL=NcAppSettingsDialog-Dgh5jydA.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NcAppSettingsDialog-CQnZ29WZ.mjs","sources":["../../src/components/NcAppSettingsDialog/NcAppSettingsDialog.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nJust nest the `AppSettingSections` component into `NcAppSettingsDialog`,\nproviding the section's name prop. You can put your settings within each\n`NcAppSettingsSection` component.\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog v-model:open=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Example name 1\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Example name 2\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Example name 3\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Example name 4\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-5\" name=\"Example name 5\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-6\" name=\"Example name 6\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-7\" name=\"Example name 7\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-8\" name=\"Example name 8\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-9\" name=\"Example name 9\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-10\" name=\"Example name 10\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nYou can also add icons to the section navigation:\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog v-model:open=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Instagram\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Instagram :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tInstagram setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Mastodon\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Mastodon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tMastodon setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Twitch\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitch :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tTwitch setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Twitter\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tTwitter setting\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nimport Instagram from 'vue-material-design-icons/Instagram.vue'\nimport Mastodon from 'vue-material-design-icons/Mastodon.vue'\nimport Twitch from 'vue-material-design-icons/Twitch.vue'\nimport Twitter from 'vue-material-design-icons/Twitter.vue'\n\nexport default {\n\tcomponents: {\n\t\tInstagram,\n\t\tMastodon,\n\t\tTwitch,\n\t\tTwitter,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<NcDialog v-if=\"open\"\n\t\t:navigation-aria-label=\"settingsNavigationAriaLabel\"\n\t\tv-bind=\"dialogProperties\"\n\t\t@update:open=\"handleCloseModal\">\n\t\t<template v-if=\"hasNavigation\" #navigation=\"{ isCollapsed }\">\n\t\t\t<ul v-if=\"!isCollapsed\"\n\t\t\t\tclass=\"navigation-list\">\n\t\t\t\t<li v-for=\"section in sections\" :key=\"section.id\">\n\t\t\t\t\t<a :aria-current=\"`${section.id === selectedSection}`\"\n\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t'navigation-list__link': true,\n\t\t\t\t\t\t\t'navigation-list__link--active': section.id === selectedSection,\n\t\t\t\t\t\t\t'navigation-list__link--icon': hasNavigationIcons,\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:href=\"`#settings-section_${section.id}`\"\n\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t@click.prevent=\"handleSettingsNavigationClick(section.id)\"\n\t\t\t\t\t\t@keydown.enter=\"handleSettingsNavigationClick(section.id)\">\n\t\t\t\t\t\t<div v-if=\"hasNavigationIcons\" class=\"navigation-list__link-icon\">\n\t\t\t\t\t\t\t<NcVNodes v-if=\"section.icon\" :vnodes=\"section.icon\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<span class=\"navigation-list__link-text\">\n\t\t\t\t\t\t\t{{ section.name }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</template>\n\t\t<div ref=\"settingsScroller\">\n\t\t\t<slot />\n\t\t</div>\n\t</NcDialog>\n</template>\n\n<script>\nimport debounce from 'debounce'\nimport { warn } from 'vue'\nimport { useIsMobile } from '../../composables/useIsMobile/index.ts'\nimport { t } from '../../l10n.js'\n\nimport NcDialog from '../NcDialog/index.ts'\nimport NcVNodes from '../NcVNodes/index.ts'\n\nexport default {\n\n\tname: 'NcAppSettingsDialog',\n\n\tcomponents: {\n\t\tNcDialog,\n\t\tNcVNodes,\n\t},\n\n\tprovide() {\n\t\treturn {\n\t\t\tregisterSection: this.registerSection,\n\t\t\tunregisterSection: this.unregisterSection,\n\t\t}\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Determines the open / closed state of the modal\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * Shows the navigation on desktop if true\n\t\t */\n\t\tshowNavigation: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Selector for the popover container\n\t\t */\n\t\tcontainer: {\n\t\t\ttype: String,\n\t\t\tdefault: 'body',\n\t\t},\n\n\t\t/**\n\t\t * Name of the settings\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Additional elements to add to the focus trap\n\t\t */\n\t\tadditionalTrapElements: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn {\n\t\t\tisMobile: useIsMobile(),\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tselectedSection: '',\n\t\t\tlinkClicked: false,\n\t\t\taddedScrollListener: false,\n\t\t\tscroller: null,\n\t\t\t/**\n\t\t\t * Currently registered settings sections\n\t\t\t * @type {{ id: string, name: string, icon?: import('vue').VNode[] }[]}\n\t\t\t */\n\t\t\tsections: [],\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tdialogProperties() {\n\t\t\treturn {\n\t\t\t\tadditionalTrapElements: this.additionalTrapElements,\n\t\t\t\tcloseOnClickOutside: true,\n\t\t\t\tclass: 'app-settings',\n\t\t\t\tcontainer: this.container,\n\t\t\t\tcontentClasses: 'app-settings__content',\n\t\t\t\tsize: 'large',\n\t\t\t\tname: this.name,\n\t\t\t\tnavigationClasses: 'app-settings__navigation',\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Check if one or more navigation entries provide icons\n\t\t */\n\t\thasNavigationIcons() {\n\t\t\treturn this.sections.some(({ icon }) => !!icon)\n\t\t},\n\n\t\thasNavigation() {\n\t\t\tif (this.isMobile || !this.showNavigation) {\n\t\t\t\treturn false\n\t\t\t} else {\n\t\t\t\treturn true\n\t\t\t}\n\t\t},\n\n\t\tsettingsNavigationAriaLabel() {\n\t\t\treturn t('Settings navigation')\n\t\t},\n\t},\n\n\tupdated() {\n\t\t// Check that the scroller element has been mounted\n\t\tif (!this.$refs.settingsScroller) {\n\t\t\treturn\n\t\t}\n\t\t// Get the scroller element\n\t\tthis.scroller = this.$refs.settingsScroller\n\t\tif (!this.addedScrollListener) {\n\t\t\tthis.scroller.addEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = true\n\t\t}\n\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Called when a new section is registered\n\t\t * @param {string} id The section ID\n\t\t * @param {string} name The section name\n\t\t * @param {import('vue').VNode[]|undefined} icon Optional icon component\n\t\t */\n\t\tregisterSection(id, name, icon) {\n\t\t\t// Check for the uniqueness of section names\n\t\t\tif (this.sections.some(({ id: otherId }) => id === otherId)) {\n\t\t\t\tthrow new Error(`Duplicate section id found: ${id}. Settings navigation sections must have unique section ids.`)\n\t\t\t}\n\t\t\tif (this.sections.some(({ name: otherName }) => name === otherName)) {\n\t\t\t\twarn(`Duplicate section name found: ${name}. Settings navigation sections must have unique section names.`)\n\t\t\t}\n\n\t\t\tconst newSections = [...this.sections, { id, name, icon }]\n\t\t\t// Sort sections by order in slots\n\t\t\tthis.sections = newSections.sort(({ id: idA }, { id: idB }) => {\n\t\t\t\tconst indexOf = (id) => this.$slots.default?.().indexOf(vnode => vnode?.props?.id === id) ?? -1\n\t\t\t\treturn indexOf(idA) - indexOf(idB)\n\t\t\t})\n\n\t\t\t// If this is the first section registered, set it as selected\n\t\t\tif (this.sections.length === 1) {\n\t\t\t\tthis.selectedSection = id\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Called when a section is unregistered to remove it from dialog\n\t\t * @param {string} id The section ID\n\t\t */\n\t\tunregisterSection(id) {\n\t\t\tthis.sections = this.sections.filter(({ id: otherId }) => id !== otherId)\n\n\t\t\t// If the current section is unregistered, set the first section as selected\n\t\t\tif (this.selectedSection === id) {\n\t\t\t\tthis.selectedSection = this.sections[0]?.id ?? ''\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Scrolls the content to the selected settings section.absolute\n\t\t *\n\t\t * @param {string} item the ID of the section\n\t\t */\n\t\thandleSettingsNavigationClick(item) {\n\t\t\tthis.linkClicked = true\n\t\t\tdocument.getElementById('settings-section_' + item).scrollIntoView({\n\t\t\t\tbehavior: 'smooth',\n\t\t\t\tinline: 'nearest',\n\t\t\t})\n\t\t\tthis.selectedSection = item\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.linkClicked = false\n\t\t\t}, 1000)\n\t\t},\n\n\t\thandleCloseModal(isOpen) {\n\t\t\tif (isOpen) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.$emit('update:open', false)\n\t\t\t// Remove scroll listener each time the modal is closed\n\t\t\tthis.scroller.removeEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = false\n\t\t\tthis.scroller.scrollTop = 0\n\t\t},\n\n\t\thandleScroll() {\n\t\t\tif (!this.linkClicked) {\n\t\t\t\tthis.unfocusNavigationItem()\n\t\t\t}\n\t\t},\n\n\t\t// Remove selected section once the user starts scrolling\n\t\tunfocusNavigationItem: debounce(function() {\n\t\t\tthis.selectedSection = ''\n\t\t\tif (document.activeElement.className.includes('navigation-list__link')) {\n\t\t\t\tdocument.activeElement.blur()\n\t\t\t}\n\t\t}, 300),\n\t},\n}\n\n</script>\n\n<style lang=\"scss\" scoped>\n.app-settings {\n\t:deep &__navigation {\n\t\tmin-width: 200px;\n\t\tmargin-inline-end: calc(4 * var(--default-grid-baseline));\n\t\toverflow-x: hidden;\n\t\toverflow-y: auto;\n\t\tposition: relative;\n\t}\n\t:deep &__content {\n\t\tpadding-inline: calc(4 * var(--default-grid-baseline));\n\t}\n}\n\n.navigation-list {\n\theight: 100%;\n\toverflow-y: auto;\n\tpadding: calc(3 * var(--default-grid-baseline));\n\n\t&__link {\n\t\tdisplay: flex;\n\t\talign-content: center;\n\t\tfont-size: 16px;\n\t\theight: var(--default-clickable-area);\n\t\tmargin: 4px 0;\n\t\tline-height: var(--default-clickable-area);\n\t\tborder-radius: var(--border-radius-element, var(--border-radius-pill));\n\t\tfont-weight: bold;\n\t\tpadding: 0 calc(4 * var(--default-grid-baseline));\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\n\t\t&--active {\n\t\t\tbackground-color: var(--color-primary-element-light) !important;\n\t\t}\n\n\t\t&--icon {\n\t\t\tpadding-inline-start: calc(2 * var(--default-grid-baseline));\n\t\t\tgap: var(--default-grid-baseline);\n\t\t}\n\n\t\t&-icon {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-content: center;\n\t\t\twidth: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t\tmax-width: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t}\n\t}\n}\n\n@media only screen and (max-width: $breakpoint-small-mobile) {\n\t.app-settings {\n\t\t:deep .dialog__name {\n\t\t\tpadding-inline-start: 16px;\n\t\t}\n\t}\n}\n</style>\n"],"names":["NcVNodes","id","_openBlock","_createBlock","_mergeProps","_createSlots","_withCtx","_createElementVNode","_renderSlot","_createElementBlock","_Fragment","_renderList","_normalizeClass","_withModifiers","_withKeys","_createCommentVNode","_toDisplayString"],"mappings":"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"}
1
+ {"version":3,"file":"NcAppSettingsDialog-Dgh5jydA.mjs","sources":["../../src/components/NcAppSettingsDialog/NcAppSettingsDialog.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nJust nest the `AppSettingSections` component into `NcAppSettingsDialog`,\nproviding the section's name prop. You can put your settings within each\n`NcAppSettingsSection` component.\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog v-model:open=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Example name 1\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Example name 2\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Example name 3\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Example name 4\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-5\" name=\"Example name 5\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-6\" name=\"Example name 6\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-7\" name=\"Example name 7\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-8\" name=\"Example name 8\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-9\" name=\"Example name 9\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-10\" name=\"Example name 10\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nYou can also add icons to the section navigation:\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog v-model:open=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Instagram\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Instagram :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tInstagram setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Mastodon\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Mastodon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tMastodon setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Twitch\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitch :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tTwitch setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Twitter\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tTwitter setting\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nimport Instagram from 'vue-material-design-icons/Instagram.vue'\nimport Mastodon from 'vue-material-design-icons/Mastodon.vue'\nimport Twitch from 'vue-material-design-icons/Twitch.vue'\nimport Twitter from 'vue-material-design-icons/Twitter.vue'\n\nexport default {\n\tcomponents: {\n\t\tInstagram,\n\t\tMastodon,\n\t\tTwitch,\n\t\tTwitter,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<NcDialog v-if=\"open\"\n\t\t:navigation-aria-label=\"settingsNavigationAriaLabel\"\n\t\tv-bind=\"dialogProperties\"\n\t\t@update:open=\"handleCloseModal\">\n\t\t<template v-if=\"hasNavigation\" #navigation=\"{ isCollapsed }\">\n\t\t\t<ul v-if=\"!isCollapsed\"\n\t\t\t\tclass=\"navigation-list\">\n\t\t\t\t<li v-for=\"section in sections\" :key=\"section.id\">\n\t\t\t\t\t<a :aria-current=\"`${section.id === selectedSection}`\"\n\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t'navigation-list__link': true,\n\t\t\t\t\t\t\t'navigation-list__link--active': section.id === selectedSection,\n\t\t\t\t\t\t\t'navigation-list__link--icon': hasNavigationIcons,\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:href=\"`#settings-section_${section.id}`\"\n\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t@click.prevent=\"handleSettingsNavigationClick(section.id)\"\n\t\t\t\t\t\t@keydown.enter=\"handleSettingsNavigationClick(section.id)\">\n\t\t\t\t\t\t<div v-if=\"hasNavigationIcons\" class=\"navigation-list__link-icon\">\n\t\t\t\t\t\t\t<NcVNodes v-if=\"section.icon\" :vnodes=\"section.icon\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<span class=\"navigation-list__link-text\">\n\t\t\t\t\t\t\t{{ section.name }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</template>\n\t\t<div ref=\"settingsScroller\">\n\t\t\t<slot />\n\t\t</div>\n\t</NcDialog>\n</template>\n\n<script>\nimport debounce from 'debounce'\nimport { warn } from 'vue'\nimport { useIsMobile } from '../../composables/useIsMobile/index.ts'\nimport { t } from '../../l10n.js'\n\nimport NcDialog from '../NcDialog/index.ts'\nimport NcVNodes from '../NcVNodes/index.ts'\n\nexport default {\n\n\tname: 'NcAppSettingsDialog',\n\n\tcomponents: {\n\t\tNcDialog,\n\t\tNcVNodes,\n\t},\n\n\tprovide() {\n\t\treturn {\n\t\t\tregisterSection: this.registerSection,\n\t\t\tunregisterSection: this.unregisterSection,\n\t\t}\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Determines the open / closed state of the modal\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * Shows the navigation on desktop if true\n\t\t */\n\t\tshowNavigation: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Selector for the popover container\n\t\t */\n\t\tcontainer: {\n\t\t\ttype: String,\n\t\t\tdefault: 'body',\n\t\t},\n\n\t\t/**\n\t\t * Name of the settings\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Additional elements to add to the focus trap\n\t\t */\n\t\tadditionalTrapElements: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn {\n\t\t\tisMobile: useIsMobile(),\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tselectedSection: '',\n\t\t\tlinkClicked: false,\n\t\t\taddedScrollListener: false,\n\t\t\tscroller: null,\n\t\t\t/**\n\t\t\t * Currently registered settings sections\n\t\t\t * @type {{ id: string, name: string, icon?: import('vue').VNode[] }[]}\n\t\t\t */\n\t\t\tsections: [],\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tdialogProperties() {\n\t\t\treturn {\n\t\t\t\tadditionalTrapElements: this.additionalTrapElements,\n\t\t\t\tcloseOnClickOutside: true,\n\t\t\t\tclass: 'app-settings',\n\t\t\t\tcontainer: this.container,\n\t\t\t\tcontentClasses: 'app-settings__content',\n\t\t\t\tsize: 'large',\n\t\t\t\tname: this.name,\n\t\t\t\tnavigationClasses: 'app-settings__navigation',\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Check if one or more navigation entries provide icons\n\t\t */\n\t\thasNavigationIcons() {\n\t\t\treturn this.sections.some(({ icon }) => !!icon)\n\t\t},\n\n\t\thasNavigation() {\n\t\t\tif (this.isMobile || !this.showNavigation) {\n\t\t\t\treturn false\n\t\t\t} else {\n\t\t\t\treturn true\n\t\t\t}\n\t\t},\n\n\t\tsettingsNavigationAriaLabel() {\n\t\t\treturn t('Settings navigation')\n\t\t},\n\t},\n\n\tupdated() {\n\t\t// Check that the scroller element has been mounted\n\t\tif (!this.$refs.settingsScroller) {\n\t\t\treturn\n\t\t}\n\t\t// Get the scroller element\n\t\tthis.scroller = this.$refs.settingsScroller\n\t\tif (!this.addedScrollListener) {\n\t\t\tthis.scroller.addEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = true\n\t\t}\n\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Called when a new section is registered\n\t\t * @param {string} id The section ID\n\t\t * @param {string} name The section name\n\t\t * @param {import('vue').VNode[]|undefined} icon Optional icon component\n\t\t */\n\t\tregisterSection(id, name, icon) {\n\t\t\t// Check for the uniqueness of section names\n\t\t\tif (this.sections.some(({ id: otherId }) => id === otherId)) {\n\t\t\t\tthrow new Error(`Duplicate section id found: ${id}. Settings navigation sections must have unique section ids.`)\n\t\t\t}\n\t\t\tif (this.sections.some(({ name: otherName }) => name === otherName)) {\n\t\t\t\twarn(`Duplicate section name found: ${name}. Settings navigation sections must have unique section names.`)\n\t\t\t}\n\n\t\t\tconst newSections = [...this.sections, { id, name, icon }]\n\t\t\t// Sort sections by order in slots\n\t\t\tthis.sections = newSections.sort(({ id: idA }, { id: idB }) => {\n\t\t\t\tconst indexOf = (id) => this.$slots.default?.().indexOf(vnode => vnode?.props?.id === id) ?? -1\n\t\t\t\treturn indexOf(idA) - indexOf(idB)\n\t\t\t})\n\n\t\t\t// If this is the first section registered, set it as selected\n\t\t\tif (this.sections.length === 1) {\n\t\t\t\tthis.selectedSection = id\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Called when a section is unregistered to remove it from dialog\n\t\t * @param {string} id The section ID\n\t\t */\n\t\tunregisterSection(id) {\n\t\t\tthis.sections = this.sections.filter(({ id: otherId }) => id !== otherId)\n\n\t\t\t// If the current section is unregistered, set the first section as selected\n\t\t\tif (this.selectedSection === id) {\n\t\t\t\tthis.selectedSection = this.sections[0]?.id ?? ''\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Scrolls the content to the selected settings section.absolute\n\t\t *\n\t\t * @param {string} item the ID of the section\n\t\t */\n\t\thandleSettingsNavigationClick(item) {\n\t\t\tthis.linkClicked = true\n\t\t\tdocument.getElementById('settings-section_' + item).scrollIntoView({\n\t\t\t\tbehavior: 'smooth',\n\t\t\t\tinline: 'nearest',\n\t\t\t})\n\t\t\tthis.selectedSection = item\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.linkClicked = false\n\t\t\t}, 1000)\n\t\t},\n\n\t\thandleCloseModal(isOpen) {\n\t\t\tif (isOpen) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.$emit('update:open', false)\n\t\t\t// Remove scroll listener each time the modal is closed\n\t\t\tthis.scroller.removeEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = false\n\t\t\tthis.scroller.scrollTop = 0\n\t\t},\n\n\t\thandleScroll() {\n\t\t\tif (!this.linkClicked) {\n\t\t\t\tthis.unfocusNavigationItem()\n\t\t\t}\n\t\t},\n\n\t\t// Remove selected section once the user starts scrolling\n\t\tunfocusNavigationItem: debounce(function() {\n\t\t\tthis.selectedSection = ''\n\t\t\tif (document.activeElement.className.includes('navigation-list__link')) {\n\t\t\t\tdocument.activeElement.blur()\n\t\t\t}\n\t\t}, 300),\n\t},\n}\n\n</script>\n\n<style lang=\"scss\" scoped>\n.app-settings {\n\t:deep &__navigation {\n\t\tmin-width: 200px;\n\t\tmargin-inline-end: calc(4 * var(--default-grid-baseline));\n\t\toverflow-x: hidden;\n\t\toverflow-y: auto;\n\t\tposition: relative;\n\t}\n\t:deep &__content {\n\t\tpadding-inline: calc(4 * var(--default-grid-baseline));\n\t}\n}\n\n.navigation-list {\n\theight: 100%;\n\toverflow-y: auto;\n\tpadding: calc(3 * var(--default-grid-baseline));\n\n\t&__link {\n\t\tdisplay: flex;\n\t\talign-content: center;\n\t\tfont-size: 16px;\n\t\theight: var(--default-clickable-area);\n\t\tmargin: 4px 0;\n\t\tline-height: var(--default-clickable-area);\n\t\tborder-radius: var(--border-radius-element, var(--border-radius-pill));\n\t\tfont-weight: bold;\n\t\tpadding: 0 calc(4 * var(--default-grid-baseline));\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\n\t\t&--active {\n\t\t\tbackground-color: var(--color-primary-element-light) !important;\n\t\t}\n\n\t\t&--icon {\n\t\t\tpadding-inline-start: calc(2 * var(--default-grid-baseline));\n\t\t\tgap: var(--default-grid-baseline);\n\t\t}\n\n\t\t&-icon {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-content: center;\n\t\t\twidth: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t\tmax-width: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t}\n\t}\n}\n\n@media only screen and (max-width: $breakpoint-small-mobile) {\n\t.app-settings {\n\t\t:deep .dialog__name {\n\t\t\tpadding-inline-start: 16px;\n\t\t}\n\t}\n}\n</style>\n"],"names":["NcVNodes","id","_openBlock","_createBlock","_mergeProps","_createSlots","_withCtx","_createElementVNode","_renderSlot","_createElementBlock","_Fragment","_renderList","_normalizeClass","_withModifiers","_withKeys","_createCommentVNode","_toDisplayString"],"mappings":"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"}
@@ -1,16 +1,16 @@
1
- import '../assets/NcAppSidebar-PG3qIdkG.css';
1
+ import '../assets/NcAppSidebar-BeRME1Bx.css';
2
2
  import { vOnClickOutside } from "@vueuse/components";
3
3
  import { createFocusTrap } from "focus-trap";
4
4
  import { createElementBlock, openBlock, mergeProps, createElementVNode, createCommentVNode, toDisplayString, resolveComponent, withKeys, withModifiers, Fragment, renderList, createBlock, normalizeClass, withCtx, createVNode, renderSlot, resolveDirective, Transition, withDirectives, Teleport, normalizeStyle, vShow, createTextVNode, warn, ref, provide } from "vue";
5
5
  import { useIsSmallMobile } from "../composables/useIsMobile/index.mjs";
6
6
  import { c as createElementId } from "./createElementId-DhjFt1I9.mjs";
7
7
  import { g as getTrapStack } from "./focusTrap-DmkaYJTC.mjs";
8
- import { i as isSlotPopulated, N as NcActions } from "./NcActions-iwG1Tj-I.mjs";
9
- import { r as register, C as t14, a as t } from "./_l10n-B4AgnzNC.mjs";
8
+ import { i as isSlotPopulated, N as NcActions } from "./NcActions-BM3DmGLW.mjs";
9
+ import { r as register, B as t14, a as t } from "./_l10n-tXci8WM1.mjs";
10
10
  import { I as IconArrowRight } from "./ArrowRight-DRKHUZMH.mjs";
11
11
  import { I as IconClose } from "./Close-D6ngJ4t9.mjs";
12
12
  import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
13
- import { N as NcCheckboxRadioSwitch } from "./NcCheckboxRadioSwitch-Di0xbf6d.mjs";
13
+ import { N as NcCheckboxRadioSwitch } from "./NcCheckboxRadioSwitch-D9N_BDHh.mjs";
14
14
  import { _ as _sfc_main$5 } from "./NcVNodes.vue_vue_type_script_lang-BqUHinRZ.mjs";
15
15
  import { N as NcButton } from "./NcButton-yN4vYgXb.mjs";
16
16
  import { N as NcEmptyContent } from "./NcEmptyContent-BdOezubv.mjs";
@@ -544,14 +544,14 @@ const _sfc_main = {
544
544
  "close",
545
545
  "closed",
546
546
  "opened",
547
- // 'figure-click', not emitted on purpose to make "hasFigureClickListener" work
547
+ // 'figureClick', not emitted on purpose to make "hasFigureClickListener" work
548
548
  "update:active",
549
549
  "update:name",
550
550
  "update:nameEditable",
551
551
  "update:open",
552
552
  "update:starred",
553
- "submit-name",
554
- "dismiss-editing"
553
+ "submitName",
554
+ "dismissEditing"
555
555
  ],
556
556
  setup() {
557
557
  const headerRef = ref(null);
@@ -680,7 +680,7 @@ const _sfc_main = {
680
680
  * @param {Event} e click event
681
681
  */
682
682
  onFigureClick(e) {
683
- this.$emit("figure-click", e);
683
+ this.$emit("figureClick", e);
684
684
  },
685
685
  /**
686
686
  * Toggle the favourite state
@@ -746,11 +746,11 @@ const _sfc_main = {
746
746
  */
747
747
  onSubmitName(event) {
748
748
  this.$emit("update:nameEditable", false);
749
- this.$emit("submit-name", event);
749
+ this.$emit("submitName", event);
750
750
  },
751
751
  onDismissEditing() {
752
752
  this.$emit("update:nameEditable", false);
753
- this.$emit("dismiss-editing");
753
+ this.$emit("dismissEditing");
754
754
  },
755
755
  onUpdateActive(activeTab) {
756
756
  this.$emit("update:active", activeTab);
@@ -985,8 +985,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
985
985
  _: 3
986
986
  }, 8, ["onAfterEnter", "onAfterLeave"]);
987
987
  }
988
- const NcAppSidebar = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-2f977306"]]);
988
+ const NcAppSidebar = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-da93c31b"]]);
989
989
  export {
990
990
  NcAppSidebar as N
991
991
  };
992
- //# sourceMappingURL=NcAppSidebar-QEkYs8pt.mjs.map
992
+ //# sourceMappingURL=NcAppSidebar-DWRmX_-Y.mjs.map