@gooddata/sdk-ui-kit 10.24.0-alpha.9 → 10.25.0-alpha.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 (175) hide show
  1. package/esm/@ui/@dev/CodeSnippet.d.ts.map +1 -1
  2. package/esm/@ui/@dev/CodeSnippet.js +4 -1
  3. package/esm/@ui/@dev/CodeSnippet.js.map +1 -1
  4. package/esm/@ui/@dev/ComponentTable.d.ts +2 -2
  5. package/esm/@ui/@dev/ComponentTable.d.ts.map +1 -1
  6. package/esm/@ui/@dev/ComponentTable.js +4 -4
  7. package/esm/@ui/@dev/ComponentTable.js.map +1 -1
  8. package/esm/@ui/@types/icon.d.ts +1 -1
  9. package/esm/@ui/@types/icon.d.ts.map +1 -1
  10. package/esm/@ui/UiChip/UiChip.d.ts +20 -0
  11. package/esm/@ui/UiChip/UiChip.d.ts.map +1 -0
  12. package/esm/@ui/UiChip/UiChip.js +23 -0
  13. package/esm/@ui/UiChip/UiChip.js.map +1 -0
  14. package/esm/@ui/UiFocusTrap/UiFocusTrap.d.ts.map +1 -1
  15. package/esm/@ui/UiFocusTrap/UiFocusTrap.js +2 -1
  16. package/esm/@ui/UiFocusTrap/UiFocusTrap.js.map +1 -1
  17. package/esm/@ui/UiIcon/icons.d.ts.map +1 -1
  18. package/esm/@ui/UiIcon/icons.js +20 -0
  19. package/esm/@ui/UiIcon/icons.js.map +1 -1
  20. package/esm/Button/Button.d.ts +0 -1
  21. package/esm/Button/Button.d.ts.map +1 -1
  22. package/esm/Button/Button.js +3 -4
  23. package/esm/Button/Button.js.map +1 -1
  24. package/esm/Datepicker/Datepicker.d.ts +3 -1
  25. package/esm/Datepicker/Datepicker.d.ts.map +1 -1
  26. package/esm/Datepicker/Datepicker.js +7 -5
  27. package/esm/Datepicker/Datepicker.js.map +1 -1
  28. package/esm/DescriptionPanel/DescriptionPanel.d.ts +2 -1
  29. package/esm/DescriptionPanel/DescriptionPanel.d.ts.map +1 -1
  30. package/esm/DescriptionPanel/DescriptionPanel.js +2 -2
  31. package/esm/DescriptionPanel/DescriptionPanel.js.map +1 -1
  32. package/esm/Dialog/ConfirmDialogBase.d.ts.map +1 -1
  33. package/esm/Dialog/ConfirmDialogBase.js +21 -19
  34. package/esm/Dialog/ConfirmDialogBase.js.map +1 -1
  35. package/esm/Dialog/DialogBase.d.ts.map +1 -1
  36. package/esm/Dialog/DialogBase.js +2 -2
  37. package/esm/Dialog/DialogBase.js.map +1 -1
  38. package/esm/Dialog/ShareDialog/ShareDialogBase/AddGranteeBase.js +1 -1
  39. package/esm/Dialog/typings.d.ts +9 -0
  40. package/esm/Dialog/typings.d.ts.map +1 -1
  41. package/esm/Dialog/typings.js +1 -1
  42. package/esm/Dropdown/DropdownButton.d.ts.map +1 -1
  43. package/esm/Dropdown/DropdownButton.js +2 -0
  44. package/esm/Dropdown/DropdownButton.js.map +1 -1
  45. package/esm/EditableLabel/EditableLabel.d.ts.map +1 -1
  46. package/esm/EditableLabel/EditableLabel.js +4 -4
  47. package/esm/EditableLabel/EditableLabel.js.map +1 -1
  48. package/esm/EditableLabel/typings.d.ts +1 -0
  49. package/esm/EditableLabel/typings.d.ts.map +1 -1
  50. package/esm/Form/InputPure.d.ts +1 -0
  51. package/esm/Form/InputPure.d.ts.map +1 -1
  52. package/esm/Form/InputPure.js +3 -3
  53. package/esm/Form/InputPure.js.map +1 -1
  54. package/esm/Header/HeaderWorkspacePicker.js +1 -1
  55. package/esm/Header/HeaderWorkspacePicker.js.map +1 -1
  56. package/esm/List/InsightListItem.d.ts +2 -1
  57. package/esm/List/InsightListItem.d.ts.map +1 -1
  58. package/esm/List/InsightListItem.js +2 -2
  59. package/esm/List/InsightListItem.js.map +1 -1
  60. package/esm/List/InvertableSelect/InvertableSelectAllCheckbox.d.ts.map +1 -1
  61. package/esm/List/InvertableSelect/InvertableSelectAllCheckbox.js +18 -3
  62. package/esm/List/InvertableSelect/InvertableSelectAllCheckbox.js.map +1 -1
  63. package/esm/RecurrenceForm/CronExpression.d.ts.map +1 -1
  64. package/esm/RecurrenceForm/CronExpression.js +4 -18
  65. package/esm/RecurrenceForm/CronExpression.js.map +1 -1
  66. package/esm/RecurrenceForm/DateTime.d.ts.map +1 -1
  67. package/esm/RecurrenceForm/DateTime.js +3 -4
  68. package/esm/RecurrenceForm/DateTime.js.map +1 -1
  69. package/esm/RecurrenceForm/RepeatTypeSelect.d.ts.map +1 -1
  70. package/esm/RecurrenceForm/RepeatTypeSelect.js +2 -2
  71. package/esm/RecurrenceForm/RepeatTypeSelect.js.map +1 -1
  72. package/esm/RichText/RichText.d.ts +5 -1
  73. package/esm/RichText/RichText.d.ts.map +1 -1
  74. package/esm/RichText/RichText.js +4 -4
  75. package/esm/RichText/RichText.js.map +1 -1
  76. package/esm/RichText/RichTextWithTooltip.d.ts.map +1 -1
  77. package/esm/RichText/RichTextWithTooltip.js +3 -2
  78. package/esm/RichText/RichTextWithTooltip.js.map +1 -1
  79. package/esm/RichText/hooks/{useEvaluatedMetrics.d.ts → useEvaluatedMetricsAndAttributes.d.ts} +4 -2
  80. package/esm/RichText/hooks/useEvaluatedMetricsAndAttributes.d.ts.map +1 -0
  81. package/esm/RichText/hooks/useEvaluatedMetricsAndAttributes.js +117 -0
  82. package/esm/RichText/hooks/useEvaluatedMetricsAndAttributes.js.map +1 -0
  83. package/esm/RichText/hooks/useEvaluatedReferences.d.ts +1 -1
  84. package/esm/RichText/hooks/useEvaluatedReferences.js +2 -2
  85. package/esm/RichText/hooks/useEvaluatedReferences.js.map +1 -1
  86. package/esm/RichText/plugins/rehype-references.d.ts +3 -2
  87. package/esm/RichText/plugins/rehype-references.d.ts.map +1 -1
  88. package/esm/RichText/plugins/rehype-references.js +91 -27
  89. package/esm/RichText/plugins/rehype-references.js.map +1 -1
  90. package/esm/Timepicker/Timepicker.d.ts.map +1 -1
  91. package/esm/Timepicker/Timepicker.js +2 -2
  92. package/esm/Timepicker/Timepicker.js.map +1 -1
  93. package/esm/index.d.ts +2 -0
  94. package/esm/index.d.ts.map +1 -1
  95. package/esm/index.js +1 -0
  96. package/esm/index.js.map +1 -1
  97. package/esm/sdk-ui-kit.d.ts +50 -4
  98. package/esm/typings/accessibility.d.ts +1 -0
  99. package/esm/typings/accessibility.d.ts.map +1 -1
  100. package/esm/utils/events.d.ts +9 -0
  101. package/esm/utils/events.d.ts.map +1 -1
  102. package/esm/utils/events.js +11 -0
  103. package/esm/utils/events.js.map +1 -1
  104. package/package.json +8 -8
  105. package/src/@ui/UiButton/UiButton.scss +9 -5
  106. package/src/@ui/UiChip/UiChip.scss +190 -0
  107. package/src/@ui/index.scss +1 -0
  108. package/styles/css/button.css +5 -9
  109. package/styles/css/button.css.map +1 -1
  110. package/styles/css/chartSorting.css.map +1 -1
  111. package/styles/css/colorPicker.css +0 -1
  112. package/styles/css/colorPicker.css.map +1 -1
  113. package/styles/css/datepicker.css +0 -1
  114. package/styles/css/datepicker.css.map +1 -1
  115. package/styles/css/descriptionPanel.css.map +1 -1
  116. package/styles/css/dialog.css +0 -8
  117. package/styles/css/dialog.css.map +1 -1
  118. package/styles/css/embedInsightDialog.css +0 -1
  119. package/styles/css/embedInsightDialog.css.map +1 -1
  120. package/styles/css/form.css +33 -31
  121. package/styles/css/form.css.map +1 -1
  122. package/styles/css/header.css +3 -7
  123. package/styles/css/header.css.map +1 -1
  124. package/styles/css/hyperlink.css.map +1 -1
  125. package/styles/css/invertableSelect.css +5 -0
  126. package/styles/css/invertableSelect.css.map +1 -1
  127. package/styles/css/list.css +3 -2
  128. package/styles/css/list.css.map +1 -1
  129. package/styles/css/main.css +317 -109
  130. package/styles/css/main.css.map +1 -1
  131. package/styles/css/measureNumberFormat.css +0 -1
  132. package/styles/css/measureNumberFormat.css.map +1 -1
  133. package/styles/css/menu.css +3 -2
  134. package/styles/css/menu.css.map +1 -1
  135. package/styles/css/overlay.css +0 -7
  136. package/styles/css/overlay.css.map +1 -1
  137. package/styles/css/recurrenceForm.css +16 -5
  138. package/styles/css/recurrenceForm.css.map +1 -1
  139. package/styles/css/richText.css +2 -5
  140. package/styles/css/richText.css.map +1 -1
  141. package/styles/css/settingWidget.css.map +1 -1
  142. package/styles/css/shareDialogSelectControl.css +1 -2
  143. package/styles/css/shareDialogSelectControl.css.map +1 -1
  144. package/styles/css/stylingEditorDialog.css.map +1 -1
  145. package/styles/css/syntaxHighlightingInput.css +0 -3
  146. package/styles/css/syntaxHighlightingInput.css.map +1 -1
  147. package/styles/css/tabs.css +0 -3
  148. package/styles/css/tabs.css.map +1 -1
  149. package/styles/scss/Button/_mixins.scss +5 -2
  150. package/styles/scss/Form/_mixins.scss +1 -3
  151. package/styles/scss/button.scss +1 -8
  152. package/styles/scss/colorPicker.scss +1 -2
  153. package/styles/scss/datepicker.scss +1 -2
  154. package/styles/scss/dialog.scss +1 -10
  155. package/styles/scss/embedInsightDialog.scss +1 -2
  156. package/styles/scss/form.scss +32 -16
  157. package/styles/scss/header.scss +5 -9
  158. package/styles/scss/invertableSelect.scss +7 -0
  159. package/styles/scss/list.scss +3 -2
  160. package/styles/scss/main.scss +1 -2
  161. package/styles/scss/measureNumberFormat.scss +1 -2
  162. package/styles/scss/mixins.scss +1 -9
  163. package/styles/scss/recurrenceForm.scss +19 -6
  164. package/styles/scss/richText.scss +2 -5
  165. package/styles/scss/shareDialogSelectControl.scss +3 -3
  166. package/styles/scss/syntaxHighlightingInput.scss +1 -7
  167. package/styles/scss/tabs.scss +0 -4
  168. package/styles/scss/variables.scss +5 -0
  169. package/esm/RichText/hooks/useEvaluatedMetrics.d.ts.map +0 -1
  170. package/esm/RichText/hooks/useEvaluatedMetrics.js +0 -54
  171. package/esm/RichText/hooks/useEvaluatedMetrics.js.map +0 -1
  172. package/styles/css/remove.css +0 -5
  173. package/styles/css/remove.css.map +0 -1
  174. package/styles/scss/Form/_variables.scss +0 -16
  175. package/styles/scss/remove.scss +0 -6
@@ -1,4 +1,4 @@
1
- // (C) 2007-2020 GoodData Corporation
1
+ // (C) 2007-2025 GoodData Corporation
2
2
  @use "variables";
3
3
 
4
4
  .color-picker-wrapper {
@@ -21,7 +21,6 @@
21
21
  .color-picker-cell {
22
22
  flex: 1;
23
23
  padding: 1px;
24
- outline: none;
25
24
  cursor: pointer;
26
25
 
27
26
  &::before {
@@ -1,4 +1,4 @@
1
- // (C) 2007-2024 GoodData Corporation
1
+ // (C) 2007-2025 GoodData Corporation
2
2
  @use "react-day-picker/dist/style.css";
3
3
  @use "sass:color";
4
4
  @use "mixins";
@@ -86,7 +86,6 @@
86
86
  --rdp-accent-color-dart: none;
87
87
  --rdp-background-color-dark: none;
88
88
  --rdp-accent-color-dark: none;
89
- --rdp-outline: none;
90
89
 
91
90
  position: absolute;
92
91
  padding: 18px 15px 15px;
@@ -1,4 +1,4 @@
1
- // (C) 2007-2024 GoodData Corporation
1
+ // (C) 2007-2025 GoodData Corporation
2
2
  @use "Dialog/_mixins" as dialog-mixins;
3
3
  @use "variables";
4
4
  @use "Dialog/variables" as dialog-variables;
@@ -27,7 +27,6 @@
27
27
  position: relative;
28
28
  z-index: 2;
29
29
  padding: 20px;
30
- outline: 0;
31
30
  max-width: dialog-variables.$modalDialog-maxWidth;
32
31
  border-style: solid;
33
32
  border-color: dialog-variables.$gd-modal-borderColor;
@@ -53,7 +52,6 @@
53
52
  z-index: 5;
54
53
  top: 14px;
55
54
  right: 14px;
56
- outline: none;
57
55
 
58
56
  &::before {
59
57
  color: variables.$gd-color-link;
@@ -321,12 +319,6 @@
321
319
  &:hover {
322
320
  border-color: #b1c1d1;
323
321
  }
324
-
325
- &:focus {
326
- outline: 0;
327
- border-color: var(--gd-palette-primary-base, #14b2e2);
328
- box-shadow: inset 0 1px 1px 0 rgba(31, 53, 74, 0.2);
329
- }
330
322
  }
331
323
 
332
324
  .hs-form-radio-display {
@@ -405,7 +397,6 @@
405
397
  align-items: center;
406
398
  padding: 5px 14px;
407
399
  border: 1px solid rgba(0, 0, 0, 0.1);
408
- outline: 0;
409
400
  border-radius: var(--gd-button-borderRadius, 3px);
410
401
  box-shadow: var(--gd-button-dropShadow, 1px 1px 0)
411
402
  var(--gd-shadow-color-from-theme, rgba(20, 56, 93, 0.09));
@@ -1,4 +1,4 @@
1
- // (C) 2020-2024 GoodData Corporation
1
+ // (C) 2020-2025 GoodData Corporation
2
2
  @use "variables";
3
3
  @use "mixins" as mx;
4
4
  @use "Form/_mixins";
@@ -69,7 +69,6 @@
69
69
  border: none;
70
70
  background-color: transparent;
71
71
  resize: none;
72
- outline: 0;
73
72
  line-height: 18px;
74
73
  font-size: 12px;
75
74
  letter-spacing: 0;
@@ -1,7 +1,6 @@
1
- // (C) 2007-2024 GoodData Corporation
1
+ // (C) 2007-2025 GoodData Corporation
2
2
  @use "sass:color";
3
3
  @use "Form/_mixins" as form-mixins;
4
- @use "Form/_variables" as form-variables;
5
4
  @use "variables";
6
5
  @use "mixins";
7
6
 
@@ -11,7 +10,6 @@
11
10
  .gd-input {
12
11
  position: relative;
13
12
  display: block;
14
- outline: 0;
15
13
  }
16
14
 
17
15
  .gd-input-wrapper,
@@ -51,14 +49,16 @@
51
49
  }
52
50
 
53
51
  &:focus {
54
- outline: 0;
55
- border-color: variables.$gd-palette-primary-base;
56
-
57
52
  @include mixins.box-shadow(
58
53
  inset 0 1px 1px 0 color.adjust(variables.$gd-input-text-box-shadow-color, $alpha: -0.8)
59
54
  );
60
55
  }
61
56
 
57
+ &:focus-visible {
58
+ box-shadow: none;
59
+ outline-color: variables.$gd-input-text-border-outline;
60
+ }
61
+
62
62
  &:disabled,
63
63
  &.disabled {
64
64
  &,
@@ -81,7 +81,6 @@ textarea {
81
81
  &.gd-input,
82
82
  &.input-text {
83
83
  height: auto;
84
- outline: 0;
85
84
  }
86
85
  }
87
86
 
@@ -157,11 +156,15 @@ textarea {
157
156
  ========================================================================== */
158
157
 
159
158
  .has-error {
160
- .gd-input-field {
159
+ .gd-input-field,
160
+ .input-text {
161
161
  color: variables.$gd-color-text;
162
- border-color: form-variables.$gd-form-error-borderColor;
162
+ border-color: variables.$gd-input-text-border-error;
163
+ box-shadow: none;
163
164
 
164
- @include mixins.box-shadow(inset 0 0 2px 0 form-variables.$gd-form-error-shadowColor);
165
+ &:focus-visible {
166
+ outline-color: variables.$gd-input-text-border-error-outline;
167
+ }
165
168
  }
166
169
 
167
170
  .gd-input-icon {
@@ -170,10 +173,14 @@ textarea {
170
173
  }
171
174
 
172
175
  .has-warning {
173
- .gd-input-field {
174
- border-color: variables.$gd-palette-warning-base;
176
+ .gd-input-field,
177
+ .input-text {
178
+ border-color: variables.$gd-input-text-border-warning;
179
+ box-shadow: none;
175
180
 
176
- @include mixins.box-shadow(inset 0 0 2px 0 form-variables.$gd-form-warning-shadowColor);
181
+ &:focus-visible {
182
+ outline-color: variables.$gd-input-text-border-warning-outline;
183
+ }
177
184
  }
178
185
  }
179
186
 
@@ -281,7 +288,7 @@ textarea {
281
288
 
282
289
  &.has-error .gd-input-field {
283
290
  @include form-mixins.gd-input-and-prefix {
284
- border-color: form-variables.$gd-form-error-borderColor;
291
+ border-color: variables.$gd-input-text-border-error;
285
292
  }
286
293
  }
287
294
  }
@@ -408,7 +415,6 @@ textarea {
408
415
 
409
416
  input {
410
417
  position: absolute;
411
- outline: 0;
412
418
  opacity: 0;
413
419
 
414
420
  &:checked ~ .input-label-text {
@@ -440,6 +446,17 @@ textarea {
440
446
  }
441
447
  }
442
448
 
449
+ .input-radio-label,
450
+ .input-checkbox-label,
451
+ .input-checkbox-toggle {
452
+ input[type="checkbox"]:focus-visible + ::before,
453
+ input[type="radio"]:focus-visible + ::before {
454
+ outline: 2px solid variables.$gd-input-text-border-outline;
455
+ outline-offset: 2px;
456
+ transition: none;
457
+ }
458
+ }
459
+
443
460
  .input-radio-label {
444
461
  .input-label-text {
445
462
  &::before {
@@ -498,7 +515,6 @@ textarea {
498
515
  .input-checkbox-toggle {
499
516
  input {
500
517
  position: absolute;
501
- outline: 0;
502
518
  opacity: 0;
503
519
 
504
520
  &:disabled,
@@ -52,7 +52,7 @@ $button-normal-active-shadow: color.adjust($button-normal-active-border-color, $
52
52
  }
53
53
 
54
54
  &:not(.active) {
55
- @include mixins.active-states {
55
+ &:hover {
56
56
  opacity: 0.6;
57
57
  }
58
58
  }
@@ -348,9 +348,10 @@ $button-normal-active-shadow: color.adjust($button-normal-active-border-color, $
348
348
  }
349
349
  a.gd-list-help-menu-item.gd-list-item {
350
350
  &:focus-visible {
351
+ // TODO LX-769
351
352
  // disable outline and use box-shadow instead.
352
353
  // outline highlights both element and ::after content added as divider
353
- // needs to be rewriten in https: //gooddata.atlassian.net/browse/LX-769
354
+ // needs to be rewritten in https://gooddata.atlassian.net/browse/LX-769
354
355
  outline: none;
355
356
  box-shadow: 0 0 0 2px black;
356
357
  text-decoration: none;
@@ -942,8 +943,7 @@ a.gd-list-help-menu-item.gd-list-item {
942
943
  }
943
944
 
944
945
  &:focus-visible {
945
- border: none;
946
- outline: auto;
946
+ outline: revert;
947
947
  }
948
948
  }
949
949
 
@@ -959,7 +959,7 @@ a.gd-list-help-menu-item.gd-list-item {
959
959
  }
960
960
  a.gd-list-item {
961
961
  &:focus-visible {
962
- outline: auto;
962
+ outline: revert;
963
963
  text-decoration: none;
964
964
  }
965
965
  &:focus {
@@ -1278,10 +1278,6 @@ button.gd-button-primary.gd-upsell-button {
1278
1278
  text-align: start;
1279
1279
  transform-origin: 0 0;
1280
1280
  -moz-appearance: none;
1281
-
1282
- &:focus {
1283
- outline: 0;
1284
- }
1285
1281
  }
1286
1282
 
1287
1283
  .gd-header-button {
@@ -36,6 +36,13 @@ input[type="search"]::-webkit-search-cancel-button {
36
36
  flex-shrink: 1;
37
37
  }
38
38
 
39
+ .gd-invertable-select-list {
40
+ .gd-invertable-select-all-checkbox:focus-visible,
41
+ .gd-list-item:focus-visible {
42
+ outline-offset: -2px; // pull outline inside to not have it clipped by item's overflow: hidden
43
+ }
44
+ }
45
+
39
46
  .gd-invertable-select-all-checkbox {
40
47
  display: flex;
41
48
  justify-content: flex-start;
@@ -159,7 +159,8 @@ $menu-item-icon-width: 30px;
159
159
  }
160
160
  }
161
161
  &:focus-visible {
162
- outline: auto;
162
+ outline: revert;
163
+ outline-offset: -2px; // pull outline inside to not have it clipped by item's overflow: hidden
163
164
  }
164
165
 
165
166
  &.gd-menu-item-remove:hover {
@@ -430,7 +431,7 @@ $menu-item-icon-width: 30px;
430
431
  }
431
432
 
432
433
  .public_fixedDataTable_main:focus-visible {
433
- outline: auto;
434
+ outline: revert;
434
435
  }
435
436
 
436
437
  .public_Scrollbar_main {
@@ -1,8 +1,7 @@
1
- // (C) 2020-2024 GoodData Corporation
1
+ // (C) 2020-2025 GoodData Corporation
2
2
  @use "../../src/@ui/defaultTheme.scss";
3
3
  @use "../../src/@ui/index.scss";
4
4
 
5
- @use "remove";
6
5
  @use "typo";
7
6
  @use "indigoFont";
8
7
  @use "bubble";
@@ -1,4 +1,4 @@
1
- // (C) 2020 GoodData Corporation
1
+ // (C) 2020-2025 GoodData Corporation
2
2
  @use "variables.scss";
3
3
  @use "MeasureNumberFormat/_variables" as measure-number-format-variables;
4
4
 
@@ -85,7 +85,6 @@
85
85
 
86
86
  .gd-measure-format-button {
87
87
  display: flex;
88
- outline: none;
89
88
  color: variables.$gd-color-state-blank;
90
89
  cursor: pointer;
91
90
  user-select: none;
@@ -1,4 +1,4 @@
1
- // (C) 2007-2020 GoodData Corporation
1
+ // (C) 2007-2025 GoodData Corporation
2
2
  // Make sure the charset is set appropriately
3
3
  @charset 'utf-8';
4
4
 
@@ -222,14 +222,6 @@
222
222
  font-family: variables.$gd-font-primary;
223
223
  line-height: 1.5;
224
224
 
225
- button,
226
- input,
227
- optgroup,
228
- select,
229
- textarea {
230
- outline: 0;
231
- }
232
-
233
225
  *,
234
226
  *::before,
235
227
  *::after {
@@ -1,4 +1,4 @@
1
- // (C) 2024 GoodData Corporation
1
+ // (C) 2024-2025 GoodData Corporation
2
2
 
3
3
  @use "variables";
4
4
 
@@ -12,7 +12,8 @@ $input-width: 128px;
12
12
  .gd-input-component {
13
13
  margin-bottom: 20px;
14
14
 
15
- label {
15
+ label,
16
+ .gd-label {
16
17
  min-width: 100px;
17
18
  }
18
19
  }
@@ -22,11 +23,15 @@ $input-width: 128px;
22
23
  flex-direction: row;
23
24
  align-items: center;
24
25
 
25
- > :not(:first-of-type),
26
+ > :not(:first-of-type):not(.gd-label),
26
27
  > :not(:last-of-type) {
27
28
  margin-right: 10px;
28
29
  }
29
30
 
31
+ .gd-label {
32
+ margin-right: 0;
33
+ }
34
+
30
35
  input,
31
36
  button {
32
37
  height: $input-height;
@@ -52,13 +57,13 @@ $input-width: 128px;
52
57
  .gd-recurrence-form-repeat-inner {
53
58
  display: flex;
54
59
  gap: 10px;
55
- align-items: center;
60
+ align-items: flex-start;
56
61
  }
57
62
 
58
63
  .gd-recurrence-form-repeat {
59
64
  display: flex;
60
65
  flex-direction: row;
61
- align-items: center;
66
+ align-items: flex-start;
62
67
 
63
68
  > :not(:first-of-type),
64
69
  > :not(:last-of-type) {
@@ -82,13 +87,21 @@ $input-width: 128px;
82
87
  height: $input-height;
83
88
  }
84
89
 
90
+ .gd-recurrence-form-cron-help,
85
91
  .gd-recurrence-form-cron-error-message {
86
- color: variables.$gd-color-negative;
87
92
  font-size: 12px;
88
93
  font-style: normal;
89
94
  font-weight: 400;
90
95
  line-height: 13px;
91
96
  }
97
+ .gd-recurrence-form-cron-help,
98
+ .gd-recurrence-form-cron-help a {
99
+ color: variables.$gd-color-state-blank;
100
+ }
101
+
102
+ .gd-recurrence-form-cron-error-message {
103
+ color: variables.$gd-color-negative;
104
+ }
92
105
  }
93
106
 
94
107
  .gd-recurrence-form-cron-icon {
@@ -21,7 +21,6 @@
21
21
  color: var(--gd-palette-complementary-7, #6d7680);
22
22
  border: none;
23
23
  resize: none;
24
- outline: none;
25
24
  box-sizing: border-box;
26
25
 
27
26
  &::placeholder {
@@ -29,13 +28,11 @@
29
28
  }
30
29
  }
31
30
 
32
- .gd-rich-text-metric-value {
33
- font-weight: bold;
34
- }
35
31
  .gd-rich-text-metric-empty {
36
32
  color: variables.$gd-color-text;
37
33
  }
38
- .gd-rich-text-metric-error {
34
+ .gd-rich-text-metric-error,
35
+ .gd-rich-text-metric-multiple {
39
36
  color: variables.$gd-palette-error-base;
40
37
  }
41
38
  }
@@ -1,4 +1,4 @@
1
- // (C) 2021-2024 GoodData Corporation
1
+ // (C) 2021-2025 GoodData Corporation
2
2
  @use "sass:color";
3
3
  @use "variables";
4
4
  @use "mixins";
@@ -31,10 +31,11 @@
31
31
  }
32
32
  }
33
33
 
34
+ // TODO LX-769, requirement 3, share dialog, choose user
34
35
  .gd-share-dialog__control--is-focused,
35
36
  .gd-share-dialog__control--is-focused:hover {
36
37
  border-color: variables.$gd-palette-primary-base;
37
- outline: 0;
38
+ outline: revert;
38
39
  box-shadow: inset 0 1px 1px 0 color.adjust(variables.$gd-input-text-box-shadow-color, $alpha: -0.8);
39
40
  }
40
41
 
@@ -81,7 +82,6 @@
81
82
  border-color: variables.$gd-palette-primary-base;
82
83
  border-top: 1px solid variables.$gd-border-color;
83
84
  margin-top: -2px;
84
- outline: 0;
85
85
  box-shadow: 0 0 1px 0 color.adjust(variables.$gd-input-text-box-shadow-color, $alpha: -0.2) inset;
86
86
  color: variables.$gd-color-text;
87
87
  background-color: variables.$gd-color-white;
@@ -1,4 +1,4 @@
1
- // (C) 2020-2024 GoodData Corporation
1
+ // (C) 2020-2025 GoodData Corporation
2
2
  @use "codemirror/lib/codemirror.css";
3
3
  @use "sass:color";
4
4
  @use "mixins";
@@ -58,12 +58,6 @@ $cm-color-keyword: #ab55a3;
58
58
  }
59
59
  }
60
60
 
61
- .CodeMirror-vscrollbar {
62
- &:focus {
63
- outline: 0;
64
- }
65
- }
66
-
67
61
  .CodeMirror-empty {
68
62
  color: variables.$gd-color-disabled;
69
63
  }
@@ -29,10 +29,6 @@
29
29
  font-size: 14px;
30
30
  text-align: center;
31
31
 
32
- &:focus-visible {
33
- outline: auto;
34
- }
35
-
36
32
  &:hover {
37
33
  color: var(--gd-palette-complementary-8-from-theme, variables.$is-focused-color);
38
34
  border-bottom: 3px solid variables.$gd-border-color;
@@ -134,8 +134,13 @@ $importantFlag: "";
134
134
  // from goodstrap Form/mixins
135
135
  $default-gd-input-text-border: #ccd8e2;
136
136
  $gd-input-text-border: var(--gd-palette-complementary-4, $default-gd-input-text-border);
137
+ $gd-input-text-border-outline: $gd-palette-primary-base;
137
138
  $gd-input-text-hover-border: var(--gd-palette-complementary-5-from-theme, #b1c1d1);
138
139
  $gd-input-text-box-shadow-color: #1f354a;
140
+ $gd-input-text-border-warning: $gd-palette-warning-base-text;
141
+ $gd-input-text-border-warning-outline: $gd-palette-warning-base-text;
142
+ $gd-input-text-border-error: $gd-palette-error-base;
143
+ $gd-input-text-border-error-outline: $gd-palette-error-base;
139
144
 
140
145
  $gd-outside-background-color: #eff1f3;
141
146
 
@@ -1 +0,0 @@
1
- {"version":3,"file":"useEvaluatedMetrics.d.ts","sourceRoot":"","sources":["../../../src/RichText/hooks/useEvaluatedMetrics.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,SAAS,EAKZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,OAAO,EACP,QAAQ,EACR,aAAa,EAGb,MAAM,EACT,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,MAAM,eAAe,GAAG;IAC1B,GAAG,EAAE,QAAQ,CAAC;IACd,MAAM,EAAE,aAAa,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO;;;;EAwDjG"}
@@ -1,54 +0,0 @@
1
- // (C) 2022-2025 GoodData Corporation
2
- import { useBackend, useCancelablePromise, useExecutionDataView, useWorkspace, } from "@gooddata/sdk-ui";
3
- import { isMeasureDefinition, newMeasure, } from "@gooddata/sdk-model";
4
- export function useEvaluatedMetrics(references, filters, enabled) {
5
- const workspace = useWorkspace();
6
- const backend = useBackend();
7
- const metrics = getMeasures(references);
8
- const { status: executionStatus, result: executionResult, error: executionError, } = useExecutionDataView({
9
- execution: enabled && metrics.length > 0
10
- ? backend.workspace(workspace).execution().forItems(metrics, filters)
11
- : null,
12
- });
13
- const { status: loadStatus, result: loadResult, error: loadError, } = useCancelablePromise({
14
- promise: async () => {
15
- if (!executionResult) {
16
- return [];
17
- }
18
- const headerItems = executionResult.meta().allHeaders();
19
- const dataSeries = executionResult.data().series().toArray();
20
- const definition = executionResult.definition;
21
- const items = [];
22
- headerItems[0][0].forEach((header, i) => {
23
- const def = definition.measures[i];
24
- const data = dataSeries[i].dataPoints()[0];
25
- if (isMeasureDefinition(def.measure.definition)) {
26
- items.push({
27
- def,
28
- data,
29
- header,
30
- ref: def.measure.definition.measureDefinition.item,
31
- });
32
- }
33
- });
34
- return items;
35
- },
36
- }, [executionResult]);
37
- return {
38
- loading: executionStatus === "loading" || loadStatus === "loading" || loadStatus === "pending",
39
- error: executionError || loadError,
40
- result: loadResult,
41
- };
42
- }
43
- function getMeasures(references) {
44
- const metrics = Object.values(references)
45
- .map(({ type, ref }) => (type === "measure" ? ref : null))
46
- .filter(Boolean);
47
- return metrics.map((ref, i) => {
48
- return newMeasure(ref, (m) => {
49
- m.localId(`m_${i}`);
50
- return m;
51
- });
52
- });
53
- }
54
- //# sourceMappingURL=useEvaluatedMetrics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useEvaluatedMetrics.js","sourceRoot":"","sources":["../../../src/RichText/hooks/useEvaluatedMetrics.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- div {
2
- outline: none;
3
- }
4
-
5
- /*# sourceMappingURL=remove.css.map */
@@ -1 +0,0 @@
1
- {"version":3,"sourceRoot":"","sources":["../scss/remove.scss"],"names":[],"mappings":"AAGA;EACI","file":"remove.css"}
@@ -1,16 +0,0 @@
1
- // (C) 2020 GoodData Corporation
2
- @use "sass:color";
3
- @use "../variables";
4
-
5
- $gd-form-error-borderColor: var(
6
- --gd-palette-error-base-t50,
7
- color.adjust(variables.$gd-color-negative, $alpha: -0.5)
8
- );
9
- $gd-form-error-shadowColor: var(
10
- --gd-palette-error-base-t70d20,
11
- color.adjust(color.adjust(variables.$gd-color-negative, $lightness: -20%), $alpha: -0.7)
12
- );
13
- $gd-form-warning-shadowColor: var(
14
- --gd-palette-warning-base-t70d20,
15
- color.adjust(color.adjust(variables.$gd-color-warning, $lightness: -20%), $alpha: -0.7)
16
- );
@@ -1,6 +0,0 @@
1
- // (C) 2020 GoodData Corporation
2
- // Remove browser agent stylesheet
3
-
4
- div {
5
- outline: none;
6
- }