@fabriktor/client 0.0.26 → 0.0.29

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/src/billable/billable.d.ts +213 -0
  2. package/dist/src/billable/billable.js +441 -0
  3. package/dist/src/calls/calls.d.ts +34 -0
  4. package/dist/src/calls/calls.js +65 -0
  5. package/dist/src/chat/chat.d.ts +97 -0
  6. package/dist/src/chat/chat.js +234 -0
  7. package/dist/src/contacts/contacts.d.ts +37 -0
  8. package/dist/src/contacts/contacts.js +94 -0
  9. package/dist/src/core/crud.d.ts +1 -1
  10. package/dist/src/core/crud.js +1 -1
  11. package/dist/src/core/http.d.ts +3 -0
  12. package/dist/src/core/http.js +3 -3
  13. package/dist/src/core/idempotency.js +1 -1
  14. package/dist/src/core/multipart.d.ts +25 -0
  15. package/dist/src/core/multipart.js +93 -0
  16. package/dist/src/feed/feed.d.ts +65 -0
  17. package/dist/src/feed/feed.js +130 -0
  18. package/dist/src/fulfillments/fulfillments.d.ts +36 -0
  19. package/dist/src/fulfillments/fulfillments.js +68 -0
  20. package/dist/src/index.d.ts +16 -0
  21. package/dist/src/index.js +16 -0
  22. package/dist/src/jobs/jobs.d.ts +69 -0
  23. package/dist/src/jobs/jobs.js +143 -0
  24. package/dist/src/marketplace/marketplace.d.ts +49 -0
  25. package/dist/src/marketplace/marketplace.js +94 -0
  26. package/dist/src/payments/payments.d.ts +154 -0
  27. package/dist/src/payments/payments.js +328 -0
  28. package/dist/src/payrolls/payrolls.d.ts +179 -0
  29. package/dist/src/payrolls/payrolls.js +380 -0
  30. package/dist/src/privacy/privacy.d.ts +47 -0
  31. package/dist/src/privacy/privacy.js +90 -0
  32. package/dist/src/processes/processes.d.ts +21 -0
  33. package/dist/src/processes/processes.js +38 -0
  34. package/dist/src/routes/routes.d.ts +93 -0
  35. package/dist/src/routes/routes.js +185 -0
  36. package/dist/src/storage/storage.d.ts +124 -0
  37. package/dist/src/storage/storage.js +249 -0
  38. package/dist/src/timesheets/timesheets.d.ts +49 -0
  39. package/dist/src/timesheets/timesheets.js +105 -0
  40. package/dist/src/users/tmp_phones.d.ts +1 -1
  41. package/dist/src/users/tmp_usernames.d.ts +1 -1
  42. package/dist/src/users/users.d.ts +1 -1
  43. package/package.json +3 -2
@@ -0,0 +1,90 @@
1
+ // Copyright (C) Fabriktor, Inc. 2025-present.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License"); you may
4
+ // not use this file except in compliance with the License. You may obtain
5
+ // a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
6
+ import { ColPrivacyAccountLocks, ColPrivacyDeletionRequests, HTTPMethodPost, PathPrivacyExport, SvcPrivacy, } from "@fabriktor/schema";
7
+ import { requiredToken } from "../core/auth.js";
8
+ import { newCRUDClient } from "../core/crud.js";
9
+ import { buildPath } from "../core/path.js";
10
+ export class PrivacyClient {
11
+ deletion_requests;
12
+ account_locks;
13
+ http;
14
+ base_url;
15
+ get_token;
16
+ constructor(opts) {
17
+ this.deletion_requests = newCRUDClient({
18
+ http: opts.http,
19
+ base_url: opts.base_url,
20
+ svc: SvcPrivacy,
21
+ col: ColPrivacyDeletionRequests,
22
+ get_token: opts.get_token,
23
+ });
24
+ this.account_locks = newCRUDClient({
25
+ http: opts.http,
26
+ base_url: opts.base_url,
27
+ svc: SvcPrivacy,
28
+ col: ColPrivacyAccountLocks,
29
+ get_token: opts.get_token,
30
+ });
31
+ this.http = opts.http;
32
+ this.base_url = opts.base_url;
33
+ this.get_token = opts.get_token;
34
+ }
35
+ async queryDeletionRequests(opts) {
36
+ return await this.deletion_requests.query(opts);
37
+ }
38
+ async insertOneDeletionRequest(opts) {
39
+ return await this.deletion_requests.insertOne(opts);
40
+ }
41
+ async findOneDeletionRequest(opts) {
42
+ return await this.deletion_requests.findOne(opts);
43
+ }
44
+ async replaceOneDeletionRequest(opts) {
45
+ return await this.deletion_requests.replaceOne(opts);
46
+ }
47
+ async deleteOneDeletionRequest(opts) {
48
+ return await this.deletion_requests.deleteOne(opts);
49
+ }
50
+ async deleteManyDeletionRequests(opts) {
51
+ return await this.deletion_requests.deleteMany(opts);
52
+ }
53
+ async queryAccountLocks(opts) {
54
+ return await this.account_locks.query(opts);
55
+ }
56
+ async insertOneAccountLock(opts) {
57
+ return await this.account_locks.insertOne(opts);
58
+ }
59
+ async findOneAccountLock(opts) {
60
+ return await this.account_locks.findOne(opts);
61
+ }
62
+ async replaceOneAccountLock(opts) {
63
+ return await this.account_locks.replaceOne(opts);
64
+ }
65
+ async deleteOneAccountLock(opts) {
66
+ return await this.account_locks.deleteOne(opts);
67
+ }
68
+ async deleteManyAccountLocks(opts) {
69
+ return await this.account_locks.deleteMany(opts);
70
+ }
71
+ async exportData() {
72
+ const token = await requiredToken(this.get_token);
73
+ return await this.http.do({
74
+ base_url: this.base_url,
75
+ path: deletionRequestPath(PathPrivacyExport),
76
+ method: HTTPMethodPost,
77
+ token,
78
+ });
79
+ }
80
+ }
81
+ export function newPrivacyClient(opts) {
82
+ return new PrivacyClient(opts);
83
+ }
84
+ function deletionRequestPath(action) {
85
+ return buildPath({
86
+ svc: SvcPrivacy,
87
+ col: ColPrivacyDeletionRequests,
88
+ action,
89
+ });
90
+ }
@@ -0,0 +1,21 @@
1
+ import { type PLProcessesSpeechToText, type RPProcessesSpeechToText } from "@fabriktor/schema";
2
+ import type { TokenProvider } from "../core/auth.js";
3
+ import type { OperationResultOf } from "../core/crud.js";
4
+ import type { HTTPDoer } from "../core/http.js";
5
+ export type SpeechToTextOptions = PLProcessesSpeechToText;
6
+ export type ProcessesClientOptions = {
7
+ http: HTTPDoer;
8
+ base_url: string;
9
+ get_token?: TokenProvider;
10
+ };
11
+ export interface ProcessesOperator {
12
+ speechToText(opts: SpeechToTextOptions): Promise<OperationResultOf<RPProcessesSpeechToText>>;
13
+ }
14
+ export declare class ProcessesClient implements ProcessesOperator {
15
+ private http;
16
+ private base_url;
17
+ private get_token?;
18
+ constructor(opts: ProcessesClientOptions);
19
+ speechToText(opts: SpeechToTextOptions): Promise<OperationResultOf<RPProcessesSpeechToText>>;
20
+ }
21
+ export declare function newProcessesClient(opts: ProcessesClientOptions): ProcessesClient;
@@ -0,0 +1,38 @@
1
+ // Copyright (C) Fabriktor, Inc. 2025-present.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License"); you may
4
+ // not use this file except in compliance with the License. You may obtain
5
+ // a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
6
+ import { HTTPMethodPost, PathProcessesProcesses, PathProcessesSpeechToText, SvcProcesses, } from "@fabriktor/schema";
7
+ import { requiredToken } from "../core/auth.js";
8
+ import { buildPath } from "../core/path.js";
9
+ export class ProcessesClient {
10
+ http;
11
+ base_url;
12
+ get_token;
13
+ constructor(opts) {
14
+ this.http = opts.http;
15
+ this.base_url = opts.base_url;
16
+ this.get_token = opts.get_token;
17
+ }
18
+ async speechToText(opts) {
19
+ const token = await requiredToken(this.get_token);
20
+ return await this.http.do({
21
+ base_url: this.base_url,
22
+ path: processesPath(PathProcessesSpeechToText),
23
+ method: HTTPMethodPost,
24
+ token,
25
+ body: opts,
26
+ });
27
+ }
28
+ }
29
+ export function newProcessesClient(opts) {
30
+ return new ProcessesClient(opts);
31
+ }
32
+ function processesPath(action) {
33
+ return buildPath({
34
+ svc: SvcProcesses,
35
+ col: PathProcessesProcesses,
36
+ action,
37
+ });
38
+ }
@@ -0,0 +1,93 @@
1
+ import { type ClientAvailability, type InClientAvailability, type InRoute, type InRouteTeam, type InTag, type InTracking, type OperationResult, type PLRoutesAvailability, type PLRoutesDesignation, type Route, type RouteTeam, type RPRoutesAvailability, type Tag, type Tracking } from "@fabriktor/schema";
2
+ import type { TokenProvider } from "../core/auth.js";
3
+ import type { DeleteManyOptionsCRUD, DeleteOneOptionsCRUD, FindOneOptionsCRUD, InsertOneOptionsCRUD, OperationResultOf, QueryOptionsCRUD, ReplaceOneOptionsCRUD, SearchManyOptionsCRUD, SearchResultOf } from "../core/crud.js";
4
+ import type { HTTPDoer } from "../core/http.js";
5
+ export type GetAvailabilityOptions = PLRoutesAvailability;
6
+ export type GetDesignationOptions = PLRoutesDesignation;
7
+ export type RoutesClientOptions = {
8
+ http: HTTPDoer;
9
+ base_url: string;
10
+ get_token?: TokenProvider;
11
+ };
12
+ export interface RoutesOperator {
13
+ queryRoutes(opts?: QueryOptionsCRUD): Promise<OperationResultOf<Route[]>>;
14
+ insertOneRoute(opts: InsertOneOptionsCRUD<InRoute>): Promise<OperationResult>;
15
+ findOneRoute(opts: FindOneOptionsCRUD): Promise<OperationResultOf<Route>>;
16
+ replaceOneRoute(opts: ReplaceOneOptionsCRUD<InRoute>): Promise<OperationResult>;
17
+ deleteOneRoute(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
18
+ deleteManyRoutes(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
19
+ queryTags(opts?: QueryOptionsCRUD): Promise<OperationResultOf<Tag[]>>;
20
+ insertOneTag(opts: InsertOneOptionsCRUD<InTag>): Promise<OperationResult>;
21
+ findOneTag(opts: FindOneOptionsCRUD): Promise<OperationResultOf<Tag>>;
22
+ replaceOneTag(opts: ReplaceOneOptionsCRUD<InTag>): Promise<OperationResult>;
23
+ deleteOneTag(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
24
+ deleteManyTags(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
25
+ searchManyTags(opts?: SearchManyOptionsCRUD): Promise<OperationResultOf<SearchResultOf<Tag>>>;
26
+ queryClientAvailabilities(opts?: QueryOptionsCRUD): Promise<OperationResultOf<ClientAvailability[]>>;
27
+ insertOneClientAvailability(opts: InsertOneOptionsCRUD<InClientAvailability>): Promise<OperationResult>;
28
+ findOneClientAvailability(opts: FindOneOptionsCRUD): Promise<OperationResultOf<ClientAvailability>>;
29
+ replaceOneClientAvailability(opts: ReplaceOneOptionsCRUD<InClientAvailability>): Promise<OperationResult>;
30
+ deleteOneClientAvailability(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
31
+ deleteManyClientAvailabilities(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
32
+ queryTracking(opts?: QueryOptionsCRUD): Promise<OperationResultOf<Tracking[]>>;
33
+ insertOneTracking(opts: InsertOneOptionsCRUD<InTracking>): Promise<OperationResult>;
34
+ findOneTracking(opts: FindOneOptionsCRUD): Promise<OperationResultOf<Tracking>>;
35
+ replaceOneTracking(opts: ReplaceOneOptionsCRUD<InTracking>): Promise<OperationResult>;
36
+ deleteOneTracking(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
37
+ deleteManyTracking(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
38
+ queryRouteTeams(opts?: QueryOptionsCRUD): Promise<OperationResultOf<RouteTeam[]>>;
39
+ insertOneRouteTeam(opts: InsertOneOptionsCRUD<InRouteTeam>): Promise<OperationResult>;
40
+ findOneRouteTeam(opts: FindOneOptionsCRUD): Promise<OperationResultOf<RouteTeam>>;
41
+ replaceOneRouteTeam(opts: ReplaceOneOptionsCRUD<InRouteTeam>): Promise<OperationResult>;
42
+ deleteOneRouteTeam(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
43
+ deleteManyRouteTeams(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
44
+ searchManyRouteTeams(opts?: SearchManyOptionsCRUD): Promise<OperationResultOf<SearchResultOf<RouteTeam>>>;
45
+ getAvailability(opts: GetAvailabilityOptions): Promise<OperationResultOf<RPRoutesAvailability>>;
46
+ getDesignation(opts: GetDesignationOptions): Promise<OperationResultOf<Route[]>>;
47
+ }
48
+ export declare class RoutesClient implements RoutesOperator {
49
+ private routes;
50
+ private tags;
51
+ private client_availabilities;
52
+ private tracking;
53
+ private route_teams;
54
+ private http;
55
+ private base_url;
56
+ private get_token?;
57
+ constructor(opts: RoutesClientOptions);
58
+ queryRoutes(opts?: QueryOptionsCRUD): Promise<OperationResultOf<Route[]>>;
59
+ insertOneRoute(opts: InsertOneOptionsCRUD<InRoute>): Promise<OperationResult>;
60
+ findOneRoute(opts: FindOneOptionsCRUD): Promise<OperationResultOf<Route>>;
61
+ replaceOneRoute(opts: ReplaceOneOptionsCRUD<InRoute>): Promise<OperationResult>;
62
+ deleteOneRoute(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
63
+ deleteManyRoutes(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
64
+ queryTags(opts?: QueryOptionsCRUD): Promise<OperationResultOf<Tag[]>>;
65
+ insertOneTag(opts: InsertOneOptionsCRUD<InTag>): Promise<OperationResult>;
66
+ findOneTag(opts: FindOneOptionsCRUD): Promise<OperationResultOf<Tag>>;
67
+ replaceOneTag(opts: ReplaceOneOptionsCRUD<InTag>): Promise<OperationResult>;
68
+ deleteOneTag(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
69
+ deleteManyTags(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
70
+ searchManyTags(opts?: SearchManyOptionsCRUD): Promise<OperationResultOf<SearchResultOf<Tag>>>;
71
+ queryClientAvailabilities(opts?: QueryOptionsCRUD): Promise<OperationResultOf<ClientAvailability[]>>;
72
+ insertOneClientAvailability(opts: InsertOneOptionsCRUD<InClientAvailability>): Promise<OperationResult>;
73
+ findOneClientAvailability(opts: FindOneOptionsCRUD): Promise<OperationResultOf<ClientAvailability>>;
74
+ replaceOneClientAvailability(opts: ReplaceOneOptionsCRUD<InClientAvailability>): Promise<OperationResult>;
75
+ deleteOneClientAvailability(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
76
+ deleteManyClientAvailabilities(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
77
+ queryTracking(opts?: QueryOptionsCRUD): Promise<OperationResultOf<Tracking[]>>;
78
+ insertOneTracking(opts: InsertOneOptionsCRUD<InTracking>): Promise<OperationResult>;
79
+ findOneTracking(opts: FindOneOptionsCRUD): Promise<OperationResultOf<Tracking>>;
80
+ replaceOneTracking(opts: ReplaceOneOptionsCRUD<InTracking>): Promise<OperationResult>;
81
+ deleteOneTracking(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
82
+ deleteManyTracking(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
83
+ queryRouteTeams(opts?: QueryOptionsCRUD): Promise<OperationResultOf<RouteTeam[]>>;
84
+ insertOneRouteTeam(opts: InsertOneOptionsCRUD<InRouteTeam>): Promise<OperationResult>;
85
+ findOneRouteTeam(opts: FindOneOptionsCRUD): Promise<OperationResultOf<RouteTeam>>;
86
+ replaceOneRouteTeam(opts: ReplaceOneOptionsCRUD<InRouteTeam>): Promise<OperationResult>;
87
+ deleteOneRouteTeam(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
88
+ deleteManyRouteTeams(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
89
+ searchManyRouteTeams(opts?: SearchManyOptionsCRUD): Promise<OperationResultOf<SearchResultOf<RouteTeam>>>;
90
+ getAvailability(opts: GetAvailabilityOptions): Promise<OperationResultOf<RPRoutesAvailability>>;
91
+ getDesignation(opts: GetDesignationOptions): Promise<OperationResultOf<Route[]>>;
92
+ }
93
+ export declare function newRoutesClient(opts: RoutesClientOptions): RoutesClient;
@@ -0,0 +1,185 @@
1
+ // Copyright (C) Fabriktor, Inc. 2025-present.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License"); you may
4
+ // not use this file except in compliance with the License. You may obtain
5
+ // a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
6
+ import { ColRoutesClientAvailabilities, ColRoutesRouteTeams, ColRoutesRoutes, ColRoutesTags, ColRoutesTracking, HTTPMethodPost, PathRoutesGetAvailability, PathRoutesGetDesignation, SvcRoutes, } from "@fabriktor/schema";
7
+ import { requiredToken } from "../core/auth.js";
8
+ import { newCRUDClient } from "../core/crud.js";
9
+ import { buildPath } from "../core/path.js";
10
+ export class RoutesClient {
11
+ routes;
12
+ tags;
13
+ client_availabilities;
14
+ tracking;
15
+ route_teams;
16
+ http;
17
+ base_url;
18
+ get_token;
19
+ constructor(opts) {
20
+ this.routes = newCRUDClient({
21
+ http: opts.http,
22
+ base_url: opts.base_url,
23
+ svc: SvcRoutes,
24
+ col: ColRoutesRoutes,
25
+ get_token: opts.get_token,
26
+ });
27
+ this.tags = newCRUDClient({
28
+ http: opts.http,
29
+ base_url: opts.base_url,
30
+ svc: SvcRoutes,
31
+ col: ColRoutesTags,
32
+ get_token: opts.get_token,
33
+ });
34
+ this.client_availabilities = newCRUDClient({
35
+ http: opts.http,
36
+ base_url: opts.base_url,
37
+ svc: SvcRoutes,
38
+ col: ColRoutesClientAvailabilities,
39
+ get_token: opts.get_token,
40
+ });
41
+ this.tracking = newCRUDClient({
42
+ http: opts.http,
43
+ base_url: opts.base_url,
44
+ svc: SvcRoutes,
45
+ col: ColRoutesTracking,
46
+ get_token: opts.get_token,
47
+ });
48
+ this.route_teams = newCRUDClient({
49
+ http: opts.http,
50
+ base_url: opts.base_url,
51
+ svc: SvcRoutes,
52
+ col: ColRoutesRouteTeams,
53
+ get_token: opts.get_token,
54
+ });
55
+ this.http = opts.http;
56
+ this.base_url = opts.base_url;
57
+ this.get_token = opts.get_token;
58
+ }
59
+ async queryRoutes(opts) {
60
+ return await this.routes.query(opts);
61
+ }
62
+ async insertOneRoute(opts) {
63
+ return await this.routes.insertOne(opts);
64
+ }
65
+ async findOneRoute(opts) {
66
+ return await this.routes.findOne(opts);
67
+ }
68
+ async replaceOneRoute(opts) {
69
+ return await this.routes.replaceOne(opts);
70
+ }
71
+ async deleteOneRoute(opts) {
72
+ return await this.routes.deleteOne(opts);
73
+ }
74
+ async deleteManyRoutes(opts) {
75
+ return await this.routes.deleteMany(opts);
76
+ }
77
+ async queryTags(opts) {
78
+ return await this.tags.query(opts);
79
+ }
80
+ async insertOneTag(opts) {
81
+ return await this.tags.insertOne(opts);
82
+ }
83
+ async findOneTag(opts) {
84
+ return await this.tags.findOne(opts);
85
+ }
86
+ async replaceOneTag(opts) {
87
+ return await this.tags.replaceOne(opts);
88
+ }
89
+ async deleteOneTag(opts) {
90
+ return await this.tags.deleteOne(opts);
91
+ }
92
+ async deleteManyTags(opts) {
93
+ return await this.tags.deleteMany(opts);
94
+ }
95
+ async searchManyTags(opts) {
96
+ return await this.tags.searchMany(opts);
97
+ }
98
+ async queryClientAvailabilities(opts) {
99
+ return await this.client_availabilities.query(opts);
100
+ }
101
+ async insertOneClientAvailability(opts) {
102
+ return await this.client_availabilities.insertOne(opts);
103
+ }
104
+ async findOneClientAvailability(opts) {
105
+ return await this.client_availabilities.findOne(opts);
106
+ }
107
+ async replaceOneClientAvailability(opts) {
108
+ return await this.client_availabilities.replaceOne(opts);
109
+ }
110
+ async deleteOneClientAvailability(opts) {
111
+ return await this.client_availabilities.deleteOne(opts);
112
+ }
113
+ async deleteManyClientAvailabilities(opts) {
114
+ return await this.client_availabilities.deleteMany(opts);
115
+ }
116
+ async queryTracking(opts) {
117
+ return await this.tracking.query(opts);
118
+ }
119
+ async insertOneTracking(opts) {
120
+ return await this.tracking.insertOne(opts);
121
+ }
122
+ async findOneTracking(opts) {
123
+ return await this.tracking.findOne(opts);
124
+ }
125
+ async replaceOneTracking(opts) {
126
+ return await this.tracking.replaceOne(opts);
127
+ }
128
+ async deleteOneTracking(opts) {
129
+ return await this.tracking.deleteOne(opts);
130
+ }
131
+ async deleteManyTracking(opts) {
132
+ return await this.tracking.deleteMany(opts);
133
+ }
134
+ async queryRouteTeams(opts) {
135
+ return await this.route_teams.query(opts);
136
+ }
137
+ async insertOneRouteTeam(opts) {
138
+ return await this.route_teams.insertOne(opts);
139
+ }
140
+ async findOneRouteTeam(opts) {
141
+ return await this.route_teams.findOne(opts);
142
+ }
143
+ async replaceOneRouteTeam(opts) {
144
+ return await this.route_teams.replaceOne(opts);
145
+ }
146
+ async deleteOneRouteTeam(opts) {
147
+ return await this.route_teams.deleteOne(opts);
148
+ }
149
+ async deleteManyRouteTeams(opts) {
150
+ return await this.route_teams.deleteMany(opts);
151
+ }
152
+ async searchManyRouteTeams(opts) {
153
+ return await this.route_teams.searchMany(opts);
154
+ }
155
+ async getAvailability(opts) {
156
+ const token = await requiredToken(this.get_token);
157
+ return await this.http.do({
158
+ base_url: this.base_url,
159
+ path: routePath(PathRoutesGetAvailability),
160
+ method: HTTPMethodPost,
161
+ token,
162
+ body: opts,
163
+ });
164
+ }
165
+ async getDesignation(opts) {
166
+ const token = await requiredToken(this.get_token);
167
+ return await this.http.do({
168
+ base_url: this.base_url,
169
+ path: routePath(PathRoutesGetDesignation),
170
+ method: HTTPMethodPost,
171
+ token,
172
+ body: opts,
173
+ });
174
+ }
175
+ }
176
+ export function newRoutesClient(opts) {
177
+ return new RoutesClient(opts);
178
+ }
179
+ function routePath(action) {
180
+ return buildPath({
181
+ svc: SvcRoutes,
182
+ col: ColRoutesRoutes,
183
+ action,
184
+ });
185
+ }
@@ -0,0 +1,124 @@
1
+ import { type Object as StorageObject, type OperationResult, type PLStorageDownload, type RPStorageUpload } from "@fabriktor/schema";
2
+ import type { TokenProvider } from "../core/auth.js";
3
+ import type { DeleteManyOptionsCRUD, DeleteOneOptionsCRUD, OperationResultOf } from "../core/crud.js";
4
+ import type { HTTPDoer } from "../core/http.js";
5
+ import { type MultipartDoer } from "../core/multipart.js";
6
+ export declare const storageCollections: readonly ["calls", "chat", "contacts", "jobs", "locations", "memos", "qr", "reports", "tickets", "users"];
7
+ export type StorageCollection = (typeof storageCollections)[number];
8
+ export type StorageUploadFile = File | {
9
+ blob: Blob;
10
+ filename: string;
11
+ };
12
+ export type UploadStorageOptions = {
13
+ owner_id: string;
14
+ uploader_id?: string;
15
+ full_quality?: boolean;
16
+ files: StorageUploadFile[];
17
+ };
18
+ export type DownloadStorageOptions = PLStorageDownload;
19
+ export type StorageClientOptions = {
20
+ http: HTTPDoer;
21
+ base_url: string;
22
+ get_token?: TokenProvider;
23
+ multipart?: MultipartDoer;
24
+ };
25
+ export interface StorageOperator {
26
+ upload(col: StorageCollection, opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
27
+ download(col: StorageCollection, opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
28
+ deleteOne(col: StorageCollection, opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
29
+ deleteMany(col: StorageCollection, opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
30
+ uploadCalls(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
31
+ downloadCalls(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
32
+ deleteOneCallObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
33
+ deleteManyCallObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
34
+ uploadChat(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
35
+ downloadChat(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
36
+ deleteOneChatObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
37
+ deleteManyChatObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
38
+ uploadContacts(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
39
+ downloadContacts(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
40
+ deleteOneContactObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
41
+ deleteManyContactObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
42
+ uploadJobs(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
43
+ downloadJobs(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
44
+ deleteOneJobObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
45
+ deleteManyJobObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
46
+ uploadLocations(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
47
+ downloadLocations(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
48
+ deleteOneLocationObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
49
+ deleteManyLocationObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
50
+ uploadMemos(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
51
+ downloadMemos(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
52
+ deleteOneMemoObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
53
+ deleteManyMemoObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
54
+ uploadQR(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
55
+ downloadQR(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
56
+ deleteOneQRObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
57
+ deleteManyQRObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
58
+ uploadReports(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
59
+ downloadReports(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
60
+ deleteOneReportObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
61
+ deleteManyReportObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
62
+ uploadTickets(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
63
+ downloadTickets(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
64
+ deleteOneTicketObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
65
+ deleteManyTicketObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
66
+ uploadUsers(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
67
+ downloadUsers(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
68
+ deleteOneUserObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
69
+ deleteManyUserObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
70
+ }
71
+ export declare class StorageClient implements StorageOperator {
72
+ private objects;
73
+ private http;
74
+ private multipart;
75
+ private base_url;
76
+ private get_token?;
77
+ constructor(opts: StorageClientOptions);
78
+ upload(col: StorageCollection, opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
79
+ download(col: StorageCollection, opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
80
+ deleteOne(col: StorageCollection, opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
81
+ deleteMany(col: StorageCollection, opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
82
+ uploadCalls(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
83
+ downloadCalls(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
84
+ deleteOneCallObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
85
+ deleteManyCallObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
86
+ uploadChat(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
87
+ downloadChat(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
88
+ deleteOneChatObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
89
+ deleteManyChatObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
90
+ uploadContacts(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
91
+ downloadContacts(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
92
+ deleteOneContactObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
93
+ deleteManyContactObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
94
+ uploadJobs(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
95
+ downloadJobs(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
96
+ deleteOneJobObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
97
+ deleteManyJobObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
98
+ uploadLocations(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
99
+ downloadLocations(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
100
+ deleteOneLocationObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
101
+ deleteManyLocationObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
102
+ uploadMemos(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
103
+ downloadMemos(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
104
+ deleteOneMemoObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
105
+ deleteManyMemoObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
106
+ uploadQR(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
107
+ downloadQR(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
108
+ deleteOneQRObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
109
+ deleteManyQRObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
110
+ uploadReports(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
111
+ downloadReports(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
112
+ deleteOneReportObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
113
+ deleteManyReportObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
114
+ uploadTickets(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
115
+ downloadTickets(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
116
+ deleteOneTicketObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
117
+ deleteManyTicketObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
118
+ uploadUsers(opts: UploadStorageOptions): Promise<OperationResultOf<RPStorageUpload>>;
119
+ downloadUsers(opts: DownloadStorageOptions): Promise<OperationResultOf<StorageObject[]>>;
120
+ deleteOneUserObject(opts: DeleteOneOptionsCRUD): Promise<OperationResult>;
121
+ deleteManyUserObjects(opts?: DeleteManyOptionsCRUD): Promise<OperationResultOf<number>>;
122
+ private object;
123
+ }
124
+ export declare function newStorageClient(opts: StorageClientOptions): StorageClient;