spotcharge-types 1.0.319 → 1.0.321

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 (36) hide show
  1. package/dist/models/api/index.d.ts +1 -0
  2. package/dist/models/api/index.d.ts.map +1 -1
  3. package/dist/models/api/index.js +15 -0
  4. package/dist/models/api/index.js.map +1 -1
  5. package/dist/models/api/users/admin-me.api.model.d.ts +32 -0
  6. package/dist/models/api/users/admin-me.api.model.d.ts.map +1 -0
  7. package/dist/models/api/users/admin-me.api.model.js +3 -0
  8. package/dist/models/api/users/admin-me.api.model.js.map +1 -0
  9. package/dist/models/api/users/admin-role.api.model.d.ts +39 -0
  10. package/dist/models/api/users/admin-role.api.model.d.ts.map +1 -0
  11. package/dist/models/api/users/admin-role.api.model.js +3 -0
  12. package/dist/models/api/users/admin-role.api.model.js.map +1 -0
  13. package/dist/models/api/users/admin-user.api.model.d.ts +61 -0
  14. package/dist/models/api/users/admin-user.api.model.d.ts.map +1 -0
  15. package/dist/models/api/users/admin-user.api.model.js +3 -0
  16. package/dist/models/api/users/admin-user.api.model.js.map +1 -0
  17. package/dist/models/api/users/index.d.ts +6 -0
  18. package/dist/models/api/users/index.d.ts.map +1 -0
  19. package/dist/models/api/users/index.js +22 -0
  20. package/dist/models/api/users/index.js.map +1 -0
  21. package/dist/models/api/users/permission-group.api.model.d.ts +24 -0
  22. package/dist/models/api/users/permission-group.api.model.d.ts.map +1 -0
  23. package/dist/models/api/users/permission-group.api.model.js +3 -0
  24. package/dist/models/api/users/permission-group.api.model.js.map +1 -0
  25. package/dist/models/api/users/shared.api.model.d.ts +23 -0
  26. package/dist/models/api/users/shared.api.model.d.ts.map +1 -0
  27. package/dist/models/api/users/shared.api.model.js +3 -0
  28. package/dist/models/api/users/shared.api.model.js.map +1 -0
  29. package/package.json +1 -1
  30. package/src/models/api/index.ts +2 -1
  31. package/src/models/api/users/admin-me.api.model.ts +32 -0
  32. package/src/models/api/users/admin-role.api.model.ts +42 -0
  33. package/src/models/api/users/admin-user.api.model.ts +65 -0
  34. package/src/models/api/users/index.ts +5 -0
  35. package/src/models/api/users/permission-group.api.model.ts +28 -0
  36. package/src/models/api/users/shared.api.model.ts +25 -0
@@ -57,4 +57,5 @@ export { ContactSubmissionApiModel } from './contact-submission.api.model';
57
57
  export { PartnerInquiryApiModel, PartnerInquiryInvestmentRange, PartnerInquiryLocationReadiness, PartnerInquiryTimeline } from './partner-inquiry.api.model';
58
58
  export { SettlementApiModel } from './settlement.api.model';
59
59
  export { UserFavoriteStationApiModel } from './user-favorite-station.api.model';
60
+ export * from './users';
60
61
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/models/api/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/models/api/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,18 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  Object.defineProperty(exports, "__esModule", { value: true });
3
17
  exports.PartnerInquiryTimeline = exports.PartnerInquiryLocationReadiness = exports.PartnerInquiryInvestmentRange = exports.StationSearchSource = void 0;
4
18
  var enum_1 = require("../../enum");
@@ -7,4 +21,5 @@ var partner_inquiry_api_model_1 = require("./partner-inquiry.api.model");
7
21
  Object.defineProperty(exports, "PartnerInquiryInvestmentRange", { enumerable: true, get: function () { return partner_inquiry_api_model_1.PartnerInquiryInvestmentRange; } });
8
22
  Object.defineProperty(exports, "PartnerInquiryLocationReadiness", { enumerable: true, get: function () { return partner_inquiry_api_model_1.PartnerInquiryLocationReadiness; } });
9
23
  Object.defineProperty(exports, "PartnerInquiryTimeline", { enumerable: true, get: function () { return partner_inquiry_api_model_1.PartnerInquiryTimeline; } });
24
+ __exportStar(require("./users"), exports);
10
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/api/index.ts"],"names":[],"mappings":";;;AAoCA,mCAA+C;AAAvC,2GAAA,mBAAmB,OAAA;AA4B3B,yEAA2J;AAA3H,0IAAA,6BAA6B,OAAA;AAAE,4IAAA,+BAA+B,OAAA;AAAE,mIAAA,sBAAsB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAoCA,mCAA+C;AAAvC,2GAAA,mBAAmB,OAAA;AA4B3B,yEAA2J;AAA3H,0IAAA,6BAA6B,OAAA;AAAE,4IAAA,+BAA+B,OAAA;AAAE,mIAAA,sBAAsB,OAAA;AAGtH,0CAAwB"}
@@ -0,0 +1,32 @@
1
+ import { PermissionKeys } from '../../../consts';
2
+ import { AuditActor } from '../../audit-actor.model';
3
+ import { UserRolePermission } from '../../user-role-permission';
4
+ import { AdminRoleRefApiModel, IsoDateTime } from './shared.api.model';
5
+ /** GET /api/users/me/admin */
6
+ export interface AdminMeApiModel {
7
+ /** profiles.id (uuid). */
8
+ id: string;
9
+ firebaseUid: string;
10
+ /** admin_assignments.id (uuid). */
11
+ assignmentId: string;
12
+ email: string;
13
+ firstName: string;
14
+ lastName?: string;
15
+ displayName?: string;
16
+ phoneNumber: unknown;
17
+ photoURL: string | null;
18
+ gender: string;
19
+ color: string;
20
+ emailVerified: boolean;
21
+ isProfileComplete: boolean;
22
+ roles: AdminRoleRefApiModel;
23
+ permissions: Record<PermissionKeys, UserRolePermission> | null;
24
+ createdAt: IsoDateTime;
25
+ updatedAt: IsoDateTime;
26
+ deletedAt: IsoDateTime | null;
27
+ isDeleted: boolean;
28
+ createdBy: AuditActor | null;
29
+ updatedBy: AuditActor | null;
30
+ deletedBy: AuditActor | null;
31
+ }
32
+ //# sourceMappingURL=admin-me.api.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-me.api.model.d.ts","sourceRoot":"","sources":["../../../../src/models/api/users/admin-me.api.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEvE,8BAA8B;AAC9B,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,KAAK,EAAE,oBAAoB,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC,GAAG,IAAI,CAAC;IAC/D,SAAS,EAAE,WAAW,CAAC;IACvB,SAAS,EAAE,WAAW,CAAC;IACvB,SAAS,EAAE,WAAW,GAAG,IAAI,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;CAC9B"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=admin-me.api.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-me.api.model.js","sourceRoot":"","sources":["../../../../src/models/api/users/admin-me.api.model.ts"],"names":[],"mappings":""}
@@ -0,0 +1,39 @@
1
+ import { PermissionKeys } from '../../../consts';
2
+ import { AuditActor } from '../../audit-actor.model';
3
+ import { UserRolePermission } from '../../user-role-permission';
4
+ import { AuditTimestampsApiModel, IsoDateTime } from './shared.api.model';
5
+ /** GET /api/users/admin-roles */
6
+ export interface AdminRoleListItemApiModel {
7
+ /** admin_roles.id (uuid). */
8
+ id: string;
9
+ title: string;
10
+ order: number;
11
+ isDefault: boolean;
12
+ isFullAccess: boolean;
13
+ createdAt: IsoDateTime;
14
+ legacyFirestoreId?: string;
15
+ }
16
+ /** GET /api/users/admin-roles/:id */
17
+ export interface AdminRoleDetailApiModel extends AdminRoleListItemApiModel, AuditTimestampsApiModel {
18
+ permissions: Record<PermissionKeys, UserRolePermission> | null;
19
+ isDeleted: boolean;
20
+ createdBy: AuditActor | null;
21
+ updatedBy: AuditActor | null;
22
+ deletedBy: AuditActor | null;
23
+ }
24
+ /** POST /api/users/admin-roles */
25
+ export interface CreateAdminRoleRequest {
26
+ title: string;
27
+ order?: number;
28
+ isDefault?: boolean;
29
+ /** Sparse grants; omitted keys are not granted. Ignored when isFullAccess is set server-side. */
30
+ permissionKeys?: string[];
31
+ }
32
+ /** PATCH /api/users/admin-roles/:id */
33
+ export interface UpdateAdminRoleRequest {
34
+ title?: string;
35
+ order?: number;
36
+ isDefault?: boolean;
37
+ permissionKeys?: string[];
38
+ }
39
+ //# sourceMappingURL=admin-role.api.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-role.api.model.d.ts","sourceRoot":"","sources":["../../../../src/models/api/users/admin-role.api.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE1E,iCAAiC;AACjC,MAAM,WAAW,yBAAyB;IACxC,6BAA6B;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,WAAW,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,qCAAqC;AACrC,MAAM,WAAW,uBAAwB,SAAQ,yBAAyB,EAAE,uBAAuB;IACjG,WAAW,EAAE,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC,GAAG,IAAI,CAAC;IAC/D,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;CAC9B;AAED,kCAAkC;AAClC,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iGAAiG;IACjG,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,uCAAuC;AACvC,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=admin-role.api.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-role.api.model.js","sourceRoot":"","sources":["../../../../src/models/api/users/admin-role.api.model.ts"],"names":[],"mappings":""}
@@ -0,0 +1,61 @@
1
+ import { UserRoleStatus } from '../../../enum';
2
+ import { AuditActor } from '../../audit-actor.model';
3
+ import { AdminRoleRefApiModel, AuditTimestampsApiModel, IsoDateTime } from './shared.api.model';
4
+ /** GET /api/users/admin-users */
5
+ export interface AdminUserListItemApiModel {
6
+ /** admin_assignments.id (uuid). */
7
+ id: string;
8
+ /** profiles.id (uuid). */
9
+ profileId: string;
10
+ firebaseUid: string;
11
+ firstName: string;
12
+ lastName: string;
13
+ email: string;
14
+ phoneNumber?: string;
15
+ roles: AdminRoleRefApiModel;
16
+ status: UserRoleStatus;
17
+ isOwner: boolean;
18
+ createdAt: IsoDateTime;
19
+ /** Optional Firestore adminUsers doc id during cutover. */
20
+ legacyFirestoreId?: string;
21
+ }
22
+ /** GET /api/users/admin-users/:id */
23
+ export interface AdminUserDetailApiModel extends AdminUserListItemApiModel, AuditTimestampsApiModel {
24
+ displayName?: string;
25
+ timezone?: string;
26
+ isDeleted: boolean;
27
+ createdBy: AuditActor | null;
28
+ updatedBy: AuditActor | null;
29
+ deletedBy: AuditActor | null;
30
+ }
31
+ /** POST /api/users/admin-users — audit fields set server-side from auth token. */
32
+ export interface CreateAdminUserRequest {
33
+ firstName: string;
34
+ lastName: string;
35
+ email: string;
36
+ phoneNumber?: unknown;
37
+ /** admin_roles.id (uuid). */
38
+ roleId: string;
39
+ isOwner?: boolean;
40
+ }
41
+ /** PATCH /api/users/admin-users/:id */
42
+ export interface UpdateAdminUserRequest {
43
+ firstName?: string;
44
+ lastName?: string;
45
+ phoneNumber?: unknown;
46
+ /** admin_roles.id (uuid). */
47
+ roleId?: string;
48
+ status?: UserRoleStatus;
49
+ isOwner?: boolean;
50
+ timezone?: string;
51
+ }
52
+ /** POST /api/users/admin-users response */
53
+ export interface CreateAdminUserResponse {
54
+ profileId: string;
55
+ firebaseUid: string;
56
+ assignmentId: string;
57
+ isNewUser: boolean;
58
+ temporaryPassword?: string;
59
+ email: string;
60
+ }
61
+ //# sourceMappingURL=admin-user.api.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-user.api.model.d.ts","sourceRoot":"","sources":["../../../../src/models/api/users/admin-user.api.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEhG,iCAAiC;AACjC,MAAM,WAAW,yBAAyB;IACxC,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,oBAAoB,CAAC;IAC5B,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,WAAW,CAAC;IACvB,2DAA2D;IAC3D,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,qCAAqC;AACrC,MAAM,WAAW,uBAAwB,SAAQ,yBAAyB,EAAE,uBAAuB;IACjG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;CAC9B;AAED,kFAAkF;AAClF,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,uCAAuC;AACvC,MAAM,WAAW,sBAAsB;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,2CAA2C;AAC3C,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;CACf"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=admin-user.api.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-user.api.model.js","sourceRoot":"","sources":["../../../../src/models/api/users/admin-user.api.model.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ export * from './shared.api.model';
2
+ export * from './admin-me.api.model';
3
+ export * from './admin-user.api.model';
4
+ export * from './admin-role.api.model';
5
+ export * from './permission-group.api.model';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/models/api/users/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./shared.api.model"), exports);
18
+ __exportStar(require("./admin-me.api.model"), exports);
19
+ __exportStar(require("./admin-user.api.model"), exports);
20
+ __exportStar(require("./admin-role.api.model"), exports);
21
+ __exportStar(require("./permission-group.api.model"), exports);
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/models/api/users/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,uDAAqC;AACrC,yDAAuC;AACvC,yDAAuC;AACvC,+DAA6C"}
@@ -0,0 +1,24 @@
1
+ import { AuditActor } from '../../audit-actor.model';
2
+ import { AuditTimestampsApiModel, PermissionCatalogItemApiModel } from './shared.api.model';
3
+ /** GET /api/users/permission-groups */
4
+ export interface PermissionGroupListItemApiModel {
5
+ /** permission_groups.id (uuid). */
6
+ id: string;
7
+ name: string;
8
+ order: number;
9
+ legacyFirestoreId?: string;
10
+ }
11
+ /** GET /api/users/permission-groups/:id */
12
+ export interface PermissionGroupDetailApiModel extends PermissionGroupListItemApiModel, AuditTimestampsApiModel {
13
+ permissions: Record<string, PermissionCatalogItemApiModel>;
14
+ isDeleted: boolean;
15
+ createdBy: AuditActor | null;
16
+ updatedBy: AuditActor | null;
17
+ deletedBy: AuditActor | null;
18
+ }
19
+ /** PATCH /api/users/permission-groups/:id */
20
+ export interface UpdatePermissionGroupRequest {
21
+ name?: string;
22
+ order?: number;
23
+ }
24
+ //# sourceMappingURL=permission-group.api.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission-group.api.model.d.ts","sourceRoot":"","sources":["../../../../src/models/api/users/permission-group.api.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAE5F,uCAAuC;AACvC,MAAM,WAAW,+BAA+B;IAC9C,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,2CAA2C;AAC3C,MAAM,WAAW,6BACf,SAAQ,+BAA+B,EACrC,uBAAuB;IACzB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAC;IAC3D,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;CAC9B;AAED,6CAA6C;AAC7C,MAAM,WAAW,4BAA4B;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=permission-group.api.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission-group.api.model.js","sourceRoot":"","sources":["../../../../src/models/api/users/permission-group.api.model.ts"],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ /** ISO 8601 timestamp string for Postgres REST APIs. */
2
+ export type IsoDateTime = string;
3
+ export interface AdminRoleRefApiModel {
4
+ /** admin_roles.id (uuid). */
5
+ id: string;
6
+ title: string;
7
+ isFullAccess: boolean;
8
+ /** Optional Firestore doc id during frontend cutover. */
9
+ legacyFirestoreId?: string;
10
+ }
11
+ export interface AuditTimestampsApiModel {
12
+ createdAt: IsoDateTime;
13
+ updatedAt: IsoDateTime;
14
+ deletedAt: IsoDateTime | null;
15
+ }
16
+ export interface PermissionCatalogItemApiModel {
17
+ key: string;
18
+ label: string;
19
+ order: number;
20
+ /** permission_groups.id (uuid). */
21
+ groupId: string;
22
+ }
23
+ //# sourceMappingURL=shared.api.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.api.model.d.ts","sourceRoot":"","sources":["../../../../src/models/api/users/shared.api.model.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AAEjC,MAAM,WAAW,oBAAoB;IACnC,6BAA6B;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,OAAO,CAAC;IACtB,yDAAyD;IACzD,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,WAAW,CAAC;IACvB,SAAS,EAAE,WAAW,CAAC;IACvB,SAAS,EAAE,WAAW,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,6BAA6B;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=shared.api.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.api.model.js","sourceRoot":"","sources":["../../../../src/models/api/users/shared.api.model.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spotcharge-types",
3
- "version": "1.0.319",
3
+ "version": "1.0.321",
4
4
  "description": "Spotcharge types",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -64,4 +64,5 @@ export {CompanyUserEntityAccessApiModel} from './company-user-entity-access.api.
64
64
  export {ContactSubmissionApiModel} from './contact-submission.api.model';
65
65
  export {PartnerInquiryApiModel, PartnerInquiryInvestmentRange, PartnerInquiryLocationReadiness, PartnerInquiryTimeline} from './partner-inquiry.api.model';
66
66
  export {SettlementApiModel} from './settlement.api.model';
67
- export {UserFavoriteStationApiModel} from './user-favorite-station.api.model';
67
+ export {UserFavoriteStationApiModel} from './user-favorite-station.api.model';
68
+ export * from './users';
@@ -0,0 +1,32 @@
1
+ import { PermissionKeys } from '../../../consts';
2
+ import { AuditActor } from '../../audit-actor.model';
3
+ import { UserRolePermission } from '../../user-role-permission';
4
+ import { AdminRoleRefApiModel, IsoDateTime } from './shared.api.model';
5
+
6
+ /** GET /api/users/me/admin */
7
+ export interface AdminMeApiModel {
8
+ /** profiles.id (uuid). */
9
+ id: string;
10
+ firebaseUid: string;
11
+ /** admin_assignments.id (uuid). */
12
+ assignmentId: string;
13
+ email: string;
14
+ firstName: string;
15
+ lastName?: string;
16
+ displayName?: string;
17
+ phoneNumber: unknown;
18
+ photoURL: string | null;
19
+ gender: string;
20
+ color: string;
21
+ emailVerified: boolean;
22
+ isProfileComplete: boolean;
23
+ roles: AdminRoleRefApiModel;
24
+ permissions: Record<PermissionKeys, UserRolePermission> | null;
25
+ createdAt: IsoDateTime;
26
+ updatedAt: IsoDateTime;
27
+ deletedAt: IsoDateTime | null;
28
+ isDeleted: boolean;
29
+ createdBy: AuditActor | null;
30
+ updatedBy: AuditActor | null;
31
+ deletedBy: AuditActor | null;
32
+ }
@@ -0,0 +1,42 @@
1
+ import { PermissionKeys } from '../../../consts';
2
+ import { AuditActor } from '../../audit-actor.model';
3
+ import { UserRolePermission } from '../../user-role-permission';
4
+ import { AuditTimestampsApiModel, IsoDateTime } from './shared.api.model';
5
+
6
+ /** GET /api/users/admin-roles */
7
+ export interface AdminRoleListItemApiModel {
8
+ /** admin_roles.id (uuid). */
9
+ id: string;
10
+ title: string;
11
+ order: number;
12
+ isDefault: boolean;
13
+ isFullAccess: boolean;
14
+ createdAt: IsoDateTime;
15
+ legacyFirestoreId?: string;
16
+ }
17
+
18
+ /** GET /api/users/admin-roles/:id */
19
+ export interface AdminRoleDetailApiModel extends AdminRoleListItemApiModel, AuditTimestampsApiModel {
20
+ permissions: Record<PermissionKeys, UserRolePermission> | null;
21
+ isDeleted: boolean;
22
+ createdBy: AuditActor | null;
23
+ updatedBy: AuditActor | null;
24
+ deletedBy: AuditActor | null;
25
+ }
26
+
27
+ /** POST /api/users/admin-roles */
28
+ export interface CreateAdminRoleRequest {
29
+ title: string;
30
+ order?: number;
31
+ isDefault?: boolean;
32
+ /** Sparse grants; omitted keys are not granted. Ignored when isFullAccess is set server-side. */
33
+ permissionKeys?: string[];
34
+ }
35
+
36
+ /** PATCH /api/users/admin-roles/:id */
37
+ export interface UpdateAdminRoleRequest {
38
+ title?: string;
39
+ order?: number;
40
+ isDefault?: boolean;
41
+ permissionKeys?: string[];
42
+ }
@@ -0,0 +1,65 @@
1
+ import { UserRoleStatus } from '../../../enum';
2
+ import { AuditActor } from '../../audit-actor.model';
3
+ import { AdminRoleRefApiModel, AuditTimestampsApiModel, IsoDateTime } from './shared.api.model';
4
+
5
+ /** GET /api/users/admin-users */
6
+ export interface AdminUserListItemApiModel {
7
+ /** admin_assignments.id (uuid). */
8
+ id: string;
9
+ /** profiles.id (uuid). */
10
+ profileId: string;
11
+ firebaseUid: string;
12
+ firstName: string;
13
+ lastName: string;
14
+ email: string;
15
+ phoneNumber?: string;
16
+ roles: AdminRoleRefApiModel;
17
+ status: UserRoleStatus;
18
+ isOwner: boolean;
19
+ createdAt: IsoDateTime;
20
+ /** Optional Firestore adminUsers doc id during cutover. */
21
+ legacyFirestoreId?: string;
22
+ }
23
+
24
+ /** GET /api/users/admin-users/:id */
25
+ export interface AdminUserDetailApiModel extends AdminUserListItemApiModel, AuditTimestampsApiModel {
26
+ displayName?: string;
27
+ timezone?: string;
28
+ isDeleted: boolean;
29
+ createdBy: AuditActor | null;
30
+ updatedBy: AuditActor | null;
31
+ deletedBy: AuditActor | null;
32
+ }
33
+
34
+ /** POST /api/users/admin-users — audit fields set server-side from auth token. */
35
+ export interface CreateAdminUserRequest {
36
+ firstName: string;
37
+ lastName: string;
38
+ email: string;
39
+ phoneNumber?: unknown;
40
+ /** admin_roles.id (uuid). */
41
+ roleId: string;
42
+ isOwner?: boolean;
43
+ }
44
+
45
+ /** PATCH /api/users/admin-users/:id */
46
+ export interface UpdateAdminUserRequest {
47
+ firstName?: string;
48
+ lastName?: string;
49
+ phoneNumber?: unknown;
50
+ /** admin_roles.id (uuid). */
51
+ roleId?: string;
52
+ status?: UserRoleStatus;
53
+ isOwner?: boolean;
54
+ timezone?: string;
55
+ }
56
+
57
+ /** POST /api/users/admin-users response */
58
+ export interface CreateAdminUserResponse {
59
+ profileId: string;
60
+ firebaseUid: string;
61
+ assignmentId: string;
62
+ isNewUser: boolean;
63
+ temporaryPassword?: string;
64
+ email: string;
65
+ }
@@ -0,0 +1,5 @@
1
+ export * from './shared.api.model';
2
+ export * from './admin-me.api.model';
3
+ export * from './admin-user.api.model';
4
+ export * from './admin-role.api.model';
5
+ export * from './permission-group.api.model';
@@ -0,0 +1,28 @@
1
+ import { AuditActor } from '../../audit-actor.model';
2
+ import { AuditTimestampsApiModel, PermissionCatalogItemApiModel } from './shared.api.model';
3
+
4
+ /** GET /api/users/permission-groups */
5
+ export interface PermissionGroupListItemApiModel {
6
+ /** permission_groups.id (uuid). */
7
+ id: string;
8
+ name: string;
9
+ order: number;
10
+ legacyFirestoreId?: string;
11
+ }
12
+
13
+ /** GET /api/users/permission-groups/:id */
14
+ export interface PermissionGroupDetailApiModel
15
+ extends PermissionGroupListItemApiModel,
16
+ AuditTimestampsApiModel {
17
+ permissions: Record<string, PermissionCatalogItemApiModel>;
18
+ isDeleted: boolean;
19
+ createdBy: AuditActor | null;
20
+ updatedBy: AuditActor | null;
21
+ deletedBy: AuditActor | null;
22
+ }
23
+
24
+ /** PATCH /api/users/permission-groups/:id */
25
+ export interface UpdatePermissionGroupRequest {
26
+ name?: string;
27
+ order?: number;
28
+ }
@@ -0,0 +1,25 @@
1
+ /** ISO 8601 timestamp string for Postgres REST APIs. */
2
+ export type IsoDateTime = string;
3
+
4
+ export interface AdminRoleRefApiModel {
5
+ /** admin_roles.id (uuid). */
6
+ id: string;
7
+ title: string;
8
+ isFullAccess: boolean;
9
+ /** Optional Firestore doc id during frontend cutover. */
10
+ legacyFirestoreId?: string;
11
+ }
12
+
13
+ export interface AuditTimestampsApiModel {
14
+ createdAt: IsoDateTime;
15
+ updatedAt: IsoDateTime;
16
+ deletedAt: IsoDateTime | null;
17
+ }
18
+
19
+ export interface PermissionCatalogItemApiModel {
20
+ key: string;
21
+ label: string;
22
+ order: number;
23
+ /** permission_groups.id (uuid). */
24
+ groupId: string;
25
+ }