origam 2.17.1 → 2.18.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 (215) hide show
  1. package/CHANGELOG.md +895 -0
  2. package/dist/src/assets/css/main.css +1 -1
  3. package/dist/src/assets/css/tokens/dark.css +193 -26
  4. package/dist/src/assets/css/tokens/light.css +78 -11
  5. package/dist/src/assets/locales/en.json +21 -6
  6. package/dist/src/assets/locales/fr.json +21 -6
  7. package/dist/src/assets/scss/main.scss +10 -2
  8. package/dist/src/assets/scss/tokens/_dark.scss +2914 -13
  9. package/dist/src/assets/scss/tokens/_light.scss +78 -11
  10. package/dist/src/components/Alert/OrigamAlert.vue +6 -6
  11. package/dist/src/components/Avatar/OrigamAvatar.vue +15 -2
  12. package/dist/src/components/Badge/OrigamBadge.vue +7 -7
  13. package/dist/src/components/Breadcrumb/OrigamBreadcrumbItem.vue +23 -4
  14. package/dist/src/components/Btn/OrigamBtn.vue +22 -16
  15. package/dist/src/components/Btn/OrigamBtnGroup.vue +1 -1
  16. package/dist/src/components/Calendar/OrigamCalendar.vue +1 -1
  17. package/dist/src/components/Card/OrigamCard.vue +2 -0
  18. package/dist/src/components/Card/OrigamCardHeader.vue +7 -7
  19. package/dist/src/components/Carousel/OrigamCarousel.vue +14 -1
  20. package/dist/src/components/Chart/OrigamChartBoxPlot.vue +1 -1
  21. package/dist/src/components/Chart/OrigamChartBullet.vue +3 -2
  22. package/dist/src/components/Chart/OrigamChartCandlestick.vue +2 -2
  23. package/dist/src/components/Chart/OrigamChartCartesian.vue +49 -4
  24. package/dist/src/components/Chart/OrigamChartLegend.vue +39 -18
  25. package/dist/src/components/Chart/OrigamChartPareto.vue +7 -1
  26. package/dist/src/components/Chart/OrigamChartPictorial.vue +2 -2
  27. package/dist/src/components/Chart/OrigamChartRadar.vue +3 -1
  28. package/dist/src/components/Chart/OrigamChartSparkline.vue +3 -1
  29. package/dist/src/components/Chart/OrigamChartStreamgraph.vue +2 -1
  30. package/dist/src/components/Checkbox/OrigamCheckbox.vue +2 -0
  31. package/dist/src/components/Checkbox/OrigamCheckboxGroup.vue +36 -11
  32. package/dist/src/components/Chip/OrigamChip.vue +19 -4
  33. package/dist/src/components/Code/OrigamCode.vue +20 -3
  34. package/dist/src/components/ColorPickerField/OrigamColorPickerField.vue +30 -5
  35. package/dist/src/components/CommandPalette/OrigamCommandPalette.vue +3 -3
  36. package/dist/src/components/ConfirmWrapper/OrigamConfirmWrapper.vue +6 -6
  37. package/dist/src/components/ContextualMenu/OrigamContextualMenu.vue +0 -4
  38. package/dist/src/components/DataList/OrigamDataList.vue +2 -0
  39. package/dist/src/components/DataList/OrigamDataText.vue +6 -6
  40. package/dist/src/components/DataList/OrigamDataTitle.vue +6 -6
  41. package/dist/src/components/DataTable/OrigamDataTableHeaderCell.vue +1 -1
  42. package/dist/src/components/DataTable/OrigamDataTableHeadersCell.vue +4 -1
  43. package/dist/src/components/DatePicker/OrigamDatePicker.vue +2 -0
  44. package/dist/src/components/DatePicker/OrigamDatePickerHeader.vue +6 -6
  45. package/dist/src/components/DatePickerField/OrigamDatePickerField.vue +21 -1
  46. package/dist/src/components/Dialog/OrigamDialog.vue +25 -0
  47. package/dist/src/components/Dialog/OrigamDialogConfirmation.vue +6 -0
  48. package/dist/src/components/ExpansionPanel/OrigamExpansionPanel.vue +2 -0
  49. package/dist/src/components/ExpansionPanel/OrigamExpansionPanelHeader.vue +6 -6
  50. package/dist/src/components/Field/OrigamField.vue +47 -15
  51. package/dist/src/components/FileField/OrigamFileField.vue +5 -1
  52. package/dist/src/components/Icon/OrigamSvgIcon.vue +3 -1
  53. package/dist/src/components/Img/OrigamImg.vue +9 -2
  54. package/dist/src/components/InfiniteScroll/OrigamInfiniteScroll.vue +34 -18
  55. package/dist/src/components/InlineEdit/OrigamInlineEdit.vue +46 -5
  56. package/dist/src/components/Input/OrigamInput.vue +6 -6
  57. package/dist/src/components/List/OrigamListGroup.vue +4 -0
  58. package/dist/src/components/List/OrigamListItem.vue +68 -4
  59. package/dist/src/components/Masonry/OrigamMasonry.vue +18 -2
  60. package/dist/src/components/Menu/OrigamMenu.vue +79 -9
  61. package/dist/src/components/NumberField/OrigamNumberField.vue +13 -3
  62. package/dist/src/components/OtpInputField/OrigamOtpInputField.vue +35 -11
  63. package/dist/src/components/PasswordField/OrigamPasswordField.vue +5 -1
  64. package/dist/src/components/Radio/OrigamRadio.vue +2 -0
  65. package/dist/src/components/Radio/OrigamRadioGroup.vue +36 -11
  66. package/dist/src/components/RatingField/OrigamRatingField.vue +58 -7
  67. package/dist/src/components/RatingField/OrigamRatingFieldItem.vue +78 -30
  68. package/dist/src/components/Select/OrigamSelect.vue +44 -21
  69. package/dist/src/components/SliderField/OrigamSliderField.vue +20 -10
  70. package/dist/src/components/Snackbar/OrigamSnackbarGroup.vue +1 -1
  71. package/dist/src/components/Switch/OrigamSwitch.vue +2 -0
  72. package/dist/src/components/Tabs/OrigamTab.vue +7 -4
  73. package/dist/src/components/Tabs/OrigamTabPanel.vue +4 -2
  74. package/dist/src/components/Tabs/OrigamTabs.vue +7 -5
  75. package/dist/src/components/TextField/OrigamTextField.vue +5 -1
  76. package/dist/src/components/TextareaField/OrigamTextareaField.vue +5 -1
  77. package/dist/src/components/Transition/OrigamExpandX.vue +19 -3
  78. package/dist/src/components/Transition/OrigamExpandY.vue +19 -3
  79. package/dist/src/components/Transition/OrigamTranslateScale.vue +26 -4
  80. package/dist/src/components/Video/OrigamVideo.vue +3 -2
  81. package/dist/src/components/Window/OrigamWindow.vue +20 -3
  82. package/dist/src/composables/Commons/accessibleCommand.composable.cjs +26 -0
  83. package/dist/src/composables/Commons/accessibleCommand.composable.d.ts +78 -0
  84. package/dist/src/composables/Commons/accessibleCommand.composable.js +20 -0
  85. package/dist/src/composables/Commons/activator.composable.cjs +10 -1
  86. package/dist/src/composables/Commons/activator.composable.js +11 -2
  87. package/dist/src/composables/Commons/adjacent.composable.cjs +17 -0
  88. package/dist/src/composables/Commons/adjacent.composable.d.ts +12 -0
  89. package/dist/src/composables/Commons/adjacent.composable.js +17 -0
  90. package/dist/src/composables/Commons/adjacentInner.composable.cjs +20 -0
  91. package/dist/src/composables/Commons/adjacentInner.composable.d.ts +24 -5
  92. package/dist/src/composables/Commons/adjacentInner.composable.js +20 -0
  93. package/dist/src/composables/Commons/audio.composable.cjs +14 -1
  94. package/dist/src/composables/Commons/audio.composable.js +14 -1
  95. package/dist/src/composables/Commons/backButton.composable.cjs +3 -1
  96. package/dist/src/composables/Commons/backButton.composable.js +3 -1
  97. package/dist/src/composables/Commons/border.composable.d.ts +13 -0
  98. package/dist/src/composables/Commons/colorEffect.composable.cjs +58 -46
  99. package/dist/src/composables/Commons/colorEffect.composable.d.ts +10 -5
  100. package/dist/src/composables/Commons/colorEffect.composable.js +70 -46
  101. package/dist/src/composables/Commons/createLayout.composable.cjs +21 -12
  102. package/dist/src/composables/Commons/createLayout.composable.js +21 -12
  103. package/dist/src/composables/Commons/delay.composable.d.ts +16 -0
  104. package/dist/src/composables/Commons/dimension.composable.d.ts +11 -0
  105. package/dist/src/composables/Commons/elevation.composable.cjs +6 -2
  106. package/dist/src/composables/Commons/elevation.composable.d.ts +37 -1
  107. package/dist/src/composables/Commons/elevation.composable.js +7 -2
  108. package/dist/src/composables/Commons/goTo.composable.cjs +4 -2
  109. package/dist/src/composables/Commons/goTo.composable.js +5 -3
  110. package/dist/src/composables/Commons/group.composable.cjs +14 -14
  111. package/dist/src/composables/Commons/group.composable.js +14 -14
  112. package/dist/src/composables/Commons/hotkey.composable.d.ts +18 -7
  113. package/dist/src/composables/Commons/hydration.composable.d.ts +8 -0
  114. package/dist/src/composables/Commons/link.composable.d.ts +20 -0
  115. package/dist/src/composables/Commons/locationStrategies.composable.d.ts +17 -0
  116. package/dist/src/composables/Commons/message.composable.d.ts +19 -5
  117. package/dist/src/composables/Commons/position.composable.d.ts +17 -6
  118. package/dist/src/composables/Commons/refs.composable.d.ts +11 -5
  119. package/dist/src/composables/Commons/rounded.composable.d.ts +11 -1
  120. package/dist/src/composables/Commons/scrolling.composable.cjs +15 -12
  121. package/dist/src/composables/Commons/scrolling.composable.js +15 -12
  122. package/dist/src/composables/Commons/size.composable.d.ts +15 -0
  123. package/dist/src/composables/Commons/ssrBoot.composable.cjs +9 -1
  124. package/dist/src/composables/Commons/ssrBoot.composable.js +10 -2
  125. package/dist/src/composables/Commons/stack.composable.cjs +13 -1
  126. package/dist/src/composables/Commons/stack.composable.js +13 -1
  127. package/dist/src/composables/Commons/theme-props-resolver.composable.cjs +41 -32
  128. package/dist/src/composables/Commons/theme-props-resolver.composable.js +41 -32
  129. package/dist/src/composables/Commons/validation.composable.cjs +3 -3
  130. package/dist/src/composables/Commons/validation.composable.js +3 -3
  131. package/dist/src/composables/Commons/virtual.composable.cjs +24 -8
  132. package/dist/src/composables/Commons/virtual.composable.js +24 -8
  133. package/dist/src/composables/Masonry/masonry.composable.cjs +18 -11
  134. package/dist/src/composables/Masonry/masonry.composable.js +18 -11
  135. package/dist/src/composables/Parallax/parallax.composable.cjs +1 -1
  136. package/dist/src/composables/Parallax/parallax.composable.js +1 -1
  137. package/dist/src/composables/index.cjs +36 -0
  138. package/dist/src/composables/index.d.ts +3 -0
  139. package/dist/src/composables/index.js +3 -0
  140. package/dist/src/consts/Chart/chart-cartesian.const.cjs +5 -2
  141. package/dist/src/consts/Chart/chart-cartesian.const.d.ts +42 -0
  142. package/dist/src/consts/Chart/chart-cartesian.const.js +3 -0
  143. package/dist/src/consts/Commons/elevation.const.cjs +5 -1
  144. package/dist/src/consts/Commons/elevation.const.d.ts +52 -2
  145. package/dist/src/consts/Commons/elevation.const.js +4 -0
  146. package/dist/src/consts/Commons/ripple.const.cjs +13 -3
  147. package/dist/src/consts/Commons/ripple.const.js +13 -3
  148. package/dist/src/consts/RatingField/rating-field.const.cjs +10 -0
  149. package/dist/src/consts/RatingField/rating-field.const.d.ts +36 -0
  150. package/dist/src/consts/RatingField/rating-field.const.js +12 -0
  151. package/dist/src/consts/index.cjs +11 -0
  152. package/dist/src/consts/index.d.ts +1 -0
  153. package/dist/src/consts/index.js +1 -0
  154. package/dist/src/directives/ClickOutside/clickOutside.directive.cjs +2 -0
  155. package/dist/src/directives/ClickOutside/clickOutside.directive.js +2 -0
  156. package/dist/src/directives/Ripple/ripple.directive.cjs +2 -0
  157. package/dist/src/directives/Ripple/ripple.directive.js +2 -0
  158. package/dist/src/enums/Commons/color.enum.cjs +0 -1
  159. package/dist/src/enums/Commons/color.enum.d.ts +14 -5
  160. package/dist/src/enums/Commons/color.enum.js +0 -1
  161. package/dist/src/enums/Sheet/sheet.enum.d.ts +1 -1
  162. package/dist/src/interfaces/Btn/btn.interface.d.ts +7 -10
  163. package/dist/src/interfaces/Chart/chart-cartesian.interface.d.ts +6 -2
  164. package/dist/src/interfaces/Commons/activator.interface.d.ts +3 -2
  165. package/dist/src/interfaces/Commons/adjacent.interface.d.ts +29 -0
  166. package/dist/src/interfaces/Commons/group.interface.d.ts +13 -2
  167. package/dist/src/interfaces/Commons/ripple.interface.d.ts +16 -0
  168. package/dist/src/interfaces/Commons/scroll.interface.d.ts +3 -2
  169. package/dist/src/interfaces/DataTable/data-table-header.interface.d.ts +2 -2
  170. package/dist/src/interfaces/DatePicker/date-picker-month.interface.d.ts +2 -1
  171. package/dist/src/interfaces/Menu/menu.interface.d.ts +28 -1
  172. package/dist/src/interfaces/OtpInputField/otp-input-field.interface.d.ts +21 -1
  173. package/dist/src/interfaces/RatingField/rating-field-item.interface.d.ts +16 -1
  174. package/dist/src/interfaces/index.cjs +11 -0
  175. package/dist/src/interfaces/index.d.ts +1 -0
  176. package/dist/src/interfaces/index.js +1 -0
  177. package/dist/src/nuxt/module.cjs +2 -1
  178. package/dist/src/nuxt/module.js +2 -1
  179. package/dist/src/origam.cjs +1 -2
  180. package/dist/src/origam.js +1 -2
  181. package/dist/src/themes/origam.theme.cjs +8 -14
  182. package/dist/src/themes/origam.theme.js +6 -8
  183. package/dist/src/types/Commons/color.type.d.ts +4 -3
  184. package/dist/src/types/Commons/commons.type.d.ts +33 -0
  185. package/dist/src/types/Commons/theme.type.d.ts +2 -1
  186. package/dist/src/types/Sheet/sheet.type.d.ts +2 -1
  187. package/dist/src/types/index.cjs +22 -0
  188. package/dist/src/types/index.d.ts +2 -0
  189. package/dist/src/types/index.js +2 -0
  190. package/dist/src/types/tokens.type.d.ts +1 -1
  191. package/dist/src/utils/Commons/a11y.util.cjs +35 -0
  192. package/dist/src/utils/Commons/a11y.util.d.ts +63 -0
  193. package/dist/src/utils/Commons/a11y.util.js +33 -0
  194. package/dist/src/utils/Commons/clickOutside.util.cjs +5 -1
  195. package/dist/src/utils/Commons/clickOutside.util.js +5 -1
  196. package/dist/src/utils/Commons/color.util.cjs +10 -15
  197. package/dist/src/utils/Commons/color.util.d.ts +34 -28
  198. package/dist/src/utils/Commons/color.util.js +9 -16
  199. package/dist/src/utils/Commons/goTo.util.cjs +31 -14
  200. package/dist/src/utils/Commons/goTo.util.d.ts +1 -1
  201. package/dist/src/utils/Commons/goTo.util.js +31 -16
  202. package/dist/src/utils/Commons/location.util.cjs +18 -3
  203. package/dist/src/utils/Commons/location.util.js +18 -3
  204. package/dist/src/utils/Commons/ripple.util.cjs +5 -1
  205. package/dist/src/utils/Commons/ripple.util.js +5 -1
  206. package/dist/src/utils/index.cjs +11 -0
  207. package/dist/src/utils/index.d.ts +1 -0
  208. package/dist/src/utils/index.js +1 -0
  209. package/package.json +13 -2
  210. package/dist/src/consts/Btn/btn.const.cjs +0 -7
  211. package/dist/src/consts/Btn/btn.const.d.ts +0 -32
  212. package/dist/src/consts/Btn/btn.const.js +0 -1
  213. package/dist/src/types/Commons/locale.type.cjs +0 -1
  214. package/dist/src/types/Commons/locale.type.d.ts +0 -0
  215. package/dist/src/types/Commons/locale.type.js +0 -0
@@ -2,9 +2,10 @@ import type { ICalendarProps, IDay } from './date-picker-calendar.interface';
2
2
  import type { IColorProps } from '../Commons/color.interface';
3
3
  import type { ICommonsComponentProps } from '../Commons/commons.interface';
4
4
  import type { TTransitionProps } from '../../types/Transition/transition.type';
5
+ import type { TAnyString } from '../../types/Commons/commons.type';
5
6
  export interface IDatePickerMonthProps extends ICommonsComponentProps, IColorProps, ICalendarProps {
6
7
  hideWeekdays?: boolean;
7
- multiple?: boolean | number | (string & {});
8
+ multiple?: boolean | number | TAnyString;
8
9
  range?: boolean;
9
10
  showWeek?: boolean;
10
11
  transition?: TTransitionProps;
@@ -7,7 +7,34 @@ export interface IMenuProvide {
7
7
  unregister(): void;
8
8
  closeParents(): void;
9
9
  }
10
- export interface IMenuProps extends IOverlayProps, IListProps, IListItemProps {
10
+ /*********************************************************
11
+ * IMenuProps
12
+ *
13
+ * @description
14
+ * ⛔ OUTER adjacent surface stripped (#756). `IListItemProps` carries
15
+ * `IAdjacentProps` (`prependIcon` / `appendIcon` / `prependAvatar` /
16
+ * `appendAvatar` / `prependAriaLabel` / `appendAriaLabel`) because a LIST ROW
17
+ * renders that zone. `<OrigamMenu>` does not: it renders rows from `items`,
18
+ * and each row gets its media from the ITEM object (`{ title, prependIcon }`),
19
+ * never from the menu's own props — `menuItemProps()` spreads the item, and
20
+ * `overlayProps` is filtered down to what `<origam-overlay>` declares.
21
+ *
22
+ * @description
23
+ * Measured, jsdom, sentinel values passed as props and grepped out of
24
+ * `document.body.innerHTML`: `<origam-list-item>` renders
25
+ * `.origam-list-item__prepend` / `__append` and carries the name;
26
+ * `<origam-menu model-value items=…>` renders NO such node at all. The four
27
+ * media props were already recorded as inert in
28
+ * `guards/baseline/unconsumed-props.json`; the two name props would have
29
+ * joined them, so the whole surface goes instead.
30
+ *
31
+ * @description
32
+ * ⚠️ The REST of `IListItemProps` is still inherited and still largely inert
33
+ * here (33 further entries in that same baseline: `href`, `to`, `tag`,
34
+ * `ripple`, `subtitle`, `lines`, `slim`…). Narrowing those is a separate,
35
+ * wider decision and is deliberately NOT done in this fix.
36
+ ********************************************************/
37
+ export interface IMenuProps extends IOverlayProps, IListProps, Omit<IListItemProps, 'prependIcon' | 'appendIcon' | 'prependAvatar' | 'appendAvatar' | 'prependAriaLabel' | 'appendAriaLabel'> {
11
38
  id?: string;
12
39
  }
13
40
  /** Emits fired by `<OrigamMenu>` — v-model on the open state, the
@@ -22,8 +22,28 @@ import type { TOtpInputFieldType } from '../../types/OtpInputField/otp-input-fie
22
22
  * Only `fontSize` does (the visible `.origam-otp-input-field__field` cell).
23
23
  * `Omit` strips the inherited surface back down before re-adding exactly
24
24
  * what this component supports.
25
+ *
26
+ * @description
27
+ * ⛔ OUTER adjacent surface stripped for the SAME structural reason (#756).
28
+ * `IAdjacentProps` (`prependIcon` / `appendIcon` / `prependAvatar` /
29
+ * `appendAvatar` / `prependAriaLabel` / `appendAriaLabel`) is inherited from
30
+ * `IInputProps`, and the element that renders that zone — the
31
+ * `.origam-input__prepend` / `.origam-input__append` span in
32
+ * `OrigamInput.vue` — is never mounted here, exactly as the paragraph above
33
+ * says. Measured, jsdom, sentinel values passed as props and grepped out of
34
+ * `document.body.innerHTML`: `<origam-input>` and `<origam-text-field>` both
35
+ * render the zone and carry the name; `<origam-otp-input-field>` renders NO
36
+ * `origam-input__prepend` / `__append` node at all. The four media props were
37
+ * already recorded as inert in `guards/baseline/unconsumed-props.json`; the
38
+ * two name props would have joined them, so the whole surface goes instead.
39
+ *
40
+ * @description
41
+ * The INNER zone is untouched and is the one this component really has:
42
+ * `prependInnerAriaLabel` / `appendInnerAriaLabel` come through `IFieldProps`
43
+ * → `IAdjacentInnerProps`, reach `<origam-field>` via `fieldProps()`, and were
44
+ * measured PRESENT in the same sweep.
25
45
  ********************************************************/
26
- export interface IOtpInputFieldProps extends Omit<IFieldProps, 'fontFamily' | 'fontWeight' | 'lineHeight' | 'letterSpacing'>, Omit<IInputProps, 'fontFamily' | 'fontWeight' | 'lineHeight' | 'letterSpacing'>, IVariantProps, Pick<ITypographyProps, 'fontSize'> {
46
+ export interface IOtpInputFieldProps extends Omit<IFieldProps, 'fontFamily' | 'fontWeight' | 'lineHeight' | 'letterSpacing'>, Omit<IInputProps, 'fontFamily' | 'fontWeight' | 'lineHeight' | 'letterSpacing' | 'prependIcon' | 'appendIcon' | 'prependAvatar' | 'appendAvatar' | 'prependAriaLabel' | 'appendAriaLabel'>, IVariantProps, Pick<ITypographyProps, 'fontSize'> {
27
47
  autofocus?: boolean;
28
48
  divider?: string;
29
49
  focusAll?: boolean;
@@ -28,10 +28,25 @@ export interface IRatingFieldItemProps extends ICommonsComponentProps, ITagProps
28
28
  length?: number | string;
29
29
  }
30
30
  /** Emits fired by `<OrigamRatingFieldItem>` — click + hover surface
31
- * (pointer enter / leave drive the half-rating preview). */
31
+ * (pointer enter / leave drive the half-rating preview), plus the two
32
+ * KEYBOARD channels added by #812.
33
+ *
34
+ * `change` is the native `<input type="radio">` change event. It is the only
35
+ * signal a keyboard selection produces: the browser's own radio-group
36
+ * navigation (arrows, `Space`) fires `click` + `change` on the newly selected
37
+ * radio and never touches the star `<div>` the pointer path goes through. Not
38
+ * forwarding it is exactly why arrows moved nothing before #812.
39
+ *
40
+ * `keydown` carries the keys the platform does NOT implement for a radio
41
+ * group — measured in Chromium: `Home` and `End` are plain no-ops natively,
42
+ * so the WAI-ARIA radiogroup pattern's "go to first / last" has to be
43
+ * written. The parent also uses this channel to cancel the native arrow /
44
+ * `Space` default while `readonly`. */
32
45
  export interface IRatingFieldItemEmits extends IClickEmits {
33
46
  (e: 'mouseenter', event: MouseEvent): void;
34
47
  (e: 'mouseleave', event: MouseEvent): void;
48
+ (e: 'change', event: Event): void;
49
+ (e: 'keydown', event: KeyboardEvent): void;
35
50
  }
36
51
  /** Slot signatures for `<OrigamRatingFieldItem>`. */
37
52
  export interface IRatingFieldItemSlots {
@@ -894,6 +894,17 @@ Object.keys(_margin).forEach(function (key) {
894
894
  }
895
895
  });
896
896
  });
897
+ var _message = require("./Commons/message.interface.cjs");
898
+ Object.keys(_message).forEach(function (key) {
899
+ if (key === "default" || key === "__esModule") return;
900
+ if (key in exports && exports[key] === _message[key]) return;
901
+ Object.defineProperty(exports, key, {
902
+ enumerable: true,
903
+ get: function () {
904
+ return _message[key];
905
+ }
906
+ });
907
+ });
897
908
  var _nested = require("./Commons/nested.interface.cjs");
898
909
  Object.keys(_nested).forEach(function (key) {
899
910
  if (key === "default" || key === "__esModule") return;
@@ -79,6 +79,7 @@ export * from './Commons/loader.interface';
79
79
  export * from './Commons/location.interface';
80
80
  export * from './Commons/locale.interface';
81
81
  export * from './Commons/margin.interface';
82
+ export * from './Commons/message.interface';
82
83
  export * from './Commons/nested.interface';
83
84
  export * from './Commons/padding.interface';
84
85
  export * from './Commons/position.interface';
@@ -79,6 +79,7 @@ export * from "./Commons/loader.interface.js";
79
79
  export * from "./Commons/location.interface.js";
80
80
  export * from "./Commons/locale.interface.js";
81
81
  export * from "./Commons/margin.interface.js";
82
+ export * from "./Commons/message.interface.js";
82
83
  export * from "./Commons/nested.interface.js";
83
84
  export * from "./Commons/padding.interface.js";
84
85
  export * from "./Commons/position.interface.js";
@@ -7,10 +7,11 @@ Object.defineProperty(exports, "__esModule", {
7
7
  var _nodeFs = require("node:fs");
8
8
  var _nodePath = require("node:path");
9
9
  var _kit = require("@nuxt/kit");
10
+ var _origam = require("../themes/origam.theme.cjs");
10
11
  const MODULE_NAME = "origam-nuxt";
11
12
  const CONFIG_KEY = "origam";
12
13
  const NUXT_COMPOSABLES_BLOCKLIST = /* @__PURE__ */new Set(["useRoute", "useRouter", "useLink", "useHydration"]);
13
- const DEFAULT_THEMES = [];
14
+ const DEFAULT_THEMES = _origam.origamTheme;
14
15
  const DEFAULT_MODES = ["light", "dark"];
15
16
  const DEFAULTS = {
16
17
  themes: DEFAULT_THEMES,
@@ -1,6 +1,7 @@
1
1
  import { readdirSync, readFileSync, statSync } from "node:fs";
2
2
  import { join } from "node:path";
3
3
  import { addComponentsDir, addImports, addPlugin, createResolver, defineNuxtModule } from "@nuxt/kit";
4
+ import { origamTheme } from "../themes/origam.theme.js";
4
5
  const MODULE_NAME = "origam-nuxt";
5
6
  const CONFIG_KEY = "origam";
6
7
  const NUXT_COMPOSABLES_BLOCKLIST = /* @__PURE__ */ new Set([
@@ -9,7 +10,7 @@ const NUXT_COMPOSABLES_BLOCKLIST = /* @__PURE__ */ new Set([
9
10
  "useLink",
10
11
  "useHydration"
11
12
  ]);
12
- const DEFAULT_THEMES = [];
13
+ const DEFAULT_THEMES = origamTheme;
13
14
  const DEFAULT_MODES = ["light", "dark"];
14
15
  const DEFAULTS = {
15
16
  themes: DEFAULT_THEMES,
@@ -11,7 +11,6 @@ var _consts = require("./consts/index.cjs");
11
11
  var origamDirectives = _interopRequireWildcard(require("./directives/index.cjs"));
12
12
  var _contrast = require("./directives/Contrast/contrast.directive.cjs");
13
13
  var _utils = require("./utils/index.cjs");
14
- var _origam = require("./themes/origam.theme.cjs");
15
14
  require("@mdi/font/css/materialdesignicons.css");
16
15
  var _vue = require("vue");
17
16
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
@@ -28,7 +27,7 @@ function createOrigam(origam = {}) {
28
27
  directives = origamDirectives
29
28
  } = options;
30
29
  const suppliedThemes = [...(options.theme ? [options.theme] : []), ...(options.themes ?? [])];
31
- const allThemes = [..._origam.origamTheme, ...suppliedThemes];
30
+ const allThemes = [...suppliedThemes];
32
31
  const installedThemes = (0, _utils.installedThemesFromList)(allThemes);
33
32
  const defaultsRef = (0, _composables.createDefaults)({});
34
33
  defaultsRef.value = activeDefaultsFor(allThemes, allThemes[0]?.name ?? "", void 0);
@@ -24,7 +24,6 @@ import {
24
24
  import * as origamDirectives from "./directives/index.js";
25
25
  import { setContrastConfig } from "./directives/Contrast/contrast.directive.js";
26
26
  import { applyThemes, installedThemesFromList, mergeDeep } from "./utils/index.js";
27
- import { origamTheme } from "./themes/origam.theme.js";
28
27
  import "@mdi/font/css/materialdesignicons.css";
29
28
  import { defineComponent, effectScope, nextTick, reactive } from "vue";
30
29
  export function createOrigam(origam = {}) {
@@ -39,7 +38,7 @@ export function createOrigam(origam = {}) {
39
38
  ...options.theme ? [options.theme] : [],
40
39
  ...options.themes ?? []
41
40
  ];
42
- const allThemes = [...origamTheme, ...suppliedThemes];
41
+ const allThemes = [...suppliedThemes];
43
42
  const installedThemes = installedThemesFromList(allThemes);
44
43
  const defaultsRef = createDefaults({});
45
44
  defaultsRef.value = activeDefaultsFor(allThemes, allThemes[0]?.name ?? "", void 0);
@@ -74,18 +74,18 @@ const origamLightTheme = exports.origamLightTheme = {
74
74
  border: "#2563eb"
75
75
  },
76
76
  success: {
77
- bg: "#16a34a",
77
+ bg: "#15803d",
78
78
  bgSubtle: "rgba(22, 163, 74, 0.08)",
79
79
  fg: "#ffffff",
80
80
  fgSubtle: "#15803d",
81
- border: "#16a34a"
81
+ border: "#15803d"
82
82
  },
83
83
  warning: {
84
- bg: "#d97706",
84
+ bg: "#b45309",
85
85
  bgSubtle: "rgba(217, 119, 6, 0.08)",
86
86
  fg: "#ffffff",
87
87
  fgSubtle: "#b45309",
88
- border: "#d97706"
88
+ border: "#b45309"
89
89
  }
90
90
  }
91
91
  },
@@ -341,9 +341,6 @@ const origamLightTheme = exports.origamLightTheme = {
341
341
  tag: "div",
342
342
  density: "compact"
343
343
  },
344
- "origam-list-item": {
345
- density: "compact"
346
- },
347
344
  "origam-loader": {
348
345
  tag: "span"
349
346
  },
@@ -536,8 +533,8 @@ const origamDarkTheme = exports.origamDarkTheme = {
536
533
  },
537
534
  action: {
538
535
  primary: {
539
- bg: "#8b5cf6",
540
- bgHover: "#7c3aed",
536
+ bg: "#7c3aed",
537
+ bgHover: "#6d28d9",
541
538
  bgDisabled: "#262626",
542
539
  bgSubtle: "rgba(124, 58, 237, 0.14)",
543
540
  fg: "#ffffff",
@@ -583,14 +580,14 @@ const origamDarkTheme = exports.origamDarkTheme = {
583
580
  border: "#60a5fa"
584
581
  },
585
582
  success: {
586
- bg: "#16a34a",
583
+ bg: "#15803d",
587
584
  bgSubtle: "rgba(22, 163, 74, 0.12)",
588
585
  fg: "#ffffff",
589
586
  fgSubtle: "#6ee7b7",
590
587
  border: "#6ee7b7"
591
588
  },
592
589
  warning: {
593
- bg: "#d97706",
590
+ bg: "#b45309",
594
591
  bgSubtle: "rgba(217, 119, 6, 0.12)",
595
592
  fg: "#ffffff",
596
593
  fgSubtle: "#fbbf24",
@@ -750,9 +747,6 @@ const origamDarkTheme = exports.origamDarkTheme = {
750
747
  tag: "div",
751
748
  density: "compact"
752
749
  },
753
- "origam-list-item": {
754
- density: "compact"
755
- },
756
750
  "origam-loader": {
757
751
  tag: "span"
758
752
  },
@@ -55,8 +55,8 @@ export const origamLightTheme = {
55
55
  feedback: {
56
56
  danger: { bg: "#dc2626", bgSubtle: "rgba(220, 38, 38, 0.08)", fg: "#ffffff", fgSubtle: "#b91c1c", border: "#dc2626" },
57
57
  info: { bg: "#2563eb", bgSubtle: "rgba(37, 99, 235, 0.08)", fg: "#ffffff", fgSubtle: "#1d4ed8", border: "#2563eb" },
58
- success: { bg: "#16a34a", bgSubtle: "rgba(22, 163, 74, 0.08)", fg: "#ffffff", fgSubtle: "#15803d", border: "#16a34a" },
59
- warning: { bg: "#d97706", bgSubtle: "rgba(217, 119, 6, 0.08)", fg: "#ffffff", fgSubtle: "#b45309", border: "#d97706" }
58
+ success: { bg: "#15803d", bgSubtle: "rgba(22, 163, 74, 0.08)", fg: "#ffffff", fgSubtle: "#15803d", border: "#15803d" },
59
+ warning: { bg: "#b45309", bgSubtle: "rgba(217, 119, 6, 0.08)", fg: "#ffffff", fgSubtle: "#b45309", border: "#b45309" }
60
60
  }
61
61
  },
62
62
  rounded: {
@@ -191,7 +191,6 @@ export const origamLightTheme = {
191
191
  "origam-input": { density: "default" },
192
192
  "origam-kbd": { variant: "outlined" },
193
193
  "origam-list": { tag: "div", density: "compact" },
194
- "origam-list-item": { density: "compact" },
195
194
  "origam-loader": { tag: "span" },
196
195
  "origam-main": { tag: "main" },
197
196
  "origam-masonry": { tag: "div", gap: "md", align: "top" },
@@ -262,8 +261,8 @@ export const origamDarkTheme = {
262
261
  },
263
262
  action: {
264
263
  primary: {
265
- bg: "#8b5cf6",
266
- bgHover: "#7c3aed",
264
+ bg: "#7c3aed",
265
+ bgHover: "#6d28d9",
267
266
  bgDisabled: "#262626",
268
267
  bgSubtle: "rgba(124, 58, 237, 0.14)",
269
268
  fg: "#ffffff",
@@ -296,8 +295,8 @@ export const origamDarkTheme = {
296
295
  feedback: {
297
296
  danger: { bg: "#dc2626", bgSubtle: "rgba(220, 38, 38, 0.12)", fg: "#ffffff", fgSubtle: "#f87171", border: "#f87171" },
298
297
  info: { bg: "#2563eb", bgSubtle: "rgba(37, 99, 235, 0.12)", fg: "#ffffff", fgSubtle: "#60a5fa", border: "#60a5fa" },
299
- success: { bg: "#16a34a", bgSubtle: "rgba(22, 163, 74, 0.12)", fg: "#ffffff", fgSubtle: "#6ee7b7", border: "#6ee7b7" },
300
- warning: { bg: "#d97706", bgSubtle: "rgba(217, 119, 6, 0.12)", fg: "#ffffff", fgSubtle: "#fbbf24", border: "#fbbf24" }
298
+ success: { bg: "#15803d", bgSubtle: "rgba(22, 163, 74, 0.12)", fg: "#ffffff", fgSubtle: "#6ee7b7", border: "#6ee7b7" },
299
+ warning: { bg: "#b45309", bgSubtle: "rgba(217, 119, 6, 0.12)", fg: "#ffffff", fgSubtle: "#fbbf24", border: "#fbbf24" }
301
300
  }
302
301
  },
303
302
  shadow: {
@@ -353,7 +352,6 @@ export const origamDarkTheme = {
353
352
  "origam-input": { density: "default" },
354
353
  "origam-kbd": { variant: "outlined" },
355
354
  "origam-list": { tag: "div", density: "compact" },
356
- "origam-list-item": { density: "compact" },
357
355
  "origam-loader": { tag: "span" },
358
356
  "origam-main": { tag: "main" },
359
357
  "origam-masonry": { tag: "div", gap: "md", align: "top" },
@@ -44,12 +44,13 @@ export type TColorType = string | number | THSVA | TRGBA | THSLA;
44
44
  /**
45
45
  * Interaction role for state-aware color resolution.
46
46
  *
47
- * Used by `useColorEffect` (and its helpers) to pick the right token
48
- * rung / math-derivation for a given visual state:
47
+ * Used by `useColorEffect` / `useStateEffect` (and their helpers) to pick
48
+ * the right token rung / math-derivation for a given visual state:
49
49
  *
50
50
  * • `default` → resting bgColor (no transformation)
51
51
  * • `hover` → cascading `var(bgHover, color-mix(bg, black 20%))`
52
52
  * • `active` → cascading `var(bgActive, color-mix(bg, black 30%))`
53
- * • `disabled` → resting `bgDisabled` token (per-intent)
53
+ *
54
+ * No `disabled` rung — see `BG_FG_ROLE` (#823).
54
55
  */
55
56
  export type TBgFgRole = `${BG_FG_ROLE}`;
@@ -3,6 +3,39 @@ import { CLIENT_POSITION, FOCUS_LOCATION } from '../../enums/Commons/commons.enu
3
3
  import { IOrigamPluginOptionsObject } from '../../interfaces/Commons/commons.interface';
4
4
  export type TNotAUnion<T> = [T] extends [infer U] ? _TNotAUnion<U, U> : never;
5
5
  export type _TNotAUnion<T, U> = U extends any ? [T] extends [U] ? unknown : never : never;
6
+ /*********************************************************
7
+ * TAnyString — `string` qui n'absorbe pas ses litteraux voisins
8
+ *
9
+ * @description
10
+ * A utiliser partout ou une prop accepte un vocabulaire documente ET une
11
+ * chaine arbitraire (extensions de marque, noms de theme maison, cles
12
+ * definies par le consommateur) : `'a' | 'b' | TAnyString`.
13
+ *
14
+ * @description
15
+ * LE PROBLEME. `'a' | 'b' | string` est reduit par le compilateur a `string`
16
+ * tout court, ce qui detruit l'autocompletion de `'a'` / `'b'` — l'union ne
17
+ * se souvient plus qu'ils ont ete nommes. Mesure, `tsc --strict` :
18
+ * @description
19
+ * type C = 'a' | 'b' | string const c: C = 42
20
+ * -> Type 'number' is not assignable to type 'string'. // effondree
21
+ * @description
22
+ * type E = 'a' | 'b' | (string & Len) const e: E = 42
23
+ * -> Type '42' is not assignable to type 'E'. // union tenue
24
+ *
25
+ * @description
26
+ * Intersecter `string` avec n'importe quel type objet differe cette
27
+ * reduction : les litteraux survivent et toute chaine reste assignable.
28
+ * @description
29
+ * L'idiome s'ecrit d'ordinaire `string & {}`, mais une intersection avec un
30
+ * type SANS MEMBRE est ailleurs un vrai defaut, et SonarQube la remonte en
31
+ * BUG/CRITICAL (« Remove this type without members or change this type
32
+ * intersection » — #771). `{ readonly length: number }` est le meme tour
33
+ * avec un membre que TOUTE chaine possede deja : comportement identique,
34
+ * plus rien de vide a signaler.
35
+ ********************************************************/
36
+ export type TAnyString = string & {
37
+ readonly length: number;
38
+ };
6
39
  export type TEventProp<T extends Array<any> = Array<any>, F = (...args: T) => void> = F;
7
40
  export type TInnerVal<T> = T extends Array<any> ? Readonly<T> : T;
8
41
  export type TSelectItemKey<T = Record<string, any>> = boolean | null | undefined | string | Readonly<Array<(string | number)>> | ((item: T, fallback?: any) => any);
@@ -1,4 +1,5 @@
1
1
  import { COLOR_MODE } from '../../enums/Commons/theme.enum';
2
+ import type { TAnyString } from './commons.type';
2
3
  /**
3
4
  * Runtime theme (brand) name applied to `<html data-theme="…">` (or to a
4
5
  * sub-tree via `<OrigamThemeProvider>`).
@@ -13,7 +14,7 @@ import { COLOR_MODE } from '../../enums/Commons/theme.enum';
13
14
  * - any other string is treated as a custom theme (e.g. `'brand-a'`) — the
14
15
  * matching CSS file must be loaded by the consumer.
15
16
  */
16
- export type TTheme = `${COLOR_MODE}` | (string & {});
17
+ export type TTheme = `${COLOR_MODE}` | TAnyString;
17
18
  /**
18
19
  * Concrete (resolved) theme — what `data-theme` actually equals after
19
20
  * resolving `'auto'`. Useful for components that need to know the
@@ -1,5 +1,6 @@
1
1
  import OrigamSheet from '../../components/Sheet/OrigamSheet.vue';
2
2
  import { SHEET_SNAP_ID } from '../../enums/Sheet/sheet.enum';
3
+ import type { TAnyString } from '../Commons/commons.type';
3
4
  export type TOrigamSheet = InstanceType<typeof OrigamSheet>;
4
5
  /**
5
6
  * Sheet bottom-swipe snap-point typings.
@@ -18,7 +19,7 @@ export type TOrigamSheet = InstanceType<typeof OrigamSheet>;
18
19
  * `sheetSwipe.composable.spec.ts`, the `Bottom — swipeable` story Variant
19
20
  * and `tests/e2e/sheet.spec.ts`.
20
21
  */
21
- export type TSheetSnapId = `${SHEET_SNAP_ID}` | (string & {});
22
+ export type TSheetSnapId = `${SHEET_SNAP_ID}` | TAnyString;
22
23
  export type TSheetSnapPoint = {
23
24
  id: TSheetSnapId;
24
25
  height: number | string;
@@ -47,6 +47,17 @@ Object.keys(_avatar).forEach(function (key) {
47
47
  }
48
48
  });
49
49
  });
50
+ var _avatarGroup = require("./Avatar/avatar-group.type.cjs");
51
+ Object.keys(_avatarGroup).forEach(function (key) {
52
+ if (key === "default" || key === "__esModule") return;
53
+ if (key in exports && exports[key] === _avatarGroup[key]) return;
54
+ Object.defineProperty(exports, key, {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _avatarGroup[key];
58
+ }
59
+ });
60
+ });
50
61
  var _badge = require("./Badge/badge.type.cjs");
51
62
  Object.keys(_badge).forEach(function (key) {
52
63
  if (key === "default" || key === "__esModule") return;
@@ -2038,6 +2049,17 @@ Object.keys(_snackbarGroup).forEach(function (key) {
2038
2049
  }
2039
2050
  });
2040
2051
  });
2052
+ var _systemBar = require("./SystemBar/system-bar.type.cjs");
2053
+ Object.keys(_systemBar).forEach(function (key) {
2054
+ if (key === "default" || key === "__esModule") return;
2055
+ if (key in exports && exports[key] === _systemBar[key]) return;
2056
+ Object.defineProperty(exports, key, {
2057
+ enumerable: true,
2058
+ get: function () {
2059
+ return _systemBar[key];
2060
+ }
2061
+ });
2062
+ });
2041
2063
  var _commandPalette = require("./CommandPalette/command-palette.type.cjs");
2042
2064
  Object.keys(_commandPalette).forEach(function (key) {
2043
2065
  if (key === "default" || key === "__esModule") return;
@@ -2,6 +2,7 @@ export * from './Alert/alert.type';
2
2
  export * from './App/app.type';
3
3
  export * from './App/app-bar.type';
4
4
  export * from './Avatar/avatar.type';
5
+ export * from './Avatar/avatar-group.type';
5
6
  export * from './Badge/badge.type';
6
7
  export * from './Blockquote/blockquote.type';
7
8
  export * from './BottomNav/bottom-nav.type';
@@ -183,6 +184,7 @@ export * from './SliderField/slider-field-track.type';
183
184
  export * from './Snackbar/snackbar.type';
184
185
  export * from './Snackbar/snackbar-item.type';
185
186
  export * from './Snackbar/snackbar-group.type';
187
+ export * from './SystemBar/system-bar.type';
186
188
  export * from './CommandPalette/command-palette.type';
187
189
  export * from './Switch/switch.type';
188
190
  export * from './Switch/switch-track.type';
@@ -2,6 +2,7 @@ export * from "./Alert/alert.type.js";
2
2
  export * from "./App/app.type.js";
3
3
  export * from "./App/app-bar.type.js";
4
4
  export * from "./Avatar/avatar.type.js";
5
+ export * from "./Avatar/avatar-group.type.js";
5
6
  export * from "./Badge/badge.type.js";
6
7
  export * from "./Blockquote/blockquote.type.js";
7
8
  export * from "./BottomNav/bottom-nav.type.js";
@@ -183,6 +184,7 @@ export * from "./SliderField/slider-field-track.type.js";
183
184
  export * from "./Snackbar/snackbar.type.js";
184
185
  export * from "./Snackbar/snackbar-item.type.js";
185
186
  export * from "./Snackbar/snackbar-group.type.js";
187
+ export * from "./SystemBar/system-bar.type.js";
186
188
  export * from "./CommandPalette/command-palette.type.js";
187
189
  export * from "./Switch/switch.type.js";
188
190
  export * from "./Switch/switch-track.type.js";