@data-client/rest 0.14.0 → 0.14.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.
@@ -19,9 +19,9 @@ const { Invalidate, Collection: BaseCollection } = schema;
19
19
 
20
20
  /** Creates collection of Endpoints for common operations on a given data/schema.
21
21
  *
22
- * @see https://dataclient.io/rest/api/createResource
22
+ * @see https://dataclient.io/rest/api/resource
23
23
  */
24
- export default function createResource<O extends ResourceGenerics>({
24
+ export default function resource<O extends ResourceGenerics>({
25
25
  path,
26
26
  schema,
27
27
  Endpoint = RestEndpoint,
@@ -44,7 +44,7 @@ export default function createResource<O extends ResourceGenerics>({
44
44
  ) {
45
45
  console.warn(
46
46
  `You passed 'endpoint' option; did you mean to use Endpoint?
47
- https://dataclient.io/rest/api/createResource#endpoint
47
+ https://dataclient.io/rest/api/resource#endpoint
48
48
  This parameter must be capitalized.
49
49
 
50
50
  This warning will not show in production.`,
@@ -63,7 +63,7 @@ This warning will not show in production.`,
63
63
  ) {
64
64
  console.warn(
65
65
  `You passed 'collection' option; did you mean to use Collection?
66
- https://dataclient.io/rest/api/createResource#collection
66
+ https://dataclient.io/rest/api/resource#collection
67
67
  This parameter must be capitalized.
68
68
 
69
69
  This warning will not show in production.`,
@@ -27,7 +27,7 @@ export interface Extendable<
27
27
  > {
28
28
  /** Allows customizing individual endpoints
29
29
  *
30
- * @see https://dataclient.io/rest/api/createResource#extend
30
+ * @see https://dataclient.io/rest/api/resource#extend
31
31
  */
32
32
  extend<
33
33
  R extends {
@@ -19,31 +19,31 @@ import RestEndpoint, {
19
19
 
20
20
  /** The typed (generic) options for a Resource
21
21
  *
22
- * @see https://dataclient.io/rest/api/createResource#function-inheritance-patterns
22
+ * @see https://dataclient.io/rest/api/resource#function-inheritance-patterns
23
23
  */
24
24
  export interface ResourceGenerics {
25
- /** @see https://dataclient.io/rest/api/createResource#path */
25
+ /** @see https://dataclient.io/rest/api/resource#path */
26
26
  readonly path: ResourcePath;
27
- /** @see https://dataclient.io/rest/api/createResource#schema */
27
+ /** @see https://dataclient.io/rest/api/resource#schema */
28
28
  readonly schema: Schema;
29
29
  /** Only used for types */
30
- /** @see https://dataclient.io/rest/api/createResource#body */
30
+ /** @see https://dataclient.io/rest/api/resource#body */
31
31
  readonly body?: any;
32
32
  /** Only used for types */
33
- /** @see https://dataclient.io/rest/api/createResource#searchParams */
33
+ /** @see https://dataclient.io/rest/api/resource#searchParams */
34
34
  readonly searchParams?: any;
35
- /** @see https://dataclient.io/rest/api/createResource#paginationfield */
35
+ /** @see https://dataclient.io/rest/api/resource#paginationfield */
36
36
  readonly paginationField?: string;
37
37
  }
38
- /** The untyped options for createResource() */
38
+ /** The untyped options for resource() */
39
39
  export interface ResourceOptions {
40
- /** @see https://dataclient.io/rest/api/createResource#endpoint */
40
+ /** @see https://dataclient.io/rest/api/resource#endpoint */
41
41
  Endpoint?: typeof RestEndpoint;
42
- /** @see https://dataclient.io/rest/api/createResource#collection */
42
+ /** @see https://dataclient.io/rest/api/resource#collection */
43
43
  Collection?: typeof Collection;
44
- /** @see https://dataclient.io/rest/api/createResource#optimistic */
44
+ /** @see https://dataclient.io/rest/api/resource#optimistic */
45
45
  optimistic?: boolean;
46
- /** @see https://dataclient.io/rest/api/createResource#urlprefix */
46
+ /** @see https://dataclient.io/rest/api/resource#urlprefix */
47
47
  urlPrefix?: string;
48
48
  requestInit?: RequestInit;
49
49
  getHeaders?(headers: HeadersInit): Promise<HeadersInit> | HeadersInit;
@@ -63,19 +63,19 @@ export interface ResourceOptions {
63
63
  }
64
64
 
65
65
  /** Resources are a collection of methods for a given data model.
66
- * @see https://dataclient.io/rest/api/createResource
66
+ * @see https://dataclient.io/rest/api/resource
67
67
  */
68
68
  export interface Resource<
69
69
  O extends ResourceGenerics = { path: ResourcePath; schema: any },
70
70
  > extends Extendable<O> {
71
71
  /** Get one item (GET)
72
72
  *
73
- * @see https://dataclient.io/rest/api/createResource#get
73
+ * @see https://dataclient.io/rest/api/resource#get
74
74
  */
75
75
  get: GetEndpoint<{ path: O['path']; schema: O['schema'] }>;
76
76
  /** Get an Array of items (GET)
77
77
  *
78
- * @see https://dataclient.io/rest/api/createResource#getlist
78
+ * @see https://dataclient.io/rest/api/resource#getlist
79
79
  */
80
80
  getList: 'searchParams' extends keyof O ?
81
81
  GetEndpoint<
@@ -129,7 +129,7 @@ export interface Resource<
129
129
  }>;
130
130
  /** Update an item (PUT)
131
131
  *
132
- * @see https://dataclient.io/rest/api/createResource#update
132
+ * @see https://dataclient.io/rest/api/resource#update
133
133
  */
134
134
  update: 'body' extends keyof O ?
135
135
  MutateEndpoint<{
@@ -144,7 +144,7 @@ export interface Resource<
144
144
  }>;
145
145
  /** Update an item (PATCH)
146
146
  *
147
- * @see https://dataclient.io/rest/api/createResource#partialupdate
147
+ * @see https://dataclient.io/rest/api/resource#partialupdate
148
148
  */
149
149
  partialUpdate: 'body' extends keyof O ?
150
150
  MutateEndpoint<{
@@ -159,7 +159,7 @@ export interface Resource<
159
159
  }>;
160
160
  /** Delete an item (DELETE)
161
161
  *
162
- * @see https://dataclient.io/rest/api/createResource#delete
162
+ * @see https://dataclient.io/rest/api/resource#delete
163
163
  */
164
164
  delete: RestTypeNoBody<
165
165
  PathArgs<O['path']>,
package/ts4.0/index.d.ts CHANGED
@@ -2,7 +2,8 @@ export { default as RestEndpoint } from './RestEndpoint.js';
2
2
  export type { GetEndpoint, MutateEndpoint, Defaults, RestGenerics, FetchGet, FetchMutate, RestFetch, RestType, RestInstance, KeyofRestEndpoint, RestEndpointConstructorOptions, AddEndpoint, PaginationFieldEndpoint, PaginationEndpoint, } from './RestEndpoint.js';
3
3
  export type { RestEndpoint as IRestEndpoint } from './RestEndpointTypes.js';
4
4
  export { getUrlBase, getUrlTokens } from './RestHelpers.js';
5
- export { default as createResource } from './createResource.js';
5
+ export { default as resource } from './resource.js';
6
+ export { default as createResource } from './resource.js';
6
7
  export type { Resource } from './resourceTypes.js';
7
8
  export type { ResourceOptions, ResourceGenerics } from './resourceTypes.js';
8
9
  export type { ResourceExtension, ResourceEndpointExtensions, CustomResource, ExtendedResource, } from './resourceExtensionTypes.js';
@@ -0,0 +1,7 @@
1
+ import { ResourceGenerics, ResourceOptions, Resource } from './resourceTypes.js';
2
+ /** Creates collection of Endpoints for common operations on a given data/schema.
3
+ *
4
+ * @see https://dataclient.io/rest/api/resource
5
+ */
6
+ export default function resource<O extends ResourceGenerics>({ path, schema, Endpoint, Collection, optimistic, paginationField, ...extraOptions }: Readonly<O> & ResourceOptions): Resource<O>;
7
+ //# sourceMappingURL=resource.d.ts.map
@@ -6,31 +6,31 @@ import { Extendable } from './resourceExtendable.js';
6
6
  import RestEndpoint, { GetEndpoint, MutateEndpoint, ParamToArgs, RestInstanceBase, RestTypeNoBody } from './RestEndpoint.js';
7
7
  /** The typed (generic) options for a Resource
8
8
  *
9
- * @see https://dataclient.io/rest/api/createResource#function-inheritance-patterns
9
+ * @see https://dataclient.io/rest/api/resource#function-inheritance-patterns
10
10
  */
11
11
  export interface ResourceGenerics {
12
- /** @see https://dataclient.io/rest/api/createResource#path */
12
+ /** @see https://dataclient.io/rest/api/resource#path */
13
13
  readonly path: ResourcePath;
14
- /** @see https://dataclient.io/rest/api/createResource#schema */
14
+ /** @see https://dataclient.io/rest/api/resource#schema */
15
15
  readonly schema: Schema;
16
16
  /** Only used for types */
17
- /** @see https://dataclient.io/rest/api/createResource#body */
17
+ /** @see https://dataclient.io/rest/api/resource#body */
18
18
  readonly body?: any;
19
19
  /** Only used for types */
20
- /** @see https://dataclient.io/rest/api/createResource#searchParams */
20
+ /** @see https://dataclient.io/rest/api/resource#searchParams */
21
21
  readonly searchParams?: any;
22
- /** @see https://dataclient.io/rest/api/createResource#paginationfield */
22
+ /** @see https://dataclient.io/rest/api/resource#paginationfield */
23
23
  readonly paginationField?: string;
24
24
  }
25
- /** The untyped options for createResource() */
25
+ /** The untyped options for resource() */
26
26
  export interface ResourceOptions {
27
- /** @see https://dataclient.io/rest/api/createResource#endpoint */
27
+ /** @see https://dataclient.io/rest/api/resource#endpoint */
28
28
  Endpoint?: typeof RestEndpoint;
29
- /** @see https://dataclient.io/rest/api/createResource#collection */
29
+ /** @see https://dataclient.io/rest/api/resource#collection */
30
30
  Collection?: typeof Collection;
31
- /** @see https://dataclient.io/rest/api/createResource#optimistic */
31
+ /** @see https://dataclient.io/rest/api/resource#optimistic */
32
32
  optimistic?: boolean;
33
- /** @see https://dataclient.io/rest/api/createResource#urlprefix */
33
+ /** @see https://dataclient.io/rest/api/resource#urlprefix */
34
34
  urlPrefix?: string;
35
35
  requestInit?: RequestInit;
36
36
  getHeaders?(headers: HeadersInit): Promise<HeadersInit> | HeadersInit;
@@ -49,7 +49,7 @@ export interface ResourceOptions {
49
49
  errorPolicy?(error: any): 'hard' | 'soft' | undefined;
50
50
  }
51
51
  /** Resources are a collection of methods for a given data model.
52
- * @see https://dataclient.io/rest/api/createResource
52
+ * @see https://dataclient.io/rest/api/resource
53
53
  */
54
54
  export interface Resource<O extends ResourceGenerics = {
55
55
  path: ResourcePath;
@@ -57,7 +57,7 @@ export interface Resource<O extends ResourceGenerics = {
57
57
  }> extends Extendable<O> {
58
58
  /** Get one item (GET)
59
59
  *
60
- * @see https://dataclient.io/rest/api/createResource#get
60
+ * @see https://dataclient.io/rest/api/resource#get
61
61
  */
62
62
  get: GetEndpoint<{
63
63
  path: O['path'];
@@ -65,7 +65,7 @@ export interface Resource<O extends ResourceGenerics = {
65
65
  }>;
66
66
  /** Get an Array of items (GET)
67
67
  *
68
- * @see https://dataclient.io/rest/api/createResource#getlist
68
+ * @see https://dataclient.io/rest/api/resource#getlist
69
69
  */
70
70
  getList: 'searchParams' extends keyof O ? GetEndpoint<{
71
71
  path: ShortenPath<O['path']>;
@@ -102,7 +102,7 @@ export interface Resource<O extends ResourceGenerics = {
102
102
  }>;
103
103
  /** Update an item (PUT)
104
104
  *
105
- * @see https://dataclient.io/rest/api/createResource#update
105
+ * @see https://dataclient.io/rest/api/resource#update
106
106
  */
107
107
  update: 'body' extends keyof O ? MutateEndpoint<{
108
108
  path: O['path'];
@@ -115,7 +115,7 @@ export interface Resource<O extends ResourceGenerics = {
115
115
  }>;
116
116
  /** Update an item (PATCH)
117
117
  *
118
- * @see https://dataclient.io/rest/api/createResource#partialupdate
118
+ * @see https://dataclient.io/rest/api/resource#partialupdate
119
119
  */
120
120
  partialUpdate: 'body' extends keyof O ? MutateEndpoint<{
121
121
  path: O['path'];
@@ -128,7 +128,7 @@ export interface Resource<O extends ResourceGenerics = {
128
128
  }>;
129
129
  /** Delete an item (DELETE)
130
130
  *
131
- * @see https://dataclient.io/rest/api/createResource#delete
131
+ * @see https://dataclient.io/rest/api/resource#delete
132
132
  */
133
133
  delete: RestTypeNoBody<PathArgs<O['path']>, O['schema'] extends schema.EntityInterface & {
134
134
  process: any;
package/ts4.1/index.d.ts CHANGED
@@ -2,7 +2,8 @@ export { default as RestEndpoint } from './RestEndpoint.js';
2
2
  export type { GetEndpoint, MutateEndpoint, Defaults, RestGenerics, FetchGet, FetchMutate, RestFetch, RestType, RestInstance, KeyofRestEndpoint, RestEndpointConstructorOptions, AddEndpoint, PaginationFieldEndpoint, PaginationEndpoint, } from './RestEndpoint.js';
3
3
  export type { RestEndpoint as IRestEndpoint } from './RestEndpointTypes.js';
4
4
  export { getUrlBase, getUrlTokens } from './RestHelpers.js';
5
- export { default as createResource } from './createResource.js';
5
+ export { default as resource } from './resource.js';
6
+ export { default as createResource } from './resource.js';
6
7
  export type { Resource } from './resourceTypes.js';
7
8
  export type { ResourceOptions, ResourceGenerics } from './resourceTypes.js';
8
9
  export type { ResourceExtension, ResourceEndpointExtensions, CustomResource, ExtendedResource, } from './resourceExtensionTypes.js';
@@ -0,0 +1,7 @@
1
+ import { ResourceGenerics, ResourceOptions, Resource } from './resourceTypes.js';
2
+ /** Creates collection of Endpoints for common operations on a given data/schema.
3
+ *
4
+ * @see https://dataclient.io/rest/api/resource
5
+ */
6
+ export default function resource<O extends ResourceGenerics>({ path, schema, Endpoint, Collection, optimistic, paginationField, ...extraOptions }: Readonly<O> & ResourceOptions): Resource<O>;
7
+ //# sourceMappingURL=resource.d.ts.map
@@ -6,31 +6,31 @@ import { Extendable } from './resourceExtendable.js';
6
6
  import RestEndpoint, { GetEndpoint, MutateEndpoint, ParamToArgs, RestInstanceBase, RestTypeNoBody } from './RestEndpoint.js';
7
7
  /** The typed (generic) options for a Resource
8
8
  *
9
- * @see https://dataclient.io/rest/api/createResource#function-inheritance-patterns
9
+ * @see https://dataclient.io/rest/api/resource#function-inheritance-patterns
10
10
  */
11
11
  export interface ResourceGenerics {
12
- /** @see https://dataclient.io/rest/api/createResource#path */
12
+ /** @see https://dataclient.io/rest/api/resource#path */
13
13
  readonly path: ResourcePath;
14
- /** @see https://dataclient.io/rest/api/createResource#schema */
14
+ /** @see https://dataclient.io/rest/api/resource#schema */
15
15
  readonly schema: Schema;
16
16
  /** Only used for types */
17
- /** @see https://dataclient.io/rest/api/createResource#body */
17
+ /** @see https://dataclient.io/rest/api/resource#body */
18
18
  readonly body?: any;
19
19
  /** Only used for types */
20
- /** @see https://dataclient.io/rest/api/createResource#searchParams */
20
+ /** @see https://dataclient.io/rest/api/resource#searchParams */
21
21
  readonly searchParams?: any;
22
- /** @see https://dataclient.io/rest/api/createResource#paginationfield */
22
+ /** @see https://dataclient.io/rest/api/resource#paginationfield */
23
23
  readonly paginationField?: string;
24
24
  }
25
- /** The untyped options for createResource() */
25
+ /** The untyped options for resource() */
26
26
  export interface ResourceOptions {
27
- /** @see https://dataclient.io/rest/api/createResource#endpoint */
27
+ /** @see https://dataclient.io/rest/api/resource#endpoint */
28
28
  Endpoint?: typeof RestEndpoint;
29
- /** @see https://dataclient.io/rest/api/createResource#collection */
29
+ /** @see https://dataclient.io/rest/api/resource#collection */
30
30
  Collection?: typeof Collection;
31
- /** @see https://dataclient.io/rest/api/createResource#optimistic */
31
+ /** @see https://dataclient.io/rest/api/resource#optimistic */
32
32
  optimistic?: boolean;
33
- /** @see https://dataclient.io/rest/api/createResource#urlprefix */
33
+ /** @see https://dataclient.io/rest/api/resource#urlprefix */
34
34
  urlPrefix?: string;
35
35
  requestInit?: RequestInit;
36
36
  getHeaders?(headers: HeadersInit): Promise<HeadersInit> | HeadersInit;
@@ -49,7 +49,7 @@ export interface ResourceOptions {
49
49
  errorPolicy?(error: any): 'hard' | 'soft' | undefined;
50
50
  }
51
51
  /** Resources are a collection of methods for a given data model.
52
- * @see https://dataclient.io/rest/api/createResource
52
+ * @see https://dataclient.io/rest/api/resource
53
53
  */
54
54
  export interface Resource<O extends ResourceGenerics = {
55
55
  path: ResourcePath;
@@ -57,7 +57,7 @@ export interface Resource<O extends ResourceGenerics = {
57
57
  }> extends Extendable<O> {
58
58
  /** Get one item (GET)
59
59
  *
60
- * @see https://dataclient.io/rest/api/createResource#get
60
+ * @see https://dataclient.io/rest/api/resource#get
61
61
  */
62
62
  get: GetEndpoint<{
63
63
  path: O['path'];
@@ -65,7 +65,7 @@ export interface Resource<O extends ResourceGenerics = {
65
65
  }>;
66
66
  /** Get an Array of items (GET)
67
67
  *
68
- * @see https://dataclient.io/rest/api/createResource#getlist
68
+ * @see https://dataclient.io/rest/api/resource#getlist
69
69
  */
70
70
  getList: 'searchParams' extends keyof O ? GetEndpoint<{
71
71
  path: ShortenPath<O['path']>;
@@ -102,7 +102,7 @@ export interface Resource<O extends ResourceGenerics = {
102
102
  }>;
103
103
  /** Update an item (PUT)
104
104
  *
105
- * @see https://dataclient.io/rest/api/createResource#update
105
+ * @see https://dataclient.io/rest/api/resource#update
106
106
  */
107
107
  update: 'body' extends keyof O ? MutateEndpoint<{
108
108
  path: O['path'];
@@ -115,7 +115,7 @@ export interface Resource<O extends ResourceGenerics = {
115
115
  }>;
116
116
  /** Update an item (PATCH)
117
117
  *
118
- * @see https://dataclient.io/rest/api/createResource#partialupdate
118
+ * @see https://dataclient.io/rest/api/resource#partialupdate
119
119
  */
120
120
  partialUpdate: 'body' extends keyof O ? MutateEndpoint<{
121
121
  path: O['path'];
@@ -128,7 +128,7 @@ export interface Resource<O extends ResourceGenerics = {
128
128
  }>;
129
129
  /** Delete an item (DELETE)
130
130
  *
131
- * @see https://dataclient.io/rest/api/createResource#delete
131
+ * @see https://dataclient.io/rest/api/resource#delete
132
132
  */
133
133
  delete: RestTypeNoBody<PathArgs<O['path']>, O['schema'] extends schema.EntityInterface & {
134
134
  process: any;
@@ -1,140 +0,0 @@
1
- import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
2
- const _excluded = ["path", "schema", "Endpoint", "Collection", "optimistic", "paginationField"];
3
- import { schema } from '@data-client/endpoint';
4
- import RestEndpoint from './RestEndpoint.js';
5
- import { shortenPath } from './RestHelpers.js';
6
- const {
7
- Invalidate,
8
- Collection: BaseCollection
9
- } = schema;
10
-
11
- /** Creates collection of Endpoints for common operations on a given data/schema.
12
- *
13
- * @see https://dataclient.io/rest/api/createResource
14
- */
15
- export default function createResource(_ref) {
16
- let {
17
- path,
18
- schema,
19
- Endpoint = RestEndpoint,
20
- Collection = BaseCollection,
21
- optimistic,
22
- paginationField
23
- } = _ref,
24
- extraOptions = _objectWithoutPropertiesLoose(_ref, _excluded);
25
- if (process.env.NODE_ENV !== 'production') {
26
- // if they lowercase and it looks like they meant to use upper-case version
27
- if ('endpoint' in extraOptions && Endpoint === RestEndpoint && typeof extraOptions['endpoint'] === 'function' && extraOptions['endpoint'] && Object.prototype.isPrototypeOf.call(RestEndpoint.prototype, extraOptions['endpoint'].prototype)) {
28
- console.warn(`You passed 'endpoint' option; did you mean to use Endpoint?
29
- https://dataclient.io/rest/api/createResource#endpoint
30
- This parameter must be capitalized.
31
-
32
- This warning will not show in production.`);
33
- }
34
- // if they lowercase and it looks like they meant to use upper-case version
35
- if ('collection' in extraOptions && Collection === BaseCollection && typeof extraOptions['collection'] === 'function' && extraOptions['collection'] && Object.prototype.isPrototypeOf.call(BaseCollection.prototype, extraOptions['collection'].prototype)) {
36
- console.warn(`You passed 'collection' option; did you mean to use Collection?
37
- https://dataclient.io/rest/api/createResource#collection
38
- This parameter must be capitalized.
39
-
40
- This warning will not show in production.`);
41
- }
42
- }
43
- const shortenedPath = shortenPath(path);
44
- const getName = name => `${schema == null ? void 0 : schema.name}.${name}`;
45
- // this accounts for derivative endpoints
46
- function extendMember(extended, key, options) {
47
- extended[key] = extended[key].extend(options);
48
- }
49
- const extraMutateOptions = Object.assign({}, extraOptions);
50
- const extraPartialOptions = Object.assign({}, extraOptions);
51
- const get = new Endpoint(Object.assign({}, extraOptions, {
52
- path,
53
- schema,
54
- name: getName('get')
55
- }));
56
- if (optimistic) {
57
- extraMutateOptions.getOptimisticResponse = optimisticUpdate;
58
- // TODO: Check that schema is a queryable, otherwise this doesn't make sense
59
- extraPartialOptions.getOptimisticResponse = optimisticPartial(schema);
60
- }
61
- const getList = new Endpoint(Object.assign({}, extraMutateOptions, {
62
- paginationField: paginationField,
63
- path: shortenedPath,
64
- schema: new Collection([schema]),
65
- name: getName('getList')
66
- }));
67
- const ret = {
68
- get,
69
- getList,
70
- // TODO(deprecated): remove this once we remove creates
71
- create: getList.push.extend({
72
- name: getName('create')
73
- }),
74
- update: new Endpoint(Object.assign({}, extraMutateOptions, {
75
- path,
76
- schema,
77
- method: 'PUT',
78
- name: getName('update')
79
- })),
80
- partialUpdate: new Endpoint(Object.assign({}, extraPartialOptions, {
81
- path,
82
- schema,
83
- method: 'PATCH',
84
- name: getName('partialUpdate')
85
- })),
86
- delete: new Endpoint(Object.assign({}, extraMutateOptions, {
87
- path,
88
- schema: schema.process ? new Invalidate(schema) : schema,
89
- method: 'DELETE',
90
- name: getName('delete'),
91
- process(res, params) {
92
- return res && Object.keys(res).length ? res : params;
93
- },
94
- getOptimisticResponse: optimistic ? optimisticDelete : undefined
95
- })),
96
- extend(...args) {
97
- if (typeof args[0] === 'string') {
98
- const [key, options] = args;
99
- if (key in this) {
100
- const extended = Object.assign({}, this);
101
- extendMember(extended, key, options);
102
- return extended;
103
- } else {
104
- return Object.assign({}, this, {
105
- [key]: this.get.extend(options)
106
- });
107
- }
108
- } else if (typeof args[0] === 'function') {
109
- const extended = args[0](this);
110
- return Object.assign({}, this, extended);
111
- }
112
- const overrides = args[0];
113
- const extended = Object.assign({}, this);
114
- for (const key in overrides) {
115
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
116
- // @ts-ignore
117
- extendMember(extended, key, overrides[key]);
118
- }
119
- return extended;
120
- }
121
- };
122
- return ret;
123
- }
124
- function optimisticUpdate(snap, params, body) {
125
- return Object.assign({}, params, ensurePojo(body));
126
- }
127
- function optimisticPartial(schema) {
128
- return function (snap, params, body) {
129
- const data = snap.get(schema, params);
130
- if (!data) throw snap.abort;
131
- return Object.assign({}, params, data, ensurePojo(body));
132
- };
133
- }
134
- function optimisticDelete(snap, params) {
135
- return params;
136
- }
137
- function ensurePojo(body) {
138
- return body instanceof FormData ? Object.fromEntries(body.entries()) : body;
139
- }
140
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzY2hlbWEiLCJSZXN0RW5kcG9pbnQiLCJzaG9ydGVuUGF0aCIsIkludmFsaWRhdGUiLCJDb2xsZWN0aW9uIiwiQmFzZUNvbGxlY3Rpb24iLCJjcmVhdGVSZXNvdXJjZSIsIl9yZWYiLCJwYXRoIiwiRW5kcG9pbnQiLCJvcHRpbWlzdGljIiwicGFnaW5hdGlvbkZpZWxkIiwiZXh0cmFPcHRpb25zIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UiLCJfZXhjbHVkZWQiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJpc1Byb3RvdHlwZU9mIiwiY2FsbCIsImNvbnNvbGUiLCJ3YXJuIiwic2hvcnRlbmVkUGF0aCIsImdldE5hbWUiLCJuYW1lIiwiZXh0ZW5kTWVtYmVyIiwiZXh0ZW5kZWQiLCJrZXkiLCJvcHRpb25zIiwiZXh0ZW5kIiwiZXh0cmFNdXRhdGVPcHRpb25zIiwiYXNzaWduIiwiZXh0cmFQYXJ0aWFsT3B0aW9ucyIsImdldCIsImdldE9wdGltaXN0aWNSZXNwb25zZSIsIm9wdGltaXN0aWNVcGRhdGUiLCJvcHRpbWlzdGljUGFydGlhbCIsImdldExpc3QiLCJyZXQiLCJjcmVhdGUiLCJwdXNoIiwidXBkYXRlIiwibWV0aG9kIiwicGFydGlhbFVwZGF0ZSIsImRlbGV0ZSIsInJlcyIsInBhcmFtcyIsImtleXMiLCJsZW5ndGgiLCJvcHRpbWlzdGljRGVsZXRlIiwidW5kZWZpbmVkIiwiYXJncyIsIm92ZXJyaWRlcyIsInNuYXAiLCJib2R5IiwiZW5zdXJlUG9qbyIsImRhdGEiLCJhYm9ydCIsIkZvcm1EYXRhIiwiZnJvbUVudHJpZXMiLCJlbnRyaWVzIl0sInNvdXJjZXMiOlsiLi4vc3JjL2NyZWF0ZVJlc291cmNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNjaGVtYSB9IGZyb20gJ0BkYXRhLWNsaWVudC9lbmRwb2ludCc7XG5pbXBvcnQgdHlwZSB7IFNuYXBzaG90SW50ZXJmYWNlLCBRdWVyeWFibGUgfSBmcm9tICdAZGF0YS1jbGllbnQvZW5kcG9pbnQnO1xuXG5pbXBvcnQge1xuICBSZXNvdXJjZUdlbmVyaWNzLFxuICBSZXNvdXJjZU9wdGlvbnMsXG4gIFJlc291cmNlLFxuICBSZXNvdXJjZUludGVyZmFjZSxcbn0gZnJvbSAnLi9yZXNvdXJjZVR5cGVzLmpzJztcbmltcG9ydCBSZXN0RW5kcG9pbnQsIHtcbiAgR2V0RW5kcG9pbnQsXG4gIFBhcnRpYWxSZXN0R2VuZXJpY3MsXG4gIFJlc3RFbmRwb2ludE9wdGlvbnMsXG4gIFJlc3RJbnN0YW5jZUJhc2UsXG59IGZyb20gJy4vUmVzdEVuZHBvaW50LmpzJztcbmltcG9ydCB7IHNob3J0ZW5QYXRoIH0gZnJvbSAnLi9SZXN0SGVscGVycy5qcyc7XG5cbmNvbnN0IHsgSW52YWxpZGF0ZSwgQ29sbGVjdGlvbjogQmFzZUNvbGxlY3Rpb24gfSA9IHNjaGVtYTtcblxuLyoqIENyZWF0ZXMgY29sbGVjdGlvbiBvZiBFbmRwb2ludHMgZm9yIGNvbW1vbiBvcGVyYXRpb25zIG9uIGEgZ2l2ZW4gZGF0YS9zY2hlbWEuXG4gKlxuICogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vcmVzdC9hcGkvY3JlYXRlUmVzb3VyY2VcbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlUmVzb3VyY2U8TyBleHRlbmRzIFJlc291cmNlR2VuZXJpY3M+KHtcbiAgcGF0aCxcbiAgc2NoZW1hLFxuICBFbmRwb2ludCA9IFJlc3RFbmRwb2ludCxcbiAgQ29sbGVjdGlvbiA9IEJhc2VDb2xsZWN0aW9uLFxuICBvcHRpbWlzdGljLFxuICBwYWdpbmF0aW9uRmllbGQsXG4gIC4uLmV4dHJhT3B0aW9uc1xufTogUmVhZG9ubHk8Tz4gJiBSZXNvdXJjZU9wdGlvbnMpOiBSZXNvdXJjZTxPPiB7XG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgLy8gaWYgdGhleSBsb3dlcmNhc2UgYW5kIGl0IGxvb2tzIGxpa2UgdGhleSBtZWFudCB0byB1c2UgdXBwZXItY2FzZSB2ZXJzaW9uXG4gICAgaWYgKFxuICAgICAgJ2VuZHBvaW50JyBpbiBleHRyYU9wdGlvbnMgJiZcbiAgICAgIEVuZHBvaW50ID09PSBSZXN0RW5kcG9pbnQgJiZcbiAgICAgIHR5cGVvZiBleHRyYU9wdGlvbnNbJ2VuZHBvaW50J10gPT09ICdmdW5jdGlvbicgJiZcbiAgICAgIGV4dHJhT3B0aW9uc1snZW5kcG9pbnQnXSAmJlxuICAgICAgT2JqZWN0LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mLmNhbGwoXG4gICAgICAgIFJlc3RFbmRwb2ludC5wcm90b3R5cGUsXG4gICAgICAgIChleHRyYU9wdGlvbnNbJ2VuZHBvaW50J10gYXMgYW55KS5wcm90b3R5cGUsXG4gICAgICApXG4gICAgKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGBZb3UgcGFzc2VkICdlbmRwb2ludCcgb3B0aW9uOyBkaWQgeW91IG1lYW4gdG8gdXNlIEVuZHBvaW50P1xuaHR0cHM6Ly9kYXRhY2xpZW50LmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI2VuZHBvaW50XG5UaGlzIHBhcmFtZXRlciBtdXN0IGJlIGNhcGl0YWxpemVkLlxuXG5UaGlzIHdhcm5pbmcgd2lsbCBub3Qgc2hvdyBpbiBwcm9kdWN0aW9uLmAsXG4gICAgICApO1xuICAgIH1cbiAgICAvLyBpZiB0aGV5IGxvd2VyY2FzZSBhbmQgaXQgbG9va3MgbGlrZSB0aGV5IG1lYW50IHRvIHVzZSB1cHBlci1jYXNlIHZlcnNpb25cbiAgICBpZiAoXG4gICAgICAnY29sbGVjdGlvbicgaW4gZXh0cmFPcHRpb25zICYmXG4gICAgICBDb2xsZWN0aW9uID09PSBCYXNlQ29sbGVjdGlvbiAmJlxuICAgICAgdHlwZW9mIGV4dHJhT3B0aW9uc1snY29sbGVjdGlvbiddID09PSAnZnVuY3Rpb24nICYmXG4gICAgICBleHRyYU9wdGlvbnNbJ2NvbGxlY3Rpb24nXSAmJlxuICAgICAgT2JqZWN0LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mLmNhbGwoXG4gICAgICAgIEJhc2VDb2xsZWN0aW9uLnByb3RvdHlwZSxcbiAgICAgICAgKGV4dHJhT3B0aW9uc1snY29sbGVjdGlvbiddIGFzIGFueSkucHJvdG90eXBlLFxuICAgICAgKVxuICAgICkge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBgWW91IHBhc3NlZCAnY29sbGVjdGlvbicgb3B0aW9uOyBkaWQgeW91IG1lYW4gdG8gdXNlIENvbGxlY3Rpb24/XG5odHRwczovL2RhdGFjbGllbnQuaW8vcmVzdC9hcGkvY3JlYXRlUmVzb3VyY2UjY29sbGVjdGlvblxuVGhpcyBwYXJhbWV0ZXIgbXVzdCBiZSBjYXBpdGFsaXplZC5cblxuVGhpcyB3YXJuaW5nIHdpbGwgbm90IHNob3cgaW4gcHJvZHVjdGlvbi5gLFxuICAgICAgKTtcbiAgICB9XG4gIH1cbiAgY29uc3Qgc2hvcnRlbmVkUGF0aCA9IHNob3J0ZW5QYXRoKHBhdGgpO1xuICBjb25zdCBnZXROYW1lID0gKG5hbWU6IHN0cmluZykgPT4gYCR7KHNjaGVtYSBhcyBhbnkpPy5uYW1lfS4ke25hbWV9YDtcbiAgLy8gdGhpcyBhY2NvdW50cyBmb3IgZGVyaXZhdGl2ZSBlbmRwb2ludHNcbiAgZnVuY3Rpb24gZXh0ZW5kTWVtYmVyKGV4dGVuZGVkOiBhbnksIGtleTogc3RyaW5nLCBvcHRpb25zOiBhbnkpIHtcbiAgICBleHRlbmRlZFtrZXldID0gZXh0ZW5kZWRba2V5XS5leHRlbmQob3B0aW9ucyk7XG4gIH1cblxuICBjb25zdCBleHRyYU11dGF0ZU9wdGlvbnMgPSB7IC4uLmV4dHJhT3B0aW9ucyB9O1xuICBjb25zdCBleHRyYVBhcnRpYWxPcHRpb25zID0geyAuLi5leHRyYU9wdGlvbnMgfTtcbiAgY29uc3QgZ2V0OiBHZXRFbmRwb2ludDx7IHBhdGg6IE9bJ3BhdGgnXTsgc2NoZW1hOiBPWydzY2hlbWEnXSB9PiA9XG4gICAgbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhT3B0aW9ucyxcbiAgICAgIHBhdGgsXG4gICAgICBzY2hlbWEsXG4gICAgICBuYW1lOiBnZXROYW1lKCdnZXQnKSxcbiAgICB9KSBhcyBhbnk7XG4gIGlmIChvcHRpbWlzdGljKSB7XG4gICAgKGV4dHJhTXV0YXRlT3B0aW9ucyBhcyBhbnkpLmdldE9wdGltaXN0aWNSZXNwb25zZSA9IG9wdGltaXN0aWNVcGRhdGU7XG4gICAgLy8gVE9ETzogQ2hlY2sgdGhhdCBzY2hlbWEgaXMgYSBxdWVyeWFibGUsIG90aGVyd2lzZSB0aGlzIGRvZXNuJ3QgbWFrZSBzZW5zZVxuICAgIChleHRyYVBhcnRpYWxPcHRpb25zIGFzIGFueSkuZ2V0T3B0aW1pc3RpY1Jlc3BvbnNlID0gb3B0aW1pc3RpY1BhcnRpYWwoXG4gICAgICBzY2hlbWEgYXMgYW55LFxuICAgICk7XG4gIH1cbiAgY29uc3QgZ2V0TGlzdCA9IG5ldyBFbmRwb2ludCh7XG4gICAgLi4uZXh0cmFNdXRhdGVPcHRpb25zLFxuICAgIHBhZ2luYXRpb25GaWVsZDogcGFnaW5hdGlvbkZpZWxkIGFzIHN0cmluZyxcbiAgICBwYXRoOiBzaG9ydGVuZWRQYXRoLFxuICAgIHNjaGVtYTogbmV3IENvbGxlY3Rpb24oW3NjaGVtYSBhcyBhbnldKSxcbiAgICBuYW1lOiBnZXROYW1lKCdnZXRMaXN0JyksXG4gIH0pO1xuICBjb25zdCByZXQgPSB7XG4gICAgZ2V0LFxuICAgIGdldExpc3QsXG4gICAgLy8gVE9ETyhkZXByZWNhdGVkKTogcmVtb3ZlIHRoaXMgb25jZSB3ZSByZW1vdmUgY3JlYXRlc1xuICAgIGNyZWF0ZTogZ2V0TGlzdC5wdXNoLmV4dGVuZCh7IG5hbWU6IGdldE5hbWUoJ2NyZWF0ZScpIH0pLFxuICAgIHVwZGF0ZTogbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhTXV0YXRlT3B0aW9ucyxcbiAgICAgIHBhdGgsXG4gICAgICBzY2hlbWEsXG4gICAgICBtZXRob2Q6ICdQVVQnLFxuICAgICAgbmFtZTogZ2V0TmFtZSgndXBkYXRlJyksXG4gICAgfSksXG4gICAgcGFydGlhbFVwZGF0ZTogbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhUGFydGlhbE9wdGlvbnMsXG4gICAgICBwYXRoLFxuICAgICAgc2NoZW1hLFxuICAgICAgbWV0aG9kOiAnUEFUQ0gnLFxuICAgICAgbmFtZTogZ2V0TmFtZSgncGFydGlhbFVwZGF0ZScpLFxuICAgIH0pLFxuICAgIGRlbGV0ZTogbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhTXV0YXRlT3B0aW9ucyxcbiAgICAgIHBhdGgsXG4gICAgICBzY2hlbWE6IChzY2hlbWEgYXMgYW55KS5wcm9jZXNzID8gbmV3IEludmFsaWRhdGUoc2NoZW1hIGFzIGFueSkgOiBzY2hlbWEsXG4gICAgICBtZXRob2Q6ICdERUxFVEUnLFxuICAgICAgbmFtZTogZ2V0TmFtZSgnZGVsZXRlJyksXG4gICAgICBwcm9jZXNzKHJlczogYW55LCBwYXJhbXM6IGFueSkge1xuICAgICAgICByZXR1cm4gcmVzICYmIE9iamVjdC5rZXlzKHJlcykubGVuZ3RoID8gcmVzIDogcGFyYW1zO1xuICAgICAgfSxcbiAgICAgIGdldE9wdGltaXN0aWNSZXNwb25zZTogb3B0aW1pc3RpYyA/IChvcHRpbWlzdGljRGVsZXRlIGFzIGFueSkgOiB1bmRlZmluZWQsXG4gICAgfSksXG4gICAgZXh0ZW5kKFxuICAgICAgLi4uYXJnczpcbiAgICAgICAgfCBbc3RyaW5nLCBSZXN0RW5kcG9pbnRPcHRpb25zICYgUGFydGlhbFJlc3RHZW5lcmljc11cbiAgICAgICAgfCBbUmVzdEVuZHBvaW50T3B0aW9ucyAmIFBhcnRpYWxSZXN0R2VuZXJpY3NdXG4gICAgICAgIHwgW1xuICAgICAgICAgICAgKFxuICAgICAgICAgICAgICBiYXNlUmVzb3VyY2U6IFJlc291cmNlSW50ZXJmYWNlLFxuICAgICAgICAgICAgKSA9PiBSZWNvcmQ8c3RyaW5nLCBSZXN0SW5zdGFuY2VCYXNlPixcbiAgICAgICAgICBdXG4gICAgKSB7XG4gICAgICBpZiAodHlwZW9mIGFyZ3NbMF0gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbnN0IFtrZXksIG9wdGlvbnNdID0gYXJncztcbiAgICAgICAgaWYgKGtleSBpbiB0aGlzKSB7XG4gICAgICAgICAgY29uc3QgZXh0ZW5kZWQgPSB7IC4uLnRoaXMgfTtcbiAgICAgICAgICBleHRlbmRNZW1iZXIoZXh0ZW5kZWQsIGtleSwgb3B0aW9ucyk7XG4gICAgICAgICAgcmV0dXJuIGV4dGVuZGVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi50aGlzLFxuICAgICAgICAgICAgW2tleV06IHRoaXMuZ2V0LmV4dGVuZChvcHRpb25zKSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBhcmdzWzBdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGNvbnN0IGV4dGVuZGVkID0gYXJnc1swXSh0aGlzKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi50aGlzLFxuICAgICAgICAgIC4uLmV4dGVuZGVkLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgY29uc3Qgb3ZlcnJpZGVzID0gYXJnc1swXTtcbiAgICAgIGNvbnN0IGV4dGVuZGVkID0geyAuLi50aGlzIH07XG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBvdmVycmlkZXMpIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtY29tbWVudFxuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGV4dGVuZE1lbWJlcihleHRlbmRlZCwga2V5LCBvdmVycmlkZXNba2V5XSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gZXh0ZW5kZWQ7XG4gICAgfSxcbiAgfSBhcyBhbnk7XG4gIHJldHVybiByZXQ7XG59XG5cbmZ1bmN0aW9uIG9wdGltaXN0aWNVcGRhdGUoc25hcDogU25hcHNob3RJbnRlcmZhY2UsIHBhcmFtczogYW55LCBib2R5OiBhbnkpIHtcbiAgcmV0dXJuIHtcbiAgICAuLi5wYXJhbXMsXG4gICAgLi4uZW5zdXJlUG9qbyhib2R5KSxcbiAgfTtcbn1cbmZ1bmN0aW9uIG9wdGltaXN0aWNQYXJ0aWFsKHNjaGVtYTogUXVlcnlhYmxlKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoc25hcDogU25hcHNob3RJbnRlcmZhY2UsIHBhcmFtczogYW55LCBib2R5OiBhbnkpIHtcbiAgICBjb25zdCBkYXRhID0gc25hcC5nZXQoc2NoZW1hLCBwYXJhbXMpO1xuICAgIGlmICghZGF0YSkgdGhyb3cgc25hcC5hYm9ydDtcbiAgICByZXR1cm4ge1xuICAgICAgLi4ucGFyYW1zLFxuICAgICAgLi4uZGF0YSxcbiAgICAgIC8vIGV2ZW4gdGhvIHdlIGRvbid0IGFsd2F5cyBoYXZlIHR3byBhcmd1bWVudHMsIHRoZSBleHRyYSBvbmUgd2lsbCBzaW1wbHkgYmUgdW5kZWZpbmVkIHdoaWNoIHNwcmVhZHMgZmluZVxuICAgICAgLi4uZW5zdXJlUG9qbyhib2R5KSxcbiAgICB9O1xuICB9O1xufVxuZnVuY3Rpb24gb3B0aW1pc3RpY0RlbGV0ZShzbmFwOiBTbmFwc2hvdEludGVyZmFjZSwgcGFyYW1zOiBhbnkpIHtcbiAgcmV0dXJuIHBhcmFtcztcbn1cbmZ1bmN0aW9uIGVuc3VyZVBvam8oYm9keTogYW55KSB7XG4gIHJldHVybiBib2R5IGluc3RhbmNlb2YgRm9ybURhdGEgP1xuICAgICAgT2JqZWN0LmZyb21FbnRyaWVzKChib2R5IGFzIGFueSkuZW50cmllcygpKVxuICAgIDogYm9keTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxTQUFTQSxNQUFNLFFBQVEsdUJBQXVCO0FBUzlDLE9BQU9DLFlBQVksTUFLWixtQkFBbUI7QUFDMUIsU0FBU0MsV0FBVyxRQUFRLGtCQUFrQjtBQUU5QyxNQUFNO0VBQUVDLFVBQVU7RUFBRUMsVUFBVSxFQUFFQztBQUFlLENBQUMsR0FBR0wsTUFBTTs7QUFFekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxl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
@@ -1,7 +0,0 @@
1
- import { ResourceGenerics, ResourceOptions, Resource } from './resourceTypes.js';
2
- /** Creates collection of Endpoints for common operations on a given data/schema.
3
- *
4
- * @see https://dataclient.io/rest/api/createResource
5
- */
6
- export default function createResource<O extends ResourceGenerics>({ path, schema, Endpoint, Collection, optimistic, paginationField, ...extraOptions }: Readonly<O> & ResourceOptions): Resource<O>;
7
- //# sourceMappingURL=createResource.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createResource.d.ts","sourceRoot":"","sources":["../src/createResource.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,QAAQ,EAET,MAAM,oBAAoB,CAAC;AAW5B;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,CAAC,SAAS,gBAAgB,EAAE,EACjE,IAAI,EACJ,MAAM,EACN,QAAuB,EACvB,UAA2B,EAC3B,UAAU,EACV,eAAe,EACf,GAAG,YAAY,EAChB,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,CA6I7C"}