@snabcentr/common-lib 4.5.0-dev → 4.7.0-dev

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 (78) hide show
  1. package/dist/manifest.json +1 -1
  2. package/dist/sc-common-lib.js +674 -566
  3. package/dist/sc-common-lib.js.map +1 -1
  4. package/dist/sc-common-lib.umd.cjs +1 -1
  5. package/dist/sc-common-lib.umd.cjs.map +1 -1
  6. package/dist/src/catalog/classes/category-filter.d.ts +4 -0
  7. package/dist/src/catalog/classes/category-filter.d.ts.map +1 -1
  8. package/dist/src/catalog/classes/filter-settings.d.ts +4 -0
  9. package/dist/src/catalog/classes/filter-settings.d.ts.map +1 -1
  10. package/dist/src/catalog/enums/product-filter-type-enum.d.ts +5 -1
  11. package/dist/src/catalog/enums/product-filter-type-enum.d.ts.map +1 -1
  12. package/dist/src/catalog/interfaces/i-category-filter-setting-update-data.d.ts +7 -2
  13. package/dist/src/catalog/interfaces/i-category-filter-setting-update-data.d.ts.map +1 -1
  14. package/dist/src/catalog/interfaces/i-category-filter.d.ts +4 -0
  15. package/dist/src/catalog/interfaces/i-category-filter.d.ts.map +1 -1
  16. package/dist/src/catalog/interfaces/i-filter-settings.d.ts +5 -0
  17. package/dist/src/catalog/interfaces/i-filter-settings.d.ts.map +1 -1
  18. package/dist/src/catalog/providers/properties-provider.d.ts +8 -0
  19. package/dist/src/catalog/providers/properties-provider.d.ts.map +1 -1
  20. package/dist/src/config/interfaces/i-pagination-config.d.ts +20 -0
  21. package/dist/src/config/interfaces/i-pagination-config.d.ts.map +1 -0
  22. package/dist/src/config/interfaces/index.d.ts +1 -0
  23. package/dist/src/config/interfaces/index.d.ts.map +1 -1
  24. package/dist/src/documents/classes/document-item.d.ts +53 -0
  25. package/dist/src/documents/classes/document-item.d.ts.map +1 -0
  26. package/dist/src/documents/classes/index.d.ts +2 -0
  27. package/dist/src/documents/classes/index.d.ts.map +1 -0
  28. package/dist/src/documents/enums/document-content-type-enum.d.ts +22 -0
  29. package/dist/src/documents/enums/document-content-type-enum.d.ts.map +1 -0
  30. package/dist/src/documents/enums/document-type-enum.d.ts +18 -0
  31. package/dist/src/documents/enums/document-type-enum.d.ts.map +1 -0
  32. package/dist/src/documents/enums/index.d.ts +3 -0
  33. package/dist/src/documents/enums/index.d.ts.map +1 -0
  34. package/dist/src/documents/index.d.ts +5 -0
  35. package/dist/src/documents/index.d.ts.map +1 -0
  36. package/dist/src/documents/interfaces/i-document-item-save-data.d.ts +12 -0
  37. package/dist/src/documents/interfaces/i-document-item-save-data.d.ts.map +1 -0
  38. package/dist/src/documents/interfaces/i-document-item.d.ts +43 -0
  39. package/dist/src/documents/interfaces/i-document-item.d.ts.map +1 -0
  40. package/dist/src/documents/interfaces/index.d.ts +3 -0
  41. package/dist/src/documents/interfaces/index.d.ts.map +1 -0
  42. package/dist/src/documents/providers/document-provider.d.ts +53 -0
  43. package/dist/src/documents/providers/document-provider.d.ts.map +1 -0
  44. package/dist/src/documents/providers/index.d.ts +2 -0
  45. package/dist/src/documents/providers/index.d.ts.map +1 -0
  46. package/dist/src/index.d.ts +1 -0
  47. package/dist/src/index.d.ts.map +1 -1
  48. package/dist/src/orders/classes/orders-list-filters.d.ts +5 -1
  49. package/dist/src/orders/classes/orders-list-filters.d.ts.map +1 -1
  50. package/dist/src/orders/interfaces/i-orders-list-filters.d.ts +5 -1
  51. package/dist/src/orders/interfaces/i-orders-list-filters.d.ts.map +1 -1
  52. package/dist/src/pagination/helpers/index.d.ts +2 -0
  53. package/dist/src/pagination/helpers/index.d.ts.map +1 -0
  54. package/dist/src/pagination/helpers/pagination-helper.d.ts +40 -0
  55. package/dist/src/pagination/helpers/pagination-helper.d.ts.map +1 -0
  56. package/dist/src/pagination/index.d.ts +1 -0
  57. package/dist/src/pagination/index.d.ts.map +1 -1
  58. package/dist/src/table-data/classes/table-data-pagination-request-params.d.ts +5 -2
  59. package/dist/src/table-data/classes/table-data-pagination-request-params.d.ts.map +1 -1
  60. package/dist/src/table-data/classes/table-data-pagination.d.ts +6 -3
  61. package/dist/src/table-data/classes/table-data-pagination.d.ts.map +1 -1
  62. package/dist/src/table-data/helpers/index.d.ts +2 -0
  63. package/dist/src/table-data/helpers/index.d.ts.map +1 -0
  64. package/dist/src/table-data/helpers/pagination-settings-helper.d.ts +39 -0
  65. package/dist/src/table-data/helpers/pagination-settings-helper.d.ts.map +1 -0
  66. package/dist/src/table-data/index.d.ts +2 -0
  67. package/dist/src/table-data/index.d.ts.map +1 -1
  68. package/dist/src/table-data/interfaces/i-pagination-preset.d.ts +11 -0
  69. package/dist/src/table-data/interfaces/i-pagination-preset.d.ts.map +1 -0
  70. package/dist/src/table-data/interfaces/i-pagination-settings.d.ts +30 -0
  71. package/dist/src/table-data/interfaces/i-pagination-settings.d.ts.map +1 -0
  72. package/dist/src/table-data/interfaces/index.d.ts +2 -0
  73. package/dist/src/table-data/interfaces/index.d.ts.map +1 -1
  74. package/dist/src/table-data/values/index.d.ts +2 -0
  75. package/dist/src/table-data/values/index.d.ts.map +1 -0
  76. package/dist/src/table-data/values/pagination-default-settings.d.ts +6 -0
  77. package/dist/src/table-data/values/pagination-default-settings.d.ts.map +1 -0
  78. package/package.json +2 -2
@@ -1,2 +1,3 @@
1
1
  export * from './filters';
2
+ export * from './helpers';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pagination/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pagination/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { IPaginationPreset } from '../interfaces/i-pagination-preset';
1
2
  import { IPaginationRequestParams } from '@snabcentr/common-core';
2
3
  /**
3
4
  * Данные о пагинации записей таблицы.
@@ -12,10 +13,12 @@ export declare class TableDataPaginationRequestParams implements IPaginationRequ
12
13
  */
13
14
  pageSize: number;
14
15
  /**
15
- * Инициализирует экземпляр класса {@link TableDataPaginationRequestParams}.
16
+ * Инициализирует экземпляр класса {@link TableDataPaginationRequestParams}. Незаданное количество записей на
17
+ * странице берётся из настроек пагинации, заданное ограничивается их пределом `maxPageSize`.
16
18
  *
17
19
  * @param data Данные для первоначальной инициализации.
20
+ * @param preset Набор настроек пагинации списка.
18
21
  */
19
- constructor(data?: IPaginationRequestParams);
22
+ constructor(data?: Partial<IPaginationRequestParams>, preset?: IPaginationPreset);
20
23
  }
21
24
  //# sourceMappingURL=table-data-pagination-request-params.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-data-pagination-request-params.d.ts","sourceRoot":"","sources":["../../../../src/table-data/classes/table-data-pagination-request-params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE;;GAEG;AACH,qBAAa,gCAAiC,YAAW,wBAAwB;IAC7E;;OAEG;IACI,IAAI,SAAK;IAEhB;;OAEG;IACI,QAAQ,SAAM;IAErB;;;;OAIG;gBACgB,IAAI,CAAC,EAAE,wBAAwB;CAIrD"}
1
+ {"version":3,"file":"table-data-pagination-request-params.d.ts","sourceRoot":"","sources":["../../../../src/table-data/classes/table-data-pagination-request-params.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE;;GAEG;AACH,qBAAa,gCAAiC,YAAW,wBAAwB;IAC7E;;OAEG;IACI,IAAI,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACI,QAAQ,EAAE,MAAM,CAAC;IAExB;;;;;;OAMG;gBACgB,IAAI,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC,EAAE,iBAAiB;CAM1F"}
@@ -1,5 +1,6 @@
1
1
  import { TableDataPaginationRequestParams } from './table-data-pagination-request-params';
2
2
  import { IPagination } from '../interfaces/i-pagination';
3
+ import { IPaginationPreset } from '../interfaces/i-pagination-preset';
3
4
  /**
4
5
  * Данные о пагинации записей таблицы.
5
6
  */
@@ -25,10 +26,12 @@ export declare class TableDataPagination extends TableDataPaginationRequestParam
25
26
  */
26
27
  showSizePicker: boolean;
27
28
  /**
28
- * Инициализирует экземпляр класса {@link TableDataPagination}.
29
+ * Инициализирует экземпляр класса {@link TableDataPagination}. Незаданные значения берутся из настроек пагинации,
30
+ * варианты количества записей на странице ограничиваются их пределом `maxPageSize`.
29
31
  *
30
- * @param data Данные для первоначальной инициализации.
32
+ * @param data Данные для первоначальной инициализации, например сохранённые страница и размер страницы.
33
+ * @param preset Набор настроек пагинации списка.
31
34
  */
32
- constructor(data?: IPagination);
35
+ constructor(data?: Partial<IPagination>, preset?: IPaginationPreset);
33
36
  }
34
37
  //# sourceMappingURL=table-data-pagination.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-data-pagination.d.ts","sourceRoot":"","sources":["../../../../src/table-data/classes/table-data-pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,iEAAiE,CAAC;AACnH,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAEzE;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,gCAAiC,YAAW,WAAW;IAC5F;;OAEG;IACI,SAAS,SAAK;IAErB;;OAEG;IACI,SAAS,SAAK;IAErB;;OAEG;IACI,QAAQ,SAAK;IAEpB;;OAEG;IACI,SAAS,WAAiB;IAEjC;;OAEG;IACI,cAAc,UAAQ;IAE7B;;;;OAIG;gBACgB,IAAI,CAAC,EAAE,WAAW;CASxC"}
1
+ {"version":3,"file":"table-data-pagination.d.ts","sourceRoot":"","sources":["../../../../src/table-data/classes/table-data-pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,iEAAiE,CAAC;AAEnH,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAC;AAEtF;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,gCAAiC,YAAW,WAAW;IAC5F;;OAEG;IACI,SAAS,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACI,SAAS,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACI,QAAQ,EAAE,MAAM,CAAC;IAExB;;OAEG;IACI,SAAS,EAAE,MAAM,EAAE,CAAC;IAE3B;;OAEG;IACI,cAAc,EAAE,OAAO,CAAC;IAE/B;;;;;;OAMG;gBACgB,IAAI,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,EAAE,iBAAiB;CAW7E"}
@@ -0,0 +1,2 @@
1
+ export * from './pagination-settings-helper';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/table-data/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { IPaginationPreset } from '../interfaces/i-pagination-preset';
2
+ import { IPaginationSettings } from '../interfaces/i-pagination-settings';
3
+ /**
4
+ * Класс-помощник для сборки настроек пагинации списков.
5
+ */
6
+ export declare class PaginationSettingsHelper {
7
+ /**
8
+ * Собирает настройки пагинации списка. По возрастанию приоритета: встроенные настройки, `pagination.defaults`
9
+ * конфигурации, поля набора, `pagination.presets[имя набора]`. Незаданные и пустые (`null`) поля пропускаются, списки заменяются
10
+ * целиком, затем размер и варианты ограничиваются пределом `maxPageSize`. Без активного хранилища pinia
11
+ * конфигурация не читается. Результат всегда новый объект с новым списком вариантов.
12
+ *
13
+ * @param preset Набор настроек списка.
14
+ */
15
+ static resolve(preset?: IPaginationPreset): IPaginationSettings & {
16
+ readonly pageSizes: number[];
17
+ };
18
+ /**
19
+ * Ограничивает количество записей на странице пределом.
20
+ *
21
+ * @param pageSize Количество записей на странице.
22
+ * @param maxPageSize Наибольшее количество записей на странице.
23
+ */
24
+ static limitPageSize(pageSize: number, maxPageSize: number): number;
25
+ /**
26
+ * Оставляет варианты количества записей на странице не больше предела. Если варианты больше предела были отброшены
27
+ * или вариантов нет, в конец списка добавляется сам предел: размер страницы, ограниченный пределом, всегда есть
28
+ * среди вариантов. Результат всегда новый список.
29
+ *
30
+ * @param pageSizes Варианты количества записей на странице.
31
+ * @param maxPageSize Наибольшее количество записей на странице.
32
+ */
33
+ static limitPageSizes(pageSizes: readonly number[], maxPageSize: number): number[];
34
+ /**
35
+ * Возвращает секцию пагинации конфигурации, без активного хранилища pinia `undefined`.
36
+ */
37
+ private static getConfig;
38
+ }
39
+ //# sourceMappingURL=pagination-settings-helper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination-settings-helper.d.ts","sourceRoot":"","sources":["../../../../src/table-data/helpers/pagination-settings-helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAM1F;;GAEG;AACH,qBAAa,wBAAwB;IACjC;;;;;;;OAOG;WACW,OAAO,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,mBAAmB,GAAG;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE;IAkBzG;;;;;OAKG;WACW,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM;IAI1E;;;;;;;OAOG;WACW,cAAc,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE;IAOzF;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;CAO3B"}
@@ -1,3 +1,5 @@
1
1
  export * from './interfaces';
2
2
  export * from './classes';
3
+ export * from './helpers';
4
+ export * from './values';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/table-data/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/table-data/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { IPaginationSettings } from './i-pagination-settings';
2
+ /**
3
+ * Набор настроек пагинации, объявленный списком. Незаданные поля берутся из настроек ниже по приоритету.
4
+ */
5
+ export interface IPaginationPreset extends Partial<IPaginationSettings> {
6
+ /**
7
+ * Имя набора: ключ переопределения в `pagination.presets` конфигурации. Без имени набор не переопределяется.
8
+ */
9
+ readonly name?: string;
10
+ }
11
+ //# sourceMappingURL=i-pagination-preset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i-pagination-preset.d.ts","sourceRoot":"","sources":["../../../../src/table-data/interfaces/i-pagination-preset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAE1F;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,OAAO,CAAC,mBAAmB,CAAC;IACnE;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CAC1B"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Настройки пагинации списка.
3
+ */
4
+ export interface IPaginationSettings {
5
+ /**
6
+ * Количество записей на странице.
7
+ */
8
+ readonly pageSize: number;
9
+ /**
10
+ * Значения для выпадающего списка "Количество записей на странице". Список более высокого приоритета заменяет нижний целиком.
11
+ */
12
+ readonly pageSizes: readonly number[];
13
+ /**
14
+ * Число отображаемых номеров страниц.
15
+ */
16
+ readonly pageSlot: number;
17
+ /**
18
+ * Признак необходимости отображать список выбора числа отображаемых записей.
19
+ */
20
+ readonly showSizePicker: boolean;
21
+ /**
22
+ * Наибольшее количество записей на странице, которое принимает источник данных списка. Размер страницы при загрузке списка целиком.
23
+ */
24
+ readonly maxPageSize: number;
25
+ /**
26
+ * Наибольшее количество страниц при загрузке списка целиком.
27
+ */
28
+ readonly maxPages: number;
29
+ }
30
+ //# sourceMappingURL=i-pagination-settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i-pagination-settings.d.ts","sourceRoot":"","sources":["../../../../src/table-data/interfaces/i-pagination-settings.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IAEjC;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC7B"}
@@ -1,2 +1,4 @@
1
1
  export * from './i-pagination';
2
+ export * from './i-pagination-preset';
3
+ export * from './i-pagination-settings';
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/table-data/interfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/table-data/interfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './pagination-default-settings';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/table-data/values/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { IPaginationSettings } from '../interfaces/i-pagination-settings';
2
+ /**
3
+ * Встроенные настройки пагинации списков.
4
+ */
5
+ export declare const PAGINATION_DEFAULT_SETTINGS: Readonly<IPaginationSettings>;
6
+ //# sourceMappingURL=pagination-default-settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination-default-settings.d.ts","sourceRoot":"","sources":["../../../../src/table-data/values/pagination-default-settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAE1F;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,QAAQ,CAAC,mBAAmB,CAOpE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@snabcentr/common-lib",
3
- "version": "4.5.0-dev",
3
+ "version": "4.7.0-dev",
4
4
  "description": "Библиотека общих классов, используемых во всех проектах Снабцентр.",
5
5
  "keywords": [],
6
6
  "author": "Sergey S. Smirnov <dev@snabcentr.com>",
@@ -38,7 +38,7 @@
38
38
  }
39
39
  },
40
40
  "peerDependencies": {
41
- "@snabcentr/common-core": "^1.2.0-0",
41
+ "@snabcentr/common-core": "^1.3.0-0",
42
42
  "axios": "^1.20.0",
43
43
  "date-fns": "^4.4.0",
44
44
  "jwt-decode": "^4.0.0",