lkt-item-crud 1.0.12 → 1.1.1

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,4 @@
1
+ export { ge as default };
2
+ declare namespace ge {
3
+ function install(a: any, N?: {}): void;
4
+ }
@@ -1,20 +1,17 @@
1
- import { defineComponent as le, useSlots as ue, ref as n, computed as o, watch as B, resolveComponent as w, openBlock as i, createElementBlock as m, createElementVNode as I, toDisplayString as M, renderSlot as R, createCommentVNode as y, withDirectives as V, createBlock as _, withCtx as A, unref as F, vShow as L, createVNode as P } from "vue";
1
+ import { defineComponent as le, useSlots as ue, ref as n, computed as o, watch as B, resolveComponent as w, openBlock as i, createElementBlock as m, createElementVNode as M, toDisplayString as I, renderSlot as R, createCommentVNode as S, withDirectives as V, createBlock as _, withCtx as F, unref as H, vShow as q, createVNode as P } from "vue";
2
2
  import { httpCall as re } from "lkt-http-client";
3
3
  import { DataState as oe } from "lkt-data-state";
4
- import se from "lkt-button";
5
- import de from "lkt-http-info";
6
- import ne from "lkt-loader";
7
- const ie = { class: "lkt-item-crud" }, ce = {
4
+ const se = { class: "lkt-item-crud" }, de = {
8
5
  key: 0,
9
6
  class: "lkt-item-crud_header"
10
- }, ve = { class: "lkt-item-crud_header-title" }, fe = { class: "lkt-item-crud_header-slot" }, pe = { class: "lkt-item-crud-buttons" }, me = { key: 1 }, he = { key: 1 }, ke = {
7
+ }, ne = { class: "lkt-item-crud_header-title" }, ie = { class: "lkt-item-crud_header-slot" }, ce = { class: "lkt-item-crud-buttons" }, ve = { key: 1 }, fe = { key: 1 }, pe = {
11
8
  key: 1,
12
9
  class: "lkt-item-crud_content"
13
- }, ye = {
10
+ }, me = {
14
11
  key: 0,
15
12
  class: "lkt-grid-1"
16
- }, Se = { name: "LktItemCrud", inheritAttrs: !1 }, Ce = /* @__PURE__ */ le({
17
- ...Se,
13
+ }, he = { name: "LktItemCrud", inheritAttrs: !1 }, ye = /* @__PURE__ */ le({
14
+ ...he,
18
15
  props: {
19
16
  modelValue: { type: Object, required: !1, default: () => ({}) },
20
17
  title: { type: String, default: "" },
@@ -42,37 +39,37 @@ const ie = { class: "lkt-item-crud" }, ce = {
42
39
  saveValidator: { type: Function, required: !1, default: () => !0 }
43
40
  },
44
41
  emits: ["update:modelValue", "read", "create", "update", "drop", "perms", "error", "modified-data"],
45
- setup(t, { expose: N, emit: z }) {
46
- const e = t, q = ue(), s = z;
42
+ setup(a, { expose: N, emit: z }) {
43
+ const e = a, O = ue(), s = z;
47
44
  let G = [];
48
- const l = n(!0), r = n(e.modelValue), h = n(G), c = n(!1), v = n(!1), f = n(!1), d = n(200), S = n(null), C = n(null), k = n(new oe(r.value)), K = o(() => e.isCreate ? e.createConfirm : e.updateConfirm), T = o(() => e.isCreate ? e.createResource : e.updateResource), Q = o(() => e.isCreate ? { ...e.createData, ...JSON.parse(JSON.stringify(r.value)) } : { ...e.updateData, ...JSON.parse(JSON.stringify(r.value)) }), W = o(() => e.isCreate ? e.createDisabled : e.updateDisabled), D = o(() => !e.isCreate && h.value.includes("update")), b = o(() => !e.isCreate && h.value.includes("drop")), O = async () => {
45
+ const l = n(!0), r = n(e.modelValue), h = n(G), c = n(!1), v = n(!1), f = n(!1), d = n(200), k = n(null), C = n(null), y = n(new oe(r.value)), K = o(() => e.isCreate ? e.createConfirm : e.updateConfirm), T = o(() => e.isCreate ? e.createResource : e.updateResource), Q = o(() => e.isCreate ? { ...e.createData, ...JSON.parse(JSON.stringify(r.value)) } : { ...e.updateData, ...JSON.parse(JSON.stringify(r.value)) }), W = o(() => e.isCreate ? e.createDisabled : e.updateDisabled), D = o(() => !e.isCreate && h.value.includes("update")), b = o(() => !e.isCreate && h.value.includes("drop")), L = async () => {
49
46
  l.value = !0, d.value = -1, f.value = !1;
50
47
  try {
51
- const a = await re(e.readResource, e.readData);
52
- if (l.value = !1, d.value = a.httpStatus, !a.success) {
53
- v.value = !1, d.value = a.httpStatus, s("error", a.httpStatus);
48
+ const t = await re(e.readResource, e.readData);
49
+ if (l.value = !1, d.value = t.httpStatus, !t.success) {
50
+ v.value = !1, d.value = t.httpStatus, s("error", t.httpStatus);
54
51
  return;
55
52
  }
56
- v.value = !0, r.value = a.data, h.value = a.perms, k.value.increment(r.value).turnStoredIntoOriginal(), s("read", a);
53
+ v.value = !0, r.value = t.data, h.value = t.perms, y.value.increment(r.value).turnStoredIntoOriginal(), s("read", t);
57
54
  } catch {
58
55
  l.value = !1, v.value = !1, d.value = 404, s("error", 404);
59
56
  return;
60
57
  }
61
- }, X = o(() => l.value ? !1 : e.title || !!q["post-title"]);
62
- B(() => e.modelValue, (a) => {
63
- r.value = a, k.value.increment(a);
64
- }, { deep: !0 }), B(r, (a) => {
65
- s("update:modelValue", r.value), k.value.increment(a);
58
+ }, X = o(() => l.value ? !1 : e.title || !!O["post-title"]);
59
+ B(() => e.modelValue, (t) => {
60
+ r.value = t, y.value.increment(t);
61
+ }, { deep: !0 }), B(r, (t) => {
62
+ s("update:modelValue", r.value), y.value.increment(t);
66
63
  }, { deep: !0 }), B(h, () => s("perms", h.value));
67
- const $ = o(() => W.value || !e.isCreate && !D.value || typeof e.saveValidator == "function" && !e.saveValidator(r.value) ? !1 : k.value.changed());
68
- B($, (a) => s("modified-data", a)), e.readResource && !e.isCreate ? O() : e.isCreate && (v.value = !0, c.value = !0, l.value = !1);
69
- const Y = (a, u) => {
64
+ const $ = o(() => W.value || !e.isCreate && !D.value || typeof e.saveValidator == "function" && !e.saveValidator(r.value) ? !1 : y.value.changed());
65
+ B($, (t) => s("modified-data", t)), e.readResource && !e.isCreate ? L() : e.isCreate && (v.value = !0, c.value = !0, l.value = !1);
66
+ const Y = (t, u) => {
70
67
  if (l.value = !1, d.value = u.httpStatus, !u.success) {
71
68
  f.value = !0, s("error", u.httpStatus);
72
69
  return;
73
70
  }
74
71
  f.value = !0, s("drop", u);
75
- }, Z = (a, u) => {
72
+ }, Z = (t, u) => {
76
73
  if (T.value) {
77
74
  if (l.value = !1, d.value = u.httpStatus, !u.success) {
78
75
  f.value = !0, s("error", u.httpStatus);
@@ -81,7 +78,7 @@ const ie = { class: "lkt-item-crud" }, ce = {
81
78
  f.value = !0;
82
79
  }
83
80
  let g = e.isCreate ? "create" : "update";
84
- e.isCreate || k.value.turnStoredIntoOriginal(), u.autoReloadId && (e.readData.id = u.autoReloadId, O()), s(g, u);
81
+ e.isCreate || y.value.turnStoredIntoOriginal(), u.autoReloadId && (e.readData.id = u.autoReloadId, L()), s(g, u);
85
82
  }, x = () => {
86
83
  l.value = !0, d.value = -1;
87
84
  }, j = () => {
@@ -91,53 +88,53 @@ const ie = { class: "lkt-item-crud" }, ce = {
91
88
  doDrop: () => {
92
89
  C.value && typeof C.value.click == "function" && C.value.click();
93
90
  },
94
- doRefresh: O,
91
+ doRefresh: L,
95
92
  doSave: () => {
96
- S.value && typeof S.value.click == "function" && S.value.click();
93
+ k.value && typeof k.value.click == "function" && k.value.click();
97
94
  }
98
95
  });
99
96
  const U = o(() => !e.hiddenDrop && !l.value && c.value && v.value), J = o(() => l.value ? !1 : e.isCreate ? !0 : !e.hiddenSave && c.value && v.value), E = o(() => !l.value && !e.isCreate && v.value), ee = o(() => !e.hiddenButtons && (J.value || U.value || E.value));
100
- return (a, u) => {
101
- const g = w("lkt-button"), te = w("lkt-field-switch"), H = w("lkt-http-info"), ae = w("lkt-loader");
102
- return i(), m("article", ie, [
103
- X.value ? (i(), m("header", ce, [
104
- I("h1", ve, M(t.title), 1),
105
- I("div", fe, [
106
- R(a.$slots, "post-title", {
97
+ return (t, u) => {
98
+ const g = w("lkt-button"), te = w("lkt-field-switch"), A = w("lkt-http-info"), ae = w("lkt-loader");
99
+ return i(), m("article", se, [
100
+ X.value ? (i(), m("header", de, [
101
+ M("h1", ne, I(a.title), 1),
102
+ M("div", ie, [
103
+ R(t.$slots, "post-title", {
107
104
  item: r.value,
108
105
  loading: l.value
109
106
  })
110
107
  ])
111
- ])) : y("", !0),
112
- V(I("div", pe, [
113
- t.isCreate ? y("", !0) : V((i(), _(g, {
108
+ ])) : S("", !0),
109
+ V(M("div", ce, [
110
+ a.isCreate ? S("", !0) : V((i(), _(g, {
114
111
  key: 0,
115
112
  ref: (p) => C.value = p,
116
113
  palette: "danger",
117
- disabled: t.dropDisabled || !b.value,
118
- "confirm-modal": t.dropConfirm,
119
- resource: t.dropResource,
120
- "resource-data": t.dropData,
114
+ disabled: a.dropDisabled || !b.value,
115
+ "confirm-modal": a.dropConfirm,
116
+ resource: a.dropResource,
117
+ "resource-data": a.dropData,
121
118
  onLoading: x,
122
119
  onLoaded: j,
123
120
  onClick: Y
124
121
  }, {
125
- default: A(() => [
126
- F(q)["button-drop"] ? R(a.$slots, "button-drop", {
122
+ default: F(() => [
123
+ H(O)["button-drop"] ? R(t.$slots, "button-drop", {
127
124
  key: 0,
128
125
  item: r.value,
129
126
  editMode: c.value,
130
- isCreate: t.isCreate,
127
+ isCreate: a.isCreate,
131
128
  canUpdate: D.value,
132
129
  canDrop: b.value
133
- }) : (i(), m("span", me, M(t.dropText), 1))
130
+ }) : (i(), m("span", ve, I(a.dropText), 1))
134
131
  ]),
135
132
  _: 3
136
133
  }, 8, ["disabled", "confirm-modal", "resource", "resource-data"])), [
137
- [L, U.value]
134
+ [q, U.value]
138
135
  ]),
139
136
  V(P(g, {
140
- ref: (p) => S.value = p,
137
+ ref: (p) => k.value = p,
141
138
  palette: "success",
142
139
  disabled: !$.value,
143
140
  "confirm-modal": K.value,
@@ -147,63 +144,62 @@ const ie = { class: "lkt-item-crud" }, ce = {
147
144
  onLoaded: j,
148
145
  onClick: Z
149
146
  }, {
150
- default: A(() => [
151
- F(q)["button-save"] ? R(a.$slots, "button-save", {
147
+ default: F(() => [
148
+ H(O)["button-save"] ? R(t.$slots, "button-save", {
152
149
  key: 0,
153
150
  item: r.value,
154
151
  editMode: c.value,
155
- isCreate: t.isCreate,
152
+ isCreate: a.isCreate,
156
153
  canUpdate: D.value,
157
154
  canDrop: b.value
158
- }) : (i(), m("span", he, M(t.saveText), 1))
155
+ }) : (i(), m("span", fe, I(a.saveText), 1))
159
156
  ]),
160
157
  _: 3
161
158
  }, 8, ["disabled", "confirm-modal", "resource", "resource-data"]), [
162
- [L, J.value]
159
+ [q, J.value]
163
160
  ]),
164
161
  V(P(te, {
165
162
  modelValue: c.value,
166
163
  "onUpdate:modelValue": u[0] || (u[0] = (p) => c.value = p),
167
- label: t.editModeText
164
+ label: a.editModeText
168
165
  }, null, 8, ["modelValue", "label"]), [
169
- [L, E.value]
166
+ [q, E.value]
170
167
  ])
171
168
  ], 512), [
172
- [L, ee.value]
169
+ [q, ee.value]
173
170
  ]),
174
- l.value ? y("", !0) : (i(), m("div", ke, [
175
- v.value ? (i(), m("div", ye, [
176
- f.value ? (i(), _(H, {
171
+ l.value ? S("", !0) : (i(), m("div", pe, [
172
+ v.value ? (i(), m("div", me, [
173
+ f.value ? (i(), _(A, {
177
174
  key: 0,
178
175
  code: d.value,
179
176
  quick: "",
180
177
  palette: d.value === 200 ? "success" : "danger",
181
178
  "can-close": "",
182
179
  onClose: u[1] || (u[1] = (p) => f.value = !1)
183
- }, null, 8, ["code", "palette"])) : y("", !0),
184
- R(a.$slots, "item", {
180
+ }, null, 8, ["code", "palette"])) : S("", !0),
181
+ R(t.$slots, "item", {
185
182
  item: r.value,
186
183
  loading: l.value,
187
184
  editMode: c.value,
188
- isCreate: t.isCreate,
185
+ isCreate: a.isCreate,
189
186
  canUpdate: D.value,
190
187
  canDrop: b.value
191
188
  })
192
- ])) : (i(), _(H, {
189
+ ])) : (i(), _(A, {
193
190
  key: 1,
194
191
  code: d.value
195
192
  }, null, 8, ["code"]))
196
193
  ])),
197
- l.value ? (i(), _(ae, { key: 2 })) : y("", !0)
194
+ l.value ? (i(), _(ae, { key: 2 })) : S("", !0)
198
195
  ]);
199
196
  };
200
197
  }
201
- });
202
- const Le = {
203
- install: (t, N = {}) => {
204
- t.component("lkt-item-crud") === void 0 && t.component("lkt-item-crud", Ce), t.component("lkt-button") === void 0 && t.use(se), t.component("lkt-http-info") === void 0 && t.use(de), t.component("lkt-loader") === void 0 && t.use(ne);
198
+ }), ge = {
199
+ install: (a, N = {}) => {
200
+ a.component("lkt-item-crud") === void 0 && a.component("lkt-item-crud", ye);
205
201
  }
206
202
  };
207
203
  export {
208
- Le as default
204
+ ge as default
209
205
  };
@@ -0,0 +1,4 @@
1
+ import { Plugin } from "vue";
2
+ import "./../lkt-item-crud.css";
3
+ declare const LktItemCrud: Plugin;
4
+ export default LktItemCrud;
@@ -0,0 +1,283 @@
1
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
2
+ modelValue: {
3
+ type: ObjectConstructor;
4
+ required: false;
5
+ default: () => {};
6
+ };
7
+ title: {
8
+ type: StringConstructor;
9
+ default: string;
10
+ };
11
+ editModeText: {
12
+ type: StringConstructor;
13
+ default: string;
14
+ };
15
+ saveText: {
16
+ type: StringConstructor;
17
+ default: string;
18
+ };
19
+ dropText: {
20
+ type: StringConstructor;
21
+ default: string;
22
+ };
23
+ hiddenSave: {
24
+ type: BooleanConstructor;
25
+ default: boolean;
26
+ };
27
+ hiddenDrop: {
28
+ type: BooleanConstructor;
29
+ default: boolean;
30
+ };
31
+ hiddenButtons: {
32
+ type: BooleanConstructor;
33
+ default: boolean;
34
+ };
35
+ readResource: {
36
+ type: StringConstructor;
37
+ required: false;
38
+ };
39
+ createResource: {
40
+ type: StringConstructor;
41
+ required: false;
42
+ };
43
+ updateResource: {
44
+ type: StringConstructor;
45
+ required: false;
46
+ };
47
+ dropResource: {
48
+ type: StringConstructor;
49
+ required: false;
50
+ };
51
+ readData: {
52
+ type: ObjectConstructor;
53
+ required: false;
54
+ default: () => {};
55
+ };
56
+ createData: {
57
+ type: ObjectConstructor;
58
+ required: false;
59
+ default: () => {};
60
+ };
61
+ updateData: {
62
+ type: ObjectConstructor;
63
+ required: false;
64
+ default: () => {};
65
+ };
66
+ dropData: {
67
+ type: ObjectConstructor;
68
+ required: false;
69
+ default: () => {};
70
+ };
71
+ isCreate: {
72
+ type: BooleanConstructor;
73
+ default: boolean;
74
+ };
75
+ createConfirm: {
76
+ type: StringConstructor;
77
+ default: string;
78
+ };
79
+ updateConfirm: {
80
+ type: StringConstructor;
81
+ default: string;
82
+ };
83
+ dropConfirm: {
84
+ type: StringConstructor;
85
+ default: string;
86
+ };
87
+ createDisabled: {
88
+ type: BooleanConstructor;
89
+ default: boolean;
90
+ };
91
+ updateDisabled: {
92
+ type: BooleanConstructor;
93
+ default: boolean;
94
+ };
95
+ dropDisabled: {
96
+ type: BooleanConstructor;
97
+ default: boolean;
98
+ };
99
+ saveValidator: {
100
+ type: FunctionConstructor;
101
+ required: false;
102
+ default: () => boolean;
103
+ };
104
+ }, {
105
+ doDrop: () => void;
106
+ doRefresh: () => Promise<void>;
107
+ doSave: () => void;
108
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
109
+ error: (...args: any[]) => void;
110
+ drop: (...args: any[]) => void;
111
+ update: (...args: any[]) => void;
112
+ "update:modelValue": (...args: any[]) => void;
113
+ read: (...args: any[]) => void;
114
+ create: (...args: any[]) => void;
115
+ perms: (...args: any[]) => void;
116
+ "modified-data": (...args: any[]) => void;
117
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
118
+ modelValue: {
119
+ type: ObjectConstructor;
120
+ required: false;
121
+ default: () => {};
122
+ };
123
+ title: {
124
+ type: StringConstructor;
125
+ default: string;
126
+ };
127
+ editModeText: {
128
+ type: StringConstructor;
129
+ default: string;
130
+ };
131
+ saveText: {
132
+ type: StringConstructor;
133
+ default: string;
134
+ };
135
+ dropText: {
136
+ type: StringConstructor;
137
+ default: string;
138
+ };
139
+ hiddenSave: {
140
+ type: BooleanConstructor;
141
+ default: boolean;
142
+ };
143
+ hiddenDrop: {
144
+ type: BooleanConstructor;
145
+ default: boolean;
146
+ };
147
+ hiddenButtons: {
148
+ type: BooleanConstructor;
149
+ default: boolean;
150
+ };
151
+ readResource: {
152
+ type: StringConstructor;
153
+ required: false;
154
+ };
155
+ createResource: {
156
+ type: StringConstructor;
157
+ required: false;
158
+ };
159
+ updateResource: {
160
+ type: StringConstructor;
161
+ required: false;
162
+ };
163
+ dropResource: {
164
+ type: StringConstructor;
165
+ required: false;
166
+ };
167
+ readData: {
168
+ type: ObjectConstructor;
169
+ required: false;
170
+ default: () => {};
171
+ };
172
+ createData: {
173
+ type: ObjectConstructor;
174
+ required: false;
175
+ default: () => {};
176
+ };
177
+ updateData: {
178
+ type: ObjectConstructor;
179
+ required: false;
180
+ default: () => {};
181
+ };
182
+ dropData: {
183
+ type: ObjectConstructor;
184
+ required: false;
185
+ default: () => {};
186
+ };
187
+ isCreate: {
188
+ type: BooleanConstructor;
189
+ default: boolean;
190
+ };
191
+ createConfirm: {
192
+ type: StringConstructor;
193
+ default: string;
194
+ };
195
+ updateConfirm: {
196
+ type: StringConstructor;
197
+ default: string;
198
+ };
199
+ dropConfirm: {
200
+ type: StringConstructor;
201
+ default: string;
202
+ };
203
+ createDisabled: {
204
+ type: BooleanConstructor;
205
+ default: boolean;
206
+ };
207
+ updateDisabled: {
208
+ type: BooleanConstructor;
209
+ default: boolean;
210
+ };
211
+ dropDisabled: {
212
+ type: BooleanConstructor;
213
+ default: boolean;
214
+ };
215
+ saveValidator: {
216
+ type: FunctionConstructor;
217
+ required: false;
218
+ default: () => boolean;
219
+ };
220
+ }>> & {
221
+ onError?: ((...args: any[]) => any) | undefined;
222
+ onDrop?: ((...args: any[]) => any) | undefined;
223
+ onUpdate?: ((...args: any[]) => any) | undefined;
224
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
225
+ onRead?: ((...args: any[]) => any) | undefined;
226
+ onCreate?: ((...args: any[]) => any) | undefined;
227
+ onPerms?: ((...args: any[]) => any) | undefined;
228
+ "onModified-data"?: ((...args: any[]) => any) | undefined;
229
+ }, {
230
+ title: string;
231
+ modelValue: Record<string, any>;
232
+ editModeText: string;
233
+ saveText: string;
234
+ dropText: string;
235
+ hiddenSave: boolean;
236
+ hiddenDrop: boolean;
237
+ hiddenButtons: boolean;
238
+ readData: Record<string, any>;
239
+ createData: Record<string, any>;
240
+ updateData: Record<string, any>;
241
+ dropData: Record<string, any>;
242
+ isCreate: boolean;
243
+ createConfirm: string;
244
+ updateConfirm: string;
245
+ dropConfirm: string;
246
+ createDisabled: boolean;
247
+ updateDisabled: boolean;
248
+ dropDisabled: boolean;
249
+ saveValidator: Function;
250
+ }, {}>, {
251
+ "post-title"?(_: {
252
+ item: Record<string, any>;
253
+ loading: boolean;
254
+ }): any;
255
+ "button-drop"?(_: {
256
+ item: Record<string, any>;
257
+ editMode: boolean;
258
+ isCreate: false;
259
+ canUpdate: boolean;
260
+ canDrop: boolean;
261
+ }): any;
262
+ "button-save"?(_: {
263
+ item: Record<string, any>;
264
+ editMode: boolean;
265
+ isCreate: boolean;
266
+ canUpdate: boolean;
267
+ canDrop: boolean;
268
+ }): any;
269
+ item?(_: {
270
+ item: Record<string, any>;
271
+ loading: false;
272
+ editMode: boolean;
273
+ isCreate: boolean;
274
+ canUpdate: boolean;
275
+ canDrop: boolean;
276
+ }): any;
277
+ }>;
278
+ export default _default;
279
+ type __VLS_WithTemplateSlots<T, S> = T & {
280
+ new (): {
281
+ $slots: S;
282
+ };
283
+ };
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .lkt-item-crud{display:flex;flex-direction:column;gap:var(--gap)}.lkt-item-crud_content{display:flex;flex-direction:column;gap:15px}.lkt-item-crud-buttons{position:sticky;top:calc(-1 * var(--gap));display:flex;align-items:center;gap:var(--gap);transition:all linear .15s;background:#ffffff;z-index:2}.lkt-item-crud-buttons>:last-child{margin-left:auto}
1
+ .lkt-item-crud{display:flex;flex-direction:column;gap:var(--gap)}.lkt-item-crud_content{display:flex;flex-direction:column;gap:15px}.lkt-item-crud-buttons{position:sticky;top:calc(-1 * var(--gap));display:flex;align-items:center;gap:var(--gap);transition:all linear .15s;background:#fff;z-index:2}.lkt-item-crud-buttons>:last-child{margin-left:auto}
package/package.json CHANGED
@@ -1,61 +1,36 @@
1
1
  {
2
2
  "name": "lkt-item-crud",
3
- "version": "1.0.12",
3
+ "version": "1.1.1",
4
4
  "description": "",
5
- "main": "src/index.ts",
6
- "module": "src/index.ts",
7
- "files": [
8
- "dist/*",
9
- "src/**/*.vue"
10
- ],
11
- "sideEffects": false,
5
+ "type": "module",
6
+ "module": "./dist/build.js",
12
7
  "exports": {
13
8
  ".": {
14
- "import": "./dist/lkt-item-crud.es.js",
15
- "require": "./dist/lkt-item-crud.umd.js"
9
+ "import": "./dist/build.js"
16
10
  },
17
- "./dist/style.css": "./dist/style.css"
11
+ "./styles": "./dist/style.css"
18
12
  },
19
- "types": "./dist/types/index.d.ts",
13
+ "types": "./dist/index.d.ts",
14
+ "files": ["dist/*", "src/**/*.vue"],
15
+ "license": "MIT",
16
+ "sideEffects": false,
20
17
  "scripts": {
21
- "serve": "vite",
22
- "build": "vite build && vue-tsc --emitDeclarationOnly --project tsconfig.json && mv dist/src dist/types",
23
- "build2": "vite build",
24
- "preview": "vite preview",
25
- "test": "jest",
26
- "test-coverage": "vitest run --coverage"
18
+ "build": "rm -rf dist/*; vue-tsc --declaration --emitDeclarationOnly; vite build; tsc --project tsconfig.build.json; cp build/* dist/"
27
19
  },
28
20
  "author": "Antonio Ibáñez",
29
21
  "devDependencies": {
30
- "@babel/core": "^7.13.13",
31
- "@babel/preset-env": "^7.13.12",
32
- "@babel/types": "^7.18.9",
33
- "@testing-library/cypress": "^7.0.4",
34
- "@testing-library/dom": "^7.30.1",
35
- "@testing-library/jest-dom": "^5.11.10",
36
- "@types/jest": "^29.0.1",
37
- "@types/node": "^18.6.2",
38
- "@typescript-eslint/eslint-plugin": "^5.36.2",
39
- "@typescript-eslint/parser": "^5.36.2",
40
- "@vitejs/plugin-vue": "^3.0.1",
41
- "babel-eslint": "^10.1.0",
42
- "babel-jest": "^29.0.3",
43
- "babel-loader": "^8.2.2",
44
- "cypress": "^6.8.0",
45
- "eslint": "8.22.0",
46
- "eslint-config-prettier": "^8.1.0",
47
- "eslint-plugin-cypress": "^2.11.2",
48
- "eslint-plugin-html": "^7.1.0",
49
- "eslint-plugin-import": "^2.22.1",
50
- "eslint-plugin-jest": "^24.3.2",
51
- "eslint-plugin-prettier": "^3.3.1",
52
- "eslint-plugin-simple-import-sort": "^7.0.0",
53
- "jest": "^29.0.3",
54
- "prettier": "^2.7.1",
55
- "ts-jest": "^29.0.0",
56
- "typescript": "^4.8.3",
57
- "vite": "^3.1.2",
58
- "vue-tsc": "^0.38.9"
22
+ "@babel/types": "^7.23.6",
23
+ "@types/node": "^20.11.19",
24
+ "@types/rollup": "^0.54.0",
25
+ "@vitejs/plugin-vue": "^5.0.4",
26
+ "rollup": "^4.9.6",
27
+ "typescript": "^5.3.3",
28
+ "vite": "^5.1.3",
29
+ "vue": "^3.3.0",
30
+ "vue-tsc": "^1.8.27"
31
+ },
32
+ "engines": {
33
+ "node": ">=18"
59
34
  },
60
35
  "dependencies": {
61
36
  "lkt-button": "^1.0.14",
@@ -67,10 +42,6 @@
67
42
  "lkt-loader": "^1.0.2",
68
43
  "lkt-string-tools": "^1.0.2",
69
44
  "lkt-ts-interfaces": "^1.0.2",
70
- "path": "^0.12.7",
71
- "vue": "^3.3.0"
72
- },
73
- "engines": {
74
- "node": ">=18"
45
+ "path": "^0.12.7"
75
46
  }
76
47
  }
@@ -1,2 +0,0 @@
1
- export const preset: string;
2
- export const testEnvironment: string;
@@ -1 +0,0 @@
1
- (function(e,p){typeof exports=="object"&&typeof module<"u"?module.exports=p(require("vue"),require("lkt-http-client"),require("lkt-data-state"),require("lkt-button"),require("lkt-http-info"),require("lkt-loader")):typeof define=="function"&&define.amd?define(["vue","lkt-http-client","lkt-data-state","lkt-button","lkt-http-info","lkt-loader"],p):(e=typeof globalThis<"u"?globalThis:e||self,e.LktItemCrud=p(e.Vue,e.LktHttpClient,e.LktDataState,e.LktButton,e.LktHttpInfo,e.LktLoader))})(this,function(e,p,O,E,T,x){"use strict";const B=a=>a&&typeof a=="object"&&"default"in a?a:{default:a},M=B(E),j=B(T),$=B(x),U={class:"lkt-item-crud"},H={key:0,class:"lkt-item-crud_header"},J={class:"lkt-item-crud_header-title"},A={class:"lkt-item-crud_header-slot"},F={class:"lkt-item-crud-buttons"},P={key:1},z={key:1},G={key:1,class:"lkt-item-crud_content"},K={key:0,class:"lkt-grid-1"},Q={name:"LktItemCrud",inheritAttrs:!1},W=e.defineComponent({...Q,props:{modelValue:{type:Object,required:!1,default:()=>({})},title:{type:String,default:""},editModeText:{type:String,default:"Edition Mode"},saveText:{type:String,default:"Save"},dropText:{type:String,default:"Delete"},hiddenSave:{type:Boolean,default:!1},hiddenDrop:{type:Boolean,default:!1},hiddenButtons:{type:Boolean,default:!1},readResource:{type:String,required:!1},createResource:{type:String,required:!1},updateResource:{type:String,required:!1},dropResource:{type:String,required:!1},readData:{type:Object,required:!1,default:()=>({})},createData:{type:Object,required:!1,default:()=>({})},updateData:{type:Object,required:!1,default:()=>({})},dropData:{type:Object,required:!1,default:()=>({})},isCreate:{type:Boolean,default:!1},createConfirm:{type:String,default:""},updateConfirm:{type:String,default:""},dropConfirm:{type:String,default:""},createDisabled:{type:Boolean,default:!1},updateDisabled:{type:Boolean,default:!1},dropDisabled:{type:Boolean,default:!1},saveValidator:{type:Function,required:!1,default:()=>!0}},emits:["update:modelValue","read","create","update","drop","perms","error","modified-data"],setup(a,{expose:g,emit:X}){const t=a,D=e.useSlots(),d=X;let Y=[];const o=e.ref(!0),n=e.ref(t.modelValue),m=e.ref(Y),u=e.ref(!1),i=e.ref(!1),c=e.ref(!1),s=e.ref(200),h=e.ref(null),v=e.ref(null),k=e.ref(new O.DataState(n.value)),Z=e.computed(()=>t.isCreate?t.createConfirm:t.updateConfirm),w=e.computed(()=>t.isCreate?t.createResource:t.updateResource),ee=e.computed(()=>t.isCreate?{...t.createData,...JSON.parse(JSON.stringify(n.value))}:{...t.updateData,...JSON.parse(JSON.stringify(n.value))}),te=e.computed(()=>t.isCreate?t.createDisabled:t.updateDisabled),S=e.computed(()=>!t.isCreate&&m.value.includes("update")),y=e.computed(()=>!t.isCreate&&m.value.includes("drop")),b=async()=>{o.value=!0,s.value=-1,c.value=!1;try{const l=await p.httpCall(t.readResource,t.readData);if(o.value=!1,s.value=l.httpStatus,!l.success){i.value=!1,s.value=l.httpStatus,d("error",l.httpStatus);return}i.value=!0,n.value=l.data,m.value=l.perms,k.value.increment(n.value).turnStoredIntoOriginal(),d("read",l)}catch{o.value=!1,i.value=!1,s.value=404,d("error",404);return}},ae=e.computed(()=>o.value?!1:t.title||!!D["post-title"]);e.watch(()=>t.modelValue,l=>{n.value=l,k.value.increment(l)},{deep:!0}),e.watch(n,l=>{d("update:modelValue",n.value),k.value.increment(l)},{deep:!0}),e.watch(m,()=>d("perms",m.value));const L=e.computed(()=>te.value||!t.isCreate&&!S.value||typeof t.saveValidator=="function"&&!t.saveValidator(n.value)?!1:k.value.changed());e.watch(L,l=>d("modified-data",l)),t.readResource&&!t.isCreate?b():t.isCreate&&(i.value=!0,u.value=!0,o.value=!1);const le=(l,r)=>{if(o.value=!1,s.value=r.httpStatus,!r.success){c.value=!0,d("error",r.httpStatus);return}c.value=!0,d("drop",r)},oe=(l,r)=>{if(w.value){if(o.value=!1,s.value=r.httpStatus,!r.success){c.value=!0,d("error",r.httpStatus);return}c.value=!0}let C=t.isCreate?"create":"update";t.isCreate||k.value.turnStoredIntoOriginal(),r.autoReloadId&&(t.readData.id=r.autoReloadId,b()),d(C,r)},V=()=>{o.value=!0,s.value=-1},_=()=>{o.value=!1};g({doDrop:()=>{v.value&&typeof v.value.click=="function"&&v.value.click()},doRefresh:b,doSave:()=>{h.value&&typeof h.value.click=="function"&&h.value.click()}});const q=e.computed(()=>!t.hiddenDrop&&!o.value&&u.value&&i.value),N=e.computed(()=>o.value?!1:t.isCreate?!0:!t.hiddenSave&&u.value&&i.value),R=e.computed(()=>!o.value&&!t.isCreate&&i.value),re=e.computed(()=>!t.hiddenButtons&&(N.value||q.value||R.value));return(l,r)=>{const C=e.resolveComponent("lkt-button"),ne=e.resolveComponent("lkt-field-switch"),I=e.resolveComponent("lkt-http-info"),de=e.resolveComponent("lkt-loader");return e.openBlock(),e.createElementBlock("article",U,[ae.value?(e.openBlock(),e.createElementBlock("header",H,[e.createElementVNode("h1",J,e.toDisplayString(a.title),1),e.createElementVNode("div",A,[e.renderSlot(l.$slots,"post-title",{item:n.value,loading:o.value})])])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",F,[a.isCreate?e.createCommentVNode("",!0):e.withDirectives((e.openBlock(),e.createBlock(C,{key:0,ref:f=>v.value=f,palette:"danger",disabled:a.dropDisabled||!y.value,"confirm-modal":a.dropConfirm,resource:a.dropResource,"resource-data":a.dropData,onLoading:V,onLoaded:_,onClick:le},{default:e.withCtx(()=>[e.unref(D)["button-drop"]?e.renderSlot(l.$slots,"button-drop",{key:0,item:n.value,editMode:u.value,isCreate:a.isCreate,canUpdate:S.value,canDrop:y.value}):(e.openBlock(),e.createElementBlock("span",P,e.toDisplayString(a.dropText),1))]),_:3},8,["disabled","confirm-modal","resource","resource-data"])),[[e.vShow,q.value]]),e.withDirectives(e.createVNode(C,{ref:f=>h.value=f,palette:"success",disabled:!L.value,"confirm-modal":Z.value,resource:w.value,"resource-data":ee.value,onLoading:V,onLoaded:_,onClick:oe},{default:e.withCtx(()=>[e.unref(D)["button-save"]?e.renderSlot(l.$slots,"button-save",{key:0,item:n.value,editMode:u.value,isCreate:a.isCreate,canUpdate:S.value,canDrop:y.value}):(e.openBlock(),e.createElementBlock("span",z,e.toDisplayString(a.saveText),1))]),_:3},8,["disabled","confirm-modal","resource","resource-data"]),[[e.vShow,N.value]]),e.withDirectives(e.createVNode(ne,{modelValue:u.value,"onUpdate:modelValue":r[0]||(r[0]=f=>u.value=f),label:a.editModeText},null,8,["modelValue","label"]),[[e.vShow,R.value]])],512),[[e.vShow,re.value]]),o.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",G,[i.value?(e.openBlock(),e.createElementBlock("div",K,[c.value?(e.openBlock(),e.createBlock(I,{key:0,code:s.value,quick:"",palette:s.value===200?"success":"danger","can-close":"",onClose:r[1]||(r[1]=f=>c.value=!1)},null,8,["code","palette"])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"item",{item:n.value,loading:o.value,editMode:u.value,isCreate:a.isCreate,canUpdate:S.value,canDrop:y.value})])):(e.openBlock(),e.createBlock(I,{key:1,code:s.value},null,8,["code"]))])),o.value?(e.openBlock(),e.createBlock(de,{key:2})):e.createCommentVNode("",!0)])}}}),se="";return{install:(a,g={})=>{a.component("lkt-item-crud")===void 0&&a.component("lkt-item-crud",W),a.component("lkt-button")===void 0&&a.use(M.default),a.component("lkt-http-info")===void 0&&a.use(j.default),a.component("lkt-loader")===void 0&&a.use($.default)}}});
@@ -1,6 +0,0 @@
1
- import { App } from "vue";
2
- import "./../lkt-item-crud.css";
3
- declare const LktItemCrud: {
4
- install: (app: App, options?: {}) => void;
5
- };
6
- export default LktItemCrud;
@@ -1,566 +0,0 @@
1
- declare const _default: {
2
- new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
3
- modelValue: {
4
- type: ObjectConstructor;
5
- required: false;
6
- default: () => {};
7
- };
8
- title: {
9
- type: StringConstructor;
10
- default: string;
11
- };
12
- editModeText: {
13
- type: StringConstructor;
14
- default: string;
15
- };
16
- saveText: {
17
- type: StringConstructor;
18
- default: string;
19
- };
20
- dropText: {
21
- type: StringConstructor;
22
- default: string;
23
- };
24
- hiddenSave: {
25
- type: BooleanConstructor;
26
- default: boolean;
27
- };
28
- hiddenDrop: {
29
- type: BooleanConstructor;
30
- default: boolean;
31
- };
32
- hiddenButtons: {
33
- type: BooleanConstructor;
34
- default: boolean;
35
- };
36
- readResource: {
37
- type: StringConstructor;
38
- required: false;
39
- };
40
- createResource: {
41
- type: StringConstructor;
42
- required: false;
43
- };
44
- updateResource: {
45
- type: StringConstructor;
46
- required: false;
47
- };
48
- dropResource: {
49
- type: StringConstructor;
50
- required: false;
51
- };
52
- readData: {
53
- type: ObjectConstructor;
54
- required: false;
55
- default: () => {};
56
- };
57
- createData: {
58
- type: ObjectConstructor;
59
- required: false;
60
- default: () => {};
61
- };
62
- updateData: {
63
- type: ObjectConstructor;
64
- required: false;
65
- default: () => {};
66
- };
67
- dropData: {
68
- type: ObjectConstructor;
69
- required: false;
70
- default: () => {};
71
- };
72
- isCreate: {
73
- type: BooleanConstructor;
74
- default: boolean;
75
- };
76
- createConfirm: {
77
- type: StringConstructor;
78
- default: string;
79
- };
80
- updateConfirm: {
81
- type: StringConstructor;
82
- default: string;
83
- };
84
- dropConfirm: {
85
- type: StringConstructor;
86
- default: string;
87
- };
88
- createDisabled: {
89
- type: BooleanConstructor;
90
- default: boolean;
91
- };
92
- updateDisabled: {
93
- type: BooleanConstructor;
94
- default: boolean;
95
- };
96
- dropDisabled: {
97
- type: BooleanConstructor;
98
- default: boolean;
99
- };
100
- saveValidator: {
101
- type: FunctionConstructor;
102
- required: false;
103
- default: () => boolean;
104
- };
105
- }>> & {
106
- onError?: ((...args: any[]) => any) | undefined;
107
- onDrop?: ((...args: any[]) => any) | undefined;
108
- onUpdate?: ((...args: any[]) => any) | undefined;
109
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
110
- onRead?: ((...args: any[]) => any) | undefined;
111
- onCreate?: ((...args: any[]) => any) | undefined;
112
- onPerms?: ((...args: any[]) => any) | undefined;
113
- "onModified-data"?: ((...args: any[]) => any) | undefined;
114
- }, {
115
- doDrop: () => void;
116
- doRefresh: () => Promise<void>;
117
- doSave: () => void;
118
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("error" | "drop" | "update" | "update:modelValue" | "read" | "create" | "perms" | "modified-data")[], import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
119
- modelValue: {
120
- type: ObjectConstructor;
121
- required: false;
122
- default: () => {};
123
- };
124
- title: {
125
- type: StringConstructor;
126
- default: string;
127
- };
128
- editModeText: {
129
- type: StringConstructor;
130
- default: string;
131
- };
132
- saveText: {
133
- type: StringConstructor;
134
- default: string;
135
- };
136
- dropText: {
137
- type: StringConstructor;
138
- default: string;
139
- };
140
- hiddenSave: {
141
- type: BooleanConstructor;
142
- default: boolean;
143
- };
144
- hiddenDrop: {
145
- type: BooleanConstructor;
146
- default: boolean;
147
- };
148
- hiddenButtons: {
149
- type: BooleanConstructor;
150
- default: boolean;
151
- };
152
- readResource: {
153
- type: StringConstructor;
154
- required: false;
155
- };
156
- createResource: {
157
- type: StringConstructor;
158
- required: false;
159
- };
160
- updateResource: {
161
- type: StringConstructor;
162
- required: false;
163
- };
164
- dropResource: {
165
- type: StringConstructor;
166
- required: false;
167
- };
168
- readData: {
169
- type: ObjectConstructor;
170
- required: false;
171
- default: () => {};
172
- };
173
- createData: {
174
- type: ObjectConstructor;
175
- required: false;
176
- default: () => {};
177
- };
178
- updateData: {
179
- type: ObjectConstructor;
180
- required: false;
181
- default: () => {};
182
- };
183
- dropData: {
184
- type: ObjectConstructor;
185
- required: false;
186
- default: () => {};
187
- };
188
- isCreate: {
189
- type: BooleanConstructor;
190
- default: boolean;
191
- };
192
- createConfirm: {
193
- type: StringConstructor;
194
- default: string;
195
- };
196
- updateConfirm: {
197
- type: StringConstructor;
198
- default: string;
199
- };
200
- dropConfirm: {
201
- type: StringConstructor;
202
- default: string;
203
- };
204
- createDisabled: {
205
- type: BooleanConstructor;
206
- default: boolean;
207
- };
208
- updateDisabled: {
209
- type: BooleanConstructor;
210
- default: boolean;
211
- };
212
- dropDisabled: {
213
- type: BooleanConstructor;
214
- default: boolean;
215
- };
216
- saveValidator: {
217
- type: FunctionConstructor;
218
- required: false;
219
- default: () => boolean;
220
- };
221
- }>> & {
222
- onError?: ((...args: any[]) => any) | undefined;
223
- onDrop?: ((...args: any[]) => any) | undefined;
224
- onUpdate?: ((...args: any[]) => any) | undefined;
225
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
226
- onRead?: ((...args: any[]) => any) | undefined;
227
- onCreate?: ((...args: any[]) => any) | undefined;
228
- onPerms?: ((...args: any[]) => any) | undefined;
229
- "onModified-data"?: ((...args: any[]) => any) | undefined;
230
- }, {
231
- title: string;
232
- modelValue: Record<string, any>;
233
- editModeText: string;
234
- saveText: string;
235
- dropText: string;
236
- hiddenSave: boolean;
237
- hiddenDrop: boolean;
238
- hiddenButtons: boolean;
239
- readData: Record<string, any>;
240
- createData: Record<string, any>;
241
- updateData: Record<string, any>;
242
- dropData: Record<string, any>;
243
- isCreate: boolean;
244
- createConfirm: string;
245
- updateConfirm: string;
246
- dropConfirm: string;
247
- createDisabled: boolean;
248
- updateDisabled: boolean;
249
- dropDisabled: boolean;
250
- saveValidator: Function;
251
- }, true, {}, {}, {
252
- P: {};
253
- B: {};
254
- D: {};
255
- C: {};
256
- M: {};
257
- Defaults: {};
258
- }, Readonly<import("vue").ExtractPropTypes<{
259
- modelValue: {
260
- type: ObjectConstructor;
261
- required: false;
262
- default: () => {};
263
- };
264
- title: {
265
- type: StringConstructor;
266
- default: string;
267
- };
268
- editModeText: {
269
- type: StringConstructor;
270
- default: string;
271
- };
272
- saveText: {
273
- type: StringConstructor;
274
- default: string;
275
- };
276
- dropText: {
277
- type: StringConstructor;
278
- default: string;
279
- };
280
- hiddenSave: {
281
- type: BooleanConstructor;
282
- default: boolean;
283
- };
284
- hiddenDrop: {
285
- type: BooleanConstructor;
286
- default: boolean;
287
- };
288
- hiddenButtons: {
289
- type: BooleanConstructor;
290
- default: boolean;
291
- };
292
- readResource: {
293
- type: StringConstructor;
294
- required: false;
295
- };
296
- createResource: {
297
- type: StringConstructor;
298
- required: false;
299
- };
300
- updateResource: {
301
- type: StringConstructor;
302
- required: false;
303
- };
304
- dropResource: {
305
- type: StringConstructor;
306
- required: false;
307
- };
308
- readData: {
309
- type: ObjectConstructor;
310
- required: false;
311
- default: () => {};
312
- };
313
- createData: {
314
- type: ObjectConstructor;
315
- required: false;
316
- default: () => {};
317
- };
318
- updateData: {
319
- type: ObjectConstructor;
320
- required: false;
321
- default: () => {};
322
- };
323
- dropData: {
324
- type: ObjectConstructor;
325
- required: false;
326
- default: () => {};
327
- };
328
- isCreate: {
329
- type: BooleanConstructor;
330
- default: boolean;
331
- };
332
- createConfirm: {
333
- type: StringConstructor;
334
- default: string;
335
- };
336
- updateConfirm: {
337
- type: StringConstructor;
338
- default: string;
339
- };
340
- dropConfirm: {
341
- type: StringConstructor;
342
- default: string;
343
- };
344
- createDisabled: {
345
- type: BooleanConstructor;
346
- default: boolean;
347
- };
348
- updateDisabled: {
349
- type: BooleanConstructor;
350
- default: boolean;
351
- };
352
- dropDisabled: {
353
- type: BooleanConstructor;
354
- default: boolean;
355
- };
356
- saveValidator: {
357
- type: FunctionConstructor;
358
- required: false;
359
- default: () => boolean;
360
- };
361
- }>> & {
362
- onError?: ((...args: any[]) => any) | undefined;
363
- onDrop?: ((...args: any[]) => any) | undefined;
364
- onUpdate?: ((...args: any[]) => any) | undefined;
365
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
366
- onRead?: ((...args: any[]) => any) | undefined;
367
- onCreate?: ((...args: any[]) => any) | undefined;
368
- onPerms?: ((...args: any[]) => any) | undefined;
369
- "onModified-data"?: ((...args: any[]) => any) | undefined;
370
- }, {
371
- doDrop: () => void;
372
- doRefresh: () => Promise<void>;
373
- doSave: () => void;
374
- }, {}, {}, {}, {
375
- title: string;
376
- modelValue: Record<string, any>;
377
- editModeText: string;
378
- saveText: string;
379
- dropText: string;
380
- hiddenSave: boolean;
381
- hiddenDrop: boolean;
382
- hiddenButtons: boolean;
383
- readData: Record<string, any>;
384
- createData: Record<string, any>;
385
- updateData: Record<string, any>;
386
- dropData: Record<string, any>;
387
- isCreate: boolean;
388
- createConfirm: string;
389
- updateConfirm: string;
390
- dropConfirm: string;
391
- createDisabled: boolean;
392
- updateDisabled: boolean;
393
- dropDisabled: boolean;
394
- saveValidator: Function;
395
- }>;
396
- __isFragment?: undefined;
397
- __isTeleport?: undefined;
398
- __isSuspense?: undefined;
399
- } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
400
- modelValue: {
401
- type: ObjectConstructor;
402
- required: false;
403
- default: () => {};
404
- };
405
- title: {
406
- type: StringConstructor;
407
- default: string;
408
- };
409
- editModeText: {
410
- type: StringConstructor;
411
- default: string;
412
- };
413
- saveText: {
414
- type: StringConstructor;
415
- default: string;
416
- };
417
- dropText: {
418
- type: StringConstructor;
419
- default: string;
420
- };
421
- hiddenSave: {
422
- type: BooleanConstructor;
423
- default: boolean;
424
- };
425
- hiddenDrop: {
426
- type: BooleanConstructor;
427
- default: boolean;
428
- };
429
- hiddenButtons: {
430
- type: BooleanConstructor;
431
- default: boolean;
432
- };
433
- readResource: {
434
- type: StringConstructor;
435
- required: false;
436
- };
437
- createResource: {
438
- type: StringConstructor;
439
- required: false;
440
- };
441
- updateResource: {
442
- type: StringConstructor;
443
- required: false;
444
- };
445
- dropResource: {
446
- type: StringConstructor;
447
- required: false;
448
- };
449
- readData: {
450
- type: ObjectConstructor;
451
- required: false;
452
- default: () => {};
453
- };
454
- createData: {
455
- type: ObjectConstructor;
456
- required: false;
457
- default: () => {};
458
- };
459
- updateData: {
460
- type: ObjectConstructor;
461
- required: false;
462
- default: () => {};
463
- };
464
- dropData: {
465
- type: ObjectConstructor;
466
- required: false;
467
- default: () => {};
468
- };
469
- isCreate: {
470
- type: BooleanConstructor;
471
- default: boolean;
472
- };
473
- createConfirm: {
474
- type: StringConstructor;
475
- default: string;
476
- };
477
- updateConfirm: {
478
- type: StringConstructor;
479
- default: string;
480
- };
481
- dropConfirm: {
482
- type: StringConstructor;
483
- default: string;
484
- };
485
- createDisabled: {
486
- type: BooleanConstructor;
487
- default: boolean;
488
- };
489
- updateDisabled: {
490
- type: BooleanConstructor;
491
- default: boolean;
492
- };
493
- dropDisabled: {
494
- type: BooleanConstructor;
495
- default: boolean;
496
- };
497
- saveValidator: {
498
- type: FunctionConstructor;
499
- required: false;
500
- default: () => boolean;
501
- };
502
- }>> & {
503
- onError?: ((...args: any[]) => any) | undefined;
504
- onDrop?: ((...args: any[]) => any) | undefined;
505
- onUpdate?: ((...args: any[]) => any) | undefined;
506
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
507
- onRead?: ((...args: any[]) => any) | undefined;
508
- onCreate?: ((...args: any[]) => any) | undefined;
509
- onPerms?: ((...args: any[]) => any) | undefined;
510
- "onModified-data"?: ((...args: any[]) => any) | undefined;
511
- }, {
512
- doDrop: () => void;
513
- doRefresh: () => Promise<void>;
514
- doSave: () => void;
515
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("error" | "drop" | "update" | "update:modelValue" | "read" | "create" | "perms" | "modified-data")[], "error" | "drop" | "update" | "update:modelValue" | "read" | "create" | "perms" | "modified-data", {
516
- title: string;
517
- modelValue: Record<string, any>;
518
- editModeText: string;
519
- saveText: string;
520
- dropText: string;
521
- hiddenSave: boolean;
522
- hiddenDrop: boolean;
523
- hiddenButtons: boolean;
524
- readData: Record<string, any>;
525
- createData: Record<string, any>;
526
- updateData: Record<string, any>;
527
- dropData: Record<string, any>;
528
- isCreate: boolean;
529
- createConfirm: string;
530
- updateConfirm: string;
531
- dropConfirm: string;
532
- createDisabled: boolean;
533
- updateDisabled: boolean;
534
- dropDisabled: boolean;
535
- saveValidator: Function;
536
- }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
537
- $slots: {
538
- 'post-title': (_: {
539
- item: Record<string, any>;
540
- loading: boolean;
541
- }) => any;
542
- 'button-drop': (_: {
543
- item: Record<string, any>;
544
- editMode: boolean;
545
- isCreate: false;
546
- canUpdate: boolean;
547
- canDrop: boolean;
548
- }) => any;
549
- 'button-save': (_: {
550
- item: Record<string, any>;
551
- editMode: boolean;
552
- isCreate: boolean;
553
- canUpdate: boolean;
554
- canDrop: boolean;
555
- }) => any;
556
- item: (_: {
557
- item: Record<string, any>;
558
- loading: false;
559
- editMode: boolean;
560
- isCreate: boolean;
561
- canUpdate: boolean;
562
- canDrop: boolean;
563
- }) => any;
564
- };
565
- });
566
- export default _default;
@@ -1,45 +0,0 @@
1
- declare namespace _default {
2
- const plugins: import("vite").Plugin[];
3
- namespace resolve {
4
- const alias: {
5
- '@': string;
6
- '@test': string;
7
- };
8
- }
9
- namespace build {
10
- export namespace lib {
11
- const entry: string;
12
- const name: string;
13
- function fileName(format: any): string;
14
- }
15
- export { outDir };
16
- export const minify: boolean;
17
- export namespace rollupOptions {
18
- const external: string[];
19
- namespace output {
20
- const globals: {
21
- vue: string;
22
- '@vuepic/vue-datepicker': string;
23
- 'vue-next-select': string;
24
- suneditor: string;
25
- katex: string;
26
- 'lkt-tools': string;
27
- 'lkt-data-state': string;
28
- 'lkt-http-client': string;
29
- 'lkt-string-tools': string;
30
- 'lkt-vue-tools': string;
31
- 'lkt-events': string;
32
- };
33
- const sourcemapExcludeSources: boolean;
34
- }
35
- }
36
- }
37
- namespace test {
38
- namespace coverage {
39
- const reporter: string[];
40
- }
41
- function resolveSnapshotPath(testPath: any, snapExtension: any): string;
42
- }
43
- }
44
- export default _default;
45
- declare const outDir: string;
package/src/index.ts DELETED
@@ -1,20 +0,0 @@
1
- import {App} from "vue";
2
- import {default as itemCrud} from "./lib-components/LktItemCrud.vue";
3
-
4
- import "./../lkt-item-crud.css";
5
- import LktButton from "lkt-button";
6
- import LktHttpInfo from "lkt-http-info";
7
- import LktLoader from "lkt-loader";
8
-
9
- const LktItemCrud = {
10
- install: (app: App, options = {}) => {
11
- // Register plugin components
12
- if (app.component('lkt-item-crud') === undefined) app.component('lkt-item-crud', itemCrud);
13
-
14
- // Register additional components
15
- if (app.component('lkt-button') === undefined) app.use(LktButton);
16
- if (app.component('lkt-http-info') === undefined) app.use(LktHttpInfo);
17
- if (app.component('lkt-loader') === undefined) app.use(LktLoader);
18
- },
19
- };
20
- export default LktItemCrud;