origam 2.3.0 → 2.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1155) hide show
  1. package/dist/src/assets/css/tokens/dark.css +3878 -3492
  2. package/dist/src/assets/css/tokens/light.css +1939 -1746
  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 +70 -2
  6. package/dist/src/assets/locales/fr.json +67 -2
  7. package/dist/src/assets/locales/index.js +2 -2
  8. package/dist/src/assets/scss/tokens/_dark.scss +1939 -1746
  9. package/dist/src/assets/scss/tokens/_light.scss +1939 -1746
  10. package/dist/src/assets/scss/tokens/_primitive.scss +2 -0
  11. package/dist/src/assets/scss/tokens/_themes-all.scss +44241 -0
  12. package/dist/src/components/Alert/OrigamAlert.vue +19 -23
  13. package/dist/src/components/App/OrigamApp.vue +9 -3
  14. package/dist/src/components/App/OrigamAppBar.vue +37 -19
  15. package/dist/src/components/Audio/OrigamAudio.vue +1536 -0
  16. package/dist/src/components/Audio/index.cjs +13 -0
  17. package/dist/src/components/Audio/index.d.ts +1 -0
  18. package/dist/src/components/Audio/index.js +1 -0
  19. package/dist/src/components/Avatar/OrigamAvatar.vue +14 -12
  20. package/dist/src/components/Avatar/OrigamAvatarGroup.vue +28 -10
  21. package/dist/src/components/Badge/OrigamBadge.vue +15 -5
  22. package/dist/src/components/Blockquote/OrigamBlockquote.vue +415 -0
  23. package/dist/src/components/Blockquote/index.cjs +13 -0
  24. package/dist/src/components/Blockquote/index.d.ts +1 -0
  25. package/dist/src/components/Blockquote/index.js +1 -0
  26. package/dist/src/components/BottomNav/OrigamBottomNav.vue +37 -6
  27. package/dist/src/components/Bracket/OrigamBracket.vue +430 -53
  28. package/dist/src/components/Bracket/OrigamBracketCompetitor.vue +190 -13
  29. package/dist/src/components/Bracket/OrigamBracketMatch.vue +197 -42
  30. package/dist/src/components/Bracket/OrigamBracketRound.vue +13 -3
  31. package/dist/src/components/Breadcrumb/OrigamBreadcrumb.vue +19 -15
  32. package/dist/src/components/Breadcrumb/OrigamBreadcrumbDivider.vue +5 -2
  33. package/dist/src/components/Breadcrumb/OrigamBreadcrumbItem.vue +6 -8
  34. package/dist/src/components/Btn/OrigamBtn.vue +75 -26
  35. package/dist/src/components/Btn/OrigamBtnGroup.vue +36 -9
  36. package/dist/src/components/Btn/OrigamBtnToggle.vue +6 -9
  37. package/dist/src/components/Calendar/OrigamCalendar.vue +1302 -0
  38. package/dist/src/components/Calendar/index.cjs +13 -0
  39. package/dist/src/components/Calendar/index.d.ts +1 -0
  40. package/dist/src/components/Calendar/index.js +1 -0
  41. package/dist/src/components/Card/OrigamCard.vue +26 -5
  42. package/dist/src/components/Card/OrigamCardHeader.vue +18 -4
  43. package/dist/src/components/Card/OrigamCardText.vue +29 -7
  44. package/dist/src/components/Carousel/OrigamCarousel.vue +35 -10
  45. package/dist/src/components/Carousel/OrigamCarouselItem.vue +4 -4
  46. package/dist/src/components/Chart/OrigamChart.vue +884 -0
  47. package/dist/src/components/Chart/OrigamChartAxis.vue +141 -0
  48. package/dist/src/components/Chart/OrigamChartBoxPlot.vue +898 -0
  49. package/dist/src/components/Chart/OrigamChartBullet.vue +840 -0
  50. package/dist/src/components/Chart/OrigamChartCandlestick.vue +749 -0
  51. package/dist/src/components/Chart/OrigamChartCartesian.vue +1454 -0
  52. package/dist/src/components/Chart/OrigamChartGauge.vue +406 -0
  53. package/dist/src/components/Chart/OrigamChartHeatmap.vue +701 -0
  54. package/dist/src/components/Chart/OrigamChartHoneycomb.vue +727 -0
  55. package/dist/src/components/Chart/OrigamChartLegend.vue +58 -0
  56. package/dist/src/components/Chart/OrigamChartMap.vue +742 -0
  57. package/dist/src/components/Chart/OrigamChartPareto.vue +953 -0
  58. package/dist/src/components/Chart/OrigamChartPictorial.vue +1027 -0
  59. package/dist/src/components/Chart/OrigamChartPolar.vue +742 -0
  60. package/dist/src/components/Chart/OrigamChartPolarBar.vue +723 -0
  61. package/dist/src/components/Chart/OrigamChartPyramid.vue +710 -0
  62. package/dist/src/components/Chart/OrigamChartRadar.vue +506 -0
  63. package/dist/src/components/Chart/OrigamChartRangeSelector.vue +121 -0
  64. package/dist/src/components/Chart/OrigamChartSankey.vue +947 -0
  65. package/dist/src/components/Chart/OrigamChartSparkline.vue +476 -0
  66. package/dist/src/components/Chart/OrigamChartStreamgraph.vue +876 -0
  67. package/dist/src/components/Chart/OrigamChartSunburst.vue +869 -0
  68. package/dist/src/components/Chart/OrigamChartTooltip.vue +55 -0
  69. package/dist/src/components/Chart/OrigamChartTreemap.vue +748 -0
  70. package/dist/src/components/Chart/OrigamChartVariwide.vue +819 -0
  71. package/dist/src/components/Chart/OrigamChartWordCloud.vue +672 -0
  72. package/dist/src/components/Chart/index.cjs +188 -0
  73. package/dist/src/components/Chart/index.d.ts +26 -0
  74. package/dist/src/components/Chart/index.js +26 -0
  75. package/dist/src/components/Checkbox/OrigamCheckbox.vue +20 -5
  76. package/dist/src/components/Checkbox/OrigamCheckboxBtn.vue +6 -4
  77. package/dist/src/components/Chip/OrigamChip.vue +31 -16
  78. package/dist/src/components/Chip/OrigamChipGroup.vue +20 -8
  79. package/dist/src/components/ClientOnly/OrigamClientOnly.vue +1 -1
  80. package/dist/src/components/Clipboard/OrigamClipboard.vue +203 -0
  81. package/dist/src/components/Clipboard/index.cjs +13 -0
  82. package/dist/src/components/Clipboard/index.d.ts +1 -0
  83. package/dist/src/components/Clipboard/index.js +1 -0
  84. package/dist/src/components/Code/OrigamCode.vue +212 -97
  85. package/dist/src/components/ColorPicker/OrigamColorPicker.vue +9 -3
  86. package/dist/src/components/ColorPicker/OrigamColorPickerCanvas.vue +77 -2
  87. package/dist/src/components/ColorPicker/OrigamColorPickerEdit.vue +2 -2
  88. package/dist/src/components/ColorPicker/OrigamColorPickerPreview.vue +1 -1
  89. package/dist/src/components/ColorPicker/OrigamColorPickerSwatches.vue +1 -1
  90. package/dist/src/components/ColorPickerField/OrigamColorPickerField.vue +16 -6
  91. package/dist/src/components/CommandPalette/OrigamCommandPalette.vue +35 -19
  92. package/dist/src/components/ConfirmWrapper/OrigamConfirmWrapper.vue +2 -2
  93. package/dist/src/components/ContextualMenu/OrigamContextualMenu.vue +9 -4
  94. package/dist/src/components/Counter/OrigamCounter.vue +3 -2
  95. package/dist/src/components/DataList/OrigamDataList.vue +23 -7
  96. package/dist/src/components/DataList/OrigamDataText.vue +7 -3
  97. package/dist/src/components/DataList/OrigamDataTitle.vue +7 -3
  98. package/dist/src/components/DataTable/OrigamDataTable.vue +23 -9
  99. package/dist/src/components/DataTable/OrigamDataTableColumnCell.vue +2 -1
  100. package/dist/src/components/DataTable/OrigamDataTableFooter.vue +2 -2
  101. package/dist/src/components/DataTable/OrigamDataTableGroupHeaderRow.vue +2 -2
  102. package/dist/src/components/DataTable/OrigamDataTableHeaderCell.vue +4 -2
  103. package/dist/src/components/DataTable/OrigamDataTableHeaders.vue +3 -2
  104. package/dist/src/components/DataTable/OrigamDataTableHeadersCell.vue +2 -2
  105. package/dist/src/components/DataTable/OrigamDataTableHeadersCellMobile.vue +3 -3
  106. package/dist/src/components/DataTable/OrigamDataTableRow.vue +10 -3
  107. package/dist/src/components/DataTable/OrigamDataTableRows.vue +8 -6
  108. package/dist/src/components/DatePicker/OrigamDatePicker.vue +15 -14
  109. package/dist/src/components/DatePicker/OrigamDatePickerControls.vue +2 -2
  110. package/dist/src/components/DatePicker/OrigamDatePickerHeader.vue +2 -2
  111. package/dist/src/components/DatePicker/OrigamDatePickerMonth.vue +9 -16
  112. package/dist/src/components/DatePicker/OrigamDatePickerMonths.vue +4 -4
  113. package/dist/src/components/DatePicker/OrigamDatePickerYears.vue +4 -4
  114. package/dist/src/components/DatePickerField/OrigamDatePickerField.vue +32 -21
  115. package/dist/src/components/DefaultsProvider/OrigamDefaultsProvider.vue +1 -1
  116. package/dist/src/components/Dialog/OrigamDialog.vue +13 -5
  117. package/dist/src/components/Dialog/OrigamDialogConfirmation.vue +3 -3
  118. package/dist/src/components/Divider/OrigamDivider.vue +4 -4
  119. package/dist/src/components/Drawer/OrigamDrawer.vue +15 -13
  120. package/dist/src/components/EmptyState/OrigamEmptyState.vue +241 -0
  121. package/dist/src/components/EmptyState/index.cjs +13 -0
  122. package/dist/src/components/EmptyState/index.d.ts +1 -0
  123. package/dist/src/components/EmptyState/index.js +1 -0
  124. package/dist/src/components/ExpansionPanel/OrigamExpansionPanel.vue +14 -4
  125. package/dist/src/components/ExpansionPanel/OrigamExpansionPanelContent.vue +8 -3
  126. package/dist/src/components/ExpansionPanel/OrigamExpansionPanelHeader.vue +17 -6
  127. package/dist/src/components/ExpansionPanel/OrigamExpansionPanels.vue +4 -3
  128. package/dist/src/components/Field/OrigamField.vue +28 -11
  129. package/dist/src/components/FileField/OrigamFileField.vue +10 -5
  130. package/dist/src/components/FileField/OrigamFileFieldDragNDropItem.vue +15 -5
  131. package/dist/src/components/FileField/OrigamFileFieldListItem.vue +15 -5
  132. package/dist/src/components/Form/OrigamForm.vue +10 -2
  133. package/dist/src/components/Grid/OrigamGrid.vue +197 -0
  134. package/dist/src/components/Grid/OrigamGridItem.vue +69 -0
  135. package/dist/src/components/Grid/index.cjs +20 -0
  136. package/dist/src/components/Grid/index.d.ts +2 -0
  137. package/dist/src/components/Grid/index.js +2 -0
  138. package/dist/src/components/Grids/OrigamCol.vue +3 -3
  139. package/dist/src/components/Grids/OrigamContainer.vue +1 -1
  140. package/dist/src/components/Grids/OrigamRow.vue +7 -3
  141. package/dist/src/components/Grids/OrigamSpacer.vue +1 -1
  142. package/dist/src/components/Icon/OrigamClassIcon.vue +15 -3
  143. package/dist/src/components/Icon/OrigamComponentIcon.vue +15 -3
  144. package/dist/src/components/Icon/OrigamIcon.vue +22 -3
  145. package/dist/src/components/Icon/OrigamLigatureIcon.vue +15 -3
  146. package/dist/src/components/Icon/OrigamSvgIcon.vue +17 -5
  147. package/dist/src/components/Img/OrigamImg.vue +12 -11
  148. package/dist/src/components/InfiniteScroll/OrigamInfiniteScroll.vue +16 -9
  149. package/dist/src/components/InfiniteScroll/OrigamInfiniteScrollIntersect.vue +3 -2
  150. package/dist/src/components/InlineEdit/OrigamInlineEdit.vue +486 -0
  151. package/dist/src/components/InlineEdit/index.cjs +13 -0
  152. package/dist/src/components/InlineEdit/index.d.ts +1 -0
  153. package/dist/src/components/InlineEdit/index.js +1 -0
  154. package/dist/src/components/Input/OrigamInput.vue +19 -5
  155. package/dist/src/components/ItemGroup/OrigamItem.vue +1 -1
  156. package/dist/src/components/ItemGroup/OrigamItemGroup.vue +1 -1
  157. package/dist/src/components/Kbd/OrigamKbd.vue +20 -10
  158. package/dist/src/components/Label/OrigamLabel.vue +16 -5
  159. package/dist/src/components/Layout/OrigamLayout.vue +74 -5
  160. package/dist/src/components/Lazy/OrigamLazy.vue +2 -1
  161. package/dist/src/components/List/OrigamList.vue +4 -3
  162. package/dist/src/components/List/OrigamListChildren.vue +1 -1
  163. package/dist/src/components/List/OrigamListGroup.vue +6 -3
  164. package/dist/src/components/List/OrigamListGroupActivator.vue +1 -1
  165. package/dist/src/components/List/OrigamListItem.vue +16 -5
  166. package/dist/src/components/List/OrigamListSubheader.vue +15 -5
  167. package/dist/src/components/Loader/OrigamLoader.vue +4 -2
  168. package/dist/src/components/Main/OrigamMain.vue +13 -3
  169. package/dist/src/components/Masonry/OrigamMasonry.vue +277 -0
  170. package/dist/src/components/Masonry/index.cjs +13 -0
  171. package/dist/src/components/Masonry/index.d.ts +1 -0
  172. package/dist/src/components/Masonry/index.js +1 -0
  173. package/dist/src/components/Media/OrigamMediaController.vue +529 -0
  174. package/dist/src/components/Media/OrigamMediaScrubber.vue +442 -0
  175. package/dist/src/components/Media/OrigamMediaVolumeControl.vue +152 -0
  176. package/dist/src/components/Media/index.cjs +27 -0
  177. package/dist/src/components/Media/index.d.ts +3 -0
  178. package/dist/src/components/Media/index.js +3 -0
  179. package/dist/src/components/Menu/OrigamMenu.vue +32 -7
  180. package/dist/src/components/Messages/OrigamMessages.vue +15 -6
  181. package/dist/src/components/NumberField/OrigamNumberField.vue +86 -46
  182. package/dist/src/components/NumberFormat/OrigamNumberFormat.vue +97 -0
  183. package/dist/src/components/NumberFormat/index.cjs +13 -0
  184. package/dist/src/components/NumberFormat/index.d.ts +1 -0
  185. package/dist/src/components/NumberFormat/index.js +1 -0
  186. package/dist/src/components/OtpInputField/OrigamOtpInputField.vue +119 -23
  187. package/dist/src/components/Overlay/OrigamOverlay.vue +2 -2
  188. package/dist/src/components/Overlay/OrigamOverlayScrim.vue +3 -2
  189. package/dist/src/components/Pagination/OrigamPagination.vue +20 -14
  190. package/dist/src/components/Parallax/OrigamParallax.vue +38 -3
  191. package/dist/src/components/Parallax/OrigamParallaxElement.vue +1 -1
  192. package/dist/src/components/Parallax/OrigamParallaxLayer.vue +2 -2
  193. package/dist/src/components/PasswordField/OrigamPasswordField.vue +15 -8
  194. package/dist/src/components/Picker/OrigamPicker.vue +12 -7
  195. package/dist/src/components/Picker/OrigamPickerTitle.vue +11 -4
  196. package/dist/src/components/Progress/OrigamProgress.vue +7 -2
  197. package/dist/src/components/Progress/OrigamProgressCircular.vue +11 -2
  198. package/dist/src/components/Progress/OrigamProgressLinear.vue +18 -7
  199. package/dist/src/components/QrCode/OrigamQrCode.vue +246 -0
  200. package/dist/src/components/QrCode/index.cjs +13 -0
  201. package/dist/src/components/QrCode/index.d.ts +1 -0
  202. package/dist/src/components/QrCode/index.js +1 -0
  203. package/dist/src/components/Radio/OrigamRadio.vue +22 -13
  204. package/dist/src/components/Radio/OrigamRadioBtn.vue +6 -4
  205. package/dist/src/components/Radio/OrigamRadioGroup.vue +50 -43
  206. package/dist/src/components/RatingField/OrigamRatingField.vue +29 -33
  207. package/dist/src/components/RatingField/OrigamRatingFieldItem.vue +4 -7
  208. package/dist/src/components/Responsive/OrigamResponsive.vue +1 -1
  209. package/dist/src/components/Section/OrigamSection.vue +1 -1
  210. package/dist/src/components/Select/OrigamSelect.vue +64 -21
  211. package/dist/src/components/SelectionControl/OrigamSelectionControl.vue +18 -8
  212. package/dist/src/components/SelectionControl/OrigamSelectionControlGroup.vue +4 -3
  213. package/dist/src/components/Sheet/OrigamSheet.vue +14 -6
  214. package/dist/src/components/Skeleton/OrigamSkeleton.vue +11 -6
  215. package/dist/src/components/Slide/OrigamSlideGroup.vue +1 -1
  216. package/dist/src/components/SliderField/OrigamSliderField.vue +1067 -331
  217. package/dist/src/components/SliderField/OrigamSliderFieldTrack.vue +34 -46
  218. package/dist/src/components/SliderField/index.cjs +0 -7
  219. package/dist/src/components/SliderField/index.d.ts +0 -1
  220. package/dist/src/components/SliderField/index.js +0 -1
  221. package/dist/src/components/Snackbar/OrigamSnackbar.vue +260 -269
  222. package/dist/src/components/Snackbar/OrigamSnackbarGroup.vue +238 -0
  223. package/dist/src/components/Snackbar/OrigamSnackbarItem.vue +271 -0
  224. package/dist/src/components/Snackbar/index.cjs +14 -0
  225. package/dist/src/components/Snackbar/index.d.ts +2 -0
  226. package/dist/src/components/Snackbar/index.js +2 -0
  227. package/dist/src/components/Stepper/OrigamStepper.vue +72 -9
  228. package/dist/src/components/Stepper/OrigamStepperItem.vue +10 -3
  229. package/dist/src/components/Switch/OrigamSwitch.vue +162 -47
  230. package/dist/src/components/Switch/OrigamSwitchTrack.vue +21 -16
  231. package/dist/src/components/SystemBar/OrigamSystemBar.vue +16 -6
  232. package/dist/src/components/Table/OrigamTable.vue +49 -4
  233. package/dist/src/components/Tabs/OrigamTab.vue +13 -3
  234. package/dist/src/components/Tabs/OrigamTabPanel.vue +1 -1
  235. package/dist/src/components/Tabs/OrigamTabPanels.vue +1 -1
  236. package/dist/src/components/Tabs/OrigamTabs.vue +3 -3
  237. package/dist/src/components/TextField/OrigamTextField.vue +12 -3
  238. package/dist/src/components/TextMask/OrigamTextMask.vue +147 -0
  239. package/dist/src/components/TextMask/index.cjs +13 -0
  240. package/dist/src/components/TextMask/index.d.ts +1 -0
  241. package/dist/src/components/TextMask/index.js +1 -0
  242. package/dist/src/components/TextareaField/OrigamRichToolbar.vue +15 -11
  243. package/dist/src/components/TextareaField/OrigamTextareaField.vue +15 -3
  244. package/dist/src/components/ThemeProvider/OrigamThemeProvider.vue +4 -1
  245. package/dist/src/components/Timeline/OrigamTimeline.vue +4 -4
  246. package/dist/src/components/Timeline/OrigamTimelineItem.vue +4 -2
  247. package/dist/src/components/Title/OrigamTitle.vue +22 -10
  248. package/dist/src/components/Toolbar/OrigamToolbar.vue +19 -7
  249. package/dist/src/components/Tooltip/OrigamTooltip.vue +13 -4
  250. package/dist/src/components/Transition/OrigamExpandX.vue +1 -1
  251. package/dist/src/components/Transition/OrigamExpandY.vue +1 -1
  252. package/dist/src/components/Transition/OrigamFade.vue +1 -1
  253. package/dist/src/components/Transition/OrigamReverseTranslatePicker.vue +1 -1
  254. package/dist/src/components/Transition/OrigamScaleRotate.vue +1 -1
  255. package/dist/src/components/Transition/OrigamSlideX.vue +1 -1
  256. package/dist/src/components/Transition/OrigamSlideY.vue +1 -1
  257. package/dist/src/components/Transition/OrigamSnack.vue +1 -1
  258. package/dist/src/components/Transition/OrigamTransition.vue +1 -1
  259. package/dist/src/components/Transition/OrigamTranslateBottom.vue +1 -1
  260. package/dist/src/components/Transition/OrigamTranslatePicker.vue +1 -1
  261. package/dist/src/components/Transition/OrigamTranslateScale.vue +1 -1
  262. package/dist/src/components/Transition/OrigamWindowXReverseTranslate.vue +1 -1
  263. package/dist/src/components/Transition/OrigamWindowXTranslate.vue +1 -1
  264. package/dist/src/components/Transition/OrigamWindowYReverseTranslate.vue +1 -1
  265. package/dist/src/components/Transition/OrigamWindowYTranslate.vue +1 -1
  266. package/dist/src/components/Treeview/OrigamTreeview.vue +3 -5
  267. package/dist/src/components/Treeview/OrigamTreeviewNode.vue +7 -5
  268. package/dist/src/components/Video/OrigamVideo.vue +1080 -0
  269. package/dist/src/components/Video/index.cjs +13 -0
  270. package/dist/src/components/Video/index.d.ts +1 -0
  271. package/dist/src/components/Video/index.js +1 -0
  272. package/dist/src/components/VirtualScroll/OrigamVirtualScroll.vue +1 -1
  273. package/dist/src/components/VirtualScroll/OrigamVirtualScrollItem.vue +1 -6
  274. package/dist/src/components/Watermark/OrigamWatermark.vue +187 -0
  275. package/dist/src/components/Watermark/index.cjs +13 -0
  276. package/dist/src/components/Watermark/index.d.ts +1 -0
  277. package/dist/src/components/Watermark/index.js +1 -0
  278. package/dist/src/components/Window/OrigamWindow.vue +32 -2
  279. package/dist/src/components/Window/OrigamWindowItem.vue +1 -1
  280. package/dist/src/components/index.cjs +165 -11
  281. package/dist/src/components/index.d.ts +15 -1
  282. package/dist/src/components/index.js +15 -1
  283. package/dist/src/composables/Audio/use-audio-player.composable.cjs +26 -0
  284. package/dist/src/composables/Audio/use-audio-player.composable.d.ts +29 -0
  285. package/dist/src/composables/Audio/use-audio-player.composable.js +17 -0
  286. package/dist/src/composables/Audio/use-waveform.composable.cjs +91 -0
  287. package/dist/src/composables/Audio/use-waveform.composable.d.ts +32 -0
  288. package/dist/src/composables/Audio/use-waveform.composable.js +81 -0
  289. package/dist/src/composables/Calendar/calendar.composable.cjs +184 -0
  290. package/dist/src/composables/Calendar/calendar.composable.d.ts +72 -0
  291. package/dist/src/composables/Calendar/calendar.composable.js +182 -0
  292. package/dist/src/composables/Chart/chart-gauge.composable.cjs +54 -0
  293. package/dist/src/composables/Chart/chart-gauge.composable.d.ts +21 -0
  294. package/dist/src/composables/Chart/chart-gauge.composable.js +47 -0
  295. package/dist/src/composables/Chart/chart-header-typography.composable.cjs +20 -0
  296. package/dist/src/composables/Chart/chart-header-typography.composable.d.ts +27 -0
  297. package/dist/src/composables/Chart/chart-header-typography.composable.js +11 -0
  298. package/dist/src/composables/Chart/chart-zoom.composable.cjs +92 -0
  299. package/dist/src/composables/Chart/chart-zoom.composable.d.ts +34 -0
  300. package/dist/src/composables/Chart/chart-zoom.composable.js +86 -0
  301. package/dist/src/composables/Chart/chart.composable.cjs +882 -0
  302. package/dist/src/composables/Chart/chart.composable.d.ts +97 -0
  303. package/dist/src/composables/Chart/chart.composable.js +818 -0
  304. package/dist/src/composables/Clipboard/clipboard.composable.cjs +78 -0
  305. package/dist/src/composables/Clipboard/clipboard.composable.d.ts +21 -0
  306. package/dist/src/composables/Clipboard/clipboard.composable.js +79 -0
  307. package/dist/src/composables/Code/code.composable.cjs +21 -17
  308. package/dist/src/composables/Code/code.composable.js +17 -10
  309. package/dist/src/composables/Commons/audio.composable.d.ts +11 -11
  310. package/dist/src/composables/Commons/border.composable.cjs +10 -0
  311. package/dist/src/composables/Commons/border.composable.js +7 -0
  312. package/dist/src/composables/Commons/color.composable.cjs +70 -35
  313. package/dist/src/composables/Commons/color.composable.d.ts +8 -3
  314. package/dist/src/composables/Commons/color.composable.js +48 -13
  315. package/dist/src/composables/Commons/{calendar.composable.cjs → date-picker-calendar.composable.cjs} +3 -3
  316. package/dist/src/composables/Commons/{calendar.composable.d.ts → date-picker-calendar.composable.d.ts} +3 -3
  317. package/dist/src/composables/Commons/{calendar.composable.js → date-picker-calendar.composable.js} +2 -2
  318. package/dist/src/composables/Commons/defaults.composable.cjs +10 -9
  319. package/dist/src/composables/Commons/defaults.composable.js +10 -9
  320. package/dist/src/composables/Commons/delay.composable.cjs +8 -3
  321. package/dist/src/composables/Commons/delay.composable.js +7 -4
  322. package/dist/src/composables/Commons/density.composable.cjs +1 -1
  323. package/dist/src/composables/Commons/density.composable.js +2 -2
  324. package/dist/src/composables/Commons/dragResizer.composable.cjs +7 -9
  325. package/dist/src/composables/Commons/dragResizer.composable.js +8 -9
  326. package/dist/src/composables/Commons/elevation.composable.cjs +4 -5
  327. package/dist/src/composables/Commons/elevation.composable.js +1 -18
  328. package/dist/src/composables/Commons/focus.composable.cjs +1 -1
  329. package/dist/src/composables/Commons/focus.composable.js +1 -1
  330. package/dist/src/composables/Commons/layout.composable.cjs +12 -0
  331. package/dist/src/composables/Commons/layout.composable.js +14 -0
  332. package/dist/src/composables/Commons/message.composable.cjs +1 -1
  333. package/dist/src/composables/Commons/message.composable.d.ts +1 -1
  334. package/dist/src/composables/Commons/message.composable.js +1 -1
  335. package/dist/src/composables/Commons/rounded.composable.cjs +15 -4
  336. package/dist/src/composables/Commons/rounded.composable.d.ts +1 -1
  337. package/dist/src/composables/Commons/rounded.composable.js +17 -6
  338. package/dist/src/composables/Commons/scroll.composable.cjs +2 -2
  339. package/dist/src/composables/Commons/scroll.composable.js +2 -2
  340. package/dist/src/composables/Commons/stateEffect.composable.cjs +36 -14
  341. package/dist/src/composables/Commons/stateEffect.composable.js +38 -14
  342. package/dist/src/composables/Commons/status.composable.cjs +11 -1
  343. package/dist/src/composables/Commons/status.composable.d.ts +2 -0
  344. package/dist/src/composables/Commons/status.composable.js +10 -1
  345. package/dist/src/composables/Commons/sticky.composable.d.ts +2 -14
  346. package/dist/src/composables/Commons/style.composable.cjs +5 -3
  347. package/dist/src/composables/Commons/style.composable.js +5 -3
  348. package/dist/src/composables/Commons/typography.composable.cjs +23 -0
  349. package/dist/src/composables/Commons/typography.composable.d.ts +7 -0
  350. package/dist/src/composables/Commons/typography.composable.js +21 -0
  351. package/dist/src/composables/CssSupport/cssSupport.composable.cjs +5 -26
  352. package/dist/src/composables/CssSupport/cssSupport.composable.d.ts +1 -23
  353. package/dist/src/composables/CssSupport/cssSupport.composable.js +1 -22
  354. package/dist/src/composables/DataTable/headers.composable.d.ts +4 -364
  355. package/dist/src/composables/Icon/icon.composable.cjs +6 -1
  356. package/dist/src/composables/Icon/icon.composable.js +4 -1
  357. package/dist/src/composables/InlineEdit/inline-edit.composable.cjs +101 -0
  358. package/dist/src/composables/InlineEdit/inline-edit.composable.d.ts +36 -0
  359. package/dist/src/composables/InlineEdit/inline-edit.composable.js +100 -0
  360. package/dist/src/composables/Masonry/masonry.composable.cjs +160 -0
  361. package/dist/src/composables/Masonry/masonry.composable.d.ts +133 -0
  362. package/dist/src/composables/Masonry/masonry.composable.js +160 -0
  363. package/dist/src/composables/Media/use-media-player.composable.cjs +286 -0
  364. package/dist/src/composables/Media/use-media-player.composable.d.ts +43 -0
  365. package/dist/src/composables/Media/use-media-player.composable.js +289 -0
  366. package/dist/src/composables/NumberFormat/number-format.composable.cjs +165 -0
  367. package/dist/src/composables/NumberFormat/number-format.composable.d.ts +33 -0
  368. package/dist/src/composables/NumberFormat/number-format.composable.js +146 -0
  369. package/dist/src/composables/QrCode/qr-code.composable.cjs +111 -0
  370. package/dist/src/composables/QrCode/qr-code.composable.d.ts +31 -0
  371. package/dist/src/composables/QrCode/qr-code.composable.js +120 -0
  372. package/dist/src/composables/Responsive/aspect.composable.cjs +9 -1
  373. package/dist/src/composables/Responsive/aspect.composable.d.ts +1 -1
  374. package/dist/src/composables/Responsive/aspect.composable.js +9 -1
  375. package/dist/src/composables/Sheet/sheetSwipe.composable.cjs +5 -5
  376. package/dist/src/composables/Sheet/sheetSwipe.composable.d.ts +1 -1
  377. package/dist/src/composables/Sheet/sheetSwipe.composable.js +3 -3
  378. package/dist/src/composables/SliderField/slider-field.composable.cjs +0 -213
  379. package/dist/src/composables/SliderField/slider-field.composable.d.ts +11 -5
  380. package/dist/src/composables/SliderField/slider-field.composable.js +2 -191
  381. package/dist/src/composables/{SnackbarStack/snackbar-stack.composable.cjs → Snackbar/snackbar-group.composable.cjs} +10 -10
  382. package/dist/src/composables/{SnackbarStack/snackbar-stack.composable.d.ts → Snackbar/snackbar-group.composable.d.ts} +14 -14
  383. package/dist/src/composables/{SnackbarStack/snackbar-stack.composable.js → Snackbar/snackbar-group.composable.js} +9 -9
  384. package/dist/src/composables/Theme/installed-themes.composable.cjs +11 -0
  385. package/dist/src/composables/Theme/installed-themes.composable.d.ts +19 -0
  386. package/dist/src/composables/Theme/installed-themes.composable.js +5 -0
  387. package/dist/src/composables/Theme/theme.composable.cjs +91 -21
  388. package/dist/src/composables/Theme/theme.composable.d.ts +55 -10
  389. package/dist/src/composables/Theme/theme.composable.js +88 -18
  390. package/dist/src/composables/Video/video-player.composable.cjs +129 -0
  391. package/dist/src/composables/Video/video-player.composable.d.ts +44 -0
  392. package/dist/src/composables/Video/video-player.composable.js +128 -0
  393. package/dist/src/composables/Watermark/watermark.composable.cjs +147 -0
  394. package/dist/src/composables/Watermark/watermark.composable.d.ts +28 -0
  395. package/dist/src/composables/Watermark/watermark.composable.js +158 -0
  396. package/dist/src/composables/index.cjs +273 -8
  397. package/dist/src/composables/index.d.ts +17 -2
  398. package/dist/src/composables/index.js +17 -2
  399. package/dist/src/consts/Audio/audio.const.cjs +25 -0
  400. package/dist/src/consts/Audio/audio.const.d.ts +30 -0
  401. package/dist/src/consts/Audio/audio.const.js +19 -0
  402. package/dist/src/consts/Blockquote/blockquote.const.cjs +32 -0
  403. package/dist/src/consts/Blockquote/blockquote.const.d.ts +37 -0
  404. package/dist/src/consts/Blockquote/blockquote.const.js +30 -0
  405. package/dist/src/consts/Bracket/bracket.const.cjs +4 -2
  406. package/dist/src/consts/Bracket/bracket.const.d.ts +12 -0
  407. package/dist/src/consts/Bracket/bracket.const.js +2 -0
  408. package/dist/src/consts/Chart/chart.const.cjs +26 -0
  409. package/dist/src/consts/Chart/chart.const.d.ts +32 -0
  410. package/dist/src/consts/Chart/chart.const.js +9 -0
  411. package/dist/src/consts/Chart/country-centroids.const.cjs +43 -0
  412. package/dist/src/consts/Chart/country-centroids.const.d.ts +10 -0
  413. package/dist/src/consts/Chart/country-centroids.const.js +37 -0
  414. package/dist/src/consts/Chart/pictorial-icons.const.cjs +12 -0
  415. package/dist/src/consts/Chart/pictorial-icons.const.d.ts +18 -0
  416. package/dist/src/consts/Chart/pictorial-icons.const.js +6 -0
  417. package/dist/src/consts/Chart/world-geographic.const.cjs +152 -0
  418. package/dist/src/consts/Chart/world-geographic.const.d.ts +22 -0
  419. package/dist/src/consts/Chart/world-geographic.const.js +1722 -0
  420. package/dist/src/consts/Chart/world-map.const.cjs +43 -0
  421. package/dist/src/consts/Chart/world-map.const.d.ts +14 -0
  422. package/dist/src/consts/Chart/world-map.const.js +37 -0
  423. package/dist/src/consts/Clipboard/clipboard.const.cjs +7 -0
  424. package/dist/src/consts/Clipboard/clipboard.const.d.ts +6 -0
  425. package/dist/src/consts/Clipboard/clipboard.const.js +1 -0
  426. package/dist/src/consts/Code/code.const.cjs +3 -6
  427. package/dist/src/consts/Code/code.const.d.ts +8 -12
  428. package/dist/src/consts/Code/code.const.js +3 -6
  429. package/dist/src/consts/Commons/density.const.cjs +2 -2
  430. package/dist/src/consts/Commons/density.const.d.ts +1 -1
  431. package/dist/src/consts/Commons/density.const.js +1 -1
  432. package/dist/src/consts/Commons/elevation.const.cjs +8 -0
  433. package/dist/src/consts/Commons/elevation.const.d.ts +17 -0
  434. package/dist/src/consts/Commons/elevation.const.js +18 -0
  435. package/dist/src/consts/Commons/rounded.const.cjs +4 -2
  436. package/dist/src/consts/Commons/rounded.const.d.ts +22 -2
  437. package/dist/src/consts/Commons/rounded.const.js +3 -1
  438. package/dist/src/consts/CssSupport/css-support.const.cjs +29 -0
  439. package/dist/src/consts/CssSupport/css-support.const.d.ts +40 -0
  440. package/dist/src/consts/CssSupport/css-support.const.js +23 -0
  441. package/dist/src/consts/DataTable/select.const.cjs +3 -2
  442. package/dist/src/consts/DataTable/select.const.d.ts +2 -1
  443. package/dist/src/consts/DataTable/select.const.js +2 -1
  444. package/dist/src/consts/EmptyState/empty-state.const.cjs +32 -0
  445. package/dist/src/consts/EmptyState/empty-state.const.d.ts +29 -0
  446. package/dist/src/consts/EmptyState/empty-state.const.js +39 -0
  447. package/dist/src/consts/Grid/grid.const.cjs +28 -0
  448. package/dist/src/consts/Grid/grid.const.d.ts +49 -0
  449. package/dist/src/consts/Grid/grid.const.js +46 -0
  450. package/dist/src/consts/Icon/mdi.const.cjs +6 -1
  451. package/dist/src/consts/Icon/mdi.const.js +10 -2
  452. package/dist/src/consts/Masonry/masonry.const.cjs +14 -0
  453. package/dist/src/consts/Masonry/masonry.const.d.ts +27 -0
  454. package/dist/src/consts/Masonry/masonry.const.js +11 -0
  455. package/dist/src/consts/Media/media.const.cjs +8 -0
  456. package/dist/src/consts/Media/media.const.d.ts +14 -0
  457. package/dist/src/consts/Media/media.const.js +2 -0
  458. package/dist/src/consts/NumberFormat/number-format.const.cjs +9 -0
  459. package/dist/src/consts/NumberFormat/number-format.const.d.ts +19 -0
  460. package/dist/src/consts/NumberFormat/number-format.const.js +3 -0
  461. package/dist/src/consts/QrCode/qr-code.const.cjs +12 -0
  462. package/dist/src/consts/QrCode/qr-code.const.d.ts +33 -0
  463. package/dist/src/consts/QrCode/qr-code.const.js +6 -0
  464. package/dist/src/consts/Sheet/sheet-swipe.const.cjs +7 -0
  465. package/dist/src/consts/Sheet/sheet-swipe.const.d.ts +11 -0
  466. package/dist/src/consts/Sheet/sheet-swipe.const.js +1 -0
  467. package/dist/src/consts/Snackbar/snackbar-group.const.cjs +12 -0
  468. package/dist/src/consts/Snackbar/snackbar-group.const.d.ts +33 -0
  469. package/dist/src/consts/Snackbar/snackbar-group.const.js +18 -0
  470. package/dist/src/consts/Theme/theme.const.cjs +11 -1
  471. package/dist/src/consts/Theme/theme.const.d.ts +16 -0
  472. package/dist/src/consts/Theme/theme.const.js +10 -0
  473. package/dist/src/consts/Video/video.const.cjs +7 -0
  474. package/dist/src/consts/Video/video.const.d.ts +7 -0
  475. package/dist/src/consts/Video/video.const.js +1 -0
  476. package/dist/src/consts/Watermark/watermark.const.cjs +16 -0
  477. package/dist/src/consts/Watermark/watermark.const.d.ts +27 -0
  478. package/dist/src/consts/Watermark/watermark.const.js +10 -0
  479. package/dist/src/consts/index.cjs +188 -12
  480. package/dist/src/consts/index.d.ts +18 -2
  481. package/dist/src/consts/index.js +18 -2
  482. package/dist/src/directives/Contrast/contrast.directive.cjs +150 -0
  483. package/dist/src/directives/Contrast/contrast.directive.d.ts +5 -0
  484. package/dist/src/directives/Contrast/contrast.directive.js +131 -0
  485. package/dist/src/directives/index.cjs +7 -0
  486. package/dist/src/directives/index.d.ts +1 -0
  487. package/dist/src/directives/index.js +1 -0
  488. package/dist/src/enums/Audio/audio-loop-mode.enum.cjs +12 -0
  489. package/dist/src/enums/Audio/audio-loop-mode.enum.d.ts +17 -0
  490. package/dist/src/enums/Audio/audio-loop-mode.enum.js +6 -0
  491. package/dist/src/enums/Audio/audio-variant.enum.cjs +13 -0
  492. package/dist/src/enums/Audio/audio-variant.enum.d.ts +26 -0
  493. package/dist/src/enums/Audio/audio-variant.enum.js +7 -0
  494. package/dist/src/enums/Audio/cover-position.enum.cjs +11 -0
  495. package/dist/src/enums/Audio/cover-position.enum.d.ts +9 -0
  496. package/dist/src/enums/Audio/cover-position.enum.js +5 -0
  497. package/dist/src/enums/Blockquote/blockquote-lang.enum.cjs +14 -0
  498. package/dist/src/enums/Blockquote/blockquote-lang.enum.d.ts +7 -0
  499. package/dist/src/enums/Blockquote/blockquote-lang.enum.js +8 -0
  500. package/dist/src/enums/Blockquote/blockquote-variant.enum.cjs +14 -0
  501. package/dist/src/enums/Blockquote/blockquote-variant.enum.d.ts +7 -0
  502. package/dist/src/enums/Blockquote/blockquote-variant.enum.js +8 -0
  503. package/dist/src/enums/BottomNav/bottom-nav-position.enum.cjs +12 -0
  504. package/dist/src/enums/BottomNav/bottom-nav-position.enum.d.ts +10 -0
  505. package/dist/src/enums/BottomNav/bottom-nav-position.enum.js +6 -0
  506. package/dist/src/enums/Chart/chart-bullet-orientation.enum.cjs +11 -0
  507. package/dist/src/enums/Chart/chart-bullet-orientation.enum.d.ts +4 -0
  508. package/dist/src/enums/Chart/chart-bullet-orientation.enum.js +5 -0
  509. package/dist/src/enums/Chart/chart-cartesian-kind.enum.cjs +16 -0
  510. package/dist/src/enums/Chart/chart-cartesian-kind.enum.d.ts +14 -0
  511. package/dist/src/enums/Chart/chart-cartesian-kind.enum.js +10 -0
  512. package/dist/src/enums/Chart/chart-honeycomb-color-mode.enum.cjs +11 -0
  513. package/dist/src/enums/Chart/chart-honeycomb-color-mode.enum.d.ts +4 -0
  514. package/dist/src/enums/Chart/chart-honeycomb-color-mode.enum.js +5 -0
  515. package/dist/src/enums/Chart/chart-honeycomb-orientation.enum.cjs +11 -0
  516. package/dist/src/enums/Chart/chart-honeycomb-orientation.enum.d.ts +4 -0
  517. package/dist/src/enums/Chart/chart-honeycomb-orientation.enum.js +5 -0
  518. package/dist/src/enums/Chart/chart-map-mode.enum.cjs +11 -0
  519. package/dist/src/enums/Chart/chart-map-mode.enum.d.ts +4 -0
  520. package/dist/src/enums/Chart/chart-map-mode.enum.js +5 -0
  521. package/dist/src/enums/Chart/chart-pictorial-direction.enum.cjs +11 -0
  522. package/dist/src/enums/Chart/chart-pictorial-direction.enum.d.ts +4 -0
  523. package/dist/src/enums/Chart/chart-pictorial-direction.enum.js +5 -0
  524. package/dist/src/enums/Chart/chart-pictorial-mode.enum.cjs +11 -0
  525. package/dist/src/enums/Chart/chart-pictorial-mode.enum.d.ts +4 -0
  526. package/dist/src/enums/Chart/chart-pictorial-mode.enum.js +5 -0
  527. package/dist/src/enums/Chart/chart-polar-kind.enum.cjs +11 -0
  528. package/dist/src/enums/Chart/chart-polar-kind.enum.d.ts +8 -0
  529. package/dist/src/enums/Chart/chart-polar-kind.enum.js +5 -0
  530. package/dist/src/enums/Chart/chart-pyramid-kind.enum.cjs +11 -0
  531. package/dist/src/enums/Chart/chart-pyramid-kind.enum.d.ts +4 -0
  532. package/dist/src/enums/Chart/chart-pyramid-kind.enum.js +5 -0
  533. package/dist/src/enums/Chart/chart-sparkline-kind.enum.cjs +13 -0
  534. package/dist/src/enums/Chart/chart-sparkline-kind.enum.d.ts +6 -0
  535. package/dist/src/enums/Chart/chart-sparkline-kind.enum.js +7 -0
  536. package/dist/src/enums/Chart/chart-stacking.enum.cjs +11 -0
  537. package/dist/src/enums/Chart/chart-stacking.enum.d.ts +14 -0
  538. package/dist/src/enums/Chart/chart-stacking.enum.js +5 -0
  539. package/dist/src/enums/Chart/chart-streamgraph-offset.enum.cjs +13 -0
  540. package/dist/src/enums/Chart/chart-streamgraph-offset.enum.d.ts +6 -0
  541. package/dist/src/enums/Chart/chart-streamgraph-offset.enum.js +7 -0
  542. package/dist/src/enums/Chart/chart-treemap-algorithm.enum.cjs +11 -0
  543. package/dist/src/enums/Chart/chart-treemap-algorithm.enum.d.ts +9 -0
  544. package/dist/src/enums/Chart/chart-treemap-algorithm.enum.js +5 -0
  545. package/dist/src/enums/Chart/chart-word-cloud-rotation.enum.cjs +12 -0
  546. package/dist/src/enums/Chart/chart-word-cloud-rotation.enum.d.ts +5 -0
  547. package/dist/src/enums/Chart/chart-word-cloud-rotation.enum.js +6 -0
  548. package/dist/src/enums/Chart/chart.enum.cjs +38 -0
  549. package/dist/src/enums/Chart/chart.enum.d.ts +31 -0
  550. package/dist/src/enums/Chart/chart.enum.js +32 -0
  551. package/dist/src/enums/EmptyState/empty-state-preset.enum.cjs +14 -0
  552. package/dist/src/enums/EmptyState/empty-state-preset.enum.d.ts +16 -0
  553. package/dist/src/enums/EmptyState/empty-state-preset.enum.js +8 -0
  554. package/dist/src/enums/InlineEdit/inline-edit-action.enum.cjs +12 -0
  555. package/dist/src/enums/InlineEdit/inline-edit-action.enum.d.ts +10 -0
  556. package/dist/src/enums/InlineEdit/inline-edit-action.enum.js +6 -0
  557. package/dist/src/enums/SliderField/slider-field-variant.enum.cjs +12 -0
  558. package/dist/src/enums/SliderField/slider-field-variant.enum.d.ts +21 -0
  559. package/dist/src/enums/SliderField/slider-field-variant.enum.js +6 -0
  560. package/dist/src/enums/Toolbar/toolbar.enum.cjs +1 -0
  561. package/dist/src/enums/Toolbar/toolbar.enum.d.ts +2 -1
  562. package/dist/src/enums/Toolbar/toolbar.enum.js +1 -0
  563. package/dist/src/enums/index.cjs +254 -1
  564. package/dist/src/enums/index.d.ts +24 -1
  565. package/dist/src/enums/index.js +24 -1
  566. package/dist/src/interfaces/Alert/alert.interface.d.ts +6 -3
  567. package/dist/src/interfaces/App/app-bar.interface.d.ts +23 -2
  568. package/dist/src/interfaces/App/app.interface.d.ts +24 -0
  569. package/dist/src/interfaces/Audio/audio-player.interface.d.ts +427 -0
  570. package/dist/src/interfaces/Avatar/avatar-group.interface.d.ts +5 -1
  571. package/dist/src/interfaces/Avatar/avatar.interface.d.ts +5 -4
  572. package/dist/src/interfaces/Badge/badge.interface.d.ts +2 -2
  573. package/dist/src/interfaces/Blockquote/blockquote.interface.d.ts +86 -0
  574. package/dist/src/interfaces/BottomNav/bottom-nav.interface.d.ts +16 -4
  575. package/dist/src/interfaces/Bracket/bracket-competitor-component.interface.d.ts +17 -6
  576. package/dist/src/interfaces/Bracket/bracket-match-component.interface.d.ts +13 -6
  577. package/dist/src/interfaces/Bracket/bracket-match.interface.d.ts +22 -0
  578. package/dist/src/interfaces/Bracket/bracket-round-component.interface.d.ts +2 -2
  579. package/dist/src/interfaces/Bracket/bracket.interface.d.ts +18 -10
  580. package/dist/src/interfaces/Breadcrumb/breadcrumb-divider.interface.d.ts +2 -2
  581. package/dist/src/interfaces/Breadcrumb/breadcrumb-item.interface.d.ts +4 -1
  582. package/dist/src/interfaces/Breadcrumb/breadcrumb.interface.d.ts +2 -3
  583. package/dist/src/interfaces/Btn/btn-group.interface.d.ts +2 -2
  584. package/dist/src/interfaces/Btn/btn-toggle.interface.d.ts +4 -1
  585. package/dist/src/interfaces/Btn/btn.interface.d.ts +15 -3
  586. package/dist/src/interfaces/Calendar/calendar.interface.d.ts +164 -0
  587. package/dist/src/interfaces/Calendar/event.interface.d.ts +54 -0
  588. package/dist/src/interfaces/Card/card-header.interface.d.ts +5 -2
  589. package/dist/src/interfaces/Card/card-text.interface.d.ts +2 -2
  590. package/dist/src/interfaces/Card/card.interface.d.ts +5 -1
  591. package/dist/src/interfaces/Carousel/carousel.interface.d.ts +5 -2
  592. package/dist/src/interfaces/Chart/chart-annotation.interface.d.ts +99 -0
  593. package/dist/src/interfaces/Chart/chart-axis.interface.d.ts +78 -0
  594. package/dist/src/interfaces/Chart/chart-base.interface.d.ts +88 -0
  595. package/dist/src/interfaces/Chart/chart-box-plot.interface.d.ts +203 -0
  596. package/dist/src/interfaces/Chart/chart-bullet.interface.d.ts +140 -0
  597. package/dist/src/interfaces/Chart/chart-candlestick.interface.d.ts +131 -0
  598. package/dist/src/interfaces/Chart/chart-cartesian.interface.cjs +1 -0
  599. package/dist/src/interfaces/Chart/chart-cartesian.interface.d.ts +124 -0
  600. package/dist/src/interfaces/Chart/chart-cartesian.interface.js +0 -0
  601. package/dist/src/interfaces/Chart/chart-drilldown.interface.cjs +1 -0
  602. package/dist/src/interfaces/Chart/chart-drilldown.interface.d.ts +60 -0
  603. package/dist/src/interfaces/Chart/chart-drilldown.interface.js +0 -0
  604. package/dist/src/interfaces/Chart/chart-gauge.interface.cjs +1 -0
  605. package/dist/src/interfaces/Chart/chart-gauge.interface.d.ts +130 -0
  606. package/dist/src/interfaces/Chart/chart-gauge.interface.js +0 -0
  607. package/dist/src/interfaces/Chart/chart-heatmap.interface.cjs +1 -0
  608. package/dist/src/interfaces/Chart/chart-heatmap.interface.d.ts +128 -0
  609. package/dist/src/interfaces/Chart/chart-heatmap.interface.js +0 -0
  610. package/dist/src/interfaces/Chart/chart-honeycomb.interface.cjs +1 -0
  611. package/dist/src/interfaces/Chart/chart-honeycomb.interface.d.ts +109 -0
  612. package/dist/src/interfaces/Chart/chart-honeycomb.interface.js +0 -0
  613. package/dist/src/interfaces/Chart/chart-legend.interface.cjs +1 -0
  614. package/dist/src/interfaces/Chart/chart-legend.interface.d.ts +48 -0
  615. package/dist/src/interfaces/Chart/chart-legend.interface.js +0 -0
  616. package/dist/src/interfaces/Chart/chart-map.interface.cjs +1 -0
  617. package/dist/src/interfaces/Chart/chart-map.interface.d.ts +137 -0
  618. package/dist/src/interfaces/Chart/chart-map.interface.js +0 -0
  619. package/dist/src/interfaces/Chart/chart-pareto.interface.cjs +1 -0
  620. package/dist/src/interfaces/Chart/chart-pareto.interface.d.ts +124 -0
  621. package/dist/src/interfaces/Chart/chart-pareto.interface.js +0 -0
  622. package/dist/src/interfaces/Chart/chart-pictorial.interface.cjs +1 -0
  623. package/dist/src/interfaces/Chart/chart-pictorial.interface.d.ts +114 -0
  624. package/dist/src/interfaces/Chart/chart-pictorial.interface.js +0 -0
  625. package/dist/src/interfaces/Chart/chart-plot-band.interface.cjs +1 -0
  626. package/dist/src/interfaces/Chart/chart-plot-band.interface.d.ts +34 -0
  627. package/dist/src/interfaces/Chart/chart-plot-band.interface.js +0 -0
  628. package/dist/src/interfaces/Chart/chart-plot-line.interface.cjs +1 -0
  629. package/dist/src/interfaces/Chart/chart-plot-line.interface.d.ts +39 -0
  630. package/dist/src/interfaces/Chart/chart-plot-line.interface.js +0 -0
  631. package/dist/src/interfaces/Chart/chart-point.interface.cjs +1 -0
  632. package/dist/src/interfaces/Chart/chart-point.interface.d.ts +20 -0
  633. package/dist/src/interfaces/Chart/chart-point.interface.js +0 -0
  634. package/dist/src/interfaces/Chart/chart-polar-bar.interface.cjs +1 -0
  635. package/dist/src/interfaces/Chart/chart-polar-bar.interface.d.ts +118 -0
  636. package/dist/src/interfaces/Chart/chart-polar-bar.interface.js +0 -0
  637. package/dist/src/interfaces/Chart/chart-polar.interface.cjs +1 -0
  638. package/dist/src/interfaces/Chart/chart-polar.interface.d.ts +43 -0
  639. package/dist/src/interfaces/Chart/chart-polar.interface.js +0 -0
  640. package/dist/src/interfaces/Chart/chart-pyramid.interface.cjs +1 -0
  641. package/dist/src/interfaces/Chart/chart-pyramid.interface.d.ts +96 -0
  642. package/dist/src/interfaces/Chart/chart-pyramid.interface.js +0 -0
  643. package/dist/src/interfaces/Chart/chart-radar.interface.cjs +1 -0
  644. package/dist/src/interfaces/Chart/chart-radar.interface.d.ts +10 -0
  645. package/dist/src/interfaces/Chart/chart-radar.interface.js +0 -0
  646. package/dist/src/interfaces/Chart/chart-range-selector.interface.cjs +1 -0
  647. package/dist/src/interfaces/Chart/chart-range-selector.interface.d.ts +38 -0
  648. package/dist/src/interfaces/Chart/chart-range-selector.interface.js +0 -0
  649. package/dist/src/interfaces/Chart/chart-sankey.interface.cjs +1 -0
  650. package/dist/src/interfaces/Chart/chart-sankey.interface.d.ts +124 -0
  651. package/dist/src/interfaces/Chart/chart-sankey.interface.js +0 -0
  652. package/dist/src/interfaces/Chart/chart-series.interface.cjs +1 -0
  653. package/dist/src/interfaces/Chart/chart-series.interface.d.ts +80 -0
  654. package/dist/src/interfaces/Chart/chart-series.interface.js +0 -0
  655. package/dist/src/interfaces/Chart/chart-sparkline.interface.cjs +1 -0
  656. package/dist/src/interfaces/Chart/chart-sparkline.interface.d.ts +108 -0
  657. package/dist/src/interfaces/Chart/chart-sparkline.interface.js +0 -0
  658. package/dist/src/interfaces/Chart/chart-streamgraph.interface.cjs +1 -0
  659. package/dist/src/interfaces/Chart/chart-streamgraph.interface.d.ts +82 -0
  660. package/dist/src/interfaces/Chart/chart-streamgraph.interface.js +0 -0
  661. package/dist/src/interfaces/Chart/chart-sunburst.interface.cjs +1 -0
  662. package/dist/src/interfaces/Chart/chart-sunburst.interface.d.ts +100 -0
  663. package/dist/src/interfaces/Chart/chart-sunburst.interface.js +0 -0
  664. package/dist/src/interfaces/Chart/chart-tooltip.interface.cjs +1 -0
  665. package/dist/src/interfaces/Chart/chart-tooltip.interface.d.ts +55 -0
  666. package/dist/src/interfaces/Chart/chart-tooltip.interface.js +0 -0
  667. package/dist/src/interfaces/Chart/chart-treemap.interface.cjs +1 -0
  668. package/dist/src/interfaces/Chart/chart-treemap.interface.d.ts +106 -0
  669. package/dist/src/interfaces/Chart/chart-treemap.interface.js +0 -0
  670. package/dist/src/interfaces/Chart/chart-variwide.interface.cjs +1 -0
  671. package/dist/src/interfaces/Chart/chart-variwide.interface.d.ts +132 -0
  672. package/dist/src/interfaces/Chart/chart-variwide.interface.js +0 -0
  673. package/dist/src/interfaces/Chart/chart-word-cloud.interface.cjs +1 -0
  674. package/dist/src/interfaces/Chart/chart-word-cloud.interface.d.ts +83 -0
  675. package/dist/src/interfaces/Chart/chart-word-cloud.interface.js +0 -0
  676. package/dist/src/interfaces/Chart/chart.interface.cjs +1 -0
  677. package/dist/src/interfaces/Chart/chart.interface.d.ts +287 -0
  678. package/dist/src/interfaces/Chart/chart.interface.js +0 -0
  679. package/dist/src/interfaces/Checkbox/checkbox-btn.interface.d.ts +3 -3
  680. package/dist/src/interfaces/Checkbox/checkbox.interface.d.ts +10 -9
  681. package/dist/src/interfaces/Chip/chip-group.interface.d.ts +6 -1
  682. package/dist/src/interfaces/Chip/chip.interface.d.ts +6 -2
  683. package/dist/src/interfaces/Clipboard/clipboard.interface.cjs +1 -0
  684. package/dist/src/interfaces/Clipboard/clipboard.interface.d.ts +106 -0
  685. package/dist/src/interfaces/Clipboard/clipboard.interface.js +0 -0
  686. package/dist/src/interfaces/Code/code.interface.d.ts +21 -14
  687. package/dist/src/interfaces/ColorPicker/color-picker-canvas.interface.d.ts +5 -1
  688. package/dist/src/interfaces/ColorPicker/color-picker-edit.interface.d.ts +5 -1
  689. package/dist/src/interfaces/ColorPicker/color-picker-preview.interface.d.ts +4 -1
  690. package/dist/src/interfaces/ColorPicker/color-picker-swatches.interface.d.ts +5 -1
  691. package/dist/src/interfaces/ColorPicker/color-picker.interface.d.ts +18 -2
  692. package/dist/src/interfaces/ColorPickerField/color-picker-field.interface.d.ts +2 -2
  693. package/dist/src/interfaces/CommandPalette/command-palette.interface.d.ts +2 -1
  694. package/dist/src/interfaces/Commons/audio.interface.d.ts +7 -1
  695. package/dist/src/interfaces/Commons/calendar.interface.d.ts +3 -3
  696. package/dist/src/interfaces/Commons/clickOutside.interface.d.ts +5 -0
  697. package/dist/src/interfaces/Commons/commons.interface.d.ts +52 -1
  698. package/dist/src/interfaces/Commons/filters.interface.d.ts +2 -2
  699. package/dist/src/interfaces/Commons/gradient.interface.cjs +1 -0
  700. package/dist/src/interfaces/Commons/gradient.interface.d.ts +39 -0
  701. package/dist/src/interfaces/Commons/gradient.interface.js +0 -0
  702. package/dist/src/interfaces/Commons/group.interface.d.ts +6 -0
  703. package/dist/src/interfaces/Commons/hover.interface.d.ts +22 -3
  704. package/dist/src/interfaces/Commons/layout.interface.d.ts +2 -2
  705. package/dist/src/interfaces/Commons/lazy.interface.d.ts +5 -1
  706. package/dist/src/interfaces/Commons/scroll.interface.d.ts +8 -1
  707. package/dist/src/interfaces/Commons/typography.interface.cjs +1 -0
  708. package/dist/src/interfaces/Commons/typography.interface.d.ts +52 -0
  709. package/dist/src/interfaces/Commons/typography.interface.js +0 -0
  710. package/dist/src/interfaces/Commons/validation.interface.d.ts +3 -1
  711. package/dist/src/interfaces/Counter/counter.interface.d.ts +2 -2
  712. package/dist/src/interfaces/DataList/data-list.interface.d.ts +2 -2
  713. package/dist/src/interfaces/DataList/data-text.interface.d.ts +5 -0
  714. package/dist/src/interfaces/DataList/data-title.interface.d.ts +5 -0
  715. package/dist/src/interfaces/DataTable/data-table.interface.d.ts +12 -1
  716. package/dist/src/interfaces/DataTable/headers.interface.d.ts +10 -5
  717. package/dist/src/interfaces/DataTable/row.interface.d.ts +11 -0
  718. package/dist/src/interfaces/DatePicker/date-picker-controls.interface.d.ts +19 -2
  719. package/dist/src/interfaces/DatePicker/date-picker-header.interface.d.ts +6 -0
  720. package/dist/src/interfaces/DatePicker/date-picker-months.interface.d.ts +6 -2
  721. package/dist/src/interfaces/DatePicker/date-picker-years.interface.d.ts +5 -1
  722. package/dist/src/interfaces/DatePicker/date-picker.interface.d.ts +10 -2
  723. package/dist/src/interfaces/DatePickerField/date-picker-field.interface.d.ts +2 -2
  724. package/dist/src/interfaces/Dialog/dialog-confirmation.interface.d.ts +5 -0
  725. package/dist/src/interfaces/Dialog/dialog.interface.d.ts +8 -1
  726. package/dist/src/interfaces/Drawer/drawer.interface.d.ts +4 -0
  727. package/dist/src/interfaces/EmptyState/empty-state.interface.cjs +1 -0
  728. package/dist/src/interfaces/EmptyState/empty-state.interface.d.ts +107 -0
  729. package/dist/src/interfaces/EmptyState/empty-state.interface.js +0 -0
  730. package/dist/src/interfaces/ExpensionPanel/expansion-panel-header.interface.d.ts +5 -2
  731. package/dist/src/interfaces/ExpensionPanel/expansion-panel.interface.d.ts +4 -1
  732. package/dist/src/interfaces/ExpensionPanel/expansion-panels.interface.d.ts +4 -1
  733. package/dist/src/interfaces/Field/field.interface.d.ts +7 -2
  734. package/dist/src/interfaces/FileField/file-field-dragndrop-item.interface.d.ts +2 -3
  735. package/dist/src/interfaces/FileField/file-field-list-item.interface.d.ts +2 -3
  736. package/dist/src/interfaces/FileField/file-field.interface.d.ts +1 -1
  737. package/dist/src/interfaces/Form/form.interface.d.ts +2 -2
  738. package/dist/src/interfaces/Grid/grid-item.interface.cjs +1 -0
  739. package/dist/src/interfaces/Grid/grid-item.interface.d.ts +55 -0
  740. package/dist/src/interfaces/Grid/grid-item.interface.js +0 -0
  741. package/dist/src/interfaces/Grid/grid.interface.cjs +1 -0
  742. package/dist/src/interfaces/Grid/grid.interface.d.ts +121 -0
  743. package/dist/src/interfaces/Grid/grid.interface.js +0 -0
  744. package/dist/src/interfaces/Grids/row.interface.d.ts +2 -2
  745. package/dist/src/interfaces/Icon/icon.interface.d.ts +2 -2
  746. package/dist/src/interfaces/Img/img.interface.d.ts +14 -0
  747. package/dist/src/interfaces/InfiniteScroll/infinite-scroll.interface.d.ts +18 -2
  748. package/dist/src/interfaces/InlineEdit/inline-edit.interface.cjs +1 -0
  749. package/dist/src/interfaces/InlineEdit/inline-edit.interface.d.ts +270 -0
  750. package/dist/src/interfaces/InlineEdit/inline-edit.interface.js +0 -0
  751. package/dist/src/interfaces/Input/input.interface.d.ts +4 -3
  752. package/dist/src/interfaces/ItemGroup/item-group.interface.d.ts +4 -1
  753. package/dist/src/interfaces/Kbd/kbd.interface.d.ts +2 -2
  754. package/dist/src/interfaces/Label/label.interface.d.ts +2 -2
  755. package/dist/src/interfaces/List/list-group.interface.d.ts +8 -0
  756. package/dist/src/interfaces/List/list-item.interface.d.ts +5 -2
  757. package/dist/src/interfaces/List/list-subheader.interface.d.ts +2 -2
  758. package/dist/src/interfaces/List/list.interface.d.ts +16 -0
  759. package/dist/src/interfaces/Main/main.interface.d.ts +2 -2
  760. package/dist/src/interfaces/Masonry/masonry.interface.cjs +1 -0
  761. package/dist/src/interfaces/Masonry/masonry.interface.d.ts +80 -0
  762. package/dist/src/interfaces/Masonry/masonry.interface.js +0 -0
  763. package/dist/src/interfaces/Media/index.cjs +49 -0
  764. package/dist/src/interfaces/Media/index.d.ts +4 -0
  765. package/dist/src/interfaces/Media/index.js +4 -0
  766. package/dist/src/interfaces/Media/media-controller.interface.cjs +1 -0
  767. package/dist/src/interfaces/Media/media-controller.interface.d.ts +159 -0
  768. package/dist/src/interfaces/Media/media-controller.interface.js +0 -0
  769. package/dist/src/interfaces/Media/media-player.interface.cjs +1 -0
  770. package/dist/src/interfaces/Media/media-player.interface.d.ts +121 -0
  771. package/dist/src/interfaces/Media/media-player.interface.js +0 -0
  772. package/dist/src/interfaces/Media/media-scrubber.interface.cjs +1 -0
  773. package/dist/src/interfaces/Media/media-scrubber.interface.d.ts +137 -0
  774. package/dist/src/interfaces/Media/media-scrubber.interface.js +0 -0
  775. package/dist/src/interfaces/Media/media-volume-control.interface.cjs +1 -0
  776. package/dist/src/interfaces/Media/media-volume-control.interface.d.ts +68 -0
  777. package/dist/src/interfaces/Media/media-volume-control.interface.js +0 -0
  778. package/dist/src/interfaces/Menu/menu.interface.d.ts +7 -1
  779. package/dist/src/interfaces/Messages/messages.interface.d.ts +2 -2
  780. package/dist/src/interfaces/NumberField/number-field.interface.d.ts +3 -3
  781. package/dist/src/interfaces/NumberFormat/number-format.interface.cjs +1 -0
  782. package/dist/src/interfaces/NumberFormat/number-format.interface.d.ts +161 -0
  783. package/dist/src/interfaces/NumberFormat/number-format.interface.js +0 -0
  784. package/dist/src/interfaces/Nuxt/nuxt-module.interface.d.ts +55 -15
  785. package/dist/src/interfaces/OtpInputField/otp-input-field.interface.d.ts +6 -4
  786. package/dist/src/interfaces/Overlay/overlay-scrim.interface.d.ts +8 -1
  787. package/dist/src/interfaces/Overlay/overlay.interface.d.ts +8 -1
  788. package/dist/src/interfaces/Pagination/pagination.interface.d.ts +26 -3
  789. package/dist/src/interfaces/Parallax/parallax.interface.d.ts +2 -2
  790. package/dist/src/interfaces/PasswordField/password-field.interface.d.ts +3 -3
  791. package/dist/src/interfaces/Picker/picker-title.interface.d.ts +2 -2
  792. package/dist/src/interfaces/Picker/picker.interface.d.ts +2 -2
  793. package/dist/src/interfaces/Progress/progress.interface.d.ts +8 -2
  794. package/dist/src/interfaces/QrCode/qr-code-logo.interface.cjs +1 -0
  795. package/dist/src/interfaces/QrCode/qr-code-logo.interface.d.ts +47 -0
  796. package/dist/src/interfaces/QrCode/qr-code-logo.interface.js +0 -0
  797. package/dist/src/interfaces/QrCode/qr-code.interface.cjs +1 -0
  798. package/dist/src/interfaces/QrCode/qr-code.interface.d.ts +152 -0
  799. package/dist/src/interfaces/QrCode/qr-code.interface.js +0 -0
  800. package/dist/src/interfaces/Radio/radio-btn.interface.d.ts +4 -1
  801. package/dist/src/interfaces/Radio/radio.interface.d.ts +4 -1
  802. package/dist/src/interfaces/RatingField/rating-field-item.interface.d.ts +9 -2
  803. package/dist/src/interfaces/RatingField/rating-field.interface.d.ts +5 -2
  804. package/dist/src/interfaces/Select/select.interface.d.ts +9 -1
  805. package/dist/src/interfaces/SelectionControl/selection-control-group.interface.d.ts +2 -1
  806. package/dist/src/interfaces/SelectionControl/selection-control.interface.d.ts +23 -5
  807. package/dist/src/interfaces/Sheet/sheet.interface.d.ts +2 -2
  808. package/dist/src/interfaces/Slide/slide-group.interface.d.ts +4 -1
  809. package/dist/src/interfaces/SliderField/slider-field-track.interface.d.ts +17 -0
  810. package/dist/src/interfaces/SliderField/slider-field.interface.d.ts +77 -59
  811. package/dist/src/interfaces/Snackbar/snackbar-group-item.interface.cjs +1 -0
  812. package/dist/src/interfaces/{SnackbarStack/snackbar-stack-item.interface.d.ts → Snackbar/snackbar-group-item.interface.d.ts} +5 -5
  813. package/dist/src/interfaces/Snackbar/snackbar-group-item.interface.js +0 -0
  814. package/dist/src/interfaces/Snackbar/snackbar-group.interface.cjs +1 -0
  815. package/dist/src/interfaces/{SnackbarStack/snackbar-stack.interface.d.ts → Snackbar/snackbar-group.interface.d.ts} +7 -7
  816. package/dist/src/interfaces/Snackbar/snackbar-group.interface.js +0 -0
  817. package/dist/src/interfaces/Snackbar/snackbar-item.interface.cjs +1 -0
  818. package/dist/src/interfaces/Snackbar/snackbar-item.interface.d.ts +79 -0
  819. package/dist/src/interfaces/Snackbar/snackbar-item.interface.js +0 -0
  820. package/dist/src/interfaces/Stepper/stepper.interface.d.ts +2 -2
  821. package/dist/src/interfaces/Switch/switch-track.interface.d.ts +8 -0
  822. package/dist/src/interfaces/Switch/switch.interface.d.ts +5 -1
  823. package/dist/src/interfaces/SystemBar/system-bar.interface.d.ts +2 -2
  824. package/dist/src/interfaces/Table/table.interface.d.ts +5 -2
  825. package/dist/src/interfaces/Tabs/tab-panels.interface.d.ts +4 -1
  826. package/dist/src/interfaces/Tabs/tab.interface.d.ts +7 -2
  827. package/dist/src/interfaces/Tabs/tabs.interface.d.ts +4 -1
  828. package/dist/src/interfaces/TextField/text-field.interface.d.ts +1 -1
  829. package/dist/src/interfaces/TextMask/text-mask.interface.cjs +1 -0
  830. package/dist/src/interfaces/TextMask/text-mask.interface.d.ts +86 -0
  831. package/dist/src/interfaces/TextMask/text-mask.interface.js +0 -0
  832. package/dist/src/interfaces/TextareaField/textarea-field.interface.d.ts +3 -3
  833. package/dist/src/interfaces/Theme/origam-theme.interface.cjs +1 -0
  834. package/dist/src/interfaces/Theme/origam-theme.interface.d.ts +114 -0
  835. package/dist/src/interfaces/Theme/origam-theme.interface.js +0 -0
  836. package/dist/src/interfaces/Timeline/timeline.interface.d.ts +1 -1
  837. package/dist/src/interfaces/Title/title.interface.d.ts +2 -2
  838. package/dist/src/interfaces/Toolbar/toolbar.interface.d.ts +2 -2
  839. package/dist/src/interfaces/Tooltip/tooltip.interface.d.ts +5 -2
  840. package/dist/src/interfaces/Video/video-track.interface.cjs +1 -0
  841. package/dist/src/interfaces/Video/video-track.interface.d.ts +76 -0
  842. package/dist/src/interfaces/Video/video-track.interface.js +0 -0
  843. package/dist/src/interfaces/Video/video.interface.cjs +1 -0
  844. package/dist/src/interfaces/Video/video.interface.d.ts +317 -0
  845. package/dist/src/interfaces/Video/video.interface.js +0 -0
  846. package/dist/src/interfaces/VirtualScroll/virtual-scroll-item.interface.d.ts +6 -0
  847. package/dist/src/interfaces/Watermark/watermark.interface.cjs +1 -0
  848. package/dist/src/interfaces/Watermark/watermark.interface.d.ts +163 -0
  849. package/dist/src/interfaces/Watermark/watermark.interface.js +0 -0
  850. package/dist/src/interfaces/Window/window-item.interface.d.ts +4 -1
  851. package/dist/src/interfaces/Window/window.interface.d.ts +5 -2
  852. package/dist/src/interfaces/index.cjs +621 -49
  853. package/dist/src/interfaces/index.d.ts +58 -6
  854. package/dist/src/interfaces/index.js +58 -6
  855. package/dist/src/nuxt/module.cjs +78 -8
  856. package/dist/src/nuxt/module.js +81 -9
  857. package/dist/src/nuxt/plugin.client.cjs +28 -10
  858. package/dist/src/nuxt/plugin.client.js +28 -10
  859. package/dist/src/nuxt/plugin.server.cjs +52 -12
  860. package/dist/src/nuxt/plugin.server.js +55 -13
  861. package/dist/src/origam.cjs +39 -2
  862. package/dist/src/origam.d.ts +19 -1
  863. package/dist/src/origam.js +46 -5
  864. package/dist/src/themes/index.cjs +24 -0
  865. package/dist/src/themes/index.d.ts +1 -0
  866. package/dist/src/themes/index.js +1 -0
  867. package/dist/src/themes/origam.theme.cjs +906 -0
  868. package/dist/src/themes/origam.theme.d.ts +4 -0
  869. package/dist/src/themes/origam.theme.js +379 -0
  870. package/dist/src/types/Audio/audio-controls.type.cjs +1 -0
  871. package/dist/src/types/Audio/audio-controls.type.d.ts +12 -0
  872. package/dist/src/types/Audio/audio-controls.type.js +0 -0
  873. package/dist/src/types/Audio/audio-loop-mode.type.cjs +1 -0
  874. package/dist/src/types/Audio/audio-loop-mode.type.d.ts +5 -0
  875. package/dist/src/types/Audio/audio-loop-mode.type.js +0 -0
  876. package/dist/src/types/Audio/audio-variant.type.cjs +1 -0
  877. package/dist/src/types/Audio/audio-variant.type.d.ts +7 -0
  878. package/dist/src/types/Audio/audio-variant.type.js +0 -0
  879. package/dist/src/types/Audio/cover-position.type.cjs +1 -0
  880. package/dist/src/types/Audio/cover-position.type.d.ts +6 -0
  881. package/dist/src/types/Audio/cover-position.type.js +0 -0
  882. package/dist/src/types/Blockquote/blockquote-align.type.cjs +1 -0
  883. package/dist/src/types/Blockquote/blockquote-align.type.d.ts +5 -0
  884. package/dist/src/types/Blockquote/blockquote-align.type.js +0 -0
  885. package/dist/src/types/Blockquote/blockquote-lang.type.cjs +1 -0
  886. package/dist/src/types/Blockquote/blockquote-lang.type.d.ts +18 -0
  887. package/dist/src/types/Blockquote/blockquote-lang.type.js +0 -0
  888. package/dist/src/types/Blockquote/blockquote-variant.type.cjs +1 -0
  889. package/dist/src/types/Blockquote/blockquote-variant.type.d.ts +17 -0
  890. package/dist/src/types/Blockquote/blockquote-variant.type.js +0 -0
  891. package/dist/src/types/BottomNav/bottom-nav.type.d.ts +2 -0
  892. package/dist/src/types/Calendar/calendar-time-format.type.cjs +1 -0
  893. package/dist/src/types/Calendar/calendar-time-format.type.d.ts +13 -0
  894. package/dist/src/types/Calendar/calendar-time-format.type.js +0 -0
  895. package/dist/src/types/Calendar/calendar-view.type.cjs +1 -0
  896. package/dist/src/types/Calendar/calendar-view.type.d.ts +10 -0
  897. package/dist/src/types/Calendar/calendar-view.type.js +0 -0
  898. package/dist/src/types/Chart/chart-bullet-orientation.type.cjs +1 -0
  899. package/dist/src/types/Chart/chart-bullet-orientation.type.d.ts +1 -0
  900. package/dist/src/types/Chart/chart-bullet-orientation.type.js +0 -0
  901. package/dist/src/types/Chart/chart-cartesian-kind.type.cjs +1 -0
  902. package/dist/src/types/Chart/chart-cartesian-kind.type.d.ts +18 -0
  903. package/dist/src/types/Chart/chart-cartesian-kind.type.js +0 -0
  904. package/dist/src/types/Chart/chart-honeycomb-color-mode.type.cjs +1 -0
  905. package/dist/src/types/Chart/chart-honeycomb-color-mode.type.d.ts +2 -0
  906. package/dist/src/types/Chart/chart-honeycomb-color-mode.type.js +0 -0
  907. package/dist/src/types/Chart/chart-honeycomb-orientation.type.cjs +1 -0
  908. package/dist/src/types/Chart/chart-honeycomb-orientation.type.d.ts +2 -0
  909. package/dist/src/types/Chart/chart-honeycomb-orientation.type.js +0 -0
  910. package/dist/src/types/Chart/chart-item.type.cjs +1 -0
  911. package/dist/src/types/Chart/chart-item.type.d.ts +9 -0
  912. package/dist/src/types/Chart/chart-item.type.js +0 -0
  913. package/dist/src/types/Chart/chart-legend-position.type.cjs +1 -0
  914. package/dist/src/types/Chart/chart-legend-position.type.d.ts +6 -0
  915. package/dist/src/types/Chart/chart-legend-position.type.js +0 -0
  916. package/dist/src/types/Chart/chart-map-mode.type.cjs +1 -0
  917. package/dist/src/types/Chart/chart-map-mode.type.d.ts +8 -0
  918. package/dist/src/types/Chart/chart-map-mode.type.js +0 -0
  919. package/dist/src/types/Chart/chart-pictorial-direction.type.cjs +1 -0
  920. package/dist/src/types/Chart/chart-pictorial-direction.type.d.ts +1 -0
  921. package/dist/src/types/Chart/chart-pictorial-direction.type.js +0 -0
  922. package/dist/src/types/Chart/chart-pictorial-mode.type.cjs +1 -0
  923. package/dist/src/types/Chart/chart-pictorial-mode.type.d.ts +1 -0
  924. package/dist/src/types/Chart/chart-pictorial-mode.type.js +0 -0
  925. package/dist/src/types/Chart/chart-polar-kind.type.cjs +1 -0
  926. package/dist/src/types/Chart/chart-polar-kind.type.d.ts +14 -0
  927. package/dist/src/types/Chart/chart-polar-kind.type.js +0 -0
  928. package/dist/src/types/Chart/chart-pyramid-kind.type.cjs +1 -0
  929. package/dist/src/types/Chart/chart-pyramid-kind.type.d.ts +9 -0
  930. package/dist/src/types/Chart/chart-pyramid-kind.type.js +0 -0
  931. package/dist/src/types/Chart/chart-smoothing.type.cjs +1 -0
  932. package/dist/src/types/Chart/chart-smoothing.type.d.ts +17 -0
  933. package/dist/src/types/Chart/chart-smoothing.type.js +0 -0
  934. package/dist/src/types/Chart/chart-sparkline-kind.type.cjs +1 -0
  935. package/dist/src/types/Chart/chart-sparkline-kind.type.d.ts +10 -0
  936. package/dist/src/types/Chart/chart-sparkline-kind.type.js +0 -0
  937. package/dist/src/types/Chart/chart-stacking.type.cjs +1 -0
  938. package/dist/src/types/Chart/chart-stacking.type.d.ts +9 -0
  939. package/dist/src/types/Chart/chart-stacking.type.js +0 -0
  940. package/dist/src/types/Chart/chart-streamgraph-offset.type.cjs +1 -0
  941. package/dist/src/types/Chart/chart-streamgraph-offset.type.d.ts +1 -0
  942. package/dist/src/types/Chart/chart-streamgraph-offset.type.js +0 -0
  943. package/dist/src/types/Chart/chart-treemap-algorithm.type.cjs +1 -0
  944. package/dist/src/types/Chart/chart-treemap-algorithm.type.d.ts +12 -0
  945. package/dist/src/types/Chart/chart-treemap-algorithm.type.js +0 -0
  946. package/dist/src/types/Chart/chart-type.type.cjs +1 -0
  947. package/dist/src/types/Chart/chart-type.type.d.ts +7 -0
  948. package/dist/src/types/Chart/chart-type.type.js +0 -0
  949. package/dist/src/types/Chart/chart-word-cloud-rotation.type.cjs +1 -0
  950. package/dist/src/types/Chart/chart-word-cloud-rotation.type.d.ts +8 -0
  951. package/dist/src/types/Chart/chart-word-cloud-rotation.type.js +0 -0
  952. package/dist/src/types/Commons/color.type.d.ts +18 -1
  953. package/dist/src/types/Commons/font-family.type.cjs +1 -0
  954. package/dist/src/types/Commons/font-family.type.d.ts +5 -0
  955. package/dist/src/types/Commons/font-family.type.js +0 -0
  956. package/dist/src/types/Commons/font-size.type.cjs +1 -0
  957. package/dist/src/types/Commons/font-size.type.d.ts +6 -0
  958. package/dist/src/types/Commons/font-size.type.js +0 -0
  959. package/dist/src/types/Commons/font-weight.type.cjs +1 -0
  960. package/dist/src/types/Commons/font-weight.type.d.ts +5 -0
  961. package/dist/src/types/Commons/font-weight.type.js +0 -0
  962. package/dist/src/types/Commons/letter-spacing.type.cjs +1 -0
  963. package/dist/src/types/Commons/letter-spacing.type.d.ts +5 -0
  964. package/dist/src/types/Commons/letter-spacing.type.js +0 -0
  965. package/dist/src/types/Commons/line-height.type.cjs +1 -0
  966. package/dist/src/types/Commons/line-height.type.d.ts +5 -0
  967. package/dist/src/types/Commons/line-height.type.js +0 -0
  968. package/dist/src/types/Commons/mode.type.d.ts +1 -1
  969. package/dist/src/types/EmptyState/empty-state-align.type.cjs +1 -0
  970. package/dist/src/types/EmptyState/empty-state-align.type.d.ts +10 -0
  971. package/dist/src/types/EmptyState/empty-state-align.type.js +0 -0
  972. package/dist/src/types/EmptyState/empty-state-preset.type.cjs +1 -0
  973. package/dist/src/types/EmptyState/empty-state-preset.type.d.ts +14 -0
  974. package/dist/src/types/EmptyState/empty-state-preset.type.js +0 -0
  975. package/dist/src/types/EmptyState/empty-state-size.type.cjs +1 -0
  976. package/dist/src/types/EmptyState/empty-state-size.type.d.ts +9 -0
  977. package/dist/src/types/EmptyState/empty-state-size.type.js +0 -0
  978. package/dist/src/types/Grid/grid-align.type.cjs +1 -0
  979. package/dist/src/types/Grid/grid-align.type.d.ts +28 -0
  980. package/dist/src/types/Grid/grid-align.type.js +0 -0
  981. package/dist/src/types/Grid/grid-flow.type.cjs +1 -0
  982. package/dist/src/types/Grid/grid-flow.type.d.ts +10 -0
  983. package/dist/src/types/Grid/grid-flow.type.js +0 -0
  984. package/dist/src/types/InlineEdit/inline-edit-input-type.type.cjs +1 -0
  985. package/dist/src/types/InlineEdit/inline-edit-input-type.type.d.ts +7 -0
  986. package/dist/src/types/InlineEdit/inline-edit-input-type.type.js +0 -0
  987. package/dist/src/types/Masonry/masonry-align.type.cjs +1 -0
  988. package/dist/src/types/Masonry/masonry-align.type.d.ts +16 -0
  989. package/dist/src/types/Masonry/masonry-align.type.js +0 -0
  990. package/dist/src/types/Media/index.cjs +27 -0
  991. package/dist/src/types/Media/index.d.ts +2 -0
  992. package/dist/src/types/Media/index.js +2 -0
  993. package/dist/src/types/Media/media-scrubber-orientation.type.cjs +1 -0
  994. package/dist/src/types/Media/media-scrubber-orientation.type.d.ts +6 -0
  995. package/dist/src/types/Media/media-scrubber-orientation.type.js +0 -0
  996. package/dist/src/types/Media/quality-option.type.cjs +1 -0
  997. package/dist/src/types/Media/quality-option.type.d.ts +25 -0
  998. package/dist/src/types/Media/quality-option.type.js +0 -0
  999. package/dist/src/types/NumberFormat/number-format-format.type.cjs +1 -0
  1000. package/dist/src/types/NumberFormat/number-format-format.type.d.ts +56 -0
  1001. package/dist/src/types/NumberFormat/number-format-format.type.js +0 -0
  1002. package/dist/src/types/QrCode/qr-code-error-correction.type.cjs +1 -0
  1003. package/dist/src/types/QrCode/qr-code-error-correction.type.d.ts +22 -0
  1004. package/dist/src/types/QrCode/qr-code-error-correction.type.js +0 -0
  1005. package/dist/src/types/SliderField/slider-field-variant.type.cjs +1 -0
  1006. package/dist/src/types/SliderField/slider-field-variant.type.d.ts +10 -0
  1007. package/dist/src/types/SliderField/slider-field-variant.type.js +0 -0
  1008. package/dist/src/types/Snackbar/snackbar-group-direction.type.cjs +1 -0
  1009. package/dist/src/types/{SnackbarStack/snackbar-stack-direction.type.d.ts → Snackbar/snackbar-group-direction.type.d.ts} +2 -2
  1010. package/dist/src/types/Snackbar/snackbar-group-direction.type.js +0 -0
  1011. package/dist/src/types/Snackbar/snackbar-group-location.type.cjs +1 -0
  1012. package/dist/src/types/{SnackbarStack/snackbar-stack-location.type.d.ts → Snackbar/snackbar-group-location.type.d.ts} +2 -2
  1013. package/dist/src/types/Snackbar/snackbar-group-location.type.js +0 -0
  1014. package/dist/src/types/Snackbar/snackbar-group.type.cjs +1 -0
  1015. package/dist/src/types/Snackbar/snackbar-group.type.d.ts +2 -0
  1016. package/dist/src/types/Snackbar/snackbar-group.type.js +0 -0
  1017. package/dist/src/types/TextMask/text-mask-animation.type.cjs +1 -0
  1018. package/dist/src/types/TextMask/text-mask-animation.type.d.ts +16 -0
  1019. package/dist/src/types/TextMask/text-mask-animation.type.js +0 -0
  1020. package/dist/src/types/TextMask/text-mask.type.cjs +1 -0
  1021. package/dist/src/types/TextMask/text-mask.type.d.ts +2 -0
  1022. package/dist/src/types/TextMask/text-mask.type.js +0 -0
  1023. package/dist/src/types/Theme/installed-theme.type.cjs +1 -0
  1024. package/dist/src/types/Theme/installed-theme.type.d.ts +31 -0
  1025. package/dist/src/types/Theme/installed-theme.type.js +0 -0
  1026. package/dist/src/types/Theme/semantic-tree.type.cjs +1 -0
  1027. package/dist/src/types/Theme/semantic-tree.type.d.ts +48 -0
  1028. package/dist/src/types/Theme/semantic-tree.type.js +0 -0
  1029. package/dist/src/types/Theme/theme.type.d.ts +27 -6
  1030. package/dist/src/types/Theme/token-tree.type.cjs +1 -0
  1031. package/dist/src/types/Theme/token-tree.type.d.ts +10 -0
  1032. package/dist/src/types/Theme/token-tree.type.js +0 -0
  1033. package/dist/src/types/Video/video-controls.type.cjs +1 -0
  1034. package/dist/src/types/Video/video-controls.type.d.ts +17 -0
  1035. package/dist/src/types/Video/video-controls.type.js +0 -0
  1036. package/dist/src/types/Video/video-track-kind.type.cjs +1 -0
  1037. package/dist/src/types/Video/video-track-kind.type.d.ts +11 -0
  1038. package/dist/src/types/Video/video-track-kind.type.js +0 -0
  1039. package/dist/src/types/index.cjs +555 -38
  1040. package/dist/src/types/index.d.ts +53 -6
  1041. package/dist/src/types/index.js +53 -6
  1042. package/dist/src/types/tokens.type.d.ts +1 -1
  1043. package/dist/src/utils/Bracket/bracket-surface.util.cjs +106 -0
  1044. package/dist/src/utils/Bracket/bracket-surface.util.d.ts +47 -0
  1045. package/dist/src/utils/Bracket/bracket-surface.util.js +88 -0
  1046. package/dist/src/utils/Calendar/date.util.cjs +181 -0
  1047. package/dist/src/utils/Calendar/date.util.d.ts +96 -0
  1048. package/dist/src/utils/Calendar/date.util.js +114 -0
  1049. package/dist/src/utils/Calendar/rrule.util.cjs +105 -0
  1050. package/dist/src/utils/Calendar/rrule.util.d.ts +49 -0
  1051. package/dist/src/utils/Calendar/rrule.util.js +92 -0
  1052. package/dist/src/utils/Chart/box-plot.util.cjs +62 -0
  1053. package/dist/src/utils/Chart/box-plot.util.d.ts +32 -0
  1054. package/dist/src/utils/Chart/box-plot.util.js +47 -0
  1055. package/dist/src/utils/Chart/mercator.util.cjs +53 -0
  1056. package/dist/src/utils/Chart/mercator.util.d.ts +51 -0
  1057. package/dist/src/utils/Chart/mercator.util.js +44 -0
  1058. package/dist/src/utils/Chart/path.util.cjs +150 -0
  1059. package/dist/src/utils/Chart/path.util.d.ts +116 -0
  1060. package/dist/src/utils/Chart/path.util.js +143 -0
  1061. package/dist/src/utils/Commons/color.util.cjs +4 -2
  1062. package/dist/src/utils/Commons/color.util.js +4 -2
  1063. package/dist/src/utils/Commons/commons.util.cjs +3 -2
  1064. package/dist/src/utils/Commons/commons.util.js +3 -2
  1065. package/dist/src/utils/Commons/dom.util.d.ts +1 -1
  1066. package/dist/src/utils/Commons/elevation.util.cjs +1 -1
  1067. package/dist/src/utils/Commons/elevation.util.js +1 -1
  1068. package/dist/src/utils/Commons/forwardRefs.util.cjs +1 -1
  1069. package/dist/src/utils/Commons/forwardRefs.util.js +1 -1
  1070. package/dist/src/utils/Commons/gradient.util.cjs +74 -0
  1071. package/dist/src/utils/Commons/gradient.util.d.ts +36 -0
  1072. package/dist/src/utils/Commons/gradient.util.js +66 -0
  1073. package/dist/src/utils/Commons/hover.util.cjs +5 -1
  1074. package/dist/src/utils/Commons/hover.util.js +5 -1
  1075. package/dist/src/utils/Commons/ripple.util.cjs +1 -2
  1076. package/dist/src/utils/Commons/ripple.util.js +2 -3
  1077. package/dist/src/utils/Commons/rounded.util.cjs +5 -0
  1078. package/dist/src/utils/Commons/rounded.util.d.ts +9 -0
  1079. package/dist/src/utils/Commons/rounded.util.js +4 -0
  1080. package/dist/src/utils/DataTable/headers.util.cjs +1 -1
  1081. package/dist/src/utils/DataTable/headers.util.js +1 -1
  1082. package/dist/src/utils/DataTable/sort.util.cjs +2 -2
  1083. package/dist/src/utils/DataTable/sort.util.js +2 -2
  1084. package/dist/src/utils/List/list-item.util.d.ts +7 -0
  1085. package/dist/src/utils/Media/format-time.util.cjs +16 -0
  1086. package/dist/src/utils/Media/format-time.util.d.ts +16 -0
  1087. package/dist/src/utils/Media/format-time.util.js +10 -0
  1088. package/dist/src/utils/QrCode/qr-code-adapters.util.cjs +34 -0
  1089. package/dist/src/utils/QrCode/qr-code-adapters.util.d.ts +49 -0
  1090. package/dist/src/utils/QrCode/qr-code-adapters.util.js +27 -0
  1091. package/dist/src/utils/Theme/apply-theme.util.cjs +148 -0
  1092. package/dist/src/utils/Theme/apply-theme.util.d.ts +65 -0
  1093. package/dist/src/utils/Theme/apply-theme.util.js +125 -0
  1094. package/dist/src/utils/Theme/token-name.util.cjs +47 -0
  1095. package/dist/src/utils/Theme/token-name.util.d.ts +54 -0
  1096. package/dist/src/utils/Theme/token-name.util.js +55 -0
  1097. package/dist/src/utils/index.cjs +77 -22
  1098. package/dist/src/utils/index.d.ts +7 -2
  1099. package/dist/src/utils/index.js +7 -2
  1100. package/package.json +18 -52
  1101. package/CHANGELOG.md +0 -650
  1102. package/README.md +0 -275
  1103. package/dist/src/App.vue +0 -25
  1104. package/dist/src/components/SliderField/OrigamSliderFieldThumb.vue +0 -384
  1105. package/dist/src/components/SnackbarStack/OrigamSnackbarStack.vue +0 -457
  1106. package/dist/src/components/SnackbarStack/index.cjs +0 -13
  1107. package/dist/src/components/SnackbarStack/index.d.ts +0 -1
  1108. package/dist/src/components/SnackbarStack/index.js +0 -1
  1109. package/dist/src/consts/SliderField/slider-field.const.cjs +0 -7
  1110. package/dist/src/consts/SliderField/slider-field.const.d.ts +0 -3
  1111. package/dist/src/consts/SliderField/slider-field.const.js +0 -1
  1112. package/dist/src/consts/SnackbarStack/snackbar-stack.const.cjs +0 -12
  1113. package/dist/src/consts/SnackbarStack/snackbar-stack.const.d.ts +0 -33
  1114. package/dist/src/consts/SnackbarStack/snackbar-stack.const.js +0 -18
  1115. package/dist/src/enums/Charts/chart.enum.cjs +0 -12
  1116. package/dist/src/enums/Charts/chart.enum.d.ts +0 -5
  1117. package/dist/src/enums/Charts/chart.enum.js +0 -6
  1118. package/dist/src/interfaces/Charts/chart-bar.interface.d.ts +0 -4
  1119. package/dist/src/interfaces/Charts/chart-line.interface.d.ts +0 -15
  1120. package/dist/src/interfaces/Charts/chart.interface.d.ts +0 -21
  1121. package/dist/src/interfaces/SliderField/slider-field-thumb.interface.d.ts +0 -12
  1122. package/dist/src/main.cjs +0 -7
  1123. package/dist/src/main.d.ts +0 -1
  1124. package/dist/src/main.js +0 -4
  1125. package/dist/src/types/Charts/chart.type.d.ts +0 -5
  1126. package/dist/src/types/SliderField/slider-field-thumb.type.d.ts +0 -2
  1127. package/dist/src/types/SnackbarStack/snackbar-stack.type.d.ts +0 -2
  1128. package/dist/src/utils/Charts/chart.util.cjs +0 -50
  1129. package/dist/src/utils/Charts/chart.util.d.ts +0 -30
  1130. package/dist/src/utils/Charts/chart.util.js +0 -40
  1131. package/dist/src/utils/SliderField/slider-field.util.cjs +0 -12
  1132. package/dist/src/utils/SliderField/slider-field.util.d.ts +0 -8
  1133. package/dist/src/utils/SliderField/slider-field.util.js +0 -6
  1134. /package/dist/src/interfaces/{Charts/chart-bar.interface.cjs → App/app.interface.cjs} +0 -0
  1135. /package/dist/src/interfaces/{Charts/chart-bar.interface.js → App/app.interface.js} +0 -0
  1136. /package/dist/src/interfaces/{Charts/chart-line.interface.cjs → Audio/audio-player.interface.cjs} +0 -0
  1137. /package/dist/src/interfaces/{Charts/chart-line.interface.js → Audio/audio-player.interface.js} +0 -0
  1138. /package/dist/src/interfaces/{Charts/chart.interface.cjs → Blockquote/blockquote.interface.cjs} +0 -0
  1139. /package/dist/src/interfaces/{Charts/chart.interface.js → Blockquote/blockquote.interface.js} +0 -0
  1140. /package/dist/src/interfaces/{SliderField/slider-field-thumb.interface.cjs → Calendar/calendar.interface.cjs} +0 -0
  1141. /package/dist/src/interfaces/{SliderField/slider-field-thumb.interface.js → Calendar/calendar.interface.js} +0 -0
  1142. /package/dist/src/interfaces/{SnackbarStack/snackbar-stack-item.interface.cjs → Calendar/event.interface.cjs} +0 -0
  1143. /package/dist/src/interfaces/{SnackbarStack/snackbar-stack-item.interface.js → Calendar/event.interface.js} +0 -0
  1144. /package/dist/src/interfaces/{SnackbarStack/snackbar-stack.interface.cjs → Chart/chart-annotation.interface.cjs} +0 -0
  1145. /package/dist/src/interfaces/{SnackbarStack/snackbar-stack.interface.js → Chart/chart-annotation.interface.js} +0 -0
  1146. /package/dist/src/{types/Charts/chart.type.cjs → interfaces/Chart/chart-axis.interface.cjs} +0 -0
  1147. /package/dist/src/{types/Charts/chart.type.js → interfaces/Chart/chart-axis.interface.js} +0 -0
  1148. /package/dist/src/{types/SliderField/slider-field-thumb.type.cjs → interfaces/Chart/chart-base.interface.cjs} +0 -0
  1149. /package/dist/src/{types/SliderField/slider-field-thumb.type.js → interfaces/Chart/chart-base.interface.js} +0 -0
  1150. /package/dist/src/{types/SnackbarStack/snackbar-stack-direction.type.cjs → interfaces/Chart/chart-box-plot.interface.cjs} +0 -0
  1151. /package/dist/src/{types/SnackbarStack/snackbar-stack-direction.type.js → interfaces/Chart/chart-box-plot.interface.js} +0 -0
  1152. /package/dist/src/{types/SnackbarStack/snackbar-stack-location.type.cjs → interfaces/Chart/chart-bullet.interface.cjs} +0 -0
  1153. /package/dist/src/{types/SnackbarStack/snackbar-stack-location.type.js → interfaces/Chart/chart-bullet.interface.js} +0 -0
  1154. /package/dist/src/{types/SnackbarStack/snackbar-stack.type.cjs → interfaces/Chart/chart-candlestick.interface.cjs} +0 -0
  1155. /package/dist/src/{types/SnackbarStack/snackbar-stack.type.js → interfaces/Chart/chart-candlestick.interface.js} +0 -0
@@ -0,0 +1,1536 @@
1
+ <template>
2
+ <article
3
+ class="origam-audio"
4
+ :class="rootClasses"
5
+ :style="rootStyles"
6
+ data-cy="origam-audio"
7
+ >
8
+ <audio
9
+ ref="audioRef"
10
+ class="origam-audio__el"
11
+ :src="singleSrc"
12
+ :autoplay="resolvedAutoplay"
13
+ :muted="resolvedMuted"
14
+ :loop="audioLoopAttr"
15
+ :controls="isNativeControls"
16
+ :preload="preload"
17
+ :crossorigin="crossorigin"
18
+ data-cy="origam-audio-el"
19
+ @play="emit('play')"
20
+ @pause="emit('pause')"
21
+ @ended="onNativeEnded"
22
+ @timeupdate="onTimeUpdate"
23
+ @volumechange="onVolumeChange"
24
+ @loadedmetadata="onLoadedMetadata"
25
+ @error="onErrorEvent"
26
+ >
27
+ <source
28
+ v-for="source in resolvedSources"
29
+ :key="source.src"
30
+ :src="source.src"
31
+ :type="source.type"
32
+ />
33
+ <track
34
+ v-for="trackItem in resolvedTracks"
35
+ :key="`${ trackItem.kind }-${ trackItem.srclang }`"
36
+ :kind="trackItem.kind"
37
+ :src="trackItem.src"
38
+ :srclang="trackItem.srclang"
39
+ :label="trackItem.label || trackItem.srclang.toUpperCase()"
40
+ :default="trackItem.default || undefined"
41
+ />
42
+ </audio>
43
+
44
+ <origam-media-controller
45
+ v-if="isCustomControls"
46
+ v-model:loop-mode="internalLoopMode"
47
+ v-model:shuffle="internalShuffle"
48
+ :state="state"
49
+ :methods="methods"
50
+ :playback-rates="playbackRates"
51
+ :allow-remote-playback="allowRemotePlayback"
52
+ :downloadable="downloadable"
53
+ :download-url="downloadUrl"
54
+ :download-filename="downloadFilename"
55
+ :show-previous="hasPlaylist"
56
+ :show-next="hasPlaylist"
57
+ :show-loop="true"
58
+ :show-shuffle="hasPlaylist"
59
+ class="origam-audio__controller"
60
+ data-cy="origam-audio-controls"
61
+ @previous="onPrevious"
62
+ @next="onNext"
63
+ @download="onDownloadClick"
64
+ >
65
+ <template #header>
66
+ <slot name="header">
67
+ <div
68
+ v-if="hasCover || hasMetadata"
69
+ class="origam-audio__header"
70
+ :class="{ 'origam-audio__header--no-cover': !hasCover }"
71
+ >
72
+ <figure
73
+ v-if="hasCover"
74
+ class="origam-audio__cover"
75
+ data-cy="origam-audio-cover-figure"
76
+ >
77
+ <slot name="cover">
78
+ <img
79
+ :src="resolvedCover!"
80
+ :alt="coverAlt"
81
+ :width="coverSizePx"
82
+ :height="coverSizePx"
83
+ class="origam-audio__cover-img"
84
+ data-cy="origam-audio-cover"
85
+ loading="lazy"
86
+ decoding="async"
87
+ />
88
+ </slot>
89
+ </figure>
90
+
91
+ <header
92
+ v-if="hasMetadata"
93
+ class="origam-audio__metadata"
94
+ data-cy="origam-audio-metadata"
95
+ >
96
+ <slot name="metadata">
97
+ <slot name="title">
98
+ <strong
99
+ v-if="resolvedTitle"
100
+ class="origam-audio__title"
101
+ data-cy="origam-audio-title"
102
+ :style="typographyTitleStyles"
103
+ >{{ resolvedTitle }}</strong>
104
+ </slot>
105
+ <span
106
+ v-if="hasMetaLine"
107
+ class="origam-audio__meta"
108
+ :style="typographyMetaStyles"
109
+ >
110
+ <span
111
+ v-if="resolvedArtist"
112
+ class="origam-audio__artist"
113
+ data-cy="origam-audio-artist"
114
+ >{{ resolvedArtist }}</span>
115
+ <span
116
+ v-if="resolvedAlbum"
117
+ class="origam-audio__album"
118
+ data-cy="origam-audio-album"
119
+ >{{ resolvedAlbum }}</span>
120
+ <span
121
+ v-if="hasDurationLabel"
122
+ class="origam-audio__duration"
123
+ data-cy="origam-audio-duration"
124
+ >{{ formattedDuration }}</span>
125
+ </span>
126
+ </slot>
127
+ </header>
128
+ </div>
129
+ </slot>
130
+ </template>
131
+
132
+ <template #waveform>
133
+ <slot
134
+ name="waveform"
135
+ :peaks="peaks"
136
+ :current-time="state.currentTime.value"
137
+ :duration="state.duration.value"
138
+ >
139
+ <origam-slider-field
140
+ :model-value="state.currentTime.value"
141
+ :max="scrubberMax"
142
+ :step="0.1"
143
+ :buffered="state.buffered.value"
144
+ :peaks="isCompactVariant ? undefined : displayedPeaks"
145
+ :aria-label="waveformAriaLabel"
146
+ :variant="isCompactVariant ? 'timer' : 'audio'"
147
+ show-thumb-on-hover-only
148
+ show-hover-tooltip
149
+ :format-hover-tooltip="formatTimeTooltip"
150
+ class="origam-audio__waveform-slider"
151
+ :style="{ color: 'inherit' }"
152
+ data-cy="origam-audio-waveform-slider"
153
+ @update:model-value="onWaveformSeek"
154
+ />
155
+ </slot>
156
+ </template>
157
+
158
+ <template
159
+ v-if="hasPlaylist"
160
+ #footer
161
+ >
162
+ <slot
163
+ name="playlist"
164
+ :tracks="props.playlist"
165
+ :current-index="safeTrackIndex"
166
+ :select="setActiveTrack"
167
+ >
168
+ <origam-list
169
+ class="origam-audio__playlist"
170
+ data-cy="origam-audio-playlist"
171
+ >
172
+ <origam-list-item
173
+ v-for="(track, index) in props.playlist"
174
+ :key="track.id ?? index"
175
+ :active="index === safeTrackIndex"
176
+ :title="track.title ?? `Track ${ index + 1 }`"
177
+ :subtitle="track.artist"
178
+ :prepend-avatar="track.cover"
179
+ class="origam-audio__playlist-item"
180
+ :data-cy="`origam-audio-playlist-item-${ index }`"
181
+ @click="setActiveTrack(index)"
182
+ >
183
+ <template
184
+ v-if="track.duration"
185
+ #append
186
+ >
187
+ <span class="origam-audio__playlist-duration">{{ formatMediaTime(track.duration) }}</span>
188
+ </template>
189
+ </origam-list-item>
190
+ </origam-list>
191
+ </slot>
192
+ </template>
193
+ </origam-media-controller>
194
+
195
+ <div
196
+ v-if="state.loading.value && !state.error.value"
197
+ class="origam-audio__loading"
198
+ role="status"
199
+ :aria-label="loadingLabel"
200
+ data-cy="origam-audio-loading"
201
+ :style="typographyLoadingStyles"
202
+ >
203
+ <slot name="loading">
204
+ <origam-icon
205
+ :icon="ICONS.LOADING"
206
+ class="origam-audio__loading-icon"
207
+ aria-hidden="true"
208
+ />
209
+ </slot>
210
+ </div>
211
+
212
+ <div
213
+ v-if="state.error.value"
214
+ class="origam-audio__error"
215
+ role="alert"
216
+ data-cy="origam-audio-error"
217
+ :style="typographyErrorStyles"
218
+ >
219
+ <slot
220
+ name="error"
221
+ :error="state.error.value"
222
+ >
223
+ <origam-icon
224
+ :icon="ICONS.ALERT"
225
+ class="origam-audio__error-icon"
226
+ aria-hidden="true"
227
+ />
228
+ <span class="origam-audio__error-msg">{{ errorMessage }}</span>
229
+ </slot>
230
+ </div>
231
+ </article>
232
+ </template>
233
+
234
+ <script lang="ts" setup>
235
+ import {
236
+ computed,
237
+ nextTick,
238
+ ref,
239
+ watch
240
+ } from "vue";
241
+ import { OrigamIcon } from "../Icon";
242
+ import { OrigamList, OrigamListItem } from "../List";
243
+ import { OrigamMediaController } from "../Media";
244
+ import { OrigamSliderField } from "../SliderField";
245
+ import {
246
+ useBorder,
247
+ useColorEffect,
248
+ useDimension,
249
+ useElevation,
250
+ useLocale,
251
+ useMargin,
252
+ usePadding,
253
+ usePosition,
254
+ useRounded,
255
+ useTypography
256
+ } from "../../composables";
257
+ import { useAudioPlayer } from "../../composables/Audio/use-audio-player.composable";
258
+ import { useWaveform } from "../../composables/Audio/use-waveform.composable";
259
+ import { shouldSuppressAutoplay } from "../../composables/Media/use-media-player.composable";
260
+ import { MDI_ICONS } from "../../enums";
261
+ import { formatMediaTime } from "../../utils";
262
+ const { t } = useLocale();
263
+ const props = defineProps({
264
+ variant: { type: null, required: false, default: "expanded" },
265
+ coverPosition: { type: null, required: false, default: "left" },
266
+ src: { type: [String, Object, Array], required: true },
267
+ tracks: { type: Array, required: false, default: () => [] },
268
+ title: { type: String, required: false, default: void 0 },
269
+ artist: { type: String, required: false, default: void 0 },
270
+ album: { type: String, required: false, default: void 0 },
271
+ cover: { type: [String, Object], required: false, default: void 0 },
272
+ waveform: { type: [Boolean, String], required: false, default: false },
273
+ waveformColor: { type: String, required: false, default: "currentColor" },
274
+ autoplay: { type: Boolean, required: false, default: false },
275
+ muted: { type: Boolean, required: false, default: false },
276
+ loop: { type: Boolean, required: false, default: false },
277
+ loopMode: { type: null, required: false, default: "none" },
278
+ shuffle: { type: Boolean, required: false, default: false },
279
+ playlist: { type: Array, required: false, default: void 0 },
280
+ currentTrackIndex: { type: Number, required: false, default: 0 },
281
+ preload: { type: String, required: false, default: "metadata" },
282
+ crossorigin: { type: String, required: false, default: void 0 },
283
+ controls: { type: String, required: false, default: "custom" },
284
+ playbackRates: { type: Array, required: false, default: () => [0.5, 0.75, 1, 1.25, 1.5, 2] },
285
+ playbackRate: { type: Number, required: false, default: 1 },
286
+ allowRemotePlayback: { type: Boolean, required: false, default: false },
287
+ downloadable: { type: Boolean, required: false, default: false },
288
+ downloadFilename: { type: String, required: false, default: void 0 },
289
+ id: { type: String, required: false },
290
+ class: { type: [String, Array, Object], required: false },
291
+ style: { type: [String, Array, Object, Boolean, null], required: false, skipCheck: true },
292
+ tag: { type: String, required: false, default: "article" },
293
+ rounded: { type: [Boolean, Number, String, null], required: false, skipCheck: true },
294
+ roundedTopRight: { type: [Boolean, Number, String], required: false },
295
+ roundedTopLeft: { type: [Boolean, Number, String], required: false },
296
+ roundedBottomLeft: { type: [Boolean, Number, String], required: false },
297
+ roundedBottomRight: { type: [Boolean, Number, String], required: false },
298
+ border: { type: [Boolean, Number, String, Array], required: false, skipCheck: true },
299
+ borderTop: { type: [Boolean, Number, String], required: false },
300
+ borderLeft: { type: [Boolean, Number, String], required: false },
301
+ borderBottom: { type: [Boolean, Number, String], required: false },
302
+ borderRight: { type: [Boolean, Number, String], required: false },
303
+ borderBlock: { type: [Boolean, Number, String], required: false },
304
+ borderInline: { type: [Boolean, Number, String], required: false },
305
+ borderColor: { type: String, required: false },
306
+ borderStyle: { type: String, required: false },
307
+ height: { type: [Number, String], required: false },
308
+ maxHeight: { type: [Number, String], required: false },
309
+ maxWidth: { type: [Number, String], required: false },
310
+ minHeight: { type: [Number, String], required: false },
311
+ minWidth: { type: [Number, String], required: false },
312
+ width: { type: [Number, String], required: false },
313
+ margin: { type: [Boolean, Number, String], required: false },
314
+ marginTop: { type: [Boolean, Number, String], required: false },
315
+ marginLeft: { type: [Boolean, Number, String], required: false },
316
+ marginBottom: { type: [Boolean, Number, String], required: false },
317
+ marginRight: { type: [Boolean, Number, String], required: false },
318
+ marginBlock: { type: [Boolean, Number, String], required: false },
319
+ marginInline: { type: [Boolean, Number, String], required: false },
320
+ padding: { type: [Boolean, Number, String], required: false },
321
+ paddingTop: { type: [Boolean, Number, String], required: false },
322
+ paddingLeft: { type: [Boolean, Number, String], required: false },
323
+ paddingBottom: { type: [Boolean, Number, String], required: false },
324
+ paddingRight: { type: [Boolean, Number, String], required: false },
325
+ paddingBlock: { type: [Boolean, Number, String], required: false },
326
+ paddingInline: { type: [Boolean, Number, String], required: false },
327
+ elevation: { type: [Number, String], required: false },
328
+ position: { type: null, required: false, default: "relative" },
329
+ top: { type: [Number, String], required: false, default: void 0 },
330
+ bottom: { type: [Number, String], required: false, default: void 0 },
331
+ left: { type: [Number, String], required: false, default: void 0 },
332
+ right: { type: [Number, String], required: false, default: void 0 },
333
+ color: { type: [String, Object, Boolean, null], required: false, skipCheck: true, default: void 0 },
334
+ bgColor: { type: [String, Object, Boolean, null], required: false, skipCheck: true, default: void 0 },
335
+ fontFamily: { type: String, required: false },
336
+ fontSize: { type: String, required: false },
337
+ fontWeight: { type: String, required: false },
338
+ lineHeight: { type: String, required: false },
339
+ letterSpacing: { type: String, required: false }
340
+ });
341
+ const emit = defineEmits(["play", "pause", "ended", "timeupdate", "volumechange", "loadedmetadata", "error", "update:playbackRate", "download", "waveform", "previous", "next", "update:currentTrackIndex", "update:loopMode", "update:shuffle", "track-change"]);
342
+ const ICONS = {
343
+ LOADING: MDI_ICONS.LOADING,
344
+ ALERT: MDI_ICONS.ALERT_CIRCLE
345
+ };
346
+ const waveformAriaLabel = computed(() => t("origam.media.seek", "Seek"));
347
+ const loadingLabel = computed(() => t("origam.loading", "Loading"));
348
+ const resolvedAutoplay = computed(() => {
349
+ if (!props.autoplay) return false;
350
+ if (shouldSuppressAutoplay()) return false;
351
+ return true;
352
+ });
353
+ const resolvedMuted = computed(() => {
354
+ if (props.muted) return true;
355
+ if (resolvedAutoplay.value) return true;
356
+ return false;
357
+ });
358
+ const isCustomControls = computed(() => props.controls === "custom");
359
+ const isNativeControls = computed(() => props.controls === "native");
360
+ const isCompactVariant = computed(() => {
361
+ return props.variant === "compact" || props.variant === "minimal";
362
+ });
363
+ const isExpandedVariant = computed(() => !isCompactVariant.value);
364
+ const hasPlaylist = computed(() => Array.isArray(props.playlist) && props.playlist.length > 0);
365
+ const internalTrackIndex = ref(props.currentTrackIndex ?? 0);
366
+ watch(() => props.currentTrackIndex, (next) => {
367
+ if (typeof next === "number" && next !== internalTrackIndex.value) {
368
+ internalTrackIndex.value = next;
369
+ }
370
+ });
371
+ const safeTrackIndex = computed(() => {
372
+ if (!hasPlaylist.value) return 0;
373
+ const total = props.playlist.length;
374
+ if (total === 0) return 0;
375
+ const i = internalTrackIndex.value;
376
+ return (i % total + total) % total;
377
+ });
378
+ const activeTrack = computed(() => {
379
+ if (!hasPlaylist.value) return void 0;
380
+ return props.playlist[safeTrackIndex.value];
381
+ });
382
+ const pendingResumeOnLoad = ref(false);
383
+ function setActiveTrack(nextIndex) {
384
+ if (!hasPlaylist.value) return;
385
+ const total = props.playlist.length;
386
+ if (total === 0) return;
387
+ const wrapped = (nextIndex % total + total) % total;
388
+ if (wrapped === safeTrackIndex.value) return;
389
+ if (state.playing.value) pendingResumeOnLoad.value = true;
390
+ internalTrackIndex.value = wrapped;
391
+ emit("update:currentTrackIndex", wrapped);
392
+ const track = props.playlist[wrapped];
393
+ if (track) emit("track-change", track, wrapped);
394
+ }
395
+ function pickRandomIndex() {
396
+ const total = props.playlist?.length ?? 0;
397
+ if (total <= 1) return 0;
398
+ const cur = safeTrackIndex.value;
399
+ const offset = 1 + Math.floor(Math.random() * (total - 1));
400
+ return (cur + offset) % total;
401
+ }
402
+ function navigateRelative(delta) {
403
+ if (!hasPlaylist.value) return;
404
+ const total = props.playlist.length;
405
+ if (total === 0) return;
406
+ if (internalShuffle.value) {
407
+ setActiveTrack(pickRandomIndex());
408
+ return;
409
+ }
410
+ let target = safeTrackIndex.value + delta;
411
+ if (target < 0 || target >= total) {
412
+ if (resolvedLoopMode.value === "all" || resolvedLoopMode.value === "one") {
413
+ target = (target % total + total) % total;
414
+ } else {
415
+ return;
416
+ }
417
+ }
418
+ setActiveTrack(target);
419
+ }
420
+ const initialLoopMode = props.loopMode && props.loopMode !== "none" ? props.loopMode : props.loop ? "one" : "none";
421
+ const internalLoopMode = ref(initialLoopMode);
422
+ watch(() => props.loopMode, (next) => {
423
+ if (next && next !== internalLoopMode.value) internalLoopMode.value = next;
424
+ });
425
+ watch(() => props.loop, (next) => {
426
+ if (props.loopMode && props.loopMode !== "none") return;
427
+ internalLoopMode.value = next ? "one" : "none";
428
+ emit("update:loopMode", internalLoopMode.value);
429
+ });
430
+ const resolvedLoopMode = computed(() => internalLoopMode.value);
431
+ const internalShuffle = ref(props.shuffle ?? false);
432
+ watch(() => props.shuffle, (next) => {
433
+ if (typeof next === "boolean" && next !== internalShuffle.value) {
434
+ internalShuffle.value = next;
435
+ }
436
+ });
437
+ const effectiveSrc = computed(() => {
438
+ if (hasPlaylist.value && activeTrack.value) return activeTrack.value.src;
439
+ return props.src;
440
+ });
441
+ const singleSrc = computed(() => {
442
+ const s = effectiveSrc.value;
443
+ return typeof s === "string" ? s : void 0;
444
+ });
445
+ const resolvedSources = computed(() => {
446
+ const s = effectiveSrc.value;
447
+ if (typeof s === "string" || s == null) return [];
448
+ if (Array.isArray(s)) return s;
449
+ return [s];
450
+ });
451
+ const resolvedTracks = computed(() => props.tracks ?? []);
452
+ const { audioRef, state, methods } = useAudioPlayer({
453
+ autoplay: props.autoplay,
454
+ muted: resolvedMuted.value,
455
+ loop: props.loop,
456
+ preload: props.preload
457
+ });
458
+ watch(audioRef, (el, _prev, onCleanup) => {
459
+ if (!el) return;
460
+ const onLoadedData = () => {
461
+ if (!pendingResumeOnLoad.value) return;
462
+ pendingResumeOnLoad.value = false;
463
+ methods.play();
464
+ };
465
+ el.addEventListener("loadeddata", onLoadedData);
466
+ onCleanup(() => el.removeEventListener("loadeddata", onLoadedData));
467
+ }, { immediate: true });
468
+ watch(resolvedAutoplay, (on) => {
469
+ if (on) void methods.play();
470
+ });
471
+ function onTimeUpdate(event) {
472
+ emit("timeupdate", event);
473
+ }
474
+ function onVolumeChange(event) {
475
+ emit("volumechange", event);
476
+ }
477
+ function onLoadedMetadata(event) {
478
+ emit("loadedmetadata", event);
479
+ }
480
+ function onErrorEvent(event) {
481
+ emit("error", state.error.value ?? event);
482
+ }
483
+ const resolvedTitle = computed(() => activeTrack.value?.title ?? props.title);
484
+ const resolvedArtist = computed(() => activeTrack.value?.artist ?? props.artist);
485
+ const resolvedAlbum = computed(() => activeTrack.value?.album ?? props.album);
486
+ const resolvedCover = computed(() => {
487
+ if (activeTrack.value?.cover) return activeTrack.value.cover;
488
+ if (!props.cover) return void 0;
489
+ if (typeof props.cover === "string") return props.cover;
490
+ return props.cover.src;
491
+ });
492
+ const coverAlt = computed(() => {
493
+ const t2 = resolvedTitle.value;
494
+ const a = resolvedArtist.value;
495
+ if (t2 && a) return `${t2} \u2014 ${a}`;
496
+ if (t2) return t2;
497
+ return "";
498
+ });
499
+ const hasCover = computed(() => Boolean(resolvedCover.value));
500
+ const coverSizePx = computed(() => isCompactVariant.value ? 48 : 96);
501
+ const hasMetadata = computed(() => {
502
+ return Boolean(resolvedTitle.value || resolvedArtist.value || resolvedAlbum.value);
503
+ });
504
+ const hasMetaLine = computed(() => {
505
+ return Boolean(resolvedArtist.value || resolvedAlbum.value || hasDurationLabel.value);
506
+ });
507
+ const hasDurationLabel = computed(() => {
508
+ return Number.isFinite(state.duration.value) && state.duration.value > 0;
509
+ });
510
+ const formattedDuration = computed(() => formatMediaTime(state.duration.value));
511
+ const waveformEnabled = computed(() => {
512
+ if (isCompactVariant.value) return false;
513
+ if (props.waveform === true) return true;
514
+ if (props.waveform === "auto") {
515
+ if (typeof window === "undefined") return false;
516
+ const win = window;
517
+ return Boolean(win.OfflineAudioContext);
518
+ }
519
+ return false;
520
+ });
521
+ const showWaveform = computed(() => waveformEnabled.value || isExpandedVariant.value);
522
+ const waveformSrc = computed(() => {
523
+ if (!waveformEnabled.value) return void 0;
524
+ if (typeof props.src === "string") return props.src;
525
+ if (Array.isArray(props.src)) return props.src[0]?.src;
526
+ return props.src?.src;
527
+ });
528
+ const { peaks } = useWaveform(waveformSrc, {
529
+ bins: 200,
530
+ crossOrigin: props.crossorigin === "use-credentials" || props.crossorigin === "anonymous" ? props.crossorigin : void 0
531
+ });
532
+ watch(peaks, (next) => {
533
+ if (next.length > 0) emit("waveform", next);
534
+ });
535
+ const SYNTHETIC_PEAKS_COUNT = 120;
536
+ const syntheticPeaks = (() => {
537
+ const out = [];
538
+ for (let i = 0; i < SYNTHETIC_PEAKS_COUNT; i++) {
539
+ const t2 = i / SYNTHETIC_PEAKS_COUNT;
540
+ const w = Math.sin(t2 * Math.PI * 7) * 0.5 + Math.sin(t2 * Math.PI * 13 + 1.2) * 0.3 + Math.sin(t2 * Math.PI * 29 + 0.4) * 0.2;
541
+ out.push(0.55 + w * 0.42);
542
+ }
543
+ return out.map((v) => Math.max(0.12, Math.min(1, Math.abs(v))));
544
+ })();
545
+ const displayedPeaks = computed(() => {
546
+ if (peaks.value && peaks.value.length > 0) return peaks.value;
547
+ return syntheticPeaks;
548
+ });
549
+ const scrubberMax = computed(() => {
550
+ return Number.isFinite(state.duration.value) ? state.duration.value : 0;
551
+ });
552
+ function onWaveformSeek(value) {
553
+ if (Array.isArray(value)) return;
554
+ methods.seek(value);
555
+ }
556
+ function formatTimeTooltip(seconds) {
557
+ return formatMediaTime(seconds);
558
+ }
559
+ function onPrevious() {
560
+ emit("previous");
561
+ if (hasPlaylist.value) {
562
+ navigateRelative(-1);
563
+ } else {
564
+ methods.skipBackward(10);
565
+ }
566
+ }
567
+ function onNext() {
568
+ emit("next");
569
+ if (hasPlaylist.value) {
570
+ navigateRelative(1);
571
+ } else {
572
+ methods.skipForward(10);
573
+ }
574
+ }
575
+ const audioLoopAttr = computed(() => resolvedLoopMode.value === "one");
576
+ function onNativeEnded() {
577
+ emit("ended");
578
+ if (resolvedLoopMode.value === "one") return;
579
+ if (!hasPlaylist.value) return;
580
+ const total = props.playlist.length;
581
+ if (total === 0) return;
582
+ if (internalShuffle.value) {
583
+ setActiveTrack(pickRandomIndex());
584
+ void nextTick(() => {
585
+ void methods.play();
586
+ });
587
+ return;
588
+ }
589
+ const cur = safeTrackIndex.value;
590
+ const target = cur + 1;
591
+ if (target < total) {
592
+ setActiveTrack(target);
593
+ void nextTick(() => {
594
+ void methods.play();
595
+ });
596
+ } else if (resolvedLoopMode.value === "all") {
597
+ setActiveTrack(0);
598
+ void nextTick(() => {
599
+ void methods.play();
600
+ });
601
+ }
602
+ }
603
+ const downloadUrl = computed(() => {
604
+ const src = effectiveSrc.value;
605
+ if (typeof src === "string") return src || null;
606
+ if (Array.isArray(src)) {
607
+ const first = src[0];
608
+ return first?.src ?? null;
609
+ }
610
+ return src?.src ?? null;
611
+ });
612
+ function onDownloadClick() {
613
+ const url = downloadUrl.value;
614
+ if (!url) return;
615
+ emit("download", url);
616
+ }
617
+ watch(() => props.playbackRate, (rate) => {
618
+ if (typeof rate === "number" && Number.isFinite(rate) && rate > 0) {
619
+ methods.setPlaybackRate(rate);
620
+ }
621
+ }, { immediate: true });
622
+ watch(() => state.playbackRate.value, (rate) => {
623
+ emit("update:playbackRate", rate);
624
+ });
625
+ const errorMessage = computed(() => {
626
+ const err = state.error.value;
627
+ if (!err) return "Playback error";
628
+ if ("message" in err && err.message) return err.message;
629
+ return "Playback error";
630
+ });
631
+ const { colorClasses, colorStyles } = useColorEffect(props);
632
+ const hasColorProp = computed(() => !!props.color);
633
+ const hasBgColorProp = computed(() => !!props.bgColor);
634
+ const scrubberColorStyle = computed(() => {
635
+ if (hasColorProp.value || hasBgColorProp.value) {
636
+ return { "--origam-media-controller__scrubber---color": "currentColor" };
637
+ }
638
+ return { "--origam-media-controller__scrubber---color": "var(--origam-color__text---secondary, color-mix(in srgb, currentColor 55%, transparent))" };
639
+ });
640
+ const { roundedClasses, roundedStyles } = useRounded(props);
641
+ const { borderClasses, borderStyles } = useBorder(props);
642
+ const { paddingClasses, paddingStyles } = usePadding(props);
643
+ const { marginClasses, marginStyles } = useMargin(props);
644
+ const { elevationClasses, elevationStyles } = useElevation(props);
645
+ const { positionClasses, positionStyles } = usePosition(props);
646
+ const { dimensionStyles } = useDimension(props);
647
+ const { typographyStyles: typographyTitleStyles } = useTypography(props, "audio__title");
648
+ const { typographyStyles: typographyMetaStyles } = useTypography(props, "audio__meta");
649
+ const { typographyStyles: typographyLoadingStyles } = useTypography(props, "audio__loading");
650
+ const { typographyStyles: typographyErrorStyles } = useTypography(props, "audio--error");
651
+ const variantClassName = computed(() => `origam-audio--${isCompactVariant.value ? "compact" : "expanded"}`);
652
+ const rootClasses = computed(() => [
653
+ variantClassName.value,
654
+ `origam-audio--cover-${props.coverPosition}`,
655
+ {
656
+ "origam-audio--playing": state.playing.value,
657
+ "origam-audio--paused": state.paused.value,
658
+ "origam-audio--loading": state.loading.value,
659
+ "origam-audio--error": state.error.value !== null,
660
+ "origam-audio--controls-native": isNativeControls.value,
661
+ "origam-audio--controls-custom": isCustomControls.value,
662
+ "origam-audio--has-cover": hasCover.value,
663
+ "origam-audio--has-waveform": showWaveform.value
664
+ },
665
+ positionClasses.value,
666
+ ...colorClasses.value,
667
+ {
668
+ "origam-audio--has-color": hasColorProp.value,
669
+ "origam-audio--has-bg-color": hasBgColorProp.value
670
+ },
671
+ ...roundedClasses.value,
672
+ ...borderClasses.value,
673
+ ...paddingClasses.value,
674
+ ...marginClasses.value,
675
+ ...elevationClasses.value,
676
+ props.class
677
+ ]);
678
+ const rootStyles = computed(() => [
679
+ positionStyles.value,
680
+ colorStyles.value,
681
+ scrubberColorStyle.value,
682
+ roundedStyles.value,
683
+ borderStyles.value,
684
+ paddingStyles.value,
685
+ marginStyles.value,
686
+ elevationStyles.value,
687
+ dimensionStyles.value,
688
+ props.style
689
+ ]);
690
+ defineExpose({
691
+ audioRef,
692
+ state,
693
+ methods
694
+ });
695
+ </script>
696
+
697
+ <style lang="scss" scoped>
698
+ @keyframes origam-audio-vinyl-spin {
699
+ from {
700
+ transform: rotate(0deg);
701
+ }
702
+ to {
703
+ transform: rotate(360deg);
704
+ }
705
+ }
706
+
707
+ .origam-audio {
708
+ $this: &;
709
+
710
+ display: flex;
711
+ flex-direction: column;
712
+ position: var(--origam-audio---position, static);
713
+ padding: var(--origam-audio---padding, 16px);
714
+ border-radius: var(--origam-audio---border-radius, var(--origam-radius---lg, 12px));
715
+ color: var(--origam-audio---color, var(--origam-color__text---primary));
716
+ background-color: var(--origam-audio---background-color, var(--origam-color__surface---raised));
717
+ accent-color: var(--origam-audio---accent-color, var(--origam-color__action--primary---bg));
718
+ border: var(--origam-audio---border-width, 1px) solid var(--origam-audio---border-color, var(--origam-color__border---subtle));
719
+ box-shadow: var(--origam-audio---box-shadow, 0px 1px 3px 0px rgba(0, 0, 0, 0.06), 0px 1px 2px -1px rgba(0, 0, 0, 0.06));
720
+
721
+ &--rounded-shaped {
722
+ border-start-start-radius: var(--origam-audio---border-radius, var(--origam-radius---lg, 12px));
723
+ border-start-end-radius: 0;
724
+ border-end-start-radius: 0;
725
+ border-end-end-radius: var(--origam-audio---border-radius, var(--origam-radius---lg, 12px));
726
+ }
727
+
728
+ &--rounded-shaped-invert {
729
+ border-start-start-radius: 0;
730
+ border-start-end-radius: var(--origam-audio---border-radius, var(--origam-radius---lg, 12px));
731
+ border-end-start-radius: var(--origam-audio---border-radius, var(--origam-radius---lg, 12px));
732
+ border-end-end-radius: 0;
733
+ }
734
+
735
+ &__controller {
736
+ flex: 1 1 auto;
737
+ min-height: 0;
738
+
739
+ :deep(.origam-media-controller__progress-row) {
740
+ flex: 1 1 auto;
741
+ display: flex;
742
+ flex-direction: column;
743
+ justify-content: center;
744
+ }
745
+
746
+ :deep(.origam-media-controller__buttons-row) {
747
+ margin-block-start: auto;
748
+ }
749
+ }
750
+
751
+ :deep(.origam-slider-field--bare) {
752
+ color: inherit !important;
753
+ }
754
+
755
+ &__el {
756
+ display: block;
757
+ width: 100%;
758
+ }
759
+
760
+ &__header {
761
+ display: grid;
762
+ grid-template-columns: auto 1fr;
763
+ gap: var(--origam-audio__header---gap, 16px);
764
+ align-items: center;
765
+ margin-bottom: var(--origam-audio__header---margin-bottom, 12px);
766
+
767
+ &--no-cover {
768
+ grid-template-columns: 1fr;
769
+ }
770
+ }
771
+
772
+ &__cover {
773
+ margin: 0;
774
+ display: flex;
775
+ align-items: center;
776
+ justify-content: center;
777
+ flex: 0 0 auto;
778
+ position: relative;
779
+ width: var(--origam-audio__cover---size, 96px);
780
+ height: var(--origam-audio__cover---size, 96px);
781
+ border-radius: 50%;
782
+ overflow: hidden;
783
+ box-shadow:
784
+ 0 4px 12px rgba(0, 0, 0, 0.28),
785
+ inset 0 0 0 1px rgba(0, 0, 0, 0.4);
786
+
787
+ /*
788
+ * Vinyl body fallback — a fixed dark disc behind the album art so a
789
+ * transparent / not-yet-loaded image never lets the surface colour
790
+ * bleed through the record.
791
+ */
792
+ background: var(--origam-audio__cover---background, #18181b);
793
+
794
+ /*
795
+ * Spindle hole — a real transparent dot punched THROUGH the
796
+ * whole disc (image + grooves + label) so the audio shell
797
+ * background (or whatever is rendered behind it) shows
798
+ * through. Implemented with a CSS `mask` that fills the
799
+ * disc with opaque black except for a small radial cutout
800
+ * at the centre. Prefix variant covers Safari ≤ 15.
801
+ */
802
+ --origam-audio__cover---spindle-radius: 3%;
803
+
804
+ mask:
805
+ radial-gradient(
806
+ circle at center,
807
+ transparent 0,
808
+ transparent var(--origam-audio__cover---spindle-radius),
809
+ black calc(var(--origam-audio__cover---spindle-radius) + 0.5%),
810
+ black 100%
811
+ );
812
+ -webkit-mask:
813
+ radial-gradient(
814
+ circle at center,
815
+ transparent 0,
816
+ transparent var(--origam-audio__cover---spindle-radius),
817
+ black calc(var(--origam-audio__cover---spindle-radius) + 0.5%),
818
+ black 100%
819
+ );
820
+ }
821
+
822
+ &__cover-img {
823
+ display: block;
824
+ width: 100%;
825
+ height: 100%;
826
+ border-radius: 50%;
827
+ object-fit: cover;
828
+ }
829
+
830
+ /*
831
+ * Vinyl-record overlay — pure CSS, no extra DOM.
832
+ *
833
+ * ::before draws the concentric grooves with a
834
+ * `repeating-radial-gradient` of thin, translucent dark
835
+ * bands. The gradient repeats every 4 px from the center,
836
+ * giving 8–12 visible rings at 96 px and proportionally
837
+ * scaling with `--origam-audio__cover---size`.
838
+ *
839
+ * ::after draws the center label disc: a black ring with a
840
+ * small transparent spindle hole punched through the
841
+ * middle via a radial-gradient mask. The ring sits on
842
+ * top of the album art, framing it as the "label" of the
843
+ * record.
844
+ *
845
+ * Both pseudo-elements are `pointer-events: none` so the user
846
+ * can still interact with the image / play-btn underneath.
847
+ */
848
+ &__cover::before {
849
+ content: '';
850
+ position: absolute;
851
+ inset: 0;
852
+ border-radius: 50%;
853
+ pointer-events: none;
854
+ background:
855
+ repeating-radial-gradient(
856
+ circle at center,
857
+ rgba(0, 0, 0, 0.32) 0,
858
+ rgba(0, 0, 0, 0.32) 1px,
859
+ transparent 1px,
860
+ transparent 6px
861
+ );
862
+ mix-blend-mode: multiply;
863
+ }
864
+
865
+ &__cover::after {
866
+ /*
867
+ * Label disc — solid black ring framing the spindle hole.
868
+ * The hole itself is no longer drawn by this pseudo: the
869
+ * mask on `.origam-audio__cover` punches a real transparent
870
+ * dot through this disc + image + grooves at the exact
871
+ * centre, so we get a single continuous see-through hole.
872
+ */
873
+ content: '';
874
+ position: absolute;
875
+ top: 50%;
876
+ left: 50%;
877
+ transform: translate(-50%, -50%);
878
+ width: 26%;
879
+ height: 26%;
880
+ border-radius: 50%;
881
+ background: #0a0a0a;
882
+ box-shadow:
883
+ inset 0 0 0 1px rgba(255, 255, 255, 0.06),
884
+ 0 0 6px rgba(0, 0, 0, 0.35);
885
+ pointer-events: none;
886
+ }
887
+
888
+ /*
889
+ * Spin the disc while playing, freeze when paused. Real LPs
890
+ * spin at 33⅓ RPM (≈ 1.8 s per turn); we use 3.5 s for a
891
+ * gentler perceptual motion that doesn't compete with the
892
+ * scrubber updates.
893
+ */
894
+ &--playing &__cover {
895
+ animation: origam-audio-vinyl-spin 3.5s linear infinite;
896
+ }
897
+
898
+ &--paused &__cover,
899
+ &--loading &__cover {
900
+ animation: origam-audio-vinyl-spin 3.5s linear infinite;
901
+ animation-play-state: paused;
902
+ }
903
+
904
+ @media (prefers-reduced-motion: reduce) {
905
+ &__cover {
906
+ animation: none !important;
907
+ }
908
+ }
909
+
910
+ &__metadata {
911
+ display: flex;
912
+ flex-direction: column;
913
+ min-width: 0;
914
+ gap: var(--origam-audio__metadata---gap, 2px);
915
+ }
916
+
917
+ &__title {
918
+ font-size: var(--origam-audio__title---font-size, 18px);
919
+ font-weight: var(--origam-audio__title---font-weight, 700);
920
+ line-height: var(--origam-audio__title---line-height, 1.25);
921
+ color: var(--origam-audio__title---color, inherit);
922
+ white-space: nowrap;
923
+ overflow: hidden;
924
+ text-overflow: ellipsis;
925
+ }
926
+
927
+ &__meta {
928
+ display: inline-flex;
929
+ flex-wrap: wrap;
930
+ align-items: baseline;
931
+ gap: var(--origam-audio__meta---gap, 6px);
932
+ font-size: var(--origam-audio__meta---font-size, 13px);
933
+ color: var(--origam-audio__meta---color, color-mix(in srgb, currentColor 60%, transparent));
934
+ min-width: 0;
935
+ }
936
+
937
+ &__artist,
938
+ &__album,
939
+ &__duration {
940
+ white-space: nowrap;
941
+ overflow: hidden;
942
+ text-overflow: ellipsis;
943
+ min-width: 0;
944
+ }
945
+
946
+ &__artist + &__album::before,
947
+ &__artist + &__duration::before,
948
+ &__album + &__duration::before {
949
+ content: var(--origam-audio__meta-separator---content, "·");
950
+ margin-inline-end: 6px;
951
+ opacity: 0.6;
952
+ }
953
+
954
+ &__waveform {
955
+ display: block;
956
+ width: 100%;
957
+ --origam-slider-field--audio---track-height: var(--origam-audio__waveform---height, 56px);
958
+ }
959
+
960
+ &__waveform-slider {
961
+ width: 100%;
962
+ color: var(--origam-audio__waveform---color, color-mix(in srgb, currentColor 50%, transparent));
963
+ }
964
+
965
+ &__transport {
966
+ display: flex;
967
+ align-items: center;
968
+ gap: var(--origam-audio__transport---gap, 8px);
969
+ min-height: var(--origam-audio__transport---min-height, 48px);
970
+ }
971
+
972
+ &__nav-btn {
973
+ all: unset;
974
+ box-sizing: border-box;
975
+ display: inline-flex;
976
+ align-items: center;
977
+ justify-content: center;
978
+ width: var(--origam-audio__nav-btn---size, 32px);
979
+ height: var(--origam-audio__nav-btn---size, 32px);
980
+ border-radius: var(--origam-audio__nav-btn---border-radius, 50%);
981
+ cursor: pointer;
982
+ color: var(--origam-audio__nav-btn---color, inherit);
983
+ opacity: 0.85;
984
+ transition: background-color 120ms ease, opacity 120ms ease, transform 120ms ease;
985
+
986
+ &:hover,
987
+ &:focus-visible {
988
+ opacity: 1;
989
+ background-color: var(--origam-audio__nav-btn---hover-background-color, color-mix(in srgb, currentColor 8%, transparent));
990
+ }
991
+
992
+ &:active {
993
+ transform: scale(0.92);
994
+ }
995
+
996
+ &--active {
997
+ color: var(--origam-audio---accent-color, var(--origam-color__accent---base));
998
+ opacity: 1;
999
+ background-color: var(--origam-audio__nav-btn--active---background-color, color-mix(in srgb, var(--origam-audio---accent-color, var(--origam-color__accent---base)) 18%, transparent));
1000
+ position: relative;
1001
+
1002
+ &::after {
1003
+ content: '';
1004
+ position: absolute;
1005
+ bottom: 3px;
1006
+ left: 50%;
1007
+ transform: translateX(-50%);
1008
+ width: 4px;
1009
+ height: 4px;
1010
+ border-radius: 50%;
1011
+ background: var(--origam-audio---accent-color, var(--origam-color__accent---base));
1012
+ pointer-events: none;
1013
+ }
1014
+ }
1015
+
1016
+ &--loop-one {
1017
+ color: var(--origam-audio---accent-color, var(--origam-color__accent---base));
1018
+ }
1019
+ }
1020
+
1021
+ &__play-btn {
1022
+ --origam-media-play-btn---size: var(--origam-audio__play-btn---size, 48px);
1023
+ --origam-media-play-btn---icon-size: var(--origam-audio__play-btn---icon-size, 24px);
1024
+ --origam-media-play-btn---color: var(--origam-audio__play-btn---color, var(--origam-audio---accent-color, var(--origam-color__accent---base)));
1025
+ }
1026
+
1027
+ &__time {
1028
+ --origam-media-time-label---color: var(--origam-audio__time---color, inherit);
1029
+ }
1030
+
1031
+ &__spacer {
1032
+ flex: 1 1 auto;
1033
+ min-width: 0;
1034
+ }
1035
+
1036
+ &__volume,
1037
+ &__cast,
1038
+ &__config {
1039
+ flex: 0 0 auto;
1040
+ }
1041
+
1042
+ &__loading {
1043
+ display: inline-flex;
1044
+ align-items: center;
1045
+ justify-content: center;
1046
+ gap: 8px;
1047
+ color: var(--origam-audio__loading---color, inherit);
1048
+ font-size: var(--origam-audio__loading---font-size, 0.875rem);
1049
+ grid-column: 1 / -1;
1050
+ }
1051
+
1052
+ &__error {
1053
+ display: inline-flex;
1054
+ align-items: center;
1055
+ gap: var(--origam-audio--error---gap, 6px);
1056
+ padding: var(--origam-audio--error---padding, 8px 12px);
1057
+ background-color: var(--origam-audio--error---background-color, var(--origam-color__status--error--bg, transparent));
1058
+ color: var(--origam-audio--error---color, var(--origam-color__status--error---color, inherit));
1059
+ border-radius: var(--origam-audio--error---border-radius, var(--origam-radius---sm, 4px));
1060
+ font-size: var(--origam-audio--error---font-size, 0.875rem);
1061
+ grid-column: 1 / -1;
1062
+ }
1063
+
1064
+ &__error-icon {
1065
+ font-size: var(--origam-audio--error---icon-font-size, 1.1rem);
1066
+ }
1067
+
1068
+ &__playlist {
1069
+ max-height: var(--origam-audio__playlist---max-height, 220px);
1070
+ overflow-y: auto;
1071
+ border-top: 1px solid var(--origam-audio__playlist---border-color, color-mix(in srgb, currentColor 8%, transparent));
1072
+ padding-top: var(--origam-audio__playlist---padding-top, 8px);
1073
+ margin-top: var(--origam-audio__playlist---margin-top, 12px);
1074
+ background-color: transparent;
1075
+
1076
+ /*
1077
+ * Playlist inherits the host's resolved color/bgColor:
1078
+ * `transparent` background + `color: inherit` lets the
1079
+ * playlist visually adopt whatever the consumer set on
1080
+ * the audio shell (intent surface, custom hex, dark
1081
+ * theme, …) without needing a dedicated set of tokens.
1082
+ */
1083
+ :deep(.origam-list),
1084
+ :deep(.origam-list-item) {
1085
+ background-color: transparent;
1086
+ color: inherit;
1087
+ }
1088
+
1089
+ :deep(.origam-list-item__content),
1090
+ :deep(.origam-list-item__title),
1091
+ :deep(.origam-list-item__subtitle) {
1092
+ color: inherit;
1093
+ }
1094
+
1095
+ :deep(.origam-list-item__subtitle) {
1096
+ opacity: 0.7;
1097
+ }
1098
+ }
1099
+
1100
+ &__playlist-item {
1101
+ cursor: pointer;
1102
+ border-radius: 6px;
1103
+ transition: background-color 120ms ease, color 120ms ease;
1104
+
1105
+ /* Breathing room between the avatar and the content (title /
1106
+ subtitle). Pre-fix the OrigamListItem grid put them flush. */
1107
+ :deep(.origam-list-item__prepend) {
1108
+ margin-inline-end: var(--origam-audio__playlist-item__prepend---margin-inline-end, 12px);
1109
+ }
1110
+
1111
+ /*
1112
+ * Vinyl decoration on the playlist avatar — same recipe as
1113
+ * the main audio cover (concentric grooves + center label
1114
+ * with spindle hole). The avatar is a small square that
1115
+ * becomes circular here.
1116
+ */
1117
+ :deep(.origam-avatar) {
1118
+ position: relative;
1119
+ border-radius: 50%;
1120
+ overflow: hidden;
1121
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
1122
+
1123
+ /* Spindle hole punched through the avatar (mirror of
1124
+ the main cover — see comment block on `&__cover`). */
1125
+ mask:
1126
+ radial-gradient(
1127
+ circle at center,
1128
+ transparent 0,
1129
+ transparent 3.5%,
1130
+ black 4%,
1131
+ black 100%
1132
+ );
1133
+ -webkit-mask:
1134
+ radial-gradient(
1135
+ circle at center,
1136
+ transparent 0,
1137
+ transparent 3.5%,
1138
+ black 4%,
1139
+ black 100%
1140
+ );
1141
+ }
1142
+
1143
+ :deep(.origam-avatar__image),
1144
+ :deep(.origam-avatar__wrapper) {
1145
+ border-radius: 50%;
1146
+ }
1147
+
1148
+ :deep(.origam-avatar)::before {
1149
+ content: '';
1150
+ position: absolute;
1151
+ inset: 0;
1152
+ border-radius: 50%;
1153
+ pointer-events: none;
1154
+ background:
1155
+ repeating-radial-gradient(
1156
+ circle at center,
1157
+ rgba(0, 0, 0, 0.32) 0,
1158
+ rgba(0, 0, 0, 0.32) 1px,
1159
+ transparent 1px,
1160
+ transparent 5px
1161
+ );
1162
+ mix-blend-mode: multiply;
1163
+ z-index: 1;
1164
+ }
1165
+
1166
+ :deep(.origam-avatar)::after {
1167
+ /* Solid label disc; real spindle hole is punched by
1168
+ the `mask` on `.origam-avatar` itself. */
1169
+ content: '';
1170
+ position: absolute;
1171
+ top: 50%;
1172
+ left: 50%;
1173
+ transform: translate(-50%, -50%);
1174
+ width: 28%;
1175
+ height: 28%;
1176
+ border-radius: 50%;
1177
+ background: #0a0a0a;
1178
+ pointer-events: none;
1179
+ z-index: 2;
1180
+ }
1181
+
1182
+ &:hover {
1183
+ background-color: color-mix(in srgb, currentColor 8%, transparent);
1184
+ }
1185
+
1186
+ &.origam-list-item--active {
1187
+ background-color: color-mix(in srgb, currentColor 16%, transparent);
1188
+
1189
+ :deep(.origam-list-item__content),
1190
+ :deep(.origam-list-item__title) {
1191
+ color: inherit;
1192
+ }
1193
+ }
1194
+ }
1195
+
1196
+ &__playlist-artist {
1197
+ font-size: 12px;
1198
+ opacity: 0.65;
1199
+ white-space: nowrap;
1200
+ overflow: hidden;
1201
+ text-overflow: ellipsis;
1202
+ }
1203
+
1204
+ &__playlist-duration {
1205
+ font-variant-numeric: tabular-nums;
1206
+ font-size: 12px;
1207
+ opacity: 0.6;
1208
+ flex: 0 0 auto;
1209
+ }
1210
+
1211
+ /*
1212
+ * Visual hierarchy applied to EVERY variant (expanded, compact)
1213
+ * so the play btn always reads as the primary action.
1214
+ *
1215
+ * - Secondary actions (loop, shuffle, volume, cog, prev, next):
1216
+ * square 24×24 (compact) / 32×32 (expanded) with icons sized
1217
+ * at ~75 % of the frame.
1218
+ * - Play btn: exactly 2× the secondary size — 48×48 (compact)
1219
+ * / 64×64 (expanded) — mirrors Spotify / YouTube Music. The
1220
+ * icon also doubles in size to keep the visual hierarchy
1221
+ * unambiguous (no perceptible difference when the frame
1222
+ * grows but the glyph stays the same).
1223
+ *
1224
+ * `density="compact"` on `<origam-btn>` subtracts 8 px from
1225
+ * `--origam-btn---height`, so we neutralise it
1226
+ * (`--origam-btn---density: 0px`) AND force `min-width` /
1227
+ * `min-height` so OrigamBtn's calc keeps our values.
1228
+ *
1229
+ * `!important` is used here on purpose: OrigamBtn ships its own
1230
+ * `--origam-btn---*` defaults through a `&--icon` modifier rule
1231
+ * with the same specificity (`.origam-btn--icon`), and source
1232
+ * order alone is fragile across HMR reloads — `!important` makes
1233
+ * the audio hierarchy robust regardless of when the host
1234
+ * stylesheet lands in the cascade.
1235
+ */
1236
+ :deep(.origam-media-controller__buttons-row .origam-btn) {
1237
+ --origam-btn---density: 0px !important;
1238
+ --origam-btn---min-width: var(--origam-audio__btn---size, 28px) !important;
1239
+ --origam-btn---width: var(--origam-audio__btn---size, 28px) !important;
1240
+ --origam-btn---height: var(--origam-audio__btn---size, 28px) !important;
1241
+ --origam-btn---min-height: var(--origam-audio__btn---size, 28px) !important;
1242
+
1243
+ .origam-icon {
1244
+ font-size: var(--origam-audio__btn---icon-size, 16px) !important;
1245
+ }
1246
+ }
1247
+
1248
+ /*
1249
+ * The volume control is NOT an `<origam-btn>` — it's a raw
1250
+ * `<button class="origam-media-volume-control__btn">` exposed
1251
+ * by `OrigamMediaVolumeControl` (which owns its own scrubber
1252
+ * popover). Its native scoped CSS ships a 36 × 36 frame with a
1253
+ * 20 px icon — too prominent next to our 24 / 14 secondaries.
1254
+ * Align the volume btn on the same secondary footprint so the
1255
+ * row visually flattens around the dominant play btn.
1256
+ */
1257
+ :deep(.origam-media-controller__buttons-row .origam-media-volume-control__btn) {
1258
+ width: var(--origam-audio__btn---size, 28px) !important;
1259
+ height: var(--origam-audio__btn---size, 28px) !important;
1260
+ min-width: var(--origam-audio__btn---size, 28px) !important;
1261
+ min-height: var(--origam-audio__btn---size, 28px) !important;
1262
+
1263
+ .origam-icon {
1264
+ font-size: var(--origam-audio__btn---icon-size, 16px) !important;
1265
+ }
1266
+ }
1267
+
1268
+ :deep(.origam-media-controller__buttons-row .origam-btn.origam-media-controller__play-btn) {
1269
+ --origam-btn---min-width: var(--origam-audio__play-btn---size, 64px) !important;
1270
+ --origam-btn---width: var(--origam-audio__play-btn---size, 64px) !important;
1271
+ --origam-btn---height: var(--origam-audio__play-btn---size, 64px) !important;
1272
+ --origam-btn---min-height: var(--origam-audio__play-btn---size, 64px) !important;
1273
+
1274
+ .origam-icon {
1275
+ font-size: var(--origam-audio__play-btn---icon-size, 48px) !important;
1276
+ }
1277
+ }
1278
+
1279
+ &--controls-custom #{$this}__el {
1280
+ display: none;
1281
+ }
1282
+
1283
+ &--controls-native #{$this}__el {
1284
+ display: block;
1285
+ }
1286
+
1287
+ &--cover-right {
1288
+ #{$this}__header {
1289
+ grid-template-columns: 1fr auto;
1290
+ }
1291
+
1292
+ #{$this}__cover {
1293
+ grid-column: 2;
1294
+ grid-row: 1;
1295
+ }
1296
+
1297
+ #{$this}__metadata {
1298
+ grid-column: 1;
1299
+ grid-row: 1;
1300
+ }
1301
+ }
1302
+
1303
+ &--has-color,
1304
+ &--has-bg-color {
1305
+ #{$this}__waveform-slider,
1306
+ #{$this}__title {
1307
+ color: inherit;
1308
+ }
1309
+
1310
+ #{$this}__meta {
1311
+ color: color-mix(in srgb, currentColor 78%, transparent);
1312
+ }
1313
+
1314
+ #{$this}__artist {
1315
+ color: color-mix(in srgb, currentColor 82%, transparent);
1316
+ }
1317
+
1318
+ #{$this}__album,
1319
+ #{$this}__duration {
1320
+ color: color-mix(in srgb, currentColor 70%, transparent);
1321
+ }
1322
+
1323
+ :deep(.origam-media-controller) {
1324
+ color: inherit;
1325
+ }
1326
+ }
1327
+
1328
+ &--compact {
1329
+ padding: var(--origam-audio--compact---padding, 8px 12px);
1330
+ /*
1331
+ * Compact mode pins the progress bar (`position: absolute`)
1332
+ * to the bottom edge, which requires a positioned ancestor.
1333
+ * When the consumer didn't pass `position="…"` we promote
1334
+ * the box to `relative` via the CSS variable so the
1335
+ * progress anchoring still works; if `position="sticky"`
1336
+ * (or any other modifier) is set, the modifier rule below
1337
+ * the variant block overrides this default.
1338
+ */
1339
+ --origam-audio---position: relative;
1340
+ overflow: hidden;
1341
+
1342
+ /*
1343
+ * Size the DISC (not the inner image) for compact. Sizing only
1344
+ * `__cover-img` left the disc at its base 96px with a 48px image
1345
+ * centred inside, so the exposed outer ring rendered as a large
1346
+ * "floating grooves" disc (and bled the surface colour through).
1347
+ * The image fills the disc via its base `width/height: 100%`.
1348
+ */
1349
+ #{$this}__cover {
1350
+ width: var(--origam-audio--compact__cover---size, 48px);
1351
+ height: var(--origam-audio--compact__cover---size, 48px);
1352
+ }
1353
+
1354
+ #{$this}__metadata {
1355
+ flex-direction: row;
1356
+ align-items: baseline;
1357
+ gap: var(--origam-audio--compact__metadata---gap, 8px);
1358
+ flex-wrap: wrap;
1359
+ }
1360
+
1361
+ #{$this}__title {
1362
+ font-size: var(--origam-audio--compact__title---font-size, 14px);
1363
+ }
1364
+
1365
+ #{$this}__playlist {
1366
+ display: none;
1367
+ }
1368
+
1369
+ :deep(.origam-media-controller) {
1370
+ display: grid;
1371
+ grid-template-columns: 1fr auto;
1372
+ grid-template-areas: "header transport";
1373
+ gap: 0 8px;
1374
+ padding: 0;
1375
+
1376
+ > #{$this}__header {
1377
+ grid-area: header;
1378
+ margin-bottom: 0;
1379
+ align-items: center;
1380
+ gap: var(--origam-audio--compact__header---gap, 12px);
1381
+ }
1382
+ }
1383
+
1384
+ :deep(.origam-media-controller__buttons-row) {
1385
+ grid-area: transport;
1386
+ min-height: 0;
1387
+ padding: 0 0 4px 0;
1388
+ gap: 2px;
1389
+ align-self: center;
1390
+ }
1391
+
1392
+ :deep(.origam-media-controller__buttons-left),
1393
+ :deep(.origam-media-controller__buttons-right) {
1394
+ gap: 0;
1395
+ }
1396
+
1397
+ /*
1398
+ * Visual hierarchy in the compact dock:
1399
+ * - secondary actions (loop, shuffle, volume, cog, prev, next)
1400
+ * shrink to a square 24×24 footprint so the row stays dense;
1401
+ * - the play btn becomes the unique anchor at 48×48 — exactly
1402
+ * 2× the secondary size, mirroring Spotify / YouTube Music
1403
+ * mini-players.
1404
+ *
1405
+ * `density="compact"` on `<origam-btn>` subtracts 8 px from
1406
+ * `--origam-btn---height`, so we neutralise it on the play btn
1407
+ * (`--origam-btn---density: 0px`) AND force `min-height` /
1408
+ * `min-width` so the calc inside OrigamBtn keeps the 48 px.
1409
+ */
1410
+ :deep(.origam-media-controller__buttons-row .origam-btn) {
1411
+ --origam-btn---density: 0px !important;
1412
+ --origam-btn---min-width: var(--origam-audio--compact__btn---size, 24px) !important;
1413
+ --origam-btn---width: var(--origam-audio--compact__btn---size, 24px) !important;
1414
+ --origam-btn---height: var(--origam-audio--compact__btn---size, 24px) !important;
1415
+ --origam-btn---min-height: var(--origam-audio--compact__btn---size, 24px) !important;
1416
+
1417
+ .origam-icon {
1418
+ font-size: var(--origam-audio--compact__btn---icon-size, 14px) !important;
1419
+ }
1420
+ }
1421
+
1422
+ /* Volume btn (raw `<button>`, see comment in the root rule) */
1423
+ :deep(.origam-media-controller__buttons-row .origam-media-volume-control__btn) {
1424
+ width: var(--origam-audio--compact__btn---size, 24px) !important;
1425
+ height: var(--origam-audio--compact__btn---size, 24px) !important;
1426
+ min-width: var(--origam-audio--compact__btn---size, 24px) !important;
1427
+ min-height: var(--origam-audio--compact__btn---size, 24px) !important;
1428
+
1429
+ .origam-icon {
1430
+ font-size: var(--origam-audio--compact__btn---icon-size, 14px) !important;
1431
+ }
1432
+ }
1433
+
1434
+ :deep(.origam-media-controller__buttons-row .origam-btn.origam-media-controller__play-btn) {
1435
+ --origam-btn---min-width: var(--origam-audio--compact__play-btn---size, 56px) !important;
1436
+ --origam-btn---width: var(--origam-audio--compact__play-btn---size, 56px) !important;
1437
+ --origam-btn---height: var(--origam-audio--compact__play-btn---size, 56px) !important;
1438
+ --origam-btn---min-height: var(--origam-audio--compact__play-btn---size, 56px) !important;
1439
+
1440
+ .origam-icon {
1441
+ font-size: var(--origam-audio--compact__play-btn---icon-size, 40px) !important;
1442
+ }
1443
+ }
1444
+
1445
+ :deep(.origam-media-controller__time) {
1446
+ display: none;
1447
+ }
1448
+
1449
+ /*
1450
+ * Compact progress — pinned to the bottom edge of the audio shell,
1451
+ * spanning the full width so it reads as part of the chrome
1452
+ * (mirrors the OrigamCard top-edge progress, here on the bottom).
1453
+ * The audio shell has `position: relative` + `overflow: hidden`,
1454
+ * so the bar follows the rounded-corner clip without extra rules.
1455
+ */
1456
+ :deep(.origam-media-controller__progress-row) {
1457
+ position: absolute;
1458
+ inset-inline: 0;
1459
+ inset-block-end: 0;
1460
+ width: 100%;
1461
+ margin: 0;
1462
+ padding: 0;
1463
+ height: var(--origam-audio--compact__progress---height, 3px);
1464
+ z-index: 1;
1465
+ pointer-events: auto;
1466
+
1467
+ .origam-slider-field {
1468
+ --origam-slider-field--bare---track-thickness: var(--origam-audio--compact__progress---height, 3px);
1469
+ --origam-slider-field--bare---track-thickness-active: var(--origam-audio--compact__progress---height, 3px);
1470
+ --origam-slider-field--bare---track-background-color: color-mix(in srgb, currentColor 22%, transparent);
1471
+ width: 100%;
1472
+ height: var(--origam-audio--compact__progress---height, 3px);
1473
+ /*
1474
+ * `.origam-slider-field--horizontal` ships with
1475
+ * `margin-inline: 8px 8px` for native sliders; in the
1476
+ * compact docked-progress role we need the bar to bleed
1477
+ * edge-to-edge so it reads as part of the chrome.
1478
+ */
1479
+ margin-inline: 0;
1480
+ }
1481
+
1482
+ .origam-slider-field__input {
1483
+ inset-inline-start: 0;
1484
+ }
1485
+
1486
+ .origam-slider-field-track {
1487
+ background-color: color-mix(in srgb, currentColor 22%, transparent) !important;
1488
+ border-radius: 0 !important;
1489
+ }
1490
+
1491
+ .origam-slider-field-track__background {
1492
+ background-color: transparent !important;
1493
+ }
1494
+
1495
+ .origam-slider-field-track__fill {
1496
+ background-color: currentColor !important;
1497
+ border-radius: 0 !important;
1498
+ }
1499
+ }
1500
+
1501
+ :deep(.origam-slider-field__container) {
1502
+ min-height: var(--origam-audio--compact__progress---height, 3px);
1503
+ height: var(--origam-audio--compact__progress---height, 3px);
1504
+ padding: 0;
1505
+ }
1506
+ }
1507
+
1508
+ /*
1509
+ * Position modifiers — placed AFTER `&--compact` on purpose so
1510
+ * they win in source order when both classes coexist (e.g.
1511
+ * `variant="compact" position="sticky" bottom="0"`). `usePosition`
1512
+ * emits the modifier class AND inline `top|right|bottom|left`
1513
+ * styles; the modifier flips the `--origam-audio---position`
1514
+ * variable consumed by the root rule.
1515
+ */
1516
+ &--relative {
1517
+ --origam-audio---position: relative;
1518
+ }
1519
+
1520
+ &--absolute {
1521
+ --origam-audio---position: absolute;
1522
+ }
1523
+
1524
+ &--fixed {
1525
+ --origam-audio---position: fixed;
1526
+ }
1527
+
1528
+ &--sticky {
1529
+ --origam-audio---position: sticky;
1530
+ }
1531
+
1532
+ &--static {
1533
+ --origam-audio---position: static;
1534
+ }
1535
+ }
1536
+ </style>