@nextcloud/vue 8.31.0 → 8.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (524) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/Components/NcActionButton.cjs +1 -1
  3. package/dist/Components/NcActionButton.mjs +1 -1
  4. package/dist/Components/NcActionButtonGroup.cjs +1 -1
  5. package/dist/Components/NcActionButtonGroup.mjs +1 -1
  6. package/dist/Components/NcActionCheckbox.cjs +1 -1
  7. package/dist/Components/NcActionCheckbox.mjs +1 -1
  8. package/dist/Components/NcActionInput.cjs +1 -1
  9. package/dist/Components/NcActionInput.mjs +1 -1
  10. package/dist/Components/NcActionLink.cjs +2 -2
  11. package/dist/Components/NcActionLink.cjs.map +1 -1
  12. package/dist/Components/NcActionLink.mjs +2 -2
  13. package/dist/Components/NcActionLink.mjs.map +1 -1
  14. package/dist/Components/NcActionRadio.cjs +1 -1
  15. package/dist/Components/NcActionRadio.mjs +1 -1
  16. package/dist/Components/NcActionRouter.cjs +2 -2
  17. package/dist/Components/NcActionRouter.cjs.map +1 -1
  18. package/dist/Components/NcActionRouter.mjs +2 -2
  19. package/dist/Components/NcActionRouter.mjs.map +1 -1
  20. package/dist/Components/NcActionText.cjs +2 -2
  21. package/dist/Components/NcActionText.cjs.map +1 -1
  22. package/dist/Components/NcActionText.mjs +2 -2
  23. package/dist/Components/NcActionText.mjs.map +1 -1
  24. package/dist/Components/NcActionTextEditable.cjs +1 -1
  25. package/dist/Components/NcActionTextEditable.mjs +1 -1
  26. package/dist/Components/NcActions.cjs +1 -1
  27. package/dist/Components/NcActions.mjs +1 -1
  28. package/dist/Components/NcAppContent.cjs +1 -1
  29. package/dist/Components/NcAppContent.mjs +1 -1
  30. package/dist/Components/NcAppNavigation.cjs +1 -1
  31. package/dist/Components/NcAppNavigation.mjs +1 -1
  32. package/dist/Components/NcAppNavigationCaption.cjs +1 -1
  33. package/dist/Components/NcAppNavigationCaption.mjs +1 -1
  34. package/dist/Components/NcAppNavigationItem.cjs +1 -1
  35. package/dist/Components/NcAppNavigationItem.mjs +1 -1
  36. package/dist/Components/NcAppNavigationNew.cjs +1 -1
  37. package/dist/Components/NcAppNavigationNew.mjs +1 -1
  38. package/dist/Components/NcAppNavigationNewItem.cjs +1 -1
  39. package/dist/Components/NcAppNavigationNewItem.mjs +1 -1
  40. package/dist/Components/NcAppNavigationSearch.cjs +1 -1
  41. package/dist/Components/NcAppNavigationSearch.mjs +1 -1
  42. package/dist/Components/NcAppNavigationSettings.cjs +1 -1
  43. package/dist/Components/NcAppNavigationSettings.mjs +1 -1
  44. package/dist/Components/NcAppNavigationToggle.cjs +1 -1
  45. package/dist/Components/NcAppNavigationToggle.mjs +1 -1
  46. package/dist/Components/NcAppSettingsDialog.cjs +1 -1
  47. package/dist/Components/NcAppSettingsDialog.mjs +1 -1
  48. package/dist/Components/NcAppSettingsSection.cjs +2 -63
  49. package/dist/Components/NcAppSettingsSection.cjs.map +1 -1
  50. package/dist/Components/NcAppSettingsSection.mjs +2 -63
  51. package/dist/Components/NcAppSettingsSection.mjs.map +1 -1
  52. package/dist/Components/NcAppSettingsSectionShortcuts.cjs +4 -0
  53. package/dist/Components/NcAppSettingsSectionShortcuts.cjs.map +1 -0
  54. package/dist/Components/NcAppSettingsSectionShortcuts.mjs +5 -0
  55. package/dist/Components/NcAppSettingsSectionShortcuts.mjs.map +1 -0
  56. package/dist/Components/NcAppSidebar.cjs +1 -1
  57. package/dist/Components/NcAppSidebar.mjs +1 -1
  58. package/dist/Components/NcAssistantButton.cjs +1 -1
  59. package/dist/Components/NcAssistantButton.mjs +1 -1
  60. package/dist/Components/NcAssistantIcon.cjs +1 -1
  61. package/dist/Components/NcAssistantIcon.mjs +1 -1
  62. package/dist/Components/NcAvatar.cjs +1 -1
  63. package/dist/Components/NcAvatar.mjs +1 -1
  64. package/dist/Components/NcBreadcrumb.cjs +1 -1
  65. package/dist/Components/NcBreadcrumb.mjs +1 -1
  66. package/dist/Components/NcBreadcrumbs.cjs +1 -1
  67. package/dist/Components/NcBreadcrumbs.mjs +1 -1
  68. package/dist/Components/NcButton.cjs +1 -1
  69. package/dist/Components/NcButton.mjs +1 -1
  70. package/dist/Components/NcCheckboxRadioSwitch.cjs +1 -1
  71. package/dist/Components/NcCheckboxRadioSwitch.mjs +1 -1
  72. package/dist/Components/NcChip.cjs +8 -8
  73. package/dist/Components/NcChip.cjs.map +1 -1
  74. package/dist/Components/NcChip.mjs +8 -8
  75. package/dist/Components/NcChip.mjs.map +1 -1
  76. package/dist/Components/NcCollectionList.cjs +1 -1
  77. package/dist/Components/NcCollectionList.mjs +1 -1
  78. package/dist/Components/NcColorPicker.cjs +1 -1
  79. package/dist/Components/NcColorPicker.mjs +1 -1
  80. package/dist/Components/NcContent.cjs +1 -1
  81. package/dist/Components/NcContent.mjs +1 -1
  82. package/dist/Components/NcDashboardWidget.cjs +1 -1
  83. package/dist/Components/NcDashboardWidget.mjs +1 -1
  84. package/dist/Components/NcDashboardWidgetItem.cjs +1 -1
  85. package/dist/Components/NcDashboardWidgetItem.mjs +1 -1
  86. package/dist/Components/NcDateTimePicker.cjs +9 -9
  87. package/dist/Components/NcDateTimePicker.cjs.map +1 -1
  88. package/dist/Components/NcDateTimePicker.mjs +9 -9
  89. package/dist/Components/NcDateTimePicker.mjs.map +1 -1
  90. package/dist/Components/NcDateTimePickerNative.cjs +1 -1
  91. package/dist/Components/NcDateTimePickerNative.mjs +1 -1
  92. package/dist/Components/NcDialog.cjs +1 -1
  93. package/dist/Components/NcDialog.mjs +1 -1
  94. package/dist/Components/NcDialogButton.cjs +1 -1
  95. package/dist/Components/NcDialogButton.mjs +1 -1
  96. package/dist/Components/NcEmojiPicker.cjs +1 -1
  97. package/dist/Components/NcEmojiPicker.mjs +1 -1
  98. package/dist/Components/NcEmptyContent.cjs +13 -7
  99. package/dist/Components/NcEmptyContent.cjs.map +1 -1
  100. package/dist/Components/NcEmptyContent.mjs +13 -7
  101. package/dist/Components/NcEmptyContent.mjs.map +1 -1
  102. package/dist/Components/NcHeaderButton.cjs +1 -1
  103. package/dist/Components/NcHeaderButton.mjs +1 -1
  104. package/dist/Components/NcHeaderMenu.cjs +1 -1
  105. package/dist/Components/NcHeaderMenu.mjs +1 -1
  106. package/dist/Components/NcHotkey.cjs +4 -0
  107. package/dist/Components/NcHotkey.cjs.map +1 -0
  108. package/dist/Components/NcHotkey.mjs +5 -0
  109. package/dist/Components/NcHotkey.mjs.map +1 -0
  110. package/dist/Components/NcHotkeyList.cjs +4 -0
  111. package/dist/Components/NcHotkeyList.cjs.map +1 -0
  112. package/dist/Components/NcHotkeyList.mjs +5 -0
  113. package/dist/Components/NcHotkeyList.mjs.map +1 -0
  114. package/dist/Components/NcInputField.cjs +1 -1
  115. package/dist/Components/NcInputField.mjs +1 -1
  116. package/dist/Components/NcKbd.cjs +2 -63
  117. package/dist/Components/NcKbd.cjs.map +1 -1
  118. package/dist/Components/NcKbd.mjs +2 -63
  119. package/dist/Components/NcKbd.mjs.map +1 -1
  120. package/dist/Components/NcListItem.cjs +1 -1
  121. package/dist/Components/NcListItem.mjs +1 -1
  122. package/dist/Components/NcListItemIcon.cjs +1 -1
  123. package/dist/Components/NcListItemIcon.mjs +1 -1
  124. package/dist/Components/NcModal.cjs +26 -12
  125. package/dist/Components/NcModal.cjs.map +1 -1
  126. package/dist/Components/NcModal.mjs +26 -12
  127. package/dist/Components/NcModal.mjs.map +1 -1
  128. package/dist/Components/NcPasswordField.cjs +1 -1
  129. package/dist/Components/NcPasswordField.mjs +1 -1
  130. package/dist/Components/NcPopover.cjs +1 -1
  131. package/dist/Components/NcPopover.mjs +1 -1
  132. package/dist/Components/NcRadioGroupButton.cjs +1 -1
  133. package/dist/Components/NcRadioGroupButton.mjs +1 -1
  134. package/dist/Components/NcRelatedResourcesPanel.cjs +1 -1
  135. package/dist/Components/NcRelatedResourcesPanel.mjs +1 -1
  136. package/dist/Components/NcRichContenteditable.cjs +1 -1
  137. package/dist/Components/NcRichContenteditable.mjs +1 -1
  138. package/dist/Components/NcRichText.cjs +2 -2
  139. package/dist/Components/NcRichText.mjs +3 -3
  140. package/dist/Components/NcSelect.cjs +1 -1
  141. package/dist/Components/NcSelect.mjs +1 -1
  142. package/dist/Components/NcSelectTags.cjs +1 -1
  143. package/dist/Components/NcSelectTags.mjs +1 -1
  144. package/dist/Components/NcSelectUsers.cjs +1 -1
  145. package/dist/Components/NcSelectUsers.mjs +1 -1
  146. package/dist/Components/NcSettingsInputText.cjs +1 -1
  147. package/dist/Components/NcSettingsInputText.mjs +1 -1
  148. package/dist/Components/NcSettingsSection.cjs +1 -1
  149. package/dist/Components/NcSettingsSection.mjs +1 -1
  150. package/dist/Components/NcSettingsSelectGroup.cjs +1 -1
  151. package/dist/Components/NcSettingsSelectGroup.mjs +1 -1
  152. package/dist/Components/NcTextField.cjs +1 -1
  153. package/dist/Components/NcTextField.mjs +1 -1
  154. package/dist/Components/NcTimezonePicker.cjs +1 -1
  155. package/dist/Components/NcTimezonePicker.mjs +1 -1
  156. package/dist/Components/NcUserBubble.cjs +1 -1
  157. package/dist/Components/NcUserBubble.mjs +1 -1
  158. package/dist/Components/NcUserStatusIcon.cjs +1 -1
  159. package/dist/Components/NcUserStatusIcon.mjs +1 -1
  160. package/dist/Composables/useFormatDateTime.cjs +1 -1
  161. package/dist/Composables/useFormatDateTime.mjs +1 -1
  162. package/dist/Composables/useHotKey.cjs.map +1 -1
  163. package/dist/Composables/useHotKey.mjs.map +1 -1
  164. package/dist/Composables/useIsMobile.cjs.map +1 -1
  165. package/dist/Composables/useIsMobile.mjs.map +1 -1
  166. package/dist/Functions/reference.cjs +1 -1
  167. package/dist/Functions/reference.mjs +1 -1
  168. package/dist/Functions/usernameToColor.cjs +2 -2
  169. package/dist/Functions/usernameToColor.cjs.map +1 -1
  170. package/dist/Functions/usernameToColor.mjs +2 -2
  171. package/dist/Functions/usernameToColor.mjs.map +1 -1
  172. package/dist/Mixins/isMobile.cjs.map +1 -1
  173. package/dist/Mixins/isMobile.mjs.map +1 -1
  174. package/dist/assets/{NcActionButton-DwJihiLc.css → NcActionButton-CG4V9b5b.css} +18 -18
  175. package/dist/assets/{NcActionCheckbox-DvdNISIs.css → NcActionCheckbox-C8I_k6NA.css} +12 -12
  176. package/dist/assets/{NcActionInput-DXZaAilC.css → NcActionInput-BvPYSqDP.css} +65 -65
  177. package/dist/assets/{NcActionLink-7Wp6P-Nk.css → NcActionLink-BtpJIbvI.css} +13 -13
  178. package/dist/assets/{NcActionRadio-CLsR2Ore.css → NcActionRadio-CLIRNp3t.css} +12 -12
  179. package/dist/assets/{NcActionRouter-ByijfQtF.css → NcActionRouter-Bpv5Ywxq.css} +16 -16
  180. package/dist/assets/{NcActionText-CR_yvwWo.css → NcActionText-IMOkntPi.css} +18 -18
  181. package/dist/assets/{NcActionTextEditable-CCWTiT5c.css → NcActionTextEditable-BCmDMuUg.css} +65 -65
  182. package/dist/assets/{NcAppContent-DerHKU6P.css → NcAppContent-Ri_iNfn5.css} +23 -23
  183. package/dist/assets/{NcAppNavigation-R4E_wTZ-.css → NcAppNavigation-Bg4Oe7WC.css} +12 -12
  184. package/dist/assets/{NcAppNavigationItem-Kua1hP7u.css → NcAppNavigationItem-DSL2nLRf.css} +36 -36
  185. package/dist/assets/{NcAppNavigationNewItem-Cjbn5XkO.css → NcAppNavigationNewItem-CYSjj3pD.css} +38 -38
  186. package/dist/assets/NcAppNavigationSettings-2Wh1E3Hq.css +53 -0
  187. package/dist/assets/{NcAppSettingsDialog-DiJpVNeb.css → NcAppSettingsDialog-2axspyf-.css} +10 -10
  188. package/dist/assets/{NcAppSettingsSection-IzrCzLDw.css → NcAppSettingsSection-CLSVNQzv.css} +3 -3
  189. package/dist/assets/NcAppSettingsSectionShortcuts-BuI-s4kd.css +27 -0
  190. package/dist/assets/{NcAppSidebar-CJYtNcF0.css → NcAppSidebar-Bd2cj1W-.css} +44 -44
  191. package/dist/assets/{NcAvatar-BdAXbXdR.css → NcAvatar-Cm4kVIfS.css} +24 -24
  192. package/dist/assets/{NcButton-D8AOCliw.css → NcButton-uQUvp7DS.css} +46 -46
  193. package/dist/assets/{NcChip-Cc17FJEC.css → NcChip-ByvuZS2-.css} +23 -11
  194. package/dist/assets/{NcCollectionList-DInDhsAS.css → NcCollectionList-hRgvNUMR.css} +15 -15
  195. package/dist/assets/{NcColorPicker-CGI9ElwB.css → NcColorPicker-CCqpXoam.css} +43 -35
  196. package/dist/assets/{NcContent-BedDNXST.css → NcContent-IIXgAj_u.css} +10 -10
  197. package/dist/assets/{NcDateTimePicker-4Zw7r2r4.css → NcDateTimePicker-BmMuUpwr.css} +27 -27
  198. package/dist/assets/{NcEmojiPicker-CrjOSMLF.css → NcEmojiPicker-B-iLLj37.css} +122 -122
  199. package/dist/assets/{NcEmptyContent-xdTcF0yQ.css → NcEmptyContent-CUFc_Dds.css} +9 -9
  200. package/dist/assets/{NcHeaderButton-CeT-dsLr.css → NcHeaderButton-DI-1Gsph.css} +9 -9
  201. package/dist/assets/{NcHeaderMenu-BXb9npZp.css → NcHeaderMenu-BkpmEa3M.css} +13 -13
  202. package/dist/assets/NcHotkey-QklVKSyr.css +44 -0
  203. package/dist/assets/NcHotkeyList-B42a0d8Z.css +9 -0
  204. package/dist/assets/{NcInputField-BI3vWgSo.css → NcInputField-CtUAgq1i.css} +42 -42
  205. package/dist/assets/{NcModal-BzkYPomo.css → NcModal-4ZPVUmG2.css} +62 -62
  206. package/dist/assets/{NcRadioGroupButton-B1hPj4B8.css → NcRadioGroupButton-qxDfssOp.css} +16 -15
  207. package/dist/assets/{NcRelatedResourcesPanel-d2OxhjiL.css → NcRelatedResourcesPanel-BgMc8bue.css} +17 -17
  208. package/dist/assets/{NcRichContenteditable-BoM95AVW.css → NcRichContenteditable-CO5ziuZO.css} +12 -12
  209. package/dist/assets/{NcRichText-BDx2fupZ.css → NcRichText-BpXupu1n.css} +88 -89
  210. package/dist/assets/{referencePickerModal-CTpc6_U6.css → referencePickerModal-CGtNx7ew.css} +6 -6
  211. package/dist/chunks/{NcActionButton-CVW8aRkE.mjs → NcActionButton-CD1Z-o2Y.mjs} +4 -4
  212. package/dist/chunks/{NcActionButton-CVW8aRkE.mjs.map → NcActionButton-CD1Z-o2Y.mjs.map} +1 -1
  213. package/dist/chunks/{NcActionButton-CFXzNoFT.cjs → NcActionButton-DSq_luox.cjs} +4 -4
  214. package/dist/chunks/{NcActionButton-CFXzNoFT.cjs.map → NcActionButton-DSq_luox.cjs.map} +1 -1
  215. package/dist/chunks/{NcActionButtonGroup-BOr5Of3k.mjs → NcActionButtonGroup-Bd-SOAHU.mjs} +2 -2
  216. package/dist/chunks/{NcActionButtonGroup-BOr5Of3k.mjs.map → NcActionButtonGroup-Bd-SOAHU.mjs.map} +1 -1
  217. package/dist/chunks/{NcActionButtonGroup-Bwuy2WZQ.cjs → NcActionButtonGroup-DKVCsZhH.cjs} +2 -2
  218. package/dist/chunks/{NcActionButtonGroup-Bwuy2WZQ.cjs.map → NcActionButtonGroup-DKVCsZhH.cjs.map} +1 -1
  219. package/dist/chunks/{NcActionCheckbox-C05ls65i.mjs → NcActionCheckbox-D9aQuEYw.mjs} +3 -3
  220. package/dist/chunks/{NcActionCheckbox-C05ls65i.mjs.map → NcActionCheckbox-D9aQuEYw.mjs.map} +1 -1
  221. package/dist/chunks/{NcActionCheckbox-Dg_1Ovt0.cjs → NcActionCheckbox-ixZtnZR4.cjs} +3 -3
  222. package/dist/chunks/{NcActionCheckbox-Dg_1Ovt0.cjs.map → NcActionCheckbox-ixZtnZR4.cjs.map} +1 -1
  223. package/dist/chunks/{NcActionInput-iIJpNS_Q.cjs → NcActionInput-BMUreHhp.cjs} +7 -7
  224. package/dist/chunks/{NcActionInput-iIJpNS_Q.cjs.map → NcActionInput-BMUreHhp.cjs.map} +1 -1
  225. package/dist/chunks/{NcActionInput-CoG-fZq9.mjs → NcActionInput-D4MLI-0P.mjs} +7 -7
  226. package/dist/chunks/{NcActionInput-CoG-fZq9.mjs.map → NcActionInput-D4MLI-0P.mjs.map} +1 -1
  227. package/dist/chunks/{NcActionRadio-Bpbs2dPm.mjs → NcActionRadio-BmVR-lhZ.mjs} +3 -3
  228. package/dist/chunks/{NcActionRadio-Dtrwffyh.cjs.map → NcActionRadio-BmVR-lhZ.mjs.map} +1 -1
  229. package/dist/chunks/{NcActionRadio-Dtrwffyh.cjs → NcActionRadio-DPF0_wH9.cjs} +3 -3
  230. package/dist/chunks/{NcActionRadio-Bpbs2dPm.mjs.map → NcActionRadio-DPF0_wH9.cjs.map} +1 -1
  231. package/dist/chunks/{NcActionTextEditable-DRwDJjPd.mjs → NcActionTextEditable-5mNFl7Jm.mjs} +4 -4
  232. package/dist/chunks/{NcActionTextEditable-DRwDJjPd.mjs.map → NcActionTextEditable-5mNFl7Jm.mjs.map} +1 -1
  233. package/dist/chunks/{NcActionTextEditable-BpahzGpr.cjs → NcActionTextEditable-C8B1qqqe.cjs} +4 -4
  234. package/dist/chunks/NcActionTextEditable-C8B1qqqe.cjs.map +1 -0
  235. package/dist/chunks/{NcActions-C832pWHO.mjs → NcActions-BvFVkIzX.mjs} +4 -4
  236. package/dist/chunks/{NcActions-C832pWHO.mjs.map → NcActions-BvFVkIzX.mjs.map} +1 -1
  237. package/dist/chunks/{NcActions-B7oXbiVt.cjs → NcActions-CF9VxHHD.cjs} +4 -4
  238. package/dist/chunks/{NcActions-B7oXbiVt.cjs.map → NcActions-CF9VxHHD.cjs.map} +1 -1
  239. package/dist/chunks/{NcAppContent-Djy38ou2.cjs → NcAppContent-BSyhjn2J.cjs} +20 -25
  240. package/dist/chunks/NcAppContent-BSyhjn2J.cjs.map +1 -0
  241. package/dist/chunks/{NcAppContent-C9NGJE6n.mjs → NcAppContent-C7hwN-sU.mjs} +20 -25
  242. package/dist/chunks/NcAppContent-C7hwN-sU.mjs.map +1 -0
  243. package/dist/chunks/{NcAppNavigation-DjtmN3dS.mjs → NcAppNavigation-B2cKVKBH.mjs} +4 -4
  244. package/dist/chunks/{NcAppNavigation-DjtmN3dS.mjs.map → NcAppNavigation-B2cKVKBH.mjs.map} +1 -1
  245. package/dist/chunks/{NcAppNavigation-C0Oc0gQ6.cjs → NcAppNavigation-DApCpI_F.cjs} +4 -4
  246. package/dist/chunks/{NcAppNavigation-C0Oc0gQ6.cjs.map → NcAppNavigation-DApCpI_F.cjs.map} +1 -1
  247. package/dist/chunks/{NcAppNavigationCaption-D4-hEmCi.cjs → NcAppNavigationCaption-BOHmVyQb.cjs} +2 -2
  248. package/dist/chunks/{NcAppNavigationCaption-D4-hEmCi.cjs.map → NcAppNavigationCaption-BOHmVyQb.cjs.map} +1 -1
  249. package/dist/chunks/{NcAppNavigationCaption-CsoHaLXg.mjs → NcAppNavigationCaption-bTauZtcw.mjs} +2 -2
  250. package/dist/chunks/{NcAppNavigationCaption-CsoHaLXg.mjs.map → NcAppNavigationCaption-bTauZtcw.mjs.map} +1 -1
  251. package/dist/chunks/{NcAppNavigationItem-ZOXUMmX5.cjs → NcAppNavigationItem-DbtR6u7Y.cjs} +9 -9
  252. package/dist/chunks/{NcAppNavigationItem-DvVYHshm.mjs.map → NcAppNavigationItem-DbtR6u7Y.cjs.map} +1 -1
  253. package/dist/chunks/{NcAppNavigationItem-DvVYHshm.mjs → NcAppNavigationItem-geCwhCsd.mjs} +9 -9
  254. package/dist/chunks/{NcAppNavigationItem-ZOXUMmX5.cjs.map → NcAppNavigationItem-geCwhCsd.mjs.map} +1 -1
  255. package/dist/chunks/{NcAppNavigationNew-AiFYSCW1.mjs → NcAppNavigationNew-BHzvRlVc.mjs} +2 -2
  256. package/dist/chunks/{NcAppNavigationNew-AiFYSCW1.mjs.map → NcAppNavigationNew-BHzvRlVc.mjs.map} +1 -1
  257. package/dist/chunks/{NcAppNavigationNew-BqNIa8N9.cjs → NcAppNavigationNew-BYvFykgl.cjs} +2 -2
  258. package/dist/chunks/{NcAppNavigationNew-BqNIa8N9.cjs.map → NcAppNavigationNew-BYvFykgl.cjs.map} +1 -1
  259. package/dist/chunks/{NcAppNavigationNewItem-BuEkCd2H.cjs → NcAppNavigationNewItem-Dqnwa8Gl.cjs} +4 -4
  260. package/dist/chunks/{NcAppNavigationNewItem-BuEkCd2H.cjs.map → NcAppNavigationNewItem-Dqnwa8Gl.cjs.map} +1 -1
  261. package/dist/chunks/{NcAppNavigationNewItem-CdlWkGU3.mjs → NcAppNavigationNewItem-Yy56yPrn.mjs} +4 -4
  262. package/dist/chunks/{NcAppNavigationNewItem-CdlWkGU3.mjs.map → NcAppNavigationNewItem-Yy56yPrn.mjs.map} +1 -1
  263. package/dist/chunks/{NcAppNavigationSearch-CsIzwF6F.mjs → NcAppNavigationSearch-WfL4IPD8.mjs} +4 -4
  264. package/dist/chunks/{NcAppNavigationSearch-CsIzwF6F.mjs.map → NcAppNavigationSearch-WfL4IPD8.mjs.map} +1 -1
  265. package/dist/chunks/{NcAppNavigationSearch-BXjB3FEJ.cjs → NcAppNavigationSearch-pMlFjm9w.cjs} +4 -4
  266. package/dist/chunks/{NcAppNavigationSearch-BXjB3FEJ.cjs.map → NcAppNavigationSearch-pMlFjm9w.cjs.map} +1 -1
  267. package/dist/chunks/{NcAppNavigationSettings-Dq2O3kRz.mjs → NcAppNavigationSettings-BhK7vlfP.mjs} +16 -10
  268. package/dist/chunks/NcAppNavigationSettings-BhK7vlfP.mjs.map +1 -0
  269. package/dist/chunks/{NcAppNavigationSettings-CkFZMLtH.cjs → NcAppNavigationSettings-C6qjJ3hF.cjs} +16 -10
  270. package/dist/chunks/NcAppNavigationSettings-C6qjJ3hF.cjs.map +1 -0
  271. package/dist/chunks/{NcAppNavigationToggle-C2vtZ3uV.cjs → NcAppNavigationToggle-8lSuagjd.cjs} +3 -3
  272. package/dist/chunks/{NcAppNavigationToggle-C2vtZ3uV.cjs.map → NcAppNavigationToggle-8lSuagjd.cjs.map} +1 -1
  273. package/dist/chunks/{NcAppNavigationToggle-DlWpnYdz.mjs → NcAppNavigationToggle-DlnxjlcH.mjs} +3 -3
  274. package/dist/chunks/{NcAppNavigationToggle-DlWpnYdz.mjs.map → NcAppNavigationToggle-DlnxjlcH.mjs.map} +1 -1
  275. package/dist/chunks/NcAppSettingsDialog--RlMIfbo.cjs +132 -0
  276. package/dist/chunks/NcAppSettingsDialog--RlMIfbo.cjs.map +1 -0
  277. package/dist/chunks/NcAppSettingsDialog-8YaW7ud3.mjs +130 -0
  278. package/dist/chunks/NcAppSettingsDialog-8YaW7ud3.mjs.map +1 -0
  279. package/dist/chunks/NcAppSettingsSection-DVrBPuLD.mjs +53 -0
  280. package/dist/chunks/NcAppSettingsSection-DVrBPuLD.mjs.map +1 -0
  281. package/dist/chunks/NcAppSettingsSection-OPWPqi2Y.cjs +52 -0
  282. package/dist/chunks/NcAppSettingsSection-OPWPqi2Y.cjs.map +1 -0
  283. package/dist/chunks/NcAppSettingsSectionShortcuts-CBYgfYGz.cjs +42 -0
  284. package/dist/chunks/NcAppSettingsSectionShortcuts-CBYgfYGz.cjs.map +1 -0
  285. package/dist/chunks/NcAppSettingsSectionShortcuts-CdP-4ktS.mjs +43 -0
  286. package/dist/chunks/NcAppSettingsSectionShortcuts-CdP-4ktS.mjs.map +1 -0
  287. package/dist/chunks/{NcAppSidebar-Cx2ZxU4N.cjs → NcAppSidebar-DLb6ALHL.cjs} +7 -7
  288. package/dist/chunks/{NcAppSidebar-Cx2ZxU4N.cjs.map → NcAppSidebar-DLb6ALHL.cjs.map} +1 -1
  289. package/dist/chunks/{NcAppSidebar-Bda_fc-F.mjs → NcAppSidebar-f7tuofzM.mjs} +7 -7
  290. package/dist/chunks/{NcAppSidebar-Bda_fc-F.mjs.map → NcAppSidebar-f7tuofzM.mjs.map} +1 -1
  291. package/dist/chunks/{NcAssistantButton-zriu0Kiz.cjs → NcAssistantButton-BMzPE7WA.cjs} +4 -4
  292. package/dist/chunks/{NcAssistantButton-zriu0Kiz.cjs.map → NcAssistantButton-BMzPE7WA.cjs.map} +1 -1
  293. package/dist/chunks/{NcAssistantButton-Dk28Wilk.mjs → NcAssistantButton-enexPvoC.mjs} +4 -4
  294. package/dist/chunks/{NcAssistantButton-Dk28Wilk.mjs.map → NcAssistantButton-enexPvoC.mjs.map} +1 -1
  295. package/dist/chunks/{NcAssistantIcon-B-Udgta_.cjs → NcAssistantIcon-DfVd2zWt.cjs} +2 -2
  296. package/dist/chunks/{NcAssistantIcon-B-Udgta_.cjs.map → NcAssistantIcon-DfVd2zWt.cjs.map} +1 -1
  297. package/dist/chunks/{NcAssistantIcon-CtEF1hjA.mjs → NcAssistantIcon-XwQFzBgA.mjs} +2 -2
  298. package/dist/chunks/{NcAssistantIcon-CtEF1hjA.mjs.map → NcAssistantIcon-XwQFzBgA.mjs.map} +1 -1
  299. package/dist/chunks/{NcAvatar-bd-5zXWN.cjs → NcAvatar-BwioPrbY.cjs} +13 -13
  300. package/dist/chunks/NcAvatar-BwioPrbY.cjs.map +1 -0
  301. package/dist/chunks/{NcAvatar-CuYtFEdJ.mjs → NcAvatar-DwUmx6Fg.mjs} +13 -13
  302. package/dist/chunks/NcAvatar-DwUmx6Fg.mjs.map +1 -0
  303. package/dist/chunks/{NcBreadcrumb-ChxXdE2m.cjs → NcBreadcrumb-B-zWjBNp.cjs} +3 -3
  304. package/dist/chunks/{NcBreadcrumb-ChxXdE2m.cjs.map → NcBreadcrumb-B-zWjBNp.cjs.map} +1 -1
  305. package/dist/chunks/{NcBreadcrumb-D1106x4x.mjs → NcBreadcrumb-ljdZbX7p.mjs} +3 -3
  306. package/dist/chunks/{NcBreadcrumb-D1106x4x.mjs.map → NcBreadcrumb-ljdZbX7p.mjs.map} +1 -1
  307. package/dist/chunks/{NcBreadcrumbs-XAvQ1MIp.cjs → NcBreadcrumbs-B6tPEu9b.cjs} +4 -4
  308. package/dist/chunks/{NcBreadcrumbs-XAvQ1MIp.cjs.map → NcBreadcrumbs-B6tPEu9b.cjs.map} +1 -1
  309. package/dist/chunks/{NcBreadcrumbs-C9Zo0nca.mjs → NcBreadcrumbs-D2DtX3XC.mjs} +4 -4
  310. package/dist/chunks/{NcBreadcrumbs-C9Zo0nca.mjs.map → NcBreadcrumbs-D2DtX3XC.mjs.map} +1 -1
  311. package/dist/chunks/{NcButton-DOsCAjiE.cjs → NcButton-CJBZrdiL.cjs} +6 -5
  312. package/dist/chunks/{NcButton-CWPBzbcC.mjs.map → NcButton-CJBZrdiL.cjs.map} +1 -1
  313. package/dist/chunks/{NcButton-CWPBzbcC.mjs → NcButton-DUZTtFhr.mjs} +6 -5
  314. package/dist/chunks/{NcButton-DOsCAjiE.cjs.map → NcButton-DUZTtFhr.mjs.map} +1 -1
  315. package/dist/chunks/{NcCheckboxRadioSwitch-CLnWsBwK.mjs → NcCheckboxRadioSwitch-NPJuwzqS.mjs} +2 -2
  316. package/dist/chunks/{NcCheckboxRadioSwitch-CLnWsBwK.mjs.map → NcCheckboxRadioSwitch-NPJuwzqS.mjs.map} +1 -1
  317. package/dist/chunks/{NcCheckboxRadioSwitch-yVj7slxL.cjs → NcCheckboxRadioSwitch-wSD3hWxs.cjs} +2 -2
  318. package/dist/chunks/{NcCheckboxRadioSwitch-yVj7slxL.cjs.map → NcCheckboxRadioSwitch-wSD3hWxs.cjs.map} +1 -1
  319. package/dist/chunks/{NcCollectionList-DZh_7a3g.cjs → NcCollectionList-Br6V_EiM.cjs} +15 -15
  320. package/dist/chunks/{NcCollectionList-DZh_7a3g.cjs.map → NcCollectionList-Br6V_EiM.cjs.map} +1 -1
  321. package/dist/chunks/{NcCollectionList-5_ghrfiE.mjs → NcCollectionList-D85QdobI.mjs} +15 -15
  322. package/dist/chunks/{NcCollectionList-5_ghrfiE.mjs.map → NcCollectionList-D85QdobI.mjs.map} +1 -1
  323. package/dist/chunks/NcColorPicker-BoS26yac.mjs +137 -0
  324. package/dist/chunks/NcColorPicker-BoS26yac.mjs.map +1 -0
  325. package/dist/chunks/NcColorPicker-Dg3d5_aQ.cjs +136 -0
  326. package/dist/chunks/NcColorPicker-Dg3d5_aQ.cjs.map +1 -0
  327. package/dist/chunks/{NcContent-I3cwZc0Z.cjs → NcContent-BbPae-OV.cjs} +5 -5
  328. package/dist/chunks/{NcContent-I3cwZc0Z.cjs.map → NcContent-BbPae-OV.cjs.map} +1 -1
  329. package/dist/chunks/{NcContent-CGBJ782F.mjs → NcContent-D8OFKv52.mjs} +5 -5
  330. package/dist/chunks/{NcContent-CGBJ782F.mjs.map → NcContent-D8OFKv52.mjs.map} +1 -1
  331. package/dist/chunks/{NcDashboardWidget-_Bi63nDZ.mjs → NcDashboardWidget-SSlGHcII.mjs} +5 -5
  332. package/dist/chunks/{NcDashboardWidget-_Bi63nDZ.mjs.map → NcDashboardWidget-SSlGHcII.mjs.map} +1 -1
  333. package/dist/chunks/{NcDashboardWidget-DKUU16oT.cjs → NcDashboardWidget-mEPmvuR0.cjs} +5 -5
  334. package/dist/chunks/{NcDashboardWidget-DKUU16oT.cjs.map → NcDashboardWidget-mEPmvuR0.cjs.map} +1 -1
  335. package/dist/chunks/{NcDashboardWidgetItem-D4q57Lg_.mjs → NcDashboardWidgetItem-BqlNJI6a.mjs} +4 -4
  336. package/dist/chunks/{NcDashboardWidgetItem-D4q57Lg_.mjs.map → NcDashboardWidgetItem-BqlNJI6a.mjs.map} +1 -1
  337. package/dist/chunks/{NcDashboardWidgetItem-BhGOOhKF.cjs → NcDashboardWidgetItem-C7AmqxH4.cjs} +4 -4
  338. package/dist/chunks/{NcDashboardWidgetItem-BhGOOhKF.cjs.map → NcDashboardWidgetItem-C7AmqxH4.cjs.map} +1 -1
  339. package/dist/chunks/{NcDialog-Du-BeUCp.mjs → NcDialog-Bg0hY6TP.mjs} +2 -2
  340. package/dist/chunks/{NcDialog-Du-BeUCp.mjs.map → NcDialog-Bg0hY6TP.mjs.map} +1 -1
  341. package/dist/chunks/{NcDialog-B2tW1DtP.cjs → NcDialog-D020rlVy.cjs} +2 -2
  342. package/dist/chunks/{NcDialog-B2tW1DtP.cjs.map → NcDialog-D020rlVy.cjs.map} +1 -1
  343. package/dist/chunks/{NcDialogButton-BB84DliS.cjs → NcDialogButton-8JhFaC5X.cjs} +4 -4
  344. package/dist/chunks/{NcDialogButton-BB84DliS.cjs.map → NcDialogButton-8JhFaC5X.cjs.map} +1 -1
  345. package/dist/chunks/{NcDialogButton-DtGSMhif.mjs → NcDialogButton-DSrC6lFd.mjs} +4 -4
  346. package/dist/chunks/{NcDialogButton-DtGSMhif.mjs.map → NcDialogButton-DSrC6lFd.mjs.map} +1 -1
  347. package/dist/chunks/{NcEmojiPicker-B2SLfIBu.mjs → NcEmojiPicker-CAphjgaf.mjs} +10 -10
  348. package/dist/chunks/NcEmojiPicker-CAphjgaf.mjs.map +1 -0
  349. package/dist/chunks/{NcEmojiPicker-q_n1Rd8U.cjs → NcEmojiPicker-DwXhWYHY.cjs} +16 -16
  350. package/dist/chunks/NcEmojiPicker-DwXhWYHY.cjs.map +1 -0
  351. package/dist/chunks/{NcHeaderButton-AKzxd51V.cjs → NcHeaderButton-6kuTEKbj.cjs} +4 -4
  352. package/dist/chunks/{NcHeaderButton-AKzxd51V.cjs.map → NcHeaderButton-6kuTEKbj.cjs.map} +1 -1
  353. package/dist/chunks/{NcHeaderButton-BORaK-yT.mjs → NcHeaderButton-TgPjfPtk.mjs} +4 -4
  354. package/dist/chunks/{NcHeaderButton-BORaK-yT.mjs.map → NcHeaderButton-TgPjfPtk.mjs.map} +1 -1
  355. package/dist/chunks/{NcHeaderMenu-CBP4SYca.cjs → NcHeaderMenu-CwjH_j0c.cjs} +4 -4
  356. package/dist/chunks/{NcHeaderMenu-CkD6cjnH.mjs.map → NcHeaderMenu-CwjH_j0c.cjs.map} +1 -1
  357. package/dist/chunks/{NcHeaderMenu-CkD6cjnH.mjs → NcHeaderMenu-Hk8OTuma.mjs} +4 -4
  358. package/dist/chunks/{NcHeaderMenu-CBP4SYca.cjs.map → NcHeaderMenu-Hk8OTuma.mjs.map} +1 -1
  359. package/dist/chunks/NcHotkey-BVMf1V89.mjs +60 -0
  360. package/dist/chunks/NcHotkey-BVMf1V89.mjs.map +1 -0
  361. package/dist/chunks/NcHotkey-CUPH5u09.cjs +59 -0
  362. package/dist/chunks/NcHotkey-CUPH5u09.cjs.map +1 -0
  363. package/dist/chunks/NcHotkeyList-CUjp1-hr.cjs +47 -0
  364. package/dist/chunks/NcHotkeyList-CUjp1-hr.cjs.map +1 -0
  365. package/dist/chunks/NcHotkeyList-jfSroQAQ.mjs +48 -0
  366. package/dist/chunks/NcHotkeyList-jfSroQAQ.mjs.map +1 -0
  367. package/dist/chunks/{NcInputConfirmCancel-BqZm3WBG.cjs → NcInputConfirmCancel-Bk_FQ5aA.cjs} +3 -3
  368. package/dist/chunks/{NcInputConfirmCancel-BqZm3WBG.cjs.map → NcInputConfirmCancel-Bk_FQ5aA.cjs.map} +1 -1
  369. package/dist/chunks/{NcInputConfirmCancel-21vM2JHp.mjs → NcInputConfirmCancel-XPlRewAN.mjs} +3 -3
  370. package/dist/chunks/{NcInputConfirmCancel-21vM2JHp.mjs.map → NcInputConfirmCancel-XPlRewAN.mjs.map} +1 -1
  371. package/dist/chunks/{NcInputField-Dry3uU_8.cjs → NcInputField-DAllLk3X.cjs} +7 -10
  372. package/dist/chunks/NcInputField-DAllLk3X.cjs.map +1 -0
  373. package/dist/chunks/{NcInputField-kKgY_2GV.mjs → NcInputField-DUtDY_1I.mjs} +7 -10
  374. package/dist/chunks/NcInputField-DUtDY_1I.mjs.map +1 -0
  375. package/dist/chunks/NcKbd-BdW5UbhW.mjs +66 -0
  376. package/dist/chunks/NcKbd-BdW5UbhW.mjs.map +1 -0
  377. package/dist/chunks/NcKbd-CVBh8nyU.cjs +65 -0
  378. package/dist/chunks/NcKbd-CVBh8nyU.cjs.map +1 -0
  379. package/dist/chunks/{NcListItem-D_-a7WR9.cjs → NcListItem-D3HiK7ra.cjs} +2 -2
  380. package/dist/chunks/{NcListItem-D_-a7WR9.cjs.map → NcListItem-D3HiK7ra.cjs.map} +1 -1
  381. package/dist/chunks/{NcListItem-B3ETbT9w.mjs → NcListItem-YVemqwZ_.mjs} +2 -2
  382. package/dist/chunks/{NcListItem-B3ETbT9w.mjs.map → NcListItem-YVemqwZ_.mjs.map} +1 -1
  383. package/dist/chunks/{NcListItemIcon-bQZej-L0.mjs → NcListItemIcon-BKwmcXnO.mjs} +2 -2
  384. package/dist/chunks/{NcListItemIcon-bQZej-L0.mjs.map → NcListItemIcon-BKwmcXnO.mjs.map} +1 -1
  385. package/dist/chunks/{NcListItemIcon-CYR8eKOU.cjs → NcListItemIcon-DL1VwHvL.cjs} +2 -2
  386. package/dist/chunks/{NcListItemIcon-CYR8eKOU.cjs.map → NcListItemIcon-DL1VwHvL.cjs.map} +1 -1
  387. package/dist/chunks/{NcPasswordField-DPGGwGEl.cjs → NcPasswordField-BeEYmL5N.cjs} +3 -3
  388. package/dist/chunks/{NcPasswordField-DPGGwGEl.cjs.map → NcPasswordField-BeEYmL5N.cjs.map} +1 -1
  389. package/dist/chunks/{NcPasswordField-9LYKS0t_.mjs → NcPasswordField-CujpFQHq.mjs} +3 -3
  390. package/dist/chunks/{NcPasswordField-9LYKS0t_.mjs.map → NcPasswordField-CujpFQHq.mjs.map} +1 -1
  391. package/dist/chunks/{NcPopover-DkX3Esbr.cjs → NcPopover-BgUZkmjk.cjs} +3 -3
  392. package/dist/chunks/{NcPopover-DkX3Esbr.cjs.map → NcPopover-BgUZkmjk.cjs.map} +1 -1
  393. package/dist/chunks/{NcPopover-DMUA5d7U.mjs → NcPopover-gxcAqoEb.mjs} +3 -3
  394. package/dist/chunks/{NcPopover-DMUA5d7U.mjs.map → NcPopover-gxcAqoEb.mjs.map} +1 -1
  395. package/dist/chunks/{NcRadioGroupButton-QLL4wM7A.mjs → NcRadioGroupButton-CD4tkF_s.mjs} +7 -7
  396. package/dist/chunks/{NcRadioGroupButton-QLL4wM7A.mjs.map → NcRadioGroupButton-CD4tkF_s.mjs.map} +1 -1
  397. package/dist/chunks/{NcRadioGroupButton-7UZaDiJ2.cjs → NcRadioGroupButton-DrqgN-8C.cjs} +7 -7
  398. package/dist/chunks/{NcRadioGroupButton-7UZaDiJ2.cjs.map → NcRadioGroupButton-DrqgN-8C.cjs.map} +1 -1
  399. package/dist/chunks/{NcRelatedResourcesPanel-jvOEQWWO.mjs → NcRelatedResourcesPanel-BTyqVb_E.mjs} +12 -12
  400. package/dist/chunks/NcRelatedResourcesPanel-BTyqVb_E.mjs.map +1 -0
  401. package/dist/chunks/{NcRelatedResourcesPanel-jHQ2bRko.cjs → NcRelatedResourcesPanel-CO6jajKF.cjs} +13 -13
  402. package/dist/chunks/NcRelatedResourcesPanel-CO6jajKF.cjs.map +1 -0
  403. package/dist/chunks/{NcRichContenteditable-iQhj1-AH.mjs → NcRichContenteditable-BivvoSO5.mjs} +13 -12
  404. package/dist/chunks/{NcRichContenteditable-iQhj1-AH.mjs.map → NcRichContenteditable-BivvoSO5.mjs.map} +1 -1
  405. package/dist/chunks/{NcRichContenteditable-BILbjzSU.cjs → NcRichContenteditable-BjxmdpS0.cjs} +13 -12
  406. package/dist/chunks/{NcRichContenteditable-BILbjzSU.cjs.map → NcRichContenteditable-BjxmdpS0.cjs.map} +1 -1
  407. package/dist/chunks/{NcRichText-DYcfsH5s.cjs → NcRichText-DoQg3Lha.cjs} +7 -7
  408. package/dist/chunks/NcRichText-DoQg3Lha.cjs.map +1 -0
  409. package/dist/chunks/{NcRichText-B7M7rNqC.mjs → NcRichText-Dy5By94Y.mjs} +7 -7
  410. package/dist/chunks/NcRichText-Dy5By94Y.mjs.map +1 -0
  411. package/dist/chunks/{NcSelect-s3_u0qvy.cjs → NcSelect-Bw8EG_xU.cjs} +4 -4
  412. package/dist/chunks/{NcSelect-s3_u0qvy.cjs.map → NcSelect-Bw8EG_xU.cjs.map} +1 -1
  413. package/dist/chunks/{NcSelect-PvjbF3jF.mjs → NcSelect-QVd6uJPA.mjs} +4 -4
  414. package/dist/chunks/{NcSelect-PvjbF3jF.mjs.map → NcSelect-QVd6uJPA.mjs.map} +1 -1
  415. package/dist/chunks/{NcSelectTags-DYUCDZ_e.mjs → NcSelectTags-D-22teKJ.mjs} +6 -6
  416. package/dist/chunks/NcSelectTags-D-22teKJ.mjs.map +1 -0
  417. package/dist/chunks/{NcSelectTags-e4Gjcx_7.cjs → NcSelectTags-aGwTgIM-.cjs} +6 -6
  418. package/dist/chunks/NcSelectTags-aGwTgIM-.cjs.map +1 -0
  419. package/dist/chunks/{NcSelectUsers-CMF_h9c0.mjs → NcSelectUsers-DR6-q1aK.mjs} +5 -5
  420. package/dist/chunks/{NcSelectUsers-CMF_h9c0.mjs.map → NcSelectUsers-DR6-q1aK.mjs.map} +1 -1
  421. package/dist/chunks/{NcSelectUsers-Bmwhu14K.cjs → NcSelectUsers-Qhrizan5.cjs} +5 -5
  422. package/dist/chunks/{NcSelectUsers-Bmwhu14K.cjs.map → NcSelectUsers-Qhrizan5.cjs.map} +1 -1
  423. package/dist/chunks/{NcSettingsInputText-DWihH7ke.cjs → NcSettingsInputText-O8870Grr.cjs} +3 -3
  424. package/dist/chunks/{NcSettingsInputText-DWihH7ke.cjs.map → NcSettingsInputText-O8870Grr.cjs.map} +1 -1
  425. package/dist/chunks/{NcSettingsInputText-BQVh24zT.mjs → NcSettingsInputText-Q8DDr-Yj.mjs} +3 -3
  426. package/dist/chunks/{NcSettingsInputText-BQVh24zT.mjs.map → NcSettingsInputText-Q8DDr-Yj.mjs.map} +1 -1
  427. package/dist/chunks/{NcSettingsSection-Dgc7SEuu.cjs → NcSettingsSection-DKpzo7eI.cjs} +2 -2
  428. package/dist/chunks/{NcSettingsSection-Dgc7SEuu.cjs.map → NcSettingsSection-DKpzo7eI.cjs.map} +1 -1
  429. package/dist/chunks/{NcSettingsSection-evNvfEg2.mjs → NcSettingsSection-VxcVEF8L.mjs} +2 -2
  430. package/dist/chunks/{NcSettingsSection-evNvfEg2.mjs.map → NcSettingsSection-VxcVEF8L.mjs.map} +1 -1
  431. package/dist/chunks/{NcSettingsSelectGroup-X1pBwmAZ.cjs → NcSettingsSelectGroup-BQWwtSEb.cjs} +4 -4
  432. package/dist/chunks/{NcSettingsSelectGroup-X1pBwmAZ.cjs.map → NcSettingsSelectGroup-BQWwtSEb.cjs.map} +1 -1
  433. package/dist/chunks/{NcSettingsSelectGroup-C-YAk1f8.mjs → NcSettingsSelectGroup-CZ0EjeJb.mjs} +4 -4
  434. package/dist/chunks/{NcSettingsSelectGroup-C-YAk1f8.mjs.map → NcSettingsSelectGroup-CZ0EjeJb.mjs.map} +1 -1
  435. package/dist/chunks/{NcTextField-Cp3tulze.cjs → NcTextField-52Fnd27A.cjs} +5 -5
  436. package/dist/chunks/{NcTextField-Cp3tulze.cjs.map → NcTextField-52Fnd27A.cjs.map} +1 -1
  437. package/dist/chunks/{NcTextField-D_IMz2MR.mjs → NcTextField-CVfixgfj.mjs} +5 -5
  438. package/dist/chunks/{NcTextField-D_IMz2MR.mjs.map → NcTextField-CVfixgfj.mjs.map} +1 -1
  439. package/dist/chunks/{NcTimezonePicker-Cu1FrSIX.mjs → NcTimezonePicker-BInLNCSt.mjs} +4 -4
  440. package/dist/chunks/{NcTimezonePicker-Cu1FrSIX.mjs.map → NcTimezonePicker-BInLNCSt.mjs.map} +1 -1
  441. package/dist/chunks/{NcTimezonePicker-Co7jDP7N.cjs → NcTimezonePicker-CtFsF-jG.cjs} +4 -4
  442. package/dist/chunks/{NcTimezonePicker-Co7jDP7N.cjs.map → NcTimezonePicker-CtFsF-jG.cjs.map} +1 -1
  443. package/dist/chunks/{NcUserBubble-CdX6H9-M.cjs → NcUserBubble-ByvVV8jh.cjs} +3 -3
  444. package/dist/chunks/{NcUserBubble-CdX6H9-M.cjs.map → NcUserBubble-ByvVV8jh.cjs.map} +1 -1
  445. package/dist/chunks/{NcUserBubble-Be2B8iJY.mjs → NcUserBubble-sIUM-Rru.mjs} +3 -3
  446. package/dist/chunks/{NcUserBubble-Be2B8iJY.mjs.map → NcUserBubble-sIUM-Rru.mjs.map} +1 -1
  447. package/dist/chunks/{NcUserStatusIcon-DhZabBIY.cjs → NcUserStatusIcon-CYsrjxDh.cjs} +3 -3
  448. package/dist/chunks/{NcUserStatusIcon-DhZabBIY.cjs.map → NcUserStatusIcon-CYsrjxDh.cjs.map} +1 -1
  449. package/dist/chunks/{NcUserStatusIcon-C83nB_8T.mjs → NcUserStatusIcon-DZI9jlXE.mjs} +3 -3
  450. package/dist/chunks/{NcUserStatusIcon-C83nB_8T.mjs.map → NcUserStatusIcon-DZI9jlXE.mjs.map} +1 -1
  451. package/dist/chunks/{ScopeComponent-9wtS_FpN.cjs → ScopeComponent-BCznIxFT.cjs} +2 -2
  452. package/dist/chunks/{ScopeComponent-9wtS_FpN.cjs.map → ScopeComponent-BCznIxFT.cjs.map} +1 -1
  453. package/dist/chunks/{ScopeComponent-305QOaqN.mjs → ScopeComponent-CNZ_b7IG.mjs} +2 -2
  454. package/dist/chunks/{ScopeComponent-305QOaqN.mjs.map → ScopeComponent-CNZ_b7IG.mjs.map} +1 -1
  455. package/dist/chunks/{_l10n-BEfeU7gr.mjs → _l10n-BWisB7-O.mjs} +67 -71
  456. package/dist/chunks/_l10n-BWisB7-O.mjs.map +1 -0
  457. package/dist/chunks/{_l10n-DM-VRK9x.cjs → _l10n-eOBJ3Dwl.cjs} +23 -27
  458. package/dist/chunks/{_l10n-DM-VRK9x.cjs.map → _l10n-eOBJ3Dwl.cjs.map} +1 -1
  459. package/dist/chunks/{GenColors-BVouTbTJ.cjs → colors-BsDQ1Yz3.cjs} +40 -46
  460. package/dist/chunks/colors-BsDQ1Yz3.cjs.map +1 -0
  461. package/dist/chunks/{GenColors-DIH749TS.mjs → colors-D3xlq-id.mjs} +41 -47
  462. package/dist/chunks/colors-D3xlq-id.mjs.map +1 -0
  463. package/dist/chunks/{mdi-DXu6GWVJ.mjs → mdi-CKSXwCsV.mjs} +8 -6
  464. package/dist/chunks/{mdi-DXu6GWVJ.mjs.map → mdi-CKSXwCsV.mjs.map} +1 -1
  465. package/dist/chunks/{mdi-BBwE-MZC.cjs → mdi-Nhb6SBw8.cjs} +3 -1
  466. package/dist/chunks/{mdi-BBwE-MZC.cjs.map → mdi-Nhb6SBw8.cjs.map} +1 -1
  467. package/dist/chunks/{referencePickerModal-CN4C9eDc.mjs → referencePickerModal-Cl3fIc9s.mjs} +11 -11
  468. package/dist/chunks/referencePickerModal-Cl3fIc9s.mjs.map +1 -0
  469. package/dist/chunks/{referencePickerModal-BcAnnsxZ.cjs → referencePickerModal-Dz1h1EHq.cjs} +11 -11
  470. package/dist/chunks/referencePickerModal-Dz1h1EHq.cjs.map +1 -0
  471. package/dist/chunks/useAppSettingsDialog-CPqmms-u.cjs +9 -0
  472. package/dist/chunks/useAppSettingsDialog-CPqmms-u.cjs.map +1 -0
  473. package/dist/chunks/useAppSettingsDialog-Dn48dw1k.mjs +10 -0
  474. package/dist/chunks/useAppSettingsDialog-Dn48dw1k.mjs.map +1 -0
  475. package/dist/chunks/useModelMigration-D5zhrNXr.cjs.map +1 -1
  476. package/dist/chunks/useModelMigration-EhAWvqDD.mjs.map +1 -1
  477. package/dist/components/NcAppSettingsDialog/index.d.ts +5 -0
  478. package/dist/components/NcAppSettingsDialog/useAppSettingsDialog.d.ts +25 -0
  479. package/dist/components/NcAppSettingsSection/index.d.ts +5 -0
  480. package/dist/components/NcAppSettingsSectionShortcuts/index.d.ts +1 -0
  481. package/dist/components/NcColorPicker/index.d.ts +5 -0
  482. package/dist/components/NcHotkey/index.d.ts +1 -0
  483. package/dist/components/NcHotkeyList/index.d.ts +1 -0
  484. package/dist/composables/index.d.ts +9 -0
  485. package/dist/composables/useHotKey/index.d.ts +4 -2
  486. package/dist/composables/useIsMobile/index.d.ts +23 -0
  487. package/dist/composables/useModelMigration.d.ts +1 -1
  488. package/dist/index.cjs +66 -57
  489. package/dist/index.cjs.map +1 -1
  490. package/dist/index.mjs +65 -56
  491. package/dist/index.mjs.map +1 -1
  492. package/dist/utils/colors.d.ts +36 -0
  493. package/package.json +15 -16
  494. package/dist/assets/NcAppNavigationSettings-1YRzh-xl.css +0 -74
  495. package/dist/chunks/GenColors-BVouTbTJ.cjs.map +0 -1
  496. package/dist/chunks/GenColors-DIH749TS.mjs.map +0 -1
  497. package/dist/chunks/NcActionTextEditable-BpahzGpr.cjs.map +0 -1
  498. package/dist/chunks/NcAppContent-C9NGJE6n.mjs.map +0 -1
  499. package/dist/chunks/NcAppContent-Djy38ou2.cjs.map +0 -1
  500. package/dist/chunks/NcAppNavigationSettings-CkFZMLtH.cjs.map +0 -1
  501. package/dist/chunks/NcAppNavigationSettings-Dq2O3kRz.mjs.map +0 -1
  502. package/dist/chunks/NcAppSettingsDialog-DVFw09eD.mjs +0 -223
  503. package/dist/chunks/NcAppSettingsDialog-DVFw09eD.mjs.map +0 -1
  504. package/dist/chunks/NcAppSettingsDialog-DalEoC9H.cjs +0 -225
  505. package/dist/chunks/NcAppSettingsDialog-DalEoC9H.cjs.map +0 -1
  506. package/dist/chunks/NcAvatar-CuYtFEdJ.mjs.map +0 -1
  507. package/dist/chunks/NcAvatar-bd-5zXWN.cjs.map +0 -1
  508. package/dist/chunks/NcColorPicker-Cae6XNoK.mjs +0 -255
  509. package/dist/chunks/NcColorPicker-Cae6XNoK.mjs.map +0 -1
  510. package/dist/chunks/NcColorPicker-D-E2dT4Q.cjs +0 -254
  511. package/dist/chunks/NcColorPicker-D-E2dT4Q.cjs.map +0 -1
  512. package/dist/chunks/NcEmojiPicker-B2SLfIBu.mjs.map +0 -1
  513. package/dist/chunks/NcEmojiPicker-q_n1Rd8U.cjs.map +0 -1
  514. package/dist/chunks/NcInputField-Dry3uU_8.cjs.map +0 -1
  515. package/dist/chunks/NcInputField-kKgY_2GV.mjs.map +0 -1
  516. package/dist/chunks/NcRelatedResourcesPanel-jHQ2bRko.cjs.map +0 -1
  517. package/dist/chunks/NcRelatedResourcesPanel-jvOEQWWO.mjs.map +0 -1
  518. package/dist/chunks/NcRichText-B7M7rNqC.mjs.map +0 -1
  519. package/dist/chunks/NcRichText-DYcfsH5s.cjs.map +0 -1
  520. package/dist/chunks/NcSelectTags-DYUCDZ_e.mjs.map +0 -1
  521. package/dist/chunks/NcSelectTags-e4Gjcx_7.cjs.map +0 -1
  522. package/dist/chunks/_l10n-BEfeU7gr.mjs.map +0 -1
  523. package/dist/chunks/referencePickerModal-BcAnnsxZ.cjs.map +0 -1
  524. package/dist/chunks/referencePickerModal-CN4C9eDc.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"NcAppNavigationSearch-CsIzwF6F.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\n<template>\n\t<div\n\t\tclass=\"app-navigation-search\"\n\t\t:class=\"{\n\t\t\t'app-navigation-search--has-actions': hasActions(),\n\t\t}\">\n\t\t<NcInputField\n\t\t\tref=\"inputElement\"\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:value=\"modelValue\"\n\t\t\t@update:value=\"$emit('update:modelValue', $event)\"\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\n\t\t\tv-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>\nimport { useFocusWithin } from '@vueuse/core'\nimport { nextTick, ref, useSlots, watch } from 'vue'\nimport IconClose from 'vue-material-design-icons/Close.vue'\nimport NcInputField from '../NcInputField/NcInputField.vue'\nimport { t } from '../../l10n.js'\n\ndefineProps({\n\t/**\n\t * Current search input\n\t */\n\tmodelValue: {\n\t\ttype: String,\n\t\tdefault: '',\n\t},\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\nconst emit = defineEmits(['update:modelValue'])\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\n/**\n * @type {import('vue').Ref<HTMLDivElement>}\n */\nconst actionsContainer = ref()\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})\nwatch(showActions, (show) => {\n\twindow.clearTimeout(timeoutId.value)\n\tif (show) {\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 = !show\n\t\t}, transitionTimeout)\n\t}\n})\n\n/**\n * Handle close the search\n */\nfunction onCloseSearch() {\n\temit('update:modelValue', '')\n\tif (hasActions()) {\n\t\tshowActions.value = true\n\t\tnextTick(() => actionsContainer.value.querySelector('button')?.focus())\n\t}\n}\n</script>\n\n<script>\nexport default {\n\tname: 'NcAppNavigationSearch',\n\tmodel: {\n\t\tevent: 'update:modelValue',\n\t\tprop: 'modelValue',\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":[],"mappings":";;;;;;;AA4OA,MAAA,cAAe;AAAA,EACd,MAAM;AAAA,EACN,OAAO;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,EACR;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAnDA,UAAM,QAAQ,SAAQ;AAEtB,UAAM,eAAe,IAAG;AACxB,UAAM,EAAE,SAAS,kBAAkB,eAAe,YAAY;AAG9D,UAAM,oBAAoB,OAAO,SAAS,OAAO,iBAAiB,OAAO,SAAS,IAAI,EAAE,iBAAiB,mBAAmB,CAAC,KAAK;AAKlI,UAAM,mBAAmB,IAAG;AAC5B,UAAM,aAAa,MAAM,CAAC,CAAC,MAAM;AACjC,UAAM,cAAc,IAAI,IAAI;AAC5B,UAAM,YAAY,IAAG;AAErB,UAAM,cAAc,IAAI,KAAK;AAC7B,UAAM,eAAe,MAAM;AAC1B,kBAAY,QAAQ,CAAC,cAAc;AAAA,IACpC,CAAC;AACD,UAAM,aAAa,CAAC,SAAS;AAC5B,aAAO,aAAa,UAAU,KAAK;AACnC,UAAI,MAAM;AACT,oBAAY,QAAQ;AAAA,MACrB,OAAO;AAEN,eAAO,WAAW,MAAM;AACvB,sBAAY,QAAQ,CAAC;AAAA,QACtB,GAAG,iBAAiB;AAAA,MACrB;AAAA,IACD,CAAC;AAKD,aAAS,gBAAgB;AACxB,WAAK,qBAAqB,EAAE;AAC5B,UAAI,WAAU,GAAI;AACjB,oBAAY,QAAQ;AACpB,iBAAS,MAAM,iBAAiB,MAAM,cAAc,QAAQ,GAAG,MAAK,CAAE;AAAA,MACvE;AAAA,IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NcAppNavigationSearch-WfL4IPD8.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\n<template>\n\t<div\n\t\tclass=\"app-navigation-search\"\n\t\t:class=\"{\n\t\t\t'app-navigation-search--has-actions': hasActions(),\n\t\t}\">\n\t\t<NcInputField\n\t\t\tref=\"inputElement\"\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:value=\"modelValue\"\n\t\t\t@update:value=\"$emit('update:modelValue', $event)\"\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\n\t\t\tv-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>\nimport { useFocusWithin } from '@vueuse/core'\nimport { nextTick, ref, useSlots, watch } from 'vue'\nimport IconClose from 'vue-material-design-icons/Close.vue'\nimport NcInputField from '../NcInputField/NcInputField.vue'\nimport { t } from '../../l10n.js'\n\ndefineProps({\n\t/**\n\t * Current search input\n\t */\n\tmodelValue: {\n\t\ttype: String,\n\t\tdefault: '',\n\t},\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\nconst emit = defineEmits(['update:modelValue'])\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\n/**\n * @type {import('vue').Ref<HTMLDivElement>}\n */\nconst actionsContainer = ref()\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})\nwatch(showActions, (show) => {\n\twindow.clearTimeout(timeoutId.value)\n\tif (show) {\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 = !show\n\t\t}, transitionTimeout)\n\t}\n})\n\n/**\n * Handle close the search\n */\nfunction onCloseSearch() {\n\temit('update:modelValue', '')\n\tif (hasActions()) {\n\t\tshowActions.value = true\n\t\tnextTick(() => actionsContainer.value.querySelector('button')?.focus())\n\t}\n}\n</script>\n\n<script>\nexport default {\n\tname: 'NcAppNavigationSearch',\n\tmodel: {\n\t\tevent: 'update:modelValue',\n\t\tprop: 'modelValue',\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":[],"mappings":";;;;;;;AA4OA,MAAA,cAAe;AAAA,EACd,MAAM;AAAA,EACN,OAAO;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,EACR;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAnDA,UAAM,QAAQ,SAAQ;AAEtB,UAAM,eAAe,IAAG;AACxB,UAAM,EAAE,SAAS,kBAAkB,eAAe,YAAY;AAG9D,UAAM,oBAAoB,OAAO,SAAS,OAAO,iBAAiB,OAAO,SAAS,IAAI,EAAE,iBAAiB,mBAAmB,CAAC,KAAK;AAKlI,UAAM,mBAAmB,IAAG;AAC5B,UAAM,aAAa,MAAM,CAAC,CAAC,MAAM;AACjC,UAAM,cAAc,IAAI,IAAI;AAC5B,UAAM,YAAY,IAAG;AAErB,UAAM,cAAc,IAAI,KAAK;AAC7B,UAAM,eAAe,MAAM;AAC1B,kBAAY,QAAQ,CAAC,cAAc;AAAA,IACpC,CAAC;AACD,UAAM,aAAa,CAAC,SAAS;AAC5B,aAAO,aAAa,UAAU,KAAK;AACnC,UAAI,MAAM;AACT,oBAAY,QAAQ;AAAA,MACrB,OAAO;AAEN,eAAO,WAAW,MAAM;AACvB,sBAAY,QAAQ,CAAC;AAAA,QACtB,GAAG,iBAAiB;AAAA,MACrB;AAAA,IACD,CAAC;AAKD,aAAS,gBAAgB;AACxB,WAAK,qBAAqB,EAAE;AAC5B,UAAI,WAAU,GAAI;AACjB,oBAAY,QAAQ;AACpB,iBAAS,MAAM,iBAAiB,MAAM,cAAc,QAAQ,GAAG,MAAK,CAAE;AAAA,MACvE;AAAA,IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -3,10 +3,10 @@ require('../assets/NcAppNavigationSearch-o97SOfOb.css');
3
3
  const core = require("@vueuse/core");
4
4
  const Vue = require("vue");
5
5
  const Close = require("./Close-CqmXxEKi.cjs");
6
- const NcInputField = require("./NcInputField-Dry3uU_8.cjs");
7
- const _l10n = require("./_l10n-DM-VRK9x.cjs");
6
+ const NcInputField = require("./NcInputField-DAllLk3X.cjs");
7
+ const _l10n = require("./_l10n-eOBJ3Dwl.cjs");
8
8
  const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
9
- _l10n.register(_l10n.t15, _l10n.t42);
9
+ _l10n.register(_l10n.t15, _l10n.t43);
10
10
  const __default__ = {
11
11
  name: "NcAppNavigationSearch",
12
12
  model: {
@@ -97,4 +97,4 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
97
97
  );
98
98
  const NcAppNavigationSearch = __component__.exports;
99
99
  exports.NcAppNavigationSearch = NcAppNavigationSearch;
100
- //# sourceMappingURL=NcAppNavigationSearch-BXjB3FEJ.cjs.map
100
+ //# sourceMappingURL=NcAppNavigationSearch-pMlFjm9w.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NcAppNavigationSearch-BXjB3FEJ.cjs","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\n<template>\n\t<div\n\t\tclass=\"app-navigation-search\"\n\t\t:class=\"{\n\t\t\t'app-navigation-search--has-actions': hasActions(),\n\t\t}\">\n\t\t<NcInputField\n\t\t\tref=\"inputElement\"\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:value=\"modelValue\"\n\t\t\t@update:value=\"$emit('update:modelValue', $event)\"\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\n\t\t\tv-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>\nimport { useFocusWithin } from '@vueuse/core'\nimport { nextTick, ref, useSlots, watch } from 'vue'\nimport IconClose from 'vue-material-design-icons/Close.vue'\nimport NcInputField from '../NcInputField/NcInputField.vue'\nimport { t } from '../../l10n.js'\n\ndefineProps({\n\t/**\n\t * Current search input\n\t */\n\tmodelValue: {\n\t\ttype: String,\n\t\tdefault: '',\n\t},\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\nconst emit = defineEmits(['update:modelValue'])\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\n/**\n * @type {import('vue').Ref<HTMLDivElement>}\n */\nconst actionsContainer = ref()\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})\nwatch(showActions, (show) => {\n\twindow.clearTimeout(timeoutId.value)\n\tif (show) {\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 = !show\n\t\t}, transitionTimeout)\n\t}\n})\n\n/**\n * Handle close the search\n */\nfunction onCloseSearch() {\n\temit('update:modelValue', '')\n\tif (hasActions()) {\n\t\tshowActions.value = true\n\t\tnextTick(() => actionsContainer.value.querySelector('button')?.focus())\n\t}\n}\n</script>\n\n<script>\nexport default {\n\tname: 'NcAppNavigationSearch',\n\tmodel: {\n\t\tevent: 'update:modelValue',\n\t\tprop: 'modelValue',\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":["useSlots","ref","useFocusWithin","watch","nextTick"],"mappings":";;;;;;;;AA4OA,MAAA,cAAe;AAAA,EACd,MAAM;AAAA,EACN,OAAO;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,EACR;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAnDA,UAAM,QAAQA,IAAAA,SAAQ;AAEtB,UAAM,eAAeC,IAAAA,IAAG;AACxB,UAAM,EAAE,SAAS,kBAAkBC,KAAAA,eAAe,YAAY;AAG9D,UAAM,oBAAoB,OAAO,SAAS,OAAO,iBAAiB,OAAO,SAAS,IAAI,EAAE,iBAAiB,mBAAmB,CAAC,KAAK;AAKlI,UAAM,mBAAmBD,IAAAA,IAAG;AAC5B,UAAM,aAAa,MAAM,CAAC,CAAC,MAAM;AACjC,UAAM,cAAcA,IAAAA,IAAI,IAAI;AAC5B,UAAM,YAAYA,IAAAA,IAAG;AAErB,UAAM,cAAcA,IAAAA,IAAI,KAAK;AAC7BE,QAAAA,MAAM,eAAe,MAAM;AAC1B,kBAAY,QAAQ,CAAC,cAAc;AAAA,IACpC,CAAC;AACDA,QAAAA,MAAM,aAAa,CAAC,SAAS;AAC5B,aAAO,aAAa,UAAU,KAAK;AACnC,UAAI,MAAM;AACT,oBAAY,QAAQ;AAAA,MACrB,OAAO;AAEN,eAAO,WAAW,MAAM;AACvB,sBAAY,QAAQ,CAAC;AAAA,QACtB,GAAG,iBAAiB;AAAA,MACrB;AAAA,IACD,CAAC;AAKD,aAAS,gBAAgB;AACxB,WAAK,qBAAqB,EAAE;AAC5B,UAAI,WAAU,GAAI;AACjB,oBAAY,QAAQ;AACpBC,YAAAA,SAAS,MAAM,iBAAiB,MAAM,cAAc,QAAQ,GAAG,MAAK,CAAE;AAAA,MACvE;AAAA,IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NcAppNavigationSearch-pMlFjm9w.cjs","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\n<template>\n\t<div\n\t\tclass=\"app-navigation-search\"\n\t\t:class=\"{\n\t\t\t'app-navigation-search--has-actions': hasActions(),\n\t\t}\">\n\t\t<NcInputField\n\t\t\tref=\"inputElement\"\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:value=\"modelValue\"\n\t\t\t@update:value=\"$emit('update:modelValue', $event)\"\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\n\t\t\tv-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>\nimport { useFocusWithin } from '@vueuse/core'\nimport { nextTick, ref, useSlots, watch } from 'vue'\nimport IconClose from 'vue-material-design-icons/Close.vue'\nimport NcInputField from '../NcInputField/NcInputField.vue'\nimport { t } from '../../l10n.js'\n\ndefineProps({\n\t/**\n\t * Current search input\n\t */\n\tmodelValue: {\n\t\ttype: String,\n\t\tdefault: '',\n\t},\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\nconst emit = defineEmits(['update:modelValue'])\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\n/**\n * @type {import('vue').Ref<HTMLDivElement>}\n */\nconst actionsContainer = ref()\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})\nwatch(showActions, (show) => {\n\twindow.clearTimeout(timeoutId.value)\n\tif (show) {\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 = !show\n\t\t}, transitionTimeout)\n\t}\n})\n\n/**\n * Handle close the search\n */\nfunction onCloseSearch() {\n\temit('update:modelValue', '')\n\tif (hasActions()) {\n\t\tshowActions.value = true\n\t\tnextTick(() => actionsContainer.value.querySelector('button')?.focus())\n\t}\n}\n</script>\n\n<script>\nexport default {\n\tname: 'NcAppNavigationSearch',\n\tmodel: {\n\t\tevent: 'update:modelValue',\n\t\tprop: 'modelValue',\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":["useSlots","ref","useFocusWithin","watch","nextTick"],"mappings":";;;;;;;;AA4OA,MAAA,cAAe;AAAA,EACd,MAAM;AAAA,EACN,OAAO;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,EACR;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAnDA,UAAM,QAAQA,IAAAA,SAAQ;AAEtB,UAAM,eAAeC,IAAAA,IAAG;AACxB,UAAM,EAAE,SAAS,kBAAkBC,KAAAA,eAAe,YAAY;AAG9D,UAAM,oBAAoB,OAAO,SAAS,OAAO,iBAAiB,OAAO,SAAS,IAAI,EAAE,iBAAiB,mBAAmB,CAAC,KAAK;AAKlI,UAAM,mBAAmBD,IAAAA,IAAG;AAC5B,UAAM,aAAa,MAAM,CAAC,CAAC,MAAM;AACjC,UAAM,cAAcA,IAAAA,IAAI,IAAI;AAC5B,UAAM,YAAYA,IAAAA,IAAG;AAErB,UAAM,cAAcA,IAAAA,IAAI,KAAK;AAC7BE,QAAAA,MAAM,eAAe,MAAM;AAC1B,kBAAY,QAAQ,CAAC,cAAc;AAAA,IACpC,CAAC;AACDA,QAAAA,MAAM,aAAa,CAAC,SAAS;AAC5B,aAAO,aAAa,UAAU,KAAK;AACnC,UAAI,MAAM;AACT,oBAAY,QAAQ;AAAA,MACrB,OAAO;AAEN,eAAO,WAAW,MAAM;AACvB,sBAAY,QAAQ,CAAC;AAAA,QACtB,GAAG,iBAAiB;AAAA,MACrB;AAAA,IACD,CAAC;AAKD,aAAS,gBAAgB;AACxB,WAAK,qBAAqB,EAAE;AAC5B,UAAI,WAAU,GAAI;AACjB,oBAAY,QAAQ;AACpBC,YAAAA,SAAS,MAAM,iBAAiB,MAAM,cAAc,QAAQ,GAAG,MAAK,CAAE;AAAA,MACvE;AAAA,IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,9 +1,10 @@
1
1
  import '../assets/NcMentionBubble-CaztX9Pv.css';
2
- import '../assets/NcAppNavigationSettings-1YRzh-xl.css';
3
- import { h as mdiCogOutline, i as mdiCog } from "./mdi-DXu6GWVJ.mjs";
2
+ import '../assets/NcAppNavigationSettings-2Wh1E3Hq.css';
3
+ import { f as mdiCogOutline, g as mdiCog } from "./mdi-CKSXwCsV.mjs";
4
4
  import { vOnClickOutside } from "@vueuse/components";
5
+ import { N as NcButton } from "./NcButton-DUZTtFhr.mjs";
5
6
  import { N as NcIconSvgWrapper } from "./NcIconSvgWrapper-BreCg8pX.mjs";
6
- import { r as register, p as t46, a as t } from "./_l10n-BEfeU7gr.mjs";
7
+ import { r as register, n as t47, a as t } from "./_l10n-BWisB7-O.mjs";
7
8
  import clickOutsideOptions from "../Mixins/clickOutsideOptions.mjs";
8
9
  import "../Composables/useIsFullscreen.mjs";
9
10
  import "../Composables/useIsMobile.mjs";
@@ -19,13 +20,15 @@ import "@nextcloud/auth";
19
20
  import "@nextcloud/axios";
20
21
  import "@nextcloud/capabilities";
21
22
  import "./logger-D3RVzcfQ.mjs";
23
+ import { G as GenRandomId } from "./GenRandomId-F5ebeBB_.mjs";
22
24
  import { i as isLegacy32 } from "./legacy-MK4GvP26.mjs";
23
- register(t46);
25
+ register(t47);
24
26
  const _sfc_main = {
25
27
  directives: {
26
28
  ClickOutside: vOnClickOutside
27
29
  },
28
30
  components: {
31
+ NcButton,
29
32
  NcIconSvgWrapper
30
33
  },
31
34
  mixins: [
@@ -44,7 +47,9 @@ const _sfc_main = {
44
47
  }
45
48
  },
46
49
  setup() {
50
+ const contentId = GenRandomId();
47
51
  return {
52
+ contentId,
48
53
  isLegacy32,
49
54
  mdiCog,
50
55
  mdiCogOutline
@@ -64,9 +69,6 @@ const _sfc_main = {
64
69
  }
65
70
  },
66
71
  methods: {
67
- toggleMenu() {
68
- this.open = !this.open;
69
- },
70
72
  closeMenu() {
71
73
  this.open = false;
72
74
  }
@@ -74,7 +76,11 @@ const _sfc_main = {
74
76
  };
75
77
  var _sfc_render = function render() {
76
78
  var _vm = this, _c = _vm._self._c;
77
- return _c("div", { directives: [{ name: "click-outside", rawName: "v-click-outside", value: _vm.clickOutsideConfig, expression: "clickOutsideConfig" }], class: { open: _vm.open }, attrs: { "id": "app-settings" } }, [_c("div", { attrs: { "id": "app-settings__header" } }, [_c("button", { staticClass: "settings-button", attrs: { "type": "button", "aria-expanded": _vm.open ? "true" : "false", "aria-controls": "app-settings__content" }, on: { "click": _vm.toggleMenu } }, [_c("NcIconSvgWrapper", { staticClass: "settings-button__icon", attrs: { "path": _vm.isLegacy32 ? _vm.mdiCog : _vm.mdiCogOutline } }), _c("span", { staticClass: "settings-button__label" }, [_vm._v(_vm._s(_vm.name))])], 1)]), _c("Transition", { attrs: { "name": "slide-up" } }, [_c("div", { directives: [{ name: "show", rawName: "v-show", value: _vm.open, expression: "open" }], attrs: { "id": "app-settings__content" } }, [_vm._t("default")], 2)])], 1);
79
+ return _c("div", { directives: [{ name: "click-outside", rawName: "v-click-outside", value: _vm.clickOutsideConfig, expression: "clickOutsideConfig" }], class: { open: _vm.open }, attrs: { "id": "app-settings" } }, [_c("div", { attrs: { "id": "app-settings__header" } }, [_c("NcButton", { staticClass: "settings-button", attrs: { "aria-controls": _vm.contentId, "aria-expanded": _vm.open ? "true" : "false", "alignment": "start", "variant": "tertiary", "wide": "" }, on: { "click": function($event) {
80
+ _vm.open = !_vm.open;
81
+ } }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
82
+ return [_c("NcIconSvgWrapper", { staticClass: "settings-button__icon", attrs: { "path": _vm.isLegacy32 ? _vm.mdiCog : _vm.mdiCogOutline } })];
83
+ }, proxy: true }]) }, [_vm._v(" " + _vm._s(_vm.name) + " ")])], 1), _c("Transition", { attrs: { "name": "slide-up" } }, [_c("div", { directives: [{ name: "show", rawName: "v-show", value: _vm.open, expression: "open" }], attrs: { "id": _vm.contentId } }, [_vm._t("default")], 2)])], 1);
78
84
  };
79
85
  var _sfc_staticRenderFns = [];
80
86
  var __component__ = /* @__PURE__ */ normalizeComponent(
@@ -83,10 +89,10 @@ var __component__ = /* @__PURE__ */ normalizeComponent(
83
89
  _sfc_staticRenderFns,
84
90
  false,
85
91
  null,
86
- "e9e1bc3b"
92
+ "8fb21c8b"
87
93
  );
88
94
  const NcAppNavigationSettings = __component__.exports;
89
95
  export {
90
96
  NcAppNavigationSettings as N
91
97
  };
92
- //# sourceMappingURL=NcAppNavigationSettings-Dq2O3kRz.mjs.map
98
+ //# sourceMappingURL=NcAppNavigationSettings-BhK7vlfP.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NcAppNavigationSettings-BhK7vlfP.mjs","sources":["../../src/components/NcAppNavigationSettings/NcAppNavigationSettings.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div\n\t\tid=\"app-settings\"\n\t\tv-click-outside=\"clickOutsideConfig\"\n\t\t:class=\"{ open }\">\n\t\t<div id=\"app-settings__header\">\n\t\t\t<NcButton\n\t\t\t\t:aria-controls=\"contentId\"\n\t\t\t\t:aria-expanded=\"open ? 'true' : 'false'\"\n\t\t\t\tclass=\"settings-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<NcIconSvgWrapper class=\"settings-button__icon\" :path=\"isLegacy32 ? mdiCog : mdiCogOutline\" />\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 name=\"slide-up\">\n\t\t\t<div v-show=\"open\" :id=\"contentId\">\n\t\t\t\t<slot />\n\t\t\t</div>\n\t\t</Transition>\n\t</div>\n</template>\n\n<script>\nimport { mdiCog, mdiCogOutline } from '@mdi/js'\nimport { vOnClickOutside as ClickOutside } from '@vueuse/components'\nimport NcButton from '../NcButton/NcButton.vue'\nimport NcIconSvgWrapper from '../NcIconSvgWrapper/NcIconSvgWrapper.vue'\nimport { t } from '../../l10n.js'\nimport { clickOutsideOptions } from '../../mixins/index.js'\nimport GenRandomId from '../../utils/GenRandomId.js'\nimport { isLegacy32 } from '../../utils/legacy.ts'\n\nexport default {\n\tdirectives: {\n\t\tClickOutside,\n\t},\n\n\tcomponents: {\n\t\tNcButton,\n\t\tNcIconSvgWrapper,\n\t},\n\n\tmixins: [\n\t\tclickOutsideOptions,\n\t],\n\n\tprops: {\n\t\t/**\n\t\t * Text of the button\n\t\t *\n\t\t * @default 'Settings'\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: t('Settings'),\n\t\t},\n\t},\n\n\tsetup() {\n\t\tconst contentId = GenRandomId()\n\t\treturn {\n\t\t\tcontentId,\n\t\t\tisLegacy32,\n\t\t\tmdiCog,\n\t\t\tmdiCogOutline,\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\topen: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tclickOutsideConfig() {\n\t\t\treturn [\n\t\t\t\tthis.closeMenu,\n\t\t\t\tthis.clickOutsideOptions,\n\t\t\t]\n\t\t},\n\t},\n\n\tmethods: {\n\t\tcloseMenu() {\n\t\t\tthis.open = false\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n#app-settings {\n\tmargin-top: auto;\n\tpadding: $app-navigation-settings-margin;\n\n\t&__header {\n\t\tbox-sizing: border-box;\n\t\tmargin: 0 $app-navigation-settings-margin $app-navigation-settings-margin $app-navigation-settings-margin;\n\n\t\t.settings-button {\n\t\t\tpadding-inline: 0 calc((var(--default-clickable-area) - 16px) / 2) !important;\n\n\t\t\t:deep(.button-vue__text) {\n\t\t\t\tfont-weight: normal !important;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__content {\n\t\tdisplay: block;\n\t\tpadding: 10px;\n\n\t\t/* prevent scrolled contents from stopping too early */\n\t\tmargin-bottom: -$app-navigation-settings-margin;\n\n\t\t/* restrict height of settings and make scrollable */\n\t\tmax-height: 300px;\n\t\toverflow-y: auto;\n\t\tbox-sizing: border-box;\n\t}\n}\n\n.slide-up-leave-active,\n.slide-up-enter-active {\n\ttransition-duration: var(--animation-slow);\n\ttransition-property: max-height, padding;\n\toverflow-y: hidden !important;\n}\n\n.slide-up-enter,\n.slide-up-leave-to {\n\tmax-height: 0 !important;\n\tpadding: 0 10px !important;\n}\n\n</style>\n"],"names":["ClickOutside"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AA2CA,MAAA,YAAA;AAAA,EACA,YAAA;AAAA,IACA,cAAAA;AAAAA,EACA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,QAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA,EAAA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,QAAA;AACA,UAAA,YAAA,YAAA;AACA,WAAA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,qBAAA;AACA,aAAA;AAAA,QACA,KAAA;AAAA,QACA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,YAAA;AACA,WAAA,OAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;"}
@@ -1,10 +1,11 @@
1
1
  require('../assets/NcMentionBubble-CaztX9Pv.css');
2
- require('../assets/NcAppNavigationSettings-1YRzh-xl.css');
2
+ require('../assets/NcAppNavigationSettings-2Wh1E3Hq.css');
3
3
  "use strict";
4
- const mdi = require("./mdi-BBwE-MZC.cjs");
4
+ const mdi = require("./mdi-Nhb6SBw8.cjs");
5
5
  const components = require("@vueuse/components");
6
+ const NcButton = require("./NcButton-CJBZrdiL.cjs");
6
7
  const NcIconSvgWrapper = require("./NcIconSvgWrapper-D-aKMbf3.cjs");
7
- const _l10n = require("./_l10n-DM-VRK9x.cjs");
8
+ const _l10n = require("./_l10n-eOBJ3Dwl.cjs");
8
9
  const Mixins_clickOutsideOptions = require("../Mixins/clickOutsideOptions.cjs");
9
10
  require("../Composables/useIsFullscreen.cjs");
10
11
  require("../Composables/useIsMobile.cjs");
@@ -20,13 +21,15 @@ require("@nextcloud/auth");
20
21
  require("@nextcloud/axios");
21
22
  require("@nextcloud/capabilities");
22
23
  require("./logger-3HuiEIF6.cjs");
24
+ const GenRandomId = require("./GenRandomId-D7iOvpZS.cjs");
23
25
  const legacy = require("./legacy-KBXhWdRy.cjs");
24
- _l10n.register(_l10n.t46);
26
+ _l10n.register(_l10n.t47);
25
27
  const _sfc_main = {
26
28
  directives: {
27
29
  ClickOutside: components.vOnClickOutside
28
30
  },
29
31
  components: {
32
+ NcButton: NcButton.NcButton,
30
33
  NcIconSvgWrapper: NcIconSvgWrapper.NcIconSvgWrapper
31
34
  },
32
35
  mixins: [
@@ -45,7 +48,9 @@ const _sfc_main = {
45
48
  }
46
49
  },
47
50
  setup() {
51
+ const contentId = GenRandomId.GenRandomId();
48
52
  return {
53
+ contentId,
49
54
  isLegacy32: legacy.isLegacy32,
50
55
  mdiCog: mdi.mdiCog,
51
56
  mdiCogOutline: mdi.mdiCogOutline
@@ -65,9 +70,6 @@ const _sfc_main = {
65
70
  }
66
71
  },
67
72
  methods: {
68
- toggleMenu() {
69
- this.open = !this.open;
70
- },
71
73
  closeMenu() {
72
74
  this.open = false;
73
75
  }
@@ -75,7 +77,11 @@ const _sfc_main = {
75
77
  };
76
78
  var _sfc_render = function render() {
77
79
  var _vm = this, _c = _vm._self._c;
78
- return _c("div", { directives: [{ name: "click-outside", rawName: "v-click-outside", value: _vm.clickOutsideConfig, expression: "clickOutsideConfig" }], class: { open: _vm.open }, attrs: { "id": "app-settings" } }, [_c("div", { attrs: { "id": "app-settings__header" } }, [_c("button", { staticClass: "settings-button", attrs: { "type": "button", "aria-expanded": _vm.open ? "true" : "false", "aria-controls": "app-settings__content" }, on: { "click": _vm.toggleMenu } }, [_c("NcIconSvgWrapper", { staticClass: "settings-button__icon", attrs: { "path": _vm.isLegacy32 ? _vm.mdiCog : _vm.mdiCogOutline } }), _c("span", { staticClass: "settings-button__label" }, [_vm._v(_vm._s(_vm.name))])], 1)]), _c("Transition", { attrs: { "name": "slide-up" } }, [_c("div", { directives: [{ name: "show", rawName: "v-show", value: _vm.open, expression: "open" }], attrs: { "id": "app-settings__content" } }, [_vm._t("default")], 2)])], 1);
80
+ return _c("div", { directives: [{ name: "click-outside", rawName: "v-click-outside", value: _vm.clickOutsideConfig, expression: "clickOutsideConfig" }], class: { open: _vm.open }, attrs: { "id": "app-settings" } }, [_c("div", { attrs: { "id": "app-settings__header" } }, [_c("NcButton", { staticClass: "settings-button", attrs: { "aria-controls": _vm.contentId, "aria-expanded": _vm.open ? "true" : "false", "alignment": "start", "variant": "tertiary", "wide": "" }, on: { "click": function($event) {
81
+ _vm.open = !_vm.open;
82
+ } }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
83
+ return [_c("NcIconSvgWrapper", { staticClass: "settings-button__icon", attrs: { "path": _vm.isLegacy32 ? _vm.mdiCog : _vm.mdiCogOutline } })];
84
+ }, proxy: true }]) }, [_vm._v(" " + _vm._s(_vm.name) + " ")])], 1), _c("Transition", { attrs: { "name": "slide-up" } }, [_c("div", { directives: [{ name: "show", rawName: "v-show", value: _vm.open, expression: "open" }], attrs: { "id": _vm.contentId } }, [_vm._t("default")], 2)])], 1);
79
85
  };
80
86
  var _sfc_staticRenderFns = [];
81
87
  var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
@@ -84,8 +90,8 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
84
90
  _sfc_staticRenderFns,
85
91
  false,
86
92
  null,
87
- "e9e1bc3b"
93
+ "8fb21c8b"
88
94
  );
89
95
  const NcAppNavigationSettings = __component__.exports;
90
96
  exports.NcAppNavigationSettings = NcAppNavigationSettings;
91
- //# sourceMappingURL=NcAppNavigationSettings-CkFZMLtH.cjs.map
97
+ //# sourceMappingURL=NcAppNavigationSettings-C6qjJ3hF.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NcAppNavigationSettings-C6qjJ3hF.cjs","sources":["../../src/components/NcAppNavigationSettings/NcAppNavigationSettings.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div\n\t\tid=\"app-settings\"\n\t\tv-click-outside=\"clickOutsideConfig\"\n\t\t:class=\"{ open }\">\n\t\t<div id=\"app-settings__header\">\n\t\t\t<NcButton\n\t\t\t\t:aria-controls=\"contentId\"\n\t\t\t\t:aria-expanded=\"open ? 'true' : 'false'\"\n\t\t\t\tclass=\"settings-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<NcIconSvgWrapper class=\"settings-button__icon\" :path=\"isLegacy32 ? mdiCog : mdiCogOutline\" />\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 name=\"slide-up\">\n\t\t\t<div v-show=\"open\" :id=\"contentId\">\n\t\t\t\t<slot />\n\t\t\t</div>\n\t\t</Transition>\n\t</div>\n</template>\n\n<script>\nimport { mdiCog, mdiCogOutline } from '@mdi/js'\nimport { vOnClickOutside as ClickOutside } from '@vueuse/components'\nimport NcButton from '../NcButton/NcButton.vue'\nimport NcIconSvgWrapper from '../NcIconSvgWrapper/NcIconSvgWrapper.vue'\nimport { t } from '../../l10n.js'\nimport { clickOutsideOptions } from '../../mixins/index.js'\nimport GenRandomId from '../../utils/GenRandomId.js'\nimport { isLegacy32 } from '../../utils/legacy.ts'\n\nexport default {\n\tdirectives: {\n\t\tClickOutside,\n\t},\n\n\tcomponents: {\n\t\tNcButton,\n\t\tNcIconSvgWrapper,\n\t},\n\n\tmixins: [\n\t\tclickOutsideOptions,\n\t],\n\n\tprops: {\n\t\t/**\n\t\t * Text of the button\n\t\t *\n\t\t * @default 'Settings'\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: t('Settings'),\n\t\t},\n\t},\n\n\tsetup() {\n\t\tconst contentId = GenRandomId()\n\t\treturn {\n\t\t\tcontentId,\n\t\t\tisLegacy32,\n\t\t\tmdiCog,\n\t\t\tmdiCogOutline,\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\topen: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tclickOutsideConfig() {\n\t\t\treturn [\n\t\t\t\tthis.closeMenu,\n\t\t\t\tthis.clickOutsideOptions,\n\t\t\t]\n\t\t},\n\t},\n\n\tmethods: {\n\t\tcloseMenu() {\n\t\t\tthis.open = false\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n#app-settings {\n\tmargin-top: auto;\n\tpadding: $app-navigation-settings-margin;\n\n\t&__header {\n\t\tbox-sizing: border-box;\n\t\tmargin: 0 $app-navigation-settings-margin $app-navigation-settings-margin $app-navigation-settings-margin;\n\n\t\t.settings-button {\n\t\t\tpadding-inline: 0 calc((var(--default-clickable-area) - 16px) / 2) !important;\n\n\t\t\t:deep(.button-vue__text) {\n\t\t\t\tfont-weight: normal !important;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__content {\n\t\tdisplay: block;\n\t\tpadding: 10px;\n\n\t\t/* prevent scrolled contents from stopping too early */\n\t\tmargin-bottom: -$app-navigation-settings-margin;\n\n\t\t/* restrict height of settings and make scrollable */\n\t\tmax-height: 300px;\n\t\toverflow-y: auto;\n\t\tbox-sizing: border-box;\n\t}\n}\n\n.slide-up-leave-active,\n.slide-up-enter-active {\n\ttransition-duration: var(--animation-slow);\n\ttransition-property: max-height, padding;\n\toverflow-y: hidden !important;\n}\n\n.slide-up-enter,\n.slide-up-leave-to {\n\tmax-height: 0 !important;\n\tpadding: 0 10px !important;\n}\n\n</style>\n"],"names":["ClickOutside","NcButton","NcIconSvgWrapper","clickOutsideOptions","t","GenRandomId","isLegacy32","mdiCog","mdiCogOutline"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA2CA,MAAA,YAAA;AAAA,EACA,YAAA;AAAA,IACA,cAAAA,WAAAA;AAAAA,EACA;AAAA,EAEA,YAAA;AAAA,IACA,UAAAC,SAAAA;AAAAA,IACA,kBAAAC,iBAAAA;AAAAA,EACA;AAAA,EAEA,QAAA;AAAA,IACAC;AAAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAAC,MAAAA,EAAA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,QAAA;AACA,UAAA,YAAAC,YAAAA,YAAA;AACA,WAAA;AAAA,MACA;AAAA,MACA,YAAAC,OAAAA;AAAAA,MACA,QAAAC,IAAAA;AAAAA,MACA,eAAAC,IAAAA;AAAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,qBAAA;AACA,aAAA;AAAA,QACA,KAAA;AAAA,QACA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,YAAA;AACA,WAAA,OAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;"}
@@ -1,8 +1,8 @@
1
1
  require('../assets/NcAppNavigationToggle-DgwbZOWc.css');
2
2
  "use strict";
3
3
  const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
4
- const _l10n = require("./_l10n-DM-VRK9x.cjs");
5
- const NcButton = require("./NcButton-DOsCAjiE.cjs");
4
+ const _l10n = require("./_l10n-eOBJ3Dwl.cjs");
5
+ const NcButton = require("./NcButton-CJBZrdiL.cjs");
6
6
  const _sfc_main$2 = {
7
7
  name: "MenuIcon",
8
8
  emits: ["click"],
@@ -125,4 +125,4 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
125
125
  );
126
126
  const NcAppNavigationToggle = __component__.exports;
127
127
  exports.NcAppNavigationToggle = NcAppNavigationToggle;
128
- //# sourceMappingURL=NcAppNavigationToggle-C2vtZ3uV.cjs.map
128
+ //# sourceMappingURL=NcAppNavigationToggle-8lSuagjd.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NcAppNavigationToggle-C2vtZ3uV.cjs","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<template>\n\t<div class=\"app-navigation-toggle-wrapper\">\n\t\t<NcButton\n\t\t\tclass=\"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-keyshortcuts=\"disableKeyboardShortcuts ? '' : 'n'\"\n\t\t\t:aria-label=\"label\"\n\t\t\t:title=\"label\"\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<script>\nimport MenuIcon from 'vue-material-design-icons/Menu.vue'\nimport MenuOpenIcon from 'vue-material-design-icons/MenuOpen.vue'\nimport { t } from '../../l10n.js'\nimport NcButton from '../NcButton/index.js'\n\nconst disableKeyboardShortcuts = window.OCP?.Accessibility?.disableKeyboardShortcuts?.()\n\nexport default {\n\tname: 'NcAppNavigationToggle',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tMenuIcon,\n\t\tMenuOpenIcon,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Tracks whether the toggle has been clicked or not.\n\t\t * If it has been clicked, switches between the different MenuIcons\n\t\t * and emits a boolean indicating its opened status\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn { disableKeyboardShortcuts }\n\t},\n\n\tcomputed: {\n\t\tlabel() {\n\t\t\treturn this.open\n\t\t\t\t? t('Close navigation')\n\t\t\t\t: t('Open navigation {shortcut}', { shortcut: disableKeyboardShortcuts ? '' : '[n]' }).trim()\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Once the toggle has been clicked, emits the toggle status\n\t\t * so parent components can gauge the status of the navigation button\n\t\t */\n\t\ttoggleNavigation() {\n\t\t\tthis.$emit('update:open', !this.open)\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n.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","NcButton","t"],"mappings":";;;;AAoBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;AChBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;ACNA,MAAA,2BAAA,OAAA,KAAA,eAAA,2BAAA;AAEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,UAAAC,SAAAA;AAAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,CAAA,aAAA;AAAA,EAEA,QAAA;AACA,WAAA,EAAA,yBAAA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,QAAA;AACA,aAAA,KAAA,OACAC,MAAAA,EAAA,kBAAA,IACAA,MAAAA,EAAA,8BAAA,EAAA,UAAA,2BAAA,KAAA,MAAA,CAAA,EAAA,KAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,WAAA,MAAA,eAAA,CAAA,KAAA,IAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"NcAppNavigationToggle-8lSuagjd.cjs","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<template>\n\t<div class=\"app-navigation-toggle-wrapper\">\n\t\t<NcButton\n\t\t\tclass=\"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-keyshortcuts=\"disableKeyboardShortcuts ? '' : 'n'\"\n\t\t\t:aria-label=\"label\"\n\t\t\t:title=\"label\"\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<script>\nimport MenuIcon from 'vue-material-design-icons/Menu.vue'\nimport MenuOpenIcon from 'vue-material-design-icons/MenuOpen.vue'\nimport { t } from '../../l10n.js'\nimport NcButton from '../NcButton/index.js'\n\nconst disableKeyboardShortcuts = window.OCP?.Accessibility?.disableKeyboardShortcuts?.()\n\nexport default {\n\tname: 'NcAppNavigationToggle',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tMenuIcon,\n\t\tMenuOpenIcon,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Tracks whether the toggle has been clicked or not.\n\t\t * If it has been clicked, switches between the different MenuIcons\n\t\t * and emits a boolean indicating its opened status\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn { disableKeyboardShortcuts }\n\t},\n\n\tcomputed: {\n\t\tlabel() {\n\t\t\treturn this.open\n\t\t\t\t? t('Close navigation')\n\t\t\t\t: t('Open navigation {shortcut}', { shortcut: disableKeyboardShortcuts ? '' : '[n]' }).trim()\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Once the toggle has been clicked, emits the toggle status\n\t\t * so parent components can gauge the status of the navigation button\n\t\t */\n\t\ttoggleNavigation() {\n\t\t\tthis.$emit('update:open', !this.open)\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n.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","NcButton","t"],"mappings":";;;;AAoBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;AChBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;ACNA,MAAA,2BAAA,OAAA,KAAA,eAAA,2BAAA;AAEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,UAAAC,SAAAA;AAAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,CAAA,aAAA;AAAA,EAEA,QAAA;AACA,WAAA,EAAA,yBAAA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,QAAA;AACA,aAAA,KAAA,OACAC,MAAAA,EAAA,kBAAA,IACAA,MAAAA,EAAA,8BAAA,EAAA,UAAA,2BAAA,KAAA,MAAA,CAAA,EAAA,KAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,WAAA,MAAA,eAAA,CAAA,KAAA,IAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;","x_google_ignoreList":[0,1]}
@@ -1,7 +1,7 @@
1
1
  import '../assets/NcAppNavigationToggle-DgwbZOWc.css';
2
2
  import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
3
- import { r as register, E as t19, a as t } from "./_l10n-BEfeU7gr.mjs";
4
- import { N as NcButton } from "./NcButton-CWPBzbcC.mjs";
3
+ import { r as register, C as t19, a as t } from "./_l10n-BWisB7-O.mjs";
4
+ import { N as NcButton } from "./NcButton-DUZTtFhr.mjs";
5
5
  const _sfc_main$2 = {
6
6
  name: "MenuIcon",
7
7
  emits: ["click"],
@@ -126,4 +126,4 @@ const NcAppNavigationToggle = __component__.exports;
126
126
  export {
127
127
  NcAppNavigationToggle as N
128
128
  };
129
- //# sourceMappingURL=NcAppNavigationToggle-DlWpnYdz.mjs.map
129
+ //# sourceMappingURL=NcAppNavigationToggle-DlnxjlcH.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NcAppNavigationToggle-DlWpnYdz.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<template>\n\t<div class=\"app-navigation-toggle-wrapper\">\n\t\t<NcButton\n\t\t\tclass=\"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-keyshortcuts=\"disableKeyboardShortcuts ? '' : 'n'\"\n\t\t\t:aria-label=\"label\"\n\t\t\t:title=\"label\"\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<script>\nimport MenuIcon from 'vue-material-design-icons/Menu.vue'\nimport MenuOpenIcon from 'vue-material-design-icons/MenuOpen.vue'\nimport { t } from '../../l10n.js'\nimport NcButton from '../NcButton/index.js'\n\nconst disableKeyboardShortcuts = window.OCP?.Accessibility?.disableKeyboardShortcuts?.()\n\nexport default {\n\tname: 'NcAppNavigationToggle',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tMenuIcon,\n\t\tMenuOpenIcon,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Tracks whether the toggle has been clicked or not.\n\t\t * If it has been clicked, switches between the different MenuIcons\n\t\t * and emits a boolean indicating its opened status\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn { disableKeyboardShortcuts }\n\t},\n\n\tcomputed: {\n\t\tlabel() {\n\t\t\treturn this.open\n\t\t\t\t? t('Close navigation')\n\t\t\t\t: t('Open navigation {shortcut}', { shortcut: disableKeyboardShortcuts ? '' : '[n]' }).trim()\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Once the toggle has been clicked, emits the toggle status\n\t\t * so parent components can gauge the status of the navigation button\n\t\t */\n\t\ttoggleNavigation() {\n\t\t\tthis.$emit('update:open', !this.open)\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n.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"],"mappings":";;;AAoBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;AChBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;ACNA,MAAA,2BAAA,OAAA,KAAA,eAAA,2BAAA;AAEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,CAAA,aAAA;AAAA,EAEA,QAAA;AACA,WAAA,EAAA,yBAAA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,QAAA;AACA,aAAA,KAAA,OACA,EAAA,kBAAA,IACA,EAAA,8BAAA,EAAA,UAAA,2BAAA,KAAA,MAAA,CAAA,EAAA,KAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,WAAA,MAAA,eAAA,CAAA,KAAA,IAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"NcAppNavigationToggle-DlnxjlcH.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<template>\n\t<div class=\"app-navigation-toggle-wrapper\">\n\t\t<NcButton\n\t\t\tclass=\"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-keyshortcuts=\"disableKeyboardShortcuts ? '' : 'n'\"\n\t\t\t:aria-label=\"label\"\n\t\t\t:title=\"label\"\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<script>\nimport MenuIcon from 'vue-material-design-icons/Menu.vue'\nimport MenuOpenIcon from 'vue-material-design-icons/MenuOpen.vue'\nimport { t } from '../../l10n.js'\nimport NcButton from '../NcButton/index.js'\n\nconst disableKeyboardShortcuts = window.OCP?.Accessibility?.disableKeyboardShortcuts?.()\n\nexport default {\n\tname: 'NcAppNavigationToggle',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tMenuIcon,\n\t\tMenuOpenIcon,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Tracks whether the toggle has been clicked or not.\n\t\t * If it has been clicked, switches between the different MenuIcons\n\t\t * and emits a boolean indicating its opened status\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn { disableKeyboardShortcuts }\n\t},\n\n\tcomputed: {\n\t\tlabel() {\n\t\t\treturn this.open\n\t\t\t\t? t('Close navigation')\n\t\t\t\t: t('Open navigation {shortcut}', { shortcut: disableKeyboardShortcuts ? '' : '[n]' }).trim()\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Once the toggle has been clicked, emits the toggle status\n\t\t * so parent components can gauge the status of the navigation button\n\t\t */\n\t\ttoggleNavigation() {\n\t\t\tthis.$emit('update:open', !this.open)\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n.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"],"mappings":";;;AAoBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;AChBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;ACNA,MAAA,2BAAA,OAAA,KAAA,eAAA,2BAAA;AAEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,CAAA,aAAA;AAAA,EAEA,QAAA;AACA,WAAA,EAAA,yBAAA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,QAAA;AACA,aAAA,KAAA,OACA,EAAA,kBAAA,IACA,EAAA,8BAAA,EAAA,UAAA,2BAAA,KAAA,MAAA,CAAA,EAAA,KAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,WAAA,MAAA,eAAA,CAAA,KAAA,IAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;","x_google_ignoreList":[0,1]}
@@ -0,0 +1,132 @@
1
+ require('../assets/NcAppSettingsDialog-2axspyf-.css');
2
+ "use strict";
3
+ const Vue = require("vue");
4
+ const core = require("@vueuse/core");
5
+ const debounce = require("debounce");
6
+ const NcDialog = require("./NcDialog-D020rlVy.cjs");
7
+ const Components_NcVNodes = require("../Components/NcVNodes.cjs");
8
+ const Composables_useIsMobile = require("../Composables/useIsMobile.cjs");
9
+ const _l10n = require("./_l10n-eOBJ3Dwl.cjs");
10
+ const useAppSettingsDialog = require("./useAppSettingsDialog-CPqmms-u.cjs");
11
+ const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
12
+ const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
13
+ const Vue__default = /* @__PURE__ */ _interopDefault(Vue);
14
+ const debounce__default = /* @__PURE__ */ _interopDefault(debounce);
15
+ _l10n.register();
16
+ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
17
+ __name: "NcAppSettingsDialog",
18
+ props: {
19
+ open: { type: Boolean },
20
+ showNavigation: { type: Boolean },
21
+ container: { default: "body" },
22
+ name: { default: "" },
23
+ additionalTrapElements: { default: () => [] }
24
+ },
25
+ emits: ["update:open"],
26
+ setup(__props, { emit }) {
27
+ const props = __props;
28
+ const open = core.useVModel(props, "open", emit, { passive: true });
29
+ Vue.provide(useAppSettingsDialog.APP_SETTINGS_REGISTRATION_KEY, {
30
+ registerSection,
31
+ unregisterSection
32
+ });
33
+ const settingsScroller = Vue.ref();
34
+ const isMobile = Composables_useIsMobile.useIsMobile();
35
+ const selectedSection = Vue.ref("");
36
+ const linkClicked = Vue.ref(false);
37
+ const registeredSections = Vue.shallowRef([]);
38
+ const hasNavigation = Vue.computed(() => !isMobile.value && props.showNavigation);
39
+ const hasNavigationIcons = Vue.computed(() => registeredSections.value.some(({ icon }) => !!icon));
40
+ const unfocusNavigationItem = debounce__default.default(() => {
41
+ selectedSection.value = "";
42
+ if (document.activeElement?.className.includes("navigation-list__link")) {
43
+ document.activeElement.blur();
44
+ }
45
+ }, 300);
46
+ const sectionsOrderMap = /* @__PURE__ */ new Map();
47
+ Vue.onBeforeUnmount(() => {
48
+ sectionsOrderMap.clear();
49
+ });
50
+ function handleSettingsNavigationClick(item) {
51
+ linkClicked.value = true;
52
+ document.getElementById("settings-section_" + item).scrollIntoView({
53
+ behavior: "smooth",
54
+ inline: "nearest"
55
+ });
56
+ selectedSection.value = item;
57
+ setTimeout(() => {
58
+ linkClicked.value = false;
59
+ }, 1e3);
60
+ }
61
+ function handleCloseModal(isOpen) {
62
+ if (isOpen) {
63
+ return;
64
+ }
65
+ open.value = false;
66
+ settingsScroller.value.scrollTop = 0;
67
+ }
68
+ function handleScroll() {
69
+ if (open.value && !linkClicked.value) {
70
+ unfocusNavigationItem();
71
+ }
72
+ }
73
+ function registerSection(id, name, order, icon) {
74
+ if (registeredSections.value.some(({ id: otherId }) => id === otherId)) {
75
+ throw new Error(`Duplicate section id found: ${id}. Settings navigation sections must have unique section ids.`);
76
+ }
77
+ if (registeredSections.value.some(({ name: otherName }) => name === otherName)) {
78
+ Vue__default.default.util.warn(`Duplicate section name found: ${name}. Settings navigation sections must have unique section names.`);
79
+ }
80
+ if (order !== void 0) {
81
+ sectionsOrderMap.set(id, order);
82
+ } else if (sectionsOrderMap.has(id)) {
83
+ order = sectionsOrderMap.get(id);
84
+ } else {
85
+ order = Math.max(0, ...sectionsOrderMap.values()) + 1;
86
+ sectionsOrderMap.set(id, order);
87
+ }
88
+ registeredSections.value = [...registeredSections.value, { id, name, order, icon }].sort(({ order: orderA }, { order: orderB }) => {
89
+ return orderA - orderB;
90
+ });
91
+ if (registeredSections.value.length === 1) {
92
+ selectedSection.value = id;
93
+ }
94
+ }
95
+ function unregisterSection(id) {
96
+ registeredSections.value = registeredSections.value.filter(({ id: otherId }) => id !== otherId);
97
+ if (selectedSection.value === id) {
98
+ selectedSection.value = registeredSections.value[0]?.id ?? "";
99
+ }
100
+ }
101
+ return { __sfc: true, props, emit, open, settingsScroller, isMobile, selectedSection, linkClicked, registeredSections, hasNavigation, hasNavigationIcons, unfocusNavigationItem, sectionsOrderMap, handleSettingsNavigationClick, handleCloseModal, handleScroll, registerSection, unregisterSection, NcDialog: NcDialog.NcDialog, NcVNodes: Components_NcVNodes, t: _l10n.t };
102
+ }
103
+ });
104
+ var _sfc_render = function render() {
105
+ var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;
106
+ return _setup.open ? _c(_setup.NcDialog, { staticClass: "app-settings", attrs: { "content-classes": "app-settings__content", "navigation-classes": "app-settings__navigation", "additional-trap-elements": _vm.additionalTrapElements, "container": _vm.container, "close-on-click-outside": "", "navigation-aria-label": _setup.t("Settings navigation"), "size": "large", "name": _vm.name }, on: { "update:open": _setup.handleCloseModal }, scopedSlots: _vm._u([_setup.hasNavigation ? { key: "navigation", fn: function({ isCollapsed }) {
107
+ return [!isCollapsed ? _c("ul", { staticClass: "navigation-list" }, _vm._l(_setup.registeredSections, function(section) {
108
+ return _c("li", { key: section.id }, [_c("a", { staticClass: "navigation-list__link", class: {
109
+ "navigation-list__link--active": section.id === _setup.selectedSection,
110
+ "navigation-list__link--icon": _setup.hasNavigationIcons
111
+ }, attrs: { "aria-current": `${section.id === _setup.selectedSection}`, "href": `#settings-section_${section.id}`, "tabindex": "0" }, on: { "click": function($event) {
112
+ $event.preventDefault();
113
+ return _setup.handleSettingsNavigationClick(section.id);
114
+ }, "keydown": function($event) {
115
+ if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "enter", 13, $event.key, "Enter")) return null;
116
+ return _setup.handleSettingsNavigationClick(section.id);
117
+ } } }, [_setup.hasNavigationIcons ? _c("div", { staticClass: "navigation-list__link-icon" }, [section.icon ? _c(_setup.NcVNodes, { attrs: { "vnodes": section.icon } }) : _vm._e()], 1) : _vm._e(), _c("span", { staticClass: "navigation-list__link-text" }, [_vm._v(" " + _vm._s(section.name) + " ")])])]);
118
+ }), 0) : _vm._e()];
119
+ } } : null], null, true) }, [_c("div", { ref: "settingsScroller", on: { "scroll": _setup.handleScroll } }, [_vm._t("default")], 2)]) : _vm._e();
120
+ };
121
+ var _sfc_staticRenderFns = [];
122
+ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
123
+ _sfc_main,
124
+ _sfc_render,
125
+ _sfc_staticRenderFns,
126
+ false,
127
+ null,
128
+ "5b9532ac"
129
+ );
130
+ const NcAppSettingsDialog = __component__.exports;
131
+ exports.NcAppSettingsDialog = NcAppSettingsDialog;
132
+ //# sourceMappingURL=NcAppSettingsDialog--RlMIfbo.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NcAppSettingsDialog--RlMIfbo.cjs","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<script setup lang=\"ts\">\nimport type { VNode } from 'vue'\n\nimport { useVModel } from '@vueuse/core'\nimport debounce from 'debounce'\nimport Vue, { computed, onBeforeUnmount, provide, ref, shallowRef } from 'vue'\nimport NcDialog from '../NcDialog/NcDialog.vue'\nimport NcVNodes from '../NcVNodes/NcVNodes.vue'\nimport { useIsMobile } from '../../composables/useIsMobile/index.ts'\nimport { t } from '../../l10n.js'\nimport { APP_SETTINGS_REGISTRATION_KEY } from './useAppSettingsDialog.ts'\n\nexport interface IAppSettingsSection {\n\tid: string\n\tname: string\n\torder?: number\n\ticon?: VNode[]\n}\n\nconst props = withDefaults(defineProps<{\n\t/**\n\t * Determines the open / closed state of the modal\n\t */\n\topen: boolean\n\n\t/**\n\t * Shows the navigation on desktop if true\n\t */\n\tshowNavigation?: boolean\n\n\t/**\n\t * Selector for the popover container\n\t */\n\tcontainer?: string\n\n\t/**\n\t * Name of the settings\n\t */\n\tname?: string\n\n\t/**\n\t * Additional elements to add to the focus trap\n\t */\n\tadditionalTrapElements?: (string | HTMLElement)[]\n}>(), {\n\tcontainer: 'body',\n\tname: '',\n\tadditionalTrapElements: () => [],\n})\n\nconst emit = defineEmits<{\n\t(e: 'update:open', v: boolean): void\n}>()\n\nconst open = useVModel(props, 'open', emit, { passive: true })\n\nprovide(APP_SETTINGS_REGISTRATION_KEY, {\n\tregisterSection,\n\tunregisterSection,\n})\n\nconst settingsScroller = ref<HTMLDivElement>()\n\nconst isMobile = useIsMobile()\n\nconst selectedSection = ref('')\nconst linkClicked = ref(false)\nconst registeredSections = shallowRef<IAppSettingsSection[]>([])\n\nconst hasNavigation = computed(() => !isMobile.value && props.showNavigation)\n\n/**\n * Check if one or more navigation entries provide icons\n */\nconst hasNavigationIcons = computed(() => registeredSections.value.some(({ icon }) => !!icon))\n\n/**\n * Remove selected section once the user starts scrolling\n */\nconst unfocusNavigationItem = debounce(() => {\n\tselectedSection.value = ''\n\tif (document.activeElement?.className.includes('navigation-list__link')) {\n\t\t(document.activeElement as HTMLElement).blur()\n\t}\n}, 300)\n\n/**\n * Fallback order map to keep track of section orders if not provided by child components\n */\nconst sectionsOrderMap = new Map()\nonBeforeUnmount(() => {\n\tsectionsOrderMap.clear()\n})\n\n/**\n * Scrolls the content to the selected settings section.absolute\n *\n * @param item - the ID of the section\n */\nfunction handleSettingsNavigationClick(item: string) {\n\tlinkClicked.value = true\n\tdocument.getElementById('settings-section_' + item)!.scrollIntoView({\n\t\tbehavior: 'smooth',\n\t\tinline: 'nearest',\n\t})\n\tselectedSection.value = item\n\tsetTimeout(() => {\n\t\tlinkClicked.value = false\n\t}, 1000)\n}\n\n/**\n * Reset the dialog state when closed to have a clean state if re-opened.\n *\n * @param isOpen - The new modal open state\n */\nfunction handleCloseModal(isOpen: boolean) {\n\tif (isOpen) {\n\t\treturn\n\t}\n\n\topen.value = false\n\t// reset the scrolling state if the modal is just hidden\n\tsettingsScroller.value!.scrollTop = 0\n}\n\n/**\n * When scrolled manually we remove the focus from the navigation item.\n */\nfunction handleScroll() {\n\tif (open.value && !linkClicked.value) {\n\t\tunfocusNavigationItem()\n\t}\n}\n\n/**\n * Called when a new section is registered\n *\n * @param id - The section ID\n * @param name - The section name\n * @param order - Optional section order in navigation list\n * @param icon - Optional icon component\n */\nfunction registerSection(id: string, name: string, order?: number, icon?: VNode[]) {\n\t// Check for the uniqueness of section names\n\tif (registeredSections.value.some(({ id: otherId }) => id === otherId)) {\n\t\tthrow new Error(`Duplicate section id found: ${id}. Settings navigation sections must have unique section ids.`)\n\t}\n\tif (registeredSections.value.some(({ name: otherName }) => name === otherName)) {\n\t\tVue.util.warn(`Duplicate section name found: ${name}. Settings navigation sections must have unique section names.`)\n\t}\n\n\t// Ensure tab order is set\n\tif (order !== undefined) {\n\t\tsectionsOrderMap.set(id, order)\n\t} else if (sectionsOrderMap.has(id)) {\n\t\torder = sectionsOrderMap.get(id)\n\t} else {\n\t\t// Fallback to the closest positive number that isn't already taken\n\t\torder = Math.max(0, ...sectionsOrderMap.values()) + 1\n\t\tsectionsOrderMap.set(id, order)\n\t}\n\n\t// Sort sections by order in slots\n\tregisteredSections.value = [...registeredSections.value, { id, name, order, icon }]\n\t\t.sort(({ order: orderA }, { order: orderB }) => {\n\t\t\treturn orderA! - orderB!\n\t\t})\n\n\t// If this is the first section registered, set it as selected\n\tif (registeredSections.value.length === 1) {\n\t\tselectedSection.value = id\n\t}\n}\n\n/**\n * Called when a section is unregistered to remove it from dialog\n *\n * @param id - The section ID\n */\nfunction unregisterSection(id: string) {\n\tregisteredSections.value = registeredSections.value\n\t\t.filter(({ id: otherId }) => id !== otherId)\n\n\t// If the current section is unregistered, set the first section as selected\n\tif (selectedSection.value === id) {\n\t\tselectedSection.value = registeredSections.value[0]?.id ?? ''\n\t}\n}\n</script>\n\n<template>\n\t<NcDialog\n\t\tv-if=\"open\"\n\t\tclass=\"app-settings\"\n\t\tcontent-classes=\"app-settings__content\"\n\t\tnavigation-classes=\"app-settings__navigation\"\n\t\t:additional-trap-elements=\"additionalTrapElements\"\n\t\t:container=\"container\"\n\t\tclose-on-click-outside\n\t\t:navigation-aria-label=\"t('Settings navigation')\"\n\t\tsize=\"large\"\n\t\t:name=\"name\"\n\t\t@update:open=\"handleCloseModal\">\n\t\t<template v-if=\"hasNavigation\" #navigation=\"{ isCollapsed }\">\n\t\t\t<ul\n\t\t\t\tv-if=\"!isCollapsed\"\n\t\t\t\tclass=\"navigation-list\">\n\t\t\t\t<li v-for=\"section in registeredSections\" :key=\"section.id\">\n\t\t\t\t\t<a\n\t\t\t\t\t\t:aria-current=\"`${section.id === selectedSection}`\"\n\t\t\t\t\t\tclass=\"navigation-list__link\"\n\t\t\t\t\t\t:class=\"{\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\" @scroll=\"handleScroll\">\n\t\t\t<slot />\n\t\t</div>\n\t</NcDialog>\n</template>\n\n<style lang=\"scss\" scoped>\n.app-settings {\n\t:deep &__navigation {\n\t\tmin-width: 200px;\n\t\tmargin-right: 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\tbox-sizing: border-box;\n\t\tpadding-inline: calc(4 * var(--default-grid-baseline));\n\t}\n}\n\n.navigation-list {\n\theight: 100%;\n\tbox-sizing: border-box;\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\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 :open.sync=\"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 :open.sync=\"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\nSections order in navigation list is defined during initial rendering.\nIn case of dynamic/conditional sections rendering explicit `order` prop must be used for ordering.\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog :open.sync=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Example name 1\" :order=\"1\">\n\t\t\t\tSome example content\n\t\t\t\t<NcCheckboxRadioSwitch v-model=\"showExtraSections\">Show section 3</NcCheckboxRadioSwitch>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Example name 2\" :order=\"2\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<template v-if=\"showExtraSections\">\n\t\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Example name 3\" :order=\"3\">\n\t\t\t\t\tSome example content\n\t\t\t\t</NcAppSettingsSection>\n\t\t\t</template>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Example name 4\" :order=\"4\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tsettingsOpen: false,\n\t\t\t\tshowExtraSections: true,\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n</docs>\n"],"names":["useVModel","provide","APP_SETTINGS_REGISTRATION_KEY","ref","useIsMobile","shallowRef","computed","debounce","onBeforeUnmount","Vue"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA2DA,UAAM,OAAOA,KAAAA,UAAU,OAAO,QAAQ,MAAM,EAAE,SAAS,MAAM;AAE7DC,QAAAA,QAAQC,qBAAAA,+BAA+B;AAAA,MACtC;AAAA,MACA;AAAA,IAAA,CACA;AAED,UAAM,mBAAmBC,IAAAA,IAAA;AAEzB,UAAM,WAAWC,wBAAAA,YAAA;AAEjB,UAAM,kBAAkBD,IAAAA,IAAI,EAAE;AAC9B,UAAM,cAAcA,IAAAA,IAAI,KAAK;AAC7B,UAAM,qBAAqBE,IAAAA,WAAkC,EAAE;AAE/D,UAAM,gBAAgBC,IAAAA,SAAS,MAAM,CAAC,SAAS,SAAS,MAAM,cAAc;AAK5E,UAAM,qBAAqBA,IAAAA,SAAS,MAAM,mBAAmB,MAAM,KAAK,CAAC,EAAE,KAAA,MAAW,CAAC,CAAC,IAAI,CAAC;AAK7F,UAAM,wBAAwBC,kBAAAA,QAAS,MAAM;AAC5C,sBAAgB,QAAQ;AACxB,UAAI,SAAS,eAAe,UAAU,SAAS,uBAAuB,GAAG;AACvE,iBAAS,cAA8B,KAAA;AAAA,MACzC;AAAA,IACD,GAAG,GAAG;AAKN,UAAM,uCAAuB,IAAA;AAC7BC,QAAAA,gBAAgB,MAAM;AACrB,uBAAiB,MAAA;AAAA,IAClB,CAAC;AAOD,aAAS,8BAA8B,MAAc;AACpD,kBAAY,QAAQ;AACpB,eAAS,eAAe,sBAAsB,IAAI,EAAG,eAAe;AAAA,QACnE,UAAU;AAAA,QACV,QAAQ;AAAA,MAAA,CACR;AACD,sBAAgB,QAAQ;AACxB,iBAAW,MAAM;AAChB,oBAAY,QAAQ;AAAA,MACrB,GAAG,GAAI;AAAA,IACR;AAOA,aAAS,iBAAiB,QAAiB;AAC1C,UAAI,QAAQ;AACX;AAAA,MACD;AAEA,WAAK,QAAQ;AAEb,uBAAiB,MAAO,YAAY;AAAA,IACrC;AAKA,aAAS,eAAe;AACvB,UAAI,KAAK,SAAS,CAAC,YAAY,OAAO;AACrC,8BAAA;AAAA,MACD;AAAA,IACD;AAUA,aAAS,gBAAgB,IAAY,MAAc,OAAgB,MAAgB;AAElF,UAAI,mBAAmB,MAAM,KAAK,CAAC,EAAE,IAAI,QAAA,MAAc,OAAO,OAAO,GAAG;AACvE,cAAM,IAAI,MAAM,+BAA+B,EAAE,8DAA8D;AAAA,MAChH;AACA,UAAI,mBAAmB,MAAM,KAAK,CAAC,EAAE,MAAM,UAAA,MAAgB,SAAS,SAAS,GAAG;AAC/EC,qBAAAA,QAAI,KAAK,KAAK,iCAAiC,IAAI,gEAAgE;AAAA,MACpH;AAGA,UAAI,UAAU,QAAW;AACxB,yBAAiB,IAAI,IAAI,KAAK;AAAA,MAC/B,WAAW,iBAAiB,IAAI,EAAE,GAAG;AACpC,gBAAQ,iBAAiB,IAAI,EAAE;AAAA,MAChC,OAAO;AAEN,gBAAQ,KAAK,IAAI,GAAG,GAAG,iBAAiB,OAAA,CAAQ,IAAI;AACpD,yBAAiB,IAAI,IAAI,KAAK;AAAA,MAC/B;AAGA,yBAAmB,QAAQ,CAAC,GAAG,mBAAmB,OAAO,EAAE,IAAI,MAAM,OAAO,KAAA,CAAM,EAChF,KAAK,CAAC,EAAE,OAAO,UAAU,EAAE,OAAO,aAAa;AAC/C,eAAO,SAAU;AAAA,MAClB,CAAC;AAGF,UAAI,mBAAmB,MAAM,WAAW,GAAG;AAC1C,wBAAgB,QAAQ;AAAA,MACzB;AAAA,IACD;AAOA,aAAS,kBAAkB,IAAY;AACtC,yBAAmB,QAAQ,mBAAmB,MAC5C,OAAO,CAAC,EAAE,IAAI,QAAA,MAAc,OAAO,OAAO;AAG5C,UAAI,gBAAgB,UAAU,IAAI;AACjC,wBAAgB,QAAQ,mBAAmB,MAAM,CAAC,GAAG,MAAM;AAAA,MAC5D;AAAA,IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}