@itwin/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 (144) hide show
  1. package/CHANGELOG.md +55 -1
  2. package/lib/cjs/components-react/_target.scss +10 -0
  3. package/lib/cjs/components-react/datepicker/DateField.scss +19 -0
  4. package/lib/cjs/components-react/datepicker/DatePicker.scss +179 -0
  5. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.scss +56 -0
  6. package/lib/cjs/components-react/datepicker/TimeField.scss +72 -0
  7. package/lib/cjs/components-react/editors/BooleanEditor.scss +22 -0
  8. package/lib/cjs/components-react/editors/CustomNumberEditor.scss +19 -0
  9. package/lib/cjs/components-react/editors/DateTimeEditor.scss +9 -0
  10. package/lib/cjs/components-react/editors/EditorContainer.scss +7 -0
  11. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.scss +141 -0
  12. package/lib/cjs/components-react/editors/EnumEditor.scss +21 -0
  13. package/lib/cjs/components-react/editors/IconEditor.scss +14 -0
  14. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.scss +24 -0
  15. package/lib/cjs/components-react/editors/NumericInputEditor.scss +13 -0
  16. package/lib/cjs/components-react/editors/PopupButton.scss +112 -0
  17. package/lib/cjs/components-react/editors/SliderEditor.scss +14 -0
  18. package/lib/cjs/components-react/editors/TextEditor.scss +19 -0
  19. package/lib/cjs/components-react/editors/TextareaEditor.scss +13 -0
  20. package/lib/cjs/components-react/editors/ToggleEditor.scss +17 -0
  21. package/lib/cjs/components-react/editors/variables.scss +10 -0
  22. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +40 -0
  23. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.scss +35 -0
  24. package/lib/cjs/components-react/filtering/FilteringInput.scss +58 -0
  25. package/lib/cjs/components-react/filtering/ResultSelector.scss +66 -0
  26. package/lib/cjs/components-react/iconpicker/IconPickerButton.scss +74 -0
  27. package/lib/cjs/components-react/inputs/ParsedInput.scss +20 -0
  28. package/lib/cjs/components-react/properties/renderers/ActionButtonList.scss +25 -0
  29. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +17 -0
  30. package/lib/cjs/components-react/properties/renderers/PropertyView.scss +110 -0
  31. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.scss +87 -0
  32. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.scss +55 -0
  33. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +100 -0
  34. package/lib/cjs/components-react/selectable-content/SelectableContent.scss +20 -0
  35. package/lib/cjs/components-react/toolbar/Item.scss +94 -0
  36. package/lib/cjs/components-react/toolbar/ItemWrapper.scss +10 -0
  37. package/lib/cjs/components-react/toolbar/Items.scss +96 -0
  38. package/lib/cjs/components-react/toolbar/Overflow.scss +57 -0
  39. package/lib/cjs/components-react/toolbar/OverflowPanel.scss +37 -0
  40. package/lib/cjs/components-react/toolbar/PopupItem.scss +81 -0
  41. package/lib/cjs/components-react/toolbar/Toolbar.scss +16 -0
  42. package/lib/cjs/components-react/toolbar/_variables.scss +34 -0
  43. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.scss +44 -0
  44. package/lib/cjs/components-react/toolbar/groupPanel/Column.scss +9 -0
  45. package/lib/cjs/components-react/toolbar/groupPanel/Columns.scss +10 -0
  46. package/lib/cjs/components-react/toolbar/groupPanel/Panel.scss +15 -0
  47. package/lib/cjs/components-react/toolbar/groupPanel/Title.scss +33 -0
  48. package/lib/cjs/components-react/toolbar/groupPanel/_variables.scss +17 -0
  49. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.scss +30 -0
  50. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.scss +117 -0
  51. package/lib/cjs/components-react/toolbar/groupPanel/tool/_variables.scss +15 -0
  52. package/lib/cjs/components-react/tree/HighlightingEngine.scss +8 -0
  53. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.scss +102 -0
  54. package/lib/cjs/components-react/tree/controlled/component/NodeContent.scss +27 -0
  55. package/lib/components-react/common/Links.d.ts +4 -0
  56. package/lib/components-react/common/Links.d.ts.map +1 -1
  57. package/lib/components-react/common/Links.js +20 -0
  58. package/lib/components-react/common/Links.js.map +1 -1
  59. package/lib/components-react/editors/EditorContainer.d.ts +2 -0
  60. package/lib/components-react/editors/EditorContainer.d.ts.map +1 -1
  61. package/lib/components-react/editors/EditorContainer.js +7 -3
  62. package/lib/components-react/editors/EditorContainer.js.map +1 -1
  63. package/lib/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
  64. package/lib/components-react/editors/EnumButtonGroupEditor.js +3 -3
  65. package/lib/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  66. package/lib/components-react/properties/renderers/PropertyRenderer.d.ts +4 -0
  67. package/lib/components-react/properties/renderers/PropertyRenderer.d.ts.map +1 -1
  68. package/lib/components-react/properties/renderers/PropertyRenderer.js +12 -3
  69. package/lib/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  70. package/lib/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts.map +1 -1
  71. package/lib/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +2 -10
  72. package/lib/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  73. package/lib/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  74. package/lib/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +5 -3
  75. package/lib/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  76. package/lib/components-react/propertygrid/component/PropertyGridCommons.d.ts +2 -0
  77. package/lib/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  78. package/lib/components-react/propertygrid/component/PropertyGridCommons.js +4 -9
  79. package/lib/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  80. package/lib/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +1 -1
  81. package/lib/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  82. package/lib/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  83. package/lib/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +2 -0
  84. package/lib/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  85. package/lib/components-react/propertygrid/component/VirtualizedPropertyGrid.js +3 -1
  86. package/lib/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  87. package/lib/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -0
  88. package/lib/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  89. package/lib/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +9 -5
  90. package/lib/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  91. package/lib/esm/components-react/_target.scss +10 -0
  92. package/lib/esm/components-react/datepicker/DateField.scss +19 -0
  93. package/lib/esm/components-react/datepicker/DatePicker.scss +179 -0
  94. package/lib/esm/components-react/datepicker/DatePickerPopupButton.scss +56 -0
  95. package/lib/esm/components-react/datepicker/TimeField.scss +72 -0
  96. package/lib/esm/components-react/editors/BooleanEditor.scss +22 -0
  97. package/lib/esm/components-react/editors/CustomNumberEditor.scss +19 -0
  98. package/lib/esm/components-react/editors/DateTimeEditor.scss +9 -0
  99. package/lib/esm/components-react/editors/EditorContainer.scss +7 -0
  100. package/lib/esm/components-react/editors/EnumButtonGroupEditor.scss +141 -0
  101. package/lib/esm/components-react/editors/EnumEditor.scss +21 -0
  102. package/lib/esm/components-react/editors/IconEditor.scss +14 -0
  103. package/lib/esm/components-react/editors/ImageCheckBoxEditor.scss +24 -0
  104. package/lib/esm/components-react/editors/NumericInputEditor.scss +13 -0
  105. package/lib/esm/components-react/editors/PopupButton.scss +112 -0
  106. package/lib/esm/components-react/editors/SliderEditor.scss +14 -0
  107. package/lib/esm/components-react/editors/TextEditor.scss +19 -0
  108. package/lib/esm/components-react/editors/TextareaEditor.scss +13 -0
  109. package/lib/esm/components-react/editors/ToggleEditor.scss +17 -0
  110. package/lib/esm/components-react/editors/variables.scss +10 -0
  111. package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +40 -0
  112. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.scss +35 -0
  113. package/lib/esm/components-react/filtering/FilteringInput.scss +58 -0
  114. package/lib/esm/components-react/filtering/ResultSelector.scss +66 -0
  115. package/lib/esm/components-react/iconpicker/IconPickerButton.scss +74 -0
  116. package/lib/esm/components-react/inputs/ParsedInput.scss +20 -0
  117. package/lib/esm/components-react/properties/renderers/ActionButtonList.scss +25 -0
  118. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +17 -0
  119. package/lib/esm/components-react/properties/renderers/PropertyView.scss +110 -0
  120. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.scss +87 -0
  121. package/lib/esm/components-react/propertygrid/component/PropertyGrid.scss +55 -0
  122. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +100 -0
  123. package/lib/esm/components-react/selectable-content/SelectableContent.scss +20 -0
  124. package/lib/esm/components-react/toolbar/Item.scss +94 -0
  125. package/lib/esm/components-react/toolbar/ItemWrapper.scss +10 -0
  126. package/lib/esm/components-react/toolbar/Items.scss +96 -0
  127. package/lib/esm/components-react/toolbar/Overflow.scss +57 -0
  128. package/lib/esm/components-react/toolbar/OverflowPanel.scss +37 -0
  129. package/lib/esm/components-react/toolbar/PopupItem.scss +81 -0
  130. package/lib/esm/components-react/toolbar/Toolbar.scss +16 -0
  131. package/lib/esm/components-react/toolbar/_variables.scss +34 -0
  132. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.scss +44 -0
  133. package/lib/esm/components-react/toolbar/groupPanel/Column.scss +9 -0
  134. package/lib/esm/components-react/toolbar/groupPanel/Columns.scss +10 -0
  135. package/lib/esm/components-react/toolbar/groupPanel/Panel.scss +15 -0
  136. package/lib/esm/components-react/toolbar/groupPanel/Title.scss +33 -0
  137. package/lib/esm/components-react/toolbar/groupPanel/_variables.scss +17 -0
  138. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.scss +30 -0
  139. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.scss +117 -0
  140. package/lib/esm/components-react/toolbar/groupPanel/tool/_variables.scss +15 -0
  141. package/lib/esm/components-react/tree/HighlightingEngine.scss +8 -0
  142. package/lib/esm/components-react/tree/controlled/component/ControlledTree.scss +102 -0
  143. package/lib/esm/components-react/tree/controlled/component/NodeContent.scss +27 -0
  144. package/package.json +9 -16
@@ -0,0 +1,96 @@
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 "variables" as *;
6
+
7
+ $separator-color: var(--iui-color-border-subtle);
8
+
9
+ .components-toolbar-items-container {
10
+ $border-radius: var(--iui-border-radius-1);
11
+
12
+ border-radius: $border-radius;
13
+ display: inline-block;
14
+ vertical-align: bottom;
15
+ box-sizing: border-box;
16
+
17
+ box-shadow: var(--iui-shadow-1);
18
+ -webkit-backdrop-filter: blur(10px);
19
+ backdrop-filter: blur(10px);
20
+ pointer-events: auto;
21
+
22
+ &.components-vertical {
23
+ width: $components-desktop-toolbar-width;
24
+
25
+ > * {
26
+ height: $components-desktop-item-height;
27
+
28
+ &:not(:first-child) {
29
+ margin-top: $components-desktop-space-between-toolbar-items;
30
+
31
+ &:before {
32
+ content: "";
33
+ display: block;
34
+ position: absolute;
35
+ pointer-events: none;
36
+ height: $components-desktop-space-between-toolbar-items;
37
+ width: 100%;
38
+ left: 0;
39
+ top: -$components-desktop-space-between-toolbar-items;
40
+ }
41
+ }
42
+ }
43
+ }
44
+
45
+ &.components-horizontal {
46
+ height: $components-desktop-toolbar-height;
47
+
48
+ > * {
49
+ display: inline-block;
50
+ height: 100%;
51
+ width: $components-desktop-item-width;
52
+
53
+ &:not(:first-child) {
54
+ margin-left: $components-desktop-space-between-toolbar-items;
55
+
56
+ &:before {
57
+ content: "";
58
+ display: block;
59
+ position: absolute;
60
+ pointer-events: none;
61
+ width: $components-desktop-space-between-toolbar-items;
62
+ height: 100%;
63
+ left: -$components-desktop-space-between-toolbar-items;
64
+ top: 0;
65
+ }
66
+ }
67
+ }
68
+ }
69
+
70
+ > * {
71
+ vertical-align: bottom;
72
+ }
73
+ }
74
+
75
+ /* modifications to the style to support the appearance of a tool button separator */
76
+ .components-toolbar-item-container.components-horizontal.components-toolbar-button-add-gap-before {
77
+ margin-left: $components-desktop-separator-gap-between-toolbar-items;
78
+ }
79
+
80
+ div.components-toolbar-items-container.components-toolbar-show-decorators
81
+ .components-toolbar-item-container.components-horizontal.components-toolbar-button-add-gap-before::before {
82
+ width: $components-desktop-separator-thickness;
83
+ background-color: $separator-color;
84
+ left: $components-desktop-separator-center-offset;
85
+ }
86
+
87
+ .components-toolbar-item-container.components-vertical.components-toolbar-button-add-gap-before {
88
+ margin-top: $components-desktop-separator-gap-between-toolbar-items;
89
+ }
90
+
91
+ div.components-toolbar-items-container.components-toolbar-show-decorators
92
+ .components-toolbar-item-container.components-vertical.components-toolbar-button-add-gap-before::before {
93
+ height: $components-desktop-separator-thickness;
94
+ background-color: $separator-color;
95
+ top: $components-desktop-separator-center-offset;
96
+ }
@@ -0,0 +1,57 @@
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/z-index" as *;
6
+ @use "variables" as *;
7
+
8
+ .components-toolbar-button-item.components-ellipsis-icon {
9
+ position: relative;
10
+ $ellipsis-size: 4px;
11
+ $ellipsis-spacing: 8px;
12
+
13
+ > .components-icon {
14
+ .components-ellipsis {
15
+ position: relative;
16
+ width: $ellipsis-size;
17
+ height: $ellipsis-size;
18
+ border-radius: 50%;
19
+ background-color: currentColor;
20
+ }
21
+
22
+ .components-ellipsis:before {
23
+ content: "";
24
+ position: absolute;
25
+ left: -$ellipsis-spacing;
26
+ width: $ellipsis-size;
27
+ height: $ellipsis-size;
28
+ border-radius: 50%;
29
+ background-color: currentColor;
30
+ }
31
+
32
+ .components-ellipsis:after {
33
+ content: "";
34
+ position: absolute;
35
+ left: $ellipsis-spacing;
36
+ width: $ellipsis-size;
37
+ height: $ellipsis-size;
38
+ border-radius: 50%;
39
+ background-color: currentColor;
40
+ }
41
+ }
42
+ }
43
+
44
+ .components-toolbar-overflow_popup {
45
+ border: none;
46
+ background: none;
47
+
48
+ @include uicore-z-index(toolbar-panels);
49
+
50
+ transition: visibility var(--iui-duration-2) ease,
51
+ opacity var(--iui-duration-2) ease;
52
+
53
+ &.nz-hidden {
54
+ opacity: 0;
55
+ visibility: hidden;
56
+ }
57
+ }
@@ -0,0 +1,37 @@
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 "variables" as *;
6
+
7
+ .components-toolbar-overflow-panel {
8
+ background: var(--iui-color-background);
9
+ border-radius: var(--iui-border-radius-1);
10
+ display: flex;
11
+ height: unset;
12
+ width: fit-content;
13
+ padding: unset;
14
+
15
+ &.components-vertical-components-direction-bottom {
16
+ right: -$components-items-border-width;
17
+ flex-direction: column;
18
+ top: 100%;
19
+ }
20
+
21
+ &.components-vertical-components-direction-top {
22
+ right: -$components-items-border-width;
23
+ flex-direction: column;
24
+ bottom: 100%;
25
+ }
26
+
27
+ &.components-horizontal-components-direction-right {
28
+ left: 100%;
29
+ bottom: -$components-items-border-width;
30
+ flex-direction: row;
31
+ }
32
+ &.components-horizontal-components-direction-left {
33
+ right: 100%;
34
+ bottom: -$components-items-border-width;
35
+ flex-direction: row;
36
+ }
37
+ }
@@ -0,0 +1,81 @@
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/z-index" as *;
6
+ @use "~@itwin/core-react/lib/core-react/geometry" as *;
7
+ @use "variables" as *;
8
+
9
+ .components-toolbar-expandable-button {
10
+ $triangle-width: 4px;
11
+ $triangle-height: $triangle-width;
12
+ $shadow-vertical-offset: 1px;
13
+ $margin-from-triangle-to-stroke: 3px;
14
+ $arrow-shadow: $icon-shadow;
15
+ position: relative;
16
+
17
+ > .components-triangle {
18
+ border-radius: 0;
19
+ position: absolute;
20
+ right: $margin-from-triangle-to-stroke;
21
+ bottom: $margin-from-triangle-to-stroke;
22
+ filter: $arrow-shadow;
23
+ pointer-events: none;
24
+
25
+ @include triangle-bottom-right(
26
+ $width: $triangle-width,
27
+ $height: $triangle-height,
28
+ $color: var(--iui-color-text)
29
+ );
30
+ }
31
+
32
+ &:active > .components-triangle {
33
+ filter: $no-shadow;
34
+
35
+ @include triangle-bottom-right-color($pressed-icon-color);
36
+ }
37
+
38
+ &.components-active {
39
+ &:not(:active):not(.components-disabled) {
40
+ > .components-triangle {
41
+ filter: $no-shadow;
42
+
43
+ @include triangle-bottom-right-color($active-icon-color);
44
+ }
45
+ }
46
+ }
47
+
48
+ &.components-disabled {
49
+ > .components-triangle {
50
+ @include triangle-bottom-right-color($disabled-icon-color);
51
+ }
52
+ }
53
+
54
+ &.components-disabled-drag {
55
+ > .components-icon {
56
+ color: $disabled-icon-color;
57
+ }
58
+
59
+ > .components-triangle {
60
+ @include triangle-bottom-right-color($disabled-icon-color);
61
+ }
62
+ }
63
+ }
64
+
65
+ .components-toolbar-popupItem_popupItemPopup {
66
+ @include uicore-z-index(toolbar-panels);
67
+ width: fit-content;
68
+ background: var(--iui-color-background);
69
+ border-color: var(--iui-color-background-disabled);
70
+ border-width: 1px;
71
+ border-style: solid;
72
+ border-radius: var(--iui-border-radius-1);
73
+
74
+ transition: visibility var(--iui-duration-2) ease,
75
+ opacity var(--iui-duration-2) ease;
76
+
77
+ &.nz-hidden {
78
+ opacity: 0;
79
+ visibility: hidden;
80
+ }
81
+ }
@@ -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-toolbar-overflow-sizer {
6
+ display: inline-block;
7
+ position: relative;
8
+
9
+ &.components-horizontal {
10
+ width: 100%;
11
+ }
12
+
13
+ &.components-vertical {
14
+ height: 100%;
15
+ }
16
+ }
@@ -0,0 +1,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
+ @forward "~@itwin/core-react/lib/core-react/style/breakpoints";
6
+
7
+ $components-desktop-item-width: 40px;
8
+ $components-desktop-item-height: 40px;
9
+
10
+ $components-items-border-width: 1px;
11
+ $components-desktop-space-between-toolbar-items: 1px;
12
+ $components-desktop-separator-gap-between-toolbar-items: 5px;
13
+ $components-desktop-separator-thickness: 1px;
14
+ $components-desktop-separator-center-offset: -3px;
15
+
16
+ $components-desktop-toolbar-width: 40px;
17
+ $components-desktop-toolbar-height: 40px;
18
+
19
+ $desktop-tool-stripe-width: 2px;
20
+ $desktop-tool-stripe-height: 30px;
21
+
22
+ $font-size: var(--iui-font-size-1);
23
+ $icon-size: 16px;
24
+ $icon-color: var(--iui-color-icon);
25
+ $hovered-icon-color: var(--iui-color-icon-hover);
26
+ $pressed-icon-color: var(--iui-color-text);
27
+ $active-icon-color: var(--iui-color-icon-accent);
28
+ $disabled-icon-color: var(--iui-color-icon-disabled);
29
+ $icon-shadow-color: hsl(var(--iui-color-background-hsl) / var(--iui-opacity-2));
30
+ $icon-shadow: drop-shadow(0 1px 0 $icon-shadow-color);
31
+ $no-shadow: drop-shadow(0 0 0 transparent);
32
+
33
+ $desktop-tool-stripe-width: 2px;
34
+ $desktop-tool-stripe-height: 30px;
@@ -0,0 +1,44 @@
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 "sass:math";
6
+ @use "../../target" as *;
7
+ @use "variables" as *;
8
+
9
+ .components-toolbar-item-expandable-group-backArrow {
10
+ $border: solid $back-arrow-thickness currentColor;
11
+ $size: math.sqrt($back-arrow-size-val * $back-arrow-size-val * 8) * 0.5 + px;
12
+
13
+ width: 15px;
14
+ height: 20px;
15
+
16
+ @include components-internal-targeted {
17
+ cursor: pointer;
18
+
19
+ &:after {
20
+ color: var(--iui-color-text-accent);
21
+ }
22
+ }
23
+
24
+ &:after {
25
+ content: "";
26
+ display: block;
27
+ position: relative;
28
+ left: 3px;
29
+ top: 3px;
30
+ color: var(--iui-color-text);
31
+ width: $size;
32
+ height: $size;
33
+ border-top: $border;
34
+ border-left: $border;
35
+ margin-left: $back-arrow-thickness;
36
+ margin-top: $back-arrow-thickness;
37
+ box-sizing: border-box;
38
+ transform: rotate(-45deg);
39
+ }
40
+
41
+ &:focus {
42
+ outline: none;
43
+ }
44
+ }
@@ -0,0 +1,9 @@
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-toolbar-item-expandable-group-column {
6
+ > *:not(:last-child) {
7
+ margin-bottom: 9px;
8
+ }
9
+ }
@@ -0,0 +1,10 @@
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-toolbar-item-expandable-group-columns {
6
+ display: grid;
7
+ grid-auto-columns: 1fr;
8
+ grid-gap: 12px;
9
+ grid-auto-flow: column;
10
+ }
@@ -0,0 +1,15 @@
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 "variables" as *;
6
+
7
+ .components-toolbar-item-expandable-group-panel {
8
+ line-height: normal;
9
+ background: var(--iui-color-background);
10
+ padding: 8px;
11
+ border-radius: var(--iui-border-radius-1);
12
+ pointer-events: auto;
13
+ border: 1px solid var(--iui-color-border);
14
+ font-size: $font-size;
15
+ }
@@ -0,0 +1,33 @@
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 "variables" as *;
6
+
7
+ .components-toolbar-item-expandable-group-title {
8
+ white-space: nowrap;
9
+ text-align: center;
10
+ color: var(--iui-color-text);
11
+ margin-bottom: 9px;
12
+ margin-left: $title-horizontal-margin;
13
+ margin-right: $title-horizontal-margin;
14
+
15
+ @include title;
16
+ }
17
+
18
+ .components-toolbar-item-expandable-group-nested {
19
+ position: relative;
20
+
21
+ .components-back {
22
+ position: absolute;
23
+ left: 10px;
24
+ top: 8px;
25
+ }
26
+
27
+ > .components-toolbar-item-expandable-group-title {
28
+ /* Contributes to space available for back arrow */
29
+ min-height: 14px;
30
+ margin-left: $title-horizontal-back-arrow-margin;
31
+ margin-right: $title-horizontal-back-arrow-margin;
32
+ }
33
+ }
@@ -0,0 +1,17 @@
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
+ @forward "~@itwin/core-react/lib/core-react/style/themecolors";
6
+ @forward "~@itwin/core-react/lib/core-react/typography";
7
+ @forward "../variables";
8
+
9
+ $panel-padding-left: 16px;
10
+ $panel-padding-right: 8px;
11
+ $panel-padding-top: $panel-padding-right;
12
+ $panel-padding-bottom: 12px;
13
+ $title-color: var(--iui-color-text);
14
+ $back-arrow-thickness: 2px;
15
+ $back-arrow-size-val: 6;
16
+ $title-horizontal-margin: 20px;
17
+ $title-horizontal-back-arrow-margin: 28px;
@@ -0,0 +1,30 @@
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 "sass:math";
6
+ @use "variables" as *;
7
+
8
+ .components-toolbar-item-expandable-group-tool-expander {
9
+ > .components-expansion-indicator {
10
+ $border: solid $expander-arrow-thickness currentColor;
11
+ $size: math.sqrt($expander-arrow-size-val * $expander-arrow-size-val * 8) *
12
+ 0.5 + px;
13
+
14
+ width: $size;
15
+ height: $size;
16
+ border-top: $border;
17
+ border-left: $border;
18
+ margin-left: $expander-arrow-thickness;
19
+ margin-top: $expander-arrow-thickness;
20
+ margin-right: $space-after-expander;
21
+ box-sizing: border-box;
22
+ transform: rotate(135deg);
23
+ }
24
+
25
+ &:active:not(.components-disabled) {
26
+ > .components-expansion-indicator {
27
+ filter: $no-shadow;
28
+ }
29
+ }
30
+ }
@@ -0,0 +1,117 @@
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/typography" as *;
6
+ @use "../../../target" as *;
7
+ @use "variables" as *;
8
+
9
+ .components-toolbar-item-expandable-group-tool-item {
10
+ $item-height: 32px;
11
+ $item-border-width: 2px;
12
+ $active-tool-stripe-height: 22px;
13
+ $active-tool-stripe-width: 2px;
14
+ $icon-size: 16px;
15
+ $space-between-icon-and-label: 32px - 16px;
16
+
17
+ white-space: nowrap;
18
+ height: $item-height;
19
+ color: var(--iui-color-text);
20
+ cursor: pointer;
21
+ border-radius: var(--iui-border-radius-1);
22
+ display: flex;
23
+ align-items: center;
24
+
25
+ @include body1;
26
+
27
+ @mixin components-active-tool {
28
+ &:not(.components-disabled) {
29
+ background: var(--iui-color-background-hover);
30
+ color: var(--iui-color-text-accent-hover);
31
+ }
32
+ }
33
+
34
+ > .components-icon {
35
+ width: $icon-size;
36
+ height: $icon-size;
37
+ display: inline-block;
38
+ margin-right: $space-between-icon-and-label;
39
+ margin-left: 8px;
40
+ position: relative;
41
+
42
+ > .components-badge {
43
+ position: absolute;
44
+ top: -8px;
45
+ left: -8px;
46
+ }
47
+ }
48
+
49
+ > .components-label {
50
+ display: inline-block;
51
+ margin-right: $space-after-label;
52
+ line-height: $item-height;
53
+
54
+ &:after {
55
+ display: block;
56
+ content: attr(title);
57
+ font-weight: bold;
58
+ height: 1px;
59
+ color: transparent;
60
+ overflow: hidden;
61
+ visibility: hidden;
62
+ }
63
+ }
64
+
65
+ @include components-internal-targeted {
66
+ &:not(.components-disabled) {
67
+ color: var(--iui-color-text-hover);
68
+
69
+ @include body1;
70
+ }
71
+ }
72
+
73
+ &:active {
74
+ @include components-active-tool;
75
+ }
76
+
77
+ &:focus {
78
+ outline: none;
79
+ }
80
+
81
+ &.components-pointer-up {
82
+ @include components-internal-targeted {
83
+ @include components-active-tool;
84
+ }
85
+ }
86
+
87
+ &.components-focused:not(.components-disabled) {
88
+ color: var(--iui-color-text-accent);
89
+ border-color: var(--iui-color-border-accent);
90
+ border-width: $item-border-width;
91
+ border-style: solid;
92
+
93
+ @include body1;
94
+ }
95
+
96
+ &.components-active:not(.components-disabled) {
97
+ color: var(--iui-color-text-accent);
98
+
99
+ @include body1;
100
+
101
+ &::before {
102
+ content: "";
103
+ background-color: var(--iui-color-border-accent);
104
+ display: block;
105
+ position: relative;
106
+ top: 0;
107
+ left: $item-border-width + 1;
108
+ width: $active-tool-stripe-width;
109
+ height: $active-tool-stripe-height;
110
+ border-radius: 2px;
111
+ }
112
+ }
113
+
114
+ &.components-disabled {
115
+ color: var(--iui-color-text-disabled);
116
+ }
117
+ }
@@ -0,0 +1,15 @@
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
+ @forward "~@itwin/core-react/lib/core-react/style/themecolors";
6
+
7
+ $no-shadow: none;
8
+ $shadow: drop-shadow(
9
+ 0 1px 0 hsl(var(--iui-color-background-hsl) / var(--iui-opacity-2))
10
+ );
11
+ $space-after-label: 16px;
12
+
13
+ $expander-arrow-thickness: 2px;
14
+ $expander-arrow-size-val: 6;
15
+ $space-after-expander: 10px;
@@ -0,0 +1,8 @@
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-activehighlight {
7
+ background-color: orange;
8
+ }