@wisemen/wise-crm-web 1.0.0 → 1.2.0
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/ActivityIcon-DNdtN-M_.js +19 -0
- package/dist/AppSkeletonLoader-Dq6pKznm.js +1112 -0
- package/dist/{AttachmentIcon-CsucE3yf.js → AttachmentIcon-BLUd7LaN.js} +9 -7
- package/dist/BoldIcon-WRYUWz15.js +16 -0
- package/dist/{BookIcon-DgT3flV5.js → BookIcon-Bb3r5y_J.js} +9 -7
- package/dist/{BuildingIcon-Bm18omgW.js → BuildingIcon-DFutRg8d.js} +9 -7
- package/dist/{BuildingsIcon-D4X7QciL.js → BuildingsIcon-BVHy6yoa.js} +9 -7
- package/dist/{BulletListIcon-CNCV-cOS.js → BulletListIcon-BhOXLSBa.js} +9 -7
- package/dist/BusinessDetailSidebarProvider-a6VeNUii.js +2946 -0
- package/dist/BusinessDetailView-Dz3wDSx5.js +24 -0
- package/dist/ChevronDownIcon-BmyTSPND.js +19 -0
- package/dist/ClockIcon-BYfZAvIE.js +23 -0
- package/dist/ClockPlusIcon-BcNi0Y9I.js +23 -0
- package/dist/{CopyIcon-CUomKXdn.js → CopyIcon-2eV8MRv_.js} +9 -7
- package/dist/CrmDetailHeaderCard-BkA0Z-Cu.js +2523 -0
- package/dist/CrmDetailView-BhZEQqUH.js +67 -0
- package/dist/DealCommunicationTabView-Drp9MEPu.js +140 -0
- package/dist/DealDetailView-DWLudchX.js +1049 -0
- package/dist/DealExternalAttachment-B6l0gDqF.js +179 -0
- package/dist/{DealIcon-CpO-DkyS.js → DealIcon-BwUWYDxo.js} +9 -7
- package/dist/DealSendMailDialog-Dqei4933.js +1566 -0
- package/dist/DownloadCloudIcon-BSrLGGrY.js +19 -0
- package/dist/{EditWithLineIcon-C0WMD50F.js → EditWithLineIcon-BKYDPJOY.js} +9 -7
- package/dist/{Error-X0deDY-N.js → Error-za-wClcU.js} +2591 -2462
- package/dist/{FileIcon-3FebXgYQ.js → FileIcon-DL1e1tAu.js} +9 -7
- package/dist/FilterLinesIcon-DgVMySAE.js +22 -0
- package/dist/H1Icon-B6NEsEbj.js +17 -0
- package/dist/{H2Icon-CuEmp9I0.js → H2Icon-CNof5Ohu.js} +9 -7
- package/dist/{H3Icon-wAPhdYIf.js → H3Icon-B2F2Tb6r.js} +9 -7
- package/dist/HashIcon-C_XttKfW.js +19 -0
- package/dist/HomeFilledIcon-DtZ2eXxt.js +16 -0
- package/dist/IndividualDetailSidebarProvider-jjRoK1Av.js +609 -0
- package/dist/IndividualDetailView-BqIRHn-0.js +24 -0
- package/dist/ItalicIcon-DqBns3yy.js +17 -0
- package/dist/{LayersTreeIcon-Ct-owndO.js → LayersTreeIcon-DZZCSCY9.js} +10 -8
- package/dist/{LinkBrokenIcon-CTlqmapl.js → LinkBrokenIcon-BNBpWSi7.js} +9 -7
- package/dist/{LinkExternalIcon-LOVtSqBT.js → LinkExternalIcon-B7SHeB1_.js} +9 -7
- package/dist/LinkIcon-8bCrZEv9.js +17 -0
- package/dist/{LocationPinIcon-Cp-wRgk2.js → LocationPinIcon-UySRqSfG.js} +9 -7
- package/dist/{MailIcon-CnTrB1k3.js → MailIcon-BT7gSIZb.js} +9 -7
- package/dist/{MobilePhoneIcon-B747hmpS.js → MobilePhoneIcon-_KQGnCSS.js} +9 -7
- package/dist/NumberedListIcon-B-JVTSAe.js +17 -0
- package/dist/{PhoneIcon-94MYVL85.js → PhoneIcon-DGGW_MNR.js} +9 -7
- package/dist/{RefreshIcon-DRe3coBc.js → RefreshIcon-D1QWfdPD.js} +9 -7
- package/dist/{SendIcon-MYItp1xI.js → SendIcon-BtJ-NCec.js} +9 -7
- package/dist/{SettingsIcon-C0qTAv0w.js → SettingsIcon-CWFwJelS.js} +10 -8
- package/dist/{StarOutlineIcon-CiFLgepk.js → StarOutlineIcon-C-ELTCDQ.js} +9 -7
- package/dist/{StarYellowIcon-C0v_XGwI.js → StarYellowIcon-7wuNWaQO.js} +9 -7
- package/dist/{ThreeDotsIcon-lujOTU3G.js → ThreeDotsIcon-C56RWk-0.js} +12 -10
- package/dist/TimeLineMarkerIcon-DLmPwfs6.js +18 -0
- package/dist/{TrashIcon-v4L9SEK_.js → TrashIcon-o4PWmcYe.js} +9 -7
- package/dist/UploadCloudIcon-D2tWB0NP.js +19 -0
- package/dist/{UserCircleIcon-BjUt_2C4.js → UserCircleIcon-DiDajcIH.js} +10 -8
- package/dist/UserIcon-Bv1eF7ln.js +22 -0
- package/dist/{VerticalDotsIcon-Y3m6tlQ2.js → VerticalDotsIcon-YcD73UqY.js} +9 -7
- package/dist/{WalletIcon-pPsKbzmh.js → WalletIcon-CUh92U5K.js} +9 -7
- package/dist/_plugin-vue_export-helper-D3hKq4w_.js +8 -0
- package/dist/client-9P6xe_5g.js +4188 -0
- package/dist/components/auto-focus/AutoFocus.vue.d.ts +13 -0
- package/dist/components/column-layout/ColumnLayout.vue.d.ts +1 -1
- package/dist/components/row-layout/RowLayout.vue.d.ts +1 -1
- package/dist/components/text/Text.vue.d.ts +1 -1
- package/dist/index.js +1881 -1693
- package/dist/style.css +2 -2
- package/dist/testing.js +102 -98
- package/dist/utils/color.util.d.ts +6 -0
- package/dist/{uuid.util-C1p-yuFc.js → uuid.util-DpiDKVoj.js} +4 -2
- package/package.json +30 -30
- package/dist/ActivityIcon-DFD9ZhO0.js +0 -17
- package/dist/AppSkeletonLoader-BAhoOmFD.js +0 -1106
- package/dist/BoldIcon-DY2FlAS0.js +0 -14
- package/dist/BusinessDetailSidebarProvider-Dm6Dd7Nq.js +0 -2899
- package/dist/BusinessDetailView-BHVUfCpV.js +0 -24
- package/dist/ChevronDownIcon-CfBAAAca.js +0 -17
- package/dist/ClockIcon-Ckr1IQBt.js +0 -21
- package/dist/ClockPlusIcon-CVN69pCS.js +0 -21
- package/dist/CrmDetailHeaderCard-CiVLyIuw.js +0 -2516
- package/dist/CrmDetailView-DaAuWeiB.js +0 -65
- package/dist/DealCommunicationTabView-xq_zOAsr.js +0 -137
- package/dist/DealDetailView-C54XpYN1.js +0 -1021
- package/dist/DealExternalAttachment-Dp44vkgt.js +0 -177
- package/dist/DealSendMailDialog-D11Tgd_A.js +0 -1552
- package/dist/DownloadCloudIcon-VMmB9vit.js +0 -17
- package/dist/FilterLinesIcon-DHpRPKJB.js +0 -20
- package/dist/H1Icon-CPVGTTtl.js +0 -15
- package/dist/HashIcon-C2kfHjTC.js +0 -17
- package/dist/HomeFilledIcon-CxIazF0B.js +0 -14
- package/dist/IndividualDetailSidebarProvider-BvjhFng9.js +0 -608
- package/dist/IndividualDetailView-Cq8iAwQv.js +0 -24
- package/dist/ItalicIcon-DfV3EOdk.js +0 -15
- package/dist/LinkIcon-DqBbVrvs.js +0 -15
- package/dist/NumberedListIcon-amJxDaaD.js +0 -15
- package/dist/TimeLineMarkerIcon-C4LfErbc.js +0 -16
- package/dist/UploadCloudIcon-j1-1Rvqb.js +0 -17
- package/dist/UserIcon-Cb2jFKLr.js +0 -20
- package/dist/_plugin-vue_export-helper-BSi1g3Lh.js +0 -6
- package/dist/client-S6BLV3Ct.js +0 -4191
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { A as e, D as t, T as n } from "./Error-za-wClcU.js";
|
|
2
|
+
import { Fragment as r, createBlock as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, createTextVNode as c, createVNode as l, defineComponent as u, openBlock as d, ref as f, renderList as p, renderSlot as m, toDisplayString as h, toValue as g, unref as _, withCtx as v } from "vue";
|
|
3
|
+
import { VcIconButton as y, VcRouterLinkTabs as b, VcRouterLinkTabsItem as x } from "@wisemen/vue-core-components";
|
|
4
|
+
import { RouterView as S } from "vue-router";
|
|
5
|
+
import { onKeyStroke as C } from "@vueuse/core";
|
|
6
|
+
//#region src/utils/context.util.ts
|
|
7
|
+
var w = class {
|
|
8
|
+
static parentHasAriaHidden(e) {
|
|
9
|
+
let t = e.parentElement;
|
|
10
|
+
for (; t;) {
|
|
11
|
+
if (t.hasAttribute("aria-hidden")) return t.getAttribute("aria-hidden") === "true";
|
|
12
|
+
t = t.parentElement;
|
|
13
|
+
}
|
|
14
|
+
return !1;
|
|
15
|
+
}
|
|
16
|
+
}, T = { key: 0 }, E = { class: "flex h-dvh w-dvw flex-1 overflow-hidden" }, D = { class: "flex h-full min-w-[400px] flex-col" }, O = { class: "bg-secondary flex h-full w-full flex-1 justify-center overflow-hidden" }, k = { class: "flex w-full flex-col" }, A = { class: "p-lg grid w-full grid-cols-3" }, j = { class: "flex items-center justify-center" }, M = { class: "flex items-center justify-end" }, N = { class: "h-full w-full overflow-y-auto" }, P = /* @__PURE__ */ u({
|
|
17
|
+
__name: "CrmDetailView",
|
|
18
|
+
props: {
|
|
19
|
+
entityType: {},
|
|
20
|
+
tabs: {}
|
|
21
|
+
},
|
|
22
|
+
setup(u) {
|
|
23
|
+
let P = u, F = f(null), I = n(), L = t();
|
|
24
|
+
return C("Escape", () => {
|
|
25
|
+
let e = F.value?.$el;
|
|
26
|
+
e && w.parentHasAriaHidden(e) || I.goToReturnRoute();
|
|
27
|
+
}), (t, n) => _(L).isInitialized.value ? (d(), o("div", T, [s("div", E, [s("div", D, [m(t.$slots, "sidebar")]), l(e, {
|
|
28
|
+
color: _(I).getEntityConfig(u.entityType)?.color ?? null,
|
|
29
|
+
class: "relative flex flex-1 flex-col overflow-hidden"
|
|
30
|
+
}, {
|
|
31
|
+
default: v(() => [s("div", O, [s("div", k, [s("div", A, [
|
|
32
|
+
n[1] ||= s("div", null, null, -1),
|
|
33
|
+
s("div", j, [l(_(b), {
|
|
34
|
+
"class-config": {
|
|
35
|
+
base: "flex justify-center bg-primary border-none shadow-lg w-fit",
|
|
36
|
+
list: "rounded-lg w-fit",
|
|
37
|
+
item: "data-[state=active]:text-[var(--brand-contrast)]",
|
|
38
|
+
indicator: "rounded-md bg-gradient-to-b bg-brand-500",
|
|
39
|
+
scrollContainer: "!p-xs bg-white rounded-lg border border-primary/50"
|
|
40
|
+
},
|
|
41
|
+
variant: "button-border"
|
|
42
|
+
}, {
|
|
43
|
+
items: v(() => [(d(!0), o(r, null, p(P.tabs, (e) => (d(), i(_(x), {
|
|
44
|
+
key: g(e.label),
|
|
45
|
+
to: { name: e.to }
|
|
46
|
+
}, {
|
|
47
|
+
default: v(() => [c(h(g(e.label)), 1)]),
|
|
48
|
+
_: 2
|
|
49
|
+
}, 1032, ["to"]))), 128))]),
|
|
50
|
+
_: 1
|
|
51
|
+
})]),
|
|
52
|
+
s("div", M, [l(_(y), {
|
|
53
|
+
ref_key: "closeButtonRef",
|
|
54
|
+
ref: F,
|
|
55
|
+
"class-config": { root: "rounded-md shadow-lg" },
|
|
56
|
+
icon: "close",
|
|
57
|
+
label: "Close",
|
|
58
|
+
variant: "secondary",
|
|
59
|
+
onClick: n[0] ||= (e) => _(I).goToReturnRoute()
|
|
60
|
+
}, null, 512)])
|
|
61
|
+
]), s("div", N, [l(_(S))])])])]),
|
|
62
|
+
_: 1
|
|
63
|
+
}, 8, ["color"])])])) : a("", !0);
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
//#endregion
|
|
67
|
+
export { P as t };
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { a as e, l as t, n, t as r } from "./AppSkeletonLoader-Dq6pKznm.js";
|
|
2
|
+
import { n as i, r as a, t as o } from "./DealExternalAttachment-B6l0gDqF.js";
|
|
3
|
+
import { Fragment as s, computed as c, createBlock as l, createCommentVNode as u, createElementBlock as d, createElementVNode as f, createVNode as p, defineComponent as m, normalizeClass as h, openBlock as g, renderList as _, toDisplayString as v, unref as y, withCtx as b } from "vue";
|
|
4
|
+
import { useI18n as x } from "vue-i18n";
|
|
5
|
+
import { VcIcon as S } from "@wisemen/vue-core-components";
|
|
6
|
+
import { AnimatePresence as C, Motion as w } from "motion-v";
|
|
7
|
+
import { AccordionContent as T, AccordionHeader as E, AccordionItem as D, AccordionRoot as O, AccordionTrigger as k } from "reka-ui";
|
|
8
|
+
import { useRouteParams as A } from "@vueuse/router";
|
|
9
|
+
//#region src/api/queries/mail/mailIndex.query.ts
|
|
10
|
+
function j(e) {
|
|
11
|
+
return t({
|
|
12
|
+
queryFn: () => a.getAll({
|
|
13
|
+
filters: e?.params.filters.value,
|
|
14
|
+
pagination: {
|
|
15
|
+
limit: 10,
|
|
16
|
+
offset: 0
|
|
17
|
+
}
|
|
18
|
+
}),
|
|
19
|
+
queryKey: { mailIndex: { queryParams: e?.params } }
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
//#endregion
|
|
23
|
+
//#region src/deal/components/DealCommunicationMailList.vue?vue&type=script&setup=true&lang.ts
|
|
24
|
+
var M = { class: "p-xl" }, N = { class: "bg-primary border-secondary rounded-xl border shadow-lg" }, P = { class: "text-lg font-medium" }, F = {
|
|
25
|
+
key: 0,
|
|
26
|
+
class: "gap-md flex h-120 w-full flex-col items-center justify-center text-center"
|
|
27
|
+
}, I = { class: "text-3xl font-semibold" }, L = { class: "relative" }, R = { class: "sr-only" }, z = { class: "gap-sm flex min-w-0 flex-1 items-center" }, B = { class: "truncate" }, V = { class: "gap-sm flex items-center" }, H = { class: "text-tertiary flex flex-col items-end text-sm" }, U = { class: "flex flex-col" }, W = ["innerHTML"], G = /* @__PURE__ */ m({
|
|
28
|
+
__name: "DealCommunicationMailList",
|
|
29
|
+
props: { mails: {} },
|
|
30
|
+
setup(t) {
|
|
31
|
+
let r = t, a = x();
|
|
32
|
+
function c(e) {
|
|
33
|
+
return n().toDateTime(e.createdAt);
|
|
34
|
+
}
|
|
35
|
+
function m(e) {
|
|
36
|
+
return e.to.join(", ");
|
|
37
|
+
}
|
|
38
|
+
return (t, n) => (g(), d("div", M, [f("div", N, [
|
|
39
|
+
p(i, null, {
|
|
40
|
+
default: b(() => [f("p", P, v(y(a).t("wise_crm.deal.communication.mail_list.title")), 1)]),
|
|
41
|
+
_: 1
|
|
42
|
+
}),
|
|
43
|
+
r.mails.length === 0 ? (g(), d("div", F, [f("p", I, v(y(a).t("wise_crm.deal.communication.mail_list.no_communication_sent")), 1), f("p", null, v(y(a).t("wise_crm.deal.communication.mail_list.create_quote_instruction")), 1)])) : u("", !0),
|
|
44
|
+
r.mails.length > 0 ? (g(), l(y(O), {
|
|
45
|
+
key: 1,
|
|
46
|
+
collapsible: !0,
|
|
47
|
+
type: "multiple",
|
|
48
|
+
class: "flex flex-col gap-0"
|
|
49
|
+
}, {
|
|
50
|
+
default: b(() => [(g(!0), d(s, null, _(r.mails, (t, n) => (g(), l(y(D), {
|
|
51
|
+
key: t.uuid,
|
|
52
|
+
value: t.uuid
|
|
53
|
+
}, {
|
|
54
|
+
default: b(({ open: a }) => [p(y(E), null, {
|
|
55
|
+
default: b(() => [f("div", L, [p(y(k), { class: "ring-brand-500 absolute inset-0 rounded-none ring-offset-1 duration-200 outline-none focus-visible:ring-2" }, {
|
|
56
|
+
default: b(() => [f("span", R, v(t.subject), 1)]),
|
|
57
|
+
_: 2
|
|
58
|
+
}, 1024), f("div", { class: h([{ "border-secondary border-b": n < r.mails.length - 1 }, "py-lg px-2xl"]) }, [p(e, { justify: "between" }, {
|
|
59
|
+
default: b(() => [f("div", z, [p(y(S), {
|
|
60
|
+
icon: "mail",
|
|
61
|
+
class: "text-secondary size-4 flex-shrink-0"
|
|
62
|
+
}), f("p", B, v(t.subject), 1)]), f("div", V, [f("div", H, [f("span", null, v(m(t)), 1), f("span", null, v(c(t)), 1)]), p(y(S), {
|
|
63
|
+
class: h([{ "-rotate-180": a }, "text-secondary size-4 flex-shrink-0 duration-300"]),
|
|
64
|
+
icon: "chevronDown"
|
|
65
|
+
}, null, 8, ["class"])])]),
|
|
66
|
+
_: 2
|
|
67
|
+
}, 1024)], 2)])]),
|
|
68
|
+
_: 2
|
|
69
|
+
}, 1024), p(y(C), { initial: !1 }, {
|
|
70
|
+
default: b(() => [a ? (g(), l(y(T), {
|
|
71
|
+
key: 0,
|
|
72
|
+
class: "overflow-clip"
|
|
73
|
+
}, {
|
|
74
|
+
default: b(() => [p(y(w), {
|
|
75
|
+
initial: {
|
|
76
|
+
opacity: 0,
|
|
77
|
+
height: 0,
|
|
78
|
+
y: -10
|
|
79
|
+
},
|
|
80
|
+
animate: {
|
|
81
|
+
opacity: 1,
|
|
82
|
+
height: "auto",
|
|
83
|
+
filter: "blur(0px)",
|
|
84
|
+
y: 0
|
|
85
|
+
},
|
|
86
|
+
exit: {
|
|
87
|
+
opacity: 0,
|
|
88
|
+
height: 0,
|
|
89
|
+
filter: "blur(5px)",
|
|
90
|
+
y: -10
|
|
91
|
+
},
|
|
92
|
+
transition: {
|
|
93
|
+
bounce: 0,
|
|
94
|
+
duration: .4,
|
|
95
|
+
type: "spring"
|
|
96
|
+
}
|
|
97
|
+
}, {
|
|
98
|
+
default: b(() => [f("div", U, [t.attachments.length > 0 ? (g(), l(i, { key: 0 }, {
|
|
99
|
+
default: b(() => [p(e, null, {
|
|
100
|
+
default: b(() => [(g(!0), d(s, null, _(t.attachments, (e) => (g(), l(o, {
|
|
101
|
+
key: e.uuid,
|
|
102
|
+
attachment: e
|
|
103
|
+
}, null, 8, ["attachment"]))), 128))]),
|
|
104
|
+
_: 2
|
|
105
|
+
}, 1024)]),
|
|
106
|
+
_: 2
|
|
107
|
+
}, 1024)) : u("", !0), p(i, null, {
|
|
108
|
+
default: b(() => [f("div", {
|
|
109
|
+
class: "prose pb-xl py-3xl max-w-full",
|
|
110
|
+
innerHTML: t.text
|
|
111
|
+
}, null, 8, W)]),
|
|
112
|
+
_: 2
|
|
113
|
+
}, 1024)])]),
|
|
114
|
+
_: 2
|
|
115
|
+
}, 1024)]),
|
|
116
|
+
_: 2
|
|
117
|
+
}, 1024)) : u("", !0)]),
|
|
118
|
+
_: 2
|
|
119
|
+
}, 1024)]),
|
|
120
|
+
_: 2
|
|
121
|
+
}, 1032, ["value"]))), 128))]),
|
|
122
|
+
_: 1
|
|
123
|
+
})) : u("", !0)
|
|
124
|
+
])]));
|
|
125
|
+
}
|
|
126
|
+
}), K = {
|
|
127
|
+
key: 0,
|
|
128
|
+
class: "p-xl"
|
|
129
|
+
}, q = /* @__PURE__ */ m({
|
|
130
|
+
__name: "DealCommunicationTabView",
|
|
131
|
+
setup(e) {
|
|
132
|
+
let t = A("dealUuid"), n = j({ params: { filters: c(() => ({ dealUuid: t.value })) } });
|
|
133
|
+
return (e, t) => (g(), d("div", null, [y(n).isLoading.value ? (g(), d("div", K, [p(r, { class: "h-150 w-full" })])) : y(n).data.value ? (g(), l(G, {
|
|
134
|
+
key: 1,
|
|
135
|
+
mails: y(n).data.value ?? []
|
|
136
|
+
}, null, 8, ["mails"])) : u("", !0)]));
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
//#endregion
|
|
140
|
+
export { q as default };
|