@envive-ai/react-hooks 0.3.32 → 0.3.33

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 (170) hide show
  1. package/dist/application/commerce-api.d.cts +1 -1
  2. package/dist/application/commerce-api.d.ts +1 -1
  3. package/dist/atoms/app/index.d.cts +9 -9
  4. package/dist/atoms/app/index.d.ts +9 -9
  5. package/dist/atoms/app/variant.d.cts +8 -8
  6. package/dist/atoms/app/variant.d.ts +8 -8
  7. package/dist/atoms/chat/chatState.d.cts +20 -20
  8. package/dist/atoms/chat/chatState.d.ts +20 -20
  9. package/dist/atoms/chat/form.d.cts +2 -2
  10. package/dist/atoms/chat/form.d.ts +2 -2
  11. package/dist/atoms/chat/index.cjs +1 -1
  12. package/dist/atoms/chat/index.d.cts +3 -3
  13. package/dist/atoms/chat/index.d.ts +2 -2
  14. package/dist/atoms/chat/index.js +1 -1
  15. package/dist/atoms/chat/lastMessage.d.ts +2 -2
  16. package/dist/atoms/chat/messageQueue.d.cts +6 -6
  17. package/dist/atoms/chat/messageQueue.d.ts +6 -6
  18. package/dist/atoms/chat/performanceMetrics.d.ts +6 -6
  19. package/dist/atoms/chat/renderedWidgetRefs.d.cts +2 -2
  20. package/dist/atoms/chat/renderedWidgetRefs.d.ts +3 -3
  21. package/dist/atoms/chat/replies.d.ts +3 -3
  22. package/dist/atoms/chat/suggestions.d.cts +2 -2
  23. package/dist/atoms/chat/suggestions.d.ts +2 -2
  24. package/dist/atoms/envive/enviveConfig.d.cts +13 -13
  25. package/dist/atoms/envive/enviveConfig.d.ts +13 -13
  26. package/dist/atoms/globalSearch/globalSearch.d.cts +5 -5
  27. package/dist/atoms/globalSearch/globalSearch.d.ts +6 -6
  28. package/dist/atoms/org/customerService.d.cts +6 -6
  29. package/dist/atoms/org/customerService.d.ts +6 -6
  30. package/dist/atoms/org/graphqlConfig.d.cts +5 -5
  31. package/dist/atoms/org/graphqlConfig.d.ts +5 -5
  32. package/dist/atoms/org/index.cjs +2 -3
  33. package/dist/atoms/org/index.d.cts +2 -2
  34. package/dist/atoms/org/index.d.ts +2 -2
  35. package/dist/atoms/org/index.js +3 -3
  36. package/dist/atoms/org/newOrgConfigAtom.d.cts +2 -2
  37. package/dist/atoms/org/newOrgConfigAtom.d.ts +2 -2
  38. package/dist/atoms/org/orgAnalyticsConfig.cjs +1 -3
  39. package/dist/atoms/org/orgAnalyticsConfig.d.cts +7 -8
  40. package/dist/atoms/org/orgAnalyticsConfig.d.ts +7 -8
  41. package/dist/atoms/org/orgAnalyticsConfig.js +2 -3
  42. package/dist/atoms/search/chatSearch.cjs +1 -1
  43. package/dist/atoms/search/chatSearch.d.cts +17 -17
  44. package/dist/atoms/search/chatSearch.d.ts +17 -17
  45. package/dist/atoms/search/chatSearch.js +1 -1
  46. package/dist/atoms/search/searchAPI.cjs +1 -1
  47. package/dist/atoms/search/searchAPI.d.cts +13 -13
  48. package/dist/atoms/search/searchAPI.d.ts +13 -13
  49. package/dist/atoms/search/searchAPI.js +1 -1
  50. package/dist/atoms/widget/chatPreviewLoading.d.ts +2 -2
  51. package/dist/contexts/amplitudeContext/amplitudeContext.cjs +1 -5
  52. package/dist/contexts/amplitudeContext/amplitudeContext.js +1 -5
  53. package/dist/contexts/enviveConfigContext/enviveConfigContext.cjs +18 -23
  54. package/dist/contexts/enviveConfigContext/enviveConfigContext.d.cts +10 -12
  55. package/dist/contexts/enviveConfigContext/enviveConfigContext.d.ts +10 -12
  56. package/dist/contexts/enviveConfigContext/enviveConfigContext.js +18 -23
  57. package/dist/contexts/enviveContext/enviveContext.cjs +41 -74
  58. package/dist/contexts/enviveContext/enviveContext.d.cts +15 -32
  59. package/dist/contexts/enviveContext/enviveContext.d.ts +15 -32
  60. package/dist/contexts/enviveContext/enviveContext.js +41 -74
  61. package/dist/contexts/enviveContext/index.d.cts +2 -2
  62. package/dist/contexts/enviveContext/index.d.ts +2 -2
  63. package/dist/contexts/enviveCssContext/enviveCssContext.cjs +31 -16
  64. package/dist/contexts/enviveCssContext/enviveCssContext.js +31 -16
  65. package/dist/contexts/graphqlContext/graphqlContext.cjs +3 -212
  66. package/dist/contexts/graphqlContext/graphqlContext.d.cts +2 -10
  67. package/dist/contexts/graphqlContext/graphqlContext.d.ts +2 -10
  68. package/dist/contexts/graphqlContext/graphqlContext.js +3 -212
  69. package/dist/contexts/graphqlContext/mockV3Config.cjs +31 -16
  70. package/dist/contexts/graphqlContext/mockV3Config.js +31 -16
  71. package/dist/contexts/hardcopyContext/hardcopyContext.cjs +9 -238
  72. package/dist/contexts/hardcopyContext/hardcopyContext.d.cts +5 -17
  73. package/dist/contexts/hardcopyContext/hardcopyContext.d.ts +5 -17
  74. package/dist/contexts/hardcopyContext/hardcopyContext.js +9 -238
  75. package/dist/contexts/hardcopyContext/index.d.cts +3 -2
  76. package/dist/contexts/hardcopyContext/index.d.ts +3 -2
  77. package/dist/contexts/newOrgConfigContext/newOrgConfigContext.cjs +10 -32
  78. package/dist/contexts/newOrgConfigContext/newOrgConfigContext.d.cts +2 -2
  79. package/dist/contexts/newOrgConfigContext/newOrgConfigContext.d.ts +2 -2
  80. package/dist/contexts/newOrgConfigContext/newOrgConfigContext.js +12 -34
  81. package/dist/contexts/pageContext/mapping.d.cts +1 -1
  82. package/dist/contexts/pageContext/mapping.d.ts +1 -1
  83. package/dist/contexts/pageContext/types.d.cts +1 -1
  84. package/dist/contexts/salesAgentContext/chatAPI.cjs +2 -2
  85. package/dist/contexts/salesAgentContext/chatAPI.js +2 -2
  86. package/dist/contexts/salesAgentContext/salesAgentService.cjs +1 -1
  87. package/dist/contexts/salesAgentContext/salesAgentService.js +1 -1
  88. package/dist/contexts/searchContext/searchContext.cjs +1 -1
  89. package/dist/contexts/searchContext/searchContext.js +1 -1
  90. package/dist/contexts/systemSettingsContext/systemSettingsContext.d.cts +2 -2
  91. package/dist/contexts/types.d.cts +2 -2
  92. package/dist/contexts/types.d.ts +2 -2
  93. package/dist/contexts/typesV3.cjs +31 -16
  94. package/dist/contexts/typesV3.d.cts +62 -31
  95. package/dist/contexts/typesV3.d.ts +62 -31
  96. package/dist/contexts/typesV3.js +31 -16
  97. package/dist/contexts/userIdentityContext/userIdentityContext.cjs +1 -1
  98. package/dist/contexts/userIdentityContext/userIdentityContext.d.cts +3 -3
  99. package/dist/contexts/userIdentityContext/userIdentityContext.d.ts +3 -3
  100. package/dist/contexts/userIdentityContext/userIdentityContext.js +1 -1
  101. package/dist/hooks/ChatToggle/useChatToggle.cjs +1 -1
  102. package/dist/hooks/ChatToggle/useChatToggle.js +1 -1
  103. package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.cts +2 -2
  104. package/dist/hooks/GraphQLConfig/index.cjs +0 -1
  105. package/dist/hooks/GraphQLConfig/index.d.cts +2 -2
  106. package/dist/hooks/GraphQLConfig/index.d.ts +2 -2
  107. package/dist/hooks/GraphQLConfig/index.js +2 -2
  108. package/dist/hooks/GraphQLConfig/useGraphQLConfig.cjs +7 -66
  109. package/dist/hooks/GraphQLConfig/useGraphQLConfig.d.cts +5 -13
  110. package/dist/hooks/GraphQLConfig/useGraphQLConfig.d.ts +5 -13
  111. package/dist/hooks/GraphQLConfig/useGraphQLConfig.js +8 -66
  112. package/dist/hooks/Search/useSearch.cjs +3 -3
  113. package/dist/hooks/Search/useSearch.js +3 -3
  114. package/dist/services/amplitudeService/amplitudeService.cjs +4 -3
  115. package/dist/services/amplitudeService/amplitudeService.d.cts +1 -2
  116. package/dist/services/amplitudeService/amplitudeService.d.ts +1 -2
  117. package/dist/services/amplitudeService/amplitudeService.js +4 -3
  118. package/dist/services/enviveConfigService/enviveConfigService.cjs +25 -5
  119. package/dist/services/enviveConfigService/enviveConfigService.d.cts +24 -5
  120. package/dist/services/enviveConfigService/enviveConfigService.d.ts +24 -5
  121. package/dist/services/enviveConfigService/enviveConfigService.js +25 -6
  122. package/dist/services/enviveConfigService/fetchGraphQLConfig.cjs +181 -0
  123. package/dist/services/enviveConfigService/fetchGraphQLConfig.js +180 -0
  124. package/dist/services/enviveConfigService/index.cjs +2 -1
  125. package/dist/services/enviveConfigService/index.d.cts +2 -2
  126. package/dist/services/enviveConfigService/index.d.ts +2 -2
  127. package/dist/services/enviveConfigService/index.js +2 -2
  128. package/dist/services/hardcopyService/hardcopyService.cjs +232 -0
  129. package/dist/services/hardcopyService/hardcopyService.d.cts +39 -0
  130. package/dist/services/hardcopyService/hardcopyService.d.ts +39 -0
  131. package/dist/services/hardcopyService/hardcopyService.js +229 -0
  132. package/dist/services/hardcopyService/index.cjs +5 -0
  133. package/dist/services/hardcopyService/index.d.cts +2 -0
  134. package/dist/services/hardcopyService/index.d.ts +2 -0
  135. package/dist/services/hardcopyService/index.js +3 -0
  136. package/dist/services/userIdentityService/index.cjs +1 -0
  137. package/dist/services/userIdentityService/index.d.cts +2 -2
  138. package/dist/services/userIdentityService/index.d.ts +2 -2
  139. package/dist/services/userIdentityService/index.js +2 -2
  140. package/dist/services/userIdentityService/userIdentityService.cjs +13 -1
  141. package/dist/services/userIdentityService/userIdentityService.d.cts +12 -2
  142. package/dist/services/userIdentityService/userIdentityService.d.ts +12 -2
  143. package/dist/services/userIdentityService/userIdentityService.js +13 -2
  144. package/dist/types/enviveConfig.d.cts +1 -1
  145. package/dist/types/enviveConfig.d.ts +1 -1
  146. package/package.json +5 -1
  147. package/src/atoms/org/orgAnalyticsConfig.ts +0 -5
  148. package/src/contexts/amplitudeContext/amplitudeContext.tsx +0 -4
  149. package/src/contexts/enviveConfigContext/enviveConfigContext.tsx +37 -49
  150. package/src/contexts/enviveContext/enviveContext.tsx +72 -134
  151. package/src/contexts/enviveCssContext/enviveCssContext.tsx +32 -17
  152. package/src/contexts/graphqlContext/__tests__/graphqlContext.test.tsx +3 -36
  153. package/src/contexts/graphqlContext/graphqlContext.tsx +4 -304
  154. package/src/contexts/graphqlContext/mockV3Config.ts +30 -15
  155. package/src/contexts/hardcopyContext/hardcopyContext.tsx +12 -270
  156. package/src/contexts/newOrgConfigContext/__tests__/newOrgConfigContext.test.tsx +54 -478
  157. package/src/contexts/newOrgConfigContext/newOrgConfigContext.tsx +9 -26
  158. package/src/contexts/typesV3.ts +61 -30
  159. package/src/contexts/userIdentityContext/userIdentityContext.tsx +2 -2
  160. package/src/hooks/GraphQLConfig/useGraphQLConfig.ts +2 -62
  161. package/src/hooks/Search/__tests__/useSearch.test.tsx +2 -2
  162. package/src/services/amplitudeService/__tests__/amplitudeService.test.ts +3 -5
  163. package/src/services/amplitudeService/amplitudeService.ts +5 -3
  164. package/src/services/enviveConfigService/__tests__/fetchGraphQLConfig.test.ts +425 -0
  165. package/src/services/enviveConfigService/enviveConfigService.ts +41 -13
  166. package/src/services/enviveConfigService/fetchGraphQLConfig.ts +225 -0
  167. package/src/services/hardcopyService/__tests__/hardcopyService.test.ts +367 -0
  168. package/src/services/hardcopyService/hardcopyService.ts +271 -0
  169. package/src/services/hardcopyService/index.ts +1 -0
  170. package/src/services/userIdentityService/userIdentityService.ts +18 -0
@@ -1,254 +1,25 @@
1
1
  const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
2
2
  const require_logger = require('../../application/logging/logger.cjs');
3
- const require_urlsParser = require('../../application/utils/urlsParser.cjs');
4
- const require_snakeToCamelTransformer = require('../../application/models/utils/snakeToCamelTransformer.cjs');
5
- const require_contexts_typesV3 = require('../typesV3.cjs');
6
- const require_eventNames = require('../../services/amplitudeService/eventNames.cjs');
7
- require('../../services/amplitudeService/amplitudeService.cjs');
8
- require('../../application/utils/index.cjs');
9
- const require_atoms_app_index = require('../../atoms/app/index.cjs');
10
- const require_application_commerce_api = require('../../application/commerce-api.cjs');
11
- const require_featureFlagServiceContext = require('../featureFlagServiceContext/featureFlagServiceContext.cjs');
12
- const require_amplitudeContext = require('../amplitudeContext/amplitudeContext.cjs');
13
- require('../amplitudeContext/index.cjs');
14
3
  let react = require("react");
15
4
  let react_jsx_runtime = require("react/jsx-runtime");
16
- let jotai = require("jotai");
17
- let uuid = require("uuid");
18
5
 
19
6
  //#region src/contexts/hardcopyContext/hardcopyContext.tsx
20
7
  const logger = new require_logger.default("hardcopyContext");
21
- const convertToHardcopyResponse = (response) => {
22
- return {
23
- responseId: response.responseId,
24
- language: response.language,
25
- rawValues: response.values,
26
- values: Object.fromEntries(Object.entries(response.values).map(([key, value]) => [require_snakeToCamelTransformer.toCamelCase(key), value.length === 1 ? value[0].value : value.map((v) => v.value)]))
27
- };
28
- };
29
- const MOCK_HARDCOPY_RESPONSE = {
30
- [require_contexts_typesV3.WidgetTypeV3.PromptCarouselV3]: {
31
- responseId: (0, uuid.v4)(),
32
- language: "en",
33
- values: { promptButtonTexts: [
34
- "What are your best sellers?",
35
- "Show me summer dresses",
36
- "Do you have free shipping?",
37
- "What sizes are available?",
38
- "Can I return items?"
39
- ] }
40
- },
41
- [require_contexts_typesV3.WidgetTypeV3.TitledPromptCarouselV3]: {
42
- responseId: "mock-response-id",
43
- language: "en",
44
- values: {
45
- titleLabel: "Need some help?",
46
- promptButtonTexts: [
47
- "What are your best sellers?",
48
- "Show me summer dresses",
49
- "Do you have free shipping?",
50
- "What sizes are available?",
51
- "Can I return items?"
52
- ]
53
- }
54
- },
55
- [require_contexts_typesV3.WidgetTypeV3.SocialProofV3]: {
56
- responseId: "mock-response-id",
57
- language: "en",
58
- values: {
59
- titleLabel: "Shopping Assistant",
60
- numberOfCustomersText: "123 customers",
61
- customerQueryText: "found what they were looking for...",
62
- primaryButtonText: "Start shopping",
63
- secondaryButtonTitleText: "Popular searches",
64
- secondaryButtonTexts: [
65
- "Why should I buy from you?",
66
- "How do I return an item?",
67
- "New arrivals",
68
- "Sale items",
69
- "Popular items"
70
- ],
71
- textFieldPlaceholderText: "Ask me anything..."
72
- }
73
- },
74
- [require_contexts_typesV3.WidgetTypeV3.TypingAnimationV3]: {
75
- responseId: "mock-response-id",
76
- language: "en",
77
- values: {
78
- titleLabel: "Shopping Assistant",
79
- headlineText: "Need help finding",
80
- animatedTextSequence: [
81
- "the perfect gift for your loved ones?",
82
- "something special for the holidays?",
83
- "the ideal present for someone special?"
84
- ],
85
- hintText: "Ask me anything",
86
- promptButtonTexts: [
87
- "What are your best sellers?",
88
- "Show me summer dresses",
89
- "Do you have free shipping?",
90
- "What sizes are available?"
91
- ],
92
- textFieldAriaLabel: "Ask me anything"
93
- }
94
- },
95
- [require_contexts_typesV3.WidgetTypeV3.ChatPreviewComparisonV3]: {
96
- responseId: "mock-response-id",
97
- language: "en",
98
- values: {
99
- titleLabel: "Shopping Assistant",
100
- headlineText: "Need help comparing?",
101
- textFieldPlaceholderText: "Ask me anything..."
102
- }
103
- },
104
- [require_contexts_typesV3.WidgetTypeV3.ChatPreviewLoadingV3]: {
105
- responseId: "mock-response-id",
106
- language: "en",
107
- values: {
108
- titleLabel: "Shopping Assistant",
109
- textFieldPlaceholderText: "Ask me anything..."
110
- }
111
- },
112
- [require_contexts_typesV3.WidgetTypeV3.ChatPreviewV3]: {
113
- responseId: "mock-response-id",
114
- language: "en",
115
- values: {
116
- titleLabel: "Shopping Assistant",
117
- textFieldPlaceholderText: "Ask me anything..."
118
- }
119
- },
120
- [require_contexts_typesV3.WidgetTypeV3.PromptButtonCarouselWithImageV3]: {
121
- responseId: "mock-response-id",
122
- language: "en",
123
- values: {
124
- titleLabel: "Need some help?",
125
- promptButtonsTexts: [
126
- "Help me find a product",
127
- "What's on your mind?",
128
- "Talk to a human"
129
- ],
130
- textFieldPlaceholderText: "Ask me anything..."
131
- }
132
- },
133
- [require_contexts_typesV3.WidgetTypeV3.ProductCardV3]: {
134
- responseId: "mock-response-id",
135
- language: "en",
136
- values: {
137
- headline: "Discover Your Perfect Style",
138
- animatedText: [
139
- "the perfect outfit for any occasion",
140
- "trending fashion that fits your lifestyle",
141
- "quality pieces that last"
142
- ],
143
- prompts: [
144
- "What are your best sellers?",
145
- "Show me summer dresses",
146
- "Do you have free shipping?",
147
- "What sizes are available?",
148
- "Can I return items?"
149
- ],
150
- placeholder: "Ask me anything..."
151
- }
152
- },
153
- [require_contexts_typesV3.WidgetTypeV3.FloatingChatV3]: {
154
- responseId: "mock-response-id",
155
- language: "en",
156
- values: {
157
- welcomeMessageTitle: "Welcome to Envive AI",
158
- welcomeMessageText: "Your personal shopper trained on the collective knowledge of thousands of real experts!",
159
- chatFooterTextFieldPlaceholderText: "Ask me anything...",
160
- disclaimerText: "This is a disclaimer...",
161
- leftToggleLabel: "Shop with AI",
162
- rightToggleLabel: "Live support"
163
- }
164
- },
165
- [require_contexts_typesV3.WidgetTypeV3.FullPageSalesAgentV3]: {
166
- responseId: "mock-response-id",
167
- language: "en",
168
- values: {
169
- welcomeMessageTitle: "Welcome to Envive AI",
170
- welcomeMessageText: "Your personal shopper trained on the collective knowledge of thousands of real experts!",
171
- chatFooterTextFieldPlaceholderText: "Ask me anything...",
172
- disclaimerText: "This is a disclaimer..."
173
- }
174
- }
175
- };
176
8
  const HardcopyContext = (0, react.createContext)(void 0);
177
- const HardcopyProvider = ({ children, hardcopyOverride }) => {
178
- const languages = (0, react.useMemo)(() => navigator.languages, []);
9
+ const HardcopyProvider = ({ children, hardcopyService }) => {
179
10
  const [isLoading, setIsLoading] = (0, react.useState)(false);
180
- const context = (0, jotai.useAtomValue)(require_atoms_app_index.appDetailsAtom);
181
- const { trackEvent } = require_amplitudeContext.useAmplitude();
182
- const { featureFlagService } = require_featureFlagServiceContext.useFeatureFlagService();
183
- const getHardcopyFromBackend = (0, react.useCallback)(async (request) => {
184
- const fallbackWidgetType = request.widgetType === require_contexts_typesV3.WidgetTypeV3.ProductCardV3 ? require_contexts_typesV3.WidgetTypeV3.ImagePromptCardV3 : request.widgetType;
185
- const overrideEntry = hardcopyOverride?.[request.widgetType] ?? hardcopyOverride?.[fallbackWidgetType];
186
- if (overrideEntry) {
187
- logger.logDebug("using hardcopy override", request.widgetType);
188
- return overrideEntry;
189
- }
190
- const overrideConfigVersion = require_urlsParser.getQueryParam("spiffy_config_version") || require_urlsParser.getQueryParam("envive_config_version") || void 0;
191
- const widgetTextRequest = {
192
- requestId: (0, uuid.v4)(),
193
- widgetType: request.widgetType,
194
- context,
195
- featureFlags: featureFlagService?.getFeatureFlags() || {},
196
- language: languages[0] || "en",
197
- overrideConfigVersion,
198
- url: window.location.href
199
- };
200
- trackEvent({
201
- eventName: require_eventNames.EnviveMetricsEventName.WidgetTextRequest,
202
- eventProps: {
203
- widget_type: request.widgetType,
204
- request_id: widgetTextRequest.requestId
205
- }
206
- });
207
- try {
208
- const response = await require_application_commerce_api.default.getHardcopy(widgetTextRequest);
209
- if (response) {
210
- const convertedResponse = convertToHardcopyResponse(response);
211
- logger.logDebug("converted response", convertedResponse);
212
- trackEvent({
213
- eventName: require_eventNames.EnviveMetricsEventName.WidgetTextResponse,
214
- eventProps: {
215
- widget_type: request.widgetType,
216
- response_id: response.responseId,
217
- widget_text: response.values,
218
- request_id: widgetTextRequest.requestId
219
- }
220
- });
221
- return convertedResponse;
222
- }
223
- } catch (error) {
224
- logger.logError("error getting hardcopy from backend", error);
225
- }
226
- const mockResponse = MOCK_HARDCOPY_RESPONSE[request.widgetType];
227
- if (mockResponse) {
228
- logger.logDebug("no real response, using mock", mockResponse);
229
- return mockResponse;
230
- }
231
- throw new Error(`No hardcopy response found for widget type: ${request.widgetType}`);
232
- }, [
233
- context,
234
- featureFlagService,
235
- hardcopyOverride,
236
- languages,
237
- trackEvent
238
- ]);
239
11
  const getHardcopy = (0, react.useCallback)(async (request) => {
240
12
  setIsLoading(true);
241
- logger.logDebug("retrieving hardcopy", languages);
13
+ logger.logDebug("retrieving hardcopy");
242
14
  logger.logDebug("request", request);
243
- const response = await getHardcopyFromBackend(request);
244
- logger.logDebug("returning hardcopy response", response);
245
- if (!response) {
15
+ try {
16
+ const response = await hardcopyService.getHardcopy(request);
17
+ logger.logDebug("returning hardcopy response", response);
18
+ return response;
19
+ } finally {
246
20
  setIsLoading(false);
247
- throw new Error(`No hardcopy response found for widget type: ${request.widgetType}`);
248
21
  }
249
- setIsLoading(false);
250
- return response;
251
- }, [getHardcopyFromBackend, languages]);
22
+ }, [hardcopyService]);
252
23
  const value = (0, react.useMemo)(() => ({
253
24
  getHardcopy,
254
25
  isLoading
@@ -267,4 +38,4 @@ const useHardcopy = () => {
267
38
  //#endregion
268
39
  exports.HardcopyProvider = HardcopyProvider;
269
40
  exports.useHardcopy = useHardcopy;
270
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmNqcyIsIm5hbWVzIjpbIkxvZ2dlciIsInRvQ2FtZWxDYXNlIiwiTU9DS19IQVJEQ09QWV9SRVNQT05TRTogUGFydGlhbDxSZWNvcmQ8V2lkZ2V0VHlwZVYzLCBIYXJkY29weVJlc3BvbnNlPj4iLCJXaWRnZXRUeXBlVjMiLCJIYXJkY29weVByb3ZpZGVyOiBSZWFjdC5GQzxIYXJkY29weVByb3ZpZGVyUHJvcHM+IiwiYXBwRGV0YWlsc0F0b20iLCJ1c2VBbXBsaXR1ZGUiLCJ1c2VGZWF0dXJlRmxhZ1NlcnZpY2UiLCJnZXRRdWVyeVBhcmFtIiwid2lkZ2V0VGV4dFJlcXVlc3Q6IFdpZGdldFRleHRSZXF1ZXN0IiwiRW52aXZlTWV0cmljc0V2ZW50TmFtZSIsIkNvbW1lcmNlQXBpQ2xpZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL2hhcmRjb3B5Q29udGV4dC9oYXJkY29weUNvbnRleHQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlYWN0Tm9kZSwgY3JlYXRlQ29udGV4dCwgdXNlQ2FsbGJhY2ssIHVzZUNvbnRleHQsIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IExvZ2dlciBmcm9tICdzcmMvYXBwbGljYXRpb24vbG9nZ2luZy9sb2dnZXInO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IENvbW1lcmNlQXBpQ2xpZW50IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9jb21tZXJjZS1hcGknO1xuaW1wb3J0IHsgV2lkZ2V0U3RyaW5nLCBXaWRnZXRUZXh0IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvd2lkZ2V0VGV4dCc7XG5pbXBvcnQgeyBXaWRnZXRUZXh0UmVxdWVzdCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvYXBpL3dpZGdldFRleHRSZXF1ZXN0JztcblxuaW1wb3J0IHsgdXNlQXRvbVZhbHVlIH0gZnJvbSAnam90YWknO1xuaW1wb3J0IHsgYXBwRGV0YWlsc0F0b20gfSBmcm9tICdzcmMvYXRvbXMvYXBwJztcbmltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICdzcmMvc2VydmljZXMvYW1wbGl0dWRlU2VydmljZS9hbXBsaXR1ZGVTZXJ2aWNlJztcbmltcG9ydCB7IHRvQ2FtZWxDYXNlIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy91dGlscy9zbmFrZVRvQ2FtZWxUcmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IGdldFF1ZXJ5UGFyYW0gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vdXRpbHMnO1xuaW1wb3J0IHsgV2lkZ2V0VHlwZVYzIH0gZnJvbSAnLi4vdHlwZXNWMyc7XG5pbXBvcnQgeyB1c2VGZWF0dXJlRmxhZ1NlcnZpY2UgfSBmcm9tICcuLi9mZWF0dXJlRmxhZ1NlcnZpY2VDb250ZXh0L2ZlYXR1cmVGbGFnU2VydmljZUNvbnRleHQnO1xuaW1wb3J0IHsgdXNlQW1wbGl0dWRlIH0gZnJvbSAnLi4vYW1wbGl0dWRlQ29udGV4dCc7XG5cbmNvbnN0IGxvZ2dlciA9IG5ldyBMb2dnZXIoJ2hhcmRjb3B5Q29udGV4dCcpO1xuXG5pbnRlcmZhY2UgSGFyZGNvcHlSZXF1ZXN0IHtcbiAgd2lkZ2V0VHlwZTogV2lkZ2V0VHlwZVYzO1xuICB1c2VyRXZlbnQ6IFVzZXJFdmVudDtcbn1cblxuZXhwb3J0IHR5cGUgSGFyZGNvcHlSZXNwb25zZSA9IHtcbiAgcmVzcG9uc2VJZDogc3RyaW5nO1xuICBsYW5ndWFnZTogc3RyaW5nO1xuICByYXdWYWx1ZXM/OiBSZWNvcmQ8c3RyaW5nLCBXaWRnZXRTdHJpbmcgfCBXaWRnZXRTdHJpbmdbXT47XG4gIHZhbHVlczogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgc3RyaW5nW10+O1xufTtcblxuaW50ZXJmYWNlIEhhcmRjb3B5Q29udGV4dFR5cGUge1xuICBnZXRIYXJkY29weTogKEhhcmRjb3B5UmVxdWVzdDogSGFyZGNvcHlSZXF1ZXN0KSA9PiBQcm9taXNlPEhhcmRjb3B5UmVzcG9uc2U+O1xuICBpc0xvYWRpbmc6IGJvb2xlYW47XG59XG5cbmNvbnN0IGNvbnZlcnRUb0hhcmRjb3B5UmVzcG9uc2UgPSAocmVzcG9uc2U6IFdpZGdldFRleHQpOiBIYXJkY29weVJlc3BvbnNlID0+IHtcbiAgcmV0dXJuIHtcbiAgICByZXNwb25zZUlkOiByZXNwb25zZS5yZXNwb25zZUlkLFxuICAgIGxhbmd1YWdlOiByZXNwb25zZS5sYW5ndWFnZSxcbiAgICByYXdWYWx1ZXM6IHJlc3BvbnNlLnZhbHVlcyxcbiAgICB2YWx1ZXM6IE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgIE9iamVjdC5lbnRyaWVzKHJlc3BvbnNlLnZhbHVlcykubWFwKChba2V5LCB2YWx1ZV0pID0+IFtcbiAgICAgICAgLy8gVHJhbnNmb3JtIHRoZSBrZXkgZnJvbSBzbmFrZV9jYXNlIHRvIGNhbWVsQ2FzZVxuICAgICAgICB0b0NhbWVsQ2FzZShrZXkpLFxuICAgICAgICB2YWx1ZS5sZW5ndGggPT09IDEgPyB2YWx1ZVswXS52YWx1ZSA6IHZhbHVlLm1hcCh2ID0+IHYudmFsdWUpLFxuICAgICAgXSksXG4gICAgKSxcbiAgfTtcbn07XG5cbi8vIFRoZXNlIGFyZSBqdXN0IHNhbXBsZSByZXNwb25zZXMgZm9yIHRoZSBzYWtlIG9mIHRlc3RpbmcuXG4vLyBBcyB3ZSBzdGFydCB0byBidWlsZCB0aGUgYWN0dWFsIHdpZGdldHMgd2Ugc2hvdWxkIGRldGVybWluZSB3aGF0IHRoZSBhY3R1YWxcbi8vIHZhbHVlcyBhbmQgdGhlaXIgbmFtZXMgc2hvdWxkIGJlLlxuY29uc3QgTU9DS19IQVJEQ09QWV9SRVNQT05TRTogUGFydGlhbDxSZWNvcmQ8V2lkZ2V0VHlwZVYzLCBIYXJkY29weVJlc3BvbnNlPj4gPSB7XG4gIFtXaWRnZXRUeXBlVjMuUHJvbXB0Q2Fyb3VzZWxWM106IHtcbiAgICByZXNwb25zZUlkOiB1dWlkKCksXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICBwcm9tcHRCdXR0b25UZXh0czogW1xuICAgICAgICAnV2hhdCBhcmUgeW91ciBiZXN0IHNlbGxlcnM/JyxcbiAgICAgICAgJ1Nob3cgbWUgc3VtbWVyIGRyZXNzZXMnLFxuICAgICAgICAnRG8geW91IGhhdmUgZnJlZSBzaGlwcGluZz8nLFxuICAgICAgICAnV2hhdCBzaXplcyBhcmUgYXZhaWxhYmxlPycsXG4gICAgICAgICdDYW4gSSByZXR1cm4gaXRlbXM/JyxcbiAgICAgIF0sXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5UaXRsZWRQcm9tcHRDYXJvdXNlbFYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdOZWVkIHNvbWUgaGVscD8nLFxuICAgICAgcHJvbXB0QnV0dG9uVGV4dHM6IFtcbiAgICAgICAgJ1doYXQgYXJlIHlvdXIgYmVzdCBzZWxsZXJzPycsXG4gICAgICAgICdTaG93IG1lIHN1bW1lciBkcmVzc2VzJyxcbiAgICAgICAgJ0RvIHlvdSBoYXZlIGZyZWUgc2hpcHBpbmc/JyxcbiAgICAgICAgJ1doYXQgc2l6ZXMgYXJlIGF2YWlsYWJsZT8nLFxuICAgICAgICAnQ2FuIEkgcmV0dXJuIGl0ZW1zPycsXG4gICAgICBdLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuU29jaWFsUHJvb2ZWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB0aXRsZUxhYmVsOiAnU2hvcHBpbmcgQXNzaXN0YW50JyxcbiAgICAgIG51bWJlck9mQ3VzdG9tZXJzVGV4dDogJzEyMyBjdXN0b21lcnMnLFxuICAgICAgY3VzdG9tZXJRdWVyeVRleHQ6ICdmb3VuZCB3aGF0IHRoZXkgd2VyZSBsb29raW5nIGZvci4uLicsXG4gICAgICBwcmltYXJ5QnV0dG9uVGV4dDogJ1N0YXJ0IHNob3BwaW5nJyxcbiAgICAgIHNlY29uZGFyeUJ1dHRvblRpdGxlVGV4dDogJ1BvcHVsYXIgc2VhcmNoZXMnLFxuICAgICAgc2Vjb25kYXJ5QnV0dG9uVGV4dHM6IFtcbiAgICAgICAgJ1doeSBzaG91bGQgSSBidXkgZnJvbSB5b3U/JyxcbiAgICAgICAgJ0hvdyBkbyBJIHJldHVybiBhbiBpdGVtPycsXG4gICAgICAgICdOZXcgYXJyaXZhbHMnLFxuICAgICAgICAnU2FsZSBpdGVtcycsXG4gICAgICAgICdQb3B1bGFyIGl0ZW1zJyxcbiAgICAgIF0sXG4gICAgICB0ZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuVHlwaW5nQW5pbWF0aW9uVjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgdGl0bGVMYWJlbDogJ1Nob3BwaW5nIEFzc2lzdGFudCcsXG4gICAgICBoZWFkbGluZVRleHQ6ICdOZWVkIGhlbHAgZmluZGluZycsXG4gICAgICBhbmltYXRlZFRleHRTZXF1ZW5jZTogW1xuICAgICAgICAndGhlIHBlcmZlY3QgZ2lmdCBmb3IgeW91ciBsb3ZlZCBvbmVzPycsXG4gICAgICAgICdzb21ldGhpbmcgc3BlY2lhbCBmb3IgdGhlIGhvbGlkYXlzPycsXG4gICAgICAgICd0aGUgaWRlYWwgcHJlc2VudCBmb3Igc29tZW9uZSBzcGVjaWFsPycsXG4gICAgICBdLFxuICAgICAgaGludFRleHQ6ICdBc2sgbWUgYW55dGhpbmcnLFxuICAgICAgcHJvbXB0QnV0dG9uVGV4dHM6IFtcbiAgICAgICAgJ1doYXQgYXJlIHlvdXIgYmVzdCBzZWxsZXJzPycsXG4gICAgICAgICdTaG93IG1lIHN1bW1lciBkcmVzc2VzJyxcbiAgICAgICAgJ0RvIHlvdSBoYXZlIGZyZWUgc2hpcHBpbmc/JyxcbiAgICAgICAgJ1doYXQgc2l6ZXMgYXJlIGF2YWlsYWJsZT8nLFxuICAgICAgXSxcbiAgICAgIHRleHRGaWVsZEFyaWFMYWJlbDogJ0FzayBtZSBhbnl0aGluZycsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5DaGF0UHJldmlld0NvbXBhcmlzb25WM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB0aXRsZUxhYmVsOiAnU2hvcHBpbmcgQXNzaXN0YW50JyxcbiAgICAgIGhlYWRsaW5lVGV4dDogJ05lZWQgaGVscCBjb21wYXJpbmc/JyxcbiAgICAgIHRleHRGaWVsZFBsYWNlaG9sZGVyVGV4dDogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5DaGF0UHJldmlld0xvYWRpbmdWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB0aXRsZUxhYmVsOiAnU2hvcHBpbmcgQXNzaXN0YW50JyxcbiAgICAgIHRleHRGaWVsZFBsYWNlaG9sZGVyVGV4dDogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5DaGF0UHJldmlld1YzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdTaG9wcGluZyBBc3Npc3RhbnQnLFxuICAgICAgdGV4dEZpZWxkUGxhY2Vob2xkZXJUZXh0OiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLlByb21wdEJ1dHRvbkNhcm91c2VsV2l0aEltYWdlVjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgdGl0bGVMYWJlbDogJ05lZWQgc29tZSBoZWxwPycsXG4gICAgICBwcm9tcHRCdXR0b25zVGV4dHM6IFsnSGVscCBtZSBmaW5kIGEgcHJvZHVjdCcsIFwiV2hhdCdzIG9uIHlvdXIgbWluZD9cIiwgJ1RhbGsgdG8gYSBodW1hbiddLFxuICAgICAgdGV4dEZpZWxkUGxhY2Vob2xkZXJUZXh0OiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLlByb2R1Y3RDYXJkVjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgaGVhZGxpbmU6ICdEaXNjb3ZlciBZb3VyIFBlcmZlY3QgU3R5bGUnLFxuICAgICAgYW5pbWF0ZWRUZXh0OiBbXG4gICAgICAgICd0aGUgcGVyZmVjdCBvdXRmaXQgZm9yIGFueSBvY2Nhc2lvbicsXG4gICAgICAgICd0cmVuZGluZyBmYXNoaW9uIHRoYXQgZml0cyB5b3VyIGxpZmVzdHlsZScsXG4gICAgICAgICdxdWFsaXR5IHBpZWNlcyB0aGF0IGxhc3QnLFxuICAgICAgXSxcbiAgICAgIHByb21wdHM6IFtcbiAgICAgICAgJ1doYXQgYXJlIHlvdXIgYmVzdCBzZWxsZXJzPycsXG4gICAgICAgICdTaG93IG1lIHN1bW1lciBkcmVzc2VzJyxcbiAgICAgICAgJ0RvIHlvdSBoYXZlIGZyZWUgc2hpcHBpbmc/JyxcbiAgICAgICAgJ1doYXQgc2l6ZXMgYXJlIGF2YWlsYWJsZT8nLFxuICAgICAgICAnQ2FuIEkgcmV0dXJuIGl0ZW1zPycsXG4gICAgICBdLFxuICAgICAgcGxhY2Vob2xkZXI6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuRmxvYXRpbmdDaGF0VjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgd2VsY29tZU1lc3NhZ2VUaXRsZTogJ1dlbGNvbWUgdG8gRW52aXZlIEFJJyxcbiAgICAgIHdlbGNvbWVNZXNzYWdlVGV4dDpcbiAgICAgICAgJ1lvdXIgcGVyc29uYWwgc2hvcHBlciB0cmFpbmVkIG9uIHRoZSBjb2xsZWN0aXZlIGtub3dsZWRnZSBvZiB0aG91c2FuZHMgb2YgcmVhbCBleHBlcnRzIScsXG4gICAgICBjaGF0Rm9vdGVyVGV4dEZpZWxkUGxhY2Vob2xkZXJUZXh0OiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICAgIGRpc2NsYWltZXJUZXh0OiAnVGhpcyBpcyBhIGRpc2NsYWltZXIuLi4nLFxuICAgICAgbGVmdFRvZ2dsZUxhYmVsOiAnU2hvcCB3aXRoIEFJJyxcbiAgICAgIHJpZ2h0VG9nZ2xlTGFiZWw6ICdMaXZlIHN1cHBvcnQnLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuRnVsbFBhZ2VTYWxlc0FnZW50VjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgd2VsY29tZU1lc3NhZ2VUaXRsZTogJ1dlbGNvbWUgdG8gRW52aXZlIEFJJyxcbiAgICAgIHdlbGNvbWVNZXNzYWdlVGV4dDpcbiAgICAgICAgJ1lvdXIgcGVyc29uYWwgc2hvcHBlciB0cmFpbmVkIG9uIHRoZSBjb2xsZWN0aXZlIGtub3dsZWRnZSBvZiB0aG91c2FuZHMgb2YgcmVhbCBleHBlcnRzIScsXG4gICAgICBjaGF0Rm9vdGVyVGV4dEZpZWxkUGxhY2Vob2xkZXJUZXh0OiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICAgIGRpc2NsYWltZXJUZXh0OiAnVGhpcyBpcyBhIGRpc2NsYWltZXIuLi4nLFxuICAgIH0sXG4gIH0sXG59O1xuXG5jb25zdCBIYXJkY29weUNvbnRleHQgPSBjcmVhdGVDb250ZXh0PEhhcmRjb3B5Q29udGV4dFR5cGUgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG5cbmludGVyZmFjZSBIYXJkY29weVByb3ZpZGVyUHJvcHMge1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xuICBoYXJkY29weU92ZXJyaWRlPzogUGFydGlhbDxSZWNvcmQ8V2lkZ2V0VHlwZVYzLCBIYXJkY29weVJlc3BvbnNlPj47XG59XG5cbmV4cG9ydCBjb25zdCBIYXJkY29weVByb3ZpZGVyOiBSZWFjdC5GQzxIYXJkY29weVByb3ZpZGVyUHJvcHM+ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGhhcmRjb3B5T3ZlcnJpZGUsXG59KSA9PiB7XG4gIGNvbnN0IGxhbmd1YWdlcyA9IHVzZU1lbW8oKCkgPT4gbmF2aWdhdG9yLmxhbmd1YWdlcywgW10pO1xuICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBjb250ZXh0ID0gdXNlQXRvbVZhbHVlKGFwcERldGFpbHNBdG9tKTtcbiAgY29uc3QgeyB0cmFja0V2ZW50IH0gPSB1c2VBbXBsaXR1ZGUoKTtcblxuICBjb25zdCB7IGZlYXR1cmVGbGFnU2VydmljZSB9ID0gdXNlRmVhdHVyZUZsYWdTZXJ2aWNlKCk7XG4gIGNvbnN0IGdldEhhcmRjb3B5RnJvbUJhY2tlbmQgPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAocmVxdWVzdDogSGFyZGNvcHlSZXF1ZXN0KTogUHJvbWlzZTxIYXJkY29weVJlc3BvbnNlPiA9PiB7XG4gICAgICBjb25zdCBmYWxsYmFja1dpZGdldFR5cGUgPVxuICAgICAgICByZXF1ZXN0LndpZGdldFR5cGUgPT09IFdpZGdldFR5cGVWMy5Qcm9kdWN0Q2FyZFYzXG4gICAgICAgICAgPyBXaWRnZXRUeXBlVjMuSW1hZ2VQcm9tcHRDYXJkVjNcbiAgICAgICAgICA6IHJlcXVlc3Qud2lkZ2V0VHlwZTtcblxuICAgICAgY29uc3Qgb3ZlcnJpZGVFbnRyeSA9XG4gICAgICAgIGhhcmRjb3B5T3ZlcnJpZGU/LltyZXF1ZXN0LndpZGdldFR5cGVdID8/IGhhcmRjb3B5T3ZlcnJpZGU/LltmYWxsYmFja1dpZGdldFR5cGVdO1xuICAgICAgaWYgKG92ZXJyaWRlRW50cnkpIHtcbiAgICAgICAgbG9nZ2VyLmxvZ0RlYnVnKCd1c2luZyBoYXJkY29weSBvdmVycmlkZScsIHJlcXVlc3Qud2lkZ2V0VHlwZSk7XG4gICAgICAgIHJldHVybiBvdmVycmlkZUVudHJ5O1xuICAgICAgfVxuXG4gICAgICBjb25zdCBvdmVycmlkZUNvbmZpZ1ZlcnNpb24gPVxuICAgICAgICBnZXRRdWVyeVBhcmFtKCdzcGlmZnlfY29uZmlnX3ZlcnNpb24nKSB8fFxuICAgICAgICBnZXRRdWVyeVBhcmFtKCdlbnZpdmVfY29uZmlnX3ZlcnNpb24nKSB8fFxuICAgICAgICB1bmRlZmluZWQ7XG4gICAgICBjb25zdCB3aWRnZXRUZXh0UmVxdWVzdDogV2lkZ2V0VGV4dFJlcXVlc3QgPSB7XG4gICAgICAgIHJlcXVlc3RJZDogdXVpZCgpLFxuICAgICAgICB3aWRnZXRUeXBlOiByZXF1ZXN0LndpZGdldFR5cGUsXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGZlYXR1cmVGbGFnczogZmVhdHVyZUZsYWdTZXJ2aWNlPy5nZXRGZWF0dXJlRmxhZ3MoKSB8fCB7fSxcbiAgICAgICAgbGFuZ3VhZ2U6IGxhbmd1YWdlc1swXSB8fCAnZW4nLFxuICAgICAgICBvdmVycmlkZUNvbmZpZ1ZlcnNpb24sXG4gICAgICAgIHVybDogd2luZG93LmxvY2F0aW9uLmhyZWYsXG4gICAgICB9O1xuICAgICAgdHJhY2tFdmVudCh7XG4gICAgICAgIGV2ZW50TmFtZTogRW52aXZlTWV0cmljc0V2ZW50TmFtZS5XaWRnZXRUZXh0UmVxdWVzdCxcbiAgICAgICAgZXZlbnRQcm9wczoge1xuICAgICAgICAgIHdpZGdldF90eXBlOiByZXF1ZXN0LndpZGdldFR5cGUsXG4gICAgICAgICAgcmVxdWVzdF9pZDogd2lkZ2V0VGV4dFJlcXVlc3QucmVxdWVzdElkLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IENvbW1lcmNlQXBpQ2xpZW50LmdldEhhcmRjb3B5KHdpZGdldFRleHRSZXF1ZXN0KTtcbiAgICAgICAgaWYgKHJlc3BvbnNlKSB7XG4gICAgICAgICAgY29uc3QgY29udmVydGVkUmVzcG9uc2UgPSBjb252ZXJ0VG9IYXJkY29weVJlc3BvbnNlKHJlc3BvbnNlKTtcbiAgICAgICAgICBsb2dnZXIubG9nRGVidWcoJ2NvbnZlcnRlZCByZXNwb25zZScsIGNvbnZlcnRlZFJlc3BvbnNlKTtcbiAgICAgICAgICB0cmFja0V2ZW50KHtcbiAgICAgICAgICAgIGV2ZW50TmFtZTogRW52aXZlTWV0cmljc0V2ZW50TmFtZS5XaWRnZXRUZXh0UmVzcG9uc2UsXG4gICAgICAgICAgICBldmVudFByb3BzOiB7XG4gICAgICAgICAgICAgIHdpZGdldF90eXBlOiByZXF1ZXN0LndpZGdldFR5cGUsXG4gICAgICAgICAgICAgIHJlc3BvbnNlX2lkOiByZXNwb25zZS5yZXNwb25zZUlkLFxuICAgICAgICAgICAgICB3aWRnZXRfdGV4dDogcmVzcG9uc2UudmFsdWVzLFxuICAgICAgICAgICAgICByZXF1ZXN0X2lkOiB3aWRnZXRUZXh0UmVxdWVzdC5yZXF1ZXN0SWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHJldHVybiBjb252ZXJ0ZWRSZXNwb25zZTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgbG9nZ2VyLmxvZ0Vycm9yKCdlcnJvciBnZXR0aW5nIGhhcmRjb3B5IGZyb20gYmFja2VuZCcsIGVycm9yKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG1vY2tSZXNwb25zZSA9IE1PQ0tfSEFSRENPUFlfUkVTUE9OU0VbcmVxdWVzdC53aWRnZXRUeXBlXTtcbiAgICAgIGlmIChtb2NrUmVzcG9uc2UpIHtcbiAgICAgICAgbG9nZ2VyLmxvZ0RlYnVnKCdubyByZWFsIHJlc3BvbnNlLCB1c2luZyBtb2NrJywgbW9ja1Jlc3BvbnNlKTtcbiAgICAgICAgcmV0dXJuIG1vY2tSZXNwb25zZTtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gaGFyZGNvcHkgcmVzcG9uc2UgZm91bmQgZm9yIHdpZGdldCB0eXBlOiAke3JlcXVlc3Qud2lkZ2V0VHlwZX1gKTtcbiAgICB9LFxuICAgIFtjb250ZXh0LCBmZWF0dXJlRmxhZ1NlcnZpY2UsIGhhcmRjb3B5T3ZlcnJpZGUsIGxhbmd1YWdlcywgdHJhY2tFdmVudF0sXG4gICk7XG5cbiAgY29uc3QgZ2V0SGFyZGNvcHkgPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAocmVxdWVzdDogSGFyZGNvcHlSZXF1ZXN0KTogUHJvbWlzZTxIYXJkY29weVJlc3BvbnNlPiA9PiB7XG4gICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XG4gICAgICBsb2dnZXIubG9nRGVidWcoJ3JldHJpZXZpbmcgaGFyZGNvcHknLCBsYW5ndWFnZXMpO1xuXG4gICAgICBsb2dnZXIubG9nRGVidWcoJ3JlcXVlc3QnLCByZXF1ZXN0KTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZ2V0SGFyZGNvcHlGcm9tQmFja2VuZChyZXF1ZXN0KTtcbiAgICAgIGxvZ2dlci5sb2dEZWJ1ZygncmV0dXJuaW5nIGhhcmRjb3B5IHJlc3BvbnNlJywgcmVzcG9uc2UpO1xuICAgICAgaWYgKCFyZXNwb25zZSkge1xuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGhhcmRjb3B5IHJlc3BvbnNlIGZvdW5kIGZvciB3aWRnZXQgdHlwZTogJHtyZXF1ZXN0LndpZGdldFR5cGV9YCk7XG4gICAgICB9XG4gICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgIH0sXG4gICAgW2dldEhhcmRjb3B5RnJvbUJhY2tlbmQsIGxhbmd1YWdlc10sXG4gICk7XG5cbiAgY29uc3QgdmFsdWUgPSB1c2VNZW1vKCgpID0+ICh7IGdldEhhcmRjb3B5LCBpc0xvYWRpbmcgfSksIFtnZXRIYXJkY29weSwgaXNMb2FkaW5nXSk7XG5cbiAgcmV0dXJuIDxIYXJkY29weUNvbnRleHQuUHJvdmlkZXIgdmFsdWU9e3ZhbHVlfT57Y2hpbGRyZW59PC9IYXJkY29weUNvbnRleHQuUHJvdmlkZXI+O1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZUhhcmRjb3B5ID0gKCkgPT4ge1xuICBjb25zdCBjb250ZXh0ID0gdXNlQ29udGV4dChIYXJkY29weUNvbnRleHQpO1xuICBpZiAoIWNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3VzZUhhcmRjb3B5IG11c3QgYmUgdXNlZCB3aXRoaW4gYSBIYXJkY29weVByb3ZpZGVyJyk7XG4gIH1cbiAgcmV0dXJuIGNvbnRleHQ7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBaUJBLE1BQU0sU0FBUyxJQUFJQSx1QkFBTyxrQkFBa0I7QUFtQjVDLE1BQU0sNkJBQTZCLGFBQTJDO0FBQzVFLFFBQU87RUFDTCxZQUFZLFNBQVM7RUFDckIsVUFBVSxTQUFTO0VBQ25CLFdBQVcsU0FBUztFQUNwQixRQUFRLE9BQU8sWUFDYixPQUFPLFFBQVEsU0FBUyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssV0FBVyxDQUVwREMsNENBQVksSUFBSSxFQUNoQixNQUFNLFdBQVcsSUFBSSxNQUFNLEdBQUcsUUFBUSxNQUFNLEtBQUksTUFBSyxFQUFFLE1BQU0sQ0FDOUQsQ0FBQyxDQUNIO0VBQ0Y7O0FBTUgsTUFBTUMseUJBQTBFO0VBQzdFQyxzQ0FBYSxtQkFBbUI7RUFDL0IsMEJBQWtCO0VBQ2xCLFVBQVU7RUFDVixRQUFRLEVBQ04sbUJBQW1C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
41
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmNqcyIsIm5hbWVzIjpbIkxvZ2dlciIsIkhhcmRjb3B5UHJvdmlkZXI6IFJlYWN0LkZDPEhhcmRjb3B5UHJvdmlkZXJQcm9wcz4iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvaGFyZGNvcHlDb250ZXh0L2hhcmRjb3B5Q29udGV4dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhY3ROb2RlLCBjcmVhdGVDb250ZXh0LCB1c2VDYWxsYmFjaywgdXNlQ29udGV4dCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgTG9nZ2VyIGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9sb2dnaW5nL2xvZ2dlcic7XG5pbXBvcnQgeyBIYXJkY29weVJlcXVlc3QsIEhhcmRjb3B5UmVzcG9uc2UsIElIYXJkY29weVNlcnZpY2UgfSBmcm9tICdzcmMvc2VydmljZXMvaGFyZGNvcHlTZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUgeyBIYXJkY29weVJlcXVlc3QsIEhhcmRjb3B5UmVzcG9uc2UgfSBmcm9tICdzcmMvc2VydmljZXMvaGFyZGNvcHlTZXJ2aWNlJztcblxuY29uc3QgbG9nZ2VyID0gbmV3IExvZ2dlcignaGFyZGNvcHlDb250ZXh0Jyk7XG5cbmludGVyZmFjZSBIYXJkY29weUNvbnRleHRUeXBlIHtcbiAgZ2V0SGFyZGNvcHk6IChyZXF1ZXN0OiBIYXJkY29weVJlcXVlc3QpID0+IFByb21pc2U8SGFyZGNvcHlSZXNwb25zZT47XG4gIGlzTG9hZGluZzogYm9vbGVhbjtcbn1cblxuY29uc3QgSGFyZGNvcHlDb250ZXh0ID0gY3JlYXRlQ29udGV4dDxIYXJkY29weUNvbnRleHRUeXBlIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuXG5pbnRlcmZhY2UgSGFyZGNvcHlQcm92aWRlclByb3BzIHtcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbiAgaGFyZGNvcHlTZXJ2aWNlOiBJSGFyZGNvcHlTZXJ2aWNlO1xufVxuXG5leHBvcnQgY29uc3QgSGFyZGNvcHlQcm92aWRlcjogUmVhY3QuRkM8SGFyZGNvcHlQcm92aWRlclByb3BzPiA9ICh7XG4gIGNoaWxkcmVuLFxuICBoYXJkY29weVNlcnZpY2UsXG59KSA9PiB7XG4gIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgZ2V0SGFyZGNvcHkgPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAocmVxdWVzdDogSGFyZGNvcHlSZXF1ZXN0KTogUHJvbWlzZTxIYXJkY29weVJlc3BvbnNlPiA9PiB7XG4gICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XG4gICAgICBsb2dnZXIubG9nRGVidWcoJ3JldHJpZXZpbmcgaGFyZGNvcHknKTtcbiAgICAgIGxvZ2dlci5sb2dEZWJ1ZygncmVxdWVzdCcsIHJlcXVlc3QpO1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBoYXJkY29weVNlcnZpY2UuZ2V0SGFyZGNvcHkocmVxdWVzdCk7XG4gICAgICAgIGxvZ2dlci5sb2dEZWJ1ZygncmV0dXJuaW5nIGhhcmRjb3B5IHJlc3BvbnNlJywgcmVzcG9uc2UpO1xuICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgICB9IGZpbmFsbHkge1xuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW2hhcmRjb3B5U2VydmljZV0sXG4gICk7XG5cbiAgY29uc3QgdmFsdWUgPSB1c2VNZW1vKCgpID0+ICh7IGdldEhhcmRjb3B5LCBpc0xvYWRpbmcgfSksIFtnZXRIYXJkY29weSwgaXNMb2FkaW5nXSk7XG5cbiAgcmV0dXJuIDxIYXJkY29weUNvbnRleHQuUHJvdmlkZXIgdmFsdWU9e3ZhbHVlfT57Y2hpbGRyZW59PC9IYXJkY29weUNvbnRleHQuUHJvdmlkZXI+O1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZUhhcmRjb3B5ID0gKCkgPT4ge1xuICBjb25zdCBjb250ZXh0ID0gdXNlQ29udGV4dChIYXJkY29weUNvbnRleHQpO1xuICBpZiAoIWNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3VzZUhhcmRjb3B5IG11c3QgYmUgdXNlZCB3aXRoaW4gYSBIYXJkY29weVByb3ZpZGVyJyk7XG4gIH1cbiAgcmV0dXJuIGNvbnRleHQ7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFNQSxNQUFNLFNBQVMsSUFBSUEsdUJBQU8sa0JBQWtCO0FBTzVDLE1BQU0sMkNBQWlFLE9BQVU7QUFPakYsTUFBYUMsb0JBQXFELEVBQ2hFLFVBQ0Esc0JBQ0k7Q0FDSixNQUFNLENBQUMsV0FBVyxvQ0FBeUIsTUFBTTtDQUVqRCxNQUFNLHFDQUNKLE9BQU8sWUFBd0Q7QUFDN0QsZUFBYSxLQUFLO0FBQ2xCLFNBQU8sU0FBUyxzQkFBc0I7QUFDdEMsU0FBTyxTQUFTLFdBQVcsUUFBUTtBQUNuQyxNQUFJO0dBQ0YsTUFBTSxXQUFXLE1BQU0sZ0JBQWdCLFlBQVksUUFBUTtBQUMzRCxVQUFPLFNBQVMsK0JBQStCLFNBQVM7QUFDeEQsVUFBTztZQUNDO0FBQ1IsZ0JBQWEsTUFBTTs7SUFHdkIsQ0FBQyxnQkFBZ0IsQ0FDbEI7Q0FFRCxNQUFNLGtDQUF1QjtFQUFFO0VBQWE7RUFBVyxHQUFHLENBQUMsYUFBYSxVQUFVLENBQUM7QUFFbkYsUUFBTywyQ0FBQyxnQkFBZ0I7RUFBZ0I7RUFBUTtHQUFvQzs7QUFHdEYsTUFBYSxvQkFBb0I7Q0FDL0IsTUFBTSxnQ0FBcUIsZ0JBQWdCO0FBQzNDLEtBQUksQ0FBQyxRQUNILE9BQU0sSUFBSSxNQUFNLHFEQUFxRDtBQUV2RSxRQUFPIn0=
@@ -1,29 +1,17 @@
1
- import { WidgetTypeV3 } from "../typesV3.cjs";
2
- import { WidgetString } from "../../application/models/api/widgetText.cjs";
3
- import { UserEvent } from "../../application/models/api/userEvent.cjs";
1
+ import { HardcopyRequest, HardcopyResponse, IHardcopyService } from "../../services/hardcopyService/hardcopyService.cjs";
4
2
  import { ReactNode } from "react";
5
3
 
6
4
  //#region src/contexts/hardcopyContext/hardcopyContext.d.ts
7
- interface HardcopyRequest {
8
- widgetType: WidgetTypeV3;
9
- userEvent: UserEvent;
10
- }
11
- type HardcopyResponse = {
12
- responseId: string;
13
- language: string;
14
- rawValues?: Record<string, WidgetString | WidgetString[]>;
15
- values: Record<string, string | string[]>;
16
- };
17
5
  interface HardcopyContextType {
18
- getHardcopy: (HardcopyRequest: HardcopyRequest) => Promise<HardcopyResponse>;
6
+ getHardcopy: (request: HardcopyRequest) => Promise<HardcopyResponse>;
19
7
  isLoading: boolean;
20
8
  }
21
9
  interface HardcopyProviderProps {
22
10
  children: ReactNode;
23
- hardcopyOverride?: Partial<Record<WidgetTypeV3, HardcopyResponse>>;
11
+ hardcopyService: IHardcopyService;
24
12
  }
25
13
  declare const HardcopyProvider: React.FC<HardcopyProviderProps>;
26
14
  declare const useHardcopy: () => HardcopyContextType;
27
15
  //#endregion
28
- export { HardcopyProvider, HardcopyResponse, useHardcopy };
29
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmQuY3RzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0cy9oYXJkY29weUNvbnRleHQvaGFyZGNvcHlDb250ZXh0LmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgV2lkZ2V0U3RyaW5nIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvd2lkZ2V0VGV4dCc7XG5pbXBvcnQgeyBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IFdpZGdldFR5cGVWMyB9IGZyb20gJy4uL3R5cGVzVjMnO1xuaW50ZXJmYWNlIEhhcmRjb3B5UmVxdWVzdCB7XG4gICAgd2lkZ2V0VHlwZTogV2lkZ2V0VHlwZVYzO1xuICAgIHVzZXJFdmVudDogVXNlckV2ZW50O1xufVxuZXhwb3J0IHR5cGUgSGFyZGNvcHlSZXNwb25zZSA9IHtcbiAgICByZXNwb25zZUlkOiBzdHJpbmc7XG4gICAgbGFuZ3VhZ2U6IHN0cmluZztcbiAgICByYXdWYWx1ZXM/OiBSZWNvcmQ8c3RyaW5nLCBXaWRnZXRTdHJpbmcgfCBXaWRnZXRTdHJpbmdbXT47XG4gICAgdmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmdbXT47XG59O1xuaW50ZXJmYWNlIEhhcmRjb3B5Q29udGV4dFR5cGUge1xuICAgIGdldEhhcmRjb3B5OiAoSGFyZGNvcHlSZXF1ZXN0OiBIYXJkY29weVJlcXVlc3QpID0+IFByb21pc2U8SGFyZGNvcHlSZXNwb25zZT47XG4gICAgaXNMb2FkaW5nOiBib29sZWFuO1xufVxuaW50ZXJmYWNlIEhhcmRjb3B5UHJvdmlkZXJQcm9wcyB7XG4gICAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbiAgICBoYXJkY29weU92ZXJyaWRlPzogUGFydGlhbDxSZWNvcmQ8V2lkZ2V0VHlwZVYzLCBIYXJkY29weVJlc3BvbnNlPj47XG59XG5leHBvcnQgZGVjbGFyZSBjb25zdCBIYXJkY29weVByb3ZpZGVyOiBSZWFjdC5GQzxIYXJkY29weVByb3ZpZGVyUHJvcHM+O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlSGFyZGNvcHk6ICgpID0+IEhhcmRjb3B5Q29udGV4dFR5cGU7XG5leHBvcnQge307XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUlBLElBQUksa0JBQWtCO0NBQUM7T0FBRztPQUFBO0NBQUE7QUFDMUIsSUFBVyxtQkFBaUI7Q0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO0NBQUE7QUFDNUIsSUFBSSxzQkFBb0I7Q0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ3hCLElBQUEsd0JBQUE7Q0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7Q0FBQTtBQUNBLElBQVcsbUJBQW1CO0NBQUM7T0FBQTtPQUFBLE1BQUE7Q0FBQTtBQUMvQixJQUFXLGNBQVcsQ0FBQSxXQUFBLG9CQUFBIn0=
16
+ export { HardcopyProvider, useHardcopy };
17
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmQuY3RzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0cy9oYXJkY29weUNvbnRleHQvaGFyZGNvcHlDb250ZXh0LmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgSGFyZGNvcHlSZXF1ZXN0LCBIYXJkY29weVJlc3BvbnNlLCBJSGFyZGNvcHlTZXJ2aWNlIH0gZnJvbSAnc3JjL3NlcnZpY2VzL2hhcmRjb3B5U2VydmljZSc7XG5leHBvcnQgdHlwZSB7IEhhcmRjb3B5UmVxdWVzdCwgSGFyZGNvcHlSZXNwb25zZSB9IGZyb20gJ3NyYy9zZXJ2aWNlcy9oYXJkY29weVNlcnZpY2UnO1xuaW50ZXJmYWNlIEhhcmRjb3B5Q29udGV4dFR5cGUge1xuICAgIGdldEhhcmRjb3B5OiAocmVxdWVzdDogSGFyZGNvcHlSZXF1ZXN0KSA9PiBQcm9taXNlPEhhcmRjb3B5UmVzcG9uc2U+O1xuICAgIGlzTG9hZGluZzogYm9vbGVhbjtcbn1cbmludGVyZmFjZSBIYXJkY29weVByb3ZpZGVyUHJvcHMge1xuICAgIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG4gICAgaGFyZGNvcHlTZXJ2aWNlOiBJSGFyZGNvcHlTZXJ2aWNlO1xufVxuZXhwb3J0IGRlY2xhcmUgY29uc3QgSGFyZGNvcHlQcm92aWRlcjogUmVhY3QuRkM8SGFyZGNvcHlQcm92aWRlclByb3BzPjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZUhhcmRjb3B5OiAoKSA9PiBIYXJkY29weUNvbnRleHRUeXBlO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBR0EsSUFBSSxzQkFBc0I7Q0FBQztPQUFHO09BQUE7T0FBQTtDQUFBO0FBQzlCLElBQUksd0JBQXdCO0NBQUM7T0FBVztPQUFpQjtDQUFlO0FBQ3hFLElBQVcsbUJBQVc7Q0FBQTtPQUFBO09BQUEsTUFBQTtDQUFBO0FBQ3RCLElBQUEsY0FBQSxDQUFBLFdBQUEsb0JBQUEifQ==
@@ -1,29 +1,17 @@
1
- import { WidgetTypeV3 } from "../typesV3.js";
2
- import { WidgetString } from "../../application/models/api/widgetText.js";
3
- import { UserEvent } from "../../application/models/api/userEvent.js";
1
+ import { HardcopyRequest, HardcopyResponse, IHardcopyService } from "../../services/hardcopyService/hardcopyService.js";
4
2
  import { ReactNode } from "react";
5
3
 
6
4
  //#region src/contexts/hardcopyContext/hardcopyContext.d.ts
7
- interface HardcopyRequest {
8
- widgetType: WidgetTypeV3;
9
- userEvent: UserEvent;
10
- }
11
- type HardcopyResponse = {
12
- responseId: string;
13
- language: string;
14
- rawValues?: Record<string, WidgetString | WidgetString[]>;
15
- values: Record<string, string | string[]>;
16
- };
17
5
  interface HardcopyContextType {
18
- getHardcopy: (HardcopyRequest: HardcopyRequest) => Promise<HardcopyResponse>;
6
+ getHardcopy: (request: HardcopyRequest) => Promise<HardcopyResponse>;
19
7
  isLoading: boolean;
20
8
  }
21
9
  interface HardcopyProviderProps {
22
10
  children: ReactNode;
23
- hardcopyOverride?: Partial<Record<WidgetTypeV3, HardcopyResponse>>;
11
+ hardcopyService: IHardcopyService;
24
12
  }
25
13
  declare const HardcopyProvider: React.FC<HardcopyProviderProps>;
26
14
  declare const useHardcopy: () => HardcopyContextType;
27
15
  //#endregion
28
- export { HardcopyProvider, HardcopyResponse, useHardcopy };
29
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmQudHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL2hhcmRjb3B5Q29udGV4dC9oYXJkY29weUNvbnRleHQuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBXaWRnZXRTdHJpbmcgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2FwaS93aWRnZXRUZXh0JztcbmltcG9ydCB7IFVzZXJFdmVudCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuaW1wb3J0IHsgV2lkZ2V0VHlwZVYzIH0gZnJvbSAnLi4vdHlwZXNWMyc7XG5pbnRlcmZhY2UgSGFyZGNvcHlSZXF1ZXN0IHtcbiAgICB3aWRnZXRUeXBlOiBXaWRnZXRUeXBlVjM7XG4gICAgdXNlckV2ZW50OiBVc2VyRXZlbnQ7XG59XG5leHBvcnQgdHlwZSBIYXJkY29weVJlc3BvbnNlID0ge1xuICAgIHJlc3BvbnNlSWQ6IHN0cmluZztcbiAgICBsYW5ndWFnZTogc3RyaW5nO1xuICAgIHJhd1ZhbHVlcz86IFJlY29yZDxzdHJpbmcsIFdpZGdldFN0cmluZyB8IFdpZGdldFN0cmluZ1tdPjtcbiAgICB2YWx1ZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHN0cmluZ1tdPjtcbn07XG5pbnRlcmZhY2UgSGFyZGNvcHlDb250ZXh0VHlwZSB7XG4gICAgZ2V0SGFyZGNvcHk6IChIYXJkY29weVJlcXVlc3Q6IEhhcmRjb3B5UmVxdWVzdCkgPT4gUHJvbWlzZTxIYXJkY29weVJlc3BvbnNlPjtcbiAgICBpc0xvYWRpbmc6IGJvb2xlYW47XG59XG5pbnRlcmZhY2UgSGFyZGNvcHlQcm92aWRlclByb3BzIHtcbiAgICBjaGlsZHJlbjogUmVhY3ROb2RlO1xuICAgIGhhcmRjb3B5T3ZlcnJpZGU/OiBQYXJ0aWFsPFJlY29yZDxXaWRnZXRUeXBlVjMsIEhhcmRjb3B5UmVzcG9uc2U+Pjtcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IEhhcmRjb3B5UHJvdmlkZXI6IFJlYWN0LkZDPEhhcmRjb3B5UHJvdmlkZXJQcm9wcz47XG5leHBvcnQgZGVjbGFyZSBjb25zdCB1c2VIYXJkY29weTogKCkgPT4gSGFyZGNvcHlDb250ZXh0VHlwZTtcbmV4cG9ydCB7fTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBSUEsSUFBSSxrQkFBa0I7Q0FBQztPQUFHO09BQUE7Q0FBQTtBQUMxQixJQUFXLG1CQUFpQjtDQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7Q0FBQTtBQUM1QixJQUFJLHNCQUFvQjtDQUFBO09BQUE7T0FBQTtPQUFBO0NBQUE7QUFDeEIsSUFBQSx3QkFBQTtDQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ0EsSUFBVyxtQkFBbUI7Q0FBQztPQUFBO09BQUEsTUFBQTtDQUFBO0FBQy9CLElBQVcsY0FBVyxDQUFBLFdBQUEsb0JBQUEifQ==
16
+ export { HardcopyProvider, useHardcopy };
17
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmQudHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL2hhcmRjb3B5Q29udGV4dC9oYXJkY29weUNvbnRleHQuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBIYXJkY29weVJlcXVlc3QsIEhhcmRjb3B5UmVzcG9uc2UsIElIYXJkY29weVNlcnZpY2UgfSBmcm9tICdzcmMvc2VydmljZXMvaGFyZGNvcHlTZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHsgSGFyZGNvcHlSZXF1ZXN0LCBIYXJkY29weVJlc3BvbnNlIH0gZnJvbSAnc3JjL3NlcnZpY2VzL2hhcmRjb3B5U2VydmljZSc7XG5pbnRlcmZhY2UgSGFyZGNvcHlDb250ZXh0VHlwZSB7XG4gICAgZ2V0SGFyZGNvcHk6IChyZXF1ZXN0OiBIYXJkY29weVJlcXVlc3QpID0+IFByb21pc2U8SGFyZGNvcHlSZXNwb25zZT47XG4gICAgaXNMb2FkaW5nOiBib29sZWFuO1xufVxuaW50ZXJmYWNlIEhhcmRjb3B5UHJvdmlkZXJQcm9wcyB7XG4gICAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbiAgICBoYXJkY29weVNlcnZpY2U6IElIYXJkY29weVNlcnZpY2U7XG59XG5leHBvcnQgZGVjbGFyZSBjb25zdCBIYXJkY29weVByb3ZpZGVyOiBSZWFjdC5GQzxIYXJkY29weVByb3ZpZGVyUHJvcHM+O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlSGFyZGNvcHk6ICgpID0+IEhhcmRjb3B5Q29udGV4dFR5cGU7XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFHQSxJQUFJLHNCQUFzQjtDQUFDO09BQUc7T0FBQTtPQUFBO0NBQUE7QUFDOUIsSUFBSSx3QkFBd0I7Q0FBQztPQUFXO09BQWlCO0NBQWU7QUFDeEUsSUFBVyxtQkFBVztDQUFBO09BQUE7T0FBQSxNQUFBO0NBQUE7QUFDdEIsSUFBQSxjQUFBLENBQUEsV0FBQSxvQkFBQSJ9