qidian-vue-ui 1.2.7 → 1.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,10 @@
1
- .qd-service-list[data-v-ddbd2501] {
1
+ .qd-service-list[data-v-96416a3a] {
2
2
  height: 100%;
3
3
  display: flex;
4
4
  flex-direction: column;
5
5
  background-color: transparent;
6
6
  }
7
- .qd-service-list[data-v-ddbd2501] > .t-list__load {
7
+ .qd-service-list[data-v-96416a3a] > .t-list__load {
8
8
  color: var(--td-text-color-secondary);
9
9
  background-color: transparent;
10
10
  }
@@ -2,7 +2,7 @@ import './index.css'
2
2
  import _sfc_main from "./index.vue2.mjs";
3
3
  /* empty css */
4
4
  import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
5
- const QdServiceList = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-ddbd2501"]]);
5
+ const QdServiceList = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-96416a3a"]]);
6
6
  export {
7
7
  QdServiceList as default
8
8
  };
@@ -5,6 +5,7 @@ import { qdServiceListProps } from "./props.mjs";
5
5
  import { useServiceLoadMore, filterSlots } from "qidian-shared";
6
6
  import { useVModels } from "../../../node_modules/.pnpm/@vueuse_core@14.2.0_vue@3.5.26_typescript@5.9.3_/node_modules/@vueuse/core/dist/index.mjs";
7
7
  import { useConfig } from "../../config-provider/useConfig.mjs";
8
+ import { usePerfectScrollbar } from "../../../hooks/usePerfectScrollbar.mjs";
8
9
  const _sfc_main = /* @__PURE__ */ defineComponent({
9
10
  ...{
10
11
  name: "QdServiceList"
@@ -42,6 +43,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
42
43
  const { t } = useConfig("crud");
43
44
  const listRef = useTemplateRef("list");
44
45
  let scrollTopRecord = 0;
46
+ usePerfectScrollbar(() => listRef.value?.$el);
45
47
  const reProps = computed(() => {
46
48
  const {
47
49
  service,
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue2.mjs","sources":["../../../../src/components/service/list/index.vue"],"sourcesContent":["<template>\n <t-list\n ref=\"list\"\n class=\"qd-service-list\"\n v-loading=\"listLoad\"\n :async-loading=\"listAsyncLoad\"\n v-bind=\"reProps.listOptions\"\n @scroll=\"onScroll\"\n @load-more=\"loadMore\"\n >\n <slot :data=\"data\" />\n\n <slot v-if=\"!listLoad.loading && !listAsyncLoad && empty\" name=\"empty\">\n <t-empty class=\"qd-service-list__empty\" :title=\"t('emptyText')\" />\n </slot>\n\n <template v-for=\"name in filterSlots($slots, ['default', 'empty'])\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </t-list>\n</template>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n D extends TableRowData = TableRowData,\n R = unknown,\n P = ServicePageParams,\n TP = P,\n Pag extends ServicePagination = ServicePagination\n \"\n>\n import type { ComponentPublicInstance } from 'vue'\n import type { ListInstanceFunctions, TableRowData, TdListProps } from 'tdesign-vue-next'\n import type { ServicePageParams, ServicePagination } from 'qidian-shared'\n import type { QdServiceListInstanceFunctions, QdServiceListProps } from './types'\n import {\n computed,\n onActivated,\n onBeforeUnmount,\n onDeactivated,\n onMounted,\n useTemplateRef\n } from 'vue'\n import { List as TList, Empty as TEmpty, LoadingDirective } from 'tdesign-vue-next'\n import { qdServiceListProps } from './props'\n import { filterSlots, useServiceLoadMore } from 'qidian-shared'\n import { useVModels } from '@vueuse/core'\n import { useConfig } from '../../config-provider/useConfig'\n\n defineOptions({\n name: 'QdServiceList'\n })\n\n type Props = QdServiceListProps<D, R, P, TP, Pag>\n\n const props = withDefaults(defineProps<Props>(), qdServiceListProps)\n const emit = defineEmits<{\n 'update:data': [Props['data']]\n }>()\n const { data } = useVModels<\n {\n data: NonNullable<Props['data']>\n },\n keyof typeof emit\n >(props, emit, { passive: true })\n\n const vLoading = LoadingDirective\n\n const { t } = useConfig('crud')\n const listRef = useTemplateRef<ListInstanceFunctions & ComponentPublicInstance>('list')\n let scrollTopRecord = 0\n\n const reProps = computed(() => {\n const {\n service,\n manual,\n transformParams,\n transformRes,\n pagination,\n onBefore,\n onAfter,\n onSuccess,\n onError,\n\n data,\n\n loadingWithData,\n\n loading: externalLoad,\n asyncLoading: externalAsyncLoad,\n scroll,\n ...listOptions\n } = props\n\n return {\n loadingWithData,\n scrollTarget: scroll?.target,\n externalLoad,\n externalAsyncLoad,\n listOptions: {\n ...listOptions,\n scroll\n } as TdListProps,\n serviceOptions: {\n service,\n manual,\n transformParams,\n transformRes,\n pagination,\n onBefore,\n onAfter,\n onSuccess,\n onError\n },\n models: {\n data\n }\n }\n })\n\n const {\n data: serviceData,\n dataList,\n firstLoad,\n manualTriggerLoad,\n loading,\n loadingMore,\n noMore,\n error,\n refresh,\n refreshAsync,\n cancel,\n loadMore,\n loadMoreAsync,\n mutate\n } = useServiceLoadMore({\n ...reProps.value.serviceOptions,\n onSuccess: (res) => {\n reProps.value.serviceOptions.onSuccess?.(res)\n\n data.value = (serviceData.value?.list || []) as D[]\n }\n })\n\n const empty = computed(() => noMore.value && !data.value.length)\n const listLoad = computed(() => {\n const { externalLoad, loadingWithData } = reProps.value\n let loading = false\n\n if (externalLoad) {\n loading = true\n } else if (firstLoad.value && data.value.length) {\n loading = loadingWithData\n }\n\n return {\n loading,\n size: 'small',\n ...props.loadingProps\n }\n })\n const listAsyncLoad = computed(() => {\n const { externalLoad, externalAsyncLoad } = reProps.value\n if (externalAsyncLoad) return externalAsyncLoad\n if (firstLoad.value || externalLoad) {\n if (data.value.length) return ''\n return 'loading'\n }\n if (loading.value) return 'loading'\n return noMore.value ? '' : 'load-more'\n })\n\n function onScroll({\n scrollTop,\n scrollBottom\n }: {\n e: Event | WheelEvent\n scrollTop: number\n scrollBottom: number\n }) {\n scrollTopRecord = scrollTop\n\n if (\n loading.value ||\n noMore.value ||\n scrollBottom > (reProps.value.listOptions.scroll?.rowHeight ?? 100)\n ) {\n return\n }\n\n loadMore()\n }\n\n function getScrollTargetEl() {\n const { scrollTarget } = reProps.value\n if (!scrollTarget) return null\n\n if (typeof scrollTarget !== 'string') return scrollTarget\n return document.querySelector(scrollTarget)\n }\n\n function onTargetScroll(evt: Event) {\n const { scrollHeight, clientHeight, scrollTop } = evt.target as HTMLElement\n const scrollBottom = scrollHeight - clientHeight - scrollTop\n onScroll({ scrollTop, scrollBottom, e: evt })\n }\n\n function addListerTarget() {\n const el = getScrollTargetEl()\n if (!el) return\n\n removeListerTarget()\n el.addEventListener('scroll', onTargetScroll)\n }\n\n function removeListerTarget() {\n const el = getScrollTargetEl()\n if (!el) return\n\n el.removeEventListener('scroll', onTargetScroll)\n }\n\n function resumeScrollTopRecord() {\n let el = getScrollTargetEl()\n if (!el) el = listRef.value?.$el\n if (!el) return\n\n const { scrollTop } = el\n const currentScrollTopRecord = scrollTopRecord\n if (currentScrollTopRecord === scrollTop) return\n\n const core = () => {\n el.scrollTo({ top: currentScrollTopRecord })\n setTimeout(() => {\n if (!el) return\n const { scrollTop, scrollHeight } = el\n if (scrollHeight < currentScrollTopRecord) return\n if (scrollTop >= currentScrollTopRecord) return\n core()\n }, 50)\n }\n\n core()\n }\n\n const expose = {\n data: serviceData,\n dataList,\n firstLoad,\n manualTriggerLoad,\n loading,\n loadingMore,\n noMore,\n error,\n refresh,\n refreshAsync,\n cancel,\n loadMore,\n loadMoreAsync,\n mutate\n } as QdServiceListInstanceFunctions<D, R, P, TP, Pag>\n\n onMounted(() => {\n addListerTarget()\n Object.assign(expose, listRef.value)\n })\n\n onActivated(() => {\n resumeScrollTopRecord()\n addListerTarget()\n })\n\n onDeactivated(() => {\n removeListerTarget()\n })\n\n onBeforeUnmount(() => {\n removeListerTarget()\n })\n\n defineExpose(expose)\n</script>\n\n<style lang=\"less\" scoped>\n .qd-service-list {\n height: 100%;\n display: flex;\n flex-direction: column;\n background-color: transparent;\n\n & > :deep(.t-list__load) {\n color: var(--td-text-color-secondary);\n background-color: transparent;\n }\n }\n</style>\n"],"names":["data","loading","scrollTop","_withDirectives","_openBlock","_createBlock","_unref","_mergeProps","_renderSlot","_createVNode","TEmpty","$slots","_withCtx","_normalizeProps","_guardReactiveProps"],"mappings":"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"}
1
+ {"version":3,"file":"index.vue2.mjs","sources":["../../../../src/components/service/list/index.vue"],"sourcesContent":["<template>\n <t-list\n ref=\"list\"\n class=\"qd-service-list\"\n v-loading=\"listLoad\"\n :async-loading=\"listAsyncLoad\"\n v-bind=\"reProps.listOptions\"\n @scroll=\"onScroll\"\n @load-more=\"loadMore\"\n >\n <slot :data=\"data\" />\n\n <slot v-if=\"!listLoad.loading && !listAsyncLoad && empty\" name=\"empty\">\n <t-empty class=\"qd-service-list__empty\" :title=\"t('emptyText')\" />\n </slot>\n\n <template v-for=\"name in filterSlots($slots, ['default', 'empty'])\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </t-list>\n</template>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n D extends TableRowData = TableRowData,\n R = unknown,\n P = ServicePageParams,\n TP = P,\n Pag extends ServicePagination = ServicePagination\n \"\n>\n import type { ComponentPublicInstance } from 'vue'\n import type { ListInstanceFunctions, TableRowData, TdListProps } from 'tdesign-vue-next'\n import type { ServicePageParams, ServicePagination } from 'qidian-shared'\n import type { QdServiceListInstanceFunctions, QdServiceListProps } from './types'\n import {\n computed,\n onActivated,\n onBeforeUnmount,\n onDeactivated,\n onMounted,\n useTemplateRef\n } from 'vue'\n import { List as TList, Empty as TEmpty, LoadingDirective } from 'tdesign-vue-next'\n import { qdServiceListProps } from './props'\n import { filterSlots, useServiceLoadMore } from 'qidian-shared'\n import { useVModels } from '@vueuse/core'\n import { useConfig } from '../../config-provider/useConfig'\n import { usePerfectScrollbar } from '../../../hooks'\n\n defineOptions({\n name: 'QdServiceList'\n })\n\n type Props = QdServiceListProps<D, R, P, TP, Pag>\n\n const props = withDefaults(defineProps<Props>(), qdServiceListProps)\n const emit = defineEmits<{\n 'update:data': [Props['data']]\n }>()\n const { data } = useVModels<\n {\n data: NonNullable<Props['data']>\n },\n keyof typeof emit\n >(props, emit, { passive: true })\n\n const vLoading = LoadingDirective\n\n const { t } = useConfig('crud')\n const listRef = useTemplateRef<ListInstanceFunctions & ComponentPublicInstance>('list')\n let scrollTopRecord = 0\n\n usePerfectScrollbar(() => listRef.value?.$el)\n\n const reProps = computed(() => {\n const {\n service,\n manual,\n transformParams,\n transformRes,\n pagination,\n onBefore,\n onAfter,\n onSuccess,\n onError,\n\n data,\n\n loadingWithData,\n\n loading: externalLoad,\n asyncLoading: externalAsyncLoad,\n scroll,\n ...listOptions\n } = props\n\n return {\n loadingWithData,\n scrollTarget: scroll?.target,\n externalLoad,\n externalAsyncLoad,\n listOptions: {\n ...listOptions,\n scroll\n } as TdListProps,\n serviceOptions: {\n service,\n manual,\n transformParams,\n transformRes,\n pagination,\n onBefore,\n onAfter,\n onSuccess,\n onError\n },\n models: {\n data\n }\n }\n })\n\n const {\n data: serviceData,\n dataList,\n firstLoad,\n manualTriggerLoad,\n loading,\n loadingMore,\n noMore,\n error,\n refresh,\n refreshAsync,\n cancel,\n loadMore,\n loadMoreAsync,\n mutate\n } = useServiceLoadMore({\n ...reProps.value.serviceOptions,\n onSuccess: (res) => {\n reProps.value.serviceOptions.onSuccess?.(res)\n\n data.value = (serviceData.value?.list || []) as D[]\n }\n })\n\n const empty = computed(() => noMore.value && !data.value.length)\n const listLoad = computed(() => {\n const { externalLoad, loadingWithData } = reProps.value\n let loading = false\n\n if (externalLoad) {\n loading = true\n } else if (firstLoad.value && data.value.length) {\n loading = loadingWithData\n }\n\n return {\n loading,\n size: 'small',\n ...props.loadingProps\n }\n })\n const listAsyncLoad = computed(() => {\n const { externalLoad, externalAsyncLoad } = reProps.value\n if (externalAsyncLoad) return externalAsyncLoad\n if (firstLoad.value || externalLoad) {\n if (data.value.length) return ''\n return 'loading'\n }\n if (loading.value) return 'loading'\n return noMore.value ? '' : 'load-more'\n })\n\n function onScroll({\n scrollTop,\n scrollBottom\n }: {\n e: Event | WheelEvent\n scrollTop: number\n scrollBottom: number\n }) {\n scrollTopRecord = scrollTop\n\n if (\n loading.value ||\n noMore.value ||\n scrollBottom > (reProps.value.listOptions.scroll?.rowHeight ?? 100)\n ) {\n return\n }\n\n loadMore()\n }\n\n function getScrollTargetEl() {\n const { scrollTarget } = reProps.value\n if (!scrollTarget) return null\n\n if (typeof scrollTarget !== 'string') return scrollTarget\n return document.querySelector(scrollTarget)\n }\n\n function onTargetScroll(evt: Event) {\n const { scrollHeight, clientHeight, scrollTop } = evt.target as HTMLElement\n const scrollBottom = scrollHeight - clientHeight - scrollTop\n onScroll({ scrollTop, scrollBottom, e: evt })\n }\n\n function addListerTarget() {\n const el = getScrollTargetEl()\n if (!el) return\n\n removeListerTarget()\n el.addEventListener('scroll', onTargetScroll)\n }\n\n function removeListerTarget() {\n const el = getScrollTargetEl()\n if (!el) return\n\n el.removeEventListener('scroll', onTargetScroll)\n }\n\n function resumeScrollTopRecord() {\n let el = getScrollTargetEl()\n if (!el) el = listRef.value?.$el\n if (!el) return\n\n const { scrollTop } = el\n const currentScrollTopRecord = scrollTopRecord\n if (currentScrollTopRecord === scrollTop) return\n\n const core = () => {\n el.scrollTo({ top: currentScrollTopRecord })\n setTimeout(() => {\n if (!el) return\n const { scrollTop, scrollHeight } = el\n if (scrollHeight < currentScrollTopRecord) return\n if (scrollTop >= currentScrollTopRecord) return\n core()\n }, 50)\n }\n\n core()\n }\n\n const expose = {\n data: serviceData,\n dataList,\n firstLoad,\n manualTriggerLoad,\n loading,\n loadingMore,\n noMore,\n error,\n refresh,\n refreshAsync,\n cancel,\n loadMore,\n loadMoreAsync,\n mutate\n } as QdServiceListInstanceFunctions<D, R, P, TP, Pag>\n\n onMounted(() => {\n addListerTarget()\n Object.assign(expose, listRef.value)\n })\n\n onActivated(() => {\n resumeScrollTopRecord()\n addListerTarget()\n })\n\n onDeactivated(() => {\n removeListerTarget()\n })\n\n onBeforeUnmount(() => {\n removeListerTarget()\n })\n\n defineExpose(expose)\n</script>\n\n<style lang=\"less\" scoped>\n .qd-service-list {\n height: 100%;\n display: flex;\n flex-direction: column;\n background-color: transparent;\n\n & > :deep(.t-list__load) {\n color: var(--td-text-color-secondary);\n background-color: transparent;\n }\n }\n</style>\n"],"names":["data","loading","scrollTop","_withDirectives","_openBlock","_createBlock","_unref","_mergeProps","_renderSlot","_createVNode","TEmpty","$slots","_withCtx","_normalizeProps","_guardReactiveProps"],"mappings":"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"}
@@ -6,8 +6,8 @@ import { qdServiceTableTreeConfig, qdServiceTableProps } from "./props.mjs";
6
6
  import { useIntersectionObserver, useMouseInElement, useVModels } from "../../../node_modules/.pnpm/@vueuse_core@14.2.0_vue@3.5.26_typescript@5.9.3_/node_modules/@vueuse/core/dist/index.mjs";
7
7
  import { LoadingIcon, AddRectangleIcon, MinusRectangleIcon } from "tdesign-icons-vue-next";
8
8
  import { useConfig } from "../../config-provider/useConfig.mjs";
9
- import { usePerfectScrollbar } from "../../../hooks/usePerfectScrollbar.mjs";
10
9
  import get from "../../../node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/get.mjs";
10
+ import { usePerfectScrollbar } from "../../../hooks/usePerfectScrollbar.mjs";
11
11
  const _sfc_main = /* @__PURE__ */ defineComponent({
12
12
  ...{
13
13
  name: "QdServiceTable"
@@ -35,7 +35,7 @@ function usePerfectScrollbar(target, options) {
35
35
  if (el === ps.value?.element) return;
36
36
  destroyInstance();
37
37
  unResize = useResizeObserver(el, debounceUpdate).stop;
38
- ps.value = new PerfectScrollbar(el, { wheelPropagation: true, ...scrollOptions });
38
+ ps.value = new PerfectScrollbar(el, { wheelPropagation: true, scrollXMarginOffset: 1, ...scrollOptions });
39
39
  listenerController = new AbortController();
40
40
  ps.value.element.addEventListener("scroll", onScroll || noop, {
41
41
  signal: listenerController.signal
@@ -67,7 +67,7 @@ function usePerfectScrollbar(target, options) {
67
67
  function update() {
68
68
  ps.value?.update();
69
69
  }
70
- const debounceUpdate = debounce(update, 100);
70
+ const debounceUpdate = debounce(update, 250);
71
71
  start();
72
72
  onActivated(() => {
73
73
  start();
@@ -1 +1 @@
1
- {"version":3,"file":"usePerfectScrollbar.mjs","sources":["../../src/hooks/usePerfectScrollbar.ts"],"sourcesContent":["import { useResizeObserver } from '@vueuse/core'\nimport { debounce } from 'lodash-es'\nimport { noop } from 'qidian-shared'\nimport PerfectScrollbar from 'perfect-scrollbar'\nimport type { MaybeRef, Ref, WatchHandle, WatchOptions, WatchSource } from 'vue'\nimport {\n computed,\n nextTick,\n onActivated,\n onBeforeUnmount,\n onDeactivated,\n ref,\n unref,\n watch\n} from 'vue'\n\nexport interface PerfectScrollbarOptions extends Omit<\n PerfectScrollbar.Options,\n 'minScrollbarLength' | 'maxScrollbarLength'\n> {\n watch?: {\n source: WatchSource\n force?: boolean\n } & WatchOptions<Readonly<boolean>>\n\n onScroll?: (event: Event) => void\n onScrollY?: (event: Event) => void\n onScrollX?: (event: Event) => void\n}\n\nexport function usePerfectScrollbar(\n target:\n | MaybeRef<HTMLElement | string | null | undefined>\n | (() => HTMLElement | string | null | undefined),\n options?: PerfectScrollbarOptions\n) {\n const { watch: watchConfig, onScroll, onScrollY, onScrollX, ...scrollOptions } = options || {}\n const ps: Ref<PerfectScrollbar | undefined> = ref()\n let unResize: (() => void) | undefined\n let unwatchSource: WatchHandle | undefined\n let unwatchCore: WatchHandle | undefined\n let listenerController: AbortController | undefined\n\n const reTarget = computed(() => {\n let t = unref(target)\n if (typeof t === 'function') t = t()\n\n if (!t) return null\n if (typeof t === 'string') return document.querySelector(t) as HTMLElement | null\n return t\n })\n\n function start() {\n unwatchCore = watch(\n reTarget,\n () => {\n createInstance()\n },\n { immediate: true, flush: 'post' }\n )\n }\n\n function createInstance() {\n const el = reTarget.value\n if (!el) {\n destroyInstance()\n return\n }\n if (el === ps.value?.element) return\n\n destroyInstance()\n unResize = useResizeObserver(el, debounceUpdate).stop\n ps.value = new PerfectScrollbar(el, { wheelPropagation: true, ...scrollOptions })\n\n listenerController = new AbortController()\n ps.value.element.addEventListener('scroll', onScroll || noop, {\n signal: listenerController.signal\n })\n ps.value.element.addEventListener('ps-scroll-y', onScrollY || noop, {\n signal: listenerController.signal\n })\n ps.value.element.addEventListener('ps-scroll-x', onScrollX || noop, {\n signal: listenerController.signal\n })\n\n if (watchConfig) {\n const { source, force, ...watchOptions } = watchConfig\n unwatchSource = watch(\n source,\n () => nextTick(force ? createInstance : debounceUpdate),\n watchOptions\n )\n }\n }\n\n function destroyInstance() {\n unResize?.()\n unwatchSource?.()\n listenerController?.abort()\n listenerController = undefined\n\n if (!ps.value) return\n\n ps.value.destroy()\n ps.value = undefined\n }\n\n function update() {\n ps.value?.update()\n }\n\n const debounceUpdate = debounce(update, 100)\n\n start()\n\n onActivated(() => {\n start()\n })\n\n onDeactivated(() => {\n unwatchCore?.()\n destroyInstance()\n })\n\n onBeforeUnmount(() => {\n unwatchCore?.()\n destroyInstance()\n })\n\n return {\n ps,\n destroy: () => {\n unwatchCore?.()\n destroyInstance()\n }\n }\n}\n"],"names":[],"mappings":";;;;;AA8BO,SAAS,oBACd,QAGA,SACA;AACA,QAAM,EAAE,OAAO,aAAa,UAAU,WAAW,WAAW,GAAG,kBAAkB,WAAW,CAAA;AAC5F,QAAM,KAAwC,IAAA;AAC9C,MAAI;AACJ,MAAI;AACJ,MAAI;AACJ,MAAI;AAEJ,QAAM,WAAW,SAAS,MAAM;AAC9B,QAAI,IAAI,MAAM,MAAM;AACpB,QAAI,OAAO,MAAM,WAAY,KAAI,EAAA;AAEjC,QAAI,CAAC,EAAG,QAAO;AACf,QAAI,OAAO,MAAM,SAAU,QAAO,SAAS,cAAc,CAAC;AAC1D,WAAO;AAAA,EACT,CAAC;AAED,WAAS,QAAQ;AACf,kBAAc;AAAA,MACZ;AAAA,MACA,MAAM;AACJ,uBAAA;AAAA,MACF;AAAA,MACA,EAAE,WAAW,MAAM,OAAO,OAAA;AAAA,IAAO;AAAA,EAErC;AAEA,WAAS,iBAAiB;AACxB,UAAM,KAAK,SAAS;AACpB,QAAI,CAAC,IAAI;AACP,sBAAA;AACA;AAAA,IACF;AACA,QAAI,OAAO,GAAG,OAAO,QAAS;AAE9B,oBAAA;AACA,eAAW,kBAAkB,IAAI,cAAc,EAAE;AACjD,OAAG,QAAQ,IAAI,iBAAiB,IAAI,EAAE,kBAAkB,MAAM,GAAG,eAAe;AAEhF,yBAAqB,IAAI,gBAAA;AACzB,OAAG,MAAM,QAAQ,iBAAiB,UAAU,YAAY,MAAM;AAAA,MAC5D,QAAQ,mBAAmB;AAAA,IAAA,CAC5B;AACD,OAAG,MAAM,QAAQ,iBAAiB,eAAe,aAAa,MAAM;AAAA,MAClE,QAAQ,mBAAmB;AAAA,IAAA,CAC5B;AACD,OAAG,MAAM,QAAQ,iBAAiB,eAAe,aAAa,MAAM;AAAA,MAClE,QAAQ,mBAAmB;AAAA,IAAA,CAC5B;AAED,QAAI,aAAa;AACf,YAAM,EAAE,QAAQ,OAAO,GAAG,iBAAiB;AAC3C,sBAAgB;AAAA,QACd;AAAA,QACA,MAAM,SAAS,QAAQ,iBAAiB,cAAc;AAAA,QACtD;AAAA,MAAA;AAAA,IAEJ;AAAA,EACF;AAEA,WAAS,kBAAkB;AACzB,eAAA;AACA,oBAAA;AACA,wBAAoB,MAAA;AACpB,yBAAqB;AAErB,QAAI,CAAC,GAAG,MAAO;AAEf,OAAG,MAAM,QAAA;AACT,OAAG,QAAQ;AAAA,EACb;AAEA,WAAS,SAAS;AAChB,OAAG,OAAO,OAAA;AAAA,EACZ;AAEA,QAAM,iBAAiB,SAAS,QAAQ,GAAG;AAE3C,QAAA;AAEA,cAAY,MAAM;AAChB,UAAA;AAAA,EACF,CAAC;AAED,gBAAc,MAAM;AAClB,kBAAA;AACA,oBAAA;AAAA,EACF,CAAC;AAED,kBAAgB,MAAM;AACpB,kBAAA;AACA,oBAAA;AAAA,EACF,CAAC;AAED,SAAO;AAAA,IACL;AAAA,IACA,SAAS,MAAM;AACb,oBAAA;AACA,sBAAA;AAAA,IACF;AAAA,EAAA;AAEJ;"}
1
+ {"version":3,"file":"usePerfectScrollbar.mjs","sources":["../../src/hooks/usePerfectScrollbar.ts"],"sourcesContent":["import { useResizeObserver } from '@vueuse/core'\nimport { debounce } from 'lodash-es'\nimport { noop } from 'qidian-shared'\nimport PerfectScrollbar from 'perfect-scrollbar'\nimport type { MaybeRef, Ref, WatchHandle, WatchOptions, WatchSource } from 'vue'\nimport {\n computed,\n nextTick,\n onActivated,\n onBeforeUnmount,\n onDeactivated,\n ref,\n unref,\n watch\n} from 'vue'\n\nexport interface PerfectScrollbarOptions extends Omit<\n PerfectScrollbar.Options,\n 'minScrollbarLength' | 'maxScrollbarLength'\n> {\n watch?: {\n source: WatchSource\n force?: boolean\n } & WatchOptions<Readonly<boolean>>\n\n onScroll?: (event: Event) => void\n onScrollY?: (event: Event) => void\n onScrollX?: (event: Event) => void\n}\n\nexport function usePerfectScrollbar(\n target:\n | MaybeRef<HTMLElement | string | null | undefined>\n | (() => HTMLElement | string | null | undefined),\n options?: PerfectScrollbarOptions\n) {\n const { watch: watchConfig, onScroll, onScrollY, onScrollX, ...scrollOptions } = options || {}\n const ps: Ref<PerfectScrollbar | undefined> = ref()\n let unResize: (() => void) | undefined\n let unwatchSource: WatchHandle | undefined\n let unwatchCore: WatchHandle | undefined\n let listenerController: AbortController | undefined\n\n const reTarget = computed(() => {\n let t = unref(target)\n if (typeof t === 'function') t = t()\n\n if (!t) return null\n if (typeof t === 'string') return document.querySelector(t) as HTMLElement | null\n return t\n })\n\n function start() {\n unwatchCore = watch(\n reTarget,\n () => {\n createInstance()\n },\n { immediate: true, flush: 'post' }\n )\n }\n\n function createInstance() {\n const el = reTarget.value\n if (!el) {\n destroyInstance()\n return\n }\n if (el === ps.value?.element) return\n\n destroyInstance()\n unResize = useResizeObserver(el, debounceUpdate).stop\n ps.value = new PerfectScrollbar(el, { wheelPropagation: true, scrollXMarginOffset: 1, ...scrollOptions })\n\n listenerController = new AbortController()\n ps.value.element.addEventListener('scroll', onScroll || noop, {\n signal: listenerController.signal\n })\n ps.value.element.addEventListener('ps-scroll-y', onScrollY || noop, {\n signal: listenerController.signal\n })\n ps.value.element.addEventListener('ps-scroll-x', onScrollX || noop, {\n signal: listenerController.signal\n })\n\n if (watchConfig) {\n const { source, force, ...watchOptions } = watchConfig\n unwatchSource = watch(\n source,\n () => nextTick(force ? createInstance : debounceUpdate),\n watchOptions\n )\n }\n }\n\n function destroyInstance() {\n unResize?.()\n unwatchSource?.()\n listenerController?.abort()\n listenerController = undefined\n\n if (!ps.value) return\n\n ps.value.destroy()\n ps.value = undefined\n }\n\n function update() {\n ps.value?.update()\n }\n\n const debounceUpdate = debounce(update, 250)\n\n start()\n\n onActivated(() => {\n start()\n })\n\n onDeactivated(() => {\n unwatchCore?.()\n destroyInstance()\n })\n\n onBeforeUnmount(() => {\n unwatchCore?.()\n destroyInstance()\n })\n\n return {\n ps,\n destroy: () => {\n unwatchCore?.()\n destroyInstance()\n }\n }\n}\n"],"names":[],"mappings":";;;;;AA8BO,SAAS,oBACd,QAGA,SACA;AACA,QAAM,EAAE,OAAO,aAAa,UAAU,WAAW,WAAW,GAAG,kBAAkB,WAAW,CAAA;AAC5F,QAAM,KAAwC,IAAA;AAC9C,MAAI;AACJ,MAAI;AACJ,MAAI;AACJ,MAAI;AAEJ,QAAM,WAAW,SAAS,MAAM;AAC9B,QAAI,IAAI,MAAM,MAAM;AACpB,QAAI,OAAO,MAAM,WAAY,KAAI,EAAA;AAEjC,QAAI,CAAC,EAAG,QAAO;AACf,QAAI,OAAO,MAAM,SAAU,QAAO,SAAS,cAAc,CAAC;AAC1D,WAAO;AAAA,EACT,CAAC;AAED,WAAS,QAAQ;AACf,kBAAc;AAAA,MACZ;AAAA,MACA,MAAM;AACJ,uBAAA;AAAA,MACF;AAAA,MACA,EAAE,WAAW,MAAM,OAAO,OAAA;AAAA,IAAO;AAAA,EAErC;AAEA,WAAS,iBAAiB;AACxB,UAAM,KAAK,SAAS;AACpB,QAAI,CAAC,IAAI;AACP,sBAAA;AACA;AAAA,IACF;AACA,QAAI,OAAO,GAAG,OAAO,QAAS;AAE9B,oBAAA;AACA,eAAW,kBAAkB,IAAI,cAAc,EAAE;AACjD,OAAG,QAAQ,IAAI,iBAAiB,IAAI,EAAE,kBAAkB,MAAM,qBAAqB,GAAG,GAAG,cAAA,CAAe;AAExG,yBAAqB,IAAI,gBAAA;AACzB,OAAG,MAAM,QAAQ,iBAAiB,UAAU,YAAY,MAAM;AAAA,MAC5D,QAAQ,mBAAmB;AAAA,IAAA,CAC5B;AACD,OAAG,MAAM,QAAQ,iBAAiB,eAAe,aAAa,MAAM;AAAA,MAClE,QAAQ,mBAAmB;AAAA,IAAA,CAC5B;AACD,OAAG,MAAM,QAAQ,iBAAiB,eAAe,aAAa,MAAM;AAAA,MAClE,QAAQ,mBAAmB;AAAA,IAAA,CAC5B;AAED,QAAI,aAAa;AACf,YAAM,EAAE,QAAQ,OAAO,GAAG,iBAAiB;AAC3C,sBAAgB;AAAA,QACd;AAAA,QACA,MAAM,SAAS,QAAQ,iBAAiB,cAAc;AAAA,QACtD;AAAA,MAAA;AAAA,IAEJ;AAAA,EACF;AAEA,WAAS,kBAAkB;AACzB,eAAA;AACA,oBAAA;AACA,wBAAoB,MAAA;AACpB,yBAAqB;AAErB,QAAI,CAAC,GAAG,MAAO;AAEf,OAAG,MAAM,QAAA;AACT,OAAG,QAAQ;AAAA,EACb;AAEA,WAAS,SAAS;AAChB,OAAG,OAAO,OAAA;AAAA,EACZ;AAEA,QAAM,iBAAiB,SAAS,QAAQ,GAAG;AAE3C,QAAA;AAEA,cAAY,MAAM;AAChB,UAAA;AAAA,EACF,CAAC;AAED,gBAAc,MAAM;AAClB,kBAAA;AACA,oBAAA;AAAA,EACF,CAAC;AAED,kBAAgB,MAAM;AACpB,kBAAA;AACA,oBAAA;AAAA,EACF,CAAC;AAED,SAAO;AAAA,IACL;AAAA,IACA,SAAS,MAAM;AACb,oBAAA;AACA,sBAAA;AAAA,IACF;AAAA,EAAA;AAEJ;"}
@@ -169,6 +169,7 @@ p {
169
169
  background-color: var(--td-bg-color-secondarycontainer);
170
170
  }
171
171
  .t-table__affixed-header-elm {
172
+ width: 100% !important;
172
173
  border-left: 0 !important;
173
174
  opacity: 1 !important;
174
175
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "qidian-vue-ui",
3
- "version": "1.2.7",
3
+ "version": "1.2.9",
4
4
  "description": "基于 TDesign 的 QiDian Vue UI 组件库",
5
5
  "author": "qidian",
6
6
  "license": "MIT",