@fjell/client-api 4.4.1 → 4.4.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.
Files changed (71) hide show
  1. package/dist/AItemAPI.js +8 -1
  2. package/dist/AItemAPI.js.map +1 -1
  3. package/dist/CItemAPI.d.ts +12 -9
  4. package/dist/CItemAPI.js +4 -1
  5. package/dist/CItemAPI.js.map +1 -1
  6. package/dist/ClientApi.d.ts +12 -10
  7. package/dist/ClientApiOptions.d.ts +5 -0
  8. package/dist/PItemAPI.d.ts +13 -10
  9. package/dist/PItemAPI.js +16 -10
  10. package/dist/PItemAPI.js.map +1 -1
  11. package/dist/index.cjs +173 -73
  12. package/dist/index.cjs.map +1 -1
  13. package/dist/ops/action.d.ts +2 -2
  14. package/dist/ops/action.js +6 -5
  15. package/dist/ops/action.js.map +1 -1
  16. package/dist/ops/all.d.ts +2 -2
  17. package/dist/ops/all.js +7 -6
  18. package/dist/ops/all.js.map +1 -1
  19. package/dist/ops/allAction.d.ts +2 -2
  20. package/dist/ops/allAction.js +6 -5
  21. package/dist/ops/allAction.js.map +1 -1
  22. package/dist/ops/allFacet.d.ts +5 -0
  23. package/dist/ops/allFacet.js +24 -0
  24. package/dist/ops/allFacet.js.map +1 -0
  25. package/dist/ops/create.d.ts +2 -2
  26. package/dist/ops/create.js +6 -5
  27. package/dist/ops/create.js.map +1 -1
  28. package/dist/ops/facet.d.ts +5 -0
  29. package/dist/ops/facet.js +34 -0
  30. package/dist/ops/facet.js.map +1 -0
  31. package/dist/ops/find.d.ts +2 -2
  32. package/dist/ops/find.js +10 -9
  33. package/dist/ops/find.js.map +1 -1
  34. package/dist/ops/findOne.d.ts +5 -0
  35. package/dist/ops/findOne.js +27 -0
  36. package/dist/ops/findOne.js.map +1 -0
  37. package/dist/ops/get.d.ts +2 -2
  38. package/dist/ops/get.js +6 -5
  39. package/dist/ops/get.js.map +1 -1
  40. package/dist/ops/index.js +6 -0
  41. package/dist/ops/index.js.map +1 -1
  42. package/dist/ops/one.d.ts +2 -2
  43. package/dist/ops/one.js +7 -6
  44. package/dist/ops/one.js.map +1 -1
  45. package/dist/ops/remove.d.ts +2 -2
  46. package/dist/ops/remove.js +6 -5
  47. package/dist/ops/remove.js.map +1 -1
  48. package/dist/ops/update.d.ts +2 -2
  49. package/dist/ops/update.js +6 -5
  50. package/dist/ops/update.js.map +1 -1
  51. package/dist/util/general.d.ts +4 -0
  52. package/package.json +6 -6
  53. package/src/AItemAPI.ts +17 -9
  54. package/src/CItemAPI.ts +22 -16
  55. package/src/ClientApi.ts +59 -54
  56. package/src/ClientApiOptions.ts +5 -0
  57. package/src/PItemAPI.ts +56 -42
  58. package/src/ops/action.ts +19 -23
  59. package/src/ops/all.ts +17 -19
  60. package/src/ops/allAction.ts +18 -21
  61. package/src/ops/allFacet.ts +46 -0
  62. package/src/ops/create.ts +21 -23
  63. package/src/ops/facet.ts +58 -0
  64. package/src/ops/find.ts +20 -23
  65. package/src/ops/findOne.ts +51 -0
  66. package/src/ops/get.ts +17 -20
  67. package/src/ops/index.ts +80 -61
  68. package/src/ops/one.ts +3 -5
  69. package/src/ops/remove.ts +17 -20
  70. package/src/ops/update.ts +17 -19
  71. package/src/util/general.ts +65 -0
package/dist/ops/find.js CHANGED
@@ -3,18 +3,19 @@ import LibLogger from '../logger.js';
3
3
 
4
4
  const logger = LibLogger.get('client-api', 'ops', 'find');
5
5
  const getFindOperation = (api, apiOptions, utilities)=>{
6
- const find = async (finder, finderParams, options = {}, locations = [])=>{
7
- logger.default('find', {
8
- finder,
9
- finderParams,
10
- locations
11
- });
6
+ const find = async (finder, finderParams = {}, locations = [])=>{
12
7
  utilities.verifyLocations(locations);
13
8
  const loc = locations;
14
- const params = finderToParams(finder, finderParams);
15
- const requestOptions = Object.assign({}, options, {
9
+ const mergedParams = finderToParams(finder, finderParams);
10
+ const requestOptions = Object.assign({}, apiOptions.getOptions, {
16
11
  isAuthenticated: apiOptions.allAuthenticated,
17
- params
12
+ params: mergedParams
13
+ });
14
+ logger.default('find', {
15
+ finder,
16
+ finderParams,
17
+ locations,
18
+ requestOptions
18
19
  });
19
20
  return utilities.validatePK(await utilities.processArray(api.httpGet(utilities.getPath(loc), requestOptions)));
20
21
  };
@@ -1 +1 @@
1
- {"version":3,"file":"find.js","sources":["../../src/ops/find.ts"],"sourcesContent":["import {\n Item,\n LocKeyArray,\n QueryParams\n} from \"@fjell/core\";\nimport { GetMethodOptions, HttpApi } from \"@fjell/http-api\";\n \nimport { finderToParams } from \"@/AItemAPI\";\nimport { ClientApiOptions } from \"@/ClientApiOptions\";\nimport LibLogger from \"@/logger\";\nimport { Utilities } from \"@/Utilities\";\n \nconst logger = LibLogger.get('client-api', 'ops', 'find');\n \nexport const getFindOperation = <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>\n \n ) => {\n \n const find = async (\n finder: string,\n finderParams: Record<string, string | number | boolean | Date | Array<string | number | boolean | Date>>,\n options: Partial<GetMethodOptions> = {},\n locations: LocKeyArray<L1, L2, L3, L4, L5> | [] = []\n ): Promise<V[]> => {\n logger.default('find', { finder, finderParams, locations });\n utilities.verifyLocations(locations);\n const loc: LocKeyArray<L1, L2, L3, L4, L5> | [] = locations;\n \n const params: QueryParams = finderToParams(finder, finderParams);\n \n const requestOptions = Object.assign({}, options, { isAuthenticated: apiOptions.allAuthenticated, params });\n \n return utilities.validatePK(await utilities.processArray(\n api.httpGet<V[]>(\n utilities.getPath(loc),\n requestOptions,\n ))) as V[];\n }\n \n return find;\n}\n "],"names":["logger","LibLogger","get","getFindOperation","api","apiOptions","utilities","find","finder","finderParams","options","locations","default","verifyLocations","loc","params","finderToParams","requestOptions","Object","assign","isAuthenticated","allAuthenticated","validatePK","processArray","httpGet","getPath"],"mappings":";;;AAYA,MAAMA,MAASC,GAAAA,SAAAA,CAAUC,GAAG,CAAC,cAAc,KAAO,EAAA,MAAA,CAAA;AAErCC,MAAAA,gBAAAA,GAAmB,CAQ5BC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;IAIF,MAAMC,IAAAA,GAAO,OACXC,MACAC,EAAAA,YAAAA,EACAC,UAAqC,EAAE,EACvCC,SAAAA,GAAkD,EAAE,GAAA;QAEpDX,MAAOY,CAAAA,OAAO,CAAC,MAAQ,EAAA;AAAEJ,YAAAA,MAAAA;AAAQC,YAAAA,YAAAA;AAAcE,YAAAA;AAAU,SAAA,CAAA;AACzDL,QAAAA,SAAAA,CAAUO,eAAe,CAACF,SAAAA,CAAAA;AAC1B,QAAA,MAAMG,GAA4CH,GAAAA,SAAAA;QAElD,MAAMI,MAAAA,GAAsBC,eAAeR,MAAQC,EAAAA,YAAAA,CAAAA;AAEnD,QAAA,MAAMQ,iBAAiBC,MAAOC,CAAAA,MAAM,CAAC,IAAIT,OAAS,EAAA;AAAEU,YAAAA,eAAAA,EAAiBf,WAAWgB,gBAAgB;AAAEN,YAAAA;AAAO,SAAA,CAAA;AAEzG,QAAA,OAAOT,SAAUgB,CAAAA,UAAU,CAAC,MAAMhB,SAAUiB,CAAAA,YAAY,CACtDnB,GAAAA,CAAIoB,OAAO,CACTlB,SAAUmB,CAAAA,OAAO,CAACX,GAClBG,CAAAA,EAAAA,cAAAA,CAAAA,CAAAA,CAAAA;AAEN,KAAA;IAEA,OAAOV,IAAAA;AACT;;;;"}
1
+ {"version":3,"file":"find.js","sources":["../../src/ops/find.ts"],"sourcesContent":["import {\n Item,\n LocKeyArray,\n QueryParams\n} from \"@fjell/core\";\nimport { HttpApi } from \"@fjell/http-api\";\n\nimport { finderToParams } from \"@/AItemAPI\";\nimport { ClientApiOptions } from \"@/ClientApiOptions\";\nimport LibLogger from \"@/logger\";\nimport { Utilities } from \"@/Utilities\";\n\nconst logger = LibLogger.get('client-api', 'ops', 'find');\n\nexport const getFindOperation = <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>\n\n ) => {\n\n const find = async (\n finder: string,\n finderParams: Record<string, string | number | boolean | Date | Array<string | number | boolean | Date>> = {},\n locations: LocKeyArray<L1, L2, L3, L4, L5> | [] = []\n ): Promise<V[]> => {\n utilities.verifyLocations(locations);\n const loc: LocKeyArray<L1, L2, L3, L4, L5> | [] = locations;\n\n const mergedParams: QueryParams = finderToParams(finder, finderParams);\n const requestOptions = Object.assign({}, apiOptions.getOptions, { isAuthenticated: apiOptions.allAuthenticated, params: mergedParams });\n logger.default('find', { finder, finderParams, locations, requestOptions });\n\n return utilities.validatePK(await utilities.processArray(\n api.httpGet<V[]>(\n utilities.getPath(loc),\n requestOptions,\n ))) as V[];\n }\n\n return find;\n}\n"],"names":["logger","LibLogger","get","getFindOperation","api","apiOptions","utilities","find","finder","finderParams","locations","verifyLocations","loc","mergedParams","finderToParams","requestOptions","Object","assign","getOptions","isAuthenticated","allAuthenticated","params","default","validatePK","processArray","httpGet","getPath"],"mappings":";;;AAYA,MAAMA,MAASC,GAAAA,SAAAA,CAAUC,GAAG,CAAC,cAAc,KAAO,EAAA,MAAA,CAAA;AAErCC,MAAAA,gBAAAA,GAAmB,CAQ5BC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;IAIF,MAAMC,IAAAA,GAAO,OACXC,MACAC,EAAAA,YAAAA,GAA2G,EAAE,EAC7GC,YAAkD,EAAE,GAAA;AAEpDJ,QAAAA,SAAAA,CAAUK,eAAe,CAACD,SAAAA,CAAAA;AAC1B,QAAA,MAAME,GAA4CF,GAAAA,SAAAA;QAElD,MAAMG,YAAAA,GAA4BC,eAAeN,MAAQC,EAAAA,YAAAA,CAAAA;QACzD,MAAMM,cAAAA,GAAiBC,OAAOC,MAAM,CAAC,EAAIZ,EAAAA,UAAAA,CAAWa,UAAU,EAAE;AAAEC,YAAAA,eAAAA,EAAiBd,WAAWe,gBAAgB;YAAEC,MAAQR,EAAAA;AAAa,SAAA,CAAA;QACrIb,MAAOsB,CAAAA,OAAO,CAAC,MAAQ,EAAA;AAAEd,YAAAA,MAAAA;AAAQC,YAAAA,YAAAA;AAAcC,YAAAA,SAAAA;AAAWK,YAAAA;AAAe,SAAA,CAAA;AAEzE,QAAA,OAAOT,SAAUiB,CAAAA,UAAU,CAAC,MAAMjB,SAAUkB,CAAAA,YAAY,CACtDpB,GAAAA,CAAIqB,OAAO,CACTnB,SAAUoB,CAAAA,OAAO,CAACd,GAClBG,CAAAA,EAAAA,cAAAA,CAAAA,CAAAA,CAAAA;AAEN,KAAA;IAEA,OAAOR,IAAAA;AACT;;;;"}
@@ -0,0 +1,5 @@
1
+ import { Item, LocKeyArray } from '@fjell/core';
2
+ import { HttpApi } from '@fjell/http-api';
3
+ import { ClientApiOptions } from '../ClientApiOptions';
4
+ import { Utilities } from '../Utilities';
5
+ export declare const getFindOneOperation: <V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(api: HttpApi, apiOptions: ClientApiOptions, utilities: Utilities<V, S, L1, L2, L3, L4, L5>) => (finder: string, finderParams?: Record<string, string | number | boolean | Date | Array<string | number | boolean | Date>>, locations?: LocKeyArray<L1, L2, L3, L4, L5> | []) => Promise<V>;
@@ -0,0 +1,27 @@
1
+ import { finderToParams } from '../AItemAPI.js';
2
+ import LibLogger from '../logger.js';
3
+
4
+ const logger = LibLogger.get('client-api', 'ops', 'find');
5
+ const getFindOneOperation = (api, apiOptions, utilities)=>{
6
+ const findOne = async (finder, finderParams = {}, locations = [])=>{
7
+ utilities.verifyLocations(locations);
8
+ const loc = locations;
9
+ const params = finderToParams(finder, finderParams);
10
+ params.one = true;
11
+ const requestOptions = Object.assign({}, apiOptions.getOptions, {
12
+ isAuthenticated: apiOptions.allAuthenticated,
13
+ params
14
+ });
15
+ logger.default('findOne', {
16
+ finder,
17
+ finderParams,
18
+ locations,
19
+ requestOptions
20
+ });
21
+ return utilities.validatePK(await utilities.processArray(api.httpGet(utilities.getPath(loc), requestOptions)))[0];
22
+ };
23
+ return findOne;
24
+ };
25
+
26
+ export { getFindOneOperation };
27
+ //# sourceMappingURL=findOne.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findOne.js","sources":["../../src/ops/findOne.ts"],"sourcesContent":["import {\n Item,\n LocKeyArray,\n QueryParams\n} from \"@fjell/core\";\nimport { HttpApi } from \"@fjell/http-api\";\n\nimport { finderToParams } from \"@/AItemAPI\";\nimport { ClientApiOptions } from \"@/ClientApiOptions\";\nimport LibLogger from \"@/logger\";\nimport { Utilities } from \"@/Utilities\";\n\nconst logger = LibLogger.get('client-api', 'ops', 'find');\n\nexport const getFindOneOperation = <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>\n\n ) => {\n\n const findOne = async (\n finder: string,\n finderParams: Record<string, string | number | boolean | Date | Array<string | number | boolean | Date>> = {},\n locations: LocKeyArray<L1, L2, L3, L4, L5> | [] = []\n ): Promise<V> => {\n utilities.verifyLocations(locations);\n const loc: LocKeyArray<L1, L2, L3, L4, L5> | [] = locations;\n\n const params: QueryParams = finderToParams(finder, finderParams);\n params.one = true;\n\n const requestOptions = Object.assign({}, apiOptions.getOptions, { isAuthenticated: apiOptions.allAuthenticated, params });\n logger.default('findOne', { finder, finderParams, locations, requestOptions });\n\n return (utilities.validatePK(await utilities.processArray(\n api.httpGet<V[]>(\n utilities.getPath(loc),\n requestOptions,\n ))) as V[])[0];\n }\n\n return findOne;\n}\n"],"names":["logger","LibLogger","get","getFindOneOperation","api","apiOptions","utilities","findOne","finder","finderParams","locations","verifyLocations","loc","params","finderToParams","one","requestOptions","Object","assign","getOptions","isAuthenticated","allAuthenticated","default","validatePK","processArray","httpGet","getPath"],"mappings":";;;AAYA,MAAMA,MAASC,GAAAA,SAAAA,CAAUC,GAAG,CAAC,cAAc,KAAO,EAAA,MAAA,CAAA;AAErCC,MAAAA,mBAAAA,GAAsB,CAQ/BC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;IAIF,MAAMC,OAAAA,GAAU,OACdC,MACAC,EAAAA,YAAAA,GAA2G,EAAE,EAC7GC,YAAkD,EAAE,GAAA;AAEpDJ,QAAAA,SAAAA,CAAUK,eAAe,CAACD,SAAAA,CAAAA;AAC1B,QAAA,MAAME,GAA4CF,GAAAA,SAAAA;QAElD,MAAMG,MAAAA,GAAsBC,eAAeN,MAAQC,EAAAA,YAAAA,CAAAA;AACnDI,QAAAA,MAAAA,CAAOE,GAAG,GAAG,IAAA;QAEb,MAAMC,cAAAA,GAAiBC,OAAOC,MAAM,CAAC,EAAIb,EAAAA,UAAAA,CAAWc,UAAU,EAAE;AAAEC,YAAAA,eAAAA,EAAiBf,WAAWgB,gBAAgB;AAAER,YAAAA;AAAO,SAAA,CAAA;QACvHb,MAAOsB,CAAAA,OAAO,CAAC,SAAW,EAAA;AAAEd,YAAAA,MAAAA;AAAQC,YAAAA,YAAAA;AAAcC,YAAAA,SAAAA;AAAWM,YAAAA;AAAe,SAAA,CAAA;AAE5E,QAAA,OAAO,SAAWO,CAAAA,UAAU,CAAC,MAAMjB,UAAUkB,YAAY,CACvDpB,GAAIqB,CAAAA,OAAO,CACTnB,SAAUoB,CAAAA,OAAO,CAACd,GAClBI,CAAAA,EAAAA,cAAAA,CAAAA,CAAAA,CACS,CAAC,CAAE,CAAA;AAClB,KAAA;IAEA,OAAOT,OAAAA;AACT;;;;"}
package/dist/ops/get.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { ComKey, Item, PriKey } from '@fjell/core';
2
- import { GetMethodOptions, HttpApi } from '@fjell/http-api';
2
+ import { HttpApi } from '@fjell/http-api';
3
3
  import { ClientApiOptions } from '../ClientApiOptions';
4
4
  import { Utilities } from '../Utilities';
5
- export declare const getGetOperation: <V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(api: HttpApi, apiOptions: ClientApiOptions, utilities: Utilities<V, S, L1, L2, L3, L4, L5>) => (ik: PriKey<S> | ComKey<S, never, never, never, never, never>, options?: Partial<GetMethodOptions>) => Promise<V | null>;
5
+ export declare const getGetOperation: <V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(api: HttpApi, apiOptions: ClientApiOptions, utilities: Utilities<V, S, L1, L2, L3, L4, L5>) => (ik: PriKey<S> | ComKey<S, never, never, never, never, never>) => Promise<V | null>;
package/dist/ops/get.js CHANGED
@@ -2,13 +2,14 @@ import LibLogger from '../logger.js';
2
2
 
3
3
  const logger = LibLogger.get('client-api', 'ops', 'get');
4
4
  const getGetOperation = (api, apiOptions, utilities)=>{
5
- const get = async (ik, options = {})=>{
6
- logger.default('get', {
7
- ik
8
- });
9
- const requestOptions = Object.assign({}, options, {
5
+ const get = async (ik)=>{
6
+ const requestOptions = Object.assign({}, apiOptions.getOptions, {
10
7
  isAuthenticated: apiOptions.readAuthenticated
11
8
  });
9
+ logger.default('get', {
10
+ ik,
11
+ requestOptions
12
+ });
12
13
  return utilities.validatePK(await utilities.processOne(api.httpGet(utilities.getPath(ik), requestOptions)));
13
14
  };
14
15
  return get;
@@ -1 +1 @@
1
- {"version":3,"file":"get.js","sources":["../../src/ops/get.ts"],"sourcesContent":["import {\n ComKey,\n Item,\n PriKey,\n} from \"@fjell/core\";\nimport { GetMethodOptions, HttpApi } from \"@fjell/http-api\";\n \nimport { ClientApiOptions } from \"@/ClientApiOptions\";\nimport LibLogger from \"@/logger\";\nimport { Utilities } from \"@/Utilities\";\n \nconst logger = LibLogger.get('client-api', 'ops', 'get');\n \nexport const getGetOperation = <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>\n \n ) => {\n \n const get = async (\n ik: PriKey<S> | ComKey<S, never, never, never, never, never>,\n options: Partial<GetMethodOptions> = {},\n ): Promise<V | null> => {\n logger.default('get', { ik });\n \n const requestOptions = Object.assign({}, options, { isAuthenticated: apiOptions.readAuthenticated });\n \n return utilities.validatePK(await utilities.processOne(\n api.httpGet<V>(\n utilities.getPath(ik),\n requestOptions,\n ))) as V;\n }\n \n return get;\n}\n "],"names":["logger","LibLogger","get","getGetOperation","api","apiOptions","utilities","ik","options","default","requestOptions","Object","assign","isAuthenticated","readAuthenticated","validatePK","processOne","httpGet","getPath"],"mappings":";;AAWA,MAAMA,MAASC,GAAAA,SAAAA,CAAUC,GAAG,CAAC,cAAc,KAAO,EAAA,KAAA,CAAA;AAErCC,MAAAA,eAAAA,GAAkB,CAQ3BC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;AAIF,IAAA,MAAMJ,GAAM,GAAA,OACVK,EACAC,EAAAA,OAAAA,GAAqC,EAAE,GAAA;QAEvCR,MAAOS,CAAAA,OAAO,CAAC,KAAO,EAAA;AAAEF,YAAAA;AAAG,SAAA,CAAA;AAE3B,QAAA,MAAMG,iBAAiBC,MAAOC,CAAAA,MAAM,CAAC,IAAIJ,OAAS,EAAA;AAAEK,YAAAA,eAAAA,EAAiBR,WAAWS;AAAkB,SAAA,CAAA;AAElG,QAAA,OAAOR,SAAUS,CAAAA,UAAU,CAAC,MAAMT,SAAUU,CAAAA,UAAU,CACpDZ,GAAAA,CAAIa,OAAO,CACTX,SAAUY,CAAAA,OAAO,CAACX,EAClBG,CAAAA,EAAAA,cAAAA,CAAAA,CAAAA,CAAAA;AAEN,KAAA;IAEA,OAAOR,GAAAA;AACT;;;;"}
1
+ {"version":3,"file":"get.js","sources":["../../src/ops/get.ts"],"sourcesContent":["import {\n ComKey,\n Item,\n PriKey,\n} from \"@fjell/core\";\nimport { HttpApi } from \"@fjell/http-api\";\n\nimport { ClientApiOptions } from \"@/ClientApiOptions\";\nimport LibLogger from \"@/logger\";\nimport { Utilities } from \"@/Utilities\";\n\nconst logger = LibLogger.get('client-api', 'ops', 'get');\n\nexport const getGetOperation = <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>\n\n ) => {\n\n const get = async (\n ik: PriKey<S> | ComKey<S, never, never, never, never, never>,\n ): Promise<V | null> => {\n const requestOptions = Object.assign({}, apiOptions.getOptions, { isAuthenticated: apiOptions.readAuthenticated });\n logger.default('get', { ik, requestOptions });\n\n return utilities.validatePK(await utilities.processOne(\n api.httpGet<V>(\n utilities.getPath(ik),\n requestOptions,\n ))) as V;\n }\n\n return get;\n}\n"],"names":["logger","LibLogger","get","getGetOperation","api","apiOptions","utilities","ik","requestOptions","Object","assign","getOptions","isAuthenticated","readAuthenticated","default","validatePK","processOne","httpGet","getPath"],"mappings":";;AAWA,MAAMA,MAASC,GAAAA,SAAAA,CAAUC,GAAG,CAAC,cAAc,KAAO,EAAA,KAAA,CAAA;AAErCC,MAAAA,eAAAA,GAAkB,CAQ3BC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;AAIF,IAAA,MAAMJ,MAAM,OACVK,EAAAA,GAAAA;QAEA,MAAMC,cAAAA,GAAiBC,OAAOC,MAAM,CAAC,EAAIL,EAAAA,UAAAA,CAAWM,UAAU,EAAE;AAAEC,YAAAA,eAAAA,EAAiBP,WAAWQ;AAAkB,SAAA,CAAA;QAChHb,MAAOc,CAAAA,OAAO,CAAC,KAAO,EAAA;AAAEP,YAAAA,EAAAA;AAAIC,YAAAA;AAAe,SAAA,CAAA;AAE3C,QAAA,OAAOF,SAAUS,CAAAA,UAAU,CAAC,MAAMT,SAAUU,CAAAA,UAAU,CACpDZ,GAAAA,CAAIa,OAAO,CACTX,SAAUY,CAAAA,OAAO,CAACX,EAClBC,CAAAA,EAAAA,cAAAA,CAAAA,CAAAA,CAAAA;AAEN,KAAA;IAEA,OAAON,GAAAA;AACT;;;;"}
package/dist/ops/index.js CHANGED
@@ -7,13 +7,19 @@ import { getUpdateOperation } from './update.js';
7
7
  import { getGetOperation } from './get.js';
8
8
  import { getRemoveOperation } from './remove.js';
9
9
  import { getFindOperation } from './find.js';
10
+ import { getFindOneOperation } from './findOne.js';
11
+ import { getFacetOperation } from './facet.js';
12
+ import { getAllFacetOperation } from './allFacet.js';
10
13
 
11
14
  const getOperations = (api, apiOptions, utilities)=>{
12
15
  return {
13
16
  action: getActionOperation(api, apiOptions, utilities),
14
17
  all: getAllOperation(api, apiOptions, utilities),
15
18
  allAction: getAllActionOperation(api, apiOptions, utilities),
19
+ allFacet: getAllFacetOperation(api, apiOptions, utilities),
16
20
  create: getCreateOperation(api, apiOptions, utilities),
21
+ facet: getFacetOperation(api, apiOptions, utilities),
22
+ findOne: getFindOneOperation(api, apiOptions, utilities),
17
23
  find: getFindOperation(api, apiOptions, utilities),
18
24
  get: getGetOperation(api, apiOptions, utilities),
19
25
  one: getOneOperation(api, apiOptions, utilities),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/ops/index.ts"],"sourcesContent":["import { Item } from \"@fjell/core\"\nimport { getAllOperation } from \"./all\"\nimport { getActionOperation } from \"./action\"\nimport { Utilities } from \"@/Utilities\"\nimport { HttpApi } from \"@fjell/http-api\"\nimport { getAllActionOperation } from \"./allAction\"\nimport { getOneOperation } from \"./one\"\nimport { getCreateOperation } from \"./create\"\nimport { getUpdateOperation } from \"./update\"\nimport { getGetOperation } from \"./get\"\nimport { getRemoveOperation } from \"./remove\"\nimport { getFindOperation } from \"./find\"\nimport { ClientApiOptions } from \"@/ClientApiOptions\"\nimport { ClientApi } from \"@/ClientApi\"\n\nexport const getOperations =\n<\nV extends Item<S, L1, L2, L3, L4, L5>,\nS extends string,\nL1 extends string = never,\nL2 extends string = never,\nL3 extends string = never,\nL4 extends string = never,\nL5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>,\n \n ): ClientApi<V, S, L1, L2, L3, L4, L5> => {\n return {\n action: getActionOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n all: getAllOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n allAction: getAllActionOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n create: getCreateOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n find: getFindOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n get: getGetOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n one: getOneOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n remove: getRemoveOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n update: getUpdateOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n }\n}"],"names":["getOperations","api","apiOptions","utilities","action","getActionOperation","all","getAllOperation","allAction","getAllActionOperation","create","getCreateOperation","find","getFindOperation","get","getGetOperation","one","getOneOperation","remove","getRemoveOperation","update","getUpdateOperation"],"mappings":";;;;;;;;;;AAeaA,MAAAA,aAAAA,GACb,CAQIC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;IAGF,OAAO;QACLC,MAAQC,EAAAA,kBAAAA,CACNJ,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFG,GAAKC,EAAAA,eAAAA,CACHN,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFK,SAAWC,EAAAA,qBAAAA,CACTR,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFO,MAAQC,EAAAA,kBAAAA,CACNV,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFS,IAAMC,EAAAA,gBAAAA,CACJZ,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFW,GAAKC,EAAAA,eAAAA,CACHd,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFa,GAAKC,EAAAA,eAAAA,CACHhB,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFe,MAAQC,EAAAA,kBAAAA,CACNlB,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFiB,MAAQC,EAAAA,kBAAAA,CACNpB,KACAC,UACAC,EAAAA,SAAAA;AAEJ,KAAA;AACF;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/ops/index.ts"],"sourcesContent":["/* eslint-disable indent */\nimport { Item } from \"@fjell/core\"\nimport { getAllOperation } from \"./all\"\nimport { getActionOperation } from \"./action\"\nimport { Utilities } from \"@/Utilities\"\nimport { HttpApi } from \"@fjell/http-api\"\nimport { getAllActionOperation } from \"./allAction\"\nimport { getOneOperation } from \"./one\"\nimport { getCreateOperation } from \"./create\"\nimport { getUpdateOperation } from \"./update\"\nimport { getGetOperation } from \"./get\"\nimport { getRemoveOperation } from \"./remove\"\nimport { getFindOperation } from \"./find\"\nimport { ClientApiOptions } from \"@/ClientApiOptions\"\nimport { ClientApi } from \"@/ClientApi\"\nimport { getFindOneOperation } from \"./findOne\"\nimport { getFacetOperation } from \"./facet\"\nimport { getAllFacetOperation } from \"./allFacet\"\n\nexport const getOperations =\n <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>,\n\n ): ClientApi<V, S, L1, L2, L3, L4, L5> => {\n return {\n action: getActionOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n all: getAllOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n allAction: getAllActionOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n allFacet: getAllFacetOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n create: getCreateOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n facet: getFacetOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n findOne: getFindOneOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n find: getFindOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n get: getGetOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n one: getOneOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n remove: getRemoveOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n update: getUpdateOperation<V, S, L1, L2, L3, L4, L5>(\n api,\n apiOptions,\n utilities,\n ),\n }\n }"],"names":["getOperations","api","apiOptions","utilities","action","getActionOperation","all","getAllOperation","allAction","getAllActionOperation","allFacet","getAllFacetOperation","create","getCreateOperation","facet","getFacetOperation","findOne","getFindOneOperation","find","getFindOperation","get","getGetOperation","one","getOneOperation","remove","getRemoveOperation","update","getUpdateOperation"],"mappings":";;;;;;;;;;;;;AAmBaA,MAAAA,aAAAA,GACX,CAQIC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;IAGF,OAAO;QACLC,MAAQC,EAAAA,kBAAAA,CACNJ,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFG,GAAKC,EAAAA,eAAAA,CACHN,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFK,SAAWC,EAAAA,qBAAAA,CACTR,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFO,QAAUC,EAAAA,oBAAAA,CACRV,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFS,MAAQC,EAAAA,kBAAAA,CACNZ,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFW,KAAOC,EAAAA,iBAAAA,CACLd,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFa,OAASC,EAAAA,mBAAAA,CACPhB,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFe,IAAMC,EAAAA,gBAAAA,CACJlB,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFiB,GAAKC,EAAAA,eAAAA,CACHpB,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFmB,GAAKC,EAAAA,eAAAA,CACHtB,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFqB,MAAQC,EAAAA,kBAAAA,CACNxB,KACAC,UACAC,EAAAA,SAAAA,CAAAA;QAEFuB,MAAQC,EAAAA,kBAAAA,CACN1B,KACAC,UACAC,EAAAA,SAAAA;AAEJ,KAAA;AACF;;;;"}
package/dist/ops/one.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Item, ItemQuery, LocKeyArray } from '@fjell/core';
2
- import { GetMethodOptions, HttpApi } from '@fjell/http-api';
2
+ import { HttpApi } from '@fjell/http-api';
3
3
  import { ClientApiOptions } from '../ClientApiOptions';
4
4
  import { Utilities } from '../Utilities';
5
- export declare const getOneOperation: <V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(api: HttpApi, apiOptions: ClientApiOptions, utilities: Utilities<V, S, L1, L2, L3, L4, L5>) => (query: ItemQuery, options?: Partial<GetMethodOptions>, locations?: LocKeyArray<L1, L2, L3, L4, L5> | []) => Promise<V | null>;
5
+ export declare const getOneOperation: <V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(api: HttpApi, apiOptions: ClientApiOptions, utilities: Utilities<V, S, L1, L2, L3, L4, L5>) => (query: ItemQuery, locations?: LocKeyArray<L1, L2, L3, L4, L5> | []) => Promise<V | null>;
package/dist/ops/one.js CHANGED
@@ -3,18 +3,19 @@ import LibLogger from '../logger.js';
3
3
 
4
4
  const logger = LibLogger.get('client-api', 'ops', 'one');
5
5
  const getOneOperation = (api, apiOptions, utilities)=>{
6
- const one = async (query = {}, options = {}, locations = [])=>{
7
- logger.default('one', {
8
- query,
9
- locations
10
- });
6
+ const one = async (query = {}, locations = [])=>{
11
7
  utilities.verifyLocations(locations);
12
8
  const loc = locations;
13
9
  const params = queryToParams(query);
14
- const requestOptions = Object.assign({}, options, {
10
+ const requestOptions = Object.assign({}, apiOptions.getOptions, {
15
11
  isAuthenticated: apiOptions.readAuthenticated,
16
12
  params
17
13
  });
14
+ logger.default('one', {
15
+ query,
16
+ locations,
17
+ requestOptions
18
+ });
18
19
  let item = null;
19
20
  const items = utilities.validatePK(await utilities.processArray(api.httpGet(utilities.getPath(loc), requestOptions)));
20
21
  if (items.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"one.js","sources":["../../src/ops/one.ts"],"sourcesContent":["import {\n Item,\n ItemQuery,\n LocKeyArray,\n QueryParams,\n queryToParams\n} from \"@fjell/core\";\nimport { GetMethodOptions, HttpApi } from \"@fjell/http-api\";\n\nimport { ClientApiOptions } from \"@/ClientApiOptions\";\nimport LibLogger from \"@/logger\";\nimport { Utilities } from \"@/Utilities\";\n\nconst logger = LibLogger.get('client-api', 'ops', 'one');\n\nexport const getOneOperation = <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>\n\n ): (\n query: ItemQuery,\n options?: Partial<GetMethodOptions>,\n locations?: LocKeyArray<L1, L2, L3, L4, L5> | []\n ) => Promise<V | null> => {\n\n const one = async (\n query: ItemQuery = {} as ItemQuery,\n options: Partial<GetMethodOptions> = {},\n locations: LocKeyArray<L1, L2, L3, L4, L5> | [] = []\n ): Promise<V | null> => {\n logger.default('one', { query, locations });\n utilities.verifyLocations(locations);\n\n const loc: LocKeyArray<L1, L2, L3, L4, L5> | [] = locations;\n\n const params: QueryParams = queryToParams(query);\n const requestOptions = Object.assign({}, options, { isAuthenticated: apiOptions.readAuthenticated, params });\n\n let item: V | null = null;\n\n const items = utilities.validatePK(await utilities.processArray(\n api.httpGet<V[]>(\n utilities.getPath(loc),\n requestOptions,\n ))) as V[];\n\n if (items.length > 0) {\n item = items[0];\n }\n\n return item as V;\n }\n\n return one;\n}\n"],"names":["logger","LibLogger","get","getOneOperation","api","apiOptions","utilities","one","query","options","locations","default","verifyLocations","loc","params","queryToParams","requestOptions","Object","assign","isAuthenticated","readAuthenticated","item","items","validatePK","processArray","httpGet","getPath","length"],"mappings":";;;AAaA,MAAMA,MAASC,GAAAA,SAAAA,CAAUC,GAAG,CAAC,cAAc,KAAO,EAAA,KAAA,CAAA;AAErCC,MAAAA,eAAAA,GAAkB,CAQ3BC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;IAQF,MAAMC,GAAAA,GAAM,OACVC,KAAAA,GAAmB,EAAe,EAClCC,OAAAA,GAAqC,EAAE,EACvCC,SAAAA,GAAkD,EAAE,GAAA;QAEpDV,MAAOW,CAAAA,OAAO,CAAC,KAAO,EAAA;AAAEH,YAAAA,KAAAA;AAAOE,YAAAA;AAAU,SAAA,CAAA;AACzCJ,QAAAA,SAAAA,CAAUM,eAAe,CAACF,SAAAA,CAAAA;AAE1B,QAAA,MAAMG,GAA4CH,GAAAA,SAAAA;AAElD,QAAA,MAAMI,SAAsBC,aAAcP,CAAAA,KAAAA,CAAAA;AAC1C,QAAA,MAAMQ,iBAAiBC,MAAOC,CAAAA,MAAM,CAAC,IAAIT,OAAS,EAAA;AAAEU,YAAAA,eAAAA,EAAiBd,WAAWe,iBAAiB;AAAEN,YAAAA;AAAO,SAAA,CAAA;AAE1G,QAAA,IAAIO,IAAiB,GAAA,IAAA;AAErB,QAAA,MAAMC,KAAQhB,GAAAA,SAAAA,CAAUiB,UAAU,CAAC,MAAMjB,SAAUkB,CAAAA,YAAY,CAC7DpB,GAAAA,CAAIqB,OAAO,CACTnB,SAAUoB,CAAAA,OAAO,CAACb,GAClBG,CAAAA,EAAAA,cAAAA,CAAAA,CAAAA,CAAAA;QAGJ,IAAIM,KAAAA,CAAMK,MAAM,GAAG,CAAG,EAAA;YACpBN,IAAOC,GAAAA,KAAK,CAAC,CAAE,CAAA;AACjB;QAEA,OAAOD,IAAAA;AACT,KAAA;IAEA,OAAOd,GAAAA;AACT;;;;"}
1
+ {"version":3,"file":"one.js","sources":["../../src/ops/one.ts"],"sourcesContent":["import {\n Item,\n ItemQuery,\n LocKeyArray,\n QueryParams,\n queryToParams\n} from \"@fjell/core\";\nimport { HttpApi } from \"@fjell/http-api\";\n\nimport { ClientApiOptions } from \"@/ClientApiOptions\";\nimport LibLogger from \"@/logger\";\nimport { Utilities } from \"@/Utilities\";\n\nconst logger = LibLogger.get('client-api', 'ops', 'one');\n\nexport const getOneOperation = <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>\n\n ): (\n query: ItemQuery,\n locations?: LocKeyArray<L1, L2, L3, L4, L5> | []\n ) => Promise<V | null> => {\n\n const one = async (\n query: ItemQuery = {} as ItemQuery,\n locations: LocKeyArray<L1, L2, L3, L4, L5> | [] = []\n ): Promise<V | null> => {\n utilities.verifyLocations(locations);\n\n const loc: LocKeyArray<L1, L2, L3, L4, L5> | [] = locations;\n\n const params: QueryParams = queryToParams(query);\n const requestOptions = Object.assign({}, apiOptions.getOptions, { isAuthenticated: apiOptions.readAuthenticated, params });\n logger.default('one', { query, locations, requestOptions });\n\n let item: V | null = null;\n\n const items = utilities.validatePK(await utilities.processArray(\n api.httpGet<V[]>(\n utilities.getPath(loc),\n requestOptions,\n ))) as V[];\n\n if (items.length > 0) {\n item = items[0];\n }\n\n return item as V;\n }\n\n return one;\n}\n"],"names":["logger","LibLogger","get","getOneOperation","api","apiOptions","utilities","one","query","locations","verifyLocations","loc","params","queryToParams","requestOptions","Object","assign","getOptions","isAuthenticated","readAuthenticated","default","item","items","validatePK","processArray","httpGet","getPath","length"],"mappings":";;;AAaA,MAAMA,MAASC,GAAAA,SAAAA,CAAUC,GAAG,CAAC,cAAc,KAAO,EAAA,KAAA,CAAA;AAErCC,MAAAA,eAAAA,GAAkB,CAQ3BC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;AAOF,IAAA,MAAMC,MAAM,OACVC,KAAAA,GAAmB,EAAe,EAClCC,YAAkD,EAAE,GAAA;AAEpDH,QAAAA,SAAAA,CAAUI,eAAe,CAACD,SAAAA,CAAAA;AAE1B,QAAA,MAAME,GAA4CF,GAAAA,SAAAA;AAElD,QAAA,MAAMG,SAAsBC,aAAcL,CAAAA,KAAAA,CAAAA;QAC1C,MAAMM,cAAAA,GAAiBC,OAAOC,MAAM,CAAC,EAAIX,EAAAA,UAAAA,CAAWY,UAAU,EAAE;AAAEC,YAAAA,eAAAA,EAAiBb,WAAWc,iBAAiB;AAAEP,YAAAA;AAAO,SAAA,CAAA;QACxHZ,MAAOoB,CAAAA,OAAO,CAAC,KAAO,EAAA;AAAEZ,YAAAA,KAAAA;AAAOC,YAAAA,SAAAA;AAAWK,YAAAA;AAAe,SAAA,CAAA;AAEzD,QAAA,IAAIO,IAAiB,GAAA,IAAA;AAErB,QAAA,MAAMC,KAAQhB,GAAAA,SAAAA,CAAUiB,UAAU,CAAC,MAAMjB,SAAUkB,CAAAA,YAAY,CAC7DpB,GAAAA,CAAIqB,OAAO,CACTnB,SAAUoB,CAAAA,OAAO,CAACf,GAClBG,CAAAA,EAAAA,cAAAA,CAAAA,CAAAA,CAAAA;QAGJ,IAAIQ,KAAAA,CAAMK,MAAM,GAAG,CAAG,EAAA;YACpBN,IAAOC,GAAAA,KAAK,CAAC,CAAE,CAAA;AACjB;QAEA,OAAOD,IAAAA;AACT,KAAA;IAEA,OAAOd,GAAAA;AACT;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { ComKey, Item, PriKey } from '@fjell/core';
2
- import { DeleteMethodOptions, HttpApi } from '@fjell/http-api';
2
+ import { HttpApi } from '@fjell/http-api';
3
3
  import { ClientApiOptions } from '../ClientApiOptions';
4
4
  import { Utilities } from '../Utilities';
5
- export declare const getRemoveOperation: <V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(api: HttpApi, apiOptions: ClientApiOptions, utilities: Utilities<V, S, L1, L2, L3, L4, L5>) => (ik: PriKey<S> | ComKey<S, L1, L2, L3, L4, L5>, options?: Partial<DeleteMethodOptions>) => Promise<boolean>;
5
+ export declare const getRemoveOperation: <V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(api: HttpApi, apiOptions: ClientApiOptions, utilities: Utilities<V, S, L1, L2, L3, L4, L5>) => (ik: PriKey<S> | ComKey<S, L1, L2, L3, L4, L5>) => Promise<boolean>;
@@ -2,13 +2,14 @@ import LibLogger from '../logger.js';
2
2
 
3
3
  const logger = LibLogger.get('client-api', 'ops', 'remove');
4
4
  const getRemoveOperation = (api, apiOptions, utilities)=>{
5
- const remove = async (ik, options = {})=>{
6
- logger.default('remove', {
7
- ik
8
- });
9
- const requestOptions = Object.assign({}, options, {
5
+ const remove = async (ik)=>{
6
+ const requestOptions = Object.assign({}, apiOptions.deleteOptions, {
10
7
  isAuthenticated: apiOptions.writeAuthenticated
11
8
  });
9
+ logger.default('remove', {
10
+ ik,
11
+ requestOptions
12
+ });
12
13
  return api.httpDelete(utilities.getPath(ik), requestOptions);
13
14
  };
14
15
  return remove;
@@ -1 +1 @@
1
- {"version":3,"file":"remove.js","sources":["../../src/ops/remove.ts"],"sourcesContent":["import {\n ComKey,\n Item,\n PriKey,\n} from \"@fjell/core\";\nimport { DeleteMethodOptions, HttpApi } from \"@fjell/http-api\";\n \nimport { ClientApiOptions } from \"@/ClientApiOptions\";\nimport LibLogger from \"@/logger\";\nimport { Utilities } from \"@/Utilities\";\n \nconst logger = LibLogger.get('client-api', 'ops', 'remove');\n \nexport const getRemoveOperation = <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>\n \n ) => {\n \n const remove = async (\n ik: PriKey<S> | ComKey<S, L1, L2, L3, L4, L5>,\n options: Partial<DeleteMethodOptions> = {},\n ): Promise<boolean> => {\n logger.default('remove', { ik });\n \n const requestOptions = Object.assign({}, options, { isAuthenticated: apiOptions.writeAuthenticated });\n \n return api.httpDelete<boolean>(utilities.getPath(ik), requestOptions);\n }\n \n return remove;\n}\n "],"names":["logger","LibLogger","get","getRemoveOperation","api","apiOptions","utilities","remove","ik","options","default","requestOptions","Object","assign","isAuthenticated","writeAuthenticated","httpDelete","getPath"],"mappings":";;AAWA,MAAMA,MAASC,GAAAA,SAAAA,CAAUC,GAAG,CAAC,cAAc,KAAO,EAAA,QAAA,CAAA;AAErCC,MAAAA,kBAAAA,GAAqB,CAQ9BC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;AAIF,IAAA,MAAMC,MAAS,GAAA,OACbC,EACAC,EAAAA,OAAAA,GAAwC,EAAE,GAAA;QAE1CT,MAAOU,CAAAA,OAAO,CAAC,QAAU,EAAA;AAAEF,YAAAA;AAAG,SAAA,CAAA;AAE9B,QAAA,MAAMG,iBAAiBC,MAAOC,CAAAA,MAAM,CAAC,IAAIJ,OAAS,EAAA;AAAEK,YAAAA,eAAAA,EAAiBT,WAAWU;AAAmB,SAAA,CAAA;AAEnG,QAAA,OAAOX,IAAIY,UAAU,CAAUV,SAAUW,CAAAA,OAAO,CAACT,EAAKG,CAAAA,EAAAA,cAAAA,CAAAA;AACxD,KAAA;IAEA,OAAOJ,MAAAA;AACT;;;;"}
1
+ {"version":3,"file":"remove.js","sources":["../../src/ops/remove.ts"],"sourcesContent":["import {\n ComKey,\n Item,\n PriKey,\n} from \"@fjell/core\";\nimport { HttpApi } from \"@fjell/http-api\";\n\nimport { ClientApiOptions } from \"@/ClientApiOptions\";\nimport LibLogger from \"@/logger\";\nimport { Utilities } from \"@/Utilities\";\n\nconst logger = LibLogger.get('client-api', 'ops', 'remove');\n\nexport const getRemoveOperation = <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>\n\n ) => {\n\n const remove = async (\n ik: PriKey<S> | ComKey<S, L1, L2, L3, L4, L5>,\n ): Promise<boolean> => {\n const requestOptions = Object.assign({}, apiOptions.deleteOptions, { isAuthenticated: apiOptions.writeAuthenticated });\n logger.default('remove', { ik, requestOptions });\n\n return api.httpDelete<boolean>(utilities.getPath(ik), requestOptions);\n }\n\n return remove;\n}\n"],"names":["logger","LibLogger","get","getRemoveOperation","api","apiOptions","utilities","remove","ik","requestOptions","Object","assign","deleteOptions","isAuthenticated","writeAuthenticated","default","httpDelete","getPath"],"mappings":";;AAWA,MAAMA,MAASC,GAAAA,SAAAA,CAAUC,GAAG,CAAC,cAAc,KAAO,EAAA,QAAA,CAAA;AAErCC,MAAAA,kBAAAA,GAAqB,CAQ9BC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;AAIF,IAAA,MAAMC,SAAS,OACbC,EAAAA,GAAAA;QAEA,MAAMC,cAAAA,GAAiBC,OAAOC,MAAM,CAAC,EAAIN,EAAAA,UAAAA,CAAWO,aAAa,EAAE;AAAEC,YAAAA,eAAAA,EAAiBR,WAAWS;AAAmB,SAAA,CAAA;QACpHd,MAAOe,CAAAA,OAAO,CAAC,QAAU,EAAA;AAAEP,YAAAA,EAAAA;AAAIC,YAAAA;AAAe,SAAA,CAAA;AAE9C,QAAA,OAAOL,IAAIY,UAAU,CAAUV,SAAUW,CAAAA,OAAO,CAACT,EAAKC,CAAAA,EAAAA,cAAAA,CAAAA;AACxD,KAAA;IAEA,OAAOF,MAAAA;AACT;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { ComKey, Item, ItemProperties, PriKey } from '@fjell/core';
2
- import { HttpApi, PutMethodOptions } from '@fjell/http-api';
2
+ import { HttpApi } from '@fjell/http-api';
3
3
  import { ClientApiOptions } from '../ClientApiOptions';
4
4
  import { Utilities } from '../Utilities';
5
- export declare const getUpdateOperation: <V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(api: HttpApi, apiOptions: ClientApiOptions, utilities: Utilities<V, S, L1, L2, L3, L4, L5>) => (ik: PriKey<S> | ComKey<S, L1, L2, L3, L4, L5>, item: ItemProperties<S, L1, L2, L3, L4, L5>, options?: Partial<PutMethodOptions>) => Promise<V>;
5
+ export declare const getUpdateOperation: <V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(api: HttpApi, apiOptions: ClientApiOptions, utilities: Utilities<V, S, L1, L2, L3, L4, L5>) => (ik: PriKey<S> | ComKey<S, L1, L2, L3, L4, L5>, item: ItemProperties<S, L1, L2, L3, L4, L5>) => Promise<V>;
@@ -2,13 +2,14 @@ import LibLogger from '../logger.js';
2
2
 
3
3
  const logger = LibLogger.get('client-api', 'ops', 'update');
4
4
  const getUpdateOperation = (api, apiOptions, utilities)=>{
5
- const update = async (ik, item, options = {})=>{
5
+ const update = async (ik, item)=>{
6
+ const requestOptions = Object.assign({}, apiOptions.putOptions, {
7
+ isAuthenticated: apiOptions.writeAuthenticated
8
+ });
6
9
  logger.default('update', {
7
10
  ik,
8
- item
9
- });
10
- const requestOptions = Object.assign({}, options, {
11
- isAuthenticated: apiOptions.writeAuthenticated
11
+ item,
12
+ requestOptions
12
13
  });
13
14
  return utilities.validatePK(await utilities.processOne(api.httpPut(utilities.getPath(ik), item, requestOptions)));
14
15
  };
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sources":["../../src/ops/update.ts"],"sourcesContent":["import {\n ComKey,\n Item,\n ItemProperties,\n PriKey\n} from \"@fjell/core\";\nimport { HttpApi, PutMethodOptions } from \"@fjell/http-api\";\n \nimport { ClientApiOptions } from \"@/ClientApiOptions\";\nimport LibLogger from \"@/logger\";\nimport { Utilities } from \"@/Utilities\";\n \nconst logger = LibLogger.get('client-api', 'ops', 'update');\n \nexport const getUpdateOperation = <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>\n \n ) => {\n \n const update = async (\n ik: PriKey<S> | ComKey<S, L1, L2, L3, L4, L5>,\n item: ItemProperties<S, L1, L2, L3, L4, L5>,\n options: Partial<PutMethodOptions> = {},\n ): Promise<V> => {\n logger.default('update', { ik, item });\n const requestOptions = Object.assign({}, options, { isAuthenticated: apiOptions.writeAuthenticated });\n \n return utilities.validatePK(await utilities.processOne(\n api.httpPut<V>(\n utilities.getPath(ik),\n item,\n requestOptions,\n ))) as V;\n }\n \n return update;\n}\n "],"names":["logger","LibLogger","get","getUpdateOperation","api","apiOptions","utilities","update","ik","item","options","default","requestOptions","Object","assign","isAuthenticated","writeAuthenticated","validatePK","processOne","httpPut","getPath"],"mappings":";;AAYA,MAAMA,MAASC,GAAAA,SAAAA,CAAUC,GAAG,CAAC,cAAc,KAAO,EAAA,QAAA,CAAA;AAErCC,MAAAA,kBAAAA,GAAqB,CAQ9BC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;AAIF,IAAA,MAAMC,SAAS,OACbC,EAAAA,EACAC,IACAC,EAAAA,OAAAA,GAAqC,EAAE,GAAA;QAEvCV,MAAOW,CAAAA,OAAO,CAAC,QAAU,EAAA;AAAEH,YAAAA,EAAAA;AAAIC,YAAAA;AAAK,SAAA,CAAA;AACpC,QAAA,MAAMG,iBAAiBC,MAAOC,CAAAA,MAAM,CAAC,IAAIJ,OAAS,EAAA;AAAEK,YAAAA,eAAAA,EAAiBV,WAAWW;AAAmB,SAAA,CAAA;AAEnG,QAAA,OAAOV,SAAUW,CAAAA,UAAU,CAAC,MAAMX,UAAUY,UAAU,CACpDd,GAAIe,CAAAA,OAAO,CACTb,SAAAA,CAAUc,OAAO,CAACZ,KAClBC,IACAG,EAAAA,cAAAA,CAAAA,CAAAA,CAAAA;AAEN,KAAA;IAEA,OAAOL,MAAAA;AACT;;;;"}
1
+ {"version":3,"file":"update.js","sources":["../../src/ops/update.ts"],"sourcesContent":["import {\n ComKey,\n Item,\n ItemProperties,\n PriKey\n} from \"@fjell/core\";\nimport { HttpApi } from \"@fjell/http-api\";\n\nimport { ClientApiOptions } from \"@/ClientApiOptions\";\nimport LibLogger from \"@/logger\";\nimport { Utilities } from \"@/Utilities\";\n\nconst logger = LibLogger.get('client-api', 'ops', 'update');\n\nexport const getUpdateOperation = <\n V extends Item<S, L1, L2, L3, L4, L5>,\n S extends string,\n L1 extends string = never,\n L2 extends string = never,\n L3 extends string = never,\n L4 extends string = never,\n L5 extends string = never>(\n api: HttpApi,\n apiOptions: ClientApiOptions,\n utilities: Utilities<V, S, L1, L2, L3, L4, L5>\n\n ) => {\n\n const update = async (\n ik: PriKey<S> | ComKey<S, L1, L2, L3, L4, L5>,\n item: ItemProperties<S, L1, L2, L3, L4, L5>,\n ): Promise<V> => {\n const requestOptions = Object.assign({}, apiOptions.putOptions, { isAuthenticated: apiOptions.writeAuthenticated });\n logger.default('update', { ik, item, requestOptions });\n\n return utilities.validatePK(await utilities.processOne(\n api.httpPut<V>(\n utilities.getPath(ik),\n item,\n requestOptions,\n ))) as V;\n }\n\n return update;\n}\n"],"names":["logger","LibLogger","get","getUpdateOperation","api","apiOptions","utilities","update","ik","item","requestOptions","Object","assign","putOptions","isAuthenticated","writeAuthenticated","default","validatePK","processOne","httpPut","getPath"],"mappings":";;AAYA,MAAMA,MAASC,GAAAA,SAAAA,CAAUC,GAAG,CAAC,cAAc,KAAO,EAAA,QAAA,CAAA;AAErCC,MAAAA,kBAAAA,GAAqB,CAQ9BC,GAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;IAIF,MAAMC,MAAAA,GAAS,OACbC,EACAC,EAAAA,IAAAA,GAAAA;QAEA,MAAMC,cAAAA,GAAiBC,OAAOC,MAAM,CAAC,EAAIP,EAAAA,UAAAA,CAAWQ,UAAU,EAAE;AAAEC,YAAAA,eAAAA,EAAiBT,WAAWU;AAAmB,SAAA,CAAA;QACjHf,MAAOgB,CAAAA,OAAO,CAAC,QAAU,EAAA;AAAER,YAAAA,EAAAA;AAAIC,YAAAA,IAAAA;AAAMC,YAAAA;AAAe,SAAA,CAAA;AAEpD,QAAA,OAAOJ,SAAUW,CAAAA,UAAU,CAAC,MAAMX,UAAUY,UAAU,CACpDd,GAAIe,CAAAA,OAAO,CACTb,SAAAA,CAAUc,OAAO,CAACZ,KAClBC,IACAC,EAAAA,cAAAA,CAAAA,CAAAA,CAAAA;AAEN,KAAA;IAEA,OAAOH,MAAAA;AACT;;;;"}
@@ -0,0 +1,4 @@
1
+ export declare const clean: (obj: any) => {
2
+ [k: string]: unknown;
3
+ };
4
+ export declare const stringifyJSON: (obj: any, visited?: Set<any>) => string;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@fjell/client-api",
3
3
  "description": "Client API for Fjell",
4
- "version": "4.4.1",
4
+ "version": "4.4.3",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "module": "./dist/index.js",
@@ -23,15 +23,15 @@
23
23
  "@babel/preset-typescript": "^7.27.1",
24
24
  "@eslint/eslintrc": "^3.3.1",
25
25
  "@eslint/js": "^9.29.0",
26
- "@swc/core": "^1.12.1",
27
- "@tsconfig/recommended": "^1.0.9",
26
+ "@swc/core": "^1.12.6",
27
+ "@tsconfig/recommended": "^1.0.10",
28
28
  "@types/luxon": "^3.6.2",
29
- "@typescript-eslint/eslint-plugin": "^8.34.1",
30
- "@typescript-eslint/parser": "^8.34.1",
29
+ "@typescript-eslint/eslint-plugin": "^8.35.0",
30
+ "@typescript-eslint/parser": "^8.35.0",
31
31
  "@vitest/coverage-istanbul": "^3.2.4",
32
32
  "@vitest/coverage-v8": "^3.2.4",
33
33
  "@vitest/ui": "^3.2.4",
34
- "concurrently": "^9.1.2",
34
+ "concurrently": "^9.2.0",
35
35
  "eslint": "^9.29.0",
36
36
  "rimraf": "^6.0.1",
37
37
  "tsc-alias": "^1.8.16",
package/src/AItemAPI.ts CHANGED
@@ -1,3 +1,4 @@
1
+ /* eslint-disable indent */
1
2
  import { Item, QueryParams } from "@fjell/core";
2
3
  import { HttpApi } from "@fjell/http-api";
3
4
 
@@ -26,8 +27,8 @@ export type PathNamesArray<
26
27
  [string, string]) :
27
28
  [string, string, string]) :
28
29
  [string, string, string, string]) :
29
- [string, string, string, string, string]) :
30
- [string, string, string, string, string, string]);
30
+ [string, string, string, string, string]) :
31
+ [string, string, string, string, string, string]);
31
32
 
32
33
  export const finderToParams = (
33
34
  finder: string,
@@ -48,20 +49,24 @@ export const createAItemAPI = <
48
49
  L4 extends string = never,
49
50
  L5 extends string = never
50
51
  >(
51
- api: HttpApi,
52
- pkType: S,
53
- pathNames: PathNamesArray<L1, L2, L3, L4, L5>,
54
- options?: ClientApiOptions,
55
- ): ClientApi<V, S, L1, L2, L3, L4, L5> => {
52
+ api: HttpApi,
53
+ pkType: S,
54
+ pathNames: PathNamesArray<L1, L2, L3, L4, L5>,
55
+ options?: ClientApiOptions,
56
+ ): ClientApi<V, S, L1, L2, L3, L4, L5> => {
56
57
 
57
58
  logger.default('createAItemAPI', { pkType, pathNames, options });
58
59
 
59
60
  let mergedOptions: ClientApiOptions;
60
-
61
+
61
62
  const defaultOptions: ClientApiOptions = {
62
63
  readAuthenticated: true,
63
64
  allAuthenticated: true,
64
65
  writeAuthenticated: true,
66
+ getOptions: {},
67
+ postOptions: {},
68
+ putOptions: {},
69
+ deleteOptions: {},
65
70
  };
66
71
 
67
72
  if (options) {
@@ -70,15 +75,18 @@ export const createAItemAPI = <
70
75
  mergedOptions = defaultOptions;
71
76
  }
72
77
 
73
- const utilities = createUtilities<V, S, L1, L2, L3, L4, L5>(pkType, pathNames);
78
+ const utilities = createUtilities<V, S, L1, L2, L3, L4, L5>(pkType, pathNames);
74
79
  const operations = getOperations<V, S, L1, L2, L3, L4, L5>(api, mergedOptions, utilities);
75
80
 
76
81
  return {
77
82
  action: operations.action,
78
83
  all: operations.all,
79
84
  allAction: operations.allAction,
85
+ allFacet: operations.allFacet,
80
86
  create: operations.create,
87
+ facet: operations.facet,
81
88
  find: operations.find,
89
+ findOne: operations.findOne,
82
90
  get: operations.get,
83
91
  one: operations.one,
84
92
  remove: operations.remove,
package/src/CItemAPI.ts CHANGED
@@ -8,17 +8,13 @@ import {
8
8
  TypesProperties
9
9
  } from "@fjell/core";
10
10
  import {
11
- DeleteMethodOptions,
12
- GetMethodOptions,
13
- HttpApi,
14
- PostMethodOptions,
15
- PutMethodOptions,
11
+ HttpApi
16
12
  } from "@fjell/http-api";
17
13
  import { createAItemAPI, PathNamesArray } from "./AItemAPI";
18
14
 
15
+ import LibLogger from "@/logger";
19
16
  import { ClientApi } from "./ClientApi";
20
17
  import { ClientApiOptions } from "./ClientApiOptions";
21
- import LibLogger from "@/logger";
22
18
 
23
19
  const logger = LibLogger.get('CItemAPI');
24
20
 
@@ -35,43 +31,50 @@ export interface CItemApi<
35
31
  ik: ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>,
36
32
  action: string,
37
33
  body: any,
38
- options?: Partial<PostMethodOptions>
39
34
  ) => Promise<V>;
40
35
  all: (
41
36
  query: ItemQuery,
42
- options?: Partial<GetMethodOptions>,
43
37
  locations?: LocKeyArray<L1, L2, L3, L4, L5> | []
44
38
  ) => Promise<V[]>;
45
39
  allAction: (
46
40
  action: string,
47
- body: any,
48
- options?: Partial<PostMethodOptions>,
41
+ body?: any,
49
42
  locations?: LocKeyArray<L1, L2, L3, L4, L5> | []
50
43
  ) => Promise<V[]>;
44
+ allFacet: (
45
+ facet: string,
46
+ params?: Record<string, string | number | boolean | Date | Array<string | number | boolean | Date>>,
47
+ locations?: LocKeyArray<L1, L2, L3, L4, L5> | []
48
+ ) => Promise<any>;
51
49
  get: (
52
50
  ik: ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>,
53
- options?: Partial<GetMethodOptions>,
54
51
  ) => Promise<V | null>;
55
52
  create: (
56
53
  item: TypesProperties<V, S, L1, L2, L3, L4, L5>,
57
- options?: Partial<PostMethodOptions>,
58
54
  locations?: LocKeyArray<L1, L2, L3, L4, L5> | []
59
55
  ) => Promise<V>;
60
56
  remove: (
61
57
  ik: ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>,
62
- options?: Partial<DeleteMethodOptions>
63
58
  ) => Promise<boolean>;
64
59
  update: (
65
60
  ik: ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>,
66
61
  item: TypesProperties<V, S, L1, L2, L3, L4, L5>,
67
- options?: Partial<PutMethodOptions>
68
62
  ) => Promise<V>;
63
+ facet: (
64
+ ik: ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>,
65
+ facet: string,
66
+ params?: Record<string, string | number | boolean | Date | Array<string | number | boolean | Date>>,
67
+ ) => Promise<any>;
69
68
  find: (
70
69
  finder: string,
71
- finderParams: Record<string, string | number | boolean | Date | Array<string | number | boolean | Date>>,
72
- options?: Partial<GetMethodOptions>,
70
+ finderParams?: Record<string, string | number | boolean | Date | Array<string | number | boolean | Date>>,
73
71
  locations?: LocKeyArray<L1, L2, L3, L4, L5> | []
74
72
  ) => Promise<V[]>;
73
+ findOne: (
74
+ finder: string,
75
+ finderParams?: Record<string, string | number | boolean | Date | Array<string | number | boolean | Date>>,
76
+ locations?: LocKeyArray<L1, L2, L3, L4, L5> | []
77
+ ) => Promise<V>;
75
78
  };
76
79
 
77
80
  export const createCItemApi = <
@@ -92,11 +95,14 @@ export const createCItemApi = <
92
95
  action: aItemAPI.action,
93
96
  all: aItemAPI.all,
94
97
  allAction: aItemAPI.allAction,
98
+ allFacet: aItemAPI.allFacet,
95
99
  one: aItemAPI.one,
96
100
  get: aItemAPI.get,
97
101
  create: aItemAPI.create,
98
102
  remove: aItemAPI.remove,
99
103
  update: aItemAPI.update,
104
+ facet: aItemAPI.facet,
100
105
  find: aItemAPI.find,
106
+ findOne: aItemAPI.findOne,
101
107
  } as unknown as CItemApi<V, S, L1, L2, L3, L4, L5>;
102
108
  }