@supersoniks/concorde 3.2.4 → 3.2.6

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 (151) hide show
  1. package/README.md +163 -0
  2. package/build-infos.json +1 -1
  3. package/concorde-core.bundle.js +156 -128
  4. package/concorde-core.es.js +845 -756
  5. package/dist/concorde-core.bundle.js +156 -128
  6. package/dist/concorde-core.es.js +845 -756
  7. package/docs/assets/index-C0K6xugr.css +1 -0
  8. package/docs/assets/index-Dgl1lJQo.js +4861 -0
  9. package/docs/css/docs.css +0 -0
  10. package/docs/fonts/ClashGrotesk-Bold.eot +0 -0
  11. package/docs/fonts/ClashGrotesk-Bold.ttf +0 -0
  12. package/docs/fonts/ClashGrotesk-Bold.woff +0 -0
  13. package/docs/fonts/ClashGrotesk-Bold.woff2 +0 -0
  14. package/docs/fonts/ClashGrotesk-Extralight.eot +0 -0
  15. package/docs/fonts/ClashGrotesk-Extralight.ttf +0 -0
  16. package/docs/fonts/ClashGrotesk-Extralight.woff +0 -0
  17. package/docs/fonts/ClashGrotesk-Extralight.woff2 +0 -0
  18. package/docs/fonts/ClashGrotesk-Light.eot +0 -0
  19. package/docs/fonts/ClashGrotesk-Light.ttf +0 -0
  20. package/docs/fonts/ClashGrotesk-Light.woff +0 -0
  21. package/docs/fonts/ClashGrotesk-Light.woff2 +0 -0
  22. package/docs/fonts/ClashGrotesk-Medium.eot +0 -0
  23. package/docs/fonts/ClashGrotesk-Medium.ttf +0 -0
  24. package/docs/fonts/ClashGrotesk-Medium.woff +0 -0
  25. package/docs/fonts/ClashGrotesk-Medium.woff2 +0 -0
  26. package/docs/fonts/ClashGrotesk-Regular.eot +0 -0
  27. package/docs/fonts/ClashGrotesk-Regular.ttf +0 -0
  28. package/docs/fonts/ClashGrotesk-Regular.woff +0 -0
  29. package/docs/fonts/ClashGrotesk-Regular.woff2 +0 -0
  30. package/docs/fonts/ClashGrotesk-Semibold.eot +0 -0
  31. package/docs/fonts/ClashGrotesk-Semibold.ttf +0 -0
  32. package/docs/fonts/ClashGrotesk-Semibold.woff +0 -0
  33. package/docs/fonts/ClashGrotesk-Semibold.woff2 +0 -0
  34. package/docs/fonts/ClashGrotesk-Variable.eot +0 -0
  35. package/docs/fonts/ClashGrotesk-Variable.ttf +0 -0
  36. package/docs/fonts/ClashGrotesk-Variable.woff +0 -0
  37. package/docs/fonts/ClashGrotesk-Variable.woff2 +0 -0
  38. package/docs/img/concorde-icon.svg +5 -0
  39. package/docs/img/concorde-logo.svg +1 -0
  40. package/docs/img/concorde.png +0 -0
  41. package/docs/img/concorde_def.png +0 -0
  42. package/docs/img/concorde_seuil.png.webp +0 -0
  43. package/docs/img/concorde_seuil_invert.png +0 -0
  44. package/docs/img/paul_metrand.jpg +0 -0
  45. package/docs/img/paul_metrand_xs.jpg +0 -0
  46. package/docs/index.html +93 -0
  47. package/docs/src/core/components/functional/date/date.md +290 -0
  48. package/docs/src/core/components/functional/fetch/fetch.md +117 -0
  49. package/docs/src/core/components/functional/if/if.md +16 -0
  50. package/docs/src/core/components/functional/list/list.md +199 -0
  51. package/docs/src/core/components/functional/mix/mix.md +41 -0
  52. package/docs/src/core/components/functional/queue/queue.md +87 -0
  53. package/docs/src/core/components/functional/router/router.md +129 -0
  54. package/docs/src/core/components/functional/sdui/default-library.json +108 -0
  55. package/docs/src/core/components/functional/sdui/example.json +99 -0
  56. package/docs/src/core/components/functional/sdui/sdui.md +356 -0
  57. package/docs/src/core/components/functional/states/states.md +87 -0
  58. package/docs/src/core/components/functional/submit/submit.md +83 -0
  59. package/docs/src/core/components/functional/subscriber/subscriber.md +91 -0
  60. package/docs/src/core/components/functional/value/value.md +35 -0
  61. package/docs/src/core/components/ui/alert/alert.md +121 -0
  62. package/docs/src/core/components/ui/alert-messages/alert-messages.md +0 -0
  63. package/docs/src/core/components/ui/badge/badge.md +127 -0
  64. package/docs/src/core/components/ui/button/button.md +182 -0
  65. package/docs/src/core/components/ui/captcha/captcha.md +24 -0
  66. package/docs/src/core/components/ui/card/card.md +97 -0
  67. package/docs/src/core/components/ui/divider/divider.md +35 -0
  68. package/docs/src/core/components/ui/form/checkbox/checkbox.md +104 -0
  69. package/docs/src/core/components/ui/form/fieldset/fieldset.md +129 -0
  70. package/docs/src/core/components/ui/form/form-actions/form-actions.md +77 -0
  71. package/docs/src/core/components/ui/form/form-layout/form-layout.md +44 -0
  72. package/docs/src/core/components/ui/form/input/input.md +167 -0
  73. package/docs/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +131 -0
  74. package/docs/src/core/components/ui/form/radio/radio.md +84 -0
  75. package/docs/src/core/components/ui/form/select/select.md +97 -0
  76. package/docs/src/core/components/ui/form/switch/switch.md +84 -0
  77. package/docs/src/core/components/ui/form/textarea/textarea.md +65 -0
  78. package/docs/src/core/components/ui/group/group.md +75 -0
  79. package/docs/src/core/components/ui/icon/icon.md +125 -0
  80. package/docs/src/core/components/ui/icon/icons.json +1 -0
  81. package/docs/src/core/components/ui/image/image.md +107 -0
  82. package/docs/src/core/components/ui/link/link.md +43 -0
  83. package/docs/src/core/components/ui/loader/loader.md +67 -0
  84. package/docs/src/core/components/ui/menu/menu.md +288 -0
  85. package/docs/src/core/components/ui/modal/modal.md +123 -0
  86. package/docs/src/core/components/ui/pop/pop.md +96 -0
  87. package/docs/src/core/components/ui/progress/progress.md +63 -0
  88. package/docs/src/core/components/ui/table/table.md +455 -0
  89. package/docs/src/core/components/ui/tooltip/tooltip.md +82 -0
  90. package/docs/src/docs/_core-concept/overview.md +57 -0
  91. package/docs/src/docs/_core-concept/subscriber.md +76 -0
  92. package/docs/src/docs/_getting-started/concorde-outside.md +143 -0
  93. package/docs/src/docs/_getting-started/create-a-component.md +137 -0
  94. package/docs/src/docs/_getting-started/my-first-subscriber.md +174 -0
  95. package/docs/src/docs/_getting-started/pubsub.md +150 -0
  96. package/docs/src/docs/_getting-started/start.md +39 -0
  97. package/docs/src/docs/_getting-started/theming.md +91 -0
  98. package/docs/src/docs/search/docs-search.json +3917 -0
  99. package/docs/src/tag-list.json +1 -0
  100. package/docs/src/tsconfig-model.json +23 -0
  101. package/docs/src/tsconfig.json +918 -0
  102. package/docs/svg/regular/plane.svg +1 -0
  103. package/docs/svg/solid/plane.svg +1 -0
  104. package/mcp-server/COMPARISON-MCP.md +176 -0
  105. package/mcp-server/README-MCP-NODEJS.md +284 -0
  106. package/mcp-server/README-MCP.md +114 -0
  107. package/mcp-server/README.md +127 -0
  108. package/mcp-server/TECHNICAL-DOCS.md +269 -0
  109. package/mcp-server/concorde-mcp-server.js +859 -0
  110. package/mcp-server/concorde-mcp-server.py +801 -0
  111. package/mcp-server/cursor-mcp-config-advanced.json +68 -0
  112. package/mcp-server/cursor-mcp-config-nodejs.json +74 -0
  113. package/mcp-server/cursor-mcp-config.json +11 -0
  114. package/mcp-server/install-mcp-nodejs.sh +104 -0
  115. package/mcp-server/install-mcp.sh +62 -0
  116. package/mcp-server/package-lock.json +147 -0
  117. package/mcp-server/package-mcp.json +40 -0
  118. package/mcp-server/package.json +40 -0
  119. package/mcp-server/test-mcp.js +107 -0
  120. package/mcp-server/test-mcp.py +73 -0
  121. package/package.json +2 -1
  122. package/php/get-challenge.php +34 -0
  123. package/php/some-service.php +42 -0
  124. package/src/core/components/functional/fetch/fetch.md +6 -0
  125. package/src/core/components/functional/list/list.demo.ts +0 -0
  126. package/src/core/components/functional/list/list.ts +0 -0
  127. package/src/core/components/functional/queue/queue.ts +0 -0
  128. package/src/core/components/ui/captcha/altchaStyles.ts +0 -0
  129. package/src/core/components/ui/form/checkbox/checkbox.ts +6 -0
  130. package/src/core/components/ui/form/input/input.ts +0 -0
  131. package/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +0 -0
  132. package/src/core/components/ui/form/input-autocomplete/input-autocomplete.ts +0 -0
  133. package/src/core/components/ui/form/radio/radio.ts +11 -1
  134. package/src/core/components/ui/form/select/select.ts +0 -0
  135. package/src/core/components/ui/icon/icon.ts +0 -0
  136. package/src/core/components/ui/icon/icons.ts +0 -0
  137. package/src/core/components/ui/modal/modal-close.ts +5 -1
  138. package/src/core/components/ui/modal/modal.ts +35 -8
  139. package/src/core/components/ui/pop/pop.ts +0 -0
  140. package/src/core/components/ui/toast/toast-item.ts +68 -2
  141. package/src/core/components/ui/toast/toast.md +166 -0
  142. package/src/core/components/ui/toast/toast.ts +1 -1
  143. package/src/core/mixins/Fetcher.ts +31 -4
  144. package/src/core/mixins/FormElement.ts +0 -0
  145. package/src/core/utils/PublisherProxy.ts +0 -0
  146. package/src/core/utils/aesCrypto.ts +0 -0
  147. package/src/docs/navigation/navigation.ts +1 -1
  148. package/src/docs/search/docs-search.json +135 -0
  149. package/src/tsconfig.tsbuildinfo +0 -0
  150. package/test-utils/TestUtils.ts +0 -0
  151. package/vite.config.mts +0 -0
@@ -121,6 +121,24 @@ const Fetcher = <
121
121
  @property({ type: Number }) refetchEveryMs = 0;
122
122
  refetchTimeOutId?: ReturnType<typeof setTimeout>;
123
123
 
124
+ private isFetching = false;
125
+ private mustRefetch = false;
126
+ handleStartFetching(): "fetching" | "okToFetch" {
127
+ if (this.isFetching) {
128
+ this.mustRefetch = true;
129
+ return "fetching";
130
+ }
131
+ this.isFetching = true;
132
+ return "okToFetch";
133
+ }
134
+
135
+ handleEndFetching() {
136
+ this.isFetching = false;
137
+ if (this.mustRefetch) {
138
+ this.mustRefetch = false;
139
+ this._fetchData();
140
+ }
141
+ }
124
142
  /**
125
143
  *
126
144
  * C'est ici que les données sont chargées via l'utilitaire API
@@ -156,10 +174,19 @@ const Fetcher = <
156
174
  });
157
175
  }
158
176
 
159
- let data = await this.api.get<PropsType>(
160
- this.endPoint || this.dataProvider || "",
161
- headerData
162
- );
177
+ const fetchStatus = this.handleStartFetching();
178
+ if (fetchStatus === "fetching") {
179
+ return;
180
+ }
181
+ let data = null;
182
+ try {
183
+ data = await this.api.get<PropsType>(
184
+ this.endPoint || this.dataProvider || "",
185
+ headerData
186
+ );
187
+ } catch (_error) {}
188
+
189
+ this.handleEndFetching();
163
190
 
164
191
  this.fetchedData = data;
165
192
  if (this.api.lastResult && !this.api.lastResult.ok) {
File without changes
File without changes
File without changes
@@ -127,7 +127,7 @@ export class DocsNavigation extends LitElement {
127
127
  href: "#core/components/ui/form/textarea/textarea.md/textarea",
128
128
  },
129
129
  { label: "Theme", href: "#" },
130
- { label: "Toast", href: "#" },
130
+ { label: "Toast", href: "#core/components/ui/toast/toast.md/toast" },
131
131
  {
132
132
  label: "Tooltip",
133
133
  href: "#core/components/ui/tooltip/tooltip.md/tooltip",
@@ -2279,6 +2279,141 @@
2279
2279
  }
2280
2280
  }
2281
2281
  },
2282
+ {
2283
+ "search": "Toast",
2284
+ "files": {
2285
+ "core/components/ui/toast/toast.md": {
2286
+ "title": "Toast",
2287
+ "hashes": {
2288
+ "toast": {
2289
+ "count": 1,
2290
+ "title": "",
2291
+ "type": "page"
2292
+ }
2293
+ }
2294
+ }
2295
+ }
2296
+ },
2297
+ {
2298
+ "search": "Les statuts disponibles sont : success, error, warning, info ou vide (par défaut).\n",
2299
+ "files": {
2300
+ "core/components/ui/toast/toast.md": {
2301
+ "title": "Toast",
2302
+ "hashes": {
2303
+ "statut": {
2304
+ "count": 1,
2305
+ "title": "Statut",
2306
+ "type": "paragraph"
2307
+ }
2308
+ }
2309
+ }
2310
+ }
2311
+ },
2312
+ {
2313
+ "search": "Le contenu du toast peut contenir du HTML.\n",
2314
+ "files": {
2315
+ "core/components/ui/toast/toast.md": {
2316
+ "title": "Toast",
2317
+ "hashes": {
2318
+ "avec-contenu-html": {
2319
+ "count": 1,
2320
+ "title": "Avec contenu HTML",
2321
+ "type": "paragraph"
2322
+ }
2323
+ }
2324
+ }
2325
+ }
2326
+ },
2327
+ {
2328
+ "search": "Par défaut, les toasts disparaissent automatiquement. Avec preserve: true, le toast reste affiché jusqu&#39;à ce qu&#39;il soit fermé manuellement.\n",
2329
+ "files": {
2330
+ "core/components/ui/toast/toast.md": {
2331
+ "title": "Toast",
2332
+ "hashes": {
2333
+ "persistance": {
2334
+ "count": 1,
2335
+ "title": "Persistance",
2336
+ "type": "paragraph"
2337
+ }
2338
+ }
2339
+ }
2340
+ }
2341
+ },
2342
+ {
2343
+ "search": "Avec dismissForever: true et un id, le toast peut être masqué définitivement. Une fois fermé, il ne réapparaîtra plus même après rechargement de la page.\n",
2344
+ "files": {
2345
+ "core/components/ui/toast/toast.md": {
2346
+ "title": "Toast",
2347
+ "hashes": {
2348
+ "masquer-définitivement": {
2349
+ "count": 1,
2350
+ "title": "Masquer définitivement",
2351
+ "type": "paragraph"
2352
+ }
2353
+ }
2354
+ }
2355
+ }
2356
+ },
2357
+ {
2358
+ "search": "Avec ghost: true, le toast devient semi-transparent et non-interactif.\n",
2359
+ "files": {
2360
+ "core/components/ui/toast/toast.md": {
2361
+ "title": "Toast",
2362
+ "hashes": {
2363
+ "fantôme": {
2364
+ "count": 1,
2365
+ "title": "Fantôme",
2366
+ "type": "paragraph"
2367
+ }
2368
+ }
2369
+ }
2370
+ }
2371
+ },
2372
+ {
2373
+ "search": "Supprime tous les toasts sauf ceux marqués comme ghost.\n",
2374
+ "files": {
2375
+ "core/components/ui/toast/toast.md": {
2376
+ "title": "Toast",
2377
+ "hashes": {
2378
+ "tout-supprimer": {
2379
+ "count": 1,
2380
+ "title": "Tout supprimer",
2381
+ "type": "paragraph"
2382
+ }
2383
+ }
2384
+ }
2385
+ }
2386
+ },
2387
+ {
2388
+ "search": "Supprime tous les toasts d&#39;un statut spécifique.\n",
2389
+ "files": {
2390
+ "core/components/ui/toast/toast.md": {
2391
+ "title": "Toast",
2392
+ "hashes": {
2393
+ "supprimer-par-statut": {
2394
+ "count": 1,
2395
+ "title": "Supprimer par statut",
2396
+ "type": "paragraph"
2397
+ }
2398
+ }
2399
+ }
2400
+ }
2401
+ },
2402
+ {
2403
+ "search": "Supprime tous les toasts qui ne sont pas marqués comme preserve.\n",
2404
+ "files": {
2405
+ "core/components/ui/toast/toast.md": {
2406
+ "title": "Toast",
2407
+ "hashes": {
2408
+ "supprimer-les-éléments-temporaires": {
2409
+ "count": 1,
2410
+ "title": "Supprimer les éléments temporaires",
2411
+ "type": "paragraph"
2412
+ }
2413
+ }
2414
+ }
2415
+ }
2416
+ },
2282
2417
  {
2283
2418
  "search": "Tooltip",
2284
2419
  "files": {
File without changes
File without changes
package/vite.config.mts CHANGED
File without changes