@opentiny/tiny-engine-toolbar-save 2.0.0 → 2.1.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE CHANGED
@@ -1,22 +1,22 @@
1
- MIT License
2
-
3
- Copyright (c) 2023 - present TinyEngine Authors.
4
- Copyright (c) 2023 - present Huawei Cloud Computing Technologies Co., Ltd.
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2023 - present TinyEngine Authors.
4
+ Copyright (c) 2023 - present Huawei Cloud Computing Technologies Co., Ltd.
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in all
14
+ copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
+ SOFTWARE.
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import "./style.css";
2
- import { reactive as P, ref as V, onUnmounted as h, resolveComponent as m, openBlock as B, createElementBlock as N, createVNode as d, withCtx as r, createTextVNode as k, createBlock as O, createCommentVNode as M, createElementVNode as b } from "vue";
3
- import { VueMonaco as U, ToolbarBase as D } from "@opentiny/tiny-engine-common";
4
- import { Button as L, Popover as G, DialogBox as R, Checkbox as j, Select as J } from "@opentiny/vue";
5
- import { usePage as q, useCanvas as T, getOptions as z, useNotify as S, useLayout as F, getMetaApi as H, META_APP as K, useBlock as Q } from "@opentiny/tiny-engine-meta-register";
6
- import { constants as W } from "@opentiny/tiny-engine-utils";
7
- import { handlePageUpdate as X } from "@opentiny/tiny-engine-common/js/http";
8
- const A = {
2
+ import { reactive as x, ref as B, onUnmounted as N, resolveComponent as u, openBlock as T, createElementBlock as O, createVNode as r, withCtx as l, createTextVNode as k, createBlock as M, createCommentVNode as U, createElementVNode as g, pushScopeId as D, popScopeId as L } from "vue";
3
+ import { VueMonaco as G, ToolbarBase as R } from "@opentiny/tiny-engine-common";
4
+ import { Button as j, Popover as I, DialogBox as J, Checkbox as q, Select as z } from "@opentiny/vue";
5
+ import { usePage as F, useCanvas as h, getOptions as H, useNotify as C, useLayout as K, getMetaApi as Q, META_APP as W, useBlock as X } from "@opentiny/tiny-engine-meta-register";
6
+ import { constants as Y } from "@opentiny/tiny-engine-utils";
7
+ import { handlePageUpdate as Z } from "@opentiny/tiny-engine-common/js/http";
8
+ const P = {
9
9
  id: "engine.toolbars.save",
10
10
  type: "toolbars",
11
11
  title: "save",
@@ -15,87 +15,87 @@ const A = {
15
15
  },
16
16
  renderType: "button"
17
17
  }
18
- }, { PAGE_STATUS: u } = W, g = P({
18
+ }, { PAGE_STATUS: m } = Y, b = x({
19
19
  visible: !1,
20
20
  code: "",
21
21
  originalCode: "",
22
22
  disabled: !1
23
- }), f = V(!1), Y = async (n) => {
24
- var a;
25
- const e = H(K.BlockManage), { getCurrentBlock: t } = Q(), o = t();
26
- o.label = n.fileName, o.content = n, f.value = !0, o.screenshot = await e.getBlockBase64(), await ((a = e.saveBlock) == null ? void 0 : a.call(e, o)), f.value = !1;
27
- }, Z = async (n) => {
28
- const { currentPage: e } = T().pageState, t = {
29
- page_content: n
23
+ }), _ = B(!1), $ = async (a) => {
24
+ var i;
25
+ const t = Q(W.BlockManage), { getCurrentBlock: o } = X(), e = o();
26
+ e.label = a.fileName, e.content = a, _.value = !0, e.screenshot = await t.getBlockBase64(), await ((i = t.saveBlock) == null ? void 0 : i.call(t, e)), _.value = !1;
27
+ }, ee = async (a) => {
28
+ const { currentPage: t } = h().pageState, o = {
29
+ page_content: a
30
30
  };
31
- f.value = !0, await X(e.id, { ...e, ...t }, !1, !0), f.value = !1;
32
- }, x = (n) => {
33
- const { pageSettingState: e, isTemporaryPage: t } = q(), { isBlock: o, canvasApi: a, pageState: s } = T(), i = JSON.parse(n), { setSchema: l, selectNode: c } = a.value;
34
- if (s.pageSchema = i, l(i), e != null && e.isAIPage) {
35
- t.saved && (t.saved = !1), t.saved = !0;
36
- const v = "page_content";
37
- return e.currentPageData[v] = i, Promise.resolve();
31
+ _.value = !0, await Z(t.id, { ...t, ...o }, !1, !0), _.value = !1;
32
+ }, S = (a) => {
33
+ const { pageSettingState: t, isTemporaryPage: o } = F(), { isBlock: e, canvasApi: i, pageState: s, resetBlockCanvasState: d, resetPageCanvasState: c } = h(), n = JSON.parse(a), { selectNode: v } = i.value;
34
+ if (e() ? d({ ...s, pageSchema: n }) : c({ ...s, pageSchema: n }), t != null && t.isAIPage) {
35
+ o.saved && (o.saved = !1), o.saved = !0;
36
+ const p = "page_content";
37
+ return t.currentPageData[p] = n, Promise.resolve();
38
38
  }
39
- return c(null), o() ? Y(i) : Z(i);
40
- }, w = async () => {
41
- var _;
42
- const { isSaved: n, canvasApi: e } = T();
43
- if (n() || g.disabled)
39
+ return v(null), e() ? $(n) : ee(n);
40
+ }, V = async () => {
41
+ var p;
42
+ const { isSaved: a, getSchema: t } = h();
43
+ if (a() || b.disabled)
44
44
  return;
45
- const { beforeSave: t, saveMethod: o, saved: a } = z(A.id);
45
+ const { beforeSave: o, saveMethod: e, saved: i } = H(P.id);
46
46
  try {
47
- if (typeof t == "function" && await t(), typeof o == "function" && await o())
47
+ if (typeof o == "function" && await o(), typeof e == "function" && await e())
48
48
  return;
49
- } catch (p) {
50
- S({
49
+ } catch (f) {
50
+ C({
51
51
  type: "error",
52
- message: `Error in saving: ${p}`
52
+ message: `Error in saving: ${f}`
53
53
  });
54
54
  }
55
- const s = (_ = F().layoutState) == null ? void 0 : _.pageStatus, i = s == null ? void 0 : s.state, l = s == null ? void 0 : s.data, { getSchema: c } = e.value, v = {
56
- [u.Release]: "当前页面未锁定,请先锁定再保存",
57
- [u.Empty]: "当前应用无页面,请先新建页面再保存",
58
- [u.Guest]: "官网演示应用不能保存页面,如需体验请切换应用",
59
- [u.Lock]: `当前页面被 ${l == null ? void 0 : l.username} ${l == null ? void 0 : l.resetPasswordToken} 锁定,如需编辑请先联系他解锁文件,然后再锁定该页面后编辑!`
55
+ const s = (p = K().layoutState) == null ? void 0 : p.pageStatus, d = s == null ? void 0 : s.state, c = s == null ? void 0 : s.data, n = {
56
+ [m.Release]: "当前页面未锁定,请先锁定再保存",
57
+ [m.Empty]: "当前应用无页面,请先新建页面再保存",
58
+ [m.Guest]: "官网演示应用不能保存页面,如需体验请切换应用",
59
+ [m.Lock]: `当前页面被 ${c == null ? void 0 : c.username} ${c == null ? void 0 : c.resetPasswordToken} 锁定,如需编辑请先联系他解锁文件,然后再锁定该页面后编辑!`
60
60
  };
61
- if ([u.Release, u.Empty, u.Guest, u.Lock].includes(i)) {
62
- S({
61
+ if ([m.Release, m.Empty, m.Guest, m.Lock].includes(d)) {
62
+ C({
63
63
  type: "error",
64
64
  title: "保存失败",
65
- message: v[i]
65
+ message: n[d]
66
66
  });
67
67
  return;
68
68
  }
69
- g.disabled = !0;
70
- const C = c();
71
- g.code = JSON.stringify(C || {}, null, 2), x(g.code).finally(() => {
72
- if (g.disabled = !1, typeof a == "function")
69
+ b.disabled = !0;
70
+ const v = t();
71
+ b.code = JSON.stringify(v || {}, null, 2), S(b.code).finally(() => {
72
+ if (b.disabled = !1, typeof i == "function")
73
73
  try {
74
- a();
75
- } catch (p) {
76
- S({
74
+ i();
75
+ } catch (f) {
76
+ C({
77
77
  type: "error",
78
- message: `Error in saved: ${p}`
78
+ message: `Error in saved: ${f}`
79
79
  });
80
80
  }
81
81
  });
82
- }, I = (n, e) => {
83
- const t = n.__vccOpts || n;
84
- for (const [o, a] of e)
85
- t[o] = a;
86
- return t;
87
- }, $ = {
88
- saveCommon: x,
89
- openCommon: w
90
- }, ee = {
82
+ }, oe = (a, t) => {
83
+ const o = a.__vccOpts || a;
84
+ for (const [e, i] of t)
85
+ o[e] = i;
86
+ return o;
87
+ }, te = {
88
+ saveCommon: S,
89
+ openCommon: V
90
+ }, ae = {
91
91
  components: {
92
- VueMonaco: U,
93
- TinyButton: L,
94
- TinyPopover: G,
95
- TinyDialogBox: R,
96
- TinyCheckbox: j,
97
- TinySelect: J,
98
- ToolbarBase: D
92
+ VueMonaco: G,
93
+ TinyButton: j,
94
+ TinyPopover: I,
95
+ TinyDialogBox: J,
96
+ TinyCheckbox: q,
97
+ TinySelect: z,
98
+ ToolbarBase: R
99
99
  },
100
100
  props: {
101
101
  iconExpand: {
@@ -108,11 +108,11 @@ const A = {
108
108
  }
109
109
  },
110
110
  setup() {
111
- const { isSaved: n } = T(), e = [
111
+ const { isSaved: a } = h(), t = [
112
112
  { value: 5, label: "5分钟" },
113
113
  { value: 10, label: "10分钟" },
114
114
  { value: 15, label: "15分钟" }
115
- ], t = P({
115
+ ], o = x({
116
116
  visible: !1,
117
117
  code: "",
118
118
  originalCode: "",
@@ -120,96 +120,96 @@ const A = {
120
120
  timeValue: 5,
121
121
  checked: !1,
122
122
  preservationTime: null
123
- }), o = V(null), a = () => {
124
- t.visible = !1, t.originalCode = "";
123
+ }), e = B(null), i = () => {
124
+ o.visible = !1, o.originalCode = "";
125
125
  }, s = () => {
126
- f.value || w();
127
- }, i = () => {
128
- x();
129
- }, l = {
126
+ _.value || V();
127
+ }, d = () => {
128
+ S();
129
+ }, c = {
130
130
  language: "json",
131
131
  lineNumbers: !0,
132
132
  minimap: {
133
133
  enabled: !1
134
134
  }
135
- }, c = () => {
136
- clearTimeout(t.preservationTime), t.preservationTime = setTimeout(() => {
137
- s(), c();
138
- }, t.timeValue * 60 * 1e3);
135
+ }, n = () => {
136
+ clearTimeout(o.preservationTime), o.preservationTime = setTimeout(() => {
137
+ s(), n();
138
+ }, o.timeValue * 60 * 1e3);
139
139
  }, v = () => {
140
- t.checked ? c() : clearTimeout(t.preservationTime);
140
+ o.checked ? n() : clearTimeout(o.preservationTime);
141
141
  };
142
- return h(() => {
143
- clearTimeout(t.preservationTime);
142
+ return N(() => {
143
+ clearTimeout(o.preservationTime);
144
144
  }), {
145
- state: t,
146
- editor: o,
147
- editorOptions: l,
148
- isLoading: f,
149
- isSaved: n,
150
- close: a,
145
+ state: o,
146
+ editor: e,
147
+ editorOptions: c,
148
+ isLoading: _,
149
+ isSaved: a,
150
+ close: i,
151
151
  openApi: s,
152
- saveApi: i,
153
- delayOptions: e,
152
+ saveApi: d,
153
+ delayOptions: t,
154
154
  autoSave: v
155
155
  };
156
156
  }
157
- }, oe = { class: "toolbar-save" }, te = { class: "save-style" }, ne = { class: "save-time" }, ae = { class: "save-button-group" };
158
- function se(n, e, t, o, a, s) {
159
- const i = m("svg-icon"), l = m("vue-monaco"), c = m("tiny-button"), v = m("tiny-dialog-box"), C = m("toolbar-base"), _ = m("tiny-checkbox"), p = m("tiny-select"), E = m("tiny-popover");
160
- return B(), N("div", oe, [
161
- d(E, {
157
+ }, w = (a) => (D("data-v-65d97e8e"), a = a(), L(), a), ne = { class: "toolbar-save" }, se = { class: "save-style" }, ie = /* @__PURE__ */ w(() => /* @__PURE__ */ g("div", { class: "save-setting" }, "保存设置", -1)), ce = { class: "save-time" }, le = /* @__PURE__ */ w(() => /* @__PURE__ */ g("div", { class: "save-time-label" }, "保存间隔", -1)), re = { class: "save-button-group" };
158
+ function de(a, t, o, e, i, s) {
159
+ const d = u("svg-icon"), c = u("vue-monaco"), n = u("tiny-button"), v = u("tiny-dialog-box"), p = u("toolbar-base"), f = u("tiny-checkbox"), A = u("tiny-select"), E = u("tiny-popover");
160
+ return T(), O("div", ne, [
161
+ r(E, {
162
162
  "visible-arrow": !1,
163
163
  width: "203",
164
164
  trigger: "hover"
165
165
  }, {
166
- reference: r(() => [
167
- d(C, {
168
- content: o.isLoading ? "保存中" : "保存",
169
- icon: t.options.icon.default || t.options.icon,
170
- options: { ...t.options, showDots: !o.isSaved() },
171
- onClickApi: o.openApi
166
+ reference: l(() => [
167
+ r(p, {
168
+ content: e.isLoading ? "保存中" : "保存",
169
+ icon: o.options.icon.default || o.options.icon,
170
+ options: { ...o.options, showDots: !e.isSaved() },
171
+ onClickApi: e.openApi
172
172
  }, {
173
- button: r(() => [
174
- d(i, { name: t.iconExpand }, null, 8, ["name"])
173
+ button: l(() => [
174
+ r(d, { name: o.iconExpand }, null, 8, ["name"])
175
175
  ]),
176
- default: r(() => [
177
- d(v, {
176
+ default: l(() => [
177
+ r(v, {
178
178
  class: "dialog-box",
179
179
  modal: !1,
180
180
  fullscreen: !0,
181
181
  "append-to-body": !0,
182
- visible: o.state.visible,
182
+ visible: e.state.visible,
183
183
  title: "Schema 本地与线上差异",
184
- "onUpdate:visible": e[0] || (e[0] = (y) => o.state.visible = y)
184
+ "onUpdate:visible": t[0] || (t[0] = (y) => e.state.visible = y)
185
185
  }, {
186
- footer: r(() => [
187
- d(c, { onClick: o.close }, {
188
- default: r(() => e[3] || (e[3] = [
186
+ footer: l(() => [
187
+ r(n, { onClick: e.close }, {
188
+ default: l(() => [
189
189
  k("取 消")
190
- ])),
190
+ ]),
191
191
  _: 1
192
192
  }, 8, ["onClick"]),
193
- d(c, {
193
+ r(n, {
194
194
  type: "primary",
195
- onClick: o.saveApi
195
+ onClick: e.saveApi
196
196
  }, {
197
- default: r(() => e[4] || (e[4] = [
197
+ default: l(() => [
198
198
  k("保 存")
199
- ])),
199
+ ]),
200
200
  _: 1
201
201
  }, 8, ["onClick"])
202
202
  ]),
203
- default: r(() => [
204
- o.state.visible ? (B(), O(l, {
203
+ default: l(() => [
204
+ e.state.visible ? (T(), M(c, {
205
205
  key: 0,
206
206
  ref: "editor",
207
207
  class: "monaco-editor",
208
208
  diffEditor: !0,
209
- options: o.editorOptions,
210
- value: o.state.code,
211
- original: o.state.originalCode
212
- }, null, 8, ["options", "value", "original"])) : M("", !0)
209
+ options: e.editorOptions,
210
+ value: e.state.code,
211
+ original: e.state.originalCode
212
+ }, null, 8, ["options", "value", "original"])) : U("", !0)
213
213
  ]),
214
214
  _: 1
215
215
  }, 8, ["visible"])
@@ -217,37 +217,37 @@ function se(n, e, t, o, a, s) {
217
217
  _: 1
218
218
  }, 8, ["content", "icon", "options", "onClickApi"])
219
219
  ]),
220
- default: r(() => [
221
- b("div", te, [
222
- e[8] || (e[8] = b("div", { class: "save-setting" }, "保存设置", -1)),
223
- d(_, {
224
- modelValue: o.state.checked,
225
- "onUpdate:modelValue": e[1] || (e[1] = (y) => o.state.checked = y),
220
+ default: l(() => [
221
+ g("div", se, [
222
+ ie,
223
+ r(f, {
224
+ modelValue: e.state.checked,
225
+ "onUpdate:modelValue": t[1] || (t[1] = (y) => e.state.checked = y),
226
226
  name: "tiny-checkbox"
227
227
  }, {
228
- default: r(() => e[5] || (e[5] = [
228
+ default: l(() => [
229
229
  k("自动保存")
230
- ])),
230
+ ]),
231
231
  _: 1
232
232
  }, 8, ["modelValue"]),
233
- b("div", ne, [
234
- e[6] || (e[6] = b("div", { class: "save-time-label" }, "保存间隔", -1)),
235
- d(p, {
236
- modelValue: o.state.timeValue,
237
- "onUpdate:modelValue": e[2] || (e[2] = (y) => o.state.timeValue = y),
238
- options: o.delayOptions,
239
- disabled: !o.state.checked,
233
+ g("div", ce, [
234
+ le,
235
+ r(A, {
236
+ modelValue: e.state.timeValue,
237
+ "onUpdate:modelValue": t[2] || (t[2] = (y) => e.state.timeValue = y),
238
+ options: e.delayOptions,
239
+ disabled: !e.state.checked,
240
240
  autocomplete: ""
241
241
  }, null, 8, ["modelValue", "options", "disabled"])
242
242
  ]),
243
- b("div", ae, [
244
- d(c, {
243
+ g("div", re, [
244
+ r(n, {
245
245
  type: "primary",
246
- onClick: o.autoSave
246
+ onClick: e.autoSave
247
247
  }, {
248
- default: r(() => e[7] || (e[7] = [
248
+ default: l(() => [
249
249
  k("设置并保存")
250
- ])),
250
+ ]),
251
251
  _: 1
252
252
  }, 8, ["onClick"])
253
253
  ])
@@ -257,11 +257,11 @@ function se(n, e, t, o, a, s) {
257
257
  })
258
258
  ]);
259
259
  }
260
- const ie = /* @__PURE__ */ I(ee, [["render", se], ["__scopeId", "data-v-75c21aff"]]), pe = {
261
- ...A,
262
- entry: ie,
263
- apis: $
260
+ const ue = /* @__PURE__ */ oe(ae, [["render", de], ["__scopeId", "data-v-65d97e8e"]]), ge = {
261
+ ...P,
262
+ entry: ue,
263
+ apis: te
264
264
  };
265
265
  export {
266
- pe as default
266
+ ge as default
267
267
  };
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .dots[data-v-75c21aff]{width:6px;height:6px;background:var(--ti-lowcode-toolbar-dot-color);border-radius:50%;display:inline-block;position:absolute;top:4px;right:3px;z-index:100}.toolbar-save .save-button[data-v-75c21aff]{background-color:var(--ti-lowcode-toolbar-button-bg);border:none;min-width:70px;height:26px;display:flex;align-items:center;padding:0 8px;border-radius:4px}.toolbar-save .save-button[data-v-75c21aff]:not(.disabled):hover{background-color:var(--ti-lowcode-toolbar-button-bg)}.toolbar-save .save-button .save-title[data-v-75c21aff]{margin:0 6px}.toolbar-save[data-v-75c21aff] .icon-down-arrow:focus{outline:none}.save-style[data-v-75c21aff]{padding:20px 12px;font-size:12px}.save-style .save-setting[data-v-75c21aff]{font-size:14px;font-weight:600;line-height:20px;height:20px;margin-bottom:16px}.save-style .save-time[data-v-75c21aff]{line-height:24px;font-size:12px;margin:12px 0 16px;display:flex}.save-style .save-time .save-time-label[data-v-75c21aff]{width:60px}.save-style .save-time .tiny-select[data-v-75c21aff]{width:103px;margin-left:12px}.save-style .save-time .tiny-select[data-v-75c21aff] .tiny-input__suffix{width:12px;top:12px}.save-style .save-button-group[data-v-75c21aff]{text-align:right}.save-style .save-button-group[data-v-75c21aff] .tiny-button{min-width:40px;padding:0 8px;height:26px;line-height:24px;border:0;border-radius:4px}#saving[data-v-75c21aff]{cursor:not-allowed;color:var(--ti-lowcode-disabled-color)}#saving[data-v-75c21aff] svg{color:var(--ti-lowcode-disabled-color)}.dialog-box[data-v-75c21aff] .tiny-dialog-box{display:flex;flex-direction:column}.dialog-box[data-v-75c21aff] .tiny-dialog-box .tiny-dialog-box__body{flex:1}.dialog-box .monaco-editor[data-v-75c21aff]{width:100%;height:100%}.changeRole a{color:var(--ti-lowcode-canvas-handle-hover-bg);padding:0 5px}
1
+ .dots[data-v-65d97e8e]{width:6px;height:6px;background:var(--ti-lowcode-toolbar-dot-color);border-radius:50%;display:inline-block;position:absolute;top:4px;right:3px;z-index:100}.toolbar-save .save-button[data-v-65d97e8e]{background-color:var(--ti-lowcode-toolbar-button-bg);border:none;min-width:70px;height:26px;display:flex;align-items:center;padding:0 8px;border-radius:4px}.toolbar-save .save-button[data-v-65d97e8e]:not(.disabled):hover{background-color:var(--ti-lowcode-toolbar-button-bg)}.toolbar-save .save-button .save-title[data-v-65d97e8e]{margin:0 6px}.toolbar-save[data-v-65d97e8e] .icon-down-arrow:focus{outline:none}.save-style[data-v-65d97e8e]{padding:20px 12px;font-size:12px}.save-style .save-setting[data-v-65d97e8e]{font-size:14px;font-weight:600;line-height:20px;height:20px;margin-bottom:16px}.save-style .save-time[data-v-65d97e8e]{line-height:24px;font-size:12px;margin:12px 0 16px;display:flex}.save-style .save-time .save-time-label[data-v-65d97e8e]{width:60px}.save-style .save-time .tiny-select[data-v-65d97e8e]{width:103px;margin-left:12px}.save-style .save-time .tiny-select[data-v-65d97e8e] .tiny-input__suffix{width:12px;top:12px}.save-style .save-button-group[data-v-65d97e8e]{text-align:right}.save-style .save-button-group[data-v-65d97e8e] .tiny-button{min-width:40px;padding:0 8px;height:26px;line-height:24px;border:0;border-radius:4px}#saving[data-v-65d97e8e]{cursor:not-allowed;color:var(--ti-lowcode-disabled-color)}#saving[data-v-65d97e8e] svg{color:var(--ti-lowcode-disabled-color)}.dialog-box[data-v-65d97e8e] .tiny-dialog-box{display:flex;flex-direction:column}.dialog-box[data-v-65d97e8e] .tiny-dialog-box .tiny-dialog-box__body{flex:1}.dialog-box .monaco-editor[data-v-65d97e8e]{width:100%;height:100%}.changeRole a{color:var(--ti-lowcode-canvas-handle-hover-bg);padding:0 5px}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opentiny/tiny-engine-toolbar-save",
3
- "version": "2.0.0",
3
+ "version": "2.1.0-rc.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -25,12 +25,12 @@
25
25
  "license": "MIT",
26
26
  "homepage": "https://opentiny.design/tiny-engine",
27
27
  "dependencies": {
28
- "@opentiny/tiny-engine-common": "2.0.0",
29
- "@opentiny/tiny-engine-meta-register": "2.0.0",
30
- "@opentiny/tiny-engine-utils": "2.0.0"
28
+ "@opentiny/tiny-engine-common": "2.1.0-rc.0",
29
+ "@opentiny/tiny-engine-meta-register": "2.1.0-rc.0",
30
+ "@opentiny/tiny-engine-utils": "2.1.0-rc.0"
31
31
  },
32
32
  "devDependencies": {
33
- "@opentiny/tiny-engine-vite-plugin-meta-comments": "2.0.0",
33
+ "@opentiny/tiny-engine-vite-plugin-meta-comments": "2.1.0-rc.0",
34
34
  "@vitejs/plugin-vue": "^5.1.2",
35
35
  "@vitejs/plugin-vue-jsx": "^4.0.1",
36
36
  "vite": "^5.4.2"
@@ -39,5 +39,5 @@
39
39
  "@opentiny/vue": "^3.14.0",
40
40
  "vue": "^3.4.15"
41
41
  },
42
- "gitHead": "26b32b2236bb85d8113158fd1475884aa99a9657"
42
+ "gitHead": "71a3549d5f1d38d2ed3934ce83b722b11878aa7c"
43
43
  }