@cling-se/widget 0.14.4 → 0.14.6
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/dist/AddClientCallout-C7abPZ87.js +46 -0
- package/dist/AnswerModal-CsA2pl2P.js +3874 -0
- package/dist/AttachmentItem-Da1-7xwf.js +78 -0
- package/dist/BaseDatePicker-k9zlSi5J.js +3183 -0
- package/dist/BaseUpload-BUrXX3fT.js +1977 -0
- package/dist/BlockMedia-CYI07qAn.js +76 -0
- package/dist/CCallout-Qwae66vo.js +59 -0
- package/dist/CCurrencyDropdown-Y_u0hgBx.js +246 -0
- package/dist/CDropdownItem-CXJ4xD8W.js +538 -0
- package/dist/CField.vue_vue_type_style_index_0_lang-l0sNRNKZ.js +1 -0
- package/dist/CFormField--m3PvQuT.js +241 -0
- package/dist/CPhoneFormat-Qg6MkDVP.js +62 -0
- package/dist/CPriceInput-Dlx44UrR.js +112 -0
- package/dist/CTabs.vue_vue_type_style_index_0_scoped_b7262014_lang-l0sNRNKZ.js +1 -0
- package/dist/ClientAutocomplete-BKKc_br6.js +78 -0
- package/dist/ClientModal-CVZFb1Br.js +625 -0
- package/dist/ColorPicker-Bo3s3Esp.js +2879 -0
- package/dist/CompanyModal-DadjAioS.js +141 -0
- package/dist/ContentWrapper-BC3ZBQW9.js +183 -0
- package/dist/CoverBlockSettings-B484eE4g.js +275 -0
- package/dist/DocAnswer-CcYryOWI.js +36 -0
- package/dist/DocDetails-BigsoEWL.js +246 -0
- package/dist/DocForm-DlN0eNWt.js +7273 -0
- package/dist/DocFormSend-TqKo210I.js +143 -0
- package/dist/DocLinks-DSo54vDn.js +38 -0
- package/dist/DocModalBase-XlM1SThW.js +28 -0
- package/dist/DocPrint-tD0Vd9Sw.js +240 -0
- package/dist/DocReceipt-CDHPrhXM.js +210 -0
- package/dist/DocSendReminder-C62RhltH.js +137 -0
- package/dist/DocTextEditor-VjhV9IRp.js +17181 -0
- package/dist/DocTimeline-LcW4z3nC.js +481 -0
- package/dist/DocumentClient-CqbTRdpB.js +136 -0
- package/dist/DocumentLayout-Dbf8_01r.js +4909 -0
- package/dist/DocumentLogotype-DXYnBedV.js +87 -0
- package/dist/DocumentVoided-vH1Ti5lZ.js +25 -0
- package/dist/EmbedInput-D9qP8OnY.js +113 -0
- package/dist/EmbedSettings-DISuNqJT.js +72 -0
- package/dist/ErrorCallout-CCtCVwSh.js +28 -0
- package/dist/FilePreviewModal-BjhNyb6L.js +81 -0
- package/dist/Flag-Dhukv9_J.js +114 -0
- package/dist/HeaderSettings-CK4SkB1x.js +392 -0
- package/dist/ImageSelectModal-DnvPZzXx.js +84 -0
- package/dist/ImageUploadWrapper-B7cNMu5a.js +1604 -0
- package/dist/Index-B3HoK_cZ.js +84 -0
- package/dist/Index-B3aucNji.js +25 -0
- package/dist/Index-B9H5MMHb.js +62 -0
- package/dist/Index-BAYdvT-t.js +754 -0
- package/dist/Index-BLeQprjq.js +46 -0
- package/dist/Index-BOyvQlng.js +154 -0
- package/dist/Index-BVsw2tak.js +70 -0
- package/dist/Index-BY1UKGEO.js +98 -0
- package/dist/Index-Bh0kMSsA.js +107 -0
- package/dist/Index-BlQSM7tC.js +144 -0
- package/dist/Index-BpcJBGGd.js +642 -0
- package/dist/Index-Bs8wprXw.js +58 -0
- package/dist/Index-BvZZAvFd.js +21 -0
- package/dist/Index-CFo-3Y5Q.js +26 -0
- package/dist/Index-CNvp5K3L.js +559 -0
- package/dist/Index-CPJVx14x.js +171 -0
- package/dist/Index-CQ325eVT.js +140 -0
- package/dist/Index-CWrDtcfT.js +49 -0
- package/dist/Index-CyJnSvDR.js +223 -0
- package/dist/Index-D6bc7lg4.js +52 -0
- package/dist/Index-DCR8ev4U.js +33 -0
- package/dist/Index-DGQSB9cH.js +24 -0
- package/dist/Index-DXAvlq74.js +292 -0
- package/dist/Index-D_rfst8y.js +45 -0
- package/dist/Index-Dm8xMFGg.js +61 -0
- package/dist/Index-DtSSgtxB.js +55 -0
- package/dist/Index-DuTw9vhb.js +77 -0
- package/dist/Index-Dw26jtGV.js +31 -0
- package/dist/Index-OxN73_fO.js +32 -0
- package/dist/Index-S-FHG7_k.js +2402 -0
- package/dist/Index-ZFkitzfq.js +69 -0
- package/dist/Index-dyWK9jgr.js +25 -0
- package/dist/Index-gb11ngPS.js +57 -0
- package/dist/Index-lKk_XKJ3.js +150 -0
- package/dist/InputToggleRow-DSSvhPKA.js +57 -0
- package/dist/ManualPopover-lpJYSkw5.js +58 -0
- package/dist/MediaWrapper-BQ22FA2B.js +23 -0
- package/dist/NotBindingText-JxwzZLPP.js +32 -0
- package/dist/PackageGroup-BLSMSUDz.js +699 -0
- package/dist/PdfTerms-DtutjM5Y.js +36 -0
- package/dist/PdfViewer-BsxcZI_x.js +374 -0
- package/dist/PlainHtml-BMPZs2fT.js +20 -0
- package/dist/PriceHeader-BRYY01H2.js +339 -0
- package/dist/SearchApi-6001iFxU.js +161 -0
- package/dist/Setup-cw6jMI9M.js +50 -0
- package/dist/SmartList-q6H-uLbm.js +83 -0
- package/dist/TermsSettings-DWvaPneu.js +102 -0
- package/dist/ThemeColorRow-BXWnvfz-.js +67 -0
- package/dist/ToggleBinding-DydtwpNG.js +38 -0
- package/dist/UploadModal-D_EDKHGD.js +95 -0
- package/dist/VideoPlayerInput-B9yzUeBW.js +93 -0
- package/dist/VideoPlayerSettings-Bvp9l0yj.js +61 -0
- package/dist/VideoSelectModal-DY3N4JiS.js +100 -0
- package/dist/anime.es-BrPTThYb.js +858 -0
- package/dist/answerDocumentMixin-BYZPU_R-.js +51 -0
- package/dist/color-TdtKxwVa.js +19 -0
- package/dist/debounce-BPnlzNwd.js +84 -0
- package/dist/dom-CJxkno7i.js +91 -0
- package/dist/favicon.ico +0 -0
- package/dist/focusDrawerMixin-DC9Oa1i7.js +22 -0
- package/dist/formComponentsInstall-CEW6TK6z.js +2499 -0
- package/dist/formDrawerState-CAzvSMiQ.js +20 -0
- package/dist/formValidationMixin-D7zXxCpC.js +49 -0
- package/dist/i18nMessages-Chz_lxGG.js +17 -0
- package/dist/index-B9WDC3Xe.js +166 -0
- package/dist/index-BCMaUC5r.js +3916 -0
- package/dist/index-BDMI4NVY.js +492 -0
- package/dist/index-BbscgdRg.js +81 -0
- package/dist/index-CLUljEDI.js +347 -0
- package/dist/index-SxyZvewN.js +102 -0
- package/dist/index.es.js +35 -0
- package/dist/index.umd.js +3148 -0
- package/dist/main-CQBEuZk9.js +56739 -0
- package/dist/mapFormMixin-DlFcgwhm.js +72 -0
- package/dist/omit-BWy0Zhd3.js +31 -0
- package/dist/publicSenderState-CvOcFv2U.js +21 -0
- package/dist/splitpanes-BHUVsCZF.js +382 -0
- package/dist/style.css +4 -0
- package/dist/throttle-BrC8eGjQ.js +18 -0
- package/dist/tinycolor-PhFP695w.js +633 -0
- package/dist/tippy.esm-7dmKOUvu.js +1799 -0
- package/dist/utils-NBLgNGHR.js +108 -0
- package/dist/vuedraggable.umd-ByfH7ZxC.js +3161 -0
- package/dist/vuex.esm-DKGl8mcw.js +467 -0
- package/package.json +1 -1
- package/vite.config.ts +0 -1
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { m as n } from "./mapFormMixin-DlFcgwhm.js";
|
|
2
|
+
import { I as a } from "./InputToggleRow-DSSvhPKA.js";
|
|
3
|
+
import { C as c } from "./CPriceInput-Dlx44UrR.js";
|
|
4
|
+
import { n as o } from "./main-CQBEuZk9.js";
|
|
5
|
+
const i = {
|
|
6
|
+
i18nOptions: {
|
|
7
|
+
namespaces: "ExtraWorkConstructionPricingListEdit",
|
|
8
|
+
messages: {
|
|
9
|
+
sv: {
|
|
10
|
+
workPrice: "Arbete",
|
|
11
|
+
managementPrice: "Arbetsledning",
|
|
12
|
+
entrepreneurMarkupPercentage: "Påslag för underentreprenader",
|
|
13
|
+
miscMarkupPercentage: "Påslag för material, varor och övrigt"
|
|
14
|
+
},
|
|
15
|
+
en: {
|
|
16
|
+
workPrice: "Work",
|
|
17
|
+
managementPrice: "Work management",
|
|
18
|
+
entrepreneurMarkupPercentage: "Markup for subcontractors",
|
|
19
|
+
miscMarkupPercentage: "Markup for material, goods and other",
|
|
20
|
+
travelCosts: "Travel costs for extra work"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
name: "ExtraWorkConstructionPricingListEdit",
|
|
25
|
+
components: {
|
|
26
|
+
InputToggleRow: a,
|
|
27
|
+
CPriceInput: c
|
|
28
|
+
},
|
|
29
|
+
mixins: [
|
|
30
|
+
n(
|
|
31
|
+
[
|
|
32
|
+
"workPrice",
|
|
33
|
+
"managementPrice",
|
|
34
|
+
"entrepreneurMarkupPercentage",
|
|
35
|
+
"miscMarkupPercentage"
|
|
36
|
+
],
|
|
37
|
+
{ type: "number" }
|
|
38
|
+
)
|
|
39
|
+
]
|
|
40
|
+
};
|
|
41
|
+
var s = function() {
|
|
42
|
+
var e = this, r = e._self._c;
|
|
43
|
+
return r("div", [r("div", { staticClass: "flex w-full justify-end", staticStyle: { position: "relative" } }, [e.workPrice || e.managementPrice ? r("div", { staticClass: "ex-vat" }, [e._v(" " + e._s(e.$t("_common:vat.exVat", { thing: e.$t("_common:vat.sharedTitle") }).capitalize()) + " ")]) : e._e()]), r("InputToggleRow", { attrs: { "display-value": e.workPrice ? `${e.workPrice / 100} ${e.$t("_common:currency.SEK")}/${e.$t(
|
|
44
|
+
"_common:unitType.hour"
|
|
45
|
+
)}` : e.$t("_common:add"), label: e.$t("workPrice") } }, [r("CPriceInput", { attrs: { currency: "SEK", min: "0", "suffix-class": "text-gray-400" }, scopedSlots: e._u([{ key: "suffix", fn: function() {
|
|
46
|
+
return [e._v(" " + e._s(e.$t("currency.SEK")) + "/" + e._s(e.$t("_common:unitType.hour")) + " ")];
|
|
47
|
+
}, proxy: !0 }]), model: { value: e.workPrice, callback: function(t) {
|
|
48
|
+
e.workPrice = e._n(t);
|
|
49
|
+
}, expression: "workPrice" } })], 1), r("InputToggleRow", { attrs: { "display-value": e.managementPrice ? `${e.managementPrice / 100} kr/h` : e.$t("_common:add"), label: e.$t("managementPrice") } }, [r("CPriceInput", { attrs: { currency: "SEK", min: "0", "suffix-class": "text-gray-400" }, scopedSlots: e._u([{ key: "suffix", fn: function() {
|
|
50
|
+
return [e._v(" " + e._s(e.$t("_common:currency.SEK")) + "/" + e._s(e.$t("unitType.hour")) + " ")];
|
|
51
|
+
}, proxy: !0 }]), model: { value: e.managementPrice, callback: function(t) {
|
|
52
|
+
e.managementPrice = e._n(t);
|
|
53
|
+
}, expression: "managementPrice" } })], 1), r("InputToggleRow", { attrs: { "display-value": e.entrepreneurMarkupPercentage ? `${e.entrepreneurMarkupPercentage} %` : e.$t("_common:add"), label: e.$t("entrepreneurMarkupPercentage") } }, [r("CInput", { model: { value: e.entrepreneurMarkupPercentage, callback: function(t) {
|
|
54
|
+
e.entrepreneurMarkupPercentage = e._n(t);
|
|
55
|
+
}, expression: "entrepreneurMarkupPercentage" } }, [r("template", { slot: "suffix" }, [e._v("%")])], 2)], 1), r("InputToggleRow", { attrs: { "display-value": e.miscMarkupPercentage ? `${e.miscMarkupPercentage} %` : e.$t("_common:add"), label: e.$t("miscMarkupPercentage") } }, [r("CInput", { model: { value: e.miscMarkupPercentage, callback: function(t) {
|
|
56
|
+
e.miscMarkupPercentage = e._n(t);
|
|
57
|
+
}, expression: "miscMarkupPercentage" } }, [r("template", { slot: "suffix" }, [e._v("%")])], 2)], 1)], 1);
|
|
58
|
+
}, u = [], m = /* @__PURE__ */ o(
|
|
59
|
+
i,
|
|
60
|
+
s,
|
|
61
|
+
u,
|
|
62
|
+
!1,
|
|
63
|
+
null,
|
|
64
|
+
"f5b5c32c"
|
|
65
|
+
);
|
|
66
|
+
const _ = m.exports;
|
|
67
|
+
export {
|
|
68
|
+
_ as default
|
|
69
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { m as e } from "./mapFormMixin-DlFcgwhm.js";
|
|
2
|
+
import { n as r } from "./main-CQBEuZk9.js";
|
|
3
|
+
const a = {
|
|
4
|
+
name: "EstimatedWorkStartAndEndAtText",
|
|
5
|
+
components: {
|
|
6
|
+
Read: () => import("./Index-BLeQprjq.js"),
|
|
7
|
+
Edit: () => import("./Index-Bs8wprXw.js")
|
|
8
|
+
},
|
|
9
|
+
mixins: [e(["startAt", "endAt"])]
|
|
10
|
+
};
|
|
11
|
+
var s = function() {
|
|
12
|
+
var t = this, n = t._self._c;
|
|
13
|
+
return t.canEdit ? n("Edit", t._g({ attrs: { _document: t._document, _value: t._value } }, t.$listeners)) : n("Read", { attrs: { "start-at": t.startAt, "end-at": t.endAt } });
|
|
14
|
+
}, o = [], m = /* @__PURE__ */ r(
|
|
15
|
+
a,
|
|
16
|
+
s,
|
|
17
|
+
o,
|
|
18
|
+
!1,
|
|
19
|
+
null,
|
|
20
|
+
null
|
|
21
|
+
);
|
|
22
|
+
const c = m.exports;
|
|
23
|
+
export {
|
|
24
|
+
c as default
|
|
25
|
+
};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { m as r } from "./mapFormMixin-DlFcgwhm.js";
|
|
2
|
+
import { q as l, n as o } from "./main-CQBEuZk9.js";
|
|
3
|
+
const c = {
|
|
4
|
+
name: "DocChapter",
|
|
5
|
+
components: {
|
|
6
|
+
CInput: l
|
|
7
|
+
},
|
|
8
|
+
mixins: [r(["title"])],
|
|
9
|
+
props: {
|
|
10
|
+
enableSpacingX: {
|
|
11
|
+
type: Boolean,
|
|
12
|
+
default: !0
|
|
13
|
+
},
|
|
14
|
+
enableSpacingY: {
|
|
15
|
+
type: Boolean,
|
|
16
|
+
default: !0
|
|
17
|
+
},
|
|
18
|
+
pdfSpacingX: {
|
|
19
|
+
type: Boolean,
|
|
20
|
+
default: !1
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
methods: {
|
|
24
|
+
// Naming convention used by generateTemplate-functions in order for it to choose whether or not to run on add
|
|
25
|
+
conditionalOnAdd() {
|
|
26
|
+
const a = () => this.$refs.input.focus();
|
|
27
|
+
this.$refs.input ? a() : this.$once("triggerOnAdd", a);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
var p = function() {
|
|
32
|
+
var i;
|
|
33
|
+
var t = this, n = t._self._c;
|
|
34
|
+
return n("div", { staticClass: "chapter" }, [n("div", { staticClass: "no-drag", class: {
|
|
35
|
+
"chapter-spacing-x": t.enableSpacingX,
|
|
36
|
+
"chapter-spacing-y": t.enableSpacingY,
|
|
37
|
+
"pdf-spacing-x": t.pdfSpacingX
|
|
38
|
+
} }, [t.canEdit && ((i = t._value) != null && i.title) ? n("CInput", { ref: "input", staticClass: "title preview-title-input", attrs: { value: t.title, spellcheck: !1, placeholder: t.$t("components:account.documentForm.titleAndText.title"), static: "" }, on: { blur: (e) => {
|
|
39
|
+
var s;
|
|
40
|
+
t.title = ((s = e.target) == null ? void 0 : s.value) || "";
|
|
41
|
+
}, "hook:mounted": function(e) {
|
|
42
|
+
return t.$emit("triggerOnAdd");
|
|
43
|
+
} }, nativeOn: { keydown: function(e) {
|
|
44
|
+
return !e.type.indexOf("key") && t._k(e.keyCode, "enter", 13, e.key, "Enter") ? null : e.target.blur();
|
|
45
|
+
} } }) : t.title ? n("div", { staticClass: "title" }, [t._v(" " + t._s(t.title) + " ")]) : t._e(), n("div", [t._t("default")], 2)], 1)]);
|
|
46
|
+
}, d = [], u = /* @__PURE__ */ o(
|
|
47
|
+
c,
|
|
48
|
+
p,
|
|
49
|
+
d,
|
|
50
|
+
!1,
|
|
51
|
+
null,
|
|
52
|
+
"5f56ae28"
|
|
53
|
+
);
|
|
54
|
+
const _ = u.exports;
|
|
55
|
+
export {
|
|
56
|
+
_ as default
|
|
57
|
+
};
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import { m as c } from "./mapFormMixin-DlFcgwhm.js";
|
|
2
|
+
import l from "./FilePreviewModal-BjhNyb6L.js";
|
|
3
|
+
import { n as m, t as p } from "./main-CQBEuZk9.js";
|
|
4
|
+
const d = {
|
|
5
|
+
name: "FilePreviewWrapper",
|
|
6
|
+
components: {
|
|
7
|
+
FilePreviewModal: l
|
|
8
|
+
},
|
|
9
|
+
props: {
|
|
10
|
+
list: {
|
|
11
|
+
type: Array,
|
|
12
|
+
default: () => [],
|
|
13
|
+
validator: (t) => t.length ? !(!t[0].hasOwnProperty("url") || !t[0].hasOwnProperty("name") || !t[0].hasOwnProperty("mime")) : !0
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
computed: {
|
|
17
|
+
fileList() {
|
|
18
|
+
return this.list.reduce(
|
|
19
|
+
(t, e) => this.isImage(e.mime) || this.isPdf(e.mime) ? [...t, e] : t,
|
|
20
|
+
[]
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
methods: {
|
|
25
|
+
isImage(t) {
|
|
26
|
+
const e = t.toLowerCase(t);
|
|
27
|
+
return /image\/(gif|jpg|jpeg|png|bmp|svg|svg\+xml|tiff)$/.test(e);
|
|
28
|
+
},
|
|
29
|
+
isPdf(t) {
|
|
30
|
+
return t === "application/pdf";
|
|
31
|
+
},
|
|
32
|
+
FilePreviewModal(t) {
|
|
33
|
+
this.$modal.show(
|
|
34
|
+
l,
|
|
35
|
+
{
|
|
36
|
+
index: this.fileList.indexOf(this.list[t]),
|
|
37
|
+
// Translate src index to img list index
|
|
38
|
+
list: this.fileList
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
adaptive: !0,
|
|
42
|
+
height: "100%",
|
|
43
|
+
width: "100%",
|
|
44
|
+
classes: "",
|
|
45
|
+
// Don't remove. In place to not apply default modal class
|
|
46
|
+
transition: ""
|
|
47
|
+
}
|
|
48
|
+
);
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
render() {
|
|
52
|
+
return this.$scopedSlots.default({
|
|
53
|
+
openModal: (t) => this.FilePreviewModal(t),
|
|
54
|
+
isImageOrPdf: (t) => this.isImage(t) || this.isPdf(t)
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
}, u = null, f = null;
|
|
58
|
+
var h = /* @__PURE__ */ m(
|
|
59
|
+
d,
|
|
60
|
+
u,
|
|
61
|
+
f,
|
|
62
|
+
!1,
|
|
63
|
+
null,
|
|
64
|
+
null
|
|
65
|
+
);
|
|
66
|
+
const w = h.exports, v = {
|
|
67
|
+
name: "AttachmentList",
|
|
68
|
+
components: {
|
|
69
|
+
FilePreviewWrapper: w,
|
|
70
|
+
BaseUpload: () => import("./BaseUpload-BUrXX3fT.js"),
|
|
71
|
+
AttachmentItem: () => import("./AttachmentItem-Da1-7xwf.js")
|
|
72
|
+
},
|
|
73
|
+
mixins: [c(["attachments"])],
|
|
74
|
+
data() {
|
|
75
|
+
return {
|
|
76
|
+
hoverIndex: null,
|
|
77
|
+
newFiles: [],
|
|
78
|
+
maxFileSize: 1e3 * 1e3 * 30
|
|
79
|
+
// 30 MB
|
|
80
|
+
};
|
|
81
|
+
},
|
|
82
|
+
computed: {
|
|
83
|
+
cAttachments() {
|
|
84
|
+
return [
|
|
85
|
+
...this.attachments,
|
|
86
|
+
...this.newFiles.map(
|
|
87
|
+
({ displayName: t, type: e, url: s, progress: n }) => ({
|
|
88
|
+
name: t,
|
|
89
|
+
mime: e,
|
|
90
|
+
url: s,
|
|
91
|
+
progress: parseInt(n, 10)
|
|
92
|
+
})
|
|
93
|
+
)
|
|
94
|
+
];
|
|
95
|
+
},
|
|
96
|
+
showRecentModal() {
|
|
97
|
+
return !this.viewSettings.isPublicForm;
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
methods: {
|
|
101
|
+
immutable: p,
|
|
102
|
+
async onUploadSuccess(t) {
|
|
103
|
+
const { id: e, displayName: s, url: n, mime: i } = t.response;
|
|
104
|
+
if (!e)
|
|
105
|
+
throw new Error("Could not read id from uploaded file");
|
|
106
|
+
this.attachments = [
|
|
107
|
+
...this.attachments,
|
|
108
|
+
{
|
|
109
|
+
fileId: e,
|
|
110
|
+
name: s,
|
|
111
|
+
mime: i,
|
|
112
|
+
url: n
|
|
113
|
+
}
|
|
114
|
+
], this.$refs.uploader.remove(t);
|
|
115
|
+
},
|
|
116
|
+
remove(t) {
|
|
117
|
+
if (!this.attachments[t])
|
|
118
|
+
return;
|
|
119
|
+
const e = this.attachments.slice();
|
|
120
|
+
e.splice(t, 1), this.attachments = e;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
var g = function() {
|
|
125
|
+
var e = this, s = e._self._c;
|
|
126
|
+
return s("div", { staticClass: "font-inter" }, [s("FilePreviewWrapper", { attrs: { list: e.cAttachments }, scopedSlots: e._u([{ key: "default", fn: function({ openModal: n, isImageOrPdf: i }) {
|
|
127
|
+
return [s("div", e._l(e.cAttachments, function(o, r) {
|
|
128
|
+
return s("AttachmentItem", { key: r, attrs: { "is-image-or-pdf": i(o.mime), attachment: o, "can-edit": e.canEdit, "upload-progress": o.progress }, on: { click: function(a) {
|
|
129
|
+
i(o.mime) && n(r);
|
|
130
|
+
}, remove: function(a) {
|
|
131
|
+
return e.remove(r);
|
|
132
|
+
}, input: function(a) {
|
|
133
|
+
e.attachments = e.immutable(e.attachments).set(a, r);
|
|
134
|
+
} } });
|
|
135
|
+
}), 1)];
|
|
136
|
+
} }]) }), e.canEdit ? [s("BaseUpload", { ref: "uploader", attrs: { "recent-modal": e.showRecentModal, "autostart-upload": !0, "max-size": e.maxFileSize, extensions: "png,gif,jpg,jpeg,svg,bmp,heic,heif,pdf,txt,odp,ods,odt,rtf,doc,docx,xls,xlsx,ppt,pptx,csv,ogv,mp4,webm,m4v,ogg,mp3,wav,zip,rar,json,7z,mpeg,oga,ogv,vsd,weba,webm,webp,xml,gz,tif,jfif,dwg,dwf,dwfx,dwt,msg,ai,psd,md,markdown,mdown,markdn", accept: "*" }, on: { "upload-success": e.onUploadSuccess }, model: { value: e.newFiles, callback: function(n) {
|
|
137
|
+
e.newFiles = n;
|
|
138
|
+
}, expression: "newFiles" } }), s("CButton", { attrs: { type: "none", pattern: "secondary", wide: "", "icon-left": "upload-cloud" }, on: { click: () => e.$refs.uploader ? e.$refs.uploader.open() : null } }, [e._v(" " + e._s(e.$t("_common:upload", { thing: e.$t("_common:file") })) + " ")])] : e._e()], 2);
|
|
139
|
+
}, _ = [], x = /* @__PURE__ */ m(
|
|
140
|
+
v,
|
|
141
|
+
g,
|
|
142
|
+
_,
|
|
143
|
+
!1,
|
|
144
|
+
null,
|
|
145
|
+
null
|
|
146
|
+
);
|
|
147
|
+
const P = x.exports;
|
|
148
|
+
export {
|
|
149
|
+
P as default
|
|
150
|
+
};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { n as s } from "./main-CQBEuZk9.js";
|
|
2
|
+
const n = {
|
|
3
|
+
name: "InputCompactRow",
|
|
4
|
+
props: {
|
|
5
|
+
label: {
|
|
6
|
+
type: String,
|
|
7
|
+
required: !0
|
|
8
|
+
},
|
|
9
|
+
showClear: {
|
|
10
|
+
type: Boolean,
|
|
11
|
+
default: !1
|
|
12
|
+
},
|
|
13
|
+
displayValue: {
|
|
14
|
+
type: [String, Number, Boolean],
|
|
15
|
+
default: ""
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
data() {
|
|
19
|
+
return {
|
|
20
|
+
isEditing: !1
|
|
21
|
+
};
|
|
22
|
+
},
|
|
23
|
+
methods: {
|
|
24
|
+
openEdit() {
|
|
25
|
+
this.isEditing = !0, this.$nextTick(() => {
|
|
26
|
+
const i = this.$el.querySelector("input, [contenteditable]");
|
|
27
|
+
i && i.focus();
|
|
28
|
+
});
|
|
29
|
+
},
|
|
30
|
+
closeEdit() {
|
|
31
|
+
this.isEditing = !1;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
var l = function() {
|
|
36
|
+
var t = this, e = t._self._c;
|
|
37
|
+
return e("div", { staticClass: "input-row" }, [e("div", { staticClass: "flex w-full justify-between" }, [e("div", { staticClass: "input-label" }, [t._t("label", function() {
|
|
38
|
+
return [t._v(t._s(t.label))];
|
|
39
|
+
})], 2), e("div", { staticClass: "flex w-full justify-end", staticStyle: { width: "initial" } }, [t._t("toggle", function() {
|
|
40
|
+
return [t.showClear ? e("CButton", { directives: [{ name: "tooltip", rawName: "v-tooltip", value: t.$t("remove"), expression: "$t('remove')" }], staticClass: "clear-input-button", attrs: { size: "small", icon: "x" }, on: { click: function(r) {
|
|
41
|
+
return t.$emit("remove");
|
|
42
|
+
} } }) : t._e(), t.isEditing ? t.$scopedSlots.bottom ? t._e() : e("div", { directives: [{ name: "click-outside", rawName: "v-click-outside", value: t.closeEdit, expression: "closeEdit" }], ref: "inputContainer" }, [t._t("default")], 2) : e("CButton", { staticClass: "input-toggle-button", class: { "is-edit": t.isEditing }, attrs: { type: "none", pattern: "secondary", size: "small" }, on: { click: t.openEdit } }, [t._t("displayValue", function() {
|
|
43
|
+
return [t._v(t._s(t.displayValue))];
|
|
44
|
+
})], 2)];
|
|
45
|
+
})], 2)]), t.$scopedSlots.bottom ? e("div", [e("div", { directives: [{ name: "click-outside", rawName: "v-click-outside", value: () => t.isEditing ? t.closeEdit : null, expression: "() => (isEditing ? closeEdit : null)" }] }, [t._t("bottom", null, { isEditing: t.isEditing, closeEdit: t.closeEdit })], 2)]) : t._e()]);
|
|
46
|
+
}, o = [], a = /* @__PURE__ */ s(
|
|
47
|
+
n,
|
|
48
|
+
l,
|
|
49
|
+
o,
|
|
50
|
+
!1,
|
|
51
|
+
null,
|
|
52
|
+
"7c177475"
|
|
53
|
+
);
|
|
54
|
+
const d = a.exports;
|
|
55
|
+
export {
|
|
56
|
+
d as I
|
|
57
|
+
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { n as i } from "./main-CQBEuZk9.js";
|
|
2
|
+
const n = {
|
|
3
|
+
name: "ManualPopover",
|
|
4
|
+
data() {
|
|
5
|
+
return {
|
|
6
|
+
open: !1
|
|
7
|
+
};
|
|
8
|
+
},
|
|
9
|
+
mounted() {
|
|
10
|
+
var e, o;
|
|
11
|
+
const t = (o = (e = this.$slots.default) == null ? void 0 : e[0]) == null ? void 0 : o.elm;
|
|
12
|
+
t && t.addEventListener("click", this.onButtonClick);
|
|
13
|
+
},
|
|
14
|
+
beforeDestroy() {
|
|
15
|
+
var e, o;
|
|
16
|
+
const t = (o = (e = this.$slots.default) == null ? void 0 : e[0]) == null ? void 0 : o.elm;
|
|
17
|
+
t && t.removeEventListener("click", this.onButtonClick), this.removeClickOutsideListener();
|
|
18
|
+
},
|
|
19
|
+
methods: {
|
|
20
|
+
onButtonClick() {
|
|
21
|
+
this.open = !this.open, this.open ? this.addClickOutsideListener() : this.removeClickOutsideListener();
|
|
22
|
+
},
|
|
23
|
+
onClickOutside(t) {
|
|
24
|
+
const e = this.$refs.popover.$el;
|
|
25
|
+
!this.$el.contains(t.target) && !e.contains(t.target) && (this.open = !1, this.removeClickOutsideListener());
|
|
26
|
+
},
|
|
27
|
+
addClickOutsideListener() {
|
|
28
|
+
setTimeout(() => {
|
|
29
|
+
this.getRootElm().addEventListener("click", this.onClickOutside);
|
|
30
|
+
}, 0);
|
|
31
|
+
},
|
|
32
|
+
removeClickOutsideListener() {
|
|
33
|
+
this.getRootElm().removeEventListener("click", this.onClickOutside);
|
|
34
|
+
},
|
|
35
|
+
getRootElm() {
|
|
36
|
+
var o, s;
|
|
37
|
+
const t = (s = (o = this.$el).getRootNode) == null ? void 0 : s.call(o);
|
|
38
|
+
return (t == null ? void 0 : t.toString()) === "[object ShadowRoot]" ? t : document;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
var r = function() {
|
|
43
|
+
var e = this, o = e._self._c;
|
|
44
|
+
return o("v-popover", e._g(e._b({ ref: "popover", attrs: { trigger: "manual", open: e.open, "auto-hide": !1 }, on: { "update:open": function(s) {
|
|
45
|
+
e.open = s;
|
|
46
|
+
} } }, "v-popover", e.$attrs, !1), e.$listeners), [e._t("default"), o("div", { attrs: { slot: "popover" }, slot: "popover" }, [e._t("popover")], 2)], 2);
|
|
47
|
+
}, l = [], a = /* @__PURE__ */ i(
|
|
48
|
+
n,
|
|
49
|
+
r,
|
|
50
|
+
l,
|
|
51
|
+
!1,
|
|
52
|
+
null,
|
|
53
|
+
null
|
|
54
|
+
);
|
|
55
|
+
const d = a.exports;
|
|
56
|
+
export {
|
|
57
|
+
d as M
|
|
58
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { m as a } from "./mapFormMixin-DlFcgwhm.js";
|
|
2
|
+
import { B as n } from "./BlockMedia-CYI07qAn.js";
|
|
3
|
+
import { n as m } from "./main-CQBEuZk9.js";
|
|
4
|
+
const o = {
|
|
5
|
+
name: "MediaWrapper",
|
|
6
|
+
components: { BlockMedia: n },
|
|
7
|
+
mixins: [a(["item"])]
|
|
8
|
+
};
|
|
9
|
+
var i = function() {
|
|
10
|
+
var e = this, r = e._self._c;
|
|
11
|
+
return r("BlockMedia", { attrs: { media: e.item.media } });
|
|
12
|
+
}, t = [], s = /* @__PURE__ */ m(
|
|
13
|
+
o,
|
|
14
|
+
i,
|
|
15
|
+
t,
|
|
16
|
+
!1,
|
|
17
|
+
null,
|
|
18
|
+
null
|
|
19
|
+
);
|
|
20
|
+
const f = s.exports;
|
|
21
|
+
export {
|
|
22
|
+
f as default
|
|
23
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { P as e } from "./PlainHtml-BMPZs2fT.js";
|
|
2
|
+
import { n } from "./main-CQBEuZk9.js";
|
|
3
|
+
const r = {
|
|
4
|
+
name: "NotBindingText",
|
|
5
|
+
i18nOptions: {
|
|
6
|
+
namespaces: "NotBindingText",
|
|
7
|
+
messages: {
|
|
8
|
+
en: {
|
|
9
|
+
description: "The approval of this document is not binding and the contractor reserves the right on reasonable grounds (for instance, lack of time) refrain from accepting the project."
|
|
10
|
+
},
|
|
11
|
+
sv: {
|
|
12
|
+
description: "Svaret på dokumentet är ej bindande och Utställaren förbehåller sig rätten att vid rimliga skäl (exempelvis vid brist på tid) avstå från att anta projektet."
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
17
|
+
render(t) {
|
|
18
|
+
return t(e, [this.$t("description")]);
|
|
19
|
+
}
|
|
20
|
+
}, i = null, o = null;
|
|
21
|
+
var s = /* @__PURE__ */ n(
|
|
22
|
+
r,
|
|
23
|
+
i,
|
|
24
|
+
o,
|
|
25
|
+
!1,
|
|
26
|
+
null,
|
|
27
|
+
null
|
|
28
|
+
);
|
|
29
|
+
const c = s.exports;
|
|
30
|
+
export {
|
|
31
|
+
c as default
|
|
32
|
+
};
|