feathers-utils 1.11.0 → 1.12.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/README.md +1 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +3 -2
- package/dist/esm/utility-types/utility-types.d.ts +33 -0
- package/dist/esm/utility-types/utility-types.js +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3 -2
- package/dist/utility-types/utility-types.d.ts +33 -0
- package/dist/utility-types/utility-types.js +2 -0
- package/package.json +1 -1
- package/src/index.ts +4 -4
- package/src/utility-types/utility-types.ts +69 -0
package/README.md
CHANGED
|
@@ -21,6 +21,7 @@ npm i feathers-utils
|
|
|
21
21
|
|
|
22
22
|
- `checkMulti`: throws if the request is **multi** data, but the service has `allowsMulti(method)` returns `false`
|
|
23
23
|
- `createRelated`: simply create related items from a hook.
|
|
24
|
+
- `onDelete`: simply remove/set null related items from a hook.
|
|
24
25
|
- `removeRelated`: simple remove related items from a hook. Basically `cascade` at feathers level.
|
|
25
26
|
- `runPerItem`: run a function for every item. Meant for `multi:true`.
|
|
26
27
|
- `setData`: map properties from `context` to `data`. Something like `userId: context.params.user.id`
|
package/dist/esm/index.d.ts
CHANGED
package/dist/esm/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import { runPerItem } from "./hooks/runPerItem";
|
|
|
5
5
|
export const hooks = {
|
|
6
6
|
checkMulti,
|
|
7
7
|
setData,
|
|
8
|
-
runPerItem
|
|
8
|
+
runPerItem,
|
|
9
9
|
};
|
|
10
10
|
export { checkMulti };
|
|
11
11
|
export { createRelated } from "./hooks/createRelated";
|
|
@@ -15,7 +15,7 @@ export { runPerItem };
|
|
|
15
15
|
import { debounceMixin, DebouncedStore } from "./mixins/debounce-mixin";
|
|
16
16
|
export const mixins = {
|
|
17
17
|
debounceMixin,
|
|
18
|
-
DebouncedStore
|
|
18
|
+
DebouncedStore,
|
|
19
19
|
};
|
|
20
20
|
export { debounceMixin };
|
|
21
21
|
export { DebouncedStore };
|
|
@@ -33,3 +33,4 @@ export { getItemsIsArray } from "./utils/getItemsIsArray";
|
|
|
33
33
|
export { onDelete } from "./hooks/onDelete";
|
|
34
34
|
export { shouldSkip } from "./utils/shouldSkip";
|
|
35
35
|
export * from "./types";
|
|
36
|
+
export * from "./utility-types/utility-types";
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export declare type InferCreateData<S> = S extends {
|
|
2
|
+
create: (data: infer D, params: any) => any;
|
|
3
|
+
} ? D : never;
|
|
4
|
+
export declare type InferCreateDataSingle<S> = S extends {
|
|
5
|
+
create: (data: infer D, params: any) => any;
|
|
6
|
+
} ? D extends Array<infer T> ? T : D : never;
|
|
7
|
+
export declare type InferUpdateData<S> = S extends {
|
|
8
|
+
update: (id: any, data: infer D, params: any) => any;
|
|
9
|
+
} ? D : never;
|
|
10
|
+
export declare type InferPatchData<S> = S extends {
|
|
11
|
+
patch: (id: any, data: infer D, params: any) => any;
|
|
12
|
+
} ? D : never;
|
|
13
|
+
export declare type InferGetResult<S> = S extends {
|
|
14
|
+
get: (id: any, params: any) => infer R;
|
|
15
|
+
} ? Awaited<R> : never;
|
|
16
|
+
export declare type InferFindResult<S> = S extends {
|
|
17
|
+
find: (params: any) => infer R;
|
|
18
|
+
} ? Awaited<R> : never;
|
|
19
|
+
export declare type InferCreateResult<S, D = any> = S extends {
|
|
20
|
+
create: (data: D, params: any) => infer R;
|
|
21
|
+
} ? Awaited<R> : never;
|
|
22
|
+
export declare type InferCreateResultSingle<S> = S extends {
|
|
23
|
+
create: (data: any, params: any) => infer R;
|
|
24
|
+
} ? Awaited<R> extends Array<infer T> ? T : Awaited<R> : never;
|
|
25
|
+
export declare type InferUpdateResult<S> = S extends {
|
|
26
|
+
update: (id: any, data: any, params: any) => infer R;
|
|
27
|
+
} ? Awaited<R> : never;
|
|
28
|
+
export declare type InferPatchResult<S, Id = any> = S extends {
|
|
29
|
+
patch: (id: Id, data: any, params: any) => infer R;
|
|
30
|
+
} ? Awaited<R> : never;
|
|
31
|
+
export declare type InferRemoveResult<S, Id = any> = S extends {
|
|
32
|
+
remove: (id: Id, params: any) => infer R;
|
|
33
|
+
} ? Awaited<R> : never;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -25,7 +25,7 @@ Object.defineProperty(exports, "runPerItem", { enumerable: true, get: function (
|
|
|
25
25
|
exports.hooks = {
|
|
26
26
|
checkMulti: checkMulti_1.checkMulti,
|
|
27
27
|
setData: setData_1.setData,
|
|
28
|
-
runPerItem: runPerItem_1.runPerItem
|
|
28
|
+
runPerItem: runPerItem_1.runPerItem,
|
|
29
29
|
};
|
|
30
30
|
var createRelated_1 = require("./hooks/createRelated");
|
|
31
31
|
Object.defineProperty(exports, "createRelated", { enumerable: true, get: function () { return createRelated_1.createRelated; } });
|
|
@@ -36,7 +36,7 @@ Object.defineProperty(exports, "debounceMixin", { enumerable: true, get: functio
|
|
|
36
36
|
Object.defineProperty(exports, "DebouncedStore", { enumerable: true, get: function () { return debounce_mixin_1.DebouncedStore; } });
|
|
37
37
|
exports.mixins = {
|
|
38
38
|
debounceMixin: debounce_mixin_1.debounceMixin,
|
|
39
|
-
DebouncedStore: debounce_mixin_1.DebouncedStore
|
|
39
|
+
DebouncedStore: debounce_mixin_1.DebouncedStore,
|
|
40
40
|
};
|
|
41
41
|
var addHook_1 = require("./utils/addHook");
|
|
42
42
|
Object.defineProperty(exports, "addHook", { enumerable: true, get: function () { return addHook_1.addHook; } });
|
|
@@ -65,3 +65,4 @@ Object.defineProperty(exports, "onDelete", { enumerable: true, get: function ()
|
|
|
65
65
|
var shouldSkip_1 = require("./utils/shouldSkip");
|
|
66
66
|
Object.defineProperty(exports, "shouldSkip", { enumerable: true, get: function () { return shouldSkip_1.shouldSkip; } });
|
|
67
67
|
__exportStar(require("./types"), exports);
|
|
68
|
+
__exportStar(require("./utility-types/utility-types"), exports);
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export declare type InferCreateData<S> = S extends {
|
|
2
|
+
create: (data: infer D, params: any) => any;
|
|
3
|
+
} ? D : never;
|
|
4
|
+
export declare type InferCreateDataSingle<S> = S extends {
|
|
5
|
+
create: (data: infer D, params: any) => any;
|
|
6
|
+
} ? D extends Array<infer T> ? T : D : never;
|
|
7
|
+
export declare type InferUpdateData<S> = S extends {
|
|
8
|
+
update: (id: any, data: infer D, params: any) => any;
|
|
9
|
+
} ? D : never;
|
|
10
|
+
export declare type InferPatchData<S> = S extends {
|
|
11
|
+
patch: (id: any, data: infer D, params: any) => any;
|
|
12
|
+
} ? D : never;
|
|
13
|
+
export declare type InferGetResult<S> = S extends {
|
|
14
|
+
get: (id: any, params: any) => infer R;
|
|
15
|
+
} ? Awaited<R> : never;
|
|
16
|
+
export declare type InferFindResult<S> = S extends {
|
|
17
|
+
find: (params: any) => infer R;
|
|
18
|
+
} ? Awaited<R> : never;
|
|
19
|
+
export declare type InferCreateResult<S, D = any> = S extends {
|
|
20
|
+
create: (data: D, params: any) => infer R;
|
|
21
|
+
} ? Awaited<R> : never;
|
|
22
|
+
export declare type InferCreateResultSingle<S> = S extends {
|
|
23
|
+
create: (data: any, params: any) => infer R;
|
|
24
|
+
} ? Awaited<R> extends Array<infer T> ? T : Awaited<R> : never;
|
|
25
|
+
export declare type InferUpdateResult<S> = S extends {
|
|
26
|
+
update: (id: any, data: any, params: any) => infer R;
|
|
27
|
+
} ? Awaited<R> : never;
|
|
28
|
+
export declare type InferPatchResult<S, Id = any> = S extends {
|
|
29
|
+
patch: (id: Id, data: any, params: any) => infer R;
|
|
30
|
+
} ? Awaited<R> : never;
|
|
31
|
+
export declare type InferRemoveResult<S, Id = any> = S extends {
|
|
32
|
+
remove: (id: Id, params: any) => infer R;
|
|
33
|
+
} ? Awaited<R> : never;
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { runPerItem } from "./hooks/runPerItem";
|
|
|
7
7
|
export const hooks = {
|
|
8
8
|
checkMulti,
|
|
9
9
|
setData,
|
|
10
|
-
runPerItem
|
|
10
|
+
runPerItem,
|
|
11
11
|
};
|
|
12
12
|
|
|
13
13
|
export { checkMulti };
|
|
@@ -20,7 +20,7 @@ import { debounceMixin, DebouncedStore } from "./mixins/debounce-mixin";
|
|
|
20
20
|
|
|
21
21
|
export const mixins = {
|
|
22
22
|
debounceMixin,
|
|
23
|
-
DebouncedStore
|
|
23
|
+
DebouncedStore,
|
|
24
24
|
};
|
|
25
25
|
|
|
26
26
|
export { debounceMixin };
|
|
@@ -41,5 +41,5 @@ export { getItemsIsArray } from "./utils/getItemsIsArray";
|
|
|
41
41
|
export { onDelete } from "./hooks/onDelete";
|
|
42
42
|
export { shouldSkip } from "./utils/shouldSkip";
|
|
43
43
|
|
|
44
|
-
|
|
45
|
-
export * from "./types";
|
|
44
|
+
export * from "./types";
|
|
45
|
+
export * from "./utility-types/utility-types";
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
export type InferCreateData<S> = S extends {
|
|
2
|
+
create: (data: infer D, params: any) => any;
|
|
3
|
+
}
|
|
4
|
+
? D
|
|
5
|
+
: never;
|
|
6
|
+
|
|
7
|
+
export type InferCreateDataSingle<S> = S extends {
|
|
8
|
+
create: (data: infer D, params: any) => any;
|
|
9
|
+
}
|
|
10
|
+
? D extends Array<infer T>
|
|
11
|
+
? T
|
|
12
|
+
: D
|
|
13
|
+
: never;
|
|
14
|
+
|
|
15
|
+
export type InferUpdateData<S> = S extends {
|
|
16
|
+
update: (id: any, data: infer D, params: any) => any;
|
|
17
|
+
}
|
|
18
|
+
? D
|
|
19
|
+
: never;
|
|
20
|
+
|
|
21
|
+
export type InferPatchData<S> = S extends {
|
|
22
|
+
patch: (id: any, data: infer D, params: any) => any;
|
|
23
|
+
}
|
|
24
|
+
? D
|
|
25
|
+
: never;
|
|
26
|
+
|
|
27
|
+
export type InferGetResult<S> = S extends {
|
|
28
|
+
get: (id: any, params: any) => infer R;
|
|
29
|
+
}
|
|
30
|
+
? Awaited<R>
|
|
31
|
+
: never;
|
|
32
|
+
|
|
33
|
+
export type InferFindResult<S> = S extends {
|
|
34
|
+
find: (params: any) => infer R;
|
|
35
|
+
}
|
|
36
|
+
? Awaited<R>
|
|
37
|
+
: never;
|
|
38
|
+
|
|
39
|
+
export type InferCreateResult<S, D = any> = S extends {
|
|
40
|
+
create: (data: D, params: any) => infer R;
|
|
41
|
+
}
|
|
42
|
+
? Awaited<R>
|
|
43
|
+
: never;
|
|
44
|
+
|
|
45
|
+
export type InferCreateResultSingle<S> = S extends {
|
|
46
|
+
create: (data: any, params: any) => infer R;
|
|
47
|
+
}
|
|
48
|
+
? Awaited<R> extends Array<infer T>
|
|
49
|
+
? T
|
|
50
|
+
: Awaited<R>
|
|
51
|
+
: never;
|
|
52
|
+
|
|
53
|
+
export type InferUpdateResult<S> = S extends {
|
|
54
|
+
update: (id: any, data: any, params: any) => infer R;
|
|
55
|
+
}
|
|
56
|
+
? Awaited<R>
|
|
57
|
+
: never;
|
|
58
|
+
|
|
59
|
+
export type InferPatchResult<S, Id = any> = S extends {
|
|
60
|
+
patch: (id: Id, data: any, params: any) => infer R;
|
|
61
|
+
}
|
|
62
|
+
? Awaited<R>
|
|
63
|
+
: never;
|
|
64
|
+
|
|
65
|
+
export type InferRemoveResult<S, Id = any> = S extends {
|
|
66
|
+
remove: (id: Id, params: any) => infer R;
|
|
67
|
+
}
|
|
68
|
+
? Awaited<R>
|
|
69
|
+
: never;
|