@oneteme/jquery-table 0.0.1 → 0.0.2

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 (29) hide show
  1. package/README.md +439 -122
  2. package/esm2022/lib/component/export.manager.mjs +45 -0
  3. package/esm2022/lib/component/group-by.manager.mjs +99 -0
  4. package/esm2022/lib/component/lazy-column-manager.mjs +99 -0
  5. package/esm2022/lib/component/slice-panel/slice-panel.component.mjs +43 -37
  6. package/esm2022/lib/component/slice-panel/slice-panel.model.mjs +1 -1
  7. package/esm2022/lib/component/table-preferences.manager.mjs +38 -0
  8. package/esm2022/lib/component/table.component.mjs +681 -370
  9. package/esm2022/lib/component/table.constants.mjs +31 -0
  10. package/esm2022/lib/component/table.utils.mjs +2 -2
  11. package/esm2022/lib/component/view/view.facade.mjs +298 -0
  12. package/esm2022/lib/jqt-i18n.token.mjs +41 -0
  13. package/esm2022/lib/jquery-table.model.mjs +14 -2
  14. package/esm2022/public-api.mjs +2 -1
  15. package/fesm2022/oneteme-jquery-table.mjs +1377 -408
  16. package/fesm2022/oneteme-jquery-table.mjs.map +1 -1
  17. package/lib/component/export.manager.d.ts +16 -0
  18. package/lib/component/group-by.manager.d.ts +44 -0
  19. package/lib/component/lazy-column-manager.d.ts +26 -0
  20. package/lib/component/slice-panel/slice-panel.component.d.ts +11 -3
  21. package/lib/component/slice-panel/slice-panel.model.d.ts +11 -1
  22. package/lib/component/table-preferences.manager.d.ts +17 -0
  23. package/lib/component/table.component.d.ts +162 -27
  24. package/lib/component/table.constants.d.ts +30 -0
  25. package/lib/component/view/view.facade.d.ts +93 -0
  26. package/lib/jqt-i18n.token.d.ts +87 -0
  27. package/lib/jquery-table.model.d.ts +79 -0
  28. package/package.json +2 -2
  29. package/public-api.d.ts +1 -0
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Constantes sentinel utilisées pour les identifiants de colonnes et les valeurs
3
+ * projetées dans le datasource interne de la table.
4
+ *
5
+ * Centraliser ici évite les typos silencieuses et facilite les tests unitaires.
6
+ */
7
+ /** Identifiant de la colonne virtuelle rendue sur toute la largeur pour les en-têtes de groupe. */
8
+ export const GROUP_ROW_COLUMN = '__group_row';
9
+ /** Marqueur posé sur les objets de ligne pour signaler une ligne d'en-tête de groupe. */
10
+ export const GROUP_HEADER_MARKER = '__groupHeader';
11
+ /** Clé du groupe spéciale « chargement lazy en cours ». */
12
+ export const GROUP_KEY_LAZY_LOADING = '__lazy_loading__';
13
+ /** Clé du groupe spéciale « trop de groupes ». */
14
+ export const GROUP_KEY_TOO_MANY = '__too_many_groups__';
15
+ /** Propriété injectée dans chaque ligne projetée : référence vers la ligne brute d'origine. */
16
+ export const ROW_RAW_KEY = '__raw';
17
+ /** Propriété injectée dans chaque ligne projetée : index global de la ligne dans le jeu de données filtré. */
18
+ export const ROW_INDEX_KEY = '__index';
19
+ /** Propriété injectée dans chaque ligne projetée : clé du groupe auquel appartient la ligne d'en-tête. */
20
+ export const ROW_GROUP_KEY = '__groupKey';
21
+ /** Propriété injectée dans chaque ligne projetée : nombre de lignes dans le groupe. */
22
+ export const ROW_GROUP_COUNT = '__groupCount';
23
+ /** Propriété injectée dans chaque ligne projetée : page courante du groupe. */
24
+ export const ROW_GROUP_PAGE = '__groupPage';
25
+ /** Propriété injectée dans chaque ligne projetée : nombre de pages du groupe. */
26
+ export const ROW_GROUP_PAGE_COUNT = '__groupPageCount';
27
+ /** Valeur sentinelle posée dans une cellule lazy en cours de chargement. */
28
+ export const LAZY_LOADING_VALUE = '__lazy_loading__';
29
+ /** Valeur sentinelle posée dans une cellule lazy en erreur. */
30
+ export const LAZY_ERROR_VALUE = '__lazy_error__';
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25ldGVtZS9qcXVlcnktdGFibGUvc3JjL2xpYi9jb21wb25lbnQvdGFibGUuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OztHQUtHO0FBRUgsbUdBQW1HO0FBQ25HLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLGFBQWEsQ0FBQztBQUU5Qyx5RkFBeUY7QUFDekYsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsZUFBZSxDQUFDO0FBRW5ELDJEQUEyRDtBQUMzRCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxrQkFBa0IsQ0FBQztBQUV6RCxrREFBa0Q7QUFDbEQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcscUJBQXFCLENBQUM7QUFFeEQsK0ZBQStGO0FBQy9GLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUM7QUFFbkMsOEdBQThHO0FBQzlHLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUM7QUFFdkMsMEdBQTBHO0FBQzFHLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxZQUFZLENBQUM7QUFFMUMsdUZBQXVGO0FBQ3ZGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxjQUFjLENBQUM7QUFFOUMsK0VBQStFO0FBQy9FLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxhQUFhLENBQUM7QUFFNUMsaUZBQWlGO0FBQ2pGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLGtCQUFrQixDQUFDO0FBRXZELDRFQUE0RTtBQUM1RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQztBQUVyRCwrREFBK0Q7QUFDL0QsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbnN0YW50ZXMgc2VudGluZWwgdXRpbGlzw6llcyBwb3VyIGxlcyBpZGVudGlmaWFudHMgZGUgY29sb25uZXMgZXQgbGVzIHZhbGV1cnNcbiAqIHByb2pldMOpZXMgZGFucyBsZSBkYXRhc291cmNlIGludGVybmUgZGUgbGEgdGFibGUuXG4gKlxuICogQ2VudHJhbGlzZXIgaWNpIMOpdml0ZSBsZXMgdHlwb3Mgc2lsZW5jaWV1c2VzIGV0IGZhY2lsaXRlIGxlcyB0ZXN0cyB1bml0YWlyZXMuXG4gKi9cblxuLyoqIElkZW50aWZpYW50IGRlIGxhIGNvbG9ubmUgdmlydHVlbGxlIHJlbmR1ZSBzdXIgdG91dGUgbGEgbGFyZ2V1ciBwb3VyIGxlcyBlbi10w6p0ZXMgZGUgZ3JvdXBlLiAqL1xuZXhwb3J0IGNvbnN0IEdST1VQX1JPV19DT0xVTU4gPSAnX19ncm91cF9yb3cnO1xuXG4vKiogTWFycXVldXIgcG9zw6kgc3VyIGxlcyBvYmpldHMgZGUgbGlnbmUgcG91ciBzaWduYWxlciB1bmUgbGlnbmUgZCdlbi10w6p0ZSBkZSBncm91cGUuICovXG5leHBvcnQgY29uc3QgR1JPVVBfSEVBREVSX01BUktFUiA9ICdfX2dyb3VwSGVhZGVyJztcblxuLyoqIENsw6kgZHUgZ3JvdXBlIHNww6ljaWFsZSDCqyBjaGFyZ2VtZW50IGxhenkgZW4gY291cnMgwrsuICovXG5leHBvcnQgY29uc3QgR1JPVVBfS0VZX0xBWllfTE9BRElORyA9ICdfX2xhenlfbG9hZGluZ19fJztcblxuLyoqIENsw6kgZHUgZ3JvdXBlIHNww6ljaWFsZSDCqyB0cm9wIGRlIGdyb3VwZXMgwrsuICovXG5leHBvcnQgY29uc3QgR1JPVVBfS0VZX1RPT19NQU5ZID0gJ19fdG9vX21hbnlfZ3JvdXBzX18nO1xuXG4vKiogUHJvcHJpw6l0w6kgaW5qZWN0w6llIGRhbnMgY2hhcXVlIGxpZ25lIHByb2pldMOpZSA6IHLDqWbDqXJlbmNlIHZlcnMgbGEgbGlnbmUgYnJ1dGUgZCdvcmlnaW5lLiAqL1xuZXhwb3J0IGNvbnN0IFJPV19SQVdfS0VZID0gJ19fcmF3JztcblxuLyoqIFByb3ByacOpdMOpIGluamVjdMOpZSBkYW5zIGNoYXF1ZSBsaWduZSBwcm9qZXTDqWUgOiBpbmRleCBnbG9iYWwgZGUgbGEgbGlnbmUgZGFucyBsZSBqZXUgZGUgZG9ubsOpZXMgZmlsdHLDqS4gKi9cbmV4cG9ydCBjb25zdCBST1dfSU5ERVhfS0VZID0gJ19faW5kZXgnO1xuXG4vKiogUHJvcHJpw6l0w6kgaW5qZWN0w6llIGRhbnMgY2hhcXVlIGxpZ25lIHByb2pldMOpZSA6IGNsw6kgZHUgZ3JvdXBlIGF1cXVlbCBhcHBhcnRpZW50IGxhIGxpZ25lIGQnZW4tdMOqdGUuICovXG5leHBvcnQgY29uc3QgUk9XX0dST1VQX0tFWSA9ICdfX2dyb3VwS2V5JztcblxuLyoqIFByb3ByacOpdMOpIGluamVjdMOpZSBkYW5zIGNoYXF1ZSBsaWduZSBwcm9qZXTDqWUgOiBub21icmUgZGUgbGlnbmVzIGRhbnMgbGUgZ3JvdXBlLiAqL1xuZXhwb3J0IGNvbnN0IFJPV19HUk9VUF9DT1VOVCA9ICdfX2dyb3VwQ291bnQnO1xuXG4vKiogUHJvcHJpw6l0w6kgaW5qZWN0w6llIGRhbnMgY2hhcXVlIGxpZ25lIHByb2pldMOpZSA6IHBhZ2UgY291cmFudGUgZHUgZ3JvdXBlLiAqL1xuZXhwb3J0IGNvbnN0IFJPV19HUk9VUF9QQUdFID0gJ19fZ3JvdXBQYWdlJztcblxuLyoqIFByb3ByacOpdMOpIGluamVjdMOpZSBkYW5zIGNoYXF1ZSBsaWduZSBwcm9qZXTDqWUgOiBub21icmUgZGUgcGFnZXMgZHUgZ3JvdXBlLiAqL1xuZXhwb3J0IGNvbnN0IFJPV19HUk9VUF9QQUdFX0NPVU5UID0gJ19fZ3JvdXBQYWdlQ291bnQnO1xuXG4vKiogVmFsZXVyIHNlbnRpbmVsbGUgcG9zw6llIGRhbnMgdW5lIGNlbGx1bGUgbGF6eSBlbiBjb3VycyBkZSBjaGFyZ2VtZW50LiAqL1xuZXhwb3J0IGNvbnN0IExBWllfTE9BRElOR19WQUxVRSA9ICdfX2xhenlfbG9hZGluZ19fJztcblxuLyoqIFZhbGV1ciBzZW50aW5lbGxlIHBvc8OpZSBkYW5zIHVuZSBjZWxsdWxlIGxhenkgZW4gZXJyZXVyLiAqL1xuZXhwb3J0IGNvbnN0IExBWllfRVJST1JfVkFMVUUgPSAnX19sYXp5X2Vycm9yX18nO1xuIl19
@@ -30,7 +30,7 @@ export function normalizeCellValue(value) {
30
30
  return '';
31
31
  }
32
32
  if (value instanceof Date) {
33
- return value.toLocaleString('fr-FR');
33
+ return value.toLocaleString();
34
34
  }
35
35
  if (Array.isArray(value)) {
36
36
  return value.map((item) => normalizeCellValue(item)).join(', ');
@@ -56,4 +56,4 @@ export function humanizeKey(key) {
56
56
  .replaceAll(/[_-]+/g, ' ')
57
57
  .replace(/^./, (value) => value.toUpperCase());
58
58
  }
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmV0ZW1lL2pxdWVyeS10YWJsZS9zcmMvbGliL2NvbXBvbmVudC90YWJsZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUUvRCxvREFBb0Q7QUFDcEQsTUFBTSxVQUFVLHNCQUFzQjtJQUNwQyxNQUFNLElBQUksR0FBRyxJQUFJLGdCQUFnQixFQUFFLENBQUM7SUFDcEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLHFCQUFxQixDQUFDO0lBQy9DLElBQUksQ0FBQyxhQUFhLEdBQUcsZUFBZSxDQUFDO0lBQ3JDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztJQUMzQyxJQUFJLENBQUMsY0FBYyxHQUFHLGVBQWUsQ0FBQztJQUN0QyxJQUFJLENBQUMsYUFBYSxHQUFHLGVBQWUsQ0FBQztJQUNyQyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsSUFBWSxFQUFFLFFBQWdCLEVBQUUsTUFBYyxFQUFFLEVBQUU7UUFDdEUsSUFBSSxNQUFNLEtBQUssQ0FBQyxJQUFJLFFBQVEsS0FBSyxDQUFDO1lBQUUsT0FBTyxTQUFTLE1BQU0sRUFBRSxDQUFDO1FBQzdELE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3QixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsUUFBUSxDQUFDO1FBQzlCLE1BQU0sR0FBRyxHQUFHLEtBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztRQUNuRixPQUFPLEdBQUcsS0FBSyxHQUFHLENBQUMsTUFBTSxHQUFHLFFBQVEsTUFBTSxFQUFFLENBQUM7SUFDL0MsQ0FBQyxDQUFDO0lBQ0YsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxLQUFVO0lBQzNDLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1FBQ3pDLE9BQU8sRUFBRSxDQUFDO0tBQ1g7SUFDRCxJQUFJLEtBQUssWUFBWSxJQUFJLEVBQUU7UUFDekIsT0FBTyxLQUFLLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQ3RDO0lBQ0QsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3hCLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDakU7SUFDRCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtRQUM3QixJQUFJLE9BQU8sSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDakQsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzVCO1FBQ0QsSUFBSSxNQUFNLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssU0FBUyxFQUFFO1lBQy9DLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQjtRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUM5QjtJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSxXQUFXLENBQUMsR0FBVztJQUNyQyxPQUFPLEdBQUc7U0FDUCxVQUFVLENBQUMsb0JBQW9CLEVBQUUsT0FBTyxDQUFDO1NBQ3pDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDO1NBQ3pCLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0FBQ25ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXRQYWdpbmF0b3JJbnRsIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcblxuLyoqIFRyYWR1Y3Rpb25zIGZyYW7Dp2Fpc2VzIGR1IHBhZ2luYXRvciBNYXRlcmlhbC4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRGcmVuY2hQYWdpbmF0b3JJbnRsKCk6IE1hdFBhZ2luYXRvckludGwge1xuICBjb25zdCBpbnRsID0gbmV3IE1hdFBhZ2luYXRvckludGwoKTtcbiAgaW50bC5pdGVtc1BlclBhZ2VMYWJlbCA9ICfDiWzDqW1lbnRzIHBhciBwYWdlIDonO1xuICBpbnRsLm5leHRQYWdlTGFiZWwgPSAnUGFnZSBzdWl2YW50ZSc7XG4gIGludGwucHJldmlvdXNQYWdlTGFiZWwgPSAnUGFnZSBwcsOpY8OpZGVudGUnO1xuICBpbnRsLmZpcnN0UGFnZUxhYmVsID0gJ1ByZW1pw6hyZSBwYWdlJztcbiAgaW50bC5sYXN0UGFnZUxhYmVsID0gJ0Rlcm5pw6hyZSBwYWdlJztcbiAgaW50bC5nZXRSYW5nZUxhYmVsID0gKHBhZ2U6IG51bWJlciwgcGFnZVNpemU6IG51bWJlciwgbGVuZ3RoOiBudW1iZXIpID0+IHtcbiAgICBpZiAobGVuZ3RoID09PSAwIHx8IHBhZ2VTaXplID09PSAwKSByZXR1cm4gYDAgc3VyICR7bGVuZ3RofWA7XG4gICAgbGVuZ3RoID0gTWF0aC5tYXgobGVuZ3RoLCAwKTtcbiAgICBjb25zdCBzdGFydCA9IHBhZ2UgKiBwYWdlU2l6ZTtcbiAgICBjb25zdCBlbmQgPSBzdGFydCA8IGxlbmd0aCA/IE1hdGgubWluKHN0YXJ0ICsgcGFnZVNpemUsIGxlbmd0aCkgOiBzdGFydCArIHBhZ2VTaXplO1xuICAgIHJldHVybiBgJHtzdGFydCArIDF9IOKAkyAke2VuZH0gc3VyICR7bGVuZ3RofWA7XG4gIH07XG4gIHJldHVybiBpbnRsO1xufVxuXG4vKipcbiAqIENvbnZlcnRpdCB1bmUgdmFsZXVyIGJydXRlIGVuIGNoYcOubmUgYWZmaWNoYWJsZS5cbiAqIC0gbnVsbC91bmRlZmluZWQg4oaSICcnXG4gKiAtIERhdGUg4oaSIGZvcm1hdCBsb2NhbGUgZnItRlJcbiAqIC0gVGFibGVhdSDihpIgdmFsZXVycyBqb2ludGVzIHBhciAnLCAnXG4gKiAtIE9iamV0IGF2ZWMgbGFiZWwvbmFtZSDihpIgc2EgdmFsZXVyIHN0cmluZ1xuICogLSBBdXRyZXMg4oaSIFN0cmluZyh2YWx1ZSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGl6ZUNlbGxWYWx1ZSh2YWx1ZTogYW55KTogYW55IHtcbiAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cbiAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgIHJldHVybiB2YWx1ZS50b0xvY2FsZVN0cmluZygnZnItRlInKTtcbiAgfVxuICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gdmFsdWUubWFwKChpdGVtKSA9PiBub3JtYWxpemVDZWxsVmFsdWUoaXRlbSkpLmpvaW4oJywgJyk7XG4gIH1cbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICBpZiAoJ2xhYmVsJyBpbiB2YWx1ZSAmJiB2YWx1ZS5sYWJlbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gU3RyaW5nKHZhbHVlLmxhYmVsKTtcbiAgICB9XG4gICAgaWYgKCduYW1lJyBpbiB2YWx1ZSAmJiB2YWx1ZS5uYW1lICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBTdHJpbmcodmFsdWUubmFtZSk7XG4gICAgfVxuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XG4gIH1cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG4vKipcbiAqIFRyYW5zZm9ybWUgdW5lIGNsw6kgY2FtZWxDYXNlL3NuYWtlX2Nhc2UgZW4gbGliZWxsw6kgbGlzaWJsZS5cbiAqIEV4OiAnY3JlYXRlZEF0JyDihpIgJ0NyZWF0ZWQgYXQnLCAnbXlfZmllbGQnIOKGkiAnTXkgZmllbGQnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBodW1hbml6ZUtleShrZXk6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBrZXlcbiAgICAucmVwbGFjZUFsbCgvKFthLXowLTldKShbQS1aXSkvZywgJyQxICQyJylcbiAgICAucmVwbGFjZUFsbCgvW18tXSsvZywgJyAnKVxuICAgIC5yZXBsYWNlKC9eLi8sICh2YWx1ZSkgPT4gdmFsdWUudG9VcHBlckNhc2UoKSk7XG59XG4iXX0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmV0ZW1lL2pxdWVyeS10YWJsZS9zcmMvbGliL2NvbXBvbmVudC90YWJsZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUUvRCxvREFBb0Q7QUFDcEQsTUFBTSxVQUFVLHNCQUFzQjtJQUNwQyxNQUFNLElBQUksR0FBRyxJQUFJLGdCQUFnQixFQUFFLENBQUM7SUFDcEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLHFCQUFxQixDQUFDO0lBQy9DLElBQUksQ0FBQyxhQUFhLEdBQUcsZUFBZSxDQUFDO0lBQ3JDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztJQUMzQyxJQUFJLENBQUMsY0FBYyxHQUFHLGVBQWUsQ0FBQztJQUN0QyxJQUFJLENBQUMsYUFBYSxHQUFHLGVBQWUsQ0FBQztJQUNyQyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsSUFBWSxFQUFFLFFBQWdCLEVBQUUsTUFBYyxFQUFFLEVBQUU7UUFDdEUsSUFBSSxNQUFNLEtBQUssQ0FBQyxJQUFJLFFBQVEsS0FBSyxDQUFDO1lBQUUsT0FBTyxTQUFTLE1BQU0sRUFBRSxDQUFDO1FBQzdELE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3QixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsUUFBUSxDQUFDO1FBQzlCLE1BQU0sR0FBRyxHQUFHLEtBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztRQUNuRixPQUFPLEdBQUcsS0FBSyxHQUFHLENBQUMsTUFBTSxHQUFHLFFBQVEsTUFBTSxFQUFFLENBQUM7SUFDL0MsQ0FBQyxDQUFDO0lBQ0YsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxLQUFVO0lBQzNDLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1FBQ3pDLE9BQU8sRUFBRSxDQUFDO0tBQ1g7SUFDRCxJQUFJLEtBQUssWUFBWSxJQUFJLEVBQUU7UUFDekIsT0FBTyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7S0FDL0I7SUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDeEIsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUNqRTtJQUNELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1FBQzdCLElBQUksT0FBTyxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUNqRCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDNUI7UUFDRCxJQUFJLE1BQU0sSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDL0MsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzNCO1FBQ0QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQzlCO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLFdBQVcsQ0FBQyxHQUFXO0lBQ3JDLE9BQU8sR0FBRztTQUNQLFVBQVUsQ0FBQyxvQkFBb0IsRUFBRSxPQUFPLENBQUM7U0FDekMsVUFBVSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUM7U0FDekIsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7QUFDbkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hdFBhZ2luYXRvckludGwgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xuXG4vKiogVHJhZHVjdGlvbnMgZnJhbsOnYWlzZXMgZHUgcGFnaW5hdG9yIE1hdGVyaWFsLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEZyZW5jaFBhZ2luYXRvckludGwoKTogTWF0UGFnaW5hdG9ySW50bCB7XG4gIGNvbnN0IGludGwgPSBuZXcgTWF0UGFnaW5hdG9ySW50bCgpO1xuICBpbnRsLml0ZW1zUGVyUGFnZUxhYmVsID0gJ8OJbMOpbWVudHMgcGFyIHBhZ2UgOic7XG4gIGludGwubmV4dFBhZ2VMYWJlbCA9ICdQYWdlIHN1aXZhbnRlJztcbiAgaW50bC5wcmV2aW91c1BhZ2VMYWJlbCA9ICdQYWdlIHByw6ljw6lkZW50ZSc7XG4gIGludGwuZmlyc3RQYWdlTGFiZWwgPSAnUHJlbWnDqHJlIHBhZ2UnO1xuICBpbnRsLmxhc3RQYWdlTGFiZWwgPSAnRGVybmnDqHJlIHBhZ2UnO1xuICBpbnRsLmdldFJhbmdlTGFiZWwgPSAocGFnZTogbnVtYmVyLCBwYWdlU2l6ZTogbnVtYmVyLCBsZW5ndGg6IG51bWJlcikgPT4ge1xuICAgIGlmIChsZW5ndGggPT09IDAgfHwgcGFnZVNpemUgPT09IDApIHJldHVybiBgMCBzdXIgJHtsZW5ndGh9YDtcbiAgICBsZW5ndGggPSBNYXRoLm1heChsZW5ndGgsIDApO1xuICAgIGNvbnN0IHN0YXJ0ID0gcGFnZSAqIHBhZ2VTaXplO1xuICAgIGNvbnN0IGVuZCA9IHN0YXJ0IDwgbGVuZ3RoID8gTWF0aC5taW4oc3RhcnQgKyBwYWdlU2l6ZSwgbGVuZ3RoKSA6IHN0YXJ0ICsgcGFnZVNpemU7XG4gICAgcmV0dXJuIGAke3N0YXJ0ICsgMX0g4oCTICR7ZW5kfSBzdXIgJHtsZW5ndGh9YDtcbiAgfTtcbiAgcmV0dXJuIGludGw7XG59XG5cbi8qKlxuICogQ29udmVydGl0IHVuZSB2YWxldXIgYnJ1dGUgZW4gY2hhw65uZSBhZmZpY2hhYmxlLlxuICogLSBudWxsL3VuZGVmaW5lZCDihpIgJydcbiAqIC0gRGF0ZSDihpIgZm9ybWF0IGxvY2FsZSBmci1GUlxuICogLSBUYWJsZWF1IOKGkiB2YWxldXJzIGpvaW50ZXMgcGFyICcsICdcbiAqIC0gT2JqZXQgYXZlYyBsYWJlbC9uYW1lIOKGkiBzYSB2YWxldXIgc3RyaW5nXG4gKiAtIEF1dHJlcyDihpIgU3RyaW5nKHZhbHVlKVxuICovXG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplQ2VsbFZhbHVlKHZhbHVlOiBhbnkpOiBhbnkge1xuICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiAnJztcbiAgfVxuICBpZiAodmFsdWUgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgcmV0dXJuIHZhbHVlLnRvTG9jYWxlU3RyaW5nKCk7XG4gIH1cbiAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLm1hcCgoaXRlbSkgPT4gbm9ybWFsaXplQ2VsbFZhbHVlKGl0ZW0pKS5qb2luKCcsICcpO1xuICB9XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgaWYgKCdsYWJlbCcgaW4gdmFsdWUgJiYgdmFsdWUubGFiZWwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIFN0cmluZyh2YWx1ZS5sYWJlbCk7XG4gICAgfVxuICAgIGlmICgnbmFtZScgaW4gdmFsdWUgJiYgdmFsdWUubmFtZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gU3RyaW5nKHZhbHVlLm5hbWUpO1xuICAgIH1cbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICB9XG4gIHJldHVybiB2YWx1ZTtcbn1cblxuLyoqXG4gKiBUcmFuc2Zvcm1lIHVuZSBjbMOpIGNhbWVsQ2FzZS9zbmFrZV9jYXNlIGVuIGxpYmVsbMOpIGxpc2libGUuXG4gKiBFeDogJ2NyZWF0ZWRBdCcg4oaSICdDcmVhdGVkIGF0JywgJ215X2ZpZWxkJyDihpIgJ015IGZpZWxkJ1xuICovXG5leHBvcnQgZnVuY3Rpb24gaHVtYW5pemVLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4ga2V5XG4gICAgLnJlcGxhY2VBbGwoLyhbYS16MC05XSkoW0EtWl0pL2csICckMSAkMicpXG4gICAgLnJlcGxhY2VBbGwoL1tfLV0rL2csICcgJylcbiAgICAucmVwbGFjZSgvXi4vLCAodmFsdWUpID0+IHZhbHVlLnRvVXBwZXJDYXNlKCkpO1xufVxuIl19
@@ -0,0 +1,298 @@
1
+ import { Subject } from 'rxjs';
2
+ import { humanizeKey } from '../table.utils';
3
+ export { viewField, groupableViewFields, sliceableViewFields, initialViewState } from '@oneteme/jquery-core';
4
+ // ── Facade
5
+ /**
6
+ * Centralise l'état et les actions du panneau View (Champs / Group by / Slice by).
7
+ * Pas de dépendance Angular/DOM : peut être extraite vers jquery-core à terme.
8
+ *
9
+ * Usage :
10
+ * this._view = new ViewFacade();
11
+ * this._view.events$.subscribe(e => { ... });
12
+ * this._view.update({ config, columns, sliceConfigs });
13
+ */
14
+ export class ViewFacade {
15
+ constructor() {
16
+ // ── State
17
+ this.fields = {
18
+ activeColumns: [],
19
+ userCustomized: false,
20
+ };
21
+ this.groupBy = {
22
+ activeKey: null,
23
+ };
24
+ this.sliceBy = {
25
+ activeDynamicColumns: [],
26
+ availableForDynamic: [],
27
+ allDynamicColumns: [],
28
+ activeLabel: 'Aucun',
29
+ };
30
+ this._panelConfig = { columns: [], sliceConfigs: [] };
31
+ this._hiddenStaticKeys = new Set();
32
+ // ── Events
33
+ this._events$ = new Subject();
34
+ this.events$ = this._events$.asObservable();
35
+ }
36
+ // ── Computed flags
37
+ get enabled() {
38
+ return this._panelConfig.config?.enabled === true;
39
+ }
40
+ get showFields() {
41
+ return this.enabled;
42
+ }
43
+ get showGroupBySection() {
44
+ return this.enabled && this.groupByColumns.length > 0;
45
+ }
46
+ get showSliceBySection() {
47
+ return this.enabled && ((this._panelConfig.sliceConfigs?.length ?? 0) > 0 ||
48
+ this.sliceBy.allDynamicColumns.length > 0);
49
+ }
50
+ get allowColumnRemoval() {
51
+ return this._panelConfig.config?.enableColumnRemoval !== false;
52
+ }
53
+ get isColumnDragDropEnabled() {
54
+ return this._panelConfig.config?.enableColumnDragDrop === true;
55
+ }
56
+ get menuBaseColumns() {
57
+ return this._uniqueByKey((this._panelConfig.columns || []).filter(c => !c.optional));
58
+ }
59
+ get menuOptionalColumns() {
60
+ return this._uniqueByKey((this._panelConfig.columns || []).filter(c => c.optional));
61
+ }
62
+ get totalColumnCount() {
63
+ return new Set((this._panelConfig.columns || []).map(c => c.key)).size;
64
+ }
65
+ get groupByColumns() {
66
+ const seen = new Set();
67
+ return (this._panelConfig.columns || []).filter(c => {
68
+ if (c.groupable === false || seen.has(c.key))
69
+ return false;
70
+ if (!c.header && c.groupable !== true)
71
+ return false;
72
+ seen.add(c.key);
73
+ return true;
74
+ });
75
+ }
76
+ get activeGroupByLabel() {
77
+ if (!this.groupBy.activeKey)
78
+ return this._panelConfig.noneLabel ?? 'Aucun';
79
+ const col = this.groupByColumns.find(c => c.key === this.groupBy.activeKey);
80
+ return col?.header || this.groupBy.activeKey;
81
+ }
82
+ get staticSlicesForMenu() {
83
+ return (this._panelConfig.sliceConfigs ?? [])
84
+ .filter(s => !!s.columnKey)
85
+ .map(s => {
86
+ const colIcon = (this._panelConfig.columns ?? []).find(c => c.key === s.columnKey)?.icon;
87
+ return { key: s.columnKey, title: s.title || humanizeKey(s.columnKey), icon: s.icon ?? colIcon };
88
+ });
89
+ }
90
+ colLabel(col) {
91
+ return col.header || humanizeKey(col.key);
92
+ }
93
+ // ── Mise à jour de la config (appelée depuis refreshViewModel)
94
+ update(panelConfig) {
95
+ this._panelConfig = panelConfig;
96
+ this._refreshDefaultColumns();
97
+ this._refreshDynamicSliceMeta();
98
+ }
99
+ // ── Actions Fields
100
+ setActiveColumns(columns) {
101
+ this.fields.activeColumns = columns;
102
+ this.fields.userCustomized = true;
103
+ }
104
+ setUserCustomized(value) {
105
+ this.fields.userCustomized = value;
106
+ }
107
+ /** Remet la vue dans son état initial : colonnes par défaut, pas de groupBy, pas de dynamic slices. */
108
+ resetToDefaults() {
109
+ this.fields.userCustomized = false;
110
+ this._refreshDefaultColumns();
111
+ this.groupBy.activeKey = null;
112
+ this.sliceBy.activeDynamicColumns = [];
113
+ this._refreshDynamicSliceMeta();
114
+ }
115
+ addColumn(column) {
116
+ const configCols = this._panelConfig.columns ?? [];
117
+ const configIndex = configCols.findIndex(c => c.key === column.key);
118
+ if (configIndex === -1) {
119
+ this.fields.activeColumns = [...this.fields.activeColumns, column];
120
+ }
121
+ else {
122
+ const insertBefore = this.fields.activeColumns.findIndex(c => {
123
+ const ci = configCols.findIndex(cc => cc.key === c.key);
124
+ return ci !== -1 && ci > configIndex;
125
+ });
126
+ if (insertBefore === -1) {
127
+ this.fields.activeColumns = [...this.fields.activeColumns, column];
128
+ }
129
+ else {
130
+ const copy = [...this.fields.activeColumns];
131
+ copy.splice(insertBefore, 0, column);
132
+ this.fields.activeColumns = copy;
133
+ }
134
+ }
135
+ this.fields.userCustomized = true;
136
+ this._events$.next({ type: 'fieldsChanged', fieldIds: this.fields.activeColumns.map(c => c.key) });
137
+ }
138
+ removeColumn(columnKey) {
139
+ const col = this.fields.activeColumns.find(c => c.key === columnKey);
140
+ if (!col)
141
+ return false;
142
+ if (!col.optional && !this.allowColumnRemoval)
143
+ return false;
144
+ if (this.fields.activeColumns.length <= 1)
145
+ return false;
146
+ this.fields.activeColumns = this.fields.activeColumns.filter(c => c.key !== columnKey);
147
+ this.fields.userCustomized = true;
148
+ this._events$.next({ type: 'fieldsChanged', fieldIds: this.fields.activeColumns.map(c => c.key) });
149
+ return true;
150
+ }
151
+ toggleColumnVisibility(column, visible) {
152
+ const isVisible = this.isColumnVisible(column.key);
153
+ if (visible && !isVisible) {
154
+ this.addColumn(column);
155
+ }
156
+ else if (!visible && isVisible) {
157
+ this.removeColumn(column.key);
158
+ }
159
+ }
160
+ reorderColumns(fromKey, toKey) {
161
+ const prev = this.fields.activeColumns.findIndex(c => c.key === fromKey);
162
+ const curr = this.fields.activeColumns.findIndex(c => c.key === toKey);
163
+ if (prev === -1 || curr === -1 || prev === curr)
164
+ return false;
165
+ const reordered = [...this.fields.activeColumns];
166
+ const [moved] = reordered.splice(prev, 1);
167
+ reordered.splice(curr, 0, moved);
168
+ this.fields.activeColumns = reordered;
169
+ this.fields.userCustomized = true;
170
+ this._events$.next({ type: 'fieldsChanged', fieldIds: this.fields.activeColumns.map(c => c.key) });
171
+ return true;
172
+ }
173
+ isColumnVisible(key) {
174
+ return this.fields.activeColumns.some(c => c.key === key);
175
+ }
176
+ // ── Actions Group by
177
+ setGroupBy(key) {
178
+ this.groupBy.activeKey = key;
179
+ this._events$.next({ type: 'groupByChanged', key });
180
+ }
181
+ // ── Actions Slice by (dynamique)
182
+ /** Appelée quand le SlicePanelComponent émet dynamicSliceKeysChange */
183
+ onDynamicSliceKeysChange(keys) {
184
+ const allCols = this._panelConfig.columns ?? [];
185
+ const staticKeys = new Set((this._panelConfig.sliceConfigs ?? []).map(s => s.columnKey).filter((k) => !!k));
186
+ const dynamicKeySet = new Set(keys);
187
+ const existingKeys = new Set([...staticKeys, ...dynamicKeySet]);
188
+ this.sliceBy.activeDynamicColumns = keys
189
+ .map(k => allCols.find(c => c.key === k))
190
+ .filter((c) => !!c);
191
+ const seen = new Set();
192
+ this.sliceBy.availableForDynamic = allCols.filter(c => {
193
+ if (c.sliceable === false || existingKeys.has(c.key) || seen.has(c.key))
194
+ return false;
195
+ seen.add(c.key);
196
+ return true;
197
+ });
198
+ this._computeSliceLabel();
199
+ this._events$.next({ type: 'dynamicSlicesChanged', keys });
200
+ }
201
+ isDynamicSliceActive(key) {
202
+ return this.sliceBy.activeDynamicColumns.some(c => c.key === key);
203
+ }
204
+ // ── Contrat core
205
+ /** Retourne un snapshot ViewState (contrat core) de l'état courant. */
206
+ toViewState() {
207
+ return {
208
+ selectedFieldIds: this.fields.activeColumns.map(c => c.key),
209
+ groupByKey: this.groupBy.activeKey,
210
+ dynamicSliceKeys: this.sliceBy.activeDynamicColumns.map(c => c.key),
211
+ };
212
+ }
213
+ /** Convertit une TableColumnProvider en ViewField (contrat core). */
214
+ static toViewField(col) {
215
+ return {
216
+ id: col.key,
217
+ label: col.header,
218
+ icon: col.icon,
219
+ groupable: col.groupable,
220
+ sliceable: col.sliceable,
221
+ optional: col.optional,
222
+ };
223
+ }
224
+ // ── Destructor
225
+ destroy() {
226
+ this._events$.complete();
227
+ }
228
+ // ── Helpers privés
229
+ _refreshDefaultColumns() {
230
+ const defaultCols = (this._panelConfig.columns || []).filter(c => !c.optional);
231
+ if (!this.fields.userCustomized || this.fields.activeColumns.length === 0) {
232
+ this.fields.activeColumns = [...defaultCols];
233
+ }
234
+ else {
235
+ const allowedKeys = new Set((this._panelConfig.columns || []).map(c => c.key));
236
+ this.fields.activeColumns = this.fields.activeColumns.filter(c => allowedKeys.has(c.key));
237
+ }
238
+ }
239
+ _refreshDynamicSliceMeta() {
240
+ const allCols = this._panelConfig.columns ?? [];
241
+ const staticKeys = new Set((this._panelConfig.sliceConfigs ?? []).map(s => s.columnKey).filter((k) => !!k));
242
+ const activeDynKeys = new Set(this.sliceBy.activeDynamicColumns.map(c => c.key));
243
+ const seen1 = new Set();
244
+ this.sliceBy.availableForDynamic = allCols.filter(c => {
245
+ if (c.sliceable === false || staticKeys.has(c.key) || activeDynKeys.has(c.key) || seen1.has(c.key))
246
+ return false;
247
+ if (!c.header && c.sliceable !== true)
248
+ return false;
249
+ seen1.add(c.key);
250
+ return true;
251
+ });
252
+ const seen2 = new Set();
253
+ this.sliceBy.allDynamicColumns = allCols.filter(c => {
254
+ if (c.sliceable === false || staticKeys.has(c.key) || seen2.has(c.key))
255
+ return false;
256
+ if (!c.header && c.sliceable !== true)
257
+ return false;
258
+ seen2.add(c.key);
259
+ return true;
260
+ });
261
+ this._computeSliceLabel();
262
+ }
263
+ /** Notifie la facade des slices statiques actuellement cachées (géré par table.component).
264
+ * Recalcule le label slice afin qu'il reflète uniquement les slices visibles. */
265
+ updateHiddenStaticKeys(keys) {
266
+ this._hiddenStaticKeys = keys;
267
+ this._computeSliceLabel();
268
+ }
269
+ _computeSliceLabel() {
270
+ const visibleStatics = (this._panelConfig.sliceConfigs ?? []).filter(s => !s.columnKey || !this._hiddenStaticKeys.has(s.columnKey));
271
+ const visibleStaticCount = visibleStatics.length;
272
+ const total = visibleStaticCount + this.sliceBy.activeDynamicColumns.length;
273
+ if (total === 0) {
274
+ this.sliceBy.activeLabel = this._panelConfig.noneLabel ?? 'Aucun';
275
+ return;
276
+ }
277
+ if (total === 1) {
278
+ if (visibleStaticCount === 1) {
279
+ const first = visibleStatics[0];
280
+ this.sliceBy.activeLabel = first?.title || first?.columnKey || '1';
281
+ return;
282
+ }
283
+ this.sliceBy.activeLabel = this.sliceBy.activeDynamicColumns[0]?.header || '1';
284
+ return;
285
+ }
286
+ this.sliceBy.activeLabel = `${total} actifs`;
287
+ }
288
+ _uniqueByKey(cols) {
289
+ const seen = new Set();
290
+ return cols.filter(c => {
291
+ if (seen.has(c.key))
292
+ return false;
293
+ seen.add(c.key);
294
+ return true;
295
+ });
296
+ }
297
+ }
298
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy5mYWNhZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmV0ZW1lL2pxdWVyeS10YWJsZS9zcmMvbGliL2NvbXBvbmVudC92aWV3L3ZpZXcuZmFjYWRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJL0IsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQWdDN0csWUFBWTtBQUVaOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7SUFBdkI7UUFFRSxXQUFXO1FBRUYsV0FBTSxHQUFtQjtZQUNoQyxhQUFhLEVBQUUsRUFBRTtZQUNqQixjQUFjLEVBQUUsS0FBSztTQUN0QixDQUFDO1FBRU8sWUFBTyxHQUFxQjtZQUNuQyxTQUFTLEVBQUUsSUFBSTtTQUNoQixDQUFDO1FBRU8sWUFBTyxHQUFxQjtZQUNuQyxvQkFBb0IsRUFBRSxFQUFFO1lBQ3hCLG1CQUFtQixFQUFFLEVBQUU7WUFDdkIsaUJBQWlCLEVBQUUsRUFBRTtZQUNyQixXQUFXLEVBQUUsT0FBTztTQUNyQixDQUFDO1FBRU0saUJBQVksR0FBb0IsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUNsRSxzQkFBaUIsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO1FBRTlDLFlBQVk7UUFFSyxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQWEsQ0FBQztRQUM1QyxZQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQXlTbEQsQ0FBQztJQXZTQyxvQkFBb0I7SUFFcEIsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENB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QztZQUFDLE9BQU87U0FBRTtRQUMvRixJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUU7WUFDZixJQUFJLGtCQUFrQixLQUFLLENBQUMsRUFBRTtnQkFDNUIsTUFBTSxLQUFLLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxLQUFLLEVBQUUsS0FBSyxJQUFJLEtBQUssRUFBRSxTQUFTLElBQUksR0FBRyxDQUFDO2dCQUNuRSxPQUFPO2FBQ1I7WUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sSUFBSSxHQUFHLENBQUM7WUFDL0UsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsR0FBRyxLQUFLLFNBQVMsQ0FBQztJQUMvQyxDQUFDO0lBRU8sWUFBWSxDQUFDLElBQThCO1FBQ2pELE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7UUFDL0IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO2dCQUFFLE9BQU8sS0FBSyxDQUFDO1lBQ2xDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2hCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBWaWV3RXZlbnQsIFZpZXdGaWVsZCwgVmlld1N0YXRlIH0gZnJvbSAnQG9uZXRlbWUvanF1ZXJ5LWNvcmUnO1xuaW1wb3J0IHsgVGFibGVDb2x1bW5Qcm92aWRlciwgVGFibGVWaWV3Q29uZmlnIH0gZnJvbSAnLi4vLi4vanF1ZXJ5LXRhYmxlLm1vZGVsJztcbmltcG9ydCB7IFNsaWNlQ29uZmlnIH0gZnJvbSAnLi4vc2xpY2UtcGFuZWwvc2xpY2UtcGFuZWwubW9kZWwnO1xuaW1wb3J0IHsgaHVtYW5pemVLZXkgfSBmcm9tICcuLi90YWJsZS51dGlscyc7XG5cbmV4cG9ydCB0eXBlIHsgVmlld0ZpZWxkLCBWaWV3Q29uZmlnLCBWaWV3U3RhdGUsIFZpZXdFdmVudCB9IGZyb20gJ0BvbmV0ZW1lL2pxdWVyeS1jb3JlJztcbmV4cG9ydCB7IHZpZXdGaWVsZCwgZ3JvdXBhYmxlVmlld0ZpZWxkcywgc2xpY2VhYmxlVmlld0ZpZWxkcywgaW5pdGlhbFZpZXdTdGF0ZSB9IGZyb20gJ0BvbmV0ZW1lL2pxdWVyeS1jb3JlJztcblxuLy8g4pSA4pSAIFR5cGVzIGludGVybmVzXG5cbmV4cG9ydCBpbnRlcmZhY2UgVmlld0ZpZWxkU3RhdGUge1xuICBhY3RpdmVDb2x1bW5zOiBUYWJsZUNvbHVtblByb3ZpZGVyPGFueT5bXTtcbiAgLyoqIHRydWUgc2kgbCd1dGlsaXNhdGV1ciBhIGTDqWrDoCBwZXJzb25uYWxpc8OpIGxhIHPDqWxlY3Rpb24gZGUgY29sb25uZXMgKi9cbiAgdXNlckN1c3RvbWl6ZWQ6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmlld0dyb3VwQnlTdGF0ZSB7XG4gIGFjdGl2ZUtleTogc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWaWV3U2xpY2VCeVN0YXRlIHtcbiAgYWN0aXZlRHluYW1pY0NvbHVtbnM6IFRhYmxlQ29sdW1uUHJvdmlkZXI8YW55PltdO1xuICBhdmFpbGFibGVGb3JEeW5hbWljOiBUYWJsZUNvbHVtblByb3ZpZGVyPGFueT5bXTtcbiAgYWxsRHluYW1pY0NvbHVtbnM6IFRhYmxlQ29sdW1uUHJvdmlkZXI8YW55PltdO1xuICBhY3RpdmVMYWJlbDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZpZXdQYW5lbENvbmZpZyB7XG4gIC8qKiBDb25maWcgYnJ1dGUgaXNzdWUgZGUgVGFibGVQcm92aWRlci52aWV3ICovXG4gIGNvbmZpZz86IFRhYmxlVmlld0NvbmZpZztcbiAgLyoqIFRvdXRlcyBsZXMgY29sb25uZXMgcsOpc29sdWVzIChub24gZmlsdHLDqWVzKSAqL1xuICBjb2x1bW5zOiBUYWJsZUNvbHVtblByb3ZpZGVyPGFueT5bXTtcbiAgLyoqIFNsaWNlcyBzdGF0aXF1ZXMgKi9cbiAgc2xpY2VDb25maWdzOiBTbGljZUNvbmZpZzxhbnk+W107XG4gIC8qKiBMYWJlbCB1dGlsaXPDqSBxdWFuZCBhdWN1biBncm91cGUgLyBhdWN1bmUgc2xpY2UgbuKAmWVzdCBhY3RpZi4gRMOpZmF1dMKgOiAnQXVjdW4nLiAqL1xuICBub25lTGFiZWw/OiBzdHJpbmc7XG59XG5cbi8vIOKUgOKUgCBGYWNhZGVcblxuLyoqXG4gKiBDZW50cmFsaXNlIGwnw6l0YXQgZXQgbGVzIGFjdGlvbnMgZHUgcGFubmVhdSBWaWV3IChDaGFtcHMgLyBHcm91cCBieSAvIFNsaWNlIGJ5KS5cbiAqIFBhcyBkZSBkw6lwZW5kYW5jZSBBbmd1bGFyL0RPTSA6IHBldXQgw6p0cmUgZXh0cmFpdGUgdmVycyBqcXVlcnktY29yZSDDoCB0ZXJtZS5cbiAqXG4gKiBVc2FnZSA6XG4gKiAgIHRoaXMuX3ZpZXcgPSBuZXcgVmlld0ZhY2FkZSgpO1xuICogICB0aGlzLl92aWV3LmV2ZW50cyQuc3Vic2NyaWJlKGUgPT4geyAuLi4gfSk7XG4gKiAgIHRoaXMuX3ZpZXcudXBkYXRlKHsgY29uZmlnLCBjb2x1bW5zLCBzbGljZUNvbmZpZ3MgfSk7XG4gKi9cbmV4cG9ydCBjbGFzcyBWaWV3RmFjYWRlPFQgPSBhbnk+IHtcblxuICAvLyDilIDilIAgU3RhdGVcblxuICByZWFkb25seSBmaWVsZHM6IFZpZXdGaWVsZFN0YXRlID0ge1xuICAgIGFjdGl2ZUNvbHVtbnM6IFtdLFxuICAgIHVzZXJDdXN0b21pemVkOiBmYWxzZSxcbiAgfTtcblxuICByZWFkb25seSBncm91cEJ5OiBWaWV3R3JvdXBCeVN0YXRlID0ge1xuICAgIGFjdGl2ZUtleTogbnVsbCxcbiAgfTtcblxuICByZWFkb25seSBzbGljZUJ5OiBWaWV3U2xpY2VCeVN0YXRlID0ge1xuICAgIGFjdGl2ZUR5bmFtaWNDb2x1bW5zOiBbXSxcbiAgICBhdmFpbGFibGVGb3JEeW5hbWljOiBbXSxcbiAgICBhbGxEeW5hbWljQ29sdW1uczogW10sXG4gICAgYWN0aXZlTGFiZWw6ICdBdWN1bicsXG4gIH07XG5cbiAgcHJpdmF0ZSBfcGFuZWxDb25maWc6IFZpZXdQYW5lbENvbmZpZyA9IHsgY29sdW1uczogW10sIHNsaWNlQ29uZmlnczogW10gfTtcbiAgcHJpdmF0ZSBfaGlkZGVuU3RhdGljS2V5cyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuXG4gIC8vIOKUgOKUgCBFdmVudHNcblxuICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudHMkID0gbmV3IFN1YmplY3Q8Vmlld0V2ZW50PigpO1xuICByZWFkb25seSBldmVudHMkID0gdGhpcy5fZXZlbnRzJC5hc09ic2VydmFibGUoKTtcblxuICAvLyDilIDilIAgQ29tcHV0ZWQgZmxhZ3NcblxuICBnZXQgZW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcGFuZWxDb25maWcuY29uZmlnPy5lbmFibGVkID09PSB0cnVlO1xuICB9XG5cbiAgZ2V0IHNob3dGaWVsZHMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZW5hYmxlZDtcbiAgfVxuXG4gIGdldCBzaG93R3JvdXBCeVNlY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZW5hYmxlZCAmJiB0aGlzLmdyb3VwQnlDb2x1bW5zLmxlbmd0aCA+IDA7XG4gIH1cblxuICBnZXQgc2hvd1NsaWNlQnlTZWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmVuYWJsZWQgJiYgKFxuICAgICAgKHRoaXMuX3BhbmVsQ29uZmlnLnNsaWNlQ29uZmlncz8ubGVuZ3RoID8/IDApID4gMCB8fFxuICAgICAgdGhpcy5zbGljZUJ5LmFsbER5bmFtaWNDb2x1bW5zLmxlbmd0aCA+IDBcbiAgICApO1xuICB9XG5cbiAgZ2V0IGFsbG93Q29sdW1uUmVtb3ZhbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcGFuZWxDb25maWcuY29uZmlnPy5lbmFibGVDb2x1bW5SZW1vdmFsICE9PSBmYWxzZTtcbiAgfVxuXG4gIGdldCBpc0NvbHVtbkRyYWdEcm9wRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcGFuZWxDb25maWcuY29uZmlnPy5lbmFibGVDb2x1bW5EcmFnRHJvcCA9PT0gdHJ1ZTtcbiAgfVxuXG4gIGdldCBtZW51QmFzZUNvbHVtbnMoKTogVGFibGVDb2x1bW5Qcm92aWRlcjxUPltdIHtcbiAgICByZXR1cm4gdGhpcy5fdW5pcXVlQnlLZXkoKHRoaXMuX3BhbmVsQ29uZmlnLmNvbHVtbnMgfHwgW10pLmZpbHRlcihjID0+ICFjLm9wdGlvbmFsKSk7XG4gIH1cblxuICBnZXQgbWVudU9wdGlvbmFsQ29sdW1ucygpOiBUYWJsZUNvbHVtblByb3ZpZGVyPFQ+W10ge1xuICAgIHJldHVybiB0aGlzLl91bmlxdWVCeUtleSgodGhpcy5fcGFuZWxDb25maWcuY29sdW1ucyB8fCBbXSkuZmlsdGVyKGMgPT4gYy5vcHRpb25hbCkpO1xuICB9XG5cbiAgZ2V0IHRvdGFsQ29sdW1uQ291bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gbmV3IFNldCgodGhpcy5fcGFuZWxDb25maWcuY29sdW1ucyB8fCBbXSkubWFwKGMgPT4gYy5rZXkpKS5zaXplO1xuICB9XG5cbiAgZ2V0IGdyb3VwQnlDb2x1bW5zKCk6IFRhYmxlQ29sdW1uUHJvdmlkZXI8VD5bXSB7XG4gICAgY29uc3Qgc2VlbiA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgIHJldHVybiAodGhpcy5fcGFuZWxDb25maWcuY29sdW1ucyB8fCBbXSkuZmlsdGVyKGMgPT4ge1xuICAgICAgaWYgKGMuZ3JvdXBhYmxlID09PSBmYWxzZSB8fCBzZWVuLmhhcyhjLmtleSkpIHJldHVybiBmYWxzZTtcbiAgICAgIGlmICghYy5oZWFkZXIgJiYgYy5ncm91cGFibGUgIT09IHRydWUpIHJldHVybiBmYWxzZTtcbiAgICAgIHNlZW4uYWRkKGMua2V5KTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGFjdGl2ZUdyb3VwQnlMYWJlbCgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5ncm91cEJ5LmFjdGl2ZUtleSkgcmV0dXJuIHRoaXMuX3BhbmVsQ29uZmlnLm5vbmVMYWJlbCA/PyAnQXVjdW4nO1xuICAgIGNvbnN0IGNvbCA9IHRoaXMuZ3JvdXBCeUNvbHVtbnMuZmluZChjID0+IGMua2V5ID09PSB0aGlzLmdyb3VwQnkuYWN0aXZlS2V5KTtcbiAgICByZXR1cm4gY29sPy5oZWFkZXIgfHwgdGhpcy5ncm91cEJ5LmFjdGl2ZUtleTtcbiAgfVxuXG4gIGdldCBzdGF0aWNTbGljZXNGb3JNZW51KCk6IEFycmF5PHsga2V5OiBzdHJpbmc7IHRpdGxlOiBzdHJpbmc7IGljb24/OiBzdHJpbmcgfT4ge1xuICAgIHJldHVybiAodGhpcy5fcGFuZWxDb25maWcuc2xpY2VDb25maWdzID8/IFtdKVxuICAgICAgLmZpbHRlcihzID0+ICEhcy5jb2x1bW5LZXkpXG4gICAgICAubWFwKHMgPT4ge1xuICAgICAgICBjb25zdCBjb2xJY29uID0gKHRoaXMuX3BhbmVsQ29uZmlnLmNvbHVtbnMgPz8gW10pLmZpbmQoYyA9PiBjLmtleSA9PT0gcy5jb2x1bW5LZXkpPy5pY29uO1xuICAgICAgICByZXR1cm4geyBrZXk6IHMuY29sdW1uS2V5ISwgdGl0bGU6IHMudGl0bGUgfHwgaHVtYW5pemVLZXkocy5jb2x1bW5LZXkhKSwgaWNvbjogcy5pY29uID8/IGNvbEljb24gfTtcbiAgICAgIH0pO1xuICB9XG5cbiAgY29sTGFiZWwoY29sOiB7IGtleTogc3RyaW5nOyBoZWFkZXI/OiBzdHJpbmcgfSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGNvbC5oZWFkZXIgfHwgaHVtYW5pemVLZXkoY29sLmtleSk7XG4gIH1cblxuICAvLyDilIDilIAgTWlzZSDDoCBqb3VyIGRlIGxhIGNvbmZpZyAoYXBwZWzDqWUgZGVwdWlzIHJlZnJlc2hWaWV3TW9kZWwpXG5cbiAgdXBkYXRlKHBhbmVsQ29uZmlnOiBWaWV3UGFuZWxDb25maWcpOiB2b2lkIHtcbiAgICB0aGlzLl9wYW5lbENvbmZpZyA9IHBhbmVsQ29uZmlnO1xuICAgIHRoaXMuX3JlZnJlc2hEZWZhdWx0Q29sdW1ucygpO1xuICAgIHRoaXMuX3JlZnJlc2hEeW5hbWljU2xpY2VNZXRhKCk7XG4gIH1cblxuICAvLyDilIDilIAgQWN0aW9ucyBGaWVsZHNcblxuICBzZXRBY3RpdmVDb2x1bW5zKGNvbHVtbnM6IFRhYmxlQ29sdW1uUHJvdmlkZXI8VD5bXSk6IHZvaWQge1xuICAgIHRoaXMuZmllbGRzLmFjdGl2ZUNvbHVtbnMgPSBjb2x1bW5zO1xuICAgIHRoaXMuZmllbGRzLnVzZXJDdXN0b21pemVkID0gdHJ1ZTtcbiAgfVxuXG4gIHNldFVzZXJDdXN0b21pemVkKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5maWVsZHMudXNlckN1c3RvbWl6ZWQgPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKiBSZW1ldCBsYSB2dWUgZGFucyBzb24gw6l0YXQgaW5pdGlhbCA6IGNvbG9ubmVzIHBhciBkw6lmYXV0LCBwYXMgZGUgZ3JvdXBCeSwgcGFzIGRlIGR5bmFtaWMgc2xpY2VzLiAqL1xuICByZXNldFRvRGVmYXVsdHMoKTogdm9pZCB7XG4gICAgdGhpcy5maWVsZHMudXNlckN1c3RvbWl6ZWQgPSBmYWxzZTtcbiAgICB0aGlzLl9yZWZyZXNoRGVmYXVsdENvbHVtbnMoKTtcbiAgICB0aGlzLmdyb3VwQnkuYWN0aXZlS2V5ID0gbnVsbDtcbiAgICB0aGlzLnNsaWNlQnkuYWN0aXZlRHluYW1pY0NvbHVtbnMgPSBbXTtcbiAgICB0aGlzLl9yZWZyZXNoRHluYW1pY1NsaWNlTWV0YSgpO1xuICB9XG5cbiAgYWRkQ29sdW1uKGNvbHVtbjogVGFibGVDb2x1bW5Qcm92aWRlcjxUPik6IHZvaWQge1xuICAgIGNvbnN0IGNvbmZpZ0NvbHMgPSB0aGlzLl9wYW5lbENvbmZpZy5jb2x1bW5zID8/IFtdO1xuICAgIGNvbnN0IGNvbmZpZ0luZGV4ID0gY29uZmlnQ29scy5maW5kSW5kZXgoYyA9PiBjLmtleSA9PT0gY29sdW1uLmtleSk7XG4gICAgaWYgKGNvbmZpZ0luZGV4ID09PSAtMSkge1xuICAgICAgdGhpcy5maWVsZHMuYWN0aXZlQ29sdW1ucyA9IFsuLi50aGlzLmZpZWxkcy5hY3RpdmVDb2x1bW5zLCBjb2x1bW5dO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBpbnNlcnRCZWZvcmUgPSB0aGlzLmZpZWxkcy5hY3RpdmVDb2x1bW5zLmZpbmRJbmRleChjID0+IHtcbiAgICAgICAgY29uc3QgY2kgPSBjb25maWdDb2xzLmZpbmRJbmRleChjYyA9PiBjYy5rZXkgPT09IGMua2V5KTtcbiAgICAgICAgcmV0dXJuIGNpICE9PSAtMSAmJiBjaSA+IGNvbmZpZ0luZGV4O1xuICAgICAgfSk7XG4gICAgICBpZiAoaW5zZXJ0QmVmb3JlID09PSAtMSkge1xuICAgICAgICB0aGlzLmZpZWxkcy5hY3RpdmVDb2x1bW5zID0gWy4uLnRoaXMuZmllbGRzLmFjdGl2ZUNvbHVtbnMsIGNvbHVtbl07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBjb3B5ID0gWy4uLnRoaXMuZmllbGRzLmFjdGl2ZUNvbHVtbnNdO1xuICAgICAgICBjb3B5LnNwbGljZShpbnNlcnRCZWZvcmUsIDAsIGNvbHVtbik7XG4gICAgICAgIHRoaXMuZmllbGRzLmFjdGl2ZUNvbHVtbnMgPSBjb3B5O1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmZpZWxkcy51c2VyQ3VzdG9taXplZCA9IHRydWU7XG4gICAgdGhpcy5fZXZlbnRzJC5uZXh0KHsgdHlwZTogJ2ZpZWxkc0NoYW5nZWQnLCBmaWVsZElkczogdGhpcy5maWVsZHMuYWN0aXZlQ29sdW1ucy5tYXAoYyA9PiBjLmtleSkgfSk7XG4gIH1cblxuICByZW1vdmVDb2x1bW4oY29sdW1uS2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBjb2wgPSB0aGlzLmZpZWxkcy5hY3RpdmVDb2x1bW5zLmZpbmQoYyA9PiBjLmtleSA9PT0gY29sdW1uS2V5KTtcbiAgICBpZiAoIWNvbCkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICghY29sLm9wdGlvbmFsICYmICF0aGlzLmFsbG93Q29sdW1uUmVtb3ZhbCkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLmZpZWxkcy5hY3RpdmVDb2x1bW5zLmxlbmd0aCA8PSAxKSByZXR1cm4gZmFsc2U7XG4gICAgdGhpcy5maWVsZHMuYWN0aXZlQ29sdW1ucyA9IHRoaXMuZmllbGRzLmFjdGl2ZUNvbHVtbnMuZmlsdGVyKGMgPT4gYy5rZXkgIT09IGNvbHVtbktleSk7XG4gICAgdGhpcy5maWVsZHMudXNlckN1c3RvbWl6ZWQgPSB0cnVlO1xuICAgIHRoaXMuX2V2ZW50cyQubmV4dCh7IHR5cGU6ICdmaWVsZHNDaGFuZ2VkJywgZmllbGRJZHM6IHRoaXMuZmllbGRzLmFjdGl2ZUNvbHVtbnMubWFwKGMgPT4gYy5rZXkpIH0pO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgdG9nZ2xlQ29sdW1uVmlzaWJpbGl0eShjb2x1bW46IFRhYmxlQ29sdW1uUHJvdmlkZXI8VD4sIHZpc2libGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCBpc1Zpc2libGUgPSB0aGlzLmlzQ29sdW1uVmlzaWJsZShjb2x1bW4ua2V5KTtcbiAgICBpZiAodmlzaWJsZSAmJiAhaXNWaXNpYmxlKSB7XG4gICAgICB0aGlzLmFkZENvbHVtbihjb2x1bW4pO1xuICAgIH0gZWxzZSBpZiAoIXZpc2libGUgJiYgaXNWaXNpYmxlKSB7XG4gICAgICB0aGlzLnJlbW92ZUNvbHVtbihjb2x1bW4ua2V5KTtcbiAgICB9XG4gIH1cblxuICByZW9yZGVyQ29sdW1ucyhmcm9tS2V5OiBzdHJpbmcsIHRvS2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBwcmV2ID0gdGhpcy5maWVsZHMuYWN0aXZlQ29sdW1ucy5maW5kSW5kZXgoYyA9PiBjLmtleSA9PT0gZnJvbUtleSk7XG4gICAgY29uc3QgY3VyciA9IHRoaXMuZmllbGRzLmFjdGl2ZUNvbHVtbnMuZmluZEluZGV4KGMgPT4gYy5rZXkgPT09IHRvS2V5KTtcbiAgICBpZiAocHJldiA9PT0gLTEgfHwgY3VyciA9PT0gLTEgfHwgcHJldiA9PT0gY3VycikgcmV0dXJuIGZhbHNlO1xuICAgIGNvbnN0IHJlb3JkZXJlZCA9IFsuLi50aGlzLmZpZWxkcy5hY3RpdmVDb2x1bW5zXTtcbiAgICBjb25zdCBbbW92ZWRdID0gcmVvcmRlcmVkLnNwbGljZShwcmV2LCAxKTtcbiAgICByZW9yZGVyZWQuc3BsaWNlKGN1cnIsIDAsIG1vdmVkKTtcbiAgICB0aGlzLmZpZWxkcy5hY3RpdmVDb2x1bW5zID0gcmVvcmRlcmVkO1xuICAgIHRoaXMuZmllbGRzLnVzZXJDdXN0b21pemVkID0gdHJ1ZTtcbiAgICB0aGlzLl9ldmVudHMkLm5leHQoeyB0eXBlOiAnZmllbGRzQ2hhbmdlZCcsIGZpZWxkSWRzOiB0aGlzLmZpZWxkcy5hY3RpdmVDb2x1bW5zLm1hcChjID0+IGMua2V5KSB9KTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGlzQ29sdW1uVmlzaWJsZShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkcy5hY3RpdmVDb2x1bW5zLnNvbWUoYyA9PiBjLmtleSA9PT0ga2V5KTtcbiAgfVxuXG4gIC8vIOKUgOKUgCBBY3Rpb25zIEdyb3VwIGJ5XG5cbiAgc2V0R3JvdXBCeShrZXk6IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLmdyb3VwQnkuYWN0aXZlS2V5ID0ga2V5O1xuICAgIHRoaXMuX2V2ZW50cyQubmV4dCh7IHR5cGU6ICdncm91cEJ5Q2hhbmdlZCcsIGtleSB9KTtcbiAgfVxuXG4gIC8vIOKUgOKUgCBBY3Rpb25zIFNsaWNlIGJ5IChkeW5hbWlxdWUpXG5cbiAgLyoqIEFwcGVsw6llIHF1YW5kIGxlIFNsaWNlUGFuZWxDb21wb25lbnQgw6ltZXQgZHluYW1pY1NsaWNlS2V5c0NoYW5nZSAqL1xuICBvbkR5bmFtaWNTbGljZUtleXNDaGFuZ2Uoa2V5czogc3RyaW5nW10pOiB2b2lkIHtcbiAgICBjb25zdCBhbGxDb2xzID0gdGhpcy5fcGFuZWxDb25maWcuY29sdW1ucyA/PyBbXTtcbiAgICBjb25zdCBzdGF0aWNLZXlzID0gbmV3IFNldChcbiAgICAgICh0aGlzLl9wYW5lbENvbmZpZy5zbGljZUNvbmZpZ3MgPz8gW10pLm1hcChzID0+IHMuY29sdW1uS2V5KS5maWx0ZXIoKGspOiBrIGlzIHN0cmluZyA9PiAhIWspXG4gICAgKTtcbiAgICBjb25zdCBkeW5hbWljS2V5U2V0ID0gbmV3IFNldChrZXlzKTtcbiAgICBjb25zdCBleGlzdGluZ0tleXMgPSBuZXcgU2V0KFsuLi5zdGF0aWNLZXlzLCAuLi5keW5hbWljS2V5U2V0XSk7XG5cbiAgICB0aGlzLnNsaWNlQnkuYWN0aXZlRHluYW1pY0NvbHVtbnMgPSBrZXlzXG4gICAgICAubWFwKGsgPT4gYWxsQ29scy5maW5kKGMgPT4gYy5rZXkgPT09IGspKVxuICAgICAgLmZpbHRlcigoYyk6IGMgaXMgVGFibGVDb2x1bW5Qcm92aWRlcjxUPiA9PiAhIWMpO1xuXG4gICAgY29uc3Qgc2VlbiA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgIHRoaXMuc2xpY2VCeS5hdmFpbGFibGVGb3JEeW5hbWljID0gYWxsQ29scy5maWx0ZXIoYyA9PiB7XG4gICAgICBpZiAoYy5zbGljZWFibGUgPT09IGZhbHNlIHx8IGV4aXN0aW5nS2V5cy5oYXMoYy5rZXkpIHx8IHNlZW4uaGFzKGMua2V5KSkgcmV0dXJuIGZhbHNlO1xuICAgICAgc2Vlbi5hZGQoYy5rZXkpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9jb21wdXRlU2xpY2VMYWJlbCgpO1xuICAgIHRoaXMuX2V2ZW50cyQubmV4dCh7IHR5cGU6ICdkeW5hbWljU2xpY2VzQ2hhbmdlZCcsIGtleXMgfSk7XG4gIH1cblxuICBpc0R5bmFtaWNTbGljZUFjdGl2ZShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNsaWNlQnkuYWN0aXZlRHluYW1pY0NvbHVtbnMuc29tZShjID0+IGMua2V5ID09PSBrZXkpO1xuICB9XG5cbiAgLy8g4pSA4pSAIENvbnRyYXQgY29yZVxuXG4gIC8qKiBSZXRvdXJuZSB1biBzbmFwc2hvdCBWaWV3U3RhdGUgKGNvbnRyYXQgY29yZSkgZGUgbCfDqXRhdCBjb3VyYW50LiAqL1xuICB0b1ZpZXdTdGF0ZSgpOiBWaWV3U3RhdGUge1xuICAgIHJldHVybiB7XG4gICAgICBzZWxlY3RlZEZpZWxkSWRzOiB0aGlzLmZpZWxkcy5hY3RpdmVDb2x1bW5zLm1hcChjID0+IGMua2V5KSxcbiAgICAgIGdyb3VwQnlLZXk6IHRoaXMuZ3JvdXBCeS5hY3RpdmVLZXksXG4gICAgICBkeW5hbWljU2xpY2VLZXlzOiB0aGlzLnNsaWNlQnkuYWN0aXZlRHluYW1pY0NvbHVtbnMubWFwKGMgPT4gYy5rZXkpLFxuICAgIH07XG4gIH1cblxuICAvKiogQ29udmVydGl0IHVuZSBUYWJsZUNvbHVtblByb3ZpZGVyIGVuIFZpZXdGaWVsZCAoY29udHJhdCBjb3JlKS4gKi9cbiAgc3RhdGljIHRvVmlld0ZpZWxkKGNvbDogVGFibGVDb2x1bW5Qcm92aWRlcjxhbnk+KTogVmlld0ZpZWxkIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IGNvbC5rZXksXG4gICAgICBsYWJlbDogY29sLmhlYWRlcixcbiAgICAgIGljb246IGNvbC5pY29uLFxuICAgICAgZ3JvdXBhYmxlOiBjb2wuZ3JvdXBhYmxlLFxuICAgICAgc2xpY2VhYmxlOiBjb2wuc2xpY2VhYmxlLFxuICAgICAgb3B0aW9uYWw6IGNvbC5vcHRpb25hbCxcbiAgICB9O1xuICB9XG5cbiAgLy8g4pSA4pSAIERlc3RydWN0b3JcblxuICBkZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2V2ZW50cyQuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8vIOKUgOKUgCBIZWxwZXJzIHByaXbDqXNcblxuICBwcml2YXRlIF9yZWZyZXNoRGVmYXVsdENvbHVtbnMoKTogdm9pZCB7XG4gICAgY29uc3QgZGVmYXVsdENvbHMgPSAodGhpcy5fcGFuZWxDb25maWcuY29sdW1ucyB8fCBbXSkuZmlsdGVyKGMgPT4gIWMub3B0aW9uYWwpO1xuICAgIGlmICghdGhpcy5maWVsZHMudXNlckN1c3RvbWl6ZWQgfHwgdGhpcy5maWVsZHMuYWN0aXZlQ29sdW1ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuZmllbGRzLmFjdGl2ZUNvbHVtbnMgPSBbLi4uZGVmYXVsdENvbHNdO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBhbGxvd2VkS2V5cyA9IG5ldyBTZXQoKHRoaXMuX3BhbmVsQ29uZmlnLmNvbHVtbnMgfHwgW10pLm1hcChjID0+IGMua2V5KSk7XG4gICAgICB0aGlzLmZpZWxkcy5hY3RpdmVDb2x1bW5zID0gdGhpcy5maWVsZHMuYWN0aXZlQ29sdW1ucy5maWx0ZXIoYyA9PiBhbGxvd2VkS2V5cy5oYXMoYy5rZXkpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZWZyZXNoRHluYW1pY1NsaWNlTWV0YSgpOiB2b2lkIHtcbiAgICBjb25zdCBhbGxDb2xzID0gdGhpcy5fcGFuZWxDb25maWcuY29sdW1ucyA/PyBbXTtcbiAgICBjb25zdCBzdGF0aWNLZXlzID0gbmV3IFNldChcbiAgICAgICh0aGlzLl9wYW5lbENvbmZpZy5zbGljZUNvbmZpZ3MgPz8gW10pLm1hcChzID0+IHMuY29sdW1uS2V5KS5maWx0ZXIoKGspOiBrIGlzIHN0cmluZyA9PiAhIWspXG4gICAgKTtcbiAgICBjb25zdCBhY3RpdmVEeW5LZXlzID0gbmV3IFNldCh0aGlzLnNsaWNlQnkuYWN0aXZlRHluYW1pY0NvbHVtbnMubWFwKGMgPT4gYy5rZXkpKTtcblxuICAgIGNvbnN0IHNlZW4xID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gICAgdGhpcy5zbGljZUJ5LmF2YWlsYWJsZUZvckR5bmFtaWMgPSBhbGxDb2xzLmZpbHRlcihjID0+IHtcbiAgICAgIGlmIChjLnNsaWNlYWJsZSA9PT0gZmFsc2UgfHwgc3RhdGljS2V5cy5oYXMoYy5rZXkpIHx8IGFjdGl2ZUR5bktleXMuaGFzKGMua2V5KSB8fCBzZWVuMS5oYXMoYy5rZXkpKSByZXR1cm4gZmFsc2U7XG4gICAgICBpZiAoIWMuaGVhZGVyICYmIGMuc2xpY2VhYmxlICE9PSB0cnVlKSByZXR1cm4gZmFsc2U7XG4gICAgICBzZWVuMS5hZGQoYy5rZXkpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSk7XG5cbiAgICBjb25zdCBzZWVuMiA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgIHRoaXMuc2xpY2VCeS5hbGxEeW5hbWljQ29sdW1ucyA9IGFsbENvbHMuZmlsdGVyKGMgPT4ge1xuICAgICAgaWYgKGMuc2xpY2VhYmxlID09PSBmYWxzZSB8fCBzdGF0aWNLZXlzLmhhcyhjLmtleSkgfHwgc2VlbjIuaGFzKGMua2V5KSkgcmV0dXJuIGZhbHNlO1xuICAgICAgaWYgKCFjLmhlYWRlciAmJiBjLnNsaWNlYWJsZSAhPT0gdHJ1ZSkgcmV0dXJuIGZhbHNlO1xuICAgICAgc2VlbjIuYWRkKGMua2V5KTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fY29tcHV0ZVNsaWNlTGFiZWwoKTtcbiAgfVxuXG4gIC8qKiBOb3RpZmllIGxhIGZhY2FkZSBkZXMgc2xpY2VzIHN0YXRpcXVlcyBhY3R1ZWxsZW1lbnQgY2FjaMOpZXMgKGfDqXLDqSBwYXIgdGFibGUuY29tcG9uZW50KS5cbiAgICogUmVjYWxjdWxlIGxlIGxhYmVsIHNsaWNlIGFmaW4gcXUnaWwgcmVmbMOodGUgdW5pcXVlbWVudCBsZXMgc2xpY2VzIHZpc2libGVzLiAqL1xuICB1cGRhdGVIaWRkZW5TdGF0aWNLZXlzKGtleXM6IFNldDxzdHJpbmc+KTogdm9pZCB7XG4gICAgdGhpcy5faGlkZGVuU3RhdGljS2V5cyA9IGtleXM7XG4gICAgdGhpcy5fY29tcHV0ZVNsaWNlTGFiZWwoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NvbXB1dGVTbGljZUxhYmVsKCk6IHZvaWQge1xuICAgIGNvbnN0IHZpc2libGVTdGF0aWNzID0gKHRoaXMuX3BhbmVsQ29uZmlnLnNsaWNlQ29uZmlncyA/PyBbXSkuZmlsdGVyKFxuICAgICAgcyA9PiAhcy5jb2x1bW5LZXkgfHwgIXRoaXMuX2hpZGRlblN0YXRpY0tleXMuaGFzKHMuY29sdW1uS2V5KVxuICAgICk7XG4gICAgY29uc3QgdmlzaWJsZVN0YXRpY0NvdW50ID0gdmlzaWJsZVN0YXRpY3MubGVuZ3RoO1xuICAgIGNvbnN0IHRvdGFsID0gdmlzaWJsZVN0YXRpY0NvdW50ICsgdGhpcy5zbGljZUJ5LmFjdGl2ZUR5bmFtaWNDb2x1bW5zLmxlbmd0aDtcbiAgICBpZiAodG90YWwgPT09IDApIHsgdGhpcy5zbGljZUJ5LmFjdGl2ZUxhYmVsID0gdGhpcy5fcGFuZWxDb25maWcubm9uZUxhYmVsID8/ICdBdWN1bic7IHJldHVybjsgfVxuICAgIGlmICh0b3RhbCA9PT0gMSkge1xuICAgICAgaWYgKHZpc2libGVTdGF0aWNDb3VudCA9PT0gMSkge1xuICAgICAgICBjb25zdCBmaXJzdCA9IHZpc2libGVTdGF0aWNzWzBdO1xuICAgICAgICB0aGlzLnNsaWNlQnkuYWN0aXZlTGFiZWwgPSBmaXJzdD8udGl0bGUgfHwgZmlyc3Q/LmNvbHVtbktleSB8fCAnMSc7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMuc2xpY2VCeS5hY3RpdmVMYWJlbCA9IHRoaXMuc2xpY2VCeS5hY3RpdmVEeW5hbWljQ29sdW1uc1swXT8uaGVhZGVyIHx8ICcxJztcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zbGljZUJ5LmFjdGl2ZUxhYmVsID0gYCR7dG90YWx9IGFjdGlmc2A7XG4gIH1cblxuICBwcml2YXRlIF91bmlxdWVCeUtleShjb2xzOiBUYWJsZUNvbHVtblByb3ZpZGVyPFQ+W10pOiBUYWJsZUNvbHVtblByb3ZpZGVyPFQ+W10ge1xuICAgIGNvbnN0IHNlZW4gPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgICByZXR1cm4gY29scy5maWx0ZXIoYyA9PiB7XG4gICAgICBpZiAoc2Vlbi5oYXMoYy5rZXkpKSByZXR1cm4gZmFsc2U7XG4gICAgICBzZWVuLmFkZChjLmtleSk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,41 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ /** Valeurs par défaut (français). Toutes les propriétés sont garanties non nulles. */
3
+ export const JQT_I18N_DEFAULTS = {
4
+ searchPlaceholder: 'Rechercher...',
5
+ expandFilterTitle: 'Déplier le filtre',
6
+ collapseFilterTitle: 'Replier le filtre',
7
+ viewMenuFields: 'Champs',
8
+ viewMenuGroupBy: 'Grouper par',
9
+ viewMenuSliceBy: 'Filtrer par',
10
+ viewNoneSelected: 'Aucun',
11
+ groupRemove: 'Retirer le groupe',
12
+ groupSortLabel: 'Trier :',
13
+ groupSortAsc: 'A → Z',
14
+ groupSortDesc: 'Z → A',
15
+ groupRowsPerGroup: 'Lignes par groupe :',
16
+ groupShowAll: 'Toutes',
17
+ groupTooMany: (count) => `⚠ Trop de groupes (${count}) — affinez les données ou choisissez une autre colonne`,
18
+ lazyRetry: 'Réessayer',
19
+ lazyErrorTitle: 'Erreur de chargement — cliquer pour réessayer',
20
+ lazyErrorMenuTitle: 'Erreur de chargement',
21
+ cellEmpty: 'N/A',
22
+ emptyState: 'Aucune donnée',
23
+ loadingState: 'Chargement des données...',
24
+ filterPanelTitle: (count) => count > 1 ? 'Filtres' : 'Filtre',
25
+ filterBlockDefaultTitle: 'Filtrer',
26
+ filterEmptyState: 'Aucune donnée',
27
+ exportButtonLabel: 'Exporter',
28
+ preferencesMenuLabel: 'Préférences',
29
+ preferencesEdit: 'Mode édition',
30
+ preferencesSave: 'Enregistrer la configuration',
31
+ preferencesClear: 'Effacer la configuration',
32
+ preferencesSavedMessage: 'Configuration enregistrée. Vous pouvez la réinitialiser à tout moment via Préférences → Effacer.',
33
+ preferencesClearedMessage: 'Configuration réinitialisée.',
34
+ preferencesConfirmEdit: 'Valider les modifications',
35
+ };
36
+ /**
37
+ * Token d'injection pour surcharger tout ou partie des labels de jquery-table.
38
+ * Accepte un `Partial<JqtI18n>` — seules les clés fournies écrasent les défauts.
39
+ */
40
+ export const JQT_I18N = new InjectionToken('JQT_I18N');
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianF0LWkxOG4udG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmV0ZW1lL2pxdWVyeS10YWJsZS9zcmMvbGliL2pxdC1pMThuLnRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFrRi9DLHNGQUFzRjtBQUN0RixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBWTtJQUN4QyxpQkFBaUIsRUFBRSxlQUFlO0lBQ2xDLGlCQUFpQixFQUFFLG1CQUFtQjtJQUN0QyxtQkFBbUIsRUFBRSxtQkFBbUI7SUFDeEMsY0FBYyxFQUFFLFFBQVE7SUFDeEIsZUFBZSxFQUFFLGFBQWE7SUFDOUIsZUFBZSxFQUFFLGFBQWE7SUFDOUIsZ0JBQWdCLEVBQUUsT0FBTztJQUN6QixXQUFXLEVBQUUsbUJBQW1CO0lBQ2hDLGNBQWMsRUFBRSxTQUFTO0lBQ3pCLFlBQVksRUFBRSxPQUFPO0lBQ3JCLGFBQWEsRUFBRSxPQUFPO0lBQ3RCLGlCQUFpQixFQUFFLHFCQUFxQjtJQUN4QyxZQUFZLEVBQUUsUUFBUTtJQUN0QixZQUFZLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixLQUFLLHlEQUF5RDtJQUM3RyxTQUFTLEVBQUUsV0FBVztJQUN0QixjQUFjLEVBQUUsK0NBQStDO0lBQy9ELGtCQUFrQixFQUFFLHNCQUFzQjtJQUMxQyxTQUFTLEVBQUUsS0FBSztJQUNoQixVQUFVLEVBQUUsZUFBZTtJQUMzQixZQUFZLEVBQUUsMkJBQTJCO0lBQ3pDLGdCQUFnQixFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFFBQVE7SUFDN0QsdUJBQXVCLEVBQUUsU0FBUztJQUNsQyxnQkFBZ0IsRUFBRSxlQUFlO0lBQ2pDLGlCQUFpQixFQUFFLFVBQVU7SUFDN0Isb0JBQW9CLEVBQUUsYUFBYTtJQUNuQyxlQUFlLEVBQUUsY0FBYztJQUMvQixlQUFlLEVBQUUsOEJBQThCO0lBQy9DLGdCQUFnQixFQUFFLDBCQUEwQjtJQUM1Qyx1QkFBdUIsRUFBRSxrR0FBa0c7SUFDM0gseUJBQXlCLEVBQUUsOEJBQThCO0lBQ3pELHNCQUFzQixFQUFFLDJCQUEyQjtDQUNwRCxDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBYyxDQUFtQixVQUFVLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogTGFiZWxzIGRlIGwnaW50ZXJmYWNlIHV0aWxpc2F0ZXVyIGRlIGpxdWVyeS10YWJsZS5cbiAqXG4gKiBGb3VybmlyIGNlIHRva2VuIGF1IG5pdmVhdSBkdSBtb2R1bGUgb3UgZHUgY29tcG9zYW50IHJhY2luZSBwb3VyIGxvY2FsaXNlclxuICogb3UgcGVyc29ubmFsaXNlciB0b3VzIGxlcyB0ZXh0ZXMgZGUgbGEgYmlibGlvdGjDqHF1ZSBlbiB1biBzZXVsIGVuZHJvaXQgOlxuICpcbiAqIGBgYHRzXG4gKiBwcm92aWRlcnM6IFtcbiAqICAgeyBwcm92aWRlOiBKUVRfSTE4TiwgdXNlVmFsdWU6IHsgc2VhcmNoUGxhY2Vob2xkZXI6ICdTZWFyY2jigKYnLCBlbXB0eVN0YXRlOiAnTm8gZGF0YScgfSB9XG4gKiBdXG4gKiBgYGBcbiAqXG4gKiBUb3VzIGxlcyBjaGFtcHMgc29udCBvcHRpb25uZWxzIDogc2V1bCBjZSBxdWUgdm91cyBmb3Vybmlzc2V6IMOpY3Jhc2UgbGVzXG4gKiB2YWxldXJzIHBhciBkw6lmYXV0IGZyYW7Dp2Fpc2VzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEpxdEkxOG4ge1xuICAvKiogUGxhY2Vob2xkZXIgZGUgbGEgYmFycmUgZGUgcmVjaGVyY2hlLiAqL1xuICBzZWFyY2hQbGFjZWhvbGRlcjogc3RyaW5nO1xuICAvKiogVGl0cmUgZHUgYm91dG9uIHBvdXIgZMOpcGxpZXIgbGUgcGFubmVhdSBkZSBmaWx0cmVzLiAqL1xuICBleHBhbmRGaWx0ZXJUaXRsZTogc3RyaW5nO1xuICAvKiogVGl0cmUgZHUgYm91dG9uIHBvdXIgcmVwbGllciBsZSBwYW5uZWF1IGRlIGZpbHRyZXMuICovXG4gIGNvbGxhcHNlRmlsdGVyVGl0bGU6IHN0cmluZztcbiAgLyoqIExhYmVsIGR1IHNvdXMtbWVudSBcIkNoYW1wc1wiIGRhbnMgVmlldy4gKi9cbiAgdmlld01lbnVGaWVsZHM6IHN0cmluZztcbiAgLyoqIExhYmVsIGR1IHNvdXMtbWVudSBcIkdyb3VwIGJ5XCIgZGFucyBWaWV3LiAqL1xuICB2aWV3TWVudUdyb3VwQnk6IHN0cmluZztcbiAgLyoqIExhYmVsIGR1IHNvdXMtbWVudSBcIlNsaWNlIGJ5XCIgZGFucyBWaWV3LiAqL1xuICB2aWV3TWVudVNsaWNlQnk6IHN0cmluZztcbiAgLyoqIExhYmVsIGFmZmljaMOpIHF1YW5kIGF1Y3VuZSBvcHRpb24gbidlc3Qgc8OpbGVjdGlvbm7DqWUgKGdyb3VwZSwgc2xpY2UpLiAqL1xuICB2aWV3Tm9uZVNlbGVjdGVkOiBzdHJpbmc7XG4gIC8qKiBCb3V0b24gXCJSZXRpcmVyIGxlIGdyb3VwZVwiIGRhbnMgbGEgYmFycmUgZGUgZ3JvdXBlLiAqL1xuICBncm91cFJlbW92ZTogc3RyaW5nO1xuICAvKiogTGFiZWwgXCJUcmllciA6XCIgZGFucyBsYSBiYXJyZSBkZSBncm91cGUuICovXG4gIGdyb3VwU29ydExhYmVsOiBzdHJpbmc7XG4gIC8qKiBUb29sdGlwIHRyaSBhc2NlbmRhbnQuICovXG4gIGdyb3VwU29ydEFzYzogc3RyaW5nO1xuICAvKiogVG9vbHRpcCB0cmkgZGVzY2VuZGFudC4gKi9cbiAgZ3JvdXBTb3J0RGVzYzogc3RyaW5nO1xuICAvKiogTGFiZWwgXCJMaWduZXMgcGFyIGdyb3VwZVwiIGRhbnMgbGUgc8OpbGVjdGV1ciBkZSB0YWlsbGUgZGUgZ3JvdXBlLiAqL1xuICBncm91cFJvd3NQZXJHcm91cDogc3RyaW5nO1xuICAvKiogT3B0aW9uIFwiVG91dGVzXCIgKGFmZmljaGVyIHRvdXRlcyBsZXMgbGlnbmVzIHNhbnMgcGFnaW5hdGlvbiBkZSBncm91cGUpLiAqL1xuICBncm91cFNob3dBbGw6IHN0cmluZztcbiAgLyoqIE1lc3NhZ2UgcXVhbmQgbGUgZ3JvdXBlIGTDqXBhc3NlIGxlIG5vbWJyZSBtYXhpbWFsIGF1dG9yaXPDqS4gUmXDp29pdCBsZSBub21icmUgZGUgZ3JvdXBlcy4gKi9cbiAgZ3JvdXBUb29NYW55OiAoY291bnQ6IG51bWJlcikgPT4gc3RyaW5nO1xuICAvKiogTGFiZWwgZHUgYm91dG9uIGRlIHLDqWVzc2FpIHBvdXIgdW5lIGNvbG9ubmUgbGF6eSBlbiBlcnJldXIuICovXG4gIGxhenlSZXRyeTogc3RyaW5nO1xuICAvKiogVG9vbHRpcCBkdSBib3V0b24gZGUgcsOpZXNzYWkuICovXG4gIGxhenlFcnJvclRpdGxlOiBzdHJpbmc7XG4gIC8qKiBUb29sdGlwIGRlIGwnaWPDtG5lIGQnZXJyZXVyIGRhbnMgbGUgbWVudSBWaWV3ID4gQ2hhbXBzLiAqL1xuICBsYXp5RXJyb3JNZW51VGl0bGU6IHN0cmluZztcbiAgLyoqIFZhbGV1ciBhZmZpY2jDqWUgZGFucyB1bmUgY2VsbHVsZSB2aWRlIChudWxsIC8gdW5kZWZpbmVkIC8gJycpLiAqL1xuICBjZWxsRW1wdHk6IHN0cmluZztcbiAgLyoqIE1lc3NhZ2UgcXVhbmQgbGUgdGFibGVhdSBlc3QgdmlkZS4gKi9cbiAgZW1wdHlTdGF0ZTogc3RyaW5nO1xuICAvKiogTWVzc2FnZSBwZW5kYW50IGxlIGNoYXJnZW1lbnQgKGBbaXNMb2FkaW5nXT1cInRydWVcImApLiAqL1xuICBsb2FkaW5nU3RhdGU6IHN0cmluZztcbiAgLyoqIFRpdHJlIGR1IHBhbm5lYXUgZGUgZmlsdHJlcyBsYXTDqXJhbC4gUmXDp29pdCBsZSBub21icmUgZGUgYmxvY3MgZGUgZmlsdHJlcyBhY3RpZnMuICovXG4gIGZpbHRlclBhbmVsVGl0bGU6IChjb3VudDogbnVtYmVyKSA9PiBzdHJpbmc7XG4gIC8qKiBUaXRyZSBwYXIgZMOpZmF1dCBkJ3VuIGJsb2MgZGUgZmlsdHJlIHNhbnMgYHRpdGxlYCBjb25maWd1csOpLiAqL1xuICBmaWx0ZXJCbG9ja0RlZmF1bHRUaXRsZTogc3RyaW5nO1xuICAvKiogTWVzc2FnZSBkYW5zIHVuIGJsb2MgZGUgZmlsdHJlIHNhbnMgY2F0w6lnb3JpZXMgY29ycmVzcG9uZGFudGVzLiAqL1xuICBmaWx0ZXJFbXB0eVN0YXRlOiBzdHJpbmc7XG4gIC8qKiBMYWJlbCBkdSBib3V0b24gZCdleHBvcnQgQ1NWLiAqL1xuICBleHBvcnRCdXR0b25MYWJlbDogc3RyaW5nO1xuICAvKiogTGFiZWwgZHUgbWVudSBQcsOpZsOpcmVuY2VzIGRhbnMgVmlldy4gKi9cbiAgcHJlZmVyZW5jZXNNZW51TGFiZWw6IHN0cmluZztcbiAgLyoqIFNvdXMtaXRlbSA6IGFjdGl2ZXIgbGUgbW9kZSDDqWRpdGlvbi4gKi9cbiAgcHJlZmVyZW5jZXNFZGl0OiBzdHJpbmc7XG4gIC8qKiBTb3VzLWl0ZW0gOiBlbnJlZ2lzdHJlciBsYSBjb25maWcuICovXG4gIHByZWZlcmVuY2VzU2F2ZTogc3RyaW5nO1xuICAvKiogU291cy1pdGVtIDogZWZmYWNlciBsYSBjb25maWcuICovXG4gIHByZWZlcmVuY2VzQ2xlYXI6IHN0cmluZztcbiAgLyoqIE1lc3NhZ2UgZGUgY29uZmlybWF0aW9uIGFwcsOocyBlbnJlZ2lzdHJlbWVudC4gKi9cbiAgcHJlZmVyZW5jZXNTYXZlZE1lc3NhZ2U6IHN0cmluZztcbiAgLyoqIE1lc3NhZ2UgZGUgY29uZmlybWF0aW9uIGFwcsOocyBlZmZhY2VtZW50LiAqL1xuICBwcmVmZXJlbmNlc0NsZWFyZWRNZXNzYWdlOiBzdHJpbmc7XG4gIC8qKiBUb29sdGlwIGR1IGJvdXRvbiBkZSB2YWxpZGF0aW9uIGR1IG1vZGUgw6lkaXRpb24uICovXG4gIHByZWZlcmVuY2VzQ29uZmlybUVkaXQ6IHN0cmluZztcbn1cblxuLyoqIFZhbGV1cnMgcGFyIGTDqWZhdXQgKGZyYW7Dp2FpcykuIFRvdXRlcyBsZXMgcHJvcHJpw6l0w6lzIHNvbnQgZ2FyYW50aWVzIG5vbiBudWxsZXMuICovXG5leHBvcnQgY29uc3QgSlFUX0kxOE5fREVGQVVMVFM6IEpxdEkxOG4gPSB7XG4gIHNlYXJjaFBsYWNlaG9sZGVyOiAnUmVjaGVyY2hlci4uLicsXG4gIGV4cGFuZEZpbHRlclRpdGxlOiAnRMOpcGxpZXIgbGUgZmlsdHJlJyxcbiAgY29sbGFwc2VGaWx0ZXJUaXRsZTogJ1JlcGxpZXIgbGUgZmlsdHJlJyxcbiAgdmlld01lbnVGaWVsZHM6ICdDaGFtcHMnLFxuICB2aWV3TWVudUdyb3VwQnk6ICdHcm91cGVyIHBhcicsXG4gIHZpZXdNZW51U2xpY2VCeTogJ0ZpbHRyZXIgcGFyJyxcbiAgdmlld05vbmVTZWxlY3RlZDogJ0F1Y3VuJyxcbiAgZ3JvdXBSZW1vdmU6ICdSZXRpcmVyIGxlIGdyb3VwZScsXG4gIGdyb3VwU29ydExhYmVsOiAnVHJpZXIgOicsXG4gIGdyb3VwU29ydEFzYzogJ0Eg4oaSIFonLFxuICBncm91cFNvcnREZXNjOiAnWiDihpIgQScsXG4gIGdyb3VwUm93c1Blckdyb3VwOiAnTGlnbmVzIHBhciBncm91cGUgOicsXG4gIGdyb3VwU2hvd0FsbDogJ1RvdXRlcycsXG4gIGdyb3VwVG9vTWFueTogKGNvdW50KSA9PiBg4pqgIFRyb3AgZGUgZ3JvdXBlcyAoJHtjb3VudH0pIOKAlCBhZmZpbmV6IGxlcyBkb25uw6llcyBvdSBjaG9pc2lzc2V6IHVuZSBhdXRyZSBjb2xvbm5lYCxcbiAgbGF6eVJldHJ5OiAnUsOpZXNzYXllcicsXG4gIGxhenlFcnJvclRpdGxlOiAnRXJyZXVyIGRlIGNoYXJnZW1lbnQg4oCUIGNsaXF1ZXIgcG91ciByw6llc3NheWVyJyxcbiAgbGF6eUVycm9yTWVudVRpdGxlOiAnRXJyZXVyIGRlIGNoYXJnZW1lbnQnLFxuICBjZWxsRW1wdHk6ICdOL0EnLFxuICBlbXB0eVN0YXRlOiAnQXVjdW5lIGRvbm7DqWUnLFxuICBsb2FkaW5nU3RhdGU6ICdDaGFyZ2VtZW50IGRlcyBkb25uw6llcy4uLicsXG4gIGZpbHRlclBhbmVsVGl0bGU6IChjb3VudCkgPT4gY291bnQgPiAxID8gJ0ZpbHRyZXMnIDogJ0ZpbHRyZScsXG4gIGZpbHRlckJsb2NrRGVmYXVsdFRpdGxlOiAnRmlsdHJlcicsXG4gIGZpbHRlckVtcHR5U3RhdGU6ICdBdWN1bmUgZG9ubsOpZScsXG4gIGV4cG9ydEJ1dHRvbkxhYmVsOiAnRXhwb3J0ZXInLFxuICBwcmVmZXJlbmNlc01lbnVMYWJlbDogJ1Byw6lmw6lyZW5jZXMnLFxuICBwcmVmZXJlbmNlc0VkaXQ6ICdNb2RlIMOpZGl0aW9uJyxcbiAgcHJlZmVyZW5jZXNTYXZlOiAnRW5yZWdpc3RyZXIgbGEgY29uZmlndXJhdGlvbicsXG4gIHByZWZlcmVuY2VzQ2xlYXI6ICdFZmZhY2VyIGxhIGNvbmZpZ3VyYXRpb24nLFxuICBwcmVmZXJlbmNlc1NhdmVkTWVzc2FnZTogJ0NvbmZpZ3VyYXRpb24gZW5yZWdpc3Ryw6llLiBWb3VzIHBvdXZleiBsYSByw6lpbml0aWFsaXNlciDDoCB0b3V0IG1vbWVudCB2aWEgUHLDqWbDqXJlbmNlcyDihpIgRWZmYWNlci4nLFxuICBwcmVmZXJlbmNlc0NsZWFyZWRNZXNzYWdlOiAnQ29uZmlndXJhdGlvbiByw6lpbml0aWFsaXPDqWUuJyxcbiAgcHJlZmVyZW5jZXNDb25maXJtRWRpdDogJ1ZhbGlkZXIgbGVzIG1vZGlmaWNhdGlvbnMnLFxufTtcblxuLyoqXG4gKiBUb2tlbiBkJ2luamVjdGlvbiBwb3VyIHN1cmNoYXJnZXIgdG91dCBvdSBwYXJ0aWUgZGVzIGxhYmVscyBkZSBqcXVlcnktdGFibGUuXG4gKiBBY2NlcHRlIHVuIGBQYXJ0aWFsPEpxdEkxOG4+YCDigJQgc2V1bGVzIGxlcyBjbMOpcyBmb3VybmllcyDDqWNyYXNlbnQgbGVzIGTDqWZhdXRzLlxuICovXG5leHBvcnQgY29uc3QgSlFUX0kxOE4gPSBuZXcgSW5qZWN0aW9uVG9rZW48UGFydGlhbDxKcXRJMThuPj4oJ0pRVF9JMThOJyk7XG4iXX0=
@@ -1,2 +1,14 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianF1ZXJ5LXRhYmxlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25ldGVtZS9qcXVlcnktdGFibGUvc3JjL2xpYi9qcXVlcnktdGFibGUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFQcm92aWRlciB9IGZyb20gJ0BvbmV0ZW1lL2pxdWVyeS1jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNsaWNlQ29uZmlnIH0gZnJvbSAnLi9jb21wb25lbnQvc2xpY2UtcGFuZWwvc2xpY2UtcGFuZWwubW9kZWwnO1xuZXhwb3J0IHsgU2xpY2VDb25maWcgfSBmcm9tICcuL2NvbXBvbmVudC9zbGljZS1wYW5lbC9zbGljZS1wYW5lbC5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVDb2x1bW5Qcm92aWRlcjxUID0gYW55PiB7XG4gIGtleTogc3RyaW5nO1xuICAvKiogTGliZWxsw6kgYWZmaWNow6kgZGFucyBsJ2VuLXTDqnRlIGRlIGNvbG9ubmUuIE9wdGlvbm5lbCBzaSBsYSBjb2xvbm5lIHV0aWxpc2UgdW4gdGVtcGxhdGUgY3VzdG9tLiAqL1xuICBoZWFkZXI/OiBzdHJpbmc7XG4gIGljb24/OiBzdHJpbmc7XG4gIHZhbHVlPzogRGF0YVByb3ZpZGVyPGFueT47XG4gIC8qKiBWYWxldXIgdXRpbGlzw6llIHBvdXIgbGUgdHJpIHNpIGRpZmbDqXJlbnRlIGRlIGB2YWx1ZWAuIFV0aWxlIHF1YW5kIGB2YWx1ZWAgcmV0b3VybmUgdW5lIGNoYcOubmUgZm9ybWF0w6llIChkYXRlLCBkdXLDqWUuLi4pLiAqL1xuICBzb3J0VmFsdWU/OiBEYXRhUHJvdmlkZXI8YW55PjtcbiAgc29ydGFibGU/OiBib29sZWFuO1xuICByZW1vdmFibGU/OiBib29sZWFuO1xuICBvcHRpb25hbD86IGJvb2xlYW47XG4gIHdpZHRoPzogc3RyaW5nO1xuICBncm91cGFibGU/OiBib29sZWFuO1xuICBzbGljZWFibGU/OiBib29sZWFuO1xuICAvKiogQ2hhcmdlbWVudCBkaWZmw6lyw6kgOiBsYSBwcsOpc2VuY2UgZGUgY2V0IG9iamV0IGFjdGl2ZSBsZSBtb2RlIGxhenkuICovXG4gIGxhenk/OiB7XG4gICAgLyoqIEZvbmN0aW9uIGFwcGVsw6llIHBvdXIgY2hhcmdlciBsZXMgdmFsZXVycyBkZSBsYSBjb2xvbm5lLiBSZXRvdXJuZSB1biB0YWJsZWF1IGRhbnMgbGUgbcOqbWUgb3JkcmUgcXVlIGxlcyBsaWduZXMuICovXG4gICAgZmV0Y2hGbjogKCkgPT4gT2JzZXJ2YWJsZTxhbnlbXT47XG4gIH07XG59XG5cbi8qKiBDb25maWd1cmF0aW9uIGRlIGxhIGJhcnJlIGRlIHJlY2hlcmNoZS4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVTZWFyY2hDb25maWcge1xuICBlbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqIFZhbGV1ciBpbml0aWFsZSBhdSBjaGFyZ2VtZW50LiAqL1xuICBpbml0aWFsUXVlcnk/OiBzdHJpbmc7XG59XG5cbi8qKiBDb25maWd1cmF0aW9uIGRlIGxhIHBhZ2luYXRpb24uICovXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlUGFnaW5hdGlvbkNvbmZpZyB7XG4gIGVuYWJsZWQ/OiBib29sZWFuO1xuICBwYWdlU2l6ZT86IG51bWJlcjtcbiAgcGFnZVNpemVPcHRpb25zPzogbnVtYmVyW107XG4gIC8qKiBPcHRpb25zIGRlIHRhaWxsZSBkZSBwYWdlIHNww6ljaWZpcXVlcyBhdSBtb2RlIEdyb3VwIGJ5LiBTaSBhYnNlbnQsIHV0aWxpc2UgYHBhZ2VTaXplT3B0aW9uc2AuICovXG4gIHBhZ2VTaXplT3B0aW9uc0dyb3VwQnk/OiBudW1iZXJbXTtcbn1cblxuLyoqIENvbmZpZ3VyYXRpb24gZHUgbWVudSBWaWV3IChDaGFtcHMgLyBHcm91cCBieSAvIFNsaWNlIGJ5KS4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVWaWV3Q29uZmlnIHtcbiAgLyoqIEFjdGl2ZSBsZSBib3V0b24gVmlldy4gUGFyIGTDqWZhdXQgOiBgZmFsc2VgLiAqL1xuICBlbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqIEF1dG9yaXNlIGxlIG1hc3F1YWdlL2FmZmljaGFnZSBkZXMgY29sb25uZXMgZGUgYmFzZSB2aWEgVmlldyA+IENoYW1wcy4gUGFyIGTDqWZhdXQgOiBgdHJ1ZWAuICovXG4gIGVuYWJsZUNvbHVtblJlbW92YWw/OiBib29sZWFuO1xuICAvKiogQWN0aXZlIGxlIGRyYWcgJiBkcm9wIHBvdXIgcsOpb3Jkb25uZXIgbGVzIGNvbG9ubmVzLiBQYXIgZMOpZmF1dCA6IGBmYWxzZWAuICovXG4gIGVuYWJsZUNvbHVtbkRyYWdEcm9wPzogYm9vbGVhbjtcbn1cblxuLyoqIExhYmVscyBkJ8OpdGF0IGR1IHRhYmxlYXUuICovXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlTGFiZWxzQ29uZmlnIHtcbiAgLyoqIEFmZmljaMOpIHF1YW5kIGxlIHRhYmxlYXUgZXN0IHZpZGUuIFBhciBkw6lmYXV0IDogYCdBdWN1bmUgZG9ubsOpZSdgLiAqL1xuICBlbXB0eT86IHN0cmluZztcbiAgLyoqIEFmZmljaMOpIHBlbmRhbnQgbGUgY2hhcmdlbWVudC4gUGFyIGTDqWZhdXQgOiBgJ0NoYXJnZW1lbnQgZGVzIGRvbm7DqWVzLi4uJ2AuICovXG4gIGxvYWRpbmc/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVQcm92aWRlcjxUID0gYW55PiB7XG4gIGNvbHVtbnM/OiBUYWJsZUNvbHVtblByb3ZpZGVyPFQ+W107XG4gIHRpdGxlPzogc3RyaW5nO1xuICBzbGljZXM/OiBTbGljZUNvbmZpZzxUPltdO1xuICAvKiogQWZmaWNoZSBsZSBib3V0b24gdG9nZ2xlIHBvdXIgcmVwbGllci9kw6lwbGllciBsZSBwYW5uZWF1IGRlIHNsaWNlcy4gUGFyIGTDqWZhdXQgOiBgdHJ1ZWAuICovXG4gIGVuYWJsZVNsaWNlVG9nZ2xlPzogYm9vbGVhbjtcbiAgc2VhcmNoPzogVGFibGVTZWFyY2hDb25maWc7XG4gIHBhZ2luYXRpb24/OiBUYWJsZVBhZ2luYXRpb25Db25maWc7XG4gIHZpZXc/OiBUYWJsZVZpZXdDb25maWc7XG4gIGxhYmVscz86IFRhYmxlTGFiZWxzQ29uZmlnO1xuICAvKiogVHJpIGluaXRpYWwgYXBwbGlxdcOpIGF1IGNoYXJnZW1lbnQuIE4nZXN0IHBhcyDDqWNyYXPDqSBwYXIgbGVzIGNoYW5nZW1lbnRzIGRlIGRvbm7DqWVzLiAqL1xuICBkZWZhdWx0U29ydD86IHsgYWN0aXZlOiBzdHJpbmc7IGRpcmVjdGlvbjogJ2FzYycgfCAnZGVzYycgfTtcbiAgcm93Q2xhc3M/OiAocm93OiBULCBpbmRleDogbnVtYmVyKSA9PiBzdHJpbmcgfCBzdHJpbmdbXSB8IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+O1xuICBvblJvd1NlbGVjdGVkPzogKHJvdzogVCwgZXZlbnQ6IE1vdXNlRXZlbnQgfCBudWxsKSA9PiB2b2lkO1xufVxuXG5cbiJdfQ==
1
+ /**
2
+ * Raccourci pour déclarer une colonne de base.
3
+ *
4
+ * ```ts
5
+ * columns: [
6
+ * col('name', 'Nom'),
7
+ * col('status', 'Statut', { sortable: false }),
8
+ * ]
9
+ * ```
10
+ */
11
+ export function col(key, header, overrides) {
12
+ return { key, header, ...overrides };
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianF1ZXJ5LXRhYmxlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25ldGVtZS9qcXVlcnktdGFibGUvc3JjL2xpYi9qcXVlcnktdGFibGUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUVBOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sVUFBVSxHQUFHLENBQ2pCLEdBQVcsRUFDWCxNQUFjLEVBQ2QsU0FBMkM7SUFFM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxTQUFTLEVBQUUsQ0FBQztBQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YVByb3ZpZGVyIH0gZnJvbSAnQG9uZXRlbWUvanF1ZXJ5LWNvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2xpY2VDb25maWcgfSBmcm9tICcuL2NvbXBvbmVudC9zbGljZS1wYW5lbC9zbGljZS1wYW5lbC5tb2RlbCc7XG5leHBvcnQgeyBTbGljZUNvbmZpZyB9IGZyb20gJy4vY29tcG9uZW50L3NsaWNlLXBhbmVsL3NsaWNlLXBhbmVsLm1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUNvbHVtblByb3ZpZGVyPFQgPSBhbnk+IHtcbiAga2V5OiBzdHJpbmc7XG4gIC8qKiBMaWJlbGzDqSBhZmZpY2jDqSBkYW5zIGwnZW4tdMOqdGUgZGUgY29sb25uZS4gT3B0aW9ubmVsIHNpIGxhIGNvbG9ubmUgdXRpbGlzZSB1biB0ZW1wbGF0ZSBjdXN0b20uICovXG4gIGhlYWRlcj86IHN0cmluZztcbiAgaWNvbj86IHN0cmluZztcbiAgdmFsdWU/OiBEYXRhUHJvdmlkZXI8YW55PjtcbiAgLyoqIFZhbGV1ciB1dGlsaXPDqWUgcG91ciBsZSB0cmkgc2kgZGlmZsOpcmVudGUgZGUgYHZhbHVlYC4gVXRpbGUgcXVhbmQgYHZhbHVlYCByZXRvdXJuZSB1bmUgY2hhw65uZSBmb3JtYXTDqWUgKGRhdGUsIGR1csOpZS4uLikuICovXG4gIHNvcnRWYWx1ZT86IERhdGFQcm92aWRlcjxhbnk+O1xuICAvKipcbiAgICogVmFsZXVyIHV0aWxpc8OpZSBwb3VyIGxhIHJlY2hlcmNoZSBwbGVpbi10ZXh0ZS5cbiAgICogw4AgZMOpZmluaXIgcXVhbmQgbGEgY29sb25uZSB1dGlsaXNlIHVuIGBqcXQtY2VsbC1kZWZgIHRlbXBsYXRlIHBlcnNvbm5hbGlzw6kgZXQgcXUnYXVjdW4gYHZhbHVlYCBwcm92aWRlciBuJ2VzdCBkw6ljbGFyw6kuXG4gICAqIFNpIGFic2VudCwgbGEgcmVjaGVyY2hlIHV0aWxpc2UgYHZhbHVlYCBlbiBwcmlvcml0w6ksIHB1aXMgbGEgdmFsZXVyIGJydXRlIGRlIGxhIGxpZ25lLlxuICAgKiBFeGVtcGxlIDogYHNlYXJjaFZhbHVlOiAocm93KSA9PiBkdXJhdGlvblBpcGUudHJhbnNmb3JtKCh0b2RheSAtIHJvdy5zdGFydCkgLyAxMDAwKWBcbiAgICovXG4gIHNlYXJjaFZhbHVlPzogRGF0YVByb3ZpZGVyPHN0cmluZz47XG4gIHNvcnRhYmxlPzogYm9vbGVhbjtcbiAgcmVtb3ZhYmxlPzogYm9vbGVhbjtcbiAgb3B0aW9uYWw/OiBib29sZWFuO1xuICB3aWR0aD86IHN0cmluZztcbiAgZ3JvdXBhYmxlPzogYm9vbGVhbjtcbiAgc2xpY2VhYmxlPzogYm9vbGVhbjtcbiAgLyoqIENoYXJnZW1lbnQgZGlmZsOpcsOpIDogbGEgcHLDqXNlbmNlIGRlIGNldCBvYmpldCBhY3RpdmUgbGUgbW9kZSBsYXp5LiAqL1xuICBsYXp5Pzoge1xuICAgIC8qKiBGb25jdGlvbiBhcHBlbMOpZSBwb3VyIGNoYXJnZXIgbGVzIHZhbGV1cnMgZGUgbGEgY29sb25uZS4gUmV0b3VybmUgdW4gdGFibGVhdSBkYW5zIGxlIG3Dqm1lIG9yZHJlIHF1ZSBsZXMgbGlnbmVzLiAqL1xuICAgIGZldGNoRm46ICgpID0+IE9ic2VydmFibGU8YW55W10+O1xuICB9O1xufVxuXG4vKiogQ29uZmlndXJhdGlvbiBkZSBsYSBiYXJyZSBkZSByZWNoZXJjaGUuICovXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlU2VhcmNoQ29uZmlnIHtcbiAgZW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKiBWYWxldXIgaW5pdGlhbGUgYXUgY2hhcmdlbWVudC4gKi9cbiAgaW5pdGlhbFF1ZXJ5Pzogc3RyaW5nO1xuICAvKiogUmVzdHJlaW50IGxhIHJlY2hlcmNoZSB0ZXh0ZSBhdXggY29sb25uZXMgZG9udCBsYSBga2V5YCBlc3QgZGFucyBjZSB0YWJsZWF1LiBTaSBhYnNlbnQsIHRvdXRlcyBsZXMgY29sb25uZXMgc29udCBjaGVyY2jDqWVzLiAqL1xuICBzZWFyY2hDb2x1bW5zPzogc3RyaW5nW107XG59XG5cbi8qKiBDb25maWd1cmF0aW9uIGRlIGxhIHBhZ2luYXRpb24uICovXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlUGFnaW5hdGlvbkNvbmZpZyB7XG4gIGVuYWJsZWQ/OiBib29sZWFuO1xuICBwYWdlU2l6ZT86IG51bWJlcjtcbiAgcGFnZVNpemVPcHRpb25zPzogbnVtYmVyW107XG4gIC8qKiBPcHRpb25zIGRlIHRhaWxsZSBkZSBwYWdlIHNww6ljaWZpcXVlcyBhdSBtb2RlIEdyb3VwIGJ5LiBTaSBhYnNlbnQsIHV0aWxpc2UgYHBhZ2VTaXplT3B0aW9uc2AuICovXG4gIHBhZ2VTaXplT3B0aW9uc0dyb3VwQnk/OiBudW1iZXJbXTtcbn1cblxuLyoqIENvbmZpZ3VyYXRpb24gZHUgbWVudSBWaWV3IChDaGFtcHMgLyBHcm91cCBieSAvIFNsaWNlIGJ5KS4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVWaWV3Q29uZmlnIHtcbiAgLyoqIEFjdGl2ZSBsZSBib3V0b24gVmlldy4gUGFyIGTDqWZhdXQgOiBgZmFsc2VgLiAqL1xuICBlbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqIEF1dG9yaXNlIGxlIG1hc3F1YWdlL2FmZmljaGFnZSBkZXMgY29sb25uZXMgZGUgYmFzZSB2aWEgVmlldyA+IENoYW1wcy4gUGFyIGTDqWZhdXQgOiBgdHJ1ZWAuICovXG4gIGVuYWJsZUNvbHVtblJlbW92YWw/OiBib29sZWFuO1xuICAvKiogQWN0aXZlIGxlIGRyYWcgJiBkcm9wIHBvdXIgcsOpb3Jkb25uZXIgbGVzIGNvbG9ubmVzLiBQYXIgZMOpZmF1dCA6IGBmYWxzZWAuICovXG4gIGVuYWJsZUNvbHVtbkRyYWdEcm9wPzogYm9vbGVhbjtcbn1cblxuLyoqIExhYmVscyBkJ8OpdGF0IGR1IHRhYmxlYXUuICovXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlTGFiZWxzQ29uZmlnIHtcbiAgLyoqIEFmZmljaMOpIHF1YW5kIGxlIHRhYmxlYXUgZXN0IHZpZGUuIFBhciBkw6lmYXV0IDogYCdBdWN1bmUgZG9ubsOpZSdgLiAqL1xuICBlbXB0eT86IHN0cmluZztcbiAgLyoqIEFmZmljaMOpIHBlbmRhbnQgbGUgY2hhcmdlbWVudC4gUGFyIGTDqWZhdXQgOiBgJ0NoYXJnZW1lbnQgZGVzIGRvbm7DqWVzLi4uJ2AuICovXG4gIGxvYWRpbmc/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmFjY291cmNpIHBvdXIgZMOpY2xhcmVyIHVuZSBjb2xvbm5lIGRlIGJhc2UuXG4gKlxuICogYGBgdHNcbiAqIGNvbHVtbnM6IFtcbiAqICAgY29sKCduYW1lJywgJ05vbScpLFxuICogICBjb2woJ3N0YXR1cycsICdTdGF0dXQnLCB7IHNvcnRhYmxlOiBmYWxzZSB9KSxcbiAqIF1cbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gY29sPFQgPSBhbnk+KFxuICBrZXk6IHN0cmluZyxcbiAgaGVhZGVyOiBzdHJpbmcsXG4gIG92ZXJyaWRlcz86IFBhcnRpYWw8VGFibGVDb2x1bW5Qcm92aWRlcjxUPj4sXG4pOiBUYWJsZUNvbHVtblByb3ZpZGVyPFQ+IHtcbiAgcmV0dXJuIHsga2V5LCBoZWFkZXIsIC4uLm92ZXJyaWRlcyB9O1xufVxuXG4vKiogQ29uZmlndXJhdGlvbiBkZSBs4oCZZXhwb3J0IENTViBkw6ljbGVuY2jDqSBkZXB1aXMgbGEgdG9vbGJhci4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVFeHBvcnRDb25maWc8VCA9IGFueT4ge1xuICAvKiogQWZmaWNoZSBsZSBib3V0b24gRXhwb3J0IGRhbnMgbGEgdG9vbGJhci4gUGFyIGTDqWZhdXTCoDogYGZhbHNlYC4gKi9cbiAgZW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKiBOb20gZHUgZmljaGllciBnw6luw6lyw6kuIFBhciBkw6lmYXV0wqA6IGAnZXhwb3J0LmNzdidgLiAqL1xuICBmaWxlbmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRyYW5zZm9ybWUgY2hhcXVlIGxpZ25lIGF2YW50IGV4cG9ydC5cbiAgICogU2kgYWJzZW50LCBsZXMgdmFsZXVycyBhZmZpY2jDqWVzIChhcHLDqHMgYG5vcm1hbGl6ZUNlbGxWYWx1ZWApIHNvbnQgdXRpbGlzw6llcy5cbiAgICogU2V1bGVzIGxlcyBjb2xvbm5lcyB2aXNpYmxlcyBzb250IGV4cG9ydMOpZXMuXG4gICAqL1xuICB0cmFuc2Zvcm0/OiAocm93OiBUKSA9PiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufVxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGRlIGxhIGZvbmN0aW9ubmFsaXTDqSBQcsOpZsOpcmVuY2VzLlxuICpcbiAqIEFqb3V0ZSB1biBtZW51IFwiUHLDqWbDqXJlbmNlc1wiIGRhbnMgVmlldyBxdWkgcGVybWV0IDpcbiAqIC0gTGUgKiptb2RlIMOpZGl0aW9uKiogKHJlZGltZW5zaW9ubmVyIC8gcsOpb3Jkb25uZXIgbGVzIGNvbG9ubmVzIMOgIGxhIHNvdXJpcylcbiAqIC0gTCcqKmVucmVnaXN0cmVtZW50KiogZGUgbGEgY29uZmlndXJhdGlvbiBjb3VyYW50ZSBkYW5zIGxlIGxvY2FsU3RvcmFnZVxuICogLSBMJyoqZWZmYWNlbWVudCoqIGRlIGxhIGNvbmZpZ3VyYXRpb24gc2F1dmVnYXJkw6llXG4gKlxuICogQ2hhcXVlIHRhYmxlYXUgZXN0IGlkZW50aWZpw6kgcGFyIGB0YWJsZUlkYCAoY2zDqSBsb2NhbFN0b3JhZ2UgdW5pcXVlKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUYWJsZVByZWZlcmVuY2VzQ29uZmlnIHtcbiAgLyoqIEFjdGl2ZSBsYSBmb25jdGlvbm5hbGl0w6kuIFBhciBkw6lmYXV0IDogYGZhbHNlYC4gKi9cbiAgZW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJZGVudGlmaWFudCB1bmlxdWUgZHUgdGFibGVhdSwgdXRpbGlzw6kgY29tbWUgY2zDqSBsb2NhbFN0b3JhZ2UuXG4gICAqIERvaXQgw6p0cmUgc3RhYmxlIGVudHJlIGxlcyByZWNoYXJnZW1lbnRzIGRlIHBhZ2UuXG4gICAqIEV4ZW1wbGUgOiBgJ3VzZXItdGFibGUnYCwgYCdpbnZvaWNlLWxpc3QnYC5cbiAgICovXG4gIHRhYmxlSWQ6IHN0cmluZztcbn1cblxuLyoqIFNuYXBzaG90IGRlIGNvbmZpZ3VyYXRpb24gcGVyc2lzdMOpIGRhbnMgbGUgbG9jYWxTdG9yYWdlLiAqL1xuZXhwb3J0IGludGVyZmFjZSBTYXZlZFRhYmxlQ29uZmlnIHtcbiAgLyoqIFZhbGV1ciBkZSBsYSBzZWFyY2hiYXIuICovXG4gIHNlYXJjaD86IHN0cmluZztcbiAgLyoqIENsw6kgZGUgbGEgY29sb25uZSB1dGlsaXPDqWUgcG91ciBsZSBncm91cCBieS4gYG51bGxgID0gYXVjdW4uICovXG4gIGdyb3VwQnk/OiBzdHJpbmcgfCBudWxsO1xuICAvKiogT3JkcmUgZGVzIGNsw6lzIGRlIGNvbG9ubmVzIChwb3NpdGlvbikuICovXG4gIGNvbHVtbk9yZGVyPzogc3RyaW5nW107XG4gIC8qKiBDbMOpcyBkZXMgY29sb25uZXMgdmlzaWJsZXMuICovXG4gIHZpc2libGVDb2x1bW5zPzogc3RyaW5nW107XG4gIC8qKiBMYXJnZXVycyBkZSBjb2xvbm5lcyBlbiBwaXhlbHMsIGluZGV4w6llcyBwYXIgY2zDqS4gKi9cbiAgY29sdW1uV2lkdGhzPzogUmVjb3JkPHN0cmluZywgbnVtYmVyPjtcbiAgLyoqIFBhbm5lYXUgc2xpY2UgcmVwbGnDqSBvdSBub24uICovXG4gIHNsaWNlUGFuZWxDb2xsYXBzZWQ/OiBib29sZWFuO1xuICAvKiogQ2zDqXMgZGVzIHNsaWNlcyBzdGF0aXF1ZXMgY2FjaMOpZXMgcGFyIGwndXRpbGlzYXRldXIgKHZpYSB0b2dnbGUgZGFucyBsZSBtZW51IFZpZXcpLiAqL1xuICBoaWRkZW5TbGljZUtleXM/OiBzdHJpbmdbXTtcbiAgLyoqIENsw6lzIGRlcyBjb2xvbm5lcyB1dGlsaXPDqWVzIGNvbW1lIHNsaWNlcyBkeW5hbWlxdWVzLiAqL1xuICBkeW5hbWljU2xpY2VLZXlzPzogc3RyaW5nW107XG4gIC8qKiBGaWx0cmVzIGFjdGlmcyBkdSBzbGljZSBwYW5lbCA6IG1hcCBzbGljZUluZGV4IOKGkiB0YWJsZWF1IGRlIGNsw6lzIGFjdGl2ZXMuICovXG4gIHNsaWNlRmlsdGVycz86IFJlY29yZDxudW1iZXIsIHN0cmluZ1tdPjtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVQcm92aWRlcjxUID0gYW55PiB7XG4gIGNvbHVtbnM/OiBUYWJsZUNvbHVtblByb3ZpZGVyPFQ+W107XG4gIHRpdGxlPzogc3RyaW5nO1xuICBzbGljZXM/OiBTbGljZUNvbmZpZzxUPltdO1xuICAvKiogQWZmaWNoZSBsZSBib3V0b24gdG9nZ2xlIHBvdXIgcmVwbGllci9kw6lwbGllciBsZSBwYW5uZWF1IGRlIHNsaWNlcy4gUGFyIGTDqWZhdXQgOiBgdHJ1ZWAuICovXG4gIGVuYWJsZVNsaWNlVG9nZ2xlPzogYm9vbGVhbjtcbiAgc2VhcmNoPzogVGFibGVTZWFyY2hDb25maWc7XG4gIHBhZ2luYXRpb24/OiBUYWJsZVBhZ2luYXRpb25Db25maWc7XG4gIHZpZXc/OiBUYWJsZVZpZXdDb25maWc7XG4gIGxhYmVscz86IFRhYmxlTGFiZWxzQ29uZmlnO1xuICAvKiogVHJpIGluaXRpYWwgYXBwbGlxdcOpIGF1IGNoYXJnZW1lbnQuIE4nZXN0IHBhcyDDqWNyYXPDqSBwYXIgbGVzIGNoYW5nZW1lbnRzIGRlIGRvbm7DqWVzLiAqL1xuICBkZWZhdWx0U29ydD86IHsgYWN0aXZlOiBzdHJpbmc7IGRpcmVjdGlvbjogJ2FzYycgfCAnZGVzYycgfTtcbiAgcm93Q2xhc3M/OiAocm93OiBULCBpbmRleDogbnVtYmVyKSA9PiBzdHJpbmcgfCBzdHJpbmdbXSB8IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+O1xuICAvKiogQ2FsbGJhY2sgZMOpY2xlbmNow6kgcXVhbmQgbCd1dGlsaXNhdGV1ciBjbGlxdWUgc3VyIHVuZSBsaWduZS4gQWx0ZXJuYXRpdmUgYXUgYChyb3dTZWxlY3RlZClgIE91dHB1dC4gKi9cbiAgb25Sb3dTZWxlY3RlZD86IChyb3c6IFQsIGV2ZW50OiBNb3VzZUV2ZW50IHwgbnVsbCkgPT4gdm9pZDtcbiAgLyoqIENvbmZpZ3VyYXRpb24gZGUgbCdleHBvcnQgQ1NWLiAqL1xuICBleHBvcnQ/OiBUYWJsZUV4cG9ydENvbmZpZzxUPjtcbiAgLyoqIENvbmZpZ3VyYXRpb24gZGUgbGEgZm9uY3Rpb25uYWxpdMOpIFByw6lmw6lyZW5jZXMgKMOpZGl0aW9uICsgcGVyc2lzdGFuY2UgbG9jYWxTdG9yYWdlKS4gKi9cbiAgcHJlZmVyZW5jZXM/OiBUYWJsZVByZWZlcmVuY2VzQ29uZmlnO1xufVxuXG5cbiJdfQ==
@@ -2,8 +2,9 @@
2
2
  * Public API Surface of jquery-table
3
3
  */
4
4
  export * from './lib/jquery-table.model';
5
+ export * from './lib/jqt-i18n.token';
5
6
  export * from './lib/component/table.component';
6
7
  export * from './lib/component/slice-panel/slice-panel.model';
7
8
  export * from './lib/component/slice-panel/slice-panel.component';
8
9
  export * from './lib/directive/jqt-cell-def.directive';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL29uZXRlbWUvanF1ZXJ5LXRhYmxlL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHdDQUF3QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBqcXVlcnktdGFibGVcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9qcXVlcnktdGFibGUubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50L3RhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnQvc2xpY2UtcGFuZWwvc2xpY2UtcGFuZWwubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50L3NsaWNlLXBhbmVsL3NsaWNlLXBhbmVsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmUvanF0LWNlbGwtZGVmLmRpcmVjdGl2ZSc7XG4iXX0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL29uZXRlbWUvanF1ZXJ5LXRhYmxlL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsd0NBQXdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGpxdWVyeS10YWJsZVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2pxdWVyeS10YWJsZS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9qcXQtaTE4bi50b2tlbic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnQvdGFibGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudC9zbGljZS1wYW5lbC9zbGljZS1wYW5lbC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnQvc2xpY2UtcGFuZWwvc2xpY2UtcGFuZWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZS9qcXQtY2VsbC1kZWYuZGlyZWN0aXZlJztcbiJdfQ==