@supersoniks/concorde 3.1.64 → 3.1.66

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 (229) hide show
  1. package/build-infos.json +1 -1
  2. package/concorde-core.bundle.js +89 -71
  3. package/concorde-core.es.js +484 -433
  4. package/dist/concorde-core.bundle.js +89 -71
  5. package/dist/concorde-core.es.js +484 -433
  6. package/index.html +0 -0
  7. package/package.json +1 -1
  8. package/scripts/create-search.js +0 -0
  9. package/scripts/generate-routes.js +0 -0
  10. package/src/core/_types/types.ts +0 -0
  11. package/src/core/components/functional/date/date.ts +0 -0
  12. package/src/core/components/functional/functional.ts +0 -0
  13. package/src/core/components/functional/if/if.md +0 -0
  14. package/src/core/components/functional/if/if.test.ts +0 -0
  15. package/src/core/components/functional/list/list.demo.ts +0 -0
  16. package/src/core/components/functional/list/list.spec.ts +0 -0
  17. package/src/core/components/functional/list/list.ts +13 -4
  18. package/src/core/components/functional/queue/queue.demo.ts +0 -0
  19. package/src/core/components/functional/queue/queue.ts +2 -0
  20. package/src/core/components/functional/router/router.demo.ts +0 -0
  21. package/src/core/components/functional/router/router.md +0 -0
  22. package/src/core/components/functional/router/router.spec.ts +0 -0
  23. package/src/core/components/functional/router/router.ts +0 -0
  24. package/src/core/components/functional/sonic-scope/sonic-scope.ts +0 -0
  25. package/src/core/components/functional/states/states.demo.ts +0 -0
  26. package/src/core/components/functional/states/states.md +0 -0
  27. package/src/core/components/functional/states/states.spec.ts +0 -0
  28. package/src/core/components/functional/states/states.ts +0 -0
  29. package/src/core/components/functional/submit/submit.ts +0 -0
  30. package/src/core/components/functional/translation/translation.ts +0 -0
  31. package/src/core/components/ui/_css/scroll.ts +0 -0
  32. package/src/core/components/ui/_css/shadow.ts +0 -0
  33. package/src/core/components/ui/_css/size.ts +0 -0
  34. package/src/core/components/ui/_css/type.ts +0 -0
  35. package/src/core/components/ui/alert/alert.md +0 -0
  36. package/src/core/components/ui/alert/alert.ts +0 -0
  37. package/src/core/components/ui/alert-messages/alert-messages.md +0 -0
  38. package/src/core/components/ui/badge/badge.md +0 -0
  39. package/src/core/components/ui/badge/badge.ts +0 -0
  40. package/src/core/components/ui/button/button.md +0 -0
  41. package/src/core/components/ui/button/button.ts +0 -0
  42. package/src/core/components/ui/captcha/captcha.md +0 -0
  43. package/src/core/components/ui/captcha/captcha.ts +0 -0
  44. package/src/core/components/ui/card/card-footer.ts +0 -0
  45. package/src/core/components/ui/card/card-header-descripton.ts +0 -0
  46. package/src/core/components/ui/card/card-header.ts +0 -0
  47. package/src/core/components/ui/card/card-main.ts +0 -0
  48. package/src/core/components/ui/card/card.md +0 -0
  49. package/src/core/components/ui/card/card.ts +0 -0
  50. package/src/core/components/ui/divider/divider.ts +0 -0
  51. package/src/core/components/ui/form/checkbox/checkbox.md +15 -5
  52. package/src/core/components/ui/form/checkbox/checkbox.ts +1 -1
  53. package/src/core/components/ui/form/css/form-control.ts +1 -2
  54. package/src/core/components/ui/form/fieldset/fieldset.ts +1 -0
  55. package/src/core/components/ui/form/fieldset/legend-description.ts +7 -0
  56. package/src/core/components/ui/form/fieldset/legend.ts +7 -1
  57. package/src/core/components/ui/form/form-layout/form-layout.md +0 -0
  58. package/src/core/components/ui/form/input/input.md +0 -0
  59. package/src/core/components/ui/form/input/input.ts +0 -0
  60. package/src/core/components/ui/form/input-autocomplete/input-autocomplete.ts +0 -0
  61. package/src/core/components/ui/form/radio/radio.md +0 -0
  62. package/src/core/components/ui/form/radio/radio.ts +0 -0
  63. package/src/core/components/ui/form/select/select.md +0 -0
  64. package/src/core/components/ui/form/select/select.ts +10 -5
  65. package/src/core/components/ui/form/switch/switch.md +0 -0
  66. package/src/core/components/ui/form/switch/switch.ts +0 -0
  67. package/src/core/components/ui/form/textarea/textarea.ts +0 -0
  68. package/src/core/components/ui/icon/icon.ts +0 -0
  69. package/src/core/components/ui/icon/icons.ts +0 -0
  70. package/src/core/components/ui/image/image.md +0 -0
  71. package/src/core/components/ui/image/image.ts +0 -0
  72. package/src/core/components/ui/loader/loader.md +0 -0
  73. package/src/core/components/ui/loader/loader.ts +0 -0
  74. package/src/core/components/ui/loader/styles/fixed.ts +0 -0
  75. package/src/core/components/ui/loader/styles/inline.ts +0 -0
  76. package/src/core/components/ui/menu/menu.ts +0 -0
  77. package/src/core/components/ui/modal/modal-actions.ts +0 -0
  78. package/src/core/components/ui/modal/modal-subtitle.ts +0 -0
  79. package/src/core/components/ui/modal/modal-title.ts +0 -0
  80. package/src/core/components/ui/modal/modal.md +0 -0
  81. package/src/core/components/ui/modal/modal.ts +0 -0
  82. package/src/core/components/ui/pop/pop.ts +0 -0
  83. package/src/core/components/ui/progress/progress.ts +0 -0
  84. package/src/core/components/ui/table/table-tbody.ts +0 -0
  85. package/src/core/components/ui/table/table-th.ts +0 -0
  86. package/src/core/components/ui/table/table.ts +0 -0
  87. package/src/core/components/ui/theme/theme-collection/core-variables.ts +0 -0
  88. package/src/core/components/ui/theme/theme-collection/dark.ts +0 -0
  89. package/src/core/components/ui/theme/theme-collection/light.ts +0 -0
  90. package/src/core/components/ui/theme/theme.ts +0 -0
  91. package/src/core/components/ui/toast/toast-item.ts +0 -0
  92. package/src/core/components/ui/toast/toast.ts +2 -4
  93. package/src/core/components/ui/tooltip/tooltip.ts +0 -0
  94. package/src/core/components/ui/ui.ts +0 -0
  95. package/src/core/directives/DataProvider.ts +0 -0
  96. package/src/core/directives/Wording.ts +0 -0
  97. package/src/core/mixins/Fetcher.ts +0 -0
  98. package/src/core/mixins/FormCheckable.ts +4 -3
  99. package/src/core/mixins/FormElement.ts +11 -0
  100. package/src/core/mixins/Subscriber.ts +4 -8
  101. package/src/core/mixins/TemplatesContainer.ts +0 -0
  102. package/src/core/utils/HTML.ts +0 -0
  103. package/src/core/utils/LocationHandler.ts +0 -0
  104. package/src/core/utils/Objects.ts +0 -0
  105. package/src/core/utils/PublisherProxy.ts +47 -4
  106. package/src/core/utils/Utils.ts +0 -0
  107. package/src/core/utils/aesCrypto.ts +0 -0
  108. package/src/core/utils/api.ts +0 -0
  109. package/src/core/utils/route.spec.ts +0 -0
  110. package/src/core/utils/route.ts +0 -0
  111. package/src/docs/code.ts +0 -0
  112. package/src/docs/docs.ts +0 -0
  113. package/src/docs/header/header.ts +0 -0
  114. package/src/docs/layout.ts +0 -0
  115. package/src/docs/navigation/navigation.ts +0 -0
  116. package/src/docs/search/docs-search.json +0 -0
  117. package/src/docs/search/markdown-renderer.ts +0 -0
  118. package/src/docs/search/page.ts +0 -0
  119. package/src/docs/search/search.ts +0 -0
  120. package/src/docs/tailwind/css/tailwind.css +0 -0
  121. package/src/docs/tailwind/css.d.ts +0 -0
  122. package/src/index.ts +0 -0
  123. package/src/test-utils/TestUtils.ts +0 -0
  124. package/src/tsconfig-model.json +0 -0
  125. package/src/tsconfig.json +0 -0
  126. package/src/tsconfig.tsbuildinfo +0 -0
  127. package/tailwind.config.js +0 -0
  128. package/templates-test.html +0 -0
  129. package/vite/config.js +0 -0
  130. package/vite.config.mts +0 -0
  131. package/docs/assets/index-D9bBwsCn.js +0 -4537
  132. package/docs/assets/index-DCRPZO3x.css +0 -1
  133. package/docs/css/docs.css +0 -0
  134. package/docs/fonts/ClashGrotesk-Bold.eot +0 -0
  135. package/docs/fonts/ClashGrotesk-Bold.ttf +0 -0
  136. package/docs/fonts/ClashGrotesk-Bold.woff +0 -0
  137. package/docs/fonts/ClashGrotesk-Bold.woff2 +0 -0
  138. package/docs/fonts/ClashGrotesk-Extralight.eot +0 -0
  139. package/docs/fonts/ClashGrotesk-Extralight.ttf +0 -0
  140. package/docs/fonts/ClashGrotesk-Extralight.woff +0 -0
  141. package/docs/fonts/ClashGrotesk-Extralight.woff2 +0 -0
  142. package/docs/fonts/ClashGrotesk-Light.eot +0 -0
  143. package/docs/fonts/ClashGrotesk-Light.ttf +0 -0
  144. package/docs/fonts/ClashGrotesk-Light.woff +0 -0
  145. package/docs/fonts/ClashGrotesk-Light.woff2 +0 -0
  146. package/docs/fonts/ClashGrotesk-Medium.eot +0 -0
  147. package/docs/fonts/ClashGrotesk-Medium.ttf +0 -0
  148. package/docs/fonts/ClashGrotesk-Medium.woff +0 -0
  149. package/docs/fonts/ClashGrotesk-Medium.woff2 +0 -0
  150. package/docs/fonts/ClashGrotesk-Regular.eot +0 -0
  151. package/docs/fonts/ClashGrotesk-Regular.ttf +0 -0
  152. package/docs/fonts/ClashGrotesk-Regular.woff +0 -0
  153. package/docs/fonts/ClashGrotesk-Regular.woff2 +0 -0
  154. package/docs/fonts/ClashGrotesk-Semibold.eot +0 -0
  155. package/docs/fonts/ClashGrotesk-Semibold.ttf +0 -0
  156. package/docs/fonts/ClashGrotesk-Semibold.woff +0 -0
  157. package/docs/fonts/ClashGrotesk-Semibold.woff2 +0 -0
  158. package/docs/fonts/ClashGrotesk-Variable.eot +0 -0
  159. package/docs/fonts/ClashGrotesk-Variable.ttf +0 -0
  160. package/docs/fonts/ClashGrotesk-Variable.woff +0 -0
  161. package/docs/fonts/ClashGrotesk-Variable.woff2 +0 -0
  162. package/docs/img/concorde-icon.svg +0 -5
  163. package/docs/img/concorde-logo.svg +0 -1
  164. package/docs/img/concorde.png +0 -0
  165. package/docs/img/concorde_def.png +0 -0
  166. package/docs/img/concorde_seuil.png.webp +0 -0
  167. package/docs/img/concorde_seuil_invert.png +0 -0
  168. package/docs/img/paul_metrand.jpg +0 -0
  169. package/docs/img/paul_metrand_xs.jpg +0 -0
  170. package/docs/index.html +0 -93
  171. package/docs/src/core/components/functional/date/date.md +0 -290
  172. package/docs/src/core/components/functional/fetch/fetch.md +0 -117
  173. package/docs/src/core/components/functional/if/if.md +0 -16
  174. package/docs/src/core/components/functional/list/list.md +0 -199
  175. package/docs/src/core/components/functional/mix/mix.md +0 -41
  176. package/docs/src/core/components/functional/queue/queue.md +0 -87
  177. package/docs/src/core/components/functional/router/router.md +0 -108
  178. package/docs/src/core/components/functional/sdui/default-library.json +0 -108
  179. package/docs/src/core/components/functional/sdui/example.json +0 -99
  180. package/docs/src/core/components/functional/sdui/sdui.md +0 -356
  181. package/docs/src/core/components/functional/states/states.md +0 -87
  182. package/docs/src/core/components/functional/submit/submit.md +0 -83
  183. package/docs/src/core/components/functional/subscriber/subscriber.md +0 -91
  184. package/docs/src/core/components/functional/value/value.md +0 -35
  185. package/docs/src/core/components/ui/alert/alert.md +0 -121
  186. package/docs/src/core/components/ui/alert-messages/alert-messages.md +0 -0
  187. package/docs/src/core/components/ui/badge/badge.md +0 -127
  188. package/docs/src/core/components/ui/button/button.md +0 -182
  189. package/docs/src/core/components/ui/captcha/captcha.md +0 -12
  190. package/docs/src/core/components/ui/card/card.md +0 -97
  191. package/docs/src/core/components/ui/divider/divider.md +0 -35
  192. package/docs/src/core/components/ui/form/checkbox/checkbox.md +0 -94
  193. package/docs/src/core/components/ui/form/fieldset/fieldset.md +0 -129
  194. package/docs/src/core/components/ui/form/form-actions/form-actions.md +0 -77
  195. package/docs/src/core/components/ui/form/form-layout/form-layout.md +0 -44
  196. package/docs/src/core/components/ui/form/input/input.md +0 -167
  197. package/docs/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +0 -130
  198. package/docs/src/core/components/ui/form/radio/radio.md +0 -84
  199. package/docs/src/core/components/ui/form/select/select.md +0 -97
  200. package/docs/src/core/components/ui/form/switch/switch.md +0 -84
  201. package/docs/src/core/components/ui/form/textarea/textarea.md +0 -65
  202. package/docs/src/core/components/ui/group/group.md +0 -75
  203. package/docs/src/core/components/ui/icon/icon.md +0 -125
  204. package/docs/src/core/components/ui/icon/icons.json +0 -1
  205. package/docs/src/core/components/ui/image/image.md +0 -107
  206. package/docs/src/core/components/ui/link/link.md +0 -43
  207. package/docs/src/core/components/ui/loader/loader.md +0 -67
  208. package/docs/src/core/components/ui/menu/menu.md +0 -288
  209. package/docs/src/core/components/ui/modal/modal.md +0 -123
  210. package/docs/src/core/components/ui/pop/pop.md +0 -79
  211. package/docs/src/core/components/ui/progress/progress.md +0 -63
  212. package/docs/src/core/components/ui/table/table.md +0 -455
  213. package/docs/src/core/components/ui/tooltip/tooltip.md +0 -82
  214. package/docs/src/docs/_core-concept/overview.md +0 -57
  215. package/docs/src/docs/_core-concept/subscriber.md +0 -76
  216. package/docs/src/docs/_getting-started/concorde-outside.md +0 -143
  217. package/docs/src/docs/_getting-started/create-a-component.md +0 -137
  218. package/docs/src/docs/_getting-started/my-first-subscriber.md +0 -174
  219. package/docs/src/docs/_getting-started/pubsub.md +0 -150
  220. package/docs/src/docs/_getting-started/start.md +0 -39
  221. package/docs/src/docs/_getting-started/theming.md +0 -91
  222. package/docs/src/docs/search/docs-search.json +0 -3902
  223. package/docs/src/tag-list.json +0 -1
  224. package/docs/src/tsconfig-model.json +0 -23
  225. package/docs/src/tsconfig.json +0 -835
  226. package/docs/svg/regular/plane.svg +0 -1
  227. package/docs/svg/solid/plane.svg +0 -1
  228. package/php/get-challenge.php +0 -34
  229. package/php/some-service.php +0 -42
@@ -16,6 +16,12 @@ type TemplateFillingListener = {
16
16
  propertyMap: Record<string, string>;
17
17
  } & DynamicFillingListener;
18
18
 
19
+ type PublisherProxyOptions = {
20
+ localStorageMode?: string;
21
+ expirationDelayMs?: number;
22
+ invalidateOnPageShow?: boolean;
23
+ };
24
+
19
25
  function isLeaf(value: any) {
20
26
  return Object.prototype.hasOwnProperty.call(value, "__value");
21
27
  }
@@ -52,6 +58,7 @@ export class PublisherProxy<T = any> {
52
58
  _value_: T;
53
59
  _is_savable_ = false;
54
60
  _expiration_delay_ = 1000 * 60 * 60 * 12;
61
+ _invalidate_on_page_show_ = false;
55
62
  _invalidateListeners_ = new Set<VoidFunction>();
56
63
  _formInvalidateListeners_ = new Set<VoidFunction>();
57
64
  _assignListeners_ = new Set<(value: T) => void>();
@@ -351,6 +358,19 @@ export class PublisherProxy<T = any> {
351
358
  }
352
359
 
353
360
  if (isLeafNewValue) {
361
+ // Si la valeur précédente était composite, on reset tous les sous-éléments à null
362
+ this._proxies_.forEach((_subProxy, key) => {
363
+ /**
364
+ *
365
+ * On reùmplace les undefined par des nuls pour eviter la suppression des clefs sauf pour les clef tableaux
366
+ **/
367
+
368
+ if (key != "_parent_") {
369
+ _subProxy.set(null);
370
+ this._publishDynamicFilling_(key, null);
371
+ }
372
+ });
373
+
354
374
  //await //await here gives better performance but can cause issues with some listeners
355
375
  this._publishAssignement_(lockInternalMutationsTransmission);
356
376
  if (this.parent && this._parentKey_) {
@@ -497,6 +517,16 @@ export class PublisherManager {
497
517
  this.isLocalStrorageReady = this.cleanStorageData() as Promise<boolean>;
498
518
  }
499
519
 
520
+ invalidateAll() {
521
+ this.publishers.forEach((publisher) => {
522
+ if (!publisher._invalidate_on_page_show_) {
523
+ return;
524
+ }
525
+
526
+ publisher.invalidate();
527
+ });
528
+ }
529
+
500
530
  async cleanStorageData() {
501
531
  return new Promise((resolve) => {
502
532
  const doiIt = async () => {
@@ -611,11 +641,9 @@ export class PublisherManager {
611
641
  }
612
642
 
613
643
  initialisedData: string[] = [];
614
- get(
615
- id: string,
616
- options?: { localStorageMode?: string; expirationDelayMs?: number }
617
- ) {
644
+ get(id: string, options?: PublisherProxyOptions) {
618
645
  const hasLocalStorage = options?.localStorageMode === "enabled";
646
+ const invalidateOnPageShow = options?.invalidateOnPageShow === true;
619
647
  if (!this.publishers.has(id)) {
620
648
  const data = {};
621
649
  const publisher = new Publisher(data) as PublisherInterface;
@@ -630,6 +658,9 @@ export class PublisherManager {
630
658
  this.initialisedData.push(id);
631
659
  this.setLocalData(publisher, id);
632
660
  }
661
+ if (invalidateOnPageShow) {
662
+ publisher._invalidate_on_page_show_ = invalidateOnPageShow;
663
+ }
633
664
  return this.publishers.get(id) as PublisherInterface;
634
665
  }
635
666
  /**
@@ -778,6 +809,7 @@ const internalProps: Set<string> = new Set([
778
809
  "_lockInternalMutationPublishing_",
779
810
  "_instanceCounter_",
780
811
  "_assignmentId_",
812
+ "_invalidate_on_page_show_",
781
813
  ]);
782
814
 
783
815
  /**
@@ -851,6 +883,10 @@ export default class Publisher<
851
883
  publisherInstance._expiration_delay_ = vValue;
852
884
  return true;
853
885
  }
886
+ if (sKey == "_invalidate_on_page_show_") {
887
+ publisherInstance._invalidate_on_page_show_ = vValue;
888
+ return true;
889
+ }
854
890
  if (sKey == "_instanceCounter_") {
855
891
  publisherInstance._instanceCounter_ = vValue;
856
892
  return true;
@@ -967,3 +1003,10 @@ try {
967
1003
  PublisherWebComponent
968
1004
  );
969
1005
  } catch (e) {}
1006
+
1007
+ /**
1008
+ * next back handling data invalidation
1009
+ */
1010
+ window.addEventListener("pageshow", (e) => {
1011
+ if (e.persisted) PublisherManager.getInstance().invalidateAll();
1012
+ });
File without changes
File without changes
File without changes
File without changes
File without changes
package/src/docs/code.ts CHANGED
File without changes
package/src/docs/docs.ts CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/src/index.ts CHANGED
File without changes
File without changes
File without changes
package/src/tsconfig.json CHANGED
File without changes
File without changes
File without changes
File without changes
package/vite/config.js CHANGED
File without changes
package/vite.config.mts CHANGED
File without changes