@telefonica/mistica 16.63.0 → 16.64.0-beta.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 (199) hide show
  1. package/css/mistica.css +1 -1
  2. package/dist/accordion.css-mistica.js +16 -16
  3. package/dist/align.css-mistica.js +2 -2
  4. package/dist/autocomplete.css-mistica.js +6 -6
  5. package/dist/avatar.css-mistica.js +3 -3
  6. package/dist/badge.css-mistica.js +7 -7
  7. package/dist/box.css-mistica.js +15 -15
  8. package/dist/boxed.css-mistica.js +31 -31
  9. package/dist/button-group.css-mistica.js +10 -10
  10. package/dist/button-layout.css-mistica.js +21 -21
  11. package/dist/button.css-mistica.js +51 -51
  12. package/dist/callout.css-mistica.js +16 -16
  13. package/dist/card-internal.css-mistica.js +38 -38
  14. package/dist/carousel.css-mistica.js +18 -18
  15. package/dist/checkbox.css-mistica.js +21 -21
  16. package/dist/chip.css-mistica.js +30 -30
  17. package/dist/circle.css-mistica.js +2 -2
  18. package/dist/community/advanced-data-card.css-mistica.js +26 -26
  19. package/dist/community/ai-card.css-mistica.js +14 -14
  20. package/dist/community/blocks.css-mistica.js +3 -3
  21. package/dist/community/example-component.css-mistica.js +2 -2
  22. package/dist/counter.css-mistica.js +12 -12
  23. package/dist/cover-hero.css-mistica.js +16 -16
  24. package/dist/credit-card-number-field.css-mistica.js +6 -6
  25. package/dist/date-field.css-mistica.js +1 -1
  26. package/dist/date-time-picker.css-mistica.js +2 -2
  27. package/dist/dialog.css-mistica.js +15 -15
  28. package/dist/divider.css-mistica.js +5 -5
  29. package/dist/double-field.css-mistica.js +4 -4
  30. package/dist/drawer.css-mistica.js +15 -15
  31. package/dist/empty-state-card.css-mistica.js +4 -4
  32. package/dist/empty-state.css-mistica.js +14 -14
  33. package/dist/fade-in.css-mistica.js +1 -1
  34. package/dist/feedback.css-mistica.js +14 -14
  35. package/dist/file-upload.css-mistica.js +14 -14
  36. package/dist/fixed-footer-layout.css-mistica.js +12 -12
  37. package/dist/form.css-mistica.js +2 -2
  38. package/dist/grid-layout.css-mistica.js +9 -9
  39. package/dist/grid.css-mistica.js +147 -147
  40. package/dist/header.css-mistica.js +5 -5
  41. package/dist/hero.css-mistica.js +11 -11
  42. package/dist/horizontal-scroll.css-mistica.js +3 -3
  43. package/dist/icon-button.css-mistica.js +66 -66
  44. package/dist/icons/icon-chevron.css-mistica.js +6 -6
  45. package/dist/icons/icon-error.css-mistica.js +3 -3
  46. package/dist/image.css-mistica.js +11 -11
  47. package/dist/inline.css-mistica.js +22 -16
  48. package/dist/inline.css.d.ts +2 -0
  49. package/dist/inline.d.ts +10 -1
  50. package/dist/inline.js +29 -28
  51. package/dist/list.css-mistica.js +15 -15
  52. package/dist/loading-bar.css-mistica.js +5 -5
  53. package/dist/loading-screen.css-mistica.js +15 -15
  54. package/dist/logo.css-mistica.js +9 -9
  55. package/dist/menu.css-mistica.js +25 -25
  56. package/dist/mosaic.css-mistica.js +3 -3
  57. package/dist/navigation-bar.css-mistica.js +45 -45
  58. package/dist/navigation-breadcrumbs.css-mistica.js +5 -5
  59. package/dist/package-version.js +2 -2
  60. package/dist/pin-field.css-mistica.js +10 -10
  61. package/dist/popover.css-mistica.js +2 -2
  62. package/dist/progress-bar.css-mistica.js +12 -12
  63. package/dist/radio-button.css-mistica.js +33 -33
  64. package/dist/rating.css-mistica.js +12 -12
  65. package/dist/responsive-layout.css-mistica.js +20 -20
  66. package/dist/screen-reader-only.css-mistica.js +2 -2
  67. package/dist/select.css-mistica.js +29 -29
  68. package/dist/sheet-action-row.css-mistica.js +2 -2
  69. package/dist/sheet-common.css-mistica.js +16 -16
  70. package/dist/sheet-common.js +9 -9
  71. package/dist/sheet-info.css-mistica.js +4 -4
  72. package/dist/skeletons.css-mistica.js +12 -12
  73. package/dist/skins/skin-contract.css-mistica.js +686 -686
  74. package/dist/skip-link.css-mistica.js +3 -3
  75. package/dist/slider.css-mistica.js +28 -28
  76. package/dist/snackbar.css-mistica.js +16 -16
  77. package/dist/spinner.css-mistica.js +5 -5
  78. package/dist/square.css-mistica.js +2 -2
  79. package/dist/stack.css-mistica.js +9 -9
  80. package/dist/stacking-group.css-mistica.js +2 -2
  81. package/dist/stepper.css-mistica.js +16 -16
  82. package/dist/switch-component.css-mistica.js +53 -53
  83. package/dist/table.css-mistica.js +24 -24
  84. package/dist/tabs.css-mistica.js +30 -30
  85. package/dist/tag.css-mistica.js +5 -5
  86. package/dist/text-field-base.css-mistica.js +30 -30
  87. package/dist/text-field-components.css-mistica.js +19 -19
  88. package/dist/text-link.css-mistica.js +10 -10
  89. package/dist/text.css-mistica.js +13 -13
  90. package/dist/theme-context.css-mistica.js +2 -2
  91. package/dist/timeline.css-mistica.js +18 -18
  92. package/dist/timer.css-mistica.js +13 -13
  93. package/dist/tooltip.css-mistica.js +12 -12
  94. package/dist/touchable.css-mistica.js +5 -5
  95. package/dist/utils/aspect-ratio-support.css-mistica.js +7 -7
  96. package/dist/video.css-mistica.js +2 -2
  97. package/dist/vivinho-loading-animation/vivinho-loading-animation.css-mistica.js +3 -3
  98. package/dist-es/accordion.css-mistica.js +7 -7
  99. package/dist-es/align.css-mistica.js +2 -2
  100. package/dist-es/autocomplete.css-mistica.js +2 -2
  101. package/dist-es/avatar.css-mistica.js +2 -2
  102. package/dist-es/badge.css-mistica.js +2 -2
  103. package/dist-es/box.css-mistica.js +15 -15
  104. package/dist-es/boxed.css-mistica.js +25 -25
  105. package/dist-es/button-group.css-mistica.js +2 -2
  106. package/dist-es/button-layout.css-mistica.js +16 -16
  107. package/dist-es/button.css-mistica.js +38 -38
  108. package/dist-es/callout.css-mistica.js +12 -12
  109. package/dist-es/card-internal.css-mistica.js +20 -20
  110. package/dist-es/carousel.css-mistica.js +10 -10
  111. package/dist-es/checkbox.css-mistica.js +14 -14
  112. package/dist-es/chip.css-mistica.js +17 -17
  113. package/dist-es/circle.css-mistica.js +2 -2
  114. package/dist-es/community/advanced-data-card.css-mistica.js +7 -7
  115. package/dist-es/community/ai-card.css-mistica.js +4 -4
  116. package/dist-es/community/blocks.css-mistica.js +2 -2
  117. package/dist-es/community/example-component.css-mistica.js +2 -2
  118. package/dist-es/counter.css-mistica.js +2 -2
  119. package/dist-es/cover-hero.css-mistica.js +4 -4
  120. package/dist-es/credit-card-number-field.css-mistica.js +4 -4
  121. package/dist-es/date-field.css-mistica.js +1 -1
  122. package/dist-es/date-time-picker.css-mistica.js +2 -2
  123. package/dist-es/dialog.css-mistica.js +5 -5
  124. package/dist-es/divider.css-mistica.js +5 -5
  125. package/dist-es/double-field.css-mistica.js +4 -4
  126. package/dist-es/drawer.css-mistica.js +2 -2
  127. package/dist-es/empty-state-card.css-mistica.js +2 -2
  128. package/dist-es/empty-state.css-mistica.js +7 -7
  129. package/dist-es/fade-in.css-mistica.js +1 -1
  130. package/dist-es/feedback.css-mistica.js +2 -2
  131. package/dist-es/file-upload.css-mistica.js +8 -8
  132. package/dist-es/fixed-footer-layout.css-mistica.js +4 -4
  133. package/dist-es/form.css-mistica.js +2 -2
  134. package/dist-es/grid-layout.css-mistica.js +4 -4
  135. package/dist-es/grid.css-mistica.js +127 -127
  136. package/dist-es/header.css-mistica.js +2 -2
  137. package/dist-es/hero.css-mistica.js +4 -4
  138. package/dist-es/horizontal-scroll.css-mistica.js +2 -2
  139. package/dist-es/icon-button.css-mistica.js +56 -56
  140. package/dist-es/icons/icon-chevron.css-mistica.js +4 -4
  141. package/dist-es/icons/icon-error.css-mistica.js +2 -2
  142. package/dist-es/image.css-mistica.js +4 -4
  143. package/dist-es/inline.css-mistica.js +10 -10
  144. package/dist-es/inline.js +39 -38
  145. package/dist-es/list.css-mistica.js +2 -2
  146. package/dist-es/loading-bar.css-mistica.js +2 -2
  147. package/dist-es/loading-screen.css-mistica.js +5 -5
  148. package/dist-es/logo.css-mistica.js +7 -7
  149. package/dist-es/menu.css-mistica.js +15 -15
  150. package/dist-es/mosaic.css-mistica.js +2 -2
  151. package/dist-es/navigation-bar.css-mistica.js +20 -20
  152. package/dist-es/navigation-breadcrumbs.css-mistica.js +2 -2
  153. package/dist-es/package-version.js +2 -2
  154. package/dist-es/pin-field.css-mistica.js +2 -2
  155. package/dist-es/popover.css-mistica.js +2 -2
  156. package/dist-es/progress-bar.css-mistica.js +8 -8
  157. package/dist-es/radio-button.css-mistica.js +25 -25
  158. package/dist-es/rating.css-mistica.js +4 -4
  159. package/dist-es/responsive-layout.css-mistica.js +7 -7
  160. package/dist-es/screen-reader-only.css-mistica.js +2 -2
  161. package/dist-es/select.css-mistica.js +20 -20
  162. package/dist-es/sheet-action-row.css-mistica.js +2 -2
  163. package/dist-es/sheet-common.css-mistica.js +2 -2
  164. package/dist-es/sheet-common.js +9 -9
  165. package/dist-es/sheet-info.css-mistica.js +2 -2
  166. package/dist-es/skeletons.css-mistica.js +8 -8
  167. package/dist-es/skins/skin-contract.css-mistica.js +686 -686
  168. package/dist-es/skip-link.css-mistica.js +2 -2
  169. package/dist-es/slider.css-mistica.js +20 -20
  170. package/dist-es/snackbar.css-mistica.js +5 -5
  171. package/dist-es/spinner.css-mistica.js +2 -2
  172. package/dist-es/square.css-mistica.js +2 -2
  173. package/dist-es/stack.css-mistica.js +7 -7
  174. package/dist-es/stacking-group.css-mistica.js +2 -2
  175. package/dist-es/stepper.css-mistica.js +4 -4
  176. package/dist-es/style.css +1 -1
  177. package/dist-es/switch-component.css-mistica.js +41 -41
  178. package/dist-es/table.css-mistica.js +11 -11
  179. package/dist-es/tabs.css-mistica.js +21 -21
  180. package/dist-es/tag.css-mistica.js +2 -2
  181. package/dist-es/text-field-base.css-mistica.js +17 -17
  182. package/dist-es/text-field-components.css-mistica.js +4 -4
  183. package/dist-es/text-link.css-mistica.js +9 -9
  184. package/dist-es/text.css-mistica.js +8 -8
  185. package/dist-es/theme-context.css-mistica.js +2 -2
  186. package/dist-es/timeline.css-mistica.js +11 -11
  187. package/dist-es/timer.css-mistica.js +7 -7
  188. package/dist-es/tooltip.css-mistica.js +3 -3
  189. package/dist-es/touchable.css-mistica.js +2 -2
  190. package/dist-es/utils/aspect-ratio-support.css-mistica.js +4 -4
  191. package/dist-es/video.css-mistica.js +2 -2
  192. package/dist-es/vivinho-loading-animation/vivinho-loading-animation.css-mistica.js +2 -2
  193. package/doc/agents/figma-verifier.md +49 -0
  194. package/doc/figma-mcp.md +35 -0
  195. package/package.json +1 -1
  196. package/src/inline.css.ts +9 -0
  197. package/src/inline.tsx +33 -6
  198. package/src/package-version.tsx +1 -1
  199. package/src/sheet-common.tsx +8 -9
package/src/inline.tsx CHANGED
@@ -79,6 +79,23 @@ type Props = {
79
79
  fullWidth?: boolean;
80
80
  dataAttributes?: DataAttributes;
81
81
  wrap?: boolean;
82
+ /**
83
+ * Index or indexes of the children that should grow to fill the available space.
84
+ * Indexes refer to entries in `React.Children.toArray(children)`, so empty nodes
85
+ * (`null`, `undefined` and booleans) are ignored, but React elements still count
86
+ * even if they ultimately render no content.
87
+ *
88
+ * This prop has no effect when `wrap` is enabled.
89
+ */
90
+ expand?: number | ReadonlyArray<number>;
91
+ };
92
+
93
+ const shouldExpandItem = (expand: Props['expand'], index: number): boolean => {
94
+ if (expand === undefined) {
95
+ return false;
96
+ }
97
+
98
+ return Array.isArray(expand) ? expand.includes(index) : expand === index;
82
99
  };
83
100
 
84
101
  const Inline = ({
@@ -93,17 +110,26 @@ const Inline = ({
93
110
  fullWidth,
94
111
  wrap,
95
112
  dataAttributes,
113
+ expand,
96
114
  }: Props): JSX.Element => {
97
115
  const {platformOverrides} = useTheme();
98
116
  const isStringSpace = typeof space === 'string';
117
+ const childrenArray = React.Children.toArray(children).filter(Boolean);
99
118
 
119
+ const hasExpandItem = childrenArray.some((_, index) => shouldExpandItem(expand, index));
120
+ const shouldExpand = hasExpandItem && !wrap;
100
121
  return (
101
122
  <div
102
123
  className={classnames(
103
124
  className,
104
125
  styles.inline,
105
- wrap ? styles.wrap : fullWidth ? styles.fullWidth : styles.noFullWidth,
106
- isStringSpace ? (wrap ? styles.stringSpaceWithWrap : styles.stringSpace) : styles.marginInline
126
+ wrap ? styles.wrap : fullWidth || shouldExpand ? styles.fullWidth : styles.noFullWidth,
127
+ isStringSpace
128
+ ? wrap
129
+ ? styles.stringSpaceWithWrap
130
+ : styles.stringSpace
131
+ : styles.marginInline,
132
+ shouldExpand && styles.expand
107
133
  )}
108
134
  style={{...applyCssVars(calcInlineVars(space, verticalSpace)), alignItems}}
109
135
  role={role}
@@ -111,10 +137,11 @@ const Inline = ({
111
137
  aria-labelledby={ariaLabel ? undefined : ariaLabelledBy}
112
138
  {...getPrefixedDataAttributes(dataAttributes, 'Inline')}
113
139
  >
114
- {React.Children.map(children, (child) =>
115
- !!child || child === 0 ? (
140
+ {React.Children.map(childrenArray, (child, index) => {
141
+ return (
116
142
  <div
117
143
  role={role === 'list' ? 'listitem' : undefined}
144
+ className={classnames(shouldExpandItem(expand, index) && styles.expandItem)}
118
145
  style={{
119
146
  // Hack to fix https://jira.tid.es/browse/WEB-1683
120
147
  // In iOS the inline component sometimes cuts the last line of the content
@@ -126,8 +153,8 @@ const Inline = ({
126
153
  >
127
154
  {child}
128
155
  </div>
129
- ) : null
130
- )}
156
+ );
157
+ })}
131
158
  </div>
132
159
  );
133
160
  };
@@ -1,2 +1,2 @@
1
1
  // DO NOT EDIT THIS FILE. It's autogenerated by set-version.js
2
- export const PACKAGE_VERSION = '16.63.0' as string;
2
+ export const PACKAGE_VERSION = '16.64.0-beta.1' as string;
@@ -247,7 +247,6 @@ const Sheet = React.forwardRef<HTMLDivElement, SheetProps>(({onClose, children,
247
247
  * the content in order to be able to drag the sheet
248
248
  */}
249
249
  <div className={styles.sheetTopDraggingArea} />
250
-
251
250
  <section
252
251
  role="dialog"
253
252
  aria-modal="true"
@@ -264,15 +263,15 @@ const Sheet = React.forwardRef<HTMLDivElement, SheetProps>(({onClose, children,
264
263
  <div className={styles.handleContainer}>
265
264
  <div className={styles.handleBar} />
266
265
  </div>
267
- <div className={styles.dismissButton}>
268
- <IconButton
269
- small={isTabletOrSmaller}
270
- onPress={closeModal}
271
- aria-label={texts.modalClose || t(tokens.modalClose)}
272
- Icon={IconCloseRegular}
273
- />
274
- </div>
275
266
  </section>
267
+ <div className={styles.dismissButton}>
268
+ <IconButton
269
+ small={isTabletOrSmaller}
270
+ onPress={closeModal}
271
+ aria-label={texts.modalClose || t(tokens.modalClose)}
272
+ Icon={IconCloseRegular}
273
+ />
274
+ </div>
276
275
  </div>
277
276
  </div>
278
277
  </div>