@hug/hospitality 0.0.4-alpha.15 → 0.0.4-alpha.17

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens.mjs","sources":["../../tokens/index.ts","../../tokens/tokens.ts"],"sourcesContent":["import rawTokens from './tokens.json';\n\nexport interface Token {\n id: string;\n name: string;\n type: string;\n value: string | number;\n}\n\nexport interface TokenSystem {\n id?: string;\n name: string;\n type: string;\n reference: Token[];\n _referenceValue:\n | string\n | {\n weight: number;\n size: number;\n lineHeight: number;\n font: string;\n };\n}\n\nexport interface Tokens {\n references: Token[];\n systems: {\n light: TokenSystem[];\n dark: TokenSystem[];\n } | TokenSystem[];\n}\n\nconst tokens: {\n colors: Tokens;\n typographies: Tokens;\n} = rawTokens;\n\nexport { tokens };\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,MAAM,MAAM,GAGR;;ACnCJ;;AAEG;;;;"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,237 @@
1
+ @use "@angular/material" as mat;
2
+
3
+ button {
4
+ gap: 0.5rem;
5
+
6
+ @include mat.button-overrides(
7
+ (
8
+ filled-horizontal-padding: 1rem,
9
+ outlined-horizontal-padding: 1rem,
10
+ protected-horizontal-padding: 1rem,
11
+ text-horizontal-padding: 1rem,
12
+ text-with-icon-horizontal-padding: 1rem,
13
+ outlined-label-text-color: var(--mat-sys-on-surface-variant),
14
+ outlined-outline-color: var(--mat-sys-outline-variant),
15
+ outlined-disabled-outline-color: var(--mat-sys-outline-variant),
16
+ outlined-state-layer-color:
17
+ color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent),
18
+ outlined-ripple-color:
19
+ color-mix(in srgb, var(--mat-sys-on-surface) 10%, transparent),
20
+ )
21
+ );
22
+
23
+ &[mat-button],
24
+ &[mat-stroked-button],
25
+ &[mat-flat-button] {
26
+ > mat-icon.mat-icon {
27
+ margin: 0;
28
+ font-size: 1.25rem;
29
+ height: 1.25rem;
30
+ width: 1.25rem;
31
+ }
32
+
33
+ &:disabled {
34
+ background-color: color-mix(
35
+ in srgb,
36
+ var(--mat-sys-on-surface) 12%,
37
+ transparent
38
+ );
39
+ }
40
+ }
41
+
42
+ &[hy-size="small"] {
43
+ gap: 0.5rem;
44
+
45
+ @include mat.button-density(-1);
46
+ @include mat.button-overrides(
47
+ (
48
+ filled-horizontal-padding: 0.75rem,
49
+ outlined-horizontal-padding: 0.75rem,
50
+ protected-horizontal-padding: 0.75rem,
51
+ text-horizontal-padding: 0.75rem,
52
+ text-with-icon-horizontal-padding: 0.75rem,
53
+ )
54
+ );
55
+ @include mat.icon-button-overrides(
56
+ (
57
+ state-layer-size: 2rem,
58
+ )
59
+ );
60
+
61
+ &[mat-icon-button] {
62
+ > mat-icon.mat-icon {
63
+ margin: 0;
64
+ font-size: 1.25rem;
65
+ height: 1.25rem;
66
+ width: 1.25rem;
67
+ }
68
+ }
69
+ }
70
+
71
+ &[hy-size="x-large"] {
72
+ @include mat.button-overrides(
73
+ (
74
+ filled-container-height: 3.5rem,
75
+ outlined-container-height: 3.5rem,
76
+ protected-container-height: 3.5rem,
77
+ text-container-height: 3.5rem,
78
+
79
+ filled-horizontal-padding: 1.5rem,
80
+ outlined-horizontal-padding: 1.5rem,
81
+ protected-horizontal-padding: 1.5rem,
82
+ text-horizontal-padding: 1.5rem,
83
+ text-with-icon-horizontal-padding: 1.5rem,
84
+
85
+ filled-label-text-font: var(--mat-sys-title-medium-font),
86
+ outlined-label-text-font: var(--mat-sys-title-medium-font),
87
+ protected-label-text-font: var(--mat-sys-title-medium-font),
88
+ text-label-text-font: var(--mat-sys-title-medium-font),
89
+ filled-label-text-size: var(--mat-sys-title-medium-size),
90
+ outlined-label-text-size: var(--mat-sys-title-medium-size),
91
+ protected-label-text-size: var(--mat-sys-title-medium-size),
92
+ text-label-text-size: var(--mat-sys-title-medium-size),
93
+ filled-label-text-tracking: var(--mat-sys-title-medium-tracking),
94
+ outlined-label-text-tracking:
95
+ var(--mat-sys-title-medium-tracking),
96
+ protected-label-text-tracking:
97
+ var(--mat-sys-title-medium-tracking),
98
+ text-label-text-tracking: var(--mat-sys-title-medium-tracking),
99
+ filled-label-text-weight: var(--mat-sys-title-medium-weight),
100
+ outlined-label-text-weight: var(--mat-sys-title-medium-weight),
101
+ protected-label-text-weight: var(--mat-sys-title-medium-weight),
102
+ text-label-text-weight: var(--mat-sys-title-medium-weight),
103
+ )
104
+ );
105
+
106
+ @include mat.icon-button-overrides(
107
+ (
108
+ state-layer-size: 3.5rem,
109
+ )
110
+ );
111
+
112
+ &[mat-button],
113
+ &[mat-stroked-button],
114
+ &[mat-flat-button] {
115
+ > mat-icon.mat-icon {
116
+ font-size: 1.5rem;
117
+ height: 1.5rem;
118
+ width: 1.5rem;
119
+ }
120
+ }
121
+ }
122
+
123
+ &[hy-appearance="tonal"],
124
+ &[hy-appearance="filled"],
125
+ &[hy-appearance="warning-filled"] {
126
+ &:disabled {
127
+ background-color: color-mix(
128
+ in srgb,
129
+ var(--mat-sys-on-surface) 10%,
130
+ transparent
131
+ );
132
+ }
133
+ }
134
+
135
+ &[hy-appearance="tonal"] {
136
+ @include mat.button-overrides(
137
+ (
138
+ filled-container-color: var(--mat-sys-secondary-container),
139
+ filled-label-text-color: var(--mat-sys-on-secondary-container),
140
+ filled-state-layer-color: var(--mat-sys-on-secondary-container),
141
+ filled-ripple-color:
142
+ color-mix(
143
+ in srgb,
144
+ var(--mat-sys-on-secondary-container) 10%,
145
+ transparent
146
+ ),
147
+ )
148
+ );
149
+
150
+ @include mat.icon-button-overrides(
151
+ (
152
+ icon-color: var(--mat-sys-on-secondary-container),
153
+ state-layer-color: var(--mat-sys-on-secondary-container),
154
+ ripple-color:
155
+ color-mix(
156
+ in srgb,
157
+ var(--mat-sys-on-secondary-container) 10%,
158
+ transparent
159
+ ),
160
+ )
161
+ );
162
+
163
+ &[mat-icon-button]:enabled {
164
+ background-color: var(--mat-sys-secondary-container);
165
+ }
166
+ }
167
+
168
+ &[hy-appearance="filled"] {
169
+ background-color: var(--mat-sys-primary);
170
+
171
+ @include mat.icon-button-overrides(
172
+ (
173
+ icon-color: var(--mat-sys-on-primary),
174
+ state-layer-color: var(--mat-sys-on-primary),
175
+ ripple-color:
176
+ color-mix(
177
+ in srgb,
178
+ var(--mat-sys-on-primary) 10%,
179
+ transparent
180
+ ),
181
+ )
182
+ );
183
+ }
184
+
185
+ &[hy-appearance="warning-filled"] {
186
+ @include mat.button-overrides(
187
+ (
188
+ filled-container-color: var(--mat-sys-warning),
189
+ filled-label-text-color: var(--mat-sys-on-warning),
190
+ filled-state-layer-color: var(--mat-sys-on-warning),
191
+ filled-ripple-color:
192
+ color-mix(
193
+ in srgb,
194
+ var(--mat-sys-on-warning) 10%,
195
+ transparent
196
+ ),
197
+ )
198
+ );
199
+
200
+ @include mat.icon-button-overrides(
201
+ (
202
+ icon-color: var(--mat-sys-on-warning),
203
+ state-layer-color: var(--mat-sys-on-warning),
204
+ ripple-color:
205
+ color-mix(
206
+ in srgb,
207
+ var(--mat-sys-on-warning) 10%,
208
+ transparent
209
+ ),
210
+ )
211
+ );
212
+
213
+ &[mat-icon-button]:enabled {
214
+ background-color: var(--mat-sys-warning);
215
+ }
216
+ }
217
+
218
+ &[hy-appearance="warning-text"] {
219
+ @include mat.button-overrides(
220
+ (
221
+ text-label-text-color: var(--mat-sys-warning),
222
+ text-state-layer-color: var(--mat-sys-warning),
223
+ text-ripple-color:
224
+ color-mix(in srgb, var(--mat-sys-warning) 10%, transparent),
225
+ )
226
+ );
227
+
228
+ @include mat.icon-button-overrides(
229
+ (
230
+ icon-color: var(--mat-sys-warning),
231
+ state-layer-color: var(--mat-sys-warning),
232
+ ripple-color:
233
+ color-mix(in srgb, var(--mat-sys-warning) 10%, transparent),
234
+ )
235
+ );
236
+ }
237
+ }
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ export type HySizeType = 'x-small' | 'small' | 'medium' | 'large' | 'x-large';
3
+ export declare class ComponentsStylingDirective {
4
+ hySize: import("@angular/core").InputSignal<HySizeType | null>;
5
+ hyAppearance: import("@angular/core").InputSignal<string | null>;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<ComponentsStylingDirective, never>;
7
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ComponentsStylingDirective, " [hy-size], [hy-appearance] ", never, { "hySize": { "alias": "hy-size"; "required": false; "isSignal": true; }; "hyAppearance": { "alias": "hy-appearance"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
8
+ }
@@ -0,0 +1 @@
1
+ export { ComponentsStylingDirective } from './directives/components-styling.directive';
@@ -0,0 +1,29 @@
1
+ @use "@angular/material" as mat;
2
+
3
+ mat-dialog-container {
4
+ @include mat.dialog-overrides(
5
+ (
6
+ actions-padding: 1.5rem,
7
+ headline-padding: 0.25rem 1.5rem 1rem,
8
+ )
9
+ );
10
+ }
11
+
12
+ .warning-dialog {
13
+ mat-dialog-container {
14
+ @include mat.dialog-overrides(
15
+ (
16
+ subhead-color: var(--mat-sys-warning),
17
+ headline-padding: 1.5rem 1.5rem 1rem,
18
+ )
19
+ );
20
+ }
21
+
22
+ [mat-dialog-title]:before {
23
+ content: "warning";
24
+ font-family: "Material Symbols Outlined Variable";
25
+ display: inline;
26
+ padding-right: 10px;
27
+ vertical-align: bottom;
28
+ }
29
+ }
@@ -0,0 +1,2 @@
1
+ import type { Provider } from '@angular/core';
2
+ export declare const provideHyFormField: () => Provider;
@@ -0,0 +1,97 @@
1
+ @use "@angular/material" as mat;
2
+
3
+ mat-form-field {
4
+ @include mat.form-field-density(-2);
5
+ @include mat.form-field-overrides(
6
+ (
7
+ outlined-focus-label-text-color: var(--mat-sys-primary),
8
+ outlined-focus-outline-color: var(--mat-sys-primary),
9
+ outlined-focus-outline-width: 3px,
10
+ outlined-error-label-text-color: var(--mat-sys-error),
11
+ outlined-error-focus-label-text-color: var(--mat-sys-error),
12
+ outlined-error-outline-color: var(--mat-sys-error),
13
+ outlined-error-caret-color: var(--mat-sys-error),
14
+ outlined-input-text-placeholder-color:
15
+ var(--mat-sys-on-surface-variant),
16
+ )
17
+ );
18
+
19
+ .mat-mdc-floating-label {
20
+ top: 50%;
21
+ }
22
+
23
+ &:has(textarea) {
24
+ &[hy-size="small"] {
25
+ .mat-mdc-form-field-icon-suffix {
26
+ padding: 0.5rem 0;
27
+
28
+ mat-icon {
29
+ padding-top: 0.125rem;
30
+ }
31
+ }
32
+ }
33
+
34
+ &[hy-size="large"] {
35
+ .mat-mdc-form-field-icon-suffix {
36
+ padding: 1rem 0;
37
+ }
38
+ }
39
+
40
+ .mat-mdc-form-field-icon-suffix {
41
+ height: -webkit-fill-available;
42
+ display: flex;
43
+ align-items: flex-start;
44
+ justify-content: center;
45
+ padding-bottom: 0.75rem;
46
+ padding-top: 0.75rem;
47
+ margin-left: 0.25rem;
48
+ }
49
+ }
50
+
51
+ &[hy-size="small"] {
52
+ @include mat.form-field-density(-4);
53
+
54
+ .mat-mdc-form-field-icon-suffix,
55
+ .mat-mdc-form-field-icon-prefix {
56
+ button {
57
+ margin: 0 0.5rem;
58
+ }
59
+
60
+ mat-icon {
61
+ font-size: 1.25rem;
62
+ width: 1.25rem;
63
+ height: 1.25rem;
64
+ }
65
+ }
66
+ }
67
+
68
+ &[hy-size="large"] {
69
+ @include mat.form-field-density(0);
70
+ }
71
+
72
+ &.mat-form-field-disabled {
73
+ mat-hint {
74
+ color: color-mix(
75
+ in srgb,
76
+ var(--mat-sys-on-surface-variant) 38%,
77
+ transparent
78
+ );
79
+ }
80
+ }
81
+
82
+ > .mat-mdc-text-field-wrapper {
83
+ background-color: var(--mat-sys-surface-container-lowest);
84
+ }
85
+
86
+ .mat-mdc-form-field-icon-suffix,
87
+ .mat-mdc-form-field-icon-prefix {
88
+ width: 3rem;
89
+ button {
90
+ margin: 0 0.25rem;
91
+ }
92
+ }
93
+
94
+ mat-hint {
95
+ color: var(--mat-sys-on-surface-variant);
96
+ }
97
+ }
@@ -0,0 +1 @@
1
+ export { provideHyFormField } from './form-field.provider';
@@ -0,0 +1,69 @@
1
+ @use "@angular/material" as mat;
2
+ @use "./utils" as map;
3
+
4
+ $override-colors: (
5
+ primary: var(--hy-color-primary),
6
+ on-primary: var(--hy-color-on-primary),
7
+ primary-container: var(--hy-color-primary-container),
8
+ on-primary-container: var(--hy-color-on-primary-container),
9
+ primary-fixed: var(--hy-color-primary-fixed),
10
+ primary-fixed-dim: var(--hy-color-primary-fixed-dim),
11
+ on-primary-fixed: var(--hy-color-primary-fixed),
12
+ on-primary-fixed-variant: var(--hy-color-primary-fixed-variant),
13
+ secondary: var(--hy-color-secondary),
14
+ on-secondary: var(--hy-color-on-secondary),
15
+ secondary-container: var(--hy-color-secondary-container),
16
+ on-secondary-conmtainer: var(--hy-color-on-secondary-container),
17
+ secondary-fixed: var(--hy-color-secondary-fixed),
18
+ secondary-fixed-dim: var(--hy-color-secondary-fixed-dim),
19
+ on-secondary-fixed: var(--hy-color-secondary-fixed),
20
+ on-secondary-fixed-variant: var(--hy-color-secondary-fixed-variant),
21
+ tertiary: var(--hy-color-tertiary),
22
+ on-tertiary: var(--hy-color-on-tertiary),
23
+ tertiary-container: var(--hy-color-tertiary-container),
24
+ on-tertiary-conmtainer: var(--hy-color-on-tertiary-container),
25
+ tertiary-fixed: var(--hy-color-tertiary-fixed),
26
+ tertiary-fixed-dim: var(--hy-color-tertiary-fixed-dim),
27
+ on-tertiary-fixed: var(--hy-color-tertiary-fixed),
28
+ on-tertiary-fixed-variant: var(--hy-color-tertiary-fixed-variant),
29
+ error: var(--hy-color-error),
30
+ on-error: var(--hy-color-on-error),
31
+ error-container: var(--hy-color-error-container),
32
+ on-error-conmtainer: var(--hy-color-on-error-container),
33
+ surface: var(--hy-color-surface),
34
+ surface-dim: var(--hy-color-surface-dim),
35
+ surface-bright: var(--hy-color-surface-bright),
36
+ surface-container-lowest: var(--hy-color-surface-container-lowest),
37
+ surface-container-low: var(--hy-color-surface-container-low),
38
+ surface-container: var(--hy-color-surface-container),
39
+ surface-container-high: var(--hy-color-surface-container-high),
40
+ surface-container-highest: var(--hy-color-surface-container-highest),
41
+ on-surface: var(--hy-color-on-surface),
42
+ on-surface-variant: var(--hy-color-on-surface-variant),
43
+ ouline: var(--hy-color-outline),
44
+ ouline-variant: var(--hy-color-outline-variant),
45
+ inverse-surface: var(--hy-color-inverse-surface),
46
+ inverse-on-surface: var(--hy-color-inverse-on-surface),
47
+ inverse-primary: var(--hy-color-inverse-primary),
48
+ background: var(--hy-color-background),
49
+ on-background: var(--hy-color-on-background),
50
+ scrim: var(--hy-color-scrim),
51
+ shadow: var(--hy-color-shadow),
52
+ );
53
+
54
+ $override-typography: ();
55
+
56
+ $override-density: ();
57
+
58
+ $overrides: map.merge-all($override-colors, $override-typography);
59
+
60
+ @mixin theme {
61
+ @include mat.theme(
62
+ (
63
+ color: (),
64
+ typography: Roboto,
65
+ density: 0,
66
+ ),
67
+ $overrides
68
+ );
69
+ }
@@ -0,0 +1,10 @@
1
+ @use 'sass:map';
2
+
3
+ @function merge-all($maps...) {
4
+ $collection: ();
5
+
6
+ @each $map in $maps {
7
+ $collection: map-merge($collection, $map);
8
+ }
9
+ @return $collection;
10
+ }
@@ -0,0 +1,30 @@
1
+ export interface Token {
2
+ id: string;
3
+ name: string;
4
+ type: string;
5
+ value: string | number;
6
+ }
7
+ export interface TokenSystem {
8
+ id?: string;
9
+ name: string;
10
+ type: string;
11
+ reference: Token[];
12
+ _referenceValue: string | {
13
+ weight: number;
14
+ size: number;
15
+ lineHeight: number;
16
+ font: string;
17
+ };
18
+ }
19
+ export interface Tokens {
20
+ references: Token[];
21
+ systems: {
22
+ light: TokenSystem[];
23
+ dark: TokenSystem[];
24
+ } | TokenSystem[];
25
+ }
26
+ declare const tokens: {
27
+ colors: Tokens;
28
+ typographies: Tokens;
29
+ };
30
+ export { tokens };