@cling-se/widget 1.0.0-beta.1 → 1.0.0-beta.2

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 (241) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.internal.md +82 -0
  3. package/README.md +14 -40
  4. package/README.public.md +14 -0
  5. package/dist/AddClientCallout-e8d19R3f.js +101 -0
  6. package/dist/AnswerModal-BGvB8IVV.js +3291 -0
  7. package/dist/AttachmentItem-CkHbAm4l.js +171 -0
  8. package/dist/BaseUpload-BiJBcWRu.js +2472 -0
  9. package/dist/BlockMedia-CW5wgipC.js +103 -0
  10. package/dist/CCallout-Cy2eeIYd.js +104 -0
  11. package/dist/{CCurrencyDropdown-qH-3m2eP.js → CCurrencyDropdown-DE_3CTjm.js} +91 -49
  12. package/dist/CDropdownItem-Dmq5gYzA.js +751 -0
  13. package/dist/CFormField.vue_vue_type_script_setup_true_lang-D_U9coAY.js +292 -0
  14. package/dist/{CPhoneFormat-CfQayFxw.js → CPhoneFormat-BS2nP9kc.js} +13 -21
  15. package/dist/CPhoneInput-Bf6329PO.js +207 -0
  16. package/dist/CPriceInput-d1yjuMQr.js +140 -0
  17. package/dist/CSelect-DgnT07Hk.js +98 -0
  18. package/dist/CSkeleton.vue_vue_type_script_setup_true_lang-Ckl--dyv.js +51 -0
  19. package/dist/ClientAutocomplete-9JzGcO9O.js +532 -0
  20. package/dist/ClientModal-BzWQtWSZ.js +1181 -0
  21. package/dist/ColorPicker-BvoFN8nu.js +1408 -0
  22. package/dist/CompanyModal-Bp4V_az9.js +250 -0
  23. package/dist/ContentWrapper-CuH6xKmo.js +265 -0
  24. package/dist/CoverBlockSettings-BA5L0Zee.js +861 -0
  25. package/dist/DocAnswer-BcNA_KEg.js +33 -0
  26. package/dist/DocDetails-CStEwWnU.js +448 -0
  27. package/dist/DocForm-BOoILf5E.js +6748 -0
  28. package/dist/DocFormSend-CQIf-HJY.js +171 -0
  29. package/dist/DocLinks-BRX5QzNe.js +36 -0
  30. package/dist/DocModalBase-D72yWj-x.js +29 -0
  31. package/dist/DocPrint-BI1LXUPE.js +399 -0
  32. package/dist/DocReceipt-DaZ4V76p.js +341 -0
  33. package/dist/DocSendReminder-DKGZlo7s.js +181 -0
  34. package/dist/DocTextEditor-Dm-cTZpA.js +19413 -0
  35. package/dist/DocTimeline-DCwofzuk.js +537 -0
  36. package/dist/DocumentClient-vJdxCB53.js +90 -0
  37. package/dist/DocumentLayout-CKSi42ev.js +1368 -0
  38. package/dist/DocumentLogotype-DbQlvQ-y.js +162 -0
  39. package/dist/DocumentVoided-CRX2WxWO.js +33 -0
  40. package/dist/EmbedInput-B-oeC4Wy.js +157 -0
  41. package/dist/EmbedSettings-B9Yka2yB.js +103 -0
  42. package/dist/ErrorCallout-B_ygH33E.js +34 -0
  43. package/dist/FilePreviewModal-Bf3ELTow.js +202 -0
  44. package/dist/Flag-BwTgCNHO.js +41 -0
  45. package/dist/HeaderSettings-DvC7nlyY.js +720 -0
  46. package/dist/ImageSelectModal-D3sP3lhR.js +119 -0
  47. package/dist/ImageUploadWrapper-RWNa-yIq.js +1585 -0
  48. package/dist/Index-0_3ULrWX.js +126 -0
  49. package/dist/Index-4NPe0sfX.js +629 -0
  50. package/dist/Index-B1uA0FF6.js +4 -0
  51. package/dist/Index-BBkCYm2q.js +201 -0
  52. package/dist/{Index-DIOiMm9f.js → Index-BBwvo7S9.js} +10 -18
  53. package/dist/Index-BEMlsYwJ.js +68 -0
  54. package/dist/Index-BRBhJ6kz.js +21 -0
  55. package/dist/{Index--qPMWUMT.js → Index-BTFmHjUt.js} +48 -61
  56. package/dist/Index-BcUNnxLC.js +1098 -0
  57. package/dist/Index-Bo6ExBUL.js +93 -0
  58. package/dist/Index-BvMPCgdH.js +102 -0
  59. package/dist/Index-Bx5TOI9k.js +74 -0
  60. package/dist/Index-C7GZS8EI.js +16 -0
  61. package/dist/Index-CNWhm07R.js +25 -0
  62. package/dist/{Index-DcQbh-z2.js → Index-CQpznMKV.js} +9 -17
  63. package/dist/Index-CRzsnIij.js +159 -0
  64. package/dist/Index-CeSG1C41.js +140 -0
  65. package/dist/Index-CjfjdZj5.js +52 -0
  66. package/dist/Index-CskKmZpd.js +363 -0
  67. package/dist/Index-D5qwbCo1.js +28 -0
  68. package/dist/Index-D8Ae1Txt.js +228 -0
  69. package/dist/Index-DE8aenDB.js +3452 -0
  70. package/dist/Index-DI5EB5Rt.js +39 -0
  71. package/dist/Index-DaV57YPP.js +163 -0
  72. package/dist/Index-DbwkmoyM.js +38 -0
  73. package/dist/Index-Df9skok6.js +70 -0
  74. package/dist/{Index-Bu0MGrj6.js → Index-DfLLA0ij.js} +313 -206
  75. package/dist/Index-Dw1CO5F9.js +76 -0
  76. package/dist/Index-PZXyOoVb.js +87 -0
  77. package/dist/{Index-D4XgxmbD.js → Index-ZUnH-BHj.js} +10 -18
  78. package/dist/Index-cjKGSiDi.js +136 -0
  79. package/dist/Index-m-goRuKD.js +49 -0
  80. package/dist/Index-rGeWbLcB.js +47 -0
  81. package/dist/Index-vrljNp6G.js +28 -0
  82. package/dist/Index.vue_vue_type_script_lang-aeVuChGF.js +671 -0
  83. package/dist/InputToggleRow-v6qAWPg6.js +99 -0
  84. package/dist/ManualPopover-BONBJIUA.js +57 -0
  85. package/dist/MediaWrapper-CXb2UGd9.js +18 -0
  86. package/dist/{NotBindingText-CNV2Wmdx.js → NotBindingText-BqESO13N.js} +13 -17
  87. package/dist/PackageGroup-AIysVmyh.js +1058 -0
  88. package/dist/PdfTerms-BlhHdTu3.js +34 -0
  89. package/dist/PdfViewer-DwZ1rwlN.js +392 -0
  90. package/dist/PlainHtml.vue_vue_type_script_setup_true_lang-D6NNUTz0.js +17 -0
  91. package/dist/PriceHeader-C4XhnoA3.js +488 -0
  92. package/dist/SearchApi-B7lXgUY6.js +137 -0
  93. package/dist/SendForm-BcD0xSvB.js +7031 -0
  94. package/dist/Setup-C2qaYDei.js +47 -0
  95. package/dist/{SmartList-Qgu0rMrI.js → SmartList-DqG7Q5t7.js} +16 -24
  96. package/dist/Sortable.vue_vue_type_script_setup_true_lang-CzMbr8AX.js +1303 -0
  97. package/dist/{TermsSettings-CE3h_xkm.js → TermsSettings-BOCONyM4.js} +169 -49
  98. package/dist/ThemeColorRow-sjGdMzGN.js +108 -0
  99. package/dist/ToggleBinding-7oq_oXPt.js +44 -0
  100. package/dist/UploadModal-C_X2NjVY.js +134 -0
  101. package/dist/VideoPlayerInput-BsUcmpl4.js +135 -0
  102. package/dist/VideoPlayerSettings-BXMmxaZQ.js +78 -0
  103. package/dist/VideoSelectModal-CW0OweCw.js +217 -0
  104. package/dist/{anime.es-BrPTThYb.js → anime.es-gdcpA-eY.js} +1 -2
  105. package/dist/{color-TdtKxwVa.js → color-HetJPhlA.js} +1 -2
  106. package/dist/{debounce-C1AuSpOZ.js → debounce-DNl99Gyo.js} +7 -7
  107. package/dist/dom-CkTGWrfu.js +69 -0
  108. package/dist/{focusDrawerMixin-Be6BAK8-.js → focusDrawerMixin-BwcErMDY.js} +1 -1
  109. package/dist/{formDrawerState-DRbg5rVI.js → formDrawerState-DaurePnd.js} +2 -2
  110. package/dist/helpers-CPW--XIz.js +44 -0
  111. package/dist/index-BjiGCJPI.js +149 -0
  112. package/dist/index-CFNv6OvX.js +188 -0
  113. package/dist/index-Cx71On5Z.js +508 -0
  114. package/dist/index-DKMxIBz_.js +270 -0
  115. package/dist/index-DKf5SGLD.js +125 -0
  116. package/dist/index-E32WgUp9.js +3525 -0
  117. package/dist/index-kp-GC5I0.js +513 -0
  118. package/dist/index.es.js +2 -5
  119. package/dist/index.umd.js +306 -1505
  120. package/dist/{main-WKzC-Dnu.js → main-Cb-nyil1.js} +33252 -33755
  121. package/dist/mapFormMixin-D3BihYWW.js +1544 -0
  122. package/dist/omit--YYr41Xp.js +31 -0
  123. package/dist/{publicSenderState-BujjYsZZ.js → publicSenderState-CdRW_Wwp.js} +4 -4
  124. package/dist/regions-BdZt9Srn.js +1250 -0
  125. package/dist/splitpanes-D-ThFkeR.js +342 -0
  126. package/dist/style.css +1 -4
  127. package/dist/template-BvaNnq-g.js +1493 -0
  128. package/dist/{throttle-CWPJmFid.js → throttle-D-bUGaVh.js} +2 -2
  129. package/dist/tippy.esm-BmKNqohP.js +1994 -0
  130. package/dist/useTermsModal-Dhf6_eYb.js +87 -0
  131. package/dist/{utils-CA_Zy6u1.js → utils-CBPcYdLv.js} +8 -11
  132. package/dist/validation-DOcUOoMe.js +40 -0
  133. package/package.json +25 -31
  134. package/.eslintrc.cjs +0 -4
  135. package/dist/AddClientCallout-BWnvyBcK.js +0 -46
  136. package/dist/AnswerModal-CLGRdSnK.js +0 -3874
  137. package/dist/AttachmentItem-BPS0-wyc.js +0 -78
  138. package/dist/BaseDatePicker-BbmV_GdD.js +0 -3183
  139. package/dist/BaseUpload-9gPgI7r6.js +0 -1977
  140. package/dist/BlockMedia-DkPFWiYL.js +0 -76
  141. package/dist/CCallout-T26jwUby.js +0 -59
  142. package/dist/CDropdownItem-BE8BAMD1.js +0 -636
  143. package/dist/CField.vue_vue_type_style_index_0_lang-l0sNRNKZ.js +0 -1
  144. package/dist/CFormField-DECEfoVq.js +0 -241
  145. package/dist/CPriceInput-C4SOB-P5.js +0 -112
  146. package/dist/CTabs.vue_vue_type_style_index_0_scoped_e02a6440_lang-l0sNRNKZ.js +0 -1
  147. package/dist/ClientAutocomplete-DSebA1Mx.js +0 -78
  148. package/dist/ClientModal-BXFYvYCF.js +0 -625
  149. package/dist/ColorPicker-CZ_bJabP.js +0 -2879
  150. package/dist/CompanyModal-CDr3t28n.js +0 -141
  151. package/dist/ContentWrapper-BwmMoe4W.js +0 -183
  152. package/dist/CoverBlockSettings-_F11-DGc.js +0 -275
  153. package/dist/DocAnswer-BR59xzkT.js +0 -36
  154. package/dist/DocDetails-D1qbCbps.js +0 -259
  155. package/dist/DocForm-DBc2a7z5.js +0 -7272
  156. package/dist/DocFormSend-Casix-yG.js +0 -144
  157. package/dist/DocLinks-DGTaewyX.js +0 -38
  158. package/dist/DocModalBase-BbS_qvSv.js +0 -28
  159. package/dist/DocPrint-0PqX3mbJ.js +0 -240
  160. package/dist/DocReceipt-CU3VD5pt.js +0 -210
  161. package/dist/DocSendReminder-CuycBspr.js +0 -137
  162. package/dist/DocTextEditor-CntS2Bd-.js +0 -17180
  163. package/dist/DocTimeline-DJuv3yBe.js +0 -481
  164. package/dist/DocumentClient-C25XXzz6.js +0 -136
  165. package/dist/DocumentLayout-B7afHRMr.js +0 -4909
  166. package/dist/DocumentLogotype-sqI51wvM.js +0 -87
  167. package/dist/DocumentVoided-TahdTSMn.js +0 -25
  168. package/dist/EmbedInput-BY-wHSfc.js +0 -113
  169. package/dist/EmbedSettings-8pfjk4NP.js +0 -72
  170. package/dist/ErrorCallout-Dsr8PNsU.js +0 -28
  171. package/dist/FilePreviewModal-CcEinEFg.js +0 -81
  172. package/dist/Flag-PJKrghi9.js +0 -114
  173. package/dist/HeaderSettings-BqczIOsG.js +0 -392
  174. package/dist/ImageSelectModal-Cd-HhKnH.js +0 -84
  175. package/dist/ImageUploadWrapper-Dv43rGdb.js +0 -1604
  176. package/dist/Index-6b5VBKE-.js +0 -107
  177. package/dist/Index-B4pRJnbw.js +0 -84
  178. package/dist/Index-B69f8qgZ.js +0 -62
  179. package/dist/Index-B79YN9RO.js +0 -25
  180. package/dist/Index-BBrlPoe8.js +0 -58
  181. package/dist/Index-BXfWJCuq.js +0 -52
  182. package/dist/Index-Bd76vb37.js +0 -55
  183. package/dist/Index-BmbtQO5F.js +0 -150
  184. package/dist/Index-ByV_kJaH.js +0 -77
  185. package/dist/Index-CDV5rhWS.js +0 -49
  186. package/dist/Index-CIx4OOK-.js +0 -144
  187. package/dist/Index-CL1OWLt6.js +0 -223
  188. package/dist/Index-Caow0eZu.js +0 -31
  189. package/dist/Index-Cd3-3PEK.js +0 -2402
  190. package/dist/Index-CdpZBEKU.js +0 -98
  191. package/dist/Index-CmU3Sys-.js +0 -754
  192. package/dist/Index-CtRtgnpm.js +0 -32
  193. package/dist/Index-Cukkr33D.js +0 -140
  194. package/dist/Index-Cuqw0ios.js +0 -57
  195. package/dist/Index-Czm_WdqC.js +0 -25
  196. package/dist/Index-DNdYXHgr.js +0 -33
  197. package/dist/Index-DcuBxutp.js +0 -642
  198. package/dist/Index-DpWNWiyY.js +0 -291
  199. package/dist/Index-DzS1rZdF.js +0 -24
  200. package/dist/Index-N6s5pZxv.js +0 -26
  201. package/dist/Index-g_DNu4mt.js +0 -69
  202. package/dist/Index-mJ8F41GY.js +0 -154
  203. package/dist/Index-q7W9KA8m.js +0 -21
  204. package/dist/Index-rtzblZp4.js +0 -70
  205. package/dist/InputToggleRow-CZjxsDOQ.js +0 -57
  206. package/dist/ManualPopover-CZrWiT-P.js +0 -58
  207. package/dist/MediaWrapper-D37qK4KR.js +0 -23
  208. package/dist/PackageGroup-Heo_s8ct.js +0 -699
  209. package/dist/PdfTerms-AB9tXAtU.js +0 -36
  210. package/dist/PdfViewer-CIVkvOBr.js +0 -373
  211. package/dist/PlainHtml-CPmIebjY.js +0 -20
  212. package/dist/PriceHeader-DhDAruwX.js +0 -339
  213. package/dist/SearchApi-BMgdaI4s.js +0 -161
  214. package/dist/Setup-VIaIV9uT.js +0 -50
  215. package/dist/ThemeColorRow-DYJNgk6S.js +0 -67
  216. package/dist/ToggleBinding-CuwCeYpO.js +0 -38
  217. package/dist/UploadModal-BITcxG-J.js +0 -95
  218. package/dist/VideoPlayerInput-8szEX_8L.js +0 -93
  219. package/dist/VideoPlayerSettings-BIPytm6w.js +0 -61
  220. package/dist/VideoSelectModal-B-Pe34nb.js +0 -100
  221. package/dist/answerDocumentMixin-W7vE1Gp4.js +0 -51
  222. package/dist/formComponentsInstall-Bm3VMOh6.js +0 -2507
  223. package/dist/formValidationMixin-COkY8COk.js +0 -49
  224. package/dist/index-BFvjENMH.js +0 -81
  225. package/dist/index-BV2nGWay.js +0 -492
  226. package/dist/index-BgJ05dYc.js +0 -165
  227. package/dist/index-CMPAXxzs.js +0 -347
  228. package/dist/index-DNDjI5uI.js +0 -3916
  229. package/dist/index-aoff9oUi.js +0 -102
  230. package/dist/mapFormMixin-QbevCwJK.js +0 -72
  231. package/dist/omit-CTp9CXoU.js +0 -31
  232. package/dist/splitpanes-BHUVsCZF.js +0 -382
  233. package/dist/tinycolor-kTl0yxzz.js +0 -633
  234. package/dist/tippy.esm-sS5koDSU.js +0 -1799
  235. package/dist/vuedraggable.umd-BA3ZDRAp.js +0 -3161
  236. package/dist/vuex.esm-DKGl8mcw.js +0 -467
  237. package/public/favicon.ico +0 -0
  238. package/tsconfig.json +0 -26
  239. package/tsconfig.node.json +0 -10
  240. package/tsconfig.paths.json +0 -17
  241. package/vite.config.ts +0 -60
@@ -0,0 +1,1098 @@
1
+ import { _, b as h, a3 as D, E as B, o as i, d as a, e as p, w as v, s as t, f as c, c as f, F as y, k as C, l as w, v as m, n as k, B as x, m as A, a as O, g as S, z as $, aj as F, p as q, aa as M, dj as I, ca as H, bV as L, aq as U } from "./main-Cb-nyil1.js";
2
+ import { m as T } from "./mapFormMixin-D3BihYWW.js";
3
+ import { u as R } from "./DocumentLayout-CKSi42ev.js";
4
+ import { C as V } from "./CCallout-Cy2eeIYd.js";
5
+ import { T as W } from "./DocTextEditor-Dm-cTZpA.js";
6
+ import { w as N } from "./CDropdownItem-Dmq5gYzA.js";
7
+ const G = {
8
+ i18nOptions: {
9
+ namespaces: "components",
10
+ messages: {
11
+ sv: {
12
+ visitOur: "Besök vår {{type}}",
13
+ seeTypeReviews: "Se våra {{type}} recensioner"
14
+ },
15
+ en: {
16
+ visitOur: "Visit our {{type}}",
17
+ seeTypeReviews: "See our {{type}} reviews"
18
+ }
19
+ }
20
+ },
21
+ name: "SocialMediaButton",
22
+ props: {
23
+ type: {
24
+ type: String,
25
+ required: !0
26
+ },
27
+ url: {
28
+ type: String,
29
+ required: !0
30
+ }
31
+ },
32
+ computed: {
33
+ tooltipText() {
34
+ let { type: n } = this;
35
+ return n === "google" ? this.$t("seeTypeReviews", { type: n.capitalize() }) : (n === "website" && (n = this.$t("_common:website").capitalize()), ["facebook", "instagram", "reco", "linkedin"].includes(n) && (n = n.capitalize()), this.$t("visitOur", { type: n }));
36
+ }
37
+ }
38
+ }, Q = ["href"], X = {
39
+ key: 0,
40
+ class: "website-icon",
41
+ width: "18",
42
+ height: "18",
43
+ viewBox: "0 0 146 146",
44
+ xmlns: "http://www.w3.org/2000/svg"
45
+ }, Y = {
46
+ key: 2,
47
+ class: "instagram-icon",
48
+ width: "18",
49
+ height: "18",
50
+ xmlns: "http://www.w3.org/2000/svg",
51
+ viewBox: "0 0 512 512"
52
+ }, J = {
53
+ key: 3,
54
+ class: "facebook-icon",
55
+ xmlns: "http://www.w3.org/2000/svg",
56
+ width: "18",
57
+ height: "18",
58
+ viewBox: "0 0 24 24"
59
+ }, K = {
60
+ key: 4,
61
+ class: "google-icon",
62
+ width: "20",
63
+ height: "20",
64
+ xmlns: "http://www.w3.org/2000/svg",
65
+ "aria-label": "Google",
66
+ role: "img",
67
+ viewBox: "0 0 512 512"
68
+ }, Z = {
69
+ key: 5,
70
+ class: "reco-icon",
71
+ width: "20",
72
+ height: "20",
73
+ viewBox: "0 0 188 163",
74
+ xmlns: "http://www.w3.org/2000/svg"
75
+ };
76
+ function ee(n, s, e, g, r, l) {
77
+ const o = h("CIcon"), d = h("CButton"), u = D("tooltip");
78
+ return B((i(), a("a", {
79
+ href: e.url.toLowerCase().startsWith("http") ? e.url : `//${e.url}`,
80
+ class: "social-media-button",
81
+ target: "_blank",
82
+ rel: "noopener"
83
+ }, [
84
+ p(d, {
85
+ circle: "",
86
+ type: "none",
87
+ pattern: "secondary",
88
+ class: "text-gray-400"
89
+ }, {
90
+ default: v(() => [
91
+ e.type === "website" ? (i(), a("svg", X, s[0] || (s[0] = [
92
+ t("g", {
93
+ transform: "translate(8 8)",
94
+ fill: "none",
95
+ "fill-rule": "evenodd"
96
+ }, [
97
+ t("path", {
98
+ d: "M10.508537 0C4.704832 0 0 4.70357 0 10.500874v108.998252C0 125.298599 4.70357 130 10.500874 130h108.998252C125.298599 130 130 125.29643 130 119.499126V10.500874C130 4.7014 125.300178 0 119.497413 0H10.508537zM2.5 50.5h124.016128",
99
+ stroke: "#3E8EFF",
100
+ "stroke-width": "16",
101
+ "stroke-linecap": "square"
102
+ }),
103
+ t("circle", {
104
+ fill: "#3E8EFF",
105
+ cx: "27",
106
+ cy: "26",
107
+ r: "7"
108
+ }),
109
+ t("circle", {
110
+ fill: "#3E8EFF",
111
+ cx: "51",
112
+ cy: "26",
113
+ r: "7"
114
+ }),
115
+ t("circle", {
116
+ fill: "#3E8EFF",
117
+ cx: "75",
118
+ cy: "26",
119
+ r: "7"
120
+ })
121
+ ], -1)
122
+ ]))) : c("", !0),
123
+ e.type === "linkedin" ? (i(), f(o, {
124
+ key: 1,
125
+ size: 18,
126
+ type: "linkedin",
127
+ class: "linkedin-icon"
128
+ })) : c("", !0),
129
+ e.type === "instagram" ? (i(), a("svg", Y, s[1] || (s[1] = [
130
+ t("path", { d: "M256 49.471c67.266 0 75.233.257 101.8 1.469 24.562 1.121 37.9 5.224 46.778 8.674a78.052 78.052 0 0 1 28.966 18.845 78.052 78.052 0 0 1 18.845 28.966c3.45 8.877 7.554 22.216 8.674 46.778 1.212 26.565 1.469 34.532 1.469 101.8s-.257 75.233-1.469 101.8c-1.121 24.562-5.225 37.9-8.674 46.778a83.427 83.427 0 0 1-47.811 47.811c-8.877 3.45-22.216 7.554-46.778 8.674-26.56 1.212-34.527 1.469-101.8 1.469s-75.237-.257-101.8-1.469c-24.562-1.121-37.9-5.225-46.778-8.674a78.051 78.051 0 0 1-28.966-18.845 78.053 78.053 0 0 1-18.845-28.966c-3.45-8.877-7.554-22.216-8.674-46.778-1.212-26.564-1.469-34.532-1.469-101.8s.257-75.233 1.469-101.8c1.121-24.562 5.224-37.9 8.674-46.778a78.052 78.052 0 0 1 18.847-28.967 78.053 78.053 0 0 1 28.966-18.845c8.877-3.45 22.216-7.554 46.778-8.674 26.565-1.212 34.532-1.469 101.8-1.469m0-45.391c-68.418 0-77 .29-103.866 1.516-26.815 1.224-45.127 5.482-61.151 11.71a123.488 123.488 0 0 0-44.62 29.057A123.488 123.488 0 0 0 17.3 90.982c-6.223 16.025-10.481 34.337-11.7 61.152C4.369 179 4.079 187.582 4.079 256s.29 77 1.521 103.866c1.224 26.815 5.482 45.127 11.71 61.151a123.489 123.489 0 0 0 29.057 44.62 123.486 123.486 0 0 0 44.62 29.057c16.025 6.228 34.337 10.486 61.151 11.71 26.87 1.226 35.449 1.516 103.866 1.516s77-.29 103.866-1.516c26.815-1.224 45.127-5.482 61.151-11.71a128.817 128.817 0 0 0 73.677-73.677c6.228-16.025 10.486-34.337 11.71-61.151 1.226-26.87 1.516-35.449 1.516-103.866s-.29-77-1.516-103.866c-1.224-26.815-5.482-45.127-11.71-61.151a123.486 123.486 0 0 0-29.057-44.62A123.487 123.487 0 0 0 421.018 17.3c-16.025-6.223-34.337-10.481-61.152-11.7C333 4.369 324.418 4.079 256 4.079z" }, null, -1),
131
+ t("path", { d: "M256 126.635A129.365 129.365 0 1 0 385.365 256 129.365 129.365 0 0 0 256 126.635zm0 213.338A83.973 83.973 0 1 1 339.974 256 83.974 83.974 0 0 1 256 339.973z" }, null, -1),
132
+ t("circle", {
133
+ cx: "390.476",
134
+ cy: "121.524",
135
+ r: "30.23"
136
+ }, null, -1)
137
+ ]))) : c("", !0),
138
+ e.type === "facebook" ? (i(), a("svg", J, s[2] || (s[2] = [
139
+ t("path", { d: "M22.675 0H1.325C.593 0 0 .593 0 1.325v21.351C0 23.407.593 24 1.325 24H12.82v-9.294H9.692v-3.622h3.128V8.413c0-3.1 1.893-4.788 4.659-4.788 1.325 0 2.463.099 2.795.143v3.24l-1.918.001c-1.504 0-1.795.715-1.795 1.763v2.313h3.587l-.467 3.622h-3.12V24h6.116c.73 0 1.323-.593 1.323-1.325V1.325C24 .593 23.407 0 22.675 0z" }, null, -1)
140
+ ]))) : c("", !0),
141
+ e.type === "google" ? (i(), a("svg", K, s[3] || (s[3] = [
142
+ t("rect", {
143
+ width: "512",
144
+ height: "512",
145
+ rx: "15%",
146
+ fill: "none"
147
+ }, null, -1),
148
+ t("path", {
149
+ fill: "#5a6886",
150
+ d: "M386 400c45-42 65-112 53-179H260v74h102c-4 24-18 44-38 57z"
151
+ }, null, -1),
152
+ t("path", {
153
+ fill: "#5a6886",
154
+ d: "M90 341a192 192 0 0 0 296 59l-62-48c-53 35-141 22-171-60z"
155
+ }, null, -1),
156
+ t("path", {
157
+ fill: "#5a6886",
158
+ d: "M153 292c-8-25-8-48 0-73l-63-49c-23 46-30 111 0 171z"
159
+ }, null, -1),
160
+ t("path", {
161
+ fill: "#5a6886",
162
+ d: "M153 219c22-69 116-109 179-50l55-54c-78-75-230-72-297 55z"
163
+ }, null, -1)
164
+ ]))) : c("", !0),
165
+ e.type === "reco" ? (i(), a("svg", Z, s[4] || (s[4] = [
166
+ t("path", {
167
+ d: "M17.035792 77.21013c.134576 3.81669.650037 7.69152 1.569666 11.59061 8.363034 35.45799 47.039175 59.7296 88.485526 55.77833L89.860598 67.77959l-72.824806 9.43054zm.973286-12.68806l69.398537-7.67594-9.671508-43.10794C45.59368 17.85816 22.942511 38.77825 18.009081 64.52207zm143.02734-15.81978c-14.905342-21.89837-43.103385-36.14241-73.073905-35.69191L99.84883 55.47005l61.187588-6.76776zm5.240304 9.18169l-63.451888 8.21679 21.060817 75.23232c33.769528-10.10888 54.05118-39.73898 46.562981-71.4878-.976607-4.14067-2.383129-8.13748-4.17191-11.96131zm-54.317558 104.49575C61.065612 167.89817 11.730953 136.16134 1.767118 91.49354-8.196717 46.82575 24.983374 6.14176 75.876925.62332c50.893551-5.51844 100.22821 26.21839 110.192045 70.88619 9.963835 44.66779-23.216255 85.35178-74.109806 90.87022z",
168
+ fill: "#000",
169
+ "fill-rule": "evenodd"
170
+ }, null, -1)
171
+ ]))) : c("", !0)
172
+ ]),
173
+ _: 1
174
+ })
175
+ ], 8, Q)), [
176
+ [u, {
177
+ content: l.tooltipText,
178
+ popperClass: "simple small",
179
+ placement: "top",
180
+ distance: 2
181
+ }]
182
+ ]);
183
+ }
184
+ const te = /* @__PURE__ */ _(G, [["render", ee], ["__scopeId", "data-v-d9ad330a"]]), ne = {
185
+ components: {
186
+ SocialMediaButton: te
187
+ },
188
+ props: {
189
+ text: {
190
+ type: String,
191
+ required: !0
192
+ },
193
+ websites: {
194
+ type: Object,
195
+ default: null
196
+ }
197
+ }
198
+ }, se = ["innerHTML"], ie = { class: "website-wrapper" };
199
+ function ae(n, s, e, g, r, l) {
200
+ const o = h("SocialMediaButton");
201
+ return i(), a("div", null, [
202
+ t("div", {
203
+ class: "quill-format",
204
+ innerHTML: e.text
205
+ }, null, 8, se),
206
+ t("div", ie, [
207
+ e.websites.website ? (i(), f(o, {
208
+ key: 0,
209
+ url: e.websites.website,
210
+ type: "website"
211
+ }, null, 8, ["url"])) : c("", !0),
212
+ e.websites.linkedin ? (i(), f(o, {
213
+ key: 1,
214
+ url: e.websites.linkedin,
215
+ type: "linkedin"
216
+ }, null, 8, ["url"])) : c("", !0),
217
+ e.websites.facebook ? (i(), f(o, {
218
+ key: 2,
219
+ url: e.websites.facebook,
220
+ type: "facebook"
221
+ }, null, 8, ["url"])) : c("", !0),
222
+ e.websites.instagram ? (i(), f(o, {
223
+ key: 3,
224
+ url: e.websites.instagram,
225
+ type: "instagram"
226
+ }, null, 8, ["url"])) : c("", !0),
227
+ e.websites.google ? (i(), f(o, {
228
+ key: 4,
229
+ url: e.websites.google,
230
+ type: "google"
231
+ }, null, 8, ["url"])) : c("", !0),
232
+ e.websites.reco ? (i(), f(o, {
233
+ key: 5,
234
+ url: e.websites.reco,
235
+ type: "reco"
236
+ }, null, 8, ["url"])) : c("", !0)
237
+ ])
238
+ ]);
239
+ }
240
+ const oe = /* @__PURE__ */ _(ne, [["render", ae], ["__scopeId", "data-v-62fcb46b"]]), re = {
241
+ name: "DocPresentationCertificates",
242
+ i18nOptions: {
243
+ namespaces: "components",
244
+ messages: {
245
+ en: {
246
+ certificateDisclaimer: "The sender specifies their own certificates. On each webpage it is often possible to verify membership."
247
+ },
248
+ sv: {
249
+ certificateDisclaimer: "Företagen lägger själva upp sina certifikat. På respektive webbplats går det ofta att verifiera medlemskap."
250
+ }
251
+ }
252
+ },
253
+ components: {
254
+ CCallout: V
255
+ },
256
+ props: {
257
+ content: {
258
+ type: Array,
259
+ default: () => []
260
+ },
261
+ showDisclaimer: {
262
+ type: Boolean,
263
+ default: !1
264
+ }
265
+ },
266
+ data() {
267
+ return {
268
+ expandCert: null
269
+ };
270
+ }
271
+ }, le = ["onClick"], ce = { class: "cert-wrapper-title" }, de = { class: "cert-title" }, ue = {
272
+ key: 0,
273
+ class: "cert-description"
274
+ }, me = ["href"];
275
+ function he(n, s, e, g, r, l) {
276
+ const o = h("Animation"), d = h("CCallout");
277
+ return i(), a("div", null, [
278
+ (i(!0), a(y, null, C(e.content, (u, b) => (i(), a("div", {
279
+ key: b,
280
+ class: "cert-container"
281
+ }, [
282
+ t("div", {
283
+ class: k([[r.expandCert === b ? "active" : ""], "cert-wrapper"]),
284
+ onClick: (P) => r.expandCert = r.expandCert === b ? null : b
285
+ }, [
286
+ t("div", {
287
+ style: w({ backgroundImage: "url(" + u.img + ")" }),
288
+ class: "cert-img"
289
+ }, null, 4),
290
+ t("div", ce, [
291
+ t("div", de, m(u.title), 1)
292
+ ]),
293
+ s[0] || (s[0] = t("div", { class: "cert-toggle" }, [
294
+ t("svg", {
295
+ width: "13",
296
+ height: "10",
297
+ viewBox: "0 0 33 19",
298
+ xmlns: "http://www.w3.org/2000/svg"
299
+ }, [
300
+ t("path", {
301
+ d: "M2.357864 2.61571l14.142135 14.142135L30.642135 2.61571",
302
+ "stroke-width": "4",
303
+ stroke: "#929cb7",
304
+ fill: "none",
305
+ "fill-rule": "evenodd",
306
+ "stroke-linecap": "round",
307
+ "stroke-linejoin": "round"
308
+ })
309
+ ])
310
+ ], -1))
311
+ ], 10, le),
312
+ p(o, null, {
313
+ default: v(() => [
314
+ r.expandCert === b ? (i(), a("div", ue, [
315
+ t("div", null, m(u.description), 1),
316
+ u.website ? (i(), a("a", {
317
+ key: 0,
318
+ href: u.website.toLowerCase().startsWith("http") ? u.website : `//${u.website}`,
319
+ target: "_blank",
320
+ rel: "noopener",
321
+ class: "cert-link"
322
+ }, [
323
+ s[1] || (s[1] = t("svg", {
324
+ name: "new-window",
325
+ width: "15",
326
+ height: "15",
327
+ viewBox: "0 0 113 113",
328
+ xmlns: "http://www.w3.org/2000/svg"
329
+ }, [
330
+ t("g", {
331
+ stroke: "#2143ff",
332
+ "stroke-width": "14.4",
333
+ fill: "none",
334
+ "fill-rule": "evenodd",
335
+ "stroke-linecap": "round"
336
+ }, [
337
+ t("path", {
338
+ d: "M70.986736 7.947575h33.854117-33.854117zM54.374951 58.413476l50.465902-50.465901L54.37495 58.413476zM105 40l-.159147-32.052425L105 40z",
339
+ "stroke-linejoin": "round"
340
+ }),
341
+ t("path", { d: "M48.476363 8H26.00398C16.060657 8 8 16.05386 8 26.007354v61.389452c0 9.945187 8.06184 18.007354 18.003453 18.007354h60.993094C96.93958 105.40416 105 97.346548 105 87.394835V62.498611" })
342
+ ])
343
+ ], -1)),
344
+ x(" " + m(n.$t("_common:website", { postProcess: "capitalize" })), 1)
345
+ ], 8, me)) : c("", !0)
346
+ ])) : c("", !0)
347
+ ]),
348
+ _: 2
349
+ }, 1024)
350
+ ]))), 128)),
351
+ e.showDisclaimer ? (i(), f(d, {
352
+ key: 0,
353
+ size: "small"
354
+ }, {
355
+ default: v(() => [
356
+ x(m(n.$t("certificateDisclaimer")), 1)
357
+ ]),
358
+ _: 1
359
+ })) : c("", !0)
360
+ ]);
361
+ }
362
+ const pe = /* @__PURE__ */ _(re, [["render", he], ["__scopeId", "data-v-415c5c38"]]), ge = {
363
+ name: "AvatarContact",
364
+ i18nOptions: {
365
+ namespaces: "AvatarContact",
366
+ messages: {
367
+ en: {
368
+ bestRegards: "Best regards, "
369
+ },
370
+ sv: {
371
+ bestRegards: "Hälsningar, "
372
+ }
373
+ }
374
+ },
375
+ props: {
376
+ avatarUrl: {
377
+ type: String,
378
+ default: null
379
+ },
380
+ name: {
381
+ type: String,
382
+ default: null
383
+ },
384
+ cellphone: {
385
+ type: [Number, String],
386
+ default: null
387
+ },
388
+ email: {
389
+ type: [Number, String],
390
+ default: null
391
+ }
392
+ }
393
+ }, fe = { class: "flex w-full" }, ve = { key: 0 }, _e = { class: "flex w-full flex-grow" }, ye = { style: { "font-size": "calc(calc(1 * var(--rem)) - 1px)", color: "#73758c", "font-weight": "500" } }, be = { style: { "font-size": "calc(calc(1 * var(--rem)) + 1px)", "font-weight": "500" } }, we = {
394
+ key: 0,
395
+ class: "contact-wrapper"
396
+ }, ke = ["href"], Ce = ["href"];
397
+ function xe(n, s, e, g, r, l) {
398
+ const o = h("CButton"), d = D("tooltip");
399
+ return i(), a("div", fe, [
400
+ e.avatarUrl ? (i(), a("div", ve, [
401
+ t("div", {
402
+ style: w([{ backgroundImage: `url(${e.avatarUrl})` }, { width: "45px", height: "45px", "border-radius": "50%", "background-position": "center", "background-size": "cover", "margin-right": "calc(1.2 * var(--rem))" }])
403
+ }, null, 4)
404
+ ])) : c("", !0),
405
+ t("div", _e, [
406
+ t("div", null, [
407
+ t("div", ye, m(n.$t("bestRegards")), 1),
408
+ t("div", be, m(e.name), 1)
409
+ ]),
410
+ e.cellphone || e.email ? (i(), a("div", we, [
411
+ e.cellphone ? B((i(), a("a", {
412
+ key: 0,
413
+ href: `tel:${e.cellphone}`
414
+ }, [
415
+ p(o, {
416
+ circle: "",
417
+ type: "none",
418
+ pattern: "secondary",
419
+ icon: "phone",
420
+ class: "text-gray-400"
421
+ })
422
+ ], 8, ke)), [
423
+ [d, {
424
+ content: e.cellphone,
425
+ autoHide: !1
426
+ }]
427
+ ]) : c("", !0),
428
+ e.email ? B((i(), a("a", {
429
+ key: 1,
430
+ href: `mailto:${e.email}`
431
+ }, [
432
+ p(o, {
433
+ circle: "",
434
+ type: "none",
435
+ pattern: "secondary",
436
+ icon: "email",
437
+ class: "text-gray-400"
438
+ })
439
+ ], 8, Ce)), [
440
+ [d, {
441
+ content: e.email,
442
+ autoHide: !1
443
+ }]
444
+ ]) : c("", !0)
445
+ ])) : c("", !0)
446
+ ])
447
+ ]);
448
+ }
449
+ const Me = /* @__PURE__ */ _(ge, [["render", xe], ["__scopeId", "data-v-9f5d2e66"]]), Ie = {
450
+ i18nOptions: {
451
+ namespaces: "DocPresentationMessageModal",
452
+ messages: {
453
+ en: {
454
+ title: "Personal message",
455
+ placeholder: "Write a personal message for your client. Increase your chances of acquiring the job by making it personal, putting the client in focus."
456
+ },
457
+ sv: {
458
+ title: "Personligt meddelande",
459
+ placeholder: "Skriv en personlig hälsning till din kund. Öka dina vinstchanser genom att göra den personlig och sätt din kund i fokus."
460
+ }
461
+ }
462
+ },
463
+ name: "DocPresentationMessageModal",
464
+ components: {
465
+ TextEditor: W
466
+ },
467
+ emits: ["close"],
468
+ provide: () => ({ viewSettings: { canEdit: !0 } }),
469
+ props: {
470
+ _document: {
471
+ type: Object,
472
+ default: () => ({})
473
+ },
474
+ setFormValue: {
475
+ type: Function,
476
+ required: !0
477
+ },
478
+ removeFormValue: {
479
+ type: Function,
480
+ required: !0
481
+ }
482
+ },
483
+ data() {
484
+ return {
485
+ placeholder: "Skriv en personlig hälsning till din kund. Nämn exempelvis att du är glad över att få möjligheten och att ni har goda erfarenheter av att göra liknande arbeten.",
486
+ internalValue: ""
487
+ };
488
+ },
489
+ computed: {
490
+ ...A({
491
+ isPostingDocument: "documents2/isPosting"
492
+ })
493
+ },
494
+ created() {
495
+ this.internalValue = this._document.personalMessage || "";
496
+ },
497
+ methods: {
498
+ ...O({
499
+ saveDocument: S.DO_SAVE_DYNDOC,
500
+ // DO SAVE ACTION TO AVOID FORM CLEAR
501
+ loadDocumentForm: S.LOAD_DOCUMENT2_FORM
502
+ }),
503
+ async saveMessage() {
504
+ if (this.internalValue ? this.setFormValue({
505
+ key: "data.personalMessage",
506
+ value: this.internalValue
507
+ }) : this.removeFormValue("data.personalMessage"), this._document.id) {
508
+ const n = await this.saveDocument();
509
+ this.loadDocumentForm({ documentId: n });
510
+ }
511
+ this.$emit("close");
512
+ }
513
+ }
514
+ }, Be = {
515
+ class: "bg-white",
516
+ style: { padding: "calc(2 * var(--rem))", "border-radius": "0.75em" }
517
+ }, Pe = { style: { "font-size": "calc(calc(1 * var(--rem)) + 4px)", "font-weight": "900", "margin-bottom": "calc(1 * var(--rem))" } };
518
+ function Se(n, s, e, g, r, l) {
519
+ const o = h("TextEditor"), d = h("CButton");
520
+ return i(), a("div", Be, [
521
+ t("div", Pe, m(n.$t("title")), 1),
522
+ p(o, {
523
+ ref: "textEditor",
524
+ modelValue: r.internalValue,
525
+ "onUpdate:modelValue": s[0] || (s[0] = (u) => r.internalValue = u),
526
+ extensions: {
527
+ blockquote: !0,
528
+ highlight: !0,
529
+ image: !0,
530
+ table: !1
531
+ },
532
+ placeholder: n.$t("placeholder"),
533
+ style: { "margin-bottom": "1em" }
534
+ }, null, 8, ["modelValue", "placeholder"]),
535
+ p(d, {
536
+ loading: n.isPostingDocument,
537
+ type: "primary",
538
+ expanded: "",
539
+ onClick: l.saveMessage
540
+ }, {
541
+ default: v(() => [
542
+ x(m(n.$t("_common:save")), 1)
543
+ ]),
544
+ _: 1
545
+ }, 8, ["loading", "onClick"])
546
+ ]);
547
+ }
548
+ const $e = /* @__PURE__ */ _(Ie, [["render", Se]]), ze = {
549
+ i18nOptions: {
550
+ namespaces: "components",
551
+ messages: {
552
+ en: {
553
+ changeMessage: "Change message",
554
+ addMessage: "Add a message",
555
+ writeMessage: "Write message",
556
+ pmPlaceholder: "Write a personal message for your client. Increase your chances of acquiring the job by making it personal, putting the client in focus."
557
+ },
558
+ sv: {
559
+ changeMessage: "Ändra meddelande",
560
+ addMessage: "Lägg till en hälsning",
561
+ writeMessage: "Skriv en hälsning",
562
+ pmPlaceholder: "Skriv en personlig hälsning till din kund. Öka dina vinstchanser genom att göra den personlig och sätt din kund i fokus."
563
+ }
564
+ }
565
+ },
566
+ name: "DocPresentationMessage",
567
+ components: {
568
+ AvatarContact: Me,
569
+ CCallout: V,
570
+ IsPremium: $(
571
+ () => import("./index-E32WgUp9.js").then((n) => n.i).then((n) => n.IsPremium)
572
+ ),
573
+ IsPremiumPreStep: $(
574
+ () => import("./index-E32WgUp9.js").then((n) => n.i).then((n) => n.IsPremiumPreStep)
575
+ )
576
+ },
577
+ mixins: [T([])],
578
+ props: {
579
+ content: {
580
+ type: String,
581
+ default: ""
582
+ },
583
+ avatar: {
584
+ type: Object,
585
+ default: () => null
586
+ },
587
+ creator: {
588
+ type: Object,
589
+ default: () => ({})
590
+ },
591
+ editable: {
592
+ type: Boolean,
593
+ default: !1
594
+ }
595
+ },
596
+ methods: {
597
+ openEditModal() {
598
+ this.$modal.show(
599
+ $e,
600
+ {
601
+ _document: this._document,
602
+ setFormValue: this.viewSettings.setFormValue,
603
+ removeFormValue: this.viewSettings.removeFormValue
604
+ },
605
+ {
606
+ adaptive: !0,
607
+ scrollable: !0,
608
+ height: "auto",
609
+ width: "90%",
610
+ maxWidth: 450
611
+ }
612
+ );
613
+ }
614
+ }
615
+ }, De = { class: "presentation-message" }, Fe = ["innerHTML"], Te = {
616
+ key: 1,
617
+ style: { "margin-top": "calc(2 * var(--rem))" }
618
+ };
619
+ function Ve(n, s, e, g, r, l) {
620
+ const o = h("CButton"), d = h("IsPremiumPreStep"), u = h("IsPremium"), b = h("CCallout"), P = h("AvatarContact");
621
+ return i(), a("div", De, [
622
+ e.content ? (i(), a("div", {
623
+ key: 0,
624
+ class: "quill-format",
625
+ innerHTML: e.content
626
+ }, null, 8, Fe)) : c("", !0),
627
+ e.editable && e.content ? (i(), a("div", Te, [
628
+ p(o, {
629
+ type: "none",
630
+ pattern: "secondary",
631
+ size: "normal",
632
+ "icon-left": "edit",
633
+ onClick: l.openEditModal
634
+ }, {
635
+ default: v(() => [
636
+ x(m(n.$t("changeMessage")), 1)
637
+ ]),
638
+ _: 1
639
+ }, 8, ["onClick"])
640
+ ])) : !e.content && e.editable ? (i(), f(b, {
641
+ key: 2,
642
+ title: n.$t("addMessage")
643
+ }, {
644
+ default: v(() => [
645
+ t("div", null, m(n.$t("pmPlaceholder")), 1),
646
+ p(u, null, {
647
+ default: v(({ allowPremiumFeatures: E }) => [
648
+ p(d, { feature: "personalMessage" }, {
649
+ default: v(({ onClick: j }) => [
650
+ p(o, {
651
+ type: "secondary",
652
+ size: "normal",
653
+ style: { "margin-top": "calc(1.5 * var(--rem))" },
654
+ onClick: (ht) => E ? l.openEditModal() : j({ callback: l.openEditModal })
655
+ }, {
656
+ default: v(() => [
657
+ x(m(n.$t("writeMessage")), 1)
658
+ ]),
659
+ _: 2
660
+ }, 1032, ["onClick"])
661
+ ]),
662
+ _: 2
663
+ }, 1024)
664
+ ]),
665
+ _: 1
666
+ })
667
+ ]),
668
+ _: 1
669
+ }, 8, ["title"])) : c("", !0),
670
+ e.avatar ? (i(), f(P, {
671
+ key: 3,
672
+ "avatar-url": e.creator.image,
673
+ name: e.creator.name,
674
+ cellphone: e.creator.cellphone,
675
+ email: e.creator.email,
676
+ style: { "margin-top": "calc(2.5 * var(--rem))" }
677
+ }, null, 8, ["avatar-url", "name", "cellphone", "email"])) : c("", !0)
678
+ ]);
679
+ }
680
+ const Ee = /* @__PURE__ */ _(ze, [["render", Ve], ["__scopeId", "data-v-56104e32"]]), je = {
681
+ name: "ModalReference",
682
+ emits: ["close"],
683
+ mixins: [N],
684
+ props: {
685
+ title: {
686
+ type: String,
687
+ required: !0
688
+ },
689
+ content: {
690
+ type: String,
691
+ required: !0
692
+ },
693
+ transition: {
694
+ type: String,
695
+ required: !0
696
+ },
697
+ /**
698
+ * Array with full url paths
699
+ */
700
+ images: {
701
+ type: Array,
702
+ required: !0
703
+ },
704
+ show: {
705
+ type: Boolean,
706
+ required: !0
707
+ }
708
+ },
709
+ data() {
710
+ return {
711
+ currIndex: 0
712
+ };
713
+ }
714
+ }, Ae = {
715
+ key: 0,
716
+ class: "photo-container duration-300ms"
717
+ }, Oe = { class: "relative" }, qe = {
718
+ key: 0,
719
+ class: "relative overflow-hidden"
720
+ }, He = { class: "absolute inset-0 flex items-center justify-between p-1" }, Le = { class: "absolute bottom-2 left-0 right-0 flex justify-center gap-2" }, Ue = { class: "content" }, Re = { class: "text-lg font-bold" }, We = ["innerHTML"];
721
+ function Ne(n, s, e, g, r, l) {
722
+ const o = h("CButton");
723
+ return i(), f(F, { name: e.transition }, {
724
+ default: v(() => [
725
+ e.show ? (i(), a("div", Ae, [
726
+ n.mq === "sm" ? (i(), a("div", {
727
+ key: 0,
728
+ circle: "",
729
+ class: "reference-close-button",
730
+ onClick: s[0] || (s[0] = (d) => n.$emit("close"))
731
+ }, s[3] || (s[3] = [
732
+ t("svg", {
733
+ xmlns: "http://www.w3.org/2000/svg",
734
+ width: "22",
735
+ height: "22",
736
+ viewBox: "0 0 24 24",
737
+ fill: "none",
738
+ stroke: "#FFF",
739
+ "stroke-width": "2.5",
740
+ "stroke-linecap": "round",
741
+ "stroke-linejoin": "round"
742
+ }, [
743
+ t("line", {
744
+ x1: "18",
745
+ y1: "6",
746
+ x2: "6",
747
+ y2: "18"
748
+ }),
749
+ t("line", {
750
+ x1: "6",
751
+ y1: "6",
752
+ x2: "18",
753
+ y2: "18"
754
+ })
755
+ ], -1)
756
+ ]))) : c("", !0),
757
+ t("div", Oe, [
758
+ (i(!0), a(y, null, C(e.images, (d, u) => (i(), a(y, { key: u }, [
759
+ r.currIndex === u ? (i(), a("div", qe, [
760
+ t("div", {
761
+ style: w([{ backgroundImage: `url(${d})` }]),
762
+ class: "image-background-fill"
763
+ }, null, 4),
764
+ t("div", {
765
+ style: w([{ backgroundImage: `url(${d}` }]),
766
+ class: "image"
767
+ }, null, 4)
768
+ ])) : c("", !0)
769
+ ], 64))), 128)),
770
+ e.images.length > 1 ? (i(), a(y, { key: 0 }, [
771
+ t("div", He, [
772
+ p(o, {
773
+ class: "bg-white/10 text-gray-100",
774
+ icon: "chevron-left",
775
+ circle: "",
776
+ type: "none",
777
+ pattern: "tertiary",
778
+ "icon-props": { size: 24 },
779
+ onClick: s[1] || (s[1] = (d) => r.currIndex - 1 < 0 ? r.currIndex = e.images.length - 1 : r.currIndex--)
780
+ }),
781
+ p(o, {
782
+ class: "bg-white/10 text-gray-100",
783
+ icon: "chevron-right",
784
+ circle: "",
785
+ type: "none",
786
+ pattern: "tertiary",
787
+ "icon-props": { size: 24 },
788
+ onClick: s[2] || (s[2] = (d) => r.currIndex + 1 > e.images.length - 1 ? r.currIndex = 0 : r.currIndex++)
789
+ })
790
+ ]),
791
+ t("div", Le, [
792
+ (i(!0), a(y, null, C(e.images, (d, u) => (i(), a("div", {
793
+ key: "dot" + u,
794
+ class: k([[r.currIndex === u ? "bg-white" : "bg-white/50"], "h-1.5 w-1.5 rounded-full"])
795
+ }, null, 2))), 128))
796
+ ])
797
+ ], 64)) : c("", !0)
798
+ ]),
799
+ t("div", Ue, [
800
+ t("div", Re, m(e.title), 1),
801
+ t("div", {
802
+ class: "text-base",
803
+ innerHTML: e.content
804
+ }, null, 8, We)
805
+ ])
806
+ ])) : c("", !0)
807
+ ]),
808
+ _: 1
809
+ }, 8, ["name"]);
810
+ }
811
+ const Ge = /* @__PURE__ */ _(je, [["render", Ne], ["__scopeId", "data-v-ef137c26"]]), z = q.api.baseUrl, Qe = {
812
+ props: {
813
+ albums: {
814
+ type: Array,
815
+ default: null
816
+ }
817
+ },
818
+ methods: {
819
+ show(n) {
820
+ this.$nextTick(() => {
821
+ this.$modal.show(
822
+ Ge,
823
+ {
824
+ title: n.name,
825
+ content: n.description || "",
826
+ transition: "fade-in-slide-up",
827
+ images: n.CompanyReferenceItems.map(
828
+ (s) => s.Image.href || `${z}/file/${s.Image.publicId}/download`
829
+ ),
830
+ show: !0
831
+ },
832
+ {
833
+ adaptive: !0,
834
+ height: "auto",
835
+ scrollable: !0,
836
+ classes: "overflow-visible",
837
+ width: "90%",
838
+ maxWidth: 600,
839
+ transition: ""
840
+ }
841
+ );
842
+ });
843
+ },
844
+ getThumbnailPath(n) {
845
+ const s = n.CompanyReferenceItems[0].Thumbnail;
846
+ return s.href || `${z}/file/${s.publicId}/download`;
847
+ }
848
+ }
849
+ }, Xe = { class: "album-wrapper" }, Ye = ["onClick"], Je = { class: "ref-wrapper" }, Ke = { class: "ref-bg-wrapper" }, Ze = { class: "ref-title" }, et = { class: "ref-data" };
850
+ function tt(n, s, e, g, r, l) {
851
+ return i(), a("div", Xe, [
852
+ (i(!0), a(y, null, C(e.albums, (o, d) => (i(), a("div", {
853
+ key: d,
854
+ style: { flex: "1 0 50%" },
855
+ onClick: (u) => l.show(o)
856
+ }, [
857
+ t("div", Je, [
858
+ t("div", Ke, [
859
+ t("div", {
860
+ style: w({ backgroundImage: `url(${l.getThumbnailPath(o)})` }),
861
+ class: "ref-bg"
862
+ }, null, 4)
863
+ ]),
864
+ t("div", Ze, m(o.name), 1),
865
+ t("div", et, m(n.$tc("image", { count: o.CompanyReferenceItems.length })), 1)
866
+ ])
867
+ ], 8, Ye))), 128))
868
+ ]);
869
+ }
870
+ const nt = /* @__PURE__ */ _(Qe, [["render", tt], ["__scopeId", "data-v-5e645a95"]]), st = {
871
+ i18nOptions: {
872
+ namespaces: "Presentation",
873
+ messages: {
874
+ en: {
875
+ personalMessage: "Personal message"
876
+ },
877
+ sv: {
878
+ personalMessage: "Personligt meddelande"
879
+ }
880
+ }
881
+ },
882
+ name: "Presentation",
883
+ components: {
884
+ DocPresentationMessage: Ee,
885
+ DocPresentationPhotos: nt,
886
+ DocPresentationAboutUs: oe,
887
+ DocPresentationCertificates: pe
888
+ },
889
+ mixins: [T()],
890
+ setup() {
891
+ return { docWidth: R() };
892
+ },
893
+ data() {
894
+ return {
895
+ activeTab: 0,
896
+ certificates: [],
897
+ references: [],
898
+ about: ""
899
+ };
900
+ },
901
+ computed: {
902
+ company() {
903
+ return M(this, "_document._doc.company", {});
904
+ },
905
+ creator() {
906
+ return M(this, "_document.sender.user", {});
907
+ },
908
+ message() {
909
+ return M(this, "_document.personalMessage", "");
910
+ },
911
+ presentationBlocks() {
912
+ const n = [];
913
+ try {
914
+ if (this.message || this.canEdit) {
915
+ const s = {
916
+ title: this.$t("personalMessage").capitalize(),
917
+ component: "DocPresentationMessage",
918
+ style: {
919
+ backgroundImage: "url(https://images.unsplash.com/photo-1471107340929-a87cd0f5b5f3?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjEyMDd9&s=395debe4f66b27cd8fb346d73cffb70c&auto=format&fit=crop&w=1932&q=80)"
920
+ },
921
+ props: {
922
+ content: this.message || "",
923
+ avatar: {
924
+ name: this.creator.name,
925
+ image: this.creator.avatar,
926
+ cellphone: this.creator.cellphone,
927
+ email: this.creator.email
928
+ },
929
+ creator: this.creator,
930
+ editable: this.canEdit
931
+ }
932
+ };
933
+ n.push(s);
934
+ }
935
+ } catch {
936
+ }
937
+ try {
938
+ if (this.about) {
939
+ const {
940
+ website: s,
941
+ recoUrl: e,
942
+ instagramUrl: g,
943
+ linkedinUrl: r,
944
+ facebookUrl: l,
945
+ googleUrl: o
946
+ } = this.company, d = {
947
+ title: this.$t("_common:aboutUs").capitalize(),
948
+ component: "DocPresentationAboutUs",
949
+ style: {
950
+ backgroundImage: "url(https://images.unsplash.com/photo-1452860606245-08befc0ff44b?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjEyMDd9&s=b41f5ead560bfa3348de161f8174e35d&auto=format&fit=crop&w=1350&q=80)"
951
+ },
952
+ props: {
953
+ text: this.about,
954
+ websites: {
955
+ website: s,
956
+ linkedin: r,
957
+ reco: e,
958
+ instagram: g,
959
+ facebook: l,
960
+ google: o
961
+ }
962
+ }
963
+ };
964
+ n.push(d);
965
+ }
966
+ } catch {
967
+ }
968
+ try {
969
+ if (this.certificates && this.certificates.length) {
970
+ const s = this.certificates.map(
971
+ ({ name: g, description: r, imageUrl: l, website: o }) => ({
972
+ title: g,
973
+ description: r,
974
+ img: l,
975
+ website: o
976
+ })
977
+ ), e = {
978
+ title: this.$t("_common:certificate", { count: 0 }).capitalize(),
979
+ component: "DocPresentationCertificates",
980
+ style: {
981
+ backgroundImage: "url(https://t4.ftcdn.net/jpg/01/15/80/49/240_F_115804912_5RdHBXm7aGBzQGSGaO6g0kbwlGiXNKBI.jpg)"
982
+ },
983
+ props: {
984
+ content: s,
985
+ showDisclaimer: !0
986
+ // TODO: How to only enable on client route
987
+ }
988
+ };
989
+ n.push(e);
990
+ }
991
+ } catch {
992
+ }
993
+ try {
994
+ if (this.references && this.references.length) {
995
+ const s = {
996
+ title: this.$t("_common:reference", { count: 0 }).capitalize(),
997
+ component: "DocPresentationPhotos",
998
+ style: {
999
+ backgroundImage: "url(https://t4.ftcdn.net/jpg/01/04/71/39/240_F_104713904_IXEtofsNpmsg5ZAjYjiC2brHvnFrsNY0.jpg)"
1000
+ },
1001
+ props: {
1002
+ albums: this.references
1003
+ }
1004
+ };
1005
+ n.push(s);
1006
+ }
1007
+ } catch {
1008
+ }
1009
+ return n;
1010
+ },
1011
+ activeBlock() {
1012
+ return this.presentationBlocks[this.activeTab];
1013
+ },
1014
+ isSmallScreen() {
1015
+ return this.docWidth <= 576;
1016
+ }
1017
+ },
1018
+ created() {
1019
+ this.fetchCompanyData();
1020
+ },
1021
+ methods: {
1022
+ async fetchCompanyData() {
1023
+ if (!this.company.publicId) return;
1024
+ const { data: n = [] } = await I.getCertificates(
1025
+ this.company.publicId
1026
+ ), { data: s = [] } = await I.getReferences(
1027
+ this.company.publicId
1028
+ ), { data: e } = await I.get(
1029
+ this.company.publicId
1030
+ );
1031
+ this.certificates = n, this.references = s, this.about = M(e, "company.CompanyBranding.about", "");
1032
+ }
1033
+ }
1034
+ }, it = {
1035
+ key: 0,
1036
+ class: "relative flex w-full snap-x gap-2 overflow-x-auto px-4"
1037
+ }, at = ["onClick"], ot = { class: "presentation-button-title" }, rt = {
1038
+ class: "no-drag flex w-full justify-between",
1039
+ style: { position: "relative" }
1040
+ }, lt = { class: "presentation-title" }, ct = {
1041
+ key: 0,
1042
+ style: { flex: "1 0 180px", "padding-top": "calc(27px + 21px)" }
1043
+ }, dt = ["onClick"], ut = { class: "presentation-button-title" };
1044
+ function mt(n, s, e, g, r, l) {
1045
+ return l.presentationBlocks.length ? (i(), a("section", {
1046
+ key: 0,
1047
+ class: k([[{ sm: l.isSmallScreen }], "presentation font-inter"])
1048
+ }, [
1049
+ l.isSmallScreen ? (i(), a("div", it, [
1050
+ (i(!0), a(y, null, C(l.presentationBlocks, (o, d) => (i(), a("div", {
1051
+ key: d,
1052
+ class: k([[{ active: r.activeTab === d }], "presentation-button slide-item snap-center"]),
1053
+ onClick: (u) => r.activeTab = d
1054
+ }, [
1055
+ t("div", {
1056
+ style: w([o.style]),
1057
+ class: "presentation-button-bg"
1058
+ }, null, 4),
1059
+ t("div", ot, m(o.title), 1)
1060
+ ], 10, at))), 128))
1061
+ ])) : c("", !0),
1062
+ t("div", rt, [
1063
+ t("div", {
1064
+ class: k([[{ sm: l.isSmallScreen }], "presentation-content-wrapper"])
1065
+ }, [
1066
+ p(F, { name: "slide-fade" }, {
1067
+ default: v(() => [
1068
+ l.activeBlock ? (i(), a("div", {
1069
+ key: r.activeTab,
1070
+ class: "presentation-wrapper"
1071
+ }, [
1072
+ t("div", lt, m(l.activeBlock.title), 1),
1073
+ (i(), f(U(l.activeBlock.component), H(L({ ...l.activeBlock.props, _document: n._document })), null, 16))
1074
+ ])) : c("", !0)
1075
+ ]),
1076
+ _: 1
1077
+ })
1078
+ ], 2),
1079
+ l.isSmallScreen ? c("", !0) : (i(), a("div", ct, [
1080
+ (i(!0), a(y, null, C(l.presentationBlocks, (o, d) => (i(), a("div", {
1081
+ key: d,
1082
+ class: k([[{ active: r.activeTab === d }], "presentation-button"]),
1083
+ onClick: (u) => r.activeTab = d
1084
+ }, [
1085
+ t("div", {
1086
+ style: w([o.style]),
1087
+ class: "presentation-button-bg"
1088
+ }, null, 4),
1089
+ t("div", ut, m(o.title), 1)
1090
+ ], 10, dt))), 128))
1091
+ ]))
1092
+ ])
1093
+ ], 2)) : c("", !0);
1094
+ }
1095
+ const bt = /* @__PURE__ */ _(st, [["render", mt], ["__scopeId", "data-v-c448b612"]]);
1096
+ export {
1097
+ bt as default
1098
+ };