@itwin/imodel-components-react 5.0.0-dev.2 → 5.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.
Files changed (52) hide show
  1. package/CHANGELOG.md +47 -1
  2. package/lib/cjs/imodel-components-react/color/AlphaSlider.scss +71 -0
  3. package/lib/cjs/imodel-components-react/color/ColorPickerButton.scss +88 -0
  4. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.scss +62 -0
  5. package/lib/cjs/imodel-components-react/color/HueSlider.scss +78 -0
  6. package/lib/cjs/imodel-components-react/color/SaturationPicker.scss +36 -0
  7. package/lib/cjs/imodel-components-react/color/Swatch.scss +22 -0
  8. package/lib/cjs/imodel-components-react/editors/ColorEditor.scss +16 -0
  9. package/lib/cjs/imodel-components-react/editors/WeightEditor.scss +14 -0
  10. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.scss +106 -0
  11. package/lib/cjs/imodel-components-react/lineweight/Swatch.scss +46 -0
  12. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.scss +50 -0
  13. package/lib/cjs/imodel-components-react/navigationaids/Cube.scss +19 -0
  14. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.scss +177 -0
  15. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.scss +133 -0
  16. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.scss +53 -0
  17. package/lib/cjs/imodel-components-react/timeline/InlineEdit.scss +22 -0
  18. package/lib/cjs/imodel-components-react/timeline/Scrubber.scss +105 -0
  19. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.scss +43 -0
  20. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.scss +38 -0
  21. package/lib/cjs/imodel-components-react/timeline/Timeline.scss +163 -0
  22. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.scss +48 -0
  23. package/lib/esm/imodel-components-react/color/AlphaSlider.scss +71 -0
  24. package/lib/esm/imodel-components-react/color/ColorPickerButton.scss +88 -0
  25. package/lib/esm/imodel-components-react/color/ColorPickerPopup.scss +62 -0
  26. package/lib/esm/imodel-components-react/color/HueSlider.scss +78 -0
  27. package/lib/esm/imodel-components-react/color/SaturationPicker.scss +36 -0
  28. package/lib/esm/imodel-components-react/color/Swatch.scss +22 -0
  29. package/lib/esm/imodel-components-react/editors/ColorEditor.scss +16 -0
  30. package/lib/esm/imodel-components-react/editors/WeightEditor.scss +14 -0
  31. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.scss +106 -0
  32. package/lib/esm/imodel-components-react/lineweight/Swatch.scss +46 -0
  33. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.scss +50 -0
  34. package/lib/esm/imodel-components-react/navigationaids/Cube.scss +19 -0
  35. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.scss +177 -0
  36. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.scss +133 -0
  37. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.scss +53 -0
  38. package/lib/esm/imodel-components-react/timeline/InlineEdit.scss +22 -0
  39. package/lib/esm/imodel-components-react/timeline/Scrubber.scss +105 -0
  40. package/lib/esm/imodel-components-react/timeline/SolarTimeline.scss +43 -0
  41. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.scss +38 -0
  42. package/lib/esm/imodel-components-react/timeline/Timeline.scss +163 -0
  43. package/lib/esm/imodel-components-react/timeline/TimelineComponent.scss +48 -0
  44. package/lib/imodel-components-react/ToolUtilities.d.ts +33 -0
  45. package/lib/imodel-components-react/ToolUtilities.d.ts.map +1 -0
  46. package/lib/imodel-components-react/ToolUtilities.js +40 -0
  47. package/lib/imodel-components-react/ToolUtilities.js.map +1 -0
  48. package/lib/imodel-components-react.d.ts +1 -0
  49. package/lib/imodel-components-react.d.ts.map +1 -1
  50. package/lib/imodel-components-react.js +1 -0
  51. package/lib/imodel-components-react.js.map +1 -1
  52. package/package.json +11 -17
@@ -0,0 +1,163 @@
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
+ .timeline {
6
+ position: relative;
7
+ height: 110px;
8
+ background: var(--iui-color-background);
9
+ border: 1px solid var(--iui-color-background-disabled);
10
+ box-sizing: border-box;
11
+ }
12
+
13
+ .rail {
14
+ position: absolute;
15
+ width: 100%;
16
+ height: 40px;
17
+ top: 50%;
18
+ transform: translateY(-50%);
19
+ cursor: pointer;
20
+ z-index: 3;
21
+ }
22
+
23
+ .rail-center {
24
+ position: absolute;
25
+ left: 0;
26
+ right: 0;
27
+ top: 50%;
28
+ transform: translateY(-50%);
29
+ height: 4px;
30
+ cursor: pointer;
31
+ pointer-events: none;
32
+ background: var(--iui-color-background-disabled);
33
+ }
34
+
35
+ .tooltip-rail {
36
+ position: absolute;
37
+ margin-left: -11px;
38
+ top: 50%;
39
+ transform: translateY(-50%);
40
+ z-index: 1;
41
+ }
42
+
43
+ .needle {
44
+ position: absolute;
45
+ top: 0;
46
+ transform: translateX(-50%);
47
+ z-index: 4;
48
+ width: 2px;
49
+ height: 100%;
50
+ background: var(--iui-color-icon-accent);
51
+ cursor: pointer;
52
+ }
53
+
54
+ .handle {
55
+ position: absolute;
56
+ top: 50%;
57
+ transform: translate(-50%, -50%);
58
+ z-index: 4;
59
+ width: 14px;
60
+ height: 14px;
61
+ cursor: pointer;
62
+ border: none;
63
+ border-radius: 50%;
64
+ background: var(--iui-color-icon-accent);
65
+ border: 2px solid var(--iui-color-background);
66
+
67
+ > span {
68
+ position: absolute;
69
+ left: 50%;
70
+ bottom: -25px;
71
+ font-size: 14px;
72
+ white-space: nowrap;
73
+ transform: translateX(-50%);
74
+ color: rgba(black, 0.85);
75
+ }
76
+
77
+ input {
78
+ position: absolute;
79
+ border: none;
80
+ margin-top: 10px;
81
+ top: 1.2rem;
82
+ left: 50%;
83
+ transform: translateX(-50%);
84
+ cursor: pointer;
85
+ }
86
+
87
+ input:focus {
88
+ cursor: text;
89
+ left: -0.25rem;
90
+ top: calc(1.2rem - 0.25rem);
91
+ width: 140px;
92
+ padding: 0.25rem;
93
+ border: 1px solid #ddd;
94
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.11);
95
+ box-sizing: border-box;
96
+ outline: none;
97
+ }
98
+ }
99
+
100
+ .tick-line {
101
+ position: absolute;
102
+ width: 2px;
103
+ height: 11px;
104
+ transform: translateX(-50%);
105
+ background: var(--iui-color-background-disabled);
106
+ }
107
+
108
+ .tick-label {
109
+ position: absolute;
110
+ margin-top: 9px;
111
+ font-size: 14px;
112
+ color: rgba(black, 0.85);
113
+ white-space: nowrap;
114
+ }
115
+
116
+ .tick-label.start {
117
+ left: -50px;
118
+ }
119
+
120
+ .tick-label.end {
121
+ right: -50px;
122
+ text-align: right;
123
+ }
124
+
125
+ .tick-label.tick {
126
+ margin-left: 11px;
127
+ text-align: left;
128
+ }
129
+
130
+ .tooltip {
131
+ position: absolute;
132
+ top: -20px;
133
+ display: inline-block;
134
+ border-bottom: 1px dotted #222;
135
+ margin-left: 22px;
136
+ font-size: 14px;
137
+
138
+ .tooltip-text {
139
+ width: 100px;
140
+ background-color: #222;
141
+ color: #fff;
142
+ // opacity: 0.8;
143
+ text-align: center;
144
+ border-radius: 6px;
145
+ padding: 8px 0;
146
+ position: absolute;
147
+ z-index: 1;
148
+ bottom: 150%;
149
+ left: 50%;
150
+ margin-left: -60px;
151
+
152
+ &:after {
153
+ content: "";
154
+ position: absolute;
155
+ top: 100%;
156
+ left: 50%;
157
+ margin-left: -5px;
158
+ border-width: 5px;
159
+ border-style: solid;
160
+ border-color: #222 transparent transparent transparent;
161
+ }
162
+ }
163
+ }
@@ -0,0 +1,48 @@
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
+ .timeline-component {
6
+ width: 100%;
7
+ min-width: 275px;
8
+
9
+ display: flex;
10
+ flex-direction: row;
11
+ align-items: center;
12
+ padding: 8px 16px;
13
+ box-sizing: border-box;
14
+ gap: 8px;
15
+
16
+ .time-container {
17
+ display: flex;
18
+ flex-direction: column;
19
+ align-items: center;
20
+ }
21
+
22
+ .timeline-time {
23
+ font-size: 12px;
24
+ color: var(--iui-color-text-muted);
25
+ text-align: center;
26
+ min-height: inherit;
27
+ }
28
+
29
+ .timeline-duration-time {
30
+ font-size: 14px;
31
+ width: 40px;
32
+ color: var(--iui-color-text);
33
+ text-align: center;
34
+ min-height: inherit;
35
+ }
36
+
37
+ .timeline-date {
38
+ font-size: 12px;
39
+ color: var(--iui-color-text-muted);
40
+ padding-bottom: 4px;
41
+ }
42
+
43
+ .slider {
44
+ position: relative;
45
+ flex: 1;
46
+ margin: 0 20px;
47
+ }
48
+ }
@@ -0,0 +1,71 @@
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
+ .components-alpha-pointer {
6
+ position: absolute;
7
+ width: 1.2rem;
8
+ height: 1.2rem;
9
+ border-radius: 50%;
10
+ background-color: rgb(248, 248, 248);
11
+ box-shadow: rgba(0, 0, 0, 0.37) 0px 1px 4px 0px;
12
+
13
+ &:focus {
14
+ outline: none;
15
+ border: none;
16
+ }
17
+ }
18
+
19
+ .components-alpha-container-horizontal {
20
+ width: 100%;
21
+ height: 1rem;
22
+ display: flex;
23
+ align-items: center;
24
+ justify-content: center;
25
+
26
+ .components-alpha-slider {
27
+ position: relative;
28
+ width: calc(100% - 1.2rem);
29
+ height: 100%;
30
+ background-color: linear-gradient(
31
+ to right,
32
+ rgba(47, 37, 72, 0) 0%,
33
+ rgb(47, 37, 72) 100%
34
+ );
35
+ background-image: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" width="400" height="400" fill-opacity=".15"><rect x="200" width="200" height="200" /> <rect y="200" width="200" height="200" /></svg>'),
36
+ linear-gradient(to right, rgba(47, 37, 72, 0) 0%, rgb(47, 37, 72) 100%);
37
+ background-size: 2rem 1rem, cover;
38
+ background-repeat: repeat, no-repeat;
39
+
40
+ .components-alpha-pointer {
41
+ transform: translate(-0.6rem, -0.1rem);
42
+ }
43
+ }
44
+ }
45
+
46
+ .components-alpha-container-vertical {
47
+ width: 1rem;
48
+ display: flex;
49
+ align-items: center;
50
+ justify-content: center;
51
+ height: 100%;
52
+
53
+ .components-alpha-slider {
54
+ position: relative;
55
+ width: 100%;
56
+ height: calc(100% - 1.2rem);
57
+ background-color: linear-gradient(
58
+ to bottom,
59
+ rgba(47, 37, 72, 0) 0%,
60
+ rgb(47, 37, 72) 100%
61
+ );
62
+ background-image: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" width="400" height="400" fill-opacity=".15"><rect x="200" width="200" height="200" /> <rect y="200" width="200" height="200" /></svg>'),
63
+ linear-gradient(to top, rgba(47, 37, 72, 0) 0%, rgb(47, 37, 72) 100%);
64
+ background-size: 1rem 2rem, cover;
65
+ background-repeat: repeat, no-repeat;
66
+
67
+ .components-alpha-pointer {
68
+ transform: translate(-0.1rem, -0.6rem);
69
+ }
70
+ }
71
+ }
@@ -0,0 +1,88 @@
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
+ button.components-colorpicker-button {
6
+ font-family: var(--iui-font-sans);
7
+ font-size: var(--iui-font-size-1);
8
+ color: var(--iui-color-text);
9
+ box-sizing: border-box;
10
+ border: 1px solid transparent;
11
+ border-radius: var(--iui-border-radius-1);
12
+ background-color: transparent;
13
+ border: none;
14
+ padding: 0;
15
+
16
+ > .components-colorpicker-button-container {
17
+ display: flex;
18
+ flex-direction: row;
19
+ align-items: center;
20
+ border-radius: var(--iui-border-radius-1);
21
+
22
+ > .components-colorpicker-button-color-swatch {
23
+ border: 1px solid var(--iui-color-border-foreground);
24
+ border-radius: var(--iui-border-radius-1);
25
+ width: 1.25em;
26
+ height: 1.25em;
27
+ }
28
+
29
+ > .components-caret {
30
+ margin-left: 0.25em;
31
+ margin-right: 0.25em;
32
+ }
33
+ }
34
+
35
+ &:not(.readonly) {
36
+ cursor: pointer;
37
+ }
38
+
39
+ &:disabled {
40
+ pointer-events: none;
41
+
42
+ > .components-colorpicker-button-container {
43
+ > .components-caret {
44
+ color: var(--iui-color-text-disabled);
45
+ }
46
+ }
47
+ }
48
+
49
+ &.round {
50
+ .components-colorpicker-button-container {
51
+ border-bottom-left-radius: 50%;
52
+ border-top-left-radius: 50%;
53
+ }
54
+
55
+ .components-colorpicker-button-color-swatch {
56
+ border-radius: 50%;
57
+ }
58
+ }
59
+ }
60
+
61
+ .components-colorpicker-popup {
62
+ border: 1px solid var(--iui-color-border-foreground);
63
+ border-radius: 6px;
64
+
65
+ .components-colorpicker-popup-container {
66
+ color: var(--iui-color-text);
67
+ background: var(--iui-color-background);
68
+ border-radius: 6px;
69
+
70
+ > .components-colorpicker-popup-colors {
71
+ display: grid;
72
+ grid-gap: 8px;
73
+ padding: 8px;
74
+
75
+ > .components-colorpicker-swatch {
76
+ height: 1.5em;
77
+ width: 1.5em;
78
+ transition: scale 0.2s ease;
79
+ cursor: pointer;
80
+ outline: none;
81
+
82
+ &:hover {
83
+ transform: scale(1.15);
84
+ }
85
+ }
86
+ }
87
+ }
88
+ }
@@ -0,0 +1,62 @@
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
+
6
+ button.components-colorpicker-popup-button {
7
+ font-family: var(--iui-font-sans);
8
+ font-size: var(--iui-font-size-1);
9
+ color: var(--iui-color-text);
10
+ background-color: transparent;
11
+ box-sizing: border-box;
12
+ border-radius: var(--iui-border-radius-1);
13
+ border: none;
14
+ padding: 0;
15
+
16
+ &:not(.readonly) {
17
+ cursor: pointer;
18
+ }
19
+
20
+ > .components-colorpicker-button-container {
21
+ display: flex;
22
+ flex-direction: row;
23
+ align-items: center;
24
+
25
+ > .components-colorpicker-button-color-swatch {
26
+ border: 1px solid var(--iui-color-border);
27
+ border-radius: var(--iui-border-radius-1);
28
+ width: 1.25em;
29
+ height: 1.25em;
30
+ }
31
+
32
+ > .components-caret {
33
+ margin-left: 0.25em;
34
+ margin-right: 0.25em;
35
+ }
36
+ }
37
+
38
+ &:disabled {
39
+ pointer-events: none;
40
+
41
+ > .components-colorpicker-button-container {
42
+ > .components-caret {
43
+ color: var(--iui-color-text-disabled);
44
+ }
45
+ }
46
+ }
47
+ }
48
+
49
+ .components-colorpicker-popup-panel-padding {
50
+ padding: 3px 6px 6px 6px;
51
+ display: flex;
52
+ flex-direction: column;
53
+ gap: 4px;
54
+
55
+ button.core-dialog-close {
56
+ cursor: pointer;
57
+ margin-left: auto;
58
+ background: transparent;
59
+ border: none;
60
+ color: var(--iui-color-text);
61
+ }
62
+ }
@@ -0,0 +1,78 @@
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
+ .components-hue-pointer {
6
+ position: absolute;
7
+ width: 1.2em;
8
+ height: 1.2em;
9
+ border-radius: 50%;
10
+ box-shadow: rgba(0, 0, 0, 0.37) 0px 1px 4px 0px;
11
+
12
+ &:focus {
13
+ outline: none;
14
+ border: none;
15
+ }
16
+ }
17
+
18
+ .components-hue-container-horizontal {
19
+ width: 100%;
20
+ height: 0.5em;
21
+ display: flex;
22
+ align-items: center;
23
+ justify-content: center;
24
+
25
+ .components-hue-slider {
26
+ position: relative;
27
+ width: 100%;
28
+ height: 100%;
29
+ border-radius: 1em;
30
+ background: linear-gradient(
31
+ to right,
32
+ #f00 0%,
33
+ #ff0 17%,
34
+ #0f0 33%,
35
+ #0ff 50%,
36
+ #00f 67%,
37
+ #f0f 83%,
38
+ #f00 100%
39
+ );
40
+ }
41
+
42
+ .components-hue-pointer {
43
+ transform: translate(-0.6em, -0.45em);
44
+ cursor: pointer;
45
+ border: 1px solid #fff;
46
+ }
47
+ }
48
+
49
+ .components-hue-container-vertical {
50
+ width: 0.5em;
51
+ display: flex;
52
+ align-items: center;
53
+ justify-content: center;
54
+ height: 100%;
55
+
56
+ .components-hue-slider {
57
+ position: relative;
58
+ width: 100%;
59
+ height: 100%;
60
+ border-radius: 1em;
61
+ background: linear-gradient(
62
+ to top,
63
+ #f00 0%,
64
+ #ff0 17%,
65
+ #0f0 33%,
66
+ #0ff 50%,
67
+ #00f 67%,
68
+ #f0f 83%,
69
+ #f00 100%
70
+ );
71
+ }
72
+
73
+ .components-hue-pointer {
74
+ transform: translate(-0.45em, -0.6em);
75
+ cursor: pointer;
76
+ border: 1px solid #fff;
77
+ }
78
+ }
@@ -0,0 +1,36 @@
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
+
6
+ .components-saturation-container {
7
+ width: 100%;
8
+ height: 100%;
9
+ min-width: 100px;
10
+ min-height: 100px;
11
+
12
+ .components-saturation-region {
13
+ position: relative;
14
+ width: 100%;
15
+ height: 100%;
16
+ background-image: linear-gradient(to top, #000, rgba(0, 0, 0, 0)),
17
+ linear-gradient(to right, #fff, rgba(255, 255, 255, 0));
18
+ background-size: cover, cover;
19
+ overflow: visible;
20
+
21
+ .components-saturation-pointer {
22
+ position: absolute;
23
+ width: 2em;
24
+ height: 2em;
25
+ border-radius: 50%;
26
+ box-shadow: rgba(0, 0, 0, 0.37) 0px 4px 4px 0px;
27
+ border: 2px solid #fff;
28
+ transform: translate(-1em, -1em);
29
+
30
+ &:focus {
31
+ outline: none;
32
+ border: none;
33
+ }
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,22 @@
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
+
6
+ .components-color-swatch {
7
+ font-size: var(--iui-font-size-1);
8
+ height: 1em * 1.2;
9
+ width: 1em * 1.2;
10
+ border-width: 1px;
11
+ border-radius: var(--iui-border-radius-1);
12
+ border-style: solid;
13
+ border-color: var(--iui-color-border-subtle);
14
+
15
+ &.round {
16
+ border-radius: 50%;
17
+ }
18
+
19
+ &[disabled] {
20
+ opacity: 0.2;
21
+ }
22
+ }
@@ -0,0 +1,16 @@
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
+ $components-color-editor-item-height: 100%;
6
+
7
+ .components-color-editor {
8
+ font-family: var(--iui-font-sans);
9
+ font-size: var(--iui-font-size-1);
10
+ color: var(--iui-color-text);
11
+ border: none;
12
+ box-sizing: border-box;
13
+ height: $components-color-editor-item-height;
14
+ display: flex;
15
+ align-items: center;
16
+ }
@@ -0,0 +1,14 @@
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
+ $components-weight-editor-item-height: 100%;
6
+
7
+ .components-weight-editor {
8
+ font-family: var(--iui-font-sans);
9
+ font-size: var(--iui-font-size-1);
10
+ color: var(--iui-color-text);
11
+ border: none;
12
+ box-sizing: border-box;
13
+ height: $components-weight-editor-item-height;
14
+ }
@@ -0,0 +1,106 @@
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
+ @use "~@itwin/core-react/lib/core-react/base/base" as *;
6
+
7
+ .component-quantity-number-input-container {
8
+ display: flex;
9
+ align-items: center;
10
+ position: relative;
11
+ padding: 0;
12
+ margin: 0;
13
+ box-sizing: border-box;
14
+
15
+ .component-quantity-number-input-suffix {
16
+ padding-left: 0.25em;
17
+ }
18
+
19
+ .component-quantity-number-input-value-and-buttons-container {
20
+ position: relative;
21
+ padding: 0;
22
+ margin: 0;
23
+ box-sizing: border-box;
24
+
25
+ input {
26
+ margin: 0;
27
+ padding-right: 1.5em;
28
+ }
29
+
30
+ &.component-number-buttons-for-touch {
31
+ input {
32
+ padding-right: 3.5em;
33
+ }
34
+ }
35
+
36
+ .component-quantity-number-input-buttons-container {
37
+ position: absolute;
38
+ top: 0;
39
+ right: 0;
40
+ width: 20px;
41
+ height: 100%;
42
+ @include uicore-centered;
43
+ flex-direction: column;
44
+
45
+ .component-quantity-number-input-button {
46
+ font-size: 8px;
47
+ outline: none;
48
+ height: 100%;
49
+ width: 100%;
50
+ @include uicore-centered;
51
+
52
+ &:hover {
53
+ color: var(--iui-color-text-accent-hover);
54
+ transition-duration: 150ms;
55
+ }
56
+
57
+ &.component-quantity-number-input-button-up {
58
+ padding-top: 1px;
59
+ }
60
+
61
+ &.component-quantity-number-input-button-down {
62
+ padding-top: 1px;
63
+ }
64
+ }
65
+
66
+ &.component-number-buttons-for-touch {
67
+ width: 3.5em;
68
+ flex-direction: row-reverse;
69
+
70
+ .component-quantity-number-input-button {
71
+ font-size: 1em;
72
+
73
+ &:hover {
74
+ color: unset;
75
+ transition-duration: unset;
76
+ }
77
+
78
+ &.component-quantity-number-input-button-up {
79
+ padding-top: 2px;
80
+ }
81
+
82
+ &.component-quantity-number-input-button-down {
83
+ padding-top: 2px;
84
+ }
85
+ }
86
+ }
87
+ }
88
+ }
89
+
90
+ &.component-quantity-number-input-disabled {
91
+ .component-quantity-number-input-suffix {
92
+ -webkit-user-select: none;
93
+ user-select: none;
94
+ color: var(--iui-color-text-disabled);
95
+ }
96
+ .component-quantity-number-input-button-up {
97
+ pointer-events: none;
98
+ color: var(--iui-color-text-disabled);
99
+ }
100
+
101
+ .component-quantity-number-input-button-down {
102
+ pointer-events: none;
103
+ color: var(--iui-color-text-disabled);
104
+ }
105
+ }
106
+ }