@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
@@ -0,0 +1,131 @@
1
+ // Type definitions for limestone/Button
2
+
3
+ import { TooltipDecoratorProps as limestone_TooltipDecorator_TooltipDecoratorProps } from "limestone/TooltipDecorator";
4
+ import { MarqueeDecoratorProps as limestone_Marquee_MarqueeDecoratorProps } from "limestone/Marquee";
5
+ import { ButtonDecoratorProps as ui_Button_ButtonDecoratorProps } from "@enact/ui/Button";
6
+ import { SpottableProps as spotlight_Spottable_SpottableProps } from "@enact/spotlight/Spottable";
7
+ import { SkinnableProps as limestone_Skinnable_SkinnableProps } from "limestone/Skinnable";
8
+ import { ButtonBaseProps as ui_Button_ButtonBaseProps } from "@enact/ui/Button";
9
+ import * as React from "react";
10
+
11
+ type Omit<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>;
12
+ type Merge<M, N> = Omit<M, Extract<keyof M, keyof N>> & N;
13
+
14
+ export interface ButtonBaseProps extends ui_Button_ButtonBaseProps {
15
+ /**
16
+ * The background opacity of this button.
17
+ *
18
+ * Text buttons and icon+text buttons, by default are opaque, while icon-only buttons
19
+ default to transparent. This value can be overridden by setting this prop.
20
+ *
21
+ * Valid values are: `'opaque'` , and `'transparent'` .
22
+ */
23
+ backgroundOpacity?: "opaque" | "transparent";
24
+ /**
25
+ * Adds a border to the button.
26
+ */
27
+ bordered?: boolean;
28
+ /**
29
+ * Centers the contents.
30
+ *
31
+ * This requires that both the text and are
32
+ defined.
33
+ *
34
+ * Applies the `centered` CSS class.
35
+ */
36
+ centered?: boolean;
37
+ /**
38
+ * The color of the underline beneath button's content.
39
+ *
40
+ * Accepts one of the following color names, which correspond with the colored buttons on a
41
+ standard remote control: `'red'` , `'green'` , `'yellow'` , `'blue'` .
42
+ */
43
+ color?: "red" | "green" | "yellow" | "blue";
44
+ /**
45
+ * Customizes the component by mapping the supplied collection of CSS class names to the
46
+ corresponding internal elements and states of this component.
47
+ *
48
+ * The following classes are supported:
49
+ * * `button` - The root class name
50
+ * * `bg` - The background node of the button
51
+ * * `large` - Applied to a `size='large'` button
52
+ * * `selected` - Applied to a `selected` button
53
+ * * `small` - Applied to a `size='small'` button
54
+ */
55
+ css?: object;
56
+ /**
57
+ * Specifies on which side ( `'before'` or `'after'` ) of the text the icon appears.
58
+ */
59
+ iconPosition?: "before" | "after";
60
+ /**
61
+ * Boolean controlling whether this component should enforce the "minimum width" rules.
62
+ *
63
+ * _NOTE_ : If you don't specify this prop, it works as `false` for icon only Button
64
+ and as `true` for other Buttons.
65
+ */
66
+ minWidth?: boolean;
67
+ /**
68
+ * True if both sides of button are fully rounded.
69
+ */
70
+ roundBorder?: boolean;
71
+ /**
72
+ * Adds shadow to the text.
73
+ It is only applied when the background opacity of the button is `transparent` .
74
+ */
75
+ shadowed?: boolean;
76
+ /**
77
+ * The size of the button.
78
+ */
79
+ size?: "large" | "small";
80
+ }
81
+ /**
82
+ * A button component.
83
+ *
84
+ * This component is most often not used directly but may be composed within another component as it
85
+ is within .
86
+ */
87
+
88
+ export class ButtonBase extends React.Component<
89
+ Merge<React.HTMLProps<HTMLElement>, ButtonBaseProps>
90
+ > {}
91
+
92
+ export interface ButtonDecoratorProps
93
+ extends Merge<
94
+ Merge<
95
+ Merge<
96
+ Merge<
97
+ limestone_TooltipDecorator_TooltipDecoratorProps,
98
+ limestone_Marquee_MarqueeDecoratorProps
99
+ >,
100
+ ui_Button_ButtonDecoratorProps
101
+ >,
102
+ spotlight_Spottable_SpottableProps
103
+ >,
104
+ limestone_Skinnable_SkinnableProps
105
+ > {}
106
+ export function ButtonDecorator<P>(
107
+ Component: React.ComponentType<P> | string,
108
+ ): React.ComponentType<P & ButtonDecoratorProps>;
109
+
110
+ export interface ButtonProps
111
+ extends Merge<ButtonBaseProps, ButtonDecoratorProps> {}
112
+ /**
113
+ * A button component, ready to use in Limestone applications.
114
+ *
115
+ * Usage:
116
+ * ```
117
+ <Button
118
+ backgroundOpacity="transparent"
119
+ size="small"
120
+ icon="home"
121
+ >
122
+ Press me!
123
+ </Button>
124
+ ```
125
+ */
126
+
127
+ export class Button extends React.Component<
128
+ Merge<React.HTMLProps<HTMLElement>, ButtonProps>
129
+ > {}
130
+
131
+ export default Button;
@@ -0,0 +1,351 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = exports.ButtonDecorator = exports.ButtonBase = exports.Button = void 0;
7
+ var _hoc = _interopRequireDefault(require("@enact/core/hoc"));
8
+ var _kind = _interopRequireDefault(require("@enact/core/kind"));
9
+ var _util = require("@enact/core/util");
10
+ var _propTypes = _interopRequireDefault(require("@enact/core/internal/prop-types"));
11
+ var _Spottable = _interopRequireDefault(require("@enact/spotlight/Spottable"));
12
+ var _Button = require("@enact/ui/Button");
13
+ var _Pure = _interopRequireDefault(require("@enact/ui/internal/Pure"));
14
+ var _propTypes2 = _interopRequireDefault(require("prop-types"));
15
+ var _compose = _interopRequireDefault(require("ramda/src/compose"));
16
+ var _react = require("react");
17
+ var _Icon = _interopRequireDefault(require("../Icon"));
18
+ var _Marquee = require("../Marquee");
19
+ var _Skinnable = _interopRequireDefault(require("../Skinnable"));
20
+ var _TooltipDecorator = _interopRequireDefault(require("../TooltipDecorator"));
21
+ var _ButtonModule = _interopRequireDefault(require("./Button.module.css"));
22
+ var _jsxRuntime = require("react/jsx-runtime");
23
+ var _excluded = ["css"];
24
+ /**
25
+ * Limestone styled button components and behaviors.
26
+ *
27
+ * @example
28
+ * <Button>Hello Enact!</Button>
29
+ *
30
+ * @module limestone/Button
31
+ * @exports Button
32
+ * @exports ButtonBase
33
+ * @exports ButtonDecorator
34
+ */
35
+ /**
36
+ * A button component.
37
+ *
38
+ * This component is most often not used directly but may be composed within another component as it
39
+ * is within {@link limestone/Button.Button|Button}.
40
+ *
41
+ * @class ButtonBase
42
+ * @memberof limestone/Button
43
+ * @extends ui/Button.ButtonBase
44
+ * @ui
45
+ * @public
46
+ */
47
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
48
+ 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; }
49
+ 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; }
50
+ 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; }
51
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
52
+ 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); }
53
+ 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; }
54
+ 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; }
55
+ var ButtonBase = exports.ButtonBase = (0, _kind["default"])({
56
+ name: 'Button',
57
+ propTypes: /** @lends limestone/Button.ButtonBase.prototype */{
58
+ /**
59
+ * The background opacity of this button.
60
+ *
61
+ * Text buttons and icon+text buttons, by default are opaque, while icon-only buttons
62
+ * default to transparent. This value can be overridden by setting this prop.
63
+ *
64
+ * Valid values are: `'opaque'`, and `'transparent'`.
65
+ *
66
+ * @type {('opaque'|'transparent')}
67
+ * @default 'opaque'
68
+ * @public
69
+ */
70
+ backgroundOpacity: _propTypes2["default"].oneOf(['opaque', 'transparent']),
71
+ /**
72
+ * Adds a border to the button.
73
+ *
74
+ * @type {Boolean}
75
+ * @public
76
+ */
77
+ bordered: _propTypes2["default"].bool,
78
+ /**
79
+ * Centers the contents.
80
+ *
81
+ * This requires that both the text and {@link ui/Button.ButtonBase.icon|icon} are
82
+ * defined.
83
+ *
84
+ * Applies the `centered` CSS class.
85
+ *
86
+ * @type {Boolean}
87
+ * @public
88
+ */
89
+ centered: _propTypes2["default"].bool,
90
+ /**
91
+ * Enables the `collapsed` feature.
92
+ *
93
+ * This requires that both the text and {@link ui/Button.ButtonBase.icon|icon} are
94
+ * defined.
95
+ *
96
+ * Use {@link limestone/Button.ButtonBase.collapsed|collapsed} to toggle the collapsed state.
97
+ *
98
+ * @type {Boolean}
99
+ * @default false
100
+ * @see {@link limestone/Button.ButtonBase.collapsed}
101
+ * @private
102
+ */
103
+ collapsable: _propTypes2["default"].bool,
104
+ /**
105
+ * Toggles the collapsed state of this button, down to just its icon.
106
+ *
107
+ * This requires that {@link limestone/Button.ButtonBase.collapsable|collapsable} is enabled
108
+ * and both the text and {@link ui/Button.ButtonBase.icon|icon} are defined.
109
+ *
110
+ * @type {Boolean}
111
+ * @default false
112
+ * @see {@link limestone/Button.ButtonBase.collapsable}
113
+ * @private
114
+ */
115
+ collapsed: _propTypes2["default"].bool,
116
+ /**
117
+ * The color of the underline beneath button's content.
118
+ *
119
+ * Accepts one of the following color names, which correspond with the colored buttons on a
120
+ * standard remote control: `'red'`, `'green'`, `'yellow'`, `'blue'`.
121
+ *
122
+ * @type {('red'|'green'|'yellow'|'blue')}
123
+ * @public
124
+ */
125
+ color: _propTypes2["default"].oneOf(['red', 'green', 'yellow', 'blue']),
126
+ /**
127
+ * Customizes the component by mapping the supplied collection of CSS class names to the
128
+ * corresponding internal elements and states of this component.
129
+ *
130
+ * The following classes are supported:
131
+ *
132
+ * * `button` - The root class name
133
+ * * `bg` - The background node of the button
134
+ * * `large` - Applied to a `size='large'` button
135
+ * * `selected` - Applied to a `selected` button
136
+ * * `small` - Applied to a `size='small'` button
137
+ *
138
+ * @type {Object}
139
+ * @public
140
+ */
141
+ // `client` was intentionally excluded from the above documented exported classes as they do
142
+ // not appear to provide value to the end-developer, but are needed by PopupTabLayout
143
+ // internally for its design guidelines. Same for `pressed` which is used by Dropdown to
144
+ // nullify the key-press activate animation.
145
+ css: _propTypes2["default"].object,
146
+ /**
147
+ * Set the visual effect applied to the button when focused.
148
+ *
149
+ * @type {('expand'|'static')}
150
+ * @default 'expand'
151
+ * @private
152
+ */
153
+ focusEffect: _propTypes2["default"].oneOf(['expand', 'static']),
154
+ /**
155
+ * The component used to render the {@link limestone/Button.ButtonBase.icon|icon}.
156
+ *
157
+ * This component will receive the `icon` class to customize its styling.
158
+ *
159
+ * @type {Component|Node}
160
+ * @private
161
+ */
162
+ iconComponent: _propTypes["default"].componentOverride,
163
+ /**
164
+ * True if button is an icon only button.
165
+ *
166
+ * @type {Boolean}
167
+ * @default false
168
+ * @private
169
+ */
170
+ iconOnly: _propTypes2["default"].bool,
171
+ /**
172
+ * Specifies on which side (`'before'` or `'after'`) of the text the icon appears.
173
+ *
174
+ * @type {('before'|'after')}
175
+ * @default 'before'
176
+ * @public
177
+ */
178
+ iconPosition: _propTypes2["default"].oneOf(['before', 'after']),
179
+ /**
180
+ * Boolean controlling whether this component should enforce the "minimum width" rules.
181
+ *
182
+ * *NOTE*: If you don't specify this prop, it works as `false` for icon only Button
183
+ * and as `true` for other Buttons.
184
+ *
185
+ * @type {Boolean}
186
+ * @public
187
+ */
188
+ minWidth: _propTypes2["default"].bool,
189
+ /**
190
+ * True if both sides of button are fully rounded.
191
+ *
192
+ * @type {Boolean}
193
+ * @public
194
+ */
195
+ roundBorder: _propTypes2["default"].bool,
196
+ /**
197
+ * Adds shadow to the text.
198
+ * It is only applied when the background opacity of the button is `transparent`.
199
+ *
200
+ * @type {Boolean}
201
+ * @public
202
+ */
203
+ shadowed: _propTypes2["default"].bool,
204
+ /**
205
+ * The size of the button.
206
+ *
207
+ * @type {('large'|'small')}
208
+ * @default 'large'
209
+ * @public
210
+ */
211
+ size: _propTypes2["default"].oneOf(['large', 'small'])
212
+ },
213
+ defaultProps: {
214
+ backgroundOpacity: null,
215
+ collapsable: false,
216
+ collapsed: false,
217
+ focusEffect: 'expand',
218
+ iconComponent: _Icon["default"],
219
+ iconOnly: false,
220
+ iconPosition: 'before',
221
+ roundBorder: false,
222
+ size: 'large'
223
+ },
224
+ styles: {
225
+ css: _ButtonModule["default"],
226
+ publicClassNames: ['button', 'bg', 'client', 'hasIcon', 'icon', 'iconAfter', 'iconBefore', 'large', 'pressed', 'selected', 'small']
227
+ },
228
+ computed: {
229
+ className: function className(_ref) {
230
+ var backgroundOpacity = _ref.backgroundOpacity,
231
+ bordered = _ref.bordered,
232
+ centered = _ref.centered,
233
+ collapsable = _ref.collapsable,
234
+ collapsed = _ref.collapsed,
235
+ color = _ref.color,
236
+ focusEffect = _ref.focusEffect,
237
+ iconOnly = _ref.iconOnly,
238
+ iconPosition = _ref.iconPosition,
239
+ roundBorder = _ref.roundBorder,
240
+ shadowed = _ref.shadowed,
241
+ size = _ref.size,
242
+ styler = _ref.styler;
243
+ return styler.append({
244
+ bordered: bordered,
245
+ centered: centered,
246
+ collapsable: collapsable,
247
+ collapsed: collapsed,
248
+ hasColor: color,
249
+ iconOnly: iconOnly,
250
+ roundBorder: roundBorder,
251
+ shadowed: shadowed && (backgroundOpacity ? backgroundOpacity === 'transparent' : iconOnly)
252
+ }, backgroundOpacity || (iconOnly ? 'transparent' : 'opaque'),
253
+ // Defaults to opaque, unless otherwise specified
254
+ color, "focus".concat((0, _util.cap)(focusEffect)),
255
+ // iconBefore/iconAfter only applies when using text and an icon
256
+ !iconOnly && "icon".concat((0, _util.cap)(iconPosition)), size);
257
+ },
258
+ minWidth: function minWidth(_ref2) {
259
+ var iconOnly = _ref2.iconOnly,
260
+ _minWidth = _ref2.minWidth;
261
+ return _minWidth != null ? _minWidth : !iconOnly;
262
+ }
263
+ },
264
+ render: function render(_ref3) {
265
+ var css = _ref3.css,
266
+ rest = _objectWithoutProperties(_ref3, _excluded);
267
+ delete rest.backgroundOpacity;
268
+ delete rest.bordered;
269
+ delete rest.centered;
270
+ delete rest.color;
271
+ delete rest.collapsable;
272
+ delete rest.collapsed;
273
+ delete rest.focusEffect;
274
+ delete rest.iconOnly;
275
+ delete rest.iconPosition;
276
+ delete rest.roundBorder;
277
+ delete rest.shadowed;
278
+ return _Button.ButtonBase.inline(_objectSpread(_objectSpread({
279
+ 'data-webos-voice-intent': 'Select'
280
+ }, rest), {}, {
281
+ css: css
282
+ }));
283
+ }
284
+ });
285
+
286
+ /**
287
+ * A higher-order component that determines if it is a button that only displays an icon.
288
+ *
289
+ * @class IconButtonDecorator
290
+ * @memberof limestone/Button
291
+ * @hoc
292
+ * @private
293
+ */
294
+ var IconButtonDecorator = (0, _hoc["default"])(function (config, Wrapped) {
295
+ return (0, _kind["default"])({
296
+ name: 'IconButtonDecorator',
297
+ computed: {
298
+ iconOnly: function iconOnly(_ref4) {
299
+ var children = _ref4.children;
300
+ return _react.Children.toArray(children).filter(Boolean).length === 0;
301
+ }
302
+ },
303
+ render: function render(props) {
304
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(Wrapped, _objectSpread({}, props));
305
+ }
306
+ });
307
+ });
308
+
309
+ /**
310
+ * Applies Limestone specific behaviors to {@link limestone/Button.ButtonBase|Button} components.
311
+ *
312
+ * @hoc
313
+ * @memberof limestone/Button
314
+ * @mixes limestone/TooltipDecorator.TooltipDecorator
315
+ * @mixes limestone/Marquee.MarqueeDecorator
316
+ * @mixes ui/Button.ButtonDecorator
317
+ * @mixes spotlight/Spottable.Spottable
318
+ * @mixes limestone/Skinnable.Skinnable
319
+ * @public
320
+ */
321
+ var ButtonDecorator = exports.ButtonDecorator = (0, _compose["default"])(_Button.ButtonDecorator, _Pure["default"], IconButtonDecorator, (0, _TooltipDecorator["default"])({
322
+ tooltipDestinationProp: 'decoration'
323
+ }),
324
+ // Future note: This should eventually be conditionally applied via hooks (after refactoring)
325
+ (0, _Marquee.MarqueeDecorator)({
326
+ css: _ButtonModule["default"]
327
+ }), _Spottable["default"], _Skinnable["default"]);
328
+
329
+ /**
330
+ * A button component, ready to use in Limestone applications.
331
+ *
332
+ * Usage:
333
+ * ```
334
+ * <Button
335
+ * backgroundOpacity="transparent"
336
+ * size="small"
337
+ * icon="home"
338
+ * >
339
+ * Press me!
340
+ * </Button>
341
+ * ```
342
+ *
343
+ * @class Button
344
+ * @memberof limestone/Button
345
+ * @extends limestone/Button.ButtonBase
346
+ * @mixes limestone/Button.ButtonDecorator
347
+ * @ui
348
+ * @public
349
+ */
350
+ var Button = exports.Button = ButtonDecorator(ButtonBase);
351
+ var _default = exports["default"] = Button;