@itwin/imodel-components-react 4.0.0-dev.9 → 4.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/CHANGELOG.md +156 -1
- package/README.md +2 -2
- package/lib/cjs/imodel-components-react/UiIModelComponents.d.ts +28 -28
- package/lib/cjs/imodel-components-react/UiIModelComponents.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/UiIModelComponents.js +77 -79
- package/lib/cjs/imodel-components-react/UiIModelComponents.js.map +1 -1
- package/lib/cjs/imodel-components-react/color/AlphaSlider.d.ts +36 -36
- package/lib/cjs/imodel-components-react/color/AlphaSlider.js +190 -186
- package/lib/cjs/imodel-components-react/color/AlphaSlider.js.map +1 -1
- package/lib/cjs/imodel-components-react/color/ColorPickerButton.d.ts +37 -37
- package/lib/cjs/imodel-components-react/color/ColorPickerButton.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/color/ColorPickerButton.js +112 -107
- package/lib/cjs/imodel-components-react/color/ColorPickerButton.js.map +1 -1
- package/lib/cjs/imodel-components-react/color/ColorPickerButton.scss +4 -4
- package/lib/cjs/imodel-components-react/color/ColorPickerDialog.d.ts +23 -23
- package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js +78 -74
- package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js.map +1 -1
- package/lib/cjs/imodel-components-react/color/ColorPickerPopup.d.ts +44 -44
- package/lib/cjs/imodel-components-react/color/ColorPickerPopup.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js +143 -137
- package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js.map +1 -1
- package/lib/cjs/imodel-components-react/color/ColorPickerPopup.scss +4 -5
- package/lib/cjs/imodel-components-react/color/HueSlider.d.ts +22 -22
- package/lib/cjs/imodel-components-react/color/HueSlider.js +203 -199
- package/lib/cjs/imodel-components-react/color/HueSlider.js.map +1 -1
- package/lib/cjs/imodel-components-react/color/SaturationPicker.d.ts +20 -20
- package/lib/cjs/imodel-components-react/color/SaturationPicker.js +217 -213
- package/lib/cjs/imodel-components-react/color/SaturationPicker.js.map +1 -1
- package/lib/cjs/imodel-components-react/color/Swatch.d.ts +22 -22
- package/lib/cjs/imodel-components-react/color/Swatch.js +64 -60
- package/lib/cjs/imodel-components-react/color/Swatch.js.map +1 -1
- package/lib/cjs/imodel-components-react/color/Swatch.scss +1 -2
- package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.d.ts +6 -6
- package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js +23 -23
- package/lib/cjs/imodel-components-react/editors/ColorEditor.d.ts +44 -44
- package/lib/cjs/imodel-components-react/editors/ColorEditor.js +155 -151
- package/lib/cjs/imodel-components-react/editors/ColorEditor.js.map +1 -1
- package/lib/cjs/imodel-components-react/editors/ColorEditor.scss +1 -1
- package/lib/cjs/imodel-components-react/editors/WeightEditor.d.ts +47 -47
- package/lib/cjs/imodel-components-react/editors/WeightEditor.js +164 -160
- package/lib/cjs/imodel-components-react/editors/WeightEditor.js.map +1 -1
- package/lib/cjs/imodel-components-react/editors/WeightEditor.scss +1 -1
- package/lib/cjs/imodel-components-react/inputs/QuantityInput.d.ts +25 -25
- package/lib/cjs/imodel-components-react/inputs/QuantityInput.js +100 -96
- package/lib/cjs/imodel-components-react/inputs/QuantityInput.js.map +1 -1
- package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts +44 -44
- package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js +272 -265
- package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
- package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.scss +6 -7
- package/lib/cjs/imodel-components-react/lineweight/Swatch.d.ts +33 -33
- package/lib/cjs/imodel-components-react/lineweight/Swatch.js +89 -85
- package/lib/cjs/imodel-components-react/lineweight/Swatch.js.map +1 -1
- package/lib/cjs/imodel-components-react/lineweight/Swatch.scss +1 -1
- package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.d.ts +60 -60
- package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js +163 -159
- package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -1
- package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.scss +7 -8
- package/lib/cjs/imodel-components-react/navigationaids/Cube.d.ts +45 -45
- package/lib/cjs/imodel-components-react/navigationaids/Cube.js +131 -127
- package/lib/cjs/imodel-components-react/navigationaids/Cube.js.map +1 -1
- package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +154 -174
- package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js +631 -634
- package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
- package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.scss +13 -17
- package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
- package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js +657 -647
- package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
- package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.scss +4 -3
- package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.d.ts +26 -26
- package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js +103 -99
- package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.scss +2 -6
- package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
- package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js +57 -53
- package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/FormatSample.d.ts +18 -18
- package/lib/cjs/imodel-components-react/quantityformat/FormatSample.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js +88 -83
- package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/FormatType.d.ts +17 -17
- package/lib/cjs/imodel-components-react/quantityformat/FormatType.js +90 -86
- package/lib/cjs/imodel-components-react/quantityformat/FormatType.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +17 -17
- package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js +113 -109
- package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.d.ts +19 -19
- package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js +137 -133
- package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +21 -21
- package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js +188 -184
- package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +22 -22
- package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js +149 -145
- package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +17 -17
- package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js +63 -59
- package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +17 -17
- package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js +51 -47
- package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +16 -16
- package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js +58 -54
- package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.d.ts +18 -18
- package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js +52 -48
- package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.d.ts +17 -17
- package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js +54 -50
- package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +17 -17
- package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +62 -58
- package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +17 -17
- package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js +51 -47
- package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +17 -17
- package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js +60 -56
- package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +17 -17
- package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +99 -95
- package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -1
- package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +23 -23
- package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js +123 -119
- package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +52 -52
- package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js +142 -143
- package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +31 -31
- package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js +69 -69
- package/lib/cjs/imodel-components-react/timeline/InlineEdit.d.ts +27 -27
- package/lib/cjs/imodel-components-react/timeline/InlineEdit.js +85 -81
- package/lib/cjs/imodel-components-react/timeline/InlineEdit.js.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/InlineEdit.scss +2 -2
- package/lib/cjs/imodel-components-react/timeline/PlayerButton.d.ts +33 -33
- package/lib/cjs/imodel-components-react/timeline/PlayerButton.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/PlayerButton.js +99 -91
- package/lib/cjs/imodel-components-react/timeline/PlayerButton.js.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/PlayerButton.scss +9 -12
- package/lib/cjs/imodel-components-react/timeline/Scrubber.d.ts +54 -54
- package/lib/cjs/imodel-components-react/timeline/Scrubber.js +195 -191
- package/lib/cjs/imodel-components-react/timeline/Scrubber.js.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/Scrubber.scss +8 -15
- package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts +77 -77
- package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js +432 -424
- package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/SolarTimeline.scss +27 -24
- package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.d.ts +15 -15
- package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js +58 -54
- package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts +130 -133
- package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js +398 -358
- package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/TimelineComponent.scss +25 -11
- package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts +145 -174
- package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/interfaces.js +45 -45
- package/lib/cjs/imodel-components-react/timeline/interfaces.js.map +1 -1
- package/lib/cjs/imodel-components-react/viewport/ViewportComponent.d.ts +42 -42
- package/lib/cjs/imodel-components-react/viewport/ViewportComponent.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js +278 -274
- package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js.map +1 -1
- package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.d.ts +106 -106
- package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js +105 -105
- package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -1
- package/lib/cjs/imodel-components-react.d.ts +81 -82
- package/lib/cjs/imodel-components-react.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react.js +104 -101
- package/lib/cjs/imodel-components-react.js.map +1 -1
- package/lib/esm/imodel-components-react/UiIModelComponents.d.ts +28 -28
- package/lib/esm/imodel-components-react/UiIModelComponents.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/UiIModelComponents.js +74 -75
- package/lib/esm/imodel-components-react/UiIModelComponents.js.map +1 -1
- package/lib/esm/imodel-components-react/color/AlphaSlider.d.ts +36 -36
- package/lib/esm/imodel-components-react/color/AlphaSlider.js +160 -160
- package/lib/esm/imodel-components-react/color/AlphaSlider.js.map +1 -1
- package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts +37 -37
- package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/color/ColorPickerButton.js +83 -82
- package/lib/esm/imodel-components-react/color/ColorPickerButton.js.map +1 -1
- package/lib/esm/imodel-components-react/color/ColorPickerButton.scss +4 -4
- package/lib/esm/imodel-components-react/color/ColorPickerDialog.d.ts +23 -23
- package/lib/esm/imodel-components-react/color/ColorPickerDialog.js +51 -51
- package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts +44 -44
- package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/color/ColorPickerPopup.js +114 -112
- package/lib/esm/imodel-components-react/color/ColorPickerPopup.js.map +1 -1
- package/lib/esm/imodel-components-react/color/ColorPickerPopup.scss +4 -5
- package/lib/esm/imodel-components-react/color/HueSlider.d.ts +22 -22
- package/lib/esm/imodel-components-react/color/HueSlider.js +173 -173
- package/lib/esm/imodel-components-react/color/SaturationPicker.d.ts +20 -20
- package/lib/esm/imodel-components-react/color/SaturationPicker.js +187 -187
- package/lib/esm/imodel-components-react/color/Swatch.d.ts +22 -22
- package/lib/esm/imodel-components-react/color/Swatch.js +34 -34
- package/lib/esm/imodel-components-react/color/Swatch.scss +1 -2
- package/lib/esm/imodel-components-react/color/getCSSColorFromDef.d.ts +6 -6
- package/lib/esm/imodel-components-react/color/getCSSColorFromDef.js +19 -19
- package/lib/esm/imodel-components-react/editors/ColorEditor.d.ts +44 -44
- package/lib/esm/imodel-components-react/editors/ColorEditor.js +124 -124
- package/lib/esm/imodel-components-react/editors/ColorEditor.scss +1 -1
- package/lib/esm/imodel-components-react/editors/WeightEditor.d.ts +47 -47
- package/lib/esm/imodel-components-react/editors/WeightEditor.js +133 -133
- package/lib/esm/imodel-components-react/editors/WeightEditor.scss +1 -1
- package/lib/esm/imodel-components-react/inputs/QuantityInput.d.ts +25 -25
- package/lib/esm/imodel-components-react/inputs/QuantityInput.js +70 -70
- package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts +44 -44
- package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js +243 -240
- package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
- package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.scss +6 -7
- package/lib/esm/imodel-components-react/lineweight/Swatch.d.ts +33 -33
- package/lib/esm/imodel-components-react/lineweight/Swatch.js +59 -59
- package/lib/esm/imodel-components-react/lineweight/Swatch.scss +1 -1
- package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.d.ts +60 -60
- package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js +134 -133
- package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -1
- package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.scss +7 -8
- package/lib/esm/imodel-components-react/navigationaids/Cube.d.ts +45 -45
- package/lib/esm/imodel-components-react/navigationaids/Cube.js +100 -100
- package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +154 -174
- package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js +601 -606
- package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
- package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.scss +13 -17
- package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
- package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js +627 -620
- package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
- package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.scss +4 -3
- package/lib/esm/imodel-components-react/quantityformat/FormatPanel.d.ts +26 -26
- package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js +76 -76
- package/lib/esm/imodel-components-react/quantityformat/FormatPanel.scss +2 -6
- package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js +30 -30
- package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts +18 -18
- package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/quantityformat/FormatSample.js +61 -60
- package/lib/esm/imodel-components-react/quantityformat/FormatSample.js.map +1 -1
- package/lib/esm/imodel-components-react/quantityformat/FormatType.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/FormatType.js +63 -63
- package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js +83 -83
- package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts +19 -19
- package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js +110 -110
- package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +21 -21
- package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js +158 -158
- package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +22 -22
- package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js +122 -122
- package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.js +36 -36
- package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.js +24 -24
- package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +16 -16
- package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.js +31 -31
- package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.d.ts +18 -18
- package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.js +25 -25
- package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.js +27 -27
- package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +35 -35
- package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.js +24 -24
- package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.js +33 -33
- package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +69 -69
- package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +23 -23
- package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.js +96 -96
- package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +52 -52
- package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js +138 -139
- package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -1
- package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +31 -31
- package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.js +65 -65
- package/lib/esm/imodel-components-react/timeline/InlineEdit.d.ts +27 -27
- package/lib/esm/imodel-components-react/timeline/InlineEdit.js +55 -55
- package/lib/esm/imodel-components-react/timeline/InlineEdit.scss +2 -2
- package/lib/esm/imodel-components-react/timeline/PlayerButton.d.ts +33 -33
- package/lib/esm/imodel-components-react/timeline/PlayerButton.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/timeline/PlayerButton.js +68 -64
- package/lib/esm/imodel-components-react/timeline/PlayerButton.js.map +1 -1
- package/lib/esm/imodel-components-react/timeline/PlayerButton.scss +9 -12
- package/lib/esm/imodel-components-react/timeline/Scrubber.d.ts +54 -54
- package/lib/esm/imodel-components-react/timeline/Scrubber.js +164 -164
- package/lib/esm/imodel-components-react/timeline/Scrubber.scss +8 -15
- package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts +77 -77
- package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/timeline/SolarTimeline.js +402 -398
- package/lib/esm/imodel-components-react/timeline/SolarTimeline.js.map +1 -1
- package/lib/esm/imodel-components-react/timeline/SolarTimeline.scss +27 -24
- package/lib/esm/imodel-components-react/timeline/SpeedTimeline.d.ts +15 -15
- package/lib/esm/imodel-components-react/timeline/SpeedTimeline.js +28 -28
- package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts +130 -133
- package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/timeline/TimelineComponent.js +368 -332
- package/lib/esm/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
- package/lib/esm/imodel-components-react/timeline/TimelineComponent.scss +25 -11
- package/lib/esm/imodel-components-react/timeline/interfaces.d.ts +145 -174
- package/lib/esm/imodel-components-react/timeline/interfaces.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/timeline/interfaces.js +42 -42
- package/lib/esm/imodel-components-react/timeline/interfaces.js.map +1 -1
- package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts +42 -42
- package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/viewport/ViewportComponent.js +251 -251
- package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.d.ts +106 -106
- package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js +96 -95
- package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -1
- package/lib/esm/imodel-components-react.d.ts +81 -82
- package/lib/esm/imodel-components-react.d.ts.map +1 -1
- package/lib/esm/imodel-components-react.js +86 -87
- package/lib/esm/imodel-components-react.js.map +1 -1
- package/package.json +35 -37
- package/lib/cjs/imodel-components-react/color/ColorPickerPanel.d.ts +0 -22
- package/lib/cjs/imodel-components-react/color/ColorPickerPanel.d.ts.map +0 -1
- package/lib/cjs/imodel-components-react/color/ColorPickerPanel.js +0 -146
- package/lib/cjs/imodel-components-react/color/ColorPickerPanel.js.map +0 -1
- package/lib/cjs/imodel-components-react/color/ColorPickerPanel.scss +0 -94
- package/lib/esm/imodel-components-react/color/ColorPickerPanel.d.ts +0 -22
- package/lib/esm/imodel-components-react/color/ColorPickerPanel.d.ts.map +0 -1
- package/lib/esm/imodel-components-react/color/ColorPickerPanel.js +0 -123
- package/lib/esm/imodel-components-react/color/ColorPickerPanel.js.map +0 -1
- package/lib/esm/imodel-components-react/color/ColorPickerPanel.scss +0 -94
|
@@ -1,188 +1,188 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
/** @packageDocumentation
|
|
6
|
-
* @module Color
|
|
7
|
-
*/
|
|
8
|
-
import "./SaturationPicker.scss";
|
|
9
|
-
import classnames from "classnames";
|
|
10
|
-
import * as React from "react";
|
|
11
|
-
import { ColorDef, HSVColor } from "@itwin/core-common";
|
|
12
|
-
import { SpecialKey } from "@itwin/appui-abstract";
|
|
13
|
-
import { UiIModelComponents } from "../UiIModelComponents";
|
|
14
|
-
function calculateChange(e, hsv, container) {
|
|
15
|
-
const { width: containerWidth, height: containerHeight, top: containerTop, left: containerLeft } = container.getBoundingClientRect();
|
|
16
|
-
let x;
|
|
17
|
-
if ("pageX" in e) {
|
|
18
|
-
x = e.pageX;
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
// istanbul ignore next
|
|
22
|
-
if (undefined !== e.touches && e.touches.length)
|
|
23
|
-
x = e.touches[0].pageX;
|
|
24
|
-
}
|
|
25
|
-
// istanbul ignore if
|
|
26
|
-
if (undefined === x)
|
|
27
|
-
return hsv;
|
|
28
|
-
let y = 0;
|
|
29
|
-
if ("pageY" in e) {
|
|
30
|
-
y = e.pageY;
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
// istanbul ignore next
|
|
34
|
-
if (undefined !== e.touches && e.touches.length)
|
|
35
|
-
y = e.touches[0].pageY;
|
|
36
|
-
}
|
|
37
|
-
// istanbul ignore if
|
|
38
|
-
if (undefined === y)
|
|
39
|
-
return hsv;
|
|
40
|
-
let left = x - (containerLeft + window.scrollX);
|
|
41
|
-
let top = y - (containerTop + window.scrollY);
|
|
42
|
-
// istanbul ignore next
|
|
43
|
-
if (left < 0) {
|
|
44
|
-
left = 0;
|
|
45
|
-
}
|
|
46
|
-
else if (left > containerWidth) {
|
|
47
|
-
left = containerWidth;
|
|
48
|
-
}
|
|
49
|
-
else if (top < 0) {
|
|
50
|
-
top = 0;
|
|
51
|
-
}
|
|
52
|
-
else if (top > containerHeight) {
|
|
53
|
-
top = containerHeight;
|
|
54
|
-
}
|
|
55
|
-
let saturation = Math.round((left * 100) / containerWidth);
|
|
56
|
-
let value = Math.round(-((top * 100) / containerHeight) + 100);
|
|
57
|
-
// istanbul ignore if
|
|
58
|
-
if (saturation < 0)
|
|
59
|
-
saturation = 0;
|
|
60
|
-
// istanbul ignore if
|
|
61
|
-
if (saturation > 100)
|
|
62
|
-
saturation = 100;
|
|
63
|
-
// istanbul ignore if
|
|
64
|
-
if (value < 0)
|
|
65
|
-
value = 0;
|
|
66
|
-
// istanbul ignore if
|
|
67
|
-
if (value > 100)
|
|
68
|
-
value = 100;
|
|
69
|
-
return hsv.clone(hsv.h, saturation, value);
|
|
70
|
-
}
|
|
71
|
-
/** SaturationPicker component used to set the saturation value.
|
|
72
|
-
* @beta
|
|
73
|
-
*/
|
|
74
|
-
export function SaturationPicker({ onSaturationChange, hsv, className, style }) {
|
|
75
|
-
const container = React.useRef(null);
|
|
76
|
-
const [saturationLabel] = React.useState(() => UiIModelComponents.translate("color.saturation"));
|
|
77
|
-
const isDragging = React.useRef(false);
|
|
78
|
-
const onChange = React.useCallback((e) => {
|
|
79
|
-
// istanbul ignore else
|
|
80
|
-
if (container.current) {
|
|
81
|
-
const newHsvColor = calculateChange(e, hsv, container.current);
|
|
82
|
-
// istanbul ignore else
|
|
83
|
-
if (newHsvColor) {
|
|
84
|
-
// istanbul ignore else
|
|
85
|
-
if (onSaturationChange)
|
|
86
|
-
onSaturationChange(newHsvColor);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
}, [hsv, onSaturationChange]);
|
|
90
|
-
const onDragging = React.useCallback((e) => {
|
|
91
|
-
// istanbul ignore else
|
|
92
|
-
if (isDragging.current) {
|
|
93
|
-
onChange(e);
|
|
94
|
-
}
|
|
95
|
-
}, [onChange]);
|
|
96
|
-
const onMouseUp = React.useCallback(() => {
|
|
97
|
-
// istanbul ignore else
|
|
98
|
-
if (isDragging.current) {
|
|
99
|
-
isDragging.current = false;
|
|
100
|
-
}
|
|
101
|
-
}, []);
|
|
102
|
-
const onTouchEnd = React.useCallback((event) => {
|
|
103
|
-
// istanbul ignore else
|
|
104
|
-
if (isDragging.current) {
|
|
105
|
-
onChange(event);
|
|
106
|
-
isDragging.current = false;
|
|
107
|
-
}
|
|
108
|
-
}, [onChange]);
|
|
109
|
-
const onMouseDown = React.useCallback((e) => {
|
|
110
|
-
// istanbul ignore else
|
|
111
|
-
if (e.target !== e.currentTarget) {
|
|
112
|
-
isDragging.current = true;
|
|
113
|
-
document.addEventListener("mouseup", onMouseUp, { capture: true, once: true });
|
|
114
|
-
}
|
|
115
|
-
onChange(e);
|
|
116
|
-
// istanbul ignore else
|
|
117
|
-
if (container.current)
|
|
118
|
-
container.current.focus();
|
|
119
|
-
e.preventDefault();
|
|
120
|
-
}, [onChange, onMouseUp]);
|
|
121
|
-
const onTouchStart = React.useCallback((e) => {
|
|
122
|
-
// istanbul ignore else
|
|
123
|
-
if (e.target !== e.currentTarget)
|
|
124
|
-
isDragging.current = true;
|
|
125
|
-
onChange(e);
|
|
126
|
-
// istanbul ignore else
|
|
127
|
-
if (container.current)
|
|
128
|
-
container.current.focus();
|
|
129
|
-
}, [onChange]);
|
|
130
|
-
const onKeyDown = React.useCallback((evt) => {
|
|
131
|
-
const h = hsv.h;
|
|
132
|
-
let { s, v } = { ...hsv };
|
|
133
|
-
if (evt.key === SpecialKey.ArrowLeft) {
|
|
134
|
-
s -= (evt.ctrlKey ? 10 : 1);
|
|
135
|
-
}
|
|
136
|
-
else if (evt.key === SpecialKey.ArrowDown) {
|
|
137
|
-
v -= (evt.ctrlKey ? 10 : 1);
|
|
138
|
-
}
|
|
139
|
-
else if (evt.key === SpecialKey.ArrowRight) {
|
|
140
|
-
s += (evt.ctrlKey ? 10 : 1);
|
|
141
|
-
}
|
|
142
|
-
else if (evt.key === SpecialKey.ArrowUp) {
|
|
143
|
-
v += (evt.ctrlKey ? 10 : 1);
|
|
144
|
-
}
|
|
145
|
-
else if (evt.key === SpecialKey.PageDown) {
|
|
146
|
-
v = 0;
|
|
147
|
-
}
|
|
148
|
-
else if (evt.key === SpecialKey.PageUp) {
|
|
149
|
-
v = 100;
|
|
150
|
-
}
|
|
151
|
-
else if (evt.key === SpecialKey.Home) {
|
|
152
|
-
s = 0;
|
|
153
|
-
}
|
|
154
|
-
else {
|
|
155
|
-
// istanbul ignore else
|
|
156
|
-
if (evt.key === SpecialKey.End) {
|
|
157
|
-
s = 100;
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
// istanbul ignore if
|
|
161
|
-
if (s < 0)
|
|
162
|
-
s = 0;
|
|
163
|
-
// istanbul ignore if
|
|
164
|
-
if (s > 100)
|
|
165
|
-
s = 100;
|
|
166
|
-
// istanbul ignore if
|
|
167
|
-
if (v < 0)
|
|
168
|
-
v = 0;
|
|
169
|
-
// istanbul ignore if
|
|
170
|
-
if (v > 100)
|
|
171
|
-
v = 100;
|
|
172
|
-
const newColor = new HSVColor(h, s, v);
|
|
173
|
-
// istanbul ignore else
|
|
174
|
-
if (onSaturationChange)
|
|
175
|
-
onSaturationChange(newColor);
|
|
176
|
-
evt.preventDefault();
|
|
177
|
-
}, [hsv, onSaturationChange]);
|
|
178
|
-
const pointerStyle = React.useMemo(() => ({
|
|
179
|
-
left: `${hsv.s}%`,
|
|
180
|
-
top: `${-(hsv.v) + 100}%`,
|
|
181
|
-
backgroundColor: `${ColorDef.fromHSV(hsv).toRgbString()}`,
|
|
182
|
-
}), [hsv]);
|
|
183
|
-
const colorStyle = React.useMemo(() => ({ backgroundColor: `hsl(${hsv.h} ,100%, 50%)` }), [hsv]);
|
|
184
|
-
return (React.createElement("div", { className: classnames("components-saturation-container", className), style: style, "data-testid": "saturation-container" },
|
|
185
|
-
React.createElement("div", { "data-testid": "saturation-region", role: "slider", "aria-label": saturationLabel, "aria-valuenow": hsv.s, style: colorStyle, className: "components-saturation-region", ref: container, onMouseDown: onMouseDown, onMouseMove: onDragging, onTouchMove: onDragging, onTouchStart: onTouchStart, onTouchEnd: onTouchEnd, tabIndex: 0, onKeyDown: onKeyDown },
|
|
186
|
-
React.createElement("div", { style: pointerStyle, className: "components-saturation-pointer", "data-testid": "saturation-pointer" }))));
|
|
187
|
-
}
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
/** @packageDocumentation
|
|
6
|
+
* @module Color
|
|
7
|
+
*/
|
|
8
|
+
import "./SaturationPicker.scss";
|
|
9
|
+
import classnames from "classnames";
|
|
10
|
+
import * as React from "react";
|
|
11
|
+
import { ColorDef, HSVColor } from "@itwin/core-common";
|
|
12
|
+
import { SpecialKey } from "@itwin/appui-abstract";
|
|
13
|
+
import { UiIModelComponents } from "../UiIModelComponents";
|
|
14
|
+
function calculateChange(e, hsv, container) {
|
|
15
|
+
const { width: containerWidth, height: containerHeight, top: containerTop, left: containerLeft } = container.getBoundingClientRect();
|
|
16
|
+
let x;
|
|
17
|
+
if ("pageX" in e) {
|
|
18
|
+
x = e.pageX;
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
// istanbul ignore next
|
|
22
|
+
if (undefined !== e.touches && e.touches.length)
|
|
23
|
+
x = e.touches[0].pageX;
|
|
24
|
+
}
|
|
25
|
+
// istanbul ignore if
|
|
26
|
+
if (undefined === x)
|
|
27
|
+
return hsv;
|
|
28
|
+
let y = 0;
|
|
29
|
+
if ("pageY" in e) {
|
|
30
|
+
y = e.pageY;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
// istanbul ignore next
|
|
34
|
+
if (undefined !== e.touches && e.touches.length)
|
|
35
|
+
y = e.touches[0].pageY;
|
|
36
|
+
}
|
|
37
|
+
// istanbul ignore if
|
|
38
|
+
if (undefined === y)
|
|
39
|
+
return hsv;
|
|
40
|
+
let left = x - (containerLeft + window.scrollX);
|
|
41
|
+
let top = y - (containerTop + window.scrollY);
|
|
42
|
+
// istanbul ignore next
|
|
43
|
+
if (left < 0) {
|
|
44
|
+
left = 0;
|
|
45
|
+
}
|
|
46
|
+
else if (left > containerWidth) {
|
|
47
|
+
left = containerWidth;
|
|
48
|
+
}
|
|
49
|
+
else if (top < 0) {
|
|
50
|
+
top = 0;
|
|
51
|
+
}
|
|
52
|
+
else if (top > containerHeight) {
|
|
53
|
+
top = containerHeight;
|
|
54
|
+
}
|
|
55
|
+
let saturation = Math.round((left * 100) / containerWidth);
|
|
56
|
+
let value = Math.round(-((top * 100) / containerHeight) + 100);
|
|
57
|
+
// istanbul ignore if
|
|
58
|
+
if (saturation < 0)
|
|
59
|
+
saturation = 0;
|
|
60
|
+
// istanbul ignore if
|
|
61
|
+
if (saturation > 100)
|
|
62
|
+
saturation = 100;
|
|
63
|
+
// istanbul ignore if
|
|
64
|
+
if (value < 0)
|
|
65
|
+
value = 0;
|
|
66
|
+
// istanbul ignore if
|
|
67
|
+
if (value > 100)
|
|
68
|
+
value = 100;
|
|
69
|
+
return hsv.clone(hsv.h, saturation, value);
|
|
70
|
+
}
|
|
71
|
+
/** SaturationPicker component used to set the saturation value.
|
|
72
|
+
* @beta
|
|
73
|
+
*/
|
|
74
|
+
export function SaturationPicker({ onSaturationChange, hsv, className, style }) {
|
|
75
|
+
const container = React.useRef(null);
|
|
76
|
+
const [saturationLabel] = React.useState(() => UiIModelComponents.translate("color.saturation"));
|
|
77
|
+
const isDragging = React.useRef(false);
|
|
78
|
+
const onChange = React.useCallback((e) => {
|
|
79
|
+
// istanbul ignore else
|
|
80
|
+
if (container.current) {
|
|
81
|
+
const newHsvColor = calculateChange(e, hsv, container.current);
|
|
82
|
+
// istanbul ignore else
|
|
83
|
+
if (newHsvColor) {
|
|
84
|
+
// istanbul ignore else
|
|
85
|
+
if (onSaturationChange)
|
|
86
|
+
onSaturationChange(newHsvColor);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}, [hsv, onSaturationChange]);
|
|
90
|
+
const onDragging = React.useCallback((e) => {
|
|
91
|
+
// istanbul ignore else
|
|
92
|
+
if (isDragging.current) {
|
|
93
|
+
onChange(e);
|
|
94
|
+
}
|
|
95
|
+
}, [onChange]);
|
|
96
|
+
const onMouseUp = React.useCallback(() => {
|
|
97
|
+
// istanbul ignore else
|
|
98
|
+
if (isDragging.current) {
|
|
99
|
+
isDragging.current = false;
|
|
100
|
+
}
|
|
101
|
+
}, []);
|
|
102
|
+
const onTouchEnd = React.useCallback((event) => {
|
|
103
|
+
// istanbul ignore else
|
|
104
|
+
if (isDragging.current) {
|
|
105
|
+
onChange(event);
|
|
106
|
+
isDragging.current = false;
|
|
107
|
+
}
|
|
108
|
+
}, [onChange]);
|
|
109
|
+
const onMouseDown = React.useCallback((e) => {
|
|
110
|
+
// istanbul ignore else
|
|
111
|
+
if (e.target !== e.currentTarget) {
|
|
112
|
+
isDragging.current = true;
|
|
113
|
+
document.addEventListener("mouseup", onMouseUp, { capture: true, once: true });
|
|
114
|
+
}
|
|
115
|
+
onChange(e);
|
|
116
|
+
// istanbul ignore else
|
|
117
|
+
if (container.current)
|
|
118
|
+
container.current.focus();
|
|
119
|
+
e.preventDefault();
|
|
120
|
+
}, [onChange, onMouseUp]);
|
|
121
|
+
const onTouchStart = React.useCallback((e) => {
|
|
122
|
+
// istanbul ignore else
|
|
123
|
+
if (e.target !== e.currentTarget)
|
|
124
|
+
isDragging.current = true;
|
|
125
|
+
onChange(e);
|
|
126
|
+
// istanbul ignore else
|
|
127
|
+
if (container.current)
|
|
128
|
+
container.current.focus();
|
|
129
|
+
}, [onChange]);
|
|
130
|
+
const onKeyDown = React.useCallback((evt) => {
|
|
131
|
+
const h = hsv.h;
|
|
132
|
+
let { s, v } = { ...hsv };
|
|
133
|
+
if (evt.key === SpecialKey.ArrowLeft) {
|
|
134
|
+
s -= (evt.ctrlKey ? 10 : 1);
|
|
135
|
+
}
|
|
136
|
+
else if (evt.key === SpecialKey.ArrowDown) {
|
|
137
|
+
v -= (evt.ctrlKey ? 10 : 1);
|
|
138
|
+
}
|
|
139
|
+
else if (evt.key === SpecialKey.ArrowRight) {
|
|
140
|
+
s += (evt.ctrlKey ? 10 : 1);
|
|
141
|
+
}
|
|
142
|
+
else if (evt.key === SpecialKey.ArrowUp) {
|
|
143
|
+
v += (evt.ctrlKey ? 10 : 1);
|
|
144
|
+
}
|
|
145
|
+
else if (evt.key === SpecialKey.PageDown) {
|
|
146
|
+
v = 0;
|
|
147
|
+
}
|
|
148
|
+
else if (evt.key === SpecialKey.PageUp) {
|
|
149
|
+
v = 100;
|
|
150
|
+
}
|
|
151
|
+
else if (evt.key === SpecialKey.Home) {
|
|
152
|
+
s = 0;
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
// istanbul ignore else
|
|
156
|
+
if (evt.key === SpecialKey.End) {
|
|
157
|
+
s = 100;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
// istanbul ignore if
|
|
161
|
+
if (s < 0)
|
|
162
|
+
s = 0;
|
|
163
|
+
// istanbul ignore if
|
|
164
|
+
if (s > 100)
|
|
165
|
+
s = 100;
|
|
166
|
+
// istanbul ignore if
|
|
167
|
+
if (v < 0)
|
|
168
|
+
v = 0;
|
|
169
|
+
// istanbul ignore if
|
|
170
|
+
if (v > 100)
|
|
171
|
+
v = 100;
|
|
172
|
+
const newColor = new HSVColor(h, s, v);
|
|
173
|
+
// istanbul ignore else
|
|
174
|
+
if (onSaturationChange)
|
|
175
|
+
onSaturationChange(newColor);
|
|
176
|
+
evt.preventDefault();
|
|
177
|
+
}, [hsv, onSaturationChange]);
|
|
178
|
+
const pointerStyle = React.useMemo(() => ({
|
|
179
|
+
left: `${hsv.s}%`,
|
|
180
|
+
top: `${-(hsv.v) + 100}%`,
|
|
181
|
+
backgroundColor: `${ColorDef.fromHSV(hsv).toRgbString()}`,
|
|
182
|
+
}), [hsv]);
|
|
183
|
+
const colorStyle = React.useMemo(() => ({ backgroundColor: `hsl(${hsv.h} ,100%, 50%)` }), [hsv]);
|
|
184
|
+
return (React.createElement("div", { className: classnames("components-saturation-container", className), style: style, "data-testid": "saturation-container" },
|
|
185
|
+
React.createElement("div", { "data-testid": "saturation-region", role: "slider", "aria-label": saturationLabel, "aria-valuenow": hsv.s, style: colorStyle, className: "components-saturation-region", ref: container, onMouseDown: onMouseDown, onMouseMove: onDragging, onTouchMove: onDragging, onTouchStart: onTouchStart, onTouchEnd: onTouchEnd, tabIndex: 0, onKeyDown: onKeyDown },
|
|
186
|
+
React.createElement("div", { style: pointerStyle, className: "components-saturation-pointer", "data-testid": "saturation-pointer" }))));
|
|
187
|
+
}
|
|
188
188
|
//# sourceMappingURL=SaturationPicker.js.map
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
/** @packageDocumentation
|
|
2
|
-
* @module Color
|
|
3
|
-
*/
|
|
4
|
-
import "./Swatch.scss";
|
|
5
|
-
import * as React from "react";
|
|
6
|
-
import { ColorDef } from "@itwin/core-common";
|
|
7
|
-
import { CommonProps } from "@itwin/core-react";
|
|
8
|
-
/** Properties for the [[ColorSwatch]] React component
|
|
9
|
-
* @beta
|
|
10
|
-
*/
|
|
11
|
-
export interface ColorSwatchProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, CommonProps {
|
|
12
|
-
/** color specification */
|
|
13
|
-
colorDef: ColorDef;
|
|
14
|
-
/** function to run when user selects color swatch */
|
|
15
|
-
onColorPick?: ((color: ColorDef, e: React.MouseEvent) => void) | undefined;
|
|
16
|
-
/** Show swatches as squares unless round is set to true */
|
|
17
|
-
round?: boolean;
|
|
18
|
-
}
|
|
19
|
-
/** ColorSwatch Functional component displays a color swatch in a button
|
|
20
|
-
* @beta
|
|
21
|
-
*/
|
|
22
|
-
export declare function ColorSwatch(props: ColorSwatchProps): JSX.Element;
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Color
|
|
3
|
+
*/
|
|
4
|
+
import "./Swatch.scss";
|
|
5
|
+
import * as React from "react";
|
|
6
|
+
import { ColorDef } from "@itwin/core-common";
|
|
7
|
+
import { CommonProps } from "@itwin/core-react";
|
|
8
|
+
/** Properties for the [[ColorSwatch]] React component
|
|
9
|
+
* @beta
|
|
10
|
+
*/
|
|
11
|
+
export interface ColorSwatchProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, CommonProps {
|
|
12
|
+
/** color specification */
|
|
13
|
+
colorDef: ColorDef;
|
|
14
|
+
/** function to run when user selects color swatch */
|
|
15
|
+
onColorPick?: ((color: ColorDef, e: React.MouseEvent) => void) | undefined;
|
|
16
|
+
/** Show swatches as squares unless round is set to true */
|
|
17
|
+
round?: boolean;
|
|
18
|
+
}
|
|
19
|
+
/** ColorSwatch Functional component displays a color swatch in a button
|
|
20
|
+
* @beta
|
|
21
|
+
*/
|
|
22
|
+
export declare function ColorSwatch(props: ColorSwatchProps): JSX.Element;
|
|
23
23
|
//# sourceMappingURL=Swatch.d.ts.map
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
/** @packageDocumentation
|
|
6
|
-
* @module Color
|
|
7
|
-
*/
|
|
8
|
-
import "./Swatch.scss";
|
|
9
|
-
import classnames from "classnames";
|
|
10
|
-
import * as React from "react";
|
|
11
|
-
import { getCSSColorFromDef } from "./getCSSColorFromDef";
|
|
12
|
-
/** ColorSwatch Functional component displays a color swatch in a button
|
|
13
|
-
* @beta
|
|
14
|
-
*/
|
|
15
|
-
export function ColorSwatch(props) {
|
|
16
|
-
const rgbaString = getCSSColorFromDef(props.colorDef);
|
|
17
|
-
const colorStyle = {
|
|
18
|
-
backgroundColor: rgbaString,
|
|
19
|
-
...props.style,
|
|
20
|
-
};
|
|
21
|
-
const handleClick = (e) => {
|
|
22
|
-
// istanbul ignore else
|
|
23
|
-
if (props && props.onColorPick)
|
|
24
|
-
props.onColorPick(props.colorDef, e);
|
|
25
|
-
};
|
|
26
|
-
const classes = classnames("components-color-swatch", props.round && "round", props.className);
|
|
27
|
-
const {
|
|
28
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
29
|
-
onColorPick, colorDef, round, // do not pass on color swatch specific props
|
|
30
|
-
// eslint-disable-next-line comma-dangle
|
|
31
|
-
...otherProps // pass-through props
|
|
32
|
-
} = props;
|
|
33
|
-
return React.createElement("button", { ...otherProps, style: colorStyle, className: classes, onClick: handleClick });
|
|
34
|
-
}
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
/** @packageDocumentation
|
|
6
|
+
* @module Color
|
|
7
|
+
*/
|
|
8
|
+
import "./Swatch.scss";
|
|
9
|
+
import classnames from "classnames";
|
|
10
|
+
import * as React from "react";
|
|
11
|
+
import { getCSSColorFromDef } from "./getCSSColorFromDef";
|
|
12
|
+
/** ColorSwatch Functional component displays a color swatch in a button
|
|
13
|
+
* @beta
|
|
14
|
+
*/
|
|
15
|
+
export function ColorSwatch(props) {
|
|
16
|
+
const rgbaString = getCSSColorFromDef(props.colorDef);
|
|
17
|
+
const colorStyle = {
|
|
18
|
+
backgroundColor: rgbaString,
|
|
19
|
+
...props.style,
|
|
20
|
+
};
|
|
21
|
+
const handleClick = (e) => {
|
|
22
|
+
// istanbul ignore else
|
|
23
|
+
if (props && props.onColorPick)
|
|
24
|
+
props.onColorPick(props.colorDef, e);
|
|
25
|
+
};
|
|
26
|
+
const classes = classnames("components-color-swatch", props.round && "round", props.className);
|
|
27
|
+
const {
|
|
28
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
29
|
+
onColorPick, colorDef, round, // do not pass on color swatch specific props
|
|
30
|
+
// eslint-disable-next-line comma-dangle
|
|
31
|
+
...otherProps // pass-through props
|
|
32
|
+
} = props;
|
|
33
|
+
return React.createElement("button", { ...otherProps, style: colorStyle, className: classes, onClick: handleClick });
|
|
34
|
+
}
|
|
35
35
|
//# sourceMappingURL=Swatch.js.map
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
3
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
4
|
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
@import "~@itwin/core-react/lib/cjs/core-react/style/themecolors";
|
|
6
5
|
|
|
7
6
|
.components-color-swatch {
|
|
8
7
|
font-size: var(--iui-font-size-1);
|
|
@@ -11,7 +10,7 @@
|
|
|
11
10
|
border-width: 1px;
|
|
12
11
|
border-radius: var(--iui-border-radius-1);
|
|
13
12
|
border-style: solid;
|
|
14
|
-
border-color:
|
|
13
|
+
border-color: var(--iui-color-border-subtle);
|
|
15
14
|
|
|
16
15
|
&.round {
|
|
17
16
|
border-radius: 50%;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/** @packageDocumentation
|
|
2
|
-
* @module Color
|
|
3
|
-
*/
|
|
4
|
-
import { ColorDef } from "@itwin/core-common";
|
|
5
|
-
/** @internal */
|
|
6
|
-
export declare function getCSSColorFromDef(colorDef: ColorDef): string;
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Color
|
|
3
|
+
*/
|
|
4
|
+
import { ColorDef } from "@itwin/core-common";
|
|
5
|
+
/** @internal */
|
|
6
|
+
export declare function getCSSColorFromDef(colorDef: ColorDef): string;
|
|
7
7
|
//# sourceMappingURL=getCSSColorFromDef.d.ts.map
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
/** @packageDocumentation
|
|
6
|
-
* @module Color
|
|
7
|
-
*/
|
|
8
|
-
/** @internal */
|
|
9
|
-
export function getCSSColorFromDef(colorDef) {
|
|
10
|
-
const { b, g, r, t } = colorDef.colors;
|
|
11
|
-
let rgbaString = "";
|
|
12
|
-
if (t === 0)
|
|
13
|
-
rgbaString = `rgb(${r},${g},${b})`;
|
|
14
|
-
else {
|
|
15
|
-
const alpha = ((255 - t) / 255).toFixed(2);
|
|
16
|
-
rgbaString = `rgba(${r},${g},${b},${alpha})`;
|
|
17
|
-
}
|
|
18
|
-
return rgbaString;
|
|
19
|
-
}
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
/** @packageDocumentation
|
|
6
|
+
* @module Color
|
|
7
|
+
*/
|
|
8
|
+
/** @internal */
|
|
9
|
+
export function getCSSColorFromDef(colorDef) {
|
|
10
|
+
const { b, g, r, t } = colorDef.colors;
|
|
11
|
+
let rgbaString = "";
|
|
12
|
+
if (t === 0)
|
|
13
|
+
rgbaString = `rgb(${r},${g},${b})`;
|
|
14
|
+
else {
|
|
15
|
+
const alpha = ((255 - t) / 255).toFixed(2);
|
|
16
|
+
rgbaString = `rgba(${r},${g},${b},${alpha})`;
|
|
17
|
+
}
|
|
18
|
+
return rgbaString;
|
|
19
|
+
}
|
|
20
20
|
//# sourceMappingURL=getCSSColorFromDef.js.map
|
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
/** @packageDocumentation
|
|
2
|
-
* @module PropertyEditors
|
|
3
|
-
*/
|
|
4
|
-
import "./ColorEditor.scss";
|
|
5
|
-
import * as React from "react";
|
|
6
|
-
import { ColorDef } from "@itwin/core-common";
|
|
7
|
-
import { PropertyValue } from "@itwin/appui-abstract";
|
|
8
|
-
import { PropertyEditorBase, PropertyEditorProps, TypeEditor } from "@itwin/components-react";
|
|
9
|
-
/** @internal */
|
|
10
|
-
interface ColorEditorState {
|
|
11
|
-
colorValue: number;
|
|
12
|
-
readonly: boolean;
|
|
13
|
-
isDisabled?: boolean;
|
|
14
|
-
numColumns: number;
|
|
15
|
-
availableColors: ColorDef[];
|
|
16
|
-
}
|
|
17
|
-
/** ColorEditor React component that is a property editor with text input
|
|
18
|
-
* @beta
|
|
19
|
-
*/
|
|
20
|
-
export declare class ColorEditor extends React.PureComponent<PropertyEditorProps, ColorEditorState> implements TypeEditor {
|
|
21
|
-
private _buttonElement;
|
|
22
|
-
/** @internal */
|
|
23
|
-
readonly state: Readonly<ColorEditorState>;
|
|
24
|
-
getPropertyValue(): Promise<PropertyValue | undefined>;
|
|
25
|
-
get htmlElement(): HTMLElement | null;
|
|
26
|
-
get hasFocus(): boolean;
|
|
27
|
-
private setFocus;
|
|
28
|
-
private _onColorPick;
|
|
29
|
-
/** @internal */
|
|
30
|
-
componentDidMount(): void;
|
|
31
|
-
/** @internal */
|
|
32
|
-
componentDidUpdate(prevProps: PropertyEditorProps): void;
|
|
33
|
-
private setStateFromProps;
|
|
34
|
-
/** @internal */
|
|
35
|
-
render(): JSX.Element;
|
|
36
|
-
}
|
|
37
|
-
/** Color Property Editor registered for the "number" type name and "color-picker" editor name.
|
|
38
|
-
* It uses the [[ColorEditor]] React component.
|
|
39
|
-
* @beta
|
|
40
|
-
*/
|
|
41
|
-
export declare class ColorPropertyEditor extends PropertyEditorBase {
|
|
42
|
-
get reactNode(): React.ReactNode;
|
|
43
|
-
}
|
|
44
|
-
export {};
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module PropertyEditors
|
|
3
|
+
*/
|
|
4
|
+
import "./ColorEditor.scss";
|
|
5
|
+
import * as React from "react";
|
|
6
|
+
import { ColorDef } from "@itwin/core-common";
|
|
7
|
+
import { PropertyValue } from "@itwin/appui-abstract";
|
|
8
|
+
import { PropertyEditorBase, PropertyEditorProps, TypeEditor } from "@itwin/components-react";
|
|
9
|
+
/** @internal */
|
|
10
|
+
interface ColorEditorState {
|
|
11
|
+
colorValue: number;
|
|
12
|
+
readonly: boolean;
|
|
13
|
+
isDisabled?: boolean;
|
|
14
|
+
numColumns: number;
|
|
15
|
+
availableColors: ColorDef[];
|
|
16
|
+
}
|
|
17
|
+
/** ColorEditor React component that is a property editor with text input
|
|
18
|
+
* @beta
|
|
19
|
+
*/
|
|
20
|
+
export declare class ColorEditor extends React.PureComponent<PropertyEditorProps, ColorEditorState> implements TypeEditor {
|
|
21
|
+
private _buttonElement;
|
|
22
|
+
/** @internal */
|
|
23
|
+
readonly state: Readonly<ColorEditorState>;
|
|
24
|
+
getPropertyValue(): Promise<PropertyValue | undefined>;
|
|
25
|
+
get htmlElement(): HTMLElement | null;
|
|
26
|
+
get hasFocus(): boolean;
|
|
27
|
+
private setFocus;
|
|
28
|
+
private _onColorPick;
|
|
29
|
+
/** @internal */
|
|
30
|
+
componentDidMount(): void;
|
|
31
|
+
/** @internal */
|
|
32
|
+
componentDidUpdate(prevProps: PropertyEditorProps): void;
|
|
33
|
+
private setStateFromProps;
|
|
34
|
+
/** @internal */
|
|
35
|
+
render(): JSX.Element;
|
|
36
|
+
}
|
|
37
|
+
/** Color Property Editor registered for the "number" type name and "color-picker" editor name.
|
|
38
|
+
* It uses the [[ColorEditor]] React component.
|
|
39
|
+
* @beta
|
|
40
|
+
*/
|
|
41
|
+
export declare class ColorPropertyEditor extends PropertyEditorBase {
|
|
42
|
+
get reactNode(): React.ReactNode;
|
|
43
|
+
}
|
|
44
|
+
export {};
|
|
45
45
|
//# sourceMappingURL=ColorEditor.d.ts.map
|