elbe-ui 1.0.8 → 2.0.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.
Files changed (141) hide show
  1. package/dist/elbe.css +150 -562
  2. package/dist/elbe.css.map +1 -1
  3. package/dist/index.d.ts +188 -46
  4. package/dist/index.js +8 -6
  5. package/dist/ui/app/app.d.ts +12 -0
  6. package/dist/ui/{components/layout/app_base.js → app/app.js} +24 -31
  7. package/dist/ui/app/app_ctxt.d.ts +35 -0
  8. package/dist/ui/app/app_ctxt.js +10 -0
  9. package/dist/ui/components/badge.d.ts +3 -3
  10. package/dist/ui/components/badge.js +16 -5
  11. package/dist/ui/components/banner.d.ts +3 -3
  12. package/dist/ui/components/banner.js +1 -1
  13. package/dist/ui/components/base/box.d.ts +82 -35
  14. package/dist/ui/components/base/box.js +56 -8
  15. package/dist/ui/components/base/card.d.ts +11 -12
  16. package/dist/ui/components/base/card.js +36 -19
  17. package/dist/ui/components/base/padded.d.ts +2 -4
  18. package/dist/ui/components/base/state_builder.d.ts +9 -0
  19. package/dist/ui/components/base/state_builder.js +33 -0
  20. package/dist/ui/components/button/button.d.ts +8 -6
  21. package/dist/ui/components/button/button.js +27 -16
  22. package/dist/ui/components/button/choose_button.d.ts +5 -3
  23. package/dist/ui/components/button/choose_button.js +9 -6
  24. package/dist/ui/components/button/icon_button.d.ts +6 -5
  25. package/dist/ui/components/button/icon_button.js +33 -23
  26. package/dist/ui/components/button/toggle_button.d.ts +5 -5
  27. package/dist/ui/components/button/toggle_button.js +13 -7
  28. package/dist/ui/components/dialog/dialog.d.ts +13 -0
  29. package/dist/ui/components/dialog/dialog.js +69 -0
  30. package/dist/ui/components/dialog/dialog_ctx.d.ts +34 -0
  31. package/dist/ui/components/dialog/dialog_ctx.js +44 -0
  32. package/dist/ui/components/dialog/dialogs/_alert.d.ts +7 -0
  33. package/dist/ui/components/dialog/dialogs/_alert.js +9 -0
  34. package/dist/ui/components/dialog/dialogs/_confirm.d.ts +9 -0
  35. package/dist/ui/components/dialog/dialogs/_confirm.js +21 -0
  36. package/dist/ui/components/error_view.js +3 -3
  37. package/dist/ui/components/footer.js +7 -7
  38. package/dist/ui/components/input/_labeled_input.d.ts +21 -0
  39. package/dist/ui/components/input/_labeled_input.js +21 -0
  40. package/dist/ui/components/input/checkbox.d.ts +4 -2
  41. package/dist/ui/components/input/checkbox.js +16 -8
  42. package/dist/ui/components/input/range.d.ts +5 -3
  43. package/dist/ui/components/input/range.js +20 -13
  44. package/dist/ui/components/input/select.d.ts +4 -3
  45. package/dist/ui/components/input/select.js +13 -40
  46. package/dist/ui/components/input/switch.d.ts +4 -2
  47. package/dist/ui/components/input/switch.js +30 -40
  48. package/dist/ui/components/input/text/input_field.d.ts +14 -19
  49. package/dist/ui/components/input/text/input_field.js +63 -61
  50. package/dist/ui/components/input/text/single_line.d.ts +11 -9
  51. package/dist/ui/components/input/text/single_line.js +15 -21
  52. package/dist/ui/components/layout/flex.d.ts +7 -3
  53. package/dist/ui/components/layout/flex.js +15 -12
  54. package/dist/ui/components/layout/header.d.ts +2 -2
  55. package/dist/ui/components/layout/header.js +25 -18
  56. package/dist/ui/components/layout/menu.js +74 -49
  57. package/dist/ui/components/layout/scroll.d.ts +1 -0
  58. package/dist/ui/components/layout/scroll.js +3 -1
  59. package/dist/ui/components/layout/toolbar.js +9 -6
  60. package/dist/ui/components/link.d.ts +4 -2
  61. package/dist/ui/components/link.js +24 -11
  62. package/dist/ui/components/progress_bar.d.ts +2 -2
  63. package/dist/ui/components/progress_bar.js +12 -9
  64. package/dist/ui/components/spinner.d.ts +2 -7
  65. package/dist/ui/components/spinner.js +15 -16
  66. package/dist/ui/components/text.d.ts +5 -6
  67. package/dist/ui/components/text.js +34 -21
  68. package/dist/ui/components/tooltip.d.ts +5 -0
  69. package/dist/ui/components/tooltip.js +48 -0
  70. package/dist/ui/theme/subthemes/_theme_geometry.d.ts +9 -0
  71. package/dist/ui/theme/subthemes/_theme_geometry.js +22 -0
  72. package/dist/ui/theme/subthemes/_theme_menu.d.ts +9 -0
  73. package/dist/ui/theme/subthemes/_theme_menu.js +12 -0
  74. package/dist/ui/theme/subthemes/_theme_motion.d.ts +9 -0
  75. package/dist/ui/theme/subthemes/_theme_motion.js +13 -0
  76. package/dist/ui/theme/subthemes/_theme_toast.d.ts +8 -0
  77. package/dist/ui/theme/subthemes/_theme_toast.js +11 -0
  78. package/dist/ui/theme/subthemes/_theme_type.d.ts +49 -0
  79. package/dist/ui/theme/subthemes/_theme_type.js +73 -0
  80. package/dist/ui/theme/subthemes/color/_seed.d.ts +2 -0
  81. package/dist/ui/theme/subthemes/color/_seed.js +105 -0
  82. package/dist/ui/theme/subthemes/color/_theme_color.d.ts +865 -0
  83. package/dist/ui/theme/subthemes/color/_theme_color.js +83 -0
  84. package/dist/ui/theme/subthemes/color/colors/_color_contrast.d.ts +284 -0
  85. package/dist/ui/theme/subthemes/color/colors/_color_contrast.js +17 -0
  86. package/dist/ui/theme/subthemes/color/colors/_color_kind.d.ts +242 -0
  87. package/dist/ui/theme/subthemes/color/colors/_color_kind.js +45 -0
  88. package/dist/ui/theme/subthemes/color/colors/_color_layer.d.ts +226 -0
  89. package/dist/ui/theme/subthemes/color/colors/_color_layer.js +95 -0
  90. package/dist/ui/theme/subthemes/color/colors/_color_manner.d.ts +280 -0
  91. package/dist/ui/theme/subthemes/color/colors/_color_manner.js +17 -0
  92. package/dist/ui/theme/subthemes/color/colors/_color_mode.d.ts +269 -0
  93. package/dist/ui/theme/subthemes/color/colors/_color_mode.js +16 -0
  94. package/dist/ui/theme/subthemes/color/colors/_color_rgba.d.ts +166 -0
  95. package/dist/ui/theme/subthemes/color/colors/_color_rgba.js +86 -0
  96. package/dist/ui/theme/subthemes/color/colors/_color_scheme.d.ts +256 -0
  97. package/dist/ui/theme/subthemes/color/colors/_color_scheme.js +17 -0
  98. package/dist/ui/theme/subthemes/color/colors/_color_state.d.ts +252 -0
  99. package/dist/ui/theme/subthemes/color/colors/_color_state.js +49 -0
  100. package/dist/ui/theme/subthemes/color/colors/_colordef.d.ts +22 -0
  101. package/dist/ui/theme/subthemes/color/colors/_colordef.js +34 -0
  102. package/dist/ui/theme/subthemes/color/colors/colors.d.ts +511 -0
  103. package/dist/ui/theme/subthemes/color/colors/colors.js +24 -0
  104. package/dist/ui/theme/theme.d.ts +984 -30
  105. package/dist/ui/theme/theme.js +14 -82
  106. package/dist/ui/theme/theme_context.d.ts +15 -17
  107. package/dist/ui/theme/theme_context.js +79 -18
  108. package/dist/ui/util/_util.d.ts +1 -0
  109. package/dist/ui/util/_util.js +3 -0
  110. package/dist/ui/util/error_view.js +3 -3
  111. package/dist/ui/util/merge_deep.d.ts +1 -0
  112. package/dist/ui/util/merge_deep.js +18 -0
  113. package/dist/ui/util/root.d.ts +17 -0
  114. package/dist/ui/util/root.js +23 -0
  115. package/dist/ui/util/toast/_toast.d.ts +5 -0
  116. package/dist/ui/util/toast/_toast.js +7 -0
  117. package/dist/ui/util/toast/toast_ctx.d.ts +28 -0
  118. package/dist/ui/util/toast/toast_ctx.js +62 -0
  119. package/dist/ui/util/toast/toast_legacy.d.ts +5 -0
  120. package/dist/ui/util/{toast.js → toast/toast_legacy.js} +4 -4
  121. package/dist/ui/util/util.d.ts +8 -0
  122. package/dist/ui/util/util.js +54 -1
  123. package/package.json +10 -8
  124. package/dist/ui/components/dialog.d.ts +0 -10
  125. package/dist/ui/components/dialog.js +0 -35
  126. package/dist/ui/components/layout/app_base.d.ts +0 -15
  127. package/dist/ui/components/layout/ctx_app_base.d.ts +0 -19
  128. package/dist/ui/components/layout/ctx_app_base.js +0 -12
  129. package/dist/ui/theme/color_theme.d.ts +0 -2
  130. package/dist/ui/theme/color_theme.js +0 -92
  131. package/dist/ui/theme/colors.d.ts +0 -133
  132. package/dist/ui/theme/colors.js +0 -309
  133. package/dist/ui/theme/geometry_theme.d.ts +0 -16
  134. package/dist/ui/theme/geometry_theme.js +0 -28
  135. package/dist/ui/theme/seed.d.ts +0 -53
  136. package/dist/ui/theme/seed.js +0 -4
  137. package/dist/ui/theme/type_theme.d.ts +0 -38
  138. package/dist/ui/theme/type_theme.js +0 -73
  139. package/dist/ui/util/confirm_dialog.d.ts +0 -10
  140. package/dist/ui/util/confirm_dialog.js +0 -46
  141. package/dist/ui/util/toast.d.ts +0 -5
@@ -0,0 +1,226 @@
1
+ import { RGBAColor } from "./_color_rgba";
2
+ import { ElbeColor } from "./_colordef";
3
+ import { HexColor } from "./colors";
4
+ export declare const LayerColor: {
5
+ is: (v: any) => v is ElbeColor<"layer", {
6
+ back: RGBAColor;
7
+ front: RGBAColor;
8
+ border: RGBAColor;
9
+ }, Omit<{
10
+ interLayer: (other: RGBAColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
11
+ interLayerLayer: (other: LayerColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
12
+ mirrorBrightnessLayer: (factor?: number, factorBack?: number, factorBorder?: number) => LayerColor;
13
+ desaturatedLayer: () => LayerColor;
14
+ withBack: (back: RGBAColor) => LayerColor;
15
+ withFront: (front: RGBAColor) => LayerColor;
16
+ withBorder: (border: RGBAColor) => LayerColor;
17
+ } & {
18
+ type: ["rgba", ...string[]];
19
+ } & {
20
+ red: number;
21
+ green: number;
22
+ blue: number;
23
+ alpha: number;
24
+ } & Omit<{
25
+ asCss: () => string;
26
+ hex: () => string;
27
+ isDark: () => boolean;
28
+ luminance: () => number;
29
+ desaturated: (f?: number) => ElbeColor<"rgba", {
30
+ red: number;
31
+ green: number;
32
+ blue: number;
33
+ alpha: number;
34
+ }, Omit</*elided*/ any, "type">>;
35
+ withAlpha: (alpha: number) => ElbeColor<"rgba", {
36
+ red: number;
37
+ green: number;
38
+ blue: number;
39
+ alpha: number;
40
+ }, Omit</*elided*/ any, "type">>;
41
+ inter: (other: RGBAColor, factor: number) => ElbeColor<"rgba", {
42
+ red: number;
43
+ green: number;
44
+ blue: number;
45
+ alpha: number;
46
+ }, Omit</*elided*/ any, "type">>;
47
+ mirrorBrightness: (factor?: number) => ElbeColor<"rgba", {
48
+ red: number;
49
+ green: number;
50
+ blue: number;
51
+ alpha: number;
52
+ }, Omit</*elided*/ any, "type">>;
53
+ hasWCAGContrast: (color: RGBAColor) => boolean;
54
+ contrastRatio: (color: RGBAColor) => number;
55
+ }, "type">, "type">>;
56
+ new: (data: {
57
+ back: RGBAColor;
58
+ front: RGBAColor;
59
+ border: RGBAColor;
60
+ }) => ElbeColor<"layer", {
61
+ back: RGBAColor;
62
+ front: RGBAColor;
63
+ border: RGBAColor;
64
+ }, Omit<{
65
+ interLayer: (other: RGBAColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
66
+ interLayerLayer: (other: LayerColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
67
+ mirrorBrightnessLayer: (factor?: number, factorBack?: number, factorBorder?: number) => LayerColor;
68
+ desaturatedLayer: () => LayerColor;
69
+ withBack: (back: RGBAColor) => LayerColor;
70
+ withFront: (front: RGBAColor) => LayerColor;
71
+ withBorder: (border: RGBAColor) => LayerColor;
72
+ } & {
73
+ type: ["rgba", ...string[]];
74
+ } & {
75
+ red: number;
76
+ green: number;
77
+ blue: number;
78
+ alpha: number;
79
+ } & Omit<{
80
+ asCss: () => string;
81
+ hex: () => string;
82
+ isDark: () => boolean;
83
+ luminance: () => number;
84
+ desaturated: (f?: number) => ElbeColor<"rgba", {
85
+ red: number;
86
+ green: number;
87
+ blue: number;
88
+ alpha: number;
89
+ }, Omit</*elided*/ any, "type">>;
90
+ withAlpha: (alpha: number) => ElbeColor<"rgba", {
91
+ red: number;
92
+ green: number;
93
+ blue: number;
94
+ alpha: number;
95
+ }, Omit</*elided*/ any, "type">>;
96
+ inter: (other: RGBAColor, factor: number) => ElbeColor<"rgba", {
97
+ red: number;
98
+ green: number;
99
+ blue: number;
100
+ alpha: number;
101
+ }, Omit</*elided*/ any, "type">>;
102
+ mirrorBrightness: (factor?: number) => ElbeColor<"rgba", {
103
+ red: number;
104
+ green: number;
105
+ blue: number;
106
+ alpha: number;
107
+ }, Omit</*elided*/ any, "type">>;
108
+ hasWCAGContrast: (color: RGBAColor) => boolean;
109
+ contrastRatio: (color: RGBAColor) => number;
110
+ }, "type">, "type">>;
111
+ _typeHint: {
112
+ color: ElbeColor<"layer", {
113
+ back: RGBAColor;
114
+ front: RGBAColor;
115
+ border: RGBAColor;
116
+ }, Omit<{
117
+ interLayer: (other: RGBAColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
118
+ interLayerLayer: (other: LayerColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
119
+ mirrorBrightnessLayer: (factor?: number, factorBack?: number, factorBorder?: number) => LayerColor;
120
+ desaturatedLayer: () => LayerColor;
121
+ withBack: (back: RGBAColor) => LayerColor;
122
+ withFront: (front: RGBAColor) => LayerColor;
123
+ withBorder: (border: RGBAColor) => LayerColor;
124
+ } & {
125
+ type: ["rgba", ...string[]];
126
+ } & {
127
+ red: number;
128
+ green: number;
129
+ blue: number;
130
+ alpha: number;
131
+ } & Omit<{
132
+ asCss: () => string;
133
+ hex: () => string;
134
+ isDark: () => boolean;
135
+ luminance: () => number;
136
+ desaturated: (f?: number) => ElbeColor<"rgba", {
137
+ red: number;
138
+ green: number;
139
+ blue: number;
140
+ alpha: number;
141
+ }, Omit</*elided*/ any, "type">>;
142
+ withAlpha: (alpha: number) => ElbeColor<"rgba", {
143
+ red: number;
144
+ green: number;
145
+ blue: number;
146
+ alpha: number;
147
+ }, Omit</*elided*/ any, "type">>;
148
+ inter: (other: RGBAColor, factor: number) => ElbeColor<"rgba", {
149
+ red: number;
150
+ green: number;
151
+ blue: number;
152
+ alpha: number;
153
+ }, Omit</*elided*/ any, "type">>;
154
+ mirrorBrightness: (factor?: number) => ElbeColor<"rgba", {
155
+ red: number;
156
+ green: number;
157
+ blue: number;
158
+ alpha: number;
159
+ }, Omit</*elided*/ any, "type">>;
160
+ hasWCAGContrast: (color: RGBAColor) => boolean;
161
+ contrastRatio: (color: RGBAColor) => number;
162
+ }, "type">, "type">>;
163
+ data: {
164
+ back: RGBAColor;
165
+ front: RGBAColor;
166
+ border: RGBAColor;
167
+ };
168
+ };
169
+ } & {
170
+ asLayer: (v: any) => LayerColor;
171
+ fromBack: (back: RGBAColor | HexColor | ElbeColor<"layer", any, {}>, c?: {
172
+ front?: RGBAColor;
173
+ border?: RGBAColor;
174
+ }) => ElbeColor<"layer", {
175
+ back: RGBAColor;
176
+ front: RGBAColor;
177
+ border: RGBAColor;
178
+ }, Omit<{
179
+ interLayer: (other: RGBAColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
180
+ interLayerLayer: (other: LayerColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
181
+ mirrorBrightnessLayer: (factor?: number, factorBack?: number, factorBorder?: number) => LayerColor;
182
+ desaturatedLayer: () => LayerColor;
183
+ withBack: (back: RGBAColor) => LayerColor;
184
+ withFront: (front: RGBAColor) => LayerColor;
185
+ withBorder: (border: RGBAColor) => LayerColor;
186
+ } & {
187
+ type: ["rgba", ...string[]];
188
+ } & {
189
+ red: number;
190
+ green: number;
191
+ blue: number;
192
+ alpha: number;
193
+ } & Omit<{
194
+ asCss: () => string;
195
+ hex: () => string;
196
+ isDark: () => boolean;
197
+ luminance: () => number;
198
+ desaturated: (f?: number) => ElbeColor<"rgba", {
199
+ red: number;
200
+ green: number;
201
+ blue: number;
202
+ alpha: number;
203
+ }, Omit</*elided*/ any, "type">>;
204
+ withAlpha: (alpha: number) => ElbeColor<"rgba", {
205
+ red: number;
206
+ green: number;
207
+ blue: number;
208
+ alpha: number;
209
+ }, Omit</*elided*/ any, "type">>;
210
+ inter: (other: RGBAColor, factor: number) => ElbeColor<"rgba", {
211
+ red: number;
212
+ green: number;
213
+ blue: number;
214
+ alpha: number;
215
+ }, Omit</*elided*/ any, "type">>;
216
+ mirrorBrightness: (factor?: number) => ElbeColor<"rgba", {
217
+ red: number;
218
+ green: number;
219
+ blue: number;
220
+ alpha: number;
221
+ }, Omit</*elided*/ any, "type">>;
222
+ hasWCAGContrast: (color: RGBAColor) => boolean;
223
+ contrastRatio: (color: RGBAColor) => number;
224
+ }, "type">, "type">>;
225
+ };
226
+ export type LayerColor = (typeof LayerColor)["_typeHint"]["color"];
@@ -0,0 +1,95 @@
1
+ import { RGBAColor } from "./_color_rgba";
2
+ import { defineColor } from "./_colordef";
3
+ import { colors } from "./colors";
4
+ export const LayerColor = defineColor({
5
+ type: "layer",
6
+ static: {
7
+ asLayer: (v) => {
8
+ if (LayerColor.is(v)) {
9
+ return v;
10
+ }
11
+ else if (typeof v === "string") {
12
+ return LayerColor.fromBack(RGBAColor.fromHex(v));
13
+ }
14
+ else {
15
+ throw new Error("Cannot convert to LayerColor");
16
+ }
17
+ },
18
+ fromBack: (back, c) => {
19
+ var _a, _b;
20
+ if (LayerColor.is(back))
21
+ return back;
22
+ const backColor = typeof back === "string" ? RGBAColor.fromHex(back) : back;
23
+ const front = backColor.isDark() ? colors.white : colors.black;
24
+ return LayerColor.new({
25
+ back: backColor,
26
+ front: (_a = c === null || c === void 0 ? void 0 : c.front) !== null && _a !== void 0 ? _a : front,
27
+ border: (_b = c === null || c === void 0 ? void 0 : c.border) !== null && _b !== void 0 ? _b : front,
28
+ });
29
+ },
30
+ },
31
+ parent: (data) => data.back,
32
+ compute: (data) => {
33
+ function interLayerLayer(other, factor, factorFront, factorBorder) {
34
+ var _a;
35
+ return LayerColor.new({
36
+ back: data.back.inter(other.back, factor),
37
+ front: data.front.inter(other.front, factorFront !== null && factorFront !== void 0 ? factorFront : factor),
38
+ border: data.border.inter((_a = other.border) !== null && _a !== void 0 ? _a : colors.transparent, factorBorder !== null && factorBorder !== void 0 ? factorBorder : factor),
39
+ });
40
+ }
41
+ function interLayer(other, factor, factorFront, factorBorder) {
42
+ return LayerColor.new({
43
+ back: data.back.inter(other, factor),
44
+ front: data.front.inter(other, factorFront !== null && factorFront !== void 0 ? factorFront : factor),
45
+ border: data.border.inter(other !== null && other !== void 0 ? other : colors.transparent, factorBorder !== null && factorBorder !== void 0 ? factorBorder : factor),
46
+ });
47
+ }
48
+ function mirrorBrightnessLayer(factor, factorBack, factorBorder) {
49
+ var _a;
50
+ return LayerColor.new({
51
+ back: data.back.mirrorBrightness(factorBack !== null && factorBack !== void 0 ? factorBack : factor),
52
+ front: data.front.mirrorBrightness(factor),
53
+ border: (_a = data.border) === null || _a === void 0 ? void 0 : _a.mirrorBrightness(factorBorder !== null && factorBorder !== void 0 ? factorBorder : factor),
54
+ });
55
+ }
56
+ function desaturatedLayer() {
57
+ var _a;
58
+ return LayerColor.new({
59
+ back: data.back.desaturated(),
60
+ front: data.front.desaturated(),
61
+ border: (_a = data.border) === null || _a === void 0 ? void 0 : _a.desaturated(),
62
+ });
63
+ }
64
+ function withBack(back) {
65
+ return LayerColor.new({
66
+ back,
67
+ front: data.front,
68
+ border: data.border,
69
+ });
70
+ }
71
+ function withFront(front) {
72
+ return LayerColor.new({
73
+ back: data.back,
74
+ front,
75
+ border: data.border,
76
+ });
77
+ }
78
+ function withBorder(border) {
79
+ return LayerColor.new({
80
+ back: data.back,
81
+ front: data.front,
82
+ border,
83
+ });
84
+ }
85
+ return {
86
+ interLayer,
87
+ interLayerLayer,
88
+ mirrorBrightnessLayer,
89
+ desaturatedLayer,
90
+ withBack,
91
+ withFront,
92
+ withBorder,
93
+ };
94
+ },
95
+ });
@@ -0,0 +1,280 @@
1
+ import { LayerColor } from "./_color_layer";
2
+ import { StateColor } from "./_color_state";
3
+ import { ColorThemeSeed } from "./colors";
4
+ export declare const MannerColor: {
5
+ is: (v: any) => v is import("./_colordef").ElbeColor<"manner", {
6
+ major: StateColor;
7
+ minor: StateColor;
8
+ flat: StateColor;
9
+ plain: StateColor;
10
+ }, Omit<{
11
+ type: ["state", ...string[]];
12
+ } & {
13
+ neutral: LayerColor;
14
+ hover: LayerColor;
15
+ active: LayerColor;
16
+ disabled: LayerColor;
17
+ } & Omit<{
18
+ type: ["layer", ...string[]];
19
+ } & {
20
+ back: import("./_color_rgba").RGBAColor;
21
+ front: import("./_color_rgba").RGBAColor;
22
+ border: import("./_color_rgba").RGBAColor;
23
+ } & Omit<{
24
+ interLayer: (other: import("./_color_rgba").RGBAColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
25
+ interLayerLayer: (other: LayerColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
26
+ mirrorBrightnessLayer: (factor?: number, factorBack?: number, factorBorder?: number) => LayerColor;
27
+ desaturatedLayer: () => LayerColor;
28
+ withBack: (back: import("./_color_rgba").RGBAColor) => LayerColor;
29
+ withFront: (front: import("./_color_rgba").RGBAColor) => LayerColor;
30
+ withBorder: (border: import("./_color_rgba").RGBAColor) => LayerColor;
31
+ } & {
32
+ type: ["rgba", ...string[]];
33
+ } & {
34
+ red: number;
35
+ green: number;
36
+ blue: number;
37
+ alpha: number;
38
+ } & Omit<{
39
+ asCss: () => string;
40
+ hex: () => string;
41
+ isDark: () => boolean;
42
+ luminance: () => number;
43
+ desaturated: (f?: number) => import("./_colordef").ElbeColor<"rgba", {
44
+ red: number;
45
+ green: number;
46
+ blue: number;
47
+ alpha: number;
48
+ }, Omit</*elided*/ any, "type">>;
49
+ withAlpha: (alpha: number) => import("./_colordef").ElbeColor<"rgba", {
50
+ red: number;
51
+ green: number;
52
+ blue: number;
53
+ alpha: number;
54
+ }, Omit</*elided*/ any, "type">>;
55
+ inter: (other: import("./_color_rgba").RGBAColor, factor: number) => import("./_colordef").ElbeColor<"rgba", {
56
+ red: number;
57
+ green: number;
58
+ blue: number;
59
+ alpha: number;
60
+ }, Omit</*elided*/ any, "type">>;
61
+ mirrorBrightness: (factor?: number) => import("./_colordef").ElbeColor<"rgba", {
62
+ red: number;
63
+ green: number;
64
+ blue: number;
65
+ alpha: number;
66
+ }, Omit</*elided*/ any, "type">>;
67
+ hasWCAGContrast: (color: import("./_color_rgba").RGBAColor) => boolean;
68
+ contrastRatio: (color: import("./_color_rgba").RGBAColor) => number;
69
+ }, "type">, "type">, "type">, "type">>;
70
+ new: (data: {
71
+ major: StateColor;
72
+ minor: StateColor;
73
+ flat: StateColor;
74
+ plain: StateColor;
75
+ }) => import("./_colordef").ElbeColor<"manner", {
76
+ major: StateColor;
77
+ minor: StateColor;
78
+ flat: StateColor;
79
+ plain: StateColor;
80
+ }, Omit<{
81
+ type: ["state", ...string[]];
82
+ } & {
83
+ neutral: LayerColor;
84
+ hover: LayerColor;
85
+ active: LayerColor;
86
+ disabled: LayerColor;
87
+ } & Omit<{
88
+ type: ["layer", ...string[]];
89
+ } & {
90
+ back: import("./_color_rgba").RGBAColor;
91
+ front: import("./_color_rgba").RGBAColor;
92
+ border: import("./_color_rgba").RGBAColor;
93
+ } & Omit<{
94
+ interLayer: (other: import("./_color_rgba").RGBAColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
95
+ interLayerLayer: (other: LayerColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
96
+ mirrorBrightnessLayer: (factor?: number, factorBack?: number, factorBorder?: number) => LayerColor;
97
+ desaturatedLayer: () => LayerColor;
98
+ withBack: (back: import("./_color_rgba").RGBAColor) => LayerColor;
99
+ withFront: (front: import("./_color_rgba").RGBAColor) => LayerColor;
100
+ withBorder: (border: import("./_color_rgba").RGBAColor) => LayerColor;
101
+ } & {
102
+ type: ["rgba", ...string[]];
103
+ } & {
104
+ red: number;
105
+ green: number;
106
+ blue: number;
107
+ alpha: number;
108
+ } & Omit<{
109
+ asCss: () => string;
110
+ hex: () => string;
111
+ isDark: () => boolean;
112
+ luminance: () => number;
113
+ desaturated: (f?: number) => import("./_colordef").ElbeColor<"rgba", {
114
+ red: number;
115
+ green: number;
116
+ blue: number;
117
+ alpha: number;
118
+ }, Omit</*elided*/ any, "type">>;
119
+ withAlpha: (alpha: number) => import("./_colordef").ElbeColor<"rgba", {
120
+ red: number;
121
+ green: number;
122
+ blue: number;
123
+ alpha: number;
124
+ }, Omit</*elided*/ any, "type">>;
125
+ inter: (other: import("./_color_rgba").RGBAColor, factor: number) => import("./_colordef").ElbeColor<"rgba", {
126
+ red: number;
127
+ green: number;
128
+ blue: number;
129
+ alpha: number;
130
+ }, Omit</*elided*/ any, "type">>;
131
+ mirrorBrightness: (factor?: number) => import("./_colordef").ElbeColor<"rgba", {
132
+ red: number;
133
+ green: number;
134
+ blue: number;
135
+ alpha: number;
136
+ }, Omit</*elided*/ any, "type">>;
137
+ hasWCAGContrast: (color: import("./_color_rgba").RGBAColor) => boolean;
138
+ contrastRatio: (color: import("./_color_rgba").RGBAColor) => number;
139
+ }, "type">, "type">, "type">, "type">>;
140
+ _typeHint: {
141
+ color: import("./_colordef").ElbeColor<"manner", {
142
+ major: StateColor;
143
+ minor: StateColor;
144
+ flat: StateColor;
145
+ plain: StateColor;
146
+ }, Omit<{
147
+ type: ["state", ...string[]];
148
+ } & {
149
+ neutral: LayerColor;
150
+ hover: LayerColor;
151
+ active: LayerColor;
152
+ disabled: LayerColor;
153
+ } & Omit<{
154
+ type: ["layer", ...string[]];
155
+ } & {
156
+ back: import("./_color_rgba").RGBAColor;
157
+ front: import("./_color_rgba").RGBAColor;
158
+ border: import("./_color_rgba").RGBAColor;
159
+ } & Omit<{
160
+ interLayer: (other: import("./_color_rgba").RGBAColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
161
+ interLayerLayer: (other: LayerColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
162
+ mirrorBrightnessLayer: (factor?: number, factorBack?: number, factorBorder?: number) => LayerColor;
163
+ desaturatedLayer: () => LayerColor;
164
+ withBack: (back: import("./_color_rgba").RGBAColor) => LayerColor;
165
+ withFront: (front: import("./_color_rgba").RGBAColor) => LayerColor;
166
+ withBorder: (border: import("./_color_rgba").RGBAColor) => LayerColor;
167
+ } & {
168
+ type: ["rgba", ...string[]];
169
+ } & {
170
+ red: number;
171
+ green: number;
172
+ blue: number;
173
+ alpha: number;
174
+ } & Omit<{
175
+ asCss: () => string;
176
+ hex: () => string;
177
+ isDark: () => boolean;
178
+ luminance: () => number;
179
+ desaturated: (f?: number) => import("./_colordef").ElbeColor<"rgba", {
180
+ red: number;
181
+ green: number;
182
+ blue: number;
183
+ alpha: number;
184
+ }, Omit</*elided*/ any, "type">>;
185
+ withAlpha: (alpha: number) => import("./_colordef").ElbeColor<"rgba", {
186
+ red: number;
187
+ green: number;
188
+ blue: number;
189
+ alpha: number;
190
+ }, Omit</*elided*/ any, "type">>;
191
+ inter: (other: import("./_color_rgba").RGBAColor, factor: number) => import("./_colordef").ElbeColor<"rgba", {
192
+ red: number;
193
+ green: number;
194
+ blue: number;
195
+ alpha: number;
196
+ }, Omit</*elided*/ any, "type">>;
197
+ mirrorBrightness: (factor?: number) => import("./_colordef").ElbeColor<"rgba", {
198
+ red: number;
199
+ green: number;
200
+ blue: number;
201
+ alpha: number;
202
+ }, Omit</*elided*/ any, "type">>;
203
+ hasWCAGContrast: (color: import("./_color_rgba").RGBAColor) => boolean;
204
+ contrastRatio: (color: import("./_color_rgba").RGBAColor) => number;
205
+ }, "type">, "type">, "type">, "type">>;
206
+ data: {
207
+ major: StateColor;
208
+ minor: StateColor;
209
+ flat: StateColor;
210
+ plain: StateColor;
211
+ };
212
+ };
213
+ } & {
214
+ generate(path: string[], seed: ColorThemeSeed, base: LayerColor, style: LayerColor): import("./_colordef").ElbeColor<"manner", {
215
+ major: StateColor;
216
+ minor: StateColor;
217
+ flat: StateColor;
218
+ plain: StateColor;
219
+ }, Omit<{
220
+ type: ["state", ...string[]];
221
+ } & {
222
+ neutral: LayerColor;
223
+ hover: LayerColor;
224
+ active: LayerColor;
225
+ disabled: LayerColor;
226
+ } & Omit<{
227
+ type: ["layer", ...string[]];
228
+ } & {
229
+ back: import("./_color_rgba").RGBAColor;
230
+ front: import("./_color_rgba").RGBAColor;
231
+ border: import("./_color_rgba").RGBAColor;
232
+ } & Omit<{
233
+ interLayer: (other: import("./_color_rgba").RGBAColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
234
+ interLayerLayer: (other: LayerColor, factor: number, factorFront?: number, factorBorder?: number) => LayerColor;
235
+ mirrorBrightnessLayer: (factor?: number, factorBack?: number, factorBorder?: number) => LayerColor;
236
+ desaturatedLayer: () => LayerColor;
237
+ withBack: (back: import("./_color_rgba").RGBAColor) => LayerColor;
238
+ withFront: (front: import("./_color_rgba").RGBAColor) => LayerColor;
239
+ withBorder: (border: import("./_color_rgba").RGBAColor) => LayerColor;
240
+ } & {
241
+ type: ["rgba", ...string[]];
242
+ } & {
243
+ red: number;
244
+ green: number;
245
+ blue: number;
246
+ alpha: number;
247
+ } & Omit<{
248
+ asCss: () => string;
249
+ hex: () => string;
250
+ isDark: () => boolean;
251
+ luminance: () => number;
252
+ desaturated: (f?: number) => import("./_colordef").ElbeColor<"rgba", {
253
+ red: number;
254
+ green: number;
255
+ blue: number;
256
+ alpha: number;
257
+ }, Omit</*elided*/ any, "type">>;
258
+ withAlpha: (alpha: number) => import("./_colordef").ElbeColor<"rgba", {
259
+ red: number;
260
+ green: number;
261
+ blue: number;
262
+ alpha: number;
263
+ }, Omit</*elided*/ any, "type">>;
264
+ inter: (other: import("./_color_rgba").RGBAColor, factor: number) => import("./_colordef").ElbeColor<"rgba", {
265
+ red: number;
266
+ green: number;
267
+ blue: number;
268
+ alpha: number;
269
+ }, Omit</*elided*/ any, "type">>;
270
+ mirrorBrightness: (factor?: number) => import("./_colordef").ElbeColor<"rgba", {
271
+ red: number;
272
+ green: number;
273
+ blue: number;
274
+ alpha: number;
275
+ }, Omit</*elided*/ any, "type">>;
276
+ hasWCAGContrast: (color: import("./_color_rgba").RGBAColor) => boolean;
277
+ contrastRatio: (color: import("./_color_rgba").RGBAColor) => number;
278
+ }, "type">, "type">, "type">, "type">>;
279
+ };
280
+ export type MannerColor = (typeof MannerColor)["_typeHint"]["color"];
@@ -0,0 +1,17 @@
1
+ import { StateColor } from "./_color_state";
2
+ import { defineColor } from "./_colordef";
3
+ export const MannerColor = defineColor({
4
+ type: "manner",
5
+ static: {
6
+ generate(path, seed, base, style) {
7
+ return MannerColor.new({
8
+ major: StateColor.generate([...path, "major"], seed, base, seed.manner.major({ path, seed, base, style })),
9
+ minor: StateColor.generate([...path, "minor"], seed, base, seed.manner.minor({ path, seed, base, style })),
10
+ flat: StateColor.generate([...path, "flat"], seed, base, seed.manner.flat({ path, seed, base, style }), true),
11
+ plain: StateColor.generate([...path, "plain"], seed, base, base, true),
12
+ });
13
+ },
14
+ },
15
+ parent: (p) => p.flat,
16
+ compute: (_) => ({}),
17
+ });