@seed-design/lynx-css 0.14.2 → 1.0.1

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.
Files changed (94) hide show
  1. package/all.css +1078 -373
  2. package/all.min.css +1 -1
  3. package/base.css +10 -0
  4. package/base.min.css +1 -1
  5. package/package.json +1 -1
  6. package/recipes/alert-dialog.css +11 -0
  7. package/recipes/alert-dialog.d.ts +1 -1
  8. package/recipes/alert-dialog.mjs +8 -0
  9. package/recipes/app-bar.css +7 -3
  10. package/recipes/attachment-input-item.css +7 -0
  11. package/recipes/attachment-input.css +2 -1
  12. package/recipes/avatar-stack.css +69 -0
  13. package/recipes/avatar-stack.d.ts +24 -0
  14. package/recipes/avatar-stack.mjs +55 -0
  15. package/recipes/avatar.css +257 -0
  16. package/recipes/avatar.d.ts +28 -0
  17. package/recipes/avatar.mjs +82 -0
  18. package/recipes/badge.css +22 -23
  19. package/recipes/badge.d.ts +0 -4
  20. package/recipes/badge.mjs +1 -14
  21. package/recipes/bottom-sheet.css +33 -2
  22. package/recipes/bottom-sheet.d.ts +5 -1
  23. package/recipes/bottom-sheet.mjs +28 -2
  24. package/recipes/callout.css +1 -8
  25. package/recipes/checkbox.css +7 -1
  26. package/recipes/checkmark.css +17 -26
  27. package/recipes/checkmark.d.ts +1 -5
  28. package/recipes/checkmark.mjs +7 -60
  29. package/recipes/chip-tabs.css +12 -7
  30. package/recipes/chip.css +16 -11
  31. package/recipes/content-placeholder.css +29 -0
  32. package/recipes/content-placeholder.d.ts +21 -0
  33. package/recipes/content-placeholder.mjs +44 -0
  34. package/recipes/dialog.css +4 -2
  35. package/recipes/{input-button.css → field-button.css} +49 -49
  36. package/recipes/field-button.d.ts +40 -0
  37. package/recipes/{input-button.mjs → field-button.mjs} +20 -20
  38. package/recipes/floating-action-button.css +15 -8
  39. package/recipes/image-frame-icon.css +8 -0
  40. package/recipes/image-frame-icon.d.ts +19 -0
  41. package/recipes/image-frame-icon.mjs +22 -0
  42. package/recipes/image-frame-indicator.css +17 -0
  43. package/recipes/image-frame-indicator.d.ts +21 -0
  44. package/recipes/image-frame-indicator.mjs +36 -0
  45. package/recipes/image-frame-reaction-button.css +20 -0
  46. package/recipes/image-frame-reaction-button.d.ts +21 -0
  47. package/recipes/image-frame-reaction-button.mjs +40 -0
  48. package/recipes/image-frame.css +87 -0
  49. package/recipes/image-frame.d.ts +32 -0
  50. package/recipes/image-frame.mjs +72 -0
  51. package/recipes/list-item.css +0 -4
  52. package/recipes/list-item.d.ts +1 -1
  53. package/recipes/list-item.mjs +0 -4
  54. package/recipes/menu-sheet-item.css +5 -1
  55. package/recipes/menu-sheet.css +5 -0
  56. package/recipes/menu-sheet.d.ts +1 -1
  57. package/recipes/menu-sheet.mjs +4 -0
  58. package/recipes/menu.css +1 -13
  59. package/recipes/menu.d.ts +1 -1
  60. package/recipes/menu.mjs +0 -4
  61. package/recipes/progress-circle.css +61 -4
  62. package/recipes/progress-circle.d.ts +1 -1
  63. package/recipes/progress-circle.mjs +1 -0
  64. package/recipes/pull-to-refresh.css +14 -0
  65. package/recipes/pull-to-refresh.d.ts +21 -0
  66. package/recipes/pull-to-refresh.mjs +40 -0
  67. package/recipes/reaction-button.css +19 -19
  68. package/recipes/reaction-button.d.ts +0 -4
  69. package/recipes/reaction-button.mjs +0 -11
  70. package/recipes/scroll-fog.css +4 -17
  71. package/recipes/scroll-fog.d.ts +1 -1
  72. package/recipes/scroll-fog.mjs +0 -8
  73. package/recipes/segmented-control.css +24 -14
  74. package/recipes/segmented-control.d.ts +4 -4
  75. package/recipes/segmented-control.mjs +8 -8
  76. package/recipes/select-box-checkmark.css +4 -7
  77. package/recipes/select-box.css +10 -4
  78. package/recipes/select-item.css +13 -2
  79. package/recipes/select-item.d.ts +1 -1
  80. package/recipes/select-item.mjs +4 -0
  81. package/recipes/select-trigger.css +13 -2
  82. package/recipes/select-trigger.d.ts +1 -1
  83. package/recipes/select-trigger.mjs +4 -0
  84. package/recipes/select.css +1 -13
  85. package/recipes/select.d.ts +1 -1
  86. package/recipes/select.mjs +0 -4
  87. package/recipes/slider-marker.css +2 -2
  88. package/recipes/slider-tick.css +1 -1
  89. package/recipes/slider.css +2 -5
  90. package/recipes/tabs.css +11 -11
  91. package/recipes/wheel-picker.css +151 -0
  92. package/recipes/wheel-picker.d.ts +32 -0
  93. package/recipes/wheel-picker.mjs +90 -0
  94. package/recipes/input-button.d.ts +0 -40
@@ -1,4 +1,4 @@
1
- .seed-input-button__root {
1
+ .seed-field-button__root {
2
2
  display: flex;
3
3
  flex-direction: row;
4
4
  width: 100%;
@@ -6,7 +6,7 @@
6
6
  position: relative;
7
7
  overflow: hidden
8
8
  }
9
- .seed-input-button__content {
9
+ .seed-field-button__content {
10
10
  display: flex;
11
11
  flex-direction: row;
12
12
  align-items: center;
@@ -14,7 +14,7 @@
14
14
  height: 100%;
15
15
  pointer-events: none
16
16
  }
17
- .seed-input-button__button {
17
+ .seed-field-button__button {
18
18
  position: absolute;
19
19
  top: 0;
20
20
  right: 0;
@@ -23,7 +23,7 @@
23
23
  background-color: var(--seed-color-bg-transparent);
24
24
  transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing)
25
25
  }
26
- .seed-input-button__baseStroke {
26
+ .seed-field-button__baseStroke {
27
27
  position: absolute;
28
28
  top: 0;
29
29
  right: 0;
@@ -34,7 +34,7 @@
34
34
  border-color: var(--seed-color-stroke-neutral-weak);
35
35
  pointer-events: none
36
36
  }
37
- .seed-input-button__stroke {
37
+ .seed-field-button__stroke {
38
38
  position: absolute;
39
39
  top: 0;
40
40
  right: 0;
@@ -46,7 +46,7 @@
46
46
  transition: border-color 0.1s var(--seed-timing-function-easing);
47
47
  pointer-events: none
48
48
  }
49
- .seed-input-button__value {
49
+ .seed-field-button__value {
50
50
  flex-grow: 1;
51
51
  min-width: 0;
52
52
  color: var(--seed-color-fg-neutral);
@@ -56,7 +56,7 @@
56
56
  white-space: nowrap;
57
57
  pointer-events: none
58
58
  }
59
- .seed-input-button__placeholder {
59
+ .seed-field-button__placeholder {
60
60
  flex-grow: 1;
61
61
  min-width: 0;
62
62
  color: var(--seed-color-fg-placeholder);
@@ -66,163 +66,163 @@
66
66
  white-space: nowrap;
67
67
  pointer-events: none
68
68
  }
69
- .seed-input-button__prefixText {
69
+ .seed-field-button__prefixText {
70
70
  flex-shrink: 0;
71
71
  color: var(--seed-color-fg-neutral-subtle);
72
72
  font-weight: var(--seed-font-weight-regular);
73
73
  pointer-events: none
74
74
  }
75
- .seed-input-button__prefixIcon {
75
+ .seed-field-button__prefixIcon {
76
76
  flex-shrink: 0;
77
77
  color: var(--seed-color-fg-neutral-muted);
78
78
  pointer-events: none
79
79
  }
80
- .seed-input-button__suffixText {
80
+ .seed-field-button__suffixText {
81
81
  flex-shrink: 0;
82
82
  color: var(--seed-color-fg-neutral-subtle);
83
83
  font-weight: var(--seed-font-weight-regular);
84
84
  pointer-events: none
85
85
  }
86
- .seed-input-button__suffixIcon {
86
+ .seed-field-button__suffixIcon {
87
87
  flex-shrink: 0;
88
88
  color: var(--seed-color-fg-neutral-muted);
89
89
  pointer-events: none
90
90
  }
91
- .seed-input-button__clearButton {
91
+ .seed-field-button__clearButton {
92
92
  pointer-events: auto;
93
93
  flex-shrink: 0;
94
94
  color: var(--seed-color-fg-neutral-subtle)
95
95
  }
96
- .seed-input-button__root--size_large {
96
+ .seed-field-button__root--size_large {
97
97
  height: var(--seed-dimension-x13);
98
98
  gap: var(--seed-dimension-x2_5);
99
99
  padding-left: var(--seed-dimension-x4);
100
100
  padding-right: var(--seed-dimension-x4);
101
101
  border-radius: var(--seed-radius-r3)
102
102
  }
103
- .seed-input-button__content--size_large {
103
+ .seed-field-button__content--size_large {
104
104
  gap: var(--seed-dimension-x2_5)
105
105
  }
106
- .seed-input-button__button--size_large {
106
+ .seed-field-button__button--size_large {
107
107
  border-radius: var(--seed-radius-r3)
108
108
  }
109
- .seed-input-button__baseStroke--size_large {
109
+ .seed-field-button__baseStroke--size_large {
110
110
  border-radius: var(--seed-radius-r3)
111
111
  }
112
- .seed-input-button__stroke--size_large {
112
+ .seed-field-button__stroke--size_large {
113
113
  border-radius: var(--seed-radius-r3)
114
114
  }
115
- .seed-input-button__value--size_large {
115
+ .seed-field-button__value--size_large {
116
116
  font-size: var(--seed-font-size-t5);
117
117
  line-height: var(--seed-line-height-t5)
118
118
  }
119
- .seed-input-button__placeholder--size_large {
119
+ .seed-field-button__placeholder--size_large {
120
120
  font-size: var(--seed-font-size-t5);
121
121
  line-height: var(--seed-line-height-t5)
122
122
  }
123
- .seed-input-button__prefixText--size_large {
123
+ .seed-field-button__prefixText--size_large {
124
124
  font-size: var(--seed-font-size-t5);
125
125
  line-height: var(--seed-line-height-t5)
126
126
  }
127
- .seed-input-button__prefixIcon--size_large {
127
+ .seed-field-button__prefixIcon--size_large {
128
128
  width: var(--seed-dimension-x5);
129
129
  height: var(--seed-dimension-x5)
130
130
  }
131
- .seed-input-button__suffixText--size_large {
131
+ .seed-field-button__suffixText--size_large {
132
132
  font-size: var(--seed-font-size-t5);
133
133
  line-height: var(--seed-line-height-t5)
134
134
  }
135
- .seed-input-button__suffixIcon--size_large {
135
+ .seed-field-button__suffixIcon--size_large {
136
136
  width: var(--seed-dimension-x5);
137
137
  height: var(--seed-dimension-x5)
138
138
  }
139
- .seed-input-button__clearButton--size_large {
139
+ .seed-field-button__clearButton--size_large {
140
140
  width: 22px;
141
141
  height: 22px
142
142
  }
143
- .seed-input-button__root--size_medium {
143
+ .seed-field-button__root--size_medium {
144
144
  height: var(--seed-dimension-x10);
145
145
  gap: var(--seed-dimension-x2);
146
146
  padding-left: var(--seed-dimension-x3_5);
147
147
  padding-right: var(--seed-dimension-x3_5);
148
148
  border-radius: var(--seed-radius-r2)
149
149
  }
150
- .seed-input-button__content--size_medium {
150
+ .seed-field-button__content--size_medium {
151
151
  gap: var(--seed-dimension-x2)
152
152
  }
153
- .seed-input-button__button--size_medium {
153
+ .seed-field-button__button--size_medium {
154
154
  border-radius: var(--seed-radius-r2)
155
155
  }
156
- .seed-input-button__baseStroke--size_medium {
156
+ .seed-field-button__baseStroke--size_medium {
157
157
  border-radius: var(--seed-radius-r2)
158
158
  }
159
- .seed-input-button__stroke--size_medium {
159
+ .seed-field-button__stroke--size_medium {
160
160
  border-radius: var(--seed-radius-r2)
161
161
  }
162
- .seed-input-button__value--size_medium {
162
+ .seed-field-button__value--size_medium {
163
163
  font-size: var(--seed-font-size-t4);
164
164
  line-height: var(--seed-line-height-t4)
165
165
  }
166
- .seed-input-button__placeholder--size_medium {
166
+ .seed-field-button__placeholder--size_medium {
167
167
  font-size: var(--seed-font-size-t4);
168
168
  line-height: var(--seed-line-height-t4)
169
169
  }
170
- .seed-input-button__prefixText--size_medium {
170
+ .seed-field-button__prefixText--size_medium {
171
171
  font-size: var(--seed-font-size-t4);
172
172
  line-height: var(--seed-line-height-t4)
173
173
  }
174
- .seed-input-button__prefixIcon--size_medium {
174
+ .seed-field-button__prefixIcon--size_medium {
175
175
  width: var(--seed-dimension-x4);
176
176
  height: var(--seed-dimension-x4)
177
177
  }
178
- .seed-input-button__suffixText--size_medium {
178
+ .seed-field-button__suffixText--size_medium {
179
179
  font-size: var(--seed-font-size-t4);
180
180
  line-height: var(--seed-line-height-t4)
181
181
  }
182
- .seed-input-button__suffixIcon--size_medium {
182
+ .seed-field-button__suffixIcon--size_medium {
183
183
  width: var(--seed-dimension-x4);
184
184
  height: var(--seed-dimension-x4)
185
185
  }
186
- .seed-input-button__clearButton--size_medium {
186
+ .seed-field-button__clearButton--size_medium {
187
187
  width: var(--seed-dimension-x4_5);
188
188
  height: var(--seed-dimension-x4_5)
189
189
  }
190
- .seed-input-button__button--pressed_true {
190
+ .seed-field-button__button--pressed_true {
191
191
  background-color: var(--seed-color-bg-transparent-pressed)
192
192
  }
193
- .seed-input-button__stroke--invalid_true {
193
+ .seed-field-button__stroke--invalid_true {
194
194
  border-color: var(--seed-color-stroke-critical-solid)
195
195
  }
196
- .seed-input-button__button--disabled_true {
196
+ .seed-field-button__button--disabled_true {
197
197
  background-color: var(--seed-color-bg-disabled)
198
198
  }
199
- .seed-input-button__value--disabled_true {
199
+ .seed-field-button__value--disabled_true {
200
200
  color: var(--seed-color-fg-disabled)
201
201
  }
202
- .seed-input-button__placeholder--disabled_true {
202
+ .seed-field-button__placeholder--disabled_true {
203
203
  color: var(--seed-color-fg-disabled)
204
204
  }
205
- .seed-input-button__prefixText--disabled_true {
205
+ .seed-field-button__prefixText--disabled_true {
206
206
  color: var(--seed-color-fg-disabled)
207
207
  }
208
- .seed-input-button__prefixIcon--disabled_true {
208
+ .seed-field-button__prefixIcon--disabled_true {
209
209
  color: var(--seed-color-fg-disabled)
210
210
  }
211
- .seed-input-button__suffixText--disabled_true {
211
+ .seed-field-button__suffixText--disabled_true {
212
212
  color: var(--seed-color-fg-disabled)
213
213
  }
214
- .seed-input-button__suffixIcon--disabled_true {
214
+ .seed-field-button__suffixIcon--disabled_true {
215
215
  color: var(--seed-color-fg-disabled)
216
216
  }
217
- .seed-input-button__button--readOnly_true {
217
+ .seed-field-button__button--readOnly_true {
218
218
  background-color: var(--seed-color-bg-disabled)
219
219
  }
220
- .seed-input-button__value--readOnly_true {
220
+ .seed-field-button__value--readOnly_true {
221
221
  color: var(--seed-color-fg-neutral)
222
222
  }
223
- .seed-input-button__placeholder--readOnly_true {
223
+ .seed-field-button__placeholder--readOnly_true {
224
224
  color: var(--seed-color-fg-placeholder)
225
225
  }
226
- .seed-input-button__button--disabled_false-readOnly_false:active {
226
+ .seed-field-button__button--disabled_false-readOnly_false:active {
227
227
  background-color: var(--seed-color-bg-transparent-pressed)
228
228
  }
@@ -0,0 +1,40 @@
1
+ declare interface FieldButtonVariant {
2
+ /**
3
+ * @default "large"
4
+ */
5
+ size: "large" | "medium";
6
+ /**
7
+ * @default false
8
+ */
9
+ pressed: boolean;
10
+ /**
11
+ * @default false
12
+ */
13
+ invalid: boolean;
14
+ /**
15
+ * @default false
16
+ */
17
+ disabled: boolean;
18
+ /**
19
+ * @default false
20
+ */
21
+ readOnly: boolean;
22
+ }
23
+
24
+ declare type FieldButtonVariantMap = {
25
+ [key in keyof FieldButtonVariant]: Array<FieldButtonVariant[key]>;
26
+ };
27
+
28
+ export declare type FieldButtonVariantProps = Partial<FieldButtonVariant>;
29
+
30
+ export declare type FieldButtonSlotName = "root" | "button" | "content" | "baseStroke" | "stroke" | "value" | "placeholder" | "prefixText" | "prefixIcon" | "suffixText" | "suffixIcon" | "clearButton";
31
+
32
+ export declare const fieldButtonVariantMap: FieldButtonVariantMap;
33
+
34
+ export declare const fieldButton: ((
35
+ props?: FieldButtonVariantProps,
36
+ ) => Record<FieldButtonSlotName, string>) & {
37
+ splitVariantProps: <T extends FieldButtonVariantProps>(
38
+ props: T,
39
+ ) => [FieldButtonVariantProps, Omit<T, keyof FieldButtonVariantProps>];
40
+ }
@@ -1,54 +1,54 @@
1
- import './input-button.css';
1
+ import './field-button.css';
2
2
  import { createClassName, mergeVariants, splitVariantProps } from "./shared.mjs";
3
3
 
4
- const inputButtonSlotNames = [
4
+ const fieldButtonSlotNames = [
5
5
  [
6
6
  "root",
7
- "seed-input-button__root"
7
+ "seed-field-button__root"
8
8
  ],
9
9
  [
10
10
  "button",
11
- "seed-input-button__button"
11
+ "seed-field-button__button"
12
12
  ],
13
13
  [
14
14
  "content",
15
- "seed-input-button__content"
15
+ "seed-field-button__content"
16
16
  ],
17
17
  [
18
18
  "baseStroke",
19
- "seed-input-button__baseStroke"
19
+ "seed-field-button__baseStroke"
20
20
  ],
21
21
  [
22
22
  "stroke",
23
- "seed-input-button__stroke"
23
+ "seed-field-button__stroke"
24
24
  ],
25
25
  [
26
26
  "value",
27
- "seed-input-button__value"
27
+ "seed-field-button__value"
28
28
  ],
29
29
  [
30
30
  "placeholder",
31
- "seed-input-button__placeholder"
31
+ "seed-field-button__placeholder"
32
32
  ],
33
33
  [
34
34
  "prefixText",
35
- "seed-input-button__prefixText"
35
+ "seed-field-button__prefixText"
36
36
  ],
37
37
  [
38
38
  "prefixIcon",
39
- "seed-input-button__prefixIcon"
39
+ "seed-field-button__prefixIcon"
40
40
  ],
41
41
  [
42
42
  "suffixText",
43
- "seed-input-button__suffixText"
43
+ "seed-field-button__suffixText"
44
44
  ],
45
45
  [
46
46
  "suffixIcon",
47
- "seed-input-button__suffixIcon"
47
+ "seed-field-button__suffixIcon"
48
48
  ],
49
49
  [
50
50
  "clearButton",
51
- "seed-input-button__clearButton"
51
+ "seed-field-button__clearButton"
52
52
  ]
53
53
  ];
54
54
 
@@ -67,7 +67,7 @@ const compoundVariants = [
67
67
  }
68
68
  ];
69
69
 
70
- export const inputButtonVariantMap = {
70
+ export const fieldButtonVariantMap = {
71
71
  "size": [
72
72
  "large",
73
73
  "medium"
@@ -90,11 +90,11 @@ export const inputButtonVariantMap = {
90
90
  ]
91
91
  };
92
92
 
93
- export const inputButtonVariantKeys = Object.keys(inputButtonVariantMap);
93
+ export const fieldButtonVariantKeys = Object.keys(fieldButtonVariantMap);
94
94
 
95
- export function inputButton(props) {
95
+ export function fieldButton(props) {
96
96
  return Object.fromEntries(
97
- inputButtonSlotNames.map(([slot, className]) => {
97
+ fieldButtonSlotNames.map(([slot, className]) => {
98
98
  return [
99
99
  slot,
100
100
  createClassName(className, mergeVariants(defaultVariant, props), compoundVariants),
@@ -103,6 +103,6 @@ export function inputButton(props) {
103
103
  );
104
104
  }
105
105
 
106
- Object.assign(inputButton, { splitVariantProps: (props) => splitVariantProps(props, inputButtonVariantMap) });
106
+ Object.assign(fieldButton, { splitVariantProps: (props) => splitVariantProps(props, fieldButtonVariantMap) });
107
107
 
108
- // @recipe(seed): input-button
108
+ // @recipe(seed): field-button
@@ -3,14 +3,15 @@
3
3
  display: flex;
4
4
  flex-direction: row;
5
5
  align-items: center;
6
- justify-content: center;
6
+ justify-content: flex-start;
7
7
  flex-shrink: 0;
8
8
  max-width: 100%;
9
9
  overflow: hidden;
10
+ gap: var(--seed-dimension-x1);
10
11
  background-color: var(--seed-color-bg-brand-solid);
11
12
  border-radius: var(--seed-radius-full);
12
13
  box-shadow: var(--seed-shadow-s3);
13
- transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), width var(--seed-duration-d4) var(--seed-timing-function-easing), height var(--seed-duration-d4) var(--seed-timing-function-easing), padding-left var(--seed-duration-d4) var(--seed-timing-function-easing), padding-right var(--seed-duration-d4) var(--seed-timing-function-easing), gap var(--seed-duration-d4) var(--seed-timing-function-easing)
14
+ transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), width var(--seed-duration-d4) var(--seed-timing-function-easing), height var(--seed-duration-d4) var(--seed-timing-function-easing), padding-left var(--seed-duration-d4) var(--seed-timing-function-easing), padding-right var(--seed-duration-d4) var(--seed-timing-function-easing)
14
15
  }
15
16
  .seed-floating-action-button__icon {
16
17
  flex-shrink: 0;
@@ -20,17 +21,18 @@
20
21
  .seed-floating-action-button__label {
21
22
  width: max-content;
22
23
  flex-shrink: 0;
24
+ white-space: nowrap;
23
25
  color: var(--seed-color-fg-on-brand-solid);
24
26
  font-size: var(--seed-font-size-t5);
25
27
  line-height: var(--seed-line-height-t5);
26
- font-weight: var(--seed-font-weight-bold)
28
+ font-weight: var(--seed-font-weight-bold);
29
+ transition: opacity var(--seed-duration-d4) var(--seed-timing-function-easing)
27
30
  }
28
31
  .seed-floating-action-button__root--extended_true {
29
32
  width: fit-content;
30
33
  height: 48px;
31
34
  padding-left: var(--seed-dimension-x4_5);
32
- padding-right: var(--seed-dimension-x4_5);
33
- gap: var(--seed-dimension-x1)
35
+ padding-right: var(--seed-dimension-x4_5)
34
36
  }
35
37
  .seed-floating-action-button__icon--extended_true {
36
38
  width: var(--seed-dimension-x4);
@@ -39,14 +41,16 @@
39
41
  .seed-floating-action-button__root--extended_false {
40
42
  width: 56px;
41
43
  height: 56px;
42
- padding-left: 0;
43
- padding-right: 0;
44
- gap: 0
44
+ padding-left: calc((56px - var(--seed-dimension-x6)) / 2);
45
+ padding-right: 0
45
46
  }
46
47
  .seed-floating-action-button__icon--extended_false {
47
48
  width: var(--seed-dimension-x6);
48
49
  height: var(--seed-dimension-x6)
49
50
  }
51
+ .seed-floating-action-button__label--extended_false {
52
+ opacity: 0
53
+ }
50
54
  .seed-floating-action-button__root--pressed_true {
51
55
  background-color: var(--seed-color-bg-brand-solid-pressed)
52
56
  }
@@ -56,6 +60,9 @@
56
60
  .seed-floating-action-button__icon--transitionEnabled_false {
57
61
  transition-duration: 0s
58
62
  }
63
+ .seed-floating-action-button__label--transitionEnabled_false {
64
+ transition-duration: 0s
65
+ }
59
66
  .seed-floating-action-button__root--extended_true-transitionEnabled_true {
60
67
  width: calc(var(--fab-label-width) + var(--seed-dimension-x4) + var(--seed-dimension-x1) + 2 * var(--seed-dimension-x4_5))
61
68
  }
@@ -0,0 +1,8 @@
1
+ .seed-image-frame-icon {
2
+ display: flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+ color: var(--seed-color-palette-static-white);
6
+ width: 24px;
7
+ height: 24px
8
+ }
@@ -0,0 +1,19 @@
1
+ declare interface ImageFrameIconVariant {
2
+
3
+ }
4
+
5
+ declare type ImageFrameIconVariantMap = {
6
+ [key in keyof ImageFrameIconVariant]: Array<ImageFrameIconVariant[key]>;
7
+ };
8
+
9
+ export declare type ImageFrameIconVariantProps = Partial<ImageFrameIconVariant>;
10
+
11
+ export declare const imageFrameIconVariantMap: ImageFrameIconVariantMap;
12
+
13
+ export declare const imageFrameIcon: ((
14
+ props?: ImageFrameIconVariantProps,
15
+ ) => string) & {
16
+ splitVariantProps: <T extends ImageFrameIconVariantProps>(
17
+ props: T,
18
+ ) => [ImageFrameIconVariantProps, Omit<T, keyof ImageFrameIconVariantProps>];
19
+ }
@@ -0,0 +1,22 @@
1
+ import './image-frame-icon.css';
2
+ import { createClassName, mergeVariants, splitVariantProps } from "./shared.mjs";
3
+
4
+ const defaultVariant = {};
5
+
6
+ const compoundVariants = [];
7
+
8
+ export const imageFrameIconVariantMap = {};
9
+
10
+ export const imageFrameIconVariantKeys = Object.keys(imageFrameIconVariantMap);
11
+
12
+ export function imageFrameIcon(props) {
13
+ return createClassName(
14
+ "seed-image-frame-icon",
15
+ mergeVariants(defaultVariant, props),
16
+ compoundVariants,
17
+ );
18
+ }
19
+
20
+ Object.assign(imageFrameIcon, { splitVariantProps: (props) => splitVariantProps(props, imageFrameIconVariantMap) });
21
+
22
+ // @recipe(seed): image-frame-icon
@@ -0,0 +1,17 @@
1
+ .seed-image-frame-indicator__root {
2
+ display: flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+ background-color: var(--seed-color-palette-static-black-alpha-800);
6
+ border-radius: var(--seed-radius-full);
7
+ padding-left: var(--seed-dimension-x1_5);
8
+ padding-right: var(--seed-dimension-x1_5);
9
+ padding-top: var(--seed-dimension-x0_5);
10
+ padding-bottom: var(--seed-dimension-x0_5)
11
+ }
12
+ .seed-image-frame-indicator__label {
13
+ color: var(--seed-color-palette-static-white);
14
+ font-size: var(--seed-font-size-t1);
15
+ line-height: var(--seed-line-height-t1);
16
+ font-weight: var(--seed-font-weight-medium)
17
+ }
@@ -0,0 +1,21 @@
1
+ declare interface ImageFrameIndicatorVariant {
2
+
3
+ }
4
+
5
+ declare type ImageFrameIndicatorVariantMap = {
6
+ [key in keyof ImageFrameIndicatorVariant]: Array<ImageFrameIndicatorVariant[key]>;
7
+ };
8
+
9
+ export declare type ImageFrameIndicatorVariantProps = Partial<ImageFrameIndicatorVariant>;
10
+
11
+ export declare type ImageFrameIndicatorSlotName = "root" | "label";
12
+
13
+ export declare const imageFrameIndicatorVariantMap: ImageFrameIndicatorVariantMap;
14
+
15
+ export declare const imageFrameIndicator: ((
16
+ props?: ImageFrameIndicatorVariantProps,
17
+ ) => Record<ImageFrameIndicatorSlotName, string>) & {
18
+ splitVariantProps: <T extends ImageFrameIndicatorVariantProps>(
19
+ props: T,
20
+ ) => [ImageFrameIndicatorVariantProps, Omit<T, keyof ImageFrameIndicatorVariantProps>];
21
+ }
@@ -0,0 +1,36 @@
1
+ import './image-frame-indicator.css';
2
+ import { createClassName, mergeVariants, splitVariantProps } from "./shared.mjs";
3
+
4
+ const imageFrameIndicatorSlotNames = [
5
+ [
6
+ "root",
7
+ "seed-image-frame-indicator__root"
8
+ ],
9
+ [
10
+ "label",
11
+ "seed-image-frame-indicator__label"
12
+ ]
13
+ ];
14
+
15
+ const defaultVariant = {};
16
+
17
+ const compoundVariants = [];
18
+
19
+ export const imageFrameIndicatorVariantMap = {};
20
+
21
+ export const imageFrameIndicatorVariantKeys = Object.keys(imageFrameIndicatorVariantMap);
22
+
23
+ export function imageFrameIndicator(props) {
24
+ return Object.fromEntries(
25
+ imageFrameIndicatorSlotNames.map(([slot, className]) => {
26
+ return [
27
+ slot,
28
+ createClassName(className, mergeVariants(defaultVariant, props), compoundVariants),
29
+ ];
30
+ }),
31
+ );
32
+ }
33
+
34
+ Object.assign(imageFrameIndicator, { splitVariantProps: (props) => splitVariantProps(props, imageFrameIndicatorVariantMap) });
35
+
36
+ // @recipe(seed): image-frame-indicator
@@ -0,0 +1,20 @@
1
+ .seed-image-frame-reaction-button__root {
2
+ display: flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+ flex-shrink: 0;
6
+ position: relative;
7
+ width: var(--seed-dimension-x6);
8
+ height: var(--seed-dimension-x6);
9
+ background-color: transparent
10
+ }
11
+ .seed-image-frame-reaction-button__fillIcon {
12
+ width: var(--seed-dimension-x6);
13
+ height: var(--seed-dimension-x6);
14
+ pointer-events: none
15
+ }
16
+ .seed-image-frame-reaction-button__lineIcon {
17
+ width: var(--seed-dimension-x6);
18
+ height: var(--seed-dimension-x6);
19
+ pointer-events: none
20
+ }
@@ -0,0 +1,21 @@
1
+ declare interface ImageFrameReactionButtonVariant {
2
+
3
+ }
4
+
5
+ declare type ImageFrameReactionButtonVariantMap = {
6
+ [key in keyof ImageFrameReactionButtonVariant]: Array<ImageFrameReactionButtonVariant[key]>;
7
+ };
8
+
9
+ export declare type ImageFrameReactionButtonVariantProps = Partial<ImageFrameReactionButtonVariant>;
10
+
11
+ export declare type ImageFrameReactionButtonSlotName = "root" | "fillIcon" | "lineIcon";
12
+
13
+ export declare const imageFrameReactionButtonVariantMap: ImageFrameReactionButtonVariantMap;
14
+
15
+ export declare const imageFrameReactionButton: ((
16
+ props?: ImageFrameReactionButtonVariantProps,
17
+ ) => Record<ImageFrameReactionButtonSlotName, string>) & {
18
+ splitVariantProps: <T extends ImageFrameReactionButtonVariantProps>(
19
+ props: T,
20
+ ) => [ImageFrameReactionButtonVariantProps, Omit<T, keyof ImageFrameReactionButtonVariantProps>];
21
+ }