@stsdti/funky-ui-kit 1.8.8 → 1.8.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/funky-ui-kit.css +1 -1
- package/dist/funky-ui-kit.esm.js +1060 -1115
- package/dist/funky-ui-kit.esm.js.map +1 -1
- package/package.json +1 -1
- package/web-types.json +44 -515
package/dist/funky-ui-kit.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as Vue from "vue";
|
|
2
|
-
import { Fragment, Teleport, Transition, TransitionGroup, computed, createApp, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createTextVNode, createVNode, defineComponent, getCurrentInstance, guardReactiveProps, h, inject, isReactive, isRef, isVNode, markRaw, mergeDefaults, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onBeforeUpdate, onMounted, onUnmounted, openBlock, provide, reactive, readonly, ref, render, renderList, renderSlot, resolveComponent, resolveDirective, resolveDynamicComponent, shallowRef, toDisplayString, toRef, toValue, unref, useAttrs, useModel, useSlots, useTemplateRef, vModelDynamic, vModelText, vShow, watch, watchEffect, withCtx, withDirectives, withKeys, withModifiers } from "vue";
|
|
2
|
+
import { Fragment, Teleport, Transition, TransitionGroup, computed, createApp, createBlock, createCommentVNode, createElementBlock, createElementVNode, createPropsRestProxy, createSlots, createTextVNode, createVNode, defineComponent, getCurrentInstance, guardReactiveProps, h, inject, isReactive, isRef, isVNode, markRaw, mergeDefaults, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onBeforeUpdate, onMounted, onUnmounted, openBlock, provide, reactive, readonly, ref, render, renderList, renderSlot, resolveComponent, resolveDirective, resolveDynamicComponent, shallowRef, toDisplayString, toRef, toValue, unref, useAttrs, useModel, useSlots, useTemplateRef, vModelDynamic, vModelText, vShow, watch, watchEffect, withCtx, withDirectives, withKeys, withModifiers } from "vue";
|
|
3
3
|
import draggable from "vuedraggable";
|
|
4
4
|
//#region \0rolldown/runtime.js
|
|
5
5
|
var __create = Object.create;
|
|
@@ -16226,7 +16226,7 @@ var deepHas = (obj, p) => {
|
|
|
16226
16226
|
let parent = (0, import_property_expr.getter)((0, import_property_expr.join)(path), true)(obj);
|
|
16227
16227
|
return !!(parent && last in parent);
|
|
16228
16228
|
};
|
|
16229
|
-
var isObject$
|
|
16229
|
+
var isObject$16 = (obj) => Object.prototype.toString.call(obj) === "[object Object]";
|
|
16230
16230
|
function unknown(ctx, value) {
|
|
16231
16231
|
let known = Object.keys(ctx.fields);
|
|
16232
16232
|
return Object.keys(value).filter((key) => known.indexOf(key) === -1);
|
|
@@ -16240,7 +16240,7 @@ var ObjectSchema = class extends Schema {
|
|
|
16240
16240
|
super({
|
|
16241
16241
|
type: "object",
|
|
16242
16242
|
check(value) {
|
|
16243
|
-
return isObject$
|
|
16243
|
+
return isObject$16(value) || typeof value === "function";
|
|
16244
16244
|
}
|
|
16245
16245
|
});
|
|
16246
16246
|
this.fields = Object.create(null);
|
|
@@ -16299,7 +16299,7 @@ var ObjectSchema = class extends Schema {
|
|
|
16299
16299
|
options.__validating = true;
|
|
16300
16300
|
options.originalValue = originalValue;
|
|
16301
16301
|
super._validate(_value, options, panic, (objectErrors, value) => {
|
|
16302
|
-
if (!recursive || !isObject$
|
|
16302
|
+
if (!recursive || !isObject$16(value)) {
|
|
16303
16303
|
next(objectErrors, value);
|
|
16304
16304
|
return;
|
|
16305
16305
|
}
|
|
@@ -18850,12 +18850,12 @@ var _sfc_main$33 = {
|
|
|
18850
18850
|
//#endregion
|
|
18851
18851
|
//#region src/components/small/app-breadcrumb/AppBreadcrumbs.vue
|
|
18852
18852
|
var _hoisted_1$83 = { class: "breadcrumb" };
|
|
18853
|
-
var _hoisted_2$
|
|
18853
|
+
var _hoisted_2$59 = {
|
|
18854
18854
|
key: 0,
|
|
18855
18855
|
class: "breadcrumb-elements-item"
|
|
18856
18856
|
};
|
|
18857
|
-
var _hoisted_3$
|
|
18858
|
-
var _hoisted_4$
|
|
18857
|
+
var _hoisted_3$42 = { class: "flex-center-vertical" };
|
|
18858
|
+
var _hoisted_4$33 = {
|
|
18859
18859
|
key: 0,
|
|
18860
18860
|
class: "pl-5 pr-5"
|
|
18861
18861
|
};
|
|
@@ -18880,14 +18880,14 @@ var _sfc_main$2 = {
|
|
|
18880
18880
|
};
|
|
18881
18881
|
return (_ctx, _cache) => {
|
|
18882
18882
|
const _component_router_link = resolveComponent("router-link");
|
|
18883
|
-
return openBlock(), createElementBlock("div", _hoisted_1$83, [__props.isLoading ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
18883
|
+
return openBlock(), createElementBlock("div", _hoisted_1$83, [__props.isLoading ? (openBlock(), createElementBlock("div", _hoisted_2$59, [createVNode(_sfc_main$33, { style: {
|
|
18884
18884
|
"width": "200px",
|
|
18885
18885
|
"height": "20px"
|
|
18886
18886
|
} })])) : (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(__props.value, (breadcrumb, index) => {
|
|
18887
|
-
return openBlock(), createElementBlock("div", _hoisted_3$
|
|
18887
|
+
return openBlock(), createElementBlock("div", _hoisted_3$42, [renderSlot(_ctx.$slots, "breadcrumb", {
|
|
18888
18888
|
index,
|
|
18889
18889
|
item: breadcrumb
|
|
18890
|
-
}, () => [index !== 0 ? (openBlock(), createElementBlock("span", _hoisted_4$
|
|
18890
|
+
}, () => [index !== 0 ? (openBlock(), createElementBlock("span", _hoisted_4$33, "/")) : createCommentVNode("", true), (openBlock(), createBlock(_component_router_link, {
|
|
18891
18891
|
key: index,
|
|
18892
18892
|
class: normalizeClass(getBreadcrumbClass(breadcrumb)),
|
|
18893
18893
|
to: breadcrumb.route ? breadcrumb.route : "/"
|
|
@@ -21857,20 +21857,20 @@ var booleanProps = [
|
|
|
21857
21857
|
"touch",
|
|
21858
21858
|
"touchHold"
|
|
21859
21859
|
];
|
|
21860
|
-
var props = {};
|
|
21860
|
+
var props$2 = {};
|
|
21861
21861
|
Object.keys(tippy.defaultProps).forEach((prop) => {
|
|
21862
|
-
if (booleanProps.includes(prop)) props[prop] = {
|
|
21862
|
+
if (booleanProps.includes(prop)) props$2[prop] = {
|
|
21863
21863
|
type: Boolean,
|
|
21864
21864
|
default: function() {
|
|
21865
21865
|
return tippy.defaultProps[prop];
|
|
21866
21866
|
}
|
|
21867
21867
|
};
|
|
21868
|
-
else props[prop] = { default: function() {
|
|
21868
|
+
else props$2[prop] = { default: function() {
|
|
21869
21869
|
return tippy.defaultProps[prop];
|
|
21870
21870
|
} };
|
|
21871
21871
|
});
|
|
21872
21872
|
var TippySingleton = defineComponent({
|
|
21873
|
-
props,
|
|
21873
|
+
props: props$2,
|
|
21874
21874
|
setup(props) {
|
|
21875
21875
|
const instances = ref([]);
|
|
21876
21876
|
const { singleton } = useSingleton(instances, props);
|
|
@@ -22295,15 +22295,15 @@ var _plugin_vue_export_helper_default = (sfc, props) => {
|
|
|
22295
22295
|
//#endregion
|
|
22296
22296
|
//#region src/components/small/base/app-form-element/AppFormElement.vue
|
|
22297
22297
|
var _hoisted_1$82 = ["name"];
|
|
22298
|
-
var _hoisted_2$
|
|
22298
|
+
var _hoisted_2$58 = {
|
|
22299
22299
|
key: 0,
|
|
22300
22300
|
class: "text-danger"
|
|
22301
22301
|
};
|
|
22302
|
-
var _hoisted_3$
|
|
22302
|
+
var _hoisted_3$41 = {
|
|
22303
22303
|
key: 0,
|
|
22304
22304
|
class: "help-block text-danger"
|
|
22305
22305
|
};
|
|
22306
|
-
var _hoisted_4$
|
|
22306
|
+
var _hoisted_4$32 = {
|
|
22307
22307
|
key: 1,
|
|
22308
22308
|
class: "help-block"
|
|
22309
22309
|
};
|
|
@@ -22377,14 +22377,14 @@ var AppFormElement_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
22377
22377
|
key: 0,
|
|
22378
22378
|
class: "mb-0",
|
|
22379
22379
|
style: normalizeStyle(labelStyle.value)
|
|
22380
|
-
}, [createTextVNode(toDisplayString(unref(computedLabel)) + " ", 1), _ctx.isRequired ? withDirectives((openBlock(), createElementBlock("span", _hoisted_2$
|
|
22380
|
+
}, [createTextVNode(toDisplayString(unref(computedLabel)) + " ", 1), _ctx.isRequired ? withDirectives((openBlock(), createElementBlock("span", _hoisted_2$58, [..._cache[0] || (_cache[0] = [createTextVNode(" * ", -1)])])), [[_directive_tippy, "Camp obligatoriu"]]) : createCommentVNode("", true)], 4)) : createCommentVNode("", true), createElementVNode("div", { style: normalizeStyle(contentStyle.value) }, [
|
|
22381
22381
|
createElementVNode("div", { class: normalizeClass(contentContainerClass.value) }, [
|
|
22382
22382
|
renderSlot(_ctx.$slots, "beforeContent", {}, void 0, true),
|
|
22383
22383
|
createElementVNode("div", { class: normalizeClass(contentSlotClass.value) }, [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 2),
|
|
22384
22384
|
renderSlot(_ctx.$slots, "afterContent", {}, void 0, true)
|
|
22385
22385
|
], 2),
|
|
22386
|
-
currentError.value ? (openBlock(), createElementBlock("span", _hoisted_3$
|
|
22387
|
-
_ctx.infoText ? (openBlock(), createElementBlock("span", _hoisted_4$
|
|
22386
|
+
currentError.value ? (openBlock(), createElementBlock("span", _hoisted_3$41, toDisplayString(currentError.value), 1)) : createCommentVNode("", true),
|
|
22387
|
+
_ctx.infoText ? (openBlock(), createElementBlock("span", _hoisted_4$32, toDisplayString(_ctx.infoText), 1)) : createCommentVNode("", true),
|
|
22388
22388
|
renderSlot(_ctx.$slots, "help-block", {}, void 0, true)
|
|
22389
22389
|
], 4)], 10, _hoisted_1$82)) : createCommentVNode("", true);
|
|
22390
22390
|
};
|
|
@@ -27646,10 +27646,10 @@ var booleanOption = {
|
|
|
27646
27646
|
}
|
|
27647
27647
|
};
|
|
27648
27648
|
//#endregion
|
|
27649
|
-
//#region src/components/small/app-
|
|
27649
|
+
//#region src/components/small/app-day-of-week/AppDayOfWeek.vue
|
|
27650
27650
|
var _hoisted_1$81 = { class: "badge bg-secondary day-of-week-badge" };
|
|
27651
27651
|
var _sfc_main$8 = {
|
|
27652
|
-
__name: "
|
|
27652
|
+
__name: "AppDayOfWeek",
|
|
27653
27653
|
props: {
|
|
27654
27654
|
value: { type: Date },
|
|
27655
27655
|
language: {
|
|
@@ -27673,41 +27673,15 @@ var _sfc_main$8 = {
|
|
|
27673
27673
|
}
|
|
27674
27674
|
};
|
|
27675
27675
|
//#endregion
|
|
27676
|
-
//#region src/components/small/app-date
|
|
27677
|
-
var appDatePickerProps_default = {
|
|
27678
|
-
showEasyButtons: Boolean,
|
|
27679
|
-
showDayOfWeek: { default: true },
|
|
27680
|
-
currentLanguage: {
|
|
27681
|
-
type: String,
|
|
27682
|
-
default: Constants_default.LANGUAGE_RO
|
|
27683
|
-
},
|
|
27684
|
-
currentFormat: {
|
|
27685
|
-
type: String,
|
|
27686
|
-
default: "dd.MM.yyyy"
|
|
27687
|
-
},
|
|
27688
|
-
disabledDates: {},
|
|
27689
|
-
isTypeable: {
|
|
27690
|
-
type: Boolean,
|
|
27691
|
-
default: true
|
|
27692
|
-
},
|
|
27693
|
-
yearRange: {
|
|
27694
|
-
type: Array,
|
|
27695
|
-
validator: (value) => {
|
|
27696
|
-
return Array.isArray(value) && value.length === 2 && (typeof value[0] === "number" || value[0] === null) && (typeof value[1] === "number" || value[1] === null);
|
|
27697
|
-
}
|
|
27698
|
-
}
|
|
27699
|
-
};
|
|
27700
|
-
//#endregion
|
|
27701
|
-
//#region src/components/small/app-date-time-picker/AppDateEasyButtons.vue
|
|
27676
|
+
//#region src/components/small/app-date/AppDateEasyButtons.vue
|
|
27702
27677
|
var _hoisted_1$80 = { class: "" };
|
|
27703
|
-
var CODE_SUB_DAY
|
|
27704
|
-
var CODE_TODAY
|
|
27705
|
-
var CODE_ADD_DAY
|
|
27706
|
-
var _sfc_main$
|
|
27678
|
+
var CODE_SUB_DAY = "subday";
|
|
27679
|
+
var CODE_TODAY = "today";
|
|
27680
|
+
var CODE_ADD_DAY = "addday";
|
|
27681
|
+
var _sfc_main$115 = {
|
|
27707
27682
|
__name: "AppDateEasyButtons",
|
|
27708
27683
|
props: {
|
|
27709
27684
|
modelValue: Date,
|
|
27710
|
-
...appDatePickerProps_default,
|
|
27711
27685
|
...appFormElementProps_default
|
|
27712
27686
|
},
|
|
27713
27687
|
emits: ["update:modelValue"],
|
|
@@ -27717,17 +27691,17 @@ var _sfc_main$116 = {
|
|
|
27717
27691
|
const buttons = ref([
|
|
27718
27692
|
{
|
|
27719
27693
|
value: "-1",
|
|
27720
|
-
code: CODE_SUB_DAY
|
|
27694
|
+
code: CODE_SUB_DAY,
|
|
27721
27695
|
class: "btn-light"
|
|
27722
27696
|
},
|
|
27723
27697
|
{
|
|
27724
27698
|
value: "Astazi",
|
|
27725
|
-
code: CODE_TODAY
|
|
27699
|
+
code: CODE_TODAY,
|
|
27726
27700
|
class: "btn-light"
|
|
27727
27701
|
},
|
|
27728
27702
|
{
|
|
27729
27703
|
value: "+1",
|
|
27730
|
-
code: CODE_ADD_DAY
|
|
27704
|
+
code: CODE_ADD_DAY,
|
|
27731
27705
|
class: "btn-light"
|
|
27732
27706
|
}
|
|
27733
27707
|
]);
|
|
@@ -27741,13 +27715,13 @@ var _sfc_main$116 = {
|
|
|
27741
27715
|
});
|
|
27742
27716
|
const onEasyButtonsInput = (value) => {
|
|
27743
27717
|
switch (value.code) {
|
|
27744
|
-
case CODE_ADD_DAY
|
|
27718
|
+
case CODE_ADD_DAY:
|
|
27745
27719
|
onAddDay();
|
|
27746
27720
|
break;
|
|
27747
|
-
case CODE_TODAY
|
|
27721
|
+
case CODE_TODAY:
|
|
27748
27722
|
onSelectToday();
|
|
27749
27723
|
break;
|
|
27750
|
-
case CODE_SUB_DAY
|
|
27724
|
+
case CODE_SUB_DAY:
|
|
27751
27725
|
onSubtractDay();
|
|
27752
27726
|
break;
|
|
27753
27727
|
}
|
|
@@ -27829,7 +27803,7 @@ function toValue$2(r) {
|
|
|
27829
27803
|
var isClient$1 = typeof window !== "undefined" && typeof document !== "undefined";
|
|
27830
27804
|
typeof WorkerGlobalScope !== "undefined" && globalThis instanceof WorkerGlobalScope;
|
|
27831
27805
|
var toString$2 = Object.prototype.toString;
|
|
27832
|
-
var isObject$
|
|
27806
|
+
var isObject$14 = (val) => toString$2.call(val) === "[object Object]";
|
|
27833
27807
|
var noop$2 = () => {};
|
|
27834
27808
|
var isIOS$1 = /* @__PURE__ */ getIsIOS$1();
|
|
27835
27809
|
function getIsIOS$1() {
|
|
@@ -28002,7 +27976,7 @@ function useEventListener$1(...args) {
|
|
|
28002
27976
|
const stopWatch = (0, lib_exports$1.watch)(() => [unrefElement$1(target), toValue$2(options)], ([el, options2]) => {
|
|
28003
27977
|
cleanup();
|
|
28004
27978
|
if (!el) return;
|
|
28005
|
-
const optionsClone = isObject$
|
|
27979
|
+
const optionsClone = isObject$14(options2) ? { ...options2 } : options2;
|
|
28006
27980
|
cleanups.push(...events.flatMap((event) => {
|
|
28007
27981
|
return listeners.map((listener) => register(el, event, listener, optionsClone));
|
|
28008
27982
|
}));
|
|
@@ -28294,7 +28268,7 @@ function useClickOutside(options = {}) {
|
|
|
28294
28268
|
//#endregion
|
|
28295
28269
|
//#region src/components/small/app-date/AppDate.vue
|
|
28296
28270
|
var _hoisted_1$79 = ["onClick"];
|
|
28297
|
-
var _hoisted_2$
|
|
28271
|
+
var _hoisted_2$57 = [
|
|
28298
28272
|
"value",
|
|
28299
28273
|
"disabled",
|
|
28300
28274
|
"placeholder",
|
|
@@ -28305,14 +28279,14 @@ var _hoisted_2$59 = [
|
|
|
28305
28279
|
"onKeypress",
|
|
28306
28280
|
"onPaste"
|
|
28307
28281
|
];
|
|
28308
|
-
var _hoisted_3$
|
|
28309
|
-
var _hoisted_4$
|
|
28282
|
+
var _hoisted_3$40 = { key: 0 };
|
|
28283
|
+
var _hoisted_4$31 = {
|
|
28310
28284
|
key: 1,
|
|
28311
28285
|
class: "app-form-element-placeholder"
|
|
28312
28286
|
};
|
|
28313
28287
|
var _hoisted_5$24 = { class: "mr-10" };
|
|
28314
|
-
var _hoisted_6$
|
|
28315
|
-
var _hoisted_7$
|
|
28288
|
+
var _hoisted_6$14 = ["onClick"];
|
|
28289
|
+
var _hoisted_7$7 = {
|
|
28316
28290
|
key: 0,
|
|
28317
28291
|
class: "ml-10"
|
|
28318
28292
|
};
|
|
@@ -28443,12 +28417,12 @@ var AppDate_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
28443
28417
|
onKeydown: [withKeys(onEnter, ["enter"]), withKeys(onTab, ["tab"])],
|
|
28444
28418
|
onKeypress,
|
|
28445
28419
|
onPaste
|
|
28446
|
-
}, null, 40, _hoisted_2$
|
|
28420
|
+
}, null, 40, _hoisted_2$57)) : (openBlock(), createElementBlock(Fragment, { key: 2 }, [modelValue.value ? (openBlock(), createElementBlock("span", _hoisted_3$40, toDisplayString(value), 1)) : (openBlock(), createElementBlock("span", _hoisted_4$31, toDisplayString(unref(computedPlaceHolder)), 1))], 64))
|
|
28447
28421
|
], 8, _hoisted_1$79)]),
|
|
28448
28422
|
"clear-icon": withCtx(({ clear }) => [createElementVNode("div", _hoisted_5$24, [withDirectives(createElementVNode("i", {
|
|
28449
28423
|
class: "ph-x-circle app-cross-icon",
|
|
28450
28424
|
onClick: withModifiers(clear, ["stop"])
|
|
28451
|
-
}, null, 8, _hoisted_6$
|
|
28425
|
+
}, null, 8, _hoisted_6$14), [[_directive_tippy, "Sterge"]])])]),
|
|
28452
28426
|
_: 2
|
|
28453
28427
|
}, [renderList(forwardedSlots.value, (slot) => {
|
|
28454
28428
|
return {
|
|
@@ -28467,7 +28441,7 @@ var AppDate_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
28467
28441
|
"weekStart",
|
|
28468
28442
|
"locale",
|
|
28469
28443
|
"teleport"
|
|
28470
|
-
]), __props.showEasyButtons && !_ctx.disabled ? (openBlock(), createElementBlock("div", _hoisted_7$
|
|
28444
|
+
]), __props.showEasyButtons && !_ctx.disabled ? (openBlock(), createElementBlock("div", _hoisted_7$7, [createVNode(_sfc_main$115, {
|
|
28471
28445
|
modelValue: modelValue.value,
|
|
28472
28446
|
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => modelValue.value = $event)
|
|
28473
28447
|
}, null, 8, ["modelValue"])])) : createCommentVNode("", true)]),
|
|
@@ -28475,170 +28449,42 @@ var AppDate_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
28475
28449
|
}, 16);
|
|
28476
28450
|
};
|
|
28477
28451
|
}
|
|
28478
|
-
}, [["__scopeId", "data-v-
|
|
28452
|
+
}, [["__scopeId", "data-v-f92c063d"]]);
|
|
28479
28453
|
//#endregion
|
|
28480
|
-
//#region src/components/small/app-date
|
|
28481
|
-
var
|
|
28482
|
-
|
|
28483
|
-
|
|
28484
|
-
|
|
28485
|
-
|
|
28486
|
-
|
|
28487
|
-
|
|
28488
|
-
|
|
28489
|
-
|
|
28490
|
-
|
|
28491
|
-
|
|
28492
|
-
|
|
28493
|
-
|
|
28494
|
-
|
|
28495
|
-
|
|
28496
|
-
|
|
28497
|
-
|
|
28498
|
-
|
|
28499
|
-
|
|
28500
|
-
|
|
28501
|
-
|
|
28502
|
-
class: "ml-10"
|
|
28503
|
-
};
|
|
28504
|
-
var _sfc_main$114 = {
|
|
28505
|
-
__name: "AppDatePicker",
|
|
28506
|
-
props: /*@__PURE__*/ mergeModels({
|
|
28507
|
-
...appDatePickerProps_default,
|
|
28508
|
-
...appFormElementProps_default
|
|
28509
|
-
}, {
|
|
28510
|
-
"modelValue": { type: Date },
|
|
28511
|
-
"modelModifiers": {}
|
|
28512
|
-
}),
|
|
28513
|
-
emits: ["update:modelValue"],
|
|
28514
|
-
setup(__props) {
|
|
28515
|
-
const modelValue = useModel(__props, "modelValue");
|
|
28516
|
-
const inputValue = ref("");
|
|
28517
|
-
const isMenuOpen = ref(false);
|
|
28518
|
-
const props = __props;
|
|
28519
|
-
const { formElementProps, computedName, computedPlaceHolder } = useAppFormElement(props);
|
|
28520
|
-
const computedClass = computed(() => ({
|
|
28521
|
-
"app-date-picker": true,
|
|
28522
|
-
"disabled-element": props.disabled
|
|
28523
|
-
}));
|
|
28524
|
-
const computedFormats = computed(() => ({
|
|
28525
|
-
input: props.currentFormat,
|
|
28526
|
-
preview: props.currentFormat
|
|
28527
|
-
}));
|
|
28528
|
-
const isDayOfWeekVisible = computed(() => props.showDayOfWeek && modelValue.value);
|
|
28529
|
-
watch(modelValue, (newValue) => {
|
|
28530
|
-
inputValue.value = newValue ? format$1(newValue, props.currentFormat) : "";
|
|
28531
|
-
}, { immediate: true });
|
|
28532
|
-
const attemptToParseDate = (dateStr) => {
|
|
28533
|
-
if (!(0, import_lodash.isString)(dateStr)) return null;
|
|
28534
|
-
dateStr = dateStr.replace(/[.,\-\/]/g, ".");
|
|
28535
|
-
const formats = [props.currentFormat.replace("yyyy", "yy"), props.currentFormat];
|
|
28536
|
-
for (const format of formats) {
|
|
28537
|
-
const date = parse$2(dateStr, format, /* @__PURE__ */ new Date());
|
|
28538
|
-
if (!isNaN(date.getTime())) return date;
|
|
28539
|
-
}
|
|
28540
|
-
};
|
|
28541
|
-
const applyInputValue = () => {
|
|
28542
|
-
let parsedDate = attemptToParseDate(inputValue.value);
|
|
28543
|
-
parsedDate ? modelValue.value = parsedDate : clearValues();
|
|
28544
|
-
};
|
|
28545
|
-
const clearValues = () => {
|
|
28546
|
-
modelValue.value = null;
|
|
28547
|
-
inputValue.value = null;
|
|
28548
|
-
};
|
|
28549
|
-
const updateDate = (date) => {
|
|
28550
|
-
date.setHours(0);
|
|
28551
|
-
date.setMinutes(0);
|
|
28552
|
-
date.setSeconds(0);
|
|
28553
|
-
};
|
|
28554
|
-
useClickOutside({ isOpen: isMenuOpen });
|
|
28555
|
-
return (_ctx, _cache) => {
|
|
28556
|
-
const _component_app_date_picker_day_of_week = resolveComponent("app-date-picker-day-of-week");
|
|
28557
|
-
const _component_vue_date_picker = resolveComponent("vue-date-picker");
|
|
28558
|
-
return openBlock(), createBlock(AppFormElement_default, normalizeProps(guardReactiveProps(unref(formElementProps))), createSlots({
|
|
28559
|
-
default: withCtx(() => [createVNode(_component_vue_date_picker, mergeProps({
|
|
28560
|
-
modelValue: modelValue.value,
|
|
28561
|
-
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => modelValue.value = $event)
|
|
28562
|
-
}, _ctx.$attrs, {
|
|
28563
|
-
position: "left",
|
|
28564
|
-
"action-row": {
|
|
28565
|
-
showSelect: true,
|
|
28566
|
-
showCancel: true,
|
|
28567
|
-
showPreview: true
|
|
28568
|
-
},
|
|
28569
|
-
"auto-apply": true,
|
|
28570
|
-
class: computedClass.value,
|
|
28571
|
-
"disabled-dates": _ctx.disabledDates,
|
|
28572
|
-
disabled: _ctx.disabled,
|
|
28573
|
-
"enable-time-picker": false,
|
|
28574
|
-
locale: unref(locale),
|
|
28575
|
-
formats: computedFormats.value,
|
|
28576
|
-
name: unref(computedName),
|
|
28577
|
-
placeholder: unref(computedPlaceHolder),
|
|
28578
|
-
"text-input": _ctx.isTypeable,
|
|
28579
|
-
onDateUpdate: updateDate,
|
|
28580
|
-
onClosed: _cache[2] || (_cache[2] = ($event) => isMenuOpen.value = false),
|
|
28581
|
-
onOpen: _cache[3] || (_cache[3] = ($event) => isMenuOpen.value = true)
|
|
28582
|
-
}), {
|
|
28583
|
-
"dp-input": withCtx(({ value, isMenuOpen, onTab, onKeypress, onPaste }) => [createElementVNode("div", _hoisted_1$78, [
|
|
28584
|
-
_cache[5] || (_cache[5] = createElementVNode("i", { class: "ph-calendar-blank" }, null, -1)),
|
|
28585
|
-
isDayOfWeekVisible.value ? (openBlock(), createBlock(_component_app_date_picker_day_of_week, {
|
|
28586
|
-
key: 0,
|
|
28587
|
-
language: _ctx.currentLanguage,
|
|
28588
|
-
value: modelValue.value
|
|
28589
|
-
}, null, 8, ["language", "value"])) : createCommentVNode("", true),
|
|
28590
|
-
props.isTypeable ? withDirectives((openBlock(), createElementBlock("input", {
|
|
28591
|
-
key: 1,
|
|
28592
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => inputValue.value = $event),
|
|
28593
|
-
class: "dp__input_readonly dp__input_icon_pad dp__input_reg borderless-input date-picker-input",
|
|
28594
|
-
type: "text",
|
|
28595
|
-
disabled: _ctx.disabled,
|
|
28596
|
-
placeholder: _ctx.placeholder,
|
|
28597
|
-
onBlur: ($event) => !isMenuOpen && applyInputValue(),
|
|
28598
|
-
onKeydown: [withKeys(applyInputValue, ["enter"]), withKeys(onTab, ["tab"])],
|
|
28599
|
-
onKeypress,
|
|
28600
|
-
onPaste
|
|
28601
|
-
}, null, 40, _hoisted_2$58)), [[vModelText, inputValue.value]]) : (openBlock(), createElementBlock(Fragment, { key: 2 }, [modelValue.value ? (openBlock(), createElementBlock("span", _hoisted_3$41, toDisplayString(value), 1)) : (openBlock(), createElementBlock("span", _hoisted_4$31, toDisplayString(_ctx.placeholder), 1))], 64))
|
|
28602
|
-
])]),
|
|
28603
|
-
"clear-icon": withCtx(() => [createElementVNode("div", _hoisted_5$23, [createElementVNode("div", _hoisted_6$14, [createElementVNode("i", {
|
|
28604
|
-
class: "ph-x-circle app-cross-icon mb-15",
|
|
28605
|
-
onClick: withModifiers(clearValues, ["stop"])
|
|
28606
|
-
})])])]),
|
|
28607
|
-
_: 1
|
|
28608
|
-
}, 16, [
|
|
28609
|
-
"modelValue",
|
|
28610
|
-
"class",
|
|
28611
|
-
"disabled-dates",
|
|
28612
|
-
"disabled",
|
|
28613
|
-
"locale",
|
|
28614
|
-
"formats",
|
|
28615
|
-
"name",
|
|
28616
|
-
"placeholder",
|
|
28617
|
-
"text-input"
|
|
28618
|
-
]), _ctx.showEasyButtons && !_ctx.disabled ? (openBlock(), createElementBlock("div", _hoisted_7$7, [createVNode(_sfc_main$116, {
|
|
28619
|
-
modelValue: modelValue.value,
|
|
28620
|
-
"onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => modelValue.value = $event)
|
|
28621
|
-
}, null, 8, ["modelValue"])])) : createCommentVNode("", true)]),
|
|
28622
|
-
_: 2
|
|
28623
|
-
}, [renderList(Object.keys(_ctx.$slots), (slot) => {
|
|
28624
|
-
return {
|
|
28625
|
-
name: slot,
|
|
28626
|
-
fn: withCtx((scope) => [renderSlot(_ctx.$slots, slot, normalizeProps(guardReactiveProps(scope)))])
|
|
28627
|
-
};
|
|
28628
|
-
})]), 1040);
|
|
28629
|
-
};
|
|
28454
|
+
//#region src/components/small/app-date/AppDate.js
|
|
28455
|
+
var props$1 = {
|
|
28456
|
+
showEasyButtons: Boolean,
|
|
28457
|
+
showDayOfWeek: { default: true },
|
|
28458
|
+
currentLanguage: {
|
|
28459
|
+
type: String,
|
|
28460
|
+
default: Constants_default.LANGUAGE_RO
|
|
28461
|
+
},
|
|
28462
|
+
currentFormat: {
|
|
28463
|
+
type: String,
|
|
28464
|
+
default: "dd.MM.yyyy"
|
|
28465
|
+
},
|
|
28466
|
+
disabledDates: {},
|
|
28467
|
+
isTypeable: {
|
|
28468
|
+
type: Boolean,
|
|
28469
|
+
default: true
|
|
28470
|
+
},
|
|
28471
|
+
yearRange: {
|
|
28472
|
+
type: Array,
|
|
28473
|
+
validator: (value) => {
|
|
28474
|
+
return Array.isArray(value) && value.length === 2 && (typeof value[0] === "number" || value[0] === null) && (typeof value[1] === "number" || value[1] === null);
|
|
28475
|
+
}
|
|
28630
28476
|
}
|
|
28631
28477
|
};
|
|
28632
28478
|
//#endregion
|
|
28633
|
-
//#region src/components/small/app-date
|
|
28634
|
-
var _hoisted_1$
|
|
28635
|
-
var _hoisted_2$
|
|
28636
|
-
var _hoisted_3$
|
|
28479
|
+
//#region src/components/small/app-date/AppDateRange.vue
|
|
28480
|
+
var _hoisted_1$78 = { class: "w-100" };
|
|
28481
|
+
var _hoisted_2$56 = { class: "flex-center-vertical w-100 gap-1" };
|
|
28482
|
+
var _hoisted_3$39 = {
|
|
28637
28483
|
key: 0,
|
|
28638
28484
|
class: "flex-center-vertical mt-1"
|
|
28639
28485
|
};
|
|
28640
28486
|
var _sfc_main$9 = {
|
|
28641
|
-
__name: "
|
|
28487
|
+
__name: "AppDateRange",
|
|
28642
28488
|
props: /*@__PURE__*/ mergeModels({
|
|
28643
28489
|
placeholderLeft: {
|
|
28644
28490
|
type: String,
|
|
@@ -28650,7 +28496,7 @@ var _sfc_main$9 = {
|
|
|
28650
28496
|
},
|
|
28651
28497
|
startName: { type: String },
|
|
28652
28498
|
endName: { type: String },
|
|
28653
|
-
...
|
|
28499
|
+
...props$1,
|
|
28654
28500
|
...appFormElementProps_default
|
|
28655
28501
|
}, {
|
|
28656
28502
|
"start": { type: Date },
|
|
@@ -28699,8 +28545,8 @@ var _sfc_main$9 = {
|
|
|
28699
28545
|
const _component_app_date = resolveComponent("app-date");
|
|
28700
28546
|
const _component_app_button_group = resolveComponent("app-button-group");
|
|
28701
28547
|
return openBlock(), createBlock(AppFormElement_default, normalizeProps(guardReactiveProps(unref(formElementProps))), {
|
|
28702
|
-
default: withCtx(() => [createElementVNode("div", _hoisted_1$
|
|
28703
|
-
createElementVNode("div", _hoisted_2$
|
|
28548
|
+
default: withCtx(() => [createElementVNode("div", _hoisted_1$78, [
|
|
28549
|
+
createElementVNode("div", _hoisted_2$56, [createVNode(_component_app_date, mergeProps({
|
|
28704
28550
|
modelValue: modelValueStart.value,
|
|
28705
28551
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValueStart.value = $event),
|
|
28706
28552
|
class: "app-form-group-element flex-1",
|
|
@@ -28723,7 +28569,7 @@ var _sfc_main$9 = {
|
|
|
28723
28569
|
"placeholder",
|
|
28724
28570
|
"name"
|
|
28725
28571
|
])]),
|
|
28726
|
-
_ctx.showEasyButtons ? (openBlock(), createElementBlock("div", _hoisted_3$
|
|
28572
|
+
_ctx.showEasyButtons ? (openBlock(), createElementBlock("div", _hoisted_3$39, [createVNode(_component_app_button_group, {
|
|
28727
28573
|
value: unref(easyButtonsList),
|
|
28728
28574
|
onClick: onEasyButtonClick
|
|
28729
28575
|
}, null, 8, ["value"])])) : createCommentVNode("", true),
|
|
@@ -28736,9 +28582,9 @@ var _sfc_main$9 = {
|
|
|
28736
28582
|
};
|
|
28737
28583
|
//#endregion
|
|
28738
28584
|
//#region src/components/small/app-card/AppCard.vue
|
|
28739
|
-
var _hoisted_1$
|
|
28740
|
-
var _hoisted_2$
|
|
28741
|
-
var _hoisted_3$
|
|
28585
|
+
var _hoisted_1$77 = { class: "d-flex align-items-center" };
|
|
28586
|
+
var _hoisted_2$55 = { class: "mb-0 fw-normal" };
|
|
28587
|
+
var _hoisted_3$38 = { class: "ms-auto" };
|
|
28742
28588
|
var _sfc_main$5 = {
|
|
28743
28589
|
__name: "AppCard",
|
|
28744
28590
|
props: {
|
|
@@ -28829,10 +28675,10 @@ var _sfc_main$5 = {
|
|
|
28829
28675
|
key: 0,
|
|
28830
28676
|
class: normalizeClass([headerClasses.value]),
|
|
28831
28677
|
onClick: collapseBody
|
|
28832
|
-
}, [createElementVNode("div", _hoisted_1$
|
|
28678
|
+
}, [createElementVNode("div", _hoisted_1$77, [createElementVNode("div", _hoisted_2$55, [renderSlot(_ctx.$slots, "title"), createElementVNode("div", {
|
|
28833
28679
|
class: "header-elements-toggle d-none",
|
|
28834
28680
|
onClick: toggleVisibleHeadingElement
|
|
28835
|
-
}, [..._cache[0] || (_cache[0] = [createElementVNode("i", { class: "icon-more" }, null, -1)])])]), createElementVNode("div", _hoisted_3$
|
|
28681
|
+
}, [..._cache[0] || (_cache[0] = [createElementVNode("i", { class: "icon-more" }, null, -1)])])]), createElementVNode("div", _hoisted_3$38, [createElementVNode("div", { class: normalizeClass([headerElementsClasses.value]) }, [renderSlot(_ctx.$slots, "heading-elements"), __props.canCollapse ? (openBlock(), createElementBlock("i", {
|
|
28836
28682
|
key: 0,
|
|
28837
28683
|
class: normalizeClass(expandArrowClass.value)
|
|
28838
28684
|
}, null, 2)) : createCommentVNode("", true)], 2)])])], 2)) : createCommentVNode("", true), createElementVNode("div", {
|
|
@@ -28844,7 +28690,7 @@ var _sfc_main$5 = {
|
|
|
28844
28690
|
};
|
|
28845
28691
|
//#endregion
|
|
28846
28692
|
//#region src/components/small/app-checkbox/AppCheckbox.vue
|
|
28847
|
-
var _hoisted_1$
|
|
28693
|
+
var _hoisted_1$76 = ["checked"];
|
|
28848
28694
|
var _sfc_main$7 = {
|
|
28849
28695
|
__name: "AppCheckbox",
|
|
28850
28696
|
props: {
|
|
@@ -28887,7 +28733,7 @@ var _sfc_main$7 = {
|
|
|
28887
28733
|
checked: __props.modelValue,
|
|
28888
28734
|
class: checkedClass.value,
|
|
28889
28735
|
type: "checkbox"
|
|
28890
|
-
}, getDisabled.value), null, 16, _hoisted_1$
|
|
28736
|
+
}, getDisabled.value), null, 16, _hoisted_1$76), renderSlot(_ctx.$slots, "afterCheckbox")], 2)]),
|
|
28891
28737
|
_: 3
|
|
28892
28738
|
}, 16, ["label-style"]);
|
|
28893
28739
|
};
|
|
@@ -30332,6 +30178,10 @@ var _sfc_main$112 = {
|
|
|
30332
30178
|
width: {
|
|
30333
30179
|
type: [String, Number],
|
|
30334
30180
|
default: null
|
|
30181
|
+
},
|
|
30182
|
+
placement: {
|
|
30183
|
+
type: String,
|
|
30184
|
+
default: "bottom-start"
|
|
30335
30185
|
}
|
|
30336
30186
|
},
|
|
30337
30187
|
setup(__props) {
|
|
@@ -30347,7 +30197,7 @@ var _sfc_main$112 = {
|
|
|
30347
30197
|
else anchorEl.value = props.anchor;
|
|
30348
30198
|
}, { immediate: true });
|
|
30349
30199
|
const { x, y, strategy } = useFloating(anchorEl, floatingEl, {
|
|
30350
|
-
placement:
|
|
30200
|
+
placement: computed(() => props.placement),
|
|
30351
30201
|
strategy: "absolute",
|
|
30352
30202
|
whileElementsMounted: autoUpdate,
|
|
30353
30203
|
middleware: [
|
|
@@ -30387,435 +30237,414 @@ var _sfc_main$112 = {
|
|
|
30387
30237
|
}
|
|
30388
30238
|
};
|
|
30389
30239
|
//#endregion
|
|
30390
|
-
//#region src/components/small/app-
|
|
30391
|
-
var _hoisted_1$
|
|
30392
|
-
var
|
|
30393
|
-
var
|
|
30394
|
-
|
|
30395
|
-
|
|
30396
|
-
|
|
30397
|
-
|
|
30398
|
-
|
|
30399
|
-
|
|
30400
|
-
}
|
|
30401
|
-
|
|
30402
|
-
|
|
30403
|
-
|
|
30404
|
-
props: /*@__PURE__*/ mergeModels({
|
|
30405
|
-
options: {
|
|
30406
|
-
type: Array,
|
|
30407
|
-
required: true
|
|
30408
|
-
},
|
|
30409
|
-
displayBy: {
|
|
30410
|
-
type: [String],
|
|
30411
|
-
default: "name"
|
|
30412
|
-
},
|
|
30413
|
-
openDirection: {
|
|
30414
|
-
type: String,
|
|
30415
|
-
default: "bottom"
|
|
30416
|
-
},
|
|
30417
|
-
columns: {
|
|
30418
|
-
type: Number,
|
|
30419
|
-
default: 4
|
|
30420
|
-
},
|
|
30421
|
-
width: {
|
|
30422
|
-
type: Number,
|
|
30423
|
-
default: 200
|
|
30424
|
-
},
|
|
30425
|
-
height: {
|
|
30426
|
-
type: Number,
|
|
30427
|
-
default: 500
|
|
30428
|
-
},
|
|
30429
|
-
showRemoveButtons: {
|
|
30430
|
-
type: Boolean,
|
|
30431
|
-
default: true
|
|
30432
|
-
},
|
|
30433
|
-
isTypeable: {
|
|
30434
|
-
type: Boolean,
|
|
30435
|
-
default: true
|
|
30240
|
+
//#region src/components/small/app-time/AppTimeEasyButtons.vue
|
|
30241
|
+
var _hoisted_1$75 = { class: "" };
|
|
30242
|
+
var CODE_SUB_HOUR = "subhour";
|
|
30243
|
+
var CODE_NOW = "now";
|
|
30244
|
+
var CODE_ADD_HOUR = "addhour";
|
|
30245
|
+
var _sfc_main$111 = {
|
|
30246
|
+
__name: "AppTimeEasyButtons",
|
|
30247
|
+
props: /*@__PURE__*/ mergeModels({ format: {
|
|
30248
|
+
type: String,
|
|
30249
|
+
default: "hh:mm"
|
|
30250
|
+
} }, {
|
|
30251
|
+
"modelValue": {
|
|
30252
|
+
type: [String, null],
|
|
30253
|
+
default: null
|
|
30436
30254
|
},
|
|
30437
|
-
search: { type: Function },
|
|
30438
|
-
isItemSelected: {},
|
|
30439
|
-
...appFormElementProps_default
|
|
30440
|
-
}, {
|
|
30441
|
-
"modelValue": {},
|
|
30442
30255
|
"modelModifiers": {}
|
|
30443
30256
|
}),
|
|
30444
|
-
emits:
|
|
30445
|
-
setup(__props
|
|
30446
|
-
const modelValue = useModel(__props, "modelValue");
|
|
30257
|
+
emits: ["update:modelValue"],
|
|
30258
|
+
setup(__props) {
|
|
30447
30259
|
const props = __props;
|
|
30448
|
-
const
|
|
30449
|
-
|
|
30450
|
-
const showGrid = ref(false);
|
|
30451
|
-
const input = ref(null);
|
|
30452
|
-
const grid = ref(null);
|
|
30453
|
-
const searchValue = ref(null);
|
|
30454
|
-
const searchField = ref(null);
|
|
30455
|
-
const filteredOptions = ref((0, import_lodash.cloneDeep)(props.options));
|
|
30456
|
-
const { formElementProps } = useAppFormElement(props);
|
|
30457
|
-
const heightComputed = computed(() => {
|
|
30458
|
-
const rows = Math.ceil(filteredOptions.value.length / props.columns);
|
|
30459
|
-
return (0, import_lodash.min)([props.width / props.columns * rows, props.height]);
|
|
30460
|
-
});
|
|
30461
|
-
computed(() => {
|
|
30462
|
-
return {
|
|
30463
|
-
width: props.width + "px",
|
|
30464
|
-
height: heightComputed.value + "px"
|
|
30465
|
-
};
|
|
30466
|
-
});
|
|
30467
|
-
const cellStyle = computed(() => {
|
|
30468
|
-
const width = props.width / props.columns;
|
|
30469
|
-
return {
|
|
30470
|
-
width: width + "px",
|
|
30471
|
-
height: width + "px"
|
|
30472
|
-
};
|
|
30473
|
-
});
|
|
30474
|
-
const open = () => {
|
|
30475
|
-
if (props.disabled) return;
|
|
30476
|
-
showGrid.value = true;
|
|
30477
|
-
if (props.isTypeable) nextTick(() => searchField.value.focus());
|
|
30478
|
-
};
|
|
30479
|
-
const close = () => {
|
|
30480
|
-
showGrid.value = false;
|
|
30481
|
-
emits("close");
|
|
30482
|
-
};
|
|
30483
|
-
const onSelectValue = (element, index) => {
|
|
30484
|
-
modelValue.value = element;
|
|
30485
|
-
close();
|
|
30486
|
-
};
|
|
30487
|
-
const getDisplayValue = (value) => {
|
|
30488
|
-
if ((0, import_lodash.isObject)(value)) return (0, import_lodash.get)(value, props.displayBy, null);
|
|
30489
|
-
return value;
|
|
30490
|
-
};
|
|
30491
|
-
const getActiveClass = (element) => {
|
|
30492
|
-
return { active: (0, import_lodash.isEqual)(element, modelValue.value) };
|
|
30493
|
-
};
|
|
30494
|
-
const onDeleteInput = () => {
|
|
30495
|
-
modelValue.value = null;
|
|
30496
|
-
};
|
|
30497
|
-
useClickOutside({
|
|
30498
|
-
target: grid,
|
|
30499
|
-
handler: () => {
|
|
30500
|
-
if (!showGrid.value) return;
|
|
30501
|
-
close();
|
|
30502
|
-
},
|
|
30503
|
-
isOpen: showGrid,
|
|
30504
|
-
ignore: [input, searchField]
|
|
30505
|
-
});
|
|
30506
|
-
const inputClass = computed(() => ({
|
|
30507
|
-
"w-100 form-control": true,
|
|
30508
|
-
disabled: props.disabled
|
|
30509
|
-
}));
|
|
30510
|
-
const getFilteredOptions = async (search = "") => {
|
|
30511
|
-
if (props.search) return await props.search(props.options, search);
|
|
30512
|
-
if (!search || search.length === 0) return props.options;
|
|
30513
|
-
return props.options.filter((item) => {
|
|
30514
|
-
let itemName = (0, import_lodash.isObject)(item) ? (0, import_lodash.get)(item, props.displayBy, "") : item;
|
|
30515
|
-
itemName = String(itemName).toLowerCase();
|
|
30516
|
-
return itemName.includes(search.toLowerCase());
|
|
30517
|
-
});
|
|
30518
|
-
};
|
|
30519
|
-
const onSearch = async (text) => {
|
|
30520
|
-
filteredOptions.value = await getFilteredOptions(text);
|
|
30521
|
-
emits("searchValue", text);
|
|
30522
|
-
searchValue.value = text;
|
|
30523
|
-
};
|
|
30524
|
-
const onKeyEnter = () => {
|
|
30525
|
-
modelValue.value = (0, import_lodash.head)(filteredOptions.value);
|
|
30526
|
-
close();
|
|
30527
|
-
};
|
|
30528
|
-
watch(searchValue, async (newValue) => {
|
|
30529
|
-
await onSearch(newValue);
|
|
30530
|
-
});
|
|
30531
|
-
watch(() => props.options, async (newValue) => {
|
|
30532
|
-
filteredOptions.value = newValue;
|
|
30533
|
-
});
|
|
30534
|
-
__expose({
|
|
30535
|
-
open,
|
|
30536
|
-
close,
|
|
30537
|
-
props
|
|
30538
|
-
});
|
|
30539
|
-
return (_ctx, _cache) => {
|
|
30540
|
-
const _directive_tippy = resolveDirective("tippy");
|
|
30541
|
-
return openBlock(), createBlock(AppFormElement_default, normalizeProps(guardReactiveProps(unref(formElementProps))), {
|
|
30542
|
-
default: withCtx(() => [createElementVNode("div", _hoisted_1$74, [createElementVNode("div", {
|
|
30543
|
-
ref_key: "input",
|
|
30544
|
-
ref: input,
|
|
30545
|
-
class: "d-flex"
|
|
30546
|
-
}, [
|
|
30547
|
-
renderSlot(_ctx.$slots, "icon", {}, void 0, true),
|
|
30548
|
-
__props.isTypeable && showGrid.value ? withDirectives((openBlock(), createElementBlock("input", {
|
|
30549
|
-
key: 0,
|
|
30550
|
-
ref_key: "searchField",
|
|
30551
|
-
ref: searchField,
|
|
30552
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchValue.value = $event),
|
|
30553
|
-
class: "mb-0 no-hover flex-1 form-control",
|
|
30554
|
-
placeholder: props.placeholder,
|
|
30555
|
-
onKeyup: withKeys(onKeyEnter, ["enter"])
|
|
30556
|
-
}, null, 40, _hoisted_2$55)), [[vModelText, searchValue.value]]) : (openBlock(), createElementBlock("div", {
|
|
30557
|
-
key: 1,
|
|
30558
|
-
class: normalizeClass(inputClass.value),
|
|
30559
|
-
onClick: withModifiers(open, ["stop"])
|
|
30560
|
-
}, [renderSlot(_ctx.$slots, "default", { item: modelValue.value }, () => [modelValue.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createTextVNode(toDisplayString(getDisplayValue(modelValue.value)), 1)], 64)) : (openBlock(), createElementBlock("span", _hoisted_3$38, toDisplayString(props.placeholder), 1))], true)], 2)),
|
|
30561
|
-
modelValue.value && __props.showRemoveButtons ? (openBlock(), createElementBlock("div", _hoisted_4$30, [withDirectives(createElementVNode("i", {
|
|
30562
|
-
class: "ph-x-circle app-cross-icon",
|
|
30563
|
-
onClick: withModifiers(onDeleteInput, ["stop"])
|
|
30564
|
-
}, null, 512), [[_directive_tippy, "Ștergeți opțiunile selectate"]])])) : createCommentVNode("", true)
|
|
30565
|
-
], 512), input.value ? (openBlock(), createBlock(_sfc_main$112, {
|
|
30566
|
-
key: 0,
|
|
30567
|
-
anchor: input.value,
|
|
30568
|
-
"use-teleport": true,
|
|
30569
|
-
"is-open": showGrid.value,
|
|
30570
|
-
width: props.width
|
|
30571
|
-
}, {
|
|
30572
|
-
default: withCtx(() => [withDirectives(createElementVNode("div", {
|
|
30573
|
-
ref_key: "grid",
|
|
30574
|
-
ref: grid,
|
|
30575
|
-
class: "app-grid-dropdown overflow-auto scrollbar-hidden"
|
|
30576
|
-
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(filteredOptions.value, (element, index) => {
|
|
30577
|
-
return openBlock(), createElementBlock("div", {
|
|
30578
|
-
key: index,
|
|
30579
|
-
class: "cell",
|
|
30580
|
-
onClick: ($event) => onSelectValue(element, index)
|
|
30581
|
-
}, [createElementVNode("span", {
|
|
30582
|
-
class: normalizeClass(getActiveClass(element)),
|
|
30583
|
-
style: normalizeStyle(cellStyle.value)
|
|
30584
|
-
}, [renderSlot(_ctx.$slots, "default", { item: element }, () => [createTextVNode(toDisplayString(getDisplayValue(element)), 1)], true)], 6)], 8, _hoisted_5$22);
|
|
30585
|
-
}), 128))], 512), [[vShow, showGrid.value]])]),
|
|
30586
|
-
_: 3
|
|
30587
|
-
}, 8, [
|
|
30588
|
-
"anchor",
|
|
30589
|
-
"is-open",
|
|
30590
|
-
"width"
|
|
30591
|
-
])) : createCommentVNode("", true)])]),
|
|
30592
|
-
_: 3
|
|
30593
|
-
}, 16);
|
|
30594
|
-
};
|
|
30595
|
-
}
|
|
30596
|
-
}, [["__scopeId", "data-v-12dbbc29"]]);
|
|
30597
|
-
//#endregion
|
|
30598
|
-
//#region src/components/small/app-time-picker/AppTimePickerEasyButtons.vue
|
|
30599
|
-
var EMIT_SUB_HOUR = "sub-hour";
|
|
30600
|
-
var EMIT_NOW = "now";
|
|
30601
|
-
var EMIT_ADD_HOUR = "add-hour";
|
|
30602
|
-
var _sfc_main$110 = {
|
|
30603
|
-
__name: "AppTimePickerEasyButtons",
|
|
30604
|
-
emits: [
|
|
30605
|
-
EMIT_NOW,
|
|
30606
|
-
EMIT_ADD_HOUR,
|
|
30607
|
-
EMIT_SUB_HOUR
|
|
30608
|
-
],
|
|
30609
|
-
setup(__props, { emit: __emit }) {
|
|
30610
|
-
const buttons = ref([
|
|
30260
|
+
const modelValue = useModel(__props, "modelValue");
|
|
30261
|
+
const buttons = [
|
|
30611
30262
|
{
|
|
30612
30263
|
value: "-1",
|
|
30613
|
-
|
|
30264
|
+
code: CODE_SUB_HOUR,
|
|
30614
30265
|
class: "btn-light"
|
|
30615
30266
|
},
|
|
30616
30267
|
{
|
|
30617
30268
|
value: "Acum",
|
|
30618
|
-
|
|
30269
|
+
code: CODE_NOW,
|
|
30619
30270
|
class: "btn-light"
|
|
30620
30271
|
},
|
|
30621
30272
|
{
|
|
30622
30273
|
value: "+1",
|
|
30623
|
-
|
|
30274
|
+
code: CODE_ADD_HOUR,
|
|
30624
30275
|
class: "btn-light"
|
|
30625
30276
|
}
|
|
30626
|
-
]
|
|
30627
|
-
const
|
|
30628
|
-
|
|
30629
|
-
|
|
30277
|
+
];
|
|
30278
|
+
const onEasyButtonsInput = ({ code }) => {
|
|
30279
|
+
const time = /* @__PURE__ */ new Date();
|
|
30280
|
+
if (modelValue.value && code !== CODE_NOW) {
|
|
30281
|
+
const [hours, minutes = 0, seconds = 0] = modelValue.value.split(":");
|
|
30282
|
+
time.setHours(hours, minutes, seconds, 0);
|
|
30283
|
+
}
|
|
30284
|
+
if (code !== CODE_NOW) time.setHours(time.getHours() + (code === CODE_ADD_HOUR ? 1 : -1));
|
|
30285
|
+
modelValue.value = time.toTimeString().slice(0, props.format.length);
|
|
30630
30286
|
};
|
|
30631
30287
|
return (_ctx, _cache) => {
|
|
30632
|
-
return openBlock(), createElementBlock("div",
|
|
30633
|
-
value: buttons
|
|
30634
|
-
onClick
|
|
30635
|
-
}
|
|
30288
|
+
return openBlock(), createElementBlock("div", _hoisted_1$75, [createVNode(_sfc_main$4, {
|
|
30289
|
+
value: buttons,
|
|
30290
|
+
onClick: onEasyButtonsInput
|
|
30291
|
+
})]);
|
|
30636
30292
|
};
|
|
30637
30293
|
}
|
|
30638
30294
|
};
|
|
30639
30295
|
//#endregion
|
|
30640
|
-
//#region src/components/small/app-time
|
|
30641
|
-
var
|
|
30642
|
-
|
|
30643
|
-
|
|
30296
|
+
//#region src/components/small/app-time/AppTime.js
|
|
30297
|
+
var props = {
|
|
30298
|
+
hours: {
|
|
30299
|
+
type: Array,
|
|
30300
|
+
default: () => Array.from({ length: 24 }, (_, index) => index.toString().padStart(2, "0"))
|
|
30301
|
+
},
|
|
30302
|
+
minutes: {
|
|
30303
|
+
type: Array,
|
|
30304
|
+
default: () => Array.from({ length: 60 }, (_, index) => index.toString().padStart(2, "0"))
|
|
30305
|
+
},
|
|
30306
|
+
seconds: {
|
|
30307
|
+
type: Array,
|
|
30308
|
+
default: () => Array.from({ length: 60 }, (_, index) => index.toString().padStart(2, "0"))
|
|
30309
|
+
},
|
|
30310
|
+
format: {
|
|
30311
|
+
type: String,
|
|
30312
|
+
default: "hh:mm",
|
|
30313
|
+
validator: (value) => [
|
|
30314
|
+
"hh",
|
|
30315
|
+
"hh:mm",
|
|
30316
|
+
"hh:mm:ss"
|
|
30317
|
+
].includes(value)
|
|
30318
|
+
},
|
|
30319
|
+
openDirection: {
|
|
30320
|
+
type: String,
|
|
30321
|
+
default: "bottom"
|
|
30322
|
+
},
|
|
30323
|
+
showEasyButtons: {
|
|
30324
|
+
type: Boolean,
|
|
30325
|
+
default: false
|
|
30326
|
+
},
|
|
30327
|
+
isTypeable: {
|
|
30328
|
+
type: Boolean,
|
|
30329
|
+
default: true
|
|
30330
|
+
},
|
|
30331
|
+
useDropdown: {
|
|
30332
|
+
type: Boolean,
|
|
30333
|
+
default: true
|
|
30334
|
+
}
|
|
30644
30335
|
};
|
|
30336
|
+
//#endregion
|
|
30337
|
+
//#region src/components/small/app-time/AppTime.vue
|
|
30338
|
+
var _hoisted_1$74 = { class: "display-flex w-100" };
|
|
30645
30339
|
var _hoisted_2$54 = {
|
|
30646
30340
|
key: 0,
|
|
30647
|
-
class: "
|
|
30341
|
+
class: "app-time2-separator user-select-none"
|
|
30648
30342
|
};
|
|
30649
|
-
var _hoisted_3$37 =
|
|
30650
|
-
|
|
30651
|
-
|
|
30343
|
+
var _hoisted_3$37 = [
|
|
30344
|
+
"onUpdate:modelValue",
|
|
30345
|
+
"disabled",
|
|
30346
|
+
"name",
|
|
30347
|
+
"readonly",
|
|
30348
|
+
"placeholder",
|
|
30349
|
+
"onBlur",
|
|
30350
|
+
"onClick",
|
|
30351
|
+
"onFocus",
|
|
30352
|
+
"onInput",
|
|
30353
|
+
"onKeydown"
|
|
30354
|
+
];
|
|
30355
|
+
var _hoisted_4$30 = {
|
|
30356
|
+
key: 0,
|
|
30357
|
+
class: "ml-10"
|
|
30652
30358
|
};
|
|
30653
|
-
var
|
|
30654
|
-
|
|
30359
|
+
var _hoisted_5$23 = ["onClick"];
|
|
30360
|
+
var AppTime_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
30361
|
+
__name: "AppTime",
|
|
30655
30362
|
props: /*@__PURE__*/ mergeModels({
|
|
30656
|
-
minuteOptions: {
|
|
30657
|
-
type: Array,
|
|
30658
|
-
default: () => [{
|
|
30659
|
-
id: 1,
|
|
30660
|
-
value: "00"
|
|
30661
|
-
}, {
|
|
30662
|
-
id: 2,
|
|
30663
|
-
value: "30"
|
|
30664
|
-
}]
|
|
30665
|
-
},
|
|
30666
|
-
hourOptions: {
|
|
30667
|
-
type: Array,
|
|
30668
|
-
default: () => {
|
|
30669
|
-
const hours = [];
|
|
30670
|
-
for (let i = 0; i < 24; i++) hours.push({
|
|
30671
|
-
id: i + 1,
|
|
30672
|
-
value: i.toString().padStart(2, "0")
|
|
30673
|
-
});
|
|
30674
|
-
return hours;
|
|
30675
|
-
}
|
|
30676
|
-
},
|
|
30677
|
-
openDirection: {
|
|
30678
|
-
type: String,
|
|
30679
|
-
default: "bottom"
|
|
30680
|
-
},
|
|
30681
30363
|
isClearable: {
|
|
30682
30364
|
type: Boolean,
|
|
30683
30365
|
default: true
|
|
30684
30366
|
},
|
|
30685
|
-
|
|
30686
|
-
...appFormElementProps_default
|
|
30687
|
-
...appDatePickerProps_default
|
|
30367
|
+
...props,
|
|
30368
|
+
...appFormElementProps_default
|
|
30688
30369
|
}, {
|
|
30689
|
-
"modelValue": {
|
|
30370
|
+
"modelValue": {
|
|
30371
|
+
type: [String, null],
|
|
30372
|
+
default: null
|
|
30373
|
+
},
|
|
30690
30374
|
"modelModifiers": {}
|
|
30691
30375
|
}),
|
|
30692
30376
|
emits: /*@__PURE__*/ mergeModels(["input"], ["update:modelValue"]),
|
|
30693
|
-
setup(__props, { emit: __emit }) {
|
|
30377
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
30378
|
+
const partsByFormat = {
|
|
30379
|
+
hh: ["hour"],
|
|
30380
|
+
"hh:mm": ["hour", "minute"],
|
|
30381
|
+
"hh:mm:ss": [
|
|
30382
|
+
"hour",
|
|
30383
|
+
"minute",
|
|
30384
|
+
"second"
|
|
30385
|
+
]
|
|
30386
|
+
};
|
|
30694
30387
|
const props = __props;
|
|
30695
30388
|
const emit = __emit;
|
|
30696
|
-
const { formElementProps } = useAppFormElement(props);
|
|
30697
|
-
const hour = ref("12");
|
|
30698
|
-
const minute = ref("00");
|
|
30699
|
-
const minutePicker = ref(null);
|
|
30700
|
-
const hourPicker = ref(null);
|
|
30701
30389
|
const modelValue = useModel(__props, "modelValue");
|
|
30702
|
-
const
|
|
30390
|
+
const { formElementProps, computedName } = useAppFormElement(props);
|
|
30391
|
+
const control = ref(null);
|
|
30392
|
+
const dropdown = ref(null);
|
|
30393
|
+
const partInputs = reactive({
|
|
30394
|
+
hour: null,
|
|
30395
|
+
minute: null,
|
|
30396
|
+
second: null
|
|
30397
|
+
});
|
|
30398
|
+
const openPart = ref(null);
|
|
30399
|
+
const selected = reactive({
|
|
30400
|
+
hour: null,
|
|
30401
|
+
minute: null,
|
|
30402
|
+
second: null
|
|
30403
|
+
});
|
|
30404
|
+
const texts = reactive({
|
|
30405
|
+
hour: "",
|
|
30406
|
+
minute: "",
|
|
30407
|
+
second: ""
|
|
30408
|
+
});
|
|
30409
|
+
const partPlaceholders = {
|
|
30410
|
+
hour: "Ora",
|
|
30411
|
+
minute: "Min",
|
|
30412
|
+
second: "Sec"
|
|
30413
|
+
};
|
|
30414
|
+
const visibleParts = computed(() => partsByFormat[props.format]);
|
|
30415
|
+
const partOptions = computed(() => ({
|
|
30416
|
+
hour: props.hours,
|
|
30417
|
+
minute: props.minutes,
|
|
30418
|
+
second: props.seconds
|
|
30419
|
+
}));
|
|
30420
|
+
const isDropdownOpen = computed(() => Boolean(openPart.value));
|
|
30421
|
+
const dropdownOptions = computed(() => openPart.value ? partOptions.value[openPart.value] : []);
|
|
30422
|
+
const dropdownColumns = computed(() => dropdownOptions.value.length > 12 ? 4 : 2);
|
|
30423
|
+
const dropdownWidth = computed(() => dropdownColumns.value === 4 ? 200 : 120);
|
|
30424
|
+
const activeAnchor = computed(() => partInputs[openPart.value] ?? control.value);
|
|
30425
|
+
const dropdownPlacement = computed(() => {
|
|
30703
30426
|
return {
|
|
30704
|
-
"
|
|
30705
|
-
"
|
|
30706
|
-
"
|
|
30707
|
-
"
|
|
30708
|
-
|
|
30709
|
-
|
|
30710
|
-
});
|
|
30711
|
-
|
|
30712
|
-
|
|
30713
|
-
|
|
30714
|
-
|
|
30715
|
-
|
|
30716
|
-
|
|
30717
|
-
|
|
30718
|
-
|
|
30719
|
-
|
|
30720
|
-
const
|
|
30721
|
-
|
|
30722
|
-
|
|
30723
|
-
|
|
30724
|
-
|
|
30725
|
-
|
|
30726
|
-
|
|
30727
|
-
|
|
30427
|
+
top: "top-start",
|
|
30428
|
+
bottom: "bottom-start",
|
|
30429
|
+
left: "left-start",
|
|
30430
|
+
right: "right-start"
|
|
30431
|
+
}[props.openDirection] ?? props.openDirection;
|
|
30432
|
+
});
|
|
30433
|
+
const dropdownStyle = computed(() => ({ gridTemplateColumns: `repeat(${dropdownColumns.value}, minmax(0, 1fr))` }));
|
|
30434
|
+
const getOptionValue = (option) => {
|
|
30435
|
+
if ((0, import_lodash.isObject)(option)) return (0, import_lodash.get)(option, "value", "");
|
|
30436
|
+
return option;
|
|
30437
|
+
};
|
|
30438
|
+
const optionToText = (option) => {
|
|
30439
|
+
const value = getOptionValue(option);
|
|
30440
|
+
return value === null || value === void 0 ? "" : String(value);
|
|
30441
|
+
};
|
|
30442
|
+
const cleanText = (value) => String(value ?? "").replace(/\D/g, "").slice(0, 2);
|
|
30443
|
+
const findOption = (part, value) => {
|
|
30444
|
+
const cleanValue = cleanText(value);
|
|
30445
|
+
if (!cleanValue) return null;
|
|
30446
|
+
return partOptions.value[part].find((option) => {
|
|
30447
|
+
const optionValue = cleanText(getOptionValue(option));
|
|
30448
|
+
return optionValue === cleanValue || optionValue === cleanValue.padStart(2, "0");
|
|
30449
|
+
}) ?? null;
|
|
30450
|
+
};
|
|
30451
|
+
const getNextPart = (part) => visibleParts.value[visibleParts.value.indexOf(part) + 1];
|
|
30452
|
+
const setTextsFromSelection = () => {
|
|
30453
|
+
visibleParts.value.forEach((part) => {
|
|
30454
|
+
texts[part] = optionToText(selected[part]);
|
|
30455
|
+
});
|
|
30456
|
+
};
|
|
30457
|
+
const closeDropdown = () => {
|
|
30458
|
+
openPart.value = null;
|
|
30459
|
+
};
|
|
30460
|
+
const openDropdown = async (part) => {
|
|
30461
|
+
if (props.disabled || !props.useDropdown) return;
|
|
30462
|
+
openPart.value = part;
|
|
30463
|
+
await nextTick();
|
|
30464
|
+
dropdown.value?.querySelector(".active")?.scrollIntoView({ block: "nearest" });
|
|
30465
|
+
};
|
|
30466
|
+
const onFocus = (part) => {
|
|
30467
|
+
if (isDropdownOpen.value && openPart.value !== part) openDropdown(part);
|
|
30468
|
+
};
|
|
30469
|
+
const onBlur = (part, event) => {
|
|
30470
|
+
validatePart(part);
|
|
30471
|
+
const next = event.relatedTarget;
|
|
30472
|
+
if (next && (control.value?.contains(next) || dropdown.value?.contains(next))) return;
|
|
30473
|
+
closeDropdown();
|
|
30474
|
+
};
|
|
30475
|
+
const openNearestPart = (event) => {
|
|
30476
|
+
if (props.disabled) return;
|
|
30477
|
+
const nearest = visibleParts.value.reduce((best, part) => {
|
|
30478
|
+
const rect = partInputs[part]?.getBoundingClientRect();
|
|
30479
|
+
if (!rect) return best;
|
|
30480
|
+
const distance = Math.abs(event.clientX - (rect.left + rect.width / 2));
|
|
30481
|
+
return !best || distance < best.distance ? {
|
|
30482
|
+
part,
|
|
30483
|
+
distance
|
|
30484
|
+
} : best;
|
|
30485
|
+
}, null);
|
|
30486
|
+
if (!nearest) return;
|
|
30487
|
+
partInputs[nearest.part]?.focus();
|
|
30488
|
+
openDropdown(nearest.part);
|
|
30489
|
+
};
|
|
30490
|
+
const setModelFromSelection = () => {
|
|
30491
|
+
if (visibleParts.value.some((part) => !selected[part])) return;
|
|
30492
|
+
modelValue.value = visibleParts.value.map((part) => getOptionValue(selected[part])).join(":");
|
|
30493
|
+
emit("input", selected.hour, selected.minute, selected.second);
|
|
30494
|
+
};
|
|
30495
|
+
const fillEmptyPartsFrom = (part) => {
|
|
30496
|
+
visibleParts.value.slice(visibleParts.value.indexOf(part) + 1).forEach((nextPart) => {
|
|
30497
|
+
if (!selected[nextPart]) selected[nextPart] = partOptions.value[nextPart][0];
|
|
30498
|
+
});
|
|
30499
|
+
};
|
|
30500
|
+
const selectOption = async (option) => {
|
|
30501
|
+
const part = openPart.value;
|
|
30502
|
+
selected[part] = option;
|
|
30503
|
+
fillEmptyPartsFrom(part);
|
|
30504
|
+
setTextsFromSelection();
|
|
30505
|
+
setModelFromSelection();
|
|
30506
|
+
const nextPart = getNextPart(part);
|
|
30507
|
+
if (!nextPart) {
|
|
30508
|
+
closeDropdown();
|
|
30509
|
+
return;
|
|
30728
30510
|
}
|
|
30511
|
+
await openDropdown(nextPart);
|
|
30512
|
+
partInputs[nextPart]?.focus();
|
|
30513
|
+
};
|
|
30514
|
+
const onType = async (part) => {
|
|
30515
|
+
if (!props.isTypeable) return;
|
|
30516
|
+
texts[part] = cleanText(texts[part]);
|
|
30517
|
+
if (texts[part].length < 2) return;
|
|
30518
|
+
const nextPart = getNextPart(part);
|
|
30519
|
+
if (!nextPart) return;
|
|
30520
|
+
await openDropdown(nextPart);
|
|
30521
|
+
partInputs[nextPart]?.focus();
|
|
30522
|
+
partInputs[nextPart]?.select();
|
|
30523
|
+
};
|
|
30524
|
+
const validatePart = (part) => {
|
|
30525
|
+
if (!props.isTypeable) return;
|
|
30526
|
+
const option = findOption(part, texts[part]);
|
|
30527
|
+
if (!option) {
|
|
30528
|
+
setTextsFromSelection();
|
|
30529
|
+
return;
|
|
30530
|
+
}
|
|
30531
|
+
selected[part] = option;
|
|
30532
|
+
setTextsFromSelection();
|
|
30533
|
+
setModelFromSelection();
|
|
30534
|
+
};
|
|
30535
|
+
const onEnter = (part) => {
|
|
30536
|
+
validatePart(part);
|
|
30537
|
+
closeDropdown();
|
|
30729
30538
|
};
|
|
30730
30539
|
const reset = () => {
|
|
30731
|
-
|
|
30732
|
-
|
|
30733
|
-
|
|
30734
|
-
|
|
30735
|
-
|
|
30736
|
-
|
|
30737
|
-
modelValue.value = `${hour.value.value}:${minute.value.value}`;
|
|
30738
|
-
};
|
|
30739
|
-
const onHourPickerClose = () => {
|
|
30740
|
-
if (hour.value && !minute.value) minute.value = props.minuteOptions[0];
|
|
30741
|
-
minutePicker.value.open();
|
|
30742
|
-
};
|
|
30743
|
-
const onAddHour = () => {
|
|
30744
|
-
if (!hour.value) hour.value = props.hourOptions[12];
|
|
30745
|
-
const newHour = ((parseInt(hour.value.value) + 1) % 24).toString().padStart(2, "0");
|
|
30746
|
-
hour.value = props.hourOptions.find((element) => element.value == newHour);
|
|
30747
|
-
minute.value = minute.value ? minute.value : (0, import_lodash.head)(props.minuteOptions);
|
|
30748
|
-
};
|
|
30749
|
-
const onSubHour = () => {
|
|
30750
|
-
if (!hour.value) hour.value = props.hourOptions[12];
|
|
30751
|
-
const newHour = ((parseInt(hour.value.value) + 23) % 24).toString().padStart(2, "0");
|
|
30752
|
-
hour.value = props.hourOptions.find((element) => element.value == newHour);
|
|
30753
|
-
minute.value = minute.value ? minute.value : (0, import_lodash.head)(props.minuteOptions);
|
|
30754
|
-
};
|
|
30755
|
-
const onSelectNow = () => {
|
|
30756
|
-
const now = /* @__PURE__ */ new Date();
|
|
30757
|
-
const currentHour = now.getHours().toString().padStart(2, "0");
|
|
30758
|
-
const currentMinute = now.getMinutes() >= 30 ? "30" : "00";
|
|
30759
|
-
hour.value = props.hourOptions.find((element) => element.value === currentHour);
|
|
30760
|
-
minute.value = props.minuteOptions.find((element) => element.value === currentMinute);
|
|
30540
|
+
visibleParts.value.forEach((part) => {
|
|
30541
|
+
selected[part] = null;
|
|
30542
|
+
texts[part] = "";
|
|
30543
|
+
});
|
|
30544
|
+
modelValue.value = null;
|
|
30545
|
+
closeDropdown();
|
|
30761
30546
|
};
|
|
30762
|
-
|
|
30547
|
+
const setTime = (value) => {
|
|
30548
|
+
const values = value ? String(value).split(":") : [];
|
|
30549
|
+
visibleParts.value.forEach((part, index) => {
|
|
30550
|
+
selected[part] = findOption(part, values[index]);
|
|
30551
|
+
});
|
|
30552
|
+
setTextsFromSelection();
|
|
30553
|
+
};
|
|
30554
|
+
watch(() => modelValue.value, (newValue, oldValue) => {
|
|
30763
30555
|
if (newValue !== oldValue) setTime(newValue);
|
|
30556
|
+
}, { immediate: true });
|
|
30557
|
+
watch(() => [
|
|
30558
|
+
props.hours,
|
|
30559
|
+
props.minutes,
|
|
30560
|
+
props.seconds,
|
|
30561
|
+
props.format
|
|
30562
|
+
], () => {
|
|
30563
|
+
setTime(modelValue.value);
|
|
30564
|
+
});
|
|
30565
|
+
useClickOutside({
|
|
30566
|
+
target: dropdown,
|
|
30567
|
+
handler: closeDropdown,
|
|
30568
|
+
isOpen: isDropdownOpen,
|
|
30569
|
+
ignore: [control]
|
|
30570
|
+
});
|
|
30571
|
+
__expose({
|
|
30572
|
+
open: () => openDropdown("hour"),
|
|
30573
|
+
close: closeDropdown,
|
|
30574
|
+
focus: () => partInputs.hour?.focus()
|
|
30764
30575
|
});
|
|
30765
30576
|
return (_ctx, _cache) => {
|
|
30766
30577
|
const _directive_tippy = resolveDirective("tippy");
|
|
30767
30578
|
return openBlock(), createBlock(AppFormElement_default, normalizeProps(guardReactiveProps(unref(formElementProps))), createSlots({
|
|
30768
30579
|
"help-block": withCtx(() => [renderSlot(_ctx.$slots, "help-block", {}, void 0, true)]),
|
|
30769
|
-
default: withCtx(() => [createElementVNode("div", _hoisted_1$
|
|
30770
|
-
|
|
30771
|
-
|
|
30772
|
-
|
|
30773
|
-
|
|
30774
|
-
"
|
|
30775
|
-
|
|
30776
|
-
|
|
30777
|
-
|
|
30778
|
-
|
|
30779
|
-
|
|
30780
|
-
|
|
30781
|
-
|
|
30782
|
-
|
|
30783
|
-
|
|
30784
|
-
}, null, 8, [
|
|
30785
|
-
"modelValue",
|
|
30786
|
-
"disabled",
|
|
30787
|
-
"options"
|
|
30788
|
-
]),
|
|
30789
|
-
_cache[2] || (_cache[2] = createElementVNode("span", { class: "flex-center-vertical ml-10 mr-10" }, ":", -1)),
|
|
30790
|
-
createVNode(AppGridPicker_default, {
|
|
30791
|
-
ref_key: "minutePicker",
|
|
30792
|
-
ref: minutePicker,
|
|
30793
|
-
modelValue: minute.value,
|
|
30794
|
-
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => minute.value = $event),
|
|
30795
|
-
columns: 2,
|
|
30580
|
+
default: withCtx(() => [createElementVNode("div", _hoisted_1$74, [createElementVNode("div", {
|
|
30581
|
+
ref_key: "control",
|
|
30582
|
+
ref: control,
|
|
30583
|
+
class: normalizeClass(["app-time2-control form-control flex-center-vertical p-0 overflow-hidden", {
|
|
30584
|
+
"disabled-element": _ctx.disabled,
|
|
30585
|
+
"cursor-pointer": !_ctx.disabled && _ctx.useDropdown
|
|
30586
|
+
}]),
|
|
30587
|
+
onClick: openNearestPart,
|
|
30588
|
+
onKeydown: withKeys(closeDropdown, ["esc"])
|
|
30589
|
+
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(visibleParts.value, (part, index) => {
|
|
30590
|
+
return openBlock(), createElementBlock(Fragment, { key: part }, [index > 0 ? (openBlock(), createElementBlock("span", _hoisted_2$54, ":")) : createCommentVNode("", true), withDirectives(createElementVNode("input", {
|
|
30591
|
+
ref_for: true,
|
|
30592
|
+
ref: (el) => partInputs[part] = el,
|
|
30593
|
+
"onUpdate:modelValue": ($event) => texts[part] = $event,
|
|
30594
|
+
class: normalizeClass(["app-time2-field h-100 p-0 text-center bg-transparent border-0 no-hover", { "cursor-pointer": !_ctx.disabled && _ctx.useDropdown }]),
|
|
30796
30595
|
disabled: _ctx.disabled,
|
|
30797
|
-
|
|
30798
|
-
|
|
30799
|
-
|
|
30800
|
-
"
|
|
30801
|
-
|
|
30802
|
-
|
|
30803
|
-
|
|
30804
|
-
|
|
30805
|
-
|
|
30806
|
-
|
|
30807
|
-
"
|
|
30808
|
-
]),
|
|
30809
|
-
|
|
30810
|
-
|
|
30811
|
-
|
|
30812
|
-
|
|
30813
|
-
|
|
30814
|
-
|
|
30815
|
-
|
|
30816
|
-
|
|
30817
|
-
|
|
30818
|
-
|
|
30596
|
+
name: index === 0 ? unref(computedName) : void 0,
|
|
30597
|
+
readonly: !_ctx.isTypeable,
|
|
30598
|
+
placeholder: partPlaceholders[part],
|
|
30599
|
+
inputmode: "numeric",
|
|
30600
|
+
maxlength: "2",
|
|
30601
|
+
type: "text",
|
|
30602
|
+
onBlur: ($event) => onBlur(part, $event),
|
|
30603
|
+
onClick: withModifiers(($event) => openDropdown(part), ["stop"]),
|
|
30604
|
+
onFocus: ($event) => onFocus(part),
|
|
30605
|
+
onInput: ($event) => onType(part),
|
|
30606
|
+
onKeydown: withKeys(withModifiers(($event) => onEnter(part), ["prevent"]), ["enter"])
|
|
30607
|
+
}, null, 42, _hoisted_3$37), [[vModelText, texts[part]]])], 64);
|
|
30608
|
+
}), 128)), !_ctx.disabled && __props.isClearable && modelValue.value ? (openBlock(), createElementBlock("div", {
|
|
30609
|
+
key: 0,
|
|
30610
|
+
class: "app-time2-clear flex-center-vertical h-100 ml-auto",
|
|
30611
|
+
onClick: _cache[0] || (_cache[0] = withModifiers(() => {}, ["stop"]))
|
|
30612
|
+
}, [withDirectives(createElementVNode("i", {
|
|
30613
|
+
class: "ph-x-circle app-cross-icon",
|
|
30614
|
+
onClick: withModifiers(reset, ["stop"])
|
|
30615
|
+
}, null, 512), [[_directive_tippy, "Sterge ora"]])])) : createCommentVNode("", true)], 34), _ctx.showEasyButtons && !_ctx.disabled ? (openBlock(), createElementBlock("div", _hoisted_4$30, [createVNode(_sfc_main$111, {
|
|
30616
|
+
modelValue: modelValue.value,
|
|
30617
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => modelValue.value = $event),
|
|
30618
|
+
format: _ctx.format
|
|
30619
|
+
}, null, 8, ["modelValue", "format"])])) : createCommentVNode("", true)]), control.value ? (openBlock(), createBlock(_sfc_main$112, {
|
|
30620
|
+
key: 0,
|
|
30621
|
+
anchor: activeAnchor.value,
|
|
30622
|
+
"is-open": isDropdownOpen.value,
|
|
30623
|
+
placement: dropdownPlacement.value,
|
|
30624
|
+
"use-teleport": true,
|
|
30625
|
+
width: dropdownWidth.value
|
|
30626
|
+
}, {
|
|
30627
|
+
default: withCtx(() => [withDirectives(createElementVNode("div", {
|
|
30628
|
+
ref_key: "dropdown",
|
|
30629
|
+
ref: dropdown,
|
|
30630
|
+
class: "app-time2-dropdown app-grid-dropdown overflow-auto scrollbar-hidden w-100",
|
|
30631
|
+
style: normalizeStyle(dropdownStyle.value)
|
|
30632
|
+
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(dropdownOptions.value, (option) => {
|
|
30633
|
+
return openBlock(), createElementBlock("button", {
|
|
30634
|
+
key: getOptionValue(option),
|
|
30635
|
+
class: normalizeClass(["app-time2-option cell bg-transparent border-0 p-0", { active: unref(import_lodash.isEqual)(option, selected[openPart.value]) }]),
|
|
30636
|
+
type: "button",
|
|
30637
|
+
onMousedown: _cache[2] || (_cache[2] = withModifiers(() => {}, ["prevent"])),
|
|
30638
|
+
onClick: ($event) => selectOption(option)
|
|
30639
|
+
}, toDisplayString(getOptionValue(option)), 43, _hoisted_5$23);
|
|
30640
|
+
}), 128))], 4), [[vShow, isDropdownOpen.value]])]),
|
|
30641
|
+
_: 1
|
|
30642
|
+
}, 8, [
|
|
30643
|
+
"anchor",
|
|
30644
|
+
"is-open",
|
|
30645
|
+
"placement",
|
|
30646
|
+
"width"
|
|
30647
|
+
])) : createCommentVNode("", true)]),
|
|
30819
30648
|
_: 2
|
|
30820
30649
|
}, [renderList(Object.keys(_ctx.$slots), (slot) => {
|
|
30821
30650
|
return {
|
|
@@ -30825,422 +30654,68 @@ var AppTimePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
30825
30654
|
})]), 1040);
|
|
30826
30655
|
};
|
|
30827
30656
|
}
|
|
30828
|
-
}, [["__scopeId", "data-v-
|
|
30829
|
-
//#endregion
|
|
30830
|
-
//#region src/utils/DateUtils.js
|
|
30831
|
-
var DateUtils = class DateUtils {
|
|
30832
|
-
static getDayNames() {
|
|
30833
|
-
return {
|
|
30834
|
-
[Constants_default.LANGUAGE_EN]: [
|
|
30835
|
-
"Sun",
|
|
30836
|
-
"Mon",
|
|
30837
|
-
"Tue",
|
|
30838
|
-
"Wed",
|
|
30839
|
-
"Thu",
|
|
30840
|
-
"Fri",
|
|
30841
|
-
"Sat"
|
|
30842
|
-
],
|
|
30843
|
-
[Constants_default.LANGUAGE_RO]: [
|
|
30844
|
-
"Dum",
|
|
30845
|
-
"Lun",
|
|
30846
|
-
"Mar",
|
|
30847
|
-
"Mie",
|
|
30848
|
-
"Joi",
|
|
30849
|
-
"Vin",
|
|
30850
|
-
"Sam"
|
|
30851
|
-
]
|
|
30852
|
-
};
|
|
30853
|
-
}
|
|
30854
|
-
static getMonthNames() {
|
|
30855
|
-
return {
|
|
30856
|
-
[Constants_default.LANGUAGE_EN]: [
|
|
30857
|
-
"Jan",
|
|
30858
|
-
"Feb",
|
|
30859
|
-
"Mar",
|
|
30860
|
-
"Apr",
|
|
30861
|
-
"May",
|
|
30862
|
-
"Jun",
|
|
30863
|
-
"Jul",
|
|
30864
|
-
"Aug",
|
|
30865
|
-
"Sep",
|
|
30866
|
-
"Oct",
|
|
30867
|
-
"Nov",
|
|
30868
|
-
"Dec"
|
|
30869
|
-
],
|
|
30870
|
-
[Constants_default.LANGUAGE_RO]: [
|
|
30871
|
-
"Ian",
|
|
30872
|
-
"Feb",
|
|
30873
|
-
"Mar",
|
|
30874
|
-
"Apr",
|
|
30875
|
-
"Mai",
|
|
30876
|
-
"Iun",
|
|
30877
|
-
"Iul",
|
|
30878
|
-
"Aug",
|
|
30879
|
-
"Sep",
|
|
30880
|
-
"Oct",
|
|
30881
|
-
"Noi",
|
|
30882
|
-
"Dec"
|
|
30883
|
-
]
|
|
30884
|
-
};
|
|
30885
|
-
}
|
|
30886
|
-
static commonFormats = [
|
|
30887
|
-
"yyyy-MM-dd HH:mm:ss",
|
|
30888
|
-
"yyyy-MM-dd HH:mm",
|
|
30889
|
-
"yyyy-MM-dd",
|
|
30890
|
-
"MM/dd/yyyy HH:mm:ss",
|
|
30891
|
-
"MM/dd/yyyy HH:mm",
|
|
30892
|
-
"MM/dd/yyyy",
|
|
30893
|
-
"dd/MM/yyyy HH:mm:ss",
|
|
30894
|
-
"dd/MM/yyyy HH:mm",
|
|
30895
|
-
"dd/MM/yyyy",
|
|
30896
|
-
"dd.MM.yyyy HH:mm:ss",
|
|
30897
|
-
"dd.MM.yyyy HH:mm",
|
|
30898
|
-
"dd.MM.yyyy",
|
|
30899
|
-
"yyyy/MM/dd HH:mm:ss",
|
|
30900
|
-
"yyyy/MM/dd HH:mm",
|
|
30901
|
-
"yyyy/MM/dd",
|
|
30902
|
-
"dd-MM-yyyy HH:mm:ss",
|
|
30903
|
-
"dd-MM-yyyy HH:mm",
|
|
30904
|
-
"dd-MM-yyyy",
|
|
30905
|
-
"yyyy-MM-dd h:mm:ss a",
|
|
30906
|
-
"yyyy-MM-dd h:mm a",
|
|
30907
|
-
"MM/dd/yyyy h:mm:ss a",
|
|
30908
|
-
"MM/dd/yyyy h:mm a",
|
|
30909
|
-
"dd/MM/yyyy h:mm:ss a",
|
|
30910
|
-
"dd/MM/yyyy h:mm a"
|
|
30911
|
-
];
|
|
30912
|
-
static getCalendarComponentLanguageData(language) {
|
|
30913
|
-
return {
|
|
30914
|
-
days: DateUtils.getDayNames()[language],
|
|
30915
|
-
months: DateUtils.getMonthNames()[language],
|
|
30916
|
-
placeholder: {},
|
|
30917
|
-
formatLocale: { firstDayOfWeek: this.getCalendarComponentFirstDatOfWeek(language) }
|
|
30918
|
-
};
|
|
30919
|
-
}
|
|
30920
|
-
static getCalendarComponentFirstDatOfWeek(language) {
|
|
30921
|
-
if (language === Constants_default.LANGUAGE_EN) return Constants_default.CALENDAR_FIRST_DAY_OF_WEEK_EN;
|
|
30922
|
-
else return Constants_default.CALENDAR_FIRST_DAY_OF_WEEK_RO;
|
|
30923
|
-
}
|
|
30924
|
-
static get FORMAT_ROMANIAN_DATE() {
|
|
30925
|
-
return "dd.MM.yyyy";
|
|
30926
|
-
}
|
|
30927
|
-
static get FORMAT_ROMANIAN_DATE_HOUR() {
|
|
30928
|
-
return "dd.MM.yyyy HH";
|
|
30929
|
-
}
|
|
30930
|
-
static get FORMAT_ROMANIAN_DATE_HOUR_MINUTE() {
|
|
30931
|
-
return "dd.MM.yyyy HH:mm";
|
|
30932
|
-
}
|
|
30933
|
-
static get FORMAT_ROMANIAN_DATE_HOUR_MINUTE_SECOND() {
|
|
30934
|
-
return "dd.MM.yyyy HH:mm:ss";
|
|
30935
|
-
}
|
|
30936
|
-
static get FORMAT_ENGLISH_DATE() {
|
|
30937
|
-
return "yyyy-MM-dd";
|
|
30938
|
-
}
|
|
30939
|
-
static get FORMAT_ENGLISH_DATE_HOUR() {
|
|
30940
|
-
return "yyyy-MM-dd HH";
|
|
30941
|
-
}
|
|
30942
|
-
static get FORMAT_ENGLISH_DATE_HOUR_MINUTE() {
|
|
30943
|
-
return "yyyy-MM-dd HH:mm";
|
|
30944
|
-
}
|
|
30945
|
-
static get FORMAT_ENGLISH_DATE_HOUR_MINUTE_SECOND() {
|
|
30946
|
-
return "yyyy-MM-dd HH:mm:ss";
|
|
30947
|
-
}
|
|
30948
|
-
static stringToDate(dateString, format = null) {
|
|
30949
|
-
if (!dateString) return null;
|
|
30950
|
-
if (format) return parse$2(dateString, format, /* @__PURE__ */ new Date());
|
|
30951
|
-
for (const format of this.commonFormats) try {
|
|
30952
|
-
const result = parse$2(dateString, format, /* @__PURE__ */ new Date());
|
|
30953
|
-
if (isValid$1(result)) return result;
|
|
30954
|
-
} catch (error) {
|
|
30955
|
-
continue;
|
|
30956
|
-
}
|
|
30957
|
-
const nativeParsed = new Date(dateString);
|
|
30958
|
-
return isValid$1(nativeParsed) ? nativeParsed : null;
|
|
30959
|
-
}
|
|
30960
|
-
static stringFromTo(date, formatFrom = this.FORMAT_ENGLISH_DATE, formatTo = this.FORMAT_ROMANIAN_DATE) {
|
|
30961
|
-
if (!date) return null;
|
|
30962
|
-
return format$1(parse$2(date, formatFrom, /* @__PURE__ */ new Date()), formatTo);
|
|
30963
|
-
}
|
|
30964
|
-
static dateToString(date, dateFormat = this.FORMAT_ROMANIAN_DATE) {
|
|
30965
|
-
if (!date) return null;
|
|
30966
|
-
return format$1(date, dateFormat);
|
|
30967
|
-
}
|
|
30968
|
-
/**
|
|
30969
|
-
* @deprecated since version 1.9.7
|
|
30970
|
-
*/
|
|
30971
|
-
static dateToStringWithTime(date, dateFormat = "dd-MM-yyyy HH:mm:ss") {
|
|
30972
|
-
return format$1(date, dateFormat);
|
|
30973
|
-
}
|
|
30974
|
-
/**
|
|
30975
|
-
* @deprecated since version 1.9.7
|
|
30976
|
-
*/
|
|
30977
|
-
static dateFromTo(date, formatFrom = "yyyy-MM-dd", formatTo = "dd-MM-yyyy") {
|
|
30978
|
-
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
30979
|
-
if (!date) return null;
|
|
30980
|
-
return format$1(parse$2(date, formatFrom, /* @__PURE__ */ new Date()), formatTo);
|
|
30981
|
-
}
|
|
30982
|
-
/**
|
|
30983
|
-
* @deprecated since version 1.9.7
|
|
30984
|
-
*/
|
|
30985
|
-
static dateFromToWithTime(date, formatFrom = "yyyy-MM-dd HH:mm:ss", formatTo = "dd-MM-yyyy HH:mm:ss") {
|
|
30986
|
-
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
30987
|
-
if (!date) return null;
|
|
30988
|
-
return format$1(parse$2(date, formatFrom, /* @__PURE__ */ new Date()), formatTo);
|
|
30989
|
-
}
|
|
30990
|
-
/**
|
|
30991
|
-
* @deprecated since version 1.9.7
|
|
30992
|
-
*/
|
|
30993
|
-
static stringFromToWithTime(date, formatFrom = "yyyy-MM-dd HH:mm:ss", formatTo = "dd-MM-yyyy HH:mm:ss") {
|
|
30994
|
-
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
30995
|
-
if (!date) return null;
|
|
30996
|
-
return format$1(parse$2(date, formatFrom, /* @__PURE__ */ new Date()), formatTo);
|
|
30997
|
-
}
|
|
30998
|
-
/**
|
|
30999
|
-
* @deprecated since version 1.9.7
|
|
31000
|
-
*/
|
|
31001
|
-
static romanianToEnglishDate(dateString) {
|
|
31002
|
-
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
31003
|
-
return this.stringFromTo(dateString, "dd-MM-yyyy", "yyyy-MM-dd");
|
|
31004
|
-
}
|
|
31005
|
-
/**
|
|
31006
|
-
* @deprecated since version 1.9.7
|
|
31007
|
-
*/
|
|
31008
|
-
static romanianToEnglishDateHour(dateString) {
|
|
31009
|
-
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
31010
|
-
return this.stringFromTo(dateString, "dd-MM-yyyy HH", "yyyy-MM-dd HH:00");
|
|
31011
|
-
}
|
|
31012
|
-
/**
|
|
31013
|
-
* @deprecated since version 1.9.7
|
|
31014
|
-
*/
|
|
31015
|
-
static romanianToEnglishDateHourMinute(dateString) {
|
|
31016
|
-
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
31017
|
-
return this.stringFromTo(dateString, "dd-MM-yyyy HH:mm", "yyyy-MM-dd HH:mm");
|
|
31018
|
-
}
|
|
31019
|
-
/**
|
|
31020
|
-
* @deprecated since version 1.9.7
|
|
31021
|
-
*/
|
|
31022
|
-
static romanianToEnglishDateHourMinuteSeconds(dateString) {
|
|
31023
|
-
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
31024
|
-
return this.stringFromTo(dateString, "dd-MM-yyyy HH:mm:ss", "yyyy-MM-dd HH:mm:ss");
|
|
31025
|
-
}
|
|
31026
|
-
/**
|
|
31027
|
-
* @deprecated since version 1.9.7
|
|
31028
|
-
*/
|
|
31029
|
-
static englishToRomanianDate(dateString) {
|
|
31030
|
-
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
31031
|
-
return this.stringFromTo(dateString, "yyyy-MM-dd", "dd-MM-yyyy");
|
|
31032
|
-
}
|
|
31033
|
-
/**
|
|
31034
|
-
* @deprecated since version 2.0
|
|
31035
|
-
*/
|
|
31036
|
-
static englishToRomanianDateHour(dateString) {
|
|
31037
|
-
console.warn("Warning! Depricated function from 01.03.2023 called!");
|
|
31038
|
-
return this.stringFromTo(dateString, "yyyy-MM-dd HH:00", "dd-MM-yyyy HH");
|
|
31039
|
-
}
|
|
31040
|
-
/**
|
|
31041
|
-
* @deprecated since version 2.0
|
|
31042
|
-
*/
|
|
31043
|
-
static englishToRomanianDateHourMinute(dateString) {
|
|
31044
|
-
return this.stringFromTo(dateString, "yyyy-MM-dd HH:mm", "dd-MM-yyyy HH:mm");
|
|
31045
|
-
}
|
|
31046
|
-
/**
|
|
31047
|
-
* @deprecated since version 2.0
|
|
31048
|
-
*/
|
|
31049
|
-
static englishToRomanianDateHourMinuteSeconds(dateString) {
|
|
31050
|
-
return this.stringFromTo(dateString, "yyyy-MM-dd HH:mm:ss", "dd-MM-yyyy HH:mm:ss");
|
|
31051
|
-
}
|
|
31052
|
-
static displayInterval(start, end, dateFormat = this.FORMAT_ROMANIAN_DATE) {
|
|
31053
|
-
if (!start && !end) return `Nedeterminata`;
|
|
31054
|
-
if (start && end) return `${DateUtils.dateToString(start, dateFormat)} - ${DateUtils.dateToString(end, dateFormat)}`;
|
|
31055
|
-
if (start) return `>= ${DateUtils.dateToString(start, dateFormat)}`;
|
|
31056
|
-
if (end) return `<= ${DateUtils.dateToString(end, dateFormat)}`;
|
|
31057
|
-
}
|
|
31058
|
-
static isStringDate = (dateString) => {
|
|
31059
|
-
return /^\d{2,4}[-./]\d{1,2}[-./]\d{1,4}([ T]\d{2}:\d{2}(:\d{2}(\.\d+)?(Z|[+-]\d{2}:?\d{2})?)?)?$/.test(dateString);
|
|
31060
|
-
};
|
|
31061
|
-
static stringToDateRecursive = (item, deep = false) => {
|
|
31062
|
-
if (!item) return item;
|
|
31063
|
-
if ((0, import_lodash.isArray)(item)) return item.map((el) => DateUtils.stringToDateRecursive(el, deep));
|
|
31064
|
-
if ((0, import_lodash.isPlainObject)(item)) {
|
|
31065
|
-
for (const key in item) if (Object.prototype.hasOwnProperty.call(item, key)) item[key] = deep ? DateUtils.stringToDateRecursive(item[key], deep) : DateUtils.stringToDateRecursive(item[key]);
|
|
31066
|
-
return item;
|
|
31067
|
-
}
|
|
31068
|
-
if (typeof item === "string") return DateUtils.isStringDate(item) ? DateUtils.stringToDate(item) : item;
|
|
31069
|
-
return item;
|
|
31070
|
-
};
|
|
31071
|
-
static isOlderThan = (timestamp, minutes) => {
|
|
31072
|
-
return Date.now() - timestamp > minutes * 60 * 1e3;
|
|
31073
|
-
};
|
|
31074
|
-
static nextMonth({ month, year }) {
|
|
31075
|
-
const d = new Date(+year, +month);
|
|
31076
|
-
return {
|
|
31077
|
-
month: String(d.getMonth() + 1),
|
|
31078
|
-
year: String(d.getFullYear())
|
|
31079
|
-
};
|
|
31080
|
-
}
|
|
31081
|
-
static previousMonth({ month, year }) {
|
|
31082
|
-
const d = new Date(+year, +month - 2);
|
|
31083
|
-
return {
|
|
31084
|
-
month: String(d.getMonth() + 1),
|
|
31085
|
-
year: String(d.getFullYear())
|
|
31086
|
-
};
|
|
31087
|
-
}
|
|
31088
|
-
};
|
|
30657
|
+
}, [["__scopeId", "data-v-d1c8386d"]]);
|
|
31089
30658
|
//#endregion
|
|
31090
|
-
//#region src/components/small/app-date-time
|
|
31091
|
-
var _hoisted_1$
|
|
31092
|
-
var _hoisted_2$53 = { class: "app-form-group-element flex-grow-1 mr-5" };
|
|
31093
|
-
var _hoisted_3$36 = { class: "app-form-group-element flex-grow-1" };
|
|
31094
|
-
var _hoisted_4$29 = {
|
|
31095
|
-
key: 0,
|
|
31096
|
-
class: "easy-buttons"
|
|
31097
|
-
};
|
|
31098
|
-
var CODE_SUB_DAY = "subday";
|
|
31099
|
-
var CODE_TODAY = "today";
|
|
31100
|
-
var CODE_ADD_DAY = "addday";
|
|
30659
|
+
//#region src/components/small/app-date-time/AppDateTime.vue
|
|
30660
|
+
var _hoisted_1$73 = { class: "flex-center-vertical w-100 gap-1" };
|
|
31101
30661
|
var _sfc_main$10 = {
|
|
31102
|
-
__name: "
|
|
31103
|
-
props: {
|
|
31104
|
-
|
|
31105
|
-
|
|
31106
|
-
type: String,
|
|
31107
|
-
default: "app-date-time-picker"
|
|
31108
|
-
},
|
|
31109
|
-
minuteOptions: {
|
|
31110
|
-
type: Array,
|
|
31111
|
-
default: () => {
|
|
31112
|
-
return [{
|
|
31113
|
-
id: 1,
|
|
31114
|
-
value: "00"
|
|
31115
|
-
}, {
|
|
31116
|
-
id: 2,
|
|
31117
|
-
value: "30"
|
|
31118
|
-
}];
|
|
31119
|
-
}
|
|
31120
|
-
},
|
|
31121
|
-
dateClass: { default: "flex-1" },
|
|
31122
|
-
timeClass: { default: "flex-1" },
|
|
31123
|
-
valueType: {
|
|
31124
|
-
type: String,
|
|
31125
|
-
default: "date"
|
|
31126
|
-
},
|
|
31127
|
-
format: {
|
|
31128
|
-
type: String,
|
|
31129
|
-
default: "YYYY-MM-DD"
|
|
31130
|
-
},
|
|
31131
|
-
...appDatePickerProps_default,
|
|
30662
|
+
__name: "AppDateTime",
|
|
30663
|
+
props: /*@__PURE__*/ mergeModels({
|
|
30664
|
+
...props$1,
|
|
30665
|
+
...props,
|
|
31132
30666
|
...appFormElementProps_default
|
|
31133
|
-
},
|
|
31134
|
-
|
|
31135
|
-
|
|
31136
|
-
|
|
31137
|
-
|
|
30667
|
+
}, {
|
|
30668
|
+
"modelValue": { type: Date },
|
|
30669
|
+
"modelModifiers": {}
|
|
30670
|
+
}),
|
|
30671
|
+
emits: ["update:modelValue"],
|
|
30672
|
+
setup(__props) {
|
|
30673
|
+
const modelValue = useModel(__props, "modelValue");
|
|
30674
|
+
const props = createPropsRestProxy(__props, ["modelValue"]);
|
|
31138
30675
|
const { formElementProps } = useAppFormElement(props);
|
|
31139
|
-
const
|
|
31140
|
-
|
|
31141
|
-
|
|
31142
|
-
|
|
31143
|
-
{
|
|
31144
|
-
value: "-1",
|
|
31145
|
-
code: CODE_SUB_DAY
|
|
31146
|
-
},
|
|
31147
|
-
{
|
|
31148
|
-
value: "Astazi",
|
|
31149
|
-
code: CODE_TODAY
|
|
31150
|
-
},
|
|
31151
|
-
{
|
|
31152
|
-
value: "+1",
|
|
31153
|
-
code: CODE_ADD_DAY
|
|
30676
|
+
const date = computed({
|
|
30677
|
+
get: () => modelValue.value,
|
|
30678
|
+
set: (value) => {
|
|
30679
|
+
modelValue.value = value && new Date(value.getFullYear(), value.getMonth(), value.getDate(), modelValue.value?.getHours() ?? 0, modelValue.value?.getMinutes() ?? 0, modelValue.value?.getSeconds() ?? 0);
|
|
31154
30680
|
}
|
|
31155
|
-
]);
|
|
31156
|
-
const computedDisabled = computed(() => {
|
|
31157
|
-
return !localDate.value || props.disabled;
|
|
31158
30681
|
});
|
|
31159
|
-
const
|
|
31160
|
-
|
|
31161
|
-
|
|
31162
|
-
|
|
31163
|
-
|
|
31164
|
-
|
|
31165
|
-
|
|
31166
|
-
|
|
31167
|
-
|
|
31168
|
-
|
|
31169
|
-
|
|
31170
|
-
|
|
31171
|
-
if ((0, import_lodash.isEqual)(newValue, oldValue) || !newValue) return;
|
|
31172
|
-
let localDateFormatted = DateUtils.dateToString(localDate.value, DateUtils.FORMAT_ENGLISH_DATE);
|
|
31173
|
-
localValue.value = DateUtils.stringToDate(`${localDateFormatted} ${newValue}`, DateUtils.FORMAT_ENGLISH_DATE_HOUR_MINUTE);
|
|
31174
|
-
});
|
|
31175
|
-
watch(() => localDate.value, (newValue, oldValue) => {
|
|
31176
|
-
if ((0, import_lodash.isEqual)(newValue, oldValue)) return;
|
|
31177
|
-
if (!localDate.value && localTime.value) {
|
|
31178
|
-
localTime.value = null;
|
|
31179
|
-
localValue.value = null;
|
|
31180
|
-
return;
|
|
30682
|
+
const time = computed({
|
|
30683
|
+
get: () => {
|
|
30684
|
+
const result = modelValue.value?.toTimeString().slice(0, props.format.length) ?? null;
|
|
30685
|
+
console.log({ result });
|
|
30686
|
+
return result;
|
|
30687
|
+
},
|
|
30688
|
+
set: (value) => {
|
|
30689
|
+
if (!value) return modelValue.value = null;
|
|
30690
|
+
const [hours, minutes = 0, seconds = 0] = value.split(":");
|
|
30691
|
+
const date = new Date(modelValue.value ?? /* @__PURE__ */ new Date());
|
|
30692
|
+
date.setHours(hours, minutes, seconds, 0);
|
|
30693
|
+
modelValue.value = date;
|
|
31181
30694
|
}
|
|
31182
|
-
let localValueNew = (0, import_lodash.cloneDeep)(localValue.value) ?? startOfDay$1(/* @__PURE__ */ new Date());
|
|
31183
|
-
localValueNew.setFullYear(newValue.getFullYear(), newValue.getMonth(), newValue.getDate());
|
|
31184
|
-
localValue.value = localValueNew;
|
|
31185
30695
|
});
|
|
31186
|
-
watch(() => localValue.value, (newValue, oldValue) => {
|
|
31187
|
-
if ((0, import_lodash.isEqual)(newValue, oldValue)) return;
|
|
31188
|
-
setLocalDate();
|
|
31189
|
-
setLocalTime();
|
|
31190
|
-
onInput();
|
|
31191
|
-
}, { immediate: true });
|
|
31192
|
-
const setLocalValue = (value) => {
|
|
31193
|
-
if (!value) {
|
|
31194
|
-
localValue.value = null;
|
|
31195
|
-
return;
|
|
31196
|
-
}
|
|
31197
|
-
if (value instanceof Date) {
|
|
31198
|
-
localValue.value = (0, import_lodash.cloneDeep)(value);
|
|
31199
|
-
setLocalDate();
|
|
31200
|
-
setLocalTime();
|
|
31201
|
-
} else {
|
|
31202
|
-
localDate.value = startOfDay$1(/* @__PURE__ */ new Date());
|
|
31203
|
-
localTime.value = DateUtils.dateToString(localDate.value, "HH:mm");
|
|
31204
|
-
}
|
|
31205
|
-
};
|
|
31206
|
-
watch(() => props.modelValue, (newValue, oldValue) => {
|
|
31207
|
-
if ((0, import_lodash.isEqual)(newValue, oldValue)) return;
|
|
31208
|
-
setLocalValue(props.modelValue);
|
|
31209
|
-
onInput();
|
|
31210
|
-
}, { immediate: true });
|
|
31211
30696
|
return (_ctx, _cache) => {
|
|
31212
30697
|
return openBlock(), createBlock(AppFormElement_default, normalizeProps(guardReactiveProps(unref(formElementProps))), {
|
|
31213
30698
|
"help-block": withCtx(() => [renderSlot(_ctx.$slots, "help-block")]),
|
|
31214
|
-
default: withCtx(() => [createElementVNode("div", _hoisted_1$
|
|
31215
|
-
|
|
31216
|
-
|
|
31217
|
-
|
|
31218
|
-
|
|
31219
|
-
|
|
31220
|
-
|
|
31221
|
-
|
|
31222
|
-
|
|
31223
|
-
|
|
31224
|
-
|
|
31225
|
-
|
|
31226
|
-
|
|
31227
|
-
|
|
31228
|
-
|
|
31229
|
-
|
|
31230
|
-
|
|
31231
|
-
|
|
31232
|
-
|
|
31233
|
-
|
|
31234
|
-
}, null, 8, [
|
|
31235
|
-
"modelValue",
|
|
31236
|
-
"disabled",
|
|
31237
|
-
"minute-options"
|
|
31238
|
-
])]),
|
|
31239
|
-
_ctx.showEasyButtons ? (openBlock(), createElementBlock("div", _hoisted_4$29, [createVNode(_sfc_main$116, {
|
|
31240
|
-
modelValue: localValue.value,
|
|
31241
|
-
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => localValue.value = $event)
|
|
31242
|
-
}, null, 8, ["modelValue"])])) : createCommentVNode("", true)
|
|
31243
|
-
])]),
|
|
30699
|
+
default: withCtx(() => [createElementVNode("div", _hoisted_1$73, [createVNode(AppDate_default, mergeProps({
|
|
30700
|
+
modelValue: date.value,
|
|
30701
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => date.value = $event)
|
|
30702
|
+
}, {
|
|
30703
|
+
..._ctx.$attrs,
|
|
30704
|
+
...props
|
|
30705
|
+
}, {
|
|
30706
|
+
class: "app-form-group-element flex-1",
|
|
30707
|
+
"input-only": true
|
|
30708
|
+
}), null, 16, ["modelValue"]), createVNode(AppTime_default, mergeProps({
|
|
30709
|
+
modelValue: time.value,
|
|
30710
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => time.value = $event)
|
|
30711
|
+
}, {
|
|
30712
|
+
..._ctx.$attrs,
|
|
30713
|
+
...props
|
|
30714
|
+
}, {
|
|
30715
|
+
class: "app-form-group-element flex-1",
|
|
30716
|
+
disabled: !modelValue.value || props.disabled,
|
|
30717
|
+
"input-only": true
|
|
30718
|
+
}), null, 16, ["modelValue", "disabled"])])]),
|
|
31244
30719
|
_: 3
|
|
31245
30720
|
}, 16);
|
|
31246
30721
|
};
|
|
@@ -66777,11 +66252,11 @@ var IconSquareCheckFilled = createVueComponent("filled", "square-check-filled",
|
|
|
66777
66252
|
*/
|
|
66778
66253
|
//#endregion
|
|
66779
66254
|
//#region src/components/small/app-drawer/AppDrawer.vue
|
|
66780
|
-
var _hoisted_1$
|
|
66781
|
-
var _hoisted_2$
|
|
66782
|
-
var _hoisted_3$
|
|
66783
|
-
var _hoisted_4$
|
|
66784
|
-
var _hoisted_5$
|
|
66255
|
+
var _hoisted_1$72 = { class: "display-flex-column h-100" };
|
|
66256
|
+
var _hoisted_2$53 = { class: "flex-center-vertical w-100 p-3" };
|
|
66257
|
+
var _hoisted_3$36 = { class: "flex-1" };
|
|
66258
|
+
var _hoisted_4$29 = { class: "font-600 text-size-14" };
|
|
66259
|
+
var _hoisted_5$22 = { class: "p-20 flex-1 w-100" };
|
|
66785
66260
|
var AppDrawer_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
66786
66261
|
__name: "AppDrawer",
|
|
66787
66262
|
props: /*@__PURE__*/ mergeModels({
|
|
@@ -66832,26 +66307,26 @@ var AppDrawer_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
66832
66307
|
ref: drawer,
|
|
66833
66308
|
class: normalizeClass(["filter-sidebar", drawerClass.value]),
|
|
66834
66309
|
style: normalizeStyle(drawerStyle.value)
|
|
66835
|
-
}, [createElementVNode("div", _hoisted_1$
|
|
66836
|
-
createElementVNode("div", _hoisted_2$
|
|
66310
|
+
}, [createElementVNode("div", _hoisted_1$72, [
|
|
66311
|
+
createElementVNode("div", _hoisted_2$53, [createElementVNode("div", _hoisted_3$36, [renderSlot(_ctx.$slots, "title", {}, () => [createElementVNode("div", _hoisted_4$29, toDisplayString(__props.title), 1)], true)]), createVNode(unref(IconX), {
|
|
66837
66312
|
size: 24,
|
|
66838
66313
|
stroke: 1.5,
|
|
66839
66314
|
class: "cursor-pointer",
|
|
66840
66315
|
onClick: hide
|
|
66841
66316
|
})]),
|
|
66842
66317
|
_cache[0] || (_cache[0] = createElementVNode("hr", { class: "mb-5 mt-0 w-100" }, null, -1)),
|
|
66843
|
-
createElementVNode("div", _hoisted_5$
|
|
66318
|
+
createElementVNode("div", _hoisted_5$22, [renderSlot(_ctx.$slots, "default", {}, void 0, true)])
|
|
66844
66319
|
])], 6)]);
|
|
66845
66320
|
};
|
|
66846
66321
|
}
|
|
66847
66322
|
}, [["__scopeId", "data-v-7b902216"]]);
|
|
66848
66323
|
//#endregion
|
|
66849
66324
|
//#region src/components/small/app-table/AppTableFilterDrawer.vue
|
|
66850
|
-
var _hoisted_1$
|
|
66851
|
-
var _hoisted_2$
|
|
66852
|
-
var _hoisted_3$
|
|
66853
|
-
var _hoisted_4$
|
|
66854
|
-
var _hoisted_5$
|
|
66325
|
+
var _hoisted_1$71 = { class: "display-flex-column h-100" };
|
|
66326
|
+
var _hoisted_2$52 = { class: "flex-center-vertical pr-20 pl-20 w-100 mt-15" };
|
|
66327
|
+
var _hoisted_3$35 = { class: "flex-1 mb-10" };
|
|
66328
|
+
var _hoisted_4$28 = { class: "mb-0" };
|
|
66329
|
+
var _hoisted_5$21 = { class: "p-20 flex-1 w-100" };
|
|
66855
66330
|
var _hoisted_6$13 = { class: "flex-center p-10 w-100 gap-1" };
|
|
66856
66331
|
var AppTableFilterDrawer_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
66857
66332
|
__name: "AppTableFilterDrawer",
|
|
@@ -66914,13 +66389,13 @@ var AppTableFilterDrawer_default = /*#__PURE__*/ _plugin_vue_export_helper_defau
|
|
|
66914
66389
|
createElementVNode("div", {
|
|
66915
66390
|
ref: "drawer",
|
|
66916
66391
|
class: normalizeClass(["filter-sidebar", { active: isExpanded.value }])
|
|
66917
|
-
}, [createElementVNode("div", _hoisted_1$
|
|
66918
|
-
createElementVNode("div", _hoisted_2$
|
|
66392
|
+
}, [createElementVNode("div", _hoisted_1$71, [
|
|
66393
|
+
createElementVNode("div", _hoisted_2$52, [createElementVNode("div", _hoisted_3$35, [createElementVNode("h4", _hoisted_4$28, toDisplayString(__props.title), 1)]), createElementVNode("i", {
|
|
66919
66394
|
class: "icon-x cursor-pointer",
|
|
66920
66395
|
onClick: toggleDrawer
|
|
66921
66396
|
})]),
|
|
66922
66397
|
_cache[0] || (_cache[0] = createElementVNode("hr", { class: "mb-5 mt-0 w-100" }, null, -1)),
|
|
66923
|
-
createElementVNode("div", _hoisted_5$
|
|
66398
|
+
createElementVNode("div", _hoisted_5$21, [renderSlot(_ctx.$slots, "content", {}, void 0, true)]),
|
|
66924
66399
|
_cache[1] || (_cache[1] = createElementVNode("hr", { class: "mb-5 mt-0 w-100" }, null, -1)),
|
|
66925
66400
|
createElementVNode("div", _hoisted_6$13, [createVNode(_sfc_main$3, {
|
|
66926
66401
|
class: "btn-default",
|
|
@@ -67389,7 +66864,7 @@ var isNumeric = (value) => {
|
|
|
67389
66864
|
};
|
|
67390
66865
|
//#endregion
|
|
67391
66866
|
//#region src/components/small/app-file/AppFileDropZone.vue
|
|
67392
|
-
var _sfc_main$
|
|
66867
|
+
var _sfc_main$107 = {
|
|
67393
66868
|
__name: "AppFileDropZone",
|
|
67394
66869
|
emits: ["files-dropped"],
|
|
67395
66870
|
setup(__props, { emit: __emit }) {
|
|
@@ -67435,11 +66910,11 @@ var _sfc_main$106 = {
|
|
|
67435
66910
|
};
|
|
67436
66911
|
//#endregion
|
|
67437
66912
|
//#region src/components/small/app-modal/AppModal.vue
|
|
67438
|
-
var _hoisted_1$
|
|
66913
|
+
var _hoisted_1$70 = {
|
|
67439
66914
|
class: "app-modal-overlay",
|
|
67440
66915
|
style: { "z-index": "99999" }
|
|
67441
66916
|
};
|
|
67442
|
-
var _hoisted_2$
|
|
66917
|
+
var _hoisted_2$51 = {
|
|
67443
66918
|
"aria-modal": "true",
|
|
67444
66919
|
class: "modal fade show display-block",
|
|
67445
66920
|
tabindex: "-1"
|
|
@@ -67553,7 +67028,7 @@ var AppModal_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
67553
67028
|
});
|
|
67554
67029
|
return (_ctx, _cache) => {
|
|
67555
67030
|
return openBlock(), createBlock(Transition, { name: "fadeHeight" }, {
|
|
67556
|
-
default: withCtx(() => [withDirectives(createElementVNode("div", _hoisted_1$
|
|
67031
|
+
default: withCtx(() => [withDirectives(createElementVNode("div", _hoisted_1$70, [createElementVNode("div", _hoisted_2$51, [createElementVNode("div", {
|
|
67557
67032
|
ref_key: "modal",
|
|
67558
67033
|
ref: modal,
|
|
67559
67034
|
style: normalizeStyle(modalStyle.value),
|
|
@@ -67569,15 +67044,15 @@ var AppModal_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
67569
67044
|
}, [["__scopeId", "data-v-4065aede"]]);
|
|
67570
67045
|
//#endregion
|
|
67571
67046
|
//#region src/components/small/app-alert-modal/AppAlertModal.vue
|
|
67572
|
-
var _hoisted_1$
|
|
67573
|
-
var _hoisted_2$
|
|
67574
|
-
var _hoisted_3$
|
|
67575
|
-
var _hoisted_4$
|
|
67047
|
+
var _hoisted_1$69 = { class: "app-alert-modal rounded-3 shadow p-3" };
|
|
67048
|
+
var _hoisted_2$50 = { class: "mb-2 fw-semibold" };
|
|
67049
|
+
var _hoisted_3$34 = ["innerHTML"];
|
|
67050
|
+
var _hoisted_4$27 = {
|
|
67576
67051
|
key: 1,
|
|
67577
67052
|
class: "mb-0 app-alert-modal-text"
|
|
67578
67053
|
};
|
|
67579
|
-
var _hoisted_5$
|
|
67580
|
-
var _sfc_main$
|
|
67054
|
+
var _hoisted_5$20 = { class: "d-flex justify-content-end gap-2 mt-4" };
|
|
67055
|
+
var _sfc_main$105 = {
|
|
67581
67056
|
__name: "AppAlertModal",
|
|
67582
67057
|
props: {
|
|
67583
67058
|
title: {
|
|
@@ -67652,11 +67127,11 @@ var _sfc_main$104 = {
|
|
|
67652
67127
|
class: "app-modal-content",
|
|
67653
67128
|
onHide: onCancel
|
|
67654
67129
|
}, {
|
|
67655
|
-
default: withCtx(() => [createElementVNode("div", _hoisted_1$
|
|
67130
|
+
default: withCtx(() => [createElementVNode("div", _hoisted_1$69, [createElementVNode("div", null, [createElementVNode("h5", _hoisted_2$50, toDisplayString(__props.title), 1), __props.html ? (openBlock(), createElementBlock("div", {
|
|
67656
67131
|
key: 0,
|
|
67657
67132
|
class: "app-alert-modal-text",
|
|
67658
67133
|
innerHTML: __props.text
|
|
67659
|
-
}, null, 8, _hoisted_3$
|
|
67134
|
+
}, null, 8, _hoisted_3$34)) : (openBlock(), createElementBlock("p", _hoisted_4$27, toDisplayString(__props.text), 1))]), createElementVNode("div", _hoisted_5$20, [__props.showCancelButton ? (openBlock(), createBlock(_sfc_main$3, {
|
|
67660
67135
|
key: 0,
|
|
67661
67136
|
class: "btn app-alert-cancel-btn border",
|
|
67662
67137
|
onClick: onCancel
|
|
@@ -67720,7 +67195,7 @@ var UIUtils = class {
|
|
|
67720
67195
|
container.remove();
|
|
67721
67196
|
}, 300);
|
|
67722
67197
|
};
|
|
67723
|
-
render(h(_sfc_main$
|
|
67198
|
+
render(h(_sfc_main$105, {
|
|
67724
67199
|
...options,
|
|
67725
67200
|
resolve: (value) => {
|
|
67726
67201
|
resolve(value);
|
|
@@ -67732,11 +67207,11 @@ var UIUtils = class {
|
|
|
67732
67207
|
};
|
|
67733
67208
|
//#endregion
|
|
67734
67209
|
//#region src/components/small/app-toast/AppToastCard.vue
|
|
67735
|
-
var _hoisted_1$
|
|
67210
|
+
var _hoisted_1$68 = {
|
|
67736
67211
|
key: 0,
|
|
67737
67212
|
class: "fw-semibold"
|
|
67738
67213
|
};
|
|
67739
|
-
var _sfc_main$
|
|
67214
|
+
var _sfc_main$104 = {
|
|
67740
67215
|
__name: "AppToastCard",
|
|
67741
67216
|
props: {
|
|
67742
67217
|
item: {
|
|
@@ -67780,7 +67255,7 @@ var _sfc_main$103 = {
|
|
|
67780
67255
|
}, [__props.item.component ? (openBlock(), createBlock(resolveDynamicComponent(__props.item.component), mergeProps({ key: 0 }, __props.item.props, {
|
|
67781
67256
|
toast: __props.item,
|
|
67782
67257
|
close
|
|
67783
|
-
}), null, 16, ["toast"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [__props.item.title ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
67258
|
+
}), null, 16, ["toast"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [__props.item.title ? (openBlock(), createElementBlock("div", _hoisted_1$68, toDisplayString(__props.item.title), 1)) : createCommentVNode("", true), __props.item.message ? (openBlock(), createElementBlock("div", mergeProps({
|
|
67784
67259
|
key: 1,
|
|
67785
67260
|
class: { "small mt-1": __props.item.title }
|
|
67786
67261
|
}, isHtml(__props.item.message) ? { innerHTML: __props.item.message } : {}), [!isHtml(__props.item.message) ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createTextVNode(toDisplayString(__props.item.message), 1)], 64)) : createCommentVNode("", true)], 16)) : createCommentVNode("", true)], 64))], 4), __props.item.isClosable ? (openBlock(), createElementBlock("button", {
|
|
@@ -67798,7 +67273,7 @@ var _sfc_main$103 = {
|
|
|
67798
67273
|
};
|
|
67799
67274
|
//#endregion
|
|
67800
67275
|
//#region src/components/small/app-toast/AppToastContainer.vue
|
|
67801
|
-
var _sfc_main$
|
|
67276
|
+
var _sfc_main$103 = {
|
|
67802
67277
|
__name: "AppToastContainer",
|
|
67803
67278
|
setup(__props) {
|
|
67804
67279
|
const { positions, positionStyle, getVisibleToasts, getPositionClasses, getToastClass, getContainerHoverStyle, getCombinedToastStyle, isContentHidden, onMeasure, pauseAll, resumeAll } = useToastLayout();
|
|
@@ -67815,7 +67290,7 @@ var _sfc_main$102 = {
|
|
|
67815
67290
|
onMouseenter: _cache[0] || (_cache[0] = (...args) => unref(pauseAll) && unref(pauseAll)(...args)),
|
|
67816
67291
|
onMouseleave: _cache[1] || (_cache[1] = (...args) => unref(resumeAll) && unref(resumeAll)(...args))
|
|
67817
67292
|
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(getVisibleToasts)(position), (item, index) => {
|
|
67818
|
-
return openBlock(), createBlock(_sfc_main$
|
|
67293
|
+
return openBlock(), createBlock(_sfc_main$104, {
|
|
67819
67294
|
key: item.id,
|
|
67820
67295
|
item,
|
|
67821
67296
|
"toast-class": unref(getToastClass)(item),
|
|
@@ -67866,7 +67341,7 @@ function ensureMounted() {
|
|
|
67866
67341
|
container.id = "app-toast-root";
|
|
67867
67342
|
document.body.appendChild(container);
|
|
67868
67343
|
}
|
|
67869
|
-
render(h(_sfc_main$
|
|
67344
|
+
render(h(_sfc_main$103), container);
|
|
67870
67345
|
mounted = true;
|
|
67871
67346
|
}
|
|
67872
67347
|
function createId() {
|
|
@@ -68279,7 +67754,7 @@ var typeOfTest = (type) => (thing) => typeof thing === type;
|
|
|
68279
67754
|
*
|
|
68280
67755
|
* @returns {boolean} True if value is an Array, otherwise false
|
|
68281
67756
|
*/
|
|
68282
|
-
var { isArray: isArray$
|
|
67757
|
+
var { isArray: isArray$4 } = Array;
|
|
68283
67758
|
/**
|
|
68284
67759
|
* Determine if a value is undefined
|
|
68285
67760
|
*
|
|
@@ -68349,7 +67824,7 @@ var isNumber = typeOfTest("number");
|
|
|
68349
67824
|
*
|
|
68350
67825
|
* @returns {boolean} True if value is an Object, otherwise false
|
|
68351
67826
|
*/
|
|
68352
|
-
var isObject$
|
|
67827
|
+
var isObject$12 = (thing) => thing !== null && typeof thing === "object";
|
|
68353
67828
|
/**
|
|
68354
67829
|
* Determine if a value is a Boolean
|
|
68355
67830
|
*
|
|
@@ -68364,7 +67839,7 @@ var isBoolean = (thing) => thing === true || thing === false;
|
|
|
68364
67839
|
*
|
|
68365
67840
|
* @returns {boolean} True if value is a plain Object, otherwise false
|
|
68366
67841
|
*/
|
|
68367
|
-
var isPlainObject = (val) => {
|
|
67842
|
+
var isPlainObject$1 = (val) => {
|
|
68368
67843
|
if (kindOf(val) !== "object") return false;
|
|
68369
67844
|
const prototype = getPrototypeOf(val);
|
|
68370
67845
|
return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);
|
|
@@ -68408,7 +67883,7 @@ var isFileList = kindOfTest("FileList");
|
|
|
68408
67883
|
*
|
|
68409
67884
|
* @returns {boolean} True if value is a Stream, otherwise false
|
|
68410
67885
|
*/
|
|
68411
|
-
var isStream = (val) => isObject$
|
|
67886
|
+
var isStream = (val) => isObject$12(val) && isFunction(val.pipe);
|
|
68412
67887
|
/**
|
|
68413
67888
|
* Determine if a value is a FormData
|
|
68414
67889
|
*
|
|
@@ -68462,7 +67937,7 @@ function forEach$2(obj, fn, { allOwnKeys = false } = {}) {
|
|
|
68462
67937
|
let i;
|
|
68463
67938
|
let l;
|
|
68464
67939
|
if (typeof obj !== "object") obj = [obj];
|
|
68465
|
-
if (isArray$
|
|
67940
|
+
if (isArray$4(obj)) for (i = 0, l = obj.length; i < l; i++) fn.call(null, obj[i], i, obj);
|
|
68466
67941
|
else {
|
|
68467
67942
|
const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);
|
|
68468
67943
|
const len = keys.length;
|
|
@@ -68512,9 +67987,9 @@ function merge$1() {
|
|
|
68512
67987
|
const result = {};
|
|
68513
67988
|
const assignValue = (val, key) => {
|
|
68514
67989
|
const targetKey = caseless && findKey$1(result, key) || key;
|
|
68515
|
-
if (isPlainObject(result[targetKey]) && isPlainObject(val)) result[targetKey] = merge$1(result[targetKey], val);
|
|
68516
|
-
else if (isPlainObject(val)) result[targetKey] = merge$1({}, val);
|
|
68517
|
-
else if (isArray$
|
|
67990
|
+
if (isPlainObject$1(result[targetKey]) && isPlainObject$1(val)) result[targetKey] = merge$1(result[targetKey], val);
|
|
67991
|
+
else if (isPlainObject$1(val)) result[targetKey] = merge$1({}, val);
|
|
67992
|
+
else if (isArray$4(val)) result[targetKey] = val.slice();
|
|
68518
67993
|
else result[targetKey] = val;
|
|
68519
67994
|
};
|
|
68520
67995
|
for (let i = 0, l = arguments.length; i < l; i++) arguments[i] && forEach$2(arguments[i], assignValue);
|
|
@@ -68618,7 +68093,7 @@ var endsWith = (str, searchString, position) => {
|
|
|
68618
68093
|
*/
|
|
68619
68094
|
var toArray$1 = (thing) => {
|
|
68620
68095
|
if (!thing) return null;
|
|
68621
|
-
if (isArray$
|
|
68096
|
+
if (isArray$4(thing)) return thing;
|
|
68622
68097
|
let i = thing.length;
|
|
68623
68098
|
if (!isNumber(i)) return null;
|
|
68624
68099
|
const arr = new Array(i);
|
|
@@ -68722,7 +68197,7 @@ var toObjectSet = (arrayOrString, delimiter) => {
|
|
|
68722
68197
|
obj[value] = true;
|
|
68723
68198
|
});
|
|
68724
68199
|
};
|
|
68725
|
-
isArray$
|
|
68200
|
+
isArray$4(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));
|
|
68726
68201
|
return obj;
|
|
68727
68202
|
};
|
|
68728
68203
|
var noop$1 = () => {};
|
|
@@ -68742,11 +68217,11 @@ function isSpecCompliantForm(thing) {
|
|
|
68742
68217
|
var toJSONObject = (obj) => {
|
|
68743
68218
|
const stack = new Array(10);
|
|
68744
68219
|
const visit = (source, i) => {
|
|
68745
|
-
if (isObject$
|
|
68220
|
+
if (isObject$12(source)) {
|
|
68746
68221
|
if (stack.indexOf(source) >= 0) return;
|
|
68747
68222
|
if (!("toJSON" in source)) {
|
|
68748
68223
|
stack[i] = source;
|
|
68749
|
-
const target = isArray$
|
|
68224
|
+
const target = isArray$4(source) ? [] : {};
|
|
68750
68225
|
forEach$2(source, (value, key) => {
|
|
68751
68226
|
const reducedValue = visit(value, i + 1);
|
|
68752
68227
|
!isUndefined(reducedValue) && (target[key] = reducedValue);
|
|
@@ -68760,7 +68235,7 @@ var toJSONObject = (obj) => {
|
|
|
68760
68235
|
return visit(obj, 0);
|
|
68761
68236
|
};
|
|
68762
68237
|
var isAsyncFn = kindOfTest("AsyncFunction");
|
|
68763
|
-
var isThenable = (thing) => thing && (isObject$
|
|
68238
|
+
var isThenable = (thing) => thing && (isObject$12(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);
|
|
68764
68239
|
var _setImmediate = ((setImmediateSupported, postMessageSupported) => {
|
|
68765
68240
|
if (setImmediateSupported) return setImmediate;
|
|
68766
68241
|
return postMessageSupported ? ((token, callbacks) => {
|
|
@@ -68774,7 +68249,7 @@ var _setImmediate = ((setImmediateSupported, postMessageSupported) => {
|
|
|
68774
68249
|
})(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);
|
|
68775
68250
|
})(typeof setImmediate === "function", isFunction(_global.postMessage));
|
|
68776
68251
|
var utils_default = {
|
|
68777
|
-
isArray: isArray$
|
|
68252
|
+
isArray: isArray$4,
|
|
68778
68253
|
isArrayBuffer,
|
|
68779
68254
|
isBuffer,
|
|
68780
68255
|
isFormData,
|
|
@@ -68782,8 +68257,8 @@ var utils_default = {
|
|
|
68782
68257
|
isString: isString$1,
|
|
68783
68258
|
isNumber,
|
|
68784
68259
|
isBoolean,
|
|
68785
|
-
isObject: isObject$
|
|
68786
|
-
isPlainObject,
|
|
68260
|
+
isObject: isObject$12,
|
|
68261
|
+
isPlainObject: isPlainObject$1,
|
|
68787
68262
|
isReadableStream,
|
|
68788
68263
|
isRequest,
|
|
68789
68264
|
isResponse,
|
|
@@ -71123,14 +70598,14 @@ var fileStatus = {
|
|
|
71123
70598
|
};
|
|
71124
70599
|
//#endregion
|
|
71125
70600
|
//#region src/components/small/app-file/AppFileItem.vue
|
|
71126
|
-
var _hoisted_1$
|
|
71127
|
-
var _hoisted_2$
|
|
71128
|
-
var _hoisted_3$
|
|
70601
|
+
var _hoisted_1$67 = { class: "flex-center-vertical" };
|
|
70602
|
+
var _hoisted_2$49 = { key: 0 };
|
|
70603
|
+
var _hoisted_3$33 = {
|
|
71129
70604
|
key: 1,
|
|
71130
70605
|
class: "file-action-button flex-1 mr-10"
|
|
71131
70606
|
};
|
|
71132
|
-
var _hoisted_4$
|
|
71133
|
-
var _hoisted_5$
|
|
70607
|
+
var _hoisted_4$26 = { class: "ph-eye" };
|
|
70608
|
+
var _hoisted_5$19 = { class: "ph-download" };
|
|
71134
70609
|
var _hoisted_6$12 = { class: "ph-x-circle" };
|
|
71135
70610
|
var AppFileItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
71136
70611
|
__name: "AppFileItem",
|
|
@@ -71177,23 +70652,23 @@ var AppFileItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
71177
70652
|
});
|
|
71178
70653
|
return (_ctx, _cache) => {
|
|
71179
70654
|
const _directive_tippy = resolveDirective("tippy");
|
|
71180
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
70655
|
+
return openBlock(), createElementBlock("div", _hoisted_1$67, [
|
|
71181
70656
|
createElementVNode("i", {
|
|
71182
70657
|
class: normalizeClass([mediaIconClass.value, "mr-10"]),
|
|
71183
70658
|
style: { "font-size": "22px" }
|
|
71184
70659
|
}, null, 2),
|
|
71185
|
-
__props.file ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
71186
|
-
__props.file ? (openBlock(), createElementBlock("div", _hoisted_3$
|
|
70660
|
+
__props.file ? (openBlock(), createElementBlock("div", _hoisted_2$49, toDisplayString(filename.value), 1)) : createCommentVNode("", true),
|
|
70661
|
+
__props.file ? (openBlock(), createElementBlock("div", _hoisted_3$33, [
|
|
71187
70662
|
props.showPreview ? (openBlock(), createElementBlock("div", {
|
|
71188
70663
|
key: 0,
|
|
71189
70664
|
class: "ml-5 mr-5 action-icon",
|
|
71190
70665
|
onClick: _cache[0] || (_cache[0] = () => emits("preview", __props.file))
|
|
71191
|
-
}, [withDirectives(createElementVNode("i", _hoisted_4$
|
|
70666
|
+
}, [withDirectives(createElementVNode("i", _hoisted_4$26, null, 512), [[_directive_tippy, "Vizualizați fișierul"]])])) : createCommentVNode("", true),
|
|
71192
70667
|
props.showDownload ? (openBlock(), createElementBlock("div", {
|
|
71193
70668
|
key: 1,
|
|
71194
70669
|
class: "ml-5 mr-5 action-icon",
|
|
71195
70670
|
onClick: _cache[1] || (_cache[1] = () => emits("download", __props.file))
|
|
71196
|
-
}, [withDirectives(createElementVNode("i", _hoisted_5$
|
|
70671
|
+
}, [withDirectives(createElementVNode("i", _hoisted_5$19, null, 512), [[_directive_tippy, "Descărcați fișierul"]])])) : createCommentVNode("", true),
|
|
71197
70672
|
!__props.disabled ? (openBlock(), createElementBlock("div", {
|
|
71198
70673
|
key: 2,
|
|
71199
70674
|
class: "ml-5 mr-5 action-icon",
|
|
@@ -71206,17 +70681,17 @@ var AppFileItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
71206
70681
|
}, [["__scopeId", "data-v-307075d7"]]);
|
|
71207
70682
|
//#endregion
|
|
71208
70683
|
//#region src/components/small/app-file/AppFileInput.vue
|
|
71209
|
-
var _hoisted_1$
|
|
71210
|
-
var _hoisted_2$
|
|
70684
|
+
var _hoisted_1$66 = { class: "flex-center-vertical" };
|
|
70685
|
+
var _hoisted_2$48 = {
|
|
71211
70686
|
key: 0,
|
|
71212
70687
|
class: "flex-1"
|
|
71213
70688
|
};
|
|
71214
|
-
var _hoisted_3$
|
|
70689
|
+
var _hoisted_3$32 = {
|
|
71215
70690
|
key: 1,
|
|
71216
70691
|
class: "flex-1"
|
|
71217
70692
|
};
|
|
71218
|
-
var _hoisted_4$
|
|
71219
|
-
var _hoisted_5$
|
|
70693
|
+
var _hoisted_4$25 = { class: "btn-group" };
|
|
70694
|
+
var _hoisted_5$18 = ["accept", "disabled"];
|
|
71220
70695
|
var AppFileInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
71221
70696
|
__name: "AppFileInput",
|
|
71222
70697
|
props: /*@__PURE__*/ mergeModels({
|
|
@@ -71287,7 +70762,7 @@ var AppFileInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
71287
70762
|
isLoading.value = false;
|
|
71288
70763
|
};
|
|
71289
70764
|
return (_ctx, _cache) => {
|
|
71290
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
70765
|
+
return openBlock(), createElementBlock("div", _hoisted_1$66, [!isMediaEmpty.value ? (openBlock(), createElementBlock("div", _hoisted_2$48, [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(import_lodash.isArray)(media.value) ? media.value : [media.value], (file) => {
|
|
71291
70766
|
return openBlock(), createBlock(AppFileItem_default, {
|
|
71292
70767
|
key: file.id,
|
|
71293
70768
|
file,
|
|
@@ -71307,7 +70782,7 @@ var AppFileInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
71307
70782
|
"onDownload",
|
|
71308
70783
|
"onPreview"
|
|
71309
70784
|
]);
|
|
71310
|
-
}), 128))])) : (openBlock(), createElementBlock("div", _hoisted_3$
|
|
70785
|
+
}), 128))])) : (openBlock(), createElementBlock("div", _hoisted_3$32, toDisplayString(__props.disabled ? "Nu a fost ales niciun fișier." : "Alegeți un fișier."), 1)), createElementVNode("div", _hoisted_4$25, [!__props.disabled ? (openBlock(), createElementBlock("div", {
|
|
71311
70786
|
key: 0,
|
|
71312
70787
|
class: "btn-container",
|
|
71313
70788
|
onClick: confirm
|
|
@@ -71319,7 +70794,7 @@ var AppFileInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
71319
70794
|
type: "file",
|
|
71320
70795
|
style: { "display": "none" },
|
|
71321
70796
|
onChange: uploadFile
|
|
71322
|
-
}, null, 40, _hoisted_5$
|
|
70797
|
+
}, null, 40, _hoisted_5$18), _cache[0] || (_cache[0] = createElementVNode("div", { class: "btn btn-primary text-capitalize font-500" }, [createElementVNode("i", {
|
|
71323
70798
|
class: "ph-upload",
|
|
71324
70799
|
style: { "font-size": "16px" }
|
|
71325
70800
|
}), createElementVNode("span", { class: "ml-5" }, "Încarcă")], -1))])) : createCommentVNode("", true), !isMediaEmpty.value && __props.isMultiple ? (openBlock(), createElementBlock("div", {
|
|
@@ -71332,16 +70807,16 @@ var AppFileInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
71332
70807
|
}, [["__scopeId", "data-v-c5bb432b"]]);
|
|
71333
70808
|
//#endregion
|
|
71334
70809
|
//#region src/components/small/app-overlay/AppOverlay.vue
|
|
71335
|
-
var _sfc_main$
|
|
71336
|
-
var _hoisted_1$
|
|
70810
|
+
var _sfc_main$100 = {};
|
|
70811
|
+
var _hoisted_1$65 = { class: "blockUI blockOverlay" };
|
|
71337
70812
|
function _sfc_render$2(_ctx, _cache) {
|
|
71338
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
70813
|
+
return openBlock(), createElementBlock("div", _hoisted_1$65, [renderSlot(_ctx.$slots, "default", {}, void 0, true)]);
|
|
71339
70814
|
}
|
|
71340
|
-
var AppOverlay_default = /*#__PURE__*/ _plugin_vue_export_helper_default(_sfc_main$
|
|
70815
|
+
var AppOverlay_default = /*#__PURE__*/ _plugin_vue_export_helper_default(_sfc_main$100, [["render", _sfc_render$2], ["__scopeId", "data-v-07e2c47c"]]);
|
|
71341
70816
|
//#endregion
|
|
71342
70817
|
//#region src/components/small/app-loading-overlay/AppLoadingOverlay.vue
|
|
71343
|
-
var _hoisted_1$
|
|
71344
|
-
var _hoisted_2$
|
|
70818
|
+
var _hoisted_1$64 = { class: "w-100 h-100 flex-center" };
|
|
70819
|
+
var _hoisted_2$47 = {
|
|
71345
70820
|
key: 0,
|
|
71346
70821
|
class: "icon-spinner11 spinner"
|
|
71347
70822
|
};
|
|
@@ -71354,7 +70829,7 @@ var _sfc_main$26 = {
|
|
|
71354
70829
|
setup(__props) {
|
|
71355
70830
|
return (_ctx, _cache) => {
|
|
71356
70831
|
return openBlock(), createBlock(AppOverlay_default, null, {
|
|
71357
|
-
default: withCtx(() => [createElementVNode("div", _hoisted_1$
|
|
70832
|
+
default: withCtx(() => [createElementVNode("div", _hoisted_1$64, [__props.showIcon ? (openBlock(), createElementBlock("i", _hoisted_2$47)) : createCommentVNode("", true)])]),
|
|
71358
70833
|
_: 1
|
|
71359
70834
|
});
|
|
71360
70835
|
};
|
|
@@ -71362,7 +70837,7 @@ var _sfc_main$26 = {
|
|
|
71362
70837
|
};
|
|
71363
70838
|
//#endregion
|
|
71364
70839
|
//#region src/components/small/app-file/AppFile.vue
|
|
71365
|
-
var _hoisted_1$
|
|
70840
|
+
var _hoisted_1$63 = { class: "form-control" };
|
|
71366
70841
|
var _sfc_main$14 = {
|
|
71367
70842
|
__name: "AppFile",
|
|
71368
70843
|
props: /*@__PURE__*/ mergeModels({
|
|
@@ -71447,7 +70922,7 @@ var _sfc_main$14 = {
|
|
|
71447
70922
|
};
|
|
71448
70923
|
return (_ctx, _cache) => {
|
|
71449
70924
|
return openBlock(), createBlock(AppFormElement_default, normalizeProps(guardReactiveProps(unref(formElementProps))), {
|
|
71450
|
-
default: withCtx(() => [__props.isLoading ? (openBlock(), createBlock(_sfc_main$26, { key: 0 })) : createCommentVNode("", true), createElementVNode("div", _hoisted_1$
|
|
70925
|
+
default: withCtx(() => [__props.isLoading ? (openBlock(), createBlock(_sfc_main$26, { key: 0 })) : createCommentVNode("", true), createElementVNode("div", _hoisted_1$63, [createVNode(_sfc_main$107, { onFilesDropped: addFiles }, {
|
|
71451
70926
|
default: withCtx(({ dropZoneActive }) => [createVNode(AppFileInput_default, {
|
|
71452
70927
|
modelValue: files.value,
|
|
71453
70928
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => files.value = $event),
|
|
@@ -71477,14 +70952,14 @@ var _sfc_main$14 = {
|
|
|
71477
70952
|
};
|
|
71478
70953
|
//#endregion
|
|
71479
70954
|
//#region src/components/small/app-form-repeater/AppFormRepeater.vue
|
|
71480
|
-
var _hoisted_1$
|
|
71481
|
-
var _hoisted_2$
|
|
71482
|
-
var _hoisted_3$
|
|
70955
|
+
var _hoisted_1$62 = { class: "display-flex align-items-center" };
|
|
70956
|
+
var _hoisted_2$46 = { class: "display-flex pl-10" };
|
|
70957
|
+
var _hoisted_3$31 = {
|
|
71483
70958
|
key: 1,
|
|
71484
70959
|
class: "card list app-form-repeater-list'"
|
|
71485
70960
|
};
|
|
71486
|
-
var _hoisted_4$
|
|
71487
|
-
var _hoisted_5$
|
|
70961
|
+
var _hoisted_4$24 = { class: "d-flex py-2 px-1" };
|
|
70962
|
+
var _hoisted_5$17 = { class: "flex-center mx-2" };
|
|
71488
70963
|
var _hoisted_6$11 = { class: "px-1" };
|
|
71489
70964
|
var _hoisted_7$6 = { class: "flex-grow-1" };
|
|
71490
70965
|
var _hoisted_8$5 = { class: "display-flex align-items-center" };
|
|
@@ -71599,11 +71074,11 @@ var _sfc_main$19 = {
|
|
|
71599
71074
|
type: "list",
|
|
71600
71075
|
onIsCollapsedChanged: (isCollapsed) => handleIsCollapsedChange(index, isCollapsed)
|
|
71601
71076
|
}, {
|
|
71602
|
-
title: withCtx(() => [createElementVNode("div", _hoisted_1$
|
|
71077
|
+
title: withCtx(() => [createElementVNode("div", _hoisted_1$62, [!__props.disabled && __props.isDraggable ? (openBlock(), createBlock(unref(IconMenu2), {
|
|
71603
71078
|
key: 0,
|
|
71604
71079
|
size: 22,
|
|
71605
71080
|
class: "drag-handle"
|
|
71606
|
-
})) : createCommentVNode("", true), createElementVNode("div", _hoisted_2$
|
|
71081
|
+
})) : createCommentVNode("", true), createElementVNode("div", _hoisted_2$46, [renderSlot(_ctx.$slots, "title", normalizeProps(guardReactiveProps({
|
|
71607
71082
|
element,
|
|
71608
71083
|
index,
|
|
71609
71084
|
removeItemAtIndex
|
|
@@ -71633,8 +71108,8 @@ var _sfc_main$19 = {
|
|
|
71633
71108
|
"can-collapse",
|
|
71634
71109
|
"is-collapsed",
|
|
71635
71110
|
"onIsCollapsedChanged"
|
|
71636
|
-
])) : (openBlock(), createElementBlock("div", _hoisted_3$
|
|
71637
|
-
createElementVNode("div", _hoisted_5$
|
|
71111
|
+
])) : (openBlock(), createElementBlock("div", _hoisted_3$31, [createElementVNode("div", _hoisted_4$24, [
|
|
71112
|
+
createElementVNode("div", _hoisted_5$17, [!__props.disabled && __props.isDraggable ? (openBlock(), createBlock(unref(IconMenu2), {
|
|
71638
71113
|
key: 0,
|
|
71639
71114
|
size: 22,
|
|
71640
71115
|
class: "drag-handle"
|
|
@@ -71689,6 +71164,214 @@ var _sfc_main$19 = {
|
|
|
71689
71164
|
}
|
|
71690
71165
|
};
|
|
71691
71166
|
//#endregion
|
|
71167
|
+
//#region src/components/small/app-grid-picker/AppGridPicker.vue
|
|
71168
|
+
var _hoisted_1$61 = { class: "w-100 position-relative cursor-pointer" };
|
|
71169
|
+
var _hoisted_2$45 = ["placeholder"];
|
|
71170
|
+
var _hoisted_3$30 = {
|
|
71171
|
+
key: 1,
|
|
71172
|
+
class: "flex-1 input-placeholder"
|
|
71173
|
+
};
|
|
71174
|
+
var _hoisted_4$23 = {
|
|
71175
|
+
key: 2,
|
|
71176
|
+
class: "form-control-feedback-icon clear-button"
|
|
71177
|
+
};
|
|
71178
|
+
var _hoisted_5$16 = ["onClick"];
|
|
71179
|
+
var AppGridPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
71180
|
+
__name: "AppGridPicker",
|
|
71181
|
+
props: /*@__PURE__*/ mergeModels({
|
|
71182
|
+
options: {
|
|
71183
|
+
type: Array,
|
|
71184
|
+
required: true
|
|
71185
|
+
},
|
|
71186
|
+
displayBy: {
|
|
71187
|
+
type: [String],
|
|
71188
|
+
default: "name"
|
|
71189
|
+
},
|
|
71190
|
+
openDirection: {
|
|
71191
|
+
type: String,
|
|
71192
|
+
default: "bottom"
|
|
71193
|
+
},
|
|
71194
|
+
columns: {
|
|
71195
|
+
type: Number,
|
|
71196
|
+
default: 4
|
|
71197
|
+
},
|
|
71198
|
+
width: {
|
|
71199
|
+
type: Number,
|
|
71200
|
+
default: 200
|
|
71201
|
+
},
|
|
71202
|
+
height: {
|
|
71203
|
+
type: Number,
|
|
71204
|
+
default: 500
|
|
71205
|
+
},
|
|
71206
|
+
showRemoveButtons: {
|
|
71207
|
+
type: Boolean,
|
|
71208
|
+
default: true
|
|
71209
|
+
},
|
|
71210
|
+
isTypeable: {
|
|
71211
|
+
type: Boolean,
|
|
71212
|
+
default: true
|
|
71213
|
+
},
|
|
71214
|
+
search: { type: Function },
|
|
71215
|
+
isItemSelected: {},
|
|
71216
|
+
...appFormElementProps_default
|
|
71217
|
+
}, {
|
|
71218
|
+
"modelValue": {},
|
|
71219
|
+
"modelModifiers": {}
|
|
71220
|
+
}),
|
|
71221
|
+
emits: /*@__PURE__*/ mergeModels(["close", "search"], ["update:modelValue"]),
|
|
71222
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
71223
|
+
const modelValue = useModel(__props, "modelValue");
|
|
71224
|
+
const props = __props;
|
|
71225
|
+
const emits = __emit;
|
|
71226
|
+
ref("100%");
|
|
71227
|
+
const showGrid = ref(false);
|
|
71228
|
+
const input = ref(null);
|
|
71229
|
+
const grid = ref(null);
|
|
71230
|
+
const searchValue = ref(null);
|
|
71231
|
+
const searchField = ref(null);
|
|
71232
|
+
const filteredOptions = ref((0, import_lodash.cloneDeep)(props.options));
|
|
71233
|
+
const { formElementProps } = useAppFormElement(props);
|
|
71234
|
+
const heightComputed = computed(() => {
|
|
71235
|
+
const rows = Math.ceil(filteredOptions.value.length / props.columns);
|
|
71236
|
+
return (0, import_lodash.min)([props.width / props.columns * rows, props.height]);
|
|
71237
|
+
});
|
|
71238
|
+
computed(() => {
|
|
71239
|
+
return {
|
|
71240
|
+
width: props.width + "px",
|
|
71241
|
+
height: heightComputed.value + "px"
|
|
71242
|
+
};
|
|
71243
|
+
});
|
|
71244
|
+
const cellStyle = computed(() => {
|
|
71245
|
+
const width = props.width / props.columns;
|
|
71246
|
+
return {
|
|
71247
|
+
width: width + "px",
|
|
71248
|
+
height: width + "px"
|
|
71249
|
+
};
|
|
71250
|
+
});
|
|
71251
|
+
const open = () => {
|
|
71252
|
+
if (props.disabled) return;
|
|
71253
|
+
showGrid.value = true;
|
|
71254
|
+
if (props.isTypeable) nextTick(() => searchField.value.focus());
|
|
71255
|
+
};
|
|
71256
|
+
const close = () => {
|
|
71257
|
+
showGrid.value = false;
|
|
71258
|
+
emits("close");
|
|
71259
|
+
};
|
|
71260
|
+
const onSelectValue = (element, index) => {
|
|
71261
|
+
modelValue.value = element;
|
|
71262
|
+
close();
|
|
71263
|
+
};
|
|
71264
|
+
const getDisplayValue = (value) => {
|
|
71265
|
+
if ((0, import_lodash.isObject)(value)) return (0, import_lodash.get)(value, props.displayBy, null);
|
|
71266
|
+
return value;
|
|
71267
|
+
};
|
|
71268
|
+
const getActiveClass = (element) => {
|
|
71269
|
+
return { active: (0, import_lodash.isEqual)(element, modelValue.value) };
|
|
71270
|
+
};
|
|
71271
|
+
const onDeleteInput = () => {
|
|
71272
|
+
modelValue.value = null;
|
|
71273
|
+
};
|
|
71274
|
+
useClickOutside({
|
|
71275
|
+
target: grid,
|
|
71276
|
+
handler: () => {
|
|
71277
|
+
if (!showGrid.value) return;
|
|
71278
|
+
close();
|
|
71279
|
+
},
|
|
71280
|
+
isOpen: showGrid,
|
|
71281
|
+
ignore: [input, searchField]
|
|
71282
|
+
});
|
|
71283
|
+
const inputClass = computed(() => ({
|
|
71284
|
+
"w-100 form-control": true,
|
|
71285
|
+
disabled: props.disabled
|
|
71286
|
+
}));
|
|
71287
|
+
const getFilteredOptions = async (search = "") => {
|
|
71288
|
+
if (props.search) return await props.search(props.options, search);
|
|
71289
|
+
if (!search || search.length === 0) return props.options;
|
|
71290
|
+
return props.options.filter((item) => {
|
|
71291
|
+
let itemName = (0, import_lodash.isObject)(item) ? (0, import_lodash.get)(item, props.displayBy, "") : item;
|
|
71292
|
+
itemName = String(itemName).toLowerCase();
|
|
71293
|
+
return itemName.includes(search.toLowerCase());
|
|
71294
|
+
});
|
|
71295
|
+
};
|
|
71296
|
+
const onSearch = async (text) => {
|
|
71297
|
+
filteredOptions.value = await getFilteredOptions(text);
|
|
71298
|
+
emits("searchValue", text);
|
|
71299
|
+
searchValue.value = text;
|
|
71300
|
+
};
|
|
71301
|
+
const onKeyEnter = () => {
|
|
71302
|
+
modelValue.value = (0, import_lodash.head)(filteredOptions.value);
|
|
71303
|
+
close();
|
|
71304
|
+
};
|
|
71305
|
+
watch(searchValue, async (newValue) => {
|
|
71306
|
+
await onSearch(newValue);
|
|
71307
|
+
});
|
|
71308
|
+
watch(() => props.options, async (newValue) => {
|
|
71309
|
+
filteredOptions.value = newValue;
|
|
71310
|
+
});
|
|
71311
|
+
__expose({
|
|
71312
|
+
open,
|
|
71313
|
+
close,
|
|
71314
|
+
props
|
|
71315
|
+
});
|
|
71316
|
+
return (_ctx, _cache) => {
|
|
71317
|
+
const _directive_tippy = resolveDirective("tippy");
|
|
71318
|
+
return openBlock(), createBlock(AppFormElement_default, normalizeProps(guardReactiveProps(unref(formElementProps))), {
|
|
71319
|
+
default: withCtx(() => [createElementVNode("div", _hoisted_1$61, [createElementVNode("div", {
|
|
71320
|
+
ref_key: "input",
|
|
71321
|
+
ref: input,
|
|
71322
|
+
class: "d-flex"
|
|
71323
|
+
}, [
|
|
71324
|
+
renderSlot(_ctx.$slots, "icon", {}, void 0, true),
|
|
71325
|
+
__props.isTypeable && showGrid.value ? withDirectives((openBlock(), createElementBlock("input", {
|
|
71326
|
+
key: 0,
|
|
71327
|
+
ref_key: "searchField",
|
|
71328
|
+
ref: searchField,
|
|
71329
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchValue.value = $event),
|
|
71330
|
+
class: "mb-0 no-hover flex-1 form-control",
|
|
71331
|
+
placeholder: props.placeholder,
|
|
71332
|
+
onKeyup: withKeys(onKeyEnter, ["enter"])
|
|
71333
|
+
}, null, 40, _hoisted_2$45)), [[vModelText, searchValue.value]]) : (openBlock(), createElementBlock("div", {
|
|
71334
|
+
key: 1,
|
|
71335
|
+
class: normalizeClass(inputClass.value),
|
|
71336
|
+
onClick: withModifiers(open, ["stop"])
|
|
71337
|
+
}, [renderSlot(_ctx.$slots, "default", { item: modelValue.value }, () => [modelValue.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createTextVNode(toDisplayString(getDisplayValue(modelValue.value)), 1)], 64)) : (openBlock(), createElementBlock("span", _hoisted_3$30, toDisplayString(props.placeholder), 1))], true)], 2)),
|
|
71338
|
+
modelValue.value && __props.showRemoveButtons ? (openBlock(), createElementBlock("div", _hoisted_4$23, [withDirectives(createElementVNode("i", {
|
|
71339
|
+
class: "ph-x-circle app-cross-icon",
|
|
71340
|
+
onClick: withModifiers(onDeleteInput, ["stop"])
|
|
71341
|
+
}, null, 512), [[_directive_tippy, "Ștergeți opțiunile selectate"]])])) : createCommentVNode("", true)
|
|
71342
|
+
], 512), input.value ? (openBlock(), createBlock(_sfc_main$112, {
|
|
71343
|
+
key: 0,
|
|
71344
|
+
anchor: input.value,
|
|
71345
|
+
"use-teleport": true,
|
|
71346
|
+
"is-open": showGrid.value,
|
|
71347
|
+
width: props.width
|
|
71348
|
+
}, {
|
|
71349
|
+
default: withCtx(() => [withDirectives(createElementVNode("div", {
|
|
71350
|
+
ref_key: "grid",
|
|
71351
|
+
ref: grid,
|
|
71352
|
+
class: "app-grid-dropdown overflow-auto scrollbar-hidden"
|
|
71353
|
+
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(filteredOptions.value, (element, index) => {
|
|
71354
|
+
return openBlock(), createElementBlock("div", {
|
|
71355
|
+
key: index,
|
|
71356
|
+
class: "cell",
|
|
71357
|
+
onClick: ($event) => onSelectValue(element, index)
|
|
71358
|
+
}, [createElementVNode("span", {
|
|
71359
|
+
class: normalizeClass(getActiveClass(element)),
|
|
71360
|
+
style: normalizeStyle(cellStyle.value)
|
|
71361
|
+
}, [renderSlot(_ctx.$slots, "default", { item: element }, () => [createTextVNode(toDisplayString(getDisplayValue(element)), 1)], true)], 6)], 8, _hoisted_5$16);
|
|
71362
|
+
}), 128))], 512), [[vShow, showGrid.value]])]),
|
|
71363
|
+
_: 3
|
|
71364
|
+
}, 8, [
|
|
71365
|
+
"anchor",
|
|
71366
|
+
"is-open",
|
|
71367
|
+
"width"
|
|
71368
|
+
])) : createCommentVNode("", true)])]),
|
|
71369
|
+
_: 3
|
|
71370
|
+
}, 16);
|
|
71371
|
+
};
|
|
71372
|
+
}
|
|
71373
|
+
}, [["__scopeId", "data-v-12dbbc29"]]);
|
|
71374
|
+
//#endregion
|
|
71692
71375
|
//#region node_modules/lodash/isArray.js
|
|
71693
71376
|
var require_isArray = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
71694
71377
|
module.exports = Array.isArray;
|
|
@@ -125272,7 +124955,7 @@ var _sfc_main$62 = {
|
|
|
125272
124955
|
return renderSlot(_ctx.$slots, slotName, {
|
|
125273
124956
|
key: slotName,
|
|
125274
124957
|
file,
|
|
125275
|
-
|
|
124958
|
+
context: unref(fileUploadContext)
|
|
125276
124959
|
});
|
|
125277
124960
|
}), 128))
|
|
125278
124961
|
])]),
|
|
@@ -125282,7 +124965,7 @@ var _sfc_main$62 = {
|
|
|
125282
124965
|
action,
|
|
125283
124966
|
file,
|
|
125284
124967
|
index,
|
|
125285
|
-
|
|
124968
|
+
context: unref(fileUploadContext)
|
|
125286
124969
|
}, () => [createVNode(_component_app_button, {
|
|
125287
124970
|
disabled: action.name === "removed" && __props.disabled,
|
|
125288
124971
|
class: "btn-transparent",
|
|
@@ -125495,7 +125178,7 @@ var _sfc_main$15 = {
|
|
|
125495
125178
|
accept: unref(fileUpload).normalizedAccept.value,
|
|
125496
125179
|
disabled: _ctx.disabled,
|
|
125497
125180
|
onChange: _cache[0] || (_cache[0] = (...args) => unref(fileUpload).onFileSelect && unref(fileUpload).onFileSelect(...args))
|
|
125498
|
-
}, null, 40, _hoisted_2$3), createVNode(_sfc_main$
|
|
125181
|
+
}, null, 40, _hoisted_2$3), createVNode(_sfc_main$107, {
|
|
125499
125182
|
disabled: _ctx.disabled,
|
|
125500
125183
|
onFilesDropped: unref(fileUpload).onFileSelect
|
|
125501
125184
|
}, {
|
|
@@ -125730,6 +125413,266 @@ function useFormDirty(config) {
|
|
|
125730
125413
|
};
|
|
125731
125414
|
}
|
|
125732
125415
|
//#endregion
|
|
125416
|
+
//#region src/utils/DateUtils.js
|
|
125417
|
+
var DateUtils = class DateUtils {
|
|
125418
|
+
static getDayNames() {
|
|
125419
|
+
return {
|
|
125420
|
+
[Constants_default.LANGUAGE_EN]: [
|
|
125421
|
+
"Sun",
|
|
125422
|
+
"Mon",
|
|
125423
|
+
"Tue",
|
|
125424
|
+
"Wed",
|
|
125425
|
+
"Thu",
|
|
125426
|
+
"Fri",
|
|
125427
|
+
"Sat"
|
|
125428
|
+
],
|
|
125429
|
+
[Constants_default.LANGUAGE_RO]: [
|
|
125430
|
+
"Dum",
|
|
125431
|
+
"Lun",
|
|
125432
|
+
"Mar",
|
|
125433
|
+
"Mie",
|
|
125434
|
+
"Joi",
|
|
125435
|
+
"Vin",
|
|
125436
|
+
"Sam"
|
|
125437
|
+
]
|
|
125438
|
+
};
|
|
125439
|
+
}
|
|
125440
|
+
static getMonthNames() {
|
|
125441
|
+
return {
|
|
125442
|
+
[Constants_default.LANGUAGE_EN]: [
|
|
125443
|
+
"Jan",
|
|
125444
|
+
"Feb",
|
|
125445
|
+
"Mar",
|
|
125446
|
+
"Apr",
|
|
125447
|
+
"May",
|
|
125448
|
+
"Jun",
|
|
125449
|
+
"Jul",
|
|
125450
|
+
"Aug",
|
|
125451
|
+
"Sep",
|
|
125452
|
+
"Oct",
|
|
125453
|
+
"Nov",
|
|
125454
|
+
"Dec"
|
|
125455
|
+
],
|
|
125456
|
+
[Constants_default.LANGUAGE_RO]: [
|
|
125457
|
+
"Ian",
|
|
125458
|
+
"Feb",
|
|
125459
|
+
"Mar",
|
|
125460
|
+
"Apr",
|
|
125461
|
+
"Mai",
|
|
125462
|
+
"Iun",
|
|
125463
|
+
"Iul",
|
|
125464
|
+
"Aug",
|
|
125465
|
+
"Sep",
|
|
125466
|
+
"Oct",
|
|
125467
|
+
"Noi",
|
|
125468
|
+
"Dec"
|
|
125469
|
+
]
|
|
125470
|
+
};
|
|
125471
|
+
}
|
|
125472
|
+
static commonFormats = [
|
|
125473
|
+
"yyyy-MM-dd HH:mm:ss",
|
|
125474
|
+
"yyyy-MM-dd HH:mm",
|
|
125475
|
+
"yyyy-MM-dd",
|
|
125476
|
+
"MM/dd/yyyy HH:mm:ss",
|
|
125477
|
+
"MM/dd/yyyy HH:mm",
|
|
125478
|
+
"MM/dd/yyyy",
|
|
125479
|
+
"dd/MM/yyyy HH:mm:ss",
|
|
125480
|
+
"dd/MM/yyyy HH:mm",
|
|
125481
|
+
"dd/MM/yyyy",
|
|
125482
|
+
"dd.MM.yyyy HH:mm:ss",
|
|
125483
|
+
"dd.MM.yyyy HH:mm",
|
|
125484
|
+
"dd.MM.yyyy",
|
|
125485
|
+
"yyyy/MM/dd HH:mm:ss",
|
|
125486
|
+
"yyyy/MM/dd HH:mm",
|
|
125487
|
+
"yyyy/MM/dd",
|
|
125488
|
+
"dd-MM-yyyy HH:mm:ss",
|
|
125489
|
+
"dd-MM-yyyy HH:mm",
|
|
125490
|
+
"dd-MM-yyyy",
|
|
125491
|
+
"yyyy-MM-dd h:mm:ss a",
|
|
125492
|
+
"yyyy-MM-dd h:mm a",
|
|
125493
|
+
"MM/dd/yyyy h:mm:ss a",
|
|
125494
|
+
"MM/dd/yyyy h:mm a",
|
|
125495
|
+
"dd/MM/yyyy h:mm:ss a",
|
|
125496
|
+
"dd/MM/yyyy h:mm a"
|
|
125497
|
+
];
|
|
125498
|
+
static getCalendarComponentLanguageData(language) {
|
|
125499
|
+
return {
|
|
125500
|
+
days: DateUtils.getDayNames()[language],
|
|
125501
|
+
months: DateUtils.getMonthNames()[language],
|
|
125502
|
+
placeholder: {},
|
|
125503
|
+
formatLocale: { firstDayOfWeek: this.getCalendarComponentFirstDatOfWeek(language) }
|
|
125504
|
+
};
|
|
125505
|
+
}
|
|
125506
|
+
static getCalendarComponentFirstDatOfWeek(language) {
|
|
125507
|
+
if (language === Constants_default.LANGUAGE_EN) return Constants_default.CALENDAR_FIRST_DAY_OF_WEEK_EN;
|
|
125508
|
+
else return Constants_default.CALENDAR_FIRST_DAY_OF_WEEK_RO;
|
|
125509
|
+
}
|
|
125510
|
+
static get FORMAT_ROMANIAN_DATE() {
|
|
125511
|
+
return "dd.MM.yyyy";
|
|
125512
|
+
}
|
|
125513
|
+
static get FORMAT_ROMANIAN_DATE_HOUR() {
|
|
125514
|
+
return "dd.MM.yyyy HH";
|
|
125515
|
+
}
|
|
125516
|
+
static get FORMAT_ROMANIAN_DATE_HOUR_MINUTE() {
|
|
125517
|
+
return "dd.MM.yyyy HH:mm";
|
|
125518
|
+
}
|
|
125519
|
+
static get FORMAT_ROMANIAN_DATE_HOUR_MINUTE_SECOND() {
|
|
125520
|
+
return "dd.MM.yyyy HH:mm:ss";
|
|
125521
|
+
}
|
|
125522
|
+
static get FORMAT_ENGLISH_DATE() {
|
|
125523
|
+
return "yyyy-MM-dd";
|
|
125524
|
+
}
|
|
125525
|
+
static get FORMAT_ENGLISH_DATE_HOUR() {
|
|
125526
|
+
return "yyyy-MM-dd HH";
|
|
125527
|
+
}
|
|
125528
|
+
static get FORMAT_ENGLISH_DATE_HOUR_MINUTE() {
|
|
125529
|
+
return "yyyy-MM-dd HH:mm";
|
|
125530
|
+
}
|
|
125531
|
+
static get FORMAT_ENGLISH_DATE_HOUR_MINUTE_SECOND() {
|
|
125532
|
+
return "yyyy-MM-dd HH:mm:ss";
|
|
125533
|
+
}
|
|
125534
|
+
static stringToDate(dateString, format = null) {
|
|
125535
|
+
if (!dateString) return null;
|
|
125536
|
+
if (format) return parse$2(dateString, format, /* @__PURE__ */ new Date());
|
|
125537
|
+
for (const format of this.commonFormats) try {
|
|
125538
|
+
const result = parse$2(dateString, format, /* @__PURE__ */ new Date());
|
|
125539
|
+
if (isValid$1(result)) return result;
|
|
125540
|
+
} catch (error) {
|
|
125541
|
+
continue;
|
|
125542
|
+
}
|
|
125543
|
+
const nativeParsed = new Date(dateString);
|
|
125544
|
+
return isValid$1(nativeParsed) ? nativeParsed : null;
|
|
125545
|
+
}
|
|
125546
|
+
static stringFromTo(date, formatFrom = this.FORMAT_ENGLISH_DATE, formatTo = this.FORMAT_ROMANIAN_DATE) {
|
|
125547
|
+
if (!date) return null;
|
|
125548
|
+
return format$1(parse$2(date, formatFrom, /* @__PURE__ */ new Date()), formatTo);
|
|
125549
|
+
}
|
|
125550
|
+
static dateToString(date, dateFormat = this.FORMAT_ROMANIAN_DATE) {
|
|
125551
|
+
if (!date) return null;
|
|
125552
|
+
return format$1(date, dateFormat);
|
|
125553
|
+
}
|
|
125554
|
+
/**
|
|
125555
|
+
* @deprecated since version 1.9.7
|
|
125556
|
+
*/
|
|
125557
|
+
static dateToStringWithTime(date, dateFormat = "dd-MM-yyyy HH:mm:ss") {
|
|
125558
|
+
return format$1(date, dateFormat);
|
|
125559
|
+
}
|
|
125560
|
+
/**
|
|
125561
|
+
* @deprecated since version 1.9.7
|
|
125562
|
+
*/
|
|
125563
|
+
static dateFromTo(date, formatFrom = "yyyy-MM-dd", formatTo = "dd-MM-yyyy") {
|
|
125564
|
+
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
125565
|
+
if (!date) return null;
|
|
125566
|
+
return format$1(parse$2(date, formatFrom, /* @__PURE__ */ new Date()), formatTo);
|
|
125567
|
+
}
|
|
125568
|
+
/**
|
|
125569
|
+
* @deprecated since version 1.9.7
|
|
125570
|
+
*/
|
|
125571
|
+
static dateFromToWithTime(date, formatFrom = "yyyy-MM-dd HH:mm:ss", formatTo = "dd-MM-yyyy HH:mm:ss") {
|
|
125572
|
+
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
125573
|
+
if (!date) return null;
|
|
125574
|
+
return format$1(parse$2(date, formatFrom, /* @__PURE__ */ new Date()), formatTo);
|
|
125575
|
+
}
|
|
125576
|
+
/**
|
|
125577
|
+
* @deprecated since version 1.9.7
|
|
125578
|
+
*/
|
|
125579
|
+
static stringFromToWithTime(date, formatFrom = "yyyy-MM-dd HH:mm:ss", formatTo = "dd-MM-yyyy HH:mm:ss") {
|
|
125580
|
+
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
125581
|
+
if (!date) return null;
|
|
125582
|
+
return format$1(parse$2(date, formatFrom, /* @__PURE__ */ new Date()), formatTo);
|
|
125583
|
+
}
|
|
125584
|
+
/**
|
|
125585
|
+
* @deprecated since version 1.9.7
|
|
125586
|
+
*/
|
|
125587
|
+
static romanianToEnglishDate(dateString) {
|
|
125588
|
+
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
125589
|
+
return this.stringFromTo(dateString, "dd-MM-yyyy", "yyyy-MM-dd");
|
|
125590
|
+
}
|
|
125591
|
+
/**
|
|
125592
|
+
* @deprecated since version 1.9.7
|
|
125593
|
+
*/
|
|
125594
|
+
static romanianToEnglishDateHour(dateString) {
|
|
125595
|
+
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
125596
|
+
return this.stringFromTo(dateString, "dd-MM-yyyy HH", "yyyy-MM-dd HH:00");
|
|
125597
|
+
}
|
|
125598
|
+
/**
|
|
125599
|
+
* @deprecated since version 1.9.7
|
|
125600
|
+
*/
|
|
125601
|
+
static romanianToEnglishDateHourMinute(dateString) {
|
|
125602
|
+
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
125603
|
+
return this.stringFromTo(dateString, "dd-MM-yyyy HH:mm", "yyyy-MM-dd HH:mm");
|
|
125604
|
+
}
|
|
125605
|
+
/**
|
|
125606
|
+
* @deprecated since version 1.9.7
|
|
125607
|
+
*/
|
|
125608
|
+
static romanianToEnglishDateHourMinuteSeconds(dateString) {
|
|
125609
|
+
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
125610
|
+
return this.stringFromTo(dateString, "dd-MM-yyyy HH:mm:ss", "yyyy-MM-dd HH:mm:ss");
|
|
125611
|
+
}
|
|
125612
|
+
/**
|
|
125613
|
+
* @deprecated since version 1.9.7
|
|
125614
|
+
*/
|
|
125615
|
+
static englishToRomanianDate(dateString) {
|
|
125616
|
+
console.warn("Warning! Deprecated function from 01.03.2023 called!");
|
|
125617
|
+
return this.stringFromTo(dateString, "yyyy-MM-dd", "dd-MM-yyyy");
|
|
125618
|
+
}
|
|
125619
|
+
/**
|
|
125620
|
+
* @deprecated since version 2.0
|
|
125621
|
+
*/
|
|
125622
|
+
static englishToRomanianDateHour(dateString) {
|
|
125623
|
+
console.warn("Warning! Depricated function from 01.03.2023 called!");
|
|
125624
|
+
return this.stringFromTo(dateString, "yyyy-MM-dd HH:00", "dd-MM-yyyy HH");
|
|
125625
|
+
}
|
|
125626
|
+
/**
|
|
125627
|
+
* @deprecated since version 2.0
|
|
125628
|
+
*/
|
|
125629
|
+
static englishToRomanianDateHourMinute(dateString) {
|
|
125630
|
+
return this.stringFromTo(dateString, "yyyy-MM-dd HH:mm", "dd-MM-yyyy HH:mm");
|
|
125631
|
+
}
|
|
125632
|
+
/**
|
|
125633
|
+
* @deprecated since version 2.0
|
|
125634
|
+
*/
|
|
125635
|
+
static englishToRomanianDateHourMinuteSeconds(dateString) {
|
|
125636
|
+
return this.stringFromTo(dateString, "yyyy-MM-dd HH:mm:ss", "dd-MM-yyyy HH:mm:ss");
|
|
125637
|
+
}
|
|
125638
|
+
static displayInterval(start, end, dateFormat = this.FORMAT_ROMANIAN_DATE) {
|
|
125639
|
+
if (!start && !end) return `Nedeterminata`;
|
|
125640
|
+
if (start && end) return `${DateUtils.dateToString(start, dateFormat)} - ${DateUtils.dateToString(end, dateFormat)}`;
|
|
125641
|
+
if (start) return `>= ${DateUtils.dateToString(start, dateFormat)}`;
|
|
125642
|
+
if (end) return `<= ${DateUtils.dateToString(end, dateFormat)}`;
|
|
125643
|
+
}
|
|
125644
|
+
static isStringDate = (dateString) => {
|
|
125645
|
+
return /^\d{2,4}[-./]\d{1,2}[-./]\d{1,4}([ T]\d{2}:\d{2}(:\d{2}(\.\d+)?(Z|[+-]\d{2}:?\d{2})?)?)?$/.test(dateString);
|
|
125646
|
+
};
|
|
125647
|
+
static stringToDateRecursive = (item, deep = false) => {
|
|
125648
|
+
if (!item) return item;
|
|
125649
|
+
if ((0, import_lodash.isArray)(item)) return item.map((el) => DateUtils.stringToDateRecursive(el, deep));
|
|
125650
|
+
if ((0, import_lodash.isPlainObject)(item)) {
|
|
125651
|
+
for (const key in item) if (Object.prototype.hasOwnProperty.call(item, key)) item[key] = deep ? DateUtils.stringToDateRecursive(item[key], deep) : DateUtils.stringToDateRecursive(item[key]);
|
|
125652
|
+
return item;
|
|
125653
|
+
}
|
|
125654
|
+
if (typeof item === "string") return DateUtils.isStringDate(item) ? DateUtils.stringToDate(item) : item;
|
|
125655
|
+
return item;
|
|
125656
|
+
};
|
|
125657
|
+
static isOlderThan = (timestamp, minutes) => {
|
|
125658
|
+
return Date.now() - timestamp > minutes * 60 * 1e3;
|
|
125659
|
+
};
|
|
125660
|
+
static nextMonth({ month, year }) {
|
|
125661
|
+
const d = new Date(+year, +month);
|
|
125662
|
+
return {
|
|
125663
|
+
month: String(d.getMonth() + 1),
|
|
125664
|
+
year: String(d.getFullYear())
|
|
125665
|
+
};
|
|
125666
|
+
}
|
|
125667
|
+
static previousMonth({ month, year }) {
|
|
125668
|
+
const d = new Date(+year, +month - 2);
|
|
125669
|
+
return {
|
|
125670
|
+
month: String(d.getMonth() + 1),
|
|
125671
|
+
year: String(d.getFullYear())
|
|
125672
|
+
};
|
|
125673
|
+
}
|
|
125674
|
+
};
|
|
125675
|
+
//#endregion
|
|
125733
125676
|
//#region src/components/small/app-form-draft-toast/AppFormDraftToast.vue
|
|
125734
125677
|
var _hoisted_1$4 = { class: "app-form-draft-toast flex-center-vertical" };
|
|
125735
125678
|
var _hoisted_2$1 = { class: "mr-20" };
|
|
@@ -137544,7 +137487,9 @@ var components_exports = /* @__PURE__ */ __exportAll({
|
|
|
137544
137487
|
AppDatePickerDayOfWeek: () => _sfc_main$8,
|
|
137545
137488
|
AppDatePickerRange: () => _sfc_main$9,
|
|
137546
137489
|
AppDateRange: () => _sfc_main$9,
|
|
137490
|
+
AppDateTime: () => _sfc_main$10,
|
|
137547
137491
|
AppDateTimePicker: () => _sfc_main$10,
|
|
137492
|
+
AppDayOfWeek: () => _sfc_main$8,
|
|
137548
137493
|
AppDrawer: () => AppDrawer_default,
|
|
137549
137494
|
AppDropdown: () => _sfc_main$11,
|
|
137550
137495
|
AppDualListMagic: () => _sfc_main$12,
|
|
@@ -137608,12 +137553,11 @@ var components_exports = /* @__PURE__ */ __exportAll({
|
|
|
137608
137553
|
AppTeleport: () => _sfc_main$51,
|
|
137609
137554
|
AppTeleportTarget: () => _sfc_main$52,
|
|
137610
137555
|
AppTextArea: () => AppTextArea_default,
|
|
137611
|
-
|
|
137556
|
+
AppTime: () => AppTime_default,
|
|
137612
137557
|
AppToggleButton: () => _sfc_main$53,
|
|
137613
137558
|
AppToolbar: () => _sfc_main$54,
|
|
137614
137559
|
AppToolbarSubheader: () => AppToolbarSubheader_default,
|
|
137615
137560
|
AppTree: () => _sfc_main$55,
|
|
137616
|
-
DayOfWeek: () => _sfc_main$8,
|
|
137617
137561
|
VueDatePicker: () => Nr
|
|
137618
137562
|
});
|
|
137619
137563
|
//#endregion
|
|
@@ -137903,9 +137847,10 @@ function useTableModel({ props, emits, tableContext, formContext = null, model,
|
|
|
137903
137847
|
}
|
|
137904
137848
|
//#endregion
|
|
137905
137849
|
//#region src/index.js
|
|
137850
|
+
var components = { ...components_exports };
|
|
137906
137851
|
var plugin = { install(Vue, config) {
|
|
137907
|
-
for (const prop in
|
|
137908
|
-
const component =
|
|
137852
|
+
for (const prop in components) if (components.hasOwnProperty(prop)) {
|
|
137853
|
+
const component = components[prop];
|
|
137909
137854
|
Vue.component(prop, component);
|
|
137910
137855
|
}
|
|
137911
137856
|
if (!Vue.directive("tippy")) Vue.use(plugin$1);
|
|
@@ -137915,6 +137860,6 @@ var plugin = { install(Vue, config) {
|
|
|
137915
137860
|
config?.mediaType && setMediaType(config.mediaType);
|
|
137916
137861
|
} };
|
|
137917
137862
|
//#endregion
|
|
137918
|
-
export { _sfc_main as AppBadge, _sfc_main$1 as AppBoard, _sfc_main$2 as AppBreadcrumbs, _sfc_main$3 as AppButton, _sfc_main$4 as AppButtonGroup, _sfc_main$5 as AppCard, _sfc_main$6 as AppCarousel, _sfc_main$7 as AppCheckbox, AppChild_default as AppChild, AppColorPicker_default as AppColorPicker, AppDate_default as AppDate, AppDate_default as AppDatePicker, _sfc_main$8 as AppDatePickerDayOfWeek, _sfc_main$8 as
|
|
137863
|
+
export { _sfc_main as AppBadge, _sfc_main$1 as AppBoard, _sfc_main$2 as AppBreadcrumbs, _sfc_main$3 as AppButton, _sfc_main$4 as AppButtonGroup, _sfc_main$5 as AppCard, _sfc_main$6 as AppCarousel, _sfc_main$7 as AppCheckbox, AppChild_default as AppChild, AppColorPicker_default as AppColorPicker, AppDate_default as AppDate, AppDate_default as AppDatePicker, _sfc_main$8 as AppDatePickerDayOfWeek, _sfc_main$8 as AppDayOfWeek, _sfc_main$9 as AppDatePickerRange, _sfc_main$9 as AppDateRange, _sfc_main$10 as AppDateTime, _sfc_main$10 as AppDateTimePicker, AppDrawer_default as AppDrawer, _sfc_main$11 as AppDropdown, _sfc_main$12 as AppDualListMagic, _sfc_main$13 as AppEllipsisText, _sfc_main$14 as AppFile, AppFileInput_default as AppFileInput, _sfc_main$15 as AppFileNew, _sfc_main$16 as AppFilePreview, AppFooter_default as AppFooter, _sfc_main$17 as AppFormDynamic, AppFormElement_default as AppFormElement, _sfc_main$18 as AppFormModal, _sfc_main$19 as AppFormRepeater, _sfc_main$20 as AppFormWizard, AppGridPicker_default as AppGridPicker, _sfc_main$21 as AppHtml, _sfc_main$22 as AppIcon, _sfc_main$23 as AppIframe, AppInput_default as AppInput, _sfc_main$24 as AppLink, _sfc_main$25 as AppLoading, AppLoadingModal_default as AppLoadingModal, _sfc_main$26 as AppLoadingOverlay, _sfc_main$27 as AppMenu, AppModal_default as AppModal, _sfc_main$28 as AppModalCard, AppNumberInput_default as AppNumberInput, AppOverlay_default as AppOverlay, _sfc_main$29 as AppPage, _sfc_main$30 as AppPagination, AppPhone_default as AppPhone, _sfc_main$31 as AppPlaceholderCard, _sfc_main$32 as AppPlaceholderHeading, _sfc_main$33 as AppPlaceholderImage, _sfc_main$34 as AppPlaceholderText, _sfc_main$35 as AppPlaceholderTitle, AppProgressBar_default as AppProgressBar, AppProgressBarOverlay_default as AppProgressBarOverlay, AppRadioButton_default as AppRadioButton, AppRemovableTag_default as AppRemovableTag, AppScrollToBottom_default as AppScrollToBottom, AppScrollToTop_default as AppScrollToTop, _sfc_main$36 as AppScrollTopAndBottom, _sfc_main$37 as AppSelect, _sfc_main$38 as AppSelectBoolean, _sfc_main$39 as AppSelectIcon, _sfc_main$40 as AppSelectNew, _sfc_main$41 as AppSidebar, _sfc_main$42 as AppSidebarHeader, _sfc_main$43 as AppSkeleton, _sfc_main$44 as AppSkeletonGroup, AppSliderInput_default as AppSliderInput, _sfc_main$45 as AppSummary, _sfc_main$46 as AppTable, _sfc_main$47 as AppTableFilter, AppTableFilterDrawer_default as AppTableFilterDrawer, _sfc_main$48 as AppTableMagic, _sfc_main$49 as AppTabs, _sfc_main$50 as AppTabsBoolean, AppTag_default as AppTag, _sfc_main$51 as AppTeleport, _sfc_main$52 as AppTeleportTarget, AppTextArea_default as AppTextArea, AppTime_default as AppTime, _sfc_main$53 as AppToggleButton, _sfc_main$54 as AppToolbar, AppToolbarSubheader_default as AppToolbarSubheader, _sfc_main$55 as AppTree, BaseRepository, DateUtils, ResponseUtils, TableUtils, ToastUtils, UIUtils, Nr as VueDatePicker, VueUtils_exports as VueUtils, appFormElementProps_default as appFormElementProps, useAppSelectCore_default as appSelectProps, useAppSelectCore_default as sharedProps, bindOneWay, bindTwoWay, booleanOption, plugin as default, fetchBuilder, fetchBuilderNew, flattenSchemaFields, generateComputedChildren, generateComputedParent, getBinding, getBindingImmutableFor, getFormBuilder, getFormElementName, getFormElementNameKey, getGUID, getStyleFromObject, hasValue, isEqualLoose, isNumeric, joinList, makeArray, mergeObjectWithoutOverwrite, resolveValue, resolveValueSync, sleep, toPathString, urlToBooleanOption, useAppFormElement, useClickOutside, useForm, useFormOld_default as useFormFunky, useFormValidation, useModelWatch, useSelectOld as useSelect, selectOldProps as useSelectProps, useTable, useTableFilters, useTableModel, useTableModelTableButton, useTableModelTopButton, veeBinds };
|
|
137919
137864
|
|
|
137920
137865
|
//# sourceMappingURL=funky-ui-kit.esm.js.map
|