@qynpm/ui 0.0.2 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/README.md +183 -8
  2. package/dist/_virtual/plugin-vue_export-helper.cjs +1 -0
  3. package/dist/_virtual/plugin-vue_export-helper.mjs +9 -0
  4. package/dist/index.cjs +1 -0
  5. package/dist/index.mjs +17 -0
  6. package/dist/lib/dialog/index.vue.cjs +1 -0
  7. package/dist/lib/dialog/index.vue.mjs +326 -0
  8. package/dist/lib/index.cjs +1 -0
  9. package/dist/lib/index.mjs +40 -0
  10. package/dist/lib/qy-action-bar/index.vue.cjs +1 -0
  11. package/dist/lib/qy-action-bar/index.vue.mjs +56 -0
  12. package/dist/lib/qy-form-section/index.vue.cjs +1 -0
  13. package/dist/lib/qy-form-section/index.vue.mjs +89 -0
  14. package/dist/lib/qy-input/index.vue.cjs +1 -0
  15. package/dist/lib/qy-input/index.vue.mjs +142 -0
  16. package/dist/lib/qy-record-quote-search/index.vue.cjs +1 -0
  17. package/dist/lib/qy-record-quote-search/index.vue.mjs +206 -0
  18. package/dist/lib/qy-search-input/index.vue.cjs +1 -0
  19. package/dist/lib/qy-search-input/index.vue.mjs +277 -0
  20. package/dist/lib/qy-select/index.vue.cjs +1 -0
  21. package/dist/lib/qy-select/index.vue.mjs +137 -0
  22. package/dist/lib/remark-image/index.vue.cjs +1 -0
  23. package/dist/lib/remark-image/index.vue.mjs +198 -0
  24. package/dist/lib/remark-image/utils.cjs +1 -0
  25. package/dist/lib/remark-image/utils.mjs +22 -0
  26. package/dist/lib/upload/index.vue.cjs +1 -0
  27. package/dist/lib/upload/index.vue.mjs +382 -0
  28. package/dist/lib/utils/auth.cjs +1 -0
  29. package/dist/lib/utils/auth.mjs +8 -0
  30. package/dist/lib/utils/install.cjs +1 -0
  31. package/dist/lib/utils/install.mjs +8 -0
  32. package/dist/node_modules/.pnpm/js-cookie@3.0.1/node_modules/js-cookie/dist/js.cookie.cjs +1 -0
  33. package/dist/node_modules/.pnpm/js-cookie@3.0.1/node_modules/js-cookie/dist/js.cookie.mjs +74 -0
  34. package/dist/qy-action-bar/index.cjs +1 -0
  35. package/dist/qy-action-bar/index.mjs +6 -0
  36. package/dist/qy-dialog/index.cjs +1 -0
  37. package/dist/qy-dialog/index.mjs +6 -0
  38. package/dist/qy-form-section/index.cjs +1 -0
  39. package/dist/qy-form-section/index.mjs +6 -0
  40. package/dist/qy-input/index.cjs +1 -0
  41. package/dist/qy-input/index.mjs +6 -0
  42. package/dist/qy-record-quote-search/index.cjs +1 -0
  43. package/dist/qy-record-quote-search/index.mjs +6 -0
  44. package/dist/qy-remark-image/index.cjs +2 -0
  45. package/dist/qy-remark-image/index.mjs +7 -0
  46. package/dist/qy-search-input/index.cjs +1 -0
  47. package/dist/qy-search-input/index.mjs +6 -0
  48. package/dist/qy-select/index.cjs +1 -0
  49. package/dist/qy-select/index.mjs +6 -0
  50. package/dist/qy-upload/index.cjs +1 -0
  51. package/dist/qy-upload/index.mjs +6 -0
  52. package/index.d.ts +16 -4
  53. package/package.json +60 -7
  54. package/qy-action-bar/index.d.ts +5 -0
  55. package/qy-action-bar/index.js +4 -0
  56. package/qy-dialog/index.d.ts +5 -0
  57. package/qy-dialog/index.js +4 -0
  58. package/qy-form-section/index.d.ts +5 -0
  59. package/qy-form-section/index.js +4 -0
  60. package/qy-input/index.d.ts +5 -0
  61. package/qy-input/index.js +4 -0
  62. package/qy-record-quote-search/index.d.ts +5 -0
  63. package/qy-record-quote-search/index.js +4 -0
  64. package/qy-remark-image/index.d.ts +5 -0
  65. package/qy-remark-image/index.js +4 -0
  66. package/qy-search-input/index.d.ts +5 -0
  67. package/qy-search-input/index.js +4 -0
  68. package/qy-select/index.d.ts +5 -0
  69. package/qy-select/index.js +4 -0
  70. package/qy-upload/index.d.ts +5 -0
  71. package/qy-upload/index.js +4 -0
  72. package/dist/ui.es.js +0 -994
  73. package/dist/ui.umd.js +0 -2
  74. package/index.js +0 -9
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const w=require("element-plus/es"),e=require("vue"),O=require("@element-plus/icons-vue"),v=require("element-plus"),oe=require("../utils/auth.cjs");;/* empty css */;/* empty css */const ie=require("../../_virtual/plugin-vue_export-helper.cjs"),se={class:"qy-upload__hint"},ne=["src"],re={key:1,class:"qy-upload__tip"},ue={class:"error"},de={class:"error"},ce=Object.assign({name:"QyUpload"},{__name:"index",props:{defaultValue:{type:Object,default:()=>({files:"",text:""})},multiple:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},fileType:{type:Array,default:()=>[]},fileSize:{type:Number,default:10},limit:{type:Number,default:9},isShowTip:{type:Boolean,default:!1},api:{type:String,default:"/permission-api/common/uploads"},name:{type:String,default:"file"},tokenKey:{type:String,default:"Admin-Token"},supportVideo:{type:Boolean,default:!1},size:{type:String,default:"default"},disableDrag:{type:Boolean,default:!1},callBack:{type:Function,default:null},extraData:{type:Object,default:()=>({})}},emits:["change","success","error","remove"],setup(p,{expose:A,emit:I}){const s=p,g=I,h=e.ref(null),u=e.ref([]),M=e.ref(null),x=[],C=e.ref(!1),S=e.ref([]),E=e.ref(0),V=e.ref(!1),L=e.ref(""),T=e.ref(""),k=new Set,B=e.ref(!1),f=e.ref(""),D=e.ref(!1);e.onMounted(()=>{const l=s.defaultValue;if(!l)return;f.value=l.text??"";const t=l.files??"",o=Array.isArray(t)?t.filter(Boolean):String(t).split(",").filter(Boolean);o.length&&(u.value=o.map((a,i)=>({name:a.split("/").pop()||`file-${i}`,url:a,status:"success",uid:Date.now()+i})))});const P=e.computed(()=>({large:"160px",default:"140px",small:"80px"})[s.size]??s.size),H=e.computed(()=>s.disabled),W=e.computed(()=>{var l;return s.isShowTip&&(s.fileSize||((l=m.value)==null?void 0:l.length))}),m=e.computed(()=>{var l;return(l=s.fileType)!=null&&l.length?s.fileType.map(t=>t.toLowerCase()):s.supportVideo?["mp4","mov","avi"]:["jpg","jpeg","png","gif","webp"]}),N=e.computed(()=>{const l=s.supportVideo?1:s.limit;return u.value.length>=l}),X=e.computed(()=>m.value.map(l=>`.${l}`).join(",")),K=e.computed(()=>({"qy-upload--reached-limit":N.value,"qy-upload--disabled":s.disabled,"qy-upload--video":s.supportVideo}));e.watch(f,()=>b());function Q(){var l;(l=M.value)==null||l.focus()}function b(l){const a={files:(l??u.value).filter(i=>i.status==="success"&&i.url).map(i=>i.url),text:f.value};g("change",a),s.callBack&&s.callBack(a)}function J(l,t){b(t)}function G(l){var a;if(!(l.size/1024/1024<s.fileSize))return v.ElMessage.warning(`文件大小不能超过${s.fileSize}M`),!1;const o=((a=l.name.split(".").pop())==null?void 0:a.toLowerCase())||"";return m.value.includes(o)?!0:(v.ElMessage.warning(`格式不支持,仅允许: ${m.value.join("/")}`),!1)}function z(l,t,o,a){var $,F;const i=s.api.startsWith("http")?s.api:window.location.origin+s.api.replace(/^([^/])/,"/$1"),d=new FormData;d.append(s.name,l),s.extraData&&Object.entries(s.extraData).forEach(([r,ae])=>d.append(r,ae));const n=new XMLHttpRequest;x.push(n);const y=(($=h.value)==null?void 0:$.$el.querySelector(".el-upload--picture-card"))||((F=h.value)==null?void 0:F.$el),q=v.ElLoading.service({target:y,text:"上传中",background:"rgba(255,255,255,0.7)"}),c=()=>{const r=x.indexOf(n);r!==-1&&x.splice(r,1),q.close()};n.open("POST",i);const _=oe.getToken(s.tokenKey);_&&n.setRequestHeader("Authorization",`Bearer ${_}`),n.upload.onprogress=r=>{r.total>0&&(t==null||t({percent:r.loaded/r.total*100}))},n.onload=()=>{if(c(),n.status<200||n.status>=300){const r=`上传失败 (HTTP ${n.status})`;v.ElMessage.error(r),g("error",{msg:r,status:n.status}),a==null||a(new Error(r));return}try{const r=JSON.parse(n.responseText);r.code===200&&r.urls?(v.ElMessage.success("上传成功"),o==null||o({...r,url:r.urls})):(v.ElMessage.error(r.msg||"上传失败"),g("error",r),a==null||a(r))}catch{v.ElMessage.error("上传失败,响应格式错误"),g("error",new Error("Response parse error")),a==null||a(new Error("Response parse error"))}},n.onerror=()=>{c(),v.ElMessage.error("上传失败,网络异常"),g("error",new Error("Network error")),a==null||a(new Error("Network error"))},n.send(d)}function R(l){return s.disabled?!1:G(l)}function Y(l){z(l.file,l.onProgress,t=>{l.onSuccess(t),b(),g("success",t)},t=>l.onError(t))}function Z(l){var a;if(!l.url)return;const t=((a=l.url.split(".").pop())==null?void 0:a.toLowerCase())||"";if(["mp4","mov","avi","webm"].includes(t)){L.value=l.url,T.value=l.name||"视频预览",V.value=!0;return}const o=u.value.filter(i=>{var d;return i.status==="success"&&i.url&&!["mp4","mov","avi","webm"].includes((d=i.url.split(".").pop())==null?void 0:d.toLowerCase())});S.value=o.map(i=>i.url),E.value=o.findIndex(i=>i.uid===l.uid)||0,C.value=!0}function ee(){C.value=!1,S.value=[]}function j(l){for(let t=0;t<l.length;t++){const o=l[t];if(!R(o))continue;const a=Date.now()+t,i=URL.createObjectURL(o);k.add(i),u.value.push({uid:a,name:o.name||`file-${a}`,status:"uploading",percentage:0,url:i}),z(o,d=>{const n=u.value.find(y=>y.uid===a);n&&(n.percentage=d.percent)},d=>{const n=u.value.find(y=>y.uid===a);n&&(n.status="success",n.url=d.url,b(),g("success",d))},()=>le(a))}}function U(l){var a;if(s.disabled)return;const t=(a=l.clipboardData)==null?void 0:a.items;if(!t)return;const o=[];for(let i=0;i<t.length;i++){const d=t[i];if(d.kind==="file"&&d.type.startsWith("image/")){const n=d.getAsFile();n&&o.push(n)}}o.length&&(l.preventDefault(),j(o))}function te(l){var o;if(B.value=!1,s.disabled||N.value)return;const t=Array.from(((o=l.dataTransfer)==null?void 0:o.files)||[]).filter(a=>{var i;return m.value.includes((i=a.name.split(".").pop())==null?void 0:i.toLowerCase())});t.length&&j(t)}function le(l){var o;const t=u.value.findIndex(a=>a.uid===l);t!==-1&&((o=u.value[t].url)!=null&&o.startsWith("blob:")&&(URL.revokeObjectURL(u.value[t].url),k.delete(u.value[t].url)),u.value.splice(t,1))}return e.onBeforeUnmount(()=>{x.forEach(l=>l.abort()),x.length=0,k.forEach(l=>URL.revokeObjectURL(l)),k.clear()}),A({openFileDialog:()=>{var l,t;s.disabled||N.value||(t=(l=h.value)==null?void 0:l.$el.querySelector('input[type="file"]'))==null||t.click()},getPathList:()=>u.value.filter(l=>l.status==="success").map(l=>l.url),clearFiles:()=>{u.value=[],f.value="",b()},getValue:()=>({files:u.value.filter(l=>l.status==="success"&&l.url).map(l=>l.url),text:f.value})}),(l,t)=>{var q;const o=w.ElIcon,a=w.ElInput,i=w.ElPopover,d=w.ElUpload,n=w.ElImageViewer,y=w.ElDialog;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["qy-upload",K.value]),style:e.normalizeStyle({"--qy-upload-size":P.value})},[e.createVNode(d,{ref_key:"uploadRef",ref:h,"file-list":u.value,"onUpdate:fileList":t[6]||(t[6]=c=>u.value=c),action:"#",multiple:p.supportVideo?!1:p.multiple,limit:p.supportVideo?1:p.limit,"list-type":p.supportVideo?"text":"picture-card",accept:X.value,disabled:H.value,"http-request":Y,"before-upload":R,"on-preview":Z,"on-remove":J},{default:e.withCtx(()=>[N.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["qy-upload__trigger",{"is-dragover":B.value}]),onPaste:U,onDragover:t[4]||(t[4]=e.withModifiers(c=>B.value=!0,["prevent"])),onDragleave:t[5]||(t[5]=e.withModifiers(c=>B.value=!1,["prevent"])),onDrop:e.withModifiers(te,["prevent"])},[e.createVNode(o,{class:"qy-upload__icon"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Plus))]),_:1}),p.supportVideo?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t[9]||(t[9]=e.createElementVNode("span",{class:"qy-upload__label"},"点击上传视频",-1)),e.createElementVNode("span",se,"支持 "+e.toDisplayString(m.value.join(" / "))+",不超过 "+e.toDisplayString(p.fileSize)+"MB",1)],64)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"qy-upload__text",onClick:t[3]||(t[3]=e.withModifiers(()=>{},["stop"])),onPaste:e.withModifiers(U,["stop"])},[e.createVNode(i,{visible:D.value,"onUpdate:visible":t[2]||(t[2]=c=>D.value=c),placement:"bottom-start",width:220,trigger:"click","popper-class":"qy-upload__text-popover",onAfterEnter:Q},{reference:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["qy-upload__text-preview",{"is-placeholder":!f.value}])},e.toDisplayString(f.value||"输入文字"),3)]),default:e.withCtx(()=>[e.createVNode(a,{ref_key:"inputRef",ref:M,modelValue:f.value,"onUpdate:modelValue":t[0]||(t[0]=c=>f.value=c),type:"textarea",autosize:{minRows:2,maxRows:5},placeholder:"输入文字或粘贴图片",disabled:p.disabled,onBlur:t[1]||(t[1]=c=>D.value=!1),onPaste:e.withModifiers(U,["stop"])},null,8,["modelValue","disabled"])]),_:1},8,["visible"])],32)],34))]),_:1},8,["file-list","multiple","limit","list-type","accept","disabled"]),C.value?(e.openBlock(),e.createBlock(n,{key:0,"url-list":S.value,"initial-index":E.value,onClose:ee},null,8,["url-list","initial-index"])):e.createCommentVNode("",!0),e.createVNode(y,{modelValue:V.value,"onUpdate:modelValue":t[7]||(t[7]=c=>V.value=c),title:T.value,width:"640px","append-to-body":"","destroy-on-close":"",onClose:t[8]||(t[8]=c=>V.value=!1)},{default:e.withCtx(()=>[V.value?(e.openBlock(),e.createElementBlock("video",{key:0,src:L.value,controls:"",autoplay:"",style:{width:"100%","max-height":"400px","border-radius":"4px"}},null,8,ne)):e.createCommentVNode("",!0)]),_:1},8,["modelValue","title"]),W.value?(e.openBlock(),e.createElementBlock("div",re,[e.createVNode(o,null,{default:e.withCtx(()=>[e.createVNode(e.unref(O.InfoFilled))]),_:1}),e.createElementVNode("span",null,[t[12]||(t[12]=e.createTextVNode(" 请上传 ",-1)),p.fileSize?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t[10]||(t[10]=e.createTextVNode("大小不超过 ",-1)),e.createElementVNode("b",ue,e.toDisplayString(p.fileSize)+"MB",1)],64)):e.createCommentVNode("",!0),(q=m.value)!=null&&q.length?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[t[11]||(t[11]=e.createTextVNode(",格式为 ",-1)),e.createElementVNode("b",de,e.toDisplayString(m.value.join("/")),1)],64)):e.createCommentVNode("",!0),t[13]||(t[13]=e.createTextVNode(" 的文件。 ",-1))])])):e.createCommentVNode("",!0)],6)}}}),pe=ie.default(ce,[["__scopeId","data-v-c1472320"]]);exports.default=pe;
@@ -0,0 +1,382 @@
1
+ import { ElUpload as me, ElIcon as ye, ElPopover as ge, ElInput as be, ElImageViewer as xe, ElDialog as we } from "element-plus/es";
2
+ import { ref as p, onMounted as he, computed as x, watch as ke, onBeforeUnmount as Ve, createElementBlock as w, openBlock as m, normalizeStyle as Ue, normalizeClass as I, createVNode as y, createBlock as Be, createCommentVNode as h, withCtx as U, withModifiers as B, createElementVNode as k, unref as Y, Fragment as M, toDisplayString as R, createTextVNode as $ } from "vue";
3
+ import { Plus as Le, InfoFilled as Se } from "@element-plus/icons-vue";
4
+ import { ElMessage as V, ElLoading as De } from "element-plus";
5
+ import { getToken as Re } from "../utils/auth.mjs";
6
+ /* empty css */
7
+ /* empty css */
8
+ import qe from "../../_virtual/plugin-vue_export-helper.mjs";
9
+ const ze = { class: "qy-upload__hint" }, Te = ["src"], je = {
10
+ key: 1,
11
+ class: "qy-upload__tip"
12
+ }, _e = { class: "error" }, $e = { class: "error" }, Ce = Object.assign({
13
+ name: "QyUpload"
14
+ }, {
15
+ __name: "index",
16
+ props: {
17
+ /**
18
+ * 初始值,结构为 { files: '逗号分隔的URL', text: '文字内容' }
19
+ * 非受控模式,仅初始化时读取一次
20
+ */
21
+ defaultValue: { type: Object, default: () => ({ files: "", text: "" }) },
22
+ /** 是否多选 */
23
+ multiple: { type: Boolean, default: !0 },
24
+ /** 是否禁用 */
25
+ disabled: { type: Boolean, default: !1 },
26
+ /** 允许的文件类型后缀(如 ['jpg', 'mp4']) */
27
+ fileType: { type: Array, default: () => [] },
28
+ /** 单个文件大小限制(MB) */
29
+ fileSize: { type: Number, default: 10 },
30
+ /** 文件数量限制 */
31
+ limit: { type: Number, default: 9 },
32
+ /** 是否显示格式/大小提示 */
33
+ isShowTip: { type: Boolean, default: !1 },
34
+ /** 接口路径 */
35
+ api: { type: String, default: "/permission-api/common/uploads" },
36
+ /** FormData 中文件字段名 */
37
+ name: { type: String, default: "file" },
38
+ tokenKey: { type: String, default: "Admin-Token" },
39
+ /** 是否支持视频模式(强制 limit=1) */
40
+ supportVideo: { type: Boolean, default: !1 },
41
+ /**
42
+ * 卡片尺寸
43
+ * 预设:'large'(160px) | 'default'(140px) | 'small'(80px)
44
+ * 自定义:任意 CSS 单位,如 '60px'、'8vw'
45
+ */
46
+ size: { type: String, default: "default" },
47
+ /** 禁用拖拽(默认在触发区开启) */
48
+ disableDrag: { type: Boolean, default: !1 },
49
+ /** 成功回调(用于复杂业务联动) */
50
+ callBack: { type: Function, default: null },
51
+ /** 上传时附加的额外 FormData 字段 */
52
+ extraData: { type: Object, default: () => ({}) }
53
+ },
54
+ emits: ["change", "success", "error", "remove"],
55
+ setup(c, { expose: Z, emit: ee }) {
56
+ const o = c, g = ee, q = p(null), u = p([]), N = p(null), L = [], C = p(!1), F = p([]), P = p(0), S = p(!1), E = p(""), H = p(""), z = /* @__PURE__ */ new Set(), T = p(!1), f = p(""), O = p(!1);
57
+ he(() => {
58
+ const t = o.defaultValue;
59
+ if (!t) return;
60
+ f.value = t.text ?? "";
61
+ const e = t.files ?? "", a = Array.isArray(e) ? e.filter(Boolean) : String(e).split(",").filter(Boolean);
62
+ a.length && (u.value = a.map((l, i) => ({
63
+ name: l.split("/").pop() || `file-${i}`,
64
+ url: l,
65
+ status: "success",
66
+ uid: Date.now() + i
67
+ })));
68
+ });
69
+ const te = x(() => ({ large: "160px", default: "140px", small: "80px" })[o.size] ?? o.size), le = x(() => o.disabled), ae = x(
70
+ () => {
71
+ var t;
72
+ return o.isShowTip && (o.fileSize || ((t = v.value) == null ? void 0 : t.length));
73
+ }
74
+ ), v = x(() => {
75
+ var t;
76
+ return (t = o.fileType) != null && t.length ? o.fileType.map((e) => e.toLowerCase()) : o.supportVideo ? ["mp4", "mov", "avi"] : ["jpg", "jpeg", "png", "gif", "webp"];
77
+ }), j = x(() => {
78
+ const t = o.supportVideo ? 1 : o.limit;
79
+ return u.value.length >= t;
80
+ }), ie = x(
81
+ () => v.value.map((t) => `.${t}`).join(",")
82
+ ), oe = x(() => ({
83
+ "qy-upload--reached-limit": j.value,
84
+ "qy-upload--disabled": o.disabled,
85
+ "qy-upload--video": o.supportVideo
86
+ }));
87
+ ke(f, () => D());
88
+ function se() {
89
+ var t;
90
+ (t = N.value) == null || t.focus();
91
+ }
92
+ function D(t) {
93
+ const l = { files: (t ?? u.value).filter((i) => i.status === "success" && i.url).map((i) => i.url), text: f.value };
94
+ g("change", l), o.callBack && o.callBack(l);
95
+ }
96
+ function ne(t, e) {
97
+ D(e);
98
+ }
99
+ function ue(t) {
100
+ var l;
101
+ if (!(t.size / 1024 / 1024 < o.fileSize))
102
+ return V.warning(`文件大小不能超过${o.fileSize}M`), !1;
103
+ const a = ((l = t.name.split(".").pop()) == null ? void 0 : l.toLowerCase()) || "";
104
+ return v.value.includes(a) ? !0 : (V.warning(
105
+ `格式不支持,仅允许: ${v.value.join("/")}`
106
+ ), !1);
107
+ }
108
+ function W(t, e, a, l) {
109
+ var J, G;
110
+ const i = o.api.startsWith("http") ? o.api : window.location.origin + o.api.replace(/^([^/])/, "/$1"), r = new FormData();
111
+ r.append(o.name, t), o.extraData && Object.entries(o.extraData).forEach(([n, ve]) => r.append(n, ve));
112
+ const s = new XMLHttpRequest();
113
+ L.push(s);
114
+ const b = ((J = q.value) == null ? void 0 : J.$el.querySelector(".el-upload--picture-card")) || ((G = q.value) == null ? void 0 : G.$el), _ = De.service({
115
+ target: b,
116
+ text: "上传中",
117
+ background: "rgba(255,255,255,0.7)"
118
+ }), d = () => {
119
+ const n = L.indexOf(s);
120
+ n !== -1 && L.splice(n, 1), _.close();
121
+ };
122
+ s.open("POST", i);
123
+ const Q = Re(o.tokenKey);
124
+ Q && s.setRequestHeader("Authorization", `Bearer ${Q}`), s.upload.onprogress = (n) => {
125
+ n.total > 0 && (e == null || e({ percent: n.loaded / n.total * 100 }));
126
+ }, s.onload = () => {
127
+ if (d(), s.status < 200 || s.status >= 300) {
128
+ const n = `上传失败 (HTTP ${s.status})`;
129
+ V.error(n), g("error", { msg: n, status: s.status }), l == null || l(new Error(n));
130
+ return;
131
+ }
132
+ try {
133
+ const n = JSON.parse(s.responseText);
134
+ n.code === 200 && n.urls ? (V.success("上传成功"), a == null || a({ ...n, url: n.urls })) : (V.error(n.msg || "上传失败"), g("error", n), l == null || l(n));
135
+ } catch {
136
+ V.error("上传失败,响应格式错误"), g("error", new Error("Response parse error")), l == null || l(new Error("Response parse error"));
137
+ }
138
+ }, s.onerror = () => {
139
+ d(), V.error("上传失败,网络异常"), g("error", new Error("Network error")), l == null || l(new Error("Network error"));
140
+ }, s.send(r);
141
+ }
142
+ function X(t) {
143
+ return o.disabled ? !1 : ue(t);
144
+ }
145
+ function re(t) {
146
+ W(
147
+ t.file,
148
+ t.onProgress,
149
+ (e) => {
150
+ t.onSuccess(e), D(), g("success", e);
151
+ },
152
+ (e) => t.onError(e)
153
+ );
154
+ }
155
+ function de(t) {
156
+ var l;
157
+ if (!t.url) return;
158
+ const e = ((l = t.url.split(".").pop()) == null ? void 0 : l.toLowerCase()) || "";
159
+ if (["mp4", "mov", "avi", "webm"].includes(e)) {
160
+ E.value = t.url, H.value = t.name || "视频预览", S.value = !0;
161
+ return;
162
+ }
163
+ const a = u.value.filter(
164
+ (i) => {
165
+ var r;
166
+ return i.status === "success" && i.url && !["mp4", "mov", "avi", "webm"].includes(
167
+ (r = i.url.split(".").pop()) == null ? void 0 : r.toLowerCase()
168
+ );
169
+ }
170
+ );
171
+ F.value = a.map((i) => i.url), P.value = a.findIndex((i) => i.uid === t.uid) || 0, C.value = !0;
172
+ }
173
+ function pe() {
174
+ C.value = !1, F.value = [];
175
+ }
176
+ function K(t) {
177
+ for (let e = 0; e < t.length; e++) {
178
+ const a = t[e];
179
+ if (!X(a)) continue;
180
+ const l = Date.now() + e, i = URL.createObjectURL(a);
181
+ z.add(i), u.value.push({
182
+ uid: l,
183
+ name: a.name || `file-${l}`,
184
+ status: "uploading",
185
+ percentage: 0,
186
+ url: i
187
+ }), W(
188
+ a,
189
+ (r) => {
190
+ const s = u.value.find((b) => b.uid === l);
191
+ s && (s.percentage = r.percent);
192
+ },
193
+ (r) => {
194
+ const s = u.value.find((b) => b.uid === l);
195
+ s && (s.status = "success", s.url = r.url, D(), g("success", r));
196
+ },
197
+ () => fe(l)
198
+ );
199
+ }
200
+ }
201
+ function A(t) {
202
+ var l;
203
+ if (o.disabled) return;
204
+ const e = (l = t.clipboardData) == null ? void 0 : l.items;
205
+ if (!e) return;
206
+ const a = [];
207
+ for (let i = 0; i < e.length; i++) {
208
+ const r = e[i];
209
+ if (r.kind === "file" && r.type.startsWith("image/")) {
210
+ const s = r.getAsFile();
211
+ s && a.push(s);
212
+ }
213
+ }
214
+ a.length && (t.preventDefault(), K(a));
215
+ }
216
+ function ce(t) {
217
+ var a;
218
+ if (T.value = !1, o.disabled || j.value) return;
219
+ const e = Array.from(((a = t.dataTransfer) == null ? void 0 : a.files) || []).filter(
220
+ (l) => {
221
+ var i;
222
+ return v.value.includes((i = l.name.split(".").pop()) == null ? void 0 : i.toLowerCase());
223
+ }
224
+ );
225
+ e.length && K(e);
226
+ }
227
+ function fe(t) {
228
+ var a;
229
+ const e = u.value.findIndex((l) => l.uid === t);
230
+ e !== -1 && ((a = u.value[e].url) != null && a.startsWith("blob:") && (URL.revokeObjectURL(u.value[e].url), z.delete(u.value[e].url)), u.value.splice(e, 1));
231
+ }
232
+ return Ve(() => {
233
+ L.forEach((t) => t.abort()), L.length = 0, z.forEach((t) => URL.revokeObjectURL(t)), z.clear();
234
+ }), Z({
235
+ openFileDialog: () => {
236
+ var t, e;
237
+ o.disabled || j.value || (e = (t = q.value) == null ? void 0 : t.$el.querySelector('input[type="file"]')) == null || e.click();
238
+ },
239
+ getPathList: () => u.value.filter((t) => t.status === "success").map((t) => t.url),
240
+ clearFiles: () => {
241
+ u.value = [], f.value = "", D();
242
+ },
243
+ getValue: () => ({
244
+ files: u.value.filter((t) => t.status === "success" && t.url).map((t) => t.url),
245
+ text: f.value
246
+ })
247
+ }), (t, e) => {
248
+ var _;
249
+ const a = ye, l = be, i = ge, r = me, s = xe, b = we;
250
+ return m(), w("div", {
251
+ class: I(["qy-upload", oe.value]),
252
+ style: Ue({ "--qy-upload-size": te.value })
253
+ }, [
254
+ y(r, {
255
+ ref_key: "uploadRef",
256
+ ref: q,
257
+ "file-list": u.value,
258
+ "onUpdate:fileList": e[6] || (e[6] = (d) => u.value = d),
259
+ action: "#",
260
+ multiple: c.supportVideo ? !1 : c.multiple,
261
+ limit: c.supportVideo ? 1 : c.limit,
262
+ "list-type": c.supportVideo ? "text" : "picture-card",
263
+ accept: ie.value,
264
+ disabled: le.value,
265
+ "http-request": re,
266
+ "before-upload": X,
267
+ "on-preview": de,
268
+ "on-remove": ne
269
+ }, {
270
+ default: U(() => [
271
+ j.value ? h("", !0) : (m(), w("div", {
272
+ key: 0,
273
+ class: I(["qy-upload__trigger", { "is-dragover": T.value }]),
274
+ onPaste: A,
275
+ onDragover: e[4] || (e[4] = B((d) => T.value = !0, ["prevent"])),
276
+ onDragleave: e[5] || (e[5] = B((d) => T.value = !1, ["prevent"])),
277
+ onDrop: B(ce, ["prevent"])
278
+ }, [
279
+ y(a, { class: "qy-upload__icon" }, {
280
+ default: U(() => [
281
+ y(Y(Le))
282
+ ]),
283
+ _: 1
284
+ }),
285
+ c.supportVideo ? (m(), w(M, { key: 0 }, [
286
+ e[9] || (e[9] = k("span", { class: "qy-upload__label" }, "点击上传视频", -1)),
287
+ k("span", ze, "支持 " + R(v.value.join(" / ")) + ",不超过 " + R(c.fileSize) + "MB", 1)
288
+ ], 64)) : h("", !0),
289
+ k("div", {
290
+ class: "qy-upload__text",
291
+ onClick: e[3] || (e[3] = B(() => {
292
+ }, ["stop"])),
293
+ onPaste: B(A, ["stop"])
294
+ }, [
295
+ y(i, {
296
+ visible: O.value,
297
+ "onUpdate:visible": e[2] || (e[2] = (d) => O.value = d),
298
+ placement: "bottom-start",
299
+ width: 220,
300
+ trigger: "click",
301
+ "popper-class": "qy-upload__text-popover",
302
+ onAfterEnter: se
303
+ }, {
304
+ reference: U(() => [
305
+ k("div", {
306
+ class: I(["qy-upload__text-preview", { "is-placeholder": !f.value }])
307
+ }, R(f.value || "输入文字"), 3)
308
+ ]),
309
+ default: U(() => [
310
+ y(l, {
311
+ ref_key: "inputRef",
312
+ ref: N,
313
+ modelValue: f.value,
314
+ "onUpdate:modelValue": e[0] || (e[0] = (d) => f.value = d),
315
+ type: "textarea",
316
+ autosize: { minRows: 2, maxRows: 5 },
317
+ placeholder: "输入文字或粘贴图片",
318
+ disabled: c.disabled,
319
+ onBlur: e[1] || (e[1] = (d) => O.value = !1),
320
+ onPaste: B(A, ["stop"])
321
+ }, null, 8, ["modelValue", "disabled"])
322
+ ]),
323
+ _: 1
324
+ }, 8, ["visible"])
325
+ ], 32)
326
+ ], 34))
327
+ ]),
328
+ _: 1
329
+ }, 8, ["file-list", "multiple", "limit", "list-type", "accept", "disabled"]),
330
+ C.value ? (m(), Be(s, {
331
+ key: 0,
332
+ "url-list": F.value,
333
+ "initial-index": P.value,
334
+ onClose: pe
335
+ }, null, 8, ["url-list", "initial-index"])) : h("", !0),
336
+ y(b, {
337
+ modelValue: S.value,
338
+ "onUpdate:modelValue": e[7] || (e[7] = (d) => S.value = d),
339
+ title: H.value,
340
+ width: "640px",
341
+ "append-to-body": "",
342
+ "destroy-on-close": "",
343
+ onClose: e[8] || (e[8] = (d) => S.value = !1)
344
+ }, {
345
+ default: U(() => [
346
+ S.value ? (m(), w("video", {
347
+ key: 0,
348
+ src: E.value,
349
+ controls: "",
350
+ autoplay: "",
351
+ style: { width: "100%", "max-height": "400px", "border-radius": "4px" }
352
+ }, null, 8, Te)) : h("", !0)
353
+ ]),
354
+ _: 1
355
+ }, 8, ["modelValue", "title"]),
356
+ ae.value ? (m(), w("div", je, [
357
+ y(a, null, {
358
+ default: U(() => [
359
+ y(Y(Se))
360
+ ]),
361
+ _: 1
362
+ }),
363
+ k("span", null, [
364
+ e[12] || (e[12] = $(" 请上传 ", -1)),
365
+ c.fileSize ? (m(), w(M, { key: 0 }, [
366
+ e[10] || (e[10] = $("大小不超过 ", -1)),
367
+ k("b", _e, R(c.fileSize) + "MB", 1)
368
+ ], 64)) : h("", !0),
369
+ (_ = v.value) != null && _.length ? (m(), w(M, { key: 1 }, [
370
+ e[11] || (e[11] = $(",格式为 ", -1)),
371
+ k("b", $e, R(v.value.join("/")), 1)
372
+ ], 64)) : h("", !0),
373
+ e[13] || (e[13] = $(" 的文件。 ", -1))
374
+ ])
375
+ ])) : h("", !0)
376
+ ], 6);
377
+ };
378
+ }
379
+ }), He = /* @__PURE__ */ qe(Ce, [["__scopeId", "data-v-c1472320"]]);
380
+ export {
381
+ He as default
382
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../../node_modules/.pnpm/js-cookie@3.0.1/node_modules/js-cookie/dist/js.cookie.cjs"),o="Admin-Token";function n(e=o){return t.default.get(e)}exports.getToken=n;
@@ -0,0 +1,8 @@
1
+ import n from "../../node_modules/.pnpm/js-cookie@3.0.1/node_modules/js-cookie/dist/js.cookie.mjs";
2
+ const o = "Admin-Token";
3
+ function r(e = o) {
4
+ return n.get(e);
5
+ }
6
+ export {
7
+ r as getToken
8
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function t(l,i=l==null?void 0:l.name){return i&&(l.install=r=>{r.component(i,l)}),l}exports.withInstall=t;
@@ -0,0 +1,8 @@
1
+ function u(r, i = r == null ? void 0 : r.name) {
2
+ return i && (r.install = (l) => {
3
+ l.component(i, r);
4
+ }), r;
5
+ }
6
+ export {
7
+ u as withInstall
8
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});/*! js-cookie v3.0.1 | MIT */function u(r){for(var i=1;i<arguments.length;i++){var f=arguments[i];for(var p in f)r[p]=f[p]}return r}var v={read:function(r){return r[0]==='"'&&(r=r.slice(1,-1)),r.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(r){return encodeURIComponent(r).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function s(r,i){function f(n,c,e){if(!(typeof document>"u")){e=u({},i,e),typeof e.expires=="number"&&(e.expires=new Date(Date.now()+e.expires*864e5)),e.expires&&(e.expires=e.expires.toUTCString()),n=encodeURIComponent(n).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var o="";for(var t in e)e[t]&&(o+="; "+t,e[t]!==!0&&(o+="="+e[t].split(";")[0]));return document.cookie=n+"="+r.write(c,n)+o}}function p(n){if(!(typeof document>"u"||arguments.length&&!n)){for(var c=document.cookie?document.cookie.split("; "):[],e={},o=0;o<c.length;o++){var t=c[o].split("="),a=t.slice(1).join("=");try{var d=decodeURIComponent(t[0]);if(e[d]=r.read(a,d),n===d)break}catch{}}return n?e[n]:e}}return Object.create({set:f,get:p,remove:function(n,c){f(n,"",u({},c,{expires:-1}))},withAttributes:function(n){return s(this.converter,u({},this.attributes,n))},withConverter:function(n){return s(u({},this.converter,n),this.attributes)}},{attributes:{value:Object.freeze(i)},converter:{value:Object.freeze(r)}})}var l=s(v,{path:"/"});exports.default=l;
@@ -0,0 +1,74 @@
1
+ /*! js-cookie v3.0.1 | MIT */
2
+ function d(r) {
3
+ for (var t = 1; t < arguments.length; t++) {
4
+ var f = arguments[t];
5
+ for (var p in f)
6
+ r[p] = f[p];
7
+ }
8
+ return r;
9
+ }
10
+ var v = {
11
+ read: function(r) {
12
+ return r[0] === '"' && (r = r.slice(1, -1)), r.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent);
13
+ },
14
+ write: function(r) {
15
+ return encodeURIComponent(r).replace(
16
+ /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,
17
+ decodeURIComponent
18
+ );
19
+ }
20
+ };
21
+ function s(r, t) {
22
+ function f(n, c, e) {
23
+ if (!(typeof document > "u")) {
24
+ e = d({}, t, e), typeof e.expires == "number" && (e.expires = new Date(Date.now() + e.expires * 864e5)), e.expires && (e.expires = e.expires.toUTCString()), n = encodeURIComponent(n).replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent).replace(/[()]/g, escape);
25
+ var o = "";
26
+ for (var i in e)
27
+ e[i] && (o += "; " + i, e[i] !== !0 && (o += "=" + e[i].split(";")[0]));
28
+ return document.cookie = n + "=" + r.write(c, n) + o;
29
+ }
30
+ }
31
+ function p(n) {
32
+ if (!(typeof document > "u" || arguments.length && !n)) {
33
+ for (var c = document.cookie ? document.cookie.split("; ") : [], e = {}, o = 0; o < c.length; o++) {
34
+ var i = c[o].split("="), a = i.slice(1).join("=");
35
+ try {
36
+ var u = decodeURIComponent(i[0]);
37
+ if (e[u] = r.read(a, u), n === u)
38
+ break;
39
+ } catch {
40
+ }
41
+ }
42
+ return n ? e[n] : e;
43
+ }
44
+ }
45
+ return Object.create(
46
+ {
47
+ set: f,
48
+ get: p,
49
+ remove: function(n, c) {
50
+ f(
51
+ n,
52
+ "",
53
+ d({}, c, {
54
+ expires: -1
55
+ })
56
+ );
57
+ },
58
+ withAttributes: function(n) {
59
+ return s(this.converter, d({}, this.attributes, n));
60
+ },
61
+ withConverter: function(n) {
62
+ return s(d({}, this.converter, n), this.attributes);
63
+ }
64
+ },
65
+ {
66
+ attributes: { value: Object.freeze(t) },
67
+ converter: { value: Object.freeze(r) }
68
+ }
69
+ );
70
+ }
71
+ var m = s(v, { path: "/" });
72
+ export {
73
+ m as default
74
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("../lib/qy-action-bar/index.vue.cjs"),t=require("../lib/utils/install.cjs"),i=t.withInstall(e.default,"QyActionBar");exports.default=i;
@@ -0,0 +1,6 @@
1
+ import t from "../lib/qy-action-bar/index.vue.mjs";
2
+ import { withInstall as o } from "../lib/utils/install.mjs";
3
+ const a = o(t, "QyActionBar");
4
+ export {
5
+ a as default
6
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("../lib/dialog/index.vue.cjs"),t=require("../lib/utils/install.cjs"),l=t.withInstall(e.default,"QyDialog");exports.default=l;
@@ -0,0 +1,6 @@
1
+ import o from "../lib/dialog/index.vue.mjs";
2
+ import { withInstall as t } from "../lib/utils/install.mjs";
3
+ const m = t(o, "QyDialog");
4
+ export {
5
+ m as default
6
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("../lib/qy-form-section/index.vue.cjs"),t=require("../lib/utils/install.cjs"),i=t.withInstall(e.default,"QyFormSection");exports.default=i;
@@ -0,0 +1,6 @@
1
+ import o from "../lib/qy-form-section/index.vue.mjs";
2
+ import { withInstall as t } from "../lib/utils/install.mjs";
3
+ const m = t(o, "QyFormSection");
4
+ export {
5
+ m as default
6
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("../lib/qy-input/index.vue.cjs"),t=require("../lib/utils/install.cjs"),l=t.withInstall(e.default,"QyInput");exports.default=l;
@@ -0,0 +1,6 @@
1
+ import t from "../lib/qy-input/index.vue.mjs";
2
+ import { withInstall as o } from "../lib/utils/install.mjs";
3
+ const n = o(t, "QyInput");
4
+ export {
5
+ n as default
6
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("../lib/qy-record-quote-search/index.vue.cjs"),t=require("../lib/utils/install.cjs"),l=t.withInstall(e.default,"QyRecordQuoteSearch");exports.default=l;
@@ -0,0 +1,6 @@
1
+ import o from "../lib/qy-record-quote-search/index.vue.mjs";
2
+ import { withInstall as e } from "../lib/utils/install.mjs";
3
+ const a = e(o, "QyRecordQuoteSearch");
4
+ export {
5
+ a as default
6
+ };
@@ -0,0 +1,2 @@
1
+ (function(){"use strict";try{if(typeof document<"u"){var a=document.createElement("style");a.appendChild(document.createTextNode(`*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.icon-\\[ion--cloud-upload-outline\\]{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' width='512' height='512'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='32' d='M320 367.79h76c55 0 100-29.21 100-83.6s-53-81.47-96-83.6c-8.89-85.06-71-136.8-144-136.8c-69 0-113.44 45.79-128 91.2c-60 5.7-112 43.88-112 106.4s54 106.4 120 106.4h56'/%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='32' d='m320 255.79l-64-64l-64 64m64 192.42V207.79'/%3E%3C/svg%3E") }.icon-\\[line-md--loading-twotone-loop\\]{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath stroke-dasharray='16' stroke-dashoffset='16' d='M12 3c4.97 0 9 4.03 9 9'%3E%3Canimate fill='freeze' attributeName='stroke-dashoffset' dur='0.3s' values='16;0'/%3E%3CanimateTransform attributeName='transform' dur='1.5s' repeatCount='indefinite' type='rotate' values='0 12 12;360 12 12'/%3E%3C/path%3E%3Cpath stroke-dasharray='64' stroke-dashoffset='64' stroke-opacity='.3' d='M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9Z'%3E%3Canimate fill='freeze' attributeName='stroke-dashoffset' dur='1.2s' values='64;0'/%3E%3C/path%3E%3C/g%3E%3C/svg%3E") }.icon-\\[material-symbols--minimize\\]{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M6 21v-2h12v2z'/%3E%3C/svg%3E") }.icon-\\[material-symbols--square-outline-rounded\\]{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M5 21q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v14q0 .825-.587 1.413T19 21zm0-2h14V5H5zm0 0V5z'/%3E%3C/svg%3E") }.icon-\\[mdi--close\\]{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12z'/%3E%3C/svg%3E") }.icon-\\[mdi--window-maximize\\]{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M4 4h16v16H4zm2 4v10h12V8z'/%3E%3C/svg%3E") }.icon-\\[mdi--window-restore\\]{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M4 8h4V4h12v12h-4v4H4zm12 0v6h2V6h-8v2zM6 12v6h8v-6z'/%3E%3C/svg%3E") }.icon-\\[ph--images-thin\\]{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256' width='256' height='256'%3E%3Cpath fill='black' d='M216 44H72a12 12 0 0 0-12 12v20H40a12 12 0 0 0-12 12v112a12 12 0 0 0 12 12h144a12 12 0 0 0 12-12v-20h20a12 12 0 0 0 12-12V56a12 12 0 0 0-12-12M68 56a4 4 0 0 1 4-4h144a4 4 0 0 1 4 4v72.4l-16.89-16.89a12 12 0 0 0-17 0l-22.83 22.83l-46.79-46.83a12 12 0 0 0-17 0L68 119Zm120 144a4 4 0 0 1-4 4H40a4 4 0 0 1-4-4V88a4 4 0 0 1 4-4h20v84a12 12 0 0 0 12 12h116Zm28-28H72a4 4 0 0 1-4-4v-37.66l37.17-37.17a4 4 0 0 1 5.66 0l49.66 49.66a4 4 0 0 0 5.65 0l25.66-25.66a4 4 0 0 1 5.66 0L220 139.71V168a4 4 0 0 1-4 4m-52-88a8 8 0 1 1 8 8a8 8 0 0 1-8-8'/%3E%3C/svg%3E") }.icon-\\[ri--close-line\\]{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='m12 10.587l4.95-4.95l1.414 1.414l-4.95 4.95l4.95 4.95l-1.415 1.414l-4.95-4.95l-4.949 4.95l-1.414-1.415l4.95-4.95l-4.95-4.95L7.05 5.638z'/%3E%3C/svg%3E") }.icon-\\[tdesign--fullscreen-exit-1\\]{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M14 20v-6h6v2h-4v4zm-6 0v-4H4v-2h6v6zm12-10h-6V4h2v4h4zm-10 0H4V8h4V4h2z'/%3E%3C/svg%3E") }.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.-right-12{right:-3rem}.left-0{left:0}.top-0{top:0}.top-2{top:.5rem}.z-\\[9999\\]{z-index:9999}.mb-3{margin-bottom:.75rem}.ml-2{margin-left:.5rem}.block{display:block}.flex{display:flex}.table{display:table}.hidden{display:none}.h-9{height:2.25rem}.h-\\[var\\(--footer-height\\)\\]{height:var(--footer-height)}.h-\\[var\\(--header-height\\)\\]{height:var(--header-height)}.h-full{height:100%}.min-h-\\[var\\(--footer-height\\)\\]{min-height:var(--footer-height)}.w-9{width:2.25rem}.w-\\[56px\\]{width:56px}.w-full{width:100%}.max-w-\\[200px\\]{max-width:200px}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.p-1{padding:.25rem}.px-\\[var\\(--content-padding\\)\\]{padding-left:var(--content-padding);padding-right:var(--content-padding)}.pl-1{padding-left:.25rem}.pl-\\[var\\(--content-padding\\)\\]{padding-left:var(--content-padding)}.pr-4{padding-right:1rem}.pt-2{padding-top:.5rem}.text-\\[1rem\\]{font-size:1rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.uppercase{text-transform:uppercase}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity))}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.hover\\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.hover\\:bg-gray-600\\/80:hover{background-color:#4b5563cc}.hover\\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity))}.hover\\:bg-red-500:hover{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.active\\:scale-75:active{--tw-scale-x: .75;--tw-scale-y: .75;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\[\\&_\\.el-dialog\\\\_\\\\_header\\]\\:\\!hidden .el-dialog__header{display:none!important}.qy-upload[data-v-c1472320]{--qy-upload-size: 140px;--el-upload-picture-card-size: var(--qy-upload-size);display:inline-flex;flex-direction:column;gap:8px;vertical-align:top}.qy-upload[data-v-c1472320] .el-upload--picture-card{width:var(--qy-upload-size)!important;height:var(--qy-upload-size)!important;line-height:1;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.qy-upload[data-v-c1472320] .el-upload-list--picture-card .el-upload-list__item{width:var(--qy-upload-size)!important;height:var(--qy-upload-size)!important;margin:0 8px 8px 0}.qy-upload__trigger[data-v-c1472320]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;overflow:hidden;padding:4px 4px clamp(26px,var(--qy-upload-size) * .28,36px);box-sizing:border-box}.qy-upload__icon[data-v-c1472320]{font-size:clamp(14px,var(--qy-upload-size) * .2,28px);color:#8c939d;flex-shrink:0}.qy-upload__trigger.is-dragover[data-v-c1472320]{border:2px dashed var(--el-color-primary)!important;background-color:var(--el-color-primary-light-9)!important}.qy-upload__trigger.is-dragover .qy-upload__icon[data-v-c1472320]{color:var(--el-color-primary)}.qy-upload__label[data-v-c1472320]{font-size:13px;color:#606266}.qy-upload__hint[data-v-c1472320]{font-size:11px;color:#909399}.qy-upload__text[data-v-c1472320]{position:absolute;bottom:5px;left:5px;right:5px}.qy-upload__text-preview[data-v-c1472320]{height:20px;line-height:20px;padding:0 5px;background:#ffffffe6;border:1px solid #dcdfe6;border-radius:4px;font-size:clamp(10px,var(--qy-upload-size) * .08,12px);color:#303133;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:text;transition:border-color .2s}.qy-upload__text-preview[data-v-c1472320]:hover{border-color:#409eff}.qy-upload__text-preview.is-placeholder[data-v-c1472320]{color:#c0c4cc}.qy-upload__tip[data-v-c1472320]{display:flex;align-items:center;gap:4px;font-size:12px;color:#909399;line-height:1.4}.qy-upload__tip .error[data-v-c1472320]{color:var(--el-color-danger)}.qy-upload--video[data-v-c1472320]{display:flex;flex-direction:column;gap:8px}.qy-upload--video[data-v-c1472320] .el-upload{display:block;width:100%}.qy-upload--video .qy-upload__trigger[data-v-c1472320]{position:relative;flex-direction:row;gap:10px;height:80px;padding:0 20px 30px;border:1px dashed var(--el-border-color);border-radius:var(--el-border-radius-base);background-color:#fafcff;transition:border-color .2s}.qy-upload--video .qy-upload__trigger[data-v-c1472320]:hover{border-color:var(--el-color-primary)}.qy-upload--video .qy-upload__trigger .qy-upload__text-preview[data-v-c1472320]{font-size:13px;height:22px;line-height:22px;background:#fffffff2}.qy-upload--video .qy-upload__icon[data-v-c1472320]{font-size:24px;color:var(--el-color-primary)}.qy-upload--video .qy-upload__label[data-v-c1472320]{font-size:14px;font-weight:500}.qy-upload--reached-limit[data-v-c1472320] .el-upload--picture-card{display:none!important}.qy-upload--disabled[data-v-c1472320] .el-upload--picture-card{cursor:not-allowed;background-color:#f5f7fa}.qy-upload--disabled .qy-upload__trigger[data-v-c1472320]{cursor:not-allowed;color:#c0c4cc}.qy-upload__text-popover.el-popover{padding:10px!important}.qy-upload__text-popover .el-textarea__inner{font-size:13px;line-height:1.6}.qy-dialog{--small-content-padding: 16px;--content-padding: 24px;--header-height: 50px;--footer-height: 60px;--sides-gap: 10px;--block-outline-color: #e9e9e9}.qy-dialog .el-dialog__footer{padding:0}.qy-dialog .el-dialog__header{margin:0;padding:0}.qy-dialog__wrapper-container{position:relative;overflow:auto;width:100%!important;height:100%;min-width:300px;min-height:200px}.qy-dialog__wrapper-container::-webkit-scrollbar{width:6px;height:6px}.qy-dialog__wrapper-container::-webkit-scrollbar-track{background:transparent}.qy-dialog__wrapper-container::-webkit-scrollbar-thumb{background-color:#9093994d;border-radius:3px;-webkit-transition:background-color .3s;transition:background-color .3s}.qy-dialog__wrapper-container::-webkit-scrollbar-thumb:hover{background-color:#90939980}.qy-dialog .el-dialog{display:flex;flex-direction:column;max-height:90vh}.qy-dialog .el-dialog__body{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.qy-dialog__btn{display:flex;height:100%;width:56px;align-items:center;justify-content:center;font-size:1rem;cursor:pointer!important;z-index:10}.qy-dialog__btn:active{opacity:.6}.qy-dialog__btn--default:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.qy-dialog__btn--danger:hover{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.qy-dialog__wrapper{overflow-y:auto}.qy-dialog__wrapper--fullscreen{min-height:calc(100vh - var(--header-height) - var(--footer-height))}.qy-dialog__footer{border-top:1px solid transparent;transition:border-color .2s linear}.qy-dialog__footer--outline{border-top-color:var(--block-outline-color)}.fixed.left-0.top-0.bg-white.rounded{-webkit-user-select:none;-moz-user-select:none;user-select:none}.fixed.left-0.top-0.bg-white.rounded *{-moz-user-select:none;user-select:none;-webkit-user-select:none}.qy-remark-image[data-v-3b943ab8]{width:100%}.qy-remark-image__field[data-v-3b943ab8]{position:relative;width:100%}.qy-remark-image__upload-anchor[data-v-3b943ab8]{position:absolute;right:6px;top:14px;z-index:2}.qy-remark-image__upload[data-v-3b943ab8]{width:20px;color:#6b7280;cursor:pointer;transition:color .2s ease;transform:translateY(-35%)}.qy-remark-image__upload[data-v-3b943ab8]:hover{color:#2563eb}.qy-remark-image__popover[data-v-3b943ab8]{padding:8px}.qy-remark-image__preview-img[data-v-3b943ab8]{display:block;width:100%}.qy-remark-image__popover-footer[data-v-3b943ab8]{margin-top:8px;padding:8px 12px;border-radius:6px;background:#f3f4f6;display:flex;align-items:center;justify-content:space-between}.qy-remark-image__popover-tip[data-v-3b943ab8]{color:#6b7280;font-size:12px}.qy-search-input[data-v-47c6430a]{width:100%}.qy-search-input__item[data-v-47c6430a]{display:flex;flex-direction:column;gap:4px;line-height:1.5}.qy-search-input__item-label[data-v-47c6430a]{color:#303133}.qy-search-input__item-description[data-v-47c6430a]{font-size:12px;color:#909399}[data-v-47c6430a] .qy-search-input__mark{background:#409eff29;color:inherit;padding:0}.qy-record-quote-search[data-v-8bc26d3a]{display:flex;flex-direction:column;gap:8px;width:100%}.qy-record-quote-search__header[data-v-8bc26d3a]{display:flex;flex-direction:column;gap:2px}.qy-record-quote-search__label[data-v-8bc26d3a]{font-size:14px;font-weight:600;color:#303133}.qy-record-quote-search__description[data-v-8bc26d3a]{font-size:12px;color:#909399}.qy-record-quote-search__status[data-v-8bc26d3a]{font-size:12px;line-height:1.5}.qy-record-quote-search__status.is-default[data-v-8bc26d3a]{color:#606266}.qy-record-quote-search__status.is-success[data-v-8bc26d3a]{color:#67c23a}.qy-record-quote-search__status.is-warning[data-v-8bc26d3a]{color:#e6a23c}.qy-record-quote-search__status.is-error[data-v-8bc26d3a]{color:#f56c6c}.qy-form-section[data-v-0185ba6c]{border-radius:12px;overflow:hidden}.qy-form-section.is-bordered[data-v-0185ba6c]{border:1px solid #e4e7ed}.qy-form-section.is-bg-white[data-v-0185ba6c]{background:#fff}.qy-form-section.is-bg-gray[data-v-0185ba6c]{background:#f5f7fa}.qy-form-section.is-bg-transparent[data-v-0185ba6c]{background:transparent}.qy-form-section__header[data-v-0185ba6c]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 20px}.qy-form-section__heading[data-v-0185ba6c]{min-width:0;flex:1}.qy-form-section__title[data-v-0185ba6c]{font-size:16px;font-weight:600;line-height:1.5;color:#303133}.qy-form-section__description[data-v-0185ba6c]{margin-top:4px;font-size:13px;line-height:1.6;color:#909399}.qy-form-section__actions[data-v-0185ba6c]{display:flex;align-items:center;gap:8px;flex-shrink:0}.qy-form-section__toggle[data-v-0185ba6c]{border:0;background:transparent;color:#409eff;cursor:pointer;font-size:13px;padding:0}.qy-form-section__body[data-v-0185ba6c]{padding:0 20px 20px}.qy-form-section__tip[data-v-0185ba6c]{margin-bottom:16px;padding:10px 12px;border-radius:8px;font-size:13px;line-height:1.6}.qy-form-section__tip.is-info[data-v-0185ba6c]{background:#f4f4f5;color:#606266}.qy-form-section__tip.is-warning[data-v-0185ba6c]{background:#fdf6ec;color:#e6a23c}.qy-form-section__tip.is-error[data-v-0185ba6c]{background:#fef0f0;color:#f56c6c}.qy-form-section__tip.is-success[data-v-0185ba6c]{background:#f0f9eb;color:#67c23a}.qy-action-bar[data-v-86002d5a]{display:flex;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));z-index:100}.qy-action-bar.is-sticky[data-v-86002d5a]{position:sticky}.qy-action-bar.is-bordered[data-v-86002d5a]{border-top:1px solid #ebeef5}.qy-action-bar.is-shadow[data-v-86002d5a]{box-shadow:0 -4px 16px #0f172a14}.qy-action-bar.is-wrap[data-v-86002d5a]{flex-wrap:wrap}.qy-action-bar.is-justify-between[data-v-86002d5a]{justify-content:space-between}.qy-action-bar.is-justify-end[data-v-86002d5a]{justify-content:flex-end}.qy-action-bar.is-justify-start[data-v-86002d5a]{justify-content:flex-start}.qy-action-bar__left[data-v-86002d5a],.qy-action-bar__center[data-v-86002d5a],.qy-action-bar__right[data-v-86002d5a]{display:flex;align-items:center;gap:8px}.qy-action-bar__left[data-v-86002d5a]{margin-right:auto}.qy-action-bar__center[data-v-86002d5a]{flex:1}.qy-action-bar__right[data-v-86002d5a]{margin-left:auto}`)),document.head.appendChild(a)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})();
2
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("../lib/remark-image/index.vue.cjs"),t=require("../lib/utils/install.cjs"),l=t.withInstall(e.default,"QyRemarkImage");exports.default=l;