@longline/aqua-ui 1.0.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/README.md +7 -0
- package/Types.d.ts +6 -0
- package/Types.js +5 -0
- package/containers/Anchor/Anchor.d.ts +63 -0
- package/containers/Anchor/Anchor.js +113 -0
- package/containers/Anchor/index.d.ts +1 -0
- package/containers/Anchor/index.js +1 -0
- package/containers/Dock/Dock.d.ts +45 -0
- package/containers/Dock/Dock.js +61 -0
- package/containers/Dock/Dockable.d.ts +60 -0
- package/containers/Dock/Dockable.js +98 -0
- package/containers/Dock/index.d.ts +2 -0
- package/containers/Dock/index.js +2 -0
- package/containers/Form/Field.d.ts +104 -0
- package/containers/Form/Field.js +168 -0
- package/containers/Form/Form.d.ts +51 -0
- package/containers/Form/Form.js +89 -0
- package/containers/Form/Validation.d.ts +212 -0
- package/containers/Form/Validation.js +232 -0
- package/containers/Form/context/FormContext.d.ts +10 -0
- package/containers/Form/context/FormContext.js +3 -0
- package/containers/Form/context/useForm.d.ts +5 -0
- package/containers/Form/context/useForm.js +9 -0
- package/containers/Form/elements/BoxWrapper.d.ts +15 -0
- package/containers/Form/elements/BoxWrapper.js +35 -0
- package/containers/Form/elements/Hint.d.ts +21 -0
- package/containers/Form/elements/Hint.js +15 -0
- package/containers/Form/elements/Label.d.ts +22 -0
- package/containers/Form/elements/Label.js +15 -0
- package/containers/Form/elements/SimpleWrapper.d.ts +15 -0
- package/containers/Form/elements/SimpleWrapper.js +17 -0
- package/containers/GlassPane/GlassPane.d.ts +36 -0
- package/containers/GlassPane/GlassPane.js +66 -0
- package/containers/GlassPane/index.d.ts +1 -0
- package/containers/GlassPane/index.js +1 -0
- package/containers/InfoBox/InfoBox.d.ts +34 -0
- package/containers/InfoBox/InfoBox.js +45 -0
- package/containers/InfoBox/elements/Content.d.ts +23 -0
- package/containers/InfoBox/elements/Content.js +37 -0
- package/containers/InfoBox/elements/Footer.d.ts +9 -0
- package/containers/InfoBox/elements/Footer.js +24 -0
- package/containers/InfoBox/elements/Header.d.ts +9 -0
- package/containers/InfoBox/elements/Header.js +24 -0
- package/containers/List/List.d.ts +45 -0
- package/containers/List/List.js +47 -0
- package/containers/List/ListCell.d.ts +13 -0
- package/containers/List/ListCell.js +24 -0
- package/containers/List/ListRow.d.ts +15 -0
- package/containers/List/ListRow.js +24 -0
- package/containers/List/index.d.ts +3 -0
- package/containers/List/index.js +3 -0
- package/containers/Tabs/Pane.d.ts +29 -0
- package/containers/Tabs/Pane.js +45 -0
- package/containers/Tabs/Tabs.d.ts +66 -0
- package/containers/Tabs/Tabs.js +144 -0
- package/controls/Chip/Chip.d.ts +35 -0
- package/controls/Chip/Chip.js +83 -0
- package/controls/Fab/Fab.d.ts +73 -0
- package/controls/Fab/Fab.js +94 -0
- package/controls/Icon/Icon.d.ts +98 -0
- package/controls/Icon/Icon.js +79 -0
- package/controls/Icon/index.d.ts +1 -0
- package/controls/Icon/index.js +1 -0
- package/controls/Key/Key.d.ts +22 -0
- package/controls/Key/Key.js +74 -0
- package/controls/Key/index.d.ts +1 -0
- package/controls/Key/index.js +1 -0
- package/controls/LinearChart/LinearChart.d.ts +31 -0
- package/controls/LinearChart/LinearChart.js +58 -0
- package/controls/ListView/Body.d.ts +8 -0
- package/controls/ListView/Body.js +24 -0
- package/controls/ListView/Column.d.ts +55 -0
- package/controls/ListView/Column.js +8 -0
- package/controls/ListView/ColumnsManager/ColumnDraggable.d.ts +11 -0
- package/controls/ListView/ColumnsManager/ColumnDraggable.js +83 -0
- package/controls/ListView/ColumnsManager/ColumnsManager.d.ts +12 -0
- package/controls/ListView/ColumnsManager/ColumnsManager.js +63 -0
- package/controls/ListView/ColumnsManager/OrderColumns.d.ts +11 -0
- package/controls/ListView/ColumnsManager/OrderColumns.js +62 -0
- package/controls/ListView/ColumnsManager/SourceColumns.d.ts +10 -0
- package/controls/ListView/ColumnsManager/SourceColumns.js +45 -0
- package/controls/ListView/Ghost.d.ts +9 -0
- package/controls/ListView/Ghost.js +52 -0
- package/controls/ListView/Header.d.ts +12 -0
- package/controls/ListView/Header.js +35 -0
- package/controls/ListView/HeaderButton.d.ts +8 -0
- package/controls/ListView/HeaderButton.js +8 -0
- package/controls/ListView/HeaderCell.d.ts +20 -0
- package/controls/ListView/HeaderCell.js +47 -0
- package/controls/ListView/IListViewProps.d.ts +105 -0
- package/controls/ListView/IListViewProps.js +1 -0
- package/controls/ListView/ListView.d.ts +20 -0
- package/controls/ListView/ListView.js +97 -0
- package/controls/ListView/NoData.d.ts +19 -0
- package/controls/ListView/NoData.js +30 -0
- package/controls/ListView/SortButton.d.ts +16 -0
- package/controls/ListView/SortButton.js +26 -0
- package/controls/ListView/Table.d.ts +18 -0
- package/controls/ListView/Table.js +99 -0
- package/controls/ListView/Total.d.ts +9 -0
- package/controls/ListView/Total.js +28 -0
- package/controls/ListView/sortItems.d.ts +6 -0
- package/controls/ListView/sortItems.js +35 -0
- package/controls/Mouse/Mouse.d.ts +38 -0
- package/controls/Mouse/Mouse.js +51 -0
- package/controls/Mouse/index.d.ts +1 -0
- package/controls/Mouse/index.js +1 -0
- package/controls/PrimaryButton/PrimaryButton.d.ts +63 -0
- package/controls/PrimaryButton/PrimaryButton.js +83 -0
- package/controls/PrimaryButton/index.d.ts +1 -0
- package/controls/PrimaryButton/index.js +1 -0
- package/controls/Progress/Progress.d.ts +35 -0
- package/controls/Progress/Progress.js +49 -0
- package/controls/SecondaryButton/SecondaryButton.d.ts +58 -0
- package/controls/SecondaryButton/SecondaryButton.js +73 -0
- package/controls/SecondaryButton/index.d.ts +1 -0
- package/controls/SecondaryButton/index.js +1 -0
- package/controls/TabBar/Tab.d.ts +21 -0
- package/controls/TabBar/Tab.js +25 -0
- package/controls/TabBar/TabBar.d.ts +34 -0
- package/controls/TabBar/TabBar.js +134 -0
- package/controls/TabBar/Underliner.d.ts +7 -0
- package/controls/TabBar/Underliner.js +27 -0
- package/controls/TabBar/index.d.ts +1 -0
- package/controls/TabBar/index.js +1 -0
- package/controls/TertiaryButton/TertiaryButton.d.ts +28 -0
- package/controls/TertiaryButton/TertiaryButton.js +65 -0
- package/controls/TertiaryButton/index.d.ts +1 -0
- package/controls/TertiaryButton/index.js +1 -0
- package/controls/View/View.d.ts +35 -0
- package/controls/View/View.js +58 -0
- package/formatters/Date/DateTime.d.ts +45 -0
- package/formatters/Date/DateTime.js +64 -0
- package/formatters/Date/elements/Custom.d.ts +18 -0
- package/formatters/Date/elements/Custom.js +22 -0
- package/formatters/Date/elements/Distance.d.ts +24 -0
- package/formatters/Date/elements/Distance.js +45 -0
- package/formatters/Date/elements/LongDate.d.ts +17 -0
- package/formatters/Date/elements/LongDate.js +11 -0
- package/formatters/Date/elements/LongDateTime.d.ts +14 -0
- package/formatters/Date/elements/LongDateTime.js +10 -0
- package/formatters/Date/elements/LongTime.d.ts +14 -0
- package/formatters/Date/elements/LongTime.js +10 -0
- package/formatters/Date/elements/ShortDate.d.ts +14 -0
- package/formatters/Date/elements/ShortDate.js +10 -0
- package/formatters/Date/elements/ShortDateTime.d.ts +14 -0
- package/formatters/Date/elements/ShortDateTime.js +10 -0
- package/formatters/Date/elements/ShortTime.d.ts +18 -0
- package/formatters/Date/elements/ShortTime.js +10 -0
- package/formatters/Date/elements/toDate.d.ts +2 -0
- package/formatters/Date/elements/toDate.js +13 -0
- package/formatters/Filesize/Filesize.d.ts +29 -0
- package/formatters/Filesize/Filesize.js +54 -0
- package/formatters/GIS/Latitude.d.ts +23 -0
- package/formatters/GIS/Latitude.js +13 -0
- package/formatters/GIS/Longitude.d.ts +23 -0
- package/formatters/GIS/Longitude.js +13 -0
- package/formatters/GIS/index.d.ts +2 -0
- package/formatters/GIS/index.js +2 -0
- package/formatters/GIS/toDMS.d.ts +2 -0
- package/formatters/GIS/toDMS.js +16 -0
- package/formatters/Highlight/Highlight.d.ts +22 -0
- package/formatters/Highlight/Highlight.js +32 -0
- package/formatters/Highlight/index.d.ts +1 -0
- package/formatters/Highlight/index.js +1 -0
- package/formatters/Human/Human.d.ts +18 -0
- package/formatters/Human/Human.js +34 -0
- package/formatters/Human/index.d.ts +1 -0
- package/formatters/Human/index.js +1 -0
- package/formatters/Number/Number.d.ts +24 -0
- package/formatters/Number/Number.js +36 -0
- package/formatters/Number/index.d.ts +1 -0
- package/formatters/Number/index.js +1 -0
- package/helper/DMS.d.ts +22 -0
- package/helper/DMS.js +46 -0
- package/helper/HslColor.d.ts +11 -0
- package/helper/HslColor.js +47 -0
- package/helper/RgbColor.d.ts +43 -0
- package/helper/RgbColor.js +162 -0
- package/helper/SizeHelper.d.ts +10 -0
- package/helper/SizeHelper.js +56 -0
- package/helper/darken.d.ts +8 -0
- package/helper/darken.js +18 -0
- package/helper/guard.d.ts +5 -0
- package/helper/guard.js +7 -0
- package/helper/lighten.d.ts +8 -0
- package/helper/lighten.js +11 -0
- package/helper/nameToHex.d.ts +6 -0
- package/helper/nameToHex.js +163 -0
- package/inputs/DateInput/Body.d.ts +34 -0
- package/inputs/DateInput/Body.js +50 -0
- package/inputs/DateInput/Calendar.d.ts +15 -0
- package/inputs/DateInput/Calendar.js +60 -0
- package/inputs/DateInput/DateInput.d.ts +73 -0
- package/inputs/DateInput/DateInput.js +143 -0
- package/inputs/DateInput/Day.d.ts +32 -0
- package/inputs/DateInput/Day.js +33 -0
- package/inputs/DateInput/InfiniteList.d.ts +26 -0
- package/inputs/DateInput/InfiniteList.js +87 -0
- package/inputs/DateInput/Nav.d.ts +11 -0
- package/inputs/DateInput/Nav.js +24 -0
- package/inputs/DateInput/Navbar.d.ts +16 -0
- package/inputs/DateInput/Navbar.js +33 -0
- package/inputs/DateInput/NumericInput.d.ts +14 -0
- package/inputs/DateInput/NumericInput.js +48 -0
- package/inputs/DateInput/Selector.d.ts +47 -0
- package/inputs/DateInput/Selector.js +55 -0
- package/inputs/DateInput/SimpleList.d.ts +19 -0
- package/inputs/DateInput/SimpleList.js +31 -0
- package/inputs/Dropdown/Body.d.ts +25 -0
- package/inputs/Dropdown/Body.js +14 -0
- package/inputs/Dropdown/Column.d.ts +21 -0
- package/inputs/Dropdown/Column.js +6 -0
- package/inputs/Dropdown/Dropdown.d.ts +136 -0
- package/inputs/Dropdown/Dropdown.js +446 -0
- package/inputs/Dropdown/Selection.d.ts +11 -0
- package/inputs/Dropdown/Selection.js +23 -0
- package/inputs/Dropdown/Selector.d.ts +29 -0
- package/inputs/Dropdown/Selector.js +16 -0
- package/inputs/Editor/Editor.d.ts +45 -0
- package/inputs/Editor/Editor.js +60 -0
- package/inputs/Editor/buttons/BoldButton.d.ts +7 -0
- package/inputs/Editor/buttons/BoldButton.js +7 -0
- package/inputs/Editor/buttons/BulletListButton.d.ts +7 -0
- package/inputs/Editor/buttons/BulletListButton.js +7 -0
- package/inputs/Editor/buttons/CodeBlockButton.d.ts +7 -0
- package/inputs/Editor/buttons/CodeBlockButton.js +7 -0
- package/inputs/Editor/buttons/CodeButton.d.ts +7 -0
- package/inputs/Editor/buttons/CodeButton.js +7 -0
- package/inputs/Editor/buttons/ItalicButton.d.ts +7 -0
- package/inputs/Editor/buttons/ItalicButton.js +7 -0
- package/inputs/Editor/buttons/OrderedListButton.d.ts +7 -0
- package/inputs/Editor/buttons/OrderedListButton.js +7 -0
- package/inputs/Editor/buttons/StrikethroughButton.d.ts +7 -0
- package/inputs/Editor/buttons/StrikethroughButton.js +7 -0
- package/inputs/Editor/menu/MenuBar.d.ts +9 -0
- package/inputs/Editor/menu/MenuBar.js +44 -0
- package/inputs/Editor/menu/MenuButton.d.ts +35 -0
- package/inputs/Editor/menu/MenuButton.js +34 -0
- package/inputs/Editor/menu/MenuSeparator.d.ts +7 -0
- package/inputs/Editor/menu/MenuSeparator.js +24 -0
- package/inputs/Input/Clear.d.ts +7 -0
- package/inputs/Input/Clear.js +14 -0
- package/inputs/Input/Input.d.ts +133 -0
- package/inputs/Input/Input.js +64 -0
- package/inputs/Input/InputWrapper.d.ts +23 -0
- package/inputs/Input/InputWrapper.js +57 -0
- package/inputs/Input/index.d.ts +1 -0
- package/inputs/Input/index.js +1 -0
- package/inputs/Selector/ISelectorProps.d.ts +29 -0
- package/inputs/Selector/ISelectorProps.js +1 -0
- package/inputs/Selector/Selector.d.ts +29 -0
- package/inputs/Selector/Selector.js +77 -0
- package/inputs/Selector/index.d.ts +1 -0
- package/inputs/Selector/index.js +1 -0
- package/inputs/Selector/widgets/Checkbox.d.ts +6 -0
- package/inputs/Selector/widgets/Checkbox.js +29 -0
- package/inputs/Selector/widgets/Toggle.d.ts +6 -0
- package/inputs/Selector/widgets/Toggle.js +24 -0
- package/inputs/Slider/Slider.d.ts +63 -0
- package/inputs/Slider/Slider.js +198 -0
- package/inputs/Textarea/Textarea.d.ts +79 -0
- package/inputs/Textarea/Textarea.js +65 -0
- package/main.js +32 -0
- package/map/Map/Map.d.ts +47 -0
- package/map/Map/Map.js +221 -0
- package/map/Map/index.d.ts +1 -0
- package/map/Map/index.js +1 -0
- package/map/PositionsManager/PositionBox.d.ts +14 -0
- package/map/PositionsManager/PositionBox.js +86 -0
- package/map/PositionsManager/PositionsManager.d.ts +27 -0
- package/map/PositionsManager/PositionsManager.js +99 -0
- package/map/controls/CompassButton/CompassButton.d.ts +33 -0
- package/map/controls/CompassButton/CompassButton.js +88 -0
- package/map/controls/FullscreenButton/FullscreenButton.d.ts +21 -0
- package/map/controls/FullscreenButton/FullscreenButton.js +62 -0
- package/map/controls/Geocoder/Geocoder.d.ts +49 -0
- package/map/controls/Geocoder/Geocoder.js +179 -0
- package/map/controls/Geocoder/GeocoderApi.d.ts +59 -0
- package/map/controls/Geocoder/GeocoderApi.js +68 -0
- package/map/controls/Geocoder/GeocoderEntry.d.ts +15 -0
- package/map/controls/Geocoder/GeocoderEntry.js +18 -0
- package/map/controls/Geocoder/GeocoderList.d.ts +10 -0
- package/map/controls/Geocoder/GeocoderList.js +18 -0
- package/map/controls/Geocoder/GeocoderSelector.d.ts +16 -0
- package/map/controls/Geocoder/GeocoderSelector.js +25 -0
- package/map/controls/Graticule/Graticule.d.ts +35 -0
- package/map/controls/Graticule/Graticule.js +142 -0
- package/map/controls/MapLoader/MapLoader.d.ts +33 -0
- package/map/controls/MapLoader/MapLoader.js +73 -0
- package/map/controls/ScaleControl/ScaleControl.d.ts +24 -0
- package/map/controls/ScaleControl/ScaleControl.js +107 -0
- package/map/controls/ZoomInButton/ZoomInButton.d.ts +19 -0
- package/map/controls/ZoomInButton/ZoomInButton.js +56 -0
- package/map/controls/ZoomOutButton/ZoomOutButton.d.ts +19 -0
- package/map/controls/ZoomOutButton/ZoomOutButton.js +56 -0
- package/map/controls/base/MapButton/Hint.d.ts +17 -0
- package/map/controls/base/MapButton/Hint.js +34 -0
- package/map/controls/base/MapButton/MapButton.d.ts +46 -0
- package/map/controls/base/MapButton/MapButton.js +71 -0
- package/map/controls/base/MapButton/index.d.ts +1 -0
- package/map/controls/base/MapButton/index.js +1 -0
- package/map/controls/base/MapButtonGroup/MapButtonGroup.d.ts +17 -0
- package/map/controls/base/MapButtonGroup/MapButtonGroup.js +24 -0
- package/map/controls/base/MapControl/MapControl.d.ts +36 -0
- package/map/controls/base/MapControl/MapControl.js +77 -0
- package/map/controls/base/MapControl/index.d.ts +1 -0
- package/map/controls/base/MapControl/index.js +1 -0
- package/map/layers/ClusterLayer/ClusterLayer.d.ts +79 -0
- package/map/layers/ClusterLayer/ClusterLayer.js +118 -0
- package/map/layers/HtmlMarkerLayer/HtmlMarkerLayer.d.ts +51 -0
- package/map/layers/HtmlMarkerLayer/HtmlMarkerLayer.js +151 -0
- package/map/layers/InterpolationLayer/ContoursFragmentShader.d.ts +2 -0
- package/map/layers/InterpolationLayer/ContoursFragmentShader.js +2 -0
- package/map/layers/InterpolationLayer/ContoursVertexShader.d.ts +2 -0
- package/map/layers/InterpolationLayer/ContoursVertexShader.js +2 -0
- package/map/layers/InterpolationLayer/IGradientStop.d.ts +5 -0
- package/map/layers/InterpolationLayer/IGradientStop.js +1 -0
- package/map/layers/InterpolationLayer/InterpolationLayer.d.ts +35 -0
- package/map/layers/InterpolationLayer/InterpolationLayer.js +256 -0
- package/map/layers/InterpolationLayer/LevelsFragmentShader.d.ts +2 -0
- package/map/layers/InterpolationLayer/LevelsFragmentShader.js +2 -0
- package/map/layers/InterpolationLayer/LevelsVertexShader.d.ts +2 -0
- package/map/layers/InterpolationLayer/LevelsVertexShader.js +2 -0
- package/map/layers/ParticlesLayer/ParticlesFragmentShader.d.ts +2 -0
- package/map/layers/ParticlesLayer/ParticlesFragmentShader.js +2 -0
- package/map/layers/ParticlesLayer/ParticlesLayer.d.ts +40 -0
- package/map/layers/ParticlesLayer/ParticlesLayer.js +337 -0
- package/map/layers/ParticlesLayer/ParticlesVertexShader.d.ts +2 -0
- package/map/layers/ParticlesLayer/ParticlesVertexShader.js +2 -0
- package/map/layers/ParticlesLayer/UVFragmentShader.d.ts +2 -0
- package/map/layers/ParticlesLayer/UVFragmentShader.js +2 -0
- package/map/layers/ParticlesLayer/UVVertexShader.d.ts +2 -0
- package/map/layers/ParticlesLayer/UVVertexShader.js +2 -0
- package/map/markers/ClusterMarker/ClusterMarker.d.ts +36 -0
- package/map/markers/ClusterMarker/ClusterMarker.js +99 -0
- package/map/markers/ClusterMarker/index.d.ts +1 -0
- package/map/markers/ClusterMarker/index.js +1 -0
- package/map/markers/RiskMarker/RiskMarker.d.ts +22 -0
- package/map/markers/RiskMarker/RiskMarker.js +61 -0
- package/modules/MainMenu/Item.d.ts +42 -0
- package/modules/MainMenu/Item.js +94 -0
- package/modules/MainMenu/MainMenu.d.ts +20 -0
- package/modules/MainMenu/MainMenu.js +41 -0
- package/modules/MainMenu/index.d.ts +1 -0
- package/modules/MainMenu/index.js +1 -0
- package/modules/Root/Content.d.ts +16 -0
- package/modules/Root/Content.js +25 -0
- package/modules/Root/Overlay.d.ts +23 -0
- package/modules/Root/Overlay.js +33 -0
- package/modules/Root/Root.d.ts +7 -0
- package/modules/Root/Root.js +45 -0
- package/modules/Root/Shader.d.ts +15 -0
- package/modules/Root/Shader.js +24 -0
- package/modules/Root/Sidebar.d.ts +13 -0
- package/modules/Root/Sidebar.js +24 -0
- package/modules/Root/stories/SampleContent.d.ts +7 -0
- package/modules/Root/stories/SampleContent.js +44 -0
- package/package.json +64 -0
- package/services/Dialog/AlertDialog.d.ts +31 -0
- package/services/Dialog/AlertDialog.js +29 -0
- package/services/Dialog/ConfirmDialog.d.ts +34 -0
- package/services/Dialog/ConfirmDialog.js +30 -0
- package/services/Dialog/Dialog.d.ts +91 -0
- package/services/Dialog/Dialog.js +92 -0
- package/services/Dialog/DialogBackground.d.ts +7 -0
- package/services/Dialog/DialogBackground.js +12 -0
- package/services/Dialog/DialogContent.d.ts +25 -0
- package/services/Dialog/DialogContent.js +38 -0
- package/services/Dialog/DialogFooter.d.ts +24 -0
- package/services/Dialog/DialogFooter.js +50 -0
- package/services/Dialog/DialogHeader.d.ts +18 -0
- package/services/Dialog/DialogHeader.js +36 -0
- package/services/Dialog/DialogWindow.d.ts +13 -0
- package/services/Dialog/DialogWindow.js +12 -0
- package/services/Dialog/XhrDialog.d.ts +34 -0
- package/services/Dialog/XhrDialog.js +321 -0
- package/services/Toast/IToastMessage.d.ts +10 -0
- package/services/Toast/IToastMessage.js +1 -0
- package/services/Toast/IToastProps.d.ts +23 -0
- package/services/Toast/IToastProps.js +1 -0
- package/services/Toast/Toast.d.ts +21 -0
- package/services/Toast/Toast.js +79 -0
- package/services/Toast/ToastContainer.d.ts +40 -0
- package/services/Toast/ToastContainer.js +65 -0
- package/services/Toast/ToastContext.d.ts +22 -0
- package/services/Toast/ToastContext.js +7 -0
- package/services/Toast/ToastProvider.d.ts +19 -0
- package/services/Toast/ToastProvider.js +67 -0
- package/services/Toast/index.d.ts +2 -0
- package/services/Toast/index.js +2 -0
- package/services/Toast/useToast.d.ts +5 -0
- package/services/Toast/useToast.js +9 -0
- package/spritemap.svg +1 -0
- package/styles/NormalTheme.d.ts +3 -0
- package/styles/NormalTheme.js +65 -0
- package/styles/StyleBase.d.ts +2 -0
- package/styles/StyleBase.js +8 -0
- package/styles/StyleReset.d.ts +2 -0
- package/styles/StyleReset.js +8 -0
- package/svg/editor/index.d.ts +10 -0
- package/svg/editor/index.js +11 -0
- package/svg/file/index.d.ts +5 -0
- package/svg/file/index.js +6 -0
- package/svg/icons/index.d.ts +36 -0
- package/svg/icons/index.js +37 -0
- package/svg/index.d.ts +11 -0
- package/svg/index.js +5 -0
- package/svg/menu/index.d.ts +8 -0
- package/svg/menu/index.js +9 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { IListViewProps } from './IListViewProps';
|
|
3
|
+
import { IColumnProps } from './Column';
|
|
4
|
+
interface IProps extends IListViewProps {
|
|
5
|
+
columns: IColumnProps[];
|
|
6
|
+
}
|
|
7
|
+
declare const Body: (props: IProps) => React.JSX.Element;
|
|
8
|
+
export { Body };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { Selector } from '../../inputs/Selector';
|
|
3
|
+
var Body = function (props) {
|
|
4
|
+
return (React.createElement("tbody", null, props.data.map(function (row, index) {
|
|
5
|
+
return React.createElement("tr", { key: index,
|
|
6
|
+
// Set classnames for tr; styles are in Table.
|
|
7
|
+
className: [
|
|
8
|
+
props.active == row ? 'active' : null,
|
|
9
|
+
(props.onClick || props.onDoubleClick) ? 'clickable' : null
|
|
10
|
+
].join(' '), onClick: props.onClick, onDoubleClick: props.onDoubleClick },
|
|
11
|
+
props.onCheck && React.createElement("td", null,
|
|
12
|
+
React.createElement(Selector, { checked: !!row.checked, onChange: function () { return props.onCheck(index); } })),
|
|
13
|
+
props.columns.map(function (col, index) {
|
|
14
|
+
return React.createElement("td", { key: index, style: { justifyContent: (col.align == 'right' && !props.narrow) ? 'end' : 'start' } },
|
|
15
|
+
index == 0 && props.decorator && props.decorator(row),
|
|
16
|
+
React.createElement("span", { className: "label" }, props.narrow && col.name),
|
|
17
|
+
React.createElement("span", { className: "content" },
|
|
18
|
+
" ",
|
|
19
|
+
col.children(row)));
|
|
20
|
+
}),
|
|
21
|
+
props.columnsEditable && React.createElement("td", null));
|
|
22
|
+
})));
|
|
23
|
+
};
|
|
24
|
+
export { Body };
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
interface IColumnProps {
|
|
3
|
+
/**
|
|
4
|
+
* Column name, e.g. "Number of Users"
|
|
5
|
+
*/
|
|
6
|
+
name: string;
|
|
7
|
+
/**
|
|
8
|
+
* Column width. If a number, e.g. `1`, then it is the column's weight,
|
|
9
|
+
* relative to other columns. If it is a string, e.g. `50px`, then it is
|
|
10
|
+
* an exact width to be applied.
|
|
11
|
+
* @default 1
|
|
12
|
+
*/
|
|
13
|
+
width?: number | string;
|
|
14
|
+
/**
|
|
15
|
+
* Optional sort key. If not specified, column is not sortable.
|
|
16
|
+
*/
|
|
17
|
+
sort?: string;
|
|
18
|
+
/**
|
|
19
|
+
* If set, this is the default sort column. If not set, the first column will
|
|
20
|
+
* be the sort column.
|
|
21
|
+
*/
|
|
22
|
+
defaultSort?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* If true, default sorting is reverse sort.
|
|
25
|
+
* @default false
|
|
26
|
+
*/
|
|
27
|
+
reverse?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Cell content alignment. Defaults to `left`.
|
|
30
|
+
* @default let
|
|
31
|
+
*/
|
|
32
|
+
align?: 'left' | 'right';
|
|
33
|
+
/**
|
|
34
|
+
* Function that takes a table row and returns cell content.
|
|
35
|
+
*/
|
|
36
|
+
children: (item: any) => React.ReactNode;
|
|
37
|
+
/**
|
|
38
|
+
* If set, then this column cannot be removed from the ListView.
|
|
39
|
+
*/
|
|
40
|
+
fixed?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Is this column currently shown in the ListView?
|
|
43
|
+
*/
|
|
44
|
+
active?: boolean;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* TableColumn species a column name, and how to render content for that
|
|
48
|
+
* column.
|
|
49
|
+
* TableColumn itself doesn't render anything.
|
|
50
|
+
*/
|
|
51
|
+
declare const Column: {
|
|
52
|
+
(_: IColumnProps): null;
|
|
53
|
+
displayName: string;
|
|
54
|
+
};
|
|
55
|
+
export { Column, IColumnProps };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { IColumnProps } from '../Column';
|
|
3
|
+
interface IProps {
|
|
4
|
+
/** @ignore */
|
|
5
|
+
className?: string;
|
|
6
|
+
column: IColumnProps;
|
|
7
|
+
onMove: (afterName: string) => void;
|
|
8
|
+
onRemove: () => void;
|
|
9
|
+
}
|
|
10
|
+
declare const ColumnDraggable: (props: IProps) => React.JSX.Element;
|
|
11
|
+
export { ColumnDraggable };
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
2
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
3
|
+
return cooked;
|
|
4
|
+
};
|
|
5
|
+
var __assign = (this && this.__assign) || function () {
|
|
6
|
+
__assign = Object.assign || function(t) {
|
|
7
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
8
|
+
s = arguments[i];
|
|
9
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
10
|
+
t[p] = s[p];
|
|
11
|
+
}
|
|
12
|
+
return t;
|
|
13
|
+
};
|
|
14
|
+
return __assign.apply(this, arguments);
|
|
15
|
+
};
|
|
16
|
+
import * as React from 'react';
|
|
17
|
+
import styled, { useTheme } from 'styled-components';
|
|
18
|
+
import { SVG } from '../../../svg';
|
|
19
|
+
import { Icon } from '../../Icon';
|
|
20
|
+
var ColumnDraggableBase = function (props) {
|
|
21
|
+
var theme = useTheme();
|
|
22
|
+
var wrapperRef = React.useRef(null);
|
|
23
|
+
var handleMouseDown = function () {
|
|
24
|
+
wrapperRef.current.draggable = true;
|
|
25
|
+
};
|
|
26
|
+
var handleMouseUp = function () {
|
|
27
|
+
wrapperRef.current.draggable = false;
|
|
28
|
+
};
|
|
29
|
+
var handleDragStart = function (ev) {
|
|
30
|
+
ev.dataTransfer.setData("text/plain", props.column.name);
|
|
31
|
+
ev.dataTransfer.effectAllowed = "move";
|
|
32
|
+
};
|
|
33
|
+
var handleDragOver = function (ev) {
|
|
34
|
+
ev.preventDefault();
|
|
35
|
+
ev.dataTransfer.dropEffect = "move";
|
|
36
|
+
};
|
|
37
|
+
var handleDrop = function (ev) {
|
|
38
|
+
ev.preventDefault();
|
|
39
|
+
var target = ev.target;
|
|
40
|
+
while (!target.classList.contains('dropzone')) {
|
|
41
|
+
if (!target.parentElement)
|
|
42
|
+
return;
|
|
43
|
+
target = target.parentElement;
|
|
44
|
+
}
|
|
45
|
+
target.classList.remove('drop');
|
|
46
|
+
props.onMove(ev.dataTransfer.getData("text/plain"));
|
|
47
|
+
};
|
|
48
|
+
// Is the target argument a dropzone, or a child of a dropzone?
|
|
49
|
+
var getDropzone = function (target) {
|
|
50
|
+
while (!target.classList.contains('dropzone')) {
|
|
51
|
+
if (!target.parentElement)
|
|
52
|
+
return null;
|
|
53
|
+
target = target.parentElement;
|
|
54
|
+
}
|
|
55
|
+
return target;
|
|
56
|
+
};
|
|
57
|
+
var handleDragEnter = function (ev) {
|
|
58
|
+
ev.preventDefault();
|
|
59
|
+
getDropzone(ev.target).classList.add('drop');
|
|
60
|
+
};
|
|
61
|
+
var handleDragLeave = function (ev) {
|
|
62
|
+
// If the destination is not a dropzone, remove my class.
|
|
63
|
+
if (!getDropzone(ev.relatedTarget)) {
|
|
64
|
+
getDropzone(ev.target).classList.remove('drop');
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
// The destination is a dropzone. Is it the same as the current one?
|
|
68
|
+
var src_name = getDropzone(ev.target).getAttribute('x-name');
|
|
69
|
+
var dest_name = getDropzone(ev.relatedTarget).getAttribute('x-name');
|
|
70
|
+
if (src_name != dest_name) {
|
|
71
|
+
getDropzone(ev.target).classList.remove('drop');
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
return (React.createElement("div", { className: "".concat(props.className, " dropzone"), "x-name": props.column.name, ref: wrapperRef, onDragStart: handleDragStart, onDragOver: handleDragOver, onDragEnter: handleDragEnter, onDragLeave: handleDragLeave, onDrop: handleDrop },
|
|
76
|
+
React.createElement(Handle, { className: "handle", onMouseDown: handleMouseDown, onMouseUp: handleMouseUp }, props.column.name),
|
|
77
|
+
!props.column.fixed && React.createElement(Icon, { color: theme.colors.primary[5], circle: true, url: SVG.Icons.Cross, onClick: props.onRemove })));
|
|
78
|
+
};
|
|
79
|
+
var Handle = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n &:before {\n position: absolute;\n content: '';\n left: 0;\n top: calc(50% - 12px);\n width: 16px;\n height: 24px;\n background-image: radial-gradient(circle at center, ", " 1px, transparent 1px, transparent 4px);\n background-size: 6px 6px;\n }\n cursor: pointer;\n padding-left: 24px;\n"], ["\n position: relative;\n &:before {\n position: absolute;\n content: '';\n left: 0;\n top: calc(50% - 12px);\n width: 16px;\n height: 24px;\n background-image: radial-gradient(circle at center, ", " 1px, transparent 1px, transparent 4px);\n background-size: 6px 6px;\n }\n cursor: pointer;\n padding-left: 24px;\n"])), function (p) { return p.theme.colors.neutral[80]; });
|
|
80
|
+
var ColumnDraggableStyled = styled(ColumnDraggableBase)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n user-select: none;\n outline: none;\n display: flex;\n flex-direction: row;\n height: 42px;\n color: ", ";\n background-color: ", ";\n border-bottom: solid 1px ", ";\n align-items: center;\n justify-content: space-between;\n padding: 0 16px 0 16px;\n &:hover {\n background-color: ", ";\n }\n &.drop {\n background-color: ", ";\n } \n"], ["\n user-select: none;\n outline: none;\n display: flex;\n flex-direction: row;\n height: 42px;\n color: ", ";\n background-color: ", ";\n border-bottom: solid 1px ", ";\n align-items: center;\n justify-content: space-between;\n padding: 0 16px 0 16px;\n &:hover {\n background-color: ", ";\n }\n &.drop {\n background-color: ", ";\n } \n"])), function (p) { return p.theme.colors.primary[5]; }, function (p) { return p.theme.colors.neutral[100]; }, function (p) { return p.theme.colors.neutral[80]; }, function (p) { return p.theme.colors.neutral[95]; }, function (p) { return p.theme.colors.primary[1]; });
|
|
81
|
+
var ColumnDraggable = function (props) { return React.createElement(ColumnDraggableStyled, __assign({}, props)); };
|
|
82
|
+
export { ColumnDraggable };
|
|
83
|
+
var templateObject_1, templateObject_2;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { IColumnProps } from '../Column';
|
|
3
|
+
interface IProps {
|
|
4
|
+
/** @ignore */
|
|
5
|
+
className?: string;
|
|
6
|
+
columns: IColumnProps[];
|
|
7
|
+
onChange: (columns: IColumnProps[]) => void;
|
|
8
|
+
onClose: () => void;
|
|
9
|
+
onReset: () => void;
|
|
10
|
+
}
|
|
11
|
+
declare const ColumnsManager: (props: IProps) => React.JSX.Element;
|
|
12
|
+
export { ColumnsManager };
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
2
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
3
|
+
return cooked;
|
|
4
|
+
};
|
|
5
|
+
var __assign = (this && this.__assign) || function () {
|
|
6
|
+
__assign = Object.assign || function(t) {
|
|
7
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
8
|
+
s = arguments[i];
|
|
9
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
10
|
+
t[p] = s[p];
|
|
11
|
+
}
|
|
12
|
+
return t;
|
|
13
|
+
};
|
|
14
|
+
return __assign.apply(this, arguments);
|
|
15
|
+
};
|
|
16
|
+
import * as React from 'react';
|
|
17
|
+
import styled from 'styled-components';
|
|
18
|
+
import { GlassPane } from '../../../containers/GlassPane';
|
|
19
|
+
import { SourceColumns } from './SourceColumns';
|
|
20
|
+
import { OrderColumns } from './OrderColumns';
|
|
21
|
+
import { SecondaryButton } from '../../SecondaryButton';
|
|
22
|
+
import { SVG } from '../../../svg';
|
|
23
|
+
var ColumnsManagerBase = function (props) {
|
|
24
|
+
var wrapperRef = React.useRef(null);
|
|
25
|
+
// A mousedown event listener is attached to the document. When the document
|
|
26
|
+
// is clicked anywhere but this panel, the panel closes.
|
|
27
|
+
React.useEffect(function () {
|
|
28
|
+
// Listen for document-wide mousedown/keydown events when panel mounts.
|
|
29
|
+
document.addEventListener('mousedown', handleClickOutside);
|
|
30
|
+
document.addEventListener('keydown', handleKeyDown);
|
|
31
|
+
return function () {
|
|
32
|
+
// Clean up document-wide mousedown/keydown events when panel unmounts.
|
|
33
|
+
document.removeEventListener('mousedown', handleClickOutside);
|
|
34
|
+
document.removeEventListener('keydown', handleKeyDown);
|
|
35
|
+
};
|
|
36
|
+
}, []);
|
|
37
|
+
var handleKeyDown = function (e) {
|
|
38
|
+
if (e.key == 'Escape')
|
|
39
|
+
props.onClose();
|
|
40
|
+
};
|
|
41
|
+
// Handle document-wide mousedown event by closing the panel.
|
|
42
|
+
var handleClickOutside = function (event) {
|
|
43
|
+
var elem = event.target;
|
|
44
|
+
if (wrapperRef.current && !wrapperRef.current.contains(elem)) {
|
|
45
|
+
props.onClose();
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
return (React.createElement("div", { className: props.className, ref: wrapperRef },
|
|
49
|
+
React.createElement(GlassPane, { animated: true, bordered: true },
|
|
50
|
+
React.createElement(Content, null,
|
|
51
|
+
React.createElement(Header, null, "Available columns"),
|
|
52
|
+
React.createElement(Header, null,
|
|
53
|
+
"Selected columns ",
|
|
54
|
+
React.createElement(SecondaryButton, { icon: SVG.Icons.Reset, onClick: props.onReset })),
|
|
55
|
+
React.createElement(SourceColumns, { columns: props.columns, onChange: props.onChange }),
|
|
56
|
+
React.createElement(OrderColumns, { columns: props.columns, onChange: props.onChange, onReset: props.onReset })))));
|
|
57
|
+
};
|
|
58
|
+
var Header = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n font: ", ";\n text-transform: lowercase;\n color: ", ";\n padding-left: 16px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n"], ["\n font: ", ";\n text-transform: lowercase;\n color: ", ";\n padding-left: 16px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n"])), function (p) { return p.theme.font.labelCaps; }, function (p) { return p.theme.colors.neutral[100]; });
|
|
59
|
+
var Content = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n width: 500px;\n padding: 0 16px 16px 16px;\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: 48px 1fr;\n column-gap: 16px;\n"], ["\n width: 500px;\n padding: 0 16px 16px 16px;\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: 48px 1fr;\n column-gap: 16px;\n"])));
|
|
60
|
+
var ColumnsManagerStyled = styled(ColumnsManagerBase)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: relative;\n z-index: 1000;\n border-radius: ", "px;\n overflow: hidden;\n font: ", ";\n"], ["\n position: relative;\n z-index: 1000;\n border-radius: ", "px;\n overflow: hidden;\n font: ", ";\n"])), function (p) { return p.theme.radius.normal; }, function (p) { return p.theme.font.bodyMedium; });
|
|
61
|
+
var ColumnsManager = function (props) { return React.createElement(ColumnsManagerStyled, __assign({}, props)); };
|
|
62
|
+
export { ColumnsManager };
|
|
63
|
+
var templateObject_1, templateObject_2, templateObject_3;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { IColumnProps } from '../Column';
|
|
3
|
+
interface IProps {
|
|
4
|
+
/** @ignore */
|
|
5
|
+
className?: string;
|
|
6
|
+
columns: IColumnProps[];
|
|
7
|
+
onChange: (columns: IColumnProps[]) => void;
|
|
8
|
+
onReset: () => void;
|
|
9
|
+
}
|
|
10
|
+
declare const OrderColumns: (props: IProps) => React.JSX.Element;
|
|
11
|
+
export { OrderColumns };
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
2
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
3
|
+
return cooked;
|
|
4
|
+
};
|
|
5
|
+
var __assign = (this && this.__assign) || function () {
|
|
6
|
+
__assign = Object.assign || function(t) {
|
|
7
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
8
|
+
s = arguments[i];
|
|
9
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
10
|
+
t[p] = s[p];
|
|
11
|
+
}
|
|
12
|
+
return t;
|
|
13
|
+
};
|
|
14
|
+
return __assign.apply(this, arguments);
|
|
15
|
+
};
|
|
16
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
17
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
18
|
+
if (ar || !(i in from)) {
|
|
19
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
20
|
+
ar[i] = from[i];
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
24
|
+
};
|
|
25
|
+
import * as React from 'react';
|
|
26
|
+
import styled from 'styled-components';
|
|
27
|
+
import { ColumnDraggable } from './ColumnDraggable';
|
|
28
|
+
import { List } from '../../../containers/List';
|
|
29
|
+
var OrderColumnsBase = function (props) {
|
|
30
|
+
var _a = React.useState(""), q = _a[0], setQ = _a[1];
|
|
31
|
+
var handleQ = function (value) {
|
|
32
|
+
setQ(value);
|
|
33
|
+
};
|
|
34
|
+
var handleRemove = function (name) {
|
|
35
|
+
var newColumns = props.columns.map(function (c) {
|
|
36
|
+
return __assign(__assign({}, c), { active: c.name === name ? false : c.active });
|
|
37
|
+
});
|
|
38
|
+
props.onChange(newColumns);
|
|
39
|
+
};
|
|
40
|
+
var handleMove = function (name, afterName) {
|
|
41
|
+
// Find moved column.
|
|
42
|
+
var column = props.columns.find(function (c) { return c.name === name; });
|
|
43
|
+
if (!column)
|
|
44
|
+
return;
|
|
45
|
+
// Remove moved column.
|
|
46
|
+
var newColumns = props.columns.filter(function (c) { return c.name !== name; });
|
|
47
|
+
// Find index of "after" column.
|
|
48
|
+
var idx = props.columns.findIndex(function (c) { return c.name === afterName; });
|
|
49
|
+
if (idx == -1)
|
|
50
|
+
return;
|
|
51
|
+
// Insert column:
|
|
52
|
+
props.onChange(__spreadArray(__spreadArray(__spreadArray([], newColumns.slice(0, idx + 1), true), [column], false), newColumns.slice(idx + 1), true));
|
|
53
|
+
};
|
|
54
|
+
return (React.createElement("div", { className: props.className },
|
|
55
|
+
React.createElement(List, { maxItems: 6, placeholder: "Search...", search: q, onSearch: handleQ }, props.columns.filter(function (c) { return c.active; }).filter(function (c) { return !q || c.name.toLowerCase().includes(q); }).map(function (c, idx) {
|
|
56
|
+
return React.createElement(ColumnDraggable, { key: c.name, column: c, onRemove: function () { return handleRemove(c.name); }, onMove: function (afterName) { return handleMove(afterName, c.name); } });
|
|
57
|
+
}))));
|
|
58
|
+
};
|
|
59
|
+
var OrderColumnsStyled = styled(OrderColumnsBase)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n flex: 1;\n display: flex;\n flex-direction: column;\n font: ", ";\n"], ["\n flex: 1;\n display: flex;\n flex-direction: column;\n font: ", ";\n"])), function (p) { return p.theme.font.bodyMedium; });
|
|
60
|
+
var OrderColumns = function (props) { return React.createElement(OrderColumnsStyled, __assign({}, props)); };
|
|
61
|
+
export { OrderColumns };
|
|
62
|
+
var templateObject_1;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { IColumnProps } from '../Column';
|
|
3
|
+
interface IProps {
|
|
4
|
+
/** @ignore */
|
|
5
|
+
className?: string;
|
|
6
|
+
columns: IColumnProps[];
|
|
7
|
+
onChange: (columns: IColumnProps[]) => void;
|
|
8
|
+
}
|
|
9
|
+
declare const SourceColumns: (props: IProps) => React.JSX.Element;
|
|
10
|
+
export { SourceColumns };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
2
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
3
|
+
return cooked;
|
|
4
|
+
};
|
|
5
|
+
var __assign = (this && this.__assign) || function () {
|
|
6
|
+
__assign = Object.assign || function(t) {
|
|
7
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
8
|
+
s = arguments[i];
|
|
9
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
10
|
+
t[p] = s[p];
|
|
11
|
+
}
|
|
12
|
+
return t;
|
|
13
|
+
};
|
|
14
|
+
return __assign.apply(this, arguments);
|
|
15
|
+
};
|
|
16
|
+
import * as React from 'react';
|
|
17
|
+
import styled from 'styled-components';
|
|
18
|
+
import { Selector } from '../../../inputs/Selector';
|
|
19
|
+
import { Highlight } from '../../../formatters/Highlight';
|
|
20
|
+
import { List } from '../../../containers/List';
|
|
21
|
+
var SourceColumnsBase = function (props) {
|
|
22
|
+
var _a = React.useState(""), q = _a[0], setQ = _a[1];
|
|
23
|
+
var handleChange = function (name) {
|
|
24
|
+
var columns = props.columns.map(function (c, idx) {
|
|
25
|
+
if (c.name == name)
|
|
26
|
+
return __assign(__assign({}, c), { active: !c.active });
|
|
27
|
+
return c;
|
|
28
|
+
});
|
|
29
|
+
props.onChange(columns);
|
|
30
|
+
};
|
|
31
|
+
var handleQ = function (value) {
|
|
32
|
+
setQ(value);
|
|
33
|
+
};
|
|
34
|
+
return (React.createElement("div", { className: props.className },
|
|
35
|
+
React.createElement(List, { maxItems: 6, search: q, placeholder: "Search...", onSearch: handleQ }, props.columns.filter(function (c) { return !q || c.name.toLowerCase().includes(q); }).sort(function (a, b) { return a.name.localeCompare(b.name); }).map(function (c, idx) {
|
|
36
|
+
return React.createElement(Entry, { key: c.name },
|
|
37
|
+
React.createElement(Selector, { disabled: c.fixed, checked: !!c.active, onChange: function () { return handleChange(c.name); } }),
|
|
38
|
+
React.createElement(Highlight, { value: c.name, q: q }));
|
|
39
|
+
}))));
|
|
40
|
+
};
|
|
41
|
+
var Entry = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n color: ", ";\n padding-left: 16px;\n padding-right: 16px;\n"], ["\n display: flex;\n align-items: center;\n color: ", ";\n padding-left: 16px;\n padding-right: 16px;\n"])), function (p) { return p.theme.colors.primary[5]; });
|
|
42
|
+
var SourceColumnsStyled = styled(SourceColumnsBase)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n font: ", ";\n display: flex;\n flex-direction: column;\n flex: 1;\n"], ["\n font: ", ";\n display: flex;\n flex-direction: column;\n flex: 1;\n"])), function (p) { return p.theme.font.bodyMedium; });
|
|
43
|
+
var SourceColumns = function (props) { return React.createElement(SourceColumnsStyled, __assign({}, props)); };
|
|
44
|
+
export { SourceColumns };
|
|
45
|
+
var templateObject_1, templateObject_2;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { IListViewProps } from './IListViewProps';
|
|
3
|
+
import { IColumnProps } from './Column';
|
|
4
|
+
interface IProps extends IListViewProps {
|
|
5
|
+
className?: string;
|
|
6
|
+
columns: IColumnProps[];
|
|
7
|
+
}
|
|
8
|
+
declare const Ghost: (props: IProps) => React.JSX.Element;
|
|
9
|
+
export { Ghost };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
2
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
3
|
+
return cooked;
|
|
4
|
+
};
|
|
5
|
+
var __assign = (this && this.__assign) || function () {
|
|
6
|
+
__assign = Object.assign || function(t) {
|
|
7
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
8
|
+
s = arguments[i];
|
|
9
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
10
|
+
t[p] = s[p];
|
|
11
|
+
}
|
|
12
|
+
return t;
|
|
13
|
+
};
|
|
14
|
+
return __assign.apply(this, arguments);
|
|
15
|
+
};
|
|
16
|
+
import * as React from 'react';
|
|
17
|
+
import styled, { css, keyframes } from 'styled-components';
|
|
18
|
+
var GhostBase = function (props) {
|
|
19
|
+
return (React.createElement("div", { className: props.className },
|
|
20
|
+
React.createElement("div", { className: "mask1" }),
|
|
21
|
+
React.createElement("div", { className: "mask2" }),
|
|
22
|
+
props.onCheck && React.createElement(Cell, { "$dark": props.dark, "$shadow": props.shadow, "$content": false }),
|
|
23
|
+
props.columns.filter(function (c) { return c.active; }).map(function (c, idx) { return React.createElement(Cell, { "$dark": props.dark, "$shadow": props.shadow, "$content": true, key: idx }); }),
|
|
24
|
+
props.columnsEditable && React.createElement(Cell, { "$dark": props.dark, "$shadow": props.shadow, "$content": false })));
|
|
25
|
+
};
|
|
26
|
+
var Pulse = keyframes(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n 0% {\n background-position-x: 0px;\n }\n 100% {\n background-position-x: 250px;\n }\n"], ["\n 0% {\n background-position-x: 0px;\n }\n 100% {\n background-position-x: 250px;\n }\n"])));
|
|
27
|
+
var Pulse2 = keyframes(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n 0% {\n background-position-x: 125px;\n }\n 50% {\n background-position-x: 250px; \n }\n 50.1% {\n background-position-x: 0px; \n } \n 100% {\n background-position-x: 125px;\n }\n"], ["\n 0% {\n background-position-x: 125px;\n }\n 50% {\n background-position-x: 250px; \n }\n 50.1% {\n background-position-x: 0px; \n } \n 100% {\n background-position-x: 125px;\n }\n"])));
|
|
28
|
+
var Cell = styled.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n position: relative;\n background-color: ", ";\n border-bottom: solid 1px ", ";\n z-index: 1;\n\n &:after {\n position: absolute;\n content: '';\n background: ", ";\n left: 16px;\n top: calc(50% - 7px);\n height: 14px;\n border-radius: 7px;\n ", "\n }\n\n &:last-child:after {\n right: 16px;\n }\n // Header shadow:\n ", " \n"], ["\n position: relative;\n background-color: ", ";\n border-bottom: solid 1px ", ";\n z-index: 1;\n\n &:after {\n position: absolute;\n content: '';\n background: ", ";\n left: 16px;\n top: calc(50% - 7px);\n height: 14px;\n border-radius: 7px;\n ", "\n }\n\n &:last-child:after {\n right: 16px;\n }\n // Header shadow:\n ", " \n"])), function (p) { return p.$dark ? p.theme.colors.primary[5] : p.theme.colors.neutral[100]; }, function (p) { return p.$dark ? p.theme.colors.primary[2] : p.theme.colors.neutral[80]; }, function (p) { return p.$dark ? p.theme.colors.primary[4] : p.theme.colors.neutral[80]; }, function (p) { return p.$content ? css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["right: 0;"], ["right: 0;"]))) : css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["width:14px"], ["width:14px"]))); }, function (p) { return p.$shadow && css(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n &:before {\n position: absolute;\n pointer-events: none;\n content: '';\n z-index: 1;\n top: calc(100%);\n left: 0;\n right: 0;\n height: 8px;\n background: linear-gradient(rgba(0,0,0,0.1), transparent);\n }\n "], ["\n &:before {\n position: absolute;\n pointer-events: none;\n content: '';\n z-index: 1;\n top: calc(100%);\n left: 0;\n right: 0;\n height: 8px;\n background: linear-gradient(rgba(0,0,0,0.1), transparent);\n }\n "]))); });
|
|
29
|
+
var GhostStyled = styled(GhostBase).attrs(function (p) {
|
|
30
|
+
return {
|
|
31
|
+
fg: p.dark ? p.theme.colors.primary[1] : p.theme.colors.primary[1],
|
|
32
|
+
bg: p.dark ? p.theme.colors.primary[3] : p.theme.colors.neutral[100]
|
|
33
|
+
};
|
|
34
|
+
})(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n // Size and position. A table fills its container.\n position: relative;\n width: 100%;\n height: 100%;\n background: ", ";\n\n display: grid;\n // Convert column widths a string suitable for grid template:\n grid-template-columns: ", ";\n\n grid-template-rows: 48px;\n\n div.mask1 {\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n background: repeat-x 0 0/250px 100% linear-gradient(to right, ", ", ", ", ", ");\n mask: linear-gradient(to bottom, transparent 0, transparent 47px, black 47px, transparent 48px, transparent 100%) repeat-y 0 0/100% 96px;\n animation: ", " 0.8s linear infinite;\n }\n\n div.mask2 {\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n background: repeat-x 0 0/250px 100% linear-gradient(to right, ", ", ", ", ", ");\n mask: linear-gradient(to bottom, transparent 0, transparent 95px, black 100%) repeat-y 0 0/100% 96px;\n animation: ", " 0.8s linear infinite;\n }\n"], ["\n // Size and position. A table fills its container.\n position: relative;\n width: 100%;\n height: 100%;\n background: ", ";\n\n display: grid;\n // Convert column widths a string suitable for grid template:\n grid-template-columns: ", ";\n\n grid-template-rows: 48px;\n\n div.mask1 {\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n background: repeat-x 0 0/250px 100% linear-gradient(to right, ", ", ", ", ", ");\n mask: linear-gradient(to bottom, transparent 0, transparent 47px, black 47px, transparent 48px, transparent 100%) repeat-y 0 0/100% 96px;\n animation: ", " 0.8s linear infinite;\n }\n\n div.mask2 {\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n background: repeat-x 0 0/250px 100% linear-gradient(to right, ", ", ", ", ", ");\n mask: linear-gradient(to bottom, transparent 0, transparent 95px, black 100%) repeat-y 0 0/100% 96px;\n animation: ", " 0.8s linear infinite;\n }\n"])), function (p) { return p.dark ? p.theme.colors.primary[3] : p.theme.colors.neutral[100]; }, function (p) {
|
|
35
|
+
// Prefix a check column?
|
|
36
|
+
return (p.onCheck ? ['48px'] : []).concat(
|
|
37
|
+
// Actual columns:
|
|
38
|
+
p.columns.filter(function (c) { return c.active; }).map(function (col) {
|
|
39
|
+
var _a;
|
|
40
|
+
var width = (_a = col.width) !== null && _a !== void 0 ? _a : 1;
|
|
41
|
+
// Numeric width?
|
|
42
|
+
if (typeof width === 'number' && !isNaN(width))
|
|
43
|
+
return "minmax(0, ".concat(width, "fr)");
|
|
44
|
+
return "minmax(0, ".concat(width, ")");
|
|
45
|
+
}))
|
|
46
|
+
// Postfix an columns management column?
|
|
47
|
+
.concat(p.columnsEditable ? ['48px'] : [])
|
|
48
|
+
.join(" ");
|
|
49
|
+
}, function (p) { return p.fg; }, function (p) { return p.bg; }, function (p) { return p.fg; }, Pulse, function (p) { return p.fg; }, function (p) { return p.bg; }, function (p) { return p.fg; }, Pulse2);
|
|
50
|
+
var Ghost = function (props) { return React.createElement(GhostStyled, __assign({}, props)); };
|
|
51
|
+
export { Ghost };
|
|
52
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { IListViewProps } from './IListViewProps';
|
|
3
|
+
import { IColumnProps } from './Column';
|
|
4
|
+
interface IProps extends IListViewProps {
|
|
5
|
+
columns: IColumnProps[];
|
|
6
|
+
sort: string;
|
|
7
|
+
reverse: boolean;
|
|
8
|
+
onSortClick: (column: IColumnProps) => void;
|
|
9
|
+
onOpenColumns: () => void;
|
|
10
|
+
}
|
|
11
|
+
declare const Header: (props: IProps) => React.JSX.Element;
|
|
12
|
+
export { Header };
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
import * as React from 'react';
|
|
13
|
+
import { HeaderCell } from './HeaderCell';
|
|
14
|
+
import { Selector } from '../../inputs/Selector';
|
|
15
|
+
import { SVG } from '../../svg';
|
|
16
|
+
import { useTheme } from 'styled-components';
|
|
17
|
+
import { HeaderButton } from './HeaderButton';
|
|
18
|
+
var Header = function (props) {
|
|
19
|
+
var theme = useTheme();
|
|
20
|
+
// Are ALL items checked?
|
|
21
|
+
var allChecked = props.data.map(function (x) { return !!x.checked; }).reduce(function (acc, cur) { return acc && !!cur; }, true) == true;
|
|
22
|
+
// Are NO items checked?
|
|
23
|
+
var noneChecked = props.data.map(function (x) { return !!x.checked; }).reduce(function (acc, cur) { return acc || !!cur; }, false) == false;
|
|
24
|
+
var indeterminate = !allChecked && !noneChecked;
|
|
25
|
+
return (React.createElement("thead", null,
|
|
26
|
+
React.createElement("tr", null,
|
|
27
|
+
props.onCheck &&
|
|
28
|
+
React.createElement("th", null,
|
|
29
|
+
React.createElement(Selector, { indeterminate: indeterminate, checked: allChecked, onChange: function () { return props.onCheck(allChecked ? false : true); } })),
|
|
30
|
+
props.columns.map(function (col, index) { return React.createElement(HeaderCell, __assign({ key: index, column: col }, props)); }),
|
|
31
|
+
props.columnsEditable &&
|
|
32
|
+
React.createElement("th", null,
|
|
33
|
+
React.createElement(HeaderButton, { dark: props.dark, url: SVG.Icons.Columns, onClick: props.onOpenColumns })))));
|
|
34
|
+
};
|
|
35
|
+
export { Header };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { useTheme } from 'styled-components';
|
|
3
|
+
import { Icon } from '../Icon';
|
|
4
|
+
var HeaderButton = function (props) {
|
|
5
|
+
var theme = useTheme();
|
|
6
|
+
return (React.createElement(Icon, { url: props.url, onClick: props.onClick, color: props.dark ? theme.colors.neutral[100] : theme.colors.neutral[10] }));
|
|
7
|
+
};
|
|
8
|
+
export { HeaderButton };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { IColumnProps } from './Column';
|
|
3
|
+
import { IListViewProps } from './IListViewProps';
|
|
4
|
+
interface IProps extends IListViewProps {
|
|
5
|
+
/** @ignore */
|
|
6
|
+
className?: string;
|
|
7
|
+
/** Column properties */
|
|
8
|
+
column: IColumnProps;
|
|
9
|
+
sort: string;
|
|
10
|
+
reverse: boolean;
|
|
11
|
+
/** Fired when column is clicked. */
|
|
12
|
+
onSortClick: (column: IColumnProps) => void;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* `HeaderCell` wraps a <th>. It shows the column label, and a sort icon if
|
|
16
|
+
* the column is sortable. In order to avoid creating many styled-components
|
|
17
|
+
* classes, styling is mostly left to `Table`.
|
|
18
|
+
*/
|
|
19
|
+
declare const HeaderCell: (props: IProps) => React.JSX.Element;
|
|
20
|
+
export { HeaderCell };
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
2
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
3
|
+
return cooked;
|
|
4
|
+
};
|
|
5
|
+
var __assign = (this && this.__assign) || function () {
|
|
6
|
+
__assign = Object.assign || function(t) {
|
|
7
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
8
|
+
s = arguments[i];
|
|
9
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
10
|
+
t[p] = s[p];
|
|
11
|
+
}
|
|
12
|
+
return t;
|
|
13
|
+
};
|
|
14
|
+
return __assign.apply(this, arguments);
|
|
15
|
+
};
|
|
16
|
+
import * as React from 'react';
|
|
17
|
+
import styled from 'styled-components';
|
|
18
|
+
import { SortButton } from './SortButton';
|
|
19
|
+
var HeaderCellBase = function (props) {
|
|
20
|
+
var sorted = props.sort == props.column.sort;
|
|
21
|
+
return (React.createElement("th", {
|
|
22
|
+
// Sorted column gets .sorted class:
|
|
23
|
+
className: "".concat(props.className, " ").concat(sorted ? 'sort' : ''), style: {
|
|
24
|
+
// Sortable column has pointer cursor:
|
|
25
|
+
cursor: props.column.sort ? 'pointer' : 'auto'
|
|
26
|
+
}, onClick: (props.column.sort && props.onSortClick) ? function () { return props.onSortClick(props.column); } : null },
|
|
27
|
+
React.createElement("span", null, props.column.name),
|
|
28
|
+
React.createElement(SortButton, { dark: props.dark, active: sorted,
|
|
29
|
+
// If currently sorted, show sort direction.
|
|
30
|
+
// If not currently sorted, show default sort direction.
|
|
31
|
+
reverse: sorted ? props.reverse : props.column.reverse })));
|
|
32
|
+
};
|
|
33
|
+
var HeaderCellStyled = styled(HeaderCellBase)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n &:hover {\n ", " {\n opacity: 1 !important; \n path {\n animation-duration: 1000ms;\n }\n } \n }\n"], ["\n &:hover {\n ", " {\n opacity: 1 !important; \n path {\n animation-duration: 1000ms;\n }\n } \n }\n"
|
|
34
|
+
/**
|
|
35
|
+
* `HeaderCell` wraps a <th>. It shows the column label, and a sort icon if
|
|
36
|
+
* the column is sortable. In order to avoid creating many styled-components
|
|
37
|
+
* classes, styling is mostly left to `Table`.
|
|
38
|
+
*/
|
|
39
|
+
])), SortButton);
|
|
40
|
+
/**
|
|
41
|
+
* `HeaderCell` wraps a <th>. It shows the column label, and a sort icon if
|
|
42
|
+
* the column is sortable. In order to avoid creating many styled-components
|
|
43
|
+
* classes, styling is mostly left to `Table`.
|
|
44
|
+
*/
|
|
45
|
+
var HeaderCell = function (props) { return React.createElement(HeaderCellStyled, __assign({}, props)); };
|
|
46
|
+
export { HeaderCell };
|
|
47
|
+
var templateObject_1;
|