ll-plus 2.4.5 → 2.4.8
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/es/component.mjs +3 -0
- package/es/component.mjs.map +1 -1
- package/es/components/advanced-filtering/index.d.ts +34 -16
- package/es/components/advanced-filtering/src/advanced-filtering.d.ts +1 -1
- package/es/components/advanced-filtering/src/advanced-filtering.vue.d.ts +17 -8
- package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +18 -8
- package/es/components/avatar/index.d.ts +66 -31
- package/es/components/avatar/src/avatar.d.ts +33 -30
- package/es/components/avatar/src/avatar.vue.d.ts +66 -31
- package/es/components/cropper/index.d.ts +1485 -0
- package/es/components/cropper/src/cropper-image.d.ts +51 -0
- package/es/components/cropper/src/cropper-image.vue.d.ts +93 -0
- package/es/components/cropper/src/cropper-modal.vue.d.ts +1391 -0
- package/es/components/empty/index.d.ts +4 -0
- package/es/components/empty/src/empty.d.ts +1 -0
- package/es/components/empty/src/empty.vue.d.ts +4 -0
- package/es/components/form/index.d.ts +24 -8
- package/es/components/form/src/components/form-component.vue.d.ts +9 -2
- package/es/components/form/src/config/form-component.d.ts +4 -1
- package/es/components/form/src/config/form.d.ts +7 -1
- package/es/components/form/src/form.vue.d.ts +15 -6
- package/es/components/index.d.ts +1 -0
- package/es/components/key-value/index.d.ts +90 -36
- package/es/components/key-value/src/components/key-value-item.vue.d.ts +30 -12
- package/es/components/key-value/src/key-value.vue.d.ts +90 -36
- package/es/components/select-group/index.d.ts +5 -4
- package/es/components/select-group/src/select-group.d.ts +7 -1
- package/es/components/select-group/src/select-group.vue.d.ts +5 -4
- package/es/index.mjs +3 -1
- package/es/index.mjs.map +1 -1
- package/es/node_modules/.pnpm/@vueuse_shared@10.9.0_vue@3.4.25/node_modules/@vueuse/shared/index.mjs +1576 -0
- package/es/node_modules/.pnpm/@vueuse_shared@10.9.0_vue@3.4.25/node_modules/@vueuse/shared/index.mjs.map +1 -0
- package/es/node_modules/.pnpm/vue-demi@0.14.7_vue@3.4.25/node_modules/vue-demi/lib/index.mjs +30 -0
- package/es/node_modules/.pnpm/vue-demi@0.14.7_vue@3.4.25/node_modules/vue-demi/lib/index.mjs.map +1 -0
- package/es/packages/components/advanced-filtering/src/advanced-filtering.mjs +4 -1
- package/es/packages/components/advanced-filtering/src/advanced-filtering.mjs.map +1 -1
- package/es/packages/components/advanced-filtering/src/advanced-filtering.vue2.mjs +3 -4
- package/es/packages/components/advanced-filtering/src/advanced-filtering.vue2.mjs.map +1 -1
- package/es/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs +9 -18
- package/es/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs.map +1 -1
- package/es/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.mjs +1 -1
- package/es/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.mjs.map +1 -1
- package/es/packages/components/avatar/src/avatar.mjs +39 -13
- package/es/packages/components/avatar/src/avatar.mjs.map +1 -1
- package/es/packages/components/avatar/src/avatar.vue2.mjs +40 -127
- package/es/packages/components/avatar/src/avatar.vue2.mjs.map +1 -1
- package/es/packages/components/checkbox/index.mjs.map +1 -1
- package/es/packages/components/cropper/index.mjs +12 -0
- package/es/packages/components/cropper/index.mjs.map +1 -0
- package/es/packages/components/cropper/src/cropper-image.mjs +77 -0
- package/es/packages/components/cropper/src/cropper-image.mjs.map +1 -0
- package/es/packages/components/cropper/src/cropper-image.vue.mjs +8 -0
- package/es/packages/components/cropper/src/cropper-image.vue.mjs.map +1 -0
- package/es/packages/components/cropper/src/cropper-image.vue2.mjs +137 -0
- package/es/packages/components/cropper/src/cropper-image.vue2.mjs.map +1 -0
- package/es/packages/components/cropper/src/cropper-modal.vue.mjs +8 -0
- package/es/packages/components/cropper/src/cropper-modal.vue.mjs.map +1 -0
- package/es/packages/components/cropper/src/cropper-modal.vue2.mjs +407 -0
- package/es/packages/components/cropper/src/cropper-modal.vue2.mjs.map +1 -0
- package/es/packages/components/empty/src/empty.mjs +7 -0
- package/es/packages/components/empty/src/empty.mjs.map +1 -1
- package/es/packages/components/empty/src/empty.vue2.mjs +4 -4
- package/es/packages/components/empty/src/empty.vue2.mjs.map +1 -1
- package/es/packages/components/form/index.mjs +1 -1
- package/es/packages/components/form/src/components/form-component.vue2.mjs +14 -9
- package/es/packages/components/form/src/components/form-component.vue2.mjs.map +1 -1
- package/es/packages/components/form/src/config/form-component.mjs +4 -1
- package/es/packages/components/form/src/config/form-component.mjs.map +1 -1
- package/es/packages/components/form/src/config/form.mjs +1 -1
- package/es/packages/components/form/src/config/form.mjs.map +1 -1
- package/es/packages/components/form/src/config/index.mjs +1 -1
- package/es/packages/components/form/src/form.vue2.mjs +12 -15
- package/es/packages/components/form/src/form.vue2.mjs.map +1 -1
- package/es/packages/components/index.mjs +3 -1
- package/es/packages/components/index.mjs.map +1 -1
- package/es/packages/components/number-range/src/number-range.vue2.mjs +6 -5
- package/es/packages/components/number-range/src/number-range.vue2.mjs.map +1 -1
- package/es/packages/components/rich-text-editor/src/rich-text-editor.vue2.mjs +31 -22
- package/es/packages/components/rich-text-editor/src/rich-text-editor.vue2.mjs.map +1 -1
- package/es/packages/components/select-group/src/select-group.mjs +6 -0
- package/es/packages/components/select-group/src/select-group.mjs.map +1 -1
- package/es/packages/components/select-group/src/select-group.vue2.mjs +6 -6
- package/es/packages/components/select-group/src/select-group.vue2.mjs.map +1 -1
- package/es/packages/utils/file.mjs +13 -1
- package/es/packages/utils/file.mjs.map +1 -1
- package/es/packages/utils/index.mjs +1 -1
- package/es/utils/file.d.ts +4 -0
- package/global.d.ts +2 -0
- package/index.full.js +3981 -656
- package/index.full.min.js +41 -28
- package/index.full.min.js.map +1 -1
- package/index.full.min.mjs +40 -27
- package/index.full.min.mjs.map +1 -1
- package/index.full.mjs +3975 -658
- package/lib/component.js +92 -89
- package/lib/component.js.map +1 -1
- package/lib/components/advanced-filtering/index.d.ts +34 -16
- package/lib/components/advanced-filtering/src/advanced-filtering.d.ts +1 -1
- package/lib/components/advanced-filtering/src/advanced-filtering.vue.d.ts +17 -8
- package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +18 -8
- package/lib/components/avatar/index.d.ts +66 -31
- package/lib/components/avatar/src/avatar.d.ts +33 -30
- package/lib/components/avatar/src/avatar.vue.d.ts +66 -31
- package/lib/components/cropper/index.d.ts +1485 -0
- package/lib/components/cropper/src/cropper-image.d.ts +51 -0
- package/lib/components/cropper/src/cropper-image.vue.d.ts +93 -0
- package/lib/components/cropper/src/cropper-modal.vue.d.ts +1391 -0
- package/lib/components/empty/index.d.ts +4 -0
- package/lib/components/empty/src/empty.d.ts +1 -0
- package/lib/components/empty/src/empty.vue.d.ts +4 -0
- package/lib/components/form/index.d.ts +24 -8
- package/lib/components/form/src/components/form-component.vue.d.ts +9 -2
- package/lib/components/form/src/config/form-component.d.ts +4 -1
- package/lib/components/form/src/config/form.d.ts +7 -1
- package/lib/components/form/src/form.vue.d.ts +15 -6
- package/lib/components/index.d.ts +1 -0
- package/lib/components/key-value/index.d.ts +90 -36
- package/lib/components/key-value/src/components/key-value-item.vue.d.ts +30 -12
- package/lib/components/key-value/src/key-value.vue.d.ts +90 -36
- package/lib/components/select-group/index.d.ts +5 -4
- package/lib/components/select-group/src/select-group.d.ts +7 -1
- package/lib/components/select-group/src/select-group.vue.d.ts +5 -4
- package/lib/index.js +101 -91
- package/lib/index.js.map +1 -1
- package/lib/node_modules/.pnpm/@vueuse_shared@10.9.0_vue@3.4.25/node_modules/@vueuse/shared/index.js +1696 -0
- package/lib/node_modules/.pnpm/@vueuse_shared@10.9.0_vue@3.4.25/node_modules/@vueuse/shared/index.js.map +1 -0
- package/lib/node_modules/.pnpm/vue-demi@0.14.7_vue@3.4.25/node_modules/vue-demi/lib/index.js +61 -0
- package/lib/node_modules/.pnpm/vue-demi@0.14.7_vue@3.4.25/node_modules/vue-demi/lib/index.js.map +1 -0
- package/lib/packages/components/advanced-filtering/src/advanced-filtering.js +4 -1
- package/lib/packages/components/advanced-filtering/src/advanced-filtering.js.map +1 -1
- package/lib/packages/components/advanced-filtering/src/advanced-filtering.vue2.js +2 -3
- package/lib/packages/components/advanced-filtering/src/advanced-filtering.vue2.js.map +1 -1
- package/lib/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js +9 -18
- package/lib/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js.map +1 -1
- package/lib/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.js +1 -1
- package/lib/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.js.map +1 -1
- package/lib/packages/components/avatar/src/avatar.js +39 -13
- package/lib/packages/components/avatar/src/avatar.js.map +1 -1
- package/lib/packages/components/avatar/src/avatar.vue2.js +39 -126
- package/lib/packages/components/avatar/src/avatar.vue2.js.map +1 -1
- package/lib/packages/components/checkbox/index.js.map +1 -1
- package/lib/packages/components/cropper/index.js +20 -0
- package/lib/packages/components/cropper/index.js.map +1 -0
- package/lib/packages/components/cropper/src/cropper-image.js +83 -0
- package/lib/packages/components/cropper/src/cropper-image.js.map +1 -0
- package/lib/packages/components/cropper/src/cropper-image.vue.js +12 -0
- package/lib/packages/components/cropper/src/cropper-image.vue.js.map +1 -0
- package/lib/packages/components/cropper/src/cropper-image.vue2.js +141 -0
- package/lib/packages/components/cropper/src/cropper-image.vue2.js.map +1 -0
- package/lib/packages/components/cropper/src/cropper-modal.vue.js +12 -0
- package/lib/packages/components/cropper/src/cropper-modal.vue.js.map +1 -0
- package/lib/packages/components/cropper/src/cropper-modal.vue2.js +411 -0
- package/lib/packages/components/cropper/src/cropper-modal.vue2.js.map +1 -0
- package/lib/packages/components/empty/src/empty.js +7 -0
- package/lib/packages/components/empty/src/empty.js.map +1 -1
- package/lib/packages/components/empty/src/empty.vue2.js +3 -3
- package/lib/packages/components/empty/src/empty.vue2.js.map +1 -1
- package/lib/packages/components/form/index.js +1 -0
- package/lib/packages/components/form/index.js.map +1 -1
- package/lib/packages/components/form/src/components/form-component.vue2.js +12 -7
- package/lib/packages/components/form/src/components/form-component.vue2.js.map +1 -1
- package/lib/packages/components/form/src/config/form-component.js +4 -0
- package/lib/packages/components/form/src/config/form-component.js.map +1 -1
- package/lib/packages/components/form/src/config/form.js +1 -1
- package/lib/packages/components/form/src/config/form.js.map +1 -1
- package/lib/packages/components/form/src/config/index.js +1 -0
- package/lib/packages/components/form/src/config/index.js.map +1 -1
- package/lib/packages/components/form/src/form.vue2.js +12 -15
- package/lib/packages/components/form/src/form.vue2.js.map +1 -1
- package/lib/packages/components/index.js +101 -91
- package/lib/packages/components/index.js.map +1 -1
- package/lib/packages/components/number-range/src/number-range.vue2.js +6 -5
- package/lib/packages/components/number-range/src/number-range.vue2.js.map +1 -1
- package/lib/packages/components/rich-text-editor/src/rich-text-editor.vue2.js +30 -21
- package/lib/packages/components/rich-text-editor/src/rich-text-editor.vue2.js.map +1 -1
- package/lib/packages/components/select-group/src/select-group.js +6 -0
- package/lib/packages/components/select-group/src/select-group.js.map +1 -1
- package/lib/packages/components/select-group/src/select-group.vue2.js +6 -6
- package/lib/packages/components/select-group/src/select-group.vue2.js.map +1 -1
- package/lib/packages/utils/file.js +13 -0
- package/lib/packages/utils/file.js.map +1 -1
- package/lib/packages/utils/index.js +1 -0
- package/lib/packages/utils/index.js.map +1 -1
- package/lib/utils/file.d.ts +4 -0
- package/package.json +2 -1
- package/theme-chalk/css/avatar.css +1 -1
- package/theme-chalk/css/cropper.css +13 -0
- package/theme-chalk/css/index.css +9 -1
- package/theme-chalk/css/rich-text-editor.css +1 -1
- package/types/packages/components/advanced-filtering/index.d.ts +34 -16
- package/types/packages/components/advanced-filtering/src/advanced-filtering.d.ts +1 -1
- package/types/packages/components/advanced-filtering/src/advanced-filtering.vue.d.ts +17 -8
- package/types/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +18 -8
- package/types/packages/components/avatar/index.d.ts +66 -31
- package/types/packages/components/avatar/src/avatar.d.ts +33 -30
- package/types/packages/components/avatar/src/avatar.vue.d.ts +66 -31
- package/types/packages/components/cropper/index.d.ts +1485 -0
- package/types/packages/components/cropper/src/cropper-image.d.ts +51 -0
- package/types/packages/components/cropper/src/cropper-image.vue.d.ts +93 -0
- package/types/packages/components/cropper/src/cropper-modal.vue.d.ts +1391 -0
- package/types/packages/components/empty/index.d.ts +4 -0
- package/types/packages/components/empty/src/empty.d.ts +1 -0
- package/types/packages/components/empty/src/empty.vue.d.ts +4 -0
- package/types/packages/components/form/index.d.ts +24 -8
- package/types/packages/components/form/src/components/form-component.vue.d.ts +9 -2
- package/types/packages/components/form/src/config/form-component.d.ts +4 -1
- package/types/packages/components/form/src/config/form.d.ts +7 -1
- package/types/packages/components/form/src/form.vue.d.ts +15 -6
- package/types/packages/components/index.d.ts +1 -0
- package/types/packages/components/key-value/index.d.ts +90 -36
- package/types/packages/components/key-value/src/components/key-value-item.vue.d.ts +30 -12
- package/types/packages/components/key-value/src/key-value.vue.d.ts +90 -36
- package/types/packages/components/select-group/index.d.ts +5 -4
- package/types/packages/components/select-group/src/select-group.d.ts +7 -1
- package/types/packages/components/select-group/src/select-group.vue.d.ts +5 -4
- package/types/packages/utils/file.d.ts +4 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../../../node_modules/.pnpm/@vueuse+shared@10.9.0_vue@3.4.25/node_modules/@vueuse/shared/index.mjs"],"sourcesContent":["import { shallowRef, watchEffect, readonly, ref, watch, customRef, getCurrentScope, onScopeDispose, effectScope, getCurrentInstance, provide, inject, isVue3, version, isRef, unref, computed, reactive, toRefs as toRefs$1, toRef as toRef$1, isVue2, set as set$1, onBeforeMount, nextTick, onBeforeUnmount, onMounted, onUnmounted, isReactive } from 'vue-demi';\n\nfunction computedEager(fn, options) {\n var _a;\n const result = shallowRef();\n watchEffect(() => {\n result.value = fn();\n }, {\n ...options,\n flush: (_a = options == null ? void 0 : options.flush) != null ? _a : \"sync\"\n });\n return readonly(result);\n}\n\nfunction computedWithControl(source, fn) {\n let v = void 0;\n let track;\n let trigger;\n const dirty = ref(true);\n const update = () => {\n dirty.value = true;\n trigger();\n };\n watch(source, update, { flush: \"sync\" });\n const get = typeof fn === \"function\" ? fn : fn.get;\n const set = typeof fn === \"function\" ? void 0 : fn.set;\n const result = customRef((_track, _trigger) => {\n track = _track;\n trigger = _trigger;\n return {\n get() {\n if (dirty.value) {\n v = get();\n dirty.value = false;\n }\n track();\n return v;\n },\n set(v2) {\n set == null ? void 0 : set(v2);\n }\n };\n });\n if (Object.isExtensible(result))\n result.trigger = update;\n return result;\n}\n\nfunction tryOnScopeDispose(fn) {\n if (getCurrentScope()) {\n onScopeDispose(fn);\n return true;\n }\n return false;\n}\n\nfunction createEventHook() {\n const fns = /* @__PURE__ */ new Set();\n const off = (fn) => {\n fns.delete(fn);\n };\n const on = (fn) => {\n fns.add(fn);\n const offFn = () => off(fn);\n tryOnScopeDispose(offFn);\n return {\n off: offFn\n };\n };\n const trigger = (...args) => {\n return Promise.all(Array.from(fns).map((fn) => fn(...args)));\n };\n return {\n on,\n off,\n trigger\n };\n}\n\nfunction createGlobalState(stateFactory) {\n let initialized = false;\n let state;\n const scope = effectScope(true);\n return (...args) => {\n if (!initialized) {\n state = scope.run(() => stateFactory(...args));\n initialized = true;\n }\n return state;\n };\n}\n\nconst localProvidedStateMap = /* @__PURE__ */ new WeakMap();\n\nconst provideLocal = (key, value) => {\n var _a;\n const instance = (_a = getCurrentInstance()) == null ? void 0 : _a.proxy;\n if (instance == null)\n throw new Error(\"provideLocal must be called in setup\");\n if (!localProvidedStateMap.has(instance))\n localProvidedStateMap.set(instance, /* @__PURE__ */ Object.create(null));\n const localProvidedState = localProvidedStateMap.get(instance);\n localProvidedState[key] = value;\n provide(key, value);\n};\n\nconst injectLocal = (...args) => {\n var _a;\n const key = args[0];\n const instance = (_a = getCurrentInstance()) == null ? void 0 : _a.proxy;\n if (instance == null)\n throw new Error(\"injectLocal must be called in setup\");\n if (localProvidedStateMap.has(instance) && key in localProvidedStateMap.get(instance))\n return localProvidedStateMap.get(instance)[key];\n return inject(...args);\n};\n\nfunction createInjectionState(composable, options) {\n const key = (options == null ? void 0 : options.injectionKey) || Symbol(composable.name || \"InjectionState\");\n const useProvidingState = (...args) => {\n const state = composable(...args);\n provideLocal(key, state);\n return state;\n };\n const useInjectedState = () => injectLocal(key);\n return [useProvidingState, useInjectedState];\n}\n\nfunction createSharedComposable(composable) {\n let subscribers = 0;\n let state;\n let scope;\n const dispose = () => {\n subscribers -= 1;\n if (scope && subscribers <= 0) {\n scope.stop();\n state = void 0;\n scope = void 0;\n }\n };\n return (...args) => {\n subscribers += 1;\n if (!state) {\n scope = effectScope(true);\n state = scope.run(() => composable(...args));\n }\n tryOnScopeDispose(dispose);\n return state;\n };\n}\n\nfunction extendRef(ref, extend, { enumerable = false, unwrap = true } = {}) {\n if (!isVue3 && !version.startsWith(\"2.7.\")) {\n if (process.env.NODE_ENV !== \"production\")\n throw new Error(\"[VueUse] extendRef only works in Vue 2.7 or above.\");\n return;\n }\n for (const [key, value] of Object.entries(extend)) {\n if (key === \"value\")\n continue;\n if (isRef(value) && unwrap) {\n Object.defineProperty(ref, key, {\n get() {\n return value.value;\n },\n set(v) {\n value.value = v;\n },\n enumerable\n });\n } else {\n Object.defineProperty(ref, key, { value, enumerable });\n }\n }\n return ref;\n}\n\nfunction get(obj, key) {\n if (key == null)\n return unref(obj);\n return unref(obj)[key];\n}\n\nfunction isDefined(v) {\n return unref(v) != null;\n}\n\nfunction makeDestructurable(obj, arr) {\n if (typeof Symbol !== \"undefined\") {\n const clone = { ...obj };\n Object.defineProperty(clone, Symbol.iterator, {\n enumerable: false,\n value() {\n let index = 0;\n return {\n next: () => ({\n value: arr[index++],\n done: index > arr.length\n })\n };\n }\n });\n return clone;\n } else {\n return Object.assign([...arr], obj);\n }\n}\n\nfunction toValue(r) {\n return typeof r === \"function\" ? r() : unref(r);\n}\nconst resolveUnref = toValue;\n\nfunction reactify(fn, options) {\n const unrefFn = (options == null ? void 0 : options.computedGetter) === false ? unref : toValue;\n return function(...args) {\n return computed(() => fn.apply(this, args.map((i) => unrefFn(i))));\n };\n}\n\nfunction reactifyObject(obj, optionsOrKeys = {}) {\n let keys = [];\n let options;\n if (Array.isArray(optionsOrKeys)) {\n keys = optionsOrKeys;\n } else {\n options = optionsOrKeys;\n const { includeOwnProperties = true } = optionsOrKeys;\n keys.push(...Object.keys(obj));\n if (includeOwnProperties)\n keys.push(...Object.getOwnPropertyNames(obj));\n }\n return Object.fromEntries(\n keys.map((key) => {\n const value = obj[key];\n return [\n key,\n typeof value === \"function\" ? reactify(value.bind(obj), options) : value\n ];\n })\n );\n}\n\nfunction toReactive(objectRef) {\n if (!isRef(objectRef))\n return reactive(objectRef);\n const proxy = new Proxy({}, {\n get(_, p, receiver) {\n return unref(Reflect.get(objectRef.value, p, receiver));\n },\n set(_, p, value) {\n if (isRef(objectRef.value[p]) && !isRef(value))\n objectRef.value[p].value = value;\n else\n objectRef.value[p] = value;\n return true;\n },\n deleteProperty(_, p) {\n return Reflect.deleteProperty(objectRef.value, p);\n },\n has(_, p) {\n return Reflect.has(objectRef.value, p);\n },\n ownKeys() {\n return Object.keys(objectRef.value);\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true\n };\n }\n });\n return reactive(proxy);\n}\n\nfunction reactiveComputed(fn) {\n return toReactive(computed(fn));\n}\n\nfunction reactiveOmit(obj, ...keys) {\n const flatKeys = keys.flat();\n const predicate = flatKeys[0];\n return reactiveComputed(() => typeof predicate === \"function\" ? Object.fromEntries(Object.entries(toRefs$1(obj)).filter(([k, v]) => !predicate(toValue(v), k))) : Object.fromEntries(Object.entries(toRefs$1(obj)).filter((e) => !flatKeys.includes(e[0]))));\n}\n\nconst isClient = typeof window !== \"undefined\" && typeof document !== \"undefined\";\nconst isWorker = typeof WorkerGlobalScope !== \"undefined\" && globalThis instanceof WorkerGlobalScope;\nconst isDef = (val) => typeof val !== \"undefined\";\nconst notNullish = (val) => val != null;\nconst assert = (condition, ...infos) => {\n if (!condition)\n console.warn(...infos);\n};\nconst toString = Object.prototype.toString;\nconst isObject = (val) => toString.call(val) === \"[object Object]\";\nconst now = () => Date.now();\nconst timestamp = () => +Date.now();\nconst clamp = (n, min, max) => Math.min(max, Math.max(min, n));\nconst noop = () => {\n};\nconst rand = (min, max) => {\n min = Math.ceil(min);\n max = Math.floor(max);\n return Math.floor(Math.random() * (max - min + 1)) + min;\n};\nconst hasOwn = (val, key) => Object.prototype.hasOwnProperty.call(val, key);\nconst isIOS = /* @__PURE__ */ getIsIOS();\nfunction getIsIOS() {\n var _a, _b;\n return isClient && ((_a = window == null ? void 0 : window.navigator) == null ? void 0 : _a.userAgent) && (/iP(ad|hone|od)/.test(window.navigator.userAgent) || ((_b = window == null ? void 0 : window.navigator) == null ? void 0 : _b.maxTouchPoints) > 2 && /iPad|Macintosh/.test(window == null ? void 0 : window.navigator.userAgent));\n}\n\nfunction createFilterWrapper(filter, fn) {\n function wrapper(...args) {\n return new Promise((resolve, reject) => {\n Promise.resolve(filter(() => fn.apply(this, args), { fn, thisArg: this, args })).then(resolve).catch(reject);\n });\n }\n return wrapper;\n}\nconst bypassFilter = (invoke) => {\n return invoke();\n};\nfunction debounceFilter(ms, options = {}) {\n let timer;\n let maxTimer;\n let lastRejector = noop;\n const _clearTimeout = (timer2) => {\n clearTimeout(timer2);\n lastRejector();\n lastRejector = noop;\n };\n const filter = (invoke) => {\n const duration = toValue(ms);\n const maxDuration = toValue(options.maxWait);\n if (timer)\n _clearTimeout(timer);\n if (duration <= 0 || maxDuration !== void 0 && maxDuration <= 0) {\n if (maxTimer) {\n _clearTimeout(maxTimer);\n maxTimer = null;\n }\n return Promise.resolve(invoke());\n }\n return new Promise((resolve, reject) => {\n lastRejector = options.rejectOnCancel ? reject : resolve;\n if (maxDuration && !maxTimer) {\n maxTimer = setTimeout(() => {\n if (timer)\n _clearTimeout(timer);\n maxTimer = null;\n resolve(invoke());\n }, maxDuration);\n }\n timer = setTimeout(() => {\n if (maxTimer)\n _clearTimeout(maxTimer);\n maxTimer = null;\n resolve(invoke());\n }, duration);\n });\n };\n return filter;\n}\nfunction throttleFilter(...args) {\n let lastExec = 0;\n let timer;\n let isLeading = true;\n let lastRejector = noop;\n let lastValue;\n let ms;\n let trailing;\n let leading;\n let rejectOnCancel;\n if (!isRef(args[0]) && typeof args[0] === \"object\")\n ({ delay: ms, trailing = true, leading = true, rejectOnCancel = false } = args[0]);\n else\n [ms, trailing = true, leading = true, rejectOnCancel = false] = args;\n const clear = () => {\n if (timer) {\n clearTimeout(timer);\n timer = void 0;\n lastRejector();\n lastRejector = noop;\n }\n };\n const filter = (_invoke) => {\n const duration = toValue(ms);\n const elapsed = Date.now() - lastExec;\n const invoke = () => {\n return lastValue = _invoke();\n };\n clear();\n if (duration <= 0) {\n lastExec = Date.now();\n return invoke();\n }\n if (elapsed > duration && (leading || !isLeading)) {\n lastExec = Date.now();\n invoke();\n } else if (trailing) {\n lastValue = new Promise((resolve, reject) => {\n lastRejector = rejectOnCancel ? reject : resolve;\n timer = setTimeout(() => {\n lastExec = Date.now();\n isLeading = true;\n resolve(invoke());\n clear();\n }, Math.max(0, duration - elapsed));\n });\n }\n if (!leading && !timer)\n timer = setTimeout(() => isLeading = true, duration);\n isLeading = false;\n return lastValue;\n };\n return filter;\n}\nfunction pausableFilter(extendFilter = bypassFilter) {\n const isActive = ref(true);\n function pause() {\n isActive.value = false;\n }\n function resume() {\n isActive.value = true;\n }\n const eventFilter = (...args) => {\n if (isActive.value)\n extendFilter(...args);\n };\n return { isActive: readonly(isActive), pause, resume, eventFilter };\n}\n\nconst directiveHooks = {\n mounted: isVue3 ? \"mounted\" : \"inserted\",\n updated: isVue3 ? \"updated\" : \"componentUpdated\",\n unmounted: isVue3 ? \"unmounted\" : \"unbind\"\n};\n\nfunction cacheStringFunction(fn) {\n const cache = /* @__PURE__ */ Object.create(null);\n return (str) => {\n const hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n}\nconst hyphenateRE = /\\B([A-Z])/g;\nconst hyphenate = cacheStringFunction((str) => str.replace(hyphenateRE, \"-$1\").toLowerCase());\nconst camelizeRE = /-(\\w)/g;\nconst camelize = cacheStringFunction((str) => {\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : \"\");\n});\n\nfunction promiseTimeout(ms, throwOnTimeout = false, reason = \"Timeout\") {\n return new Promise((resolve, reject) => {\n if (throwOnTimeout)\n setTimeout(() => reject(reason), ms);\n else\n setTimeout(resolve, ms);\n });\n}\nfunction identity(arg) {\n return arg;\n}\nfunction createSingletonPromise(fn) {\n let _promise;\n function wrapper() {\n if (!_promise)\n _promise = fn();\n return _promise;\n }\n wrapper.reset = async () => {\n const _prev = _promise;\n _promise = void 0;\n if (_prev)\n await _prev;\n };\n return wrapper;\n}\nfunction invoke(fn) {\n return fn();\n}\nfunction containsProp(obj, ...props) {\n return props.some((k) => k in obj);\n}\nfunction increaseWithUnit(target, delta) {\n var _a;\n if (typeof target === \"number\")\n return target + delta;\n const value = ((_a = target.match(/^-?[0-9]+\\.?[0-9]*/)) == null ? void 0 : _a[0]) || \"\";\n const unit = target.slice(value.length);\n const result = Number.parseFloat(value) + delta;\n if (Number.isNaN(result))\n return target;\n return result + unit;\n}\nfunction objectPick(obj, keys, omitUndefined = false) {\n return keys.reduce((n, k) => {\n if (k in obj) {\n if (!omitUndefined || obj[k] !== void 0)\n n[k] = obj[k];\n }\n return n;\n }, {});\n}\nfunction objectOmit(obj, keys, omitUndefined = false) {\n return Object.fromEntries(Object.entries(obj).filter(([key, value]) => {\n return (!omitUndefined || value !== void 0) && !keys.includes(key);\n }));\n}\nfunction objectEntries(obj) {\n return Object.entries(obj);\n}\nfunction getLifeCycleTarget(target) {\n return target || getCurrentInstance();\n}\n\nfunction toRef(...args) {\n if (args.length !== 1)\n return toRef$1(...args);\n const r = args[0];\n return typeof r === \"function\" ? readonly(customRef(() => ({ get: r, set: noop }))) : ref(r);\n}\nconst resolveRef = toRef;\n\nfunction reactivePick(obj, ...keys) {\n const flatKeys = keys.flat();\n const predicate = flatKeys[0];\n return reactiveComputed(() => typeof predicate === \"function\" ? Object.fromEntries(Object.entries(toRefs$1(obj)).filter(([k, v]) => predicate(toValue(v), k))) : Object.fromEntries(flatKeys.map((k) => [k, toRef(obj, k)])));\n}\n\nfunction refAutoReset(defaultValue, afterMs = 1e4) {\n return customRef((track, trigger) => {\n let value = toValue(defaultValue);\n let timer;\n const resetAfter = () => setTimeout(() => {\n value = toValue(defaultValue);\n trigger();\n }, toValue(afterMs));\n tryOnScopeDispose(() => {\n clearTimeout(timer);\n });\n return {\n get() {\n track();\n return value;\n },\n set(newValue) {\n value = newValue;\n trigger();\n clearTimeout(timer);\n timer = resetAfter();\n }\n };\n });\n}\n\nfunction useDebounceFn(fn, ms = 200, options = {}) {\n return createFilterWrapper(\n debounceFilter(ms, options),\n fn\n );\n}\n\nfunction refDebounced(value, ms = 200, options = {}) {\n const debounced = ref(value.value);\n const updater = useDebounceFn(() => {\n debounced.value = value.value;\n }, ms, options);\n watch(value, () => updater());\n return debounced;\n}\n\nfunction refDefault(source, defaultValue) {\n return computed({\n get() {\n var _a;\n return (_a = source.value) != null ? _a : defaultValue;\n },\n set(value) {\n source.value = value;\n }\n });\n}\n\nfunction useThrottleFn(fn, ms = 200, trailing = false, leading = true, rejectOnCancel = false) {\n return createFilterWrapper(\n throttleFilter(ms, trailing, leading, rejectOnCancel),\n fn\n );\n}\n\nfunction refThrottled(value, delay = 200, trailing = true, leading = true) {\n if (delay <= 0)\n return value;\n const throttled = ref(value.value);\n const updater = useThrottleFn(() => {\n throttled.value = value.value;\n }, delay, trailing, leading);\n watch(value, () => updater());\n return throttled;\n}\n\nfunction refWithControl(initial, options = {}) {\n let source = initial;\n let track;\n let trigger;\n const ref = customRef((_track, _trigger) => {\n track = _track;\n trigger = _trigger;\n return {\n get() {\n return get();\n },\n set(v) {\n set(v);\n }\n };\n });\n function get(tracking = true) {\n if (tracking)\n track();\n return source;\n }\n function set(value, triggering = true) {\n var _a, _b;\n if (value === source)\n return;\n const old = source;\n if (((_a = options.onBeforeChange) == null ? void 0 : _a.call(options, value, old)) === false)\n return;\n source = value;\n (_b = options.onChanged) == null ? void 0 : _b.call(options, value, old);\n if (triggering)\n trigger();\n }\n const untrackedGet = () => get(false);\n const silentSet = (v) => set(v, false);\n const peek = () => get(false);\n const lay = (v) => set(v, false);\n return extendRef(\n ref,\n {\n get,\n set,\n untrackedGet,\n silentSet,\n peek,\n lay\n },\n { enumerable: true }\n );\n}\nconst controlledRef = refWithControl;\n\nfunction set(...args) {\n if (args.length === 2) {\n const [ref, value] = args;\n ref.value = value;\n }\n if (args.length === 3) {\n if (isVue2) {\n set$1(...args);\n } else {\n const [target, key, value] = args;\n target[key] = value;\n }\n }\n}\n\nfunction watchWithFilter(source, cb, options = {}) {\n const {\n eventFilter = bypassFilter,\n ...watchOptions\n } = options;\n return watch(\n source,\n createFilterWrapper(\n eventFilter,\n cb\n ),\n watchOptions\n );\n}\n\nfunction watchPausable(source, cb, options = {}) {\n const {\n eventFilter: filter,\n ...watchOptions\n } = options;\n const { eventFilter, pause, resume, isActive } = pausableFilter(filter);\n const stop = watchWithFilter(\n source,\n cb,\n {\n ...watchOptions,\n eventFilter\n }\n );\n return { stop, pause, resume, isActive };\n}\n\nfunction syncRef(left, right, ...[options]) {\n const {\n flush = \"sync\",\n deep = false,\n immediate = true,\n direction = \"both\",\n transform = {}\n } = options || {};\n const watchers = [];\n const transformLTR = \"ltr\" in transform && transform.ltr || ((v) => v);\n const transformRTL = \"rtl\" in transform && transform.rtl || ((v) => v);\n if (direction === \"both\" || direction === \"ltr\") {\n watchers.push(watchPausable(\n left,\n (newValue) => {\n watchers.forEach((w) => w.pause());\n right.value = transformLTR(newValue);\n watchers.forEach((w) => w.resume());\n },\n { flush, deep, immediate }\n ));\n }\n if (direction === \"both\" || direction === \"rtl\") {\n watchers.push(watchPausable(\n right,\n (newValue) => {\n watchers.forEach((w) => w.pause());\n left.value = transformRTL(newValue);\n watchers.forEach((w) => w.resume());\n },\n { flush, deep, immediate }\n ));\n }\n const stop = () => {\n watchers.forEach((w) => w.stop());\n };\n return stop;\n}\n\nfunction syncRefs(source, targets, options = {}) {\n const {\n flush = \"sync\",\n deep = false,\n immediate = true\n } = options;\n if (!Array.isArray(targets))\n targets = [targets];\n return watch(\n source,\n (newValue) => targets.forEach((target) => target.value = newValue),\n { flush, deep, immediate }\n );\n}\n\nfunction toRefs(objectRef, options = {}) {\n if (!isRef(objectRef))\n return toRefs$1(objectRef);\n const result = Array.isArray(objectRef.value) ? Array.from({ length: objectRef.value.length }) : {};\n for (const key in objectRef.value) {\n result[key] = customRef(() => ({\n get() {\n return objectRef.value[key];\n },\n set(v) {\n var _a;\n const replaceRef = (_a = toValue(options.replaceRef)) != null ? _a : true;\n if (replaceRef) {\n if (Array.isArray(objectRef.value)) {\n const copy = [...objectRef.value];\n copy[key] = v;\n objectRef.value = copy;\n } else {\n const newObject = { ...objectRef.value, [key]: v };\n Object.setPrototypeOf(newObject, Object.getPrototypeOf(objectRef.value));\n objectRef.value = newObject;\n }\n } else {\n objectRef.value[key] = v;\n }\n }\n }));\n }\n return result;\n}\n\nfunction tryOnBeforeMount(fn, sync = true, target) {\n const instance = getLifeCycleTarget(target);\n if (instance)\n onBeforeMount(fn, target);\n else if (sync)\n fn();\n else\n nextTick(fn);\n}\n\nfunction tryOnBeforeUnmount(fn, target) {\n const instance = getLifeCycleTarget(target);\n if (instance)\n onBeforeUnmount(fn, target);\n}\n\nfunction tryOnMounted(fn, sync = true, target) {\n const instance = getLifeCycleTarget();\n if (instance)\n onMounted(fn, target);\n else if (sync)\n fn();\n else\n nextTick(fn);\n}\n\nfunction tryOnUnmounted(fn, target) {\n const instance = getLifeCycleTarget(target);\n if (instance)\n onUnmounted(fn, target);\n}\n\nfunction createUntil(r, isNot = false) {\n function toMatch(condition, { flush = \"sync\", deep = false, timeout, throwOnTimeout } = {}) {\n let stop = null;\n const watcher = new Promise((resolve) => {\n stop = watch(\n r,\n (v) => {\n if (condition(v) !== isNot) {\n stop == null ? void 0 : stop();\n resolve(v);\n }\n },\n {\n flush,\n deep,\n immediate: true\n }\n );\n });\n const promises = [watcher];\n if (timeout != null) {\n promises.push(\n promiseTimeout(timeout, throwOnTimeout).then(() => toValue(r)).finally(() => stop == null ? void 0 : stop())\n );\n }\n return Promise.race(promises);\n }\n function toBe(value, options) {\n if (!isRef(value))\n return toMatch((v) => v === value, options);\n const { flush = \"sync\", deep = false, timeout, throwOnTimeout } = options != null ? options : {};\n let stop = null;\n const watcher = new Promise((resolve) => {\n stop = watch(\n [r, value],\n ([v1, v2]) => {\n if (isNot !== (v1 === v2)) {\n stop == null ? void 0 : stop();\n resolve(v1);\n }\n },\n {\n flush,\n deep,\n immediate: true\n }\n );\n });\n const promises = [watcher];\n if (timeout != null) {\n promises.push(\n promiseTimeout(timeout, throwOnTimeout).then(() => toValue(r)).finally(() => {\n stop == null ? void 0 : stop();\n return toValue(r);\n })\n );\n }\n return Promise.race(promises);\n }\n function toBeTruthy(options) {\n return toMatch((v) => Boolean(v), options);\n }\n function toBeNull(options) {\n return toBe(null, options);\n }\n function toBeUndefined(options) {\n return toBe(void 0, options);\n }\n function toBeNaN(options) {\n return toMatch(Number.isNaN, options);\n }\n function toContains(value, options) {\n return toMatch((v) => {\n const array = Array.from(v);\n return array.includes(value) || array.includes(toValue(value));\n }, options);\n }\n function changed(options) {\n return changedTimes(1, options);\n }\n function changedTimes(n = 1, options) {\n let count = -1;\n return toMatch(() => {\n count += 1;\n return count >= n;\n }, options);\n }\n if (Array.isArray(toValue(r))) {\n const instance = {\n toMatch,\n toContains,\n changed,\n changedTimes,\n get not() {\n return createUntil(r, !isNot);\n }\n };\n return instance;\n } else {\n const instance = {\n toMatch,\n toBe,\n toBeTruthy,\n toBeNull,\n toBeNaN,\n toBeUndefined,\n changed,\n changedTimes,\n get not() {\n return createUntil(r, !isNot);\n }\n };\n return instance;\n }\n}\nfunction until(r) {\n return createUntil(r);\n}\n\nfunction defaultComparator(value, othVal) {\n return value === othVal;\n}\nfunction useArrayDifference(...args) {\n var _a;\n const list = args[0];\n const values = args[1];\n let compareFn = (_a = args[2]) != null ? _a : defaultComparator;\n if (typeof compareFn === \"string\") {\n const key = compareFn;\n compareFn = (value, othVal) => value[key] === othVal[key];\n }\n return computed(() => toValue(list).filter((x) => toValue(values).findIndex((y) => compareFn(x, y)) === -1));\n}\n\nfunction useArrayEvery(list, fn) {\n return computed(() => toValue(list).every((element, index, array) => fn(toValue(element), index, array)));\n}\n\nfunction useArrayFilter(list, fn) {\n return computed(() => toValue(list).map((i) => toValue(i)).filter(fn));\n}\n\nfunction useArrayFind(list, fn) {\n return computed(() => toValue(\n toValue(list).find((element, index, array) => fn(toValue(element), index, array))\n ));\n}\n\nfunction useArrayFindIndex(list, fn) {\n return computed(() => toValue(list).findIndex((element, index, array) => fn(toValue(element), index, array)));\n}\n\nfunction findLast(arr, cb) {\n let index = arr.length;\n while (index-- > 0) {\n if (cb(arr[index], index, arr))\n return arr[index];\n }\n return void 0;\n}\nfunction useArrayFindLast(list, fn) {\n return computed(() => toValue(\n !Array.prototype.findLast ? findLast(toValue(list), (element, index, array) => fn(toValue(element), index, array)) : toValue(list).findLast((element, index, array) => fn(toValue(element), index, array))\n ));\n}\n\nfunction isArrayIncludesOptions(obj) {\n return isObject(obj) && containsProp(obj, \"formIndex\", \"comparator\");\n}\nfunction useArrayIncludes(...args) {\n var _a;\n const list = args[0];\n const value = args[1];\n let comparator = args[2];\n let formIndex = 0;\n if (isArrayIncludesOptions(comparator)) {\n formIndex = (_a = comparator.fromIndex) != null ? _a : 0;\n comparator = comparator.comparator;\n }\n if (typeof comparator === \"string\") {\n const key = comparator;\n comparator = (element, value2) => element[key] === toValue(value2);\n }\n comparator = comparator != null ? comparator : (element, value2) => element === toValue(value2);\n return computed(() => toValue(list).slice(formIndex).some((element, index, array) => comparator(\n toValue(element),\n toValue(value),\n index,\n toValue(array)\n )));\n}\n\nfunction useArrayJoin(list, separator) {\n return computed(() => toValue(list).map((i) => toValue(i)).join(toValue(separator)));\n}\n\nfunction useArrayMap(list, fn) {\n return computed(() => toValue(list).map((i) => toValue(i)).map(fn));\n}\n\nfunction useArrayReduce(list, reducer, ...args) {\n const reduceCallback = (sum, value, index) => reducer(toValue(sum), toValue(value), index);\n return computed(() => {\n const resolved = toValue(list);\n return args.length ? resolved.reduce(reduceCallback, toValue(args[0])) : resolved.reduce(reduceCallback);\n });\n}\n\nfunction useArraySome(list, fn) {\n return computed(() => toValue(list).some((element, index, array) => fn(toValue(element), index, array)));\n}\n\nfunction uniq(array) {\n return Array.from(new Set(array));\n}\nfunction uniqueElementsBy(array, fn) {\n return array.reduce((acc, v) => {\n if (!acc.some((x) => fn(v, x, array)))\n acc.push(v);\n return acc;\n }, []);\n}\nfunction useArrayUnique(list, compareFn) {\n return computed(() => {\n const resolvedList = toValue(list).map((element) => toValue(element));\n return compareFn ? uniqueElementsBy(resolvedList, compareFn) : uniq(resolvedList);\n });\n}\n\nfunction useCounter(initialValue = 0, options = {}) {\n let _initialValue = unref(initialValue);\n const count = ref(initialValue);\n const {\n max = Number.POSITIVE_INFINITY,\n min = Number.NEGATIVE_INFINITY\n } = options;\n const inc = (delta = 1) => count.value = Math.max(Math.min(max, count.value + delta), min);\n const dec = (delta = 1) => count.value = Math.min(Math.max(min, count.value - delta), max);\n const get = () => count.value;\n const set = (val) => count.value = Math.max(min, Math.min(max, val));\n const reset = (val = _initialValue) => {\n _initialValue = val;\n return set(val);\n };\n return { count, inc, dec, get, set, reset };\n}\n\nconst REGEX_PARSE = /^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/;\nconst REGEX_FORMAT = /[YMDHhms]o|\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a{1,2}|A{1,2}|m{1,2}|s{1,2}|Z{1,2}|SSS/g;\nfunction defaultMeridiem(hours, minutes, isLowercase, hasPeriod) {\n let m = hours < 12 ? \"AM\" : \"PM\";\n if (hasPeriod)\n m = m.split(\"\").reduce((acc, curr) => acc += `${curr}.`, \"\");\n return isLowercase ? m.toLowerCase() : m;\n}\nfunction formatOrdinal(num) {\n const suffixes = [\"th\", \"st\", \"nd\", \"rd\"];\n const v = num % 100;\n return num + (suffixes[(v - 20) % 10] || suffixes[v] || suffixes[0]);\n}\nfunction formatDate(date, formatStr, options = {}) {\n var _a;\n const years = date.getFullYear();\n const month = date.getMonth();\n const days = date.getDate();\n const hours = date.getHours();\n const minutes = date.getMinutes();\n const seconds = date.getSeconds();\n const milliseconds = date.getMilliseconds();\n const day = date.getDay();\n const meridiem = (_a = options.customMeridiem) != null ? _a : defaultMeridiem;\n const matches = {\n Yo: () => formatOrdinal(years),\n YY: () => String(years).slice(-2),\n YYYY: () => years,\n M: () => month + 1,\n Mo: () => formatOrdinal(month + 1),\n MM: () => `${month + 1}`.padStart(2, \"0\"),\n MMM: () => date.toLocaleDateString(options.locales, { month: \"short\" }),\n MMMM: () => date.toLocaleDateString(options.locales, { month: \"long\" }),\n D: () => String(days),\n Do: () => formatOrdinal(days),\n DD: () => `${days}`.padStart(2, \"0\"),\n H: () => String(hours),\n Ho: () => formatOrdinal(hours),\n HH: () => `${hours}`.padStart(2, \"0\"),\n h: () => `${hours % 12 || 12}`.padStart(1, \"0\"),\n ho: () => formatOrdinal(hours % 12 || 12),\n hh: () => `${hours % 12 || 12}`.padStart(2, \"0\"),\n m: () => String(minutes),\n mo: () => formatOrdinal(minutes),\n mm: () => `${minutes}`.padStart(2, \"0\"),\n s: () => String(seconds),\n so: () => formatOrdinal(seconds),\n ss: () => `${seconds}`.padStart(2, \"0\"),\n SSS: () => `${milliseconds}`.padStart(3, \"0\"),\n d: () => day,\n dd: () => date.toLocaleDateString(options.locales, { weekday: \"narrow\" }),\n ddd: () => date.toLocaleDateString(options.locales, { weekday: \"short\" }),\n dddd: () => date.toLocaleDateString(options.locales, { weekday: \"long\" }),\n A: () => meridiem(hours, minutes),\n AA: () => meridiem(hours, minutes, false, true),\n a: () => meridiem(hours, minutes, true),\n aa: () => meridiem(hours, minutes, true, true)\n };\n return formatStr.replace(REGEX_FORMAT, (match, $1) => {\n var _a2, _b;\n return (_b = $1 != null ? $1 : (_a2 = matches[match]) == null ? void 0 : _a2.call(matches)) != null ? _b : match;\n });\n}\nfunction normalizeDate(date) {\n if (date === null)\n return new Date(Number.NaN);\n if (date === void 0)\n return /* @__PURE__ */ new Date();\n if (date instanceof Date)\n return new Date(date);\n if (typeof date === \"string\" && !/Z$/i.test(date)) {\n const d = date.match(REGEX_PARSE);\n if (d) {\n const m = d[2] - 1 || 0;\n const ms = (d[7] || \"0\").substring(0, 3);\n return new Date(d[1], m, d[3] || 1, d[4] || 0, d[5] || 0, d[6] || 0, ms);\n }\n }\n return new Date(date);\n}\nfunction useDateFormat(date, formatStr = \"HH:mm:ss\", options = {}) {\n return computed(() => formatDate(normalizeDate(toValue(date)), toValue(formatStr), options));\n}\n\nfunction useIntervalFn(cb, interval = 1e3, options = {}) {\n const {\n immediate = true,\n immediateCallback = false\n } = options;\n let timer = null;\n const isActive = ref(false);\n function clean() {\n if (timer) {\n clearInterval(timer);\n timer = null;\n }\n }\n function pause() {\n isActive.value = false;\n clean();\n }\n function resume() {\n const intervalValue = toValue(interval);\n if (intervalValue <= 0)\n return;\n isActive.value = true;\n if (immediateCallback)\n cb();\n clean();\n timer = setInterval(cb, intervalValue);\n }\n if (immediate && isClient)\n resume();\n if (isRef(interval) || typeof interval === \"function\") {\n const stopWatch = watch(interval, () => {\n if (isActive.value && isClient)\n resume();\n });\n tryOnScopeDispose(stopWatch);\n }\n tryOnScopeDispose(pause);\n return {\n isActive,\n pause,\n resume\n };\n}\n\nfunction useInterval(interval = 1e3, options = {}) {\n const {\n controls: exposeControls = false,\n immediate = true,\n callback\n } = options;\n const counter = ref(0);\n const update = () => counter.value += 1;\n const reset = () => {\n counter.value = 0;\n };\n const controls = useIntervalFn(\n callback ? () => {\n update();\n callback(counter.value);\n } : update,\n interval,\n { immediate }\n );\n if (exposeControls) {\n return {\n counter,\n reset,\n ...controls\n };\n } else {\n return counter;\n }\n}\n\nfunction useLastChanged(source, options = {}) {\n var _a;\n const ms = ref((_a = options.initialValue) != null ? _a : null);\n watch(\n source,\n () => ms.value = timestamp(),\n options\n );\n return ms;\n}\n\nfunction useTimeoutFn(cb, interval, options = {}) {\n const {\n immediate = true\n } = options;\n const isPending = ref(false);\n let timer = null;\n function clear() {\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n }\n function stop() {\n isPending.value = false;\n clear();\n }\n function start(...args) {\n clear();\n isPending.value = true;\n timer = setTimeout(() => {\n isPending.value = false;\n timer = null;\n cb(...args);\n }, toValue(interval));\n }\n if (immediate) {\n isPending.value = true;\n if (isClient)\n start();\n }\n tryOnScopeDispose(stop);\n return {\n isPending: readonly(isPending),\n start,\n stop\n };\n}\n\nfunction useTimeout(interval = 1e3, options = {}) {\n const {\n controls: exposeControls = false,\n callback\n } = options;\n const controls = useTimeoutFn(\n callback != null ? callback : noop,\n interval,\n options\n );\n const ready = computed(() => !controls.isPending.value);\n if (exposeControls) {\n return {\n ready,\n ...controls\n };\n } else {\n return ready;\n }\n}\n\nfunction useToNumber(value, options = {}) {\n const {\n method = \"parseFloat\",\n radix,\n nanToZero\n } = options;\n return computed(() => {\n let resolved = toValue(value);\n if (typeof resolved === \"string\")\n resolved = Number[method](resolved, radix);\n if (nanToZero && Number.isNaN(resolved))\n resolved = 0;\n return resolved;\n });\n}\n\nfunction useToString(value) {\n return computed(() => `${toValue(value)}`);\n}\n\nfunction useToggle(initialValue = false, options = {}) {\n const {\n truthyValue = true,\n falsyValue = false\n } = options;\n const valueIsRef = isRef(initialValue);\n const _value = ref(initialValue);\n function toggle(value) {\n if (arguments.length) {\n _value.value = value;\n return _value.value;\n } else {\n const truthy = toValue(truthyValue);\n _value.value = _value.value === truthy ? toValue(falsyValue) : truthy;\n return _value.value;\n }\n }\n if (valueIsRef)\n return toggle;\n else\n return [_value, toggle];\n}\n\nfunction watchArray(source, cb, options) {\n let oldList = (options == null ? void 0 : options.immediate) ? [] : [...source instanceof Function ? source() : Array.isArray(source) ? source : toValue(source)];\n return watch(source, (newList, _, onCleanup) => {\n const oldListRemains = Array.from({ length: oldList.length });\n const added = [];\n for (const obj of newList) {\n let found = false;\n for (let i = 0; i < oldList.length; i++) {\n if (!oldListRemains[i] && obj === oldList[i]) {\n oldListRemains[i] = true;\n found = true;\n break;\n }\n }\n if (!found)\n added.push(obj);\n }\n const removed = oldList.filter((_2, i) => !oldListRemains[i]);\n cb(newList, oldList, added, removed, onCleanup);\n oldList = [...newList];\n }, options);\n}\n\nfunction watchAtMost(source, cb, options) {\n const {\n count,\n ...watchOptions\n } = options;\n const current = ref(0);\n const stop = watchWithFilter(\n source,\n (...args) => {\n current.value += 1;\n if (current.value >= toValue(count))\n nextTick(() => stop());\n cb(...args);\n },\n watchOptions\n );\n return { count: current, stop };\n}\n\nfunction watchDebounced(source, cb, options = {}) {\n const {\n debounce = 0,\n maxWait = void 0,\n ...watchOptions\n } = options;\n return watchWithFilter(\n source,\n cb,\n {\n ...watchOptions,\n eventFilter: debounceFilter(debounce, { maxWait })\n }\n );\n}\n\nfunction watchDeep(source, cb, options) {\n return watch(\n source,\n cb,\n {\n ...options,\n deep: true\n }\n );\n}\n\nfunction watchIgnorable(source, cb, options = {}) {\n const {\n eventFilter = bypassFilter,\n ...watchOptions\n } = options;\n const filteredCb = createFilterWrapper(\n eventFilter,\n cb\n );\n let ignoreUpdates;\n let ignorePrevAsyncUpdates;\n let stop;\n if (watchOptions.flush === \"sync\") {\n const ignore = ref(false);\n ignorePrevAsyncUpdates = () => {\n };\n ignoreUpdates = (updater) => {\n ignore.value = true;\n updater();\n ignore.value = false;\n };\n stop = watch(\n source,\n (...args) => {\n if (!ignore.value)\n filteredCb(...args);\n },\n watchOptions\n );\n } else {\n const disposables = [];\n const ignoreCounter = ref(0);\n const syncCounter = ref(0);\n ignorePrevAsyncUpdates = () => {\n ignoreCounter.value = syncCounter.value;\n };\n disposables.push(\n watch(\n source,\n () => {\n syncCounter.value++;\n },\n { ...watchOptions, flush: \"sync\" }\n )\n );\n ignoreUpdates = (updater) => {\n const syncCounterPrev = syncCounter.value;\n updater();\n ignoreCounter.value += syncCounter.value - syncCounterPrev;\n };\n disposables.push(\n watch(\n source,\n (...args) => {\n const ignore = ignoreCounter.value > 0 && ignoreCounter.value === syncCounter.value;\n ignoreCounter.value = 0;\n syncCounter.value = 0;\n if (ignore)\n return;\n filteredCb(...args);\n },\n watchOptions\n )\n );\n stop = () => {\n disposables.forEach((fn) => fn());\n };\n }\n return { stop, ignoreUpdates, ignorePrevAsyncUpdates };\n}\n\nfunction watchImmediate(source, cb, options) {\n return watch(\n source,\n cb,\n {\n ...options,\n immediate: true\n }\n );\n}\n\nfunction watchOnce(source, cb, options) {\n const stop = watch(source, (...args) => {\n nextTick(() => stop());\n return cb(...args);\n }, options);\n return stop;\n}\n\nfunction watchThrottled(source, cb, options = {}) {\n const {\n throttle = 0,\n trailing = true,\n leading = true,\n ...watchOptions\n } = options;\n return watchWithFilter(\n source,\n cb,\n {\n ...watchOptions,\n eventFilter: throttleFilter(throttle, trailing, leading)\n }\n );\n}\n\nfunction watchTriggerable(source, cb, options = {}) {\n let cleanupFn;\n function onEffect() {\n if (!cleanupFn)\n return;\n const fn = cleanupFn;\n cleanupFn = void 0;\n fn();\n }\n function onCleanup(callback) {\n cleanupFn = callback;\n }\n const _cb = (value, oldValue) => {\n onEffect();\n return cb(value, oldValue, onCleanup);\n };\n const res = watchIgnorable(source, _cb, options);\n const { ignoreUpdates } = res;\n const trigger = () => {\n let res2;\n ignoreUpdates(() => {\n res2 = _cb(getWatchSources(source), getOldValue(source));\n });\n return res2;\n };\n return {\n ...res,\n trigger\n };\n}\nfunction getWatchSources(sources) {\n if (isReactive(sources))\n return sources;\n if (Array.isArray(sources))\n return sources.map((item) => toValue(item));\n return toValue(sources);\n}\nfunction getOldValue(source) {\n return Array.isArray(source) ? source.map(() => void 0) : void 0;\n}\n\nfunction whenever(source, cb, options) {\n const stop = watch(\n source,\n (v, ov, onInvalidate) => {\n if (v) {\n if (options == null ? void 0 : options.once)\n nextTick(() => stop());\n cb(v, ov, onInvalidate);\n }\n },\n {\n ...options,\n once: false\n }\n );\n return stop;\n}\n\nexport { assert, refAutoReset as autoResetRef, bypassFilter, camelize, clamp, computedEager, computedWithControl, containsProp, computedWithControl as controlledComputed, controlledRef, createEventHook, createFilterWrapper, createGlobalState, createInjectionState, reactify as createReactiveFn, createSharedComposable, createSingletonPromise, debounceFilter, refDebounced as debouncedRef, watchDebounced as debouncedWatch, directiveHooks, computedEager as eagerComputed, extendRef, formatDate, get, getLifeCycleTarget, hasOwn, hyphenate, identity, watchIgnorable as ignorableWatch, increaseWithUnit, injectLocal, invoke, isClient, isDef, isDefined, isIOS, isObject, isWorker, makeDestructurable, noop, normalizeDate, notNullish, now, objectEntries, objectOmit, objectPick, pausableFilter, watchPausable as pausableWatch, promiseTimeout, provideLocal, rand, reactify, reactifyObject, reactiveComputed, reactiveOmit, reactivePick, refAutoReset, refDebounced, refDefault, refThrottled, refWithControl, resolveRef, resolveUnref, set, syncRef, syncRefs, throttleFilter, refThrottled as throttledRef, watchThrottled as throttledWatch, timestamp, toReactive, toRef, toRefs, toValue, tryOnBeforeMount, tryOnBeforeUnmount, tryOnMounted, tryOnScopeDispose, tryOnUnmounted, until, useArrayDifference, useArrayEvery, useArrayFilter, useArrayFind, useArrayFindIndex, useArrayFindLast, useArrayIncludes, useArrayJoin, useArrayMap, useArrayReduce, useArraySome, useArrayUnique, useCounter, useDateFormat, refDebounced as useDebounce, useDebounceFn, useInterval, useIntervalFn, useLastChanged, refThrottled as useThrottle, useThrottleFn, useTimeout, useTimeoutFn, useToNumber, useToString, useToggle, watchArray, watchAtMost, watchDebounced, watchDeep, watchIgnorable, watchImmediate, watchOnce, watchPausable, watchThrottled, watchTriggerable, watchWithFilter, whenever };\n"],"names":["shallowRef","watchEffect","readonly","ref","watch","customRef","getCurrentScope","onScopeDispose","effectScope","getCurrentInstance","provide","inject","isVue3","version","isRef","unref","computed","reactive","toRefs$1","toRef$1","isVue2","set$1","onBeforeMount","nextTick","onBeforeUnmount","onMounted","onUnmounted","isReactive"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var vue = require('vue');
|
|
4
|
+
|
|
5
|
+
function _interopNamespaceDefault(e) {
|
|
6
|
+
var n = Object.create(null);
|
|
7
|
+
if (e) {
|
|
8
|
+
Object.keys(e).forEach(function (k) {
|
|
9
|
+
if (k !== 'default') {
|
|
10
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
11
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
12
|
+
enumerable: true,
|
|
13
|
+
get: function () { return e[k]; }
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
n.default = e;
|
|
19
|
+
return Object.freeze(n);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
var vue__namespace = /*#__PURE__*/_interopNamespaceDefault(vue);
|
|
23
|
+
|
|
24
|
+
var isVue2 = false;
|
|
25
|
+
var isVue3 = true;
|
|
26
|
+
var Vue2 = undefined;
|
|
27
|
+
|
|
28
|
+
function install() {}
|
|
29
|
+
|
|
30
|
+
function set(target, key, val) {
|
|
31
|
+
if (Array.isArray(target)) {
|
|
32
|
+
target.length = Math.max(target.length, key);
|
|
33
|
+
target.splice(key, 1, val);
|
|
34
|
+
return val
|
|
35
|
+
}
|
|
36
|
+
target[key] = val;
|
|
37
|
+
return val
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function del(target, key) {
|
|
41
|
+
if (Array.isArray(target)) {
|
|
42
|
+
target.splice(key, 1);
|
|
43
|
+
return
|
|
44
|
+
}
|
|
45
|
+
delete target[key];
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
exports.Vue = vue__namespace;
|
|
49
|
+
exports.Vue2 = Vue2;
|
|
50
|
+
exports.del = del;
|
|
51
|
+
exports.install = install;
|
|
52
|
+
exports.isVue2 = isVue2;
|
|
53
|
+
exports.isVue3 = isVue3;
|
|
54
|
+
exports.set = set;
|
|
55
|
+
Object.keys(vue).forEach(function (k) {
|
|
56
|
+
if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
|
|
57
|
+
enumerable: true,
|
|
58
|
+
get: function () { return vue[k]; }
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
//# sourceMappingURL=index.js.map
|
package/lib/node_modules/.pnpm/vue-demi@0.14.7_vue@3.4.25/node_modules/vue-demi/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../../../node_modules/.pnpm/vue-demi@0.14.7_vue@3.4.25/node_modules/vue-demi/lib/index.mjs"],"sourcesContent":["import * as Vue from 'vue'\n\nvar isVue2 = false\nvar isVue3 = true\nvar Vue2 = undefined\n\nfunction install() {}\n\nexport function set(target, key, val) {\n if (Array.isArray(target)) {\n target.length = Math.max(target.length, key)\n target.splice(key, 1, val)\n return val\n }\n target[key] = val\n return val\n}\n\nexport function del(target, key) {\n if (Array.isArray(target)) {\n target.splice(key, 1)\n return\n }\n delete target[key]\n}\n\nexport * from 'vue'\nexport {\n Vue,\n Vue2,\n isVue2,\n isVue3,\n install,\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEG,IAAC,MAAM,GAAG,MAAK;AACf,IAAC,MAAM,GAAG,KAAI;AACd,IAAC,IAAI,GAAG,UAAS;AACpB;AACA,SAAS,OAAO,GAAG,EAAE;AACrB;AACO,SAAS,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE;AACtC,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AAC7B,IAAI,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,EAAC;AAChD,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAC;AAC9B,IAAI,OAAO,GAAG;AACd,GAAG;AACH,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,IAAG;AACnB,EAAE,OAAO,GAAG;AACZ,CAAC;AACD;AACO,SAAS,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE;AACjC,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AAC7B,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,EAAC;AACzB,IAAI,MAAM;AACV,GAAG;AACH,EAAE,OAAO,MAAM,CAAC,GAAG,EAAC;AACpB;;;;;;;;;;;;;;;;","x_google_ignoreList":[0]}
|
|
@@ -17,10 +17,13 @@ const initValue = (column, values) => {
|
|
|
17
17
|
}
|
|
18
18
|
return value;
|
|
19
19
|
};
|
|
20
|
-
const filterAllValue = (values) => {
|
|
20
|
+
const filterAllValue = (values, column) => {
|
|
21
21
|
let value = null;
|
|
22
22
|
if (Array.isArray(values)) {
|
|
23
23
|
value = values.filter((item) => item !== ALL_VALUE);
|
|
24
|
+
if (column && column.type === "number-range") {
|
|
25
|
+
value = values ? values.every((e) => !lodashEs.isNil(e)) ? values : null : null;
|
|
26
|
+
}
|
|
24
27
|
} else {
|
|
25
28
|
value = values === ALL_VALUE ? null : values;
|
|
26
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advanced-filtering.js","sources":["../../../../../../packages/components/advanced-filtering/src/advanced-filtering.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\nimport { has, isEmpty, isNil } from 'lodash-es'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { FormProps as AntFormProps, TooltipProps } from 'ant-design-vue'\nimport type { FormColumn } from '@ll-plus/components'\nimport type advancedFiltering from './advanced-filtering.vue'\nimport type advancedFilteringParams from './components/advanced-filtering-params.vue'\nimport type advancedFilteringTags from './components/advanced-filtering-tags.vue'\n\nexport interface IAvancedFilteringTag {\n label: string\n key: string\n value: string | string[]\n showValue: string | string[]\n}\n\nexport const ALL_VALUE: string = '_ALL'\n\nexport type FilterColumn = FormColumn<{\n unUseDefaultOption?: boolean\n defaultOptionLabel?: string\n}>\n\nexport const initValue = (column: FilterColumn, values: any) => {\n let value: any = has(values, column.key) ? values[column.key] : null\n if (has(column, 'options') && !column.unUseDefaultOption) {\n if (column.type === 'checkbox-group' || has(column, 'mode')) {\n value = isEmpty(value) || isNil(value) ? [ALL_VALUE] : value\n } else {\n value = isNil(value) ? ALL_VALUE : value\n }\n }\n\n return value\n}\n\nexport const filterAllValue = (values: string | string[]) => {\n let value: any = null\n if (Array.isArray(values)) {\n value = values.filter(item => item !== ALL_VALUE)\n } else {\n value = values === ALL_VALUE ? null : values\n }\n\n return value\n}\n\nexport const treeDataFormat = (\n arr = [] as any[],\n fieldNames: { [key: string]: string }\n) => {\n let options = [] as any[]\n if (!arr) return []\n options = arr.map((e: any) => {\n const obj: any = {}\n obj.label = e[fieldNames.label]\n obj.value = e[fieldNames.value]\n if (e[fieldNames.children] && e[fieldNames.children].length) {\n obj.children = treeDataFormat(e[fieldNames.children], fieldNames)\n }\n\n return obj\n })\n return options\n}\n\nexport const findLabelByValue = (\n tree: FilterColumn['options'],\n value: any\n): string => {\n // 递归函数,用于遍历 Tree 数据\n function _findLabel(nodes: FilterColumn['options']): string[] {\n const labels: string[] = []\n if (!nodes) return []\n for (const node of nodes) {\n if (node.value === value) {\n labels.push(node.label)\n }\n if (node.children && node.children.length > 0) {\n const childLabels = _findLabel(node.children)\n if (childLabels) {\n labels.push(...childLabels)\n }\n }\n }\n return labels.length > 0 ? labels : []\n }\n // 开始递归查找\n return _findLabel(tree).join(',')\n}\n\nexport const advancedFilteringProps = buildProps({\n filterColumns: {\n type: definePropType<FilterColumn[]>(Array),\n default: () => []\n },\n value: {\n type: Object,\n default: () => ({})\n },\n formOptions: {\n type: definePropType<AntFormProps>(Object),\n default: () => ({ layout: 'vertical' })\n },\n overlayStyle: {\n type: definePropType<TooltipProps['overlayStyle']>(Object),\n default: () => ({\n width: '500px'\n })\n }\n} as const)\n\nexport const advancedFilteringParamsProps = buildProps({\n filterColumns: {\n type: definePropType<FilterColumn[]>(Array),\n default: () => []\n },\n value: {\n type: Object,\n default: () => ({})\n },\n formOptions: {\n type: definePropType<AntFormProps>(Object),\n default: () => ({ layout: 'vertical' })\n },\n showFooter: {\n type: Boolean,\n default: false\n }\n} as const)\n\nexport const advancedFilteringEmits = {\n change: (value: Record<string, any>) => !!value,\n 'update:value': (value: Record<string, any>) => !!value\n}\n\nexport const advancedFilteringParamsEmits = {\n close: () => true,\n confirm: () => true,\n changeValue: (value: Record<string, any>) => !!value,\n 'update:value': (value: Record<string, any>) => !!value\n}\n\nexport const advancedFilteringTagsEmits = {\n change: (value: Record<string, any>) => !!value,\n 'update:value': (value: Record<string, any>) => !!value\n}\n\n// props\nexport type AdvancedFilteringProps = ExtractPropTypes<\n typeof advancedFilteringProps\n>\n\nexport type AdvancedFilteringParamsProps = ExtractPropTypes<\n typeof advancedFilteringParamsProps\n>\n\n// emits\nexport type AdvancedFilteringEmits = typeof advancedFilteringEmits\n\nexport type AdvancedFilteringParamsEmits = typeof advancedFilteringParamsEmits\n\nexport type AdvancedFilteringTagsEmits = typeof advancedFilteringTagsEmits\n\n// instance\nexport type AdvancedFilteringInstance = InstanceType<typeof advancedFiltering>\n\nexport type AdvancedFilteringParamsInstance = InstanceType<\n typeof advancedFilteringParams\n>\n\nexport type AdvancedFilteringTagsInstance = InstanceType<\n typeof advancedFilteringTags\n>\n"],"names":["has","isEmpty","isNil","buildProps","definePropType"],"mappings":";;;;;;;AAiBO,MAAM,SAAoB,GAAA,OAAA;AAOpB,MAAA,SAAA,GAAY,CAAC,MAAA,EAAsB,MAAgB,KAAA;AAC9D,EAAI,IAAA,KAAA,GAAaA,aAAI,MAAQ,EAAA,MAAA,CAAO,GAAG,CAAI,GAAA,MAAA,CAAO,MAAO,CAAA,GAAG,CAAI,GAAA,IAAA,CAAA;AAChE,EAAA,IAAIA,aAAI,MAAQ,EAAA,SAAS,CAAK,IAAA,CAAC,OAAO,kBAAoB,EAAA;AACxD,IAAA,IAAI,OAAO,IAAS,KAAA,gBAAA,IAAoBA,YAAI,CAAA,MAAA,EAAQ,MAAM,CAAG,EAAA;AAC3D,MAAQ,KAAA,GAAAC,gBAAA,CAAQ,KAAK,CAAK,IAAAC,cAAA,CAAM,KAAK,CAAI,GAAA,CAAC,SAAS,CAAI,GAAA,KAAA,CAAA;AAAA,KAClD,MAAA;AACL,MAAQ,KAAA,GAAAA,cAAA,CAAM,KAAK,CAAA,GAAI,SAAY,GAAA,KAAA,CAAA;AAAA,KACrC;AAAA,GACF;AAEA,EAAO,OAAA,KAAA,CAAA;AACT,EAAA;AAEa,MAAA,cAAA,GAAiB,
|
|
1
|
+
{"version":3,"file":"advanced-filtering.js","sources":["../../../../../../packages/components/advanced-filtering/src/advanced-filtering.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\nimport { has, isEmpty, isNil } from 'lodash-es'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { FormProps as AntFormProps, TooltipProps } from 'ant-design-vue'\nimport type { FormColumn } from '@ll-plus/components'\nimport type advancedFiltering from './advanced-filtering.vue'\nimport type advancedFilteringParams from './components/advanced-filtering-params.vue'\nimport type advancedFilteringTags from './components/advanced-filtering-tags.vue'\n\nexport interface IAvancedFilteringTag {\n label: string\n key: string\n value: string | string[]\n showValue: string | string[]\n}\n\nexport const ALL_VALUE: string = '_ALL'\n\nexport type FilterColumn = FormColumn<{\n unUseDefaultOption?: boolean\n defaultOptionLabel?: string\n}>\n\nexport const initValue = (column: FilterColumn, values: any) => {\n let value: any = has(values, column.key) ? values[column.key] : null\n if (has(column, 'options') && !column.unUseDefaultOption) {\n if (column.type === 'checkbox-group' || has(column, 'mode')) {\n value = isEmpty(value) || isNil(value) ? [ALL_VALUE] : value\n } else {\n value = isNil(value) ? ALL_VALUE : value\n }\n }\n\n return value\n}\n\nexport const filterAllValue = (\n values: string | string[],\n column: FilterColumn\n): any => {\n let value: any = null\n if (Array.isArray(values)) {\n value = values.filter(item => item !== ALL_VALUE)\n if (column && column.type === 'number-range') {\n value = values ? (values.every(e => !isNil(e)) ? values : null) : null\n }\n } else {\n value = values === ALL_VALUE ? null : values\n }\n\n return value\n}\n\nexport const treeDataFormat = (\n arr = [] as any[],\n fieldNames: { [key: string]: string }\n) => {\n let options = [] as any[]\n if (!arr) return []\n options = arr.map((e: any) => {\n const obj: any = {}\n obj.label = e[fieldNames.label]\n obj.value = e[fieldNames.value]\n if (e[fieldNames.children] && e[fieldNames.children].length) {\n obj.children = treeDataFormat(e[fieldNames.children], fieldNames)\n }\n\n return obj\n })\n return options\n}\n\nexport const findLabelByValue = (\n tree: FilterColumn['options'],\n value: any\n): string => {\n // 递归函数,用于遍历 Tree 数据\n function _findLabel(nodes: FilterColumn['options']): string[] {\n const labels: string[] = []\n if (!nodes) return []\n for (const node of nodes) {\n if (node.value === value) {\n labels.push(node.label)\n }\n if (node.children && node.children.length > 0) {\n const childLabels = _findLabel(node.children)\n if (childLabels) {\n labels.push(...childLabels)\n }\n }\n }\n return labels.length > 0 ? labels : []\n }\n // 开始递归查找\n return _findLabel(tree).join(',')\n}\n\nexport const advancedFilteringProps = buildProps({\n filterColumns: {\n type: definePropType<FilterColumn[]>(Array),\n default: () => []\n },\n value: {\n type: Object,\n default: () => ({})\n },\n formOptions: {\n type: definePropType<AntFormProps>(Object),\n default: () => ({ layout: 'vertical' })\n },\n overlayStyle: {\n type: definePropType<TooltipProps['overlayStyle']>(Object),\n default: () => ({\n width: '500px'\n })\n }\n} as const)\n\nexport const advancedFilteringParamsProps = buildProps({\n filterColumns: {\n type: definePropType<FilterColumn[]>(Array),\n default: () => []\n },\n value: {\n type: Object,\n default: () => ({})\n },\n formOptions: {\n type: definePropType<AntFormProps>(Object),\n default: () => ({ layout: 'vertical' })\n },\n showFooter: {\n type: Boolean,\n default: false\n }\n} as const)\n\nexport const advancedFilteringEmits = {\n change: (value: Record<string, any>) => !!value,\n 'update:value': (value: Record<string, any>) => !!value\n}\n\nexport const advancedFilteringParamsEmits = {\n close: () => true,\n confirm: () => true,\n changeValue: (value: Record<string, any>) => !!value,\n 'update:value': (value: Record<string, any>) => !!value\n}\n\nexport const advancedFilteringTagsEmits = {\n change: (value: Record<string, any>) => !!value,\n 'update:value': (value: Record<string, any>) => !!value\n}\n\n// props\nexport type AdvancedFilteringProps = ExtractPropTypes<\n typeof advancedFilteringProps\n>\n\nexport type AdvancedFilteringParamsProps = ExtractPropTypes<\n typeof advancedFilteringParamsProps\n>\n\n// emits\nexport type AdvancedFilteringEmits = typeof advancedFilteringEmits\n\nexport type AdvancedFilteringParamsEmits = typeof advancedFilteringParamsEmits\n\nexport type AdvancedFilteringTagsEmits = typeof advancedFilteringTagsEmits\n\n// instance\nexport type AdvancedFilteringInstance = InstanceType<typeof advancedFiltering>\n\nexport type AdvancedFilteringParamsInstance = InstanceType<\n typeof advancedFilteringParams\n>\n\nexport type AdvancedFilteringTagsInstance = InstanceType<\n typeof advancedFilteringTags\n>\n"],"names":["has","isEmpty","isNil","buildProps","definePropType"],"mappings":";;;;;;;AAiBO,MAAM,SAAoB,GAAA,OAAA;AAOpB,MAAA,SAAA,GAAY,CAAC,MAAA,EAAsB,MAAgB,KAAA;AAC9D,EAAI,IAAA,KAAA,GAAaA,aAAI,MAAQ,EAAA,MAAA,CAAO,GAAG,CAAI,GAAA,MAAA,CAAO,MAAO,CAAA,GAAG,CAAI,GAAA,IAAA,CAAA;AAChE,EAAA,IAAIA,aAAI,MAAQ,EAAA,SAAS,CAAK,IAAA,CAAC,OAAO,kBAAoB,EAAA;AACxD,IAAA,IAAI,OAAO,IAAS,KAAA,gBAAA,IAAoBA,YAAI,CAAA,MAAA,EAAQ,MAAM,CAAG,EAAA;AAC3D,MAAQ,KAAA,GAAAC,gBAAA,CAAQ,KAAK,CAAK,IAAAC,cAAA,CAAM,KAAK,CAAI,GAAA,CAAC,SAAS,CAAI,GAAA,KAAA,CAAA;AAAA,KAClD,MAAA;AACL,MAAQ,KAAA,GAAAA,cAAA,CAAM,KAAK,CAAA,GAAI,SAAY,GAAA,KAAA,CAAA;AAAA,KACrC;AAAA,GACF;AAEA,EAAO,OAAA,KAAA,CAAA;AACT,EAAA;AAEa,MAAA,cAAA,GAAiB,CAC5B,MAAA,EACA,MACQ,KAAA;AACR,EAAA,IAAI,KAAa,GAAA,IAAA,CAAA;AACjB,EAAI,IAAA,KAAA,CAAM,OAAQ,CAAA,MAAM,CAAG,EAAA;AACzB,IAAA,KAAA,GAAQ,MAAO,CAAA,MAAA,CAAO,CAAQ,IAAA,KAAA,IAAA,KAAS,SAAS,CAAA,CAAA;AAChD,IAAI,IAAA,MAAA,IAAU,MAAO,CAAA,IAAA,KAAS,cAAgB,EAAA;AAC5C,MAAQ,KAAA,GAAA,MAAA,GAAU,MAAO,CAAA,KAAA,CAAM,CAAK,CAAA,KAAA,CAACA,eAAM,CAAC,CAAC,CAAI,GAAA,MAAA,GAAS,IAAQ,GAAA,IAAA,CAAA;AAAA,KACpE;AAAA,GACK,MAAA;AACL,IAAQ,KAAA,GAAA,MAAA,KAAW,YAAY,IAAO,GAAA,MAAA,CAAA;AAAA,GACxC;AAEA,EAAO,OAAA,KAAA,CAAA;AACT,EAAA;AAEO,MAAM,cAAiB,GAAA,CAC5B,GAAM,GAAA,IACN,UACG,KAAA;AACH,EAAA,IAAI,UAAU,EAAC,CAAA;AACf,EAAA,IAAI,CAAC,GAAA;AAAK,IAAA,OAAO,EAAC,CAAA;AAClB,EAAU,OAAA,GAAA,GAAA,CAAI,GAAI,CAAA,CAAC,CAAW,KAAA;AAC5B,IAAA,MAAM,MAAW,EAAC,CAAA;AAClB,IAAI,GAAA,CAAA,KAAA,GAAQ,CAAE,CAAA,UAAA,CAAW,KAAK,CAAA,CAAA;AAC9B,IAAI,GAAA,CAAA,KAAA,GAAQ,CAAE,CAAA,UAAA,CAAW,KAAK,CAAA,CAAA;AAC9B,IAAI,IAAA,CAAA,CAAE,WAAW,QAAQ,CAAA,IAAK,EAAE,UAAW,CAAA,QAAQ,EAAE,MAAQ,EAAA;AAC3D,MAAA,GAAA,CAAI,WAAW,cAAe,CAAA,CAAA,CAAE,UAAW,CAAA,QAAQ,GAAG,UAAU,CAAA,CAAA;AAAA,KAClE;AAEA,IAAO,OAAA,GAAA,CAAA;AAAA,GACR,CAAA,CAAA;AACD,EAAO,OAAA,OAAA,CAAA;AACT,EAAA;AAEa,MAAA,gBAAA,GAAmB,CAC9B,IAAA,EACA,KACW,KAAA;AAEX,EAAA,SAAS,WAAW,KAA0C,EAAA;AAC5D,IAAA,MAAM,SAAmB,EAAC,CAAA;AAC1B,IAAA,IAAI,CAAC,KAAA;AAAO,MAAA,OAAO,EAAC,CAAA;AACpB,IAAA,KAAA,MAAW,QAAQ,KAAO,EAAA;AACxB,MAAI,IAAA,IAAA,CAAK,UAAU,KAAO,EAAA;AACxB,QAAO,MAAA,CAAA,IAAA,CAAK,KAAK,KAAK,CAAA,CAAA;AAAA,OACxB;AACA,MAAA,IAAI,IAAK,CAAA,QAAA,IAAY,IAAK,CAAA,QAAA,CAAS,SAAS,CAAG,EAAA;AAC7C,QAAM,MAAA,WAAA,GAAc,UAAW,CAAA,IAAA,CAAK,QAAQ,CAAA,CAAA;AAC5C,QAAA,IAAI,WAAa,EAAA;AACf,UAAO,MAAA,CAAA,IAAA,CAAK,GAAG,WAAW,CAAA,CAAA;AAAA,SAC5B;AAAA,OACF;AAAA,KACF;AACA,IAAA,OAAO,MAAO,CAAA,MAAA,GAAS,CAAI,GAAA,MAAA,GAAS,EAAC,CAAA;AAAA,GACvC;AAEA,EAAA,OAAO,UAAW,CAAA,IAAI,CAAE,CAAA,IAAA,CAAK,GAAG,CAAA,CAAA;AAClC,EAAA;AAEO,MAAM,yBAAyBC,kBAAW,CAAA;AAAA,EAC/C,aAAe,EAAA;AAAA,IACb,IAAA,EAAMC,uBAA+B,KAAK,CAAA;AAAA,IAC1C,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAA,EAAS,OAAO,EAAC,CAAA;AAAA,GACnB;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAA,EAAMA,uBAA6B,MAAM,CAAA;AAAA,IACzC,OAAS,EAAA,OAAO,EAAE,MAAA,EAAQ,UAAW,EAAA,CAAA;AAAA,GACvC;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAA,EAAMA,uBAA6C,MAAM,CAAA;AAAA,IACzD,SAAS,OAAO;AAAA,MACd,KAAO,EAAA,OAAA;AAAA,KACT,CAAA;AAAA,GACF;AACF,CAAU,EAAA;AAEH,MAAM,+BAA+BD,kBAAW,CAAA;AAAA,EACrD,aAAe,EAAA;AAAA,IACb,IAAA,EAAMC,uBAA+B,KAAK,CAAA;AAAA,IAC1C,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAA,EAAS,OAAO,EAAC,CAAA;AAAA,GACnB;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAA,EAAMA,uBAA6B,MAAM,CAAA;AAAA,IACzC,OAAS,EAAA,OAAO,EAAE,MAAA,EAAQ,UAAW,EAAA,CAAA;AAAA,GACvC;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAU,EAAA;AAEH,MAAM,sBAAyB,GAAA;AAAA,EACpC,MAAQ,EAAA,CAAC,KAA+B,KAAA,CAAC,CAAC,KAAA;AAAA,EAC1C,cAAgB,EAAA,CAAC,KAA+B,KAAA,CAAC,CAAC,KAAA;AACpD,EAAA;AAEO,MAAM,4BAA+B,GAAA;AAAA,EAC1C,OAAO,MAAM,IAAA;AAAA,EACb,SAAS,MAAM,IAAA;AAAA,EACf,WAAa,EAAA,CAAC,KAA+B,KAAA,CAAC,CAAC,KAAA;AAAA,EAC/C,cAAgB,EAAA,CAAC,KAA+B,KAAA,CAAC,CAAC,KAAA;AACpD,EAAA;AAEO,MAAM,0BAA6B,GAAA;AAAA,EACxC,MAAQ,EAAA,CAAC,KAA+B,KAAA,CAAC,CAAC,KAAA;AAAA,EAC1C,cAAgB,EAAA,CAAC,KAA+B,KAAA,CAAC,CAAC,KAAA;AACpD;;;;;;;;;;;;;"}
|
|
@@ -51,9 +51,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
51
51
|
vue.watch(
|
|
52
52
|
filterValue,
|
|
53
53
|
(n) => {
|
|
54
|
-
|
|
55
|
-
emits("
|
|
56
|
-
emits("change", value);
|
|
54
|
+
emits("update:value", n);
|
|
55
|
+
emits("change", n);
|
|
57
56
|
},
|
|
58
57
|
{
|
|
59
58
|
deep: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advanced-filtering.vue2.js","sources":["../../../../../../packages/components/advanced-filtering/src/advanced-filtering.vue"],"sourcesContent":["<template>\n <a-popover\n :overlay-class-name=\"bem.b()\"\n placement=\"bottomRight\"\n :overlay-style=\"props.overlayStyle\"\n :open=\"showSelectBox\"\n >\n <template #content>\n <advanced-filtering-params\n v-model:value=\"filterValue\"\n :filter-columns=\"props.filterColumns\"\n :form-options=\"props.formOptions\"\n @close=\"handleClose\"\n />\n </template>\n <a-popover\n :overlay-class-name=\"bem.b()\"\n trigger=\"hover\"\n placement=\"bottomRight\"\n :open=\"showValueBox\"\n :overlay-style=\"props.overlayStyle\"\n @open-change=\"handleHoverChange\"\n >\n <template #content>\n <advanced-filtering-tags\n :value=\"filterValue\"\n :filter-columns=\"props.filterColumns\"\n @change=\"handleChange\"\n />\n </template>\n <ll-button @click.stop=\"handleClickChange\">\n <ll-icon icon-name=\"icon-Screening\" style=\"margin-right: 10px\" />\n <span>高级筛选</span>\n </ll-button>\n </a-popover>\n </a-popover>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\n\nimport {\n advancedFilteringProps,\n advancedFilteringEmits
|
|
1
|
+
{"version":3,"file":"advanced-filtering.vue2.js","sources":["../../../../../../packages/components/advanced-filtering/src/advanced-filtering.vue"],"sourcesContent":["<template>\n <a-popover\n :overlay-class-name=\"bem.b()\"\n placement=\"bottomRight\"\n :overlay-style=\"props.overlayStyle\"\n :open=\"showSelectBox\"\n >\n <template #content>\n <advanced-filtering-params\n v-model:value=\"filterValue\"\n :filter-columns=\"props.filterColumns\"\n :form-options=\"props.formOptions\"\n @close=\"handleClose\"\n />\n </template>\n <a-popover\n :overlay-class-name=\"bem.b()\"\n trigger=\"hover\"\n placement=\"bottomRight\"\n :open=\"showValueBox\"\n :overlay-style=\"props.overlayStyle\"\n @open-change=\"handleHoverChange\"\n >\n <template #content>\n <advanced-filtering-tags\n :value=\"filterValue\"\n :filter-columns=\"props.filterColumns\"\n @change=\"handleChange\"\n />\n </template>\n <ll-button @click.stop=\"handleClickChange\">\n <ll-icon icon-name=\"icon-Screening\" style=\"margin-right: 10px\" />\n <span>高级筛选</span>\n </ll-button>\n </a-popover>\n </a-popover>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\n\nimport {\n advancedFilteringProps,\n advancedFilteringEmits\n} from './advanced-filtering'\n\nimport { LlButton, LlIcon } from '@ll-plus/components'\nimport AdvancedFilteringParams from './components/advanced-filtering-params.vue'\nimport AdvancedFilteringTags from './components/advanced-filtering-tags.vue'\n\ndefineOptions({ name: 'LlAdvancedFiltering' })\nconst props = defineProps(advancedFilteringProps)\nconst emits = defineEmits(advancedFilteringEmits)\nconst bem = createNamespace('advanced-filtering')\nconst filterValue = ref<any>(props.value)\nconst showSelectBox = ref<boolean>(false)\nconst showValueBox = ref<boolean>(false)\n\nconst handleHoverChange = (visible: boolean) => {\n if (showSelectBox.value) return\n showValueBox.value = visible\n}\n\nconst handleClickChange = () => {\n showSelectBox.value = !showSelectBox.value\n showValueBox.value = false\n}\n\nconst handleClose = () => {\n showSelectBox.value = false\n showValueBox.value = false\n}\n\nconst handleChange = val => {\n filterValue.value = val\n}\n\nwatch(\n filterValue,\n n => {\n emits('update:value', n)\n emits('change', n)\n },\n {\n deep: true\n }\n)\n</script>\n"],"names":["createNamespace","ref","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqDA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AACd,IAAM,MAAA,GAAA,GAAMA,gCAAgB,oBAAoB,CAAA,CAAA;AAChD,IAAM,MAAA,WAAA,GAAcC,OAAS,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AACxC,IAAM,MAAA,aAAA,GAAgBA,QAAa,KAAK,CAAA,CAAA;AACxC,IAAM,MAAA,YAAA,GAAeA,QAAa,KAAK,CAAA,CAAA;AAEvC,IAAM,MAAA,iBAAA,GAAoB,CAAC,OAAqB,KAAA;AAC9C,MAAA,IAAI,aAAc,CAAA,KAAA;AAAO,QAAA,OAAA;AACzB,MAAA,YAAA,CAAa,KAAQ,GAAA,OAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAA,MAAM,oBAAoB,MAAM;AAC9B,MAAc,aAAA,CAAA,KAAA,GAAQ,CAAC,aAAc,CAAA,KAAA,CAAA;AACrC,MAAA,YAAA,CAAa,KAAQ,GAAA,KAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAA,MAAM,cAAc,MAAM;AACxB,MAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AACtB,MAAA,YAAA,CAAa,KAAQ,GAAA,KAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAA,MAAM,eAAe,CAAO,GAAA,KAAA;AAC1B,MAAA,WAAA,CAAY,KAAQ,GAAA,GAAA,CAAA;AAAA,KACtB,CAAA;AAEA,IAAAC,SAAA;AAAA,MACE,WAAA;AAAA,MACA,CAAK,CAAA,KAAA;AACH,QAAA,KAAA,CAAM,gBAAgB,CAAC,CAAA,CAAA;AACvB,QAAA,KAAA,CAAM,UAAU,CAAC,CAAA,CAAA;AAAA,OACnB;AAAA,MACA;AAAA,QACE,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/lib/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js
CHANGED
|
@@ -55,17 +55,18 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
55
55
|
const handleAdvancedFilterConfirm = () => {
|
|
56
56
|
emits("confirm");
|
|
57
57
|
};
|
|
58
|
-
const handleChange = (
|
|
59
|
-
setData(
|
|
58
|
+
const handleChange = (params) => {
|
|
59
|
+
setData(params);
|
|
60
60
|
};
|
|
61
|
-
const setData = (
|
|
62
|
-
const value = lodashEs.cloneDeep(
|
|
61
|
+
const setData = (params) => {
|
|
62
|
+
const value = lodashEs.cloneDeep(params.formData);
|
|
63
63
|
const obj = {};
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
computeFormColumns.value.forEach((item) => {
|
|
65
|
+
const i = item.key;
|
|
66
|
+
obj[i] = advancedFiltering.filterAllValue(value[i], item);
|
|
67
|
+
});
|
|
67
68
|
emits("update:value", obj);
|
|
68
|
-
emits("changeValue", obj);
|
|
69
|
+
emits("changeValue", { ...params, formData: obj });
|
|
69
70
|
};
|
|
70
71
|
vue.watch(
|
|
71
72
|
() => props.value,
|
|
@@ -93,16 +94,6 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
93
94
|
immediate: true
|
|
94
95
|
}
|
|
95
96
|
);
|
|
96
|
-
vue.watch(
|
|
97
|
-
() => innerValue.value,
|
|
98
|
-
(val) => {
|
|
99
|
-
setData(val);
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
deep: true,
|
|
103
|
-
immediate: true
|
|
104
|
-
}
|
|
105
|
-
);
|
|
106
97
|
return (_ctx, _cache) => {
|
|
107
98
|
const _component_ll_icon = vue.resolveComponent("ll-icon");
|
|
108
99
|
const _component_ll_button = vue.resolveComponent("ll-button");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advanced-filtering-params.vue2.js","sources":["../../../../../../../packages/components/advanced-filtering/src/components/advanced-filtering-params.vue"],"sourcesContent":["<template>\n <a-card\n title=\"高级筛选\"\n :class=\"bem.b()\"\n onselectstart=\"return false\"\n :bordered=\"false\"\n >\n <template #extra>\n <ll-icon\n icon-name=\"icon-close2\"\n :style=\"{\n cursor: 'pointer'\n }\"\n @click=\"handleClose\"\n />\n </template>\n <div :class=\"bem.m('content')\">\n <ll-form\n v-if=\"props.filterColumns.length > 0\"\n v-bind=\"$attrs\"\n :form-columns=\"computeFormColumns\"\n :form-options=\"props.formOptions\"\n :form-data=\"innerValue\"\n :row-options=\"\n $attrs['row-options'] || {\n gutter: 30\n }\n \"\n @change=\"handleChange\"\n />\n <div v-else :class=\"bem.m('empty')\">\n <p>暂无数据</p>\n </div>\n </div>\n <div v-if=\"props.showFooter\" :class=\"bem.m('footer')\">\n <ll-button\n type=\"primary\"\n style=\"margin-right: 16px\"\n @click=\"handleAdvancedFilterConfirm\"\n >\n 确定\n </ll-button>\n <ll-button @click=\"handleClose\">取消</ll-button>\n </div>\n </a-card>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch, computed } from 'vue'\nimport { has, cloneDeep } from 'lodash-es'\nimport { createNamespace } from '@ll-plus/utils'\nimport { LlForm } from '@ll-plus/components'\nimport {\n advancedFilteringParamsProps,\n advancedFilteringParamsEmits,\n ALL_VALUE,\n initValue,\n filterAllValue\n} from '../advanced-filtering'\n\ndefineOptions({ name: 'LlAdvancedFilteringParams' })\n\nconst props = defineProps(advancedFilteringParamsProps)\n\nconst emits = defineEmits(advancedFilteringParamsEmits)\n\nconst bem = createNamespace('advanced-filtering-params')\n\nconst innerValue = ref({})\n\nconst key = ref(0)\n\nconst computeFormColumns = computed(() => {\n return props.filterColumns.map(column => {\n if (has(column, 'options')) {\n if (\n (column.options.length && column.options[0].value === ALL_VALUE) ||\n column.unUseDefaultOption\n ) {\n return column\n }\n column.options = [\n {\n label: column?.defaultOptionLabel ?? '全部',\n value: ALL_VALUE\n },\n ...column.options\n ]\n }\n return column\n })\n})\n\nconst handleClose = () => {\n emits('close')\n}\n\nconst handleAdvancedFilterConfirm = () => {\n emits('confirm')\n}\n\nconst handleChange = (
|
|
1
|
+
{"version":3,"file":"advanced-filtering-params.vue2.js","sources":["../../../../../../../packages/components/advanced-filtering/src/components/advanced-filtering-params.vue"],"sourcesContent":["<template>\n <a-card\n title=\"高级筛选\"\n :class=\"bem.b()\"\n onselectstart=\"return false\"\n :bordered=\"false\"\n >\n <template #extra>\n <ll-icon\n icon-name=\"icon-close2\"\n :style=\"{\n cursor: 'pointer'\n }\"\n @click=\"handleClose\"\n />\n </template>\n <div :class=\"bem.m('content')\">\n <ll-form\n v-if=\"props.filterColumns.length > 0\"\n v-bind=\"$attrs\"\n :form-columns=\"computeFormColumns\"\n :form-options=\"props.formOptions\"\n :form-data=\"innerValue\"\n :row-options=\"\n $attrs['row-options'] || {\n gutter: 30\n }\n \"\n @change=\"handleChange\"\n />\n <div v-else :class=\"bem.m('empty')\">\n <p>暂无数据</p>\n </div>\n </div>\n <div v-if=\"props.showFooter\" :class=\"bem.m('footer')\">\n <ll-button\n type=\"primary\"\n style=\"margin-right: 16px\"\n @click=\"handleAdvancedFilterConfirm\"\n >\n 确定\n </ll-button>\n <ll-button @click=\"handleClose\">取消</ll-button>\n </div>\n </a-card>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch, computed } from 'vue'\nimport { has, cloneDeep } from 'lodash-es'\nimport { createNamespace } from '@ll-plus/utils'\nimport { LlForm } from '@ll-plus/components'\nimport {\n advancedFilteringParamsProps,\n advancedFilteringParamsEmits,\n ALL_VALUE,\n initValue,\n filterAllValue\n} from '../advanced-filtering'\n\nimport type { FormChangeEvent } from '@ll-plus/components'\n\ndefineOptions({ name: 'LlAdvancedFilteringParams' })\n\nconst props = defineProps(advancedFilteringParamsProps)\n\nconst emits = defineEmits(advancedFilteringParamsEmits)\n\nconst bem = createNamespace('advanced-filtering-params')\n\nconst innerValue = ref({})\n\nconst key = ref(0)\n\nconst computeFormColumns = computed(() => {\n return props.filterColumns.map(column => {\n if (has(column, 'options')) {\n if (\n (column.options.length && column.options[0].value === ALL_VALUE) ||\n column.unUseDefaultOption\n ) {\n return column\n }\n column.options = [\n {\n label: column?.defaultOptionLabel ?? '全部',\n value: ALL_VALUE\n },\n ...column.options\n ]\n }\n return column\n })\n})\n\nconst handleClose = () => {\n emits('close')\n}\n\nconst handleAdvancedFilterConfirm = () => {\n emits('confirm')\n}\n\nconst handleChange = (params: FormChangeEvent) => {\n setData(params)\n}\n\nconst setData = (params: FormChangeEvent) => {\n const value = cloneDeep(params.formData)\n const obj: Record<string, any> = {}\n computeFormColumns.value.forEach(item => {\n const i = item.key\n obj[i] = filterAllValue(value[i], item)\n })\n emits('update:value', obj)\n emits('changeValue', { ...params, formData: obj })\n}\n\nwatch(\n () => props.value,\n val => {\n const value = cloneDeep(val)\n const cloneInnerValue = cloneDeep(innerValue.value)\n const obj: Record<string, any> = {}\n computeFormColumns.value.forEach(item => {\n obj[item.key] = initValue(item, value)\n })\n const comparedObj: Record<string, any> = {}\n computeFormColumns.value.forEach(item => {\n comparedObj[item.key] = initValue(item, cloneInnerValue)\n })\n if (JSON.stringify(obj) !== JSON.stringify(comparedObj)) {\n innerValue.value = cloneDeep(obj)\n }\n if (key.value === 0) {\n innerValue.value = cloneDeep(obj)\n key.value++\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\n// watch(\n// () => innerValue.value,\n// val => {\n// setData(val)\n// },\n// {\n// deep: true,\n// immediate: true\n// }\n// )\n</script>\n"],"names":["createNamespace","ref","computed","has","ALL_VALUE","cloneDeep","filterAllValue","watch","initValue"],"mappings":"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"}
|
package/lib/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.js
CHANGED
|
@@ -57,7 +57,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
57
57
|
const getTags = (filterColumns, values) => {
|
|
58
58
|
const arr = [];
|
|
59
59
|
filterColumns.map((item) => {
|
|
60
|
-
const value = advancedFiltering.filterAllValue(values[item.key]);
|
|
60
|
+
const value = advancedFiltering.filterAllValue(values[item.key], item);
|
|
61
61
|
if (!lodashEs.isNil(value)) {
|
|
62
62
|
let tagValue = "";
|
|
63
63
|
if (item?.options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advanced-filtering-tags.vue2.js","sources":["../../../../../../../packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <div :class=\"bem.m('title')\">\n <p>筛选结果:</p>\n <a @click=\"handleClean(null)\">清除筛选结果</a>\n </div>\n <div v-if=\"tags.length > 0\" :class=\"bem.m('box')\">\n <div v-for=\"tag in tags\" :key=\"tag.key\" :class=\"bem.m('tag')\">\n <span :class=\"bem.m('label')\">{{ tag.label }}:</span>\n <span :class=\"bem.m('value')\">{{ tag.showValue }}</span>\n <span :class=\"bem.m('close')\" @click=\"handleClean(tag)\">\n <ll-icon icon-name=\"icon-close2\" :class-name=\"bem.m('icon')\" />\n </span>\n </div>\n </div>\n <div v-else :class=\"bem.m('empty')\">\n <span>暂无数据</span>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watchEffect } from 'vue'\nimport dayjs from 'dayjs'\n\nimport { createNamespace } from '@ll-plus/utils'\nimport { isNil, has } from 'lodash-es'\nimport {\n advancedFilteringProps,\n advancedFilteringTagsEmits,\n type IAvancedFilteringTag,\n filterAllValue,\n treeDataFormat,\n findLabelByValue\n} from '../advanced-filtering'\nimport type { FormColumn } from '@ll-plus/components'\ndefineOptions({ name: 'LlAdvancedFilteringTags' })\nconst props = defineProps(advancedFilteringProps)\nconst emits = defineEmits(advancedFilteringTagsEmits)\nconst bem = createNamespace('advanced-filtering-tags')\nconst tags = ref([] as IAvancedFilteringTag[])\n\nconst handleClean = (tag: IAvancedFilteringTag | null = null) => {\n const copyValue = {}\n if (tag) {\n tags.value = tags.value.filter(e => e.key !== tag.key)\n } else {\n tags.value = []\n }\n tags.value.map(e => {\n copyValue[e.key] = e.value\n })\n setData(copyValue)\n}\nconst setData = (obj: Record<string, any>) => {\n emits('update:value', obj)\n emits('change', obj)\n}\n\nconst getTags = (filterColumns: FormColumn[], values: Record<string, any>) => {\n const arr = [] as IAvancedFilteringTag[]\n filterColumns.map(item => {\n const value = filterAllValue(values[item.key])\n\n if (!isNil(value)) {\n let tagValue = ''\n\n if (item?.options) {\n let options = [] as FormColumn['options']\n if (item.fieldNames) {\n options = treeDataFormat(options, item.fieldNames)\n } else {\n options = item.options\n }\n if (Array.isArray(value)) {\n let tagArr: any = []\n tagArr = value.map((val: string) => {\n return findLabelByValue(options, val)\n })\n\n tagValue = tagArr.join(',')\n } else {\n tagValue = findLabelByValue(options, value)\n }\n } else {\n tagValue = value\n }\n\n if (item.type === 'date-picker') {\n tagValue = dayjs(value).format(item?.format ?? 'YYYY-MM-DD')\n }\n if (item.type === 'time-picker') {\n tagValue = dayjs(value).format(item?.format ?? 'YYYY/MM/DD hh:mm:ss')\n }\n if (item.type === 'date-range') {\n tagValue = `${dayjs(value[0]).format(\n item?.format ?? 'YYYY-MM-DD'\n )} - ${dayjs(value[1]).format(item?.format ?? 'YYYY-MM-DD')}`\n }\n\n if (item.type === 'number-range') {\n tagValue = `${value[0]}${value[1] ? ` - ${value[1]}` : ''}`\n }\n\n if (item.type === 'time-range') {\n tagValue = `${dayjs(value[0]).format(\n item?.format ?? 'YYYY/MM/DD HH:mm:ss'\n )} - ${dayjs(value[1]).format(item?.format ?? 'YYYY/MM/DD HH:mm:ss')}`\n }\n\n if (item.type === 'switch') {\n if (\n has(item, 'checkedChildren') &&\n has(item, 'checkedValue') &&\n has(item, 'unCheckedChildren') &&\n has(item, 'unCheckedValue')\n ) {\n tagValue =\n value === item.checkedValue\n ? item.checkedChildren\n : item.unCheckedChildren\n }\n\n if (has(item, 'checkedChildren') && !has(item, 'checkedValue')) {\n tagValue = value ? item.checkedChildren : false\n }\n }\n if (tagValue) {\n arr.push({\n label: item.label || '',\n key: item.key,\n value: value,\n showValue: tagValue\n })\n }\n }\n })\n return arr\n}\n\nwatchEffect(() => {\n tags.value = getTags(props.filterColumns, props.value)\n})\n</script>\n"],"names":["createNamespace","ref","filterAllValue","isNil","treeDataFormat","findLabelByValue","has","watchEffect"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AACd,IAAM,MAAA,GAAA,GAAMA,gCAAgB,yBAAyB,CAAA,CAAA;AACrD,IAAM,MAAA,IAAA,GAAOC,OAAI,CAAA,EAA4B,CAAA,CAAA;AAE7C,IAAM,MAAA,WAAA,GAAc,CAAC,GAAA,GAAmC,IAAS,KAAA;AAC/D,MAAA,MAAM,YAAY,EAAC,CAAA;AACnB,MAAA,IAAI,GAAK,EAAA;AACP,QAAK,IAAA,CAAA,KAAA,GAAQ,KAAK,KAAM,CAAA,MAAA,CAAO,OAAK,CAAE,CAAA,GAAA,KAAQ,IAAI,GAAG,CAAA,CAAA;AAAA,OAChD,MAAA;AACL,QAAA,IAAA,CAAK,QAAQ,EAAC,CAAA;AAAA,OAChB;AACA,MAAK,IAAA,CAAA,KAAA,CAAM,IAAI,CAAK,CAAA,KAAA;AAClB,QAAU,SAAA,CAAA,CAAA,CAAE,GAAG,CAAA,GAAI,CAAE,CAAA,KAAA,CAAA;AAAA,OACtB,CAAA,CAAA;AACD,MAAA,OAAA,CAAQ,SAAS,CAAA,CAAA;AAAA,KACnB,CAAA;AACA,IAAM,MAAA,OAAA,GAAU,CAAC,GAA6B,KAAA;AAC5C,MAAA,KAAA,CAAM,gBAAgB,GAAG,CAAA,CAAA;AACzB,MAAA,KAAA,CAAM,UAAU,GAAG,CAAA,CAAA;AAAA,KACrB,CAAA;AAEA,IAAM,MAAA,OAAA,GAAU,CAAC,aAAA,EAA6B,MAAgC,KAAA;AAC5E,MAAA,MAAM,MAAM,EAAC,CAAA;AACb,MAAA,aAAA,CAAc,IAAI,CAAQ,IAAA,KAAA;AACxB,QAAA,MAAM,
|
|
1
|
+
{"version":3,"file":"advanced-filtering-tags.vue2.js","sources":["../../../../../../../packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <div :class=\"bem.m('title')\">\n <p>筛选结果:</p>\n <a @click=\"handleClean(null)\">清除筛选结果</a>\n </div>\n <div v-if=\"tags.length > 0\" :class=\"bem.m('box')\">\n <div v-for=\"tag in tags\" :key=\"tag.key\" :class=\"bem.m('tag')\">\n <span :class=\"bem.m('label')\">{{ tag.label }}:</span>\n <span :class=\"bem.m('value')\">{{ tag.showValue }}</span>\n <span :class=\"bem.m('close')\" @click=\"handleClean(tag)\">\n <ll-icon icon-name=\"icon-close2\" :class-name=\"bem.m('icon')\" />\n </span>\n </div>\n </div>\n <div v-else :class=\"bem.m('empty')\">\n <span>暂无数据</span>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watchEffect } from 'vue'\nimport dayjs from 'dayjs'\n\nimport { createNamespace } from '@ll-plus/utils'\nimport { isNil, has } from 'lodash-es'\nimport {\n advancedFilteringProps,\n advancedFilteringTagsEmits,\n type IAvancedFilteringTag,\n filterAllValue,\n treeDataFormat,\n findLabelByValue\n} from '../advanced-filtering'\nimport type { FormColumn } from '@ll-plus/components'\ndefineOptions({ name: 'LlAdvancedFilteringTags' })\nconst props = defineProps(advancedFilteringProps)\nconst emits = defineEmits(advancedFilteringTagsEmits)\nconst bem = createNamespace('advanced-filtering-tags')\nconst tags = ref([] as IAvancedFilteringTag[])\n\nconst handleClean = (tag: IAvancedFilteringTag | null = null) => {\n const copyValue = {}\n if (tag) {\n tags.value = tags.value.filter(e => e.key !== tag.key)\n } else {\n tags.value = []\n }\n tags.value.map(e => {\n copyValue[e.key] = e.value\n })\n setData(copyValue)\n}\nconst setData = (obj: Record<string, any>) => {\n emits('update:value', obj)\n emits('change', obj)\n}\n\nconst getTags = (filterColumns: FormColumn[], values: Record<string, any>) => {\n const arr = [] as IAvancedFilteringTag[]\n filterColumns.map(item => {\n const value = filterAllValue(values[item.key], item)\n\n if (!isNil(value)) {\n let tagValue = ''\n\n if (item?.options) {\n let options = [] as FormColumn['options']\n if (item.fieldNames) {\n options = treeDataFormat(options, item.fieldNames)\n } else {\n options = item.options\n }\n if (Array.isArray(value)) {\n let tagArr: any = []\n tagArr = value.map((val: string) => {\n return findLabelByValue(options, val)\n })\n\n tagValue = tagArr.join(',')\n } else {\n tagValue = findLabelByValue(options, value)\n }\n } else {\n tagValue = value\n }\n\n if (item.type === 'date-picker') {\n tagValue = dayjs(value).format(item?.format ?? 'YYYY-MM-DD')\n }\n if (item.type === 'time-picker') {\n tagValue = dayjs(value).format(item?.format ?? 'YYYY/MM/DD hh:mm:ss')\n }\n if (item.type === 'date-range') {\n tagValue = `${dayjs(value[0]).format(\n item?.format ?? 'YYYY-MM-DD'\n )} - ${dayjs(value[1]).format(item?.format ?? 'YYYY-MM-DD')}`\n }\n\n if (item.type === 'number-range') {\n tagValue = `${value[0]}${value[1] ? ` - ${value[1]}` : ''}`\n }\n\n if (item.type === 'time-range') {\n tagValue = `${dayjs(value[0]).format(\n item?.format ?? 'YYYY/MM/DD HH:mm:ss'\n )} - ${dayjs(value[1]).format(item?.format ?? 'YYYY/MM/DD HH:mm:ss')}`\n }\n\n if (item.type === 'switch') {\n if (\n has(item, 'checkedChildren') &&\n has(item, 'checkedValue') &&\n has(item, 'unCheckedChildren') &&\n has(item, 'unCheckedValue')\n ) {\n tagValue =\n value === item.checkedValue\n ? item.checkedChildren\n : item.unCheckedChildren\n }\n\n if (has(item, 'checkedChildren') && !has(item, 'checkedValue')) {\n tagValue = value ? item.checkedChildren : false\n }\n }\n if (tagValue) {\n arr.push({\n label: item.label || '',\n key: item.key,\n value: value,\n showValue: tagValue\n })\n }\n }\n })\n return arr\n}\n\nwatchEffect(() => {\n tags.value = getTags(props.filterColumns, props.value)\n})\n</script>\n"],"names":["createNamespace","ref","filterAllValue","isNil","treeDataFormat","findLabelByValue","has","watchEffect"],"mappings":"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"}
|