@provoly/dashboard 1.3.7 → 1.3.9

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 (201) hide show
  1. package/admin/components/admin-classes/admin-classes-view/admin-attributes-form/admin-attributes-form.component.d.ts +5 -2
  2. package/admin/components/admin-fields/admin-fields-form/admin-fields-form.component.d.ts +47 -18
  3. package/admin/components/admin-fields/admin-fields-select/admin-fields-select.component.d.ts +6 -2
  4. package/admin/components/admin-fields/admin-fields.component.d.ts +4 -1
  5. package/admin/components/admin-fields/store/admin-fields.model.d.ts +1 -1
  6. package/admin/components/admin-fields/store/fields.actions.d.ts +19 -12
  7. package/admin/components/admin-fields/store/fields.effects.d.ts +16 -3
  8. package/admin/i18n/en.translations.d.ts +33 -14
  9. package/admin/i18n/fr.translations.d.ts +33 -14
  10. package/components/checkbox/checkbox.component.d.ts +4 -2
  11. package/components/data-format/data-format.pipe.d.ts +11 -1
  12. package/components/paginator/index.d.ts +5 -0
  13. package/components/paginator/paginator.component.d.ts +19 -0
  14. package/components/paginator/paginator.module.d.ts +10 -0
  15. package/components/paginator/public-api.d.ts +3 -0
  16. package/components/paginator/style/_o-pry-paginator.scss +11 -0
  17. package/components/paginator/style/css.component.d.ts +5 -0
  18. package/dataset/components/dataset-detail/dataset-detail.component.d.ts +5 -8
  19. package/dataset/dataset.module.d.ts +1 -1
  20. package/dataset/i18n/en.translations.d.ts +0 -12
  21. package/dataset/i18n/fr.translations.d.ts +0 -12
  22. package/esm2022/admin/components/admin-abac-rules/components/attribute-condition/attribute-condition.component.mjs +4 -6
  23. package/esm2022/admin/components/admin-classes/admin-classes-customize/symbol/admin-classes-customize-symbol.component.mjs +1 -1
  24. package/esm2022/admin/components/admin-classes/admin-classes-customize/tooltip/admin-classes-customize-tooltip.component.mjs +1 -1
  25. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-form/admin-attributes-form.component.mjs +10 -12
  26. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-classes-view.component.mjs +6 -5
  27. package/esm2022/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.mjs +2 -2
  28. package/esm2022/admin/components/admin-fields/admin-fields-form/admin-fields-form.component.mjs +142 -63
  29. package/esm2022/admin/components/admin-fields/admin-fields-select/admin-fields-select.component.mjs +7 -8
  30. package/esm2022/admin/components/admin-fields/admin-fields.component.mjs +15 -11
  31. package/esm2022/admin/components/admin-fields/store/admin-fields.model.mjs +1 -1
  32. package/esm2022/admin/components/admin-fields/store/fields.actions.mjs +6 -5
  33. package/esm2022/admin/components/admin-fields/store/fields.effects.mjs +12 -6
  34. package/esm2022/admin/i18n/en.translations.mjs +34 -15
  35. package/esm2022/admin/i18n/fr.translations.mjs +34 -15
  36. package/esm2022/components/checkbox/checkbox.component.mjs +15 -7
  37. package/esm2022/components/data-format/data-format.pipe.mjs +88 -7
  38. package/esm2022/components/paginator/paginator.component.mjs +51 -0
  39. package/esm2022/components/paginator/paginator.module.mjs +20 -0
  40. package/esm2022/components/paginator/provoly-dashboard-components-paginator.mjs +5 -0
  41. package/esm2022/components/paginator/public-api.mjs +4 -0
  42. package/esm2022/components/paginator/style/css.component.mjs +11 -0
  43. package/esm2022/dataset/components/dataset-detail/dataset-detail.component.mjs +16 -26
  44. package/esm2022/dataset/dataset.module.mjs +2 -5
  45. package/esm2022/dataset/i18n/en.translations.mjs +1 -13
  46. package/esm2022/dataset/i18n/fr.translations.mjs +2 -14
  47. package/esm2022/import/components/form/import-form.component.mjs +174 -0
  48. package/esm2022/import/components/list/import-list.component.mjs +73 -0
  49. package/esm2022/import/components/version-modal/version-modal.component.mjs +26 -0
  50. package/esm2022/import/i18n/en.translations.mjs +16 -2
  51. package/esm2022/import/i18n/fr.translations.mjs +16 -2
  52. package/esm2022/import/import-routing.module.mjs +3 -3
  53. package/esm2022/import/import.module.mjs +25 -10
  54. package/esm2022/import/public-api.mjs +4 -2
  55. package/esm2022/import/style/css.component.mjs +2 -2
  56. package/esm2022/lib/core/components/select/select.component.mjs +3 -3
  57. package/esm2022/lib/core/components/share/legacy-share/share.component.mjs +8 -8
  58. package/esm2022/lib/core/components/status-modal/status-modal.component.mjs +48 -0
  59. package/esm2022/lib/core/components/{modal-status/modal-status.module.mjs → status-modal/status-modal.module.mjs} +9 -9
  60. package/esm2022/lib/core/core.module.mjs +5 -5
  61. package/esm2022/lib/core/i18n/en.translations.mjs +39 -6
  62. package/esm2022/lib/core/i18n/fr.translations.mjs +41 -6
  63. package/esm2022/lib/core/model/admin-api.model.mjs +5 -69
  64. package/esm2022/lib/core/model/widget-analytic-manifest.interface.mjs +1 -1
  65. package/esm2022/lib/core/model/widget-table-manifest.interface.mjs +1 -1
  66. package/esm2022/lib/core/public-api.mjs +3 -3
  67. package/esm2022/lib/core/store/class/class.interface.mjs +1 -1
  68. package/esm2022/lib/core/store/class/class.selectors.mjs +2 -2
  69. package/esm2022/lib/core/store/data-source/data-source.actions.mjs +3 -3
  70. package/esm2022/lib/core/store/data-source/data-source.effects.mjs +7 -4
  71. package/esm2022/lib/core/store/data-source/data-source.model.mjs +1 -1
  72. package/esm2022/lib/core/store/data-source/data-source.reducer.mjs +5 -3
  73. package/esm2022/lib/core/store/data-source/data-source.selectors.mjs +3 -11
  74. package/esm2022/lib/core/store/data-source/data-source.service.mjs +23 -5
  75. package/esm2022/lib/core/store/field/field.interface.mjs +1 -3
  76. package/esm2022/lib/core/store/field/field.service.mjs +7 -2
  77. package/esm2022/lib/dashboard/components/context-menu/object-edition/object-edition.component.mjs +3 -3
  78. package/esm2022/lib/dashboard/components/widgets/datasource-selector/datasource-card/datasource-card.component.mjs +3 -11
  79. package/esm2022/lib/dashboard/components/widgets/datasource-selector/datasource-list/datasource-list.component.mjs +2 -2
  80. package/esm2022/lib/dashboard/item-utils.mjs +5 -5
  81. package/esm2022/lib/dashboard/store/dashboard.actions.mjs +1 -4
  82. package/esm2022/lib/dashboard/store/dashboard.effects.mjs +1 -19
  83. package/esm2022/lib/dashboard/store/dashboard.reducers.mjs +1 -26
  84. package/esm2022/lib/dashboard/tooltip/components/default/default.tooltip.component.mjs +3 -3
  85. package/esm2022/lib/dashboard/tooltip/tooltip-factory.service.mjs +3 -2
  86. package/esm2022/search/search-mono-class/components/search-condition/search-condition.component.mjs +4 -4
  87. package/esm2022/search/search-mono-class/components/search-order/search-order.component.mjs +3 -3
  88. package/esm2022/search/search-mono-class/components/search-select-attribute/search-select-attribute.component.mjs +4 -5
  89. package/esm2022/search/search-mono-class/store/search-mono-class.effects.mjs +2 -2
  90. package/esm2022/search/search-mono-class/store/search-mono-class.service.mjs +5 -6
  91. package/esm2022/search/search-multi-class/store/search-multi-class.service.mjs +4 -4
  92. package/esm2022/toolbox/components/filter-settings/filter-settings.component.mjs +3 -3
  93. package/esm2022/toolbox/components/save-view/save-view.component.mjs +3 -3
  94. package/esm2022/tooltips/attribute/attribute-tooltip.component.mjs +17 -19
  95. package/esm2022/tooltips/attribute/attribute-tooltip.module.mjs +5 -4
  96. package/esm2022/widgets/widget-aggregated-chart/component/widget-aggregated-chart.component.mjs +54 -37
  97. package/esm2022/widgets/widget-analytic/component/widget-analytic.component.mjs +4 -16
  98. package/esm2022/widgets/widget-chart/component/widget-chart.component.mjs +9 -9
  99. package/esm2022/widgets/widget-detail/component/widget-detail.component.mjs +5 -5
  100. package/esm2022/widgets/widget-map/component/widget-map.component.mjs +30 -32
  101. package/esm2022/widgets/widget-map/pipe/widget-map-geometry-fields-for.pipe.mjs +2 -5
  102. package/esm2022/widgets/widget-map/utils/cql-utils.class.mjs +2 -2
  103. package/esm2022/widgets/widget-map/utils/widget-map.utils.mjs +6 -10
  104. package/esm2022/widgets/widget-table/component/widget-table.component.mjs +18 -14
  105. package/esm2022/widgets/widget-table/expand-value/expand-value.component.mjs +9 -5
  106. package/esm2022/widgets/widget-table/get-value/get-value.pipe.mjs +2 -2
  107. package/esm2022/widgets/widget-table/public-api.mjs +1 -2
  108. package/esm2022/widgets/widget-table/widget-table.module.mjs +12 -7
  109. package/esm2022/widgets/widget-tile/component/widget-tile.component.mjs +10 -15
  110. package/esm2022/widgets/widget-tile/widget-tile.module.mjs +8 -4
  111. package/esm2022/widgets/widget-vega/component/widget-vega.component.mjs +2 -2
  112. package/fesm2022/provoly-dashboard-admin.mjs +249 -126
  113. package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
  114. package/fesm2022/provoly-dashboard-components-checkbox.mjs +14 -6
  115. package/fesm2022/provoly-dashboard-components-checkbox.mjs.map +1 -1
  116. package/fesm2022/provoly-dashboard-components-data-format.mjs +88 -7
  117. package/fesm2022/provoly-dashboard-components-data-format.mjs.map +1 -1
  118. package/fesm2022/provoly-dashboard-components-paginator.mjs +82 -0
  119. package/fesm2022/provoly-dashboard-components-paginator.mjs.map +1 -0
  120. package/fesm2022/provoly-dashboard-dataset.mjs +21 -58
  121. package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
  122. package/fesm2022/provoly-dashboard-import.mjs +249 -116
  123. package/fesm2022/provoly-dashboard-import.mjs.map +1 -1
  124. package/fesm2022/provoly-dashboard-search.mjs +15 -16
  125. package/fesm2022/provoly-dashboard-search.mjs.map +1 -1
  126. package/fesm2022/provoly-dashboard-toolbox.mjs +4 -4
  127. package/fesm2022/provoly-dashboard-toolbox.mjs.map +1 -1
  128. package/fesm2022/provoly-dashboard-tooltips-attribute.mjs +20 -21
  129. package/fesm2022/provoly-dashboard-tooltips-attribute.mjs.map +1 -1
  130. package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs +53 -36
  131. package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs.map +1 -1
  132. package/fesm2022/provoly-dashboard-widgets-widget-analytic.mjs +3 -15
  133. package/fesm2022/provoly-dashboard-widgets-widget-analytic.mjs.map +1 -1
  134. package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs +9 -9
  135. package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs.map +1 -1
  136. package/fesm2022/provoly-dashboard-widgets-widget-detail.mjs +4 -4
  137. package/fesm2022/provoly-dashboard-widgets-widget-detail.mjs.map +1 -1
  138. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +36 -45
  139. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
  140. package/fesm2022/provoly-dashboard-widgets-widget-table.mjs +32 -38
  141. package/fesm2022/provoly-dashboard-widgets-widget-table.mjs.map +1 -1
  142. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs +16 -17
  143. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs.map +1 -1
  144. package/fesm2022/provoly-dashboard-widgets-widget-vega.mjs +1 -1
  145. package/fesm2022/provoly-dashboard-widgets-widget-vega.mjs.map +1 -1
  146. package/fesm2022/provoly-dashboard.mjs +286 -338
  147. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  148. package/import/components/{import.component.d.ts → form/import-form.component.d.ts} +8 -4
  149. package/import/components/list/import-list.component.d.ts +34 -0
  150. package/import/components/version-modal/version-modal.component.d.ts +13 -0
  151. package/import/i18n/en.translations.d.ts +14 -0
  152. package/import/i18n/fr.translations.d.ts +14 -0
  153. package/import/import.module.d.ts +13 -10
  154. package/import/public-api.d.ts +3 -1
  155. package/import/style/_o-import.scss +50 -6
  156. package/lib/core/components/share/legacy-share/share.component.d.ts +1 -1
  157. package/lib/core/components/{modal-status/modal-status.component.d.ts → status-modal/status-modal.component.d.ts} +10 -6
  158. package/lib/core/components/{modal-status/modal-status.module.d.ts → status-modal/status-modal.module.d.ts} +5 -5
  159. package/lib/core/core.module.d.ts +2 -2
  160. package/lib/core/i18n/en.translations.d.ts +33 -0
  161. package/lib/core/i18n/fr.translations.d.ts +35 -0
  162. package/lib/core/model/admin-api.model.d.ts +6 -8
  163. package/lib/core/model/widget-analytic-manifest.interface.d.ts +0 -3
  164. package/lib/core/model/widget-table-manifest.interface.d.ts +2 -0
  165. package/lib/core/public-api.d.ts +2 -2
  166. package/lib/core/store/class/class.interface.d.ts +2 -1
  167. package/lib/core/store/class/class.selectors.d.ts +10 -10
  168. package/lib/core/store/data-source/data-source.actions.d.ts +21 -1
  169. package/lib/core/store/data-source/data-source.effects.d.ts +11 -1
  170. package/lib/core/store/data-source/data-source.model.d.ts +3 -2
  171. package/lib/core/store/data-source/data-source.reducer.d.ts +1 -0
  172. package/lib/core/store/data-source/data-source.selectors.d.ts +3 -3
  173. package/lib/core/store/data-source/data-source.service.d.ts +11 -2
  174. package/lib/core/store/field/field.interface.d.ts +8 -4
  175. package/lib/core/store/field/field.service.d.ts +1 -0
  176. package/lib/dashboard/components/context-menu/object-edition/object-edition.component.d.ts +1 -1
  177. package/lib/dashboard/components/widgets/datasource-selector/datasource-card/datasource-card.component.d.ts +3 -7
  178. package/lib/dashboard/item-utils.d.ts +1 -1
  179. package/lib/dashboard/store/dashboard.actions.d.ts +0 -11
  180. package/lib/dashboard/store/dashboard.effects.d.ts +0 -3
  181. package/lib/dashboard/tooltip/tooltip-factory.service.d.ts +2 -1
  182. package/package.json +18 -12
  183. package/styles/base/_utils.scss +9 -1
  184. package/styles/components/_a-btn.scss +7 -0
  185. package/styles/components/_a-table.scss +2 -16
  186. package/styles/layout/_o-workspace.scss +1 -0
  187. package/tooltips/attribute/attribute-tooltip.component.d.ts +6 -6
  188. package/tooltips/attribute/attribute-tooltip.module.d.ts +2 -1
  189. package/widgets/widget-aggregated-chart/component/widget-aggregated-chart.component.d.ts +16 -3
  190. package/widgets/widget-analytic/component/widget-analytic.component.d.ts +2 -3
  191. package/widgets/widget-detail/component/widget-detail.component.d.ts +1 -4
  192. package/widgets/widget-table/component/widget-table.component.d.ts +1 -0
  193. package/widgets/widget-table/expand-value/expand-value.component.d.ts +4 -2
  194. package/widgets/widget-table/public-api.d.ts +0 -1
  195. package/widgets/widget-table/widget-table.module.d.ts +9 -8
  196. package/widgets/widget-tile/component/widget-tile.component.d.ts +1 -0
  197. package/widgets/widget-tile/widget-tile.module.d.ts +2 -1
  198. package/esm2022/import/components/import.component.mjs +0 -167
  199. package/esm2022/lib/core/components/modal-status/modal-status.component.mjs +0 -45
  200. package/esm2022/widgets/widget-table/expand-value/format-number.pipe.mjs +0 -24
  201. package/widgets/widget-table/expand-value/format-number.pipe.d.ts +0 -10
@@ -1,14 +1,34 @@
1
1
  import { Pipe } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ export const LOCALE = {
4
+ value: navigator.languages && navigator.languages.length ? navigator.languages[0] : navigator.language
5
+ };
3
6
  export class DataFormatPipe {
4
7
  constructor() { }
5
- transform(value, toLocale, suffix, ...args) {
8
+ transform(value, { isLocaleFormat, unit, decimalPrecision, format } = {}) {
6
9
  let result = value;
7
- if (toLocale) {
8
- result = toLocaleString(value);
10
+ if (value === null || value === undefined) {
11
+ return value;
12
+ }
13
+ if (typeof value === 'object') {
14
+ return JSON.stringify(value);
15
+ }
16
+ if (decimalPrecision) {
17
+ result = new Intl.NumberFormat(undefined, {
18
+ // @ts-ignore
19
+ roundingMode: 'floor',
20
+ minimumFractionDigits: decimalPrecision,
21
+ maximumFractionDigits: decimalPrecision
22
+ }).format(value);
9
23
  }
10
- if (suffix) {
11
- result = result + ' ' + suffix;
24
+ if (isLocaleFormat) {
25
+ result = toLocaleString(result);
26
+ }
27
+ if (unit) {
28
+ result = result + ' ' + unit;
29
+ }
30
+ if (format) {
31
+ result = new Intl.DateTimeFormat(LOCALE.value, dateFormatOptions.value[format]).format(getDate(value));
12
32
  }
13
33
  return result;
14
34
  }
@@ -19,14 +39,75 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
19
39
  type: Pipe,
20
40
  args: [{ name: 'dataFormat' }]
21
41
  }], ctorParameters: () => [] });
42
+ // number formatting methods
22
43
  const toLocaleString = (value) => {
23
44
  switch (typeof value) {
24
45
  case 'number':
25
- return new Intl.NumberFormat().format(value);
46
+ return new Intl.NumberFormat(LOCALE.value, { maximumFractionDigits: 20 }).format(value);
26
47
  case 'string':
27
48
  return value;
28
49
  default:
29
50
  return value;
30
51
  }
31
52
  };
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1mb3JtYXQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvZGF0YS1mb3JtYXQvZGF0YS1mb3JtYXQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFHcEQsTUFBTSxPQUFPLGNBQWM7SUFDekIsZ0JBQWUsQ0FBQztJQUVoQixTQUFTLENBQUMsS0FBVyxFQUFFLFFBQWtCLEVBQUUsTUFBZSxFQUFFLEdBQUcsSUFBVztRQUN4RSxJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNiLE1BQU0sR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsQ0FBQztRQUNELElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxNQUFNLEdBQUcsTUFBTSxHQUFHLEdBQUcsR0FBRyxNQUFNLENBQUM7UUFDakMsQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7OEdBYlUsY0FBYzs0R0FBZCxjQUFjOzsyRkFBZCxjQUFjO2tCQUQxQixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRTs7QUFpQjVCLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBdUIsRUFBRSxFQUFFO0lBQ2pELFFBQVEsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNyQixLQUFLLFFBQVE7WUFDWCxPQUFPLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQyxLQUFLLFFBQVE7WUFDWCxPQUFPLEtBQUssQ0FBQztRQUNmO1lBQ0UsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztBQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoeyBuYW1lOiAnZGF0YUZvcm1hdCcgfSlcbmV4cG9ydCBjbGFzcyBEYXRhRm9ybWF0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgdHJhbnNmb3JtKHZhbHVlPzogYW55LCB0b0xvY2FsZT86IGJvb2xlYW4sIHN1ZmZpeD86IHN0cmluZywgLi4uYXJnczogYW55W10pOiBhbnkge1xuICAgIGxldCByZXN1bHQgPSB2YWx1ZTtcbiAgICBpZiAodG9Mb2NhbGUpIHtcbiAgICAgIHJlc3VsdCA9IHRvTG9jYWxlU3RyaW5nKHZhbHVlKTtcbiAgICB9XG4gICAgaWYgKHN1ZmZpeCkge1xuICAgICAgcmVzdWx0ID0gcmVzdWx0ICsgJyAnICsgc3VmZml4O1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cblxuY29uc3QgdG9Mb2NhbGVTdHJpbmcgPSAodmFsdWU/OiBzdHJpbmcgfCBudW1iZXIpID0+IHtcbiAgc3dpdGNoICh0eXBlb2YgdmFsdWUpIHtcbiAgICBjYXNlICdudW1iZXInOlxuICAgICAgcmV0dXJuIG5ldyBJbnRsLk51bWJlckZvcm1hdCgpLmZvcm1hdCh2YWx1ZSk7XG4gICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHZhbHVlO1xuICB9XG59O1xuIl19
53
+ // date formatting methods
54
+ export const dateFormatOptions = {
55
+ value: {
56
+ DATETIME: {
57
+ year: 'numeric',
58
+ month: 'numeric',
59
+ day: 'numeric',
60
+ hour: 'numeric',
61
+ minute: 'numeric'
62
+ },
63
+ DATE: {
64
+ year: 'numeric',
65
+ month: '2-digit',
66
+ day: '2-digit'
67
+ },
68
+ MONTH_YEAR: {
69
+ month: '2-digit',
70
+ year: 'numeric'
71
+ },
72
+ DAY_MONTH: {
73
+ month: '2-digit',
74
+ day: '2-digit'
75
+ },
76
+ YEAR: {
77
+ year: 'numeric'
78
+ },
79
+ MONTH: {
80
+ month: '2-digit'
81
+ },
82
+ DAY: {
83
+ day: '2-digit'
84
+ }
85
+ }
86
+ };
87
+ const getDate = (value) => {
88
+ if (typeof value === 'string' || typeof value === 'number') {
89
+ return new Date(value);
90
+ }
91
+ return value;
92
+ };
93
+ export const toD3Format = (format) => {
94
+ switch (format) {
95
+ case 'DATETIME':
96
+ return '%Y-%m-%dT%H:%M:%S';
97
+ case 'DATE':
98
+ return '%Y-%m-%d';
99
+ case 'MONTH_YEAR':
100
+ return '%m-%Y';
101
+ case 'DAY_MONTH':
102
+ return '%d-%m';
103
+ case 'YEAR':
104
+ return '%Y';
105
+ case 'MONTH':
106
+ return '%m';
107
+ case 'DAY':
108
+ return '%d';
109
+ default:
110
+ return '%Y-%B-%dT%H:%M:%S';
111
+ }
112
+ };
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1mb3JtYXQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvZGF0YS1mb3JtYXQvZGF0YS1mb3JtYXQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFHcEQsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHO0lBQ3BCLEtBQUssRUFBRSxTQUFTLENBQUMsU0FBUyxJQUFJLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUTtDQUN2RyxDQUFDO0FBR0YsTUFBTSxPQUFPLGNBQWM7SUFDekIsZ0JBQWUsQ0FBQztJQUVoQixTQUFTLENBQ1AsS0FBVSxFQUNWLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEtBQXlDLEVBQUU7UUFFM0YsSUFBSSxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDMUMsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM5QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0IsQ0FBQztRQUVELElBQUksZ0JBQWdCLEVBQUUsQ0FBQztZQUNyQixNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRTtnQkFDeEMsYUFBYTtnQkFDYixZQUFZLEVBQUUsT0FBTztnQkFDckIscUJBQXFCLEVBQUUsZ0JBQWdCO2dCQUN2QyxxQkFBcUIsRUFBRSxnQkFBZ0I7YUFD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QU8sSUFBSSxDQUFDO1FBQ2QsS0FBSyxLQUFLO1lBQ1IsT0FBTyxJQUFJLENBQUM7UUFDZDtZQUNFLE9BQU8sbUJBQW1CLENBQUM7SUFDL0IsQ0FBQztBQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1hdE9wdGlvbnMgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuXG5leHBvcnQgY29uc3QgTE9DQUxFID0ge1xuICB2YWx1ZTogbmF2aWdhdG9yLmxhbmd1YWdlcyAmJiBuYXZpZ2F0b3IubGFuZ3VhZ2VzLmxlbmd0aCA/IG5hdmlnYXRvci5sYW5ndWFnZXNbMF0gOiBuYXZpZ2F0b3IubGFuZ3VhZ2Vcbn07XG5cbkBQaXBlKHsgbmFtZTogJ2RhdGFGb3JtYXQnIH0pXG5leHBvcnQgY2xhc3MgRGF0YUZvcm1hdFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHRyYW5zZm9ybShcbiAgICB2YWx1ZTogYW55LFxuICAgIHsgaXNMb2NhbGVGb3JtYXQsIHVuaXQsIGRlY2ltYWxQcmVjaXNpb24sIGZvcm1hdCB9OiBQYXJ0aWFsPEZvcm1hdE9wdGlvbnM+IHwgdW5kZWZpbmVkID0ge31cbiAgKTogYW55IHtcbiAgICBsZXQgcmVzdWx0ID0gdmFsdWU7XG5cbiAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgIH1cblxuICAgIGlmIChkZWNpbWFsUHJlY2lzaW9uKSB7XG4gICAgICByZXN1bHQgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQodW5kZWZpbmVkLCB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgcm91bmRpbmdNb2RlOiAnZmxvb3InLFxuICAgICAgICBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IGRlY2ltYWxQcmVjaXNpb24sXG4gICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZGVjaW1hbFByZWNpc2lvblxuICAgICAgfSkuZm9ybWF0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAoaXNMb2NhbGVGb3JtYXQpIHtcbiAgICAgIHJlc3VsdCA9IHRvTG9jYWxlU3RyaW5nKHJlc3VsdCk7XG4gICAgfVxuICAgIGlmICh1bml0KSB7XG4gICAgICByZXN1bHQgPSByZXN1bHQgKyAnICcgKyB1bml0O1xuICAgIH1cblxuICAgIGlmIChmb3JtYXQpIHtcbiAgICAgIHJlc3VsdCA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KExPQ0FMRS52YWx1ZSwgZGF0ZUZvcm1hdE9wdGlvbnMudmFsdWVbZm9ybWF0XSkuZm9ybWF0KGdldERhdGUodmFsdWUpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG5cbi8vIG51bWJlciBmb3JtYXR0aW5nIG1ldGhvZHNcbmNvbnN0IHRvTG9jYWxlU3RyaW5nID0gKHZhbHVlPzogc3RyaW5nIHwgbnVtYmVyKSA9PiB7XG4gIHN3aXRjaCAodHlwZW9mIHZhbHVlKSB7XG4gICAgY2FzZSAnbnVtYmVyJzpcbiAgICAgIHJldHVybiBuZXcgSW50bC5OdW1iZXJGb3JtYXQoTE9DQUxFLnZhbHVlLCB7IG1heGltdW1GcmFjdGlvbkRpZ2l0czogMjAgfSkuZm9ybWF0KHZhbHVlKTtcbiAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn07XG5cbi8vIGRhdGUgZm9ybWF0dGluZyBtZXRob2RzXG5leHBvcnQgY29uc3QgZGF0ZUZvcm1hdE9wdGlvbnM6IHsgdmFsdWU6IHsgW2tleTogc3RyaW5nXTogSW50bC5EYXRlVGltZUZvcm1hdE9wdGlvbnMgfSB9ID0ge1xuICB2YWx1ZToge1xuICAgIERBVEVUSU1FOiB7XG4gICAgICB5ZWFyOiAnbnVtZXJpYycsXG4gICAgICBtb250aDogJ251bWVyaWMnLFxuICAgICAgZGF5OiAnbnVtZXJpYycsXG4gICAgICBob3VyOiAnbnVtZXJpYycsXG4gICAgICBtaW51dGU6ICdudW1lcmljJ1xuICAgIH0sXG4gICAgREFURToge1xuICAgICAgeWVhcjogJ251bWVyaWMnLFxuICAgICAgbW9udGg6ICcyLWRpZ2l0JyxcbiAgICAgIGRheTogJzItZGlnaXQnXG4gICAgfSxcbiAgICBNT05USF9ZRUFSOiB7XG4gICAgICBtb250aDogJzItZGlnaXQnLFxuICAgICAgeWVhcjogJ251bWVyaWMnXG4gICAgfSxcbiAgICBEQVlfTU9OVEg6IHtcbiAgICAgIG1vbnRoOiAnMi1kaWdpdCcsXG4gICAgICBkYXk6ICcyLWRpZ2l0J1xuICAgIH0sXG4gICAgWUVBUjoge1xuICAgICAgeWVhcjogJ251bWVyaWMnXG4gICAgfSxcbiAgICBNT05USDoge1xuICAgICAgbW9udGg6ICcyLWRpZ2l0J1xuICAgIH0sXG4gICAgREFZOiB7XG4gICAgICBkYXk6ICcyLWRpZ2l0J1xuICAgIH1cbiAgfVxufTtcblxuY29uc3QgZ2V0RGF0ZSA9ICh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSk6IERhdGUgPT4ge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKHZhbHVlKTtcbiAgfVxuICByZXR1cm4gdmFsdWU7XG59O1xuXG5leHBvcnQgY29uc3QgdG9EM0Zvcm1hdCA9IChmb3JtYXQ/OiBzdHJpbmcpID0+IHtcbiAgc3dpdGNoIChmb3JtYXQpIHtcbiAgICBjYXNlICdEQVRFVElNRSc6XG4gICAgICByZXR1cm4gJyVZLSVtLSVkVCVIOiVNOiVTJztcbiAgICBjYXNlICdEQVRFJzpcbiAgICAgIHJldHVybiAnJVktJW0tJWQnO1xuICAgIGNhc2UgJ01PTlRIX1lFQVInOlxuICAgICAgcmV0dXJuICclbS0lWSc7XG4gICAgY2FzZSAnREFZX01PTlRIJzpcbiAgICAgIHJldHVybiAnJWQtJW0nO1xuICAgIGNhc2UgJ1lFQVInOlxuICAgICAgcmV0dXJuICclWSc7XG4gICAgY2FzZSAnTU9OVEgnOlxuICAgICAgcmV0dXJuICclbSc7XG4gICAgY2FzZSAnREFZJzpcbiAgICAgIHJldHVybiAnJWQnO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJyVZLSVCLSVkVCVIOiVNOiVTJztcbiAgfVxufTtcbiJdfQ==
@@ -0,0 +1,51 @@
1
+ import { Component, computed, effect, EventEmitter, inject, input, Output, signal } from '@angular/core';
2
+ import { Store } from '@ngrx/store';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@provoly/dashboard";
5
+ import * as i2 from "@angular/common";
6
+ import * as i3 from "./style/css.component";
7
+ export class PryPaginatorComponent {
8
+ constructor() {
9
+ this.store = inject(Store);
10
+ this.action = input();
11
+ this.nbPerPage = input(10);
12
+ this.totalItemNb = input(100);
13
+ this.mode = input('long');
14
+ this.nbOfPages = computed(() => {
15
+ return Math.floor(this.totalItemNb() / this.nbPerPage());
16
+ });
17
+ this.pages = computed(() => {
18
+ return Array.from({ length: this.nbOfPages() }, (_, i) => i + 1);
19
+ });
20
+ this.currentPage = signal(1);
21
+ this.pageChange = new EventEmitter();
22
+ effect(() => {
23
+ if (this.currentPage()) {
24
+ this.dispatchPageChangeAction();
25
+ }
26
+ }, { allowSignalWrites: true });
27
+ }
28
+ dispatchPageChangeAction() {
29
+ if (this.action()) {
30
+ this.store.dispatch({
31
+ ...this.action(),
32
+ // @ts-ignore
33
+ offset: (this.currentPage() - 1) * this.nbPerPage(),
34
+ limit: this.nbPerPage()
35
+ });
36
+ }
37
+ }
38
+ changePage(page) {
39
+ this.currentPage.set(page);
40
+ this.pageChange.emit(page);
41
+ }
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PryPaginatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
43
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.3", type: PryPaginatorComponent, selector: "pry-paginator", inputs: { action: { classPropertyName: "action", publicName: "action", isSignal: true, isRequired: false, transformFunction: null }, nbPerPage: { classPropertyName: "nbPerPage", publicName: "nbPerPage", isSignal: true, isRequired: false, transformFunction: null }, totalItemNb: { classPropertyName: "totalItemNb", publicName: "totalItemNb", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { pageChange: "pageChange" }, ngImport: i0, template: "<pry-paginator-css></pry-paginator-css>\n<div\n class=\"o-paginator u-display-flex -align-center\"\n [class.o-paginator--long]=\"mode() === 'long'\"\n [class.o-paginator--short]=\"mode() === 'short'\"\n>\n @if (mode() === 'long') {\n <ng-container *ngTemplateOutlet=\"longPaginator\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"shortPaginator\"></ng-container>\n }\n</div>\n\n<ng-template #shortPaginator>\n <button (click)=\"changePage(1)\" [disabled]=\"currentPage() === 1\">\n <pry-icon iconSvg=\"skip-left-fill\"></pry-icon>\n </button>\n <button (click)=\"changePage(currentPage() - 1)\" [disabled]=\"currentPage() === 1\">\n <pry-icon iconSvg=\"arrow-left-s-fill\"></pry-icon>\n </button>\n <span class=\"o-paginator__page-counter\">{{ currentPage() }} / {{ nbOfPages() }}</span>\n <button (click)=\"changePage(currentPage() + 1)\" [disabled]=\"currentPage() === nbOfPages()\">\n <pry-icon iconSvg=\"arrow-right-s-fill\"></pry-icon>\n </button>\n <button (click)=\"changePage(nbOfPages())\" [disabled]=\"currentPage() === nbOfPages()\">\n <pry-icon iconSvg=\"skip-right-fill\"></pry-icon>\n </button>\n</ng-template>\n\n<ng-template #longPaginator>\n @if (currentPage() > 1) {\n <button (click)=\"changePage(currentPage() - 1)\">\n <pry-icon iconSvg=\"chevron_left\"></pry-icon>\n </button>\n }\n @if (nbOfPages() > 8) {\n @if (currentPage() < 3) {\n @for (page of pages().slice(0, 3); track page) {\n <button\n class=\"a-btn -small-circle -no-padding\"\n [class.a-btn--primary]=\"page === currentPage()\"\n [class.a-btn--ghost]=\"page !== currentPage()\"\n (click)=\"changePage(page)\"\n >\n {{ page }}\n </button>\n }\n <span class=\"u-self-end\">...</span>\n <button class=\"a-btn -small-circle -no-padding\" (click)=\"changePage(pages().length)\">\n {{ pages().length }}\n </button>\n } @else if (currentPage() > pages().length - 2) {\n <button\n class=\"a-btn -small-circle -no-padding\"\n (click)=\"changePage(1)\"\n [class.a-btn--primary]=\"currentPage() === 1\"\n [class.a-btn--ghost]=\"currentPage() !== 1\"\n >\n 1\n </button>\n <span class=\"u-self-end\">...</span>\n @for (page of pages().slice(-3); track page) {\n <button\n class=\"a-btn -small-circle -no-padding\"\n [class.a-btn--primary]=\"page === currentPage()\"\n [class.a-btn--ghost]=\"page !== currentPage()\"\n (click)=\"changePage(page)\"\n >\n {{ page }}\n </button>\n }\n } @else {\n <button class=\"a-btn -small-circle -no-padding\" (click)=\"changePage(1)\">1</button>\n <span>...</span>\n @for (page of pages().slice(currentPage() - 2, currentPage() + 1); track page) {\n <button\n class=\"a-btn -small-circle -no-padding\"\n [class.a-btn--primary]=\"page === currentPage()\"\n [class.a-btn--ghost]=\"page !== currentPage()\"\n (click)=\"changePage(page)\"\n >\n {{ page }}\n </button>\n }\n <span>...</span>\n <button\n class=\"a-btn -small-circle -no-padding\"\n [class.a-btn--primary]=\"currentPage() === pages().length\"\n [class.a-btn--ghost]=\"currentPage() !== pages().length\"\n (click)=\"changePage(pages().length)\"\n >\n {{ pages().length }}\n </button>\n }\n } @else {\n @for (page of pages(); track page) {\n <button\n class=\"a-btn -small-circle -no-padding\"\n [class.a-btn--primary]=\"page === currentPage()\"\n [class.a-btn--ghost]=\"page !== currentPage()\"\n (click)=\"changePage(page)\"\n >\n {{ page }}\n </button>\n }\n }\n @if (currentPage() < pages().length) {\n <button (click)=\"changePage(currentPage() + 1)\">\n <pry-icon iconSvg=\"chevron_right\"></pry-icon>\n </button>\n }\n</ng-template>\n", dependencies: [{ kind: "component", type: i1.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.PryPaginatorCssComponent, selector: "pry-paginator-css" }] }); }
44
+ }
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PryPaginatorComponent, decorators: [{
46
+ type: Component,
47
+ args: [{ selector: 'pry-paginator', template: "<pry-paginator-css></pry-paginator-css>\n<div\n class=\"o-paginator u-display-flex -align-center\"\n [class.o-paginator--long]=\"mode() === 'long'\"\n [class.o-paginator--short]=\"mode() === 'short'\"\n>\n @if (mode() === 'long') {\n <ng-container *ngTemplateOutlet=\"longPaginator\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"shortPaginator\"></ng-container>\n }\n</div>\n\n<ng-template #shortPaginator>\n <button (click)=\"changePage(1)\" [disabled]=\"currentPage() === 1\">\n <pry-icon iconSvg=\"skip-left-fill\"></pry-icon>\n </button>\n <button (click)=\"changePage(currentPage() - 1)\" [disabled]=\"currentPage() === 1\">\n <pry-icon iconSvg=\"arrow-left-s-fill\"></pry-icon>\n </button>\n <span class=\"o-paginator__page-counter\">{{ currentPage() }} / {{ nbOfPages() }}</span>\n <button (click)=\"changePage(currentPage() + 1)\" [disabled]=\"currentPage() === nbOfPages()\">\n <pry-icon iconSvg=\"arrow-right-s-fill\"></pry-icon>\n </button>\n <button (click)=\"changePage(nbOfPages())\" [disabled]=\"currentPage() === nbOfPages()\">\n <pry-icon iconSvg=\"skip-right-fill\"></pry-icon>\n </button>\n</ng-template>\n\n<ng-template #longPaginator>\n @if (currentPage() > 1) {\n <button (click)=\"changePage(currentPage() - 1)\">\n <pry-icon iconSvg=\"chevron_left\"></pry-icon>\n </button>\n }\n @if (nbOfPages() > 8) {\n @if (currentPage() < 3) {\n @for (page of pages().slice(0, 3); track page) {\n <button\n class=\"a-btn -small-circle -no-padding\"\n [class.a-btn--primary]=\"page === currentPage()\"\n [class.a-btn--ghost]=\"page !== currentPage()\"\n (click)=\"changePage(page)\"\n >\n {{ page }}\n </button>\n }\n <span class=\"u-self-end\">...</span>\n <button class=\"a-btn -small-circle -no-padding\" (click)=\"changePage(pages().length)\">\n {{ pages().length }}\n </button>\n } @else if (currentPage() > pages().length - 2) {\n <button\n class=\"a-btn -small-circle -no-padding\"\n (click)=\"changePage(1)\"\n [class.a-btn--primary]=\"currentPage() === 1\"\n [class.a-btn--ghost]=\"currentPage() !== 1\"\n >\n 1\n </button>\n <span class=\"u-self-end\">...</span>\n @for (page of pages().slice(-3); track page) {\n <button\n class=\"a-btn -small-circle -no-padding\"\n [class.a-btn--primary]=\"page === currentPage()\"\n [class.a-btn--ghost]=\"page !== currentPage()\"\n (click)=\"changePage(page)\"\n >\n {{ page }}\n </button>\n }\n } @else {\n <button class=\"a-btn -small-circle -no-padding\" (click)=\"changePage(1)\">1</button>\n <span>...</span>\n @for (page of pages().slice(currentPage() - 2, currentPage() + 1); track page) {\n <button\n class=\"a-btn -small-circle -no-padding\"\n [class.a-btn--primary]=\"page === currentPage()\"\n [class.a-btn--ghost]=\"page !== currentPage()\"\n (click)=\"changePage(page)\"\n >\n {{ page }}\n </button>\n }\n <span>...</span>\n <button\n class=\"a-btn -small-circle -no-padding\"\n [class.a-btn--primary]=\"currentPage() === pages().length\"\n [class.a-btn--ghost]=\"currentPage() !== pages().length\"\n (click)=\"changePage(pages().length)\"\n >\n {{ pages().length }}\n </button>\n }\n } @else {\n @for (page of pages(); track page) {\n <button\n class=\"a-btn -small-circle -no-padding\"\n [class.a-btn--primary]=\"page === currentPage()\"\n [class.a-btn--ghost]=\"page !== currentPage()\"\n (click)=\"changePage(page)\"\n >\n {{ page }}\n </button>\n }\n }\n @if (currentPage() < pages().length) {\n <button (click)=\"changePage(currentPage() + 1)\">\n <pry-icon iconSvg=\"chevron_right\"></pry-icon>\n </button>\n }\n</ng-template>\n" }]
48
+ }], ctorParameters: () => [], propDecorators: { pageChange: [{
49
+ type: Output
50
+ }] } });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvcGFnaW5hdG9yL3BhZ2luYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL3BhZ2luYXRvci9wYWdpbmF0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFVLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQzs7Ozs7QUFNNUMsTUFBTSxPQUFPLHFCQUFxQjtJQWtCaEM7UUFqQkEsVUFBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0QixXQUFNLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFDekIsY0FBUyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUM5QixnQkFBVyxHQUFHLEtBQUssQ0FBUyxHQUFHLENBQUMsQ0FBQztRQUNqQyxTQUFJLEdBQUcsS0FBSyxDQUFtQixNQUFNLENBQUMsQ0FBQztRQUV2QyxjQUFTLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUN4QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzNELENBQUMsQ0FBQyxDQUFDO1FBQ0gsVUFBSyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDcEIsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ25FLENBQUMsQ0FBQyxDQUFDO1FBQ0gsZ0JBQVcsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFZCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUdoRCxNQUFNLENBQ0osR0FBRyxFQUFFO1lBQ0gsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztnQkFDdkIsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7WUFDbEMsQ0FBQztRQUNILENBQUMsRUFDRCxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUM1QixDQUFDO0lBQ0osQ0FBQztJQUVELHdCQUF3QjtRQUN0QixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO2dCQUNsQixHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ2hCLGFBQWE7Z0JBQ2IsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ25ELEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFO2FBQ3hCLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVk7UUFDckIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQzs4R0EzQ1UscUJBQXFCO2tHQUFyQixxQkFBcUIsc21CQ1BsQyw0N0hBZ0hBOzsyRkR6R2EscUJBQXFCO2tCQUpqQyxTQUFTOytCQUNFLGVBQWU7d0RBbUJmLFVBQVU7c0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBlZmZlY3QsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBpbnB1dCwgT3V0cHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGlvbiwgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ByeS1wYWdpbmF0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vcGFnaW5hdG9yLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQcnlQYWdpbmF0b3JDb21wb25lbnQge1xuICBzdG9yZSA9IGluamVjdChTdG9yZSk7XG5cbiAgYWN0aW9uID0gaW5wdXQ8QWN0aW9uPigpO1xuICBuYlBlclBhZ2UgPSBpbnB1dDxudW1iZXI+KDEwKTtcbiAgdG90YWxJdGVtTmIgPSBpbnB1dDxudW1iZXI+KDEwMCk7XG4gIG1vZGUgPSBpbnB1dDwnbG9uZycgfCAnc2hvcnQnPignbG9uZycpO1xuXG4gIG5iT2ZQYWdlcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gTWF0aC5mbG9vcih0aGlzLnRvdGFsSXRlbU5iKCkgLyB0aGlzLm5iUGVyUGFnZSgpKTtcbiAgfSk7XG4gIHBhZ2VzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHsgbGVuZ3RoOiB0aGlzLm5iT2ZQYWdlcygpIH0sIChfLCBpKSA9PiBpICsgMSk7XG4gIH0pO1xuICBjdXJyZW50UGFnZSA9IHNpZ25hbCgxKTtcblxuICBAT3V0cHV0KCkgcGFnZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGVmZmVjdChcbiAgICAgICgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudFBhZ2UoKSkge1xuICAgICAgICAgIHRoaXMuZGlzcGF0Y2hQYWdlQ2hhbmdlQWN0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cbiAgICApO1xuICB9XG5cbiAgZGlzcGF0Y2hQYWdlQ2hhbmdlQWN0aW9uKCkge1xuICAgIGlmICh0aGlzLmFjdGlvbigpKSB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHtcbiAgICAgICAgLi4udGhpcy5hY3Rpb24oKSxcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBvZmZzZXQ6ICh0aGlzLmN1cnJlbnRQYWdlKCkgLSAxKSAqIHRoaXMubmJQZXJQYWdlKCksXG4gICAgICAgIGxpbWl0OiB0aGlzLm5iUGVyUGFnZSgpXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBjaGFuZ2VQYWdlKHBhZ2U6IG51bWJlcikge1xuICAgIHRoaXMuY3VycmVudFBhZ2Uuc2V0KHBhZ2UpO1xuICAgIHRoaXMucGFnZUNoYW5nZS5lbWl0KHBhZ2UpO1xuICB9XG59XG4iLCI8cHJ5LXBhZ2luYXRvci1jc3M+PC9wcnktcGFnaW5hdG9yLWNzcz5cbjxkaXZcbiAgY2xhc3M9XCJvLXBhZ2luYXRvciB1LWRpc3BsYXktZmxleCAtYWxpZ24tY2VudGVyXCJcbiAgW2NsYXNzLm8tcGFnaW5hdG9yLS1sb25nXT1cIm1vZGUoKSA9PT0gJ2xvbmcnXCJcbiAgW2NsYXNzLm8tcGFnaW5hdG9yLS1zaG9ydF09XCJtb2RlKCkgPT09ICdzaG9ydCdcIlxuPlxuICBAaWYgKG1vZGUoKSA9PT0gJ2xvbmcnKSB7XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxvbmdQYWdpbmF0b3JcIj48L25nLWNvbnRhaW5lcj5cbiAgfSBAZWxzZSB7XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNob3J0UGFnaW5hdG9yXCI+PC9uZy1jb250YWluZXI+XG4gIH1cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3Nob3J0UGFnaW5hdG9yPlxuICA8YnV0dG9uIChjbGljayk9XCJjaGFuZ2VQYWdlKDEpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlKCkgPT09IDFcIj5cbiAgICA8cHJ5LWljb24gaWNvblN2Zz1cInNraXAtbGVmdC1maWxsXCI+PC9wcnktaWNvbj5cbiAgPC9idXR0b24+XG4gIDxidXR0b24gKGNsaWNrKT1cImNoYW5nZVBhZ2UoY3VycmVudFBhZ2UoKSAtIDEpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlKCkgPT09IDFcIj5cbiAgICA8cHJ5LWljb24gaWNvblN2Zz1cImFycm93LWxlZnQtcy1maWxsXCI+PC9wcnktaWNvbj5cbiAgPC9idXR0b24+XG4gIDxzcGFuIGNsYXNzPVwiby1wYWdpbmF0b3JfX3BhZ2UtY291bnRlclwiPnt7IGN1cnJlbnRQYWdlKCkgfX0gLyB7eyBuYk9mUGFnZXMoKSB9fTwvc3Bhbj5cbiAgPGJ1dHRvbiAoY2xpY2spPVwiY2hhbmdlUGFnZShjdXJyZW50UGFnZSgpICsgMSlcIiBbZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UoKSA9PT0gbmJPZlBhZ2VzKClcIj5cbiAgICA8cHJ5LWljb24gaWNvblN2Zz1cImFycm93LXJpZ2h0LXMtZmlsbFwiPjwvcHJ5LWljb24+XG4gIDwvYnV0dG9uPlxuICA8YnV0dG9uIChjbGljayk9XCJjaGFuZ2VQYWdlKG5iT2ZQYWdlcygpKVwiIFtkaXNhYmxlZF09XCJjdXJyZW50UGFnZSgpID09PSBuYk9mUGFnZXMoKVwiPlxuICAgIDxwcnktaWNvbiBpY29uU3ZnPVwic2tpcC1yaWdodC1maWxsXCI+PC9wcnktaWNvbj5cbiAgPC9idXR0b24+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2xvbmdQYWdpbmF0b3I+XG4gIEBpZiAoY3VycmVudFBhZ2UoKSA+IDEpIHtcbiAgICA8YnV0dG9uIChjbGljayk9XCJjaGFuZ2VQYWdlKGN1cnJlbnRQYWdlKCkgLSAxKVwiPlxuICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJjaGV2cm9uX2xlZnRcIj48L3ByeS1pY29uPlxuICAgIDwvYnV0dG9uPlxuICB9XG4gIEBpZiAobmJPZlBhZ2VzKCkgPiA4KSB7XG4gICAgQGlmIChjdXJyZW50UGFnZSgpIDwgMykge1xuICAgICAgQGZvciAocGFnZSBvZiBwYWdlcygpLnNsaWNlKDAsIDMpOyB0cmFjayBwYWdlKSB7XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cImEtYnRuIC1zbWFsbC1jaXJjbGUgLW5vLXBhZGRpbmdcIlxuICAgICAgICAgIFtjbGFzcy5hLWJ0bi0tcHJpbWFyeV09XCJwYWdlID09PSBjdXJyZW50UGFnZSgpXCJcbiAgICAgICAgICBbY2xhc3MuYS1idG4tLWdob3N0XT1cInBhZ2UgIT09IGN1cnJlbnRQYWdlKClcIlxuICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VQYWdlKHBhZ2UpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IHBhZ2UgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9XG4gICAgICA8c3BhbiBjbGFzcz1cInUtc2VsZi1lbmRcIj4uLi48L3NwYW4+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYS1idG4gLXNtYWxsLWNpcmNsZSAtbm8tcGFkZGluZ1wiIChjbGljayk9XCJjaGFuZ2VQYWdlKHBhZ2VzKCkubGVuZ3RoKVwiPlxuICAgICAgICB7eyBwYWdlcygpLmxlbmd0aCB9fVxuICAgICAgPC9idXR0b24+XG4gICAgfSBAZWxzZSBpZiAoY3VycmVudFBhZ2UoKSA+IHBhZ2VzKCkubGVuZ3RoIC0gMikge1xuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImEtYnRuIC1zbWFsbC1jaXJjbGUgLW5vLXBhZGRpbmdcIlxuICAgICAgICAoY2xpY2spPVwiY2hhbmdlUGFnZSgxKVwiXG4gICAgICAgIFtjbGFzcy5hLWJ0bi0tcHJpbWFyeV09XCJjdXJyZW50UGFnZSgpID09PSAxXCJcbiAgICAgICAgW2NsYXNzLmEtYnRuLS1naG9zdF09XCJjdXJyZW50UGFnZSgpICE9PSAxXCJcbiAgICAgID5cbiAgICAgICAgMVxuICAgICAgPC9idXR0b24+XG4gICAgICA8c3BhbiBjbGFzcz1cInUtc2VsZi1lbmRcIj4uLi48L3NwYW4+XG4gICAgICBAZm9yIChwYWdlIG9mIHBhZ2VzKCkuc2xpY2UoLTMpOyB0cmFjayBwYWdlKSB7XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cImEtYnRuIC1zbWFsbC1jaXJjbGUgLW5vLXBhZGRpbmdcIlxuICAgICAgICAgIFtjbGFzcy5hLWJ0bi0tcHJpbWFyeV09XCJwYWdlID09PSBjdXJyZW50UGFnZSgpXCJcbiAgICAgICAgICBbY2xhc3MuYS1idG4tLWdob3N0XT1cInBhZ2UgIT09IGN1cnJlbnRQYWdlKClcIlxuICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VQYWdlKHBhZ2UpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IHBhZ2UgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYS1idG4gLXNtYWxsLWNpcmNsZSAtbm8tcGFkZGluZ1wiIChjbGljayk9XCJjaGFuZ2VQYWdlKDEpXCI+MTwvYnV0dG9uPlxuICAgICAgPHNwYW4+Li4uPC9zcGFuPlxuICAgICAgQGZvciAocGFnZSBvZiBwYWdlcygpLnNsaWNlKGN1cnJlbnRQYWdlKCkgLSAyLCBjdXJyZW50UGFnZSgpICsgMSk7IHRyYWNrIHBhZ2UpIHtcbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiYS1idG4gLXNtYWxsLWNpcmNsZSAtbm8tcGFkZGluZ1wiXG4gICAgICAgICAgW2NsYXNzLmEtYnRuLS1wcmltYXJ5XT1cInBhZ2UgPT09IGN1cnJlbnRQYWdlKClcIlxuICAgICAgICAgIFtjbGFzcy5hLWJ0bi0tZ2hvc3RdPVwicGFnZSAhPT0gY3VycmVudFBhZ2UoKVwiXG4gICAgICAgICAgKGNsaWNrKT1cImNoYW5nZVBhZ2UocGFnZSlcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgcGFnZSB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIH1cbiAgICAgIDxzcGFuPi4uLjwvc3Bhbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJhLWJ0biAtc21hbGwtY2lyY2xlIC1uby1wYWRkaW5nXCJcbiAgICAgICAgW2NsYXNzLmEtYnRuLS1wcmltYXJ5XT1cImN1cnJlbnRQYWdlKCkgPT09IHBhZ2VzKCkubGVuZ3RoXCJcbiAgICAgICAgW2NsYXNzLmEtYnRuLS1naG9zdF09XCJjdXJyZW50UGFnZSgpICE9PSBwYWdlcygpLmxlbmd0aFwiXG4gICAgICAgIChjbGljayk9XCJjaGFuZ2VQYWdlKHBhZ2VzKCkubGVuZ3RoKVwiXG4gICAgICA+XG4gICAgICAgIHt7IHBhZ2VzKCkubGVuZ3RoIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBmb3IgKHBhZ2Ugb2YgcGFnZXMoKTsgdHJhY2sgcGFnZSkge1xuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImEtYnRuIC1zbWFsbC1jaXJjbGUgLW5vLXBhZGRpbmdcIlxuICAgICAgICBbY2xhc3MuYS1idG4tLXByaW1hcnldPVwicGFnZSA9PT0gY3VycmVudFBhZ2UoKVwiXG4gICAgICAgIFtjbGFzcy5hLWJ0bi0tZ2hvc3RdPVwicGFnZSAhPT0gY3VycmVudFBhZ2UoKVwiXG4gICAgICAgIChjbGljayk9XCJjaGFuZ2VQYWdlKHBhZ2UpXCJcbiAgICAgID5cbiAgICAgICAge3sgcGFnZSB9fVxuICAgICAgPC9idXR0b24+XG4gICAgfVxuICB9XG4gIEBpZiAoY3VycmVudFBhZ2UoKSA8IHBhZ2VzKCkubGVuZ3RoKSB7XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwiY2hhbmdlUGFnZShjdXJyZW50UGFnZSgpICsgMSlcIj5cbiAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiY2hldnJvbl9yaWdodFwiPjwvcHJ5LWljb24+XG4gICAgPC9idXR0b24+XG4gIH1cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -0,0 +1,20 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { PryPaginatorComponent } from './paginator.component';
3
+ import { PryIconModule } from '@provoly/dashboard';
4
+ import { NgTemplateOutlet } from '@angular/common';
5
+ import { PryPaginatorCssComponent } from './style/css.component';
6
+ import * as i0 from "@angular/core";
7
+ export class PryPaginatorModule {
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PryPaginatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.3", ngImport: i0, type: PryPaginatorModule, declarations: [PryPaginatorComponent, PryPaginatorCssComponent], imports: [PryIconModule, NgTemplateOutlet], exports: [PryPaginatorComponent, PryPaginatorCssComponent] }); }
10
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PryPaginatorModule, imports: [PryIconModule] }); }
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PryPaginatorModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ declarations: [PryPaginatorComponent, PryPaginatorCssComponent],
16
+ imports: [PryIconModule, NgTemplateOutlet],
17
+ exports: [PryPaginatorComponent, PryPaginatorCssComponent]
18
+ }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvcGFnaW5hdG9yL3BhZ2luYXRvci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBT2pFLE1BQU0sT0FBTyxrQkFBa0I7OEdBQWxCLGtCQUFrQjsrR0FBbEIsa0JBQWtCLGlCQUpkLHFCQUFxQixFQUFFLHdCQUF3QixhQUNwRCxhQUFhLEVBQUUsZ0JBQWdCLGFBQy9CLHFCQUFxQixFQUFFLHdCQUF3QjsrR0FFOUMsa0JBQWtCLFlBSG5CLGFBQWE7OzJGQUdaLGtCQUFrQjtrQkFMOUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSx3QkFBd0IsQ0FBQztvQkFDL0QsT0FBTyxFQUFFLENBQUMsYUFBYSxFQUFFLGdCQUFnQixDQUFDO29CQUMxQyxPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSx3QkFBd0IsQ0FBQztpQkFDM0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJ5UGFnaW5hdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdpbmF0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IFByeUljb25Nb2R1bGUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBQcnlQYWdpbmF0b3JDc3NDb21wb25lbnQgfSBmcm9tICcuL3N0eWxlL2Nzcy5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtQcnlQYWdpbmF0b3JDb21wb25lbnQsIFByeVBhZ2luYXRvckNzc0NvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtQcnlJY29uTW9kdWxlLCBOZ1RlbXBsYXRlT3V0bGV0XSxcbiAgZXhwb3J0czogW1ByeVBhZ2luYXRvckNvbXBvbmVudCwgUHJ5UGFnaW5hdG9yQ3NzQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBQcnlQYWdpbmF0b3JNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdm9seS1kYXNoYm9hcmQtY29tcG9uZW50cy1wYWdpbmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL3BhZ2luYXRvci9wcm92b2x5LWRhc2hib2FyZC1jb21wb25lbnRzLXBhZ2luYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,4 @@
1
+ export * from './paginator.component';
2
+ export * from './paginator.module';
3
+ export * from './style/css.component';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvcGFnaW5hdG9yL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BhZ2luYXRvci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wYWdpbmF0b3IubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3R5bGUvY3NzLmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,11 @@
1
+ import { Component, ViewEncapsulation } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class PryPaginatorCssComponent {
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PryPaginatorCssComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: PryPaginatorCssComponent, selector: "pry-paginator-css", ngImport: i0, template: '', isInline: true, styles: [".o-paginator__page-counter{margin-bottom:.3125rem}.o-paginator--short{gap:0}\n"], encapsulation: i0.ViewEncapsulation.None }); }
6
+ }
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PryPaginatorCssComponent, decorators: [{
8
+ type: Component,
9
+ args: [{ selector: 'pry-paginator-css', template: '', encapsulation: ViewEncapsulation.None, styles: [".o-paginator__page-counter{margin-bottom:.3125rem}.o-paginator--short{gap:0}\n"] }]
10
+ }] });
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvcGFnaW5hdG9yL3N0eWxlL2Nzcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRN0QsTUFBTSxPQUFPLHdCQUF3Qjs4R0FBeEIsd0JBQXdCO2tHQUF4Qix3QkFBd0IseURBSnpCLEVBQUU7OzJGQUlELHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDRSxtQkFBbUIsWUFDbkIsRUFBRSxpQkFFRyxpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktcGFnaW5hdG9yLWNzcycsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbJy4vX28tcHJ5LXBhZ2luYXRvci5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgUHJ5UGFnaW5hdG9yQ3NzQ29tcG9uZW50IHt9XG4iXX0=