finso-vue-components 0.4.5 → 0.4.6

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.
@@ -1,12 +1,4 @@
1
- export type FDataTableHeaderType = 'image' | 'money' | 'status' | 'boolean' | 'gsmNo';
2
- export interface FDataTableHeader {
3
- title: string;
4
- key: string;
5
- align?: 'start' | 'center' | 'end';
6
- sortable?: boolean;
7
- width?: string | number;
8
- type?: FDataTableHeaderType;
9
- }
1
+ import type { FDataTableHeader } from './types';
10
2
  export interface FDataTableProps {
11
3
  headers: FDataTableHeader[];
12
4
  items: Record<string, unknown>[];
@@ -1,2 +1,4 @@
1
1
  export { default as FDataTable } from './FDataTable.vue';
2
- export type { FDataTableProps, FDataTableHeader, FDataTableHeaderType } from './FDataTable.vue';
2
+ export { FDataTableHeaderType } from './types';
3
+ export type { FDataTableHeader } from './types';
4
+ export type { FDataTableProps } from './FDataTable.vue';
@@ -0,0 +1,15 @@
1
+ export declare enum FDataTableHeaderType {
2
+ IMAGE = "image",
3
+ MONEY = "money",
4
+ STATUS = "status",
5
+ BOOLEAN = "boolean",
6
+ GSM_NO = "gsmNo"
7
+ }
8
+ export interface FDataTableHeader {
9
+ title: string;
10
+ key: string;
11
+ align?: 'start' | 'center' | 'end';
12
+ sortable?: boolean;
13
+ width?: string | number;
14
+ type?: FDataTableHeaderType;
15
+ }
@@ -1 +1 @@
1
- .f-data-table__logo[data-v-18a58608]{object-fit:contain}.f-data-table__actions[data-v-18a58608]{display:flex;gap:4px;align-items:center}
1
+ .f-data-table__logo[data-v-ef0a08d5]{object-fit:contain}.f-data-table__actions[data-v-ef0a08d5]{display:flex;gap:4px;align-items:center}
@@ -1,7 +1,7 @@
1
- import { defineComponent as k, resolveComponent as h, openBlock as f, createBlock as g, computed as F, withDirectives as oe, unref as c, mergeProps as _, isRef as N, createSlots as I, renderList as A, withCtx as y, renderSlot as M, normalizeProps as j, guardReactiveProps as z, useModel as X, ref as H, createElementBlock as P, resolveDynamicComponent as re, toHandlers as se, createVNode as B, toDisplayString as V, createTextVNode as x, createCommentVNode as O, createElementVNode as de, withModifiers as Y, mergeModels as L, watch as ue } from "vue";
2
- import { VTextField as G, VTextarea as ie, VAutocomplete as ce, VCheckbox as me, VSelect as fe, VNumberInput as pe, VSwitch as ye } from "vuetify/components";
1
+ import { defineComponent as k, resolveComponent as h, openBlock as f, createBlock as g, computed as F, withDirectives as oe, unref as c, mergeProps as _, isRef as T, createSlots as I, renderList as P, withCtx as y, renderSlot as x, normalizeProps as O, guardReactiveProps as j, useModel as X, ref as E, createElementBlock as N, resolveDynamicComponent as re, toHandlers as se, createVNode as B, toDisplayString as V, createTextVNode as w, createCommentVNode as H, createElementVNode as de, withModifiers as G, mergeModels as L, watch as ue } from "vue";
2
+ import { VTextField as Y, VTextarea as ie, VAutocomplete as ce, VCheckbox as me, VSelect as fe, VNumberInput as pe, VSwitch as ye } from "vuetify/components";
3
3
  import { vMaska as ve } from "maska/vue";
4
- import { useField as T } from "vee-validate";
4
+ import { useField as R } from "vee-validate";
5
5
  const ge = /* @__PURE__ */ k({
6
6
  __name: "FButton",
7
7
  props: {
@@ -37,13 +37,13 @@ const ge = /* @__PURE__ */ k({
37
37
  },
38
38
  emits: ["clickAppendInner"],
39
39
  setup(t) {
40
- const e = t, n = F(() => e.rules), { errorMessage: a, value: l } = T(() => e.name, n, {
40
+ const e = t, n = F(() => e.rules), { errorMessage: a, value: l } = R(() => e.name, n, {
41
41
  initialValue: e.modelValue,
42
42
  syncVModel: !0
43
43
  });
44
- return (u, r) => oe((f(), g(c(G), _(u.$attrs, {
44
+ return (u, r) => oe((f(), g(c(Y), _(u.$attrs, {
45
45
  modelValue: c(l),
46
- "onUpdate:modelValue": r[0] || (r[0] = (d) => N(l) ? l.value = d : null),
46
+ "onUpdate:modelValue": r[0] || (r[0] = (d) => T(l) ? l.value = d : null),
47
47
  name: e.name,
48
48
  color: e.color,
49
49
  density: e.density,
@@ -55,10 +55,10 @@ const ge = /* @__PURE__ */ k({
55
55
  "append-inner-icon": e.appendInnerIcon,
56
56
  "onClick:appendInner": r[1] || (r[1] = (d) => u.$emit("clickAppendInner"))
57
57
  }), I({ _: 2 }, [
58
- A(u.$slots, (d, p) => ({
58
+ P(u.$slots, (d, p) => ({
59
59
  name: p,
60
60
  fn: y((i) => [
61
- M(u.$slots, p, j(z(i ?? {})))
61
+ x(u.$slots, p, O(j(i ?? {})))
62
62
  ])
63
63
  }))
64
64
  ]), 1040, ["modelValue", "name", "color", "density", "rounded", "variant", "clearable", "hide-details", "error-messages", "append-inner-icon"])), [
@@ -105,9 +105,9 @@ const ge = /* @__PURE__ */ k({
105
105
  }),
106
106
  emits: /* @__PURE__ */ L(["show-record", "delete-record"], ["update:page", "update:itemsPerPage", "update:sortBy"]),
107
107
  setup(t, { emit: e }) {
108
- const n = t, a = e, l = X(t, "page"), u = X(t, "itemsPerPage"), r = X(t, "sortBy"), d = H(!1), p = H(null);
108
+ const n = t, a = e, l = X(t, "page"), u = X(t, "itemsPerPage"), r = X(t, "sortBy"), d = E(!1), p = E(null);
109
109
  function i(s, m) {
110
- return m.split(".").reduce((S, E) => S == null ? void 0 : S[E], s);
110
+ return m.split(".").reduce((C, z) => C == null ? void 0 : C[z], s);
111
111
  }
112
112
  function $(s) {
113
113
  return s == null ? "" : new Intl.NumberFormat(n.moneyLocale, {
@@ -115,21 +115,21 @@ const ge = /* @__PURE__ */ k({
115
115
  currency: n.moneyCurrency
116
116
  }).format(s);
117
117
  }
118
- function w(s) {
118
+ function M(s) {
119
119
  if (!s) return "";
120
120
  const m = s.replace(/\D/g, "");
121
121
  return m.length < 10 ? s : `(${m.substring(0, 3)}) ${m.substring(3, 6)} ${m.substring(6, 10)}`;
122
122
  }
123
- const R = F(() => {
124
- const S = n.items.length * 52 + 56;
125
- return Math.min(S, n.maxHeight);
123
+ const A = F(() => {
124
+ const C = n.items.length * 52 + 56;
125
+ return Math.min(C, n.maxHeight);
126
126
  }), v = F(() => !n.canEditRecord && !n.canReadRecord ? {} : {
127
127
  "click:row": (s, { item: m }) => {
128
128
  a("show-record", m);
129
129
  }
130
130
  }), D = F(
131
131
  () => n.headers.filter((s) => s.type && s.key !== "actions")
132
- ), C = F(() => n.headers.some((s) => s.key === "actions"));
132
+ ), S = F(() => n.headers.some((s) => s.key === "actions"));
133
133
  function W(s) {
134
134
  n.showDeleteConfirm ? (p.value = s, d.value = !0) : a("delete-record", s);
135
135
  }
@@ -137,8 +137,8 @@ const ge = /* @__PURE__ */ k({
137
137
  a("delete-record", p.value), d.value = !1, p.value = null;
138
138
  }
139
139
  return (s, m) => {
140
- const S = h("v-img"), E = h("v-avatar"), J = h("v-chip"), K = h("v-icon"), U = h("v-btn"), Q = h("v-card-title"), Z = h("v-card-text"), ee = h("v-spacer"), te = h("v-card-actions"), ae = h("v-card"), le = h("v-dialog");
141
- return f(), P("div", null, [
140
+ const C = h("v-img"), z = h("v-avatar"), J = h("v-chip"), K = h("v-icon"), U = h("v-btn"), Q = h("v-card-title"), Z = h("v-card-text"), ee = h("v-spacer"), te = h("v-card-actions"), ae = h("v-card"), le = h("v-dialog");
141
+ return f(), N("div", null, [
142
142
  (f(), g(re(t.serverSide ? "v-data-table-server" : "v-data-table"), _(s.$attrs, {
143
143
  page: l.value,
144
144
  "onUpdate:page": m[0] || (m[0] = (o) => l.value = o),
@@ -152,37 +152,37 @@ const ge = /* @__PURE__ */ k({
152
152
  loading: t.loading,
153
153
  hover: t.hover,
154
154
  density: t.density,
155
- height: R.value,
155
+ height: A.value,
156
156
  "show-select": t.showSelect,
157
157
  "items-per-page-text": t.labelItemsPerPage,
158
158
  "no-data-text": t.labelNoData
159
159
  }, se(v.value)), I({ _: 2 }, [
160
- A(D.value, (o) => ({
160
+ P(D.value, (o) => ({
161
161
  name: `item.${o.key}`,
162
162
  fn: y(({ item: b }) => [
163
- M(s.$slots, `item.${o.key}`, {
163
+ x(s.$slots, `item.${o.key}`, {
164
164
  item: b,
165
165
  value: i(b, o.key)
166
166
  }, () => [
167
- o.type === "image" ? (f(), g(E, {
167
+ o.type === "image" ? (f(), g(z, {
168
168
  key: 0,
169
169
  rounded: "lg",
170
170
  variant: "elevated"
171
171
  }, {
172
172
  default: y(() => [
173
- B(S, {
173
+ B(C, {
174
174
  src: i(b, o.key),
175
175
  class: "f-data-table__logo"
176
176
  }, null, 8, ["src"])
177
177
  ]),
178
178
  _: 2
179
- }, 1024)) : o.type === "money" ? (f(), P("span", he, V($(i(b, o.key))), 1)) : o.type === "status" ? (f(), g(J, {
179
+ }, 1024)) : o.type === "money" ? (f(), N("span", he, V($(i(b, o.key))), 1)) : o.type === "status" ? (f(), g(J, {
180
180
  key: 2,
181
181
  color: i(b, o.key) ? "green-darken-1" : "red-darken-2",
182
182
  size: "small"
183
183
  }, {
184
184
  default: y(() => [
185
- x(V(i(b, o.key) ? t.labelActive : t.labelPassive), 1)
185
+ w(V(i(b, o.key) ? t.labelActive : t.labelPassive), 1)
186
186
  ]),
187
187
  _: 2
188
188
  }, 1032, ["color"])) : o.type === "boolean" ? (f(), g(K, {
@@ -190,42 +190,42 @@ const ge = /* @__PURE__ */ k({
190
190
  color: i(b, o.key) ? "green-darken-1" : "red-darken-2"
191
191
  }, {
192
192
  default: y(() => [
193
- x(V(i(b, o.key) ? "mdi-check" : "mdi-close"), 1)
193
+ w(V(i(b, o.key) ? "mdi-check" : "mdi-close"), 1)
194
194
  ]),
195
195
  _: 2
196
- }, 1032, ["color"])) : o.type === "gsmNo" ? (f(), P("span", Fe, V(w(i(b, o.key))), 1)) : O("", !0)
196
+ }, 1032, ["color"])) : o.type === "gsmNo" ? (f(), N("span", Fe, V(M(i(b, o.key))), 1)) : H("", !0)
197
197
  ], !0)
198
198
  ])
199
199
  })),
200
- C.value ? {
200
+ S.value ? {
201
201
  name: "item.actions",
202
202
  fn: y(({ item: o }) => [
203
- M(s.$slots, "item.actions", { item: o }, () => [
203
+ x(s.$slots, "item.actions", { item: o }, () => [
204
204
  de("div", Ve, [
205
205
  t.canEditRecord || t.canReadRecord ? (f(), g(U, {
206
206
  key: 0,
207
207
  icon: "mdi-pencil",
208
208
  variant: "text",
209
209
  size: "small",
210
- onClick: Y((b) => a("show-record", o), ["stop"])
211
- }, null, 8, ["onClick"])) : O("", !0),
210
+ onClick: G((b) => a("show-record", o), ["stop"])
211
+ }, null, 8, ["onClick"])) : H("", !0),
212
212
  t.canDeleteRecord ? (f(), g(U, {
213
213
  key: 1,
214
214
  icon: "mdi-delete",
215
215
  variant: "text",
216
216
  size: "small",
217
217
  color: "red-darken-2",
218
- onClick: Y((b) => W(o), ["stop"])
219
- }, null, 8, ["onClick"])) : O("", !0)
218
+ onClick: G((b) => W(o), ["stop"])
219
+ }, null, 8, ["onClick"])) : H("", !0)
220
220
  ])
221
221
  ], !0)
222
222
  ]),
223
223
  key: "0"
224
224
  } : void 0,
225
- A(s.$slots, (o, b) => ({
225
+ P(s.$slots, (o, b) => ({
226
226
  name: b,
227
227
  fn: y((ne) => [
228
- M(s.$slots, b, j(z(ne ?? {})), void 0, !0)
228
+ x(s.$slots, b, O(j(ne ?? {})), void 0, !0)
229
229
  ])
230
230
  }))
231
231
  ]), 1040, ["page", "items-per-page", "sort-by", "headers", "items", "items-length", "loading", "hover", "density", "height", "show-select", "items-per-page-text", "no-data-text"])),
@@ -239,13 +239,13 @@ const ge = /* @__PURE__ */ k({
239
239
  default: y(() => [
240
240
  B(Q, null, {
241
241
  default: y(() => [
242
- x(V(t.labelDeleteTitle), 1)
242
+ w(V(t.labelDeleteTitle), 1)
243
243
  ]),
244
244
  _: 1
245
245
  }),
246
246
  B(Z, null, {
247
247
  default: y(() => [
248
- x(V(t.deleteMessageFormatter && p.value ? t.deleteMessageFormatter(p.value) : t.labelDeleteMessage), 1)
248
+ w(V(t.deleteMessageFormatter && p.value ? t.deleteMessageFormatter(p.value) : t.labelDeleteMessage), 1)
249
249
  ]),
250
250
  _: 1
251
251
  }),
@@ -257,7 +257,7 @@ const ge = /* @__PURE__ */ k({
257
257
  onClick: m[3] || (m[3] = (o) => d.value = !1)
258
258
  }, {
259
259
  default: y(() => [
260
- x(V(t.labelDeleteCancel), 1)
260
+ w(V(t.labelDeleteCancel), 1)
261
261
  ]),
262
262
  _: 1
263
263
  }),
@@ -267,7 +267,7 @@ const ge = /* @__PURE__ */ k({
267
267
  onClick: q
268
268
  }, {
269
269
  default: y(() => [
270
- x(V(t.labelDeleteConfirm), 1)
270
+ w(V(t.labelDeleteConfirm), 1)
271
271
  ]),
272
272
  _: 1
273
273
  })
@@ -288,7 +288,9 @@ const ge = /* @__PURE__ */ k({
288
288
  for (const [a, l] of e)
289
289
  n[a] = l;
290
290
  return n;
291
- }, Be = /* @__PURE__ */ De(ke, [["__scopeId", "data-v-18a58608"]]), _e = /* @__PURE__ */ k({
291
+ }, Be = /* @__PURE__ */ De(ke, [["__scopeId", "data-v-ef0a08d5"]]);
292
+ var _e = /* @__PURE__ */ ((t) => (t.IMAGE = "image", t.MONEY = "money", t.STATUS = "status", t.BOOLEAN = "boolean", t.GSM_NO = "gsmNo", t))(_e || {});
293
+ const $e = /* @__PURE__ */ k({
292
294
  name: "FTextarea",
293
295
  inheritAttrs: !1,
294
296
  __name: "FTextarea",
@@ -306,13 +308,13 @@ const ge = /* @__PURE__ */ k({
306
308
  rules: { type: [String, Function], default: "" }
307
309
  },
308
310
  setup(t) {
309
- const e = t, n = F(() => e.rules), { errorMessage: a, value: l } = T(() => e.name, n, {
311
+ const e = t, n = F(() => e.rules), { errorMessage: a, value: l } = R(() => e.name, n, {
310
312
  initialValue: e.modelValue,
311
313
  syncVModel: !0
312
314
  });
313
315
  return (u, r) => (f(), g(c(ie), _(u.$attrs, {
314
316
  modelValue: c(l),
315
- "onUpdate:modelValue": r[0] || (r[0] = (d) => N(l) ? l.value = d : null),
317
+ "onUpdate:modelValue": r[0] || (r[0] = (d) => T(l) ? l.value = d : null),
316
318
  name: e.name,
317
319
  rounded: e.rounded,
318
320
  variant: e.variant,
@@ -325,7 +327,7 @@ const ge = /* @__PURE__ */ k({
325
327
  "error-messages": c(a)
326
328
  }), null, 16, ["modelValue", "name", "rounded", "variant", "rows", "density", "color", "label", "hide-details", "no-resize", "error-messages"]));
327
329
  }
328
- }), $e = /* @__PURE__ */ k({
330
+ }), Se = /* @__PURE__ */ k({
329
331
  name: "FAutocomplete",
330
332
  inheritAttrs: !1,
331
333
  __name: "FAutocomplete",
@@ -345,7 +347,7 @@ const ge = /* @__PURE__ */ k({
345
347
  },
346
348
  emits: ["change"],
347
349
  setup(t, { emit: e }) {
348
- const n = e, a = t, l = F(() => a.rules), { errorMessage: u, value: r } = T(() => a.name, l, {
350
+ const n = e, a = t, l = F(() => a.rules), { errorMessage: u, value: r } = R(() => a.name, l, {
349
351
  initialValue: a.modelValue,
350
352
  syncVModel: !0
351
353
  });
@@ -355,7 +357,7 @@ const ge = /* @__PURE__ */ k({
355
357
  return (p, i) => (f(), g(c(ce), _(p.$attrs, {
356
358
  modelValue: c(r),
357
359
  "onUpdate:modelValue": [
358
- i[0] || (i[0] = ($) => N(r) ? r.value = $ : null),
360
+ i[0] || (i[0] = ($) => T(r) ? r.value = $ : null),
359
361
  i[1] || (i[1] = ($) => d(c(r)))
360
362
  ],
361
363
  name: a.name,
@@ -371,10 +373,10 @@ const ge = /* @__PURE__ */ k({
371
373
  "error-messages": c(u),
372
374
  "menu-props": { maxWidth: 0 }
373
375
  }), I({ _: 2 }, [
374
- A(p.$slots, ($, w) => ({
375
- name: w,
376
- fn: y((R) => [
377
- M(p.$slots, w, j(z(R ?? {})))
376
+ P(p.$slots, ($, M) => ({
377
+ name: M,
378
+ fn: y((A) => [
379
+ x(p.$slots, M, O(j(A ?? {})))
378
380
  ])
379
381
  }))
380
382
  ]), 1040, ["modelValue", "name", "items", "rounded", "variant", "density", "color", "clearable", "hide-details", "return-object", "no-data-text", "error-messages"]));
@@ -398,7 +400,7 @@ const ge = /* @__PURE__ */ k({
398
400
  density: e.density
399
401
  }), null, 16, ["color", "hide-details", "indeterminate", "density"]));
400
402
  }
401
- }), Se = /* @__PURE__ */ k({
403
+ }), Me = /* @__PURE__ */ k({
402
404
  name: "FCurrencyField",
403
405
  inheritAttrs: !1,
404
406
  __name: "FCurrencyField",
@@ -418,7 +420,7 @@ const ge = /* @__PURE__ */ k({
418
420
  rules: { type: [String, Function], default: "" }
419
421
  },
420
422
  setup(t) {
421
- const e = t, n = F(() => e.rules), { errorMessage: a, value: l } = T(() => e.name, n, {
423
+ const e = t, n = F(() => e.rules), { errorMessage: a, value: l } = R(() => e.name, n, {
422
424
  initialValue: e.modelValue,
423
425
  syncVModel: !0
424
426
  }), u = F(
@@ -428,30 +430,30 @@ const ge = /* @__PURE__ */ k({
428
430
  minimumFractionDigits: e.precision,
429
431
  maximumFractionDigits: e.precision
430
432
  })
431
- ), r = H(d(e.modelValue));
433
+ ), r = E(d(e.modelValue));
432
434
  function d(v) {
433
435
  return v == null || isNaN(v) ? "" : u.value.format(v);
434
436
  }
435
437
  function p(v) {
436
- const D = v.replace(/[^\d,.-]/g, "").replace(/\./g, "").replace(",", "."), C = parseFloat(D);
437
- return isNaN(C) ? null : Math.round(C * Math.pow(10, e.precision)) / Math.pow(10, e.precision);
438
+ const D = v.replace(/[^\d,.-]/g, "").replace(/\./g, "").replace(",", "."), S = parseFloat(D);
439
+ return isNaN(S) ? null : Math.round(S * Math.pow(10, e.precision)) / Math.pow(10, e.precision);
438
440
  }
439
- const i = H(!1);
441
+ const i = E(!1);
440
442
  function $(v) {
441
443
  const D = v.target;
442
444
  r.value = D.value, l.value = p(D.value);
443
445
  }
444
- function w() {
446
+ function M() {
445
447
  i.value = !1, r.value = d(l.value);
446
448
  }
447
- function R(v) {
449
+ function A(v) {
448
450
  i.value = !0;
449
- const D = v.target, C = l.value;
450
- C != null ? r.value = C.toFixed(e.precision).replace(".", ",") : r.value = "", setTimeout(() => D.select(), 0);
451
+ const D = v.target, S = l.value;
452
+ S != null ? r.value = S.toFixed(e.precision).replace(".", ",") : r.value = "", setTimeout(() => D.select(), 0);
451
453
  }
452
454
  return ue(() => e.modelValue, (v) => {
453
455
  l.value = v, i.value || (r.value = d(v));
454
- }), (v, D) => (f(), g(c(G), _(v.$attrs, {
456
+ }), (v, D) => (f(), g(c(Y), _(v.$attrs, {
455
457
  "model-value": r.value,
456
458
  name: e.name,
457
459
  label: e.label,
@@ -464,8 +466,8 @@ const ge = /* @__PURE__ */ k({
464
466
  "error-messages": c(a),
465
467
  inputmode: "decimal",
466
468
  onInput: $,
467
- onBlur: w,
468
- onFocus: R
469
+ onBlur: M,
470
+ onFocus: A
469
471
  }), null, 16, ["model-value", "name", "label", "readonly", "hide-details", "rounded", "variant", "density", "color", "error-messages"]));
470
472
  }
471
473
  }), we = /* @__PURE__ */ k({
@@ -485,13 +487,13 @@ const ge = /* @__PURE__ */ k({
485
487
  rules: { type: [String, Function], default: "" }
486
488
  },
487
489
  setup(t) {
488
- const e = t, n = F(() => e.rules), { errorMessage: a, value: l } = T(() => e.name, n, {
490
+ const e = t, n = F(() => e.rules), { errorMessage: a, value: l } = R(() => e.name, n, {
489
491
  initialValue: e.modelValue,
490
492
  syncVModel: !0
491
493
  });
492
494
  return (u, r) => (f(), g(c(fe), _(u.$attrs, {
493
495
  modelValue: c(l),
494
- "onUpdate:modelValue": r[0] || (r[0] = (d) => N(l) ? l.value = d : null),
496
+ "onUpdate:modelValue": r[0] || (r[0] = (d) => T(l) ? l.value = d : null),
495
497
  name: e.name,
496
498
  items: e.items,
497
499
  rounded: e.rounded,
@@ -502,10 +504,10 @@ const ge = /* @__PURE__ */ k({
502
504
  "return-object": e.returnObject,
503
505
  "error-messages": c(a)
504
506
  }), I({ _: 2 }, [
505
- A(u.$slots, (d, p) => ({
507
+ P(u.$slots, (d, p) => ({
506
508
  name: p,
507
509
  fn: y((i) => [
508
- M(u.$slots, p, j(z(i ?? {})))
510
+ x(u.$slots, p, O(j(i ?? {})))
509
511
  ])
510
512
  }))
511
513
  ]), 1040, ["modelValue", "name", "items", "rounded", "variant", "density", "color", "hide-details", "return-object", "error-messages"]));
@@ -534,13 +536,13 @@ const ge = /* @__PURE__ */ k({
534
536
  rules: { type: [String, Function], default: "" }
535
537
  },
536
538
  setup(t) {
537
- const e = t, n = F(() => e.rules), { errorMessage: a, value: l } = T(() => e.name, n, {
539
+ const e = t, n = F(() => e.rules), { errorMessage: a, value: l } = R(() => e.name, n, {
538
540
  initialValue: e.modelValue,
539
541
  syncVModel: !0
540
542
  });
541
543
  return (u, r) => (f(), g(c(pe), _(u.$attrs, {
542
544
  modelValue: c(l),
543
- "onUpdate:modelValue": r[0] || (r[0] = (d) => N(l) ? l.value = d : null),
545
+ "onUpdate:modelValue": r[0] || (r[0] = (d) => T(l) ? l.value = d : null),
544
546
  name: e.name,
545
547
  color: e.color,
546
548
  density: e.density,
@@ -559,7 +561,7 @@ const ge = /* @__PURE__ */ k({
559
561
  "error-messages": c(a)
560
562
  }), null, 16, ["modelValue", "name", "color", "density", "rounded", "variant", "control-variant", "hide-details", "placeholder", "label", "prefix", "disabled", "readonly", "min", "precision", "inset", "error-messages"]));
561
563
  }
562
- }), Me = { key: 0 }, Te = { key: 1 }, Re = /* @__PURE__ */ k({
564
+ }), Re = { key: 0 }, Ae = { key: 1 }, Ne = /* @__PURE__ */ k({
563
565
  name: "FSwitch",
564
566
  inheritAttrs: !1,
565
567
  __name: "FSwitch",
@@ -586,27 +588,28 @@ const ge = /* @__PURE__ */ k({
586
588
  e.labelTrue || e.labelFalse ? {
587
589
  name: "label",
588
590
  fn: y(() => [
589
- n.value ? (f(), P("span", Me, V(e.labelTrue), 1)) : (f(), P("span", Te, V(e.labelFalse), 1))
591
+ n.value ? (f(), N("span", Re, V(e.labelTrue), 1)) : (f(), N("span", Ae, V(e.labelFalse), 1))
590
592
  ]),
591
593
  key: "0"
592
594
  } : void 0
593
595
  ]), 1040, ["modelValue", "color", "hide-details", "density"]));
594
596
  }
595
- }), Ue = {
597
+ }), Xe = {
596
598
  install(t) {
597
- t.component("FButton", ge), t.component("FTextField", be), t.component("FDataTable", Be), t.component("FTextarea", _e), t.component("FAutocomplete", $e), t.component("FCheckbox", Ce), t.component("FCurrencyField", Se), t.component("FSelect", we), t.component("FNumberField", xe), t.component("FSwitch", Re);
599
+ t.component("FButton", ge), t.component("FTextField", be), t.component("FDataTable", Be), t.component("FTextarea", $e), t.component("FAutocomplete", Se), t.component("FCheckbox", Ce), t.component("FCurrencyField", Me), t.component("FSelect", we), t.component("FNumberField", xe), t.component("FSwitch", Ne);
598
600
  }
599
601
  };
600
602
  export {
601
- $e as FAutocomplete,
603
+ Se as FAutocomplete,
602
604
  ge as FButton,
603
605
  Ce as FCheckbox,
604
- Se as FCurrencyField,
606
+ Me as FCurrencyField,
605
607
  Be as FDataTable,
608
+ _e as FDataTableHeaderType,
606
609
  xe as FNumberField,
607
610
  we as FSelect,
608
- Re as FSwitch,
611
+ Ne as FSwitch,
609
612
  be as FTextField,
610
- _e as FTextarea,
611
- Ue as default
613
+ $e as FTextarea,
614
+ Xe as default
612
615
  };
@@ -1 +1 @@
1
- (function(m,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vuetify/components"),require("maska/vue"),require("vee-validate")):typeof define=="function"&&define.amd?define(["exports","vue","vuetify/components","maska/vue","vee-validate"],e):(m=typeof globalThis<"u"?globalThis:m||self,e(m.FinsoVueComponents={},m.Vue,m.VuetifyComponents,m.MaskaVue,m.VeeValidate))})(this,(function(m,e,k,z,B){"use strict";const _=e.defineComponent({__name:"FButton",props:{color:{default:"primary"},rounded:{type:[String,Number,Boolean],default:"lg"}},setup(o){const t=o;return(a,l)=>{const n=e.resolveComponent("v-btn");return e.openBlock(),e.createBlock(n,{color:t.color,rounded:t.rounded},null,8,["color","rounded"])}}}),x=e.defineComponent({name:"FTextField",inheritAttrs:!1,__name:"FTextField",props:{name:{},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},color:{default:"secondary"},clearable:{type:Boolean,default:!0},hideDetails:{type:[Boolean,String],default:"auto"},appendInnerIcon:{default:""},mask:{default:""},modelValue:{default:""},rules:{type:[String,Function],default:""}},emits:["clickAppendInner"],setup(o){const t=o,a=e.computed(()=>t.rules),{errorMessage:l,value:n}=B.useField(()=>t.name,a,{initialValue:t.modelValue,syncVModel:!0});return(c,d)=>e.withDirectives((e.openBlock(),e.createBlock(e.unref(k.VTextField),e.mergeProps(c.$attrs,{modelValue:e.unref(n),"onUpdate:modelValue":d[0]||(d[0]=i=>e.isRef(n)?n.value=i:null),name:t.name,color:t.color,density:t.density,rounded:t.rounded,variant:t.variant,clearable:t.clearable,"hide-details":t.hideDetails,"error-messages":e.unref(l),"append-inner-icon":t.appendInnerIcon,"onClick:appendInner":d[1]||(d[1]=i=>c.$emit("clickAppendInner"))}),e.createSlots({_:2},[e.renderList(c.$slots,(i,p)=>({name:p,fn:e.withCtx(u=>[e.renderSlot(c.$slots,p,e.normalizeProps(e.guardReactiveProps(u??{})))])}))]),1040,["modelValue","name","color","density","rounded","variant","clearable","hide-details","error-messages","append-inner-icon"])),[[e.unref(z.vMaska),t.mask]])}}),U={key:1},j={key:4},E={class:"f-data-table__actions"},$=((o,t)=>{const a=o.__vccOpts||o;for(const[l,n]of t)a[l]=n;return a})(e.defineComponent({name:"FDataTable",inheritAttrs:!1,__name:"FDataTable",props:e.mergeModels({headers:{},items:{},loading:{type:Boolean,default:!1},hover:{type:Boolean,default:!0},density:{default:"default"},maxHeight:{default:576},showSelect:{type:Boolean,default:!1},serverSide:{type:Boolean,default:!1},totalCount:{default:0},canEditRecord:{type:Boolean,default:!0},canDeleteRecord:{type:Boolean,default:!0},canReadRecord:{type:Boolean,default:!0},showDeleteConfirm:{type:Boolean,default:!0},labelActive:{default:"Active"},labelPassive:{default:"Passive"},labelDeleteTitle:{default:"Delete"},deleteMessageFormatter:{},labelDeleteMessage:{default:"Are you sure you want to delete this record?"},labelDeleteConfirm:{default:"Delete"},labelDeleteCancel:{default:"Cancel"},labelItemsPerPage:{default:"Items per page"},labelNoData:{default:"No data available"},moneyLocale:{default:"tr-TR"},moneyCurrency:{default:"TRY"},gsmPattern:{default:"(XXX) XXX XXXX"}},{page:{default:1},pageModifiers:{},itemsPerPage:{default:10},itemsPerPageModifiers:{},sortBy:{default:()=>[]},sortByModifiers:{}}),emits:e.mergeModels(["show-record","delete-record"],["update:page","update:itemsPerPage","update:sortBy"]),setup(o,{emit:t}){const a=o,l=t,n=e.useModel(o,"page"),c=e.useModel(o,"itemsPerPage"),d=e.useModel(o,"sortBy"),i=e.ref(!1),p=e.ref(null);function u(s,f){return f.split(".").reduce((F,w)=>F==null?void 0:F[w],s)}function b(s){return s==null?"":new Intl.NumberFormat(a.moneyLocale,{style:"currency",currency:a.moneyCurrency}).format(s)}function C(s){if(!s)return"";const f=s.replace(/\D/g,"");return f.length<10?s:`(${f.substring(0,3)}) ${f.substring(3,6)} ${f.substring(6,10)}`}const D=e.computed(()=>{const F=a.items.length*52+56;return Math.min(F,a.maxHeight)}),y=e.computed(()=>!a.canEditRecord&&!a.canReadRecord?{}:{"click:row":(s,{item:f})=>{l("show-record",f)}}),h=e.computed(()=>a.headers.filter(s=>s.type&&s.key!=="actions")),V=e.computed(()=>a.headers.some(s=>s.key==="actions"));function O(s){a.showDeleteConfirm?(p.value=s,i.value=!0):l("delete-record",s)}function q(){l("delete-record",p.value),i.value=!1,p.value=null}return(s,f)=>{const F=e.resolveComponent("v-img"),w=e.resolveComponent("v-avatar"),Y=e.resolveComponent("v-chip"),G=e.resolveComponent("v-icon"),S=e.resolveComponent("v-btn"),W=e.resolveComponent("v-card-title"),J=e.resolveComponent("v-card-text"),K=e.resolveComponent("v-spacer"),Q=e.resolveComponent("v-card-actions"),Z=e.resolveComponent("v-card"),v=e.resolveComponent("v-dialog");return e.openBlock(),e.createElementBlock("div",null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.serverSide?"v-data-table-server":"v-data-table"),e.mergeProps(s.$attrs,{page:n.value,"onUpdate:page":f[0]||(f[0]=r=>n.value=r),"items-per-page":c.value,"onUpdate:itemsPerPage":f[1]||(f[1]=r=>c.value=r),"sort-by":d.value,"onUpdate:sortBy":f[2]||(f[2]=r=>d.value=r),headers:o.headers,items:o.items,"items-length":o.serverSide?o.totalCount:void 0,loading:o.loading,hover:o.hover,density:o.density,height:D.value,"show-select":o.showSelect,"items-per-page-text":o.labelItemsPerPage,"no-data-text":o.labelNoData},e.toHandlers(y.value)),e.createSlots({_:2},[e.renderList(h.value,r=>({name:`item.${r.key}`,fn:e.withCtx(({item:g})=>[e.renderSlot(s.$slots,`item.${r.key}`,{item:g,value:u(g,r.key)},()=>[r.type==="image"?(e.openBlock(),e.createBlock(w,{key:0,rounded:"lg",variant:"elevated"},{default:e.withCtx(()=>[e.createVNode(F,{src:u(g,r.key),class:"f-data-table__logo"},null,8,["src"])]),_:2},1024)):r.type==="money"?(e.openBlock(),e.createElementBlock("span",U,e.toDisplayString(b(u(g,r.key))),1)):r.type==="status"?(e.openBlock(),e.createBlock(Y,{key:2,color:u(g,r.key)?"green-darken-1":"red-darken-2",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u(g,r.key)?o.labelActive:o.labelPassive),1)]),_:2},1032,["color"])):r.type==="boolean"?(e.openBlock(),e.createBlock(G,{key:3,color:u(g,r.key)?"green-darken-1":"red-darken-2"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u(g,r.key)?"mdi-check":"mdi-close"),1)]),_:2},1032,["color"])):r.type==="gsmNo"?(e.openBlock(),e.createElementBlock("span",j,e.toDisplayString(C(u(g,r.key))),1)):e.createCommentVNode("",!0)],!0)])})),V.value?{name:"item.actions",fn:e.withCtx(({item:r})=>[e.renderSlot(s.$slots,"item.actions",{item:r},()=>[e.createElementVNode("div",E,[o.canEditRecord||o.canReadRecord?(e.openBlock(),e.createBlock(S,{key:0,icon:"mdi-pencil",variant:"text",size:"small",onClick:e.withModifiers(g=>l("show-record",r),["stop"])},null,8,["onClick"])):e.createCommentVNode("",!0),o.canDeleteRecord?(e.openBlock(),e.createBlock(S,{key:1,icon:"mdi-delete",variant:"text",size:"small",color:"red-darken-2",onClick:e.withModifiers(g=>O(r),["stop"])},null,8,["onClick"])):e.createCommentVNode("",!0)])],!0)]),key:"0"}:void 0,e.renderList(s.$slots,(r,g)=>({name:g,fn:e.withCtx(ee=>[e.renderSlot(s.$slots,g,e.normalizeProps(e.guardReactiveProps(ee??{})),void 0,!0)])}))]),1040,["page","items-per-page","sort-by","headers","items","items-length","loading","hover","density","height","show-select","items-per-page-text","no-data-text"])),e.createVNode(v,{modelValue:i.value,"onUpdate:modelValue":f[4]||(f[4]=r=>i.value=r),"max-width":"400"},{default:e.withCtx(()=>[e.createVNode(Z,null,{default:e.withCtx(()=>[e.createVNode(W,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.labelDeleteTitle),1)]),_:1}),e.createVNode(J,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.deleteMessageFormatter&&p.value?o.deleteMessageFormatter(p.value):o.labelDeleteMessage),1)]),_:1}),e.createVNode(Q,null,{default:e.withCtx(()=>[e.createVNode(K),e.createVNode(S,{variant:"text",onClick:f[3]||(f[3]=r=>i.value=!1)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.labelDeleteCancel),1)]),_:1}),e.createVNode(S,{color:"red-darken-2",variant:"flat",onClick:q},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.labelDeleteConfirm),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-18a58608"]]),M=e.defineComponent({name:"FTextarea",inheritAttrs:!1,__name:"FTextarea",props:{name:{},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},color:{default:"secondary"},label:{default:""},hideDetails:{type:[Boolean,String],default:"auto"},noResize:{type:Boolean,default:!0},rows:{default:""},modelValue:{default:""},rules:{type:[String,Function],default:""}},setup(o){const t=o,a=e.computed(()=>t.rules),{errorMessage:l,value:n}=B.useField(()=>t.name,a,{initialValue:t.modelValue,syncVModel:!0});return(c,d)=>(e.openBlock(),e.createBlock(e.unref(k.VTextarea),e.mergeProps(c.$attrs,{modelValue:e.unref(n),"onUpdate:modelValue":d[0]||(d[0]=i=>e.isRef(n)?n.value=i:null),name:t.name,rounded:t.rounded,variant:t.variant,rows:t.rows,density:t.density,color:t.color,label:t.label,"hide-details":t.hideDetails,"no-resize":t.noResize,"error-messages":e.unref(l)}),null,16,["modelValue","name","rounded","variant","rows","density","color","label","hide-details","no-resize","error-messages"]))}}),P=e.defineComponent({name:"FAutocomplete",inheritAttrs:!1,__name:"FAutocomplete",props:{name:{},items:{default:()=>[]},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},color:{default:"secondary"},clearable:{type:Boolean,default:!0},hideDetails:{type:[Boolean,String],default:"auto"},returnObject:{type:Boolean,default:!0},noDataText:{default:""},modelValue:{default:null},rules:{type:[String,Function],default:""}},emits:["change"],setup(o,{emit:t}){const a=t,l=o,n=e.computed(()=>l.rules),{errorMessage:c,value:d}=B.useField(()=>l.name,n,{initialValue:l.modelValue,syncVModel:!0});function i(p){a("change",p)}return(p,u)=>(e.openBlock(),e.createBlock(e.unref(k.VAutocomplete),e.mergeProps(p.$attrs,{modelValue:e.unref(d),"onUpdate:modelValue":[u[0]||(u[0]=b=>e.isRef(d)?d.value=b:null),u[1]||(u[1]=b=>i(e.unref(d)))],name:l.name,items:l.items,rounded:l.rounded,variant:l.variant,density:l.density,color:l.color,clearable:l.clearable,"hide-details":l.hideDetails,"return-object":l.returnObject,"no-data-text":l.noDataText,"error-messages":e.unref(c),"menu-props":{maxWidth:0}}),e.createSlots({_:2},[e.renderList(p.$slots,(b,C)=>({name:C,fn:e.withCtx(D=>[e.renderSlot(p.$slots,C,e.normalizeProps(e.guardReactiveProps(D??{})))])}))]),1040,["modelValue","name","items","rounded","variant","density","color","clearable","hide-details","return-object","no-data-text","error-messages"]))}}),T=e.defineComponent({name:"FCheckbox",inheritAttrs:!1,__name:"FCheckbox",props:{color:{default:"secondary"},hideDetails:{type:[Boolean,String],default:"auto"},indeterminate:{type:Boolean,default:!1},density:{default:"compact"}},setup(o){const t=o;return(a,l)=>(e.openBlock(),e.createBlock(e.unref(k.VCheckbox),e.mergeProps(a.$attrs,{color:t.color,"hide-details":t.hideDetails,indeterminate:t.indeterminate,density:t.density}),null,16,["color","hide-details","indeterminate","density"]))}}),N=e.defineComponent({name:"FCurrencyField",inheritAttrs:!1,__name:"FCurrencyField",props:{name:{},label:{default:""},readonly:{type:Boolean,default:!1},hideDetails:{type:[Boolean,String],default:"auto"},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},color:{default:"secondary"},locale:{default:"tr-TR"},currency:{default:"TRY"},precision:{default:2},modelValue:{default:null},rules:{type:[String,Function],default:""}},setup(o){const t=o,a=e.computed(()=>t.rules),{errorMessage:l,value:n}=B.useField(()=>t.name,a,{initialValue:t.modelValue,syncVModel:!0}),c=e.computed(()=>new Intl.NumberFormat(t.locale,{style:"currency",currency:t.currency,minimumFractionDigits:t.precision,maximumFractionDigits:t.precision})),d=e.ref(i(t.modelValue));function i(y){return y==null||isNaN(y)?"":c.value.format(y)}function p(y){const h=y.replace(/[^\d,.-]/g,"").replace(/\./g,"").replace(",","."),V=parseFloat(h);return isNaN(V)?null:Math.round(V*Math.pow(10,t.precision))/Math.pow(10,t.precision)}const u=e.ref(!1);function b(y){const h=y.target;d.value=h.value,n.value=p(h.value)}function C(){u.value=!1,d.value=i(n.value)}function D(y){u.value=!0;const h=y.target,V=n.value;V!=null?d.value=V.toFixed(t.precision).replace(".",","):d.value="",setTimeout(()=>h.select(),0)}return e.watch(()=>t.modelValue,y=>{n.value=y,u.value||(d.value=i(y))}),(y,h)=>(e.openBlock(),e.createBlock(e.unref(k.VTextField),e.mergeProps(y.$attrs,{"model-value":d.value,name:t.name,label:t.label,readonly:t.readonly,"hide-details":t.hideDetails,rounded:t.rounded,variant:t.variant,density:t.density,color:t.color,"error-messages":e.unref(l),inputmode:"decimal",onInput:b,onBlur:C,onFocus:D}),null,16,["model-value","name","label","readonly","hide-details","rounded","variant","density","color","error-messages"]))}}),R=e.defineComponent({name:"FSelect",inheritAttrs:!1,__name:"FSelect",props:{name:{},items:{default:()=>[]},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},color:{default:"secondary"},hideDetails:{type:[Boolean,String],default:"auto"},returnObject:{type:Boolean,default:!1},modelValue:{default:""},rules:{type:[String,Function],default:""}},setup(o){const t=o,a=e.computed(()=>t.rules),{errorMessage:l,value:n}=B.useField(()=>t.name,a,{initialValue:t.modelValue,syncVModel:!0});return(c,d)=>(e.openBlock(),e.createBlock(e.unref(k.VSelect),e.mergeProps(c.$attrs,{modelValue:e.unref(n),"onUpdate:modelValue":d[0]||(d[0]=i=>e.isRef(n)?n.value=i:null),name:t.name,items:t.items,rounded:t.rounded,variant:t.variant,density:t.density,color:t.color,"hide-details":t.hideDetails,"return-object":t.returnObject,"error-messages":e.unref(l)}),e.createSlots({_:2},[e.renderList(c.$slots,(i,p)=>({name:p,fn:e.withCtx(u=>[e.renderSlot(c.$slots,p,e.normalizeProps(e.guardReactiveProps(u??{})))])}))]),1040,["modelValue","name","items","rounded","variant","density","color","hide-details","return-object","error-messages"]))}}),A=e.defineComponent({name:"FNumberField",inheritAttrs:!1,__name:"FNumberField",props:{name:{},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},controlVariant:{default:"stacked"},color:{default:"secondary"},label:{default:""},placeholder:{default:""},prefix:{default:""},hideDetails:{type:[Boolean,String],default:"auto"},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},min:{default:0},precision:{default:0},inset:{type:Boolean,default:!0},modelValue:{default:-1},rules:{type:[String,Function],default:""}},setup(o){const t=o,a=e.computed(()=>t.rules),{errorMessage:l,value:n}=B.useField(()=>t.name,a,{initialValue:t.modelValue,syncVModel:!0});return(c,d)=>(e.openBlock(),e.createBlock(e.unref(k.VNumberInput),e.mergeProps(c.$attrs,{modelValue:e.unref(n),"onUpdate:modelValue":d[0]||(d[0]=i=>e.isRef(n)?n.value=i:null),name:t.name,color:t.color,density:t.density,rounded:t.rounded,variant:t.variant,"control-variant":t.controlVariant,"hide-details":t.hideDetails,placeholder:t.placeholder,label:t.label,prefix:t.prefix,disabled:t.disabled,readonly:t.readonly,min:t.min,precision:t.precision,inset:t.inset,"error-messages":e.unref(l)}),null,16,["modelValue","name","color","density","rounded","variant","control-variant","hide-details","placeholder","label","prefix","disabled","readonly","min","precision","inset","error-messages"]))}}),X={key:0},H={key:1},I=e.defineComponent({name:"FSwitch",inheritAttrs:!1,__name:"FSwitch",props:e.mergeModels({color:{default:"secondary"},density:{default:"comfortable"},hideDetails:{type:[Boolean,String],default:"auto"},labelTrue:{default:""},labelFalse:{default:""}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:["update:modelValue"],setup(o){const t=o,a=e.useModel(o,"modelValue");return(l,n)=>(e.openBlock(),e.createBlock(e.unref(k.VSwitch),e.mergeProps(l.$attrs,{modelValue:a.value,"onUpdate:modelValue":n[0]||(n[0]=c=>a.value=c),color:t.color,"hide-details":t.hideDetails,density:t.density}),e.createSlots({_:2},[t.labelTrue||t.labelFalse?{name:"label",fn:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("span",X,e.toDisplayString(t.labelTrue),1)):(e.openBlock(),e.createElementBlock("span",H,e.toDisplayString(t.labelFalse),1))]),key:"0"}:void 0]),1040,["modelValue","color","hide-details","density"]))}}),L={install(o){o.component("FButton",_),o.component("FTextField",x),o.component("FDataTable",$),o.component("FTextarea",M),o.component("FAutocomplete",P),o.component("FCheckbox",T),o.component("FCurrencyField",N),o.component("FSelect",R),o.component("FNumberField",A),o.component("FSwitch",I)}};m.FAutocomplete=P,m.FButton=_,m.FCheckbox=T,m.FCurrencyField=N,m.FDataTable=$,m.FNumberField=A,m.FSelect=R,m.FSwitch=I,m.FTextField=x,m.FTextarea=M,m.default=L,Object.defineProperties(m,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1
+ (function(c,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vuetify/components"),require("maska/vue"),require("vee-validate")):typeof define=="function"&&define.amd?define(["exports","vue","vuetify/components","maska/vue","vee-validate"],e):(c=typeof globalThis<"u"?globalThis:c||self,e(c.FinsoVueComponents={},c.Vue,c.VuetifyComponents,c.MaskaVue,c.VeeValidate))})(this,(function(c,e,k,U,F){"use strict";const _=e.defineComponent({__name:"FButton",props:{color:{default:"primary"},rounded:{type:[String,Number,Boolean],default:"lg"}},setup(o){const t=o;return(a,n)=>{const l=e.resolveComponent("v-btn");return e.openBlock(),e.createBlock(l,{color:t.color,rounded:t.rounded},null,8,["color","rounded"])}}}),x=e.defineComponent({name:"FTextField",inheritAttrs:!1,__name:"FTextField",props:{name:{},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},color:{default:"secondary"},clearable:{type:Boolean,default:!0},hideDetails:{type:[Boolean,String],default:"auto"},appendInnerIcon:{default:""},mask:{default:""},modelValue:{default:""},rules:{type:[String,Function],default:""}},emits:["clickAppendInner"],setup(o){const t=o,a=e.computed(()=>t.rules),{errorMessage:n,value:l}=F.useField(()=>t.name,a,{initialValue:t.modelValue,syncVModel:!0});return(u,d)=>e.withDirectives((e.openBlock(),e.createBlock(e.unref(k.VTextField),e.mergeProps(u.$attrs,{modelValue:e.unref(l),"onUpdate:modelValue":d[0]||(d[0]=i=>e.isRef(l)?l.value=i:null),name:t.name,color:t.color,density:t.density,rounded:t.rounded,variant:t.variant,clearable:t.clearable,"hide-details":t.hideDetails,"error-messages":e.unref(n),"append-inner-icon":t.appendInnerIcon,"onClick:appendInner":d[1]||(d[1]=i=>u.$emit("clickAppendInner"))}),e.createSlots({_:2},[e.renderList(u.$slots,(i,p)=>({name:p,fn:e.withCtx(m=>[e.renderSlot(u.$slots,p,e.normalizeProps(e.guardReactiveProps(m??{})))])}))]),1040,["modelValue","name","color","density","rounded","variant","clearable","hide-details","error-messages","append-inner-icon"])),[[e.unref(U.vMaska),t.mask]])}}),z={key:1},j={key:4},O={class:"f-data-table__actions"},M=((o,t)=>{const a=o.__vccOpts||o;for(const[n,l]of t)a[n]=l;return a})(e.defineComponent({name:"FDataTable",inheritAttrs:!1,__name:"FDataTable",props:e.mergeModels({headers:{},items:{},loading:{type:Boolean,default:!1},hover:{type:Boolean,default:!0},density:{default:"default"},maxHeight:{default:576},showSelect:{type:Boolean,default:!1},serverSide:{type:Boolean,default:!1},totalCount:{default:0},canEditRecord:{type:Boolean,default:!0},canDeleteRecord:{type:Boolean,default:!0},canReadRecord:{type:Boolean,default:!0},showDeleteConfirm:{type:Boolean,default:!0},labelActive:{default:"Active"},labelPassive:{default:"Passive"},labelDeleteTitle:{default:"Delete"},deleteMessageFormatter:{},labelDeleteMessage:{default:"Are you sure you want to delete this record?"},labelDeleteConfirm:{default:"Delete"},labelDeleteCancel:{default:"Cancel"},labelItemsPerPage:{default:"Items per page"},labelNoData:{default:"No data available"},moneyLocale:{default:"tr-TR"},moneyCurrency:{default:"TRY"},gsmPattern:{default:"(XXX) XXX XXXX"}},{page:{default:1},pageModifiers:{},itemsPerPage:{default:10},itemsPerPageModifiers:{},sortBy:{default:()=>[]},sortByModifiers:{}}),emits:e.mergeModels(["show-record","delete-record"],["update:page","update:itemsPerPage","update:sortBy"]),setup(o,{emit:t}){const a=o,n=t,l=e.useModel(o,"page"),u=e.useModel(o,"itemsPerPage"),d=e.useModel(o,"sortBy"),i=e.ref(!1),p=e.ref(null);function m(s,f){return f.split(".").reduce((B,w)=>B==null?void 0:B[w],s)}function b(s){return s==null?"":new Intl.NumberFormat(a.moneyLocale,{style:"currency",currency:a.moneyCurrency}).format(s)}function C(s){if(!s)return"";const f=s.replace(/\D/g,"");return f.length<10?s:`(${f.substring(0,3)}) ${f.substring(3,6)} ${f.substring(6,10)}`}const D=e.computed(()=>{const B=a.items.length*52+56;return Math.min(B,a.maxHeight)}),y=e.computed(()=>!a.canEditRecord&&!a.canReadRecord?{}:{"click:row":(s,{item:f})=>{n("show-record",f)}}),h=e.computed(()=>a.headers.filter(s=>s.type&&s.key!=="actions")),V=e.computed(()=>a.headers.some(s=>s.key==="actions"));function q(s){a.showDeleteConfirm?(p.value=s,i.value=!0):n("delete-record",s)}function G(){n("delete-record",p.value),i.value=!1,p.value=null}return(s,f)=>{const B=e.resolveComponent("v-img"),w=e.resolveComponent("v-avatar"),Y=e.resolveComponent("v-chip"),W=e.resolveComponent("v-icon"),S=e.resolveComponent("v-btn"),J=e.resolveComponent("v-card-title"),K=e.resolveComponent("v-card-text"),Q=e.resolveComponent("v-spacer"),Z=e.resolveComponent("v-card-actions"),v=e.resolveComponent("v-card"),ee=e.resolveComponent("v-dialog");return e.openBlock(),e.createElementBlock("div",null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.serverSide?"v-data-table-server":"v-data-table"),e.mergeProps(s.$attrs,{page:l.value,"onUpdate:page":f[0]||(f[0]=r=>l.value=r),"items-per-page":u.value,"onUpdate:itemsPerPage":f[1]||(f[1]=r=>u.value=r),"sort-by":d.value,"onUpdate:sortBy":f[2]||(f[2]=r=>d.value=r),headers:o.headers,items:o.items,"items-length":o.serverSide?o.totalCount:void 0,loading:o.loading,hover:o.hover,density:o.density,height:D.value,"show-select":o.showSelect,"items-per-page-text":o.labelItemsPerPage,"no-data-text":o.labelNoData},e.toHandlers(y.value)),e.createSlots({_:2},[e.renderList(h.value,r=>({name:`item.${r.key}`,fn:e.withCtx(({item:g})=>[e.renderSlot(s.$slots,`item.${r.key}`,{item:g,value:m(g,r.key)},()=>[r.type==="image"?(e.openBlock(),e.createBlock(w,{key:0,rounded:"lg",variant:"elevated"},{default:e.withCtx(()=>[e.createVNode(B,{src:m(g,r.key),class:"f-data-table__logo"},null,8,["src"])]),_:2},1024)):r.type==="money"?(e.openBlock(),e.createElementBlock("span",z,e.toDisplayString(b(m(g,r.key))),1)):r.type==="status"?(e.openBlock(),e.createBlock(Y,{key:2,color:m(g,r.key)?"green-darken-1":"red-darken-2",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m(g,r.key)?o.labelActive:o.labelPassive),1)]),_:2},1032,["color"])):r.type==="boolean"?(e.openBlock(),e.createBlock(W,{key:3,color:m(g,r.key)?"green-darken-1":"red-darken-2"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m(g,r.key)?"mdi-check":"mdi-close"),1)]),_:2},1032,["color"])):r.type==="gsmNo"?(e.openBlock(),e.createElementBlock("span",j,e.toDisplayString(C(m(g,r.key))),1)):e.createCommentVNode("",!0)],!0)])})),V.value?{name:"item.actions",fn:e.withCtx(({item:r})=>[e.renderSlot(s.$slots,"item.actions",{item:r},()=>[e.createElementVNode("div",O,[o.canEditRecord||o.canReadRecord?(e.openBlock(),e.createBlock(S,{key:0,icon:"mdi-pencil",variant:"text",size:"small",onClick:e.withModifiers(g=>n("show-record",r),["stop"])},null,8,["onClick"])):e.createCommentVNode("",!0),o.canDeleteRecord?(e.openBlock(),e.createBlock(S,{key:1,icon:"mdi-delete",variant:"text",size:"small",color:"red-darken-2",onClick:e.withModifiers(g=>q(r),["stop"])},null,8,["onClick"])):e.createCommentVNode("",!0)])],!0)]),key:"0"}:void 0,e.renderList(s.$slots,(r,g)=>({name:g,fn:e.withCtx(te=>[e.renderSlot(s.$slots,g,e.normalizeProps(e.guardReactiveProps(te??{})),void 0,!0)])}))]),1040,["page","items-per-page","sort-by","headers","items","items-length","loading","hover","density","height","show-select","items-per-page-text","no-data-text"])),e.createVNode(ee,{modelValue:i.value,"onUpdate:modelValue":f[4]||(f[4]=r=>i.value=r),"max-width":"400"},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(J,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.labelDeleteTitle),1)]),_:1}),e.createVNode(K,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.deleteMessageFormatter&&p.value?o.deleteMessageFormatter(p.value):o.labelDeleteMessage),1)]),_:1}),e.createVNode(Z,null,{default:e.withCtx(()=>[e.createVNode(Q),e.createVNode(S,{variant:"text",onClick:f[3]||(f[3]=r=>i.value=!1)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.labelDeleteCancel),1)]),_:1}),e.createVNode(S,{color:"red-darken-2",variant:"flat",onClick:G},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.labelDeleteConfirm),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-ef0a08d5"]]);var $=(o=>(o.IMAGE="image",o.MONEY="money",o.STATUS="status",o.BOOLEAN="boolean",o.GSM_NO="gsmNo",o))($||{});const N=e.defineComponent({name:"FTextarea",inheritAttrs:!1,__name:"FTextarea",props:{name:{},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},color:{default:"secondary"},label:{default:""},hideDetails:{type:[Boolean,String],default:"auto"},noResize:{type:Boolean,default:!0},rows:{default:""},modelValue:{default:""},rules:{type:[String,Function],default:""}},setup(o){const t=o,a=e.computed(()=>t.rules),{errorMessage:n,value:l}=F.useField(()=>t.name,a,{initialValue:t.modelValue,syncVModel:!0});return(u,d)=>(e.openBlock(),e.createBlock(e.unref(k.VTextarea),e.mergeProps(u.$attrs,{modelValue:e.unref(l),"onUpdate:modelValue":d[0]||(d[0]=i=>e.isRef(l)?l.value=i:null),name:t.name,rounded:t.rounded,variant:t.variant,rows:t.rows,density:t.density,color:t.color,label:t.label,"hide-details":t.hideDetails,"no-resize":t.noResize,"error-messages":e.unref(n)}),null,16,["modelValue","name","rounded","variant","rows","density","color","label","hide-details","no-resize","error-messages"]))}}),P=e.defineComponent({name:"FAutocomplete",inheritAttrs:!1,__name:"FAutocomplete",props:{name:{},items:{default:()=>[]},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},color:{default:"secondary"},clearable:{type:Boolean,default:!0},hideDetails:{type:[Boolean,String],default:"auto"},returnObject:{type:Boolean,default:!0},noDataText:{default:""},modelValue:{default:null},rules:{type:[String,Function],default:""}},emits:["change"],setup(o,{emit:t}){const a=t,n=o,l=e.computed(()=>n.rules),{errorMessage:u,value:d}=F.useField(()=>n.name,l,{initialValue:n.modelValue,syncVModel:!0});function i(p){a("change",p)}return(p,m)=>(e.openBlock(),e.createBlock(e.unref(k.VAutocomplete),e.mergeProps(p.$attrs,{modelValue:e.unref(d),"onUpdate:modelValue":[m[0]||(m[0]=b=>e.isRef(d)?d.value=b:null),m[1]||(m[1]=b=>i(e.unref(d)))],name:n.name,items:n.items,rounded:n.rounded,variant:n.variant,density:n.density,color:n.color,clearable:n.clearable,"hide-details":n.hideDetails,"return-object":n.returnObject,"no-data-text":n.noDataText,"error-messages":e.unref(u),"menu-props":{maxWidth:0}}),e.createSlots({_:2},[e.renderList(p.$slots,(b,C)=>({name:C,fn:e.withCtx(D=>[e.renderSlot(p.$slots,C,e.normalizeProps(e.guardReactiveProps(D??{})))])}))]),1040,["modelValue","name","items","rounded","variant","density","color","clearable","hide-details","return-object","no-data-text","error-messages"]))}}),T=e.defineComponent({name:"FCheckbox",inheritAttrs:!1,__name:"FCheckbox",props:{color:{default:"secondary"},hideDetails:{type:[Boolean,String],default:"auto"},indeterminate:{type:Boolean,default:!1},density:{default:"compact"}},setup(o){const t=o;return(a,n)=>(e.openBlock(),e.createBlock(e.unref(k.VCheckbox),e.mergeProps(a.$attrs,{color:t.color,"hide-details":t.hideDetails,indeterminate:t.indeterminate,density:t.density}),null,16,["color","hide-details","indeterminate","density"]))}}),R=e.defineComponent({name:"FCurrencyField",inheritAttrs:!1,__name:"FCurrencyField",props:{name:{},label:{default:""},readonly:{type:Boolean,default:!1},hideDetails:{type:[Boolean,String],default:"auto"},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},color:{default:"secondary"},locale:{default:"tr-TR"},currency:{default:"TRY"},precision:{default:2},modelValue:{default:null},rules:{type:[String,Function],default:""}},setup(o){const t=o,a=e.computed(()=>t.rules),{errorMessage:n,value:l}=F.useField(()=>t.name,a,{initialValue:t.modelValue,syncVModel:!0}),u=e.computed(()=>new Intl.NumberFormat(t.locale,{style:"currency",currency:t.currency,minimumFractionDigits:t.precision,maximumFractionDigits:t.precision})),d=e.ref(i(t.modelValue));function i(y){return y==null||isNaN(y)?"":u.value.format(y)}function p(y){const h=y.replace(/[^\d,.-]/g,"").replace(/\./g,"").replace(",","."),V=parseFloat(h);return isNaN(V)?null:Math.round(V*Math.pow(10,t.precision))/Math.pow(10,t.precision)}const m=e.ref(!1);function b(y){const h=y.target;d.value=h.value,l.value=p(h.value)}function C(){m.value=!1,d.value=i(l.value)}function D(y){m.value=!0;const h=y.target,V=l.value;V!=null?d.value=V.toFixed(t.precision).replace(".",","):d.value="",setTimeout(()=>h.select(),0)}return e.watch(()=>t.modelValue,y=>{l.value=y,m.value||(d.value=i(y))}),(y,h)=>(e.openBlock(),e.createBlock(e.unref(k.VTextField),e.mergeProps(y.$attrs,{"model-value":d.value,name:t.name,label:t.label,readonly:t.readonly,"hide-details":t.hideDetails,rounded:t.rounded,variant:t.variant,density:t.density,color:t.color,"error-messages":e.unref(n),inputmode:"decimal",onInput:b,onBlur:C,onFocus:D}),null,16,["model-value","name","label","readonly","hide-details","rounded","variant","density","color","error-messages"]))}}),A=e.defineComponent({name:"FSelect",inheritAttrs:!1,__name:"FSelect",props:{name:{},items:{default:()=>[]},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},color:{default:"secondary"},hideDetails:{type:[Boolean,String],default:"auto"},returnObject:{type:Boolean,default:!1},modelValue:{default:""},rules:{type:[String,Function],default:""}},setup(o){const t=o,a=e.computed(()=>t.rules),{errorMessage:n,value:l}=F.useField(()=>t.name,a,{initialValue:t.modelValue,syncVModel:!0});return(u,d)=>(e.openBlock(),e.createBlock(e.unref(k.VSelect),e.mergeProps(u.$attrs,{modelValue:e.unref(l),"onUpdate:modelValue":d[0]||(d[0]=i=>e.isRef(l)?l.value=i:null),name:t.name,items:t.items,rounded:t.rounded,variant:t.variant,density:t.density,color:t.color,"hide-details":t.hideDetails,"return-object":t.returnObject,"error-messages":e.unref(n)}),e.createSlots({_:2},[e.renderList(u.$slots,(i,p)=>({name:p,fn:e.withCtx(m=>[e.renderSlot(u.$slots,p,e.normalizeProps(e.guardReactiveProps(m??{})))])}))]),1040,["modelValue","name","items","rounded","variant","density","color","hide-details","return-object","error-messages"]))}}),I=e.defineComponent({name:"FNumberField",inheritAttrs:!1,__name:"FNumberField",props:{name:{},rounded:{default:"lg"},variant:{default:"outlined"},density:{default:"compact"},controlVariant:{default:"stacked"},color:{default:"secondary"},label:{default:""},placeholder:{default:""},prefix:{default:""},hideDetails:{type:[Boolean,String],default:"auto"},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},min:{default:0},precision:{default:0},inset:{type:Boolean,default:!0},modelValue:{default:-1},rules:{type:[String,Function],default:""}},setup(o){const t=o,a=e.computed(()=>t.rules),{errorMessage:n,value:l}=F.useField(()=>t.name,a,{initialValue:t.modelValue,syncVModel:!0});return(u,d)=>(e.openBlock(),e.createBlock(e.unref(k.VNumberInput),e.mergeProps(u.$attrs,{modelValue:e.unref(l),"onUpdate:modelValue":d[0]||(d[0]=i=>e.isRef(l)?l.value=i:null),name:t.name,color:t.color,density:t.density,rounded:t.rounded,variant:t.variant,"control-variant":t.controlVariant,"hide-details":t.hideDetails,placeholder:t.placeholder,label:t.label,prefix:t.prefix,disabled:t.disabled,readonly:t.readonly,min:t.min,precision:t.precision,inset:t.inset,"error-messages":e.unref(n)}),null,16,["modelValue","name","color","density","rounded","variant","control-variant","hide-details","placeholder","label","prefix","disabled","readonly","min","precision","inset","error-messages"]))}}),X={key:0},L={key:1},E=e.defineComponent({name:"FSwitch",inheritAttrs:!1,__name:"FSwitch",props:e.mergeModels({color:{default:"secondary"},density:{default:"comfortable"},hideDetails:{type:[Boolean,String],default:"auto"},labelTrue:{default:""},labelFalse:{default:""}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:["update:modelValue"],setup(o){const t=o,a=e.useModel(o,"modelValue");return(n,l)=>(e.openBlock(),e.createBlock(e.unref(k.VSwitch),e.mergeProps(n.$attrs,{modelValue:a.value,"onUpdate:modelValue":l[0]||(l[0]=u=>a.value=u),color:t.color,"hide-details":t.hideDetails,density:t.density}),e.createSlots({_:2},[t.labelTrue||t.labelFalse?{name:"label",fn:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("span",X,e.toDisplayString(t.labelTrue),1)):(e.openBlock(),e.createElementBlock("span",L,e.toDisplayString(t.labelFalse),1))]),key:"0"}:void 0]),1040,["modelValue","color","hide-details","density"]))}}),H={install(o){o.component("FButton",_),o.component("FTextField",x),o.component("FDataTable",M),o.component("FTextarea",N),o.component("FAutocomplete",P),o.component("FCheckbox",T),o.component("FCurrencyField",R),o.component("FSelect",A),o.component("FNumberField",I),o.component("FSwitch",E)}};c.FAutocomplete=P,c.FButton=_,c.FCheckbox=T,c.FCurrencyField=R,c.FDataTable=M,c.FDataTableHeaderType=$,c.FNumberField=I,c.FSelect=A,c.FSwitch=E,c.FTextField=x,c.FTextarea=N,c.default=H,Object.defineProperties(c,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import type { Plugin } from 'vue';
2
2
  export { FButton } from './components/FButton';
3
3
  export { FTextField } from './components/FTextField';
4
- export { FDataTable } from './components/FDataTable';
4
+ export { FDataTable, FDataTableHeaderType } from './components/FDataTable';
5
5
  export { FTextarea } from './components/FTextarea';
6
6
  export { FAutocomplete } from './components/FAutocomplete';
7
7
  export { FCheckbox } from './components/FCheckbox';
@@ -11,7 +11,7 @@ export { FNumberField } from './components/FNumberField';
11
11
  export { FSwitch } from './components/FSwitch';
12
12
  export type { FButtonProps } from './components/FButton';
13
13
  export type { FTextFieldProps } from './components/FTextField';
14
- export type { FDataTableProps, FDataTableHeader, FDataTableHeaderType } from './components/FDataTable';
14
+ export type { FDataTableProps, FDataTableHeader } from './components/FDataTable';
15
15
  export type { FTextareaProps } from './components/FTextarea';
16
16
  export type { FAutocompleteProps } from './components/FAutocomplete';
17
17
  export type { FCheckboxProps } from './components/FCheckbox';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "finso-vue-components",
3
- "version": "0.4.5",
3
+ "version": "0.4.6",
4
4
  "description": "Finso Vue 3 + Vuetify UI Component Library",
5
5
  "type": "module",
6
6
  "main": "./dist/finso-vue-components.umd.cjs",