@ackplus/nest-auth 2.0.0-beta.1 → 2.0.0-beta.12

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 (108) hide show
  1. package/dist/lib/admin-console/admin-console.module.js +1 -1
  2. package/dist/lib/admin-console/admin-console.module.js.map +1 -1
  3. package/dist/lib/admin-console/controllers/admin-users.controller.d.ts +5 -5
  4. package/dist/lib/admin-console/controllers/admin-users.controller.d.ts.map +1 -1
  5. package/dist/lib/admin-console/controllers/admin-users.controller.js +4 -6
  6. package/dist/lib/admin-console/controllers/admin-users.controller.js.map +1 -1
  7. package/dist/lib/admin-console/services/admin-user-management.service.d.ts +1 -1
  8. package/dist/lib/admin-console/services/admin-user-management.service.d.ts.map +1 -1
  9. package/dist/lib/admin-console/services/admin-user-management.service.js +1 -1
  10. package/dist/lib/admin-console/services/admin-user-management.service.js.map +1 -1
  11. package/dist/lib/admin-console/static/index.html +1 -1
  12. package/dist/lib/admin-console/static/nest-auth.json +1 -1
  13. package/dist/lib/auth/entities/otp.entity.d.ts +1 -0
  14. package/dist/lib/auth/entities/otp.entity.d.ts.map +1 -1
  15. package/dist/lib/auth/entities/otp.entity.js +13 -9
  16. package/dist/lib/auth/entities/otp.entity.js.map +1 -1
  17. package/dist/lib/auth/guards/auth.guard.js +1 -1
  18. package/dist/lib/auth/guards/auth.guard.js.map +1 -1
  19. package/dist/lib/auth/services/auth.service.d.ts +3 -2
  20. package/dist/lib/auth/services/auth.service.d.ts.map +1 -1
  21. package/dist/lib/auth/services/auth.service.js +138 -31
  22. package/dist/lib/auth/services/auth.service.js.map +1 -1
  23. package/dist/lib/core/entities.d.ts +5 -3
  24. package/dist/lib/core/entities.d.ts.map +1 -1
  25. package/dist/lib/core/entities.js +5 -2
  26. package/dist/lib/core/entities.js.map +1 -1
  27. package/dist/lib/core/interfaces/auth-module-options.interface.d.ts +12 -0
  28. package/dist/lib/core/interfaces/auth-module-options.interface.d.ts.map +1 -1
  29. package/dist/lib/core/interfaces/token-payload.interface.d.ts +1 -0
  30. package/dist/lib/core/interfaces/token-payload.interface.d.ts.map +1 -1
  31. package/dist/lib/core/providers/passwordless-auth.provider.d.ts +2 -1
  32. package/dist/lib/core/providers/passwordless-auth.provider.d.ts.map +1 -1
  33. package/dist/lib/core/providers/passwordless-auth.provider.js +1 -0
  34. package/dist/lib/core/providers/passwordless-auth.provider.js.map +1 -1
  35. package/dist/lib/core/services/auth-config.service.d.ts.map +1 -1
  36. package/dist/lib/core/services/auth-config.service.js +6 -0
  37. package/dist/lib/core/services/auth-config.service.js.map +1 -1
  38. package/dist/lib/request-context/request-context.d.ts +1 -1
  39. package/dist/lib/request-context/request-context.d.ts.map +1 -1
  40. package/dist/lib/request-context/request-context.js +1 -1
  41. package/dist/lib/request-context/request-context.js.map +1 -1
  42. package/dist/lib/role/entities/role.entity.d.ts +3 -3
  43. package/dist/lib/role/entities/role.entity.d.ts.map +1 -1
  44. package/dist/lib/role/entities/role.entity.js +7 -18
  45. package/dist/lib/role/entities/role.entity.js.map +1 -1
  46. package/dist/lib/role/utils/access-role-resolver.util.d.ts +20 -0
  47. package/dist/lib/role/utils/access-role-resolver.util.d.ts.map +1 -0
  48. package/dist/lib/role/utils/access-role-resolver.util.js +63 -0
  49. package/dist/lib/role/utils/access-role-resolver.util.js.map +1 -0
  50. package/dist/lib/session/services/session-manager.service.d.ts +1 -0
  51. package/dist/lib/session/services/session-manager.service.d.ts.map +1 -1
  52. package/dist/lib/session/services/session-manager.service.js +18 -3
  53. package/dist/lib/session/services/session-manager.service.js.map +1 -1
  54. package/dist/lib/tenant/entities/tenant.entity.d.ts +1 -1
  55. package/dist/lib/tenant/entities/tenant.entity.d.ts.map +1 -1
  56. package/dist/lib/tenant/entities/tenant.entity.js +1 -1
  57. package/dist/lib/tenant/entities/tenant.entity.js.map +1 -1
  58. package/dist/lib/tenant/index.d.ts +1 -1
  59. package/dist/lib/tenant/index.d.ts.map +1 -1
  60. package/dist/lib/tenant/index.js +1 -1
  61. package/dist/lib/tenant/index.js.map +1 -1
  62. package/dist/lib/tenant/services/tenant.service.d.ts +1 -0
  63. package/dist/lib/tenant/services/tenant.service.d.ts.map +1 -1
  64. package/dist/lib/tenant/services/tenant.service.js +5 -0
  65. package/dist/lib/tenant/services/tenant.service.js.map +1 -1
  66. package/dist/lib/tenant/tenant-context/services/base-tenant-context.service.d.ts +1 -1
  67. package/dist/lib/tenant/tenant-context/services/base-tenant-context.service.d.ts.map +1 -1
  68. package/dist/lib/tenant/tenant-context/services/disabled-tenant-context.service.d.ts +1 -1
  69. package/dist/lib/tenant/tenant-context/services/disabled-tenant-context.service.d.ts.map +1 -1
  70. package/dist/lib/tenant/tenant-context/tenant-context.interface.d.ts +1 -1
  71. package/dist/lib/tenant/tenant-context/tenant-context.interface.d.ts.map +1 -1
  72. package/dist/lib/user/entities/platform-access.entity.d.ts +16 -0
  73. package/dist/lib/user/entities/platform-access.entity.d.ts.map +1 -0
  74. package/dist/lib/user/entities/platform-access.entity.js +89 -0
  75. package/dist/lib/user/entities/platform-access.entity.js.map +1 -0
  76. package/dist/lib/{tenant → user}/entities/user-access.entity.d.ts +5 -2
  77. package/dist/lib/user/entities/user-access.entity.d.ts.map +1 -0
  78. package/dist/lib/{tenant → user}/entities/user-access.entity.js +29 -4
  79. package/dist/lib/user/entities/user-access.entity.js.map +1 -0
  80. package/dist/lib/user/entities/user.entity.d.ts +5 -7
  81. package/dist/lib/user/entities/user.entity.d.ts.map +1 -1
  82. package/dist/lib/user/entities/user.entity.js +47 -47
  83. package/dist/lib/user/entities/user.entity.js.map +1 -1
  84. package/dist/lib/user/services/access-key.service.d.ts.map +1 -1
  85. package/dist/lib/user/services/access-key.service.js +4 -3
  86. package/dist/lib/user/services/access-key.service.js.map +1 -1
  87. package/dist/lib/user/services/user.service.d.ts +1 -2
  88. package/dist/lib/user/services/user.service.d.ts.map +1 -1
  89. package/dist/lib/user/services/user.service.js +17 -56
  90. package/dist/lib/user/services/user.service.js.map +1 -1
  91. package/dist/lib/user/user.module.d.ts.map +1 -1
  92. package/dist/lib/user/user.module.js +3 -2
  93. package/dist/lib/user/user.module.js.map +1 -1
  94. package/dist/lib/utils/has-token.d.ts +0 -1
  95. package/dist/lib/utils/has-token.d.ts.map +1 -1
  96. package/dist/lib/utils/has-token.js +1 -2
  97. package/dist/lib/utils/has-token.js.map +1 -1
  98. package/dist/lib/utils/index.d.ts +1 -0
  99. package/dist/lib/utils/index.d.ts.map +1 -1
  100. package/dist/lib/utils/index.js +1 -0
  101. package/dist/lib/utils/index.js.map +1 -1
  102. package/dist/lib/utils/tenant.d.ts +3 -0
  103. package/dist/lib/utils/tenant.d.ts.map +1 -0
  104. package/dist/lib/utils/tenant.js +21 -0
  105. package/dist/lib/utils/tenant.js.map +1 -0
  106. package/package.json +2 -2
  107. package/dist/lib/tenant/entities/user-access.entity.d.ts.map +0 -1
  108. package/dist/lib/tenant/entities/user-access.entity.js.map +0 -1
@@ -1,5 +1,4 @@
1
1
  export declare const SHA256_HEX_LENGTH = 64;
2
- export declare const DEFAULT_LOOKUP_HEX_LENGTH = 32;
3
2
  export declare function timingSafeEqualHex(aHex: string, bHex: string): boolean;
4
3
  export declare function hmacSha256Hex(secret: string, message: string): string;
5
4
  export declare function hexPrefix(hex: string, length: number): string;
@@ -1 +1 @@
1
- {"version":3,"file":"has-token.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/has-token.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAM5C,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAStE;AAKD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAErE;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAE7D"}
1
+ {"version":3,"file":"has-token.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/has-token.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAMpC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAStE;AAKD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAErE;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAE7D"}
@@ -1,12 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_LOOKUP_HEX_LENGTH = exports.SHA256_HEX_LENGTH = void 0;
3
+ exports.SHA256_HEX_LENGTH = void 0;
4
4
  exports.timingSafeEqualHex = timingSafeEqualHex;
5
5
  exports.hmacSha256Hex = hmacSha256Hex;
6
6
  exports.hexPrefix = hexPrefix;
7
7
  const crypto_1 = require("crypto");
8
8
  exports.SHA256_HEX_LENGTH = 64;
9
- exports.DEFAULT_LOOKUP_HEX_LENGTH = 32;
10
9
  function timingSafeEqualHex(aHex, bHex) {
11
10
  try {
12
11
  const a = Buffer.from(aHex, 'hex');
@@ -1 +1 @@
1
- {"version":3,"file":"has-token.js","sourceRoot":"","sources":["../../../src/lib/utils/has-token.ts"],"names":[],"mappings":";;;AASA,gDASC;AAKD,sCAEC;AAED,8BAEC;AA7BD,mCAAqD;AAExC,QAAA,iBAAiB,GAAG,EAAE,CAAC;AACvB,QAAA,yBAAyB,GAAG,EAAE,CAAC;AAM5C,SAAgB,kBAAkB,CAAC,IAAY,EAAE,IAAY;IACzD,IAAI,CAAC;QACD,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QACxC,OAAO,IAAA,wBAAe,EAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC;AAKD,SAAgB,aAAa,CAAC,MAAc,EAAE,OAAe;IACzD,OAAO,IAAA,mBAAU,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAgB,SAAS,CAAC,GAAW,EAAE,MAAc;IACjD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"has-token.js","sourceRoot":"","sources":["../../../src/lib/utils/has-token.ts"],"names":[],"mappings":";;;AAQA,gDASC;AAKD,sCAEC;AAED,8BAEC;AA5BD,mCAAqD;AAExC,QAAA,iBAAiB,GAAG,EAAE,CAAC;AAMpC,SAAgB,kBAAkB,CAAC,IAAY,EAAE,IAAY;IACzD,IAAI,CAAC;QACD,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QACxC,OAAO,IAAA,wBAAe,EAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC;AAKD,SAAgB,aAAa,CAAC,MAAc,EAAE,OAAe;IACzD,OAAO,IAAA,mBAAU,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAgB,SAAS,CAAC,GAAW,EAAE,MAAc;IACjD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAChC,CAAC"}
@@ -6,4 +6,5 @@ export * from './normalize.util';
6
6
  export * from './slug.util';
7
7
  export * from './security.util';
8
8
  export * from './has-token';
9
+ export * from './tenant';
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
@@ -22,4 +22,5 @@ __exportStar(require("./normalize.util"), exports);
22
22
  __exportStar(require("./slug.util"), exports);
23
23
  __exportStar(require("./security.util"), exports);
24
24
  __exportStar(require("./has-token"), exports);
25
+ __exportStar(require("./tenant"), exports);
25
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,gDAA8B;AAC9B,8CAA4B;AAC5B,mDAAiC;AACjC,mDAAiC;AACjC,8CAA4B;AAC5B,kDAAgC;AAChC,8CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,gDAA8B;AAC9B,8CAA4B;AAC5B,mDAAiC;AACjC,mDAAiC;AACjC,8CAA4B;AAC5B,kDAAgC;AAChC,8CAA4B;AAC5B,2CAAyB"}
@@ -0,0 +1,3 @@
1
+ import { IAuthModuleOptions } from "../core";
2
+ export declare function requiredTenant(tenantConfig: IAuthModuleOptions['tenant'], tenantId: string | null, throwError?: boolean): boolean;
3
+ //# sourceMappingURL=tenant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tenant.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/tenant.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C,wBAAgB,cAAc,CAAC,YAAY,EAAE,kBAAkB,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,UAAU,GAAE,OAAc,GAAG,OAAO,CAavI"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.requiredTenant = requiredTenant;
4
+ const nest_auth_contracts_1 = require("@ackplus/nest-auth-contracts");
5
+ const common_1 = require("@nestjs/common");
6
+ const auth_constants_1 = require("../auth.constants");
7
+ function requiredTenant(tenantConfig, tenantId, throwError = true) {
8
+ const tenantEnabled = tenantConfig?.enabled;
9
+ const tenantMode = tenantConfig?.mode;
10
+ if (throwError && tenantEnabled && tenantMode === nest_auth_contracts_1.TenantModeEnum.ISOLATED && !tenantId) {
11
+ throw new common_1.BadRequestException({
12
+ message: 'Tenant ID is required',
13
+ code: auth_constants_1.ERROR_CODES.TENANT_ID_REQUIRED,
14
+ });
15
+ }
16
+ if (tenantEnabled && tenantMode === nest_auth_contracts_1.TenantModeEnum.ISOLATED) {
17
+ return true;
18
+ }
19
+ return false;
20
+ }
21
+ //# sourceMappingURL=tenant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tenant.js","sourceRoot":"","sources":["../../../src/lib/utils/tenant.ts"],"names":[],"mappings":";;AAKA,wCAaC;AAlBD,sEAA8D;AAC9D,2CAAqD;AACrD,sDAAgD;AAGhD,SAAgB,cAAc,CAAC,YAA0C,EAAE,QAAuB,EAAE,aAAsB,IAAI;IAC1H,MAAM,aAAa,GAAG,YAAY,EAAE,OAAO,CAAC;IAC5C,MAAM,UAAU,GAAG,YAAY,EAAE,IAAI,CAAC;IACtC,IAAI,UAAU,IAAI,aAAa,IAAI,UAAU,KAAK,oCAAc,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;QACrF,MAAM,IAAI,4BAAmB,CAAC;YAC1B,OAAO,EAAE,uBAAuB;YAChC,IAAI,EAAE,4BAAW,CAAC,kBAAkB;SACvC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,aAAa,IAAI,UAAU,KAAK,oCAAc,CAAC,QAAQ,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAA;IACf,CAAC;IACD,OAAO,KAAK,CAAA;AAChB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ackplus/nest-auth",
3
- "version": "2.0.0-beta.1",
3
+ "version": "2.0.0-beta.12",
4
4
  "description": "Powerful CRUD operations for NestJS with TypeORM - automatic REST endpoints, advanced filtering, relations, pagination, and more",
5
5
  "type": "commonjs",
6
6
  "main": "./dist/index.js",
@@ -39,7 +39,7 @@
39
39
  "qrcode": "^1.5.0",
40
40
  "qs": "^6.11.2",
41
41
  "speakeasy": "^2.0.0",
42
- "@ackplus/nest-auth-contracts": "2.0.0-beta.1"
42
+ "@ackplus/nest-auth-contracts": "2.0.0-beta.12"
43
43
  },
44
44
  "peerDependencies": {
45
45
  "@nestjs/common": "^10 || ^11",
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-access.entity.d.ts","sourceRoot":"","sources":["../../../../src/lib/tenant/entities/user-access.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAYH,UAAU,EACb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,qBASa,kBAAmB,SAAQ,UAAU;IAE9C,EAAE,EAAE,MAAM,CAAC;IAKX,MAAM,EAAE,MAAM,CAAC;IAKf,QAAQ,EAAE,MAAM,CAAC;IAGjB,IAAI,EAAE,YAAY,CAAC;IAGnB,MAAM,EAAE,cAAc,CAAC;IASvB,KAAK,EAAE,YAAY,EAAE,CAAC;IAGtB,QAAQ,EAAE,OAAO,CAAC;IAGlB,SAAS,EAAE,OAAO,CAAC;IAGnB,MAAM,EAAE,MAAM,CAAC;IAGf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAG/B,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;CACnB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-access.entity.js","sourceRoot":"","sources":["../../../../src/lib/tenant/entities/user-access.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAaiB;AACjB,mDAAiD;AACjD,iEAA+D;AAC/D,iEAA+D;AAWxD,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,oBAAU;IAE9C,EAAE,CAAS;IAKX,MAAM,CAAS;IAKf,QAAQ,CAAS;IAGjB,IAAI,CAAe;IAGnB,MAAM,CAAiB;IASvB,KAAK,CAAiB;IAGtB,QAAQ,CAAU;IAGlB,SAAS,CAAU;IAGnB,MAAM,CAAS;IAGf,QAAQ,CAAuB;IAG/B,SAAS,CAAO;IAGhB,SAAS,CAAO;CACnB,CAAA;AA9CY,gDAAkB;AAE3B;IADC,IAAA,gCAAsB,EAAC,MAAM,CAAC;;8CACpB;AAKX;IAHC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC3B,IAAA,eAAK,GAAE;IACP,IAAA,oBAAU,EAAC,CAAC,MAA0B,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;;kDACzC;AAKf;IAHC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC1B,IAAA,eAAK,GAAE;IACP,IAAA,oBAAU,EAAC,CAAC,MAA0B,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;;oDACzC;AAGjB;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,0BAAY,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;8BACjD,0BAAY;gDAAC;AAGnB;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,8BAAc,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACjE,8BAAc;kDAAC;AASvB;IANC,IAAA,oBAAU,EAAC,GAAG,EAAE,CAAC,0BAAY,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAClF,IAAA,mBAAS,EAAC;QACP,IAAI,EAAE,6BAA6B;QACnC,UAAU,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,IAAI,EAAE;QACxE,iBAAiB,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,IAAI,EAAE;KAC7E,CAAC;;iDACoB;AAGtB;IADC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;oDACR;AAGlB;IADC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;qDACR;AAGnB;IADC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;;kDACf;AAGf;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;oDAChC;AAG/B;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;qDAAC;AAGhB;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;qDAAC;6BA7CP,kBAAkB;IAT9B,IAAA,gBAAM,EAAC,yBAAyB,CAAC;IACjC,IAAA,eAAK,EAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE;QACtD,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,wBAAwB;KAClC,CAAC;IACD,IAAA,eAAK,EAAC,qBAAqB,EAAE,CAAC,QAAQ,CAAC,EAAE;QACtC,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,oBAAoB;KAC9B,CAAC;GACW,kBAAkB,CA8C9B"}