@wix/web5-core 1.56.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (947) hide show
  1. package/README.md +8 -0
  2. package/dist/cjs/client/clientBundleOverride.js +48 -0
  3. package/dist/cjs/client/clientBundleOverride.js.map +1 -0
  4. package/dist/cjs/client/devEnvironment.js +4 -0
  5. package/dist/cjs/client/devEnvironment.js.map +1 -0
  6. package/dist/cjs/client/loadClientBundle.js +85 -0
  7. package/dist/cjs/client/loadClientBundle.js.map +1 -0
  8. package/dist/cjs/client/wixAuthFetch.js +73 -0
  9. package/dist/cjs/client/wixAuthFetch.js.map +1 -0
  10. package/dist/cjs/clients.js +15 -0
  11. package/dist/cjs/clients.js.map +1 -0
  12. package/dist/cjs/color/colorUtils.js +126 -0
  13. package/dist/cjs/color/colorUtils.js.map +1 -0
  14. package/dist/cjs/component/componentDefinitions/CalloutSectionDefinition.js +67 -0
  15. package/dist/cjs/component/componentDefinitions/CalloutSectionDefinition.js.map +1 -0
  16. package/dist/cjs/component/componentDefinitions/ComparisonSectionDefinition.js +141 -0
  17. package/dist/cjs/component/componentDefinitions/ComparisonSectionDefinition.js.map +1 -0
  18. package/dist/cjs/component/componentDefinitions/CtaBannerSectionDefinition.js +85 -0
  19. package/dist/cjs/component/componentDefinitions/CtaBannerSectionDefinition.js.map +1 -0
  20. package/dist/cjs/component/componentDefinitions/EntitySectionDefinition.js +171 -0
  21. package/dist/cjs/component/componentDefinitions/EntitySectionDefinition.js.map +1 -0
  22. package/dist/cjs/component/componentDefinitions/ErrorSectionDefinition.js +81 -0
  23. package/dist/cjs/component/componentDefinitions/ErrorSectionDefinition.js.map +1 -0
  24. package/dist/cjs/component/componentDefinitions/FallbackSectionDefinition.js +29 -0
  25. package/dist/cjs/component/componentDefinitions/FallbackSectionDefinition.js.map +1 -0
  26. package/dist/cjs/component/componentDefinitions/FeatureCardsSectionDefinition.js +119 -0
  27. package/dist/cjs/component/componentDefinitions/FeatureCardsSectionDefinition.js.map +1 -0
  28. package/dist/cjs/component/componentDefinitions/FeatureSection9PlusDefinition.js +75 -0
  29. package/dist/cjs/component/componentDefinitions/FeatureSection9PlusDefinition.js.map +1 -0
  30. package/dist/cjs/component/componentDefinitions/HeroEntitySectionDefinition.js +124 -0
  31. package/dist/cjs/component/componentDefinitions/HeroEntitySectionDefinition.js.map +1 -0
  32. package/dist/cjs/component/componentDefinitions/HeroSectionDefinition.js +209 -0
  33. package/dist/cjs/component/componentDefinitions/HeroSectionDefinition.js.map +1 -0
  34. package/dist/cjs/component/componentDefinitions/HtmlCommentSectionDefinition.js +19 -0
  35. package/dist/cjs/component/componentDefinitions/HtmlCommentSectionDefinition.js.map +1 -0
  36. package/dist/cjs/component/componentDefinitions/KpiSectionDefinition.js +114 -0
  37. package/dist/cjs/component/componentDefinitions/KpiSectionDefinition.js.map +1 -0
  38. package/dist/cjs/component/componentDefinitions/NextStepsSectionDefinition.js +136 -0
  39. package/dist/cjs/component/componentDefinitions/NextStepsSectionDefinition.js.map +1 -0
  40. package/dist/cjs/component/componentDefinitions/SearchSectionDefinition.js +18 -0
  41. package/dist/cjs/component/componentDefinitions/SearchSectionDefinition.js.map +1 -0
  42. package/dist/cjs/component/componentDefinitions/SkipNodesSectionDefinition.js +20 -0
  43. package/dist/cjs/component/componentDefinitions/SkipNodesSectionDefinition.js.map +1 -0
  44. package/dist/cjs/component/componentDefinitions/TextBlockSectionDefinition.js +65 -0
  45. package/dist/cjs/component/componentDefinitions/TextBlockSectionDefinition.js.map +1 -0
  46. package/dist/cjs/component/componentDefinitions/index.js +48 -0
  47. package/dist/cjs/component/componentDefinitions/index.js.map +1 -0
  48. package/dist/cjs/component/componentDefinitions/listItemsSectionDefinition.js +86 -0
  49. package/dist/cjs/component/componentDefinitions/listItemsSectionDefinition.js.map +1 -0
  50. package/dist/cjs/component/componentDefinitions/parse-utils.js +434 -0
  51. package/dist/cjs/component/componentDefinitions/parse-utils.js.map +1 -0
  52. package/dist/cjs/component/componentDefinitions/specHelpers.js +36 -0
  53. package/dist/cjs/component/componentDefinitions/specHelpers.js.map +1 -0
  54. package/dist/cjs/component/componentParser.js +365 -0
  55. package/dist/cjs/component/componentParser.js.map +1 -0
  56. package/dist/cjs/component/diagnosticTypes.js +30 -0
  57. package/dist/cjs/component/diagnosticTypes.js.map +1 -0
  58. package/dist/cjs/component/parser-types.js +4 -0
  59. package/dist/cjs/component/parser-types.js.map +1 -0
  60. package/dist/cjs/component/section-definition.js +4 -0
  61. package/dist/cjs/component/section-definition.js.map +1 -0
  62. package/dist/cjs/component/types.js +4 -0
  63. package/dist/cjs/component/types.js.map +1 -0
  64. package/dist/cjs/components/placement/PlacementPayloadContext.js +29 -0
  65. package/dist/cjs/components/placement/PlacementPayloadContext.js.map +1 -0
  66. package/dist/cjs/components/placement/PlacementResponseRenderer.css +269 -0
  67. package/dist/cjs/components/placement/PlacementResponseRenderer.js +259 -0
  68. package/dist/cjs/components/placement/PlacementResponseRenderer.js.map +1 -0
  69. package/dist/cjs/components/placement/buildPlacementDependencies.js +214 -0
  70. package/dist/cjs/components/placement/buildPlacementDependencies.js.map +1 -0
  71. package/dist/cjs/components/ui/BottomContainer.js +26 -0
  72. package/dist/cjs/components/ui/BottomContainer.js.map +1 -0
  73. package/dist/cjs/components/ui/CalloutBlock.js +156 -0
  74. package/dist/cjs/components/ui/CalloutBlock.js.map +1 -0
  75. package/dist/cjs/components/ui/Disclaimer.css +35 -0
  76. package/dist/cjs/components/ui/Disclaimer.js +56 -0
  77. package/dist/cjs/components/ui/Disclaimer.js.map +1 -0
  78. package/dist/cjs/components/ui/FeedbackBar.css +267 -0
  79. package/dist/cjs/components/ui/FeedbackBar.js +417 -0
  80. package/dist/cjs/components/ui/FeedbackBar.js.map +1 -0
  81. package/dist/cjs/components/ui/Loader.js +73 -0
  82. package/dist/cjs/components/ui/Loader.js.map +1 -0
  83. package/dist/cjs/components/ui/MarkdownText.js +419 -0
  84. package/dist/cjs/components/ui/MarkdownText.js.map +1 -0
  85. package/dist/cjs/components/ui/OptimizedImage.js +414 -0
  86. package/dist/cjs/components/ui/OptimizedImage.js.map +1 -0
  87. package/dist/cjs/components/ui/PlacementLoader.css +101 -0
  88. package/dist/cjs/components/ui/PlacementLoader.js +62 -0
  89. package/dist/cjs/components/ui/PlacementLoader.js.map +1 -0
  90. package/dist/cjs/components/ui/PromptEntryEmptyState.css +172 -0
  91. package/dist/cjs/components/ui/PromptEntryEmptyState.js +96 -0
  92. package/dist/cjs/components/ui/PromptEntryEmptyState.js.map +1 -0
  93. package/dist/cjs/components/ui/SearchSection.css +538 -0
  94. package/dist/cjs/components/ui/SearchSection.js +550 -0
  95. package/dist/cjs/components/ui/SearchSection.js.map +1 -0
  96. package/dist/cjs/components/ui/SectionSkeleton.css +109 -0
  97. package/dist/cjs/components/ui/SectionSkeleton.js +190 -0
  98. package/dist/cjs/components/ui/SectionSkeleton.js.map +1 -0
  99. package/dist/cjs/components/ui/SmartIcon.js +122 -0
  100. package/dist/cjs/components/ui/SmartIcon.js.map +1 -0
  101. package/dist/cjs/components/ui/UnifiedLink.js +169 -0
  102. package/dist/cjs/components/ui/UnifiedLink.js.map +1 -0
  103. package/dist/cjs/components/ui/UserQuery.js +348 -0
  104. package/dist/cjs/components/ui/UserQuery.js.map +1 -0
  105. package/dist/cjs/components/ui/icons/ArrowTopRightIcon.js +37 -0
  106. package/dist/cjs/components/ui/icons/ArrowTopRightIcon.js.map +1 -0
  107. package/dist/cjs/components/ui/icons/ArrowUpIcon.js +61 -0
  108. package/dist/cjs/components/ui/icons/ArrowUpIcon.js.map +1 -0
  109. package/dist/cjs/components/ui/icons/CheckIcon.js +37 -0
  110. package/dist/cjs/components/ui/icons/CheckIcon.js.map +1 -0
  111. package/dist/cjs/components/ui/icons/CommentIcon.js +34 -0
  112. package/dist/cjs/components/ui/icons/CommentIcon.js.map +1 -0
  113. package/dist/cjs/components/ui/icons/PlusIcon.js +51 -0
  114. package/dist/cjs/components/ui/icons/PlusIcon.js.map +1 -0
  115. package/dist/cjs/components/ui/icons/RedoIcon.js +51 -0
  116. package/dist/cjs/components/ui/icons/RedoIcon.js.map +1 -0
  117. package/dist/cjs/components/ui/icons/ShareIcon.js +81 -0
  118. package/dist/cjs/components/ui/icons/ShareIcon.js.map +1 -0
  119. package/dist/cjs/components/ui/icons/UndoIcon.js +51 -0
  120. package/dist/cjs/components/ui/icons/UndoIcon.js.map +1 -0
  121. package/dist/cjs/components/ui/table.js +159 -0
  122. package/dist/cjs/components/ui/table.js.map +1 -0
  123. package/dist/cjs/context/ChipsContext.js +12 -0
  124. package/dist/cjs/context/ChipsContext.js.map +1 -0
  125. package/dist/cjs/context/ComponentDependenciesContext.js +32 -0
  126. package/dist/cjs/context/ComponentDependenciesContext.js.map +1 -0
  127. package/dist/cjs/entity/defaultExtractor.js +117 -0
  128. package/dist/cjs/entity/defaultExtractor.js.map +1 -0
  129. package/dist/cjs/entity/enrichEntitiesFromPayload.js +39 -0
  130. package/dist/cjs/entity/enrichEntitiesFromPayload.js.map +1 -0
  131. package/dist/cjs/entity/fetchEntityListData.js +78 -0
  132. package/dist/cjs/entity/fetchEntityListData.js.map +1 -0
  133. package/dist/cjs/entity/index.js +41 -0
  134. package/dist/cjs/entity/index.js.map +1 -0
  135. package/dist/cjs/entity/types.js +4 -0
  136. package/dist/cjs/entity/types.js.map +1 -0
  137. package/dist/cjs/errors/conversationErrorTypes.js +56 -0
  138. package/dist/cjs/errors/conversationErrorTypes.js.map +1 -0
  139. package/dist/cjs/errors/errorTemplates.js +86 -0
  140. package/dist/cjs/errors/errorTemplates.js.map +1 -0
  141. package/dist/cjs/errors/index.js +13 -0
  142. package/dist/cjs/errors/index.js.map +1 -0
  143. package/dist/cjs/external-types.d.js +2 -0
  144. package/dist/cjs/external-types.d.js.map +1 -0
  145. package/dist/cjs/featureToggles/FeatureToggleContext.js +44 -0
  146. package/dist/cjs/featureToggles/FeatureToggleContext.js.map +1 -0
  147. package/dist/cjs/hooks/useConversation.js +10 -0
  148. package/dist/cjs/hooks/useConversation.js.map +1 -0
  149. package/dist/cjs/hooks/useDebugImageContext.js +10 -0
  150. package/dist/cjs/hooks/useDebugImageContext.js.map +1 -0
  151. package/dist/cjs/hooks/useEntityTransforms.js +10 -0
  152. package/dist/cjs/hooks/useEntityTransforms.js.map +1 -0
  153. package/dist/cjs/hooks/useMarkdownUtils.js +10 -0
  154. package/dist/cjs/hooks/useMarkdownUtils.js.map +1 -0
  155. package/dist/cjs/hooks/useResolveGenericEntityData.js +10 -0
  156. package/dist/cjs/hooks/useResolveGenericEntityData.js.map +1 -0
  157. package/dist/cjs/hooks/useResolveSearchSpringEntityData.js +146 -0
  158. package/dist/cjs/hooks/useResolveSearchSpringEntityData.js.map +1 -0
  159. package/dist/cjs/hooks/useResolveShopifyEntityData.js +190 -0
  160. package/dist/cjs/hooks/useResolveShopifyEntityData.js.map +1 -0
  161. package/dist/cjs/hooks/useResolvedImageSources.js +160 -0
  162. package/dist/cjs/hooks/useResolvedImageSources.js.map +1 -0
  163. package/dist/cjs/hooks/useWeb5Link.js +10 -0
  164. package/dist/cjs/hooks/useWeb5Link.js.map +1 -0
  165. package/dist/cjs/image/contextualImageTypes.js +4 -0
  166. package/dist/cjs/image/contextualImageTypes.js.map +1 -0
  167. package/dist/cjs/image/imageSearchFilterTypes.js +19 -0
  168. package/dist/cjs/image/imageSearchFilterTypes.js.map +1 -0
  169. package/dist/cjs/image/imageSearchFilters.js +22 -0
  170. package/dist/cjs/image/imageSearchFilters.js.map +1 -0
  171. package/dist/cjs/index.js +285 -0
  172. package/dist/cjs/index.js.map +1 -0
  173. package/dist/cjs/lib/utils.js +33 -0
  174. package/dist/cjs/lib/utils.js.map +1 -0
  175. package/dist/cjs/markdownBlocks.js +645 -0
  176. package/dist/cjs/markdownBlocks.js.map +1 -0
  177. package/dist/cjs/match/astToParts.js +374 -0
  178. package/dist/cjs/match/astToParts.js.map +1 -0
  179. package/dist/cjs/match/extractProps.js +654 -0
  180. package/dist/cjs/match/extractProps.js.map +1 -0
  181. package/dist/cjs/match/index.js +11 -0
  182. package/dist/cjs/match/index.js.map +1 -0
  183. package/dist/cjs/match/matchAllSections.js +34 -0
  184. package/dist/cjs/match/matchAllSections.js.map +1 -0
  185. package/dist/cjs/match/matchMarkdown.js +39 -0
  186. package/dist/cjs/match/matchMarkdown.js.map +1 -0
  187. package/dist/cjs/parts/parts.js +183 -0
  188. package/dist/cjs/parts/parts.js.map +1 -0
  189. package/dist/cjs/patternAnalyzer/conflictDetector.js +103 -0
  190. package/dist/cjs/patternAnalyzer/conflictDetector.js.map +1 -0
  191. package/dist/cjs/patternAnalyzer/index.js +40 -0
  192. package/dist/cjs/patternAnalyzer/index.js.map +1 -0
  193. package/dist/cjs/patternAnalyzer/markdownGenerator.js +347 -0
  194. package/dist/cjs/patternAnalyzer/markdownGenerator.js.map +1 -0
  195. package/dist/cjs/patternAnalyzer/mergeDetector.js +505 -0
  196. package/dist/cjs/patternAnalyzer/mergeDetector.js.map +1 -0
  197. package/dist/cjs/patternAnalyzer/parserValidator.js +56 -0
  198. package/dist/cjs/patternAnalyzer/parserValidator.js.map +1 -0
  199. package/dist/cjs/patternAnalyzer/patternWriter.js +106 -0
  200. package/dist/cjs/patternAnalyzer/patternWriter.js.map +1 -0
  201. package/dist/cjs/patternAnalyzer/run.js +140 -0
  202. package/dist/cjs/patternAnalyzer/run.js.map +1 -0
  203. package/dist/cjs/patternAnalyzer/types.js +4 -0
  204. package/dist/cjs/patternAnalyzer/types.js.map +1 -0
  205. package/dist/cjs/patternValidator/ERROR_MESSAGES.md +110 -0
  206. package/dist/cjs/patternValidator/README.md +757 -0
  207. package/dist/cjs/patternValidator/automaton.js +349 -0
  208. package/dist/cjs/patternValidator/automaton.js.map +1 -0
  209. package/dist/cjs/patternValidator/index.js +196 -0
  210. package/dist/cjs/patternValidator/index.js.map +1 -0
  211. package/dist/cjs/patternValidator/lexer.js +218 -0
  212. package/dist/cjs/patternValidator/lexer.js.map +1 -0
  213. package/dist/cjs/patternValidator/matcher.js +722 -0
  214. package/dist/cjs/patternValidator/matcher.js.map +1 -0
  215. package/dist/cjs/patternValidator/parser.js +533 -0
  216. package/dist/cjs/patternValidator/parser.js.map +1 -0
  217. package/dist/cjs/patternValidator/types.js +4 -0
  218. package/dist/cjs/patternValidator/types.js.map +1 -0
  219. package/dist/cjs/patternValidator/validator.test.js +1277 -0
  220. package/dist/cjs/patternValidator/validator.test.js.map +1 -0
  221. package/dist/cjs/registry/ComponentRegistry.js +438 -0
  222. package/dist/cjs/registry/ComponentRegistry.js.map +1 -0
  223. package/dist/cjs/registry/Intent.js +19 -0
  224. package/dist/cjs/registry/Intent.js.map +1 -0
  225. package/dist/cjs/registry/index.js +9 -0
  226. package/dist/cjs/registry/index.js.map +1 -0
  227. package/dist/cjs/registry/types.js +4 -0
  228. package/dist/cjs/registry/types.js.map +1 -0
  229. package/dist/cjs/services/cart/addToCart.js +147 -0
  230. package/dist/cjs/services/cart/addToCart.js.map +1 -0
  231. package/dist/cjs/services/cart/index.js +7 -0
  232. package/dist/cjs/services/cart/index.js.map +1 -0
  233. package/dist/cjs/services/searchspring/index.js +10 -0
  234. package/dist/cjs/services/searchspring/index.js.map +1 -0
  235. package/dist/cjs/services/searchspring/searchSpringClient.js +49 -0
  236. package/dist/cjs/services/searchspring/searchSpringClient.js.map +1 -0
  237. package/dist/cjs/services/searchspring/transformSSProduct.js +70 -0
  238. package/dist/cjs/services/searchspring/transformSSProduct.js.map +1 -0
  239. package/dist/cjs/services/searchspring/types.js +4 -0
  240. package/dist/cjs/services/searchspring/types.js.map +1 -0
  241. package/dist/cjs/services/shopify/globals.d.js +4 -0
  242. package/dist/cjs/services/shopify/globals.d.js.map +1 -0
  243. package/dist/cjs/services/shopify/index.js +22 -0
  244. package/dist/cjs/services/shopify/index.js.map +1 -0
  245. package/dist/cjs/services/shopify/queries.js +214 -0
  246. package/dist/cjs/services/shopify/queries.js.map +1 -0
  247. package/dist/cjs/services/shopify/resolveStoreDomain.js +28 -0
  248. package/dist/cjs/services/shopify/resolveStoreDomain.js.map +1 -0
  249. package/dist/cjs/services/shopify/shopifyEntityResolver.js +109 -0
  250. package/dist/cjs/services/shopify/shopifyEntityResolver.js.map +1 -0
  251. package/dist/cjs/services/shopify/shopifyStorefrontClient.js +58 -0
  252. package/dist/cjs/services/shopify/shopifyStorefrontClient.js.map +1 -0
  253. package/dist/cjs/services/shopify/transformShopifyEntity.js +137 -0
  254. package/dist/cjs/services/shopify/transformShopifyEntity.js.map +1 -0
  255. package/dist/cjs/services/shopify/types.js +4 -0
  256. package/dist/cjs/services/shopify/types.js.map +1 -0
  257. package/dist/cjs/styles/base-tokens.css +152 -0
  258. package/dist/cjs/styles/base-utilities.css +424 -0
  259. package/dist/cjs/styles/components.css +6 -0
  260. package/dist/cjs/styles/prompt-input-tokens.css +136 -0
  261. package/dist/cjs/styles/tailwind-theme.css +138 -0
  262. package/dist/cjs/test-types.d.js +2 -0
  263. package/dist/cjs/test-types.d.js.map +1 -0
  264. package/dist/cjs/testUtils.js +25 -0
  265. package/dist/cjs/testUtils.js.map +1 -0
  266. package/dist/cjs/types/answerUpdatedEvent.js +20 -0
  267. package/dist/cjs/types/answerUpdatedEvent.js.map +1 -0
  268. package/dist/cjs/types/blog.js +4 -0
  269. package/dist/cjs/types/blog.js.map +1 -0
  270. package/dist/cjs/types/callout.js +6 -0
  271. package/dist/cjs/types/callout.js.map +1 -0
  272. package/dist/cjs/types/dependencies.js +4 -0
  273. package/dist/cjs/types/dependencies.js.map +1 -0
  274. package/dist/cjs/types/entity.js +4 -0
  275. package/dist/cjs/types/entity.js.map +1 -0
  276. package/dist/cjs/types/link-types.js +62 -0
  277. package/dist/cjs/types/link-types.js.map +1 -0
  278. package/dist/cjs/types/page-section.js +4 -0
  279. package/dist/cjs/types/page-section.js.map +1 -0
  280. package/dist/cjs/types/placement.js +4 -0
  281. package/dist/cjs/types/placement.js.map +1 -0
  282. package/dist/cjs/types/redirectEvent.js +27 -0
  283. package/dist/cjs/types/redirectEvent.js.map +1 -0
  284. package/dist/cjs/types/userQueryEvent.js +19 -0
  285. package/dist/cjs/types/userQueryEvent.js.map +1 -0
  286. package/dist/cjs/utils/analyticsEvents.js +91 -0
  287. package/dist/cjs/utils/analyticsEvents.js.map +1 -0
  288. package/dist/cjs/utils/componentTracking.js +90 -0
  289. package/dist/cjs/utils/componentTracking.js.map +1 -0
  290. package/dist/cjs/utils/contentKeywordMatcher.js +56 -0
  291. package/dist/cjs/utils/contentKeywordMatcher.js.map +1 -0
  292. package/dist/cjs/utils/conversationApi.js +52 -0
  293. package/dist/cjs/utils/conversationApi.js.map +1 -0
  294. package/dist/cjs/utils/conversationMode.js +23 -0
  295. package/dist/cjs/utils/conversationMode.js.map +1 -0
  296. package/dist/cjs/utils/diagnosticsCollector.js +58 -0
  297. package/dist/cjs/utils/diagnosticsCollector.js.map +1 -0
  298. package/dist/cjs/utils/entityLinkParser.js +256 -0
  299. package/dist/cjs/utils/entityLinkParser.js.map +1 -0
  300. package/dist/cjs/utils/htmlCommentParser.js +122 -0
  301. package/dist/cjs/utils/htmlCommentParser.js.map +1 -0
  302. package/dist/cjs/utils/image-utils.js +49 -0
  303. package/dist/cjs/utils/image-utils.js.map +1 -0
  304. package/dist/cjs/utils/intentExtractor.js +47 -0
  305. package/dist/cjs/utils/intentExtractor.js.map +1 -0
  306. package/dist/cjs/utils/markdownPreprocessor.js +268 -0
  307. package/dist/cjs/utils/markdownPreprocessor.js.map +1 -0
  308. package/dist/cjs/utils/navigationStack.js +35 -0
  309. package/dist/cjs/utils/navigationStack.js.map +1 -0
  310. package/dist/cjs/utils/nodeMatchers.js +43 -0
  311. package/dist/cjs/utils/nodeMatchers.js.map +1 -0
  312. package/dist/cjs/utils/propsExtractor.js +66 -0
  313. package/dist/cjs/utils/propsExtractor.js.map +1 -0
  314. package/dist/cjs/utils/sessionManager.js +161 -0
  315. package/dist/cjs/utils/sessionManager.js.map +1 -0
  316. package/dist/cjs/utils/unifiedMarkdownParser.js +44 -0
  317. package/dist/cjs/utils/unifiedMarkdownParser.js.map +1 -0
  318. package/dist/cjs/utils/web5LinkValidator.js +56 -0
  319. package/dist/cjs/utils/web5LinkValidator.js.map +1 -0
  320. package/dist/cjs/utils/web5LinkValidator.test.js +115 -0
  321. package/dist/cjs/utils/web5LinkValidator.test.js.map +1 -0
  322. package/dist/esm/client/clientBundleOverride.js +43 -0
  323. package/dist/esm/client/clientBundleOverride.js.map +1 -0
  324. package/dist/esm/client/devEnvironment.js +2 -0
  325. package/dist/esm/client/devEnvironment.js.map +1 -0
  326. package/dist/esm/client/loadClientBundle.js +82 -0
  327. package/dist/esm/client/loadClientBundle.js.map +1 -0
  328. package/dist/esm/client/wixAuthFetch.js +68 -0
  329. package/dist/esm/client/wixAuthFetch.js.map +1 -0
  330. package/dist/esm/clients.js +11 -0
  331. package/dist/esm/clients.js.map +1 -0
  332. package/dist/esm/color/colorUtils.js +118 -0
  333. package/dist/esm/color/colorUtils.js.map +1 -0
  334. package/dist/esm/component/componentDefinitions/CalloutSectionDefinition.js +61 -0
  335. package/dist/esm/component/componentDefinitions/CalloutSectionDefinition.js.map +1 -0
  336. package/dist/esm/component/componentDefinitions/ComparisonSectionDefinition.js +135 -0
  337. package/dist/esm/component/componentDefinitions/ComparisonSectionDefinition.js.map +1 -0
  338. package/dist/esm/component/componentDefinitions/CtaBannerSectionDefinition.js +79 -0
  339. package/dist/esm/component/componentDefinitions/CtaBannerSectionDefinition.js.map +1 -0
  340. package/dist/esm/component/componentDefinitions/EntitySectionDefinition.js +165 -0
  341. package/dist/esm/component/componentDefinitions/EntitySectionDefinition.js.map +1 -0
  342. package/dist/esm/component/componentDefinitions/ErrorSectionDefinition.js +75 -0
  343. package/dist/esm/component/componentDefinitions/ErrorSectionDefinition.js.map +1 -0
  344. package/dist/esm/component/componentDefinitions/FallbackSectionDefinition.js +23 -0
  345. package/dist/esm/component/componentDefinitions/FallbackSectionDefinition.js.map +1 -0
  346. package/dist/esm/component/componentDefinitions/FeatureCardsSectionDefinition.js +113 -0
  347. package/dist/esm/component/componentDefinitions/FeatureCardsSectionDefinition.js.map +1 -0
  348. package/dist/esm/component/componentDefinitions/FeatureSection9PlusDefinition.js +69 -0
  349. package/dist/esm/component/componentDefinitions/FeatureSection9PlusDefinition.js.map +1 -0
  350. package/dist/esm/component/componentDefinitions/HeroEntitySectionDefinition.js +119 -0
  351. package/dist/esm/component/componentDefinitions/HeroEntitySectionDefinition.js.map +1 -0
  352. package/dist/esm/component/componentDefinitions/HeroSectionDefinition.js +203 -0
  353. package/dist/esm/component/componentDefinitions/HeroSectionDefinition.js.map +1 -0
  354. package/dist/esm/component/componentDefinitions/HtmlCommentSectionDefinition.js +13 -0
  355. package/dist/esm/component/componentDefinitions/HtmlCommentSectionDefinition.js.map +1 -0
  356. package/dist/esm/component/componentDefinitions/KpiSectionDefinition.js +108 -0
  357. package/dist/esm/component/componentDefinitions/KpiSectionDefinition.js.map +1 -0
  358. package/dist/esm/component/componentDefinitions/NextStepsSectionDefinition.js +130 -0
  359. package/dist/esm/component/componentDefinitions/NextStepsSectionDefinition.js.map +1 -0
  360. package/dist/esm/component/componentDefinitions/SearchSectionDefinition.js +12 -0
  361. package/dist/esm/component/componentDefinitions/SearchSectionDefinition.js.map +1 -0
  362. package/dist/esm/component/componentDefinitions/SkipNodesSectionDefinition.js +14 -0
  363. package/dist/esm/component/componentDefinitions/SkipNodesSectionDefinition.js.map +1 -0
  364. package/dist/esm/component/componentDefinitions/TextBlockSectionDefinition.js +59 -0
  365. package/dist/esm/component/componentDefinitions/TextBlockSectionDefinition.js.map +1 -0
  366. package/dist/esm/component/componentDefinitions/index.js +45 -0
  367. package/dist/esm/component/componentDefinitions/index.js.map +1 -0
  368. package/dist/esm/component/componentDefinitions/listItemsSectionDefinition.js +80 -0
  369. package/dist/esm/component/componentDefinitions/listItemsSectionDefinition.js.map +1 -0
  370. package/dist/esm/component/componentDefinitions/parse-utils.js +412 -0
  371. package/dist/esm/component/componentDefinitions/parse-utils.js.map +1 -0
  372. package/dist/esm/component/componentDefinitions/specHelpers.js +31 -0
  373. package/dist/esm/component/componentDefinitions/specHelpers.js.map +1 -0
  374. package/dist/esm/component/componentParser.js +358 -0
  375. package/dist/esm/component/componentParser.js.map +1 -0
  376. package/dist/esm/component/diagnosticTypes.js +26 -0
  377. package/dist/esm/component/diagnosticTypes.js.map +1 -0
  378. package/dist/esm/component/parser-types.js +2 -0
  379. package/dist/esm/component/parser-types.js.map +1 -0
  380. package/dist/esm/component/section-definition.js +2 -0
  381. package/dist/esm/component/section-definition.js.map +1 -0
  382. package/dist/esm/component/types.js +2 -0
  383. package/dist/esm/component/types.js.map +1 -0
  384. package/dist/esm/components/placement/PlacementPayloadContext.js +24 -0
  385. package/dist/esm/components/placement/PlacementPayloadContext.js.map +1 -0
  386. package/dist/esm/components/placement/PlacementResponseRenderer.css +269 -0
  387. package/dist/esm/components/placement/PlacementResponseRenderer.js +173 -0
  388. package/dist/esm/components/placement/PlacementResponseRenderer.js.map +1 -0
  389. package/dist/esm/components/placement/buildPlacementDependencies.js +212 -0
  390. package/dist/esm/components/placement/buildPlacementDependencies.js.map +1 -0
  391. package/dist/esm/components/ui/BottomContainer.js +14 -0
  392. package/dist/esm/components/ui/BottomContainer.js.map +1 -0
  393. package/dist/esm/components/ui/CalloutBlock.js +118 -0
  394. package/dist/esm/components/ui/CalloutBlock.js.map +1 -0
  395. package/dist/esm/components/ui/Disclaimer.css +35 -0
  396. package/dist/esm/components/ui/Disclaimer.js +32 -0
  397. package/dist/esm/components/ui/Disclaimer.js.map +1 -0
  398. package/dist/esm/components/ui/FeedbackBar.css +267 -0
  399. package/dist/esm/components/ui/FeedbackBar.js +221 -0
  400. package/dist/esm/components/ui/FeedbackBar.js.map +1 -0
  401. package/dist/esm/components/ui/Loader.js +43 -0
  402. package/dist/esm/components/ui/Loader.js.map +1 -0
  403. package/dist/esm/components/ui/MarkdownText.js +283 -0
  404. package/dist/esm/components/ui/MarkdownText.js.map +1 -0
  405. package/dist/esm/components/ui/OptimizedImage.js +354 -0
  406. package/dist/esm/components/ui/OptimizedImage.js.map +1 -0
  407. package/dist/esm/components/ui/PlacementLoader.css +101 -0
  408. package/dist/esm/components/ui/PlacementLoader.js +28 -0
  409. package/dist/esm/components/ui/PlacementLoader.js.map +1 -0
  410. package/dist/esm/components/ui/PromptEntryEmptyState.css +172 -0
  411. package/dist/esm/components/ui/PromptEntryEmptyState.js +36 -0
  412. package/dist/esm/components/ui/PromptEntryEmptyState.js.map +1 -0
  413. package/dist/esm/components/ui/SearchSection.css +538 -0
  414. package/dist/esm/components/ui/SearchSection.js +317 -0
  415. package/dist/esm/components/ui/SearchSection.js.map +1 -0
  416. package/dist/esm/components/ui/SectionSkeleton.css +109 -0
  417. package/dist/esm/components/ui/SectionSkeleton.js +100 -0
  418. package/dist/esm/components/ui/SectionSkeleton.js.map +1 -0
  419. package/dist/esm/components/ui/SmartIcon.js +91 -0
  420. package/dist/esm/components/ui/SmartIcon.js.map +1 -0
  421. package/dist/esm/components/ui/UnifiedLink.js +105 -0
  422. package/dist/esm/components/ui/UnifiedLink.js.map +1 -0
  423. package/dist/esm/components/ui/UserQuery.js +167 -0
  424. package/dist/esm/components/ui/UserQuery.js.map +1 -0
  425. package/dist/esm/components/ui/icons/ArrowTopRightIcon.js +17 -0
  426. package/dist/esm/components/ui/icons/ArrowTopRightIcon.js.map +1 -0
  427. package/dist/esm/components/ui/icons/ArrowUpIcon.js +29 -0
  428. package/dist/esm/components/ui/icons/ArrowUpIcon.js.map +1 -0
  429. package/dist/esm/components/ui/icons/CheckIcon.js +17 -0
  430. package/dist/esm/components/ui/icons/CheckIcon.js.map +1 -0
  431. package/dist/esm/components/ui/icons/CommentIcon.js +15 -0
  432. package/dist/esm/components/ui/icons/CommentIcon.js.map +1 -0
  433. package/dist/esm/components/ui/icons/PlusIcon.js +25 -0
  434. package/dist/esm/components/ui/icons/PlusIcon.js.map +1 -0
  435. package/dist/esm/components/ui/icons/RedoIcon.js +25 -0
  436. package/dist/esm/components/ui/icons/RedoIcon.js.map +1 -0
  437. package/dist/esm/components/ui/icons/ShareIcon.js +37 -0
  438. package/dist/esm/components/ui/icons/ShareIcon.js.map +1 -0
  439. package/dist/esm/components/ui/icons/UndoIcon.js +25 -0
  440. package/dist/esm/components/ui/icons/UndoIcon.js.map +1 -0
  441. package/dist/esm/components/ui/table.js +92 -0
  442. package/dist/esm/components/ui/table.js.map +1 -0
  443. package/dist/esm/context/ChipsContext.js +7 -0
  444. package/dist/esm/context/ChipsContext.js.map +1 -0
  445. package/dist/esm/context/ComponentDependenciesContext.js +19 -0
  446. package/dist/esm/context/ComponentDependenciesContext.js.map +1 -0
  447. package/dist/esm/entity/defaultExtractor.js +111 -0
  448. package/dist/esm/entity/defaultExtractor.js.map +1 -0
  449. package/dist/esm/entity/enrichEntitiesFromPayload.js +35 -0
  450. package/dist/esm/entity/enrichEntitiesFromPayload.js.map +1 -0
  451. package/dist/esm/entity/fetchEntityListData.js +76 -0
  452. package/dist/esm/entity/fetchEntityListData.js.map +1 -0
  453. package/dist/esm/entity/index.js +29 -0
  454. package/dist/esm/entity/index.js.map +1 -0
  455. package/dist/esm/entity/types.js +2 -0
  456. package/dist/esm/entity/types.js.map +1 -0
  457. package/dist/esm/errors/conversationErrorTypes.js +50 -0
  458. package/dist/esm/errors/conversationErrorTypes.js.map +1 -0
  459. package/dist/esm/errors/errorTemplates.js +81 -0
  460. package/dist/esm/errors/errorTemplates.js.map +1 -0
  461. package/dist/esm/errors/index.js +3 -0
  462. package/dist/esm/errors/index.js.map +1 -0
  463. package/dist/esm/external-types.d.js +2 -0
  464. package/dist/esm/external-types.d.js.map +1 -0
  465. package/dist/esm/featureToggles/FeatureToggleContext.js +30 -0
  466. package/dist/esm/featureToggles/FeatureToggleContext.js.map +1 -0
  467. package/dist/esm/hooks/useConversation.js +6 -0
  468. package/dist/esm/hooks/useConversation.js.map +1 -0
  469. package/dist/esm/hooks/useDebugImageContext.js +6 -0
  470. package/dist/esm/hooks/useDebugImageContext.js.map +1 -0
  471. package/dist/esm/hooks/useEntityTransforms.js +6 -0
  472. package/dist/esm/hooks/useEntityTransforms.js.map +1 -0
  473. package/dist/esm/hooks/useMarkdownUtils.js +6 -0
  474. package/dist/esm/hooks/useMarkdownUtils.js.map +1 -0
  475. package/dist/esm/hooks/useResolveGenericEntityData.js +6 -0
  476. package/dist/esm/hooks/useResolveGenericEntityData.js.map +1 -0
  477. package/dist/esm/hooks/useResolveSearchSpringEntityData.js +146 -0
  478. package/dist/esm/hooks/useResolveSearchSpringEntityData.js.map +1 -0
  479. package/dist/esm/hooks/useResolveShopifyEntityData.js +191 -0
  480. package/dist/esm/hooks/useResolveShopifyEntityData.js.map +1 -0
  481. package/dist/esm/hooks/useResolvedImageSources.js +169 -0
  482. package/dist/esm/hooks/useResolvedImageSources.js.map +1 -0
  483. package/dist/esm/hooks/useWeb5Link.js +6 -0
  484. package/dist/esm/hooks/useWeb5Link.js.map +1 -0
  485. package/dist/esm/image/contextualImageTypes.js +2 -0
  486. package/dist/esm/image/contextualImageTypes.js.map +1 -0
  487. package/dist/esm/image/imageSearchFilterTypes.js +15 -0
  488. package/dist/esm/image/imageSearchFilterTypes.js.map +1 -0
  489. package/dist/esm/image/imageSearchFilters.js +18 -0
  490. package/dist/esm/image/imageSearchFilters.js.map +1 -0
  491. package/dist/esm/index.js +152 -0
  492. package/dist/esm/index.js.map +1 -0
  493. package/dist/esm/lib/utils.js +33 -0
  494. package/dist/esm/lib/utils.js.map +1 -0
  495. package/dist/esm/markdownBlocks.js +641 -0
  496. package/dist/esm/markdownBlocks.js.map +1 -0
  497. package/dist/esm/match/astToParts.js +371 -0
  498. package/dist/esm/match/astToParts.js.map +1 -0
  499. package/dist/esm/match/extractProps.js +634 -0
  500. package/dist/esm/match/extractProps.js.map +1 -0
  501. package/dist/esm/match/index.js +4 -0
  502. package/dist/esm/match/index.js.map +1 -0
  503. package/dist/esm/match/matchAllSections.js +31 -0
  504. package/dist/esm/match/matchAllSections.js.map +1 -0
  505. package/dist/esm/match/matchMarkdown.js +36 -0
  506. package/dist/esm/match/matchMarkdown.js.map +1 -0
  507. package/dist/esm/parts/parts.js +171 -0
  508. package/dist/esm/parts/parts.js.map +1 -0
  509. package/dist/esm/patternAnalyzer/conflictDetector.js +99 -0
  510. package/dist/esm/patternAnalyzer/conflictDetector.js.map +1 -0
  511. package/dist/esm/patternAnalyzer/index.js +36 -0
  512. package/dist/esm/patternAnalyzer/index.js.map +1 -0
  513. package/dist/esm/patternAnalyzer/markdownGenerator.js +344 -0
  514. package/dist/esm/patternAnalyzer/markdownGenerator.js.map +1 -0
  515. package/dist/esm/patternAnalyzer/mergeDetector.js +504 -0
  516. package/dist/esm/patternAnalyzer/mergeDetector.js.map +1 -0
  517. package/dist/esm/patternAnalyzer/parserValidator.js +52 -0
  518. package/dist/esm/patternAnalyzer/parserValidator.js.map +1 -0
  519. package/dist/esm/patternAnalyzer/patternWriter.js +102 -0
  520. package/dist/esm/patternAnalyzer/patternWriter.js.map +1 -0
  521. package/dist/esm/patternAnalyzer/run.js +138 -0
  522. package/dist/esm/patternAnalyzer/run.js.map +1 -0
  523. package/dist/esm/patternAnalyzer/types.js +2 -0
  524. package/dist/esm/patternAnalyzer/types.js.map +1 -0
  525. package/dist/esm/patternValidator/ERROR_MESSAGES.md +110 -0
  526. package/dist/esm/patternValidator/README.md +757 -0
  527. package/dist/esm/patternValidator/automaton.js +345 -0
  528. package/dist/esm/patternValidator/automaton.js.map +1 -0
  529. package/dist/esm/patternValidator/index.js +190 -0
  530. package/dist/esm/patternValidator/index.js.map +1 -0
  531. package/dist/esm/patternValidator/lexer.js +214 -0
  532. package/dist/esm/patternValidator/lexer.js.map +1 -0
  533. package/dist/esm/patternValidator/matcher.js +717 -0
  534. package/dist/esm/patternValidator/matcher.js.map +1 -0
  535. package/dist/esm/patternValidator/parser.js +531 -0
  536. package/dist/esm/patternValidator/parser.js.map +1 -0
  537. package/dist/esm/patternValidator/types.js +2 -0
  538. package/dist/esm/patternValidator/types.js.map +1 -0
  539. package/dist/esm/patternValidator/validator.test.js +1275 -0
  540. package/dist/esm/patternValidator/validator.test.js.map +1 -0
  541. package/dist/esm/registry/ComponentRegistry.js +435 -0
  542. package/dist/esm/registry/ComponentRegistry.js.map +1 -0
  543. package/dist/esm/registry/Intent.js +15 -0
  544. package/dist/esm/registry/Intent.js.map +1 -0
  545. package/dist/esm/registry/index.js +3 -0
  546. package/dist/esm/registry/index.js.map +1 -0
  547. package/dist/esm/registry/types.js +2 -0
  548. package/dist/esm/registry/types.js.map +1 -0
  549. package/dist/esm/services/cart/addToCart.js +146 -0
  550. package/dist/esm/services/cart/addToCart.js.map +1 -0
  551. package/dist/esm/services/cart/index.js +2 -0
  552. package/dist/esm/services/cart/index.js.map +1 -0
  553. package/dist/esm/services/searchspring/index.js +3 -0
  554. package/dist/esm/services/searchspring/index.js.map +1 -0
  555. package/dist/esm/services/searchspring/searchSpringClient.js +44 -0
  556. package/dist/esm/services/searchspring/searchSpringClient.js.map +1 -0
  557. package/dist/esm/services/searchspring/transformSSProduct.js +66 -0
  558. package/dist/esm/services/searchspring/transformSSProduct.js.map +1 -0
  559. package/dist/esm/services/searchspring/types.js +2 -0
  560. package/dist/esm/services/searchspring/types.js.map +1 -0
  561. package/dist/esm/services/shopify/globals.d.js +7 -0
  562. package/dist/esm/services/shopify/globals.d.js.map +1 -0
  563. package/dist/esm/services/shopify/index.js +6 -0
  564. package/dist/esm/services/shopify/index.js.map +1 -0
  565. package/dist/esm/services/shopify/queries.js +210 -0
  566. package/dist/esm/services/shopify/queries.js.map +1 -0
  567. package/dist/esm/services/shopify/resolveStoreDomain.js +25 -0
  568. package/dist/esm/services/shopify/resolveStoreDomain.js.map +1 -0
  569. package/dist/esm/services/shopify/shopifyEntityResolver.js +105 -0
  570. package/dist/esm/services/shopify/shopifyEntityResolver.js.map +1 -0
  571. package/dist/esm/services/shopify/shopifyStorefrontClient.js +52 -0
  572. package/dist/esm/services/shopify/shopifyStorefrontClient.js.map +1 -0
  573. package/dist/esm/services/shopify/transformShopifyEntity.js +130 -0
  574. package/dist/esm/services/shopify/transformShopifyEntity.js.map +1 -0
  575. package/dist/esm/services/shopify/types.js +2 -0
  576. package/dist/esm/services/shopify/types.js.map +1 -0
  577. package/dist/esm/styles/base-tokens.css +152 -0
  578. package/dist/esm/styles/base-utilities.css +424 -0
  579. package/dist/esm/styles/components.css +6 -0
  580. package/dist/esm/styles/prompt-input-tokens.css +136 -0
  581. package/dist/esm/styles/tailwind-theme.css +138 -0
  582. package/dist/esm/test-types.d.js +2 -0
  583. package/dist/esm/test-types.d.js.map +1 -0
  584. package/dist/esm/testUtils.js +20 -0
  585. package/dist/esm/testUtils.js.map +1 -0
  586. package/dist/esm/types/answerUpdatedEvent.js +16 -0
  587. package/dist/esm/types/answerUpdatedEvent.js.map +1 -0
  588. package/dist/esm/types/blog.js +2 -0
  589. package/dist/esm/types/blog.js.map +1 -0
  590. package/dist/esm/types/callout.js +2 -0
  591. package/dist/esm/types/callout.js.map +1 -0
  592. package/dist/esm/types/dependencies.js +2 -0
  593. package/dist/esm/types/dependencies.js.map +1 -0
  594. package/dist/esm/types/entity.js +2 -0
  595. package/dist/esm/types/entity.js.map +1 -0
  596. package/dist/esm/types/link-types.js +52 -0
  597. package/dist/esm/types/link-types.js.map +1 -0
  598. package/dist/esm/types/page-section.js +2 -0
  599. package/dist/esm/types/page-section.js.map +1 -0
  600. package/dist/esm/types/placement.js +2 -0
  601. package/dist/esm/types/placement.js.map +1 -0
  602. package/dist/esm/types/redirectEvent.js +23 -0
  603. package/dist/esm/types/redirectEvent.js.map +1 -0
  604. package/dist/esm/types/userQueryEvent.js +15 -0
  605. package/dist/esm/types/userQueryEvent.js.map +1 -0
  606. package/dist/esm/utils/analyticsEvents.js +84 -0
  607. package/dist/esm/utils/analyticsEvents.js.map +1 -0
  608. package/dist/esm/utils/componentTracking.js +84 -0
  609. package/dist/esm/utils/componentTracking.js.map +1 -0
  610. package/dist/esm/utils/contentKeywordMatcher.js +50 -0
  611. package/dist/esm/utils/contentKeywordMatcher.js.map +1 -0
  612. package/dist/esm/utils/conversationApi.js +45 -0
  613. package/dist/esm/utils/conversationApi.js.map +1 -0
  614. package/dist/esm/utils/conversationMode.js +18 -0
  615. package/dist/esm/utils/conversationMode.js.map +1 -0
  616. package/dist/esm/utils/diagnosticsCollector.js +52 -0
  617. package/dist/esm/utils/diagnosticsCollector.js.map +1 -0
  618. package/dist/esm/utils/entityLinkParser.js +246 -0
  619. package/dist/esm/utils/entityLinkParser.js.map +1 -0
  620. package/dist/esm/utils/htmlCommentParser.js +117 -0
  621. package/dist/esm/utils/htmlCommentParser.js.map +1 -0
  622. package/dist/esm/utils/image-utils.js +45 -0
  623. package/dist/esm/utils/image-utils.js.map +1 -0
  624. package/dist/esm/utils/intentExtractor.js +45 -0
  625. package/dist/esm/utils/intentExtractor.js.map +1 -0
  626. package/dist/esm/utils/markdownPreprocessor.js +257 -0
  627. package/dist/esm/utils/markdownPreprocessor.js.map +1 -0
  628. package/dist/esm/utils/navigationStack.js +27 -0
  629. package/dist/esm/utils/navigationStack.js.map +1 -0
  630. package/dist/esm/utils/nodeMatchers.js +38 -0
  631. package/dist/esm/utils/nodeMatchers.js.map +1 -0
  632. package/dist/esm/utils/propsExtractor.js +58 -0
  633. package/dist/esm/utils/propsExtractor.js.map +1 -0
  634. package/dist/esm/utils/sessionManager.js +151 -0
  635. package/dist/esm/utils/sessionManager.js.map +1 -0
  636. package/dist/esm/utils/unifiedMarkdownParser.js +36 -0
  637. package/dist/esm/utils/unifiedMarkdownParser.js.map +1 -0
  638. package/dist/esm/utils/web5LinkValidator.js +52 -0
  639. package/dist/esm/utils/web5LinkValidator.js.map +1 -0
  640. package/dist/esm/utils/web5LinkValidator.test.js +113 -0
  641. package/dist/esm/utils/web5LinkValidator.test.js.map +1 -0
  642. package/dist/types/client/clientBundleOverride.d.ts +26 -0
  643. package/dist/types/client/clientBundleOverride.d.ts.map +1 -0
  644. package/dist/types/client/devEnvironment.d.ts +24 -0
  645. package/dist/types/client/devEnvironment.d.ts.map +1 -0
  646. package/dist/types/client/loadClientBundle.d.ts +27 -0
  647. package/dist/types/client/loadClientBundle.d.ts.map +1 -0
  648. package/dist/types/client/wixAuthFetch.d.ts +12 -0
  649. package/dist/types/client/wixAuthFetch.d.ts.map +1 -0
  650. package/dist/types/clients.d.ts +10 -0
  651. package/dist/types/clients.d.ts.map +1 -0
  652. package/dist/types/color/colorUtils.d.ts +9 -0
  653. package/dist/types/color/colorUtils.d.ts.map +1 -0
  654. package/dist/types/component/componentDefinitions/CalloutSectionDefinition.d.ts +11 -0
  655. package/dist/types/component/componentDefinitions/CalloutSectionDefinition.d.ts.map +1 -0
  656. package/dist/types/component/componentDefinitions/ComparisonSectionDefinition.d.ts +11 -0
  657. package/dist/types/component/componentDefinitions/ComparisonSectionDefinition.d.ts.map +1 -0
  658. package/dist/types/component/componentDefinitions/CtaBannerSectionDefinition.d.ts +11 -0
  659. package/dist/types/component/componentDefinitions/CtaBannerSectionDefinition.d.ts.map +1 -0
  660. package/dist/types/component/componentDefinitions/EntitySectionDefinition.d.ts +11 -0
  661. package/dist/types/component/componentDefinitions/EntitySectionDefinition.d.ts.map +1 -0
  662. package/dist/types/component/componentDefinitions/ErrorSectionDefinition.d.ts +12 -0
  663. package/dist/types/component/componentDefinitions/ErrorSectionDefinition.d.ts.map +1 -0
  664. package/dist/types/component/componentDefinitions/FallbackSectionDefinition.d.ts +16 -0
  665. package/dist/types/component/componentDefinitions/FallbackSectionDefinition.d.ts.map +1 -0
  666. package/dist/types/component/componentDefinitions/FeatureCardsSectionDefinition.d.ts +11 -0
  667. package/dist/types/component/componentDefinitions/FeatureCardsSectionDefinition.d.ts.map +1 -0
  668. package/dist/types/component/componentDefinitions/FeatureSection9PlusDefinition.d.ts +11 -0
  669. package/dist/types/component/componentDefinitions/FeatureSection9PlusDefinition.d.ts.map +1 -0
  670. package/dist/types/component/componentDefinitions/HeroEntitySectionDefinition.d.ts +23 -0
  671. package/dist/types/component/componentDefinitions/HeroEntitySectionDefinition.d.ts.map +1 -0
  672. package/dist/types/component/componentDefinitions/HeroSectionDefinition.d.ts +12 -0
  673. package/dist/types/component/componentDefinitions/HeroSectionDefinition.d.ts.map +1 -0
  674. package/dist/types/component/componentDefinitions/HtmlCommentSectionDefinition.d.ts +11 -0
  675. package/dist/types/component/componentDefinitions/HtmlCommentSectionDefinition.d.ts.map +1 -0
  676. package/dist/types/component/componentDefinitions/KpiSectionDefinition.d.ts +11 -0
  677. package/dist/types/component/componentDefinitions/KpiSectionDefinition.d.ts.map +1 -0
  678. package/dist/types/component/componentDefinitions/NextStepsSectionDefinition.d.ts +11 -0
  679. package/dist/types/component/componentDefinitions/NextStepsSectionDefinition.d.ts.map +1 -0
  680. package/dist/types/component/componentDefinitions/SearchSectionDefinition.d.ts +10 -0
  681. package/dist/types/component/componentDefinitions/SearchSectionDefinition.d.ts.map +1 -0
  682. package/dist/types/component/componentDefinitions/SkipNodesSectionDefinition.d.ts +12 -0
  683. package/dist/types/component/componentDefinitions/SkipNodesSectionDefinition.d.ts.map +1 -0
  684. package/dist/types/component/componentDefinitions/TextBlockSectionDefinition.d.ts +11 -0
  685. package/dist/types/component/componentDefinitions/TextBlockSectionDefinition.d.ts.map +1 -0
  686. package/dist/types/component/componentDefinitions/index.d.ts +26 -0
  687. package/dist/types/component/componentDefinitions/index.d.ts.map +1 -0
  688. package/dist/types/component/componentDefinitions/listItemsSectionDefinition.d.ts +11 -0
  689. package/dist/types/component/componentDefinitions/listItemsSectionDefinition.d.ts.map +1 -0
  690. package/dist/types/component/componentDefinitions/parse-utils.d.ts +88 -0
  691. package/dist/types/component/componentDefinitions/parse-utils.d.ts.map +1 -0
  692. package/dist/types/component/componentDefinitions/specHelpers.d.ts +16 -0
  693. package/dist/types/component/componentDefinitions/specHelpers.d.ts.map +1 -0
  694. package/dist/types/component/componentParser.d.ts +63 -0
  695. package/dist/types/component/componentParser.d.ts.map +1 -0
  696. package/dist/types/component/diagnosticTypes.d.ts +23 -0
  697. package/dist/types/component/diagnosticTypes.d.ts.map +1 -0
  698. package/dist/types/component/parser-types.d.ts +71 -0
  699. package/dist/types/component/parser-types.d.ts.map +1 -0
  700. package/dist/types/component/section-definition.d.ts +32 -0
  701. package/dist/types/component/section-definition.d.ts.map +1 -0
  702. package/dist/types/component/types.d.ts +315 -0
  703. package/dist/types/component/types.d.ts.map +1 -0
  704. package/dist/types/components/placement/PlacementPayloadContext.d.ts +20 -0
  705. package/dist/types/components/placement/PlacementPayloadContext.d.ts.map +1 -0
  706. package/dist/types/components/placement/PlacementResponseRenderer.d.ts +106 -0
  707. package/dist/types/components/placement/PlacementResponseRenderer.d.ts.map +1 -0
  708. package/dist/types/components/placement/buildPlacementDependencies.d.ts +44 -0
  709. package/dist/types/components/placement/buildPlacementDependencies.d.ts.map +1 -0
  710. package/dist/types/components/ui/BottomContainer.d.ts +9 -0
  711. package/dist/types/components/ui/BottomContainer.d.ts.map +1 -0
  712. package/dist/types/components/ui/CalloutBlock.d.ts +9 -0
  713. package/dist/types/components/ui/CalloutBlock.d.ts.map +1 -0
  714. package/dist/types/components/ui/Disclaimer.d.ts +21 -0
  715. package/dist/types/components/ui/Disclaimer.d.ts.map +1 -0
  716. package/dist/types/components/ui/FeedbackBar.d.ts +41 -0
  717. package/dist/types/components/ui/FeedbackBar.d.ts.map +1 -0
  718. package/dist/types/components/ui/Loader.d.ts +9 -0
  719. package/dist/types/components/ui/Loader.d.ts.map +1 -0
  720. package/dist/types/components/ui/MarkdownText.d.ts +9 -0
  721. package/dist/types/components/ui/MarkdownText.d.ts.map +1 -0
  722. package/dist/types/components/ui/OptimizedImage.d.ts +59 -0
  723. package/dist/types/components/ui/OptimizedImage.d.ts.map +1 -0
  724. package/dist/types/components/ui/PlacementLoader.d.ts +15 -0
  725. package/dist/types/components/ui/PlacementLoader.d.ts.map +1 -0
  726. package/dist/types/components/ui/PromptEntryEmptyState.d.ts +21 -0
  727. package/dist/types/components/ui/PromptEntryEmptyState.d.ts.map +1 -0
  728. package/dist/types/components/ui/SearchSection.d.ts +37 -0
  729. package/dist/types/components/ui/SearchSection.d.ts.map +1 -0
  730. package/dist/types/components/ui/SectionSkeleton.d.ts +27 -0
  731. package/dist/types/components/ui/SectionSkeleton.d.ts.map +1 -0
  732. package/dist/types/components/ui/SmartIcon.d.ts +19 -0
  733. package/dist/types/components/ui/SmartIcon.d.ts.map +1 -0
  734. package/dist/types/components/ui/UnifiedLink.d.ts +22 -0
  735. package/dist/types/components/ui/UnifiedLink.d.ts.map +1 -0
  736. package/dist/types/components/ui/UserQuery.d.ts +33 -0
  737. package/dist/types/components/ui/UserQuery.d.ts.map +1 -0
  738. package/dist/types/components/ui/icons/ArrowTopRightIcon.d.ts +3 -0
  739. package/dist/types/components/ui/icons/ArrowTopRightIcon.d.ts.map +1 -0
  740. package/dist/types/components/ui/icons/ArrowUpIcon.d.ts +3 -0
  741. package/dist/types/components/ui/icons/ArrowUpIcon.d.ts.map +1 -0
  742. package/dist/types/components/ui/icons/CheckIcon.d.ts +3 -0
  743. package/dist/types/components/ui/icons/CheckIcon.d.ts.map +1 -0
  744. package/dist/types/components/ui/icons/CommentIcon.d.ts +3 -0
  745. package/dist/types/components/ui/icons/CommentIcon.d.ts.map +1 -0
  746. package/dist/types/components/ui/icons/PlusIcon.d.ts +3 -0
  747. package/dist/types/components/ui/icons/PlusIcon.d.ts.map +1 -0
  748. package/dist/types/components/ui/icons/RedoIcon.d.ts +3 -0
  749. package/dist/types/components/ui/icons/RedoIcon.d.ts.map +1 -0
  750. package/dist/types/components/ui/icons/ShareIcon.d.ts +3 -0
  751. package/dist/types/components/ui/icons/ShareIcon.d.ts.map +1 -0
  752. package/dist/types/components/ui/icons/UndoIcon.d.ts +3 -0
  753. package/dist/types/components/ui/icons/UndoIcon.d.ts.map +1 -0
  754. package/dist/types/components/ui/table.d.ts +11 -0
  755. package/dist/types/components/ui/table.d.ts.map +1 -0
  756. package/dist/types/context/ChipsContext.d.ts +8 -0
  757. package/dist/types/context/ChipsContext.d.ts.map +1 -0
  758. package/dist/types/context/ComponentDependenciesContext.d.ts +8 -0
  759. package/dist/types/context/ComponentDependenciesContext.d.ts.map +1 -0
  760. package/dist/types/entity/defaultExtractor.d.ts +14 -0
  761. package/dist/types/entity/defaultExtractor.d.ts.map +1 -0
  762. package/dist/types/entity/enrichEntitiesFromPayload.d.ts +27 -0
  763. package/dist/types/entity/enrichEntitiesFromPayload.d.ts.map +1 -0
  764. package/dist/types/entity/fetchEntityListData.d.ts +20 -0
  765. package/dist/types/entity/fetchEntityListData.d.ts.map +1 -0
  766. package/dist/types/entity/index.d.ts +16 -0
  767. package/dist/types/entity/index.d.ts.map +1 -0
  768. package/dist/types/entity/types.d.ts +13 -0
  769. package/dist/types/entity/types.d.ts.map +1 -0
  770. package/dist/types/errors/conversationErrorTypes.d.ts +20 -0
  771. package/dist/types/errors/conversationErrorTypes.d.ts.map +1 -0
  772. package/dist/types/errors/errorTemplates.d.ts +27 -0
  773. package/dist/types/errors/errorTemplates.d.ts.map +1 -0
  774. package/dist/types/errors/index.d.ts +3 -0
  775. package/dist/types/errors/index.d.ts.map +1 -0
  776. package/dist/types/featureToggles/FeatureToggleContext.d.ts +18 -0
  777. package/dist/types/featureToggles/FeatureToggleContext.d.ts.map +1 -0
  778. package/dist/types/hooks/useConversation.d.ts +3 -0
  779. package/dist/types/hooks/useConversation.d.ts.map +1 -0
  780. package/dist/types/hooks/useDebugImageContext.d.ts +2 -0
  781. package/dist/types/hooks/useDebugImageContext.d.ts.map +1 -0
  782. package/dist/types/hooks/useEntityTransforms.d.ts +3 -0
  783. package/dist/types/hooks/useEntityTransforms.d.ts.map +1 -0
  784. package/dist/types/hooks/useMarkdownUtils.d.ts +3 -0
  785. package/dist/types/hooks/useMarkdownUtils.d.ts.map +1 -0
  786. package/dist/types/hooks/useResolveGenericEntityData.d.ts +11 -0
  787. package/dist/types/hooks/useResolveGenericEntityData.d.ts.map +1 -0
  788. package/dist/types/hooks/useResolveSearchSpringEntityData.d.ts +20 -0
  789. package/dist/types/hooks/useResolveSearchSpringEntityData.d.ts.map +1 -0
  790. package/dist/types/hooks/useResolveShopifyEntityData.d.ts +21 -0
  791. package/dist/types/hooks/useResolveShopifyEntityData.d.ts.map +1 -0
  792. package/dist/types/hooks/useResolvedImageSources.d.ts +6 -0
  793. package/dist/types/hooks/useResolvedImageSources.d.ts.map +1 -0
  794. package/dist/types/hooks/useWeb5Link.d.ts +3 -0
  795. package/dist/types/hooks/useWeb5Link.d.ts.map +1 -0
  796. package/dist/types/image/contextualImageTypes.d.ts +17 -0
  797. package/dist/types/image/contextualImageTypes.d.ts.map +1 -0
  798. package/dist/types/image/imageSearchFilterTypes.d.ts +14 -0
  799. package/dist/types/image/imageSearchFilterTypes.d.ts.map +1 -0
  800. package/dist/types/image/imageSearchFilters.d.ts +16 -0
  801. package/dist/types/image/imageSearchFilters.d.ts.map +1 -0
  802. package/dist/types/index.d.ts +88 -0
  803. package/dist/types/index.d.ts.map +1 -0
  804. package/dist/types/lib/utils.d.ts +3 -0
  805. package/dist/types/lib/utils.d.ts.map +1 -0
  806. package/dist/types/markdownBlocks.d.ts +44 -0
  807. package/dist/types/markdownBlocks.d.ts.map +1 -0
  808. package/dist/types/match/astToParts.d.ts +15 -0
  809. package/dist/types/match/astToParts.d.ts.map +1 -0
  810. package/dist/types/match/extractProps.d.ts +207 -0
  811. package/dist/types/match/extractProps.d.ts.map +1 -0
  812. package/dist/types/match/index.d.ts +4 -0
  813. package/dist/types/match/index.d.ts.map +1 -0
  814. package/dist/types/match/matchAllSections.d.ts +15 -0
  815. package/dist/types/match/matchAllSections.d.ts.map +1 -0
  816. package/dist/types/match/matchMarkdown.d.ts +25 -0
  817. package/dist/types/match/matchMarkdown.d.ts.map +1 -0
  818. package/dist/types/parts/parts.d.ts +144 -0
  819. package/dist/types/parts/parts.d.ts.map +1 -0
  820. package/dist/types/patternAnalyzer/conflictDetector.d.ts +19 -0
  821. package/dist/types/patternAnalyzer/conflictDetector.d.ts.map +1 -0
  822. package/dist/types/patternAnalyzer/index.d.ts +10 -0
  823. package/dist/types/patternAnalyzer/index.d.ts.map +1 -0
  824. package/dist/types/patternAnalyzer/markdownGenerator.d.ts +9 -0
  825. package/dist/types/patternAnalyzer/markdownGenerator.d.ts.map +1 -0
  826. package/dist/types/patternAnalyzer/mergeDetector.d.ts +14 -0
  827. package/dist/types/patternAnalyzer/mergeDetector.d.ts.map +1 -0
  828. package/dist/types/patternAnalyzer/parserValidator.d.ts +13 -0
  829. package/dist/types/patternAnalyzer/parserValidator.d.ts.map +1 -0
  830. package/dist/types/patternAnalyzer/patternWriter.d.ts +8 -0
  831. package/dist/types/patternAnalyzer/patternWriter.d.ts.map +1 -0
  832. package/dist/types/patternAnalyzer/run.d.ts +2 -0
  833. package/dist/types/patternAnalyzer/run.d.ts.map +1 -0
  834. package/dist/types/patternAnalyzer/types.d.ts +59 -0
  835. package/dist/types/patternAnalyzer/types.d.ts.map +1 -0
  836. package/dist/types/patternValidator/automaton.d.ts +3 -0
  837. package/dist/types/patternValidator/automaton.d.ts.map +1 -0
  838. package/dist/types/patternValidator/index.d.ts +48 -0
  839. package/dist/types/patternValidator/index.d.ts.map +1 -0
  840. package/dist/types/patternValidator/lexer.d.ts +3 -0
  841. package/dist/types/patternValidator/lexer.d.ts.map +1 -0
  842. package/dist/types/patternValidator/matcher.d.ts +14 -0
  843. package/dist/types/patternValidator/matcher.d.ts.map +1 -0
  844. package/dist/types/patternValidator/parser.d.ts +14 -0
  845. package/dist/types/patternValidator/parser.d.ts.map +1 -0
  846. package/dist/types/patternValidator/types.d.ts +125 -0
  847. package/dist/types/patternValidator/types.d.ts.map +1 -0
  848. package/dist/types/patternValidator/validator.test.d.ts +2 -0
  849. package/dist/types/patternValidator/validator.test.d.ts.map +1 -0
  850. package/dist/types/registry/ComponentRegistry.d.ts +64 -0
  851. package/dist/types/registry/ComponentRegistry.d.ts.map +1 -0
  852. package/dist/types/registry/Intent.d.ts +12 -0
  853. package/dist/types/registry/Intent.d.ts.map +1 -0
  854. package/dist/types/registry/index.d.ts +4 -0
  855. package/dist/types/registry/index.d.ts.map +1 -0
  856. package/dist/types/registry/types.d.ts +99 -0
  857. package/dist/types/registry/types.d.ts.map +1 -0
  858. package/dist/types/services/cart/addToCart.d.ts +26 -0
  859. package/dist/types/services/cart/addToCart.d.ts.map +1 -0
  860. package/dist/types/services/cart/index.d.ts +2 -0
  861. package/dist/types/services/cart/index.d.ts.map +1 -0
  862. package/dist/types/services/searchspring/index.d.ts +4 -0
  863. package/dist/types/services/searchspring/index.d.ts.map +1 -0
  864. package/dist/types/services/searchspring/searchSpringClient.d.ts +13 -0
  865. package/dist/types/services/searchspring/searchSpringClient.d.ts.map +1 -0
  866. package/dist/types/services/searchspring/transformSSProduct.d.ts +7 -0
  867. package/dist/types/services/searchspring/transformSSProduct.d.ts.map +1 -0
  868. package/dist/types/services/searchspring/types.d.ts +48 -0
  869. package/dist/types/services/searchspring/types.d.ts.map +1 -0
  870. package/dist/types/services/shopify/index.d.ts +7 -0
  871. package/dist/types/services/shopify/index.d.ts.map +1 -0
  872. package/dist/types/services/shopify/queries.d.ts +13 -0
  873. package/dist/types/services/shopify/queries.d.ts.map +1 -0
  874. package/dist/types/services/shopify/resolveStoreDomain.d.ts +14 -0
  875. package/dist/types/services/shopify/resolveStoreDomain.d.ts.map +1 -0
  876. package/dist/types/services/shopify/shopifyEntityResolver.d.ts +21 -0
  877. package/dist/types/services/shopify/shopifyEntityResolver.d.ts.map +1 -0
  878. package/dist/types/services/shopify/shopifyStorefrontClient.d.ts +19 -0
  879. package/dist/types/services/shopify/shopifyStorefrontClient.d.ts.map +1 -0
  880. package/dist/types/services/shopify/transformShopifyEntity.d.ts +11 -0
  881. package/dist/types/services/shopify/transformShopifyEntity.d.ts.map +1 -0
  882. package/dist/types/services/shopify/types.d.ts +109 -0
  883. package/dist/types/services/shopify/types.d.ts.map +1 -0
  884. package/dist/types/testUtils.d.ts +7 -0
  885. package/dist/types/testUtils.d.ts.map +1 -0
  886. package/dist/types/types/answerUpdatedEvent.d.ts +29 -0
  887. package/dist/types/types/answerUpdatedEvent.d.ts.map +1 -0
  888. package/dist/types/types/blog.d.ts +22 -0
  889. package/dist/types/types/blog.d.ts.map +1 -0
  890. package/dist/types/types/callout.d.ts +7 -0
  891. package/dist/types/types/callout.d.ts.map +1 -0
  892. package/dist/types/types/dependencies.d.ts +191 -0
  893. package/dist/types/types/dependencies.d.ts.map +1 -0
  894. package/dist/types/types/entity.d.ts +38 -0
  895. package/dist/types/types/entity.d.ts.map +1 -0
  896. package/dist/types/types/link-types.d.ts +38 -0
  897. package/dist/types/types/link-types.d.ts.map +1 -0
  898. package/dist/types/types/page-section.d.ts +27 -0
  899. package/dist/types/types/page-section.d.ts.map +1 -0
  900. package/dist/types/types/placement.d.ts +94 -0
  901. package/dist/types/types/placement.d.ts.map +1 -0
  902. package/dist/types/types/redirectEvent.d.ts +42 -0
  903. package/dist/types/types/redirectEvent.d.ts.map +1 -0
  904. package/dist/types/types/userQueryEvent.d.ts +24 -0
  905. package/dist/types/types/userQueryEvent.d.ts.map +1 -0
  906. package/dist/types/utils/analyticsEvents.d.ts +24 -0
  907. package/dist/types/utils/analyticsEvents.d.ts.map +1 -0
  908. package/dist/types/utils/componentTracking.d.ts +55 -0
  909. package/dist/types/utils/componentTracking.d.ts.map +1 -0
  910. package/dist/types/utils/contentKeywordMatcher.d.ts +14 -0
  911. package/dist/types/utils/contentKeywordMatcher.d.ts.map +1 -0
  912. package/dist/types/utils/conversationApi.d.ts +26 -0
  913. package/dist/types/utils/conversationApi.d.ts.map +1 -0
  914. package/dist/types/utils/conversationMode.d.ts +16 -0
  915. package/dist/types/utils/conversationMode.d.ts.map +1 -0
  916. package/dist/types/utils/diagnosticsCollector.d.ts +33 -0
  917. package/dist/types/utils/diagnosticsCollector.d.ts.map +1 -0
  918. package/dist/types/utils/entityLinkParser.d.ts +97 -0
  919. package/dist/types/utils/entityLinkParser.d.ts.map +1 -0
  920. package/dist/types/utils/htmlCommentParser.d.ts +13 -0
  921. package/dist/types/utils/htmlCommentParser.d.ts.map +1 -0
  922. package/dist/types/utils/image-utils.d.ts +10 -0
  923. package/dist/types/utils/image-utils.d.ts.map +1 -0
  924. package/dist/types/utils/intentExtractor.d.ts +11 -0
  925. package/dist/types/utils/intentExtractor.d.ts.map +1 -0
  926. package/dist/types/utils/markdownPreprocessor.d.ts +95 -0
  927. package/dist/types/utils/markdownPreprocessor.d.ts.map +1 -0
  928. package/dist/types/utils/navigationStack.d.ts +6 -0
  929. package/dist/types/utils/navigationStack.d.ts.map +1 -0
  930. package/dist/types/utils/nodeMatchers.d.ts +10 -0
  931. package/dist/types/utils/nodeMatchers.d.ts.map +1 -0
  932. package/dist/types/utils/propsExtractor.d.ts +51 -0
  933. package/dist/types/utils/propsExtractor.d.ts.map +1 -0
  934. package/dist/types/utils/sessionManager.d.ts +57 -0
  935. package/dist/types/utils/sessionManager.d.ts.map +1 -0
  936. package/dist/types/utils/unifiedMarkdownParser.d.ts +9 -0
  937. package/dist/types/utils/unifiedMarkdownParser.d.ts.map +1 -0
  938. package/dist/types/utils/web5LinkValidator.d.ts +14 -0
  939. package/dist/types/utils/web5LinkValidator.d.ts.map +1 -0
  940. package/dist/types/utils/web5LinkValidator.test.d.ts +2 -0
  941. package/dist/types/utils/web5LinkValidator.test.d.ts.map +1 -0
  942. package/package.json +103 -0
  943. package/src/styles/base-tokens.css +152 -0
  944. package/src/styles/base-utilities.css +424 -0
  945. package/src/styles/components.css +6 -0
  946. package/src/styles/prompt-input-tokens.css +136 -0
  947. package/src/styles/tailwind-theme.css +138 -0
@@ -0,0 +1,37 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React from 'react';
3
+ export const ShareIcon = props => /*#__PURE__*/React.createElement("svg", _extends({
4
+ xmlns: "http://www.w3.org/2000/svg",
5
+ width: "16",
6
+ height: "16",
7
+ viewBox: "0 0 24 24",
8
+ fill: "none",
9
+ stroke: "currentColor",
10
+ strokeWidth: "2",
11
+ strokeLinecap: "round",
12
+ strokeLinejoin: "round",
13
+ "aria-hidden": "true"
14
+ }, props), /*#__PURE__*/React.createElement("circle", {
15
+ cx: "18",
16
+ cy: "5",
17
+ r: "3"
18
+ }), /*#__PURE__*/React.createElement("circle", {
19
+ cx: "6",
20
+ cy: "12",
21
+ r: "3"
22
+ }), /*#__PURE__*/React.createElement("circle", {
23
+ cx: "18",
24
+ cy: "19",
25
+ r: "3"
26
+ }), /*#__PURE__*/React.createElement("line", {
27
+ x1: "8.59",
28
+ y1: "13.51",
29
+ x2: "15.42",
30
+ y2: "17.49"
31
+ }), /*#__PURE__*/React.createElement("line", {
32
+ x1: "15.41",
33
+ y1: "6.51",
34
+ x2: "8.59",
35
+ y2: "10.49"
36
+ }));
37
+ //# sourceMappingURL=ShareIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","ShareIcon","props","createElement","_extends","xmlns","width","height","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","cx","cy","r","x1","y1","x2","y2"],"sources":["../../../../../src/components/ui/icons/ShareIcon.tsx"],"sourcesContent":["import React from 'react';\n\nexport const ShareIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n {...props}\n >\n <circle cx=\"18\" cy=\"5\" r=\"3\" />\n <circle cx=\"6\" cy=\"12\" r=\"3\" />\n <circle cx=\"18\" cy=\"19\" r=\"3\" />\n <line x1=\"8.59\" y1=\"13.51\" x2=\"15.42\" y2=\"17.49\" />\n <line x1=\"15.41\" y1=\"6.51\" x2=\"8.59\" y2=\"10.49\" />\n </svg>\n);\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAO,MAAMC,SAAkD,GAAIC,KAAK,iBACtEF,KAAA,CAAAG,aAAA,QAAAC,QAAA;EACEC,KAAK,EAAC,4BAA4B;EAClCC,KAAK,EAAC,IAAI;EACVC,MAAM,EAAC,IAAI;EACXC,OAAO,EAAC,WAAW;EACnBC,IAAI,EAAC,MAAM;EACXC,MAAM,EAAC,cAAc;EACrBC,WAAW,EAAC,GAAG;EACfC,aAAa,EAAC,OAAO;EACrBC,cAAc,EAAC,OAAO;EACtB,eAAY;AAAM,GACdX,KAAK,gBAETF,KAAA,CAAAG,aAAA;EAAQW,EAAE,EAAC,IAAI;EAACC,EAAE,EAAC,GAAG;EAACC,CAAC,EAAC;AAAG,CAAE,CAAC,eAC/BhB,KAAA,CAAAG,aAAA;EAAQW,EAAE,EAAC,GAAG;EAACC,EAAE,EAAC,IAAI;EAACC,CAAC,EAAC;AAAG,CAAE,CAAC,eAC/BhB,KAAA,CAAAG,aAAA;EAAQW,EAAE,EAAC,IAAI;EAACC,EAAE,EAAC,IAAI;EAACC,CAAC,EAAC;AAAG,CAAE,CAAC,eAChChB,KAAA,CAAAG,aAAA;EAAMc,EAAE,EAAC,MAAM;EAACC,EAAE,EAAC,OAAO;EAACC,EAAE,EAAC,OAAO;EAACC,EAAE,EAAC;AAAO,CAAE,CAAC,eACnDpB,KAAA,CAAAG,aAAA;EAAMc,EAAE,EAAC,OAAO;EAACC,EAAE,EAAC,MAAM;EAACC,EAAE,EAAC,MAAM;EAACC,EAAE,EAAC;AAAO,CAAE,CAC9C,CACN","ignoreList":[]}
@@ -0,0 +1,25 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React from 'react';
3
+ export const UndoIcon = props => /*#__PURE__*/React.createElement("svg", _extends({
4
+ xmlns: "http://www.w3.org/2000/svg",
5
+ width: "16",
6
+ height: "16",
7
+ viewBox: "0 0 24 24",
8
+ fill: "none",
9
+ "aria-hidden": "true"
10
+ }, props), /*#__PURE__*/React.createElement("path", {
11
+ d: "M7 11L3 7l4-4",
12
+ fill: "none",
13
+ stroke: "currentColor",
14
+ strokeWidth: "1.5",
15
+ strokeLinecap: "round",
16
+ strokeLinejoin: "round"
17
+ }), /*#__PURE__*/React.createElement("path", {
18
+ d: "M3 7h8a7 7 0 0 1 7 7v1",
19
+ fill: "none",
20
+ stroke: "currentColor",
21
+ strokeWidth: "1.5",
22
+ strokeLinecap: "round",
23
+ strokeLinejoin: "round"
24
+ }));
25
+ //# sourceMappingURL=UndoIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","UndoIcon","props","createElement","_extends","xmlns","width","height","viewBox","fill","d","stroke","strokeWidth","strokeLinecap","strokeLinejoin"],"sources":["../../../../../src/components/ui/icons/UndoIcon.tsx"],"sourcesContent":["import React from 'react';\n\nexport const UndoIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n aria-hidden=\"true\"\n {...props}\n >\n <path\n d=\"M7 11L3 7l4-4\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M3 7h8a7 7 0 0 1 7 7v1\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n);\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAO,MAAMC,QAAiD,GAAIC,KAAK,iBACrEF,KAAA,CAAAG,aAAA,QAAAC,QAAA;EACEC,KAAK,EAAC,4BAA4B;EAClCC,KAAK,EAAC,IAAI;EACVC,MAAM,EAAC,IAAI;EACXC,OAAO,EAAC,WAAW;EACnBC,IAAI,EAAC,MAAM;EACX,eAAY;AAAM,GACdP,KAAK,gBAETF,KAAA,CAAAG,aAAA;EACEO,CAAC,EAAC,eAAe;EACjBD,IAAI,EAAC,MAAM;EACXE,MAAM,EAAC,cAAc;EACrBC,WAAW,EAAC,KAAK;EACjBC,aAAa,EAAC,OAAO;EACrBC,cAAc,EAAC;AAAO,CACvB,CAAC,eACFd,KAAA,CAAAG,aAAA;EACEO,CAAC,EAAC,wBAAwB;EAC1BD,IAAI,EAAC,MAAM;EACXE,MAAM,EAAC,cAAc;EACrBC,WAAW,EAAC,KAAK;EACjBC,aAAa,EAAC,OAAO;EACrBC,cAAc,EAAC;AAAO,CACvB,CACE,CACN","ignoreList":[]}
@@ -0,0 +1,92 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import * as React from 'react';
3
+ import { cn } from '../../lib/utils.js';
4
+ function Table(_ref) {
5
+ let {
6
+ className,
7
+ ...props
8
+ } = _ref;
9
+ return /*#__PURE__*/React.createElement("div", {
10
+ "data-slot": "table-container",
11
+ role: "region",
12
+ "aria-label": "Data table",
13
+ tabIndex: 0,
14
+ className: "relative w-full overflow-x-auto"
15
+ }, /*#__PURE__*/React.createElement("table", _extends({
16
+ "data-slot": "table",
17
+ className: cn('w-full caption-bottom text-sm', className)
18
+ }, props)));
19
+ }
20
+ function TableHeader(_ref2) {
21
+ let {
22
+ className,
23
+ ...props
24
+ } = _ref2;
25
+ return /*#__PURE__*/React.createElement("thead", _extends({
26
+ "data-slot": "table-header",
27
+ className: cn('[&_tr]:border-b [&_tr]:border-border', className)
28
+ }, props));
29
+ }
30
+ function TableBody(_ref3) {
31
+ let {
32
+ className,
33
+ ...props
34
+ } = _ref3;
35
+ return /*#__PURE__*/React.createElement("tbody", _extends({
36
+ "data-slot": "table-body",
37
+ className: cn('[&_tr:last-child]:border-0', className)
38
+ }, props));
39
+ }
40
+ function TableFooter(_ref4) {
41
+ let {
42
+ className,
43
+ ...props
44
+ } = _ref4;
45
+ return /*#__PURE__*/React.createElement("tfoot", _extends({
46
+ "data-slot": "table-footer",
47
+ className: cn('bg-muted/50 border-t border-border font-medium [&>tr]:last:border-b-0', className)
48
+ }, props));
49
+ }
50
+ function TableRow(_ref5) {
51
+ let {
52
+ className,
53
+ ...props
54
+ } = _ref5;
55
+ return /*#__PURE__*/React.createElement("tr", _extends({
56
+ "data-slot": "table-row",
57
+ className: cn('hover:bg-muted/50 data-[state=selected]:bg-muted border-b border-border transition-colors', className)
58
+ }, props));
59
+ }
60
+ function TableHead(_ref6) {
61
+ let {
62
+ className,
63
+ ...props
64
+ } = _ref6;
65
+ return /*#__PURE__*/React.createElement("th", _extends({
66
+ "data-slot": "table-head",
67
+ scope: "col",
68
+ className: cn('text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]', className)
69
+ }, props));
70
+ }
71
+ function TableCell(_ref7) {
72
+ let {
73
+ className,
74
+ ...props
75
+ } = _ref7;
76
+ return /*#__PURE__*/React.createElement("td", _extends({
77
+ "data-slot": "table-cell",
78
+ className: cn('p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]', className)
79
+ }, props));
80
+ }
81
+ function TableCaption(_ref8) {
82
+ let {
83
+ className,
84
+ ...props
85
+ } = _ref8;
86
+ return /*#__PURE__*/React.createElement("caption", _extends({
87
+ "data-slot": "table-caption",
88
+ className: cn('text-muted-foreground mt-4 text-sm', className)
89
+ }, props));
90
+ }
91
+ export { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption };
92
+ //# sourceMappingURL=table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","cn","Table","_ref","className","props","createElement","role","tabIndex","_extends","TableHeader","_ref2","TableBody","_ref3","TableFooter","_ref4","TableRow","_ref5","TableHead","_ref6","scope","TableCell","_ref7","TableCaption","_ref8"],"sources":["../../../../src/components/ui/table.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { cn } from '../../lib/utils';\n\nfunction Table({ className, ...props }: React.ComponentProps<'table'>) {\n return (\n <div\n data-slot=\"table-container\"\n role=\"region\"\n aria-label=\"Data table\"\n tabIndex={0}\n className=\"relative w-full overflow-x-auto\"\n >\n <table\n data-slot=\"table\"\n className={cn('w-full caption-bottom text-sm', className)}\n {...props}\n />\n </div>\n );\n}\n\nfunction TableHeader({ className, ...props }: React.ComponentProps<'thead'>) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn('[&_tr]:border-b [&_tr]:border-border', className)}\n {...props}\n />\n );\n}\n\nfunction TableBody({ className, ...props }: React.ComponentProps<'tbody'>) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn('[&_tr:last-child]:border-0', className)}\n {...props}\n />\n );\n}\n\nfunction TableFooter({ className, ...props }: React.ComponentProps<'tfoot'>) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\n 'bg-muted/50 border-t border-border font-medium [&>tr]:last:border-b-0',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction TableRow({ className, ...props }: React.ComponentProps<'tr'>) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n 'hover:bg-muted/50 data-[state=selected]:bg-muted border-b border-border transition-colors',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction TableHead({ className, ...props }: React.ComponentProps<'th'>) {\n return (\n <th\n data-slot=\"table-head\"\n scope=\"col\"\n className={cn(\n 'text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction TableCell({ className, ...props }: React.ComponentProps<'td'>) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n 'p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction TableCaption({\n className,\n ...props\n}: React.ComponentProps<'caption'>) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn('text-muted-foreground mt-4 text-sm', className)}\n {...props}\n />\n );\n}\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import { createContext, useContext } from 'react';
2
+ const ChipsContext = /*#__PURE__*/createContext([]);
3
+ export const ChipsProvider = ChipsContext.Provider;
4
+ export function useChips() {
5
+ return useContext(ChipsContext);
6
+ }
7
+ //# sourceMappingURL=ChipsContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","useContext","ChipsContext","ChipsProvider","Provider","useChips"],"sources":["../../../src/context/ChipsContext.tsx"],"sourcesContent":["import { createContext, useContext } from 'react';\n\nexport interface SuggestionChip {\n label: string;\n href: string;\n}\n\nconst ChipsContext = createContext<SuggestionChip[]>([]);\n\nexport const ChipsProvider = ChipsContext.Provider;\n\nexport function useChips(): SuggestionChip[] {\n return useContext(ChipsContext);\n}\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAOjD,MAAMC,YAAY,gBAAGF,aAAa,CAAmB,EAAE,CAAC;AAExD,OAAO,MAAMG,aAAa,GAAGD,YAAY,CAACE,QAAQ;AAElD,OAAO,SAASC,QAAQA,CAAA,EAAqB;EAC3C,OAAOJ,UAAU,CAACC,YAAY,CAAC;AACjC","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ import React, { createContext, useContext } from 'react';
2
+ const ComponentDependenciesContext = /*#__PURE__*/createContext(null);
3
+ export function useComponentDependencies() {
4
+ const ctx = useContext(ComponentDependenciesContext);
5
+ if (!ctx) {
6
+ throw new Error('useComponentDependencies must be used within a ComponentDependenciesProvider. ' + 'Wrap your app with <ComponentDependenciesProvider deps={...}>.');
7
+ }
8
+ return ctx;
9
+ }
10
+ export const ComponentDependenciesProvider = _ref => {
11
+ let {
12
+ deps,
13
+ children
14
+ } = _ref;
15
+ return /*#__PURE__*/React.createElement(ComponentDependenciesContext.Provider, {
16
+ value: deps
17
+ }, children);
18
+ };
19
+ //# sourceMappingURL=ComponentDependenciesContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","createContext","useContext","ComponentDependenciesContext","useComponentDependencies","ctx","Error","ComponentDependenciesProvider","_ref","deps","children","createElement","Provider","value"],"sources":["../../../src/context/ComponentDependenciesContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n type FC,\n type PropsWithChildren,\n} from 'react';\nimport type { ComponentDependencies } from '../types/dependencies';\n\nconst ComponentDependenciesContext =\n createContext<ComponentDependencies | null>(null);\n\nexport function useComponentDependencies(): ComponentDependencies {\n const ctx = useContext(ComponentDependenciesContext);\n if (!ctx) {\n throw new Error(\n 'useComponentDependencies must be used within a ComponentDependenciesProvider. ' +\n 'Wrap your app with <ComponentDependenciesProvider deps={...}>.',\n );\n }\n return ctx;\n}\n\nexport interface ComponentDependenciesProviderProps extends PropsWithChildren {\n deps: ComponentDependencies;\n}\n\nexport const ComponentDependenciesProvider: FC<\n ComponentDependenciesProviderProps\n> = ({ deps, children }) => {\n return (\n <ComponentDependenciesContext.Provider value={deps}>\n {children}\n </ComponentDependenciesContext.Provider>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IACVC,aAAa,EACbC,UAAU,QAGL,OAAO;AAGd,MAAMC,4BAA4B,gBAChCF,aAAa,CAA+B,IAAI,CAAC;AAEnD,OAAO,SAASG,wBAAwBA,CAAA,EAA0B;EAChE,MAAMC,GAAG,GAAGH,UAAU,CAACC,4BAA4B,CAAC;EACpD,IAAI,CAACE,GAAG,EAAE;IACR,MAAM,IAAIC,KAAK,CACb,gFAAgF,GAC9E,gEACJ,CAAC;EACH;EACA,OAAOD,GAAG;AACZ;AAMA,OAAO,MAAME,6BAEZ,GAAGC,IAAA,IAAwB;EAAA,IAAvB;IAAEC,IAAI;IAAEC;EAAS,CAAC,GAAAF,IAAA;EACrB,oBACER,KAAA,CAAAW,aAAA,CAACR,4BAA4B,CAACS,QAAQ;IAACC,KAAK,EAAEJ;EAAK,GAChDC,QACoC,CAAC;AAE5C,CAAC","ignoreList":[]}
@@ -0,0 +1,111 @@
1
+ import { Web5UrlType, isWeb5EntityUrl } from '../types/link-types.js';
2
+ import { parseWeb5Url } from '../utils/entityLinkParser.js';
3
+
4
+ /**
5
+ * Extract entity type and ID from a web5://entity/ URL.
6
+ * Delegates to the central `parseWeb5Url` parser.
7
+ */
8
+ function extractEntityIdFromUrl(entityUrl) {
9
+ const trimmedUrl = entityUrl == null ? void 0 : entityUrl.trim();
10
+ if (!trimmedUrl || !isWeb5EntityUrl(trimmedUrl)) {
11
+ return null;
12
+ }
13
+ const parsed = parseWeb5Url(trimmedUrl);
14
+ if ((parsed == null ? void 0 : parsed.type) !== Web5UrlType.ENTITY || !parsed.entityType || !parsed.entityId) {
15
+ return null;
16
+ }
17
+ return {
18
+ entityType: parsed.entityType,
19
+ entityId: parsed.entityId
20
+ };
21
+ }
22
+ function matchesUrl(payloadItem, entityId, config) {
23
+ const urlValue = payloadItem[config.urlMatchProperty];
24
+ if (typeof urlValue !== 'string') {
25
+ return false;
26
+ }
27
+ const pattern = config.urlMatchPattern || 'endsWith';
28
+ switch (pattern) {
29
+ case 'endsWith':
30
+ return urlValue.endsWith(`/${entityId}`);
31
+ case 'contains':
32
+ return urlValue.includes(entityId);
33
+ case 'equals':
34
+ return urlValue === entityId;
35
+ default:
36
+ return urlValue.endsWith(`/${entityId}`);
37
+ }
38
+ }
39
+ function findEntityInPayload(entityType, entityId, payload, entityConfig) {
40
+ const typeConfig = entityConfig.entityTypes[entityType];
41
+ if (!typeConfig) {
42
+ return null;
43
+ }
44
+ const matchingTypeItems = payload.filter(item => item.type === typeConfig.payloadType);
45
+ const matchedItem = matchingTypeItems.find(item => matchesUrl(item, entityId, typeConfig));
46
+ return matchedItem || null;
47
+ }
48
+
49
+ /** @deprecated Use transformToGenericEntityData */
50
+ export function transformToSolutionEntityData(payloadItem, config) {
51
+ return transformToGenericEntityData(payloadItem, config);
52
+ }
53
+ function formatEntityDate(timestamp) {
54
+ var _parts$find, _parts$find2, _parts$find3;
55
+ const date = new Date(timestamp);
56
+ if (isNaN(date.getTime())) {
57
+ return undefined;
58
+ }
59
+ const formatter = new Intl.DateTimeFormat('en-US', {
60
+ day: 'numeric',
61
+ month: 'short',
62
+ timeZone: 'Europe/Kiev',
63
+ year: 'numeric'
64
+ });
65
+ const parts = formatter.formatToParts(date);
66
+ const day = (_parts$find = parts.find(part => part.type === 'day')) == null ? void 0 : _parts$find.value;
67
+ const month = (_parts$find2 = parts.find(part => part.type === 'month')) == null ? void 0 : _parts$find2.value;
68
+ const year = (_parts$find3 = parts.find(part => part.type === 'year')) == null ? void 0 : _parts$find3.value;
69
+ if (!day || !month || !year) {
70
+ return undefined;
71
+ }
72
+ return `${day} ${month} ${year}`;
73
+ }
74
+
75
+ /** @deprecated Use transformToGenericEntityData */
76
+ export function transformToBlogPostEntityData(payloadItem, config) {
77
+ return transformToGenericEntityData(payloadItem, config);
78
+ }
79
+ export function transformToGenericEntityData(payloadItem, config) {
80
+ var _payloadItem$labels, _payloadItem$tags;
81
+ let imageUrl;
82
+ const publishTimestamp = payloadItem.publishDate || payloadItem.published_at;
83
+ if (payloadItem.img) {
84
+ const imgAlreadyAbsolute = payloadItem.img.startsWith('http');
85
+ imageUrl = config.imageBaseUrl && !imgAlreadyAbsolute ? `${config.imageBaseUrl}${payloadItem.img}` : payloadItem.img;
86
+ }
87
+ return {
88
+ url: payloadItem.url,
89
+ title: payloadItem.title,
90
+ type: payloadItem.type,
91
+ description: payloadItem.description,
92
+ excerpt: payloadItem.excerpt,
93
+ imageUrl,
94
+ date: payloadItem.update_ts ? formatEntityDate(payloadItem.update_ts) : undefined,
95
+ publishDate: publishTimestamp ? formatEntityDate(publishTimestamp) : undefined,
96
+ author: payloadItem.author || payloadItem.authorName,
97
+ cmsItemId: payloadItem.cms_item_id,
98
+ usage: payloadItem.usage,
99
+ tags: (_payloadItem$labels = payloadItem.labels) != null && _payloadItem$labels.length ? payloadItem.labels : (_payloadItem$tags = payloadItem.tags) != null && _payloadItem$tags.length ? payloadItem.tags : undefined
100
+ };
101
+ }
102
+
103
+ /**
104
+ * Default entity extractor - config-driven extraction for any client.
105
+ * Uses entityConfig from client JSON to resolve web5://entity/ URLs against API payload.
106
+ */
107
+ export const defaultExtractor = {
108
+ extractEntityIdFromUrl,
109
+ findEntityInPayload
110
+ };
111
+ //# sourceMappingURL=defaultExtractor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Web5UrlType","isWeb5EntityUrl","parseWeb5Url","extractEntityIdFromUrl","entityUrl","trimmedUrl","trim","parsed","type","ENTITY","entityType","entityId","matchesUrl","payloadItem","config","urlValue","urlMatchProperty","pattern","urlMatchPattern","endsWith","includes","findEntityInPayload","payload","entityConfig","typeConfig","entityTypes","matchingTypeItems","filter","item","payloadType","matchedItem","find","transformToSolutionEntityData","transformToGenericEntityData","formatEntityDate","timestamp","_parts$find","_parts$find2","_parts$find3","date","Date","isNaN","getTime","undefined","formatter","Intl","DateTimeFormat","day","month","timeZone","year","parts","formatToParts","part","value","transformToBlogPostEntityData","_payloadItem$labels","_payloadItem$tags","imageUrl","publishTimestamp","publishDate","published_at","img","imgAlreadyAbsolute","startsWith","imageBaseUrl","url","title","description","excerpt","update_ts","author","authorName","cmsItemId","cms_item_id","usage","tags","labels","length","defaultExtractor"],"sources":["../../../src/entity/defaultExtractor.ts"],"sourcesContent":["import type { SolutionEntityData, BlogEntityData, EntityItemData } from '../component/types';\nimport type {\n ApiPayloadItem,\n EntityConfig,\n EntityTypeConfig,\n} from '../types/entity';\nimport type { EntityExtractor } from './types';\nimport { Web5UrlType, isWeb5EntityUrl } from '../types/link-types';\nimport { parseWeb5Url } from '../utils/entityLinkParser';\n\n/**\n * Extract entity type and ID from a web5://entity/ URL.\n * Delegates to the central `parseWeb5Url` parser.\n */\nfunction extractEntityIdFromUrl(\n entityUrl: string,\n): { entityType: string; entityId: string } | null {\n const trimmedUrl = entityUrl?.trim();\n if (!trimmedUrl || !isWeb5EntityUrl(trimmedUrl)) {\n return null;\n }\n const parsed = parseWeb5Url(trimmedUrl);\n if (parsed?.type !== Web5UrlType.ENTITY || !parsed.entityType || !parsed.entityId) {\n return null;\n }\n return { entityType: parsed.entityType, entityId: parsed.entityId };\n}\n\nfunction matchesUrl(\n payloadItem: ApiPayloadItem,\n entityId: string,\n config: EntityTypeConfig,\n): boolean {\n const urlValue = payloadItem[config.urlMatchProperty as keyof ApiPayloadItem];\n\n if (typeof urlValue !== 'string') {\n return false;\n }\n\n const pattern = config.urlMatchPattern || 'endsWith';\n\n switch (pattern) {\n case 'endsWith':\n return urlValue.endsWith(`/${entityId}`);\n case 'contains':\n return urlValue.includes(entityId);\n case 'equals':\n return urlValue === entityId;\n default:\n return urlValue.endsWith(`/${entityId}`);\n }\n}\n\nfunction findEntityInPayload(\n entityType: string,\n entityId: string,\n payload: ApiPayloadItem[],\n entityConfig: EntityConfig,\n): ApiPayloadItem | null {\n const typeConfig = entityConfig.entityTypes[entityType];\n\n if (!typeConfig) {\n return null;\n }\n\n const matchingTypeItems = payload.filter(\n (item) => item.type === typeConfig.payloadType,\n );\n\n const matchedItem = matchingTypeItems.find((item) =>\n matchesUrl(item, entityId, typeConfig),\n );\n\n return matchedItem || null;\n}\n\n/** @deprecated Use transformToGenericEntityData */\nexport function transformToSolutionEntityData(\n payloadItem: ApiPayloadItem,\n config: EntityTypeConfig,\n): SolutionEntityData {\n return transformToGenericEntityData(payloadItem, config);\n}\n\nfunction formatEntityDate(timestamp: string): string | undefined {\n const date = new Date(timestamp);\n if (isNaN(date.getTime())) {\n return undefined;\n }\n const formatter = new Intl.DateTimeFormat('en-US', {\n day: 'numeric',\n month: 'short',\n timeZone: 'Europe/Kiev',\n year: 'numeric',\n });\n const parts = formatter.formatToParts(date);\n const day = parts.find((part) => part.type === 'day')?.value;\n const month = parts.find((part) => part.type === 'month')?.value;\n const year = parts.find((part) => part.type === 'year')?.value;\n\n if (!day || !month || !year) {\n return undefined;\n }\n\n return `${day} ${month} ${year}`;\n}\n\n/** @deprecated Use transformToGenericEntityData */\nexport function transformToBlogPostEntityData(\n payloadItem: ApiPayloadItem,\n config: EntityTypeConfig,\n): BlogEntityData {\n return transformToGenericEntityData(payloadItem, config);\n}\n\nexport function transformToGenericEntityData(\n payloadItem: ApiPayloadItem,\n config: EntityTypeConfig,\n): EntityItemData {\n let imageUrl: string | undefined;\n const publishTimestamp = payloadItem.publishDate || payloadItem.published_at;\n\n if (payloadItem.img) {\n const imgAlreadyAbsolute = payloadItem.img.startsWith('http');\n imageUrl = config.imageBaseUrl && !imgAlreadyAbsolute\n ? `${config.imageBaseUrl}${payloadItem.img}`\n : payloadItem.img;\n }\n\n return {\n url: payloadItem.url,\n title: payloadItem.title,\n type: payloadItem.type,\n description: payloadItem.description,\n excerpt: payloadItem.excerpt,\n imageUrl,\n date: payloadItem.update_ts\n ? formatEntityDate(payloadItem.update_ts)\n : undefined,\n publishDate: publishTimestamp\n ? formatEntityDate(publishTimestamp)\n : undefined,\n author: payloadItem.author || payloadItem.authorName,\n cmsItemId: payloadItem.cms_item_id,\n usage: payloadItem.usage,\n tags: payloadItem.labels?.length\n ? payloadItem.labels\n : payloadItem.tags?.length\n ? payloadItem.tags\n : undefined,\n };\n}\n\n/**\n * Default entity extractor - config-driven extraction for any client.\n * Uses entityConfig from client JSON to resolve web5://entity/ URLs against API payload.\n */\nexport const defaultExtractor: EntityExtractor = {\n extractEntityIdFromUrl,\n findEntityInPayload,\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Pure helper — given a list of entity refs, a payload, an entity config, an
3
+ * extractor, and a per-type transform, return a new array where any entity
4
+ * whose `entityUrl` resolves to a payload item has its `.data` populated.
5
+ *
6
+ * Pure / framework-free so both the main app's React hook
7
+ * (`useResolveGenericEntityData`, Step 1) and the placement bundle's
8
+ * resolver (DL #099 PR 4) can share it.
9
+ *
10
+ * Skips an entity when:
11
+ * - it already has `.data` (caller-provided wins),
12
+ * - the URL doesn't parse as a `web5://entity/…` URL,
13
+ * - the parsed `entityType` has no config row,
14
+ * - no payload item matches.
15
+ *
16
+ * Returns the same array shape as the input; entities without a match are
17
+ * passed through by reference so React memoization upstream stays cheap.
18
+ */
19
+ export function enrichEntitiesFromPayload(entities, payload, entityConfig, extractor, transform) {
20
+ if (!payload.length) return entities;
21
+ return entities.map(entity => {
22
+ if (entity.data) return entity;
23
+ const parsed = extractor.extractEntityIdFromUrl(entity.entityUrl);
24
+ if (!parsed) return entity;
25
+ const typeConfig = entityConfig.entityTypes[parsed.entityType];
26
+ if (!typeConfig) return entity;
27
+ const payloadItem = extractor.findEntityInPayload(parsed.entityType, parsed.entityId, payload, entityConfig);
28
+ if (!payloadItem) return entity;
29
+ return {
30
+ ...entity,
31
+ data: transform(payloadItem, typeConfig)
32
+ };
33
+ });
34
+ }
35
+ //# sourceMappingURL=enrichEntitiesFromPayload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["enrichEntitiesFromPayload","entities","payload","entityConfig","extractor","transform","length","map","entity","data","parsed","extractEntityIdFromUrl","entityUrl","typeConfig","entityTypes","entityType","payloadItem","findEntityInPayload","entityId"],"sources":["../../../src/entity/enrichEntitiesFromPayload.ts"],"sourcesContent":["import type {\n ApiPayloadItem,\n EntityConfig,\n EntityTypeConfig,\n} from '../types/entity';\nimport type { EntityExtractor } from './types';\n\n/**\n * Pure helper — given a list of entity refs, a payload, an entity config, an\n * extractor, and a per-type transform, return a new array where any entity\n * whose `entityUrl` resolves to a payload item has its `.data` populated.\n *\n * Pure / framework-free so both the main app's React hook\n * (`useResolveGenericEntityData`, Step 1) and the placement bundle's\n * resolver (DL #099 PR 4) can share it.\n *\n * Skips an entity when:\n * - it already has `.data` (caller-provided wins),\n * - the URL doesn't parse as a `web5://entity/…` URL,\n * - the parsed `entityType` has no config row,\n * - no payload item matches.\n *\n * Returns the same array shape as the input; entities without a match are\n * passed through by reference so React memoization upstream stays cheap.\n */\nexport function enrichEntitiesFromPayload<\n TEntity extends {\n entityId: string;\n entityUrl: string;\n entityType: string;\n data?: TEntityData;\n },\n TEntityData,\n>(\n entities: TEntity[],\n payload: ApiPayloadItem[],\n entityConfig: EntityConfig,\n extractor: EntityExtractor,\n transform: (raw: ApiPayloadItem, config: EntityTypeConfig) => TEntityData,\n): TEntity[] {\n if (!payload.length) return entities;\n\n return entities.map((entity) => {\n if (entity.data) return entity;\n\n const parsed = extractor.extractEntityIdFromUrl(entity.entityUrl);\n if (!parsed) return entity;\n\n const typeConfig = entityConfig.entityTypes[parsed.entityType];\n if (!typeConfig) return entity;\n\n const payloadItem = extractor.findEntityInPayload(\n parsed.entityType,\n parsed.entityId,\n payload,\n entityConfig,\n );\n if (!payloadItem) return entity;\n\n return { ...entity, data: transform(payloadItem, typeConfig) };\n });\n}\n"],"mappings":"AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,yBAAyBA,CASvCC,QAAmB,EACnBC,OAAyB,EACzBC,YAA0B,EAC1BC,SAA0B,EAC1BC,SAAyE,EAC9D;EACX,IAAI,CAACH,OAAO,CAACI,MAAM,EAAE,OAAOL,QAAQ;EAEpC,OAAOA,QAAQ,CAACM,GAAG,CAAEC,MAAM,IAAK;IAC9B,IAAIA,MAAM,CAACC,IAAI,EAAE,OAAOD,MAAM;IAE9B,MAAME,MAAM,GAAGN,SAAS,CAACO,sBAAsB,CAACH,MAAM,CAACI,SAAS,CAAC;IACjE,IAAI,CAACF,MAAM,EAAE,OAAOF,MAAM;IAE1B,MAAMK,UAAU,GAAGV,YAAY,CAACW,WAAW,CAACJ,MAAM,CAACK,UAAU,CAAC;IAC9D,IAAI,CAACF,UAAU,EAAE,OAAOL,MAAM;IAE9B,MAAMQ,WAAW,GAAGZ,SAAS,CAACa,mBAAmB,CAC/CP,MAAM,CAACK,UAAU,EACjBL,MAAM,CAACQ,QAAQ,EACfhB,OAAO,EACPC,YACF,CAAC;IACD,IAAI,CAACa,WAAW,EAAE,OAAOR,MAAM;IAE/B,OAAO;MAAE,GAAGA,MAAM;MAAEC,IAAI,EAAEJ,SAAS,CAACW,WAAW,EAAEH,UAAU;IAAE,CAAC;EAChE,CAAC,CAAC;AACJ","ignoreList":[]}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * GET `/wix-assistant-web5/v1/items?id=<id>&id=<id>…` and return a Map keyed
3
+ * by id. Pure async helper — no React, no host environment. Shared between
4
+ * the main app's `useEntityListData` hook (web50-server-ui) and the
5
+ * placement bundle's `useResolveGenericEntityData` impl (DL #099). Both
6
+ * pass an injected `fetchImpl` so the call rides on whichever auth
7
+ * strategy the surface uses (`@wix/sdk` Wix-auth in the placement,
8
+ * the app's `client.fetchWithAuth` in the main app).
9
+ *
10
+ * The same singleton cache used to live inside `useEntityListData`. Hoisting
11
+ * it here means a section that renders first in the main app and then
12
+ * again inside a placement (or vice-versa) reuses the same lookup.
13
+ */
14
+ const entityCache = new Map();
15
+ const DEFAULT_ENDPOINT = 'https://www.wixapis.com/wix-assistant-web5/v1/items';
16
+ function buildUrl(endpoint, ids) {
17
+ const url = new URL(endpoint);
18
+ ids.forEach(id => url.searchParams.append('id', id));
19
+ return url;
20
+ }
21
+
22
+ /**
23
+ * Returns a Map of `id → ApiPayloadItem`. Hits the cache first; only
24
+ * uncached ids ride the network. The Map includes both cached and freshly
25
+ * fetched rows.
26
+ *
27
+ * On HTTP error or network failure, the returned Map omits the requested
28
+ * id; callers decide whether to fire a diagnostic. The promise resolves
29
+ * either way — the caller's UI should keep rendering with whatever it has.
30
+ */
31
+ export async function fetchEntityListData(ids, opts) {
32
+ if (opts === void 0) {
33
+ opts = {};
34
+ }
35
+ const result = new Map();
36
+ if (!ids.length) return result;
37
+ const uncachedIds = [];
38
+ for (const id of ids) {
39
+ const cached = entityCache.get(id);
40
+ if (cached) {
41
+ result.set(id, cached);
42
+ } else {
43
+ uncachedIds.push(id);
44
+ }
45
+ }
46
+ if (uncachedIds.length === 0) return result;
47
+ const fetchImpl = opts.fetchImpl ?? (typeof window !== 'undefined' ? fetch.bind(window) : fetch);
48
+ const endpoint = opts.endpoint ?? DEFAULT_ENDPOINT;
49
+ const url = buildUrl(endpoint, uncachedIds);
50
+ try {
51
+ const res = await fetchImpl(url.toString(), {
52
+ method: 'GET',
53
+ headers: {
54
+ 'Content-Type': 'application/json'
55
+ }
56
+ });
57
+ if (!res.ok) return result;
58
+ const body = await res.json();
59
+ for (const item of body.results ?? []) {
60
+ const id = item.id;
61
+ if (id) {
62
+ entityCache.set(id, item);
63
+ result.set(id, item);
64
+ }
65
+ }
66
+ } catch {
67
+ // network / parse error — return whatever we have from cache
68
+ }
69
+ return result;
70
+ }
71
+
72
+ /** Test helper — drops the singleton cache so specs start clean. */
73
+ export function __resetEntityListDataCache() {
74
+ entityCache.clear();
75
+ }
76
+ //# sourceMappingURL=fetchEntityListData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["entityCache","Map","DEFAULT_ENDPOINT","buildUrl","endpoint","ids","url","URL","forEach","id","searchParams","append","fetchEntityListData","opts","result","length","uncachedIds","cached","get","set","push","fetchImpl","window","fetch","bind","res","toString","method","headers","ok","body","json","item","results","__resetEntityListDataCache","clear"],"sources":["../../../src/entity/fetchEntityListData.ts"],"sourcesContent":["import type { ApiPayloadItem } from '../types/entity';\n\n/**\n * GET `/wix-assistant-web5/v1/items?id=<id>&id=<id>…` and return a Map keyed\n * by id. Pure async helper — no React, no host environment. Shared between\n * the main app's `useEntityListData` hook (web50-server-ui) and the\n * placement bundle's `useResolveGenericEntityData` impl (DL #099). Both\n * pass an injected `fetchImpl` so the call rides on whichever auth\n * strategy the surface uses (`@wix/sdk` Wix-auth in the placement,\n * the app's `client.fetchWithAuth` in the main app).\n *\n * The same singleton cache used to live inside `useEntityListData`. Hoisting\n * it here means a section that renders first in the main app and then\n * again inside a placement (or vice-versa) reuses the same lookup.\n */\nconst entityCache = new Map<string, ApiPayloadItem>();\n\nexport interface FetchEntityListDataOptions {\n /** Wix-API base + path. Default: the prod items endpoint. */\n endpoint?: string;\n /** Auth-aware fetch. Required when the host needs Wix OAuth (any cross-origin call). */\n fetchImpl?: typeof fetch;\n}\n\nconst DEFAULT_ENDPOINT =\n 'https://www.wixapis.com/wix-assistant-web5/v1/items';\n\nfunction buildUrl(endpoint: string, ids: string[]): URL {\n const url = new URL(endpoint);\n ids.forEach((id) => url.searchParams.append('id', id));\n return url;\n}\n\n/**\n * Returns a Map of `id → ApiPayloadItem`. Hits the cache first; only\n * uncached ids ride the network. The Map includes both cached and freshly\n * fetched rows.\n *\n * On HTTP error or network failure, the returned Map omits the requested\n * id; callers decide whether to fire a diagnostic. The promise resolves\n * either way — the caller's UI should keep rendering with whatever it has.\n */\nexport async function fetchEntityListData(\n ids: string[],\n opts: FetchEntityListDataOptions = {},\n): Promise<Map<string, ApiPayloadItem>> {\n const result = new Map<string, ApiPayloadItem>();\n if (!ids.length) return result;\n\n const uncachedIds: string[] = [];\n for (const id of ids) {\n const cached = entityCache.get(id);\n if (cached) {\n result.set(id, cached);\n } else {\n uncachedIds.push(id);\n }\n }\n if (uncachedIds.length === 0) return result;\n\n const fetchImpl =\n opts.fetchImpl ??\n (typeof window !== 'undefined' ? fetch.bind(window) : fetch);\n const endpoint = opts.endpoint ?? DEFAULT_ENDPOINT;\n const url = buildUrl(endpoint, uncachedIds);\n\n try {\n const res = await fetchImpl(url.toString(), {\n method: 'GET',\n headers: { 'Content-Type': 'application/json' },\n });\n if (!res.ok) return result;\n const body = (await res.json()) as { results?: ApiPayloadItem[] };\n for (const item of body.results ?? []) {\n const id = (item as unknown as { id?: string }).id;\n if (id) {\n entityCache.set(id, item);\n result.set(id, item);\n }\n }\n } catch {\n // network / parse error — return whatever we have from cache\n }\n\n return result;\n}\n\n/** Test helper — drops the singleton cache so specs start clean. */\nexport function __resetEntityListDataCache(): void {\n entityCache.clear();\n}\n"],"mappings":"AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,WAAW,GAAG,IAAIC,GAAG,CAAyB,CAAC;AASrD,MAAMC,gBAAgB,GACpB,qDAAqD;AAEvD,SAASC,QAAQA,CAACC,QAAgB,EAAEC,GAAa,EAAO;EACtD,MAAMC,GAAG,GAAG,IAAIC,GAAG,CAACH,QAAQ,CAAC;EAC7BC,GAAG,CAACG,OAAO,CAAEC,EAAE,IAAKH,GAAG,CAACI,YAAY,CAACC,MAAM,CAAC,IAAI,EAAEF,EAAE,CAAC,CAAC;EACtD,OAAOH,GAAG;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeM,mBAAmBA,CACvCP,GAAa,EACbQ,IAAgC,EACM;EAAA,IADtCA,IAAgC;IAAhCA,IAAgC,GAAG,CAAC,CAAC;EAAA;EAErC,MAAMC,MAAM,GAAG,IAAIb,GAAG,CAAyB,CAAC;EAChD,IAAI,CAACI,GAAG,CAACU,MAAM,EAAE,OAAOD,MAAM;EAE9B,MAAME,WAAqB,GAAG,EAAE;EAChC,KAAK,MAAMP,EAAE,IAAIJ,GAAG,EAAE;IACpB,MAAMY,MAAM,GAAGjB,WAAW,CAACkB,GAAG,CAACT,EAAE,CAAC;IAClC,IAAIQ,MAAM,EAAE;MACVH,MAAM,CAACK,GAAG,CAACV,EAAE,EAAEQ,MAAM,CAAC;IACxB,CAAC,MAAM;MACLD,WAAW,CAACI,IAAI,CAACX,EAAE,CAAC;IACtB;EACF;EACA,IAAIO,WAAW,CAACD,MAAM,KAAK,CAAC,EAAE,OAAOD,MAAM;EAE3C,MAAMO,SAAS,GACbR,IAAI,CAACQ,SAAS,KACb,OAAOC,MAAM,KAAK,WAAW,GAAGC,KAAK,CAACC,IAAI,CAACF,MAAM,CAAC,GAAGC,KAAK,CAAC;EAC9D,MAAMnB,QAAQ,GAAGS,IAAI,CAACT,QAAQ,IAAIF,gBAAgB;EAClD,MAAMI,GAAG,GAAGH,QAAQ,CAACC,QAAQ,EAAEY,WAAW,CAAC;EAE3C,IAAI;IACF,MAAMS,GAAG,GAAG,MAAMJ,SAAS,CAACf,GAAG,CAACoB,QAAQ,CAAC,CAAC,EAAE;MAC1CC,MAAM,EAAE,KAAK;MACbC,OAAO,EAAE;QAAE,cAAc,EAAE;MAAmB;IAChD,CAAC,CAAC;IACF,IAAI,CAACH,GAAG,CAACI,EAAE,EAAE,OAAOf,MAAM;IAC1B,MAAMgB,IAAI,GAAI,MAAML,GAAG,CAACM,IAAI,CAAC,CAAoC;IACjE,KAAK,MAAMC,IAAI,IAAIF,IAAI,CAACG,OAAO,IAAI,EAAE,EAAE;MACrC,MAAMxB,EAAE,GAAIuB,IAAI,CAAgCvB,EAAE;MAClD,IAAIA,EAAE,EAAE;QACNT,WAAW,CAACmB,GAAG,CAACV,EAAE,EAAEuB,IAAI,CAAC;QACzBlB,MAAM,CAACK,GAAG,CAACV,EAAE,EAAEuB,IAAI,CAAC;MACtB;IACF;EACF,CAAC,CAAC,MAAM;IACN;EAAA;EAGF,OAAOlB,MAAM;AACf;;AAEA;AACA,OAAO,SAASoB,0BAA0BA,CAAA,EAAS;EACjDlC,WAAW,CAACmC,KAAK,CAAC,CAAC;AACrB","ignoreList":[]}
@@ -0,0 +1,29 @@
1
+ import { defaultExtractor } from './defaultExtractor.js';
2
+ export { defaultExtractor, transformToSolutionEntityData, transformToBlogPostEntityData, transformToGenericEntityData } from './defaultExtractor.js';
3
+ export { enrichEntitiesFromPayload } from './enrichEntitiesFromPayload.js';
4
+ export { fetchEntityListData } from './fetchEntityListData.js';
5
+ /**
6
+ * Registry of client-specific entity extractors.
7
+ * Only needed if a client requires custom extraction logic beyond the config-driven default.
8
+ */
9
+ const extractorRegistry = {};
10
+
11
+ /**
12
+ * Get the entity extractor for a specific client.
13
+ * The default extractor is config-driven and works for any client with entityConfig.
14
+ */
15
+ export function getEntityExtractor(clientId) {
16
+ if (clientId && extractorRegistry[clientId]) {
17
+ return extractorRegistry[clientId];
18
+ }
19
+ return defaultExtractor;
20
+ }
21
+
22
+ /**
23
+ * Register a custom entity extractor for a client
24
+ * Useful for runtime registration or testing
25
+ */
26
+ export function registerEntityExtractor(clientId, extractor) {
27
+ extractorRegistry[clientId] = extractor;
28
+ }
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defaultExtractor","transformToSolutionEntityData","transformToBlogPostEntityData","transformToGenericEntityData","enrichEntitiesFromPayload","fetchEntityListData","extractorRegistry","getEntityExtractor","clientId","registerEntityExtractor","extractor"],"sources":["../../../src/entity/index.ts"],"sourcesContent":["import type { EntityExtractor } from './types';\nimport { defaultExtractor } from './defaultExtractor';\n\nexport {\n defaultExtractor,\n transformToSolutionEntityData,\n transformToBlogPostEntityData,\n transformToGenericEntityData,\n} from './defaultExtractor';\n\nexport { enrichEntitiesFromPayload } from './enrichEntitiesFromPayload';\nexport {\n fetchEntityListData,\n type FetchEntityListDataOptions,\n} from './fetchEntityListData';\n\nexport type { EntityExtractor } from './types';\n\n/**\n * Registry of client-specific entity extractors.\n * Only needed if a client requires custom extraction logic beyond the config-driven default.\n */\nconst extractorRegistry: Record<string, EntityExtractor> = {};\n\n/**\n * Get the entity extractor for a specific client.\n * The default extractor is config-driven and works for any client with entityConfig.\n */\nexport function getEntityExtractor(clientId?: string): EntityExtractor {\n if (clientId && extractorRegistry[clientId]) {\n return extractorRegistry[clientId];\n }\n return defaultExtractor;\n}\n\n/**\n * Register a custom entity extractor for a client\n * Useful for runtime registration or testing\n */\nexport function registerEntityExtractor(\n clientId: string,\n extractor: EntityExtractor,\n): void {\n extractorRegistry[clientId] = extractor;\n}\n"],"mappings":"AACA,SAASA,gBAAgB,QAAQ,oBAAoB;AAErD,SACEA,gBAAgB,EAChBC,6BAA6B,EAC7BC,6BAA6B,EAC7BC,4BAA4B,QACvB,oBAAoB;AAE3B,SAASC,yBAAyB,QAAQ,6BAA6B;AACvE,SACEC,mBAAmB,QAEd,uBAAuB;AAI9B;AACA;AACA;AACA;AACA,MAAMC,iBAAkD,GAAG,CAAC,CAAC;;AAE7D;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAACC,QAAiB,EAAmB;EACrE,IAAIA,QAAQ,IAAIF,iBAAiB,CAACE,QAAQ,CAAC,EAAE;IAC3C,OAAOF,iBAAiB,CAACE,QAAQ,CAAC;EACpC;EACA,OAAOR,gBAAgB;AACzB;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASS,uBAAuBA,CACrCD,QAAgB,EAChBE,SAA0B,EACpB;EACNJ,iBAAiB,CAACE,QAAQ,CAAC,GAAGE,SAAS;AACzC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../src/entity/types.ts"],"sourcesContent":["import type { ApiPayloadItem, EntityConfig } from '../types/entity';\n\n/**\n * Interface for client-specific entity extractors.\n * Provides generic URL parsing and payload lookup — no entity-type-specific methods.\n */\nexport interface EntityExtractor {\n extractEntityIdFromUrl(\n entityUrl: string,\n ): { entityType: string; entityId: string } | null;\n\n findEntityInPayload(\n entityType: string,\n entityId: string,\n payload: ApiPayloadItem[],\n entityConfig: EntityConfig,\n ): ApiPayloadItem | null;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Conversation Error Types
3
+ *
4
+ * Canonical error type definitions and utilities for the error handling pipeline.
5
+ * Maps HTTP status codes and error conditions to typed error identifiers.
6
+ *
7
+ * Prefix conventions:
8
+ * conversation- → errors during conversation streaming flow
9
+ * history- → errors during conversation history loading
10
+ */
11
+
12
+ /** Error markdown strings that ErrorSectionDefinition recognizes */
13
+ export const ERROR_MARKDOWN = {
14
+ 'conversation-404': 'Error: conversation-404',
15
+ 'conversation-403': 'Error: conversation-403',
16
+ 'conversation-500': 'Error: conversation-500',
17
+ 'conversation-generic-network-error': 'Error: conversation-generic-network-error',
18
+ 'conversation-timeout': 'Error: conversation-timeout',
19
+ 'conversation-streaming-error': 'Error: conversation-streaming-error',
20
+ 'conversation-partial-load': 'Error: conversation-partial-load',
21
+ 'conversation-llm-empty-response': 'Error: conversation-llm-empty-response',
22
+ 'conversation-llm-error-text': 'Error',
23
+ 'history-load-error': 'Error: history-load-error'
24
+ };
25
+
26
+ /** Maps HTTP status code to error type */
27
+ export const getErrorTypeFromStatus = status => {
28
+ if (status === 404) {
29
+ return 'conversation-404';
30
+ }
31
+ if (status === 403) {
32
+ return 'conversation-403';
33
+ }
34
+ if (status >= 500) {
35
+ return 'conversation-500';
36
+ }
37
+ if (status >= 400) {
38
+ return 'conversation-generic-network-error';
39
+ }
40
+ return 'conversation-llm-error-text';
41
+ };
42
+
43
+ /** Creates error markdown string for the given error type */
44
+ export const createErrorMarkdown = type => {
45
+ return ERROR_MARKDOWN[type] || ERROR_MARKDOWN['conversation-llm-error-text'];
46
+ };
47
+
48
+ /** Streaming timeout in milliseconds (60 seconds) */
49
+ export const STREAMING_TIMEOUT_MS = 60000;
50
+ //# sourceMappingURL=conversationErrorTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ERROR_MARKDOWN","getErrorTypeFromStatus","status","createErrorMarkdown","type","STREAMING_TIMEOUT_MS"],"sources":["../../../src/errors/conversationErrorTypes.ts"],"sourcesContent":["/**\n * Conversation Error Types\n *\n * Canonical error type definitions and utilities for the error handling pipeline.\n * Maps HTTP status codes and error conditions to typed error identifiers.\n *\n * Prefix conventions:\n * conversation- → errors during conversation streaming flow\n * history- → errors during conversation history loading\n */\n\nexport type ConversationErrorType =\n | 'conversation-llm-error-text'\n | 'conversation-llm-empty-response'\n | 'conversation-500'\n | 'conversation-generic-network-error'\n | 'conversation-timeout'\n | 'conversation-streaming-error'\n | 'conversation-404'\n | 'conversation-403'\n | 'conversation-partial-load'\n | 'history-load-error';\n\n/** Error markdown strings that ErrorSectionDefinition recognizes */\nexport const ERROR_MARKDOWN: Record<ConversationErrorType, string> = {\n 'conversation-404': 'Error: conversation-404',\n 'conversation-403': 'Error: conversation-403',\n 'conversation-500': 'Error: conversation-500',\n 'conversation-generic-network-error':\n 'Error: conversation-generic-network-error',\n 'conversation-timeout': 'Error: conversation-timeout',\n 'conversation-streaming-error': 'Error: conversation-streaming-error',\n 'conversation-partial-load': 'Error: conversation-partial-load',\n 'conversation-llm-empty-response': 'Error: conversation-llm-empty-response',\n 'conversation-llm-error-text': 'Error',\n 'history-load-error': 'Error: history-load-error',\n};\n\n/** Maps HTTP status code to error type */\nexport const getErrorTypeFromStatus = (\n status: number,\n): ConversationErrorType => {\n if (status === 404) {\n return 'conversation-404';\n }\n if (status === 403) {\n return 'conversation-403';\n }\n if (status >= 500) {\n return 'conversation-500';\n }\n if (status >= 400) {\n return 'conversation-generic-network-error';\n }\n return 'conversation-llm-error-text';\n};\n\n/** Creates error markdown string for the given error type */\nexport const createErrorMarkdown = (type: ConversationErrorType): string => {\n return ERROR_MARKDOWN[type] || ERROR_MARKDOWN['conversation-llm-error-text'];\n};\n\n/** Streaming timeout in milliseconds (60 seconds) */\nexport const STREAMING_TIMEOUT_MS = 60000;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAcA;AACA,OAAO,MAAMA,cAAqD,GAAG;EACnE,kBAAkB,EAAE,yBAAyB;EAC7C,kBAAkB,EAAE,yBAAyB;EAC7C,kBAAkB,EAAE,yBAAyB;EAC7C,oCAAoC,EAClC,2CAA2C;EAC7C,sBAAsB,EAAE,6BAA6B;EACrD,8BAA8B,EAAE,qCAAqC;EACrE,2BAA2B,EAAE,kCAAkC;EAC/D,iCAAiC,EAAE,wCAAwC;EAC3E,6BAA6B,EAAE,OAAO;EACtC,oBAAoB,EAAE;AACxB,CAAC;;AAED;AACA,OAAO,MAAMC,sBAAsB,GACjCC,MAAc,IACY;EAC1B,IAAIA,MAAM,KAAK,GAAG,EAAE;IAClB,OAAO,kBAAkB;EAC3B;EACA,IAAIA,MAAM,KAAK,GAAG,EAAE;IAClB,OAAO,kBAAkB;EAC3B;EACA,IAAIA,MAAM,IAAI,GAAG,EAAE;IACjB,OAAO,kBAAkB;EAC3B;EACA,IAAIA,MAAM,IAAI,GAAG,EAAE;IACjB,OAAO,oCAAoC;EAC7C;EACA,OAAO,6BAA6B;AACtC,CAAC;;AAED;AACA,OAAO,MAAMC,mBAAmB,GAAIC,IAA2B,IAAa;EAC1E,OAAOJ,cAAc,CAACI,IAAI,CAAC,IAAIJ,cAAc,CAAC,6BAA6B,CAAC;AAC9E,CAAC;;AAED;AACA,OAAO,MAAMK,oBAAoB,GAAG,KAAK","ignoreList":[]}