@getcortexlabs/mavis-web 0.0.0-stage → 0.1.0-alpha.2

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 (72) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +25 -2
  3. package/dist/appearance.d.ts +4 -0
  4. package/dist/appearance.d.ts.map +1 -0
  5. package/dist/appearance.js +23 -0
  6. package/dist/appearance.js.map +1 -0
  7. package/dist/components/MButton.d.ts +120 -0
  8. package/dist/components/MButton.d.ts.map +1 -0
  9. package/dist/components/MButton.js +86 -0
  10. package/dist/components/MButton.js.map +1 -0
  11. package/dist/components/MCard.d.ts +127 -0
  12. package/dist/components/MCard.d.ts.map +1 -0
  13. package/dist/components/MCard.js +51 -0
  14. package/dist/components/MCard.js.map +1 -0
  15. package/dist/components/MIcon.d.ts +55 -0
  16. package/dist/components/MIcon.d.ts.map +1 -0
  17. package/dist/components/MIcon.js +31 -0
  18. package/dist/components/MIcon.js.map +1 -0
  19. package/dist/components/MInput.d.ts +193 -0
  20. package/dist/components/MInput.d.ts.map +1 -0
  21. package/dist/components/MInput.js +204 -0
  22. package/dist/components/MInput.js.map +1 -0
  23. package/dist/components/MReveal.d.ts +145 -0
  24. package/dist/components/MReveal.d.ts.map +1 -0
  25. package/dist/components/MReveal.js +40 -0
  26. package/dist/components/MReveal.js.map +1 -0
  27. package/dist/components/MScreen.d.ts +37 -0
  28. package/dist/components/MScreen.d.ts.map +1 -0
  29. package/dist/components/MScreen.js +32 -0
  30. package/dist/components/MScreen.js.map +1 -0
  31. package/dist/components/MSlider.d.ts +76 -0
  32. package/dist/components/MSlider.d.ts.map +1 -0
  33. package/dist/components/MSlider.js +54 -0
  34. package/dist/components/MSlider.js.map +1 -0
  35. package/dist/components/MText.d.ts +114 -0
  36. package/dist/components/MText.d.ts.map +1 -0
  37. package/dist/components/MText.js +33 -0
  38. package/dist/components/MText.js.map +1 -0
  39. package/dist/components/layout.d.ts +391 -0
  40. package/dist/components/layout.d.ts.map +1 -0
  41. package/dist/components/layout.js +56 -0
  42. package/dist/components/layout.js.map +1 -0
  43. package/dist/index.d.ts +22 -0
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +40 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/screen-viewport.d.ts +2 -0
  48. package/dist/screen-viewport.d.ts.map +1 -0
  49. package/dist/screen-viewport.js +87 -0
  50. package/dist/screen-viewport.js.map +1 -0
  51. package/dist/style.d.ts +13 -0
  52. package/dist/style.d.ts.map +1 -0
  53. package/dist/style.js +33 -0
  54. package/dist/style.js.map +1 -0
  55. package/package.json +54 -4
  56. package/src/appearance.ts +23 -0
  57. package/src/components/MButton.ts +111 -0
  58. package/src/components/MCard.ts +56 -0
  59. package/src/components/MIcon.ts +39 -0
  60. package/src/components/MInput.ts +241 -0
  61. package/src/components/MReveal.ts +43 -0
  62. package/src/components/MScreen.ts +45 -0
  63. package/src/components/MSlider.ts +59 -0
  64. package/src/components/MText.ts +46 -0
  65. package/src/components/layout.ts +84 -0
  66. package/src/fonts/LICENSE +45 -0
  67. package/src/fonts/lucide.woff2 +0 -0
  68. package/src/index.ts +55 -0
  69. package/src/screen-viewport.ts +80 -0
  70. package/src/style.css +156 -0
  71. package/src/style.d.ts +2 -0
  72. package/src/style.ts +43 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Rafael Augusto
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,3 +1,26 @@
1
- # Temporary Holding Version
1
+ # Mavis for Vue Web
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ Vue Web implementation of the eleven Mavis components, version `0.1.0-alpha.2`. Experimental prerelease for testing in real apps; the API can change between alpha versions. Licensed under MIT.
4
+
5
+ In an existing Vue application:
6
+
7
+ ```sh
8
+ npm install @getcortexlabs/mavis-web@0.1.0-alpha.2
9
+ ```
10
+
11
+ ```ts
12
+ import { createApp } from 'vue'
13
+ import { createMavis } from '@getcortexlabs/mavis-web'
14
+ import '@getcortexlabs/mavis-web/style.css'
15
+ import App from './App.vue'
16
+
17
+ createApp(App).use(createMavis()).mount('#app')
18
+ ```
19
+
20
+ The stylesheet supplies focus indicators, box overlays, and motion. The plugin registers Screen, Row, Column, Box, Card, Text, Icon, Button, Input, Slider and Reveal; Vue also accepts their `m-*` spellings.
21
+
22
+ Themes and Vue context come from `@getcortexlabs/mavis-core`. NativeScript and Jolt are not dependencies of this package. Browser motion currently uses CSS; [Jolt #236](https://github.com/rafaelaugustos/jolt/issues/236) tracks its Web backend.
23
+
24
+ Use `MText.as` for HTML heading semantics. Buttons emit a payload-free `click` and retain native HTML keyboard activation. Sliders expose semantic values to accessibility APIs, including fractional steps. Theme state belongs to each app. The package is safe to import during server rendering.
25
+
26
+ Tested with Vue 3.5.42, Vite 6.4.5, TypeScript 6.0.3 and vue-tsc 3.3.13. See the [Web guide](https://mavis-ui.getcortexlabs.com/guide/web) for setup and portability limits, and the [release notes](https://github.com/getcortexlabs/mavis-ui/blob/main/CHANGELOG.md) for the alpha boundary.
@@ -0,0 +1,4 @@
1
+ import type { AppearanceSource } from '@getcortexlabs/mavis-core/vue';
2
+ /** `prefers-color-scheme`, read only when called so server builds never touch `window`. */
3
+ export declare function systemAppearance(): AppearanceSource;
4
+ //# sourceMappingURL=appearance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appearance.d.ts","sourceRoot":"","sources":["../src/appearance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAOrE,2FAA2F;AAC3F,wBAAgB,gBAAgB,IAAI,gBAAgB,CAcnD"}
@@ -0,0 +1,23 @@
1
+ function query() {
2
+ if (typeof window === 'undefined' || typeof window.matchMedia !== 'function')
3
+ return undefined;
4
+ return window.matchMedia('(prefers-color-scheme: dark)');
5
+ }
6
+ /** `prefers-color-scheme`, read only when called so server builds never touch `window`. */
7
+ export function systemAppearance() {
8
+ return {
9
+ current() {
10
+ const media = query();
11
+ return media ? (media.matches ? 'dark' : 'light') : undefined;
12
+ },
13
+ observe(listener) {
14
+ const media = query();
15
+ if (!media)
16
+ return () => { };
17
+ const handler = (event) => listener(event.matches ? 'dark' : 'light');
18
+ media.addEventListener('change', handler);
19
+ return () => media.removeEventListener('change', handler);
20
+ },
21
+ };
22
+ }
23
+ //# sourceMappingURL=appearance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appearance.js","sourceRoot":"","sources":["../src/appearance.ts"],"names":[],"mappings":"AAEA,SAAS,KAAK;IACZ,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,UAAU;QAAE,OAAO,SAAS,CAAA;IAC9F,OAAO,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAA;AAC1D,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,OAAO;YACL,MAAM,KAAK,GAAG,KAAK,EAAE,CAAA;YACrB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAC/D,CAAC;QACD,OAAO,CAAC,QAAQ;YACd,MAAM,KAAK,GAAG,KAAK,EAAE,CAAA;YACrB,IAAI,CAAC,KAAK;gBAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAA;YAC3B,MAAM,OAAO,GAAG,CAAC,KAA0B,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YAC1F,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YACzC,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAC3D,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,120 @@
1
+ export declare const MButton: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ text: {
3
+ type: StringConstructor;
4
+ default: undefined;
5
+ };
6
+ variant: {
7
+ type: import("vue").PropType<"ghost" | "primary" | "secondary">;
8
+ default: "ghost" | "primary" | "secondary";
9
+ validator: (value: "ghost" | "primary" | "secondary") => boolean;
10
+ };
11
+ size: {
12
+ type: import("vue").PropType<"sm" | "md" | "lg">;
13
+ default: "sm" | "md" | "lg";
14
+ validator: (value: "sm" | "md" | "lg") => boolean;
15
+ };
16
+ disabled: BooleanConstructor;
17
+ loading: BooleanConstructor;
18
+ loadingText: {
19
+ type: StringConstructor;
20
+ default: string;
21
+ };
22
+ icon: {
23
+ type: import("vue").PropType<import("@getcortexlabs/mavis-core").IconName>;
24
+ default: undefined;
25
+ };
26
+ trailingIcon: {
27
+ type: import("vue").PropType<import("@getcortexlabs/mavis-core").IconName>;
28
+ default: undefined;
29
+ };
30
+ grow: {
31
+ type: NumberConstructor;
32
+ default: number;
33
+ };
34
+ shrink: {
35
+ type: NumberConstructor;
36
+ default: undefined;
37
+ };
38
+ id: {
39
+ type: StringConstructor;
40
+ default: undefined;
41
+ };
42
+ accessibilityLabel: {
43
+ type: StringConstructor;
44
+ default: undefined;
45
+ };
46
+ accessibilityHidden: {
47
+ type: BooleanConstructor;
48
+ default: undefined;
49
+ };
50
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
51
+ [key: string]: any;
52
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
53
+ click: () => boolean;
54
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
55
+ text: {
56
+ type: StringConstructor;
57
+ default: undefined;
58
+ };
59
+ variant: {
60
+ type: import("vue").PropType<"ghost" | "primary" | "secondary">;
61
+ default: "ghost" | "primary" | "secondary";
62
+ validator: (value: "ghost" | "primary" | "secondary") => boolean;
63
+ };
64
+ size: {
65
+ type: import("vue").PropType<"sm" | "md" | "lg">;
66
+ default: "sm" | "md" | "lg";
67
+ validator: (value: "sm" | "md" | "lg") => boolean;
68
+ };
69
+ disabled: BooleanConstructor;
70
+ loading: BooleanConstructor;
71
+ loadingText: {
72
+ type: StringConstructor;
73
+ default: string;
74
+ };
75
+ icon: {
76
+ type: import("vue").PropType<import("@getcortexlabs/mavis-core").IconName>;
77
+ default: undefined;
78
+ };
79
+ trailingIcon: {
80
+ type: import("vue").PropType<import("@getcortexlabs/mavis-core").IconName>;
81
+ default: undefined;
82
+ };
83
+ grow: {
84
+ type: NumberConstructor;
85
+ default: number;
86
+ };
87
+ shrink: {
88
+ type: NumberConstructor;
89
+ default: undefined;
90
+ };
91
+ id: {
92
+ type: StringConstructor;
93
+ default: undefined;
94
+ };
95
+ accessibilityLabel: {
96
+ type: StringConstructor;
97
+ default: undefined;
98
+ };
99
+ accessibilityHidden: {
100
+ type: BooleanConstructor;
101
+ default: undefined;
102
+ };
103
+ }>> & Readonly<{
104
+ onClick?: (() => any) | undefined;
105
+ }>, {
106
+ grow: number;
107
+ shrink: number;
108
+ id: string;
109
+ accessibilityLabel: string;
110
+ accessibilityHidden: boolean;
111
+ size: "sm" | "md" | "lg";
112
+ text: string;
113
+ disabled: boolean;
114
+ variant: "primary" | "ghost" | "secondary";
115
+ loading: boolean;
116
+ loadingText: string;
117
+ icon: "radius" | "shrink" | "type" | "wheat" | "scroll" | "command" | "copy" | "focus" | "pause" | "play" | "slice" | "map" | "code" | "form" | "link" | "menu" | "option" | "search" | "section" | "summary" | "table" | "video" | "delete" | "watch" | "replace" | "split" | "repeat" | "anchor" | "key" | "ghost" | "a-arrow-down" | "a-arrow-up" | "a-large-small" | "accessibility" | "activity" | "ad" | "air-vent" | "airplay" | "alarm-clock" | "alarm-clock-check" | "alarm-clock-minus" | "alarm-clock-off" | "alarm-clock-plus" | "alarm-smoke" | "align-center-horizontal" | "align-center-vertical" | "align-end-horizontal" | "align-end-vertical" | "align-horizontal-distribute-center" | "align-horizontal-distribute-end" | "align-horizontal-distribute-start" | "align-horizontal-justify-center" | "align-horizontal-justify-end" | "align-horizontal-justify-start" | "align-horizontal-space-around" | "align-horizontal-space-between" | "align-start-horizontal" | "align-start-vertical" | "align-vertical-distribute-center" | "align-vertical-distribute-end" | "align-vertical-distribute-start" | "align-vertical-justify-center" | "align-vertical-justify-end" | "align-vertical-justify-start" | "align-vertical-space-around" | "align-vertical-space-between" | "ambulance" | "ampersand" | "ampersands" | "amphora" | "angle" | "antenna" | "anvil" | "aperture" | "app-window" | "app-window-mac" | "apple" | "archive" | "archive-arrow-down" | "archive-arrow-up" | "archive-x" | "armchair" | "armenian-dram" | "arrow-big-down" | "arrow-big-down-dash" | "arrow-big-left" | "arrow-big-left-dash" | "arrow-big-right" | "arrow-big-right-dash" | "arrow-big-up" | "arrow-big-up-dash" | "arrow-down" | "arrow-down-0-1" | "arrow-down-1-0" | "arrow-down-a-z" | "arrow-down-from-line" | "arrow-down-left" | "arrow-down-narrow-wide" | "arrow-down-right" | "arrow-down-to-dot" | "arrow-down-to-line" | "arrow-down-up" | "arrow-down-wide-narrow" | "arrow-down-z-a" | "arrow-left" | "arrow-left-from-line" | "arrow-left-right" | "arrow-left-to-line" | "arrow-right" | "arrow-right-from-line" | "arrow-right-left" | "arrow-right-to-line" | "arrow-up" | "arrow-up-0-1" | "arrow-up-1-0" | "arrow-up-a-z" | "arrow-up-down" | "arrow-up-from-dot" | "arrow-up-from-line" | "arrow-up-left" | "arrow-up-narrow-wide" | "arrow-up-right" | "arrow-up-to-line" | "arrow-up-wide-narrow" | "arrow-up-z-a" | "arrows-up-from-line" | "asterisk" | "astroid" | "at-sign" | "atom" | "audio-lines" | "audio-lines-off" | "audio-lines-x" | "audio-waveform" | "avocado" | "award" | "axe" | "axis-3d" | "azerbaijani-manat" | "baby" | "backpack" | "bacon" | "badge" | "badge-alert" | "badge-cent" | "badge-check" | "badge-dollar-sign" | "badge-euro" | "badge-indian-rupee" | "badge-info" | "badge-japanese-yen" | "badge-minus" | "badge-percent" | "badge-plus" | "badge-pound-sterling" | "badge-question-mark" | "badge-russian-ruble" | "badge-swiss-franc" | "badge-turkish-lira" | "badge-x" | "baggage-claim" | "ball-wave" | "balloon" | "ban" | "banana" | "bandage" | "bangladeshi-taka" | "banknote" | "banknote-arrow-down" | "banknote-arrow-up" | "banknote-check" | "banknote-x" | "barcode" | "barrel" | "baseline" | "bath" | "battery" | "battery-charging" | "battery-full" | "battery-low" | "battery-medium" | "battery-plus" | "battery-warning" | "beaker" | "bean" | "bean-off" | "bed" | "bed-double" | "bed-single" | "beef" | "beef-off" | "beer" | "beer-off" | "belarusian-ruble" | "bell" | "bell-check" | "bell-dot" | "bell-electric" | "bell-minus" | "bell-off" | "bell-plus" | "bell-ring" | "between-horizontal-end" | "between-horizontal-start" | "between-vertical-end" | "between-vertical-start" | "biceps-flexed" | "bike" | "binary" | "binoculars" | "biohazard" | "bird" | "birdhouse" | "bitcoin" | "blend" | "blender" | "blinds" | "blocks" | "bluetooth" | "bluetooth-connected" | "bluetooth-off" | "bluetooth-searching" | "bolt" | "bomb" | "bone" | "bone-fracture" | "book" | "book-a" | "book-alert" | "book-audio" | "book-bookmark" | "book-check" | "book-copy" | "book-dashed" | "book-down" | "book-headphones" | "book-heart" | "book-image" | "book-key" | "book-lock" | "book-minus" | "book-open" | "book-open-check" | "book-open-text" | "book-plus" | "book-search" | "book-text" | "book-type" | "book-up" | "book-up-2" | "book-user" | "book-x" | "bookmark" | "bookmark-check" | "bookmark-minus" | "bookmark-off" | "bookmark-plus" | "bookmark-x" | "boom-box" | "bot" | "bot-message-square" | "bot-off" | "bottle-wine" | "bow-arrow" | "box" | "boxes" | "boxes-linked" | "braces" | "brackets" | "brain" | "brain-circuit" | "brain-cog" | "brain-off" | "brick-wall" | "brick-wall-fire" | "brick-wall-shield" | "bridge" | "briefcase" | "briefcase-business" | "briefcase-conveyor-belt" | "briefcase-medical" | "briefcase-plus" | "bring-to-front" | "broccoli" | "broom" | "broom-sparkles" | "brush" | "brush-cleaning" | "bubbles" | "bug" | "bug-off" | "bug-play" | "building" | "building-complex" | "building-complex-plus" | "bus" | "bus-front" | "cable" | "cable-car" | "cake" | "cake-slice" | "calculator" | "calendar" | "calendar-1" | "calendar-arrow-down" | "calendar-arrow-left" | "calendar-arrow-right" | "calendar-arrow-up" | "calendar-check" | "calendar-check-2" | "calendar-chevrons-left" | "calendar-chevrons-right" | "calendar-clock" | "calendar-cog" | "calendar-days" | "calendar-fold" | "calendar-heart" | "calendar-minus" | "calendar-minus-2" | "calendar-off" | "calendar-plus" | "calendar-plus-2" | "calendar-range" | "calendar-search" | "calendar-sync" | "calendar-x" | "calendar-x-2" | "calendars" | "camera" | "camera-off" | "can" | "can-soda" | "candy" | "candy-cane" | "candy-off" | "cannabis" | "cannabis-off" | "captions" | "captions-off" | "car" | "car-battery" | "car-front" | "car-taxi-front" | "caravan" | "card-sim" | "carrot" | "carton" | "carton-off" | "case-lower" | "case-sensitive" | "case-upper" | "cassette-tape" | "cast" | "castle" | "cat" | "cctv" | "cctv-off" | "certificate" | "chart-area" | "chart-bar" | "chart-bar-big" | "chart-bar-decreasing" | "chart-bar-increasing" | "chart-bar-stacked" | "chart-candlestick" | "chart-column" | "chart-column-big" | "chart-column-decreasing" | "chart-column-increasing" | "chart-column-stacked" | "chart-gantt" | "chart-line" | "chart-network" | "chart-no-axes-column" | "chart-no-axes-column-decreasing" | "chart-no-axes-column-increasing" | "chart-no-axes-combined" | "chart-no-axes-gantt" | "chart-pie" | "chart-quadrant" | "chart-radar" | "chart-scatter" | "chart-spline" | "check" | "check-check" | "check-line" | "chef-hat" | "cherry" | "chess-bishop" | "chess-king" | "chess-knight" | "chess-pawn" | "chess-queen" | "chess-rook" | "chevron-down" | "chevron-first" | "chevron-last" | "chevron-left" | "chevron-right" | "chevron-up" | "chevrons-down" | "chevrons-down-up" | "chevrons-left" | "chevrons-left-right" | "chevrons-left-right-ellipsis" | "chevrons-right" | "chevrons-right-left" | "chevrons-up" | "chevrons-up-down" | "church" | "cigarette" | "cigarette-off" | "circle" | "circle-alert" | "circle-arrow-down" | "circle-arrow-left" | "circle-arrow-out-down-left" | "circle-arrow-out-down-right" | "circle-arrow-out-up-left" | "circle-arrow-out-up-right" | "circle-arrow-right" | "circle-arrow-up" | "circle-check" | "circle-check-big" | "circle-chevron-down" | "circle-chevron-left" | "circle-chevron-right" | "circle-chevron-up" | "circle-chevrons-down" | "circle-chevrons-left" | "circle-chevrons-right" | "circle-chevrons-up" | "circle-dashed" | "circle-dashed-check" | "circle-divide" | "circle-dollar-sign" | "circle-dot" | "circle-dot-dashed" | "circle-ellipsis" | "circle-equal" | "circle-euro" | "circle-fading-arrow-up" | "circle-fading-play" | "circle-fading-plus" | "circle-gauge" | "circle-letter-a" | "circle-letter-b" | "circle-letter-c" | "circle-letter-d" | "circle-letter-e" | "circle-letter-f" | "circle-letter-g" | "circle-letter-h" | "circle-letter-i" | "circle-letter-j" | "circle-letter-k" | "circle-letter-l" | "circle-letter-m" | "circle-letter-n" | "circle-letter-o" | "circle-letter-p" | "circle-letter-p-off" | "circle-letter-q" | "circle-letter-r" | "circle-letter-s" | "circle-letter-t" | "circle-letter-u" | "circle-letter-v" | "circle-letter-w" | "circle-letter-x" | "circle-letter-y" | "circle-letter-z" | "circle-minus" | "circle-off" | "circle-pause" | "circle-percent" | "circle-pile" | "circle-play" | "circle-plus" | "circle-pound-sterling" | "circle-power" | "circle-question-mark" | "circle-slash" | "circle-slash-2" | "circle-small" | "circle-star" | "circle-stop" | "circle-user" | "circle-user-round" | "circle-x" | "circuit-board" | "citrus" | "clapperboard" | "clef-alto" | "clef-bass" | "clef-treble" | "clipboard" | "clipboard-check" | "clipboard-clock" | "clipboard-copy" | "clipboard-list" | "clipboard-minus" | "clipboard-paste" | "clipboard-pen" | "clipboard-pen-line" | "clipboard-plus" | "clipboard-type" | "clipboard-x" | "clock" | "clock-1" | "clock-10" | "clock-11" | "clock-12" | "clock-2" | "clock-3" | "clock-4" | "clock-5" | "clock-6" | "clock-7" | "clock-8" | "clock-9" | "clock-alert" | "clock-arrow-down" | "clock-arrow-left" | "clock-arrow-right" | "clock-arrow-up" | "clock-check" | "clock-fading" | "clock-plus" | "closed-caption" | "cloud" | "cloud-alert" | "cloud-backup" | "cloud-check" | "cloud-cog" | "cloud-download" | "cloud-drizzle" | "cloud-fog" | "cloud-hail" | "cloud-lightning" | "cloud-moon" | "cloud-moon-rain" | "cloud-off" | "cloud-rain" | "cloud-rain-wind" | "cloud-snow" | "cloud-sun" | "cloud-sun-rain" | "cloud-sync" | "cloud-upload" | "cloudy" | "clover" | "club" | "code-xml" | "coffee" | "cog" | "coins" | "columns-2" | "columns-3" | "columns-3-cog" | "columns-4" | "combine" | "compass" | "component" | "computer" | "concierge-bell" | "cone" | "construction" | "contact" | "contact-round" | "container" | "contrast" | "cookie" | "cooking-pot" | "copy-check" | "copy-minus" | "copy-plus" | "copy-slash" | "copy-x" | "copyleft" | "corner-down-left" | "corner-down-right" | "corner-left-down" | "corner-left-up" | "corner-right-down" | "corner-right-up" | "corner-up-left" | "corner-up-right" | "cpu" | "cpu-ai" | "creative-commons" | "credit-card" | "credit-card-check" | "credit-card-minus" | "credit-card-plus" | "credit-card-reader" | "credit-card-x" | "croissant" | "crop" | "cross" | "crosshair" | "crown" | "cuboid" | "cup-soda" | "cupcake" | "currency" | "cylinder" | "dam" | "database" | "database-arrow-down" | "database-arrow-up" | "database-backup" | "database-check" | "database-cog" | "database-minus" | "database-plus" | "database-search" | "database-x" | "database-zap" | "decimals-arrow-left" | "decimals-arrow-right" | "dessert" | "diameter" | "diamond" | "diamond-minus" | "diamond-percent" | "diamond-plus" | "dice-1" | "dice-2" | "dice-3" | "dice-4" | "dice-5" | "dice-6" | "dices" | "diff" | "disc" | "disc-2" | "disc-3" | "disc-album" | "divide" | "dna" | "dna-off" | "dock" | "dog" | "dollar-sign" | "dome" | "donut" | "door-closed" | "door-closed-cog" | "door-closed-locked" | "door-closed-package" | "door-open" | "door-stairwell" | "dot" | "download" | "drafting-compass" | "drama" | "drill" | "drone" | "droplet" | "droplet-off" | "droplets" | "drum" | "drumstick" | "dumbbell" | "ear" | "ear-off" | "earbuds" | "earbuds-off" | "earth" | "earth-lock" | "eclipse" | "egg" | "egg-fried" | "egg-off" | "eighth-note" | "eighth-notes" | "eject" | "ellipse" | "ellipsis" | "ellipsis-vertical" | "emirati-dirham" | "engine" | "equal" | "equal-approximately" | "equal-approximately-not" | "equal-not" | "eraser" | "ethernet-port" | "euro" | "ev-charger" | "expand" | "external-link" | "eye" | "eye-closed" | "eye-dashed" | "eye-off" | "face-angry" | "face-expressionless" | "face-grinning" | "face-neutral" | "face-slightly-frowning" | "face-slightly-smiling" | "face-slightly-smiling-plus" | "factory" | "fan" | "fast-forward" | "faucet" | "feather" | "fence" | "ferris-wheel" | "file" | "file-archive" | "file-axis-3d" | "file-badge" | "file-box" | "file-braces" | "file-braces-corner" | "file-chart-column" | "file-chart-column-increasing" | "file-chart-line" | "file-chart-pie" | "file-check" | "file-check-corner" | "file-clock" | "file-code" | "file-code-corner" | "file-cog" | "file-diff" | "file-digit" | "file-down" | "file-exclamation-point" | "file-headphone" | "file-heart" | "file-image" | "file-input" | "file-key" | "file-lock" | "file-minus" | "file-minus-corner" | "file-music" | "file-output" | "file-pen" | "file-pen-line" | "file-play" | "file-plus" | "file-plus-corner" | "file-question-mark" | "file-scan" | "file-search" | "file-search-corner" | "file-signal" | "file-sliders" | "file-spreadsheet" | "file-stack" | "file-symlink" | "file-terminal" | "file-text" | "file-type" | "file-type-corner" | "file-up" | "file-user" | "file-video-camera" | "file-volume" | "file-x" | "file-x-corner" | "files" | "film" | "fingerprint-pattern" | "fire-extinguisher" | "fish" | "fish-off" | "fish-symbol" | "fishing-hook" | "fishing-rod" | "flag" | "flag-off" | "flag-triangle-left" | "flag-triangle-right" | "flame" | "flame-kindling" | "flashlight" | "flashlight-off" | "flask-conical" | "flask-conical-off" | "flask-round" | "flower" | "flower-2" | "fold-horizontal" | "fold-vertical" | "folder" | "folder-archive" | "folder-bookmark" | "folder-check" | "folder-clock" | "folder-closed" | "folder-code" | "folder-cog" | "folder-dot" | "folder-down" | "folder-git" | "folder-git-2" | "folder-heart" | "folder-input" | "folder-kanban" | "folder-key" | "folder-lock" | "folder-minus" | "folder-open" | "folder-open-dot" | "folder-output" | "folder-pen" | "folder-plus" | "folder-root" | "folder-search" | "folder-search-2" | "folder-symlink" | "folder-sync" | "folder-tree" | "folder-up" | "folder-user" | "folder-users" | "folder-x" | "folders" | "footprints" | "forklift" | "forward" | "frame" | "fuel" | "fullscreen" | "funnel" | "funnel-plus" | "funnel-x" | "galaxy" | "gallery-horizontal" | "gallery-horizontal-end" | "gallery-thumbnails" | "gallery-vertical" | "gallery-vertical-end" | "gamepad" | "gamepad-2" | "gamepad-directional" | "gap-horizontal" | "gap-vertical" | "gauge" | "gavel" | "gem" | "georgian-lari" | "germ" | "germ-off" | "gift" | "git-branch" | "git-branch-minus" | "git-branch-plus" | "git-commit-horizontal" | "git-commit-vertical" | "git-compare" | "git-compare-arrows" | "git-fork" | "git-graph" | "git-merge" | "git-merge-conflict" | "git-pull-request" | "git-pull-request-arrow" | "git-pull-request-closed" | "git-pull-request-create" | "git-pull-request-create-arrow" | "git-pull-request-draft" | "glass-water" | "glasses" | "globe" | "globe-check" | "globe-code" | "globe-lock" | "globe-off" | "globe-x" | "goal" | "gpu" | "graduation-cap" | "grape" | "graph-hub" | "graph-star" | "grid-2x2" | "grid-2x2-check" | "grid-2x2-plus" | "grid-2x2-x" | "grid-3x2" | "grid-3x3" | "grip" | "grip-horizontal" | "grip-vertical" | "groceries" | "group" | "guitar" | "guitar-electric" | "half-note" | "ham" | "hamburger" | "hammer" | "hand" | "hand-coins" | "hand-fist" | "hand-grab" | "hand-heart" | "hand-helping" | "hand-metal" | "hand-platter" | "handbag" | "handle-bottom-right" | "handshake" | "hard-drive" | "hard-drive-download" | "hard-drive-upload" | "hard-hat" | "hash" | "hat-glasses" | "haze" | "hd" | "hdmi-port" | "heading-1" | "heading-2" | "heading-3" | "heading-4" | "heading-5" | "heading-6" | "headphone-off" | "headphones" | "headset" | "heart" | "heart-crack" | "heart-handshake" | "heart-minus" | "heart-off" | "heart-plus" | "heart-pulse" | "heart-x" | "heater" | "helicopter" | "hexagon" | "highlighter" | "hiking-stick" | "hockey-stick" | "hop" | "hop-off" | "hospital" | "hot-air-balloon" | "hotel" | "hourglass" | "hourglass-cog" | "house" | "house-cog" | "house-heart" | "house-plug" | "house-plus" | "house-wifi" | "houses" | "ice-cream-bowl" | "ice-cream-cone" | "id-card" | "id-card-lanyard" | "image" | "image-down" | "image-minus" | "image-off" | "image-play" | "image-plus" | "image-up" | "image-upscale" | "images" | "import" | "inbox" | "indian-rupee" | "infinity" | "info" | "inspection-panel" | "italic" | "iteration-ccw" | "iteration-cw" | "iv-bag" | "japanese-yen" | "joystick" | "kanban" | "kayak" | "kazakh-tenge" | "key-round" | "key-square" | "keyboard" | "keyboard-music" | "keyboard-off" | "lambda" | "lamp" | "lamp-ceiling" | "lamp-desk" | "lamp-floor" | "lamp-wall-down" | "lamp-wall-up" | "land-plot" | "landmark" | "languages" | "laptop" | "laptop-minimal" | "laptop-minimal-check" | "laser" | "lasso" | "lasso-select" | "layer-arrow-down" | "layer-arrow-up" | "layers" | "layers-2" | "layers-arrow-down" | "layers-arrow-up" | "layers-minus" | "layers-plus" | "layout-arrow-down" | "layout-arrow-right" | "layout-dashboard" | "layout-freeform" | "layout-grid" | "layout-grid-circles" | "layout-list" | "layout-panel-left" | "layout-panel-top" | "layout-template" | "leaf" | "leafy-green" | "lectern" | "lens" | "lens-concave" | "lens-convex" | "letter-a" | "letter-b" | "letter-c" | "letter-d" | "letter-e" | "letter-f" | "letter-g" | "letter-h" | "letter-i" | "letter-j" | "letter-k" | "letter-l" | "letter-m" | "letter-n" | "letter-o" | "letter-p" | "letter-q" | "letter-r" | "letter-s" | "letter-spacing" | "letter-t" | "letter-u" | "letter-v" | "letter-w" | "letter-x" | "letter-y" | "letter-z" | "letters" | "library" | "library-big" | "life-buoy" | "ligature" | "lightbulb" | "lightbulb-off" | "lighthouse" | "line-dot-bottom-vertical" | "line-dot-left-horizontal" | "line-dot-right-horizontal" | "line-dot-top-vertical" | "line-height" | "line-squiggle" | "line-style" | "link-2" | "link-2-off" | "list" | "list-check" | "list-checks" | "list-chevrons-down-up" | "list-chevrons-up-down" | "list-clock" | "list-collapse" | "list-end" | "list-filter" | "list-filter-plus" | "list-indent-decrease" | "list-indent-increase" | "list-minus" | "list-music" | "list-ordered" | "list-plus" | "list-restart" | "list-sort-ascending" | "list-sort-descending" | "list-start" | "list-todo" | "list-tree" | "list-video" | "list-x" | "loader" | "loader-circle" | "loader-pinwheel" | "locate" | "locate-fixed" | "locate-off" | "lock" | "lock-keyhole" | "lock-keyhole-open" | "lock-open" | "log-in" | "log-out" | "logs" | "lollipop" | "luggage" | "magnet" | "mail" | "mail-badge" | "mail-check" | "mail-clock" | "mail-dot" | "mail-minus" | "mail-open" | "mail-pen" | "mail-plus" | "mail-question-mark" | "mail-search" | "mail-warning" | "mail-x" | "mailbox" | "mails" | "map-minus" | "map-pin" | "map-pin-check" | "map-pin-check-inside" | "map-pin-house" | "map-pin-minus" | "map-pin-minus-inside" | "map-pin-off" | "map-pin-pen" | "map-pin-plus" | "map-pin-plus-inside" | "map-pin-search" | "map-pin-x" | "map-pin-x-inside" | "map-pinned" | "map-plus" | "mars" | "mars-stroke" | "martini" | "maximize" | "maximize-2" | "medal" | "megaphone" | "megaphone-off" | "memory-stick" | "merge" | "message-circle" | "message-circle-check" | "message-circle-code" | "message-circle-dashed" | "message-circle-dashed-check" | "message-circle-heart" | "message-circle-more" | "message-circle-off" | "message-circle-plus" | "message-circle-question-mark" | "message-circle-reply" | "message-circle-text" | "message-circle-warning" | "message-circle-x" | "message-square" | "message-square-check" | "message-square-code" | "message-square-dashed" | "message-square-diff" | "message-square-dot" | "message-square-heart" | "message-square-lock" | "message-square-more" | "message-square-off" | "message-square-plus" | "message-square-quote" | "message-square-reply" | "message-square-share" | "message-square-text" | "message-square-warning" | "message-square-x" | "messages-circle" | "messages-square" | "metronome" | "mic" | "mic-audio-lines" | "mic-off" | "mic-signal" | "mic-vocal" | "microchip" | "microscope" | "microwave" | "midi-port" | "milestone" | "milk" | "milk-off" | "minimize" | "minimize-2" | "minus" | "mirror-rectangular" | "mirror-round" | "monitor" | "monitor-check" | "monitor-cloud" | "monitor-cog" | "monitor-dot" | "monitor-down" | "monitor-off" | "monitor-pause" | "monitor-pc" | "monitor-play" | "monitor-smartphone" | "monitor-speaker" | "monitor-stop" | "monitor-up" | "monitor-x" | "moon" | "moon-star" | "mop" | "mop-sparkles" | "mosque" | "motorbike" | "mountain" | "mountain-snow" | "mouse" | "mouse-left" | "mouse-off" | "mouse-pointer" | "mouse-pointer-2" | "mouse-pointer-2-off" | "mouse-pointer-ban" | "mouse-pointer-click" | "mouse-right" | "mouth" | "mouth-off" | "move" | "move-3d" | "move-diagonal" | "move-diagonal-2" | "move-down" | "move-down-left" | "move-down-right" | "move-horizontal" | "move-left" | "move-right" | "move-up" | "move-up-left" | "move-up-right" | "move-vertical" | "navigation" | "navigation-2" | "navigation-2-off" | "navigation-off" | "nepali-rupee" | "network" | "newspaper" | "nfc" | "non-binary" | "notebook" | "notebook-dot" | "notebook-pen" | "notebook-tabs" | "notebook-text" | "notepad-text" | "notepad-text-dashed" | "numbers" | "nut" | "nut-off" | "octagon" | "octagon-alert" | "octagon-minus" | "octagon-pause" | "octagon-x" | "omega" | "orbit" | "origami" | "package" | "package-2" | "package-check" | "package-minus" | "package-open" | "package-plus" | "package-search" | "package-x" | "paint-bucket" | "paint-roller" | "paintbrush" | "paintbrush-vertical" | "palette" | "panda" | "panel-bottom" | "panel-bottom-close" | "panel-bottom-dashed" | "panel-bottom-open" | "panel-left" | "panel-left-close" | "panel-left-dashed" | "panel-left-open" | "panel-left-right-dashed" | "panel-right" | "panel-right-close" | "panel-right-dashed" | "panel-right-open" | "panel-top" | "panel-top-bottom-dashed" | "panel-top-close" | "panel-top-dashed" | "panel-top-open" | "panels-left-bottom" | "panels-right-bottom" | "panels-top-left" | "paper-bag" | "paperclip" | "parasol" | "parentheses" | "park" | "parking-meter" | "party-popper" | "paw-print" | "pc-case" | "pen" | "pen-line" | "pen-off" | "pen-tool" | "pencil" | "pencil-line" | "pencil-off" | "pencil-ruler" | "pencil-sparkles" | "pentagon" | "percent" | "perfume-bottle" | "person-standing" | "phi" | "philippine-peso" | "phone" | "phone-call" | "phone-forwarded" | "phone-incoming" | "phone-log" | "phone-missed" | "phone-off" | "phone-outgoing" | "pi" | "piano" | "pickaxe" | "picture-in-picture" | "picture-in-picture-2" | "piggy-bank" | "pilcrow" | "pilcrow-left" | "pilcrow-right" | "pill" | "pill-bottle" | "pin" | "pin-off" | "pipette" | "pizza" | "plane" | "plane-landing" | "plane-takeoff" | "plant-pot" | "play-off" | "playing-card" | "playing-cards" | "playing-cards-fan" | "plug" | "plug-2" | "plug-zap" | "plus" | "pocket-knife" | "podium" | "pointer" | "pointer-off" | "popcorn" | "popsicle" | "pound-sterling" | "power" | "power-off" | "presentation" | "printer" | "printer-3d" | "printer-check" | "printer-x" | "projector" | "proportions" | "puzzle" | "pyramid" | "qr-code" | "quote" | "rabbit" | "radar" | "radiation" | "radical" | "radio" | "radio-off" | "radio-receiver" | "radio-tower" | "rainbow" | "rat" | "ratio" | "receipt" | "receipt-cent" | "receipt-euro" | "receipt-indian-rupee" | "receipt-japanese-yen" | "receipt-pound-sterling" | "receipt-russian-ruble" | "receipt-swiss-franc" | "receipt-text" | "receipt-turkish-lira" | "rectangle-circle" | "rectangle-ellipsis" | "rectangle-goggles" | "rectangle-horizontal" | "rectangle-vertical" | "recycle" | "redo" | "redo-2" | "redo-dot" | "refresh-ccw" | "refresh-ccw-dot" | "refresh-cw" | "refresh-cw-off" | "refrigerator" | "regex" | "remove-formatting" | "repeat-1" | "repeat-2" | "repeat-off" | "replace-all" | "reply" | "reply-all" | "rewind" | "ribbon" | "road" | "robot-arm" | "robot-vacuum" | "rocket" | "rocking-chair" | "roller-coaster" | "rose" | "rotate-3d" | "rotate-ccw" | "rotate-ccw-clock" | "rotate-ccw-key" | "rotate-ccw-square" | "rotate-cw" | "rotate-cw-clock" | "rotate-cw-fading-clock" | "rotate-cw-square" | "route" | "route-off" | "router" | "rows-2" | "rows-3" | "rows-4" | "rss" | "rugby-ball" | "ruler" | "ruler-dimension-line" | "russian-ruble" | "sailboat" | "salad" | "sandwich" | "satellite" | "satellite-dish" | "saudi-riyal" | "save" | "save-all" | "save-check" | "save-off" | "save-pen" | "save-plus" | "scale" | "scale-3d" | "scaling" | "scan" | "scan-barcode" | "scan-box" | "scan-eye" | "scan-face" | "scan-heart" | "scan-line" | "scan-qr-code" | "scan-search" | "scan-square" | "scan-text" | "school" | "scissors" | "scissors-line-dashed" | "scooter" | "scratch-blocks" | "screen-share" | "screen-share-off" | "screw" | "scroll-text" | "search-alert" | "search-check" | "search-code" | "search-slash" | "search-x" | "send" | "send-horizontal" | "send-to-back" | "separator-horizontal" | "separator-vertical" | "server" | "server-cog" | "server-crash" | "server-nas" | "server-off" | "server-plus" | "settings" | "settings-2" | "shapes" | "share" | "share-2" | "sheet" | "shell" | "shelving-unit" | "shield" | "shield-alert" | "shield-ban" | "shield-check" | "shield-cog" | "shield-cog-corner" | "shield-ellipsis" | "shield-half" | "shield-house" | "shield-keyhole" | "shield-lock" | "shield-minus" | "shield-off" | "shield-plus" | "shield-question-mark" | "shield-user" | "shield-x" | "ship" | "ship-cargo" | "ship-wheel" | "shirt" | "shopping-bag" | "shopping-basket" | "shopping-cart" | "shopping-cart-minus" | "shopping-cart-plus" | "shovel" | "shower-head" | "shredder" | "shrimp" | "shrimp-off" | "shrub" | "shuffle" | "sigma" | "signal" | "signal-high" | "signal-low" | "signal-medium" | "signal-zero" | "signature" | "signpost" | "signpost-big" | "siren" | "siren-off" | "sixteenth-notes" | "skip-back" | "skip-forward" | "skull" | "slash" | "sliders-horizontal" | "sliders-vertical" | "smartphone" | "smartphone-charging" | "smartphone-nfc" | "smartphone-user-round" | "snail" | "snowflake" | "soap-dispenser-droplet" | "sofa" | "solar-panel" | "soup" | "space" | "spade" | "sparkle" | "sparkles" | "speaker" | "speech" | "spell-check" | "spell-check-2" | "spline" | "spline-pointer" | "spool" | "sport-shoe" | "spotlight" | "spray-can" | "sprout" | "square" | "square-activity" | "square-arrow-down" | "square-arrow-down-left" | "square-arrow-down-right" | "square-arrow-left" | "square-arrow-out-down-left" | "square-arrow-out-down-right" | "square-arrow-out-up-left" | "square-arrow-out-up-right" | "square-arrow-right" | "square-arrow-right-enter" | "square-arrow-right-exit" | "square-arrow-up" | "square-arrow-up-left" | "square-arrow-up-right" | "square-asterisk" | "square-bookmark" | "square-bottom-dashed-scissors" | "square-centerline-dashed-horizontal" | "square-centerline-dashed-vertical" | "square-chart-gantt" | "square-check" | "square-check-big" | "square-chevron-down" | "square-chevron-left" | "square-chevron-right" | "square-chevron-up" | "square-chevrons-down" | "square-chevrons-left" | "square-chevrons-right" | "square-chevrons-up" | "square-code" | "square-dashed" | "square-dashed-bottom" | "square-dashed-bottom-code" | "square-dashed-kanban" | "square-dashed-mouse-pointer" | "square-dashed-plus" | "square-dashed-text" | "square-dashed-top-solid" | "square-dashed-x" | "square-dashed-x-corner" | "square-dimensions" | "square-divide" | "square-dot" | "square-equal" | "square-exclamation-point" | "square-function" | "square-kanban" | "square-kanban-plus" | "square-letter-a" | "square-letter-b" | "square-letter-c" | "square-letter-d" | "square-letter-e" | "square-letter-f" | "square-letter-g" | "square-letter-h" | "square-letter-i" | "square-letter-j" | "square-letter-k" | "square-letter-l" | "square-letter-m" | "square-letter-n" | "square-letter-o" | "square-letter-p" | "square-letter-p-off" | "square-letter-q" | "square-letter-r" | "square-letter-s" | "square-letter-t" | "square-letter-u" | "square-letter-v" | "square-letter-w" | "square-letter-x" | "square-letter-y" | "square-letter-z" | "square-library" | "square-menu" | "square-minus" | "square-mouse-pointer" | "square-off" | "square-pause" | "square-pen" | "square-percent" | "square-pi" | "square-pilcrow" | "square-play" | "square-plus" | "square-power" | "square-radical" | "square-round-corner" | "square-scissors" | "square-sigma" | "square-slash" | "square-sparkles" | "square-split-horizontal" | "square-split-vertical" | "square-square" | "square-stack" | "square-star" | "square-stop" | "square-terminal" | "square-text" | "square-user" | "square-user-round" | "square-x" | "squares-exclude" | "squares-intersect" | "squares-subtract" | "squares-unite" | "squircle" | "squircle-dashed" | "squirrel" | "stamp" | "star" | "star-check" | "star-half" | "star-minus" | "star-off" | "star-plus" | "star-x" | "step-back" | "step-forward" | "stethoscope" | "sticker" | "sticky-note" | "sticky-note-check" | "sticky-note-minus" | "sticky-note-off" | "sticky-note-plus" | "sticky-note-x" | "sticky-notes" | "stone" | "store" | "stretch-horizontal" | "stretch-vertical" | "strikethrough" | "subscript" | "sun" | "sun-dim" | "sun-medium" | "sun-moon" | "sun-snow" | "sunrise" | "sunset" | "superscript" | "swatch-book" | "swiss-franc" | "switch-camera" | "sword" | "swords" | "syringe" | "table-2" | "table-cells-merge" | "table-cells-split" | "table-columns-split" | "table-of-contents" | "table-properties" | "table-rows-split" | "tablet" | "tablet-smartphone" | "tablets" | "tag" | "tag-plus" | "tag-x" | "tags" | "tally-1" | "tally-2" | "tally-3" | "tally-4" | "tally-5" | "tangent" | "target" | "telescope" | "tent" | "tent-tree" | "terminal" | "test-tube" | "test-tube-diagonal" | "test-tubes" | "text-align-center" | "text-align-end" | "text-align-justify" | "text-align-justify-center" | "text-align-justify-end" | "text-align-justify-start" | "text-align-start" | "text-cursor" | "text-cursor-input" | "text-initial" | "text-quote" | "text-search" | "text-wrap" | "theater" | "thermometer" | "thermometer-snowflake" | "thermometer-sun" | "thumbs-down" | "thumbs-up" | "tic-tac-toe" | "ticket" | "ticket-check" | "ticket-minus" | "ticket-percent" | "ticket-plus" | "ticket-slash" | "ticket-x" | "tickets" | "tickets-plane" | "timeline" | "timer" | "timer-off" | "timer-reset" | "toggle-left" | "toggle-right" | "toilet" | "tombstone" | "tool-case" | "toolbox" | "toothbrush" | "toothbrush-sparkles" | "tornado" | "torus" | "touchpad" | "touchpad-off" | "towel-rack" | "tower-control" | "toy-brick" | "tractor" | "traffic-cone" | "trailer" | "train-front" | "train-front-tunnel" | "train-track" | "tram-front" | "transgender" | "trash" | "trash-off" | "tree-deciduous" | "tree-palm" | "tree-pine" | "trees" | "trending-down" | "trending-up" | "trending-up-down" | "triangle" | "triangle-alert" | "triangle-dashed" | "triangle-right" | "triangles-centerline-dashed-horizontal" | "triangles-centerline-dashed-vertical" | "trophy" | "truck" | "truck-electric" | "tube-lotion" | "turkish-lira" | "turntable" | "turtle" | "tv" | "tv-minimal" | "tv-minimal-play" | "type-outline" | "umbrella" | "umbrella-off" | "underline" | "undo" | "undo-2" | "undo-dot" | "unfold-horizontal" | "unfold-vertical" | "ungroup" | "university" | "unlink" | "unlink-2" | "unplug" | "upload" | "usb" | "usb-c-port" | "user" | "user-check" | "user-cog" | "user-group" | "user-key" | "user-lock" | "user-minus" | "user-pen" | "user-plus" | "user-round" | "user-round-arrow-left" | "user-round-check" | "user-round-cog" | "user-round-group" | "user-round-key" | "user-round-minus" | "user-round-pen" | "user-round-plus" | "user-round-search" | "user-round-shield" | "user-round-star" | "user-round-x" | "user-search" | "user-shield" | "user-star" | "user-x" | "users" | "users-collaboration" | "users-round" | "users-round-collaboration" | "utensils" | "utensils-crossed" | "utility-pole" | "van" | "variable" | "vault" | "vector-polygon" | "vector-square" | "vegan" | "venetian-mask" | "venus" | "venus-and-mars" | "vibrate" | "vibrate-off" | "video-off" | "videotape" | "view" | "virus" | "virus-off" | "voicemail" | "volleyball" | "volume" | "volume-1" | "volume-2" | "volume-off" | "volume-x" | "vote" | "wallet" | "wallet-cards" | "wallet-minimal" | "wallpaper" | "wand" | "wand-sparkles" | "warehouse" | "washing-machine" | "waves-arrow-down" | "waves-arrow-up" | "waves-horizontal" | "waves-ladder" | "waves-vertical" | "waypoints" | "webcam" | "webcam-off" | "webhook" | "webhook-off" | "weight" | "weight-tilde" | "wheat-off" | "whistle" | "whole-word" | "wifi" | "wifi-cog" | "wifi-high" | "wifi-lock" | "wifi-low" | "wifi-off" | "wifi-pen" | "wifi-sync" | "wifi-zero" | "wind" | "wind-arrow-down" | "wind-arrow-up" | "wine" | "wine-off" | "workflow" | "worm" | "wrench" | "wrench-off" | "x" | "x-line-top" | "zap" | "zap-off" | "zodiac-aquarius" | "zodiac-aries" | "zodiac-cancer" | "zodiac-capricorn" | "zodiac-gemini" | "zodiac-leo" | "zodiac-libra" | "zodiac-ophiuchus" | "zodiac-pisces" | "zodiac-sagittarius" | "zodiac-scorpio" | "zodiac-taurus" | "zodiac-virgo" | "zoom-in" | "zoom-out";
118
+ trailingIcon: "radius" | "shrink" | "type" | "wheat" | "scroll" | "command" | "copy" | "focus" | "pause" | "play" | "slice" | "map" | "code" | "form" | "link" | "menu" | "option" | "search" | "section" | "summary" | "table" | "video" | "delete" | "watch" | "replace" | "split" | "repeat" | "anchor" | "key" | "ghost" | "a-arrow-down" | "a-arrow-up" | "a-large-small" | "accessibility" | "activity" | "ad" | "air-vent" | "airplay" | "alarm-clock" | "alarm-clock-check" | "alarm-clock-minus" | "alarm-clock-off" | "alarm-clock-plus" | "alarm-smoke" | "align-center-horizontal" | "align-center-vertical" | "align-end-horizontal" | "align-end-vertical" | "align-horizontal-distribute-center" | "align-horizontal-distribute-end" | "align-horizontal-distribute-start" | "align-horizontal-justify-center" | "align-horizontal-justify-end" | "align-horizontal-justify-start" | "align-horizontal-space-around" | "align-horizontal-space-between" | "align-start-horizontal" | "align-start-vertical" | "align-vertical-distribute-center" | "align-vertical-distribute-end" | "align-vertical-distribute-start" | "align-vertical-justify-center" | "align-vertical-justify-end" | "align-vertical-justify-start" | "align-vertical-space-around" | "align-vertical-space-between" | "ambulance" | "ampersand" | "ampersands" | "amphora" | "angle" | "antenna" | "anvil" | "aperture" | "app-window" | "app-window-mac" | "apple" | "archive" | "archive-arrow-down" | "archive-arrow-up" | "archive-x" | "armchair" | "armenian-dram" | "arrow-big-down" | "arrow-big-down-dash" | "arrow-big-left" | "arrow-big-left-dash" | "arrow-big-right" | "arrow-big-right-dash" | "arrow-big-up" | "arrow-big-up-dash" | "arrow-down" | "arrow-down-0-1" | "arrow-down-1-0" | "arrow-down-a-z" | "arrow-down-from-line" | "arrow-down-left" | "arrow-down-narrow-wide" | "arrow-down-right" | "arrow-down-to-dot" | "arrow-down-to-line" | "arrow-down-up" | "arrow-down-wide-narrow" | "arrow-down-z-a" | "arrow-left" | "arrow-left-from-line" | "arrow-left-right" | "arrow-left-to-line" | "arrow-right" | "arrow-right-from-line" | "arrow-right-left" | "arrow-right-to-line" | "arrow-up" | "arrow-up-0-1" | "arrow-up-1-0" | "arrow-up-a-z" | "arrow-up-down" | "arrow-up-from-dot" | "arrow-up-from-line" | "arrow-up-left" | "arrow-up-narrow-wide" | "arrow-up-right" | "arrow-up-to-line" | "arrow-up-wide-narrow" | "arrow-up-z-a" | "arrows-up-from-line" | "asterisk" | "astroid" | "at-sign" | "atom" | "audio-lines" | "audio-lines-off" | "audio-lines-x" | "audio-waveform" | "avocado" | "award" | "axe" | "axis-3d" | "azerbaijani-manat" | "baby" | "backpack" | "bacon" | "badge" | "badge-alert" | "badge-cent" | "badge-check" | "badge-dollar-sign" | "badge-euro" | "badge-indian-rupee" | "badge-info" | "badge-japanese-yen" | "badge-minus" | "badge-percent" | "badge-plus" | "badge-pound-sterling" | "badge-question-mark" | "badge-russian-ruble" | "badge-swiss-franc" | "badge-turkish-lira" | "badge-x" | "baggage-claim" | "ball-wave" | "balloon" | "ban" | "banana" | "bandage" | "bangladeshi-taka" | "banknote" | "banknote-arrow-down" | "banknote-arrow-up" | "banknote-check" | "banknote-x" | "barcode" | "barrel" | "baseline" | "bath" | "battery" | "battery-charging" | "battery-full" | "battery-low" | "battery-medium" | "battery-plus" | "battery-warning" | "beaker" | "bean" | "bean-off" | "bed" | "bed-double" | "bed-single" | "beef" | "beef-off" | "beer" | "beer-off" | "belarusian-ruble" | "bell" | "bell-check" | "bell-dot" | "bell-electric" | "bell-minus" | "bell-off" | "bell-plus" | "bell-ring" | "between-horizontal-end" | "between-horizontal-start" | "between-vertical-end" | "between-vertical-start" | "biceps-flexed" | "bike" | "binary" | "binoculars" | "biohazard" | "bird" | "birdhouse" | "bitcoin" | "blend" | "blender" | "blinds" | "blocks" | "bluetooth" | "bluetooth-connected" | "bluetooth-off" | "bluetooth-searching" | "bolt" | "bomb" | "bone" | "bone-fracture" | "book" | "book-a" | "book-alert" | "book-audio" | "book-bookmark" | "book-check" | "book-copy" | "book-dashed" | "book-down" | "book-headphones" | "book-heart" | "book-image" | "book-key" | "book-lock" | "book-minus" | "book-open" | "book-open-check" | "book-open-text" | "book-plus" | "book-search" | "book-text" | "book-type" | "book-up" | "book-up-2" | "book-user" | "book-x" | "bookmark" | "bookmark-check" | "bookmark-minus" | "bookmark-off" | "bookmark-plus" | "bookmark-x" | "boom-box" | "bot" | "bot-message-square" | "bot-off" | "bottle-wine" | "bow-arrow" | "box" | "boxes" | "boxes-linked" | "braces" | "brackets" | "brain" | "brain-circuit" | "brain-cog" | "brain-off" | "brick-wall" | "brick-wall-fire" | "brick-wall-shield" | "bridge" | "briefcase" | "briefcase-business" | "briefcase-conveyor-belt" | "briefcase-medical" | "briefcase-plus" | "bring-to-front" | "broccoli" | "broom" | "broom-sparkles" | "brush" | "brush-cleaning" | "bubbles" | "bug" | "bug-off" | "bug-play" | "building" | "building-complex" | "building-complex-plus" | "bus" | "bus-front" | "cable" | "cable-car" | "cake" | "cake-slice" | "calculator" | "calendar" | "calendar-1" | "calendar-arrow-down" | "calendar-arrow-left" | "calendar-arrow-right" | "calendar-arrow-up" | "calendar-check" | "calendar-check-2" | "calendar-chevrons-left" | "calendar-chevrons-right" | "calendar-clock" | "calendar-cog" | "calendar-days" | "calendar-fold" | "calendar-heart" | "calendar-minus" | "calendar-minus-2" | "calendar-off" | "calendar-plus" | "calendar-plus-2" | "calendar-range" | "calendar-search" | "calendar-sync" | "calendar-x" | "calendar-x-2" | "calendars" | "camera" | "camera-off" | "can" | "can-soda" | "candy" | "candy-cane" | "candy-off" | "cannabis" | "cannabis-off" | "captions" | "captions-off" | "car" | "car-battery" | "car-front" | "car-taxi-front" | "caravan" | "card-sim" | "carrot" | "carton" | "carton-off" | "case-lower" | "case-sensitive" | "case-upper" | "cassette-tape" | "cast" | "castle" | "cat" | "cctv" | "cctv-off" | "certificate" | "chart-area" | "chart-bar" | "chart-bar-big" | "chart-bar-decreasing" | "chart-bar-increasing" | "chart-bar-stacked" | "chart-candlestick" | "chart-column" | "chart-column-big" | "chart-column-decreasing" | "chart-column-increasing" | "chart-column-stacked" | "chart-gantt" | "chart-line" | "chart-network" | "chart-no-axes-column" | "chart-no-axes-column-decreasing" | "chart-no-axes-column-increasing" | "chart-no-axes-combined" | "chart-no-axes-gantt" | "chart-pie" | "chart-quadrant" | "chart-radar" | "chart-scatter" | "chart-spline" | "check" | "check-check" | "check-line" | "chef-hat" | "cherry" | "chess-bishop" | "chess-king" | "chess-knight" | "chess-pawn" | "chess-queen" | "chess-rook" | "chevron-down" | "chevron-first" | "chevron-last" | "chevron-left" | "chevron-right" | "chevron-up" | "chevrons-down" | "chevrons-down-up" | "chevrons-left" | "chevrons-left-right" | "chevrons-left-right-ellipsis" | "chevrons-right" | "chevrons-right-left" | "chevrons-up" | "chevrons-up-down" | "church" | "cigarette" | "cigarette-off" | "circle" | "circle-alert" | "circle-arrow-down" | "circle-arrow-left" | "circle-arrow-out-down-left" | "circle-arrow-out-down-right" | "circle-arrow-out-up-left" | "circle-arrow-out-up-right" | "circle-arrow-right" | "circle-arrow-up" | "circle-check" | "circle-check-big" | "circle-chevron-down" | "circle-chevron-left" | "circle-chevron-right" | "circle-chevron-up" | "circle-chevrons-down" | "circle-chevrons-left" | "circle-chevrons-right" | "circle-chevrons-up" | "circle-dashed" | "circle-dashed-check" | "circle-divide" | "circle-dollar-sign" | "circle-dot" | "circle-dot-dashed" | "circle-ellipsis" | "circle-equal" | "circle-euro" | "circle-fading-arrow-up" | "circle-fading-play" | "circle-fading-plus" | "circle-gauge" | "circle-letter-a" | "circle-letter-b" | "circle-letter-c" | "circle-letter-d" | "circle-letter-e" | "circle-letter-f" | "circle-letter-g" | "circle-letter-h" | "circle-letter-i" | "circle-letter-j" | "circle-letter-k" | "circle-letter-l" | "circle-letter-m" | "circle-letter-n" | "circle-letter-o" | "circle-letter-p" | "circle-letter-p-off" | "circle-letter-q" | "circle-letter-r" | "circle-letter-s" | "circle-letter-t" | "circle-letter-u" | "circle-letter-v" | "circle-letter-w" | "circle-letter-x" | "circle-letter-y" | "circle-letter-z" | "circle-minus" | "circle-off" | "circle-pause" | "circle-percent" | "circle-pile" | "circle-play" | "circle-plus" | "circle-pound-sterling" | "circle-power" | "circle-question-mark" | "circle-slash" | "circle-slash-2" | "circle-small" | "circle-star" | "circle-stop" | "circle-user" | "circle-user-round" | "circle-x" | "circuit-board" | "citrus" | "clapperboard" | "clef-alto" | "clef-bass" | "clef-treble" | "clipboard" | "clipboard-check" | "clipboard-clock" | "clipboard-copy" | "clipboard-list" | "clipboard-minus" | "clipboard-paste" | "clipboard-pen" | "clipboard-pen-line" | "clipboard-plus" | "clipboard-type" | "clipboard-x" | "clock" | "clock-1" | "clock-10" | "clock-11" | "clock-12" | "clock-2" | "clock-3" | "clock-4" | "clock-5" | "clock-6" | "clock-7" | "clock-8" | "clock-9" | "clock-alert" | "clock-arrow-down" | "clock-arrow-left" | "clock-arrow-right" | "clock-arrow-up" | "clock-check" | "clock-fading" | "clock-plus" | "closed-caption" | "cloud" | "cloud-alert" | "cloud-backup" | "cloud-check" | "cloud-cog" | "cloud-download" | "cloud-drizzle" | "cloud-fog" | "cloud-hail" | "cloud-lightning" | "cloud-moon" | "cloud-moon-rain" | "cloud-off" | "cloud-rain" | "cloud-rain-wind" | "cloud-snow" | "cloud-sun" | "cloud-sun-rain" | "cloud-sync" | "cloud-upload" | "cloudy" | "clover" | "club" | "code-xml" | "coffee" | "cog" | "coins" | "columns-2" | "columns-3" | "columns-3-cog" | "columns-4" | "combine" | "compass" | "component" | "computer" | "concierge-bell" | "cone" | "construction" | "contact" | "contact-round" | "container" | "contrast" | "cookie" | "cooking-pot" | "copy-check" | "copy-minus" | "copy-plus" | "copy-slash" | "copy-x" | "copyleft" | "corner-down-left" | "corner-down-right" | "corner-left-down" | "corner-left-up" | "corner-right-down" | "corner-right-up" | "corner-up-left" | "corner-up-right" | "cpu" | "cpu-ai" | "creative-commons" | "credit-card" | "credit-card-check" | "credit-card-minus" | "credit-card-plus" | "credit-card-reader" | "credit-card-x" | "croissant" | "crop" | "cross" | "crosshair" | "crown" | "cuboid" | "cup-soda" | "cupcake" | "currency" | "cylinder" | "dam" | "database" | "database-arrow-down" | "database-arrow-up" | "database-backup" | "database-check" | "database-cog" | "database-minus" | "database-plus" | "database-search" | "database-x" | "database-zap" | "decimals-arrow-left" | "decimals-arrow-right" | "dessert" | "diameter" | "diamond" | "diamond-minus" | "diamond-percent" | "diamond-plus" | "dice-1" | "dice-2" | "dice-3" | "dice-4" | "dice-5" | "dice-6" | "dices" | "diff" | "disc" | "disc-2" | "disc-3" | "disc-album" | "divide" | "dna" | "dna-off" | "dock" | "dog" | "dollar-sign" | "dome" | "donut" | "door-closed" | "door-closed-cog" | "door-closed-locked" | "door-closed-package" | "door-open" | "door-stairwell" | "dot" | "download" | "drafting-compass" | "drama" | "drill" | "drone" | "droplet" | "droplet-off" | "droplets" | "drum" | "drumstick" | "dumbbell" | "ear" | "ear-off" | "earbuds" | "earbuds-off" | "earth" | "earth-lock" | "eclipse" | "egg" | "egg-fried" | "egg-off" | "eighth-note" | "eighth-notes" | "eject" | "ellipse" | "ellipsis" | "ellipsis-vertical" | "emirati-dirham" | "engine" | "equal" | "equal-approximately" | "equal-approximately-not" | "equal-not" | "eraser" | "ethernet-port" | "euro" | "ev-charger" | "expand" | "external-link" | "eye" | "eye-closed" | "eye-dashed" | "eye-off" | "face-angry" | "face-expressionless" | "face-grinning" | "face-neutral" | "face-slightly-frowning" | "face-slightly-smiling" | "face-slightly-smiling-plus" | "factory" | "fan" | "fast-forward" | "faucet" | "feather" | "fence" | "ferris-wheel" | "file" | "file-archive" | "file-axis-3d" | "file-badge" | "file-box" | "file-braces" | "file-braces-corner" | "file-chart-column" | "file-chart-column-increasing" | "file-chart-line" | "file-chart-pie" | "file-check" | "file-check-corner" | "file-clock" | "file-code" | "file-code-corner" | "file-cog" | "file-diff" | "file-digit" | "file-down" | "file-exclamation-point" | "file-headphone" | "file-heart" | "file-image" | "file-input" | "file-key" | "file-lock" | "file-minus" | "file-minus-corner" | "file-music" | "file-output" | "file-pen" | "file-pen-line" | "file-play" | "file-plus" | "file-plus-corner" | "file-question-mark" | "file-scan" | "file-search" | "file-search-corner" | "file-signal" | "file-sliders" | "file-spreadsheet" | "file-stack" | "file-symlink" | "file-terminal" | "file-text" | "file-type" | "file-type-corner" | "file-up" | "file-user" | "file-video-camera" | "file-volume" | "file-x" | "file-x-corner" | "files" | "film" | "fingerprint-pattern" | "fire-extinguisher" | "fish" | "fish-off" | "fish-symbol" | "fishing-hook" | "fishing-rod" | "flag" | "flag-off" | "flag-triangle-left" | "flag-triangle-right" | "flame" | "flame-kindling" | "flashlight" | "flashlight-off" | "flask-conical" | "flask-conical-off" | "flask-round" | "flower" | "flower-2" | "fold-horizontal" | "fold-vertical" | "folder" | "folder-archive" | "folder-bookmark" | "folder-check" | "folder-clock" | "folder-closed" | "folder-code" | "folder-cog" | "folder-dot" | "folder-down" | "folder-git" | "folder-git-2" | "folder-heart" | "folder-input" | "folder-kanban" | "folder-key" | "folder-lock" | "folder-minus" | "folder-open" | "folder-open-dot" | "folder-output" | "folder-pen" | "folder-plus" | "folder-root" | "folder-search" | "folder-search-2" | "folder-symlink" | "folder-sync" | "folder-tree" | "folder-up" | "folder-user" | "folder-users" | "folder-x" | "folders" | "footprints" | "forklift" | "forward" | "frame" | "fuel" | "fullscreen" | "funnel" | "funnel-plus" | "funnel-x" | "galaxy" | "gallery-horizontal" | "gallery-horizontal-end" | "gallery-thumbnails" | "gallery-vertical" | "gallery-vertical-end" | "gamepad" | "gamepad-2" | "gamepad-directional" | "gap-horizontal" | "gap-vertical" | "gauge" | "gavel" | "gem" | "georgian-lari" | "germ" | "germ-off" | "gift" | "git-branch" | "git-branch-minus" | "git-branch-plus" | "git-commit-horizontal" | "git-commit-vertical" | "git-compare" | "git-compare-arrows" | "git-fork" | "git-graph" | "git-merge" | "git-merge-conflict" | "git-pull-request" | "git-pull-request-arrow" | "git-pull-request-closed" | "git-pull-request-create" | "git-pull-request-create-arrow" | "git-pull-request-draft" | "glass-water" | "glasses" | "globe" | "globe-check" | "globe-code" | "globe-lock" | "globe-off" | "globe-x" | "goal" | "gpu" | "graduation-cap" | "grape" | "graph-hub" | "graph-star" | "grid-2x2" | "grid-2x2-check" | "grid-2x2-plus" | "grid-2x2-x" | "grid-3x2" | "grid-3x3" | "grip" | "grip-horizontal" | "grip-vertical" | "groceries" | "group" | "guitar" | "guitar-electric" | "half-note" | "ham" | "hamburger" | "hammer" | "hand" | "hand-coins" | "hand-fist" | "hand-grab" | "hand-heart" | "hand-helping" | "hand-metal" | "hand-platter" | "handbag" | "handle-bottom-right" | "handshake" | "hard-drive" | "hard-drive-download" | "hard-drive-upload" | "hard-hat" | "hash" | "hat-glasses" | "haze" | "hd" | "hdmi-port" | "heading-1" | "heading-2" | "heading-3" | "heading-4" | "heading-5" | "heading-6" | "headphone-off" | "headphones" | "headset" | "heart" | "heart-crack" | "heart-handshake" | "heart-minus" | "heart-off" | "heart-plus" | "heart-pulse" | "heart-x" | "heater" | "helicopter" | "hexagon" | "highlighter" | "hiking-stick" | "hockey-stick" | "hop" | "hop-off" | "hospital" | "hot-air-balloon" | "hotel" | "hourglass" | "hourglass-cog" | "house" | "house-cog" | "house-heart" | "house-plug" | "house-plus" | "house-wifi" | "houses" | "ice-cream-bowl" | "ice-cream-cone" | "id-card" | "id-card-lanyard" | "image" | "image-down" | "image-minus" | "image-off" | "image-play" | "image-plus" | "image-up" | "image-upscale" | "images" | "import" | "inbox" | "indian-rupee" | "infinity" | "info" | "inspection-panel" | "italic" | "iteration-ccw" | "iteration-cw" | "iv-bag" | "japanese-yen" | "joystick" | "kanban" | "kayak" | "kazakh-tenge" | "key-round" | "key-square" | "keyboard" | "keyboard-music" | "keyboard-off" | "lambda" | "lamp" | "lamp-ceiling" | "lamp-desk" | "lamp-floor" | "lamp-wall-down" | "lamp-wall-up" | "land-plot" | "landmark" | "languages" | "laptop" | "laptop-minimal" | "laptop-minimal-check" | "laser" | "lasso" | "lasso-select" | "layer-arrow-down" | "layer-arrow-up" | "layers" | "layers-2" | "layers-arrow-down" | "layers-arrow-up" | "layers-minus" | "layers-plus" | "layout-arrow-down" | "layout-arrow-right" | "layout-dashboard" | "layout-freeform" | "layout-grid" | "layout-grid-circles" | "layout-list" | "layout-panel-left" | "layout-panel-top" | "layout-template" | "leaf" | "leafy-green" | "lectern" | "lens" | "lens-concave" | "lens-convex" | "letter-a" | "letter-b" | "letter-c" | "letter-d" | "letter-e" | "letter-f" | "letter-g" | "letter-h" | "letter-i" | "letter-j" | "letter-k" | "letter-l" | "letter-m" | "letter-n" | "letter-o" | "letter-p" | "letter-q" | "letter-r" | "letter-s" | "letter-spacing" | "letter-t" | "letter-u" | "letter-v" | "letter-w" | "letter-x" | "letter-y" | "letter-z" | "letters" | "library" | "library-big" | "life-buoy" | "ligature" | "lightbulb" | "lightbulb-off" | "lighthouse" | "line-dot-bottom-vertical" | "line-dot-left-horizontal" | "line-dot-right-horizontal" | "line-dot-top-vertical" | "line-height" | "line-squiggle" | "line-style" | "link-2" | "link-2-off" | "list" | "list-check" | "list-checks" | "list-chevrons-down-up" | "list-chevrons-up-down" | "list-clock" | "list-collapse" | "list-end" | "list-filter" | "list-filter-plus" | "list-indent-decrease" | "list-indent-increase" | "list-minus" | "list-music" | "list-ordered" | "list-plus" | "list-restart" | "list-sort-ascending" | "list-sort-descending" | "list-start" | "list-todo" | "list-tree" | "list-video" | "list-x" | "loader" | "loader-circle" | "loader-pinwheel" | "locate" | "locate-fixed" | "locate-off" | "lock" | "lock-keyhole" | "lock-keyhole-open" | "lock-open" | "log-in" | "log-out" | "logs" | "lollipop" | "luggage" | "magnet" | "mail" | "mail-badge" | "mail-check" | "mail-clock" | "mail-dot" | "mail-minus" | "mail-open" | "mail-pen" | "mail-plus" | "mail-question-mark" | "mail-search" | "mail-warning" | "mail-x" | "mailbox" | "mails" | "map-minus" | "map-pin" | "map-pin-check" | "map-pin-check-inside" | "map-pin-house" | "map-pin-minus" | "map-pin-minus-inside" | "map-pin-off" | "map-pin-pen" | "map-pin-plus" | "map-pin-plus-inside" | "map-pin-search" | "map-pin-x" | "map-pin-x-inside" | "map-pinned" | "map-plus" | "mars" | "mars-stroke" | "martini" | "maximize" | "maximize-2" | "medal" | "megaphone" | "megaphone-off" | "memory-stick" | "merge" | "message-circle" | "message-circle-check" | "message-circle-code" | "message-circle-dashed" | "message-circle-dashed-check" | "message-circle-heart" | "message-circle-more" | "message-circle-off" | "message-circle-plus" | "message-circle-question-mark" | "message-circle-reply" | "message-circle-text" | "message-circle-warning" | "message-circle-x" | "message-square" | "message-square-check" | "message-square-code" | "message-square-dashed" | "message-square-diff" | "message-square-dot" | "message-square-heart" | "message-square-lock" | "message-square-more" | "message-square-off" | "message-square-plus" | "message-square-quote" | "message-square-reply" | "message-square-share" | "message-square-text" | "message-square-warning" | "message-square-x" | "messages-circle" | "messages-square" | "metronome" | "mic" | "mic-audio-lines" | "mic-off" | "mic-signal" | "mic-vocal" | "microchip" | "microscope" | "microwave" | "midi-port" | "milestone" | "milk" | "milk-off" | "minimize" | "minimize-2" | "minus" | "mirror-rectangular" | "mirror-round" | "monitor" | "monitor-check" | "monitor-cloud" | "monitor-cog" | "monitor-dot" | "monitor-down" | "monitor-off" | "monitor-pause" | "monitor-pc" | "monitor-play" | "monitor-smartphone" | "monitor-speaker" | "monitor-stop" | "monitor-up" | "monitor-x" | "moon" | "moon-star" | "mop" | "mop-sparkles" | "mosque" | "motorbike" | "mountain" | "mountain-snow" | "mouse" | "mouse-left" | "mouse-off" | "mouse-pointer" | "mouse-pointer-2" | "mouse-pointer-2-off" | "mouse-pointer-ban" | "mouse-pointer-click" | "mouse-right" | "mouth" | "mouth-off" | "move" | "move-3d" | "move-diagonal" | "move-diagonal-2" | "move-down" | "move-down-left" | "move-down-right" | "move-horizontal" | "move-left" | "move-right" | "move-up" | "move-up-left" | "move-up-right" | "move-vertical" | "navigation" | "navigation-2" | "navigation-2-off" | "navigation-off" | "nepali-rupee" | "network" | "newspaper" | "nfc" | "non-binary" | "notebook" | "notebook-dot" | "notebook-pen" | "notebook-tabs" | "notebook-text" | "notepad-text" | "notepad-text-dashed" | "numbers" | "nut" | "nut-off" | "octagon" | "octagon-alert" | "octagon-minus" | "octagon-pause" | "octagon-x" | "omega" | "orbit" | "origami" | "package" | "package-2" | "package-check" | "package-minus" | "package-open" | "package-plus" | "package-search" | "package-x" | "paint-bucket" | "paint-roller" | "paintbrush" | "paintbrush-vertical" | "palette" | "panda" | "panel-bottom" | "panel-bottom-close" | "panel-bottom-dashed" | "panel-bottom-open" | "panel-left" | "panel-left-close" | "panel-left-dashed" | "panel-left-open" | "panel-left-right-dashed" | "panel-right" | "panel-right-close" | "panel-right-dashed" | "panel-right-open" | "panel-top" | "panel-top-bottom-dashed" | "panel-top-close" | "panel-top-dashed" | "panel-top-open" | "panels-left-bottom" | "panels-right-bottom" | "panels-top-left" | "paper-bag" | "paperclip" | "parasol" | "parentheses" | "park" | "parking-meter" | "party-popper" | "paw-print" | "pc-case" | "pen" | "pen-line" | "pen-off" | "pen-tool" | "pencil" | "pencil-line" | "pencil-off" | "pencil-ruler" | "pencil-sparkles" | "pentagon" | "percent" | "perfume-bottle" | "person-standing" | "phi" | "philippine-peso" | "phone" | "phone-call" | "phone-forwarded" | "phone-incoming" | "phone-log" | "phone-missed" | "phone-off" | "phone-outgoing" | "pi" | "piano" | "pickaxe" | "picture-in-picture" | "picture-in-picture-2" | "piggy-bank" | "pilcrow" | "pilcrow-left" | "pilcrow-right" | "pill" | "pill-bottle" | "pin" | "pin-off" | "pipette" | "pizza" | "plane" | "plane-landing" | "plane-takeoff" | "plant-pot" | "play-off" | "playing-card" | "playing-cards" | "playing-cards-fan" | "plug" | "plug-2" | "plug-zap" | "plus" | "pocket-knife" | "podium" | "pointer" | "pointer-off" | "popcorn" | "popsicle" | "pound-sterling" | "power" | "power-off" | "presentation" | "printer" | "printer-3d" | "printer-check" | "printer-x" | "projector" | "proportions" | "puzzle" | "pyramid" | "qr-code" | "quote" | "rabbit" | "radar" | "radiation" | "radical" | "radio" | "radio-off" | "radio-receiver" | "radio-tower" | "rainbow" | "rat" | "ratio" | "receipt" | "receipt-cent" | "receipt-euro" | "receipt-indian-rupee" | "receipt-japanese-yen" | "receipt-pound-sterling" | "receipt-russian-ruble" | "receipt-swiss-franc" | "receipt-text" | "receipt-turkish-lira" | "rectangle-circle" | "rectangle-ellipsis" | "rectangle-goggles" | "rectangle-horizontal" | "rectangle-vertical" | "recycle" | "redo" | "redo-2" | "redo-dot" | "refresh-ccw" | "refresh-ccw-dot" | "refresh-cw" | "refresh-cw-off" | "refrigerator" | "regex" | "remove-formatting" | "repeat-1" | "repeat-2" | "repeat-off" | "replace-all" | "reply" | "reply-all" | "rewind" | "ribbon" | "road" | "robot-arm" | "robot-vacuum" | "rocket" | "rocking-chair" | "roller-coaster" | "rose" | "rotate-3d" | "rotate-ccw" | "rotate-ccw-clock" | "rotate-ccw-key" | "rotate-ccw-square" | "rotate-cw" | "rotate-cw-clock" | "rotate-cw-fading-clock" | "rotate-cw-square" | "route" | "route-off" | "router" | "rows-2" | "rows-3" | "rows-4" | "rss" | "rugby-ball" | "ruler" | "ruler-dimension-line" | "russian-ruble" | "sailboat" | "salad" | "sandwich" | "satellite" | "satellite-dish" | "saudi-riyal" | "save" | "save-all" | "save-check" | "save-off" | "save-pen" | "save-plus" | "scale" | "scale-3d" | "scaling" | "scan" | "scan-barcode" | "scan-box" | "scan-eye" | "scan-face" | "scan-heart" | "scan-line" | "scan-qr-code" | "scan-search" | "scan-square" | "scan-text" | "school" | "scissors" | "scissors-line-dashed" | "scooter" | "scratch-blocks" | "screen-share" | "screen-share-off" | "screw" | "scroll-text" | "search-alert" | "search-check" | "search-code" | "search-slash" | "search-x" | "send" | "send-horizontal" | "send-to-back" | "separator-horizontal" | "separator-vertical" | "server" | "server-cog" | "server-crash" | "server-nas" | "server-off" | "server-plus" | "settings" | "settings-2" | "shapes" | "share" | "share-2" | "sheet" | "shell" | "shelving-unit" | "shield" | "shield-alert" | "shield-ban" | "shield-check" | "shield-cog" | "shield-cog-corner" | "shield-ellipsis" | "shield-half" | "shield-house" | "shield-keyhole" | "shield-lock" | "shield-minus" | "shield-off" | "shield-plus" | "shield-question-mark" | "shield-user" | "shield-x" | "ship" | "ship-cargo" | "ship-wheel" | "shirt" | "shopping-bag" | "shopping-basket" | "shopping-cart" | "shopping-cart-minus" | "shopping-cart-plus" | "shovel" | "shower-head" | "shredder" | "shrimp" | "shrimp-off" | "shrub" | "shuffle" | "sigma" | "signal" | "signal-high" | "signal-low" | "signal-medium" | "signal-zero" | "signature" | "signpost" | "signpost-big" | "siren" | "siren-off" | "sixteenth-notes" | "skip-back" | "skip-forward" | "skull" | "slash" | "sliders-horizontal" | "sliders-vertical" | "smartphone" | "smartphone-charging" | "smartphone-nfc" | "smartphone-user-round" | "snail" | "snowflake" | "soap-dispenser-droplet" | "sofa" | "solar-panel" | "soup" | "space" | "spade" | "sparkle" | "sparkles" | "speaker" | "speech" | "spell-check" | "spell-check-2" | "spline" | "spline-pointer" | "spool" | "sport-shoe" | "spotlight" | "spray-can" | "sprout" | "square" | "square-activity" | "square-arrow-down" | "square-arrow-down-left" | "square-arrow-down-right" | "square-arrow-left" | "square-arrow-out-down-left" | "square-arrow-out-down-right" | "square-arrow-out-up-left" | "square-arrow-out-up-right" | "square-arrow-right" | "square-arrow-right-enter" | "square-arrow-right-exit" | "square-arrow-up" | "square-arrow-up-left" | "square-arrow-up-right" | "square-asterisk" | "square-bookmark" | "square-bottom-dashed-scissors" | "square-centerline-dashed-horizontal" | "square-centerline-dashed-vertical" | "square-chart-gantt" | "square-check" | "square-check-big" | "square-chevron-down" | "square-chevron-left" | "square-chevron-right" | "square-chevron-up" | "square-chevrons-down" | "square-chevrons-left" | "square-chevrons-right" | "square-chevrons-up" | "square-code" | "square-dashed" | "square-dashed-bottom" | "square-dashed-bottom-code" | "square-dashed-kanban" | "square-dashed-mouse-pointer" | "square-dashed-plus" | "square-dashed-text" | "square-dashed-top-solid" | "square-dashed-x" | "square-dashed-x-corner" | "square-dimensions" | "square-divide" | "square-dot" | "square-equal" | "square-exclamation-point" | "square-function" | "square-kanban" | "square-kanban-plus" | "square-letter-a" | "square-letter-b" | "square-letter-c" | "square-letter-d" | "square-letter-e" | "square-letter-f" | "square-letter-g" | "square-letter-h" | "square-letter-i" | "square-letter-j" | "square-letter-k" | "square-letter-l" | "square-letter-m" | "square-letter-n" | "square-letter-o" | "square-letter-p" | "square-letter-p-off" | "square-letter-q" | "square-letter-r" | "square-letter-s" | "square-letter-t" | "square-letter-u" | "square-letter-v" | "square-letter-w" | "square-letter-x" | "square-letter-y" | "square-letter-z" | "square-library" | "square-menu" | "square-minus" | "square-mouse-pointer" | "square-off" | "square-pause" | "square-pen" | "square-percent" | "square-pi" | "square-pilcrow" | "square-play" | "square-plus" | "square-power" | "square-radical" | "square-round-corner" | "square-scissors" | "square-sigma" | "square-slash" | "square-sparkles" | "square-split-horizontal" | "square-split-vertical" | "square-square" | "square-stack" | "square-star" | "square-stop" | "square-terminal" | "square-text" | "square-user" | "square-user-round" | "square-x" | "squares-exclude" | "squares-intersect" | "squares-subtract" | "squares-unite" | "squircle" | "squircle-dashed" | "squirrel" | "stamp" | "star" | "star-check" | "star-half" | "star-minus" | "star-off" | "star-plus" | "star-x" | "step-back" | "step-forward" | "stethoscope" | "sticker" | "sticky-note" | "sticky-note-check" | "sticky-note-minus" | "sticky-note-off" | "sticky-note-plus" | "sticky-note-x" | "sticky-notes" | "stone" | "store" | "stretch-horizontal" | "stretch-vertical" | "strikethrough" | "subscript" | "sun" | "sun-dim" | "sun-medium" | "sun-moon" | "sun-snow" | "sunrise" | "sunset" | "superscript" | "swatch-book" | "swiss-franc" | "switch-camera" | "sword" | "swords" | "syringe" | "table-2" | "table-cells-merge" | "table-cells-split" | "table-columns-split" | "table-of-contents" | "table-properties" | "table-rows-split" | "tablet" | "tablet-smartphone" | "tablets" | "tag" | "tag-plus" | "tag-x" | "tags" | "tally-1" | "tally-2" | "tally-3" | "tally-4" | "tally-5" | "tangent" | "target" | "telescope" | "tent" | "tent-tree" | "terminal" | "test-tube" | "test-tube-diagonal" | "test-tubes" | "text-align-center" | "text-align-end" | "text-align-justify" | "text-align-justify-center" | "text-align-justify-end" | "text-align-justify-start" | "text-align-start" | "text-cursor" | "text-cursor-input" | "text-initial" | "text-quote" | "text-search" | "text-wrap" | "theater" | "thermometer" | "thermometer-snowflake" | "thermometer-sun" | "thumbs-down" | "thumbs-up" | "tic-tac-toe" | "ticket" | "ticket-check" | "ticket-minus" | "ticket-percent" | "ticket-plus" | "ticket-slash" | "ticket-x" | "tickets" | "tickets-plane" | "timeline" | "timer" | "timer-off" | "timer-reset" | "toggle-left" | "toggle-right" | "toilet" | "tombstone" | "tool-case" | "toolbox" | "toothbrush" | "toothbrush-sparkles" | "tornado" | "torus" | "touchpad" | "touchpad-off" | "towel-rack" | "tower-control" | "toy-brick" | "tractor" | "traffic-cone" | "trailer" | "train-front" | "train-front-tunnel" | "train-track" | "tram-front" | "transgender" | "trash" | "trash-off" | "tree-deciduous" | "tree-palm" | "tree-pine" | "trees" | "trending-down" | "trending-up" | "trending-up-down" | "triangle" | "triangle-alert" | "triangle-dashed" | "triangle-right" | "triangles-centerline-dashed-horizontal" | "triangles-centerline-dashed-vertical" | "trophy" | "truck" | "truck-electric" | "tube-lotion" | "turkish-lira" | "turntable" | "turtle" | "tv" | "tv-minimal" | "tv-minimal-play" | "type-outline" | "umbrella" | "umbrella-off" | "underline" | "undo" | "undo-2" | "undo-dot" | "unfold-horizontal" | "unfold-vertical" | "ungroup" | "university" | "unlink" | "unlink-2" | "unplug" | "upload" | "usb" | "usb-c-port" | "user" | "user-check" | "user-cog" | "user-group" | "user-key" | "user-lock" | "user-minus" | "user-pen" | "user-plus" | "user-round" | "user-round-arrow-left" | "user-round-check" | "user-round-cog" | "user-round-group" | "user-round-key" | "user-round-minus" | "user-round-pen" | "user-round-plus" | "user-round-search" | "user-round-shield" | "user-round-star" | "user-round-x" | "user-search" | "user-shield" | "user-star" | "user-x" | "users" | "users-collaboration" | "users-round" | "users-round-collaboration" | "utensils" | "utensils-crossed" | "utility-pole" | "van" | "variable" | "vault" | "vector-polygon" | "vector-square" | "vegan" | "venetian-mask" | "venus" | "venus-and-mars" | "vibrate" | "vibrate-off" | "video-off" | "videotape" | "view" | "virus" | "virus-off" | "voicemail" | "volleyball" | "volume" | "volume-1" | "volume-2" | "volume-off" | "volume-x" | "vote" | "wallet" | "wallet-cards" | "wallet-minimal" | "wallpaper" | "wand" | "wand-sparkles" | "warehouse" | "washing-machine" | "waves-arrow-down" | "waves-arrow-up" | "waves-horizontal" | "waves-ladder" | "waves-vertical" | "waypoints" | "webcam" | "webcam-off" | "webhook" | "webhook-off" | "weight" | "weight-tilde" | "wheat-off" | "whistle" | "whole-word" | "wifi" | "wifi-cog" | "wifi-high" | "wifi-lock" | "wifi-low" | "wifi-off" | "wifi-pen" | "wifi-sync" | "wifi-zero" | "wind" | "wind-arrow-down" | "wind-arrow-up" | "wine" | "wine-off" | "workflow" | "worm" | "wrench" | "wrench-off" | "x" | "x-line-top" | "zap" | "zap-off" | "zodiac-aquarius" | "zodiac-aries" | "zodiac-cancer" | "zodiac-capricorn" | "zodiac-gemini" | "zodiac-leo" | "zodiac-libra" | "zodiac-ophiuchus" | "zodiac-pisces" | "zodiac-sagittarius" | "zodiac-scorpio" | "zodiac-taurus" | "zodiac-virgo" | "zoom-in" | "zoom-out";
119
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
120
+ //# sourceMappingURL=MButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MButton.d.ts","sourceRoot":"","sources":["../../src/components/MButton.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4EA4FlB,CAAA"}
@@ -0,0 +1,86 @@
1
+ import { defineComponent, h, mergeProps } from 'vue';
2
+ import { buttonProps, useMavisTheme, actionEmits, textContent, useDefaultShrink, viewAttrs, } from '@getcortexlabs/mavis-core/vue';
3
+ import { nonNegative, iconGlyph, iconFontFamily, iconSizes, checkIconOnly, } from '@getcortexlabs/mavis-core';
4
+ import { webAttrs } from '../style.js';
5
+ export const MButton = defineComponent({
6
+ name: 'MButton',
7
+ inheritAttrs: false,
8
+ props: buttonProps,
9
+ emits: actionEmits,
10
+ setup(props, { attrs, slots, emit }) {
11
+ const { theme } = useMavisTheme();
12
+ const shrink = useDefaultShrink();
13
+ return () => {
14
+ const { colors, control, radius, motion } = theme.value;
15
+ const size = control[props.size];
16
+ const primary = props.variant === 'primary';
17
+ const text = props.loading
18
+ ? props.loadingText
19
+ : (props.text ?? textContent(slots.default?.()));
20
+ const hasIcon = Boolean(props.icon || props.trailingIcon);
21
+ checkIconOnly(text, hasIcon, props.accessibilityLabel);
22
+ const iconSize = iconSizes[props.size];
23
+ const paddingX = hasIcon && !text ? Math.round((size.height - iconSize) / 2) : size.padding;
24
+ const span = (name) => name
25
+ ? h('span', {
26
+ class: 'm-icon',
27
+ 'aria-hidden': 'true',
28
+ style: {
29
+ fontFamily: iconFontFamily,
30
+ fontSize: `${iconSize}px`,
31
+ width: `${iconSize}px`,
32
+ height: `${iconSize}px`,
33
+ lineHeight: 1,
34
+ display: 'inline-flex',
35
+ alignItems: 'center',
36
+ justifyContent: 'center',
37
+ flexShrink: 0,
38
+ },
39
+ }, iconGlyph(name))
40
+ : null;
41
+ return h('button', mergeProps({
42
+ class: 'm-button',
43
+ style: {
44
+ boxSizing: 'border-box',
45
+ display: 'inline-flex',
46
+ alignItems: 'center',
47
+ justifyContent: 'center',
48
+ gap: hasIcon ? '8px' : undefined,
49
+ minHeight: `${size.height}px`,
50
+ padding: `12px ${paddingX}px`,
51
+ fontSize: `${size.fontSize}px`,
52
+ fontWeight: 600,
53
+ fontFamily: 'inherit',
54
+ lineHeight: 1.3,
55
+ backgroundColor: primary
56
+ ? colors.primary
57
+ : props.variant === 'secondary'
58
+ ? colors.elevated
59
+ : 'transparent',
60
+ color: primary ? colors.onPrimary : colors.text,
61
+ borderRadius: `${radius.md}px`,
62
+ border: 0,
63
+ margin: 0,
64
+ opacity: props.disabled ? 0.45 : 1,
65
+ flexGrow: nonNegative(props.grow, 'grow'),
66
+ flexShrink: nonNegative(props.shrink ?? shrink, 'shrink'),
67
+ minWidth: '44px',
68
+ '--m-press-scale': motion.pressScale,
69
+ '--m-focus': colors.primary,
70
+ },
71
+ }, webAttrs({ ...attrs, ...viewAttrs(props) }), {
72
+ type: 'button',
73
+ disabled: props.disabled,
74
+ 'aria-disabled': props.disabled || props.loading || undefined,
75
+ 'aria-busy': props.loading || undefined,
76
+ onClick: () => {
77
+ if (!props.disabled && !props.loading)
78
+ emit('click');
79
+ },
80
+ }), hasIcon
81
+ ? [span(props.icon), text ? h('span', {}, text) : null, span(props.trailingIcon)]
82
+ : text);
83
+ };
84
+ },
85
+ });
86
+ //# sourceMappingURL=MButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MButton.js","sourceRoot":"","sources":["../../src/components/MButton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AACpD,OAAO,EACL,WAAW,EACX,aAAa,EACb,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,SAAS,GACV,MAAM,+BAA+B,CAAA;AACtC,OAAO,EACL,WAAW,EACX,SAAS,EACT,cAAc,EACd,SAAS,EACT,aAAa,GACd,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEtC,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAC;IACrC,IAAI,EAAE,SAAS;IACf,YAAY,EAAE,KAAK;IACnB,KAAK,EAAE,WAAW;IAClB,KAAK,EAAE,WAAW;IAClB,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;QACjC,MAAM,EAAE,KAAK,EAAE,GAAG,aAAa,EAAE,CAAA;QACjC,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAA;QACjC,OAAO,GAAG,EAAE;YACV,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAA;YACvD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAChC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,KAAK,SAAS,CAAA;YAC3C,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO;gBACxB,CAAC,CAAC,KAAK,CAAC,WAAW;gBACnB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;YAClD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,YAAY,CAAC,CAAA;YACzD,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAA;YACtD,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACtC,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAA;YAC3F,MAAM,IAAI,GAAG,CAAC,IAAuB,EAAE,EAAE,CACvC,IAAI;gBACF,CAAC,CAAC,CAAC,CACC,MAAM,EACN;oBACE,KAAK,EAAE,QAAQ;oBACf,aAAa,EAAE,MAAM;oBACrB,KAAK,EAAE;wBACL,UAAU,EAAE,cAAc;wBAC1B,QAAQ,EAAE,GAAG,QAAQ,IAAI;wBACzB,KAAK,EAAE,GAAG,QAAQ,IAAI;wBACtB,MAAM,EAAE,GAAG,QAAQ,IAAI;wBACvB,UAAU,EAAE,CAAC;wBACb,OAAO,EAAE,aAAa;wBACtB,UAAU,EAAE,QAAQ;wBACpB,cAAc,EAAE,QAAQ;wBACxB,UAAU,EAAE,CAAC;qBACd;iBACF,EACD,SAAS,CAAC,IAAI,CAAC,CAChB;gBACH,CAAC,CAAC,IAAI,CAAA;YACV,OAAO,CAAC,CACN,QAAQ,EACR,UAAU,CACR;gBACE,KAAK,EAAE,UAAU;gBACjB,KAAK,EAAE;oBACL,SAAS,EAAE,YAAY;oBACvB,OAAO,EAAE,aAAa;oBACtB,UAAU,EAAE,QAAQ;oBACpB,cAAc,EAAE,QAAQ;oBACxB,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;oBAChC,SAAS,EAAE,GAAG,IAAI,CAAC,MAAM,IAAI;oBAC7B,OAAO,EAAE,QAAQ,QAAQ,IAAI;oBAC7B,QAAQ,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI;oBAC9B,UAAU,EAAE,GAAG;oBACf,UAAU,EAAE,SAAS;oBACrB,UAAU,EAAE,GAAG;oBACf,eAAe,EAAE,OAAO;wBACtB,CAAC,CAAC,MAAM,CAAC,OAAO;wBAChB,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,WAAW;4BAC7B,CAAC,CAAC,MAAM,CAAC,QAAQ;4BACjB,CAAC,CAAC,aAAa;oBACnB,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI;oBAC/C,YAAY,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI;oBAC9B,MAAM,EAAE,CAAC;oBACT,MAAM,EAAE,CAAC;oBACT,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAClC,QAAQ,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;oBACzC,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,MAAM,IAAI,MAAM,EAAE,QAAQ,CAAC;oBACzD,QAAQ,EAAE,MAAM;oBAChB,iBAAiB,EAAE,MAAM,CAAC,UAAU;oBACpC,WAAW,EAAE,MAAM,CAAC,OAAO;iBAC5B;aACF,EACD,QAAQ,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,EAC3C;gBACE,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,eAAe,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,IAAI,SAAS;gBAC7D,WAAW,EAAE,KAAK,CAAC,OAAO,IAAI,SAAS;gBACvC,OAAO,EAAE,GAAG,EAAE;oBACZ,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO;wBAAE,IAAI,CAAC,OAAO,CAAC,CAAA;gBACtD,CAAC;aACF,CACF,EACD,OAAO;gBACL,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBACjF,CAAC,CAAC,IAAI,CACT,CAAA;QACH,CAAC,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}