@snabcentr/common-lib 4.4.0-dev → 4.5.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 (30) hide show
  1. package/dist/manifest.json +1 -1
  2. package/dist/sc-common-lib.js +564 -507
  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/admins/classes/admin-full-info.d.ts +18 -0
  7. package/dist/src/admins/classes/admin-full-info.d.ts.map +1 -0
  8. package/dist/src/admins/classes/admin-short-info.d.ts +18 -0
  9. package/dist/src/admins/classes/admin-short-info.d.ts.map +1 -0
  10. package/dist/src/admins/classes/admins-list-filters.d.ts +38 -0
  11. package/dist/src/admins/classes/admins-list-filters.d.ts.map +1 -0
  12. package/dist/src/admins/classes/index.d.ts +4 -0
  13. package/dist/src/admins/classes/index.d.ts.map +1 -0
  14. package/dist/src/admins/index.d.ts +4 -0
  15. package/dist/src/admins/index.d.ts.map +1 -0
  16. package/dist/src/admins/interfaces/i-admin-full-info.d.ts +11 -0
  17. package/dist/src/admins/interfaces/i-admin-full-info.d.ts.map +1 -0
  18. package/dist/src/admins/interfaces/i-admin-short-info.d.ts +11 -0
  19. package/dist/src/admins/interfaces/i-admin-short-info.d.ts.map +1 -0
  20. package/dist/src/admins/interfaces/i-admins-list-filters.d.ts +27 -0
  21. package/dist/src/admins/interfaces/i-admins-list-filters.d.ts.map +1 -0
  22. package/dist/src/admins/interfaces/index.d.ts +4 -0
  23. package/dist/src/admins/interfaces/index.d.ts.map +1 -0
  24. package/dist/src/admins/providers/admin-provider.d.ts +69 -0
  25. package/dist/src/admins/providers/admin-provider.d.ts.map +1 -0
  26. package/dist/src/admins/providers/index.d.ts +2 -0
  27. package/dist/src/admins/providers/index.d.ts.map +1 -0
  28. package/dist/src/index.d.ts +1 -0
  29. package/dist/src/index.d.ts.map +1 -1
  30. package/package.json +1 -1
@@ -0,0 +1,18 @@
1
+ import { AdminShortInfo } from './admin-short-info';
2
+ import { IAdminFullInfo } from '../interfaces/i-admin-full-info';
3
+ /**
4
+ * Полные данные об администраторе.
5
+ */
6
+ export declare class AdminFullInfo extends AdminShortInfo implements IAdminFullInfo {
7
+ /**
8
+ * @inheritDoc
9
+ */
10
+ showAllCosts?: boolean;
11
+ /**
12
+ * Инициализирует экземпляр класса {@link AdminFullInfo}.
13
+ *
14
+ * @param data Данные для первоначальной инициализации.
15
+ */
16
+ constructor(data?: Partial<IAdminFullInfo>);
17
+ }
18
+ //# sourceMappingURL=admin-full-info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-full-info.d.ts","sourceRoot":"","sources":["../../../../src/admins/classes/admin-full-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAE7E;;GAEG;AACH,qBAAa,aAAc,SAAQ,cAAe,YAAW,cAAc;IACvE;;OAEG;IACI,YAAY,CAAC,EAAE,OAAO,CAAC;IAE9B;;;;OAIG;gBACgB,IAAI,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;CAKpD"}
@@ -0,0 +1,18 @@
1
+ import { IAdminShortInfo } from '../interfaces/i-admin-short-info';
2
+ import { User } from '@snabcentr/common-core';
3
+ /**
4
+ * Краткие данные об администраторе, которые возвращает список администраторов.
5
+ */
6
+ export declare class AdminShortInfo extends User implements IAdminShortInfo {
7
+ /**
8
+ * @inheritDoc
9
+ */
10
+ isSuperadmin: boolean;
11
+ /**
12
+ * Инициализирует экземпляр класса {@link AdminShortInfo}.
13
+ *
14
+ * @param data Данные для первоначальной инициализации.
15
+ */
16
+ constructor(data?: Partial<IAdminShortInfo>);
17
+ }
18
+ //# sourceMappingURL=admin-short-info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-short-info.d.ts","sourceRoot":"","sources":["../../../../src/admins/classes/admin-short-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC/E,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C;;GAEG;AACH,qBAAa,cAAe,SAAQ,IAAK,YAAW,eAAe;IAC/D;;OAEG;IACI,YAAY,EAAE,OAAO,CAAC;IAE7B;;;;OAIG;gBACgB,IAAI,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;CAKrD"}
@@ -0,0 +1,38 @@
1
+ import { IAdminsListFilters } from '../interfaces/i-admins-list-filters';
2
+ import { PaginationFiltersBase } from '../../pagination/filters/pagination-filters-base';
3
+ /**
4
+ * Данные о параметрах фильтрации списка администраторов.
5
+ */
6
+ export declare class AdminsListFilters extends PaginationFiltersBase implements IAdminsListFilters {
7
+ /**
8
+ * @inheritDoc
9
+ */
10
+ name?: string;
11
+ /**
12
+ * @inheritDoc
13
+ */
14
+ phone?: string;
15
+ /**
16
+ * @inheritDoc
17
+ */
18
+ email?: string;
19
+ /**
20
+ * @inheritDoc
21
+ */
22
+ isActive?: boolean;
23
+ /**
24
+ * @inheritDoc
25
+ */
26
+ isSuperadmin?: boolean;
27
+ /**
28
+ * Инициализирует экземпляр класса {@link AdminsListFilters}.
29
+ *
30
+ * @param data Данные для первоначальной инициализации.
31
+ */
32
+ constructor(data?: IAdminsListFilters);
33
+ /**
34
+ * @inheritDoc
35
+ */
36
+ resetFilterValue(key: string): this;
37
+ }
38
+ //# sourceMappingURL=admins-list-filters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admins-list-filters.d.ts","sourceRoot":"","sources":["../../../../src/admins/classes/admins-list-filters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAE3F;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,qBAAsB,YAAW,kBAAkB;IACtF;;OAEG;IACI,IAAI,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACI,KAAK,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACI,KAAK,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACI,QAAQ,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACI,YAAY,CAAC,EAAE,OAAO,CAAC;IAE9B;;;;OAIG;gBACgB,IAAI,CAAC,EAAE,kBAAkB;IAU5C;;OAEG;IACI,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;CAgB7C"}
@@ -0,0 +1,4 @@
1
+ export * from './admin-full-info';
2
+ export * from './admins-list-filters';
3
+ export * from './admin-short-info';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/admins/classes/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './interfaces';
2
+ export * from './classes';
3
+ export * from './providers';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/admins/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { IAdminShortInfo } from './i-admin-short-info';
2
+ /**
3
+ * Полные данные об администраторе.
4
+ */
5
+ export interface IAdminFullInfo extends IAdminShortInfo {
6
+ /**
7
+ * Признак того, что администратор видит все цены.
8
+ */
9
+ showAllCosts?: boolean;
10
+ }
11
+ //# sourceMappingURL=i-admin-full-info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i-admin-full-info.d.ts","sourceRoot":"","sources":["../../../../src/admins/interfaces/i-admin-full-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAE/E;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,eAAe;IACnD;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B"}
@@ -0,0 +1,11 @@
1
+ import { IUser } from '@snabcentr/common-core';
2
+ /**
3
+ * Краткие данные об администраторе, которые возвращает список администраторов.
4
+ */
5
+ export interface IAdminShortInfo extends IUser {
6
+ /**
7
+ * Признак суперадмина.
8
+ */
9
+ isSuperadmin: boolean;
10
+ }
11
+ //# sourceMappingURL=i-admin-short-info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i-admin-short-info.d.ts","sourceRoot":"","sources":["../../../../src/admins/interfaces/i-admin-short-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,KAAK;IAC1C;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;CACzB"}
@@ -0,0 +1,27 @@
1
+ import { IPaginationFiltersBase } from '../../pagination/filters/i-pagination-filters-base';
2
+ /**
3
+ * Данные о параметрах фильтрации списка администраторов.
4
+ */
5
+ export interface IAdminsListFilters extends IPaginationFiltersBase {
6
+ /**
7
+ * ФИО администратора.
8
+ */
9
+ name?: string;
10
+ /**
11
+ * Номер телефона.
12
+ */
13
+ phone?: string;
14
+ /**
15
+ * Адрес электронной почты.
16
+ */
17
+ email?: string;
18
+ /**
19
+ * Признак активности учётной записи. Если не задан, выводятся и активные, и деактивированные администраторы.
20
+ */
21
+ isActive?: boolean;
22
+ /**
23
+ * Признак суперадмина. Если не задан, выводятся все администраторы.
24
+ */
25
+ isSuperadmin?: boolean;
26
+ }
27
+ //# sourceMappingURL=i-admins-list-filters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i-admins-list-filters.d.ts","sourceRoot":"","sources":["../../../../src/admins/interfaces/i-admins-list-filters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAE9F;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;IAC9D;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B"}
@@ -0,0 +1,4 @@
1
+ export * from './i-admin-full-info';
2
+ export * from './i-admins-list-filters';
3
+ export * from './i-admin-short-info';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/admins/interfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,69 @@
1
+ import { IAdminFullInfo } from '../interfaces/i-admin-full-info';
2
+ import { IAdminShortInfo } from '../interfaces/i-admin-short-info';
3
+ import { IUserSaveData } from '../../user/interfaces/i-user-save-data';
4
+ import { BasePaginationProvider, IFieldValidationResultData, IFilterGroup, IPaginatedResponse, IPaginationRequestParams, ISortRequestParams } from '@snabcentr/common-core';
5
+ /**
6
+ * Предоставляет механизмы управления администраторами: список с фильтрами, получение, создание, изменение и удаление.
7
+ */
8
+ export declare class AdminProvider extends BasePaginationProvider {
9
+ /**
10
+ * Преобразует данные администратора в данные, требуемые для запроса создания или изменения.
11
+ *
12
+ * @param admin Данные администратора для сохранения.
13
+ */
14
+ protected static transformAdminDataToRequest(admin: IUserSaveData<IAdminFullInfo>): Record<string, unknown>;
15
+ /**
16
+ * Возвращает список администраторов.
17
+ *
18
+ * @param filters Параметры фильтрации данных.
19
+ * @param sortParams Параметры сортировки.
20
+ * @param paginationParams Параметры пагинации.
21
+ * @param signal Сигнал отмены запроса.
22
+ *
23
+ * @see /doc/api/internal#/operations/api_internal_admins_get_list
24
+ */
25
+ getAdminsList(filters?: IFilterGroup, sortParams?: ISortRequestParams[] | ISortRequestParams, paginationParams?: IPaginationRequestParams, signal?: AbortSignal): Promise<IPaginatedResponse<IAdminShortInfo>>;
26
+ /**
27
+ * Возвращает полные данные об администраторе с указанным идентификатором.
28
+ *
29
+ * @param adminId Идентификатор администратора (идентификатор его учётной записи).
30
+ * @param disableNotifications Признак необходимости отключить уведомления об ошибках.
31
+ *
32
+ * @see /doc/api/internal#/operations/api_internal_admins_get
33
+ */
34
+ getAdmin(adminId: number, disableNotifications?: boolean): Promise<IAdminFullInfo>;
35
+ /**
36
+ * Создаёт нового администратора.
37
+ *
38
+ * @param admin Данные администратора для сохранения.
39
+ * @param validationFieldResultData Список полей, для которых необходимо
40
+ * установить данные об ошибках валидации
41
+ * в случае ошибок в запросах.
42
+ *
43
+ * @see /doc/api/internal#/operations/api_internal_admins_create
44
+ */
45
+ createAdmin(admin: IUserSaveData<IAdminFullInfo>, validationFieldResultData?: Record<string, IFieldValidationResultData>): Promise<IAdminFullInfo>;
46
+ /**
47
+ * Изменяет данные указанного администратора.
48
+ *
49
+ * Изменение заменяет все данные администратора: признаки и роль ценообразования, которых нет в переданных данных, сохраняются пустыми.
50
+ * Поэтому передаются полные данные администратора, например полученные {@link AdminProvider.getAdmin}.
51
+ *
52
+ * @param admin Данные администратора для сохранения.
53
+ * @param validationFieldResultData Список полей, для которых необходимо
54
+ * установить данные об ошибках валидации
55
+ * в случае ошибок в запросах.
56
+ *
57
+ * @see /doc/api/internal#/operations/api_internal_admins_update
58
+ */
59
+ updateAdmin(admin: IUserSaveData<IAdminFullInfo>, validationFieldResultData?: Record<string, IFieldValidationResultData>): Promise<IAdminFullInfo>;
60
+ /**
61
+ * Удаляет администратора.
62
+ *
63
+ * @param adminId Идентификатор администратора.
64
+ *
65
+ * @see /doc/api/internal#/operations/api_internal_admins_delete
66
+ */
67
+ deleteAdmin(adminId: number): Promise<void>;
68
+ }
69
+ //# sourceMappingURL=admin-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-provider.d.ts","sourceRoot":"","sources":["../../../../src/admins/providers/admin-provider.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,YAAY,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5K;;GAEG;AACH,qBAAa,aAAc,SAAQ,sBAAsB;IACrD;;;;OAIG;IACH,SAAS,CAAC,MAAM,CAAC,2BAA2B,CAAC,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAa3G;;;;;;;;;OASG;IACI,aAAa,CAChB,OAAO,CAAC,EAAE,YAAY,EACtB,UAAU,CAAC,EAAE,kBAAkB,EAAE,GAAG,kBAAkB,EACtD,gBAAgB,CAAC,EAAE,wBAAwB,EAC3C,MAAM,CAAC,EAAE,WAAW,GACrB,OAAO,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;IAI/C;;;;;;;OAOG;IACI,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,GAAE,OAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAIhG;;;;;;;;;OASG;IACI,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,EAAE,yBAAyB,GAAE,MAAM,CAAC,MAAM,EAAE,0BAA0B,CAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAS7J;;;;;;;;;;;;OAYG;IACI,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,EAAE,yBAAyB,GAAE,MAAM,CAAC,MAAM,EAAE,0BAA0B,CAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAS7J;;;;;;OAMG;IACI,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGrD"}
@@ -0,0 +1,2 @@
1
+ export * from './admin-provider';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/admins/providers/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * from '@snabcentr/common-core';
2
+ export * from './admins';
2
3
  export * from './blog';
3
4
  export * from './cart';
4
5
  export * from './catalog';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@snabcentr/common-lib",
3
- "version": "4.4.0-dev",
3
+ "version": "4.5.0-dev",
4
4
  "description": "Библиотека общих классов, используемых во всех проектах Снабцентр.",
5
5
  "keywords": [],
6
6
  "author": "Sergey S. Smirnov <dev@snabcentr.com>",