@cling-se/widget 0.22.0 → 0.22.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.
- package/CHANGELOG.md +18 -0
- package/dist/{AddClientCallout-CxbvK6ZG.js → AddClientCallout-Bk_RMqww.js} +11 -11
- package/dist/{AnswerModal-vTetGwVn.js → AnswerModal-BQ9VR89q.js} +4 -4
- package/dist/{AttachmentItem-DSHNRIq_.js → AttachmentItem-DnlOo6Ar.js} +11 -11
- package/dist/{BaseUpload-CWaM_bb7.js → BaseUpload-DCPt9YUo.js} +2 -2
- package/dist/{BlockMedia-B1T85G4R.js → BlockMedia-najJzMYF.js} +9 -9
- package/dist/{CCallout-BieMmWa4.js → CCallout-DCvCm65V.js} +1 -1
- package/dist/{CCurrencyDropdown-DKWtCUE_.js → CCurrencyDropdown-DuJxa77L.js} +3 -3
- package/dist/{CDropdownItem-pNNH9fV3.js → CDropdownItem-DyWrpOb-.js} +7 -7
- package/dist/{CFormField.vue_vue_type_script_setup_true_lang-B57OaS--.js → CFormField.vue_vue_type_script_setup_true_lang-CSMB_HdZ.js} +4 -4
- package/dist/{CPhoneFormat-CyrQRGmd.js → CPhoneFormat-BmGCMx5K.js} +1 -1
- package/dist/{CPhoneInput-BQHgpUCY.js → CPhoneInput-Cx3OiUWQ.js} +5 -5
- package/dist/{CPriceInput-DnFN-I6p.js → CPriceInput-BwBsHKnn.js} +2 -2
- package/dist/{CSelect-DB4-JxH8.js → CSelect-BlPNOr_g.js} +1 -1
- package/dist/{CSkeleton-DpRDxR6D.js → CSkeleton-DRbFIBZS.js} +1 -1
- package/dist/{ClientAutocomplete-BjwvkuJ-.js → ClientAutocomplete-DS08QQ5C.js} +7 -7
- package/dist/{ClientModal-oBN2VSio.js → ClientModal-DXtdxLj9.js} +184 -198
- package/dist/{ColorPicker-B5rSvXLV.js → ColorPicker-CeJ8YHt-.js} +1 -1
- package/dist/{CompanyModal-QrsUL6Et.js → CompanyModal-DzE3OIG0.js} +75 -80
- package/dist/{ContentWrapper-Yx-KMsfH.js → ContentWrapper-CBd8srOJ.js} +15 -15
- package/dist/{CoverBlockSettings-C8giTiEZ.js → CoverBlockSettings-D9K1BnJk.js} +7 -7
- package/dist/{DocAnswer-Djyhwfrp.js → DocAnswer-By6hA4eC.js} +2 -2
- package/dist/{DocDetails-Dv6noPvB.js → DocDetails-C-ZRzvrA.js} +4 -4
- package/dist/{DocForm-BFHchJ6w.js → DocForm-DvT2fhEM.js} +248 -266
- package/dist/{DocFormSend-K2rbjklj.js → DocFormSend-CKeZn--O.js} +2 -2
- package/dist/{DocLinks-DpUl89XR.js → DocLinks-w8pfegGu.js} +2 -2
- package/dist/{DocModalBase-BlTZ8CY3.js → DocModalBase-B2IgIy_9.js} +1 -1
- package/dist/{DocPrint-Bmfl4Abk.js → DocPrint-eUTCgg8g.js} +1 -1
- package/dist/{DocReceipt-3wi5YXqR.js → DocReceipt-BD0WVtId.js} +2 -2
- package/dist/{DocSendReminder-CHqgC_wM.js → DocSendReminder-EjkK-9rh.js} +1 -1
- package/dist/{DocTextEditor-BGzwRwjt.js → DocTextEditor-U8ZdSDAr.js} +10 -10
- package/dist/{DocTimeline-BG7ldFgR.js → DocTimeline-D30HTE_o.js} +8 -8
- package/dist/{DocumentClient-CLCAh4lI.js → DocumentClient-BBEmQHMi.js} +5 -5
- package/dist/{DocumentLayout-DHSEYClM.js → DocumentLayout-BLeVh3wu.js} +5 -5
- package/dist/{DocumentLogotype-0jH2-sr7.js → DocumentLogotype-BauCUJ8j.js} +29 -33
- package/dist/{DocumentVoided-BAS8mATO.js → DocumentVoided-CfQdzPJa.js} +1 -1
- package/dist/{EmbedInput-DnSz1tbL.js → EmbedInput-D4QrX2Gm.js} +3 -3
- package/dist/{EmbedSettings-BQ1kKupC.js → EmbedSettings-DVZLouo9.js} +3 -3
- package/dist/{ErrorCallout-XMtdcNvE.js → ErrorCallout-BiLLFJek.js} +1 -1
- package/dist/{FilePreviewModal-Bv28RVrN.js → FilePreviewModal-BusalEt3.js} +20 -20
- package/dist/{Flag-CcF7qtHi.js → Flag-BxkDKlP4.js} +1 -1
- package/dist/{HeaderSettings-SKEJyM9y.js → HeaderSettings-DIWro6fR.js} +9 -9
- package/dist/{ImageSelectModal-BNXs_Rfh.js → ImageSelectModal-CL52MP8Z.js} +3 -3
- package/dist/{ImageUploadWrapper-BmlB0qHZ.js → ImageUploadWrapper-2gjzeenp.js} +2 -2
- package/dist/{Index-mcDMCki9.js → Index--EACh-v2.js} +276 -301
- package/dist/{Index-BNetDL7G.js → Index-4FHzyecP.js} +4 -4
- package/dist/{Index-Bxi4pinD.js → Index-BPuHAiJR.js} +3 -3
- package/dist/Index-BcIg-95c.js +342 -0
- package/dist/{Index-LNHTL5EH.js → Index-Bge6Bknk.js} +1 -1
- package/dist/{Index-B1mvOHsr.js → Index-BkMzG22-.js} +5 -5
- package/dist/{Index-Bz6vrP4D.js → Index-Bn8_-gUC.js} +4 -4
- package/dist/{Index-BS1J5b8c.js → Index-CJZBOrgw.js} +3 -3
- package/dist/{Index-Ca6-XJ1q.js → Index-CQzTAmTM.js} +14 -14
- package/dist/{Index-CQSkYi57.js → Index-CSNH8muS.js} +6 -6
- package/dist/{Index-CYjEFdMF.js → Index-CZljdL3w.js} +2 -2
- package/dist/{Index-ec9osPpw.js → Index-CcKgWOG7.js} +4 -4
- package/dist/{Index-CVoJGfTj.js → Index-CcZ48rLC.js} +2 -2
- package/dist/{Index-CfpNMWEI.js → Index-Cen56jNO.js} +4 -4
- package/dist/{Index-Ra_-tX11.js → Index-Cq90eS9E.js} +7 -7
- package/dist/{Index-B_R1p7cp.js → Index-CsLEoK-y.js} +1 -1
- package/dist/{Index-BRIv1n05.js → Index-CtRE9_p3.js} +4 -4
- package/dist/{Index-C2Jql1QC.js → Index-CuaK6bnN.js} +8 -8
- package/dist/{Index-DRadSzmh.js → Index-DMEoYhVr.js} +3 -3
- package/dist/{Index-DU19comM.js → Index-DO0vFJCv.js} +6 -6
- package/dist/{Index-CDdxLKdQ.js → Index-DQMuQ2js.js} +4 -4
- package/dist/{Index-B4EqZ9op.js → Index-DYkWCXz0.js} +5 -5
- package/dist/Index-DdSDsjP8.js +4 -0
- package/dist/{Index-GmMgg4ZI.js → Index-DdfunbXo.js} +7 -7
- package/dist/{Index-BS-ERsZ7.js → Index-DjMRBozk.js} +9 -9
- package/dist/{Index-BLC_eYvf.js → Index-DxWtScO2.js} +2 -2
- package/dist/{Index-Dz3beMLO.js → Index-FSjvo5ex.js} +8 -8
- package/dist/{Index-Coef67Wb.js → Index-N-TCcUiZ.js} +5 -5
- package/dist/{Index-BDW4tvrc.js → Index-bKQSbdxw.js} +2 -2
- package/dist/{Index-B8soD6pI.js → Index-jXUY8fSe.js} +2 -2
- package/dist/{Index-Bd3gjqXz.js → Index-m_q4QkfZ.js} +4 -4
- package/dist/{Index-C9k2n-HK.js → Index-qcFSIYDB.js} +4 -4
- package/dist/{Index-DquGwrE6.js → Index-qzpjRFUp.js} +37 -40
- package/dist/{Index-C6r2p8Qd.js → Index-u00PSjX2.js} +3 -3
- package/dist/{Index.vue_vue_type_script_lang-DOtAXSQl.js → Index.vue_vue_type_script_lang-MIgEx7dJ.js} +2 -2
- package/dist/{InputToggleRow-DH7USYPf.js → InputToggleRow-Dv5l7HsH.js} +1 -1
- package/dist/{ManualPopover-JDRhdC8G.js → ManualPopover-B-VE0HPu.js} +1 -1
- package/dist/{MediaWrapper-DdbmCwGw.js → MediaWrapper-m5wr6sG8.js} +3 -3
- package/dist/{NotBindingText-CwV-MkgL.js → NotBindingText-JKkfTNyO.js} +2 -2
- package/dist/{PackageGroup-CH-8hyAF.js → PackageGroup-CXZ0Lsz9.js} +5 -5
- package/dist/{PdfTerms-BBeN_k6I.js → PdfTerms-Cb_px74_.js} +2 -2
- package/dist/{PdfViewer-Du_M79jv.js → PdfViewer-1OOdNeVT.js} +2 -2
- package/dist/{PlainHtml.vue_vue_type_script_setup_true_lang-BKJdTPrg.js → PlainHtml.vue_vue_type_script_setup_true_lang-C12eZIH1.js} +1 -1
- package/dist/{PriceHeader-Be2QwWzs.js → PriceHeader-BzPZtNYJ.js} +7 -7
- package/dist/SearchApi-CBg1KY-O.js +156 -0
- package/dist/{SendForm-BIIwVZwY.js → SendForm-C-VTNpve.js} +540 -528
- package/dist/{Setup-DBbHXz4_.js → Setup-BmlGbBrM.js} +1 -1
- package/dist/{SmartList-C2JUKK2W.js → SmartList-B2ZpLA8V.js} +1 -1
- package/dist/{Sortable.vue_vue_type_script_setup_true_lang-CzrvSsIg.js → Sortable.vue_vue_type_script_setup_true_lang-CcTjzIyK.js} +1 -1
- package/dist/TermsSettings-0V_cVRPI.js +198 -0
- package/dist/{ThemeColorRow-7KF7icN8.js → ThemeColorRow-BwSFCUGN.js} +3 -3
- package/dist/{ToggleBinding-w8lNunzO.js → ToggleBinding-sJX5jVgf.js} +4 -4
- package/dist/{UploadModal-BRdimOyC.js → UploadModal-CvFB_11W.js} +2 -2
- package/dist/{VideoPlayerInput-BHmr7HvX.js → VideoPlayerInput-CmjzzRDj.js} +4 -4
- package/dist/{VideoPlayerSettings-fI8gpjks.js → VideoPlayerSettings-TD3__Ui0.js} +2 -2
- package/dist/{VideoSelectModal-Beq5yE0M.js → VideoSelectModal-DWohaFSL.js} +3 -3
- package/dist/{focusDrawerMixin-vhY6JO7g.js → focusDrawerMixin-CReYj2SY.js} +1 -1
- package/dist/{formDrawerState-ChHVYfc3.js → formDrawerState-Cf5itKVM.js} +1 -1
- package/dist/{fortnoxTheme-BGyYnb8i.js → fortnoxTheme-IeycOfWB.js} +1 -1
- package/dist/{helpers-Dw4CluFv.js → helpers-CUo71XPG.js} +1 -1
- package/dist/{index-DihGX5od.js → index-BEKHEkFO.js} +8 -8
- package/dist/{index-C-tsPusW.js → index-CFm8CNEc.js} +1 -1
- package/dist/{index-BUPqyA87.js → index-CrQzVsCT.js} +1 -1
- package/dist/{index-syUJ22zc.js → index-DCq6gjGI.js} +8 -7
- package/dist/{index-BcnDsk0Z.js → index-DzyXygjd.js} +1 -1
- package/dist/{index-CPfrJsi9.js → index-FsgsKPqg.js} +1 -1
- package/dist/{index-DJYVhEQt.js → index-MMzIZOFI.js} +3 -3
- package/dist/index.es.js +2 -2
- package/dist/index.umd.js +141 -141
- package/dist/{main-BBhJGb7I.js → main-D4afcIIy.js} +3821 -3888
- package/dist/{mapFormMixin-CCKubywa.js → mapFormMixin-DcTZ2NvY.js} +3 -4
- package/dist/{omit-Cdd54eFA.js → omit-Bq20xrhI.js} +1 -1
- package/dist/{splitpanes-nCfEUpmu.js → splitpanes-EHoHU6iQ.js} +1 -1
- package/dist/{template-B-Ds8x_U.js → template-CDxtqtv6.js} +1 -1
- package/dist/{tippy.esm-DdYqbHFh.js → tippy.esm-D8I3Noyw.js} +5 -5
- package/dist/{useTermsModal-Z_pZQ4H2.js → useTermsModal-DEiH4ghd.js} +4 -4
- package/dist/{utils-C3tvmZHk.js → utils-DvezupAT.js} +1 -1
- package/dist/{validation-CWxbj-wT.js → validation-ERFxig5z.js} +2 -2
- package/dist/widget.css +1 -1
- package/package.json +1 -1
- package/dist/Index-BbEj20KG.js +0 -364
- package/dist/Index-aOBMRrRj.js +0 -4
- package/dist/SearchApi-dNunyqch.js +0 -136
- package/dist/TermsSettings-BZBWd3c9.js +0 -224
- package/dist/publicSenderState-LkIY-kEl.js +0 -21
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { _ as h, Y as f, a as m, Z as d, $ as p, a0 as y, U as g } from "./main-D4afcIIy.js";
|
|
2
|
+
const S = {
|
|
3
|
+
name: "SearchApi",
|
|
4
|
+
props: {
|
|
5
|
+
customSearch: {
|
|
6
|
+
type: Object,
|
|
7
|
+
default: () => ({})
|
|
8
|
+
}
|
|
9
|
+
},
|
|
10
|
+
data() {
|
|
11
|
+
return {
|
|
12
|
+
defaultSearch: {
|
|
13
|
+
project: !0,
|
|
14
|
+
endCustomer: !1,
|
|
15
|
+
article: !1,
|
|
16
|
+
extensionArticle: !1,
|
|
17
|
+
// Articles in any authenticated CRM
|
|
18
|
+
document: !1
|
|
19
|
+
},
|
|
20
|
+
isLoading: !1,
|
|
21
|
+
emptyQuery: null,
|
|
22
|
+
// String to track last query that was empty, if a new query starts with this string we do not have to search again
|
|
23
|
+
hasSearchedAll: !1
|
|
24
|
+
// Helper to keep track when some search types have not yet searched due min query length
|
|
25
|
+
};
|
|
26
|
+
},
|
|
27
|
+
computed: {
|
|
28
|
+
...m({
|
|
29
|
+
allAuthenticatedCRMs: "settings/allAuthenticatedCRMs",
|
|
30
|
+
can: "application/can"
|
|
31
|
+
}),
|
|
32
|
+
typesToFetch() {
|
|
33
|
+
return Object.keys(this.customSearch).length ? Object.keys(this.customSearch).filter(
|
|
34
|
+
(t) => this.customSearch[t]
|
|
35
|
+
) : Object.keys(this.defaultSearch).filter(
|
|
36
|
+
(t) => this.defaultSearch[t]
|
|
37
|
+
);
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
methods: {
|
|
41
|
+
canFetchType(t) {
|
|
42
|
+
return t === "endCustomer" ? this.can("endCustomers", "read") : !0;
|
|
43
|
+
},
|
|
44
|
+
async fetch({ query: t, start: r = null, end: i = null, onResult: a = null }) {
|
|
45
|
+
const s = this.typesToFetch.reduce(
|
|
46
|
+
(e, u) => ({ ...e, [u]: [] }),
|
|
47
|
+
{}
|
|
48
|
+
), n = t.toLowerCase();
|
|
49
|
+
if (this.emptyQuery && n && n.startsWith(this.emptyQuery) || (this.emptyQuery = null, this.hasSearchedAll = !0, !n)) return s;
|
|
50
|
+
const c = [], o = Object.keys(this.defaultSearch);
|
|
51
|
+
return (this.typesToFetch || []).forEach((e) => {
|
|
52
|
+
o.includes(e) && c.push(
|
|
53
|
+
(async () => {
|
|
54
|
+
e === "document" ? s[e] = await this.fetchDocuments(n, r, i) : e === "extensionArticle" ? s[e] = await this.fetchExtensionArticles(
|
|
55
|
+
n,
|
|
56
|
+
r,
|
|
57
|
+
i
|
|
58
|
+
) : s[e] = await this.fetchType(e, n, r, i), a && a({ [e]: s[e] });
|
|
59
|
+
})()
|
|
60
|
+
);
|
|
61
|
+
}), await Promise.allSettled(c), Object.keys(s).every(
|
|
62
|
+
(e) => s[e].length === 0
|
|
63
|
+
) && this.hasSearchedAll && (this.emptyQuery = n), s;
|
|
64
|
+
},
|
|
65
|
+
async fetchType(t, r, i, a) {
|
|
66
|
+
if (!this.canFetchType(t)) return [];
|
|
67
|
+
const { data: s } = await y("search", {
|
|
68
|
+
type: t,
|
|
69
|
+
query: r,
|
|
70
|
+
...i !== null && a !== null && { start: i, end: a }
|
|
71
|
+
});
|
|
72
|
+
return s;
|
|
73
|
+
},
|
|
74
|
+
async fetchDocuments(t, r, i) {
|
|
75
|
+
const a = t.replace(/[-[\]{}()*+?.,\\/^$|#]/g, "\\$&"), s = {
|
|
76
|
+
$or: [
|
|
77
|
+
{ "data.name": { $regex: a, $options: "i" } },
|
|
78
|
+
{ "docNumber.value": { $regex: a, $options: "i" } },
|
|
79
|
+
{
|
|
80
|
+
clients: {
|
|
81
|
+
$elemMatch: {
|
|
82
|
+
$or: ["name", "email", "socialNo", "orgNo"].map((l) => ({
|
|
83
|
+
[l]: { $regex: a, $options: "i" }
|
|
84
|
+
}))
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
]
|
|
89
|
+
}, n = p("/document", {
|
|
90
|
+
params: {
|
|
91
|
+
lean: !0,
|
|
92
|
+
filter: encodeURIComponent(JSON.stringify(s)),
|
|
93
|
+
fields: "clients,data.name,projectId,docNumber,createdAt",
|
|
94
|
+
...r !== null && i !== null && { skip: r, limit: i - r }
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
let c;
|
|
98
|
+
const o = new Promise((l, e) => {
|
|
99
|
+
c = setTimeout(
|
|
100
|
+
() => e(new Error("Document search timed out")),
|
|
101
|
+
2e4
|
|
102
|
+
);
|
|
103
|
+
});
|
|
104
|
+
try {
|
|
105
|
+
const { data: l } = await Promise.race([n, o]), { items: e = [] } = l || {};
|
|
106
|
+
return e;
|
|
107
|
+
} finally {
|
|
108
|
+
clearTimeout(c);
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
async fetchExtensionArticles(t) {
|
|
112
|
+
const r = [];
|
|
113
|
+
return await Promise.all(
|
|
114
|
+
this.allAuthenticatedCRMs.map(async (i) => {
|
|
115
|
+
try {
|
|
116
|
+
if (i === "pipedrive" && t.length < 2) {
|
|
117
|
+
this.hasSearchedAll = !1;
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
const { data: a } = await d.search(i, {
|
|
121
|
+
query: t,
|
|
122
|
+
type: "article"
|
|
123
|
+
});
|
|
124
|
+
a && Array.isArray(a) && r.push(...a);
|
|
125
|
+
} catch {
|
|
126
|
+
}
|
|
127
|
+
})
|
|
128
|
+
), r;
|
|
129
|
+
},
|
|
130
|
+
triggerSearch: f(async function({
|
|
131
|
+
q: r,
|
|
132
|
+
cb: i,
|
|
133
|
+
start: a,
|
|
134
|
+
end: s,
|
|
135
|
+
onResult: n = null
|
|
136
|
+
}) {
|
|
137
|
+
this.isLoading = !0;
|
|
138
|
+
try {
|
|
139
|
+
const c = await this.fetch({ query: r, start: a, end: s, onResult: n });
|
|
140
|
+
this.isLoading = !1, i(c);
|
|
141
|
+
} finally {
|
|
142
|
+
this.isLoading = !1;
|
|
143
|
+
}
|
|
144
|
+
}, 500)
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
function A(t, r, i, a, s, n) {
|
|
148
|
+
return g(t.$slots, "default", {
|
|
149
|
+
fetch: ({ q: c, cb: o, start: l = null, end: e = null, onResult: u = null }) => (s.isLoading = !0, n.triggerSearch({ q: c, cb: o, start: l, end: e, onResult: u })),
|
|
150
|
+
isLoading: s.isLoading
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
const w = /* @__PURE__ */ h(S, [["render", A]]);
|
|
154
|
+
export {
|
|
155
|
+
w as S
|
|
156
|
+
};
|