@arrai-innovations/reactive-helpers 21.1.2 → 22.1.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.
- package/LICENSE +28 -0
- package/README.md +109 -21
- package/config/commonCrud.js +7 -10
- package/config/listCrud.js +33 -33
- package/config/objectCrud.js +64 -59
- package/package.json +103 -89
- package/types/config/listCrud.d.ts +83 -28
- package/types/config/objectCrud.d.ts +139 -49
- package/types/tests/benchmarks/fixtures.d.ts +60 -0
- package/types/tests/benchmarks/listLayers.bench.d.ts +1 -0
- package/types/tests/benchmarks/listPush.bench.d.ts +1 -0
- package/types/tests/benchmarks/listStream.bench.d.ts +1 -0
- package/types/tests/unit/use/lifecycleCleanup.spec.d.ts +1 -0
- package/types/tests/unit/use/listPerformance.spec.d.ts +1 -0
- package/types/tests/unit/utils/cancellablePromise.spec.d.ts +1 -0
- package/types/use/cancellableIntent.d.ts +36 -33
- package/types/use/combineClasses.d.ts +5 -2
- package/types/use/error.d.ts +39 -19
- package/types/use/list.d.ts +27 -26
- package/types/use/listCalculated.d.ts +38 -55
- package/types/use/listFilter.d.ts +25 -33
- package/types/use/listInstance.d.ts +94 -81
- package/types/use/listRelated.d.ts +37 -57
- package/types/use/listSearch.d.ts +54 -52
- package/types/use/listSort.d.ts +31 -40
- package/types/use/listSubscription.d.ts +33 -36
- package/types/use/loading.d.ts +20 -10
- package/types/use/loadingError.d.ts +12 -3
- package/types/use/object.d.ts +8 -5
- package/types/use/objectCalculated.d.ts +46 -39
- package/types/use/objectInstance.d.ts +70 -74
- package/types/use/objectRelated.d.ts +51 -41
- package/types/use/objectSubscription.d.ts +38 -48
- package/types/use/proxyError.d.ts +15 -6
- package/types/use/proxyLoading.d.ts +11 -5
- package/types/use/proxyLoadingError.d.ts +19 -7
- package/types/use/search.d.ts +33 -29
- package/types/utils/assignReactiveObject.d.ts +3 -0
- package/types/utils/cancellableFetch.d.ts +2 -3
- package/types/utils/cancellablePromise.d.ts +42 -8
- package/types/utils/classes.d.ts +7 -1
- package/types/utils/deepUnref.d.ts +1 -1
- package/types/utils/getFakePk.d.ts +2 -2
- package/types/utils/isReactiveTyped.d.ts +2 -0
- package/types/utils/keyDiff.d.ts +4 -6
- package/types/utils/relatedCalculatedHelpers.d.ts +2 -0
- package/types/utils/watches.d.ts +1 -1
- package/use/cancellableIntent.js +36 -9
- package/use/combineClasses.js +2 -2
- package/use/error.js +10 -14
- package/use/list.js +6 -18
- package/use/listCalculated.js +28 -38
- package/use/listFilter.js +12 -24
- package/use/listInstance.js +101 -60
- package/use/listRelated.js +18 -37
- package/use/listSearch.js +9 -18
- package/use/listSort.js +95 -64
- package/use/listSubscription.js +19 -25
- package/use/loading.js +5 -7
- package/use/loadingError.js +3 -3
- package/use/object.js +14 -27
- package/use/objectCalculated.js +21 -25
- package/use/objectInstance.js +55 -50
- package/use/objectRelated.js +19 -25
- package/use/objectSubscription.js +18 -30
- package/use/proxyError.js +10 -10
- package/use/proxyLoading.js +5 -5
- package/use/proxyLoadingError.js +13 -8
- package/use/search.js +5 -11
- package/utils/assignReactiveObject.js +3 -3
- package/utils/cancellableFetch.js +3 -3
- package/utils/cancellablePromise.js +25 -8
- package/utils/classes.js +2 -2
- package/utils/deepUnref.js +1 -5
- package/utils/getFakePk.js +2 -2
- package/utils/isReactiveTyped.js +2 -0
- package/utils/keyDiff.js +1 -3
- package/utils/relatedCalculatedHelpers.js +2 -0
package/config/objectCrud.js
CHANGED
|
@@ -9,173 +9,180 @@ import { readonly } from "vue";
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
* @typedef {{[key:string]: any}} TargetArgs
|
|
12
|
+
* @typedef {{[key:string]: any}} TargetArgs - Implementation-specific arguments passed through to the CRUD handlers, such as endpoint identifiers.
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
|
-
* Additional arguments that can be passed to CRUD handlers.
|
|
17
|
-
*
|
|
18
|
-
* @typedef {{[key:string]: any}} AdditionalCrudArgs
|
|
16
|
+
* @typedef {{[key:string]: any}} AdditionalCrudArgs - Additional arguments that can be passed to CRUD handlers.
|
|
19
17
|
*/
|
|
20
18
|
|
|
21
19
|
/**
|
|
22
|
-
* Defines the CRUD-related handlers and additional utilities provided by the object instance.
|
|
23
|
-
*
|
|
24
|
-
* @typedef {object} ObjectTargetProperties
|
|
20
|
+
* @typedef {object} ObjectTargetProperties - Defines the CRUD-related handlers and additional utilities provided by the object instance.
|
|
25
21
|
* @property {TargetArgs} args - The arguments to be passed to the crud handlers.
|
|
26
22
|
*/
|
|
27
23
|
|
|
28
24
|
/**
|
|
29
|
-
* @typedef {object} ObjectTargetOption
|
|
25
|
+
* @typedef {object} ObjectTargetOption - Optional target arguments passed through to the object CRUD handlers.
|
|
30
26
|
* @property {TargetArgs} [target={}] - The arguments to be passed to the crud handlers.
|
|
31
27
|
*/
|
|
32
28
|
|
|
33
29
|
/**
|
|
34
|
-
* @typedef {object} CreateArgsRaw
|
|
30
|
+
* @typedef {object} CreateArgsRaw - Raw arguments for an object create operation before additional CRUD arguments are merged in.
|
|
35
31
|
* @property {TargetArgs} target - The arguments to be passed to the crud handlers.
|
|
36
|
-
* @property {{[key:string]: any}} object - The
|
|
37
|
-
* @property {{[key:string]: any}} params -
|
|
32
|
+
* @property {{[key:string]: any}} object - The new object to create; it carries no primary key yet.
|
|
33
|
+
* @property {{[key:string]: any}} params - Your listing or retrieval arguments, passed through to the crud handlers.
|
|
38
34
|
* @property {string} pkKey - The key name of the primary key.
|
|
39
|
-
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A ref
|
|
35
|
+
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A readonly ref that becomes true once the request is cancelled.
|
|
40
36
|
*/
|
|
41
37
|
|
|
42
38
|
/**
|
|
43
|
-
* @typedef {CreateArgsRaw & AdditionalCrudArgs} CreateArgs
|
|
39
|
+
* @typedef {CreateArgsRaw & AdditionalCrudArgs} CreateArgs - Arguments for an object create operation, combining the raw arguments with any additional CRUD arguments.
|
|
44
40
|
*/
|
|
45
41
|
|
|
46
42
|
/**
|
|
47
|
-
* @typedef {object} RetrieveArgsRaw
|
|
43
|
+
* @typedef {object} RetrieveArgsRaw - Raw arguments for an object retrieve operation before run-tracking and additional CRUD arguments are merged in.
|
|
48
44
|
* @property {TargetArgs} target - The arguments to be passed to the crud handlers.
|
|
49
45
|
* @property {import('./commonCrud.js').Pk} pk - The pk of the object to be acted upon.
|
|
50
46
|
* @property {string} pkKey - The key name of the primary key.
|
|
51
|
-
* @property {{[key:string]: any}} params -
|
|
52
|
-
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A ref
|
|
47
|
+
* @property {{[key:string]: any}} params - Your listing or retrieval arguments, passed through to the crud handlers.
|
|
48
|
+
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A readonly ref that becomes true once the request is cancelled.
|
|
53
49
|
*/
|
|
54
50
|
|
|
55
51
|
/**
|
|
56
|
-
* @typedef {RetrieveArgsRaw & Partial<import('../use/cancellableIntent.js').CommonRunTracking> & AdditionalCrudArgs} RetrieveArgs
|
|
52
|
+
* @typedef {RetrieveArgsRaw & Partial<import('../use/cancellableIntent.js').CommonRunTracking> & AdditionalCrudArgs} RetrieveArgs - Arguments for an object retrieve operation, combining the raw arguments with run-tracking and any additional CRUD arguments.
|
|
57
53
|
*/
|
|
58
54
|
|
|
59
55
|
/**
|
|
60
|
-
* @typedef {object} UpdateArgsRaw
|
|
56
|
+
* @typedef {object} UpdateArgsRaw - Raw arguments for an object update operation before additional CRUD arguments are merged in.
|
|
61
57
|
* @property {TargetArgs} target - The arguments to be passed to the crud handlers.
|
|
62
|
-
* @property {import('../use/objectInstance.js').ExistingCrudObject} object - The
|
|
63
|
-
* @property {{[key:string]: any}} params -
|
|
58
|
+
* @property {import('../use/objectInstance.js').ExistingCrudObject} object - The complete object to update; its primary key rides inside it, at `object[pkKey]`.
|
|
59
|
+
* @property {{[key:string]: any}} params - Your listing or retrieval arguments, passed through to the crud handlers.
|
|
64
60
|
* @property {string} pkKey - The key name of the primary key.
|
|
65
|
-
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A ref
|
|
61
|
+
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A readonly ref that becomes true once the request is cancelled.
|
|
66
62
|
*/
|
|
67
63
|
|
|
68
64
|
/**
|
|
69
|
-
* @typedef {UpdateArgsRaw & AdditionalCrudArgs} UpdateArgs
|
|
65
|
+
* @typedef {UpdateArgsRaw & AdditionalCrudArgs} UpdateArgs - Arguments for an object update operation, combining the raw arguments with any additional CRUD arguments.
|
|
70
66
|
*/
|
|
71
67
|
|
|
72
68
|
/**
|
|
73
|
-
* @typedef {object} DeleteArgsRaw
|
|
69
|
+
* @typedef {object} DeleteArgsRaw - Raw arguments for an object delete operation before additional CRUD arguments are merged in.
|
|
74
70
|
* @property {TargetArgs} target - The arguments to be passed to the crud handlers.
|
|
75
71
|
* @property {import('./commonCrud.js').Pk} pk - The pk of the object to be acted upon.
|
|
76
72
|
* @property {string} pkKey - The key name of the primary key.
|
|
73
|
+
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A readonly ref that becomes true once the request is cancelled.
|
|
77
74
|
*/
|
|
78
75
|
|
|
79
76
|
/**
|
|
80
|
-
* @typedef {DeleteArgsRaw & AdditionalCrudArgs} DeleteArgs
|
|
77
|
+
* @typedef {DeleteArgsRaw & AdditionalCrudArgs} DeleteArgs - Arguments for an object delete operation, combining the raw arguments with any additional CRUD arguments.
|
|
81
78
|
*/
|
|
82
79
|
|
|
83
80
|
/**
|
|
84
|
-
* @typedef {object} PartialArgsRaw
|
|
81
|
+
* @typedef {object} PartialArgsRaw - Raw arguments for an object patch (partial update) operation before additional CRUD arguments are merged in.
|
|
85
82
|
* @property {TargetArgs} target - The arguments to be passed to the crud handlers.
|
|
86
83
|
* @property {import('./commonCrud.js').Pk} pk - The pk of the object to be acted upon.
|
|
87
84
|
* @property {string} pkKey - The key name of the primary key.
|
|
88
|
-
* @property {{[key:string]: any}} partialObject - The
|
|
89
|
-
* @property {{[key:string]: any}} params -
|
|
90
|
-
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A ref
|
|
85
|
+
* @property {{[key:string]: any}} partialObject - The changed fields only.
|
|
86
|
+
* @property {{[key:string]: any}} params - Your listing or retrieval arguments, passed through to the crud handlers.
|
|
87
|
+
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A readonly ref that becomes true once the request is cancelled.
|
|
91
88
|
*/
|
|
92
89
|
/**
|
|
93
|
-
* @typedef {PartialArgsRaw & AdditionalCrudArgs} PartialArgs
|
|
90
|
+
* @typedef {PartialArgsRaw & AdditionalCrudArgs} PartialArgs - Arguments for an object patch (partial update) operation, combining the raw arguments with any additional CRUD arguments.
|
|
94
91
|
*/
|
|
95
92
|
|
|
96
93
|
/**
|
|
97
|
-
* @typedef {object} ObjectExecuteActionArgsRaw
|
|
98
|
-
* @property {
|
|
99
|
-
* @property {
|
|
94
|
+
* @typedef {object} ObjectExecuteActionArgsRaw - Raw arguments for a single-object execute-action operation before additional CRUD arguments are merged in.
|
|
95
|
+
* @property {TargetArgs} target - The arguments to be passed to the crud handlers.
|
|
96
|
+
* @property {import('./commonCrud.js').Pk} pk - The pk of the object to be acted upon.
|
|
100
97
|
* @property {string} pkKey - The key name of the primary key.
|
|
101
98
|
* @property {string} action - The action to execute.
|
|
102
|
-
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A ref
|
|
99
|
+
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A readonly ref that becomes true once the request is cancelled.
|
|
103
100
|
*/
|
|
104
101
|
|
|
105
102
|
/**
|
|
106
|
-
* @typedef {ObjectExecuteActionArgsRaw & AdditionalCrudArgs} ObjectExecuteActionArgs
|
|
103
|
+
* @typedef {ObjectExecuteActionArgsRaw & AdditionalCrudArgs} ObjectExecuteActionArgs - Arguments for a single-object execute-action operation, combining the raw arguments with any additional CRUD arguments.
|
|
107
104
|
*/
|
|
108
105
|
|
|
109
106
|
/**
|
|
110
|
-
* @callback CrudSubscribeCallback
|
|
107
|
+
* @callback CrudSubscribeCallback - Callback invoked with the changed object and the action (create, update, or delete) when a subscribed object changes.
|
|
111
108
|
* @param {import('../use/objectInstance.js').ExistingCrudObject} data - The data to be passed to the callback.
|
|
112
109
|
* @param {"delete"|"update"|"create"} action - The action that was performed.
|
|
113
110
|
*/
|
|
114
111
|
|
|
115
112
|
/**
|
|
116
|
-
* @typedef {object} ObjectSubscribeArgsRaw
|
|
113
|
+
* @typedef {object} ObjectSubscribeArgsRaw - Raw arguments for a single-object subscribe operation before run-tracking and additional CRUD arguments are merged in.
|
|
117
114
|
* @property {TargetArgs} target - The arguments to be passed to the crud handlers.
|
|
118
115
|
* @property {import('./commonCrud.js').Pk} pk - The pk of the object to be acted upon.
|
|
119
116
|
* @property {string} pkKey - The key name of the primary key.
|
|
120
|
-
* @property {{[key:string]: any}} params -
|
|
117
|
+
* @property {{[key:string]: any}} params - Your listing or retrieval arguments, passed through to the crud handlers.
|
|
121
118
|
* @property {CrudSubscribeCallback} callback - The callback to be called when the object is updated.
|
|
122
|
-
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A ref
|
|
119
|
+
* @property {Readonly<import('vue').Ref<boolean>>} isCancelled - A readonly ref that becomes true once the request is cancelled.
|
|
123
120
|
*/
|
|
124
121
|
|
|
125
122
|
/**
|
|
126
|
-
* @typedef {ObjectSubscribeArgsRaw & import('../use/cancellableIntent.js').CommonRunTracking & AdditionalCrudArgs} ObjectSubscribeArgs
|
|
123
|
+
* @typedef {ObjectSubscribeArgsRaw & import('../use/cancellableIntent.js').CommonRunTracking & AdditionalCrudArgs} ObjectSubscribeArgs - Arguments for a single-object subscribe operation, combining the raw arguments with run-tracking and any additional CRUD arguments.
|
|
127
124
|
*/
|
|
128
125
|
|
|
129
126
|
/**
|
|
130
|
-
* @typedef {import('../utils/cancellablePromise.js').MaybeCancellablePromise<object
|
|
127
|
+
* @typedef {import('../utils/cancellablePromise.js').MaybeCancellablePromise<object>} CrudResponse -
|
|
128
|
+
* The value returned by an object CRUD handler whose resolved value becomes the record: create, retrieve, update, and
|
|
129
|
+
* patch. A possibly-cancellable promise resolving to the complete record. The instance mirrors the resolved value
|
|
130
|
+
* into `state.object`, so a partial record drops the fields it omits, and a resolved value that is not an object (a
|
|
131
|
+
* bare primary key string, for instance) fails the assignment and is stored in `state.error`.
|
|
131
132
|
*/
|
|
132
133
|
|
|
133
134
|
/**
|
|
134
|
-
* @
|
|
135
|
+
* @typedef {import('../utils/cancellablePromise.js').MaybeCancellablePromise<object|string|void>} CrudCompletionResponse -
|
|
136
|
+
* The value returned by an object CRUD handler whose resolved value is ignored: delete, and executeAction. A
|
|
137
|
+
* possibly-cancellable promise whose resolution signals success and nothing more, so it may resolve a record, a
|
|
138
|
+
* primary key string, or nothing at all.
|
|
139
|
+
*/
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* @callback CrudCreateFn - Signature for the handler that creates an object in the backing store.
|
|
135
143
|
* @param {CreateArgs} args - The arguments to be passed to the create function.
|
|
136
|
-
* @returns {CrudResponse} -
|
|
144
|
+
* @returns {CrudResponse} - A promise resolving the created record in full.
|
|
137
145
|
*/
|
|
138
146
|
|
|
139
147
|
/**
|
|
140
|
-
* @callback CrudRetrieveFn
|
|
148
|
+
* @callback CrudRetrieveFn - Signature for the handler that retrieves an object from the backing store.
|
|
141
149
|
* @param {RetrieveArgs} args - The arguments to be passed to the retrieve function.
|
|
142
|
-
* @returns {CrudResponse} -
|
|
150
|
+
* @returns {CrudResponse} - A promise resolving the retrieved record in full.
|
|
143
151
|
*/
|
|
144
152
|
|
|
145
153
|
/**
|
|
146
|
-
* @callback CrudUpdateFn
|
|
154
|
+
* @callback CrudUpdateFn - Signature for the handler that updates an object in the backing store.
|
|
147
155
|
* @param {UpdateArgs} args - The arguments to be passed to the update function.
|
|
148
|
-
* @returns {CrudResponse} -
|
|
156
|
+
* @returns {CrudResponse} - A promise resolving the updated record in full.
|
|
149
157
|
*/
|
|
150
158
|
|
|
151
159
|
/**
|
|
152
|
-
* @callback CrudPatchFn
|
|
160
|
+
* @callback CrudPatchFn - Signature for the handler that partially updates (patches) an object in the backing store.
|
|
153
161
|
* @param {PartialArgs} args - The arguments to be passed to the patch function.
|
|
154
|
-
* @returns {CrudResponse} -
|
|
162
|
+
* @returns {CrudResponse} - A promise resolving the patched record in full, not just the changed fields.
|
|
155
163
|
*/
|
|
156
164
|
|
|
157
165
|
/**
|
|
158
|
-
* @callback CrudDeleteFn
|
|
166
|
+
* @callback CrudDeleteFn - Signature for the handler that deletes an object from the backing store.
|
|
159
167
|
* @param {DeleteArgs} args - The arguments to be passed to the delete function.
|
|
160
|
-
* @returns {
|
|
168
|
+
* @returns {CrudCompletionResponse} - A promise whose resolution means the delete succeeded; its value is ignored.
|
|
161
169
|
*/
|
|
162
170
|
|
|
163
171
|
/**
|
|
164
|
-
* @callback CrudObjectExecuteActionFn
|
|
172
|
+
* @callback CrudObjectExecuteActionFn - Signature for the handler that executes an action on a single object in the backing store.
|
|
165
173
|
* @param {ObjectExecuteActionArgs} args - The arguments to be passed to the executeAction function.
|
|
166
|
-
* @returns {
|
|
174
|
+
* @returns {CrudCompletionResponse} - A promise whose resolution means the action succeeded; its value is ignored, and
|
|
175
|
+
* `objectInstance.executeAction` resolves `true`.
|
|
167
176
|
*/
|
|
168
177
|
|
|
169
178
|
/**
|
|
170
|
-
* @callback CrudObjectSubscribeFn
|
|
179
|
+
* @callback CrudObjectSubscribeFn - Signature for the handler that subscribes to changes on a single object in the backing store.
|
|
171
180
|
* @param {ObjectSubscribeArgs} args - The arguments to be passed to the subscribe function.
|
|
172
181
|
* @returns {import('../utils/cancellablePromise.js').CancellablePromise<void>} - The cancellable promise.
|
|
173
182
|
*/
|
|
174
183
|
|
|
175
184
|
/**
|
|
176
|
-
* Defines the CRUD-related handlers and additional utilities provided by the object instance.
|
|
177
|
-
*
|
|
178
|
-
* @typedef {object} ObjectCrudHandlers
|
|
185
|
+
* @typedef {object} ObjectCrudHandlers - Defines the CRUD-related handlers and additional utilities provided by the object instance.
|
|
179
186
|
* @property {CrudCreateFn} [create] - A function to be used instead of the default crud create function.
|
|
180
187
|
* @property {CrudRetrieveFn} [retrieve] - A function to be used instead of the default crud retrieve function.
|
|
181
188
|
* @property {CrudUpdateFn} [update] - A function to be used instead of the default crud update function.
|
|
@@ -187,9 +194,7 @@ import { readonly } from "vue";
|
|
|
187
194
|
*/
|
|
188
195
|
|
|
189
196
|
/**
|
|
190
|
-
* The CRUD arguments.
|
|
191
|
-
*
|
|
192
|
-
* @typedef {ObjectTargetProperties & ObjectCrudHandlers} ObjectTarget
|
|
197
|
+
* @typedef {ObjectTargetProperties & ObjectCrudHandlers} ObjectTarget - The CRUD arguments.
|
|
193
198
|
*
|
|
194
199
|
*/
|
|
195
200
|
|
package/package.json
CHANGED
|
@@ -1,91 +1,105 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
"README.md",
|
|
17
|
-
"use/",
|
|
18
|
-
"utils/",
|
|
19
|
-
"config/",
|
|
20
|
-
"types/"
|
|
21
|
-
],
|
|
22
|
-
"directories": {
|
|
23
|
-
"use": "use",
|
|
24
|
-
"utils": "utils",
|
|
25
|
-
"tests": "tests"
|
|
26
|
-
},
|
|
27
|
-
"scripts": {
|
|
28
|
-
"test": "npx --no-install vitest",
|
|
29
|
-
"eslint": "npx --no-install eslint --fix index.js config/**/*.js tests/**/*.js use/**/*.js utils/**/*.js",
|
|
30
|
-
"prettier": "npx --no-install prettier --write .",
|
|
31
|
-
"coverage": "npm test -- run --coverage=true",
|
|
32
|
-
"prepare": "npx --no-install husky",
|
|
33
|
-
"docs": "node make_type_doc.js",
|
|
34
|
-
"docs:check": "node check_type_doc.js",
|
|
35
|
-
"docs:clean": "node clean_type_doc.js",
|
|
36
|
-
"types": "node make_types.js",
|
|
37
|
-
"types:check": "node check_types.js"
|
|
38
|
-
},
|
|
39
|
-
"repository": {
|
|
40
|
-
"type": "git",
|
|
41
|
-
"url": "git+https://github.com/arrai-innovations/reactive-helpers.git"
|
|
42
|
-
},
|
|
43
|
-
"author": "Arrai Innovations Inc. <developers@arrai.com>",
|
|
44
|
-
"license": "UNLICENSED",
|
|
45
|
-
"bugs": {
|
|
46
|
-
"url": "https://github.com/arrai-innovations/reactive-helpers/issues"
|
|
47
|
-
},
|
|
48
|
-
"homepage": "https://github.com/arrai-innovations/reactive-helpers#readme",
|
|
49
|
-
"devDependencies": {
|
|
50
|
-
"@arrai-innovations/commitlint-config": "^2.0.0",
|
|
51
|
-
"@commitlint/cli": "^19.4.0",
|
|
52
|
-
"@godaddy/dmd": "^1.0.4",
|
|
53
|
-
"@trivago/prettier-plugin-sort-imports": "^5.2.1",
|
|
54
|
-
"@types/browser-util-inspect": "^0.2.4",
|
|
55
|
-
"@types/lodash-es": "^4.17.12",
|
|
56
|
-
"@typescript-eslint/eslint-plugin": "^7.18.0",
|
|
57
|
-
"@typescript-eslint/parser": "^7.18.0",
|
|
58
|
-
"@vitest/coverage-istanbul": "^3.1.4",
|
|
59
|
-
"@vitest/coverage-v8": "^3.1.4",
|
|
60
|
-
"@vue/compiler-sfc": "^3.4.37",
|
|
61
|
-
"@vue/eslint-config-prettier": "^9.0.0",
|
|
62
|
-
"@vue/test-utils": "^2.3.2",
|
|
63
|
-
"doctoc": "^2.1.0",
|
|
64
|
-
"eslint": "^8.56.0",
|
|
65
|
-
"eslint-plugin-jsdoc": "^48.11.0",
|
|
66
|
-
"eslint-plugin-vitest": "~0.5.4",
|
|
67
|
-
"eslint-plugin-vitest-globals": "^1.3.1",
|
|
68
|
-
"eslint-plugin-vue": "^9.27.0",
|
|
69
|
-
"flush-promises": "^1.0.2",
|
|
70
|
-
"globals": "^16.0.0",
|
|
71
|
-
"husky": "^9.1.7",
|
|
72
|
-
"jsdom": "^26.0.0",
|
|
73
|
-
"lint-staged": "^15.2.8",
|
|
74
|
-
"prettier": "^3.3.3",
|
|
75
|
-
"typedoc": "^0.28.15",
|
|
76
|
-
"typedoc-plugin-markdown": "^4.9.0",
|
|
77
|
-
"typescript": "^5.5.4",
|
|
78
|
-
"vitest": "^3.1.2"
|
|
79
|
-
},
|
|
80
|
-
"dependencies": {
|
|
81
|
-
"@jcoreio/async-throttle": "^1.6.0",
|
|
82
|
-
"browser-util-inspect": "^0.2.0",
|
|
83
|
-
"flexsearch": "0.7.21",
|
|
84
|
-
"vue-deepunref": "^1.0.1"
|
|
85
|
-
},
|
|
86
|
-
"peerDependencies": {
|
|
87
|
-
"@vueuse/core": "^13.0.0",
|
|
88
|
-
"lodash-es": "^4.17.23",
|
|
89
|
-
"vue": "^3.5.13"
|
|
2
|
+
"name": "@arrai-innovations/reactive-helpers",
|
|
3
|
+
"version": "22.1.0",
|
|
4
|
+
"description": "VueJS 3 utility composition functions to help manipulate objects and lists.",
|
|
5
|
+
"main": "index.js",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"types": "types/index.d.ts",
|
|
8
|
+
"publishConfig": {
|
|
9
|
+
"registry": "https://registry.npmjs.org/",
|
|
10
|
+
"access": "public"
|
|
11
|
+
},
|
|
12
|
+
"exports": {
|
|
13
|
+
".": {
|
|
14
|
+
"import": "./index.js",
|
|
15
|
+
"types": "./types/index.d.ts"
|
|
90
16
|
}
|
|
91
|
-
}
|
|
17
|
+
},
|
|
18
|
+
"files": [
|
|
19
|
+
"index.js",
|
|
20
|
+
"README.md",
|
|
21
|
+
"use/",
|
|
22
|
+
"utils/",
|
|
23
|
+
"config/",
|
|
24
|
+
"types/"
|
|
25
|
+
],
|
|
26
|
+
"directories": {
|
|
27
|
+
"use": "use",
|
|
28
|
+
"utils": "utils",
|
|
29
|
+
"tests": "tests"
|
|
30
|
+
},
|
|
31
|
+
"repository": {
|
|
32
|
+
"type": "git",
|
|
33
|
+
"url": "git+https://github.com/arrai-innovations/reactive-helpers.git"
|
|
34
|
+
},
|
|
35
|
+
"author": "Arrai Innovations Inc. <developers@arrai.com>",
|
|
36
|
+
"license": "BSD-3-Clause",
|
|
37
|
+
"bugs": {
|
|
38
|
+
"url": "https://github.com/arrai-innovations/reactive-helpers/issues"
|
|
39
|
+
},
|
|
40
|
+
"homepage": "https://github.com/arrai-innovations/reactive-helpers#readme",
|
|
41
|
+
"devDependencies": {
|
|
42
|
+
"@arrai-innovations/commitlint-config": "^2.1.0",
|
|
43
|
+
"@commitlint/cli": "^19.8.1",
|
|
44
|
+
"@eslint/js": "9.39.4",
|
|
45
|
+
"@godaddy/dmd": "^1.0.4",
|
|
46
|
+
"@trivago/prettier-plugin-sort-imports": "^5.2.2",
|
|
47
|
+
"@types/browser-util-inspect": "^0.2.4",
|
|
48
|
+
"@types/lodash-es": "^4.17.12",
|
|
49
|
+
"@vitest/coverage-istanbul": "^4.1.9",
|
|
50
|
+
"@vitest/coverage-v8": "^4.1.9",
|
|
51
|
+
"@vitest/eslint-plugin": "^1.6.20",
|
|
52
|
+
"@vue/compiler-sfc": "^3.5.38",
|
|
53
|
+
"@vue/eslint-config-prettier": "^10.2.0",
|
|
54
|
+
"@vue/test-utils": "^2.4.11",
|
|
55
|
+
"doctoc": "^2.5.0",
|
|
56
|
+
"eslint": "^9.39.4",
|
|
57
|
+
"eslint-config-prettier": "^10.1.8",
|
|
58
|
+
"eslint-plugin-jsdoc": "^63.0.6",
|
|
59
|
+
"eslint-plugin-no-autofix": "^2.1.0",
|
|
60
|
+
"eslint-plugin-vue": "^10.9.2",
|
|
61
|
+
"flush-promises": "^1.0.2",
|
|
62
|
+
"globals": "^16.5.0",
|
|
63
|
+
"jsdom": "^26.1.0",
|
|
64
|
+
"lefthook": "^1.13.6",
|
|
65
|
+
"prettier": "^3.8.4",
|
|
66
|
+
"typedoc": "^0.28.19",
|
|
67
|
+
"typedoc-plugin-markdown": "^4.12.0",
|
|
68
|
+
"typescript": "^5.9.3",
|
|
69
|
+
"vite": "^8.0.16",
|
|
70
|
+
"vitepress": "^1.6.4",
|
|
71
|
+
"vitest": "^4.1.9",
|
|
72
|
+
"vue-eslint-parser": "^10.4.1"
|
|
73
|
+
},
|
|
74
|
+
"dependencies": {
|
|
75
|
+
"@jcoreio/async-throttle": "^1.7.0",
|
|
76
|
+
"browser-util-inspect": "^0.2.0",
|
|
77
|
+
"flexsearch": "0.7.21",
|
|
78
|
+
"vue-deepunref": "^1.0.1"
|
|
79
|
+
},
|
|
80
|
+
"peerDependencies": {
|
|
81
|
+
"@vueuse/core": "^13.0.0",
|
|
82
|
+
"lodash-es": "^4.17.23",
|
|
83
|
+
"vue": "^3.5.13"
|
|
84
|
+
},
|
|
85
|
+
"scripts": {
|
|
86
|
+
"benchmark": "vitest bench --run",
|
|
87
|
+
"benchmark:list": "vitest bench --run tests/benchmarks/listPush.bench.js",
|
|
88
|
+
"benchmark:list:ci": "vitest bench --run tests/benchmarks/listPush.bench.js --outputJson benchmark-results/list-push.json",
|
|
89
|
+
"benchmark:check": "node check_benchmark.js",
|
|
90
|
+
"benchmark:layers": "vitest bench --run tests/benchmarks/listLayers.bench.js",
|
|
91
|
+
"benchmark:stream": "vitest bench --run tests/benchmarks/listStream.bench.js",
|
|
92
|
+
"test": "vitest",
|
|
93
|
+
"eslint": "eslint --fix index.js config/**/*.js tests/**/*.js use/**/*.js utils/**/*.js",
|
|
94
|
+
"prettier": "prettier --write .",
|
|
95
|
+
"coverage": "vitest run --coverage=true",
|
|
96
|
+
"docs": "node make_type_doc.js",
|
|
97
|
+
"docs:check": "node check_type_doc.js",
|
|
98
|
+
"docs:clean": "node clean_type_doc.js",
|
|
99
|
+
"docs:site:dev": "vitepress dev docs",
|
|
100
|
+
"docs:site:build": "vitepress build docs",
|
|
101
|
+
"docs:site:preview": "vitepress preview docs",
|
|
102
|
+
"types": "node make_types.js",
|
|
103
|
+
"types:check": "node check_types.js"
|
|
104
|
+
}
|
|
105
|
+
}
|