@guebbit/vue-toolkit 1.0.0 → 1.0.3
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/README.md +3 -2
- package/dist/composables/structureDataManagement.js +18 -17
- package/dist/composables/structureDataManagement.js.map +1 -1
- package/dist/composables/structureFormManagement.js +136 -0
- package/dist/composables/structureFormManagement.js.map +1 -0
- package/dist/composables/structureFormValidation.js +135 -2
- package/dist/composables/structureFormValidation.js.map +1 -1
- package/dist/composables/structureRestApi.js +43 -37
- package/dist/composables/structureRestApi.js.map +1 -1
- package/dist/index.js +5 -4
- package/dist/index.js.map +1 -1
- package/dist/stores/core.js +5 -5
- package/dist/stores/core.js.map +1 -1
- package/dist/stores/notifications.js +7 -5
- package/dist/stores/notifications.js.map +1 -1
- package/dist/types/composables/structureDataManagement.d.ts.map +1 -1
- package/dist/types/composables/structureFormManagement.d.ts +23 -0
- package/dist/types/composables/structureFormManagement.d.ts.map +1 -0
- package/dist/types/composables/structureFormValidation.d.ts +22 -0
- package/dist/types/composables/structureFormValidation.d.ts.map +1 -1
- package/dist/types/composables/structureRestApi.d.ts +2 -2
- package/dist/types/composables/structureRestApi.d.ts.map +1 -1
- package/dist/types/index.d.ts +5 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/stores/core.d.ts +6 -6
- package/dist/types/stores/core.d.ts.map +1 -1
- package/dist/types/stores/notifications.d.ts.map +1 -1
- package/package.json +73 -71
package/README.md
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
TODO
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
|
|
3
|
+
- Copypaste the README.md from boilerplate-node-backend-mongodb
|
|
4
|
+
- WARNING: structureRestApi and structureDataManagement don't know what to do if ID is not present
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { computed, ref } from 'vue';
|
|
2
2
|
export const useStructureDataManagement = (
|
|
3
3
|
// The identification parameter of the item (READONLY and not exported)
|
|
4
|
-
identifiers =
|
|
4
|
+
identifiers = 'id',
|
|
5
5
|
// Delimiter for multiple identifiers
|
|
6
|
-
delimiter =
|
|
6
|
+
delimiter = '|') => {
|
|
7
7
|
/**
|
|
8
8
|
*
|
|
9
9
|
* @param itemData
|
|
@@ -33,11 +33,11 @@ delimiter = "|") => {
|
|
|
33
33
|
*
|
|
34
34
|
* @param items
|
|
35
35
|
*/
|
|
36
|
-
const setRecords = (items) => itemDictionary.value = items;
|
|
36
|
+
const setRecords = (items) => (itemDictionary.value = items);
|
|
37
37
|
/**
|
|
38
38
|
* Empty the items dictionary
|
|
39
39
|
*/
|
|
40
|
-
const resetRecords = () => itemDictionary.value = {};
|
|
40
|
+
const resetRecords = () => (itemDictionary.value = {});
|
|
41
41
|
/**
|
|
42
42
|
* Get record from object dictionary using identifier
|
|
43
43
|
*
|
|
@@ -45,7 +45,8 @@ delimiter = "|") => {
|
|
|
45
45
|
*/
|
|
46
46
|
const getRecord = (..._arguments) => {
|
|
47
47
|
const id = _arguments.join(delimiter);
|
|
48
|
-
|
|
48
|
+
// Important to directly access the dictionary to avoid reactivity issues
|
|
49
|
+
return itemDictionary.value[id];
|
|
49
50
|
};
|
|
50
51
|
/**
|
|
51
52
|
* Multiple getRecord
|
|
@@ -53,7 +54,7 @@ delimiter = "|") => {
|
|
|
53
54
|
* @param idsArray
|
|
54
55
|
*/
|
|
55
56
|
const getRecords = (idsArray = []) => idsArray
|
|
56
|
-
.map(id => Array.isArray(id) ? getRecord(...id) : getRecord(id))
|
|
57
|
+
.map((id) => (Array.isArray(id) ? getRecord(...id) : getRecord(id)))
|
|
57
58
|
.filter(Boolean);
|
|
58
59
|
/**
|
|
59
60
|
* Add item to the dictionary.
|
|
@@ -61,7 +62,7 @@ delimiter = "|") => {
|
|
|
61
62
|
*
|
|
62
63
|
* @param itemData
|
|
63
64
|
*/
|
|
64
|
-
const addRecord = (itemData) => itemDictionary.value[createIdentifier(itemData)] = itemData;
|
|
65
|
+
const addRecord = (itemData) => (itemDictionary.value[createIdentifier(itemData)] = itemData);
|
|
65
66
|
/**
|
|
66
67
|
* Add a list of items to the dictionary.
|
|
67
68
|
*
|
|
@@ -90,10 +91,9 @@ delimiter = "|") => {
|
|
|
90
91
|
// if multiple identifiers, then they need to be joined\translated
|
|
91
92
|
const _id = Array.isArray(_inferredId) ? _inferredId.join(delimiter) : _inferredId;
|
|
92
93
|
// if NOT forced to create and NOT found: error
|
|
93
|
-
if (!create &&
|
|
94
|
-
(!id || !Object.prototype.hasOwnProperty.call(itemDictionary.value, _id))) {
|
|
94
|
+
if (!create && (!id || !Object.prototype.hasOwnProperty.call(itemDictionary.value, _id))) {
|
|
95
95
|
// eslint-disable-next-line no-console
|
|
96
|
-
console.error(
|
|
96
|
+
console.error('storeDataStructure - data not found', data);
|
|
97
97
|
return;
|
|
98
98
|
}
|
|
99
99
|
// Replace data if already present
|
|
@@ -130,7 +130,7 @@ delimiter = "|") => {
|
|
|
130
130
|
* - List mode: Show in modal or operations that require the details (example items in a table)
|
|
131
131
|
* - Target mode: a detail page or a form to edit the selected item (example item in a dedicated detail page)
|
|
132
132
|
*/
|
|
133
|
-
const selectedRecord = computed(() => selectedIdentifier.value
|
|
133
|
+
const selectedRecord = computed(() => getRecord(selectedIdentifier.value));
|
|
134
134
|
/**
|
|
135
135
|
* ---------------------------------- OFFLINE PAGINATION ------------------------------------
|
|
136
136
|
*/
|
|
@@ -168,7 +168,8 @@ delimiter = "|") => {
|
|
|
168
168
|
*/
|
|
169
169
|
const addToParent = (parentId, childId) => {
|
|
170
170
|
if (!parentHasMany.value[parentId])
|
|
171
|
-
parentHasMany.value[parentId] =
|
|
171
|
+
parentHasMany.value[parentId] =
|
|
172
|
+
[];
|
|
172
173
|
parentHasMany.value[parentId].push(childId);
|
|
173
174
|
};
|
|
174
175
|
/**
|
|
@@ -176,14 +177,14 @@ delimiter = "|") => {
|
|
|
176
177
|
* @param parentId
|
|
177
178
|
* @param childId
|
|
178
179
|
*/
|
|
179
|
-
const removeFromParent = (parentId, childId) => parentHasMany.value[parentId] =
|
|
180
|
-
parentHasMany.value[parentId]
|
|
181
|
-
.filter((id) => id !== childId);
|
|
180
|
+
const removeFromParent = (parentId, childId) => (parentHasMany.value[parentId] = parentHasMany.value[parentId].filter((id) => id !== childId));
|
|
182
181
|
/**
|
|
183
182
|
*
|
|
184
183
|
* @param parentId
|
|
185
184
|
*/
|
|
186
|
-
const removeDuplicateChildren = (parentId) => parentHasMany.value[parentId] = [
|
|
185
|
+
const removeDuplicateChildren = (parentId) => (parentHasMany.value[parentId] = [
|
|
186
|
+
...new Set(parentHasMany.value[parentId])
|
|
187
|
+
]);
|
|
187
188
|
/**
|
|
188
189
|
* Get all records ID by parent and use them to retrieve the complete dictionary
|
|
189
190
|
* @param parentId
|
|
@@ -232,7 +233,7 @@ delimiter = "|") => {
|
|
|
232
233
|
removeFromParent,
|
|
233
234
|
removeDuplicateChildren,
|
|
234
235
|
getRecordsByParent,
|
|
235
|
-
getListByParent
|
|
236
|
+
getListByParent
|
|
236
237
|
};
|
|
237
238
|
};
|
|
238
239
|
//# sourceMappingURL=structureDataManagement.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structureDataManagement.js","sourceRoot":"","sources":["../../src/composables/structureDataManagement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"structureDataManagement.js","sourceRoot":"","sources":["../../src/composables/structureDataManagement.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { computed, ref } from 'vue';
|
|
2
|
+
/**
|
|
3
|
+
* Form management composable.
|
|
4
|
+
* Handles reactive form state, optional Zod schema validation and submission flow.
|
|
5
|
+
*
|
|
6
|
+
* @param initialData - Initial values for the form fields
|
|
7
|
+
* @param schema - Optional Zod schema used for validation
|
|
8
|
+
*/
|
|
9
|
+
export const useStructureFormValidation = (initialData = {}, schema) => {
|
|
10
|
+
/**
|
|
11
|
+
* Reactive form data
|
|
12
|
+
*/
|
|
13
|
+
const form = ref({ ...initialData });
|
|
14
|
+
/**
|
|
15
|
+
* Per-field validation errors.
|
|
16
|
+
* Each key maps to a list of error messages for that field.
|
|
17
|
+
*/
|
|
18
|
+
const formErrors = ref({});
|
|
19
|
+
/**
|
|
20
|
+
* Whether a submission is currently in progress
|
|
21
|
+
*/
|
|
22
|
+
const isSubmitting = ref(false);
|
|
23
|
+
/**
|
|
24
|
+
* True when there are no validation errors
|
|
25
|
+
*/
|
|
26
|
+
const isValid = computed(() => Object.keys(formErrors.value).length === 0);
|
|
27
|
+
/**
|
|
28
|
+
* True when the form data differs from the initial values
|
|
29
|
+
*/
|
|
30
|
+
const isDirty = computed(() => JSON.stringify(form.value) !== JSON.stringify(initialData));
|
|
31
|
+
/**
|
|
32
|
+
* Merge partial data into the form
|
|
33
|
+
*
|
|
34
|
+
* @param data
|
|
35
|
+
*/
|
|
36
|
+
const setForm = (data) => {
|
|
37
|
+
form.value = { ...form.value, ...data };
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Reset form to initial values and clear all errors
|
|
41
|
+
*/
|
|
42
|
+
const resetForm = () => {
|
|
43
|
+
form.value = { ...initialData };
|
|
44
|
+
formErrors.value = {};
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Clear all validation errors
|
|
48
|
+
*/
|
|
49
|
+
const clearErrors = () => {
|
|
50
|
+
formErrors.value = {};
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Set validation error(s) for a specific field
|
|
54
|
+
*
|
|
55
|
+
* @param field
|
|
56
|
+
* @param errors - a single message or an array of messages
|
|
57
|
+
*/
|
|
58
|
+
const setFieldError = (field, errors) => {
|
|
59
|
+
formErrors.value = {
|
|
60
|
+
...formErrors.value,
|
|
61
|
+
[field]: Array.isArray(errors) ? errors : [errors]
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* Remove validation errors for a specific field
|
|
66
|
+
*
|
|
67
|
+
* @param field
|
|
68
|
+
*/
|
|
69
|
+
const clearFieldError = (field) => {
|
|
70
|
+
const { [field]: _removed, ...rest } = formErrors.value;
|
|
71
|
+
formErrors.value = rest;
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* Validate the current form value against the schema (if provided).
|
|
75
|
+
* Updates {@link formErrors} reactively.
|
|
76
|
+
*
|
|
77
|
+
* @returns true when validation passes (or no schema is set), false otherwise
|
|
78
|
+
*/
|
|
79
|
+
const validate = () => {
|
|
80
|
+
if (!schema) {
|
|
81
|
+
formErrors.value = {};
|
|
82
|
+
return true;
|
|
83
|
+
}
|
|
84
|
+
const result = schema.safeParse(form.value);
|
|
85
|
+
if (result.success) {
|
|
86
|
+
formErrors.value = {};
|
|
87
|
+
return true;
|
|
88
|
+
}
|
|
89
|
+
const errors = {};
|
|
90
|
+
for (const issue of result.error.issues) {
|
|
91
|
+
const field = issue.path[0];
|
|
92
|
+
if (field === undefined)
|
|
93
|
+
continue;
|
|
94
|
+
if (!errors[field])
|
|
95
|
+
errors[field] = [];
|
|
96
|
+
errors[field].push(issue.message);
|
|
97
|
+
}
|
|
98
|
+
formErrors.value = errors;
|
|
99
|
+
return false;
|
|
100
|
+
};
|
|
101
|
+
/**
|
|
102
|
+
* Validate (optionally) and then call the provided submit handler.
|
|
103
|
+
* Sets {@link isSubmitting} for the duration of the async operation.
|
|
104
|
+
*
|
|
105
|
+
* @param onSubmit - handler called with the current form value
|
|
106
|
+
* @param withValidation - when true (default) the form is validated first
|
|
107
|
+
* @returns true on success, false when validation failed or an error was thrown
|
|
108
|
+
*/
|
|
109
|
+
const handleSubmit = async (onSubmit, withValidation = true) => {
|
|
110
|
+
if (withValidation && !validate())
|
|
111
|
+
return false;
|
|
112
|
+
isSubmitting.value = true;
|
|
113
|
+
try {
|
|
114
|
+
await onSubmit(form.value);
|
|
115
|
+
return true;
|
|
116
|
+
}
|
|
117
|
+
finally {
|
|
118
|
+
isSubmitting.value = false;
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
return {
|
|
122
|
+
form,
|
|
123
|
+
formErrors,
|
|
124
|
+
isSubmitting,
|
|
125
|
+
isValid,
|
|
126
|
+
isDirty,
|
|
127
|
+
setForm,
|
|
128
|
+
resetForm,
|
|
129
|
+
clearErrors,
|
|
130
|
+
setFieldError,
|
|
131
|
+
clearFieldError,
|
|
132
|
+
validate,
|
|
133
|
+
handleSubmit
|
|
134
|
+
};
|
|
135
|
+
};
|
|
136
|
+
//# sourceMappingURL=structureFormManagement.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"structureFormManagement.js","sourceRoot":"","sources":["../../src/composables/structureFormManagement.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,136 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { computed, ref } from 'vue';
|
|
2
|
+
/**
|
|
3
|
+
* Form management composable.
|
|
4
|
+
* Handles reactive form state, optional Zod schema validation and submission flow.
|
|
5
|
+
*
|
|
6
|
+
* @param initialData - Initial values for the form fields
|
|
7
|
+
* @param schema - Optional Zod schema used for validation
|
|
8
|
+
*/
|
|
9
|
+
export const useStructureFormValidation = (initialData = {}, schema) => {
|
|
10
|
+
/**
|
|
11
|
+
* Reactive form data
|
|
12
|
+
*/
|
|
13
|
+
const form = ref({ ...initialData });
|
|
14
|
+
/**
|
|
15
|
+
* Per-field validation errors.
|
|
16
|
+
* Each key maps to a list of error messages for that field.
|
|
17
|
+
*/
|
|
18
|
+
const formErrors = ref({});
|
|
19
|
+
/**
|
|
20
|
+
* Whether a submission is currently in progress
|
|
21
|
+
*/
|
|
22
|
+
const isSubmitting = ref(false);
|
|
23
|
+
/**
|
|
24
|
+
* True when there are no validation errors
|
|
25
|
+
*/
|
|
26
|
+
const isValid = computed(() => Object.keys(formErrors.value).length === 0);
|
|
27
|
+
/**
|
|
28
|
+
* True when the form data differs from the initial values
|
|
29
|
+
*/
|
|
30
|
+
const isDirty = computed(() => JSON.stringify(form.value) !== JSON.stringify(initialData));
|
|
31
|
+
/**
|
|
32
|
+
* Merge partial data into the form
|
|
33
|
+
*
|
|
34
|
+
* @param data
|
|
35
|
+
*/
|
|
36
|
+
const setForm = (data) => {
|
|
37
|
+
form.value = { ...form.value, ...data };
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Reset form to initial values and clear all errors
|
|
41
|
+
*/
|
|
42
|
+
const resetForm = () => {
|
|
43
|
+
form.value = { ...initialData };
|
|
44
|
+
formErrors.value = {};
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Clear all validation errors
|
|
48
|
+
*/
|
|
49
|
+
const clearErrors = () => {
|
|
50
|
+
formErrors.value = {};
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Set validation error(s) for a specific field
|
|
54
|
+
*
|
|
55
|
+
* @param field
|
|
56
|
+
* @param errors - a single message or an array of messages
|
|
57
|
+
*/
|
|
58
|
+
const setFieldError = (field, errors) => {
|
|
59
|
+
formErrors.value = {
|
|
60
|
+
...formErrors.value,
|
|
61
|
+
[field]: Array.isArray(errors) ? errors : [errors]
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* Remove validation errors for a specific field
|
|
66
|
+
*
|
|
67
|
+
* @param field
|
|
68
|
+
*/
|
|
69
|
+
const clearFieldError = (field) => {
|
|
70
|
+
const { [field]: _removed, ...rest } = formErrors.value;
|
|
71
|
+
formErrors.value = rest;
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* Validate the current form value against the schema (if provided).
|
|
75
|
+
* Updates {@link formErrors} reactively.
|
|
76
|
+
*
|
|
77
|
+
* @returns true when validation passes (or no schema is set), false otherwise
|
|
78
|
+
*/
|
|
79
|
+
const validate = () => {
|
|
80
|
+
if (!schema) {
|
|
81
|
+
formErrors.value = {};
|
|
82
|
+
return true;
|
|
83
|
+
}
|
|
84
|
+
const result = schema.safeParse(form.value);
|
|
85
|
+
if (result.success) {
|
|
86
|
+
formErrors.value = {};
|
|
87
|
+
return true;
|
|
88
|
+
}
|
|
89
|
+
const errors = {};
|
|
90
|
+
for (const issue of result.error.issues) {
|
|
91
|
+
const field = issue.path[0];
|
|
92
|
+
if (field === undefined)
|
|
93
|
+
continue;
|
|
94
|
+
if (!errors[field])
|
|
95
|
+
errors[field] = [];
|
|
96
|
+
errors[field].push(issue.message);
|
|
97
|
+
}
|
|
98
|
+
formErrors.value = errors;
|
|
99
|
+
return false;
|
|
100
|
+
};
|
|
101
|
+
/**
|
|
102
|
+
* Validate (optionally) and then call the provided submit handler.
|
|
103
|
+
* Sets {@link isSubmitting} for the duration of the async operation.
|
|
104
|
+
*
|
|
105
|
+
* @param onSubmit - handler called with the current form value
|
|
106
|
+
* @param withValidation - when true (default) the form is validated first
|
|
107
|
+
* @returns true on success, false when validation failed or an error was thrown
|
|
108
|
+
*/
|
|
109
|
+
const handleSubmit = async (onSubmit, withValidation = true) => {
|
|
110
|
+
if (withValidation && !validate())
|
|
111
|
+
return false;
|
|
112
|
+
isSubmitting.value = true;
|
|
113
|
+
try {
|
|
114
|
+
await onSubmit(form.value);
|
|
115
|
+
return true;
|
|
116
|
+
}
|
|
117
|
+
finally {
|
|
118
|
+
isSubmitting.value = false;
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
return {
|
|
122
|
+
form,
|
|
123
|
+
formErrors,
|
|
124
|
+
isSubmitting,
|
|
125
|
+
isValid,
|
|
126
|
+
isDirty,
|
|
127
|
+
setForm,
|
|
128
|
+
resetForm,
|
|
129
|
+
clearErrors,
|
|
130
|
+
setFieldError,
|
|
131
|
+
clearFieldError,
|
|
132
|
+
validate,
|
|
133
|
+
handleSubmit
|
|
134
|
+
};
|
|
135
|
+
};
|
|
3
136
|
//# sourceMappingURL=structureFormValidation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structureFormValidation.js","sourceRoot":"","sources":["../../src/composables/structureFormValidation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"structureFormValidation.js","sourceRoot":"","sources":["../../src/composables/structureFormValidation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { computed, ref } from
|
|
2
|
-
import { useStructureDataManagement } from
|
|
1
|
+
import { computed, ref } from 'vue';
|
|
2
|
+
import { useStructureDataManagement } from '../index';
|
|
3
3
|
/**
|
|
4
4
|
* Time To Live and Last Update
|
|
5
5
|
* Optimize fetch requests by caching data and preventing unnecessary requests
|
|
@@ -12,8 +12,8 @@ export var ELastUpdateKeywords;
|
|
|
12
12
|
ELastUpdateKeywords["ONLINE"] = "_online";
|
|
13
13
|
ELastUpdateKeywords["GENERIC"] = "_generic";
|
|
14
14
|
})(ELastUpdateKeywords || (ELastUpdateKeywords = {}));
|
|
15
|
-
export const useStructureRestApi = ({ identifiers =
|
|
16
|
-
delimiter =
|
|
15
|
+
export const useStructureRestApi = ({ identifiers = 'id', loadingKey = crypto.randomUUID(), TTL = 3_600_000, // 1 hour
|
|
16
|
+
delimiter = '|', getLoading, setLoading } = {}) => {
|
|
17
17
|
/**
|
|
18
18
|
* Inherited
|
|
19
19
|
*/
|
|
@@ -21,16 +21,18 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
21
21
|
// Pagination
|
|
22
22
|
pageCurrent, pageSize, pageTotal, pageOffset, pageItemList,
|
|
23
23
|
// belongsTo relationship
|
|
24
|
-
parentHasMany, addToParent, removeFromParent, removeDuplicateChildren, getRecordsByParent, getListByParent
|
|
24
|
+
parentHasMany, addToParent, removeFromParent, removeDuplicateChildren, getRecordsByParent, getListByParent } = useStructureDataManagement(identifiers, delimiter);
|
|
25
25
|
/**
|
|
26
26
|
* loadings
|
|
27
27
|
*/
|
|
28
28
|
// loading mutators
|
|
29
|
-
const startLoading = (postfix =
|
|
30
|
-
const stopLoading = (postfix =
|
|
29
|
+
const startLoading = (postfix = '') => loadingKey && setLoading ? setLoading(loadingKey + postfix, true) : (_loading.value = true);
|
|
30
|
+
const stopLoading = (postfix = '') => loadingKey && setLoading
|
|
31
|
+
? setLoading(loadingKey + postfix, false)
|
|
32
|
+
: (_loading.value = false);
|
|
31
33
|
// Check if it's loading
|
|
32
34
|
const _loading = ref(false);
|
|
33
|
-
const loading = computed(() => getLoading ? getLoading(loadingKey) : _loading.value);
|
|
35
|
+
const loading = computed(() => (getLoading ? getLoading(loadingKey) : _loading.value));
|
|
34
36
|
/**
|
|
35
37
|
*
|
|
36
38
|
*/
|
|
@@ -68,11 +70,13 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
68
70
|
* @param key
|
|
69
71
|
* @param branch
|
|
70
72
|
*/
|
|
71
|
-
const getLastUpdate = (key =
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
73
|
+
const getLastUpdate = (key = '', branch = ELastUpdateKeywords.GENERIC) => Date.now() -
|
|
74
|
+
// if ELastUpdateKeywords.ALL I ignore the key
|
|
75
|
+
(branch === ELastUpdateKeywords.ALL
|
|
76
|
+
? lastUpdate[ELastUpdateKeywords.ALL]
|
|
77
|
+
: // @ts-expect-error too intricate to typesafe. It is safe.
|
|
78
|
+
lastUpdate[branch][key]) <
|
|
79
|
+
TTL;
|
|
76
80
|
/**
|
|
77
81
|
* Check if the last update was within the TTL
|
|
78
82
|
* True = still valid
|
|
@@ -81,7 +85,7 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
81
85
|
* @param key
|
|
82
86
|
* @param branch
|
|
83
87
|
*/
|
|
84
|
-
const editLastUpdate = (value = 0, key =
|
|
88
|
+
const editLastUpdate = (value = 0, key = '', branch = ELastUpdateKeywords.GENERIC) => {
|
|
85
89
|
// if ELastUpdateKeywords.ALL I ignore the key
|
|
86
90
|
if (branch === ELastUpdateKeywords.ALL) {
|
|
87
91
|
lastUpdate[ELastUpdateKeywords.ALL] = value;
|
|
@@ -98,11 +102,11 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
98
102
|
* @param key
|
|
99
103
|
* @param branch
|
|
100
104
|
*/
|
|
101
|
-
const checkAndEditLastUpdate = (key =
|
|
105
|
+
const checkAndEditLastUpdate = (key = '', branch = ELastUpdateKeywords.GENERIC) => {
|
|
102
106
|
if (getLastUpdate(key, branch)) {
|
|
103
107
|
return true;
|
|
104
108
|
}
|
|
105
|
-
editLastUpdate(Date.now());
|
|
109
|
+
editLastUpdate(Date.now(), key, branch);
|
|
106
110
|
return false;
|
|
107
111
|
};
|
|
108
112
|
/**
|
|
@@ -140,10 +144,10 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
140
144
|
* @param loadingKey
|
|
141
145
|
*/
|
|
142
146
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
143
|
-
const fetchAny = (asyncCall, { forced, loading = true, lastUpdateKey =
|
|
147
|
+
const fetchAny = (asyncCall, { forced, loading = true, lastUpdateKey = '', loadingKey } = {}) => {
|
|
144
148
|
// If TTL is not expired, the current stored data is still valid
|
|
145
149
|
// If no TTL name is provided, we ignore the TTL altogether
|
|
146
|
-
if (!forced &&
|
|
150
|
+
if (!forced && lastUpdateKey && checkAndEditLastUpdate(lastUpdateKey))
|
|
147
151
|
// WARNING: We don't know what kind of data was about to be fetched, so it will be empty
|
|
148
152
|
// eslint-disable-next-line unicorn/no-useless-undefined
|
|
149
153
|
return Promise.resolve(undefined);
|
|
@@ -173,7 +177,7 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
173
177
|
* @param loadingKey
|
|
174
178
|
* @param mismatch
|
|
175
179
|
*/
|
|
176
|
-
const fetchAll = (apiCall, { forced, loading = true, merge, lastUpdateKey =
|
|
180
|
+
const fetchAll = (apiCall, { forced, loading = true, merge, lastUpdateKey = '', loadingKey } = {},
|
|
177
181
|
/**
|
|
178
182
|
* When the fetchAll and fetchTarget api calls single items are different:
|
|
179
183
|
* they don't have to be in sync nor the fetchAll must overwrite the fetchTarget item.
|
|
@@ -182,7 +186,10 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
182
186
|
mismatch = false) => {
|
|
183
187
|
// If TTL is not expired, the current stored data is still valid
|
|
184
188
|
// If the TTL name is provided: it becomes a GENERIC TTL check
|
|
185
|
-
if (!forced &&
|
|
189
|
+
if (!forced &&
|
|
190
|
+
(lastUpdateKey
|
|
191
|
+
? checkAndEditLastUpdate(lastUpdateKey)
|
|
192
|
+
: checkAndEditLastUpdate('', ELastUpdateKeywords.ALL)))
|
|
186
193
|
return Promise.resolve(itemDictionary.value);
|
|
187
194
|
if (loading)
|
|
188
195
|
startLoading(loadingKey);
|
|
@@ -216,7 +223,7 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
216
223
|
* @param loadingKey
|
|
217
224
|
* @param mismatch
|
|
218
225
|
*/
|
|
219
|
-
const fetchByParent = (apiCall, parentId, { forced, loading = true, merge, lastUpdateKey =
|
|
226
|
+
const fetchByParent = (apiCall, parentId, { forced, loading = true, merge, lastUpdateKey = '', loadingKey } = {},
|
|
220
227
|
/**
|
|
221
228
|
* Similar reasoning as fetchAll mismatch
|
|
222
229
|
*/
|
|
@@ -266,7 +273,7 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
266
273
|
* @param lastUpdateKey
|
|
267
274
|
* @param loadingKey
|
|
268
275
|
*/
|
|
269
|
-
const fetchTarget = (apiCall, id, { forced, loading = true, merge, lastUpdateKey =
|
|
276
|
+
const fetchTarget = (apiCall, id, { forced, loading = true, merge, lastUpdateKey = '', loadingKey } = {}) => {
|
|
270
277
|
// If TTL is not expired, the current stored data is still valid
|
|
271
278
|
// (if id is not provided, we must force through the request)
|
|
272
279
|
if (id && !forced && checkAndEditLastUpdate(lastUpdateKey + id, ELastUpdateKeywords.TARGET))
|
|
@@ -299,7 +306,7 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
299
306
|
* @param loadingKey
|
|
300
307
|
* @param lastUpdateKey
|
|
301
308
|
*/
|
|
302
|
-
const fetchMultiple = (apiCall, ids, { forced, loading = true, merge, loadingKey, lastUpdateKey =
|
|
309
|
+
const fetchMultiple = (apiCall, ids, { forced, loading = true, merge, loadingKey, lastUpdateKey = '' } = {}) => {
|
|
303
310
|
// nothing to search
|
|
304
311
|
if (!ids || ids.length === 0)
|
|
305
312
|
return Promise.resolve([]);
|
|
@@ -320,7 +327,7 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
320
327
|
cachedIds.push(id);
|
|
321
328
|
}
|
|
322
329
|
// items that I already have
|
|
323
|
-
const cachedItems = cachedIds.map(id => getRecord(id));
|
|
330
|
+
const cachedItems = cachedIds.map((id) => getRecord(id));
|
|
324
331
|
// If no ids are expired, no need to make a fetch
|
|
325
332
|
if (expiredIds.length === 0)
|
|
326
333
|
return Promise.resolve(cachedItems);
|
|
@@ -363,20 +370,19 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
363
370
|
* @param key - stringified search parameters
|
|
364
371
|
* @param page - page
|
|
365
372
|
*/
|
|
366
|
-
const searchGet = (key, page = 1) => getRecords(searchCached.value[typeof key ===
|
|
373
|
+
const searchGet = (key, page = 1) => getRecords(searchCached.value[typeof key === 'string' ? key : searchKeyGen(key)]?.[page]);
|
|
367
374
|
/**
|
|
368
|
-
* I clean up all expired searches OR, if they are
|
|
375
|
+
* I clean up all expired searches OR, if they are {MAX_SEARCHES}+, the old ones (too many resources on a minor feature)
|
|
369
376
|
*/
|
|
370
377
|
const searchCleanup = () => {
|
|
371
378
|
const MAX_SEARCHES = 50;
|
|
372
|
-
// Remove expired entries
|
|
373
|
-
const validEntries = Object.entries(lastUpdate[ELastUpdateKeywords.ONLINE])
|
|
374
|
-
.filter(([_, ttl]) => ttl < Date.now());
|
|
379
|
+
// Remove expired data entries
|
|
380
|
+
const validEntries = Object.entries(lastUpdate[ELastUpdateKeywords.ONLINE]).filter(([_, ttl]) => ttl + TTL > Date.now());
|
|
375
381
|
// If there are too many valid entries, sort descending (newest first) so later the oldest will be trimmed
|
|
376
382
|
if (validEntries.length > MAX_SEARCHES)
|
|
377
383
|
validEntries.sort((a, b) => b[1] - a[1]);
|
|
378
|
-
// rebuild lastUpdate
|
|
379
|
-
lastUpdate[ELastUpdateKeywords.ONLINE] = Object.fromEntries(validEntries.slice(0,
|
|
384
|
+
// rebuild lastUpdate. Remove the oldest entries if there are too many for resources reason
|
|
385
|
+
lastUpdate[ELastUpdateKeywords.ONLINE] = Object.fromEntries(validEntries.slice(0, MAX_SEARCHES));
|
|
380
386
|
};
|
|
381
387
|
/**
|
|
382
388
|
* Fetch items as a search.
|
|
@@ -401,7 +407,7 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
401
407
|
* @param loadingKey
|
|
402
408
|
* @param mismatch
|
|
403
409
|
*/
|
|
404
|
-
const fetchSearch = (apiCall, filters = {}, page = 1, { forced, loading = true, merge, lastUpdateKey =
|
|
410
|
+
const fetchSearch = (apiCall, filters = {}, page = 1, { forced, loading = true, merge, lastUpdateKey = '', loadingKey } = {},
|
|
405
411
|
/**
|
|
406
412
|
* Similar reasoning as fetchAll mismatch
|
|
407
413
|
*/
|
|
@@ -412,7 +418,7 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
412
418
|
// Instead of regular checkAndEditLastUpdate, I clean up all expired searches and check if the ID is still present
|
|
413
419
|
searchCleanup();
|
|
414
420
|
// TTL is monodimensional so the page will be added to the key (TTL ONLY)
|
|
415
|
-
if (!forced &&
|
|
421
|
+
if (!forced && searchTTLkey in lastUpdate[ELastUpdateKeywords.ONLINE])
|
|
416
422
|
return Promise.resolve(getRecords(searchCached.value[searchKey]?.[page]));
|
|
417
423
|
// Then I manually save the TTL (since I'm not using checkAndEditLastUpdate shortcut)
|
|
418
424
|
lastUpdate[ELastUpdateKeywords.ONLINE][searchTTLkey] = Date.now();
|
|
@@ -451,7 +457,7 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
451
457
|
* @param loadingKey
|
|
452
458
|
* @param fetchLike - data of the created item will be considered fetched like in fetchTarget
|
|
453
459
|
*/
|
|
454
|
-
const createTarget = (apiCall, dummyData, { loading = true, lastUpdateKey =
|
|
460
|
+
const createTarget = (apiCall, dummyData, { loading = true, lastUpdateKey = '', loadingKey } = {}, fetchLike = true) => {
|
|
455
461
|
const temporaryId = crypto.randomUUID();
|
|
456
462
|
// Create temporary item with temporary id for instantaneity
|
|
457
463
|
if (dummyData)
|
|
@@ -495,14 +501,14 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
495
501
|
* @param fetchLike - data will be considered fetched like in fetchTarget
|
|
496
502
|
* @param fetchAgain - after the update, the call can return the updated item, update in this case (for consistency)
|
|
497
503
|
*/
|
|
498
|
-
const updateTarget = (apiCall, itemData, id, { loading = true, merge, lastUpdateKey =
|
|
504
|
+
const updateTarget = (apiCall, itemData, id, { loading = true, merge, lastUpdateKey = '', loadingKey } = {}, fetchLike = true, fetchAgain = true) => {
|
|
499
505
|
// to be used in case of error and revert is needed
|
|
500
506
|
const oldItemData = getRecord(id);
|
|
501
507
|
// for instantaneity, but can be inconsistent
|
|
502
508
|
editRecord(itemData, id, true);
|
|
503
509
|
if (loading)
|
|
504
510
|
startLoading(loadingKey);
|
|
505
|
-
return apiCall()
|
|
511
|
+
return (apiCall()
|
|
506
512
|
// If the apiCall returns the updated item, editRecord will be called again to ensure data consistency
|
|
507
513
|
.then((data) => {
|
|
508
514
|
if (fetchAgain) {
|
|
@@ -522,7 +528,7 @@ delimiter = "|", getLoading, setLoading } = {}) => {
|
|
|
522
528
|
editRecord(oldItemData, id);
|
|
523
529
|
throw error;
|
|
524
530
|
})
|
|
525
|
-
.finally(() => loading && stopLoading(loadingKey));
|
|
531
|
+
.finally(() => loading && stopLoading(loadingKey)));
|
|
526
532
|
};
|
|
527
533
|
/**
|
|
528
534
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structureRestApi.js","sourceRoot":"","sources":["../../src/composables/structureRestApi.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"structureRestApi.js","sourceRoot":"","sources":["../../src/composables/structureRestApi.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export { useCoreStore } from
|
|
2
|
-
export { useNotificationsStore } from
|
|
3
|
-
export { useStructureDataManagement } from
|
|
4
|
-
export { useStructureRestApi } from
|
|
1
|
+
export { useCoreStore } from './stores/core';
|
|
2
|
+
export { useNotificationsStore } from './stores/notifications';
|
|
3
|
+
export { useStructureDataManagement } from './composables/structureDataManagement';
|
|
4
|
+
export { useStructureRestApi } from './composables/structureRestApi';
|
|
5
|
+
export { useStructureFormValidation } from './composables/structureFormValidation';
|
|
5
6
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC"}
|
package/dist/stores/core.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, computed } from 'vue';
|
|
2
|
-
import { defineStore } from
|
|
2
|
+
import { defineStore } from 'pinia';
|
|
3
3
|
export const useCoreStore = defineStore('core', () => {
|
|
4
4
|
/**
|
|
5
5
|
* This loading must be accessed from anywhere.
|
|
@@ -12,15 +12,15 @@ export const useCoreStore = defineStore('core', () => {
|
|
|
12
12
|
* @param key
|
|
13
13
|
* @param value
|
|
14
14
|
*/
|
|
15
|
-
const setLoading = (key, value) => loadings.value[key] = value;
|
|
15
|
+
const setLoading = (key = '', value = false) => (loadings.value[key] = value);
|
|
16
16
|
/**
|
|
17
17
|
* Reset all loadings
|
|
18
18
|
*/
|
|
19
|
-
const resetLoadings = () => loadings.value = {};
|
|
19
|
+
const resetLoadings = () => (loadings.value = {});
|
|
20
20
|
/**
|
|
21
21
|
* Check if there is a specific loading
|
|
22
22
|
*/
|
|
23
|
-
const getLoading = (key) => loadings.value[key];
|
|
23
|
+
const getLoading = (key = '') => !!loadings.value[key];
|
|
24
24
|
/**
|
|
25
25
|
* Check if there are any loadings
|
|
26
26
|
*/
|
|
@@ -30,7 +30,7 @@ export const useCoreStore = defineStore('core', () => {
|
|
|
30
30
|
isLoading,
|
|
31
31
|
resetLoadings,
|
|
32
32
|
setLoading,
|
|
33
|
-
getLoading
|
|
33
|
+
getLoading
|
|
34
34
|
};
|
|
35
35
|
});
|
|
36
36
|
//# sourceMappingURL=core.js.map
|
package/dist/stores/core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/stores/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/stores/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,MAAM,CAAC,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE;IACjD;;;OAGG;IACH,MAAM,QAAQ,GAAG,GAAG,CAAmC,EAAE,CAAC,CAAC;IAE3D;;;;;OAKG;IACH,MAAM,UAAU,GAAG,CAAC,GAAG,GAAG,EAAE,EAAE,KAAK,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IAE9E;;OAEG;IACH,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;IAElD;;OAEG;IACH,MAAM,UAAU,GAAG,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEvD;;OAEG;IACH,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAE9E,OAAO;QACH,QAAQ;QACR,SAAS;QACT,aAAa;QACb,UAAU;QACV,UAAU;KACb,CAAC;AACN,CAAC,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineStore } from
|
|
1
|
+
import { defineStore } from 'pinia';
|
|
2
2
|
import { ref, computed } from 'vue';
|
|
3
3
|
export var IToastType;
|
|
4
4
|
(function (IToastType) {
|
|
@@ -35,11 +35,13 @@ export const useNotificationsStore = defineStore('notifications', () => {
|
|
|
35
35
|
id,
|
|
36
36
|
message,
|
|
37
37
|
type,
|
|
38
|
-
visible: true
|
|
38
|
+
visible: true
|
|
39
39
|
});
|
|
40
40
|
// Remove after timeout (if any)
|
|
41
41
|
if (timeout > 0)
|
|
42
|
-
setTimeout(() => {
|
|
42
|
+
setTimeout(() => {
|
|
43
|
+
hideMessage(id);
|
|
44
|
+
}, timeout);
|
|
43
45
|
};
|
|
44
46
|
/**
|
|
45
47
|
* Find a message by id
|
|
@@ -72,7 +74,7 @@ export const useNotificationsStore = defineStore('notifications', () => {
|
|
|
72
74
|
*
|
|
73
75
|
* @param _id
|
|
74
76
|
*/
|
|
75
|
-
const removeMessage = (_id) => history.value = history.value.filter(({ id }) => id !== _id);
|
|
77
|
+
const removeMessage = (_id) => (history.value = history.value.filter(({ id }) => id !== _id));
|
|
76
78
|
// ________________ DIALOGS ________________
|
|
77
79
|
/**
|
|
78
80
|
* Manage all dialogs
|
|
@@ -87,7 +89,7 @@ export const useNotificationsStore = defineStore('notifications', () => {
|
|
|
87
89
|
hideMessage,
|
|
88
90
|
showMessage,
|
|
89
91
|
removeMessage,
|
|
90
|
-
dialogs
|
|
92
|
+
dialogs
|
|
91
93
|
};
|
|
92
94
|
});
|
|
93
95
|
//# sourceMappingURL=notifications.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notifications.js","sourceRoot":"","sources":["../../src/stores/notifications.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,CAAN,IAAY,UAMX;AAND,WAAY,UAAU;
|
|
1
|
+
{"version":3,"file":"notifications.js","sourceRoot":"","sources":["../../src/stores/notifications.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,CAAN,IAAY,UAMX;AAND,WAAY,UAAU;IAClB,iCAAmB,CAAA;IACnB,qCAAuB,CAAA;IACvB,8BAAgB,CAAA;IAChB,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;AACvB,CAAC,EANW,UAAU,KAAV,UAAU,QAMrB;AAQD;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,WAAW,CAAC,eAAe,EAAE,GAAG,EAAE;IACnE,oEAAoE;IAEpE;;OAEG;IACH,MAAM,OAAO,GAAG,GAAG,CAAC,EAAqB,CAAC,CAAC;IAE3C;;OAEG;IACH,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEhF;;;;;;OAMG;IACH,MAAM,UAAU,GAAG,CAAC,OAAe,EAAE,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE;QAC5E,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAC/B,iBAAiB;QACjB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;YACf,EAAE;YACF,OAAO;YACP,IAAI;YACJ,OAAO,EAAE,IAAI;SAChB,CAAC,CAAC;QACH,gCAAgC;QAChC,IAAI,OAAO,GAAG,CAAC;YACX,UAAU,CAAC,GAAG,EAAE;gBACZ,WAAW,CAAC,EAAE,CAAC,CAAC;YACpB,CAAC,EAAE,OAAO,CAAC,CAAC;IACpB,CAAC,CAAC;IAEF;;;;OAIG;IACH,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;IAEhF;;;;OAIG;IACH,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE;QAChC,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,OAAO;YAAE,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;IACzC,CAAC,CAAC;IAEF;;;;OAIG;IACH,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE;QAChC,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,OAAO;YAAE,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IACxC,CAAC,CAAC;IAEF;;;;OAIG;IACH,MAAM,aAAa,GAAG,CAAC,GAAW,EAAE,EAAE,CAClC,CAAC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAEnE,4CAA4C;IAE5C;;;OAGG;IACH,MAAM,OAAO,GAAG,GAAG,CAAC,EAA6B,CAAC,CAAC;IAEnD,OAAO;QACH,OAAO;QACP,QAAQ;QACR,UAAU;QACV,WAAW;QACX,WAAW;QACX,WAAW;QACX,aAAa;QACb,OAAO;KACV,CAAC;AACN,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structureDataManagement.d.ts","sourceRoot":"","sources":["../../../src/composables/structureDataManagement.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"structureDataManagement.d.ts","sourceRoot":"","sources":["../../../src/composables/structureDataManagement.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,0BAA0B,GAGnC,CAAC,SAAS,MAAM,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAErE,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,EAG5C,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,EAG7D,cAAa,MAAM,GAAG,MAAM,EAAS,EAErC,kBAAe;uBAQW,CAAC,gBAAgB,CAAC,sBAAsB,MAAM,GAAG,MAAM,EAAE,KAAG,CAAC;;;;wBA4B5D,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;;+BAYpB,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE,KAAG,CAAC,GAAG,SAAS;4BAWrC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC,EAAE,KAG3B,CAAC,EAAE;0BAQF,CAAC;6BAQE,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE;wBAiBvB,OAAO,CAAC,CAAC,CAAC,OAAY,CAAC,GAAG,CAAC,EAAE;8BAyBtB,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE;uBAYxB,CAAC;;;;;;;;;4BA6DI,CAAC;iCAYI,CAAC;wCASM,CAAC;oCASL,CAAC,KAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;iCAcnB,CAAC,KAAG,CAAC,EAAE;CAkC9C,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type ZodType } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* Form management composable.
|
|
4
|
+
* Handles reactive form state, optional Zod schema validation and submission flow.
|
|
5
|
+
*
|
|
6
|
+
* @param initialData - Initial values for the form fields
|
|
7
|
+
* @param schema - Optional Zod schema used for validation
|
|
8
|
+
*/
|
|
9
|
+
export declare const useStructureFormValidation: <T extends Record<string, any> = Record<string, any>>(initialData?: T, schema?: ZodType<T>) => {
|
|
10
|
+
form: [T] extends [import("vue").Ref<any, any>] ? import("@vue/shared").IfAny<T, import("vue").Ref<T, T>, T> : import("vue").Ref<import("vue").UnwrapRef<T>, T | import("vue").UnwrapRef<T>>;
|
|
11
|
+
formErrors: [Partial<Record<keyof T, string[]>>] extends [import("vue").Ref<any, any>] ? import("@vue/shared").IfAny<import("vue").Ref<any, any> & Partial<Record<keyof T, string[]>>, import("vue").Ref<import("vue").Ref<any, any> & Partial<Record<keyof T, string[]>>, import("vue").Ref<any, any> & Partial<Record<keyof T, string[]>>>, import("vue").Ref<any, any> & Partial<Record<keyof T, string[]>>> : import("vue").Ref<import("vue").UnwrapRef<Partial<Record<keyof T, string[]>>>, Partial<Record<keyof T, string[]>> | import("vue").UnwrapRef<Partial<Record<keyof T, string[]>>>>;
|
|
12
|
+
isSubmitting: import("vue").Ref<boolean, boolean>;
|
|
13
|
+
isValid: import("vue").ComputedRef<boolean>;
|
|
14
|
+
isDirty: import("vue").ComputedRef<boolean>;
|
|
15
|
+
setForm: (data: Partial<T>) => void;
|
|
16
|
+
resetForm: () => void;
|
|
17
|
+
clearErrors: () => void;
|
|
18
|
+
setFieldError: (field: keyof T, errors: string | string[]) => void;
|
|
19
|
+
clearFieldError: (field: keyof T) => void;
|
|
20
|
+
validate: () => boolean;
|
|
21
|
+
handleSubmit: (onSubmit: (data: T) => Promise<void> | void, withValidation?: boolean) => Promise<boolean>;
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=structureFormManagement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"structureFormManagement.d.ts","sourceRoot":"","sources":["../../../src/composables/structureFormManagement.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,KAAK,CAAC;AAEnC;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GAEnC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAEnD,cAAa,CAAW,EACxB,SAAS,OAAO,CAAC,CAAC,CAAC;;;;;;oBAiCI,OAAO,CAAC,CAAC,CAAC;;;2BAyBH,MAAM,CAAC,UAAU,MAAM,GAAG,MAAM,EAAE;6BAYhC,MAAM,CAAC;oBAWlB,OAAO;6BAkCd,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,+BAE5C,OAAO,CAAC,OAAO,CAAC;CA0BtB,CAAC"}
|
|
@@ -1 +1,23 @@
|
|
|
1
|
+
import { type ZodType } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* Form management composable.
|
|
4
|
+
* Handles reactive form state, optional Zod schema validation and submission flow.
|
|
5
|
+
*
|
|
6
|
+
* @param initialData - Initial values for the form fields
|
|
7
|
+
* @param schema - Optional Zod schema used for validation
|
|
8
|
+
*/
|
|
9
|
+
export declare const useStructureFormValidation: <T extends Record<string, any> = Record<string, any>>(initialData?: T, schema?: ZodType<T>) => {
|
|
10
|
+
form: [T] extends [import("vue").Ref<any, any>] ? import("@vue/shared").IfAny<T, import("vue").Ref<T, T>, T> : import("vue").Ref<import("vue").UnwrapRef<T>, T | import("vue").UnwrapRef<T>>;
|
|
11
|
+
formErrors: [Partial<Record<keyof T, string[]>>] extends [import("vue").Ref<any, any>] ? import("@vue/shared").IfAny<import("vue").Ref<any, any> & Partial<Record<keyof T, string[]>>, import("vue").Ref<import("vue").Ref<any, any> & Partial<Record<keyof T, string[]>>, import("vue").Ref<any, any> & Partial<Record<keyof T, string[]>>>, import("vue").Ref<any, any> & Partial<Record<keyof T, string[]>>> : import("vue").Ref<import("vue").UnwrapRef<Partial<Record<keyof T, string[]>>>, Partial<Record<keyof T, string[]>> | import("vue").UnwrapRef<Partial<Record<keyof T, string[]>>>>;
|
|
12
|
+
isSubmitting: import("vue").Ref<boolean, boolean>;
|
|
13
|
+
isValid: import("vue").ComputedRef<boolean>;
|
|
14
|
+
isDirty: import("vue").ComputedRef<boolean>;
|
|
15
|
+
setForm: (data: Partial<T>) => void;
|
|
16
|
+
resetForm: () => void;
|
|
17
|
+
clearErrors: () => void;
|
|
18
|
+
setFieldError: (field: keyof T, errors: string | string[]) => void;
|
|
19
|
+
clearFieldError: (field: keyof T) => void;
|
|
20
|
+
validate: () => boolean;
|
|
21
|
+
handleSubmit: (onSubmit: (data: T) => Promise<void> | void, withValidation?: boolean) => Promise<boolean>;
|
|
22
|
+
};
|
|
1
23
|
//# sourceMappingURL=structureFormValidation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structureFormValidation.d.ts","sourceRoot":"","sources":["../../../src/composables/structureFormValidation.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"structureFormValidation.d.ts","sourceRoot":"","sources":["../../../src/composables/structureFormValidation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,KAAK,CAAC;AAEnC;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GAEnC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAEnD,cAAa,CAAW,EACxB,SAAS,OAAO,CAAC,CAAC,CAAC;;;;;;oBAiCI,OAAO,CAAC,CAAC,CAAC;;;2BAyBH,MAAM,CAAC,UAAU,MAAM,GAAG,MAAM,EAAE;6BAYhC,MAAM,CAAC;oBAWlB,OAAO;6BAkCd,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,+BAE5C,OAAO,CAAC,OAAO,CAAC;CA0BtB,CAAC"}
|
|
@@ -66,7 +66,7 @@ export interface IStructureRestApi {
|
|
|
66
66
|
loadingKey?: string;
|
|
67
67
|
TTL?: number;
|
|
68
68
|
delimiter?: string;
|
|
69
|
-
getLoading?: (key?: string
|
|
69
|
+
getLoading?: (key?: string) => boolean;
|
|
70
70
|
setLoading?: (key?: string, value?: boolean) => void;
|
|
71
71
|
}
|
|
72
72
|
export declare const useStructureRestApi: <T extends Record<string | number, any> = Record<string, any>, K extends string | number = Extract<keyof T, string | number>, P extends string | number = string | number>({ identifiers, loadingKey, TTL, delimiter, getLoading, setLoading }?: IStructureRestApi) => {
|
|
@@ -98,7 +98,7 @@ export declare const useStructureRestApi: <T extends Record<string | number, any
|
|
|
98
98
|
getListByParent: (parentId?: P | undefined) => T[];
|
|
99
99
|
startLoading: (postfix?: string) => true | void;
|
|
100
100
|
stopLoading: (postfix?: string) => false | void;
|
|
101
|
-
loading: import("vue").ComputedRef<boolean
|
|
101
|
+
loading: import("vue").ComputedRef<boolean>;
|
|
102
102
|
lastUpdate: {
|
|
103
103
|
_all: number;
|
|
104
104
|
_target: Record<K, number>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structureRestApi.d.ts","sourceRoot":"","sources":["../../../src/composables/structureRestApi.ts"],"names":[],"mappings":"AAGA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC3B;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"structureRestApi.d.ts","sourceRoot":"","sources":["../../../src/composables/structureRestApi.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export { useCoreStore } from
|
|
2
|
-
export { useNotificationsStore } from
|
|
3
|
-
export { useStructureDataManagement } from
|
|
4
|
-
export { useStructureRestApi } from
|
|
1
|
+
export { useCoreStore } from './stores/core';
|
|
2
|
+
export { useNotificationsStore } from './stores/notifications';
|
|
3
|
+
export { useStructureDataManagement } from './composables/structureDataManagement';
|
|
4
|
+
export { useStructureRestApi } from './composables/structureRestApi';
|
|
5
|
+
export { useStructureFormValidation } from './composables/structureFormValidation';
|
|
5
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC"}
|
|
@@ -2,19 +2,19 @@ export declare const useCoreStore: import("pinia").StoreDefinition<"core", Pick<
|
|
|
2
2
|
loadings: import("vue").Ref<Record<string | symbol, boolean>, Record<string | symbol, boolean>>;
|
|
3
3
|
isLoading: import("vue").ComputedRef<boolean>;
|
|
4
4
|
resetLoadings: () => {};
|
|
5
|
-
setLoading: (key
|
|
6
|
-
getLoading: (key
|
|
5
|
+
setLoading: (key?: string, value?: boolean) => boolean;
|
|
6
|
+
getLoading: (key?: string) => boolean;
|
|
7
7
|
}, "loadings">, Pick<{
|
|
8
8
|
loadings: import("vue").Ref<Record<string | symbol, boolean>, Record<string | symbol, boolean>>;
|
|
9
9
|
isLoading: import("vue").ComputedRef<boolean>;
|
|
10
10
|
resetLoadings: () => {};
|
|
11
|
-
setLoading: (key
|
|
12
|
-
getLoading: (key
|
|
11
|
+
setLoading: (key?: string, value?: boolean) => boolean;
|
|
12
|
+
getLoading: (key?: string) => boolean;
|
|
13
13
|
}, "isLoading">, Pick<{
|
|
14
14
|
loadings: import("vue").Ref<Record<string | symbol, boolean>, Record<string | symbol, boolean>>;
|
|
15
15
|
isLoading: import("vue").ComputedRef<boolean>;
|
|
16
16
|
resetLoadings: () => {};
|
|
17
|
-
setLoading: (key
|
|
18
|
-
getLoading: (key
|
|
17
|
+
setLoading: (key?: string, value?: boolean) => boolean;
|
|
18
|
+
getLoading: (key?: string) => boolean;
|
|
19
19
|
}, "resetLoadings" | "setLoading" | "getLoading">>;
|
|
20
20
|
//# sourceMappingURL=core.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/stores/core.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/stores/core.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;kDAqCvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notifications.d.ts","sourceRoot":"","sources":["../../../src/stores/notifications.ts"],"names":[],"mappings":"AAGA,oBAAY,UAAU;
|
|
1
|
+
{"version":3,"file":"notifications.d.ts","sourceRoot":"","sources":["../../../src/stores/notifications.ts"],"names":[],"mappings":"AAGA,oBAAY,UAAU;IAClB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,MAAM,UAAU;IAChB,OAAO,YAAY;IACnB,OAAO,YAAY;CACtB;AACD,MAAM,WAAW,aAAa;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB;;YAT1B,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;YAHZ,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;;YAHZ,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;0BA0Ba,MAAM;uBAqBT,MAAM;YAlD5B,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;uBAsDU,MAAM;uBAUN,MAAM;yBAUJ,MAAM;YA7E9B,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;;;;YAHZ,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;YAHZ,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;;YAHZ,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;0BA0Ba,MAAM;uBAqBT,MAAM;YAlD5B,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;uBAsDU,MAAM;uBAUN,MAAM;yBAUJ,MAAM;YA7E9B,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;;;;YAHZ,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;YAHZ,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;;YAHZ,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;0BA0Ba,MAAM;uBAqBT,MAAM;YAlD5B,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;uBAsDU,MAAM;uBAUN,MAAM;yBAUJ,MAAM;YA7E9B,MAAM;iBACD,MAAM;cACT,UAAU;iBACP,OAAO;;;mFA+FlB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,74 +1,76 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
2
|
+
"name": "@guebbit/vue-toolkit",
|
|
3
|
+
"version": "1.0.3",
|
|
4
|
+
"license": "AGPLv3.0",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"module": "dist/index.js",
|
|
8
|
+
"types": "dist/types/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"import": "./dist/index.js",
|
|
12
|
+
"types": "./dist/types/index.d.ts"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"files": [
|
|
16
|
+
"dist",
|
|
17
|
+
"README.md",
|
|
18
|
+
"LICENSE",
|
|
19
|
+
"CHANGELOG"
|
|
20
|
+
],
|
|
21
|
+
"sideEffects": false,
|
|
22
|
+
"scripts": {
|
|
23
|
+
"build": "tsc",
|
|
24
|
+
"test": "jest --config jest.config.cjs --passWithNoTests",
|
|
25
|
+
"test:target": "clear && jest --config jest.config.cjs /tests/structureRestApi.search.spec.ts",
|
|
26
|
+
"lint": "eslint \"*/**/*.{ts,js,json}\"",
|
|
27
|
+
"lint:fix": "eslint \"*/**/*.{ts,js,json}\" --fix",
|
|
28
|
+
"prettier": "npx prettier .",
|
|
29
|
+
"prettier:fix": "npx prettier . --write",
|
|
30
|
+
"docs:dev": "vitepress dev docs --port 8080",
|
|
31
|
+
"docs:build": "vitepress build docs",
|
|
32
|
+
"docs:preview": "vitepress preview docs",
|
|
33
|
+
"update:all": "npx npm-check-updates -u",
|
|
34
|
+
"complete": "npm run build && npm run test && npm run lint:fix && npm run prettier:fix && npm run docs:build",
|
|
35
|
+
"publish:public": "npm run complete && npm publish --access public"
|
|
36
|
+
},
|
|
37
|
+
"peerDependencies": {
|
|
38
|
+
"pinia": ">=2.0.0",
|
|
39
|
+
"vue": ">=3.0.0"
|
|
40
|
+
},
|
|
41
|
+
"devDependencies": {
|
|
42
|
+
"@commitlint/cli": "^20.5.0",
|
|
43
|
+
"@commitlint/config-conventional": "^20.5.0",
|
|
44
|
+
"@eslint/js": "^9.0.0",
|
|
45
|
+
"@types/eslint": "^9.6.1",
|
|
46
|
+
"@types/jest": "^30.0.0",
|
|
47
|
+
"@typescript-eslint/eslint-plugin": "^8.57.2",
|
|
48
|
+
"@typescript-eslint/parser": "^8.57.2",
|
|
49
|
+
"@vitest/eslint-plugin": "^1.6.13",
|
|
50
|
+
"@vue/eslint-config-typescript": "^14.7.0",
|
|
51
|
+
"eslint": "^9.39.2",
|
|
52
|
+
"eslint-config-prettier": "^10.1.8",
|
|
53
|
+
"eslint-plugin-cypress": "^6.2.1",
|
|
54
|
+
"eslint-plugin-oxlint": "^1.57.0",
|
|
55
|
+
"eslint-plugin-prettier": "^5.5.5",
|
|
56
|
+
"eslint-plugin-unicorn": "^64.0.0",
|
|
57
|
+
"eslint-plugin-vue": "^10.8.0",
|
|
58
|
+
"husky": "^9.1.7",
|
|
59
|
+
"jest": "^30.3.0",
|
|
60
|
+
"pinia": "^3.0.4",
|
|
61
|
+
"prettier": "^3.8.1",
|
|
62
|
+
"ts-jest": "^29.4.6",
|
|
63
|
+
"typescript": "^5.9.3",
|
|
64
|
+
"typescript-eslint": "^8.57.2",
|
|
65
|
+
"vitepress": "^1.6.4",
|
|
66
|
+
"vue": "^3.5.31"
|
|
67
|
+
},
|
|
68
|
+
"husky": {
|
|
69
|
+
"hooks": {
|
|
70
|
+
"pre-commit": "npm run complete"
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
"dependencies": {
|
|
74
|
+
"zod": "^4.3.6"
|
|
13
75
|
}
|
|
14
|
-
},
|
|
15
|
-
"files": [
|
|
16
|
-
"dist",
|
|
17
|
-
"README.md",
|
|
18
|
-
"LICENSE",
|
|
19
|
-
"CHANGELOG"
|
|
20
|
-
],
|
|
21
|
-
"sideEffects": false,
|
|
22
|
-
"scripts": {
|
|
23
|
-
"build": "tsc",
|
|
24
|
-
"test": "jest --config jest.config.cjs --passWithNoTests",
|
|
25
|
-
"test:target": "jest --config jest.config.cjs /tests/getColorBrightness.spec.ts",
|
|
26
|
-
"lint": "eslint \"*/**/*.{ts,js,json}\"",
|
|
27
|
-
"lint:fix": "eslint \"*/**/*.{ts,js,json}\" --fix",
|
|
28
|
-
"docs:dev": "vitepress dev docs --port 8080",
|
|
29
|
-
"docs:build": "vitepress build docs",
|
|
30
|
-
"docs:preview": "vitepress preview docs",
|
|
31
|
-
"update:all": "npx npm-check-updates -u",
|
|
32
|
-
"complete": "npm run build && npm run test && npm run lint && npm run docs:build",
|
|
33
|
-
"publish:public": "npm run complete && npm publish --access public"
|
|
34
|
-
},
|
|
35
|
-
"peerDependencies": {
|
|
36
|
-
"pinia": ">=2.0.0",
|
|
37
|
-
"vue": ">=3.0.0"
|
|
38
|
-
},
|
|
39
|
-
"devDependencies": {
|
|
40
|
-
"@commitlint/cli": "^20.5.0",
|
|
41
|
-
"@commitlint/config-conventional": "^20.5.0",
|
|
42
|
-
"@eslint/js": "^9.0.0",
|
|
43
|
-
"@types/eslint": "^9.6.1",
|
|
44
|
-
"@types/jest": "^30.0.0",
|
|
45
|
-
"@typescript-eslint/eslint-plugin": "^8.57.2",
|
|
46
|
-
"@typescript-eslint/parser": "^8.57.2",
|
|
47
|
-
"@vitest/eslint-plugin": "^1.6.13",
|
|
48
|
-
"@vue/eslint-config-typescript": "^14.7.0",
|
|
49
|
-
"eslint": "^9.39.2",
|
|
50
|
-
"eslint-config-prettier": "^10.1.8",
|
|
51
|
-
"eslint-plugin-cypress": "^6.2.1",
|
|
52
|
-
"eslint-plugin-oxlint": "^1.57.0",
|
|
53
|
-
"eslint-plugin-prettier": "^5.5.5",
|
|
54
|
-
"eslint-plugin-unicorn": "^64.0.0",
|
|
55
|
-
"eslint-plugin-vue": "^10.8.0",
|
|
56
|
-
"husky": "^9.1.7",
|
|
57
|
-
"jest": "^30.3.0",
|
|
58
|
-
"pinia": "^3.0.4",
|
|
59
|
-
"prettier": "^3.8.1",
|
|
60
|
-
"ts-jest": "^29.4.6",
|
|
61
|
-
"typescript": "^5.9.3",
|
|
62
|
-
"typescript-eslint": "^8.57.2",
|
|
63
|
-
"vitepress": "^1.6.4",
|
|
64
|
-
"vue": "^3.5.31"
|
|
65
|
-
},
|
|
66
|
-
"husky": {
|
|
67
|
-
"hooks": {
|
|
68
|
-
"pre-commit": "npm run complete"
|
|
69
|
-
}
|
|
70
|
-
},
|
|
71
|
-
"dependencies": {
|
|
72
|
-
"zod": "^4.3.6"
|
|
73
|
-
}
|
|
74
76
|
}
|