@8wave/ai-elements 0.115.0-beta.52 → 0.115.0-beta.60

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 (206) hide show
  1. package/dist/_chunks/Agent-Bz23Ejuh.js +705 -0
  2. package/dist/_chunks/Agent-Bz23Ejuh.js.map +1 -0
  3. package/dist/_chunks/{PkChatbotFilePreview-DcqwX9nI.js → PkChatbotFilePreview-CyaNjBrA.js} +2 -2
  4. package/dist/_chunks/{PkChatbotFilePreview-DcqwX9nI.js.map → PkChatbotFilePreview-CyaNjBrA.js.map} +1 -1
  5. package/dist/_chunks/{PkHeldImage-BtaPh0Jr.js → PkHeldImage-CtqqMvpW.js} +2 -2
  6. package/dist/_chunks/{PkHeldImage-BtaPh0Jr.js.map → PkHeldImage-CtqqMvpW.js.map} +1 -1
  7. package/dist/_chunks/{PkLazyImg-Cx2e4KmY.js → PkLazyImg-Ci06XyhW.js} +2 -2
  8. package/dist/_chunks/{PkLazyImg-Cx2e4KmY.js.map → PkLazyImg-Ci06XyhW.js.map} +1 -1
  9. package/dist/_chunks/{PkStreamingMarkdown-B_qmgO9_.js → PkStreamingMarkdown-DbSttKVa.js} +3 -3
  10. package/dist/_chunks/{PkStreamingMarkdown-B_qmgO9_.js.map → PkStreamingMarkdown-DbSttKVa.js.map} +1 -1
  11. package/dist/_chunks/{PkToolEditSpreadsheet-BSxYLcys.js → PkToolEditSpreadsheet-BrYSJlT4.js} +3 -3
  12. package/dist/_chunks/{PkToolEditSpreadsheet-BSxYLcys.js.map → PkToolEditSpreadsheet-BrYSJlT4.js.map} +1 -1
  13. package/dist/_chunks/{PkToolRequestGeolocation-YW0ilIxN.js → PkToolRequestGeolocation-D4rIR3LN.js} +3 -3
  14. package/dist/_chunks/{PkToolRequestGeolocation-YW0ilIxN.js.map → PkToolRequestGeolocation-D4rIR3LN.js.map} +1 -1
  15. package/dist/_chunks/{PkToolRequestOAuthConnection-Cx4aFL5g.js → PkToolRequestOAuthConnection-epwcNb5F.js} +3 -3
  16. package/dist/_chunks/{PkToolRequestOAuthConnection-Cx4aFL5g.js.map → PkToolRequestOAuthConnection-epwcNb5F.js.map} +1 -1
  17. package/dist/_chunks/{PkToolShowArtifact-Bgj02cPe.js → PkToolShowArtifact-BGUn1sMi.js} +3 -3
  18. package/dist/_chunks/{PkToolShowArtifact-Bgj02cPe.js.map → PkToolShowArtifact-BGUn1sMi.js.map} +1 -1
  19. package/dist/_chunks/{PkToolShowCalendarEvent-BLSTS6zf.js → PkToolShowCalendarEvent-DwxqgAUr.js} +3 -3
  20. package/dist/_chunks/PkToolShowCalendarEvent-DwxqgAUr.js.map +1 -0
  21. package/dist/_chunks/{PkToolShowComparison-DdT-C7iJ.js → PkToolShowComparison-hDhhVvwp.js} +2 -2
  22. package/dist/_chunks/{PkToolShowComparison-DdT-C7iJ.js.map → PkToolShowComparison-hDhhVvwp.js.map} +1 -1
  23. package/dist/_chunks/{PkToolShowContactForm-Die8UpNv.js → PkToolShowContactForm-ChaAOt5I.js} +4 -4
  24. package/dist/_chunks/{PkToolShowContactForm-Die8UpNv.js.map → PkToolShowContactForm-ChaAOt5I.js.map} +1 -1
  25. package/dist/_chunks/{PkToolShowDiagram-Ct-dFEmS.js → PkToolShowDiagram-CyNPq6j7.js} +2 -2
  26. package/dist/_chunks/{PkToolShowDiagram-Ct-dFEmS.js.map → PkToolShowDiagram-CyNPq6j7.js.map} +1 -1
  27. package/dist/_chunks/{PkToolShowEmail-BvH4Czk2.js → PkToolShowEmail-BM16pMjW.js} +2 -2
  28. package/dist/_chunks/{PkToolShowEmail-BvH4Czk2.js.map → PkToolShowEmail-BM16pMjW.js.map} +1 -1
  29. package/dist/_chunks/{PkToolShowForm-Dmq95u6b.js → PkToolShowForm-BpTuRgHg.js} +8 -8
  30. package/dist/_chunks/PkToolShowForm-BpTuRgHg.js.map +1 -0
  31. package/dist/_chunks/{PkToolShowImageGallery-CKuyTxih.js → PkToolShowImageGallery-CgjP34RE.js} +4 -4
  32. package/dist/_chunks/{PkToolShowImageGallery-CKuyTxih.js.map → PkToolShowImageGallery-CgjP34RE.js.map} +1 -1
  33. package/dist/_chunks/{PkToolShowLocation-DLYMzcrZ.js → PkToolShowLocation-rK5fcW4y.js} +2 -2
  34. package/dist/_chunks/{PkToolShowLocation-DLYMzcrZ.js.map → PkToolShowLocation-rK5fcW4y.js.map} +1 -1
  35. package/dist/_chunks/{PkToolShowMessage-BGcIhbEe.js → PkToolShowMessage-DgT-JkYg.js} +2 -2
  36. package/dist/_chunks/{PkToolShowMessage-BGcIhbEe.js.map → PkToolShowMessage-DgT-JkYg.js.map} +1 -1
  37. package/dist/_chunks/PkToolShowProductList-BIeg8NR-.js +72 -0
  38. package/dist/_chunks/PkToolShowProductList-BIeg8NR-.js.map +1 -0
  39. package/dist/_chunks/{PkToolShowQrCode-DDT92XTk.js → PkToolShowQrCode-C2hZDGqM.js} +2 -2
  40. package/dist/_chunks/{PkToolShowQrCode-DDT92XTk.js.map → PkToolShowQrCode-C2hZDGqM.js.map} +1 -1
  41. package/dist/_chunks/{PkToolShowSources-MJRFeqMA.js → PkToolShowSources-B9nZyCAn.js} +4 -4
  42. package/dist/_chunks/{PkToolShowSources-MJRFeqMA.js.map → PkToolShowSources-B9nZyCAn.js.map} +1 -1
  43. package/dist/_chunks/{PkToolShowSuggestedReply-DPVS3C74.js → PkToolShowSuggestedReply-D6g3UYqI.js} +3 -3
  44. package/dist/_chunks/{PkToolShowSuggestedReply-DPVS3C74.js.map → PkToolShowSuggestedReply-D6g3UYqI.js.map} +1 -1
  45. package/dist/_chunks/{PkToolShowVideo-DnvvRE7H.js → PkToolShowVideo-B6GG8PJm.js} +4 -4
  46. package/dist/_chunks/{PkToolShowVideo-DnvvRE7H.js.map → PkToolShowVideo-B6GG8PJm.js.map} +1 -1
  47. package/dist/_chunks/{PkToolShowWeather-DrxYD77R.js → PkToolShowWeather-C80WsCYi.js} +2 -2
  48. package/dist/_chunks/{PkToolShowWeather-DrxYD77R.js.map → PkToolShowWeather-C80WsCYi.js.map} +1 -1
  49. package/dist/_chunks/{PkToolShowWebPages-CYbiGa7e.js → PkToolShowWebPages-BkUh-IyZ.js} +11 -11
  50. package/dist/_chunks/PkToolShowWebPages-BkUh-IyZ.js.map +1 -0
  51. package/dist/_chunks/{VvCheckbox.es-VDzdPrIO.js → VvCheckbox.es-UTRUhwdC.js} +2 -2
  52. package/dist/_chunks/{VvCheckbox.es-VDzdPrIO.js.map → VvCheckbox.es-UTRUhwdC.js.map} +1 -1
  53. package/dist/_chunks/{VvCheckboxGroup.es-D3Q0u-Xo.js → VvCheckboxGroup.es-Cj7KLXHq.js} +2 -2
  54. package/dist/_chunks/{VvCheckboxGroup.es-D3Q0u-Xo.js.map → VvCheckboxGroup.es-Cj7KLXHq.js.map} +1 -1
  55. package/dist/_chunks/{VvCombobox.es-CcgeeuW6.js → VvCombobox.es-DptfdnAe.js} +2 -2
  56. package/dist/_chunks/{VvCombobox.es-CcgeeuW6.js.map → VvCombobox.es-DptfdnAe.js.map} +1 -1
  57. package/dist/_chunks/{VvInputText.es-C5Y-NpdS.js → VvInputText.es-DqLQDq9I.js} +2 -2
  58. package/dist/_chunks/{VvInputText.es-C5Y-NpdS.js.map → VvInputText.es-DqLQDq9I.js.map} +1 -1
  59. package/dist/_chunks/{VvRadio.es-CgueGQnO.js → VvRadio.es-D7Ws1in6.js} +2 -2
  60. package/dist/_chunks/{VvRadio.es-CgueGQnO.js.map → VvRadio.es-D7Ws1in6.js.map} +1 -1
  61. package/dist/_chunks/{VvRadioGroup.es-CoyUKzWp.js → VvRadioGroup.es-BDgpsR9Z.js} +2 -2
  62. package/dist/_chunks/{VvRadioGroup.es-CoyUKzWp.js.map → VvRadioGroup.es-BDgpsR9Z.js.map} +1 -1
  63. package/dist/_chunks/{VvSelect.es-DJWvclS9.js → VvSelect.es-DWbNpZKw.js} +2 -2
  64. package/dist/_chunks/{VvSelect.es-DJWvclS9.js.map → VvSelect.es-DWbNpZKw.js.map} +1 -1
  65. package/dist/_chunks/{VvTextarea.es-zXk1Uruf.js → VvTextarea.es-5UD9_C3G.js} +2 -2
  66. package/dist/_chunks/{VvTextarea.es-zXk1Uruf.js.map → VvTextarea.es-5UD9_C3G.js.map} +1 -1
  67. package/dist/_chunks/{chatImagePolicy-C5eH4Cpq.js → chatImagePolicy-Cnmsgd96.js} +2 -2
  68. package/dist/_chunks/{chatImagePolicy-C5eH4Cpq.js.map → chatImagePolicy-Cnmsgd96.js.map} +1 -1
  69. package/dist/_chunks/{index.es-_UjFDhTh.js → index.es-B9zAw2XU.js} +2 -2
  70. package/dist/_chunks/{index.es-_UjFDhTh.js.map → index.es-B9zAw2XU.js.map} +1 -1
  71. package/dist/_chunks/{index.es-BVC277zB.js → index.es-D9VqgSyV.js} +10 -10
  72. package/dist/_chunks/{index.es-BVC277zB.js.map → index.es-D9VqgSyV.js.map} +1 -1
  73. package/dist/_chunks/{markdown-qIVVfGoX.js → markdown-25UY48qE.js} +2 -2
  74. package/dist/_chunks/{markdown-qIVVfGoX.js.map → markdown-25UY48qE.js.map} +1 -1
  75. package/dist/ai-elements.es.js +939 -785
  76. package/dist/ai-elements.es.js.map +1 -1
  77. package/dist-vue/PkChatbot.js +1 -1
  78. package/dist-vue/PkChatbotAuth.js +1 -1
  79. package/dist-vue/PkChatbotEmptyState.js +1 -1
  80. package/dist-vue/PkChatbotFeedbackForm.js +1 -1
  81. package/dist-vue/PkChatbotInput.js +1 -1
  82. package/dist-vue/PkChatbotMessages.js +1 -1
  83. package/dist-vue/PkChatbotStepPayload.js +1 -1
  84. package/dist-vue/PkChatbotStepToolDetail.js +1 -1
  85. package/dist-vue/PkChatbotSteps.js +1 -1
  86. package/dist-vue/PkChatbotViewChat.js +1 -1
  87. package/dist-vue/PkChatbotViewConversations.js +1 -1
  88. package/dist-vue/PkChatbotViewFiles.js +1 -1
  89. package/dist-vue/PkChatbotViewProfile.js +1 -1
  90. package/dist-vue/_chunks/Agent-Ci7XnQ12.js +742 -0
  91. package/dist-vue/_chunks/Agent-Ci7XnQ12.js.map +1 -0
  92. package/dist-vue/_chunks/{Document-DmBTgjd4.js → Document-Bhlc3wdt.js} +10 -10
  93. package/dist-vue/_chunks/{Document-DmBTgjd4.js.map → Document-Bhlc3wdt.js.map} +1 -1
  94. package/dist-vue/_chunks/{PkChatbot-W9tO1H9i.js → PkChatbot-C05Rv5zO.js} +8 -8
  95. package/dist-vue/_chunks/{PkChatbot-W9tO1H9i.js.map → PkChatbot-C05Rv5zO.js.map} +1 -1
  96. package/dist-vue/_chunks/{PkChatbotAuth-C2TpCnWH.js → PkChatbotAuth-DD5RF7kY.js} +3 -3
  97. package/dist-vue/_chunks/PkChatbotAuth-DD5RF7kY.js.map +1 -0
  98. package/dist-vue/_chunks/{PkChatbotEmptyState-BY3f3T0T.js → PkChatbotEmptyState-B5qeL1kv.js} +2 -2
  99. package/dist-vue/_chunks/{PkChatbotEmptyState-BY3f3T0T.js.map → PkChatbotEmptyState-B5qeL1kv.js.map} +1 -1
  100. package/dist-vue/_chunks/{PkChatbotFeedbackForm-h4mjmVTG.js → PkChatbotFeedbackForm-BJ_Omuq2.js} +2 -2
  101. package/dist-vue/_chunks/{PkChatbotFeedbackForm-h4mjmVTG.js.map → PkChatbotFeedbackForm-BJ_Omuq2.js.map} +1 -1
  102. package/dist-vue/_chunks/{PkChatbotInput-C5l6QDQY.js → PkChatbotInput-BLzTQmvy.js} +2 -2
  103. package/dist-vue/_chunks/{PkChatbotInput-C5l6QDQY.js.map → PkChatbotInput-BLzTQmvy.js.map} +1 -1
  104. package/dist-vue/_chunks/{PkChatbotMessages-3RZER9PO.js → PkChatbotMessages-CxTz0W0d.js} +22 -22
  105. package/dist-vue/_chunks/PkChatbotMessages-CxTz0W0d.js.map +1 -0
  106. package/dist-vue/_chunks/{PkChatbotStepPayload-C-xnhmzZ.js → PkChatbotStepPayload-B04aqOGu.js} +2 -2
  107. package/dist-vue/_chunks/{PkChatbotStepPayload-C-xnhmzZ.js.map → PkChatbotStepPayload-B04aqOGu.js.map} +1 -1
  108. package/dist-vue/_chunks/{PkChatbotStepToolDetail-Cko1vU0N.js → PkChatbotStepToolDetail-yII_Dk3p.js} +3 -3
  109. package/dist-vue/_chunks/{PkChatbotStepToolDetail-Cko1vU0N.js.map → PkChatbotStepToolDetail-yII_Dk3p.js.map} +1 -1
  110. package/dist-vue/_chunks/{PkChatbotSteps-BkZ3Kq2M.js → PkChatbotSteps-DYiCeWOd.js} +5 -5
  111. package/dist-vue/_chunks/{PkChatbotSteps-BkZ3Kq2M.js.map → PkChatbotSteps-DYiCeWOd.js.map} +1 -1
  112. package/dist-vue/_chunks/{PkChatbotViewChat-BFImSy1X.js → PkChatbotViewChat-s-Vx4U1E.js} +7 -7
  113. package/dist-vue/_chunks/PkChatbotViewChat-s-Vx4U1E.js.map +1 -0
  114. package/dist-vue/_chunks/PkChatbotViewConversations-D7XHDBGS.js +195 -0
  115. package/dist-vue/_chunks/PkChatbotViewConversations-D7XHDBGS.js.map +1 -0
  116. package/dist-vue/_chunks/{PkChatbotViewFiles-CMQdbZN6.js → PkChatbotViewFiles-t07w-VNZ.js} +36 -36
  117. package/dist-vue/_chunks/PkChatbotViewFiles-t07w-VNZ.js.map +1 -0
  118. package/dist-vue/_chunks/{PkChatbotViewProfile-CDCy1LEX.js → PkChatbotViewProfile-DJT5AEkZ.js} +2 -2
  119. package/dist-vue/_chunks/{PkChatbotViewProfile-CDCy1LEX.js.map → PkChatbotViewProfile-DJT5AEkZ.js.map} +1 -1
  120. package/dist-vue/_chunks/{PkStreamingMarkdown-DJG-aPx2.js → PkStreamingMarkdown-ALhm02o3.js} +3 -3
  121. package/dist-vue/_chunks/{PkStreamingMarkdown-DJG-aPx2.js.map → PkStreamingMarkdown-ALhm02o3.js.map} +1 -1
  122. package/dist-vue/_chunks/{PkToolEditSpreadsheet-BHh7NUdR.js → PkToolEditSpreadsheet-DU3RBd6q.js} +2 -2
  123. package/dist-vue/_chunks/{PkToolEditSpreadsheet-BHh7NUdR.js.map → PkToolEditSpreadsheet-DU3RBd6q.js.map} +1 -1
  124. package/dist-vue/_chunks/{PkToolRequestGeolocation-Ccbhljmn.js → PkToolRequestGeolocation-CE4zQofM.js} +2 -2
  125. package/dist-vue/_chunks/{PkToolRequestGeolocation-Ccbhljmn.js.map → PkToolRequestGeolocation-CE4zQofM.js.map} +1 -1
  126. package/dist-vue/_chunks/{PkToolRequestOAuthConnection-BXf5ZRzR.js → PkToolRequestOAuthConnection-CAk5s541.js} +2 -2
  127. package/dist-vue/_chunks/{PkToolRequestOAuthConnection-BXf5ZRzR.js.map → PkToolRequestOAuthConnection-CAk5s541.js.map} +1 -1
  128. package/dist-vue/_chunks/{PkToolShowArtifact-BsfbvfVC.js → PkToolShowArtifact-CA1sKasD.js} +2 -2
  129. package/dist-vue/_chunks/{PkToolShowArtifact-BsfbvfVC.js.map → PkToolShowArtifact-CA1sKasD.js.map} +1 -1
  130. package/dist-vue/_chunks/{PkToolShowCalendarEvent-yttlTHiX.js → PkToolShowCalendarEvent-Cb3lmDQZ.js} +2 -2
  131. package/dist-vue/_chunks/PkToolShowCalendarEvent-Cb3lmDQZ.js.map +1 -0
  132. package/dist-vue/_chunks/{PkToolShowContactForm-C-YbtBlG.js → PkToolShowContactForm-C0QHEj5k.js} +3 -3
  133. package/dist-vue/_chunks/{PkToolShowContactForm-C-YbtBlG.js.map → PkToolShowContactForm-C0QHEj5k.js.map} +1 -1
  134. package/dist-vue/_chunks/{PkToolShowDiagram-CIHVrQ3e.js → PkToolShowDiagram-CQUd_reA.js} +2 -2
  135. package/dist-vue/_chunks/{PkToolShowDiagram-CIHVrQ3e.js.map → PkToolShowDiagram-CQUd_reA.js.map} +1 -1
  136. package/dist-vue/_chunks/{PkToolShowForm-BwYJhEVO.js → PkToolShowForm-B_ezmfuo.js} +8 -8
  137. package/dist-vue/_chunks/PkToolShowForm-B_ezmfuo.js.map +1 -0
  138. package/dist-vue/_chunks/{PkToolShowImageGallery-1A9zyOVn.js → PkToolShowImageGallery-B8gmmHvk.js} +2 -2
  139. package/dist-vue/_chunks/{PkToolShowImageGallery-1A9zyOVn.js.map → PkToolShowImageGallery-B8gmmHvk.js.map} +1 -1
  140. package/dist-vue/_chunks/PkToolShowProductList-BMvt5mKe.js +72 -0
  141. package/dist-vue/_chunks/PkToolShowProductList-BMvt5mKe.js.map +1 -0
  142. package/dist-vue/_chunks/{PkToolShowSources-BQpdJE_m.js → PkToolShowSources-DEmjN0Ou.js} +3 -3
  143. package/dist-vue/_chunks/{PkToolShowSources-BQpdJE_m.js.map → PkToolShowSources-DEmjN0Ou.js.map} +1 -1
  144. package/dist-vue/_chunks/{PkToolShowSuggestedReply-D3jLsbKJ.js → PkToolShowSuggestedReply-BE6gBA-2.js} +2 -2
  145. package/dist-vue/_chunks/{PkToolShowSuggestedReply-D3jLsbKJ.js.map → PkToolShowSuggestedReply-BE6gBA-2.js.map} +1 -1
  146. package/dist-vue/_chunks/{PkToolShowVideo-DUdkb3qb.js → PkToolShowVideo-ZPDVzjPX.js} +2 -2
  147. package/dist-vue/_chunks/{PkToolShowVideo-DUdkb3qb.js.map → PkToolShowVideo-ZPDVzjPX.js.map} +1 -1
  148. package/dist-vue/_chunks/{PkToolShowWebPages-BeeBiv9R.js → PkToolShowWebPages-dI4WMr7F.js} +8 -8
  149. package/dist-vue/_chunks/PkToolShowWebPages-dI4WMr7F.js.map +1 -0
  150. package/dist-vue/_chunks/{createChatbotApiClient-CDrs7NwO.js → createChatbotApiClient-IlTQndxL.js} +2 -2
  151. package/dist-vue/_chunks/{createChatbotApiClient-CDrs7NwO.js.map → createChatbotApiClient-IlTQndxL.js.map} +1 -1
  152. package/dist-vue/_chunks/{index.es-D7kQZyxD.js → index.es-VzNLOQUv.js} +2 -2
  153. package/dist-vue/_chunks/{index.es-D7kQZyxD.js.map → index.es-VzNLOQUv.js.map} +1 -1
  154. package/dist-vue/_chunks/{useChatbotStore-D6YNk8Rx.js → useChatbotStore-CtJ3bwuy.js} +3 -3
  155. package/dist-vue/_chunks/{useChatbotStore-D6YNk8Rx.js.map → useChatbotStore-CtJ3bwuy.js.map} +1 -1
  156. package/dist-vue/_chunks/{useDialogConfirm-KWz0ohCQ.js → useDialogConfirm-BxhvsnRr.js} +9 -8
  157. package/dist-vue/_chunks/useDialogConfirm-BxhvsnRr.js.map +1 -0
  158. package/dist-vue/_chunks/{utils-roi6YVNC.js → utils-BzypADaU.js} +2 -2
  159. package/dist-vue/_chunks/{utils-roi6YVNC.js.map → utils-BzypADaU.js.map} +1 -1
  160. package/dist-vue/api.js +1 -1
  161. package/dist-vue/apps/web-component/src/components/EmbeddedChatWidget.ce.d.ts +4 -4
  162. package/dist-vue/apps/web-component/src/composables/useChatbotAgent.d.ts +5 -4
  163. package/dist-vue/apps/web-component/src/composables/useChatbotProfileProvider.d.ts +1 -1
  164. package/dist-vue/composables.js +169 -24
  165. package/dist-vue/composables.js.map +1 -1
  166. package/dist-vue/index.js +3477 -3384
  167. package/dist-vue/index.js.map +1 -1
  168. package/dist-vue/packages/auth/src/email-brand.d.ts +11 -0
  169. package/dist-vue/packages/components/src/PkEditorMarkdown.d.ts +1 -1
  170. package/dist-vue/packages/components/src/chat/PkChatbotMessages.d.ts +1 -1
  171. package/dist-vue/packages/components/src/table/PkTableEmpty.d.ts +1 -1
  172. package/dist-vue/packages/composable/src/chatbot/useChatbotStore.d.ts +6 -6
  173. package/dist-vue/packages/composable/src/index.d.ts +1 -0
  174. package/dist-vue/packages/composable/src/useBranding.d.ts +89 -0
  175. package/dist-vue/packages/composable/src/useDialogConfirm.d.ts +2 -1
  176. package/dist-vue/packages/composable/src/useSettingsStore.d.ts +8 -3
  177. package/dist-vue/packages/models/src/schema/Agent.d.ts +20 -14
  178. package/dist-vue/packages/models/src/schema/Branding.d.ts +625 -0
  179. package/dist-vue/packages/models/src/schema/Platform.d.ts +8 -0
  180. package/dist-vue/packages/models/src/schema/PwaManifest.d.ts +38 -0
  181. package/dist-vue/packages/models/src/schema/ReasoningChat.d.ts +2 -2
  182. package/dist-vue/packages/models/src/schema/SubAgent.d.ts +2 -2
  183. package/dist-vue/packages/models/src/schema/index.d.ts +2 -0
  184. package/dist-vue/style.css +1 -1
  185. package/package.json +1 -1
  186. package/dist/_chunks/Agent-CJbRpoZG.js +0 -577
  187. package/dist/_chunks/Agent-CJbRpoZG.js.map +0 -1
  188. package/dist/_chunks/PkToolShowCalendarEvent-BLSTS6zf.js.map +0 -1
  189. package/dist/_chunks/PkToolShowForm-Dmq95u6b.js.map +0 -1
  190. package/dist/_chunks/PkToolShowProductList-DjS9nvXe.js +0 -72
  191. package/dist/_chunks/PkToolShowProductList-DjS9nvXe.js.map +0 -1
  192. package/dist/_chunks/PkToolShowWebPages-CYbiGa7e.js.map +0 -1
  193. package/dist-vue/_chunks/Agent---jwXeaB.js +0 -558
  194. package/dist-vue/_chunks/Agent---jwXeaB.js.map +0 -1
  195. package/dist-vue/_chunks/PkChatbotAuth-C2TpCnWH.js.map +0 -1
  196. package/dist-vue/_chunks/PkChatbotMessages-3RZER9PO.js.map +0 -1
  197. package/dist-vue/_chunks/PkChatbotViewChat-BFImSy1X.js.map +0 -1
  198. package/dist-vue/_chunks/PkChatbotViewConversations-C6T4ZxxX.js +0 -195
  199. package/dist-vue/_chunks/PkChatbotViewConversations-C6T4ZxxX.js.map +0 -1
  200. package/dist-vue/_chunks/PkChatbotViewFiles-CMQdbZN6.js.map +0 -1
  201. package/dist-vue/_chunks/PkToolShowCalendarEvent-yttlTHiX.js.map +0 -1
  202. package/dist-vue/_chunks/PkToolShowForm-BwYJhEVO.js.map +0 -1
  203. package/dist-vue/_chunks/PkToolShowProductList-D61i6AMs.js +0 -72
  204. package/dist-vue/_chunks/PkToolShowProductList-D61i6AMs.js.map +0 -1
  205. package/dist-vue/_chunks/PkToolShowWebPages-BeeBiv9R.js.map +0 -1
  206. package/dist-vue/_chunks/useDialogConfirm-KWz0ohCQ.js.map +0 -1
@@ -0,0 +1,625 @@
1
+ import * as z from 'zod';
2
+ /** A six-digit hex color: the only form a theme or agent color is stored in. */
3
+ export declare const HEX_COLOR_REGEX: RegExp;
4
+ /** The three colors a theme sets: the ones `packages/style` itself overrides. */
5
+ export declare const BrandingPaletteSchema: z.ZodObject<{
6
+ brand: z.ZodString;
7
+ accent: z.ZodString;
8
+ info: z.ZodString;
9
+ }, z.core.$strip>;
10
+ export type BrandingPalette = z.infer<typeof BrandingPaletteSchema>;
11
+ /**
12
+ * Light and dark come together: the dark brand of the design system is an
13
+ * independent color, not a derivation of the light one, so a theme that sets
14
+ * only the light palette would sit next to the default dark one.
15
+ */
16
+ export declare const BrandingColorsSchema: z.ZodObject<{
17
+ light: z.ZodObject<{
18
+ brand: z.ZodString;
19
+ accent: z.ZodString;
20
+ info: z.ZodString;
21
+ }, z.core.$strip>;
22
+ dark: z.ZodObject<{
23
+ brand: z.ZodString;
24
+ accent: z.ZodString;
25
+ info: z.ZodString;
26
+ }, z.core.$strip>;
27
+ }, z.core.$strip>;
28
+ export type BrandingColors = z.infer<typeof BrandingColorsSchema>;
29
+ /**
30
+ * Whether two palettes, or two pairs of them, are the same colors, whatever
31
+ * the case of the hex.
32
+ */
33
+ export declare const sameBrandingColors: <T extends BrandingColors | BrandingPalette>(a: T, b: T) => boolean;
34
+ /** Whether the user picks light or dark, or the deployment fixes one. */
35
+ export declare enum BrandingMode {
36
+ System = "system",
37
+ ForceLight = "force-light",
38
+ ForceDark = "force-dark"
39
+ }
40
+ /** The image slots of a theme. */
41
+ export declare enum BrandingAssetSlot {
42
+ LogoLight = "logoLight",
43
+ LogoDark = "logoDark",
44
+ Mark = "mark",
45
+ EmailLogo = "emailLogo",
46
+ EmailBanner = "emailBanner"
47
+ }
48
+ /** Largest image a theme slot accepts, before any processing. */
49
+ export declare const BRANDING_ASSET_MAX_BYTES: number;
50
+ /** Largest side of a raster image: a 1200 px email banner has to fit. */
51
+ export declare const BRANDING_RASTER_MAX_SIDE = 2048;
52
+ /**
53
+ * Width an email image is stored at, twice the width it is shown at for high
54
+ * density screens. Gmail and Outlook show neither SVG nor WebP, so the two
55
+ * email slots store a PNG, or a JPEG when the image is opaque.
56
+ */
57
+ export declare const BRANDING_EMAIL_WIDTH: Partial<Record<BrandingAssetSlot, number>>;
58
+ /** The formats an image is uploaded in. */
59
+ export declare const BRANDING_ASSET_MIME_TYPES: readonly ["image/svg+xml", "image/png", "image/webp"];
60
+ export type BrandingAssetMimeType = (typeof BRANDING_ASSET_MIME_TYPES)[number];
61
+ /** The formats an image is stored in: an opaque email image becomes a JPEG. */
62
+ export declare const BRANDING_STORED_MIME_TYPES: readonly ["image/svg+xml", "image/png", "image/webp", "image/jpeg"];
63
+ export type BrandingStoredMimeType = (typeof BRANDING_STORED_MIME_TYPES)[number];
64
+ /** An uploaded image, addressed by the sha256 of the bytes that are served. */
65
+ export declare const BrandingAssetRefSchema: z.ZodObject<{
66
+ checksum: z.ZodString;
67
+ mimeType: z.ZodEnum<{
68
+ "image/png": "image/png";
69
+ "image/svg+xml": "image/svg+xml";
70
+ "image/webp": "image/webp";
71
+ "image/jpeg": "image/jpeg";
72
+ }>;
73
+ width: z.ZodNullable<z.ZodNumber>;
74
+ height: z.ZodNullable<z.ZodNumber>;
75
+ }, z.core.$strip>;
76
+ export type BrandingAssetRef = z.infer<typeof BrandingAssetRefSchema>;
77
+ /** Null in a slot means the image the bundle ships. */
78
+ export declare const BrandingAssetsSchema: z.ZodObject<{
79
+ logoLight: z.ZodNullable<z.ZodObject<{
80
+ checksum: z.ZodString;
81
+ mimeType: z.ZodEnum<{
82
+ "image/png": "image/png";
83
+ "image/svg+xml": "image/svg+xml";
84
+ "image/webp": "image/webp";
85
+ "image/jpeg": "image/jpeg";
86
+ }>;
87
+ width: z.ZodNullable<z.ZodNumber>;
88
+ height: z.ZodNullable<z.ZodNumber>;
89
+ }, z.core.$strip>>;
90
+ logoDark: z.ZodNullable<z.ZodObject<{
91
+ checksum: z.ZodString;
92
+ mimeType: z.ZodEnum<{
93
+ "image/png": "image/png";
94
+ "image/svg+xml": "image/svg+xml";
95
+ "image/webp": "image/webp";
96
+ "image/jpeg": "image/jpeg";
97
+ }>;
98
+ width: z.ZodNullable<z.ZodNumber>;
99
+ height: z.ZodNullable<z.ZodNumber>;
100
+ }, z.core.$strip>>;
101
+ mark: z.ZodNullable<z.ZodObject<{
102
+ checksum: z.ZodString;
103
+ mimeType: z.ZodEnum<{
104
+ "image/png": "image/png";
105
+ "image/svg+xml": "image/svg+xml";
106
+ "image/webp": "image/webp";
107
+ "image/jpeg": "image/jpeg";
108
+ }>;
109
+ width: z.ZodNullable<z.ZodNumber>;
110
+ height: z.ZodNullable<z.ZodNumber>;
111
+ }, z.core.$strip>>;
112
+ emailLogo: z.ZodNullable<z.ZodObject<{
113
+ checksum: z.ZodString;
114
+ mimeType: z.ZodEnum<{
115
+ "image/png": "image/png";
116
+ "image/svg+xml": "image/svg+xml";
117
+ "image/webp": "image/webp";
118
+ "image/jpeg": "image/jpeg";
119
+ }>;
120
+ width: z.ZodNullable<z.ZodNumber>;
121
+ height: z.ZodNullable<z.ZodNumber>;
122
+ }, z.core.$strip>>;
123
+ emailBanner: z.ZodNullable<z.ZodObject<{
124
+ checksum: z.ZodString;
125
+ mimeType: z.ZodEnum<{
126
+ "image/png": "image/png";
127
+ "image/svg+xml": "image/svg+xml";
128
+ "image/webp": "image/webp";
129
+ "image/jpeg": "image/jpeg";
130
+ }>;
131
+ width: z.ZodNullable<z.ZodNumber>;
132
+ height: z.ZodNullable<z.ZodNumber>;
133
+ }, z.core.$strip>>;
134
+ }, z.core.$strip>;
135
+ export type BrandingAssets = z.infer<typeof BrandingAssetsSchema>;
136
+ export declare const BrandingTextSchema: z.ZodObject<{
137
+ productName: z.ZodString;
138
+ shortName: z.ZodString;
139
+ description: z.ZodNullable<z.ZodString>;
140
+ productTagline: z.ZodNullable<z.ZodString>;
141
+ companyName: z.ZodNullable<z.ZodString>;
142
+ }, z.core.$strip>;
143
+ export type BrandingText = z.infer<typeof BrandingTextSchema>;
144
+ /** A complete theme: what every level resolves to. */
145
+ export declare const BrandingSchema: z.ZodObject<{
146
+ colors: z.ZodObject<{
147
+ light: z.ZodObject<{
148
+ brand: z.ZodString;
149
+ accent: z.ZodString;
150
+ info: z.ZodString;
151
+ }, z.core.$strip>;
152
+ dark: z.ZodObject<{
153
+ brand: z.ZodString;
154
+ accent: z.ZodString;
155
+ info: z.ZodString;
156
+ }, z.core.$strip>;
157
+ }, z.core.$strip>;
158
+ mode: z.ZodEnum<typeof BrandingMode>;
159
+ assets: z.ZodObject<{
160
+ logoLight: z.ZodNullable<z.ZodObject<{
161
+ checksum: z.ZodString;
162
+ mimeType: z.ZodEnum<{
163
+ "image/png": "image/png";
164
+ "image/svg+xml": "image/svg+xml";
165
+ "image/webp": "image/webp";
166
+ "image/jpeg": "image/jpeg";
167
+ }>;
168
+ width: z.ZodNullable<z.ZodNumber>;
169
+ height: z.ZodNullable<z.ZodNumber>;
170
+ }, z.core.$strip>>;
171
+ logoDark: z.ZodNullable<z.ZodObject<{
172
+ checksum: z.ZodString;
173
+ mimeType: z.ZodEnum<{
174
+ "image/png": "image/png";
175
+ "image/svg+xml": "image/svg+xml";
176
+ "image/webp": "image/webp";
177
+ "image/jpeg": "image/jpeg";
178
+ }>;
179
+ width: z.ZodNullable<z.ZodNumber>;
180
+ height: z.ZodNullable<z.ZodNumber>;
181
+ }, z.core.$strip>>;
182
+ mark: z.ZodNullable<z.ZodObject<{
183
+ checksum: z.ZodString;
184
+ mimeType: z.ZodEnum<{
185
+ "image/png": "image/png";
186
+ "image/svg+xml": "image/svg+xml";
187
+ "image/webp": "image/webp";
188
+ "image/jpeg": "image/jpeg";
189
+ }>;
190
+ width: z.ZodNullable<z.ZodNumber>;
191
+ height: z.ZodNullable<z.ZodNumber>;
192
+ }, z.core.$strip>>;
193
+ emailLogo: z.ZodNullable<z.ZodObject<{
194
+ checksum: z.ZodString;
195
+ mimeType: z.ZodEnum<{
196
+ "image/png": "image/png";
197
+ "image/svg+xml": "image/svg+xml";
198
+ "image/webp": "image/webp";
199
+ "image/jpeg": "image/jpeg";
200
+ }>;
201
+ width: z.ZodNullable<z.ZodNumber>;
202
+ height: z.ZodNullable<z.ZodNumber>;
203
+ }, z.core.$strip>>;
204
+ emailBanner: z.ZodNullable<z.ZodObject<{
205
+ checksum: z.ZodString;
206
+ mimeType: z.ZodEnum<{
207
+ "image/png": "image/png";
208
+ "image/svg+xml": "image/svg+xml";
209
+ "image/webp": "image/webp";
210
+ "image/jpeg": "image/jpeg";
211
+ }>;
212
+ width: z.ZodNullable<z.ZodNumber>;
213
+ height: z.ZodNullable<z.ZodNumber>;
214
+ }, z.core.$strip>>;
215
+ }, z.core.$strip>;
216
+ text: z.ZodObject<{
217
+ productName: z.ZodString;
218
+ shortName: z.ZodString;
219
+ description: z.ZodNullable<z.ZodString>;
220
+ productTagline: z.ZodNullable<z.ZodString>;
221
+ companyName: z.ZodNullable<z.ZodString>;
222
+ }, z.core.$strip>;
223
+ }, z.core.$strip>;
224
+ export type Branding = z.infer<typeof BrandingSchema>;
225
+ /** A complete theme with the hash of its content, served to the clients. */
226
+ export declare const ResolvedBrandingSchema: z.ZodObject<{
227
+ colors: z.ZodObject<{
228
+ light: z.ZodObject<{
229
+ brand: z.ZodString;
230
+ accent: z.ZodString;
231
+ info: z.ZodString;
232
+ }, z.core.$strip>;
233
+ dark: z.ZodObject<{
234
+ brand: z.ZodString;
235
+ accent: z.ZodString;
236
+ info: z.ZodString;
237
+ }, z.core.$strip>;
238
+ }, z.core.$strip>;
239
+ mode: z.ZodEnum<typeof BrandingMode>;
240
+ assets: z.ZodObject<{
241
+ logoLight: z.ZodNullable<z.ZodObject<{
242
+ checksum: z.ZodString;
243
+ mimeType: z.ZodEnum<{
244
+ "image/png": "image/png";
245
+ "image/svg+xml": "image/svg+xml";
246
+ "image/webp": "image/webp";
247
+ "image/jpeg": "image/jpeg";
248
+ }>;
249
+ width: z.ZodNullable<z.ZodNumber>;
250
+ height: z.ZodNullable<z.ZodNumber>;
251
+ }, z.core.$strip>>;
252
+ logoDark: z.ZodNullable<z.ZodObject<{
253
+ checksum: z.ZodString;
254
+ mimeType: z.ZodEnum<{
255
+ "image/png": "image/png";
256
+ "image/svg+xml": "image/svg+xml";
257
+ "image/webp": "image/webp";
258
+ "image/jpeg": "image/jpeg";
259
+ }>;
260
+ width: z.ZodNullable<z.ZodNumber>;
261
+ height: z.ZodNullable<z.ZodNumber>;
262
+ }, z.core.$strip>>;
263
+ mark: z.ZodNullable<z.ZodObject<{
264
+ checksum: z.ZodString;
265
+ mimeType: z.ZodEnum<{
266
+ "image/png": "image/png";
267
+ "image/svg+xml": "image/svg+xml";
268
+ "image/webp": "image/webp";
269
+ "image/jpeg": "image/jpeg";
270
+ }>;
271
+ width: z.ZodNullable<z.ZodNumber>;
272
+ height: z.ZodNullable<z.ZodNumber>;
273
+ }, z.core.$strip>>;
274
+ emailLogo: z.ZodNullable<z.ZodObject<{
275
+ checksum: z.ZodString;
276
+ mimeType: z.ZodEnum<{
277
+ "image/png": "image/png";
278
+ "image/svg+xml": "image/svg+xml";
279
+ "image/webp": "image/webp";
280
+ "image/jpeg": "image/jpeg";
281
+ }>;
282
+ width: z.ZodNullable<z.ZodNumber>;
283
+ height: z.ZodNullable<z.ZodNumber>;
284
+ }, z.core.$strip>>;
285
+ emailBanner: z.ZodNullable<z.ZodObject<{
286
+ checksum: z.ZodString;
287
+ mimeType: z.ZodEnum<{
288
+ "image/png": "image/png";
289
+ "image/svg+xml": "image/svg+xml";
290
+ "image/webp": "image/webp";
291
+ "image/jpeg": "image/jpeg";
292
+ }>;
293
+ width: z.ZodNullable<z.ZodNumber>;
294
+ height: z.ZodNullable<z.ZodNumber>;
295
+ }, z.core.$strip>>;
296
+ }, z.core.$strip>;
297
+ text: z.ZodObject<{
298
+ productName: z.ZodString;
299
+ shortName: z.ZodString;
300
+ description: z.ZodNullable<z.ZodString>;
301
+ productTagline: z.ZodNullable<z.ZodString>;
302
+ companyName: z.ZodNullable<z.ZodString>;
303
+ }, z.core.$strip>;
304
+ version: z.ZodString;
305
+ stylesheetVersion: z.ZodOptional<z.ZodString>;
306
+ }, z.core.$strip>;
307
+ export type ResolvedBranding = z.infer<typeof ResolvedBrandingSchema>;
308
+ /**
309
+ * What the embeddable widget gets of the deployment theme: the stylesheet it
310
+ * puts in its shadow root, which the page's own stylesheet cannot reach.
311
+ */
312
+ export declare const DeploymentBrandingSchema: z.ZodObject<{
313
+ css: z.ZodString;
314
+ }, z.core.$strip>;
315
+ export type DeploymentBranding = z.infer<typeof DeploymentBrandingSchema>;
316
+ /**
317
+ * What a level stores, and what a write accepts: every section and every
318
+ * value optional, and a missing or null one inherits from the level below. An
319
+ * empty string clears an optional text.
320
+ */
321
+ export declare const BrandingPatchSchema: z.ZodObject<{
322
+ colors: z.ZodOptional<z.ZodNullable<z.ZodObject<{
323
+ light: z.ZodObject<{
324
+ brand: z.ZodString;
325
+ accent: z.ZodString;
326
+ info: z.ZodString;
327
+ }, z.core.$strip>;
328
+ dark: z.ZodObject<{
329
+ brand: z.ZodString;
330
+ accent: z.ZodString;
331
+ info: z.ZodString;
332
+ }, z.core.$strip>;
333
+ }, z.core.$strip>>>;
334
+ mode: z.ZodOptional<z.ZodNullable<z.ZodEnum<typeof BrandingMode>>>;
335
+ assets: z.ZodOptional<z.ZodNullable<z.ZodObject<{
336
+ logoLight: z.ZodOptional<z.ZodNullable<z.ZodObject<{
337
+ checksum: z.ZodString;
338
+ mimeType: z.ZodEnum<{
339
+ "image/png": "image/png";
340
+ "image/svg+xml": "image/svg+xml";
341
+ "image/webp": "image/webp";
342
+ "image/jpeg": "image/jpeg";
343
+ }>;
344
+ width: z.ZodNullable<z.ZodNumber>;
345
+ height: z.ZodNullable<z.ZodNumber>;
346
+ }, z.core.$strip>>>;
347
+ logoDark: z.ZodOptional<z.ZodNullable<z.ZodObject<{
348
+ checksum: z.ZodString;
349
+ mimeType: z.ZodEnum<{
350
+ "image/png": "image/png";
351
+ "image/svg+xml": "image/svg+xml";
352
+ "image/webp": "image/webp";
353
+ "image/jpeg": "image/jpeg";
354
+ }>;
355
+ width: z.ZodNullable<z.ZodNumber>;
356
+ height: z.ZodNullable<z.ZodNumber>;
357
+ }, z.core.$strip>>>;
358
+ mark: z.ZodOptional<z.ZodNullable<z.ZodObject<{
359
+ checksum: z.ZodString;
360
+ mimeType: z.ZodEnum<{
361
+ "image/png": "image/png";
362
+ "image/svg+xml": "image/svg+xml";
363
+ "image/webp": "image/webp";
364
+ "image/jpeg": "image/jpeg";
365
+ }>;
366
+ width: z.ZodNullable<z.ZodNumber>;
367
+ height: z.ZodNullable<z.ZodNumber>;
368
+ }, z.core.$strip>>>;
369
+ emailLogo: z.ZodOptional<z.ZodNullable<z.ZodObject<{
370
+ checksum: z.ZodString;
371
+ mimeType: z.ZodEnum<{
372
+ "image/png": "image/png";
373
+ "image/svg+xml": "image/svg+xml";
374
+ "image/webp": "image/webp";
375
+ "image/jpeg": "image/jpeg";
376
+ }>;
377
+ width: z.ZodNullable<z.ZodNumber>;
378
+ height: z.ZodNullable<z.ZodNumber>;
379
+ }, z.core.$strip>>>;
380
+ emailBanner: z.ZodOptional<z.ZodNullable<z.ZodObject<{
381
+ checksum: z.ZodString;
382
+ mimeType: z.ZodEnum<{
383
+ "image/png": "image/png";
384
+ "image/svg+xml": "image/svg+xml";
385
+ "image/webp": "image/webp";
386
+ "image/jpeg": "image/jpeg";
387
+ }>;
388
+ width: z.ZodNullable<z.ZodNumber>;
389
+ height: z.ZodNullable<z.ZodNumber>;
390
+ }, z.core.$strip>>>;
391
+ }, z.core.$strip>>>;
392
+ text: z.ZodOptional<z.ZodNullable<z.ZodObject<{
393
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
394
+ productTagline: z.ZodOptional<z.ZodNullable<z.ZodString>>;
395
+ companyName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
396
+ productName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
397
+ shortName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
398
+ }, z.core.$strip>>>;
399
+ }, z.core.$strip>;
400
+ export type BrandingPatch = z.infer<typeof BrandingPatchSchema>;
401
+ /**
402
+ * The deployment patch as the system page reads and saves it. The revision
403
+ * names the stored document the page started from: a save sends it back, and
404
+ * is refused when another one landed in between, rather than undoing it.
405
+ */
406
+ export declare const SystemBrandingSchema: z.ZodObject<{
407
+ patch: z.ZodObject<{
408
+ colors: z.ZodOptional<z.ZodNullable<z.ZodObject<{
409
+ light: z.ZodObject<{
410
+ brand: z.ZodString;
411
+ accent: z.ZodString;
412
+ info: z.ZodString;
413
+ }, z.core.$strip>;
414
+ dark: z.ZodObject<{
415
+ brand: z.ZodString;
416
+ accent: z.ZodString;
417
+ info: z.ZodString;
418
+ }, z.core.$strip>;
419
+ }, z.core.$strip>>>;
420
+ mode: z.ZodOptional<z.ZodNullable<z.ZodEnum<typeof BrandingMode>>>;
421
+ assets: z.ZodOptional<z.ZodNullable<z.ZodObject<{
422
+ logoLight: z.ZodOptional<z.ZodNullable<z.ZodObject<{
423
+ checksum: z.ZodString;
424
+ mimeType: z.ZodEnum<{
425
+ "image/png": "image/png";
426
+ "image/svg+xml": "image/svg+xml";
427
+ "image/webp": "image/webp";
428
+ "image/jpeg": "image/jpeg";
429
+ }>;
430
+ width: z.ZodNullable<z.ZodNumber>;
431
+ height: z.ZodNullable<z.ZodNumber>;
432
+ }, z.core.$strip>>>;
433
+ logoDark: z.ZodOptional<z.ZodNullable<z.ZodObject<{
434
+ checksum: z.ZodString;
435
+ mimeType: z.ZodEnum<{
436
+ "image/png": "image/png";
437
+ "image/svg+xml": "image/svg+xml";
438
+ "image/webp": "image/webp";
439
+ "image/jpeg": "image/jpeg";
440
+ }>;
441
+ width: z.ZodNullable<z.ZodNumber>;
442
+ height: z.ZodNullable<z.ZodNumber>;
443
+ }, z.core.$strip>>>;
444
+ mark: z.ZodOptional<z.ZodNullable<z.ZodObject<{
445
+ checksum: z.ZodString;
446
+ mimeType: z.ZodEnum<{
447
+ "image/png": "image/png";
448
+ "image/svg+xml": "image/svg+xml";
449
+ "image/webp": "image/webp";
450
+ "image/jpeg": "image/jpeg";
451
+ }>;
452
+ width: z.ZodNullable<z.ZodNumber>;
453
+ height: z.ZodNullable<z.ZodNumber>;
454
+ }, z.core.$strip>>>;
455
+ emailLogo: z.ZodOptional<z.ZodNullable<z.ZodObject<{
456
+ checksum: z.ZodString;
457
+ mimeType: z.ZodEnum<{
458
+ "image/png": "image/png";
459
+ "image/svg+xml": "image/svg+xml";
460
+ "image/webp": "image/webp";
461
+ "image/jpeg": "image/jpeg";
462
+ }>;
463
+ width: z.ZodNullable<z.ZodNumber>;
464
+ height: z.ZodNullable<z.ZodNumber>;
465
+ }, z.core.$strip>>>;
466
+ emailBanner: z.ZodOptional<z.ZodNullable<z.ZodObject<{
467
+ checksum: z.ZodString;
468
+ mimeType: z.ZodEnum<{
469
+ "image/png": "image/png";
470
+ "image/svg+xml": "image/svg+xml";
471
+ "image/webp": "image/webp";
472
+ "image/jpeg": "image/jpeg";
473
+ }>;
474
+ width: z.ZodNullable<z.ZodNumber>;
475
+ height: z.ZodNullable<z.ZodNumber>;
476
+ }, z.core.$strip>>>;
477
+ }, z.core.$strip>>>;
478
+ text: z.ZodOptional<z.ZodNullable<z.ZodObject<{
479
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
480
+ productTagline: z.ZodOptional<z.ZodNullable<z.ZodString>>;
481
+ companyName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
482
+ productName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
483
+ shortName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
484
+ }, z.core.$strip>>>;
485
+ }, z.core.$strip>;
486
+ revision: z.ZodString;
487
+ }, z.core.$strip>;
488
+ export type SystemBranding = z.infer<typeof SystemBrandingSchema>;
489
+ /**
490
+ * The theme the code ships with: the compile-time colors of `packages/style`
491
+ * and the product names of AGENTS.md. Assets are the bundled images. Frozen,
492
+ * because every resolution starts from it.
493
+ */
494
+ export declare const DEFAULT_BRANDING: Branding;
495
+ /**
496
+ * The theme a reader falls back on when the stored one cannot be read. The
497
+ * deployment may be any company's, so the product gets a generic name and,
498
+ * since that name is not the default one, no bundled image: an email or a
499
+ * manifest goes out without a logo rather than with Eight Wave's.
500
+ */
501
+ export declare const NEUTRAL_BRANDING: Branding;
502
+ /**
503
+ * Whether a theme without an image of its own may show Eight Wave's: only
504
+ * while it keeps the default product name. A renamed deployment gets a
505
+ * neutral mark, or no image in an email, never another company's logo.
506
+ */
507
+ export declare const usesBundledImages: (text: Pick<BrandingText, "productName">) => boolean;
508
+ /**
509
+ * The square mark of a theme that uploaded none and may not show the bundled
510
+ * one: the first letter of its name on its brand color, in black or white,
511
+ * whichever reads better (they tie at a luminance of 0.179). With rounded
512
+ * corners, unless an opaque icon draws it edge to edge, for a platform that
513
+ * rounds or crops it to its own shape.
514
+ */
515
+ export declare function neutralMarkSvg(name: string, color: string, { rounded }?: {
516
+ rounded?: boolean;
517
+ }): string;
518
+ /**
519
+ * The neutral mark as a data URI, so an `<img>` and the favicon draw the
520
+ * same thing.
521
+ */
522
+ export declare const neutralMarkUrl: (name: string, color: string) => string;
523
+ /**
524
+ * Parse a stored patch, or null when it is missing or not an object. Values
525
+ * that do not validate are dropped one by one, see `BrandingPatchReadSchema`.
526
+ */
527
+ export declare function parseBrandingPatch(value: unknown): BrandingPatch | null;
528
+ /**
529
+ * Apply each patch in order on the default theme. A renamed theme does not
530
+ * inherit the default tagline and description, which name Eight Wave: they
531
+ * stay empty unless a patch sets them.
532
+ */
533
+ export declare function resolveBranding(...patches: (BrandingPatch | null | undefined)[]): Branding;
534
+ /**
535
+ * A short, stable hash of a string: an FNV-1a pass and a multiplicative pass
536
+ * seeded with the length, 32 bits each, in plain code so any runtime computes
537
+ * it the same way without a crypto module. Not a security hash.
538
+ */
539
+ export declare function contentHash(input: string): string;
540
+ /**
541
+ * The hash of a theme's content and of the stylesheet rendered from it: the
542
+ * cache key of the clients for the whole theme. A release that renders the
543
+ * same theme differently changes it by itself, with nothing to bump.
544
+ */
545
+ export declare function brandingVersion(branding: Branding): string;
546
+ /**
547
+ * Bumped whenever the icons rendered from a mark change: it is part of their
548
+ * URL, which is cached as immutable.
549
+ */
550
+ export declare const BRANDING_ICON_REVISION = 1;
551
+ /** Path of the public theme routes on the backend: the JSON, `.css` and the images. */
552
+ export declare const BRANDING_PUBLIC_PATH = "/api/v1/public/branding";
553
+ /** Path of a stored theme image on the backend, under `/api/v1`. */
554
+ export declare const brandingAssetPath: (checksum: string) => string;
555
+ /** Where a stored theme image is served, on a backend URL that may end in a slash. */
556
+ export declare const brandingAssetUrl: (backendUrl: string, checksum: string) => string;
557
+ /**
558
+ * Whether a request URL, query included, is one of the public theme routes:
559
+ * the JSON, the stylesheet, the web app manifest, the theme's icons, an image
560
+ * or an icon rendered from one. Anchored on each route, so a route that only
561
+ * shares the prefix is not one of them.
562
+ */
563
+ export declare const isPublicBrandingRoute: (url: string) => boolean;
564
+ /**
565
+ * The square icons rendered from an image: the favicon, the apple touch icon
566
+ * and the two of the installed app.
567
+ */
568
+ export declare const BRANDING_ICON_SIZES: readonly [32, 180, 192, 512];
569
+ export type BrandingIconSize = (typeof BRANDING_ICON_SIZES)[number];
570
+ /**
571
+ * An icon of the theme: one of the sizes, or the installed app's maskable
572
+ * icon, 512 px and opaque, which a launcher crops to its own shape.
573
+ */
574
+ export type BrandingThemeIcon = BrandingIconSize | 'maskable';
575
+ /**
576
+ * Path of the theme's square icon: its mark, the neutral one of a renamed
577
+ * theme without a mark, or a redirect to the frontend's bundled icons.
578
+ */
579
+ export declare const brandingThemeIconPath: (icon: BrandingThemeIcon) => string;
580
+ /** Path of a square icon rendered from a stored image. */
581
+ export declare const brandingIconPath: (checksum: string, size: BrandingIconSize) => string;
582
+ /**
583
+ * The web app manifest of a theme, which the backend serves at
584
+ * `${BRANDING_PUBLIC_PATH}/manifest.webmanifest` to a frontend that reads its
585
+ * theme at runtime: the names, the description and the icons are the theme's.
586
+ * The app is the root of the frontend's origin, as in the build's manifest,
587
+ * written in full since the browser requires it on the page's origin; the
588
+ * icons are relative to the manifest, the theme's icon routes, under its
589
+ * version so a new theme is fetched again.
590
+ */
591
+ export declare function brandingManifest(branding: ResolvedBranding, frontendUrl: string): {
592
+ start_url: string;
593
+ scope: string;
594
+ icons: {
595
+ src: string;
596
+ sizes: string;
597
+ type: string;
598
+ purpose: string;
599
+ }[];
600
+ description?: string | undefined;
601
+ id: string;
602
+ name: string;
603
+ short_name: string;
604
+ display: "standalone";
605
+ display_override: ("standalone" | "minimal-ui")[];
606
+ orientation: "portrait-primary";
607
+ dir: "ltr";
608
+ background_color: string;
609
+ theme_color: string;
610
+ categories: string[];
611
+ };
612
+ /** A theme with its version, as the endpoints serve it. */
613
+ export declare function toResolvedBranding(branding: Branding): ResolvedBranding;
614
+ /**
615
+ * The hash of the color rules of a theme's stylesheet, which the stylesheet
616
+ * declares as `--branding-stylesheet`: a page that knows the theme can tell
617
+ * whether the stylesheet a cache handed it is that theme's. It depends on the
618
+ * colors alone, like the rules.
619
+ */
620
+ export declare const brandingStylesheetVersion: (branding: Branding) => string;
621
+ /**
622
+ * The stylesheet of a theme: its color rules, see `brandingCssRules`, and the
623
+ * custom property that names them, see {@link brandingStylesheetVersion}.
624
+ */
625
+ export declare function renderBrandingCss(branding: Branding): string;
@@ -1,4 +1,12 @@
1
+ import { BrandingText } from './Branding';
1
2
  import * as z from 'zod';
3
+ /** The longest publisher name a Teams manifest accepts. */
4
+ export declare const TEAMS_DEVELOPER_NAME_MAX_LENGTH = 32;
5
+ /**
6
+ * The publisher a Teams app names when the admin leaves it empty: the
7
+ * deployment's company, or its product, cut to what Teams accepts.
8
+ */
9
+ export declare const defaultTeamsDeveloperName: (text: BrandingText) => string;
2
10
  /**
3
11
  * Supported external messaging platforms.
4
12
  * Values are lowercase to match the Drizzle postgres enum convention.
@@ -0,0 +1,38 @@
1
+ /**
2
+ * What every web app manifest of the frontend declares: the one its build
3
+ * writes, and the one the backend serves from the deployment theme to a build
4
+ * that reads its theme at runtime. Free of imports: the frontend's Vite config
5
+ * reads this file directly, since it cannot load the `models` package.
6
+ */
7
+ export declare const PWA_MANIFEST_BASE: {
8
+ display: 'standalone';
9
+ display_override: ('standalone' | 'minimal-ui')[];
10
+ orientation: 'portrait-primary';
11
+ dir: 'ltr';
12
+ background_color: string;
13
+ theme_color: string;
14
+ categories: string[];
15
+ };
16
+ /** The icons of the installed app, as a manifest names them. */
17
+ export type PwaIcon = 192 | 512 | 'maskable';
18
+ /**
19
+ * The frontend's bundled icons, the default theme's, by the theme icon they
20
+ * stand for. The maskable one is opaque and keeps the mark inside the safe
21
+ * circle (80% of the side), since a launcher crops it to its own shape; it and
22
+ * the apple touch icon are derived from `pwa-512x512.png` with
23
+ * `pnpm --filter frontend pwa:icons`.
24
+ */
25
+ export declare const PWA_BUNDLED_ICONS: {
26
+ readonly 32: "/favicon.svg";
27
+ readonly 180: "/apple-touch-icon.png";
28
+ readonly 192: "/pwa-192x192.png";
29
+ readonly 512: "/pwa-512x512.png";
30
+ readonly maskable: "/pwa-maskable-512x512.png";
31
+ };
32
+ /** The `icons` of a manifest, given where each one is served. */
33
+ export declare const pwaManifestIcons: (src: (icon: PwaIcon) => string) => {
34
+ src: string;
35
+ sizes: string;
36
+ type: string;
37
+ purpose: string;
38
+ }[];