codicent-app-sdk 0.5.7 → 0.6.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 (244) hide show
  1. package/dist/cjs/components/AiInput.js +1 -1
  2. package/dist/cjs/components/AudioIcon.js +1 -1
  3. package/dist/cjs/components/ChatInput.js +1 -1
  4. package/dist/cjs/components/ChatMessage.js +1 -1
  5. package/dist/cjs/components/CombinedPlaceholderDialog.js +1 -1
  6. package/dist/cjs/components/Footer.js +1 -1
  7. package/dist/cjs/components/Header.js +1 -1
  8. package/dist/cjs/components/HtmlView.js +1 -1
  9. package/dist/cjs/components/MessageInput.js +1 -1
  10. package/dist/cjs/components/MessageItem.js +1 -1
  11. package/dist/cjs/components/Profile.js +1 -1
  12. package/dist/cjs/components/Prompt.js +1 -1
  13. package/dist/cjs/components/SnapFooter.js +1 -1
  14. package/dist/cjs/components/TextHeader.js +1 -1
  15. package/dist/cjs/components/TypingIndicator.js +1 -1
  16. package/dist/cjs/components/UploadFile.js +1 -1
  17. package/dist/cjs/components/UrlProcessor.js +1 -1
  18. package/dist/cjs/components/VoiceIcon.js +1 -1
  19. package/dist/cjs/components/audit/AuditAnswerCell.d.ts +15 -0
  20. package/dist/cjs/components/audit/AuditAnswerCell.d.ts.map +1 -0
  21. package/dist/cjs/components/audit/AuditAnswerCell.js +1 -0
  22. package/dist/cjs/components/audit/AuditBulkExportDialog.d.ts +16 -0
  23. package/dist/cjs/components/audit/AuditBulkExportDialog.d.ts.map +1 -0
  24. package/dist/cjs/components/audit/AuditBulkExportDialog.js +1 -0
  25. package/dist/cjs/components/audit/AuditBulkUploadDialog.d.ts +15 -0
  26. package/dist/cjs/components/audit/AuditBulkUploadDialog.d.ts.map +1 -0
  27. package/dist/cjs/components/audit/AuditBulkUploadDialog.js +1 -0
  28. package/dist/cjs/components/audit/AuditCircularProgress.d.ts +15 -0
  29. package/dist/cjs/components/audit/AuditCircularProgress.d.ts.map +1 -0
  30. package/dist/cjs/components/audit/AuditCircularProgress.js +1 -0
  31. package/dist/cjs/components/audit/AuditFilterBar.d.ts +15 -0
  32. package/dist/cjs/components/audit/AuditFilterBar.d.ts.map +1 -0
  33. package/dist/cjs/components/audit/AuditFilterBar.js +1 -0
  34. package/dist/cjs/components/audit/AuditFilterChips.d.ts +17 -0
  35. package/dist/cjs/components/audit/AuditFilterChips.d.ts.map +1 -0
  36. package/dist/cjs/components/audit/AuditFilterChips.js +1 -0
  37. package/dist/cjs/components/audit/AuditGroupsProgress.d.ts +12 -0
  38. package/dist/cjs/components/audit/AuditGroupsProgress.d.ts.map +1 -0
  39. package/dist/cjs/components/audit/AuditGroupsProgress.js +1 -0
  40. package/dist/cjs/components/audit/AuditHorizontalProgress.d.ts +16 -0
  41. package/dist/cjs/components/audit/AuditHorizontalProgress.d.ts.map +1 -0
  42. package/dist/cjs/components/audit/AuditHorizontalProgress.js +1 -0
  43. package/dist/cjs/components/audit/AuditRequirementDialog.d.ts +16 -0
  44. package/dist/cjs/components/audit/AuditRequirementDialog.d.ts.map +1 -0
  45. package/dist/cjs/components/audit/AuditRequirementDialog.js +1 -0
  46. package/dist/cjs/components/audit/AuditRoleIndicator.d.ts +13 -0
  47. package/dist/cjs/components/audit/AuditRoleIndicator.d.ts.map +1 -0
  48. package/dist/cjs/components/audit/AuditRoleIndicator.js +1 -0
  49. package/dist/cjs/components/audit/AuditSearchBar.d.ts +13 -0
  50. package/dist/cjs/components/audit/AuditSearchBar.d.ts.map +1 -0
  51. package/dist/cjs/components/audit/AuditSearchBar.js +1 -0
  52. package/dist/cjs/components/audit/AuditSortPresets.d.ts +12 -0
  53. package/dist/cjs/components/audit/AuditSortPresets.d.ts.map +1 -0
  54. package/dist/cjs/components/audit/AuditSortPresets.js +1 -0
  55. package/dist/cjs/components/audit/AuditSummaryDashboard.d.ts +13 -0
  56. package/dist/cjs/components/audit/AuditSummaryDashboard.d.ts.map +1 -0
  57. package/dist/cjs/components/audit/AuditSummaryDashboard.js +1 -0
  58. package/dist/cjs/components/audit/AuditUnitExportDialog.d.ts +18 -0
  59. package/dist/cjs/components/audit/AuditUnitExportDialog.d.ts.map +1 -0
  60. package/dist/cjs/components/audit/AuditUnitExportDialog.js +1 -0
  61. package/dist/cjs/components/audit/AuditUnitImportDialog.d.ts +13 -0
  62. package/dist/cjs/components/audit/AuditUnitImportDialog.d.ts.map +1 -0
  63. package/dist/cjs/components/audit/AuditUnitImportDialog.js +1 -0
  64. package/dist/cjs/components/audit/AuditUnitSwitcher.d.ts +20 -0
  65. package/dist/cjs/components/audit/AuditUnitSwitcher.d.ts.map +1 -0
  66. package/dist/cjs/components/audit/AuditUnitSwitcher.js +1 -0
  67. package/dist/cjs/components/audit/index.d.ts +20 -0
  68. package/dist/cjs/components/audit/index.d.ts.map +1 -0
  69. package/dist/cjs/components/index.d.ts +1 -0
  70. package/dist/cjs/components/index.d.ts.map +1 -1
  71. package/dist/cjs/hooks/index.d.ts +12 -0
  72. package/dist/cjs/hooks/index.d.ts.map +1 -1
  73. package/dist/cjs/hooks/useAuditFilters.d.ts +17 -0
  74. package/dist/cjs/hooks/useAuditFilters.d.ts.map +1 -0
  75. package/dist/cjs/hooks/useAuditFilters.js +1 -0
  76. package/dist/cjs/hooks/useAuditManagerData.d.ts +25 -0
  77. package/dist/cjs/hooks/useAuditManagerData.d.ts.map +1 -0
  78. package/dist/cjs/hooks/useAuditManagerData.js +1 -0
  79. package/dist/cjs/hooks/useAuditManagerFilters.d.ts +16 -0
  80. package/dist/cjs/hooks/useAuditManagerFilters.d.ts.map +1 -0
  81. package/dist/cjs/hooks/useAuditManagerFilters.js +1 -0
  82. package/dist/cjs/hooks/useAuditRequirementsFilters.d.ts +17 -0
  83. package/dist/cjs/hooks/useAuditRequirementsFilters.d.ts.map +1 -0
  84. package/dist/cjs/hooks/useAuditRequirementsFilters.js +1 -0
  85. package/dist/cjs/hooks/useAuditRoleCheck.d.ts +26 -0
  86. package/dist/cjs/hooks/useAuditRoleCheck.d.ts.map +1 -0
  87. package/dist/cjs/hooks/useAuditRoleCheck.js +1 -0
  88. package/dist/cjs/hooks/useAuditState.d.ts +34 -0
  89. package/dist/cjs/hooks/useAuditState.d.ts.map +1 -0
  90. package/dist/cjs/hooks/useAuditState.js +1 -0
  91. package/dist/cjs/hooks/useAuthState.js +1 -1
  92. package/dist/cjs/hooks/useCodicentState.js +1 -1
  93. package/dist/cjs/index.js +1 -1
  94. package/dist/cjs/pages/AppFrame.js +1 -1
  95. package/dist/cjs/pages/Chat.js +1 -1
  96. package/dist/cjs/pages/Compose.js +1 -1
  97. package/dist/cjs/pages/CrmPage.js +1 -1
  98. package/dist/cjs/pages/CrmPagePersistent.js +1 -1
  99. package/dist/cjs/pages/FormAccept.js +1 -1
  100. package/dist/cjs/pages/FormInvite.js +1 -1
  101. package/dist/cjs/pages/Home.js +1 -1
  102. package/dist/cjs/pages/HtmlViewer.js +1 -1
  103. package/dist/cjs/pages/ListPage.js +1 -1
  104. package/dist/cjs/pages/Login.js +1 -1
  105. package/dist/cjs/pages/Menu.js +1 -1
  106. package/dist/cjs/pages/Purchase.js +1 -1
  107. package/dist/cjs/pages/Sales.js +1 -1
  108. package/dist/cjs/pages/Search.js +1 -1
  109. package/dist/cjs/pages/Snap.js +1 -1
  110. package/dist/cjs/types/audit.d.ts +365 -0
  111. package/dist/cjs/types/audit.d.ts.map +1 -0
  112. package/dist/cjs/types/index.d.ts +1 -0
  113. package/dist/cjs/types/index.d.ts.map +1 -1
  114. package/dist/cjs/utils/auditExport.d.ts +37 -0
  115. package/dist/cjs/utils/auditExport.d.ts.map +1 -0
  116. package/dist/cjs/utils/auditExport.js +1 -0
  117. package/dist/cjs/utils/auditUtils.d.ts +59 -0
  118. package/dist/cjs/utils/auditUtils.d.ts.map +1 -0
  119. package/dist/cjs/utils/auditUtils.js +1 -0
  120. package/dist/cjs/utils/index.d.ts +2 -0
  121. package/dist/cjs/utils/index.d.ts.map +1 -1
  122. package/dist/esm/components/AiInput.js +1 -1
  123. package/dist/esm/components/AudioIcon.js +1 -1
  124. package/dist/esm/components/ChatInput.js +1 -1
  125. package/dist/esm/components/ChatMessage.js +1 -1
  126. package/dist/esm/components/CombinedPlaceholderDialog.js +1 -1
  127. package/dist/esm/components/Footer.js +1 -1
  128. package/dist/esm/components/Header.js +1 -1
  129. package/dist/esm/components/HtmlView.js +1 -1
  130. package/dist/esm/components/MessageInput.js +1 -1
  131. package/dist/esm/components/MessageItem.js +1 -1
  132. package/dist/esm/components/Profile.js +1 -1
  133. package/dist/esm/components/Prompt.js +1 -1
  134. package/dist/esm/components/SnapFooter.js +1 -1
  135. package/dist/esm/components/TextHeader.js +1 -1
  136. package/dist/esm/components/TypingIndicator.js +1 -1
  137. package/dist/esm/components/UploadFile.js +1 -1
  138. package/dist/esm/components/UrlProcessor.js +1 -1
  139. package/dist/esm/components/VoiceIcon.js +1 -1
  140. package/dist/esm/components/audit/AuditAnswerCell.d.ts +15 -0
  141. package/dist/esm/components/audit/AuditAnswerCell.d.ts.map +1 -0
  142. package/dist/esm/components/audit/AuditAnswerCell.js +1 -0
  143. package/dist/esm/components/audit/AuditBulkExportDialog.d.ts +16 -0
  144. package/dist/esm/components/audit/AuditBulkExportDialog.d.ts.map +1 -0
  145. package/dist/esm/components/audit/AuditBulkExportDialog.js +1 -0
  146. package/dist/esm/components/audit/AuditBulkUploadDialog.d.ts +15 -0
  147. package/dist/esm/components/audit/AuditBulkUploadDialog.d.ts.map +1 -0
  148. package/dist/esm/components/audit/AuditBulkUploadDialog.js +1 -0
  149. package/dist/esm/components/audit/AuditCircularProgress.d.ts +15 -0
  150. package/dist/esm/components/audit/AuditCircularProgress.d.ts.map +1 -0
  151. package/dist/esm/components/audit/AuditCircularProgress.js +1 -0
  152. package/dist/esm/components/audit/AuditFilterBar.d.ts +15 -0
  153. package/dist/esm/components/audit/AuditFilterBar.d.ts.map +1 -0
  154. package/dist/esm/components/audit/AuditFilterBar.js +1 -0
  155. package/dist/esm/components/audit/AuditFilterChips.d.ts +17 -0
  156. package/dist/esm/components/audit/AuditFilterChips.d.ts.map +1 -0
  157. package/dist/esm/components/audit/AuditFilterChips.js +1 -0
  158. package/dist/esm/components/audit/AuditGroupsProgress.d.ts +12 -0
  159. package/dist/esm/components/audit/AuditGroupsProgress.d.ts.map +1 -0
  160. package/dist/esm/components/audit/AuditGroupsProgress.js +1 -0
  161. package/dist/esm/components/audit/AuditHorizontalProgress.d.ts +16 -0
  162. package/dist/esm/components/audit/AuditHorizontalProgress.d.ts.map +1 -0
  163. package/dist/esm/components/audit/AuditHorizontalProgress.js +1 -0
  164. package/dist/esm/components/audit/AuditRequirementDialog.d.ts +16 -0
  165. package/dist/esm/components/audit/AuditRequirementDialog.d.ts.map +1 -0
  166. package/dist/esm/components/audit/AuditRequirementDialog.js +1 -0
  167. package/dist/esm/components/audit/AuditRoleIndicator.d.ts +13 -0
  168. package/dist/esm/components/audit/AuditRoleIndicator.d.ts.map +1 -0
  169. package/dist/esm/components/audit/AuditRoleIndicator.js +1 -0
  170. package/dist/esm/components/audit/AuditSearchBar.d.ts +13 -0
  171. package/dist/esm/components/audit/AuditSearchBar.d.ts.map +1 -0
  172. package/dist/esm/components/audit/AuditSearchBar.js +1 -0
  173. package/dist/esm/components/audit/AuditSortPresets.d.ts +12 -0
  174. package/dist/esm/components/audit/AuditSortPresets.d.ts.map +1 -0
  175. package/dist/esm/components/audit/AuditSortPresets.js +1 -0
  176. package/dist/esm/components/audit/AuditSummaryDashboard.d.ts +13 -0
  177. package/dist/esm/components/audit/AuditSummaryDashboard.d.ts.map +1 -0
  178. package/dist/esm/components/audit/AuditSummaryDashboard.js +1 -0
  179. package/dist/esm/components/audit/AuditUnitExportDialog.d.ts +18 -0
  180. package/dist/esm/components/audit/AuditUnitExportDialog.d.ts.map +1 -0
  181. package/dist/esm/components/audit/AuditUnitExportDialog.js +1 -0
  182. package/dist/esm/components/audit/AuditUnitImportDialog.d.ts +13 -0
  183. package/dist/esm/components/audit/AuditUnitImportDialog.d.ts.map +1 -0
  184. package/dist/esm/components/audit/AuditUnitImportDialog.js +1 -0
  185. package/dist/esm/components/audit/AuditUnitSwitcher.d.ts +20 -0
  186. package/dist/esm/components/audit/AuditUnitSwitcher.d.ts.map +1 -0
  187. package/dist/esm/components/audit/AuditUnitSwitcher.js +1 -0
  188. package/dist/esm/components/audit/index.d.ts +20 -0
  189. package/dist/esm/components/audit/index.d.ts.map +1 -0
  190. package/dist/esm/components/index.d.ts +1 -0
  191. package/dist/esm/components/index.d.ts.map +1 -1
  192. package/dist/esm/hooks/index.d.ts +12 -0
  193. package/dist/esm/hooks/index.d.ts.map +1 -1
  194. package/dist/esm/hooks/useAuditFilters.d.ts +17 -0
  195. package/dist/esm/hooks/useAuditFilters.d.ts.map +1 -0
  196. package/dist/esm/hooks/useAuditFilters.js +1 -0
  197. package/dist/esm/hooks/useAuditManagerData.d.ts +25 -0
  198. package/dist/esm/hooks/useAuditManagerData.d.ts.map +1 -0
  199. package/dist/esm/hooks/useAuditManagerData.js +1 -0
  200. package/dist/esm/hooks/useAuditManagerFilters.d.ts +16 -0
  201. package/dist/esm/hooks/useAuditManagerFilters.d.ts.map +1 -0
  202. package/dist/esm/hooks/useAuditManagerFilters.js +1 -0
  203. package/dist/esm/hooks/useAuditRequirementsFilters.d.ts +17 -0
  204. package/dist/esm/hooks/useAuditRequirementsFilters.d.ts.map +1 -0
  205. package/dist/esm/hooks/useAuditRequirementsFilters.js +1 -0
  206. package/dist/esm/hooks/useAuditRoleCheck.d.ts +26 -0
  207. package/dist/esm/hooks/useAuditRoleCheck.d.ts.map +1 -0
  208. package/dist/esm/hooks/useAuditRoleCheck.js +1 -0
  209. package/dist/esm/hooks/useAuditState.d.ts +34 -0
  210. package/dist/esm/hooks/useAuditState.d.ts.map +1 -0
  211. package/dist/esm/hooks/useAuditState.js +1 -0
  212. package/dist/esm/hooks/useAuthState.js +1 -1
  213. package/dist/esm/hooks/useCodicentState.js +1 -1
  214. package/dist/esm/index.js +1 -1
  215. package/dist/esm/pages/AppFrame.js +1 -1
  216. package/dist/esm/pages/Chat.js +1 -1
  217. package/dist/esm/pages/Compose.js +1 -1
  218. package/dist/esm/pages/CrmPage.js +1 -1
  219. package/dist/esm/pages/CrmPagePersistent.js +1 -1
  220. package/dist/esm/pages/FormAccept.js +1 -1
  221. package/dist/esm/pages/FormInvite.js +1 -1
  222. package/dist/esm/pages/Home.js +1 -1
  223. package/dist/esm/pages/HtmlViewer.js +1 -1
  224. package/dist/esm/pages/ListPage.js +1 -1
  225. package/dist/esm/pages/Login.js +1 -1
  226. package/dist/esm/pages/Menu.js +1 -1
  227. package/dist/esm/pages/Purchase.js +1 -1
  228. package/dist/esm/pages/Sales.js +1 -1
  229. package/dist/esm/pages/Search.js +1 -1
  230. package/dist/esm/pages/Snap.js +1 -1
  231. package/dist/esm/types/audit.d.ts +365 -0
  232. package/dist/esm/types/audit.d.ts.map +1 -0
  233. package/dist/esm/types/index.d.ts +1 -0
  234. package/dist/esm/types/index.d.ts.map +1 -1
  235. package/dist/esm/utils/auditExport.d.ts +37 -0
  236. package/dist/esm/utils/auditExport.d.ts.map +1 -0
  237. package/dist/esm/utils/auditExport.js +1 -0
  238. package/dist/esm/utils/auditUtils.d.ts +59 -0
  239. package/dist/esm/utils/auditUtils.d.ts.map +1 -0
  240. package/dist/esm/utils/auditUtils.js +1 -0
  241. package/dist/esm/utils/index.d.ts +2 -0
  242. package/dist/esm/utils/index.d.ts.map +1 -1
  243. package/dist/index.d.ts +806 -1
  244. package/package.json +2 -1
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("@fluentui/react-components"),o=require("@fluentui/react-icons"),n=require("../services/codicent.js");require("../components/Markdown.js"),require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.js"),require("../components/Spinner.js");var s=require("../components/TextHeader.js");require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js");var a=require("../components/VoiceIcon.js"),i=require("../utils/MessageContent.js");require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var l=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js");var c=require("../utils/device.js");require("exceljs"),require("../components/FileThumbnail.js");var u=require("../components/MessageInput.js"),d=require("../components/UploadFile.js");require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/Content.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js");var p=require("../components/Page.js");require("../components/QrCodeDialog.js"),require("../components/QrScanner.js");var m=require("../hooks/useLocalization.js");require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js");var h=require("react-router-dom");require("./Purchase.js"),require("./QrScan.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js");var g=require("../hooks/useToaster.js"),j=require("../node_modules/lodash/lodash.js");const f=t.makeStyles({main:{flexGrow:1,...t.shorthands.padding("10px"),overflowY:"auto"},container:{display:"flex",flexDirection:"row",height:"100%",...t.shorthands.gap("16px"),...t.shorthands.padding("10px")},containerMobile:{display:"flex",flexDirection:"column",height:"100%",...t.shorthands.gap("16px"),...t.shorthands.padding("10px")},inputSection:{display:"flex",flexDirection:"column",flexGrow:1,maxWidth:"640px",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",position:"relative"},inputSectionMobile:{display:"flex",flexDirection:"column",width:"100%",position:"relative"},historySection:{flexBasis:"300px",flexShrink:0,display:"flex",flexDirection:"column",...t.shorthands.gap("8px"),overflowY:"auto",...t.shorthands.padding("8px")},historySectionMobile:{display:"flex",flexDirection:"column",...t.shorthands.gap("8px"),overflowY:"auto",...t.shorthands.padding("8px"),maxHeight:"300px"},historyCard:{...t.shorthands.padding("12px"),cursor:"pointer","&:hover":{backgroundColor:t.tokens.colorNeutralBackground1Hover}},historyCardContent:{display:"flex",flexDirection:"column",...t.shorthands.gap("4px")},historyDate:{fontSize:t.tokens.fontSizeBase200,color:t.tokens.colorNeutralForeground3},historyText:{fontSize:t.tokens.fontSizeBase300,wordBreak:"break-word",whiteSpace:"pre-wrap",maxHeight:"100px",overflow:"hidden",textOverflow:"ellipsis"},review:{padding:"10px",wordBreak:"break-word",whiteSpace:"pre-line",maxWidth:"100%",overflowWrap:"break-word"},voiceIcon:{position:"absolute",top:"20px",right:"12px",zIndex:1001,cursor:"pointer"},historyTitle:{fontSize:t.tokens.fontSizeBase400,fontWeight:t.tokens.fontWeightSemibold,marginBottom:"8px"},emptyState:{textAlign:"center",color:t.tokens.colorNeutralForeground3,padding:"20px"},backButton:{marginBottom:"10px"}}),x=({state:x,voice:q})=>{const v=f(),{t:S}=m.default(),k=h.useNavigate(),[y,C]=r.useState(!1),w=r.useRef(null),b=r.useRef(null),M=r.useRef(null),[N]=r.useState(null),[T,B]=r.useState([]),{service:I}=x,[E,P]=h.useSearchParams(),[D,_]=r.useState(""),[A,U]=r.useState(void 0),F=g.default(),[$,L]=r.useState(void 0),[R,O]=r.useState("info"),[V,z]=r.useState([]),[H,W]=r.useState(!1),G=c.isMobileDevice(),J=r.useCallback((e=>{for(const r of e)I.getFileInfo(r).then((e=>{B((r=>[...r,e]))}))}),[I,B]),Q=r.useCallback((e=>{const r=new FormData;r.append("file",e),I.uploadFile(e.name,r).then((e=>{J([e])})).catch((()=>{F.notify(S("Error"),S("Error uploading pasted image"),"")}))}),[I,J,F,S]),Y=e=>{C(e)},K=r.useCallback((async()=>{W(!0);try{const e=await I.getMessages(["crm"]);z(e)}catch(e){console.error("Error loading CRM messages:",e),F.notify(S("Error"),S("Failed to load CRM messages"),"","error")}finally{W(!1)}}),[I,F,S]);r.useEffect((()=>{K()}),[K]),r.useEffect((()=>{const e=E.get("text"),r=E.get("url");e&&(_(e),E.delete("text")),r&&(E.delete("url"),_(((e||"")+" "+r).trim())),P(E,{replace:!0})}),[E,P,_,I,J]);const X=e=>{e=`${e=`#crm\n${e.replace("#log ","")}\nSALESPERSON: ${x.context.name||x.context.user?.email||x.context.nickname||"-"}`}${N?" "+N:""}${T.length>0?"\n":""}${T.map((e=>`#file:${e.id}`)).join(" ")}`,I.sendMessage(e).then((()=>{F.notify(S("Meddelande"),S("Meddelandet är sparat."),""),K(),U(""),L(void 0)}))},Z=r.useCallback((async e=>{if(!e||e.length<10)return;L(S("Analyserar...")),O("info");const r=await I.chat((e=>`Skapa kort ja/nej-status över hur CRM-aktiviteten som följer, givet dessa punkter: \n1. Namn på kunden finns med? ja/nej \n2. Syftet med mötet finns (varför träffar du kunden, kan täckas av 3 nedan) ja/nej\n3. Vad som framkommer under mötet (viktiga punkter och diskussioner) ja/nej\n4. Nästa steg finns med (hur ni kommer att träffas igen, och om något har sålts) ja/nej. \n\nSvara endast med ja/nej för varje punkt, ett svar per rad i följande exempel i JSON-format:\n{\n "customerName": "true",\n "purpose": "false",\n "meetingNotes": "true",\n "nextSteps": "false",\n "shortSummary": "Syfte med mötet och nästa steg saknas."\n}\n\n---\nTEXT:\n\n${e}`)(e));if(r){const e=new i.default(r.content);try{const r=JSON.parse(e.content);console.log("json",r);let t=0;for(const e in r)"true"===r[e]&&t++;L(S(4===t?"Allt är med":r.shortSummary||"Något saknas")),O(4===t?"success":"warning")}catch{L("Error: "+e.content),O("error")}}}),[I,S]),ee=r.useMemo((()=>j.lodashExports.debounce(Z,2e3)),[Z]);r.useEffect((()=>()=>{ee.cancel()}),[ee]);const re=e=>{const r=new Date,t=new Date(e),o=r.getTime()-t.getTime(),n=Math.floor(o/6e4),s=Math.floor(o/36e5),a=Math.floor(o/864e5);return n<1?S("Just now"):n<60?`${n} ${S("minutes ago")}`:s<24?`${s} ${S("hours ago")}`:a<7?`${a} ${S("days ago")}`:t.toLocaleDateString()},te=e=>{const r=e.split("\n").filter((e=>!e.startsWith("#")&&!e.startsWith("SALESPERSON:")&&e.trim().length>0)).join("\n");return r.substring(0,150)+(r.length>150?"...":"")},oe=()=>e.jsxs("div",{className:G?v.historySectionMobile:v.historySection,children:[e.jsx(t.Text,{className:v.historyTitle,children:S("Tidigare sparade")}),H?e.jsx("div",{className:v.emptyState,children:e.jsx(t.Spinner,{size:"small"})}):0===V.length?e.jsx("div",{className:v.emptyState,children:e.jsx(t.Text,{children:S("Inga sparade meddelanden än")})}):V.map((r=>e.jsx(t.Card,{className:v.historyCard,onClick:()=>(e=>{const r=te(e.content);U(r)})(r),children:e.jsxs("div",{className:v.historyCardContent,children:[e.jsx(t.Text,{className:v.historyDate,children:re(r.createdAt)}),e.jsx(t.Text,{className:v.historyText,children:te(r.content)})]})},r.id)))]});return e.jsx(p.Page,{hideHeader:!0,children:e.jsxs("div",{className:G?v.containerMobile:v.container,children:[!G&&oe(),e.jsxs("div",{className:G?v.inputSectionMobile:v.inputSection,style:G?void 0:{backgroundImage:`url(${l.getConfigValue("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:[q&&l.getConfigValue("SHOW_VOICE_BUTTON")&&e.jsx("div",{className:v.voiceIcon,children:e.jsx(a.default,{voice:q})}),e.jsx("div",{className:v.backButton,children:e.jsx(t.Button,{appearance:"subtle",icon:e.jsx(o.ArrowLeft24Regular,{}),onClick:()=>k(-1),children:S("Tillbaka")})}),e.jsx(s.default,{title:l.getConfigValue("APP_SAVE_TITLE")?S(l.getConfigValue("APP_SAVE_TITLE")):S("Spara")}),e.jsx(u.default,{defaultText:D,onSend:X,files:T,onFilesChange:B,isUploading:y,onUploadImage:()=>{b.current?.triggerUpload()},onUploadCamera:()=>{M.current?.triggerUpload()},getImageUrl:n.CodicentService.getImageUrl,hasLocation:!!N,disableSend:!0,rows:9,placeholder:S("Beskriv CRM-aktivitet här..."),onChange:e=>{e!==A&&(U(e),e&&e.trim().length>0?ee(e):(L(void 0),ee.cancel()))},onImagePasted:Q}),$&&e.jsxs("div",{className:v.review,children:[e.jsx("h3",{children:S("Analys")}),e.jsx(t.MessageBar,{intent:R,layout:"multiline",children:e.jsx(t.MessageBarBody,{children:S($)})})]}),e.jsx(d.default,{ref:w,onFileUploaded:J,onUploading:Y,multiple:!0,codicentService:I}),e.jsx(d.default,{codicentService:I,ref:b,onFileUploaded:J,onUploading:Y,multiple:!0,accept:"image/*"}),e.jsx(d.default,{codicentService:I,ref:M,onFileUploaded:J,onUploading:Y,multiple:!0,accept:"image/*",capture:"environment"})]}),G&&oe()]})})};exports.CrmPagePersistent=x,exports.default=x;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("@fluentui/react-components"),o=require("@fluentui/react-icons"),n=require("../services/codicent.js");require("../components/Markdown.js"),require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.js"),require("../components/Spinner.js");var s=require("../components/TextHeader.js");require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js");var i=require("../components/VoiceIcon.js"),a=require("../utils/MessageContent.js");require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var l=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js");var u=require("../utils/device.js");require("exceljs"),require("../components/FileThumbnail.js");var c=require("../components/MessageInput.js"),d=require("../components/UploadFile.js");require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/Content.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js");var p=require("../components/Page.js");require("../components/QrCodeDialog.js"),require("../components/QrScanner.js");var m=require("../hooks/useLocalization.js");require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("../components/audit/AuditCircularProgress.js"),require("../components/audit/AuditHorizontalProgress.js"),require("../components/audit/AuditRoleIndicator.js"),require("../components/audit/AuditUnitSwitcher.js"),require("../components/audit/AuditAnswerCell.js"),require("../components/audit/AuditSearchBar.js"),require("../components/audit/AuditFilterChips.js"),require("../components/audit/AuditFilterBar.js"),require("../components/audit/AuditGroupsProgress.js"),require("../components/audit/AuditSummaryDashboard.js"),require("../components/audit/AuditRequirementDialog.js"),require("../components/audit/AuditUnitExportDialog.js"),require("../components/audit/AuditUnitImportDialog.js"),require("../components/audit/AuditBulkExportDialog.js"),require("../components/audit/AuditBulkUploadDialog.js"),require("../components/audit/AuditSortPresets.js"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js");var j=require("react-router-dom");require("./Purchase.js"),require("./QrScan.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js");var g=require("../hooks/useToaster.js"),h=require("../node_modules/lodash/lodash.js");const f=t.makeStyles({main:{flexGrow:1,...t.shorthands.padding("10px"),overflowY:"auto"},container:{display:"flex",flexDirection:"row",height:"100%",...t.shorthands.gap("16px"),...t.shorthands.padding("10px")},containerMobile:{display:"flex",flexDirection:"column",height:"100%",...t.shorthands.gap("16px"),...t.shorthands.padding("10px")},inputSection:{display:"flex",flexDirection:"column",flexGrow:1,maxWidth:"640px",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",position:"relative"},inputSectionMobile:{display:"flex",flexDirection:"column",width:"100%",position:"relative"},historySection:{flexBasis:"300px",flexShrink:0,display:"flex",flexDirection:"column",...t.shorthands.gap("8px"),overflowY:"auto",...t.shorthands.padding("8px")},historySectionMobile:{display:"flex",flexDirection:"column",...t.shorthands.gap("8px"),overflowY:"auto",...t.shorthands.padding("8px"),maxHeight:"300px"},historyCard:{...t.shorthands.padding("12px"),cursor:"pointer","&:hover":{backgroundColor:t.tokens.colorNeutralBackground1Hover}},historyCardContent:{display:"flex",flexDirection:"column",...t.shorthands.gap("4px")},historyDate:{fontSize:t.tokens.fontSizeBase200,color:t.tokens.colorNeutralForeground3},historyText:{fontSize:t.tokens.fontSizeBase300,wordBreak:"break-word",whiteSpace:"pre-wrap",maxHeight:"100px",overflow:"hidden",textOverflow:"ellipsis"},review:{padding:"10px",wordBreak:"break-word",whiteSpace:"pre-line",maxWidth:"100%",overflowWrap:"break-word"},voiceIcon:{position:"absolute",top:"20px",right:"12px",zIndex:1001,cursor:"pointer"},historyTitle:{fontSize:t.tokens.fontSizeBase400,fontWeight:t.tokens.fontWeightSemibold,marginBottom:"8px"},emptyState:{textAlign:"center",color:t.tokens.colorNeutralForeground3,padding:"20px"},backButton:{marginBottom:"10px"}}),x=({state:x,voice:q})=>{const S=f(),{t:v}=m.default(),k=j.useNavigate(),[y,C]=r.useState(!1),w=r.useRef(null),b=r.useRef(null),A=r.useRef(null),[M]=r.useState(null),[N,B]=r.useState([]),{service:D}=x,[T,P]=j.useSearchParams(),[I,E]=r.useState(""),[U,_]=r.useState(void 0),F=g.default(),[R,$]=r.useState(void 0),[L,O]=r.useState("info"),[V,z]=r.useState([]),[H,W]=r.useState(!1),G=u.isMobileDevice(),J=r.useCallback((e=>{for(const r of e)D.getFileInfo(r).then((e=>{B((r=>[...r,e]))}))}),[D,B]),Q=r.useCallback((e=>{const r=new FormData;r.append("file",e),D.uploadFile(e.name,r).then((e=>{J([e])})).catch((()=>{F.notify(v("Error"),v("Error uploading pasted image"),"")}))}),[D,J,F,v]),Y=e=>{C(e)},K=r.useCallback((async()=>{W(!0);try{const e=await D.getMessages(["crm"]);z(e)}catch(e){console.error("Error loading CRM messages:",e),F.notify(v("Error"),v("Failed to load CRM messages"),"","error")}finally{W(!1)}}),[D,F,v]);r.useEffect((()=>{K()}),[K]),r.useEffect((()=>{const e=T.get("text"),r=T.get("url");e&&(E(e),T.delete("text")),r&&(T.delete("url"),E(((e||"")+" "+r).trim())),P(T,{replace:!0})}),[T,P,E,D,J]);const X=e=>{e=`${e=`#crm\n${e.replace("#log ","")}\nSALESPERSON: ${x.context.name||x.context.user?.email||x.context.nickname||"-"}`}${M?" "+M:""}${N.length>0?"\n":""}${N.map((e=>`#file:${e.id}`)).join(" ")}`,D.sendMessage(e).then((()=>{F.notify(v("Meddelande"),v("Meddelandet är sparat."),""),K(),_(""),$(void 0)}))},Z=r.useCallback((async e=>{if(!e||e.length<10)return;$(v("Analyserar...")),O("info");const r=await D.chat((e=>`Skapa kort ja/nej-status över hur CRM-aktiviteten som följer, givet dessa punkter: \n1. Namn på kunden finns med? ja/nej \n2. Syftet med mötet finns (varför träffar du kunden, kan täckas av 3 nedan) ja/nej\n3. Vad som framkommer under mötet (viktiga punkter och diskussioner) ja/nej\n4. Nästa steg finns med (hur ni kommer att träffas igen, och om något har sålts) ja/nej. \n\nSvara endast med ja/nej för varje punkt, ett svar per rad i följande exempel i JSON-format:\n{\n "customerName": "true",\n "purpose": "false",\n "meetingNotes": "true",\n "nextSteps": "false",\n "shortSummary": "Syfte med mötet och nästa steg saknas."\n}\n\n---\nTEXT:\n\n${e}`)(e));if(r){const e=new a.default(r.content);try{const r=JSON.parse(e.content);console.log("json",r);let t=0;for(const e in r)"true"===r[e]&&t++;$(v(4===t?"Allt är med":r.shortSummary||"Något saknas")),O(4===t?"success":"warning")}catch{$("Error: "+e.content),O("error")}}}),[D,v]),ee=r.useMemo((()=>h.lodashExports.debounce(Z,2e3)),[Z]);r.useEffect((()=>()=>{ee.cancel()}),[ee]);const re=e=>{const r=new Date,t=new Date(e),o=r.getTime()-t.getTime(),n=Math.floor(o/6e4),s=Math.floor(o/36e5),i=Math.floor(o/864e5);return n<1?v("Just now"):n<60?`${n} ${v("minutes ago")}`:s<24?`${s} ${v("hours ago")}`:i<7?`${i} ${v("days ago")}`:t.toLocaleDateString()},te=e=>{const r=e.split("\n").filter((e=>!e.startsWith("#")&&!e.startsWith("SALESPERSON:")&&e.trim().length>0)).join("\n");return r.substring(0,150)+(r.length>150?"...":"")},oe=()=>e.jsxs("div",{className:G?S.historySectionMobile:S.historySection,children:[e.jsx(t.Text,{className:S.historyTitle,children:v("Tidigare sparade")}),H?e.jsx("div",{className:S.emptyState,children:e.jsx(t.Spinner,{size:"small"})}):0===V.length?e.jsx("div",{className:S.emptyState,children:e.jsx(t.Text,{children:v("Inga sparade meddelanden än")})}):V.map((r=>e.jsx(t.Card,{className:S.historyCard,onClick:()=>(e=>{const r=te(e.content);_(r)})(r),children:e.jsxs("div",{className:S.historyCardContent,children:[e.jsx(t.Text,{className:S.historyDate,children:re(r.createdAt)}),e.jsx(t.Text,{className:S.historyText,children:te(r.content)})]})},r.id)))]});return e.jsx(p.Page,{hideHeader:!0,children:e.jsxs("div",{className:G?S.containerMobile:S.container,children:[!G&&oe(),e.jsxs("div",{className:G?S.inputSectionMobile:S.inputSection,style:G?void 0:{backgroundImage:`url(${l.getConfigValue("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:[q&&l.getConfigValue("SHOW_VOICE_BUTTON")&&e.jsx("div",{className:S.voiceIcon,children:e.jsx(i.default,{voice:q})}),e.jsx("div",{className:S.backButton,children:e.jsx(t.Button,{appearance:"subtle",icon:e.jsx(o.ArrowLeft24Regular,{}),onClick:()=>k(-1),children:v("Tillbaka")})}),e.jsx(s.default,{title:l.getConfigValue("APP_SAVE_TITLE")?v(l.getConfigValue("APP_SAVE_TITLE")):v("Spara")}),e.jsx(c.default,{defaultText:I,onSend:X,files:N,onFilesChange:B,isUploading:y,onUploadImage:()=>{b.current?.triggerUpload()},onUploadCamera:()=>{A.current?.triggerUpload()},getImageUrl:n.CodicentService.getImageUrl,hasLocation:!!M,disableSend:!0,rows:9,placeholder:v("Beskriv CRM-aktivitet här..."),onChange:e=>{e!==U&&(_(e),e&&e.trim().length>0?ee(e):($(void 0),ee.cancel()))},onImagePasted:Q}),R&&e.jsxs("div",{className:S.review,children:[e.jsx("h3",{children:v("Analys")}),e.jsx(t.MessageBar,{intent:L,layout:"multiline",children:e.jsx(t.MessageBarBody,{children:v(R)})})]}),e.jsx(d.default,{ref:w,onFileUploaded:J,onUploading:Y,multiple:!0,codicentService:D}),e.jsx(d.default,{codicentService:D,ref:b,onFileUploaded:J,onUploading:Y,multiple:!0,accept:"image/*"}),e.jsx(d.default,{codicentService:D,ref:A,onFileUploaded:J,onUploading:Y,multiple:!0,accept:"image/*",capture:"environment"})]}),G&&oe()]})})};exports.CrmPagePersistent=x,exports.default=x;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("../components/Markdown.js");require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.js");var s=require("../components/Title.js"),i=require("../components/Text.js");require("../components/Spinner.js");var o=require("@fluentui/react-components");require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js");var n=require("react");require("@fluentui/react-icons"),require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var t=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs");var a=require("../utils/helpers.js");require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./Sales.js");var u=require("react-router-dom");require("./Purchase.js");var c=require("../components/Content.js"),l=require("../components/Page.js");require("./QrScan.js");var j=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js");const m=o.makeStyles({container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%"},instructionParagraph:{fontWeight:"bold",marginBottom:"1em"},orderedList:{marginLeft:"20px",marginBottom:"1em",fontSize:"1.3em"}});exports.default=()=>{const{t:d,tAsync:q}=j.default(),[p]=u.useSearchParams(),g=u.useNavigate(),h=p.get("id"),x=m(),[f,v]=n.useState(""),[C,k]=n.useState(!1);return n.useEffect((()=>{(async()=>{const e=t.getConfigValue("FORM_ACCEPT_MARKDOWN");if(e){k(!0);const r=await q(e);k(!1),v(r.replace("{{code}}",a.formatGuidToShorterReadableCode(h||"")))}})()}),[q,h]),e.jsx(l.Page,{hideFooter:!0,hideHeader:!0,children:e.jsx("div",{className:x.container,style:{backgroundImage:`url(${t.getConfigValue("FORM_BACKGROUND_IMAGE_URL")})`},children:e.jsxs(c.default,{children:[C&&e.jsx(i.Text,{children:d("Översätter...")}),t.getConfigValue("FORM_ACCEPT_MARKDOWN")&&f&&!C&&e.jsx(r.default,{content:f}),!t.getConfigValue("FORM_ACCEPT_MARKDOWN")&&e.jsxs(e.Fragment,{children:[e.jsx(s.Title,{children:d("Din kod för formuläret")}),e.jsx("p",{className:x.instructionParagraph,children:d("Instruktioner:")}),e.jsxs("ol",{className:x.orderedList,children:[e.jsx("li",{children:d("Skriv ner eller kopiera den kod som visas nedan, du behöver den för att identifiera din session.")}),e.jsx("li",{children:d("Klicka på 'Starta' för att komma igång med chatten.")})]}),e.jsx(i.Text,{size:500,children:d("Din kod är (skriv ner den):")}),e.jsx(i.Text,{size:600,style:{userSelect:"all"},children:a.formatGuidToShorterReadableCode(h||"")})]}),h&&e.jsx(o.Button,{appearance:"primary",onClick:()=>g(`/chat?fid=${h}`),children:d("Starta")})]})})})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("../components/Markdown.js");require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.js");var i=require("../components/Title.js"),s=require("../components/Text.js");require("../components/Spinner.js");var t=require("@fluentui/react-components");require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js");var o=require("react");require("@fluentui/react-icons"),require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var n=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs");var a=require("../utils/helpers.js");require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./Sales.js");var u=require("react-router-dom");require("./Purchase.js");var c=require("../components/Content.js"),d=require("../components/Page.js");require("./QrScan.js");var l=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("../components/audit/AuditCircularProgress.js"),require("../components/audit/AuditHorizontalProgress.js"),require("../components/audit/AuditRoleIndicator.js"),require("../components/audit/AuditUnitSwitcher.js"),require("../components/audit/AuditAnswerCell.js"),require("../components/audit/AuditSearchBar.js"),require("../components/audit/AuditFilterChips.js"),require("../components/audit/AuditFilterBar.js"),require("../components/audit/AuditGroupsProgress.js"),require("../components/audit/AuditSummaryDashboard.js"),require("../components/audit/AuditRequirementDialog.js"),require("../components/audit/AuditUnitExportDialog.js"),require("../components/audit/AuditUnitImportDialog.js"),require("../components/audit/AuditBulkExportDialog.js"),require("../components/audit/AuditBulkUploadDialog.js"),require("../components/audit/AuditSortPresets.js");const m=t.makeStyles({container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%"},instructionParagraph:{fontWeight:"bold",marginBottom:"1em"},orderedList:{marginLeft:"20px",marginBottom:"1em",fontSize:"1.3em"}});exports.default=()=>{const{t:j,tAsync:p}=l.default(),[q]=u.useSearchParams(),g=u.useNavigate(),h=q.get("id"),x=m(),[C,f]=o.useState(""),[A,v]=o.useState(!1);return o.useEffect((()=>{(async()=>{const e=n.getConfigValue("FORM_ACCEPT_MARKDOWN");if(e){v(!0);const r=await p(e);v(!1),f(r.replace("{{code}}",a.formatGuidToShorterReadableCode(h||"")))}})()}),[p,h]),e.jsx(d.Page,{hideFooter:!0,hideHeader:!0,children:e.jsx("div",{className:x.container,style:{backgroundImage:`url(${n.getConfigValue("FORM_BACKGROUND_IMAGE_URL")})`},children:e.jsxs(c.default,{children:[A&&e.jsx(s.Text,{children:j("Översätter...")}),n.getConfigValue("FORM_ACCEPT_MARKDOWN")&&C&&!A&&e.jsx(r.default,{content:C}),!n.getConfigValue("FORM_ACCEPT_MARKDOWN")&&e.jsxs(e.Fragment,{children:[e.jsx(i.Title,{children:j("Din kod för formuläret")}),e.jsx("p",{className:x.instructionParagraph,children:j("Instruktioner:")}),e.jsxs("ol",{className:x.orderedList,children:[e.jsx("li",{children:j("Skriv ner eller kopiera den kod som visas nedan, du behöver den för att identifiera din session.")}),e.jsx("li",{children:j("Klicka på 'Starta' för att komma igång med chatten.")})]}),e.jsx(s.Text,{size:500,children:j("Din kod är (skriv ner den):")}),e.jsx(s.Text,{size:600,style:{userSelect:"all"},children:a.formatGuidToShorterReadableCode(h||"")})]}),h&&e.jsx(t.Button,{appearance:"primary",onClick:()=>g(`/chat?fid=${h}`),children:j("Starta")})]})})})};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),n=require("@fluentui/react-components");require("../components/Markdown.js"),require("../components/Textarea.js");var o=require("../components/Button.js");require("../components/CompoundButton.js");var t=require("../components/Title.js");require("../components/Spinner.js");var i=require("../components/Label.js"),a=require("../components/Input.js");require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons");var s=require("../hooks/useStateWithLocalStorage.js");require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var l=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs");var u=require("../utils/helpers.js");require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormAccept.js"),require("./Sales.js"),require("react-router-dom"),require("./Purchase.js");var c=require("../components/Content.js"),d=require("../components/Page.js");require("./QrScan.js");var p=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js");const m=n.makeStyles({inputAndButton:{display:"flex",gap:"10px"},input:{minWidth:"90%"},container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%"},generatedLinkTitle:{marginBottom:"0.5em",fontWeight:"bold"},orderedList:{marginLeft:"20px",marginBottom:"1em"},instructionParagraph:{marginBottom:"1em",fontWeight:"bold"}});exports.default=({state:j})=>{const q=m(),{service:h}=j,{t:g}=p.default(),[k,v]=s.default(j.context.selectedApp+"_forms",[]),[x,f]=r.useState(),[b,w]=r.useState(),[S,C]=r.useState(!1),[y,L]=r.useState(),P=n.useId("form-dropdown");r.useEffect((()=>{h.getForms().then((e=>{e.sort(((e,r)=>e.name.localeCompare(r.name))),v(e)}))}),[h,g,v]);const $=void 0!==navigator.share;return e.jsx(d.Page,{children:e.jsx("div",{className:q.container,style:{backgroundImage:`url(${l.getConfigValue("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:e.jsxs(c.default,{children:[e.jsx(t.Title,{children:g("Skapa länk till formulär")}),e.jsx("p",{className:q.instructionParagraph,children:g("Instruktioner")}),e.jsxs("ol",{className:q.orderedList,children:[e.jsx("li",{children:g("Välj ett formulär från rullgardinsmenyn nedan. Detta formulär kommer att användas för den genererade länken.")}),e.jsx("li",{children:g("Klicka på 'Skapa länk' för att generera en unik länk. Länken visar var aktiv och kan användas för att svara på formuläret.")}),e.jsx("li",{children:g("När länken visas, kan du klicka på kopiera-ikonen för att kopiera länken till ditt urklipp.")}),e.jsx("li",{children:g("Om din enhet stödjer det, kan du även använda dela-knappen för att dela länken direkt.")}),e.jsx("li",{children:g("Kom ihåg att spara (skriva ner) koden")})]}),e.jsx("label",{id:P,className:q.instructionParagraph,children:g("Välj formulär")}),e.jsx(n.Dropdown,{"aria-labelledby":P,placeholder:"-",onOptionSelect:(e,r)=>L(r.optionValue),children:k.map((r=>e.jsxs(n.Option,{value:r.name,text:`${r.title} (${r.name})`,children:[`${r.title} (${r.name})`," "]},r.name)))}),e.jsx(o.Button,{appearance:"primary",disabled:!y,onClick:()=>{const e=k.find((e=>e.name===y));e?.url?h.sendMessage(`#ss-link #${y}`).then((r=>{const n=new Date(Date.now()+2592e5);h.generateApiToken(n).then((n=>{const o=e.url.includes("?")?"&":"?",t=`${e.url}${o}token=${n}`;f(t);const i=u.formatGuidToShorterReadableCode(r);w(i)}))})):h.sendMessage(`#ss-link #${y}`).then((e=>{const r=`${window.location.protocol}//${window.location.hostname}${window.location.port?":"+window.location.port:""}${window.location.pathname}`;f(`${r}#/formaccept?id=${e}`);const n=u.formatGuidToShorterReadableCode(e);w(n)}))},children:g("Skapa länk")}),x&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:q.generatedLinkTitle,children:g("Här är din genererade länk (du kan kopiera eller dela den):")}),e.jsx("div",{className:q.inputAndButton,children:e.jsx(a.Input,{className:q.input,value:x,readOnly:!0,onFocus:e=>e.target.select()})}),e.jsx("br",{}),e.jsxs("div",{className:q.inputAndButton,children:[e.jsx(o.Button,{appearance:"primary",title:g("Kopiera länk"),icon:"CopyRegular",onClick:()=>{x&&(navigator.clipboard.writeText(x),C(!0),setTimeout((()=>{C(!1),f(void 0)}),2e3))},children:g("Kopiera")}),$&&e.jsx(o.Button,{appearance:"primary",title:g("Dela länk"),icon:"ShareRegular",onClick:()=>{x&&(navigator.share({url:x}),setTimeout((()=>{f(void 0)}),2e3))},children:g("Dela")})]}),S&&e.jsx(i.Label,{children:g("Länk kopierad!")})]})]})})})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),n=require("@fluentui/react-components");require("../components/Markdown.js"),require("../components/Textarea.js");var i=require("../components/Button.js");require("../components/CompoundButton.js");var t=require("../components/Title.js");require("../components/Spinner.js");var o=require("../components/Label.js"),s=require("../components/Input.js");require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons");var a=require("../hooks/useStateWithLocalStorage.js");require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var u=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs");var l=require("../utils/helpers.js");require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormAccept.js"),require("./Sales.js"),require("react-router-dom"),require("./Purchase.js");var c=require("../components/Content.js"),d=require("../components/Page.js");require("./QrScan.js");var p=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("../components/audit/AuditCircularProgress.js"),require("../components/audit/AuditHorizontalProgress.js"),require("../components/audit/AuditRoleIndicator.js"),require("../components/audit/AuditUnitSwitcher.js"),require("../components/audit/AuditAnswerCell.js"),require("../components/audit/AuditSearchBar.js"),require("../components/audit/AuditFilterChips.js"),require("../components/audit/AuditFilterBar.js"),require("../components/audit/AuditGroupsProgress.js"),require("../components/audit/AuditSummaryDashboard.js"),require("../components/audit/AuditRequirementDialog.js"),require("../components/audit/AuditUnitExportDialog.js"),require("../components/audit/AuditUnitImportDialog.js"),require("../components/audit/AuditBulkExportDialog.js"),require("../components/audit/AuditBulkUploadDialog.js"),require("../components/audit/AuditSortPresets.js");const m=n.makeStyles({inputAndButton:{display:"flex",gap:"10px"},input:{minWidth:"90%"},container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%"},generatedLinkTitle:{marginBottom:"0.5em",fontWeight:"bold"},orderedList:{marginLeft:"20px",marginBottom:"1em"},instructionParagraph:{marginBottom:"1em",fontWeight:"bold"}});exports.default=({state:j})=>{const q=m(),{service:g}=j,{t:h}=p.default(),[k,x]=a.default(j.context.selectedApp+"_forms",[]),[v,f]=r.useState(),[S,b]=r.useState(),[w,A]=r.useState(!1),[C,P]=r.useState(),y=n.useId("form-dropdown");r.useEffect((()=>{g.getForms().then((e=>{e.sort(((e,r)=>e.name.localeCompare(r.name))),x(e)}))}),[g,h,x]);const B=void 0!==navigator.share;return e.jsx(d.Page,{children:e.jsx("div",{className:q.container,style:{backgroundImage:`url(${u.getConfigValue("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:e.jsxs(c.default,{children:[e.jsx(t.Title,{children:h("Skapa länk till formulär")}),e.jsx("p",{className:q.instructionParagraph,children:h("Instruktioner")}),e.jsxs("ol",{className:q.orderedList,children:[e.jsx("li",{children:h("Välj ett formulär från rullgardinsmenyn nedan. Detta formulär kommer att användas för den genererade länken.")}),e.jsx("li",{children:h("Klicka på 'Skapa länk' för att generera en unik länk. Länken visar var aktiv och kan användas för att svara på formuläret.")}),e.jsx("li",{children:h("När länken visas, kan du klicka på kopiera-ikonen för att kopiera länken till ditt urklipp.")}),e.jsx("li",{children:h("Om din enhet stödjer det, kan du även använda dela-knappen för att dela länken direkt.")}),e.jsx("li",{children:h("Kom ihåg att spara (skriva ner) koden")})]}),e.jsx("label",{id:y,className:q.instructionParagraph,children:h("Välj formulär")}),e.jsx(n.Dropdown,{"aria-labelledby":y,placeholder:"-",onOptionSelect:(e,r)=>P(r.optionValue),children:k.map((r=>e.jsxs(n.Option,{value:r.name,text:`${r.title} (${r.name})`,children:[`${r.title} (${r.name})`," "]},r.name)))}),e.jsx(i.Button,{appearance:"primary",disabled:!C,onClick:()=>{const e=k.find((e=>e.name===C));e?.url?g.sendMessage(`#ss-link #${C}`).then((r=>{const n=new Date(Date.now()+2592e5);g.generateApiToken(n).then((n=>{const i=e.url.includes("?")?"&":"?",t=`${e.url}${i}token=${n}`;f(t);const o=l.formatGuidToShorterReadableCode(r);b(o)}))})):g.sendMessage(`#ss-link #${C}`).then((e=>{const r=`${window.location.protocol}//${window.location.hostname}${window.location.port?":"+window.location.port:""}${window.location.pathname}`;f(`${r}#/formaccept?id=${e}`);const n=l.formatGuidToShorterReadableCode(e);b(n)}))},children:h("Skapa länk")}),v&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:q.generatedLinkTitle,children:h("Här är din genererade länk (du kan kopiera eller dela den):")}),e.jsx("div",{className:q.inputAndButton,children:e.jsx(s.Input,{className:q.input,value:v,readOnly:!0,onFocus:e=>e.target.select()})}),e.jsx("br",{}),e.jsxs("div",{className:q.inputAndButton,children:[e.jsx(i.Button,{appearance:"primary",title:h("Kopiera länk"),icon:"CopyRegular",onClick:()=>{v&&(navigator.clipboard.writeText(v),A(!0),setTimeout((()=>{A(!1),f(void 0)}),2e3))},children:h("Kopiera")}),B&&e.jsx(i.Button,{appearance:"primary",title:h("Dela länk"),icon:"ShareRegular",onClick:()=>{v&&(navigator.share({url:v}),setTimeout((()=>{f(void 0)}),2e3))},children:h("Dela")})]}),w&&e.jsx(o.Label,{children:h("Länk kopierad!")})]})]})})})};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("@fluentui/react-components"),n=require("@fluentui/react-icons"),i=require("react-router-dom");require("../components/Markdown.js"),require("../components/Textarea.js");var s=require("../components/Button.js");require("../components/CompoundButton.js");var o=require("../components/Title.js"),a=require("../components/Text.js"),l=require("../components/Spinner.js");require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js");var c=require("../hooks/useStateWithLocalStorage.js");require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js"),require("../config/index.js"),require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("./Purchase.js");var u=require("../components/Content.js"),d=require("../components/Page.js");require("./QrScan.js");var p=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js");var m=require("../hooks/useCodicentState.js");require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js");var g=require("../components/UrlProcessor.js");require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js");var h=require("../components/BulkUploadDialog.js");function j(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}require("../components/CookieBanner.js");var x=j(n);const v=t=>{if(!t)return null;const r=x[t];if(r&&("function"==typeof r||"object"==typeof r))try{return e.jsx(r,{})}catch{return null}return null},f=t=>{switch(t){case"Start Your CV AI Assistant":return e.jsx(n.Rocket24Regular,{});case"Smart CV Matching":return e.jsx(n.Briefcase24Regular,{});case"Enhance & Optimize CVs":return e.jsx(n.Sparkle24Regular,{});case"View CV Database":return e.jsx(n.Database24Regular,{});case"Create Job Requirements":return e.jsx(n.Target24Regular,{});case"Chat with CV AI":return e.jsx(n.Chat24Regular,{});default:return null}},b=r.makeStyles({main:{flexGrow:1,...r.shorthands.padding("10px"),overflowY:"auto",touchAction:"pan-y"},editButton:{position:"absolute",top:"80px",right:"16px",zIndex:10,background:"transparent",boxShadow:"none",border:"none",cursor:"pointer",padding:0,pointerEvents:"auto"},root:{height:"100%",backgroundPosition:"calc(50%) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",touchAction:"pan-y",pointerEvents:"none"},item:{height:"auto",width:"auto",flexShrink:1},buttonsList:{display:"flex",flexWrap:"wrap",justifyContent:"space-between",flexDirection:"column",alignItems:"center",gap:"1.5rem",...r.shorthands.padding("10px"),paddingTop:"30px",pointerEvents:"auto"},buttonContent:{display:"flex",alignItems:"center",gap:"8px"},buttonContentColumn:{display:"flex",flexDirection:"column",alignItems:"flex-start",gap:"4px",width:"100%"},buttonContentRow:{display:"flex",alignItems:"center",gap:"8px","& > svg":{flexShrink:0,width:"24px"}},buttonSubtitle:{fontSize:"0.85em",opacity:.75,fontWeight:"normal",marginTop:"2px",paddingLeft:"32px"},menuPopover:{minWidth:"16rem",borderRadius:"12px",...r.shorthands.padding("6px"),boxShadow:"0 8px 32px rgba(0,0,0,0.18), 0 2px 8px rgba(0,0,0,0.10)"},menuItemIconBadge:{display:"flex",alignItems:"center",justifyContent:"center",width:"32px",height:"32px",borderRadius:"8px",backgroundColor:"var(--colorBrandBackground2)",color:"var(--colorBrandForeground2)",flexShrink:0},menuItemTitle:{fontWeight:"500",fontSize:"0.95em"},menuItemSubtitle:{fontSize:"0.78em",opacity:.6,paddingLeft:"42px"},welcomeInfo:{display:"flex",flexDirection:"column",gap:"8px",alignItems:"center",textAlign:"center",maxWidth:"20rem",pointerEvents:"auto"},scrollableContent:{overflowY:"auto"}}),q=({state:j,audio:x,voice:q,buttons:k,backgroundImageUrl:C,welcomeText:w,slogan:y,indexTitle:S,developerMode:I,onEditClick:T,buttonStyles:A={},appName:D})=>{const{selectedApp:N,nickname:M,apps:P,name:z}=j.context,{service:B,error:R,stateMachine:_,currentStateName:E,fixAppUrl:L}=j,F=b(),[W,$]=c.default("app-buttons_"+N,[]),[V,O]=t.useState(!1),[U,H]=t.useState(!1),[Q,Y]=t.useState([]),[K,G]=t.useState(""),[J,X]=t.useState(""),[Z,ee]=t.useState(""),[te,re]=t.useState(new Set),{updating:ne,welcomeStatusText:ie}=m.default(_),{t:se}=p.default();t.useEffect((()=>{void 0!==k?$(k):N&&B.getAppButtons().then((e=>$(e))).catch(console.warn)}),[B,$,N,k]);const oe=e=>{e.preventDefault(),e.stopPropagation()},ae=!N||"hasAccess"!==E,le=!N||"hasAccess"!==E,ce=N&&"hasAccess"===E,ue=!N&&"hasAccess"===E&&P.length>1,de=!R&&!N&&!D,pe="noAccess"===E&&(1===P.length||!!D),me=N&&"hasAccess"===E;return e.jsx(d.Page,{hideHeader:ae,hideFooter:le,audio:x,voice:q,children:e.jsxs("div",{className:F.root,style:{backgroundImage:C?`url(${C})`:void 0},children:[I&&T&&"hasAccess"===E&&e.jsx("div",{className:F.editButton,children:e.jsx(r.Tooltip,{content:se("Edit settings")||"Edit settings",relationship:"label",children:e.jsx(r.Button,{appearance:"subtle",icon:e.jsx(n.Edit24Regular,{}),"aria-label":se("Edit settings")||"Edit settings",onClick:T,size:"small"})})}),e.jsx("div",{className:F.item,children:e.jsx("div",{className:F.item,children:e.jsxs("div",{className:F.buttonsList,children:[ue&&e.jsxs(e.Fragment,{children:[e.jsx(o.Title,{children:se("Välkommen, vart vill du gå?")}),P.map(((t,n)=>e.jsx("div",{children:e.jsx(s.Button,{size:"large",appearance:"primary",onClick:()=>_.setSelectedApp(t.id),children:e.jsxs("div",{className:F.buttonContent,children:[t.logo&&e.jsx(r.Image,{src:t.logo,height:24}),t.title||t.id]})})},"codicent_button_"+n)))]}),de&&e.jsxs(e.Fragment,{children:[e.jsx(o.Title,{children:se("Skapa ny?")}),e.jsx(a.Text,{size:400,children:se("Här går du vidare för att skapa din egna privata digitala assistent.")}),e.jsx(s.Button,{size:"large",appearance:"primary",onClick:()=>_.update(),children:se("Kör!")})]}),pe&&e.jsx("div",{children:e.jsxs(u.default,{children:[e.jsx(o.Title,{children:`${se("Välkommen till")} ${S}`}),!V&&e.jsx(a.Text,{size:400,children:se("Du är inte medlem än. Skicka begäran för att komma in!")}),!V&&e.jsx(s.Button,{size:"large",appearance:"primary",onClick:async()=>{if(O(!0),!D)return console.error("appName prop not provided."),alert("appName not defined."),void O(!1);await B.requestInvite(M,D)?alert(se("Begäran skickad! Du får åtkomst när ägaren godkänner.")):(O(!1),alert(se("Misslyckades att skicka begäran. Försök igen senare.")))},children:se("Skicka begäran")}),!V&&e.jsxs(a.Text,{size:300,children:[se("Har du redan ett abonnemang? Då kanske har du loggat in med fel konto.")," ",e.jsx(i.Link,{to:"/logout",children:se("Logga ut")})," ",se("och sedan in igen för att komma igång.")]}),V&&e.jsx(a.Text,{size:400,children:se("Begäran skickad till ägaren.")}),V&&e.jsx(s.Button,{size:"large",onClick:()=>{window.location.href="./"},children:se("Kontrollera åtkomst")})]})}),me&&e.jsxs("div",{className:F.welcomeInfo,children:[e.jsx(a.Text,{weight:"semibold",size:500,align:"center",children:w?w.replace("{{username}}",z||M||""):se("Välkommen")}),y&&e.jsx(a.Text,{weight:"semibold",italic:!0,size:400,align:"center",children:y}),ne&&e.jsx(l.Spinner,{}),!ne&&ie&&e.jsx(a.Text,{size:400,align:"center",children:se(ie)})]}),ce&&W.map(((t,n)=>{const i="file_drop"===t.type,o="multi_option"===t.type,a=t.options&&Array.isArray(t.options)?t.options:[],l=e=>{const t=e.replace("upload:","").split(":");if(t.length>=4){G(t[0]?.trim()||""),X(t[1]?.trim()||""),ee(t[2]?.trim()||"");const e=t[3]?.trim()||"";Y(e?e.split(",").map((e=>e.trim())).filter((e=>e.length>0)):[])}else{G(""),X(""),ee("");const e=t[0]?.trim()||"";Y(e?e.split(",").map((e=>e.trim())).filter((e=>e.length>0)):[])}H(!0)},c=(e,t)=>{if(e.startsWith("voice:")){const t=e.replace("voice:","").trim();t&&q?.updateInstructions(t),q?.connectConversation()}else e.startsWith("upload:")?l(e):e.startsWith("app:")?t(e.replace("app:",L("/app/index.html?token={token}&app={app}&nickname={nickname}")).trim()):t(e)};return e.jsx("div",{children:i?e.jsx("div",{className:`${F.item} ${te.has(n)?"dragActive":""}`,style:{width:"16rem",minWidth:"15rem",border:`2px dashed ${A.textColor||"#ccc"}`,backgroundColor:te.has(n)?A.activeColor||void 0:A.backgroundColor||void 0,color:A.textColor||void 0,borderRadius:"8px",padding:"1.2rem 1rem",textAlign:"center",cursor:"pointer"},onDragEnter:e=>((e,t)=>{e.preventDefault(),e.stopPropagation(),re((e=>new Set(e.add(t))))})(e,n),onDragLeave:e=>((e,t)=>{e.preventDefault(),e.stopPropagation(),re((e=>{const r=new Set(e);return r.delete(t),r}))})(e,n),onDragOver:oe,onDrop:e=>(async(e,t,r)=>{e.preventDefault(),e.stopPropagation(),re((e=>{const t=new Set(e);return t.delete(r),t}));const n=Array.from(e.dataTransfer.files);if(0===n.length)return;let i=[];if(t.url.startsWith("upload:")){const e=t.url.replace("upload:","").split(":"),r=(e.length>=4?e[3]:e[0])?.trim()||"";i=r?r.split(",").map((e=>e.trim())).filter((e=>e.length>0)):[]}for(const e of n)try{const t=new FormData;t.append("file",e);const r=await B.uploadFile(e.name,t);if(!r)continue;const n=i.length>0?i.map((e=>`#${e}`)).join(" "):"#index #summarize";await B.sendMessage(`@${N} ${n}\n\n${e.name}\n#file:${r}\n`)}catch(t){console.error("Error processing file:",e.name,t)}})(e,t,n),onClick:()=>t.url.startsWith("upload:")&&l(t.url),children:e.jsxs("div",{className:F.buttonContentColumn,children:[e.jsxs("div",{className:F.buttonContentRow,children:[v(t.icon)||f(t.title),e.jsx("span",{children:se(t.title)})]}),e.jsx("div",{className:F.buttonSubtitle,children:te.has(n)?se("Drop files here..."):se("Drag files here or click")})]})}):o?e.jsxs(r.Menu,{children:[e.jsx(r.MenuTrigger,{children:e.jsx(r.MenuButton,{size:"large",appearance:"primary",style:{width:"16rem",minWidth:"15rem",border:"none",backgroundColor:A.backgroundColor||void 0,color:A.textColor||void 0,padding:"1.2rem 1rem"},children:e.jsxs("div",{className:F.buttonContentColumn,children:[e.jsxs("div",{className:F.buttonContentRow,children:[v(t.icon)||f(t.title),e.jsx("span",{children:se(t.title)})]}),t.subtitle&&e.jsx("div",{className:F.buttonSubtitle,children:se(t.subtitle)})]})})}),e.jsx(r.MenuPopover,{className:F.menuPopover,children:e.jsx(r.MenuList,{children:a.map(((t,i)=>e.jsx(g.UrlProcessor,{service:B,children:n=>e.jsx(r.MenuItem,{onClick:()=>c(t.url,n),children:e.jsxs("div",{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[v(t.icon)&&e.jsx("div",{className:F.menuItemIconBadge,children:v(t.icon)}),e.jsx("span",{className:F.menuItemTitle,children:se(t.title)})]}),t.subtitle&&e.jsx("div",{className:F.menuItemSubtitle,children:se(t.subtitle)})]})})},`option_${n}_${i}`)))})})]}):e.jsx(g.UrlProcessor,{service:B,children:r=>e.jsx(s.Button,{size:"large",appearance:"primary",style:{width:"16rem",minWidth:"15rem",border:"none",backgroundColor:A.backgroundColor||void 0,color:A.textColor||void 0,padding:"1.2rem 1rem"},onClick:()=>c(t.url,r),children:e.jsxs("div",{className:F.buttonContentColumn,children:[e.jsxs("div",{className:F.buttonContentRow,children:[v(t.icon)||f(t.title),e.jsx("span",{children:se(t.title)})]}),t.subtitle&&e.jsx("div",{className:F.buttonSubtitle,children:se(t.subtitle)})]})})})},"button_"+n)}))]})})}),R&&e.jsx("div",{className:"error",children:R}),e.jsx(h.default,{project:N||"",hidden:!U,onDismiss:()=>{H(!1),G(""),X(""),ee(""),Y([])},sendMessage:async e=>{try{return await B.sendMessage(e)}catch{return}},onUploaded:()=>{H(!1),G(""),X(""),ee(""),Y([])},service:B,tags:Q,title:K,description:J,dropText:Z})]})})};exports.Home=q,exports.default=q;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("@fluentui/react-components"),n=require("@fluentui/react-icons"),i=require("react-router-dom");require("../components/Markdown.js"),require("../components/Textarea.js");var s=require("../components/Button.js");require("../components/CompoundButton.js");var o=require("../components/Title.js"),a=require("../components/Text.js"),l=require("../components/Spinner.js");require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js");var c=require("../hooks/useStateWithLocalStorage.js");require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js"),require("../config/index.js"),require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("./Purchase.js");var u=require("../components/Content.js"),d=require("../components/Page.js");require("./QrScan.js");var p=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js");var m=require("../hooks/useCodicentState.js");require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js");var g=require("../components/UrlProcessor.js");require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js");var j=require("../components/BulkUploadDialog.js");function h(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}require("../components/CookieBanner.js"),require("../components/audit/AuditCircularProgress.js"),require("../components/audit/AuditHorizontalProgress.js"),require("../components/audit/AuditRoleIndicator.js"),require("../components/audit/AuditUnitSwitcher.js"),require("../components/audit/AuditAnswerCell.js"),require("../components/audit/AuditSearchBar.js"),require("../components/audit/AuditFilterChips.js"),require("../components/audit/AuditFilterBar.js"),require("../components/audit/AuditGroupsProgress.js"),require("../components/audit/AuditSummaryDashboard.js"),require("../components/audit/AuditRequirementDialog.js"),require("../components/audit/AuditUnitExportDialog.js"),require("../components/audit/AuditUnitImportDialog.js"),require("../components/audit/AuditBulkExportDialog.js"),require("../components/audit/AuditBulkUploadDialog.js"),require("../components/audit/AuditSortPresets.js");var x=h(n);const q=t=>{if(!t)return null;const r=x[t];if(r&&("function"==typeof r||"object"==typeof r))try{return e.jsx(r,{})}catch{return null}return null},v=t=>{switch(t){case"Start Your CV AI Assistant":return e.jsx(n.Rocket24Regular,{});case"Smart CV Matching":return e.jsx(n.Briefcase24Regular,{});case"Enhance & Optimize CVs":return e.jsx(n.Sparkle24Regular,{});case"View CV Database":return e.jsx(n.Database24Regular,{});case"Create Job Requirements":return e.jsx(n.Target24Regular,{});case"Chat with CV AI":return e.jsx(n.Chat24Regular,{});default:return null}},f=r.makeStyles({main:{flexGrow:1,...r.shorthands.padding("10px"),overflowY:"auto",touchAction:"pan-y"},editButton:{position:"absolute",top:"80px",right:"16px",zIndex:10,background:"transparent",boxShadow:"none",border:"none",cursor:"pointer",padding:0,pointerEvents:"auto"},root:{height:"100%",backgroundPosition:"calc(50%) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",touchAction:"pan-y",pointerEvents:"none"},item:{height:"auto",width:"auto",flexShrink:1},buttonsList:{display:"flex",flexWrap:"wrap",justifyContent:"space-between",flexDirection:"column",alignItems:"center",gap:"1.5rem",...r.shorthands.padding("10px"),paddingTop:"30px",pointerEvents:"auto"},buttonContent:{display:"flex",alignItems:"center",gap:"8px"},buttonContentColumn:{display:"flex",flexDirection:"column",alignItems:"flex-start",gap:"4px",width:"100%"},buttonContentRow:{display:"flex",alignItems:"center",gap:"8px","& > svg":{flexShrink:0,width:"24px"}},buttonSubtitle:{fontSize:"0.85em",opacity:.75,fontWeight:"normal",marginTop:"2px",paddingLeft:"32px"},menuPopover:{minWidth:"16rem",borderRadius:"12px",...r.shorthands.padding("6px"),boxShadow:"0 8px 32px rgba(0,0,0,0.18), 0 2px 8px rgba(0,0,0,0.10)"},menuItemIconBadge:{display:"flex",alignItems:"center",justifyContent:"center",width:"32px",height:"32px",borderRadius:"8px",backgroundColor:"var(--colorBrandBackground2)",color:"var(--colorBrandForeground2)",flexShrink:0},menuItemTitle:{fontWeight:"500",fontSize:"0.95em"},menuItemSubtitle:{fontSize:"0.78em",opacity:.6,paddingLeft:"42px"},welcomeInfo:{display:"flex",flexDirection:"column",gap:"8px",alignItems:"center",textAlign:"center",maxWidth:"20rem",pointerEvents:"auto"},scrollableContent:{overflowY:"auto"}}),b=({state:h,audio:x,voice:b,buttons:k,backgroundImageUrl:C,welcomeText:S,slogan:w,indexTitle:y,developerMode:A,onEditClick:I,buttonStyles:D={},appName:P})=>{const{selectedApp:T,nickname:B,apps:N,name:z}=h.context,{service:M,error:R,stateMachine:_,currentStateName:E,fixAppUrl:F}=h,L=f(),[W,$]=c.default("app-buttons_"+T,[]),[U,V]=t.useState(!1),[O,H]=t.useState(!1),[Q,Y]=t.useState([]),[G,K]=t.useState(""),[J,X]=t.useState(""),[Z,ee]=t.useState(""),[te,re]=t.useState(new Set),{updating:ne,welcomeStatusText:ie}=m.default(_),{t:se}=p.default();t.useEffect((()=>{void 0!==k?$(k):T&&M.getAppButtons().then((e=>$(e))).catch(console.warn)}),[M,$,T,k]);const oe=e=>{e.preventDefault(),e.stopPropagation()},ae=!T||"hasAccess"!==E,le=!T||"hasAccess"!==E,ce=T&&"hasAccess"===E,ue=!T&&"hasAccess"===E&&N.length>1,de=!R&&!T&&!P,pe="noAccess"===E&&(1===N.length||!!P),me=T&&"hasAccess"===E;return e.jsx(d.Page,{hideHeader:ae,hideFooter:le,audio:x,voice:b,children:e.jsxs("div",{className:L.root,style:{backgroundImage:C?`url(${C})`:void 0},children:[A&&I&&"hasAccess"===E&&e.jsx("div",{className:L.editButton,children:e.jsx(r.Tooltip,{content:se("Edit settings")||"Edit settings",relationship:"label",children:e.jsx(r.Button,{appearance:"subtle",icon:e.jsx(n.Edit24Regular,{}),"aria-label":se("Edit settings")||"Edit settings",onClick:I,size:"small"})})}),e.jsx("div",{className:L.item,children:e.jsx("div",{className:L.item,children:e.jsxs("div",{className:L.buttonsList,children:[ue&&e.jsxs(e.Fragment,{children:[e.jsx(o.Title,{children:se("Välkommen, vart vill du gå?")}),N.map(((t,n)=>e.jsx("div",{children:e.jsx(s.Button,{size:"large",appearance:"primary",onClick:()=>_.setSelectedApp(t.id),children:e.jsxs("div",{className:L.buttonContent,children:[t.logo&&e.jsx(r.Image,{src:t.logo,height:24}),t.title||t.id]})})},"codicent_button_"+n)))]}),de&&e.jsxs(e.Fragment,{children:[e.jsx(o.Title,{children:se("Skapa ny?")}),e.jsx(a.Text,{size:400,children:se("Här går du vidare för att skapa din egna privata digitala assistent.")}),e.jsx(s.Button,{size:"large",appearance:"primary",onClick:()=>_.update(),children:se("Kör!")})]}),pe&&e.jsx("div",{children:e.jsxs(u.default,{children:[e.jsx(o.Title,{children:`${se("Välkommen till")} ${y}`}),!U&&e.jsx(a.Text,{size:400,children:se("Du är inte medlem än. Skicka begäran för att komma in!")}),!U&&e.jsx(s.Button,{size:"large",appearance:"primary",onClick:async()=>{if(V(!0),!P)return console.error("appName prop not provided."),alert("appName not defined."),void V(!1);await M.requestInvite(B,P)?alert(se("Begäran skickad! Du får åtkomst när ägaren godkänner.")):(V(!1),alert(se("Misslyckades att skicka begäran. Försök igen senare.")))},children:se("Skicka begäran")}),!U&&e.jsxs(a.Text,{size:300,children:[se("Har du redan ett abonnemang? Då kanske har du loggat in med fel konto.")," ",e.jsx(i.Link,{to:"/logout",children:se("Logga ut")})," ",se("och sedan in igen för att komma igång.")]}),U&&e.jsx(a.Text,{size:400,children:se("Begäran skickad till ägaren.")}),U&&e.jsx(s.Button,{size:"large",onClick:()=>{window.location.href="./"},children:se("Kontrollera åtkomst")})]})}),me&&e.jsxs("div",{className:L.welcomeInfo,children:[e.jsx(a.Text,{weight:"semibold",size:500,align:"center",children:S?S.replace("{{username}}",z||B||""):se("Välkommen")}),w&&e.jsx(a.Text,{weight:"semibold",italic:!0,size:400,align:"center",children:w}),ne&&e.jsx(l.Spinner,{}),!ne&&ie&&e.jsx(a.Text,{size:400,align:"center",children:se(ie)})]}),ce&&W.map(((t,n)=>{const i="file_drop"===t.type,o="multi_option"===t.type,a=t.options&&Array.isArray(t.options)?t.options:[],l=e=>{const t=e.replace("upload:","").split(":");if(t.length>=4){K(t[0]?.trim()||""),X(t[1]?.trim()||""),ee(t[2]?.trim()||"");const e=t[3]?.trim()||"";Y(e?e.split(",").map((e=>e.trim())).filter((e=>e.length>0)):[])}else{K(""),X(""),ee("");const e=t[0]?.trim()||"";Y(e?e.split(",").map((e=>e.trim())).filter((e=>e.length>0)):[])}H(!0)},c=(e,t)=>{if(e.startsWith("voice:")){const t=e.replace("voice:","").trim();t&&b?.updateInstructions(t),b?.connectConversation()}else e.startsWith("upload:")?l(e):e.startsWith("app:")?t(e.replace("app:",F("/app/index.html?token={token}&app={app}&nickname={nickname}")).trim()):t(e)};return e.jsx("div",{children:i?e.jsx("div",{className:`${L.item} ${te.has(n)?"dragActive":""}`,style:{width:"16rem",minWidth:"15rem",border:`2px dashed ${D.textColor||"#ccc"}`,backgroundColor:te.has(n)?D.activeColor||void 0:D.backgroundColor||void 0,color:D.textColor||void 0,borderRadius:"8px",padding:"1.2rem 1rem",textAlign:"center",cursor:"pointer"},onDragEnter:e=>((e,t)=>{e.preventDefault(),e.stopPropagation(),re((e=>new Set(e.add(t))))})(e,n),onDragLeave:e=>((e,t)=>{e.preventDefault(),e.stopPropagation(),re((e=>{const r=new Set(e);return r.delete(t),r}))})(e,n),onDragOver:oe,onDrop:e=>(async(e,t,r)=>{e.preventDefault(),e.stopPropagation(),re((e=>{const t=new Set(e);return t.delete(r),t}));const n=Array.from(e.dataTransfer.files);if(0===n.length)return;let i=[];if(t.url.startsWith("upload:")){const e=t.url.replace("upload:","").split(":"),r=(e.length>=4?e[3]:e[0])?.trim()||"";i=r?r.split(",").map((e=>e.trim())).filter((e=>e.length>0)):[]}for(const e of n)try{const t=new FormData;t.append("file",e);const r=await M.uploadFile(e.name,t);if(!r)continue;const n=i.length>0?i.map((e=>`#${e}`)).join(" "):"#index #summarize";await M.sendMessage(`@${T} ${n}\n\n${e.name}\n#file:${r}\n`)}catch(t){console.error("Error processing file:",e.name,t)}})(e,t,n),onClick:()=>t.url.startsWith("upload:")&&l(t.url),children:e.jsxs("div",{className:L.buttonContentColumn,children:[e.jsxs("div",{className:L.buttonContentRow,children:[q(t.icon)||v(t.title),e.jsx("span",{children:se(t.title)})]}),e.jsx("div",{className:L.buttonSubtitle,children:te.has(n)?se("Drop files here..."):se("Drag files here or click")})]})}):o?e.jsxs(r.Menu,{children:[e.jsx(r.MenuTrigger,{children:e.jsx(r.MenuButton,{size:"large",appearance:"primary",style:{width:"16rem",minWidth:"15rem",border:"none",backgroundColor:D.backgroundColor||void 0,color:D.textColor||void 0,padding:"1.2rem 1rem"},children:e.jsxs("div",{className:L.buttonContentColumn,children:[e.jsxs("div",{className:L.buttonContentRow,children:[q(t.icon)||v(t.title),e.jsx("span",{children:se(t.title)})]}),t.subtitle&&e.jsx("div",{className:L.buttonSubtitle,children:se(t.subtitle)})]})})}),e.jsx(r.MenuPopover,{className:L.menuPopover,children:e.jsx(r.MenuList,{children:a.map(((t,i)=>e.jsx(g.UrlProcessor,{service:M,children:n=>e.jsx(r.MenuItem,{onClick:()=>c(t.url,n),children:e.jsxs("div",{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[q(t.icon)&&e.jsx("div",{className:L.menuItemIconBadge,children:q(t.icon)}),e.jsx("span",{className:L.menuItemTitle,children:se(t.title)})]}),t.subtitle&&e.jsx("div",{className:L.menuItemSubtitle,children:se(t.subtitle)})]})})},`option_${n}_${i}`)))})})]}):e.jsx(g.UrlProcessor,{service:M,children:r=>e.jsx(s.Button,{size:"large",appearance:"primary",style:{width:"16rem",minWidth:"15rem",border:"none",backgroundColor:D.backgroundColor||void 0,color:D.textColor||void 0,padding:"1.2rem 1rem"},onClick:()=>c(t.url,r),children:e.jsxs("div",{className:L.buttonContentColumn,children:[e.jsxs("div",{className:L.buttonContentRow,children:[q(t.icon)||v(t.title),e.jsx("span",{children:se(t.title)})]}),t.subtitle&&e.jsx("div",{className:L.buttonSubtitle,children:se(t.subtitle)})]})})})},"button_"+n)}))]})})}),R&&e.jsx("div",{className:"error",children:R}),e.jsx(j.default,{project:T||"",hidden:!O,onDismiss:()=>{H(!1),K(""),X(""),ee(""),Y([])},sendMessage:async e=>{try{return await M.sendMessage(e)}catch{return}},onUploaded:()=>{H(!1),K(""),X(""),ee(""),Y([])},service:M,tags:Q,title:G,description:J,dropText:Z})]})})};exports.Home=b,exports.default=b;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("@fluentui/react-components"),s=require("react"),i=require("react-router-dom");require("../components/Markdown.js"),require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.js");var n=require("../components/Text.js");require("../components/Spinner.js"),require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons"),require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js"),require("../config/index.js"),require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("./Purchase.js"),require("../components/Content.js");var t=require("../components/Page.js");require("./QrScan.js"),require("../hooks/useLocalization.js"),require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js");var o=require("../components/HtmlView.js");require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js");exports.default=({state:u})=>{const a=window.location.hash.match(/^#\/html\/(.+)$/),c=a?decodeURIComponent(a[1]):"",l=i.useNavigate(),[d,j]=s.useState(),[m,q]=s.useState(!1),[p,h]=s.useState(),{service:g}=u;return s.useEffect((()=>{c&&g?(q(!0),h(void 0),g.getMessagesFast([c],void 0,1).then((e=>{if(0===e.length)return void h(`No messages found with tag: ${c}`);const r=e[0].content;j((e=>{const r=e.indexOf("```html");if(-1!==r){const s=e.indexOf("```",r+7);return-1===s?e.substring(r+7):e.substring(r+7,s)}const s=[/<!DOCTYPE[^>]*>[\s\S]*?<\/html>/i,/<html[^>]*>[\s\S]*?<\/html>/i,/<div[^>]*>[\s\S]*?<\/div>/i,/<body[^>]*>[\s\S]*?<\/body>/i,/<article[^>]*>[\s\S]*?<\/article>/i,/<section[^>]*>[\s\S]*?<\/section>/i];for(const r of s){const s=e.match(r);if(s)return s[0]}if(e.includes("<html")||e.includes("<!DOCTYPE")||e.includes("<div")||e.includes("<p>")||e.includes("<span")){const r=["<!DOCTYPE","<html","<div","<body","<article","<section"];let s=-1;for(const i of r){const r=e.indexOf(i);-1!==r&&(-1===s||r<s)&&(s=r)}if(-1!==s){let r=e.substring(s);const i=["</html>","</body>","</div>"];for(const e of i){const s=r.lastIndexOf(e);if(-1!==s){r=r.substring(0,s+e.length);break}}return r}return e}return e})(r))})).catch((e=>{console.error("Error fetching message:",e),h(`Error fetching message: ${e.message||"Unknown error"}`)})).finally((()=>{q(!1)}))):h("No tag provided or service unavailable")}),[c,g]),m?e.jsx(t.Page,{hideHeader:!0,hideFooter:!0,children:e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:e.jsx(r.Spinner,{})})}):p?e.jsx(t.Page,{hideHeader:!0,hideFooter:!0,children:e.jsxs("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh",flexDirection:"column",gap:"20px"},children:[e.jsx(n.Text,{children:p}),e.jsxs(n.Text,{children:["Tag: ",c]})]})}):d?e.jsx("div",{style:{height:"100%",display:"flex",flexDirection:"column",overflow:"hidden"},children:e.jsx(o.default,{html:d,onDismiss:()=>l(-1)})}):e.jsx(t.Page,{hideHeader:!0,hideFooter:!0,children:e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:e.jsx(n.Text,{children:"No HTML content available"})})})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("@fluentui/react-components"),s=require("react"),i=require("react-router-dom");require("../components/Markdown.js"),require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.js");var t=require("../components/Text.js");require("../components/Spinner.js"),require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons"),require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js"),require("../config/index.js"),require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("./Purchase.js"),require("../components/Content.js");var o=require("../components/Page.js");require("./QrScan.js"),require("../hooks/useLocalization.js"),require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js");var n=require("../components/HtmlView.js");require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("../components/audit/AuditCircularProgress.js"),require("../components/audit/AuditHorizontalProgress.js"),require("../components/audit/AuditRoleIndicator.js"),require("../components/audit/AuditUnitSwitcher.js"),require("../components/audit/AuditAnswerCell.js"),require("../components/audit/AuditSearchBar.js"),require("../components/audit/AuditFilterChips.js"),require("../components/audit/AuditFilterBar.js"),require("../components/audit/AuditGroupsProgress.js"),require("../components/audit/AuditSummaryDashboard.js"),require("../components/audit/AuditRequirementDialog.js"),require("../components/audit/AuditUnitExportDialog.js"),require("../components/audit/AuditUnitImportDialog.js"),require("../components/audit/AuditBulkExportDialog.js"),require("../components/audit/AuditBulkUploadDialog.js"),require("../components/audit/AuditSortPresets.js");exports.default=({state:u})=>{const a=window.location.hash.match(/^#\/html\/(.+)$/),c=a?decodeURIComponent(a[1]):"",l=i.useNavigate(),[d,j]=s.useState(),[m,q]=s.useState(!1),[p,h]=s.useState(),{service:g}=u;return s.useEffect((()=>{c&&g?(q(!0),h(void 0),g.getMessagesFast([c],void 0,1).then((e=>{if(0===e.length)return void h(`No messages found with tag: ${c}`);const r=e[0].content;j((e=>{const r=e.indexOf("```html");if(-1!==r){const s=e.indexOf("```",r+7);return-1===s?e.substring(r+7):e.substring(r+7,s)}const s=[/<!DOCTYPE[^>]*>[\s\S]*?<\/html>/i,/<html[^>]*>[\s\S]*?<\/html>/i,/<div[^>]*>[\s\S]*?<\/div>/i,/<body[^>]*>[\s\S]*?<\/body>/i,/<article[^>]*>[\s\S]*?<\/article>/i,/<section[^>]*>[\s\S]*?<\/section>/i];for(const r of s){const s=e.match(r);if(s)return s[0]}if(e.includes("<html")||e.includes("<!DOCTYPE")||e.includes("<div")||e.includes("<p>")||e.includes("<span")){const r=["<!DOCTYPE","<html","<div","<body","<article","<section"];let s=-1;for(const i of r){const r=e.indexOf(i);-1!==r&&(-1===s||r<s)&&(s=r)}if(-1!==s){let r=e.substring(s);const i=["</html>","</body>","</div>"];for(const e of i){const s=r.lastIndexOf(e);if(-1!==s){r=r.substring(0,s+e.length);break}}return r}return e}return e})(r))})).catch((e=>{console.error("Error fetching message:",e),h(`Error fetching message: ${e.message||"Unknown error"}`)})).finally((()=>{q(!1)}))):h("No tag provided or service unavailable")}),[c,g]),m?e.jsx(o.Page,{hideHeader:!0,hideFooter:!0,children:e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:e.jsx(r.Spinner,{})})}):p?e.jsx(o.Page,{hideHeader:!0,hideFooter:!0,children:e.jsxs("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh",flexDirection:"column",gap:"20px"},children:[e.jsx(t.Text,{children:p}),e.jsxs(t.Text,{children:["Tag: ",c]})]})}):d?e.jsx("div",{style:{height:"100%",display:"flex",flexDirection:"column",overflow:"hidden"},children:e.jsx(n.default,{html:d,onDismiss:()=>l(-1)})}):e.jsx(o.Page,{hideHeader:!0,hideFooter:!0,children:e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:e.jsx(t.Text,{children:"No HTML content available"})})})};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react");require("../components/Markdown.js"),require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.js");var r=require("@fluentui/react-components");require("../components/Spinner.js");var a=require("../components/TextHeader.js");require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js");var n=require("@fluentui/react-icons");require("../services/codicent.js");var s=require("../services/dataCache.js"),o=require("../utils/MessageContent.js");require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js"),require("../config/index.js"),require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js");var i=require("../utils/excelExport.js");require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js");var c=require("react-router-dom");require("./Purchase.js"),require("../components/Content.js");var l=require("../components/Page.js");require("./QrScan.js");var u=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js");var d=require("../hooks/useUserRoles.js");require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js");var p=require("../components/SearchBox.js");require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js");var m=require("../components/ListView.js"),g=require("../components/RecordModal.js");require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js");var h=require("../node_modules/lodash/lodash.js");const f=r.makeStyles({container:{width:"100%",flex:1,maxWidth:"100%",height:"100%",minHeight:0,backgroundColor:"#ffffff",display:"flex",flexDirection:"column",margin:"0 auto",overflow:"hidden","@media (max-width: 768px)":{maxWidth:"100%",borderRadius:"0"},touchAction:"pan-y",paddingLeft:"0",paddingRight:"0"},listContainer:{overflow:"hidden",flex:1,minHeight:0,marginTop:"10px"},headerRow:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"10px",flexWrap:"wrap"},buttonGroup:{display:"flex",gap:"8px",flexWrap:"wrap"},addButton:{minWidth:"auto",whiteSpace:"nowrap"},recordsCount:{fontSize:"14px",color:"#666",marginTop:"8px"},backButton:{marginBottom:"10px"},searchBox:{marginTop:"8px"},loadMoreContainer:{display:"flex",justifyContent:"center",padding:"16px 0",borderTop:"1px solid #e0e0e0",marginTop:"4px"}}),j=500,x=({state:x,getColumnDefs:q,filterData:C})=>{const[S,w]=c.useSearchParams(),v=S.get("tag")||"logbook",y=S.get("title")||"",k=S.get("contentTitle"),b="true"===S.get("loadAll"),A="true"===S.get("canAdd"),M="true"===S.get("canEdit"),D="false"!==S.get("canExport"),E=S.get("addUrl")||"",R=S.get("q")||"",[T,_]=t.useState(R),[B,I]=t.useState(R),{service:$}=x,[P,N]=t.useState([]),[L,F]=t.useState(!1),[O,U]=t.useState(!1),[H,W]=t.useState(!1),V=t.useRef(null),z=t.useRef(R),J=t.useRef(""),Q=t.useRef(!0),[G,K]=t.useState(0),[X,Y]=t.useState(null),Z=f(),{t:ee}=u.default(),te=c.useNavigate(),{getCurrentUserName:re}=d.useUserRoles($,x.context.nickname,x.context.selectedApp),ae=t.useMemo((()=>(k?[{key:k,title:k,maxWidth:250}]:q?q(v):[]).map((e=>({...e,title:e.title?ee(e.title):void 0})))),[k,v,ee,q]),[ne,se]=t.useState(!1),[oe,ie]=t.useState(null),[ce,le]=t.useState(!1),[ue,de]=t.useState(null),pe=t.useMemo((()=>`listpage_searches_${v}`),[v]),me=e=>{try{const t=localStorage.getItem(e);return t?JSON.parse(t):[]}catch{return[]}},[ge,he]=t.useState((()=>me(pe)));t.useEffect((()=>{he(me(pe))}),[pe]);const fe=t.useCallback((e=>{const t=e.trim();t&&he((e=>{const r=[t,...e.filter((e=>e!==t))].slice(0,20);try{localStorage.setItem(pe,JSON.stringify(r))}catch{}return r}))}),[pe]),je=t.useCallback((e=>{he((t=>{const r=t.filter((t=>t!==e));try{localStorage.setItem(pe,JSON.stringify(r))}catch{}return r}))}),[pe]),xe=t.useMemo((()=>h.lodashExports.debounce((e=>I(e)),500)),[I]);t.useEffect((()=>()=>{xe.cancel()}),[xe]);const qe=t.useCallback((e=>{_(e),xe(e)}),[xe]),Ce=t.useCallback((e=>{fe(e)}),[fe]);t.useEffect((()=>{if(!S.get("q")){const e=S.get(`filter_${v}`);if(e){let t=e;if("%USERNAME%"===t){const e=re();if(!e)return;t=e}_(t),I(t),z.current=t}}}),[v,S,re]),t.useEffect((()=>{const e=S.get("q")||"";e!==z.current&&(_(e),I(e),z.current=e,J.current="")}),[S]),t.useEffect((()=>(V.current&&clearTimeout(V.current),V.current=setTimeout((()=>{if(z.current!==T){const e={title:y,tag:v};k&&(e.contentTitle=k),T&&(e.q=T),b&&(e.loadAll="true"),w(e,{replace:!0}),z.current=T}}),500),()=>{V.current&&clearTimeout(V.current)})),[T,v,y,k,b,w]),t.useEffect((()=>{Q.current=!0;const e=`${v}-${k}-${b}-${G}-${B}`;if(e===J.current)return;J.current=e;const t=k?`${v}-${B}-${k}`:`${v}-${B||"all"}`,r=s.dataCache.get(t);if(!r){if(U(!1),F(!0),k)$.getMessagesFast([v],B).then((e=>{if(!Q.current)return void F(!1);const r=e.map((e=>{const t=new Date(e.createdAt).toLocaleString();return{id:e.id,data:{[k]:new o.default(e.content).content,createdAt:t},fileId:null,fileIds:[],tags:[v],mentions:[$.codicent],createdAt:t}}));s.dataCache.set(t,r),Q.current&&N(r)})).catch(console.warn).finally((()=>F(!1)));else{const e=B||"",r=b||e?void 0:j;$.readDataMessages(v,e,void 0,0,r).then((r=>{s.dataCache.set(t,r),Q.current?(N(r),U(!b&&!e&&r.length===j)):F(!1)})).catch(console.warn).finally((()=>F(!1)))}return()=>{Q.current=!1}}if(N(r),U(!b&&!k&&r.length>=j),!k&&!B&&r.length>0){const e=r.reduce(((e,t)=>t.createdAt>e?t.createdAt:e),r[0].createdAt);$.readDataMessages(v,"",void 0,void 0,void 0,e).then((e=>{Q.current&&N((r=>{const a=new Set(r.map((e=>e.id))),n=e.filter((e=>!a.has(e.id)));if(0===n.length)return r;const o=[...n,...r];return s.dataCache.set(t,o),o}))})).catch(console.warn)}}),[$,v,k,b,B,G]);const Se=t.useMemo((()=>{const e={};S.forEach(((t,r)=>{r.startsWith("filter_")&&(e[r.replace("filter_","")]=t)}));let t=P.map(((e,t)=>({item:e,index:t})));for(const[r,a]of Object.entries(e)){const e=a.replace("%USERNAME%",re()),n=x.context.nickname||"";t=t.filter((({item:t})=>{const a=t.data[r];return null!=a&&(String(a).includes(e)||String(a).includes(n))}))}if(C){const e=C(t.map((({item:e})=>e)),v),r=new Set(e.map((e=>e.id)));t=t.filter((({item:e})=>r.has(e.id)))}return t.map((({item:e,index:t})=>({...e.data,createdAt:e.createdAt,_id:e.id,originalMessageId:e.originalMessageId||e.id,_index:t})))}),[P,S,x.context.nickname,re,C,v]),we=t.useMemo((()=>{const e=(T||"").trim().toLowerCase();if(!e)return Se;const t=ae.filter((e=>!e.hidden)).map((e=>e.key));return Se.filter((r=>{for(const a of t)if(Array.isArray(a))for(const t of a){const a=r[t];if(null!=a&&String(a).toLowerCase().includes(e))return!0}else{const t=r[a];if(null!=t&&String(t).toLowerCase().includes(e))return!0}return!1}))}),[Se,T,ae]),ve=t.useCallback((()=>{s.dataCache.clearPattern(v),J.current="",K((e=>e+1))}),[v]),ye=t.useCallback((async()=>{W(!0);try{const e=await $.readDataMessages(v,"",void 0,P.length,j),t=[...P,...e];N(t),s.dataCache.set(`${v}-all`,t),U(e.length===j)}catch(e){console.warn(e)}finally{W(!1)}}),[P,$,v]),ke=t.useCallback((e=>{Y(e)}),[]),be=()=>{le(!1),de(null)},Ae=t.useCallback((async()=>{const e=`${v}_${(new Date).toISOString().split("T")[0]}`.replace(/[/\\:*?"<>|]/g,"_");const t=null!==X?X:we;await i.exportToExcel(t,ae,e,ee)||console.warn("No data to export")}),[X,we,ae,v,ee]),Me=t.useMemo((()=>null!==X?X.length:we.length),[X,we]);return e.jsx(l.Page,{hideHeader:!0,children:e.jsxs("div",{className:Z.container,children:[e.jsx("div",{className:Z.backButton,children:e.jsx(r.Button,{appearance:"subtle",icon:e.jsx(n.ArrowLeft24Regular,{}),onClick:()=>te(-1),children:ee("Tillbaka")})}),e.jsxs("div",{className:Z.headerRow,children:[e.jsx(a.default,{title:ee(y||"Loggbok")}),e.jsxs("div",{className:Z.buttonGroup,children:[e.jsx(r.Button,{appearance:"subtle",icon:e.jsx(n.ArrowClockwise24Regular,{}),onClick:ve,title:ee("Refresh"),children:ee("Refresh")}),D&&e.jsx(r.Button,{appearance:"subtle",icon:e.jsx(n.ArrowDownload24Regular,{}),onClick:Ae,title:ee("Export to Excel"),children:ee("Export to Excel")}),(A||E)&&e.jsx(r.Button,{appearance:"primary",icon:e.jsx(n.Add24Regular,{}),onClick:A?()=>{ie(null),se(!0)}:()=>window.open(E,"_blank"),className:Z.addButton,children:ee("Add Record")})]})]}),e.jsx("div",{className:Z.searchBox,children:e.jsx(p.default,{placeholder:ee("Sök")+"...",value:T,onChange:qe,recentSearches:ge,onCommitSearch:Ce,onRemoveRecentSearch:je})}),!L&&e.jsxs("div",{className:Z.recordsCount,children:[ee("Total"),": ",Me," ",ee("records"),Me!==P.length&&` (${ee("filtered from")} ${P.length})`]}),e.jsxs("div",{className:Z.listContainer,children:[L&&e.jsx("p",{children:ee("Söker")+"..."}),!L&&e.jsx(m.default,{data:we,columns:ae,canEdit:M,onEdit:(e,t)=>{const r=P[t];r&&(ie({data:{...r.data},index:t}),se(!0))},onDelete:(e,t)=>{const r=P[t];r&&(de({index:t,id:r.id}),le(!0))},onToggleCheckbox:async(e,t,r,a)=>{const n=P[a];if(n){const e=Array.isArray(t)?t[0]:t,o={...n.data,[e]:String(r)},i=await $.updateDataMessage(n.id,o);N((e=>{const t=[...e];return t[a]={...n,id:i,data:o},t})),s.dataCache.clearPattern(v)}},onEnumChange:async(e,t,r,a)=>{const n=P[a];if(n){const e=Array.isArray(t)?t[0]:t,o={...n.data,[e]:r},i=await $.updateDataMessage(n.id,o);N((e=>{const t=[...e];return t[a]={...n,id:i,data:o},t})),s.dataCache.clearPattern(v)}},onFilteredDataChange:ke})]}),O&&!T.trim()&&e.jsx("div",{className:Z.loadMoreContainer,children:e.jsx(r.Button,{appearance:"primary",size:"medium",onClick:ye,disabled:H,children:H?ee("Laddar..."):ee("Visa fler")+` (${P.length} ${ee("laddade")})`})}),e.jsx(g.RecordModal,{open:ne,onClose:()=>se(!1),onSave:async e=>{if(oe){const t=P[oe.index];if(t){const r={};for(const t in e){const a=e[t];r[t]=null==a?"":String(a)}const a=await $.updateDataMessage(t.id,r);N((e=>{const n=[...e];return n[oe.index]={...t,id:a,data:r},n})),s.dataCache.clearPattern(v)}}else{const t={};for(const r in e){const a=e[r];t[r]=null==a?"":String(a)}const r={id:await $.createDataMessage(v,t),data:t,createdAt:(new Date).toISOString(),fileId:null,fileIds:[],tags:[v],mentions:[$.codicent]};N((e=>[r,...e])),s.dataCache.clearPattern(v)}},columns:ae,initialData:oe?.data}),e.jsx(r.Dialog,{open:ce,onOpenChange:(e,t)=>!t.open&&be(),children:e.jsx(r.DialogSurface,{children:e.jsxs(r.DialogBody,{children:[e.jsx(r.DialogTitle,{children:ee("Confirm Delete")}),e.jsx(r.DialogContent,{children:ee("Are you sure you want to delete this record? This action cannot be undone.")}),e.jsxs(r.DialogActions,{children:[e.jsx(r.Button,{appearance:"secondary",onClick:be,children:ee("Cancel")}),e.jsx(r.Button,{appearance:"primary",onClick:async()=>{if(ue)try{await $.deleteDataMessage(ue.id),N((e=>e.filter(((e,t)=>t!==ue.index)))),s.dataCache.clearPattern(v)}catch(e){console.error("Failed to delete record:",e)}finally{le(!1),de(null)}},children:ee("Delete")})]})]})})})]})})};exports.ListPage=x,exports.default=x;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react");require("../components/Markdown.js"),require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.js");var r=require("@fluentui/react-components");require("../components/Spinner.js");var a=require("../components/TextHeader.js");require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js");var n=require("@fluentui/react-icons");require("../services/codicent.js");var s=require("../services/dataCache.js"),o=require("../utils/MessageContent.js");require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js"),require("../config/index.js"),require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js");var i=require("../utils/excelExport.js");require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js");var c=require("react-router-dom");require("./Purchase.js"),require("../components/Content.js");var l=require("../components/Page.js");require("./QrScan.js");var u=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js");var d=require("../hooks/useUserRoles.js");require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js");var p=require("../components/SearchBox.js");require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js");var m=require("../components/ListView.js"),g=require("../components/RecordModal.js");require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("../components/audit/AuditCircularProgress.js"),require("../components/audit/AuditHorizontalProgress.js"),require("../components/audit/AuditRoleIndicator.js"),require("../components/audit/AuditUnitSwitcher.js"),require("../components/audit/AuditAnswerCell.js"),require("../components/audit/AuditSearchBar.js"),require("../components/audit/AuditFilterChips.js"),require("../components/audit/AuditFilterBar.js"),require("../components/audit/AuditGroupsProgress.js"),require("../components/audit/AuditSummaryDashboard.js"),require("../components/audit/AuditRequirementDialog.js"),require("../components/audit/AuditUnitExportDialog.js"),require("../components/audit/AuditUnitImportDialog.js"),require("../components/audit/AuditBulkExportDialog.js"),require("../components/audit/AuditBulkUploadDialog.js"),require("../components/audit/AuditSortPresets.js");var j=require("../node_modules/lodash/lodash.js");const h=r.makeStyles({container:{width:"100%",flex:1,maxWidth:"100%",height:"100%",minHeight:0,backgroundColor:"#ffffff",display:"flex",flexDirection:"column",margin:"0 auto",overflow:"hidden","@media (max-width: 768px)":{maxWidth:"100%",borderRadius:"0"},touchAction:"pan-y",paddingLeft:"0",paddingRight:"0"},listContainer:{overflow:"hidden",flex:1,minHeight:0,marginTop:"10px"},headerRow:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"10px",flexWrap:"wrap"},buttonGroup:{display:"flex",gap:"8px",flexWrap:"wrap"},addButton:{minWidth:"auto",whiteSpace:"nowrap"},recordsCount:{fontSize:"14px",color:"#666",marginTop:"8px"},backButton:{marginBottom:"10px"},searchBox:{marginTop:"8px"},loadMoreContainer:{display:"flex",justifyContent:"center",padding:"16px 0",borderTop:"1px solid #e0e0e0",marginTop:"4px"}}),f=500,q=({state:q,getColumnDefs:x,filterData:C})=>{const[S,w]=c.useSearchParams(),A=S.get("tag")||"logbook",v=S.get("title")||"",y=S.get("contentTitle"),k="true"===S.get("loadAll"),b="true"===S.get("canAdd"),D="true"===S.get("canEdit"),M="false"!==S.get("canExport"),E=S.get("addUrl")||"",R=S.get("q")||"",[B,P]=t.useState(R),[I,T]=t.useState(R),{service:_}=q,[$,N]=t.useState([]),[L,F]=t.useState(!1),[U,O]=t.useState(!1),[H,W]=t.useState(!1),z=t.useRef(null),V=t.useRef(R),G=t.useRef(""),J=t.useRef(!0),[Q,K]=t.useState(0),[X,Y]=t.useState(null),Z=h(),{t:ee}=u.default(),te=c.useNavigate(),{getCurrentUserName:re}=d.useUserRoles(_,q.context.nickname,q.context.selectedApp),ae=t.useMemo((()=>(y?[{key:y,title:y,maxWidth:250}]:x?x(A):[]).map((e=>({...e,title:e.title?ee(e.title):void 0})))),[y,A,ee,x]),[ne,se]=t.useState(!1),[oe,ie]=t.useState(null),[ce,le]=t.useState(!1),[ue,de]=t.useState(null),pe=t.useMemo((()=>`listpage_searches_${A}`),[A]),me=e=>{try{const t=localStorage.getItem(e);return t?JSON.parse(t):[]}catch{return[]}},[ge,je]=t.useState((()=>me(pe)));t.useEffect((()=>{je(me(pe))}),[pe]);const he=t.useCallback((e=>{const t=e.trim();t&&je((e=>{const r=[t,...e.filter((e=>e!==t))].slice(0,20);try{localStorage.setItem(pe,JSON.stringify(r))}catch{}return r}))}),[pe]),fe=t.useCallback((e=>{je((t=>{const r=t.filter((t=>t!==e));try{localStorage.setItem(pe,JSON.stringify(r))}catch{}return r}))}),[pe]),qe=t.useMemo((()=>j.lodashExports.debounce((e=>T(e)),500)),[T]);t.useEffect((()=>()=>{qe.cancel()}),[qe]);const xe=t.useCallback((e=>{P(e),qe(e)}),[qe]),Ce=t.useCallback((e=>{he(e)}),[he]);t.useEffect((()=>{if(!S.get("q")){const e=S.get(`filter_${A}`);if(e){let t=e;if("%USERNAME%"===t){const e=re();if(!e)return;t=e}P(t),T(t),V.current=t}}}),[A,S,re]),t.useEffect((()=>{const e=S.get("q")||"";e!==V.current&&(P(e),T(e),V.current=e,G.current="")}),[S]),t.useEffect((()=>(z.current&&clearTimeout(z.current),z.current=setTimeout((()=>{if(V.current!==B){const e={title:v,tag:A};y&&(e.contentTitle=y),B&&(e.q=B),k&&(e.loadAll="true"),w(e,{replace:!0}),V.current=B}}),500),()=>{z.current&&clearTimeout(z.current)})),[B,A,v,y,k,w]),t.useEffect((()=>{J.current=!0;const e=`${A}-${y}-${k}-${Q}-${I}`;if(e===G.current)return;G.current=e;const t=y?`${A}-${I}-${y}`:`${A}-${I||"all"}`,r=s.dataCache.get(t);if(!r){if(O(!1),F(!0),y)_.getMessagesFast([A],I).then((e=>{if(!J.current)return void F(!1);const r=e.map((e=>{const t=new Date(e.createdAt).toLocaleString();return{id:e.id,data:{[y]:new o.default(e.content).content,createdAt:t},fileId:null,fileIds:[],tags:[A],mentions:[_.codicent],createdAt:t}}));s.dataCache.set(t,r),J.current&&N(r)})).catch(console.warn).finally((()=>F(!1)));else{const e=I||"",r=k||e?void 0:f;_.readDataMessages(A,e,void 0,0,r).then((r=>{s.dataCache.set(t,r),J.current?(N(r),O(!k&&!e&&r.length===f)):F(!1)})).catch(console.warn).finally((()=>F(!1)))}return()=>{J.current=!1}}if(N(r),O(!k&&!y&&r.length>=f),!y&&!I&&r.length>0){const e=r.reduce(((e,t)=>t.createdAt>e?t.createdAt:e),r[0].createdAt);_.readDataMessages(A,"",void 0,void 0,void 0,e).then((e=>{J.current&&N((r=>{const a=new Set(r.map((e=>e.id))),n=e.filter((e=>!a.has(e.id)));if(0===n.length)return r;const o=[...n,...r];return s.dataCache.set(t,o),o}))})).catch(console.warn)}}),[_,A,y,k,I,Q]);const Se=t.useMemo((()=>{const e={};S.forEach(((t,r)=>{r.startsWith("filter_")&&(e[r.replace("filter_","")]=t)}));let t=$.map(((e,t)=>({item:e,index:t})));for(const[r,a]of Object.entries(e)){const e=a.replace("%USERNAME%",re()),n=q.context.nickname||"";t=t.filter((({item:t})=>{const a=t.data[r];return null!=a&&(String(a).includes(e)||String(a).includes(n))}))}if(C){const e=C(t.map((({item:e})=>e)),A),r=new Set(e.map((e=>e.id)));t=t.filter((({item:e})=>r.has(e.id)))}return t.map((({item:e,index:t})=>({...e.data,createdAt:e.createdAt,_id:e.id,originalMessageId:e.originalMessageId||e.id,_index:t})))}),[$,S,q.context.nickname,re,C,A]),we=t.useMemo((()=>{const e=(B||"").trim().toLowerCase();if(!e)return Se;const t=ae.filter((e=>!e.hidden)).map((e=>e.key));return Se.filter((r=>{for(const a of t)if(Array.isArray(a))for(const t of a){const a=r[t];if(null!=a&&String(a).toLowerCase().includes(e))return!0}else{const t=r[a];if(null!=t&&String(t).toLowerCase().includes(e))return!0}return!1}))}),[Se,B,ae]),Ae=t.useCallback((()=>{s.dataCache.clearPattern(A),G.current="",K((e=>e+1))}),[A]),ve=t.useCallback((async()=>{W(!0);try{const e=await _.readDataMessages(A,"",void 0,$.length,f),t=[...$,...e];N(t),s.dataCache.set(`${A}-all`,t),O(e.length===f)}catch(e){console.warn(e)}finally{W(!1)}}),[$,_,A]),ye=t.useCallback((e=>{Y(e)}),[]),ke=()=>{le(!1),de(null)},be=t.useCallback((async()=>{const e=`${A}_${(new Date).toISOString().split("T")[0]}`.replace(/[/\\:*?"<>|]/g,"_");const t=null!==X?X:we;await i.exportToExcel(t,ae,e,ee)||console.warn("No data to export")}),[X,we,ae,A,ee]),De=t.useMemo((()=>null!==X?X.length:we.length),[X,we]);return e.jsx(l.Page,{hideHeader:!0,children:e.jsxs("div",{className:Z.container,children:[e.jsx("div",{className:Z.backButton,children:e.jsx(r.Button,{appearance:"subtle",icon:e.jsx(n.ArrowLeft24Regular,{}),onClick:()=>te(-1),children:ee("Tillbaka")})}),e.jsxs("div",{className:Z.headerRow,children:[e.jsx(a.default,{title:ee(v||"Loggbok")}),e.jsxs("div",{className:Z.buttonGroup,children:[e.jsx(r.Button,{appearance:"subtle",icon:e.jsx(n.ArrowClockwise24Regular,{}),onClick:Ae,title:ee("Refresh"),children:ee("Refresh")}),M&&e.jsx(r.Button,{appearance:"subtle",icon:e.jsx(n.ArrowDownload24Regular,{}),onClick:be,title:ee("Export to Excel"),children:ee("Export to Excel")}),(b||E)&&e.jsx(r.Button,{appearance:"primary",icon:e.jsx(n.Add24Regular,{}),onClick:b?()=>{ie(null),se(!0)}:()=>window.open(E,"_blank"),className:Z.addButton,children:ee("Add Record")})]})]}),e.jsx("div",{className:Z.searchBox,children:e.jsx(p.default,{placeholder:ee("Sök")+"...",value:B,onChange:xe,recentSearches:ge,onCommitSearch:Ce,onRemoveRecentSearch:fe})}),!L&&e.jsxs("div",{className:Z.recordsCount,children:[ee("Total"),": ",De," ",ee("records"),De!==$.length&&` (${ee("filtered from")} ${$.length})`]}),e.jsxs("div",{className:Z.listContainer,children:[L&&e.jsx("p",{children:ee("Söker")+"..."}),!L&&e.jsx(m.default,{data:we,columns:ae,canEdit:D,onEdit:(e,t)=>{const r=$[t];r&&(ie({data:{...r.data},index:t}),se(!0))},onDelete:(e,t)=>{const r=$[t];r&&(de({index:t,id:r.id}),le(!0))},onToggleCheckbox:async(e,t,r,a)=>{const n=$[a];if(n){const e=Array.isArray(t)?t[0]:t,o={...n.data,[e]:String(r)},i=await _.updateDataMessage(n.id,o);N((e=>{const t=[...e];return t[a]={...n,id:i,data:o},t})),s.dataCache.clearPattern(A)}},onEnumChange:async(e,t,r,a)=>{const n=$[a];if(n){const e=Array.isArray(t)?t[0]:t,o={...n.data,[e]:r},i=await _.updateDataMessage(n.id,o);N((e=>{const t=[...e];return t[a]={...n,id:i,data:o},t})),s.dataCache.clearPattern(A)}},onFilteredDataChange:ye})]}),U&&!B.trim()&&e.jsx("div",{className:Z.loadMoreContainer,children:e.jsx(r.Button,{appearance:"primary",size:"medium",onClick:ve,disabled:H,children:H?ee("Laddar..."):ee("Visa fler")+` (${$.length} ${ee("laddade")})`})}),e.jsx(g.RecordModal,{open:ne,onClose:()=>se(!1),onSave:async e=>{if(oe){const t=$[oe.index];if(t){const r={};for(const t in e){const a=e[t];r[t]=null==a?"":String(a)}const a=await _.updateDataMessage(t.id,r);N((e=>{const n=[...e];return n[oe.index]={...t,id:a,data:r},n})),s.dataCache.clearPattern(A)}}else{const t={};for(const r in e){const a=e[r];t[r]=null==a?"":String(a)}const r={id:await _.createDataMessage(A,t),data:t,createdAt:(new Date).toISOString(),fileId:null,fileIds:[],tags:[A],mentions:[_.codicent]};N((e=>[r,...e])),s.dataCache.clearPattern(A)}},columns:ae,initialData:oe?.data}),e.jsx(r.Dialog,{open:ce,onOpenChange:(e,t)=>!t.open&&ke(),children:e.jsx(r.DialogSurface,{children:e.jsxs(r.DialogBody,{children:[e.jsx(r.DialogTitle,{children:ee("Confirm Delete")}),e.jsx(r.DialogContent,{children:ee("Are you sure you want to delete this record? This action cannot be undone.")}),e.jsxs(r.DialogActions,{children:[e.jsx(r.Button,{appearance:"secondary",onClick:ke,children:ee("Cancel")}),e.jsx(r.Button,{appearance:"primary",onClick:async()=>{if(ue)try{await _.deleteDataMessage(ue.id),N((e=>e.filter(((e,t)=>t!==ue.index)))),s.dataCache.clearPattern(A)}catch(e){console.error("Failed to delete record:",e)}finally{le(!1),de(null)}},children:ee("Delete")})]})]})})})]})})};exports.ListPage=q,exports.default=q;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),s=require("@fluentui/react-components");require("../services/codicent.js"),require("../components/Markdown.js"),require("../components/Textarea.js");var i=require("../components/Button.js");require("../components/CompoundButton.js");var n=require("../components/Title.js"),t=require("../components/Text.js");require("../components/Spinner.js"),require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var o=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("../components/FileThumbnail.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/Content.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/Page.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js");var a=require("../hooks/useLocalization.js");require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("react-router-dom"),require("./Purchase.js"),require("./QrScan.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js");var u=require("../hooks/useAppStyles.js");const l=s.makeStyles({container:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100vh",backgroundPosition:"calc(50% - 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",gap:"20px",padding:"0 20px"},button:{minWidth:"15rem"},input:{minWidth:"15rem",marginBottom:"10px"},image:{maxHeight:"200px"}});exports.default=({state:c})=>{const{loginWithRedirect:m,loginPasswordless:g}=c.auth,j=l(),p=u.default(),{t:q}=a.default(),[d,h]=r.useState(""),[C,x]=r.useState(!1),_=o.getConfigValue("LOGIN_REDIRECT"),f=o.getConfigValue("AUTH0_PASSWORDLESS_ENABLED");r.useEffect((()=>{_&&m()}),[_]);return _?e.jsxs("div",{className:j.container,style:{backgroundImage:`url(${o.getConfigValue("HOME_BACKGROUND_IMAGE_URL")})`},children:[e.jsx(n.Title,{children:`${q("Välkommen till")} ${o.getConfigValue("INDEX_TITLE")}!`}),e.jsx(t.Text,{size:400,children:q("Omdirigerar till inloggning...")})]}):e.jsxs("div",{className:j.container,style:{backgroundImage:`url(${o.getConfigValue("HOME_BACKGROUND_IMAGE_URL")})`},children:[o.getConfigValue("LOGIN_LOGO_URL")&&e.jsx(s.Image,{src:o.getConfigValue("LOGIN_LOGO_URL"),alt:o.getConfigValue("INDEX_TITLE"),className:j.image}),!o.getConfigValue("LOGIN_HIDE_WELCOME")&&e.jsx(n.Title,{children:`${q("Välkommen till")} ${o.getConfigValue("INDEX_TITLE")}!`}),e.jsx(t.Text,{size:400,children:q(o.getConfigValue("LOGIN_WELCOME_TEXT")||"Logga in, eller registrera ett konto, för att komma igång.")}),f?e.jsxs(e.Fragment,{children:[e.jsx(s.Input,{className:j.input,type:"email",placeholder:q("Ange din e-postadress"),value:d,onChange:e=>h(e.target.value),disabled:C}),e.jsx(i.Button,{className:s.mergeClasses(p.button,j.button),size:"large",appearance:"primary",onClick:async()=>{if(d.trim()){x(!0);try{await g(d)}catch(e){console.error("Passwordless login failed:",e)}finally{x(!1)}}},disabled:!d.trim()||C,children:q(C?"Skickar...":"Skicka inloggningslänk")})]}):e.jsxs(e.Fragment,{children:[e.jsx(i.Button,{className:s.mergeClasses(p.button,j.button),size:"large",appearance:"primary",onClick:()=>m(),children:q("Logga in")}),!o.getConfigValue("HIDE_REGISTER_BUTTON")&&e.jsx(i.Button,{className:s.mergeClasses(p.button,j.button),size:"large",appearance:"primary",onClick:()=>m({authorizationParams:{screen_hint:"signup"}}),children:q("Registrera")})]})]})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),i=require("@fluentui/react-components");require("../services/codicent.js"),require("../components/Markdown.js"),require("../components/Textarea.js");var s=require("../components/Button.js");require("../components/CompoundButton.js");var t=require("../components/Title.js"),n=require("../components/Text.js");require("../components/Spinner.js"),require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var o=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("../components/FileThumbnail.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/Content.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/Page.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js");var a=require("../hooks/useLocalization.js");require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("../components/audit/AuditCircularProgress.js"),require("../components/audit/AuditHorizontalProgress.js"),require("../components/audit/AuditRoleIndicator.js"),require("../components/audit/AuditUnitSwitcher.js"),require("../components/audit/AuditAnswerCell.js"),require("../components/audit/AuditSearchBar.js"),require("../components/audit/AuditFilterChips.js"),require("../components/audit/AuditFilterBar.js"),require("../components/audit/AuditGroupsProgress.js"),require("../components/audit/AuditSummaryDashboard.js"),require("../components/audit/AuditRequirementDialog.js"),require("../components/audit/AuditUnitExportDialog.js"),require("../components/audit/AuditUnitImportDialog.js"),require("../components/audit/AuditBulkExportDialog.js"),require("../components/audit/AuditBulkUploadDialog.js"),require("../components/audit/AuditSortPresets.js"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("react-router-dom"),require("./Purchase.js"),require("./QrScan.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js");var u=require("../hooks/useAppStyles.js");const l=i.makeStyles({container:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100vh",backgroundPosition:"calc(50% - 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",gap:"20px",padding:"0 20px"},button:{minWidth:"15rem"},input:{minWidth:"15rem",marginBottom:"10px"},image:{maxHeight:"200px"}});exports.default=({state:c})=>{const{loginWithRedirect:m,loginPasswordless:p}=c.auth,d=l(),g=u.default(),{t:j}=a.default(),[q,h]=r.useState(""),[C,x]=r.useState(!1),_=o.getConfigValue("LOGIN_REDIRECT"),f=o.getConfigValue("AUTH0_PASSWORDLESS_ENABLED");r.useEffect((()=>{_&&m()}),[_]);return _?e.jsxs("div",{className:d.container,style:{backgroundImage:`url(${o.getConfigValue("HOME_BACKGROUND_IMAGE_URL")})`},children:[e.jsx(t.Title,{children:`${j("Välkommen till")} ${o.getConfigValue("INDEX_TITLE")}!`}),e.jsx(n.Text,{size:400,children:j("Omdirigerar till inloggning...")})]}):e.jsxs("div",{className:d.container,style:{backgroundImage:`url(${o.getConfigValue("HOME_BACKGROUND_IMAGE_URL")})`},children:[o.getConfigValue("LOGIN_LOGO_URL")&&e.jsx(i.Image,{src:o.getConfigValue("LOGIN_LOGO_URL"),alt:o.getConfigValue("INDEX_TITLE"),className:d.image}),!o.getConfigValue("LOGIN_HIDE_WELCOME")&&e.jsx(t.Title,{children:`${j("Välkommen till")} ${o.getConfigValue("INDEX_TITLE")}!`}),e.jsx(n.Text,{size:400,children:j(o.getConfigValue("LOGIN_WELCOME_TEXT")||"Logga in, eller registrera ett konto, för att komma igång.")}),f?e.jsxs(e.Fragment,{children:[e.jsx(i.Input,{className:d.input,type:"email",placeholder:j("Ange din e-postadress"),value:q,onChange:e=>h(e.target.value),disabled:C}),e.jsx(s.Button,{className:i.mergeClasses(g.button,d.button),size:"large",appearance:"primary",onClick:async()=>{if(q.trim()){x(!0);try{await p(q)}catch(e){console.error("Passwordless login failed:",e)}finally{x(!1)}}},disabled:!q.trim()||C,children:j(C?"Skickar...":"Skicka inloggningslänk")})]}):e.jsxs(e.Fragment,{children:[e.jsx(s.Button,{className:i.mergeClasses(g.button,d.button),size:"large",appearance:"primary",onClick:()=>m(),children:j("Logga in")}),!o.getConfigValue("HIDE_REGISTER_BUTTON")&&e.jsx(s.Button,{className:i.mergeClasses(g.button,d.button),size:"large",appearance:"primary",onClick:()=>m({authorizationParams:{screen_hint:"signup"}}),children:j("Registrera")})]})]})};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("@fluentui/react-components"),o=require("react-router-dom"),t=require("../components/Markdown.js");require("../components/Textarea.js");var s=require("../components/Button.js");require("../components/CompoundButton.js"),require("../components/Spinner.js");var n=require("../components/TextHeader.js");require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("react"),require("@fluentui/react-icons"),require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js"),require("../config/index.js"),require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("./Purchase.js"),require("../components/Content.js");var i=require("../components/Page.js");require("./QrScan.js");var a=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js");var u=require("../hooks/useAppStyles.js");require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js");var c=require("../components/Profile.js");require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js");var l=require("../components/LanguageSelector.js");require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js");const p=r.makeStyles({container:{backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%",touchAction:"pan-y",margin:"0 auto",maxWidth:"800px"},menu_items:{overflowY:"auto",height:"calc(100vh - 130px)",paddingLeft:"10px",paddingRight:"10px"},divider:{fontSize:"20px",fontWeight:"bold",marginTop:"32px",marginBottom:"20px"},appButton:{margin:"2px"}}),j=({state:j,title:m,aboutText:d,version:g,backgroundImageUrl:q,showHelpButton:h,showLogbookButton:x,stripeCustomerPortal:v,showAppSelector:b=!0})=>{const C=o.useNavigate(),f=u.default(),S=p(),{auth:k}=j,{t:B}=a.default(),w=d?d.replace("{{version}}",(()=>{const e=new Date,r=e.toISOString().split("T")[0],o=e.getHours().toString().padStart(2,"0");return g||`v${r}.${o}`})()):void 0;return e.jsx(i.Page,{hideHeader:!0,children:e.jsxs("div",{className:S.container,style:{backgroundImage:q?`url(${q})`:void 0},children:[e.jsx(n.default,{title:m||B("Meny")}),e.jsxs("div",{className:S.menu_items,children:[e.jsx(c.default,{state:j}),e.jsx(l.LanguageSelector,{}),e.jsx("hr",{}),e.jsx(s.Button,{icon:"ChevronRightFilled",size:"large",className:f.menuButton,onClick:()=>{k.logout(),j.stateMachine.logout()},iconPosition:"after",appearance:"transparent",children:B("Logga ut")}),v&&e.jsx(s.Button,{icon:"Payment24Regular",size:"large",className:f.menuButton,onClick:()=>window.location.href=v,iconPosition:"after",appearance:"transparent",children:B("Abonnemang")}),b&&j.context.apps&&j.context.apps.length>1&&e.jsxs(e.Fragment,{children:[e.jsx("h3",{children:B("Mina codicents")}),j.context.apps.map((o=>e.jsx(s.Button,{className:S.appButton,image:o.logo?e.jsx(r.Image,{src:o.logo,height:"24px"}):void 0,onClick:()=>j.stateMachine.setSelectedApp(o.id),title:o.title||o.id,children:o.title||o.id},o.id)))]}),x&&e.jsxs(e.Fragment,{children:[e.jsx("hr",{}),e.jsx(s.Button,{className:f.menuButton,icon:"ChevronRightFilled",size:"large",appearance:"subtle",iconPosition:"after",onClick:()=>C("/log"),children:B("Loggboken")})]}),e.jsx("hr",{}),w&&e.jsx(t.default,{content:w}),h&&e.jsxs(e.Fragment,{children:[e.jsx("h3",{children:B("Behöver du hjälp?")}),e.jsx(s.Button,{icon:"QuestionCircle24Regular",className:f.button,size:"large",appearance:"subtle",onClick:()=>C("/help"),children:B("Visa hjälp")})]})]})]})})};exports.Menu=j,exports.default=j;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("@fluentui/react-components"),t=require("react-router-dom"),o=require("../components/Markdown.js");require("../components/Textarea.js");var i=require("../components/Button.js");require("../components/CompoundButton.js"),require("../components/Spinner.js");var s=require("../components/TextHeader.js");require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("react"),require("@fluentui/react-icons"),require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js"),require("../config/index.js"),require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("./Purchase.js"),require("../components/Content.js");var n=require("../components/Page.js");require("./QrScan.js");var a=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js");var u=require("../hooks/useAppStyles.js");require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js");var c=require("../components/Profile.js");require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js");var l=require("../components/LanguageSelector.js");require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("../components/audit/AuditCircularProgress.js"),require("../components/audit/AuditHorizontalProgress.js"),require("../components/audit/AuditRoleIndicator.js"),require("../components/audit/AuditUnitSwitcher.js"),require("../components/audit/AuditAnswerCell.js"),require("../components/audit/AuditSearchBar.js"),require("../components/audit/AuditFilterChips.js"),require("../components/audit/AuditFilterBar.js"),require("../components/audit/AuditGroupsProgress.js"),require("../components/audit/AuditSummaryDashboard.js"),require("../components/audit/AuditRequirementDialog.js"),require("../components/audit/AuditUnitExportDialog.js"),require("../components/audit/AuditUnitImportDialog.js"),require("../components/audit/AuditBulkExportDialog.js"),require("../components/audit/AuditBulkUploadDialog.js"),require("../components/audit/AuditSortPresets.js");const p=r.makeStyles({container:{backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%",touchAction:"pan-y",margin:"0 auto",maxWidth:"800px"},menu_items:{overflowY:"auto",height:"calc(100vh - 130px)",paddingLeft:"10px",paddingRight:"10px"},divider:{fontSize:"20px",fontWeight:"bold",marginTop:"32px",marginBottom:"20px"},appButton:{margin:"2px"}}),d=({state:d,title:m,aboutText:j,version:q,backgroundImageUrl:g,showHelpButton:h,showLogbookButton:x,stripeCustomerPortal:v,showAppSelector:A=!0})=>{const C=t.useNavigate(),b=u.default(),S=p(),{auth:B}=d,{t:f}=a.default(),k=j?j.replace("{{version}}",(()=>{const e=new Date,r=e.toISOString().split("T")[0],t=e.getHours().toString().padStart(2,"0");return q||`v${r}.${t}`})()):void 0;return e.jsx(n.Page,{hideHeader:!0,children:e.jsxs("div",{className:S.container,style:{backgroundImage:g?`url(${g})`:void 0},children:[e.jsx(s.default,{title:m||f("Meny")}),e.jsxs("div",{className:S.menu_items,children:[e.jsx(c.default,{state:d}),e.jsx(l.LanguageSelector,{}),e.jsx("hr",{}),e.jsx(i.Button,{icon:"ChevronRightFilled",size:"large",className:b.menuButton,onClick:()=>{B.logout(),d.stateMachine.logout()},iconPosition:"after",appearance:"transparent",children:f("Logga ut")}),v&&e.jsx(i.Button,{icon:"Payment24Regular",size:"large",className:b.menuButton,onClick:()=>window.location.href=v,iconPosition:"after",appearance:"transparent",children:f("Abonnemang")}),A&&d.context.apps&&d.context.apps.length>1&&e.jsxs(e.Fragment,{children:[e.jsx("h3",{children:f("Mina codicents")}),d.context.apps.map((t=>e.jsx(i.Button,{className:S.appButton,image:t.logo?e.jsx(r.Image,{src:t.logo,height:"24px"}):void 0,onClick:()=>d.stateMachine.setSelectedApp(t.id),title:t.title||t.id,children:t.title||t.id},t.id)))]}),x&&e.jsxs(e.Fragment,{children:[e.jsx("hr",{}),e.jsx(i.Button,{className:b.menuButton,icon:"ChevronRightFilled",size:"large",appearance:"subtle",iconPosition:"after",onClick:()=>C("/log"),children:f("Loggboken")})]}),e.jsx("hr",{}),k&&e.jsx(o.default,{content:k}),h&&e.jsxs(e.Fragment,{children:[e.jsx("h3",{children:f("Behöver du hjälp?")}),e.jsx(i.Button,{icon:"QuestionCircle24Regular",className:b.button,size:"large",appearance:"subtle",onClick:()=>C("/help"),children:f("Visa hjälp")})]})]})]})})};exports.Menu=d,exports.default=d;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("@fluentui/react-components"),s=require("react"),i=require("react-router-dom");require("../components/Markdown.js"),require("../components/Textarea.js");var n=require("../components/Button.js");require("../components/CompoundButton.js");var o=require("../components/Title.js"),t=require("../components/Text.js"),a=require("../components/Spinner.js");require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons"),require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var u=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("../components/Content.js"),require("../components/Page.js"),require("./QrScan.js"),require("../hooks/useLocalization.js"),require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js");const c=r.makeStyles({container:{display:"flex",flexDirection:"column",alignItems:"center",gap:"20px",padding:"20px"},pricing:{padding:"20px",paddingLeft:"30px",border:"1px solid #ccc",borderRadius:"8px",backgroundColor:r.tokens.colorNeutralBackground1}}),l=({state:r})=>{const l=c(),[j,p]=s.useState(!1),{service:d,stateMachine:q}=r,{updateContext:m}=q;s.useEffect((()=>{new URLSearchParams(window.location.search).get("session_id")&&m({hasValidPurchase:void 0})}),[]);return e.jsxs("div",{className:l.container,children:[e.jsx(o.Title,{children:"Starta ditt abonnemang"}),e.jsx("div",{className:l.pricing,children:e.jsxs("ul",{children:[e.jsx("li",{children:e.jsx(t.Text,{size:400,children:"Kreditkort krävs inte"})}),e.jsx("li",{children:e.jsx(t.Text,{size:400,children:"Gratis de 2 första månaderna"})}),e.jsx("li",{children:e.jsx(t.Text,{size:400,children:"Därefter 89 kr/månad"})})]})}),e.jsx(n.Button,{appearance:"primary",onClick:async()=>{try{p(!0),await d.redirectToCheckout(u.getConfigValue("STRIPE_PRICE_ID"))}catch(e){console.error("Purchase error:",e)}finally{p(!1)}},disabled:j,children:j?e.jsx(a.Spinner,{size:"tiny"}):"Starta abonnemang"}),e.jsx("div",{children:e.jsxs(t.Text,{size:400,children:["Har du redan ett abonnemang? Kanske har du loggat in med fel konto. ",e.jsx(i.Link,{to:"/logout",children:"Logga ut"})," och sedan in igen för att komma igång."]})})]})};exports.Purchase=l,exports.default=l;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("@fluentui/react-components"),i=require("react"),s=require("react-router-dom");require("../components/Markdown.js"),require("../components/Textarea.js");var o=require("../components/Button.js");require("../components/CompoundButton.js");var n=require("../components/Title.js"),t=require("../components/Text.js"),a=require("../components/Spinner.js");require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons"),require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var u=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("../components/Content.js"),require("../components/Page.js"),require("./QrScan.js"),require("../hooks/useLocalization.js"),require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("../components/audit/AuditCircularProgress.js"),require("../components/audit/AuditHorizontalProgress.js"),require("../components/audit/AuditRoleIndicator.js"),require("../components/audit/AuditUnitSwitcher.js"),require("../components/audit/AuditAnswerCell.js"),require("../components/audit/AuditSearchBar.js"),require("../components/audit/AuditFilterChips.js"),require("../components/audit/AuditFilterBar.js"),require("../components/audit/AuditGroupsProgress.js"),require("../components/audit/AuditSummaryDashboard.js"),require("../components/audit/AuditRequirementDialog.js"),require("../components/audit/AuditUnitExportDialog.js"),require("../components/audit/AuditUnitImportDialog.js"),require("../components/audit/AuditBulkExportDialog.js"),require("../components/audit/AuditBulkUploadDialog.js"),require("../components/audit/AuditSortPresets.js");const c=r.makeStyles({container:{display:"flex",flexDirection:"column",alignItems:"center",gap:"20px",padding:"20px"},pricing:{padding:"20px",paddingLeft:"30px",border:"1px solid #ccc",borderRadius:"8px",backgroundColor:r.tokens.colorNeutralBackground1}}),d=({state:r})=>{const d=c(),[l,j]=i.useState(!1),{service:p,stateMachine:m}=r,{updateContext:q}=m;i.useEffect((()=>{new URLSearchParams(window.location.search).get("session_id")&&q({hasValidPurchase:void 0})}),[]);return e.jsxs("div",{className:d.container,children:[e.jsx(n.Title,{children:"Starta ditt abonnemang"}),e.jsx("div",{className:d.pricing,children:e.jsxs("ul",{children:[e.jsx("li",{children:e.jsx(t.Text,{size:400,children:"Kreditkort krävs inte"})}),e.jsx("li",{children:e.jsx(t.Text,{size:400,children:"Gratis de 2 första månaderna"})}),e.jsx("li",{children:e.jsx(t.Text,{size:400,children:"Därefter 89 kr/månad"})})]})}),e.jsx(o.Button,{appearance:"primary",onClick:async()=>{try{j(!0),await p.redirectToCheckout(u.getConfigValue("STRIPE_PRICE_ID"))}catch(e){console.error("Purchase error:",e)}finally{j(!1)}},disabled:l,children:l?e.jsx(a.Spinner,{size:"tiny"}):"Starta abonnemang"}),e.jsx("div",{children:e.jsxs(t.Text,{size:400,children:["Har du redan ett abonnemang? Kanske har du loggat in med fel konto. ",e.jsx(s.Link,{to:"/logout",children:"Logga ut"})," och sedan in igen för att komma igång."]})})]})};exports.Purchase=d,exports.default=d;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),o=require("@fluentui/react-components"),s=require("react-router-dom");require("../components/Markdown.js");var t=require("../components/Textarea.js"),n=require("../components/Button.js");require("../components/CompoundButton.js");var a=require("../components/Text.js");require("../components/Spinner.js");var i=require("../components/Input.js");require("../components/TextHeader.js"),require("../components/TypingIndicator.js");var l=require("../components/Dialog.js");require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons"),require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var c=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Purchase.js"),require("../components/Content.js");var u=require("../components/Page.js");require("./QrScan.js");var d=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js");var p=require("../components/QrCodeDialog.js");require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js");const m=o.makeStyles({root:{display:"flex",flexDirection:"column",height:"100%",touchAction:"pan-y"},header:{display:"flex",justifyContent:"space-between",alignItems:"center",color:o.tokens.colorNeutralForegroundOnBrand,...o.shorthands.padding("10px","20px")},logo:{maxWidth:"100px",maxHeight:"50px",height:"auto",cursor:"pointer"},inputContainer:{display:"flex",justifyContent:"flex-end",alignItems:"center",maxWidth:"300px",width:"200px",paddingLeft:"10px"},dashboard:{display:"flex",justifyContent:"space-around",width:"100%",marginTop:"20px"},statBox:{...o.shorthands.padding("10px"),...o.shorthands.borderRadius("12px"),minWidth:"50px",textAlign:"center",color:"white"},buttonContainer:{display:"flex",flexDirection:"column",height:"100%",justifyContent:"center",gap:"30px",alignItems:"center",...o.shorthands.padding("20px")},actionButton:{width:"14rem",minWidth:"15rem",height:"3rem"},textAreaContainer:{display:"flex",flexDirection:"column",gap:"10px"},opened:{backgroundColor:"#1a5614"},not_home:{backgroundColor:"#f44336"},sales:{backgroundColor:"#2196F3"},call_back:{backgroundColor:"#FF9800"},backButton:{position:"absolute",top:"10px",left:"10px",zIndex:1e3}}),j={opened:"#1a5614",not_home:"#f44336",sales:"#2196F3",call_back:"#FF9800"},g=()=>{const g=m(),{t:h}=d.default(),x=s.useNavigate(),[q,C]=r.useState(""),[f,v]=r.useState(),[k,b]=r.useState({opened:0,not_home:0,sales:0,call_back:0}),[w,_]=r.useState([]),[y,S]=r.useState(!1),[I,D]=r.useState(""),[P,A]=r.useState(""),[B,F]=r.useState(""),[M,N]=r.useState(!1),[$,T]=r.useState(!1),[L,O]=r.useState(!1),H={backgroundColor:c.getConfigValue("APP_HEADER_COLOR")||o.tokens.colorBrandBackground},V=r.useCallback((()=>new Promise((e=>{navigator.geolocation?navigator.geolocation.getCurrentPosition((r=>{const o=`#position (${r.coords.latitude},${r.coords.longitude})`;e(o)})):e(void 0)}))),[v]);r.useEffect((()=>{window.Codicent.getDataMessages({codicent:c.getConfigValue("APP_NAME"),tags:["sales_code"]}).then((e=>{e=e.filter((e=>"1"!==e.data.inactive)),_(e)})).catch(console.error),V()}),[]);const z=async()=>{if(!q)return;const e=["not_home","sales","call_back","opened"],r=new Date;r.setHours(0,0,0,0);const o={...k};for(const s of e){const e=await window.Codicent.getMessages({search:`#${s} #sales_code_${q}`,afterTimestamp:r,length:1e4});o[s]=e.filter((e=>e.content.includes(`#${s} `)&&e.content.includes(`#sales_code_${q}`))).length}b(o)},R=async(e,r="")=>{const o=await V();console.log("Got position",o);const s=`@${c.getConfigValue("APP_NAME")} #sales_code_${q} #${e} ${o||""} ${r.trim().length>0?"#comment ":""}${r}`.trim();await window.Codicent.postMessage({message:s}),z()};return e.jsx(u.Page,{hideHeader:!0,children:e.jsxs("div",{className:g.root,children:[e.jsx("div",{className:g.backButton,children:e.jsx(n.Button,{appearance:"subtle",icon:"ArrowLeft24Regular",onClick:()=>x(-1),children:h("Tillbaka")})}),e.jsxs("div",{className:g.header,style:H,children:[e.jsx(o.Image,{src:P||c.getConfigValue("APP_ICON_URL")||"https://via.placeholder.com/100",className:g.logo,onClick:()=>{P?O(!0):B&&T(!0)}}),e.jsx("div",{className:g.inputContainer,children:e.jsx(i.Input,{value:q,onChange:e=>C(e.target.value),onBlur:()=>{const e=w.find((e=>e.data.code===q));if(e)A(`https://codicent.com/app/GetImage?fileId=${e.fileId}&width=100`),F(e.data.link),N(!0),z();else{const e=w.find((e=>e.data.code2===q.toUpperCase()));e?(A(`https://codicent.com/app/GetImage?fileId=${e.fileIds&&e.fileIds.length>1?e.fileIds[1]:e.fileId}&width=100`),F(e.data.link2),N(!0),z()):(N(!1),alert(h("Fel försäljningskod!")))}},placeholder:h("Fyll i försäljningskod"),maxLength:16,size:"large"})})]}),M&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:g.dashboard,children:Object.keys(k).map((r=>{return e.jsx("div",{className:(s=r,o.mergeClasses(g.statBox,g[s])),children:e.jsx(a.Text,{weight:"bold",size:400,children:k[r]})},r);var s}))}),e.jsx("div",{className:g.buttonContainer,children:Object.entries(j).map((([r,o])=>e.jsx(n.Button,{size:"large",className:g.actionButton,style:{backgroundColor:o,color:"white"},onClick:()=>{R(r),"opened"===r&&S(!0),"sales"===r&&T(!0)},children:r.charAt(0).toUpperCase()+r.slice(1).replace("_"," ")},r)))}),e.jsxs(l.Dialog,{open:y,children:[e.jsx(l.DialogTitle,{children:h("Skriv in avvikelse")}),e.jsx(l.DialogContent,{children:e.jsx("div",{className:g.textAreaContainer,children:e.jsx(t.Textarea,{value:I,onChange:e=>D(e.target.value),placeholder:h("Skriv din text här..."),rows:4,size:"large"})})}),e.jsx(l.DialogActions,{children:e.jsx(n.Button,{appearance:"primary",onClick:()=>{R("anomaly",`\n${I}`),S(!1),D("")},children:h("Spara")})})]}),e.jsxs(l.Dialog,{open:$,children:[e.jsx(l.DialogTitle,{children:h("Godkännande")}),e.jsx(l.DialogContent,{children:h("Är kunden över 23 år?")}),e.jsxs(l.DialogActions,{children:[e.jsx(n.Button,{appearance:"primary",onClick:()=>window.open(B,"_blank"),children:h("OK")}),e.jsx(n.Button,{appearance:"secondary",onClick:()=>T(!1),children:h("Avbryt")})]})]})]}),e.jsx(p.QrCodeDialog,{isOpen:L,onDismiss:()=>O(!1),imageUrl:P})]})})};exports.Sales=g,exports.default=g;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("@fluentui/react-components"),o=require("react-router-dom");require("../components/Markdown.js");var s=require("../components/Textarea.js"),n=require("../components/Button.js");require("../components/CompoundButton.js");var i=require("../components/Text.js");require("../components/Spinner.js");var a=require("../components/Input.js");require("../components/TextHeader.js"),require("../components/TypingIndicator.js");var c=require("../components/Dialog.js");require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons"),require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var l=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Search.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Purchase.js"),require("../components/Content.js");var u=require("../components/Page.js");require("./QrScan.js");var d=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js"),require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js");var p=require("../components/QrCodeDialog.js");require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("../components/audit/AuditCircularProgress.js"),require("../components/audit/AuditHorizontalProgress.js"),require("../components/audit/AuditRoleIndicator.js"),require("../components/audit/AuditUnitSwitcher.js"),require("../components/audit/AuditAnswerCell.js"),require("../components/audit/AuditSearchBar.js"),require("../components/audit/AuditFilterChips.js"),require("../components/audit/AuditFilterBar.js"),require("../components/audit/AuditGroupsProgress.js"),require("../components/audit/AuditSummaryDashboard.js"),require("../components/audit/AuditRequirementDialog.js"),require("../components/audit/AuditUnitExportDialog.js"),require("../components/audit/AuditUnitImportDialog.js"),require("../components/audit/AuditBulkExportDialog.js"),require("../components/audit/AuditBulkUploadDialog.js"),require("../components/audit/AuditSortPresets.js");const m=t.makeStyles({root:{display:"flex",flexDirection:"column",height:"100%",touchAction:"pan-y"},header:{display:"flex",justifyContent:"space-between",alignItems:"center",color:t.tokens.colorNeutralForegroundOnBrand,...t.shorthands.padding("10px","20px")},logo:{maxWidth:"100px",maxHeight:"50px",height:"auto",cursor:"pointer"},inputContainer:{display:"flex",justifyContent:"flex-end",alignItems:"center",maxWidth:"300px",width:"200px",paddingLeft:"10px"},dashboard:{display:"flex",justifyContent:"space-around",width:"100%",marginTop:"20px"},statBox:{...t.shorthands.padding("10px"),...t.shorthands.borderRadius("12px"),minWidth:"50px",textAlign:"center",color:"white"},buttonContainer:{display:"flex",flexDirection:"column",height:"100%",justifyContent:"center",gap:"30px",alignItems:"center",...t.shorthands.padding("20px")},actionButton:{width:"14rem",minWidth:"15rem",height:"3rem"},textAreaContainer:{display:"flex",flexDirection:"column",gap:"10px"},opened:{backgroundColor:"#1a5614"},not_home:{backgroundColor:"#f44336"},sales:{backgroundColor:"#2196F3"},call_back:{backgroundColor:"#FF9800"},backButton:{position:"absolute",top:"10px",left:"10px",zIndex:1e3}}),j={opened:"#1a5614",not_home:"#f44336",sales:"#2196F3",call_back:"#FF9800"},g=()=>{const g=m(),{t:h}=d.default(),q=o.useNavigate(),[x,C]=r.useState(""),[f,v]=r.useState(),[k,b]=r.useState({opened:0,not_home:0,sales:0,call_back:0}),[w,A]=r.useState([]),[_,y]=r.useState(!1),[S,D]=r.useState(""),[I,P]=r.useState(""),[B,F]=r.useState(""),[M,N]=r.useState(!1),[$,T]=r.useState(!1),[L,O]=r.useState(!1),U={backgroundColor:l.getConfigValue("APP_HEADER_COLOR")||t.tokens.colorBrandBackground},H=r.useCallback((()=>new Promise((e=>{navigator.geolocation?navigator.geolocation.getCurrentPosition((r=>{const t=`#position (${r.coords.latitude},${r.coords.longitude})`;e(t)})):e(void 0)}))),[v]);r.useEffect((()=>{window.Codicent.getDataMessages({codicent:l.getConfigValue("APP_NAME"),tags:["sales_code"]}).then((e=>{e=e.filter((e=>"1"!==e.data.inactive)),A(e)})).catch(console.error),H()}),[]);const R=async()=>{if(!x)return;const e=["not_home","sales","call_back","opened"],r=new Date;r.setHours(0,0,0,0);const t={...k};for(const o of e){const e=await window.Codicent.getMessages({search:`#${o} #sales_code_${x}`,afterTimestamp:r,length:1e4});t[o]=e.filter((e=>e.content.includes(`#${o} `)&&e.content.includes(`#sales_code_${x}`))).length}b(t)},z=async(e,r="")=>{const t=await H();console.log("Got position",t);const o=`@${l.getConfigValue("APP_NAME")} #sales_code_${x} #${e} ${t||""} ${r.trim().length>0?"#comment ":""}${r}`.trim();await window.Codicent.postMessage({message:o}),R()};return e.jsx(u.Page,{hideHeader:!0,children:e.jsxs("div",{className:g.root,children:[e.jsx("div",{className:g.backButton,children:e.jsx(n.Button,{appearance:"subtle",icon:"ArrowLeft24Regular",onClick:()=>q(-1),children:h("Tillbaka")})}),e.jsxs("div",{className:g.header,style:U,children:[e.jsx(t.Image,{src:I||l.getConfigValue("APP_ICON_URL")||"https://via.placeholder.com/100",className:g.logo,onClick:()=>{I?O(!0):B&&T(!0)}}),e.jsx("div",{className:g.inputContainer,children:e.jsx(a.Input,{value:x,onChange:e=>C(e.target.value),onBlur:()=>{const e=w.find((e=>e.data.code===x));if(e)P(`https://codicent.com/app/GetImage?fileId=${e.fileId}&width=100`),F(e.data.link),N(!0),R();else{const e=w.find((e=>e.data.code2===x.toUpperCase()));e?(P(`https://codicent.com/app/GetImage?fileId=${e.fileIds&&e.fileIds.length>1?e.fileIds[1]:e.fileId}&width=100`),F(e.data.link2),N(!0),R()):(N(!1),alert(h("Fel försäljningskod!")))}},placeholder:h("Fyll i försäljningskod"),maxLength:16,size:"large"})})]}),M&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:g.dashboard,children:Object.keys(k).map((r=>{return e.jsx("div",{className:(o=r,t.mergeClasses(g.statBox,g[o])),children:e.jsx(i.Text,{weight:"bold",size:400,children:k[r]})},r);var o}))}),e.jsx("div",{className:g.buttonContainer,children:Object.entries(j).map((([r,t])=>e.jsx(n.Button,{size:"large",className:g.actionButton,style:{backgroundColor:t,color:"white"},onClick:()=>{z(r),"opened"===r&&y(!0),"sales"===r&&T(!0)},children:r.charAt(0).toUpperCase()+r.slice(1).replace("_"," ")},r)))}),e.jsxs(c.Dialog,{open:_,children:[e.jsx(c.DialogTitle,{children:h("Skriv in avvikelse")}),e.jsx(c.DialogContent,{children:e.jsx("div",{className:g.textAreaContainer,children:e.jsx(s.Textarea,{value:S,onChange:e=>D(e.target.value),placeholder:h("Skriv din text här..."),rows:4,size:"large"})})}),e.jsx(c.DialogActions,{children:e.jsx(n.Button,{appearance:"primary",onClick:()=>{z("anomaly",`\n${S}`),y(!1),D("")},children:h("Spara")})})]}),e.jsxs(c.Dialog,{open:$,children:[e.jsx(c.DialogTitle,{children:h("Godkännande")}),e.jsx(c.DialogContent,{children:h("Är kunden över 23 år?")}),e.jsxs(c.DialogActions,{children:[e.jsx(n.Button,{appearance:"primary",onClick:()=>window.open(B,"_blank"),children:h("OK")}),e.jsx(n.Button,{appearance:"secondary",onClick:()=>T(!1),children:h("Avbryt")})]})]})]}),e.jsx(p.QrCodeDialog,{isOpen:L,onDismiss:()=>O(!1),imageUrl:I})]})})};exports.Sales=g,exports.default=g;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("@fluentui/react-components"),o=require("../components/Markdown.js");require("../components/Textarea.js");var s=require("../components/Button.js");require("../components/CompoundButton.js");var n=require("../components/Title.js");require("../components/Spinner.js"),require("../components/TextHeader.js");var i=require("../components/TypingIndicator.js");require("../components/Dialog.js");var a=require("../components/ChatInput.js");require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons");var u=require("../hooks/useStateWithLocalStorage.js"),c=require("../services/codicent.js");require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var l=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("react-router-dom"),require("./Purchase.js"),require("../components/Content.js");var p=require("../components/Page.js");require("./QrScan.js");var d=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js");var m=require("../hooks/useChat.js"),g=require("../hooks/useTemplateVariables.js");require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js");const j=t.makeStyles({chatContainer:{width:"100%",flex:1,maxWidth:"800px",height:"100%",backgroundColor:"#ffffff",display:"flex",flexDirection:"column",margin:"0 auto",overflow:"hidden","@media (max-width: 768px)":{maxWidth:"100%",borderRadius:"0"},"@media (max-width: 480px)":{},backgroundPosition:"calc(50%) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",touchAction:"pan-y",overflowY:"auto",marginBottom:"16px"},chatMessages:{display:"flex",flexDirection:"column",flex:1,padding:"16px",overflowY:"auto",touchAction:"pan-y"},inputArea:{display:"flex",flexDirection:"column",justifyContent:"start",alignItems:"center",height:"100%",padding:"0 16px"},promptButtons:{display:"flex",flexDirection:"row",flexWrap:"wrap",justifyContent:"start",alignItems:"center",gap:"8px",marginTop:"8px",marginLeft:"6px",marginRight:"2px",marginBottom:"12px"},answerArea:{width:"100%",marginLeft:"12px",marginRight:"12px",padding:"12px",borderRadius:"16px",marginBottom:"24px"},title:{marginLeft:"12px",padding:"16px"}});exports.default=({state:q})=>{const f=j(),{t:h}=d.default(),{messages:x,isBotTyping:C,handleSend:v,newChat:A}=m.useChat(q.stateMachine),S=r.useRef(null),{service:T}=q;l.getConfigValue("CHAT_BOT_BACKGROUND_COLOR")||t.tokens.colorBrandBackground2;const[w,_]=u.default(q.context.selectedApp+"_searchprompts",["Leta information","Vad kan jag göra?","Sök supportställe"]),[b,k]=r.useState(),[y,N]=r.useState(null),[O,I]=r.useState(!1);g.useTemplateVariables(T.uploadFile);r.useEffect((()=>{C&&I(!0)}),[C]),r.useEffect((()=>{A();const e=l.getConfigValue("APP_CONFIG"),r=l.getConfigValue("APP_BUTTONS");r?e.apps[r].questions&&_(e.apps[r].questions.map((e=>h(e)))):console.error("APP_BUTTONS is not defined in the configuration."),void 0!==l.getConfigValue("ANONYMOUS_CODICENT")&&void 0!==l.getConfigValue("ANONYMOUS_TOKEN")?(T.codicent=l.getConfigValue("ANONYMOUS_CODICENT"),T.setToken(l.getConfigValue("ANONYMOUS_TOKEN"))):console.error("Anonymous Codicent or Token is not defined in the configuration.")}),[A,T,_,h]),r.useEffect((()=>{setTimeout((()=>{S.current?.scrollIntoView({behavior:"smooth"})}),10)}),[x]);const P=e=>{k(e),v(e)};return r.useEffect((()=>{const e=x.filter((e=>"bot"===e.sender));let r=e.length>0?e[e.length-1]:null;N({...r,createdAt:new Date}),r&&I(!1)}),[x]),e.jsx(p.Page,{hideHeader:!0,hideFooter:!0,children:e.jsxs("div",{id:"search-container",className:f.chatContainer,style:{backgroundImage:`url(${l.getConfigValue("CHAT_BACKGROUND_IMAGE_URL")})`},children:[e.jsx("div",{className:f.title,children:e.jsx(n.Title,{children:h(l.getConfigValue("APP_SEARCH_TITLE")||"Frågor")})}),e.jsxs("div",{className:f.inputArea,children:[e.jsx(a.default,{noMemory:!0,defaultText:b,codicent:q.context.selectedApp,disableSend:C,onSend:P,rows:3,getImageUrl:c.CodicentService.getImageUrl,getFileInfo:e=>T.getFileInfo(e),selectAll:!0}),e.jsx("div",{className:f.promptButtons,children:w.length>0&&w.map(((r,t)=>e.jsx(s.Button,{onClick:()=>P(r),size:"large",appearance:"primary",shape:"circular",children:r},`search-prompt-${t}`)))}),O&&e.jsx(i.default,{}),y&&!C&&e.jsxs("div",{className:f.answerArea,children:[e.jsx("div",{ref:S}),e.jsx(o.default,{content:y.content})]})]})]})})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("@fluentui/react-components"),o=require("../components/Markdown.js");require("../components/Textarea.js");var i=require("../components/Button.js");require("../components/CompoundButton.js");var s=require("../components/Title.js");require("../components/Spinner.js"),require("../components/TextHeader.js");var n=require("../components/TypingIndicator.js");require("../components/Dialog.js");var a=require("../components/ChatInput.js");require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js"),require("@fluentui/react-icons");var u=require("../hooks/useStateWithLocalStorage.js"),c=require("../services/codicent.js");require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var l=require("../config/index.js");require("../utils/cacheManager.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.js"),require("./Compose.js"),require("./Snap.js"),require("./Menu.js"),require("./Log.js"),require("./Login.js"),require("./Home.js"),require("./ListPage.js"),require("./CrmPage.js"),require("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js"),require("react-router-dom"),require("./Purchase.js"),require("../components/Content.js");var p=require("../components/Page.js");require("./QrScan.js");var d=require("../hooks/useLocalization.js");require("../components/FileThumbnail.js"),require("react-dom/client"),require("../node_modules/@auth0/auth0-react/dist/auth0-react.esm.js");var m=require("../hooks/useChat.js"),j=require("../hooks/useTemplateVariables.js");require("../hooks/useAppStyles.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js"),require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/DataMessagePicker.js"),require("../components/HtmlView.js"),require("../components/Footer.js"),require("../components/QrCodeDialog.js"),require("../components/QrScanner.js"),require("../components/OfflineMessage.js"),require("../components/LanguageSelector.js"),require("../components/ListView.js"),require("../components/RecordModal.js"),require("../components/BulkUploadDialog.js"),require("../components/CookieBanner.js"),require("../components/audit/AuditCircularProgress.js"),require("../components/audit/AuditHorizontalProgress.js"),require("../components/audit/AuditRoleIndicator.js"),require("../components/audit/AuditUnitSwitcher.js"),require("../components/audit/AuditAnswerCell.js"),require("../components/audit/AuditSearchBar.js"),require("../components/audit/AuditFilterChips.js"),require("../components/audit/AuditFilterBar.js"),require("../components/audit/AuditGroupsProgress.js"),require("../components/audit/AuditSummaryDashboard.js"),require("../components/audit/AuditRequirementDialog.js"),require("../components/audit/AuditUnitExportDialog.js"),require("../components/audit/AuditUnitImportDialog.js"),require("../components/audit/AuditBulkExportDialog.js"),require("../components/audit/AuditBulkUploadDialog.js"),require("../components/audit/AuditSortPresets.js");const g=t.makeStyles({chatContainer:{width:"100%",flex:1,maxWidth:"800px",height:"100%",backgroundColor:"#ffffff",display:"flex",flexDirection:"column",margin:"0 auto",overflow:"hidden","@media (max-width: 768px)":{maxWidth:"100%",borderRadius:"0"},"@media (max-width: 480px)":{},backgroundPosition:"calc(50%) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",touchAction:"pan-y",overflowY:"auto",marginBottom:"16px"},chatMessages:{display:"flex",flexDirection:"column",flex:1,padding:"16px",overflowY:"auto",touchAction:"pan-y"},inputArea:{display:"flex",flexDirection:"column",justifyContent:"start",alignItems:"center",height:"100%",padding:"0 16px"},promptButtons:{display:"flex",flexDirection:"row",flexWrap:"wrap",justifyContent:"start",alignItems:"center",gap:"8px",marginTop:"8px",marginLeft:"6px",marginRight:"2px",marginBottom:"12px"},answerArea:{width:"100%",marginLeft:"12px",marginRight:"12px",padding:"12px",borderRadius:"16px",marginBottom:"24px"},title:{marginLeft:"12px",padding:"16px"}});exports.default=({state:q})=>{const f=g(),{t:h}=d.default(),{messages:x,isBotTyping:C,handleSend:A,newChat:v}=m.useChat(q.stateMachine),S=r.useRef(null),{service:w}=q;l.getConfigValue("CHAT_BOT_BACKGROUND_COLOR")||t.tokens.colorBrandBackground2;const[T,_]=u.default(q.context.selectedApp+"_searchprompts",["Leta information","Vad kan jag göra?","Sök supportställe"]),[k,b]=r.useState(),[P,y]=r.useState(null),[B,I]=r.useState(!1);j.useTemplateVariables(w.uploadFile);r.useEffect((()=>{C&&I(!0)}),[C]),r.useEffect((()=>{v();const e=l.getConfigValue("APP_CONFIG"),r=l.getConfigValue("APP_BUTTONS");r?e.apps[r].questions&&_(e.apps[r].questions.map((e=>h(e)))):console.error("APP_BUTTONS is not defined in the configuration."),void 0!==l.getConfigValue("ANONYMOUS_CODICENT")&&void 0!==l.getConfigValue("ANONYMOUS_TOKEN")?(w.codicent=l.getConfigValue("ANONYMOUS_CODICENT"),w.setToken(l.getConfigValue("ANONYMOUS_TOKEN"))):console.error("Anonymous Codicent or Token is not defined in the configuration.")}),[v,w,_,h]),r.useEffect((()=>{setTimeout((()=>{S.current?.scrollIntoView({behavior:"smooth"})}),10)}),[x]);const N=e=>{b(e),A(e)};return r.useEffect((()=>{const e=x.filter((e=>"bot"===e.sender));let r=e.length>0?e[e.length-1]:null;y({...r,createdAt:new Date}),r&&I(!1)}),[x]),e.jsx(p.Page,{hideHeader:!0,hideFooter:!0,children:e.jsxs("div",{id:"search-container",className:f.chatContainer,style:{backgroundImage:`url(${l.getConfigValue("CHAT_BACKGROUND_IMAGE_URL")})`},children:[e.jsx("div",{className:f.title,children:e.jsx(s.Title,{children:h(l.getConfigValue("APP_SEARCH_TITLE")||"Frågor")})}),e.jsxs("div",{className:f.inputArea,children:[e.jsx(a.default,{noMemory:!0,defaultText:k,codicent:q.context.selectedApp,disableSend:C,onSend:N,rows:3,getImageUrl:c.CodicentService.getImageUrl,getFileInfo:e=>w.getFileInfo(e),selectAll:!0}),e.jsx("div",{className:f.promptButtons,children:T.length>0&&T.map(((r,t)=>e.jsx(i.Button,{onClick:()=>N(r),size:"large",appearance:"primary",shape:"circular",children:r},`search-prompt-${t}`)))}),B&&e.jsx(n.default,{}),P&&!C&&e.jsxs("div",{className:f.answerArea,children:[e.jsx("div",{ref:S}),e.jsx(o.default,{content:P.content})]})]})]})})};