@daffodil/design 0.84.0 → 0.86.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/accordion/src/accordion-theme.scss +11 -13
- package/article/src/article-theme.scss +36 -38
- package/atoms/form/error-message/error-message.component.d.ts +6 -0
- package/atoms/form/form-field/form-field/form-field.component.d.ts +104 -13
- package/atoms/form/form-field/form-field-control.d.ts +3 -0
- package/atoms/form/form-field/form-field.d.ts +2 -1
- package/atoms/form/form-field/label/label.directive.d.ts +5 -0
- package/atoms/form/form-field/public_api.d.ts +1 -0
- package/atoms/form/form-label/form-label.directive.d.ts +3 -0
- package/atoms/form/hint/hint.component.d.ts +5 -1
- package/breadcrumb/src/breadcrumb-theme.scss +9 -11
- package/button/README.md +3 -3
- package/button/button/button-base.directive.d.ts +1 -2
- package/button/button/raised/raised.component.d.ts +1 -1
- package/button/src/button/basic/button-theme.scss +80 -82
- package/button/src/button/button-base.scss +0 -18
- package/button/src/button/flat/flat-theme.scss +28 -30
- package/button/src/button/icon/icon-theme.scss +74 -76
- package/button/src/button/raised/raised-theme.scss +28 -30
- package/button/src/button/stroked/stroked-theme.scss +31 -33
- package/button/src/button/underline/underline-theme.scss +30 -32
- package/callout/src/callout-theme.scss +21 -23
- package/card/src/card/raised/raised-theme.scss +9 -11
- package/card/src/card/stroked/stroked-theme.scss +32 -34
- package/card/src/card-base-theme.scss +42 -44
- package/core/colorable/colorable.d.ts +2 -2
- package/core/compactable/compactable.directive.d.ts +3 -0
- package/core/openable/openable.directive.d.ts +1 -1
- package/core/selectable/selectable.directive.d.ts +3 -1
- package/core/sizable/sizable.directive.d.ts +2 -2
- package/core/skeletonable/public_api.d.ts +0 -1
- package/core/skeletonable/skeletonable.directive.d.ts +3 -0
- package/core/text-alignable/text-alignable.directive.d.ts +9 -5
- package/fesm2022/daffodil-design-accordion-examples.mjs +10 -10
- package/fesm2022/daffodil-design-accordion-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-accordion.mjs +15 -15
- package/fesm2022/daffodil-design-accordion.mjs.map +1 -1
- package/fesm2022/daffodil-design-article-examples.mjs +31 -31
- package/fesm2022/daffodil-design-article-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-article.mjs +12 -12
- package/fesm2022/daffodil-design-article.mjs.map +1 -1
- package/fesm2022/daffodil-design-breadcrumb-examples.mjs +7 -7
- package/fesm2022/daffodil-design-breadcrumb-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-breadcrumb.mjs +12 -12
- package/fesm2022/daffodil-design-breadcrumb.mjs.map +1 -1
- package/fesm2022/daffodil-design-button-examples.mjs +34 -34
- package/fesm2022/daffodil-design-button-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-button.mjs +37 -61
- package/fesm2022/daffodil-design-button.mjs.map +1 -1
- package/fesm2022/daffodil-design-callout-examples.mjs +13 -13
- package/fesm2022/daffodil-design-callout-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-callout.mjs +23 -23
- package/fesm2022/daffodil-design-callout.mjs.map +1 -1
- package/fesm2022/daffodil-design-card-examples.mjs +19 -19
- package/fesm2022/daffodil-design-card-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-card.mjs +35 -35
- package/fesm2022/daffodil-design-card.mjs.map +1 -1
- package/fesm2022/daffodil-design-checkbox-examples.mjs +7 -7
- package/fesm2022/daffodil-design-checkbox-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-container-examples.mjs +4 -4
- package/fesm2022/daffodil-design-container-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-container.mjs +8 -8
- package/fesm2022/daffodil-design-container.mjs.map +1 -1
- package/fesm2022/daffodil-design-hero-examples.mjs +13 -13
- package/fesm2022/daffodil-design-hero-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-hero.mjs +23 -23
- package/fesm2022/daffodil-design-hero.mjs.map +1 -1
- package/fesm2022/daffodil-design-image-examples.mjs +10 -10
- package/fesm2022/daffodil-design-image-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-image.mjs +9 -9
- package/fesm2022/daffodil-design-image.mjs.map +1 -1
- package/fesm2022/daffodil-design-input-examples.mjs +42 -21
- package/fesm2022/daffodil-design-input-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-input.mjs +139 -0
- package/fesm2022/daffodil-design-input.mjs.map +1 -0
- package/fesm2022/daffodil-design-link-set.mjs +17 -17
- package/fesm2022/daffodil-design-link-set.mjs.map +1 -1
- package/fesm2022/daffodil-design-list-examples.mjs +13 -13
- package/fesm2022/daffodil-design-list-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-list.mjs +12 -12
- package/fesm2022/daffodil-design-list.mjs.map +1 -1
- package/fesm2022/daffodil-design-loading-icon-examples.mjs +4 -4
- package/fesm2022/daffodil-design-loading-icon-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-loading-icon.mjs +8 -8
- package/fesm2022/daffodil-design-loading-icon.mjs.map +1 -1
- package/fesm2022/daffodil-design-media-gallery-examples.mjs +16 -16
- package/fesm2022/daffodil-design-media-gallery-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-media-gallery.mjs +14 -21
- package/fesm2022/daffodil-design-media-gallery.mjs.map +1 -1
- package/fesm2022/daffodil-design-menu-examples.mjs +7 -7
- package/fesm2022/daffodil-design-menu-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-menu.mjs +17 -17
- package/fesm2022/daffodil-design-menu.mjs.map +1 -1
- package/fesm2022/daffodil-design-modal-examples.mjs +7 -7
- package/fesm2022/daffodil-design-modal-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-modal.mjs +28 -28
- package/fesm2022/daffodil-design-modal.mjs.map +1 -1
- package/fesm2022/daffodil-design-navbar-examples.mjs +13 -13
- package/fesm2022/daffodil-design-navbar-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-navbar.mjs +8 -8
- package/fesm2022/daffodil-design-navbar.mjs.map +1 -1
- package/fesm2022/daffodil-design-notification-examples.mjs +16 -16
- package/fesm2022/daffodil-design-notification-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-notification.mjs +20 -20
- package/fesm2022/daffodil-design-notification.mjs.map +1 -1
- package/fesm2022/daffodil-design-paginator-examples.mjs +7 -7
- package/fesm2022/daffodil-design-paginator-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-paginator.mjs +8 -8
- package/fesm2022/daffodil-design-paginator.mjs.map +1 -1
- package/fesm2022/daffodil-design-progress-bar-examples.mjs +10 -10
- package/fesm2022/daffodil-design-progress-bar-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-progress-bar.mjs +12 -12
- package/fesm2022/daffodil-design-progress-bar.mjs.map +1 -1
- package/fesm2022/daffodil-design-quantity-field-examples.mjs +19 -18
- package/fesm2022/daffodil-design-quantity-field-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-quantity-field.mjs +355 -0
- package/fesm2022/daffodil-design-quantity-field.mjs.map +1 -0
- package/fesm2022/daffodil-design-radio-examples.mjs +4 -4
- package/fesm2022/daffodil-design-radio-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-sidebar-examples.mjs +13 -13
- package/fesm2022/daffodil-design-sidebar-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-sidebar.mjs +27 -27
- package/fesm2022/daffodil-design-sidebar.mjs.map +1 -1
- package/fesm2022/daffodil-design-switch-examples.mjs +16 -16
- package/fesm2022/daffodil-design-switch-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-switch.mjs +4 -4
- package/fesm2022/daffodil-design-switch.mjs.map +1 -1
- package/fesm2022/daffodil-design-tabs-examples.mjs +16 -16
- package/fesm2022/daffodil-design-tabs-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-tabs.mjs +16 -16
- package/fesm2022/daffodil-design-tabs.mjs.map +1 -1
- package/fesm2022/daffodil-design-text-snippet-examples.mjs +4 -4
- package/fesm2022/daffodil-design-text-snippet-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-text-snippet.mjs +4 -4
- package/fesm2022/daffodil-design-text-snippet.mjs.map +1 -1
- package/fesm2022/daffodil-design-toast-examples.mjs +13 -72
- package/fesm2022/daffodil-design-toast-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-toast.mjs +73 -61
- package/fesm2022/daffodil-design-toast.mjs.map +1 -1
- package/fesm2022/daffodil-design-tree-examples.mjs +7 -7
- package/fesm2022/daffodil-design-tree-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-tree.mjs +11 -11
- package/fesm2022/daffodil-design-tree.mjs.map +1 -1
- package/fesm2022/daffodil-design-youtube-player.mjs +7 -7
- package/fesm2022/daffodil-design-youtube-player.mjs.map +1 -1
- package/fesm2022/daffodil-design.mjs +477 -711
- package/fesm2022/daffodil-design.mjs.map +1 -1
- package/hero/src/hero-theme.scss +21 -23
- package/input/README.md +66 -0
- package/input/examples/input-hint-and-error/input-hint-and-error.component.d.ts +9 -0
- package/input/index.d.ts +1 -0
- package/{atoms/form/input → input}/input.component.d.ts +21 -5
- package/list/src/list-theme.scss +9 -11
- package/loading-icon/src/loading-icon-theme.scss +20 -22
- package/media-gallery/media-gallery/media-gallery.component.d.ts +0 -4
- package/media-gallery/src/media-gallery-theme.scss +10 -12
- package/menu/helpers/create-overlay.d.ts +1 -1
- package/menu/src/menu-theme.scss +10 -11
- package/modal/src/modal-theme.scss +2 -2
- package/navbar/src/navbar-theme.scss +18 -20
- package/notification/src/notification-theme.scss +44 -46
- package/package.json +1 -1
- package/paginator/src/paginator-theme.scss +9 -11
- package/progress-bar/src/progress-bar-theme.scss +18 -20
- package/public_api.d.ts +0 -2
- package/quantity-field/README.md +63 -0
- package/quantity-field/index.d.ts +1 -0
- package/quantity-field/public_api.d.ts +2 -0
- package/{atoms/form/quantity-field → quantity-field}/quantity-field.component.d.ts +3 -3
- package/quantity-field/quantity-field.module.d.ts +11 -0
- package/{atoms/form/quantity-field → quantity-field}/quantity-input/quantity-input.component.d.ts +2 -2
- package/{atoms/form/quantity-field → quantity-field}/quantity-select/quantity-select.component.d.ts +2 -2
- package/scss/state/skeleton/_mixins.scss +12 -10
- package/scss/theme.scss +0 -2
- package/scss/theming/_configure-theme.scss +16 -16
- package/scss/theming/_get-base-color.scss +19 -0
- package/scss/theming/_get-palette.scss +27 -0
- package/scss/theming/_get-theme-mode.scss +9 -0
- package/scss/theming/_index.scss +3 -0
- package/scss/theming/_light-dark.scss +4 -4
- package/scss/theming/_theme-css-variables.scss +20 -20
- package/scss/theming/contrast/luminance/luminance.scss +3 -3
- package/sidebar/src/sidebar-theme.scss +4 -5
- package/src/atoms/form/error-message/error-message-theme.scss +3 -4
- package/src/atoms/form/form-field/form-field/form-field-theme.scss +47 -31
- package/src/atoms/form/hint/hint-theme.scss +13 -8
- package/src/atoms/form/native-select/native-select-theme.scss +5 -7
- package/switch/src/switch-theme.scss +13 -15
- package/tabs/src/tabs-theme.scss +13 -15
- package/toast/README.md +21 -1
- package/toast/examples/public_api.d.ts +1 -2
- package/toast/helpers/toast-position.d.ts +8 -0
- package/toast/interfaces/toast-options.d.ts +19 -0
- package/toast/interfaces/toast.d.ts +1 -1
- package/toast/public_api.d.ts +2 -2
- package/toast/service/position-strategy.d.ts +1 -1
- package/toast/service/position.service.d.ts +1 -1
- package/toast/service/toast.service.d.ts +1 -1
- package/toast/src/toast-theme.scss +36 -38
- package/toast/toast/toast-provider.d.ts +16 -4
- package/toast/toast/toast-template.component.d.ts +1 -1
- package/tree/src/tree-theme.scss +20 -22
- package/atoms/form/quantity-field/public_api.d.ts +0 -4
- package/atoms/form/quantity-field/quantity-field.module.d.ts +0 -13
- package/core/skeletonable/skeletonable.d.ts +0 -6
- package/src/atoms/form/input/input-theme.scss +0 -12
- package/toast/examples/toast-positions/toast-positions.component.d.ts +0 -20
- package/toast/options/daff-toast-options.d.ts +0 -14
- /package/{atoms/form/input → input}/input.module.d.ts +0 -0
- /package/{atoms/form/input → input}/public_api.d.ts +0 -0
@@ -1,40 +1,40 @@
|
|
1
1
|
@use 'sass:map';
|
2
2
|
@use 'sass:color';
|
3
3
|
@use '../core';
|
4
|
-
@use '../theming'
|
4
|
+
@use '../theming' as *;
|
5
5
|
|
6
6
|
// @docs
|
7
7
|
//
|
8
8
|
// Global theme tokens
|
9
9
|
@mixin daff-root-theme-tokens($theme) {
|
10
|
-
$base:
|
11
|
-
$base-contrast:
|
12
|
-
$primary:
|
13
|
-
$secondary:
|
14
|
-
$tertiary:
|
15
|
-
$warn:
|
16
|
-
$success:
|
17
|
-
$critical:
|
18
|
-
$neutral:
|
19
|
-
$white:
|
20
|
-
$black:
|
10
|
+
$base: daff-get-base-color($theme, base);
|
11
|
+
$base-contrast: daff-get-base-color($theme, base-contrast);
|
12
|
+
$primary: daff-get-palette($theme, primary);
|
13
|
+
$secondary: daff-get-palette($theme, secondary);
|
14
|
+
$tertiary: daff-get-palette($theme, tertiary);
|
15
|
+
$warn: daff-get-palette($theme, warn);
|
16
|
+
$success: daff-get-palette($theme, success);
|
17
|
+
$critical: daff-get-palette($theme, critical);
|
18
|
+
$neutral: daff-get-palette($theme, neutral);
|
19
|
+
$white: daff-get-base-color($theme, 'white');
|
20
|
+
$black: daff-get-base-color($theme, 'black');
|
21
21
|
|
22
22
|
--daff-theme-rgb: #{color.red($base), color.green($base), color.blue($base)};
|
23
23
|
--daff-theme-contrast-rgb: #{color.red($base-contrast), color.green($base-contrast),
|
24
24
|
color.blue($base-contrast)};
|
25
25
|
--daff-theme: #{$base};
|
26
26
|
--daff-theme-contrast: #{$base-contrast};
|
27
|
-
--daff-theme-primary: #{
|
28
|
-
--daff-theme-secondary: #{
|
29
|
-
--daff-theme-tertiary: #{
|
30
|
-
--daff-theme-warn: #{
|
31
|
-
--daff-theme-success: #{
|
32
|
-
--daff-theme-critical: #{
|
27
|
+
--daff-theme-primary: #{daff-color($primary)};
|
28
|
+
--daff-theme-secondary: #{daff-color($secondary)};
|
29
|
+
--daff-theme-tertiary: #{daff-color($tertiary)};
|
30
|
+
--daff-theme-warn: #{daff-color($warn)};
|
31
|
+
--daff-theme-success: #{daff-color($success)};
|
32
|
+
--daff-theme-critical: #{daff-color($critical)};
|
33
33
|
--daff-theme-white: #{$white};
|
34
34
|
--daff-theme-black: #{$black};
|
35
|
-
--daff-theme-gray: #{
|
35
|
+
--daff-theme-gray: #{daff-color($neutral)};
|
36
36
|
--daff-base-bg: #{$base};
|
37
|
-
--daff-base-text: #{
|
37
|
+
--daff-base-text: #{daff-text-contrast($base)};
|
38
38
|
}
|
39
39
|
|
40
40
|
@mixin daff-theme-css-variables($theme) {
|
@@ -10,9 +10,9 @@
|
|
10
10
|
// See https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests
|
11
11
|
|
12
12
|
@function daff-luminance($color) {
|
13
|
-
$red-index: color.
|
14
|
-
$green-index: color.
|
15
|
-
$blue-index: color.
|
13
|
+
$red-index: color.channel($color, 'red') + 1;
|
14
|
+
$green-index: color.channel($color, 'green') + 1;
|
15
|
+
$blue-index: color.channel($color, 'blue') + 1;
|
16
16
|
|
17
17
|
$red: list.nth(v.$linear-channel-values, $red-index);
|
18
18
|
$green: list.nth(v.$linear-channel-values, $green-index);
|
@@ -1,13 +1,12 @@
|
|
1
|
-
@use '../../scss/
|
1
|
+
@use '../../scss/theming' as *;
|
2
2
|
|
3
3
|
@mixin daff-sidebar-theme($theme) {
|
4
|
-
$base:
|
5
|
-
$base-contrast:
|
6
|
-
$font-color: core.daff-map-get($theme, 'core', 'font-color');
|
4
|
+
$base: daff-get-base-color($theme, base);
|
5
|
+
$base-contrast: daff-get-base-color($theme, base-contrast);
|
7
6
|
|
8
7
|
.daff-sidebar {
|
9
8
|
background: $base;
|
10
|
-
color: $
|
9
|
+
color: $base-contrast;
|
11
10
|
}
|
12
11
|
|
13
12
|
.daff-sidebar-viewport {
|
@@ -1,10 +1,9 @@
|
|
1
|
-
@use '../../../../scss/theming'
|
2
|
-
@use '../../../../scss/core';
|
1
|
+
@use '../../../../scss/theming' as *;
|
3
2
|
|
4
3
|
@mixin daff-error-message-theme($theme) {
|
5
|
-
$critical:
|
4
|
+
$critical: daff-get-palette($theme, critical);
|
6
5
|
|
7
6
|
.daff-error-message {
|
8
|
-
color:
|
7
|
+
color: daff-color($critical);
|
9
8
|
}
|
10
9
|
}
|
@@ -1,48 +1,64 @@
|
|
1
|
-
@use '
|
2
|
-
@use '../../../../../scss/core';
|
3
|
-
@use '../../../../../scss/theming';
|
1
|
+
@use '../../../../../scss/theming' as *;
|
4
2
|
|
5
3
|
@mixin daff-form-field-theme($theme) {
|
6
|
-
$primary:
|
7
|
-
$secondary:
|
8
|
-
$tertiary:
|
9
|
-
$critical:
|
10
|
-
$base:
|
11
|
-
$base-contrast:
|
12
|
-
$neutral:
|
13
|
-
$
|
4
|
+
$primary: daff-get-palette($theme, primary);
|
5
|
+
$secondary: daff-get-palette($theme, secondary);
|
6
|
+
$tertiary: daff-get-palette($theme, tertiary);
|
7
|
+
$critical: daff-get-palette($theme, critical);
|
8
|
+
$base: daff-get-base-color($theme, base);
|
9
|
+
$base-contrast: daff-get-base-color($theme, base-contrast);
|
10
|
+
$neutral: daff-get-palette($theme, neutral);
|
11
|
+
$mode: daff-get-theme-mode($theme);
|
14
12
|
|
15
13
|
.daff-form-field {
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
border: 1px solid theming.daff-color($neutral);
|
21
|
-
color: theming.daff-color($neutral);
|
14
|
+
@include light($mode) {
|
15
|
+
.daff-form-field__control {
|
16
|
+
border: 1px solid daff-color($neutral);
|
17
|
+
color: daff-color($neutral);
|
22
18
|
}
|
19
|
+
}
|
23
20
|
|
24
|
-
|
25
|
-
|
26
|
-
|
21
|
+
@include dark($mode) {
|
22
|
+
.daff-form-field__control {
|
23
|
+
border: 1px solid daff-color($neutral, 40);
|
24
|
+
color: daff-color($neutral, 40);
|
27
25
|
}
|
26
|
+
}
|
28
27
|
|
29
|
-
|
30
|
-
|
28
|
+
&.daff-focused {
|
29
|
+
.daff-form-field__control {
|
30
|
+
border: 1px solid daff-color($primary);
|
31
|
+
}
|
31
32
|
|
32
|
-
|
33
|
-
|
34
|
-
|
33
|
+
.daff-form-label,
|
34
|
+
label,
|
35
|
+
.daff-form-field__label {
|
36
|
+
color: daff-color($primary);
|
35
37
|
}
|
38
|
+
}
|
36
39
|
|
37
|
-
|
38
|
-
|
40
|
+
&.daff-error {
|
41
|
+
.daff-form-field__control {
|
42
|
+
border: 1px solid daff-color($critical);
|
43
|
+
}
|
39
44
|
|
40
|
-
|
41
|
-
|
42
|
-
|
45
|
+
.daff-form-label,
|
46
|
+
label,
|
47
|
+
.daff-form-field__label {
|
48
|
+
color: daff-color($critical);
|
43
49
|
}
|
50
|
+
}
|
51
|
+
|
52
|
+
&.daff-valid {
|
53
|
+
color: $base-contrast;
|
54
|
+
}
|
55
|
+
|
56
|
+
&__control {
|
57
|
+
background: $base;
|
44
58
|
|
45
|
-
|
59
|
+
input,
|
60
|
+
textarea,
|
61
|
+
select {
|
46
62
|
color: $base-contrast;
|
47
63
|
}
|
48
64
|
}
|
@@ -1,17 +1,22 @@
|
|
1
|
-
@use '../../../../scss/
|
2
|
-
@use '../../../../scss/theming';
|
1
|
+
@use '../../../../scss/theming' as *;
|
3
2
|
|
3
|
+
// stylelint-disable selector-class-pattern
|
4
4
|
@mixin daff-hint-theme($theme) {
|
5
|
-
$neutral:
|
6
|
-
$
|
5
|
+
$neutral: daff-get-palette($theme, neutral);
|
6
|
+
$success: daff-get-palette($theme, success);
|
7
|
+
$mode: daff-get-theme-mode($theme);
|
7
8
|
|
8
9
|
.daff-hint {
|
9
|
-
@include
|
10
|
-
color:
|
10
|
+
@include light($mode) {
|
11
|
+
color: daff-color($neutral, 80);
|
11
12
|
}
|
12
13
|
|
13
|
-
@include
|
14
|
-
color:
|
14
|
+
@include dark($mode) {
|
15
|
+
color: daff-color($neutral, 30);
|
16
|
+
}
|
17
|
+
|
18
|
+
&.validated {
|
19
|
+
color: daff-color($success);
|
15
20
|
}
|
16
21
|
}
|
17
22
|
}
|
@@ -1,14 +1,12 @@
|
|
1
|
-
@use '
|
2
|
-
@use '../../../../scss/core';
|
3
|
-
@use '../../../../scss/theming';
|
1
|
+
@use '../../../../scss/theming' as *;
|
4
2
|
|
5
3
|
@mixin daff-native-select-theme($theme) {
|
6
|
-
$neutral:
|
7
|
-
$base-contrast:
|
8
|
-
$black:
|
4
|
+
$neutral: daff-get-palette($theme, neutral);
|
5
|
+
$base-contrast: daff-get-base-color($theme, base-contrast);
|
6
|
+
$black: daff-get-base-color($theme, 'black');
|
9
7
|
|
10
8
|
.daff-native-select {
|
11
|
-
color:
|
9
|
+
color: daff-illuminate($base-contrast, $neutral, 4);
|
12
10
|
|
13
11
|
// removes dotted border on in FF
|
14
12
|
&:-moz-focusring {
|
@@ -1,26 +1,24 @@
|
|
1
|
-
@use '
|
2
|
-
@use '../../scss/core';
|
3
|
-
@use '../../scss/theming';
|
1
|
+
@use '../../scss/theming' as *;
|
4
2
|
|
5
3
|
@mixin daff-switch-theme($theme) {
|
6
|
-
$primary:
|
7
|
-
$white:
|
8
|
-
$neutral:
|
9
|
-
$
|
4
|
+
$primary: daff-get-palette($theme, primary);
|
5
|
+
$white: daff-get-base-color($theme, 'white');
|
6
|
+
$neutral: daff-get-palette($theme, neutral);
|
7
|
+
$mode: daff-get-theme-mode($theme);
|
10
8
|
|
11
9
|
.daff-switch {
|
12
10
|
&__toggle {
|
13
11
|
border: 2px solid transparent;
|
14
12
|
|
15
13
|
&.daff-checked {
|
16
|
-
background-color:
|
14
|
+
background-color: daff-color($primary);
|
17
15
|
}
|
18
16
|
|
19
|
-
@include
|
20
|
-
background-color:
|
17
|
+
@include light($mode) {
|
18
|
+
background-color: daff-color($neutral, 30);
|
21
19
|
|
22
20
|
&:focus-within {
|
23
|
-
border: 2px solid
|
21
|
+
border: 2px solid daff-color($neutral, 20);
|
24
22
|
}
|
25
23
|
|
26
24
|
&::before {
|
@@ -28,15 +26,15 @@
|
|
28
26
|
}
|
29
27
|
}
|
30
28
|
|
31
|
-
@include
|
32
|
-
background-color:
|
29
|
+
@include dark($mode) {
|
30
|
+
background-color: daff-color($neutral, 80);
|
33
31
|
|
34
32
|
&:focus-within {
|
35
|
-
border: 2px solid
|
33
|
+
border: 2px solid daff-color($neutral, 90);
|
36
34
|
}
|
37
35
|
|
38
36
|
&::before {
|
39
|
-
background-color:
|
37
|
+
background-color: daff-color($neutral, 40);
|
40
38
|
}
|
41
39
|
|
42
40
|
&.daff-checked {
|
package/tabs/src/tabs-theme.scss
CHANGED
@@ -1,47 +1,45 @@
|
|
1
|
-
@use '
|
2
|
-
@use '../../scss/core';
|
3
|
-
@use '../../scss/theming';
|
1
|
+
@use '../../scss/theming' as *;
|
4
2
|
|
5
3
|
@mixin daff-tabs-theme($theme) {
|
6
|
-
$primary:
|
7
|
-
$neutral:
|
8
|
-
$base-contrast:
|
9
|
-
$
|
4
|
+
$primary: daff-get-palette($theme, primary);
|
5
|
+
$neutral: daff-get-palette($theme, neutral);
|
6
|
+
$base-contrast: daff-get-base-color($theme, base-contrast);
|
7
|
+
$mode: daff-get-theme-mode($theme);
|
10
8
|
|
11
|
-
@include
|
9
|
+
@include light($mode) {
|
12
10
|
.daff-tabs {
|
13
11
|
&__tab-list {
|
14
12
|
&::after {
|
15
|
-
background:
|
13
|
+
background: daff-color($neutral, 20);
|
16
14
|
}
|
17
15
|
}
|
18
16
|
}
|
19
17
|
|
20
18
|
.daff-tab-activator {
|
21
|
-
border-bottom: 2px solid
|
19
|
+
border-bottom: 2px solid daff-color($neutral, 20);
|
22
20
|
color: $base-contrast;
|
23
21
|
|
24
22
|
&.daff-selected {
|
25
|
-
border-bottom: 2px solid
|
23
|
+
border-bottom: 2px solid daff-color($primary);
|
26
24
|
}
|
27
25
|
}
|
28
26
|
}
|
29
27
|
|
30
|
-
@include
|
28
|
+
@include dark($mode) {
|
31
29
|
.daff-tabs {
|
32
30
|
&__tab-list {
|
33
31
|
&::after {
|
34
|
-
background:
|
32
|
+
background: daff-color($neutral, 80);
|
35
33
|
}
|
36
34
|
}
|
37
35
|
}
|
38
36
|
|
39
37
|
.daff-tab-activator {
|
40
|
-
border-bottom: 2px solid
|
38
|
+
border-bottom: 2px solid daff-color($neutral, 80);
|
41
39
|
color: $base-contrast;
|
42
40
|
|
43
41
|
&.daff-selected {
|
44
|
-
border-bottom: 2px solid
|
42
|
+
border-bottom: 2px solid daff-color($primary);
|
45
43
|
}
|
46
44
|
}
|
47
45
|
}
|
package/toast/README.md
CHANGED
@@ -8,7 +8,7 @@ Toasts should be used to display temporary messages about actions or events that
|
|
8
8
|
<design-land-example-viewer-container example="default-toast"></design-land-example-viewer-container>
|
9
9
|
|
10
10
|
## Setting up the component
|
11
|
-
`provideDaffToast()` must be added as a provider in your application's root component for
|
11
|
+
`provideDaffToast()` must be added as a provider in your application's root component for the toast to work properly.
|
12
12
|
|
13
13
|
```ts
|
14
14
|
import { provideDaffToast } from '@daffodil/design/toast';
|
@@ -47,6 +47,26 @@ You can set the status of a toast when opening it with `DaffToastService`, using
|
|
47
47
|
|
48
48
|
<design-land-example-viewer-container example="toast-status"></design-land-example-viewer-container>
|
49
49
|
|
50
|
+
## Positions
|
51
|
+
Toasts are displayed in the top-right corner of the screen by default on desktop devices.
|
52
|
+
|
53
|
+
You can customize the position of toast notifications by configuring the `position` property in the `provideDaffToast` provider.
|
54
|
+
|
55
|
+
To customize toast positions, configure the `position` property in the `provideDaffToast` provider of your root component:
|
56
|
+
|
57
|
+
```ts
|
58
|
+
providers: [
|
59
|
+
provideDaffToast({
|
60
|
+
position: {
|
61
|
+
vertical: 'bottom',
|
62
|
+
horizontal: 'right',
|
63
|
+
},
|
64
|
+
}),
|
65
|
+
],
|
66
|
+
```
|
67
|
+
|
68
|
+
> Note: On mobile devices, toasts will always appear in the bottom-center position, regardless of configuration settings.
|
69
|
+
|
50
70
|
## Accessibility
|
51
71
|
By default, toasts use a `role="status"` to announce messages. It's the equivalent of `aria-live="polite"`, which does not interrupt a user's current activity and waits until they are idle to make the announcement.
|
52
72
|
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import { DefaultToastComponent } from './default-toast/default-toast.component';
|
2
2
|
import { DismissibleToastComponent } from './dismissible-toast/dismissible-toast.component';
|
3
|
-
import { ToastPositionsComponent } from './toast-positions/toast-positions.component';
|
4
3
|
import { ToastStatusComponent } from './toast-status/toast-status.component';
|
5
4
|
import { ToastWithCustomDurationComponent } from './toast-with-custom-duration/toast-with-custom-duration.component';
|
6
|
-
export declare const TOAST_EXAMPLES: (typeof DefaultToastComponent | typeof DismissibleToastComponent | typeof
|
5
|
+
export declare const TOAST_EXAMPLES: (typeof DefaultToastComponent | typeof DismissibleToastComponent | typeof ToastStatusComponent | typeof ToastWithCustomDurationComponent)[];
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import { DaffToastHorizontalPosition, DaffToastVerticalPosition } from '../helpers/toast-position';
|
2
|
+
export interface DaffToastVerticalPositionInterface {
|
3
|
+
vertical: DaffToastVerticalPosition;
|
4
|
+
}
|
5
|
+
export interface DaffToastHorizontalPositionInterface {
|
6
|
+
horizontal: DaffToastHorizontalPosition;
|
7
|
+
}
|
8
|
+
export type DaffToastPosition = DaffToastVerticalPositionInterface & DaffToastHorizontalPositionInterface;
|
9
|
+
export interface DaffToastOptions {
|
10
|
+
/**
|
11
|
+
* The position of all toasts.
|
12
|
+
*/
|
13
|
+
position: DaffToastPosition;
|
14
|
+
/** @docs-private */
|
15
|
+
useParent?: boolean;
|
16
|
+
}
|
17
|
+
export declare const daffToastDefaultOptions: DaffToastOptions;
|
18
|
+
export declare const provideDaffToastOptions: <R extends DaffToastOptions = DaffToastOptions>(config: Partial<R> | import("@angular/core").InjectionToken<Partial<R>>) => import("@angular/core").FactoryProvider;
|
19
|
+
export declare const DAFF_TOAST_OPTIONS: import("@angular/core").InjectionToken<DaffToastOptions>;
|
package/toast/public_api.d.ts
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
export { DaffToastPositionService } from './service/position.service';
|
2
1
|
export { DaffToastService } from './service/toast.service';
|
3
2
|
export { DaffToastConfiguration } from './toast/toast-config';
|
4
3
|
export { DaffToast, DaffToastData, } from './interfaces/toast';
|
5
4
|
export { DaffToastAction } from './interfaces/toast-action';
|
6
|
-
export { DAFF_TOAST_OPTIONS, provideDaffToastOptions, } from './options/daff-toast-options';
|
7
5
|
export { provideDaffToast } from './toast/toast-provider';
|
8
6
|
export { DaffToastActionButtonSize, DaffToastActionButtonType, } from './interfaces/toast-action.type';
|
7
|
+
export { DaffToastOptions, DaffToastPosition, } from './interfaces/toast-options';
|
8
|
+
export { DaffToastVerticalPosition, DaffToastHorizontalPosition, } from './helpers/toast-position';
|
@@ -1,3 +1,3 @@
|
|
1
1
|
import { PositionStrategy } from '@angular/cdk/overlay';
|
2
|
-
import { DaffToastPosition } from '../
|
2
|
+
import { DaffToastPosition } from '../interfaces/toast-options';
|
3
3
|
export declare const createPositionStrategy: (position: DaffToastPosition) => PositionStrategy;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { BreakpointObserver } from '@angular/cdk/layout';
|
2
|
-
import { DaffToastOptions, DaffToastPosition } from '../
|
2
|
+
import { DaffToastOptions, DaffToastPosition } from '../interfaces/toast-options';
|
3
3
|
import * as i0 from "@angular/core";
|
4
4
|
export declare class DaffToastPositionService {
|
5
5
|
private options;
|
@@ -4,7 +4,7 @@ import { Injector, OnDestroy } from '@angular/core';
|
|
4
4
|
import { DaffFocusStackService } from '@daffodil/design';
|
5
5
|
import { DaffToastPositionService } from './position.service';
|
6
6
|
import { DaffToast, DaffToastData } from '../interfaces/toast';
|
7
|
-
import { DaffToastOptions } from '../
|
7
|
+
import { DaffToastOptions } from '../interfaces/toast-options';
|
8
8
|
import { DaffToastConfiguration } from '../toast/toast-config';
|
9
9
|
import * as i0 from "@angular/core";
|
10
10
|
/**
|
@@ -1,112 +1,110 @@
|
|
1
|
-
@use '
|
2
|
-
@use '../../scss/core';
|
3
|
-
@use '../../scss/theming';
|
1
|
+
@use '../../scss/theming' as *;
|
4
2
|
|
5
3
|
@mixin daff-toast-theme($theme) {
|
6
|
-
$info:
|
7
|
-
$warn:
|
8
|
-
$critical:
|
9
|
-
$success:
|
10
|
-
$neutral:
|
11
|
-
$base:
|
12
|
-
$black:
|
13
|
-
$white:
|
14
|
-
$
|
4
|
+
$info: daff-get-palette($theme, informational);
|
5
|
+
$warn: daff-get-palette($theme, warn);
|
6
|
+
$critical: daff-get-palette($theme, critical);
|
7
|
+
$success: daff-get-palette($theme, success);
|
8
|
+
$neutral: daff-get-palette($theme, neutral);
|
9
|
+
$base: daff-get-base-color($theme, base);
|
10
|
+
$black: daff-get-base-color($theme, 'black');
|
11
|
+
$white: daff-get-base-color($theme, 'white');
|
12
|
+
$mode: daff-get-theme-mode($theme);
|
15
13
|
|
16
14
|
.daff-toast {
|
17
|
-
@include
|
18
|
-
background:
|
15
|
+
@include light($mode) {
|
16
|
+
background: daff-color($neutral, 10);
|
19
17
|
box-shadow: 0 -16px 24px -4px rgba($black, 0.04),
|
20
18
|
0 8px 24px -4px rgba($black, 0.1);
|
21
|
-
color:
|
19
|
+
color: daff-text-contrast($base);
|
22
20
|
|
23
21
|
&::before {
|
24
|
-
background:
|
22
|
+
background: daff-color($neutral, 40);
|
25
23
|
}
|
26
24
|
|
27
25
|
&.daff-success {
|
28
|
-
background:
|
26
|
+
background: daff-color($success, 10);
|
29
27
|
color: $black;
|
30
28
|
|
31
29
|
.daff-prefix {
|
32
|
-
color:
|
30
|
+
color: daff-color($success);
|
33
31
|
}
|
34
32
|
|
35
33
|
&::before {
|
36
|
-
background:
|
34
|
+
background: daff-color($success);
|
37
35
|
}
|
38
36
|
}
|
39
37
|
|
40
38
|
&.daff-warn {
|
41
|
-
background:
|
39
|
+
background: daff-color($warn, 10);
|
42
40
|
color: $black;
|
43
41
|
|
44
42
|
.daff-prefix {
|
45
|
-
color:
|
43
|
+
color: daff-color($warn);
|
46
44
|
}
|
47
45
|
|
48
46
|
&::before {
|
49
|
-
background:
|
47
|
+
background: daff-color($warn);
|
50
48
|
}
|
51
49
|
}
|
52
50
|
|
53
51
|
&.daff-critical {
|
54
|
-
background:
|
52
|
+
background: daff-color($critical, 10);
|
55
53
|
color: $black;
|
56
54
|
|
57
55
|
.daff-prefix {
|
58
|
-
color:
|
56
|
+
color: daff-color($critical);
|
59
57
|
}
|
60
58
|
|
61
59
|
&::before {
|
62
|
-
background:
|
60
|
+
background: daff-color($critical);
|
63
61
|
}
|
64
62
|
}
|
65
63
|
}
|
66
64
|
|
67
|
-
@include
|
68
|
-
background:
|
65
|
+
@include dark($mode) {
|
66
|
+
background: daff-color($neutral, 90);
|
69
67
|
box-shadow: 0 -16px 24px -4px rgba($black, 0.04),
|
70
68
|
0 8px 24px -4px rgba($black, 0.1);
|
71
|
-
color:
|
69
|
+
color: daff-text-contrast($base);
|
72
70
|
|
73
71
|
&::before {
|
74
|
-
background:
|
72
|
+
background: daff-color($neutral, 30);
|
75
73
|
}
|
76
74
|
|
77
75
|
&.daff-success {
|
78
|
-
background:
|
76
|
+
background: daff-color($success, 90);
|
79
77
|
|
80
78
|
.daff-prefix {
|
81
|
-
color:
|
79
|
+
color: daff-color($success, 30);
|
82
80
|
}
|
83
81
|
|
84
82
|
&::before {
|
85
|
-
background:
|
83
|
+
background: daff-color($success, 30);
|
86
84
|
}
|
87
85
|
}
|
88
86
|
|
89
87
|
&.daff-warn {
|
90
|
-
background:
|
88
|
+
background: daff-color($warn, 90);
|
91
89
|
|
92
90
|
.daff-prefix {
|
93
|
-
color:
|
91
|
+
color: daff-color($warn, 30);
|
94
92
|
}
|
95
93
|
|
96
94
|
&::before {
|
97
|
-
background:
|
95
|
+
background: daff-color($warn, 30);
|
98
96
|
}
|
99
97
|
}
|
100
98
|
|
101
99
|
&.daff-critical {
|
102
|
-
background:
|
100
|
+
background: daff-color($critical, 90);
|
103
101
|
|
104
102
|
.daff-prefix {
|
105
|
-
color:
|
103
|
+
color: daff-color($critical, 30);
|
106
104
|
}
|
107
105
|
|
108
106
|
&::before {
|
109
|
-
background:
|
107
|
+
background: daff-color($critical, 30);
|
110
108
|
}
|
111
109
|
}
|
112
110
|
}
|