@temboplus/tembo-dashboard 0.2.9 → 0.3.0-rc.1

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 (43) hide show
  1. package/dist/index.cjs.js +1 -1
  2. package/dist/index.cjs.js.map +1 -1
  3. package/dist/index.d.ts +2 -0
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.esm.js +1 -1
  6. package/dist/index.esm.js.map +1 -1
  7. package/dist/modules/auth/auth.api-contract.d.ts +2 -1
  8. package/dist/modules/auth/auth.api-contract.d.ts.map +1 -1
  9. package/dist/modules/auth/auth.dtos.d.ts +12 -1
  10. package/dist/modules/auth/auth.dtos.d.ts.map +1 -1
  11. package/dist/modules/auth/user.model.d.ts +10 -2
  12. package/dist/modules/auth/user.model.d.ts.map +1 -1
  13. package/dist/modules/collection/collection.api-contract.d.ts +8 -8
  14. package/dist/modules/collection/collection.types.d.ts +6 -6
  15. package/dist/modules/payout/payout.api-contract.d.ts +6 -6
  16. package/dist/modules/payout/payout.types.d.ts +6 -6
  17. package/dist/modules/settlement/index.d.ts +5 -0
  18. package/dist/modules/settlement/index.d.ts.map +1 -0
  19. package/dist/modules/settlement/settlement.api-contract.d.ts +255 -0
  20. package/dist/modules/settlement/settlement.api-contract.d.ts.map +1 -0
  21. package/dist/modules/settlement/settlement.model.d.ts +106 -0
  22. package/dist/modules/settlement/settlement.model.d.ts.map +1 -0
  23. package/dist/modules/settlement/settlement.repository.d.ts +75 -0
  24. package/dist/modules/settlement/settlement.repository.d.ts.map +1 -0
  25. package/dist/modules/settlement/settlement.types.d.ts +140 -0
  26. package/dist/modules/settlement/settlement.types.d.ts.map +1 -0
  27. package/dist/modules/vendor/index.d.ts +5 -0
  28. package/dist/modules/vendor/index.d.ts.map +1 -0
  29. package/dist/modules/vendor/vendor.api-contract.d.ts +45 -0
  30. package/dist/modules/vendor/vendor.api-contract.d.ts.map +1 -0
  31. package/dist/modules/vendor/vendor.model.d.ts +76 -0
  32. package/dist/modules/vendor/vendor.model.d.ts.map +1 -0
  33. package/dist/modules/vendor/vendor.repository.d.ts +17 -0
  34. package/dist/modules/vendor/vendor.repository.d.ts.map +1 -0
  35. package/dist/modules/vendor/vendor.types.d.ts +17 -0
  36. package/dist/modules/vendor/vendor.types.d.ts.map +1 -0
  37. package/dist/modules/wallet/wallet.api-contract.d.ts +14 -2
  38. package/dist/modules/wallet/wallet.api-contract.d.ts.map +1 -1
  39. package/dist/modules/wallet/wallet.model.d.ts +8 -7
  40. package/dist/modules/wallet/wallet.model.d.ts.map +1 -1
  41. package/dist/modules/wallet/wallet.types.d.ts +7 -4
  42. package/dist/modules/wallet/wallet.types.d.ts.map +1 -1
  43. package/package.json +1 -1
@@ -0,0 +1,75 @@
1
+ import { BaseRepository } from "../../lib/api/index.js";
2
+ import { settlementContract } from "./settlement.api-contract.js";
3
+ import { Settlement } from "./settlement.model.js";
4
+ import { type ACTION_SETTLEMENT_STATUS, type CREATE_SETTLEMENT_STATUS, SETTLEMENT_ACTION, type SettlementFilters } from "./settlement.types.js";
5
+ /**
6
+ * Input for creating a new settlement request.
7
+ */
8
+ export interface CreateSettlementInput {
9
+ /** Source wallet account number — must belong to your vendor */
10
+ accountNo: string;
11
+ description: string;
12
+ /** Must not be 0 */
13
+ amount: number;
14
+ }
15
+ /**
16
+ * Outcome of a settlement creation request.
17
+ * `settlement` is only present when `status` is `SUCCESS`.
18
+ */
19
+ export interface CreateSettlementResult {
20
+ status: CREATE_SETTLEMENT_STATUS;
21
+ settlement?: Settlement;
22
+ }
23
+ /**
24
+ * Outcome of a settlement approval/rejection request.
25
+ * `settlement` is present when `status` is `SUCCESS` (updated state)
26
+ * or `INVALID_STATE` (current state).
27
+ */
28
+ export interface ActionSettlementResult {
29
+ status: ACTION_SETTLEMENT_STATUS;
30
+ settlement?: Settlement;
31
+ }
32
+ /**
33
+ * Repository class for managing settlements through API interactions.
34
+ * Handles listing, creating and actioning (approving/rejecting) settlements.
35
+ *
36
+ * The create and action endpoints report expected failures via a `status`
37
+ * field in the response body rather than HTTP errors — the corresponding
38
+ * methods return that status instead of throwing, so callers must inspect it.
39
+ */
40
+ export declare class SettlementRepository extends BaseRepository<typeof settlementContract> {
41
+ constructor(options?: {
42
+ token?: string;
43
+ root?: string;
44
+ });
45
+ /**
46
+ * Get all settlements belonging to your vendor, with optional
47
+ * filtering/sorting (e.g. `{ status: SETTLEMENT_STATUS.PENDING }`)
48
+ */
49
+ getSettlements(filters?: SettlementFilters): Promise<Settlement[]>;
50
+ /**
51
+ * Get a specific settlement by ID
52
+ */
53
+ getSettlement(id: string): Promise<Settlement>;
54
+ /**
55
+ * Create a new settlement request, initiated by the authenticated user.
56
+ * Inspect `status` on the result — expected failures (e.g.
57
+ * `WALLET_NOT_FOUND`, `MISSING_BANK_DETAILS`) do not throw.
58
+ */
59
+ createSettlement(input: CreateSettlementInput): Promise<CreateSettlementResult>;
60
+ /**
61
+ * Approve or reject a PENDING settlement, actioned by the authenticated
62
+ * user. Inspect `status` on the result — expected failures (e.g.
63
+ * `INVALID_STATE`, `SELF_ACTION_NOT_ALLOWED`) do not throw.
64
+ */
65
+ actionSettlement(id: string, action: SETTLEMENT_ACTION): Promise<ActionSettlementResult>;
66
+ /**
67
+ * Convenience wrapper for approving a settlement
68
+ */
69
+ approveSettlement(id: string): Promise<ActionSettlementResult>;
70
+ /**
71
+ * Convenience wrapper for rejecting a settlement
72
+ */
73
+ rejectSettlement(id: string): Promise<ActionSettlementResult>;
74
+ }
75
+ //# sourceMappingURL=settlement.repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settlement.repository.d.ts","sourceRoot":"","sources":["../../../src/modules/settlement/settlement.repository.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAuB,MAAM,uBAAuB,CAAC;AACxE,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,iBAAiB,EACjB,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,wBAAwB,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,wBAAwB,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,cAAc,CAAC,OAAO,kBAAkB,CAAC;gBACrE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IAIvD;;;OAGG;IACG,cAAc,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAMxE;;OAEG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAUpD;;;;OAIG;IACG,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAarF;;;;OAIG;IACG,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgB9F;;OAEG;IACG,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAIpE;;OAEG;IACG,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAGpE"}
@@ -0,0 +1,140 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * Lifecycle statuses of a settlement.
4
+ */
5
+ export declare enum SETTLEMENT_STATUS {
6
+ PENDING = "PENDING",
7
+ APPROVED = "APPROVED",
8
+ REJECTED = "REJECTED"
9
+ }
10
+ /**
11
+ * Actions that can be taken on a `PENDING` settlement.
12
+ */
13
+ export declare enum SETTLEMENT_ACTION {
14
+ APPROVED = "APPROVED",
15
+ REJECTED = "REJECTED"
16
+ }
17
+ /**
18
+ * Outcome statuses returned in the body of `POST /settlement`.
19
+ * The API responds with HTTP success even for expected failures —
20
+ * callers must inspect this status, not just the HTTP status code.
21
+ */
22
+ export declare enum CREATE_SETTLEMENT_STATUS {
23
+ SUCCESS = "SUCCESS",
24
+ WALLET_NOT_FOUND = "WALLET_NOT_FOUND",
25
+ INITIATOR_NOT_AUTHORIZED = "INITIATOR_NOT_AUTHORIZED",
26
+ MISSING_BANK_DETAILS = "MISSING_BANK_DETAILS",
27
+ UNSUPPORTED_BANK_CODE = "UNSUPPORTED_BANK_CODE",
28
+ FAILED = "FAILED"
29
+ }
30
+ /**
31
+ * Outcome statuses returned in the body of `POST /settlement/:id/action`.
32
+ * The API responds with HTTP success even for expected failures —
33
+ * callers must inspect this status, not just the HTTP status code.
34
+ */
35
+ export declare enum ACTION_SETTLEMENT_STATUS {
36
+ SUCCESS = "SUCCESS",
37
+ SETTLEMENT_NOT_FOUND = "SETTLEMENT_NOT_FOUND",
38
+ ACTIONER_NOT_AUTHORIZED = "ACTIONER_NOT_AUTHORIZED",
39
+ SELF_ACTION_NOT_ALLOWED = "SELF_ACTION_NOT_ALLOWED",
40
+ INVALID_STATE = "INVALID_STATE",
41
+ FAILED = "FAILED"
42
+ }
43
+ export declare const SettlementDTOSchemas: {
44
+ settlement: z.ZodObject<{
45
+ id: z.ZodString;
46
+ date: z.ZodString;
47
+ initiatedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
48
+ initiatedById: z.ZodOptional<z.ZodNullable<z.ZodString>>;
49
+ actionedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
50
+ actionedById: z.ZodOptional<z.ZodNullable<z.ZodString>>;
51
+ vendorId: z.ZodString;
52
+ walletId: z.ZodString;
53
+ accountNo: z.ZodString;
54
+ status: z.ZodEnum<typeof SETTLEMENT_STATUS>;
55
+ statusCode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
56
+ description: z.ZodString;
57
+ bankAccountNo: z.ZodOptional<z.ZodNullable<z.ZodString>>;
58
+ bankAccountName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
59
+ bankCode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
60
+ amount: z.ZodNumber;
61
+ payoutId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
62
+ transactionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
63
+ createdAt: z.ZodString;
64
+ updatedAt: z.ZodString;
65
+ }, z.core.$strip>;
66
+ settlementStatus: z.ZodEnum<typeof SETTLEMENT_STATUS>;
67
+ settlementAction: z.ZodEnum<typeof SETTLEMENT_ACTION>;
68
+ settlementFilters: z.ZodObject<{
69
+ status: z.ZodOptional<z.ZodEnum<typeof SETTLEMENT_STATUS>>;
70
+ accountNo: z.ZodOptional<z.ZodString>;
71
+ walletId: z.ZodOptional<z.ZodString>;
72
+ }, z.core.$catchall<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
73
+ createSettlementRequest: z.ZodObject<{
74
+ accountNo: z.ZodString;
75
+ description: z.ZodString;
76
+ amount: z.ZodNumber;
77
+ }, z.core.$strip>;
78
+ createSettlementStatus: z.ZodEnum<typeof CREATE_SETTLEMENT_STATUS>;
79
+ createSettlementResponse: z.ZodObject<{
80
+ status: z.ZodEnum<typeof CREATE_SETTLEMENT_STATUS>;
81
+ data: z.ZodOptional<z.ZodObject<{
82
+ id: z.ZodString;
83
+ date: z.ZodString;
84
+ initiatedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
85
+ initiatedById: z.ZodOptional<z.ZodNullable<z.ZodString>>;
86
+ actionedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
87
+ actionedById: z.ZodOptional<z.ZodNullable<z.ZodString>>;
88
+ vendorId: z.ZodString;
89
+ walletId: z.ZodString;
90
+ accountNo: z.ZodString;
91
+ status: z.ZodEnum<typeof SETTLEMENT_STATUS>;
92
+ statusCode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
93
+ description: z.ZodString;
94
+ bankAccountNo: z.ZodOptional<z.ZodNullable<z.ZodString>>;
95
+ bankAccountName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
96
+ bankCode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
97
+ amount: z.ZodNumber;
98
+ payoutId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
99
+ transactionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
100
+ createdAt: z.ZodString;
101
+ updatedAt: z.ZodString;
102
+ }, z.core.$strip>>;
103
+ }, z.core.$strip>;
104
+ actionSettlementRequest: z.ZodObject<{
105
+ status: z.ZodEnum<typeof SETTLEMENT_ACTION>;
106
+ }, z.core.$strip>;
107
+ actionSettlementStatus: z.ZodEnum<typeof ACTION_SETTLEMENT_STATUS>;
108
+ actionSettlementResponse: z.ZodObject<{
109
+ status: z.ZodEnum<typeof ACTION_SETTLEMENT_STATUS>;
110
+ data: z.ZodOptional<z.ZodObject<{
111
+ id: z.ZodString;
112
+ date: z.ZodString;
113
+ initiatedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
114
+ initiatedById: z.ZodOptional<z.ZodNullable<z.ZodString>>;
115
+ actionedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
116
+ actionedById: z.ZodOptional<z.ZodNullable<z.ZodString>>;
117
+ vendorId: z.ZodString;
118
+ walletId: z.ZodString;
119
+ accountNo: z.ZodString;
120
+ status: z.ZodEnum<typeof SETTLEMENT_STATUS>;
121
+ statusCode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
122
+ description: z.ZodString;
123
+ bankAccountNo: z.ZodOptional<z.ZodNullable<z.ZodString>>;
124
+ bankAccountName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
125
+ bankCode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
126
+ amount: z.ZodNumber;
127
+ payoutId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
128
+ transactionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
129
+ createdAt: z.ZodString;
130
+ updatedAt: z.ZodString;
131
+ }, z.core.$strip>>;
132
+ }, z.core.$strip>;
133
+ };
134
+ export type SettlementDTO = z.infer<typeof SettlementDTOSchemas.settlement>;
135
+ export type SettlementFilters = z.infer<typeof SettlementDTOSchemas.settlementFilters>;
136
+ export type CreateSettlementRequestDTO = z.infer<typeof SettlementDTOSchemas.createSettlementRequest>;
137
+ export type CreateSettlementResponseDTO = z.infer<typeof SettlementDTOSchemas.createSettlementResponse>;
138
+ export type ActionSettlementRequestDTO = z.infer<typeof SettlementDTOSchemas.actionSettlementRequest>;
139
+ export type ActionSettlementResponseDTO = z.infer<typeof SettlementDTOSchemas.actionSettlementResponse>;
140
+ //# sourceMappingURL=settlement.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settlement.types.d.ts","sourceRoot":"","sources":["../../../src/modules/settlement/settlement.types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,QAAQ,aAAa;CACtB;AAED;;GAEG;AACH,oBAAY,iBAAiB;IAC3B,QAAQ,aAAa;IACrB,QAAQ,aAAa;CACtB;AAED;;;;GAIG;AACH,oBAAY,wBAAwB;IAClC,OAAO,YAAY;IACnB,gBAAgB,qBAAqB;IACrC,wBAAwB,6BAA6B;IACrD,oBAAoB,yBAAyB;IAC7C,qBAAqB,0BAA0B;IAC/C,MAAM,WAAW;CAClB;AAED;;;;GAIG;AACH,oBAAY,wBAAwB;IAClC,OAAO,YAAY;IACnB,oBAAoB,yBAAyB;IAC7C,uBAAuB,4BAA4B;IACnD,uBAAuB,4BAA4B;IACnD,aAAa,kBAAkB;IAC/B,MAAM,WAAW;CAClB;AAoED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWhC,CAAC;AAGF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,UAAU,CAAC,CAAC;AAC5E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;AACvF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,uBAAuB,CAAC,CAAC;AACtG,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,wBAAwB,CAAC,CAAC;AACxG,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,uBAAuB,CAAC,CAAC;AACtG,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ export * from "./vendor.api-contract.js";
2
+ export * from "./vendor.model.js";
3
+ export * from "./vendor.repository.js";
4
+ export * from "./vendor.types.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/vendor/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,45 @@
1
+ export declare const vendorContract: {
2
+ getMe: {
3
+ summary: "Get vendor profile";
4
+ description: "Retrieve the vendor profile of the authenticated user, including feature flags and bank details";
5
+ method: "GET";
6
+ path: "/me";
7
+ responses: {
8
+ 200: import("zod").ZodObject<{
9
+ businessName: import("zod").ZodString;
10
+ tradeName: import("zod").ZodString;
11
+ enableCollections: import("zod").ZodNumber;
12
+ enablePayouts: import("zod").ZodNumber;
13
+ enableRemittance: import("zod").ZodNumber;
14
+ bankAccountNo: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
15
+ bankAccountName: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
16
+ bankCode: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
17
+ enableAutoSettlement: import("zod").ZodNumber;
18
+ disablePaymentApproval: import("zod").ZodNumber;
19
+ }, import("zod/v4/core").$strip>;
20
+ 401: import("zod").ZodObject<{
21
+ reason: import("zod").ZodOptional<import("zod").ZodString>;
22
+ error: import("zod").ZodOptional<import("zod").ZodString>;
23
+ details: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
24
+ message: import("zod").ZodOptional<import("zod").ZodString>;
25
+ statusCode: import("zod").ZodLiteral<401>;
26
+ }, import("zod/v4/core").$strip>;
27
+ 403: import("zod").ZodObject<{
28
+ reason: import("zod").ZodOptional<import("zod").ZodString>;
29
+ error: import("zod").ZodOptional<import("zod").ZodString>;
30
+ details: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
31
+ message: import("zod").ZodOptional<import("zod").ZodString>;
32
+ statusCode: import("zod").ZodLiteral<403>;
33
+ }, import("zod/v4/core").$strip>;
34
+ 500: import("zod").ZodObject<{
35
+ reason: import("zod").ZodOptional<import("zod").ZodString>;
36
+ error: import("zod").ZodOptional<import("zod").ZodString>;
37
+ details: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
38
+ message: import("zod").ZodOptional<import("zod").ZodString>;
39
+ statusCode: import("zod").ZodLiteral<500>;
40
+ }, import("zod/v4/core").$strip>;
41
+ };
42
+ };
43
+ };
44
+ export type VendorContract = typeof vendorContract;
45
+ //# sourceMappingURL=vendor.api-contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vendor.api-contract.d.ts","sourceRoot":"","sources":["../../../src/modules/vendor/vendor.api-contract.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAczB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Raw vendor profile data as returned by the API.
3
+ * Feature flags are numeric (0 = disabled, 1 = enabled).
4
+ */
5
+ export interface VendorData {
6
+ businessName: string;
7
+ tradeName: string;
8
+ enableCollections: number;
9
+ enablePayouts: number;
10
+ enableRemittance: number;
11
+ bankAccountNo?: string | null;
12
+ bankAccountName?: string | null;
13
+ bankCode?: string | null;
14
+ enableAutoSettlement: number;
15
+ disablePaymentApproval: number;
16
+ }
17
+ /**
18
+ * Represents a vendor profile with its feature flags and settlement bank details.
19
+ */
20
+ export declare class Vendor {
21
+ readonly businessName: string;
22
+ readonly tradeName: string;
23
+ readonly enableCollections: number;
24
+ readonly enablePayouts: number;
25
+ readonly enableRemittance: number;
26
+ readonly bankAccountNo?: string | null;
27
+ readonly bankAccountName?: string | null;
28
+ readonly bankCode?: string | null;
29
+ readonly enableAutoSettlement: number;
30
+ readonly disablePaymentApproval: number;
31
+ constructor(data: VendorData);
32
+ /**
33
+ * Whether collections are enabled for this vendor.
34
+ */
35
+ isCollectionsEnabled(): boolean;
36
+ /**
37
+ * Whether payouts are enabled for this vendor.
38
+ */
39
+ isPayoutsEnabled(): boolean;
40
+ /**
41
+ * Whether remittance is enabled for this vendor.
42
+ */
43
+ isRemittanceEnabled(): boolean;
44
+ /**
45
+ * Whether settlements are automatically initiated for this vendor.
46
+ */
47
+ isAutoSettlementEnabled(): boolean;
48
+ /**
49
+ * Whether payments require approval before processing.
50
+ * The API exposes this as a "disable" flag; this helper inverts it
51
+ * so consumers can reason in the positive.
52
+ */
53
+ requiresPaymentApproval(): boolean;
54
+ /**
55
+ * Whether the vendor has a bank account configured for settlements.
56
+ */
57
+ hasBankDetails(): boolean;
58
+ /**
59
+ * Gets the vendor's display name.
60
+ * Falls back to business name if trade name is missing.
61
+ */
62
+ getDisplayName(): string;
63
+ /**
64
+ * Create Vendor instance from raw API data
65
+ */
66
+ static from(data: unknown): Vendor | undefined;
67
+ /**
68
+ * Creates a Vendor from JSON (same shape as VendorData).
69
+ */
70
+ static fromJson(json: VendorData): Vendor;
71
+ /**
72
+ * Converts the Vendor to JSON format.
73
+ */
74
+ toJson(): VendorData;
75
+ }
76
+ //# sourceMappingURL=vendor.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vendor.model.d.ts","sourceRoot":"","sources":["../../../src/modules/vendor/vendor.model.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,sBAAsB,EAAE,MAAM,CAAC;CAChC;AAID;;GAEG;AACH,qBAAa,MAAM;IACjB,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,iBAAiB,EAAE,MAAM,CAAC;IAC1C,SAAgB,aAAa,EAAE,MAAM,CAAC;IACtC,SAAgB,gBAAgB,EAAE,MAAM,CAAC;IACzC,SAAgB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9C,SAAgB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,SAAgB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,SAAgB,oBAAoB,EAAE,MAAM,CAAC;IAC7C,SAAgB,sBAAsB,EAAE,MAAM,CAAC;gBAEnC,IAAI,EAAE,UAAU;IAa5B;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAI/B;;OAEG;IACH,gBAAgB,IAAI,OAAO;IAI3B;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;OAEG;IACH,uBAAuB,IAAI,OAAO;IAIlC;;;;OAIG;IACH,uBAAuB,IAAI,OAAO;IAIlC;;OAEG;IACH,cAAc,IAAI,OAAO;IAIzB;;;OAGG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS;IAc9C;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM;IAIzC;;OAEG;IACH,MAAM,IAAI,UAAU;CAcrB"}
@@ -0,0 +1,17 @@
1
+ import { BaseRepository } from "../../lib/api/index.js";
2
+ import { vendorContract } from "./vendor.api-contract.js";
3
+ import { Vendor } from "./vendor.model.js";
4
+ /**
5
+ * Repository class for managing vendor profile data through API interactions.
6
+ */
7
+ export declare class VendorRepository extends BaseRepository<typeof vendorContract> {
8
+ constructor(options?: {
9
+ token?: string;
10
+ root?: string;
11
+ });
12
+ /**
13
+ * Get the vendor profile of the authenticated user
14
+ */
15
+ getMe(): Promise<Vendor>;
16
+ }
17
+ //# sourceMappingURL=vendor.repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vendor.repository.d.ts","sourceRoot":"","sources":["../../../src/modules/vendor/vendor.repository.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAmB,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,cAAc,CAAC,OAAO,cAAc,CAAC;gBAC7D,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IAIvD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;CAS/B"}
@@ -0,0 +1,17 @@
1
+ import { z } from "zod";
2
+ export declare const VendorDTOSchemas: {
3
+ vendor: z.ZodObject<{
4
+ businessName: z.ZodString;
5
+ tradeName: z.ZodString;
6
+ enableCollections: z.ZodNumber;
7
+ enablePayouts: z.ZodNumber;
8
+ enableRemittance: z.ZodNumber;
9
+ bankAccountNo: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10
+ bankAccountName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
11
+ bankCode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
12
+ enableAutoSettlement: z.ZodNumber;
13
+ disablePaymentApproval: z.ZodNumber;
14
+ }, z.core.$strip>;
15
+ };
16
+ export type VendorDTO = z.infer<typeof VendorDTOSchemas.vendor>;
17
+ //# sourceMappingURL=vendor.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vendor.types.d.ts","sourceRoot":"","sources":["../../../src/modules/vendor/vendor.types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAqBxB,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;CAE5B,CAAC;AAGF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC"}
@@ -13,7 +13,13 @@ export declare const walletContract: {
13
13
  shadowAccountNo: z.ZodOptional<z.ZodNullable<z.ZodString>>;
14
14
  externalId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
15
15
  reference: z.ZodOptional<z.ZodNullable<z.ZodString>>;
16
- type: z.ZodString;
16
+ type: z.ZodPipe<z.ZodEnum<{
17
+ COLLECTION: "COLLECTION";
18
+ DISBURSEMENT: "DISBURSEMENT";
19
+ Vendor: "Vendor";
20
+ "DEFAULT DISBURSEMENT": "DEFAULT DISBURSEMENT";
21
+ "DEFAULT COLLECTION": "DEFAULT COLLECTION";
22
+ }>, z.ZodTransform<import("./wallet.types.js").WALLET_TYPE, "COLLECTION" | "DISBURSEMENT" | "Vendor" | "DEFAULT DISBURSEMENT" | "DEFAULT COLLECTION">>;
17
23
  vendorId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
18
24
  balance: z.ZodNumber;
19
25
  minBalance: z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>;
@@ -55,7 +61,13 @@ export declare const walletContract: {
55
61
  shadowAccountNo: z.ZodOptional<z.ZodNullable<z.ZodString>>;
56
62
  externalId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
57
63
  reference: z.ZodOptional<z.ZodNullable<z.ZodString>>;
58
- type: z.ZodString;
64
+ type: z.ZodPipe<z.ZodEnum<{
65
+ COLLECTION: "COLLECTION";
66
+ DISBURSEMENT: "DISBURSEMENT";
67
+ Vendor: "Vendor";
68
+ "DEFAULT DISBURSEMENT": "DEFAULT DISBURSEMENT";
69
+ "DEFAULT COLLECTION": "DEFAULT COLLECTION";
70
+ }>, z.ZodTransform<import("./wallet.types.js").WALLET_TYPE, "COLLECTION" | "DISBURSEMENT" | "Vendor" | "DEFAULT DISBURSEMENT" | "DEFAULT COLLECTION">>;
59
71
  vendorId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
60
72
  balance: z.ZodNumber;
61
73
  minBalance: z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>;
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.api-contract.d.ts","sourceRoot":"","sources":["../../../src/modules/wallet/wallet.api-contract.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDzB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC"}
1
+ {"version":3,"file":"wallet.api-contract.d.ts","sourceRoot":"","sources":["../../../src/modules/wallet/wallet.api-contract.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDzB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC"}
@@ -1,4 +1,5 @@
1
- import { Amount, type AmountJson, type CurrencyCode } from "@temboplus/frontend-core";
1
+ import { Amount, type AmountJSON, type CurrencyCode } from "@temboplus/frontend-core";
2
+ import { WALLET_TYPE } from "./wallet.types.js";
2
3
  export interface WalletData {
3
4
  id: string;
4
5
  accountNo: string;
@@ -6,7 +7,7 @@ export interface WalletData {
6
7
  shadowAccountNo?: string | null;
7
8
  externalId?: string | null;
8
9
  reference?: string | null;
9
- type: string;
10
+ type: WALLET_TYPE;
10
11
  vendorId?: string | null;
11
12
  balance: number;
12
13
  minBalance: number | string;
@@ -23,11 +24,11 @@ export interface WalletJson {
23
24
  shadowAccountNo?: string | null;
24
25
  externalId?: string | null;
25
26
  reference?: string | null;
26
- type: string;
27
+ type: WALLET_TYPE;
27
28
  vendorId?: string | null;
28
- balance: AmountJson;
29
- minBalance: AmountJson;
30
- approvalLimit: AmountJson;
29
+ balance: AmountJSON;
30
+ minBalance: AmountJSON;
31
+ approvalLimit: AmountJSON;
31
32
  currency: CurrencyCode;
32
33
  countryCode: string;
33
34
  createdAt: string;
@@ -40,7 +41,7 @@ export declare class Wallet {
40
41
  readonly shadowAccountNo?: string | null;
41
42
  readonly externalId?: string | null;
42
43
  readonly reference?: string | null;
43
- readonly type: string;
44
+ readonly type: WALLET_TYPE;
44
45
  readonly vendorId?: string | null;
45
46
  readonly balance: Amount;
46
47
  readonly minBalance: Amount;
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.model.d.ts","sourceRoot":"","sources":["../../../src/modules/wallet/wallet.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAiB,KAAK,UAAU,EAAE,KAAK,YAAY,EAAmB,MAAM,0BAA0B,CAAC;AAEtH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,UAAU,CAAC;IACpB,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,UAAU,CAAC;IAC1B,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,MAAM;IACjB,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,WAAW,EAAE,MAAM,CAAC;IACpC,SAAgB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,SAAgB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,SAAgB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,aAAa,EAAE,MAAM,CAAC;IACtC,SAAgB,QAAQ,EAAE,YAAY,CAAC;IACvC,SAAgB,WAAW,EAAE,MAAM,CAAC;IACpC,SAAgB,SAAS,EAAE,IAAI,CAAC;IAChC,SAAgB,SAAS,EAAE,IAAI,CAAC;IAEhC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAa;gBAE/B,IAAI,EAAE,UAAU;IA+B5B,eAAe,IAAI,QAAQ,CAAC,UAAU,CAAC;IAIvC,OAAO,CAAC,gBAAgB;IASxB,kBAAkB,IAAI,OAAO;IAI7B,oBAAoB,IAAI,OAAO;IAI/B,eAAe,IAAI,OAAO;IAI1B,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM;IAIrC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,EAAE,GAAG,SAAS;IAahE,MAAM,IAAI,UAAU;IAoBpB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS;CA6CtD"}
1
+ {"version":3,"file":"wallet.model.d.ts","sourceRoot":"","sources":["../../../src/modules/wallet/wallet.model.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,5 @@
1
1
  import { z } from "zod";
2
2
  export declare enum WALLET_TYPE {
3
- VENDOR = "Vendor",
4
- DEFAULT_DISBURSEMENT = "DEFAULT DISBURSEMENT",
5
- DEFAULT_COLLECTION = "DEFAULT COLLECTION",
6
3
  COLLECTION = "COLLECTION",
7
4
  DISBURSEMENT = "DISBURSEMENT"
8
5
  }
@@ -14,7 +11,13 @@ export declare const WalletDTOSchemas: {
14
11
  shadowAccountNo: z.ZodOptional<z.ZodNullable<z.ZodString>>;
15
12
  externalId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
16
13
  reference: z.ZodOptional<z.ZodNullable<z.ZodString>>;
17
- type: z.ZodString;
14
+ type: z.ZodPipe<z.ZodEnum<{
15
+ COLLECTION: "COLLECTION";
16
+ DISBURSEMENT: "DISBURSEMENT";
17
+ Vendor: "Vendor";
18
+ "DEFAULT DISBURSEMENT": "DEFAULT DISBURSEMENT";
19
+ "DEFAULT COLLECTION": "DEFAULT COLLECTION";
20
+ }>, z.ZodTransform<WALLET_TYPE, "COLLECTION" | "DISBURSEMENT" | "Vendor" | "DEFAULT DISBURSEMENT" | "DEFAULT COLLECTION">>;
18
21
  vendorId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
19
22
  balance: z.ZodNumber;
20
23
  minBalance: z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>;
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.types.d.ts","sourceRoot":"","sources":["../../../src/modules/wallet/wallet.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,oBAAoB,yBAAyB;IAC7C,kBAAkB,uBAAuB;IACzC,UAAU,eAAe;IACzB,YAAY,iBAAiB;CAC9B;AAuCD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM5B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAChE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;AACpF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,aAAa,CAAC,CAAC;AAC9E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"wallet.types.d.ts","sourceRoot":"","sources":["../../../src/modules/wallet/wallet.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,oBAAY,WAAW;IACrB,UAAU,eAAe;IACzB,YAAY,iBAAiB;CAC9B;AAiDD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM5B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAChE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;AACpF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,aAAa,CAAC,CAAC;AAC9E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,oBAAoB,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@temboplus/tembo-dashboard",
3
- "version": "0.2.9",
3
+ "version": "0.3.0-rc.1",
4
4
  "description": "A foundational library for Temboplus-Dashboard projects providing type-safe data layer abstraction with API contracts, domain models, and repositories.",
5
5
  "author": "Okello Gerald",
6
6
  "license": "MIT",