@enact/limestone 1.3.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 (463) hide show
  1. package/.github/PULL_REQUEST_TEMPLATE.md +28 -0
  2. package/.github/workflows/update-copyright-years.yml +25 -0
  3. package/.travis.yml +40 -0
  4. package/ActionGuide/ActionGuide.d.ts +73 -0
  5. package/ActionGuide/ActionGuide.js +164 -0
  6. package/ActionGuide/ActionGuide.module.css +73 -0
  7. package/ActionGuide/package.json +3 -0
  8. package/ActionGuide/tests/ActionGuide-specs.js +51 -0
  9. package/Alert/Alert.d.ts +155 -0
  10. package/Alert/Alert.js +313 -0
  11. package/Alert/Alert.module.css +190 -0
  12. package/Alert/AlertImage.js +102 -0
  13. package/Alert/AlertImage.module.css +15 -0
  14. package/Alert/package.json +3 -0
  15. package/Alert/tests/Alert-specs.js +204 -0
  16. package/BodyText/BodyText.d.ts +74 -0
  17. package/BodyText/BodyText.js +170 -0
  18. package/BodyText/BodyText.module.css +95 -0
  19. package/BodyText/package.json +3 -0
  20. package/BodyText/tests/BodyText-specs.js +55 -0
  21. package/Button/Button.d.ts +131 -0
  22. package/Button/Button.js +351 -0
  23. package/Button/Button.module.css +2518 -0
  24. package/Button/package.json +3 -0
  25. package/Button/tests/Button-specs.js +252 -0
  26. package/CHANGELOG.md +170 -0
  27. package/Card/Card.d.ts +138 -0
  28. package/Card/Card.js +396 -0
  29. package/Card/Card.module.css +1296 -0
  30. package/Card/package.json +3 -0
  31. package/Card/tests/Card-specs.js +65 -0
  32. package/Checkbox/Checkbox.d.ts +99 -0
  33. package/Checkbox/Checkbox.js +222 -0
  34. package/Checkbox/Checkbox.module.css +1395 -0
  35. package/Checkbox/package.json +3 -0
  36. package/Checkbox/tests/Checkbox-specs.js +79 -0
  37. package/CheckboxItem/CheckboxItem.d.ts +99 -0
  38. package/CheckboxItem/CheckboxItem.js +210 -0
  39. package/CheckboxItem/CheckboxItem.module.css +50 -0
  40. package/CheckboxItem/package.json +3 -0
  41. package/CheckboxItem/tests/CheckboxItem-specs.js +52 -0
  42. package/Chips/Chip.js +252 -0
  43. package/Chips/Chip.module.css +30 -0
  44. package/Chips/Chips.js +215 -0
  45. package/Chips/Chips.module.css +8 -0
  46. package/Chips/index.js +86 -0
  47. package/Chips/tests/Chip-specs.js +186 -0
  48. package/Chips/tests/Chips-specs.js +312 -0
  49. package/ColorPicker/ColorPicker.js +416 -0
  50. package/ColorPicker/ColorPicker.module.css +78 -0
  51. package/ColorPicker/package.json +3 -0
  52. package/ColorPicker/tests/ColorPicker-specs.js +225 -0
  53. package/ColorPicker/utils.js +135 -0
  54. package/ContextualMenuDecorator/ContextualMenuDecorator.d.ts +106 -0
  55. package/ContextualMenuDecorator/ContextualMenuDecorator.js +264 -0
  56. package/ContextualMenuDecorator/ContextualMenuDecorator.module.css +42 -0
  57. package/ContextualMenuDecorator/package.json +3 -0
  58. package/ContextualMenuDecorator/tests/ContextualMenuDecorator-specs.js +136 -0
  59. package/ContextualPopupDecorator/ContextualPopup.js +200 -0
  60. package/ContextualPopupDecorator/ContextualPopup.module.css +270 -0
  61. package/ContextualPopupDecorator/ContextualPopupDecorator.d.ts +182 -0
  62. package/ContextualPopupDecorator/ContextualPopupDecorator.js +867 -0
  63. package/ContextualPopupDecorator/ContextualPopupDecorator.module.css +3 -0
  64. package/ContextualPopupDecorator/HolePunchScrim.js +69 -0
  65. package/ContextualPopupDecorator/HolePunchScrim.module.css +38 -0
  66. package/ContextualPopupDecorator/package.json +3 -0
  67. package/ContextualPopupDecorator/tests/ContextualPopupDecorator-specs.js +621 -0
  68. package/DatePicker/DatePicker.d.ts +173 -0
  69. package/DatePicker/DatePicker.js +175 -0
  70. package/DatePicker/DatePicker.module.css +5 -0
  71. package/DatePicker/DatePickerBase.js +348 -0
  72. package/DatePicker/package.json +3 -0
  73. package/DatePicker/tests/DatePicker-specs.js +247 -0
  74. package/DayPicker/DayPicker.d.ts +92 -0
  75. package/DayPicker/DayPicker.js +188 -0
  76. package/DayPicker/DayPicker.module.css +35 -0
  77. package/DayPicker/DaySelectorDecorator.js +301 -0
  78. package/DayPicker/package.json +3 -0
  79. package/DayPicker/tests/DayPicker-specs.js +138 -0
  80. package/Dropdown/Dropdown.d.ts +135 -0
  81. package/Dropdown/Dropdown.js +460 -0
  82. package/Dropdown/Dropdown.module.css +160 -0
  83. package/Dropdown/DropdownList.js +360 -0
  84. package/Dropdown/package.json +3 -0
  85. package/Dropdown/tests/Dropdown-specs.js +267 -0
  86. package/FixedPopupPanels/FixedPopupPanels.d.ts +72 -0
  87. package/FixedPopupPanels/FixedPopupPanels.js +170 -0
  88. package/FixedPopupPanels/FixedPopupPanels.module.css +146 -0
  89. package/FixedPopupPanels/package.json +3 -0
  90. package/FixedPopupPanels/tests/FixedPopupPanels-specs.js +142 -0
  91. package/FlexiblePopupPanels/FlexiblePopupPanels.js +177 -0
  92. package/FlexiblePopupPanels/FlexiblePopupPanels.module.css +291 -0
  93. package/FlexiblePopupPanels/Header.js +110 -0
  94. package/FlexiblePopupPanels/Panel.js +256 -0
  95. package/FlexiblePopupPanels/index.d.ts +145 -0
  96. package/FlexiblePopupPanels/index.js +68 -0
  97. package/FlexiblePopupPanels/package.json +3 -0
  98. package/FlexiblePopupPanels/tests/FlexiblePopupPanels-specs.js +305 -0
  99. package/FlexiblePopupPanels/useNavButtonFocus.js +65 -0
  100. package/FormCheckboxItem/FormCheckboxItem.d.ts +87 -0
  101. package/FormCheckboxItem/FormCheckboxItem.js +200 -0
  102. package/FormCheckboxItem/FormCheckboxItem.module.css +374 -0
  103. package/FormCheckboxItem/package.json +3 -0
  104. package/FormCheckboxItem/tests/FormCheckboxItem-specs.js +164 -0
  105. package/Heading/Heading.d.ts +104 -0
  106. package/Heading/Heading.js +203 -0
  107. package/Heading/Heading.module.css +217 -0
  108. package/Heading/package.json +3 -0
  109. package/Heading/tests/Heading-specs.js +57 -0
  110. package/Icon/Icon.d.ts +377 -0
  111. package/Icon/Icon.js +503 -0
  112. package/Icon/Icon.module.css +121 -0
  113. package/Icon/IconList.js +611 -0
  114. package/Icon/package.json +3 -0
  115. package/Icon/tests/Icon-specs.js +131 -0
  116. package/IconItem/IconItem.d.ts +137 -0
  117. package/IconItem/IconItem.js +360 -0
  118. package/IconItem/IconItem.module.css +414 -0
  119. package/IconItem/package.json +3 -0
  120. package/IconItem/tests/IconItem-specs.js +106 -0
  121. package/Image/Image.d.ts +60 -0
  122. package/Image/Image.js +165 -0
  123. package/Image/Image.module.css +5 -0
  124. package/Image/package.json +3 -0
  125. package/Image/tests/Image-specs.js +62 -0
  126. package/ImageItem/ImageItem.d.ts +134 -0
  127. package/ImageItem/ImageItem.js +377 -0
  128. package/ImageItem/ImageItem.module.css +1079 -0
  129. package/ImageItem/package.json +3 -0
  130. package/ImageItem/tests/ImageItem-specs.js +223 -0
  131. package/Input/Input.js +715 -0
  132. package/Input/Input.module.css +699 -0
  133. package/Input/InputField.js +487 -0
  134. package/Input/InputField.module.css +763 -0
  135. package/Input/InputFieldDecoratorIcon.js +66 -0
  136. package/Input/InputFieldSpotlightDecorator.js +380 -0
  137. package/Input/Keypad.js +111 -0
  138. package/Input/NumberField.js +311 -0
  139. package/Input/index.d.ts +423 -0
  140. package/Input/index.js +87 -0
  141. package/Input/package.json +3 -0
  142. package/Input/pointer.js +103 -0
  143. package/Input/tests/Input-specs.js +537 -0
  144. package/Input/tests/InputField-specs.js +292 -0
  145. package/Input/tests/InputPopup-specs.js +56 -0
  146. package/Input/util.js +130 -0
  147. package/Item/Item.d.ts +108 -0
  148. package/Item/Item.js +360 -0
  149. package/Item/Item.module.css +665 -0
  150. package/Item/package.json +3 -0
  151. package/Item/tests/Item-specs.js +108 -0
  152. package/KeyGuide/KeyGuide.d.ts +103 -0
  153. package/KeyGuide/KeyGuide.js +254 -0
  154. package/KeyGuide/KeyGuide.module.css +431 -0
  155. package/KeyGuide/package.json +3 -0
  156. package/KeyGuide/tests/KeyGuide-specs.js +168 -0
  157. package/LICENSE +201 -0
  158. package/Marquee/Marquee.d.ts +42 -0
  159. package/Marquee/Marquee.js +45 -0
  160. package/Marquee/package.json +3 -0
  161. package/MediaOverlay/MediaOverlay.d.ts +134 -0
  162. package/MediaOverlay/MediaOverlay.js +304 -0
  163. package/MediaOverlay/MediaOverlay.module.css +292 -0
  164. package/MediaOverlay/package.json +3 -0
  165. package/MediaOverlay/tests/MediaOverlay-specs.js +127 -0
  166. package/MediaPlayer/MediaControls.js +934 -0
  167. package/MediaPlayer/MediaControls.module.css +86 -0
  168. package/MediaPlayer/MediaKnob.js +61 -0
  169. package/MediaPlayer/MediaSlider.js +131 -0
  170. package/MediaPlayer/MediaSlider.module.css +319 -0
  171. package/MediaPlayer/MediaSliderDecorator.js +245 -0
  172. package/MediaPlayer/Times.js +152 -0
  173. package/MediaPlayer/Times.module.css +34 -0
  174. package/MediaPlayer/index.d.ts +223 -0
  175. package/MediaPlayer/index.js +34 -0
  176. package/MediaPlayer/package.json +3 -0
  177. package/MediaPlayer/tests/MediaSlider-specs.js +126 -0
  178. package/MediaPlayer/tests/util-specs.js +114 -0
  179. package/MediaPlayer/util.js +83 -0
  180. package/PageViews/Page.js +77 -0
  181. package/PageViews/Page.module.css +3 -0
  182. package/PageViews/PageViews.js +440 -0
  183. package/PageViews/PageViews.module.css +175 -0
  184. package/PageViews/PageViewsRouter.js +150 -0
  185. package/PageViews/index.js +45 -0
  186. package/PageViews/tests/PageViews-specs.js +192 -0
  187. package/Panels/Header.js +599 -0
  188. package/Panels/Header.module.css +243 -0
  189. package/Panels/Panel.js +347 -0
  190. package/Panels/Panel.module.css +33 -0
  191. package/Panels/Panels.js +258 -0
  192. package/Panels/Panels.module.css +12 -0
  193. package/Panels/index.d.ts +376 -0
  194. package/Panels/index.js +66 -0
  195. package/Panels/package.json +3 -0
  196. package/Panels/tests/Header-specs.js +146 -0
  197. package/Panels/tests/Panels-specs.js +257 -0
  198. package/Picker/Picker.d.ts +193 -0
  199. package/Picker/Picker.js +389 -0
  200. package/Picker/Picker.module.css +46 -0
  201. package/Picker/package.json +3 -0
  202. package/Picker/tests/Picker-specs.js +91 -0
  203. package/Popup/Popup.d.ts +169 -0
  204. package/Popup/Popup.js +690 -0
  205. package/Popup/Popup.module.css +180 -0
  206. package/Popup/package.json +3 -0
  207. package/Popup/tests/Popup-specs.js +475 -0
  208. package/PopupTabLayout/PopupTabLayout.d.ts +196 -0
  209. package/PopupTabLayout/PopupTabLayout.js +605 -0
  210. package/PopupTabLayout/PopupTabLayout.module.css +226 -0
  211. package/PopupTabLayout/package.json +3 -0
  212. package/PopupTabLayout/tests/PopupTabLayout-specs.js +285 -0
  213. package/ProgressBar/ProgressBar.d.ts +171 -0
  214. package/ProgressBar/ProgressBar.js +223 -0
  215. package/ProgressBar/ProgressBar.module.css +264 -0
  216. package/ProgressBar/ProgressBarTooltip.js +359 -0
  217. package/ProgressBar/ProgressBarTooltip.module.css +86 -0
  218. package/ProgressBar/package.json +3 -0
  219. package/ProgressBar/tests/ProgressBar-specs.js +400 -0
  220. package/ProgressButton/ProgressButton.d.ts +57 -0
  221. package/ProgressButton/ProgressButton.js +143 -0
  222. package/ProgressButton/ProgressButton.module.css +147 -0
  223. package/ProgressButton/package.json +3 -0
  224. package/ProgressButton/tests/ProgressButton-specs.js +71 -0
  225. package/QuickGuidePanels/Panel.js +90 -0
  226. package/QuickGuidePanels/QuickGuidePanels.js +463 -0
  227. package/QuickGuidePanels/QuickGuidePanels.module.css +26 -0
  228. package/QuickGuidePanels/index.js +52 -0
  229. package/QuickGuidePanels/tests/QuickGuidePanels-specs.js +250 -0
  230. package/README.md +59 -0
  231. package/RadioItem/RadioItem.d.ts +59 -0
  232. package/RadioItem/RadioItem.js +146 -0
  233. package/RadioItem/RadioItem.module.css +233 -0
  234. package/RadioItem/package.json +3 -0
  235. package/RadioItem/tests/RadioItem-specs.js +62 -0
  236. package/RangePicker/RangePicker.d.ts +174 -0
  237. package/RangePicker/RangePicker.js +372 -0
  238. package/RangePicker/RangePicker.module.css +55 -0
  239. package/RangePicker/package.json +3 -0
  240. package/RangePicker/tests/RangePicker-specs.js +122 -0
  241. package/Region/Region.d.ts +33 -0
  242. package/Region/Region.js +91 -0
  243. package/Region/package.json +3 -0
  244. package/Region/tests/Region-specs.js +28 -0
  245. package/Scroller/ContentContainerDecorator.js +24 -0
  246. package/Scroller/EditableWrapper.js +1036 -0
  247. package/Scroller/EditableWrapper.module.css +22 -0
  248. package/Scroller/Scroller.d.ts +270 -0
  249. package/Scroller/Scroller.js +470 -0
  250. package/Scroller/Scroller.module.css +41 -0
  251. package/Scroller/package.json +3 -0
  252. package/Scroller/tests/ContentContainerDecorator-specs.js +20 -0
  253. package/Scroller/tests/EditableWrapper-specs.js +133 -0
  254. package/Scroller/tests/Scroller-specs.js +159 -0
  255. package/Scroller/useEvent.js +39 -0
  256. package/Scroller/useThemeScroller.js +410 -0
  257. package/Skinnable/Skinnable.d.ts +27 -0
  258. package/Skinnable/Skinnable.js +65 -0
  259. package/Skinnable/package.json +3 -0
  260. package/Slider/Slider.d.ts +218 -0
  261. package/Slider/Slider.js +441 -0
  262. package/Slider/Slider.module.css +880 -0
  263. package/Slider/SliderBehaviorDecorator.js +184 -0
  264. package/Slider/package.json +3 -0
  265. package/Slider/tests/Slider-specs.js +573 -0
  266. package/Slider/utils.js +114 -0
  267. package/Spinner/Spinner.d.ts +64 -0
  268. package/Spinner/Spinner.js +254 -0
  269. package/Spinner/Spinner.module.css +368 -0
  270. package/Spinner/package.json +3 -0
  271. package/Spinner/tests/Spinner-specs.js +70 -0
  272. package/Sprite/Sprite.d.ts +100 -0
  273. package/Sprite/Sprite.js +345 -0
  274. package/Sprite/Sprite.module.css +32 -0
  275. package/Sprite/package.json +3 -0
  276. package/Sprite/tests/Sprite-specs.js +59 -0
  277. package/Steps/Steps.d.ts +119 -0
  278. package/Steps/Steps.js +303 -0
  279. package/Steps/Steps.module.css +130 -0
  280. package/Steps/package.json +3 -0
  281. package/Steps/tests/Steps-specs.js +175 -0
  282. package/Switch/Switch.d.ts +54 -0
  283. package/Switch/Switch.js +143 -0
  284. package/Switch/Switch.module.css +714 -0
  285. package/Switch/package.json +3 -0
  286. package/Switch/tests/Switch-specs.js +54 -0
  287. package/SwitchItem/SwitchItem.d.ts +56 -0
  288. package/SwitchItem/SwitchItem.js +144 -0
  289. package/SwitchItem/SwitchItem.module.css +31 -0
  290. package/SwitchItem/package.json +3 -0
  291. package/SwitchItem/tests/SwitchItem-specs.js +49 -0
  292. package/TabLayout/RefocusDecorator.js +142 -0
  293. package/TabLayout/Tab.js +84 -0
  294. package/TabLayout/TabGroup.js +377 -0
  295. package/TabLayout/TabGroup.module.css +280 -0
  296. package/TabLayout/TabLayout.d.ts +161 -0
  297. package/TabLayout/TabLayout.js +661 -0
  298. package/TabLayout/TabLayout.module.css +101 -0
  299. package/TabLayout/package.json +3 -0
  300. package/TabLayout/tests/TabGroup-specs.js +214 -0
  301. package/TabLayout/tests/TabLayout-specs.js +740 -0
  302. package/ThemeDecorator/AccessibilityDecorator.js +151 -0
  303. package/ThemeDecorator/I18nFontDecorator.js +33 -0
  304. package/ThemeDecorator/ThemeDecorator.d.ts +143 -0
  305. package/ThemeDecorator/ThemeDecorator.js +307 -0
  306. package/ThemeDecorator/ThemeDecorator.module.css +1250 -0
  307. package/ThemeDecorator/fontGenerator.js +76 -0
  308. package/ThemeDecorator/package.json +3 -0
  309. package/ThemeDecorator/screenTypes.json +10 -0
  310. package/ThemeDecorator/tests/ThemeDecorator-specs.js +151 -0
  311. package/TimePicker/TimePicker.d.ts +147 -0
  312. package/TimePicker/TimePicker.js +255 -0
  313. package/TimePicker/TimePicker.module.css +61 -0
  314. package/TimePicker/TimePickerBase.js +396 -0
  315. package/TimePicker/package.json +3 -0
  316. package/TimePicker/tests/TimePicker-specs.js +248 -0
  317. package/TooltipDecorator/Tooltip.js +252 -0
  318. package/TooltipDecorator/Tooltip.module.css +496 -0
  319. package/TooltipDecorator/TooltipDecorator.d.ts +229 -0
  320. package/TooltipDecorator/TooltipDecorator.js +260 -0
  321. package/TooltipDecorator/TooltipLabel.js +117 -0
  322. package/TooltipDecorator/package.json +3 -0
  323. package/TooltipDecorator/tests/TooltipDecorator-specs.js +224 -0
  324. package/TooltipDecorator/tests/useTooltip-specs.js +266 -0
  325. package/TooltipDecorator/useTooltip.js +278 -0
  326. package/TooltipDecorator/util.js +273 -0
  327. package/VideoPlayer/Feedback.js +110 -0
  328. package/VideoPlayer/Feedback.module.css +55 -0
  329. package/VideoPlayer/FeedbackContent.js +99 -0
  330. package/VideoPlayer/FeedbackIcon.js +67 -0
  331. package/VideoPlayer/FeedbackIcons.js +76 -0
  332. package/VideoPlayer/FeedbackTooltip.js +242 -0
  333. package/VideoPlayer/FeedbackTooltip.module.css +160 -0
  334. package/VideoPlayer/MediaTitle.js +143 -0
  335. package/VideoPlayer/MediaTitle.module.css +95 -0
  336. package/VideoPlayer/Overlay.js +51 -0
  337. package/VideoPlayer/Video.js +345 -0
  338. package/VideoPlayer/VideoPlayer.d.ts +582 -0
  339. package/VideoPlayer/VideoPlayer.js +2116 -0
  340. package/VideoPlayer/VideoPlayer.module.css +164 -0
  341. package/VideoPlayer/package.json +3 -0
  342. package/VideoPlayer/tests/Video-specs.js +235 -0
  343. package/VideoPlayer/tests/VideoPlayer-specs.js +180 -0
  344. package/VirtualList/VirtualList.d.ts +411 -0
  345. package/VirtualList/VirtualList.js +931 -0
  346. package/VirtualList/VirtualList.module.css +52 -0
  347. package/VirtualList/package.json +3 -0
  348. package/VirtualList/tests/VirtualGridList-specs.js +289 -0
  349. package/VirtualList/tests/VirtualGridList-translate-specs.js +711 -0
  350. package/VirtualList/tests/VirtualList-specs.js +288 -0
  351. package/VirtualList/tests/VirtualList-translate-specs.js +704 -0
  352. package/VirtualList/tests/useEvent-specs.js +172 -0
  353. package/VirtualList/tests/useEvent-translate-specs.js +309 -0
  354. package/VirtualList/useEvent.js +324 -0
  355. package/VirtualList/usePreventScroll.js +31 -0
  356. package/VirtualList/useSpotlight.js +157 -0
  357. package/VirtualList/useThemeVirtualList.js +471 -0
  358. package/VirtualList/useThemeVirtualList.module.css +34 -0
  359. package/WizardPanels/Panel.js +99 -0
  360. package/WizardPanels/WizardPanels.js +501 -0
  361. package/WizardPanels/WizardPanels.module.css +15 -0
  362. package/WizardPanels/index.d.ts +182 -0
  363. package/WizardPanels/index.js +50 -0
  364. package/WizardPanels/package.json +3 -0
  365. package/WizardPanels/tests/WizardPanels-specs.js +713 -0
  366. package/codecov.yml +13 -0
  367. package/fonts/Limestone_Icons.ttf +0 -0
  368. package/fonts/Miso/LICENSE.txt +75 -0
  369. package/fonts/Miso/Miso-Bold.ttf +0 -0
  370. package/fonts/Miso/Miso-Light.ttf +0 -0
  371. package/fonts/Miso/Miso-Regular.ttf +0 -0
  372. package/fonts/MuseoSans/LICENSE.txt +75 -0
  373. package/fonts/MuseoSans/MuseoSans-Black.ttf +0 -0
  374. package/fonts/MuseoSans/MuseoSans-BlackItalic.ttf +0 -0
  375. package/fonts/MuseoSans/MuseoSans-Bold.ttf +0 -0
  376. package/fonts/MuseoSans/MuseoSans-BoldItalic.ttf +0 -0
  377. package/fonts/MuseoSans/MuseoSans-Light.ttf +0 -0
  378. package/fonts/MuseoSans/MuseoSans-Medium.ttf +0 -0
  379. package/fonts/MuseoSans/MuseoSans-MediumItalic.ttf +0 -0
  380. package/fonts/MuseoSans/MuseoSans-Thin.ttf +0 -0
  381. package/index.js +2 -0
  382. package/internal/$L/$L.d.ts +21 -0
  383. package/internal/$L/$L.js +97 -0
  384. package/internal/$L/package.json +3 -0
  385. package/internal/AsyncRenderChildren/AsyncRenderChildren.js +74 -0
  386. package/internal/AsyncRenderChildren/package.json +3 -0
  387. package/internal/AsyncRenderChildren/tests/AsyncRenderChildren-specs.js +49 -0
  388. package/internal/DateComponentPicker/DateComponentPicker.js +165 -0
  389. package/internal/DateComponentPicker/DateComponentPicker.module.css +53 -0
  390. package/internal/DateComponentPicker/DateComponentRangePicker.js +132 -0
  391. package/internal/DateComponentPicker/index.js +31 -0
  392. package/internal/DateComponentPicker/package.json +3 -0
  393. package/internal/DateTime/DateTime.js +83 -0
  394. package/internal/DateTime/DateTime.module.css +51 -0
  395. package/internal/DateTime/DateTimeDecorator.js +268 -0
  396. package/internal/DateTime/index.js +37 -0
  397. package/internal/DateTime/package.json +3 -0
  398. package/internal/DateTime/tests/DateTimeDecorator-specs.js +33 -0
  399. package/internal/DebounceDecorator/DebounceDecorator.js +125 -0
  400. package/internal/DebounceDecorator/package.json +3 -0
  401. package/internal/DebounceDecorator/tests/DebounceDecorator-specs.js +151 -0
  402. package/internal/Panels/Arrangers.js +248 -0
  403. package/internal/Panels/CancelDecorator.js +43 -0
  404. package/internal/Panels/FloatingLayerIdProvider.js +27 -0
  405. package/internal/Panels/NavigationButton.js +64 -0
  406. package/internal/Panels/NavigationButton.module.css +69 -0
  407. package/internal/Panels/PanelsRouter.js +223 -0
  408. package/internal/Panels/PopupDecorator.js +287 -0
  409. package/internal/Panels/TransitionDecorator.js +99 -0
  410. package/internal/Panels/Viewport.js +313 -0
  411. package/internal/Panels/Viewport.module.css +25 -0
  412. package/internal/Panels/captureKeys.js +48 -0
  413. package/internal/Panels/index.js +101 -0
  414. package/internal/Panels/package.json +3 -0
  415. package/internal/Panels/useAutoFocus.js +95 -0
  416. package/internal/Panels/useFocusOnTransition.js +45 -0
  417. package/internal/Panels/useToggleRole.js +30 -0
  418. package/internal/Panels/util.js +64 -0
  419. package/internal/Picker/Picker.js +942 -0
  420. package/internal/Picker/Picker.module.css +1145 -0
  421. package/internal/Picker/PickerButton.js +97 -0
  422. package/internal/Picker/PickerItem.js +38 -0
  423. package/internal/Picker/SpottablePicker.js +63 -0
  424. package/internal/Picker/package.json +3 -0
  425. package/internal/Picker/tests/Picker-specs.js +968 -0
  426. package/internal/SharedStateDecorator/SharedStateDecorator.js +167 -0
  427. package/internal/SharedStateDecorator/package.json +3 -0
  428. package/internal/SharedStateDecorator/tests/SharedStateDecorator-specs.js +277 -0
  429. package/internal/WindowEventable/WindowEventable.js +114 -0
  430. package/internal/WindowEventable/package.json +3 -0
  431. package/internal/util/package.json +3 -0
  432. package/internal/util/util.js +79 -0
  433. package/internal/validators/package.json +4 -0
  434. package/internal/validators/tests/validators-specs.js +80 -0
  435. package/internal/validators/validators.js +136 -0
  436. package/package.json +69 -0
  437. package/resources/ilibmanifest.json +3 -0
  438. package/styles/color-mixins.less +230 -0
  439. package/styles/colors-game-green.less +25 -0
  440. package/styles/colors-game-orange.less +25 -0
  441. package/styles/colors-game.less +56 -0
  442. package/styles/colors-highcontrast.less +21 -0
  443. package/styles/colors.less +435 -0
  444. package/styles/mixins.less +337 -0
  445. package/styles/skin.less +54 -0
  446. package/styles/variables-base.less +32 -0
  447. package/styles/variables-game.less +25 -0
  448. package/styles/variables.less +1182 -0
  449. package/useScroll/HoverToScroll.js +265 -0
  450. package/useScroll/HoverToScroll.module.css +38 -0
  451. package/useScroll/OverscrollEffect.module.css +14 -0
  452. package/useScroll/Scrollbar.js +171 -0
  453. package/useScroll/Scrollbar.module.css +19 -0
  454. package/useScroll/ScrollbarPlaceholder.js +64 -0
  455. package/useScroll/ScrollbarTrack.js +209 -0
  456. package/useScroll/ScrollbarTrack.module.css +136 -0
  457. package/useScroll/package.json +3 -0
  458. package/useScroll/useEvent.js +693 -0
  459. package/useScroll/useOverscrollEffect.js +105 -0
  460. package/useScroll/useScroll.js +523 -0
  461. package/useScroll/useScroll.module.css +49 -0
  462. package/useScroll/useSpotlight.js +32 -0
  463. package/useScroll/useThemeScrollContentHandle.js +32 -0
package/codecov.yml ADDED
@@ -0,0 +1,13 @@
1
+ ignore:
2
+ - "Scroller/EditableWrapper.js"
3
+ - "useScroll/HoverToScroll.js"
4
+ coverage:
5
+ status:
6
+ project:
7
+ default:
8
+ # basic
9
+ target: auto
10
+ threshold: 0%
11
+ # advanced settings
12
+ informational: false
13
+ only_pulls: true
Binary file
@@ -0,0 +1,75 @@
1
+ Miso Font License
2
+
3
+ Terms and Conditions for Use, Reproduction and Distribution
4
+
5
+ 1. Definitions.
6
+
7
+ “License” shall mean the terms and conditions for use, reproduction, and
8
+ distribution of the Font Software as defined herein. "You" (or "Your") shall
9
+ mean an individual or Legal Entity exercising rights and assuming obligations
10
+ granted by this License.
11
+
12
+ “LGSVL” shall mean LG Silicon Valley Lab, Division of Zenith Electronics, LLC.
13
+
14
+ “Font Software” shall mean certain Font Software designs created by Marten
15
+ “Nettelbladt (MN” or Licensor”) and licensed to LGSVL (with sublicense rights)
16
+ “for implementation into consumer electronics products, applications, devices,
17
+ “and other LG interactive products.
18
+
19
+ “Enact Applications” shall mean applications developed using the Enact JavaScript
20
+ “application framework
21
+
22
+ 2. Grant of License. LGSVL grants you a non-exclusive, perpetual, irrevocable,
23
+ non- sublicensable, worldwide, fully paid-up license to use, reproduce, use,
24
+ make use, display and distribute an unlimited number of units of the Font
25
+ Software for the sole purpose of implementation into an unlimited number of
26
+ units of Enact Applications pursuant to the terms of this Agreement.
27
+
28
+ 3. Embedding. You may embed the Font Software in Enact Applications either as a
29
+ rasterized representation of the Font Software or as a subset of the Font
30
+ Software so long as the Font Software as embedded in applications, products or
31
+ devices is distributed in a secure format that permits only the viewing, but not
32
+ the editing of the Fonts.
33
+
34
+ 4. Back-up. You may make back-up copies of the Font Software solely for
35
+ archival purposes, provided that exclusive custody and control is retained over
36
+ such copies.
37
+
38
+ 5. Modifications. Except as granted herein, you may not modify, reverse
39
+ engineer, decompile, disassemble, alter, or attempt to discover the source code
40
+ of the Font Software.
41
+
42
+ 6. Restrictions. This license is restricted for use with Enact Applications
43
+
44
+ 7. Ownership. All copyrights, trademarks and other intellectual property
45
+ rights in the Font Software belong exclusively to MN and are protected by U.S.
46
+ copyright laws, the copyright and design laws of other nations, and by
47
+ international treaties. You shall obtain no ownership rights in the Font
48
+ Software pursuant to this Agreement or otherwise.
49
+
50
+ 8. Governing Law. This Agreement shall be governed by the laws of the State of
51
+ California, without regard to its conflict of laws provisions. Each party
52
+ agrees that any action or proceeding initiated by either party in connection
53
+ with this Agreement shall be heard exclusively in state or federal courts
54
+ located in Santa Clara County, California.
55
+
56
+ 9. Disclaimer of Warranty. Unless required by applicable law or agreed to in
57
+ writing, Licensor provides the Font Software on an "AS IS" BASIS, WITHOUT
58
+ WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including,
59
+ without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT,
60
+ MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible
61
+ for determining the appropriateness of using or redistributing the Font Software
62
+ and assume any risks associated with Your exercise of permissions under this
63
+ License.
64
+
65
+ 10. Limitation of Liability. In no event and under no legal theory, whether in
66
+ tort (including negligence), contract, or otherwise, unless required by
67
+ applicable law (such as deliberate and grossly negligent acts) or agreed to in
68
+ writing, shall LGSVL or Licensor be liable to You for damages, including any
69
+ direct, indirect, special, incidental, or consequential damages of any character
70
+ arising as a result of this License or out of the use or inability to use the
71
+ Font Software (including but not limited to damages for loss of goodwill, work
72
+ stoppage, computer failure or malfunction, or any and all other commercial
73
+ damages or losses), even if LGSVL or Licensor has been advised of the
74
+ possibility of such damages.
75
+
Binary file
Binary file
Binary file
@@ -0,0 +1,75 @@
1
+ Museo Sans Font License
2
+
3
+ Terms and Conditions for Use, Reproduction and Distribution
4
+
5
+ 1. Definitions.
6
+
7
+ “License” shall mean the terms and conditions for use, reproduction, and
8
+ distribution of the Font Software as defined herein. "You" (or "Your") shall
9
+ mean an individual or Legal Entity exercising rights and assuming obligations
10
+ granted by this License.
11
+
12
+ “LGSVL” shall mean LG Silicon Valley Lab, Division of Zenith Electronics, LLC.
13
+
14
+ “Font Software” shall mean certain Font Software designs created by exljibris
15
+ “Font Foundry (ELJ” or Licensor”) and licensed to LGSVL (with sublicense rights)
16
+ “for implementation into consumer electronics products, applications, devices,
17
+ “and other LG interactive products.
18
+
19
+ “Enact Applications” shall mean applications developed using the Enact JavaScript
20
+ “application framework
21
+
22
+ 2. Grant of License. LGSVL grants you a non-exclusive, perpetual, irrevocable,
23
+ non- sublicensable, worldwide, fully paid-up license to use, reproduce, use,
24
+ make use, display and distribute an unlimited number of units of the Font
25
+ Software for the sole purpose of implementation into an unlimited number of
26
+ units of Enact Applications pursuant to the terms of this Agreement.
27
+
28
+ 3. Embedding. You may embed the Font Software in Enact Applications either as a
29
+ rasterized representation of the Font Software or as a subset of the Font
30
+ Software so long as the Font Software as embedded in applications, products or
31
+ devices is distributed in a secure format that permits only the viewing, but not
32
+ the editing of the Fonts.
33
+
34
+ 4. Back-up. You may make back-up copies of the Font Software solely for
35
+ archival purposes, provided that exclusive custody and control is retained over
36
+ such copies.
37
+
38
+ 5. Modifications. Except as granted herein, you may not modify, reverse
39
+ engineer, decompile, disassemble, alter, or attempt to discover the source code
40
+ of the Font Software.
41
+
42
+ 6. Restrictions. This license is restricted for use with Enact Applications
43
+
44
+ 7. Ownership. All copyrights, trademarks and other intellectual property
45
+ rights in the Font Software belong exclusively to ELJ and are protected by U.S.
46
+ copyright laws, the copyright and design laws of other nations, and by
47
+ international treaties. You shall obtain no ownership rights in the Font
48
+ Software pursuant to this Agreement or otherwise.
49
+
50
+ 8. Governing Law. This Agreement shall be governed by the laws of the State of
51
+ California, without regard to its conflict of laws provisions. Each party
52
+ agrees that any action or proceeding initiated by either party in connection
53
+ with this Agreement shall be heard exclusively in state or federal courts
54
+ located in Santa Clara County, California.
55
+
56
+ 9. Disclaimer of Warranty. Unless required by applicable law or agreed to in
57
+ writing, Licensor provides the Font Software on an "AS IS" BASIS, WITHOUT
58
+ WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including,
59
+ without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT,
60
+ MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible
61
+ for determining the appropriateness of using or redistributing the Font Software
62
+ and assume any risks associated with Your exercise of permissions under this
63
+ License.
64
+
65
+ 10. Limitation of Liability. In no event and under no legal theory, whether in
66
+ tort (including negligence), contract, or otherwise, unless required by
67
+ applicable law (such as deliberate and grossly negligent acts) or agreed to in
68
+ writing, shall LGSVL or Licensor be liable to You for damages, including any
69
+ direct, indirect, special, incidental, or consequential damages of any character
70
+ arising as a result of this License or out of the use or inability to use the
71
+ Font Software (including but not limited to damages for loss of goodwill, work
72
+ stoppage, computer failure or malfunction, or any and all other commercial
73
+ damages or losses), even if LGSVL or Licensor has been advised of the
74
+ possibility of such damages.
75
+
package/index.js ADDED
@@ -0,0 +1,2 @@
1
+ // This space intentionally left blank
2
+ "use strict";
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Returns the current ilib.ResBundle
3
+ */
4
+ function getResBundle(): ResBundle;
5
+ /**
6
+ * Creates a new ilib.ResBundle for string translation
7
+ */
8
+ function createResBundle(options: Locale): Promise | ResBundle;
9
+ /**
10
+ * Deletes the current bundle object of strings.
11
+ */
12
+ function clearResBundle(): void;
13
+ /**
14
+ * Set the locale for the strings that $L loads. This may reload the
15
+ string resources if necessary.
16
+ */
17
+ function setResBundle(bundle: string): ResBundle;
18
+ /**
19
+ * Maps a string or key/value object to a translated string for the current locale.
20
+ */
21
+ function $L(str: string | object): string;
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.$L = $L;
7
+ exports.clearResBundle = clearResBundle;
8
+ exports.createResBundle = createResBundle;
9
+ exports["default"] = void 0;
10
+ exports.setResBundle = setResBundle;
11
+ var _resBundle = require("@enact/i18n/src/resBundle");
12
+ var _ResBundle = _interopRequireDefault(require("ilib/lib/ResBundle"));
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
14
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
17
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
18
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* global ILIB_SANDSTONE_PATH */
19
+ // The ilib.ResBundle for the active locale used by $L
20
+ var resBundle;
21
+
22
+ /**
23
+ * Returns the current ilib.ResBundle
24
+ *
25
+ * @returns {ilib.ResBundle} Current ResBundle
26
+ */
27
+ function getResBundle() {
28
+ return resBundle;
29
+ }
30
+
31
+ /**
32
+ * Creates a new ilib.ResBundle for string translation
33
+ *
34
+ * @param {ilib.Locale} options Locale for ResBundle
35
+ *
36
+ * @returns {Promise|ResBundle} Resolves with a new ilib.ResBundle
37
+ */
38
+ function createResBundle(options) {
39
+ var opts = options;
40
+ if (typeof ILIB_SANDSTONE_PATH !== 'undefined') {
41
+ opts.basePath = ILIB_SANDSTONE_PATH;
42
+ }
43
+ if (!opts.onLoad) return;
44
+
45
+ // eslint-disable-next-line no-new
46
+ new _ResBundle["default"](_objectSpread(_objectSpread({}, opts), {}, {
47
+ onLoad: function onLoad(bundle) {
48
+ opts.onLoad(bundle || null);
49
+ }
50
+ }));
51
+ }
52
+
53
+ /**
54
+ * Deletes the current bundle object of strings.
55
+ * @returns {undefined}
56
+ */
57
+ function clearResBundle() {
58
+ delete _ResBundle["default"].strings;
59
+ delete _ResBundle["default"].sysres;
60
+ resBundle = null;
61
+ }
62
+
63
+ /**
64
+ * Set the locale for the strings that $L loads. This may reload the
65
+ * string resources if necessary.
66
+ *
67
+ * @param {string} bundle the locale specifier
68
+ * @returns {ilib.ResBundle} Current ResBundle
69
+ */
70
+ function setResBundle(bundle) {
71
+ return resBundle = bundle;
72
+ }
73
+ function toIString(str) {
74
+ var rb = getResBundle();
75
+ if (!rb) {
76
+ createResBundle({
77
+ sync: true,
78
+ onLoad: setResBundle
79
+ });
80
+ rb = getResBundle();
81
+ }
82
+ return (0, _resBundle.getIStringFromBundle)(str, rb);
83
+ }
84
+
85
+ /**
86
+ * Maps a string or key/value object to a translated string for the current locale.
87
+ *
88
+ * @function
89
+ * @memberof i18n/$L
90
+ * @param {String|Object} str Source string
91
+ *
92
+ * @returns {String} The translated string
93
+ */
94
+ function $L(str) {
95
+ return String(toIString(str));
96
+ }
97
+ var _default = exports["default"] = $L;
@@ -0,0 +1,3 @@
1
+ {
2
+ "main": "$L.js"
3
+ }
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AsyncRenderChildren = AsyncRenderChildren;
7
+ exports["default"] = void 0;
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
9
+ var _react = require("react");
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
11
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
12
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
13
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
14
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
15
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
16
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
17
+ // A delay that prevents children from being rendered to some extent
18
+ // when the user continues to wheel through the list
19
+ var delayToRenderChildren = 600;
20
+
21
+ /**
22
+ * This component introduced to enhance scroll performance when `ImageItem` or `Card` used in `VirtualGridList`.
23
+ * Basically it renders `children` asynchronously when `children` and `index` changed.
24
+ * When `ImageItem` used in other components, it will render immediately.
25
+ *
26
+ * @class AsyncRenderChildren
27
+ * @ui
28
+ * @private
29
+ */
30
+ function AsyncRenderChildren(_ref) {
31
+ var children = _ref.children,
32
+ _ref$fallback = _ref.fallback,
33
+ fallback = _ref$fallback === void 0 ? '' : _ref$fallback,
34
+ index = _ref.index;
35
+ var _useState = (0, _react.useState)(index),
36
+ _useState2 = _slicedToArray(_useState, 2),
37
+ prevIndex = _useState2[0],
38
+ setPrevIndex = _useState2[1];
39
+ var timerRef = (0, _react.useRef)(null);
40
+ var async = index !== prevIndex;
41
+ (0, _react.useEffect)(function () {
42
+ if (async) {
43
+ timerRef.current = setTimeout(function () {
44
+ timerRef.current = null;
45
+ setPrevIndex(index);
46
+ }, delayToRenderChildren);
47
+ }
48
+ return function () {
49
+ if (timerRef.current) {
50
+ clearTimeout(timerRef.current);
51
+ timerRef.current = null;
52
+ }
53
+ };
54
+ });
55
+ return async ? fallback : children;
56
+ }
57
+ AsyncRenderChildren.propTypes = /** @lends limestone/ImageItem.AsyncRenderChildren.prototype */{
58
+ /**
59
+ * The fallback element that shows before `children` render.
60
+ *
61
+ * @type {*}
62
+ * @private
63
+ */
64
+ fallback: _propTypes["default"].any,
65
+ /**
66
+ * `data-index` of {@link limestone/ImageItem|ImageItem} or {@link limestone/Card|Card}.
67
+ * Renders `children` asynchronously when this value changed.
68
+ *
69
+ * @type {Number}
70
+ * @private
71
+ */
72
+ index: _propTypes["default"].number
73
+ };
74
+ var _default = exports["default"] = AsyncRenderChildren;
@@ -0,0 +1,3 @@
1
+ {
2
+ "main": "AsyncRenderChildren.js"
3
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ require("@testing-library/jest-dom");
4
+ var _react = require("@testing-library/react");
5
+ var _AsyncRenderChildren = _interopRequireDefault(require("../AsyncRenderChildren"));
6
+ var _jsxRuntime = require("react/jsx-runtime");
7
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
8
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
11
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
12
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
13
+ var data = {};
14
+ var Component = function Component(props) {
15
+ data = props;
16
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_AsyncRenderChildren["default"], _objectSpread({}, props));
17
+ };
18
+ describe('AsyncRenderChildren', function () {
19
+ test('should have a fallback content', function () {
20
+ (0, _react.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(Component, {
21
+ fallback: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
22
+ children: "Loading..."
23
+ }),
24
+ index: 1,
25
+ children: "children"
26
+ }));
27
+ var fallbackContent = data.fallback.props.children;
28
+ expect(fallbackContent).toBe('Loading...');
29
+ });
30
+ test('should have a fallback content after changing index', function () {
31
+ var _render = (0, _react.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(Component, {
32
+ fallback: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
33
+ children: "Loading..."
34
+ }),
35
+ index: 1,
36
+ children: "children"
37
+ })),
38
+ rerender = _render.rerender;
39
+ rerender(/*#__PURE__*/(0, _jsxRuntime.jsx)(Component, {
40
+ fallback: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
41
+ children: "Loading..."
42
+ }),
43
+ index: 2,
44
+ children: "children"
45
+ }));
46
+ var fallbackContent = data.fallback.props.children;
47
+ expect(fallbackContent).toBe('Loading...');
48
+ });
49
+ });
@@ -0,0 +1,165 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = exports.DateComponentPickerBase = exports.DateComponentPicker = void 0;
7
+ var _kind = _interopRequireDefault(require("@enact/core/kind"));
8
+ var _util = require("@enact/core/util");
9
+ var _Changeable = _interopRequireDefault(require("@enact/ui/Changeable"));
10
+ var _react = require("react");
11
+ var _propTypes = _interopRequireDefault(require("prop-types"));
12
+ var _Picker = _interopRequireWildcard(require("../Picker"));
13
+ var _DateComponentPickerModule = _interopRequireDefault(require("./DateComponentPicker.module.css"));
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+ var _excluded = ["aria-valuetext", "accessibilityHint", "children", "label", "max", "noAnimation", "reverse", "value", "voiceLabel", "wrap"];
16
+ /**
17
+ * {@link limestone/internal/DataComponentPicker.DateComponentPickerBase} allows the selection of one
18
+ * part of the date or time using a {@link limestone/Picker.Picker}.
19
+ *
20
+ * @class DateComponentPickerBase
21
+ * @memberof limestone/internal/DateComponentPicker
22
+ * @ui
23
+ * @private
24
+ */
25
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
26
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
27
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
29
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
30
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
31
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
32
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
33
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
34
+ var DateComponentPickerBase = exports.DateComponentPickerBase = (0, _kind["default"])({
35
+ name: 'DateComponentPicker',
36
+ propTypes: /** @lends limestone/internal/DateComponentPicker.DateComponentPickerBase.prototype */{
37
+ /**
38
+ * Display values representing the `value` to select
39
+ *
40
+ * @type {String[]}
41
+ * @required
42
+ * @public
43
+ */
44
+ children: _propTypes["default"].arrayOf(_propTypes["default"].string).isRequired,
45
+ /**
46
+ * The value of the date component
47
+ *
48
+ * @type {Number}
49
+ * @required
50
+ * @public
51
+ */
52
+ value: _propTypes["default"].number.isRequired,
53
+ /**
54
+ * Sets the hint string read when focusing the picker.
55
+ *
56
+ * @type {String}
57
+ * @public
58
+ */
59
+ accessibilityHint: _propTypes["default"].string,
60
+ /**
61
+ * Overrides the `aria-valuetext` for the picker. By default, `aria-valuetext` is set
62
+ * to the current selected child and accessibilityHint text.
63
+ *
64
+ * @type {String}
65
+ * @memberof limestone/internal/DateComponentPicker.DateComponentPickerBase.prototype
66
+ * @public
67
+ */
68
+ 'aria-valuetext': _propTypes["default"].string,
69
+ /**
70
+ * The label to display below the picker
71
+ *
72
+ * @type {String}
73
+ */
74
+ label: _propTypes["default"].string,
75
+ /**
76
+ * By default, the picker will animate transitions between items if it has a defined
77
+ * `width`. Specifying `noAnimation` will prevent any transition animation for the
78
+ * component.
79
+ *
80
+ * @type {Boolean}
81
+ * @public
82
+ */
83
+ noAnimation: _propTypes["default"].bool,
84
+ /**
85
+ * When `true`, the picker buttons operate in the reverse direction.
86
+ *
87
+ * @type {Boolean}
88
+ * @public
89
+ */
90
+ reverse: _propTypes["default"].bool,
91
+ /*
92
+ * When `true`, allow the picker to continue from the opposite end of the list of options.
93
+ *
94
+ * @type {Boolean}
95
+ * @public
96
+ */
97
+ wrap: _propTypes["default"].bool
98
+ },
99
+ styles: {
100
+ css: _DateComponentPickerModule["default"],
101
+ className: 'dateComponentPicker'
102
+ },
103
+ computed: {
104
+ children: function children(_ref) {
105
+ var _children = _ref.children;
106
+ return (0, _util.mapAndFilterChildren)(_children, function (child) {
107
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Picker.PickerItem, {
108
+ marqueeDisabled: true,
109
+ children: child
110
+ });
111
+ });
112
+ },
113
+ max: function max(_ref2) {
114
+ var children = _ref2.children;
115
+ return _react.Children.count(children) - 1;
116
+ },
117
+ voiceLabel: function voiceLabel(_ref3) {
118
+ var children = _ref3.children;
119
+ return JSON.stringify(children);
120
+ }
121
+ },
122
+ render: function render(_ref4) {
123
+ var ariaValuetext = _ref4['aria-valuetext'],
124
+ accessibilityHint = _ref4.accessibilityHint,
125
+ children = _ref4.children,
126
+ label = _ref4.label,
127
+ max = _ref4.max,
128
+ noAnimation = _ref4.noAnimation,
129
+ reverse = _ref4.reverse,
130
+ value = _ref4.value,
131
+ voiceLabel = _ref4.voiceLabel,
132
+ wrap = _ref4.wrap,
133
+ rest = _objectWithoutProperties(_ref4, _excluded);
134
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Picker["default"], _objectSpread(_objectSpread({}, rest), {}, {
135
+ accessibilityHint: accessibilityHint == null ? label : accessibilityHint,
136
+ "aria-valuetext": accessibilityHint == null ? ariaValuetext : null,
137
+ "data-webos-voice-labels-ext": voiceLabel,
138
+ index: value,
139
+ joined: true,
140
+ max: max,
141
+ min: 0,
142
+ noAnimation: noAnimation,
143
+ orientation: "vertical",
144
+ reverse: reverse,
145
+ step: 1,
146
+ value: value,
147
+ wrap: wrap,
148
+ children: children
149
+ }));
150
+ }
151
+ });
152
+
153
+ /**
154
+ * {@link limestone/internal/DateComponentPickerBase.DateComponentPicker} allows the selection of one part of
155
+ * the date (date, month, or year). It is a stateful component but allows updates by providing a new
156
+ * `value` via props.
157
+ *
158
+ * @class DateComponentPicker
159
+ * @memberof limestone/internal/DateComponentPicker
160
+ * @mixes ui/Changeable.Changeable
161
+ * @ui
162
+ * @private
163
+ */
164
+ var DateComponentPicker = exports.DateComponentPicker = (0, _Changeable["default"])(DateComponentPickerBase);
165
+ var _default = exports["default"] = DateComponentPicker;