@enact/limestone 1.3.0 → 1.10.0

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 (200) hide show
  1. package/.github/workflows/ci-branch.yml +21 -0
  2. package/.github/workflows/ci-pull-request.yml +16 -0
  3. package/.github/workflows/ci-reusable.yml +73 -0
  4. package/ActionGuide/ActionGuide.d.ts +5 -4
  5. package/ActionGuide/ActionGuide.module.css +1 -1
  6. package/Alert/Alert.d.ts +13 -2
  7. package/Alert/Alert.js +39 -5
  8. package/Alert/Alert.module.css +48 -1
  9. package/Alert/tests/Alert-specs.js +91 -0
  10. package/BodyText/BodyText.d.ts +5 -4
  11. package/BodyText/BodyText.module.css +7 -7
  12. package/Button/Button.d.ts +17 -12
  13. package/Button/Button.js +1 -1
  14. package/Button/Button.module.css +195 -268
  15. package/Button/tests/Button-specs.js +26 -0
  16. package/CHANGELOG.md +254 -0
  17. package/Card/Card.d.ts +40 -12
  18. package/Card/Card.js +164 -28
  19. package/Card/Card.module.css +277 -58
  20. package/Card/tests/Card-specs.js +67 -3
  21. package/Checkbox/Checkbox.d.ts +8 -7
  22. package/Checkbox/Checkbox.js +3 -1
  23. package/Checkbox/Checkbox.module.css +213 -120
  24. package/Checkbox/tests/Checkbox-specs.js +1 -1
  25. package/CheckboxItem/CheckboxItem.d.ts +22 -7
  26. package/CheckboxItem/CheckboxItem.js +71 -4
  27. package/Chips/Chip.js +72 -13
  28. package/Chips/Chip.module.css +3 -3
  29. package/Chips/Chips.js +37 -17
  30. package/Chips/Chips.module.css +1 -1
  31. package/Chips/tests/Chip-specs.js +43 -13
  32. package/Chips/tests/Chips-specs.js +31 -21
  33. package/ColorPicker/ColorPicker.js +27 -25
  34. package/ContextualMenuDecorator/ContextualMenuDecorator.d.ts +4 -5
  35. package/ContextualPopupDecorator/ContextualPopup.module.css +34 -34
  36. package/ContextualPopupDecorator/ContextualPopupDecorator.js +567 -549
  37. package/DatePicker/DatePicker.d.ts +4 -5
  38. package/DayPicker/DayPicker.d.ts +8 -7
  39. package/DayPicker/DaySelectorDecorator.js +12 -7
  40. package/Dropdown/Dropdown.d.ts +11 -13
  41. package/Dropdown/Dropdown.module.css +13 -9
  42. package/Dropdown/DropdownList.js +80 -54
  43. package/FixedPopupPanels/FixedPopupPanels.d.ts +4 -2
  44. package/FixedPopupPanels/FixedPopupPanels.module.css +18 -18
  45. package/FlexiblePopupPanels/FlexiblePopupPanels.module.css +23 -23
  46. package/FlexiblePopupPanels/useNavButtonFocus.js +7 -10
  47. package/FormCheckboxItem/FormCheckboxItem.d.ts +5 -4
  48. package/Heading/Heading.d.ts +9 -8
  49. package/Heading/Heading.js +2 -2
  50. package/Heading/Heading.module.css +5 -5
  51. package/Icon/Icon.d.ts +15 -4
  52. package/Icon/Icon.js +49 -2
  53. package/Icon/Icon.module.css +1 -1
  54. package/Icon/IconList.js +27 -1
  55. package/IconItem/IconItem.d.ts +13 -12
  56. package/IconItem/IconItem.js +15 -0
  57. package/IconItem/IconItem.module.css +107 -1
  58. package/IconItem/tests/IconItem-specs.js +30 -1
  59. package/Image/Image.d.ts +5 -4
  60. package/Image/Image.js +6 -4
  61. package/ImageItem/ImageItem.d.ts +11 -10
  62. package/ImageItem/ImageItem.js +37 -31
  63. package/ImageItem/ImageItem.module.css +30 -30
  64. package/ImageItem/tests/ImageItem-specs.js +3 -10
  65. package/Input/Input.js +21 -3
  66. package/Input/Input.module.css +37 -8
  67. package/Input/InputField.js +79 -24
  68. package/Input/InputField.module.css +273 -41
  69. package/Input/InputFieldDecoratorIcon.js +1 -0
  70. package/Input/InputFieldSpotlightDecorator.js +257 -228
  71. package/Input/index.d.ts +120 -111
  72. package/Input/tests/Input-specs.js +26 -0
  73. package/Input/tests/InputField-specs.js +170 -3
  74. package/Input/tests/InputPopup-specs.js +1 -1
  75. package/Item/Item.d.ts +16 -9
  76. package/Item/Item.js +20 -2
  77. package/Item/Item.module.css +1 -1
  78. package/KeyGuide/KeyGuide.d.ts +8 -7
  79. package/KeyGuide/KeyGuide.js +29 -27
  80. package/KeyGuide/KeyGuide.module.css +25 -1
  81. package/Marquee/Marquee.d.ts +2 -4
  82. package/MediaOverlay/MediaOverlay.d.ts +12 -11
  83. package/MediaOverlay/MediaOverlay.js +43 -21
  84. package/MediaOverlay/MediaOverlay.module.css +114 -15
  85. package/MediaOverlay/tests/MediaOverlay-specs.js +29 -0
  86. package/MediaPlayer/MediaControls.js +195 -13
  87. package/MediaPlayer/MediaControls.module.css +3 -2
  88. package/MediaPlayer/MediaSlider.module.css +7 -20
  89. package/MediaPlayer/index.d.ts +59 -7
  90. package/MediaPlayer/tests/util-specs.js +4 -1
  91. package/PageViews/PageViews.js +232 -82
  92. package/PageViews/PageViews.module.css +3 -0
  93. package/PageViews/PageViewsRouter.js +100 -42
  94. package/PageViews/tests/PageViews-specs.js +171 -0
  95. package/Panels/Header.js +54 -34
  96. package/Panels/Header.module.css +83 -31
  97. package/Panels/Panel.module.css +1 -1
  98. package/Panels/index.d.ts +7 -8
  99. package/Picker/Picker.d.ts +4 -5
  100. package/Picker/Picker.module.css +2 -2
  101. package/Popup/Popup.js +245 -242
  102. package/Popup/Popup.module.css +24 -24
  103. package/PopupTabLayout/PopupTabLayout.d.ts +5 -7
  104. package/PopupTabLayout/PopupTabLayout.js +26 -18
  105. package/PopupTabLayout/PopupTabLayout.module.css +53 -16
  106. package/PopupTabLayout/PopupTabLayoutStateContext.js +8 -0
  107. package/ProgressBar/ProgressBar.d.ts +5 -4
  108. package/ProgressBar/ProgressBarTooltip.module.css +12 -12
  109. package/ProgressButton/ProgressButton.d.ts +4 -5
  110. package/QuickGuidePanels/QuickGuidePanels.module.css +2 -2
  111. package/RadioItem/RadioItem.d.ts +18 -5
  112. package/RadioItem/RadioItem.js +69 -2
  113. package/RadioItem/RadioItem.module.css +36 -36
  114. package/RangePicker/RangePicker.module.css +2 -2
  115. package/Scroller/EditableWrapper.js +28 -18
  116. package/Scroller/Scroller.d.ts +20 -16
  117. package/Scroller/Scroller.js +20 -13
  118. package/Scroller/Scroller.module.css +4 -4
  119. package/Scroller/useThemeScroller.js +3 -3
  120. package/Slider/Slider.d.ts +20 -14
  121. package/Slider/Slider.js +71 -14
  122. package/Slider/Slider.module.css +464 -91
  123. package/Slider/SliderBehaviorDecorator.js +16 -14
  124. package/Slider/tests/Slider-specs.js +53 -1
  125. package/Slider/utils.js +23 -7
  126. package/Spinner/Spinner.d.ts +5 -4
  127. package/Spinner/Spinner.js +10 -8
  128. package/Spinner/Spinner.module.css +9 -9
  129. package/Steps/Steps.d.ts +5 -4
  130. package/Steps/Steps.js +9 -5
  131. package/Switch/Switch.d.ts +8 -7
  132. package/Switch/Switch.module.css +100 -13
  133. package/SwitchItem/SwitchItem.d.ts +9 -6
  134. package/TabLayout/RefocusDecorator.js +26 -18
  135. package/TabLayout/TabGroup.js +3 -2
  136. package/TabLayout/TabGroup.module.css +2 -2
  137. package/TabLayout/TabLayout.d.ts +6 -0
  138. package/TabLayout/TabLayout.js +11 -1
  139. package/TabLayout/TabLayout.module.css +18 -0
  140. package/TabLayout/tests/TabGroup-specs.js +1 -1
  141. package/TabLayout/tests/TabLayout-specs.js +52 -0
  142. package/ThemeDecorator/AccessibilityDecorator.js +12 -11
  143. package/ThemeDecorator/I18nFontDecorator.js +6 -4
  144. package/ThemeDecorator/ThemeDecorator.d.ts +16 -10
  145. package/ThemeDecorator/ThemeDecorator.js +24 -9
  146. package/ThemeDecorator/fontGenerator.js +1 -1
  147. package/ThemeDecorator/screenTypes.json +1 -0
  148. package/TimePicker/TimePicker.module.css +1 -1
  149. package/TimePicker/TimePickerBase.js +5 -3
  150. package/TooltipDecorator/Tooltip.module.css +1 -2
  151. package/TooltipDecorator/TooltipDecorator.js +12 -7
  152. package/TooltipDecorator/tests/useTooltip-specs.js +5 -2
  153. package/TooltipDecorator/tests/util-specs.js +12 -0
  154. package/TooltipDecorator/useTooltip.js +1 -1
  155. package/TooltipDecorator/util.js +18 -11
  156. package/VideoPlayer/Feedback.js +3 -0
  157. package/VideoPlayer/Feedback.module.css +5 -9
  158. package/VideoPlayer/FeedbackIcons.js +1 -1
  159. package/VideoPlayer/FeedbackTooltip.module.css +55 -11
  160. package/VideoPlayer/VideoPlayer.d.ts +44 -18
  161. package/VideoPlayer/VideoPlayer.js +153 -47
  162. package/VideoPlayer/VideoPlayer.module.css +28 -11
  163. package/VirtualList/VirtualList.d.ts +9 -2
  164. package/VirtualList/VirtualList.js +51 -24
  165. package/VirtualList/tests/VirtualGridList-translate-specs.js +3 -0
  166. package/VirtualList/tests/VirtualList-specs.js +28 -1
  167. package/VirtualList/tests/VirtualList-translate-specs.js +4 -1
  168. package/VirtualList/useSpotlight.js +1 -1
  169. package/WizardPanels/WizardPanels.module.css +2 -2
  170. package/WizardPanels/index.d.ts +4 -2
  171. package/fonts/Limestone_Icons.ttf +0 -0
  172. package/internal/$L/$L.js +3 -3
  173. package/internal/AsyncRenderChildren/AsyncRenderChildren.js +9 -5
  174. package/internal/AsyncRenderChildren/tests/AsyncRenderChildren-specs.js +4 -1
  175. package/internal/DateComponentPicker/DateComponentPicker.module.css +2 -2
  176. package/internal/DateTime/DateTime.module.css +1 -0
  177. package/internal/DateTime/DateTimeDecorator.js +5 -4
  178. package/internal/Panels/PanelsRouter.js +48 -31
  179. package/internal/Panels/useAutoFocus.js +10 -6
  180. package/internal/Panels/useFocusOnTransition.js +4 -3
  181. package/internal/Picker/Picker.js +7 -5
  182. package/internal/Picker/Picker.module.css +2 -2
  183. package/internal/Picker/SpottablePicker.js +15 -13
  184. package/internal/SharedStateDecorator/SharedStateDecorator.js +78 -99
  185. package/internal/validators/validators.js +21 -2
  186. package/package.json +18 -15
  187. package/styles/colors-highcontrast.less +9 -1
  188. package/styles/colors.less +12 -7
  189. package/styles/motion-mixins.less +66 -0
  190. package/styles/motions.less +78 -0
  191. package/styles/variables.less +176 -150
  192. package/useScroll/HoverToScroll.js +23 -17
  193. package/useScroll/Scrollbar.js +14 -10
  194. package/useScroll/ScrollbarPlaceholder.js +3 -5
  195. package/useScroll/ScrollbarTrack.js +7 -5
  196. package/useScroll/ScrollbarTrack.module.css +8 -8
  197. package/useScroll/useEvent.js +14 -3
  198. package/useScroll/useScroll.js +12 -2
  199. package/useScroll/useScroll.module.css +6 -6
  200. package/.travis.yml +0 -40
@@ -1,5 +1,5 @@
1
1
  .flexiblePopupPanels.popup {
2
- padding: 1.25rem 0;
2
+ padding: var(--primitive-spacing-60) 0;
3
3
  margin: 0;
4
4
  max-height: 100vh;
5
5
  min-width: 23.75rem;
@@ -12,8 +12,8 @@
12
12
  position: relative;
13
13
  }
14
14
  .flexiblePopupPanels .viewport .panel {
15
- padding: 0 1.25rem 1.40625rem;
16
- height: calc(100vh - 2.5rem );
15
+ padding: 0 var(--primitive-spacing-60) calc(var(--primitive-spacing-36) + (var(--primitive-spacing-18) * 1.75));
16
+ height: calc(100vh - (var(--primitive-spacing-60) * 2 + 0rem * 2));
17
17
  }
18
18
  .flexiblePopupPanels .viewport.noNavButton .bodyLayout {
19
19
  padding-left: 0;
@@ -77,8 +77,8 @@
77
77
  box-shadow: 0 0.75rem 1rem 0 color(from var(--semantic-color-on-background-black) srgb r g b / 0.35);
78
78
  outline-color: var(--semantic-color-stroke-overlay-default);
79
79
  outline-style: solid;
80
- outline-width: 0.021rem;
81
- outline-offset: -0.021rem;
80
+ outline-width: 0.063rem;
81
+ outline-offset: -0.063rem;
82
82
  }
83
83
  :global(.noAnimation) .flexiblePopupPanels:global(.neutral) .header,
84
84
  :global(.noAnimation) .flexiblePopupPanels:global(.neutral) .content {
@@ -101,10 +101,10 @@
101
101
  :global(.enact-a11y-high-contrast) .flexiblePopupPanels:global(.neutral):global(.highContrast) .content {
102
102
  border-radius: var(--semantic-radius-overlay);
103
103
  box-shadow: 0 0.75rem 1rem 0 color(from var(--semantic-color-on-background-black) srgb r g b / 0.35);
104
- outline-color: #7c848b;
104
+ outline-color: var(--semantic-color-stroke-main);
105
105
  outline-style: solid;
106
- outline-width: 0.021rem;
107
- outline-offset: -0.021rem;
106
+ outline-width: 0.063rem;
107
+ outline-offset: -0.063rem;
108
108
  }
109
109
  :global(.noAnimation) :global(.enact-a11y-high-contrast) .flexiblePopupPanels:global(.neutral):global(.highContrast) .header,
110
110
  :global(.noAnimation) :global(.enact-a11y-high-contrast) .flexiblePopupPanels:global(.neutral):global(.highContrast) .content {
@@ -129,8 +129,8 @@
129
129
  box-shadow: 0 0.75rem 1rem 0 color(from var(--semantic-color-on-background-black) srgb r g b / 0.35);
130
130
  outline-color: var(--semantic-color-stroke-overlay-default);
131
131
  outline-style: solid;
132
- outline-width: 0.021rem;
133
- outline-offset: -0.021rem;
132
+ outline-width: 0.063rem;
133
+ outline-offset: -0.063rem;
134
134
  }
135
135
  :global(.noAnimation) .flexiblePopupPanels:global(.light) .header,
136
136
  :global(.noAnimation) .flexiblePopupPanels:global(.light) .content {
@@ -158,8 +158,8 @@
158
158
  box-shadow: 0 0.75rem 1rem 0 color(from var(--semantic-color-on-background-black) srgb r g b / 0.35);
159
159
  outline-color: var(--semantic-color-stroke-overlay-default);
160
160
  outline-style: solid;
161
- outline-width: 0.021rem;
162
- outline-offset: -0.021rem;
161
+ outline-width: 0.063rem;
162
+ outline-offset: -0.063rem;
163
163
  }
164
164
  :global(.noAnimation) .flexiblePopupPanels:global(.game) .header,
165
165
  :global(.noAnimation) .flexiblePopupPanels:global(.game) .content {
@@ -186,8 +186,8 @@
186
186
  box-shadow: 0 0.75rem 1rem 0 color(from var(--semantic-color-on-background-black) srgb r g b / 0.35);
187
187
  outline-color: var(--semantic-color-stroke-overlay-default);
188
188
  outline-style: solid;
189
- outline-width: 0.021rem;
190
- outline-offset: -0.021rem;
189
+ outline-width: 0.063rem;
190
+ outline-offset: -0.063rem;
191
191
  }
192
192
  :global(.noAnimation) :global(.green) .flexiblePopupPanels:global(.game) .header,
193
193
  :global(.noAnimation) :global(.green) .flexiblePopupPanels:global(.game) .content {
@@ -214,8 +214,8 @@
214
214
  box-shadow: 0 0.75rem 1rem 0 color(from var(--semantic-color-on-background-black) srgb r g b / 0.35);
215
215
  outline-color: var(--semantic-color-stroke-overlay-default);
216
216
  outline-style: solid;
217
- outline-width: 0.021rem;
218
- outline-offset: -0.021rem;
217
+ outline-width: 0.063rem;
218
+ outline-offset: -0.063rem;
219
219
  }
220
220
  :global(.noAnimation) :global(.orange) .flexiblePopupPanels:global(.game) .header,
221
221
  :global(.noAnimation) :global(.orange) .flexiblePopupPanels:global(.game) .content {
@@ -237,7 +237,7 @@
237
237
  .panel .bodyLayout {
238
238
  max-height: -webkit-fill-available;
239
239
  pointer-events: auto;
240
- padding: 0 2.25rem;
240
+ padding: 0 var(--primitive-spacing-108);
241
241
  }
242
242
  .panel > *:first-child {
243
243
  pointer-events: auto;
@@ -250,12 +250,12 @@
250
250
  .panel.auto .header,
251
251
  .panel.small .header,
252
252
  .panel.large .header {
253
- margin-left: 3.5rem;
254
- margin-right: 3.5rem;
253
+ margin-left: calc(var(--primitive-spacing-60) + var(--primitive-spacing-108));
254
+ margin-right: calc(var(--primitive-spacing-60) + var(--primitive-spacing-108));
255
255
  }
256
256
  .panel .content {
257
- margin: 0 1.25rem;
258
- padding: 1.25rem 0.5rem;
257
+ margin: 0 var(--primitive-spacing-60);
258
+ padding: var(--primitive-spacing-60);
259
259
  box-sizing: border-box;
260
260
  }
261
261
  .panel.auto {
@@ -274,14 +274,14 @@
274
274
  width: 12.5rem;
275
275
  }
276
276
  .panel.small + .panel.large {
277
- left: -17.5rem;
277
+ left: calc(calc( var(--primitive-spacing-60) + var(--primitive-spacing-60) + 12.5rem + var(--primitive-spacing-60) + var(--primitive-spacing-60) ) * -1);
278
278
  }
279
279
  .panel.large .content,
280
280
  .panel.large .header {
281
281
  width: 27.5rem;
282
282
  }
283
283
  .panel.large + .panel.small {
284
- left: -32.5rem;
284
+ left: calc(calc( var(--primitive-spacing-60) + var(--primitive-spacing-60) + 27.5rem + var(--primitive-spacing-60) + var(--primitive-spacing-60) ));
285
285
  }
286
286
  :global(.enact-locale-right-to-left) .panel > .body {
287
287
  direction: ltr;
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports["default"] = exports.NavButtonFocusDecorator = void 0;
7
7
  exports.useNavButtonFocus = useNavButtonFocus;
8
+ var _util = require("@enact/core/util");
8
9
  var _spotlight = _interopRequireDefault(require("@enact/spotlight"));
9
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _react = require("react");
11
11
  var _FlexiblePopupPanelsModule = _interopRequireDefault(require("./FlexiblePopupPanels.module.css"));
12
12
  var _jsxRuntime = require("react/jsx-runtime");
13
13
  var _excluded = ["index"];
@@ -23,14 +23,11 @@ var prevButtonSelector = ".".concat(_FlexiblePopupPanelsModule["default"].navCel
23
23
  var nextButtonSelector = ".".concat(_FlexiblePopupPanelsModule["default"].navCellAfter, " .").concat(_FlexiblePopupPanelsModule["default"].navButton);
24
24
  function useNavButtonFocus(_ref) {
25
25
  var index = _ref.index;
26
+ var prevIndex = (0, _util.usePrevious)(index);
26
27
  var autoFocus;
27
- var _useRef = (0, _react.useRef)({
28
- index: index
29
- }),
30
- ref = _useRef.current;
31
28
 
32
29
  // on index change
33
- if (index !== ref.index) {
30
+ if (index !== prevIndex) {
34
31
  var current = _spotlight["default"].getCurrent();
35
32
  // if the currently focused component is a nav button
36
33
  if (current && current.classList.contains(_FlexiblePopupPanelsModule["default"].navButton)) {
@@ -39,7 +36,6 @@ function useNavButtonFocus(_ref) {
39
36
  // set autoFocus to point to the selector for the appropriate button
40
37
  autoFocus = prevButtonFocused ? prevButtonSelector : nextButtonSelector;
41
38
  }
42
- ref.index = index;
43
39
  }
44
40
  return {
45
41
  autoFocus: autoFocus
@@ -47,9 +43,10 @@ function useNavButtonFocus(_ref) {
47
43
  }
48
44
  var NavButtonFocusDecorator = exports.NavButtonFocusDecorator = function NavButtonFocusDecorator(Wrapped) {
49
45
  // eslint-disable-next-line no-shadow
50
- function NavButtonFocusDecorator(_ref2) {
51
- var index = _ref2.index,
52
- rest = _objectWithoutProperties(_ref2, _excluded);
46
+ function NavButtonFocusDecorator(props) {
47
+ (0, _util.checkPropTypes)(NavButtonFocusDecorator, props);
48
+ var index = props.index,
49
+ rest = _objectWithoutProperties(props, _excluded);
53
50
  var nav = useNavButtonFocus({
54
51
  index: index
55
52
  });
@@ -65,14 +65,15 @@ export class FormCheckboxItemBase extends React.Component<
65
65
  Merge<React.HTMLProps<HTMLElement>, FormCheckboxItemBaseProps>
66
66
  > {}
67
67
 
68
- export interface FormCheckboxItemDecoratorProps
69
- extends ui_Toggleable_ToggleableProps {}
68
+ export interface FormCheckboxItemDecoratorProps extends ui_Toggleable_ToggleableProps {}
70
69
  export function FormCheckboxItemDecorator<P>(
71
70
  Component: React.ComponentType<P> | string,
72
71
  ): React.ComponentType<P & FormCheckboxItemDecoratorProps>;
73
72
 
74
- export interface FormCheckboxItemProps
75
- extends Merge<FormCheckboxItemBaseProps, FormCheckboxItemDecoratorProps> {}
73
+ export interface FormCheckboxItemProps extends Merge<
74
+ FormCheckboxItemBaseProps,
75
+ FormCheckboxItemDecoratorProps
76
+ > {}
76
77
  /**
77
78
  * A Limestone-styled form item with a checkbox component.
78
79
  *
@@ -36,7 +36,7 @@ corresponding internal elements and states of this component.
36
36
  * If the `spacing` prop is not set (defaulting to "auto"), these values automatically set
37
37
  the spacing to the correlated names.
38
38
  */
39
- size?: "large" | "medium" | "small" | "tiny";
39
+ size?: "large" | "medium" | "small" | "tiny" | "title" | "subtitle";
40
40
  /**
41
41
  * The size of the spacing around the Heading.
42
42
  *
@@ -60,17 +60,18 @@ export class HeadingBase extends React.Component<
60
60
  Merge<React.HTMLProps<HTMLElement>, HeadingBaseProps>
61
61
  > {}
62
62
 
63
- export interface HeadingDecoratorProps
64
- extends Merge<
65
- limestone_Marquee_MarqueeDecoratorProps,
66
- limestone_Skinnable_SkinnableProps
67
- > {}
63
+ export interface HeadingDecoratorProps extends Merge<
64
+ limestone_Marquee_MarqueeDecoratorProps,
65
+ limestone_Skinnable_SkinnableProps
66
+ > {}
68
67
  export function HeadingDecorator<P>(
69
68
  Component: React.ComponentType<P> | string,
70
69
  ): React.ComponentType<P & HeadingDecoratorProps>;
71
70
 
72
- export interface HeadingProps
73
- extends Merge<HeadingBaseProps, HeadingDecoratorProps> {
71
+ export interface HeadingProps extends Merge<
72
+ HeadingBaseProps,
73
+ HeadingDecoratorProps
74
+ > {
74
75
  /**
75
76
  * Marquee animation trigger.
76
77
  *
@@ -86,11 +86,11 @@ var HeadingBase = exports.HeadingBase = (0, _kind["default"])({
86
86
  * If the `spacing` prop is not set (defaulting to "auto"), these values automatically set
87
87
  * the spacing to the correlated names.
88
88
  *
89
- * @type {('large'|'medium'|'small'|'tiny')}
89
+ * @type {('large'|'medium'|'small'|'tiny'|'title'|'subtitle')}
90
90
  * @default 'tiny'
91
91
  * @public
92
92
  */
93
- size: _propTypes["default"].oneOf(['large', 'medium', 'small', 'tiny']),
93
+ size: _propTypes["default"].oneOf(['large', 'medium', 'small', 'tiny', 'title', 'subtitle']),
94
94
  /**
95
95
  * The size for slotBefore and slotAfter.
96
96
  * This size is used for remeasuring marquee metrics for Panels.Header.
@@ -96,23 +96,23 @@
96
96
  .heading.large {
97
97
  font-family: "Limestone";
98
98
  font-weight: var(--primitive-font-weight-semibold);
99
- font-size: 1.5rem;
99
+ font-size: var(--primitive-font-size-72);
100
100
  }
101
101
  .heading.medium {
102
102
  font-family: "Limestone";
103
103
  font-weight: var(--primitive-font-weight-semibold);
104
- font-size: 1.375rem;
104
+ font-size: var(--primitive-font-size-66);
105
105
  }
106
106
  .heading.small {
107
107
  font-family: "Limestone";
108
108
  font-weight: var(--primitive-font-weight-semibold);
109
- font-size: 1.125rem;
109
+ font-size: var(--primitive-font-size-54);
110
110
  }
111
111
  .heading.tiny {
112
112
  margin: var(--primitive-spacing-36) var(--primitive-spacing-24);
113
113
  font-family: "Limestone";
114
114
  font-weight: var(--primitive-font-weight-semibold);
115
- font-size: 1rem;
115
+ font-size: var(--primitive-font-size-48);
116
116
  }
117
117
  .heading.titleSpacing {
118
118
  margin-bottom: 0;
@@ -129,7 +129,7 @@
129
129
  min-height: 0.85417rem;
130
130
  }
131
131
  .heading.smallSpacing {
132
- margin-bottom: calc(var(--primitive-spacing-36) - 1px );
132
+ margin-bottom: calc(var(--primitive-spacing-36) - 1px);
133
133
  min-height: 0.35417rem;
134
134
  }
135
135
  .heading.noneSpacing {
package/Icon/Icon.d.ts CHANGED
@@ -353,14 +353,25 @@ dislikeline
353
353
  like
354
354
  likeline
355
355
  soundbarline
356
- jumpforward
357
- jumpbackward
356
+ jumpforward2
357
+ jumpbackward2
358
+ link2
359
+ btspeakermute
360
+ system
361
+ remotecontrolsetting
362
+ warning
363
+ filepdf
364
+ filedoc
365
+ filexls
366
+ subtitleru
367
+ f1
368
+ mypageru
369
+ };
358
370
  ```
359
371
  */
360
372
  export declare const iconList: object;
361
373
 
362
- export interface IconDecoratorProps
363
- extends limestone_Skinnable_SkinnableProps {}
374
+ export interface IconDecoratorProps extends limestone_Skinnable_SkinnableProps {}
364
375
  export function IconDecorator<P>(
365
376
  Component: React.ComponentType<P> | string,
366
377
  ): React.ComponentType<P & IconDecoratorProps>;
package/Icon/Icon.js CHANGED
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "icons", {
10
10
  return _IconList["default"];
11
11
  }
12
12
  });
13
+ var _deprecate = _interopRequireDefault(require("@enact/core/internal/deprecate"));
13
14
  var _kind = _interopRequireDefault(require("@enact/core/kind"));
14
15
  var _I18nDecorator = require("@enact/i18n/I18nDecorator");
15
16
  var _Icon = require("@enact/ui/Icon");
@@ -40,6 +41,11 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
40
41
  * @exports IconDecorator
41
42
  * @exports icons
42
43
  */
44
+ var warnedJumpBackward = false;
45
+ var warnedJumpBackward2 = false;
46
+ var warnedJumpForward = false;
47
+ var warnedJumpForward2 = false;
48
+
43
49
  /**
44
50
  * Renders a limestone-styled icon without any behavior.
45
51
  *
@@ -57,6 +63,7 @@ var IconBase = exports.IconBase = (0, _kind["default"])({
57
63
  *
58
64
  * @see {@link ui/Icon.IconBase.children}
59
65
  * @type {String|Object}
66
+ * @deprecated `jumpbackward`, `jumpforward`, `jumpbackward2`, and `jumpforward2` icons will be renamed to `previous`, `next`, `jumpbackward`, and `jumpforward` in 2.0.0.
60
67
  * @public
61
68
  */
62
69
  children: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
@@ -152,6 +159,34 @@ var IconBase = exports.IconBase = (0, _kind["default"])({
152
159
  rest = _objectWithoutProperties(_ref4, _excluded);
153
160
  delete rest.locale;
154
161
  delete rest.rtl;
162
+ if (!warnedJumpBackward && rest.children === 'jumpbackward') {
163
+ (0, _deprecate["default"])({
164
+ name: 'Icon `jumpbackward`',
165
+ message: 'Wiil be renamed to `previous` in 2.0.0'
166
+ });
167
+ warnedJumpBackward = true;
168
+ }
169
+ if (!warnedJumpBackward2 && rest.children === 'jumpbackward2') {
170
+ (0, _deprecate["default"])({
171
+ name: 'Icon `jumpbackward2`',
172
+ message: 'Wiil be renamed to `jumpbackward` in 2.0.0'
173
+ });
174
+ warnedJumpBackward2 = true;
175
+ }
176
+ if (!warnedJumpForward && rest.children === 'jumpforward') {
177
+ (0, _deprecate["default"])({
178
+ name: 'Icon `jumpforward`',
179
+ message: 'Wiil be renamed to `next` in 2.0.0'
180
+ });
181
+ warnedJumpForward = true;
182
+ }
183
+ if (!warnedJumpForward2 && rest.children === 'jumpforward2') {
184
+ (0, _deprecate["default"])({
185
+ name: 'Icon `jumpforward2`',
186
+ message: 'Wiil be renamed to `jumpforward` in 2.0.0'
187
+ });
188
+ warnedJumpForward2 = true;
189
+ }
155
190
  return _Icon.IconBase.inline(_objectSpread(_objectSpread({}, rest), {}, {
156
191
  size: typeof size === 'string' ? size : void 0,
157
192
  css: css,
@@ -465,8 +500,20 @@ var IconBase = exports.IconBase = (0, _kind["default"])({
465
500
  * like
466
501
  * likeline
467
502
  * soundbarline
468
- * jumpforward
469
- * jumpbackward
503
+ * jumpforward2
504
+ * jumpbackward2
505
+ * link2
506
+ * btspeakermute
507
+ * system
508
+ * remotecontrolsetting
509
+ * warning
510
+ * filepdf
511
+ * filedoc
512
+ * filexls
513
+ * subtitleru
514
+ * f1
515
+ * mypageru
516
+ };
470
517
  * ```
471
518
  *
472
519
  * @name iconList
@@ -3,7 +3,7 @@
3
3
  text-align: center;
4
4
  position: relative;
5
5
  font-family: "Limestone Icons";
6
- margin: 0.5rem;
6
+ margin: var(--primitive-spacing-24);
7
7
  overflow: hidden;
8
8
  width: var(--icon-size, 1.5rem );
9
9
  height: var(--icon-size, 1.5rem );
package/Icon/IconList.js CHANGED
@@ -79,8 +79,12 @@ var _default = exports["default"] = {
79
79
  // pausejumpbackward
80
80
  jumpforward: 0x0EFFE7,
81
81
  // indicator_end
82
+ next: 0x0EFFE7,
83
+ // indicator_end
82
84
  jumpbackward: 0x0EFFE8,
83
85
  // indicator_begin
86
+ previous: 0x0EFFE8,
87
+ // indicator_begin
84
88
  skip: 0x0EFFE9,
85
89
  // skip
86
90
  list: 0x0EFFEB,
@@ -607,5 +611,27 @@ var _default = exports["default"] = {
607
611
  // soundbar_line
608
612
  jumpforward2: 0x0F01ED,
609
613
  // jumpforward
610
- jumpbackward2: 0x0F01EE // jumpbackward
614
+ jumpbackward2: 0x0F01EE,
615
+ // jumpbackward
616
+ link2: 0x0F01EF,
617
+ // Link
618
+ btspeakermute: 0x0F01F0,
619
+ // bt_speaker_mute
620
+ system: 0x0F01F1,
621
+ // system
622
+ remotecontrolsetting: 0x0F01F2,
623
+ // remote_control_setting
624
+ warning: 0x0F01F3,
625
+ // warning
626
+ filepdf: 0x0F01F4,
627
+ // file_pdf
628
+ filedoc: 0x0F01F5,
629
+ // file_doc
630
+ filexls: 0x0F01F6,
631
+ // file_xls
632
+ subtitleru: 0x10017F,
633
+ // subtitleru
634
+ f1: 0x0F01F8,
635
+ // f1
636
+ mypageru: 0x0F01F7 // mypageru
611
637
  };
@@ -18,11 +18,11 @@ The following properties should be provided:
18
18
  * * `height` - The height of the image
19
19
  * * `width` - The width of the image
20
20
  */
21
- size: object /**
21
+ size: object; /**
22
22
  * Source for the image.
23
23
  String value or Object of values used to determine which image will appear on
24
24
  a specific screenSize.
25
- */;
25
+ */
26
26
  src: string | object;
27
27
  }
28
28
  export interface IconItemBaseProps {
@@ -103,20 +103,21 @@ export class IconItemBase extends React.Component<
103
103
  Merge<React.HTMLProps<HTMLElement>, IconItemBaseProps>
104
104
  > {}
105
105
 
106
- export interface IconItemDecoratorProps
107
- extends Merge<
108
- Merge<
109
- limestone_Marquee_MarqueeControllerProps,
110
- spotlight_Spottable_SpottableProps
111
- >,
112
- limestone_Skinnable_SkinnableProps
113
- > {}
106
+ export interface IconItemDecoratorProps extends Merge<
107
+ Merge<
108
+ limestone_Marquee_MarqueeControllerProps,
109
+ spotlight_Spottable_SpottableProps
110
+ >,
111
+ limestone_Skinnable_SkinnableProps
112
+ > {}
114
113
  export function IconItemDecorator<P>(
115
114
  Component: React.ComponentType<P> | string,
116
115
  ): React.ComponentType<P & IconItemDecoratorProps>;
117
116
 
118
- export interface IconItemProps
119
- extends Merge<IconItemBaseProps, IconItemDecoratorProps> {}
117
+ export interface IconItemProps extends Merge<
118
+ IconItemBaseProps,
119
+ IconItemDecoratorProps
120
+ > {}
120
121
  /**
121
122
  * A limestone-styled icon item, Marquee and Spottable applied.
122
123
  *
@@ -14,6 +14,7 @@ var _Image = _interopRequireDefault(require("../Image"));
14
14
  var _Marquee = require("../Marquee");
15
15
  var _Skinnable = _interopRequireDefault(require("../Skinnable"));
16
16
  var _IconItemModule = _interopRequireDefault(require("./IconItem.module.css"));
17
+ var _Touchable = _interopRequireDefault(require("@enact/ui/Touchable"));
17
18
  var _jsxRuntime = require("react/jsx-runtime");
18
19
  var _excluded = ["children", "disabled"];
19
20
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
@@ -191,6 +192,14 @@ var IconItemBase = exports.IconItemBase = (0, _kind["default"])({
191
192
  * @private
192
193
  */
193
194
  order: _propTypes["default"].number,
195
+ /**
196
+ * Indicates if the component is pressed.
197
+ *
198
+ * @type {Boolean}
199
+ * @default false
200
+ * @private
201
+ */
202
+ pressed: _propTypes["default"].bool,
194
203
  /**
195
204
  * Title text showing below the icon.
196
205
  *
@@ -211,6 +220,7 @@ var IconItemBase = exports.IconItemBase = (0, _kind["default"])({
211
220
  'data-webos-voice-intent': 'Select',
212
221
  labelColor: 'light',
213
222
  labelOn: 'render',
223
+ pressed: false,
214
224
  titleOn: 'render'
215
225
  },
216
226
  styles: {
@@ -224,11 +234,13 @@ var IconItemBase = exports.IconItemBase = (0, _kind["default"])({
224
234
  label = _ref2.label,
225
235
  labelColor = _ref2.labelColor,
226
236
  labelOn = _ref2.labelOn,
237
+ pressed = _ref2.pressed,
227
238
  styler = _ref2.styler,
228
239
  title = _ref2.title,
229
240
  titleOn = _ref2.titleOn;
230
241
  return styler.append({
231
242
  bordered: bordered,
243
+ pressed: pressed,
232
244
  hasLabel: !!label,
233
245
  hasTitle: !!title,
234
246
  labelOnFocus: labelOn === 'focus',
@@ -310,6 +322,7 @@ var IconItemBase = exports.IconItemBase = (0, _kind["default"])({
310
322
  delete rest.label;
311
323
  delete rest.labelColor;
312
324
  delete rest.labelOn;
325
+ delete rest.pressed;
313
326
  delete rest.title;
314
327
  delete rest.titleOn;
315
328
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", _objectSpread(_objectSpread({}, rest), {}, {
@@ -333,6 +346,8 @@ var IconItemBase = exports.IconItemBase = (0, _kind["default"])({
333
346
  */
334
347
  var IconItemDecorator = exports.IconItemDecorator = (0, _compose["default"])((0, _Marquee.MarqueeController)({
335
348
  marqueeOnFocus: true
349
+ }), (0, _Touchable["default"])({
350
+ activeProp: 'pressed'
336
351
  }), _Spottable["default"], _Skinnable["default"]);
337
352
 
338
353
  /**