@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.
- package/.github/PULL_REQUEST_TEMPLATE.md +28 -0
- package/.github/workflows/update-copyright-years.yml +25 -0
- package/.travis.yml +40 -0
- package/ActionGuide/ActionGuide.d.ts +73 -0
- package/ActionGuide/ActionGuide.js +164 -0
- package/ActionGuide/ActionGuide.module.css +73 -0
- package/ActionGuide/package.json +3 -0
- package/ActionGuide/tests/ActionGuide-specs.js +51 -0
- package/Alert/Alert.d.ts +155 -0
- package/Alert/Alert.js +313 -0
- package/Alert/Alert.module.css +190 -0
- package/Alert/AlertImage.js +102 -0
- package/Alert/AlertImage.module.css +15 -0
- package/Alert/package.json +3 -0
- package/Alert/tests/Alert-specs.js +204 -0
- package/BodyText/BodyText.d.ts +74 -0
- package/BodyText/BodyText.js +170 -0
- package/BodyText/BodyText.module.css +95 -0
- package/BodyText/package.json +3 -0
- package/BodyText/tests/BodyText-specs.js +55 -0
- package/Button/Button.d.ts +131 -0
- package/Button/Button.js +351 -0
- package/Button/Button.module.css +2518 -0
- package/Button/package.json +3 -0
- package/Button/tests/Button-specs.js +252 -0
- package/CHANGELOG.md +170 -0
- package/Card/Card.d.ts +138 -0
- package/Card/Card.js +396 -0
- package/Card/Card.module.css +1296 -0
- package/Card/package.json +3 -0
- package/Card/tests/Card-specs.js +65 -0
- package/Checkbox/Checkbox.d.ts +99 -0
- package/Checkbox/Checkbox.js +222 -0
- package/Checkbox/Checkbox.module.css +1395 -0
- package/Checkbox/package.json +3 -0
- package/Checkbox/tests/Checkbox-specs.js +79 -0
- package/CheckboxItem/CheckboxItem.d.ts +99 -0
- package/CheckboxItem/CheckboxItem.js +210 -0
- package/CheckboxItem/CheckboxItem.module.css +50 -0
- package/CheckboxItem/package.json +3 -0
- package/CheckboxItem/tests/CheckboxItem-specs.js +52 -0
- package/Chips/Chip.js +252 -0
- package/Chips/Chip.module.css +30 -0
- package/Chips/Chips.js +215 -0
- package/Chips/Chips.module.css +8 -0
- package/Chips/index.js +86 -0
- package/Chips/tests/Chip-specs.js +186 -0
- package/Chips/tests/Chips-specs.js +312 -0
- package/ColorPicker/ColorPicker.js +416 -0
- package/ColorPicker/ColorPicker.module.css +78 -0
- package/ColorPicker/package.json +3 -0
- package/ColorPicker/tests/ColorPicker-specs.js +225 -0
- package/ColorPicker/utils.js +135 -0
- package/ContextualMenuDecorator/ContextualMenuDecorator.d.ts +106 -0
- package/ContextualMenuDecorator/ContextualMenuDecorator.js +264 -0
- package/ContextualMenuDecorator/ContextualMenuDecorator.module.css +42 -0
- package/ContextualMenuDecorator/package.json +3 -0
- package/ContextualMenuDecorator/tests/ContextualMenuDecorator-specs.js +136 -0
- package/ContextualPopupDecorator/ContextualPopup.js +200 -0
- package/ContextualPopupDecorator/ContextualPopup.module.css +270 -0
- package/ContextualPopupDecorator/ContextualPopupDecorator.d.ts +182 -0
- package/ContextualPopupDecorator/ContextualPopupDecorator.js +867 -0
- package/ContextualPopupDecorator/ContextualPopupDecorator.module.css +3 -0
- package/ContextualPopupDecorator/HolePunchScrim.js +69 -0
- package/ContextualPopupDecorator/HolePunchScrim.module.css +38 -0
- package/ContextualPopupDecorator/package.json +3 -0
- package/ContextualPopupDecorator/tests/ContextualPopupDecorator-specs.js +621 -0
- package/DatePicker/DatePicker.d.ts +173 -0
- package/DatePicker/DatePicker.js +175 -0
- package/DatePicker/DatePicker.module.css +5 -0
- package/DatePicker/DatePickerBase.js +348 -0
- package/DatePicker/package.json +3 -0
- package/DatePicker/tests/DatePicker-specs.js +247 -0
- package/DayPicker/DayPicker.d.ts +92 -0
- package/DayPicker/DayPicker.js +188 -0
- package/DayPicker/DayPicker.module.css +35 -0
- package/DayPicker/DaySelectorDecorator.js +301 -0
- package/DayPicker/package.json +3 -0
- package/DayPicker/tests/DayPicker-specs.js +138 -0
- package/Dropdown/Dropdown.d.ts +135 -0
- package/Dropdown/Dropdown.js +460 -0
- package/Dropdown/Dropdown.module.css +160 -0
- package/Dropdown/DropdownList.js +360 -0
- package/Dropdown/package.json +3 -0
- package/Dropdown/tests/Dropdown-specs.js +267 -0
- package/FixedPopupPanels/FixedPopupPanels.d.ts +72 -0
- package/FixedPopupPanels/FixedPopupPanels.js +170 -0
- package/FixedPopupPanels/FixedPopupPanels.module.css +146 -0
- package/FixedPopupPanels/package.json +3 -0
- package/FixedPopupPanels/tests/FixedPopupPanels-specs.js +142 -0
- package/FlexiblePopupPanels/FlexiblePopupPanels.js +177 -0
- package/FlexiblePopupPanels/FlexiblePopupPanels.module.css +291 -0
- package/FlexiblePopupPanels/Header.js +110 -0
- package/FlexiblePopupPanels/Panel.js +256 -0
- package/FlexiblePopupPanels/index.d.ts +145 -0
- package/FlexiblePopupPanels/index.js +68 -0
- package/FlexiblePopupPanels/package.json +3 -0
- package/FlexiblePopupPanels/tests/FlexiblePopupPanels-specs.js +305 -0
- package/FlexiblePopupPanels/useNavButtonFocus.js +65 -0
- package/FormCheckboxItem/FormCheckboxItem.d.ts +87 -0
- package/FormCheckboxItem/FormCheckboxItem.js +200 -0
- package/FormCheckboxItem/FormCheckboxItem.module.css +374 -0
- package/FormCheckboxItem/package.json +3 -0
- package/FormCheckboxItem/tests/FormCheckboxItem-specs.js +164 -0
- package/Heading/Heading.d.ts +104 -0
- package/Heading/Heading.js +203 -0
- package/Heading/Heading.module.css +217 -0
- package/Heading/package.json +3 -0
- package/Heading/tests/Heading-specs.js +57 -0
- package/Icon/Icon.d.ts +377 -0
- package/Icon/Icon.js +503 -0
- package/Icon/Icon.module.css +121 -0
- package/Icon/IconList.js +611 -0
- package/Icon/package.json +3 -0
- package/Icon/tests/Icon-specs.js +131 -0
- package/IconItem/IconItem.d.ts +137 -0
- package/IconItem/IconItem.js +360 -0
- package/IconItem/IconItem.module.css +414 -0
- package/IconItem/package.json +3 -0
- package/IconItem/tests/IconItem-specs.js +106 -0
- package/Image/Image.d.ts +60 -0
- package/Image/Image.js +165 -0
- package/Image/Image.module.css +5 -0
- package/Image/package.json +3 -0
- package/Image/tests/Image-specs.js +62 -0
- package/ImageItem/ImageItem.d.ts +134 -0
- package/ImageItem/ImageItem.js +377 -0
- package/ImageItem/ImageItem.module.css +1079 -0
- package/ImageItem/package.json +3 -0
- package/ImageItem/tests/ImageItem-specs.js +223 -0
- package/Input/Input.js +715 -0
- package/Input/Input.module.css +699 -0
- package/Input/InputField.js +487 -0
- package/Input/InputField.module.css +763 -0
- package/Input/InputFieldDecoratorIcon.js +66 -0
- package/Input/InputFieldSpotlightDecorator.js +380 -0
- package/Input/Keypad.js +111 -0
- package/Input/NumberField.js +311 -0
- package/Input/index.d.ts +423 -0
- package/Input/index.js +87 -0
- package/Input/package.json +3 -0
- package/Input/pointer.js +103 -0
- package/Input/tests/Input-specs.js +537 -0
- package/Input/tests/InputField-specs.js +292 -0
- package/Input/tests/InputPopup-specs.js +56 -0
- package/Input/util.js +130 -0
- package/Item/Item.d.ts +108 -0
- package/Item/Item.js +360 -0
- package/Item/Item.module.css +665 -0
- package/Item/package.json +3 -0
- package/Item/tests/Item-specs.js +108 -0
- package/KeyGuide/KeyGuide.d.ts +103 -0
- package/KeyGuide/KeyGuide.js +254 -0
- package/KeyGuide/KeyGuide.module.css +431 -0
- package/KeyGuide/package.json +3 -0
- package/KeyGuide/tests/KeyGuide-specs.js +168 -0
- package/LICENSE +201 -0
- package/Marquee/Marquee.d.ts +42 -0
- package/Marquee/Marquee.js +45 -0
- package/Marquee/package.json +3 -0
- package/MediaOverlay/MediaOverlay.d.ts +134 -0
- package/MediaOverlay/MediaOverlay.js +304 -0
- package/MediaOverlay/MediaOverlay.module.css +292 -0
- package/MediaOverlay/package.json +3 -0
- package/MediaOverlay/tests/MediaOverlay-specs.js +127 -0
- package/MediaPlayer/MediaControls.js +934 -0
- package/MediaPlayer/MediaControls.module.css +86 -0
- package/MediaPlayer/MediaKnob.js +61 -0
- package/MediaPlayer/MediaSlider.js +131 -0
- package/MediaPlayer/MediaSlider.module.css +319 -0
- package/MediaPlayer/MediaSliderDecorator.js +245 -0
- package/MediaPlayer/Times.js +152 -0
- package/MediaPlayer/Times.module.css +34 -0
- package/MediaPlayer/index.d.ts +223 -0
- package/MediaPlayer/index.js +34 -0
- package/MediaPlayer/package.json +3 -0
- package/MediaPlayer/tests/MediaSlider-specs.js +126 -0
- package/MediaPlayer/tests/util-specs.js +114 -0
- package/MediaPlayer/util.js +83 -0
- package/PageViews/Page.js +77 -0
- package/PageViews/Page.module.css +3 -0
- package/PageViews/PageViews.js +440 -0
- package/PageViews/PageViews.module.css +175 -0
- package/PageViews/PageViewsRouter.js +150 -0
- package/PageViews/index.js +45 -0
- package/PageViews/tests/PageViews-specs.js +192 -0
- package/Panels/Header.js +599 -0
- package/Panels/Header.module.css +243 -0
- package/Panels/Panel.js +347 -0
- package/Panels/Panel.module.css +33 -0
- package/Panels/Panels.js +258 -0
- package/Panels/Panels.module.css +12 -0
- package/Panels/index.d.ts +376 -0
- package/Panels/index.js +66 -0
- package/Panels/package.json +3 -0
- package/Panels/tests/Header-specs.js +146 -0
- package/Panels/tests/Panels-specs.js +257 -0
- package/Picker/Picker.d.ts +193 -0
- package/Picker/Picker.js +389 -0
- package/Picker/Picker.module.css +46 -0
- package/Picker/package.json +3 -0
- package/Picker/tests/Picker-specs.js +91 -0
- package/Popup/Popup.d.ts +169 -0
- package/Popup/Popup.js +690 -0
- package/Popup/Popup.module.css +180 -0
- package/Popup/package.json +3 -0
- package/Popup/tests/Popup-specs.js +475 -0
- package/PopupTabLayout/PopupTabLayout.d.ts +196 -0
- package/PopupTabLayout/PopupTabLayout.js +605 -0
- package/PopupTabLayout/PopupTabLayout.module.css +226 -0
- package/PopupTabLayout/package.json +3 -0
- package/PopupTabLayout/tests/PopupTabLayout-specs.js +285 -0
- package/ProgressBar/ProgressBar.d.ts +171 -0
- package/ProgressBar/ProgressBar.js +223 -0
- package/ProgressBar/ProgressBar.module.css +264 -0
- package/ProgressBar/ProgressBarTooltip.js +359 -0
- package/ProgressBar/ProgressBarTooltip.module.css +86 -0
- package/ProgressBar/package.json +3 -0
- package/ProgressBar/tests/ProgressBar-specs.js +400 -0
- package/ProgressButton/ProgressButton.d.ts +57 -0
- package/ProgressButton/ProgressButton.js +143 -0
- package/ProgressButton/ProgressButton.module.css +147 -0
- package/ProgressButton/package.json +3 -0
- package/ProgressButton/tests/ProgressButton-specs.js +71 -0
- package/QuickGuidePanels/Panel.js +90 -0
- package/QuickGuidePanels/QuickGuidePanels.js +463 -0
- package/QuickGuidePanels/QuickGuidePanels.module.css +26 -0
- package/QuickGuidePanels/index.js +52 -0
- package/QuickGuidePanels/tests/QuickGuidePanels-specs.js +250 -0
- package/README.md +59 -0
- package/RadioItem/RadioItem.d.ts +59 -0
- package/RadioItem/RadioItem.js +146 -0
- package/RadioItem/RadioItem.module.css +233 -0
- package/RadioItem/package.json +3 -0
- package/RadioItem/tests/RadioItem-specs.js +62 -0
- package/RangePicker/RangePicker.d.ts +174 -0
- package/RangePicker/RangePicker.js +372 -0
- package/RangePicker/RangePicker.module.css +55 -0
- package/RangePicker/package.json +3 -0
- package/RangePicker/tests/RangePicker-specs.js +122 -0
- package/Region/Region.d.ts +33 -0
- package/Region/Region.js +91 -0
- package/Region/package.json +3 -0
- package/Region/tests/Region-specs.js +28 -0
- package/Scroller/ContentContainerDecorator.js +24 -0
- package/Scroller/EditableWrapper.js +1036 -0
- package/Scroller/EditableWrapper.module.css +22 -0
- package/Scroller/Scroller.d.ts +270 -0
- package/Scroller/Scroller.js +470 -0
- package/Scroller/Scroller.module.css +41 -0
- package/Scroller/package.json +3 -0
- package/Scroller/tests/ContentContainerDecorator-specs.js +20 -0
- package/Scroller/tests/EditableWrapper-specs.js +133 -0
- package/Scroller/tests/Scroller-specs.js +159 -0
- package/Scroller/useEvent.js +39 -0
- package/Scroller/useThemeScroller.js +410 -0
- package/Skinnable/Skinnable.d.ts +27 -0
- package/Skinnable/Skinnable.js +65 -0
- package/Skinnable/package.json +3 -0
- package/Slider/Slider.d.ts +218 -0
- package/Slider/Slider.js +441 -0
- package/Slider/Slider.module.css +880 -0
- package/Slider/SliderBehaviorDecorator.js +184 -0
- package/Slider/package.json +3 -0
- package/Slider/tests/Slider-specs.js +573 -0
- package/Slider/utils.js +114 -0
- package/Spinner/Spinner.d.ts +64 -0
- package/Spinner/Spinner.js +254 -0
- package/Spinner/Spinner.module.css +368 -0
- package/Spinner/package.json +3 -0
- package/Spinner/tests/Spinner-specs.js +70 -0
- package/Sprite/Sprite.d.ts +100 -0
- package/Sprite/Sprite.js +345 -0
- package/Sprite/Sprite.module.css +32 -0
- package/Sprite/package.json +3 -0
- package/Sprite/tests/Sprite-specs.js +59 -0
- package/Steps/Steps.d.ts +119 -0
- package/Steps/Steps.js +303 -0
- package/Steps/Steps.module.css +130 -0
- package/Steps/package.json +3 -0
- package/Steps/tests/Steps-specs.js +175 -0
- package/Switch/Switch.d.ts +54 -0
- package/Switch/Switch.js +143 -0
- package/Switch/Switch.module.css +714 -0
- package/Switch/package.json +3 -0
- package/Switch/tests/Switch-specs.js +54 -0
- package/SwitchItem/SwitchItem.d.ts +56 -0
- package/SwitchItem/SwitchItem.js +144 -0
- package/SwitchItem/SwitchItem.module.css +31 -0
- package/SwitchItem/package.json +3 -0
- package/SwitchItem/tests/SwitchItem-specs.js +49 -0
- package/TabLayout/RefocusDecorator.js +142 -0
- package/TabLayout/Tab.js +84 -0
- package/TabLayout/TabGroup.js +377 -0
- package/TabLayout/TabGroup.module.css +280 -0
- package/TabLayout/TabLayout.d.ts +161 -0
- package/TabLayout/TabLayout.js +661 -0
- package/TabLayout/TabLayout.module.css +101 -0
- package/TabLayout/package.json +3 -0
- package/TabLayout/tests/TabGroup-specs.js +214 -0
- package/TabLayout/tests/TabLayout-specs.js +740 -0
- package/ThemeDecorator/AccessibilityDecorator.js +151 -0
- package/ThemeDecorator/I18nFontDecorator.js +33 -0
- package/ThemeDecorator/ThemeDecorator.d.ts +143 -0
- package/ThemeDecorator/ThemeDecorator.js +307 -0
- package/ThemeDecorator/ThemeDecorator.module.css +1250 -0
- package/ThemeDecorator/fontGenerator.js +76 -0
- package/ThemeDecorator/package.json +3 -0
- package/ThemeDecorator/screenTypes.json +10 -0
- package/ThemeDecorator/tests/ThemeDecorator-specs.js +151 -0
- package/TimePicker/TimePicker.d.ts +147 -0
- package/TimePicker/TimePicker.js +255 -0
- package/TimePicker/TimePicker.module.css +61 -0
- package/TimePicker/TimePickerBase.js +396 -0
- package/TimePicker/package.json +3 -0
- package/TimePicker/tests/TimePicker-specs.js +248 -0
- package/TooltipDecorator/Tooltip.js +252 -0
- package/TooltipDecorator/Tooltip.module.css +496 -0
- package/TooltipDecorator/TooltipDecorator.d.ts +229 -0
- package/TooltipDecorator/TooltipDecorator.js +260 -0
- package/TooltipDecorator/TooltipLabel.js +117 -0
- package/TooltipDecorator/package.json +3 -0
- package/TooltipDecorator/tests/TooltipDecorator-specs.js +224 -0
- package/TooltipDecorator/tests/useTooltip-specs.js +266 -0
- package/TooltipDecorator/useTooltip.js +278 -0
- package/TooltipDecorator/util.js +273 -0
- package/VideoPlayer/Feedback.js +110 -0
- package/VideoPlayer/Feedback.module.css +55 -0
- package/VideoPlayer/FeedbackContent.js +99 -0
- package/VideoPlayer/FeedbackIcon.js +67 -0
- package/VideoPlayer/FeedbackIcons.js +76 -0
- package/VideoPlayer/FeedbackTooltip.js +242 -0
- package/VideoPlayer/FeedbackTooltip.module.css +160 -0
- package/VideoPlayer/MediaTitle.js +143 -0
- package/VideoPlayer/MediaTitle.module.css +95 -0
- package/VideoPlayer/Overlay.js +51 -0
- package/VideoPlayer/Video.js +345 -0
- package/VideoPlayer/VideoPlayer.d.ts +582 -0
- package/VideoPlayer/VideoPlayer.js +2116 -0
- package/VideoPlayer/VideoPlayer.module.css +164 -0
- package/VideoPlayer/package.json +3 -0
- package/VideoPlayer/tests/Video-specs.js +235 -0
- package/VideoPlayer/tests/VideoPlayer-specs.js +180 -0
- package/VirtualList/VirtualList.d.ts +411 -0
- package/VirtualList/VirtualList.js +931 -0
- package/VirtualList/VirtualList.module.css +52 -0
- package/VirtualList/package.json +3 -0
- package/VirtualList/tests/VirtualGridList-specs.js +289 -0
- package/VirtualList/tests/VirtualGridList-translate-specs.js +711 -0
- package/VirtualList/tests/VirtualList-specs.js +288 -0
- package/VirtualList/tests/VirtualList-translate-specs.js +704 -0
- package/VirtualList/tests/useEvent-specs.js +172 -0
- package/VirtualList/tests/useEvent-translate-specs.js +309 -0
- package/VirtualList/useEvent.js +324 -0
- package/VirtualList/usePreventScroll.js +31 -0
- package/VirtualList/useSpotlight.js +157 -0
- package/VirtualList/useThemeVirtualList.js +471 -0
- package/VirtualList/useThemeVirtualList.module.css +34 -0
- package/WizardPanels/Panel.js +99 -0
- package/WizardPanels/WizardPanels.js +501 -0
- package/WizardPanels/WizardPanels.module.css +15 -0
- package/WizardPanels/index.d.ts +182 -0
- package/WizardPanels/index.js +50 -0
- package/WizardPanels/package.json +3 -0
- package/WizardPanels/tests/WizardPanels-specs.js +713 -0
- package/codecov.yml +13 -0
- package/fonts/Limestone_Icons.ttf +0 -0
- package/fonts/Miso/LICENSE.txt +75 -0
- package/fonts/Miso/Miso-Bold.ttf +0 -0
- package/fonts/Miso/Miso-Light.ttf +0 -0
- package/fonts/Miso/Miso-Regular.ttf +0 -0
- package/fonts/MuseoSans/LICENSE.txt +75 -0
- package/fonts/MuseoSans/MuseoSans-Black.ttf +0 -0
- package/fonts/MuseoSans/MuseoSans-BlackItalic.ttf +0 -0
- package/fonts/MuseoSans/MuseoSans-Bold.ttf +0 -0
- package/fonts/MuseoSans/MuseoSans-BoldItalic.ttf +0 -0
- package/fonts/MuseoSans/MuseoSans-Light.ttf +0 -0
- package/fonts/MuseoSans/MuseoSans-Medium.ttf +0 -0
- package/fonts/MuseoSans/MuseoSans-MediumItalic.ttf +0 -0
- package/fonts/MuseoSans/MuseoSans-Thin.ttf +0 -0
- package/index.js +2 -0
- package/internal/$L/$L.d.ts +21 -0
- package/internal/$L/$L.js +97 -0
- package/internal/$L/package.json +3 -0
- package/internal/AsyncRenderChildren/AsyncRenderChildren.js +74 -0
- package/internal/AsyncRenderChildren/package.json +3 -0
- package/internal/AsyncRenderChildren/tests/AsyncRenderChildren-specs.js +49 -0
- package/internal/DateComponentPicker/DateComponentPicker.js +165 -0
- package/internal/DateComponentPicker/DateComponentPicker.module.css +53 -0
- package/internal/DateComponentPicker/DateComponentRangePicker.js +132 -0
- package/internal/DateComponentPicker/index.js +31 -0
- package/internal/DateComponentPicker/package.json +3 -0
- package/internal/DateTime/DateTime.js +83 -0
- package/internal/DateTime/DateTime.module.css +51 -0
- package/internal/DateTime/DateTimeDecorator.js +268 -0
- package/internal/DateTime/index.js +37 -0
- package/internal/DateTime/package.json +3 -0
- package/internal/DateTime/tests/DateTimeDecorator-specs.js +33 -0
- package/internal/DebounceDecorator/DebounceDecorator.js +125 -0
- package/internal/DebounceDecorator/package.json +3 -0
- package/internal/DebounceDecorator/tests/DebounceDecorator-specs.js +151 -0
- package/internal/Panels/Arrangers.js +248 -0
- package/internal/Panels/CancelDecorator.js +43 -0
- package/internal/Panels/FloatingLayerIdProvider.js +27 -0
- package/internal/Panels/NavigationButton.js +64 -0
- package/internal/Panels/NavigationButton.module.css +69 -0
- package/internal/Panels/PanelsRouter.js +223 -0
- package/internal/Panels/PopupDecorator.js +287 -0
- package/internal/Panels/TransitionDecorator.js +99 -0
- package/internal/Panels/Viewport.js +313 -0
- package/internal/Panels/Viewport.module.css +25 -0
- package/internal/Panels/captureKeys.js +48 -0
- package/internal/Panels/index.js +101 -0
- package/internal/Panels/package.json +3 -0
- package/internal/Panels/useAutoFocus.js +95 -0
- package/internal/Panels/useFocusOnTransition.js +45 -0
- package/internal/Panels/useToggleRole.js +30 -0
- package/internal/Panels/util.js +64 -0
- package/internal/Picker/Picker.js +942 -0
- package/internal/Picker/Picker.module.css +1145 -0
- package/internal/Picker/PickerButton.js +97 -0
- package/internal/Picker/PickerItem.js +38 -0
- package/internal/Picker/SpottablePicker.js +63 -0
- package/internal/Picker/package.json +3 -0
- package/internal/Picker/tests/Picker-specs.js +968 -0
- package/internal/SharedStateDecorator/SharedStateDecorator.js +167 -0
- package/internal/SharedStateDecorator/package.json +3 -0
- package/internal/SharedStateDecorator/tests/SharedStateDecorator-specs.js +277 -0
- package/internal/WindowEventable/WindowEventable.js +114 -0
- package/internal/WindowEventable/package.json +3 -0
- package/internal/util/package.json +3 -0
- package/internal/util/util.js +79 -0
- package/internal/validators/package.json +4 -0
- package/internal/validators/tests/validators-specs.js +80 -0
- package/internal/validators/validators.js +136 -0
- package/package.json +69 -0
- package/resources/ilibmanifest.json +3 -0
- package/styles/color-mixins.less +230 -0
- package/styles/colors-game-green.less +25 -0
- package/styles/colors-game-orange.less +25 -0
- package/styles/colors-game.less +56 -0
- package/styles/colors-highcontrast.less +21 -0
- package/styles/colors.less +435 -0
- package/styles/mixins.less +337 -0
- package/styles/skin.less +54 -0
- package/styles/variables-base.less +32 -0
- package/styles/variables-game.less +25 -0
- package/styles/variables.less +1182 -0
- package/useScroll/HoverToScroll.js +265 -0
- package/useScroll/HoverToScroll.module.css +38 -0
- package/useScroll/OverscrollEffect.module.css +14 -0
- package/useScroll/Scrollbar.js +171 -0
- package/useScroll/Scrollbar.module.css +19 -0
- package/useScroll/ScrollbarPlaceholder.js +64 -0
- package/useScroll/ScrollbarTrack.js +209 -0
- package/useScroll/ScrollbarTrack.module.css +136 -0
- package/useScroll/package.json +3 -0
- package/useScroll/useEvent.js +693 -0
- package/useScroll/useOverscrollEffect.js +105 -0
- package/useScroll/useScroll.js +523 -0
- package/useScroll/useScroll.module.css +49 -0
- package/useScroll/useSpotlight.js +32 -0
- package/useScroll/useThemeScrollContentHandle.js +32 -0
package/Image/Image.js
ADDED
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = exports.ImageDecorator = exports.ImageBase = exports.Image = void 0;
|
|
7
|
+
var _kind = _interopRequireDefault(require("@enact/core/kind"));
|
|
8
|
+
var _hoc = _interopRequireDefault(require("@enact/core/hoc"));
|
|
9
|
+
var _Image = require("@enact/ui/Image");
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("@enact/core/internal/prop-types"));
|
|
11
|
+
var _ForwardRef = _interopRequireDefault(require("@enact/ui/ForwardRef"));
|
|
12
|
+
var _Pure = _interopRequireDefault(require("@enact/ui/internal/Pure"));
|
|
13
|
+
var _resolution = require("@enact/ui/resolution");
|
|
14
|
+
var _propTypes2 = _interopRequireDefault(require("prop-types"));
|
|
15
|
+
var _compose = _interopRequireDefault(require("ramda/src/compose"));
|
|
16
|
+
var _react = require("react");
|
|
17
|
+
var _Skinnable = _interopRequireDefault(require("../Skinnable"));
|
|
18
|
+
var _ImageModule = _interopRequireDefault(require("./Image.module.css"));
|
|
19
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
20
|
+
var _excluded = ["css", "componentRef"];
|
|
21
|
+
/**
|
|
22
|
+
* Provides Limestone styled Image component that supports multiple resolution sources.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* <Image src="https://dummyimage.com/64/e048e0/0011ff" style={{height: 64, width: 64}} />
|
|
26
|
+
*
|
|
27
|
+
* @module limestone/Image
|
|
28
|
+
* @exports Image
|
|
29
|
+
* @exports ImageBase
|
|
30
|
+
* @exports ImageDecorator
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* A Limestone-styled image component without any behavior
|
|
34
|
+
*
|
|
35
|
+
* @class ImageBase
|
|
36
|
+
* @memberof limestone/Image
|
|
37
|
+
* @extends ui/Image.Image
|
|
38
|
+
* @ui
|
|
39
|
+
* @public
|
|
40
|
+
*/
|
|
41
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
42
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
43
|
+
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."); }
|
|
44
|
+
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; } }
|
|
45
|
+
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; }
|
|
46
|
+
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; } }
|
|
47
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
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 ImageBase = exports.ImageBase = (0, _kind["default"])({
|
|
56
|
+
name: 'Image',
|
|
57
|
+
propTypes: /** @lends limestone/Image.ImageBase.prototype */{
|
|
58
|
+
/**
|
|
59
|
+
* Called with a reference to the root component.
|
|
60
|
+
*
|
|
61
|
+
* When using {@link limestone/Image.Image}, the `ref` prop is forwarded to this component
|
|
62
|
+
* as `componentRef`.
|
|
63
|
+
*
|
|
64
|
+
* @type {Object|Function}
|
|
65
|
+
* @public
|
|
66
|
+
*/
|
|
67
|
+
componentRef: _propTypes["default"].ref,
|
|
68
|
+
/**
|
|
69
|
+
* Customizes the component by mapping the supplied collection of CSS class names to the
|
|
70
|
+
* corresponding internal elements and states of this component.
|
|
71
|
+
*
|
|
72
|
+
* The following classes are supported:
|
|
73
|
+
*
|
|
74
|
+
* * `image` - The root component class for Image
|
|
75
|
+
*
|
|
76
|
+
* @type {Object}
|
|
77
|
+
* @public
|
|
78
|
+
*/
|
|
79
|
+
css: _propTypes2["default"].object
|
|
80
|
+
},
|
|
81
|
+
styles: {
|
|
82
|
+
css: _ImageModule["default"],
|
|
83
|
+
publicClassNames: ['image']
|
|
84
|
+
},
|
|
85
|
+
render: function render(_ref) {
|
|
86
|
+
var css = _ref.css,
|
|
87
|
+
componentRef = _ref.componentRef,
|
|
88
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
89
|
+
return _Image.ImageBase.inline(_objectSpread(_objectSpread({
|
|
90
|
+
draggable: 'false'
|
|
91
|
+
}, rest), {}, {
|
|
92
|
+
componentRef: componentRef,
|
|
93
|
+
css: css
|
|
94
|
+
}));
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
// This induces a render when there is a screen size change that has a corresponding image src value
|
|
99
|
+
// associated with the new screen size. The render is kicked off by remembering the new image src.
|
|
100
|
+
//
|
|
101
|
+
// This hoc could (should) be rewritten at a later time to use a smarter context API and callbacks,
|
|
102
|
+
// or something like pub/sub; each of which would be hooked together from the resolution.js that
|
|
103
|
+
// would coordinate any screen size/orientation changes and emit events from there.
|
|
104
|
+
//
|
|
105
|
+
// This is ripe for refactoring, and could probably move into UI to be generalized, but that's for
|
|
106
|
+
// another time. -B 2018-05-01
|
|
107
|
+
var ResponsiveImageDecorator = (0, _hoc["default"])(function (config, Wrapped) {
|
|
108
|
+
// eslint-disable-next-line no-shadow
|
|
109
|
+
var ResponsiveImageDecorator = function ResponsiveImageDecorator(props) {
|
|
110
|
+
var _useState = (0, _react.useState)((0, _resolution.selectSrc)(props.src)),
|
|
111
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
112
|
+
setSrc = _useState2[1];
|
|
113
|
+
(0, _react.useEffect)(function () {
|
|
114
|
+
var handleResize = function handleResize() {
|
|
115
|
+
setSrc((0, _resolution.selectSrc)(props.src));
|
|
116
|
+
};
|
|
117
|
+
window.addEventListener('resize', handleResize);
|
|
118
|
+
return function () {
|
|
119
|
+
window.removeEventListener('resize', handleResize);
|
|
120
|
+
};
|
|
121
|
+
}, []); // eslint-disable-line react-hooks/exhaustive-deps
|
|
122
|
+
|
|
123
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Wrapped, _objectSpread({}, props));
|
|
124
|
+
};
|
|
125
|
+
ResponsiveImageDecorator.displayName = 'ResponsiveImageDecorator';
|
|
126
|
+
ResponsiveImageDecorator.propTypes = {
|
|
127
|
+
src: _propTypes2["default"].oneOfType([_propTypes2["default"].string, _propTypes2["default"].object])
|
|
128
|
+
};
|
|
129
|
+
return ResponsiveImageDecorator;
|
|
130
|
+
});
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* Limestone-specific behaviors to apply to {@link limestone/Image.ImageBase|Image}.
|
|
134
|
+
*
|
|
135
|
+
* @hoc
|
|
136
|
+
* @memberof limestone/Image
|
|
137
|
+
* @mixes limestone/Skinnable.Skinnable
|
|
138
|
+
* @public
|
|
139
|
+
*/
|
|
140
|
+
var ImageDecorator = exports.ImageDecorator = (0, _compose["default"])((0, _ForwardRef["default"])({
|
|
141
|
+
prop: 'componentRef'
|
|
142
|
+
}), _Pure["default"], ResponsiveImageDecorator, _Skinnable["default"]);
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* A Limestone-styled image component
|
|
146
|
+
*
|
|
147
|
+
* ```
|
|
148
|
+
* <Image
|
|
149
|
+
* src={{
|
|
150
|
+
* 'hd': 'https://dummyimage.com/64/e048e0/0011ff',
|
|
151
|
+
* 'fhd': 'https://dummyimage.com/128/e048e0/0011ff',
|
|
152
|
+
* 'uhd': 'https://dummyimage.com/256/e048e0/0011ff'
|
|
153
|
+
* }}
|
|
154
|
+
* >
|
|
155
|
+
* ```
|
|
156
|
+
*
|
|
157
|
+
* @class Image
|
|
158
|
+
* @memberof limestone/Image
|
|
159
|
+
* @extends limestone/Image.ImageBase
|
|
160
|
+
* @mixes limestone/Image.ImageDecorator
|
|
161
|
+
* @ui
|
|
162
|
+
* @public
|
|
163
|
+
*/
|
|
164
|
+
var Image = exports.Image = ImageDecorator(ImageBase);
|
|
165
|
+
var _default = exports["default"] = Image;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("@testing-library/jest-dom");
|
|
4
|
+
var _react = require("@testing-library/react");
|
|
5
|
+
var _Image = _interopRequireDefault(require("../Image"));
|
|
6
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
7
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
8
|
+
var src = {
|
|
9
|
+
hd: 'https://placehold.co/200x200',
|
|
10
|
+
fhd: 'https://placehold.co/300x300',
|
|
11
|
+
uhd: 'https://placehold.co/600x600'
|
|
12
|
+
};
|
|
13
|
+
describe('Image', function () {
|
|
14
|
+
test('should select a src', function () {
|
|
15
|
+
(0, _react.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(_Image["default"], {
|
|
16
|
+
src: src
|
|
17
|
+
}));
|
|
18
|
+
var image = _react.screen.getAllByRole('img')[1];
|
|
19
|
+
|
|
20
|
+
// dispatching resize event for code coverage purposes
|
|
21
|
+
(0, _react.fireEvent)(window, new Event('resize'));
|
|
22
|
+
var actual = image.getAttribute('src');
|
|
23
|
+
var expected = 'https://placehold.co/300x300';
|
|
24
|
+
expect(actual).toBe(expected);
|
|
25
|
+
});
|
|
26
|
+
test('should return a DOM node reference for `componentRef`', function () {
|
|
27
|
+
var ref = jest.fn();
|
|
28
|
+
(0, _react.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(_Image["default"], {
|
|
29
|
+
ref: ref,
|
|
30
|
+
src: src
|
|
31
|
+
}));
|
|
32
|
+
var expected = 'DIV';
|
|
33
|
+
var actual = ref.mock.calls[0][0].nodeName;
|
|
34
|
+
expect(actual).toBe(expected);
|
|
35
|
+
});
|
|
36
|
+
test('should render image with sizing \'fill\'', function () {
|
|
37
|
+
(0, _react.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(_Image["default"], {
|
|
38
|
+
src: src
|
|
39
|
+
}));
|
|
40
|
+
var image = _react.screen.getAllByRole('img')[0];
|
|
41
|
+
var expected = "image fill";
|
|
42
|
+
expect(image).toHaveClass(expected);
|
|
43
|
+
});
|
|
44
|
+
test('should render image with sizing \'fit\'', function () {
|
|
45
|
+
(0, _react.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(_Image["default"], {
|
|
46
|
+
src: src,
|
|
47
|
+
sizing: "fit"
|
|
48
|
+
}));
|
|
49
|
+
var image = _react.screen.getAllByRole('img')[0];
|
|
50
|
+
var expected = "image fit";
|
|
51
|
+
expect(image).toHaveClass(expected);
|
|
52
|
+
});
|
|
53
|
+
test('should render image with sizing \'none\'', function () {
|
|
54
|
+
(0, _react.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(_Image["default"], {
|
|
55
|
+
src: src,
|
|
56
|
+
sizing: "none"
|
|
57
|
+
}));
|
|
58
|
+
var image = _react.screen.getAllByRole('img')[0];
|
|
59
|
+
var expected = "image";
|
|
60
|
+
expect(image).toHaveClass(expected);
|
|
61
|
+
});
|
|
62
|
+
});
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
// Type definitions for limestone/ImageItem
|
|
2
|
+
|
|
3
|
+
import { MarqueeControllerProps as limestone_Marquee_MarqueeControllerProps } from "limestone/Marquee";
|
|
4
|
+
import { SpottableProps as spotlight_Spottable_SpottableProps } from "@enact/spotlight/Spottable";
|
|
5
|
+
import { SkinnableProps as limestone_Skinnable_SkinnableProps } from "limestone/Skinnable";
|
|
6
|
+
import { ImageItemProps as ui_ImageItem_ImageItemProps } from "@enact/ui/ImageItem";
|
|
7
|
+
import * as React from "react";
|
|
8
|
+
|
|
9
|
+
type Omit<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>;
|
|
10
|
+
type Merge<M, N> = Omit<M, Extract<keyof M, keyof N>> & N;
|
|
11
|
+
|
|
12
|
+
export interface ImageItemBaseProps extends ui_ImageItem_ImageItemProps {
|
|
13
|
+
/**
|
|
14
|
+
* Centers the primary caption and label in vertical orientation.
|
|
15
|
+
*/
|
|
16
|
+
centered?: boolean;
|
|
17
|
+
/**
|
|
18
|
+
* The primary caption displayed with the image.
|
|
19
|
+
*/
|
|
20
|
+
children?: string | React.ReactNode;
|
|
21
|
+
/**
|
|
22
|
+
* Customizes the component by mapping the supplied collection of CSS class names to the
|
|
23
|
+
corresponding internal elements and states of this component.
|
|
24
|
+
*
|
|
25
|
+
* The following classes are supported:
|
|
26
|
+
* * `caption` - The caption component class
|
|
27
|
+
* * `fullImage` - Applied when `orientation` prop is `vertical` without `label` and `children`
|
|
28
|
+
* * `horizontal` - Applied when `orientation` prop is `horizontal`
|
|
29
|
+
* * `image` - The image component class
|
|
30
|
+
* * `imageIcon` - The image icon component class
|
|
31
|
+
* * `imageItem` - The image item component class
|
|
32
|
+
* * `label` - The secondary caption component class
|
|
33
|
+
* * `selected` - Applied when `selected` prop is `true`
|
|
34
|
+
* * `selectionIcon` - The icon component class for default selection component
|
|
35
|
+
* * `vertical` - Applied when `orientation` prop is `vertical`
|
|
36
|
+
*/
|
|
37
|
+
css?: object;
|
|
38
|
+
/**
|
|
39
|
+
* The voice control intent.
|
|
40
|
+
*/
|
|
41
|
+
"data-webos-voice-intent"?: string;
|
|
42
|
+
/**
|
|
43
|
+
* Disable ImageItem and becomes non-interactive.
|
|
44
|
+
*/
|
|
45
|
+
disabled?: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* A secondary caption displayed with the image.
|
|
48
|
+
*/
|
|
49
|
+
label?: string | React.ReactNode;
|
|
50
|
+
/**
|
|
51
|
+
* The layout orientation of the component.
|
|
52
|
+
*/
|
|
53
|
+
orientation?: "horizontal" | "vertical";
|
|
54
|
+
/**
|
|
55
|
+
* Placeholder image used while
|
|
56
|
+
is loaded.
|
|
57
|
+
*/
|
|
58
|
+
placeholder?: string;
|
|
59
|
+
/**
|
|
60
|
+
* Applies a selected visual effect to the image, but only if `showSelection`
|
|
61
|
+
is also `true` .
|
|
62
|
+
*/
|
|
63
|
+
selected?: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* The custom selection component to render. A component can be a stateless functional
|
|
66
|
+
component, `kind()` or React component. The following is an example with custom selection
|
|
67
|
+
kind.
|
|
68
|
+
*
|
|
69
|
+
* Usage:
|
|
70
|
+
* ```
|
|
71
|
+
const SelectionComponent = kind({
|
|
72
|
+
render: () => <div>custom selection component</div>
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
<ImageItem selectionComponent={SelectionComponent} />
|
|
76
|
+
```
|
|
77
|
+
*/
|
|
78
|
+
selectionComponent?: Function;
|
|
79
|
+
/**
|
|
80
|
+
* Shows a selection component with a centered icon. When `selected` is true, a check mark is shown.
|
|
81
|
+
*/
|
|
82
|
+
showSelection?: boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Source for the image.
|
|
85
|
+
String value or Object of values used to determine which image will appear on
|
|
86
|
+
a specific screenSize.
|
|
87
|
+
*/
|
|
88
|
+
src?: string | object;
|
|
89
|
+
/**
|
|
90
|
+
* Changes the image from a scale `1:1` to `16:9` in horizontal orientation.
|
|
91
|
+
*/
|
|
92
|
+
wideImage?: boolean;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* A Limestone styled base component for .
|
|
96
|
+
*/
|
|
97
|
+
|
|
98
|
+
export class ImageItemBase extends React.Component<
|
|
99
|
+
Merge<React.HTMLProps<HTMLElement>, ImageItemBaseProps>
|
|
100
|
+
> {}
|
|
101
|
+
|
|
102
|
+
export interface ImageItemDecoratorProps
|
|
103
|
+
extends Merge<
|
|
104
|
+
Merge<
|
|
105
|
+
limestone_Marquee_MarqueeControllerProps,
|
|
106
|
+
spotlight_Spottable_SpottableProps
|
|
107
|
+
>,
|
|
108
|
+
limestone_Skinnable_SkinnableProps
|
|
109
|
+
> {}
|
|
110
|
+
export function ImageItemDecorator<P>(
|
|
111
|
+
Component: React.ComponentType<P> | string,
|
|
112
|
+
): React.ComponentType<P & ImageItemDecoratorProps>;
|
|
113
|
+
|
|
114
|
+
export interface ImageItemProps
|
|
115
|
+
extends Merge<ImageItemBaseProps, ImageItemDecoratorProps> {}
|
|
116
|
+
/**
|
|
117
|
+
* A limestone-styled image item, Marquee and Spottable applied.
|
|
118
|
+
*
|
|
119
|
+
* Usage:
|
|
120
|
+
* ```
|
|
121
|
+
<ImageItem
|
|
122
|
+
src="https://placehold.co/100x100/9037ab/ffffff/png?text=Image0"
|
|
123
|
+
label="A secondary caption"
|
|
124
|
+
>
|
|
125
|
+
The primary caption for the image
|
|
126
|
+
</ImageItem>
|
|
127
|
+
```
|
|
128
|
+
*/
|
|
129
|
+
|
|
130
|
+
export class ImageItem extends React.Component<
|
|
131
|
+
Merge<React.HTMLProps<HTMLElement>, ImageItemProps>
|
|
132
|
+
> {}
|
|
133
|
+
|
|
134
|
+
export default ImageItem;
|