@supersoniks/concorde 1.1.45 → 1.1.47

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 (63) hide show
  1. package/README.md +0 -0
  2. package/cli.js +0 -0
  3. package/concorde-core.bundle.js +36 -23
  4. package/concorde-core.es.js +1156 -864
  5. package/concorde-customer.bundle.js +129 -0
  6. package/concorde-customer.es.js +22004 -0
  7. package/core/_types/types.d.ts +0 -1
  8. package/core/components/functional/date/date.js +15 -7
  9. package/core/components/functional/fetch/fetch.d.ts +3 -1
  10. package/core/components/functional/list/list.d.ts +36 -19
  11. package/core/components/functional/list/list.js +15 -23
  12. package/core/components/functional/queue/queue.d.ts +6 -1
  13. package/core/components/functional/queue/queue.js +92 -54
  14. package/core/components/functional/sdui/sdui.d.ts +3 -4
  15. package/core/components/functional/sdui/sdui.js +0 -3
  16. package/core/components/ui/_css/type.js +12 -12
  17. package/core/components/ui/alert/alert.d.ts +3 -0
  18. package/core/components/ui/alert/alert.js +33 -1
  19. package/core/components/ui/badge/badge.d.ts +1 -1
  20. package/core/components/ui/badge/badge.js +9 -3
  21. package/core/components/ui/button/button.d.ts +2 -0
  22. package/core/components/ui/button/button.js +37 -12
  23. package/core/components/ui/form/checkbox/checkbox.d.ts +3 -0
  24. package/core/components/ui/form/checkbox/checkbox.js +14 -3
  25. package/core/components/ui/form/css/form-control.d.ts +1 -0
  26. package/core/components/ui/form/css/form-control.js +17 -0
  27. package/core/components/ui/form/input/input.d.ts +4 -3
  28. package/core/components/ui/form/input/input.js +38 -1
  29. package/core/components/ui/form/textarea/textarea.d.ts +1 -0
  30. package/core/components/ui/icon/icon.js +1 -1
  31. package/core/components/ui/image/image.d.ts +2 -0
  32. package/core/components/ui/image/image.js +28 -0
  33. package/core/components/ui/modal/modal-close.js +2 -3
  34. package/core/components/ui/modal/modal-content.js +1 -0
  35. package/core/components/ui/modal/modal.d.ts +8 -0
  36. package/core/components/ui/modal/modal.js +34 -6
  37. package/core/components/ui/pop/pop.js +1 -1
  38. package/core/components/ui/theme/css/tailwind.css +0 -0
  39. package/core/components/ui/theme/css/tailwind.d.ts +0 -0
  40. package/core/components/ui/theme/theme-collection/core-variables.js +18 -9
  41. package/core/components/ui/theme/theme.js +15 -8
  42. package/core/components/ui/toast/toast.d.ts +1 -1
  43. package/core/components/ui/toast/types.d.ts +1 -1
  44. package/core/components/ui/ui.d.ts +0 -1
  45. package/core/components/ui/ui.js +0 -1
  46. package/core/mixins/Fetcher.d.ts +3 -1
  47. package/core/mixins/Fetcher.js +45 -14
  48. package/core/mixins/FormCheckable.d.ts +1 -0
  49. package/core/mixins/FormInput.d.ts +1 -0
  50. package/core/mixins/Subscriber.d.ts +1 -0
  51. package/core/mixins/Subscriber.js +12 -7
  52. package/core/utils/LocationHandler.js +9 -3
  53. package/core/utils/PublisherProxy.d.ts +30 -4
  54. package/core/utils/PublisherProxy.js +218 -7
  55. package/core/utils/api.d.ts +3 -0
  56. package/core/utils/api.js +3 -1
  57. package/img/concorde-logo.svg +0 -0
  58. package/img/concorde.png +0 -0
  59. package/img/concorde_def.png +0 -0
  60. package/mixins.d.ts +5 -1
  61. package/package.json +5 -1
  62. package/svg/regular/plane.svg +0 -0
  63. package/svg/solid/plane.svg +0 -0
@@ -3,7 +3,7 @@
3
3
  * Merci de laisser ce fichier sans la moindre dépendance en dehors de types du ceur.
4
4
  * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
5
5
  * **/
6
- import { CoreJSType, PublisherContentType } from "../_types/types";
6
+ import { PublisherInterface, CoreJSType, PublisherContentType } from "../_types/types";
7
7
  type DynamicFillingListener = any;
8
8
  type TemplateFillingListener = {
9
9
  propertyMap: Record<string, string>;
@@ -12,15 +12,18 @@ type TemplateFillingListener = {
12
12
  * Custom Proxy contient les méthodes des publishers retournés par PublisherManager.get(publisherId) qui seront utilisées couramment
13
13
  */
14
14
  export declare class PublisherProxy<T = any> {
15
+ static instances: Map<number, PublisherProxy<any>>;
16
+ static instancesCounter: number;
15
17
  _proxies_: Map<string, PublisherProxy>;
16
18
  _value_: T;
17
- _key_: string;
19
+ _is_savable_: boolean;
18
20
  _invalidateListeners_: Set<VoidFunction>;
19
21
  _assignListeners_: Set<(value: T) => void>;
20
22
  _mutationListeners_: Set<VoidFunction>;
21
23
  _fillListeners_: Set<Record<string, CoreJSType>>;
22
24
  _templateFillListeners_: Set<any>;
23
25
  _lockInternalMutationPublishing_: boolean;
26
+ _instanceCounter_: number;
24
27
  parent: PublisherProxy | null;
25
28
  root: PublisherProxy;
26
29
  constructor(target: T, parentProxPub: PublisherProxy | null);
@@ -91,6 +94,10 @@ export declare class PublisherProxy<T = any> {
91
94
  * Extraire la valeur actuelle du proxy
92
95
  */
93
96
  get(): T;
97
+ /**
98
+ * retourner le webcomponent auquel le proxy est associé
99
+ */
100
+ get $tag(): string;
94
101
  }
95
102
  /**
96
103
  * Utilitaires de gestion des Publisher
@@ -98,9 +105,19 @@ export declare class PublisherProxy<T = any> {
98
105
  *
99
106
  */
100
107
  export declare class PublisherManager {
108
+ static changed: boolean;
109
+ static saving: boolean;
110
+ static saveId: number;
101
111
  static instance: PublisherManager | null;
112
+ enabledLocaStorageProxies: string[];
102
113
  publishers: Map<string, Publisher<PublisherContentType>>;
114
+ localStorageData: Record<string, {
115
+ lastModifiationMS: number;
116
+ data: PublisherContentType;
117
+ }>;
118
+ isLocalStrorageReady: Promise<boolean> | null;
103
119
  constructor();
120
+ cleanStorageData(): Promise<unknown>;
104
121
  /**
105
122
  * PublisherManager est un singleton
106
123
  */
@@ -109,7 +126,9 @@ export declare class PublisherManager {
109
126
  * shortcut static pour obtenir un publisher vias sont id/adresse sans taper getInstance.
110
127
  * Si le publisher n'existe pas, il est créé.
111
128
  */
112
- static get(id: string): any;
129
+ static get(id: string, options?: {
130
+ localStorageMode?: string;
131
+ }): any;
113
132
  /**
114
133
  * shortcut static pour supprimer un publisher de la liste et appel également delete sur le publisher ce qui le supprime, de même que ses sous publishers
115
134
  */
@@ -118,7 +137,11 @@ export declare class PublisherManager {
118
137
  * Obtenir un publisher vias sont id/adresse
119
138
  * Si le publisher n'existe pas, il est créé.
120
139
  */
121
- get(id: string): any;
140
+ setLocalData(publisher: PublisherInterface, id: string): Promise<void>;
141
+ initialisedData: string[];
142
+ get(id: string, options?: {
143
+ localStorageMode?: string;
144
+ }): any;
122
145
  /**
123
146
  * Remplace un publisher pour l'id fourni par un autre.
124
147
  * L'autre publisher n'est pas supprimé.
@@ -128,6 +151,9 @@ export declare class PublisherManager {
128
151
  * supprimer un publisher de la liste et appel également delete sur le publisher ce qui le supprime, de même que ses sous publishers
129
152
  */
130
153
  delete(id: string): boolean;
154
+ saveToLocalStorage(saveId?: number): Promise<void>;
155
+ compress(string: string, encoding: string): Promise<string>;
156
+ decompress(str: string, encoding: string): Promise<string>;
131
157
  }
132
158
  /**
133
159
  * Le Proxy Javascript
@@ -1,4 +1,13 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any*/
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  function isComplex(value) {
3
12
  return typeof value === "object" && value != null;
4
13
  }
@@ -8,16 +17,18 @@ function isComplex(value) {
8
17
  export class PublisherProxy {
9
18
  constructor(target, parentProxPub) {
10
19
  this._proxies_ = new Map();
11
- this._key_ = "";
20
+ this._is_savable_ = false;
12
21
  this._invalidateListeners_ = new Set();
13
22
  this._assignListeners_ = new Set();
14
23
  this._mutationListeners_ = new Set();
15
24
  this._fillListeners_ = new Set();
16
25
  this._templateFillListeners_ = new Set();
17
26
  this._lockInternalMutationPublishing_ = false;
27
+ this._instanceCounter_ = 0;
18
28
  this._value_ = target;
19
29
  this.parent = parentProxPub || null;
20
30
  this.root = this;
31
+ this._instanceCounter_ = 0;
21
32
  while (this.root.parent) {
22
33
  this.root = this.root.parent;
23
34
  }
@@ -36,6 +47,7 @@ export class PublisherProxy {
36
47
  this._fillListeners_.clear();
37
48
  this._templateFillListeners_.clear();
38
49
  this._proxies_.clear();
50
+ PublisherProxy.instances.delete(this._instanceCounter_);
39
51
  }
40
52
  /**
41
53
  * Utile pour savoir si quelque chose est en écoute d'une modification sur le proxy via une des methodes associées
@@ -51,6 +63,12 @@ export class PublisherProxy {
51
63
  this._mutationListeners_.forEach((handler) => handler());
52
64
  if (lockInternalMutationsTransmission)
53
65
  return;
66
+ if (!PublisherManager.changed && this._is_savable_) {
67
+ PublisherManager.changed = true;
68
+ PublisherManager.saveId++;
69
+ const saveId = PublisherManager.saveId;
70
+ setTimeout(() => PublisherManager.getInstance().saveToLocalStorage(saveId), 1000);
71
+ }
54
72
  if (this.parent) {
55
73
  this.parent._publishInternalMutation_();
56
74
  }
@@ -273,7 +291,21 @@ export class PublisherProxy {
273
291
  }
274
292
  return this._value_;
275
293
  }
294
+ /**
295
+ * retourner le webcomponent auquel le proxy est associé
296
+ */
297
+ get $tag() {
298
+ if (!this._instanceCounter_) {
299
+ PublisherProxy.instancesCounter++;
300
+ this._instanceCounter_ = PublisherProxy.instancesCounter;
301
+ }
302
+ PublisherProxy.instances.set(this._instanceCounter_, this);
303
+ const str = '<reactive-publisher-proxy publisher="' + this._instanceCounter_ + '"></reactive-publisher-proxy>';
304
+ return str;
305
+ }
276
306
  }
307
+ PublisherProxy.instances = new Map();
308
+ PublisherProxy.instancesCounter = 0;
277
309
  /**
278
310
  * Utilitaires de gestion des Publisher
279
311
  * Obtenir, replacer ou supprimer un Publisher
@@ -281,10 +313,59 @@ export class PublisherProxy {
281
313
  */
282
314
  export class PublisherManager {
283
315
  constructor() {
316
+ this.enabledLocaStorageProxies = [];
284
317
  this.publishers = new Map();
318
+ this.localStorageData = {};
319
+ this.isLocalStrorageReady = null;
320
+ this.initialisedData = [];
285
321
  if (PublisherManager.instance != null)
286
322
  throw "Singleton / use getInstance";
287
323
  PublisherManager.instance = this;
324
+ this.isLocalStrorageReady = this.cleanStorageData();
325
+ }
326
+ cleanStorageData() {
327
+ return __awaiter(this, void 0, void 0, function* () {
328
+ return new Promise((resolve) => {
329
+ const doiIt = () => __awaiter(this, void 0, void 0, function* () {
330
+ try {
331
+ let compressedData = localStorage.getItem("publisher-proxies-data");
332
+ let localStorageJSON = null;
333
+ if (compressedData)
334
+ localStorageJSON = yield this.decompress(compressedData, "gzip");
335
+ if (localStorageJSON) {
336
+ try {
337
+ this.localStorageData = JSON.parse(localStorageJSON);
338
+ }
339
+ catch (e) {
340
+ this.localStorageData = {};
341
+ }
342
+ }
343
+ else {
344
+ compressedData = yield this.compress("{}", "gzip");
345
+ localStorage.setItem("publisher-proxies-data", compressedData);
346
+ this.localStorageData = {};
347
+ }
348
+ const expires = new Date().getTime() - 1000 * 60 * 60 * 12;
349
+ for (const key in this.localStorageData) {
350
+ const item = this.localStorageData[key];
351
+ if (item.lastModifiationMS < expires) {
352
+ delete this.localStorageData[key];
353
+ }
354
+ }
355
+ resolve(true);
356
+ // compressedData = await this.compress(JSON.stringify(this.localStorageData), "gzip");
357
+ // localStorage.setItem("publisher-proxies-data", compressedData);
358
+ }
359
+ catch (e) {
360
+ window.requestAnimationFrame(() => {
361
+ resolve(false);
362
+ });
363
+ console.log("no publisher cache in this browser");
364
+ }
365
+ });
366
+ doiIt();
367
+ });
368
+ });
288
369
  }
289
370
  /**
290
371
  * PublisherManager est un singleton
@@ -298,8 +379,8 @@ export class PublisherManager {
298
379
  * shortcut static pour obtenir un publisher vias sont id/adresse sans taper getInstance.
299
380
  * Si le publisher n'existe pas, il est créé.
300
381
  */
301
- static get(id) {
302
- return PublisherManager.getInstance().get(id);
382
+ static get(id, options) {
383
+ return PublisherManager.getInstance().get(id, options);
303
384
  }
304
385
  /**
305
386
  * shortcut static pour supprimer un publisher de la liste et appel également delete sur le publisher ce qui le supprime, de même que ses sous publishers
@@ -311,9 +392,26 @@ export class PublisherManager {
311
392
  * Obtenir un publisher vias sont id/adresse
312
393
  * Si le publisher n'existe pas, il est créé.
313
394
  */
314
- get(id) {
315
- if (!this.publishers.has(id))
316
- this.publishers.set(id, new Publisher({}));
395
+ setLocalData(publisher, id) {
396
+ var _a;
397
+ return __awaiter(this, void 0, void 0, function* () {
398
+ yield this.isLocalStrorageReady;
399
+ publisher.set(((_a = this.localStorageData[id + "¤page:>" + document.location.pathname]) === null || _a === void 0 ? void 0 : _a.data) || publisher.get());
400
+ });
401
+ }
402
+ get(id, options) {
403
+ const hasLocalStorage = (options === null || options === void 0 ? void 0 : options.localStorageMode) === "enabled";
404
+ if (!this.publishers.has(id)) {
405
+ const data = {};
406
+ const publisher = new Publisher(data);
407
+ this.set(id, publisher);
408
+ }
409
+ const publisher = this.publishers.get(id);
410
+ if (hasLocalStorage && this.initialisedData.indexOf(id) === -1) {
411
+ publisher._is_savable_ = true;
412
+ this.initialisedData.push(id);
413
+ this.setLocalData(publisher, id);
414
+ }
317
415
  return this.publishers.get(id);
318
416
  }
319
417
  /**
@@ -332,7 +430,86 @@ export class PublisherManager {
332
430
  this.publishers.delete(id);
333
431
  return true;
334
432
  }
433
+ saveToLocalStorage(saveId = 0) {
434
+ return __awaiter(this, void 0, void 0, function* () {
435
+ /**
436
+ * si l'id a changé et que ce n'est pas un multiple de 10, on ne sauve pas
437
+ * on sauvegarde quand même tous les 10 au cas ou on aurrait des changements en continue, par exemple à chaque frame
438
+ */
439
+ if (saveId !== PublisherManager.saveId && saveId % 10 != 0)
440
+ return;
441
+ try {
442
+ if (!PublisherManager.changed || PublisherManager.saving)
443
+ return;
444
+ PublisherManager.saving = true;
445
+ PublisherManager.changed = false;
446
+ const keys = Array.from(this.publishers.keys());
447
+ let hasChanged = false;
448
+ for (const key of keys) {
449
+ const publisher = this.publishers.get(key);
450
+ if (!(publisher === null || publisher === void 0 ? void 0 : publisher._is_savable_))
451
+ continue;
452
+ const data = publisher === null || publisher === void 0 ? void 0 : publisher.get();
453
+ if (!data)
454
+ continue;
455
+ this.localStorageData[key + "¤page:>" + document.location.pathname] = {
456
+ lastModifiationMS: new Date().getTime(),
457
+ data: data,
458
+ };
459
+ hasChanged = true;
460
+ }
461
+ // on enregistre les données
462
+ if (hasChanged) {
463
+ const compressedData = yield this.compress(JSON.stringify(this.localStorageData), "gzip");
464
+ localStorage.setItem("publisher-proxies-data", compressedData);
465
+ }
466
+ PublisherManager.saving = false;
467
+ if (PublisherManager.changed) {
468
+ PublisherManager.saveId++;
469
+ const saveId = PublisherManager.saveId;
470
+ setTimeout(() => this.saveToLocalStorage(saveId), 1000);
471
+ }
472
+ }
473
+ catch (e) {
474
+ PublisherManager.saving = false;
475
+ }
476
+ });
477
+ }
478
+ compress(string, encoding) {
479
+ return __awaiter(this, void 0, void 0, function* () {
480
+ const byteArray = new TextEncoder().encode(string);
481
+ const win = window;
482
+ const cs = new win.CompressionStream(encoding);
483
+ const writer = cs.writable.getWriter();
484
+ writer.write(byteArray);
485
+ writer.close();
486
+ const result = yield new Response(cs.readable).arrayBuffer();
487
+ const arrayBufferView = new Uint8Array(result);
488
+ let str = "";
489
+ for (let i = 0; i < arrayBufferView.length; i++) {
490
+ str += String.fromCharCode(arrayBufferView[i]);
491
+ }
492
+ return btoa(str);
493
+ });
494
+ }
495
+ decompress(str, encoding) {
496
+ return __awaiter(this, void 0, void 0, function* () {
497
+ const decodedString = atob(str);
498
+ const arrayBufferViewFromLocalStorage = Uint8Array.from(decodedString, (c) => c.charCodeAt(0));
499
+ const byteArray = arrayBufferViewFromLocalStorage.buffer;
500
+ const win = window;
501
+ const cs = new win.DecompressionStream(encoding);
502
+ const writer = cs.writable.getWriter();
503
+ writer.write(byteArray);
504
+ writer.close();
505
+ const result = yield new Response(cs.readable).arrayBuffer();
506
+ return new TextDecoder().decode(result);
507
+ });
508
+ }
335
509
  }
510
+ PublisherManager.changed = false;
511
+ PublisherManager.saving = false;
512
+ PublisherManager.saveId = 0;
336
513
  PublisherManager.instance = null;
337
514
  /**
338
515
  * Le Proxy Javascript
@@ -361,6 +538,7 @@ export default class Publisher extends PublisherProxy {
361
538
  "offInternalMutation",
362
539
  "set",
363
540
  "get",
541
+ "$tag",
364
542
  "_templateFillListeners_",
365
543
  "_fillListeners_",
366
544
  "_assignListeners_",
@@ -376,7 +554,9 @@ export default class Publisher extends PublisherProxy {
376
554
  "_proxies_",
377
555
  "parent",
378
556
  "_value_",
557
+ "_is_savable_",
379
558
  "_lockInternalMutationPublishing_",
559
+ "_instanceCounter_",
380
560
  ].includes(sKey))
381
561
  return publisherInstance[sKey];
382
562
  if (!publisherInstance._proxies_.has(sKey)) {
@@ -396,7 +576,14 @@ export default class Publisher extends PublisherProxy {
396
576
  //Fonctionnement pour la donnée interne pas de dispatch;
397
577
  if (sKey == "_value_") {
398
578
  publisherInstance._value_ = vValue;
399
- // return publisherInstance._value_;
579
+ return true;
580
+ }
581
+ if (sKey == "_is_savable_") {
582
+ publisherInstance._is_savable_ = vValue;
583
+ return true;
584
+ }
585
+ if (sKey == "_instanceCounter_") {
586
+ publisherInstance._instanceCounter_ = vValue;
400
587
  return true;
401
588
  }
402
589
  //Création du publisher si il n'existe pas
@@ -463,3 +650,27 @@ export default class Publisher extends PublisherProxy {
463
650
  }
464
651
  if (typeof module != "undefined")
465
652
  module.exports = { Publisher: Publisher, PublisherManager: PublisherManager };
653
+ // /**
654
+ // * A custom webcomponent wich will be linked to a publisher via its attribute "publisher"
655
+ // * the publisher will be found via PublisherManager.get(publisherId) and will be used to fill the component using the onAssign method
656
+ // */
657
+ class PublisherWebComponent extends HTMLElement {
658
+ constructor() {
659
+ super();
660
+ this.publisherId = "";
661
+ this.onAssign = (value) => {
662
+ this.innerHTML = value.toString();
663
+ };
664
+ }
665
+ connectedCallback() {
666
+ var _a;
667
+ this.publisherId = this.getAttribute("publisher") || "";
668
+ this.publisher = PublisherProxy.instances.get(parseInt(this.publisherId));
669
+ (_a = this.publisher) === null || _a === void 0 ? void 0 : _a.onAssign(this.onAssign);
670
+ }
671
+ disconnectedCallback() {
672
+ var _a;
673
+ (_a = this.publisher) === null || _a === void 0 ? void 0 : _a.offAssign(this.onAssign);
674
+ }
675
+ }
676
+ customElements.define("reactive-publisher-proxy", PublisherWebComponent);
@@ -8,6 +8,7 @@ export type APIConfiguration = {
8
8
  tokenProvider: string | null;
9
9
  addHTTPResponse?: boolean;
10
10
  credentials?: RequestCredentials;
11
+ cache?: RequestCache;
11
12
  };
12
13
  export type ResultTypeInterface = CoreJSType & {
13
14
  _sonic_http_response_?: Response;
@@ -19,6 +20,7 @@ export type APICall = {
19
20
  additionalHeaders: HeadersInit | undefined;
20
21
  method?: string | undefined;
21
22
  data?: unknown;
23
+ cache?: RequestCache;
22
24
  };
23
25
  declare class API {
24
26
  /**
@@ -72,6 +74,7 @@ declare class API {
72
74
  * Le endPoint pour obtenir le bearer token qui sera concaténé à l'url du service
73
75
  */
74
76
  addHTTPResponse: boolean;
77
+ cache: RequestCache;
75
78
  lastResult?: Response;
76
79
  constructor(config: APIConfiguration);
77
80
  handleResult(fetchResult: Response, lastCall: APICall): Promise<ResultTypeInterface>;
package/core/utils/api.js CHANGED
@@ -39,6 +39,7 @@ class API {
39
39
  * Le endPoint pour obtenir le bearer token qui sera concaténé à l'url du service
40
40
  */
41
41
  this.addHTTPResponse = false;
42
+ this.cache = "default";
42
43
  this.serviceURL = config.serviceURL;
43
44
  if (!this.serviceURL)
44
45
  this.serviceURL = document.location.origin;
@@ -50,6 +51,7 @@ class API {
50
51
  this.authToken = config.authToken;
51
52
  this.addHTTPResponse = config.addHTTPResponse || false;
52
53
  this.credentials = config.credentials;
54
+ this.cache = config.cache || "default";
53
55
  }
54
56
  handleResult(fetchResult, lastCall) {
55
57
  var _a;
@@ -145,7 +147,7 @@ class API {
145
147
  });
146
148
  if (!API.loadingGetPromises.has(mapKey)) {
147
149
  const promise = new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {
148
- const result = yield fetch(url, { headers: headers, credentials: this.credentials });
150
+ const result = yield fetch(url, { headers: headers, credentials: this.credentials, cache: this.cache });
149
151
  const handledResult = yield this.handleResult(result, lastCall);
150
152
  resolve(handledResult);
151
153
  }));
File without changes
package/img/concorde.png CHANGED
File without changes
File without changes
package/mixins.d.ts CHANGED
@@ -18,7 +18,8 @@ export declare const Fetcher: <T extends new (...args: any[]) => mySubscriber.Su
18
18
  onInvalidate?: (() => void) | undefined;
19
19
  disconnectedCallback(): void;
20
20
  connectedCallback(): void;
21
- firstUpdated(): void;
21
+ lazyLoadSpan?: HTMLSpanElement | undefined;
22
+ handleLazyLoad(): void;
22
23
  onIntersection(entries: IntersectionObserverEntry[]): void;
23
24
  propertyMap: object;
24
25
  isConnected: boolean;
@@ -44,6 +45,7 @@ export declare const Fetcher: <T extends new (...args: any[]) => mySubscriber.Su
44
45
  requestUpdate(): void;
45
46
  getAttribute(name: string): string;
46
47
  hasAttribute(attributeName: string): boolean;
48
+ getBoundingClientRect(): DOMRect;
47
49
  };
48
50
  } & T;
49
51
  export declare const FormCheckable: <T extends new (...args: any[]) => myFormElement.FormElementInterface>(superClass: T) => {
@@ -105,6 +107,7 @@ export declare const FormCheckable: <T extends new (...args: any[]) => myFormEle
105
107
  requestUpdate(): void;
106
108
  getAttribute(name: string): string;
107
109
  hasAttribute(attributeName: string): boolean;
110
+ getBoundingClientRect(): DOMRect;
108
111
  };
109
112
  } & T;
110
113
  import * as myFormElement from "@supersoniks/concorde/core/mixins/FormElement";
@@ -165,6 +168,7 @@ export declare const FormInput: <T extends new (...args: any[]) => myFormElement
165
168
  getAttribute(name: string): string;
166
169
  hasAttribute(attributeName: string): boolean;
167
170
  disconnectedCallback(): void;
171
+ getBoundingClientRect(): DOMRect;
168
172
  };
169
173
  } & T;
170
174
  import * as mySubscriber from "@supersoniks/concorde/core/mixins/Subscriber";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@supersoniks/concorde",
3
- "version": "1.1.45",
3
+ "version": "1.1.47",
4
4
  "customElements": "custom-elements.json",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -9,8 +9,10 @@
9
9
  "dependencies": {
10
10
  "@lit-labs/motion": "^1.0.1",
11
11
  "@lit-labs/observers": "^1.0.1",
12
+ "@tailwindcss/container-queries": "^0.1.1",
12
13
  "@types/prismjs": "^1.26.0",
13
14
  "chart.js": "^3.9.1",
15
+ "iframe-resizer": "^4.3.6",
14
16
  "intl": "^1.2.5",
15
17
  "jsbarcode": "^3.11.5",
16
18
  "lit": "^2.2.3",
@@ -20,6 +22,7 @@
20
22
  },
21
23
  "devDependencies": {
22
24
  "@tailwindcss/typography": "^0.5.2",
25
+ "@types/iframe-resizer": "^3.5.9",
23
26
  "@types/intl": "^1.2.0",
24
27
  "@types/jest": "^29.2.6",
25
28
  "@types/node": "^18.11.18",
@@ -268,6 +271,7 @@
268
271
  "./docs/search/search": "./docs/search/search.js",
269
272
  "./docs/search": "./docs/search/search.js",
270
273
  "./index-billetterie": "./index-billetterie.js",
274
+ "./index-customer": "./index-customer.js",
271
275
  "./index-shared": "./index-shared.js",
272
276
  "./index": "./index.js",
273
277
  "./test-utils/TestUtils": "./test-utils/TestUtils.js",
File without changes
File without changes