@vc-shell/framework 1.1.44 → 1.1.46

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 (453) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/core/plugins/modularity/loader.ts +150 -74
  3. package/core/services/app-bar-mobile-buttons-service.ts +1 -1
  4. package/dist/core/plugins/modularity/loader.d.ts.map +1 -1
  5. package/dist/core/services/app-bar-mobile-buttons-service.d.ts +1 -1
  6. package/dist/core/services/app-bar-mobile-buttons-service.d.ts.map +1 -1
  7. package/dist/framework.js +33355 -295
  8. package/dist/index.css +1 -9
  9. package/dist/index.d.ts +0 -4
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/locales/de.json +0 -84
  12. package/dist/locales/en.json +0 -84
  13. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/_internal/vc-mobile-back-button.vue.d.ts.map +1 -1
  14. package/dist/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.d.ts +1 -1
  15. package/dist/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.d.ts.map +1 -1
  16. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/internal/bladeRouteResolver.d.ts.map +1 -1
  17. package/dist/shared/components/change-password-button/change-password-button.vue.d.ts.map +1 -1
  18. package/dist/shared/components/logout-button/logout-button.vue.d.ts.map +1 -1
  19. package/dist/shared/components/settings-menu-item/settings-menu-item.vue.d.ts.map +1 -1
  20. package/dist/shared/modules/dynamic/pages/dynamic-blade-form.vue.d.ts +2 -2
  21. package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts +6 -6
  22. package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts.map +1 -1
  23. package/dist/tsconfig.tsbuildinfo +1 -1
  24. package/dist/ui/components/atoms/vc-hint/vc-hint.vue.d.ts.map +1 -1
  25. package/dist/ui/components/atoms/vc-icon/icons/MenuBurgerIcon.vue.d.ts.map +1 -1
  26. package/dist/ui/components/atoms/vc-icon/icons/index.d.ts +0 -26
  27. package/dist/ui/components/atoms/vc-icon/icons/index.d.ts.map +1 -1
  28. package/dist/ui/components/atoms/vc-icon/vc-bootstrap-icon.vue.d.ts.map +1 -1
  29. package/dist/ui/components/atoms/vc-icon/vc-fontawesome-icon.vue.d.ts.map +1 -1
  30. package/dist/ui/components/atoms/vc-icon/vc-icon.vue.d.ts.map +1 -1
  31. package/dist/ui/components/atoms/vc-icon/vc-lucide-icon.vue.d.ts +0 -5
  32. package/dist/ui/components/atoms/vc-icon/vc-lucide-icon.vue.d.ts.map +1 -1
  33. package/dist/ui/components/atoms/vc-icon/vc-material-icon.vue.d.ts +0 -20
  34. package/dist/ui/components/atoms/vc-icon/vc-material-icon.vue.d.ts.map +1 -1
  35. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts.map +1 -1
  36. package/dist/ui/components/molecules/vc-editor/_internal/vc-editor-button.vue.d.ts +36 -0
  37. package/dist/ui/components/molecules/vc-editor/_internal/vc-editor-button.vue.d.ts.map +1 -0
  38. package/dist/ui/components/molecules/vc-editor/_internal/vc-editor-toolbar.vue.d.ts +17 -0
  39. package/dist/ui/components/molecules/vc-editor/_internal/vc-editor-toolbar.vue.d.ts.map +1 -0
  40. package/dist/ui/components/molecules/vc-editor/vc-editor.vue.d.ts +16 -2381
  41. package/dist/ui/components/molecules/vc-editor/vc-editor.vue.d.ts.map +1 -1
  42. package/dist/ui/components/molecules/vc-form/vc-form.vue.d.ts.map +1 -1
  43. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts +1 -1
  44. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts.map +1 -1
  45. package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.vue.d.ts +1 -1
  46. package/dist/ui/components/molecules/vc-pagination/vc-pagination.vue.d.ts.map +1 -1
  47. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/MenuSidebar.vue.d.ts.map +1 -1
  48. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue.d.ts.map +1 -1
  49. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue.d.ts.map +1 -1
  50. package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts.map +1 -1
  51. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts.map +1 -1
  52. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue.d.ts.map +1 -1
  53. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue.d.ts.map +1 -1
  54. package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts.map +1 -1
  55. package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts +2 -2
  56. package/dist/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts +2 -2
  57. package/dist/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue.d.ts.map +1 -1
  58. package/dist/ui/components/organisms/vc-table/_internal/vc-table-header/vc-table-header.vue.d.ts.map +1 -1
  59. package/dist/vendor-boolbase-Cp9L0GAZ.js +25 -0
  60. package/dist/vendor-cheerio-HN9zIPZn.js +3135 -0
  61. package/dist/vendor-cheerio-select-5Ry0HvBq.js +306 -0
  62. package/dist/vendor-core-js-l0sNRNKZ.js +1 -0
  63. package/dist/vendor-css-select-DRIZ9kfZ.js +966 -0
  64. package/dist/vendor-css-what-DuPJ1HEF.js +448 -0
  65. package/dist/vendor-cypress-signalr-mock-BKdBJpdt.js +778 -0
  66. package/dist/vendor-date-fns-515YWkk-.js +6724 -0
  67. package/dist/vendor-dom-serializer-nQMsqjYW.js +286 -0
  68. package/dist/vendor-dom7-CJLPMwy5.js +941 -0
  69. package/dist/vendor-domelementtype-CjSzQey5.js +53 -0
  70. package/dist/vendor-domhandler-9z8cS16a.js +484 -0
  71. package/dist/vendor-dompurify-CRFzu7ib.js +1336 -0
  72. package/dist/vendor-domutils-Bc-Opz-v.js +981 -0
  73. package/dist/vendor-entities-Bfsx4xOQ.js +636 -0
  74. package/dist/vendor-floating-ui-core-wV8u8QP4.js +511 -0
  75. package/dist/vendor-floating-ui-dom-DDnRPs17.js +706 -0
  76. package/dist/vendor-floating-ui-utils-OMIFy1QU.js +296 -0
  77. package/dist/vendor-floating-ui-vue-D-tCDAMm.js +167 -0
  78. package/dist/vendor-fontsource-plus-jakarta-sans.css +1 -0
  79. package/dist/vendor-headlessui-vue-CY9FRgTb.js +83 -0
  80. package/dist/vendor-htmlparser2-B1dhFPOs.js +1426 -0
  81. package/dist/vendor-iconify-vue-DfRGgyNu.js +1840 -0
  82. package/dist/vendor-intlify-core-base-BuknsFQe.js +1876 -0
  83. package/dist/vendor-intlify-message-compiler-CuOQDWx1.js +1508 -0
  84. package/dist/vendor-intlify-shared-Cz4YRMuC.js +241 -0
  85. package/dist/vendor-iso-639-1-BJCk9DvE.js +819 -0
  86. package/dist/vendor-linkify-it-CKUf4vsc.js +830 -0
  87. package/dist/vendor-linkifyjs-BfyGgbCh.js +1756 -0
  88. package/dist/vendor-lodash-es-BySUOlwf.js +18333 -0
  89. package/dist/vendor-markdown-it-D-apazHa.js +6000 -0
  90. package/dist/vendor-markdown-it-task-lists-rxMVH6Ku.js +131 -0
  91. package/dist/vendor-mdurl-BNh2CCgT.js +537 -0
  92. package/dist/vendor-microsoft-applicationinsights-analytics-js-kG3lLg8X.js +1275 -0
  93. package/dist/vendor-microsoft-applicationinsights-cfgsync-js-C0uQkiQq.js +591 -0
  94. package/dist/vendor-microsoft-applicationinsights-channel-js-Dyd_PXA3.js +2153 -0
  95. package/dist/vendor-microsoft-applicationinsights-common-CfmP1_Qr.js +2470 -0
  96. package/dist/vendor-microsoft-applicationinsights-core-js-Cq4YSEvZ.js +6589 -0
  97. package/dist/vendor-microsoft-applicationinsights-dependencies-js-C56OBFr4.js +1510 -0
  98. package/dist/vendor-microsoft-applicationinsights-properties-js-CBJTBawx.js +761 -0
  99. package/dist/vendor-microsoft-applicationinsights-shims-CX8sJgar.js +70 -0
  100. package/dist/vendor-microsoft-applicationinsights-web-pim2ri-g.js +667 -0
  101. package/dist/vendor-microsoft-dynamicproto-js-CFBBUu9p.js +520 -0
  102. package/dist/vendor-microsoft-signalr-dUnlRsGm.js +3339 -0
  103. package/dist/vendor-moment-Mki5YqAR.js +5679 -0
  104. package/dist/vendor-nevware21-ts-async-CLMApQ9E.js +395 -0
  105. package/dist/vendor-nevware21-ts-utils-e8v8Jty3.js +1160 -0
  106. package/dist/vendor-normalize-css.css +1 -0
  107. package/dist/vendor-nth-check-Bx8TxtJt.js +157 -0
  108. package/dist/vendor-orderedmap-dGG6uMFJ.js +137 -0
  109. package/dist/vendor-parse5-Bt2NhSzR.js +8432 -0
  110. package/dist/vendor-parse5-htmlparser2-tree-adapter-BUUtKzf8.js +216 -0
  111. package/dist/vendor-popperjs-core-Cr2byIky.js +1790 -0
  112. package/dist/vendor-prettier-B4PaeWRQ.js +98 -0
  113. package/dist/vendor-prosemirror-commands-BH9lWGpW.js +561 -0
  114. package/dist/vendor-prosemirror-dropcursor-CeyPcxrA.js +146 -0
  115. package/dist/vendor-prosemirror-gapcursor-U8UoUJII.js +236 -0
  116. package/dist/vendor-prosemirror-history-BDaJkvNx.js +414 -0
  117. package/dist/vendor-prosemirror-keymap-BbWvIWmH.js +128 -0
  118. package/dist/vendor-prosemirror-markdown-gB0PXBbz.js +866 -0
  119. package/dist/vendor-prosemirror-model-BZu3WVcD.js +3463 -0
  120. package/dist/vendor-prosemirror-schema-list-Bl9NpKA7.js +158 -0
  121. package/dist/vendor-prosemirror-state-BvL9Pxph.js +1003 -0
  122. package/dist/vendor-prosemirror-tables-17qAnviK.js +2159 -0
  123. package/dist/vendor-prosemirror-transform-CE9VV3qg.js +2156 -0
  124. package/dist/vendor-prosemirror-view-CU2WTHT7.js +5811 -0
  125. package/dist/vendor-punycode-js-iAs5RxMf.js +441 -0
  126. package/dist/vendor-rope-sequence-BdXDKoGt.js +207 -0
  127. package/dist/vendor-semver-CVLMK-S4.js +2702 -0
  128. package/dist/vendor-ssr-window-s6OpKa3O.js +150 -0
  129. package/dist/vendor-swiper-CdiyNHVt.js +5679 -0
  130. package/dist/vendor-swiper.css +1 -0
  131. package/dist/vendor-tanstack-virtual-core-l0sNRNKZ.js +1 -0
  132. package/dist/vendor-tanstack-vue-virtual-l0sNRNKZ.js +1 -0
  133. package/dist/vendor-tippy-js-DWFe2TfK.js +1647 -0
  134. package/dist/vendor-tiptap-core-NfwGfaQk.js +4910 -0
  135. package/dist/vendor-tiptap-extension-blockquote-jmWBTtsI.js +57 -0
  136. package/dist/vendor-tiptap-extension-bold-p5frh4ak.js +97 -0
  137. package/dist/vendor-tiptap-extension-bubble-menu-KUhZSfrs.js +218 -0
  138. package/dist/vendor-tiptap-extension-bullet-list-COmZRoSB.js +73 -0
  139. package/dist/vendor-tiptap-extension-code-block-DyTARZss.js +221 -0
  140. package/dist/vendor-tiptap-extension-code-jVv6CXpX.js +75 -0
  141. package/dist/vendor-tiptap-extension-document-DssuotYs.js +13 -0
  142. package/dist/vendor-tiptap-extension-dropcursor-BoO0Qv91.js +26 -0
  143. package/dist/vendor-tiptap-extension-floating-menu-CrO8CN5w.js +165 -0
  144. package/dist/vendor-tiptap-extension-gapcursor-KpsWEoMD.js +30 -0
  145. package/dist/vendor-tiptap-extension-hard-break-ldOzhSvf.js +68 -0
  146. package/dist/vendor-tiptap-extension-heading-CKz2llX0.js +77 -0
  147. package/dist/vendor-tiptap-extension-history-DeKZ2VQ9.js +48 -0
  148. package/dist/vendor-tiptap-extension-horizontal-rule-CAjWRyDS.js +92 -0
  149. package/dist/vendor-tiptap-extension-image-ZagcEYuk.js +76 -0
  150. package/dist/vendor-tiptap-extension-italic-CM4xdznY.js +96 -0
  151. package/dist/vendor-tiptap-extension-link-Z-AMC4Ri.js +414 -0
  152. package/dist/vendor-tiptap-extension-list-item-BJi5QpXc.js +37 -0
  153. package/dist/vendor-tiptap-extension-ordered-list-C_TMrfBE.js +97 -0
  154. package/dist/vendor-tiptap-extension-paragraph-CQw0E0Au.js +39 -0
  155. package/dist/vendor-tiptap-extension-placeholder-BBNVKfa_.js +66 -0
  156. package/dist/vendor-tiptap-extension-strike-DUyMYX1Z.js +79 -0
  157. package/dist/vendor-tiptap-extension-table-cell-CoDIMPA5.js +47 -0
  158. package/dist/vendor-tiptap-extension-table-header-DvbGHnmw.js +47 -0
  159. package/dist/vendor-tiptap-extension-table-row-D1uqN5Aj.js +26 -0
  160. package/dist/vendor-tiptap-extension-table-tKS4MOM4.js +354 -0
  161. package/dist/vendor-tiptap-extension-text-DtRBhKB2.js +12 -0
  162. package/dist/vendor-tiptap-extension-underline-DqaSFp_P.js +50 -0
  163. package/dist/vendor-tiptap-markdown-7-PCADTU.js +1017 -0
  164. package/dist/vendor-tiptap-pm-l0sNRNKZ.js +1 -0
  165. package/dist/vendor-tiptap-starter-kit-CDSV_Zuu.js +88 -0
  166. package/dist/vendor-tiptap-vue-3-DZg2fjq_.js +268 -0
  167. package/dist/vendor-truncate-html-3qQY0Djo.js +196 -0
  168. package/dist/vendor-uc-micro-jjt6LQ65.js +23 -0
  169. package/dist/vendor-vee-validate-i18n-v_gHjRmD.js +154 -0
  170. package/dist/vendor-vee-validate-rules-DzV3VY3N.js +536 -0
  171. package/dist/vendor-vue-currency-input-DGAkEFBO.js +545 -0
  172. package/dist/vendor-vue-demi-l0sNRNKZ.js +1 -0
  173. package/dist/vendor-vue-devtools-api-DXYR8qBG.js +169 -0
  174. package/dist/vendor-vue-i18n-Co752uk3.js +1897 -0
  175. package/dist/vendor-vue3-application-insights-CYWFCr_J.js +119 -0
  176. package/dist/vendor-vue3-touch-events-BJEAiSa3.js +416 -0
  177. package/dist/vendor-vuepic-vue-datepicker-BSWXRSiu.js +5019 -0
  178. package/dist/vendor-vuepic-vue-datepicker.css +1 -0
  179. package/dist/vendor-vueuse-components-l1bL12mE.js +339 -0
  180. package/dist/vendor-vueuse-core-DGcJOmwG.js +7743 -0
  181. package/dist/vendor-vueuse-shared-_mOXsFuM.js +1568 -0
  182. package/dist/vendor-w3c-keyname-BOm2dtJm.js +121 -0
  183. package/package.json +22 -11
  184. package/shared/components/blade-navigation/components/vc-blade-navigation/_internal/vc-mobile-back-button.vue +3 -3
  185. package/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.ts +2 -1
  186. package/shared/components/blade-navigation/composables/useBladeNavigation/internal/bladeRouteResolver.ts +1 -0
  187. package/shared/components/change-password-button/change-password-button.vue +1 -2
  188. package/shared/components/logout-button/logout-button.vue +1 -2
  189. package/shared/components/notifications/components/notification-container/index.ts +1 -1
  190. package/shared/components/notifications/core/notification.ts +1 -1
  191. package/shared/components/settings-menu-item/settings-menu-item.vue +1 -0
  192. package/shared/components/sidebar/sidebar.vue +2 -2
  193. package/shared/modules/dynamic/pages/dynamic-blade-list.vue +2 -1
  194. package/ui/components/atoms/vc-hint/vc-hint.vue +2 -0
  195. package/ui/components/atoms/vc-icon/composables/use-icon.ts +1 -1
  196. package/ui/components/atoms/vc-icon/icons/MenuBurgerIcon.vue +18 -14
  197. package/ui/components/atoms/vc-icon/icons/index.ts +1 -27
  198. package/ui/components/atoms/vc-icon/vc-bootstrap-icon.vue +7 -11
  199. package/ui/components/atoms/vc-icon/vc-fontawesome-icon.vue +37 -31
  200. package/ui/components/atoms/vc-icon/vc-icon-examples.vue +1 -1
  201. package/ui/components/atoms/vc-icon/vc-icon.stories.ts +4 -5
  202. package/ui/components/atoms/vc-icon/vc-icon.vue +43 -186
  203. package/ui/components/atoms/vc-icon/vc-lucide-icon.vue +22 -70
  204. package/ui/components/atoms/vc-icon/vc-material-icon.vue +28 -59
  205. package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue +2 -3
  206. package/ui/components/molecules/vc-editor/_internal/vc-editor-button.vue +103 -0
  207. package/ui/components/molecules/vc-editor/_internal/vc-editor-toolbar.vue +252 -0
  208. package/ui/components/molecules/vc-editor/vc-editor.stories.ts +1 -4
  209. package/ui/components/molecules/vc-editor/vc-editor.vue +666 -360
  210. package/ui/components/molecules/vc-form/vc-form.vue +7 -5
  211. package/ui/components/molecules/vc-input/vc-input.vue +1 -1
  212. package/ui/components/molecules/vc-pagination/vc-pagination.vue +4 -17
  213. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarMobileActions.vue +1 -1
  214. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/MenuSidebar.vue +1 -3
  215. package/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue +1 -4
  216. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue +1 -3
  217. package/ui/components/organisms/vc-app/vc-app.backupsb.ts +214 -214
  218. package/ui/components/organisms/vc-app/vc-app.vue +3 -5
  219. package/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue +3 -10
  220. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/mobile/vc-blade-toolbar-mobile.vue +1 -1
  221. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue +2 -2
  222. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue +2 -2
  223. package/ui/components/organisms/vc-blade/vc-blade.vue +4 -5
  224. package/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue +1 -3
  225. package/ui/components/organisms/vc-table/_internal/vc-table-header/vc-table-header.vue +1 -2
  226. package/ui/components/organisms/vc-table/composables/useTableState.ts +5 -5
  227. package/dist/apl-B2DGVGxc.js +0 -76
  228. package/dist/asciiarmor-2LVJmxlE.js +0 -34
  229. package/dist/asn1-jKiBa2Ya.js +0 -95
  230. package/dist/asterisk-DS281yxp.js +0 -271
  231. package/dist/brainfuck-C_p9pTT8.js +0 -34
  232. package/dist/clike-DGTaUp48.js +0 -620
  233. package/dist/clojure-CCKyeQKf.js +0 -800
  234. package/dist/cmake-CuaCgAKt.js +0 -28
  235. package/dist/cobol-BlTKFDRj.js +0 -72
  236. package/dist/coffeescript-BVCvwO8I.js +0 -179
  237. package/dist/commonlisp-D_kxz07b.js +0 -75
  238. package/dist/crystal-D309uH6_.js +0 -217
  239. package/dist/css-BkF-NPzE.js +0 -1553
  240. package/dist/cypher-BMq4Fwjl.js +0 -68
  241. package/dist/d-BZcgY6La.js +0 -127
  242. package/dist/diff-Cg9d_RX2.js +0 -18
  243. package/dist/dockerfile-DIy8NleC.js +0 -194
  244. package/dist/dtd-CtLokQ-U.js +0 -84
  245. package/dist/dylan-QYeExnWK.js +0 -234
  246. package/dist/ebnf-DUPDuY4r.js +0 -78
  247. package/dist/ecl-CiXN-g_D.js +0 -121
  248. package/dist/eiffel-yQhjl4T1.js +0 -110
  249. package/dist/elm-CNT9vbN0.js +0 -108
  250. package/dist/erlang-CFOYdy9e.js +0 -487
  251. package/dist/factor-DDOC7X6P.js +0 -65
  252. package/dist/fcl-CPC2WYrI.js +0 -103
  253. package/dist/forth-BmxRyE9S.js +0 -60
  254. package/dist/fortran-9bvPyrOW.js +0 -442
  255. package/dist/gas-cpmYfFX2.js +0 -183
  256. package/dist/gherkin-CJuwpceU.js +0 -34
  257. package/dist/groovy-DZeT_VM-.js +0 -146
  258. package/dist/haskell-Bvt3Qq1t.js +0 -375
  259. package/dist/haxe-70NVW1pR.js +0 -359
  260. package/dist/http-D9LttvKF.js +0 -44
  261. package/dist/idl-B6TRFYjl.js +0 -947
  262. package/dist/index-4DWvmoYg.js +0 -71
  263. package/dist/index-52o7mJaX.js +0 -156
  264. package/dist/index-B0KatioT.js +0 -98
  265. package/dist/index-BP3W8zuk.js +0 -268
  266. package/dist/index-BykT5L1A.js +0 -148134
  267. package/dist/index-CfXo9hsG.js +0 -75
  268. package/dist/index-Ch37pBUt.js +0 -308
  269. package/dist/index-D2KGkAYT.js +0 -93
  270. package/dist/index-D83zQom_.js +0 -58
  271. package/dist/index-DuQrVLbu.js +0 -134
  272. package/dist/index-_fdMid5h.js +0 -288
  273. package/dist/index-a1wO-owY.js +0 -545
  274. package/dist/index-crMpNSFe.js +0 -611
  275. package/dist/index-dmBRpHHY.js +0 -137
  276. package/dist/index-kBdB14Fz.js +0 -341
  277. package/dist/index-uBhy41le.js +0 -249
  278. package/dist/index-zZrijNsr.js +0 -299
  279. package/dist/javascript-C2yteZeJ.js +0 -691
  280. package/dist/jinja2-DnB6dQmV.js +0 -154
  281. package/dist/julia-DpvXAuO6.js +0 -241
  282. package/dist/livescript-CanGTf8u.js +0 -272
  283. package/dist/lua-XplVlWi_.js +0 -217
  284. package/dist/mathematica-jaRHnSxC.js +0 -35
  285. package/dist/mbox-BctzC1hL.js +0 -76
  286. package/dist/mirc-CFBPAOaF.js +0 -72
  287. package/dist/mllike-BSnXJBGA.js +0 -272
  288. package/dist/modelica-vUgVs--1.js +0 -93
  289. package/dist/mscgen-Cpl0NYLN.js +0 -104
  290. package/dist/mumps-CQoS1kWX.js +0 -25
  291. package/dist/nginx-zDPm3Z74.js +0 -89
  292. package/dist/nsis-fePjrhq7.js +0 -62
  293. package/dist/ntriples-CsNjv2QF.js +0 -79
  294. package/dist/octave-C8PmmSRH.js +0 -143
  295. package/dist/oz-Ce8aN8oE.js +0 -151
  296. package/dist/pascal-De0D6mP7.js +0 -77
  297. package/dist/perl-B4bSCe1C.js +0 -915
  298. package/dist/pig-D24Z8EXi.js +0 -54
  299. package/dist/powershell-DkYVfTzP.js +0 -249
  300. package/dist/properties-Dn9wna3M.js +0 -26
  301. package/dist/protobuf-BPIjwpzm.js +0 -49
  302. package/dist/pug-CwAQJzGR.js +0 -248
  303. package/dist/puppet-nyd4dhjf.js +0 -45
  304. package/dist/python-BkR3uSy8.js +0 -313
  305. package/dist/q-DXjKs-tC.js +0 -83
  306. package/dist/r-LKEuhEGI.js +0 -104
  307. package/dist/rpm-IznJm2Xc.js +0 -57
  308. package/dist/ruby-CcYfvIk6.js +0 -228
  309. package/dist/sas-7E8yHoCW.js +0 -105
  310. package/dist/scheme-DjibxsNh.js +0 -124
  311. package/dist/shared/modules/dynamic/components/fields/storybook/common/args.d.ts +0 -113
  312. package/dist/shared/modules/dynamic/components/fields/storybook/common/args.d.ts.map +0 -1
  313. package/dist/shared/modules/dynamic/components/fields/storybook/common/templates.d.ts +0 -3
  314. package/dist/shared/modules/dynamic/components/fields/storybook/common/templates.d.ts.map +0 -1
  315. package/dist/shared/modules/dynamic/components/fields/storybook/pages/DynamicRender.d.ts +0 -102
  316. package/dist/shared/modules/dynamic/components/fields/storybook/pages/DynamicRender.d.ts.map +0 -1
  317. package/dist/shared/modules/dynamic/components/fields/storybook/utils/sourceHighlighter.d.ts +0 -4
  318. package/dist/shared/modules/dynamic/components/fields/storybook/utils/sourceHighlighter.d.ts.map +0 -1
  319. package/dist/shared/modules/dynamic/components/fields/storybook/utils/sourceTransform.d.ts +0 -3
  320. package/dist/shared/modules/dynamic/components/fields/storybook/utils/sourceTransform.d.ts.map +0 -1
  321. package/dist/shell-C0C2sNA_.js +0 -182
  322. package/dist/sieve-Bwz7vjP5.js +0 -72
  323. package/dist/simple-mode-B0dvCdAA.js +0 -89
  324. package/dist/smalltalk-Bhddl2pB.js +0 -48
  325. package/dist/solr-BNlsLglM.js +0 -41
  326. package/dist/sparql-FarWu_Gb.js +0 -197
  327. package/dist/spreadsheet-C-cy4P5N.js +0 -49
  328. package/dist/sql-CfG5lQ3l.js +0 -282
  329. package/dist/stex-Du4h4KAU.js +0 -129
  330. package/dist/stylus-CAdqWld3.js +0 -250
  331. package/dist/swift-DSxqR9R6.js +0 -230
  332. package/dist/tcl-xfoLljhY.js +0 -81
  333. package/dist/textile-D1AWE-pc.js +0 -295
  334. package/dist/tiddlywiki-5wqsXtSk.js +0 -155
  335. package/dist/tiki-__Kn3CeS.js +0 -181
  336. package/dist/toml-BHiuTcfn.js +0 -49
  337. package/dist/troff-D2UO-fKf.js +0 -35
  338. package/dist/ttcn-Bsa4sfRm.js +0 -123
  339. package/dist/ttcn-cfg-Bac_acMi.js +0 -88
  340. package/dist/turtle-xwJUxoPV.js +0 -80
  341. package/dist/ui/components/atoms/vc-icon/icons/AppWindowIcon.vue.d.ts +0 -7
  342. package/dist/ui/components/atoms/vc-icon/icons/AppWindowIcon.vue.d.ts.map +0 -1
  343. package/dist/ui/components/atoms/vc-icon/icons/ArrowLeftIcon.vue.d.ts +0 -7
  344. package/dist/ui/components/atoms/vc-icon/icons/ArrowLeftIcon.vue.d.ts.map +0 -1
  345. package/dist/ui/components/atoms/vc-icon/icons/ArrowRightIcon.vue.d.ts +0 -7
  346. package/dist/ui/components/atoms/vc-icon/icons/ArrowRightIcon.vue.d.ts.map +0 -1
  347. package/dist/ui/components/atoms/vc-icon/icons/BellIcon.vue.d.ts +0 -7
  348. package/dist/ui/components/atoms/vc-icon/icons/BellIcon.vue.d.ts.map +0 -1
  349. package/dist/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue.d.ts +0 -7
  350. package/dist/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue.d.ts.map +0 -1
  351. package/dist/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue.d.ts +0 -7
  352. package/dist/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue.d.ts.map +0 -1
  353. package/dist/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue.d.ts +0 -7
  354. package/dist/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue.d.ts.map +0 -1
  355. package/dist/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue.d.ts +0 -7
  356. package/dist/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue.d.ts.map +0 -1
  357. package/dist/ui/components/atoms/vc-icon/icons/CircleDotsIcon.vue.d.ts +0 -7
  358. package/dist/ui/components/atoms/vc-icon/icons/CircleDotsIcon.vue.d.ts.map +0 -1
  359. package/dist/ui/components/atoms/vc-icon/icons/CrossSignIcon.vue.d.ts +0 -7
  360. package/dist/ui/components/atoms/vc-icon/icons/CrossSignIcon.vue.d.ts.map +0 -1
  361. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue.d.ts +0 -7
  362. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue.d.ts.map +0 -1
  363. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue.d.ts +0 -7
  364. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue.d.ts.map +0 -1
  365. package/dist/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue.d.ts +0 -7
  366. package/dist/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue.d.ts.map +0 -1
  367. package/dist/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue.d.ts +0 -7
  368. package/dist/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue.d.ts.map +0 -1
  369. package/dist/ui/components/atoms/vc-icon/icons/LogoutIcon.vue.d.ts +0 -7
  370. package/dist/ui/components/atoms/vc-icon/icons/LogoutIcon.vue.d.ts.map +0 -1
  371. package/dist/ui/components/atoms/vc-icon/icons/MinusSignIcon.vue.d.ts +0 -7
  372. package/dist/ui/components/atoms/vc-icon/icons/MinusSignIcon.vue.d.ts.map +0 -1
  373. package/dist/ui/components/atoms/vc-icon/icons/OffersIcon.vue.d.ts +0 -7
  374. package/dist/ui/components/atoms/vc-icon/icons/OffersIcon.vue.d.ts.map +0 -1
  375. package/dist/ui/components/atoms/vc-icon/icons/OrdersIcon.vue.d.ts +0 -7
  376. package/dist/ui/components/atoms/vc-icon/icons/OrdersIcon.vue.d.ts.map +0 -1
  377. package/dist/ui/components/atoms/vc-icon/icons/PeopleIcon.vue.d.ts +0 -7
  378. package/dist/ui/components/atoms/vc-icon/icons/PeopleIcon.vue.d.ts.map +0 -1
  379. package/dist/ui/components/atoms/vc-icon/icons/PlusSignIcon.vue.d.ts +0 -7
  380. package/dist/ui/components/atoms/vc-icon/icons/PlusSignIcon.vue.d.ts.map +0 -1
  381. package/dist/ui/components/atoms/vc-icon/icons/ProductsIcon.vue.d.ts +0 -7
  382. package/dist/ui/components/atoms/vc-icon/icons/ProductsIcon.vue.d.ts.map +0 -1
  383. package/dist/ui/components/atoms/vc-icon/icons/ProfileIcon.vue.d.ts +0 -7
  384. package/dist/ui/components/atoms/vc-icon/icons/ProfileIcon.vue.d.ts.map +0 -1
  385. package/dist/ui/components/atoms/vc-icon/icons/SearchIcon.vue.d.ts +0 -7
  386. package/dist/ui/components/atoms/vc-icon/icons/SearchIcon.vue.d.ts.map +0 -1
  387. package/dist/ui/components/atoms/vc-icon/icons/SettingsBoltIcon.vue.d.ts +0 -7
  388. package/dist/ui/components/atoms/vc-icon/icons/SettingsBoltIcon.vue.d.ts.map +0 -1
  389. package/dist/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue.d.ts +0 -7
  390. package/dist/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue.d.ts.map +0 -1
  391. package/dist/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue.d.ts +0 -7
  392. package/dist/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue.d.ts.map +0 -1
  393. package/dist/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue.d.ts +0 -7
  394. package/dist/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue.d.ts.map +0 -1
  395. package/dist/vb-c2kQGd6-.js +0 -74
  396. package/dist/vbscript-1f_Dhg5H.js +0 -324
  397. package/dist/velocity-DJd0pTTC.js +0 -96
  398. package/dist/verilog-CiS1jyi5.js +0 -262
  399. package/dist/vhdl-T9HkrbI2.js +0 -106
  400. package/dist/webidl-CjfDENEo.js +0 -155
  401. package/dist/xquery-BUQdORAS.js +0 -422
  402. package/dist/yacas-C0absKBh.js +0 -73
  403. package/dist/z80-Pki2zAjW.js +0 -61
  404. package/shared/modules/dynamic/components/fields/storybook/Button.stories.ts +0 -186
  405. package/shared/modules/dynamic/components/fields/storybook/Card.stories.ts +0 -175
  406. package/shared/modules/dynamic/components/fields/storybook/Checkbox.stories.ts +0 -185
  407. package/shared/modules/dynamic/components/fields/storybook/ContentField.stories.ts +0 -245
  408. package/shared/modules/dynamic/components/fields/storybook/EditorField.stories.ts +0 -192
  409. package/shared/modules/dynamic/components/fields/storybook/Fieldset.stories.ts +0 -347
  410. package/shared/modules/dynamic/components/fields/storybook/GalleryField.stories.ts +0 -239
  411. package/shared/modules/dynamic/components/fields/storybook/ImageField.stories.ts +0 -186
  412. package/shared/modules/dynamic/components/fields/storybook/InputCurrency.stories.ts +0 -281
  413. package/shared/modules/dynamic/components/fields/storybook/InputField.stories.ts +0 -312
  414. package/shared/modules/dynamic/components/fields/storybook/MultivalueField.stories.ts +0 -361
  415. package/shared/modules/dynamic/components/fields/storybook/RadioButtonGroup.stories.ts +0 -224
  416. package/shared/modules/dynamic/components/fields/storybook/RatingField.stories.ts +0 -131
  417. package/shared/modules/dynamic/components/fields/storybook/SelectField.stories.ts +0 -666
  418. package/shared/modules/dynamic/components/fields/storybook/StatusField.stories.ts +0 -202
  419. package/shared/modules/dynamic/components/fields/storybook/SwitchField.stories.ts +0 -178
  420. package/shared/modules/dynamic/components/fields/storybook/TextareaField.stories.ts +0 -203
  421. package/shared/modules/dynamic/components/fields/storybook/VideoField.stories.ts +0 -92
  422. package/shared/modules/dynamic/components/fields/storybook/common/args.ts +0 -130
  423. package/shared/modules/dynamic/components/fields/storybook/common/templates.ts +0 -8
  424. package/shared/modules/dynamic/components/fields/storybook/pages/DynamicRender.ts +0 -54
  425. package/shared/modules/dynamic/components/fields/storybook/utils/sourceHighlighter.ts +0 -16
  426. package/shared/modules/dynamic/components/fields/storybook/utils/sourceTransform.ts +0 -41
  427. package/ui/components/atoms/vc-icon/icons/AppWindowIcon.vue +0 -15
  428. package/ui/components/atoms/vc-icon/icons/ArrowLeftIcon.vue +0 -20
  429. package/ui/components/atoms/vc-icon/icons/ArrowRightIcon.vue +0 -13
  430. package/ui/components/atoms/vc-icon/icons/BellIcon.vue +0 -14
  431. package/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue +0 -13
  432. package/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue +0 -13
  433. package/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue +0 -13
  434. package/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue +0 -13
  435. package/ui/components/atoms/vc-icon/icons/CircleDotsIcon.vue +0 -16
  436. package/ui/components/atoms/vc-icon/icons/CrossSignIcon.vue +0 -20
  437. package/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue +0 -14
  438. package/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue +0 -14
  439. package/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue +0 -27
  440. package/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue +0 -22
  441. package/ui/components/atoms/vc-icon/icons/LogoutIcon.vue +0 -13
  442. package/ui/components/atoms/vc-icon/icons/MinusSignIcon.vue +0 -14
  443. package/ui/components/atoms/vc-icon/icons/OffersIcon.vue +0 -23
  444. package/ui/components/atoms/vc-icon/icons/OrdersIcon.vue +0 -19
  445. package/ui/components/atoms/vc-icon/icons/PeopleIcon.vue +0 -21
  446. package/ui/components/atoms/vc-icon/icons/PlusSignIcon.vue +0 -20
  447. package/ui/components/atoms/vc-icon/icons/ProductsIcon.vue +0 -23
  448. package/ui/components/atoms/vc-icon/icons/ProfileIcon.vue +0 -18
  449. package/ui/components/atoms/vc-icon/icons/SearchIcon.vue +0 -14
  450. package/ui/components/atoms/vc-icon/icons/SettingsBoltIcon.vue +0 -21
  451. package/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue +0 -16
  452. package/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue +0 -26
  453. package/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue +0 -19
@@ -110,16 +110,6 @@ const sizeMap = {
110
110
  xxxl: 64,
111
111
  } as const;
112
112
 
113
- // Scaling factors for different icon types to make them visually equal
114
- const scalingFactors = {
115
- fontawesome: 1, // base reference
116
- material: 1.1,
117
- bootstrap: 0.95,
118
- lucide: 1.2,
119
- custom: 1,
120
- svg: 1,
121
- };
122
-
123
113
  // Function to detect icon type if not explicitly specified
124
114
  const detectIconType = computed((): IconType => {
125
115
  if (typeof props.icon !== "string") {
@@ -162,16 +152,16 @@ const normalizedIconName = computed(() => {
162
152
  return props.icon;
163
153
  }
164
154
 
165
- if (detectIconType.value === "material" && props.icon.startsWith("material-")) {
166
- return props.icon.replace(/^material-/, "");
167
- }
155
+ const type = detectIconType.value;
168
156
 
169
- if (detectIconType.value === "lucide" && props.icon.startsWith("lucide-")) {
170
- const baseName = props.icon.replace(/^lucide-/, "");
171
- return baseName.endsWith("Icon") ? baseName : `${baseName}Icon`;
157
+ switch (type) {
158
+ case "material":
159
+ return props.icon.replace(/^material-/, "");
160
+ case "lucide":
161
+ return props.icon.replace(/^lucide-/, "");
162
+ default:
163
+ return props.icon;
172
164
  }
173
-
174
- return props.icon;
175
165
  });
176
166
 
177
167
  // Check if icon is a Material Design symbol
@@ -186,7 +176,7 @@ const isLucideIcon = computed(() => detectIconType.value === "lucide");
186
176
  // Check if icon is a Font Awesome Icon
187
177
  const isFontAwesomeIcon = computed(() => detectIconType.value === "fontawesome");
188
178
 
189
- // Check if the icon is a component or can be resolved as a component
179
+ // Check if icon is a component or can be resolved as a component
190
180
  const isCustomIcon = computed(() => {
191
181
  if (typeof props.icon !== "string") {
192
182
  return true; // Component instance passed directly
@@ -201,25 +191,13 @@ const isCustomIcon = computed(() => {
201
191
  return false;
202
192
  }
203
193
 
204
- // Check for Lucide icons - they could be resolved as components
194
+ // For Lucide icons, assume they can be resolved (safer approach)
205
195
  if (isLucideIcon.value) {
206
- try {
207
- const iconName =
208
- typeof normalizedIconName.value === "string" ? normalizedIconName.value : String(normalizedIconName.value);
209
- const resolved = resolveComponent(iconName);
210
- return resolved !== iconName;
211
- } catch (e) {
212
- return false;
213
- }
196
+ return true; // Assume Lucide icons are available as components
214
197
  }
215
198
 
216
- // Check if string is a component name that can be resolved
217
- try {
218
- const resolved = resolveComponent(props.icon);
219
- return resolved !== props.icon; // If resolved is different from original string, it's a component name
220
- } catch (e) {
221
- return false;
222
- }
199
+ // For other cases, assume it's not a component to avoid resolveComponent calls
200
+ return false;
223
201
  });
224
202
 
225
203
  // Get the component instance for rendering
@@ -233,15 +211,14 @@ const safeIcon = computed(() => {
233
211
  return "i";
234
212
  }
235
213
 
236
- // Try to resolve component by name (mostly for Lucide icons)
237
- try {
214
+ // For Lucide icons, return the normalized name directly
215
+ if (isLucideIcon.value) {
238
216
  const iconName =
239
217
  typeof normalizedIconName.value === "string" ? normalizedIconName.value : String(normalizedIconName.value);
240
- const resolved = resolveComponent(iconName);
241
- return resolved !== iconName ? resolved : "i"; // Return resolved component or fallback to 'i'
242
- } catch (e) {
243
- return "i";
218
+ return iconName; // Let Vue handle component resolution in template
244
219
  }
220
+
221
+ return "i";
245
222
  });
246
223
 
247
224
  // Determine which component to render
@@ -315,82 +292,32 @@ const containerStyle = computed(() => {
315
292
 
316
293
  // Prepare props for the rendered component
317
294
  const componentProps = computed(() => {
318
- if (isMaterialIcon.value) {
319
- // Clean the name from possible suffixes of the icon type
320
- const cleanIconName =
321
- typeof normalizedIconName.value === "string"
322
- ? normalizedIconName.value.replace(/-outlined$|-rounded$|-sharp$/, "")
323
- : normalizedIconName.value;
324
-
325
- return {
326
- icon: cleanIconName,
327
- size: props.size,
328
- variant: props.variant,
329
- type: "outlined",
330
- fill: 0,
331
- weight: 300,
332
- grade: 0,
333
- customSize: props.customSize, // Set custom size without scaling
334
- };
335
- }
336
-
337
- if (isBootstrapIcon.value) {
338
- // For Bootstrap icons
339
- const iconName = typeof props.icon === "string" ? props.icon : "";
340
-
341
- return {
342
- icon: iconName,
343
- size: props.size,
344
- variant: props.variant,
345
- customSize: props.customSize, // Set custom size without scaling
346
- };
347
- }
348
-
349
- if (isLucideIcon.value) {
350
- // For Lucide icons
351
- const iconName =
352
- typeof normalizedIconName.value === "string" ? normalizedIconName.value : String(normalizedIconName.value);
353
-
354
- return {
355
- icon: iconName,
356
- size: props.size,
357
- variant: props.variant,
358
- strokeWidth: 1.5,
359
- customSize: props.customSize, // Set custom size without scaling
360
- };
361
- }
362
-
363
- if (isFontAwesomeIcon.value) {
364
- // For Font Awesome icons
365
- return {
366
- icon: typeof props.icon === "string" ? props.icon : "",
367
- size: props.size,
368
- variant: props.variant,
369
- customSize: props.customSize, // Set custom size without scaling
370
- };
371
- }
372
-
373
- if (isSvgIcon.value) {
374
- return {
375
- icon: svgPath.value,
376
- size: props.size,
377
- variant: props.variant,
378
- strokeWidth: 1.5,
379
- customSize: props.customSize, // Set custom size without scaling
380
- basePath: props.basePath,
381
- };
295
+ const type = detectIconType.value;
296
+
297
+ switch (type) {
298
+ case "lucide":
299
+ case "material":
300
+ case "bootstrap":
301
+ case "fontawesome":
302
+ return { icon: normalizedIconName.value, size: props.size, variant: props.variant, customSize: props.customSize };
303
+ case "svg":
304
+ return {
305
+ icon: svgPath.value,
306
+ size: props.size,
307
+ variant: props.variant,
308
+ strokeWidth: 1.5,
309
+ customSize: props.customSize, // Set custom size without scaling
310
+ basePath: props.basePath,
311
+ };
312
+ default:
313
+ // For custom components, no extra props needed
314
+ return {
315
+ size: props.size,
316
+ width: calculatedSize.value,
317
+ height: calculatedSize.value,
318
+ color: props.variant ? `var(--icon-color-${props.variant})` : "currentColor",
319
+ };
382
320
  }
383
-
384
- if (isCustomIcon.value) {
385
- return {
386
- size: props.size,
387
- width: calculatedSize.value,
388
- height: calculatedSize.value,
389
- color: props.variant ? `var(--icon-color-${props.variant})` : "currentColor",
390
- };
391
- }
392
-
393
- return {};
394
321
  });
395
322
 
396
323
  // Check if icon is an SVG icon
@@ -534,74 +461,4 @@ const svgPath = computed(() => {
534
461
  min-height: calc(var(--icon-size-xxxl) * 1.33);
535
462
  font-size: var(--icon-size-xxxl); /* Set font-size for the container */
536
463
  }
537
-
538
- /* Material Icons specific styles */
539
- .material-symbols-outlined,
540
- .material-symbols-rounded,
541
- .material-symbols-sharp {
542
- font-family: "Material Symbols Outlined";
543
- font-weight: normal;
544
- font-style: normal;
545
- line-height: 1;
546
- letter-spacing: normal;
547
- text-transform: none;
548
- white-space: nowrap;
549
- word-wrap: normal;
550
- direction: ltr;
551
- font-feature-settings: "liga";
552
- -webkit-font-feature-settings: "liga";
553
- -webkit-font-smoothing: antialiased;
554
- }
555
-
556
- /* Bootstrap Icons specific styles */
557
- [class^="bi-"],
558
- [class*=" bi-"] {
559
- font-family: bootstrap-icons !important;
560
- font-style: normal;
561
- font-weight: normal !important;
562
- font-variant: normal;
563
- text-transform: none;
564
- line-height: 1;
565
- -webkit-font-smoothing: antialiased;
566
- -moz-osx-font-smoothing: grayscale;
567
- }
568
-
569
- /* Font Awesome Icons */
570
- [class^="fa-"],
571
- [class*=" fa-"],
572
- [class~="fas"],
573
- [class~="far"],
574
- [class~="fal"],
575
- [class~="fab"],
576
- [class~="fad"] {
577
- font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands", "Font Awesome 6 Duotone", "Font Awesome 6 Pro";
578
- font-style: normal;
579
- font-weight: normal;
580
- font-variant: normal;
581
- text-transform: none;
582
- line-height: 1;
583
- -webkit-font-smoothing: antialiased;
584
- -moz-osx-font-smoothing: grayscale;
585
- }
586
-
587
- /* Font weight adjustments for Font Awesome */
588
- .fas,
589
- .fa-solid {
590
- font-weight: 900;
591
- }
592
-
593
- .far,
594
- .fa-regular {
595
- font-weight: 400;
596
- }
597
-
598
- .fal,
599
- .fa-light {
600
- font-weight: 300;
601
- }
602
-
603
- .fab,
604
- .fa-brands {
605
- font-family: "Font Awesome 6 Brands";
606
- }
607
464
  </style>
@@ -1,7 +1,6 @@
1
1
  <template>
2
- <component
3
- :is="resolvedIconComponent"
4
- v-if="resolvedIconComponent"
2
+ <Icon
3
+ :icon="iconName"
5
4
  :class="[
6
5
  'vc-lucide-icon',
7
6
  !hasCustomSize && `vc-lucide-icon--${size}`,
@@ -10,18 +9,12 @@
10
9
  :style="computedStyle"
11
10
  aria-hidden="true"
12
11
  />
13
- <span
14
- v-else
15
- :class="['vc-lucide-icon', !hasCustomSize && `vc-lucide-icon--${size}`]"
16
- >
17
- <i class="vc-lucide-icon__fallback">❓</i>
18
- </span>
19
12
  </template>
20
13
 
21
14
  <script lang="ts" setup>
22
- import { computed, markRaw, onMounted, ref } from "vue";
15
+ import { computed } from "vue";
16
+ import { Icon } from "@iconify/vue";
23
17
  import type { IconSize, IconVariant } from "./types";
24
- import type { Component } from "vue";
25
18
  import { useIcon } from "./composables";
26
19
 
27
20
  interface Props {
@@ -40,11 +33,6 @@ interface Props {
40
33
  */
41
34
  variant?: IconVariant;
42
35
 
43
- /**
44
- * Stroke width for SVG
45
- */
46
- strokeWidth?: number;
47
-
48
36
  /**
49
37
  * Custom size in pixels
50
38
  */
@@ -53,15 +41,11 @@ interface Props {
53
41
 
54
42
  const props = withDefaults(defineProps<Props>(), {
55
43
  size: "m",
56
- strokeWidth: 1.5,
57
44
  });
58
45
 
59
46
  // Check if using custom size to conditionally apply CSS class
60
47
  const hasCustomSize = computed(() => typeof props.customSize === "number" && props.customSize > 0);
61
48
 
62
- // Component reference for Lucide icon
63
- const resolvedIconComponent = ref<Component | null>(null);
64
-
65
49
  // Use the shared icon composable for consistent scaling
66
50
  const { iconStyle } = useIcon({
67
51
  type: "lucide",
@@ -70,71 +54,39 @@ const { iconStyle } = useIcon({
70
54
  customSize: props.customSize,
71
55
  });
72
56
 
73
- // Normalize the icon name for Lucide
74
- const normalizedIconName = computed(() => {
75
- if (!props.icon) return "HelpCircleIcon";
76
-
77
- // Handle removal of lucide- prefix
78
- let name = props.icon;
79
- if (name.startsWith("lucide-")) {
80
- name = name.substring(7);
81
- }
82
-
83
- // Ensure name ends with 'Icon'
84
- if (!name.endsWith("Icon")) {
85
- name = `${name}Icon`;
86
- }
87
-
88
- // Convert to PascalCase if kebab-case
89
- if (name.includes("-")) {
90
- name = name
91
- .split("-")
92
- .map((part) => part.charAt(0).toUpperCase() + part.slice(1))
93
- .join("");
94
- }
95
-
96
- // Ensure first letter is capitalized
97
- return name.charAt(0).toUpperCase() + name.slice(1);
98
- });
99
-
100
57
  // Combine the shared icon styles with Lucide-specific settings
101
58
  const computedStyle = computed(() => {
102
59
  const styles = { ...iconStyle.value };
103
60
 
104
- if (props.strokeWidth) {
105
- styles.strokeWidth = props.strokeWidth.toString();
106
- }
107
-
108
61
  // If using custom size, make sure size is applied with !important
109
- if (hasCustomSize.value) {
110
- if (styles.width) styles.width = `${styles.width.replace("px", "")}px !important`;
111
- if (styles.height) styles.height = `${styles.height.replace("px", "")}px !important`;
112
- }
62
+ // if (hasCustomSize.value) {
63
+ // if (styles.width) styles.width = `${styles.width.replace("px", "")}px !important`;
64
+ // if (styles.height) styles.height = `${styles.height.replace("px", "")}px !important`;
65
+ // }
113
66
 
114
67
  return styles;
115
68
  });
116
69
 
117
- // Dynamically import the Lucide icon
118
- onMounted(async () => {
119
- try {
120
- // Import from lucide-vue-next
121
- const module = await import("lucide-vue-next");
122
-
123
- // Get the icon component safely with type checking
124
- const iconName = normalizedIconName.value;
125
- if (module && typeof module === "object" && iconName in module) {
126
- resolvedIconComponent.value = markRaw(module[iconName as keyof typeof module] as Component);
127
- } else {
128
- console.warn(`Lucide icon not found: ${iconName}`);
129
- }
130
- } catch (error) {
131
- console.error(`Error loading Lucide icon: ${normalizedIconName.value}`, error);
70
+ const iconName = computed(() => {
71
+ let name = props.icon;
72
+
73
+ // Convert from PascalCaseIcon or kebab-caseIcon to kebab-case.
74
+ name = name.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, "$1-$2").toLowerCase();
75
+
76
+ if (name.endsWith("-icon")) {
77
+ name = name.slice(0, -5);
132
78
  }
79
+
80
+ return `lucide:${name}`;
133
81
  });
134
82
  </script>
135
83
 
136
84
  <style lang="scss">
137
85
  .vc-lucide-icon {
86
+ & * {
87
+ stroke-width: var(--vc-lucide-icon-stroke-width, 1.5);
88
+ }
89
+
138
90
  display: inline-flex;
139
91
  align-items: center;
140
92
  justify-content: center;
@@ -1,20 +1,20 @@
1
1
  <template>
2
- <span
2
+ <Icon
3
+ v-if="finalIconName"
4
+ :icon="finalIconName"
3
5
  :class="[
4
6
  'vc-material-icon',
5
7
  !hasCustomSize && `vc-material-icon--${size}`,
6
8
  variant ? `vc-material-icon--${variant}` : '',
7
- materialIconClass,
8
9
  ]"
9
10
  :style="computedStyle"
10
11
  aria-hidden="true"
11
- >
12
- {{ icon }}
13
- </span>
12
+ />
14
13
  </template>
15
14
 
16
15
  <script lang="ts" setup>
17
- import { computed } from "vue";
16
+ import { ref, watch, computed } from "vue";
17
+ import { Icon, loadIcon } from "@iconify/vue";
18
18
  import type { IconSize, IconVariant } from "./types";
19
19
  import { useIcon } from "./composables";
20
20
 
@@ -29,31 +29,11 @@ interface Props {
29
29
  */
30
30
  size?: IconSize;
31
31
 
32
- /**
33
- * Type of the Material icon (outlined, rounded, sharp)
34
- */
35
- type?: "outlined" | "rounded" | "sharp";
36
-
37
32
  /**
38
33
  * Icon color variant
39
34
  */
40
35
  variant?: IconVariant;
41
36
 
42
- /**
43
- * Fill value (0-1)
44
- */
45
- fill?: number;
46
-
47
- /**
48
- * Weight value (100-700)
49
- */
50
- weight?: number;
51
-
52
- /**
53
- * Grade value (-25 to 200)
54
- */
55
- grade?: number;
56
-
57
37
  /**
58
38
  * Custom size in pixels
59
39
  */
@@ -62,10 +42,6 @@ interface Props {
62
42
 
63
43
  const props = withDefaults(defineProps<Props>(), {
64
44
  size: "m",
65
- type: "outlined",
66
- fill: 0,
67
- weight: 300,
68
- grade: 0,
69
45
  });
70
46
 
71
47
  // Check if using custom size to conditionally apply CSS class
@@ -79,26 +55,33 @@ const { iconStyle } = useIcon({
79
55
  customSize: props.customSize,
80
56
  });
81
57
 
82
- // Compute the Google Material Symbols class based on type
83
- const materialIconClass = computed(() => {
84
- switch (props.type) {
85
- case "rounded":
86
- return "material-symbols-rounded";
87
- case "sharp":
88
- return "material-symbols-sharp";
89
- case "outlined":
90
- default:
91
- return "material-symbols-outlined";
92
- }
93
- });
58
+ const finalIconName = ref("");
59
+
60
+ watch(
61
+ () => props.icon,
62
+ (icon) => {
63
+ const collection = "material-symbols-light";
64
+
65
+ const cleanIconName = icon.replace(/_/g, "-");
66
+ const baseIcon = `${collection}:${cleanIconName}`;
67
+ const outlineIcon = `${collection}:${cleanIconName}-outline`;
68
+
69
+ loadIcon(outlineIcon)
70
+ .then(() => {
71
+ finalIconName.value = outlineIcon;
72
+ })
73
+ .catch(() => {
74
+ finalIconName.value = baseIcon;
75
+ });
76
+ },
77
+ { immediate: true },
78
+ );
94
79
 
95
80
  // Combine the shared icon styles with Material-specific settings
96
81
  const computedStyle = computed(() => {
97
82
  const styles = { ...iconStyle.value };
98
83
 
99
- // Apply Material variation settings
100
- styles.fontVariationSettings = `'FILL' ${props.fill}, 'wght' ${props.weight}, 'GRAD' ${props.grade}`;
101
-
84
+ // font-variation-settings is not applicable for SVG icons
102
85
  // If using custom size, make sure fontSize is applied with !important
103
86
  if (hasCustomSize.value && styles.fontSize) {
104
87
  styles.fontSize = `${styles.fontSize.replace("px", "")}px !important`;
@@ -110,20 +93,6 @@ const computedStyle = computed(() => {
110
93
 
111
94
  <style lang="scss">
112
95
  .vc-material-icon {
113
- font-family: "Material Symbols Outlined";
114
- font-weight: normal;
115
- font-style: normal;
116
- line-height: 1;
117
- letter-spacing: normal;
118
- text-transform: none;
119
- display: inline-block;
120
- white-space: nowrap;
121
- word-wrap: normal;
122
- direction: ltr;
123
- -webkit-font-feature-settings: "liga";
124
- -webkit-font-smoothing: antialiased;
125
- font-size: inherit;
126
-
127
96
  &--xs {
128
97
  font-size: var(--icon-size-xs);
129
98
  }
@@ -31,8 +31,8 @@
31
31
  >
32
32
  <VcButton
33
33
  text
34
- :icon="VertDotsIcon"
35
- icon-size="m"
34
+ icon="lucide-ellipsis-vertical"
35
+ icon-size="xl"
36
36
  class="vc-breadcrumbs__expand-button"
37
37
  :class="{
38
38
  'vc-breadcrumbs__expand-button--active': isActive,
@@ -85,7 +85,6 @@ import { Breadcrumbs } from "../../../types";
85
85
  import VcBreadcrumbsItem from "./_internal/vc-breadcrumbs-item/vc-breadcrumbs-item.vue";
86
86
  import { GenericDropdown } from "./../../../../shared/components/generic-dropdown";
87
87
  import { useAdaptiveItems } from "../../../composables/useAdaptiveItems";
88
- import { VertDotsIcon } from "./../../atoms/vc-icon/icons";
89
88
 
90
89
  export interface Props {
91
90
  items?: Breadcrumbs[];
@@ -0,0 +1,103 @@
1
+ <template>
2
+ <button
3
+ type="button"
4
+ class="vc-editor-button"
5
+ :class="{ 'vc-editor-button--active': active }"
6
+ :disabled="disabled"
7
+ @click="$emit('action')"
8
+ >
9
+ <VcIcon
10
+ :icon="icon"
11
+ size="s"
12
+ :use-container="false"
13
+ />
14
+ </button>
15
+ </template>
16
+
17
+ <script lang="ts" setup>
18
+ import { VcIcon } from "../../../atoms";
19
+
20
+ defineProps({
21
+ icon: {
22
+ type: String,
23
+ required: true,
24
+ },
25
+ active: {
26
+ type: Boolean,
27
+ default: false,
28
+ },
29
+ disabled: {
30
+ type: Boolean,
31
+ default: false,
32
+ },
33
+ });
34
+
35
+ defineEmits(["action"]);
36
+ </script>
37
+
38
+ <style lang="scss">
39
+ :root {
40
+ // Button color variables
41
+ --vc-button-text: var(--neutrals-600);
42
+ --vc-button-text-hover: var(--neutrals-800);
43
+ --vc-button-text-active: var(--primary-600);
44
+ --vc-button-text-disabled: var(--neutrals-400);
45
+ --vc-button-bg: transparent;
46
+ --vc-button-bg-hover: var(--neutrals-100);
47
+ --vc-button-bg-active: var(--primary-100);
48
+ --vc-button-bg-disabled: transparent;
49
+ --vc-button-border-radius: 6px;
50
+ }
51
+
52
+ .vc-editor-button {
53
+ display: inline-flex;
54
+ align-items: center;
55
+ justify-content: center;
56
+ width: 2rem;
57
+ height: 2rem;
58
+ border: none;
59
+ border-radius: var(--vc-button-border-radius);
60
+ background-color: var(--vc-button-bg);
61
+ color: var(--vc-button-text);
62
+ cursor: pointer;
63
+ transition:
64
+ background-color 0.2s ease,
65
+ color 0.2s ease,
66
+ transform 0.1s ease;
67
+
68
+ &:hover:not(:disabled) {
69
+ background-color: var(--vc-button-bg-hover);
70
+ color: var(--vc-button-text-hover);
71
+ transform: translateY(-1px);
72
+ }
73
+
74
+ &:active:not(:disabled) {
75
+ transform: translateY(0);
76
+ }
77
+
78
+ &--active {
79
+ background-color: var(--vc-button-bg-active);
80
+ color: var(--vc-button-text-active);
81
+ font-weight: 600;
82
+
83
+ &:hover {
84
+ background-color: var(--primary-200);
85
+ color: var(--primary-700);
86
+ }
87
+ }
88
+
89
+ &:disabled {
90
+ color: var(--vc-button-text-disabled);
91
+ background-color: var(--vc-button-bg-disabled);
92
+ cursor: not-allowed;
93
+ opacity: 0.5;
94
+ transform: none;
95
+ }
96
+
97
+ // Focus styles for accessibility
98
+ &:focus-visible {
99
+ outline: 2px solid var(--primary-500);
100
+ outline-offset: 2px;
101
+ }
102
+ }
103
+ </style>