@docbrasil/api-systemmanager 1.1.75 → 1.1.77

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/api/admin/list.js CHANGED
@@ -128,6 +128,220 @@ class AdminLists {
128
128
  throw ex;
129
129
  }
130
130
  }
131
+
132
+ /**
133
+ * @author Myndware <augusto.pissarra@myndware.com>
134
+ * @description Filter organization lists by name
135
+ * @param {object} params Parameters
136
+ * @param {string} params.orgId Organization ID (required)
137
+ * @param {array} [params.names=[]] Array of list names to filter (empty = all)
138
+ * @param {string} session JWT session token
139
+ * @return {Promise<array>} Array of matching org lists sorted by name
140
+ * @public
141
+ * @async
142
+ * @example
143
+ *
144
+ * const API = require('@docbrasil/api-systemmanager');
145
+ * const api = new API();
146
+ * const params = { orgId: '5edd11c46b6ce9729c2c297c', names: ['Tags', 'Categorias'] };
147
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
148
+ * const lists = await api.admin.list.filterByName(params, session);
149
+ */
150
+ async filterByName(params = {}, session) {
151
+ const self = this;
152
+
153
+ try {
154
+ Joi.assert(params, Joi.object().required());
155
+ Joi.assert(params.orgId, Joi.string().required());
156
+ Joi.assert(session, Joi.string().required());
157
+
158
+ const { orgId, names = [] } = params;
159
+ const payload = { names };
160
+
161
+ const apiCall = self._client.post(
162
+ `/admin/organizations/${orgId}/orgtags/filter`,
163
+ payload,
164
+ self._setHeader(session)
165
+ );
166
+
167
+ return self._returnData(await apiCall);
168
+ } catch (ex) {
169
+ throw ex;
170
+ }
171
+ }
172
+
173
+ /**
174
+ * @author Myndware <augusto.pissarra@myndware.com>
175
+ * @description Create a new organization list
176
+ * @param {object} params Parameters
177
+ * @param {string} params.orgId Organization ID (required)
178
+ * @param {string} params.name List name (required)
179
+ * @param {array} [params.list=[]] Initial list items
180
+ * @param {string} session JWT session token
181
+ * @return {Promise<object>} Created list document
182
+ * @public
183
+ * @async
184
+ * @example
185
+ *
186
+ * const API = require('@docbrasil/api-systemmanager');
187
+ * const api = new API();
188
+ * const params = { orgId: '5edd11c46b6ce9729c2c297c', name: 'My List', list: [] };
189
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
190
+ * const list = await api.admin.list.create(params, session);
191
+ */
192
+ async create(params = {}, session) {
193
+ const self = this;
194
+
195
+ try {
196
+ Joi.assert(params, Joi.object().required());
197
+ Joi.assert(params.orgId, Joi.string().required());
198
+ Joi.assert(params.name, Joi.string().required());
199
+ Joi.assert(session, Joi.string().required());
200
+
201
+ const { orgId, name, list = [] } = params;
202
+ const payload = { orgId, name, list };
203
+
204
+ const apiCall = self._client.put(
205
+ `/admin/organizations/${orgId}/orgtags`,
206
+ payload,
207
+ self._setHeader(session)
208
+ );
209
+
210
+ return self._returnData(await apiCall);
211
+ } catch (ex) {
212
+ throw ex;
213
+ }
214
+ }
215
+
216
+ /**
217
+ * @author Myndware <augusto.pissarra@myndware.com>
218
+ * @description Update an organization list
219
+ * @param {object} params Parameters
220
+ * @param {string} params.orgId Organization ID (required)
221
+ * @param {string} params.id List ID (required)
222
+ * @param {object} params.data Fields to update (name, list, etc.)
223
+ * @param {string} session JWT session token
224
+ * @return {Promise<object>} Updated list document
225
+ * @public
226
+ * @async
227
+ * @example
228
+ *
229
+ * const API = require('@docbrasil/api-systemmanager');
230
+ * const api = new API();
231
+ * const params = { orgId: '5edd11c46b6ce9729c2c297c', id: '55e4a3bd6be6b45210833fae', data: { name: 'Renamed' } };
232
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
233
+ * const list = await api.admin.list.update(params, session);
234
+ */
235
+ async update(params = {}, session) {
236
+ const self = this;
237
+
238
+ try {
239
+ Joi.assert(params, Joi.object().required());
240
+ Joi.assert(params.orgId, Joi.string().required());
241
+ Joi.assert(params.id, Joi.string().required());
242
+ Joi.assert(params.data, Joi.object().required());
243
+ Joi.assert(session, Joi.string().required());
244
+
245
+ const { orgId, id, data } = params;
246
+
247
+ const apiCall = self._client.put(
248
+ `/admin/organizations/${orgId}/orgtags/${id}`,
249
+ data,
250
+ self._setHeader(session)
251
+ );
252
+
253
+ return self._returnData(await apiCall);
254
+ } catch (ex) {
255
+ throw ex;
256
+ }
257
+ }
258
+
259
+ /**
260
+ * @author Myndware <augusto.pissarra@myndware.com>
261
+ * @description Remove an organization list
262
+ * @param {object} params Parameters
263
+ * @param {string} params.orgId Organization ID (required)
264
+ * @param {string} params.id List ID to remove (required)
265
+ * @param {string} session JWT session token
266
+ * @return {Promise<object>} Removal confirmation
267
+ * @public
268
+ * @async
269
+ * @example
270
+ *
271
+ * const API = require('@docbrasil/api-systemmanager');
272
+ * const api = new API();
273
+ * const params = { orgId: '5edd11c46b6ce9729c2c297c', id: '55e4a3bd6be6b45210833fae' };
274
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
275
+ * await api.admin.list.remove(params, session);
276
+ */
277
+ async remove(params = {}, session) {
278
+ const self = this;
279
+
280
+ try {
281
+ Joi.assert(params, Joi.object().required());
282
+ Joi.assert(params.orgId, Joi.string().required());
283
+ Joi.assert(params.id, Joi.string().required());
284
+ Joi.assert(session, Joi.string().required());
285
+
286
+ const { orgId, id } = params;
287
+
288
+ const apiCall = self._client.delete(
289
+ `/admin/organizations/${orgId}/orgtags/${id}`,
290
+ self._setHeader(session)
291
+ );
292
+
293
+ return self._returnData(await apiCall);
294
+ } catch (ex) {
295
+ throw ex;
296
+ }
297
+ }
298
+
299
+ /**
300
+ * @author Myndware <augusto.pissarra@myndware.com>
301
+ * @description Update list items of an organization list
302
+ * @param {object} params Parameters
303
+ * @param {string} params.orgId Organization ID (required)
304
+ * @param {string} params.id List ID (required)
305
+ * @param {array} params.list Updated list items array (required)
306
+ * @param {string} session JWT session token
307
+ * @return {Promise<object>} Updated list document
308
+ * @public
309
+ * @async
310
+ * @example
311
+ *
312
+ * const API = require('@docbrasil/api-systemmanager');
313
+ * const api = new API();
314
+ * const params = {
315
+ * orgId: '5edd11c46b6ce9729c2c297c',
316
+ * id: '55e4a3bd6be6b45210833fae',
317
+ * list: [{ _id: '1', value: 'Item 1', filter: '', order: 0 }]
318
+ * };
319
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
320
+ * const list = await api.admin.list.updateListItems(params, session);
321
+ */
322
+ async updateListItems(params = {}, session) {
323
+ const self = this;
324
+
325
+ try {
326
+ Joi.assert(params, Joi.object().required());
327
+ Joi.assert(params.orgId, Joi.string().required());
328
+ Joi.assert(params.id, Joi.string().required());
329
+ Joi.assert(params.list, Joi.array().required());
330
+ Joi.assert(session, Joi.string().required());
331
+
332
+ const { orgId, id, list } = params;
333
+
334
+ const apiCall = self._client.put(
335
+ `/admin/organizations/${orgId}/orgtags/${id}`,
336
+ { list },
337
+ self._setHeader(session)
338
+ );
339
+
340
+ return self._returnData(await apiCall);
341
+ } catch (ex) {
342
+ throw ex;
343
+ }
344
+ }
131
345
  }
132
346
 
133
347
  export default AdminLists;
package/api/user/help.js CHANGED
@@ -150,6 +150,47 @@ class Help {
150
150
  }
151
151
  }
152
152
 
153
+ /**
154
+ * @author Myndware <augusto.pissarra@myndware.com>
155
+ * @description Update a schedule associated with a help page.
156
+ * Allows partial updates (e.g., just the cron expression).
157
+ * @param {object} params Params for update
158
+ * @param {string} params.id Schedule id (_id database)
159
+ * @param {object} params.data Partial update data (e.g., { schedule: { cron: '0 9 * * *' } })
160
+ * @param {string} session Session, token JWT
161
+ * @returns {promise<object>} Updated schedule document
162
+ * @public
163
+ * @example
164
+ *
165
+ * const API = require('@docbrasil/api-systemmanager');
166
+ * const api = new API();
167
+ * const params = {
168
+ * id: '5dadd01dc4af3941d42f8c5c',
169
+ * data: {
170
+ * schedule: { cron: '0 9 * * *' }
171
+ * }
172
+ * };
173
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
174
+ * await api.user.help.updateSchedule(params, session);
175
+ */
176
+ async updateSchedule(params, session) {
177
+ const self = this;
178
+
179
+ try {
180
+ Joi.assert(params, Joi.object().required(), 'Params to update schedule');
181
+ Joi.assert(params.id, Joi.string().required(), 'Schedule id (_id database)');
182
+ Joi.assert(params.data, Joi.object().required(), 'Data to update');
183
+ Joi.assert(session, Joi.string().required(), 'Session token JWT');
184
+
185
+ const { id, data } = params;
186
+ const apiCall = self._client.put(`/help/schedule/${id}`, data, self._setHeader(session));
187
+
188
+ return self._returnData(await apiCall);
189
+ } catch (ex) {
190
+ throw ex;
191
+ }
192
+ }
193
+
153
194
  }
154
195
 
155
196
  export default Help;
package/dist/bundle.cjs CHANGED
@@ -11481,6 +11481,47 @@ class Help {
11481
11481
  }
11482
11482
  }
11483
11483
 
11484
+ /**
11485
+ * @author Myndware <augusto.pissarra@myndware.com>
11486
+ * @description Update a schedule associated with a help page.
11487
+ * Allows partial updates (e.g., just the cron expression).
11488
+ * @param {object} params Params for update
11489
+ * @param {string} params.id Schedule id (_id database)
11490
+ * @param {object} params.data Partial update data (e.g., { schedule: { cron: '0 9 * * *' } })
11491
+ * @param {string} session Session, token JWT
11492
+ * @returns {promise<object>} Updated schedule document
11493
+ * @public
11494
+ * @example
11495
+ *
11496
+ * const API = require('@docbrasil/api-systemmanager');
11497
+ * const api = new API();
11498
+ * const params = {
11499
+ * id: '5dadd01dc4af3941d42f8c5c',
11500
+ * data: {
11501
+ * schedule: { cron: '0 9 * * *' }
11502
+ * }
11503
+ * };
11504
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
11505
+ * await api.user.help.updateSchedule(params, session);
11506
+ */
11507
+ async updateSchedule(params, session) {
11508
+ const self = this;
11509
+
11510
+ try {
11511
+ Joi__default["default"].assert(params, Joi__default["default"].object().required(), 'Params to update schedule');
11512
+ Joi__default["default"].assert(params.id, Joi__default["default"].string().required(), 'Schedule id (_id database)');
11513
+ Joi__default["default"].assert(params.data, Joi__default["default"].object().required(), 'Data to update');
11514
+ Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token JWT');
11515
+
11516
+ const { id, data } = params;
11517
+ const apiCall = self._client.put(`/help/schedule/${id}`, data, self._setHeader(session));
11518
+
11519
+ return self._returnData(await apiCall);
11520
+ } catch (ex) {
11521
+ throw ex;
11522
+ }
11523
+ }
11524
+
11484
11525
  }
11485
11526
 
11486
11527
  /**
@@ -13842,6 +13883,220 @@ class AdminLists {
13842
13883
  throw ex;
13843
13884
  }
13844
13885
  }
13886
+
13887
+ /**
13888
+ * @author Myndware <augusto.pissarra@myndware.com>
13889
+ * @description Filter organization lists by name
13890
+ * @param {object} params Parameters
13891
+ * @param {string} params.orgId Organization ID (required)
13892
+ * @param {array} [params.names=[]] Array of list names to filter (empty = all)
13893
+ * @param {string} session JWT session token
13894
+ * @return {Promise<array>} Array of matching org lists sorted by name
13895
+ * @public
13896
+ * @async
13897
+ * @example
13898
+ *
13899
+ * const API = require('@docbrasil/api-systemmanager');
13900
+ * const api = new API();
13901
+ * const params = { orgId: '5edd11c46b6ce9729c2c297c', names: ['Tags', 'Categorias'] };
13902
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
13903
+ * const lists = await api.admin.list.filterByName(params, session);
13904
+ */
13905
+ async filterByName(params = {}, session) {
13906
+ const self = this;
13907
+
13908
+ try {
13909
+ Joi__default["default"].assert(params, Joi__default["default"].object().required());
13910
+ Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required());
13911
+ Joi__default["default"].assert(session, Joi__default["default"].string().required());
13912
+
13913
+ const { orgId, names = [] } = params;
13914
+ const payload = { names };
13915
+
13916
+ const apiCall = self._client.post(
13917
+ `/admin/organizations/${orgId}/orgtags/filter`,
13918
+ payload,
13919
+ self._setHeader(session)
13920
+ );
13921
+
13922
+ return self._returnData(await apiCall);
13923
+ } catch (ex) {
13924
+ throw ex;
13925
+ }
13926
+ }
13927
+
13928
+ /**
13929
+ * @author Myndware <augusto.pissarra@myndware.com>
13930
+ * @description Create a new organization list
13931
+ * @param {object} params Parameters
13932
+ * @param {string} params.orgId Organization ID (required)
13933
+ * @param {string} params.name List name (required)
13934
+ * @param {array} [params.list=[]] Initial list items
13935
+ * @param {string} session JWT session token
13936
+ * @return {Promise<object>} Created list document
13937
+ * @public
13938
+ * @async
13939
+ * @example
13940
+ *
13941
+ * const API = require('@docbrasil/api-systemmanager');
13942
+ * const api = new API();
13943
+ * const params = { orgId: '5edd11c46b6ce9729c2c297c', name: 'My List', list: [] };
13944
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
13945
+ * const list = await api.admin.list.create(params, session);
13946
+ */
13947
+ async create(params = {}, session) {
13948
+ const self = this;
13949
+
13950
+ try {
13951
+ Joi__default["default"].assert(params, Joi__default["default"].object().required());
13952
+ Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required());
13953
+ Joi__default["default"].assert(params.name, Joi__default["default"].string().required());
13954
+ Joi__default["default"].assert(session, Joi__default["default"].string().required());
13955
+
13956
+ const { orgId, name, list = [] } = params;
13957
+ const payload = { orgId, name, list };
13958
+
13959
+ const apiCall = self._client.put(
13960
+ `/admin/organizations/${orgId}/orgtags`,
13961
+ payload,
13962
+ self._setHeader(session)
13963
+ );
13964
+
13965
+ return self._returnData(await apiCall);
13966
+ } catch (ex) {
13967
+ throw ex;
13968
+ }
13969
+ }
13970
+
13971
+ /**
13972
+ * @author Myndware <augusto.pissarra@myndware.com>
13973
+ * @description Update an organization list
13974
+ * @param {object} params Parameters
13975
+ * @param {string} params.orgId Organization ID (required)
13976
+ * @param {string} params.id List ID (required)
13977
+ * @param {object} params.data Fields to update (name, list, etc.)
13978
+ * @param {string} session JWT session token
13979
+ * @return {Promise<object>} Updated list document
13980
+ * @public
13981
+ * @async
13982
+ * @example
13983
+ *
13984
+ * const API = require('@docbrasil/api-systemmanager');
13985
+ * const api = new API();
13986
+ * const params = { orgId: '5edd11c46b6ce9729c2c297c', id: '55e4a3bd6be6b45210833fae', data: { name: 'Renamed' } };
13987
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
13988
+ * const list = await api.admin.list.update(params, session);
13989
+ */
13990
+ async update(params = {}, session) {
13991
+ const self = this;
13992
+
13993
+ try {
13994
+ Joi__default["default"].assert(params, Joi__default["default"].object().required());
13995
+ Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required());
13996
+ Joi__default["default"].assert(params.id, Joi__default["default"].string().required());
13997
+ Joi__default["default"].assert(params.data, Joi__default["default"].object().required());
13998
+ Joi__default["default"].assert(session, Joi__default["default"].string().required());
13999
+
14000
+ const { orgId, id, data } = params;
14001
+
14002
+ const apiCall = self._client.put(
14003
+ `/admin/organizations/${orgId}/orgtags/${id}`,
14004
+ data,
14005
+ self._setHeader(session)
14006
+ );
14007
+
14008
+ return self._returnData(await apiCall);
14009
+ } catch (ex) {
14010
+ throw ex;
14011
+ }
14012
+ }
14013
+
14014
+ /**
14015
+ * @author Myndware <augusto.pissarra@myndware.com>
14016
+ * @description Remove an organization list
14017
+ * @param {object} params Parameters
14018
+ * @param {string} params.orgId Organization ID (required)
14019
+ * @param {string} params.id List ID to remove (required)
14020
+ * @param {string} session JWT session token
14021
+ * @return {Promise<object>} Removal confirmation
14022
+ * @public
14023
+ * @async
14024
+ * @example
14025
+ *
14026
+ * const API = require('@docbrasil/api-systemmanager');
14027
+ * const api = new API();
14028
+ * const params = { orgId: '5edd11c46b6ce9729c2c297c', id: '55e4a3bd6be6b45210833fae' };
14029
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
14030
+ * await api.admin.list.remove(params, session);
14031
+ */
14032
+ async remove(params = {}, session) {
14033
+ const self = this;
14034
+
14035
+ try {
14036
+ Joi__default["default"].assert(params, Joi__default["default"].object().required());
14037
+ Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required());
14038
+ Joi__default["default"].assert(params.id, Joi__default["default"].string().required());
14039
+ Joi__default["default"].assert(session, Joi__default["default"].string().required());
14040
+
14041
+ const { orgId, id } = params;
14042
+
14043
+ const apiCall = self._client.delete(
14044
+ `/admin/organizations/${orgId}/orgtags/${id}`,
14045
+ self._setHeader(session)
14046
+ );
14047
+
14048
+ return self._returnData(await apiCall);
14049
+ } catch (ex) {
14050
+ throw ex;
14051
+ }
14052
+ }
14053
+
14054
+ /**
14055
+ * @author Myndware <augusto.pissarra@myndware.com>
14056
+ * @description Update list items of an organization list
14057
+ * @param {object} params Parameters
14058
+ * @param {string} params.orgId Organization ID (required)
14059
+ * @param {string} params.id List ID (required)
14060
+ * @param {array} params.list Updated list items array (required)
14061
+ * @param {string} session JWT session token
14062
+ * @return {Promise<object>} Updated list document
14063
+ * @public
14064
+ * @async
14065
+ * @example
14066
+ *
14067
+ * const API = require('@docbrasil/api-systemmanager');
14068
+ * const api = new API();
14069
+ * const params = {
14070
+ * orgId: '5edd11c46b6ce9729c2c297c',
14071
+ * id: '55e4a3bd6be6b45210833fae',
14072
+ * list: [{ _id: '1', value: 'Item 1', filter: '', order: 0 }]
14073
+ * };
14074
+ * const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
14075
+ * const list = await api.admin.list.updateListItems(params, session);
14076
+ */
14077
+ async updateListItems(params = {}, session) {
14078
+ const self = this;
14079
+
14080
+ try {
14081
+ Joi__default["default"].assert(params, Joi__default["default"].object().required());
14082
+ Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required());
14083
+ Joi__default["default"].assert(params.id, Joi__default["default"].string().required());
14084
+ Joi__default["default"].assert(params.list, Joi__default["default"].array().required());
14085
+ Joi__default["default"].assert(session, Joi__default["default"].string().required());
14086
+
14087
+ const { orgId, id, list } = params;
14088
+
14089
+ const apiCall = self._client.put(
14090
+ `/admin/organizations/${orgId}/orgtags/${id}`,
14091
+ { list },
14092
+ self._setHeader(session)
14093
+ );
14094
+
14095
+ return self._returnData(await apiCall);
14096
+ } catch (ex) {
14097
+ throw ex;
14098
+ }
14099
+ }
13845
14100
  }
13846
14101
 
13847
14102
  /**