@kingteza/crud-component 1.13.1 → 1.13.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/dist/common/picker/ImagePicker.cjs.js +1 -1
- package/dist/common/picker/ImagePicker.es.js +168 -162
- package/dist/common/rich/index.cjs.js +1 -1
- package/dist/common/rich/index.es.js +19 -19
- package/dist/crud/CrudReportComponent.cjs.js +1 -4
- package/dist/crud/CrudReportComponent.es.js +57 -60
- package/dist/style.css +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),ye=require("react-advanced-cropper"),q=require("@ant-design/icons"),y=require("antd"),s=require("react"),Se=require("../../locale/index.cjs.js"),v=require("../button/Button.cjs.js"),ie=require("../../util/ImageUtil.cjs.js"),ke=require("../../icons/FlipHIcon.cjs.js"),Ie=require("../../icons/FlipVIcon.cjs.js"),Fe=y.Form.Item,ae="crud-component.image-picker.button-state";function V(o){return new Promise((d,f)=>{const n=new FileReader;n.readAsDataURL(o),n.onload=()=>d(n.result),n.onerror=m=>f(m)})}const Oe=({values:o=[],required:d,buttonType:f,label:n,name:m,onChange:g,aspectRatio:S,buttonTitle:k,hidePreview:I,buttonSize:x="large",showButtonText:j=!0,showOnlyIcon:A=!1,icon:z=t.jsx(q.UploadOutlined,{}),loading:N,maxCount:F=1,onAdd:l,onRemove:P,listType:T,showSkipCropButton:ce,skipResize:J,...W})=>{const[ue,de]=s.useState(""),[pe,fe]=s.useState(""),[me,$]=s.useState(!1),B=s.useRef(),c=s.useRef(null),[i,M]=s.useState([]),[h,E]=s.useState(),ge=s.useRef(),xe=()=>$(!1),je=async e=>{!e.url&&!e.preview&&(e.preview=await V(e.originFileObj)),fe(e.url||e.preview),$(!0),de(e.name)},[G,p]=s.useState(!1),K=e=>{var r;(r=c.current)==null||r.rotateImage(e?-90:90)},Q=s.useCallback(e=>{var r;c.current&&((r=c.current)==null||r.flipImage(e==="h",e==="v"))},[]);s.useEffect(()=>{g==null||g(i[0],i)},[i,g]);const[_,H]=s.useState(),X=s.useCallback(async e=>{var O;const{type:r,size:a,name:b,uid:w}=B.current;if(H(e?"skip-crop":"crop"),p(!0),e){const C=B.current,D=J?C:await ie.resizeImage(C),U=await V(D),R={url:U,name:b,uid:w,type:r,size:a,thumbUrl:U,originFileObj:D};if(l)try{p(!0),await l(R)}finally{p(!1)}M([R,...i]),p(!1),E(void 0),H(void 0)}else{const C=(O=c.current)==null?void 0:O.getCanvas();C==null||C.toBlob(async D=>{const U=Object.assign(new File([D],b,{type:r}),{uid:w}),R=J?U:await ie.resizeImage(U),oe=await V(R),ne={url:oe,name:b,uid:w,type:r,size:a,thumbUrl:oe,originFileObj:R};if(l)try{p(!0),await l(ne)}finally{p(!1)}M([ne,...i]),p(!1)}),E(void 0),H(void 0)}},[]),he=()=>{E(void 0),B.current=void 0},Y=s.useCallback(e=>{const r=e;if(r){B.current=r;const a=new FileReader;a.addEventListener("load",()=>{var b;if(typeof a.result=="string"){E(a.result);const w=localStorage.getItem(ae),O=w?JSON.parse(w):void 0;O&&((b=c.current)==null||b.setState(O)),setTimeout(()=>{se(c.current)},100)}}),a.readAsDataURL(r)}},[]);s.useEffect(()=>{if(o!=null&&o.length||typeof o=="string"){const e=Array.isArray(o)?o.map(r=>[{uid:o,url:r}]):[{uid:o,url:o}];M(e)}},[o]);const{t:u}=Se.useTranslationLib(),be=s.useMemo(()=>d?{required:d,validator:(e,r,a)=>{h||i!=null&&i.length?a():a(`${n??""} ${u("err.validation.required")}`)}}:void 0,[d,h,i==null?void 0:i.length,n,u]),Z=k??u("message.uploadButtonText"),ee=s.useMemo(()=>t.jsx(le,{showLoadingIndicator:G,_buttonTitle:Z,buttonSize:x,buttonType:f,fileList:i,hidePreview:I,icon:z,loading:N,listType:T,maxCount:F,onChangeFile:Y,onRemove:P,showButtonText:j,handlePreview:je,setFileList:M}),[G,Z,x,f,i,I,z,N,T,F,Y,P,j]);ge.current=ee.props.beforeUpload;const[we,te]=s.useState(0),[Ce,re]=s.useState(0),[L,ve]=s.useState();s.useEffect(()=>{const e=setTimeout(()=>{L&&localStorage.setItem(ae,JSON.stringify(L))},400);return()=>clearTimeout(e)},[L]),s.useEffect(()=>{if(!h){te(0),re(0);const e=setTimeout(()=>{var r;(r=c.current)==null||r.reset()},1500);return()=>clearTimeout(e)}},[h]);const se=s.useCallback(async e=>{if(e){const r=e.getCoordinates();ve(e.getState()),te((r==null?void 0:r.width)??10),re((r==null?void 0:r.height)??10)}},[]);return t.jsxs(t.Fragment,{children:[t.jsx(Fe,{label:n,...W,name:m,className:"mb-0",rules:[be,...W.rules??[]],children:ee}),t.jsxs(y.Modal,{open:!!h,maskClosable:!1,onOk:()=>X(!1),closable:!1,okButtonProps:{loading:_==="crop",disabled:_==="skip-crop"},onCancel:he,footer:(e,{CancelBtn:r,OkBtn:a})=>ce?t.jsxs(y.Space,{children:[t.jsx(r,{}),t.jsx(v,{type:"primary",loading:_==="skip-crop",disabled:_==="crop",onClick:()=>X(!0),children:u("str.skipCrop")}),t.jsx(a,{})]}):t.jsx(t.Fragment,{children:e}),destroyOnHidden:!0,children:[t.jsx(ye.Cropper,{ref:c,stencilProps:{grid:!0},style:{border:"1px solid black"},src:h,onChange:e=>{se(e)},aspectRatio:S?{minimum:S,maximum:S}:void 0}),t.jsx("p",{className:"text-center",children:[we,Ce].join(" ⨉ ")}),t.jsx("div",{className:"mt-2 d-flex justify-content-center",children:t.jsxs(y.Space.Compact,{children:[t.jsx(v,{size:"large",tooltip:u("str.rotateLeft"),icon:t.jsx(q.RotateLeftOutlined,{}),onClick:()=>K(!0)}),t.jsx(v,{size:"large",icon:t.jsx(q.RotateRightOutlined,{}),tooltip:u("str.rotateRight"),onClick:()=>K(!1)}),t.jsx(v,{size:"large",icon:t.jsx(ke,{}),tooltip:u("str.flipHorizontal"),onClick:()=>Q("h")}),t.jsx(v,{size:"large",icon:t.jsx(Ie,{}),tooltip:u("str.flipVertical"),onClick:()=>Q("v")})]})})]}),t.jsx(y.Modal,{open:me,title:ue,footer:null,onCancel:xe,children:t.jsx("div",{className:"text-center",children:t.jsx("img",{alt:"example",style:{maxWidth:"400px"},src:pe})})})]})},le=({_buttonTitle:o,buttonSize:d,buttonType:f,fileList:n,hidePreview:m,icon:g,loading:S,maxCount:k,onChangeFile:I,onRemove:x,showButtonText:j,handlePreview:A,setFileList:z,showLoadingIndicator:N,listType:F="picture"})=>t.jsxs(y.Upload,{accept:"image/x-png,image/gif,image/jpeg",fileList:n,defaultFileList:n,onChange:()=>{},className:(n.length>=k?" hide-upload ":"")+" mb-0",multiple:!1,onPreview:m?void 0:A,onDrop:l=>(I(l.dataTransfer.files.item(0)),!1),listType:F,showUploadList:!m,onRemove:l=>{const P=n.filter(T=>l.uid!==T.uid);x==null||x(l),z(P)},beforeUpload:async l=>(I(l),!1),maxCount:k,children:[N&&t.jsx(q.LoadingOutlined,{}),t.jsx("div",{className:"d-flex flex-column",children:n.length<k&&(F==="picture-circle"?t.jsx(q.UploadOutlined,{}):t.jsx(v,{loading:S,tooltip:j?void 0:o,size:d,icon:g,type:j?f:"text",children:j?o:void 0}))})]},n.length);exports.UploadComponent=le;exports.default=Oe;
|
|
@@ -1,279 +1,285 @@
|
|
|
1
|
-
import { jsx as r, jsxs as j, Fragment as
|
|
2
|
-
import { Cropper as
|
|
3
|
-
import { RotateLeftOutlined as
|
|
4
|
-
import { Form as
|
|
5
|
-
import
|
|
6
|
-
import { useTranslationLib as
|
|
1
|
+
import { jsx as r, jsxs as j, Fragment as ce } from "react/jsx-runtime";
|
|
2
|
+
import { Cropper as je } from "react-advanced-cropper";
|
|
3
|
+
import { RotateLeftOutlined as ze, RotateRightOutlined as Ne, UploadOutlined as ge, LoadingOutlined as Be } from "@ant-design/icons";
|
|
4
|
+
import { Form as Pe, Modal as de, Space as pe, Upload as Te } from "antd";
|
|
5
|
+
import J, { useRef as W, useState as m, useCallback as _, useEffect as E, useMemo as me } from "react";
|
|
6
|
+
import { useTranslationLib as De } from "../../locale/index.es.js";
|
|
7
7
|
import I from "../button/Button.es.js";
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
const
|
|
12
|
-
function
|
|
13
|
-
return new Promise((d,
|
|
8
|
+
import ue from "../../util/ImageUtil.es.js";
|
|
9
|
+
import He from "../../icons/FlipHIcon.es.js";
|
|
10
|
+
import Le from "../../icons/FlipVIcon.es.js";
|
|
11
|
+
const Ve = Pe.Item, fe = "crud-component.image-picker.button-state";
|
|
12
|
+
function $(o) {
|
|
13
|
+
return new Promise((d, u) => {
|
|
14
14
|
const i = new FileReader();
|
|
15
|
-
i.readAsDataURL(o), i.onload = () => d(i.result), i.onerror = (
|
|
15
|
+
i.readAsDataURL(o), i.onload = () => d(i.result), i.onerror = (f) => u(f);
|
|
16
16
|
});
|
|
17
17
|
}
|
|
18
|
-
const
|
|
18
|
+
const Ye = ({
|
|
19
19
|
values: o = [],
|
|
20
20
|
required: d,
|
|
21
|
-
buttonType:
|
|
21
|
+
buttonType: u,
|
|
22
22
|
label: i,
|
|
23
|
-
name:
|
|
24
|
-
onChange:
|
|
25
|
-
aspectRatio:
|
|
26
|
-
buttonTitle:
|
|
27
|
-
hidePreview:
|
|
28
|
-
buttonSize:
|
|
29
|
-
showButtonText:
|
|
30
|
-
showOnlyIcon:
|
|
31
|
-
icon: z = /* @__PURE__ */ r(
|
|
23
|
+
name: f,
|
|
24
|
+
onChange: g,
|
|
25
|
+
aspectRatio: k,
|
|
26
|
+
buttonTitle: F,
|
|
27
|
+
hidePreview: O,
|
|
28
|
+
buttonSize: h = "large",
|
|
29
|
+
showButtonText: w = !0,
|
|
30
|
+
showOnlyIcon: G = !1,
|
|
31
|
+
icon: z = /* @__PURE__ */ r(ge, {}),
|
|
32
32
|
loading: N,
|
|
33
|
-
maxCount:
|
|
33
|
+
maxCount: x = 1,
|
|
34
34
|
onAdd: s,
|
|
35
|
-
onRemove:
|
|
35
|
+
onRemove: B,
|
|
36
36
|
listType: P,
|
|
37
|
-
showSkipCropButton:
|
|
38
|
-
skipResize:
|
|
39
|
-
...
|
|
37
|
+
showSkipCropButton: he,
|
|
38
|
+
skipResize: K,
|
|
39
|
+
...Q
|
|
40
40
|
}) => {
|
|
41
|
-
const [
|
|
42
|
-
!e.url && !e.preview && (e.preview = await
|
|
43
|
-
}, [
|
|
41
|
+
const [we, be] = J.useState(""), [ye, ve] = J.useState(""), [Ce, X] = J.useState(!1), T = W(), l = W(null), [n, D] = m([]), [b, H] = m(), Ie = W(), ke = () => X(!1), Fe = async (e) => {
|
|
42
|
+
!e.url && !e.preview && (e.preview = await $(e.originFileObj)), ve(e.url || e.preview), X(!0), be(e.name);
|
|
43
|
+
}, [Y, p] = m(!1), Z = (e) => {
|
|
44
44
|
var t;
|
|
45
45
|
(t = l.current) == null || t.rotateImage(e ? -90 : 90);
|
|
46
|
-
},
|
|
46
|
+
}, q = _((e) => {
|
|
47
47
|
var t;
|
|
48
48
|
l.current && ((t = l.current) == null || t.flipImage(e === "h", e === "v"));
|
|
49
49
|
}, []);
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
}, [n,
|
|
53
|
-
const
|
|
54
|
-
var
|
|
55
|
-
const { type: t, size: a, name: y, uid:
|
|
56
|
-
if (
|
|
57
|
-
const
|
|
50
|
+
E(() => {
|
|
51
|
+
g == null || g(n[0], n);
|
|
52
|
+
}, [n, g]);
|
|
53
|
+
const [L, M] = m(), ee = _(async (e) => {
|
|
54
|
+
var U;
|
|
55
|
+
const { type: t, size: a, name: y, uid: v } = T.current;
|
|
56
|
+
if (M(e ? "skip-crop" : "crop"), p(!0), e) {
|
|
57
|
+
const C = T.current, V = K ? C : await ue.resizeImage(C), S = await $(V), R = {
|
|
58
58
|
url: S,
|
|
59
59
|
name: y,
|
|
60
|
-
uid:
|
|
60
|
+
uid: v,
|
|
61
61
|
type: t,
|
|
62
62
|
size: a,
|
|
63
63
|
thumbUrl: S,
|
|
64
|
-
originFileObj:
|
|
64
|
+
originFileObj: V
|
|
65
65
|
};
|
|
66
66
|
if (s)
|
|
67
67
|
try {
|
|
68
|
-
|
|
68
|
+
p(!0), await s(R);
|
|
69
69
|
} finally {
|
|
70
|
-
|
|
70
|
+
p(!1);
|
|
71
71
|
}
|
|
72
|
-
D([R, ...n]),
|
|
72
|
+
D([R, ...n]), p(!1), H(void 0), M(void 0);
|
|
73
73
|
} else {
|
|
74
|
-
const
|
|
75
|
-
|
|
76
|
-
const S = Object.assign(new File([
|
|
77
|
-
uid:
|
|
78
|
-
}), R =
|
|
79
|
-
url:
|
|
74
|
+
const C = (U = l.current) == null ? void 0 : U.getCanvas();
|
|
75
|
+
C == null || C.toBlob(async (V) => {
|
|
76
|
+
const S = Object.assign(new File([V], y, { type: t }), {
|
|
77
|
+
uid: v
|
|
78
|
+
}), R = K ? S : await ue.resizeImage(S), se = await $(R), le = {
|
|
79
|
+
url: se,
|
|
80
80
|
name: y,
|
|
81
|
-
uid:
|
|
81
|
+
uid: v,
|
|
82
82
|
type: t,
|
|
83
83
|
size: a,
|
|
84
|
-
thumbUrl:
|
|
84
|
+
thumbUrl: se,
|
|
85
85
|
originFileObj: R
|
|
86
86
|
};
|
|
87
87
|
if (s)
|
|
88
88
|
try {
|
|
89
|
-
|
|
89
|
+
p(!0), await s(le);
|
|
90
90
|
} finally {
|
|
91
|
-
|
|
91
|
+
p(!1);
|
|
92
92
|
}
|
|
93
|
-
D([
|
|
94
|
-
}), H(void 0);
|
|
93
|
+
D([le, ...n]), p(!1);
|
|
94
|
+
}), H(void 0), M(void 0);
|
|
95
95
|
}
|
|
96
|
-
}, []),
|
|
97
|
-
H(void 0),
|
|
98
|
-
},
|
|
96
|
+
}, []), Oe = () => {
|
|
97
|
+
H(void 0), T.current = void 0;
|
|
98
|
+
}, te = _((e) => {
|
|
99
99
|
const t = e;
|
|
100
100
|
if (t) {
|
|
101
|
-
|
|
101
|
+
T.current = t;
|
|
102
102
|
const a = new FileReader();
|
|
103
103
|
a.addEventListener("load", () => {
|
|
104
104
|
var y;
|
|
105
105
|
if (typeof a.result == "string") {
|
|
106
106
|
H(a.result);
|
|
107
|
-
const
|
|
108
|
-
|
|
109
|
-
|
|
107
|
+
const v = localStorage.getItem(fe), U = v ? JSON.parse(v) : void 0;
|
|
108
|
+
U && ((y = l.current) == null || y.setState(U)), setTimeout(() => {
|
|
109
|
+
ae(l.current);
|
|
110
110
|
}, 100);
|
|
111
111
|
}
|
|
112
112
|
}), a.readAsDataURL(t);
|
|
113
113
|
}
|
|
114
114
|
}, []);
|
|
115
|
-
|
|
115
|
+
E(() => {
|
|
116
116
|
if (o != null && o.length || typeof o == "string") {
|
|
117
117
|
const e = Array.isArray(o) ? o.map((t) => [{ uid: o, url: t }]) : [{ uid: o, url: o }];
|
|
118
118
|
D(e);
|
|
119
119
|
}
|
|
120
120
|
}, [o]);
|
|
121
|
-
const { t: c } =
|
|
121
|
+
const { t: c } = De(), xe = me(
|
|
122
122
|
() => d ? {
|
|
123
123
|
required: d,
|
|
124
124
|
validator: (e, t, a) => {
|
|
125
|
-
|
|
125
|
+
b || n != null && n.length ? a() : a(`${i ?? ""} ${c("err.validation.required")}`);
|
|
126
126
|
}
|
|
127
127
|
} : void 0,
|
|
128
|
-
[d,
|
|
129
|
-
),
|
|
128
|
+
[d, b, n == null ? void 0 : n.length, i, c]
|
|
129
|
+
), re = F ?? c("message.uploadButtonText"), oe = me(
|
|
130
130
|
() => /* @__PURE__ */ r(
|
|
131
|
-
|
|
131
|
+
_e,
|
|
132
132
|
{
|
|
133
|
-
showLoadingIndicator:
|
|
134
|
-
_buttonTitle:
|
|
135
|
-
buttonSize:
|
|
136
|
-
buttonType:
|
|
133
|
+
showLoadingIndicator: Y,
|
|
134
|
+
_buttonTitle: re,
|
|
135
|
+
buttonSize: h,
|
|
136
|
+
buttonType: u,
|
|
137
137
|
fileList: n,
|
|
138
|
-
hidePreview:
|
|
138
|
+
hidePreview: O,
|
|
139
139
|
icon: z,
|
|
140
140
|
loading: N,
|
|
141
141
|
listType: P,
|
|
142
|
-
maxCount:
|
|
143
|
-
onChangeFile:
|
|
144
|
-
onRemove:
|
|
145
|
-
showButtonText:
|
|
146
|
-
handlePreview:
|
|
142
|
+
maxCount: x,
|
|
143
|
+
onChangeFile: te,
|
|
144
|
+
onRemove: B,
|
|
145
|
+
showButtonText: w,
|
|
146
|
+
handlePreview: Fe,
|
|
147
147
|
setFileList: D
|
|
148
148
|
}
|
|
149
149
|
),
|
|
150
150
|
[
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
151
|
+
Y,
|
|
152
|
+
re,
|
|
153
|
+
h,
|
|
154
|
+
u,
|
|
155
155
|
n,
|
|
156
|
-
|
|
156
|
+
O,
|
|
157
157
|
z,
|
|
158
158
|
N,
|
|
159
159
|
P,
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
160
|
+
x,
|
|
161
|
+
te,
|
|
162
|
+
B,
|
|
163
|
+
w
|
|
164
164
|
]
|
|
165
165
|
);
|
|
166
|
-
|
|
167
|
-
const [
|
|
168
|
-
|
|
166
|
+
Ie.current = oe.props.beforeUpload;
|
|
167
|
+
const [Ue, ie] = m(0), [Se, ne] = m(0), [A, Re] = m();
|
|
168
|
+
E(() => {
|
|
169
169
|
const e = setTimeout(() => {
|
|
170
|
-
|
|
170
|
+
A && localStorage.setItem(fe, JSON.stringify(A));
|
|
171
171
|
}, 400);
|
|
172
172
|
return () => clearTimeout(e);
|
|
173
|
-
}, [
|
|
174
|
-
if (!
|
|
175
|
-
|
|
173
|
+
}, [A]), E(() => {
|
|
174
|
+
if (!b) {
|
|
175
|
+
ie(0), ne(0);
|
|
176
176
|
const e = setTimeout(() => {
|
|
177
177
|
var t;
|
|
178
178
|
(t = l.current) == null || t.reset();
|
|
179
179
|
}, 1500);
|
|
180
180
|
return () => clearTimeout(e);
|
|
181
181
|
}
|
|
182
|
-
}, [
|
|
183
|
-
const
|
|
182
|
+
}, [b]);
|
|
183
|
+
const ae = _(async (e) => {
|
|
184
184
|
if (e) {
|
|
185
185
|
const t = e.getCoordinates();
|
|
186
|
-
|
|
186
|
+
Re(e.getState()), ie((t == null ? void 0 : t.width) ?? 10), ne((t == null ? void 0 : t.height) ?? 10);
|
|
187
187
|
}
|
|
188
188
|
}, []);
|
|
189
|
-
return /* @__PURE__ */ j(
|
|
189
|
+
return /* @__PURE__ */ j(ce, { children: [
|
|
190
190
|
/* @__PURE__ */ r(
|
|
191
|
-
|
|
191
|
+
Ve,
|
|
192
192
|
{
|
|
193
193
|
label: i,
|
|
194
|
-
...
|
|
195
|
-
name:
|
|
194
|
+
...Q,
|
|
195
|
+
name: f,
|
|
196
196
|
className: "mb-0",
|
|
197
|
-
rules: [
|
|
198
|
-
children:
|
|
197
|
+
rules: [xe, ...Q.rules ?? []],
|
|
198
|
+
children: oe
|
|
199
199
|
}
|
|
200
200
|
),
|
|
201
201
|
/* @__PURE__ */ j(
|
|
202
|
-
|
|
202
|
+
de,
|
|
203
203
|
{
|
|
204
|
-
open: !!
|
|
204
|
+
open: !!b,
|
|
205
205
|
maskClosable: !1,
|
|
206
|
-
onOk: () =>
|
|
206
|
+
onOk: () => ee(!1),
|
|
207
207
|
closable: !1,
|
|
208
|
-
|
|
209
|
-
|
|
208
|
+
okButtonProps: {
|
|
209
|
+
loading: L === "crop",
|
|
210
|
+
disabled: L === "skip-crop"
|
|
211
|
+
},
|
|
212
|
+
onCancel: Oe,
|
|
213
|
+
footer: (e, { CancelBtn: t, OkBtn: a }) => he ? /* @__PURE__ */ j(pe, { children: [
|
|
210
214
|
/* @__PURE__ */ r(t, {}),
|
|
211
215
|
/* @__PURE__ */ r(
|
|
212
216
|
I,
|
|
213
217
|
{
|
|
214
218
|
type: "primary",
|
|
215
|
-
|
|
219
|
+
loading: L === "skip-crop",
|
|
220
|
+
disabled: L === "crop",
|
|
221
|
+
onClick: () => ee(!0),
|
|
216
222
|
children: c("str.skipCrop")
|
|
217
223
|
}
|
|
218
224
|
),
|
|
219
225
|
/* @__PURE__ */ r(a, {})
|
|
220
|
-
] }) : /* @__PURE__ */ r(
|
|
226
|
+
] }) : /* @__PURE__ */ r(ce, { children: e }),
|
|
221
227
|
destroyOnHidden: !0,
|
|
222
228
|
children: [
|
|
223
229
|
/* @__PURE__ */ r(
|
|
224
|
-
|
|
230
|
+
je,
|
|
225
231
|
{
|
|
226
232
|
ref: l,
|
|
227
233
|
stencilProps: {
|
|
228
234
|
grid: !0
|
|
229
235
|
},
|
|
230
236
|
style: { border: "1px solid black" },
|
|
231
|
-
src:
|
|
237
|
+
src: b,
|
|
232
238
|
onChange: (e) => {
|
|
233
|
-
|
|
239
|
+
ae(e);
|
|
234
240
|
},
|
|
235
|
-
aspectRatio:
|
|
236
|
-
minimum:
|
|
237
|
-
maximum:
|
|
241
|
+
aspectRatio: k ? {
|
|
242
|
+
minimum: k,
|
|
243
|
+
maximum: k
|
|
238
244
|
} : void 0
|
|
239
245
|
}
|
|
240
246
|
),
|
|
241
|
-
/* @__PURE__ */ r("p", { className: "text-center", children: [
|
|
242
|
-
/* @__PURE__ */ r("div", { className: "mt-2 d-flex justify-content-center", children: /* @__PURE__ */ j(
|
|
247
|
+
/* @__PURE__ */ r("p", { className: "text-center", children: [Ue, Se].join(" ⨉ ") }),
|
|
248
|
+
/* @__PURE__ */ r("div", { className: "mt-2 d-flex justify-content-center", children: /* @__PURE__ */ j(pe.Compact, { children: [
|
|
243
249
|
/* @__PURE__ */ r(
|
|
244
250
|
I,
|
|
245
251
|
{
|
|
246
252
|
size: "large",
|
|
247
253
|
tooltip: c("str.rotateLeft"),
|
|
248
|
-
icon: /* @__PURE__ */ r(
|
|
249
|
-
onClick: () =>
|
|
254
|
+
icon: /* @__PURE__ */ r(ze, {}),
|
|
255
|
+
onClick: () => Z(!0)
|
|
250
256
|
}
|
|
251
257
|
),
|
|
252
258
|
/* @__PURE__ */ r(
|
|
253
259
|
I,
|
|
254
260
|
{
|
|
255
261
|
size: "large",
|
|
256
|
-
icon: /* @__PURE__ */ r(
|
|
262
|
+
icon: /* @__PURE__ */ r(Ne, {}),
|
|
257
263
|
tooltip: c("str.rotateRight"),
|
|
258
|
-
onClick: () =>
|
|
264
|
+
onClick: () => Z(!1)
|
|
259
265
|
}
|
|
260
266
|
),
|
|
261
267
|
/* @__PURE__ */ r(
|
|
262
268
|
I,
|
|
263
269
|
{
|
|
264
270
|
size: "large",
|
|
265
|
-
icon: /* @__PURE__ */ r(
|
|
271
|
+
icon: /* @__PURE__ */ r(He, {}),
|
|
266
272
|
tooltip: c("str.flipHorizontal"),
|
|
267
|
-
onClick: () =>
|
|
273
|
+
onClick: () => q("h")
|
|
268
274
|
}
|
|
269
275
|
),
|
|
270
276
|
/* @__PURE__ */ r(
|
|
271
277
|
I,
|
|
272
278
|
{
|
|
273
279
|
size: "large",
|
|
274
|
-
icon: /* @__PURE__ */ r(
|
|
280
|
+
icon: /* @__PURE__ */ r(Le, {}),
|
|
275
281
|
tooltip: c("str.flipVertical"),
|
|
276
|
-
onClick: () =>
|
|
282
|
+
onClick: () => q("v")
|
|
277
283
|
}
|
|
278
284
|
)
|
|
279
285
|
] }) })
|
|
@@ -281,32 +287,32 @@ const Qe = ({
|
|
|
281
287
|
}
|
|
282
288
|
),
|
|
283
289
|
/* @__PURE__ */ r(
|
|
284
|
-
|
|
290
|
+
de,
|
|
285
291
|
{
|
|
286
292
|
open: Ce,
|
|
287
|
-
title:
|
|
293
|
+
title: we,
|
|
288
294
|
footer: null,
|
|
289
|
-
onCancel:
|
|
290
|
-
children: /* @__PURE__ */ r("div", { className: "text-center", children: /* @__PURE__ */ r("img", { alt: "example", style: { maxWidth: "400px" }, src:
|
|
295
|
+
onCancel: ke,
|
|
296
|
+
children: /* @__PURE__ */ r("div", { className: "text-center", children: /* @__PURE__ */ r("img", { alt: "example", style: { maxWidth: "400px" }, src: ye }) })
|
|
291
297
|
}
|
|
292
298
|
)
|
|
293
299
|
] });
|
|
294
|
-
},
|
|
300
|
+
}, _e = ({
|
|
295
301
|
_buttonTitle: o,
|
|
296
302
|
buttonSize: d,
|
|
297
|
-
buttonType:
|
|
303
|
+
buttonType: u,
|
|
298
304
|
fileList: i,
|
|
299
|
-
hidePreview:
|
|
300
|
-
icon:
|
|
301
|
-
loading:
|
|
302
|
-
maxCount:
|
|
303
|
-
onChangeFile:
|
|
304
|
-
onRemove:
|
|
305
|
-
showButtonText:
|
|
306
|
-
handlePreview:
|
|
305
|
+
hidePreview: f,
|
|
306
|
+
icon: g,
|
|
307
|
+
loading: k,
|
|
308
|
+
maxCount: F,
|
|
309
|
+
onChangeFile: O,
|
|
310
|
+
onRemove: h,
|
|
311
|
+
showButtonText: w,
|
|
312
|
+
handlePreview: G,
|
|
307
313
|
setFileList: z,
|
|
308
314
|
showLoadingIndicator: N,
|
|
309
|
-
listType:
|
|
315
|
+
listType: x = "picture"
|
|
310
316
|
}) => /* @__PURE__ */ j(
|
|
311
317
|
Te,
|
|
312
318
|
{
|
|
@@ -315,29 +321,29 @@ const Qe = ({
|
|
|
315
321
|
defaultFileList: i,
|
|
316
322
|
onChange: () => {
|
|
317
323
|
},
|
|
318
|
-
className: (i.length >=
|
|
324
|
+
className: (i.length >= F ? " hide-upload " : "") + " mb-0",
|
|
319
325
|
multiple: !1,
|
|
320
|
-
onPreview:
|
|
321
|
-
onDrop: (s) => (
|
|
322
|
-
listType:
|
|
323
|
-
showUploadList: !
|
|
326
|
+
onPreview: f ? void 0 : G,
|
|
327
|
+
onDrop: (s) => (O(s.dataTransfer.files.item(0)), !1),
|
|
328
|
+
listType: x,
|
|
329
|
+
showUploadList: !f,
|
|
324
330
|
onRemove: (s) => {
|
|
325
|
-
const
|
|
326
|
-
|
|
331
|
+
const B = i.filter((P) => s.uid !== P.uid);
|
|
332
|
+
h == null || h(s), z(B);
|
|
327
333
|
},
|
|
328
|
-
beforeUpload: async (s) => (
|
|
329
|
-
maxCount:
|
|
334
|
+
beforeUpload: async (s) => (O(s), !1),
|
|
335
|
+
maxCount: F,
|
|
330
336
|
children: [
|
|
331
|
-
N && /* @__PURE__ */ r(
|
|
332
|
-
/* @__PURE__ */ r("div", { className: "d-flex flex-column", children: i.length <
|
|
337
|
+
N && /* @__PURE__ */ r(Be, {}),
|
|
338
|
+
/* @__PURE__ */ r("div", { className: "d-flex flex-column", children: i.length < F && (x === "picture-circle" ? /* @__PURE__ */ r(ge, {}) : /* @__PURE__ */ r(
|
|
333
339
|
I,
|
|
334
340
|
{
|
|
335
|
-
loading:
|
|
336
|
-
tooltip:
|
|
341
|
+
loading: k,
|
|
342
|
+
tooltip: w ? void 0 : o,
|
|
337
343
|
size: d,
|
|
338
|
-
icon:
|
|
339
|
-
type:
|
|
340
|
-
children:
|
|
344
|
+
icon: g,
|
|
345
|
+
type: w ? u : "text",
|
|
346
|
+
children: w ? o : void 0
|
|
341
347
|
}
|
|
342
348
|
)) })
|
|
343
349
|
]
|
|
@@ -345,6 +351,6 @@ const Qe = ({
|
|
|
345
351
|
i.length
|
|
346
352
|
);
|
|
347
353
|
export {
|
|
348
|
-
|
|
349
|
-
|
|
354
|
+
_e as UploadComponent,
|
|
355
|
+
Ye as default
|
|
350
356
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var k=Object.create;var f=Object.defineProperty;var F=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var q=Object.getPrototypeOf,R=Object.prototype.hasOwnProperty;var y=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of g(t))!R.call(e,s)&&s!==o&&f(e,s,{get:()=>t[s],enumerable:!(r=F(t,s))||r.enumerable});return e};var E=(e,t,o)=>(o=e!=null?k(q(e)):{},y(t||!e||!e.__esModule?f(o,"default",{value:e,enumerable:!0}):o,e));Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react/jsx-runtime"),p=require("antd"),c=require("react"),S=require("../../util/ValidationUtil.cjs.js"),w=c.lazy(async()=>{const{default:e}=await import("react-quill");return{default:t=>d.jsx(e,{...t})}}),T=({name:e,label:t,required:o,rules:r=[],disabled:s,help:h})=>{const n=p.Form.useFormInstance(),[u,a]=c.useState(""),b={toolbar:[["bold","italic","underline","strike","blockquote"],[{list:"ordered"},{list:"bullet"}],["link"],["clean"]]},m=["bold","italic","underline","strike","blockquote","list","bullet","link"];c.useEffect(()=>{const i=n.getFieldValue(e);i&&i!=="<p></p>"&&i!=="<p><br></p>"&&a(i)},[n,e]);const l=p.Form.useWatch(e,n);c.useEffect(()=>{l!==u&&a(!l||l==="<p></p>"||l==="<p><br></p>"?"":l)},[l,u]);const x=i=>{a(i);const j=!i||i==="<p></p>"||i.trim()==="<p><br></p>"?void 0:i;n.setFieldValue(e,j),n.validateFields([e]).catch(()=>{})},V=c.useMemo(()=>o?[...r,...S.required(t??"")]:r,[o,r,t]);return d.jsx(p.Form.Item,{help:h,name:e,label:t,rules:V,children:d.jsx(c.Suspense,{fallback:d.jsx("div",{children:"Loading editor..."}),children:d.jsx(w,{readOnly:s,value:u,onChange:x,theme:"snow",className:"rich-text-editor",modules:b,formats:m})})})};exports.RichTextEditor=T;
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import { jsx as r } from "react/jsx-runtime";
|
|
2
2
|
import { Form as a } from "antd";
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
const y =
|
|
3
|
+
import F, { useState as g, useEffect as u, useMemo as x, Suspense as R } from "react";
|
|
4
|
+
import w from "../../util/ValidationUtil.es.js";
|
|
5
|
+
const y = F.lazy(async () => {
|
|
6
6
|
const { default: e } = await import("react-quill");
|
|
7
|
-
return { default: (
|
|
7
|
+
return { default: (i) => /* @__PURE__ */ r(e, { ...i }) };
|
|
8
8
|
}), Q = ({
|
|
9
9
|
name: e,
|
|
10
|
-
label:
|
|
10
|
+
label: i,
|
|
11
11
|
required: d,
|
|
12
12
|
rules: c = [],
|
|
13
13
|
disabled: p,
|
|
14
14
|
help: f
|
|
15
15
|
}) => {
|
|
16
|
-
const l = a.useFormInstance(), [n, s] =
|
|
16
|
+
const l = a.useFormInstance(), [n, s] = g(""), m = {
|
|
17
17
|
toolbar: [
|
|
18
18
|
["bold", "italic", "underline", "strike", "blockquote"],
|
|
19
19
|
[{ list: "ordered" }, { list: "bullet" }],
|
|
20
20
|
["link"],
|
|
21
21
|
["clean"]
|
|
22
22
|
]
|
|
23
|
-
},
|
|
23
|
+
}, h = [
|
|
24
24
|
"bold",
|
|
25
25
|
"italic",
|
|
26
26
|
"underline",
|
|
@@ -34,29 +34,29 @@ const y = g.lazy(async () => {
|
|
|
34
34
|
const t = l.getFieldValue(e);
|
|
35
35
|
t && t !== "<p></p>" && t !== "<p><br></p>" && s(t);
|
|
36
36
|
}, [l, e]);
|
|
37
|
-
const
|
|
37
|
+
const o = a.useWatch(e, l);
|
|
38
38
|
u(() => {
|
|
39
|
-
|
|
40
|
-
}, [
|
|
39
|
+
o !== n && s(!o || o === "<p></p>" || o === "<p><br></p>" ? "" : o);
|
|
40
|
+
}, [o, n]);
|
|
41
41
|
const b = (t) => {
|
|
42
42
|
s(t);
|
|
43
|
-
const
|
|
44
|
-
l.setFieldValue(e,
|
|
43
|
+
const k = !t || t === "<p></p>" || t.trim() === "<p><br></p>" ? void 0 : t;
|
|
44
|
+
l.setFieldValue(e, k), l.validateFields([e]).catch(() => {
|
|
45
45
|
});
|
|
46
|
-
},
|
|
47
|
-
() => d ? [...c, ...
|
|
48
|
-
[d, c,
|
|
46
|
+
}, V = x(
|
|
47
|
+
() => d ? [...c, ...w.required(i ?? "")] : c,
|
|
48
|
+
[d, c, i]
|
|
49
49
|
);
|
|
50
|
-
return /* @__PURE__ */ r(a.Item, { help: f, name: e, label:
|
|
50
|
+
return /* @__PURE__ */ r(a.Item, { help: f, name: e, label: i, rules: V, children: /* @__PURE__ */ r(R, { fallback: /* @__PURE__ */ r("div", { children: "Loading editor..." }), children: /* @__PURE__ */ r(
|
|
51
51
|
y,
|
|
52
52
|
{
|
|
53
53
|
readOnly: p,
|
|
54
54
|
value: n,
|
|
55
55
|
onChange: b,
|
|
56
56
|
theme: "snow",
|
|
57
|
-
className: "
|
|
58
|
-
modules:
|
|
59
|
-
formats:
|
|
57
|
+
className: "rich-text-editor",
|
|
58
|
+
modules: m,
|
|
59
|
+
formats: h
|
|
60
60
|
}
|
|
61
61
|
) }) });
|
|
62
62
|
};
|
|
@@ -1,4 +1 @@
|
|
|
1
|
-
"use strict";const
|
|
2
|
-
${f||!u.length?"":"!bg-green-700 hover:!bg-green-600 !text-white !border-green-700 hover:!border-green-600"}
|
|
3
|
-
|
|
4
|
-
`,children:"Excel"})]}),_,r.jsx(K,{minusHeight:U,data:u,size:O,fields:S,idField:L,loadingData:f,paginateProps:G,viewable:!1})]})}module.exports=Y;
|
|
1
|
+
"use strict";const t=require("react/jsx-runtime"),J=require("@ant-design/icons"),s=require("antd"),i=require("react"),x=require("./CrudField.cjs.js"),K=require("./view/CrudViewer.cjs.js"),M=require("../common/report/SelectFieldInReport.cjs.js"),V=require("./view/CrudViewerUtil.cjs.js"),Q=require("../common/select/SelectComponent.cjs.js"),v=require("../common/button/Button.cjs.js"),W=require("../common/button/PrintButton.cjs.js"),A={lg:6,md:8,sm:12,xs:24},X={lg:12,md:16,sm:24,xs:24};function Y({fields:d,data:u,idField:L,loadingData:f,onSubmit:g,paginateProps:G,size:O,onClickPrint:h,onClickExcelExport:y,minusHeight:U,extraSearchFields:R,searchOnMount:B,summary:_}){const{searchable:$,selectable:c,sortable:F,defaultSort:p}=i.useMemo(()=>{var b,m,N,I,T;const e=[],r=[],o=[];let n;for(const l of d.filter(H=>!H.hidden))l.type==="image"||!l.report||((b=l.report)!=null&&b.searchable&&e.push(l),(m=l.report)!=null&&m.sortable&&(r.push(l),!n&&((N=l.report)!=null&&N.defaultSort)&&(n=l)),l.hideInTable||o.push({id:l.name,label:l.label,lock:(I=l.report)==null?void 0:I.lock,alreadySelected:(T=l.report)==null?void 0:T.alreadySelected}));return{defaultSort:n,searchable:e,sortable:r,selectable:o}},[d]),[S,q]=i.useState([]),j=i.useCallback(async({sortBy:e,sortByType:r,showFields:o=[],...n})=>{const b=[];e&&b.push({field:e,sort:r??"DESC"}),q(d.filter(m=>o.includes(m.name)).map(m=>({...m,hideInTable:!1}))),g({showFields:o,sortBy:b,...n})},[d,g]),[a]=s.Form.useForm(),[w,z]=i.useState(!1),[C,D]=i.useState(!0);return i.useEffect(()=>{if(B&&C){const e=setTimeout(()=>{a.validateFields().then(r=>{j(r)}),D(!1)},200);return()=>clearTimeout(e)}},[j,a,C,B]),i.useEffect(()=>{var r,o;!a.getFieldValue("sortBy")&&p&&a.setFieldsValue({sortBy:p.name,sortByType:typeof((r=p.report)==null?void 0:r.defaultSort)=="string"?(o=p.report)==null?void 0:o.defaultSort:"ASC"})},[p,a]),i.useEffect(()=>{if(w){const e=c.filter(r=>r.alreadySelected).map(r=>r.id);q(d.filter(r=>e.includes(r.name)).map(r=>({...r,hideInTable:!1}))),z(!1)}},[d,w,c]),t.jsxs(s.Space,{className:"w-100",direction:"vertical",children:[t.jsxs(s.Form,{form:a,layout:"vertical",onFinish:j,children:[t.jsxs(s.Row,{gutter:[8,8],children:[$.map(e=>{var r,o,n;return t.jsx(s.Col,{...e.grid??A,style:{alignSelf:"end"},children:(r=e.report)!=null&&r.customRender?e.report.customRender(a):e.type==="date"?t.jsx(x.default,{...e,type:"date",range:(o=e.report)==null?void 0:o.range,required:!!((n=e.report)!=null&&n.required),readonly:!1,fieldClassName:"mb-0"}):e.type==="select"?t.jsx(x.default,{...e,type:"select",multiple:!0,required:!1,readonly:!1,fieldClassName:"mb-0"}):t.jsx(x.default,{...e,readonly:!1,required:!1,fieldClassName:"mb-0"})},e.name)}),!!(c!=null&&c.length)&&t.jsx(s.Col,{...X,children:t.jsx(M.SelectFieldInReport,{items:c,name:"showFields",mode:"multiple",label:"Show Fields",className:"mb-0"})}),!!F.length&&t.jsx(s.Col,{...A,children:t.jsx(Q,{label:"Sort By",name:"sortBy",items:F.map(e=>({id:e.name,label:e.label})),nameFieldInArray:"label",fieldId:"id",className:"mb-0",dropdownRender:e=>t.jsxs(t.Fragment,{children:[e,t.jsx(s.Form.Item,{name:"sortByType",noStyle:!0,className:"mt-3",children:t.jsx(s.Radio.Group,{className:"w-100",defaultValue:"DESC",optionType:"button",children:t.jsxs(s.Row,{children:[t.jsx(s.Col,{xs:12,children:t.jsx(s.Radio,{className:"w-100",style:{borderTopRightRadius:0,borderBottomRightRadius:0},value:"ASC",children:"Ascending"})}),t.jsx(s.Col,{xs:12,children:t.jsx(s.Radio,{className:"w-100",style:{borderTopLeftRadius:0,borderBottomLeftRadius:0},value:"DESC",children:"Descending"})})]})})})]})})}),R?R(a):null]}),t.jsx(v,{className:"mt-3",type:"primary",block:!0,htmlType:"submit",disabled:f,children:"Submit"})]}),t.jsxs(s.Space,{children:[!!h&&t.jsx(W.PrintButton,{disabled:f||!u.length,onClick:()=>h==null?void 0:h({tableId:"#crud-table table",data:u,fields:S.map(e=>({...e,render:V.getRendererValueCrudViewer(e)}))})}),!!y&&t.jsx(v,{disabled:f||!u.length,onClick:()=>y==null?void 0:y({tableId:"#crud-table table",data:u,fields:S.map(e=>({...e,render:V.getRendererValueCrudViewer(e)}))}),icon:t.jsx(J.FileExcelOutlined,{}),className:`group ${f||!u.length?"":"crud-excel-export-btn"}`,children:"Excel"})]}),_,t.jsx(K,{minusHeight:U,data:u,size:O,fields:S,idField:L,loadingData:f,paginateProps:G,viewable:!1})]})}module.exports=Y;
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import { jsxs as u, jsx as t, Fragment as
|
|
2
|
-
import { FileExcelOutlined as
|
|
1
|
+
import { jsxs as u, jsx as t, Fragment as Y } from "react/jsx-runtime";
|
|
2
|
+
import { FileExcelOutlined as Z } from "@ant-design/icons";
|
|
3
3
|
import { Form as B, Space as O, Row as _, Col as b, Radio as R } from "antd";
|
|
4
|
-
import { useMemo as k, useState as
|
|
4
|
+
import { useMemo as k, useState as F, useCallback as E, useEffect as w } from "react";
|
|
5
5
|
import N from "./CrudField.es.js";
|
|
6
6
|
import P from "./view/CrudViewer.es.js";
|
|
7
7
|
import { SelectFieldInReport as ee } from "../common/report/SelectFieldInReport.es.js";
|
|
8
8
|
import { getRendererValueCrudViewer as $ } from "./view/CrudViewerUtil.es.js";
|
|
9
9
|
import re from "../common/select/SelectComponent.es.js";
|
|
10
|
-
import
|
|
10
|
+
import x from "../common/button/Button.es.js";
|
|
11
11
|
import { PrintButton as te } from "../common/button/PrintButton.es.js";
|
|
12
|
-
const
|
|
12
|
+
const z = { lg: 6, md: 8, sm: 12, xs: 24 }, le = { lg: 12, md: 16, sm: 24, xs: 24 };
|
|
13
13
|
function be({
|
|
14
|
-
fields:
|
|
15
|
-
data:
|
|
16
|
-
idField:
|
|
14
|
+
fields: i,
|
|
15
|
+
data: d,
|
|
16
|
+
idField: D,
|
|
17
17
|
loadingData: c,
|
|
18
18
|
onSubmit: T,
|
|
19
|
-
paginateProps:
|
|
20
|
-
size:
|
|
19
|
+
paginateProps: H,
|
|
20
|
+
size: J,
|
|
21
21
|
onClickPrint: h,
|
|
22
22
|
onClickExcelExport: y,
|
|
23
|
-
minusHeight:
|
|
24
|
-
extraSearchFields:
|
|
25
|
-
searchOnMount:
|
|
26
|
-
summary:
|
|
23
|
+
minusHeight: K,
|
|
24
|
+
extraSearchFields: C,
|
|
25
|
+
searchOnMount: I,
|
|
26
|
+
summary: M
|
|
27
27
|
}) {
|
|
28
|
-
const { searchable:
|
|
28
|
+
const { searchable: Q, selectable: n, sortable: v, defaultSort: p } = k(() => {
|
|
29
29
|
var f, m, j, L, G;
|
|
30
30
|
const e = [], r = [], o = [];
|
|
31
31
|
let a;
|
|
32
|
-
for (const l of
|
|
32
|
+
for (const l of i.filter((X) => !X.hidden))
|
|
33
33
|
l.type === "image" || !l.report || ((f = l.report) != null && f.searchable && e.push(l), (m = l.report) != null && m.sortable && (r.push(l), !a && ((j = l.report) != null && j.defaultSort) && (a = l)), l.hideInTable || o.push({
|
|
34
34
|
id: l.name,
|
|
35
35
|
label: l.label,
|
|
@@ -42,9 +42,9 @@ function be({
|
|
|
42
42
|
sortable: r,
|
|
43
43
|
selectable: o
|
|
44
44
|
};
|
|
45
|
-
}, [
|
|
45
|
+
}, [i]), [S, V] = F(
|
|
46
46
|
[]
|
|
47
|
-
),
|
|
47
|
+
), g = E(
|
|
48
48
|
async ({
|
|
49
49
|
sortBy: e,
|
|
50
50
|
sortByType: r,
|
|
@@ -56,42 +56,42 @@ function be({
|
|
|
56
56
|
field: e,
|
|
57
57
|
sort: r ?? "DESC"
|
|
58
58
|
}), V(
|
|
59
|
-
|
|
59
|
+
i.filter((m) => o.includes(m.name)).map((m) => ({ ...m, hideInTable: !1 }))
|
|
60
60
|
), T({ showFields: o, sortBy: f, ...a });
|
|
61
61
|
},
|
|
62
|
-
[
|
|
63
|
-
), [s] = B.useForm(), [q,
|
|
64
|
-
return
|
|
65
|
-
if (
|
|
62
|
+
[i, T]
|
|
63
|
+
), [s] = B.useForm(), [q, U] = F(!1), [A, W] = F(!0);
|
|
64
|
+
return w(() => {
|
|
65
|
+
if (I && A) {
|
|
66
66
|
const e = setTimeout(() => {
|
|
67
67
|
s.validateFields().then((r) => {
|
|
68
|
-
|
|
69
|
-
}),
|
|
68
|
+
g(r);
|
|
69
|
+
}), W(!1);
|
|
70
70
|
}, 200);
|
|
71
71
|
return () => clearTimeout(e);
|
|
72
72
|
}
|
|
73
|
-
}, [
|
|
73
|
+
}, [g, s, A, I]), w(() => {
|
|
74
74
|
var r, o;
|
|
75
75
|
!s.getFieldValue("sortBy") && p && s.setFieldsValue({
|
|
76
76
|
sortBy: p.name,
|
|
77
77
|
sortByType: typeof ((r = p.report) == null ? void 0 : r.defaultSort) == "string" ? (o = p.report) == null ? void 0 : o.defaultSort : "ASC"
|
|
78
78
|
});
|
|
79
|
-
}, [p, s]),
|
|
79
|
+
}, [p, s]), w(() => {
|
|
80
80
|
if (q) {
|
|
81
|
-
const e =
|
|
81
|
+
const e = n.filter((r) => r.alreadySelected).map((r) => r.id);
|
|
82
82
|
V(
|
|
83
|
-
|
|
84
|
-
),
|
|
83
|
+
i.filter((r) => e.includes(r.name)).map((r) => ({ ...r, hideInTable: !1 }))
|
|
84
|
+
), U(!1);
|
|
85
85
|
}
|
|
86
|
-
}, [
|
|
87
|
-
/* @__PURE__ */ u(B, { form: s, layout: "vertical", onFinish:
|
|
86
|
+
}, [i, q, n]), /* @__PURE__ */ u(O, { className: "w-100", direction: "vertical", children: [
|
|
87
|
+
/* @__PURE__ */ u(B, { form: s, layout: "vertical", onFinish: g, children: [
|
|
88
88
|
/* @__PURE__ */ u(_, { gutter: [8, 8], children: [
|
|
89
|
-
|
|
89
|
+
Q.map((e) => {
|
|
90
90
|
var r, o, a;
|
|
91
91
|
return /* @__PURE__ */ t(
|
|
92
92
|
b,
|
|
93
93
|
{
|
|
94
|
-
...e.grid ??
|
|
94
|
+
...e.grid ?? z,
|
|
95
95
|
style: { alignSelf: "end" },
|
|
96
96
|
children: (r = e.report) != null && r.customRender ? e.report.customRender(s) : e.type === "date" ? /* @__PURE__ */ t(
|
|
97
97
|
N,
|
|
@@ -126,26 +126,26 @@ function be({
|
|
|
126
126
|
e.name
|
|
127
127
|
);
|
|
128
128
|
}),
|
|
129
|
-
!!(
|
|
129
|
+
!!(n != null && n.length) && /* @__PURE__ */ t(b, { ...le, children: /* @__PURE__ */ t(
|
|
130
130
|
ee,
|
|
131
131
|
{
|
|
132
|
-
items:
|
|
132
|
+
items: n,
|
|
133
133
|
name: "showFields",
|
|
134
134
|
mode: "multiple",
|
|
135
135
|
label: "Show Fields",
|
|
136
136
|
className: "mb-0"
|
|
137
137
|
}
|
|
138
138
|
) }),
|
|
139
|
-
!!
|
|
139
|
+
!!v.length && /* @__PURE__ */ t(b, { ...z, children: /* @__PURE__ */ t(
|
|
140
140
|
re,
|
|
141
141
|
{
|
|
142
142
|
label: "Sort By",
|
|
143
143
|
name: "sortBy",
|
|
144
|
-
items:
|
|
144
|
+
items: v.map((e) => ({ id: e.name, label: e.label })),
|
|
145
145
|
nameFieldInArray: "label",
|
|
146
146
|
fieldId: "id",
|
|
147
147
|
className: "mb-0",
|
|
148
|
-
dropdownRender: (e) => /* @__PURE__ */ u(
|
|
148
|
+
dropdownRender: (e) => /* @__PURE__ */ u(Y, { children: [
|
|
149
149
|
e,
|
|
150
150
|
/* @__PURE__ */ t(B.Item, { name: "sortByType", noStyle: !0, className: "mt-3", children: /* @__PURE__ */ t(
|
|
151
151
|
R.Group,
|
|
@@ -184,10 +184,10 @@ function be({
|
|
|
184
184
|
] })
|
|
185
185
|
}
|
|
186
186
|
) }),
|
|
187
|
-
|
|
187
|
+
C ? C(s) : null
|
|
188
188
|
] }),
|
|
189
189
|
/* @__PURE__ */ t(
|
|
190
|
-
|
|
190
|
+
x,
|
|
191
191
|
{
|
|
192
192
|
className: "mt-3",
|
|
193
193
|
type: "primary",
|
|
@@ -202,11 +202,11 @@ function be({
|
|
|
202
202
|
!!h && /* @__PURE__ */ t(
|
|
203
203
|
te,
|
|
204
204
|
{
|
|
205
|
-
disabled: c || !
|
|
205
|
+
disabled: c || !d.length,
|
|
206
206
|
onClick: () => h == null ? void 0 : h({
|
|
207
207
|
tableId: "#crud-table table",
|
|
208
|
-
data:
|
|
209
|
-
fields:
|
|
208
|
+
data: d,
|
|
209
|
+
fields: S.map((e) => ({
|
|
210
210
|
...e,
|
|
211
211
|
render: $(e)
|
|
212
212
|
}))
|
|
@@ -214,37 +214,34 @@ function be({
|
|
|
214
214
|
}
|
|
215
215
|
),
|
|
216
216
|
!!y && /* @__PURE__ */ t(
|
|
217
|
-
|
|
217
|
+
x,
|
|
218
218
|
{
|
|
219
|
-
disabled: c || !
|
|
219
|
+
disabled: c || !d.length,
|
|
220
220
|
onClick: () => y == null ? void 0 : y({
|
|
221
221
|
tableId: "#crud-table table",
|
|
222
|
-
data:
|
|
223
|
-
fields:
|
|
222
|
+
data: d,
|
|
223
|
+
fields: S.map((e) => ({
|
|
224
224
|
...e,
|
|
225
225
|
render: $(e)
|
|
226
226
|
}))
|
|
227
227
|
}),
|
|
228
|
-
icon: /* @__PURE__ */ t(
|
|
229
|
-
className: `group
|
|
230
|
-
${c || !i.length ? "" : "!bg-green-700 hover:!bg-green-600 !text-white !border-green-700 hover:!border-green-600"}
|
|
231
|
-
|
|
232
|
-
`,
|
|
228
|
+
icon: /* @__PURE__ */ t(Z, {}),
|
|
229
|
+
className: `group ${c || !d.length ? "" : "crud-excel-export-btn"}`,
|
|
233
230
|
children: "Excel"
|
|
234
231
|
}
|
|
235
232
|
)
|
|
236
233
|
] }),
|
|
237
|
-
|
|
234
|
+
M,
|
|
238
235
|
/* @__PURE__ */ t(
|
|
239
236
|
P,
|
|
240
237
|
{
|
|
241
|
-
minusHeight:
|
|
242
|
-
data:
|
|
243
|
-
size:
|
|
244
|
-
fields:
|
|
245
|
-
idField:
|
|
238
|
+
minusHeight: K,
|
|
239
|
+
data: d,
|
|
240
|
+
size: J,
|
|
241
|
+
fields: S,
|
|
242
|
+
idField: D,
|
|
246
243
|
loadingData: c,
|
|
247
|
-
paginateProps:
|
|
244
|
+
paginateProps: H,
|
|
248
245
|
viewable: !1
|
|
249
246
|
}
|
|
250
247
|
)
|
package/dist/style.css
CHANGED
|
@@ -8,4 +8,4 @@
|
|
|
8
8
|
* https://quilljs.com/
|
|
9
9
|
* Copyright (c) 2014, Jason Chen
|
|
10
10
|
* Copyright (c) 2013, salesforce.com
|
|
11
|
-
*/.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"•"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"☑"}.ql-editor ul[data-checked=false]>li:before{content:"☐"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.dark .ql-toolbar.ql-snow,.dark .ql-container.ql-snow{@apply border border-[#424242];}.ql-toolbar.ql-snow{border-top-left-radius:6px;border-top-right-radius:6px;@apply border border-[#d9d9d9];}.ql-container.ql-snow{border-bottom-left-radius:6px;border-bottom-right-radius:6px;@apply border border-[#d9d9d9];}.quill{border-radius:6px}.ant-avatar-string{left:0!important;position:relative!important}.hide-upload div.ant-upload-select{display:none!important}.max-width{width:100%}.ant-btn:focus{outline:none!important;box-shadow:none!important}.ant-btn:active{outline:none!important;border-color:inherit!important}input:focus{outline:none!important}
|
|
11
|
+
*/.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"•"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"☑"}.ql-editor ul[data-checked=false]>li:before{content:"☐"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}html.dark .ql-toolbar.ql-snow,html[data-theme=dark] .ql-toolbar.ql-snow,body.dark .ql-toolbar.ql-snow,html.dark .ql-container.ql-snow,html[data-theme=dark] .ql-container.ql-snow,body.dark .ql-container.ql-snow{border:1px solid #424242}html.dark .rich-text-editor,html[data-theme=dark] .rich-text-editor,body.dark .rich-text-editor{background-color:#141414!important;color:#fff!important}html.dark .rich-text-editor svg,html[data-theme=dark] .rich-text-editor svg,body.dark .rich-text-editor svg{fill:#fff!important}.ql-toolbar.ql-snow{border-top-left-radius:6px;border-top-right-radius:6px;border:1px solid #d9d9d9}.ql-container.ql-snow{border-bottom-left-radius:6px;border-bottom-right-radius:6px;border:1px solid #d9d9d9}.quill{border-radius:6px}.rich-text-editor{background-color:#fff}.ant-avatar-string{left:0!important;position:relative!important}.hide-upload div.ant-upload-select{display:none!important}.max-width{width:100%}.crud-excel-export-btn{background-color:#15803d!important;color:#fff!important;border-color:#15803d!important}.crud-excel-export-btn:hover{background-color:#16a34a!important;border-color:#16a34a!important}.ant-btn:focus{outline:none!important;box-shadow:none!important}.ant-btn:active{outline:none!important;border-color:inherit!important}input:focus{outline:none!important}
|