codicent-app-sdk 0.5.5 → 0.5.7

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 (152) hide show
  1. package/dist/cjs/_virtual/_commonjsHelpers.js +1 -1
  2. package/dist/cjs/_virtual/index19.js +1 -1
  3. package/dist/cjs/_virtual/index20.js +1 -1
  4. package/dist/cjs/_virtual/index4.js +1 -1
  5. package/dist/cjs/_virtual/index5.js +1 -1
  6. package/dist/cjs/components/AiInput.js +1 -1
  7. package/dist/cjs/components/AudioIcon.js +1 -1
  8. package/dist/cjs/components/ChatInput.js +1 -1
  9. package/dist/cjs/components/ChatMessage.js +1 -1
  10. package/dist/cjs/components/CombinedPlaceholderDialog.js +1 -1
  11. package/dist/cjs/components/Footer.js +1 -1
  12. package/dist/cjs/components/GenericJsonRenderer.js +1 -1
  13. package/dist/cjs/components/Header.js +1 -1
  14. package/dist/cjs/components/HtmlView.js +1 -1
  15. package/dist/cjs/components/MessageInput.js +1 -1
  16. package/dist/cjs/components/MessageItem.js +1 -1
  17. package/dist/cjs/components/Profile.js +1 -1
  18. package/dist/cjs/components/Prompt.js +1 -1
  19. package/dist/cjs/components/SnapFooter.js +1 -1
  20. package/dist/cjs/components/TextHeader.js +1 -1
  21. package/dist/cjs/components/TypingIndicator.js +1 -1
  22. package/dist/cjs/components/UploadFile.js +1 -1
  23. package/dist/cjs/components/UrlProcessor.js +1 -1
  24. package/dist/cjs/components/VoiceIcon.js +1 -1
  25. package/dist/cjs/hooks/useAuthState.js +1 -1
  26. package/dist/cjs/hooks/useChat.js +1 -1
  27. package/dist/cjs/hooks/useCodicentState.js +1 -1
  28. package/dist/cjs/hooks/useObserveDataSchemas.js +1 -1
  29. package/dist/cjs/hooks/useTools.js +1 -1
  30. package/dist/cjs/hooks/useUserRoles.d.ts +1 -1
  31. package/dist/cjs/hooks/useUserRoles.d.ts.map +1 -1
  32. package/dist/cjs/hooks/useUserRoles.js +1 -1
  33. package/dist/cjs/node_modules/@fast-csv/format/build/src/formatter/RowFormatter.js +1 -1
  34. package/dist/cjs/node_modules/@fast-csv/format/build/src/index.js +1 -1
  35. package/dist/cjs/node_modules/@fast-csv/format/build/src/types.js +1 -1
  36. package/dist/cjs/node_modules/@fast-csv/parse/build/src/index.js +1 -1
  37. package/dist/cjs/node_modules/@fast-csv/parse/build/src/transforms/RowTransformerValidator.js +1 -1
  38. package/dist/cjs/node_modules/@fast-csv/parse/build/src/types.js +1 -1
  39. package/dist/cjs/node_modules/concat-map/index.js +1 -1
  40. package/dist/cjs/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +1 -1
  41. package/dist/cjs/node_modules/fs.realpath/index.js +1 -1
  42. package/dist/cjs/node_modules/fs.realpath/old.js +1 -1
  43. package/dist/cjs/node_modules/glob/common.js +1 -1
  44. package/dist/cjs/node_modules/glob/glob.js +1 -1
  45. package/dist/cjs/node_modules/glob/sync.js +1 -1
  46. package/dist/cjs/node_modules/inflight/inflight.js +1 -1
  47. package/dist/cjs/node_modules/minimatch/minimatch.js +1 -1
  48. package/dist/cjs/node_modules/minimatch/node_modules/brace-expansion/index.js +1 -1
  49. package/dist/cjs/node_modules/react-is/index.js +1 -1
  50. package/dist/cjs/node_modules/safe-buffer/index.js +1 -1
  51. package/dist/cjs/node_modules/scheduler/index.js +1 -1
  52. package/dist/cjs/node_modules/style-to-js/cjs/index.js +1 -1
  53. package/dist/cjs/node_modules/style-to-object/cjs/index.js +1 -1
  54. package/dist/cjs/node_modules/unzipper/node_modules/safe-buffer/index.js +1 -1
  55. package/dist/cjs/node_modules/zip-stream/node_modules/archiver-utils/index.js +1 -1
  56. package/dist/cjs/pages/AppFrame.js +1 -1
  57. package/dist/cjs/pages/Chat.js +1 -1
  58. package/dist/cjs/pages/Compose.js +1 -1
  59. package/dist/cjs/pages/CrmPage.js +1 -1
  60. package/dist/cjs/pages/CrmPagePersistent.js +1 -1
  61. package/dist/cjs/pages/FormAccept.js +1 -1
  62. package/dist/cjs/pages/FormInvite.js +1 -1
  63. package/dist/cjs/pages/Home.js +1 -1
  64. package/dist/cjs/pages/HtmlViewer.js +1 -1
  65. package/dist/cjs/pages/ImageView.js +1 -1
  66. package/dist/cjs/pages/ListPage.js +1 -1
  67. package/dist/cjs/pages/Log.js +1 -1
  68. package/dist/cjs/pages/Login.js +1 -1
  69. package/dist/cjs/pages/Menu.js +1 -1
  70. package/dist/cjs/pages/Purchase.js +1 -1
  71. package/dist/cjs/pages/Sales.js +1 -1
  72. package/dist/cjs/pages/Search.js +1 -1
  73. package/dist/cjs/pages/Snap.js +1 -1
  74. package/dist/cjs/services/codicent.js +1 -1
  75. package/dist/cjs/utils/excelExport.js +1 -1
  76. package/dist/esm/_virtual/_commonjsHelpers.js +1 -1
  77. package/dist/esm/_virtual/index14.js +1 -1
  78. package/dist/esm/_virtual/index17.js +1 -1
  79. package/dist/esm/_virtual/index19.js +1 -1
  80. package/dist/esm/_virtual/index20.js +1 -1
  81. package/dist/esm/_virtual/index4.js +1 -1
  82. package/dist/esm/_virtual/index5.js +1 -1
  83. package/dist/esm/components/AiInput.js +1 -1
  84. package/dist/esm/components/AudioIcon.js +1 -1
  85. package/dist/esm/components/ChatInput.js +1 -1
  86. package/dist/esm/components/ChatMessage.js +1 -1
  87. package/dist/esm/components/CombinedPlaceholderDialog.js +1 -1
  88. package/dist/esm/components/Footer.js +1 -1
  89. package/dist/esm/components/GenericJsonRenderer.js +1 -1
  90. package/dist/esm/components/Header.js +1 -1
  91. package/dist/esm/components/HtmlView.js +1 -1
  92. package/dist/esm/components/MessageInput.js +1 -1
  93. package/dist/esm/components/MessageItem.js +1 -1
  94. package/dist/esm/components/Profile.js +1 -1
  95. package/dist/esm/components/Prompt.js +1 -1
  96. package/dist/esm/components/SnapFooter.js +1 -1
  97. package/dist/esm/components/TextHeader.js +1 -1
  98. package/dist/esm/components/TypingIndicator.js +1 -1
  99. package/dist/esm/components/UploadFile.js +1 -1
  100. package/dist/esm/components/UrlProcessor.js +1 -1
  101. package/dist/esm/components/VoiceIcon.js +1 -1
  102. package/dist/esm/hooks/useAuthState.js +1 -1
  103. package/dist/esm/hooks/useChat.js +1 -1
  104. package/dist/esm/hooks/useCodicentState.js +1 -1
  105. package/dist/esm/hooks/useObserveDataSchemas.js +1 -1
  106. package/dist/esm/hooks/useTools.js +1 -1
  107. package/dist/esm/hooks/useUserRoles.d.ts +1 -1
  108. package/dist/esm/hooks/useUserRoles.d.ts.map +1 -1
  109. package/dist/esm/hooks/useUserRoles.js +1 -1
  110. package/dist/esm/node_modules/@fast-csv/format/build/src/CsvFormatterStream.js +1 -1
  111. package/dist/esm/node_modules/@fast-csv/format/build/src/formatter/index.js +1 -1
  112. package/dist/esm/node_modules/@fast-csv/parse/build/src/CsvParserStream.js +1 -1
  113. package/dist/esm/node_modules/@fast-csv/parse/build/src/parser/index.js +1 -1
  114. package/dist/esm/node_modules/@fast-csv/parse/build/src/transforms/index.js +1 -1
  115. package/dist/esm/node_modules/concat-map/index.js +1 -1
  116. package/dist/esm/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +1 -1
  117. package/dist/esm/node_modules/fs.realpath/index.js +1 -1
  118. package/dist/esm/node_modules/fs.realpath/old.js +1 -1
  119. package/dist/esm/node_modules/glob/common.js +1 -1
  120. package/dist/esm/node_modules/glob/glob.js +1 -1
  121. package/dist/esm/node_modules/glob/sync.js +1 -1
  122. package/dist/esm/node_modules/inflight/inflight.js +1 -1
  123. package/dist/esm/node_modules/minimatch/minimatch.js +1 -1
  124. package/dist/esm/node_modules/minimatch/node_modules/brace-expansion/index.js +1 -1
  125. package/dist/esm/node_modules/react-is/index.js +1 -1
  126. package/dist/esm/node_modules/scheduler/index.js +1 -1
  127. package/dist/esm/node_modules/style-to-js/cjs/index.js +1 -1
  128. package/dist/esm/node_modules/style-to-object/cjs/index.js +1 -1
  129. package/dist/esm/node_modules/unzipper/node_modules/safe-buffer/index.js +1 -1
  130. package/dist/esm/node_modules/zip-stream/node_modules/archiver-utils/index.js +1 -1
  131. package/dist/esm/pages/AppFrame.js +1 -1
  132. package/dist/esm/pages/Chat.js +1 -1
  133. package/dist/esm/pages/Compose.js +1 -1
  134. package/dist/esm/pages/CrmPage.js +1 -1
  135. package/dist/esm/pages/CrmPagePersistent.js +1 -1
  136. package/dist/esm/pages/FormAccept.js +1 -1
  137. package/dist/esm/pages/FormInvite.js +1 -1
  138. package/dist/esm/pages/Home.js +1 -1
  139. package/dist/esm/pages/HtmlViewer.js +1 -1
  140. package/dist/esm/pages/ImageView.js +1 -1
  141. package/dist/esm/pages/ListPage.js +1 -1
  142. package/dist/esm/pages/Log.js +1 -1
  143. package/dist/esm/pages/Login.js +1 -1
  144. package/dist/esm/pages/Menu.js +1 -1
  145. package/dist/esm/pages/Purchase.js +1 -1
  146. package/dist/esm/pages/Sales.js +1 -1
  147. package/dist/esm/pages/Search.js +1 -1
  148. package/dist/esm/pages/Snap.js +1 -1
  149. package/dist/esm/services/codicent.js +1 -1
  150. package/dist/esm/utils/excelExport.js +1 -1
  151. package/dist/index.d.ts +1 -1
  152. package/package.json +2 -2
@@ -1 +1 @@
1
- "use strict";var t=require("../../../concat-map/index.js"),n=require("../../../balanced-match/index.js"),r=t.concatMap,e=n.balancedMatch,i=function(t){if(!t)return[];"{}"===t.substr(0,2)&&(t="\\{\\}"+t.substr(2));return m(function(t){return t.split("\\\\").join(a).split("\\{").join(o).split("\\}").join(s).split("\\,").join(p).split("\\.").join(u)}(t),!0).map(h)},a="\0SLASH"+Math.random()+"\0",o="\0OPEN"+Math.random()+"\0",s="\0CLOSE"+Math.random()+"\0",p="\0COMMA"+Math.random()+"\0",u="\0PERIOD"+Math.random()+"\0";function l(t){return parseInt(t,10)==t?parseInt(t,10):t.charCodeAt(0)}function h(t){return t.split(a).join("\\").split(o).join("{").split(s).join("}").split(p).join(",").split(u).join(".")}function f(t){if(!t)return[""];var n=[],r=e("{","}",t);if(!r)return t.split(",");var i=r.pre,a=r.body,o=r.post,s=i.split(",");s[s.length-1]+="{"+a+"}";var p=f(o);return o.length&&(s[s.length-1]+=p.shift(),s.push.apply(s,p)),n.push.apply(n,s),n}function c(t){return"{"+t+"}"}function d(t){return/^-?0\d/.test(t)}function v(t,n){return t<=n}function g(t,n){return t>=n}function m(t,n){var i=[],a=e("{","}",t);if(!a||/\$$/.test(a.pre))return[t];var o,p=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(a.body),u=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(a.body),h=p||u,b=a.body.indexOf(",")>=0;if(!h&&!b)return a.post.match(/,.*\}/)?m(t=a.pre+"{"+a.body+s+a.post):[t];if(h)o=a.body.split(/\.\./);else if(1===(o=f(a.body)).length&&1===(o=m(o[0],!1).map(c)).length)return(y=a.post.length?m(a.post,!1):[""]).map((function(t){return a.pre+o[0]+t}));var j,M=a.pre,y=a.post.length?m(a.post,!1):[""];if(h){var x=l(o[0]),A=l(o[1]),C=Math.max(o[0].length,o[1].length),O=3==o.length?Math.abs(l(o[2])):1,S=v;A<x&&(O*=-1,S=g);var E=o.some(d);j=[];for(var $=x;S($,A);$+=O){var I;if(u)"\\"===(I=String.fromCharCode($))&&(I="");else if(I=String($),E){var q=C-I.length;if(q>0){var z=new Array(q+1).join("0");I=$<0?"-"+z+I.slice(1):z+I}}j.push(I)}}else j=r(o,(function(t){return m(t,!1)}));for(var L=0;L<j.length;L++)for(var P=0;P<y.length;P++){var Z=M+j[L]+y[P];(!n||h||Z)&&i.push(Z)}return i}exports.braceExpansion=i;
1
+ "use strict";var t,r,n=require("../../../concat-map/index.js"),e=require("../../../balanced-match/index.js");exports.__require=function(){if(r)return t;r=1;var i=n.__require(),a=e.balancedMatch;t=function(t){if(!t)return[];"{}"===t.substr(0,2)&&(t="\\{\\}"+t.substr(2));return j(function(t){return t.split("\\\\").join(o).split("\\{").join(s).split("\\}").join(u).split("\\,").join(p).split("\\.").join(l)}(t),!0).map(h)};var o="\0SLASH"+Math.random()+"\0",s="\0OPEN"+Math.random()+"\0",u="\0CLOSE"+Math.random()+"\0",p="\0COMMA"+Math.random()+"\0",l="\0PERIOD"+Math.random()+"\0";function f(t){return parseInt(t,10)==t?parseInt(t,10):t.charCodeAt(0)}function h(t){return t.split(o).join("\\").split(s).join("{").split(u).join("}").split(p).join(",").split(l).join(".")}function d(t){if(!t)return[""];var r=[],n=a("{","}",t);if(!n)return t.split(",");var e=n.pre,i=n.body,o=n.post,s=e.split(",");s[s.length-1]+="{"+i+"}";var u=d(o);return o.length&&(s[s.length-1]+=u.shift(),s.push.apply(s,u)),r.push.apply(r,s),r}function c(t){return"{"+t+"}"}function v(t){return/^-?0\d/.test(t)}function g(t,r){return t<=r}function m(t,r){return t>=r}function j(t,r){var n=[],e=a("{","}",t);if(!e||/\$$/.test(e.pre))return[t];var o,s=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(e.body),p=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(e.body),l=s||p,h=e.body.indexOf(",")>=0;if(!l&&!h)return e.post.match(/,.*\}/)?j(t=e.pre+"{"+e.body+u+e.post):[t];if(l)o=e.body.split(/\.\./);else if(1===(o=d(e.body)).length&&1===(o=j(o[0],!1).map(c)).length)return(M=e.post.length?j(e.post,!1):[""]).map((function(t){return e.pre+o[0]+t}));var b,y=e.pre,M=e.post.length?j(e.post,!1):[""];if(l){var A=f(o[0]),x=f(o[1]),C=Math.max(o[0].length,o[1].length),O=3==o.length?Math.abs(f(o[2])):1,S=g;x<A&&(O*=-1,S=m);var q=o.some(v);b=[];for(var $=A;S($,x);$+=O){var _;if(p)"\\"===(_=String.fromCharCode($))&&(_="");else if(_=String($),q){var E=C-_.length;if(E>0){var I=new Array(E+1).join("0");_=$<0?"-"+I+_.slice(1):I+_}}b.push(_)}}else b=i(o,(function(t){return j(t,!1)}));for(var z=0;z<b.length;z++)for(var L=0;L<M.length;L++){var P=y+b[z]+M[L];(!r||l||P)&&n.push(P)}return n}return t};
@@ -1 +1 @@
1
- "use strict";var e=require("../../_virtual/index18.js"),r=require("./cjs/react-is.production.min.js"),s=require("./cjs/react-is.development.js");"production"===process.env.NODE_ENV?e.__module.exports=r.__require():e.__module.exports=s.__require();var o=e.__module.exports;exports.reactIsExports=o;
1
+ "use strict";var e=require("../../_virtual/index4.js"),r=require("./cjs/react-is.production.min.js"),s=require("./cjs/react-is.development.js");"production"===process.env.NODE_ENV?e.__module.exports=r.__require():e.__module.exports=s.__require();var o=e.__module.exports;exports.reactIsExports=o;
@@ -1 +1 @@
1
- "use strict";var r,e=require("../../_virtual/index13.js"),n=require("buffer");exports.__require=function(){return r||(r=1,function(r,e){var o=n,t=o.Buffer;function u(r,e){for(var n in r)e[n]=r[n]}function f(r,e,n){return t(r,e,n)}t.from&&t.alloc&&t.allocUnsafe&&t.allocUnsafeSlow?r.exports=o:(u(o,e),e.Buffer=f),f.prototype=Object.create(t.prototype),u(t,f),f.from=function(r,e,n){if("number"==typeof r)throw new TypeError("Argument must not be a number");return t(r,e,n)},f.alloc=function(r,e,n){if("number"!=typeof r)throw new TypeError("Argument must be a number");var o=t(r);return void 0!==e?"string"==typeof n?o.fill(e,n):o.fill(e):o.fill(0),o},f.allocUnsafe=function(r){if("number"!=typeof r)throw new TypeError("Argument must be a number");return t(r)},f.allocUnsafeSlow=function(r){if("number"!=typeof r)throw new TypeError("Argument must be a number");return o.SlowBuffer(r)}}(e.__module,e.__module.exports)),e.__module.exports};
1
+ "use strict";var r,e=require("../../_virtual/index14.js"),n=require("buffer");exports.__require=function(){return r||(r=1,function(r,e){var o=n,t=o.Buffer;function u(r,e){for(var n in r)e[n]=r[n]}function f(r,e,n){return t(r,e,n)}t.from&&t.alloc&&t.allocUnsafe&&t.allocUnsafeSlow?r.exports=o:(u(o,e),e.Buffer=f),f.prototype=Object.create(t.prototype),u(t,f),f.from=function(r,e,n){if("number"==typeof r)throw new TypeError("Argument must not be a number");return t(r,e,n)},f.alloc=function(r,e,n){if("number"!=typeof r)throw new TypeError("Argument must be a number");var o=t(r);return void 0!==e?"string"==typeof n?o.fill(e,n):o.fill(e):o.fill(0),o},f.allocUnsafe=function(r){if("number"!=typeof r)throw new TypeError("Argument must be a number");return t(r)},f.allocUnsafeSlow=function(r){if("number"!=typeof r)throw new TypeError("Argument must be a number");return o.SlowBuffer(r)}}(e.__module,e.__module.exports)),e.__module.exports};
@@ -1 +1 @@
1
- "use strict";var e=require("../../_virtual/index21.js"),r=require("./cjs/scheduler.production.min.js"),s=require("./cjs/scheduler.development.js");"production"===process.env.NODE_ENV?e.__module.exports=r.__require():e.__module.exports=s.__require();var u=e.__module.exports;exports.schedulerExports=u;
1
+ "use strict";var e=require("../../_virtual/index5.js"),r=require("./cjs/scheduler.production.min.js"),s=require("./cjs/scheduler.development.js");"production"===process.env.NODE_ENV?e.__module.exports=r.__require():e.__module.exports=s.__require();var u=e.__module.exports;exports.schedulerExports=u;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_commonjsHelpers.js");require("../../style-to-object/cjs/index.js"),require("./utilities.js");var t=require("../../../_virtual/index4.js"),r=require("../../../_virtual/utilities.js"),u=(e.commonjsGlobal&&e.commonjsGlobal.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(t.__exports),o=r.__exports;function s(e,t){var r={};return e&&"string"==typeof e?((0,u.default)(e,(function(e,u){e&&u&&(r[(0,o.camelCase)(e,t)]=u)})),r):r}s.default=s;var i=s,l=e.getDefaultExportFromCjs(i);exports.default=l;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_commonjsHelpers.js");require("../../style-to-object/cjs/index.js"),require("./utilities.js");var t=require("../../../_virtual/index3.js"),r=require("../../../_virtual/utilities.js"),u=(e.commonjsGlobal&&e.commonjsGlobal.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(t.__exports),o=r.__exports;function s(e,t){var r={};return e&&"string"==typeof e?((0,u.default)(e,(function(e,u){e&&u&&(r[(0,o.camelCase)(e,t)]=u)})),r):r}s.default=s;var i=s,l=e.getDefaultExportFromCjs(i);exports.default=l;
@@ -1 +1 @@
1
- "use strict";var e=require("../../../_virtual/_commonjsHelpers.js"),r=require("../../../_virtual/index4.js"),t=require("../../inline-style-parser/index.js"),n=e.commonjsGlobal&&e.commonjsGlobal.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r.__exports,"__esModule",{value:!0}),r.__exports.default=function(e,r){var t=null;if(!e||"string"!=typeof e)return t;var n=(0,o.default)(e),i="function"==typeof r;return n.forEach((function(e){if("declaration"===e.type){var n=e.property,o=e.value;i?r(n,o,e):o&&((t=t||{})[n]=o)}})),t};var o=n(t.inlineStyleParser);
1
+ "use strict";var e=require("../../../_virtual/_commonjsHelpers.js"),r=require("../../../_virtual/index3.js"),t=require("../../inline-style-parser/index.js"),n=e.commonjsGlobal&&e.commonjsGlobal.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r.__exports,"__esModule",{value:!0}),r.__exports.default=function(e,r){var t=null;if(!e||"string"!=typeof e)return t;var n=(0,o.default)(e),i="function"==typeof r;return n.forEach((function(e){if("declaration"===e.type){var n=e.property,o=e.value;i?r(n,o,e):o&&((t=t||{})[n]=o)}})),t};var o=n(t.inlineStyleParser);
@@ -1 +1 @@
1
- "use strict";var r,e=require("../../../../_virtual/index20.js"),n=require("buffer");exports.__require=function(){return r||(r=1,function(r,e){var o=n,u=o.Buffer;function t(r,e){for(var n in r)e[n]=r[n]}function f(r,e,n){return u(r,e,n)}u.from&&u.alloc&&u.allocUnsafe&&u.allocUnsafeSlow?r.exports=o:(t(o,e),e.Buffer=f),t(u,f),f.from=function(r,e,n){if("number"==typeof r)throw new TypeError("Argument must not be a number");return u(r,e,n)},f.alloc=function(r,e,n){if("number"!=typeof r)throw new TypeError("Argument must be a number");var o=u(r);return void 0!==e?"string"==typeof n?o.fill(e,n):o.fill(e):o.fill(0),o},f.allocUnsafe=function(r){if("number"!=typeof r)throw new TypeError("Argument must be a number");return u(r)},f.allocUnsafeSlow=function(r){if("number"!=typeof r)throw new TypeError("Argument must be a number");return o.SlowBuffer(r)}}(e.__module,e.__module.exports)),e.__module.exports};
1
+ "use strict";var r,e=require("../../../../_virtual/index21.js"),n=require("buffer");exports.__require=function(){return r||(r=1,function(r,e){var o=n,u=o.Buffer;function t(r,e){for(var n in r)e[n]=r[n]}function f(r,e,n){return u(r,e,n)}u.from&&u.alloc&&u.allocUnsafe&&u.allocUnsafeSlow?r.exports=o:(t(o,e),e.Buffer=f),t(u,f),f.from=function(r,e,n){if("number"==typeof r)throw new TypeError("Argument must not be a number");return u(r,e,n)},f.alloc=function(r,e,n){if("number"!=typeof r)throw new TypeError("Argument must be a number");var o=u(r);return void 0!==e?"string"==typeof n?o.fill(e,n):o.fill(e):o.fill(0),o},f.allocUnsafe=function(r){if("number"!=typeof r)throw new TypeError("Argument must be a number");return u(r)},f.allocUnsafeSlow=function(r){if("number"!=typeof r)throw new TypeError("Argument must be a number");return o.SlowBuffer(r)}}(e.__module,e.__module.exports)),e.__module.exports};
@@ -1 +1 @@
1
- "use strict";var e=require("../../../../_virtual/index14.js"),r=require("../../../graceful-fs/graceful-fs.js"),t=require("path"),n=require("../../../lazystream/lib/lazystream.js"),a=require("../../../normalize-path/index.js"),i=require("../../../lodash.defaults/index.js"),u=require("stream"),o=require("../../../readable-stream/readable.js"),l=require("./file.js"),f=r.gracefulFs,s=t,c=n.lazystream,d=a.normalizePath,p=i.lodash_defaults,h=u.Stream,m=o.readableExports.PassThrough,v=e.__module.exports={};v.file=l.fileExports,v.collectStream=function(e,r){var t=[],n=0;e.on("error",r),e.on("data",(function(e){t.push(e),n+=e.length})),e.on("end",(function(){var e=Buffer.alloc(n),a=0;t.forEach((function(r){r.copy(e,a),a+=r.length})),r(null,e)}))},v.dateify=function(e){return(e=e||new Date)instanceof Date||(e="string"==typeof e?new Date(e):new Date),e},v.defaults=function(e,r,t){var n=arguments;return n[0]=n[0]||{},p(...n)},v.isStream=function(e){return e instanceof h},v.lazyReadStream=function(e){return new c.Readable((function(){return f.createReadStream(e)}))},v.normalizeInputSource=function(e){return null===e?Buffer.alloc(0):"string"==typeof e?Buffer.from(e):v.isStream(e)?e.pipe(new m):e},v.sanitizePath=function(e){return d(e,!1).replace(/^\w+:/,"").replace(/^(\.\.\/|\/)+/,"")},v.trailingSlashIt=function(e){return"/"!==e.slice(-1)?e+"/":e},v.unixifyPath=function(e){return d(e,!1).replace(/^\w+:/,"")},v.walkdir=function(e,r,t){var n=[];"function"==typeof r&&(t=r,r=e),f.readdir(e,(function(a,i){var u,o,l=0;if(a)return t(a);!function a(){if(!(u=i[l++]))return t(null,n);o=s.join(e,u),f.stat(o,(function(e,t){n.push({path:o,relative:s.relative(r,o).replace(/\\/g,"/"),stats:t}),t&&t.isDirectory()?v.walkdir(o,r,(function(e,r){r.forEach((function(e){n.push(e)})),a()})):a()}))}()}))};var y=e.__module.exports;exports.archiverUtilsExports=y;
1
+ "use strict";var e=require("../../../../_virtual/index18.js"),r=require("../../../graceful-fs/graceful-fs.js"),t=require("path"),n=require("../../../lazystream/lib/lazystream.js"),a=require("../../../normalize-path/index.js"),i=require("../../../lodash.defaults/index.js"),u=require("stream"),o=require("../../../readable-stream/readable.js"),l=require("./file.js"),f=r.gracefulFs,s=t,c=n.lazystream,d=a.normalizePath,p=i.lodash_defaults,h=u.Stream,m=o.readableExports.PassThrough,v=e.__module.exports={};v.file=l.fileExports,v.collectStream=function(e,r){var t=[],n=0;e.on("error",r),e.on("data",(function(e){t.push(e),n+=e.length})),e.on("end",(function(){var e=Buffer.alloc(n),a=0;t.forEach((function(r){r.copy(e,a),a+=r.length})),r(null,e)}))},v.dateify=function(e){return(e=e||new Date)instanceof Date||(e="string"==typeof e?new Date(e):new Date),e},v.defaults=function(e,r,t){var n=arguments;return n[0]=n[0]||{},p(...n)},v.isStream=function(e){return e instanceof h},v.lazyReadStream=function(e){return new c.Readable((function(){return f.createReadStream(e)}))},v.normalizeInputSource=function(e){return null===e?Buffer.alloc(0):"string"==typeof e?Buffer.from(e):v.isStream(e)?e.pipe(new m):e},v.sanitizePath=function(e){return d(e,!1).replace(/^\w+:/,"").replace(/^(\.\.\/|\/)+/,"")},v.trailingSlashIt=function(e){return"/"!==e.slice(-1)?e+"/":e},v.unixifyPath=function(e){return d(e,!1).replace(/^\w+:/,"")},v.walkdir=function(e,r,t){var n=[];"function"==typeof r&&(t=r,r=e),f.readdir(e,(function(a,i){var u,o,l=0;if(a)return t(a);!function a(){if(!(u=i[l++]))return t(null,n);o=s.join(e,u),f.stat(o,(function(e,t){n.push({path:o,relative:s.relative(r,o).replace(/\\/g,"/"),stats:t}),t&&t.isDirectory()?v.walkdir(o,r,(function(e,r){r.forEach((function(e){n.push(e)})),a()})):a()}))}()}))};var y=e.__module.exports;exports.archiverUtilsExports=y;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("@fluentui/react-components");require("../components/Markdown.js"),require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.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("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("../node_modules/exceljs/excel.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("react-router-dom"),require("./Purchase.js"),require("../components/Content.js");var s=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 o=r.makeStyles({iframe:{width:"100%",height:"100%",border:"none"},scrollable:{overflow:"auto"},nonScrollable:{overflow:"hidden"},fixFrameHeight:{height:"calc(100% - 5px)"}});exports.default=({src:r,showFooter:i,title:n})=>{const t=o();return i?e.jsx(s.Page,{hideFooter:!i,hideHeader:!0,children:e.jsx("iframe",{title:n,src:r,className:`${t.iframe} ${i?t.fixFrameHeight:""}`})}):e.jsx("iframe",{title:n,src:r,className:t.iframe})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("@fluentui/react-components");require("../components/Markdown.js"),require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.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("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("./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("react-router-dom"),require("./Purchase.js"),require("../components/Content.js");var s=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 o=r.makeStyles({iframe:{width:"100%",height:"100%",border:"none"},scrollable:{overflow:"auto"},nonScrollable:{overflow:"hidden"},fixFrameHeight:{height:"calc(100% - 5px)"}});exports.default=({src:r,showFooter:i,title:n})=>{const t=o();return i?e.jsx(s.Page,{hideFooter:!i,hideHeader:!0,children:e.jsx("iframe",{title:n,src:r,className:`${t.iframe} ${i?t.fixFrameHeight:""}`})}):e.jsx("iframe",{title:n,src:r,className:t.iframe})};
@@ -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"),s=require("react-router-dom"),n=require("@fluentui/react-icons");require("../components/Markdown.js"),require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.js"),require("../components/Spinner.js");var o=require("../components/TextHeader.js"),a=require("../components/TypingIndicator.js"),i=require("../components/Prompt.js"),l=require("../components/ChatInput.js"),c=require("../components/CombinedPlaceholderDialog.js"),u=require("../components/ChatMessage.js");require("../components/Header.js");var d=require("../hooks/useStateWithLocalStorage.js"),p=require("../services/codicent.js");require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var m=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("../node_modules/exceljs/excel.js"),require("./AppFrame.js"),require("./Canvas.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 g=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");var h=require("../hooks/useChat.js"),q=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 f=t.makeStyles({chatContainer:{width:"100%",flex:1,maxWidth:"1600px",height:"100%",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"},chatMessages:{display:"flex",flexDirection:"column",flex:1,padding:"16px",overflowY:"auto",touchAction:"pan-y"}});exports.default=({state:t,hideFooter:x,codicent:C,title:S,welcomeMessage:v})=>{const b=f(),{t:w,tAsync:y,getLanguageInfo:P}=j.default(),_=s.useNavigate(),k=r.useRef(null),[I,F]=s.useSearchParams(),[T]=r.useState((()=>{const e=I.get("codicent");return e?(sessionStorage.setItem("chat_codicent",e),e):C?(sessionStorage.removeItem("chat_codicent"),null):sessionStorage.getItem("chat_codicent")})),M=T||C,{messages:A,isBotTyping:V,handleSend:L,newChat:R,openChat:H}=h.useChat(t.stateMachine,M||void 0),[E,B]=r.useState(null),[N,U]=r.useState(!1),[D,O]=r.useState(!1),{service:W,currentStateName:z}=t,[Q,G]=r.useState([]),[Y,$]=r.useState([]),[K,J]=r.useState(!1),[X,Z]=r.useState(),[ee,re]=d.default(t.context.selectedApp+"_prompts",[]),[te,se]=r.useState(!1),{extractTemplateVariables:ne,replaceTemplateVariables:oe,extractFilePlaceholders:ae,replaceFilePlaceholders:ie,handleSelectFiles:le}=q.useTemplateVariables(W.uploadFile),ce=r.useRef(!1),ue=r.useRef(null);r.useEffect((()=>{const e=window.history.length>1,r=Boolean(document.referrer&&document.referrer!==window.location.href);O(e||r)}),[]);r.useEffect((()=>{m.getConfigValue("SHOW_CHAT_PROMPTS")&&0===A.length&&t.service.getAppPrompts(M||void 0).then(re).catch((e=>{console.error("Failed to get prompts",e)}))}),[t.service,re,A.length,M]),r.useEffect((()=>{setTimeout((()=>{k.current?.scrollIntoView({behavior:"smooth"})}),10)}),[A]),r.useEffect((()=>{if(ce.current)return;ce.current=!0;const e=I.get("text"),r=I.get("id"),t=I.get("fid");if(T){console.log("Using temporary codicent from URL param:",T);const e=new URLSearchParams(I);e.delete("codicent"),F(e,{replace:!0})}if(e){(async()=>{const r=ae(e),t=ne(e);R(),r.length>0||t.length>0?($(r),G(t),J(!0),B(w(e))):B(w(e))})()}else r?H(r):t&&Z(t)}),[]),r.useEffect((()=>{X&&"anonymous"===z&&ue.current!==X&&(ue.current=X,W.getFormById(X).then((async e=>{R();const r=P().language,t=e.prompt.replace("{{fid}}",X).replace("{{fname}}",e.name).replace("{{language}}",r);se(!0);const s=await y(t);se(!1),B(s),O(!1)})))}),[X,R,W,B,z,y,P,se]),r.useEffect((()=>{if(E&&!K){let e=E;Y.length>0&&(e=ie(e,Y)),Q.length>0&&(e=oe(e,Q)),L(e),F({},{replace:!0}),B(null),G([]),$([])}}),[E,K,L,F,ie,oe,Y,Q]);const de=e=>{const r=I.get("append");r&&(e+="\n---\n"+r),L(e)};return e.jsxs(g.Page,{hideHeader:!0,hideFooter:!!X||x,children:[e.jsxs("div",{id:"chat-container",className:b.chatContainer,style:{backgroundImage:`url(${m.getConfigValue("CHAT_BACKGROUND_IMAGE_URL")})`},children:[D&&e.jsx("button",{onClick:()=>{D&&_(-1)},"aria-label":w("Tillbaka"),style:{position:"absolute",top:12,left:12,zIndex:100,background:"var(--colorNeutralBackground1)",border:"none",cursor:"pointer",padding:8,borderRadius:8,boxShadow:"0 2px 8px rgba(0,0,0,0.08)",display:"flex",alignItems:"center",justifyContent:"center"},children:e.jsx(n.CalendarWeekStart24Regular,{style:{transform:"rotate(180deg)"}})}),e.jsx("div",{style:{marginLeft:D?40:0},children:e.jsx(o.default,{title:S||w(m.getConfigValue("APP_CHAT_TITLE")||"Chatt"),onNewChat:X?void 0:()=>U(!0)})}),e.jsxs("div",{className:b.chatMessages,children:[v&&e.jsx(u.default,{sender:"bot",content:v}),m.getConfigValue("SHOW_CHAT_PROMPTS")&&ee.length>0&&0===A.length&&e.jsx(u.default,{sender:"bot",content:w(m.getConfigValue("CHAT_WELCOME")||w("Välkommen!")),children:ee.map(((r,t)=>e.jsxs("div",{children:["> ",e.jsx("a",{href:"./#/chat",onClick:()=>{de(r.title+"\n---\n"+r.prompt)},children:w(r.title)}),e.jsx("br",{})]},`prompt-${t}`)))}),A.map(((r,t)=>e.jsxs("div",{children:[(V&&t===A.length-1||!V&&t===A.length-2)&&e.jsx("div",{ref:k}),e.jsx(u.default,{sender:r.sender,content:r.content,isNew:r.isNew,showSuggestions:t===A.length-1,onSuggestionClicked:L},r.id)]},r.id))),te&&e.jsx(u.default,{sender:"user",content:w("Översätter...")}),V&&e.jsx(a.default,{})]}),e.jsx(l.default,{codicent:M||t.context.selectedApp,disableSend:V,onSend:de,onSelectFiles:le,getImageUrl:p.CodicentService.getImageUrl,getFileInfo:e=>W.getFileInfo(e)})]}),e.jsx(i.default,{open:N,title:w("Vill du rensa chatten?"),content:w("En ny startas, men chatten kommer först sparas."),onYes:()=>{U(!1),R()},onNo:()=>U(!1)}),e.jsx(c.CombinedPlaceholderDialog,{open:K,templateVariables:Q,filePlaceholders:Y,onTemplateVariablesChange:G,onFilePlaceholdersChange:$,onConfirm:()=>J(!1),onCancel:()=>{J(!1),B(null),G([]),$([])},uploadFile:W.uploadFile})]})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("@fluentui/react-components"),s=require("react-router-dom"),n=require("@fluentui/react-icons");require("../components/Markdown.js"),require("../components/Textarea.js"),require("../components/Button.js"),require("../components/CompoundButton.js"),require("../components/Spinner.js");var o=require("../components/TextHeader.js"),a=require("../components/TypingIndicator.js"),i=require("../components/Prompt.js"),l=require("../components/ChatInput.js"),c=require("../components/CombinedPlaceholderDialog.js"),u=require("../components/ChatMessage.js");require("../components/Header.js");var d=require("../hooks/useStateWithLocalStorage.js"),p=require("../services/codicent.js");require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var m=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("./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 g=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");var h=require("../hooks/useChat.js"),q=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 f=t.makeStyles({chatContainer:{width:"100%",flex:1,maxWidth:"1600px",height:"100%",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"},chatMessages:{display:"flex",flexDirection:"column",flex:1,padding:"16px",overflowY:"auto",touchAction:"pan-y"}});exports.default=({state:t,hideFooter:x,codicent:C,title:S,welcomeMessage:v})=>{const b=f(),{t:w,tAsync:y,getLanguageInfo:P}=j.default(),k=s.useNavigate(),_=r.useRef(null),[I,F]=s.useSearchParams(),[T]=r.useState((()=>{const e=I.get("codicent");return e?(sessionStorage.setItem("chat_codicent",e),e):C?(sessionStorage.removeItem("chat_codicent"),null):sessionStorage.getItem("chat_codicent")})),M=T||C,{messages:A,isBotTyping:V,handleSend:L,newChat:R,openChat:H}=h.useChat(t.stateMachine,M||void 0),[E,B]=r.useState(null),[N,U]=r.useState(!1),[D,O]=r.useState(!1),{service:W,currentStateName:z}=t,[Q,G]=r.useState([]),[Y,$]=r.useState([]),[K,J]=r.useState(!1),[X,Z]=r.useState(),[ee,re]=d.default(t.context.selectedApp+"_prompts",[]),[te,se]=r.useState(!1),{extractTemplateVariables:ne,replaceTemplateVariables:oe,extractFilePlaceholders:ae,replaceFilePlaceholders:ie,handleSelectFiles:le}=q.useTemplateVariables(W.uploadFile),ce=r.useRef(!1),ue=r.useRef(null);r.useEffect((()=>{const e=window.history.length>1,r=Boolean(document.referrer&&document.referrer!==window.location.href);O(e||r)}),[]);r.useEffect((()=>{m.getConfigValue("SHOW_CHAT_PROMPTS")&&0===A.length&&t.service.getAppPrompts(M||void 0).then(re).catch((e=>{console.error("Failed to get prompts",e)}))}),[t.service,re,A.length,M]),r.useEffect((()=>{setTimeout((()=>{_.current?.scrollIntoView({behavior:"smooth"})}),10)}),[A]),r.useEffect((()=>{if(ce.current)return;ce.current=!0;const e=I.get("text"),r=I.get("id"),t=I.get("fid");if(T){console.log("Using temporary codicent from URL param:",T);const e=new URLSearchParams(I);e.delete("codicent"),F(e,{replace:!0})}if(e){(async()=>{const r=ae(e),t=ne(e);R(),r.length>0||t.length>0?($(r),G(t),J(!0),B(w(e))):B(w(e))})()}else r?H(r):t&&Z(t)}),[]),r.useEffect((()=>{X&&"anonymous"===z&&ue.current!==X&&(ue.current=X,W.getFormById(X).then((async e=>{R();const r=P().language,t=e.prompt.replace("{{fid}}",X).replace("{{fname}}",e.name).replace("{{language}}",r);se(!0);const s=await y(t);se(!1),B(s),O(!1)})))}),[X,R,W,B,z,y,P,se]),r.useEffect((()=>{if(E&&!K){let e=E;Y.length>0&&(e=ie(e,Y)),Q.length>0&&(e=oe(e,Q)),L(e),F({},{replace:!0}),B(null),G([]),$([])}}),[E,K,L,F,ie,oe,Y,Q]);const de=e=>{const r=I.get("append");r&&(e+="\n---\n"+r),L(e)};return e.jsxs(g.Page,{hideHeader:!0,hideFooter:!!X||x,children:[e.jsxs("div",{id:"chat-container",className:b.chatContainer,style:{backgroundImage:`url(${m.getConfigValue("CHAT_BACKGROUND_IMAGE_URL")})`},children:[D&&e.jsx("button",{onClick:()=>{D&&k(-1)},"aria-label":w("Tillbaka"),style:{position:"absolute",top:12,left:12,zIndex:100,background:"var(--colorNeutralBackground1)",border:"none",cursor:"pointer",padding:8,borderRadius:8,boxShadow:"0 2px 8px rgba(0,0,0,0.08)",display:"flex",alignItems:"center",justifyContent:"center"},children:e.jsx(n.CalendarWeekStart24Regular,{style:{transform:"rotate(180deg)"}})}),e.jsx("div",{style:{marginLeft:D?40:0},children:e.jsx(o.default,{title:S||w(m.getConfigValue("APP_CHAT_TITLE")||"Chatt"),onNewChat:X?void 0:()=>U(!0)})}),e.jsxs("div",{className:b.chatMessages,children:[v&&e.jsx(u.default,{sender:"bot",content:v}),m.getConfigValue("SHOW_CHAT_PROMPTS")&&ee.length>0&&0===A.length&&e.jsx(u.default,{sender:"bot",content:w(m.getConfigValue("CHAT_WELCOME")||w("Välkommen!")),children:ee.map(((r,t)=>e.jsxs("div",{children:["> ",e.jsx("a",{href:"./#/chat",onClick:()=>{de(r.title+"\n---\n"+r.prompt)},children:w(r.title)}),e.jsx("br",{})]},`prompt-${t}`)))}),A.map(((r,t)=>e.jsxs("div",{children:[(V&&t===A.length-1||!V&&t===A.length-2)&&e.jsx("div",{ref:_}),e.jsx(u.default,{sender:r.sender,content:r.content,isNew:r.isNew,showSuggestions:t===A.length-1,onSuggestionClicked:L},r.id)]},r.id))),te&&e.jsx(u.default,{sender:"user",content:w("Översätter...")}),V&&e.jsx(a.default,{})]}),e.jsx(l.default,{codicent:M||t.context.selectedApp,disableSend:V,onSend:de,onSelectFiles:le,getImageUrl:p.CodicentService.getImageUrl,getFileInfo:e=>W.getFileInfo(e)})]}),e.jsx(i.default,{open:N,title:w("Vill du rensa chatten?"),content:w("En ny startas, men chatten kommer först sparas."),onYes:()=>{U(!1),R()},onNo:()=>U(!1)}),e.jsx(c.CombinedPlaceholderDialog,{open:K,templateVariables:Q,filePlaceholders:Y,onTemplateVariablesChange:G,onFilePlaceholdersChange:$,onConfirm:()=>J(!1),onCancel:()=>{J(!1),B(null),G([]),$([])},uploadFile:W.uploadFile})]})};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),o=require("react"),r=require("@fluentui/react-components"),t=require("react-router-dom"),i=require("../config/index.js");require("../components/Markdown.js"),require("../components/Textarea.js"),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("@fluentui/react-icons");var a=require("../services/codicent.js");require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/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 s=require("../utils/device.js");require("../node_modules/exceljs/excel.js"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.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 u=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");var c=require("../hooks/useToaster.js"),d=require("../components/MessageInput.js"),p=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 g=r.makeStyles({main:{flexGrow:1,...r.shorthands.padding("10px"),overflowY:"auto"},container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%"},root:{height:"100%"},item:{height:"auto",width:"auto",flexShrink:1,marginBottom:"1rem"},chat:{flexGrow:1,boxSizing:"border-box",overflow:"hidden",border:"none"},attachmentBar:{display:"none"},iconButton:{width:"24px",height:"24px"},imageCard:{alignContent:"center",borderRadius:r.tokens.borderRadiusLarge,height:"240px",textAlign:"left",position:"relative"}}),m=({state:r})=>{const m=g(),{t:j}=l.default(),[q,f]=o.useState(!1),h=o.useRef(null),C=o.useRef(null),S=o.useRef(null),[v,x]=o.useState(null),[P,_]=o.useState([]),{service:b}=r,[I,M]=t.useSearchParams(),[L,U]=o.useState(void 0),[w,E]=o.useState(),F=c.default(),A=t.useNavigate(),O=o.useCallback((e=>{for(const o of e)b.getFileInfo(o).then((e=>{_((o=>[...o,e]))}))}),[b,_]),k=o.useCallback((e=>{const o=new FormData;o.append("file",e),b.uploadFile(e.name,o).then((e=>{O([e])})).catch((()=>{F.notify(j("Error"),j("Error uploading pasted image"),"")}))}),[b,O,F,j]),T=e=>{f(e)};o.useEffect((()=>{const e=I.get("text"),o=I.get("url"),r=I.get("parentId");e&&(U(e),I.delete("text")),r&&(E(r),I.delete("parentId")),o&&(I.delete("url"),U(((e||"")+" "+o).trim())),M(I,{replace:!0})}),[I,M,U,b,O]),o.useEffect((()=>{i.getConfigValue("COMPOSE_AUTO_LOCATION")&&s.getGpsLocation().then((e=>{e&&x(`#gps(${e.coords.latitude},${e.coords.longitude})`)}))}),[]);return e.jsx(u.Page,{hideHeader:!0,children:e.jsxs("div",{className:m.container,style:{backgroundImage:`url(${i.getConfigValue("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:[e.jsx(n.default,{title:i.getConfigValue("APP_SAVE_TITLE")?j(i.getConfigValue("APP_SAVE_TITLE")):j("Spara")}),e.jsx(d.default,{disableSend:!0,defaultText:L,onSend:e=>{e=`${e}${v?" "+v:""}${P.length>0?"\n":""}${P.map((e=>`#file:${e.id}`)).join(" ")}`,b.sendMessage(e,w).then((()=>{F.notify(j("Meddelande"),j("Meddelandet är sparat."),""),w&&(E(void 0),A(-1))}))},files:P,onFilesChange:_,isUploading:q,onHandleDefaultFiles:O,onUploadFile:()=>{h.current?.triggerUpload(),console.log("attach-file")},onUploadImage:i.getConfigValue("COMPOSE_SIMPLE_ATTACH_FILE")?void 0:()=>{C.current?.triggerUpload(),console.log("attach-image")},onUploadCamera:i.getConfigValue("COMPOSE_SIMPLE_ATTACH_FILE")?void 0:()=>{S.current?.triggerUpload(),console.log("attach-camera")},getImageUrl:a.CodicentService.getImageUrl,onLocationChange:i.getConfigValue("COMPOSE_HIDE_LOCATION")?void 0:e=>{e?(async()=>{console.log("attach-location");const e=await s.getGpsLocation();e?(F.notify(j("Position"),j("Position tillagd."),""),x(`#gps(${e.coords.latitude},${e.coords.longitude})`)):console.log("Failed to get GPS location")})():(x(null),F.notify(j("Position"),j("Position borttagen."),""),console.log("clear-location"))},hasLocation:!!v,onImagePasted:k}),e.jsx(p.default,{ref:h,onFileUploaded:O,onUploading:T,multiple:!0,codicentService:b}),e.jsx(p.default,{codicentService:b,ref:C,onFileUploaded:O,onUploading:T,multiple:!0,accept:"image/*"}),e.jsx(p.default,{codicentService:b,ref:S,onFileUploaded:O,onUploading:T,multiple:!0,accept:"image/*",capture:"environment"})]})})};exports.Compose=m,exports.default=m;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),o=require("@fluentui/react-components"),t=require("react-router-dom"),i=require("../config/index.js");require("../components/Markdown.js"),require("../components/Textarea.js"),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("@fluentui/react-icons");var a=require("../services/codicent.js");require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/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 s=require("../utils/device.js");require("exceljs"),require("./AppFrame.js"),require("./Canvas.js"),require("./Chat.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 u=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");var c=require("../hooks/useToaster.js"),d=require("../components/MessageInput.js"),p=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 g=o.makeStyles({main:{flexGrow:1,...o.shorthands.padding("10px"),overflowY:"auto"},container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%"},root:{height:"100%"},item:{height:"auto",width:"auto",flexShrink:1,marginBottom:"1rem"},chat:{flexGrow:1,boxSizing:"border-box",overflow:"hidden",border:"none"},attachmentBar:{display:"none"},iconButton:{width:"24px",height:"24px"},imageCard:{alignContent:"center",borderRadius:o.tokens.borderRadiusLarge,height:"240px",textAlign:"left",position:"relative"}}),m=({state:o})=>{const m=g(),{t:j}=l.default(),[q,f]=r.useState(!1),h=r.useRef(null),C=r.useRef(null),S=r.useRef(null),[v,x]=r.useState(null),[P,_]=r.useState([]),{service:b}=o,[I,M]=t.useSearchParams(),[L,U]=r.useState(void 0),[w,E]=r.useState(),F=c.default(),A=t.useNavigate(),O=r.useCallback((e=>{for(const r of e)b.getFileInfo(r).then((e=>{_((r=>[...r,e]))}))}),[b,_]),k=r.useCallback((e=>{const r=new FormData;r.append("file",e),b.uploadFile(e.name,r).then((e=>{O([e])})).catch((()=>{F.notify(j("Error"),j("Error uploading pasted image"),"")}))}),[b,O,F,j]),T=e=>{f(e)};r.useEffect((()=>{const e=I.get("text"),r=I.get("url"),o=I.get("parentId");e&&(U(e),I.delete("text")),o&&(E(o),I.delete("parentId")),r&&(I.delete("url"),U(((e||"")+" "+r).trim())),M(I,{replace:!0})}),[I,M,U,b,O]),r.useEffect((()=>{i.getConfigValue("COMPOSE_AUTO_LOCATION")&&s.getGpsLocation().then((e=>{e&&x(`#gps(${e.coords.latitude},${e.coords.longitude})`)}))}),[]);return e.jsx(u.Page,{hideHeader:!0,children:e.jsxs("div",{className:m.container,style:{backgroundImage:`url(${i.getConfigValue("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:[e.jsx(n.default,{title:i.getConfigValue("APP_SAVE_TITLE")?j(i.getConfigValue("APP_SAVE_TITLE")):j("Spara")}),e.jsx(d.default,{disableSend:!0,defaultText:L,onSend:e=>{e=`${e}${v?" "+v:""}${P.length>0?"\n":""}${P.map((e=>`#file:${e.id}`)).join(" ")}`,b.sendMessage(e,w).then((()=>{F.notify(j("Meddelande"),j("Meddelandet är sparat."),""),w&&(E(void 0),A(-1))}))},files:P,onFilesChange:_,isUploading:q,onHandleDefaultFiles:O,onUploadFile:()=>{h.current?.triggerUpload(),console.log("attach-file")},onUploadImage:i.getConfigValue("COMPOSE_SIMPLE_ATTACH_FILE")?void 0:()=>{C.current?.triggerUpload(),console.log("attach-image")},onUploadCamera:i.getConfigValue("COMPOSE_SIMPLE_ATTACH_FILE")?void 0:()=>{S.current?.triggerUpload(),console.log("attach-camera")},getImageUrl:a.CodicentService.getImageUrl,onLocationChange:i.getConfigValue("COMPOSE_HIDE_LOCATION")?void 0:e=>{e?(async()=>{console.log("attach-location");const e=await s.getGpsLocation();e?(F.notify(j("Position"),j("Position tillagd."),""),x(`#gps(${e.coords.latitude},${e.coords.longitude})`)):console.log("Failed to get GPS location")})():(x(null),F.notify(j("Position"),j("Position borttagen."),""),console.log("clear-location"))},hasLocation:!!v,onImagePasted:k}),e.jsx(p.default,{ref:h,onFileUploaded:O,onUploading:T,multiple:!0,codicentService:b}),e.jsx(p.default,{codicentService:b,ref:C,onFileUploaded:O,onUploading:T,multiple:!0,accept:"image/*"}),e.jsx(p.default,{codicentService:b,ref:S,onFileUploaded:O,onUploading:T,multiple:!0,accept:"image/*",capture:"environment"})]})})};exports.Compose=m,exports.default=m;
@@ -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"),t=require("@fluentui/react-icons"),o=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 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 s=require("../components/VoiceIcon.js"),i=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("../node_modules/exceljs/excel.js"),require("../components/FileThumbnail.js");var l=require("../components/MessageInput.js"),c=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 d=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("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js");var p=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 j=require("../hooks/useToaster.js"),g=require("../node_modules/lodash/lodash.js");const h=n.makeStyles({main:{flexGrow:1,...n.shorthands.padding("10px"),overflowY:"auto"},container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%",position:"relative"},root:{height:"100%"},item:{height:"auto",width:"auto",flexShrink:1,marginBottom:"1rem"},chat:{flexGrow:1,boxSizing:"border-box",overflow:"hidden",border:"none"},attachmentBar:{display:"none"},iconButton:{width:"24px",height:"24px"},imageCard:{alignContent:"center",borderRadius:n.tokens.borderRadiusLarge,height:"240px",textAlign:"left",position:"relative"},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"},backButton:{marginBottom:"10px"}}),q=({state:q,voice:f})=>{const v=h(),{t:x}=m.default(),S=p.useNavigate(),[k,b]=r.useState(!1),C=r.useRef(null),w=r.useRef(null),y=r.useRef(null),[I]=r.useState(null),[M,_]=r.useState([]),{service:P}=q,[B,U]=p.useSearchParams(),[A,E]=r.useState(""),[N,T]=r.useState(void 0),F=j.default(),[L,R]=r.useState(void 0),[V,O]=r.useState("info"),$=r.useCallback((e=>{for(const r of e)P.getFileInfo(r).then((e=>{_((r=>[...r,e]))}))}),[P,_]),D=r.useCallback((e=>{const r=new FormData;r.append("file",e),P.uploadFile(e.name,r).then((e=>{$([e])})).catch((()=>{F.notify(x("Error"),x("Error uploading pasted image"),"")}))}),[P,$,F,x]),H=e=>{b(e)};r.useEffect((()=>{const e=B.get("text"),r=B.get("url");e&&(E(e),B.delete("text")),r&&(B.delete("url"),E(((e||"")+" "+r).trim())),U(B,{replace:!0})}),[B,U,E,P,$]);const z=r.useCallback((async e=>{if(!e||e.length<10)return;R(x("Analyserar...")),O("info");const r=await P.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 n=0;for(const e in r)"true"===r[e]&&n++;R(x(4===n?"Allt är med":r.shortSummary||"Något saknas")),O(4===n?"success":"warning")}catch{R("Error: "+e.content),O("error")}}}),[P]),G=r.useMemo((()=>g.lodashExports.debounce(z,2e3)),[z]);return r.useEffect((()=>()=>{G.cancel()}),[G]),e.jsx(d.Page,{hideHeader:!0,children:e.jsxs("div",{className:v.container,style:{backgroundImage:`url(${u.getConfigValue("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:[f&&u.getConfigValue("SHOW_VOICE_BUTTON")&&e.jsx("div",{className:v.voiceIcon,children:e.jsx(s.default,{voice:f})}),e.jsx("div",{className:v.backButton,children:e.jsx(n.Button,{appearance:"subtle",icon:e.jsx(t.ArrowLeft24Regular,{}),onClick:()=>S(-1),children:x("Tillbaka")})}),e.jsx(a.default,{title:u.getConfigValue("APP_SAVE_TITLE")?x(u.getConfigValue("APP_SAVE_TITLE")):x("Spara")}),e.jsx(l.default,{defaultText:A,onSend:e=>{e=`${e=`#crm\n${e.replace("#log ","")}\nSALESPERSON: ${q.context.name||q.context.user?.email||q.context.nickname||"-"}`}${I?" "+I:""}${M.length>0?"\n":""}${M.map((e=>`#file:${e.id}`)).join(" ")}`,P.sendMessage(e).then((()=>{F.notify(x("Meddelande"),x("Meddelandet är sparat."),"")}))},files:M,onFilesChange:_,isUploading:k,onUploadImage:()=>{w.current?.triggerUpload()},onUploadCamera:()=>{y.current?.triggerUpload()},getImageUrl:o.CodicentService.getImageUrl,hasLocation:!!I,disableSend:!0,rows:9,placeholder:x("Beskriv CRM-aktivitet här..."),onChange:e=>{e!==N&&(T(e),e&&e.trim().length>0?G(e):(R(void 0),G.cancel()))},onImagePasted:D}),L&&e.jsxs("div",{className:v.review,children:[e.jsx("h3",{children:x("Analys")}),e.jsx(n.MessageBar,{intent:V,layout:"multiline",children:e.jsx(n.MessageBarBody,{children:x(L)})})]}),e.jsx(c.default,{ref:C,onFileUploaded:$,onUploading:H,multiple:!0,codicentService:P}),e.jsx(c.default,{codicentService:P,ref:w,onFileUploaded:$,onUploading:H,multiple:!0,accept:"image/*"}),e.jsx(c.default,{codicentService:P,ref:y,onFileUploaded:$,onUploading:H,multiple:!0,accept:"image/*",capture:"environment"})]})})};exports.CrmPage=q,exports.default=q;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),n=require("@fluentui/react-components"),t=require("@fluentui/react-icons"),o=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 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 s=require("../components/VoiceIcon.js"),i=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("../components/FileThumbnail.js");var l=require("../components/MessageInput.js"),c=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 d=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("./CrmPagePersistent.js"),require("./ImageView.js"),require("./FormInvite.js"),require("./FormAccept.js"),require("./Sales.js");var p=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 j=require("../hooks/useToaster.js"),g=require("../node_modules/lodash/lodash.js");const h=n.makeStyles({main:{flexGrow:1,...n.shorthands.padding("10px"),overflowY:"auto"},container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%",position:"relative"},root:{height:"100%"},item:{height:"auto",width:"auto",flexShrink:1,marginBottom:"1rem"},chat:{flexGrow:1,boxSizing:"border-box",overflow:"hidden",border:"none"},attachmentBar:{display:"none"},iconButton:{width:"24px",height:"24px"},imageCard:{alignContent:"center",borderRadius:n.tokens.borderRadiusLarge,height:"240px",textAlign:"left",position:"relative"},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"},backButton:{marginBottom:"10px"}}),q=({state:q,voice:f})=>{const v=h(),{t:x}=m.default(),S=p.useNavigate(),[k,b]=r.useState(!1),C=r.useRef(null),w=r.useRef(null),y=r.useRef(null),[I]=r.useState(null),[M,P]=r.useState([]),{service:_}=q,[B,U]=p.useSearchParams(),[A,E]=r.useState(""),[N,T]=r.useState(void 0),F=j.default(),[L,R]=r.useState(void 0),[V,O]=r.useState("info"),$=r.useCallback((e=>{for(const r of e)_.getFileInfo(r).then((e=>{P((r=>[...r,e]))}))}),[_,P]),D=r.useCallback((e=>{const r=new FormData;r.append("file",e),_.uploadFile(e.name,r).then((e=>{$([e])})).catch((()=>{F.notify(x("Error"),x("Error uploading pasted image"),"")}))}),[_,$,F,x]),H=e=>{b(e)};r.useEffect((()=>{const e=B.get("text"),r=B.get("url");e&&(E(e),B.delete("text")),r&&(B.delete("url"),E(((e||"")+" "+r).trim())),U(B,{replace:!0})}),[B,U,E,_,$]);const z=r.useCallback((async e=>{if(!e||e.length<10)return;R(x("Analyserar...")),O("info");const r=await _.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 n=0;for(const e in r)"true"===r[e]&&n++;R(x(4===n?"Allt är med":r.shortSummary||"Något saknas")),O(4===n?"success":"warning")}catch{R("Error: "+e.content),O("error")}}}),[_]),G=r.useMemo((()=>g.lodashExports.debounce(z,2e3)),[z]);return r.useEffect((()=>()=>{G.cancel()}),[G]),e.jsx(d.Page,{hideHeader:!0,children:e.jsxs("div",{className:v.container,style:{backgroundImage:`url(${u.getConfigValue("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:[f&&u.getConfigValue("SHOW_VOICE_BUTTON")&&e.jsx("div",{className:v.voiceIcon,children:e.jsx(s.default,{voice:f})}),e.jsx("div",{className:v.backButton,children:e.jsx(n.Button,{appearance:"subtle",icon:e.jsx(t.ArrowLeft24Regular,{}),onClick:()=>S(-1),children:x("Tillbaka")})}),e.jsx(a.default,{title:u.getConfigValue("APP_SAVE_TITLE")?x(u.getConfigValue("APP_SAVE_TITLE")):x("Spara")}),e.jsx(l.default,{defaultText:A,onSend:e=>{e=`${e=`#crm\n${e.replace("#log ","")}\nSALESPERSON: ${q.context.name||q.context.user?.email||q.context.nickname||"-"}`}${I?" "+I:""}${M.length>0?"\n":""}${M.map((e=>`#file:${e.id}`)).join(" ")}`,_.sendMessage(e).then((()=>{F.notify(x("Meddelande"),x("Meddelandet är sparat."),"")}))},files:M,onFilesChange:P,isUploading:k,onUploadImage:()=>{w.current?.triggerUpload()},onUploadCamera:()=>{y.current?.triggerUpload()},getImageUrl:o.CodicentService.getImageUrl,hasLocation:!!I,disableSend:!0,rows:9,placeholder:x("Beskriv CRM-aktivitet här..."),onChange:e=>{e!==N&&(T(e),e&&e.trim().length>0?G(e):(R(void 0),G.cancel()))},onImagePasted:D}),L&&e.jsxs("div",{className:v.review,children:[e.jsx("h3",{children:x("Analys")}),e.jsx(n.MessageBar,{intent:V,layout:"multiline",children:e.jsx(n.MessageBarBody,{children:x(L)})})]}),e.jsx(c.default,{ref:C,onFileUploaded:$,onUploading:H,multiple:!0,codicentService:_}),e.jsx(c.default,{codicentService:_,ref:w,onFileUploaded:$,onUploading:H,multiple:!0,accept:"image/*"}),e.jsx(c.default,{codicentService:_,ref:y,onFileUploaded:$,onUploading:H,multiple:!0,accept:"image/*",capture:"environment"})]})})};exports.CrmPage=q,exports.default=q;
@@ -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("../node_modules/exceljs/excel.js"),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&&(D(e),E.delete("text")),r&&(E.delete("url"),D(((e||"")+" "+r).trim())),P(E,{replace:!0})}),[E,P,D,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:_,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 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 +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("../node_modules/exceljs/excel.js");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 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 +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("../node_modules/exceljs/excel.js");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,x]=s.default(j.context.selectedApp+"_forms",[]),[v,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))),x(e)}))}),[h,g,x]);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")}),v&&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:v,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:()=>{v&&(navigator.clipboard.writeText(v),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:()=>{v&&(navigator.share({url:v}),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 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 +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("../node_modules/exceljs/excel.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("./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:_,stateMachine:R,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(R),{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=!_&&!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:()=>R.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:()=>R.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)}))]})})}),_&&e.jsx("div",{className:"error",children:_}),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 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 +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("../node_modules/exceljs/excel.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("./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 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 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("@fluentui/react-components"),n=require("@fluentui/react-icons"),o=require("react"),r=require("react-router-dom"),s=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("../node_modules/exceljs/excel.js");var i=require("../services/codicent.js");const a=t.makeStyles({image:{zIndex:900,transition:"transform 0.1s ease-out",cursor:"grab","&:active":{cursor:"grabbing"}},transparent:{color:"transparent",backgroundColor:"transparent"},next:{cursor:"pointer",position:"absolute",top:"50%",width:"auto",marginTop:"-22px",padding:"16px",color:"white",fontWeight:"bold",fontSize:"18px",transition:"0.6s ease",userSelect:"none",right:0,borderRadius:"3px 0 0 3px",zIndex:1e3,backgroundColor:"#A0A0A080","&:hover":{backgroundColor:"#A0A0A0"}},prev:{cursor:"pointer",position:"absolute",top:"50%",width:"auto",marginTop:"-22px",padding:"16px",color:"white",fontWeight:"bold",fontSize:"18px",transition:"0.6s ease",borderRadius:"0 3px 3px 0",userSelect:"none",left:0,zIndex:1e3,backgroundColor:"#A0A0A080","&:hover":{backgroundColor:"#A0A0A0"}},content:{position:"fixed",top:0,left:0,bottom:0,right:0,display:"flex",justifyContent:"center",alignItems:"center"},closeButton:{position:"absolute",top:"10px",right:"10px",zIndex:1001,backgroundColor:"rgba(0, 0, 0, 0.5)",color:"white","&:hover":{backgroundColor:"rgba(0, 0, 0, 0.7)"}}});exports.default=({state:l})=>{const c=a(),[u]=r.useSearchParams(),d=r.useNavigate(),[m,v]=o.useState([]),[g,p]=o.useState(0),[x,h]=o.useState(),[w,f]=o.useState(null),[b,y]=o.useState(null),{service:j}=l,[E,q]=o.useState(1),[S,L]=o.useState({x:0,y:0}),[k,C]=o.useState(!1),[A,_]=o.useState({x:0,y:0});o.useEffect((()=>{const e=e=>{"Escape"===e.key&&d(-1)},t=e=>{f(e.touches[0].clientX)},n=e=>{y(e.touches[0].clientX)},o=()=>{if(null!==w&&null!==b){const e=w-b;e>50?I(1):e<-50&&I(-1)}f(null),y(null)};return window.addEventListener("keydown",e),window.addEventListener("touchstart",t),window.addEventListener("touchmove",n),window.addEventListener("touchend",o),()=>{window.removeEventListener("keydown",e),window.removeEventListener("touchstart",t),window.removeEventListener("touchmove",n),window.removeEventListener("touchend",o)}}),[d,w,b]),o.useEffect((()=>{h(i.CodicentService.getFileUrl(m[g]))}),[m,g]),o.useEffect((()=>{const e=u.get("id"),t=u.get("file");e&&t&&j.getMessageContent(e).then((e=>{const n=s.default.findFileIds(e.content);Promise.all(n.map((e=>j.getFileInfo(e)))).then((e=>{v(e.filter((e=>e.contentType.startsWith("image"))).map((e=>e.id)));const n=m.indexOf(t);n>=0&&p(n)}))})).catch((()=>{}))}),[u,j]),o.useEffect((()=>{q(1),L({x:0,y:0})}),[g]),o.useEffect((()=>{const e=e=>{e.preventDefault();const t=-.01*e.deltaY;q((e=>Math.min(Math.max(1,e+t),5)))},t=e=>{const t=e;E>1&&(C(!0),_({x:t.clientX-S.x,y:t.clientY-S.y}))},n=e=>{const t=e;k&&L({x:t.clientX-A.x,y:t.clientY-A.y})},o=()=>{C(!1)},r=document.querySelector(`.${c.image}`);return r&&(r.addEventListener("wheel",e),r.addEventListener("mousedown",t),window.addEventListener("mousemove",n),window.addEventListener("mouseup",o)),()=>{r&&(r.removeEventListener("wheel",e),r.removeEventListener("mousedown",t),window.removeEventListener("mousemove",n),window.removeEventListener("mouseup",o))}}),[E,S,k,A,c.image]);const I=e=>{if(g+e<0||g+e>=m.length)return;const t=(g+e+m.length)%m.length;p(t)};return e.jsxs("div",{className:c.content,children:[e.jsx(t.Button,{icon:e.jsx(n.Dismiss24Regular,{}),className:c.closeButton,onClick:()=>d(-1)}),e.jsx(t.Image,{className:c.image,src:x,alt:"Codicent Image",fit:"contain",width:"100%",height:"100%",style:{transform:`translate(${S.x}px, ${S.y}px) scale(${E})`,touchAction:"none"}}),m.length>1&&e.jsxs(e.Fragment,{children:[0!==g&&e.jsx("a",{className:c.prev,onClick:()=>I(-1),children:"❮"}),g<m.length-1&&e.jsx("a",{className:c.next,onClick:()=>I(1),children:"❯"})]})]})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("@fluentui/react-components"),n=require("@fluentui/react-icons"),o=require("react"),r=require("react-router-dom"),s=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");var i=require("../services/codicent.js");const a=t.makeStyles({image:{zIndex:900,transition:"transform 0.1s ease-out",cursor:"grab","&:active":{cursor:"grabbing"}},transparent:{color:"transparent",backgroundColor:"transparent"},next:{cursor:"pointer",position:"absolute",top:"50%",width:"auto",marginTop:"-22px",padding:"16px",color:"white",fontWeight:"bold",fontSize:"18px",transition:"0.6s ease",userSelect:"none",right:0,borderRadius:"3px 0 0 3px",zIndex:1e3,backgroundColor:"#A0A0A080","&:hover":{backgroundColor:"#A0A0A0"}},prev:{cursor:"pointer",position:"absolute",top:"50%",width:"auto",marginTop:"-22px",padding:"16px",color:"white",fontWeight:"bold",fontSize:"18px",transition:"0.6s ease",borderRadius:"0 3px 3px 0",userSelect:"none",left:0,zIndex:1e3,backgroundColor:"#A0A0A080","&:hover":{backgroundColor:"#A0A0A0"}},content:{position:"fixed",top:0,left:0,bottom:0,right:0,display:"flex",justifyContent:"center",alignItems:"center"},closeButton:{position:"absolute",top:"10px",right:"10px",zIndex:1001,backgroundColor:"rgba(0, 0, 0, 0.5)",color:"white","&:hover":{backgroundColor:"rgba(0, 0, 0, 0.7)"}}});exports.default=({state:l})=>{const c=a(),[u]=r.useSearchParams(),d=r.useNavigate(),[m,v]=o.useState([]),[g,p]=o.useState(0),[x,h]=o.useState(),[w,f]=o.useState(null),[b,y]=o.useState(null),{service:E}=l,[j,q]=o.useState(1),[S,L]=o.useState({x:0,y:0}),[k,C]=o.useState(!1),[A,I]=o.useState({x:0,y:0});o.useEffect((()=>{const e=e=>{"Escape"===e.key&&d(-1)},t=e=>{f(e.touches[0].clientX)},n=e=>{y(e.touches[0].clientX)},o=()=>{if(null!==w&&null!==b){const e=w-b;e>50?_(1):e<-50&&_(-1)}f(null),y(null)};return window.addEventListener("keydown",e),window.addEventListener("touchstart",t),window.addEventListener("touchmove",n),window.addEventListener("touchend",o),()=>{window.removeEventListener("keydown",e),window.removeEventListener("touchstart",t),window.removeEventListener("touchmove",n),window.removeEventListener("touchend",o)}}),[d,w,b]),o.useEffect((()=>{h(i.CodicentService.getFileUrl(m[g]))}),[m,g]),o.useEffect((()=>{const e=u.get("id"),t=u.get("file");e&&t&&E.getMessageContent(e).then((e=>{const n=s.default.findFileIds(e.content);Promise.all(n.map((e=>E.getFileInfo(e)))).then((e=>{v(e.filter((e=>e.contentType.startsWith("image"))).map((e=>e.id)));const n=m.indexOf(t);n>=0&&p(n)}))})).catch((()=>{}))}),[u,E]),o.useEffect((()=>{q(1),L({x:0,y:0})}),[g]),o.useEffect((()=>{const e=e=>{e.preventDefault();const t=-.01*e.deltaY;q((e=>Math.min(Math.max(1,e+t),5)))},t=e=>{const t=e;j>1&&(C(!0),I({x:t.clientX-S.x,y:t.clientY-S.y}))},n=e=>{const t=e;k&&L({x:t.clientX-A.x,y:t.clientY-A.y})},o=()=>{C(!1)},r=document.querySelector(`.${c.image}`);return r&&(r.addEventListener("wheel",e),r.addEventListener("mousedown",t),window.addEventListener("mousemove",n),window.addEventListener("mouseup",o)),()=>{r&&(r.removeEventListener("wheel",e),r.removeEventListener("mousedown",t),window.removeEventListener("mousemove",n),window.removeEventListener("mouseup",o))}}),[j,S,k,A,c.image]);const _=e=>{if(g+e<0||g+e>=m.length)return;const t=(g+e+m.length)%m.length;p(t)};return e.jsxs("div",{className:c.content,children:[e.jsx(t.Button,{icon:e.jsx(n.Dismiss24Regular,{}),className:c.closeButton,onClick:()=>d(-1)}),e.jsx(t.Image,{className:c.image,src:x,alt:"Codicent Image",fit:"contain",width:"100%",height:"100%",style:{transform:`translate(${S.x}px, ${S.y}px) scale(${j})`,touchAction:"none"}}),m.length>1&&e.jsxs(e.Fragment,{children:[0!==g&&e.jsx("a",{className:c.prev,onClick:()=>_(-1),children:"❮"}),g<m.length-1&&e.jsx("a",{className:c.next,onClick:()=>_(1),children:"❯"})]})]})};