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

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-DRcy9Dqb.js +101 -0
  6. package/dist/AnswerModal-Dc3cgkap.js +3291 -0
  7. package/dist/AttachmentItem-Bef5zdHr.js +171 -0
  8. package/dist/BaseUpload--paElAyr.js +2472 -0
  9. package/dist/BlockMedia-DbVE3vsb.js +103 -0
  10. package/dist/CCallout-81NkOge7.js +104 -0
  11. package/dist/{CCurrencyDropdown-qH-3m2eP.js → CCurrencyDropdown-M3hi1VVi.js} +91 -49
  12. package/dist/CDropdownItem-DvaU14-V.js +749 -0
  13. package/dist/CFormField.vue_vue_type_script_setup_true_lang-B4s_Zfsp.js +292 -0
  14. package/dist/{CPhoneFormat-CfQayFxw.js → CPhoneFormat-BBQ_UIc_.js} +13 -21
  15. package/dist/CPhoneInput-Dw_LJDgc.js +207 -0
  16. package/dist/CPriceInput-BfWZZv0f.js +140 -0
  17. package/dist/CSelect-B1AAIFbK.js +98 -0
  18. package/dist/CSkeleton.vue_vue_type_script_setup_true_lang-D56L_PYT.js +51 -0
  19. package/dist/ClientAutocomplete-D5veIKyZ.js +532 -0
  20. package/dist/ClientModal-D8_TPzkv.js +1181 -0
  21. package/dist/ColorPicker-C0OahiVg.js +1408 -0
  22. package/dist/CompanyModal-CjzwQU4B.js +250 -0
  23. package/dist/ContentWrapper-DrmiaFOz.js +265 -0
  24. package/dist/CoverBlockSettings-C9DWvA-C.js +861 -0
  25. package/dist/DocAnswer-BEsvAMEp.js +33 -0
  26. package/dist/DocDetails--LO0-S5d.js +448 -0
  27. package/dist/DocForm-D6_tGw06.js +6748 -0
  28. package/dist/DocFormSend-CdFL6rOD.js +171 -0
  29. package/dist/DocLinks-CIQFUh7c.js +36 -0
  30. package/dist/DocModalBase-DtPJK9sp.js +29 -0
  31. package/dist/DocPrint-qX88Ue2I.js +399 -0
  32. package/dist/DocReceipt-BbXoCmpz.js +341 -0
  33. package/dist/DocSendReminder-DZqOkd63.js +181 -0
  34. package/dist/DocTextEditor-Cw-Skmd4.js +19413 -0
  35. package/dist/DocTimeline-CdbSOVD1.js +537 -0
  36. package/dist/DocumentClient-DtTv7gkF.js +90 -0
  37. package/dist/DocumentLayout-BRfEjoYq.js +1368 -0
  38. package/dist/DocumentLogotype-CUNzyewq.js +162 -0
  39. package/dist/DocumentVoided-CgDt-JFI.js +33 -0
  40. package/dist/EmbedInput-rPvTnpXn.js +157 -0
  41. package/dist/EmbedSettings-BtmFxYGB.js +103 -0
  42. package/dist/ErrorCallout-B6YrdUsG.js +34 -0
  43. package/dist/FilePreviewModal-BfIqIIbb.js +202 -0
  44. package/dist/Flag-CE3K7-8a.js +41 -0
  45. package/dist/HeaderSettings-5QR7MmVf.js +720 -0
  46. package/dist/ImageSelectModal-E3hGi8ty.js +119 -0
  47. package/dist/ImageUploadWrapper-BaexFAAh.js +1585 -0
  48. package/dist/Index--gv5fH24.js +201 -0
  49. package/dist/{Index-D4XgxmbD.js → Index-B3ycPjAI.js} +10 -18
  50. package/dist/Index-B7ECpXAa.js +28 -0
  51. package/dist/Index-BIXfUsHH.js +52 -0
  52. package/dist/Index-BM658CCq.js +93 -0
  53. package/dist/{Index--qPMWUMT.js → Index-B_DCM_bL.js} +48 -61
  54. package/dist/Index-BcMATT2_.js +47 -0
  55. package/dist/Index-BpWFU3Td.js +68 -0
  56. package/dist/Index-BulSI5iO.js +38 -0
  57. package/dist/Index-CHInIRw5.js +228 -0
  58. package/dist/Index-COYqsxs9.js +25 -0
  59. package/dist/Index-CSGk060H.js +1098 -0
  60. package/dist/Index-CV2O2fWT.js +21 -0
  61. package/dist/{Index-Bu0MGrj6.js → Index-CXqdBSZ3.js} +313 -206
  62. package/dist/Index-CavttI66.js +126 -0
  63. package/dist/Index-CbZ65-O3.js +629 -0
  64. package/dist/Index-CqrTij2j.js +70 -0
  65. package/dist/Index-CrsGxDWC.js +16 -0
  66. package/dist/Index-CxY5Ii6K.js +49 -0
  67. package/dist/Index-D7Z2w9cd.js +163 -0
  68. package/dist/Index-D7ixmzBH.js +76 -0
  69. package/dist/Index-D7pzv-AR.js +74 -0
  70. package/dist/Index-D9keESQi.js +159 -0
  71. package/dist/Index-Dd6ueeUc.js +136 -0
  72. package/dist/{Index-DIOiMm9f.js → Index-DexIUz3R.js} +10 -18
  73. package/dist/Index-Dnmt6W0u.js +140 -0
  74. package/dist/Index-DtcV6rl1.js +4 -0
  75. package/dist/Index-DuDVafLn.js +3452 -0
  76. package/dist/Index-L913X8Ly.js +102 -0
  77. package/dist/Index-Mdn0niR_.js +28 -0
  78. package/dist/Index-_ellB2fs.js +363 -0
  79. package/dist/{Index-DcQbh-z2.js → Index-baSB5tPv.js} +9 -17
  80. package/dist/Index-bgKndj-l.js +39 -0
  81. package/dist/Index-lNYXAFUH.js +87 -0
  82. package/dist/Index.vue_vue_type_script_lang-DLogex2i.js +671 -0
  83. package/dist/InputToggleRow-BCvMVbW-.js +99 -0
  84. package/dist/ManualPopover-BzBvSl_x.js +57 -0
  85. package/dist/MediaWrapper-_LPau2Ks.js +18 -0
  86. package/dist/{NotBindingText-CNV2Wmdx.js → NotBindingText-DgcOjUmQ.js} +13 -17
  87. package/dist/PackageGroup-1X3jUipj.js +1058 -0
  88. package/dist/PdfTerms-Bf4TlzP5.js +34 -0
  89. package/dist/PdfViewer-BdhwFfc6.js +392 -0
  90. package/dist/PlainHtml.vue_vue_type_script_setup_true_lang-BgsfquR_.js +17 -0
  91. package/dist/PriceHeader-DyC8xssf.js +488 -0
  92. package/dist/SearchApi-C__orGkO.js +137 -0
  93. package/dist/SendForm-Be8uiuaJ.js +7031 -0
  94. package/dist/Setup-DbXs2Zar.js +47 -0
  95. package/dist/{SmartList-Qgu0rMrI.js → SmartList-BmmtZoZ0.js} +16 -24
  96. package/dist/Sortable.vue_vue_type_script_setup_true_lang-D0mloJIN.js +1303 -0
  97. package/dist/{TermsSettings-CE3h_xkm.js → TermsSettings-DsN6v5yj.js} +169 -49
  98. package/dist/ThemeColorRow-BL6p09pN.js +108 -0
  99. package/dist/ToggleBinding-B-tVioQ9.js +44 -0
  100. package/dist/UploadModal-BnA1xLMy.js +134 -0
  101. package/dist/VideoPlayerInput-D38S1IDH.js +135 -0
  102. package/dist/VideoPlayerSettings-B5iXoj5E.js +78 -0
  103. package/dist/VideoSelectModal-BNCoMFKU.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-CBRJalZI.js} +7 -7
  107. package/dist/dom-CkTGWrfu.js +69 -0
  108. package/dist/{focusDrawerMixin-Be6BAK8-.js → focusDrawerMixin-T94b2Y6F.js} +1 -1
  109. package/dist/{formDrawerState-DRbg5rVI.js → formDrawerState-jssoGOce.js} +2 -2
  110. package/dist/helpers-Vo_6Zz3M.js +44 -0
  111. package/dist/index-8g2jwLJx.js +513 -0
  112. package/dist/index-B0udVHyo.js +125 -0
  113. package/dist/index-D63IJVsJ.js +3525 -0
  114. package/dist/index-DCYCN_FR.js +508 -0
  115. package/dist/index-FRHGChx1.js +149 -0
  116. package/dist/index-HXiq8Yxs.js +270 -0
  117. package/dist/index-jOufDnZ8.js +188 -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-C4OdoeS2.js} +36750 -37369
  121. package/dist/mapFormMixin-v-nbaWcx.js +1544 -0
  122. package/dist/omit-GuxX6Zt-.js +31 -0
  123. package/dist/{publicSenderState-BujjYsZZ.js → publicSenderState-C-7OMKKW.js} +4 -4
  124. package/dist/regions-BdZt9Srn.js +1250 -0
  125. package/dist/splitpanes-DChJiJ8d.js +342 -0
  126. package/dist/style.css +1 -4
  127. package/dist/template-m1V22cUt.js +1493 -0
  128. package/dist/{throttle-CWPJmFid.js → throttle-WWMDZKby.js} +2 -2
  129. package/dist/tippy.esm-Dz-faEsS.js +1994 -0
  130. package/dist/useTermsModal-C_eLdGLi.js +87 -0
  131. package/dist/{utils-CA_Zy6u1.js → utils-vnvZGRwQ.js} +8 -11
  132. package/dist/validation-C-dQpENM.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,270 @@
1
+ import { F as S } from "./Flag-CE3K7-8a.js";
2
+ import { w as B } from "./CDropdownItem-DvaU14-V.js";
3
+ import { a$ as L, $ as V, _ as b, b as a, o, d as i, s as n, e as h, ao as y, w as x, F as v, k, f as r, l as E, v as m, c as R, B as w, S as g } from "./main-C4OdoeS2.js";
4
+ import { i as F } from "./dom-CkTGWrfu.js";
5
+ import { d as q } from "./debounce-CBRJalZI.js";
6
+ import { t as P } from "./throttle-WWMDZKby.js";
7
+ /* empty css */
8
+ const z = {
9
+ name: "BackgroundsModalList",
10
+ i18nOptions: {
11
+ namespaces: "backgroundsModalList",
12
+ messages: {
13
+ en: {
14
+ searchPlaceholder: "Search",
15
+ noMoreResults: "No more results"
16
+ },
17
+ sv: {
18
+ searchPlaceholder: "Sök efter en bild på engelska",
19
+ noMoreResults: "Inga fler resultat"
20
+ }
21
+ }
22
+ },
23
+ components: {
24
+ Simplebar: L,
25
+ Flag: S
26
+ },
27
+ emits: ["select", "save"],
28
+ mixins: [B],
29
+ props: {
30
+ /**
31
+ * @param {Object} options Input arguments
32
+ * @param {String} options.query Search/Query string
33
+ * @param {Number} options.page Current page number
34
+ *
35
+ * @returns {Object} containing:
36
+ * items {Array}
37
+ - item {Object}
38
+ - item.image {String} Url of image resource (REQUIRED)
39
+ - item.video {String} Url of video resource (OPTIONAL)
40
+ - item.lowQualityVideo {String} preview url of video file (OPTIONAL)
41
+ * total {Number} Number of results
42
+ */
43
+ fetch: {
44
+ type: Function,
45
+ required: !0
46
+ },
47
+ defaultQuery: {
48
+ type: String,
49
+ required: !0
50
+ },
51
+ creditText: {
52
+ type: String,
53
+ default: ""
54
+ }
55
+ },
56
+ setup() {
57
+ return { listElements: V("listElements") };
58
+ },
59
+ data() {
60
+ return {
61
+ hoverIndex: null,
62
+ query: null,
63
+ items: [],
64
+ page: 1,
65
+ isLoading: !1,
66
+ allowMoreResults: !0,
67
+ searchTimeout: null,
68
+ selectedIndex: null,
69
+ selectedUrl: null,
70
+ noOfResults: null
71
+ };
72
+ },
73
+ watch: {
74
+ query() {
75
+ this.page = 0, this.items = [], this.allowMoreResults = !0, this.isLoading = !1, this.debouncedHandleFetch();
76
+ }
77
+ },
78
+ created() {
79
+ this.handleFetch(), this.debouncedHandleFetch = q(this.handleFetch, 1e3);
80
+ },
81
+ mounted() {
82
+ this.$refs.scrollbar.scrollElement.addEventListener(
83
+ "scroll",
84
+ this.scrollHandler,
85
+ { passive: !0 }
86
+ );
87
+ },
88
+ beforeUnmount() {
89
+ this.$refs.scrollbar.scrollElement.removeEventListener(
90
+ "scroll",
91
+ this.scrollHandler,
92
+ { passive: !0 }
93
+ );
94
+ },
95
+ methods: {
96
+ async handleFetch() {
97
+ if (!this.allowMoreResults || this.isLoading) return;
98
+ this.isLoading = !0;
99
+ const s = this.query ? this.query : this.defaultQuery, { items: e, total: d } = await this.fetch({ query: s, page: this.page++ });
100
+ this.isLoading = !1, this.noOfResults = this.query ? d : null, this.items == null ? (this.selectedIndex = null, this.items = e) : this.items = [...this.items, ...e], this.allowMoreResults = d >= this.page * 12;
101
+ },
102
+ scrollHandler: P(async function() {
103
+ const e = this.listElements[this.listElements.length - 9 || 0];
104
+ e && F(e) && this.handleFetch();
105
+ }, 50),
106
+ selectItem(s, e) {
107
+ this.selectedIndex = e, this.$emit("select", s);
108
+ },
109
+ onSave() {
110
+ this.$emit("save");
111
+ },
112
+ playVideo(s) {
113
+ this.$refs.video[s] && this.$refs.video[s].play();
114
+ },
115
+ pauseVideo(s) {
116
+ const e = this.$refs.video[s];
117
+ e && (e.readyState === 4 ? e.pause() : e.addEventListener("playing", () => e.pause(), { once: !0 }));
118
+ }
119
+ }
120
+ }, H = { style: { "min-height": "0", display: "flex", "flex-direction": "column", height: "100%" } }, N = { class: "relative flex w-full shrink-0 py-1" }, O = { style: { overflow: "hidden", flex: "1", height: "100%" } }, T = { style: { display: "grid", "grid-template-columns": "repeat(auto-fit, minmax(210px, 1fr))", gap: "2px" } }, j = ["onClick"], U = ["onMouseenterPassive", "onMouseleavePassive"], G = ["src"], Q = {
121
+ key: 1,
122
+ class: "select-wrapper"
123
+ }, D = { class: "photo__credit" }, A = {
124
+ class: "flex w-full items-center justify-center",
125
+ style: { padding: "2em 1em" }
126
+ }, J = {
127
+ key: 1,
128
+ class: "flex w-full flex-col items-center justify-center text-gray-400"
129
+ }, K = {
130
+ key: 0,
131
+ class: "flex flex-col items-center text-center",
132
+ style: { "padding-top": "3.2rem" }
133
+ }, W = {
134
+ class: "flex w-full items-center justify-end",
135
+ style: { padding: "4px 4px 4px 8px", "flex-shrink": "0" }
136
+ }, X = { class: "flex-grow text-gray-400" }, Y = { key: 0 };
137
+ function Z(s, e, d, C, t, c) {
138
+ const f = a("CInput"), p = a("CIcon"), I = a("Flag"), M = a("Simplebar"), $ = a("CButton");
139
+ return o(), i("div", H, [
140
+ n("div", N, [
141
+ h(f, {
142
+ modelValue: t.query,
143
+ "onUpdate:modelValue": e[0] || (e[0] = (l) => t.query = l),
144
+ placeholder: s.$t("searchPlaceholder"),
145
+ reset: !0,
146
+ icon: "search",
147
+ size: "medium",
148
+ class: "flex-grow",
149
+ style: { "border-bottom": "1px solid hsl(0, 0%, 92%)" },
150
+ onInput: e[1] || (e[1] = y(() => {
151
+ }, ["stop"]))
152
+ }, null, 8, ["modelValue", "placeholder"])
153
+ ]),
154
+ n("div", O, [
155
+ h(M, {
156
+ ref: "scrollbar",
157
+ style: { width: "100%", height: "100%", padding: "3px 4px" }
158
+ }, {
159
+ default: x(() => [
160
+ n("div", T, [
161
+ !t.items.length && t.isLoading ? (o(), i(v, { key: 0 }, k(12, (l) => n("div", {
162
+ ref_for: !0,
163
+ ref: "listElements",
164
+ key: l,
165
+ class: "photo"
166
+ })), 64)) : r("", !0),
167
+ (o(!0), i(v, null, k(t.items, (l, u) => (o(), i("div", {
168
+ ref_for: !0,
169
+ ref: "listElements",
170
+ key: u,
171
+ style: E({ backgroundImage: `url(${l.minImage})` }),
172
+ class: "photo",
173
+ onClick: (_) => c.selectItem(l, u)
174
+ }, [
175
+ l.minVideo || l.video ? (o(), i("div", {
176
+ key: 0,
177
+ class: "video-bg__media",
178
+ onMouseenterPassive: (_) => c.playVideo(u, l.minVideo || l.video),
179
+ onMouseleavePassive: (_) => c.pauseVideo(u)
180
+ }, [
181
+ n("video", {
182
+ ref_for: !0,
183
+ ref: "video",
184
+ src: l.minVideo || l.video,
185
+ loop: "",
186
+ muted: "",
187
+ playsInline: "",
188
+ preload: "none"
189
+ }, null, 8, G)
190
+ ], 40, U)) : r("", !0),
191
+ t.selectedIndex === u ? (o(), i("div", Q)) : r("", !0),
192
+ n("div", D, m(l.userName), 1)
193
+ ], 12, j))), 128))
194
+ ]),
195
+ n("div", A, [
196
+ t.isLoading ? (o(), R(p, {
197
+ key: 0,
198
+ type: "loader",
199
+ class: "rotateSpin"
200
+ })) : t.allowMoreResults ? r("", !0) : (o(), i("div", J, [
201
+ n("div", null, m(s.$t("noMoreResults")), 1),
202
+ s.$i18n.lang !== "en" ? (o(), i("div", K, [
203
+ h(I, {
204
+ region: "GB",
205
+ class: "mb-1 h-8 w-8"
206
+ }),
207
+ e[2] || (e[2] = w(" Glöm inte att sökordet måste vara på engelska "))
208
+ ])) : r("", !0)
209
+ ]))
210
+ ])
211
+ ]),
212
+ _: 1
213
+ }, 512)
214
+ ]),
215
+ n("div", W, [
216
+ n("div", X, [
217
+ s.mq !== "sm" ? (o(), i(v, { key: 0 }, [
218
+ t.query && t.noOfResults && t.noOfResults > 0 ? (o(), i("div", Y, m(s.$tc("_common:result", { count: t.noOfResults })), 1)) : r("", !0),
219
+ n("div", null, m(d.creditText), 1)
220
+ ], 64)) : r("", !0)
221
+ ]),
222
+ g(s.$slots, "footer", {}, () => [
223
+ h($, {
224
+ style: { "margin-left": "0.5em" },
225
+ type: "secondary",
226
+ onClick: c.onSave
227
+ }, {
228
+ default: x(() => [
229
+ w(m(s.$t("_common:save")), 1)
230
+ ]),
231
+ _: 1
232
+ }, 8, ["onClick"])
233
+ ], !0)
234
+ ])
235
+ ]);
236
+ }
237
+ const ee = /* @__PURE__ */ b(z, [["render", Z], ["__scopeId", "data-v-03e5d6b0"]]), se = {
238
+ name: "BackgroundsModal",
239
+ emits: ["close"]
240
+ };
241
+ function te(s, e, d, C, t, c) {
242
+ const f = a("CButton");
243
+ return o(), i("div", {
244
+ class: "font-primary fixed inset-0 z-[1000] flex items-center justify-center overflow-auto bg-black bg-opacity-10 max-sm:block max-sm:min-h-full max-sm:w-full max-sm:overflow-auto",
245
+ onClick: e[2] || (e[2] = y((p) => s.$emit("close"), ["self"]))
246
+ }, [
247
+ n("div", {
248
+ class: "relative flex h-[90%] max-h-[700px] w-[90%] max-w-3xl flex-col rounded-lg bg-white max-sm:h-full max-sm:max-h-full max-sm:w-full max-sm:rounded-none",
249
+ onClick: e[1] || (e[1] = y(() => {
250
+ }, ["stop"]))
251
+ }, [
252
+ h(f, {
253
+ class: "absolute right-3 top-3 z-10",
254
+ pattern: "tertiary",
255
+ type: "none",
256
+ size: "small",
257
+ circle: "",
258
+ icon: "x",
259
+ onClick: e[0] || (e[0] = (p) => s.$emit("close"))
260
+ }),
261
+ g(s.$slots, "header"),
262
+ g(s.$slots, "default")
263
+ ])
264
+ ]);
265
+ }
266
+ const le = /* @__PURE__ */ b(se, [["render", te]]), ue = ee, me = le;
267
+ export {
268
+ me as B,
269
+ ue as a
270
+ };
@@ -0,0 +1,188 @@
1
+ import { m as C, a as f, g as b, az as $, aA as w, _ as T, b as h, a3 as D, o as i, d as s, s as n, e as d, v as a, F as L, k as B, B as N, f as l, E, aB as u } from "./main-C4OdoeS2.js";
2
+ const I = {
3
+ name: "ClientLinks",
4
+ emits: ["close"],
5
+ props: {
6
+ id: {
7
+ type: String,
8
+ required: !0
9
+ }
10
+ },
11
+ i18nOptions: {
12
+ namespaces: "ClientLinks",
13
+ messages: {
14
+ en: {
15
+ title: "Document links",
16
+ text: "Share the document links below with your recipients. Each recipient has their own unique link.",
17
+ copied: "Link copied to clipboard",
18
+ tooltip: "Copy link",
19
+ placeholder: "No links available.",
20
+ hint: "Note that visting a link will trigger a viewed event in the events timeline."
21
+ },
22
+ sv: {
23
+ title: "Dokumentlänkar",
24
+ text: "Dela dokumentlänkarna nedan med dina mottagare. Varje mottagare har sin egen unika länk.",
25
+ copied: "Länk kopierat till urklipp",
26
+ tooltip: "Kopiera länk",
27
+ placeholder: "Inga länkar finns tillgängliga.",
28
+ hint: "Notera att ett sidbesök på en länk kommer att skapa en visad-händelse i tidslinjen."
29
+ }
30
+ }
31
+ },
32
+ computed: {
33
+ ...C({
34
+ docById: "documents2/byId"
35
+ }),
36
+ document() {
37
+ return this.docById(this.id);
38
+ },
39
+ clients() {
40
+ if (!this.document) return [];
41
+ const { clients: t } = this.document;
42
+ return t.map((o) => ({
43
+ ...o,
44
+ primaryTitle: o.name,
45
+ secondaryTitle: o.type === "company" ? o.companyName : ""
46
+ }));
47
+ }
48
+ },
49
+ created() {
50
+ this.loadDocument({ id: this.id });
51
+ },
52
+ methods: {
53
+ ...f({
54
+ loadDocument: b.LOAD_DOCUMENT2
55
+ }),
56
+ async copyToClipboard(t) {
57
+ var c, p;
58
+ (c = t.target.previousElementSibling) == null || c.select();
59
+ const o = (p = t.target.previousElementSibling) == null ? void 0 : p.value;
60
+ if (!o) return;
61
+ await $(o) && w("info", this.$t("copied"));
62
+ }
63
+ }
64
+ }, S = {
65
+ class: "font-inter",
66
+ style: { "background-color": "white", "border-radius": "10px", overflow: "hidden" }
67
+ }, z = { style: { padding: "40px 30px", position: "relative" } }, V = { style: { padding: "0 0 2.5em" } }, F = ["textContent"], M = ["textContent"], O = ["textContent"], R = { style: { padding: "4px 6px 8px 6px" } }, j = { class: "client-title truncate-text" }, q = {
68
+ key: 0,
69
+ style: { opacity: "0.5", "padding-left": "0.125ch" }
70
+ }, A = ["textContent"], P = ["href"], G = {
71
+ key: 1,
72
+ style: { padding: "0 0.5ch" }
73
+ }, K = ["href"], U = { style: { display: "flex", position: "relative" } }, W = ["value", "placeholder"], H = { class: "x-hint" }, J = ["textContent"];
74
+ function Q(t, o, y, c, p, r) {
75
+ const k = h("CButton"), _ = h("CPhoneFormat"), m = h("CIcon"), g = D("tooltip");
76
+ return i(), s("div", S, [
77
+ n("div", z, [
78
+ d(k, {
79
+ icon: "x",
80
+ circle: "",
81
+ size: "normal",
82
+ style: { position: "absolute", right: "1em", top: "1em", color: "hsl(0, 0%, 55%)" },
83
+ onClick: o[0] || (o[0] = (e) => t.$emit("close"))
84
+ }),
85
+ n("div", V, [
86
+ n("div", {
87
+ class: "x-title",
88
+ textContent: a(t.$t("title"))
89
+ }, null, 8, F),
90
+ n("div", {
91
+ class: "x-text",
92
+ textContent: a(t.$t("text"))
93
+ }, null, 8, M)
94
+ ]),
95
+ r.clients.length ? (i(!0), s(L, { key: 1 }, B(r.clients, (e, v) => (i(), s("div", {
96
+ key: v,
97
+ class: "client-card"
98
+ }, [
99
+ n("div", R, [
100
+ n("div", j, [
101
+ N(a(e.primaryTitle) + " ", 1),
102
+ e.secondaryTitle ? (i(), s("span", q, "· " + a(e.secondaryTitle), 1)) : l("", !0)
103
+ ]),
104
+ e.documentRole ? (i(), s("div", {
105
+ key: 0,
106
+ textContent: a(t.$t(`_common:documentRole.${e.documentRole}.label`))
107
+ }, null, 8, A)) : l("", !0),
108
+ n("div", null, [
109
+ e.email ? (i(), s("a", {
110
+ key: 0,
111
+ href: `mailto:${e.email}?&body=${e.docLink}`
112
+ }, a(e.email), 9, P)) : l("", !0),
113
+ e.email && e.cellphone ? (i(), s("span", G, "·")) : l("", !0),
114
+ e.cellphone ? (i(), s("a", {
115
+ key: 2,
116
+ href: `sms:${e.cellphone}?&body=${e.docLink}`
117
+ }, [
118
+ d(_, {
119
+ phone: e.cellphone,
120
+ region: e.cellphoneRegion
121
+ }, null, 8, ["phone", "region"])
122
+ ], 8, K)) : l("", !0)
123
+ ])
124
+ ]),
125
+ n("div", U, [
126
+ n("input", {
127
+ ref_for: !0,
128
+ ref: "key",
129
+ value: e.docLink,
130
+ placeholder: t.$t("placeholder"),
131
+ type: "text",
132
+ readonly: "readonly",
133
+ class: "link-field truncate-text"
134
+ }, null, 8, W),
135
+ E((i(), s("div", {
136
+ class: "clipboard-button",
137
+ onClick: o[1] || (o[1] = (...x) => r.copyToClipboard && r.copyToClipboard(...x))
138
+ }, [
139
+ d(m, {
140
+ type: "copy",
141
+ size: "17",
142
+ style: { "pointer-events": "none" }
143
+ })
144
+ ])), [
145
+ [g, t.$t("tooltip")]
146
+ ])
147
+ ])
148
+ ]))), 128)) : (i(), s("div", {
149
+ key: 0,
150
+ style: { padding: "2em", "font-size": "14px", "text-align": "center", color: "hsl(0, 0%, 55%)", border: "1px solid hsl(0, 0%, 88%)", "border-radius": "6px" },
151
+ textContent: a(t.$t("placeholder"))
152
+ }, null, 8, O)),
153
+ n("div", H, [
154
+ d(m, {
155
+ type: "info",
156
+ size: "16",
157
+ style: { flex: "0 0 auto", "margin-right": "8px", "margin-top": "3px" },
158
+ class: "text-primary-500"
159
+ }),
160
+ n("div", {
161
+ textContent: a(t.$t("hint"))
162
+ }, null, 8, J)
163
+ ])
164
+ ])
165
+ ]);
166
+ }
167
+ const X = /* @__PURE__ */ T(I, [["render", Q], ["__scopeId", "data-v-cb2f0c7a"]]), Y = X, ee = ({ id: t }) => {
168
+ var o;
169
+ if (!u.$modal)
170
+ throw Error("Open client modal requires plugin vue-js-modal");
171
+ (o = u.$modal) == null || o.show(
172
+ Y,
173
+ {
174
+ id: t
175
+ },
176
+ {
177
+ adaptive: !0,
178
+ maxWidth: 400,
179
+ width: "90%",
180
+ height: "auto",
181
+ scrollable: !0
182
+ }
183
+ );
184
+ };
185
+ export {
186
+ Y as C,
187
+ ee as o
188
+ };