cx 25.6.2 → 25.6.3

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 (103) hide show
  1. package/dist/manifest.js +749 -749
  2. package/dist/widgets.css +5 -0
  3. package/dist/widgets.js +77 -34
  4. package/package.json +1 -1
  5. package/src/charts/Legend.d.ts +45 -45
  6. package/src/charts/LegendEntry.js +128 -128
  7. package/src/charts/LegendEntry.scss +27 -27
  8. package/src/charts/PieChart.d.ts +92 -92
  9. package/src/charts/RangeMarker.js +159 -159
  10. package/src/charts/axis/Axis.d.ts +113 -113
  11. package/src/charts/axis/Axis.js +280 -280
  12. package/src/charts/axis/CategoryAxis.d.ts +30 -30
  13. package/src/charts/axis/CategoryAxis.js +241 -241
  14. package/src/charts/axis/NumericAxis.js +351 -351
  15. package/src/charts/axis/Stack.js +55 -55
  16. package/src/charts/axis/TimeAxis.js +611 -611
  17. package/src/charts/helpers/SnapPointFinder.js +69 -69
  18. package/src/data/Binding.spec.js +69 -69
  19. package/src/data/ExposedValueView.d.ts +19 -19
  20. package/src/data/Expression.js +229 -229
  21. package/src/data/Expression.spec.js +229 -229
  22. package/src/data/StringTemplate.js +92 -92
  23. package/src/data/StringTemplate.spec.js +132 -132
  24. package/src/data/StructuredSelector.js +132 -132
  25. package/src/data/getAccessor.spec.js +11 -11
  26. package/src/data/getSelector.js +49 -49
  27. package/src/hooks/createLocalStorageRef.d.ts +3 -3
  28. package/src/hooks/createLocalStorageRef.js +20 -20
  29. package/src/index.scss +6 -6
  30. package/src/ui/Culture.d.ts +57 -57
  31. package/src/ui/Culture.js +139 -139
  32. package/src/ui/FocusManager.js +171 -171
  33. package/src/ui/Format.js +108 -108
  34. package/src/ui/HoverSync.js +147 -147
  35. package/src/ui/Repeater.d.ts +61 -61
  36. package/src/ui/index.d.ts +42 -42
  37. package/src/ui/layout/ContentPlaceholder.d.ts +19 -19
  38. package/src/ui/layout/ContentPlaceholder.js +105 -105
  39. package/src/ui/layout/ContentPlaceholder.spec.js +579 -579
  40. package/src/ui/layout/LabelsTopLayout.js +134 -134
  41. package/src/util/Format.js +270 -270
  42. package/src/util/date/encodeDate.d.ts +1 -1
  43. package/src/util/date/encodeDate.js +8 -8
  44. package/src/util/date/encodeDateWithTimezoneOffset.d.ts +1 -1
  45. package/src/util/date/index.d.ts +11 -11
  46. package/src/util/date/index.js +11 -11
  47. package/src/util/date/parseDateInvariant.d.ts +3 -3
  48. package/src/util/date/parseDateInvariant.js +20 -20
  49. package/src/util/getSearchQueryPredicate.js +59 -59
  50. package/src/util/index.d.ts +51 -51
  51. package/src/util/index.js +54 -54
  52. package/src/util/isValidIdentifierName.d.ts +1 -1
  53. package/src/util/isValidIdentifierName.js +5 -5
  54. package/src/util/isValidIdentifierName.spec.js +33 -33
  55. package/src/util/scss/add-rules.scss +38 -38
  56. package/src/widgets/CxCredit.scss +37 -37
  57. package/src/widgets/HighlightedSearchText.js +36 -36
  58. package/src/widgets/HighlightedSearchText.scss +18 -18
  59. package/src/widgets/List.scss +91 -91
  60. package/src/widgets/Sandbox.d.ts +18 -16
  61. package/src/widgets/Sandbox.js +65 -63
  62. package/src/widgets/drag-drop/DropZone.js +214 -214
  63. package/src/widgets/form/Calendar.js +618 -618
  64. package/src/widgets/form/Calendar.scss +196 -196
  65. package/src/widgets/form/Checkbox.scss +127 -127
  66. package/src/widgets/form/ColorField.js +397 -397
  67. package/src/widgets/form/ColorField.scss +96 -96
  68. package/src/widgets/form/ColorPicker.scss +283 -283
  69. package/src/widgets/form/DateTimeField.js +576 -576
  70. package/src/widgets/form/DateTimePicker.js +392 -392
  71. package/src/widgets/form/LookupField.d.ts +179 -179
  72. package/src/widgets/form/LookupField.scss +219 -219
  73. package/src/widgets/form/MonthPicker.d.ts +8 -0
  74. package/src/widgets/form/MonthPicker.js +65 -23
  75. package/src/widgets/form/MonthPicker.scss +4 -0
  76. package/src/widgets/form/NumberField.js +459 -459
  77. package/src/widgets/form/NumberField.scss +61 -61
  78. package/src/widgets/form/Radio.scss +121 -121
  79. package/src/widgets/form/Select.scss +99 -99
  80. package/src/widgets/form/Slider.scss +118 -118
  81. package/src/widgets/form/Switch.scss +140 -140
  82. package/src/widgets/form/TextArea.scss +43 -43
  83. package/src/widgets/form/TextField.js +290 -290
  84. package/src/widgets/form/TextField.scss +55 -55
  85. package/src/widgets/form/UploadButton.d.ts +34 -34
  86. package/src/widgets/form/variables.scss +353 -353
  87. package/src/widgets/grid/Grid.d.ts +442 -442
  88. package/src/widgets/grid/GridRow.js +228 -228
  89. package/src/widgets/grid/TreeNode.d.ts +23 -23
  90. package/src/widgets/grid/TreeNode.scss +88 -88
  91. package/src/widgets/grid/variables.scss +133 -133
  92. package/src/widgets/nav/LinkButton.js +128 -128
  93. package/src/widgets/nav/Menu.scss +74 -74
  94. package/src/widgets/overlay/Dropdown.js +612 -612
  95. package/src/widgets/overlay/FlyweightTooltipTracker.js +39 -39
  96. package/src/widgets/overlay/Overlay.d.ts +73 -73
  97. package/src/widgets/overlay/Window.js +202 -202
  98. package/src/widgets/overlay/captureMouse.js +124 -124
  99. package/src/widgets/overlay/createHotPromiseWindowFactory.d.ts +18 -18
  100. package/src/widgets/overlay/createHotPromiseWindowFactory.js +56 -56
  101. package/src/widgets/overlay/index.d.ts +11 -11
  102. package/src/widgets/overlay/index.js +11 -11
  103. package/src/widgets/variables.scss +144 -144
@@ -1,118 +1,118 @@
1
- @mixin cx-slider(
2
- $name: "slider",
3
- $state-style-map: $cx-input-state-style-map,
4
- $styles: $cx-slider-handle-styles,
5
- $width: $cx-default-input-width,
6
- $size: $cx-default-slider-handle-size,
7
- $axis-size: $cx-default-slider-axis-size,
8
- $axis-background-color: $cx-default-slider-axis-background-color,
9
- $range-background-color: $cx-default-slider-range-background-color,
10
- $besm: $cx-besm
11
- ) {
12
- $block: map-get($besm, block);
13
- $element: map-get($besm, element);
14
- $state: map-get($besm, state);
15
-
16
- .#{$block}#{$name} {
17
- width: $width;
18
- user-select: none;
19
-
20
- @include cxb-field($besm, $state-style-map, $input: false, $box: true);
21
-
22
- &.#{$state}vertical {
23
- width: 28px;
24
- height: $width;
25
- }
26
-
27
- &.#{$state}disabled {
28
- pointer-events: none;
29
- opacity: 0.5;
30
- }
31
- }
32
-
33
- .#{$element}#{$name}-axis {
34
- position: absolute;
35
- background-color: $axis-background-color;
36
- border-radius: $size * 0.5;
37
- box-sizing: border-box;
38
-
39
- .#{$block}#{$name}.#{$state}horizontal & {
40
- left: $size * 0.5;
41
- right: $size * 0.5;
42
- top: calc(50% - #{$axis-size * 0.5});
43
- height: $axis-size;
44
- padding: 0 $axis-size * 0.5;
45
- }
46
-
47
- .#{$block}#{$name}.#{$state}vertical & {
48
- top: $size * 0.5;
49
- bottom: $size * 0.5;
50
- width: $axis-size;
51
- left: calc(50% - #{$axis-size * 0.5});
52
- padding: $axis-size * 0.5 0;
53
- }
54
- }
55
-
56
- .#{$element}#{$name}-space {
57
- position: relative;
58
- width: 100%;
59
- height: 100%;
60
- }
61
-
62
- .#{$element}#{$name}-range {
63
- position: absolute;
64
-
65
- background-color: $range-background-color;
66
- border-radius: $axis-size * 0.5;
67
-
68
- .#{$block}#{$name}.#{$state}horizontal & {
69
- height: 100%;
70
- }
71
-
72
- .#{$block}#{$name}.#{$state}vertical & {
73
- width: 100%;
74
- }
75
- }
76
-
77
- .#{$element}#{$name}-handle {
78
- position: absolute;
79
- box-sizing: border-box;
80
- width: $size;
81
- height: $size;
82
- margin-left: -$size * 0.5;
83
- margin-top: -$size * 0.5;
84
- margin-bottom: -$size * 0.5;
85
- touch-action: none;
86
-
87
- @include cx-add-state-rules($styles, default);
88
-
89
- .#{$block}#{$name}.#{$state}horizontal & {
90
- left: 0;
91
- top: 50%;
92
- }
93
-
94
- .#{$block}#{$name}.#{$state}vertical & {
95
- left: 50%;
96
- }
97
-
98
- &:hover {
99
- @include cx-add-state-rules($styles, hover);
100
- }
101
-
102
- &:focus {
103
- @include cx-add-state-rules($styles, focus);
104
- }
105
-
106
- &[disabled] {
107
- @include cx-add-state-rules($styles, disabled);
108
- }
109
-
110
- &:active {
111
- @include cx-add-state-rules($styles, active);
112
- }
113
- }
114
- }
115
-
116
- @if (cx-should-include("cx/widgets/Slider")) {
117
- @include cx-slider();
118
- }
1
+ @mixin cx-slider(
2
+ $name: "slider",
3
+ $state-style-map: $cx-input-state-style-map,
4
+ $styles: $cx-slider-handle-styles,
5
+ $width: $cx-default-input-width,
6
+ $size: $cx-default-slider-handle-size,
7
+ $axis-size: $cx-default-slider-axis-size,
8
+ $axis-background-color: $cx-default-slider-axis-background-color,
9
+ $range-background-color: $cx-default-slider-range-background-color,
10
+ $besm: $cx-besm
11
+ ) {
12
+ $block: map-get($besm, block);
13
+ $element: map-get($besm, element);
14
+ $state: map-get($besm, state);
15
+
16
+ .#{$block}#{$name} {
17
+ width: $width;
18
+ user-select: none;
19
+
20
+ @include cxb-field($besm, $state-style-map, $input: false, $box: true);
21
+
22
+ &.#{$state}vertical {
23
+ width: 28px;
24
+ height: $width;
25
+ }
26
+
27
+ &.#{$state}disabled {
28
+ pointer-events: none;
29
+ opacity: 0.5;
30
+ }
31
+ }
32
+
33
+ .#{$element}#{$name}-axis {
34
+ position: absolute;
35
+ background-color: $axis-background-color;
36
+ border-radius: $size * 0.5;
37
+ box-sizing: border-box;
38
+
39
+ .#{$block}#{$name}.#{$state}horizontal & {
40
+ left: $size * 0.5;
41
+ right: $size * 0.5;
42
+ top: calc(50% - #{$axis-size * 0.5});
43
+ height: $axis-size;
44
+ padding: 0 $axis-size * 0.5;
45
+ }
46
+
47
+ .#{$block}#{$name}.#{$state}vertical & {
48
+ top: $size * 0.5;
49
+ bottom: $size * 0.5;
50
+ width: $axis-size;
51
+ left: calc(50% - #{$axis-size * 0.5});
52
+ padding: $axis-size * 0.5 0;
53
+ }
54
+ }
55
+
56
+ .#{$element}#{$name}-space {
57
+ position: relative;
58
+ width: 100%;
59
+ height: 100%;
60
+ }
61
+
62
+ .#{$element}#{$name}-range {
63
+ position: absolute;
64
+
65
+ background-color: $range-background-color;
66
+ border-radius: $axis-size * 0.5;
67
+
68
+ .#{$block}#{$name}.#{$state}horizontal & {
69
+ height: 100%;
70
+ }
71
+
72
+ .#{$block}#{$name}.#{$state}vertical & {
73
+ width: 100%;
74
+ }
75
+ }
76
+
77
+ .#{$element}#{$name}-handle {
78
+ position: absolute;
79
+ box-sizing: border-box;
80
+ width: $size;
81
+ height: $size;
82
+ margin-left: -$size * 0.5;
83
+ margin-top: -$size * 0.5;
84
+ margin-bottom: -$size * 0.5;
85
+ touch-action: none;
86
+
87
+ @include cx-add-state-rules($styles, default);
88
+
89
+ .#{$block}#{$name}.#{$state}horizontal & {
90
+ left: 0;
91
+ top: 50%;
92
+ }
93
+
94
+ .#{$block}#{$name}.#{$state}vertical & {
95
+ left: 50%;
96
+ }
97
+
98
+ &:hover {
99
+ @include cx-add-state-rules($styles, hover);
100
+ }
101
+
102
+ &:focus {
103
+ @include cx-add-state-rules($styles, focus);
104
+ }
105
+
106
+ &[disabled] {
107
+ @include cx-add-state-rules($styles, disabled);
108
+ }
109
+
110
+ &:active {
111
+ @include cx-add-state-rules($styles, active);
112
+ }
113
+ }
114
+ }
115
+
116
+ @if (cx-should-include("cx/widgets/Slider")) {
117
+ @include cx-slider();
118
+ }
@@ -1,140 +1,140 @@
1
- @mixin cx-switch(
2
- $name: "switch",
3
- $state-style-map: $cx-input-state-style-map,
4
- $styles: $cx-switch-handle-styles,
5
- $width: $cx-default-switch-width,
6
- $handle-size: $cx-default-switch-handle-size,
7
- $axis-size: $cx-default-switch-axis-size,
8
- $axis-background-color: $cx-default-switch-axis-background-color,
9
- $range-background-color: $cx-default-switch-range-background-color,
10
- $empty-text: $cx-empty-text,
11
- $besm: $cx-besm
12
- ) {
13
- $block: map-get($besm, block);
14
- $element: map-get($besm, element);
15
- $state: map-get($besm, state);
16
-
17
- $padding: cx-get-state-rule($state-style-map, default, padding);
18
- $border-width: cx-get-state-rule($state-style-map, default, border-width);
19
-
20
- $outer-styles: cx-deep-map-merge(
21
- $state-style-map,
22
- (
23
- default: (
24
- border-width: cx-top($border-width) 0 cx-bottom($border-width) 0,
25
- padding: cx-top($padding) 0 cx-bottom($padding) 0,
26
- ),
27
- )
28
- );
29
-
30
- .#{$block}#{$name} {
31
- cursor: pointer;
32
- min-width: cx-calc($width, $handle-size);
33
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
34
-
35
- @include cxb-field($besm, $outer-styles, $input: false, $box: true);
36
-
37
- &.#{$state}disabled {
38
- pointer-events: none;
39
- opacity: 0.5;
40
- }
41
-
42
- &:focus {
43
- outline: none;
44
- }
45
- }
46
-
47
- .#{$element}#{$name}-text {
48
- display: inline-block;
49
- margin-left: cx-calc($width, $handle-size);
50
- padding: 0 cx-right($padding) 0 cx-left($padding);
51
- }
52
-
53
- .#{$element}#{$name}-empty-text {
54
- @include cxe-field-empty-text($empty-text);
55
- }
56
-
57
- .#{$element}#{$name}-axis {
58
- user-select: none;
59
- position: absolute;
60
- background-color: $axis-background-color;
61
- border-radius: $axis-size * 0.5;
62
- box-sizing: border-box;
63
- width: $width;
64
-
65
- left: $handle-size * 0.5;
66
- right: $handle-size * 0.5;
67
- top: calc(50% - #{$axis-size * 0.5});
68
- height: $axis-size;
69
- padding: 0 $axis-size * 0.5;
70
- }
71
-
72
- .#{$element}#{$name}-space {
73
- position: relative;
74
- box-sizing: border-box;
75
- width: 100%;
76
- height: 100%;
77
- }
78
-
79
- .#{$element}#{$name}-range {
80
- position: absolute;
81
- background-color: $range-background-color;
82
- border-radius: $axis-size * 0.5;
83
- height: 100%;
84
- left: 0;
85
- width: 0;
86
- opacity: 0;
87
- transform: scale(0);
88
-
89
- transition: all 200ms;
90
-
91
- .#{$state}on & {
92
- width: 100%;
93
- opacity: 1;
94
- transform: none;
95
- }
96
- }
97
-
98
- .#{$element}#{$name}-handle {
99
- position: absolute;
100
- box-sizing: border-box;
101
- width: $handle-size;
102
- height: $handle-size;
103
- margin-left: -$handle-size * 0.5;
104
- margin-top: -$handle-size * 0.5;
105
- left: 0;
106
- top: 50%;
107
- transition: left 200ms;
108
-
109
- @include cx-add-state-rules($styles, default);
110
-
111
- .#{$state}on & {
112
- left: 100%;
113
- @include cx-add-state-rules($styles, on);
114
- }
115
-
116
- .#{$state}on:active & {
117
- @include cx-add-state-rules($styles, on-active);
118
- }
119
-
120
- &:hover {
121
- @include cx-add-state-rules($styles, hover);
122
- }
123
-
124
- .#{$block}#{$name}:focus & {
125
- @include cx-add-state-rules($styles, focus);
126
- }
127
-
128
- .#{$block}#{$name}.#{$state}disabled & {
129
- @include cx-add-state-rules($styles, disabled);
130
- }
131
-
132
- &:active {
133
- @include cx-add-state-rules($styles, active);
134
- }
135
- }
136
- }
137
-
138
- @if (cx-should-include("cx/widgets/Switch")) {
139
- @include cx-switch();
140
- }
1
+ @mixin cx-switch(
2
+ $name: "switch",
3
+ $state-style-map: $cx-input-state-style-map,
4
+ $styles: $cx-switch-handle-styles,
5
+ $width: $cx-default-switch-width,
6
+ $handle-size: $cx-default-switch-handle-size,
7
+ $axis-size: $cx-default-switch-axis-size,
8
+ $axis-background-color: $cx-default-switch-axis-background-color,
9
+ $range-background-color: $cx-default-switch-range-background-color,
10
+ $empty-text: $cx-empty-text,
11
+ $besm: $cx-besm
12
+ ) {
13
+ $block: map-get($besm, block);
14
+ $element: map-get($besm, element);
15
+ $state: map-get($besm, state);
16
+
17
+ $padding: cx-get-state-rule($state-style-map, default, padding);
18
+ $border-width: cx-get-state-rule($state-style-map, default, border-width);
19
+
20
+ $outer-styles: cx-deep-map-merge(
21
+ $state-style-map,
22
+ (
23
+ default: (
24
+ border-width: cx-top($border-width) 0 cx-bottom($border-width) 0,
25
+ padding: cx-top($padding) 0 cx-bottom($padding) 0,
26
+ ),
27
+ )
28
+ );
29
+
30
+ .#{$block}#{$name} {
31
+ cursor: pointer;
32
+ min-width: cx-calc($width, $handle-size);
33
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
34
+
35
+ @include cxb-field($besm, $outer-styles, $input: false, $box: true);
36
+
37
+ &.#{$state}disabled {
38
+ pointer-events: none;
39
+ opacity: 0.5;
40
+ }
41
+
42
+ &:focus {
43
+ outline: none;
44
+ }
45
+ }
46
+
47
+ .#{$element}#{$name}-text {
48
+ display: inline-block;
49
+ margin-left: cx-calc($width, $handle-size);
50
+ padding: 0 cx-right($padding) 0 cx-left($padding);
51
+ }
52
+
53
+ .#{$element}#{$name}-empty-text {
54
+ @include cxe-field-empty-text($empty-text);
55
+ }
56
+
57
+ .#{$element}#{$name}-axis {
58
+ user-select: none;
59
+ position: absolute;
60
+ background-color: $axis-background-color;
61
+ border-radius: $axis-size * 0.5;
62
+ box-sizing: border-box;
63
+ width: $width;
64
+
65
+ left: $handle-size * 0.5;
66
+ right: $handle-size * 0.5;
67
+ top: calc(50% - #{$axis-size * 0.5});
68
+ height: $axis-size;
69
+ padding: 0 $axis-size * 0.5;
70
+ }
71
+
72
+ .#{$element}#{$name}-space {
73
+ position: relative;
74
+ box-sizing: border-box;
75
+ width: 100%;
76
+ height: 100%;
77
+ }
78
+
79
+ .#{$element}#{$name}-range {
80
+ position: absolute;
81
+ background-color: $range-background-color;
82
+ border-radius: $axis-size * 0.5;
83
+ height: 100%;
84
+ left: 0;
85
+ width: 0;
86
+ opacity: 0;
87
+ transform: scale(0);
88
+
89
+ transition: all 200ms;
90
+
91
+ .#{$state}on & {
92
+ width: 100%;
93
+ opacity: 1;
94
+ transform: none;
95
+ }
96
+ }
97
+
98
+ .#{$element}#{$name}-handle {
99
+ position: absolute;
100
+ box-sizing: border-box;
101
+ width: $handle-size;
102
+ height: $handle-size;
103
+ margin-left: -$handle-size * 0.5;
104
+ margin-top: -$handle-size * 0.5;
105
+ left: 0;
106
+ top: 50%;
107
+ transition: left 200ms;
108
+
109
+ @include cx-add-state-rules($styles, default);
110
+
111
+ .#{$state}on & {
112
+ left: 100%;
113
+ @include cx-add-state-rules($styles, on);
114
+ }
115
+
116
+ .#{$state}on:active & {
117
+ @include cx-add-state-rules($styles, on-active);
118
+ }
119
+
120
+ &:hover {
121
+ @include cx-add-state-rules($styles, hover);
122
+ }
123
+
124
+ .#{$block}#{$name}:focus & {
125
+ @include cx-add-state-rules($styles, focus);
126
+ }
127
+
128
+ .#{$block}#{$name}.#{$state}disabled & {
129
+ @include cx-add-state-rules($styles, disabled);
130
+ }
131
+
132
+ &:active {
133
+ @include cx-add-state-rules($styles, active);
134
+ }
135
+ }
136
+ }
137
+
138
+ @if (cx-should-include("cx/widgets/Switch")) {
139
+ @include cx-switch();
140
+ }
@@ -1,43 +1,43 @@
1
- @mixin cx-textarea(
2
- $name: "textarea",
3
- $state-style-map: $cx-textarea-state-style-map,
4
- $placeholder: $cx-input-placeholder,
5
- $empty-text: $cx-empty-text,
6
- $tool-state-style-map: $cx-input-right-icon-state-style-map,
7
- $icon-size: $cx-default-input-icon-size,
8
- $width: $cx-default-textarea-width,
9
- $besm: $cx-besm
10
- ) {
11
- $block: map-get($besm, block);
12
- $element: map-get($besm, element);
13
- $state: map-get($besm, state);
14
- $mod: map-get($besm, mod);
15
-
16
- .#{$block}#{$name} {
17
- line-height: 0;
18
- width: $width;
19
- @include cxb-field($besm, $state-style-map, $input: false);
20
- }
21
-
22
- .#{$element}#{$name}-input {
23
- width: 100%;
24
- height: 100%;
25
- @include cxe-field-input($besm, $state-style-map, $placeholder: $placeholder, $input: false);
26
- }
27
-
28
- .#{$element}#{$name}-tool {
29
- @include cxe-field-button($besm, $tool-state-style-map);
30
- }
31
-
32
- .#{$element}#{$name}-icon {
33
- @include cxe-field-button-icon($besm, $icon-size);
34
- }
35
-
36
- .#{$element}#{$name}-empty-text {
37
- @include cxe-field-empty-text($empty-text);
38
- }
39
- }
40
-
41
- @if (cx-should-include("cx/widgets/TextArea")) {
42
- @include cx-textarea;
43
- }
1
+ @mixin cx-textarea(
2
+ $name: "textarea",
3
+ $state-style-map: $cx-textarea-state-style-map,
4
+ $placeholder: $cx-input-placeholder,
5
+ $empty-text: $cx-empty-text,
6
+ $tool-state-style-map: $cx-input-right-icon-state-style-map,
7
+ $icon-size: $cx-default-input-icon-size,
8
+ $width: $cx-default-textarea-width,
9
+ $besm: $cx-besm
10
+ ) {
11
+ $block: map-get($besm, block);
12
+ $element: map-get($besm, element);
13
+ $state: map-get($besm, state);
14
+ $mod: map-get($besm, mod);
15
+
16
+ .#{$block}#{$name} {
17
+ line-height: 0;
18
+ width: $width;
19
+ @include cxb-field($besm, $state-style-map, $input: false);
20
+ }
21
+
22
+ .#{$element}#{$name}-input {
23
+ width: 100%;
24
+ height: 100%;
25
+ @include cxe-field-input($besm, $state-style-map, $placeholder: $placeholder, $input: false);
26
+ }
27
+
28
+ .#{$element}#{$name}-tool {
29
+ @include cxe-field-button($besm, $tool-state-style-map);
30
+ }
31
+
32
+ .#{$element}#{$name}-icon {
33
+ @include cxe-field-button-icon($besm, $icon-size);
34
+ }
35
+
36
+ .#{$element}#{$name}-empty-text {
37
+ @include cxe-field-empty-text($empty-text);
38
+ }
39
+ }
40
+
41
+ @if (cx-should-include("cx/widgets/TextArea")) {
42
+ @include cx-textarea;
43
+ }