origam 2.5.0 → 2.6.2

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 (532) hide show
  1. package/dist/src/assets/css/tokens/dark.css +3788 -3768
  2. package/dist/src/assets/css/tokens/light.css +1894 -1884
  3. package/dist/src/assets/css/tokens/primitive.css +2 -0
  4. package/dist/src/assets/css/tokens/themes-all.css +44226 -0
  5. package/dist/src/assets/locales/en.json +34 -2
  6. package/dist/src/assets/locales/fr.json +34 -2
  7. package/dist/src/assets/scss/tokens/_dark.scss +1894 -1884
  8. package/dist/src/assets/scss/tokens/_light.scss +1894 -1884
  9. package/dist/src/assets/scss/tokens/_primitive.scss +2 -0
  10. package/dist/src/assets/scss/tokens/_themes-all.scss +44241 -0
  11. package/dist/src/components/Alert/OrigamAlert.vue +16 -21
  12. package/dist/src/components/App/OrigamApp.vue +7 -38
  13. package/dist/src/components/App/OrigamAppBar.vue +35 -17
  14. package/dist/src/components/Audio/OrigamAudio.vue +77 -6
  15. package/dist/src/components/Avatar/OrigamAvatar.vue +11 -9
  16. package/dist/src/components/Avatar/OrigamAvatarGroup.vue +26 -8
  17. package/dist/src/components/Badge/OrigamBadge.vue +13 -3
  18. package/dist/src/components/Blockquote/OrigamBlockquote.vue +137 -13
  19. package/dist/src/components/BottomNav/OrigamBottomNav.vue +34 -4
  20. package/dist/src/components/Bracket/OrigamBracket.vue +386 -64
  21. package/dist/src/components/Bracket/OrigamBracketCompetitor.vue +190 -13
  22. package/dist/src/components/Bracket/OrigamBracketMatch.vue +197 -42
  23. package/dist/src/components/Bracket/OrigamBracketRound.vue +11 -3
  24. package/dist/src/components/Breadcrumb/OrigamBreadcrumb.vue +14 -12
  25. package/dist/src/components/Breadcrumb/OrigamBreadcrumbDivider.vue +4 -1
  26. package/dist/src/components/Breadcrumb/OrigamBreadcrumbItem.vue +3 -5
  27. package/dist/src/components/Btn/OrigamBtn.vue +69 -30
  28. package/dist/src/components/Btn/OrigamBtnGroup.vue +33 -7
  29. package/dist/src/components/Btn/OrigamBtnToggle.vue +4 -7
  30. package/dist/src/components/Calendar/OrigamCalendar.vue +785 -658
  31. package/dist/src/components/Card/OrigamCard.vue +24 -3
  32. package/dist/src/components/Card/OrigamCardHeader.vue +17 -3
  33. package/dist/src/components/Card/OrigamCardText.vue +29 -7
  34. package/dist/src/components/Carousel/OrigamCarousel.vue +29 -9
  35. package/dist/src/components/Carousel/OrigamCarouselItem.vue +2 -2
  36. package/dist/src/components/Chart/OrigamChart.vue +3 -1
  37. package/dist/src/components/Chart/OrigamChartAxis.vue +1 -1
  38. package/dist/src/components/Chart/OrigamChartBoxPlot.vue +7 -3
  39. package/dist/src/components/Chart/OrigamChartBullet.vue +7 -3
  40. package/dist/src/components/Chart/OrigamChartCandlestick.vue +7 -3
  41. package/dist/src/components/Chart/OrigamChartCartesian.vue +14 -10
  42. package/dist/src/components/Chart/OrigamChartGauge.vue +7 -3
  43. package/dist/src/components/Chart/OrigamChartHeatmap.vue +7 -3
  44. package/dist/src/components/Chart/OrigamChartHoneycomb.vue +7 -3
  45. package/dist/src/components/Chart/OrigamChartLegend.vue +1 -2
  46. package/dist/src/components/Chart/OrigamChartMap.vue +7 -3
  47. package/dist/src/components/Chart/OrigamChartPareto.vue +7 -3
  48. package/dist/src/components/Chart/OrigamChartPictorial.vue +9 -6
  49. package/dist/src/components/Chart/OrigamChartPolar.vue +13 -6
  50. package/dist/src/components/Chart/OrigamChartPolarBar.vue +7 -3
  51. package/dist/src/components/Chart/OrigamChartPyramid.vue +7 -3
  52. package/dist/src/components/Chart/OrigamChartRadar.vue +7 -5
  53. package/dist/src/components/Chart/OrigamChartRangeSelector.vue +3 -4
  54. package/dist/src/components/Chart/OrigamChartSankey.vue +7 -3
  55. package/dist/src/components/Chart/OrigamChartSparkline.vue +5 -3
  56. package/dist/src/components/Chart/OrigamChartStreamgraph.vue +9 -5
  57. package/dist/src/components/Chart/OrigamChartSunburst.vue +7 -3
  58. package/dist/src/components/Chart/OrigamChartTooltip.vue +1 -1
  59. package/dist/src/components/Chart/OrigamChartTreemap.vue +7 -3
  60. package/dist/src/components/Chart/OrigamChartVariwide.vue +7 -3
  61. package/dist/src/components/Chart/OrigamChartWordCloud.vue +3 -2
  62. package/dist/src/components/Checkbox/OrigamCheckbox.vue +18 -3
  63. package/dist/src/components/Checkbox/OrigamCheckboxBtn.vue +4 -2
  64. package/dist/src/components/Chip/OrigamChip.vue +25 -12
  65. package/dist/src/components/Chip/OrigamChipGroup.vue +5 -5
  66. package/dist/src/components/ClientOnly/OrigamClientOnly.vue +1 -1
  67. package/dist/src/components/Clipboard/OrigamClipboard.vue +12 -4
  68. package/dist/src/components/Code/OrigamCode.vue +144 -39
  69. package/dist/src/components/ColorPicker/OrigamColorPicker.vue +7 -2
  70. package/dist/src/components/ColorPicker/OrigamColorPickerCanvas.vue +3 -2
  71. package/dist/src/components/ColorPicker/OrigamColorPickerEdit.vue +2 -2
  72. package/dist/src/components/ColorPicker/OrigamColorPickerPreview.vue +1 -1
  73. package/dist/src/components/ColorPicker/OrigamColorPickerSwatches.vue +1 -1
  74. package/dist/src/components/ColorPickerField/OrigamColorPickerField.vue +15 -5
  75. package/dist/src/components/CommandPalette/OrigamCommandPalette.vue +13 -3
  76. package/dist/src/components/ConfirmWrapper/OrigamConfirmWrapper.vue +1 -1
  77. package/dist/src/components/ContextualMenu/OrigamContextualMenu.vue +7 -2
  78. package/dist/src/components/Counter/OrigamCounter.vue +2 -1
  79. package/dist/src/components/DataList/OrigamDataList.vue +21 -5
  80. package/dist/src/components/DataList/OrigamDataText.vue +5 -1
  81. package/dist/src/components/DataList/OrigamDataTitle.vue +5 -1
  82. package/dist/src/components/DataTable/OrigamDataTable.vue +15 -7
  83. package/dist/src/components/DataTable/OrigamDataTableColumnCell.vue +1 -1
  84. package/dist/src/components/DataTable/OrigamDataTableFooter.vue +1 -1
  85. package/dist/src/components/DataTable/OrigamDataTableGroupHeaderRow.vue +1 -1
  86. package/dist/src/components/DataTable/OrigamDataTableHeaderCell.vue +3 -2
  87. package/dist/src/components/DataTable/OrigamDataTableHeaders.vue +2 -1
  88. package/dist/src/components/DataTable/OrigamDataTableHeadersCell.vue +1 -1
  89. package/dist/src/components/DataTable/OrigamDataTableHeadersCellMobile.vue +1 -1
  90. package/dist/src/components/DataTable/OrigamDataTableRow.vue +5 -3
  91. package/dist/src/components/DataTable/OrigamDataTableRows.vue +3 -3
  92. package/dist/src/components/DatePicker/OrigamDatePicker.vue +21 -30
  93. package/dist/src/components/DatePicker/OrigamDatePickerControls.vue +2 -2
  94. package/dist/src/components/DatePicker/OrigamDatePickerHeader.vue +1 -1
  95. package/dist/src/components/DatePicker/OrigamDatePickerMonth.vue +16 -28
  96. package/dist/src/components/DatePicker/OrigamDatePickerMonths.vue +3 -3
  97. package/dist/src/components/DatePicker/OrigamDatePickerYears.vue +3 -3
  98. package/dist/src/components/DatePickerField/OrigamDatePickerField.vue +27 -16
  99. package/dist/src/components/DefaultsProvider/OrigamDefaultsProvider.vue +1 -1
  100. package/dist/src/components/Dialog/OrigamDialog.vue +1 -1
  101. package/dist/src/components/Dialog/OrigamDialogConfirmation.vue +1 -1
  102. package/dist/src/components/Divider/OrigamDivider.vue +2 -2
  103. package/dist/src/components/Drawer/OrigamDrawer.vue +5 -11
  104. package/dist/src/components/EmptyState/OrigamEmptyState.vue +14 -4
  105. package/dist/src/components/ExpansionPanel/OrigamExpansionPanel.vue +12 -2
  106. package/dist/src/components/ExpansionPanel/OrigamExpansionPanelContent.vue +4 -2
  107. package/dist/src/components/ExpansionPanel/OrigamExpansionPanelHeader.vue +14 -5
  108. package/dist/src/components/ExpansionPanel/OrigamExpansionPanels.vue +2 -1
  109. package/dist/src/components/Field/OrigamField.vue +26 -9
  110. package/dist/src/components/FileField/OrigamFileField.vue +8 -3
  111. package/dist/src/components/FileField/OrigamFileFieldDragNDropItem.vue +14 -4
  112. package/dist/src/components/FileField/OrigamFileFieldListItem.vue +14 -4
  113. package/dist/src/components/Form/OrigamForm.vue +10 -2
  114. package/dist/src/components/Grid/OrigamGrid.vue +1 -1
  115. package/dist/src/components/Grid/OrigamGridItem.vue +1 -1
  116. package/dist/src/components/Grids/OrigamCol.vue +1 -1
  117. package/dist/src/components/Grids/OrigamContainer.vue +1 -1
  118. package/dist/src/components/Grids/OrigamRow.vue +6 -2
  119. package/dist/src/components/Grids/OrigamSpacer.vue +1 -1
  120. package/dist/src/components/Icon/OrigamClassIcon.vue +1 -1
  121. package/dist/src/components/Icon/OrigamComponentIcon.vue +1 -1
  122. package/dist/src/components/Icon/OrigamIcon.vue +1 -1
  123. package/dist/src/components/Icon/OrigamLigatureIcon.vue +1 -1
  124. package/dist/src/components/Icon/OrigamSvgIcon.vue +2 -2
  125. package/dist/src/components/Img/OrigamImg.vue +10 -9
  126. package/dist/src/components/InfiniteScroll/OrigamInfiniteScroll.vue +14 -7
  127. package/dist/src/components/InfiniteScroll/OrigamInfiniteScrollIntersect.vue +3 -2
  128. package/dist/src/components/InlineEdit/OrigamInlineEdit.vue +13 -4
  129. package/dist/src/components/Input/OrigamInput.vue +17 -3
  130. package/dist/src/components/ItemGroup/OrigamItem.vue +1 -1
  131. package/dist/src/components/ItemGroup/OrigamItemGroup.vue +1 -1
  132. package/dist/src/components/Kbd/OrigamKbd.vue +18 -8
  133. package/dist/src/components/Label/OrigamLabel.vue +14 -3
  134. package/dist/src/components/Layout/OrigamLayout.vue +1 -1
  135. package/dist/src/components/Lazy/OrigamLazy.vue +1 -1
  136. package/dist/src/components/List/OrigamList.vue +1 -1
  137. package/dist/src/components/List/OrigamListChildren.vue +1 -1
  138. package/dist/src/components/List/OrigamListGroup.vue +4 -1
  139. package/dist/src/components/List/OrigamListGroupActivator.vue +1 -1
  140. package/dist/src/components/List/OrigamListItem.vue +14 -4
  141. package/dist/src/components/List/OrigamListSubheader.vue +13 -3
  142. package/dist/src/components/Loader/OrigamLoader.vue +1 -1
  143. package/dist/src/components/Main/OrigamMain.vue +1 -1
  144. package/dist/src/components/Masonry/OrigamMasonry.vue +2 -2
  145. package/dist/src/components/Media/OrigamMediaController.vue +1 -1
  146. package/dist/src/components/Media/OrigamMediaScrubber.vue +3 -2
  147. package/dist/src/components/Media/OrigamMediaVolumeControl.vue +3 -2
  148. package/dist/src/components/Menu/OrigamMenu.vue +9 -2
  149. package/dist/src/components/Messages/OrigamMessages.vue +13 -4
  150. package/dist/src/components/NumberField/OrigamNumberField.vue +80 -40
  151. package/dist/src/components/NumberFormat/OrigamNumberFormat.vue +1 -1
  152. package/dist/src/components/OtpInputField/OrigamOtpInputField.vue +107 -11
  153. package/dist/src/components/Overlay/OrigamOverlay.vue +1 -1
  154. package/dist/src/components/Overlay/OrigamOverlayScrim.vue +1 -1
  155. package/dist/src/components/Pagination/OrigamPagination.vue +16 -4
  156. package/dist/src/components/Parallax/OrigamParallax.vue +9 -2
  157. package/dist/src/components/Parallax/OrigamParallaxElement.vue +1 -1
  158. package/dist/src/components/Parallax/OrigamParallaxLayer.vue +2 -2
  159. package/dist/src/components/PasswordField/OrigamPasswordField.vue +9 -2
  160. package/dist/src/components/Picker/OrigamPicker.vue +8 -3
  161. package/dist/src/components/Picker/OrigamPickerTitle.vue +10 -3
  162. package/dist/src/components/Progress/OrigamProgress.vue +6 -3
  163. package/dist/src/components/Progress/OrigamProgressCircular.vue +3 -1
  164. package/dist/src/components/Progress/OrigamProgressLinear.vue +5 -6
  165. package/dist/src/components/{QRCode → QrCode}/OrigamQrCode.vue +1 -1
  166. package/dist/src/components/QrCode/index.d.ts +1 -0
  167. package/dist/src/components/Radio/OrigamRadio.vue +20 -11
  168. package/dist/src/components/Radio/OrigamRadioBtn.vue +4 -2
  169. package/dist/src/components/Radio/OrigamRadioGroup.vue +48 -41
  170. package/dist/src/components/RatingField/OrigamRatingField.vue +9 -13
  171. package/dist/src/components/RatingField/OrigamRatingFieldItem.vue +3 -6
  172. package/dist/src/components/Responsive/OrigamResponsive.vue +1 -1
  173. package/dist/src/components/Section/OrigamSection.vue +1 -1
  174. package/dist/src/components/Select/OrigamSelect.vue +19 -10
  175. package/dist/src/components/SelectionControl/OrigamSelectionControl.vue +12 -6
  176. package/dist/src/components/SelectionControl/OrigamSelectionControlGroup.vue +2 -2
  177. package/dist/src/components/Sheet/OrigamSheet.vue +11 -3
  178. package/dist/src/components/Skeleton/OrigamSkeleton.vue +2 -4
  179. package/dist/src/components/Slide/OrigamSlideGroup.vue +1 -1
  180. package/dist/src/components/SliderField/OrigamSliderField.vue +7 -6
  181. package/dist/src/components/SliderField/OrigamSliderFieldTrack.vue +1 -1
  182. package/dist/src/components/Snackbar/OrigamSnackbar.vue +5 -4
  183. package/dist/src/components/Snackbar/OrigamSnackbarGroup.vue +1 -1
  184. package/dist/src/components/Snackbar/OrigamSnackbarItem.vue +27 -26
  185. package/dist/src/components/Stepper/OrigamStepper.vue +6 -2
  186. package/dist/src/components/Stepper/OrigamStepperItem.vue +10 -3
  187. package/dist/src/components/Switch/OrigamSwitch.vue +35 -37
  188. package/dist/src/components/Switch/OrigamSwitchTrack.vue +9 -15
  189. package/dist/src/components/SystemBar/OrigamSystemBar.vue +14 -4
  190. package/dist/src/components/Table/OrigamTable.vue +15 -3
  191. package/dist/src/components/Tabs/OrigamTab.vue +13 -3
  192. package/dist/src/components/Tabs/OrigamTabPanel.vue +1 -1
  193. package/dist/src/components/Tabs/OrigamTabPanels.vue +1 -1
  194. package/dist/src/components/Tabs/OrigamTabs.vue +1 -1
  195. package/dist/src/components/TextField/OrigamTextField.vue +8 -1
  196. package/dist/src/components/TextMask/OrigamTextMask.vue +17 -27
  197. package/dist/src/components/TextareaField/OrigamRichToolbar.vue +15 -11
  198. package/dist/src/components/TextareaField/OrigamTextareaField.vue +11 -1
  199. package/dist/src/components/ThemeProvider/OrigamThemeProvider.vue +4 -1
  200. package/dist/src/components/Timeline/OrigamTimeline.vue +3 -3
  201. package/dist/src/components/Timeline/OrigamTimelineItem.vue +3 -1
  202. package/dist/src/components/Title/OrigamTitle.vue +20 -8
  203. package/dist/src/components/Toolbar/OrigamToolbar.vue +17 -5
  204. package/dist/src/components/Tooltip/OrigamTooltip.vue +12 -3
  205. package/dist/src/components/Transition/OrigamExpandX.vue +1 -1
  206. package/dist/src/components/Transition/OrigamExpandY.vue +1 -1
  207. package/dist/src/components/Transition/OrigamFade.vue +1 -1
  208. package/dist/src/components/Transition/OrigamReverseTranslatePicker.vue +1 -1
  209. package/dist/src/components/Transition/OrigamScaleRotate.vue +1 -1
  210. package/dist/src/components/Transition/OrigamSlideX.vue +1 -1
  211. package/dist/src/components/Transition/OrigamSlideY.vue +1 -1
  212. package/dist/src/components/Transition/OrigamSnack.vue +1 -1
  213. package/dist/src/components/Transition/OrigamTransition.vue +1 -1
  214. package/dist/src/components/Transition/OrigamTranslateBottom.vue +1 -1
  215. package/dist/src/components/Transition/OrigamTranslatePicker.vue +1 -1
  216. package/dist/src/components/Transition/OrigamTranslateScale.vue +1 -1
  217. package/dist/src/components/Transition/OrigamWindowXReverseTranslate.vue +1 -1
  218. package/dist/src/components/Transition/OrigamWindowXTranslate.vue +1 -1
  219. package/dist/src/components/Transition/OrigamWindowYReverseTranslate.vue +1 -1
  220. package/dist/src/components/Transition/OrigamWindowYTranslate.vue +1 -1
  221. package/dist/src/components/Treeview/OrigamTreeview.vue +1 -1
  222. package/dist/src/components/Treeview/OrigamTreeviewNode.vue +7 -5
  223. package/dist/src/components/Video/OrigamVideo.vue +56 -63
  224. package/dist/src/components/VirtualScroll/OrigamVirtualScroll.vue +1 -1
  225. package/dist/src/components/VirtualScroll/OrigamVirtualScrollItem.vue +1 -6
  226. package/dist/src/components/Watermark/OrigamWatermark.vue +1 -1
  227. package/dist/src/components/Window/OrigamWindow.vue +32 -2
  228. package/dist/src/components/Window/OrigamWindowItem.vue +1 -1
  229. package/dist/src/components/index.cjs +1 -1
  230. package/dist/src/components/index.js +1 -1
  231. package/dist/src/composables/Chart/chart-gauge.composable.cjs +1 -1
  232. package/dist/src/composables/Chart/chart-gauge.composable.js +1 -1
  233. package/dist/src/composables/Chart/chart-header-typography.composable.cjs +20 -0
  234. package/dist/src/composables/Chart/chart-header-typography.composable.d.ts +27 -0
  235. package/dist/src/composables/Chart/chart-header-typography.composable.js +11 -0
  236. package/dist/src/composables/Chart/chart-zoom.composable.cjs +0 -1
  237. package/dist/src/composables/Chart/chart-zoom.composable.js +0 -1
  238. package/dist/src/composables/Chart/chart.composable.cjs +0 -11
  239. package/dist/src/composables/Chart/chart.composable.js +0 -11
  240. package/dist/src/composables/Code/code.composable.js +4 -1
  241. package/dist/src/composables/Commons/audio.composable.d.ts +97 -31
  242. package/dist/src/composables/Commons/border.composable.cjs +10 -0
  243. package/dist/src/composables/Commons/border.composable.js +7 -0
  244. package/dist/src/composables/Commons/color.composable.cjs +42 -42
  245. package/dist/src/composables/Commons/color.composable.d.ts +8 -3
  246. package/dist/src/composables/Commons/color.composable.js +2 -2
  247. package/dist/src/composables/Commons/date-picker-calendar.composable.cjs +1 -1
  248. package/dist/src/composables/Commons/date-picker-calendar.composable.d.ts +1 -1
  249. package/dist/src/composables/Commons/date-picker-calendar.composable.js +1 -1
  250. package/dist/src/composables/Commons/defaults.composable.cjs +10 -9
  251. package/dist/src/composables/Commons/defaults.composable.js +10 -9
  252. package/dist/src/composables/Commons/delay.composable.cjs +8 -3
  253. package/dist/src/composables/Commons/delay.composable.js +7 -4
  254. package/dist/src/composables/Commons/density.composable.cjs +1 -1
  255. package/dist/src/composables/Commons/density.composable.js +2 -2
  256. package/dist/src/composables/Commons/dragResizer.composable.cjs +7 -9
  257. package/dist/src/composables/Commons/dragResizer.composable.js +8 -9
  258. package/dist/src/composables/Commons/focus.composable.cjs +1 -1
  259. package/dist/src/composables/Commons/focus.composable.js +1 -1
  260. package/dist/src/composables/Commons/layout.composable.cjs +12 -0
  261. package/dist/src/composables/Commons/layout.composable.js +14 -0
  262. package/dist/src/composables/Commons/message.composable.cjs +1 -1
  263. package/dist/src/composables/Commons/message.composable.d.ts +1 -1
  264. package/dist/src/composables/Commons/message.composable.js +1 -1
  265. package/dist/src/composables/Commons/rounded.composable.cjs +15 -4
  266. package/dist/src/composables/Commons/rounded.composable.d.ts +1 -1
  267. package/dist/src/composables/Commons/rounded.composable.js +17 -6
  268. package/dist/src/composables/Commons/scroll.composable.cjs +2 -2
  269. package/dist/src/composables/Commons/scroll.composable.js +2 -2
  270. package/dist/src/composables/Commons/size.composable.d.ts +1 -1
  271. package/dist/src/composables/Commons/stateEffect.composable.cjs +36 -14
  272. package/dist/src/composables/Commons/stateEffect.composable.js +38 -14
  273. package/dist/src/composables/Commons/status.composable.cjs +11 -1
  274. package/dist/src/composables/Commons/status.composable.d.ts +2 -0
  275. package/dist/src/composables/Commons/status.composable.js +10 -1
  276. package/dist/src/composables/Commons/sticky.composable.d.ts +2 -14
  277. package/dist/src/composables/Commons/style.composable.cjs +5 -3
  278. package/dist/src/composables/Commons/style.composable.js +5 -3
  279. package/dist/src/composables/Commons/typography.composable.cjs +23 -0
  280. package/dist/src/composables/Commons/typography.composable.d.ts +7 -0
  281. package/dist/src/composables/Commons/typography.composable.js +21 -0
  282. package/dist/src/composables/DataTable/headers.composable.d.ts +4 -364
  283. package/dist/src/composables/Icon/icon.composable.cjs +6 -1
  284. package/dist/src/composables/Icon/icon.composable.js +4 -1
  285. package/dist/src/composables/InlineEdit/inline-edit.composable.cjs +16 -2
  286. package/dist/src/composables/InlineEdit/inline-edit.composable.js +16 -2
  287. package/dist/src/composables/Masonry/masonry.composable.d.ts +2 -1
  288. package/dist/src/composables/Parallax/transform.composable.d.ts +1 -1
  289. package/dist/src/composables/Responsive/aspect.composable.cjs +9 -1
  290. package/dist/src/composables/Responsive/aspect.composable.d.ts +1 -1
  291. package/dist/src/composables/Responsive/aspect.composable.js +9 -1
  292. package/dist/src/composables/Theme/installed-themes.composable.cjs +11 -0
  293. package/dist/src/composables/Theme/installed-themes.composable.d.ts +19 -0
  294. package/dist/src/composables/Theme/installed-themes.composable.js +5 -0
  295. package/dist/src/composables/Theme/theme.composable.cjs +86 -15
  296. package/dist/src/composables/Theme/theme.composable.d.ts +55 -10
  297. package/dist/src/composables/Theme/theme.composable.js +88 -17
  298. package/dist/src/composables/index.cjs +36 -0
  299. package/dist/src/composables/index.d.ts +3 -0
  300. package/dist/src/composables/index.js +3 -0
  301. package/dist/src/consts/Bracket/bracket.const.cjs +4 -2
  302. package/dist/src/consts/Bracket/bracket.const.d.ts +12 -0
  303. package/dist/src/consts/Bracket/bracket.const.js +2 -0
  304. package/dist/src/consts/Commons/density.const.cjs +2 -2
  305. package/dist/src/consts/Commons/density.const.d.ts +1 -1
  306. package/dist/src/consts/Commons/density.const.js +1 -1
  307. package/dist/src/consts/Commons/rounded.const.cjs +4 -2
  308. package/dist/src/consts/Commons/rounded.const.d.ts +22 -2
  309. package/dist/src/consts/Commons/rounded.const.js +3 -1
  310. package/dist/src/consts/DataTable/select.const.cjs +1 -1
  311. package/dist/src/consts/DataTable/select.const.js +1 -1
  312. package/dist/src/consts/Icon/mdi.const.cjs +6 -1
  313. package/dist/src/consts/Icon/mdi.const.js +10 -2
  314. package/dist/src/consts/Theme/theme.const.cjs +11 -1
  315. package/dist/src/consts/Theme/theme.const.d.ts +16 -0
  316. package/dist/src/consts/Theme/theme.const.js +10 -0
  317. package/dist/src/directives/Contrast/contrast.directive.cjs +150 -0
  318. package/dist/src/directives/Contrast/contrast.directive.d.ts +5 -0
  319. package/dist/src/directives/Contrast/contrast.directive.js +131 -0
  320. package/dist/src/directives/index.cjs +7 -0
  321. package/dist/src/directives/index.d.ts +1 -0
  322. package/dist/src/directives/index.js +1 -0
  323. package/dist/src/enums/BottomNav/bottom-nav-position.enum.cjs +12 -0
  324. package/dist/src/enums/BottomNav/bottom-nav-position.enum.d.ts +10 -0
  325. package/dist/src/enums/BottomNav/bottom-nav-position.enum.js +6 -0
  326. package/dist/src/enums/Toolbar/toolbar.enum.cjs +1 -0
  327. package/dist/src/enums/Toolbar/toolbar.enum.d.ts +2 -1
  328. package/dist/src/enums/Toolbar/toolbar.enum.js +1 -0
  329. package/dist/src/enums/index.cjs +22 -0
  330. package/dist/src/enums/index.d.ts +2 -0
  331. package/dist/src/enums/index.js +2 -0
  332. package/dist/src/interfaces/Alert/alert.interface.d.ts +2 -3
  333. package/dist/src/interfaces/App/app-bar.interface.d.ts +19 -1
  334. package/dist/src/interfaces/App/app.interface.cjs +1 -0
  335. package/dist/src/interfaces/App/app.interface.d.ts +24 -0
  336. package/dist/src/interfaces/Audio/audio-player.interface.d.ts +23 -2
  337. package/dist/src/interfaces/Avatar/avatar.interface.d.ts +2 -4
  338. package/dist/src/interfaces/Badge/badge.interface.d.ts +2 -2
  339. package/dist/src/interfaces/Blockquote/blockquote.interface.d.ts +23 -21
  340. package/dist/src/interfaces/BottomNav/bottom-nav.interface.d.ts +12 -4
  341. package/dist/src/interfaces/Bracket/bracket-competitor-component.interface.d.ts +17 -6
  342. package/dist/src/interfaces/Bracket/bracket-match-component.interface.d.ts +13 -6
  343. package/dist/src/interfaces/Bracket/bracket-match.interface.d.ts +22 -0
  344. package/dist/src/interfaces/Bracket/bracket-round-component.interface.d.ts +2 -2
  345. package/dist/src/interfaces/Bracket/bracket.interface.d.ts +17 -2
  346. package/dist/src/interfaces/Breadcrumb/breadcrumb-divider.interface.d.ts +2 -2
  347. package/dist/src/interfaces/Breadcrumb/breadcrumb.interface.d.ts +2 -3
  348. package/dist/src/interfaces/Btn/btn-group.interface.d.ts +2 -2
  349. package/dist/src/interfaces/Btn/btn.interface.d.ts +11 -3
  350. package/dist/src/interfaces/Calendar/calendar.interface.d.ts +7 -2
  351. package/dist/src/interfaces/Card/card-header.interface.d.ts +2 -2
  352. package/dist/src/interfaces/Card/card-text.interface.d.ts +2 -2
  353. package/dist/src/interfaces/Carousel/carousel.interface.d.ts +2 -2
  354. package/dist/src/interfaces/Chart/chart-base.interface.d.ts +9 -8
  355. package/dist/src/interfaces/Chart/chart-word-cloud.interface.d.ts +1 -1
  356. package/dist/src/interfaces/Chart/chart.interface.d.ts +12 -1
  357. package/dist/src/interfaces/Checkbox/checkbox-btn.interface.d.ts +3 -3
  358. package/dist/src/interfaces/Checkbox/checkbox.interface.d.ts +10 -9
  359. package/dist/src/interfaces/Chip/chip-group.interface.d.ts +3 -1
  360. package/dist/src/interfaces/Chip/chip.interface.d.ts +2 -2
  361. package/dist/src/interfaces/Clipboard/clipboard.interface.d.ts +2 -2
  362. package/dist/src/interfaces/Code/code.interface.d.ts +19 -2
  363. package/dist/src/interfaces/ColorPickerField/color-picker-field.interface.d.ts +2 -2
  364. package/dist/src/interfaces/CommandPalette/command-palette.interface.d.ts +2 -1
  365. package/dist/src/interfaces/Commons/calendar.interface.d.ts +3 -3
  366. package/dist/src/interfaces/Commons/commons.interface.d.ts +34 -1
  367. package/dist/src/interfaces/Commons/filters.interface.d.ts +2 -2
  368. package/dist/src/interfaces/Commons/hover.interface.d.ts +18 -3
  369. package/dist/src/interfaces/Commons/scroll.interface.d.ts +8 -1
  370. package/dist/src/interfaces/Commons/typography.interface.cjs +1 -0
  371. package/dist/src/interfaces/Commons/typography.interface.d.ts +52 -0
  372. package/dist/src/interfaces/Commons/typography.interface.js +0 -0
  373. package/dist/src/interfaces/Commons/validation.interface.d.ts +3 -1
  374. package/dist/src/interfaces/Counter/counter.interface.d.ts +2 -2
  375. package/dist/src/interfaces/DataList/data-list.interface.d.ts +2 -2
  376. package/dist/src/interfaces/DataList/data-text.interface.d.ts +5 -0
  377. package/dist/src/interfaces/DataList/data-title.interface.d.ts +5 -0
  378. package/dist/src/interfaces/DataTable/headers.interface.d.ts +5 -5
  379. package/dist/src/interfaces/DataTable/row.interface.d.ts +2 -2
  380. package/dist/src/interfaces/DatePicker/date-picker-controls.interface.d.ts +16 -8
  381. package/dist/src/interfaces/DatePicker/date-picker-header.interface.d.ts +6 -3
  382. package/dist/src/interfaces/DatePicker/date-picker-months.interface.d.ts +2 -2
  383. package/dist/src/interfaces/DatePicker/date-picker-years.interface.d.ts +1 -1
  384. package/dist/src/interfaces/DatePicker/date-picker.interface.d.ts +1 -1
  385. package/dist/src/interfaces/Dialog/dialog-confirmation.interface.d.ts +2 -2
  386. package/dist/src/interfaces/EmptyState/empty-state.interface.d.ts +9 -2
  387. package/dist/src/interfaces/ExpensionPanel/expansion-panel-header.interface.d.ts +2 -2
  388. package/dist/src/interfaces/Field/field.interface.d.ts +7 -2
  389. package/dist/src/interfaces/FileField/file-field-dragndrop-item.interface.d.ts +2 -2
  390. package/dist/src/interfaces/FileField/file-field-list-item.interface.d.ts +2 -2
  391. package/dist/src/interfaces/FileField/file-field.interface.d.ts +1 -1
  392. package/dist/src/interfaces/Form/form.interface.d.ts +2 -2
  393. package/dist/src/interfaces/Grids/row.interface.d.ts +2 -2
  394. package/dist/src/interfaces/InfiniteScroll/infinite-scroll.interface.d.ts +2 -2
  395. package/dist/src/interfaces/InlineEdit/inline-edit.interface.d.ts +31 -2
  396. package/dist/src/interfaces/Input/input.interface.d.ts +4 -3
  397. package/dist/src/interfaces/Kbd/kbd.interface.d.ts +2 -2
  398. package/dist/src/interfaces/Label/label.interface.d.ts +2 -2
  399. package/dist/src/interfaces/List/list-group.interface.d.ts +4 -1
  400. package/dist/src/interfaces/List/list-item.interface.d.ts +2 -2
  401. package/dist/src/interfaces/List/list-subheader.interface.d.ts +2 -2
  402. package/dist/src/interfaces/Media/media-scrubber.interface.d.ts +10 -2
  403. package/dist/src/interfaces/Messages/messages.interface.d.ts +2 -2
  404. package/dist/src/interfaces/NumberField/number-field.interface.d.ts +1 -1
  405. package/dist/src/interfaces/Nuxt/nuxt-module.interface.d.ts +55 -15
  406. package/dist/src/interfaces/OtpInputField/otp-input-field.interface.d.ts +4 -2
  407. package/dist/src/interfaces/Pagination/pagination.interface.d.ts +18 -3
  408. package/dist/src/interfaces/Parallax/parallax.interface.d.ts +2 -2
  409. package/dist/src/interfaces/PasswordField/password-field.interface.d.ts +1 -1
  410. package/dist/src/interfaces/Picker/picker-title.interface.d.ts +2 -2
  411. package/dist/src/interfaces/Progress/progress.interface.d.ts +8 -2
  412. package/dist/src/interfaces/RatingField/rating-field-item.interface.d.ts +2 -1
  413. package/dist/src/interfaces/SelectionControl/selection-control-group.interface.d.ts +2 -1
  414. package/dist/src/interfaces/SelectionControl/selection-control.interface.d.ts +23 -5
  415. package/dist/src/interfaces/Sheet/sheet.interface.d.ts +2 -2
  416. package/dist/src/interfaces/Snackbar/snackbar-item.interface.d.ts +2 -2
  417. package/dist/src/interfaces/SystemBar/system-bar.interface.d.ts +2 -2
  418. package/dist/src/interfaces/Table/table.interface.d.ts +2 -2
  419. package/dist/src/interfaces/Tabs/tab.interface.d.ts +7 -2
  420. package/dist/src/interfaces/TextField/text-field.interface.d.ts +1 -1
  421. package/dist/src/interfaces/TextMask/text-mask.interface.d.ts +7 -33
  422. package/dist/src/interfaces/TextareaField/textarea-field.interface.d.ts +3 -3
  423. package/dist/src/interfaces/Theme/origam-theme.interface.cjs +1 -0
  424. package/dist/src/interfaces/Theme/origam-theme.interface.d.ts +114 -0
  425. package/dist/src/interfaces/Theme/origam-theme.interface.js +0 -0
  426. package/dist/src/interfaces/Timeline/timeline.interface.d.ts +1 -1
  427. package/dist/src/interfaces/Title/title.interface.d.ts +2 -2
  428. package/dist/src/interfaces/Toolbar/toolbar.interface.d.ts +2 -2
  429. package/dist/src/interfaces/Tooltip/tooltip.interface.d.ts +2 -2
  430. package/dist/src/interfaces/Video/video.interface.d.ts +2 -2
  431. package/dist/src/interfaces/Window/window.interface.d.ts +2 -2
  432. package/dist/src/interfaces/index.cjs +33 -0
  433. package/dist/src/interfaces/index.d.ts +3 -0
  434. package/dist/src/interfaces/index.js +3 -0
  435. package/dist/src/nuxt/module.cjs +78 -8
  436. package/dist/src/nuxt/module.js +81 -9
  437. package/dist/src/nuxt/plugin.client.cjs +28 -10
  438. package/dist/src/nuxt/plugin.client.js +28 -10
  439. package/dist/src/nuxt/plugin.server.cjs +52 -12
  440. package/dist/src/nuxt/plugin.server.js +55 -13
  441. package/dist/src/origam.cjs +39 -2
  442. package/dist/src/origam.d.ts +19 -1
  443. package/dist/src/origam.js +46 -5
  444. package/dist/src/services/Commons/date-adapter.service.d.ts +1 -1
  445. package/dist/src/themes/index.cjs +24 -0
  446. package/dist/src/themes/index.d.ts +1 -0
  447. package/dist/src/themes/index.js +1 -0
  448. package/dist/src/themes/origam.theme.cjs +906 -0
  449. package/dist/src/themes/origam.theme.d.ts +4 -0
  450. package/dist/src/themes/origam.theme.js +379 -0
  451. package/dist/src/types/BottomNav/bottom-nav.type.d.ts +2 -0
  452. package/dist/src/types/Commons/font-family.type.cjs +1 -0
  453. package/dist/src/types/Commons/font-family.type.d.ts +5 -0
  454. package/dist/src/types/Commons/font-family.type.js +0 -0
  455. package/dist/src/types/Commons/font-size.type.cjs +1 -0
  456. package/dist/src/types/Commons/font-size.type.d.ts +6 -0
  457. package/dist/src/types/Commons/font-size.type.js +0 -0
  458. package/dist/src/types/Commons/font-weight.type.cjs +1 -0
  459. package/dist/src/types/Commons/font-weight.type.d.ts +5 -0
  460. package/dist/src/types/Commons/font-weight.type.js +0 -0
  461. package/dist/src/types/Commons/letter-spacing.type.cjs +1 -0
  462. package/dist/src/types/Commons/letter-spacing.type.d.ts +5 -0
  463. package/dist/src/types/Commons/letter-spacing.type.js +0 -0
  464. package/dist/src/types/Commons/line-height.type.cjs +1 -0
  465. package/dist/src/types/Commons/line-height.type.d.ts +5 -0
  466. package/dist/src/types/Commons/line-height.type.js +0 -0
  467. package/dist/src/types/Commons/mode.type.d.ts +1 -1
  468. package/dist/src/types/Theme/installed-theme.type.cjs +1 -0
  469. package/dist/src/types/Theme/installed-theme.type.d.ts +31 -0
  470. package/dist/src/types/Theme/installed-theme.type.js +0 -0
  471. package/dist/src/types/Theme/semantic-tree.type.cjs +1 -0
  472. package/dist/src/types/Theme/semantic-tree.type.d.ts +48 -0
  473. package/dist/src/types/Theme/semantic-tree.type.js +0 -0
  474. package/dist/src/types/Theme/theme.type.d.ts +27 -6
  475. package/dist/src/types/Theme/token-tree.type.cjs +1 -0
  476. package/dist/src/types/Theme/token-tree.type.d.ts +10 -0
  477. package/dist/src/types/Theme/token-tree.type.js +0 -0
  478. package/dist/src/types/index.cjs +88 -0
  479. package/dist/src/types/index.d.ts +8 -0
  480. package/dist/src/types/index.js +8 -0
  481. package/dist/src/types/tokens.type.d.ts +1 -1
  482. package/dist/src/utils/Bracket/bracket-surface.util.cjs +106 -0
  483. package/dist/src/utils/Bracket/bracket-surface.util.d.ts +47 -0
  484. package/dist/src/utils/Bracket/bracket-surface.util.js +88 -0
  485. package/dist/src/utils/Commons/border.util.d.ts +1 -1
  486. package/dist/src/utils/Commons/color.util.cjs +4 -2
  487. package/dist/src/utils/Commons/color.util.js +4 -2
  488. package/dist/src/utils/Commons/commons.util.cjs +3 -2
  489. package/dist/src/utils/Commons/commons.util.d.ts +1 -1
  490. package/dist/src/utils/Commons/commons.util.js +3 -2
  491. package/dist/src/utils/Commons/date.util.d.ts +1 -1
  492. package/dist/src/utils/Commons/dom.util.d.ts +1 -1
  493. package/dist/src/utils/Commons/elevation.util.cjs +1 -1
  494. package/dist/src/utils/Commons/elevation.util.js +1 -1
  495. package/dist/src/utils/Commons/forwardRefs.util.cjs +1 -1
  496. package/dist/src/utils/Commons/forwardRefs.util.js +1 -1
  497. package/dist/src/utils/Commons/gradient.util.cjs +3 -3
  498. package/dist/src/utils/Commons/gradient.util.js +1 -1
  499. package/dist/src/utils/Commons/hover.util.cjs +5 -1
  500. package/dist/src/utils/Commons/hover.util.js +5 -1
  501. package/dist/src/utils/Commons/margin.util.d.ts +1 -1
  502. package/dist/src/utils/Commons/padding.util.d.ts +1 -1
  503. package/dist/src/utils/Commons/ripple.util.cjs +1 -2
  504. package/dist/src/utils/Commons/ripple.util.js +2 -3
  505. package/dist/src/utils/Commons/rounded.util.cjs +5 -0
  506. package/dist/src/utils/Commons/rounded.util.d.ts +10 -1
  507. package/dist/src/utils/Commons/rounded.util.js +4 -0
  508. package/dist/src/utils/DataTable/headers.util.cjs +1 -1
  509. package/dist/src/utils/DataTable/headers.util.js +1 -1
  510. package/dist/src/utils/DataTable/sort.util.cjs +2 -2
  511. package/dist/src/utils/DataTable/sort.util.js +2 -2
  512. package/dist/src/utils/List/list-item.util.d.ts +7 -0
  513. package/dist/src/utils/Theme/apply-theme.util.cjs +148 -0
  514. package/dist/src/utils/Theme/apply-theme.util.d.ts +65 -0
  515. package/dist/src/utils/Theme/apply-theme.util.js +125 -0
  516. package/dist/src/utils/Theme/token-name.util.cjs +47 -0
  517. package/dist/src/utils/Theme/token-name.util.d.ts +54 -0
  518. package/dist/src/utils/Theme/token-name.util.js +55 -0
  519. package/dist/src/utils/Transition/transition.util.d.ts +1 -1
  520. package/dist/src/utils/index.cjs +22 -0
  521. package/dist/src/utils/index.d.ts +2 -0
  522. package/dist/src/utils/index.js +2 -0
  523. package/package.json +22 -63
  524. package/CHANGELOG.md +0 -807
  525. package/README.md +0 -275
  526. package/dist/src/App.vue +0 -25
  527. package/dist/src/main.cjs +0 -7
  528. package/dist/src/main.d.ts +0 -1
  529. package/dist/src/main.js +0 -4
  530. /package/dist/src/components/{QRCode → QrCode}/index.cjs +0 -0
  531. /package/dist/src/components/{QRCode → QrCode}/index.js +0 -0
  532. /package/dist/src/{components/QRCode/index.d.ts → interfaces/App/app.interface.js} +0 -0
@@ -1,6 +1,5 @@
1
1
  import { watch } from "vue";
2
2
  import { useTheme } from "../composables/index.js";
3
- import { ORIGAM_THEME_ATTR } from "../consts/index.js";
4
3
  import { createOrigam } from "../origam.js";
5
4
  import { defineNuxtPlugin, useCookie, useRuntimeConfig } from "#app";
6
5
  export default defineNuxtPlugin({
@@ -8,27 +7,46 @@ export default defineNuxtPlugin({
8
7
  setup(nuxtApp) {
9
8
  const runtimeConfig = useRuntimeConfig().public;
10
9
  const config = runtimeConfig.origam;
11
- const cookie = useCookie(config.cookieName, {
10
+ const themeCookie = useCookie(config.cookieName, {
12
11
  maxAge: config.cookieMaxAge,
13
12
  sameSite: "lax",
14
13
  path: "/"
15
14
  });
16
- const fromDom = typeof document !== "undefined" && document.documentElement.dataset.theme || null;
17
- const initialTheme = fromDom ?? cookie.value ?? config.defaultTheme;
18
- const origam = createOrigam();
15
+ const modeCookie = useCookie(config.modeCookieName, {
16
+ maxAge: config.cookieMaxAge,
17
+ sameSite: "lax",
18
+ path: "/"
19
+ });
20
+ const themeFromDom = typeof document !== "undefined" && document.documentElement.dataset.theme || null;
21
+ const initialTheme = themeFromDom ?? themeCookie.value ?? config.defaultTheme;
22
+ const initialMode = modeCookie.value ?? config.defaultMode;
23
+ const themes = config.themes ?? [];
24
+ const origam = createOrigam({ themes, ssr: true });
19
25
  nuxtApp.vueApp.use(origam);
20
26
  const themeApi = useTheme();
21
27
  themeApi.setTheme(initialTheme);
28
+ themeApi.setMode(initialMode);
29
+ watch(
30
+ [themeApi.theme, themeApi.resolvedMode],
31
+ ([brand, mode]) => {
32
+ origam._defaultsRef.value = origam._activeDefaultsFor(
33
+ brand === "auto" ? "" : brand,
34
+ mode
35
+ );
36
+ },
37
+ { immediate: true }
38
+ );
22
39
  watch(themeApi.theme, (next) => {
23
- cookie.value = next;
24
- if (typeof document !== "undefined") {
25
- document.documentElement.setAttribute(ORIGAM_THEME_ATTR, next);
26
- }
40
+ themeCookie.value = next;
41
+ }, { flush: "post" });
42
+ watch(themeApi.mode, (next) => {
43
+ modeCookie.value = next;
27
44
  }, { flush: "post" });
28
45
  return {
29
46
  provide: {
30
47
  origam: {
31
- theme: initialTheme
48
+ theme: initialTheme,
49
+ mode: initialMode
32
50
  }
33
51
  }
34
52
  };
@@ -5,20 +5,33 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
 
7
7
  var _origam = require("../origam.cjs");
8
+ var _applyTheme = require("../utils/Theme/apply-theme.util.cjs");
8
9
  var _consts = require("../consts/index.cjs");
9
10
  var _app = require("#app");
10
- function resolveServerTheme(cookieValue, config, headers) {
11
+ function resolveServerTheme(cookieValue, config) {
11
12
  if (cookieValue && cookieValue !== _consts.ORIGAM_THEME_AUTO) {
12
13
  return cookieValue;
13
14
  }
14
- if (config.defaultTheme && config.defaultTheme !== _consts.ORIGAM_THEME_AUTO && cookieValue !== _consts.ORIGAM_THEME_AUTO) {
15
+ if (config.defaultTheme && config.defaultTheme !== _consts.ORIGAM_THEME_AUTO) {
15
16
  return config.defaultTheme;
16
17
  }
18
+ return _consts.ORIGAM_THEME_AUTO;
19
+ }
20
+ function resolveServerMode(cookieValue, config, headers) {
21
+ if (cookieValue === _consts.ORIGAM_MODE_LIGHT || cookieValue === _consts.ORIGAM_MODE_DARK) {
22
+ return cookieValue;
23
+ }
24
+ if (config.defaultMode === _consts.ORIGAM_MODE_LIGHT || config.defaultMode === _consts.ORIGAM_MODE_DARK) {
25
+ return config.defaultMode;
26
+ }
17
27
  const hint = headers["sec-ch-prefers-color-scheme"];
18
- if (hint === _consts.ORIGAM_THEME_DARK) {
19
- return config.themes.includes(_consts.ORIGAM_THEME_DARK) ? _consts.ORIGAM_THEME_DARK : config.themes[0] ?? _consts.ORIGAM_THEME_LIGHT;
28
+ if (hint === _consts.ORIGAM_MODE_DARK && config.modes.includes(_consts.ORIGAM_MODE_DARK)) {
29
+ return _consts.ORIGAM_MODE_DARK;
20
30
  }
21
- return config.themes.includes(_consts.ORIGAM_THEME_LIGHT) ? _consts.ORIGAM_THEME_LIGHT : config.themes[0] ?? _consts.ORIGAM_THEME_LIGHT;
31
+ if (hint === _consts.ORIGAM_MODE_LIGHT && config.modes.includes(_consts.ORIGAM_MODE_LIGHT)) {
32
+ return _consts.ORIGAM_MODE_LIGHT;
33
+ }
34
+ return _consts.ORIGAM_MODE_LIGHT;
22
35
  }
23
36
  module.exports = (0, _app.defineNuxtPlugin)({
24
37
  name: "origam:server",
@@ -26,24 +39,51 @@ module.exports = (0, _app.defineNuxtPlugin)({
26
39
  setup(nuxtApp) {
27
40
  const runtimeConfig = (0, _app.useRuntimeConfig)().public;
28
41
  const config = runtimeConfig.origam;
29
- const cookie = (0, _app.useCookie)(config.cookieName, {
42
+ const themeCookie = (0, _app.useCookie)(config.cookieName, {
43
+ maxAge: config.cookieMaxAge,
44
+ sameSite: "lax",
45
+ path: "/"
46
+ });
47
+ const modeCookie = (0, _app.useCookie)(config.modeCookieName, {
30
48
  maxAge: config.cookieMaxAge,
31
49
  sameSite: "lax",
32
50
  path: "/"
33
51
  });
34
52
  const headers = (0, _app.useRequestHeaders)(["sec-ch-prefers-color-scheme"]);
35
- const resolved = resolveServerTheme(cookie.value, config, headers);
53
+ const resolvedTheme = resolveServerTheme(themeCookie.value, config);
54
+ const resolvedMode = resolveServerMode(modeCookie.value, config, headers);
55
+ const htmlAttrs = {
56
+ [_consts.ORIGAM_MODE_ATTR]: resolvedMode
57
+ };
58
+ if (resolvedTheme !== _consts.ORIGAM_THEME_AUTO) {
59
+ htmlAttrs[_consts.ORIGAM_THEME_ATTR] = resolvedTheme;
60
+ }
61
+ const themes = config.themes ?? [];
62
+ const activeThemes = themes.filter(theme => {
63
+ const brandMatches = resolvedTheme === _consts.ORIGAM_THEME_AUTO ? theme.name === void 0 || theme.name === "" : theme.name === resolvedTheme;
64
+ const modeMatches = theme.mode === void 0 || theme.mode === resolvedMode;
65
+ return brandMatches && modeMatches;
66
+ });
67
+ const ssrThemeCss = activeThemes.map(_applyTheme.themeToCss).join("\n");
36
68
  (0, _app.useHead)({
37
- htmlAttrs: {
38
- "data-theme": resolved
39
- }
69
+ htmlAttrs,
70
+ style: ssrThemeCss ? [{
71
+ id: "origam-theme-ssr",
72
+ key: "origam-theme-ssr",
73
+ innerHTML: ssrThemeCss
74
+ }] : []
75
+ });
76
+ const origam = (0, _origam.createOrigam)({
77
+ themes,
78
+ ssr: true
40
79
  });
41
- const origam = (0, _origam.createOrigam)();
80
+ origam._defaultsRef.value = origam._activeDefaultsFor(resolvedTheme === _consts.ORIGAM_THEME_AUTO ? "" : resolvedTheme, resolvedMode);
42
81
  nuxtApp.vueApp.use(origam);
43
82
  return {
44
83
  provide: {
45
84
  origam: {
46
- theme: resolved
85
+ theme: resolvedTheme,
86
+ mode: resolvedMode
47
87
  }
48
88
  }
49
89
  };
@@ -1,18 +1,37 @@
1
1
  import { createOrigam } from "../origam.js";
2
- import { ORIGAM_THEME_AUTO, ORIGAM_THEME_DARK, ORIGAM_THEME_LIGHT } from "../consts/index.js";
2
+ import { themeToCss } from "../utils/Theme/apply-theme.util.js";
3
+ import {
4
+ ORIGAM_MODE_ATTR,
5
+ ORIGAM_MODE_DARK,
6
+ ORIGAM_MODE_LIGHT,
7
+ ORIGAM_THEME_ATTR,
8
+ ORIGAM_THEME_AUTO
9
+ } from "../consts/index.js";
3
10
  import { defineNuxtPlugin, useCookie, useHead, useRequestHeaders, useRuntimeConfig } from "#app";
4
- function resolveServerTheme(cookieValue, config, headers) {
11
+ function resolveServerTheme(cookieValue, config) {
5
12
  if (cookieValue && cookieValue !== ORIGAM_THEME_AUTO) {
6
13
  return cookieValue;
7
14
  }
8
- if (config.defaultTheme && config.defaultTheme !== ORIGAM_THEME_AUTO && cookieValue !== ORIGAM_THEME_AUTO) {
15
+ if (config.defaultTheme && config.defaultTheme !== ORIGAM_THEME_AUTO) {
9
16
  return config.defaultTheme;
10
17
  }
18
+ return ORIGAM_THEME_AUTO;
19
+ }
20
+ function resolveServerMode(cookieValue, config, headers) {
21
+ if (cookieValue === ORIGAM_MODE_LIGHT || cookieValue === ORIGAM_MODE_DARK) {
22
+ return cookieValue;
23
+ }
24
+ if (config.defaultMode === ORIGAM_MODE_LIGHT || config.defaultMode === ORIGAM_MODE_DARK) {
25
+ return config.defaultMode;
26
+ }
11
27
  const hint = headers["sec-ch-prefers-color-scheme"];
12
- if (hint === ORIGAM_THEME_DARK) {
13
- return config.themes.includes(ORIGAM_THEME_DARK) ? ORIGAM_THEME_DARK : config.themes[0] ?? ORIGAM_THEME_LIGHT;
28
+ if (hint === ORIGAM_MODE_DARK && config.modes.includes(ORIGAM_MODE_DARK)) {
29
+ return ORIGAM_MODE_DARK;
30
+ }
31
+ if (hint === ORIGAM_MODE_LIGHT && config.modes.includes(ORIGAM_MODE_LIGHT)) {
32
+ return ORIGAM_MODE_LIGHT;
14
33
  }
15
- return config.themes.includes(ORIGAM_THEME_LIGHT) ? ORIGAM_THEME_LIGHT : config.themes[0] ?? ORIGAM_THEME_LIGHT;
34
+ return ORIGAM_MODE_LIGHT;
16
35
  }
17
36
  export default defineNuxtPlugin({
18
37
  name: "origam:server",
@@ -20,24 +39,47 @@ export default defineNuxtPlugin({
20
39
  setup(nuxtApp) {
21
40
  const runtimeConfig = useRuntimeConfig().public;
22
41
  const config = runtimeConfig.origam;
23
- const cookie = useCookie(config.cookieName, {
42
+ const themeCookie = useCookie(config.cookieName, {
43
+ maxAge: config.cookieMaxAge,
44
+ sameSite: "lax",
45
+ path: "/"
46
+ });
47
+ const modeCookie = useCookie(config.modeCookieName, {
24
48
  maxAge: config.cookieMaxAge,
25
49
  sameSite: "lax",
26
50
  path: "/"
27
51
  });
28
52
  const headers = useRequestHeaders(["sec-ch-prefers-color-scheme"]);
29
- const resolved = resolveServerTheme(cookie.value, config, headers);
53
+ const resolvedTheme = resolveServerTheme(themeCookie.value, config);
54
+ const resolvedMode = resolveServerMode(modeCookie.value, config, headers);
55
+ const htmlAttrs = {
56
+ [ORIGAM_MODE_ATTR]: resolvedMode
57
+ };
58
+ if (resolvedTheme !== ORIGAM_THEME_AUTO) {
59
+ htmlAttrs[ORIGAM_THEME_ATTR] = resolvedTheme;
60
+ }
61
+ const themes = config.themes ?? [];
62
+ const activeThemes = themes.filter((theme) => {
63
+ const brandMatches = resolvedTheme === ORIGAM_THEME_AUTO ? theme.name === void 0 || theme.name === "" : theme.name === resolvedTheme;
64
+ const modeMatches = theme.mode === void 0 || theme.mode === resolvedMode;
65
+ return brandMatches && modeMatches;
66
+ });
67
+ const ssrThemeCss = activeThemes.map(themeToCss).join("\n");
30
68
  useHead({
31
- htmlAttrs: {
32
- "data-theme": resolved
33
- }
69
+ htmlAttrs,
70
+ style: ssrThemeCss ? [{ id: "origam-theme-ssr", key: "origam-theme-ssr", innerHTML: ssrThemeCss }] : []
34
71
  });
35
- const origam = createOrigam();
72
+ const origam = createOrigam({ themes, ssr: true });
73
+ origam._defaultsRef.value = origam._activeDefaultsFor(
74
+ resolvedTheme === ORIGAM_THEME_AUTO ? "" : resolvedTheme,
75
+ resolvedMode
76
+ );
36
77
  nuxtApp.vueApp.use(origam);
37
78
  return {
38
79
  provide: {
39
80
  origam: {
40
- theme: resolved
81
+ theme: resolvedTheme,
82
+ mode: resolvedMode
41
83
  }
42
84
  }
43
85
  };
@@ -3,12 +3,15 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.activeDefaultsFor = activeDefaultsFor;
6
7
  exports.createOrigam = createOrigam;
7
8
  var origamComponents = _interopRequireWildcard(require("./components/index.cjs"));
8
9
  var _composables = require("./composables/index.cjs");
9
10
  var _consts = require("./consts/index.cjs");
10
11
  var origamDirectives = _interopRequireWildcard(require("./directives/index.cjs"));
12
+ var _contrast = require("./directives/Contrast/contrast.directive.cjs");
11
13
  var _utils = require("./utils/index.cjs");
14
+ var _origam = require("./themes/origam.theme.cjs");
12
15
  require("@mdi/font/css/materialdesignicons.css");
13
16
  var _vue = require("vue");
14
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
@@ -24,6 +27,11 @@ function createOrigam(origam = {}) {
24
27
  components = origamComponents,
25
28
  directives = origamDirectives
26
29
  } = options;
30
+ const suppliedThemes = [...(options.theme ? [options.theme] : []), ...(options.themes ?? [])];
31
+ const allThemes = [..._origam.origamTheme, ...suppliedThemes];
32
+ const installedThemes = (0, _utils.installedThemesFromList)(allThemes);
33
+ const defaultsRef = (0, _composables.createDefaults)({});
34
+ defaultsRef.value = activeDefaultsFor(allThemes, allThemes[0]?.name ?? "", void 0);
27
35
  const scope = (0, _vue.effectScope)();
28
36
  return scope.run(() => {
29
37
  const icons = (0, _composables.createIcons)(options.icons);
@@ -31,7 +39,11 @@ function createOrigam(origam = {}) {
31
39
  const locale = (0, _composables.createLocale)(options.locale);
32
40
  const date = (0, _composables.createDate)(options.date, locale);
33
41
  const goTo = (0, _composables.createGoTo)(options.goTo, locale);
42
+ (0, _contrast.setContrastConfig)(options.contrast);
34
43
  const install = app => {
44
+ if (allThemes.length) {
45
+ (0, _utils.applyThemes)(allThemes);
46
+ }
35
47
  for (const key in directives) {
36
48
  app.directive(key, directives[key]);
37
49
  }
@@ -53,6 +65,8 @@ function createOrigam(origam = {}) {
53
65
  app.provide(_consts.ORIGAM_DATE_OPTIONS_KEY, date.options);
54
66
  app.provide(_consts.ORIGAM_DATE_ADAPTER_KEY, date.instance);
55
67
  app.provide(_consts.ORIGAM_GO_TO_KEY, goTo);
68
+ app.provide(_consts.ORIGAM_THEMES_KEY, installedThemes);
69
+ app.provide(_consts.ORIGAM_DEFAULTS_KEY, defaultsRef);
56
70
  if (_consts.IN_BROWSER && options.ssr) {
57
71
  if (app.$nuxt) {
58
72
  app.$nuxt.hook("app:suspense:resolve", () => {
@@ -96,13 +110,36 @@ function createOrigam(origam = {}) {
96
110
  icons,
97
111
  locale,
98
112
  date,
99
- goTo
113
+ goTo,
114
+ themes: installedThemes,
115
+ // Reactive per-component DEFAULT PROPS map (provided under
116
+ // ORIGAM_DEFAULTS_KEY). The Nuxt plugins reassign `.value` (a NEW
117
+ // object) whenever the active brand / mode changes so `useDefaults`
118
+ // computeds re-run. NEVER mutate it in place.
119
+ _defaultsRef: defaultsRef,
120
+ // Re-export the collapse helper so the plugins can recompute the
121
+ // active defaults from the same install list on a theme switch.
122
+ _activeDefaultsFor: (brand, mode) => activeDefaultsFor(allThemes, brand, mode)
100
123
  };
101
124
  });
102
125
  }
126
+ function activeDefaultsFor(themes, brand, mode) {
127
+ let merged = {};
128
+ for (const theme of themes) {
129
+ if (!theme.components) continue;
130
+ const brandMatches = !theme.name || theme.name === brand;
131
+ const themeModeAgnostic = theme.mode === void 0 || theme.mode === "auto";
132
+ const modeMatches = themeModeAgnostic || mode === void 0 || theme.mode === mode;
133
+ if (brandMatches && modeMatches) {
134
+ merged = (0, _utils.mergeDeep)(merged, theme.components);
135
+ }
136
+ }
137
+ return merged;
138
+ }
103
139
  function inject(key) {
104
140
  const vm = this.$;
105
- const provides = vm.parent?.provides ?? vm.vnode.appContext?.provides;
141
+ const parentProvides = vm.parent?.provides;
142
+ const provides = parentProvides ?? vm.vnode.appContext?.provides;
106
143
  if (provides && key in provides) {
107
144
  return provides[key];
108
145
  }
@@ -1,4 +1,5 @@
1
- import type { IOrigamOptions } from './interfaces';
1
+ import type { IDefault, IOrigamOptions, IOrigamTheme } from './interfaces';
2
+ import type { TModeResolved } from './types';
2
3
  import '@mdi/font/css/materialdesignicons.css';
3
4
  import { App } from 'vue';
4
5
  export declare function createOrigam(origam?: IOrigamOptions): {
@@ -66,4 +67,21 @@ export declare function createOrigam(origam?: IOrigamOptions): {
66
67
  };
67
68
  };
68
69
  goTo: import("./interfaces").IGoToInstance;
70
+ themes: import("./types").TInstalledThemes;
71
+ _defaultsRef: import("vue").Ref<IDefault, IDefault>;
72
+ _activeDefaultsFor: (brand: string, mode?: TModeResolved) => IDefault;
69
73
  };
74
+ /**
75
+ * Collapse the per-component DEFAULT PROPS (`theme.components`) of the themes
76
+ * matching the ACTIVE brand×mode into a single `IDefault`. A theme matches when
77
+ * its `name` equals `brand` AND its `mode` is compatible with the active `mode`:
78
+ * - the theme is mode-agnostic (`mode` unset or `'auto'`), OR
79
+ * - the active `mode` is unset (match every mode of the brand — used for the
80
+ * mode-less install-time seed before the plugins resolve a concrete mode), OR
81
+ * - the theme's `mode` equals the active `mode`.
82
+ * Matching themes are deep-merged in install order (later wins) via the shared
83
+ * `mergeDeep` util — no hand-rolled merge.
84
+ *
85
+ * Pure (no DOM / Vue access) so it runs identically on the server and client.
86
+ */
87
+ export declare function activeDefaultsFor(themes: IOrigamTheme[], brand: string, mode?: TModeResolved): IDefault;
@@ -1,16 +1,20 @@
1
1
  import * as origamComponents from "./components/index.js";
2
- import { createDate, createDisplay, createGoTo, createIcons, createLocale } from "./composables/index.js";
2
+ import { createDate, createDefaults, createDisplay, createGoTo, createIcons, createLocale } from "./composables/index.js";
3
3
  import {
4
4
  IN_BROWSER,
5
5
  ORIGAM_DATE_ADAPTER_KEY,
6
6
  ORIGAM_DATE_OPTIONS_KEY,
7
+ ORIGAM_DEFAULTS_KEY,
7
8
  ORIGAM_DISPLAY_KEY,
8
9
  ORIGAM_GO_TO_KEY,
9
10
  ORIGAM_ICONS_KEY,
10
- ORIGAM_LOCALE_KEY
11
+ ORIGAM_LOCALE_KEY,
12
+ ORIGAM_THEMES_KEY
11
13
  } from "./consts/index.js";
12
14
  import * as origamDirectives from "./directives/index.js";
13
- import { getUid, mergeDeep } from "./utils/index.js";
15
+ import { setContrastConfig } from "./directives/Contrast/contrast.directive.js";
16
+ import { applyThemes, getUid, installedThemesFromList, mergeDeep } from "./utils/index.js";
17
+ import { origamTheme } from "./themes/origam.theme.js";
14
18
  import "@mdi/font/css/materialdesignicons.css";
15
19
  import { defineComponent, effectScope, nextTick, reactive } from "vue";
16
20
  export function createOrigam(origam = {}) {
@@ -21,6 +25,14 @@ export function createOrigam(origam = {}) {
21
25
  components = origamComponents,
22
26
  directives = origamDirectives
23
27
  } = options;
28
+ const suppliedThemes = [
29
+ ...options.theme ? [options.theme] : [],
30
+ ...options.themes ?? []
31
+ ];
32
+ const allThemes = [...origamTheme, ...suppliedThemes];
33
+ const installedThemes = installedThemesFromList(allThemes);
34
+ const defaultsRef = createDefaults({});
35
+ defaultsRef.value = activeDefaultsFor(allThemes, allThemes[0]?.name ?? "", void 0);
24
36
  const scope = effectScope();
25
37
  return scope.run(() => {
26
38
  const icons = createIcons(options.icons);
@@ -28,7 +40,11 @@ export function createOrigam(origam = {}) {
28
40
  const locale = createLocale(options.locale);
29
41
  const date = createDate(options.date, locale);
30
42
  const goTo = createGoTo(options.goTo, locale);
43
+ setContrastConfig(options.contrast);
31
44
  const install = (app) => {
45
+ if (allThemes.length) {
46
+ applyThemes(allThemes);
47
+ }
32
48
  for (const key in directives) {
33
49
  app.directive(key, directives[key]);
34
50
  }
@@ -50,6 +66,8 @@ export function createOrigam(origam = {}) {
50
66
  app.provide(ORIGAM_DATE_OPTIONS_KEY, date.options);
51
67
  app.provide(ORIGAM_DATE_ADAPTER_KEY, date.instance);
52
68
  app.provide(ORIGAM_GO_TO_KEY, goTo);
69
+ app.provide(ORIGAM_THEMES_KEY, installedThemes);
70
+ app.provide(ORIGAM_DEFAULTS_KEY, defaultsRef);
53
71
  if (IN_BROWSER && options.ssr) {
54
72
  if (app.$nuxt) {
55
73
  app.$nuxt.hook("app:suspense:resolve", () => {
@@ -91,13 +109,36 @@ export function createOrigam(origam = {}) {
91
109
  icons,
92
110
  locale,
93
111
  date,
94
- goTo
112
+ goTo,
113
+ themes: installedThemes,
114
+ // Reactive per-component DEFAULT PROPS map (provided under
115
+ // ORIGAM_DEFAULTS_KEY). The Nuxt plugins reassign `.value` (a NEW
116
+ // object) whenever the active brand / mode changes so `useDefaults`
117
+ // computeds re-run. NEVER mutate it in place.
118
+ _defaultsRef: defaultsRef,
119
+ // Re-export the collapse helper so the plugins can recompute the
120
+ // active defaults from the same install list on a theme switch.
121
+ _activeDefaultsFor: (brand, mode) => activeDefaultsFor(allThemes, brand, mode)
95
122
  };
96
123
  });
97
124
  }
125
+ export function activeDefaultsFor(themes, brand, mode) {
126
+ let merged = {};
127
+ for (const theme of themes) {
128
+ if (!theme.components) continue;
129
+ const brandMatches = !theme.name || theme.name === brand;
130
+ const themeModeAgnostic = theme.mode === void 0 || theme.mode === "auto";
131
+ const modeMatches = themeModeAgnostic || mode === void 0 || theme.mode === mode;
132
+ if (brandMatches && modeMatches) {
133
+ merged = mergeDeep(merged, theme.components);
134
+ }
135
+ }
136
+ return merged;
137
+ }
98
138
  function inject(key) {
99
139
  const vm = this.$;
100
- const provides = vm.parent?.provides ?? vm.vnode.appContext?.provides;
140
+ const parentProvides = vm.parent?.provides;
141
+ const provides = parentProvides ?? vm.vnode.appContext?.provides;
101
142
  if (provides && key in provides) {
102
143
  return provides[key];
103
144
  }
@@ -16,7 +16,7 @@ export declare class DateAdapter implements IDateAdapter<Date> {
16
16
  addDays(date: Date, amount: number): Date;
17
17
  addWeeks(date: Date, amount: number): Date;
18
18
  addMonths(date: Date, amount: number): Date;
19
- getWeekArray(date: Date, firstDayOfWeek?: number | string): never[];
19
+ getWeekArray(date: Date, firstDayOfWeek?: number | string): Date[][];
20
20
  startOfWeek(date: Date, firstDayOfWeek?: number | string): Date;
21
21
  endOfWeek(date: Date): Date;
22
22
  startOfMonth(date: Date): Date;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "origamDarkTheme", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _origam.origamDarkTheme;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "origamLightTheme", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _origam.origamLightTheme;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "origamTheme", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _origam.origamTheme;
22
+ }
23
+ });
24
+ var _origam = require("./origam.theme.cjs");
@@ -0,0 +1 @@
1
+ export { origamDarkTheme, origamLightTheme, origamTheme } from './origam.theme';
@@ -0,0 +1 @@
1
+ export { origamDarkTheme, origamLightTheme, origamTheme } from "./origam.theme.js";