@ostack.tech/ui 0.10.5 → 0.11.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.
- package/dist/chunks/{en-DwZKZVGL.js → en-DtnihkTA.js} +20 -3
- package/dist/chunks/en-DtnihkTA.js.map +1 -0
- package/dist/locales/en-GB.js +1 -1
- package/dist/locales/en-US.js +1 -1
- package/dist/locales/fr-FR.js +19 -2
- package/dist/locales/fr-FR.js.map +1 -1
- package/dist/locales/pt-PT.js +19 -2
- package/dist/locales/pt-PT.js.map +1 -1
- package/dist/ostack-ui.css +186 -110
- package/dist/ostack-ui.js +1466 -681
- package/dist/ostack-ui.js.map +1 -1
- package/dist/types/components/Alert/Alert.d.ts +3 -3
- package/dist/types/components/AlertDialog/AlertDialog.d.ts +6 -2
- package/dist/types/components/Button/Button.d.ts +7 -7
- package/dist/types/components/Calendar/Calendar.d.ts +60 -4
- package/dist/types/components/Card/Card.d.ts +2 -2
- package/dist/types/components/Code/Code.d.ts +1 -1
- package/dist/types/components/Collapsible/Collapsible.d.ts +26 -8
- package/dist/types/components/Collapsible/CollapsibleContext.d.ts +2 -2
- package/dist/types/components/Collapsible/CollapsibleTrigger.d.ts +22 -6
- package/dist/types/components/CommandMenu/CommandMenu.d.ts +1 -1
- package/dist/types/components/Container/Container.d.ts +21 -10
- package/dist/types/components/DataTable/DataTable.d.ts +63 -29
- package/dist/types/components/DataTable/DataTableContext.d.ts +3 -1
- package/dist/types/components/DateInput/DateInput.d.ts +8 -5
- package/dist/types/components/DateRangeInput/DateRangeInput.d.ts +6 -5
- package/dist/types/components/DescriptionList/DescriptionList.d.ts +38 -0
- package/dist/types/components/DescriptionList/DescriptionListItem.d.ts +15 -0
- package/dist/types/components/DescriptionList/index.d.ts +2 -0
- package/dist/types/components/Dialog/Dialog.d.ts +1 -2
- package/dist/types/components/Dialog/DialogContent.d.ts +3 -3
- package/dist/types/components/DropdownMenu/DropdownMenu.d.ts +1 -1
- package/dist/types/components/FieldGroup/FieldGroup.d.ts +42 -14
- package/dist/types/components/Grid/Grid.d.ts +64 -11
- package/dist/types/components/Icon/Icon.d.ts +1 -1
- package/dist/types/components/IconButton/IconButton.d.ts +8 -10
- package/dist/types/components/Input/Input.d.ts +2 -3
- package/dist/types/components/Link/Link.d.ts +1 -3
- package/dist/types/components/Mark/Mark.d.ts +1 -1
- package/dist/types/components/MenuList/MenuList.d.ts +5 -0
- package/dist/types/components/MenuList/MenuListItem.d.ts +3 -3
- package/dist/types/components/NumericInput/NumericInput.d.ts +2 -2
- package/dist/types/components/Popover/Popover.d.ts +32 -19
- package/dist/types/components/Popover/PopoverClose.d.ts +10 -3
- package/dist/types/components/Printer/Printer.d.ts +4 -4
- package/dist/types/components/Printer/PrinterContentContext.d.ts +4 -4
- package/dist/types/components/Printer/PrinterContext.d.ts +2 -2
- package/dist/types/components/Root/Root.d.ts +7 -7
- package/dist/types/components/Select/Select.d.ts +6 -0
- package/dist/types/components/Select/SelectContext.d.ts +2 -1
- package/dist/types/components/Select/SelectNative.d.ts +7 -0
- package/dist/types/components/Separator/Separator.d.ts +39 -1
- package/dist/types/components/Stack/Stack.d.ts +27 -5
- package/dist/types/components/Stepper/Step.d.ts +21 -6
- package/dist/types/components/Stepper/StepContent.d.ts +13 -4
- package/dist/types/components/Stepper/StepList.d.ts +8 -3
- package/dist/types/components/Stepper/Stepper.d.ts +51 -34
- package/dist/types/components/Stepper/StepperContext.d.ts +77 -4
- package/dist/types/components/Stepper/StepperFinishTrigger.d.ts +37 -0
- package/dist/types/components/Stepper/StepperNextTrigger.d.ts +34 -0
- package/dist/types/components/Stepper/StepperPreviousTrigger.d.ts +37 -0
- package/dist/types/components/Stepper/StepperState.d.ts +8 -0
- package/dist/types/components/Stepper/index.d.ts +5 -0
- package/dist/types/components/Table/Table.d.ts +2 -2
- package/dist/types/components/Table/TableColumn.d.ts +1 -1
- package/dist/types/components/Tabs/Tab.d.ts +6 -1
- package/dist/types/components/Tabs/Tabs.d.ts +1 -1
- package/dist/types/components/Toast/Toast.d.ts +81 -15
- package/dist/types/components/Tooltip/Tooltip.d.ts +4 -0
- package/dist/types/components/VisuallyHidden/VisuallyHidden.d.ts +22 -1
- package/dist/types/index.d.ts +1 -2
- package/dist/types/providers/AlertDialogProvider/AlertDialogProviderContext.d.ts +2 -2
- package/dist/types/providers/ErrorReportingProvider/ErrorReport.d.ts +3 -3
- package/dist/types/providers/ErrorReportingProvider/ErrorReportingProvider.d.ts +2 -2
- package/dist/types/providers/LocalizationProvider/LocalizationObject.d.ts +7 -0
- package/dist/types/providers/ToastManagerProvider/ToastManagerContext.d.ts +4 -2
- package/dist/types/utils/control.d.ts +1 -1
- package/dist/types/utils/keyboardShortcut.d.ts +1 -1
- package/dist/types/utils/useSearchParam.d.ts +5 -5
- package/dist/types/utils/useSearchParams.d.ts +7 -4
- package/package.json +3 -3
- package/scss/_utils.scss +3 -0
- package/scss/components/Checkbox/_Checkbox.scss +1 -1
- package/scss/components/Collapsible/_Collapsible-variables.scss +0 -1
- package/scss/components/Collapsible/_Collapsible.scss +2 -6
- package/scss/components/Container/_Container.scss +16 -5
- package/scss/components/DescriptionList/_DescriptionList-variables.scss +21 -0
- package/scss/components/DescriptionList/_DescriptionList.scss +33 -0
- package/scss/components/DropdownMenu/_DropdownMenu.scss +1 -3
- package/scss/components/FeedbackPopover/_FeedbackPopover-variables.scss +9 -9
- package/scss/components/FeedbackPopover/_FeedbackPopover.scss +1 -1
- package/scss/components/Field/_Field-variables.scss +9 -0
- package/scss/components/Field/_Field.scss +6 -8
- package/scss/components/Input/_Input.scss +5 -0
- package/scss/components/Label/_Label-variables.scss +1 -1
- package/scss/components/MenuList/_MenuList.scss +4 -1
- package/scss/components/RadioGroup/_Radio.scss +1 -1
- package/scss/components/Separator/_Separator-variables.scss +11 -0
- package/scss/components/Separator/_Separator.scss +13 -5
- package/scss/components/Stepper/_Stepper-variables.scss +37 -9
- package/scss/components/Stepper/_Stepper.scss +69 -22
- package/scss/components/Tabs/_Tabs.scss +6 -4
- package/scss/index.scss +1 -0
- package/scss/scss/placeholders/checkable/_checkable.scss +3 -3
- package/scss/scss/placeholders/control/_control.scss +1 -1
- package/scss/scss/placeholders/menu/_menu.scss +5 -16
- package/scss/scss/utils/_animation.scss +1 -1
- package/scss/scss/utils/_transition.scss +1 -1
- package/dist/chunks/en-DwZKZVGL.js.map +0 -1
- package/dist/types/components/DatePicker/DatePicker.d.ts +0 -27
- package/dist/types/components/DatePicker/index.d.ts +0 -1
- package/dist/types/components/DateRangePicker/DateRangePicker.d.ts +0 -41
- package/dist/types/components/DateRangePicker/index.d.ts +0 -1
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
@use "
|
|
1
|
+
@use "Field-variables" as *;
|
|
2
2
|
@use "../../scss/base-variables" as *;
|
|
3
|
-
@use "../../scss/utils/declare-var" as *;
|
|
4
|
-
@use "../../scss/utils/spacing" as *;
|
|
5
3
|
|
|
6
4
|
.#{$prefix}field {
|
|
7
5
|
width: 100%;
|
|
8
6
|
break-inside: avoid;
|
|
9
7
|
|
|
10
8
|
& > :is(.#{$prefix}control-code, .#{$prefix}label__container) {
|
|
11
|
-
margin-bottom: spacing
|
|
9
|
+
margin-bottom: $field-spacing-y;
|
|
12
10
|
}
|
|
13
11
|
|
|
14
12
|
:is(
|
|
@@ -16,14 +14,14 @@
|
|
|
16
14
|
.#{$prefix}feedback-list:not(:empty),
|
|
17
15
|
.#{$prefix}feedback
|
|
18
16
|
) {
|
|
19
|
-
margin-top: spacing
|
|
17
|
+
margin-top: $field-spacing-y;
|
|
20
18
|
|
|
21
19
|
~ :is(
|
|
22
20
|
.#{$prefix}helper-text,
|
|
23
21
|
.#{$prefix}feedback-list:not(:empty),
|
|
24
22
|
.#{$prefix}feedback
|
|
25
23
|
) {
|
|
26
|
-
margin-top: spacing
|
|
24
|
+
margin-top: $field-feedback-spacing-y;
|
|
27
25
|
}
|
|
28
26
|
}
|
|
29
27
|
|
|
@@ -43,13 +41,13 @@
|
|
|
43
41
|
& > .#{$prefix}label__container,
|
|
44
42
|
.#{$prefix}helper-text,
|
|
45
43
|
.#{$prefix}feedback {
|
|
46
|
-
margin-left:
|
|
44
|
+
margin-left: $field-has-code-margin-left;
|
|
47
45
|
}
|
|
48
46
|
|
|
49
47
|
// Add a padding to to the feedback list instead of a margin so that we can
|
|
50
48
|
// use `margin-left: auto;` when right-aligning feedbacks
|
|
51
49
|
.#{$prefix}feedback-list {
|
|
52
|
-
padding-left:
|
|
50
|
+
padding-left: $field-has-code-margin-left;
|
|
53
51
|
}
|
|
54
52
|
}
|
|
55
53
|
}
|
|
@@ -221,6 +221,11 @@
|
|
|
221
221
|
}
|
|
222
222
|
}
|
|
223
223
|
|
|
224
|
+
// We provide our own clear button implementation
|
|
225
|
+
&::-webkit-search-cancel-button {
|
|
226
|
+
-webkit-appearance: none;
|
|
227
|
+
}
|
|
228
|
+
|
|
224
229
|
// Fix height of inputs with a type of datetime-local, date, month, week, or
|
|
225
230
|
// time
|
|
226
231
|
::-webkit-datetime-edit-fields-wrapper,
|
|
@@ -22,5 +22,5 @@ $label-helper-button-color: null !default;
|
|
|
22
22
|
// Helper popover
|
|
23
23
|
$label-helper-popover-max-width: 500px !default;
|
|
24
24
|
$label-helper-popover-max-height: 600px !default;
|
|
25
|
-
$label-helper-popover-padding-y: spacing(1) !default;
|
|
25
|
+
$label-helper-popover-padding-y: spacing(1.5) !default;
|
|
26
26
|
$label-helper-popover-padding-x: spacing(2) !default;
|
|
@@ -35,7 +35,10 @@
|
|
|
35
35
|
&:not([data-state="checked"][data-hide-control]) {
|
|
36
36
|
&:is([data-highlighted], [data-state="open"], [data-selected])
|
|
37
37
|
#{$menu-list}__item-action--#{$variant},
|
|
38
|
-
#{$menu-list}__item-action--#{$variant}:not(
|
|
38
|
+
#{$menu-list}__item-action--#{$variant}:not(
|
|
39
|
+
:disabled,
|
|
40
|
+
[data-disabled]
|
|
41
|
+
):hover {
|
|
39
42
|
@extend %#{$prefix}menu__item-action--#{$variant}--highlighted;
|
|
40
43
|
}
|
|
41
44
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
@use "../../scss/base-variables" as *;
|
|
2
|
+
@use "../../scss/utils/spacing" as *;
|
|
3
|
+
|
|
4
|
+
$separator-thickness: 1px !default;
|
|
5
|
+
$separator-color: var(--#{$prefix}accent-a6) !default;
|
|
6
|
+
|
|
7
|
+
// Horizontal
|
|
8
|
+
$separator-horizontal-default-length: 100% !default;
|
|
9
|
+
|
|
10
|
+
// Vertical
|
|
11
|
+
$separator-vertical-default-length: spacing(4) !default;
|
|
@@ -1,16 +1,24 @@
|
|
|
1
|
+
@use "Separator-variables" as *;
|
|
1
2
|
@use "../../scss/base-variables" as *;
|
|
2
3
|
@use "../../scss/utils/animation" as *;
|
|
3
4
|
|
|
4
5
|
.#{$prefix}separator {
|
|
5
|
-
|
|
6
|
-
background-color: $
|
|
6
|
+
display: block;
|
|
7
|
+
background-color: $separator-color;
|
|
7
8
|
|
|
8
9
|
&[data-orientation="horizontal"] {
|
|
9
|
-
height:
|
|
10
|
-
width:
|
|
10
|
+
height: $separator-thickness;
|
|
11
|
+
width: var(
|
|
12
|
+
--#{$prefix}separator-length,
|
|
13
|
+
$separator-horizontal-default-length
|
|
14
|
+
);
|
|
11
15
|
}
|
|
12
16
|
|
|
13
17
|
&[data-orientation="vertical"] {
|
|
14
|
-
width:
|
|
18
|
+
width: $separator-thickness;
|
|
19
|
+
height: var(
|
|
20
|
+
--#{$prefix}separator-length,
|
|
21
|
+
$separator-vertical-default-length
|
|
22
|
+
);
|
|
15
23
|
}
|
|
16
24
|
}
|
|
@@ -7,32 +7,60 @@ $stepper-step-list-margin-y: spacing(2) !default;
|
|
|
7
7
|
// Step
|
|
8
8
|
$stepper-step-size: 30px !default;
|
|
9
9
|
$stepper-step-border-radius: 50% !default;
|
|
10
|
-
$stepper-step-animation-duration: var(
|
|
11
|
-
--#{$prefix}animation-fade-duration
|
|
12
|
-
) !default;
|
|
13
|
-
$stepper-step-animation-timing-function: var(
|
|
14
|
-
--#{$prefix}animation-fade-timing-function
|
|
15
|
-
) !default;
|
|
16
10
|
|
|
17
11
|
// Step label
|
|
18
12
|
$stepper-step-label-margin-y: spacing(2) !default;
|
|
19
13
|
|
|
20
14
|
// Step label - Unvisited
|
|
21
|
-
$stepper-step-label-
|
|
15
|
+
$stepper-step-label-incomplete-color: var(--#{$prefix}neutral-a9) !default;
|
|
22
16
|
|
|
23
17
|
// Step line
|
|
24
18
|
$stepper-step-line-height: 2px !default;
|
|
25
19
|
$stepper-step-line-background-color: var(--#{$prefix}neutral-a3) !default;
|
|
20
|
+
$stepper-step-line-transition-duration: 0.3s !default;
|
|
26
21
|
|
|
27
22
|
// Step line - Status
|
|
28
23
|
$stepper-step-line-status-background-color: var(--#{$prefix}accent-a3) !default;
|
|
29
24
|
|
|
30
25
|
// Step line - Visited
|
|
31
|
-
$stepper-step-line-
|
|
26
|
+
$stepper-step-line-completed-background-color: var(
|
|
32
27
|
--#{$prefix}primary-a9
|
|
33
28
|
) !default;
|
|
34
29
|
|
|
35
30
|
// Step line - Visited + status
|
|
36
|
-
$stepper-step-line-
|
|
31
|
+
$stepper-step-line-completed-status-background-color: var(
|
|
37
32
|
--#{$prefix}accent-a9
|
|
38
33
|
) !default;
|
|
34
|
+
|
|
35
|
+
// Step content label
|
|
36
|
+
$stepper-step-content-label-margin-bottom: spacing(1.5) !default;
|
|
37
|
+
$stepper-step-content-label-font-size: var(--#{$prefix}font-size-sm) !default;
|
|
38
|
+
$stepper-step-content-label-line-height: var(--#{$prefix}font-size-sm) !default;
|
|
39
|
+
$stepper-step-content-label-font-weight: $font-weight-medium !default;
|
|
40
|
+
|
|
41
|
+
// Step content label index
|
|
42
|
+
$stepper-step-content-label-index-margin-right: spacing(2) !default;
|
|
43
|
+
$stepper-step-content-label-index-size: $stepper-step-size !default;
|
|
44
|
+
$stepper-step-content-label-index-border-radius: $stepper-step-border-radius !default;
|
|
45
|
+
$stepper-step-content-label-index-background-color: var(
|
|
46
|
+
--#{$prefix}primary-9
|
|
47
|
+
) !default;
|
|
48
|
+
$stepper-step-content-label-index-color: var(
|
|
49
|
+
--#{$prefix}primary-contrast
|
|
50
|
+
) !default;
|
|
51
|
+
|
|
52
|
+
// Step content
|
|
53
|
+
$stepper-step-content-gap-y: spacing(3) !default;
|
|
54
|
+
$stepper-step-content-animation-duration: var(
|
|
55
|
+
--#{$prefix}animation-fade-duration
|
|
56
|
+
) !default;
|
|
57
|
+
$stepper-step-content-animation-timing-function: var(
|
|
58
|
+
--#{$prefix}animation-fade-timing-function
|
|
59
|
+
) !default;
|
|
60
|
+
|
|
61
|
+
// Step content - Focus
|
|
62
|
+
$stepper-step-content-focus-outline-width: 2px !default;
|
|
63
|
+
$stepper-step-content-focus-outline-color: var(--#{$prefix}primary-8) !default;
|
|
64
|
+
|
|
65
|
+
// Stepper trigger
|
|
66
|
+
$stepper-trigger-margin-x: spacing(2) !default;
|
|
@@ -5,8 +5,13 @@
|
|
|
5
5
|
|
|
6
6
|
.#{$prefix}stepper {
|
|
7
7
|
$stepper: &;
|
|
8
|
+
display: flex;
|
|
9
|
+
flex-wrap: wrap;
|
|
8
10
|
|
|
9
11
|
&__step-list {
|
|
12
|
+
width: 100%;
|
|
13
|
+
margin: 0;
|
|
14
|
+
padding: 0;
|
|
10
15
|
display: flex;
|
|
11
16
|
justify-content: center;
|
|
12
17
|
|
|
@@ -15,7 +20,7 @@
|
|
|
15
20
|
}
|
|
16
21
|
}
|
|
17
22
|
|
|
18
|
-
&__step
|
|
23
|
+
&__step {
|
|
19
24
|
position: relative;
|
|
20
25
|
flex: 1 0;
|
|
21
26
|
display: flex;
|
|
@@ -24,7 +29,7 @@
|
|
|
24
29
|
justify-content: flex-end;
|
|
25
30
|
|
|
26
31
|
// Line before the step number
|
|
27
|
-
|
|
32
|
+
&:not(:first-child)::before {
|
|
28
33
|
content: "";
|
|
29
34
|
display: block;
|
|
30
35
|
position: absolute;
|
|
@@ -34,29 +39,27 @@
|
|
|
34
39
|
width: calc(100% - $stepper-step-size);
|
|
35
40
|
background-color: $stepper-step-line-background-color;
|
|
36
41
|
|
|
37
|
-
@include accessible-transition(
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
&:first-child::before {
|
|
41
|
-
display: none;
|
|
42
|
+
@include accessible-transition(
|
|
43
|
+
$duration: $stepper-step-line-transition-duration
|
|
44
|
+
);
|
|
42
45
|
}
|
|
43
46
|
|
|
44
47
|
&[data-status]::before {
|
|
45
48
|
background-color: $stepper-step-line-status-background-color;
|
|
46
49
|
}
|
|
47
50
|
|
|
48
|
-
|
|
51
|
+
&:is([data-completed], [data-active]) {
|
|
49
52
|
&::before {
|
|
50
|
-
background-color: $stepper-step-line-
|
|
53
|
+
background-color: $stepper-step-line-completed-background-color;
|
|
51
54
|
}
|
|
52
55
|
|
|
53
56
|
&[data-status]::before {
|
|
54
|
-
background-color: $stepper-step-line-
|
|
57
|
+
background-color: $stepper-step-line-completed-status-background-color;
|
|
55
58
|
}
|
|
56
59
|
}
|
|
57
60
|
}
|
|
58
61
|
|
|
59
|
-
&__step {
|
|
62
|
+
&__step-button {
|
|
60
63
|
min-width: $stepper-step-size;
|
|
61
64
|
min-height: $stepper-step-size;
|
|
62
65
|
border-radius: $stepper-step-border-radius;
|
|
@@ -67,20 +70,64 @@
|
|
|
67
70
|
margin-bottom: $stepper-step-label-margin-y;
|
|
68
71
|
text-align: center;
|
|
69
72
|
|
|
70
|
-
&:not([data-
|
|
71
|
-
color: $stepper-step-label-
|
|
73
|
+
&:not([data-completed], [data-active]) {
|
|
74
|
+
color: $stepper-step-label-incomplete-color;
|
|
72
75
|
}
|
|
73
76
|
}
|
|
74
77
|
|
|
75
|
-
//
|
|
76
|
-
&__step-content
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
78
|
+
// Step content label (print only)
|
|
79
|
+
&__step-content-label {
|
|
80
|
+
display: inline-flex;
|
|
81
|
+
align-items: center;
|
|
82
|
+
|
|
83
|
+
margin-bottom: $stepper-step-content-label-margin-bottom;
|
|
84
|
+
font-size: $stepper-step-content-label-font-size;
|
|
85
|
+
line-height: $stepper-step-content-label-line-height;
|
|
86
|
+
font-weight: $stepper-step-content-label-font-weight;
|
|
81
87
|
}
|
|
88
|
+
&__step-content-label-index {
|
|
89
|
+
display: inline-flex;
|
|
90
|
+
align-items: center;
|
|
91
|
+
justify-content: center;
|
|
92
|
+
margin-right: $stepper-step-content-label-index-margin-right;
|
|
93
|
+
min-width: $stepper-step-content-label-index-size;
|
|
94
|
+
min-height: $stepper-step-content-label-index-size;
|
|
95
|
+
border-radius: $stepper-step-content-label-index-border-radius;
|
|
96
|
+
background-color: $stepper-step-content-label-index-background-color;
|
|
97
|
+
color: $stepper-step-content-label-index-color;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
&__step-content {
|
|
101
|
+
width: 100%;
|
|
82
102
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
103
|
+
&:focus-visible {
|
|
104
|
+
outline: $stepper-step-content-focus-outline-width solid
|
|
105
|
+
$stepper-step-content-focus-outline-color;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
// TODO: Improve animations
|
|
109
|
+
&[data-active] {
|
|
110
|
+
@include accessible-animation(
|
|
111
|
+
$animation-fade-in $stepper-step-content-animation-duration
|
|
112
|
+
$stepper-step-content-animation-timing-function
|
|
113
|
+
);
|
|
114
|
+
}
|
|
115
|
+
//&:not([data-active]) {
|
|
116
|
+
// @include accessible-animation-close();
|
|
117
|
+
//}
|
|
118
|
+
|
|
119
|
+
& + .#{$prefix}stepper__step-content-label {
|
|
120
|
+
margin-top: $stepper-step-content-gap-y;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
&__next-trigger,
|
|
125
|
+
&__finish-trigger {
|
|
126
|
+
margin-left: auto;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
:is(&__next-trigger, &__finish-trigger)
|
|
130
|
+
+ :is(&__next-trigger, &__finish-trigger) {
|
|
131
|
+
margin-left: $stepper-trigger-margin-x;
|
|
132
|
+
}
|
|
86
133
|
}
|
|
@@ -342,10 +342,6 @@
|
|
|
342
342
|
|
|
343
343
|
// Tab inner
|
|
344
344
|
&__tab-inner {
|
|
345
|
-
overflow: hidden;
|
|
346
|
-
text-overflow: ellipsis;
|
|
347
|
-
white-space: nowrap;
|
|
348
|
-
|
|
349
345
|
max-width: $tabs-tab-inner-max-width;
|
|
350
346
|
min-width: var(--#{$prefix}tabs-tab-inner-min-width);
|
|
351
347
|
min-height: var(--#{$prefix}tabs-tab-inner-min-height);
|
|
@@ -381,6 +377,12 @@
|
|
|
381
377
|
@include accessible-transition();
|
|
382
378
|
}
|
|
383
379
|
|
|
380
|
+
&__tab-text {
|
|
381
|
+
overflow: hidden;
|
|
382
|
+
text-overflow: ellipsis;
|
|
383
|
+
white-space: nowrap;
|
|
384
|
+
}
|
|
385
|
+
|
|
384
386
|
// Scroll button
|
|
385
387
|
&__scroll-button {
|
|
386
388
|
position: relative;
|
package/scss/index.scss
CHANGED
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
@forward "components/DataTable/DataTable";
|
|
24
24
|
@forward "components/DateInput/DateInput";
|
|
25
25
|
@forward "components/DateRangeInput/DateRangeInput";
|
|
26
|
+
@forward "components/DescriptionList/DescriptionList";
|
|
26
27
|
@forward "components/Dialog/Dialog";
|
|
27
28
|
@forward "components/DropdownMenu/DropdownMenu";
|
|
28
29
|
@forward "components/Feedback/Feedback";
|
|
@@ -139,11 +139,11 @@
|
|
|
139
139
|
|
|
140
140
|
@include accessible-transition();
|
|
141
141
|
|
|
142
|
-
&:not(:disabled, [data-
|
|
142
|
+
&:not(:disabled, [data-disabled], [data-readonly]) {
|
|
143
143
|
cursor: pointer;
|
|
144
144
|
}
|
|
145
145
|
|
|
146
|
-
&:is(:disabled, [data-
|
|
146
|
+
&:is(:disabled, [data-disabled]) {
|
|
147
147
|
cursor: $checkable-disabled-cursor;
|
|
148
148
|
opacity: $checkable-disabled-opacity;
|
|
149
149
|
}
|
|
@@ -283,7 +283,7 @@
|
|
|
283
283
|
}
|
|
284
284
|
}
|
|
285
285
|
|
|
286
|
-
&:active:not(:disabled, [data-
|
|
286
|
+
&:active:not(:disabled, [data-disabled], [data-readonly]) {
|
|
287
287
|
background-color: var(--#{$prefix}checkable-active-background-color);
|
|
288
288
|
|
|
289
289
|
&[data-status] {
|
|
@@ -72,24 +72,15 @@
|
|
|
72
72
|
|
|
73
73
|
@include accessible-transition();
|
|
74
74
|
|
|
75
|
-
&:is(button):not(:disabled
|
|
76
|
-
[data-disabled="true"]
|
|
77
|
-
):not([data-loading]) {
|
|
75
|
+
&:is(button):not(:disabled, [data-disabled]) {
|
|
78
76
|
cursor: $menu-item-button-cursor;
|
|
79
77
|
}
|
|
80
78
|
|
|
81
|
-
&:any-link:not(:disabled
|
|
82
|
-
[data-disabled="true"]
|
|
83
|
-
):not([data-loading]) {
|
|
79
|
+
&:any-link:not(:disabled, [data-disabled]) {
|
|
84
80
|
cursor: $menu-item-link-cursor;
|
|
85
81
|
}
|
|
86
82
|
|
|
87
|
-
&:is(
|
|
88
|
-
:disabled,
|
|
89
|
-
[data-disabled=""],
|
|
90
|
-
[data-disabled="true"],
|
|
91
|
-
[data-loading]
|
|
92
|
-
) {
|
|
83
|
+
&:is(:disabled, [data-disabled]) {
|
|
93
84
|
cursor: $menu-item-disabled-cursor;
|
|
94
85
|
opacity: $menu-item-disabled-opacity;
|
|
95
86
|
}
|
|
@@ -130,9 +121,7 @@
|
|
|
130
121
|
}
|
|
131
122
|
|
|
132
123
|
// Item - Highlighted
|
|
133
|
-
&--highlighted:not(:disabled)
|
|
134
|
-
[data-disabled="true"]
|
|
135
|
-
) {
|
|
124
|
+
&--highlighted:not(:disabled) {
|
|
136
125
|
@include declare-var(
|
|
137
126
|
--#{$prefix}menu-item-background-color,
|
|
138
127
|
map.get(
|
|
@@ -276,7 +265,7 @@
|
|
|
276
265
|
}
|
|
277
266
|
|
|
278
267
|
// Item - Highlighted + Selected
|
|
279
|
-
&--highlighted:not(:disabled):
|
|
268
|
+
&--highlighted:not(:disabled):is(&--selected) {
|
|
280
269
|
@include declare-var(
|
|
281
270
|
--#{$prefix}menu-item-background-color,
|
|
282
271
|
map.get(
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// Mixin used to apply animations depending on the `prefers-reduced-motion`
|
|
4
4
|
// user preference.
|
|
5
5
|
@mixin accessible-animation($args...) {
|
|
6
|
-
@media (prefers-reduced-motion: no-preference) {
|
|
6
|
+
@media screen and (prefers-reduced-motion: no-preference) {
|
|
7
7
|
animation: $args;
|
|
8
8
|
}
|
|
9
9
|
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
$duration: var(--#{$prefix}transition-duration),
|
|
8
8
|
$timing-function: var(--#{$prefix}transition-timing-function)
|
|
9
9
|
) {
|
|
10
|
-
@media (prefers-reduced-motion: no-preference) {
|
|
10
|
+
@media screen and (prefers-reduced-motion: no-preference) {
|
|
11
11
|
transition-property: $property;
|
|
12
12
|
transition-duration: $duration;
|
|
13
13
|
transition-timing-function: $timing-function;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"en-DwZKZVGL.js","sources":["../../src/locales/en.tsx"],"sourcesContent":["import type { LocalizationObject } from \"../providers/LocalizationProvider\";\nimport { IS_APPLE } from \"../utils/platformUtils.ts\";\n\n/** `en` locale (partial). */\nexport const en: Omit<LocalizationObject, \"languageTag\" | \"dayPickerLocale\"> = {\n AlertDialog: {\n okText: \"OK\",\n },\n Calendar: {\n monthSelectLabel: \"Month\",\n yearSelectLabel: \"Year\",\n previousMonthLabel: \"Previous month\",\n nextMonthLabel: \"Next month\",\n },\n CloseButton: {\n label: \"Close\",\n },\n CommandMenu: {\n searchPlaceholder: \"Search…\",\n listLabel: \"Suggestions\",\n loadingLabel: \"Loading…\",\n emptyMessage: \"No results found.\",\n },\n CommandMenuDialog: {\n title: \"Command palette\",\n description: \"Search for a command…\",\n },\n ConfirmDialog: {\n cancelText: \"Cancel\",\n },\n ControlCode: {\n visuallyHiddenPrefix: \"Field\",\n },\n DataTable: {\n selectAllRowsLabel: \"Select all\",\n selectRowLabel: \"Select\",\n },\n DataTableContent: {\n emptyMessage: \"Nothing to show.\",\n },\n DataTableFilter: {\n \"aria-label\": \"Table filter\",\n placeholder: \"Filter\",\n },\n DataTablePagination: {\n \"aria-label\": \"Table pagination\",\n rowsRangeSelectLabel: (total) => `Visible rows out of ${total}`,\n rowsRange: (range, total) => (\n <>\n Rows {range} of {total}\n </>\n ),\n previousPageButtonLabel: \"Previous page\",\n nextPageButtonLabel: \"Next page\",\n },\n DataTableRowsPerPage: {\n label: \"Rows per page:\",\n },\n DateInput: {\n selectedDateDescription: (date) => `Selected date, ${date}`,\n calendarButtonLabel: \"Open calendar\",\n },\n DateRangeInput: {\n startInputLabel: \"Start date\",\n endInputLabel: \"End date\",\n selectedDateRangeDescription: ({ start, end }) =>\n `Selected date range, ${start || \"missing start date\"} to ${\n end || \"missing end date\"\n }`,\n },\n ErrorBoundary: {\n fallbackMessage: (\n <>\n Something went wrong.\n <br />\n Press the button on the right to try again. If the problem persists,\n please try again later.\n </>\n ),\n resetButtonLabel: \"Retry\",\n },\n Feedback: {\n visuallyHiddenPrefix: (type) =>\n type === \"error\" ? \"Error,\" : type === \"warning\" ? \"Warning,\" : null,\n },\n FeedbackPopover: {\n label: \"Show feedback\",\n },\n FieldGroupHeader: {\n visuallyHiddenCodePrefix: \"Section\",\n },\n Input: {\n loadingDescription: \"Loading…\",\n clearButtonLabel: \"Clear\",\n },\n Keybinds: {\n keybindsSeparatorLabel: \"or\",\n keyPressesSeparatorLabel: \"then\",\n keyLabels: {\n Meta: IS_APPLE ? undefined : \"Windows Key\",\n },\n },\n Label: {\n helperButtonLabel: \"Show help\",\n },\n NumericInput: {\n decimalSeparator: \".\",\n groupingStyle: \"thousand\",\n groupSeparator: \",\",\n },\n RadioGroup: {\n clearDescription: \"Press Backspace or Delete to clear.\",\n },\n Select: {\n placeholder: \"Select…\",\n clearDescription: \"Press Backspace or Delete to clear.\",\n searchLabel: \"Search options\",\n optionsLabel: \"Options\",\n valueTagCloseButtonLabel: \"Remove\",\n },\n TableColumn: {\n helperButtonLabel: \"Show help\",\n },\n TableHead: {\n sortByColumnDescription: (columnName, sortDirection) =>\n sortDirection === null\n ? `Stop sorting table by column “${columnName}”`\n : `Sort table by column “${columnName}” in ${\n sortDirection === \"asc\" ? \"ascending\" : \"descending\"\n } order`,\n },\n TabList: {\n scrollLeftButtonLabel: \"Scroll left\",\n scrollRightButtonLabel: \"Scroll right\",\n },\n ToastProvider: {\n label: \"Notification\",\n },\n ToastViewport: {\n label: \"Notifications ({hotkey})\",\n },\n};\n"],"names":[],"mappings":";;AAIO,MAAM,KAAkE;AAAA,EAC7E,aAAa;AAAA,IACX,QAAQ;AAAA,EAAA;AAAA,EAEV,UAAU;AAAA,IACR,kBAAkB;AAAA,IAClB,iBAAiB;AAAA,IACjB,oBAAoB;AAAA,IACpB,gBAAgB;AAAA,EAAA;AAAA,EAElB,aAAa;AAAA,IACX,OAAO;AAAA,EAAA;AAAA,EAET,aAAa;AAAA,IACX,mBAAmB;AAAA,IACnB,WAAW;AAAA,IACX,cAAc;AAAA,IACd,cAAc;AAAA,EAAA;AAAA,EAEhB,mBAAmB;AAAA,IACjB,OAAO;AAAA,IACP,aAAa;AAAA,EAAA;AAAA,EAEf,eAAe;AAAA,IACb,YAAY;AAAA,EAAA;AAAA,EAEd,aAAa;AAAA,IACX,sBAAsB;AAAA,EAAA;AAAA,EAExB,WAAW;AAAA,IACT,oBAAoB;AAAA,IACpB,gBAAgB;AAAA,EAAA;AAAA,EAElB,kBAAkB;AAAA,IAChB,cAAc;AAAA,EAAA;AAAA,EAEhB,iBAAiB;AAAA,IACf,cAAc;AAAA,IACd,aAAa;AAAA,EAAA;AAAA,EAEf,qBAAqB;AAAA,IACnB,cAAc;AAAA,IACd,sBAAsB,CAAC,UAAU,uBAAuB,KAAK;AAAA,IAC7D,WAAW,CAAC,OAAO,UACjB,qBAAA,UAAA,EAAE,UAAA;AAAA,MAAA;AAAA,MACW;AAAA,MAAM;AAAA,MAAU;AAAA,IAAA,GAC7B;AAAA,IAEF,yBAAyB;AAAA,IACzB,qBAAqB;AAAA,EAAA;AAAA,EAEvB,sBAAsB;AAAA,IACpB,OAAO;AAAA,EAAA;AAAA,EAET,WAAW;AAAA,IACT,yBAAyB,CAAC,SAAS,kBAAkB,IAAI;AAAA,IACzD,qBAAqB;AAAA,EAAA;AAAA,EAEvB,gBAAgB;AAAA,IACd,iBAAiB;AAAA,IACjB,eAAe;AAAA,IACf,8BAA8B,CAAC,EAAE,OAAO,UACtC,wBAAwB,SAAS,oBAAoB,OACnD,OAAO,kBACT;AAAA,EAAA;AAAA,EAEJ,eAAe;AAAA,IACb,iBACE,qBAAA,UAAA,EAAE,UAAA;AAAA,MAAA;AAAA,0BAEC,MAAA,EAAG;AAAA,MAAE;AAAA,IAAA,GAGR;AAAA,IAEF,kBAAkB;AAAA,EAAA;AAAA,EAEpB,UAAU;AAAA,IACR,sBAAsB,CAAC,SACrB,SAAS,UAAU,WAAW,SAAS,YAAY,aAAa;AAAA,EAAA;AAAA,EAEpE,iBAAiB;AAAA,IACf,OAAO;AAAA,EAAA;AAAA,EAET,kBAAkB;AAAA,IAChB,0BAA0B;AAAA,EAAA;AAAA,EAE5B,OAAO;AAAA,IACL,oBAAoB;AAAA,IACpB,kBAAkB;AAAA,EAAA;AAAA,EAEpB,UAAU;AAAA,IACR,wBAAwB;AAAA,IACxB,0BAA0B;AAAA,IAC1B,WAAW;AAAA,MACT,MAAM,WAAW,SAAY;AAAA,IAAA;AAAA,EAC/B;AAAA,EAEF,OAAO;AAAA,IACL,mBAAmB;AAAA,EAAA;AAAA,EAErB,cAAc;AAAA,IACZ,kBAAkB;AAAA,IAClB,eAAe;AAAA,IACf,gBAAgB;AAAA,EAAA;AAAA,EAElB,YAAY;AAAA,IACV,kBAAkB;AAAA,EAAA;AAAA,EAEpB,QAAQ;AAAA,IACN,aAAa;AAAA,IACb,kBAAkB;AAAA,IAClB,aAAa;AAAA,IACb,cAAc;AAAA,IACd,0BAA0B;AAAA,EAAA;AAAA,EAE5B,aAAa;AAAA,IACX,mBAAmB;AAAA,EAAA;AAAA,EAErB,WAAW;AAAA,IACT,yBAAyB,CAAC,YAAY,kBACpC,kBAAkB,OACd,iCAAiC,UAAU,MAC3C,yBAAyB,UAAU,QACjC,kBAAkB,QAAQ,cAAc,YAC1C;AAAA,EAAA;AAAA,EAER,SAAS;AAAA,IACP,uBAAuB;AAAA,IACvB,wBAAwB;AAAA,EAAA;AAAA,EAE1B,eAAe;AAAA,IACb,OAAO;AAAA,EAAA;AAAA,EAET,eAAe;AAAA,IACb,OAAO;AAAA,EAAA;AAEX;"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { ComponentPropsWithoutRef } from 'react';
|
|
2
|
-
import { Calendar } from '../Calendar';
|
|
3
|
-
/** Properties of the date picker component. */
|
|
4
|
-
export interface DatePickerProps extends ComponentPropsWithoutRef<typeof Calendar> {
|
|
5
|
-
/** Default date value. */
|
|
6
|
-
defaultValue?: Date | null;
|
|
7
|
-
/** Controlled selected date value. */
|
|
8
|
-
value?: Date | null;
|
|
9
|
-
/** Action called whenever the date picker's value changes. */
|
|
10
|
-
onChange?: (value: Date | null) => void;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Date picker component built on top of [React
|
|
14
|
-
* DayPicker](https://react-day-picker.js.org) and
|
|
15
|
-
* [Calendar](/docs/ostack-ui-forms-calendar--docs) component, providing an
|
|
16
|
-
* intuitive and easy-to-use interface for selecting a date. It acts as a
|
|
17
|
-
* higher-level abstraction that manages date selection while offering both
|
|
18
|
-
* controlled and uncontrolled usage scenarios.
|
|
19
|
-
*
|
|
20
|
-
* The DatePicker allows users to easily select a date by responding to click
|
|
21
|
-
* events on the calendar days. When a date is clicked, the component updates
|
|
22
|
-
* the selected date and triggers a callback, making it simple to integrate into
|
|
23
|
-
* forms or other applications that need to track a chosen date.
|
|
24
|
-
*
|
|
25
|
-
* For detailed customization options, refer to the Calendar component story.
|
|
26
|
-
*/
|
|
27
|
-
export declare function DatePicker({ defaultValue, value: controlledValue, defaultMonth, onChange, onDayClick, ...otherProps }: DatePickerProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './DatePicker.tsx';
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { ComponentPropsWithoutRef } from 'react';
|
|
2
|
-
import { Calendar } from '../Calendar';
|
|
3
|
-
/** A range of dates from a start date to an end date. */
|
|
4
|
-
export interface DateRange {
|
|
5
|
-
start: Date | null;
|
|
6
|
-
end: Date | null;
|
|
7
|
-
}
|
|
8
|
-
/** Mode specifying which end of the range the user is controlling. */
|
|
9
|
-
export type DateRangePickerSelectionMode = "start" | "end" | "both";
|
|
10
|
-
/** Properties of the date-range picker component. */
|
|
11
|
-
export interface DateRangePickerProps extends ComponentPropsWithoutRef<typeof Calendar> {
|
|
12
|
-
/** Default date-range value. */
|
|
13
|
-
defaultValue?: DateRange;
|
|
14
|
-
/** Controlled selected date-range value. */
|
|
15
|
-
value?: DateRange;
|
|
16
|
-
/** Action called whenever the date-range picker's value changes. */
|
|
17
|
-
onChange?: (value: DateRange) => void;
|
|
18
|
-
/**
|
|
19
|
-
* Specifies which end of the range the user is currently attempting to
|
|
20
|
-
* change.
|
|
21
|
-
*
|
|
22
|
-
* @default "both"
|
|
23
|
-
*/
|
|
24
|
-
selectionMode?: DateRangePickerSelectionMode;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Date-range picker component built on top of [React
|
|
28
|
-
* DayPicker](https://react-day-picker.js.org) and
|
|
29
|
-
* [Calendar](/docs/ostack-ui-forms-calendar--docs). Unlike the `Calendar`,
|
|
30
|
-
* `DateRangePicker` provides its own default event handlers for date selection.
|
|
31
|
-
* It supports controlled and uncontrolled states, logical constraints to ensure
|
|
32
|
-
* valid ranges, and flexible selection modes for the start, end, or both dates.
|
|
33
|
-
* Interactive hover feedback helps users visualize their selections in
|
|
34
|
-
* real-time.
|
|
35
|
-
*
|
|
36
|
-
* This component doesn’t have dedicated stories as its functionality is covered
|
|
37
|
-
* by [DatePicker](/docs/ostack-ui-forms-date-picker--docs) and `Calendar`
|
|
38
|
-
* stories, avoiding redundancy. Ideal for booking systems, dashboards, and
|
|
39
|
-
* forms, it simplifies workflows requiring precise date range inputs.
|
|
40
|
-
*/
|
|
41
|
-
export declare function DateRangePicker({ defaultValue, value: controlledValue, onChange, selectionMode, defaultMonth, modifiers, onDayClick, onDayFocus, onDayMouseEnter, numberOfMonths, ...otherProps }: DateRangePickerProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './DateRangePicker.tsx';
|