@fluencypassdevs/cycle 0.1.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/README.md +36 -0
  2. package/dist/chunk-2MXR6RRJ.js +106 -0
  3. package/dist/chunk-2MXR6RRJ.js.map +1 -0
  4. package/dist/chunk-2WPH3IQP.js +48 -0
  5. package/dist/chunk-2WPH3IQP.js.map +1 -0
  6. package/dist/chunk-3LXU5C35.js +68 -0
  7. package/dist/chunk-3LXU5C35.js.map +1 -0
  8. package/dist/chunk-6LML23MS.js +347 -0
  9. package/dist/chunk-6LML23MS.js.map +1 -0
  10. package/dist/chunk-726XFHED.js +22 -0
  11. package/dist/chunk-726XFHED.js.map +1 -0
  12. package/dist/chunk-7UMEJDC3.js +62 -0
  13. package/dist/chunk-7UMEJDC3.js.map +1 -0
  14. package/dist/chunk-7XT6ISPQ.js +97 -0
  15. package/dist/chunk-7XT6ISPQ.js.map +1 -0
  16. package/dist/chunk-AL2ALTBH.js +115 -0
  17. package/dist/chunk-AL2ALTBH.js.map +1 -0
  18. package/dist/chunk-CIM6KJH5.js +59 -0
  19. package/dist/chunk-CIM6KJH5.js.map +1 -0
  20. package/dist/chunk-CSL4DRPW.js +39 -0
  21. package/dist/chunk-CSL4DRPW.js.map +1 -0
  22. package/dist/chunk-HZJRM5EK.js +97 -0
  23. package/dist/chunk-HZJRM5EK.js.map +1 -0
  24. package/dist/chunk-IJTNFN6N.js +61 -0
  25. package/dist/chunk-IJTNFN6N.js.map +1 -0
  26. package/dist/chunk-K567KZD5.js +63 -0
  27. package/dist/chunk-K567KZD5.js.map +1 -0
  28. package/dist/chunk-MSLQRGSP.js +113 -0
  29. package/dist/chunk-MSLQRGSP.js.map +1 -0
  30. package/dist/chunk-NGOZFA33.js +60 -0
  31. package/dist/chunk-NGOZFA33.js.map +1 -0
  32. package/dist/chunk-NVA4ZJOS.js +66 -0
  33. package/dist/chunk-NVA4ZJOS.js.map +1 -0
  34. package/dist/chunk-OT2HCBR2.js +37 -0
  35. package/dist/chunk-OT2HCBR2.js.map +1 -0
  36. package/dist/chunk-PM6ZUCMQ.js +73 -0
  37. package/dist/chunk-PM6ZUCMQ.js.map +1 -0
  38. package/dist/chunk-PXWCEJ2C.js +223 -0
  39. package/dist/chunk-PXWCEJ2C.js.map +1 -0
  40. package/dist/chunk-QTL6W4I2.js +57 -0
  41. package/dist/chunk-QTL6W4I2.js.map +1 -0
  42. package/dist/chunk-QZVQPUVT.js +129 -0
  43. package/dist/chunk-QZVQPUVT.js.map +1 -0
  44. package/dist/chunk-R4LITCVX.js +111 -0
  45. package/dist/chunk-R4LITCVX.js.map +1 -0
  46. package/dist/chunk-TYCPXAXF.js +10 -0
  47. package/dist/chunk-TYCPXAXF.js.map +1 -0
  48. package/dist/chunk-UEJLA7Q6.js +70 -0
  49. package/dist/chunk-UEJLA7Q6.js.map +1 -0
  50. package/dist/chunk-UVCEQOQR.js +104 -0
  51. package/dist/chunk-UVCEQOQR.js.map +1 -0
  52. package/dist/chunk-VECLN5AT.js +202 -0
  53. package/dist/chunk-VECLN5AT.js.map +1 -0
  54. package/dist/chunk-XX3I65LQ.js +435 -0
  55. package/dist/chunk-XX3I65LQ.js.map +1 -0
  56. package/dist/chunk-YINJ5YZ5.js +35 -0
  57. package/dist/chunk-YINJ5YZ5.js.map +1 -0
  58. package/dist/icons/index.d.ts +617 -0
  59. package/dist/icons/index.js +5 -0
  60. package/dist/icons/index.js.map +1 -0
  61. package/dist/index.d.ts +33 -0
  62. package/dist/index.js +30 -0
  63. package/dist/index.js.map +1 -0
  64. package/dist/lib/utils.d.ts +5 -0
  65. package/dist/lib/utils.js +4 -0
  66. package/dist/lib/utils.js.map +1 -0
  67. package/dist/styles/tailwind-theme.css +87 -0
  68. package/dist/styles/tokens.css +496 -0
  69. package/dist/ui/accordion.d.ts +10 -0
  70. package/dist/ui/accordion.js +5 -0
  71. package/dist/ui/accordion.js.map +1 -0
  72. package/dist/ui/audio-player.d.ts +30 -0
  73. package/dist/ui/audio-player.js +7 -0
  74. package/dist/ui/audio-player.js.map +1 -0
  75. package/dist/ui/avatar.d.ts +16 -0
  76. package/dist/ui/avatar.js +5 -0
  77. package/dist/ui/avatar.js.map +1 -0
  78. package/dist/ui/badge.d.ts +15 -0
  79. package/dist/ui/badge.js +5 -0
  80. package/dist/ui/badge.js.map +1 -0
  81. package/dist/ui/button.d.ts +15 -0
  82. package/dist/ui/button.js +5 -0
  83. package/dist/ui/button.js.map +1 -0
  84. package/dist/ui/chat-bubble.d.ts +21 -0
  85. package/dist/ui/chat-bubble.js +6 -0
  86. package/dist/ui/chat-bubble.js.map +1 -0
  87. package/dist/ui/chat-panel.d.ts +35 -0
  88. package/dist/ui/chat-panel.js +10 -0
  89. package/dist/ui/chat-panel.js.map +1 -0
  90. package/dist/ui/checkbox.d.ts +17 -0
  91. package/dist/ui/checkbox.js +5 -0
  92. package/dist/ui/checkbox.js.map +1 -0
  93. package/dist/ui/file-card.d.ts +27 -0
  94. package/dist/ui/file-card.js +5 -0
  95. package/dist/ui/file-card.js.map +1 -0
  96. package/dist/ui/input.d.ts +11 -0
  97. package/dist/ui/input.js +5 -0
  98. package/dist/ui/input.js.map +1 -0
  99. package/dist/ui/label.d.ts +9 -0
  100. package/dist/ui/label.js +5 -0
  101. package/dist/ui/label.js.map +1 -0
  102. package/dist/ui/like-dislike.d.ts +32 -0
  103. package/dist/ui/like-dislike.js +9 -0
  104. package/dist/ui/like-dislike.js.map +1 -0
  105. package/dist/ui/live-waiting.d.ts +16 -0
  106. package/dist/ui/live-waiting.js +8 -0
  107. package/dist/ui/live-waiting.js.map +1 -0
  108. package/dist/ui/progress-stage.d.ts +19 -0
  109. package/dist/ui/progress-stage.js +5 -0
  110. package/dist/ui/progress-stage.js.map +1 -0
  111. package/dist/ui/progress.d.ts +19 -0
  112. package/dist/ui/progress.js +5 -0
  113. package/dist/ui/progress.js.map +1 -0
  114. package/dist/ui/radio-group.d.ts +19 -0
  115. package/dist/ui/radio-group.js +5 -0
  116. package/dist/ui/radio-group.js.map +1 -0
  117. package/dist/ui/scroll-area.d.ts +8 -0
  118. package/dist/ui/scroll-area.js +5 -0
  119. package/dist/ui/scroll-area.js.map +1 -0
  120. package/dist/ui/sheet.d.ts +17 -0
  121. package/dist/ui/sheet.js +5 -0
  122. package/dist/ui/sheet.js.map +1 -0
  123. package/dist/ui/slider.d.ts +16 -0
  124. package/dist/ui/slider.js +5 -0
  125. package/dist/ui/slider.js.map +1 -0
  126. package/dist/ui/switch.d.ts +16 -0
  127. package/dist/ui/switch.js +5 -0
  128. package/dist/ui/switch.js.map +1 -0
  129. package/dist/ui/tabs.d.ts +15 -0
  130. package/dist/ui/tabs.js +5 -0
  131. package/dist/ui/tabs.js.map +1 -0
  132. package/dist/ui/textarea.d.ts +12 -0
  133. package/dist/ui/textarea.js +5 -0
  134. package/dist/ui/textarea.js.map +1 -0
  135. package/dist/ui/toggle.d.ts +17 -0
  136. package/dist/ui/toggle.js +5 -0
  137. package/dist/ui/toggle.js.map +1 -0
  138. package/dist/ui/video-player.d.ts +28 -0
  139. package/dist/ui/video-player.js +7 -0
  140. package/dist/ui/video-player.js.map +1 -0
  141. package/package.json +90 -0
package/README.md ADDED
@@ -0,0 +1,36 @@
1
+ This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).
2
+
3
+ ## Getting Started
4
+
5
+ First, run the development server:
6
+
7
+ ```bash
8
+ npm run dev
9
+ # or
10
+ yarn dev
11
+ # or
12
+ pnpm dev
13
+ # or
14
+ bun dev
15
+ ```
16
+
17
+ Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
18
+
19
+ You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
20
+
21
+ This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.
22
+
23
+ ## Learn More
24
+
25
+ To learn more about Next.js, take a look at the following resources:
26
+
27
+ - [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
28
+ - [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
29
+
30
+ You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
31
+
32
+ ## Deploy on Vercel
33
+
34
+ The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
35
+
36
+ Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
@@ -0,0 +1,106 @@
1
+ import { cn } from './chunk-TYCPXAXF.js';
2
+ import { __objRest, __spreadValues } from './chunk-YINJ5YZ5.js';
3
+ import { cva } from 'class-variance-authority';
4
+ import { Tabs as Tabs$1 } from 'radix-ui';
5
+ import { jsx } from 'react/jsx-runtime';
6
+
7
+ function Tabs(_a) {
8
+ var _b = _a, {
9
+ className,
10
+ orientation = "horizontal"
11
+ } = _b, props = __objRest(_b, [
12
+ "className",
13
+ "orientation"
14
+ ]);
15
+ return /* @__PURE__ */ jsx(
16
+ Tabs$1.Root,
17
+ __spreadValues({
18
+ "data-slot": "tabs",
19
+ "data-orientation": orientation,
20
+ orientation,
21
+ className: cn(
22
+ "group/tabs flex w-full gap-2 data-[orientation=horizontal]:flex-col",
23
+ className
24
+ )
25
+ }, props)
26
+ );
27
+ }
28
+ var tabsListVariants = cva(
29
+ "group/tabs-list inline-flex w-fit items-center justify-center rounded-lg p-[3px] text-neutral-muted-foreground group-data-[orientation=horizontal]/tabs:h-9 group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col data-[variant=line]:rounded-none",
30
+ {
31
+ variants: {
32
+ variant: {
33
+ default: "bg-muted",
34
+ line: "gap-1 bg-transparent"
35
+ }
36
+ },
37
+ defaultVariants: {
38
+ variant: "default"
39
+ }
40
+ }
41
+ );
42
+ function TabsList(_a) {
43
+ var _b = _a, {
44
+ className,
45
+ variant = "default"
46
+ } = _b, props = __objRest(_b, [
47
+ "className",
48
+ "variant"
49
+ ]);
50
+ return /* @__PURE__ */ jsx(
51
+ Tabs$1.List,
52
+ __spreadValues({
53
+ "data-slot": "tabs-list",
54
+ "data-variant": variant,
55
+ className: cn(tabsListVariants({ variant }), className)
56
+ }, props)
57
+ );
58
+ }
59
+ function TabsTrigger(_a) {
60
+ var _b = _a, {
61
+ className
62
+ } = _b, props = __objRest(_b, [
63
+ "className"
64
+ ]);
65
+ return /* @__PURE__ */ jsx(
66
+ Tabs$1.Trigger,
67
+ __spreadValues({
68
+ "data-slot": "tabs-trigger",
69
+ className: cn(
70
+ "relative inline-flex h-full flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap text-neutral-muted-foreground transition-colors group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
71
+ // Hover: texto usa cor do tema (ring)
72
+ "hover:text-ring",
73
+ // Focus: ring do tema
74
+ "focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring",
75
+ // Active (default variant): fundo neutro, texto do tema, sombra fixa
76
+ "data-[state=active]:bg-background data-[state=active]:text-ring data-[state=active]:shadow-sm",
77
+ // Active (line variant): sem fundo, sem sombra
78
+ "group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:shadow-none",
79
+ // Dark mode active
80
+ "dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30",
81
+ "dark:group-data-[variant=line]/tabs-list:data-[state=active]:border-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent",
82
+ // Line indicator
83
+ "after:absolute after:bg-ring after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100",
84
+ className
85
+ )
86
+ }, props)
87
+ );
88
+ }
89
+ function TabsContent(_a) {
90
+ var _b = _a, {
91
+ className
92
+ } = _b, props = __objRest(_b, [
93
+ "className"
94
+ ]);
95
+ return /* @__PURE__ */ jsx(
96
+ Tabs$1.Content,
97
+ __spreadValues({
98
+ "data-slot": "tabs-content",
99
+ className: cn("flex-1 outline-none", className)
100
+ }, props)
101
+ );
102
+ }
103
+
104
+ export { Tabs, TabsContent, TabsList, TabsTrigger, tabsListVariants };
105
+ //# sourceMappingURL=chunk-2MXR6RRJ.js.map
106
+ //# sourceMappingURL=chunk-2MXR6RRJ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ui/tabs.tsx"],"names":["TabsPrimitive"],"mappings":";;;;;;AAQA,SAAS,KAAK,EAAA,EAIsC;AAJtC,EAAA,IAAA,EAAA,GAAA,EAAA,EACZ;AAAA,IAAA,SAAA;AAAA,IACA,WAAA,GAAc;AAAA,GAVhB,GAQc,EAAA,EAGT,KAAA,GAAA,SAAA,CAHS,EAAA,EAGT;AAAA,IAFH,WAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAGA,EAAA,uBACE,GAAA;AAAA,IAACA,MAAA,CAAc,IAAA;AAAA,IAAd,cAAA,CAAA;AAAA,MACC,WAAA,EAAU,MAAA;AAAA,MACV,kBAAA,EAAkB,WAAA;AAAA,MAClB,WAAA;AAAA,MACA,SAAA,EAAW,EAAA;AAAA,QACT,qEAAA;AAAA,QACA;AAAA;AACF,KAAA,EACI,KAAA;AAAA,GACN;AAEJ;AAEA,IAAM,gBAAA,GAAmB,GAAA;AAAA,EACvB,2RAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,UAAA;AAAA,QACT,IAAA,EAAM;AAAA;AACR,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS;AAAA;AACX;AAEJ;AAEA,SAAS,SAAS,EAAA,EAKuB;AALvB,EAAA,IAAA,EAAA,GAAA,EAAA,EAChB;AAAA,IAAA,SAAA;AAAA,IACA,OAAA,GAAU;AAAA,GA5CZ,GA0CkB,EAAA,EAGb,KAAA,GAAA,SAAA,CAHa,EAAA,EAGb;AAAA,IAFH,WAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAIA,EAAA,uBACE,GAAA;AAAA,IAACA,MAAA,CAAc,IAAA;AAAA,IAAd,cAAA,CAAA;AAAA,MACC,WAAA,EAAU,WAAA;AAAA,MACV,cAAA,EAAc,OAAA;AAAA,MACd,WAAW,EAAA,CAAG,gBAAA,CAAiB,EAAE,OAAA,EAAS,GAAG,SAAS;AAAA,KAAA,EAClD,KAAA;AAAA,GACN;AAEJ;AAEA,SAAS,YAAY,EAAA,EAGkC;AAHlC,EAAA,IAAA,EAAA,GAAA,EAAA,EACnB;AAAA,IAAA;AAAA,GA3DF,GA0DqB,EAAA,EAEhB,KAAA,GAAA,SAAA,CAFgB,EAAA,EAEhB;AAAA,IADH;AAAA,GAAA,CAAA;AAGA,EAAA,uBACE,GAAA;AAAA,IAACA,MAAA,CAAc,OAAA;AAAA,IAAd,cAAA,CAAA;AAAA,MACC,WAAA,EAAU,cAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,mbAAA;AAAA;AAAA,QAEA,iBAAA;AAAA;AAAA,QAEA,kIAAA;AAAA;AAAA,QAEA,+FAAA;AAAA;AAAA,QAEA,+LAAA;AAAA;AAAA,QAEA,4EAAA;AAAA,QACA,6JAAA;AAAA;AAAA,QAEA,4dAAA;AAAA,QACA;AAAA;AACF,KAAA,EACI,KAAA;AAAA,GACN;AAEJ;AAEA,SAAS,YAAY,EAAA,EAGkC;AAHlC,EAAA,IAAA,EAAA,GAAA,EAAA,EACnB;AAAA,IAAA;AAAA,GAxFF,GAuFqB,EAAA,EAEhB,KAAA,GAAA,SAAA,CAFgB,EAAA,EAEhB;AAAA,IADH;AAAA,GAAA,CAAA;AAGA,EAAA,uBACE,GAAA;AAAA,IAACA,MAAA,CAAc,OAAA;AAAA,IAAd,cAAA,CAAA;AAAA,MACC,WAAA,EAAU,cAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,qBAAA,EAAuB,SAAS;AAAA,KAAA,EAC1C,KAAA;AAAA,GACN;AAEJ","file":"chunk-2MXR6RRJ.js","sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\nimport { Tabs as TabsPrimitive } from \"radix-ui\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Tabs({\n className,\n orientation = \"horizontal\",\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Root>) {\n return (\n <TabsPrimitive.Root\n data-slot=\"tabs\"\n data-orientation={orientation}\n orientation={orientation}\n className={cn(\n \"group/tabs flex w-full gap-2 data-[orientation=horizontal]:flex-col\",\n className\n )}\n {...props}\n />\n )\n}\n\nconst tabsListVariants = cva(\n \"group/tabs-list inline-flex w-fit items-center justify-center rounded-lg p-[3px] text-neutral-muted-foreground group-data-[orientation=horizontal]/tabs:h-9 group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col data-[variant=line]:rounded-none\",\n {\n variants: {\n variant: {\n default: \"bg-muted\",\n line: \"gap-1 bg-transparent\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction TabsList({\n className,\n variant = \"default\",\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.List> &\n VariantProps<typeof tabsListVariants>) {\n return (\n <TabsPrimitive.List\n data-slot=\"tabs-list\"\n data-variant={variant}\n className={cn(tabsListVariants({ variant }), className)}\n {...props}\n />\n )\n}\n\nfunction TabsTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Trigger>) {\n return (\n <TabsPrimitive.Trigger\n data-slot=\"tabs-trigger\"\n className={cn(\n \"relative inline-flex h-full flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap text-neutral-muted-foreground transition-colors group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n // Hover: texto usa cor do tema (ring)\n \"hover:text-ring\",\n // Focus: ring do tema\n \"focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring\",\n // Active (default variant): fundo neutro, texto do tema, sombra fixa\n \"data-[state=active]:bg-background data-[state=active]:text-ring data-[state=active]:shadow-sm\",\n // Active (line variant): sem fundo, sem sombra\n \"group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:shadow-none\",\n // Dark mode active\n \"dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30\",\n \"dark:group-data-[variant=line]/tabs-list:data-[state=active]:border-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent\",\n // Line indicator\n \"after:absolute after:bg-ring after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TabsContent({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Content>) {\n return (\n <TabsPrimitive.Content\n data-slot=\"tabs-content\"\n className={cn(\"flex-1 outline-none\", className)}\n {...props}\n />\n )\n}\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent, tabsListVariants }\n"]}
@@ -0,0 +1,48 @@
1
+ import { cn } from './chunk-TYCPXAXF.js';
2
+ import { __objRest, __spreadValues } from './chunk-YINJ5YZ5.js';
3
+ import { jsx } from 'react/jsx-runtime';
4
+
5
+ function Textarea(_a) {
6
+ var _b = _a, {
7
+ className,
8
+ textareaSize = "default",
9
+ variant = "outline"
10
+ } = _b, props = __objRest(_b, [
11
+ "className",
12
+ "textareaSize",
13
+ "variant"
14
+ ]);
15
+ return /* @__PURE__ */ jsx(
16
+ "textarea",
17
+ __spreadValues({
18
+ "data-slot": "textarea",
19
+ "data-size": textareaSize,
20
+ "data-variant": variant,
21
+ className: cn(
22
+ // Base
23
+ "w-full min-w-0 rounded-lg text-neutral-foreground transition-[color,border-color,box-shadow,background-color] outline-none selection:bg-primary selection:text-primary-foreground placeholder:text-neutral-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
24
+ // Variant: outline
25
+ variant === "outline" && "border border-neutral-border bg-transparent shadow-xs dark:border-neutral-border dark:bg-transparent dark:shadow-none",
26
+ variant === "outline" && "hover:border-ring hover:bg-ring/5",
27
+ variant === "outline" && "focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:bg-ring/5",
28
+ // Variant: filled (mesmos tokens do Button outline: accent light, input dark)
29
+ variant === "filled" && "border border-transparent bg-neutral-accent",
30
+ variant === "filled" && "hover:border-ring hover:bg-secondary",
31
+ variant === "filled" && "focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:bg-secondary",
32
+ // Error (sempre visível, ambas variantes)
33
+ "aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-invalid:hover:border-destructive dark:aria-invalid:border-destructive dark:aria-invalid:ring-destructive/40",
34
+ // Resize
35
+ "resize-y",
36
+ // Sizes
37
+ textareaSize === "sm" && "min-h-[60px] px-3 py-2 text-sm",
38
+ textareaSize === "default" && "min-h-[80px] px-4 py-2 text-sm",
39
+ textareaSize === "lg" && "min-h-[120px] px-4 py-3 text-base",
40
+ className
41
+ )
42
+ }, props)
43
+ );
44
+ }
45
+
46
+ export { Textarea };
47
+ //# sourceMappingURL=chunk-2WPH3IQP.js.map
48
+ //# sourceMappingURL=chunk-2WPH3IQP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ui/textarea.tsx"],"names":[],"mappings":";;;;AAWA,SAAS,SAAS,EAAA,EAKA;AALA,EAAA,IAAA,EAAA,GAAA,EAAA,EAChB;AAAA,IAAA,SAAA;AAAA,IACA,YAAA,GAAe,SAAA;AAAA,IACf,OAAA,GAAU;AAAA,GAdZ,GAWkB,EAAA,EAIb,KAAA,GAAA,SAAA,CAJa,EAAA,EAIb;AAAA,IAHH,WAAA;AAAA,IACA,cAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAGA,EAAA,uBACE,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA,cAAA,CAAA;AAAA,MACC,WAAA,EAAU,UAAA;AAAA,MACV,WAAA,EAAW,YAAA;AAAA,MACX,cAAA,EAAc,OAAA;AAAA,MACd,SAAA,EAAW,EAAA;AAAA;AAAA,QAET,0SAAA;AAAA;AAAA,QAEA,YAAY,SAAA,IAAa,uHAAA;AAAA,QACzB,YAAY,SAAA,IAAa,mCAAA;AAAA,QACzB,YAAY,SAAA,IAAa,uGAAA;AAAA;AAAA,QAEzB,YAAY,QAAA,IAAY,6CAAA;AAAA,QACxB,YAAY,QAAA,IAAY,sCAAA;AAAA,QACxB,YAAY,QAAA,IAAY,0GAAA;AAAA;AAAA,QAExB,mLAAA;AAAA;AAAA,QAEA,UAAA;AAAA;AAAA,QAEA,iBAAiB,IAAA,IAAQ,gCAAA;AAAA,QACzB,iBAAiB,SAAA,IAAa,gCAAA;AAAA,QAC9B,iBAAiB,IAAA,IAAQ,mCAAA;AAAA,QACzB;AAAA;AACF,KAAA,EACI,KAAA;AAAA,GACN;AAEJ","file":"chunk-2WPH3IQP.js","sourcesContent":["import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nexport interface TextareaProps extends React.ComponentProps<\"textarea\"> {\n /** Tamanho do textarea: sm (min-h 60px), default (min-h 80px), lg (min-h 120px) */\n textareaSize?: \"sm\" | \"default\" | \"lg\"\n /** Variante visual: outline (borda) ou filled (fundo preenchido) */\n variant?: \"outline\" | \"filled\"\n}\n\nfunction Textarea({\n className,\n textareaSize = \"default\",\n variant = \"outline\",\n ...props\n}: TextareaProps) {\n return (\n <textarea\n data-slot=\"textarea\"\n data-size={textareaSize}\n data-variant={variant}\n className={cn(\n // Base\n \"w-full min-w-0 rounded-lg text-neutral-foreground transition-[color,border-color,box-shadow,background-color] outline-none selection:bg-primary selection:text-primary-foreground placeholder:text-neutral-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50\",\n // Variant: outline\n variant === \"outline\" && \"border border-neutral-border bg-transparent shadow-xs dark:border-neutral-border dark:bg-transparent dark:shadow-none\",\n variant === \"outline\" && \"hover:border-ring hover:bg-ring/5\",\n variant === \"outline\" && \"focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:bg-ring/5\",\n // Variant: filled (mesmos tokens do Button outline: accent light, input dark)\n variant === \"filled\" && \"border border-transparent bg-neutral-accent\",\n variant === \"filled\" && \"hover:border-ring hover:bg-secondary\",\n variant === \"filled\" && \"focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:bg-secondary\",\n // Error (sempre visível, ambas variantes)\n \"aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-invalid:hover:border-destructive dark:aria-invalid:border-destructive dark:aria-invalid:ring-destructive/40\",\n // Resize\n \"resize-y\",\n // Sizes\n textareaSize === \"sm\" && \"min-h-[60px] px-3 py-2 text-sm\",\n textareaSize === \"default\" && \"min-h-[80px] px-4 py-2 text-sm\",\n textareaSize === \"lg\" && \"min-h-[120px] px-4 py-3 text-base\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Textarea }\n"]}
@@ -0,0 +1,68 @@
1
+ import { cn } from './chunk-TYCPXAXF.js';
2
+ import { __objRest, __spreadProps, __spreadValues } from './chunk-YINJ5YZ5.js';
3
+ import { ScrollArea as ScrollArea$1 } from 'radix-ui';
4
+ import { jsxs, jsx } from 'react/jsx-runtime';
5
+
6
+ function ScrollArea(_a) {
7
+ var _b = _a, {
8
+ className,
9
+ children
10
+ } = _b, props = __objRest(_b, [
11
+ "className",
12
+ "children"
13
+ ]);
14
+ return /* @__PURE__ */ jsxs(
15
+ ScrollArea$1.Root,
16
+ __spreadProps(__spreadValues({
17
+ "data-slot": "scroll-area",
18
+ className: cn("relative", className)
19
+ }, props), {
20
+ children: [
21
+ /* @__PURE__ */ jsx(
22
+ ScrollArea$1.Viewport,
23
+ {
24
+ "data-slot": "scroll-area-viewport",
25
+ className: "size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1",
26
+ children
27
+ }
28
+ ),
29
+ /* @__PURE__ */ jsx(ScrollBar, {}),
30
+ /* @__PURE__ */ jsx(ScrollArea$1.Corner, {})
31
+ ]
32
+ })
33
+ );
34
+ }
35
+ function ScrollBar(_a) {
36
+ var _b = _a, {
37
+ className,
38
+ orientation = "vertical"
39
+ } = _b, props = __objRest(_b, [
40
+ "className",
41
+ "orientation"
42
+ ]);
43
+ return /* @__PURE__ */ jsx(
44
+ ScrollArea$1.ScrollAreaScrollbar,
45
+ __spreadProps(__spreadValues({
46
+ "data-slot": "scroll-area-scrollbar",
47
+ orientation,
48
+ className: cn(
49
+ "flex touch-none p-px transition-colors select-none",
50
+ orientation === "vertical" && "h-full w-2.5 border-l border-l-transparent",
51
+ orientation === "horizontal" && "h-2.5 flex-col border-t border-t-transparent",
52
+ className
53
+ )
54
+ }, props), {
55
+ children: /* @__PURE__ */ jsx(
56
+ ScrollArea$1.ScrollAreaThumb,
57
+ {
58
+ "data-slot": "scroll-area-thumb",
59
+ className: "relative flex-1 rounded-full bg-border"
60
+ }
61
+ )
62
+ })
63
+ );
64
+ }
65
+
66
+ export { ScrollArea, ScrollBar };
67
+ //# sourceMappingURL=chunk-3LXU5C35.js.map
68
+ //# sourceMappingURL=chunk-3LXU5C35.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ui/scroll-area.tsx"],"names":["ScrollAreaPrimitive"],"mappings":";;;;;AAOA,SAAS,WAAW,EAAA,EAIsC;AAJtC,EAAA,IAAA,EAAA,GAAA,EAAA,EAClB;AAAA,IAAA,SAAA;AAAA,IACA;AAAA,GATF,GAOoB,EAAA,EAGf,KAAA,GAAA,SAAA,CAHe,EAAA,EAGf;AAAA,IAFH,WAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAGA,EAAA,uBACE,IAAA;AAAA,IAACA,YAAA,CAAoB,IAAA;AAAA,IAApB,aAAA,CAAA,cAAA,CAAA;AAAA,MACC,WAAA,EAAU,aAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,UAAA,EAAY,SAAS;AAAA,KAAA,EAC/B,KAAA,CAAA,EAHL;AAAA,MAKC,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAACA,YAAA,CAAoB,QAAA;AAAA,UAApB;AAAA,YACC,WAAA,EAAU,sBAAA;AAAA,YACV,SAAA,EAAU,oJAAA;AAAA,YAET;AAAA;AAAA,SACH;AAAA,4BACC,SAAA,EAAA,EAAU,CAAA;AAAA,wBACX,GAAA,CAACA,YAAA,CAAoB,MAAA,EAApB,EAA2B;AAAA;AAAA,KAAA;AAAA,GAC9B;AAEJ;AAEA,SAAS,UAAU,EAAA,EAIsD;AAJtD,EAAA,IAAA,EAAA,GAAA,EAAA,EACjB;AAAA,IAAA,SAAA;AAAA,IACA,WAAA,GAAc;AAAA,GAhChB,GA8BmB,EAAA,EAGd,KAAA,GAAA,SAAA,CAHc,EAAA,EAGd;AAAA,IAFH,WAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAGA,EAAA,uBACE,GAAA;AAAA,IAACA,YAAA,CAAoB,mBAAA;AAAA,IAApB,aAAA,CAAA,cAAA,CAAA;AAAA,MACC,WAAA,EAAU,uBAAA;AAAA,MACV,WAAA;AAAA,MACA,SAAA,EAAW,EAAA;AAAA,QACT,oDAAA;AAAA,QACA,gBAAgB,UAAA,IACd,4CAAA;AAAA,QACF,gBAAgB,YAAA,IACd,8CAAA;AAAA,QACF;AAAA;AACF,KAAA,EACI,KAAA,CAAA,EAXL;AAAA,MAaC,QAAA,kBAAA,GAAA;AAAA,QAACA,YAAA,CAAoB,eAAA;AAAA,QAApB;AAAA,UACC,WAAA,EAAU,mBAAA;AAAA,UACV,SAAA,EAAU;AAAA;AAAA;AACZ,KAAA;AAAA,GACF;AAEJ","file":"chunk-3LXU5C35.js","sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { ScrollArea as ScrollAreaPrimitive } from \"radix-ui\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction ScrollArea({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof ScrollAreaPrimitive.Root>) {\n return (\n <ScrollAreaPrimitive.Root\n data-slot=\"scroll-area\"\n className={cn(\"relative\", className)}\n {...props}\n >\n <ScrollAreaPrimitive.Viewport\n data-slot=\"scroll-area-viewport\"\n className=\"size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1\"\n >\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n )\n}\n\nfunction ScrollBar({\n className,\n orientation = \"vertical\",\n ...props\n}: React.ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>) {\n return (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n data-slot=\"scroll-area-scrollbar\"\n orientation={orientation}\n className={cn(\n \"flex touch-none p-px transition-colors select-none\",\n orientation === \"vertical\" &&\n \"h-full w-2.5 border-l border-l-transparent\",\n orientation === \"horizontal\" &&\n \"h-2.5 flex-col border-t border-t-transparent\",\n className\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb\n data-slot=\"scroll-area-thumb\"\n className=\"relative flex-1 rounded-full bg-border\"\n />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n )\n}\n\nexport { ScrollArea, ScrollBar }\n"]}
@@ -0,0 +1,347 @@
1
+ import { ICON_SIZES } from './chunk-OT2HCBR2.js';
2
+ import { __objRest, __spreadValues, __spreadProps } from './chunk-YINJ5YZ5.js';
3
+ import { forwardRef } from 'react';
4
+ import { jsx, jsxs } from 'react/jsx-runtime';
5
+
6
+ var BaseIcon = forwardRef(function BaseIcon2(props, ref) {
7
+ const _a = props, { size = "sm", decorative, children, className } = _a, rest = __objRest(_a, ["size", "decorative", "children", "className"]);
8
+ const { size: px, stroke } = ICON_SIZES[size];
9
+ const VIEWBOX_SIZE = 24;
10
+ const normalizedStroke = stroke * (VIEWBOX_SIZE / px);
11
+ const svgProps = __spreadValues({
12
+ ref,
13
+ width: px,
14
+ height: px,
15
+ viewBox: "0 0 24 24",
16
+ fill: "none",
17
+ stroke: "currentColor",
18
+ strokeWidth: normalizedStroke,
19
+ strokeLinecap: "round",
20
+ strokeLinejoin: "round",
21
+ className
22
+ }, rest);
23
+ if (decorative) {
24
+ return /* @__PURE__ */ jsx("svg", __spreadProps(__spreadValues({ "aria-hidden": "true", focusable: "false" }, svgProps), { children }));
25
+ }
26
+ return /* @__PURE__ */ jsx("svg", __spreadProps(__spreadValues({ role: "img" }, svgProps), { children }));
27
+ });
28
+ function Achievement(props) {
29
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
30
+ /* @__PURE__ */ jsx("path", { d: "M8 21h8m-4-3v3" }),
31
+ /* @__PURE__ */ jsx("path", { d: "M5 3h14v8c0 3.9-3.1 7-7 7s-7-3.1-7-7z" }),
32
+ /* @__PURE__ */ jsx("path", { d: "M5 7H2v4c0 1.7 1.3 3 3 3M19 7h3v4c0 1.7-1.3 3-3 3" }),
33
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "m12 7 .8 2.4h2.5l-2 1.5.7 2.4-2-1.5-2 1.5.7-2.4-2-1.5h2.5z", stroke: "none" })
34
+ ] }));
35
+ }
36
+ function Answer(props) {
37
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
38
+ /* @__PURE__ */ jsx("path", { d: "M20 2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h4l4 4 4-4h4c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2Z" }),
39
+ /* @__PURE__ */ jsx("path", { d: "m8 10 3 3 5-6" })
40
+ ] }));
41
+ }
42
+ function Badge(props) {
43
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
44
+ /* @__PURE__ */ jsx("path", { d: "m12 2 3.5 3H20v4.5l3 2.5-3 2.5V19h-4.5L12 22l-3.5-3H4v-4.5L1 12l3-2.5V5h4.5z" }),
45
+ /* @__PURE__ */ jsx("path", { d: "m9 12 2 2 4-4" })
46
+ ] }));
47
+ }
48
+ function Certificate(props) {
49
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
50
+ /* @__PURE__ */ jsx("path", { d: "M20 3H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2Z" }),
51
+ /* @__PURE__ */ jsx("path", { d: "M7 8h10M7 12h6" }),
52
+ /* @__PURE__ */ jsx("path", { d: "m9 21 3-2 3 2v-4H9z" })
53
+ ] }));
54
+ }
55
+ function Checkpoint(props) {
56
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
57
+ /* @__PURE__ */ jsx("path", { d: "M5 3v18" }),
58
+ /* @__PURE__ */ jsx("path", { d: "M5 4h13l-4 5 4 5H5" })
59
+ ] }));
60
+ }
61
+ function Completion(props) {
62
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
63
+ /* @__PURE__ */ jsx("path", { d: "M22 12c0 5.5-4.5 10-10 10S2 17.5 2 12 6.5 2 12 2M16 2.3c2.3.8 4.2 2.5 5.3 4.7" }),
64
+ /* @__PURE__ */ jsx("path", { d: "m8 12 3 3 5-6" })
65
+ ] }));
66
+ }
67
+ function Course(props) {
68
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
69
+ /* @__PURE__ */ jsx("path", { d: "M4 6h16" }),
70
+ /* @__PURE__ */ jsx("path", { d: "M19 8H5a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-9a2 2 0 0 0-2-2Z" }),
71
+ /* @__PURE__ */ jsx("path", { d: "M8 12h8m-8 3.5h5" })
72
+ ] }));
73
+ }
74
+ function Diploma(props) {
75
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
76
+ /* @__PURE__ */ jsx("path", { d: "M4 4c0-1.1.9-2 2-2h12c1.1 0 2 .9 2 2v16c0 1.1-.9 2-2 2H6c-1.1 0-2-.9-2-2z" }),
77
+ /* @__PURE__ */ jsx("path", { d: "M9 7h6m-6 4h6m-6 4h3" }),
78
+ /* @__PURE__ */ jsx("path", { d: "M4 18h16" }),
79
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "M12 21a1 1 0 1 0 0-2 1 1 0 0 0 0 2", stroke: "none" })
80
+ ] }));
81
+ }
82
+ function Exercise(props) {
83
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
84
+ /* @__PURE__ */ jsx("path", { d: "M6 8H4c-.6 0-1 .4-1 1v6c0 .6.4 1 1 1h2M18 8h2c.6 0 1 .4 1 1v6c0 .6-.4 1-1 1h-2" }),
85
+ /* @__PURE__ */ jsx("path", { d: "M9 7.5a1.5 1.5 0 1 0-3 0v9a1.5 1.5 0 0 0 3 0zM18 7.5a1.5 1.5 0 0 0-3 0v9a1.5 1.5 0 0 0 3 0z" }),
86
+ /* @__PURE__ */ jsx("path", { d: "M9 12h6" })
87
+ ] }));
88
+ }
89
+ function Flashcard(props) {
90
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
91
+ /* @__PURE__ */ jsx("path", { d: "M19 5H5a3 3 0 0 0-3 3v8a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3V8a3 3 0 0 0-3-3Z" }),
92
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "m12.3 9 .8 2.4h2.5l-2 1.5.7 2.4-2-1.5-2 1.5.7-2.4-2-1.5h2.5z", stroke: "none" })
93
+ ] }));
94
+ }
95
+ function Goal(props) {
96
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
97
+ /* @__PURE__ */ jsx("path", { d: "M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18Z" }),
98
+ /* @__PURE__ */ jsx("path", { d: "M12 17a5 5 0 1 0 0-10 5 5 0 0 0 0 10Z" }),
99
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "M12 13.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3", stroke: "none" })
100
+ ] }));
101
+ }
102
+ function Highlight(props) {
103
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
104
+ /* @__PURE__ */ jsx("path", { d: "m15 3 6 6-11 11H4v-6z" }),
105
+ /* @__PURE__ */ jsx("path", { d: "M4 20h17M13 5l6 6" })
106
+ ] }));
107
+ }
108
+ function Lesson(props) {
109
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
110
+ /* @__PURE__ */ jsx("path", { d: "M19 3H5a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2Z" }),
111
+ /* @__PURE__ */ jsx("path", { d: "m10 7.5 5 2.5-5 2.5z" }),
112
+ /* @__PURE__ */ jsx("path", { d: "M8 21h8m-4-4v4" })
113
+ ] }));
114
+ }
115
+ function Milestone(props) {
116
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
117
+ /* @__PURE__ */ jsx("path", { d: "m12 3 9 9-9 9-9-9z" }),
118
+ /* @__PURE__ */ jsx("path", { d: "M12 8v8m-4-4h8" })
119
+ ] }));
120
+ }
121
+ function Module(props) {
122
+ return /* @__PURE__ */ jsx(BaseIcon, __spreadProps(__spreadValues({}, props), { children: /* @__PURE__ */ jsx("path", { d: "M4.5 3.751h5a.75.75 0 0 1 .75.75v5a.75.75 0 0 1-.75.75h-5a.75.75 0 0 1-.75-.75v-5a.75.75 0 0 1 .75-.75ZM14.5 3.751h5a.75.75 0 0 1 .75.75v5a.75.75 0 0 1-.75.75h-5a.75.75 0 0 1-.75-.75v-5a.75.75 0 0 1 .75-.75ZM4.5 13.751h5a.75.75 0 0 1 .75.75v5a.75.75 0 0 1-.75.75h-5a.75.75 0 0 1-.75-.75v-5a.75.75 0 0 1 .75-.75ZM14.5 13.751h5a.75.75 0 0 1 .75.75v5a.75.75 0 0 1-.75.75h-5a.75.75 0 0 1-.75-.75v-5a.75.75 0 0 1 .75-.75Z" }) }));
123
+ }
124
+ function Progress(props) {
125
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
126
+ /* @__PURE__ */ jsx("path", { d: "M3 21h18" }),
127
+ /* @__PURE__ */ jsx("path", { d: "m5 16 4-5 4 3 3-6 5-3" }),
128
+ /* @__PURE__ */ jsx("path", { d: "M3 3v18" })
129
+ ] }));
130
+ }
131
+ function Question(props) {
132
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
133
+ /* @__PURE__ */ jsx("path", { d: "M20 2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h4l4 4 4-4h4c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2Z" }),
134
+ /* @__PURE__ */ jsx("path", { d: "M9.5 9c0-1.4 1.1-2.5 2.5-2.5s2.5 1.1 2.5 2.5c0 1.1-.7 2-1.7 2.4-.5.2-.8.7-.8 1.2v.4" }),
135
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "M12 16.25a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5", stroke: "none" })
136
+ ] }));
137
+ }
138
+ function Quiz(props) {
139
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
140
+ /* @__PURE__ */ jsx("path", { d: "M18 3H6a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3h12a3 3 0 0 0 3-3V6a3 3 0 0 0-3-3Z" }),
141
+ /* @__PURE__ */ jsx("path", { d: "M9 9c0-1.7 1.3-3 3-3s3 1.3 3 3c0 1.4-.9 2.6-2.1 3-.5.2-.9.6-.9 1.1v.9" }),
142
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "M12 18a1 1 0 1 0 0-2 1 1 0 0 0 0 2", stroke: "none" })
143
+ ] }));
144
+ }
145
+ function Recap(props) {
146
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
147
+ /* @__PURE__ */ jsx("path", { d: "M2 12C2 6.5 6.5 2 12 2c3.5 0 6.6 1.8 8.4 4.5M22 12c0 5.5-4.5 10-10 10-3.5 0-6.6-1.8-8.4-4.5" }),
148
+ /* @__PURE__ */ jsx("path", { d: "M20 2v5h-5M4 22v-5h5" })
149
+ ] }));
150
+ }
151
+ function Streak(props) {
152
+ return /* @__PURE__ */ jsx(BaseIcon, __spreadProps(__spreadValues({}, props), { children: /* @__PURE__ */ jsx("path", { d: "M8.5 13.5A2.5 2.5 0 0 0 11 11c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5s3 3.5 3 5.5a7.001 7.001 0 0 1-11.95 4.95A7 7 0 0 1 5 14c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5" }) }));
153
+ }
154
+ function Task(props) {
155
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
156
+ /* @__PURE__ */ jsx("path", { d: "M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8z" }),
157
+ /* @__PURE__ */ jsx("path", { d: "M14 2v6h6" }),
158
+ /* @__PURE__ */ jsx("path", { d: "m8 13 3 3 5-5" })
159
+ ] }));
160
+ }
161
+ function Unit(props) {
162
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
163
+ /* @__PURE__ */ jsx("path", { d: "M18 3H6a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3h12a3 3 0 0 0 3-3V6a3 3 0 0 0-3-3Z" }),
164
+ /* @__PURE__ */ jsx("path", { d: "M9 8h6m-6 4h6m-6 4h3" })
165
+ ] }));
166
+ }
167
+ function Chat(props) {
168
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
169
+ /* @__PURE__ */ jsx("path", { d: "M20 15c0 .6-.4 1-1 1H7l-4 4V5c0-.6.4-1 1-1h15c.6 0 1 .4 1 1z" }),
170
+ /* @__PURE__ */ jsx("path", { d: "M8 9h8m-8 3h5" })
171
+ ] }));
172
+ }
173
+ function Conversation(props) {
174
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
175
+ /* @__PURE__ */ jsx("path", { d: "M4 3h12c1.1 0 2 .9 2 2v5c0 1.1-.9 2-2 2H9l-4 3v-3c-1.1 0-2-.9-2-2V5c0-1.1.9-2 1-2Z" }),
176
+ /* @__PURE__ */ jsx("path", { d: "M18 8h2c1.1 0 2 .9 2 2v5c0 1.1-.9 2-2 2h-1v3l-4-3h-3c-1.1 0-2-.9-2-2v-2" })
177
+ ] }));
178
+ }
179
+ function Dialogue(props) {
180
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
181
+ /* @__PURE__ */ jsx("path", { d: "M3 5h10c1.1 0 2 .9 2 2v4c0 1.1-.9 2-2 2H7l-4 3v-3c-1.1 0-2-.9-2-2V7c0-1.1.9-2 2-2Z" }),
182
+ /* @__PURE__ */ jsx("path", { d: "M15 8h5c1.1 0 2 .9 2 2v4c0 1.1-.9 2-2 2h-3v3l-4-3h-3c-1.1 0-2-.9-2-2v-1" }),
183
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "M5 10a1 1 0 1 0 0-2 1 1 0 0 0 0 2M8 10a1 1 0 1 0 0-2 1 1 0 0 0 0 2M11 10a1 1 0 1 0 0-2 1 1 0 0 0 0 2", stroke: "none" })
184
+ ] }));
185
+ }
186
+ function Dictionary(props) {
187
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
188
+ /* @__PURE__ */ jsx("path", { d: "M4 4.5C4 3.1 5.1 2 6.5 2H19v20H6.5C5.1 22 4 20.9 4 19.5z" }),
189
+ /* @__PURE__ */ jsx("path", { d: "M4 19.5C4 18.1 5.1 17 6.5 17H19M8 7h7m-7 4h5" })
190
+ ] }));
191
+ }
192
+ function Feedback(props) {
193
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
194
+ /* @__PURE__ */ jsx("path", { d: "M20 2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h4l4 4 4-4h4c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2Z" }),
195
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "m12 5 1.2 3.4h3.5l-2.8 2 1 3.4-2.9-2-2.9 2 1-3.4-2.8-2h3.5z", stroke: "none" })
196
+ ] }));
197
+ }
198
+ function Fluency(props) {
199
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
200
+ /* @__PURE__ */ jsx("path", { d: "M2 16c2 0 2-4 4-4s2 4 4 4 2-4 4-4 2 4 4 4 2-4 4-4M16 6l3 3 3-3" }),
201
+ /* @__PURE__ */ jsx("path", { d: "M19 9V4" })
202
+ ] }));
203
+ }
204
+ function Grammar(props) {
205
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
206
+ /* @__PURE__ */ jsx("path", { d: "M4 6h16M4 10h12M4 14h8" }),
207
+ /* @__PURE__ */ jsx("path", { d: "m15 16 2 2 4-4" })
208
+ ] }));
209
+ }
210
+ function Language(props) {
211
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
212
+ /* @__PURE__ */ jsx("path", { d: "M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18Z" }),
213
+ /* @__PURE__ */ jsx("path", { d: "M3 12h18M12 3c-2 3-3.5 6-3.5 9s1.5 6 3.5 9M12 3c2 3 3.5 6 3.5 9S14 18 12 21" })
214
+ ] }));
215
+ }
216
+ function Listening(props) {
217
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
218
+ /* @__PURE__ */ jsx("path", { d: "M5 10c0-3.9 3.1-7 7-7s7 3.1 7 7" }),
219
+ /* @__PURE__ */ jsx("path", { d: "M7 12a2 2 0 1 0-4 0v2a2 2 0 1 0 4 0zM21 12a2 2 0 1 0-4 0v2a2 2 0 1 0 4 0z" }),
220
+ /* @__PURE__ */ jsx("path", { d: "M19 16v2c0 1.1-.9 2-2 2h-3" }),
221
+ /* @__PURE__ */ jsx("path", { d: "M15 19h-2a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1Z" })
222
+ ] }));
223
+ }
224
+ function MemoryCard(props) {
225
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
226
+ /* @__PURE__ */ jsx("path", { d: "M16 9V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h4" }),
227
+ /* @__PURE__ */ jsx("path", { d: "M6 8.5h6m-6 3h2" }),
228
+ /* @__PURE__ */ jsx("path", { d: "M20 9H10a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-6a2 2 0 0 0-2-2Z" }),
229
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "m15.3 10.6.8 2.4h2.5l-2 1.5.7 2.4-2-1.5-2 1.5.7-2.4-2-1.5h2.5z", stroke: "none" })
230
+ ] }));
231
+ }
232
+ function Reading(props) {
233
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
234
+ /* @__PURE__ */ jsx("path", { d: "M12 5.25c3.09 0 5.459.95 7.055 1.896.798.473 1.403.945 1.803 1.294l.066.06-.066.06c-.4.35-1.005.821-1.803 1.294C17.459 10.8 15.09 11.75 12 11.75s-5.459-.95-7.055-1.896A12.3 12.3 0 0 1 3.142 8.56l-.067-.06.067-.06c.4-.35 1.005-.821 1.803-1.294C6.541 6.2 8.91 5.25 12 5.25Z" }),
235
+ /* @__PURE__ */ jsx("path", { d: "M12 11a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5Z" }),
236
+ /* @__PURE__ */ jsx("path", { d: "M5 15.5h14m-14 3h9" })
237
+ ] }));
238
+ }
239
+ function Repetition(props) {
240
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
241
+ /* @__PURE__ */ jsx("path", { d: "m17 2 4 4-4 4" }),
242
+ /* @__PURE__ */ jsx("path", { d: "M3 11V9c0-1.7 1.3-3 3-3h15" }),
243
+ /* @__PURE__ */ jsx("path", { d: "m7 22-4-4 4-4" }),
244
+ /* @__PURE__ */ jsx("path", { d: "M21 13v2c0 1.7-1.3 3-3 3H3" })
245
+ ] }));
246
+ }
247
+ function Sentence(props) {
248
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
249
+ /* @__PURE__ */ jsx("path", { d: "M4 7h16M4 12h12M4 17h8" }),
250
+ /* @__PURE__ */ jsx("path", { d: "M19 14v6m0 0-2-2m2 2 2-2" })
251
+ ] }));
252
+ }
253
+ function Translate(props) {
254
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
255
+ /* @__PURE__ */ jsx("path", { d: "M3 6h10M8 3v3M5 9c0 2.8 2.7 5 6 5" }),
256
+ /* @__PURE__ */ jsx("path", { d: "M11 6c-2 3-4 6-6 8" }),
257
+ /* @__PURE__ */ jsx("path", { d: "m14 13 3 8m0 0 3-8m-3 8h-2.5 5" })
258
+ ] }));
259
+ }
260
+ function Vocabulary(props) {
261
+ return /* @__PURE__ */ jsx(BaseIcon, __spreadProps(__spreadValues({}, props), { children: /* @__PURE__ */ jsx("path", { d: "m4 16 3-8 3 8m-4.5-3h3M14 8h6l-6 8h6" }) }));
262
+ }
263
+ function GroupClass(props) {
264
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
265
+ /* @__PURE__ */ jsx("path", { d: "M12 9a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z" }),
266
+ /* @__PURE__ */ jsx("path", { d: "M6 21c0-3 2.7-5 6-5s6 2 6 5" }),
267
+ /* @__PURE__ */ jsx("path", { d: "M5 10a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z" }),
268
+ /* @__PURE__ */ jsx("path", { d: "M2 20c0-2 1.3-3.5 3-3.5 1 0 1.9.5 2.5 1.3" }),
269
+ /* @__PURE__ */ jsx("path", { d: "M19 10a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z" }),
270
+ /* @__PURE__ */ jsx("path", { d: "M22 20c0-2-1.3-3.5-3-3.5-1 0-1.9.5-2.5 1.3" })
271
+ ] }));
272
+ }
273
+ function Live(props) {
274
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
275
+ /* @__PURE__ */ jsx("path", { d: "M5 7c-2 1.8-3 3.3-3 5s1 3.2 3 5M19 7c2 1.8 3 3.3 3 5s-1 3.2-3 5M8.5 10c-1 .7-1.5 1.3-1.5 2s.5 1.3 1.5 2M15.5 10c1 .7 1.5 1.3 1.5 2s-.5 1.3-1.5 2" }),
276
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "M12 13.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3", stroke: "none" }),
277
+ /* @__PURE__ */ jsx("path", { d: "M12 13.5V20" })
278
+ ] }));
279
+ }
280
+ function Presentation(props) {
281
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
282
+ /* @__PURE__ */ jsx("path", { d: "M20 3H4a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2Z" }),
283
+ /* @__PURE__ */ jsx("path", { d: "M12 16v6m-4 0h8M7 9h10M7 12h6" })
284
+ ] }));
285
+ }
286
+ function PrivateClass(props) {
287
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
288
+ /* @__PURE__ */ jsx("path", { d: "M9 10.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7Z" }),
289
+ /* @__PURE__ */ jsx("path", { d: "M2 20c0-3.3 3.1-6 7-6" }),
290
+ /* @__PURE__ */ jsx("path", { d: "M20.5 14h-6a1.5 1.5 0 0 0-1.5 1.5v4a1.5 1.5 0 0 0 1.5 1.5h6a1.5 1.5 0 0 0 1.5-1.5v-4a1.5 1.5 0 0 0-1.5-1.5Z" }),
291
+ /* @__PURE__ */ jsx("path", { d: "M15 14v-2c0-1.1.9-2 2-2h.5c1.1 0 2 .9 2 2v2" }),
292
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "M17.5 18.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2", stroke: "none" })
293
+ ] }));
294
+ }
295
+ function RecordedClass(props) {
296
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
297
+ /* @__PURE__ */ jsx("path", { d: "M20 4H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2Z" }),
298
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", stroke: "none", d: "m11 10 3 1.5-3 1.5z" }),
299
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "M18 8.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3", stroke: "none" }),
300
+ /* @__PURE__ */ jsx("path", { d: "M8 21h8m-4-3v3" })
301
+ ] }));
302
+ }
303
+ function Whiteboard(props) {
304
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
305
+ /* @__PURE__ */ jsx("path", { d: "M20 3H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2Z" }),
306
+ /* @__PURE__ */ jsx("path", { d: "m8 11 3-3 3 3 3-3" }),
307
+ /* @__PURE__ */ jsx("path", { d: "M8 21h8m-4-4v4" })
308
+ ] }));
309
+ }
310
+ function Deadline(props) {
311
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
312
+ /* @__PURE__ */ jsx("path", { d: "M19 4H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2Z" }),
313
+ /* @__PURE__ */ jsx("path", { d: "M16 2v4M8 2v4M3 9h18M12 13v3" }),
314
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "M12 20a1 1 0 1 0 0-2 1 1 0 0 0 0 2", stroke: "none" })
315
+ ] }));
316
+ }
317
+ function Recurring(props) {
318
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
319
+ /* @__PURE__ */ jsx("path", { d: "m17 2 4 4-4 4" }),
320
+ /* @__PURE__ */ jsx("path", { d: "M3 10V8c0-1.1.9-2 2-2h16" }),
321
+ /* @__PURE__ */ jsx("path", { d: "m7 22-4-4 4-4" }),
322
+ /* @__PURE__ */ jsx("path", { d: "M21 14v2c0 1.1-.9 2-2 2H3" })
323
+ ] }));
324
+ }
325
+ function Schedule(props) {
326
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
327
+ /* @__PURE__ */ jsx("path", { d: "M19 4H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2Z" }),
328
+ /* @__PURE__ */ jsx("path", { d: "M16 2v4M8 2v4M3 9h18M7 13h4m-4 3.5h10M13 13h4" })
329
+ ] }));
330
+ }
331
+ function DotLive(props) {
332
+ return /* @__PURE__ */ jsx(BaseIcon, __spreadProps(__spreadValues({}, props), { children: /* @__PURE__ */ jsx("path", { fill: "currentColor", stroke: "none", d: "M12 18a6 6 0 1 0 0-12 6 6 0 0 0 0 12Z" }) }));
333
+ }
334
+ function Required(props) {
335
+ return /* @__PURE__ */ jsxs(BaseIcon, __spreadProps(__spreadValues({}, props), { children: [
336
+ /* @__PURE__ */ jsx("path", { d: "M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18Z" }),
337
+ /* @__PURE__ */ jsx("path", { d: "M12 7v5" }),
338
+ /* @__PURE__ */ jsx("path", { fill: "currentColor", d: "M12 17a1 1 0 1 0 0-2 1 1 0 0 0 0 2", stroke: "none" })
339
+ ] }));
340
+ }
341
+ function Ray(props) {
342
+ return /* @__PURE__ */ jsx(BaseIcon, __spreadProps(__spreadValues({}, props), { children: /* @__PURE__ */ jsx("path", { d: "M13 2 9 13h3.5L10 22 20 9h-5l2.5-7z" }) }));
343
+ }
344
+
345
+ export { Achievement, Answer, Badge, Certificate, Chat, Checkpoint, Completion, Conversation, Course, Deadline, Dialogue, Dictionary, Diploma, DotLive, Exercise, Feedback, Flashcard, Fluency, Goal, Grammar, GroupClass, Highlight, Language, Lesson, Listening, Live, MemoryCard, Milestone, Module, Presentation, PrivateClass, Progress, Question, Quiz, Ray, Reading, Recap, RecordedClass, Recurring, Repetition, Required, Schedule, Sentence, Streak, Task, Translate, Unit, Vocabulary, Whiteboard };
346
+ //# sourceMappingURL=chunk-6LML23MS.js.map
347
+ //# sourceMappingURL=chunk-6LML23MS.js.map