eservices-core 1.0.454 → 1.0.456
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.
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Form } from "jenesius-vue-form";
|
|
2
|
+
/**
|
|
3
|
+
* @description Если используете shadowFormState - не забудь иницилизировать её при помощи функции initShadow.
|
|
4
|
+
* */
|
|
5
|
+
export default function useFormRequest<T extends Form>(form: T, formParams: () => IReadFormParams): {
|
|
6
|
+
shadowFormState: {
|
|
7
|
+
ready: boolean;
|
|
8
|
+
show: boolean;
|
|
9
|
+
};
|
|
10
|
+
initShadow: () => void;
|
|
11
|
+
};
|
|
12
|
+
interface IReadFormParams {
|
|
13
|
+
id: number;
|
|
14
|
+
fields?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface IShadowState {
|
|
17
|
+
ready: boolean;
|
|
18
|
+
show: boolean;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
package/dist/index.d.ts
CHANGED
|
@@ -51,6 +51,7 @@ import Filter from "./utils/Filter";
|
|
|
51
51
|
import staticLink from "./utils/static-link";
|
|
52
52
|
import groupArrayByField from "./utils/group-array-by-field";
|
|
53
53
|
import uuidv4 from "./utils/uuid";
|
|
54
|
+
import parseError from "./utils/parse-error";
|
|
54
55
|
import useFormMetadata from "./hooks/use-form-metadata";
|
|
55
56
|
import useFormAction from "./hooks/use-form-action";
|
|
56
57
|
import useFormLabel from "./hooks/use-form-label";
|
|
@@ -59,6 +60,7 @@ import { useListFilter, useListOrder, useListState } from "./classes/List";
|
|
|
59
60
|
import useCustomerState from "./hooks/use-customer-state";
|
|
60
61
|
import { useTableRequest, useTableState } from "./classes/table/Table";
|
|
61
62
|
import { useCommunication } from "./classes/Communication";
|
|
63
|
+
import useFormRequest from "./hooks/use-form-request";
|
|
62
64
|
import { SYMBOL_ROW } from "./classes/table/Table";
|
|
63
65
|
export {
|
|
64
66
|
/**
|
|
@@ -74,11 +76,15 @@ export { fileService, processWizardService, viewService, authService, dataServic
|
|
|
74
76
|
/**
|
|
75
77
|
* HOOKS
|
|
76
78
|
* */
|
|
77
|
-
export { useFormMetadata, useFormAction, useFormLabel, useFormRequestData, useListFilter, useListOrder, useListState, useCustomerState, useTableState, useTableRequest, useCommunication };
|
|
79
|
+
export { useFormMetadata, useFormAction, useFormLabel, useFormRequestData, useListFilter, useListOrder, useListState, useCustomerState, useTableState, useTableRequest, useCommunication, useFormRequest };
|
|
78
80
|
/**
|
|
79
81
|
* All components binding with VueComponents must have name started with Widget.
|
|
80
82
|
* */
|
|
81
83
|
export { WidgetNotificationSystem, WidgetForm, ModalValidation, WidgetTable, WidgetSpinner, WidgetBreadcrumbs, WidgetList, WidgetSection, WidgetImage, WidgetButton, WidgetNotFound, WidgetIcon, WidgetCard, WidgetMultiButton, WidgetShadowForm };
|
|
84
|
+
/**
|
|
85
|
+
* @description New Utils
|
|
86
|
+
* */
|
|
87
|
+
export { parseError };
|
|
82
88
|
declare const utils: {
|
|
83
89
|
clickOutside: typeof _utils.clickOutside;
|
|
84
90
|
requestHandler: typeof _utils.requestHandler;
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* eservices-core v1.0.
|
|
2
|
+
* eservices-core v1.0.456
|
|
3
3
|
* (c) 2022 ESERVICES
|
|
4
4
|
*/
|
|
5
5
|
'use strict';
|
|
@@ -1927,6 +1927,28 @@ class CoreError extends Error {
|
|
|
1927
1927
|
}
|
|
1928
1928
|
CoreError.ID = 0;
|
|
1929
1929
|
|
|
1930
|
+
const DEFAULT_ERROR = `Please try again later or submit a feedback if problem doesn't go.`;
|
|
1931
|
+
function parseError(data) {
|
|
1932
|
+
if (typeof data === 'string')
|
|
1933
|
+
return ErrorModel(data);
|
|
1934
|
+
if (isErrorObject(data)) {
|
|
1935
|
+
return ErrorModel(data.message);
|
|
1936
|
+
}
|
|
1937
|
+
return ErrorModel(DEFAULT_ERROR);
|
|
1938
|
+
}
|
|
1939
|
+
function isErrorObject(data) {
|
|
1940
|
+
if (typeof data === 'object' && Object.hasOwnProperty.call(data, 'message') && data !== null) {
|
|
1941
|
+
return true;
|
|
1942
|
+
}
|
|
1943
|
+
return false;
|
|
1944
|
+
}
|
|
1945
|
+
function ErrorModel(message, details = []) {
|
|
1946
|
+
return {
|
|
1947
|
+
message,
|
|
1948
|
+
details
|
|
1949
|
+
};
|
|
1950
|
+
}
|
|
1951
|
+
|
|
1930
1952
|
function parseData(res) {
|
|
1931
1953
|
return res.text()
|
|
1932
1954
|
.then(res => {
|
|
@@ -1934,7 +1956,7 @@ function parseData(res) {
|
|
|
1934
1956
|
return JSON.parse(res);
|
|
1935
1957
|
}
|
|
1936
1958
|
catch (e) {
|
|
1937
|
-
return
|
|
1959
|
+
return DEFAULT_ERROR;
|
|
1938
1960
|
}
|
|
1939
1961
|
});
|
|
1940
1962
|
}
|
|
@@ -5137,6 +5159,9 @@ function useFormLabel(form) {
|
|
|
5137
5159
|
return { label, update };
|
|
5138
5160
|
}
|
|
5139
5161
|
|
|
5162
|
+
/**
|
|
5163
|
+
* @deprecated Please, use useFormRequest
|
|
5164
|
+
* */
|
|
5140
5165
|
function useFormRequestData(form, options) {
|
|
5141
5166
|
const route = vueRouter.useRoute();
|
|
5142
5167
|
const id = vue.computed(() => Number(route.params.id));
|
|
@@ -5237,6 +5262,74 @@ function useCustomerState() {
|
|
|
5237
5262
|
};
|
|
5238
5263
|
}
|
|
5239
5264
|
|
|
5265
|
+
/**
|
|
5266
|
+
* @description Если используете shadowFormState - не забудь иницилизировать её при помощи функции initShadow.
|
|
5267
|
+
* */
|
|
5268
|
+
function useFormRequest(form, formParams) {
|
|
5269
|
+
const shadowFormState = vue.reactive({
|
|
5270
|
+
ready: false,
|
|
5271
|
+
show: false
|
|
5272
|
+
});
|
|
5273
|
+
/**
|
|
5274
|
+
* @description Функция используется для инициализациия ShadowFormState
|
|
5275
|
+
* */
|
|
5276
|
+
function initShadow() {
|
|
5277
|
+
shadowFormState.ready = false;
|
|
5278
|
+
shadowFormState.show = false;
|
|
5279
|
+
}
|
|
5280
|
+
form.read = () => {
|
|
5281
|
+
let params = formParams();
|
|
5282
|
+
shadowFormState.ready = false;
|
|
5283
|
+
return Promise.resolve()
|
|
5284
|
+
.then(() => {
|
|
5285
|
+
if (!form.name)
|
|
5286
|
+
throw CoreError.EntityWithoutName('Use Form Request');
|
|
5287
|
+
return dataService.readById(form.name, params.id, {
|
|
5288
|
+
fields: params.fields
|
|
5289
|
+
});
|
|
5290
|
+
})
|
|
5291
|
+
.then(utils$1.valuesToUpperCase)
|
|
5292
|
+
.then(values => {
|
|
5293
|
+
/**
|
|
5294
|
+
* @description Если в ответе присутствует версия объекта - сохраняем её в форму.
|
|
5295
|
+
* */
|
|
5296
|
+
if (values.hasOwnProperty('Version'))
|
|
5297
|
+
form.version = Number(values.Version);
|
|
5298
|
+
form.setValues(values);
|
|
5299
|
+
shadowFormState.show = true;
|
|
5300
|
+
return values;
|
|
5301
|
+
})
|
|
5302
|
+
.catch(err => {
|
|
5303
|
+
const errorObject = parseError(err);
|
|
5304
|
+
NotificationSystem.add('error', errorObject.message);
|
|
5305
|
+
throw errorObject;
|
|
5306
|
+
})
|
|
5307
|
+
.finally(() => {
|
|
5308
|
+
shadowFormState.ready = true;
|
|
5309
|
+
});
|
|
5310
|
+
};
|
|
5311
|
+
form.save = () => {
|
|
5312
|
+
let params = formParams();
|
|
5313
|
+
return Promise.resolve()
|
|
5314
|
+
.then(() => {
|
|
5315
|
+
if (!form.name)
|
|
5316
|
+
throw CoreError.EntityWithoutName('Use Form Request');
|
|
5317
|
+
return dataService.updateById(form.name, params.id, form.changes, { version: form.version });
|
|
5318
|
+
})
|
|
5319
|
+
.then(response => {
|
|
5320
|
+
// @ts-ignore
|
|
5321
|
+
form.version = response.version || response['Version'];
|
|
5322
|
+
})
|
|
5323
|
+
.catch(err => {
|
|
5324
|
+
const errorObject = parseError(err);
|
|
5325
|
+
NotificationSystem.add('error', errorObject.message);
|
|
5326
|
+
throw errorObject;
|
|
5327
|
+
});
|
|
5328
|
+
};
|
|
5329
|
+
form.on(jenesiusVueForm.Form.EVENT_SAVE, form.read.bind(form));
|
|
5330
|
+
return { shadowFormState, initShadow };
|
|
5331
|
+
}
|
|
5332
|
+
|
|
5240
5333
|
const utils = {
|
|
5241
5334
|
clickOutside,
|
|
5242
5335
|
requestHandler,
|
|
@@ -5291,6 +5384,7 @@ exports.invitationService = InvitationService;
|
|
|
5291
5384
|
exports.metadataService = metadataService;
|
|
5292
5385
|
exports.newImport = newImport;
|
|
5293
5386
|
exports.openService = openService;
|
|
5387
|
+
exports.parseError = parseError;
|
|
5294
5388
|
exports.processWizardService = processWizardService;
|
|
5295
5389
|
exports.requestHandler = requestHandler;
|
|
5296
5390
|
exports.ruleValidationService = ruleValidationService;
|
|
@@ -5300,6 +5394,7 @@ exports.useCustomerState = useCustomerState;
|
|
|
5300
5394
|
exports.useFormAction = useFormAction;
|
|
5301
5395
|
exports.useFormLabel = useFormLabel;
|
|
5302
5396
|
exports.useFormMetadata = useFormMetadata;
|
|
5397
|
+
exports.useFormRequest = useFormRequest;
|
|
5303
5398
|
exports.useFormRequestData = useFormRequestData;
|
|
5304
5399
|
exports.useListFilter = useListFilter;
|
|
5305
5400
|
exports.useListOrder = useListOrder;
|