@grupalia/rn-ui-kit 0.126.0 → 0.127.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.
Files changed (75) hide show
  1. package/lib/commonjs/api/createQueryKeys.js +25 -0
  2. package/lib/commonjs/api/createQueryKeys.js.map +1 -0
  3. package/lib/commonjs/api/createResourceApi.js +56 -0
  4. package/lib/commonjs/api/createResourceApi.js.map +1 -0
  5. package/lib/commonjs/api/queriesFor.js +172 -0
  6. package/lib/commonjs/api/queriesFor.js.map +1 -0
  7. package/lib/commonjs/components/BaseStackedList.js +2 -2
  8. package/lib/commonjs/components/BaseStackedList.js.map +1 -1
  9. package/lib/commonjs/components/{EmtpyState.js → EmptyState.js} +1 -1
  10. package/lib/commonjs/components/{EmtpyState.js.map → EmptyState.js.map} +1 -1
  11. package/lib/commonjs/components/NotificationsList.js +3 -3
  12. package/lib/commonjs/components/NotificationsList.js.map +1 -1
  13. package/lib/commonjs/components/index.js +2 -2
  14. package/lib/commonjs/components/index.js.map +1 -1
  15. package/lib/commonjs/index.js +36 -0
  16. package/lib/commonjs/index.js.map +1 -1
  17. package/lib/module/api/createQueryKeys.js +22 -0
  18. package/lib/module/api/createQueryKeys.js.map +1 -0
  19. package/lib/module/api/createResourceApi.js +53 -0
  20. package/lib/module/api/createResourceApi.js.map +1 -0
  21. package/lib/module/api/queriesFor.js +167 -0
  22. package/lib/module/api/queriesFor.js.map +1 -0
  23. package/lib/module/components/BaseStackedList.js +1 -1
  24. package/lib/module/components/{EmtpyState.js → EmptyState.js} +1 -1
  25. package/lib/module/components/{EmtpyState.js.map → EmptyState.js.map} +1 -1
  26. package/lib/module/components/NotificationsList.js +2 -2
  27. package/lib/module/components/NotificationsList.js.map +1 -1
  28. package/lib/module/components/index.js +1 -1
  29. package/lib/module/index.js +3 -0
  30. package/lib/module/index.js.map +1 -1
  31. package/lib/typescript/commonjs/__tests__/createQueryKeys.test.d.ts +2 -0
  32. package/lib/typescript/commonjs/__tests__/createQueryKeys.test.d.ts.map +1 -0
  33. package/lib/typescript/commonjs/__tests__/createResourceApi.test.d.ts +2 -0
  34. package/lib/typescript/commonjs/__tests__/createResourceApi.test.d.ts.map +1 -0
  35. package/lib/typescript/commonjs/__tests__/queriesFor.test.d.ts +2 -0
  36. package/lib/typescript/commonjs/__tests__/queriesFor.test.d.ts.map +1 -0
  37. package/lib/typescript/commonjs/api/createQueryKeys.d.ts +33 -0
  38. package/lib/typescript/commonjs/api/createQueryKeys.d.ts.map +1 -0
  39. package/lib/typescript/commonjs/api/createResourceApi.d.ts +22 -0
  40. package/lib/typescript/commonjs/api/createResourceApi.d.ts.map +1 -0
  41. package/lib/typescript/commonjs/api/queriesFor.d.ts +64 -0
  42. package/lib/typescript/commonjs/api/queriesFor.d.ts.map +1 -0
  43. package/lib/typescript/commonjs/api/ransack.d.ts +1 -0
  44. package/lib/typescript/commonjs/api/ransack.d.ts.map +1 -1
  45. package/lib/typescript/commonjs/components/{EmtpyState.d.ts → EmptyState.d.ts} +1 -1
  46. package/lib/typescript/commonjs/components/{EmtpyState.d.ts.map → EmptyState.d.ts.map} +1 -1
  47. package/lib/typescript/commonjs/components/NotificationsList.d.ts.map +1 -1
  48. package/lib/typescript/commonjs/components/index.d.ts +1 -1
  49. package/lib/typescript/commonjs/hooks/useDownloadFile.d.ts +1 -1
  50. package/lib/typescript/commonjs/hooks/useDownloadFile.d.ts.map +1 -1
  51. package/lib/typescript/commonjs/index.d.ts +3 -0
  52. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  53. package/lib/typescript/module/__tests__/createQueryKeys.test.d.ts +2 -0
  54. package/lib/typescript/module/__tests__/createQueryKeys.test.d.ts.map +1 -0
  55. package/lib/typescript/module/__tests__/createResourceApi.test.d.ts +2 -0
  56. package/lib/typescript/module/__tests__/createResourceApi.test.d.ts.map +1 -0
  57. package/lib/typescript/module/__tests__/queriesFor.test.d.ts +2 -0
  58. package/lib/typescript/module/__tests__/queriesFor.test.d.ts.map +1 -0
  59. package/lib/typescript/module/api/createQueryKeys.d.ts +33 -0
  60. package/lib/typescript/module/api/createQueryKeys.d.ts.map +1 -0
  61. package/lib/typescript/module/api/createResourceApi.d.ts +22 -0
  62. package/lib/typescript/module/api/createResourceApi.d.ts.map +1 -0
  63. package/lib/typescript/module/api/queriesFor.d.ts +64 -0
  64. package/lib/typescript/module/api/queriesFor.d.ts.map +1 -0
  65. package/lib/typescript/module/api/ransack.d.ts +1 -0
  66. package/lib/typescript/module/api/ransack.d.ts.map +1 -1
  67. package/lib/typescript/module/components/{EmtpyState.d.ts → EmptyState.d.ts} +1 -1
  68. package/lib/typescript/module/components/{EmtpyState.d.ts.map → EmptyState.d.ts.map} +1 -1
  69. package/lib/typescript/module/components/NotificationsList.d.ts.map +1 -1
  70. package/lib/typescript/module/components/index.d.ts +1 -1
  71. package/lib/typescript/module/hooks/useDownloadFile.d.ts +1 -1
  72. package/lib/typescript/module/hooks/useDownloadFile.d.ts.map +1 -1
  73. package/lib/typescript/module/index.d.ts +3 -0
  74. package/lib/typescript/module/index.d.ts.map +1 -1
  75. package/package.json +14 -14
@@ -0,0 +1,167 @@
1
+ "use strict";
2
+
3
+ import { infiniteQueryOptions, queryOptions, skipToken } from '@tanstack/react-query';
4
+ const DEFAULT_PAGE_SIZE = 10;
5
+
6
+ // Same options with the skipToken branch removed from queryFn. A query that always fetches
7
+ // also satisfies useSuspenseQuery; one that can be disabled does not, since suspense has
8
+ // nothing to suspend on and no data to return.
9
+
10
+ // What each leaf resolves to; `one` takes the member, `list` the items, `listPage` and
11
+ // `infinite` the whole response body.
12
+
13
+ // `page` stays owned by the infinite machinery (the page number is the cursor). `pageSize`
14
+ // is the one paging knob a call site may set, and it is part of the cache key: entries
15
+ // with different sizes must not interleave pages of different lengths.
16
+
17
+ // A module that declares its params type gets them checked at every call site — and
18
+ // required filters become required arguments. `never` (the default) is the no-filter
19
+ // resource: paging is all it accepts. A filter on an undeclared resource is a compile
20
+ // error, so declaring the params type is the only way to pass one; a request the params
21
+ // model cannot express is what raw queryOptions is for.
22
+
23
+ // A known id always fetches, so those options also satisfy useSuspenseQuery and prefetch;
24
+ // a possibly-undefined id disables the query via skipToken and only suits useQuery. Arrow
25
+ // functions cannot declare overloads, so the makers cast their implementation to these
26
+ // signatures — one implementation satisfies both branches.
27
+
28
+ // Pairs a resource's requests with its keys so every leaf follows the same conventions.
29
+ function createLeaves(api, keys) {
30
+ const requestParams = ({
31
+ variant,
32
+ params
33
+ }) => ({
34
+ ...params,
35
+ variant
36
+ });
37
+ return {
38
+ one: (id, filter = {}) => queryOptions({
39
+ queryKey: keys.one({
40
+ id,
41
+ ...filter
42
+ }),
43
+ queryFn: id === undefined ? skipToken : () => api.get(id, requestParams(filter))
44
+ }),
45
+ list: (filter = {}) => queryOptions({
46
+ queryKey: keys.list(filter),
47
+ queryFn: () => api.getAll(requestParams(filter)).then(response => response[api.collection])
48
+ }),
49
+ // Keeps the whole page: a single read of the collection alongside its pagination
50
+ // meta. Discriminated from `list`, which caches the unwrapped items under the same
51
+ // filters. A collection route that returns something other than a page of the
52
+ // collection stays hand-written on the module's keys.
53
+ listPage: (filter = {}) => queryOptions({
54
+ queryKey: keys.list({
55
+ ...filter,
56
+ envelope: true
57
+ }),
58
+ queryFn: () => api.getAll(requestParams(filter))
59
+ }),
60
+ infinite: ({
61
+ pageSize = DEFAULT_PAGE_SIZE,
62
+ ...filter
63
+ }) => infiniteQueryOptions({
64
+ queryKey: keys.infinite({
65
+ ...filter,
66
+ pageSize
67
+ }),
68
+ queryFn: ({
69
+ pageParam
70
+ }) => api.getAll({
71
+ ...requestParams(filter),
72
+ page: {
73
+ size: pageSize,
74
+ number: pageParam
75
+ }
76
+ }),
77
+ initialPageParam: 1,
78
+ // Cursors come from the Link header, so they arrive as strings
79
+ getNextPageParam: lastPage => lastPage.nextCursor ? Number(lastPage.nextCursor) : undefined
80
+ })
81
+ };
82
+ }
83
+ const splitPaging = params => {
84
+ const {
85
+ pageSize,
86
+ ...rest
87
+ } = params ?? {};
88
+ return {
89
+ pageSize,
90
+ params: Object.keys(rest).length ? rest : undefined
91
+ };
92
+ };
93
+
94
+ /*
95
+ A resource declares its queries as a plain object literal in its index.ts, each leaf
96
+ built once with the types it serves:
97
+
98
+ const { one, infinite } = variantQueriesFor(promoterApi, promoterKeys);
99
+
100
+ const promoterQueries = {
101
+ one: one<{ show: ShowPromoter }>(),
102
+ infinite: infinite<{ index: IndexPromoter }, GetAllParams>(),
103
+ };
104
+
105
+ An undeclared leaf is absent from the object — and from its type. Extras (named scopes,
106
+ per-leaf overrides, hand-written leaves on the same keys) sit next to the built ones as
107
+ ordinary siblings. Name each key after the leaf that builds it: `list`/`listPage` read
108
+ with useQuery, `infinite` with useInfiniteQuery, and a mismatch misleads the call site.
109
+
110
+ Collection leaves take the module's params type as a trailing argument, so ransack
111
+ filters and scopes are declared once per resource and checked at every call site.
112
+
113
+ Variants are chosen once per resource by picking the maker, because no resource mixes
114
+ the two styles and TypeScript cannot tell a variant map from a plain payload
115
+ structurally — both are objects with string keys.
116
+ */
117
+ function queriesFor(api, keys) {
118
+ const leaves = createLeaves(api, keys);
119
+ return {
120
+ one: () => id => leaves.one(id),
121
+ list: () => (...[params]) => leaves.list({
122
+ params
123
+ }),
124
+ listPage: () => (...[params]) => leaves.listPage({
125
+ params
126
+ }),
127
+ infinite: (options = {}) => (...[callParams]) => {
128
+ const {
129
+ pageSize,
130
+ params
131
+ } = splitPaging(callParams);
132
+ return leaves.infinite({
133
+ params,
134
+ pageSize: pageSize ?? options.pageSize
135
+ });
136
+ }
137
+ };
138
+ }
139
+ function variantQueriesFor(api, keys) {
140
+ const leaves = createLeaves(api, keys);
141
+ return {
142
+ one: () => (variant, id) => leaves.one(id, {
143
+ variant
144
+ }),
145
+ list: () => (variant, ...[params]) => leaves.list({
146
+ variant,
147
+ params
148
+ }),
149
+ listPage: () => (variant, ...[params]) => leaves.listPage({
150
+ variant,
151
+ params
152
+ }),
153
+ infinite: (options = {}) => (variant, ...[callParams]) => {
154
+ const {
155
+ pageSize,
156
+ params
157
+ } = splitPaging(callParams);
158
+ return leaves.infinite({
159
+ variant,
160
+ params,
161
+ pageSize: pageSize ?? options.pageSize
162
+ });
163
+ }
164
+ };
165
+ }
166
+ export { DEFAULT_PAGE_SIZE, queriesFor, variantQueriesFor };
167
+ //# sourceMappingURL=queriesFor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["infiniteQueryOptions","queryOptions","skipToken","DEFAULT_PAGE_SIZE","createLeaves","api","keys","requestParams","variant","params","one","id","filter","queryKey","queryFn","undefined","get","list","getAll","then","response","collection","listPage","envelope","infinite","pageSize","pageParam","page","size","number","initialPageParam","getNextPageParam","lastPage","nextCursor","Number","splitPaging","rest","Object","length","queriesFor","leaves","options","callParams","variantQueriesFor"],"sourceRoot":"../../../src","sources":["api/queriesFor.ts"],"mappings":"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","ignoreList":[]}
@@ -7,7 +7,7 @@ import { View } from "../hoc-components.js";
7
7
  import BaseButton from "./BaseButton.js";
8
8
  import BaseSpinner from "./BaseSpinner.js";
9
9
  import BaseText from "./BaseText.js";
10
- import EmptyState from "./EmtpyState.js";
10
+ import EmptyState from "./EmptyState.js";
11
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
12
  function BaseStackedList({
13
13
  itemsCount,
@@ -27,4 +27,4 @@ export default function EmptyState({
27
27
  })]
28
28
  });
29
29
  }
30
- //# sourceMappingURL=EmtpyState.js.map
30
+ //# sourceMappingURL=EmptyState.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["InboxIcon","View","BaseIcon","BaseText","jsx","_jsx","jsxs","_jsxs","EmptyState","title","description","className","children","icon","size","color"],"sourceRoot":"../../../src","sources":["components/EmtpyState.tsx"],"mappings":";;AACA,SAASA,SAAS,QAAQ,gCAAgC;AAE1D,SAASC,IAAI,QAAQ,sBAAmB;AACxC,OAAOC,QAAQ,MAAM,eAAY;AACjC,OAAOC,QAAQ,MAAM,eAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAOlC,eAAe,SAASC,UAAUA,CAAC;EAAEC,KAAK;EAAEC;AAA6B,CAAC,EAAE;EAC1E,oBACEH,KAAA,CAACN,IAAI;IAACU,SAAS,EAAC,wCAAwC;IAAAC,QAAA,gBACtDP,IAAA,CAACJ,IAAI;MAACU,SAAS,EAAC,gEAAgE;MAAAC,QAAA,eAC9EP,IAAA,CAACH,QAAQ;QACPW,IAAI,EAAEb,SAAU;QAChBc,IAAI,EAAE,EAAG;QACTC,KAAK,EAAC;MAAY,CACnB;IAAC,CACE,CAAC,eACPV,IAAA,CAACF,QAAQ;MAACQ,SAAS,EAAC,yCAAyC;MAAAC,QAAA,EAC1DH,KAAK,IAAI;IAAyB,CAC3B,CAAC,EACVC,WAAW,iBACVL,IAAA,CAACF,QAAQ;MAACQ,SAAS,EAAC,4BAA4B;MAAAC,QAAA,EAAEF;IAAW,CAAW,CACzE;EAAA,CACG,CAAC;AAEX","ignoreList":[]}
1
+ {"version":3,"names":["InboxIcon","View","BaseIcon","BaseText","jsx","_jsx","jsxs","_jsxs","EmptyState","title","description","className","children","icon","size","color"],"sourceRoot":"../../../src","sources":["components/EmptyState.tsx"],"mappings":";;AACA,SAASA,SAAS,QAAQ,gCAAgC;AAE1D,SAASC,IAAI,QAAQ,sBAAmB;AACxC,OAAOC,QAAQ,MAAM,eAAY;AACjC,OAAOC,QAAQ,MAAM,eAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAOlC,eAAe,SAASC,UAAUA,CAAC;EAAEC,KAAK;EAAEC;AAA6B,CAAC,EAAE;EAC1E,oBACEH,KAAA,CAACN,IAAI;IAACU,SAAS,EAAC,wCAAwC;IAAAC,QAAA,gBACtDP,IAAA,CAACJ,IAAI;MAACU,SAAS,EAAC,gEAAgE;MAAAC,QAAA,eAC9EP,IAAA,CAACH,QAAQ;QACPW,IAAI,EAAEb,SAAU;QAChBc,IAAI,EAAE,EAAG;QACTC,KAAK,EAAC;MAAY,CACnB;IAAC,CACE,CAAC,eACPV,IAAA,CAACF,QAAQ;MAACQ,SAAS,EAAC,yCAAyC;MAAAC,QAAA,EAC1DH,KAAK,IAAI;IAAyB,CAC3B,CAAC,EACVC,WAAW,iBACVL,IAAA,CAACF,QAAQ;MAACQ,SAAS,EAAC,4BAA4B;MAAAC,QAAA,EAAEF;IAAW,CAAW,CACzE;EAAA,CACG,CAAC;AAEX","ignoreList":[]}
@@ -4,10 +4,10 @@ import clsx from 'clsx';
4
4
  import { SvgUri } from 'react-native-svg';
5
5
  import BasePing from "./BasePing.js";
6
6
  import BaseText from "./BaseText.js";
7
+ import EmptyState from "./EmptyState.js";
8
+ import PressableOpacity from "./PressableOpacity.js";
7
9
  import Isotype from '../assets/logos/isotype.svg';
8
10
  import { View, Image } from "../hoc-components.js";
9
- import EmptyState from "./EmtpyState.js";
10
- import PressableOpacity from "./PressableOpacity.js";
11
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
12
  function isSvg(imageUrl) {
13
13
  try {
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","SvgUri","BasePing","BaseText","Isotype","View","Image","EmptyState","PressableOpacity","jsx","_jsx","jsxs","_jsxs","isSvg","imageUrl","url","URL","pathname","toLowerCase","includes","NotificationCard","notification","onPress","icon","original","className","children","width","height","uri","source","readAt","title","preview","NotificationsList","notifications","map","id","length","description"],"sourceRoot":"../../../src","sources":["components/NotificationsList.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","SvgUri","BasePing","BaseText","EmptyState","PressableOpacity","Isotype","View","Image","jsx","_jsx","jsxs","_jsxs","isSvg","imageUrl","url","URL","pathname","toLowerCase","includes","NotificationCard","notification","onPress","icon","original","className","children","width","height","uri","source","readAt","title","preview","NotificationsList","notifications","map","id","length","description"],"sourceRoot":"../../../src","sources":["components/NotificationsList.tsx"],"mappings":"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","ignoreList":[]}
@@ -50,7 +50,7 @@ export { default as NotificationButton } from "./NotificationButton.js";
50
50
  export { default as NotificationsList } from "./NotificationsList.js";
51
51
  export { default as AppNotificationModal } from "./AppNotificationModal.js";
52
52
  export { default as BasePing } from "./BasePing.js";
53
- export { default as EmptyState } from "./EmtpyState.js";
53
+ export { default as EmptyState } from "./EmptyState.js";
54
54
  export { default as BaseIconCard } from "./BaseIconCard.js";
55
55
  export { default as FormikClabeInput } from "./FormikClabeInput.js";
56
56
  export { default as ClabeConfirmationModal } from "./ClabeConfirmationModal.js";
@@ -11,5 +11,8 @@ export * from "./UIKitProvider.js";
11
11
  export * from "./utils/index.js";
12
12
  export * from "./api/types.js";
13
13
  export * from "./api/jobRun.js";
14
+ export * from "./api/createQueryKeys.js";
15
+ export * from "./api/createResourceApi.js";
16
+ export * from "./api/queriesFor.js";
14
17
  export * from "./components/icons/untitledui/line/index.js";
15
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default","preset","backgroundColors","foregroundColors","utilityColors","colors"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,cAAc,uBAAc;AAC5B,SAASA,OAAO,IAAIC,MAAM,QAAQ,aAAU;AAC5C,SAASD,OAAO,IAAIE,gBAAgB,QAAQ,+BAA4B;AACxE,SAASF,OAAO,IAAIG,gBAAgB,QAAQ,+BAA4B;AACxE,SAASH,OAAO,IAAII,aAAa,QAAQ,4BAAyB;AAClE,SAASJ,OAAO,IAAIK,MAAM,QAAQ,oBAAiB;AACnD,cAAc,kBAAS;AACvB,cAAc,oBAAiB;AAC/B,cAAc,kBAAS;AACvB,cAAc,gBAAa;AAC3B,cAAc,iBAAc;AAI5B,cAAc,6CAAoC","ignoreList":[]}
1
+ {"version":3,"names":["default","preset","backgroundColors","foregroundColors","utilityColors","colors"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,cAAc,uBAAc;AAC5B,SAASA,OAAO,IAAIC,MAAM,QAAQ,aAAU;AAC5C,SAASD,OAAO,IAAIE,gBAAgB,QAAQ,+BAA4B;AACxE,SAASF,OAAO,IAAIG,gBAAgB,QAAQ,+BAA4B;AACxE,SAASH,OAAO,IAAII,aAAa,QAAQ,4BAAyB;AAClE,SAASJ,OAAO,IAAIK,MAAM,QAAQ,oBAAiB;AACnD,cAAc,kBAAS;AACvB,cAAc,oBAAiB;AAC/B,cAAc,kBAAS;AACvB,cAAc,gBAAa;AAC3B,cAAc,iBAAc;AAC5B,cAAc,0BAAuB;AACrC,cAAc,4BAAyB;AACvC,cAAc,qBAAkB;AAIhC,cAAc,6CAAoC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=createQueryKeys.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createQueryKeys.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/createQueryKeys.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=createResourceApi.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createResourceApi.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/createResourceApi.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=queriesFor.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queriesFor.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/queriesFor.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,33 @@
1
+ interface CurrentFilter {
2
+ variant?: string;
3
+ }
4
+ interface ListFilter {
5
+ variant?: string;
6
+ params?: object;
7
+ envelope?: true;
8
+ infinite?: true;
9
+ }
10
+ interface DetailFilter {
11
+ id?: number | string;
12
+ variant?: string;
13
+ params?: object;
14
+ }
15
+ declare function createQueryKeys(resource: string): {
16
+ all: () => readonly [string];
17
+ current: (filter?: CurrentFilter) => readonly [string, "current"] | readonly [string, "current", CurrentFilter];
18
+ list: (filter?: ListFilter) => readonly [string, "list"] | readonly [string, "list", ListFilter];
19
+ infinite: (filter: Omit<ListFilter, 'infinite'> & {
20
+ pageSize?: number;
21
+ }) => readonly [string, "list", {
22
+ infinite: true;
23
+ variant?: string | undefined;
24
+ params?: object | undefined;
25
+ envelope?: true | undefined;
26
+ pageSize?: number | undefined;
27
+ }];
28
+ one: (filter?: DetailFilter) => readonly [string, "detail"] | readonly [string, "detail", DetailFilter];
29
+ };
30
+ type QueryKeys = ReturnType<typeof createQueryKeys>;
31
+ export { createQueryKeys };
32
+ export type { CurrentFilter, DetailFilter, ListFilter, QueryKeys, };
33
+ //# sourceMappingURL=createQueryKeys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createQueryKeys.d.ts","sourceRoot":"","sources":["../../../../src/api/createQueryKeys.ts"],"names":[],"mappings":"AAAA,UAAU,aAAa;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,UAAU;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,CAAC;CACjB;AAED,UAAU,YAAY;IACpB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAUD,iBAAS,eAAe,CAAC,QAAQ,EAAE,MAAM;;uBAGlB,aAAa;oBAGhB,UAAU;uBAGP,KAAK,UAAU,EAAE,UAAU,CAAC,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;mBAGxD,YAAY;EAI9B;AAED,KAAK,SAAS,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,YAAY,EACV,aAAa,EACb,YAAY,EACZ,UAAU,EACV,SAAS,GACV,CAAC"}
@@ -0,0 +1,22 @@
1
+ import type { AxiosInstance } from 'axios';
2
+ interface ResourceApiOptions<Collection extends string = string> {
3
+ singular: string;
4
+ collection?: Collection;
5
+ route?: string;
6
+ }
7
+ declare function resourceApiFor(client: AxiosInstance, { prefix }?: {
8
+ prefix?: string | undefined;
9
+ }): <R extends string, C extends string = R>(resource: R, options: ResourceApiOptions<C>) => {
10
+ route: string;
11
+ singular: string;
12
+ collection: C;
13
+ get: <T>(id: number | string, params?: object) => Promise<T>;
14
+ getAll: <T_1>(params?: object) => Promise<T_1>;
15
+ create: <T_2>(payload: object) => Promise<T_2>;
16
+ update: <T_3>(id: number | string, payload: object) => Promise<T_3>;
17
+ destroy: (id: number | string) => Promise<void>;
18
+ };
19
+ type ResourceApi = ReturnType<ReturnType<typeof resourceApiFor>>;
20
+ export { resourceApiFor };
21
+ export type { ResourceApi, ResourceApiOptions };
22
+ //# sourceMappingURL=createResourceApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createResourceApi.d.ts","sourceRoot":"","sources":["../../../../src/api/createResourceApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAO3C,UAAU,kBAAkB,CAAC,UAAU,SAAS,MAAM,GAAG,MAAM;IAC7D,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAID,iBAAS,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,MAAW,EAAE;;CAAK;;;;iBAoBhD,MAAM,GAAG,MAAM,WAAW,MAAM;2BAIlB,MAAM;2BAKZ,MAAM;sBAEX,MAAM,GAAG,MAAM,WAAW,MAAM;kBAI5B,MAAM,GAAG,MAAM;EAKxC;AAED,KAAK,WAAW,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1B,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,64 @@
1
+ import { type DataTag, type DefaultError, type InfiniteData, type UseInfiniteQueryOptions, type QueryFunction, type UseQueryOptions } from '@tanstack/react-query';
2
+ import type { QueryKeys } from './createQueryKeys';
3
+ import type { ResourceApi } from './createResourceApi';
4
+ import type { PaginatedResponse, PaginationParams } from './types';
5
+ declare const DEFAULT_PAGE_SIZE = 10;
6
+ type DetailKey = ReturnType<QueryKeys['one']>;
7
+ type ListKey = ReturnType<QueryKeys['list']>;
8
+ type InfiniteKey = ReturnType<QueryKeys['infinite']>;
9
+ type QueryFor<T, K extends readonly unknown[]> = UseQueryOptions<T, DefaultError, T, K> & {
10
+ queryKey: DataTag<K, T, DefaultError>;
11
+ };
12
+ type SuspendableQueryFor<T, K extends readonly unknown[]> = Omit<QueryFor<T, K>, 'queryFn'> & {
13
+ queryFn?: QueryFunction<T, K>;
14
+ };
15
+ type InfiniteQueryFor<T> = UseInfiniteQueryOptions<T, DefaultError, InfiniteData<T, number>, InfiniteKey, number> & {
16
+ queryKey: DataTag<InfiniteKey, InfiniteData<T, unknown>, DefaultError>;
17
+ };
18
+ type SuspendableInfiniteQueryFor<T> = Omit<InfiniteQueryFor<T>, 'queryFn'> & {
19
+ queryFn?: QueryFunction<T, InfiniteKey, number>;
20
+ };
21
+ type OneLeaf<T> = QueryFor<T, DetailKey>;
22
+ type SuspenseOneLeaf<T> = SuspendableQueryFor<T, DetailKey>;
23
+ type ListLeaf<T> = SuspendableQueryFor<T[], ListKey>;
24
+ type ListPageLeaf<T> = SuspendableQueryFor<T, ListKey>;
25
+ type InfiniteLeaf<T> = SuspendableInfiniteQueryFor<T>;
26
+ type Page<Collection extends string, Item> = PaginatedResponse<Record<Collection, Item[]>>;
27
+ type VariantOf<M> = keyof M & string;
28
+ interface InfiniteOptions {
29
+ pageSize?: number;
30
+ }
31
+ type InfinitePaging = {
32
+ pageSize?: number;
33
+ page?: never;
34
+ };
35
+ type ListParams<P> = [P] extends [never] ? PaginationParams : P & PaginationParams;
36
+ type InfiniteParams<P> = [P] extends [never] ? InfinitePaging : P & InfinitePaging;
37
+ type ParamsArg<T> = Partial<T> extends T ? [params?: T] : [params: T];
38
+ interface OneLeafFn<T> {
39
+ (id: number | string): SuspenseOneLeaf<T>;
40
+ (id: number | string | undefined): OneLeaf<T>;
41
+ }
42
+ interface VariantOneLeafFn<M> {
43
+ <V extends VariantOf<M>>(variant: V, id: number | string): SuspenseOneLeaf<M[V]>;
44
+ <V extends VariantOf<M>>(variant: V, id: number | string | undefined): OneLeaf<M[V]>;
45
+ }
46
+ declare function queriesFor<C extends string>(api: ResourceApi & {
47
+ collection: C;
48
+ }, keys: QueryKeys): {
49
+ one: <T>() => OneLeafFn<T>;
50
+ list: <T_1, P extends object = never>() => (...[params]: ParamsArg<ListParams<P>>) => ListLeaf<T_1>;
51
+ listPage: <T_2, P_1 extends object = never>() => (...[params]: ParamsArg<ListParams<P_1>>) => ListPageLeaf<Page<C, T_2>>;
52
+ infinite: <T_3, P_2 extends object = never>(options?: InfiniteOptions) => (...[callParams]: ParamsArg<InfiniteParams<P_2>>) => InfiniteLeaf<Page<C, T_3>>;
53
+ };
54
+ declare function variantQueriesFor<C extends string>(api: ResourceApi & {
55
+ collection: C;
56
+ }, keys: QueryKeys): {
57
+ one: <M>() => VariantOneLeafFn<M>;
58
+ list: <M_1, P extends object = never>() => <V extends VariantOf<M_1>>(variant: V, ...[params]: ParamsArg<ListParams<P>>) => ListLeaf<M_1[V]>;
59
+ listPage: <M_2, P_1 extends object = never>() => <V_1 extends VariantOf<M_2>>(variant: V_1, ...[params]: ParamsArg<ListParams<P_1>>) => ListPageLeaf<Page<C, M_2[V_1]>>;
60
+ infinite: <M_3, P_2 extends object = never>(options?: InfiniteOptions) => <V_2 extends VariantOf<M_3>>(variant: V_2, ...[callParams]: ParamsArg<InfiniteParams<P_2>>) => InfiniteLeaf<Page<C, M_3[V_2]>>;
61
+ };
62
+ export { DEFAULT_PAGE_SIZE, queriesFor, variantQueriesFor };
63
+ export type { InfiniteLeaf, InfiniteOptions, ListLeaf, ListPageLeaf, OneLeaf, Page, SuspenseOneLeaf, };
64
+ //# sourceMappingURL=queriesFor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queriesFor.d.ts","sourceRoot":"","sources":["../../../../src/api/queriesFor.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@ type RansackGrouping<Flat, E> = {
29
29
  } & Partial<RansackParamsKeys<Flat> & E>;
30
30
  export type RansackParams<M, E = {}> = {
31
31
  q?: RansackParamsKeys<FlattenObject<M>> & Partial<E> & Sorts & {
32
+ m?: 'or' | 'and';
32
33
  g?: RansackGrouping<FlattenObject<M>, E>[];
33
34
  };
34
35
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ransack.d.ts","sourceRoot":"","sources":["../../../../src/api/ransack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ransack.d.ts","sourceRoot":"","sources":["../../../../src/api/ransack.ts"],"names":[],"mappings":"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"}
@@ -6,4 +6,4 @@ interface EmptyStateProps extends ViewProps {
6
6
  }
7
7
  export default function EmptyState({ title, description }: EmptyStateProps): import("react").JSX.Element;
8
8
  export {};
9
- //# sourceMappingURL=EmtpyState.d.ts.map
9
+ //# sourceMappingURL=EmptyState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EmtpyState.d.ts","sourceRoot":"","sources":["../../../../src/components/EmtpyState.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAOzC,UAAU,eAAgB,SAAQ,SAAS;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,eAAe,+BAkBzE"}
1
+ {"version":3,"file":"EmptyState.d.ts","sourceRoot":"","sources":["../../../../src/components/EmptyState.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAOzC,UAAU,eAAgB,SAAQ,SAAS;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,eAAe,+BAkBzE"}
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationsList.d.ts","sourceRoot":"","sources":["../../../../src/components/NotificationsList.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAkE5D,UAAU,qBAAqB,CAAC,aAAa;IAC3C,aAAa,EAAE,aAAa,EAAE,CAAC;IAC/B,OAAO,EAAE,CAAC,YAAY,EAAE,aAAa,KAAK,IAAI,CAAC;CAChD;AAED,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,aAAa,SAAS,mBAAmB,EAAE,EACnF,aAAa,EACb,OAAO,GACR,EAAE,qBAAqB,CAAC,aAAa,CAAC,+BAkBtC"}
1
+ {"version":3,"file":"NotificationsList.d.ts","sourceRoot":"","sources":["../../../../src/components/NotificationsList.tsx"],"names":[],"mappings":";AASA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAkE5D,UAAU,qBAAqB,CAAC,aAAa;IAC3C,aAAa,EAAE,aAAa,EAAE,CAAC;IAC/B,OAAO,EAAE,CAAC,YAAY,EAAE,aAAa,KAAK,IAAI,CAAC;CAChD;AAED,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,aAAa,SAAS,mBAAmB,EAAE,EACnF,aAAa,EACb,OAAO,GACR,EAAE,qBAAqB,CAAC,aAAa,CAAC,+BAkBtC"}
@@ -48,7 +48,7 @@ export { default as NotificationButton } from './NotificationButton';
48
48
  export { default as NotificationsList } from './NotificationsList';
49
49
  export { default as AppNotificationModal } from './AppNotificationModal';
50
50
  export { default as BasePing } from './BasePing';
51
- export { default as EmptyState } from './EmtpyState';
51
+ export { default as EmptyState } from './EmptyState';
52
52
  export { default as BaseIconCard } from './BaseIconCard';
53
53
  export { default as FormikClabeInput } from './FormikClabeInput';
54
54
  export { default as ClabeConfirmationModal } from './ClabeConfirmationModal';
@@ -1,2 +1,2 @@
1
- export declare function useDownloadFile(url: string | null, filename: string): import("@tanstack/react-query/build/legacy/types").UseQueryResult<string | null, Error>;
1
+ export declare function useDownloadFile(url: string | null, filename: string): import("@tanstack/react-query/build/legacy/_tsup-dts-rollup").UseQueryResult<NoInfer<TData>, Error>;
2
2
  //# sourceMappingURL=useDownloadFile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useDownloadFile.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useDownloadFile.ts"],"names":[],"mappings":"AAIA,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,2FAYnE"}
1
+ {"version":3,"file":"useDownloadFile.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useDownloadFile.ts"],"names":[],"mappings":"AAIA,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,uGAYnE"}
@@ -9,6 +9,9 @@ export * from './UIKitProvider';
9
9
  export * from './utils';
10
10
  export * from './api/types';
11
11
  export * from './api/jobRun';
12
+ export * from './api/createQueryKeys';
13
+ export * from './api/createResourceApi';
14
+ export * from './api/queriesFor';
12
15
  export type { HeroIcon, HeroIconProps } from './types/heroicons';
13
16
  export type { Icon, IconColor, IconProps } from './types/icons';
14
17
  export type { RequireAtLeastOne } from './types/requireAtLeastOne';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACpD,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACjE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAChE,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,cAAc,oCAAoC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACpD,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACjE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAChE,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,cAAc,oCAAoC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=createQueryKeys.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createQueryKeys.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/createQueryKeys.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=createResourceApi.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createResourceApi.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/createResourceApi.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=queriesFor.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queriesFor.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/queriesFor.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,33 @@
1
+ interface CurrentFilter {
2
+ variant?: string;
3
+ }
4
+ interface ListFilter {
5
+ variant?: string;
6
+ params?: object;
7
+ envelope?: true;
8
+ infinite?: true;
9
+ }
10
+ interface DetailFilter {
11
+ id?: number | string;
12
+ variant?: string;
13
+ params?: object;
14
+ }
15
+ declare function createQueryKeys(resource: string): {
16
+ all: () => readonly [string];
17
+ current: (filter?: CurrentFilter) => readonly [string, "current"] | readonly [string, "current", CurrentFilter];
18
+ list: (filter?: ListFilter) => readonly [string, "list"] | readonly [string, "list", ListFilter];
19
+ infinite: (filter: Omit<ListFilter, 'infinite'> & {
20
+ pageSize?: number;
21
+ }) => readonly [string, "list", {
22
+ infinite: true;
23
+ variant?: string | undefined;
24
+ params?: object | undefined;
25
+ envelope?: true | undefined;
26
+ pageSize?: number | undefined;
27
+ }];
28
+ one: (filter?: DetailFilter) => readonly [string, "detail"] | readonly [string, "detail", DetailFilter];
29
+ };
30
+ type QueryKeys = ReturnType<typeof createQueryKeys>;
31
+ export { createQueryKeys };
32
+ export type { CurrentFilter, DetailFilter, ListFilter, QueryKeys, };
33
+ //# sourceMappingURL=createQueryKeys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createQueryKeys.d.ts","sourceRoot":"","sources":["../../../../src/api/createQueryKeys.ts"],"names":[],"mappings":"AAAA,UAAU,aAAa;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,UAAU;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,CAAC;CACjB;AAED,UAAU,YAAY;IACpB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAUD,iBAAS,eAAe,CAAC,QAAQ,EAAE,MAAM;;uBAGlB,aAAa;oBAGhB,UAAU;uBAGP,KAAK,UAAU,EAAE,UAAU,CAAC,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;mBAGxD,YAAY;EAI9B;AAED,KAAK,SAAS,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,YAAY,EACV,aAAa,EACb,YAAY,EACZ,UAAU,EACV,SAAS,GACV,CAAC"}
@@ -0,0 +1,22 @@
1
+ import type { AxiosInstance } from 'axios';
2
+ interface ResourceApiOptions<Collection extends string = string> {
3
+ singular: string;
4
+ collection?: Collection;
5
+ route?: string;
6
+ }
7
+ declare function resourceApiFor(client: AxiosInstance, { prefix }?: {
8
+ prefix?: string | undefined;
9
+ }): <R extends string, C extends string = R>(resource: R, options: ResourceApiOptions<C>) => {
10
+ route: string;
11
+ singular: string;
12
+ collection: C;
13
+ get: <T>(id: number | string, params?: object) => Promise<T>;
14
+ getAll: <T_1>(params?: object) => Promise<T_1>;
15
+ create: <T_2>(payload: object) => Promise<T_2>;
16
+ update: <T_3>(id: number | string, payload: object) => Promise<T_3>;
17
+ destroy: (id: number | string) => Promise<void>;
18
+ };
19
+ type ResourceApi = ReturnType<ReturnType<typeof resourceApiFor>>;
20
+ export { resourceApiFor };
21
+ export type { ResourceApi, ResourceApiOptions };
22
+ //# sourceMappingURL=createResourceApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createResourceApi.d.ts","sourceRoot":"","sources":["../../../../src/api/createResourceApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAO3C,UAAU,kBAAkB,CAAC,UAAU,SAAS,MAAM,GAAG,MAAM;IAC7D,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAID,iBAAS,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,MAAW,EAAE;;CAAK;;;;iBAoBhD,MAAM,GAAG,MAAM,WAAW,MAAM;2BAIlB,MAAM;2BAKZ,MAAM;sBAEX,MAAM,GAAG,MAAM,WAAW,MAAM;kBAI5B,MAAM,GAAG,MAAM;EAKxC;AAED,KAAK,WAAW,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1B,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC"}