@itwin/imodel-components-react 4.0.0-dev.12 → 4.0.0-dev.14
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 +113 -1
- package/README.md +2 -2
- package/lib/cjs/imodel-components-react/UiIModelComponents.d.ts +28 -28
- package/lib/cjs/imodel-components-react/UiIModelComponents.js +75 -77
- 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.js +112 -108
- package/lib/cjs/imodel-components-react/color/ColorPickerButton.js.map +1 -1
- 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/ColorPickerPanel.d.ts +21 -21
- package/lib/cjs/imodel-components-react/color/ColorPickerPanel.js +149 -145
- package/lib/cjs/imodel-components-react/color/ColorPickerPanel.js.map +1 -1
- package/lib/cjs/imodel-components-react/color/ColorPickerPopup.d.ts +44 -44
- package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js +143 -139
- package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js.map +1 -1
- 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/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/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/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 -268
- package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
- 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/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 +1 -2
- 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 +175 -174
- package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
- package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js +650 -638
- package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
- package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
- package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js +657 -653
- package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
- 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 +0 -4
- package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
- package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js +56 -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.js +88 -84
- 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 +89 -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 +112 -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 +133 -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 +187 -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 +98 -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/PlayerButton.d.ts +33 -33
- package/lib/cjs/imodel-components-react/timeline/PlayerButton.js +99 -95
- package/lib/cjs/imodel-components-react/timeline/PlayerButton.js.map +1 -1
- 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/SolarTimeline.d.ts +77 -77
- package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js +432 -428
- package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js.map +1 -1
- 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 -365
- package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
- package/lib/cjs/imodel-components-react/timeline/TimelineComponent.scss +17 -0
- package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts +174 -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/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 +276 -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 +82 -82
- package/lib/cjs/imodel-components-react.js +105 -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.js +72 -73
- 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/ColorPickerButton.d.ts +37 -37
- package/lib/esm/imodel-components-react/color/ColorPickerButton.js +83 -83
- package/lib/esm/imodel-components-react/color/ColorPickerButton.js.map +1 -1
- 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/ColorPickerPanel.d.ts +21 -21
- package/lib/esm/imodel-components-react/color/ColorPickerPanel.js +122 -122
- package/lib/esm/imodel-components-react/color/ColorPickerPanel.js.map +1 -1
- package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts +44 -44
- package/lib/esm/imodel-components-react/color/ColorPickerPopup.js +114 -114
- 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/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/WeightEditor.d.ts +47 -47
- package/lib/esm/imodel-components-react/editors/WeightEditor.js +133 -133
- 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 -243
- package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
- 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/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 +1 -2
- 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 +175 -174
- package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
- package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js +620 -610
- package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
- package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
- package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js +627 -626
- package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
- 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.js.map +1 -1
- package/lib/esm/imodel-components-react/quantityformat/FormatPanel.scss +0 -4
- package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js +29 -30
- package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -1
- package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts +18 -18
- package/lib/esm/imodel-components-react/quantityformat/FormatSample.js +61 -61
- 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 +62 -63
- package/lib/esm/imodel-components-react/quantityformat/FormatType.js.map +1 -1
- package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +17 -17
- package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js +82 -83
- package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js.map +1 -1
- package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts +19 -19
- package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js +106 -110
- package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js.map +1 -1
- package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +21 -21
- package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js +157 -158
- package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -1
- 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 +68 -69
- package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -1
- 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/PlayerButton.d.ts +33 -33
- package/lib/esm/imodel-components-react/timeline/PlayerButton.js +68 -68
- 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/SolarTimeline.d.ts +77 -77
- package/lib/esm/imodel-components-react/timeline/SolarTimeline.js +402 -402
- 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 -339
- package/lib/esm/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
- package/lib/esm/imodel-components-react/timeline/TimelineComponent.scss +17 -0
- package/lib/esm/imodel-components-react/timeline/interfaces.d.ts +174 -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/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 +249 -251
- package/lib/esm/imodel-components-react/viewport/ViewportComponent.js.map +1 -1
- 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 +82 -82
- package/lib/esm/imodel-components-react.js +87 -87
- package/package.json +26 -24
|
@@ -1,165 +1,165 @@
|
|
|
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
|
-
import "./Scrubber.scss";
|
|
6
|
-
import * as React from "react";
|
|
7
|
-
import { Slider } from "@itwin/itwinui-react";
|
|
8
|
-
import { useEventListener } from "@itwin/core-react";
|
|
9
|
-
import { toDateString, toTimeString } from "@itwin/components-react";
|
|
10
|
-
/**
|
|
11
|
-
* @internal
|
|
12
|
-
*/
|
|
13
|
-
export function getPercentageOfRectangle(rect, pointer) {
|
|
14
|
-
const position = Math.min(rect.right, Math.max(rect.left, pointer));
|
|
15
|
-
return (position - rect.left) / rect.width;
|
|
16
|
-
}
|
|
17
|
-
// istanbul ignore next - WIP
|
|
18
|
-
const formatDuration = (value) => {
|
|
19
|
-
const addZero = (i) => {
|
|
20
|
-
return (i < 10) ? `0${i}` : i;
|
|
21
|
-
};
|
|
22
|
-
const date = new Date(value);
|
|
23
|
-
const minutes = date.getUTCMinutes();
|
|
24
|
-
const seconds = date.getUTCSeconds();
|
|
25
|
-
return `${addZero(minutes)}:${addZero(seconds)}`;
|
|
26
|
-
};
|
|
27
|
-
const formatDate = (startDate, endDate, fraction, timeZoneOffset) => {
|
|
28
|
-
const delta = (endDate.getTime() - startDate.getTime()) * fraction;
|
|
29
|
-
const date = new Date(startDate.getTime() + delta);
|
|
30
|
-
return toDateString(date, timeZoneOffset);
|
|
31
|
-
};
|
|
32
|
-
// istanbul ignore next - WIP
|
|
33
|
-
const formatTime = (startDate, endDate, fraction, timeZoneOffset) => {
|
|
34
|
-
const delta = (endDate.getTime() - startDate.getTime()) * fraction;
|
|
35
|
-
const date = new Date(startDate.getTime() + delta);
|
|
36
|
-
return ` ${toTimeString(date, timeZoneOffset)}`;
|
|
37
|
-
};
|
|
38
|
-
function generateToolTipText(showTime, percent, min, max, startDate, endDate, timeZoneOffset = 0) {
|
|
39
|
-
if (startDate && endDate)
|
|
40
|
-
return `${formatDate(startDate, endDate, percent, timeZoneOffset)}${showTime ? formatTime(startDate, endDate, percent, timeZoneOffset) : ""} `;
|
|
41
|
-
const val = Math.round(min + ((max - min) * percent));
|
|
42
|
-
return formatDuration(val);
|
|
43
|
-
}
|
|
44
|
-
function getPercentageFromDate(startDate, endDate, date) {
|
|
45
|
-
const newDate = date ? date : new Date();
|
|
46
|
-
const startTime = startDate.getTime();
|
|
47
|
-
const totalDuration = endDate.getTime() - startTime;
|
|
48
|
-
return (newDate.getTime() - startTime) / totalDuration;
|
|
49
|
-
}
|
|
50
|
-
function getDateMarker(dateMarkerPropsIn, startDate, endDate) {
|
|
51
|
-
const percentage = getPercentageFromDate(startDate, endDate, dateMarkerPropsIn.date);
|
|
52
|
-
const marker = dateMarkerPropsIn.dateMarker ? dateMarkerPropsIn.dateMarker : React.createElement("span", { className: "date-marker-default" });
|
|
53
|
-
return { datePercentage: percentage, dateMarker: marker };
|
|
54
|
-
}
|
|
55
|
-
function markDateInTimelineRange(dateMarkerProps, startDate, endDate) {
|
|
56
|
-
// istanbul ignore else
|
|
57
|
-
if (dateMarkerProps && startDate && endDate) {
|
|
58
|
-
const inDate = dateMarkerProps.date ? dateMarkerProps.date : new Date();
|
|
59
|
-
// istanbul ignore else
|
|
60
|
-
if (inDate.getTime() >= startDate.getTime() && inDate.getTime() <= endDate.getTime())
|
|
61
|
-
return true;
|
|
62
|
-
}
|
|
63
|
-
return false;
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* @internal
|
|
67
|
-
*/
|
|
68
|
-
export function RailMarkers({ showToolTip, percent, tooltipText, markDate }) {
|
|
69
|
-
return (React.createElement("div", { className: "components-timeline-rail-marker-container" },
|
|
70
|
-
showToolTip &&
|
|
71
|
-
React.createElement("div", { className: "components-timeline-tooltip", style: { left: `${Math.round(percent * 100)}% ` } },
|
|
72
|
-
React.createElement("span", { className: "tooltip-text" }, tooltipText)),
|
|
73
|
-
markDate &&
|
|
74
|
-
React.createElement("div", { className: "components-timeline-date-marker", "data-testid": "test-date-marker", style: { left: `${Math.round(markDate.datePercentage * 100)}% ` } }, markDate.dateMarker)));
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Custom Timeline Thumb
|
|
78
|
-
* @internal
|
|
79
|
-
*/
|
|
80
|
-
export function CustomThumb() {
|
|
81
|
-
return (React.createElement("div", { className: "scrubber-handle" },
|
|
82
|
-
React.createElement("div", null),
|
|
83
|
-
React.createElement("div", null),
|
|
84
|
-
React.createElement("div", null)));
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* @internal
|
|
88
|
-
*/
|
|
89
|
-
export function useFocusedThumb(sliderContainer) {
|
|
90
|
-
const [thumbElement, setThumbElement] = React.useState();
|
|
91
|
-
React.useLayoutEffect(() => {
|
|
92
|
-
// istanbul ignore else
|
|
93
|
-
if (sliderContainer) {
|
|
94
|
-
const element = sliderContainer.querySelector(".iui-slider-thumb");
|
|
95
|
-
if (element && thumbElement !== element) {
|
|
96
|
-
setThumbElement(element);
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
}, [sliderContainer, thumbElement]);
|
|
100
|
-
const [thumbHasFocus, setThumbHasFocus] = React.useState(false);
|
|
101
|
-
const handleThumbFocus = React.useCallback(() => {
|
|
102
|
-
setThumbHasFocus(true);
|
|
103
|
-
}, []);
|
|
104
|
-
const handleThumbBlur = React.useCallback(() => {
|
|
105
|
-
setThumbHasFocus(false);
|
|
106
|
-
}, []);
|
|
107
|
-
useEventListener("focus", handleThumbFocus, thumbElement);
|
|
108
|
-
useEventListener("blur", handleThumbBlur, thumbElement);
|
|
109
|
-
return thumbHasFocus;
|
|
110
|
-
}
|
|
111
|
-
/** Scrubber/Slider for timeline control
|
|
112
|
-
* @internal
|
|
113
|
-
*/
|
|
114
|
-
export function Scrubber(props) {
|
|
115
|
-
const { startDate, endDate, showTime, isPlaying, totalDuration, timeZoneOffset, currentDuration, className, onChange, onUpdate } = props;
|
|
116
|
-
const thumbProps = () => {
|
|
117
|
-
return {
|
|
118
|
-
className: "components-timeline-thumb",
|
|
119
|
-
children: React.createElement(CustomThumb, null),
|
|
120
|
-
};
|
|
121
|
-
};
|
|
122
|
-
const sliderRef = React.useRef(null);
|
|
123
|
-
const [sliderContainer, setSliderContainer] = React.useState();
|
|
124
|
-
const [pointerPercent, setPointerPercent] = React.useState(0);
|
|
125
|
-
React.useLayoutEffect(() => {
|
|
126
|
-
// istanbul ignore else
|
|
127
|
-
if (sliderRef.current) {
|
|
128
|
-
const container = sliderRef.current.querySelector(".iui-slider-container");
|
|
129
|
-
if (container && sliderContainer !== container) {
|
|
130
|
-
setSliderContainer(container);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
}, [sliderContainer]);
|
|
134
|
-
const tooltipProps = React.useCallback(() => {
|
|
135
|
-
return { visible: false };
|
|
136
|
-
}, []);
|
|
137
|
-
const [showRailTooltip, setShowRailTooltip] = React.useState(false);
|
|
138
|
-
// istanbul ignore next
|
|
139
|
-
const handlePointerEnter = React.useCallback(() => {
|
|
140
|
-
setShowRailTooltip(true);
|
|
141
|
-
}, []);
|
|
142
|
-
// istanbul ignore next
|
|
143
|
-
const handlePointerLeave = React.useCallback(() => {
|
|
144
|
-
setShowRailTooltip(false);
|
|
145
|
-
}, []);
|
|
146
|
-
const handlePointerMove = React.useCallback((event) => {
|
|
147
|
-
sliderContainer &&
|
|
148
|
-
setPointerPercent(getPercentageOfRectangle(sliderContainer.getBoundingClientRect(), event.clientX));
|
|
149
|
-
}, [sliderContainer]);
|
|
150
|
-
const thumbHasFocus = useFocusedThumb(sliderContainer);
|
|
151
|
-
const tickLabel = React.useMemo(() => {
|
|
152
|
-
const showTip = isPlaying || showRailTooltip || thumbHasFocus;
|
|
153
|
-
const percent = (isPlaying || thumbHasFocus) ? currentDuration / totalDuration : pointerPercent;
|
|
154
|
-
const markDateInRange = markDateInTimelineRange(props.markDate, startDate, endDate);
|
|
155
|
-
const currentDateMarker = props.markDate && markDateInRange && startDate && endDate ? getDateMarker(props.markDate, startDate, endDate) : undefined;
|
|
156
|
-
const tooltipText = generateToolTipText(!!showTime, percent, 0, totalDuration, startDate, endDate, timeZoneOffset);
|
|
157
|
-
return (React.createElement(RailMarkers, { showToolTip: showTip, percent: percent, tooltipText: tooltipText, markDate: currentDateMarker }));
|
|
158
|
-
}, [isPlaying, showRailTooltip, currentDuration, totalDuration, pointerPercent, startDate, endDate, timeZoneOffset, showTime, thumbHasFocus, props.markDate]);
|
|
159
|
-
return (React.createElement(Slider, { ref: sliderRef, className: className, step: 1, min: 0, max: totalDuration, minLabel: "", maxLabel: "", onUpdate: onUpdate, onChange: onChange, values: [currentDuration], tooltipProps: tooltipProps, thumbProps: thumbProps, tickLabels: tickLabel, railContainerProps: {
|
|
160
|
-
onPointerEnter: handlePointerEnter,
|
|
161
|
-
onPointerMove: handlePointerMove,
|
|
162
|
-
onPointerLeave: handlePointerLeave,
|
|
163
|
-
} }));
|
|
164
|
-
}
|
|
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
|
+
import "./Scrubber.scss";
|
|
6
|
+
import * as React from "react";
|
|
7
|
+
import { Slider } from "@itwin/itwinui-react";
|
|
8
|
+
import { useEventListener } from "@itwin/core-react";
|
|
9
|
+
import { toDateString, toTimeString } from "@itwin/components-react";
|
|
10
|
+
/**
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
export function getPercentageOfRectangle(rect, pointer) {
|
|
14
|
+
const position = Math.min(rect.right, Math.max(rect.left, pointer));
|
|
15
|
+
return (position - rect.left) / rect.width;
|
|
16
|
+
}
|
|
17
|
+
// istanbul ignore next - WIP
|
|
18
|
+
const formatDuration = (value) => {
|
|
19
|
+
const addZero = (i) => {
|
|
20
|
+
return (i < 10) ? `0${i}` : i;
|
|
21
|
+
};
|
|
22
|
+
const date = new Date(value);
|
|
23
|
+
const minutes = date.getUTCMinutes();
|
|
24
|
+
const seconds = date.getUTCSeconds();
|
|
25
|
+
return `${addZero(minutes)}:${addZero(seconds)}`;
|
|
26
|
+
};
|
|
27
|
+
const formatDate = (startDate, endDate, fraction, timeZoneOffset) => {
|
|
28
|
+
const delta = (endDate.getTime() - startDate.getTime()) * fraction;
|
|
29
|
+
const date = new Date(startDate.getTime() + delta);
|
|
30
|
+
return toDateString(date, timeZoneOffset);
|
|
31
|
+
};
|
|
32
|
+
// istanbul ignore next - WIP
|
|
33
|
+
const formatTime = (startDate, endDate, fraction, timeZoneOffset) => {
|
|
34
|
+
const delta = (endDate.getTime() - startDate.getTime()) * fraction;
|
|
35
|
+
const date = new Date(startDate.getTime() + delta);
|
|
36
|
+
return ` ${toTimeString(date, timeZoneOffset)}`;
|
|
37
|
+
};
|
|
38
|
+
function generateToolTipText(showTime, percent, min, max, startDate, endDate, timeZoneOffset = 0) {
|
|
39
|
+
if (startDate && endDate)
|
|
40
|
+
return `${formatDate(startDate, endDate, percent, timeZoneOffset)}${showTime ? formatTime(startDate, endDate, percent, timeZoneOffset) : ""} `;
|
|
41
|
+
const val = Math.round(min + ((max - min) * percent));
|
|
42
|
+
return formatDuration(val);
|
|
43
|
+
}
|
|
44
|
+
function getPercentageFromDate(startDate, endDate, date) {
|
|
45
|
+
const newDate = date ? date : new Date();
|
|
46
|
+
const startTime = startDate.getTime();
|
|
47
|
+
const totalDuration = endDate.getTime() - startTime;
|
|
48
|
+
return (newDate.getTime() - startTime) / totalDuration;
|
|
49
|
+
}
|
|
50
|
+
function getDateMarker(dateMarkerPropsIn, startDate, endDate) {
|
|
51
|
+
const percentage = getPercentageFromDate(startDate, endDate, dateMarkerPropsIn.date);
|
|
52
|
+
const marker = dateMarkerPropsIn.dateMarker ? dateMarkerPropsIn.dateMarker : React.createElement("span", { className: "date-marker-default" });
|
|
53
|
+
return { datePercentage: percentage, dateMarker: marker };
|
|
54
|
+
}
|
|
55
|
+
function markDateInTimelineRange(dateMarkerProps, startDate, endDate) {
|
|
56
|
+
// istanbul ignore else
|
|
57
|
+
if (dateMarkerProps && startDate && endDate) {
|
|
58
|
+
const inDate = dateMarkerProps.date ? dateMarkerProps.date : new Date();
|
|
59
|
+
// istanbul ignore else
|
|
60
|
+
if (inDate.getTime() >= startDate.getTime() && inDate.getTime() <= endDate.getTime())
|
|
61
|
+
return true;
|
|
62
|
+
}
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* @internal
|
|
67
|
+
*/
|
|
68
|
+
export function RailMarkers({ showToolTip, percent, tooltipText, markDate }) {
|
|
69
|
+
return (React.createElement("div", { className: "components-timeline-rail-marker-container" },
|
|
70
|
+
showToolTip &&
|
|
71
|
+
React.createElement("div", { className: "components-timeline-tooltip", style: { left: `${Math.round(percent * 100)}% ` } },
|
|
72
|
+
React.createElement("span", { className: "tooltip-text" }, tooltipText)),
|
|
73
|
+
markDate &&
|
|
74
|
+
React.createElement("div", { className: "components-timeline-date-marker", "data-testid": "test-date-marker", style: { left: `${Math.round(markDate.datePercentage * 100)}% ` } }, markDate.dateMarker)));
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Custom Timeline Thumb
|
|
78
|
+
* @internal
|
|
79
|
+
*/
|
|
80
|
+
export function CustomThumb() {
|
|
81
|
+
return (React.createElement("div", { className: "scrubber-handle" },
|
|
82
|
+
React.createElement("div", null),
|
|
83
|
+
React.createElement("div", null),
|
|
84
|
+
React.createElement("div", null)));
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* @internal
|
|
88
|
+
*/
|
|
89
|
+
export function useFocusedThumb(sliderContainer) {
|
|
90
|
+
const [thumbElement, setThumbElement] = React.useState();
|
|
91
|
+
React.useLayoutEffect(() => {
|
|
92
|
+
// istanbul ignore else
|
|
93
|
+
if (sliderContainer) {
|
|
94
|
+
const element = sliderContainer.querySelector(".iui-slider-thumb");
|
|
95
|
+
if (element && thumbElement !== element) {
|
|
96
|
+
setThumbElement(element);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}, [sliderContainer, thumbElement]);
|
|
100
|
+
const [thumbHasFocus, setThumbHasFocus] = React.useState(false);
|
|
101
|
+
const handleThumbFocus = React.useCallback(() => {
|
|
102
|
+
setThumbHasFocus(true);
|
|
103
|
+
}, []);
|
|
104
|
+
const handleThumbBlur = React.useCallback(() => {
|
|
105
|
+
setThumbHasFocus(false);
|
|
106
|
+
}, []);
|
|
107
|
+
useEventListener("focus", handleThumbFocus, thumbElement);
|
|
108
|
+
useEventListener("blur", handleThumbBlur, thumbElement);
|
|
109
|
+
return thumbHasFocus;
|
|
110
|
+
}
|
|
111
|
+
/** Scrubber/Slider for timeline control
|
|
112
|
+
* @internal
|
|
113
|
+
*/
|
|
114
|
+
export function Scrubber(props) {
|
|
115
|
+
const { startDate, endDate, showTime, isPlaying, totalDuration, timeZoneOffset, currentDuration, className, onChange, onUpdate } = props;
|
|
116
|
+
const thumbProps = () => {
|
|
117
|
+
return {
|
|
118
|
+
className: "components-timeline-thumb",
|
|
119
|
+
children: React.createElement(CustomThumb, null),
|
|
120
|
+
};
|
|
121
|
+
};
|
|
122
|
+
const sliderRef = React.useRef(null);
|
|
123
|
+
const [sliderContainer, setSliderContainer] = React.useState();
|
|
124
|
+
const [pointerPercent, setPointerPercent] = React.useState(0);
|
|
125
|
+
React.useLayoutEffect(() => {
|
|
126
|
+
// istanbul ignore else
|
|
127
|
+
if (sliderRef.current) {
|
|
128
|
+
const container = sliderRef.current.querySelector(".iui-slider-container");
|
|
129
|
+
if (container && sliderContainer !== container) {
|
|
130
|
+
setSliderContainer(container);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}, [sliderContainer]);
|
|
134
|
+
const tooltipProps = React.useCallback(() => {
|
|
135
|
+
return { visible: false };
|
|
136
|
+
}, []);
|
|
137
|
+
const [showRailTooltip, setShowRailTooltip] = React.useState(false);
|
|
138
|
+
// istanbul ignore next
|
|
139
|
+
const handlePointerEnter = React.useCallback(() => {
|
|
140
|
+
setShowRailTooltip(true);
|
|
141
|
+
}, []);
|
|
142
|
+
// istanbul ignore next
|
|
143
|
+
const handlePointerLeave = React.useCallback(() => {
|
|
144
|
+
setShowRailTooltip(false);
|
|
145
|
+
}, []);
|
|
146
|
+
const handlePointerMove = React.useCallback((event) => {
|
|
147
|
+
sliderContainer &&
|
|
148
|
+
setPointerPercent(getPercentageOfRectangle(sliderContainer.getBoundingClientRect(), event.clientX));
|
|
149
|
+
}, [sliderContainer]);
|
|
150
|
+
const thumbHasFocus = useFocusedThumb(sliderContainer);
|
|
151
|
+
const tickLabel = React.useMemo(() => {
|
|
152
|
+
const showTip = isPlaying || showRailTooltip || thumbHasFocus;
|
|
153
|
+
const percent = (isPlaying || thumbHasFocus) ? currentDuration / totalDuration : pointerPercent;
|
|
154
|
+
const markDateInRange = markDateInTimelineRange(props.markDate, startDate, endDate);
|
|
155
|
+
const currentDateMarker = props.markDate && markDateInRange && startDate && endDate ? getDateMarker(props.markDate, startDate, endDate) : undefined;
|
|
156
|
+
const tooltipText = generateToolTipText(!!showTime, percent, 0, totalDuration, startDate, endDate, timeZoneOffset);
|
|
157
|
+
return (React.createElement(RailMarkers, { showToolTip: showTip, percent: percent, tooltipText: tooltipText, markDate: currentDateMarker }));
|
|
158
|
+
}, [isPlaying, showRailTooltip, currentDuration, totalDuration, pointerPercent, startDate, endDate, timeZoneOffset, showTime, thumbHasFocus, props.markDate]);
|
|
159
|
+
return (React.createElement(Slider, { ref: sliderRef, className: className, step: 1, min: 0, max: totalDuration, minLabel: "", maxLabel: "", onUpdate: onUpdate, onChange: onChange, values: [currentDuration], tooltipProps: tooltipProps, thumbProps: thumbProps, tickLabels: tickLabel, railContainerProps: {
|
|
160
|
+
onPointerEnter: handlePointerEnter,
|
|
161
|
+
onPointerMove: handlePointerMove,
|
|
162
|
+
onPointerLeave: handlePointerLeave,
|
|
163
|
+
} }));
|
|
164
|
+
}
|
|
165
165
|
//# sourceMappingURL=Scrubber.js.map
|
|
@@ -1,78 +1,78 @@
|
|
|
1
|
-
/** @packageDocumentation
|
|
2
|
-
* @module Timeline
|
|
3
|
-
*/
|
|
4
|
-
import "./SolarTimeline.scss";
|
|
5
|
-
import * as React from "react";
|
|
6
|
-
import { ColorDef } from "@itwin/core-common";
|
|
7
|
-
import { SolarDataProvider } from "./interfaces";
|
|
8
|
-
interface SolarTimelineComponentProps {
|
|
9
|
-
dataProvider: SolarDataProvider;
|
|
10
|
-
onPlayPause?: (playing: boolean) => void;
|
|
11
|
-
duration?: number;
|
|
12
|
-
speed?: number;
|
|
13
|
-
}
|
|
14
|
-
interface SolarTimelineComponentState {
|
|
15
|
-
isPlaying: boolean;
|
|
16
|
-
isDateOpened: boolean;
|
|
17
|
-
isSettingsOpened: boolean;
|
|
18
|
-
dayStartMs: number;
|
|
19
|
-
sunRiseOffsetMs: number;
|
|
20
|
-
sunSetOffsetMs: number;
|
|
21
|
-
sunDeltaMs: number;
|
|
22
|
-
currentTimeOffsetMs: number;
|
|
23
|
-
speed: number;
|
|
24
|
-
loop: boolean;
|
|
25
|
-
shadowColor: ColorDef;
|
|
26
|
-
duration: number;
|
|
27
|
-
adjustedDuration: number;
|
|
28
|
-
}
|
|
29
|
-
/** Solar Timeline
|
|
30
|
-
* @alpha
|
|
31
|
-
*/
|
|
32
|
-
export declare class SolarTimeline extends React.PureComponent<SolarTimelineComponentProps, SolarTimelineComponentState> {
|
|
33
|
-
private _datePicker;
|
|
34
|
-
private _settings;
|
|
35
|
-
private _requestFrame;
|
|
36
|
-
private _unmounted;
|
|
37
|
-
private _timeLastCycle;
|
|
38
|
-
private _totalPlayTime;
|
|
39
|
-
private _settingsPopupTitle;
|
|
40
|
-
private _playLabel;
|
|
41
|
-
private _settingLabel;
|
|
42
|
-
private _loopLabel;
|
|
43
|
-
private _speedLabel;
|
|
44
|
-
private _dateTimeLabel;
|
|
45
|
-
private _months;
|
|
46
|
-
private _timeLabel;
|
|
47
|
-
private _amLabel;
|
|
48
|
-
private _pmLabel;
|
|
49
|
-
private readonly _presetColors;
|
|
50
|
-
constructor(props: SolarTimelineComponentProps);
|
|
51
|
-
componentWillUnmount(): void;
|
|
52
|
-
private _updateAnimation;
|
|
53
|
-
private _play;
|
|
54
|
-
private _onPause;
|
|
55
|
-
private _onPlay;
|
|
56
|
-
private setPlaybackTimeBySunTime;
|
|
57
|
-
/** note the day passed in is in the time of the current user not in project time because the date picker works in
|
|
58
|
-
* local time */
|
|
59
|
-
private _onDayClick;
|
|
60
|
-
private _onTimeChanged;
|
|
61
|
-
private _onCloseDayPicker;
|
|
62
|
-
private _onOpenDayPicker;
|
|
63
|
-
private _onCloseSettingsPopup;
|
|
64
|
-
private _onOpenSettingsPopup;
|
|
65
|
-
private ensureRange;
|
|
66
|
-
private processSunTimeChange;
|
|
67
|
-
private _onUpdate;
|
|
68
|
-
private _onChange;
|
|
69
|
-
private _onSpeedChange;
|
|
70
|
-
private _onToggleLoop;
|
|
71
|
-
private _formatTime;
|
|
72
|
-
private _onPresetColorPick;
|
|
73
|
-
private _handleHueOrSaturationChange;
|
|
74
|
-
getLocalTime(ticks: number): Date;
|
|
75
|
-
render(): JSX.Element;
|
|
76
|
-
}
|
|
77
|
-
export {};
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Timeline
|
|
3
|
+
*/
|
|
4
|
+
import "./SolarTimeline.scss";
|
|
5
|
+
import * as React from "react";
|
|
6
|
+
import { ColorDef } from "@itwin/core-common";
|
|
7
|
+
import { SolarDataProvider } from "./interfaces";
|
|
8
|
+
interface SolarTimelineComponentProps {
|
|
9
|
+
dataProvider: SolarDataProvider;
|
|
10
|
+
onPlayPause?: (playing: boolean) => void;
|
|
11
|
+
duration?: number;
|
|
12
|
+
speed?: number;
|
|
13
|
+
}
|
|
14
|
+
interface SolarTimelineComponentState {
|
|
15
|
+
isPlaying: boolean;
|
|
16
|
+
isDateOpened: boolean;
|
|
17
|
+
isSettingsOpened: boolean;
|
|
18
|
+
dayStartMs: number;
|
|
19
|
+
sunRiseOffsetMs: number;
|
|
20
|
+
sunSetOffsetMs: number;
|
|
21
|
+
sunDeltaMs: number;
|
|
22
|
+
currentTimeOffsetMs: number;
|
|
23
|
+
speed: number;
|
|
24
|
+
loop: boolean;
|
|
25
|
+
shadowColor: ColorDef;
|
|
26
|
+
duration: number;
|
|
27
|
+
adjustedDuration: number;
|
|
28
|
+
}
|
|
29
|
+
/** Solar Timeline
|
|
30
|
+
* @alpha
|
|
31
|
+
*/
|
|
32
|
+
export declare class SolarTimeline extends React.PureComponent<SolarTimelineComponentProps, SolarTimelineComponentState> {
|
|
33
|
+
private _datePicker;
|
|
34
|
+
private _settings;
|
|
35
|
+
private _requestFrame;
|
|
36
|
+
private _unmounted;
|
|
37
|
+
private _timeLastCycle;
|
|
38
|
+
private _totalPlayTime;
|
|
39
|
+
private _settingsPopupTitle;
|
|
40
|
+
private _playLabel;
|
|
41
|
+
private _settingLabel;
|
|
42
|
+
private _loopLabel;
|
|
43
|
+
private _speedLabel;
|
|
44
|
+
private _dateTimeLabel;
|
|
45
|
+
private _months;
|
|
46
|
+
private _timeLabel;
|
|
47
|
+
private _amLabel;
|
|
48
|
+
private _pmLabel;
|
|
49
|
+
private readonly _presetColors;
|
|
50
|
+
constructor(props: SolarTimelineComponentProps);
|
|
51
|
+
componentWillUnmount(): void;
|
|
52
|
+
private _updateAnimation;
|
|
53
|
+
private _play;
|
|
54
|
+
private _onPause;
|
|
55
|
+
private _onPlay;
|
|
56
|
+
private setPlaybackTimeBySunTime;
|
|
57
|
+
/** note the day passed in is in the time of the current user not in project time because the date picker works in
|
|
58
|
+
* local time */
|
|
59
|
+
private _onDayClick;
|
|
60
|
+
private _onTimeChanged;
|
|
61
|
+
private _onCloseDayPicker;
|
|
62
|
+
private _onOpenDayPicker;
|
|
63
|
+
private _onCloseSettingsPopup;
|
|
64
|
+
private _onOpenSettingsPopup;
|
|
65
|
+
private ensureRange;
|
|
66
|
+
private processSunTimeChange;
|
|
67
|
+
private _onUpdate;
|
|
68
|
+
private _onChange;
|
|
69
|
+
private _onSpeedChange;
|
|
70
|
+
private _onToggleLoop;
|
|
71
|
+
private _formatTime;
|
|
72
|
+
private _onPresetColorPick;
|
|
73
|
+
private _handleHueOrSaturationChange;
|
|
74
|
+
getLocalTime(ticks: number): Date;
|
|
75
|
+
render(): JSX.Element;
|
|
76
|
+
}
|
|
77
|
+
export {};
|
|
78
78
|
//# sourceMappingURL=SolarTimeline.d.ts.map
|