@finema/core 3.17.2 → 3.19.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.
Files changed (88) hide show
  1. package/dist/module.json +1 -1
  2. package/dist/module.mjs +1 -1
  3. package/dist/runtime/components/FlexDeck/index.vue +79 -79
  4. package/dist/runtime/components/Form/FieldWrapper.vue +13 -13
  5. package/dist/runtime/components/Form/Fields.vue +13 -13
  6. package/dist/runtime/components/Form/InputCheckbox/index.d.vue.ts +5 -1
  7. package/dist/runtime/components/Form/InputCheckbox/index.vue +18 -18
  8. package/dist/runtime/components/Form/InputCheckbox/index.vue.d.ts +5 -1
  9. package/dist/runtime/components/Form/InputCheckboxGroup/index.d.vue.ts +5 -1
  10. package/dist/runtime/components/Form/InputCheckboxGroup/index.vue +21 -21
  11. package/dist/runtime/components/Form/InputCheckboxGroup/index.vue.d.ts +5 -1
  12. package/dist/runtime/components/Form/InputCurrency/index.d.vue.ts +5 -1
  13. package/dist/runtime/components/Form/InputCurrency/index.vue +49 -49
  14. package/dist/runtime/components/Form/InputCurrency/index.vue.d.ts +5 -1
  15. package/dist/runtime/components/Form/InputDateTime/index.d.vue.ts +5 -1
  16. package/dist/runtime/components/Form/InputDateTime/index.vue +63 -63
  17. package/dist/runtime/components/Form/InputDateTime/index.vue.d.ts +5 -1
  18. package/dist/runtime/components/Form/InputDateTimeRange/index.d.vue.ts +5 -1
  19. package/dist/runtime/components/Form/InputDateTimeRange/index.vue +56 -56
  20. package/dist/runtime/components/Form/InputDateTimeRange/index.vue.d.ts +5 -1
  21. package/dist/runtime/components/Form/InputMonth/index.d.vue.ts +5 -1
  22. package/dist/runtime/components/Form/InputMonth/index.vue.d.ts +5 -1
  23. package/dist/runtime/components/Form/InputNumber/index.d.vue.ts +5 -1
  24. package/dist/runtime/components/Form/InputNumber/index.vue +20 -20
  25. package/dist/runtime/components/Form/InputNumber/index.vue.d.ts +5 -1
  26. package/dist/runtime/components/Form/InputSearch/index.d.vue.ts +9 -1
  27. package/dist/runtime/components/Form/InputSearch/index.vue.d.ts +9 -1
  28. package/dist/runtime/components/Form/InputSelect/index.d.vue.ts +7 -1
  29. package/dist/runtime/components/Form/InputSelect/index.vue +110 -110
  30. package/dist/runtime/components/Form/InputSelect/index.vue.d.ts +7 -1
  31. package/dist/runtime/components/Form/InputSelectMultiple/index.d.vue.ts +7 -1
  32. package/dist/runtime/components/Form/InputSelectMultiple/index.vue +118 -118
  33. package/dist/runtime/components/Form/InputSelectMultiple/index.vue.d.ts +7 -1
  34. package/dist/runtime/components/Form/InputTags/index.d.vue.ts +11 -1
  35. package/dist/runtime/components/Form/InputTags/index.vue +54 -54
  36. package/dist/runtime/components/Form/InputTags/index.vue.d.ts +11 -1
  37. package/dist/runtime/components/Form/InputText/index.d.vue.ts +7 -1
  38. package/dist/runtime/components/Form/InputText/index.vue +85 -85
  39. package/dist/runtime/components/Form/InputText/index.vue.d.ts +7 -1
  40. package/dist/runtime/components/Form/InputTextarea/index.d.vue.ts +5 -1
  41. package/dist/runtime/components/Form/InputTextarea/index.vue +18 -18
  42. package/dist/runtime/components/Form/InputTextarea/index.vue.d.ts +5 -1
  43. package/dist/runtime/components/Form/InputTime/index.d.vue.ts +5 -1
  44. package/dist/runtime/components/Form/InputTime/index.vue +38 -38
  45. package/dist/runtime/components/Form/InputTime/index.vue.d.ts +5 -1
  46. package/dist/runtime/components/Form/InputToggle/index.d.vue.ts +5 -1
  47. package/dist/runtime/components/Form/InputToggle/index.vue +17 -17
  48. package/dist/runtime/components/Form/InputToggle/index.vue.d.ts +5 -1
  49. package/dist/runtime/components/Form/InputUploadDropzone/index.vue +30 -30
  50. package/dist/runtime/components/Form/InputUploadDropzoneAuto/index.vue +50 -50
  51. package/dist/runtime/components/Form/InputUploadDropzoneAutoMultiple/index.vue +50 -50
  52. package/dist/runtime/components/Form/InputUploadImageAuto/index.vue +50 -50
  53. package/dist/runtime/components/Form/InputWYSIWYG/EditorImageUploadNode.vue +18 -18
  54. package/dist/runtime/components/Form/InputWYSIWYG/EditorLinkPopover.vue +65 -65
  55. package/dist/runtime/components/Form/InputWYSIWYG/README.md +96 -96
  56. package/dist/runtime/components/Form/InputWYSIWYG/index.vue +41 -41
  57. package/dist/runtime/components/Form/fileState/EmptyState.vue +21 -21
  58. package/dist/runtime/components/Form/fileState/FailedState.vue +33 -33
  59. package/dist/runtime/components/Form/fileState/LoadingState.vue +24 -24
  60. package/dist/runtime/components/Form/fileState/MultipleFilesState.vue +75 -75
  61. package/dist/runtime/components/Form/fileState/PreviewModal.vue +23 -23
  62. package/dist/runtime/components/Form/index.vue +5 -5
  63. package/dist/runtime/components/Image.vue +28 -28
  64. package/dist/runtime/components/Log/index.vue +17 -17
  65. package/dist/runtime/components/Table/Base.d.vue.ts +8 -2
  66. package/dist/runtime/components/Table/Base.vue +117 -117
  67. package/dist/runtime/components/Table/Base.vue.d.ts +8 -2
  68. package/dist/runtime/components/Table/ColumnDate.vue +1 -1
  69. package/dist/runtime/components/Table/ColumnDateTime.vue +1 -1
  70. package/dist/runtime/components/Table/ColumnImage.vue +4 -4
  71. package/dist/runtime/components/Table/ColumnText.vue +10 -10
  72. package/dist/runtime/components/Table/Pagination.vue +62 -62
  73. package/dist/runtime/components/Table/Simple.vue +19 -19
  74. package/dist/runtime/components/Table/index.vue +33 -33
  75. package/dist/runtime/composables/loaderList.js +38 -15
  76. package/dist/runtime/composables/loaderObject.js +49 -20
  77. package/dist/runtime/composables/loaderPage.js +300 -168
  78. package/dist/runtime/helpers/apiBaseHelper.d.ts +5 -2
  79. package/dist/runtime/helpers/apiBaseHelper.js +53 -3
  80. package/dist/runtime/helpers/apiCancelHelper.d.ts +6 -0
  81. package/dist/runtime/helpers/apiCancelHelper.js +22 -0
  82. package/dist/runtime/helpers/apiListHelper.js +6 -3
  83. package/dist/runtime/helpers/apiObjectHelper.d.ts +3 -1
  84. package/dist/runtime/helpers/apiObjectHelper.js +6 -3
  85. package/dist/runtime/helpers/apiPageHelper.d.ts +9 -3
  86. package/dist/runtime/helpers/apiPageHelper.js +29 -16
  87. package/dist/runtime/server/tsconfig.json +3 -3
  88. package/package.json +2 -2
@@ -3,6 +3,7 @@ import {
3
3
  checkExpiration,
4
4
  prepareRequestOptions,
5
5
  handleApiRequest,
6
+ toSerializableRequestOptions,
6
7
  updateLoaderState
7
8
  } from "./apiBaseHelper.js";
8
9
  export const apiListHelper = async (state, onUpdateStatus, onUpdateOptions, onUpdateItems, opts) => {
@@ -15,8 +16,10 @@ export const apiListHelper = async (state, onUpdateStatus, onUpdateOptions, onUp
15
16
  const requestOptions = prepareRequestOptions(
16
17
  {},
17
18
  opts.getRequestOptions?.(opts),
18
- opts.params
19
+ opts.params,
20
+ opts.signal
19
21
  );
22
+ const serializableRequestOptions = toSerializableRequestOptions(requestOptions);
20
23
  const url = bindParamsToUrl(opts.getURL ? opts.getURL(opts) : opts.url, opts.urlBind || {});
21
24
  await handleApiRequest(
22
25
  {
@@ -32,14 +35,14 @@ export const apiListHelper = async (state, onUpdateStatus, onUpdateOptions, onUp
32
35
  onUpdateOptions({
33
36
  _timestamp: Date.now(),
34
37
  _status: status,
35
- request: requestOptions
38
+ request: serializableRequestOptions
36
39
  });
37
40
  },
38
41
  onError: (error) => {
39
42
  onUpdateStatus(updateLoaderState.setError(state().status, error));
40
43
  onUpdateOptions({
41
44
  _status: error.response?.status,
42
- request: requestOptions
45
+ request: serializableRequestOptions
43
46
  });
44
47
  },
45
48
  onComplete: () => {
@@ -21,6 +21,7 @@ export interface IUseObjectLoader<T, B, _O> {
21
21
  data: ComputedRef<T | null>;
22
22
  options: ComputedRef<IAPIOptions>;
23
23
  run: (payload?: IObjectRunLoaderOptions<T, B>) => Promise<void>;
24
+ cancel: () => void;
24
25
  clear: () => void;
25
26
  setLoading: () => void;
26
27
  setData: (data: T | null) => void;
@@ -29,7 +30,8 @@ export interface IUseListLoader<T, O> {
29
30
  status: ComputedRef<IStatus>;
30
31
  items: ComputedRef<T[]>;
31
32
  options: ComputedRef<Record<string, any>>;
32
- run: (opts?: IListRunLoaderOptions<T, O>) => void;
33
+ run: (opts?: IListRunLoaderOptions<T, O>) => Promise<void>;
34
+ cancel: () => void;
33
35
  setItems: (items: T[]) => void;
34
36
  clear: () => void;
35
37
  setLoading: () => void;
@@ -3,6 +3,7 @@ import {
3
3
  checkExpiration,
4
4
  handleApiRequest,
5
5
  prepareRequestOptions,
6
+ toSerializableRequestOptions,
6
7
  updateLoaderState
7
8
  } from "./apiBaseHelper.js";
8
9
  export const apiObjectHelper = async (state, onUpdateStatus, onUpdateOptions, onUpdateData, payload, opts) => {
@@ -15,8 +16,10 @@ export const apiObjectHelper = async (state, onUpdateStatus, onUpdateOptions, on
15
16
  const requestOptions = prepareRequestOptions(
16
17
  {},
17
18
  opts.getRequestOptions?.(payload, opts),
18
- opts.params
19
+ opts.params,
20
+ opts.signal
19
21
  );
22
+ const serializableRequestOptions = toSerializableRequestOptions(requestOptions);
20
23
  const url = bindParamsToUrl(opts.getURL ? opts.getURL(payload, opts) : opts.url, opts.urlBind || {});
21
24
  await handleApiRequest(
22
25
  {
@@ -31,7 +34,7 @@ export const apiObjectHelper = async (state, onUpdateStatus, onUpdateOptions, on
31
34
  onUpdateData(item);
32
35
  onUpdateStatus(updateLoaderState.setSuccess(state().status));
33
36
  onUpdateOptions({
34
- request: requestOptions,
37
+ request: serializableRequestOptions,
35
38
  _timestamp: Date.now(),
36
39
  _status: status
37
40
  });
@@ -39,7 +42,7 @@ export const apiObjectHelper = async (state, onUpdateStatus, onUpdateOptions, on
39
42
  onError: (error) => {
40
43
  onUpdateStatus(updateLoaderState.setError(state().status, error));
41
44
  onUpdateOptions({
42
- request: requestOptions,
45
+ request: serializableRequestOptions,
43
46
  _status: error.response?.status
44
47
  });
45
48
  },
@@ -78,10 +78,16 @@ export interface IUsePageLoader<T> {
78
78
  fetchSearch: (query: string, opts?: IPageFetchLoaderOptions) => Promise<void>;
79
79
  fetchSetLoading: () => void;
80
80
  findSetLoading: () => void;
81
- findRun: (id: string, opts?: IPageFindLoaderOptions) => Promise<void>;
81
+ findRun: (id: string | number, opts?: IPageFindLoaderOptions) => Promise<void>;
82
82
  addRun: (payload: IPageAddLoaderOptions<Partial<T> | Record<string, any>>) => Promise<void>;
83
- updateRun: (id: string, payload: IPageUpdateLoaderOptions<Partial<T> | Record<string, any>>) => Promise<void>;
84
- deleteRun: (id: string, opts?: IPageDeleteLoaderOptions) => Promise<void>;
83
+ updateRun: (id: string | number, payload: IPageUpdateLoaderOptions<Partial<T> | Record<string, any>>) => Promise<void>;
84
+ deleteRun: (id: string | number, opts?: IPageDeleteLoaderOptions) => Promise<void>;
85
+ cancelFetch: () => void;
86
+ cancelFind: () => void;
87
+ cancelAdd: () => void;
88
+ cancelUpdate: () => void;
89
+ cancelDelete: () => void;
90
+ cancelAll: () => void;
85
91
  clearAll: () => void;
86
92
  }
87
93
  export declare const apiAddHelper: <T>(state: () => IAPIAddState<T>, onUpdateStatus: (status: IStatus) => void, onUpdateOptions: (options: IAPIOptions) => void, onUpdateData: (data: any) => void, onUpdateItems: (data: any[]) => void, data: any, opts: IPageLoaderOptions<any> & IPageFetchLoaderOptions) => Promise<void>;
@@ -4,7 +4,9 @@ import { bindParamsToUrl } from "./apiBaseHelper.js";
4
4
  import {
5
5
  checkExpiration,
6
6
  handleApiRequest,
7
+ omitLoaderSignal,
7
8
  prepareRequestOptions,
9
+ toSerializableRequestOptions,
8
10
  updateLoaderState
9
11
  } from "./apiBaseHelper.js";
10
12
  import { _findIndex, _shuffle } from "#imports";
@@ -14,8 +16,10 @@ export const apiAddHelper = async (state, onUpdateStatus, onUpdateOptions, onUpd
14
16
  const requestOptions = prepareRequestOptions(
15
17
  opts.getBaseRequestOptions?.() || {},
16
18
  opts.add?.getRequestOptions?.(data, opts),
17
- opts.params
19
+ opts.params,
20
+ opts.signal
18
21
  );
22
+ const serializableRequestOptions = toSerializableRequestOptions(requestOptions);
19
23
  const url = bindParamsToUrl(opts.add?.getURL ? opts.add.getURL(data, opts) : opts.baseURL, opts.pathBind);
20
24
  await handleApiRequest(
21
25
  {
@@ -32,14 +36,14 @@ export const apiAddHelper = async (state, onUpdateStatus, onUpdateOptions, onUpd
32
36
  onUpdateOptions({
33
37
  _timestamp: Date.now(),
34
38
  _status: status,
35
- request: requestOptions
39
+ request: serializableRequestOptions
36
40
  });
37
41
  },
38
42
  onError: (error) => {
39
43
  onUpdateStatus(updateLoaderState.setError(state().status, error));
40
44
  onUpdateOptions({
41
45
  _status: error.response?.status,
42
- request: requestOptions
46
+ request: serializableRequestOptions
43
47
  });
44
48
  },
45
49
  onComplete: () => {
@@ -56,8 +60,10 @@ export const apiDeleteHelper = async (state, onUpdateStatus, onUpdateOptions, _o
56
60
  const requestOptions = prepareRequestOptions(
57
61
  opts.getBaseRequestOptions?.() || {},
58
62
  opts.delete?.getRequestOptions?.(id, opts),
59
- opts.params
63
+ opts.params,
64
+ opts.signal
60
65
  );
66
+ const serializableRequestOptions = toSerializableRequestOptions(requestOptions);
61
67
  const url = bindParamsToUrl(opts.delete?.getURL ? opts.delete.getURL(id, opts) : `${opts.baseURL}/${id}`, opts.pathBind);
62
68
  await handleApiRequest(
63
69
  {
@@ -78,14 +84,14 @@ export const apiDeleteHelper = async (state, onUpdateStatus, onUpdateOptions, _o
78
84
  onUpdateOptions({
79
85
  _timestamp: Date.now(),
80
86
  _status: status,
81
- request: requestOptions
87
+ request: serializableRequestOptions
82
88
  });
83
89
  },
84
90
  onError: (error) => {
85
91
  onUpdateStatus(updateLoaderState.setError(state().status, error));
86
92
  onUpdateOptions({
87
93
  _status: error.response?.status,
88
- request: requestOptions
94
+ request: serializableRequestOptions
89
95
  });
90
96
  },
91
97
  onComplete: () => {
@@ -100,10 +106,11 @@ export const apiFetchHelper = async (state, onUpdateStatus, onUpdateOptions, onU
100
106
  onUpdateStatus(updateLoaderState.setComplete(state().status));
101
107
  return;
102
108
  }
109
+ const loaderStateOptions = omitLoaderSignal(opts);
103
110
  onUpdateStatus(updateLoaderState.setLoading(state().status));
104
111
  onUpdateOptions({
105
112
  ...state().options,
106
- ...opts,
113
+ ...loaderStateOptions,
107
114
  currentPage: page,
108
115
  search: query,
109
116
  primary: opts.primary ?? "id",
@@ -141,8 +148,10 @@ export const apiFetchHelper = async (state, onUpdateStatus, onUpdateOptions, onU
141
148
  page: Number(page)
142
149
  }
143
150
  },
144
- opts.params
151
+ opts.params,
152
+ opts.signal
145
153
  );
154
+ const serializableRequestOptions = toSerializableRequestOptions(requestOptions);
146
155
  const url = bindParamsToUrl(opts.fetch?.getURL ? opts.fetch.getURL(page, query, opts) : opts.baseURL, opts.pathBind);
147
156
  await handleApiRequest(
148
157
  {
@@ -166,7 +175,7 @@ export const apiFetchHelper = async (state, onUpdateStatus, onUpdateOptions, onU
166
175
  ...getOptions(moreOptions),
167
176
  _timestamp: Date.now(),
168
177
  _status: status,
169
- request: requestOptions
178
+ request: serializableRequestOptions
170
179
  })));
171
180
  onUpdateStatus(updateLoaderState.setSuccess(state().status));
172
181
  },
@@ -175,7 +184,7 @@ export const apiFetchHelper = async (state, onUpdateStatus, onUpdateOptions, onU
175
184
  onUpdateOptions(JSON.parse(JSON.stringify({
176
185
  ...state().options,
177
186
  _status: error.response?.status,
178
- request: requestOptions
187
+ request: serializableRequestOptions
179
188
  })));
180
189
  },
181
190
  onComplete: () => {
@@ -194,8 +203,10 @@ export const apiFindHelper = async (state, onUpdateStatus, onUpdateOptions, onUp
194
203
  const requestOptions = prepareRequestOptions(
195
204
  opts.getBaseRequestOptions?.() || {},
196
205
  opts.find?.getRequestOptions?.(id, opts),
197
- opts.params
206
+ opts.params,
207
+ opts.signal
198
208
  );
209
+ const serializableRequestOptions = toSerializableRequestOptions(requestOptions);
199
210
  const url = bindParamsToUrl(opts.find?.getURL ? opts.find.getURL(id, opts) : `${opts.baseURL}/${id}`, opts.pathBind);
200
211
  await handleApiRequest(
201
212
  {
@@ -211,14 +222,14 @@ export const apiFindHelper = async (state, onUpdateStatus, onUpdateOptions, onUp
211
222
  onUpdateOptions({
212
223
  _timestamp: Date.now(),
213
224
  _status: status,
214
- request: requestOptions
225
+ request: serializableRequestOptions
215
226
  });
216
227
  },
217
228
  onError: (error) => {
218
229
  onUpdateStatus(updateLoaderState.setError(state().status, error));
219
230
  onUpdateOptions({
220
231
  _status: error.response?.status,
221
- request: requestOptions
232
+ request: serializableRequestOptions
222
233
  });
223
234
  },
224
235
  onComplete: () => {
@@ -237,8 +248,10 @@ export const updateHelper = async (state, onUpdateStatus, onUpdateOptions, onUpd
237
248
  const requestOptions = prepareRequestOptions(
238
249
  opts.getBaseRequestOptions?.() || {},
239
250
  opts.update?.getRequestOptions?.(id, data, opts),
240
- opts.params
251
+ opts.params,
252
+ opts.signal
241
253
  );
254
+ const serializableRequestOptions = toSerializableRequestOptions(requestOptions);
242
255
  const url = bindParamsToUrl(opts.update?.getURL ? opts.update.getURL(id, data, opts) : `${opts.baseURL}/${id}`, opts.pathBind);
243
256
  await handleApiRequest(
244
257
  {
@@ -268,14 +281,14 @@ export const updateHelper = async (state, onUpdateStatus, onUpdateOptions, onUpd
268
281
  onUpdateOptions({
269
282
  _timestamp: Date.now(),
270
283
  _status: status,
271
- request: requestOptions
284
+ request: serializableRequestOptions
272
285
  });
273
286
  },
274
287
  onError: (error) => {
275
288
  onUpdateStatus(updateLoaderState.setError(state().status, error));
276
289
  onUpdateOptions({
277
290
  _status: error.response?.status,
278
- request: requestOptions
291
+ request: serializableRequestOptions
279
292
  });
280
293
  },
281
294
  onComplete: () => {
@@ -1,3 +1,3 @@
1
- {
2
- "extends": "../../../.nuxt/tsconfig.server.json",
3
- }
1
+ {
2
+ "extends": "../../../.nuxt/tsconfig.server.json",
3
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finema/core",
3
- "version": "3.17.2",
3
+ "version": "3.19.0",
4
4
  "repository": "https://gitlab.finema.co/finema/ui-kit",
5
5
  "license": "MIT",
6
6
  "author": "Finema Dev Core Team",
@@ -83,4 +83,4 @@
83
83
  "lint-staged": {
84
84
  "*": "eslint"
85
85
  }
86
- }
86
+ }