@floristcloud/api-lib 1.2.135 → 1.2.137

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.
@@ -21,6 +21,16 @@ var PermissionKeyEnum;
21
21
  PermissionKeyEnum["PAGE_PRE_ORDERS_VIEW"] = "page.pre_orders.view";
22
22
  PermissionKeyEnum["PAGE_REPORT_VIEW"] = "page.report.view";
23
23
  PermissionKeyEnum["PAGE_STAFF_VIEW"] = "page.staff.view";
24
+ PermissionKeyEnum["ORDER_CREATE"] = "order.create";
25
+ PermissionKeyEnum["ORDER_EDIT"] = "order.edit";
26
+ PermissionKeyEnum["ORDER_DELETE"] = "order.delete";
27
+ // Order-level money edits: discount and delivery cost (скидка и стоимость доставки).
28
+ PermissionKeyEnum["ORDER_PRICE_EDIT"] = "order.price.edit";
29
+ PermissionKeyEnum["ORDER_STATUS_CHANGE"] = "order.status.change";
30
+ PermissionKeyEnum["WRITE_OFF_CREATE"] = "write_off.create";
31
+ PermissionKeyEnum["WRITE_OFF_DELETE"] = "write_off.delete";
32
+ // Moving a write-off out of PENDING (принятие / отклонение списания).
33
+ PermissionKeyEnum["WRITE_OFF_APPROVE"] = "write_off.approve";
24
34
  })(PermissionKeyEnum || (exports.PermissionKeyEnum = PermissionKeyEnum = {}));
25
35
  exports.PERMISSION_KEY_LIST = [
26
36
  PermissionKeyEnum.PRODUCT_VIEW,
@@ -39,4 +49,12 @@ exports.PERMISSION_KEY_LIST = [
39
49
  PermissionKeyEnum.PAGE_PRE_ORDERS_VIEW,
40
50
  PermissionKeyEnum.PAGE_REPORT_VIEW,
41
51
  PermissionKeyEnum.PAGE_STAFF_VIEW,
52
+ PermissionKeyEnum.ORDER_CREATE,
53
+ PermissionKeyEnum.ORDER_EDIT,
54
+ PermissionKeyEnum.ORDER_DELETE,
55
+ PermissionKeyEnum.ORDER_PRICE_EDIT,
56
+ PermissionKeyEnum.ORDER_STATUS_CHANGE,
57
+ PermissionKeyEnum.WRITE_OFF_CREATE,
58
+ PermissionKeyEnum.WRITE_OFF_DELETE,
59
+ PermissionKeyEnum.WRITE_OFF_APPROVE,
42
60
  ];
@@ -6,6 +6,8 @@ var UserRoleEnum;
6
6
  UserRoleEnum["ADMIN"] = "ADMIN";
7
7
  UserRoleEnum["MANAGER"] = "MANAGER";
8
8
  UserRoleEnum["EMPLOYEE"] = "EMPLOYEE";
9
+ // Warehouse worker: the same panel access as EMPLOYEE, but always sees every client of the company.
10
+ UserRoleEnum["WAREHOUSE_EMPLOYEE"] = "WAREHOUSE_EMPLOYEE";
9
11
  UserRoleEnum["BUYER"] = "BUYER";
10
12
  })(UserRoleEnum || (exports.UserRoleEnum = UserRoleEnum = {}));
11
13
  var UserPanelRoleEnum;
@@ -13,5 +15,11 @@ var UserPanelRoleEnum;
13
15
  UserPanelRoleEnum["ADMIN"] = "ADMIN";
14
16
  UserPanelRoleEnum["MANAGER"] = "MANAGER";
15
17
  UserPanelRoleEnum["EMPLOYEE"] = "EMPLOYEE";
18
+ UserPanelRoleEnum["WAREHOUSE_EMPLOYEE"] = "WAREHOUSE_EMPLOYEE";
16
19
  })(UserPanelRoleEnum || (exports.UserPanelRoleEnum = UserPanelRoleEnum = {}));
17
- exports.USER_PANEL_ROLE_LIST = [UserRoleEnum.ADMIN, UserRoleEnum.MANAGER, UserRoleEnum.EMPLOYEE];
20
+ exports.USER_PANEL_ROLE_LIST = [
21
+ UserRoleEnum.ADMIN,
22
+ UserRoleEnum.MANAGER,
23
+ UserRoleEnum.EMPLOYEE,
24
+ UserRoleEnum.WAREHOUSE_EMPLOYEE,
25
+ ];
@@ -9,7 +9,11 @@ const userRole_enum_1 = require("../../enum/userRole.enum");
9
9
  * it always bypasses UI restrictions, so any ADMIN entry in a policy is dead
10
10
  * config. The admin panel must not offer it, and the sanitizer drops it.
11
11
  */
12
- exports.CONFIGURABLE_PANEL_ROLE_LIST = [userRole_enum_1.UserPanelRoleEnum.MANAGER, userRole_enum_1.UserPanelRoleEnum.EMPLOYEE];
12
+ exports.CONFIGURABLE_PANEL_ROLE_LIST = [
13
+ userRole_enum_1.UserPanelRoleEnum.MANAGER,
14
+ userRole_enum_1.UserPanelRoleEnum.EMPLOYEE,
15
+ userRole_enum_1.UserPanelRoleEnum.WAREHOUSE_EMPLOYEE,
16
+ ];
13
17
  /**
14
18
  * A sparse map of permission key -> boolean.
15
19
  * Semantics are default-allow: a missing key means "allowed", so in practice
@@ -10,7 +10,8 @@ const product_image_duplicate_forecast_schema_1 = require("./product-image-dupli
10
10
  exports.NormalizationSummarySchema = zod_1.z.object({
11
11
  // Уникальных написаний по каждому атрибуту.
12
12
  uniqueValues: zod_1.z.partialRecord(zod_1.z.nativeEnum(normalized_attribute_enum_1.NormalizedAttributeEnum), zod_1.z.number()),
13
- // Строк к изменению по каждой таблице, если принять все предложения.
13
+ // Строк к изменению по каждой таблице, если принять все предложения. Считается по строкам:
14
+ // строка, у которой меняются и цвет, и страна, — это одна строка, а не две.
14
15
  affectedRows: normalization_row_count_schema_1.NormalizationRowCountSchema,
15
16
  // Строк, которые прогон пропустит из-за того, что позиция закрыта. Нужно фронту, чтобы
16
17
  // предложить включить их флагом: по умолчанию закрытая история не трогается.
@@ -17,6 +17,16 @@ export enum PermissionKeyEnum {
17
17
  PAGE_PRE_ORDERS_VIEW = 'page.pre_orders.view',
18
18
  PAGE_REPORT_VIEW = 'page.report.view',
19
19
  PAGE_STAFF_VIEW = 'page.staff.view',
20
+ ORDER_CREATE = 'order.create',
21
+ ORDER_EDIT = 'order.edit',
22
+ ORDER_DELETE = 'order.delete',
23
+ // Order-level money edits: discount and delivery cost (скидка и стоимость доставки).
24
+ ORDER_PRICE_EDIT = 'order.price.edit',
25
+ ORDER_STATUS_CHANGE = 'order.status.change',
26
+ WRITE_OFF_CREATE = 'write_off.create',
27
+ WRITE_OFF_DELETE = 'write_off.delete',
28
+ // Moving a write-off out of PENDING (принятие / отклонение списания).
29
+ WRITE_OFF_APPROVE = 'write_off.approve',
20
30
  }
21
31
 
22
32
  export const PERMISSION_KEY_LIST: PermissionKeyEnum[] = [
@@ -36,4 +46,12 @@ export const PERMISSION_KEY_LIST: PermissionKeyEnum[] = [
36
46
  PermissionKeyEnum.PAGE_PRE_ORDERS_VIEW,
37
47
  PermissionKeyEnum.PAGE_REPORT_VIEW,
38
48
  PermissionKeyEnum.PAGE_STAFF_VIEW,
49
+ PermissionKeyEnum.ORDER_CREATE,
50
+ PermissionKeyEnum.ORDER_EDIT,
51
+ PermissionKeyEnum.ORDER_DELETE,
52
+ PermissionKeyEnum.ORDER_PRICE_EDIT,
53
+ PermissionKeyEnum.ORDER_STATUS_CHANGE,
54
+ PermissionKeyEnum.WRITE_OFF_CREATE,
55
+ PermissionKeyEnum.WRITE_OFF_DELETE,
56
+ PermissionKeyEnum.WRITE_OFF_APPROVE,
39
57
  ];
@@ -2,6 +2,8 @@ export enum UserRoleEnum {
2
2
  ADMIN = 'ADMIN',
3
3
  MANAGER = 'MANAGER',
4
4
  EMPLOYEE = 'EMPLOYEE',
5
+ // Warehouse worker: the same panel access as EMPLOYEE, but always sees every client of the company.
6
+ WAREHOUSE_EMPLOYEE = 'WAREHOUSE_EMPLOYEE',
5
7
  BUYER = 'BUYER',
6
8
  }
7
9
 
@@ -9,6 +11,12 @@ export enum UserPanelRoleEnum {
9
11
  ADMIN = 'ADMIN',
10
12
  MANAGER = 'MANAGER',
11
13
  EMPLOYEE = 'EMPLOYEE',
14
+ WAREHOUSE_EMPLOYEE = 'WAREHOUSE_EMPLOYEE',
12
15
  }
13
16
 
14
- export const USER_PANEL_ROLE_LIST: UserRoleEnum[] = [UserRoleEnum.ADMIN, UserRoleEnum.MANAGER, UserRoleEnum.EMPLOYEE];
17
+ export const USER_PANEL_ROLE_LIST: UserRoleEnum[] = [
18
+ UserRoleEnum.ADMIN,
19
+ UserRoleEnum.MANAGER,
20
+ UserRoleEnum.EMPLOYEE,
21
+ UserRoleEnum.WAREHOUSE_EMPLOYEE,
22
+ ];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@floristcloud/api-lib",
3
- "version": "1.2.135",
3
+ "version": "1.2.137",
4
4
  "description": "",
5
5
  "main": "./build/index.js",
6
6
  "scripts": {
@@ -7,7 +7,11 @@ import { UserPanelRoleEnum } from '../../enum/userRole.enum';
7
7
  * it always bypasses UI restrictions, so any ADMIN entry in a policy is dead
8
8
  * config. The admin panel must not offer it, and the sanitizer drops it.
9
9
  */
10
- export const CONFIGURABLE_PANEL_ROLE_LIST: UserPanelRoleEnum[] = [UserPanelRoleEnum.MANAGER, UserPanelRoleEnum.EMPLOYEE];
10
+ export const CONFIGURABLE_PANEL_ROLE_LIST: UserPanelRoleEnum[] = [
11
+ UserPanelRoleEnum.MANAGER,
12
+ UserPanelRoleEnum.EMPLOYEE,
13
+ UserPanelRoleEnum.WAREHOUSE_EMPLOYEE,
14
+ ];
11
15
 
12
16
  /**
13
17
  * A sparse map of permission key -> boolean.
@@ -8,7 +8,8 @@ import { ProductImageDuplicateForecastSchema } from './product-image-duplicate-f
8
8
  export const NormalizationSummarySchema = z.object({
9
9
  // Уникальных написаний по каждому атрибуту.
10
10
  uniqueValues: z.partialRecord(z.nativeEnum(NormalizedAttributeEnum), z.number()),
11
- // Строк к изменению по каждой таблице, если принять все предложения.
11
+ // Строк к изменению по каждой таблице, если принять все предложения. Считается по строкам:
12
+ // строка, у которой меняются и цвет, и страна, — это одна строка, а не две.
12
13
  affectedRows: NormalizationRowCountSchema,
13
14
  // Строк, которые прогон пропустит из-за того, что позиция закрыта. Нужно фронту, чтобы
14
15
  // предложить включить их флагом: по умолчанию закрытая история не трогается.