ling-yun-custom-components 0.0.42 → 0.0.43

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.
@@ -0,0 +1,231 @@
1
+ import { useAttrs as $, computed as d, onMounted as L, createBlock as p, openBlock as c, unref as a, mergeProps as U, withCtx as r, createElementBlock as y, renderSlot as g, createElementVNode as v, createCommentVNode as A, createTextVNode as h, toDisplayString as C, Fragment as R, createVNode as E } from "vue";
2
+ import { ElDialog as q, ElButton as x, ElIcon as z } from "element-plus";
3
+ import { IconClose as H, IconBack as J } from "color-message-lingyun-vue";
4
+ import { emitsMap as e } from "ling-yun-methods";
5
+ import { _ as K } from "./_plugin-vue_export-helper.CHgC5LLL.js";
6
+ import '../assets/layout.css';const t = {
7
+ DEFAULT: "default",
8
+ PAGE: "page"
9
+ }, Q = {
10
+ key: 0,
11
+ class: "flex justify-center w-full"
12
+ }, W = {
13
+ class: "dialog-content flex flex-col",
14
+ style: { width: "60%" }
15
+ }, X = {
16
+ key: 0,
17
+ class: "title-name flex items-center"
18
+ }, Y = { class: "dialog-footer" }, Z = {
19
+ key: 0,
20
+ class: "flex justify-center items-center w-full"
21
+ }, ee = {
22
+ class: "flex justify-center items-center",
23
+ style: { width: "60%" }
24
+ }, oe = { class: "flex justify-end items-center w-full" }, te = /* @__PURE__ */ Object.assign({
25
+ name: "CustomDialog"
26
+ }, {
27
+ __name: "layout",
28
+ props: {
29
+ // 绑定值
30
+ modelValue: {
31
+ type: Boolean,
32
+ default: !1
33
+ },
34
+ // 对话框宽度
35
+ width: {
36
+ type: [String, Number],
37
+ default: "50%"
38
+ },
39
+ // 是否可以通过点击 modal 关闭对话框
40
+ closeOnClickModal: {
41
+ type: Boolean,
42
+ default: !1
43
+ },
44
+ // 是否可以通过按下 ESC 关闭对话框
45
+ closeOnPressEscape: {
46
+ type: Boolean,
47
+ default: !1
48
+ },
49
+ // 是否在对话框出现时将 body 滚动锁定
50
+ lockScroll: {
51
+ type: Boolean,
52
+ default: !0
53
+ },
54
+ // 关闭图标
55
+ closeIcon: {
56
+ type: Object,
57
+ default: H
58
+ },
59
+ // 按钮配置对象
60
+ buttons: {
61
+ type: Object,
62
+ default: () => ({})
63
+ },
64
+ appendToBody: {
65
+ type: Boolean,
66
+ default: !0
67
+ },
68
+ // 弹窗覆盖的模式 default|page
69
+ dialogMode: {
70
+ type: String,
71
+ default: t.DEFAULT
72
+ },
73
+ // route模式下标题值
74
+ titleName: {
75
+ type: String,
76
+ default: "默认标题"
77
+ }
78
+ },
79
+ emits: [
80
+ e.updateModelValue,
81
+ e.open,
82
+ e.opened,
83
+ e.close,
84
+ e.closed,
85
+ e.openAutoFocus,
86
+ e.closeAutoFocus,
87
+ e.cancel,
88
+ e.confirm
89
+ ],
90
+ setup(u, { emit: M }) {
91
+ const P = {
92
+ showCancel: !0,
93
+ showConfirm: !0,
94
+ cancelText: "取消",
95
+ confirmText: "确认",
96
+ onCancel: null,
97
+ onConfirm: null
98
+ }, o = u, m = $(), n = M, b = d(() => o.dialogMode === t.PAGE ? {
99
+ marginLeft: "250px",
100
+ borderRadius: "24px",
101
+ boxShadow: "none"
102
+ } : {}), _ = d(() => o.dialogMode === t.PAGE ? !1 : m.modal ? m.modal : !0), B = d(() => o.dialogMode === t.PAGE ? !0 : m.modalPenetrable ? m.modalPenetrable : !1), V = d(() => o.dialogMode === t.PAGE ? "calc(100% - 250px - 12px)" : o.width), F = d(() => o.dialogMode === t.PAGE ? "66px" : o.top || "15vh"), i = d({
103
+ get: () => o.modelValue,
104
+ set: (s) => {
105
+ n(e.updateModelValue, s);
106
+ }
107
+ }), l = d(() => ({
108
+ ...P,
109
+ ...o.buttons
110
+ })), G = d(() => {
111
+ const { modelValue: s, ...f } = o;
112
+ return f;
113
+ }), O = () => {
114
+ n(e.open);
115
+ }, T = () => {
116
+ n(e.opened);
117
+ }, S = () => {
118
+ n(e.close);
119
+ }, j = () => {
120
+ n(e.closed);
121
+ }, N = () => {
122
+ n(e.openAutoFocus);
123
+ }, D = () => {
124
+ n(e.closeAutoFocus);
125
+ }, I = () => {
126
+ l.value.onCancel ? l.value.onCancel() : i.value = !1, n(e.cancel);
127
+ }, k = async () => {
128
+ if (l.value.onConfirm)
129
+ try {
130
+ await l.value.onConfirm() !== !1 && (i.value = !1);
131
+ } catch {
132
+ }
133
+ else
134
+ i.value = !1;
135
+ n(e.confirm);
136
+ };
137
+ return L(() => {
138
+ o.dialogMode === t.PAGE && (document.querySelector(".el-overlay-dialog").style.overflow = "hidden");
139
+ }), (s, f) => (c(), p(a(q), U({
140
+ ref: "dialogRef",
141
+ modelValue: i.value,
142
+ "onUpdate:modelValue": f[1] || (f[1] = (w) => i.value = w)
143
+ }, G.value, {
144
+ width: V.value,
145
+ top: F.value,
146
+ style: b.value,
147
+ modal: _.value,
148
+ "modal-penetrable": B.value,
149
+ onOpen: O,
150
+ onOpened: T,
151
+ onClose: S,
152
+ onClosed: j,
153
+ onOpenAutoFocus: N,
154
+ onCloseAutoFocus: D,
155
+ "append-to-body": u.appendToBody,
156
+ class: {
157
+ "custom-dialog-page": u.dialogMode === a(t).PAGE
158
+ }
159
+ }), {
160
+ header: r(() => [
161
+ u.dialogMode === a(t).PAGE ? (c(), y("div", X, [
162
+ E(a(z), {
163
+ size: 20,
164
+ color: "var(--text-color-1)",
165
+ class: "mg-r-6 pointer",
166
+ onClick: f[0] || (f[0] = (w) => i.value = !1)
167
+ }, {
168
+ default: r(() => [
169
+ E(a(J))
170
+ ]),
171
+ _: 1
172
+ }),
173
+ h(" " + C(u.titleName), 1)
174
+ ])) : g(s.$slots, "header", { key: 1 }, void 0, !0)
175
+ ]),
176
+ footer: r(() => [
177
+ g(s.$slots, "footer", {}, () => [
178
+ v("div", Y, [
179
+ u.dialogMode === a(t).PAGE ? (c(), y("div", Z, [
180
+ v("div", ee, [
181
+ v("div", oe, [
182
+ l.value.showConfirm ? (c(), p(a(x), {
183
+ key: 0,
184
+ type: "primary",
185
+ onClick: k
186
+ }, {
187
+ default: r(() => [
188
+ h(C(l.value.confirmText), 1)
189
+ ]),
190
+ _: 1
191
+ })) : A("", !0)
192
+ ])
193
+ ])
194
+ ])) : (c(), y(R, { key: 1 }, [
195
+ l.value.showCancel ? (c(), p(a(x), {
196
+ key: 0,
197
+ onClick: I
198
+ }, {
199
+ default: r(() => [
200
+ h(C(l.value.cancelText), 1)
201
+ ]),
202
+ _: 1
203
+ })) : A("", !0),
204
+ l.value.showConfirm ? (c(), p(a(x), {
205
+ key: 1,
206
+ type: "primary",
207
+ onClick: k
208
+ }, {
209
+ default: r(() => [
210
+ h(C(l.value.confirmText), 1)
211
+ ]),
212
+ _: 1
213
+ })) : A("", !0)
214
+ ], 64))
215
+ ])
216
+ ], !0)
217
+ ]),
218
+ default: r(() => [
219
+ u.dialogMode === a(t).PAGE ? (c(), y("div", Q, [
220
+ v("div", W, [
221
+ g(s.$slots, "default", {}, void 0, !0)
222
+ ])
223
+ ])) : g(s.$slots, "default", { key: 1 }, void 0, !0)
224
+ ]),
225
+ _: 3
226
+ }, 16, ["modelValue", "width", "top", "style", "modal", "modal-penetrable", "append-to-body", "class"]));
227
+ }
228
+ }), ce = /* @__PURE__ */ K(te, [["__scopeId", "data-v-9fa594c0"]]);
229
+ export {
230
+ ce as C
231
+ };
@@ -0,0 +1,39 @@
1
+ import { useCssVars as o, createElementBlock as c, openBlock as n, toDisplayString as a } from "vue";
2
+ import { _ as s } from "./_plugin-vue_export-helper.CHgC5LLL.js";
3
+ import '../assets/layout3.css';const r = { class: "custom-title" }, i = /* @__PURE__ */ Object.assign({
4
+ name: "CustomTitle"
5
+ }, {
6
+ __name: "layout",
7
+ props: {
8
+ // 标题内容
9
+ content: {
10
+ type: String,
11
+ default: "自定义标题"
12
+ },
13
+ // 字体大小
14
+ fontSize: {
15
+ type: Number,
16
+ default: 18
17
+ },
18
+ // 字体颜色
19
+ color: {
20
+ type: String,
21
+ default: "var(--text-color-1)"
22
+ },
23
+ // 字体粗细
24
+ fontWeight: {
25
+ type: Number,
26
+ default: 700
27
+ }
28
+ },
29
+ setup(t) {
30
+ return o((e) => ({
31
+ v47d985ee: t.fontWeight,
32
+ v6d50a5d6: t.fontSize + "px",
33
+ v4b029cbc: t.color
34
+ })), (e, l) => (n(), c("div", r, a(t.content), 1));
35
+ }
36
+ }), d = /* @__PURE__ */ s(i, [["__scopeId", "data-v-4d572364"]]);
37
+ export {
38
+ d as C
39
+ };
@@ -0,0 +1,149 @@
1
+ import { useCssVars as L, ref as N, watch as U, createElementBlock as u, createCommentVNode as v, openBlock as r, Fragment as x, renderList as j, normalizeClass as z, unref as o, createElementVNode as m, createBlock as f, normalizeStyle as O, withCtx as S, resolveDynamicComponent as T, toDisplayString as k, renderSlot as M, createVNode as E } from "vue";
2
+ import { ElImage as R, ElIcon as w } from "element-plus";
3
+ import { emitsMap as c, uploadFileTypeMap as P, uploadFileType as a } from "ling-yun-methods";
4
+ import { IconTxt as A, IconPpt as F, IconXls as I, IconDoc as b, IconPdf as G, IconDelete as K } from "color-message-lingyun-vue";
5
+ import { _ as X } from "./_plugin-vue_export-helper.CHgC5LLL.js";
6
+ import '../assets/layout5.css';const i = {
7
+ uploading: "uploading",
8
+ success: "success",
9
+ error: "error"
10
+ }, q = {
11
+ key: 0,
12
+ class: "file-list display-grid pd-t-12 pd-b-12"
13
+ }, H = { class: "flex overflow-hidden flex-1 pd-r-10" }, J = { class: "pd-l-8 flex-1 overflow-hidden" }, Q = ["title"], W = { class: "fz-12 text-ellipsis lh-16" }, Y = {
14
+ key: 1,
15
+ class: "text-74798c"
16
+ }, Z = /* @__PURE__ */ Object.assign({
17
+ name: "FileList"
18
+ }, {
19
+ __name: "layout",
20
+ props: {
21
+ // 文件列表数据
22
+ modelValue: {
23
+ type: Array,
24
+ default: () => []
25
+ },
26
+ // 是否显示删除按钮
27
+ showDelete: {
28
+ type: Boolean,
29
+ default: !0
30
+ },
31
+ // 字段映射配置
32
+ fieldMapping: {
33
+ type: Object,
34
+ default: () => ({
35
+ // fileName: 'fileName',
36
+ // fileUrl: 'fileUrl',
37
+ })
38
+ },
39
+ rowCount: {
40
+ type: Number,
41
+ default: 2
42
+ },
43
+ // 图标大小
44
+ iconSize: {
45
+ type: Number,
46
+ default: 36
47
+ }
48
+ },
49
+ emits: [c.delete, c.change, c.updateModelValue],
50
+ setup(l, { emit: _ }) {
51
+ L((e) => ({
52
+ v247946fe: l.rowCount
53
+ }));
54
+ const p = l, y = _, n = N(p.modelValue), B = Object.fromEntries(
55
+ Object.entries(P).map(([e, s]) => [s, e])
56
+ ), g = (e) => e[p.fieldMapping.fileUrl] ? e[p.fieldMapping.fileUrl] : e.raw && e.raw instanceof File ? URL.createObjectURL(e.raw) : e instanceof File ? URL.createObjectURL(e) : "", C = {
57
+ [a.pdf]: G,
58
+ [a.doc]: b,
59
+ [a.docx]: b,
60
+ [a.xls]: I,
61
+ [a.xlsx]: I,
62
+ [a.ppt]: F,
63
+ [a.pptx]: F,
64
+ [a.txt]: A
65
+ }, V = (e) => e?.includes("image"), $ = (e) => {
66
+ const s = B[e];
67
+ return C[s];
68
+ }, h = (e) => {
69
+ if (!e || e === 0) return "0 B";
70
+ const s = 1024, t = ["B", "KB", "MB", "GB"], d = Math.floor(Math.log(e) / Math.log(s));
71
+ return `${parseFloat((e / Math.pow(s, d)).toFixed(2))} ${t[d]}`;
72
+ }, D = (e, s) => {
73
+ n.value.splice(s, 1), y(c.delete, e), y(c.updateModelValue, n.value), y(c.change, n.value);
74
+ };
75
+ return U(
76
+ () => p.modelValue,
77
+ (e) => {
78
+ n.value = e;
79
+ },
80
+ { immediate: !0 }
81
+ ), (e, s) => n.value?.length ? (r(), u("div", q, [
82
+ (r(!0), u(x, null, j(n.value, (t, d) => (r(), u("div", {
83
+ key: d,
84
+ class: z(["pd-l-8 pd-r-8 pd-t-6 pd-b-6 radius-8 file-item overflow-hidden flex items-center", {
85
+ "bg-uploading": t.fileStatus === o(i).uploading,
86
+ "bg-fcfdff": t.fileStatus !== o(i).uploading,
87
+ "border-error": t.fileStatus === o(i).error,
88
+ "border-normal": t.fileStatus !== o(i).error
89
+ }])
90
+ }, [
91
+ m("div", H, [
92
+ V(t?.type) && g(t) ? (r(), f(o(R), {
93
+ key: 0,
94
+ src: g(t),
95
+ class: "radius-4",
96
+ fit: "cover",
97
+ style: O({ width: `${l.iconSize}px`, height: `${l.iconSize}px` })
98
+ }, null, 8, ["src", "style"])) : (r(), f(o(w), {
99
+ key: 1,
100
+ size: l.iconSize,
101
+ class: "pointer"
102
+ }, {
103
+ default: S(() => [
104
+ (r(), f(T($(t?.type))))
105
+ ]),
106
+ _: 2
107
+ }, 1032, ["size"])),
108
+ m("div", J, [
109
+ m("div", {
110
+ class: z(["fz-14 text-ellipsis lh-20 flex-1", {
111
+ "text-ec0e13": t.fileStatus === o(i).error,
112
+ "text-262626": t.fileStatus !== o(i).error
113
+ }]),
114
+ title: t[l.fieldMapping.fileName]
115
+ }, k(t[l.fieldMapping.fileName]), 11, Q),
116
+ m("div", W, [
117
+ e.$slots.status ? M(e.$slots, "status", {
118
+ key: 0,
119
+ file: t
120
+ }, void 0, !0) : (r(), u(x, { key: 1 }, [
121
+ e.$slots.size ? M(e.$slots, "size", {
122
+ key: 0,
123
+ file: t,
124
+ size: h(t.size)
125
+ }, void 0, !0) : (r(), u("span", Y, k(h(t.size)), 1))
126
+ ], 64))
127
+ ])
128
+ ])
129
+ ]),
130
+ l.showDelete ? (r(), f(o(w), {
131
+ key: 0,
132
+ size: 16,
133
+ color: t.fileStatus === o(i).error ? "var(--error-color-1)" : "var(--text-color-4)",
134
+ class: "pointer",
135
+ onClick: (ee) => D(t, d)
136
+ }, {
137
+ default: S(() => [
138
+ E(o(K))
139
+ ]),
140
+ _: 1
141
+ }, 8, ["color", "onClick"])) : v("", !0)
142
+ ], 2))), 128))
143
+ ])) : v("", !0);
144
+ }
145
+ }), ae = /* @__PURE__ */ X(Z, [["__scopeId", "data-v-0980a743"]]);
146
+ export {
147
+ ae as _,
148
+ i as u
149
+ };
package/lib/AppIntro.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./assets/AppIntro.css');const _=require("./chunks/index.CkihWzK6.js"),e=require("vue"),c=require("element-plus"),B=require("color-message-lingyun-vue"),V=require("./chunks/layout.B9EVVV-O.js"),k=require("./chunks/_plugin-vue_export-helper.BHFhmbuH.js"),N=require("ling-yun-methods"),C={class:"flex w-full mg-b-10"},w={class:"config-item__label text-right inline-block"},b={class:"flex-1 flex justify-start items-flex-start flex-wrap flex-gap-row-wrap-8 fz-14",style:{color:"#303133"}},S={__name:"ConfigItem",props:{title:{type:String,required:!0}},setup(a){return(s,p)=>(e.openBlock(),e.createElementBlock("div",C,[e.createElementVNode("div",w,[e.createElementVNode("span",null,e.toDisplayString(a.title),1)]),e.createElementVNode("div",b,[e.renderSlot(s.$slots,"default",{},void 0,!0)])]))}},E=k._export_sfc(S,[["__scopeId","data-v-9093c13d"]]),o={LISTING:1,DELISTING:2,ONLINE:3,OFFLINE:4},y={PENDING:0,APPROVED:1,REJECTED:2},g={IMAGE:1,VIDEO:2},x={INTRO:"intro",TIMELINE:"timeline"},v={[o.LISTING]:"上架申请",[o.DELISTING]:"下架申请",[o.ONLINE]:"上线应用",[o.OFFLINE]:"下线应用"},D={class:"app-intro-content overflow-hidden h-full"},L={key:0,class:"media-section w-full pd-b-12"},O={class:"media-content relative w-full"},$={key:0,class:"media-video relative w-full"},M=["src"],F={key:1,class:"media-image relative w-full"},G=["src"],q=["onClick"],A={class:"info-section"},P={class:"text-item"},R={class:"text-item"},U={class:"file-list"},j={key:0,class:"preview-content"},z=["src"],H={key:1,class:"preview-content"},J=["src"],W={__name:"AppIntroContent",props:{pics:{type:Array,default:()=>[]},appCreatorName:{type:String,default:""},appCreatorOrg:{type:String,default:""},appDesc:{type:String,default:""},accessSystem:{type:String,default:""},businessBackground:{type:String,default:""},businessTarget:{type:String,default:""},resultData:{type:String,default:""},attachements:{type:Array,default:()=>[]}},setup(a){const s=a,p=e.computed(()=>[{title:"申请人:",value:s.appCreatorName},{title:"应用省份:",value:s.appCreatorOrg},{title:"应用说明:",value:s.appDesc},{title:"接入系统:",value:s.accessSystem},{title:"业务背景:",value:s.businessBackground},{title:"业务目标:",value:s.businessTarget},{title:"成效数据:",value:s.resultData}]),d=e.ref(!1),i=e.ref(null),f=r=>{i.value=r,d.value=!0},u=()=>{d.value=!1,i.value=null},m=r=>{try{const l=document.createElement("a");l.href=r.attachementUrl,l.download=r.attachementName,l.style.display="none",l.target="_blank",document.body.appendChild(l),l.click(),document.body.removeChild(l)}catch(l){console.error(l)}};return(r,l)=>{const t=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",D,[a.pics.length>0?(e.openBlock(),e.createElementBlock("div",L,[e.createElementVNode("div",O,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.pics,(n,h)=>(e.openBlock(),e.createElementBlock("div",{key:h,class:"media-item w-full"},[n.type===e.unref(g).VIDEO?(e.openBlock(),e.createElementBlock("div",$,[e.createElementVNode("video",{class:"w-full",src:n.url,controls:""},null,8,M)])):e.createCommentVNode("",!0),n.type===e.unref(g).IMAGE?(e.openBlock(),e.createElementBlock("div",F,[e.createElementVNode("img",{class:"w-full",src:n.url,alt:""},null,8,G)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"hover-overlay absolute top-0 left-0 w-full h-full flex justify-center items-center",onClick:I=>f(n)},[e.createVNode(e.unref(c.ElIcon),{size:24,class:"view-icon"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.IconLook))]),_:1})],8,q)]))),128))])])):e.createCommentVNode("",!0),e.createElementVNode("div",A,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,n=>(e.openBlock(),e.createBlock(E,{key:n.title,title:n.title},{default:e.withCtx(()=>[e.createElementVNode("div",P,e.toDisplayString(n.value??"--"),1)]),_:2},1032,["title"]))),128)),e.createVNode(E,{title:"附件:"},{default:e.withCtx(()=>[e.createElementVNode("div",R,[e.createElementVNode("div",U,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.attachements,(n,h)=>(e.openBlock(),e.createElementBlock("div",{key:h,class:"file-item"},[e.withDirectives((e.openBlock(),e.createElementBlock("div",null,[e.createTextVNode(e.toDisplayString(n.attachementName)+" ",1),n.attachementUrl?(e.openBlock(),e.createBlock(e.unref(c.ElLink),{key:0,type:"primary",underline:!1,onClick:I=>m(n)},{default:e.withCtx(()=>[...l[1]||(l[1]=[e.createTextVNode(" 点击查看 ",-1)])]),_:1},8,["onClick"])):e.createCommentVNode("",!0)])),[[t,!n.attachementUrl]])]))),128))])])]),_:1})]),e.createVNode(V.CustomDialog,{modelValue:d.value,"onUpdate:modelValue":l[0]||(l[0]=n=>d.value=n),width:"60%","show-close":!0,onClose:u,buttons:{showCancel:!1,showConfirm:!1}},{default:e.withCtx(()=>[i.value?.type===e.unref(g).IMAGE?(e.openBlock(),e.createElementBlock("div",j,[e.createElementVNode("img",{class:"preview-media w-full",src:i.value.url,alt:""},null,8,z)])):(e.openBlock(),e.createElementBlock("div",H,[e.createElementVNode("video",{class:"preview-media w-full",src:i.value?.url,controls:""},null,8,J)]))]),_:1},8,["modelValue"])])}}},Y=k._export_sfc(W,[["__scopeId","data-v-ffbf63d2"]]),K={class:"flex items-center flex-gap-row-nowrap-8 mg-b-12"},Q={class:"fz-14 weight-500",style:{color:"#1d2129"}},X={class:"fz-14",style:{color:"#4e5969"}},Z={key:0,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},ee={key:1,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},te={key:2,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},ae={key:3,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},oe={key:4,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},le={key:5,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},ne={key:6,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},re={key:7,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},se={key:8,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},ce={__name:"AppTimeline",props:{appId:{type:String,default:""},square:{type:Boolean,default:!1},vueRouter:{type:Object,default:()=>({})},prefixUrl:{type:String,default:""}},setup(a){const s=a,p=async r=>{s.vueRouter.push({path:"/promptTestDetail",query:{id:r.id,type:r.auditStatus,sourceFlag:"1",operationType:r.operationType,sourceHistory:"1"}})},d=r=>[o.LISTING,o.DELISTING].includes(r),i=N.createRequest(s.prefixUrl),f=()=>i.post({url:`${N.apiPrefix.cslmManagerAgent}/microApp/appOperationList`,data:{appId:s.appId,operationType:[o.LISTING,o.DELISTING,o.ONLINE,o.OFFLINE].join(","),pageNum:N.pageParams.pageNum,pageSize:1e6}}),u=e.ref([]),m=async()=>{await f().then(({data:r})=>{u.value=r.list})};return e.onMounted(()=>{m()}),(r,l)=>(e.openBlock(),e.createBlock(e.unref(c.ElTimeline),{class:"overflow-y-auto h-full pd-l-12"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,t=>(e.openBlock(),e.createBlock(e.unref(c.ElTimelineItem),{key:t.id,timestamp:t.createTime,placement:"top",color:"#165dff"},{default:e.withCtx(()=>[e.createVNode(e.unref(c.ElCard),{shadow:"hover"},{default:e.withCtx(()=>[e.createElementVNode("div",K,[e.createElementVNode("span",Q,e.toDisplayString(e.unref(v)[t.operationType]||"--"),1),d(t.operationType)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t.auditStatus===e.unref(y).PENDING?(e.openBlock(),e.createBlock(e.unref(c.ElTag),{key:0,type:"warning",size:"small",class:"weight-500"},{default:e.withCtx(()=>[...l[0]||(l[0]=[e.createTextVNode(" 待审核 ",-1)])]),_:1})):t.auditStatus===e.unref(y).APPROVED?(e.openBlock(),e.createBlock(e.unref(c.ElTag),{key:1,type:"primary",size:"small",class:"weight-500"},{default:e.withCtx(()=>[...l[1]||(l[1]=[e.createTextVNode(" 已通过 ",-1)])]),_:1})):t.auditStatus===e.unref(y).REJECTED?(e.openBlock(),e.createBlock(e.unref(c.ElTag),{key:2,type:"danger",size:"small",class:"weight-500"},{default:e.withCtx(()=>[...l[2]||(l[2]=[e.createTextVNode(" 已驳回 ",-1)])]),_:1})):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)]),e.createElementVNode("div",X,[t.operationType===e.unref(o).LISTING||t.operationType===e.unref(o).DELISTING?(e.openBlock(),e.createElementBlock("p",Z," 申请人:"+e.toDisplayString(t.creatorName??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(o).ONLINE||t.operationType===e.unref(o).OFFLINE?(e.openBlock(),e.createElementBlock("p",ee," 操作人:"+e.toDisplayString(t.creatorName??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(o).DELISTING?(e.openBlock(),e.createElementBlock("p",te," 下架原因:"+e.toDisplayString(t.delistingReason??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(o).LISTING?(e.openBlock(),e.createElementBlock("p",ae," 成效数据:"+e.toDisplayString(t.resultData??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(o).LISTING?(e.openBlock(),e.createElementBlock("p",oe," 推荐理由:"+e.toDisplayString(t.recommendReason??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(o).ONLINE||t.operationType===e.unref(o).OFFLINE?(e.openBlock(),e.createElementBlock("p",le," 版本号:"+e.toDisplayString(t.appVersionNum?"V"+t.appVersionNum:"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(o).ONLINE?(e.openBlock(),e.createElementBlock("p",ne," 配置摘要:"+e.toDisplayString(t.configSummary??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(o).ONLINE||t.operationType===e.unref(o).OFFLINE?(e.openBlock(),e.createElementBlock("p",re," 版本说明:"+e.toDisplayString(t.publishRemark??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(o).OFFLINE?(e.openBlock(),e.createElementBlock("p",se," 下线原因:"+e.toDisplayString(t.offlineReason??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(o).LISTING&&!a.square?(e.openBlock(),e.createBlock(e.unref(c.ElLink),{key:9,type:"primary",underline:!1,class:"mg-t-8",onClick:n=>p(t)},{default:e.withCtx(()=>[...l[3]||(l[3]=[e.createTextVNode(" 查看上架申请 ",-1)])]),_:1},8,["onClick"])):e.createCommentVNode("",!0),t.operationType===e.unref(o).DELISTING&&!a.square?(e.openBlock(),e.createBlock(e.unref(c.ElLink),{key:10,type:"primary",underline:!1,class:"mg-t-8",onClick:n=>p(t)},{default:e.withCtx(()=>[...l[4]||(l[4]=[e.createTextVNode(" 查看下架申请 ",-1)])]),_:1},8,["onClick"])):e.createCommentVNode("",!0)])]),_:2},1024)]),_:2},1032,["timestamp"]))),128))]),_:1}))}},ie=k._export_sfc(ce,[["__scopeId","data-v-83b41e95"]]),ue=Object.assign({name:"AppIntro"},{__name:"layout",props:{introData:{type:Object,default:()=>({})},square:{type:Boolean,default:!1},defaultTab:{type:String,default:"intro",validator:a=>["intro","timeline"].includes(a)},prefixUrl:{type:String,default:""},vueRouter:{type:Object,default:()=>({})},appId:{type:String,default:""}},emits:["tab-change"],setup(a,{emit:s}){const p=a,d=s,i=e.ref(p.defaultTab);e.watch(()=>p.defaultTab,u=>{i.value=u});const f=u=>{d("tab-change",u)};return(u,m)=>(e.openBlock(),e.createBlock(e.unref(c.ElTabs),{class:"overflow-hidden h-full",modelValue:i.value,"onUpdate:modelValue":m[0]||(m[0]=r=>i.value=r),onTabChange:f},{default:e.withCtx(()=>[e.createVNode(e.unref(c.ElTabPane),{label:"应用介绍",name:"intro"},{default:e.withCtx(()=>[e.createVNode(Y,{pics:a.introData?.pics,"app-creator-name":a.introData?.appCreatorName,"app-creator-org":a.introData?.appCreatorOrg,"app-desc":a.introData?.appDesc,"access-system":a.introData?.accessSystem,"business-background":a.introData?.businessBackground,"business-target":a.introData?.businessTarget,"result-data":a.introData?.resultData,attachements:a.introData?.attachements},null,8,["pics","app-creator-name","app-creator-org","app-desc","access-system","business-background","business-target","result-data","attachements"])]),_:1}),e.createVNode(e.unref(c.ElTabPane),{label:"迭代时间轴",name:"timeline"},{default:e.withCtx(()=>[e.createVNode(ie,{prefixUrl:a.prefixUrl,square:a.square,"vue-router":a.vueRouter,"app-id":a.appId},null,8,["prefixUrl","square","vue-router","app-id"])]),_:1})]),_:1},8,["modelValue"]))}}),pe=k._export_sfc(ue,[["__scopeId","data-v-0ffdf013"]]),T=_.withInstall(pe);exports.AppIntro=T;exports.auditStatusMap=y;exports.default=T;exports.mediaTypeMap=g;exports.operationTypeMap=o;exports.operationTypeToTextMap=v;exports.tabTypeMap=x;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./assets/AppIntro.css');const _=require("./chunks/index.CkihWzK6.js"),e=require("vue"),i=require("element-plus"),B=require("color-message-lingyun-vue"),V=require("./chunks/layout.B9EVVV-O.js"),k=require("./chunks/_plugin-vue_export-helper.BHFhmbuH.js"),C=require("ling-yun-methods"),w={class:"flex w-full mg-b-10"},b={class:"config-item__label text-right inline-block"},D={class:"flex-1 flex justify-start items-flex-start flex-wrap flex-gap-row-wrap-8 fz-14",style:{color:"#303133"}},S={__name:"ConfigItem",props:{title:{type:String,required:!0}},setup(o){return(r,d)=>(e.openBlock(),e.createElementBlock("div",w,[e.createElementVNode("div",b,[e.createElementVNode("span",null,e.toDisplayString(o.title),1)]),e.createElementVNode("div",D,[e.renderSlot(r.$slots,"default",{},void 0,!0)])]))}},h=k._export_sfc(S,[["__scopeId","data-v-9093c13d"]]),a={LISTING:1,DELISTING:2,ONLINE:3,OFFLINE:4},f={PENDING:0,APPROVED:1,REJECTED:2},y={IMAGE:1,VIDEO:2},g={INTRO:"intro",TIMELINE:"timeline"},E={[a.LISTING]:"上架申请",[a.DELISTING]:"下架申请",[a.ONLINE]:"上线应用",[a.OFFLINE]:"下线应用"},x={class:"app-intro-content overflow-hidden h-full"},L={key:0,class:"media-section w-full pd-b-12"},O={class:"media-content relative w-full"},$={key:0,class:"media-video relative w-full"},F=["src"],M={key:1,class:"media-image relative w-full"},G=["src"],q=["onClick"],A={class:"info-section"},R={class:"text-item"},P={class:"text-item"},j={class:"file-list"},z={key:0,class:"preview-content"},U=["src"],H={key:1,class:"preview-content"},J=["src"],Y={__name:"AppIntroContent",props:{pics:{type:Array,default:()=>[]},appCreatorName:{type:String,default:""},appCreatorOrg:{type:String,default:""},appDesc:{type:String,default:""},accessSystem:{type:String,default:""},businessBackground:{type:String,default:""},businessTarget:{type:String,default:""},resultData:{type:String,default:""},attachements:{type:Array,default:()=>[]}},setup(o){const r=o,d=e.computed(()=>[{title:"申请人:",value:r.appCreatorName},{title:"应用省份:",value:r.appCreatorOrg},{title:"应用说明:",value:r.appDesc},{title:"接入系统:",value:r.accessSystem},{title:"业务背景:",value:r.businessBackground},{title:"业务目标:",value:r.businessTarget},{title:"成效数据:",value:r.resultData}]),p=e.ref(!1),u=e.ref(null),m=t=>{u.value=t,p.value=!0},c=()=>{p.value=!1,u.value=null},s=t=>{try{const n=document.createElement("a");n.href=t.attachementUrl,n.download=t.attachementName,n.style.display="none",n.target="_blank",document.body.appendChild(n),n.click(),document.body.removeChild(n)}catch(n){console.error(n)}};return(t,n)=>{const T=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",x,[o.pics.length>0?(e.openBlock(),e.createElementBlock("div",L,[e.createElementVNode("div",O,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.pics,(l,N)=>(e.openBlock(),e.createElementBlock("div",{key:N,class:"media-item w-full"},[l.type===e.unref(y).VIDEO?(e.openBlock(),e.createElementBlock("div",$,[e.createElementVNode("video",{class:"w-full",src:l.url,controls:""},null,8,F)])):e.createCommentVNode("",!0),l.type===e.unref(y).IMAGE?(e.openBlock(),e.createElementBlock("div",M,[e.createElementVNode("img",{class:"w-full",src:l.url,alt:""},null,8,G)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"hover-overlay absolute top-0 left-0 w-full h-full flex justify-center items-center",onClick:I=>m(l)},[e.createVNode(e.unref(i.ElIcon),{size:24,class:"view-icon"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.IconLook))]),_:1})],8,q)]))),128))])])):e.createCommentVNode("",!0),e.createElementVNode("div",A,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,l=>(e.openBlock(),e.createBlock(h,{key:l.title,title:l.title},{default:e.withCtx(()=>[e.createElementVNode("div",R,e.toDisplayString(l.value??"--"),1)]),_:2},1032,["title"]))),128)),e.createVNode(h,{title:"附件:"},{default:e.withCtx(()=>[e.createElementVNode("div",P,[e.createElementVNode("div",j,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.attachements,(l,N)=>(e.openBlock(),e.createElementBlock("div",{key:N,class:"file-item"},[e.withDirectives((e.openBlock(),e.createElementBlock("div",null,[e.createTextVNode(e.toDisplayString(l.attachementName)+" ",1),l.attachementUrl?(e.openBlock(),e.createBlock(e.unref(i.ElLink),{key:0,type:"primary",underline:!1,onClick:I=>s(l)},{default:e.withCtx(()=>[...n[1]||(n[1]=[e.createTextVNode(" 点击查看 ",-1)])]),_:1},8,["onClick"])):e.createCommentVNode("",!0)])),[[T,!l.attachementUrl]])]))),128))])])]),_:1})]),e.createVNode(V.CustomDialog,{modelValue:p.value,"onUpdate:modelValue":n[0]||(n[0]=l=>p.value=l),width:"60%","show-close":!0,onClose:c,buttons:{showCancel:!1,showConfirm:!1}},{default:e.withCtx(()=>[u.value?.type===e.unref(y).IMAGE?(e.openBlock(),e.createElementBlock("div",z,[e.createElementVNode("img",{class:"preview-media w-full",src:u.value.url,alt:""},null,8,U)])):(e.openBlock(),e.createElementBlock("div",H,[e.createElementVNode("video",{class:"preview-media w-full",src:u.value?.url,controls:""},null,8,J)]))]),_:1},8,["modelValue"])])}}},K=k._export_sfc(Y,[["__scopeId","data-v-ffbf63d2"]]),Q={class:"flex items-center flex-gap-row-nowrap-8 mg-b-12"},W={class:"fz-14 weight-500",style:{color:"#1d2129"}},X={class:"fz-14",style:{color:"#4e5969"}},Z={key:0,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},ee={key:1,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},te={key:2,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},ae={key:3,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},oe={key:4,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},ne={key:5,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},le={key:6,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},re={key:7,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},se={key:8,class:"mg-t-8 mg-b-8",style:{"line-height":"1.5"}},ce={__name:"AppTimeline",props:{appId:{type:String,default:""},square:{type:Boolean,default:!1},vueRouter:{type:Object,default:()=>({})},appOperationList:{type:Function,default:()=>{}}},setup(o){const r=o,d=async c=>{r.vueRouter.push({path:"/promptTestDetail",query:{id:c.id,type:c.auditStatus,sourceFlag:"1",operationType:c.operationType,sourceHistory:"1"}})},p=c=>[a.LISTING,a.DELISTING].includes(c),u=e.ref([]),m=async()=>{await r.appOperationList({appId:r.appId,operationType:[a.LISTING,a.DELISTING,a.ONLINE,a.OFFLINE].join(","),pageNum:C.pageParams.pageNum,pageSize:1e6}).then(({data:c})=>{u.value=c.list})};return e.onMounted(()=>{m()}),(c,s)=>(e.openBlock(),e.createBlock(e.unref(i.ElTimeline),{class:"overflow-y-auto h-full pd-l-12"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,t=>(e.openBlock(),e.createBlock(e.unref(i.ElTimelineItem),{key:t.id,timestamp:t.createTime,placement:"top",color:"#165dff"},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElCard),{shadow:"hover"},{default:e.withCtx(()=>[e.createElementVNode("div",Q,[e.createElementVNode("span",W,e.toDisplayString(e.unref(E)[t.operationType]||"--"),1),p(t.operationType)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t.auditStatus===e.unref(f).PENDING?(e.openBlock(),e.createBlock(e.unref(i.ElTag),{key:0,type:"warning"},{default:e.withCtx(()=>[...s[0]||(s[0]=[e.createTextVNode(" 待审核 ",-1)])]),_:1})):t.auditStatus===e.unref(f).APPROVED?(e.openBlock(),e.createBlock(e.unref(i.ElTag),{key:1,type:"primary"},{default:e.withCtx(()=>[...s[1]||(s[1]=[e.createTextVNode(" 已通过 ",-1)])]),_:1})):t.auditStatus===e.unref(f).REJECTED?(e.openBlock(),e.createBlock(e.unref(i.ElTag),{key:2,type:"danger"},{default:e.withCtx(()=>[...s[2]||(s[2]=[e.createTextVNode(" 已驳回 ",-1)])]),_:1})):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)]),e.createElementVNode("div",X,[t.operationType===e.unref(a).LISTING||t.operationType===e.unref(a).DELISTING?(e.openBlock(),e.createElementBlock("p",Z," 申请人:"+e.toDisplayString(t.creatorName??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(a).ONLINE||t.operationType===e.unref(a).OFFLINE?(e.openBlock(),e.createElementBlock("p",ee," 操作人:"+e.toDisplayString(t.creatorName??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(a).DELISTING?(e.openBlock(),e.createElementBlock("p",te," 下架原因:"+e.toDisplayString(t.delistingReason??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(a).LISTING?(e.openBlock(),e.createElementBlock("p",ae," 成效数据:"+e.toDisplayString(t.resultData??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(a).LISTING?(e.openBlock(),e.createElementBlock("p",oe," 推荐理由:"+e.toDisplayString(t.recommendReason??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(a).ONLINE||t.operationType===e.unref(a).OFFLINE?(e.openBlock(),e.createElementBlock("p",ne," 版本号:"+e.toDisplayString(t.appVersionNum?"V"+t.appVersionNum:"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(a).ONLINE?(e.openBlock(),e.createElementBlock("p",le," 配置摘要:"+e.toDisplayString(t.configSummary??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(a).ONLINE||t.operationType===e.unref(a).OFFLINE?(e.openBlock(),e.createElementBlock("p",re," 版本说明:"+e.toDisplayString(t.publishRemark??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(a).OFFLINE?(e.openBlock(),e.createElementBlock("p",se," 下线原因:"+e.toDisplayString(t.offlineReason??"--"),1)):e.createCommentVNode("",!0),t.operationType===e.unref(a).LISTING&&!o.square?(e.openBlock(),e.createBlock(e.unref(i.ElLink),{key:9,type:"primary",underline:!1,class:"mg-t-8",onClick:n=>d(t)},{default:e.withCtx(()=>[...s[3]||(s[3]=[e.createTextVNode(" 查看上架申请 ",-1)])]),_:1},8,["onClick"])):e.createCommentVNode("",!0),t.operationType===e.unref(a).DELISTING&&!o.square?(e.openBlock(),e.createBlock(e.unref(i.ElLink),{key:10,type:"primary",underline:!1,class:"mg-t-8",onClick:n=>d(t)},{default:e.withCtx(()=>[...s[4]||(s[4]=[e.createTextVNode(" 查看下架申请 ",-1)])]),_:1},8,["onClick"])):e.createCommentVNode("",!0)])]),_:2},1024)]),_:2},1032,["timestamp"]))),128))]),_:1}))}},ie=k._export_sfc(ce,[["__scopeId","data-v-102c0937"]]),ue=Object.assign({name:"AppIntro"},{__name:"layout",props:{introData:{type:Object,default:()=>({})},square:{type:Boolean,default:!1},vueRouter:{type:Object,default:()=>({})},appId:{type:String,default:""},appOperationList:{type:Function,default:()=>{}}},emits:["tab-change"],setup(o,{emit:r}){const d=r,p=e.ref(g.INTRO),u=m=>{d("tab-change",m)};return(m,c)=>(e.openBlock(),e.createBlock(e.unref(i.ElTabs),{class:"overflow-hidden h-full",modelValue:p.value,"onUpdate:modelValue":c[0]||(c[0]=s=>p.value=s),onTabChange:u},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTabPane),{label:"应用介绍",name:e.unref(g).INTRO},{default:e.withCtx(()=>[e.createVNode(K,{pics:o.introData?.pics,"app-creator-name":o.introData?.appCreatorName,"app-creator-org":o.introData?.appCreatorOrg,"app-desc":o.introData?.appDesc,"access-system":o.introData?.accessSystem,"business-background":o.introData?.businessBackground,"business-target":o.introData?.businessTarget,"result-data":o.introData?.resultData,attachements:o.introData?.attachements},null,8,["pics","app-creator-name","app-creator-org","app-desc","access-system","business-background","business-target","result-data","attachements"])]),_:1},8,["name"]),e.createVNode(e.unref(i.ElTabPane),{label:"迭代时间轴",name:e.unref(g).TIMELINE},{default:e.withCtx(()=>[e.createVNode(ie,{"app-operation-list":o.appOperationList,square:o.square,"vue-router":o.vueRouter,"app-id":o.appId},null,8,["app-operation-list","square","vue-router","app-id"])]),_:1},8,["name"])]),_:1},8,["modelValue"]))}}),pe=k._export_sfc(ue,[["__scopeId","data-v-e675a909"]]),v=_.withInstall(pe);exports.AppIntro=v;exports.auditStatusMap=f;exports.default=v;exports.mediaTypeMap=y;exports.operationTypeMap=a;exports.operationTypeToTextMap=E;exports.tabTypeMap=g;
@@ -1 +1 @@
1
- .config-item__label[data-v-9093c13d]{width:80px;height:auto}.config-item__label span[data-v-9093c13d]{line-height:20px;color:#5d6c89}.hover-overlay[data-v-ffbf63d2]{background-color:#00000080}[data-v-83b41e95] .el-timeline-item__timestamp{color:#86909c}[data-v-83b41e95] .el-card{background:#f7f8fa}.el-tab-pane[data-v-0ffdf013]{height:100%;overflow:hidden}
1
+ .config-item__label[data-v-9093c13d]{width:80px;height:auto}.config-item__label span[data-v-9093c13d]{line-height:20px;color:#5d6c89}.hover-overlay[data-v-ffbf63d2]{background-color:#00000080}[data-v-102c0937] .el-timeline-item__timestamp{color:#86909c}[data-v-102c0937] .el-card{background:#f7f8fa}.el-tab-pane[data-v-e675a909]{height:100%;overflow:hidden}
File without changes