@xyo-network/react-embed 3.0.1 → 3.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (138) hide show
  1. package/dist/browser/components/EmbedPlugin.d.ts +5 -0
  2. package/dist/browser/components/EmbedPlugin.d.ts.map +1 -0
  3. package/dist/browser/components/EmbedResolver.d.ts +4 -0
  4. package/dist/browser/components/EmbedResolver.d.ts.map +1 -0
  5. package/dist/browser/components/controls/EmbedFormControl.d.ts +10 -0
  6. package/dist/browser/components/controls/EmbedFormControl.d.ts.map +1 -0
  7. package/dist/browser/components/controls/ListModeSelect.d.ts +6 -0
  8. package/dist/browser/components/controls/ListModeSelect.d.ts.map +1 -0
  9. package/dist/browser/components/controls/RenderSelect.d.ts +4 -0
  10. package/dist/browser/components/controls/RenderSelect.d.ts.map +1 -0
  11. package/dist/browser/components/controls/index.d.ts +4 -0
  12. package/dist/browser/components/controls/index.d.ts.map +1 -0
  13. package/dist/browser/components/embed-card/EmbedCardResolver.d.ts +5 -0
  14. package/dist/browser/components/embed-card/EmbedCardResolver.d.ts.map +1 -0
  15. package/dist/browser/components/embed-card/EmbedPluginCard.d.ts +10 -0
  16. package/dist/browser/components/embed-card/EmbedPluginCard.d.ts.map +1 -0
  17. package/dist/browser/components/embed-card/card/BusyCard.d.ts +11 -0
  18. package/dist/browser/components/embed-card/card/BusyCard.d.ts.map +1 -0
  19. package/dist/browser/components/embed-card/card/EmbedCardHeader.d.ts +4 -0
  20. package/dist/browser/components/embed-card/card/EmbedCardHeader.d.ts.map +1 -0
  21. package/dist/browser/components/embed-card/card/EmbedPluginCard.d.ts +4 -0
  22. package/dist/browser/components/embed-card/card/EmbedPluginCard.d.ts.map +1 -0
  23. package/dist/browser/components/embed-card/card/index.d.ts +4 -0
  24. package/dist/browser/components/embed-card/card/index.d.ts.map +1 -0
  25. package/dist/browser/components/embed-card/error-handling/EmbedCardApiErrorRenderer.d.ts +10 -0
  26. package/dist/browser/components/embed-card/error-handling/EmbedCardApiErrorRenderer.d.ts.map +1 -0
  27. package/dist/browser/components/embed-card/error-handling/EmbedErrorCard.d.ts +14 -0
  28. package/dist/browser/components/embed-card/error-handling/EmbedErrorCard.d.ts.map +1 -0
  29. package/dist/browser/components/embed-card/error-handling/index.d.ts +3 -0
  30. package/dist/browser/components/embed-card/error-handling/index.d.ts.map +1 -0
  31. package/dist/browser/components/embed-card/index.d.ts +3 -0
  32. package/dist/browser/components/embed-card/index.d.ts.map +1 -0
  33. package/dist/browser/components/embed-card/menu/EmbedMenu.d.ts +4 -0
  34. package/dist/browser/components/embed-card/menu/EmbedMenu.d.ts.map +1 -0
  35. package/dist/browser/components/embed-card/menu/JsonMenuItem.d.ts +4 -0
  36. package/dist/browser/components/embed-card/menu/JsonMenuItem.d.ts.map +1 -0
  37. package/dist/browser/components/embed-card/menu/index.d.ts +2 -0
  38. package/dist/browser/components/embed-card/menu/index.d.ts.map +1 -0
  39. package/dist/browser/components/index.d.ts +3 -0
  40. package/dist/browser/components/index.d.ts.map +1 -0
  41. package/dist/browser/components/stories/storyPayload.d.ts +126 -0
  42. package/dist/browser/components/stories/storyPayload.d.ts.map +1 -0
  43. package/dist/browser/components/stories/storyShared.d.ts +4 -0
  44. package/dist/browser/components/stories/storyShared.d.ts.map +1 -0
  45. package/dist/browser/components/stories/xyoEmbedStoryBase.d.ts +3 -0
  46. package/dist/browser/components/stories/xyoEmbedStoryBase.d.ts.map +1 -0
  47. package/dist/browser/components/validation-alerts/ValidatePayload.d.ts +5 -0
  48. package/dist/browser/components/validation-alerts/ValidatePayload.d.ts.map +1 -0
  49. package/dist/browser/components/validation-alerts/ValidatePlugins.d.ts +5 -0
  50. package/dist/browser/components/validation-alerts/ValidatePlugins.d.ts.map +1 -0
  51. package/dist/browser/components/validation-alerts/index.d.ts +3 -0
  52. package/dist/browser/components/validation-alerts/index.d.ts.map +1 -0
  53. package/dist/browser/contexts/EmbedPluginContext/Context.d.ts +3 -0
  54. package/dist/browser/contexts/EmbedPluginContext/Context.d.ts.map +1 -0
  55. package/dist/browser/contexts/EmbedPluginContext/Provider.d.ts +6 -0
  56. package/dist/browser/contexts/EmbedPluginContext/Provider.d.ts.map +1 -0
  57. package/dist/browser/contexts/EmbedPluginContext/State.d.ts +28 -0
  58. package/dist/browser/contexts/EmbedPluginContext/State.d.ts.map +1 -0
  59. package/dist/browser/contexts/EmbedPluginContext/index.d.ts +5 -0
  60. package/dist/browser/contexts/EmbedPluginContext/index.d.ts.map +1 -0
  61. package/dist/browser/contexts/EmbedPluginContext/use.d.ts +2 -0
  62. package/dist/browser/contexts/EmbedPluginContext/use.d.ts.map +1 -0
  63. package/dist/browser/contexts/RefreshPayloadContext/Context.d.ts +3 -0
  64. package/dist/browser/contexts/RefreshPayloadContext/Context.d.ts.map +1 -0
  65. package/dist/browser/contexts/RefreshPayloadContext/Provider.d.ts +8 -0
  66. package/dist/browser/contexts/RefreshPayloadContext/Provider.d.ts.map +1 -0
  67. package/dist/browser/contexts/RefreshPayloadContext/State.d.ts +8 -0
  68. package/dist/browser/contexts/RefreshPayloadContext/State.d.ts.map +1 -0
  69. package/dist/browser/contexts/RefreshPayloadContext/index.d.ts +4 -0
  70. package/dist/browser/contexts/RefreshPayloadContext/index.d.ts.map +1 -0
  71. package/dist/browser/contexts/RefreshPayloadContext/use.d.ts +2 -0
  72. package/dist/browser/contexts/RefreshPayloadContext/use.d.ts.map +1 -0
  73. package/dist/browser/contexts/ResolvePayloadContext/Context.d.ts +3 -0
  74. package/dist/browser/contexts/ResolvePayloadContext/Context.d.ts.map +1 -0
  75. package/dist/browser/contexts/ResolvePayloadContext/Provider.d.ts +6 -0
  76. package/dist/browser/contexts/ResolvePayloadContext/Provider.d.ts.map +1 -0
  77. package/dist/browser/contexts/ResolvePayloadContext/State.d.ts +13 -0
  78. package/dist/browser/contexts/ResolvePayloadContext/State.d.ts.map +1 -0
  79. package/dist/browser/contexts/ResolvePayloadContext/index.d.ts +5 -0
  80. package/dist/browser/contexts/ResolvePayloadContext/index.d.ts.map +1 -0
  81. package/dist/browser/contexts/ResolvePayloadContext/use.d.ts +2 -0
  82. package/dist/browser/contexts/ResolvePayloadContext/use.d.ts.map +1 -0
  83. package/dist/browser/contexts/ValidatePayloadContext/Context.d.ts +3 -0
  84. package/dist/browser/contexts/ValidatePayloadContext/Context.d.ts.map +1 -0
  85. package/dist/browser/contexts/ValidatePayloadContext/Provider.d.ts +7 -0
  86. package/dist/browser/contexts/ValidatePayloadContext/Provider.d.ts.map +1 -0
  87. package/dist/browser/contexts/ValidatePayloadContext/State.d.ts +7 -0
  88. package/dist/browser/contexts/ValidatePayloadContext/State.d.ts.map +1 -0
  89. package/dist/browser/contexts/ValidatePayloadContext/index.d.ts +4 -0
  90. package/dist/browser/contexts/ValidatePayloadContext/index.d.ts.map +1 -0
  91. package/dist/browser/contexts/ValidatePayloadContext/use.d.ts +2 -0
  92. package/dist/browser/contexts/ValidatePayloadContext/use.d.ts.map +1 -0
  93. package/dist/browser/contexts/index.d.ts +5 -0
  94. package/dist/browser/contexts/index.d.ts.map +1 -0
  95. package/dist/browser/index.d.ts +4 -112
  96. package/dist/browser/index.d.ts.map +1 -0
  97. package/dist/browser/index.mjs.map +1 -1
  98. package/dist/browser/types/EmbedPluginProps.d.ts +9 -0
  99. package/dist/browser/types/EmbedPluginProps.d.ts.map +1 -0
  100. package/dist/browser/types/index.d.ts +2 -0
  101. package/dist/browser/types/index.d.ts.map +1 -0
  102. package/package.json +57 -54
  103. package/src/components/EmbedPlugin.tsx +9 -5
  104. package/src/components/EmbedResolver.tsx +4 -2
  105. package/src/components/controls/EmbedFormControl.tsx +6 -3
  106. package/src/components/controls/ListModeSelect.tsx +4 -2
  107. package/src/components/controls/RenderSelect.tsx +5 -2
  108. package/src/components/embed-card/EmbedCardResolver.tsx +11 -4
  109. package/src/components/embed-card/EmbedPluginCard.tsx +9 -4
  110. package/src/components/embed-card/card/BusyCard.tsx +7 -4
  111. package/src/components/embed-card/card/EmbedCardHeader.tsx +10 -3
  112. package/src/components/embed-card/card/EmbedPluginCard.tsx +5 -2
  113. package/src/components/embed-card/error-handling/EmbedCardApiErrorRenderer.tsx +6 -4
  114. package/src/components/embed-card/error-handling/EmbedErrorCard.tsx +14 -5
  115. package/src/components/embed-card/menu/EmbedMenu.tsx +2 -1
  116. package/src/components/embed-card/menu/JsonMenuItem.tsx +4 -1
  117. package/src/components/stories/XyoEmbedPlugin.examples.stories.tsx +1 -1
  118. package/src/components/stories/XyoEmbedPlugin.states.stories.tsx +4 -2
  119. package/src/components/stories/storyPayload.ts +60 -12
  120. package/src/components/stories/storyShared.tsx +1 -11
  121. package/src/components/stories/xyoEmbedStoryBase.ts +9 -0
  122. package/src/components/validation-alerts/ValidatePayload.tsx +6 -3
  123. package/src/components/validation-alerts/ValidatePlugins.tsx +3 -2
  124. package/src/contexts/EmbedPluginContext/Context.ts +1 -1
  125. package/src/contexts/EmbedPluginContext/Provider.tsx +3 -3
  126. package/src/contexts/EmbedPluginContext/State.ts +3 -3
  127. package/src/contexts/RefreshPayloadContext/Context.ts +1 -1
  128. package/src/contexts/RefreshPayloadContext/Provider.tsx +8 -3
  129. package/src/contexts/RefreshPayloadContext/State.ts +2 -2
  130. package/src/contexts/ResolvePayloadContext/Context.ts +1 -1
  131. package/src/contexts/ResolvePayloadContext/Provider.tsx +14 -6
  132. package/src/contexts/ResolvePayloadContext/State.ts +3 -3
  133. package/src/contexts/ValidatePayloadContext/Context.ts +1 -1
  134. package/src/contexts/ValidatePayloadContext/Provider.stories.tsx +15 -6
  135. package/src/contexts/ValidatePayloadContext/Provider.tsx +7 -3
  136. package/src/contexts/ValidatePayloadContext/State.ts +1 -1
  137. package/src/types/EmbedPluginProps.ts +2 -2
  138. package/xy.config.ts +2 -4
@@ -0,0 +1,3 @@
1
+ import type { ValidatePayloadState } from './State.ts';
2
+ export declare const ValidatePayloadContext: import("react").Context<ValidatePayloadState & import("@xyo-network/react-shared").ContextExState>;
3
+ //# sourceMappingURL=Context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../../src/contexts/ValidatePayloadContext/Context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEtD,eAAO,MAAM,sBAAsB,oGAA0C,CAAA"}
@@ -0,0 +1,7 @@
1
+ import type { WithChildren } from '@xylabs/react-shared';
2
+ import React from 'react';
3
+ export interface ValidatePayloadProviderProps {
4
+ enabled?: boolean;
5
+ }
6
+ export declare const ValidatePayloadProvider: React.FC<WithChildren<ValidatePayloadProviderProps>>;
7
+ //# sourceMappingURL=Provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../../../src/contexts/ValidatePayloadContext/Provider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGxD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAKvC,MAAM,WAAW,4BAA4B;IAE3C,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,4BAA4B,CAAC,CAiCxF,CAAA"}
@@ -0,0 +1,7 @@
1
+ import type { ContextExState } from '@xyo-network/react-shared';
2
+ export interface ValidatePayloadState extends ContextExState {
3
+ enabled?: boolean;
4
+ schema?: string;
5
+ validPayload?: boolean;
6
+ }
7
+ //# sourceMappingURL=State.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../../../../src/contexts/ValidatePayloadContext/State.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAE/D,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB"}
@@ -0,0 +1,4 @@
1
+ export * from './Provider.tsx';
2
+ export * from './State.ts';
3
+ export * from './use.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/contexts/ValidatePayloadContext/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const useValidatePayload: () => Omit<import("./State.ts").ValidatePayloadState & 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/ValidatePayloadContext/use.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,kBAAkB,wHAAqE,CAAA"}
@@ -0,0 +1,5 @@
1
+ export * from './EmbedPluginContext/index.ts';
2
+ export * from './RefreshPayloadContext/index.ts';
3
+ export * from './ResolvePayloadContext/index.ts';
4
+ export * from './ValidatePayloadContext/index.ts';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contexts/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAA;AAC7C,cAAc,kCAAkC,CAAA;AAChD,cAAc,kCAAkC,CAAA;AAChD,cAAc,mCAAmC,CAAA"}
@@ -1,112 +1,4 @@
1
- import { CardProps, CardHeaderProps } from '@mui/material';
2
- import { BusyVariant, BusyCircularProgressProps, BusyLinearProgressProps, WithChildren } from '@xylabs/react-shared';
3
- import * as React from 'react';
4
- import React__default, { Dispatch, SetStateAction } from 'react';
5
- import { ModuleError, Payload } from '@xyo-network/payload-model';
6
- import { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin';
7
- import * as _xyo_network_react_shared from '@xyo-network/react-shared';
8
- import { ListMode, ContextExState } from '@xyo-network/react-shared';
9
-
10
- interface BusyCardProps extends CardProps {
11
- busy?: boolean;
12
- busyMinimum?: number;
13
- busyVariant?: BusyVariant;
14
- busyVariantProps?: BusyCircularProgressProps | BusyLinearProgressProps;
15
- }
16
- declare const BusyCard: React__default.FC<WithChildren<BusyCardProps>>;
17
-
18
- declare const EmbedCardHeader: React__default.FC<CardHeaderProps>;
19
-
20
- declare const EmbedPluginCard: React__default.FC<BusyCardProps>;
21
-
22
- interface EmbedPluginVisibilityConfig {
23
- hideAvatar?: boolean;
24
- hideCardActions?: boolean;
25
- hideCardHeader?: boolean;
26
- hideErrorDetails?: boolean;
27
- hideRefreshButton?: boolean;
28
- hideTimestamp?: boolean;
29
- hideTitle?: boolean;
30
- }
31
- interface PluginConfig {
32
- listMode?: ListMode;
33
- }
34
- interface EmbedPluginBase {
35
- embedPluginConfig?: PluginConfig;
36
- hideElementsConfig?: EmbedPluginVisibilityConfig;
37
- huri?: string;
38
- plugins?: PayloadRenderPlugin[];
39
- refreshTitle?: string;
40
- timestampLabel?: string;
41
- }
42
- interface EmbedPluginState extends EmbedPluginBase, ContextExState {
43
- activePlugin?: PayloadRenderPlugin;
44
- setActivePlugin?: Dispatch<SetStateAction<PayloadRenderPlugin | undefined>>;
45
- }
46
-
47
- declare const EmbedPluginContext: React.Context<EmbedPluginState & _xyo_network_react_shared.ContextExState>;
48
-
49
- type EmbedPluginProviderProps = EmbedPluginBase;
50
- declare const EmbedPluginProvider: React__default.FC<WithChildren<EmbedPluginProviderProps>>;
51
-
52
- declare const useEmbedPluginState: () => Omit<EmbedPluginState & _xyo_network_react_shared.ContextExState, "provided">;
53
-
54
- interface RefreshPayloadProps {
55
- onRefresh?: () => void;
56
- refreshPayload?: boolean;
57
- }
58
- declare const RefreshPayloadProvider: React__default.FC<WithChildren<RefreshPayloadProps>>;
59
-
60
- interface RefreshPayloadState extends ContextExState {
61
- onRefresh?: () => void;
62
- refreshPayload?: boolean;
63
- setRefreshPayload?: Dispatch<SetStateAction<boolean | undefined>>;
64
- }
65
-
66
- declare const useRefreshPayload: () => Omit<RefreshPayloadState & _xyo_network_react_shared.ContextExState, "provided">;
67
-
68
- interface ResolvePayloadState extends ContextExState {
69
- huri?: string;
70
- huriError?: ModuleError;
71
- huriPayload?: string | Payload;
72
- notFound?: boolean;
73
- payload?: Payload;
74
- refreshHuri?: () => void;
75
- setPayload?: Dispatch<SetStateAction<Payload | undefined>>;
76
- }
77
-
78
- declare const ResolvePayloadContext: React.Context<ResolvePayloadState & _xyo_network_react_shared.ContextExState>;
79
-
80
- type ResolvePayloadProviderProps = Omit<ResolvePayloadState, 'provided'>;
81
- declare const ResolvePayloadProvider: React__default.FC<WithChildren<ResolvePayloadProviderProps>>;
82
-
83
- declare const useResolvePayload: () => Omit<ResolvePayloadState & _xyo_network_react_shared.ContextExState, "provided">;
84
-
85
- interface ValidatePayloadProviderProps {
86
- enabled?: boolean;
87
- }
88
- declare const ValidatePayloadProvider: React__default.FC<WithChildren<ValidatePayloadProviderProps>>;
89
-
90
- interface ValidatePayloadState extends ContextExState {
91
- enabled?: boolean;
92
- schema?: string;
93
- validPayload?: boolean;
94
- }
95
-
96
- declare const useValidatePayload: () => Omit<ValidatePayloadState & _xyo_network_react_shared.ContextExState, "provided">;
97
-
98
- interface EmbedPluginProps extends EmbedPluginBase {
99
- hideElementsConfig?: EmbedPluginVisibilityConfig;
100
- huriPayload?: string | Payload;
101
- onRefresh?: () => void;
102
- validateSchema?: boolean;
103
- }
104
-
105
- interface EmbedPluginCardProps extends WithChildren, EmbedPluginProps, BusyCardProps {
106
- }
107
- declare const ApiEmbedPluginCard: React__default.FC<EmbedPluginCardProps>;
108
- declare const EmbedPluginCardInner: React__default.FC<BusyCardProps>;
109
-
110
- declare const EmbedPluginInner: React__default.FC<WithChildren<EmbedPluginProps>>;
111
-
112
- export { ApiEmbedPluginCard, BusyCard, type BusyCardProps, EmbedCardHeader, EmbedPluginCard as EmbedPlugin, type EmbedPluginBase, EmbedPluginCard, EmbedPluginCardInner, type EmbedPluginCardProps, EmbedPluginContext, EmbedPluginInner, type EmbedPluginProps, EmbedPluginProvider, type EmbedPluginProviderProps, type EmbedPluginState, type EmbedPluginVisibilityConfig, type PluginConfig, type RefreshPayloadProps, RefreshPayloadProvider, type RefreshPayloadState, ResolvePayloadContext, ResolvePayloadProvider, type ResolvePayloadProviderProps, type ResolvePayloadState, ValidatePayloadProvider, type ValidatePayloadProviderProps, type ValidatePayloadState, useEmbedPluginState, useRefreshPayload, useResolvePayload, useValidatePayload };
1
+ export * from './components/index.ts';
2
+ export * from './contexts/index.ts';
3
+ export * from './types/index.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/embed-card/card/BusyCard.tsx","../../src/components/embed-card/card/EmbedCardHeader.tsx","../../src/contexts/EmbedPluginContext/Context.ts","../../src/contexts/EmbedPluginContext/Provider.tsx","../../src/contexts/EmbedPluginContext/use.ts","../../src/contexts/RefreshPayloadContext/Provider.tsx","../../src/contexts/RefreshPayloadContext/Context.ts","../../src/contexts/RefreshPayloadContext/use.ts","../../src/contexts/ResolvePayloadContext/Context.ts","../../src/contexts/ResolvePayloadContext/Provider.tsx","../../src/contexts/ResolvePayloadContext/use.ts","../../src/contexts/ValidatePayloadContext/Provider.tsx","../../src/contexts/ValidatePayloadContext/Context.ts","../../src/contexts/ValidatePayloadContext/use.ts","../../src/components/embed-card/menu/EmbedMenu.tsx","../../src/components/embed-card/menu/JsonMenuItem.tsx","../../src/components/embed-card/card/EmbedPluginCard.tsx","../../src/components/controls/EmbedFormControl.tsx","../../src/components/controls/ListModeSelect.tsx","../../src/components/controls/RenderSelect.tsx","../../src/components/embed-card/EmbedPluginCard.tsx","../../src/components/EmbedPlugin.tsx","../../src/components/EmbedResolver.tsx","../../src/components/validation-alerts/ValidatePayload.tsx","../../src/components/validation-alerts/ValidatePlugins.tsx","../../src/components/embed-card/error-handling/EmbedCardApiErrorRenderer.tsx","../../src/components/embed-card/error-handling/EmbedErrorCard.tsx"],"sourcesContent":["import { Card, CardProps } from '@mui/material'\nimport { useBusyTiming } from '@xylabs/react-flexbox'\nimport {\n BusyCircularProgress,\n BusyCircularProgressProps,\n BusyLinearProgress,\n BusyLinearProgressProps,\n BusyVariant,\n WithChildren,\n} from '@xylabs/react-shared'\nimport React from 'react'\n\nexport interface BusyCardProps extends CardProps {\n busy?: boolean\n busyMinimum?: number\n busyVariant?: BusyVariant\n busyVariantProps?: BusyCircularProgressProps | BusyLinearProgressProps\n}\n\nexport const BusyCard: React.FC<WithChildren<BusyCardProps>> = ({\n busy,\n busyMinimum = 500,\n busyVariant = 'circular',\n busyVariantProps,\n children,\n ...props\n}) => {\n const internalBusy = useBusyTiming(busy, busyMinimum)\n return (\n <Card {...props}>\n {children}\n {busyVariant === 'circular' && internalBusy\n ? <BusyCircularProgress {...(busyVariantProps as BusyCircularProgressProps)} />\n : null}\n {busyVariant === 'linear' && internalBusy\n ? <BusyLinearProgress {...(busyVariantProps as BusyLinearProgressProps)} />\n : null}\n </Card>\n )\n}\n","import { Refresh as RefreshIcon } from '@mui/icons-material'\nimport { Avatar, CardHeader, CardHeaderProps, Chip, Theme } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts/index.ts'\nimport { EmbedMenu } from '../menu/index.ts'\n\nexport const EmbedCardHeader: React.FC<CardHeaderProps> = () => {\n const { refreshHuri, huri } = useResolvePayload()\n const { activePlugin, timestampLabel, hideElementsConfig } = useEmbedPluginState()\n const { hideAvatar, hideTitle, hideRefreshButton, hideTimestamp, hideCardActions } = hideElementsConfig ?? {}\n // this is temporary so that we can add the ability to get a timestamp via diviner later\n const timestamp = Date.now()\n return (\n <CardHeader\n sx={{ flexWrap: 'wrap', rowGap: 1 }}\n avatar={\n hideAvatar\n ? <></>\n : (\n <Avatar sx={{ bgcolor: (theme: Theme) => theme.palette.primary.main }} aria-label={activePlugin?.name}>\n {activePlugin?.name?.charAt(0)}\n </Avatar>\n )\n }\n action={(\n <FlexRow flexWrap=\"wrap\" columnGap={0.5}>\n {timestamp\n ? hideTimestamp && hideRefreshButton\n ? ''\n : (\n <Chip\n avatar={hideRefreshButton ? <></> : <RefreshIcon />}\n clickable={hideRefreshButton ? false : true}\n onClick={refreshHuri}\n label={hideTimestamp ? '' : `${timestampLabel} ${new Date(timestamp).toLocaleString()}`}\n />\n )\n\n : null}\n {/* Huri case is valid as long as the only menu item is JSON */}\n {hideCardActions || huri === undefined ? null : <EmbedMenu />}\n </FlexRow>\n )}\n title={hideTitle ? '' : activePlugin?.name}\n />\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { EmbedPluginState } from './State.ts'\n\nexport const EmbedPluginContext = createContextEx<EmbedPluginState>()\n","import { WithChildren } from '@xylabs/react-shared'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport React, { useEffect, useState } from 'react'\n\nimport { EmbedPluginContext } from './Context.ts'\nimport { EmbedPluginBase } from './State.ts'\n\nexport type EmbedPluginProviderProps = EmbedPluginBase\n\n/** Expose passed embed plugin props via context */\nexport const EmbedPluginProvider: React.FC<WithChildren<EmbedPluginProviderProps>> = ({\n children,\n refreshTitle,\n timestampLabel,\n hideElementsConfig,\n plugins,\n embedPluginConfig,\n}) => {\n const [activePlugin, setActivePlugin] = useState<PayloadRenderPlugin | undefined>(plugins ? plugins[0] : undefined)\n\n useEffect(() => {\n setActivePlugin(plugins ? plugins[0] : undefined)\n }, [plugins])\n\n return (\n <EmbedPluginContext.Provider\n // eslint-disable-next-line @eslint-react/no-unstable-context-value\n value={{\n activePlugin,\n embedPluginConfig,\n hideElementsConfig,\n provided: true,\n refreshTitle,\n setActivePlugin,\n timestampLabel,\n }}\n >\n {children}\n </EmbedPluginContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { EmbedPluginContext } from './Context.ts'\n\nexport const useEmbedPluginState = () => useContextEx(EmbedPluginContext, 'EmbedPlugin', true)\n","import { WithChildren } from '@xylabs/react-shared'\nimport React, { useState } from 'react'\n\nimport { RefreshPayloadContext } from './Context.ts'\n\nexport interface RefreshPayloadProps {\n onRefresh?: () => void\n refreshPayload?: boolean\n}\n\nexport const RefreshPayloadProvider: React.FC<WithChildren<RefreshPayloadProps>> = ({ children, onRefresh, refreshPayload }) => {\n const [localRefreshPayload, setRefreshPayload] = useState(refreshPayload)\n\n return (\n // eslint-disable-next-line @eslint-react/no-unstable-context-value\n <RefreshPayloadContext.Provider value={{ onRefresh, provided: true, refreshPayload: localRefreshPayload, setRefreshPayload }}>\n {children}\n </RefreshPayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { RefreshPayloadState } from './State.ts'\n\nexport const RefreshPayloadContext = createContextEx<RefreshPayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { RefreshPayloadContext } from './Context.ts'\n\nexport const useRefreshPayload = () => useContextEx(RefreshPayloadContext, 'RefreshPayload', true)\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { ResolvePayloadState } from './State.ts'\n\nexport const ResolvePayloadContext = createContextEx<ResolvePayloadState>()\n","import { delay } from '@xylabs/delay'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { Huri } from '@xyo-network/huri'\nimport { ModuleError, ModuleErrorSchema, Payload } from '@xyo-network/payload-model'\nimport React, { useEffect, useState } from 'react'\n\nimport { useRefreshPayload } from '../RefreshPayloadContext/index.ts'\nimport { ResolvePayloadContext } from './Context.ts'\nimport { ResolvePayloadState } from './State.ts'\n\nexport type ResolvePayloadProviderProps = Omit<ResolvePayloadState, 'provided'>\n\nexport const ResolvePayloadProvider: React.FC<WithChildren<ResolvePayloadProviderProps>> = ({ children, huriPayload }) => {\n const [payload, setPayload] = useState<Payload>()\n const [huri, setHuri] = useState<string>()\n const { refreshPayload, setRefreshPayload, onRefresh } = useRefreshPayload()\n\n useEffect(() => {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n typeof huriPayload === 'string' ? setHuri(huriPayload) : undefined\n if (typeof huriPayload === 'object') {\n setPayload(huriPayload)\n setRefreshPayload?.(true)\n }\n }, [huriPayload, setRefreshPayload])\n\n const [notFound, setNotFound] = useState<boolean>()\n const [huriError, setHuriError] = useState<ModuleError>()\n\n useAsyncEffect(\n async (mounted) => {\n if (huri && !refreshPayload) {\n try {\n const huriInstance = new Huri(huri)\n const result = await huriInstance.fetch()\n // ensure the busy state can stay for a moment to avoid flashing too quickly\n await delay(500)\n\n if (mounted()) {\n setNotFound(result === null)\n setPayload(result)\n setRefreshPayload?.(true)\n }\n } catch (e) {\n const error = e as Error\n setHuriError({ message: error.message, schema: ModuleErrorSchema, sources: [] })\n }\n }\n },\n [huri, payload, refreshPayload, setRefreshPayload],\n )\n\n const refreshHuri = () => {\n onRefresh?.()\n if (huri) {\n setRefreshPayload?.(false)\n }\n }\n\n return (\n // eslint-disable-next-line @eslint-react/no-unstable-context-value\n <ResolvePayloadContext.Provider value={{ huri, huriError, notFound, payload, provided: true, refreshHuri, setPayload }}>\n {children}\n </ResolvePayloadContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ResolvePayloadContext } from './Context.ts'\n\nexport const useResolvePayload = () => useContextEx(ResolvePayloadContext, 'ResolvePayload', true)\n","import { Chip } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { SchemaCache, SchemaNameToValidatorMap } from '@xyo-network/schema-cache'\nimport React, { useState } from 'react'\n\nimport { useResolvePayload } from '../ResolvePayloadContext/index.ts'\nimport { ValidatePayloadContext } from './Context.ts'\n\nexport interface ValidatePayloadProviderProps {\n // Opt-in flag to validate payloads for the plugin(s)\n enabled?: boolean\n}\n\nexport const ValidatePayloadProvider: React.FC<WithChildren<ValidatePayloadProviderProps>> = ({ children, enabled = false }) => {\n const { payload } = useResolvePayload()\n const [initialized, setInitialized] = useState(false)\n const [valid, setValid] = useState<boolean>()\n\n useAsyncEffect(\n async () => {\n if (payload && enabled) {\n await SchemaCache.instance.get(payload.schema)\n\n const possibleKnownSchema = payload.schema as keyof SchemaNameToValidatorMap\n\n if (SchemaCache.instance.validators[possibleKnownSchema]) {\n const validator = SchemaCache.instance.validators[possibleKnownSchema]\n setValid(validator?.(payload))\n }\n setInitialized(true)\n }\n },\n [payload, enabled],\n )\n\n return (\n // eslint-disable-next-line @eslint-react/no-unstable-context-value\n <ValidatePayloadContext.Provider value={{ enabled, provided: true, schema: payload?.schema, validPayload: valid }}>\n {enabled\n ? <>{initialized ? children : <Chip label=\"Validating Payload...\" />}</>\n : children}\n </ValidatePayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { ValidatePayloadState } from './State.ts'\n\nexport const ValidatePayloadContext = createContextEx<ValidatePayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ValidatePayloadContext } from './Context.ts'\n\nexport const useValidatePayload = () => useContextEx(ValidatePayloadContext, 'ValidateSchema', true)\n","import { MoreVert as MoreVertIcon } from '@mui/icons-material'\nimport { IconButton, IconButtonProps, Menu } from '@mui/material'\nimport React, { useState } from 'react'\n\nimport { JsonMenuItem } from './JsonMenuItem.tsx'\n\nexport const EmbedMenu: React.FC<IconButtonProps> = (props) => {\n // TODO - link to explore website\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null)\n const open = Boolean(anchorEl)\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n setAnchorEl(event.currentTarget)\n }\n const handleClose = () => {\n setAnchorEl(null)\n }\n\n return (\n <>\n <IconButton onClick={handleClick} {...props}>\n <MoreVertIcon />\n </IconButton>\n <Menu anchorEl={anchorEl} open={open} onClose={handleClose} PaperProps={{ variant: 'elevation' }} MenuListProps={{ dense: true }}>\n <JsonMenuItem />\n </Menu>\n </>\n )\n}\n","import { OpenInNew as OpenInNewIcon } from '@mui/icons-material'\nimport { ListItemIcon, ListItemText, MenuItem, MenuItemProps } from '@mui/material'\nimport React from 'react'\n\nimport { useResolvePayload } from '../../../contexts/index.ts'\n\nexport const JsonMenuItem: React.FC<MenuItemProps> = (props) => {\n const { huri } = useResolvePayload()\n\n return (\n <>\n {huri\n ? (\n <MenuItem title=\"Source Payload JSON\" onClick={() => window.open(huri, '_blank')} {...props}>\n <ListItemText sx={{ mr: 1 }}>JSON</ListItemText>\n <ListItemIcon sx={{ justifyContent: 'end' }}>\n <OpenInNewIcon fontSize=\"small\" />\n </ListItemIcon>\n </MenuItem>\n )\n : null}\n </>\n )\n}\n","import { CardContent } from '@mui/material'\nimport { FlexGrowRow } from '@xylabs/react-flexbox'\nimport { useListMode } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts/index.ts'\nimport { EmbedRenderSelect, ListModeSelectFormControl } from '../../controls/index.ts'\nimport { BusyCard, BusyCardProps } from './BusyCard.tsx'\nimport { EmbedCardHeader } from './EmbedCardHeader.tsx'\n\nexport const EmbedPluginCard: React.FC<BusyCardProps> = ({ ...props }) => {\n const { payload } = useResolvePayload()\n const { activePlugin: ActivePlugin, plugins, hideElementsConfig } = useEmbedPluginState()\n const { listMode } = useListMode()\n const supportsListMode = ActivePlugin?.components?.box?.listModes?.length ?? 0 > 1\n\n return (\n <BusyCard {...props}>\n {hideElementsConfig?.hideCardHeader ? null : <EmbedCardHeader />}\n {/* Only show the row if the children are present */}\n {(plugins && plugins.length > 0) || supportsListMode\n ? (\n <FlexGrowRow columnGap={2} rowGap={2} flexWrap=\"wrap\" pb={1}>\n {plugins && plugins.length > 1\n ? <EmbedRenderSelect />\n : null}\n {supportsListMode\n ? <ListModeSelectFormControl />\n : null}\n </FlexGrowRow>\n )\n : null}\n <CardContent sx={{ height: '100%' }}>\n {ActivePlugin\n ? <ActivePlugin.components.box.detailsBox payload={payload} {...(supportsListMode && { listMode })} />\n : null}\n </CardContent>\n </BusyCard>\n )\n}\n","import { FormControl, FormControlProps, InputLabel } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\ninterface EmbedFormControlProps extends FormControlProps {\n formId?: string\n formLabel?: string\n}\n\nexport const EmbedFormControl: React.FC<WithChildren<EmbedFormControlProps>> = ({ formId, formLabel, children, ...props }) => {\n return (\n <FormControl {...props}>\n <InputLabel id={formId}>{formLabel}</InputLabel>\n {children}\n </FormControl>\n )\n}\n","import { MenuItem } from '@mui/material'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\nimport { ListMode, useListMode } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport { EmbedFormControl } from './EmbedFormControl.tsx'\n\nconst listModeSelectId = 'listmode-select-id'\nconst listModeSelectLabel = 'List Mode'\n\nexport const ListModeSelect: React.FC<SelectExProps<ListMode>> = (props) => {\n const { listMode, setListMode } = useListMode()\n\n return (\n <SelectEx<ListMode>\n value={(listMode ?? 'default') as ListMode}\n onChange={(event) => {\n setListMode?.(event.target.value as ListMode)\n }}\n {...props}\n >\n <MenuItem key=\"default\" value=\"default\">\n Default\n </MenuItem>\n <MenuItem key=\"table\" value=\"table\">\n Table\n </MenuItem>\n <MenuItem key=\"grid\" value=\"grid\">\n Grid\n </MenuItem>\n </SelectEx>\n )\n}\n\nexport const ListModeSelectFormControl: React.FC<SelectExProps<ListMode>> = (props) => {\n return (\n <EmbedFormControl formId={listModeSelectId} formLabel={listModeSelectLabel}>\n <ListModeSelect size=\"small\" label={listModeSelectLabel} labelId={listModeSelectId} {...props} />\n </EmbedFormControl>\n )\n}\n","import { MenuItem } from '@mui/material'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\nimport React from 'react'\n\nimport { useEmbedPluginState } from '../../contexts/index.ts'\nimport { EmbedFormControl } from './EmbedFormControl.tsx'\n\nconst renderSelectId = 'render-select-id'\nconst renderSelectLabel = 'Renderer'\n\nexport const EmbedRenderSelect: React.FC<SelectExProps<string>> = (props) => {\n const { activePlugin, setActivePlugin, plugins } = useEmbedPluginState()\n return (\n <EmbedFormControl formId={renderSelectId} formLabel={renderSelectLabel}>\n <SelectEx size=\"small\" value={activePlugin?.name} {...props}>\n {plugins?.map(plugin => (\n <MenuItem value={plugin.name} key={plugin.name} onClick={() => setActivePlugin?.(plugin)}>\n {plugin.name}\n </MenuItem>\n ))}\n </SelectEx>\n </EmbedFormControl>\n )\n}\n","import { useTheme } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport { useRefreshPayload, useResolvePayload } from '../../contexts/index.ts'\nimport { EmbedPluginProps } from '../../types/index.ts'\nimport { EmbedPluginInner } from '../EmbedPlugin.tsx'\nimport { BusyCardProps, EmbedPluginCard } from './card/index.ts'\nimport { EmbedCardApiErrorRenderer } from './error-handling/index.ts'\n\nexport interface EmbedPluginCardProps extends WithChildren, EmbedPluginProps, BusyCardProps {}\n\nexport const ApiEmbedPluginCard: React.FC<EmbedPluginCardProps> = ({ children, ...props }) => {\n const {\n validateSchema,\n plugins = [],\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n ...busyCardProps\n } = props\n\n return (\n <EmbedPluginInner\n {...{\n embedPluginConfig,\n hideElementsConfig,\n huriPayload,\n onRefresh,\n plugins,\n refreshTitle,\n timestampLabel,\n validateSchema,\n }}\n >\n <EmbedPluginCardInner {...busyCardProps} />\n {children}\n </EmbedPluginInner>\n )\n}\n\nexport const EmbedPluginCardInner: React.FC<BusyCardProps> = (props) => {\n const { payload, huriError } = useResolvePayload()\n const { refreshPayload } = useRefreshPayload()\n const theme = useTheme()\n\n return (\n <EmbedCardApiErrorRenderer xyoError={huriError}>\n <EmbedPluginCard\n elevation={3}\n variant=\"elevation\"\n busy={Boolean(!refreshPayload && payload)}\n busyVariantProps={{ style: { alignItems: 'start', paddingTop: theme.spacing(2), zIndex: 2 } }}\n sx={{ position: 'relative' }}\n {...props}\n />\n </EmbedCardApiErrorRenderer>\n )\n}\n\n/** @deprecated - use EmbedPluginCard and use CardProps instead of FlexBoxProps */\n\nexport { EmbedPluginCard as EmbedPlugin } from './card/index.ts'\n","import { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { ErrorBoundary, ListModeProvider } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport { EmbedPluginProvider, RefreshPayloadProvider, ResolvePayloadProvider, ValidatePayloadProvider } from '../contexts/index.ts'\nimport { EmbedPluginProps } from '../types/index.ts'\nimport { EmbedResolver } from './EmbedResolver.tsx'\nimport { ValidatePayloadAlert, ValidatePluginsAlert } from './validation-alerts/index.ts'\n\nexport const EmbedPluginInner: React.FC<WithChildren<EmbedPluginProps>> = ({\n validateSchema,\n plugins,\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n children,\n}) => {\n return (\n <ErrorBoundary>\n <EmbedPluginProvider\n refreshTitle={refreshTitle}\n timestampLabel={timestampLabel}\n hideElementsConfig={hideElementsConfig}\n plugins={plugins}\n embedPluginConfig={embedPluginConfig}\n >\n <WithResolvers onRefresh={onRefresh} huriPayload={huriPayload}>\n <WithValidators validateSchema={validateSchema}>\n <ListModeProvider defaultListMode={embedPluginConfig?.listMode}>{children}</ListModeProvider>\n </WithValidators>\n </WithResolvers>\n </EmbedPluginProvider>\n </ErrorBoundary>\n )\n}\n\ninterface WithResolversProps extends Pick<EmbedPluginProps, 'onRefresh' | 'huriPayload'>, FlexBoxProps {}\n\nconst WithResolvers: React.FC<WithChildren<WithResolversProps>> = ({ children, onRefresh, huriPayload }) => {\n return (\n <RefreshPayloadProvider onRefresh={onRefresh}>\n <ResolvePayloadProvider huriPayload={huriPayload}>\n <EmbedResolver>{children}</EmbedResolver>\n </ResolvePayloadProvider>\n </RefreshPayloadProvider>\n )\n}\n\nconst WithValidators: React.FC<WithChildren<{ validateSchema?: boolean }>> = ({ children, validateSchema }) => {\n return (\n <ValidatePayloadProvider enabled={validateSchema}>\n <ValidatePluginsAlert>\n <ValidatePayloadAlert>{children}</ValidatePayloadAlert>\n </ValidatePluginsAlert>\n </ValidatePayloadProvider>\n )\n}\n","import { WithChildren } from '@xylabs/react-shared'\nimport { LoadResult } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport { useResolvePayload } from '../contexts/index.ts'\n\nexport const EmbedResolver: React.FC<WithChildren> = ({ children }) => {\n const { payload, notFound, huriError } = useResolvePayload()\n\n return (\n <LoadResult searchResult={payload} notFound={!!notFound} error={!!huriError}>\n {children}\n </LoadResult>\n )\n}\n","import { Alert, AlertProps } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport { useValidatePayload } from '../../contexts/index.ts'\n\nexport const ValidatePayloadAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const { validPayload, enabled, schema } = useValidatePayload()\n\n if (enabled && validPayload === false) {\n return (\n <Alert severity=\"error\" title=\"Invalid Payload!\" {...props}>\n Payload schema claimed to be\n {' '}\n {schema}\n {' '}\n but failed to validate.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import { Alert, AlertProps, AlertTitle } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../contexts/index.ts'\n\nexport const ValidatePluginsAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const { payload } = useResolvePayload()\n const { plugins } = useEmbedPluginState()\n\n if (payload && plugins?.length === 0) {\n return (\n <Alert severity=\"warning\" {...props}>\n <AlertTitle>Missing plugins!</AlertTitle>\n Payload found but no plugins were present.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import { CardProps } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { ModuleError } from '@xyo-network/payload-model'\nimport { ErrorAlert, ErrorRender } from '@xyo-network/react-error'\nimport React from 'react'\n\nimport { EmbedErrorCard } from './EmbedErrorCard.tsx'\n\ninterface EmbedCardApiErrorRendererProps extends CardProps {\n xyoError?: ModuleError\n}\n\nexport const EmbedCardApiErrorRenderer: React.FC<WithChildren<EmbedCardApiErrorRendererProps>> = ({ xyoError, children, ...props }) => {\n return (\n <ErrorRender error={xyoError} noReAuth noErrorDisplay customError={<CustomApiErrorCard xyoError={xyoError} {...props} />}>\n {children}\n </ErrorRender>\n )\n}\n\nconst CustomApiErrorCard: React.FC<EmbedCardApiErrorRendererProps> = ({ xyoError, ...props }) => {\n return (\n <EmbedErrorCard {...props}>\n <ErrorAlert error={xyoError} />\n </EmbedErrorCard>\n )\n}\n","import { Alert, AlertProps, AlertTitle, Card, CardContent, CardProps, Typography } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\ninterface EmbedErrorCardBaseProps {\n alertProps?: AlertProps\n error?: Error\n hideErrorDetails?: boolean\n scope?: string\n}\n\ninterface EmbedErrorCardProps extends EmbedErrorCardBaseProps, CardProps {}\n\nexport const EmbedErrorCard: React.FC<WithChildren<EmbedErrorCardProps>> = (props) => {\n const { alertProps, error, scope, hideErrorDetails = true, children, ...cardProps } = props\n const errorProps = { alertProps, error, hideErrorDetails, scope }\n return (\n <Card {...cardProps}>\n <CardContent>{children ?? <DefaultErrorAlert {...errorProps} />}</CardContent>\n </Card>\n )\n}\n\nconst DefaultErrorAlert: React.FC<EmbedErrorCardBaseProps> = ({ alertProps, scope, hideErrorDetails, error }) => {\n return (\n <Alert severity=\"error\" {...alertProps}>\n <AlertTitle>Whoops! Something went wrong</AlertTitle>\n {scope\n ? (\n <Typography variant=\"caption\">\n Scope:\n {scope}\n </Typography>\n )\n : null}\n {!hideErrorDetails && error\n ? (\n <>\n <Typography variant=\"caption\">Error: </Typography>\n <Typography variant=\"caption\">{error?.message}</Typography>\n </>\n )\n : (\n <Typography variant=\"caption\" fontSize=\"small\">\n Error Loading Plugin\n </Typography>\n )}\n </Alert>\n )\n}\n"],"mappings":"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","names":["Card","useBusyTiming","BusyCircularProgress","BusyLinearProgress","React","BusyCard","busy","busyMinimum","busyVariant","busyVariantProps","children","props","internalBusy","useBusyTiming","Card","BusyCircularProgress","BusyLinearProgress","Refresh","RefreshIcon","Avatar","CardHeader","Chip","FlexRow","React","createContextEx","EmbedPluginContext","React","useEffect","useState","EmbedPluginProvider","children","refreshTitle","timestampLabel","hideElementsConfig","plugins","embedPluginConfig","activePlugin","setActivePlugin","useState","undefined","useEffect","React","EmbedPluginContext","Provider","value","provided","useContextEx","useEmbedPluginState","useContextEx","EmbedPluginContext","React","useState","createContextEx","RefreshPayloadContext","RefreshPayloadProvider","children","onRefresh","refreshPayload","localRefreshPayload","setRefreshPayload","useState","React","RefreshPayloadContext","Provider","value","provided","useContextEx","useRefreshPayload","useContextEx","RefreshPayloadContext","createContextEx","ResolvePayloadContext","delay","useAsyncEffect","Huri","ModuleErrorSchema","React","useEffect","useState","ResolvePayloadProvider","children","huriPayload","payload","setPayload","useState","huri","setHuri","refreshPayload","setRefreshPayload","onRefresh","useRefreshPayload","useEffect","undefined","notFound","setNotFound","huriError","setHuriError","useAsyncEffect","mounted","huriInstance","Huri","result","fetch","delay","e","error","message","schema","ModuleErrorSchema","sources","refreshHuri","React","ResolvePayloadContext","Provider","value","provided","useContextEx","useResolvePayload","useContextEx","ResolvePayloadContext","Chip","useAsyncEffect","SchemaCache","React","useState","createContextEx","ValidatePayloadContext","ValidatePayloadProvider","children","enabled","payload","useResolvePayload","initialized","setInitialized","useState","valid","setValid","useAsyncEffect","SchemaCache","instance","get","schema","possibleKnownSchema","validators","validator","React","ValidatePayloadContext","Provider","value","provided","validPayload","Chip","label","useContextEx","useValidatePayload","useContextEx","ValidatePayloadContext","MoreVert","MoreVertIcon","IconButton","Menu","React","useState","OpenInNew","OpenInNewIcon","ListItemIcon","ListItemText","MenuItem","React","JsonMenuItem","props","huri","useResolvePayload","React","MenuItem","title","onClick","window","open","ListItemText","sx","mr","ListItemIcon","justifyContent","OpenInNewIcon","fontSize","EmbedMenu","props","anchorEl","setAnchorEl","useState","open","Boolean","handleClick","event","currentTarget","handleClose","React","IconButton","onClick","MoreVertIcon","Menu","onClose","PaperProps","variant","MenuListProps","dense","JsonMenuItem","EmbedCardHeader","refreshHuri","huri","useResolvePayload","activePlugin","timestampLabel","hideElementsConfig","useEmbedPluginState","hideAvatar","hideTitle","hideRefreshButton","hideTimestamp","hideCardActions","timestamp","Date","now","React","CardHeader","sx","flexWrap","rowGap","avatar","Avatar","bgcolor","theme","palette","primary","main","aria-label","name","charAt","action","FlexRow","columnGap","Chip","RefreshIcon","clickable","onClick","label","toLocaleString","undefined","EmbedMenu","title","CardContent","FlexGrowRow","useListMode","React","FormControl","InputLabel","React","EmbedFormControl","formId","formLabel","children","props","React","FormControl","InputLabel","id","MenuItem","SelectEx","useListMode","React","listModeSelectId","listModeSelectLabel","ListModeSelect","props","listMode","setListMode","useListMode","React","SelectEx","value","onChange","event","target","MenuItem","key","ListModeSelectFormControl","EmbedFormControl","formId","formLabel","size","label","labelId","MenuItem","SelectEx","React","renderSelectId","renderSelectLabel","EmbedRenderSelect","props","activePlugin","setActivePlugin","plugins","useEmbedPluginState","React","EmbedFormControl","formId","formLabel","SelectEx","size","value","name","map","plugin","MenuItem","key","onClick","EmbedPluginCard","props","payload","useResolvePayload","activePlugin","ActivePlugin","plugins","hideElementsConfig","useEmbedPluginState","listMode","useListMode","supportsListMode","components","box","listModes","length","React","BusyCard","hideCardHeader","EmbedCardHeader","FlexGrowRow","columnGap","rowGap","flexWrap","pb","EmbedRenderSelect","ListModeSelectFormControl","CardContent","sx","height","detailsBox","useTheme","React","ErrorBoundary","ListModeProvider","React","LoadResult","React","EmbedResolver","children","payload","notFound","huriError","useResolvePayload","React","LoadResult","searchResult","error","Alert","React","ValidatePayloadAlert","children","props","validPayload","enabled","schema","useValidatePayload","React","Alert","severity","title","Alert","AlertTitle","React","ValidatePluginsAlert","children","props","payload","useResolvePayload","plugins","useEmbedPluginState","length","React","Alert","severity","AlertTitle","EmbedPluginInner","validateSchema","plugins","huriPayload","refreshTitle","timestampLabel","hideElementsConfig","embedPluginConfig","onRefresh","children","React","ErrorBoundary","EmbedPluginProvider","WithResolvers","WithValidators","ListModeProvider","defaultListMode","listMode","RefreshPayloadProvider","ResolvePayloadProvider","EmbedResolver","ValidatePayloadProvider","enabled","ValidatePluginsAlert","ValidatePayloadAlert","ErrorAlert","ErrorRender","React","Alert","AlertTitle","Card","CardContent","Typography","React","EmbedErrorCard","props","alertProps","error","scope","hideErrorDetails","children","cardProps","errorProps","React","Card","CardContent","DefaultErrorAlert","Alert","severity","AlertTitle","Typography","variant","message","fontSize","EmbedCardApiErrorRenderer","xyoError","children","props","React","ErrorRender","error","noReAuth","noErrorDisplay","customError","CustomApiErrorCard","EmbedErrorCard","ErrorAlert","ApiEmbedPluginCard","children","props","validateSchema","plugins","huriPayload","refreshTitle","timestampLabel","hideElementsConfig","embedPluginConfig","onRefresh","busyCardProps","React","EmbedPluginInner","EmbedPluginCardInner","payload","huriError","useResolvePayload","refreshPayload","useRefreshPayload","theme","useTheme","EmbedCardApiErrorRenderer","xyoError","EmbedPluginCard","elevation","variant","busy","Boolean","busyVariantProps","style","alignItems","paddingTop","spacing","zIndex","sx","position"]}
1
+ {"version":3,"sources":["../../src/components/embed-card/card/BusyCard.tsx","../../src/components/embed-card/card/EmbedCardHeader.tsx","../../src/contexts/EmbedPluginContext/Context.ts","../../src/contexts/EmbedPluginContext/Provider.tsx","../../src/contexts/EmbedPluginContext/use.ts","../../src/contexts/RefreshPayloadContext/Provider.tsx","../../src/contexts/RefreshPayloadContext/Context.ts","../../src/contexts/RefreshPayloadContext/use.ts","../../src/contexts/ResolvePayloadContext/Context.ts","../../src/contexts/ResolvePayloadContext/Provider.tsx","../../src/contexts/ResolvePayloadContext/use.ts","../../src/contexts/ValidatePayloadContext/Provider.tsx","../../src/contexts/ValidatePayloadContext/Context.ts","../../src/contexts/ValidatePayloadContext/use.ts","../../src/components/embed-card/menu/EmbedMenu.tsx","../../src/components/embed-card/menu/JsonMenuItem.tsx","../../src/components/embed-card/card/EmbedPluginCard.tsx","../../src/components/controls/EmbedFormControl.tsx","../../src/components/controls/ListModeSelect.tsx","../../src/components/controls/RenderSelect.tsx","../../src/components/embed-card/EmbedPluginCard.tsx","../../src/components/EmbedPlugin.tsx","../../src/components/EmbedResolver.tsx","../../src/components/validation-alerts/ValidatePayload.tsx","../../src/components/validation-alerts/ValidatePlugins.tsx","../../src/components/embed-card/error-handling/EmbedCardApiErrorRenderer.tsx","../../src/components/embed-card/error-handling/EmbedErrorCard.tsx"],"sourcesContent":["import type { CardProps } from '@mui/material'\nimport { Card } from '@mui/material'\nimport { useBusyTiming } from '@xylabs/react-flexbox'\nimport type {\n BusyCircularProgressProps,\n BusyLinearProgressProps,\n BusyVariant,\n WithChildren,\n} from '@xylabs/react-shared'\nimport {\n BusyCircularProgress,\n BusyLinearProgress,\n} from '@xylabs/react-shared'\nimport React from 'react'\n\nexport interface BusyCardProps extends CardProps {\n busy?: boolean\n busyMinimum?: number\n busyVariant?: BusyVariant\n busyVariantProps?: BusyCircularProgressProps | BusyLinearProgressProps\n}\n\nexport const BusyCard: React.FC<WithChildren<BusyCardProps>> = ({\n busy,\n busyMinimum = 500,\n busyVariant = 'circular',\n busyVariantProps,\n children,\n ...props\n}) => {\n const internalBusy = useBusyTiming(busy, busyMinimum)\n return (\n <Card {...props}>\n {children}\n {busyVariant === 'circular' && internalBusy\n ? <BusyCircularProgress {...(busyVariantProps as BusyCircularProgressProps)} />\n : null}\n {busyVariant === 'linear' && internalBusy\n ? <BusyLinearProgress {...(busyVariantProps as BusyLinearProgressProps)} />\n : null}\n </Card>\n )\n}\n","import { Refresh as RefreshIcon } from '@mui/icons-material'\nimport type { CardHeaderProps, Theme } from '@mui/material'\nimport {\n Avatar, CardHeader, Chip,\n} from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts/index.ts'\nimport { EmbedMenu } from '../menu/index.ts'\n\nexport const EmbedCardHeader: React.FC<CardHeaderProps> = () => {\n const { refreshHuri, huri } = useResolvePayload()\n const {\n activePlugin, timestampLabel, hideElementsConfig,\n } = useEmbedPluginState()\n const {\n hideAvatar, hideTitle, hideRefreshButton, hideTimestamp, hideCardActions,\n } = hideElementsConfig ?? {}\n // this is temporary so that we can add the ability to get a timestamp via diviner later\n const timestamp = Date.now()\n return (\n <CardHeader\n sx={{ flexWrap: 'wrap', rowGap: 1 }}\n avatar={\n hideAvatar\n ? <></>\n : (\n <Avatar sx={{ bgcolor: (theme: Theme) => theme.palette.primary.main }} aria-label={activePlugin?.name}>\n {activePlugin?.name?.charAt(0)}\n </Avatar>\n )\n }\n action={(\n <FlexRow flexWrap=\"wrap\" columnGap={0.5}>\n {timestamp\n ? hideTimestamp && hideRefreshButton\n ? ''\n : (\n <Chip\n avatar={hideRefreshButton ? <></> : <RefreshIcon />}\n clickable={hideRefreshButton ? false : true}\n onClick={refreshHuri}\n label={hideTimestamp ? '' : `${timestampLabel} ${new Date(timestamp).toLocaleString()}`}\n />\n )\n\n : null}\n {/* Huri case is valid as long as the only menu item is JSON */}\n {hideCardActions || huri === undefined ? null : <EmbedMenu />}\n </FlexRow>\n )}\n title={hideTitle ? '' : activePlugin?.name}\n />\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport type { EmbedPluginState } from './State.ts'\n\nexport const EmbedPluginContext = createContextEx<EmbedPluginState>()\n","import type { WithChildren } from '@xylabs/react-shared'\nimport type { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport React, { useEffect, useState } from 'react'\n\nimport { EmbedPluginContext } from './Context.ts'\nimport type { EmbedPluginBase } from './State.ts'\n\nexport type EmbedPluginProviderProps = EmbedPluginBase\n\n/** Expose passed embed plugin props via context */\nexport const EmbedPluginProvider: React.FC<WithChildren<EmbedPluginProviderProps>> = ({\n children,\n refreshTitle,\n timestampLabel,\n hideElementsConfig,\n plugins,\n embedPluginConfig,\n}) => {\n const [activePlugin, setActivePlugin] = useState<PayloadRenderPlugin | undefined>(plugins ? plugins[0] : undefined)\n\n useEffect(() => {\n setActivePlugin(plugins ? plugins[0] : undefined)\n }, [plugins])\n\n return (\n <EmbedPluginContext.Provider\n // eslint-disable-next-line @eslint-react/no-unstable-context-value\n value={{\n activePlugin,\n embedPluginConfig,\n hideElementsConfig,\n provided: true,\n refreshTitle,\n setActivePlugin,\n timestampLabel,\n }}\n >\n {children}\n </EmbedPluginContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { EmbedPluginContext } from './Context.ts'\n\nexport const useEmbedPluginState = () => useContextEx(EmbedPluginContext, 'EmbedPlugin', true)\n","import type { WithChildren } from '@xylabs/react-shared'\nimport React, { useState } from 'react'\n\nimport { RefreshPayloadContext } from './Context.ts'\n\nexport interface RefreshPayloadProps {\n onRefresh?: () => void\n refreshPayload?: boolean\n}\n\nexport const RefreshPayloadProvider: React.FC<WithChildren<RefreshPayloadProps>> = ({\n children, onRefresh, refreshPayload,\n}) => {\n const [localRefreshPayload, setRefreshPayload] = useState(refreshPayload)\n\n return (\n // eslint-disable-next-line @eslint-react/no-unstable-context-value\n <RefreshPayloadContext.Provider value={{\n onRefresh, provided: true, refreshPayload: localRefreshPayload, setRefreshPayload,\n }}\n >\n {children}\n </RefreshPayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport type { RefreshPayloadState } from './State.ts'\n\nexport const RefreshPayloadContext = createContextEx<RefreshPayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { RefreshPayloadContext } from './Context.ts'\n\nexport const useRefreshPayload = () => useContextEx(RefreshPayloadContext, 'RefreshPayload', true)\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport type { ResolvePayloadState } from './State.ts'\n\nexport const ResolvePayloadContext = createContextEx<ResolvePayloadState>()\n","import { delay } from '@xylabs/delay'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport { Huri } from '@xyo-network/huri'\nimport type { ModuleError, Payload } from '@xyo-network/payload-model'\nimport { ModuleErrorSchema } from '@xyo-network/payload-model'\nimport React, { useEffect, useState } from 'react'\n\nimport { useRefreshPayload } from '../RefreshPayloadContext/index.ts'\nimport { ResolvePayloadContext } from './Context.ts'\nimport type { ResolvePayloadState } from './State.ts'\n\nexport type ResolvePayloadProviderProps = Omit<ResolvePayloadState, 'provided'>\n\nexport const ResolvePayloadProvider: React.FC<WithChildren<ResolvePayloadProviderProps>> = ({ children, huriPayload }) => {\n const [payload, setPayload] = useState<Payload>()\n const [huri, setHuri] = useState<string>()\n const {\n refreshPayload, setRefreshPayload, onRefresh,\n } = useRefreshPayload()\n\n useEffect(() => {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n typeof huriPayload === 'string' ? setHuri(huriPayload) : undefined\n if (typeof huriPayload === 'object') {\n setPayload(huriPayload)\n setRefreshPayload?.(true)\n }\n }, [huriPayload, setRefreshPayload])\n\n const [notFound, setNotFound] = useState<boolean>()\n const [huriError, setHuriError] = useState<ModuleError>()\n\n useAsyncEffect(\n async (mounted) => {\n if (huri && !refreshPayload) {\n try {\n const huriInstance = new Huri(huri)\n const result = await huriInstance.fetch()\n // ensure the busy state can stay for a moment to avoid flashing too quickly\n await delay(500)\n\n if (mounted()) {\n setNotFound(result === null)\n setPayload(result)\n setRefreshPayload?.(true)\n }\n } catch (e) {\n const error = e as Error\n setHuriError({\n message: error.message, schema: ModuleErrorSchema, sources: [],\n })\n }\n }\n },\n [huri, payload, refreshPayload, setRefreshPayload],\n )\n\n const refreshHuri = () => {\n onRefresh?.()\n if (huri) {\n setRefreshPayload?.(false)\n }\n }\n\n return (\n // eslint-disable-next-line @eslint-react/no-unstable-context-value\n <ResolvePayloadContext.Provider value={{\n huri, huriError, notFound, payload, provided: true, refreshHuri, setPayload,\n }}\n >\n {children}\n </ResolvePayloadContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ResolvePayloadContext } from './Context.ts'\n\nexport const useResolvePayload = () => useContextEx(ResolvePayloadContext, 'ResolvePayload', true)\n","import { Chip } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport type { SchemaNameToValidatorMap } from '@xyo-network/schema-cache'\nimport { SchemaCache } from '@xyo-network/schema-cache'\nimport React, { useState } from 'react'\n\nimport { useResolvePayload } from '../ResolvePayloadContext/index.ts'\nimport { ValidatePayloadContext } from './Context.ts'\n\nexport interface ValidatePayloadProviderProps {\n // Opt-in flag to validate payloads for the plugin(s)\n enabled?: boolean\n}\n\nexport const ValidatePayloadProvider: React.FC<WithChildren<ValidatePayloadProviderProps>> = ({ children, enabled = false }) => {\n const { payload } = useResolvePayload()\n const [initialized, setInitialized] = useState(false)\n const [valid, setValid] = useState<boolean>()\n\n useAsyncEffect(\n async () => {\n if (payload && enabled) {\n await SchemaCache.instance.get(payload.schema)\n\n const possibleKnownSchema = payload.schema as keyof SchemaNameToValidatorMap\n\n if (SchemaCache.instance.validators[possibleKnownSchema]) {\n const validator = SchemaCache.instance.validators[possibleKnownSchema]\n setValid(validator?.(payload))\n }\n setInitialized(true)\n }\n },\n [payload, enabled],\n )\n\n return (\n // eslint-disable-next-line @eslint-react/no-unstable-context-value\n <ValidatePayloadContext.Provider value={{\n enabled, provided: true, schema: payload?.schema, validPayload: valid,\n }}\n >\n {enabled\n ? <>{initialized ? children : <Chip label=\"Validating Payload...\" />}</>\n : children}\n </ValidatePayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport type { ValidatePayloadState } from './State.ts'\n\nexport const ValidatePayloadContext = createContextEx<ValidatePayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ValidatePayloadContext } from './Context.ts'\n\nexport const useValidatePayload = () => useContextEx(ValidatePayloadContext, 'ValidateSchema', true)\n","import { MoreVert as MoreVertIcon } from '@mui/icons-material'\nimport type { IconButtonProps } from '@mui/material'\nimport { IconButton, Menu } from '@mui/material'\nimport React, { useState } from 'react'\n\nimport { JsonMenuItem } from './JsonMenuItem.tsx'\n\nexport const EmbedMenu: React.FC<IconButtonProps> = (props) => {\n // TODO - link to explore website\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null)\n const open = Boolean(anchorEl)\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n setAnchorEl(event.currentTarget)\n }\n const handleClose = () => {\n setAnchorEl(null)\n }\n\n return (\n <>\n <IconButton onClick={handleClick} {...props}>\n <MoreVertIcon />\n </IconButton>\n <Menu anchorEl={anchorEl} open={open} onClose={handleClose} PaperProps={{ variant: 'elevation' }} MenuListProps={{ dense: true }}>\n <JsonMenuItem />\n </Menu>\n </>\n )\n}\n","import { OpenInNew as OpenInNewIcon } from '@mui/icons-material'\nimport type { MenuItemProps } from '@mui/material'\nimport {\n ListItemIcon, ListItemText, MenuItem,\n} from '@mui/material'\nimport React from 'react'\n\nimport { useResolvePayload } from '../../../contexts/index.ts'\n\nexport const JsonMenuItem: React.FC<MenuItemProps> = (props) => {\n const { huri } = useResolvePayload()\n\n return (\n <>\n {huri\n ? (\n <MenuItem title=\"Source Payload JSON\" onClick={() => window.open(huri, '_blank')} {...props}>\n <ListItemText sx={{ mr: 1 }}>JSON</ListItemText>\n <ListItemIcon sx={{ justifyContent: 'end' }}>\n <OpenInNewIcon fontSize=\"small\" />\n </ListItemIcon>\n </MenuItem>\n )\n : null}\n </>\n )\n}\n","import { CardContent } from '@mui/material'\nimport { FlexGrowRow } from '@xylabs/react-flexbox'\nimport { useListMode } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts/index.ts'\nimport { EmbedRenderSelect, ListModeSelectFormControl } from '../../controls/index.ts'\nimport type { BusyCardProps } from './BusyCard.tsx'\nimport { BusyCard } from './BusyCard.tsx'\nimport { EmbedCardHeader } from './EmbedCardHeader.tsx'\n\nexport const EmbedPluginCard: React.FC<BusyCardProps> = ({ ...props }) => {\n const { payload } = useResolvePayload()\n const {\n activePlugin: ActivePlugin, plugins, hideElementsConfig,\n } = useEmbedPluginState()\n const { listMode } = useListMode()\n const supportsListMode = ActivePlugin?.components?.box?.listModes?.length ?? 0 > 1\n\n return (\n <BusyCard {...props}>\n {hideElementsConfig?.hideCardHeader ? null : <EmbedCardHeader />}\n {/* Only show the row if the children are present */}\n {(plugins && plugins.length > 0) || supportsListMode\n ? (\n <FlexGrowRow columnGap={2} rowGap={2} flexWrap=\"wrap\" pb={1}>\n {plugins && plugins.length > 1\n ? <EmbedRenderSelect />\n : null}\n {supportsListMode\n ? <ListModeSelectFormControl />\n : null}\n </FlexGrowRow>\n )\n : null}\n <CardContent sx={{ height: '100%' }}>\n {ActivePlugin\n ? <ActivePlugin.components.box.detailsBox payload={payload} {...(supportsListMode && { listMode })} />\n : null}\n </CardContent>\n </BusyCard>\n )\n}\n","import type { FormControlProps } from '@mui/material'\nimport { FormControl, InputLabel } from '@mui/material'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\ninterface EmbedFormControlProps extends FormControlProps {\n formId?: string\n formLabel?: string\n}\n\nexport const EmbedFormControl: React.FC<WithChildren<EmbedFormControlProps>> = ({\n formId, formLabel, children, ...props\n}) => {\n return (\n <FormControl {...props}>\n <InputLabel id={formId}>{formLabel}</InputLabel>\n {children}\n </FormControl>\n )\n}\n","import { MenuItem } from '@mui/material'\nimport type { SelectExProps } from '@xylabs/react-select'\nimport { SelectEx } from '@xylabs/react-select'\nimport type { ListMode } from '@xyo-network/react-shared'\nimport { useListMode } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport { EmbedFormControl } from './EmbedFormControl.tsx'\n\nconst listModeSelectId = 'listmode-select-id'\nconst listModeSelectLabel = 'List Mode'\n\nexport const ListModeSelect: React.FC<SelectExProps<ListMode>> = (props) => {\n const { listMode, setListMode } = useListMode()\n\n return (\n <SelectEx<ListMode>\n value={(listMode ?? 'default') as ListMode}\n onChange={(event) => {\n setListMode?.(event.target.value as ListMode)\n }}\n {...props}\n >\n <MenuItem key=\"default\" value=\"default\">\n Default\n </MenuItem>\n <MenuItem key=\"table\" value=\"table\">\n Table\n </MenuItem>\n <MenuItem key=\"grid\" value=\"grid\">\n Grid\n </MenuItem>\n </SelectEx>\n )\n}\n\nexport const ListModeSelectFormControl: React.FC<SelectExProps<ListMode>> = (props) => {\n return (\n <EmbedFormControl formId={listModeSelectId} formLabel={listModeSelectLabel}>\n <ListModeSelect size=\"small\" label={listModeSelectLabel} labelId={listModeSelectId} {...props} />\n </EmbedFormControl>\n )\n}\n","import { MenuItem } from '@mui/material'\nimport type { SelectExProps } from '@xylabs/react-select'\nimport { SelectEx } from '@xylabs/react-select'\nimport React from 'react'\n\nimport { useEmbedPluginState } from '../../contexts/index.ts'\nimport { EmbedFormControl } from './EmbedFormControl.tsx'\n\nconst renderSelectId = 'render-select-id'\nconst renderSelectLabel = 'Renderer'\n\nexport const EmbedRenderSelect: React.FC<SelectExProps<string>> = (props) => {\n const {\n activePlugin, setActivePlugin, plugins,\n } = useEmbedPluginState()\n return (\n <EmbedFormControl formId={renderSelectId} formLabel={renderSelectLabel}>\n <SelectEx size=\"small\" value={activePlugin?.name} {...props}>\n {plugins?.map(plugin => (\n <MenuItem value={plugin.name} key={plugin.name} onClick={() => setActivePlugin?.(plugin)}>\n {plugin.name}\n </MenuItem>\n ))}\n </SelectEx>\n </EmbedFormControl>\n )\n}\n","import { useTheme } from '@mui/material'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport { useRefreshPayload, useResolvePayload } from '../../contexts/index.ts'\nimport type { EmbedPluginProps } from '../../types/index.ts'\nimport { EmbedPluginInner } from '../EmbedPlugin.tsx'\nimport type { BusyCardProps } from './card/index.ts'\nimport { EmbedPluginCard } from './card/index.ts'\nimport { EmbedCardApiErrorRenderer } from './error-handling/index.ts'\n\nexport interface EmbedPluginCardProps extends WithChildren, EmbedPluginProps, BusyCardProps {}\n\nexport const ApiEmbedPluginCard: React.FC<EmbedPluginCardProps> = ({ children, ...props }) => {\n const {\n validateSchema,\n plugins = [],\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n ...busyCardProps\n } = props\n\n return (\n <EmbedPluginInner\n {...{\n embedPluginConfig,\n hideElementsConfig,\n huriPayload,\n onRefresh,\n plugins,\n refreshTitle,\n timestampLabel,\n validateSchema,\n }}\n >\n <EmbedPluginCardInner {...busyCardProps} />\n {children}\n </EmbedPluginInner>\n )\n}\n\nexport const EmbedPluginCardInner: React.FC<BusyCardProps> = (props) => {\n const { payload, huriError } = useResolvePayload()\n const { refreshPayload } = useRefreshPayload()\n const theme = useTheme()\n\n return (\n <EmbedCardApiErrorRenderer xyoError={huriError}>\n <EmbedPluginCard\n elevation={3}\n variant=\"elevation\"\n busy={Boolean(!refreshPayload && payload)}\n busyVariantProps={{\n style: {\n alignItems: 'start', paddingTop: theme.spacing(2), zIndex: 2,\n },\n }}\n sx={{ position: 'relative' }}\n {...props}\n />\n </EmbedCardApiErrorRenderer>\n )\n}\n\n/** @deprecated - use EmbedPluginCard and use CardProps instead of FlexBoxProps */\n\nexport { EmbedPluginCard as EmbedPlugin } from './card/index.ts'\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport { ErrorBoundary, ListModeProvider } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport {\n EmbedPluginProvider, RefreshPayloadProvider, ResolvePayloadProvider, ValidatePayloadProvider,\n} from '../contexts/index.ts'\nimport type { EmbedPluginProps } from '../types/index.ts'\nimport { EmbedResolver } from './EmbedResolver.tsx'\nimport { ValidatePayloadAlert, ValidatePluginsAlert } from './validation-alerts/index.ts'\n\nexport const EmbedPluginInner: React.FC<WithChildren<EmbedPluginProps>> = ({\n validateSchema,\n plugins,\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n children,\n}) => {\n return (\n <ErrorBoundary>\n <EmbedPluginProvider\n refreshTitle={refreshTitle}\n timestampLabel={timestampLabel}\n hideElementsConfig={hideElementsConfig}\n plugins={plugins}\n embedPluginConfig={embedPluginConfig}\n >\n <WithResolvers onRefresh={onRefresh} huriPayload={huriPayload}>\n <WithValidators validateSchema={validateSchema}>\n <ListModeProvider defaultListMode={embedPluginConfig?.listMode}>{children}</ListModeProvider>\n </WithValidators>\n </WithResolvers>\n </EmbedPluginProvider>\n </ErrorBoundary>\n )\n}\n\ninterface WithResolversProps extends Pick<EmbedPluginProps, 'onRefresh' | 'huriPayload'>, FlexBoxProps {}\n\nconst WithResolvers: React.FC<WithChildren<WithResolversProps>> = ({\n children, onRefresh, huriPayload,\n}) => {\n return (\n <RefreshPayloadProvider onRefresh={onRefresh}>\n <ResolvePayloadProvider huriPayload={huriPayload}>\n <EmbedResolver>{children}</EmbedResolver>\n </ResolvePayloadProvider>\n </RefreshPayloadProvider>\n )\n}\n\nconst WithValidators: React.FC<WithChildren<{ validateSchema?: boolean }>> = ({ children, validateSchema }) => {\n return (\n <ValidatePayloadProvider enabled={validateSchema}>\n <ValidatePluginsAlert>\n <ValidatePayloadAlert>{children}</ValidatePayloadAlert>\n </ValidatePluginsAlert>\n </ValidatePayloadProvider>\n )\n}\n","import type { WithChildren } from '@xylabs/react-shared'\nimport { LoadResult } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport { useResolvePayload } from '../contexts/index.ts'\n\nexport const EmbedResolver: React.FC<WithChildren> = ({ children }) => {\n const {\n payload, notFound, huriError,\n } = useResolvePayload()\n\n return (\n <LoadResult searchResult={payload} notFound={!!notFound} error={!!huriError}>\n {children}\n </LoadResult>\n )\n}\n","import type { AlertProps } from '@mui/material'\nimport { Alert } from '@mui/material'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport { useValidatePayload } from '../../contexts/index.ts'\n\nexport const ValidatePayloadAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const {\n validPayload, enabled, schema,\n } = useValidatePayload()\n\n if (enabled && validPayload === false) {\n return (\n <Alert severity=\"error\" title=\"Invalid Payload!\" {...props}>\n Payload schema claimed to be\n {' '}\n {schema}\n {' '}\n but failed to validate.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import type { AlertProps } from '@mui/material'\nimport { Alert, AlertTitle } from '@mui/material'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../contexts/index.ts'\n\nexport const ValidatePluginsAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const { payload } = useResolvePayload()\n const { plugins } = useEmbedPluginState()\n\n if (payload && plugins?.length === 0) {\n return (\n <Alert severity=\"warning\" {...props}>\n <AlertTitle>Missing plugins!</AlertTitle>\n Payload found but no plugins were present.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import type { CardProps } from '@mui/material'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport type { ModuleError } from '@xyo-network/payload-model'\nimport { ErrorAlert, ErrorRender } from '@xyo-network/react-error'\nimport React from 'react'\n\nimport { EmbedErrorCard } from './EmbedErrorCard.tsx'\n\ninterface EmbedCardApiErrorRendererProps extends CardProps {\n xyoError?: ModuleError\n}\n\nexport const EmbedCardApiErrorRenderer: React.FC<WithChildren<EmbedCardApiErrorRendererProps>> = ({\n xyoError, children, ...props\n}) => {\n return (\n <ErrorRender error={xyoError} noReAuth noErrorDisplay customError={<CustomApiErrorCard xyoError={xyoError} {...props} />}>\n {children}\n </ErrorRender>\n )\n}\n\nconst CustomApiErrorCard: React.FC<EmbedCardApiErrorRendererProps> = ({ xyoError, ...props }) => {\n return (\n <EmbedErrorCard {...props}>\n <ErrorAlert error={xyoError} />\n </EmbedErrorCard>\n )\n}\n","import type { AlertProps, CardProps } from '@mui/material'\nimport {\n Alert, AlertTitle, Card, CardContent, Typography,\n} from '@mui/material'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\ninterface EmbedErrorCardBaseProps {\n alertProps?: AlertProps\n error?: Error\n hideErrorDetails?: boolean\n scope?: string\n}\n\ninterface EmbedErrorCardProps extends EmbedErrorCardBaseProps, CardProps {}\n\nexport const EmbedErrorCard: React.FC<WithChildren<EmbedErrorCardProps>> = (props) => {\n const {\n alertProps, error, scope, hideErrorDetails = true, children, ...cardProps\n } = props\n const errorProps = {\n alertProps, error, hideErrorDetails, scope,\n }\n return (\n <Card {...cardProps}>\n <CardContent>{children ?? <DefaultErrorAlert {...errorProps} />}</CardContent>\n </Card>\n )\n}\n\nconst DefaultErrorAlert: React.FC<EmbedErrorCardBaseProps> = ({\n alertProps, scope, hideErrorDetails, error,\n}) => {\n return (\n <Alert severity=\"error\" {...alertProps}>\n <AlertTitle>Whoops! Something went wrong</AlertTitle>\n {scope\n ? (\n <Typography variant=\"caption\">\n Scope:\n {scope}\n </Typography>\n )\n : null}\n {!hideErrorDetails && error\n ? (\n <>\n <Typography variant=\"caption\">Error: </Typography>\n <Typography variant=\"caption\">{error?.message}</Typography>\n </>\n )\n : (\n <Typography variant=\"caption\" fontSize=\"small\">\n Error Loading Plugin\n </Typography>\n )}\n </Alert>\n )\n}\n"],"mappings":"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","names":["Card","useBusyTiming","BusyCircularProgress","BusyLinearProgress","React","BusyCard","busy","busyMinimum","busyVariant","busyVariantProps","children","props","internalBusy","useBusyTiming","Card","BusyCircularProgress","BusyLinearProgress","Refresh","RefreshIcon","Avatar","CardHeader","Chip","FlexRow","React","createContextEx","EmbedPluginContext","React","useEffect","useState","EmbedPluginProvider","children","refreshTitle","timestampLabel","hideElementsConfig","plugins","embedPluginConfig","activePlugin","setActivePlugin","useState","undefined","useEffect","React","EmbedPluginContext","Provider","value","provided","useContextEx","useEmbedPluginState","useContextEx","EmbedPluginContext","React","useState","createContextEx","RefreshPayloadContext","RefreshPayloadProvider","children","onRefresh","refreshPayload","localRefreshPayload","setRefreshPayload","useState","React","RefreshPayloadContext","Provider","value","provided","useContextEx","useRefreshPayload","useContextEx","RefreshPayloadContext","createContextEx","ResolvePayloadContext","delay","useAsyncEffect","Huri","ModuleErrorSchema","React","useEffect","useState","ResolvePayloadProvider","children","huriPayload","payload","setPayload","useState","huri","setHuri","refreshPayload","setRefreshPayload","onRefresh","useRefreshPayload","useEffect","undefined","notFound","setNotFound","huriError","setHuriError","useAsyncEffect","mounted","huriInstance","Huri","result","fetch","delay","e","error","message","schema","ModuleErrorSchema","sources","refreshHuri","React","ResolvePayloadContext","Provider","value","provided","useContextEx","useResolvePayload","useContextEx","ResolvePayloadContext","Chip","useAsyncEffect","SchemaCache","React","useState","createContextEx","ValidatePayloadContext","ValidatePayloadProvider","children","enabled","payload","useResolvePayload","initialized","setInitialized","useState","valid","setValid","useAsyncEffect","SchemaCache","instance","get","schema","possibleKnownSchema","validators","validator","React","ValidatePayloadContext","Provider","value","provided","validPayload","Chip","label","useContextEx","useValidatePayload","useContextEx","ValidatePayloadContext","MoreVert","MoreVertIcon","IconButton","Menu","React","useState","OpenInNew","OpenInNewIcon","ListItemIcon","ListItemText","MenuItem","React","JsonMenuItem","props","huri","useResolvePayload","React","MenuItem","title","onClick","window","open","ListItemText","sx","mr","ListItemIcon","justifyContent","OpenInNewIcon","fontSize","EmbedMenu","props","anchorEl","setAnchorEl","useState","open","Boolean","handleClick","event","currentTarget","handleClose","React","IconButton","onClick","MoreVertIcon","Menu","onClose","PaperProps","variant","MenuListProps","dense","JsonMenuItem","EmbedCardHeader","refreshHuri","huri","useResolvePayload","activePlugin","timestampLabel","hideElementsConfig","useEmbedPluginState","hideAvatar","hideTitle","hideRefreshButton","hideTimestamp","hideCardActions","timestamp","Date","now","React","CardHeader","sx","flexWrap","rowGap","avatar","Avatar","bgcolor","theme","palette","primary","main","aria-label","name","charAt","action","FlexRow","columnGap","Chip","RefreshIcon","clickable","onClick","label","toLocaleString","undefined","EmbedMenu","title","CardContent","FlexGrowRow","useListMode","React","FormControl","InputLabel","React","EmbedFormControl","formId","formLabel","children","props","React","FormControl","InputLabel","id","MenuItem","SelectEx","useListMode","React","listModeSelectId","listModeSelectLabel","ListModeSelect","props","listMode","setListMode","useListMode","React","SelectEx","value","onChange","event","target","MenuItem","key","ListModeSelectFormControl","EmbedFormControl","formId","formLabel","size","label","labelId","MenuItem","SelectEx","React","renderSelectId","renderSelectLabel","EmbedRenderSelect","props","activePlugin","setActivePlugin","plugins","useEmbedPluginState","React","EmbedFormControl","formId","formLabel","SelectEx","size","value","name","map","plugin","MenuItem","key","onClick","EmbedPluginCard","props","payload","useResolvePayload","activePlugin","ActivePlugin","plugins","hideElementsConfig","useEmbedPluginState","listMode","useListMode","supportsListMode","components","box","listModes","length","React","BusyCard","hideCardHeader","EmbedCardHeader","FlexGrowRow","columnGap","rowGap","flexWrap","pb","EmbedRenderSelect","ListModeSelectFormControl","CardContent","sx","height","detailsBox","useTheme","React","ErrorBoundary","ListModeProvider","React","LoadResult","React","EmbedResolver","children","payload","notFound","huriError","useResolvePayload","React","LoadResult","searchResult","error","Alert","React","ValidatePayloadAlert","children","props","validPayload","enabled","schema","useValidatePayload","React","Alert","severity","title","Alert","AlertTitle","React","ValidatePluginsAlert","children","props","payload","useResolvePayload","plugins","useEmbedPluginState","length","React","Alert","severity","AlertTitle","EmbedPluginInner","validateSchema","plugins","huriPayload","refreshTitle","timestampLabel","hideElementsConfig","embedPluginConfig","onRefresh","children","React","ErrorBoundary","EmbedPluginProvider","WithResolvers","WithValidators","ListModeProvider","defaultListMode","listMode","RefreshPayloadProvider","ResolvePayloadProvider","EmbedResolver","ValidatePayloadProvider","enabled","ValidatePluginsAlert","ValidatePayloadAlert","ErrorAlert","ErrorRender","React","Alert","AlertTitle","Card","CardContent","Typography","React","EmbedErrorCard","props","alertProps","error","scope","hideErrorDetails","children","cardProps","errorProps","React","Card","CardContent","DefaultErrorAlert","Alert","severity","AlertTitle","Typography","variant","message","fontSize","EmbedCardApiErrorRenderer","xyoError","children","props","React","ErrorRender","error","noReAuth","noErrorDisplay","customError","CustomApiErrorCard","EmbedErrorCard","ErrorAlert","ApiEmbedPluginCard","children","props","validateSchema","plugins","huriPayload","refreshTitle","timestampLabel","hideElementsConfig","embedPluginConfig","onRefresh","busyCardProps","React","EmbedPluginInner","EmbedPluginCardInner","payload","huriError","useResolvePayload","refreshPayload","useRefreshPayload","theme","useTheme","EmbedCardApiErrorRenderer","xyoError","EmbedPluginCard","elevation","variant","busy","Boolean","busyVariantProps","style","alignItems","paddingTop","spacing","zIndex","sx","position"]}
@@ -0,0 +1,9 @@
1
+ import type { Payload } from '@xyo-network/payload-model';
2
+ import type { EmbedPluginBase, EmbedPluginVisibilityConfig } from '../contexts/index.ts';
3
+ export interface EmbedPluginProps extends EmbedPluginBase {
4
+ hideElementsConfig?: EmbedPluginVisibilityConfig;
5
+ huriPayload?: string | Payload;
6
+ onRefresh?: () => void;
7
+ validateSchema?: boolean;
8
+ }
9
+ //# sourceMappingURL=EmbedPluginProps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbedPluginProps.d.ts","sourceRoot":"","sources":["../../../src/types/EmbedPluginProps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEzD,OAAO,KAAK,EAAE,eAAe,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAExF,MAAM,WAAW,gBAAiB,SAAQ,eAAe;IACvD,kBAAkB,CAAC,EAAE,2BAA2B,CAAA;IAChD,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAE9B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB"}
@@ -0,0 +1,2 @@
1
+ export * from './EmbedPluginProps.ts';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA"}
package/package.json CHANGED
@@ -1,80 +1,83 @@
1
1
  {
2
2
  "name": "@xyo-network/react-embed",
3
+ "version": "3.0.3",
4
+ "description": "Common React library for all XYO projects that use React",
5
+ "keywords": [
6
+ "xyo",
7
+ "utility",
8
+ "typescript",
9
+ "react"
10
+ ],
11
+ "homepage": "https://xyo.network",
12
+ "bugs": {
13
+ "url": "git+https://github.com/XYOracleNetwork/sdk-xyo-react-js/issues",
14
+ "email": "support@xyo.network"
15
+ },
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "git+https://github.com/XYOracleNetwork/sdk-xyo-react-js.git"
19
+ },
20
+ "license": "LGPL-3.0-only",
3
21
  "author": {
4
- "email": "support@xyo.network",
5
22
  "name": "XYO Development Team",
23
+ "email": "support@xyo.network",
6
24
  "url": "https://xyo.network"
7
25
  },
8
- "bugs": {
9
- "email": "support@xyo.network",
10
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/issues"
26
+ "sideEffects": false,
27
+ "type": "module",
28
+ "exports": {
29
+ ".": {
30
+ "import": {
31
+ "types": "./dist/browser/index.d.ts",
32
+ "default": "./dist/browser/index.mjs"
33
+ },
34
+ "types": "./dist/browser/index.d.ts",
35
+ "default": "./dist/browser/index.mjs"
36
+ },
37
+ "./package.json": "./package.json"
38
+ },
39
+ "module": "dist/browser/index.mjs",
40
+ "types": "dist/browser/index.d.ts",
41
+ "scripts": {
42
+ "license": "yarn license-checker --exclude \"MIT, ISC, Apache-2.0, BSD, BSD-2-Clause, CC-BY-4.0, Unlicense, CC-BY-3.0, CC0-1.0\"",
43
+ "lint-pkg": "npmPkgJsonLint ."
11
44
  },
12
45
  "dependencies": {
13
46
  "@mui/icons-material": "^5.16.7",
14
47
  "@mui/material": "^5.16.7",
15
48
  "@mui/styles": "^5.16.7",
16
- "@xylabs/delay": "^4.0.1",
17
- "@xylabs/react-async-effect": "^4.0.1",
18
- "@xylabs/react-flexbox": "^4.0.1",
19
- "@xylabs/react-select": "^4.0.1",
20
- "@xylabs/react-shared": "^4.0.1",
21
- "@xyo-network/huri": "^3.0.2",
22
- "@xyo-network/payload-model": "^3.0.2",
23
- "@xyo-network/react-error": "^3.0.1",
24
- "@xyo-network/react-payload-plugin": "^3.0.1",
25
- "@xyo-network/react-shared": "^3.0.1",
26
- "@xyo-network/schema-cache": "^3.0.2",
49
+ "@xylabs/delay": "^4.0.5",
50
+ "@xylabs/react-async-effect": "^4.0.3",
51
+ "@xylabs/react-flexbox": "^4.0.3",
52
+ "@xylabs/react-select": "^4.0.3",
53
+ "@xylabs/react-shared": "^4.0.3",
54
+ "@xyo-network/huri": "^3.0.15",
55
+ "@xyo-network/payload-model": "^3.0.15",
56
+ "@xyo-network/react-error": "^3.0.3",
57
+ "@xyo-network/react-payload-plugin": "^3.0.3",
58
+ "@xyo-network/react-shared": "^3.0.3",
59
+ "@xyo-network/schema-cache": "^3.0.15",
27
60
  "react": "^18.3.1",
28
61
  "react-dom": "^18.3.1"
29
62
  },
30
63
  "devDependencies": {
64
+ "@emotion/react": "^11.13.3",
65
+ "@emotion/styled": "^11.13.0",
31
66
  "@storybook/react": "^8.2.9",
32
- "@xylabs/ts-scripts-yarn3": "^4.0.0-rc.15",
33
- "@xylabs/tsconfig-react": "^4.0.0-rc.15",
34
- "@xyo-network/react-aggregate-price-plugin": "^3.0.1",
35
- "@xyo-network/react-crypto-market-uniswap-plugin": "^3.0.1",
36
- "react-router-dom": "^6.26.0",
67
+ "@xylabs/ts-scripts-yarn3": "^4.0.7",
68
+ "@xylabs/tsconfig-react": "^4.0.7",
69
+ "@xyo-network/react-aggregate-price-plugin": "^3.0.3",
70
+ "@xyo-network/react-crypto-market-uniswap-plugin": "^3.0.3",
71
+ "react-router-dom": "^6.26.1",
72
+ "storybook": "^8.2.9",
37
73
  "typescript": "^5.5.4"
38
74
  },
39
75
  "peerDependencies": {
40
76
  "@emotion/react": "^11",
41
77
  "@emotion/styled": "^11"
42
78
  },
43
- "description": "Common React library for all XYO projects that use React",
44
- "docs": "dist/docs.json",
45
- "exports": {
46
- ".": {
47
- "import": {
48
- "types": "./dist/browser/index.d.ts",
49
- "default": "./dist/browser/index.mjs"
50
- },
51
- "types": "./dist/browser/index.d.ts",
52
- "default": "./dist/browser/index.mjs"
53
- },
54
- "./package.json": "./package.json"
55
- },
56
- "module": "dist/browser/index.mjs",
57
- "homepage": "https://xyo.network",
58
- "keywords": [
59
- "xyo",
60
- "utility",
61
- "typescript",
62
- "react"
63
- ],
64
- "license": "LGPL-3.0-only",
65
79
  "publishConfig": {
66
80
  "access": "public"
67
81
  },
68
- "repository": {
69
- "type": "git",
70
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js.git"
71
- },
72
- "scripts": {
73
- "lint-pkg": "npmPkgJsonLint .",
74
- "license": "yarn license-checker --exclude \"MIT, ISC, Apache-2.0, BSD, BSD-2-Clause, CC-BY-4.0, Unlicense, CC-BY-3.0, CC0-1.0\""
75
- },
76
- "sideEffects": false,
77
- "types": "dist/browser/index.d.ts",
78
- "version": "3.0.1",
79
- "type": "module"
82
+ "docs": "dist/docs.json"
80
83
  }