@dynamic-framework/ui-react 1.5.0 → 1.7.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/LICENSE +223 -21
- package/README.md +3 -15
- package/dist/css/dynamic-root.css +286 -0
- package/dist/css/dynamic-root.min.css +1 -0
- package/dist/css/dynamic-ui.css +17279 -1
- package/dist/css/dynamic-ui.min.css +1 -0
- package/dist/index.esm.js +918 -549
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +966 -590
- package/dist/index.js.map +1 -1
- package/dist/types/components/DAlert.d.ts +16 -0
- package/dist/types/components/DBadge.d.ts +11 -0
- package/dist/types/components/DBoxFile.d.ts +3 -4
- package/dist/types/components/DButton.d.ts +21 -0
- package/dist/types/components/DCard.d.ts +2 -2
- package/dist/types/components/DCardAccount.d.ts +3 -3
- package/dist/types/components/DCardBody.d.ts +2 -2
- package/dist/types/components/DCardFooter.d.ts +2 -2
- package/dist/types/components/DCardHeader.d.ts +2 -2
- package/dist/types/components/DCarousel.d.ts +3 -3
- package/dist/types/components/DCarouselSlide.d.ts +1 -1
- package/dist/types/components/DChip.d.ts +10 -0
- package/dist/types/components/DCollapse.d.ts +4 -4
- package/dist/types/components/DCollapseIconText.d.ts +3 -4
- package/dist/types/components/DCurrencyText.d.ts +1 -1
- package/dist/types/components/DDatePicker.d.ts +5 -5
- package/dist/types/components/DDatePickerHeader.d.ts +4 -4
- package/dist/types/components/DDatePickerInput.d.ts +7 -7
- package/dist/types/components/DDatePickerTime.d.ts +6 -6
- package/dist/types/components/DFormikInput.d.ts +2 -2
- package/dist/types/components/DFormikInputCurrency.d.ts +1 -1
- package/dist/types/components/DFormikInputSelect.d.ts +3 -6
- package/dist/types/components/DIcon.d.ts +16 -0
- package/dist/types/components/DInput.d.ts +32 -0
- package/dist/types/components/DInputCheck.d.ts +15 -0
- package/dist/types/components/DInputCounter.d.ts +22 -0
- package/dist/types/components/DInputCurrency.d.ts +4 -8
- package/dist/types/components/DInputCurrencyBase.d.ts +24 -0
- package/dist/types/components/DInputPassword.d.ts +17 -0
- package/dist/types/components/DInputPin.d.ts +19 -0
- package/dist/types/components/DInputSearch.d.ts +19 -0
- package/dist/types/components/DInputSelect.d.ts +23 -0
- package/dist/types/components/DInputSwitch.d.ts +11 -0
- package/dist/types/components/DList.d.ts +4 -3
- package/dist/types/components/DListItem.d.ts +4 -4
- package/dist/types/components/DListItemMovement.d.ts +2 -2
- package/dist/types/components/DModal.d.ts +14 -0
- package/dist/types/components/DModalBody.d.ts +6 -0
- package/dist/types/components/DModalFooter.d.ts +6 -0
- package/dist/types/components/DModalHeader.d.ts +7 -0
- package/dist/types/components/DMonthPicker.d.ts +4 -4
- package/dist/types/components/DOffcanvas.d.ts +10 -0
- package/dist/types/components/DOffcanvasBody.d.ts +6 -0
- package/dist/types/components/DOffcanvasFooter.d.ts +6 -0
- package/dist/types/components/DOffcanvasHeader.d.ts +7 -0
- package/dist/types/components/DPaginator.d.ts +4 -4
- package/dist/types/components/DPopover.d.ts +3 -2
- package/dist/types/components/DProgress.d.ts +9 -0
- package/dist/types/components/DQuickActionButton.d.ts +22 -0
- package/dist/types/components/DQuickActionCheck.d.ts +13 -0
- package/dist/types/components/DQuickActionSelect.d.ts +12 -0
- package/dist/types/components/DQuickActionSwitch.d.ts +11 -0
- package/dist/types/components/DSkeleton.d.ts +2 -2
- package/dist/types/components/DStepper.d.ts +6 -3
- package/dist/types/components/DStepperDesktop.d.ts +12 -0
- package/dist/types/components/DStepperMobile.d.ts +11 -0
- package/dist/types/components/DTabContent.d.ts +1 -1
- package/dist/types/components/DTabs.d.ts +5 -5
- package/dist/types/components/DToastContainer.d.ts +2 -3
- package/dist/types/components/DTooltip.d.ts +2 -2
- package/dist/types/components/banking/{MPermissionGroup.d.ts → DPermissionGroup.d.ts} +2 -2
- package/dist/types/components/banking/DPermissionItem.d.ts +1 -1
- package/dist/types/components/banking/{MSummaryCard.d.ts → DSummaryCard.d.ts} +2 -2
- package/dist/types/components/banking/index.d.ts +2 -2
- package/dist/types/components/banking/interface.d.ts +1 -1
- package/dist/types/components/config.d.ts +5 -0
- package/dist/types/components/index.d.ts +48 -20
- package/dist/types/components/interface.d.ts +44 -0
- package/dist/types/contexts/ModalContext.d.ts +12 -12
- package/dist/types/contexts/OffcanvasContext.d.ts +12 -12
- package/dist/types/hooks/useScreenshot.d.ts +1 -1
- package/dist/types/hooks/useToast.d.ts +3 -3
- package/dist/types/stories/components/DBadge.stories.d.ts +1 -1
- package/dist/types/stories/components/DBoxFile.stories.d.ts +1 -1
- package/dist/types/stories/components/DButton.stories.d.ts +1 -1
- package/dist/types/stories/components/DChip.stories.d.ts +1 -1
- package/dist/types/stories/components/DCurrencyText.stories.d.ts +1 -1
- package/dist/types/stories/components/DDatePicker.stories.d.ts +1 -1
- package/dist/types/stories/components/DFormikInput.stories.d.ts +1 -1
- package/dist/types/stories/components/DFormikInputCurrency.stories.d.ts +1 -1
- package/dist/types/stories/components/DFormikInputSelect.stories.d.ts +1 -1
- package/dist/types/stories/components/DIcon.stories.d.ts +1 -1
- package/dist/types/stories/components/DInput.stories.d.ts +1 -1
- package/dist/types/stories/components/DInputCheck.stories.d.ts +1 -1
- package/dist/types/stories/components/DInputCounter.stories.d.ts +1 -1
- package/dist/types/stories/components/DInputCurrency.stories.d.ts +1 -1
- package/dist/types/stories/components/DInputCurrencyBase.stories.d.ts +1 -1
- package/dist/types/stories/components/DInputPassword.stories.d.ts +1 -1
- package/dist/types/stories/components/DInputPin.stories.d.ts +1 -1
- package/dist/types/stories/components/DInputSearch.stories.d.ts +1 -1
- package/dist/types/stories/components/DInputSelect.stories.d.ts +7 -3
- package/dist/types/stories/components/DInputSwitch.stories.d.ts +1 -1
- package/dist/types/stories/components/DList.stories.d.ts +1 -1
- package/dist/types/stories/components/DListItem.stories.d.ts +1 -1
- package/dist/types/stories/components/DListItemMovement.stories.d.ts +1 -1
- package/dist/types/stories/components/DPaginator.stories.d.ts +1 -1
- package/dist/types/stories/components/DProgress.stories.d.ts +1 -1
- package/dist/types/stories/components/DQuickActionButton.stories.d.ts +1 -1
- package/dist/types/stories/components/DQuickActionCheck.stories.d.ts +1 -1
- package/dist/types/stories/components/DQuickActionSelect.stories.d.ts +1 -1
- package/dist/types/stories/components/DQuickActionSwitch.stories.d.ts +1 -1
- package/dist/types/stories/components/DSkeleton.stories.d.ts +1 -1
- package/dist/types/stories/components/DStepper.stories.d.ts +1 -1
- package/dist/types/stories/components/DStepperDesktop.stories.d.ts +7 -0
- package/dist/types/stories/components/DStepperMobile.stories.d.ts +6 -0
- package/dist/types/stories/components/DTooltip.stories.d.ts +1 -1
- package/dist/types/stories/hooks/useFormatCurrency.stories.d.ts +1 -1
- package/dist/types/stories/hooks/useModalContext.stories.d.ts +1 -1
- package/dist/types/stories/hooks/useOffcanvasContext.stories.d.ts +1 -1
- package/dist/types/stories/hooks/useToast.stories.d.ts +2 -2
- package/dist/types/stories/patterns/DAlert.stories.d.ts +1 -1
- package/dist/types/stories/{components → patterns}/DCard.stories.d.ts +1 -1
- package/dist/types/stories/{components → patterns}/DCardAccount.stories.d.ts +1 -1
- package/dist/types/stories/patterns/DCarousel.stories.d.ts +1 -1
- package/dist/types/stories/patterns/DCollapse.stories.d.ts +1 -1
- package/dist/types/stories/patterns/DCollapseIconText.stories.d.ts +1 -1
- package/dist/types/stories/patterns/DModal.stories.d.ts +1 -1
- package/dist/types/stories/patterns/DOffcanvas.stories.d.ts +1 -1
- package/dist/types/stories/patterns/DPopover.stories.d.ts +2 -1
- package/dist/types/stories/patterns/DTabs.stories.d.ts +1 -1
- package/dist/types/utils/format-currency.d.ts +2 -0
- package/dist/types/utils/index.d.ts +2 -1
- package/dist/types/utils/liquid-parser.d.ts +20 -0
- package/package.json +64 -54
- package/src/style/_shame.scss +4 -0
- package/src/style/abstracts/_+import.scss +14 -2
- package/src/style/abstracts/_funcions.scss +55 -0
- package/src/style/abstracts/_maps.scss +1 -0
- package/src/style/abstracts/_mixins.scss +133 -0
- package/src/style/abstracts/_utilities.scss +78 -0
- package/src/style/abstracts/variables/_+import.scss +159 -0
- package/src/style/abstracts/variables/_accordion.scss +35 -0
- package/src/style/abstracts/variables/_alerts.scss +27 -0
- package/src/style/abstracts/variables/_badges.scss +15 -0
- package/src/style/abstracts/variables/_body.scss +52 -0
- package/src/style/abstracts/variables/_border.scss +29 -0
- package/src/style/abstracts/variables/_box-file.scss +4 -4
- package/src/style/abstracts/variables/_box-shadow.scss +6 -0
- package/src/style/abstracts/variables/_breadcrumb.scss +15 -0
- package/src/style/abstracts/variables/_buttons.scss +55 -0
- package/src/style/abstracts/variables/_cards.scss +23 -0
- package/src/style/abstracts/variables/_carousel.scss +37 -0
- package/src/style/abstracts/variables/_chips.scss +13 -0
- package/src/style/abstracts/variables/_close.scss +16 -0
- package/src/style/abstracts/variables/_code.scss +16 -0
- package/src/style/abstracts/variables/_collapse-icon-text.scss +3 -3
- package/src/style/abstracts/variables/_colors.scss +515 -0
- package/src/style/abstracts/variables/_cursors.scss +32 -0
- package/src/style/abstracts/variables/_dropdowns.scss +54 -0
- package/src/style/abstracts/variables/_figures.scss +6 -0
- package/src/style/abstracts/variables/_forms.scss +313 -0
- package/src/style/abstracts/variables/_grid.scss +41 -0
- package/src/style/abstracts/variables/_list-group.scss +43 -0
- package/src/style/abstracts/variables/_modals.scss +58 -0
- package/src/style/abstracts/variables/_navbar.scss +43 -0
- package/src/style/abstracts/variables/_navs.scss +44 -0
- package/src/style/abstracts/variables/_offcanvas.scss +20 -0
- package/src/style/abstracts/variables/_options.scss +24 -0
- package/src/style/abstracts/variables/_pagination.scss +41 -0
- package/src/style/abstracts/variables/_popovers.scss +31 -0
- package/src/style/abstracts/variables/_progress.scss +17 -0
- package/src/style/abstracts/variables/_quick-action-button.scss +31 -0
- package/src/style/abstracts/variables/_quick-action-check.scss +22 -0
- package/src/style/abstracts/variables/_quick-action-select.scss +16 -0
- package/src/style/abstracts/variables/_quick-action-switch.scss +21 -0
- package/src/style/abstracts/variables/_spacers.scss +28 -0
- package/src/style/abstracts/variables/_spinners.scss +13 -0
- package/src/style/abstracts/variables/_tables.scss +57 -0
- package/src/style/abstracts/variables/_thumbnails.scss +10 -0
- package/src/style/abstracts/variables/_toasts.scss +19 -0
- package/src/style/abstracts/variables/_tooltips.scss +29 -0
- package/src/style/abstracts/variables/_typography.scss +122 -0
- package/src/style/abstracts/variables/_z-index.scss +28 -0
- package/src/style/base/_+import.scss +15 -0
- package/src/style/base/_root.scss +248 -0
- package/src/style/base/_tables.scss +171 -0
- package/src/style/components/_+import.scss +46 -1
- package/src/style/components/_d-alert.scss +45 -0
- package/src/style/components/_d-badge.scss +26 -0
- package/src/style/components/_d-button.scss +191 -0
- package/src/style/components/_d-card-account.scss +3 -3
- package/src/style/components/_d-chip.scss +52 -0
- package/src/style/components/_d-icon.scss +32 -0
- package/src/style/components/_d-input-check.scss +20 -0
- package/src/style/components/_d-input-pin.scss +121 -0
- package/src/style/components/_d-input-select.scss +20 -0
- package/src/style/components/_d-input-switch.scss +58 -0
- package/src/style/components/_d-input.scss +168 -0
- package/src/style/components/_d-modal.scss +55 -0
- package/src/style/components/_d-offcanvas.scss +45 -0
- package/src/style/components/_d-popover.scss +4 -1
- package/src/style/components/_d-progress.scss +9 -0
- package/src/style/components/_d-quick-action-button.scss +111 -0
- package/src/style/components/_d-quick-action-check.scss +74 -0
- package/src/style/components/_d-quick-action-select.scss +56 -0
- package/src/style/components/_d-quick-action-switch.scss +71 -0
- package/src/style/components/{_d-stepper.scss → _d-stepper-desktop.scss} +1 -1
- package/src/style/components/_d-stepper-mobile.scss +69 -0
- package/src/style/dynamic-root.scss +6 -0
- package/src/style/dynamic-ui.scss +13 -1
- package/src/style/helpers/_+import.scss +13 -0
- package/src/style/helpers/_color-bg.scss +7 -0
- package/dist/css/dynamic-ui-all.css +0 -1
- package/dist/css/dynamic-ui-react.css +0 -1
- package/dist/types/components/proxies.d.ts +0 -23
- package/dist/types/components/react-component-lib/createComponent.d.ts +0 -10
- package/dist/types/components/react-component-lib/createOverlayComponent.d.ts +0 -21
- package/dist/types/components/react-component-lib/index.d.ts +0 -2
- package/dist/types/components/react-component-lib/interfaces.d.ts +0 -29
- package/dist/types/components/react-component-lib/utils/attachProps.d.ts +0 -16
- package/dist/types/components/react-component-lib/utils/case.d.ts +0 -2
- package/dist/types/components/react-component-lib/utils/dev.d.ts +0 -2
- package/dist/types/components/react-component-lib/utils/index.d.ts +0 -10
- package/src/style/dynamic-ui-all.scss +0 -3
- package/src/style/dynamic-ui-react.scss +0 -7
- /package/dist/types/stories/{constants.d.ts → config/constants.d.ts} +0 -0
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
.btn {
|
|
2
|
+
--#{$prefix}btn-padding-x: #{$btn-padding-x};
|
|
3
|
+
--#{$prefix}btn-padding-y: #{$btn-padding-y};
|
|
4
|
+
--#{$prefix}btn-font-family: #{$btn-font-family};
|
|
5
|
+
@include rfs($btn-font-size, --#{$prefix}btn-font-size);
|
|
6
|
+
--#{$prefix}btn-font-weight: #{$btn-font-weight};
|
|
7
|
+
--#{$prefix}btn-line-height: #{$btn-line-height};
|
|
8
|
+
--#{$prefix}btn-color: #{$btn-color};
|
|
9
|
+
--#{$prefix}btn-bg: transparent;
|
|
10
|
+
--#{$prefix}btn-border-width: #{$btn-border-width};
|
|
11
|
+
--#{$prefix}btn-border-color: transparent;
|
|
12
|
+
--#{$prefix}btn-border-radius: var(--#{$prefix}btn-component-border-radius, #{$btn-border-radius});
|
|
13
|
+
--#{$prefix}btn-hover-border-color: transparent;
|
|
14
|
+
--#{$prefix}btn-box-shadow: #{$btn-box-shadow};
|
|
15
|
+
--#{$prefix}btn-disabled-opacity: #{$btn-disabled-opacity};
|
|
16
|
+
--#{$prefix}btn-focus-box-shadow: 0 0 0 #{$btn-focus-width} rgba(var(--#{$prefix}btn-focus-shadow-rgb), .5);
|
|
17
|
+
|
|
18
|
+
--#{$prefix}btn-link-padding-y: #{$btn-link-padding-y};
|
|
19
|
+
--#{$prefix}btn-link-padding-x: #{$btn-link-padding-x};
|
|
20
|
+
@include rfs($btn-link-font-size-sm, --#{$prefix}btn-link-font-size-sm);
|
|
21
|
+
|
|
22
|
+
--#{$prefix}btn-lg-padding-y: #{$btn-padding-y-lg};
|
|
23
|
+
--#{$prefix}btn-lg-padding-x: #{$btn-padding-x-lg};
|
|
24
|
+
--#{$prefix}btn-lg-font-size: #{$btn-font-size-lg};
|
|
25
|
+
--#{$prefix}btn-lg-border-radius: var(--#{$prefix}btn-component-lg-border-radius, #{$btn-border-radius-lg});
|
|
26
|
+
|
|
27
|
+
--#{$prefix}btn-sm-padding-y: #{$btn-padding-y-sm};
|
|
28
|
+
--#{$prefix}btn-sm-padding-x: #{$btn-padding-x-sm};
|
|
29
|
+
--#{$prefix}btn-sm-font-size: #{$btn-font-size-sm};
|
|
30
|
+
--#{$prefix}btn-sm-border-radius: var(--#{$prefix}btn-component-sm-border-radius, #{$btn-border-radius-sm});
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
display: flex;
|
|
34
|
+
flex-direction: row;
|
|
35
|
+
gap: var(--#{$prefix}btn-gap, $spacer-2);
|
|
36
|
+
align-items: center;
|
|
37
|
+
justify-content: center;
|
|
38
|
+
padding: var(--#{$prefix}btn-padding-y) var(--#{$prefix}btn-padding-x);
|
|
39
|
+
font-family: var(--#{$prefix}btn-font-family);
|
|
40
|
+
@include font-size(var(--#{$prefix}btn-font-size));
|
|
41
|
+
font-weight: var(--#{$prefix}btn-font-weight);
|
|
42
|
+
line-height: var(--#{$prefix}btn-line-height);
|
|
43
|
+
color: var(--#{$prefix}btn-color);
|
|
44
|
+
text-align: center;
|
|
45
|
+
text-decoration: if($link-decoration == none, null, none);
|
|
46
|
+
white-space: $btn-white-space;
|
|
47
|
+
vertical-align: middle;
|
|
48
|
+
cursor: if($enable-button-pointers, pointer, null);
|
|
49
|
+
user-select: none;
|
|
50
|
+
border: var(--#{$prefix}btn-border-width) solid var(--#{$prefix}btn-border-color);
|
|
51
|
+
@include border-radius(var(--#{$prefix}btn-border-radius));
|
|
52
|
+
@include gradient-bg(var(--#{$prefix}btn-bg));
|
|
53
|
+
@include box-shadow(var(--#{$prefix}btn-box-shadow));
|
|
54
|
+
@include transition($btn-transition);
|
|
55
|
+
|
|
56
|
+
// hover selectors
|
|
57
|
+
&:hover,
|
|
58
|
+
&.hover {
|
|
59
|
+
color: var(--#{$prefix}btn-hover-color);
|
|
60
|
+
text-decoration: if($link-hover-decoration == underline, none, null);
|
|
61
|
+
background-color: var(--#{$prefix}btn-hover-bg);
|
|
62
|
+
border-color: var(--#{$prefix}btn-hover-border-color);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.btn-check + &:hover {
|
|
66
|
+
// override for the checkbox/radio buttons
|
|
67
|
+
color: var(--#{$prefix}btn-color);
|
|
68
|
+
background-color: var(--#{$prefix}btn-bg);
|
|
69
|
+
border-color: var(--#{$prefix}btn-border-color);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
// focus selectors
|
|
73
|
+
.btn-check:focus-visible + &,
|
|
74
|
+
&:focus-visible,
|
|
75
|
+
&.focus-visible {
|
|
76
|
+
// copy of .btn:focus bootstrap + focus var
|
|
77
|
+
color: var(var(--#{$prefix}btn-focus-color), var(--#{$prefix}btn-hover-color));
|
|
78
|
+
@include gradient-bg(var(var(--#{$prefix}btn-focus-bg), var(--#{$prefix}btn-hover-bg)));
|
|
79
|
+
border-color: var(var(--#{$prefix}btn-focus-border-color), var(--#{$prefix}btn-hover-border-color));
|
|
80
|
+
// end copy
|
|
81
|
+
|
|
82
|
+
outline: var(--#{$prefix}btn-focus-border-width, var(--#{$prefix}btn-border-width)) solid var(--#{$prefix}btn-focus-outline-color, var(--#{$prefix}focus-ring-color));
|
|
83
|
+
outline-offset: var(--#{$prefix}btn-focus-outline-offset, var(--#{$prefix}btn-border-width));
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.btn-check:checked + &,
|
|
87
|
+
:not(.btn-check) + &:active,
|
|
88
|
+
&:first-child:active,
|
|
89
|
+
&.active,
|
|
90
|
+
&.show {
|
|
91
|
+
color: var(--#{$prefix}btn-active-color);
|
|
92
|
+
background-color: var(--#{$prefix}btn-active-bg);
|
|
93
|
+
// Remove CSS gradients if they're enabled
|
|
94
|
+
background-image: if($enable-gradients, none, null);
|
|
95
|
+
border-color: var(--#{$prefix}btn-active-border-color);
|
|
96
|
+
@include box-shadow(var(--#{$prefix}btn-active-shadow));
|
|
97
|
+
|
|
98
|
+
&:focus-visible {
|
|
99
|
+
// Avoid using mixin so we can pass custom focus shadow properly
|
|
100
|
+
@if $enable-shadows {
|
|
101
|
+
box-shadow: var(--#{$prefix}btn-active-shadow), var(--#{$prefix}btn-focus-box-shadow);
|
|
102
|
+
} @else {
|
|
103
|
+
box-shadow: var(--#{$prefix}btn-focus-box-shadow);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
&:disabled,
|
|
109
|
+
&.disabled,
|
|
110
|
+
fieldset:disabled & {
|
|
111
|
+
color: var(--#{$prefix}btn-disabled-color);
|
|
112
|
+
pointer-events: none;
|
|
113
|
+
background-color: var(--#{$prefix}btn-disabled-bg);
|
|
114
|
+
background-image: if($enable-gradients, none, null);
|
|
115
|
+
border-color: var(--#{$prefix}btn-disabled-border-color);
|
|
116
|
+
opacity: var(--#{$prefix}btn-disabled-opacity);
|
|
117
|
+
@include box-shadow(none);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.d-icon {
|
|
121
|
+
--#{$prefix}icon-size: var(--#{$prefix}btn-font-size);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
@each $color, $value in map-remove($theme-colors, "light", "dark") {
|
|
126
|
+
.btn-#{$color} {
|
|
127
|
+
@include df-button-variant($color);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
.btn-outline-#{$color} {
|
|
131
|
+
@include df-button-outline-variant($color);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
@each $color, $value in $theme-colors {
|
|
136
|
+
.btn-link-#{$color} {
|
|
137
|
+
@if $color == "light" {
|
|
138
|
+
@include df-button-link-variant(
|
|
139
|
+
$color,
|
|
140
|
+
$text-color-100: var(--#{$prefix}light),
|
|
141
|
+
$text-color-500: var(--#{$prefix}light),
|
|
142
|
+
$text-color-700: var(--#{$prefix}light),
|
|
143
|
+
$text-color-900: var(--#{$prefix}light),
|
|
144
|
+
);
|
|
145
|
+
} @else if $color == "dark" {
|
|
146
|
+
@include df-button-link-variant(
|
|
147
|
+
$color,
|
|
148
|
+
$text-color-100: var(--#{$prefix}dark),
|
|
149
|
+
$text-color-500: var(--#{$prefix}dark),
|
|
150
|
+
$text-color-700: var(--#{$prefix}dark),
|
|
151
|
+
$text-color-900: var(--#{$prefix}dark),
|
|
152
|
+
);
|
|
153
|
+
} @else {
|
|
154
|
+
@include df-button-link-variant($color);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.btn-lg {
|
|
160
|
+
@include button-size(
|
|
161
|
+
var(--#{$prefix}btn-lg-padding-y),
|
|
162
|
+
var(--#{$prefix}btn-lg-padding-x),
|
|
163
|
+
var(--#{$prefix}btn-lg-font-size),
|
|
164
|
+
var(--#{$prefix}btn-lg-border-radius),
|
|
165
|
+
);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
.btn-sm {
|
|
169
|
+
@include button-size(
|
|
170
|
+
var(--#{$prefix}btn-sm-padding-y),
|
|
171
|
+
var(--#{$prefix}btn-sm-padding-x),
|
|
172
|
+
var(--#{$prefix}btn-sm-font-size),
|
|
173
|
+
var(--#{$prefix}btn-sm-border-radius),
|
|
174
|
+
);
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
[class^="btn-link"] {
|
|
178
|
+
text-decoration: var(--#{$prefix}link-decoration);
|
|
179
|
+
|
|
180
|
+
> span {
|
|
181
|
+
text-decoration: var(--#{$prefix}link-decoration);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
&.btn-sm {
|
|
185
|
+
@include font-size(var(--#{$prefix}btn-link-font-size-sm));
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
@if $enable-gradients {
|
|
189
|
+
background-image: none;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
.d-card-account {
|
|
2
2
|
// Card
|
|
3
|
-
--#{$prefix}card-border-width:
|
|
4
|
-
--#{$prefix}card-spacer-y:
|
|
5
|
-
--#{$prefix}card-spacer-x:
|
|
3
|
+
--#{$prefix}card-border-width: 0;
|
|
4
|
+
--#{$prefix}card-spacer-y: var(--#{$prefix}ref-spacer-3);
|
|
5
|
+
--#{$prefix}card-spacer-x: var(--#{$prefix}ref-spacer-3);
|
|
6
6
|
--#{$prefix}card-color: var(--#{$prefix}body-color);
|
|
7
7
|
// Card body
|
|
8
8
|
--#{$prefix}card-body-gap: #{$spacer};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
.d-chip {
|
|
2
|
+
--#{$prefix}chip-bg: #{$chip-bg};
|
|
3
|
+
--#{$prefix}chip-gap: #{$chip-gap};
|
|
4
|
+
--#{$prefix}chip-color: #{$chip-color};
|
|
5
|
+
--#{$prefix}chip-border-radius: #{$chip-border-radius};
|
|
6
|
+
--#{$prefix}chip-padding-x: #{$chip-padding-x};
|
|
7
|
+
--#{$prefix}chip-padding-y: #{$chip-padding-y};
|
|
8
|
+
--#{$prefix}chip-font-size: #{$chip-font-size};
|
|
9
|
+
--#{$prefix}chip-font-weight: #{$chip-font-weight};
|
|
10
|
+
--#{$prefix}chip-line-height: #{$chip-line-height};
|
|
11
|
+
|
|
12
|
+
display: flex;
|
|
13
|
+
flex-direction: row;
|
|
14
|
+
gap: var(--#{$prefix}chip-gap);
|
|
15
|
+
align-items: center;
|
|
16
|
+
padding: var(--#{$prefix}chip-padding-y) var(--#{$prefix}chip-padding-x);
|
|
17
|
+
font-size: var(--#{$prefix}chip-font-size);
|
|
18
|
+
font-weight: var(--#{$prefix}chip-font-weight);
|
|
19
|
+
line-height: var(--#{$prefix}chip-line-height);
|
|
20
|
+
color: var(--#{$prefix}chip-color);
|
|
21
|
+
background-color: var(--#{$prefix}chip-bg);
|
|
22
|
+
border-radius: var(--#{$prefix}chip-border-radius);
|
|
23
|
+
|
|
24
|
+
.d-icon {
|
|
25
|
+
--#{$prefix}icon-size: var(--#{$prefix}chip-font-size);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.d-chip-icon-container {
|
|
29
|
+
display: flex;
|
|
30
|
+
align-items: center;
|
|
31
|
+
justify-content: center;
|
|
32
|
+
width: var(--#{$prefix}chip-line-height);
|
|
33
|
+
height: var(--#{$prefix}chip-line-height);
|
|
34
|
+
padding: 0;
|
|
35
|
+
margin: 0;
|
|
36
|
+
background: transparent;
|
|
37
|
+
border: 0;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
@each $theme, $value in map-remove($theme-colors, "light", "dark") {
|
|
41
|
+
$color: color-contrast($value);
|
|
42
|
+
&.d-chip-#{$theme} {
|
|
43
|
+
--#{$prefix}chip-color: var(--#{$prefix}#{$theme}-700);
|
|
44
|
+
--#{$prefix}chip-bg: var(--#{$prefix}#{$theme}-100);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
&.d-chip-light {
|
|
49
|
+
--#{$prefix}chip-color: var(--#{$prefix}gray);
|
|
50
|
+
--#{$prefix}chip-bg: var(--#{$prefix}gray-100);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
.d-icon {
|
|
2
|
+
--#{$prefix}icon-color: var(--#{$prefix}icon-component-color, inherit);
|
|
3
|
+
--#{$prefix}icon-bg-color: var(--#{$prefix}icon-component-bg-color, inherit);
|
|
4
|
+
--#{$prefix}icon-size: var(--#{$prefix}icon-component-size, 1.5rem);
|
|
5
|
+
--#{$prefix}icon-padding: var(--#{$prefix}icon-component-padding, 0);
|
|
6
|
+
--#{$prefix}icon-loading-duration: var(--#{$prefix}icon-component-loading-duration, 1.8);
|
|
7
|
+
|
|
8
|
+
display: flex;
|
|
9
|
+
align-items: center;
|
|
10
|
+
justify-content: center;
|
|
11
|
+
width: var(--#{$prefix}icon-size);
|
|
12
|
+
height: var(--#{$prefix}icon-size);
|
|
13
|
+
padding: var(--#{$prefix}icon-padding);
|
|
14
|
+
font-size: var(--#{$prefix}icon-size);
|
|
15
|
+
color: var(--#{$prefix}icon-color);
|
|
16
|
+
background-color: var(--#{$prefix}icon-bg-color);
|
|
17
|
+
border-radius: var(--#{$prefix}icon-padding);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.d-icon-loading {
|
|
21
|
+
animation: loading-icon var(--#{$prefix}icon-loading-duration) infinite linear;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
@keyframes loading-icon {
|
|
25
|
+
from {
|
|
26
|
+
transform: rotate(0deg);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
to {
|
|
30
|
+
transform: rotate(360deg);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
.form-check-input {
|
|
2
|
+
&:hover {
|
|
3
|
+
border-color: $form-check-input-hover-border-color;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
&:focus {
|
|
7
|
+
border-color: $form-check-input-focus-border-color;
|
|
8
|
+
outline: $form-check-input-focus-outline;
|
|
9
|
+
outline-offset: $form-check-input-focus-outline-offset;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
&:checked {
|
|
13
|
+
border-color: $form-check-input-checked-border-color;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&:disabled {
|
|
17
|
+
background-color: $form-check-input-disabled-bg;
|
|
18
|
+
border-color: $form-check-input-disabled-border-color;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
.d-input-pin {
|
|
2
|
+
--#{$prefix}input-pin-gap: #{$spacer-2};
|
|
3
|
+
|
|
4
|
+
--#{$prefix}input-pin-label-gap: #{$form-label-gap};
|
|
5
|
+
--#{$prefix}input-pin-label-focus-color: #{$input-group-focus-border-color};
|
|
6
|
+
--#{$prefix}input-pin-label-padding-x: #{$form-label-padding-x};
|
|
7
|
+
--#{$prefix}input-pin-label-padding-y: #{$form-label-padding-y};
|
|
8
|
+
--#{$prefix}input-pin-label-font-weight: #{$form-label-font-weight};
|
|
9
|
+
--#{$prefix}input-pin-label-font-size: #{$form-label-font-size};
|
|
10
|
+
--#{$prefix}input-pin-label-color: #{$form-label-color};
|
|
11
|
+
|
|
12
|
+
--#{$prefix}input-pin-form-control-gap: #{$spacer-1};
|
|
13
|
+
--#{$prefix}input-pin-form-control-width: 4rem;
|
|
14
|
+
--#{$prefix}input-pin-form-control-height: 4rem;
|
|
15
|
+
--#{$prefix}input-pin-form-control-border-color: #{$input-group-hover-border-color};
|
|
16
|
+
|
|
17
|
+
--#{$prefix}input-pin-form-control-focus-border-color: #{$input-group-focus-border-color};
|
|
18
|
+
--#{$prefix}input-pin-form-control-focus-box-shadow: #{$input-group-focus-box-shadow};
|
|
19
|
+
|
|
20
|
+
--#{$prefix}input-pin-form-control-hover-border-color: #{$input-group-hover-border-color};
|
|
21
|
+
|
|
22
|
+
--#{$prefix}input-pin-form-text-padding: #{$form-control-padding-y} #{$form-control-padding-x};
|
|
23
|
+
--#{$prefix}input-pin-form-text-gap: #{$form-control-gap};
|
|
24
|
+
--#{$prefix}input-pin-form-text-color: #{$form-control-color};
|
|
25
|
+
|
|
26
|
+
display: flex;
|
|
27
|
+
flex-direction: column;
|
|
28
|
+
gap: var(--#{$prefix}input-pin-gap);
|
|
29
|
+
align-items: flex-start;
|
|
30
|
+
|
|
31
|
+
label {
|
|
32
|
+
display: inline-flex;
|
|
33
|
+
flex-direction: row;
|
|
34
|
+
gap: var(--#{$prefix}input-pin-label-gap);
|
|
35
|
+
align-items: center;
|
|
36
|
+
padding: var(--#{$prefix}input-pin-label-padding-y) var(--#{$prefix}input-pin-label-padding-x);
|
|
37
|
+
font-size: var(--#{$prefix}input-pin-label-font-size);
|
|
38
|
+
font-weight: var(--#{$prefix}input-pin-label-font-weight);
|
|
39
|
+
color: var(--#{$prefix}input-pin-label-color);
|
|
40
|
+
|
|
41
|
+
.d-input-pin-icon {
|
|
42
|
+
.d-icon {
|
|
43
|
+
--#{$prefix}icon-color: var(--#{$prefix}focus-ring-color);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.d-input-pin-controls {
|
|
49
|
+
display: flex;
|
|
50
|
+
flex-direction: row;
|
|
51
|
+
gap: var(--#{$prefix}input-pin-form-control-gap);
|
|
52
|
+
width: 100%;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.form-control {
|
|
56
|
+
width: var(--#{$prefix}input-pin-form-control-width);
|
|
57
|
+
height: var(--#{$prefix}input-pin-form-control-height);
|
|
58
|
+
text-align: center;
|
|
59
|
+
box-shadow: none;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.form-control::-webkit-inner-spin-button,
|
|
63
|
+
.form-control::-webkit-outer-spin-button {
|
|
64
|
+
margin: 0;
|
|
65
|
+
appearance: none;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.form-control:not(:placeholder-shown) {
|
|
69
|
+
border-color: var(--#{$prefix}input-pin-form-control-border-color);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
&:has(.form-control:hover) .form-control:not(:disabled) {
|
|
73
|
+
border-color: var(--#{$prefix}input-pin-form-control-hover-border-color);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
&:focus-within {
|
|
77
|
+
.form-control {
|
|
78
|
+
border-color: var(--#{$prefix}input-pin-form-control-focus-border-color);
|
|
79
|
+
box-shadow: var(--#{$prefix}input-pin-form-control-focus-box-shadow);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
&:has(.form-control:hover) .form-control {
|
|
83
|
+
border-color: var(--#{$prefix}input-pin-form-control-focus-border-color);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// validation states
|
|
88
|
+
@each $state, $data in $form-validation-states {
|
|
89
|
+
$border-color: map-get($data, "border-color");
|
|
90
|
+
$tooltip-bg-color: map-get($data, "tooltip-bg-color");
|
|
91
|
+
|
|
92
|
+
&:has(.form-control.is-#{$state}){
|
|
93
|
+
.form-control {
|
|
94
|
+
border-color: $tooltip-bg-color;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.form-text {
|
|
98
|
+
color: $border-color;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.d-input-pin-validation-icon {
|
|
102
|
+
.d-icon {
|
|
103
|
+
--#{$prefix}icon-color: #{$tooltip-bg-color};
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.input-group-text {
|
|
110
|
+
padding-left: var(--#{$prefix}input-pin-form-control-gap);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
.form-text {
|
|
114
|
+
display: inline-flex;
|
|
115
|
+
flex-direction: row;
|
|
116
|
+
gap: var(--#{$prefix}input-pin-form-text-gap);
|
|
117
|
+
align-items: center;
|
|
118
|
+
padding: var(--#{$prefix}input-pin-form-text-padding);
|
|
119
|
+
color: var(--#{$prefix}input-pin-form-text-color);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
.d-input {
|
|
2
|
+
&:has(.form-select:not(:disabled)) {
|
|
3
|
+
--#{$prefix}input-group-border-color: var(--#{$prefix}input-group-hover-border-color);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.form-select {
|
|
7
|
+
text-align: var(--#{$prefix}input-form-control-text-align);
|
|
8
|
+
border-width: 0;
|
|
9
|
+
box-shadow: none;
|
|
10
|
+
|
|
11
|
+
&:not(:last-child) {
|
|
12
|
+
padding-right: $form-select-padding-x * 2;
|
|
13
|
+
background-position: right center;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&:not(:first-child) {
|
|
17
|
+
padding-left: 0;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
.form-switch {
|
|
2
|
+
--#{$prefix}input-switch-bg: var(--#{$prefix}gray-300);
|
|
3
|
+
--#{$prefix}input-switch-border-color: var(--#{$prefix}gray-500);
|
|
4
|
+
--#{$prefix}input-switch-dot: #{escape-svg($form-switch-bg-image)};
|
|
5
|
+
--#{$prefix}input-switch-hover-border-color: var(--#{$prefix}focus-ring-color);
|
|
6
|
+
--#{$prefix}input-switch-focus-outline-color: var(--#{$prefix}focus-ring-color);
|
|
7
|
+
--#{$prefix}input-switch-active-border-color: var(--#{$prefix}focus-ring-color);
|
|
8
|
+
--#{$prefix}input-switch-active-bg: var(--#{$prefix}focus-ring-color);
|
|
9
|
+
--#{$prefix}input-switch-disabled-border-color: var(--#{$prefix}gray-300);
|
|
10
|
+
--#{$prefix}input-switch-disabled-bg: var(--#{$prefix}gray-100);
|
|
11
|
+
--#{$prefix}input-switch-disabled-dot: #{escape-svg($form-switch-disabled-bg-image)};
|
|
12
|
+
--#{$prefix}input-switch-label-color: #{$form-switch-label-color};
|
|
13
|
+
--#{$prefix}input-switch-active-label-color: #{$form-switch-active-label-color};
|
|
14
|
+
|
|
15
|
+
.form-check-label {
|
|
16
|
+
color: var(--#{$prefix}input-switch-label-color);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.form-check-input:checked ~ .form-check-label {
|
|
20
|
+
color: var(--#{$prefix}input-switch-active-label-color);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.form-check-input {
|
|
24
|
+
background-color: var(--#{$prefix}input-switch-bg);
|
|
25
|
+
background-image: var(--#{$prefix}input-switch-dot);
|
|
26
|
+
border: 1px solid var(--#{$prefix}input-switch-border-color);
|
|
27
|
+
|
|
28
|
+
&:checked {
|
|
29
|
+
background-color: var(--#{$prefix}input-switch-active-bg);
|
|
30
|
+
border-color: var(--#{$prefix}input-switch-active-border-color);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
&[disabled]:not(:checked),
|
|
34
|
+
&:disabled:not(:checked) {
|
|
35
|
+
background-color: var(--#{$prefix}input-switch-disabled-bg);
|
|
36
|
+
background-image: var(--#{$prefix}input-switch-disabled-dot);
|
|
37
|
+
border-color: var(--#{$prefix}input-switch-disabled-border-color);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
&:hover {
|
|
42
|
+
&.form-switch {
|
|
43
|
+
.form-check-input:not([disabled]),
|
|
44
|
+
.form-check-input:not(:disabled) {
|
|
45
|
+
border-color: var(--#{$prefix}input-switch-hover-border-color);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
&:focus-within {
|
|
51
|
+
&.form-switch {
|
|
52
|
+
.form-check-input {
|
|
53
|
+
outline: 2px solid var(--#{$prefix}input-switch-focus-outline-color);
|
|
54
|
+
outline-offset: 2px;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
.d-input {
|
|
2
|
+
--#{$prefix}input-gap: #{$spacer-2};
|
|
3
|
+
// label
|
|
4
|
+
--#{$prefix}input-label-color: #{$form-label-color};
|
|
5
|
+
--#{$prefix}input-label-font-weight: #{$form-label-font-weight};
|
|
6
|
+
--#{$prefix}input-label-font-size: #{$form-label-font-size};
|
|
7
|
+
--#{$prefix}input-label-padding-x: #{$form-label-padding-x};
|
|
8
|
+
--#{$prefix}input-label-padding-y: #{$form-label-padding-y};
|
|
9
|
+
--#{$prefix}input-label-gap: #{$form-label-gap};
|
|
10
|
+
// label if input has value
|
|
11
|
+
--#{$prefix}input-label-has-value-color: #{$form-label-has-value-color};
|
|
12
|
+
|
|
13
|
+
// input group
|
|
14
|
+
--#{$prefix}input-group-border-color: #{$input-group-border-color};
|
|
15
|
+
--#{$prefix}input-group-border-width: #{$input-group-border-width};
|
|
16
|
+
--#{$prefix}input-group-border-radius: #{$input-group-border-radius};
|
|
17
|
+
// input group hover
|
|
18
|
+
--#{$prefix}input-group-hover-border-color: #{$input-group-hover-border-color};
|
|
19
|
+
// input group focus
|
|
20
|
+
--#{$prefix}input-group-focus-border-color: #{$input-group-focus-border-color};
|
|
21
|
+
--#{$prefix}input-group-focus-box-shadow: #{$input-group-focus-box-shadow};
|
|
22
|
+
|
|
23
|
+
// input
|
|
24
|
+
--#{$prefix}input-form-control-text-align: var(--#{$prefix}input-component-form-control-text-align, "left");
|
|
25
|
+
|
|
26
|
+
// hint
|
|
27
|
+
--#{$prefix}input-form-text-padding: #{$form-control-padding-y} #{$form-control-padding-x};
|
|
28
|
+
--#{$prefix}input-form-text-gap: #{$form-control-gap};
|
|
29
|
+
--#{$prefix}input-form-text-color: #{$form-control-color};
|
|
30
|
+
|
|
31
|
+
// input disabled
|
|
32
|
+
--#{$prefix}input-group-disabled-border-color: #{$input-disabled-border-color};
|
|
33
|
+
--#{$prefix}input-group-disabled-bg: #{$input-disabled-bg};
|
|
34
|
+
--#{$prefix}input-group-disabled-color: #{$input-disabled-color};
|
|
35
|
+
|
|
36
|
+
display: flex;
|
|
37
|
+
flex-direction: column;
|
|
38
|
+
gap: var(--#{$prefix}input-gap);
|
|
39
|
+
align-items: flex-start;
|
|
40
|
+
|
|
41
|
+
// focus
|
|
42
|
+
&:focus-within {
|
|
43
|
+
.input-group {
|
|
44
|
+
border-color: var(--#{$prefix}input-group-focus-border-color);
|
|
45
|
+
box-shadow: var(--#{$prefix}input-group-focus-box-shadow);
|
|
46
|
+
|
|
47
|
+
&:hover:has(.form-control:not(:placeholder-shown:disabled)),
|
|
48
|
+
&:hover {
|
|
49
|
+
border-color: var(--#{$prefix}input-group-focus-border-color);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// form-control container
|
|
55
|
+
.d-input-control {
|
|
56
|
+
display: flex;
|
|
57
|
+
flex-direction: column;
|
|
58
|
+
gap: var(--#{$prefix}input-gap);
|
|
59
|
+
width: 100%;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
label {
|
|
63
|
+
display: inline-flex;
|
|
64
|
+
flex-direction: row;
|
|
65
|
+
gap: var(--#{$prefix}input-label-gap);
|
|
66
|
+
align-items: center;
|
|
67
|
+
padding: var(--#{$prefix}input-label-padding-y) var(--#{$prefix}input-label-padding-x);
|
|
68
|
+
font-size: var(--#{$prefix}input-label-font-size);
|
|
69
|
+
font-weight: var(--#{$prefix}input-label-font-weight);
|
|
70
|
+
color: var(--#{$prefix}input-label-color);
|
|
71
|
+
|
|
72
|
+
.d-input-icon {
|
|
73
|
+
.d-icon {
|
|
74
|
+
--#{$prefix}icon-color: var(--#{$prefix}focus-ring-color);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// input with elements
|
|
80
|
+
.input-group {
|
|
81
|
+
border: var(--#{$prefix}input-group-border-width) solid var(--#{$prefix}input-group-border-color);
|
|
82
|
+
border-radius: var(--#{$prefix}input-group-border-radius);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// validation states
|
|
86
|
+
@each $state, $data in $form-validation-states {
|
|
87
|
+
$border-color: map-get($data, "border-color");
|
|
88
|
+
$tooltip-bg-color: map-get($data, "tooltip-bg-color");
|
|
89
|
+
|
|
90
|
+
&:has(.form-control.is-#{$state}){
|
|
91
|
+
.input-group {
|
|
92
|
+
border-color: $border-color;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.input-group ~ .form-text {
|
|
96
|
+
color: $border-color;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.d-input-validation-icon {
|
|
100
|
+
.d-icon {
|
|
101
|
+
--#{$prefix}icon-color: #{$tooltip-bg-color};
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// input hint
|
|
108
|
+
.input-group ~ .form-text {
|
|
109
|
+
display: inline-flex;
|
|
110
|
+
flex-direction: row;
|
|
111
|
+
gap: var(--#{$prefix}input-form-text-gap);
|
|
112
|
+
align-items: center;
|
|
113
|
+
padding: var(--#{$prefix}input-form-text-padding);
|
|
114
|
+
color: var(--#{$prefix}input-form-text-color);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
// input element
|
|
118
|
+
.form-control {
|
|
119
|
+
text-align: var(--#{$prefix}input-form-control-text-align);
|
|
120
|
+
border-width: 0;
|
|
121
|
+
box-shadow: none;
|
|
122
|
+
|
|
123
|
+
&:not(:last-child) {
|
|
124
|
+
padding-right: 0;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
&:not(:first-child) {
|
|
128
|
+
padding-left: 0;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.form-control::-webkit-inner-spin-button,
|
|
133
|
+
.form-control::-webkit-outer-spin-button {
|
|
134
|
+
margin: 0;
|
|
135
|
+
appearance: none;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
// input addons
|
|
139
|
+
.input-group-text {
|
|
140
|
+
border: 0;
|
|
141
|
+
outline: 0;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
// input disabled
|
|
145
|
+
.form-control:disabled {
|
|
146
|
+
background: var(--#{$prefix}input-group-disabled-bg);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
&:has(.form-control:disabled) {
|
|
151
|
+
// input addons disabled
|
|
152
|
+
.input-group-text {
|
|
153
|
+
background: var(--#{$prefix}input-group-disabled-bg);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
// icon disabled
|
|
157
|
+
.d-input-icon {
|
|
158
|
+
.d-icon {
|
|
159
|
+
color: var(--#{$prefix}input-group-disabled-color);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
// input with elements disabled
|
|
164
|
+
.input-group {
|
|
165
|
+
border-color: var(--#{$prefix}input-group-disabled-border-color);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
}
|