loco_motion-rails 0.6.0 → 0.7.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 (163) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +10 -69
  3. data/app/assets/stylesheets/loco.css +78 -0
  4. data/app/assets/svg/icons/heroicons/micro/check-circle.svg +3 -0
  5. data/app/assets/svg/icons/heroicons/micro/check.svg +3 -0
  6. data/app/assets/svg/icons/heroicons/micro/chevron-left.svg +3 -0
  7. data/app/assets/svg/icons/heroicons/micro/chevron-right.svg +3 -0
  8. data/app/assets/svg/icons/heroicons/micro/exclamation-circle.svg +3 -0
  9. data/app/assets/svg/icons/heroicons/micro/exclamation-triangle.svg +3 -0
  10. data/app/assets/svg/icons/heroicons/micro/information-circle.svg +3 -0
  11. data/app/assets/svg/icons/heroicons/micro/swatch.svg +4 -0
  12. data/app/assets/svg/icons/heroicons/micro/trash.svg +3 -0
  13. data/app/assets/svg/icons/heroicons/micro/x-mark.svg +3 -0
  14. data/app/assets/svg/icons/heroicons/mini/check-circle.svg +3 -0
  15. data/app/assets/svg/icons/heroicons/mini/check.svg +3 -0
  16. data/app/assets/svg/icons/heroicons/mini/chevron-left.svg +3 -0
  17. data/app/assets/svg/icons/heroicons/mini/chevron-right.svg +3 -0
  18. data/app/assets/svg/icons/heroicons/mini/exclamation-circle.svg +3 -0
  19. data/app/assets/svg/icons/heroicons/mini/exclamation-triangle.svg +3 -0
  20. data/app/assets/svg/icons/heroicons/mini/information-circle.svg +3 -0
  21. data/app/assets/svg/icons/heroicons/mini/swatch.svg +3 -0
  22. data/app/assets/svg/icons/heroicons/mini/trash.svg +3 -0
  23. data/app/assets/svg/icons/heroicons/mini/x-mark.svg +3 -0
  24. data/app/assets/svg/icons/heroicons/outline/check-circle.svg +3 -0
  25. data/app/assets/svg/icons/heroicons/outline/check.svg +3 -0
  26. data/app/assets/svg/icons/heroicons/outline/chevron-left.svg +3 -0
  27. data/app/assets/svg/icons/heroicons/outline/chevron-right.svg +3 -0
  28. data/app/assets/svg/icons/heroicons/outline/exclamation-circle.svg +3 -0
  29. data/app/assets/svg/icons/heroicons/outline/exclamation-triangle.svg +3 -0
  30. data/app/assets/svg/icons/heroicons/outline/information-circle.svg +3 -0
  31. data/app/assets/svg/icons/heroicons/outline/swatch.svg +3 -0
  32. data/app/assets/svg/icons/heroicons/outline/trash.svg +3 -0
  33. data/app/assets/svg/icons/heroicons/outline/x-mark.svg +3 -0
  34. data/app/assets/svg/icons/heroicons/solid/check-circle.svg +3 -0
  35. data/app/assets/svg/icons/heroicons/solid/check.svg +3 -0
  36. data/app/assets/svg/icons/heroicons/solid/chevron-left.svg +3 -0
  37. data/app/assets/svg/icons/heroicons/solid/chevron-right.svg +3 -0
  38. data/app/assets/svg/icons/heroicons/solid/exclamation-circle.svg +3 -0
  39. data/app/assets/svg/icons/heroicons/solid/exclamation-triangle.svg +3 -0
  40. data/app/assets/svg/icons/heroicons/solid/information-circle.svg +3 -0
  41. data/app/assets/svg/icons/heroicons/solid/swatch.svg +4 -0
  42. data/app/assets/svg/icons/heroicons/solid/trash.svg +3 -0
  43. data/app/assets/svg/icons/heroicons/solid/x-mark.svg +3 -0
  44. data/app/components/daisy/actions/button_component.rb +185 -128
  45. data/app/components/daisy/actions/dropdown_component.rb +167 -60
  46. data/app/components/daisy/actions/fab_component.rb +75 -81
  47. data/app/components/daisy/actions/modal_component.html.haml +13 -9
  48. data/app/components/daisy/actions/modal_component.rb +171 -80
  49. data/app/components/daisy/actions/modal_controller.js +141 -0
  50. data/app/components/daisy/actions/swap_component.rb +61 -67
  51. data/app/components/daisy/actions/theme_controller.js +10 -3
  52. data/app/components/daisy/actions/theme_controller_component.rb +127 -25
  53. data/app/components/daisy/actions/theme_preview_component.rb +28 -20
  54. data/app/components/daisy/data_display/accordion_component.rb +43 -43
  55. data/app/components/daisy/data_display/avatar_component.rb +63 -44
  56. data/app/components/daisy/data_display/badge_component.rb +107 -125
  57. data/app/components/daisy/data_display/card_component.rb +82 -54
  58. data/app/components/daisy/data_display/carousel_component.rb +37 -37
  59. data/app/components/daisy/data_display/chat_component.rb +47 -47
  60. data/app/components/daisy/data_display/collapse_component.html.haml +4 -4
  61. data/app/components/daisy/data_display/collapse_component.rb +44 -43
  62. data/app/components/daisy/data_display/countdown_component.html.haml +4 -4
  63. data/app/components/daisy/data_display/countdown_component.rb +70 -34
  64. data/app/components/daisy/data_display/countdown_controller.js +5 -1
  65. data/app/components/daisy/data_display/diff_component.rb +38 -34
  66. data/app/components/daisy/data_display/figure_component.rb +58 -21
  67. data/app/components/daisy/data_display/kbd_component.rb +48 -47
  68. data/app/components/daisy/data_display/list_component.rb +54 -47
  69. data/app/components/daisy/data_display/list_item_component.rb +14 -25
  70. data/app/components/daisy/data_display/stat_component.rb +80 -46
  71. data/app/components/daisy/data_display/status_component.rb +43 -25
  72. data/app/components/daisy/data_display/table_component.rb +89 -73
  73. data/app/components/daisy/data_display/text_rotate_component.rb +128 -47
  74. data/app/components/daisy/data_display/timeline_component.rb +46 -45
  75. data/app/components/daisy/data_display/timeline_event_component.html.haml +11 -12
  76. data/app/components/daisy/data_display/timeline_event_component.rb +51 -51
  77. data/app/components/daisy/data_input/cally_component.rb +34 -20
  78. data/app/components/daisy/data_input/cally_input_component.rb +36 -10
  79. data/app/components/daisy/data_input/checkbox_component.html.haml +15 -10
  80. data/app/components/daisy/data_input/checkbox_component.rb +100 -43
  81. data/app/components/daisy/data_input/fieldset_component.html.haml +6 -0
  82. data/app/components/daisy/data_input/fieldset_component.rb +43 -2
  83. data/app/components/daisy/data_input/file_input_component.rb +23 -23
  84. data/app/components/daisy/data_input/filter_component.rb +34 -34
  85. data/app/components/daisy/data_input/label_component.rb +17 -17
  86. data/app/components/daisy/data_input/otp_component.html.haml +7 -0
  87. data/app/components/daisy/data_input/otp_component.rb +123 -0
  88. data/app/components/daisy/data_input/radio_button_component.html.haml +10 -10
  89. data/app/components/daisy/data_input/radio_button_component.rb +46 -40
  90. data/app/components/daisy/data_input/range_component.rb +15 -15
  91. data/app/components/daisy/data_input/rating_component.rb +38 -24
  92. data/app/components/daisy/data_input/select_component.html.haml +10 -10
  93. data/app/components/daisy/data_input/select_component.rb +102 -48
  94. data/app/components/daisy/data_input/text_area_component.rb +38 -40
  95. data/app/components/daisy/data_input/text_input_component.html.haml +10 -10
  96. data/app/components/daisy/data_input/text_input_component.rb +81 -58
  97. data/app/components/daisy/data_input/toggle_component.rb +29 -29
  98. data/app/components/daisy/feedback/alert_component.html.haml +1 -1
  99. data/app/components/daisy/feedback/alert_component.rb +173 -153
  100. data/app/components/daisy/feedback/loading_component.rb +21 -21
  101. data/app/components/daisy/feedback/progress_component.rb +24 -22
  102. data/app/components/daisy/feedback/radial_progress_component.rb +25 -25
  103. data/app/components/daisy/feedback/skeleton_component.rb +38 -34
  104. data/app/components/daisy/feedback/toast_component.rb +37 -25
  105. data/app/components/daisy/feedback/tooltip_component.rb +34 -34
  106. data/app/components/daisy/layout/aura_component.html.haml +2 -0
  107. data/app/components/daisy/layout/aura_component.rb +117 -0
  108. data/app/components/daisy/layout/divider_component.rb +46 -40
  109. data/app/components/daisy/layout/drawer_component.rb +62 -62
  110. data/app/components/daisy/layout/footer_component.rb +42 -38
  111. data/app/components/daisy/layout/hero_component.rb +46 -43
  112. data/app/components/daisy/layout/hover_component.rb +69 -36
  113. data/app/components/daisy/layout/hover_gallery_component.rb +52 -35
  114. data/app/components/daisy/layout/indicator_component.rb +49 -46
  115. data/app/components/daisy/layout/join_component.rb +80 -68
  116. data/app/components/daisy/layout/stack_component.rb +41 -38
  117. data/app/components/daisy/mockup/browser_component.rb +50 -42
  118. data/app/components/daisy/mockup/code_component.rb +86 -83
  119. data/app/components/daisy/mockup/device_component.rb +35 -35
  120. data/app/components/daisy/mockup/frame_component.rb +38 -31
  121. data/app/components/daisy/navigation/breadcrumbs_component.rb +96 -91
  122. data/app/components/daisy/navigation/dock_component.rb +133 -106
  123. data/app/components/daisy/navigation/link_component.rb +68 -39
  124. data/app/components/daisy/navigation/megamenu_component.html.haml +14 -0
  125. data/app/components/daisy/navigation/megamenu_component.rb +234 -0
  126. data/app/components/daisy/navigation/menu_component.rb +91 -90
  127. data/app/components/daisy/navigation/navbar_component.html.haml +2 -2
  128. data/app/components/daisy/navigation/navbar_component.rb +50 -47
  129. data/app/components/daisy/navigation/steps_component.rb +80 -80
  130. data/app/components/daisy/navigation/tabs_component.rb +70 -57
  131. data/app/components/loco/icon_component.rb +119 -0
  132. data/lib/generators/loco_motion/install_generator.rb +34 -0
  133. data/lib/loco_motion/base_component.rb +0 -1
  134. data/lib/loco_motion/basic_component.rb +9 -5
  135. data/lib/loco_motion/component_builder.rb +8 -4
  136. data/lib/loco_motion/component_config.rb +109 -11
  137. data/lib/loco_motion/concerns/actionable_component.rb +62 -0
  138. data/lib/loco_motion/concerns/iconable_component.rb +92 -11
  139. data/lib/loco_motion/concerns/inspectable_component.rb +2 -0
  140. data/lib/loco_motion/concerns/labelable_component.rb +26 -26
  141. data/lib/loco_motion/concerns/linkable_component.rb +19 -0
  142. data/lib/loco_motion/concerns/tippable_component.rb +1 -0
  143. data/lib/loco_motion/concerns/turboable_component.rb +73 -0
  144. data/lib/loco_motion/configuration.rb +86 -0
  145. data/lib/loco_motion/engine.rb +5 -0
  146. data/lib/loco_motion/errors.rb +29 -0
  147. data/lib/loco_motion/helpers.rb +62 -4
  148. data/lib/loco_motion/icons/installer.rb +51 -0
  149. data/lib/loco_motion/icons/reference.rb +63 -0
  150. data/lib/loco_motion/icons/renderer.rb +159 -0
  151. data/lib/loco_motion/icons/scanner.rb +151 -0
  152. data/lib/loco_motion/icons/vendorer.rb +85 -0
  153. data/lib/loco_motion/icons/verifier.rb +64 -0
  154. data/lib/loco_motion/migrations/leading_trailing.rb +261 -0
  155. data/lib/loco_motion/patches/view_component/slot_loco_parent_patch.rb +11 -2
  156. data/lib/loco_motion/patches/view_component/slotable_default_patch.rb +8 -3
  157. data/lib/loco_motion/version.rb +1 -1
  158. data/lib/loco_motion.rb +7 -4
  159. data/lib/tasks/loco_motion/icons.rake +198 -0
  160. data/lib/tasks/loco_motion/migrate.rake +56 -0
  161. metadata +92 -33
  162. data/app/components/hero/icon_component.rb +0 -81
  163. data/lib/hero.rb +0 -9
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c1fbecd7b07e739d9fd93b06dab24a9cffcfc1a3ef75e3f13161ccb90c864043
4
- data.tar.gz: 15675b8253e61a2fb1f12bb17c6b136cffbb91af1333eeabcd0288849d7f3caa
3
+ metadata.gz: bda974ceb8af965dbf0e8b4c4f1a36ea6fa9df31ec1e51380c9f797600ebea71
4
+ data.tar.gz: 9ef88336a6f9591f5b3f50ba1b4fc477f530e6d71b52b22cdbe26a4bd5e4157e
5
5
  SHA512:
6
- metadata.gz: 22943bbdebe866b749f259165e7dae59451f54f5c3a8f90985fff3aaba3825b7a800f2543977d0ca1997313c6237e4de1e2db4112bfff06a9087557594e0b7ba
7
- data.tar.gz: 9d9e244c02d0cd63abfba2e29dead0b0ca86450b90bd3ad505d7cb4cf7aa848234eb7bc60dfba69ef1b04ef0f0413e38bea580b89f38ae7869c7a482210a3a91
6
+ metadata.gz: 974161979627148c94a94f6ea18d50a1f14a8f7fa8b14650d66645ef6dc81255a55a3b14810eeeb8a158e612c668c907a491f30d745f8d939ac852505c03049d
7
+ data.tar.gz: 6bb161f8440e25d236d1b27414034ab9a2d89458f58daf544391363eb3dc9600f9115197c7e4216e1fd6b98ff2f21fb451ad96cee17ddcef29af6f411b303b24
data/README.md CHANGED
@@ -51,9 +51,9 @@ opinionated project setup, start with the [Guides](#guides).
51
51
 
52
52
  This project is in active development and many changes occur with every release!
53
53
 
54
- As of **v0.5.x**, LocoMotion ships with **Tailwind 4** and **DaisyUI 5**. The
55
- install approach has changed from previous versions, so please follow the
56
- updated instructions below.
54
+ As of **v0.6.x**, LocoMotion ships with **Tailwind 4** and **DaisyUI 5**. The
55
+ install approach changed with Tailwind 4, so be sure to follow the current
56
+ installation instructions below.
57
57
 
58
58
  > [!CAUTION]
59
59
  > LocoMotion is in active development. Components are functional but APIs may
@@ -66,77 +66,18 @@ them in real projects.
66
66
 
67
67
  ## Installation
68
68
 
69
- Add the following to your `Gemfile` and re-run `bundle`:
69
+ Add the gem to your `Gemfile` and run `bundle`:
70
70
 
71
71
  ```ruby
72
72
  # Gemfile
73
-
74
- gem "loco_motion-rails", "~> 0.5.2", require: "loco_motion"
75
- ```
76
-
77
- Next, create or update your `tailwind.config.js` to tell Tailwind where to
78
- scan for component class names. In Tailwind 4, this file handles **only**
79
- content paths — plugins belong in your CSS file (see the
80
- [Getting Started guide](https://loco-motion.profoundry.us/guides/getting_started)).
81
-
82
- ```js
83
- const { execSync } = require('child_process');
84
- let locoBundlePath =
85
- execSync('bundle show loco_motion-rails').toString().trim();
86
-
87
- module.exports = {
88
- content: [
89
- `${locoBundlePath}/app/components/**/*.{rb,js,html,haml}`,
90
- 'app/components/**/*.{rb,js,html,haml}',
91
- 'app/views/**/*.{rb,js,html,haml}',
92
- ]
93
- }
73
+ gem "loco_motion-rails", "~> 0.7.0", require: "loco_motion"
94
74
  ```
95
75
 
96
- > [!WARNING]
97
- > Note that `bundle show loco_motion-rails` will output nothing if the gem
98
- > is not installed or the name is wrong, causing Tailwind to skip all
99
- > component classes. Make sure the gem name matches exactly.
100
-
101
- Next, if you're using any of the components that require JavaScript (like the
102
- Countdown component), you'll need to add the library as a dependency and include
103
- those controllers in your `application.js` file.
104
-
105
- ```sh
106
- npm add @profoundry-us/loco_motion
107
- ```
108
-
109
- or
110
-
111
- ```sh
112
- yarn add @profoundry-us/loco_motion
113
- ```
114
-
115
- Then inside your `application.js` file, make sure to import and register the
116
- relevant controllers.
117
-
118
- ```js
119
- import { Application } from "@hotwired/stimulus"
120
-
121
- import {
122
- CountdownController,
123
- ThemeController,
124
- AlertController,
125
- CallyInputController
126
- } from "@profoundry-us/loco_motion"
127
-
128
- const application = Application.start()
129
-
130
- // Register each controller under its `loco-*` Stimulus identifier. These
131
- // names are required: the components render `data-controller="loco-..."`, so
132
- // registering under any other name means the controller never connects.
133
- application.register("loco-countdown", CountdownController)
134
- application.register("loco-theme", ThemeController)
135
- application.register("loco-alert", AlertController)
136
- application.register("loco-cally-input", CallyInputController)
137
-
138
- export { application }
139
- ```
76
+ Some components also need a JavaScript package (for their Stimulus controllers)
77
+ and a small Tailwind 4 / DaisyUI configuration. For the complete setup — the
78
+ JavaScript install, Stimulus controller registration, and the Tailwind
79
+ content-path and CSS directives follow the
80
+ [Install guide](https://loco-motion.profoundry.us/docs/install).
140
81
 
141
82
  ## Using Components
142
83
 
@@ -0,0 +1,78 @@
1
+ /*
2
+ * LocoMotion — shared CSS
3
+ * ========================
4
+ *
5
+ * The CSS peer of the npm package's JavaScript controllers. Import it once
6
+ * from your Tailwind entry (after `@import 'tailwindcss'` and the `daisyui`
7
+ * plugin) to pull in the custom variants and component-required utility rules
8
+ * that LocoMotion's components depend on:
9
+ *
10
+ * @import 'tailwindcss';
11
+ * @plugin 'daisyui';
12
+ * @import '@profoundry-us/loco_motion/loco.css';
13
+ *
14
+ * Keeping this in one versioned file means you stay in sync across upgrades
15
+ * instead of hand-copying a growing block out of the Install guide.
16
+ *
17
+ * Note: `@import 'tailwindcss'`, the `daisyui` plugin, and your `@config`
18
+ * content paths are app-level choices and stay in your own entry file — only
19
+ * the LocoMotion-specific variants and utilities live here.
20
+ */
21
+
22
+ /*
23
+ * `where` variant — wraps a selector in `:where()` so it compiles to a
24
+ * zero-specificity rule. Components apply their visual defaults through this
25
+ * variant (e.g. `where:size-6`) so a plain utility you pass via `css:` always
26
+ * wins. 15+ components rely on it, so it is required, not optional.
27
+ */
28
+ @custom-variant where (:where(&));
29
+
30
+ /*
31
+ * `dark` variant — make `dark:` utilities respond to both an OS-level dark
32
+ * preference and a DaisyUI ThemeController set to a dark theme, so manual theme
33
+ * switching and system preference stay in sync.
34
+ */
35
+ @custom-variant dark (@media (prefers-color-scheme: dark), :root:has(input.theme-controller[value=dark]:checked) &);
36
+
37
+ /*
38
+ * Reveal tooltips on keyboard focus when the `tooltip` class is applied
39
+ * directly to a focusable element (e.g. via LocoMotion's `tip:` attribute on a
40
+ * button or link). DaisyUI v5 only reveals tooltips through
41
+ * `:has(:focus-visible)`, which requires the focused element to be a
42
+ * *descendant* of `.tooltip` — so a tooltip placed on the element itself never
43
+ * appears on focus. This mirrors DaisyUI's own reveal rule for when the tooltip
44
+ * element itself is focus-visible.
45
+ */
46
+ .tooltip:focus-visible:is([data-tip]:not([data-tip=""]), :has(.tooltip-content:not(:empty))) {
47
+ &[data-tip]::before,
48
+ &::after,
49
+ & > .tooltip-content {
50
+ opacity: 1;
51
+ --tt-pos: 0rem;
52
+ }
53
+ }
54
+
55
+ /*
56
+ * `floating-sticky` — keep a DaisyUI floating label in its raised position even
57
+ * while the field is empty and showing a placeholder. By default DaisyUI only
58
+ * raises the label on focus or once the field has a value (an empty field with
59
+ * a placeholder matches `:placeholder-shown`, which keeps the label collapsed),
60
+ * so a placeholder hint and a raised floating label never appear together. Add
61
+ * `floating-sticky` alongside `floating-label` (e.g. via `label_wrapper_css:`)
62
+ * to pin the label up, leaving the placeholder visible inside the empty field
63
+ * for a Material-style label.
64
+ *
65
+ * Mirrors DaisyUI's own raised-state declaration; the raised values are
66
+ * size-independent, so this single rule covers every input size. Because it is
67
+ * unlayered it also wins over DaisyUI's disabled rule
68
+ * (`:has(:disabled) > span { opacity: 0 }`), so the label stays visible on
69
+ * disabled fields too.
70
+ */
71
+ .floating-label.floating-sticky > span {
72
+ opacity: 1;
73
+ pointer-events: auto;
74
+ z-index: 2;
75
+ top: 0;
76
+ translate: -12.5% calc(-50% - .125em);
77
+ scale: .75;
78
+ }
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm3.844-8.791a.75.75 0 0 0-1.188-.918l-3.7 4.79-1.649-1.833a.75.75 0 1 0-1.114 1.004l2.25 2.5a.75.75 0 0 0 1.15-.043l4.25-5.5Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M12.416 3.376a.75.75 0 0 1 .208 1.04l-5 7.5a.75.75 0 0 1-1.154.114l-3-3a.75.75 0 0 1 1.06-1.06l2.353 2.353 4.493-6.74a.75.75 0 0 1 1.04-.207Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M9.78 4.22a.75.75 0 0 1 0 1.06L7.06 8l2.72 2.72a.75.75 0 1 1-1.06 1.06L5.47 8.53a.75.75 0 0 1 0-1.06l3.25-3.25a.75.75 0 0 1 1.06 0Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M6.22 4.22a.75.75 0 0 1 1.06 0l3.25 3.25a.75.75 0 0 1 0 1.06l-3.25 3.25a.75.75 0 0 1-1.06-1.06L8.94 8 6.22 5.28a.75.75 0 0 1 0-1.06Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM8 4a.75.75 0 0 1 .75.75v3a.75.75 0 0 1-1.5 0v-3A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M6.701 2.25c.577-1 2.02-1 2.598 0l5.196 9a1.5 1.5 0 0 1-1.299 2.25H2.804a1.5 1.5 0 0 1-1.3-2.25l5.197-9ZM8 4a.75.75 0 0 1 .75.75v3a.75.75 0 1 1-1.5 0v-3A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0ZM9 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM6.75 8a.75.75 0 0 0 0 1.5h.75v1.75a.75.75 0 0 0 1.5 0v-2.5A.75.75 0 0 0 8.25 8h-1.5Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M2 3a1 1 0 0 1 1-1h3a1 1 0 0 1 1 1v8.5a2.5 2.5 0 0 1-5 0V3Zm3.25 8.5a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0Z" clip-rule="evenodd"/>
3
+ <path d="m8.5 11.035 3.778-3.778a1 1 0 0 0 0-1.414l-2.122-2.121a1 1 0 0 0-1.414 0l-.242.242v7.07ZM7.656 14H13a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-.344l-5 5Z"/>
4
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M5 3.25V4H2.75a.75.75 0 0 0 0 1.5h.3l.815 8.15A1.5 1.5 0 0 0 5.357 15h5.285a1.5 1.5 0 0 0 1.493-1.35l.815-8.15h.3a.75.75 0 0 0 0-1.5H11v-.75A2.25 2.25 0 0 0 8.75 1h-1.5A2.25 2.25 0 0 0 5 3.25Zm2.25-.75a.75.75 0 0 0-.75.75V4h3v-.75a.75.75 0 0 0-.75-.75h-1.5ZM6.05 6a.75.75 0 0 1 .787.713l.275 5.5a.75.75 0 0 1-1.498.075l-.275-5.5A.75.75 0 0 1 6.05 6Zm3.9 0a.75.75 0 0 1 .712.787l-.275 5.5a.75.75 0 0 1-1.498-.075l.275-5.5a.75.75 0 0 1 .786-.711Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path d="M5.28 4.22a.75.75 0 0 0-1.06 1.06L6.94 8l-2.72 2.72a.75.75 0 1 0 1.06 1.06L8 9.06l2.72 2.72a.75.75 0 1 0 1.06-1.06L9.06 8l2.72-2.72a.75.75 0 0 0-1.06-1.06L8 6.94 5.28 4.22Z"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M10 18a8 8 0 1 0 0-16 8 8 0 0 0 0 16Zm3.857-9.809a.75.75 0 0 0-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 1 0-1.06 1.061l2.5 2.5a.75.75 0 0 0 1.137-.089l4-5.5Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M16.704 4.153a.75.75 0 0 1 .143 1.052l-8 10.5a.75.75 0 0 1-1.127.075l-4.5-4.5a.75.75 0 0 1 1.06-1.06l3.894 3.893 7.48-9.817a.75.75 0 0 1 1.05-.143Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M11.78 5.22a.75.75 0 0 1 0 1.06L8.06 10l3.72 3.72a.75.75 0 1 1-1.06 1.06l-4.25-4.25a.75.75 0 0 1 0-1.06l4.25-4.25a.75.75 0 0 1 1.06 0Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M18 10a8 8 0 1 1-16 0 8 8 0 0 1 16 0Zm-8-5a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0v-4.5A.75.75 0 0 1 10 5Zm0 10a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M8.485 2.495c.673-1.167 2.357-1.167 3.03 0l6.28 10.875c.673 1.167-.17 2.625-1.516 2.625H3.72c-1.347 0-2.189-1.458-1.515-2.625L8.485 2.495ZM10 5a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 10 5Zm0 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M18 10a8 8 0 1 1-16 0 8 8 0 0 1 16 0Zm-7-4a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM9 9a.75.75 0 0 0 0 1.5h.253a.25.25 0 0 1 .244.304l-.459 2.066A1.75 1.75 0 0 0 10.747 15H11a.75.75 0 0 0 0-1.5h-.253a.25.25 0 0 1-.244-.304l.459-2.066A1.75 1.75 0 0 0 9.253 9H9Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M3.5 2A1.5 1.5 0 0 0 2 3.5V15a3 3 0 1 0 6 0V3.5A1.5 1.5 0 0 0 6.5 2h-3Zm11.753 6.99L9.5 14.743V6.257l1.51-1.51a1.5 1.5 0 0 1 2.122 0l2.121 2.121a1.5 1.5 0 0 1 0 2.122ZM8.364 18H16.5a1.5 1.5 0 0 0 1.5-1.5v-3a1.5 1.5 0 0 0-1.5-1.5h-2.136l-6 6ZM5 16a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M8.75 1A2.75 2.75 0 0 0 6 3.75v.443c-.795.077-1.584.176-2.365.298a.75.75 0 1 0 .23 1.482l.149-.022.841 10.518A2.75 2.75 0 0 0 7.596 19h4.807a2.75 2.75 0 0 0 2.742-2.53l.841-10.52.149.023a.75.75 0 0 0 .23-1.482A41.03 41.03 0 0 0 14 4.193V3.75A2.75 2.75 0 0 0 11.25 1h-2.5ZM10 4c.84 0 1.673.025 2.5.075V3.75c0-.69-.56-1.25-1.25-1.25h-2.5c-.69 0-1.25.56-1.25 1.25v.325C8.327 4.025 9.16 4 10 4ZM8.58 7.72a.75.75 0 0 0-1.5.06l.3 7.5a.75.75 0 1 0 1.5-.06l-.3-7.5Zm4.34.06a.75.75 0 1 0-1.5-.06l-.3 7.5a.75.75 0 1 0 1.5.06l.3-7.5Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path d="M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path stroke-linecap="round" stroke-linejoin="round" d="M9 12.75 11.25 15 15 9.75M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path stroke-linecap="round" stroke-linejoin="round" d="m4.5 12.75 6 6 9-13.5"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path stroke-linecap="round" stroke-linejoin="round" d="M15.75 19.5 8.25 12l7.5-7.5"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path stroke-linecap="round" stroke-linejoin="round" d="m8.25 4.5 7.5 7.5-7.5 7.5"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m9-.75a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9 3.75h.008v.008H12v-.008Z"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126ZM12 15.75h.007v.008H12v-.008Z"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path stroke-linecap="round" stroke-linejoin="round" d="m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path stroke-linecap="round" stroke-linejoin="round" d="M4.098 19.902a3.75 3.75 0 0 0 5.304 0l6.401-6.402M6.75 21A3.75 3.75 0 0 1 3 17.25V4.125C3 3.504 3.504 3 4.125 3h5.25c.621 0 1.125.504 1.125 1.125v4.072M6.75 21a3.75 3.75 0 0 0 3.75-3.75V8.197M6.75 21h13.125c.621 0 1.125-.504 1.125-1.125v-5.25c0-.621-.504-1.125-1.125-1.125h-4.072M10.5 8.197l2.88-2.88c.438-.439 1.15-.439 1.59 0l3.712 3.713c.44.44.44 1.152 0 1.59l-2.879 2.88M6.75 17.25h.008v.008H6.75v-.008Z"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path stroke-linecap="round" stroke-linejoin="round" d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path stroke-linecap="round" stroke-linejoin="round" d="M6 18 18 6M6 6l12 12"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M19.916 4.626a.75.75 0 0 1 .208 1.04l-9 13.5a.75.75 0 0 1-1.154.114l-6-6a.75.75 0 0 1 1.06-1.06l5.353 5.353 8.493-12.74a.75.75 0 0 1 1.04-.207Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M7.72 12.53a.75.75 0 0 1 0-1.06l7.5-7.5a.75.75 0 1 1 1.06 1.06L9.31 12l6.97 6.97a.75.75 0 1 1-1.06 1.06l-7.5-7.5Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M16.28 11.47a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 0 1-1.06-1.06L14.69 12 7.72 5.03a.75.75 0 0 1 1.06-1.06l7.5 7.5Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12ZM12 8.25a.75.75 0 0 1 .75.75v3.75a.75.75 0 0 1-1.5 0V9a.75.75 0 0 1 .75-.75Zm0 8.25a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003ZM12 8.25a.75.75 0 0 1 .75.75v3.75a.75.75 0 0 1-1.5 0V9a.75.75 0 0 1 .75-.75Zm0 8.25a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm8.706-1.442c1.146-.573 2.437.463 2.126 1.706l-.709 2.836.042-.02a.75.75 0 0 1 .67 1.34l-.04.022c-1.147.573-2.438-.463-2.127-1.706l.71-2.836-.042.02a.75.75 0 1 1-.671-1.34l.041-.022ZM12 9a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M2.25 4.125c0-1.036.84-1.875 1.875-1.875h5.25c1.036 0 1.875.84 1.875 1.875V17.25a4.5 4.5 0 1 1-9 0V4.125Zm4.5 14.25a1.125 1.125 0 1 0 0-2.25 1.125 1.125 0 0 0 0 2.25Z" clip-rule="evenodd"/>
3
+ <path d="M10.719 21.75h9.156c1.036 0 1.875-.84 1.875-1.875v-5.25c0-1.036-.84-1.875-1.875-1.875h-.14l-8.742 8.743c-.09.089-.18.175-.274.257ZM12.738 17.625l6.474-6.474a1.875 1.875 0 0 0 0-2.651L15.5 4.787a1.875 1.875 0 0 0-2.651 0l-.1.099V17.25c0 .126-.003.251-.01.375Z"/>
4
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M16.5 4.478v.227a48.816 48.816 0 0 1 3.878.512.75.75 0 1 1-.256 1.478l-.209-.035-1.005 13.07a3 3 0 0 1-2.991 2.77H8.084a3 3 0 0 1-2.991-2.77L4.087 6.66l-.209.035a.75.75 0 0 1-.256-1.478A48.567 48.567 0 0 1 7.5 4.705v-.227c0-1.564 1.213-2.9 2.816-2.951a52.662 52.662 0 0 1 3.369 0c1.603.051 2.815 1.387 2.815 2.951Zm-6.136-1.452a51.196 51.196 0 0 1 3.273 0C14.39 3.05 15 3.684 15 4.478v.113a49.488 49.488 0 0 0-6 0v-.113c0-.794.609-1.428 1.364-1.452Zm-.355 5.945a.75.75 0 1 0-1.5.058l.347 9a.75.75 0 1 0 1.499-.058l-.346-9Zm5.48.058a.75.75 0 1 0-1.498-.058l-.347 9a.75.75 0 0 0 1.5.058l.345-9Z" clip-rule="evenodd"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">
2
+ <path fill-rule="evenodd" d="M5.47 5.47a.75.75 0 0 1 1.06 0L12 10.94l5.47-5.47a.75.75 0 1 1 1.06 1.06L13.06 12l5.47 5.47a.75.75 0 1 1-1.06 1.06L12 13.06l-5.47 5.47a.75.75 0 0 1-1.06-1.06L10.94 12 5.47 6.53a.75.75 0 0 1 0-1.06Z" clip-rule="evenodd"/>
3
+ </svg>