@23blocks/block-company 1.0.3 → 2.0.0
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.
- package/dist/index.d.ts +1 -0
- package/dist/index.esm.js +451 -0
- package/dist/src/index.d.ts +7 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/lib/company.block.d.ts +16 -0
- package/dist/src/lib/company.block.d.ts.map +1 -0
- package/dist/src/lib/mappers/company.mapper.d.ts +4 -0
- package/dist/src/lib/mappers/company.mapper.d.ts.map +1 -0
- package/dist/src/lib/mappers/department.mapper.d.ts +4 -0
- package/dist/src/lib/mappers/department.mapper.d.ts.map +1 -0
- package/dist/{lib/mappers/index.js → src/lib/mappers/index.d.ts} +1 -2
- package/dist/src/lib/mappers/index.d.ts.map +1 -0
- package/dist/src/lib/mappers/quarter.mapper.d.ts +4 -0
- package/dist/src/lib/mappers/quarter.mapper.d.ts.map +1 -0
- package/dist/src/lib/mappers/team-member.mapper.d.ts +4 -0
- package/dist/src/lib/mappers/team-member.mapper.d.ts.map +1 -0
- package/dist/src/lib/mappers/team.mapper.d.ts +4 -0
- package/dist/src/lib/mappers/team.mapper.d.ts.map +1 -0
- package/dist/src/lib/mappers/utils.d.ts +29 -0
- package/dist/src/lib/mappers/utils.d.ts.map +1 -0
- package/dist/src/lib/services/companies.service.d.ts +13 -0
- package/dist/src/lib/services/companies.service.d.ts.map +1 -0
- package/dist/src/lib/services/departments.service.d.ts +15 -0
- package/dist/src/lib/services/departments.service.d.ts.map +1 -0
- package/dist/{lib/services/index.js → src/lib/services/index.d.ts} +1 -2
- package/dist/src/lib/services/index.d.ts.map +1 -0
- package/dist/src/lib/services/quarters.service.d.ts +13 -0
- package/dist/src/lib/services/quarters.service.d.ts.map +1 -0
- package/dist/src/lib/services/team-members.service.d.ts +14 -0
- package/dist/src/lib/services/team-members.service.d.ts.map +1 -0
- package/dist/src/lib/services/teams.service.d.ts +14 -0
- package/dist/src/lib/services/teams.service.d.ts.map +1 -0
- package/dist/src/lib/types/company.d.ts +46 -0
- package/dist/src/lib/types/company.d.ts.map +1 -0
- package/dist/src/lib/types/department.d.ts +44 -0
- package/dist/src/lib/types/department.d.ts.map +1 -0
- package/dist/{lib/types/index.js → src/lib/types/index.d.ts} +1 -2
- package/dist/src/lib/types/index.d.ts.map +1 -0
- package/dist/src/lib/types/quarter.d.ts +40 -0
- package/dist/src/lib/types/quarter.d.ts.map +1 -0
- package/dist/src/lib/types/team-member.d.ts +32 -0
- package/dist/src/lib/types/team-member.d.ts.map +1 -0
- package/dist/src/lib/types/team.d.ts +37 -0
- package/dist/src/lib/types/team.d.ts.map +1 -0
- package/package.json +10 -8
- package/dist/index.js +0 -7
- package/dist/index.js.map +0 -1
- package/dist/lib/company.block.js +0 -24
- package/dist/lib/company.block.js.map +0 -1
- package/dist/lib/mappers/company.mapper.js +0 -23
- package/dist/lib/mappers/company.mapper.js.map +0 -1
- package/dist/lib/mappers/department.mapper.js +0 -21
- package/dist/lib/mappers/department.mapper.js.map +0 -1
- package/dist/lib/mappers/index.js.map +0 -1
- package/dist/lib/mappers/quarter.mapper.js +0 -21
- package/dist/lib/mappers/quarter.mapper.js.map +0 -1
- package/dist/lib/mappers/team-member.mapper.js +0 -19
- package/dist/lib/mappers/team-member.mapper.js.map +0 -1
- package/dist/lib/mappers/team.mapper.js +0 -20
- package/dist/lib/mappers/team.mapper.js.map +0 -1
- package/dist/lib/mappers/utils.js +0 -75
- package/dist/lib/mappers/utils.js.map +0 -1
- package/dist/lib/services/companies.service.js +0 -66
- package/dist/lib/services/companies.service.js.map +0 -1
- package/dist/lib/services/departments.service.js +0 -71
- package/dist/lib/services/departments.service.js.map +0 -1
- package/dist/lib/services/index.js.map +0 -1
- package/dist/lib/services/quarters.service.js +0 -62
- package/dist/lib/services/quarters.service.js.map +0 -1
- package/dist/lib/services/team-members.service.js +0 -60
- package/dist/lib/services/team-members.service.js.map +0 -1
- package/dist/lib/services/teams.service.js +0 -64
- package/dist/lib/services/teams.service.js.map +0 -1
- package/dist/lib/types/company.js +0 -3
- package/dist/lib/types/company.js.map +0 -1
- package/dist/lib/types/department.js +0 -3
- package/dist/lib/types/department.js.map +0 -1
- package/dist/lib/types/index.js.map +0 -1
- package/dist/lib/types/quarter.js +0 -3
- package/dist/lib/types/quarter.js.map +0 -1
- package/dist/lib/types/team-member.js +0 -3
- package/dist/lib/types/team-member.js.map +0 -1
- package/dist/lib/types/team.js +0 -3
- package/dist/lib/types/team.js.map +0 -1
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./src/index";
|
|
@@ -0,0 +1,451 @@
|
|
|
1
|
+
import { decodeOne, decodePageResult, decodeMany } from '@23blocks/jsonapi-codec';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Parse a string value, returning undefined for empty/undefined
|
|
5
|
+
*/ function parseString(value) {
|
|
6
|
+
if (value === null || value === undefined) {
|
|
7
|
+
return undefined;
|
|
8
|
+
}
|
|
9
|
+
const str = String(value);
|
|
10
|
+
return str.length > 0 ? str : undefined;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Parse a date value
|
|
14
|
+
*/ function parseDate(value) {
|
|
15
|
+
if (value === null || value === undefined) {
|
|
16
|
+
return undefined;
|
|
17
|
+
}
|
|
18
|
+
if (value instanceof Date) {
|
|
19
|
+
return value;
|
|
20
|
+
}
|
|
21
|
+
if (typeof value === 'string' || typeof value === 'number') {
|
|
22
|
+
const date = new Date(value);
|
|
23
|
+
return isNaN(date.getTime()) ? undefined : date;
|
|
24
|
+
}
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Parse a boolean value
|
|
29
|
+
*/ function parseBoolean(value) {
|
|
30
|
+
if (typeof value === 'boolean') {
|
|
31
|
+
return value;
|
|
32
|
+
}
|
|
33
|
+
if (value === 'true' || value === '1' || value === 1) {
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Parse a number value
|
|
40
|
+
*/ function parseNumber(value) {
|
|
41
|
+
if (value === null || value === undefined) {
|
|
42
|
+
return 0;
|
|
43
|
+
}
|
|
44
|
+
const num = Number(value);
|
|
45
|
+
return isNaN(num) ? 0 : num;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Parse entity status
|
|
49
|
+
*/ function parseStatus(value) {
|
|
50
|
+
const status = parseString(value);
|
|
51
|
+
if (status === 'active' || status === 'inactive' || status === 'pending' || status === 'archived' || status === 'deleted') {
|
|
52
|
+
return status;
|
|
53
|
+
}
|
|
54
|
+
return 'active';
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
const companyMapper = {
|
|
58
|
+
type: 'Company',
|
|
59
|
+
map: (resource)=>({
|
|
60
|
+
id: resource.id,
|
|
61
|
+
uniqueId: parseString(resource.attributes['unique_id']) || resource.id,
|
|
62
|
+
createdAt: parseDate(resource.attributes['created_at']) || new Date(),
|
|
63
|
+
updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),
|
|
64
|
+
code: parseString(resource.attributes['code']) || '',
|
|
65
|
+
name: parseString(resource.attributes['name']) || '',
|
|
66
|
+
description: parseString(resource.attributes['description']),
|
|
67
|
+
legalName: parseString(resource.attributes['legal_name']),
|
|
68
|
+
taxId: parseString(resource.attributes['tax_id']),
|
|
69
|
+
industry: parseString(resource.attributes['industry']),
|
|
70
|
+
website: parseString(resource.attributes['website']),
|
|
71
|
+
logoUrl: parseString(resource.attributes['logo_url']),
|
|
72
|
+
status: parseStatus(resource.attributes['status']),
|
|
73
|
+
enabled: parseBoolean(resource.attributes['enabled']),
|
|
74
|
+
payload: resource.attributes['payload']
|
|
75
|
+
})
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
function createCompaniesService(transport, _config) {
|
|
79
|
+
return {
|
|
80
|
+
async list (params) {
|
|
81
|
+
const queryParams = {};
|
|
82
|
+
if (params == null ? void 0 : params.page) queryParams['page'] = String(params.page);
|
|
83
|
+
if (params == null ? void 0 : params.perPage) queryParams['records'] = String(params.perPage);
|
|
84
|
+
if (params == null ? void 0 : params.status) queryParams['status'] = params.status;
|
|
85
|
+
if (params == null ? void 0 : params.search) queryParams['search'] = params.search;
|
|
86
|
+
if (params == null ? void 0 : params.sortBy) queryParams['sort'] = params.sortOrder === 'desc' ? `-${params.sortBy}` : params.sortBy;
|
|
87
|
+
const response = await transport.get('/companies', {
|
|
88
|
+
params: queryParams
|
|
89
|
+
});
|
|
90
|
+
return decodePageResult(response, companyMapper);
|
|
91
|
+
},
|
|
92
|
+
async get (uniqueId) {
|
|
93
|
+
const response = await transport.get(`/companies/${uniqueId}`);
|
|
94
|
+
return decodeOne(response, companyMapper);
|
|
95
|
+
},
|
|
96
|
+
async create (data) {
|
|
97
|
+
const response = await transport.post('/companies', {
|
|
98
|
+
company: {
|
|
99
|
+
code: data.code,
|
|
100
|
+
name: data.name,
|
|
101
|
+
description: data.description,
|
|
102
|
+
legal_name: data.legalName,
|
|
103
|
+
tax_id: data.taxId,
|
|
104
|
+
industry: data.industry,
|
|
105
|
+
website: data.website,
|
|
106
|
+
logo_url: data.logoUrl,
|
|
107
|
+
payload: data.payload
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
return decodeOne(response, companyMapper);
|
|
111
|
+
},
|
|
112
|
+
async update (uniqueId, data) {
|
|
113
|
+
const response = await transport.put(`/companies/${uniqueId}`, {
|
|
114
|
+
company: {
|
|
115
|
+
name: data.name,
|
|
116
|
+
description: data.description,
|
|
117
|
+
legal_name: data.legalName,
|
|
118
|
+
tax_id: data.taxId,
|
|
119
|
+
industry: data.industry,
|
|
120
|
+
website: data.website,
|
|
121
|
+
logo_url: data.logoUrl,
|
|
122
|
+
enabled: data.enabled,
|
|
123
|
+
status: data.status,
|
|
124
|
+
payload: data.payload
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
return decodeOne(response, companyMapper);
|
|
128
|
+
},
|
|
129
|
+
async delete (uniqueId) {
|
|
130
|
+
await transport.delete(`/companies/${uniqueId}`);
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
const departmentMapper = {
|
|
136
|
+
type: 'Department',
|
|
137
|
+
map: (resource)=>({
|
|
138
|
+
id: resource.id,
|
|
139
|
+
uniqueId: parseString(resource.attributes['unique_id']) || resource.id,
|
|
140
|
+
createdAt: parseDate(resource.attributes['created_at']) || new Date(),
|
|
141
|
+
updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),
|
|
142
|
+
companyUniqueId: parseString(resource.attributes['company_unique_id']) || '',
|
|
143
|
+
code: parseString(resource.attributes['code']) || '',
|
|
144
|
+
name: parseString(resource.attributes['name']) || '',
|
|
145
|
+
description: parseString(resource.attributes['description']),
|
|
146
|
+
parentUniqueId: parseString(resource.attributes['parent_unique_id']),
|
|
147
|
+
managerUniqueId: parseString(resource.attributes['manager_unique_id']),
|
|
148
|
+
status: parseStatus(resource.attributes['status']),
|
|
149
|
+
enabled: parseBoolean(resource.attributes['enabled']),
|
|
150
|
+
payload: resource.attributes['payload']
|
|
151
|
+
})
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
function createDepartmentsService(transport, _config) {
|
|
155
|
+
return {
|
|
156
|
+
async list (params) {
|
|
157
|
+
const queryParams = {};
|
|
158
|
+
if (params == null ? void 0 : params.page) queryParams['page'] = String(params.page);
|
|
159
|
+
if (params == null ? void 0 : params.perPage) queryParams['records'] = String(params.perPage);
|
|
160
|
+
if (params == null ? void 0 : params.companyUniqueId) queryParams['company_unique_id'] = params.companyUniqueId;
|
|
161
|
+
if (params == null ? void 0 : params.parentUniqueId) queryParams['parent_unique_id'] = params.parentUniqueId;
|
|
162
|
+
if (params == null ? void 0 : params.status) queryParams['status'] = params.status;
|
|
163
|
+
if (params == null ? void 0 : params.search) queryParams['search'] = params.search;
|
|
164
|
+
if (params == null ? void 0 : params.sortBy) queryParams['sort'] = params.sortOrder === 'desc' ? `-${params.sortBy}` : params.sortBy;
|
|
165
|
+
const response = await transport.get('/departments', {
|
|
166
|
+
params: queryParams
|
|
167
|
+
});
|
|
168
|
+
return decodePageResult(response, departmentMapper);
|
|
169
|
+
},
|
|
170
|
+
async get (uniqueId) {
|
|
171
|
+
const response = await transport.get(`/departments/${uniqueId}`);
|
|
172
|
+
return decodeOne(response, departmentMapper);
|
|
173
|
+
},
|
|
174
|
+
async create (data) {
|
|
175
|
+
const response = await transport.post('/departments', {
|
|
176
|
+
department: {
|
|
177
|
+
company_unique_id: data.companyUniqueId,
|
|
178
|
+
code: data.code,
|
|
179
|
+
name: data.name,
|
|
180
|
+
description: data.description,
|
|
181
|
+
parent_unique_id: data.parentUniqueId,
|
|
182
|
+
manager_unique_id: data.managerUniqueId,
|
|
183
|
+
payload: data.payload
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
return decodeOne(response, departmentMapper);
|
|
187
|
+
},
|
|
188
|
+
async update (uniqueId, data) {
|
|
189
|
+
const response = await transport.put(`/departments/${uniqueId}`, {
|
|
190
|
+
department: {
|
|
191
|
+
name: data.name,
|
|
192
|
+
description: data.description,
|
|
193
|
+
parent_unique_id: data.parentUniqueId,
|
|
194
|
+
manager_unique_id: data.managerUniqueId,
|
|
195
|
+
enabled: data.enabled,
|
|
196
|
+
status: data.status,
|
|
197
|
+
payload: data.payload
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
return decodeOne(response, departmentMapper);
|
|
201
|
+
},
|
|
202
|
+
async delete (uniqueId) {
|
|
203
|
+
await transport.delete(`/departments/${uniqueId}`);
|
|
204
|
+
},
|
|
205
|
+
async listByCompany (companyUniqueId) {
|
|
206
|
+
const response = await transport.get(`/companies/${companyUniqueId}/departments`);
|
|
207
|
+
return decodeMany(response, departmentMapper);
|
|
208
|
+
},
|
|
209
|
+
async getHierarchy (companyUniqueId) {
|
|
210
|
+
const response = await transport.get(`/companies/${companyUniqueId}/departments/hierarchy`);
|
|
211
|
+
return decodeMany(response, departmentMapper);
|
|
212
|
+
}
|
|
213
|
+
};
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
const teamMapper = {
|
|
217
|
+
type: 'Team',
|
|
218
|
+
map: (resource)=>({
|
|
219
|
+
id: resource.id,
|
|
220
|
+
uniqueId: parseString(resource.attributes['unique_id']) || resource.id,
|
|
221
|
+
createdAt: parseDate(resource.attributes['created_at']) || new Date(),
|
|
222
|
+
updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),
|
|
223
|
+
departmentUniqueId: parseString(resource.attributes['department_unique_id']) || '',
|
|
224
|
+
code: parseString(resource.attributes['code']) || '',
|
|
225
|
+
name: parseString(resource.attributes['name']) || '',
|
|
226
|
+
description: parseString(resource.attributes['description']),
|
|
227
|
+
leaderUniqueId: parseString(resource.attributes['leader_unique_id']),
|
|
228
|
+
status: parseStatus(resource.attributes['status']),
|
|
229
|
+
enabled: parseBoolean(resource.attributes['enabled']),
|
|
230
|
+
payload: resource.attributes['payload']
|
|
231
|
+
})
|
|
232
|
+
};
|
|
233
|
+
|
|
234
|
+
function createTeamsService(transport, _config) {
|
|
235
|
+
return {
|
|
236
|
+
async list (params) {
|
|
237
|
+
const queryParams = {};
|
|
238
|
+
if (params == null ? void 0 : params.page) queryParams['page'] = String(params.page);
|
|
239
|
+
if (params == null ? void 0 : params.perPage) queryParams['records'] = String(params.perPage);
|
|
240
|
+
if (params == null ? void 0 : params.departmentUniqueId) queryParams['department_unique_id'] = params.departmentUniqueId;
|
|
241
|
+
if (params == null ? void 0 : params.status) queryParams['status'] = params.status;
|
|
242
|
+
if (params == null ? void 0 : params.search) queryParams['search'] = params.search;
|
|
243
|
+
if (params == null ? void 0 : params.sortBy) queryParams['sort'] = params.sortOrder === 'desc' ? `-${params.sortBy}` : params.sortBy;
|
|
244
|
+
const response = await transport.get('/teams', {
|
|
245
|
+
params: queryParams
|
|
246
|
+
});
|
|
247
|
+
return decodePageResult(response, teamMapper);
|
|
248
|
+
},
|
|
249
|
+
async get (uniqueId) {
|
|
250
|
+
const response = await transport.get(`/teams/${uniqueId}`);
|
|
251
|
+
return decodeOne(response, teamMapper);
|
|
252
|
+
},
|
|
253
|
+
async create (data) {
|
|
254
|
+
const response = await transport.post('/teams', {
|
|
255
|
+
team: {
|
|
256
|
+
department_unique_id: data.departmentUniqueId,
|
|
257
|
+
code: data.code,
|
|
258
|
+
name: data.name,
|
|
259
|
+
description: data.description,
|
|
260
|
+
leader_unique_id: data.leaderUniqueId,
|
|
261
|
+
payload: data.payload
|
|
262
|
+
}
|
|
263
|
+
});
|
|
264
|
+
return decodeOne(response, teamMapper);
|
|
265
|
+
},
|
|
266
|
+
async update (uniqueId, data) {
|
|
267
|
+
const response = await transport.put(`/teams/${uniqueId}`, {
|
|
268
|
+
team: {
|
|
269
|
+
name: data.name,
|
|
270
|
+
description: data.description,
|
|
271
|
+
leader_unique_id: data.leaderUniqueId,
|
|
272
|
+
enabled: data.enabled,
|
|
273
|
+
status: data.status,
|
|
274
|
+
payload: data.payload
|
|
275
|
+
}
|
|
276
|
+
});
|
|
277
|
+
return decodeOne(response, teamMapper);
|
|
278
|
+
},
|
|
279
|
+
async delete (uniqueId) {
|
|
280
|
+
await transport.delete(`/teams/${uniqueId}`);
|
|
281
|
+
},
|
|
282
|
+
async listByDepartment (departmentUniqueId) {
|
|
283
|
+
const response = await transport.get(`/departments/${departmentUniqueId}/teams`);
|
|
284
|
+
return decodeMany(response, teamMapper);
|
|
285
|
+
}
|
|
286
|
+
};
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
const teamMemberMapper = {
|
|
290
|
+
type: 'TeamMember',
|
|
291
|
+
map: (resource)=>({
|
|
292
|
+
id: resource.id,
|
|
293
|
+
uniqueId: parseString(resource.attributes['unique_id']) || resource.id,
|
|
294
|
+
createdAt: parseDate(resource.attributes['created_at']) || new Date(),
|
|
295
|
+
updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),
|
|
296
|
+
teamUniqueId: parseString(resource.attributes['team_unique_id']) || '',
|
|
297
|
+
userUniqueId: parseString(resource.attributes['user_unique_id']) || '',
|
|
298
|
+
role: parseString(resource.attributes['role']),
|
|
299
|
+
joinedAt: parseDate(resource.attributes['joined_at']),
|
|
300
|
+
status: parseStatus(resource.attributes['status']),
|
|
301
|
+
enabled: parseBoolean(resource.attributes['enabled']),
|
|
302
|
+
payload: resource.attributes['payload']
|
|
303
|
+
})
|
|
304
|
+
};
|
|
305
|
+
|
|
306
|
+
function createTeamMembersService(transport, _config) {
|
|
307
|
+
return {
|
|
308
|
+
async list (params) {
|
|
309
|
+
const queryParams = {};
|
|
310
|
+
if (params == null ? void 0 : params.page) queryParams['page'] = String(params.page);
|
|
311
|
+
if (params == null ? void 0 : params.perPage) queryParams['records'] = String(params.perPage);
|
|
312
|
+
if (params == null ? void 0 : params.teamUniqueId) queryParams['team_unique_id'] = params.teamUniqueId;
|
|
313
|
+
if (params == null ? void 0 : params.userUniqueId) queryParams['user_unique_id'] = params.userUniqueId;
|
|
314
|
+
if (params == null ? void 0 : params.status) queryParams['status'] = params.status;
|
|
315
|
+
if (params == null ? void 0 : params.sortBy) queryParams['sort'] = params.sortOrder === 'desc' ? `-${params.sortBy}` : params.sortBy;
|
|
316
|
+
const response = await transport.get('/team_members', {
|
|
317
|
+
params: queryParams
|
|
318
|
+
});
|
|
319
|
+
return decodePageResult(response, teamMemberMapper);
|
|
320
|
+
},
|
|
321
|
+
async get (uniqueId) {
|
|
322
|
+
const response = await transport.get(`/team_members/${uniqueId}`);
|
|
323
|
+
return decodeOne(response, teamMemberMapper);
|
|
324
|
+
},
|
|
325
|
+
async add (data) {
|
|
326
|
+
const response = await transport.post('/team_members', {
|
|
327
|
+
team_member: {
|
|
328
|
+
team_unique_id: data.teamUniqueId,
|
|
329
|
+
user_unique_id: data.userUniqueId,
|
|
330
|
+
role: data.role,
|
|
331
|
+
payload: data.payload
|
|
332
|
+
}
|
|
333
|
+
});
|
|
334
|
+
return decodeOne(response, teamMemberMapper);
|
|
335
|
+
},
|
|
336
|
+
async update (uniqueId, data) {
|
|
337
|
+
const response = await transport.put(`/team_members/${uniqueId}`, {
|
|
338
|
+
team_member: {
|
|
339
|
+
role: data.role,
|
|
340
|
+
enabled: data.enabled,
|
|
341
|
+
status: data.status,
|
|
342
|
+
payload: data.payload
|
|
343
|
+
}
|
|
344
|
+
});
|
|
345
|
+
return decodeOne(response, teamMemberMapper);
|
|
346
|
+
},
|
|
347
|
+
async remove (uniqueId) {
|
|
348
|
+
await transport.delete(`/team_members/${uniqueId}`);
|
|
349
|
+
},
|
|
350
|
+
async listByTeam (teamUniqueId) {
|
|
351
|
+
const response = await transport.get(`/teams/${teamUniqueId}/members`);
|
|
352
|
+
return decodeMany(response, teamMemberMapper);
|
|
353
|
+
}
|
|
354
|
+
};
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
const quarterMapper = {
|
|
358
|
+
type: 'Quarter',
|
|
359
|
+
map: (resource)=>({
|
|
360
|
+
id: resource.id,
|
|
361
|
+
uniqueId: parseString(resource.attributes['unique_id']) || resource.id,
|
|
362
|
+
createdAt: parseDate(resource.attributes['created_at']) || new Date(),
|
|
363
|
+
updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),
|
|
364
|
+
companyUniqueId: parseString(resource.attributes['company_unique_id']) || '',
|
|
365
|
+
name: parseString(resource.attributes['name']) || '',
|
|
366
|
+
year: parseNumber(resource.attributes['year']),
|
|
367
|
+
quarter: parseNumber(resource.attributes['quarter']),
|
|
368
|
+
startDate: parseDate(resource.attributes['start_date']) || new Date(),
|
|
369
|
+
endDate: parseDate(resource.attributes['end_date']) || new Date(),
|
|
370
|
+
status: parseStatus(resource.attributes['status']),
|
|
371
|
+
enabled: parseBoolean(resource.attributes['enabled']),
|
|
372
|
+
payload: resource.attributes['payload']
|
|
373
|
+
})
|
|
374
|
+
};
|
|
375
|
+
|
|
376
|
+
function createQuartersService(transport, _config) {
|
|
377
|
+
return {
|
|
378
|
+
async list (params) {
|
|
379
|
+
const queryParams = {};
|
|
380
|
+
if (params == null ? void 0 : params.page) queryParams['page'] = String(params.page);
|
|
381
|
+
if (params == null ? void 0 : params.perPage) queryParams['records'] = String(params.perPage);
|
|
382
|
+
if (params == null ? void 0 : params.companyUniqueId) queryParams['company_unique_id'] = params.companyUniqueId;
|
|
383
|
+
if (params == null ? void 0 : params.year) queryParams['year'] = String(params.year);
|
|
384
|
+
if (params == null ? void 0 : params.quarter) queryParams['quarter'] = String(params.quarter);
|
|
385
|
+
if (params == null ? void 0 : params.status) queryParams['status'] = params.status;
|
|
386
|
+
if (params == null ? void 0 : params.sortBy) queryParams['sort'] = params.sortOrder === 'desc' ? `-${params.sortBy}` : params.sortBy;
|
|
387
|
+
const response = await transport.get('/quarters', {
|
|
388
|
+
params: queryParams
|
|
389
|
+
});
|
|
390
|
+
return decodePageResult(response, quarterMapper);
|
|
391
|
+
},
|
|
392
|
+
async get (uniqueId) {
|
|
393
|
+
const response = await transport.get(`/quarters/${uniqueId}`);
|
|
394
|
+
return decodeOne(response, quarterMapper);
|
|
395
|
+
},
|
|
396
|
+
async create (data) {
|
|
397
|
+
const response = await transport.post('/quarters', {
|
|
398
|
+
quarter: {
|
|
399
|
+
company_unique_id: data.companyUniqueId,
|
|
400
|
+
name: data.name,
|
|
401
|
+
year: data.year,
|
|
402
|
+
quarter: data.quarter,
|
|
403
|
+
start_date: data.startDate,
|
|
404
|
+
end_date: data.endDate,
|
|
405
|
+
payload: data.payload
|
|
406
|
+
}
|
|
407
|
+
});
|
|
408
|
+
return decodeOne(response, quarterMapper);
|
|
409
|
+
},
|
|
410
|
+
async update (uniqueId, data) {
|
|
411
|
+
const response = await transport.put(`/quarters/${uniqueId}`, {
|
|
412
|
+
quarter: {
|
|
413
|
+
name: data.name,
|
|
414
|
+
start_date: data.startDate,
|
|
415
|
+
end_date: data.endDate,
|
|
416
|
+
enabled: data.enabled,
|
|
417
|
+
status: data.status,
|
|
418
|
+
payload: data.payload
|
|
419
|
+
}
|
|
420
|
+
});
|
|
421
|
+
return decodeOne(response, quarterMapper);
|
|
422
|
+
},
|
|
423
|
+
async delete (uniqueId) {
|
|
424
|
+
await transport.delete(`/quarters/${uniqueId}`);
|
|
425
|
+
}
|
|
426
|
+
};
|
|
427
|
+
}
|
|
428
|
+
|
|
429
|
+
function createCompanyBlock(transport, config) {
|
|
430
|
+
return {
|
|
431
|
+
companies: createCompaniesService(transport),
|
|
432
|
+
departments: createDepartmentsService(transport),
|
|
433
|
+
teams: createTeamsService(transport),
|
|
434
|
+
teamMembers: createTeamMembersService(transport),
|
|
435
|
+
quarters: createQuartersService(transport)
|
|
436
|
+
};
|
|
437
|
+
}
|
|
438
|
+
const companyBlockMetadata = {
|
|
439
|
+
name: 'company',
|
|
440
|
+
version: '0.1.0',
|
|
441
|
+
description: 'Company organizational structure, departments, teams, and quarters',
|
|
442
|
+
resourceTypes: [
|
|
443
|
+
'Company',
|
|
444
|
+
'Department',
|
|
445
|
+
'Team',
|
|
446
|
+
'TeamMember',
|
|
447
|
+
'Quarter'
|
|
448
|
+
]
|
|
449
|
+
};
|
|
450
|
+
|
|
451
|
+
export { companyBlockMetadata, companyMapper, createCompaniesService, createCompanyBlock, createDepartmentsService, createQuartersService, createTeamMembersService, createTeamsService, departmentMapper, quarterMapper, teamMapper, teamMemberMapper };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { createCompanyBlock, companyBlockMetadata } from './lib/company.block';
|
|
2
|
+
export type { CompanyBlock, CompanyBlockConfig } from './lib/company.block';
|
|
3
|
+
export type { Company, CreateCompanyRequest, UpdateCompanyRequest, ListCompaniesParams, Department, DepartmentHierarchy, CreateDepartmentRequest, UpdateDepartmentRequest, ListDepartmentsParams, Team, CreateTeamRequest, UpdateTeamRequest, ListTeamsParams, TeamMember, AddTeamMemberRequest, UpdateTeamMemberRequest, ListTeamMembersParams, Quarter, CreateQuarterRequest, UpdateQuarterRequest, ListQuartersParams, } from './lib/types';
|
|
4
|
+
export type { CompaniesService, DepartmentsService, TeamsService, TeamMembersService, QuartersService, } from './lib/services';
|
|
5
|
+
export { createCompaniesService, createDepartmentsService, createTeamsService, createTeamMembersService, createQuartersService, } from './lib/services';
|
|
6
|
+
export { companyMapper, departmentMapper, teamMapper, teamMemberMapper, quarterMapper, } from './lib/mappers';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAG5E,YAAY,EAEV,OAAO,EACP,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EAEnB,UAAU,EACV,mBAAmB,EACnB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EAErB,IAAI,EACJ,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EAEf,UAAU,EACV,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EAErB,OAAO,EACP,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAGrB,YAAY,EACV,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,aAAa,GACd,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Transport, BlockConfig, BlockMetadata } from '@23blocks/contracts';
|
|
2
|
+
import { type CompaniesService, type DepartmentsService, type TeamsService, type TeamMembersService, type QuartersService } from './services';
|
|
3
|
+
export interface CompanyBlockConfig extends BlockConfig {
|
|
4
|
+
appId: string;
|
|
5
|
+
tenantId?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface CompanyBlock {
|
|
8
|
+
companies: CompaniesService;
|
|
9
|
+
departments: DepartmentsService;
|
|
10
|
+
teams: TeamsService;
|
|
11
|
+
teamMembers: TeamMembersService;
|
|
12
|
+
quarters: QuartersService;
|
|
13
|
+
}
|
|
14
|
+
export declare function createCompanyBlock(transport: Transport, config: CompanyBlockConfig): CompanyBlock;
|
|
15
|
+
export declare const companyBlockMetadata: BlockMetadata;
|
|
16
|
+
//# sourceMappingURL=company.block.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"company.block.d.ts","sourceRoot":"","sources":["../../../src/lib/company.block.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAML,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACrB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,WAAW,EAAE,kBAAkB,CAAC;IAChC,KAAK,EAAE,YAAY,CAAC;IACpB,WAAW,EAAE,kBAAkB,CAAC;IAChC,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,kBAAkB,GACzB,YAAY,CAQd;AAED,eAAO,MAAM,oBAAoB,EAAE,aAWlC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"company.mapper.d.ts","sourceRoot":"","sources":["../../../../src/lib/mappers/company.mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAGhD,eAAO,MAAM,aAAa,EAAE,cAAc,CAAC,OAAO,CAoBjD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"department.mapper.d.ts","sourceRoot":"","sources":["../../../../src/lib/mappers/department.mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGtD,eAAO,MAAM,gBAAgB,EAAE,cAAc,CAAC,UAAU,CAkBvD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/mappers/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quarter.mapper.d.ts","sourceRoot":"","sources":["../../../../src/lib/mappers/quarter.mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAGhD,eAAO,MAAM,aAAa,EAAE,cAAc,CAAC,OAAO,CAkBjD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"team-member.mapper.d.ts","sourceRoot":"","sources":["../../../../src/lib/mappers/team-member.mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGvD,eAAO,MAAM,gBAAgB,EAAE,cAAc,CAAC,UAAU,CAgBvD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"team.mapper.d.ts","sourceRoot":"","sources":["../../../../src/lib/mappers/team.mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAG1C,eAAO,MAAM,UAAU,EAAE,cAAc,CAAC,IAAI,CAiB3C,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parse a string value, returning undefined for empty/undefined
|
|
3
|
+
*/
|
|
4
|
+
export declare function parseString(value: unknown): string | undefined;
|
|
5
|
+
/**
|
|
6
|
+
* Parse a date value
|
|
7
|
+
*/
|
|
8
|
+
export declare function parseDate(value: unknown): Date | undefined;
|
|
9
|
+
/**
|
|
10
|
+
* Parse a boolean value
|
|
11
|
+
*/
|
|
12
|
+
export declare function parseBoolean(value: unknown): boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Parse an array of strings
|
|
15
|
+
*/
|
|
16
|
+
export declare function parseStringArray(value: unknown): string[] | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Parse a number value
|
|
19
|
+
*/
|
|
20
|
+
export declare function parseNumber(value: unknown): number;
|
|
21
|
+
/**
|
|
22
|
+
* Parse an optional number value
|
|
23
|
+
*/
|
|
24
|
+
export declare function parseOptionalNumber(value: unknown): number | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* Parse entity status
|
|
27
|
+
*/
|
|
28
|
+
export declare function parseStatus(value: unknown): 'active' | 'inactive' | 'pending' | 'archived' | 'deleted';
|
|
29
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/lib/mappers/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAM9D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAe1D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAQpD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,SAAS,CAQrE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAMlD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAMtE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAMtG"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Transport, PageResult } from '@23blocks/contracts';
|
|
2
|
+
import type { Company, CreateCompanyRequest, UpdateCompanyRequest, ListCompaniesParams } from '../types/company';
|
|
3
|
+
export interface CompaniesService {
|
|
4
|
+
list(params?: ListCompaniesParams): Promise<PageResult<Company>>;
|
|
5
|
+
get(uniqueId: string): Promise<Company>;
|
|
6
|
+
create(data: CreateCompanyRequest): Promise<Company>;
|
|
7
|
+
update(uniqueId: string, data: UpdateCompanyRequest): Promise<Company>;
|
|
8
|
+
delete(uniqueId: string): Promise<void>;
|
|
9
|
+
}
|
|
10
|
+
export declare function createCompaniesService(transport: Transport, _config: {
|
|
11
|
+
appId: string;
|
|
12
|
+
}): CompaniesService;
|
|
13
|
+
//# sourceMappingURL=companies.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"companies.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/companies.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjE,OAAO,KAAK,EACV,OAAO,EACP,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;IACjE,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvE,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzC;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,CA0DzG"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Transport, PageResult } from '@23blocks/contracts';
|
|
2
|
+
import type { Department, DepartmentHierarchy, CreateDepartmentRequest, UpdateDepartmentRequest, ListDepartmentsParams } from '../types/department';
|
|
3
|
+
export interface DepartmentsService {
|
|
4
|
+
list(params?: ListDepartmentsParams): Promise<PageResult<Department>>;
|
|
5
|
+
get(uniqueId: string): Promise<Department>;
|
|
6
|
+
create(data: CreateDepartmentRequest): Promise<Department>;
|
|
7
|
+
update(uniqueId: string, data: UpdateDepartmentRequest): Promise<Department>;
|
|
8
|
+
delete(uniqueId: string): Promise<void>;
|
|
9
|
+
listByCompany(companyUniqueId: string): Promise<Department[]>;
|
|
10
|
+
getHierarchy(companyUniqueId: string): Promise<DepartmentHierarchy[]>;
|
|
11
|
+
}
|
|
12
|
+
export declare function createDepartmentsService(transport: Transport, _config: {
|
|
13
|
+
appId: string;
|
|
14
|
+
}): DepartmentsService;
|
|
15
|
+
//# sourceMappingURL=departments.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"departments.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/departments.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACnB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,qBAAqB,CAAC;AAG7B,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,MAAM,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IACtE,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3D,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7E,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,aAAa,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC9D,YAAY,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;CACvE;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,kBAAkB,CAiE7G"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Transport, PageResult } from '@23blocks/contracts';
|
|
2
|
+
import type { Quarter, CreateQuarterRequest, UpdateQuarterRequest, ListQuartersParams } from '../types/quarter';
|
|
3
|
+
export interface QuartersService {
|
|
4
|
+
list(params?: ListQuartersParams): Promise<PageResult<Quarter>>;
|
|
5
|
+
get(uniqueId: string): Promise<Quarter>;
|
|
6
|
+
create(data: CreateQuarterRequest): Promise<Quarter>;
|
|
7
|
+
update(uniqueId: string, data: UpdateQuarterRequest): Promise<Quarter>;
|
|
8
|
+
delete(uniqueId: string): Promise<void>;
|
|
9
|
+
}
|
|
10
|
+
export declare function createQuartersService(transport: Transport, _config: {
|
|
11
|
+
appId: string;
|
|
12
|
+
}): QuartersService;
|
|
13
|
+
//# sourceMappingURL=quarters.service.d.ts.map
|