@element-plus/nightly 0.0.20260127 → 0.0.20260129
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/attributes.json +1 -1
- package/dist/index.css +1 -1
- package/dist/index.full.js +40 -14
- package/dist/index.full.min.js +13 -13
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +15 -15
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +41 -15
- package/dist/locale/af.js +1 -1
- package/dist/locale/af.min.js +1 -1
- package/dist/locale/af.min.mjs +1 -1
- package/dist/locale/af.mjs +1 -1
- package/dist/locale/ar-eg.js +1 -1
- package/dist/locale/ar-eg.min.js +1 -1
- package/dist/locale/ar-eg.min.mjs +1 -1
- package/dist/locale/ar-eg.mjs +1 -1
- package/dist/locale/ar.js +1 -1
- package/dist/locale/ar.min.js +1 -1
- package/dist/locale/ar.min.mjs +1 -1
- package/dist/locale/ar.mjs +1 -1
- package/dist/locale/az.js +1 -1
- package/dist/locale/az.min.js +1 -1
- package/dist/locale/az.min.mjs +1 -1
- package/dist/locale/az.mjs +1 -1
- package/dist/locale/bg.js +1 -1
- package/dist/locale/bg.min.js +1 -1
- package/dist/locale/bg.min.mjs +1 -1
- package/dist/locale/bg.mjs +1 -1
- package/dist/locale/bn.js +1 -1
- package/dist/locale/bn.min.js +1 -1
- package/dist/locale/bn.min.mjs +1 -1
- package/dist/locale/bn.mjs +1 -1
- package/dist/locale/ca.js +1 -1
- package/dist/locale/ca.min.js +1 -1
- package/dist/locale/ca.min.mjs +1 -1
- package/dist/locale/ca.mjs +1 -1
- package/dist/locale/ckb.js +1 -1
- package/dist/locale/ckb.min.js +1 -1
- package/dist/locale/ckb.min.mjs +1 -1
- package/dist/locale/ckb.mjs +1 -1
- package/dist/locale/cs.js +1 -1
- package/dist/locale/cs.min.js +1 -1
- package/dist/locale/cs.min.mjs +1 -1
- package/dist/locale/cs.mjs +1 -1
- package/dist/locale/da.js +1 -1
- package/dist/locale/da.min.js +1 -1
- package/dist/locale/da.min.mjs +1 -1
- package/dist/locale/da.mjs +1 -1
- package/dist/locale/de.js +1 -1
- package/dist/locale/de.min.js +1 -1
- package/dist/locale/de.min.mjs +1 -1
- package/dist/locale/de.mjs +1 -1
- package/dist/locale/el.js +1 -1
- package/dist/locale/el.min.js +1 -1
- package/dist/locale/el.min.mjs +1 -1
- package/dist/locale/el.mjs +1 -1
- package/dist/locale/en.js +1 -1
- package/dist/locale/en.min.js +1 -1
- package/dist/locale/en.min.mjs +1 -1
- package/dist/locale/en.mjs +1 -1
- package/dist/locale/eo.js +1 -1
- package/dist/locale/eo.min.js +1 -1
- package/dist/locale/eo.min.mjs +1 -1
- package/dist/locale/eo.mjs +1 -1
- package/dist/locale/es.js +1 -1
- package/dist/locale/es.min.js +1 -1
- package/dist/locale/es.min.mjs +1 -1
- package/dist/locale/es.mjs +1 -1
- package/dist/locale/et.js +1 -1
- package/dist/locale/et.min.js +1 -1
- package/dist/locale/et.min.mjs +1 -1
- package/dist/locale/et.mjs +1 -1
- package/dist/locale/eu.js +1 -1
- package/dist/locale/eu.min.js +1 -1
- package/dist/locale/eu.min.mjs +1 -1
- package/dist/locale/eu.mjs +1 -1
- package/dist/locale/fa.js +1 -1
- package/dist/locale/fa.min.js +1 -1
- package/dist/locale/fa.min.mjs +1 -1
- package/dist/locale/fa.mjs +1 -1
- package/dist/locale/fi.js +1 -1
- package/dist/locale/fi.min.js +1 -1
- package/dist/locale/fi.min.mjs +1 -1
- package/dist/locale/fi.mjs +1 -1
- package/dist/locale/fr.js +1 -1
- package/dist/locale/fr.min.js +1 -1
- package/dist/locale/fr.min.mjs +1 -1
- package/dist/locale/fr.mjs +1 -1
- package/dist/locale/he.js +1 -1
- package/dist/locale/he.min.js +1 -1
- package/dist/locale/he.min.mjs +1 -1
- package/dist/locale/he.mjs +1 -1
- package/dist/locale/hi.js +1 -1
- package/dist/locale/hi.min.js +1 -1
- package/dist/locale/hi.min.mjs +1 -1
- package/dist/locale/hi.mjs +1 -1
- package/dist/locale/hr.js +1 -1
- package/dist/locale/hr.min.js +1 -1
- package/dist/locale/hr.min.mjs +1 -1
- package/dist/locale/hr.mjs +1 -1
- package/dist/locale/hu.js +1 -1
- package/dist/locale/hu.min.js +1 -1
- package/dist/locale/hu.min.mjs +1 -1
- package/dist/locale/hu.mjs +1 -1
- package/dist/locale/hy-am.js +1 -1
- package/dist/locale/hy-am.min.js +1 -1
- package/dist/locale/hy-am.min.mjs +1 -1
- package/dist/locale/hy-am.mjs +1 -1
- package/dist/locale/id.js +1 -1
- package/dist/locale/id.min.js +1 -1
- package/dist/locale/id.min.mjs +1 -1
- package/dist/locale/id.mjs +1 -1
- package/dist/locale/it.js +1 -1
- package/dist/locale/it.min.js +1 -1
- package/dist/locale/it.min.mjs +1 -1
- package/dist/locale/it.mjs +1 -1
- package/dist/locale/ja.js +1 -1
- package/dist/locale/ja.min.js +1 -1
- package/dist/locale/ja.min.mjs +1 -1
- package/dist/locale/ja.mjs +1 -1
- package/dist/locale/kk.js +1 -1
- package/dist/locale/kk.min.js +1 -1
- package/dist/locale/kk.min.mjs +1 -1
- package/dist/locale/kk.mjs +1 -1
- package/dist/locale/km.js +1 -1
- package/dist/locale/km.min.js +1 -1
- package/dist/locale/km.min.mjs +1 -1
- package/dist/locale/km.mjs +1 -1
- package/dist/locale/ko.js +1 -1
- package/dist/locale/ko.min.js +1 -1
- package/dist/locale/ko.min.mjs +1 -1
- package/dist/locale/ko.mjs +1 -1
- package/dist/locale/ku.js +1 -1
- package/dist/locale/ku.min.js +1 -1
- package/dist/locale/ku.min.mjs +1 -1
- package/dist/locale/ku.mjs +1 -1
- package/dist/locale/ky.js +1 -1
- package/dist/locale/ky.min.js +1 -1
- package/dist/locale/ky.min.mjs +1 -1
- package/dist/locale/ky.mjs +1 -1
- package/dist/locale/lo.js +1 -1
- package/dist/locale/lo.min.js +1 -1
- package/dist/locale/lo.min.mjs +1 -1
- package/dist/locale/lo.mjs +1 -1
- package/dist/locale/lt.js +1 -1
- package/dist/locale/lt.min.js +1 -1
- package/dist/locale/lt.min.mjs +1 -1
- package/dist/locale/lt.mjs +1 -1
- package/dist/locale/lv.js +1 -1
- package/dist/locale/lv.min.js +1 -1
- package/dist/locale/lv.min.mjs +1 -1
- package/dist/locale/lv.mjs +1 -1
- package/dist/locale/mg.js +1 -1
- package/dist/locale/mg.min.js +1 -1
- package/dist/locale/mg.min.mjs +1 -1
- package/dist/locale/mg.mjs +1 -1
- package/dist/locale/mn.js +1 -1
- package/dist/locale/mn.min.js +1 -1
- package/dist/locale/mn.min.mjs +1 -1
- package/dist/locale/mn.mjs +1 -1
- package/dist/locale/ms.js +1 -1
- package/dist/locale/ms.min.js +1 -1
- package/dist/locale/ms.min.mjs +1 -1
- package/dist/locale/ms.mjs +1 -1
- package/dist/locale/my.js +1 -1
- package/dist/locale/my.min.js +1 -1
- package/dist/locale/my.min.mjs +1 -1
- package/dist/locale/my.mjs +1 -1
- package/dist/locale/nb-no.js +1 -1
- package/dist/locale/nb-no.min.js +1 -1
- package/dist/locale/nb-no.min.mjs +1 -1
- package/dist/locale/nb-no.mjs +1 -1
- package/dist/locale/nl.js +1 -1
- package/dist/locale/nl.min.js +1 -1
- package/dist/locale/nl.min.mjs +1 -1
- package/dist/locale/nl.mjs +1 -1
- package/dist/locale/no.js +1 -1
- package/dist/locale/no.min.js +1 -1
- package/dist/locale/no.min.mjs +1 -1
- package/dist/locale/no.mjs +1 -1
- package/dist/locale/pa.js +1 -1
- package/dist/locale/pa.min.js +1 -1
- package/dist/locale/pa.min.mjs +1 -1
- package/dist/locale/pa.mjs +1 -1
- package/dist/locale/pl.js +1 -1
- package/dist/locale/pl.min.js +1 -1
- package/dist/locale/pl.min.mjs +1 -1
- package/dist/locale/pl.mjs +1 -1
- package/dist/locale/pt-br.js +1 -1
- package/dist/locale/pt-br.min.js +1 -1
- package/dist/locale/pt-br.min.mjs +1 -1
- package/dist/locale/pt-br.mjs +1 -1
- package/dist/locale/pt.js +1 -1
- package/dist/locale/pt.min.js +1 -1
- package/dist/locale/pt.min.mjs +1 -1
- package/dist/locale/pt.mjs +1 -1
- package/dist/locale/ro.js +1 -1
- package/dist/locale/ro.min.js +1 -1
- package/dist/locale/ro.min.mjs +1 -1
- package/dist/locale/ro.mjs +1 -1
- package/dist/locale/ru.js +1 -1
- package/dist/locale/ru.min.js +1 -1
- package/dist/locale/ru.min.mjs +1 -1
- package/dist/locale/ru.mjs +1 -1
- package/dist/locale/sk.js +1 -1
- package/dist/locale/sk.min.js +1 -1
- package/dist/locale/sk.min.mjs +1 -1
- package/dist/locale/sk.mjs +1 -1
- package/dist/locale/sl.js +1 -1
- package/dist/locale/sl.min.js +1 -1
- package/dist/locale/sl.min.mjs +1 -1
- package/dist/locale/sl.mjs +1 -1
- package/dist/locale/sr.js +1 -1
- package/dist/locale/sr.min.js +1 -1
- package/dist/locale/sr.min.mjs +1 -1
- package/dist/locale/sr.mjs +1 -1
- package/dist/locale/sv.js +1 -1
- package/dist/locale/sv.min.js +1 -1
- package/dist/locale/sv.min.mjs +1 -1
- package/dist/locale/sv.mjs +1 -1
- package/dist/locale/sw.js +1 -1
- package/dist/locale/sw.min.js +1 -1
- package/dist/locale/sw.min.mjs +1 -1
- package/dist/locale/sw.mjs +1 -1
- package/dist/locale/ta.js +1 -1
- package/dist/locale/ta.min.js +1 -1
- package/dist/locale/ta.min.mjs +1 -1
- package/dist/locale/ta.mjs +1 -1
- package/dist/locale/te.js +1 -1
- package/dist/locale/te.min.js +1 -1
- package/dist/locale/te.min.mjs +1 -1
- package/dist/locale/te.mjs +1 -1
- package/dist/locale/th.js +1 -1
- package/dist/locale/th.min.js +1 -1
- package/dist/locale/th.min.mjs +1 -1
- package/dist/locale/th.mjs +1 -1
- package/dist/locale/tk.js +1 -1
- package/dist/locale/tk.min.js +1 -1
- package/dist/locale/tk.min.mjs +1 -1
- package/dist/locale/tk.mjs +1 -1
- package/dist/locale/tr.js +1 -1
- package/dist/locale/tr.min.js +1 -1
- package/dist/locale/tr.min.mjs +1 -1
- package/dist/locale/tr.mjs +1 -1
- package/dist/locale/ug-cn.js +1 -1
- package/dist/locale/ug-cn.min.js +1 -1
- package/dist/locale/ug-cn.min.mjs +1 -1
- package/dist/locale/ug-cn.mjs +1 -1
- package/dist/locale/uk.js +1 -1
- package/dist/locale/uk.min.js +1 -1
- package/dist/locale/uk.min.mjs +1 -1
- package/dist/locale/uk.mjs +1 -1
- package/dist/locale/uz-uz.js +1 -1
- package/dist/locale/uz-uz.min.js +1 -1
- package/dist/locale/uz-uz.min.mjs +1 -1
- package/dist/locale/uz-uz.mjs +1 -1
- package/dist/locale/vi.js +1 -1
- package/dist/locale/vi.min.js +1 -1
- package/dist/locale/vi.min.mjs +1 -1
- package/dist/locale/vi.mjs +1 -1
- package/dist/locale/zh-cn.js +1 -1
- package/dist/locale/zh-cn.min.js +1 -1
- package/dist/locale/zh-cn.min.mjs +1 -1
- package/dist/locale/zh-cn.mjs +1 -1
- package/dist/locale/zh-hk.js +1 -1
- package/dist/locale/zh-hk.min.js +1 -1
- package/dist/locale/zh-hk.min.mjs +1 -1
- package/dist/locale/zh-hk.mjs +1 -1
- package/dist/locale/zh-mo.js +1 -1
- package/dist/locale/zh-mo.min.js +1 -1
- package/dist/locale/zh-mo.min.mjs +1 -1
- package/dist/locale/zh-mo.mjs +1 -1
- package/dist/locale/zh-tw.js +1 -1
- package/dist/locale/zh-tw.min.js +1 -1
- package/dist/locale/zh-tw.min.mjs +1 -1
- package/dist/locale/zh-tw.mjs +1 -1
- package/es/components/affix/src/affix.vue2.mjs +7 -1
- package/es/components/affix/src/affix.vue2.mjs.map +1 -1
- package/es/components/splitter/src/split-panel.vue2.mjs +0 -1
- package/es/components/splitter/src/split-panel.vue2.mjs.map +1 -1
- package/es/components/splitter/src/type.d.ts +0 -1
- package/es/components/splitter/src/type.mjs.map +1 -1
- package/es/components/table/src/config.d.ts +2 -1
- package/es/components/table/src/config.mjs +10 -2
- package/es/components/table/src/config.mjs.map +1 -1
- package/es/components/table/src/store/expand.mjs +13 -9
- package/es/components/table/src/store/expand.mjs.map +1 -1
- package/es/components/table/src/store/helper.d.ts +11 -0
- package/es/components/table/src/store/helper.mjs +1 -0
- package/es/components/table/src/store/helper.mjs.map +1 -1
- package/es/components/table/src/store/index.d.ts +22 -0
- package/es/components/table/src/store/watcher.d.ts +1 -0
- package/es/components/table/src/store/watcher.mjs +2 -0
- package/es/components/table/src/store/watcher.mjs.map +1 -1
- package/es/components/table/src/table/defaults.d.ts +7 -0
- package/es/components/table/src/table/defaults.mjs +6 -0
- package/es/components/table/src/table/defaults.mjs.map +1 -1
- package/es/components/table/src/table.vue.d.ts +17 -0
- package/es/components/time-picker/index.d.ts +7 -0
- package/es/components/time-picker/index.mjs.map +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/affix/src/affix.vue2.js +6 -0
- package/lib/components/affix/src/affix.vue2.js.map +1 -1
- package/lib/components/splitter/src/split-panel.vue2.js +0 -1
- package/lib/components/splitter/src/split-panel.vue2.js.map +1 -1
- package/lib/components/splitter/src/type.d.ts +0 -1
- package/lib/components/splitter/src/type.js.map +1 -1
- package/lib/components/table/src/config.d.ts +2 -1
- package/lib/components/table/src/config.js +10 -2
- package/lib/components/table/src/config.js.map +1 -1
- package/lib/components/table/src/store/expand.js +13 -9
- package/lib/components/table/src/store/expand.js.map +1 -1
- package/lib/components/table/src/store/helper.d.ts +11 -0
- package/lib/components/table/src/store/helper.js +1 -0
- package/lib/components/table/src/store/helper.js.map +1 -1
- package/lib/components/table/src/store/index.d.ts +22 -0
- package/lib/components/table/src/store/watcher.d.ts +1 -0
- package/lib/components/table/src/store/watcher.js +2 -0
- package/lib/components/table/src/store/watcher.js.map +1 -1
- package/lib/components/table/src/table/defaults.d.ts +7 -0
- package/lib/components/table/src/table/defaults.js +6 -0
- package/lib/components/table/src/table/defaults.js.map +1 -1
- package/lib/components/table/src/table.vue.d.ts +17 -0
- package/lib/components/time-picker/index.d.ts +7 -0
- package/lib/components/time-picker/index.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
- package/tags.json +1 -1
- package/theme-chalk/el-card.css +1 -1
- package/theme-chalk/el-table.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/card.scss +1 -1
- package/theme-chalk/src/table.scss +5 -0
- package/web-types.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.mjs","sources":["../../../../../../../packages/components/table/src/table/defaults.ts"],"sourcesContent":["import { useSizeProp } from '@element-plus/hooks'\n\nimport type {\n CSSProperties,\n ComponentInternalInstance,\n PropType,\n Ref,\n StyleValue,\n VNode,\n} from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { Nullable } from '@element-plus/utils'\nimport type { Store } from '../store'\nimport type { TableColumnCtx } from '../table-column/defaults'\nimport type TableLayout from '../table-layout'\nimport type {\n TableOverflowTooltipFormatter,\n TableOverflowTooltipOptions,\n} from '../util'\n\ntype DefaultRow = Record<PropertyKey, any>\n\ninterface TableRefs {\n tableWrapper: HTMLElement\n headerWrapper: HTMLElement\n footerWrapper: HTMLElement\n fixedBodyWrapper: HTMLElement\n rightFixedBodyWrapper: HTMLElement\n bodyWrapper: HTMLElement\n appendWrapper: HTMLElement\n [key: string]: any\n}\n\ninterface TableState {\n isGroup: Ref<boolean>\n resizeState: Ref<{\n width: any\n height: any\n }>\n doLayout: () => void\n debouncedUpdateLayout: () => void\n}\n\ninterface TreeProps {\n hasChildren?: string\n children?: string\n checkStrictly?: boolean\n}\n\ntype HoverState<T extends DefaultRow> = Nullable<{\n cell: HTMLElement\n column: TableColumnCtx<T>\n row: T\n}>\n\ntype RIS<T extends DefaultRow> = {\n row: T\n $index: number\n store: Store<T>\n expanded: boolean\n}\n\ntype RenderExpanded<T extends DefaultRow> = ({\n row,\n $index,\n store,\n expanded,\n}: RIS<T>) => VNode[] | undefined\n\ntype SummaryMethod<T extends DefaultRow> = (data: {\n columns: TableColumnCtx<T>[]\n data: T[]\n}) => (string | VNode)[]\n\ninterface Table<T extends DefaultRow = any> extends ComponentInternalInstance {\n $ready: boolean\n hoverState?: HoverState<T> | null\n renderExpanded: RenderExpanded<T>\n store: Store<T>\n layout: TableLayout<T>\n refs: TableRefs\n tableId: string\n state: TableState\n}\n\ntype ColumnCls<T> = string | ((data: { row: T; rowIndex: number }) => string)\ntype ColumnStyle<T> =\n | CSSProperties\n | ((data: { row: T; rowIndex: number }) => CSSProperties)\ntype CellCls<T extends DefaultRow> =\n | string\n | ((data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) => string)\ntype CellStyle<T extends DefaultRow> =\n | CSSProperties\n | ((data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) => CSSProperties)\ntype Layout = 'fixed' | 'auto'\ninterface TableProps<T extends DefaultRow> {\n data: T[]\n size?: ComponentSize\n width?: string | number\n height?: string | number\n maxHeight?: string | number\n fit?: boolean\n stripe?: boolean\n border?: boolean\n rowKey?: string | ((row: T) => string)\n context?: Table<T>\n showHeader?: boolean\n showSummary?: boolean\n sumText?: string\n summaryMethod?: SummaryMethod<T>\n rowClassName?: ColumnCls<T>\n rowStyle?: ColumnStyle<T>\n cellClassName?: CellCls<T>\n cellStyle?: CellStyle<T>\n headerRowClassName?: ColumnCls<T>\n headerRowStyle?: ColumnStyle<T>\n headerCellClassName?: CellCls<T>\n headerCellStyle?: CellStyle<T>\n highlightCurrentRow?: boolean\n currentRowKey?: string | number\n emptyText?: string\n expandRowKeys?: Array<string>\n defaultExpandAll?: boolean\n defaultSort?: Sort\n tooltipEffect?: string\n tooltipOptions?: TableOverflowTooltipOptions\n spanMethod?: (data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) =>\n | number[]\n | {\n rowspan: number\n colspan: number\n }\n | undefined\n selectOnIndeterminate?: boolean\n indent?: number\n treeProps?: TreeProps\n lazy?: boolean\n load?: (row: T, treeNode: TreeNode, resolve: (data: T[]) => void) => void\n className?: string\n style?: StyleValue\n tableLayout?: Layout\n scrollbarAlwaysOn?: boolean\n flexible?: boolean\n showOverflowTooltip?: boolean | TableOverflowTooltipOptions\n tooltipFormatter?: TableOverflowTooltipFormatter<T>\n appendFilterPanelTo?: string\n scrollbarTabindex?: number | string\n nativeScrollbar?: boolean\n}\n\ntype TableTooltipData<T extends DefaultRow> = Parameters<\n TableOverflowTooltipFormatter<T>\n>[0]\ntype TableSortOrder = 'ascending' | 'descending'\n\ninterface Sort {\n prop: string\n order: TableSortOrder\n init?: any\n silent?: any\n}\n\ninterface Filter<T extends DefaultRow> {\n column: TableColumnCtx<T>\n values: string[]\n silent: any\n}\n\ninterface TreeNode {\n expanded?: boolean\n loading?: boolean\n noLazyChildren?: boolean\n indent?: number\n level?: number\n display?: boolean\n}\n\ninterface RenderRowData<T extends DefaultRow> {\n store: Store<T>\n _self: Table<T>\n column: TableColumnCtx<T>\n row: T\n $index: number\n cellIndex: number\n treeNode?: TreeNode\n expanded: boolean\n}\n\nexport default {\n /**\n * @description table data\n */\n data: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n /**\n * @description size of Table\n */\n size: useSizeProp,\n width: [String, Number],\n /**\n * @description table's height. By default it has an `auto` height. If its value is a number, the height is measured in pixels; if its value is a string, the value will be assigned to element's style.height, the height is affected by external styles\n */\n height: [String, Number],\n /**\n * @description table's max-height. The legal value is a number or the height in px\n */\n maxHeight: [String, Number],\n /**\n * @description whether width of column automatically fits its container\n */\n fit: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether Table is striped\n */\n stripe: Boolean,\n /**\n * @description whether Table has vertical border\n */\n border: Boolean,\n /**\n * @description key of row data, used for optimizing rendering. Required if `reserve-selection` is on or display tree data. When its type is String, multi-level access is supported, e.g. `user.info.id`, but `user.info[0].id` is not supported, in which case `Function` should be used\n */\n rowKey: [String, Function] as PropType<TableProps<any>['rowKey']>,\n /**\n * @description whether Table header is visible\n */\n showHeader: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to display a summary row\n */\n showSummary: Boolean,\n /**\n * @description displayed text for the first column of summary row\n */\n sumText: String,\n /**\n * @description custom summary method\n */\n summaryMethod: Function as PropType<TableProps<any>['summaryMethod']>,\n /**\n * @description function that returns custom class names for a row, or a string assigning class names for every row\n */\n rowClassName: [String, Function] as PropType<TableProps<any>['rowClassName']>,\n /**\n * @description function that returns custom style for a row, or an object assigning custom style for every row\n */\n rowStyle: [Object, Function] as PropType<TableProps<any>['rowStyle']>,\n /**\n * @description function that returns custom class names for a cell, or a string assigning class names for every cell\n */\n cellClassName: [String, Function] as PropType<\n TableProps<any>['cellClassName']\n >,\n /**\n * @description function that returns custom style for a cell, or an object assigning custom style for every cell\n */\n cellStyle: [Object, Function] as PropType<TableProps<any>['cellStyle']>,\n /**\n * @description function that returns custom class names for a row in table header, or a string assigning class names for every row in table header\n */\n headerRowClassName: [String, Function] as PropType<\n TableProps<any>['headerRowClassName']\n >,\n /**\n * @description function that returns custom style for a row in table header, or an object assigning custom style for every row in table header\n */\n headerRowStyle: [Object, Function] as PropType<\n TableProps<any>['headerRowStyle']\n >,\n /**\n * @description function that returns custom class names for a cell in table header, or a string assigning class names for every cell in table header\n */\n headerCellClassName: [String, Function] as PropType<\n TableProps<any>['headerCellClassName']\n >,\n /**\n * @description function that returns custom style for a cell in table header, or an object assigning custom style for every cell in table header\n */\n headerCellStyle: [Object, Function] as PropType<\n TableProps<any>['headerCellStyle']\n >,\n /**\n * @description whether current row is highlighted\n */\n highlightCurrentRow: Boolean,\n /**\n * @description key of current row, a set only prop\n */\n currentRowKey: [String, Number],\n /**\n * @description displayed text when data is empty. You can customize this area with `#empty`\n */\n emptyText: String,\n /**\n * @description set expanded rows by this prop, prop's value is the keys of expand rows, you should set row-key before using this prop\n */\n expandRowKeys: Array as PropType<TableProps<any>['expandRowKeys']>,\n /**\n * @description whether expand all rows by default, works when the table has a column type=\"expand\" or contains tree structure data\n */\n defaultExpandAll: Boolean,\n /**\n * @description set the default sort column and order. property `prop` is used to set default sort column, property `order` is used to set default sort order\n */\n defaultSort: Object as PropType<TableProps<any>['defaultSort']>,\n /**\n * @description the `effect` of the overflow tooltip\n */\n tooltipEffect: String,\n /**\n * @description the options for the overflow tooltip, [see the following tooltip component](tooltip.html#attributes)\n */\n tooltipOptions: Object as PropType<TableProps<any>['tooltipOptions']>,\n /**\n * @description method that returns rowspan and colspan\n */\n spanMethod: Function as PropType<TableProps<any>['spanMethod']>,\n /**\n * @description controls the behavior of master checkbox in multi-select tables when only some rows are selected (but not all). If true, all rows will be selected, else deselected\n */\n selectOnIndeterminate: {\n type: Boolean,\n default: true,\n },\n /**\n * @description horizontal indentation of tree data\n */\n indent: {\n type: Number,\n default: 16,\n },\n /**\n * @description configuration for rendering nested data\n */\n treeProps: {\n type: Object as PropType<TableProps<any>['treeProps']>,\n default: () => {\n return {\n hasChildren: 'hasChildren',\n children: 'children',\n checkStrictly: false,\n }\n },\n },\n /**\n * @description whether to lazy loading data\n */\n lazy: Boolean,\n /**\n * @description method for loading child row data, only works when `lazy` is true\n */\n load: Function as PropType<TableProps<any>['load']>,\n style: {\n type: [String, Object, Array] as PropType<TableProps<any>['style']>,\n default: () => ({}),\n },\n className: {\n type: String,\n default: '',\n },\n /**\n * @description sets the algorithm used to lay out table cells, rows, and columns\n */\n tableLayout: {\n type: String as PropType<Layout>,\n default: 'fixed',\n },\n /**\n * @description always show scrollbar\n */\n scrollbarAlwaysOn: Boolean,\n /**\n * @description ensure main axis minimum-size doesn't follow the content\n */\n flexible: Boolean,\n /**\n * @description whether to hide extra content and show them in a tooltip when hovering on the cell.It will affect all the table columns\n */\n showOverflowTooltip: [Boolean, Object] as PropType<\n TableProps<any>['showOverflowTooltip']\n >,\n /**\n * @description function that formats cell tooltip content, works when `show-overflow-tooltip` is `true`\n */\n tooltipFormatter: Function as PropType<TableProps<any>['tooltipFormatter']>,\n appendFilterPanelTo: String,\n scrollbarTabindex: {\n type: [Number, String],\n default: undefined,\n },\n /**\n * @description whether to allow drag the last column\n */\n allowDragLastColumn: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to preserve expanded row content in DOM when collapsed\n */\n preserveExpandedContent: Boolean,\n /**\n * @description whether to use native scrollbars\n */\n nativeScrollbar: Boolean,\n}\nexport type {\n SummaryMethod,\n Table,\n TableProps,\n TableRefs,\n ColumnCls,\n ColumnStyle,\n CellCls,\n CellStyle,\n DefaultRow,\n TreeNode,\n RenderRowData,\n Sort,\n Filter,\n TableColumnCtx,\n TreeProps,\n TableTooltipData,\n TableSortOrder,\n RenderExpanded,\n}\n"],"names":[],"mappings":";;AA4MA,mBAAe;AAAA;AAAA;AAAA;AAAA,EAIb,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA;AAAA;AAAA,EAIA,IAAA,EAAM,WAAA;AAAA,EACN,KAAA,EAAO,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA;AAAA;AAAA;AAAA,EAItB,MAAA,EAAQ,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA;AAAA;AAAA;AAAA,EAIvB,SAAA,EAAW,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA;AAAA;AAAA;AAAA,EAI1B,GAAA,EAAK;AAAA,IACH,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,MAAA,EAAQ,OAAA;AAAA;AAAA;AAAA;AAAA,EAIR,MAAA,EAAQ,OAAA;AAAA;AAAA;AAAA;AAAA,EAIR,MAAA,EAAQ,CAAC,MAAA,EAAQ,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA,EAIzB,UAAA,EAAY;AAAA,IACV,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,WAAA,EAAa,OAAA;AAAA;AAAA;AAAA;AAAA,EAIb,OAAA,EAAS,MAAA;AAAA;AAAA;AAAA;AAAA,EAIT,aAAA,EAAe,QAAA;AAAA;AAAA;AAAA;AAAA,EAIf,YAAA,EAAc,CAAC,MAAA,EAAQ,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA,EAI/B,QAAA,EAAU,CAAC,MAAA,EAAQ,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA,EAI3B,aAAA,EAAe,CAAC,MAAA,EAAQ,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA,EAMhC,SAAA,EAAW,CAAC,MAAA,EAAQ,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA,EAI5B,kBAAA,EAAoB,CAAC,MAAA,EAAQ,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA,EAMrC,cAAA,EAAgB,CAAC,MAAA,EAAQ,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA,EAMjC,mBAAA,EAAqB,CAAC,MAAA,EAAQ,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA,EAMtC,eAAA,EAAiB,CAAC,MAAA,EAAQ,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA,EAMlC,mBAAA,EAAqB,OAAA;AAAA;AAAA;AAAA;AAAA,EAIrB,aAAA,EAAe,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA;AAAA;AAAA;AAAA,EAI9B,SAAA,EAAW,MAAA;AAAA;AAAA;AAAA;AAAA,EAIX,aAAA,EAAe,KAAA;AAAA;AAAA;AAAA;AAAA,EAIf,gBAAA,EAAkB,OAAA;AAAA;AAAA;AAAA;AAAA,EAIlB,WAAA,EAAa,MAAA;AAAA;AAAA;AAAA;AAAA,EAIb,aAAA,EAAe,MAAA;AAAA;AAAA;AAAA;AAAA,EAIf,cAAA,EAAgB,MAAA;AAAA;AAAA;AAAA;AAAA,EAIhB,UAAA,EAAY,QAAA;AAAA;AAAA;AAAA;AAAA,EAIZ,qBAAA,EAAuB;AAAA,IACrB,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,SAAA,EAAW;AAAA,IACT,IAAA,EAAM,MAAA;AAAA,IACN,SAAS,MAAM;AACb,MAAA,OAAO;AAAA,QACL,WAAA,EAAa,aAAA;AAAA,QACb,QAAA,EAAU,UAAA;AAAA,QACV,aAAA,EAAe;AAAA,OACjB;AAAA,IACF;AAAA,GACF;AAAA;AAAA;AAAA;AAAA,EAIA,IAAA,EAAM,OAAA;AAAA;AAAA;AAAA;AAAA,EAIN,IAAA,EAAM,QAAA;AAAA,EACN,KAAA,EAAO;AAAA,IACL,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAA,EAAQ,KAAK,CAAA;AAAA,IAC5B,OAAA,EAAS,OAAO,EAAC;AAAA,GACnB;AAAA,EACA,SAAA,EAAW;AAAA,IACT,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,WAAA,EAAa;AAAA,IACX,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAA,EAAmB,OAAA;AAAA;AAAA;AAAA;AAAA,EAInB,QAAA,EAAU,OAAA;AAAA;AAAA;AAAA;AAAA,EAIV,mBAAA,EAAqB,CAAC,OAAA,EAAS,MAAM,CAAA;AAAA;AAAA;AAAA;AAAA,EAMrC,gBAAA,EAAkB,QAAA;AAAA,EAClB,mBAAA,EAAqB,MAAA;AAAA,EACrB,iBAAA,EAAmB;AAAA,IACjB,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA,IACrB,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,mBAAA,EAAqB;AAAA,IACnB,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,uBAAA,EAAyB,OAAA;AAAA;AAAA;AAAA;AAAA,EAIzB,eAAA,EAAiB;AACnB,CAAA;;;;"}
|
|
1
|
+
{"version":3,"file":"defaults.mjs","sources":["../../../../../../../packages/components/table/src/table/defaults.ts"],"sourcesContent":["import { useSizeProp } from '@element-plus/hooks'\n\nimport type {\n CSSProperties,\n ComponentInternalInstance,\n PropType,\n Ref,\n StyleValue,\n VNode,\n} from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { Nullable } from '@element-plus/utils'\nimport type { Store } from '../store'\nimport type { TableColumnCtx } from '../table-column/defaults'\nimport type TableLayout from '../table-layout'\nimport type {\n TableOverflowTooltipFormatter,\n TableOverflowTooltipOptions,\n} from '../util'\n\ntype DefaultRow = Record<PropertyKey, any>\n\ninterface TableRefs {\n tableWrapper: HTMLElement\n headerWrapper: HTMLElement\n footerWrapper: HTMLElement\n fixedBodyWrapper: HTMLElement\n rightFixedBodyWrapper: HTMLElement\n bodyWrapper: HTMLElement\n appendWrapper: HTMLElement\n [key: string]: any\n}\n\ninterface TableState {\n isGroup: Ref<boolean>\n resizeState: Ref<{\n width: any\n height: any\n }>\n doLayout: () => void\n debouncedUpdateLayout: () => void\n}\n\ninterface TreeProps {\n hasChildren?: string\n children?: string\n checkStrictly?: boolean\n}\n\ntype HoverState<T extends DefaultRow> = Nullable<{\n cell: HTMLElement\n column: TableColumnCtx<T>\n row: T\n}>\n\ntype RIS<T extends DefaultRow> = {\n row: T\n $index: number\n store: Store<T>\n expanded: boolean\n}\n\ntype RenderExpanded<T extends DefaultRow> = ({\n row,\n $index,\n store,\n expanded,\n}: RIS<T>) => VNode[] | undefined\n\ntype SummaryMethod<T extends DefaultRow> = (data: {\n columns: TableColumnCtx<T>[]\n data: T[]\n}) => (string | VNode)[]\n\ninterface Table<T extends DefaultRow = any> extends ComponentInternalInstance {\n $ready: boolean\n hoverState?: HoverState<T> | null\n renderExpanded: RenderExpanded<T>\n store: Store<T>\n layout: TableLayout<T>\n refs: TableRefs\n tableId: string\n state: TableState\n}\n\ntype ColumnCls<T> = string | ((data: { row: T; rowIndex: number }) => string)\ntype ColumnStyle<T> =\n | CSSProperties\n | ((data: { row: T; rowIndex: number }) => CSSProperties)\ntype CellCls<T extends DefaultRow> =\n | string\n | ((data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) => string)\ntype CellStyle<T extends DefaultRow> =\n | CSSProperties\n | ((data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) => CSSProperties)\ntype Layout = 'fixed' | 'auto'\ninterface TableProps<T extends DefaultRow> {\n data: T[]\n size?: ComponentSize\n width?: string | number\n height?: string | number\n maxHeight?: string | number\n fit?: boolean\n stripe?: boolean\n border?: boolean\n rowKey?: string | ((row: T) => string)\n context?: Table<T>\n showHeader?: boolean\n showSummary?: boolean\n sumText?: string\n summaryMethod?: SummaryMethod<T>\n rowClassName?: ColumnCls<T>\n rowStyle?: ColumnStyle<T>\n cellClassName?: CellCls<T>\n cellStyle?: CellStyle<T>\n headerRowClassName?: ColumnCls<T>\n headerRowStyle?: ColumnStyle<T>\n headerCellClassName?: CellCls<T>\n headerCellStyle?: CellStyle<T>\n highlightCurrentRow?: boolean\n currentRowKey?: string | number\n emptyText?: string\n expandRowKeys?: Array<string>\n defaultExpandAll?: boolean\n rowExpandable?: (row: T, index: number) => boolean\n defaultSort?: Sort\n tooltipEffect?: string\n tooltipOptions?: TableOverflowTooltipOptions\n spanMethod?: (data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) =>\n | number[]\n | {\n rowspan: number\n colspan: number\n }\n | undefined\n selectOnIndeterminate?: boolean\n indent?: number\n treeProps?: TreeProps\n lazy?: boolean\n load?: (row: T, treeNode: TreeNode, resolve: (data: T[]) => void) => void\n className?: string\n style?: StyleValue\n tableLayout?: Layout\n scrollbarAlwaysOn?: boolean\n flexible?: boolean\n showOverflowTooltip?: boolean | TableOverflowTooltipOptions\n tooltipFormatter?: TableOverflowTooltipFormatter<T>\n appendFilterPanelTo?: string\n scrollbarTabindex?: number | string\n nativeScrollbar?: boolean\n}\n\ntype TableTooltipData<T extends DefaultRow> = Parameters<\n TableOverflowTooltipFormatter<T>\n>[0]\ntype TableSortOrder = 'ascending' | 'descending'\n\ninterface Sort {\n prop: string\n order: TableSortOrder\n init?: any\n silent?: any\n}\n\ninterface Filter<T extends DefaultRow> {\n column: TableColumnCtx<T>\n values: string[]\n silent: any\n}\n\ninterface TreeNode {\n expanded?: boolean\n loading?: boolean\n noLazyChildren?: boolean\n indent?: number\n level?: number\n display?: boolean\n}\n\ninterface RenderRowData<T extends DefaultRow> {\n store: Store<T>\n _self: Table<T>\n column: TableColumnCtx<T>\n row: T\n $index: number\n cellIndex: number\n treeNode?: TreeNode\n expanded: boolean\n}\n\nexport default {\n /**\n * @description table data\n */\n data: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n /**\n * @description size of Table\n */\n size: useSizeProp,\n width: [String, Number],\n /**\n * @description table's height. By default it has an `auto` height. If its value is a number, the height is measured in pixels; if its value is a string, the value will be assigned to element's style.height, the height is affected by external styles\n */\n height: [String, Number],\n /**\n * @description table's max-height. The legal value is a number or the height in px\n */\n maxHeight: [String, Number],\n /**\n * @description whether width of column automatically fits its container\n */\n fit: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether Table is striped\n */\n stripe: Boolean,\n /**\n * @description whether Table has vertical border\n */\n border: Boolean,\n /**\n * @description key of row data, used for optimizing rendering. Required if `reserve-selection` is on or display tree data. When its type is String, multi-level access is supported, e.g. `user.info.id`, but `user.info[0].id` is not supported, in which case `Function` should be used\n */\n rowKey: [String, Function] as PropType<TableProps<any>['rowKey']>,\n /**\n * @description whether Table header is visible\n */\n showHeader: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to display a summary row\n */\n showSummary: Boolean,\n /**\n * @description displayed text for the first column of summary row\n */\n sumText: String,\n /**\n * @description custom summary method\n */\n summaryMethod: Function as PropType<TableProps<any>['summaryMethod']>,\n /**\n * @description function that returns custom class names for a row, or a string assigning class names for every row\n */\n rowClassName: [String, Function] as PropType<TableProps<any>['rowClassName']>,\n /**\n * @description function that returns custom style for a row, or an object assigning custom style for every row\n */\n rowStyle: [Object, Function] as PropType<TableProps<any>['rowStyle']>,\n /**\n * @description function that returns custom class names for a cell, or a string assigning class names for every cell\n */\n cellClassName: [String, Function] as PropType<\n TableProps<any>['cellClassName']\n >,\n /**\n * @description function that returns custom style for a cell, or an object assigning custom style for every cell\n */\n cellStyle: [Object, Function] as PropType<TableProps<any>['cellStyle']>,\n /**\n * @description function that returns custom class names for a row in table header, or a string assigning class names for every row in table header\n */\n headerRowClassName: [String, Function] as PropType<\n TableProps<any>['headerRowClassName']\n >,\n /**\n * @description function that returns custom style for a row in table header, or an object assigning custom style for every row in table header\n */\n headerRowStyle: [Object, Function] as PropType<\n TableProps<any>['headerRowStyle']\n >,\n /**\n * @description function that returns custom class names for a cell in table header, or a string assigning class names for every cell in table header\n */\n headerCellClassName: [String, Function] as PropType<\n TableProps<any>['headerCellClassName']\n >,\n /**\n * @description function that returns custom style for a cell in table header, or an object assigning custom style for every cell in table header\n */\n headerCellStyle: [Object, Function] as PropType<\n TableProps<any>['headerCellStyle']\n >,\n /**\n * @description whether current row is highlighted\n */\n highlightCurrentRow: Boolean,\n /**\n * @description key of current row, a set only prop\n */\n currentRowKey: [String, Number],\n /**\n * @description displayed text when data is empty. You can customize this area with `#empty`\n */\n emptyText: String,\n /**\n * @description set expanded rows by this prop, prop's value is the keys of expand rows, you should set row-key before using this prop\n */\n expandRowKeys: Array as PropType<TableProps<any>['expandRowKeys']>,\n /**\n * @description whether expand all rows by default, works when the table has a column type=\"expand\" or contains tree structure data\n */\n defaultExpandAll: Boolean,\n /**\n * @description enable expandable rows, works when the table has a column type=\"expand\"\n */\n rowExpandable: {\n type: Function as PropType<TableProps<any>['rowExpandable']>,\n },\n /**\n * @description set the default sort column and order. property `prop` is used to set default sort column, property `order` is used to set default sort order\n */\n defaultSort: Object as PropType<TableProps<any>['defaultSort']>,\n /**\n * @description the `effect` of the overflow tooltip\n */\n tooltipEffect: String,\n /**\n * @description the options for the overflow tooltip, [see the following tooltip component](tooltip.html#attributes)\n */\n tooltipOptions: Object as PropType<TableProps<any>['tooltipOptions']>,\n /**\n * @description method that returns rowspan and colspan\n */\n spanMethod: Function as PropType<TableProps<any>['spanMethod']>,\n /**\n * @description controls the behavior of master checkbox in multi-select tables when only some rows are selected (but not all). If true, all rows will be selected, else deselected\n */\n selectOnIndeterminate: {\n type: Boolean,\n default: true,\n },\n /**\n * @description horizontal indentation of tree data\n */\n indent: {\n type: Number,\n default: 16,\n },\n /**\n * @description configuration for rendering nested data\n */\n treeProps: {\n type: Object as PropType<TableProps<any>['treeProps']>,\n default: () => {\n return {\n hasChildren: 'hasChildren',\n children: 'children',\n checkStrictly: false,\n }\n },\n },\n /**\n * @description whether to lazy loading data\n */\n lazy: Boolean,\n /**\n * @description method for loading child row data, only works when `lazy` is true\n */\n load: Function as PropType<TableProps<any>['load']>,\n style: {\n type: [String, Object, Array] as PropType<TableProps<any>['style']>,\n default: () => ({}),\n },\n className: {\n type: String,\n default: '',\n },\n /**\n * @description sets the algorithm used to lay out table cells, rows, and columns\n */\n tableLayout: {\n type: String as PropType<Layout>,\n default: 'fixed',\n },\n /**\n * @description always show scrollbar\n */\n scrollbarAlwaysOn: Boolean,\n /**\n * @description ensure main axis minimum-size doesn't follow the content\n */\n flexible: Boolean,\n /**\n * @description whether to hide extra content and show them in a tooltip when hovering on the cell.It will affect all the table columns\n */\n showOverflowTooltip: [Boolean, Object] as PropType<\n TableProps<any>['showOverflowTooltip']\n >,\n /**\n * @description function that formats cell tooltip content, works when `show-overflow-tooltip` is `true`\n */\n tooltipFormatter: Function as PropType<TableProps<any>['tooltipFormatter']>,\n appendFilterPanelTo: String,\n scrollbarTabindex: {\n type: [Number, String],\n default: undefined,\n },\n /**\n * @description whether to allow drag the last column\n */\n allowDragLastColumn: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to preserve expanded row content in DOM when collapsed\n */\n preserveExpandedContent: Boolean,\n /**\n * @description whether to use native scrollbars\n */\n nativeScrollbar: Boolean,\n}\nexport type {\n SummaryMethod,\n Table,\n TableProps,\n TableRefs,\n ColumnCls,\n ColumnStyle,\n CellCls,\n CellStyle,\n DefaultRow,\n TreeNode,\n RenderRowData,\n Sort,\n Filter,\n TableColumnCtx,\n TreeProps,\n TableTooltipData,\n TableSortOrder,\n RenderExpanded,\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,9 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
41
41
|
emptyText: StringConstructor;
|
|
42
42
|
expandRowKeys: import("vue").PropType<import("./table/defaults").TableProps<any>["expandRowKeys"]>;
|
|
43
43
|
defaultExpandAll: BooleanConstructor;
|
|
44
|
+
rowExpandable: {
|
|
45
|
+
type: import("vue").PropType<import("./table/defaults").TableProps<any>["rowExpandable"]>;
|
|
46
|
+
};
|
|
44
47
|
defaultSort: import("vue").PropType<import("./table/defaults").TableProps<any>["defaultSort"]>;
|
|
45
48
|
tooltipEffect: StringConstructor;
|
|
46
49
|
tooltipOptions: import("vue").PropType<import("./table/defaults").TableProps<any>["tooltipOptions"]>;
|
|
@@ -147,6 +150,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
147
150
|
reserveSelection: import("vue").Ref<boolean>;
|
|
148
151
|
selectOnIndeterminate: import("vue").Ref<boolean>;
|
|
149
152
|
selectable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
153
|
+
rowExpandable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
150
154
|
filters: import("vue").Ref<import("./store").StoreFilter>;
|
|
151
155
|
filteredData: import("vue").Ref<any[] | null>;
|
|
152
156
|
sortingColumn: import("vue").Ref<import("./table-column/defaults").TableColumnCtx<any> | null>;
|
|
@@ -189,6 +193,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
189
193
|
reserveSelection: import("vue").Ref<boolean>;
|
|
190
194
|
selectOnIndeterminate: import("vue").Ref<boolean>;
|
|
191
195
|
selectable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
196
|
+
rowExpandable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
192
197
|
filters: import("vue").Ref<import("./store").StoreFilter>;
|
|
193
198
|
filteredData: import("vue").Ref<any[] | null>;
|
|
194
199
|
sortingColumn: import("vue").Ref<import("./table-column/defaults").TableColumnCtx<any> | null>;
|
|
@@ -231,6 +236,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
231
236
|
reserveSelection: import("vue").Ref<boolean>;
|
|
232
237
|
selectOnIndeterminate: import("vue").Ref<boolean>;
|
|
233
238
|
selectable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
239
|
+
rowExpandable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
234
240
|
filters: import("vue").Ref<import("./store").StoreFilter>;
|
|
235
241
|
filteredData: import("vue").Ref<any[] | null>;
|
|
236
242
|
sortingColumn: import("vue").Ref<import("./table-column/defaults").TableColumnCtx<any> | null>;
|
|
@@ -273,6 +279,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
273
279
|
reserveSelection: import("vue").Ref<boolean>;
|
|
274
280
|
selectOnIndeterminate: import("vue").Ref<boolean>;
|
|
275
281
|
selectable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
282
|
+
rowExpandable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
276
283
|
filters: import("vue").Ref<import("./store").StoreFilter>;
|
|
277
284
|
filteredData: import("vue").Ref<any[] | null>;
|
|
278
285
|
sortingColumn: import("vue").Ref<import("./table-column/defaults").TableColumnCtx<any> | null>;
|
|
@@ -315,6 +322,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
315
322
|
reserveSelection: import("vue").Ref<boolean>;
|
|
316
323
|
selectOnIndeterminate: import("vue").Ref<boolean>;
|
|
317
324
|
selectable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
325
|
+
rowExpandable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
318
326
|
filters: import("vue").Ref<import("./store").StoreFilter>;
|
|
319
327
|
filteredData: import("vue").Ref<any[] | null>;
|
|
320
328
|
sortingColumn: import("vue").Ref<import("./table-column/defaults").TableColumnCtx<any> | null>;
|
|
@@ -357,6 +365,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
357
365
|
reserveSelection: import("vue").Ref<boolean>;
|
|
358
366
|
selectOnIndeterminate: import("vue").Ref<boolean>;
|
|
359
367
|
selectable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
368
|
+
rowExpandable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
360
369
|
filters: import("vue").Ref<import("./store").StoreFilter>;
|
|
361
370
|
filteredData: import("vue").Ref<any[] | null>;
|
|
362
371
|
sortingColumn: import("vue").Ref<import("./table-column/defaults").TableColumnCtx<any> | null>;
|
|
@@ -399,6 +408,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
399
408
|
reserveSelection: import("vue").Ref<boolean>;
|
|
400
409
|
selectOnIndeterminate: import("vue").Ref<boolean>;
|
|
401
410
|
selectable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
411
|
+
rowExpandable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
402
412
|
filters: import("vue").Ref<import("./store").StoreFilter>;
|
|
403
413
|
filteredData: import("vue").Ref<any[] | null>;
|
|
404
414
|
sortingColumn: import("vue").Ref<import("./table-column/defaults").TableColumnCtx<any> | null>;
|
|
@@ -442,6 +452,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
442
452
|
reserveSelection: import("vue").Ref<boolean>;
|
|
443
453
|
selectOnIndeterminate: import("vue").Ref<boolean>;
|
|
444
454
|
selectable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
455
|
+
rowExpandable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
445
456
|
filters: import("vue").Ref<import("./store").StoreFilter>;
|
|
446
457
|
filteredData: import("vue").Ref<any[] | null>;
|
|
447
458
|
sortingColumn: import("vue").Ref<import("./table-column/defaults").TableColumnCtx<any> | null>;
|
|
@@ -484,6 +495,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
484
495
|
reserveSelection: import("vue").Ref<boolean>;
|
|
485
496
|
selectOnIndeterminate: import("vue").Ref<boolean>;
|
|
486
497
|
selectable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
498
|
+
rowExpandable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
487
499
|
filters: import("vue").Ref<import("./store").StoreFilter>;
|
|
488
500
|
filteredData: import("vue").Ref<any[] | null>;
|
|
489
501
|
sortingColumn: import("vue").Ref<import("./table-column/defaults").TableColumnCtx<any> | null>;
|
|
@@ -526,6 +538,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
526
538
|
reserveSelection: import("vue").Ref<boolean>;
|
|
527
539
|
selectOnIndeterminate: import("vue").Ref<boolean>;
|
|
528
540
|
selectable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
541
|
+
rowExpandable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
529
542
|
filters: import("vue").Ref<import("./store").StoreFilter>;
|
|
530
543
|
filteredData: import("vue").Ref<any[] | null>;
|
|
531
544
|
sortingColumn: import("vue").Ref<import("./table-column/defaults").TableColumnCtx<any> | null>;
|
|
@@ -602,6 +615,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
602
615
|
reserveSelection: import("vue").Ref<boolean>;
|
|
603
616
|
selectOnIndeterminate: import("vue").Ref<boolean>;
|
|
604
617
|
selectable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
618
|
+
rowExpandable: import("vue").Ref<((row: any, index: number) => boolean) | null>;
|
|
605
619
|
filters: import("vue").Ref<import("./store").StoreFilter>;
|
|
606
620
|
filteredData: import("vue").Ref<any[] | null>;
|
|
607
621
|
sortingColumn: import("vue").Ref<import("./table-column/defaults").TableColumnCtx<any> | null>;
|
|
@@ -775,6 +789,9 @@ declare const __VLS_export: import("vue").DefineComponent<{
|
|
|
775
789
|
emptyText: StringConstructor;
|
|
776
790
|
expandRowKeys: import("vue").PropType<import("./table/defaults").TableProps<any>["expandRowKeys"]>;
|
|
777
791
|
defaultExpandAll: BooleanConstructor;
|
|
792
|
+
rowExpandable: {
|
|
793
|
+
type: import("vue").PropType<import("./table/defaults").TableProps<any>["rowExpandable"]>;
|
|
794
|
+
};
|
|
778
795
|
defaultSort: import("vue").PropType<import("./table/defaults").TableProps<any>["defaultSort"]>;
|
|
779
796
|
tooltipEffect: StringConstructor;
|
|
780
797
|
tooltipOptions: import("vue").PropType<import("./table/defaults").TableProps<any>["tooltipOptions"]>;
|
|
@@ -2,6 +2,13 @@ import TimePicker from './src/time-picker';
|
|
|
2
2
|
import CommonPicker from './src/common/picker.vue';
|
|
3
3
|
import TimePickPanel from './src/time-picker-com/panel-time-pick.vue';
|
|
4
4
|
import type { SFCWithInstall } from '@element-plus/nightly/es/utils';
|
|
5
|
+
export type TimePickerInstance = InstanceType<typeof TimePicker> & TimePickerExpose;
|
|
6
|
+
export type TimePickerExpose = {
|
|
7
|
+
focus: () => void;
|
|
8
|
+
blur: () => void;
|
|
9
|
+
handleOpen: () => void;
|
|
10
|
+
handleClose: () => void;
|
|
11
|
+
};
|
|
5
12
|
export * from './src/utils';
|
|
6
13
|
export * from './src/constants';
|
|
7
14
|
export * from './src/common/props';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../packages/components/time-picker/index.ts"],"sourcesContent":["import { withInstall } from '@element-plus/utils'\nimport TimePicker from './src/time-picker'\nimport CommonPicker from './src/common/picker.vue'\nimport TimePickPanel from './src/time-picker-com/panel-time-pick.vue'\n\nimport type { SFCWithInstall } from '@element-plus/utils'\n\nexport * from './src/utils'\nexport * from './src/constants'\nexport * from './src/common/props'\n\nexport const ElTimePicker: SFCWithInstall<typeof TimePicker> =\n withInstall(TimePicker)\n\nexport { CommonPicker, TimePickPanel }\nexport default ElTimePicker\n"],"names":[],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../packages/components/time-picker/index.ts"],"sourcesContent":["import { withInstall } from '@element-plus/utils'\nimport TimePicker from './src/time-picker'\nimport CommonPicker from './src/common/picker.vue'\nimport TimePickPanel from './src/time-picker-com/panel-time-pick.vue'\n\nimport type { SFCWithInstall } from '@element-plus/utils'\n\nexport type TimePickerInstance = InstanceType<typeof TimePicker> &\n TimePickerExpose\nexport type TimePickerExpose = {\n focus: () => void\n blur: () => void\n handleOpen: () => void\n handleClose: () => void\n}\nexport * from './src/utils'\nexport * from './src/constants'\nexport * from './src/common/props'\n\nexport const ElTimePicker: SFCWithInstall<typeof TimePicker> =\n withInstall(TimePicker)\n\nexport { CommonPicker, TimePickPanel }\nexport default ElTimePicker\n"],"names":[],"mappings":";;;;;;;;AAmBO,MAAM,YAAA,GACX,YAAY,UAAU;;;;"}
|
package/es/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "0.0.
|
|
1
|
+
export declare const version = "0.0.20260129";
|
package/es/version.mjs
CHANGED
package/es/version.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.
|
|
1
|
+
{"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20260129'\n"],"names":[],"mappings":"AAAO,MAAM,OAAA,GAAU;;;;"}
|
|
@@ -114,6 +114,12 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
114
114
|
scrollContainer.value = scroll.getScrollContainer(root.value, true);
|
|
115
115
|
updateRoot();
|
|
116
116
|
});
|
|
117
|
+
vue.onActivated(() => {
|
|
118
|
+
vue.nextTick(updateRootRect);
|
|
119
|
+
});
|
|
120
|
+
vue.onDeactivated(() => {
|
|
121
|
+
fixed.value = false;
|
|
122
|
+
});
|
|
117
123
|
core.useEventListener(scrollContainer, "scroll", handleScroll);
|
|
118
124
|
vue.watchEffect(update);
|
|
119
125
|
__expose({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"affix.vue2.js","sources":["../../../../../../packages/components/affix/src/affix.vue"],"sourcesContent":["<template>\n <div ref=\"root\" :class=\"ns.b()\" :style=\"rootStyle\">\n <el-teleport :disabled=\"teleportDisabled\" :to=\"appendTo\">\n <div :class=\"{ [ns.m('fixed')]: fixed }\" :style=\"affixStyle\">\n <slot />\n </div>\n </el-teleport>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onMounted,\n ref,\n shallowRef,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n useElementBounding,\n useEventListener,\n useWindowSize,\n} from '@vueuse/core'\nimport ElTeleport from '@element-plus/components/teleport'\nimport { addUnit, getScrollContainer, throwError } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { CHANGE_EVENT } from '@element-plus/constants'\nimport { affixEmits } from './affix'\n\nimport type { CSSProperties } from 'vue'\nimport type { AffixProps } from './affix'\n\nconst COMPONENT_NAME = 'ElAffix'\ndefineOptions({\n name: COMPONENT_NAME,\n})\nconst props = withDefaults(defineProps<AffixProps>(), {\n zIndex: 100,\n target: '',\n offset: 0,\n position: 'top',\n appendTo: 'body',\n})\nconst emit = defineEmits(affixEmits)\n\nconst ns = useNamespace('affix')\n\nconst target = shallowRef<HTMLElement>()\nconst root = shallowRef<HTMLDivElement>()\nconst scrollContainer = shallowRef<HTMLElement | Window>()\nconst { height: windowHeight } = useWindowSize()\nconst {\n height: rootHeight,\n width: rootWidth,\n top: rootTop,\n bottom: rootBottom,\n left: rootLeft,\n update: updateRoot,\n} = useElementBounding(root, { windowScroll: false })\nconst targetRect = useElementBounding(target)\n\nconst fixed = ref(false)\nconst scrollTop = ref(0)\nconst transform = ref(0)\n\nconst teleportDisabled = computed(() => {\n return !props.teleported || !fixed.value\n})\n\nconst rootStyle = computed<CSSProperties>(() => {\n return {\n height: fixed.value ? `${rootHeight.value}px` : '',\n width: fixed.value ? `${rootWidth.value}px` : '',\n }\n})\n\nconst affixStyle = computed<CSSProperties>(() => {\n if (!fixed.value) return {}\n\n const offset = addUnit(props.offset)\n return {\n height: `${rootHeight.value}px`,\n width: `${rootWidth.value}px`,\n top: props.position === 'top' ? offset : '',\n bottom: props.position === 'bottom' ? offset : '',\n left: props.teleported ? `${rootLeft.value}px` : '',\n transform: transform.value ? `translateY(${transform.value}px)` : '',\n zIndex: props.zIndex,\n }\n})\n\nconst update = () => {\n if (!scrollContainer.value) return\n\n scrollTop.value =\n scrollContainer.value instanceof Window\n ? document.documentElement.scrollTop\n : scrollContainer.value.scrollTop || 0\n\n const { position, target, offset } = props\n const rootHeightOffset = offset + rootHeight.value\n\n if (position === 'top') {\n if (target) {\n const difference = targetRect.bottom.value - rootHeightOffset\n fixed.value = offset > rootTop.value && targetRect.bottom.value > 0\n transform.value = difference < 0 ? difference : 0\n } else {\n fixed.value = offset > rootTop.value\n }\n } else if (target) {\n const difference =\n windowHeight.value - targetRect.top.value - rootHeightOffset\n fixed.value =\n windowHeight.value - offset < rootBottom.value &&\n windowHeight.value > targetRect.top.value\n transform.value = difference < 0 ? -difference : 0\n } else {\n fixed.value = windowHeight.value - offset < rootBottom.value\n }\n}\n\nconst updateRootRect = async () => {\n if (!fixed.value) {\n updateRoot()\n return\n }\n\n fixed.value = false\n await nextTick()\n updateRoot()\n fixed.value = true\n}\n\nconst handleScroll = async () => {\n updateRoot()\n await nextTick()\n emit('scroll', {\n scrollTop: scrollTop.value,\n fixed: fixed.value,\n })\n}\n\nwatch(fixed, (val) => emit(CHANGE_EVENT, val))\n\nonMounted(() => {\n if (props.target) {\n target.value =\n document.querySelector<HTMLElement>(props.target) ?? undefined\n if (!target.value)\n throwError(COMPONENT_NAME, `Target does not exist: ${props.target}`)\n } else {\n target.value = document.documentElement\n }\n scrollContainer.value = getScrollContainer(root.value!, true)\n updateRoot()\n})\n\nuseEventListener(scrollContainer, 'scroll', handleScroll)\nwatchEffect(update)\n\ndefineExpose({\n /** @description update affix status */\n update,\n /** @description update rootRect info */\n updateRoot: updateRootRect,\n})\n</script>\n"],"names":["useNamespace","shallowRef","useWindowSize","useElementBounding","ref","computed","addUnit","target","nextTick","watch","CHANGE_EVENT","onMounted","throwError","getScrollContainer","useEventListener","watchEffect","_createElementBlock","_normalizeClass","_unref","_createVNode","ElTeleport","_createElementVNode","_renderSlot"],"mappings":";;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"affix.vue2.js","sources":["../../../../../../packages/components/affix/src/affix.vue"],"sourcesContent":["<template>\n <div ref=\"root\" :class=\"ns.b()\" :style=\"rootStyle\">\n <el-teleport :disabled=\"teleportDisabled\" :to=\"appendTo\">\n <div :class=\"{ [ns.m('fixed')]: fixed }\" :style=\"affixStyle\">\n <slot />\n </div>\n </el-teleport>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onActivated,\n onDeactivated,\n onMounted,\n ref,\n shallowRef,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n useElementBounding,\n useEventListener,\n useWindowSize,\n} from '@vueuse/core'\nimport ElTeleport from '@element-plus/components/teleport'\nimport { addUnit, getScrollContainer, throwError } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { CHANGE_EVENT } from '@element-plus/constants'\nimport { affixEmits } from './affix'\n\nimport type { CSSProperties } from 'vue'\nimport type { AffixProps } from './affix'\n\nconst COMPONENT_NAME = 'ElAffix'\ndefineOptions({\n name: COMPONENT_NAME,\n})\nconst props = withDefaults(defineProps<AffixProps>(), {\n zIndex: 100,\n target: '',\n offset: 0,\n position: 'top',\n appendTo: 'body',\n})\nconst emit = defineEmits(affixEmits)\n\nconst ns = useNamespace('affix')\n\nconst target = shallowRef<HTMLElement>()\nconst root = shallowRef<HTMLDivElement>()\nconst scrollContainer = shallowRef<HTMLElement | Window>()\nconst { height: windowHeight } = useWindowSize()\nconst {\n height: rootHeight,\n width: rootWidth,\n top: rootTop,\n bottom: rootBottom,\n left: rootLeft,\n update: updateRoot,\n} = useElementBounding(root, { windowScroll: false })\nconst targetRect = useElementBounding(target)\n\nconst fixed = ref(false)\nconst scrollTop = ref(0)\nconst transform = ref(0)\n\nconst teleportDisabled = computed(() => {\n return !props.teleported || !fixed.value\n})\n\nconst rootStyle = computed<CSSProperties>(() => {\n return {\n height: fixed.value ? `${rootHeight.value}px` : '',\n width: fixed.value ? `${rootWidth.value}px` : '',\n }\n})\n\nconst affixStyle = computed<CSSProperties>(() => {\n if (!fixed.value) return {}\n\n const offset = addUnit(props.offset)\n return {\n height: `${rootHeight.value}px`,\n width: `${rootWidth.value}px`,\n top: props.position === 'top' ? offset : '',\n bottom: props.position === 'bottom' ? offset : '',\n left: props.teleported ? `${rootLeft.value}px` : '',\n transform: transform.value ? `translateY(${transform.value}px)` : '',\n zIndex: props.zIndex,\n }\n})\n\nconst update = () => {\n if (!scrollContainer.value) return\n\n scrollTop.value =\n scrollContainer.value instanceof Window\n ? document.documentElement.scrollTop\n : scrollContainer.value.scrollTop || 0\n\n const { position, target, offset } = props\n const rootHeightOffset = offset + rootHeight.value\n\n if (position === 'top') {\n if (target) {\n const difference = targetRect.bottom.value - rootHeightOffset\n fixed.value = offset > rootTop.value && targetRect.bottom.value > 0\n transform.value = difference < 0 ? difference : 0\n } else {\n fixed.value = offset > rootTop.value\n }\n } else if (target) {\n const difference =\n windowHeight.value - targetRect.top.value - rootHeightOffset\n fixed.value =\n windowHeight.value - offset < rootBottom.value &&\n windowHeight.value > targetRect.top.value\n transform.value = difference < 0 ? -difference : 0\n } else {\n fixed.value = windowHeight.value - offset < rootBottom.value\n }\n}\n\nconst updateRootRect = async () => {\n if (!fixed.value) {\n updateRoot()\n return\n }\n\n fixed.value = false\n await nextTick()\n updateRoot()\n fixed.value = true\n}\n\nconst handleScroll = async () => {\n updateRoot()\n await nextTick()\n emit('scroll', {\n scrollTop: scrollTop.value,\n fixed: fixed.value,\n })\n}\n\nwatch(fixed, (val) => emit(CHANGE_EVENT, val))\n\nonMounted(() => {\n if (props.target) {\n target.value =\n document.querySelector<HTMLElement>(props.target) ?? undefined\n if (!target.value)\n throwError(COMPONENT_NAME, `Target does not exist: ${props.target}`)\n } else {\n target.value = document.documentElement\n }\n scrollContainer.value = getScrollContainer(root.value!, true)\n updateRoot()\n})\n\nonActivated(() => {\n nextTick(updateRootRect)\n})\n\nonDeactivated(() => {\n fixed.value = false\n})\n\nuseEventListener(scrollContainer, 'scroll', handleScroll)\nwatchEffect(update)\n\ndefineExpose({\n /** @description update affix status */\n update,\n /** @description update rootRect info */\n updateRoot: updateRootRect,\n})\n</script>\n"],"names":["useNamespace","shallowRef","useWindowSize","useElementBounding","ref","computed","addUnit","target","nextTick","watch","CHANGE_EVENT","onMounted","throwError","getScrollContainer","onActivated","onDeactivated","useEventListener","watchEffect","_createElementBlock","_normalizeClass","_unref","_createVNode","ElTeleport","_createElementVNode","_renderSlot"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"split-panel.vue2.js","sources":["../../../../../../packages/components/splitter/src/split-panel.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport {\n computed,\n getCurrentInstance,\n inject,\n nextTick,\n onBeforeUnmount,\n reactive,\n ref,\n toRefs,\n watch,\n} from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { throwError } from '@element-plus/utils'\nimport { getCollapsible, isCollapsible } from './hooks/usePanel'\nimport SplitBar from './split-bar.vue'\nimport { splitterPanelEmits } from './split-panel'\nimport { getPct, getPx, isPct, isPx } from './hooks'\nimport { splitterRootContextKey } from './type'\n\nimport type { SplitterPanelProps } from './split-panel'\n\nconst ns = useNamespace('splitter-panel')\n\nconst COMPONENT_NAME = 'ElSplitterPanel'\ndefineOptions({\n name: COMPONENT_NAME,\n})\n\nconst props = withDefaults(defineProps<SplitterPanelProps>(), {\n resizable: true,\n})\n\nconst emits = defineEmits(splitterPanelEmits)\nconst splitterContext = inject(splitterRootContextKey)\nif (!splitterContext)\n throwError(\n COMPONENT_NAME,\n 'usage: <el-splitter><el-splitter-panel /></el-splitter/>'\n )\n\nconst { panels, layout, lazy, containerSize, pxSizes } = toRefs(splitterContext)\n\nconst {\n registerPanel,\n unregisterPanel,\n onCollapse,\n onMoveEnd,\n onMoveStart,\n onMoving,\n} = splitterContext\n\nconst panelEl = ref<HTMLDivElement>()\nconst instance = getCurrentInstance()!\nconst uid = instance.uid\n\nconst index = ref(0)\nconst panel = computed(() => panels.value[index.value])\n\nconst setIndex = (val: number) => {\n index.value = val\n}\n\nconst panelSize = computed(() => {\n if (!panel.value) return 0\n return pxSizes.value[index.value] ?? 0\n})\n\nconst nextSize = computed(() => {\n if (!panel.value) return 0\n return pxSizes.value[index.value + 1] ?? 0\n})\n\nconst nextPanel = computed(() => {\n if (panel.value) {\n return panels.value[index.value + 1]\n }\n return null\n})\n\nconst isResizable = computed(() => {\n if (!nextPanel.value) return false\n return (\n props.resizable &&\n nextPanel.value?.resizable &&\n // If it is 0, it means it is collapsed => check if the minimum value is set\n (panelSize.value !== 0 || !props.min) &&\n (nextSize.value !== 0 || !nextPanel.value.min)\n )\n})\n\n// The last panel doesn't need a drag bar\nconst isShowBar = computed(() => {\n if (!panel.value) return false\n return index.value !== panels.value.length - 1\n})\n\nconst startCollapsible = computed(() =>\n isCollapsible(panel.value, panelSize.value, nextPanel.value, nextSize.value)\n)\n\nconst endCollapsible = computed(() =>\n isCollapsible(nextPanel.value, nextSize.value, panel.value, panelSize.value)\n)\n\nfunction sizeToPx(str: string | number | undefined) {\n if (isPct(str)) {\n return getPct(str) * containerSize.value || 0\n } else if (isPx(str)) {\n return getPx(str)\n }\n return str ?? 0\n}\n\n// Two-way binding for size\nlet isSizeUpdating = false\nwatch(\n () => props.size,\n () => {\n if (!isSizeUpdating && panel.value) {\n if (!containerSize.value) {\n panel.value.size = props.size\n return\n }\n\n const size = sizeToPx(props.size)\n const maxSize = sizeToPx(props.max)\n const minSize = sizeToPx(props.min)\n\n // Ensure it is within the maximum and minimum value range\n const finalSize = Math.min(Math.max(size, minSize || 0), maxSize || size)\n\n if (finalSize !== size) {\n emits('update:size', finalSize)\n }\n\n panel.value.size = finalSize\n }\n }\n)\n\nwatch(\n () => panel.value?.size,\n (val) => {\n if (val !== props.size) {\n isSizeUpdating = true\n emits('update:size', val as number)\n nextTick(() => (isSizeUpdating = false))\n }\n }\n)\n\nwatch(\n () => props.resizable,\n (val) => {\n if (panel.value) {\n panel.value.resizable = val\n }\n }\n)\n\nconst _panel = reactive({\n el: panelEl.value!,\n uid,\n getVnode: () => instance.vnode,\n setIndex,\n ...props,\n collapsible: computed(() => getCollapsible(props.collapsible)),\n})\n\nregisterPanel(_panel)\n\nonBeforeUnmount(() => unregisterPanel(_panel))\n\ndefineExpose({\n /** @description splitter-panel html element */\n splitterPanelRef: panelEl,\n})\n</script>\n\n<template>\n <div\n ref=\"panelEl\"\n :class=\"[ns.b()]\"\n :style=\"{ flexBasis: `${panelSize}px` }\"\n v-bind=\"$attrs\"\n >\n <slot />\n </div>\n <SplitBar\n v-if=\"isShowBar\"\n :index=\"index\"\n :layout=\"layout\"\n :lazy=\"lazy\"\n :resizable=\"isResizable\"\n :start-collapsible=\"startCollapsible\"\n :end-collapsible=\"endCollapsible\"\n @move-start=\"onMoveStart\"\n @moving=\"onMoving\"\n @move-end=\"onMoveEnd\"\n @collapse=\"onCollapse\"\n >\n <template #start-collapsible>\n <slot name=\"start-collapsible\" />\n </template>\n <template #end-collapsible>\n <slot name=\"end-collapsible\" />\n </template>\n </SplitBar>\n</template>\n"],"names":["useNamespace","inject","splitterRootContextKey","throwError","toRefs","ref","getCurrentInstance","index","computed","isCollapsible","isPct","getPct","isPx","getPx","watch","nextTick","reactive","getCollapsible","onBeforeUnmount","_createElementVNode","_mergeProps","_unref","$attrs","_renderSlot","_createBlock","SplitBar"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"split-panel.vue2.js","sources":["../../../../../../packages/components/splitter/src/split-panel.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport {\n computed,\n getCurrentInstance,\n inject,\n nextTick,\n onBeforeUnmount,\n reactive,\n ref,\n toRefs,\n watch,\n} from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { throwError } from '@element-plus/utils'\nimport { getCollapsible, isCollapsible } from './hooks/usePanel'\nimport SplitBar from './split-bar.vue'\nimport { splitterPanelEmits } from './split-panel'\nimport { getPct, getPx, isPct, isPx } from './hooks'\nimport { splitterRootContextKey } from './type'\n\nimport type { SplitterPanelProps } from './split-panel'\n\nconst ns = useNamespace('splitter-panel')\n\nconst COMPONENT_NAME = 'ElSplitterPanel'\ndefineOptions({\n name: COMPONENT_NAME,\n})\n\nconst props = withDefaults(defineProps<SplitterPanelProps>(), {\n resizable: true,\n})\n\nconst emits = defineEmits(splitterPanelEmits)\nconst splitterContext = inject(splitterRootContextKey)\nif (!splitterContext)\n throwError(\n COMPONENT_NAME,\n 'usage: <el-splitter><el-splitter-panel /></el-splitter/>'\n )\n\nconst { panels, layout, lazy, containerSize, pxSizes } = toRefs(splitterContext)\n\nconst {\n registerPanel,\n unregisterPanel,\n onCollapse,\n onMoveEnd,\n onMoveStart,\n onMoving,\n} = splitterContext\n\nconst panelEl = ref<HTMLDivElement>()\nconst instance = getCurrentInstance()!\nconst uid = instance.uid\n\nconst index = ref(0)\nconst panel = computed(() => panels.value[index.value])\n\nconst setIndex = (val: number) => {\n index.value = val\n}\n\nconst panelSize = computed(() => {\n if (!panel.value) return 0\n return pxSizes.value[index.value] ?? 0\n})\n\nconst nextSize = computed(() => {\n if (!panel.value) return 0\n return pxSizes.value[index.value + 1] ?? 0\n})\n\nconst nextPanel = computed(() => {\n if (panel.value) {\n return panels.value[index.value + 1]\n }\n return null\n})\n\nconst isResizable = computed(() => {\n if (!nextPanel.value) return false\n return (\n props.resizable &&\n nextPanel.value?.resizable &&\n // If it is 0, it means it is collapsed => check if the minimum value is set\n (panelSize.value !== 0 || !props.min) &&\n (nextSize.value !== 0 || !nextPanel.value.min)\n )\n})\n\n// The last panel doesn't need a drag bar\nconst isShowBar = computed(() => {\n if (!panel.value) return false\n return index.value !== panels.value.length - 1\n})\n\nconst startCollapsible = computed(() =>\n isCollapsible(panel.value, panelSize.value, nextPanel.value, nextSize.value)\n)\n\nconst endCollapsible = computed(() =>\n isCollapsible(nextPanel.value, nextSize.value, panel.value, panelSize.value)\n)\n\nfunction sizeToPx(str: string | number | undefined) {\n if (isPct(str)) {\n return getPct(str) * containerSize.value || 0\n } else if (isPx(str)) {\n return getPx(str)\n }\n return str ?? 0\n}\n\n// Two-way binding for size\nlet isSizeUpdating = false\nwatch(\n () => props.size,\n () => {\n if (!isSizeUpdating && panel.value) {\n if (!containerSize.value) {\n panel.value.size = props.size\n return\n }\n\n const size = sizeToPx(props.size)\n const maxSize = sizeToPx(props.max)\n const minSize = sizeToPx(props.min)\n\n // Ensure it is within the maximum and minimum value range\n const finalSize = Math.min(Math.max(size, minSize || 0), maxSize || size)\n\n if (finalSize !== size) {\n emits('update:size', finalSize)\n }\n\n panel.value.size = finalSize\n }\n }\n)\n\nwatch(\n () => panel.value?.size,\n (val) => {\n if (val !== props.size) {\n isSizeUpdating = true\n emits('update:size', val as number)\n nextTick(() => (isSizeUpdating = false))\n }\n }\n)\n\nwatch(\n () => props.resizable,\n (val) => {\n if (panel.value) {\n panel.value.resizable = val\n }\n }\n)\n\nconst _panel = reactive({\n uid,\n getVnode: () => instance.vnode,\n setIndex,\n ...props,\n collapsible: computed(() => getCollapsible(props.collapsible)),\n})\n\nregisterPanel(_panel)\n\nonBeforeUnmount(() => unregisterPanel(_panel))\n\ndefineExpose({\n /** @description splitter-panel html element */\n splitterPanelRef: panelEl,\n})\n</script>\n\n<template>\n <div\n ref=\"panelEl\"\n :class=\"[ns.b()]\"\n :style=\"{ flexBasis: `${panelSize}px` }\"\n v-bind=\"$attrs\"\n >\n <slot />\n </div>\n <SplitBar\n v-if=\"isShowBar\"\n :index=\"index\"\n :layout=\"layout\"\n :lazy=\"lazy\"\n :resizable=\"isResizable\"\n :start-collapsible=\"startCollapsible\"\n :end-collapsible=\"endCollapsible\"\n @move-start=\"onMoveStart\"\n @moving=\"onMoving\"\n @move-end=\"onMoveEnd\"\n @collapse=\"onCollapse\"\n >\n <template #start-collapsible>\n <slot name=\"start-collapsible\" />\n </template>\n <template #end-collapsible>\n <slot name=\"end-collapsible\" />\n </template>\n </SplitBar>\n</template>\n"],"names":["useNamespace","inject","splitterRootContextKey","throwError","toRefs","ref","getCurrentInstance","index","computed","isCollapsible","isPct","getPct","isPx","getPx","watch","nextTick","reactive","getCollapsible","onBeforeUnmount","_createElementVNode","_mergeProps","_unref","$attrs","_renderSlot","_createBlock","SplitBar"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.js","sources":["../../../../../../packages/components/splitter/src/type.ts"],"sourcesContent":["import type { InjectionKey, UnwrapRef, VNode } from 'vue'\n\nexport type Layout = 'horizontal' | 'vertical'\n\nexport type PanelItemState = UnwrapRef<{\n uid: number\n getVnode: () => VNode\n
|
|
1
|
+
{"version":3,"file":"type.js","sources":["../../../../../../packages/components/splitter/src/type.ts"],"sourcesContent":["import type { InjectionKey, UnwrapRef, VNode } from 'vue'\n\nexport type Layout = 'horizontal' | 'vertical'\n\nexport type PanelItemState = UnwrapRef<{\n uid: number\n getVnode: () => VNode\n collapsible: { start?: boolean; end?: boolean }\n max?: number | string\n min?: number | string\n resizable: boolean\n size?: number | string\n setIndex: (val: number) => void\n}>\n\nexport interface SplitterRootContext {\n panels: PanelItemState[]\n layout: Layout\n lazy: boolean\n containerSize: number\n movingIndex: { index: number; confirmed: boolean } | null\n percentSizes: number[]\n pxSizes: number[]\n registerPanel: (pane: PanelItemState) => void\n unregisterPanel: (pane: PanelItemState) => void\n onCollapse: (index: number, type: 'start' | 'end') => void\n onMoveEnd: (index: number) => Promise<void>\n onMoveStart: (index: number) => void\n onMoving: (index: number, offset: number) => void\n}\n\nexport const splitterRootContextKey: InjectionKey<SplitterRootContext> = Symbol(\n 'splitterRootContextKey'\n)\n"],"names":[],"mappings":";;AA+BO,MAAM,sBAAA,mBAA4D,MAAA;AAAA,EACvE;AACF;;;;"}
|
|
@@ -60,11 +60,12 @@ export declare const cellForced: {
|
|
|
60
60
|
renderHeader<T extends DefaultRow>({ column, }: {
|
|
61
61
|
column: TableColumnCtx<T>;
|
|
62
62
|
}): string;
|
|
63
|
-
renderCell<T extends DefaultRow>({ column, row, store, expanded, }: {
|
|
63
|
+
renderCell<T extends DefaultRow>({ column, row, store, expanded, $index, }: {
|
|
64
64
|
column: TableColumnCtx<T>;
|
|
65
65
|
row: T;
|
|
66
66
|
store: Store<T>;
|
|
67
67
|
expanded: boolean;
|
|
68
|
+
$index: number;
|
|
68
69
|
}): VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
69
70
|
[key: string]: any;
|
|
70
71
|
}>;
|
|
@@ -105,8 +105,10 @@ const cellForced = {
|
|
|
105
105
|
column,
|
|
106
106
|
row,
|
|
107
107
|
store,
|
|
108
|
-
expanded
|
|
108
|
+
expanded,
|
|
109
|
+
$index
|
|
109
110
|
}) {
|
|
111
|
+
var _a, _b, _c;
|
|
110
112
|
const { ns } = store;
|
|
111
113
|
const classes = [ns.e("expand-icon")];
|
|
112
114
|
if (!column.renderExpand && expanded) {
|
|
@@ -116,10 +118,15 @@ const cellForced = {
|
|
|
116
118
|
e.stopPropagation();
|
|
117
119
|
store.toggleRowExpansion(row);
|
|
118
120
|
};
|
|
121
|
+
const isRowExpandable = (_c = (_b = (_a = store.states.rowExpandable).value) == null ? void 0 : _b.call(_a, row, $index)) != null ? _c : true;
|
|
122
|
+
if (!isRowExpandable) {
|
|
123
|
+
classes.push(ns.is("disabled"));
|
|
124
|
+
}
|
|
119
125
|
return vue.h(
|
|
120
126
|
"button",
|
|
121
127
|
{
|
|
122
128
|
type: "button",
|
|
129
|
+
disabled: !isRowExpandable,
|
|
123
130
|
"aria-label": store.t(
|
|
124
131
|
expanded ? "el.table.collapseRowLabel" : "el.table.expandRowLabel"
|
|
125
132
|
),
|
|
@@ -132,7 +139,8 @@ const cellForced = {
|
|
|
132
139
|
if (column.renderExpand) {
|
|
133
140
|
return [
|
|
134
141
|
column.renderExpand({
|
|
135
|
-
expanded
|
|
142
|
+
expanded,
|
|
143
|
+
expandable: isRowExpandable
|
|
136
144
|
})
|
|
137
145
|
];
|
|
138
146
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sources":["../../../../../../packages/components/table/src/config.ts"],"sourcesContent":["import { h } from 'vue'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { ArrowRight, Loading } from '@element-plus/icons-vue'\nimport { getProp, isBoolean, isFunction, isNumber } from '@element-plus/utils'\n\nimport type { VNode } from 'vue'\nimport type { TableColumnCtx } from './table-column/defaults'\nimport type { Store } from './store'\nimport type { DefaultRow, TreeNode } from './table/defaults'\n\nconst defaultClassNames = {\n selection: 'table-column--selection',\n expand: 'table__expand-column',\n} as const\n\nexport const cellStarts = {\n default: {\n order: '',\n },\n selection: {\n width: 48,\n minWidth: 48,\n realWidth: 48,\n order: '',\n },\n expand: {\n width: 48,\n minWidth: 48,\n realWidth: 48,\n order: '',\n },\n index: {\n width: 48,\n minWidth: 48,\n realWidth: 48,\n order: '',\n },\n}\n\nexport const getDefaultClassName = (type: string) => {\n return defaultClassNames[type as keyof typeof defaultClassNames] || ''\n}\n\n// 这些选项不应该被覆盖\nexport const cellForced = {\n selection: {\n renderHeader<T extends DefaultRow>({ store }: { store: Store<T> }) {\n function isDisabled() {\n return store.states.data.value && store.states.data.value.length === 0\n }\n return h(ElCheckbox, {\n disabled: isDisabled(),\n size: store.states.tableSize.value,\n indeterminate:\n store.states.selection.value.length > 0 &&\n !store.states.isAllSelected.value,\n 'onUpdate:modelValue': store.toggleAllSelection ?? undefined,\n modelValue: store.states.isAllSelected.value,\n ariaLabel: store.t('el.table.selectAllLabel'),\n })\n },\n renderCell<T extends DefaultRow>({\n row,\n column,\n store,\n $index,\n }: {\n row: T\n column: TableColumnCtx<T>\n store: Store<T>\n $index: number\n }) {\n return h(ElCheckbox, {\n disabled: column.selectable\n ? !column.selectable.call(null, row, $index)\n : false,\n size: store.states.tableSize.value,\n onChange: () => {\n store.commit('rowSelectedChanged', row)\n },\n onClick: (event: Event) => event.stopPropagation(),\n modelValue: store.isSelected(row),\n ariaLabel: store.t('el.table.selectRowLabel'),\n })\n },\n sortable: false,\n resizable: false,\n },\n index: {\n renderHeader<T extends DefaultRow>({\n column,\n }: {\n column: TableColumnCtx<T>\n }) {\n return column.label || '#'\n },\n renderCell<T extends DefaultRow>({\n column,\n $index,\n }: {\n column: TableColumnCtx<T>\n $index: number\n }) {\n let i = $index + 1\n const index = column.index\n\n if (isNumber(index)) {\n i = $index + index\n } else if (isFunction(index)) {\n i = index($index)\n }\n return h('div', {}, [i])\n },\n sortable: false,\n },\n expand: {\n renderHeader<T extends DefaultRow>({\n column,\n }: {\n column: TableColumnCtx<T>\n }) {\n return column.label || ''\n },\n renderCell<T extends DefaultRow>({\n column,\n row,\n store,\n expanded,\n }: {\n column: TableColumnCtx<T>\n row: T\n store: Store<T>\n expanded: boolean\n }) {\n const { ns } = store\n const classes = [ns.e('expand-icon')]\n\n if (!column.renderExpand && expanded) {\n classes.push(ns.em('expand-icon', 'expanded'))\n }\n const callback = function (e: Event) {\n e.stopPropagation()\n store.toggleRowExpansion(row)\n }\n return h(\n 'button',\n {\n type: 'button',\n 'aria-label': store.t(\n expanded ? 'el.table.collapseRowLabel' : 'el.table.expandRowLabel'\n ),\n 'aria-expanded': expanded,\n class: classes,\n onClick: callback,\n },\n {\n default: () => {\n if (column.renderExpand) {\n return [\n column.renderExpand({\n expanded,\n }),\n ]\n }\n\n return [\n h(ElIcon, null, {\n default: () => {\n return [h(ArrowRight)]\n },\n }),\n ]\n },\n }\n )\n },\n sortable: false,\n resizable: false,\n },\n}\n\nexport function defaultRenderCell<T extends DefaultRow>({\n row,\n column,\n $index,\n}: {\n row: T\n column: TableColumnCtx<T>\n $index: number\n}) {\n const property = column.property\n const value = property && getProp(row, property).value\n if (column && column.formatter) {\n return column.formatter(row, column, value, $index)\n }\n return value?.toString?.() || ''\n}\n\nexport function treeCellPrefix<T extends DefaultRow>(\n {\n row,\n treeNode,\n store,\n }: {\n row: T\n treeNode: TreeNode\n store: Store<T>\n },\n createPlaceholder = false\n) {\n const { ns } = store\n if (!treeNode) {\n if (createPlaceholder) {\n return [\n h('span', {\n class: ns.e('placeholder'),\n }),\n ]\n }\n return null\n }\n const ele: VNode[] = []\n const callback = function (e: Event) {\n e.stopPropagation()\n if (treeNode.loading) {\n return\n }\n store.loadOrToggle(row)\n }\n if (treeNode.indent) {\n ele.push(\n h('span', {\n class: ns.e('indent'),\n style: { 'padding-left': `${treeNode.indent}px` },\n })\n )\n }\n if (isBoolean(treeNode.expanded) && !treeNode.noLazyChildren) {\n const expandClasses = [\n ns.e('expand-icon'),\n treeNode.expanded ? ns.em('expand-icon', 'expanded') : '',\n ]\n let icon = ArrowRight\n if (treeNode.loading) {\n icon = Loading\n }\n\n ele.push(\n h(\n 'button',\n {\n type: 'button',\n 'aria-label': store.t(\n treeNode.expanded\n ? 'el.table.collapseRowLabel'\n : 'el.table.expandRowLabel'\n ),\n 'aria-expanded': treeNode.expanded,\n class: expandClasses,\n onClick: callback,\n },\n {\n default: () => {\n return [\n h(\n ElIcon,\n { class: ns.is('loading', treeNode.loading) },\n {\n default: () => [h(icon)],\n }\n ),\n ]\n },\n }\n )\n )\n } else {\n ele.push(\n h('span', {\n class: ns.e('placeholder'),\n })\n )\n }\n return ele\n}\n"],"names":["h","ElCheckbox","isNumber","isFunction","ElIcon","ArrowRight","getProp","isBoolean","Loading"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sources":["../../../../../../packages/components/table/src/config.ts"],"sourcesContent":["import { h } from 'vue'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { ArrowRight, Loading } from '@element-plus/icons-vue'\nimport { getProp, isBoolean, isFunction, isNumber } from '@element-plus/utils'\n\nimport type { VNode } from 'vue'\nimport type { TableColumnCtx } from './table-column/defaults'\nimport type { Store } from './store'\nimport type { DefaultRow, TreeNode } from './table/defaults'\n\nconst defaultClassNames = {\n selection: 'table-column--selection',\n expand: 'table__expand-column',\n} as const\n\nexport const cellStarts = {\n default: {\n order: '',\n },\n selection: {\n width: 48,\n minWidth: 48,\n realWidth: 48,\n order: '',\n },\n expand: {\n width: 48,\n minWidth: 48,\n realWidth: 48,\n order: '',\n },\n index: {\n width: 48,\n minWidth: 48,\n realWidth: 48,\n order: '',\n },\n}\n\nexport const getDefaultClassName = (type: string) => {\n return defaultClassNames[type as keyof typeof defaultClassNames] || ''\n}\n\n// 这些选项不应该被覆盖\nexport const cellForced = {\n selection: {\n renderHeader<T extends DefaultRow>({ store }: { store: Store<T> }) {\n function isDisabled() {\n return store.states.data.value && store.states.data.value.length === 0\n }\n return h(ElCheckbox, {\n disabled: isDisabled(),\n size: store.states.tableSize.value,\n indeterminate:\n store.states.selection.value.length > 0 &&\n !store.states.isAllSelected.value,\n 'onUpdate:modelValue': store.toggleAllSelection ?? undefined,\n modelValue: store.states.isAllSelected.value,\n ariaLabel: store.t('el.table.selectAllLabel'),\n })\n },\n renderCell<T extends DefaultRow>({\n row,\n column,\n store,\n $index,\n }: {\n row: T\n column: TableColumnCtx<T>\n store: Store<T>\n $index: number\n }) {\n return h(ElCheckbox, {\n disabled: column.selectable\n ? !column.selectable.call(null, row, $index)\n : false,\n size: store.states.tableSize.value,\n onChange: () => {\n store.commit('rowSelectedChanged', row)\n },\n onClick: (event: Event) => event.stopPropagation(),\n modelValue: store.isSelected(row),\n ariaLabel: store.t('el.table.selectRowLabel'),\n })\n },\n sortable: false,\n resizable: false,\n },\n index: {\n renderHeader<T extends DefaultRow>({\n column,\n }: {\n column: TableColumnCtx<T>\n }) {\n return column.label || '#'\n },\n renderCell<T extends DefaultRow>({\n column,\n $index,\n }: {\n column: TableColumnCtx<T>\n $index: number\n }) {\n let i = $index + 1\n const index = column.index\n\n if (isNumber(index)) {\n i = $index + index\n } else if (isFunction(index)) {\n i = index($index)\n }\n return h('div', {}, [i])\n },\n sortable: false,\n },\n expand: {\n renderHeader<T extends DefaultRow>({\n column,\n }: {\n column: TableColumnCtx<T>\n }) {\n return column.label || ''\n },\n renderCell<T extends DefaultRow>({\n column,\n row,\n store,\n expanded,\n $index,\n }: {\n column: TableColumnCtx<T>\n row: T\n store: Store<T>\n expanded: boolean\n $index: number\n }) {\n const { ns } = store\n const classes = [ns.e('expand-icon')]\n\n if (!column.renderExpand && expanded) {\n classes.push(ns.em('expand-icon', 'expanded'))\n }\n const callback = function (e: Event) {\n e.stopPropagation()\n store.toggleRowExpansion(row)\n }\n const isRowExpandable =\n store.states.rowExpandable.value?.(row, $index) ?? true\n if (!isRowExpandable) {\n classes.push(ns.is('disabled'))\n }\n return h(\n 'button',\n {\n type: 'button',\n disabled: !isRowExpandable,\n 'aria-label': store.t(\n expanded ? 'el.table.collapseRowLabel' : 'el.table.expandRowLabel'\n ),\n 'aria-expanded': expanded,\n class: classes,\n onClick: callback,\n },\n {\n default: () => {\n if (column.renderExpand) {\n return [\n column.renderExpand({\n expanded,\n expandable: isRowExpandable,\n }),\n ]\n }\n\n return [\n h(ElIcon, null, {\n default: () => {\n return [h(ArrowRight)]\n },\n }),\n ]\n },\n }\n )\n },\n sortable: false,\n resizable: false,\n },\n}\n\nexport function defaultRenderCell<T extends DefaultRow>({\n row,\n column,\n $index,\n}: {\n row: T\n column: TableColumnCtx<T>\n $index: number\n}) {\n const property = column.property\n const value = property && getProp(row, property).value\n if (column && column.formatter) {\n return column.formatter(row, column, value, $index)\n }\n return value?.toString?.() || ''\n}\n\nexport function treeCellPrefix<T extends DefaultRow>(\n {\n row,\n treeNode,\n store,\n }: {\n row: T\n treeNode: TreeNode\n store: Store<T>\n },\n createPlaceholder = false\n) {\n const { ns } = store\n if (!treeNode) {\n if (createPlaceholder) {\n return [\n h('span', {\n class: ns.e('placeholder'),\n }),\n ]\n }\n return null\n }\n const ele: VNode[] = []\n const callback = function (e: Event) {\n e.stopPropagation()\n if (treeNode.loading) {\n return\n }\n store.loadOrToggle(row)\n }\n if (treeNode.indent) {\n ele.push(\n h('span', {\n class: ns.e('indent'),\n style: { 'padding-left': `${treeNode.indent}px` },\n })\n )\n }\n if (isBoolean(treeNode.expanded) && !treeNode.noLazyChildren) {\n const expandClasses = [\n ns.e('expand-icon'),\n treeNode.expanded ? ns.em('expand-icon', 'expanded') : '',\n ]\n let icon = ArrowRight\n if (treeNode.loading) {\n icon = Loading\n }\n\n ele.push(\n h(\n 'button',\n {\n type: 'button',\n 'aria-label': store.t(\n treeNode.expanded\n ? 'el.table.collapseRowLabel'\n : 'el.table.expandRowLabel'\n ),\n 'aria-expanded': treeNode.expanded,\n class: expandClasses,\n onClick: callback,\n },\n {\n default: () => {\n return [\n h(\n ElIcon,\n { class: ns.is('loading', treeNode.loading) },\n {\n default: () => [h(icon)],\n }\n ),\n ]\n },\n }\n )\n )\n } else {\n ele.push(\n h('span', {\n class: ns.e('placeholder'),\n })\n )\n }\n return ele\n}\n"],"names":["h","ElCheckbox","isNumber","isFunction","ElIcon","ArrowRight","getProp","isBoolean","Loading"],"mappings":"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"}
|
|
@@ -9,26 +9,30 @@ function useExpand(watcherData) {
|
|
|
9
9
|
const instance = vue.getCurrentInstance();
|
|
10
10
|
const defaultExpandAll = vue.ref(false);
|
|
11
11
|
const expandRows = vue.ref([]);
|
|
12
|
+
const canRowExpand = (row, index) => {
|
|
13
|
+
var _a;
|
|
14
|
+
const expandableFn = instance.store.states.rowExpandable.value;
|
|
15
|
+
return (_a = expandableFn == null ? void 0 : expandableFn(row, index)) != null ? _a : true;
|
|
16
|
+
};
|
|
12
17
|
const updateExpandRows = () => {
|
|
13
18
|
const data = watcherData.data.value || [];
|
|
14
19
|
const rowKey = watcherData.rowKey.value;
|
|
15
20
|
if (defaultExpandAll.value) {
|
|
16
|
-
expandRows.value = data.slice();
|
|
21
|
+
expandRows.value = instance.store.states.rowExpandable.value ? data.filter(canRowExpand) : data.slice();
|
|
17
22
|
} else if (rowKey) {
|
|
18
23
|
const expandRowsMap = util.getKeysMap(expandRows.value, rowKey);
|
|
19
|
-
expandRows.value = data.
|
|
24
|
+
expandRows.value = data.filter((row, index) => {
|
|
20
25
|
const rowId = util.getRowIdentity(row, rowKey);
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
prev.push(row);
|
|
24
|
-
}
|
|
25
|
-
return prev;
|
|
26
|
-
}, []);
|
|
26
|
+
return !!expandRowsMap[rowId] && canRowExpand(row, index);
|
|
27
|
+
});
|
|
27
28
|
} else {
|
|
28
29
|
expandRows.value = [];
|
|
29
30
|
}
|
|
30
31
|
};
|
|
31
32
|
const toggleRowExpansion = (row, expanded) => {
|
|
33
|
+
const dataArr = watcherData.data.value || [];
|
|
34
|
+
const rowIndex = dataArr.indexOf(row);
|
|
35
|
+
if (rowIndex > -1 && !canRowExpand(row, rowIndex)) return;
|
|
32
36
|
const changed = util.toggleRowStatus(
|
|
33
37
|
expandRows.value,
|
|
34
38
|
row,
|
|
@@ -49,7 +53,7 @@ function useExpand(watcherData) {
|
|
|
49
53
|
const keysMap = util.getKeysMap(data, rowKey);
|
|
50
54
|
expandRows.value = rowKeys.reduce((prev, cur) => {
|
|
51
55
|
const info = keysMap[cur];
|
|
52
|
-
if (info) {
|
|
56
|
+
if (info && canRowExpand(info.row, info.index)) {
|
|
53
57
|
prev.push(info.row);
|
|
54
58
|
}
|
|
55
59
|
return prev;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expand.js","sources":["../../../../../../../packages/components/table/src/store/expand.ts"],"sourcesContent":["import { getCurrentInstance, ref } from 'vue'\nimport { getKeysMap, getRowIdentity, toggleRowStatus } from '../util'\n\nimport type { Ref } from 'vue'\nimport type { WatcherPropsData } from '.'\nimport type { DefaultRow, Table } from '../table/defaults'\n\nfunction useExpand<T extends DefaultRow>(watcherData: WatcherPropsData<T>) {\n const instance = getCurrentInstance() as Table<T>\n const defaultExpandAll = ref(false)\n const expandRows: Ref<T[]> = ref([])\n const updateExpandRows = () => {\n const data = watcherData.data.value || []\n const rowKey = watcherData.rowKey.value\n if (defaultExpandAll.value) {\n expandRows.value = data.slice()\n } else if (rowKey) {\n // TODO:这里的代码可以优化\n const expandRowsMap = getKeysMap(expandRows.value, rowKey)\n expandRows.value = data.
|
|
1
|
+
{"version":3,"file":"expand.js","sources":["../../../../../../../packages/components/table/src/store/expand.ts"],"sourcesContent":["import { getCurrentInstance, ref } from 'vue'\nimport { getKeysMap, getRowIdentity, toggleRowStatus } from '../util'\n\nimport type { Ref } from 'vue'\nimport type { WatcherPropsData } from '.'\nimport type { DefaultRow, Table } from '../table/defaults'\n\nfunction useExpand<T extends DefaultRow>(watcherData: WatcherPropsData<T>) {\n const instance = getCurrentInstance() as Table<T>\n const defaultExpandAll = ref(false)\n const expandRows: Ref<T[]> = ref([])\n\n const canRowExpand = (row: T, index: number) => {\n const expandableFn = instance.store.states.rowExpandable.value\n return expandableFn?.(row, index) ?? true\n }\n\n const updateExpandRows = () => {\n const data = watcherData.data.value || []\n const rowKey = watcherData.rowKey.value\n if (defaultExpandAll.value) {\n expandRows.value = instance.store.states.rowExpandable.value\n ? data.filter(canRowExpand)\n : data.slice()\n } else if (rowKey) {\n // TODO:这里的代码可以优化\n const expandRowsMap = getKeysMap(expandRows.value, rowKey)\n expandRows.value = data.filter((row, index) => {\n const rowId = getRowIdentity(row, rowKey)\n return !!expandRowsMap[rowId] && canRowExpand(row, index)\n })\n } else {\n expandRows.value = []\n }\n }\n\n const toggleRowExpansion = (row: T, expanded?: boolean) => {\n const dataArr = watcherData.data.value || []\n const rowIndex = dataArr.indexOf(row)\n if (rowIndex > -1 && !canRowExpand(row, rowIndex)) return\n\n const changed = toggleRowStatus(\n expandRows.value,\n row,\n expanded,\n undefined,\n undefined,\n undefined,\n watcherData.rowKey.value\n )\n if (changed) {\n instance.emit('expand-change', row, expandRows.value.slice())\n }\n }\n\n const setExpandRowKeys = (rowKeys: (string | number)[]) => {\n instance.store.assertRowKey()\n // TODO:这里的代码可以优化\n const data = watcherData.data.value || []\n const rowKey = watcherData.rowKey.value\n const keysMap = getKeysMap(data, rowKey)\n expandRows.value = rowKeys.reduce((prev: T[], cur) => {\n const info = keysMap[cur]\n if (info && canRowExpand(info.row, info.index)) {\n prev.push(info.row)\n }\n return prev\n }, [])\n }\n\n const isRowExpanded = (row: T): boolean => {\n const rowKey = watcherData.rowKey.value\n if (rowKey) {\n const expandMap = getKeysMap(expandRows.value, rowKey)\n return !!expandMap[getRowIdentity(row, rowKey)]\n }\n return expandRows.value.includes(row)\n }\n return {\n updateExpandRows,\n toggleRowExpansion,\n setExpandRowKeys,\n isRowExpanded,\n states: {\n expandRows,\n defaultExpandAll,\n },\n }\n}\n\nexport default useExpand\n"],"names":["getCurrentInstance","ref","getKeysMap","getRowIdentity","toggleRowStatus"],"mappings":"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"}
|