@xyo-network/react-archivist 2.38.0 → 2.38.2

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 (96) hide show
  1. package/dist/cjs/components/Details.js.map +1 -1
  2. package/dist/cjs/contexts/use/index.d.ts +7 -0
  3. package/dist/cjs/contexts/use/index.d.ts.map +1 -0
  4. package/dist/cjs/contexts/use/index.js +10 -0
  5. package/dist/cjs/contexts/use/index.js.map +1 -0
  6. package/dist/cjs/contexts/use/lib/index.d.ts +2 -0
  7. package/dist/cjs/contexts/use/lib/index.d.ts.map +1 -0
  8. package/dist/cjs/contexts/use/lib/index.js +3 -0
  9. package/dist/cjs/contexts/use/lib/index.js.map +1 -0
  10. package/dist/cjs/contexts/use/use.d.ts +2 -0
  11. package/dist/cjs/contexts/use/use.d.ts.map +1 -0
  12. package/dist/cjs/contexts/use/use.js +10 -0
  13. package/dist/cjs/contexts/use/use.js.map +1 -0
  14. package/dist/cjs/contexts/use/useArchivistAll.d.ts +3 -0
  15. package/dist/cjs/contexts/use/useArchivistAll.d.ts.map +1 -0
  16. package/dist/cjs/contexts/use/useArchivistAll.js +31 -0
  17. package/dist/cjs/contexts/use/useArchivistAll.js.map +1 -0
  18. package/dist/cjs/contexts/use/useArchivistClear.d.ts +3 -0
  19. package/dist/cjs/contexts/use/useArchivistClear.d.ts.map +1 -0
  20. package/dist/cjs/contexts/use/useArchivistClear.js +31 -0
  21. package/dist/cjs/contexts/use/useArchivistClear.js.map +1 -0
  22. package/dist/cjs/contexts/use/useArchivistFind.d.ts +4 -0
  23. package/dist/cjs/contexts/use/useArchivistFind.d.ts.map +1 -0
  24. package/dist/cjs/contexts/use/useArchivistFind.js +32 -0
  25. package/dist/cjs/contexts/use/useArchivistFind.js.map +1 -0
  26. package/dist/cjs/contexts/use/useArchivistGet.d.ts +4 -0
  27. package/dist/cjs/contexts/use/useArchivistGet.d.ts.map +1 -0
  28. package/dist/cjs/contexts/use/useArchivistGet.js +31 -0
  29. package/dist/cjs/contexts/use/useArchivistGet.js.map +1 -0
  30. package/dist/cjs/contexts/use/useArchivistInsert.d.ts +3 -0
  31. package/dist/cjs/contexts/use/useArchivistInsert.d.ts.map +1 -0
  32. package/dist/cjs/contexts/use/useArchivistInsert.js +30 -0
  33. package/dist/cjs/contexts/use/useArchivistInsert.js.map +1 -0
  34. package/dist/cjs/contexts/use/useArchivistStates.d.ts +17 -0
  35. package/dist/cjs/contexts/use/useArchivistStates.d.ts.map +1 -0
  36. package/dist/cjs/contexts/use/useArchivistStates.js +22 -0
  37. package/dist/cjs/contexts/use/useArchivistStates.js.map +1 -0
  38. package/dist/docs.json +120 -124
  39. package/dist/esm/components/Details.js.map +1 -1
  40. package/dist/esm/contexts/use/index.d.ts +7 -0
  41. package/dist/esm/contexts/use/index.d.ts.map +1 -0
  42. package/dist/esm/contexts/use/index.js +7 -0
  43. package/dist/esm/contexts/use/index.js.map +1 -0
  44. package/dist/esm/contexts/use/lib/index.d.ts +2 -0
  45. package/dist/esm/contexts/use/lib/index.d.ts.map +1 -0
  46. package/dist/esm/contexts/use/lib/index.js +2 -0
  47. package/dist/esm/contexts/use/lib/index.js.map +1 -0
  48. package/dist/esm/contexts/use/use.d.ts +2 -0
  49. package/dist/esm/contexts/use/use.d.ts.map +1 -0
  50. package/dist/esm/contexts/use/use.js +6 -0
  51. package/dist/esm/contexts/use/use.js.map +1 -0
  52. package/dist/esm/contexts/use/useArchivistAll.d.ts +3 -0
  53. package/dist/esm/contexts/use/useArchivistAll.d.ts.map +1 -0
  54. package/dist/esm/contexts/use/useArchivistAll.js +26 -0
  55. package/dist/esm/contexts/use/useArchivistAll.js.map +1 -0
  56. package/dist/esm/contexts/use/useArchivistClear.d.ts +3 -0
  57. package/dist/esm/contexts/use/useArchivistClear.d.ts.map +1 -0
  58. package/dist/esm/contexts/use/useArchivistClear.js +26 -0
  59. package/dist/esm/contexts/use/useArchivistClear.js.map +1 -0
  60. package/dist/esm/contexts/use/useArchivistFind.d.ts +4 -0
  61. package/dist/esm/contexts/use/useArchivistFind.d.ts.map +1 -0
  62. package/dist/esm/contexts/use/useArchivistFind.js +27 -0
  63. package/dist/esm/contexts/use/useArchivistFind.js.map +1 -0
  64. package/dist/esm/contexts/use/useArchivistGet.d.ts +4 -0
  65. package/dist/esm/contexts/use/useArchivistGet.d.ts.map +1 -0
  66. package/dist/esm/contexts/use/useArchivistGet.js +25 -0
  67. package/dist/esm/contexts/use/useArchivistGet.js.map +1 -0
  68. package/dist/esm/contexts/use/useArchivistInsert.d.ts +3 -0
  69. package/dist/esm/contexts/use/useArchivistInsert.d.ts.map +1 -0
  70. package/dist/esm/contexts/use/useArchivistInsert.js +25 -0
  71. package/dist/esm/contexts/use/useArchivistInsert.js.map +1 -0
  72. package/dist/esm/contexts/use/useArchivistStates.d.ts +17 -0
  73. package/dist/esm/contexts/use/useArchivistStates.d.ts.map +1 -0
  74. package/dist/esm/contexts/use/useArchivistStates.js +18 -0
  75. package/dist/esm/contexts/use/useArchivistStates.js.map +1 -0
  76. package/package.json +5 -5
  77. package/src/components/Details.tsx +1 -1
  78. package/src/contexts/story/ArchivistPayloads.stories.tsx +2 -2
  79. package/src/contexts/use/index.ts +6 -0
  80. package/src/contexts/use/lib/index.ts +1 -0
  81. package/src/contexts/use/use.tsx +7 -0
  82. package/src/contexts/use/useArchivistAll.tsx +29 -0
  83. package/src/contexts/use/useArchivistClear.tsx +29 -0
  84. package/src/contexts/use/useArchivistFind.tsx +35 -0
  85. package/src/contexts/use/useArchivistGet.tsx +30 -0
  86. package/src/contexts/use/useArchivistInsert.tsx +29 -0
  87. package/src/contexts/use/useArchivistStates.tsx +23 -0
  88. package/dist/cjs/contexts/use.d.ts +0 -10
  89. package/dist/cjs/contexts/use.d.ts.map +0 -1
  90. package/dist/cjs/contexts/use.js +0 -147
  91. package/dist/cjs/contexts/use.js.map +0 -1
  92. package/dist/esm/contexts/use.d.ts +0 -10
  93. package/dist/esm/contexts/use.d.ts.map +0 -1
  94. package/dist/esm/contexts/use.js +0 -136
  95. package/dist/esm/contexts/use.js.map +0 -1
  96. package/src/contexts/use.ts +0 -165
@@ -1 +1 @@
1
- {"version":3,"file":"Details.js","sourceRoot":"","sources":["../../../src/components/Details.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAgB,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAoB,4BAA4B,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE3I,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAM1C,MAAM,CAAC,MAAM,gBAAgB,GAA+B,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACrG,MAAM,EAAE,SAAS,GAAG,aAAa,EAAE,GAAG,YAAY,EAAE,CAAA;IACpD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAyB,CAAA;IACjE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IACzC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,EAAuB,CAAA;IAE7D,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IACxE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,MAAM,QAAQ,GAAG,MAAM,OAAO,EAAE,GAAG,EAAE,CAAA;QACrC,IAAI,OAAO,EAAE,EAAE;YACb,WAAW,CAAC,QAAQ,CAAC,CAAA;SACtB;IACH,CAAC,EACD,CAAC,OAAO,EAAE,OAAO,CAAC,CACnB,CAAA;IAED,OAAO,CACL,MAAC,OAAO,OAAK,KAAK,aAChB,KAAC,UAAU,cAAE,aAAa,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,GAAc,EAC1E,MAAC,WAAW,eACV,KAAC,QAAQ,IACP,QAAQ,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,6BAA6B,CAAC,EACtG,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,uBAGvB,EACX,KAAC,QAAQ,IAAC,QAAQ,EAAE,CAAC,SAAS,IAAI,SAAS,EAAE,SAAS,CAAC,4BAA4B,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,sBAE1G,EACX,KAAC,QAAQ,IACP,QAAQ,EAAE,CAAC,SAAS,EACpB,OAAO,EAAE,GAAG,EAAE;4BACZ,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC,CAAA;wBACzB,CAAC,wBAGQ,IACC,IACN,CACX,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"Details.js","sourceRoot":"","sources":["../../../src/components/Details.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAgB,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAoB,4BAA4B,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE3I,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAM1C,MAAM,CAAC,MAAM,gBAAgB,GAA+B,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACrG,MAAM,EAAE,SAAS,GAAG,aAAa,EAAE,GAAG,YAAY,EAAE,CAAA;IACpD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAgB,CAAA;IACxD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IACzC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,EAAuB,CAAA;IAE7D,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IACxE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,MAAM,QAAQ,GAAG,MAAM,OAAO,EAAE,GAAG,EAAE,CAAA;QACrC,IAAI,OAAO,EAAE,EAAE;YACb,WAAW,CAAC,QAAQ,CAAC,CAAA;SACtB;IACH,CAAC,EACD,CAAC,OAAO,EAAE,OAAO,CAAC,CACnB,CAAA;IAED,OAAO,CACL,MAAC,OAAO,OAAK,KAAK,aAChB,KAAC,UAAU,cAAE,aAAa,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,GAAc,EAC1E,MAAC,WAAW,eACV,KAAC,QAAQ,IACP,QAAQ,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,6BAA6B,CAAC,EACtG,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,uBAGvB,EACX,KAAC,QAAQ,IAAC,QAAQ,EAAE,CAAC,SAAS,IAAI,SAAS,EAAE,SAAS,CAAC,4BAA4B,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,sBAE1G,EACX,KAAC,QAAQ,IACP,QAAQ,EAAE,CAAC,SAAS,EACpB,OAAO,EAAE,GAAG,EAAE;4BACZ,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC,CAAA;wBACzB,CAAC,wBAGQ,IACC,IACN,CACX,CAAA;AACH,CAAC,CAAA"}
@@ -0,0 +1,7 @@
1
+ export * from './use';
2
+ export * from './useArchivistAll';
3
+ export * from './useArchivistClear';
4
+ export * from './useArchivistFind';
5
+ export * from './useArchivistGet';
6
+ export * from './useArchivistInsert';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/contexts/use/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA"}
@@ -0,0 +1,7 @@
1
+ export * from './use';
2
+ export * from './useArchivistAll';
3
+ export * from './useArchivistClear';
4
+ export * from './useArchivistFind';
5
+ export * from './useArchivistGet';
6
+ export * from './useArchivistInsert';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/contexts/use/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare type RefreshCallback = () => void;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/contexts/use/lib/index.ts"],"names":[],"mappings":"AAAA,oBAAY,eAAe,GAAG,MAAM,IAAI,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/contexts/use/lib/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export declare const useArchivist: (required?: boolean) => Omit<import("..").ArchivistState & import("@xyo-network/react-shared").ContextExState, "provided">;
2
+ //# sourceMappingURL=use.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use.d.ts","sourceRoot":"","sources":["../../../../src/contexts/use/use.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,YAAY,4HAExB,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { useContextEx } from '@xyo-network/react-shared';
2
+ import { ArchivistContext } from '../Context';
3
+ export const useArchivist = (required = false) => {
4
+ return useContextEx(ArchivistContext, 'Archivist', required);
5
+ };
6
+ //# sourceMappingURL=use.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use.js","sourceRoot":"","sources":["../../../../src/contexts/use/use.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE7C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAQ,GAAG,KAAK,EAAE,EAAE;IAC/C,OAAO,YAAY,CAAC,gBAAgB,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAA;AAC9D,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { XyoPayload } from '@xyo-network/payload';
2
+ export declare const useArchivistAll: (required?: boolean) => [(XyoPayload | null)[]?, Error?];
3
+ //# sourceMappingURL=useArchivistAll.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistAll.d.ts","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistAll.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAe,MAAM,sBAAsB,CAAA;AAK9D,eAAO,MAAM,eAAe,0BAAuB,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAqBjF,CAAA"}
@@ -0,0 +1,26 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared';
2
+ import { XyoArchivistWrapper } from '@xyo-network/archivist';
3
+ import { useState } from 'react';
4
+ import { useArchivist } from './use';
5
+ export const useArchivistAll = (required = false) => {
6
+ const { archivist } = useArchivist(required);
7
+ const [payloads, setPayloads] = useState();
8
+ const [error, setError] = useState();
9
+ useAsyncEffect(
10
+ // eslint-disable-next-line react-hooks/exhaustive-deps
11
+ async (mounted) => {
12
+ try {
13
+ const wrapper = archivist ? new XyoArchivistWrapper(archivist) : undefined;
14
+ const result = await wrapper?.all();
15
+ if (mounted()) {
16
+ setError(undefined);
17
+ setPayloads(result);
18
+ }
19
+ }
20
+ catch (ex) {
21
+ setError(ex);
22
+ }
23
+ }, [archivist]);
24
+ return [payloads, error];
25
+ };
26
+ //# sourceMappingURL=useArchivistAll.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistAll.js","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistAll.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAEpC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAQ,GAAG,KAAK,EAAoC,EAAE;IACpF,MAAM,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IAC5C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAe,CAAA;IACvD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAS,CAAA;IAC3C,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,IAAI;YACF,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAC1E,MAAM,MAAM,GAAG,MAAM,OAAO,EAAE,GAAG,EAAE,CAAA;YACnC,IAAI,OAAO,EAAE,EAAE;gBACb,QAAQ,CAAC,SAAS,CAAC,CAAA;gBACnB,WAAW,CAAC,MAAM,CAAC,CAAA;aACpB;SACF;QAAC,OAAO,EAAE,EAAE;YACX,QAAQ,CAAC,EAAW,CAAC,CAAA;SACtB;IACH,CAAC,EACD,CAAC,SAAS,CAAC,CACZ,CAAA;IACD,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;AAC1B,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { XyoPayload } from '@xyo-network/payload';
2
+ export declare const useArchivistClear: (required?: boolean) => [(XyoPayload | null)[]?, Error?];
3
+ //# sourceMappingURL=useArchivistClear.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistClear.d.ts","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistClear.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAe,MAAM,sBAAsB,CAAA;AAK9D,eAAO,MAAM,iBAAiB,0BAAuB,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAqBnF,CAAA"}
@@ -0,0 +1,26 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared';
2
+ import { XyoArchivistWrapper } from '@xyo-network/archivist';
3
+ import { useState } from 'react';
4
+ import { useArchivist } from './use';
5
+ export const useArchivistClear = (required = false) => {
6
+ const { archivist } = useArchivist(required);
7
+ const [payloads, setPayloads] = useState();
8
+ const [error, setError] = useState();
9
+ useAsyncEffect(
10
+ // eslint-disable-next-line react-hooks/exhaustive-deps
11
+ async (mounted) => {
12
+ try {
13
+ const wrapper = archivist ? new XyoArchivistWrapper(archivist) : undefined;
14
+ await wrapper?.clear();
15
+ if (mounted()) {
16
+ setError(undefined);
17
+ setPayloads([]);
18
+ }
19
+ }
20
+ catch (ex) {
21
+ setError(ex);
22
+ }
23
+ }, [archivist]);
24
+ return [payloads, error];
25
+ };
26
+ //# sourceMappingURL=useArchivistClear.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistClear.js","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistClear.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAEpC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,QAAQ,GAAG,KAAK,EAAoC,EAAE;IACtF,MAAM,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IAC5C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAe,CAAA;IACvD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAS,CAAA;IAC3C,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,IAAI;YACF,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAC1E,MAAM,OAAO,EAAE,KAAK,EAAE,CAAA;YACtB,IAAI,OAAO,EAAE,EAAE;gBACb,QAAQ,CAAC,SAAS,CAAC,CAAA;gBACnB,WAAW,CAAC,EAAE,CAAC,CAAA;aAChB;SACF;QAAC,OAAO,EAAE,EAAE;YACX,QAAQ,CAAC,EAAW,CAAC,CAAA;SACtB;IACH,CAAC,EACD,CAAC,SAAS,CAAC,CACZ,CAAA;IACD,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;AAC1B,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { XyoPayload, XyoPayloadFindFilter } from '@xyo-network/payload';
2
+ import { RefreshCallback } from './lib';
3
+ export declare const useArchivistFind: <TFilter extends XyoPayloadFindFilter>(filter: TFilter, required?: boolean) => [XyoPayload[]?, Error?, RefreshCallback?];
4
+ //# sourceMappingURL=useArchivistFind.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistFind.d.ts","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistFind.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAIvE,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAGvC,eAAO,MAAM,gBAAgB,iFAG1B,CAAC,UAAU,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,eAAe,CAAC,CAuB1C,CAAA"}
@@ -0,0 +1,27 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared';
2
+ import { useDataState } from '@xyo-network/react-shared';
3
+ import { useState } from 'react';
4
+ import { useArchivistStates } from './useArchivistStates';
5
+ export const useArchivistFind = (filter, required = false) => {
6
+ const [savedFilter] = useDataState(filter);
7
+ const [payloads, setPayloads] = useState();
8
+ const { archivistWrapper, error, refresh, setError, refreshPayloads } = useArchivistStates(required);
9
+ useAsyncEffect(
10
+ // eslint-disable-next-line react-hooks/exhaustive-deps
11
+ async (mounted) => {
12
+ try {
13
+ if (archivistWrapper) {
14
+ const result = await archivistWrapper.find(savedFilter);
15
+ if (mounted()) {
16
+ setError(undefined);
17
+ setPayloads(result);
18
+ }
19
+ }
20
+ }
21
+ catch (ex) {
22
+ setError(ex);
23
+ }
24
+ }, [archivistWrapper, refresh, savedFilter, setError]);
25
+ return [payloads, error, refreshPayloads];
26
+ };
27
+ //# sourceMappingURL=useArchivistFind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistFind.js","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistFind.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAGhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,MAAe,EACf,QAAQ,GAAG,KAAK,EAC2B,EAAE;IAC7C,MAAM,CAAC,WAAW,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IAC1C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAgB,CAAA;IACxD,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAA;IAEpG,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,IAAI;YACF,IAAI,gBAAgB,EAAE;gBACpB,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBACvD,IAAI,OAAO,EAAE,EAAE;oBACb,QAAQ,CAAC,SAAS,CAAC,CAAA;oBACnB,WAAW,CAAC,MAAM,CAAC,CAAA;iBACpB;aACF;SACF;QAAC,OAAO,EAAE,EAAE;YACX,QAAQ,CAAC,EAAW,CAAC,CAAA;SACtB;IACH,CAAC,EACD,CAAC,gBAAgB,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,CACnD,CAAA;IACD,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,eAAe,CAAC,CAAA;AAC3C,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { XyoPayloads } from '@xyo-network/payload';
2
+ import { RefreshCallback } from './lib';
3
+ export declare const useArchivistGet: (ids?: string[], required?: boolean) => [XyoPayloads?, Error?, RefreshCallback?];
4
+ //# sourceMappingURL=useArchivistGet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistGet.d.ts","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistGet.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAGlD,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAGvC,eAAO,MAAM,eAAe,SAAU,MAAM,EAAE,yBAAqB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,EAAE,eAAe,CAAC,CAsBzG,CAAA"}
@@ -0,0 +1,25 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared';
2
+ import { useDataState } from '@xyo-network/react-shared';
3
+ import { useArchivistStates } from './useArchivistStates';
4
+ export const useArchivistGet = (ids, required = false) => {
5
+ const [savedIds] = useDataState(ids);
6
+ const { archivistWrapper, error, payloads, refresh, setError, setPayloads, refreshPayloads } = useArchivistStates(required);
7
+ useAsyncEffect(
8
+ // eslint-disable-next-line react-hooks/exhaustive-deps
9
+ async (mounted) => {
10
+ try {
11
+ if (archivistWrapper && savedIds) {
12
+ const result = (await archivistWrapper.get(savedIds ?? [])) ?? [];
13
+ if (mounted()) {
14
+ setError(undefined);
15
+ setPayloads(result);
16
+ }
17
+ }
18
+ }
19
+ catch (ex) {
20
+ setError(ex);
21
+ }
22
+ }, [archivistWrapper, savedIds, refresh, setError, setPayloads]);
23
+ return [payloads, error, refreshPayloads];
24
+ };
25
+ //# sourceMappingURL=useArchivistGet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistGet.js","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistGet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAGxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAc,EAAE,QAAQ,GAAG,KAAK,EAA4C,EAAE;IAC5G,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAA;IACpC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAA;IAE3H,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,IAAI;YACF,IAAI,gBAAgB,IAAI,QAAQ,EAAE;gBAChC,MAAM,MAAM,GAAG,CAAC,MAAM,gBAAgB,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;gBACjE,IAAI,OAAO,EAAE,EAAE;oBACb,QAAQ,CAAC,SAAS,CAAC,CAAA;oBACnB,WAAW,CAAC,MAAM,CAAC,CAAA;iBACpB;aACF;SACF;QAAC,OAAO,EAAE,EAAE;YACX,QAAQ,CAAC,EAAW,CAAC,CAAA;SACtB;IACH,CAAC,EACD,CAAC,gBAAgB,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,CAC7D,CAAA;IACD,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,eAAe,CAAC,CAAA;AAC3C,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { XyoPayload } from '@xyo-network/payload';
2
+ export declare const useArchivistInsert: (payloads: XyoPayload[], required?: boolean) => [(XyoPayload | null)[]?, Error?];
3
+ //# sourceMappingURL=useArchivistInsert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistInsert.d.ts","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistInsert.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAKjD,eAAO,MAAM,kBAAkB,aAAc,UAAU,EAAE,yBAAqB,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAsB5G,CAAA"}
@@ -0,0 +1,25 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared';
2
+ import { useDataState } from '@xyo-network/react-shared';
3
+ import { useArchivistStates } from './useArchivistStates';
4
+ export const useArchivistInsert = (payloads, required = false) => {
5
+ const [savedPayloads] = useDataState(payloads);
6
+ const { archivistWrapper, error, payloads: resultPayloads, refresh, setError, setPayloads: setResultPayloads } = useArchivistStates(required);
7
+ useAsyncEffect(
8
+ // eslint-disable-next-line react-hooks/exhaustive-deps
9
+ async (mounted) => {
10
+ try {
11
+ if (archivistWrapper && savedPayloads) {
12
+ const result = await archivistWrapper.insert(savedPayloads);
13
+ if (mounted()) {
14
+ setError(undefined);
15
+ setResultPayloads(result);
16
+ }
17
+ }
18
+ }
19
+ catch (ex) {
20
+ setError(ex);
21
+ }
22
+ }, [archivistWrapper, refresh, savedPayloads, setError, setResultPayloads]);
23
+ return [resultPayloads, error];
24
+ };
25
+ //# sourceMappingURL=useArchivistInsert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistInsert.js","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistInsert.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAExD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,QAAsB,EAAE,QAAQ,GAAG,KAAK,EAAoC,EAAE;IAC/G,MAAM,CAAC,aAAa,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IAC9C,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAA;IAE7I,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,IAAI;YACF,IAAI,gBAAgB,IAAI,aAAa,EAAE;gBACrC,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;gBAC3D,IAAI,OAAO,EAAE,EAAE;oBACb,QAAQ,CAAC,SAAS,CAAC,CAAA;oBACnB,iBAAiB,CAAC,MAAM,CAAC,CAAA;iBAC1B;aACF;SACF;QAAC,OAAO,EAAE,EAAE;YACX,QAAQ,CAAC,EAAW,CAAC,CAAA;SACtB;IACH,CAAC,EACD,CAAC,gBAAgB,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CACxE,CAAA;IACD,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAA;AAChC,CAAC,CAAA"}
@@ -0,0 +1,17 @@
1
+ /// <reference types="react" />
2
+ import { XyoArchivistWrapper } from '@xyo-network/archivist';
3
+ import { XyoPayloads } from '@xyo-network/payload';
4
+ export declare const useArchivistStates: (required: boolean) => {
5
+ archivistWrapper: XyoArchivistWrapper | undefined;
6
+ error: Error | undefined;
7
+ payloads: XyoPayloads<import("@xyo-network/payload").SchemaFields & import("@xyo-network/payload").PayloadFields & {
8
+ schema: string;
9
+ }> | undefined;
10
+ refresh: number;
11
+ refreshPayloads: () => void;
12
+ setError: import("react").Dispatch<import("react").SetStateAction<Error | undefined>>;
13
+ setPayloads: import("react").Dispatch<import("react").SetStateAction<XyoPayloads<import("@xyo-network/payload").SchemaFields & import("@xyo-network/payload").PayloadFields & {
14
+ schema: string;
15
+ }> | undefined>>;
16
+ };
17
+ //# sourceMappingURL=useArchivistStates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistStates.d.ts","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistStates.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAKlD,eAAO,MAAM,kBAAkB,aAAc,OAAO;;;;;;;;;;;;CAgBnD,CAAA"}
@@ -0,0 +1,18 @@
1
+ import { XyoArchivistWrapper } from '@xyo-network/archivist';
2
+ import { useEffect, useState } from 'react';
3
+ import { useArchivist } from './use';
4
+ export const useArchivistStates = (required) => {
5
+ const [payloads, setPayloads] = useState();
6
+ const { archivist } = useArchivist(required);
7
+ const [error, setError] = useState();
8
+ const [refresh, setRefresh] = useState(1);
9
+ const refreshPayloads = () => setRefresh((previous) => previous + 1);
10
+ const [archivistWrapper, setArchivistWrapper] = useState();
11
+ useEffect(() => {
12
+ if (archivist) {
13
+ setArchivistWrapper(new XyoArchivistWrapper(archivist));
14
+ }
15
+ }, [archivist]);
16
+ return { archivistWrapper, error, payloads, refresh, refreshPayloads, setError, setPayloads };
17
+ };
18
+ //# sourceMappingURL=useArchivistStates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useArchivistStates.js","sourceRoot":"","sources":["../../../../src/contexts/use/useArchivistStates.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE5D,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAEpC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,QAAiB,EAAE,EAAE;IACtD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAe,CAAA;IACvD,MAAM,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IAC5C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAS,CAAA;IAC3C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IACzC,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAA;IAEpE,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,EAAuB,CAAA;IAE/E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,EAAE;YACb,mBAAmB,CAAC,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAA;SACxD;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;AAC/F,CAAC,CAAA"}
package/package.json CHANGED
@@ -13,7 +13,7 @@
13
13
  "@xylabs/react-button": "^2.15.1",
14
14
  "@xylabs/react-flexbox": "^2.15.1",
15
15
  "@xylabs/react-shared": "^2.15.1",
16
- "@xyo-network/react-shared": "^2.38.0",
16
+ "@xyo-network/react-shared": "^2.38.2",
17
17
  "lodash": "^4.17.21",
18
18
  "tslib": "^2.4.0"
19
19
  },
@@ -29,9 +29,9 @@
29
29
  "description": "Common React library for all XYO projects that use React",
30
30
  "devDependencies": {
31
31
  "@types/lodash": "^4.14.186",
32
- "@xyo-network/api": "^2.38.0",
33
- "@xyo-network/archivist": "^2.38.0",
34
- "@xyo-network/payload": "^2.38.0"
32
+ "@xyo-network/api": "^2.38.3",
33
+ "@xyo-network/archivist": "^2.38.3",
34
+ "@xyo-network/payload": "^2.38.3"
35
35
  },
36
36
  "browser": "dist/esm/index.js",
37
37
  "docs": "dist/docs.json",
@@ -75,5 +75,5 @@
75
75
  },
76
76
  "sideEffects": false,
77
77
  "types": "dist/esm/index.d.ts",
78
- "version": "2.38.0"
78
+ "version": "2.38.2"
79
79
  }
@@ -14,7 +14,7 @@ export interface ArchivistDetails extends FlexBoxProps {
14
14
 
15
15
  export const ArchivistDetails: React.FC<ArchivistDetails> = ({ archivist: archivistProp, ...props }) => {
16
16
  const { archivist = archivistProp } = useArchivist()
17
- const [payloads, setPayloads] = useState<(XyoPayload | null)[]>()
17
+ const [payloads, setPayloads] = useState<XyoPayload[]>()
18
18
  const [refresh, setRefresh] = useState(0)
19
19
  const [wrapper, setWrapper] = useState<XyoArchivistWrapper>()
20
20
 
@@ -1,10 +1,10 @@
1
1
  import { Button, Card, CardContent, CardHeader } from '@mui/material'
2
2
  import { FlexCol } from '@xylabs/react-flexbox'
3
- import { XyoPayload } from '@xyo-network/payload'
3
+ import { XyoPayloads } from '@xyo-network/payload'
4
4
 
5
5
  export interface ArchivistPayloadsProps {
6
6
  refresh?: () => void
7
- payloads?: (XyoPayload | null)[]
7
+ payloads?: XyoPayloads
8
8
  error?: Error
9
9
  }
10
10
 
@@ -0,0 +1,6 @@
1
+ export * from './use'
2
+ export * from './useArchivistAll'
3
+ export * from './useArchivistClear'
4
+ export * from './useArchivistFind'
5
+ export * from './useArchivistGet'
6
+ export * from './useArchivistInsert'
@@ -0,0 +1 @@
1
+ export type RefreshCallback = () => void
@@ -0,0 +1,7 @@
1
+ import { useContextEx } from '@xyo-network/react-shared'
2
+
3
+ import { ArchivistContext } from '../Context'
4
+
5
+ export const useArchivist = (required = false) => {
6
+ return useContextEx(ArchivistContext, 'Archivist', required)
7
+ }
@@ -0,0 +1,29 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared'
2
+ import { XyoArchivistWrapper } from '@xyo-network/archivist'
3
+ import { XyoPayload, XyoPayloads } from '@xyo-network/payload'
4
+ import { useState } from 'react'
5
+
6
+ import { useArchivist } from './use'
7
+
8
+ export const useArchivistAll = (required = false): [(XyoPayload | null)[]?, Error?] => {
9
+ const { archivist } = useArchivist(required)
10
+ const [payloads, setPayloads] = useState<XyoPayloads>()
11
+ const [error, setError] = useState<Error>()
12
+ useAsyncEffect(
13
+ // eslint-disable-next-line react-hooks/exhaustive-deps
14
+ async (mounted) => {
15
+ try {
16
+ const wrapper = archivist ? new XyoArchivistWrapper(archivist) : undefined
17
+ const result = await wrapper?.all()
18
+ if (mounted()) {
19
+ setError(undefined)
20
+ setPayloads(result)
21
+ }
22
+ } catch (ex) {
23
+ setError(ex as Error)
24
+ }
25
+ },
26
+ [archivist],
27
+ )
28
+ return [payloads, error]
29
+ }
@@ -0,0 +1,29 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared'
2
+ import { XyoArchivistWrapper } from '@xyo-network/archivist'
3
+ import { XyoPayload, XyoPayloads } from '@xyo-network/payload'
4
+ import { useState } from 'react'
5
+
6
+ import { useArchivist } from './use'
7
+
8
+ export const useArchivistClear = (required = false): [(XyoPayload | null)[]?, Error?] => {
9
+ const { archivist } = useArchivist(required)
10
+ const [payloads, setPayloads] = useState<XyoPayloads>()
11
+ const [error, setError] = useState<Error>()
12
+ useAsyncEffect(
13
+ // eslint-disable-next-line react-hooks/exhaustive-deps
14
+ async (mounted) => {
15
+ try {
16
+ const wrapper = archivist ? new XyoArchivistWrapper(archivist) : undefined
17
+ await wrapper?.clear()
18
+ if (mounted()) {
19
+ setError(undefined)
20
+ setPayloads([])
21
+ }
22
+ } catch (ex) {
23
+ setError(ex as Error)
24
+ }
25
+ },
26
+ [archivist],
27
+ )
28
+ return [payloads, error]
29
+ }
@@ -0,0 +1,35 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared'
2
+ import { XyoPayload, XyoPayloadFindFilter } from '@xyo-network/payload'
3
+ import { useDataState } from '@xyo-network/react-shared'
4
+ import { useState } from 'react'
5
+
6
+ import { RefreshCallback } from './lib'
7
+ import { useArchivistStates } from './useArchivistStates'
8
+
9
+ export const useArchivistFind = <TFilter extends XyoPayloadFindFilter>(
10
+ filter: TFilter,
11
+ required = false,
12
+ ): [XyoPayload[]?, Error?, RefreshCallback?] => {
13
+ const [savedFilter] = useDataState(filter)
14
+ const [payloads, setPayloads] = useState<XyoPayload[]>()
15
+ const { archivistWrapper, error, refresh, setError, refreshPayloads } = useArchivistStates(required)
16
+
17
+ useAsyncEffect(
18
+ // eslint-disable-next-line react-hooks/exhaustive-deps
19
+ async (mounted) => {
20
+ try {
21
+ if (archivistWrapper) {
22
+ const result = await archivistWrapper.find(savedFilter)
23
+ if (mounted()) {
24
+ setError(undefined)
25
+ setPayloads(result)
26
+ }
27
+ }
28
+ } catch (ex) {
29
+ setError(ex as Error)
30
+ }
31
+ },
32
+ [archivistWrapper, refresh, savedFilter, setError],
33
+ )
34
+ return [payloads, error, refreshPayloads]
35
+ }
@@ -0,0 +1,30 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared'
2
+ import { XyoPayloads } from '@xyo-network/payload'
3
+ import { useDataState } from '@xyo-network/react-shared'
4
+
5
+ import { RefreshCallback } from './lib'
6
+ import { useArchivistStates } from './useArchivistStates'
7
+
8
+ export const useArchivistGet = (ids?: string[], required = false): [XyoPayloads?, Error?, RefreshCallback?] => {
9
+ const [savedIds] = useDataState(ids)
10
+ const { archivistWrapper, error, payloads, refresh, setError, setPayloads, refreshPayloads } = useArchivistStates(required)
11
+
12
+ useAsyncEffect(
13
+ // eslint-disable-next-line react-hooks/exhaustive-deps
14
+ async (mounted) => {
15
+ try {
16
+ if (archivistWrapper && savedIds) {
17
+ const result = (await archivistWrapper.get(savedIds ?? [])) ?? []
18
+ if (mounted()) {
19
+ setError(undefined)
20
+ setPayloads(result)
21
+ }
22
+ }
23
+ } catch (ex) {
24
+ setError(ex as Error)
25
+ }
26
+ },
27
+ [archivistWrapper, savedIds, refresh, setError, setPayloads],
28
+ )
29
+ return [payloads, error, refreshPayloads]
30
+ }
@@ -0,0 +1,29 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared'
2
+ import { XyoPayload } from '@xyo-network/payload'
3
+ import { useDataState } from '@xyo-network/react-shared'
4
+
5
+ import { useArchivistStates } from './useArchivistStates'
6
+
7
+ export const useArchivistInsert = (payloads: XyoPayload[], required = false): [(XyoPayload | null)[]?, Error?] => {
8
+ const [savedPayloads] = useDataState(payloads)
9
+ const { archivistWrapper, error, payloads: resultPayloads, refresh, setError, setPayloads: setResultPayloads } = useArchivistStates(required)
10
+
11
+ useAsyncEffect(
12
+ // eslint-disable-next-line react-hooks/exhaustive-deps
13
+ async (mounted) => {
14
+ try {
15
+ if (archivistWrapper && savedPayloads) {
16
+ const result = await archivistWrapper.insert(savedPayloads)
17
+ if (mounted()) {
18
+ setError(undefined)
19
+ setResultPayloads(result)
20
+ }
21
+ }
22
+ } catch (ex) {
23
+ setError(ex as Error)
24
+ }
25
+ },
26
+ [archivistWrapper, refresh, savedPayloads, setError, setResultPayloads],
27
+ )
28
+ return [resultPayloads, error]
29
+ }
@@ -0,0 +1,23 @@
1
+ import { XyoArchivistWrapper } from '@xyo-network/archivist'
2
+ import { XyoPayloads } from '@xyo-network/payload'
3
+ import { useEffect, useState } from 'react'
4
+
5
+ import { useArchivist } from './use'
6
+
7
+ export const useArchivistStates = (required: boolean) => {
8
+ const [payloads, setPayloads] = useState<XyoPayloads>()
9
+ const { archivist } = useArchivist(required)
10
+ const [error, setError] = useState<Error>()
11
+ const [refresh, setRefresh] = useState(1)
12
+ const refreshPayloads = () => setRefresh((previous) => previous + 1)
13
+
14
+ const [archivistWrapper, setArchivistWrapper] = useState<XyoArchivistWrapper>()
15
+
16
+ useEffect(() => {
17
+ if (archivist) {
18
+ setArchivistWrapper(new XyoArchivistWrapper(archivist))
19
+ }
20
+ }, [archivist])
21
+
22
+ return { archivistWrapper, error, payloads, refresh, refreshPayloads, setError, setPayloads }
23
+ }
@@ -1,10 +0,0 @@
1
- import { XyoPayload, XyoPayloadFindFilter } from '@xyo-network/payload';
2
- declare type RefreshCallback = () => void;
3
- export declare const useArchivist: (required?: boolean) => Omit<import("./State").ArchivistState & import("@xyo-network/react-shared").ContextExState, "provided">;
4
- export declare const useArchivistGet: (ids?: string[], required?: boolean) => [(XyoPayload | null)[]?, Error?, RefreshCallback?];
5
- export declare const useArchivistFind: <TFilter extends XyoPayloadFindFilter>(filter: TFilter, required?: boolean) => [XyoPayload[]?, Error?, RefreshCallback?];
6
- export declare const useArchivistInsert: (payloads: XyoPayload[], required?: boolean) => [(XyoPayload | null)[]?, Error?];
7
- export declare const useArchivistAll: (required?: boolean) => [(XyoPayload | null)[]?, Error?];
8
- export declare const useArchivistClear: (required?: boolean) => [(XyoPayload | null)[]?, Error?];
9
- export {};
10
- //# sourceMappingURL=use.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use.d.ts","sourceRoot":"","sources":["../../../src/contexts/use.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAe,MAAM,sBAAsB,CAAA;AAMpF,aAAK,eAAe,GAAG,MAAM,IAAI,CAAA;AAEjC,eAAO,MAAM,YAAY,iIAExB,CAAA;AAaD,eAAO,MAAM,eAAe,SAAU,MAAM,EAAE,yBAAqB,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,eAAe,CAAC,CA0BnH,CAAA;AAED,eAAO,MAAM,gBAAgB,iFAG1B,CAAC,UAAU,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,eAAe,CAAC,CA0B1C,CAAA;AAED,eAAO,MAAM,kBAAkB,aAAc,UAAU,EAAE,yBAAqB,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAkC5G,CAAA;AAED,eAAO,MAAM,eAAe,0BAAuB,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAqBjF,CAAA;AAED,eAAO,MAAM,iBAAiB,0BAAuB,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAqBnF,CAAA"}