spotcharge-types 1.0.361 → 1.0.363

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 (37) hide show
  1. package/dist/consts/catalog/catalog-error.const.d.ts +6 -0
  2. package/dist/consts/catalog/catalog-error.const.d.ts.map +1 -0
  3. package/dist/consts/catalog/catalog-error.const.js +8 -0
  4. package/dist/consts/catalog/catalog-error.const.js.map +1 -0
  5. package/dist/consts/catalog/vehicle-type.const.d.ts +8 -0
  6. package/dist/consts/catalog/vehicle-type.const.d.ts.map +1 -0
  7. package/dist/consts/catalog/vehicle-type.const.js +10 -0
  8. package/dist/consts/catalog/vehicle-type.const.js.map +1 -0
  9. package/dist/consts/index.d.ts +2 -0
  10. package/dist/consts/index.d.ts.map +1 -1
  11. package/dist/consts/index.js +5 -1
  12. package/dist/consts/index.js.map +1 -1
  13. package/dist/models/api/catalog/index.d.ts +3 -0
  14. package/dist/models/api/catalog/index.d.ts.map +1 -0
  15. package/dist/models/api/catalog/index.js +3 -0
  16. package/dist/models/api/catalog/index.js.map +1 -0
  17. package/dist/models/api/catalog/vehicle-brand.api.model.d.ts +43 -0
  18. package/dist/models/api/catalog/vehicle-brand.api.model.d.ts.map +1 -0
  19. package/dist/models/api/catalog/vehicle-brand.api.model.js +3 -0
  20. package/dist/models/api/catalog/vehicle-brand.api.model.js.map +1 -0
  21. package/dist/models/api/catalog/vehicle.api.model.d.ts +71 -0
  22. package/dist/models/api/catalog/vehicle.api.model.d.ts.map +1 -0
  23. package/dist/models/api/catalog/vehicle.api.model.js +3 -0
  24. package/dist/models/api/catalog/vehicle.api.model.js.map +1 -0
  25. package/dist/models/api/index.d.ts +1 -1
  26. package/dist/models/api/index.d.ts.map +1 -1
  27. package/dist/models/api/index.js +1 -0
  28. package/dist/models/api/index.js.map +1 -1
  29. package/package.json +1 -1
  30. package/src/consts/catalog/catalog-error.const.ts +7 -0
  31. package/src/consts/catalog/vehicle-type.const.ts +9 -0
  32. package/src/consts/index.ts +3 -1
  33. package/src/models/api/catalog/index.ts +22 -0
  34. package/src/models/api/catalog/vehicle-brand.api.model.ts +52 -0
  35. package/src/models/api/catalog/vehicle.api.model.ts +84 -0
  36. package/src/models/api/index.ts +1 -9
  37. package/sync-types-to-repos.sh +121 -103
@@ -0,0 +1,6 @@
1
+ export declare const CatalogErrorCode: {
2
+ readonly VehicleBrandNameTaken: "VEHICLE_BRAND_NAME_TAKEN";
3
+ readonly VehicleModelTaken: "VEHICLE_MODEL_TAKEN";
4
+ };
5
+ export type CatalogErrorCode = (typeof CatalogErrorCode)[keyof typeof CatalogErrorCode];
6
+ //# sourceMappingURL=catalog-error.const.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog-error.const.d.ts","sourceRoot":"","sources":["../../../src/consts/catalog/catalog-error.const.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB;;;CAGnB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAC1B,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CatalogErrorCode = void 0;
4
+ exports.CatalogErrorCode = {
5
+ VehicleBrandNameTaken: 'VEHICLE_BRAND_NAME_TAKEN',
6
+ VehicleModelTaken: 'VEHICLE_MODEL_TAKEN',
7
+ };
8
+ //# sourceMappingURL=catalog-error.const.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog-error.const.js","sourceRoot":"","sources":["../../../src/consts/catalog/catalog-error.const.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG;IAC9B,qBAAqB,EAAE,0BAA0B;IACjD,iBAAiB,EAAE,qBAAqB;CAChC,CAAC"}
@@ -0,0 +1,8 @@
1
+ export declare const VehicleTypeCatalog: {
2
+ readonly Car: "car";
3
+ readonly Bike: "bike";
4
+ readonly Rikshaw: "rikshaw";
5
+ readonly Pickup: "pickup";
6
+ };
7
+ export type VehicleTypeCatalog = (typeof VehicleTypeCatalog)[keyof typeof VehicleTypeCatalog];
8
+ //# sourceMappingURL=vehicle-type.const.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vehicle-type.const.d.ts","sourceRoot":"","sources":["../../../src/consts/catalog/vehicle-type.const.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB;;;;;CAKrB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAC5B,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VehicleTypeCatalog = void 0;
4
+ exports.VehicleTypeCatalog = {
5
+ Car: 'car',
6
+ Bike: 'bike',
7
+ Rikshaw: 'rikshaw',
8
+ Pickup: 'pickup',
9
+ };
10
+ //# sourceMappingURL=vehicle-type.const.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vehicle-type.const.js","sourceRoot":"","sources":["../../../src/consts/catalog/vehicle-type.const.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG;IAChC,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;CACR,CAAC"}
@@ -6,4 +6,6 @@ export { Notifications, NotificationType } from './notifications.const';
6
6
  export { permissionConfig, Permission, PermissionKeys } from './permission-config';
7
7
  export { PromotionAdjustmentType, PromotionAppliesTo, PromotionScopeType, } from './pricing';
8
8
  export { CampaignScopeType } from './marketing';
9
+ export { VehicleTypeCatalog } from './catalog/vehicle-type.const';
10
+ export { CatalogErrorCode } from './catalog/catalog-error.const';
9
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/consts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,kBAAkB,EAAE,wBAAwB,EAAC,MAAM,yBAAyB,CAAC;AACrG,OAAO,EAAC,eAAe,EAAE,WAAW,EAAC,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAC,SAAS,EAAE,SAAS,EAAC,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAC,0BAA0B,EAAE,8BAA8B,EAAC,MAAM,uCAAuC,CAAC;AACjH,OAAO,EAAC,aAAa,EAAE,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAC,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACjF,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/consts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,kBAAkB,EAAE,wBAAwB,EAAC,MAAM,yBAAyB,CAAC;AACrG,OAAO,EAAC,eAAe,EAAE,WAAW,EAAC,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAC,SAAS,EAAE,SAAS,EAAC,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAC,0BAA0B,EAAE,8BAA8B,EAAC,MAAM,uCAAuC,CAAC;AACjH,OAAO,EAAC,aAAa,EAAE,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAC,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACjF,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CampaignScopeType = exports.PromotionScopeType = exports.PromotionAppliesTo = exports.PromotionAdjustmentType = exports.permissionConfig = exports.Notifications = exports.VehicleInspectionChecklist = exports.InOutType = exports.InOutStatus = exports.VehiclePurpose = void 0;
3
+ exports.CatalogErrorCode = exports.VehicleTypeCatalog = exports.CampaignScopeType = exports.PromotionScopeType = exports.PromotionAppliesTo = exports.PromotionAdjustmentType = exports.permissionConfig = exports.Notifications = exports.VehicleInspectionChecklist = exports.InOutType = exports.InOutStatus = exports.VehiclePurpose = void 0;
4
4
  var vehicle_purpose_const_1 = require("./vehicle-purpose.const");
5
5
  Object.defineProperty(exports, "VehiclePurpose", { enumerable: true, get: function () { return vehicle_purpose_const_1.VehiclePurpose; } });
6
6
  var in_out_status_const_1 = require("./in-out-status.const");
@@ -19,4 +19,8 @@ Object.defineProperty(exports, "PromotionAppliesTo", { enumerable: true, get: fu
19
19
  Object.defineProperty(exports, "PromotionScopeType", { enumerable: true, get: function () { return pricing_1.PromotionScopeType; } });
20
20
  var marketing_1 = require("./marketing");
21
21
  Object.defineProperty(exports, "CampaignScopeType", { enumerable: true, get: function () { return marketing_1.CampaignScopeType; } });
22
+ var vehicle_type_const_1 = require("./catalog/vehicle-type.const");
23
+ Object.defineProperty(exports, "VehicleTypeCatalog", { enumerable: true, get: function () { return vehicle_type_const_1.VehicleTypeCatalog; } });
24
+ var catalog_error_const_1 = require("./catalog/catalog-error.const");
25
+ Object.defineProperty(exports, "CatalogErrorCode", { enumerable: true, get: function () { return catalog_error_const_1.CatalogErrorCode; } });
22
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/consts/index.ts"],"names":[],"mappings":";;;AAAA,iEAAqG;AAA7F,uHAAA,cAAc,OAAA;AACtB,6DAAmE;AAA1C,kHAAA,WAAW,OAAA;AACpC,yDAAyD;AAAjD,8GAAA,SAAS,OAAA;AACjB,6FAAiH;AAAzG,iJAAA,0BAA0B,OAAA;AAClC,6DAAsE;AAA9D,oHAAA,aAAa,OAAA;AACrB,yDAAiF;AAAzE,qHAAA,gBAAgB,OAAA;AACxB,qCAImB;AAHjB,kHAAA,uBAAuB,OAAA;AACvB,6GAAA,kBAAkB,OAAA;AAClB,6GAAA,kBAAkB,OAAA;AAEpB,yCAAgD;AAAvC,8GAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/consts/index.ts"],"names":[],"mappings":";;;AAAA,iEAAqG;AAA7F,uHAAA,cAAc,OAAA;AACtB,6DAAmE;AAA1C,kHAAA,WAAW,OAAA;AACpC,yDAAyD;AAAjD,8GAAA,SAAS,OAAA;AACjB,6FAAiH;AAAzG,iJAAA,0BAA0B,OAAA;AAClC,6DAAsE;AAA9D,oHAAA,aAAa,OAAA;AACrB,yDAAiF;AAAzE,qHAAA,gBAAgB,OAAA;AACxB,qCAImB;AAHjB,kHAAA,uBAAuB,OAAA;AACvB,6GAAA,kBAAkB,OAAA;AAClB,6GAAA,kBAAkB,OAAA;AAEpB,yCAAgD;AAAvC,8GAAA,iBAAiB,OAAA;AAC1B,mEAAkE;AAAzD,wHAAA,kBAAkB,OAAA;AAC3B,qEAAiE;AAAxD,uHAAA,gBAAgB,OAAA"}
@@ -0,0 +1,3 @@
1
+ export { VehicleBrandListOrderBy, PublicVehicleBrandListItemApiModel, AdminVehicleBrandListItemApiModel, PublicVehicleBrandListApiModel, AdminVehicleBrandListApiModel, AdminVehicleBrandDetailApiModel, CreateVehicleBrandRequest, UpdateVehicleBrandRequest, } from './vehicle-brand.api.model';
2
+ export { VehicleListOrderBy, PublicVehicleBrandEmbedApiModel, PublicVehicleListItemApiModel, AdminVehicleListItemApiModel, PublicVehicleListApiModel, AdminVehicleListApiModel, AdminVehicleDetailApiModel, CreateVehicleRequest, UpdateVehicleRequest, } from './vehicle.api.model';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/models/api/catalog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,kCAAkC,EAClC,iCAAiC,EACjC,8BAA8B,EAC9B,6BAA6B,EAC7B,+BAA+B,EAC/B,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,kBAAkB,EAClB,+BAA+B,EAC/B,6BAA6B,EAC7B,4BAA4B,EAC5B,yBAAyB,EACzB,wBAAwB,EACxB,0BAA0B,EAC1B,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/models/api/catalog/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,43 @@
1
+ import { ApiSortDirection, AuditTimestampsApiModel } from '../users';
2
+ /** GET /api/vehicle-brands | GET /api/admin/vehicle-brands list */
3
+ export type VehicleBrandListOrderBy = 'name' | 'createdAt';
4
+ export interface PublicVehicleBrandListItemApiModel {
5
+ id: string;
6
+ name: string;
7
+ logo: string | null;
8
+ }
9
+ export interface AdminVehicleBrandListItemApiModel extends PublicVehicleBrandListItemApiModel {
10
+ isActive: boolean;
11
+ createdAt: string;
12
+ }
13
+ export interface PublicVehicleBrandListApiModel {
14
+ rows: PublicVehicleBrandListItemApiModel[];
15
+ totalCount: number;
16
+ pageIndex: number;
17
+ pageSize: number;
18
+ orderBy: VehicleBrandListOrderBy;
19
+ sortDirection: ApiSortDirection;
20
+ }
21
+ export interface AdminVehicleBrandListApiModel {
22
+ rows: AdminVehicleBrandListItemApiModel[];
23
+ totalCount: number;
24
+ pageIndex: number;
25
+ pageSize: number;
26
+ orderBy: VehicleBrandListOrderBy;
27
+ sortDirection: ApiSortDirection;
28
+ }
29
+ export interface AdminVehicleBrandDetailApiModel extends Omit<AdminVehicleBrandListItemApiModel, 'createdAt'>, AuditTimestampsApiModel {
30
+ legacyFirestoreId?: string | null;
31
+ isDeleted: boolean;
32
+ }
33
+ export interface CreateVehicleBrandRequest {
34
+ name: string;
35
+ logo?: string | null;
36
+ isActive?: boolean;
37
+ }
38
+ export interface UpdateVehicleBrandRequest {
39
+ name?: string;
40
+ logo?: string | null;
41
+ isActive?: boolean;
42
+ }
43
+ //# sourceMappingURL=vehicle-brand.api.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vehicle-brand.api.model.d.ts","sourceRoot":"","sources":["../../../../src/models/api/catalog/vehicle-brand.api.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAErE,mEAAmE;AACnE,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAAG,WAAW,CAAC;AAE3D,MAAM,WAAW,kCAAkC;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,iCAAkC,SAAQ,kCAAkC;IAC3F,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,kCAAkC,EAAE,CAAC;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,uBAAuB,CAAC;IACjC,aAAa,EAAE,gBAAgB,CAAC;CACjC;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,iCAAiC,EAAE,CAAC;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,uBAAuB,CAAC;IACjC,aAAa,EAAE,gBAAgB,CAAC;CACjC;AAED,MAAM,WAAW,+BACf,SAAQ,IAAI,CAAC,iCAAiC,EAAE,WAAW,CAAC,EAC1D,uBAAuB;IACzB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=vehicle-brand.api.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vehicle-brand.api.model.js","sourceRoot":"","sources":["../../../../src/models/api/catalog/vehicle-brand.api.model.ts"],"names":[],"mappings":""}
@@ -0,0 +1,71 @@
1
+ import { VehicleTypeCatalog } from '../../../consts/catalog/vehicle-type.const';
2
+ import { ApiSortDirection, AuditTimestampsApiModel } from '../users';
3
+ import { AdminVehicleBrandListItemApiModel } from './vehicle-brand.api.model';
4
+ /** GET /api/vehicles | GET /api/admin/vehicles list */
5
+ export type VehicleListOrderBy = 'model' | 'createdAt';
6
+ export interface PublicVehicleBrandEmbedApiModel {
7
+ id: string;
8
+ name: string;
9
+ logo: string | null;
10
+ }
11
+ export interface PublicVehicleListItemApiModel {
12
+ id: string;
13
+ model: string;
14
+ image: string | null;
15
+ batteryCapacity: number | null;
16
+ type: VehicleTypeCatalog;
17
+ brand: PublicVehicleBrandEmbedApiModel;
18
+ }
19
+ export interface AdminVehicleListItemApiModel {
20
+ id: string;
21
+ model: string;
22
+ image: string | null;
23
+ batteryCapacity: number | null;
24
+ type: VehicleTypeCatalog;
25
+ vehicleBrandId: string;
26
+ isActive: boolean;
27
+ year: number | null;
28
+ brand: AdminVehicleBrandListItemApiModel;
29
+ createdAt: string;
30
+ }
31
+ export interface PublicVehicleListApiModel {
32
+ rows: PublicVehicleListItemApiModel[];
33
+ totalCount: number;
34
+ pageIndex: number;
35
+ pageSize: number;
36
+ orderBy: VehicleListOrderBy;
37
+ sortDirection: ApiSortDirection;
38
+ }
39
+ export interface AdminVehicleListApiModel {
40
+ rows: AdminVehicleListItemApiModel[];
41
+ totalCount: number;
42
+ pageIndex: number;
43
+ pageSize: number;
44
+ orderBy: VehicleListOrderBy;
45
+ sortDirection: ApiSortDirection;
46
+ }
47
+ export interface AdminVehicleDetailApiModel extends Omit<AdminVehicleListItemApiModel, 'brand' | 'createdAt'>, AuditTimestampsApiModel {
48
+ year: number | null;
49
+ legacyFirestoreId?: string | null;
50
+ brand: PublicVehicleBrandEmbedApiModel;
51
+ isDeleted: boolean;
52
+ }
53
+ export interface CreateVehicleRequest {
54
+ vehicleBrandId: string;
55
+ model: string;
56
+ image?: string | null;
57
+ batteryCapacity?: number | null;
58
+ type: VehicleTypeCatalog;
59
+ year?: number | null;
60
+ isActive?: boolean;
61
+ }
62
+ export interface UpdateVehicleRequest {
63
+ vehicleBrandId?: string;
64
+ model?: string;
65
+ image?: string | null;
66
+ batteryCapacity?: number | null;
67
+ type?: VehicleTypeCatalog;
68
+ year?: number | null;
69
+ isActive?: boolean;
70
+ }
71
+ //# sourceMappingURL=vehicle.api.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vehicle.api.model.d.ts","sourceRoot":"","sources":["../../../../src/models/api/catalog/vehicle.api.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EACL,iCAAiC,EAElC,MAAM,2BAA2B,CAAC;AAEnC,uDAAuD;AACvD,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,WAAW,CAAC;AAEvD,MAAM,WAAW,+BAA+B;IAC9C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,6BAA6B;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,IAAI,EAAE,kBAAkB,CAAC;IACzB,KAAK,EAAE,+BAA+B,CAAC;CACxC;AAED,MAAM,WAAW,4BAA4B;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,IAAI,EAAE,kBAAkB,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,EAAE,iCAAiC,CAAC;IACzC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,6BAA6B,EAAE,CAAC;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,aAAa,EAAE,gBAAgB,CAAC;CACjC;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,4BAA4B,EAAE,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,aAAa,EAAE,gBAAgB,CAAC;CACjC;AAED,MAAM,WAAW,0BACf,SAAQ,IAAI,CAAC,4BAA4B,EAAE,OAAO,GAAG,WAAW,CAAC,EAC/D,uBAAuB;IACzB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,KAAK,EAAE,+BAA+B,CAAC;IACvC,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,IAAI,EAAE,kBAAkB,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=vehicle.api.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vehicle.api.model.js","sourceRoot":"","sources":["../../../../src/models/api/catalog/vehicle.api.model.ts"],"names":[],"mappings":""}
@@ -16,7 +16,7 @@ export { RfidApiModel } from './rfid.api.model';
16
16
  export { OrderApiModel } from './order.api.model';
17
17
  export { VehicleApiModel } from './vehicle.api.model';
18
18
  export { BrandApiModel } from './brand.api.model';
19
- export { BrandListItemApiModel, BrandListApiModel, BrandDetailApiModel, CreateBrandRequest, UpdateBrandRequest, CreateBrandResponse, BrandListOrderBy } from './brand/brand.api.model';
19
+ export * from './catalog';
20
20
  export { BookingApiModel, Refund } from './booking.api.model';
21
21
  export { WalletTransactionApiModel } from './wallet-transaction.api.model';
22
22
  export { FleetVehicleApiModel } from './fleet-vehicle.api.model';
@@ -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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"}
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.FLEET_ID_HEADER = exports.PARTNER_BUSINESS_UNIT_ACCESS_HEADER = exports.ChannelPartnerYearsInBusiness = exports.ChannelPartnerTimeline = exports.ChannelPartnerSource = exports.ChannelPartnerInvestmentCapacity = exports.ChannelPartnerEntityType = exports.ChannelPartnerApplicationStatus = exports.PartnerInquiryStatus = exports.PartnerInquiryTimeline = exports.PartnerInquiryLocationReadiness = exports.PartnerInquiryInvestmentRange = exports.ContactSubmissionStatus = exports.StationSearchSource = void 0;
18
+ __exportStar(require("./catalog"), exports);
18
19
  var enum_1 = require("../../enum");
19
20
  Object.defineProperty(exports, "StationSearchSource", { enumerable: true, get: function () { return enum_1.StationSearchSource; } });
20
21
  var contact_submission_api_model_1 = require("./contact-submissions/contact-submission.api.model");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAgHA,mCAA+C;AAAvC,2GAAA,mBAAmB,OAAA;AAkF3B,mGAQ4D;AAH1D,uIAAA,uBAAuB,OAAA;AAKzB,yEAA2J;AAA3H,0IAAA,6BAA6B,OAAA;AAAE,4IAAA,+BAA+B,OAAA;AAAE,mIAAA,sBAAsB,OAAA;AACtH,2FASuD;AADrD,iIAAA,oBAAoB,OAAA;AAEtB,8HAc8E;AAT5E,wJAAA,+BAA+B,OAAA;AAC/B,iJAAA,wBAAwB,OAAA;AACxB,yJAAA,gCAAgC,OAAA;AAChC,6IAAA,oBAAoB,OAAA;AACpB,+IAAA,sBAAsB,OAAA;AACtB,sJAAA,6BAA6B,OAAA;AAO/B,qCAQmB;AAHjB,8HAAA,mCAAmC,OAAA;AAIrC,iCAIiB;AAHf,wGAAA,eAAe,OAAA;AAIjB,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAgEA,4CAA0B;AAwC1B,mCAA+C;AAAvC,2GAAA,mBAAmB,OAAA;AAkF3B,mGAQ4D;AAH1D,uIAAA,uBAAuB,OAAA;AAKzB,yEAA2J;AAA3H,0IAAA,6BAA6B,OAAA;AAAE,4IAAA,+BAA+B,OAAA;AAAE,mIAAA,sBAAsB,OAAA;AACtH,2FASuD;AADrD,iIAAA,oBAAoB,OAAA;AAEtB,8HAc8E;AAT5E,wJAAA,+BAA+B,OAAA;AAC/B,iJAAA,wBAAwB,OAAA;AACxB,yJAAA,gCAAgC,OAAA;AAChC,6IAAA,oBAAoB,OAAA;AACpB,+IAAA,sBAAsB,OAAA;AACtB,sJAAA,6BAA6B,OAAA;AAO/B,qCAQmB;AAHjB,8HAAA,mCAAmC,OAAA;AAIrC,iCAIiB;AAHf,wGAAA,eAAe,OAAA;AAIjB,0CAAwB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spotcharge-types",
3
- "version": "1.0.361",
3
+ "version": "1.0.363",
4
4
  "description": "Spotcharge typesn",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -0,0 +1,7 @@
1
+ export const CatalogErrorCode = {
2
+ VehicleBrandNameTaken: 'VEHICLE_BRAND_NAME_TAKEN',
3
+ VehicleModelTaken: 'VEHICLE_MODEL_TAKEN',
4
+ } as const;
5
+
6
+ export type CatalogErrorCode =
7
+ (typeof CatalogErrorCode)[keyof typeof CatalogErrorCode];
@@ -0,0 +1,9 @@
1
+ export const VehicleTypeCatalog = {
2
+ Car: 'car',
3
+ Bike: 'bike',
4
+ Rikshaw: 'rikshaw',
5
+ Pickup: 'pickup',
6
+ } as const;
7
+
8
+ export type VehicleTypeCatalog =
9
+ (typeof VehicleTypeCatalog)[keyof typeof VehicleTypeCatalog];
@@ -9,4 +9,6 @@ export {
9
9
  PromotionAppliesTo,
10
10
  PromotionScopeType,
11
11
  } from './pricing';
12
- export { CampaignScopeType } from './marketing';
12
+ export { CampaignScopeType } from './marketing';
13
+ export { VehicleTypeCatalog } from './catalog/vehicle-type.const';
14
+ export { CatalogErrorCode } from './catalog/catalog-error.const';
@@ -0,0 +1,22 @@
1
+ export {
2
+ VehicleBrandListOrderBy,
3
+ PublicVehicleBrandListItemApiModel,
4
+ AdminVehicleBrandListItemApiModel,
5
+ PublicVehicleBrandListApiModel,
6
+ AdminVehicleBrandListApiModel,
7
+ AdminVehicleBrandDetailApiModel,
8
+ CreateVehicleBrandRequest,
9
+ UpdateVehicleBrandRequest,
10
+ } from './vehicle-brand.api.model';
11
+
12
+ export {
13
+ VehicleListOrderBy,
14
+ PublicVehicleBrandEmbedApiModel,
15
+ PublicVehicleListItemApiModel,
16
+ AdminVehicleListItemApiModel,
17
+ PublicVehicleListApiModel,
18
+ AdminVehicleListApiModel,
19
+ AdminVehicleDetailApiModel,
20
+ CreateVehicleRequest,
21
+ UpdateVehicleRequest,
22
+ } from './vehicle.api.model';
@@ -0,0 +1,52 @@
1
+ import { ApiSortDirection, AuditTimestampsApiModel } from '../users';
2
+
3
+ /** GET /api/vehicle-brands | GET /api/admin/vehicle-brands list */
4
+ export type VehicleBrandListOrderBy = 'name' | 'createdAt';
5
+
6
+ export interface PublicVehicleBrandListItemApiModel {
7
+ id: string;
8
+ name: string;
9
+ logo: string | null;
10
+ }
11
+
12
+ export interface AdminVehicleBrandListItemApiModel extends PublicVehicleBrandListItemApiModel {
13
+ isActive: boolean;
14
+ createdAt: string;
15
+ }
16
+
17
+ export interface PublicVehicleBrandListApiModel {
18
+ rows: PublicVehicleBrandListItemApiModel[];
19
+ totalCount: number;
20
+ pageIndex: number;
21
+ pageSize: number;
22
+ orderBy: VehicleBrandListOrderBy;
23
+ sortDirection: ApiSortDirection;
24
+ }
25
+
26
+ export interface AdminVehicleBrandListApiModel {
27
+ rows: AdminVehicleBrandListItemApiModel[];
28
+ totalCount: number;
29
+ pageIndex: number;
30
+ pageSize: number;
31
+ orderBy: VehicleBrandListOrderBy;
32
+ sortDirection: ApiSortDirection;
33
+ }
34
+
35
+ export interface AdminVehicleBrandDetailApiModel
36
+ extends Omit<AdminVehicleBrandListItemApiModel, 'createdAt'>,
37
+ AuditTimestampsApiModel {
38
+ legacyFirestoreId?: string | null;
39
+ isDeleted: boolean;
40
+ }
41
+
42
+ export interface CreateVehicleBrandRequest {
43
+ name: string;
44
+ logo?: string | null;
45
+ isActive?: boolean;
46
+ }
47
+
48
+ export interface UpdateVehicleBrandRequest {
49
+ name?: string;
50
+ logo?: string | null;
51
+ isActive?: boolean;
52
+ }
@@ -0,0 +1,84 @@
1
+ import { VehicleTypeCatalog } from '../../../consts/catalog/vehicle-type.const';
2
+ import { ApiSortDirection, AuditTimestampsApiModel } from '../users';
3
+ import {
4
+ AdminVehicleBrandListItemApiModel,
5
+ PublicVehicleBrandListItemApiModel,
6
+ } from './vehicle-brand.api.model';
7
+
8
+ /** GET /api/vehicles | GET /api/admin/vehicles list */
9
+ export type VehicleListOrderBy = 'model' | 'createdAt';
10
+
11
+ export interface PublicVehicleBrandEmbedApiModel {
12
+ id: string;
13
+ name: string;
14
+ logo: string | null;
15
+ }
16
+
17
+ export interface PublicVehicleListItemApiModel {
18
+ id: string;
19
+ model: string;
20
+ image: string | null;
21
+ batteryCapacity: number | null;
22
+ type: VehicleTypeCatalog;
23
+ brand: PublicVehicleBrandEmbedApiModel;
24
+ }
25
+
26
+ export interface AdminVehicleListItemApiModel {
27
+ id: string;
28
+ model: string;
29
+ image: string | null;
30
+ batteryCapacity: number | null;
31
+ type: VehicleTypeCatalog;
32
+ vehicleBrandId: string;
33
+ isActive: boolean;
34
+ year: number | null;
35
+ brand: AdminVehicleBrandListItemApiModel;
36
+ createdAt: string;
37
+ }
38
+
39
+ export interface PublicVehicleListApiModel {
40
+ rows: PublicVehicleListItemApiModel[];
41
+ totalCount: number;
42
+ pageIndex: number;
43
+ pageSize: number;
44
+ orderBy: VehicleListOrderBy;
45
+ sortDirection: ApiSortDirection;
46
+ }
47
+
48
+ export interface AdminVehicleListApiModel {
49
+ rows: AdminVehicleListItemApiModel[];
50
+ totalCount: number;
51
+ pageIndex: number;
52
+ pageSize: number;
53
+ orderBy: VehicleListOrderBy;
54
+ sortDirection: ApiSortDirection;
55
+ }
56
+
57
+ export interface AdminVehicleDetailApiModel
58
+ extends Omit<AdminVehicleListItemApiModel, 'brand' | 'createdAt'>,
59
+ AuditTimestampsApiModel {
60
+ year: number | null;
61
+ legacyFirestoreId?: string | null;
62
+ brand: PublicVehicleBrandEmbedApiModel;
63
+ isDeleted: boolean;
64
+ }
65
+
66
+ export interface CreateVehicleRequest {
67
+ vehicleBrandId: string;
68
+ model: string;
69
+ image?: string | null;
70
+ batteryCapacity?: number | null;
71
+ type: VehicleTypeCatalog;
72
+ year?: number | null;
73
+ isActive?: boolean;
74
+ }
75
+
76
+ export interface UpdateVehicleRequest {
77
+ vehicleBrandId?: string;
78
+ model?: string;
79
+ image?: string | null;
80
+ batteryCapacity?: number | null;
81
+ type?: VehicleTypeCatalog;
82
+ year?: number | null;
83
+ isActive?: boolean;
84
+ }
@@ -62,15 +62,7 @@ export {RfidApiModel} from './rfid.api.model';
62
62
  export {OrderApiModel} from './order.api.model';
63
63
  export {VehicleApiModel} from './vehicle.api.model';
64
64
  export {BrandApiModel} from './brand.api.model';
65
- export {
66
- BrandListItemApiModel,
67
- BrandListApiModel,
68
- BrandDetailApiModel,
69
- CreateBrandRequest,
70
- UpdateBrandRequest,
71
- CreateBrandResponse,
72
- BrandListOrderBy
73
- } from './brand/brand.api.model';
65
+ export * from './catalog';
74
66
  export {BookingApiModel, Refund} from './booking.api.model';
75
67
  export {WalletTransactionApiModel} from './wallet-transaction.api.model';
76
68
  export {FleetVehicleApiModel} from './fleet-vehicle.api.model';
@@ -1,33 +1,18 @@
1
1
  #!/usr/bin/env bash
2
2
  #
3
- # Build local spotcharge-types and copy it into sibling project node_modules.
4
- # Never runs `npm install file:...` — that writes file:../spotcharge-types into
5
- # package.json and lockfiles, and some npm versions ignore --no-save.
6
- #
7
- # Any leftover file: spec is rewritten to ^<version> before install.
3
+ # Remove each sibling's node_modules/spotcharge-types, then install the
4
+ # published latest from npm. Does not copy the local tree and does not
5
+ # write file: specs.
8
6
  #
9
7
  # Usage (from spotcharge-types):
10
8
  # ./sync-types-to-repos.sh
11
9
  # npm run sync-repos
12
10
 
13
- set -u
11
+ set -euo pipefail
14
12
 
15
13
  SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
16
14
  TYPES_DIR="$SCRIPT_DIR"
17
15
  PROJECTS_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
18
- TYPES_VERSION="$(node -p "require('$TYPES_DIR/package.json').version")"
19
- PUBLISHED_SPEC="^${TYPES_VERSION}"
20
-
21
- TARGETS=(
22
- "spotcharge-node-ocpp"
23
- "spotcharge.co.in_mobile-app"
24
- "spotcharge-superadmin"
25
- "spotcharge-superadmin/functions"
26
- "spotcharge-fleet-mobile-app"
27
- "spotcharge-client-portal"
28
- "spotcharge-script"
29
- "spotcharge-script/scripts"
30
- )
31
16
 
32
17
  RED='\033[0;31m'
33
18
  GREEN='\033[0;32m'
@@ -43,136 +28,169 @@ fail() {
43
28
  exit 1
44
29
  }
45
30
 
46
- # Surgical string replace — do not JSON.parse/stringify lockfiles (preserves formatting).
47
- # Also drops lockfile "link": true entries so `npm install` cannot write file: back.
48
- strip_file_specs() {
49
- local project_dir="$1"
50
- node - "$project_dir" "$PUBLISHED_SPEC" "$TYPES_VERSION" <<'EOF'
31
+ discover_targets() {
32
+ node - "$PROJECTS_ROOT" "$TYPES_DIR" <<'EOF'
51
33
  const fs = require('fs');
52
34
  const path = require('path');
53
35
 
54
- const projectDir = process.argv[2];
55
- const publishedSpec = process.argv[3];
56
- const typesVersion = process.argv[4];
57
- const files = ['package.json', 'package-lock.json', 'npm-shrinkwrap.json'];
58
- const registryEntry = [
59
- ' "node_modules/spotcharge-types": {',
60
- ` "version": "${typesVersion}",`,
61
- ` "resolved": "https://registry.npmjs.org/spotcharge-types/-/spotcharge-types-${typesVersion}.tgz",`,
62
- ' "license": "ISC"',
63
- ' }',
64
- ].join('\n');
65
-
66
- const replaceFileSpecs = (raw) =>
67
- raw
68
- .replace(/("spotcharge-types"\s*:\s*)"file:[^"]+"/g, `$1"${publishedSpec}"`)
69
- .replace(/("version"\s*:\s*)"file:[^"]*spotcharge-types[^"]*"/g, `$1"${publishedSpec}"`)
70
- .replace(/\n "\.\.(?:\/\.\.)*\/spotcharge-types": \{[\s\S]*?\n \},/g, '')
71
- .replace(
72
- / "node_modules\/spotcharge-types": \{\s*"resolved": "(?:\.\.\/)+spotcharge-types",\s*"link": true\s*\}/g,
73
- registryEntry
74
- );
75
-
76
- const changed = [];
77
- for (const name of files) {
78
- const filePath = path.join(projectDir, name);
79
- if (!fs.existsSync(filePath)) {
80
- continue;
36
+ const root = process.argv[2];
37
+ const typesDir = process.argv[3];
38
+ const skipNames = new Set(['node_modules', 'dist', '.git', 'coverage']);
39
+ const gitSpec = /^(gitlab:|github:|git\+|https?:|ssh:)/;
40
+ const out = [];
41
+
42
+ function specOf(pkg) {
43
+ return (
44
+ (pkg.dependencies && pkg.dependencies['spotcharge-types']) ||
45
+ (pkg.devDependencies && pkg.devDependencies['spotcharge-types']) ||
46
+ null
47
+ );
48
+ }
49
+
50
+ function walk(dir, depth) {
51
+ if (depth > 3) {
52
+ return;
81
53
  }
82
- const raw = fs.readFileSync(filePath, 'utf8');
83
- const next = replaceFileSpecs(raw);
84
- if (next !== raw) {
85
- fs.writeFileSync(filePath, next);
86
- changed.push(name);
54
+ let entries;
55
+ try {
56
+ entries = fs.readdirSync(dir, { withFileTypes: true });
57
+ } catch {
58
+ return;
87
59
  }
88
- }
89
60
 
90
- if (changed.length) {
91
- process.stdout.write(`removed file: spec → ${publishedSpec} in ${changed.join(', ')}\n`);
92
- }
93
- EOF
61
+ const pkgPath = path.join(dir, 'package.json');
62
+ if (fs.existsSync(pkgPath) && path.resolve(dir) !== path.resolve(typesDir)) {
63
+ try {
64
+ const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
65
+ const spec = specOf(pkg);
66
+ if (spec && !gitSpec.test(spec)) {
67
+ out.push(path.relative(root, dir));
68
+ }
69
+ } catch {
70
+ // ignore unreadable package.json
71
+ }
72
+ }
73
+
74
+ for (const entry of entries) {
75
+ if (!entry.isDirectory() || skipNames.has(entry.name) || entry.name.startsWith('.')) {
76
+ continue;
77
+ }
78
+ walk(path.join(dir, entry.name), depth + 1);
79
+ }
94
80
  }
95
81
 
96
- has_file_spec() {
97
- local file_path="$1"
98
- [[ -f "$file_path" ]] && grep -qE '"spotcharge-types"[[:space:]]*:[[:space:]]*"file:' "$file_path"
82
+ walk(root, 0);
83
+ out.sort();
84
+ process.stdout.write(out.join('\n') + (out.length ? '\n' : ''));
85
+ EOF
99
86
  }
100
87
 
101
- copy_types_into_node_modules() {
88
+ remove_installed_types() {
102
89
  local project_dir="$1"
103
90
  local dest="$project_dir/node_modules/spotcharge-types"
104
91
 
105
- rm -rf "$dest"
106
92
  shopt -s nullglob
107
93
  rm -rf "$project_dir"/node_modules/.spotcharge-types-*
108
94
  shopt -u nullglob
109
95
 
110
- mkdir -p "$dest/dist"
111
- cp "$TYPES_DIR/package.json" "$dest/package.json"
112
- cp -R "$TYPES_DIR/dist/." "$dest/dist/"
96
+ if [[ ! -e "$dest" ]]; then
97
+ log " no node_modules/spotcharge-types"
98
+ return 0
99
+ fi
100
+
101
+ chmod -R u+w "$dest" 2>/dev/null || true
102
+ rm -rf "$dest"
103
+ if [[ -e "$dest" ]]; then
104
+ fail "could not remove $dest (file busy?). Close anything watching that folder and retry."
105
+ fi
106
+ log " removed node_modules/spotcharge-types"
113
107
  }
114
108
 
115
- install_types_in() {
109
+ install_latest() {
116
110
  local project_dir="$1"
117
- local label="$2"
118
- local strip_out
111
+ local latest="$2"
119
112
 
120
- if [[ ! -d "$project_dir" ]]; then
121
- log "${YELLOW}SKIP${NC} $label — directory not found: $project_dir"
122
- return 0
123
- fi
113
+ log " npm install spotcharge-types@${latest}"
114
+ cd "$project_dir" || fail "cannot cd to $project_dir"
124
115
 
125
- if [[ ! -f "$project_dir/package.json" ]]; then
126
- log "${YELLOW}SKIP${NC} $label — no package.json"
116
+ if npm install "spotcharge-types@${latest}"; then
127
117
  return 0
128
118
  fi
129
119
 
130
- log "\n${GREEN}==>${NC} $label"
120
+ log " ${YELLOW}retrying with --legacy-peer-deps${NC}"
121
+ npm install --legacy-peer-deps "spotcharge-types@${latest}"
122
+ }
131
123
 
132
- strip_out="$(strip_file_specs "$project_dir")"
133
- if [[ -n "$strip_out" ]]; then
134
- log " ${YELLOW}${strip_out}${NC}"
124
+ verify_installed() {
125
+ local project_dir="$1"
126
+ local label="$2"
127
+ local latest="$3"
128
+ local dest="$project_dir/node_modules/spotcharge-types/package.json"
129
+
130
+ if [[ ! -f "$dest" ]]; then
131
+ fail "$label — spotcharge-types missing after install"
135
132
  fi
136
133
 
137
- if has_file_spec "$project_dir/package.json"; then
138
- log " ${RED}file: spec still present in package.json${NC}"
139
- return 1
134
+ local installed
135
+ installed="$(node -p "require('$dest').version")"
136
+ if [[ "$installed" != "$latest" ]]; then
137
+ fail "$label — installed ${installed}, expected ${latest}"
140
138
  fi
139
+ }
140
+
141
+ install_types_in() {
142
+ local project_dir="$1"
143
+ local label="$2"
144
+ local latest="$3"
141
145
 
142
- log " copying spotcharge-types@${TYPES_VERSION} into node_modules"
146
+ if [[ ! -d "$project_dir" ]]; then
147
+ log "${YELLOW}SKIP${NC} $label — directory not found: $project_dir"
148
+ return 0
149
+ fi
143
150
 
144
- if copy_types_into_node_modules "$project_dir"; then
145
- log " ${GREEN}ok${NC}"
151
+ if [[ ! -f "$project_dir/package.json" ]]; then
152
+ log "${YELLOW}SKIP${NC} $label — no package.json"
146
153
  return 0
147
154
  fi
148
155
 
149
- log " ${RED}failed${NC} in $project_dir"
150
- return 1
156
+ log "\n${GREEN}==>${NC} $label"
157
+ remove_installed_types "$project_dir"
158
+ install_latest "$project_dir" "$latest"
159
+ verify_installed "$project_dir" "$label" "$latest"
160
+ log " ${GREEN}ok${NC} spotcharge-types@${latest}"
151
161
  }
152
162
 
153
163
  main() {
154
- log "Building spotcharge-types@${TYPES_VERSION}..."
155
- cd "$TYPES_DIR" || fail "cannot cd to $TYPES_DIR"
156
- npm start || fail "types build failed (npm start)"
157
-
158
- if [[ ! -f "$TYPES_DIR/dist/index.js" ]]; then
159
- fail "build output missing: dist/index.js — run npm start in spotcharge-types first"
164
+ local latest
165
+ log "Resolving latest spotcharge-types from npm..."
166
+ latest="$(npm view spotcharge-types version)"
167
+ [[ -n "$latest" ]] || fail "npm view spotcharge-types version returned empty"
168
+ log " latest is ${GREEN}${latest}${NC}"
169
+
170
+ local targets=()
171
+ local line
172
+ while IFS= read -r line; do
173
+ [[ -n "$line" ]] && targets+=("$line")
174
+ done < <(discover_targets)
175
+
176
+ if [[ "${#targets[@]}" -eq 0 ]]; then
177
+ fail "no sibling packages depend on spotcharge-types"
160
178
  fi
161
179
 
162
- local failed=0
163
- local target project_dir
180
+ log "Targets: ${targets[*]}"
164
181
 
165
- for target in "${TARGETS[@]}"; do
166
- project_dir="$PROJECTS_ROOT/$target"
167
- install_types_in "$project_dir" "$target" || failed=$((failed + 1))
182
+ local failed=0
183
+ local target
184
+ for target in "${targets[@]}"; do
185
+ install_types_in "$PROJECTS_ROOT/$target" "$target" "$latest" || failed=$((failed + 1))
168
186
  done
169
187
 
170
188
  log ""
171
189
  if [[ "$failed" -gt 0 ]]; then
172
- fail "$failed project(s) failed to install spotcharge-types"
190
+ fail "$failed project(s) failed to install spotcharge-types@${latest}"
173
191
  fi
174
192
 
175
- log "${GREEN}Done.${NC} spotcharge-types@${TYPES_VERSION} synced. package.json uses ${PUBLISHED_SPEC}, not file:."
193
+ log "${GREEN}Done.${NC} spotcharge-types@${latest} installed from npm."
176
194
  }
177
195
 
178
196
  main "$@"