@daffodil/design 0.86.0 → 0.87.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/atoms/form/form-field/action/action.directive.d.ts +9 -0
- package/atoms/form/form-field/form-field/form-field.component.d.ts +33 -1
- package/atoms/form/form-field/form-field.d.ts +2 -1
- package/atoms/form/form-field/public_api.d.ts +1 -0
- package/button/README.md +58 -42
- package/button/button/button-base.directive.d.ts +10 -4
- package/button/button.d.ts +22 -1
- package/button/public_api.d.ts +1 -1
- package/button/src/button/button-base.scss +0 -1
- package/button/src/button/raised/raised-theme.scss +3 -3
- package/core/statusable/statusable.directive.d.ts +22 -2
- package/fesm2022/daffodil-design-article.mjs +2 -2
- package/fesm2022/daffodil-design-article.mjs.map +1 -1
- package/fesm2022/daffodil-design-button.mjs +58 -16
- package/fesm2022/daffodil-design-button.mjs.map +1 -1
- package/fesm2022/daffodil-design-form-field-examples.mjs +95 -0
- package/fesm2022/daffodil-design-form-field-examples.mjs.map +1 -0
- package/fesm2022/daffodil-design-input-examples.mjs +5 -5
- package/fesm2022/daffodil-design-input-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-input.mjs +11 -15
- package/fesm2022/daffodil-design-input.mjs.map +1 -1
- package/fesm2022/daffodil-design-modal-examples.mjs +3 -2
- package/fesm2022/daffodil-design-modal-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-modal.mjs +12 -11
- package/fesm2022/daffodil-design-modal.mjs.map +1 -1
- package/fesm2022/daffodil-design-notification-examples.mjs +3 -3
- package/fesm2022/daffodil-design-notification-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-quantity-field-examples.mjs +4 -4
- package/fesm2022/daffodil-design-quantity-field-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-select-examples.mjs +117 -0
- package/fesm2022/daffodil-design-select-examples.mjs.map +1 -0
- package/fesm2022/daffodil-design-select.mjs +431 -0
- package/fesm2022/daffodil-design-select.mjs.map +1 -0
- package/fesm2022/daffodil-design-textarea-examples.mjs +66 -0
- package/fesm2022/daffodil-design-textarea-examples.mjs.map +1 -0
- package/fesm2022/daffodil-design-textarea.mjs +124 -0
- package/fesm2022/daffodil-design-textarea.mjs.map +1 -0
- package/fesm2022/daffodil-design.mjs +135 -11
- package/fesm2022/daffodil-design.mjs.map +1 -1
- package/form-field/examples/examples.d.ts +3 -0
- package/form-field/examples/form-field-appearances/form-field-appearances.component.d.ts +7 -0
- package/form-field/examples/form-field-with-action/form-field-with-action.component.d.ts +9 -0
- package/form-field/examples/form-field-with-prefix/form-field-with-prefix.component.d.ts +6 -0
- package/form-field/examples/form-field-with-suffix/form-field-with-suffix.component.d.ts +6 -0
- package/form-field/examples/index.d.ts +1 -0
- package/form-field/examples/public_api.d.ts +1 -0
- package/input/input.component.d.ts +4 -8
- package/modal/modal/modal.component.d.ts +5 -3
- package/notification/src/notification-theme.scss +34 -18
- package/package.json +1 -1
- package/scss/theme.scss +8 -0
- package/scss/theming/illuminate/illuminate.scss +2 -0
- package/select/README.md +8 -0
- package/select/animation/select-animation-state.d.ts +7 -0
- package/select/animation/select-animation.d.ts +4 -0
- package/select/animation/state.enum.d.ts +4 -0
- package/select/examples/default-select/default-select.component.d.ts +8 -0
- package/select/examples/disabled-select/disabled-select.component.d.ts +8 -0
- package/select/examples/index.d.ts +1 -0
- package/select/examples/models/address.type.d.ts +7 -0
- package/select/examples/models/addresses.d.ts +2 -0
- package/select/examples/public_api.d.ts +3 -0
- package/select/examples/select-with-error/select-with-error.component.d.ts +8 -0
- package/select/examples/skeleton-select/skeleton-select.component.d.ts +8 -0
- package/select/index.d.ts +1 -0
- package/select/option/context.type.d.ts +17 -0
- package/select/option/option.directive.d.ts +11 -0
- package/select/public_api.d.ts +4 -0
- package/select/select/select.component.d.ts +170 -0
- package/select/select.d.ts +4 -0
- package/select/src/select-theme.scss +75 -0
- package/src/atoms/form/form-field/form-field/form-field-theme.scss +35 -8
- package/textarea/README.md +28 -0
- package/textarea/examples/basic-textarea/basic-textarea.component.d.ts +5 -0
- package/textarea/examples/examples.d.ts +2 -0
- package/textarea/examples/index.d.ts +1 -0
- package/textarea/examples/public_api.d.ts +1 -0
- package/textarea/examples/textarea-disabled/textarea-disabled.component.d.ts +7 -0
- package/textarea/examples/textarea-error/textarea-error.component.d.ts +7 -0
- package/textarea/index.d.ts +1 -0
- package/textarea/public_api.d.ts +1 -0
- package/textarea/textarea.component.d.ts +59 -0
@@ -0,0 +1,75 @@
|
|
1
|
+
@use 'sass:map';
|
2
|
+
@use '../../scss/theming' as *;
|
3
|
+
@use '../../scss/core';
|
4
|
+
|
5
|
+
// stylelint-disable selector-class-pattern
|
6
|
+
@mixin daff-select-theme($theme) {
|
7
|
+
$base: daff-get-base-color($theme, base);
|
8
|
+
$base-contrast: daff-get-base-color($theme, base-contrast);
|
9
|
+
$neutral: daff-get-palette($theme, neutral);
|
10
|
+
$mode: daff-get-theme-mode($theme);
|
11
|
+
$border-color-light: daff-color($neutral, 30);
|
12
|
+
$border-color-dark: daff-color($neutral, 70);
|
13
|
+
|
14
|
+
.daff-select {
|
15
|
+
$root: '.daff-select';
|
16
|
+
|
17
|
+
@include light($mode) {
|
18
|
+
&.disabled {
|
19
|
+
#{$root}__field {
|
20
|
+
color: daff-color($neutral, 50);
|
21
|
+
}
|
22
|
+
}
|
23
|
+
|
24
|
+
&__option {
|
25
|
+
background-color: $base;
|
26
|
+
border-bottom: 1px solid $border-color-light;
|
27
|
+
border-left: 1px solid $border-color-light;
|
28
|
+
border-right: 1px solid $border-color-light;
|
29
|
+
color: $base-contrast;
|
30
|
+
|
31
|
+
&:first-of-type {
|
32
|
+
border-top: 1px solid $border-color-light;
|
33
|
+
}
|
34
|
+
|
35
|
+
&:hover,
|
36
|
+
&.highlighted {
|
37
|
+
background-color: daff-color($neutral, 10);
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
|
42
|
+
@include dark($mode) {
|
43
|
+
&.disabled {
|
44
|
+
#{$root}__field {
|
45
|
+
color: daff-color($neutral, 70);
|
46
|
+
}
|
47
|
+
}
|
48
|
+
|
49
|
+
&__option {
|
50
|
+
background-color: $base;
|
51
|
+
border-bottom: 1px solid $border-color-dark;
|
52
|
+
border-left: 1px solid $border-color-dark;
|
53
|
+
border-right: 1px solid $border-color-dark;
|
54
|
+
color: $base-contrast;
|
55
|
+
|
56
|
+
&:first-of-type {
|
57
|
+
border-top: 1px solid $border-color-dark;
|
58
|
+
}
|
59
|
+
|
60
|
+
&:hover,
|
61
|
+
&.highlighted {
|
62
|
+
background-color: daff-color($neutral, 90);
|
63
|
+
}
|
64
|
+
}
|
65
|
+
}
|
66
|
+
|
67
|
+
&__field {
|
68
|
+
color: $base-contrast;
|
69
|
+
|
70
|
+
&::after {
|
71
|
+
border-color: daff-color($neutral);
|
72
|
+
}
|
73
|
+
}
|
74
|
+
}
|
75
|
+
}
|
@@ -10,11 +10,23 @@
|
|
10
10
|
$neutral: daff-get-palette($theme, neutral);
|
11
11
|
$mode: daff-get-theme-mode($theme);
|
12
12
|
|
13
|
+
// stylelint-disable selector-class-pattern
|
13
14
|
.daff-form-field {
|
14
15
|
@include light($mode) {
|
15
16
|
.daff-form-field__control {
|
16
17
|
border: 1px solid daff-color($neutral);
|
17
18
|
color: daff-color($neutral);
|
19
|
+
|
20
|
+
* {
|
21
|
+
::-webkit-input-placeholder {
|
22
|
+
color: daff-color($neutral);
|
23
|
+
}
|
24
|
+
}
|
25
|
+
}
|
26
|
+
|
27
|
+
.daff-prefix,
|
28
|
+
.daff-suffix {
|
29
|
+
color: daff-color($neutral);
|
18
30
|
}
|
19
31
|
}
|
20
32
|
|
@@ -22,6 +34,17 @@
|
|
22
34
|
.daff-form-field__control {
|
23
35
|
border: 1px solid daff-color($neutral, 40);
|
24
36
|
color: daff-color($neutral, 40);
|
37
|
+
|
38
|
+
* {
|
39
|
+
::-webkit-input-placeholder {
|
40
|
+
color: daff-color($neutral, 40);
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}
|
44
|
+
|
45
|
+
.daff-prefix,
|
46
|
+
.daff-suffix {
|
47
|
+
color: daff-color($neutral, 40);
|
25
48
|
}
|
26
49
|
}
|
27
50
|
|
@@ -30,10 +53,12 @@
|
|
30
53
|
border: 1px solid daff-color($primary);
|
31
54
|
}
|
32
55
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
56
|
+
&.fluid {
|
57
|
+
.daff-form-label,
|
58
|
+
label,
|
59
|
+
.daff-form-field__label {
|
60
|
+
color: daff-color($primary);
|
61
|
+
}
|
37
62
|
}
|
38
63
|
}
|
39
64
|
|
@@ -42,10 +67,12 @@
|
|
42
67
|
border: 1px solid daff-color($critical);
|
43
68
|
}
|
44
69
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
70
|
+
&.fluid {
|
71
|
+
.daff-form-label,
|
72
|
+
label,
|
73
|
+
.daff-form-field__label {
|
74
|
+
color: daff-color($critical);
|
75
|
+
}
|
49
76
|
}
|
50
77
|
}
|
51
78
|
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# Textarea
|
2
|
+
Textarea allows a native HTML `<textarea>` element to work with the [Form Field](/libs/design/src/atoms/form/form-field/README.md) component.
|
3
|
+
|
4
|
+
## Overview
|
5
|
+
The textarea component has the same functionality as a native HTML `<textarea>` element, with additional custom styling and functionality. It **cannot** be used by itself and must be contained within a [DaffFormFieldComponent](/libs/design/src/atoms/form/form-field/README.md).
|
6
|
+
|
7
|
+
<design-land-example-viewer-container example="basic-textarea"></design-land-example-viewer-container>
|
8
|
+
|
9
|
+
## Usage
|
10
|
+
To use textarea, import `DaffTextareaComponent` directly into your custom component:
|
11
|
+
|
12
|
+
```ts
|
13
|
+
import { DaffTextareaComponent } from '@daffodil/design/textarea';
|
14
|
+
|
15
|
+
@Component({
|
16
|
+
selector: 'custom-component',
|
17
|
+
templateUrl: './custom-component.component.html',
|
18
|
+
imports: [
|
19
|
+
DaffTextareaComponent,
|
20
|
+
],
|
21
|
+
})
|
22
|
+
export class CustomComponent {}
|
23
|
+
```
|
24
|
+
|
25
|
+
## Examples
|
26
|
+
|
27
|
+
### Disabled textarea
|
28
|
+
<design-land-example-viewer-container example="basic-textarea"></design-land-example-viewer-container>
|
@@ -0,0 +1,5 @@
|
|
1
|
+
import * as i0 from "@angular/core";
|
2
|
+
export declare class BasicTextareaComponent {
|
3
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BasicTextareaComponent, never>;
|
4
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BasicTextareaComponent, "basic-textarea", never, {}, {}, never, never, true, never>;
|
5
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
export * from './public_api';
|
@@ -0,0 +1 @@
|
|
1
|
+
export { TEXTAREA_EXAMPLES } from './examples';
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { UntypedFormControl } from '@angular/forms';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export declare class TextareaDisabledComponent {
|
4
|
+
disabled: UntypedFormControl;
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TextareaDisabledComponent, never>;
|
6
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TextareaDisabledComponent, "textarea-disabled", never, {}, {}, never, never, true, never>;
|
7
|
+
}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { UntypedFormControl } from '@angular/forms';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export declare class TextareaErrorComponent {
|
4
|
+
control: UntypedFormControl;
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TextareaErrorComponent, never>;
|
6
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TextareaErrorComponent, "textarea-error", never, {}, {}, never, never, true, never>;
|
7
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
export * from './public_api';
|
@@ -0,0 +1 @@
|
|
1
|
+
export { DaffTextareaComponent } from './textarea.component';
|
@@ -0,0 +1,59 @@
|
|
1
|
+
import { ElementRef, OnInit } from '@angular/core';
|
2
|
+
import { NgControl } from '@angular/forms';
|
3
|
+
import { DaffFormFieldComponent, DaffFormFieldControl } from '@daffodil/design';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
/**
|
6
|
+
* DaffTextareaComponent provides the same functionality as a native `<textarea>` and contains custom styling and functionality.
|
7
|
+
*/
|
8
|
+
export declare class DaffTextareaComponent extends DaffFormFieldControl<string> implements DaffFormFieldControl<string>, OnInit {
|
9
|
+
/**
|
10
|
+
* @docs-private
|
11
|
+
*/
|
12
|
+
ngControl: NgControl;
|
13
|
+
private _elementRef;
|
14
|
+
private formField;
|
15
|
+
/** @docs-private */
|
16
|
+
controlType: string;
|
17
|
+
/**
|
18
|
+
* @docs-private
|
19
|
+
*/
|
20
|
+
class: boolean;
|
21
|
+
/**
|
22
|
+
* @docs-private
|
23
|
+
*/
|
24
|
+
focused: boolean;
|
25
|
+
private get _id();
|
26
|
+
/**
|
27
|
+
* @docs-private
|
28
|
+
*/
|
29
|
+
get internalId(): string;
|
30
|
+
/**
|
31
|
+
* @docs-private
|
32
|
+
*/
|
33
|
+
focus(): void;
|
34
|
+
/**
|
35
|
+
* @docs-private
|
36
|
+
*/
|
37
|
+
blur(): void;
|
38
|
+
/**
|
39
|
+
* @docs-private
|
40
|
+
*/
|
41
|
+
get ariaDescribedBy(): string;
|
42
|
+
constructor(
|
43
|
+
/**
|
44
|
+
* @docs-private
|
45
|
+
*/
|
46
|
+
ngControl: NgControl, _elementRef: ElementRef<HTMLInputElement>, formField: DaffFormFieldComponent);
|
47
|
+
/** @docs-private */
|
48
|
+
ngOnInit(): void;
|
49
|
+
/**
|
50
|
+
* @docs-private
|
51
|
+
*/
|
52
|
+
onFocus(): void;
|
53
|
+
/**
|
54
|
+
* @docs-private
|
55
|
+
*/
|
56
|
+
get value(): string;
|
57
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DaffTextareaComponent, [{ optional: true; self: true; }, null, null]>;
|
58
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DaffTextareaComponent, "textarea[daff-textarea]", never, {}, {}, never, ["*"], true, never>;
|
59
|
+
}
|