@supersoniks/concorde 5.0.2 → 5.0.3

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 (214) hide show
  1. package/build-infos.json +1 -1
  2. package/concorde-core.bundle.js +1 -1
  3. package/concorde-core.es.js +1 -1
  4. package/dist/concorde-core.bundle.js +1 -1
  5. package/dist/concorde-core.es.js +1 -1
  6. package/docs/altcha-widget.js +2662 -0
  7. package/docs/assets/index--GpD7R7a.css +1 -0
  8. package/docs/assets/index-BnK6OS7w.js +12115 -0
  9. package/docs/crawl/core/components/functional/date/date.html +190 -0
  10. package/docs/crawl/core/components/functional/fetch/fetch.html +109 -0
  11. package/docs/crawl/core/components/functional/if/if.html +27 -0
  12. package/docs/crawl/core/components/functional/jsonata/jsonata.html +79 -0
  13. package/docs/crawl/core/components/functional/list/list.html +70 -0
  14. package/docs/crawl/core/components/functional/mix/mix.html +45 -0
  15. package/docs/crawl/core/components/functional/queue/queue.html +96 -0
  16. package/docs/crawl/core/components/functional/router/router.html +106 -0
  17. package/docs/crawl/core/components/functional/sdui/sdui.html +269 -0
  18. package/docs/crawl/core/components/functional/states/states.html +66 -0
  19. package/docs/crawl/core/components/functional/submit/submit.html +160 -0
  20. package/docs/crawl/core/components/functional/subscriber/subscriber.html +67 -0
  21. package/docs/crawl/core/components/functional/value/value.html +51 -0
  22. package/docs/crawl/core/components/ui/alert/alert.html +140 -0
  23. package/docs/crawl/core/components/ui/alert-messages/alert-messages.html +23 -0
  24. package/docs/crawl/core/components/ui/badge/badge.html +148 -0
  25. package/docs/crawl/core/components/ui/button/button.html +150 -0
  26. package/docs/crawl/core/components/ui/captcha/captcha.html +30 -0
  27. package/docs/crawl/core/components/ui/card/card.html +143 -0
  28. package/docs/crawl/core/components/ui/divider/divider.html +58 -0
  29. package/docs/crawl/core/components/ui/form/checkbox/checkbox.html +73 -0
  30. package/docs/crawl/core/components/ui/form/fieldset/fieldset.html +135 -0
  31. package/docs/crawl/core/components/ui/form/form-actions/form-actions.html +79 -0
  32. package/docs/crawl/core/components/ui/form/form-layout/form-layout.html +62 -0
  33. package/docs/crawl/core/components/ui/form/input/input.html +109 -0
  34. package/docs/crawl/core/components/ui/form/input-autocomplete/input-autocomplete.html +38 -0
  35. package/docs/crawl/core/components/ui/form/radio/radio.html +56 -0
  36. package/docs/crawl/core/components/ui/form/select/select.html +73 -0
  37. package/docs/crawl/core/components/ui/form/switch/switch.html +56 -0
  38. package/docs/crawl/core/components/ui/form/textarea/textarea.html +59 -0
  39. package/docs/crawl/core/components/ui/group/group.html +82 -0
  40. package/docs/crawl/core/components/ui/icon/icon.html +133 -0
  41. package/docs/crawl/core/components/ui/image/image.html +186 -0
  42. package/docs/crawl/core/components/ui/link/link.html +42 -0
  43. package/docs/crawl/core/components/ui/loader/loader.html +50 -0
  44. package/docs/crawl/core/components/ui/menu/menu.html +322 -0
  45. package/docs/crawl/core/components/ui/modal/modal.html +117 -0
  46. package/docs/crawl/core/components/ui/pop/pop.html +178 -0
  47. package/docs/crawl/core/components/ui/progress/progress.html +58 -0
  48. package/docs/crawl/core/components/ui/table/table.html +413 -0
  49. package/docs/crawl/core/components/ui/toast/toast.html +122 -0
  50. package/docs/crawl/core/components/ui/tooltip/tooltip.html +79 -0
  51. package/docs/crawl/docs/_core-concept/dataFlow.html +177 -0
  52. package/docs/crawl/docs/_core-concept/overview.html +66 -0
  53. package/docs/crawl/docs/_core-concept/subscriber.html +75 -0
  54. package/docs/crawl/docs/_decorators/ancestor-attribute.html +116 -0
  55. package/docs/crawl/docs/_decorators/auto-subscribe.html +202 -0
  56. package/docs/crawl/docs/_decorators/bind.html +141 -0
  57. package/docs/crawl/docs/_decorators/get.html +149 -0
  58. package/docs/crawl/docs/_decorators/handle.html +165 -0
  59. package/docs/crawl/docs/_decorators/on-assign.html +355 -0
  60. package/docs/crawl/docs/_decorators/patch.html +78 -0
  61. package/docs/crawl/docs/_decorators/post.html +139 -0
  62. package/docs/crawl/docs/_decorators/publish.html +61 -0
  63. package/docs/crawl/docs/_decorators/put.html +78 -0
  64. package/docs/crawl/docs/_decorators/subscribe.html +109 -0
  65. package/docs/crawl/docs/_decorators/wait-for-ancestors.html +137 -0
  66. package/docs/crawl/docs/_directives/sub.html +93 -0
  67. package/docs/crawl/docs/_getting-started/ai-agents.html +173 -0
  68. package/docs/crawl/docs/_getting-started/concorde-manual-install.html +100 -0
  69. package/docs/crawl/docs/_getting-started/concorde-outside.html +58 -0
  70. package/docs/crawl/docs/_getting-started/create-a-component.html +111 -0
  71. package/docs/crawl/docs/_getting-started/my-first-component.html +189 -0
  72. package/docs/crawl/docs/_getting-started/my-first-subscriber.html +110 -0
  73. package/docs/crawl/docs/_getting-started/pubsub.html +62 -0
  74. package/docs/crawl/docs/_getting-started/start.html +76 -0
  75. package/docs/crawl/docs/_getting-started/theming.html +85 -0
  76. package/docs/crawl/docs/_misc/api-configuration.html +149 -0
  77. package/docs/crawl/docs/_misc/dataProviderKey.html +135 -0
  78. package/docs/crawl/docs/_misc/docs-mock-api.html +158 -0
  79. package/docs/crawl/docs/_misc/dynamic-path.html +180 -0
  80. package/docs/crawl/docs/_misc/endpoint.html +50 -0
  81. package/docs/crawl/docs/_misc/formelement-subscriber-removal.html +138 -0
  82. package/docs/crawl/docs/_misc/html-integration.html +48 -0
  83. package/docs/crawl/hubs/decorators.html +547 -0
  84. package/docs/crawl/hubs/form-components.html +359 -0
  85. package/docs/crawl/hubs/remote-data.html +452 -0
  86. package/docs/crawl/index.html +101 -0
  87. package/docs/css/docs.css +0 -0
  88. package/docs/docs-mock-api-sw.js +724 -0
  89. package/docs/docs-mock-api-sw.js.map +7 -0
  90. package/docs/fonts/ClashGrotesk-Bold.eot +0 -0
  91. package/docs/fonts/ClashGrotesk-Bold.ttf +0 -0
  92. package/docs/fonts/ClashGrotesk-Bold.woff +0 -0
  93. package/docs/fonts/ClashGrotesk-Bold.woff2 +0 -0
  94. package/docs/fonts/ClashGrotesk-Extralight.eot +0 -0
  95. package/docs/fonts/ClashGrotesk-Extralight.ttf +0 -0
  96. package/docs/fonts/ClashGrotesk-Extralight.woff +0 -0
  97. package/docs/fonts/ClashGrotesk-Extralight.woff2 +0 -0
  98. package/docs/fonts/ClashGrotesk-Light.eot +0 -0
  99. package/docs/fonts/ClashGrotesk-Light.ttf +0 -0
  100. package/docs/fonts/ClashGrotesk-Light.woff +0 -0
  101. package/docs/fonts/ClashGrotesk-Light.woff2 +0 -0
  102. package/docs/fonts/ClashGrotesk-Medium.eot +0 -0
  103. package/docs/fonts/ClashGrotesk-Medium.ttf +0 -0
  104. package/docs/fonts/ClashGrotesk-Medium.woff +0 -0
  105. package/docs/fonts/ClashGrotesk-Medium.woff2 +0 -0
  106. package/docs/fonts/ClashGrotesk-Regular.eot +0 -0
  107. package/docs/fonts/ClashGrotesk-Regular.ttf +0 -0
  108. package/docs/fonts/ClashGrotesk-Regular.woff +0 -0
  109. package/docs/fonts/ClashGrotesk-Regular.woff2 +0 -0
  110. package/docs/fonts/ClashGrotesk-Semibold.eot +0 -0
  111. package/docs/fonts/ClashGrotesk-Semibold.ttf +0 -0
  112. package/docs/fonts/ClashGrotesk-Semibold.woff +0 -0
  113. package/docs/fonts/ClashGrotesk-Semibold.woff2 +0 -0
  114. package/docs/fonts/ClashGrotesk-Variable.eot +0 -0
  115. package/docs/fonts/ClashGrotesk-Variable.ttf +0 -0
  116. package/docs/fonts/ClashGrotesk-Variable.woff +0 -0
  117. package/docs/fonts/ClashGrotesk-Variable.woff2 +0 -0
  118. package/docs/img/concorde-icon.svg +5 -0
  119. package/docs/img/concorde-logo.svg +1 -0
  120. package/docs/img/concorde.png +0 -0
  121. package/docs/img/concorde_def.png +0 -0
  122. package/docs/img/concorde_seuil.png.webp +0 -0
  123. package/docs/img/concorde_seuil_invert.png +0 -0
  124. package/docs/img/paul_metrand.jpg +0 -0
  125. package/docs/img/paul_metrand_xs.jpg +0 -0
  126. package/docs/index.html +93 -0
  127. package/docs/llms-full.txt +5945 -0
  128. package/docs/llms.txt +104 -0
  129. package/docs/robots.txt +16 -0
  130. package/docs/sitemap.xml +237 -0
  131. package/docs/src/core/components/functional/date/date.md +290 -0
  132. package/docs/src/core/components/functional/fetch/fetch.md +125 -0
  133. package/docs/src/core/components/functional/if/if.md +9 -0
  134. package/docs/src/core/components/functional/jsonata/jsonata.md +56 -0
  135. package/docs/src/core/components/functional/list/list.md +65 -0
  136. package/docs/src/core/components/functional/mix/mix.md +41 -0
  137. package/docs/src/core/components/functional/queue/queue.md +72 -0
  138. package/docs/src/core/components/functional/router/router.md +94 -0
  139. package/docs/src/core/components/functional/sdui/default-library.json +108 -0
  140. package/docs/src/core/components/functional/sdui/example.json +99 -0
  141. package/docs/src/core/components/functional/sdui/sdui.md +356 -0
  142. package/docs/src/core/components/functional/states/states.md +87 -0
  143. package/docs/src/core/components/functional/submit/submit.md +114 -0
  144. package/docs/src/core/components/functional/subscriber/subscriber.md +91 -0
  145. package/docs/src/core/components/functional/value/value.md +35 -0
  146. package/docs/src/core/components/ui/alert/alert.md +177 -0
  147. package/docs/src/core/components/ui/alert-messages/alert-messages.md +0 -0
  148. package/docs/src/core/components/ui/badge/badge.md +175 -0
  149. package/docs/src/core/components/ui/button/button.md +183 -0
  150. package/docs/src/core/components/ui/captcha/captcha.md +12 -0
  151. package/docs/src/core/components/ui/card/card.md +152 -0
  152. package/docs/src/core/components/ui/divider/divider.md +35 -0
  153. package/docs/src/core/components/ui/form/checkbox/checkbox.md +77 -0
  154. package/docs/src/core/components/ui/form/fieldset/fieldset.md +129 -0
  155. package/docs/src/core/components/ui/form/form-actions/form-actions.md +77 -0
  156. package/docs/src/core/components/ui/form/form-layout/form-layout.md +44 -0
  157. package/docs/src/core/components/ui/form/input/input.md +142 -0
  158. package/docs/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +29 -0
  159. package/docs/src/core/components/ui/form/radio/radio.md +57 -0
  160. package/docs/src/core/components/ui/form/select/select.md +71 -0
  161. package/docs/src/core/components/ui/form/switch/switch.md +57 -0
  162. package/docs/src/core/components/ui/form/textarea/textarea.md +65 -0
  163. package/docs/src/core/components/ui/group/group.md +75 -0
  164. package/docs/src/core/components/ui/icon/icon.md +125 -0
  165. package/docs/src/core/components/ui/icon/icons.json +1 -0
  166. package/docs/src/core/components/ui/image/image.md +201 -0
  167. package/docs/src/core/components/ui/link/link.md +43 -0
  168. package/docs/src/core/components/ui/loader/loader.md +55 -0
  169. package/docs/src/core/components/ui/menu/menu.md +329 -0
  170. package/docs/src/core/components/ui/modal/modal.md +119 -0
  171. package/docs/src/core/components/ui/pop/pop.md +200 -0
  172. package/docs/src/core/components/ui/progress/progress.md +63 -0
  173. package/docs/src/core/components/ui/table/table.md +455 -0
  174. package/docs/src/core/components/ui/toast/toast.md +166 -0
  175. package/docs/src/core/components/ui/tooltip/tooltip.md +82 -0
  176. package/docs/src/docs/_core-concept/dataFlow.md +88 -0
  177. package/docs/src/docs/_core-concept/overview.md +57 -0
  178. package/docs/src/docs/_core-concept/subscriber.md +75 -0
  179. package/docs/src/docs/_decorators/ancestor-attribute.md +127 -0
  180. package/docs/src/docs/_decorators/auto-subscribe.md +202 -0
  181. package/docs/src/docs/_decorators/bind.md +167 -0
  182. package/docs/src/docs/_decorators/get.md +162 -0
  183. package/docs/src/docs/_decorators/handle.md +175 -0
  184. package/docs/src/docs/_decorators/on-assign.md +390 -0
  185. package/docs/src/docs/_decorators/patch.md +70 -0
  186. package/docs/src/docs/_decorators/post.md +146 -0
  187. package/docs/src/docs/_decorators/publish.md +55 -0
  188. package/docs/src/docs/_decorators/put.md +70 -0
  189. package/docs/src/docs/_decorators/subscribe.md +100 -0
  190. package/docs/src/docs/_decorators/wait-for-ancestors.md +163 -0
  191. package/docs/src/docs/_directives/sub.md +91 -0
  192. package/docs/src/docs/_getting-started/ai-agents.md +76 -0
  193. package/docs/src/docs/_getting-started/concorde-manual-install.md +133 -0
  194. package/docs/src/docs/_getting-started/concorde-outside.md +33 -0
  195. package/docs/src/docs/_getting-started/create-a-component.md +139 -0
  196. package/docs/src/docs/_getting-started/my-first-component.md +236 -0
  197. package/docs/src/docs/_getting-started/my-first-subscriber.md +120 -0
  198. package/docs/src/docs/_getting-started/pubsub.md +37 -0
  199. package/docs/src/docs/_getting-started/start.md +47 -0
  200. package/docs/src/docs/_getting-started/theming.md +91 -0
  201. package/docs/src/docs/_misc/api-configuration.md +81 -0
  202. package/docs/src/docs/_misc/dataProviderKey.md +168 -0
  203. package/docs/src/docs/_misc/docs-mock-api.md +63 -0
  204. package/docs/src/docs/_misc/dynamic-path.md +71 -0
  205. package/docs/src/docs/_misc/endpoint.md +45 -0
  206. package/docs/src/docs/_misc/formelement-subscriber-removal.md +115 -0
  207. package/docs/src/docs/_misc/html-integration.md +15 -0
  208. package/docs/src/docs/search/docs-search.json +10137 -0
  209. package/docs/src/tag-list.json +1 -0
  210. package/docs/src/tsconfig-model.json +23 -0
  211. package/docs/src/tsconfig.json +1224 -0
  212. package/docs/svg/regular/plane.svg +1 -0
  213. package/docs/svg/solid/plane.svg +1 -0
  214. package/package.json +1 -1
@@ -0,0 +1,75 @@
1
+ # Group
2
+
3
+ ## Radio group
4
+ <sonic-code>
5
+ <template>
6
+ <sonic-group formDataProvider="subscriptionData">
7
+ <sonic-button radio name="subscription" value="standard" type="default">😎 Standard</sonic-button>
8
+ <sonic-button radio checked name="subscription" value="premium" type="default">⭐ Premium</sonic-button>
9
+ <sonic-button radio name="subscription" value="diamond" type="default">💎 Diamond</sonic-button>
10
+ </sonic-group>
11
+ </template>
12
+ </sonic-code>
13
+
14
+ ## Button group
15
+ <sonic-code>
16
+ <template>
17
+ <sonic-group>
18
+ <sonic-button type="info" target="_blank" href="https://wwws.airfrance.fr/">🗼Air France</sonic-button>
19
+ <sonic-button type="success" target="_blank" href="https://www.airtahitinui.com/">🌴 Air Tahiti</sonic-button>
20
+ <sonic-button type="danger" target="_blank" href="https://www.aircorsica.com/">💣 Air Corsica</sonic-button>
21
+ </sonic-group>
22
+ </template>
23
+ </sonic-code>
24
+
25
+ ## Input actions prefix
26
+ <sonic-code>
27
+ <template>
28
+ <div class="grid grid-cols-3 gap-3">
29
+ <sonic-group>
30
+ <sonic-button type="info" shape="square">
31
+ <sonic-icon library="iconoir" library="iconoir" name="info-empty"></sonic-icon>
32
+ </sonic-button>
33
+ <sonic-input placeholder="placeholder" ></sonic-input>
34
+ </sonic-group>
35
+ <sonic-group label="Label">
36
+ <sonic-button type="info" shape="square">
37
+ <sonic-icon library="iconoir" library="iconoir" name="info-empty"></sonic-icon>
38
+ </sonic-button>
39
+ <sonic-input ></sonic-input>
40
+ </sonic-group>
41
+ <sonic-group description="Description">
42
+ <sonic-button type="info" shape="square">
43
+ <sonic-icon library="iconoir" library="iconoir" name="info-empty"></sonic-icon>
44
+ </sonic-button>
45
+ <sonic-input ></sonic-input>
46
+ </sonic-group>
47
+ </div>
48
+ </template>
49
+ </sonic-code>
50
+
51
+ ## Input actions suffix
52
+ <sonic-code>
53
+ <template>
54
+ <div class="grid grid-cols-3 gap-3">
55
+ <sonic-group>
56
+ <sonic-input placeholder="placeholder" ></sonic-input>
57
+ <sonic-button type="primary" shape="square">
58
+ <sonic-icon library="iconoir" library="iconoir" name="check"></sonic-icon>
59
+ </sonic-button>
60
+ </sonic-group>
61
+ <sonic-group label="Label">
62
+ <sonic-input ></sonic-input>
63
+ <sonic-button type="primary" shape="square">
64
+ <sonic-icon library="iconoir" library="iconoir" name="check"></sonic-icon>
65
+ </sonic-button>
66
+ </sonic-group>
67
+ <sonic-group description="Description">
68
+ <sonic-input ></sonic-input>
69
+ <sonic-button type="primary" shape="square">
70
+ <sonic-icon library="iconoir" library="iconoir" name="check"></sonic-icon>
71
+ </sonic-button>
72
+ </sonic-group>
73
+ </div>
74
+ </template>
75
+ </sonic-code>
@@ -0,0 +1,125 @@
1
+ # Icon
2
+
3
+
4
+ ## Custom
5
+
6
+ <p >Icons located in the following folder : <span class="text-info">/svg/$prefix/$name.svg<span></p>
7
+
8
+ <sonic-code customIconLibraryPath="/svg/$prefix/$name.svg"
9
+ customIconDefaultPrefix="regular">
10
+ <template>
11
+ <sonic-scope customIconLibraryPath="/svg/$prefix/$name.svg"
12
+ customIconDefaultPrefix="regular">
13
+ <div class="grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-8">
14
+ <div class="text-center">
15
+ <sonic-icon library="custom" prefix="regular" name="plane"></sonic-icon>
16
+ <br>
17
+ <div class="text-xs mt-1">regular</div>
18
+ </div>
19
+ <div class="text-center">
20
+ <sonic-icon library="custom" prefix="solid" name="plane"></sonic-icon>
21
+ <br>
22
+ <div class="text-xs mt-1">solid</div>
23
+ </div>
24
+ <div class="text-center">
25
+ <sonic-icon library="custom" name="plane"></sonic-icon>
26
+ <br>
27
+ <div class="text-xs mt-1">default prefix</div>
28
+ </div>
29
+ </div>
30
+ </sonic-scope>
31
+ </template>
32
+ </sonic-code>
33
+
34
+
35
+ ## External
36
+ <sonic-code>
37
+ <template>
38
+ <div class="grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-8">
39
+ <sonic-link href="https://heroicons.com/" target="_blank" class="text-center underline">
40
+ <sonic-icon library="heroicons" prefix="outline" name="academic-cap" size="lg"></sonic-icon>
41
+ <br>
42
+ <div class="text-xs mt-1">heroicons</div>
43
+ </sonic-link>
44
+ <sonic-link href="https://iconoir.com/" target="_blank" class="text-center underline">
45
+ <sonic-icon library="iconoir" name="2x2-cell" size="lg"></sonic-icon>
46
+ <br>
47
+ <div class="text-xs mt-1">iconoir</div>
48
+ </sonic-link>
49
+ <sonic-link href="https://materialdesignicons.com/" target="_blank" class="text-center underline">
50
+ <sonic-icon library="material" prefix="outline" name="email" size="lg"></sonic-icon>
51
+ <br>
52
+ <div class="text-xs mt-1">material design</div>
53
+ </sonic-link>
54
+ <sonic-link href="https://fontawesome.com/search?o=r&m=free&s=regular" target="_blank" class="text-center underline">
55
+ <sonic-icon library="fontAwesome" prefix="regular" name="user" size="lg"></sonic-icon>
56
+ <br>
57
+ <div class="text-xs mt-1">fontAwesome regular</div>
58
+ </sonic-link>
59
+ <sonic-link href="https://fontawesome.com/search?o=r&m=free&s=solid" target="_blank" class="text-center underline">
60
+ <sonic-icon library="fontAwesome" prefix="solid" name="book" size="lg"></sonic-icon>
61
+ <br>
62
+ <div class="text-xs mt-1">fontAwesome solid</div>
63
+ </sonic-link>
64
+ <sonic-link href="https://feathericons.com/" target="_blank" class="text-center underline">
65
+ <sonic-icon library="feathers" name="activity" size="lg"></sonic-icon>
66
+ <br>
67
+ <div class="text-xs mt-1">feathers</div>
68
+ </sonic-link>
69
+ <sonic-link href="https://lucide.dev/" target="_blank" class="text-center underline">
70
+ <sonic-icon library="lucide" name="album" size="lg"></sonic-icon>
71
+ <br>
72
+ <div class="text-xs mt-1">lucide</div>
73
+ </sonic-link>
74
+ </div>
75
+ </template>
76
+ </sonic-code>
77
+
78
+ ## Size
79
+ <sonic-code>
80
+ <template>
81
+ <div class="grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-8">
82
+ <div class="text-center">
83
+ <sonic-icon library="heroicons" prefix="outline" name="academic-cap" size="2xs"></sonic-icon>
84
+ <br>
85
+ <div class="text-xs mt-1">2xs</div>
86
+ </div>
87
+ <div class="text-center">
88
+ <sonic-icon library="heroicons" prefix="outline" name="academic-cap" size="xs"></sonic-icon>
89
+ <br>
90
+ <div class="text-xs mt-1">xs</div>
91
+ </div>
92
+ <div class="text-center">
93
+ <sonic-icon library="heroicons" prefix="outline" name="academic-cap" size="sm"></sonic-icon>
94
+ <br>
95
+ <div class="text-xs mt-1">sm</div>
96
+ </div>
97
+ <div class="text-center">
98
+ <sonic-icon library="heroicons" prefix="outline" name="academic-cap"></sonic-icon>
99
+ <br>
100
+ <div class="text-xs mt-1">default</div>
101
+ </div>
102
+ <div class="text-center">
103
+ <sonic-icon library="heroicons" prefix="outline" name="academic-cap" size="lg"></sonic-icon>
104
+ <br>
105
+ <div class="text-xs mt-1">lg</div>
106
+ </div>
107
+ <div class="text-center">
108
+ <sonic-icon library="heroicons" prefix="outline" name="academic-cap" size="xl"></sonic-icon>
109
+ <br>
110
+ <div class="text-xs mt-1">xl</div>
111
+ </div>
112
+ <div class="text-center">
113
+ <sonic-icon library="heroicons" prefix="outline" name="academic-cap" size="2xl"></sonic-icon>
114
+ <br>
115
+ <div class="text-xs mt-1">2xl</div>
116
+ </div>
117
+ <div class="text-center">
118
+ <sonic-icon library="heroicons" prefix="outline" name="academic-cap" size="3xl"></sonic-icon>
119
+ <br>
120
+ <div class="text-xs mt-1">3xl</div>
121
+ </div>
122
+ </div>
123
+ </template>
124
+ </sonic-code>
125
+
@@ -0,0 +1 @@
1
+ {"core":{"cancel":"<svg width=\"24\" height=\"24\" stroke-width=\"1.5\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M6.75827 17.2426L12.0009 12M17.2435 6.75736L12.0009 12M12.0009 12L6.75827 6.75736M12.0009 12L17.2435 17.2426\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n","check-circled-outline":"<svg width=\"24\" height=\"24\" stroke-width=\"1.5\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M7 12.5L10 15.5L17 8.5\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n<path d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n","check":"<svg width=\"24\" height=\"24\" stroke-width=\"1.5\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M5 13L9 17L19 7\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n","emoji-puzzled":"<svg width=\"24px\" height=\"24px\" stroke-width=\"1.5\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" ><path d=\"M2 12c0 5.523 4.477 10 10 10s10-4.477 10-10S17.523 2 12 2\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path><path d=\"M11.5 15.5s1.5-2 4.5-2 4.5 2 4.5 2M3 4c0-2.754 4-2.754 4 0 0 1.967-2 1.64-2 4M5 11.01l.01-.011\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path><path d=\"M17.5 9a.5.5 0 110-1 .5.5 0 010 1zM10.5 9a.5.5 0 110-1 .5.5 0 010 1z\" fill=\"#000\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path></svg>","info-empty":"<svg width=\"24\" height=\"24\" stroke-width=\"1.5\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M12 11.5V16.5\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n<path d=\"M12 7.51L12.01 7.49889\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n<path d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n","loader":"<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"feather feather-loader\"><line x1=\"12\" y1=\"2\" x2=\"12\" y2=\"6\"></line><line x1=\"12\" y1=\"18\" x2=\"12\" y2=\"22\"></line><line x1=\"4.93\" y1=\"4.93\" x2=\"7.76\" y2=\"7.76\"></line><line x1=\"16.24\" y1=\"16.24\" x2=\"19.07\" y2=\"19.07\"></line><line x1=\"2\" y1=\"12\" x2=\"6\" y2=\"12\"></line><line x1=\"18\" y1=\"12\" x2=\"22\" y2=\"12\"></line><line x1=\"4.93\" y1=\"19.07\" x2=\"7.76\" y2=\"16.24\"></line><line x1=\"16.24\" y1=\"7.76\" x2=\"19.07\" y2=\"4.93\"></line></svg>","minus-small":"<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" class=\"w-6 h-6\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M18 12H6\" />\n</svg>\n","more-horiz":"<svg width=\"24\" height=\"24\" stroke-width=\"1.5\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M18 12.5C18.2761 12.5 18.5 12.2761 18.5 12C18.5 11.7239 18.2761 11.5 18 11.5C17.7239 11.5 17.5 11.7239 17.5 12C17.5 12.2761 17.7239 12.5 18 12.5Z\" fill=\"currentColor\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n<path d=\"M12 12.5C12.2761 12.5 12.5 12.2761 12.5 12C12.5 11.7239 12.2761 11.5 12 11.5C11.7239 11.5 11.5 11.7239 11.5 12C11.5 12.2761 11.7239 12.5 12 12.5Z\" fill=\"currentColor\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n<path d=\"M6 12.5C6.27614 12.5 6.5 12.2761 6.5 12C6.5 11.7239 6.27614 11.5 6 11.5C5.72386 11.5 5.5 11.7239 5.5 12C5.5 12.2761 5.72386 12.5 6 12.5Z\" fill=\"currentColor\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n","more-vert":"<svg width=\"24\" height=\"24\" stroke-width=\"1.5\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M12 12.5C12.2761 12.5 12.5 12.2761 12.5 12C12.5 11.7239 12.2761 11.5 12 11.5C11.7239 11.5 11.5 11.7239 11.5 12C11.5 12.2761 11.7239 12.5 12 12.5Z\" fill=\"currentColor\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n<path d=\"M12 18.5C12.2761 18.5 12.5 18.2761 12.5 18C12.5 17.7239 12.2761 17.5 12 17.5C11.7239 17.5 11.5 17.7239 11.5 18C11.5 18.2761 11.7239 18.5 12 18.5Z\" fill=\"currentColor\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n<path d=\"M12 6.5C12.2761 6.5 12.5 6.27614 12.5 6C12.5 5.72386 12.2761 5.5 12 5.5C11.7239 5.5 11.5 5.72386 11.5 6C11.5 6.27614 11.7239 6.5 12 6.5Z\" fill=\"currentColor\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n","nav-arrow-down":"<svg width=\"24\" height=\"24\" stroke-width=\"1.5\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M6 9L12 15L18 9\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n","warning-circled-outline":"<svg width=\"24\" height=\"24\" stroke-width=\"1.5\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M12 7L12 13\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n<path d=\"M12 17.01L12.01 16.9989\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n<path d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n"}}
@@ -0,0 +1,201 @@
1
+ # Image
2
+
3
+ Responsive **`<img>`** wrapper: aspect ratio, `object-fit: cover`, rounded corners, and optional fade-in on load. The host uses a light placeholder background (`--sc-placeholder-bg`) until the file is ready. Default **`loading`** is `lazy`; set **`loading="eager"`** for above-the-fold heroes.
4
+
5
+ ## Rounded
6
+
7
+ Omit `rounded` for square corners. Boolean **`rounded`** uses the theme token `--sc-rounded`. Sizes: **`sm`**, **`md`**, **`lg`**, **`xl`**, **`full`** (circle — pair with `ratio="1/1"`), **`none`** (explicit reset).
8
+
9
+ <sonic-code>
10
+ <template>
11
+ <div class="grid gap-6 grid-cols-3 lg:grid-cols-4 items-end text-center text-xs ">
12
+ <div>
13
+ <sonic-image
14
+ ratio="1/1"
15
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
16
+ ></sonic-image>
17
+ <p class="mt-2">default</p>
18
+ </div>
19
+ <div>
20
+ <sonic-image
21
+ rounded="sm"
22
+ ratio="1/1"
23
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
24
+ ></sonic-image>
25
+ <p class="mt-2">sm</p>
26
+ </div>
27
+ <div>
28
+ <sonic-image
29
+ rounded
30
+ ratio="1/1"
31
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
32
+ ></sonic-image>
33
+ <p class="mt-2">rounded</p>
34
+ </div>
35
+ <div>
36
+ <sonic-image
37
+ rounded="md"
38
+ ratio="1/1"
39
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
40
+ ></sonic-image>
41
+ <p class="mt-2">md</p>
42
+ </div>
43
+ <div>
44
+ <sonic-image
45
+ rounded="lg"
46
+ ratio="1/1"
47
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
48
+ ></sonic-image>
49
+ <p class="mt-2">lg</p>
50
+ </div>
51
+ <div>
52
+ <sonic-image
53
+ rounded="xl"
54
+ ratio="1/1"
55
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
56
+ ></sonic-image>
57
+ <p class="mt-2">xl</p>
58
+ </div>
59
+ <div >
60
+ <div >
61
+ <sonic-image
62
+ rounded="full"
63
+ ratio="1/1"
64
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
65
+ ></sonic-image>
66
+ <p class="mt-2">full</p>
67
+ </div>
68
+ </div>
69
+ </div>
70
+ </template>
71
+ </sonic-code>
72
+
73
+ ## Aspect ratio
74
+
75
+ **`ratio`** sets CSS `aspect-ratio` on the image (default **`auto`**). The image still fills the host width (`width: 100%`).
76
+
77
+ <sonic-code>
78
+ <template>
79
+ <div class="grid gap-8 grid-cols-2 items-center">
80
+ <sonic-image
81
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
82
+ ></sonic-image>
83
+ <sonic-image
84
+ ratio="16/9"
85
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
86
+ ></sonic-image>
87
+ <sonic-image
88
+ ratio="1/1"
89
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
90
+ ></sonic-image>
91
+ <sonic-image
92
+ ratio="2/3"
93
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
94
+ ></sonic-image>
95
+ </div>
96
+ </template>
97
+ </sonic-code>
98
+
99
+ ## Object position
100
+
101
+ **`objectPosition`** maps to CSS `object-position` (default **`center center`**). Useful on wide crops when the subject sits off-center.
102
+
103
+ <sonic-code>
104
+ <template>
105
+ <div class="grid gap-8 grid-cols-2 items-center">
106
+ <sonic-image
107
+ ratio="11/4"
108
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
109
+ ></sonic-image>
110
+ <sonic-image
111
+ objectPosition="center top"
112
+ ratio="11/4"
113
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
114
+ ></sonic-image>
115
+ </div>
116
+ </template>
117
+ </sonic-code>
118
+
119
+ ## Cover
120
+
121
+ **`cover`** stretches the image to fill a **positioned** parent (`position: relative` + fixed height or inset). Aspect ratio on the host is ignored while `cover` is set.
122
+
123
+ <sonic-code>
124
+ <template>
125
+ <div class="h-96 relative rounded-lg overflow-hidden">
126
+ <sonic-image
127
+ cover
128
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
129
+ ></sonic-image>
130
+ </div>
131
+ </template>
132
+ </sonic-code>
133
+
134
+ ## Load transition
135
+
136
+ Set **`transition`** to **`fade`** (default when the attribute is present) or **`fade-scale-out`**. The image stays at `opacity: 0` until the browser fires **`load`**, then the **`loaded`** class runs the animation. Changing `src` on an existing element does not replay the effect — mount a new `sonic-image` when you need another entrance (galleries, infinite scroll).
137
+
138
+ Click **Add image** to append small thumbnails and replay the transition. **Clear** resets the row.
139
+
140
+ <sonic-code>
141
+ <template>
142
+ <div class="flex flex-wrap gap-2 mb-4">
143
+ <sonic-button
144
+ size="sm"
145
+ onclick="(function () {
146
+ var host = document.getElementById('sonic-image-transition-host');
147
+ var img = document.createElement('sonic-image');
148
+ img.transition = 'fade';
149
+ img.ratio = '1/1';
150
+ img.rounded = 'md';
151
+ img.loading = 'eager';
152
+ img.style.width = '5rem';
153
+ img.src = 'https://picsum.photos/seed/' + Date.now() + '/120/120';
154
+ host.appendChild(img);
155
+ })()"
156
+ >
157
+ Add image (fade)
158
+ </sonic-button>
159
+ <sonic-button
160
+ size="sm"
161
+ variant="outline"
162
+ onclick="(function () {
163
+ var host = document.getElementById('sonic-image-transition-host');
164
+ var img = document.createElement('sonic-image');
165
+ img.transition = 'fade-scale-out';
166
+ img.ratio = '1/1';
167
+ img.rounded = 'md';
168
+ img.loading = 'eager';
169
+ img.style.width = '5rem';
170
+ img.src = 'https://picsum.photos/seed/' + Date.now() + '/120/120';
171
+ host.appendChild(img);
172
+ })()"
173
+ >
174
+ Add image (fade-scale-out)
175
+ </sonic-button>
176
+ <sonic-button
177
+ size="sm"
178
+ variant="ghost"
179
+ onclick="document.getElementById('sonic-image-transition-host').replaceChildren()"
180
+ >
181
+ Clear
182
+ </sonic-button>
183
+ </div>
184
+ <div id="sonic-image-transition-host" class="flex flex-wrap gap-2 min-h-[5rem]"></div>
185
+ </template>
186
+ </sonic-code>
187
+
188
+ ## Accessibility and parts
189
+
190
+ Always set meaningful **`alt`** text (empty string only for decorative images).
191
+
192
+ <sonic-code>
193
+ <template>
194
+ <sonic-image
195
+ rounded="md"
196
+ ratio="16/9"
197
+ alt="Concorde aircraft in flight"
198
+ src="https://thegoodlife.fr/wp-content/uploads/sites/2/2022/03/compagnies-aeriennes-nostalgie-coeur-insert-03-dr.jpg"
199
+ ></sonic-image>
200
+ </template>
201
+ </sonic-code>
@@ -0,0 +1,43 @@
1
+ # Link
2
+
3
+ ## Href
4
+ <sonic-code>
5
+ <template>
6
+ <sonic-link href="/">Basic link with href attribute</sonic-link>
7
+ </template>
8
+ </sonic-code>
9
+
10
+ ## Target
11
+ <sonic-code>
12
+ <template>
13
+ <sonic-link href="/" target="_blank">Link with target attribute</sonic-link>
14
+ </template>
15
+ </sonic-code>
16
+
17
+ ## AutoActive
18
+
19
+ <sonic-code>
20
+ <template>
21
+ <sonic-link href="/#core/components" class="[&[active]]:text-success">autoActive partial (default)</sonic-link>
22
+ </template>
23
+ </sonic-code>
24
+
25
+ ### AutoActive Strict vs partial
26
+
27
+ <sonic-code>
28
+ <template>
29
+ <div class="grid gap-3">
30
+ <sonic-link href="/#core" autoActive="strict" class="[&[active]]:text-success">autoActive strict</sonic-link>
31
+ <sonic-link href="/#core/components/ui/link/link.md/link" autoActive="strict" class="[&[active]]:text-success">autoActive strict</sonic-link>
32
+ </div>
33
+ </template>
34
+ </sonic-code>
35
+
36
+ ### AutoActive disabled
37
+
38
+ <sonic-code>
39
+ <template>
40
+ <sonic-link href="/#core/components/ui/link/link.md/link" autoActive="disabled" class="[&[active]]:text-success">autoActive disabled</sonic-link>
41
+ </template>
42
+ </sonic-code>
43
+
@@ -0,0 +1,55 @@
1
+ # Loader
2
+
3
+ ## Inline mode
4
+
5
+ <sonic-code>
6
+ <template>
7
+ <sonic-loader mode="inline"></sonic-loader>
8
+ </template>
9
+ </sonic-code>
10
+
11
+ ## CurrentColor
12
+
13
+ <sonic-code>
14
+ <template>
15
+ <sonic-loader mode="inline" currentColor style="color:purple;"></sonic-loader>
16
+ </template>
17
+ </sonic-code>
18
+
19
+
20
+ ## Align
21
+
22
+ <sonic-code>
23
+ <template>
24
+ <sonic-loader mode="inline" align="left"></sonic-loader>
25
+ <sonic-loader mode="inline" align="center"></sonic-loader>
26
+ <sonic-loader mode="inline" align="right"></sonic-loader>
27
+ </template>
28
+ </sonic-code>
29
+
30
+ ## Fixed mode
31
+
32
+ <docs-lit-demo for="docs-toggle-loader-demo"></docs-lit-demo>
33
+
34
+
35
+ ## Loading button
36
+ <sonic-code>
37
+ <template>
38
+ <sonic-button loading>A loading button</sonic-button>
39
+ </template>
40
+ </sonic-code>
41
+
42
+ ## Hide / show programmatically
43
+
44
+ <sonic-code language="javascript">
45
+ <template>
46
+ import {Loader} from "@supersoniks/concorde/core/components/ui/loader/loader";
47
+ // Show
48
+ Loader.show({
49
+ mode:"fixed" // optional : fixed | inline
50
+ container : document.querySelector('#foo') // optional, default : parent sonic-theme || document.body
51
+ });
52
+ // Hide
53
+ Loader.hide();
54
+ </template>
55
+ </sonic-code>