pro-design-vue 1.2.4 → 1.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/dist/index.full.js +40 -14
  2. package/dist/index.full.min.js +7 -7
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +8 -8
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +40 -14
  7. package/es/components/config-provider/src/typing.d.ts +4 -2
  8. package/es/components/table/index.d.ts +2 -2
  9. package/es/components/table/src/components/InteralTable.vue.d.ts +3 -3
  10. package/es/components/table/src/components/Table.d.ts +3 -3
  11. package/es/index.d.ts +29 -27
  12. package/es/packages/components/config-provider/src/config-provider.vue2.mjs.map +1 -1
  13. package/es/packages/components/config-provider/src/useCssVariables.mjs +1 -0
  14. package/es/packages/components/config-provider/src/useCssVariables.mjs.map +1 -1
  15. package/es/packages/components/table/index.mjs.map +1 -1
  16. package/es/packages/components/table/src/components/Form/Form.mjs +0 -1
  17. package/es/packages/components/table/src/components/Form/Form.mjs.map +1 -1
  18. package/es/packages/components/table/src/components/Table.mjs +22 -9
  19. package/es/packages/components/table/src/components/Table.mjs.map +1 -1
  20. package/es/packages/utils/color/generator.mjs +15 -2
  21. package/es/packages/utils/color/generator.mjs.map +1 -1
  22. package/es/utils/color/generator.d.ts +1 -1
  23. package/es/version.d.ts +1 -1
  24. package/es/version.mjs +1 -1
  25. package/es/version.mjs.map +1 -1
  26. package/lib/components/config-provider/src/typing.d.ts +4 -2
  27. package/lib/components/table/index.d.ts +2 -2
  28. package/lib/components/table/src/components/InteralTable.vue.d.ts +3 -3
  29. package/lib/components/table/src/components/Table.d.ts +3 -3
  30. package/lib/index.d.ts +29 -27
  31. package/lib/packages/components/config-provider/src/config-provider.vue2.js.map +1 -1
  32. package/lib/packages/components/config-provider/src/useCssVariables.js +1 -0
  33. package/lib/packages/components/config-provider/src/useCssVariables.js.map +1 -1
  34. package/lib/packages/components/table/index.js.map +1 -1
  35. package/lib/packages/components/table/src/components/Form/Form.js +0 -1
  36. package/lib/packages/components/table/src/components/Form/Form.js.map +1 -1
  37. package/lib/packages/components/table/src/components/Table.js +22 -9
  38. package/lib/packages/components/table/src/components/Table.js.map +1 -1
  39. package/lib/packages/utils/color/generator.js +15 -2
  40. package/lib/packages/utils/color/generator.js.map +1 -1
  41. package/lib/utils/color/generator.d.ts +1 -1
  42. package/lib/version.d.ts +1 -1
  43. package/lib/version.js +1 -1
  44. package/lib/version.js.map +1 -1
  45. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sources":["../../../../../../../../packages/components/table/src/components/Table.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-11-01 09:26:05\n * @LastEditors: shen\n * @LastEditTime: 2025-10-14 14:43:46\n * @Description:\n */\n\nimport { defineComponent, ref, computed, watch, unref } from 'vue'\nimport { Card, ConfigProvider } from 'ant-design-vue'\nimport { theme } from './config'\nimport { useProvideHover } from '../hooks/useHover'\nimport { useProvideLevel } from '../hooks/useLevel'\nimport { usePrefixCls } from '@pro-design-vue/hooks'\nimport { convertChildrenToColumns, genColumnKey, isBordered } from '../utils/util'\nimport { tableProps } from './interface'\nimport { useFetchData } from '../hooks/useFetchData'\nimport { useContainer } from '../hooks/useContainer'\nimport { genProColumnToColumn } from '../utils/genProColumnToColumn'\nimport { columnSort } from '../utils/columnSort'\nimport { flatColumnsHandle } from '../utils/flatColumnsHandle'\nimport { omit, omitKeysAndUndefined } from '@pro-design-vue/utils'\nimport { useProConfigInject } from '@pro-design-vue/components/config-provider'\nimport useMergedState from '../hooks/useMergedState'\nimport InteralTable from './InteralTable.vue'\nimport ToolBar from './ToolBar/ToolBar.vue'\nimport Alert from './Alert.vue'\nimport FormRender from './Form/Form'\n\nimport type { ProFormItemType } from '@pro-design-vue/components/form'\nimport type {\n ColumnsType,\n GetRowKey,\n Key,\n OptionSearchProps,\n Position,\n RequestData,\n SorterResult,\n TableRowSelection,\n} from './interface'\nimport type { AppendCellRange } from '../hooks/RangeInterface'\nimport type { CustomSlotsType } from '../utils/type'\nimport type { ContextSlots } from './context/TableSlotsContext'\n\nexport default defineComponent({\n name: 'ProTable',\n inheritAttrs: false,\n props: tableProps(),\n slots: {} as CustomSlotsType<ContextSlots>,\n emits: ['keydown'],\n setup(props, { expose, slots, attrs, emit }) {\n const tableRef = ref()\n const { table, prefixCls: antPrefixCls } = useProConfigInject()\n\n const prefixCls = usePrefixCls('table')\n\n const { hoverRowKey } = useProvideHover({\n rowHoverDelay: computed(() => props.rowHoverDelay),\n rowHover: computed(() => props.rowHover ?? table?.value?.rowHover),\n })\n\n const mergedPrefixCls = computed(() => props.prefixCls ?? prefixCls)\n\n // useStyle(primaryColor, mergedPrefixCls, theme)\n\n useProvideLevel()\n\n watch(\n hoverRowKey,\n (newValue, oldValue) => {\n if (counter.rootDomRef.value) {\n counter.rootDomRef.value.style.removeProperty(\n `--${mergedPrefixCls.value}-row-bg-${oldValue}`,\n )\n counter.rootDomRef.value.style.setProperty(\n `--${mergedPrefixCls.value}-row-bg-${newValue}`,\n `hsl(var(--pro-accent))`,\n )\n }\n },\n { flush: 'post' },\n )\n\n const onKeydown = (ev: KeyboardEvent) => {\n ev.stopPropagation()\n emit('keydown', ev)\n }\n\n const fetchData = computed(() => {\n if (!props.request) return undefined\n\n return async (\n params?: Record<string, any>,\n sorters?: SorterResult<any>[],\n filter?: Record<string, (string | number)[] | null>,\n ) => {\n const actionParams = {\n ...(params || {}),\n ...(props.params || {}),\n }\n const response = await props.request!(actionParams, sorters, filter)\n return response as RequestData\n }\n })\n\n const actions = useFetchData(fetchData, props)\n const { dataSource, loading, pagination, pollingLoading, onTableChange, reload, reset } =\n actions\n const mergePagination = computed(() => {\n if (props.pagination === false) {\n return false\n }\n return pagination.value\n })\n\n const formSubmitLoading = computed(() => {\n if (typeof loading.value === 'boolean') {\n return loading.value\n } else if (typeof loading.value === 'object') {\n return loading.value.spinning\n } else {\n return undefined\n }\n })\n\n const onFormSearchSubmit = (values: any) => {\n // 判断search.onSearch返回值决定是否更新formSearch\n if (props.options && props.options.search) {\n const { name = 'keyword' } = props.options.search === true ? {} : props.options.search\n\n /** 如果传入的 onSearch 返回值为 false,则不要把options.search.name对应的值set到formSearch */\n const success = (props.options.search as OptionSearchProps)?.onSearch?.(\n actions.keyword.value!,\n )\n\n if (success !== false) {\n actions.setFormSearch({\n ...values,\n [name]: actions.keyword.value,\n })\n return\n }\n }\n\n actions.setFormSearch(values)\n }\n\n const counter = useContainer(props)\n\n // ---------- 列计算相关 start -----------------\n const tableColumn = computed(() => {\n return genProColumnToColumn({\n columns: props.columns,\n counter,\n }).sort(columnSort(counter.columnsMap.value))\n })\n\n watch(\n tableColumn,\n () => {\n if (tableColumn.value && tableColumn.value.length > 0) {\n // 重新生成key的字符串用于排序\n const columnKeys = tableColumn.value.map((item) => genColumnKey(item.key, item.index))\n counter.setSortKeyColumns(columnKeys)\n }\n },\n {\n immediate: true,\n },\n )\n\n /** 需要遍历一下,不然不支持嵌套表格 */\n const columns = computed(() => {\n const loopFilter = (column: any[]): any[] => {\n return column\n .map((item) => {\n // 删掉不应该显示的\n const columnKey = genColumnKey(item.key, item.index)\n const config = counter.columnsMap.value[columnKey]\n if (config && config.show === false) {\n return false\n }\n if (item.children) {\n return {\n ...item,\n children: loopFilter(item.children),\n }\n }\n return item\n })\n .filter(Boolean)\n }\n return loopFilter(tableColumn.value)\n })\n\n const onColumnsChange = (rawColumns, action: 'resize' | 'drag') => {\n const newMap = { ...counter.columnsMap.value }\n const newColumns = rawColumns.map((item) => genColumnKey(item.key, item.index))\n if (action === 'resize') {\n const loopSetWidth = (rawColumns) => {\n rawColumns.forEach((item) => {\n const key = genColumnKey(item.key, item.index)\n const newSetting = { ...newMap[key] }\n if (item.children?.length) {\n loopSetWidth(item.children)\n } else {\n newSetting.width = item.width\n newMap[key] = newSetting\n }\n })\n }\n loopSetWidth(rawColumns)\n } else {\n newColumns.forEach((key, order) => {\n newMap[key] = { ...(newMap[key] || {}), order }\n })\n }\n counter.setColumnsMap(newMap)\n counter.setSortKeyColumns(newColumns)\n props['onUpdate:columns']?.(rawColumns as ColumnsType, action)\n }\n const formItems = computed(() => {\n if (props.search === false) {\n return []\n }\n if (props.search?.items?.length) {\n return props.search?.items\n }\n return flatColumnsHandle(props.columns)\n .filter((item) => {\n if (item.hideInSearch) {\n return false\n }\n return true\n })\n .map((item) => {\n return omitKeysAndUndefined(\n {\n ...item,\n width: undefined,\n tooltip: item.headerTooltip,\n name: item.dataIndex,\n },\n ['dataIndex', 'width'],\n ) as ProFormItemType\n })\n })\n\n /** SelectedRowKeys受控处理selectRows */\n const preserveRecordsRef = ref(new Map<any, any>())\n // ============================ RowKey ============================\n const getRowKey = computed<GetRowKey>(() =>\n typeof props.rowKey == 'function'\n ? props.rowKey\n : (record: Record<string, any>) => {\n return record?.[(props.rowKey || 'id') as string]\n },\n )\n\n watch([() => dataSource.value, getRowKey], () => {\n if (dataSource.value?.length) {\n dataSource.value.forEach((data) => {\n const dataRowKey = getRowKey.value(data, -1)\n preserveRecordsRef.value.set(dataRowKey, data)\n })\n }\n onCleanSelected()\n })\n\n /** 单选多选的相关逻辑 */\n const [selectedRowKeys, setSelectedRowKeys] = useMergedState<(string | number)[] | undefined>(\n props.selectedRowKeys ||\n (props.rowSelection ? props.rowSelection?.defaultSelectedRowKeys || [] : undefined),\n {\n value: computed(\n () =>\n props.selectedRowKeys ||\n (props.rowSelection ? props.rowSelection.selectedRowKeys : undefined),\n ),\n },\n )\n\n const rowSelection = computed<TableRowSelection>(() => ({\n selectedRowKeys: selectedRowKeys.value,\n preserveSelectedRowKeys: true,\n ...props.rowSelection,\n onChange: (selectedRowKeys: Key[], selectedRows: any[]) => {\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange(selectedRowKeys, selectedRows)\n }\n props['onUpdate:selectedRowKeys']?.(selectedRowKeys, selectedRows)\n setSelectedRowKeys(selectedRowKeys)\n },\n }))\n\n const selectedRows = computed(() =>\n selectedRowKeys.value?.map((key) => preserveRecordsRef.value?.get(key)),\n )\n\n const onCleanSelected = () => {\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange([], [])\n }\n props['onUpdate:selectedRowKeys']?.([], [])\n setSelectedRowKeys([])\n }\n\n const hideToolbar = computed(\n () =>\n props.options === false &&\n !props.title &&\n !slots.title &&\n !slots.toolbar &&\n !slots.searchExtra &&\n !slots.toolbarActions,\n )\n\n /**\n * 是否需要 card 来包裹\n */\n const notNeedCardDom = computed(() => {\n if ((props.search === false || !formItems.value?.length) && props.toolBar === false) {\n return true\n }\n return false\n })\n\n const cardBodyStyle = computed(() => {\n if (props.cardProps === false || notNeedCardDom.value === true) return {}\n\n if (hideToolbar.value) {\n return {\n padding: 0,\n }\n }\n\n // if (props.toolBar) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n\n // if (props.toolBar && props.pagination === false) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n if (props.pagination !== false) {\n return {\n paddingBlockEnd: 0,\n }\n }\n return {}\n })\n\n expose({\n scrollTo: (pos: string | Position, behavior: 'auto' | 'smooth') => {\n tableRef.value?.scrollTo(pos, behavior)\n },\n scrollLeft: computed(() => {\n return unref(tableRef.value?.scrollLeft)\n }),\n scrollTop: computed(() => {\n return unref(tableRef.value?.scrollTop)\n }),\n bodyRef: computed(() => {\n return unref(tableRef.value?.bodyRef)\n }),\n copySelectedRange: () => {\n return tableRef.value?.copySelectedRange()\n },\n getSelectedRange: () => {\n return tableRef.value?.getSelectedRange()\n },\n clearAllSelectedRange: () => {\n return tableRef.value?.clearAllSelectedRange()\n },\n clearDataSource: () => {\n dataSource.value = []\n },\n appendCellToSelectedRange: (params: AppendCellRange) => {\n return tableRef.value?.appendCellToSelectedRange(params)\n },\n openEditor: (cellInfos: any[]) => {\n return tableRef.value?.openEditor(cellInfos)\n },\n closeEditor: (cellInfos: any[]) => {\n return tableRef.value?.closeEditor(cellInfos)\n },\n reload,\n reset,\n })\n\n return () => {\n const { expandIcon = slots.expandIcon, expandedRowRender = slots.expandedRowRender } = props\n const mergeColumns = columns.value || convertChildrenToColumns(slots.default?.()) || []\n let tableDom = (\n <>\n {props.toolBar !== false && !hideToolbar.value && (\n <ToolBar\n title={props.title}\n subTitle={props.subTitle}\n tooltip={props.tooltip}\n prefixCls={mergedPrefixCls.value}\n options={props.options}\n actionsRef={{\n ...actions,\n fullScreen: () => {\n if (!counter.rootDomRef.value || !document.fullscreenEnabled) {\n return\n }\n if (document.fullscreenElement) {\n document.exitFullscreen()\n counter.hasFullScreen.value = false\n } else {\n counter.rootDomRef.value?.requestFullscreen()\n counter.hasFullScreen.value = true\n }\n },\n }}\n tableColumn={tableColumn.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n v-slots={{\n toolbar: slots.toolbar,\n title: slots.title,\n searchExtra: slots.searchExtra,\n actions: slots.toolbarActions,\n }}\n onFormSearchSubmit={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n />\n )}\n {!!props.rowSelection &&\n props.rowSelection?.type !== 'radio' &&\n props.alwaysShowAlert !== false &&\n !!selectedRowKeys.value!.length && (\n <Alert\n prefixCls={mergedPrefixCls.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n onCleanSelected={onCleanSelected}\n v-slots={{ info: slots.alertInfo, actions: slots.alertActions }}\n />\n )}\n <InteralTable\n ref={tableRef}\n {...omit(props, [\n 'onChange',\n 'onUpdate:pagination',\n 'onUpdate:selectedRowKeys',\n 'onUpdate:columns',\n ])}\n prefixCls={mergedPrefixCls.value}\n columns={mergeColumns || []}\n size={counter.tableSize.value}\n dataSource={dataSource.value}\n loading={loading.value}\n rowSelection={props.rowSelection ? rowSelection.value : undefined}\n pagination={mergePagination.value}\n expandIcon={expandIcon}\n expandedRowRender={expandedRowRender}\n hasContextmenuPopup={!!slots.contextmenuPopup}\n onChange={onTableChange}\n onUpdate:columns={onColumnsChange}\n v-slots={{\n ...slots,\n footer: props.footer || slots.footer,\n }}\n />\n </>\n )\n\n if (!(props.cardProps === false || notNeedCardDom.value)) {\n tableDom = (\n <Card\n bordered={isBordered('table', props.cardBordered)}\n bodyStyle={cardBodyStyle.value}\n {...props.cardProps}\n >\n {tableDom}\n </Card>\n )\n }\n\n return (\n <ConfigProvider\n prefixCls={antPrefixCls?.value}\n getPopupContainer={() => {\n return (counter.rootDomRef.value || document.body) as any as HTMLElement\n }}\n >\n <div\n ref={counter.rootDomRef}\n {...attrs}\n class={[\n `${mergedPrefixCls.value}-wrapper ${props.bordered ? mergedPrefixCls.value + '-wrapper-bordered' : ''} ${\n 'dark' === theme.value ? mergedPrefixCls.value + '-wrapper-dark' : ''\n } ${pollingLoading.value ? mergedPrefixCls.value + '-wrapper-polling' : ''}`,\n attrs.class,\n ]}\n onKeydown={onKeydown}\n >\n {props.search !== false && !!formItems.value?.length && (\n <FormRender\n prefixCls={mergedPrefixCls.value}\n items={formItems.value}\n cardBordered={props.cardBordered}\n search={props.search}\n tableShowCard={props.cardProps !== false}\n loading={formSubmitLoading.value}\n beforeSearchSubmit={props.beforeSearchSubmit}\n manual={props.manual || props.manualRequest}\n v-slots={slots}\n onReset={props.onReset}\n onSubmit={props.onSubmit}\n onFormSearchSubmit={onFormSearchSubmit}\n onSearchTabChange={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n />\n )}\n {tableDom}\n </div>\n </ConfigProvider>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","inheritAttrs","props","tableProps","slots","emits","setup","expose","attrs","emit","tableRef","ref","table","prefixCls","antPrefixCls","useProConfigInject","usePrefixCls","hoverRowKey","useProvideHover","rowHoverDelay","computed","rowHover","_a","value","mergedPrefixCls","useProvideLevel","watch","newValue","oldValue","counter","rootDomRef","style","removeProperty","setProperty","flush","onKeydown","ev","stopPropagation","fetchData","request","undefined","params","sorters","filter","actionParams","response","actions","useFetchData","dataSource","loading","pagination","pollingLoading","onTableChange","reload","reset","mergePagination","formSubmitLoading","spinning","onFormSearchSubmit","values","options","search","success","onSearch","keyword","setFormSearch","useContainer","tableColumn","genProColumnToColumn","columns","sort","columnSort","columnsMap","length","columnKeys","map","item","genColumnKey","key","index","setSortKeyColumns","immediate","loopFilter","column","columnKey","config","show","children","Boolean","onColumnsChange","rawColumns","action","newMap","newColumns","loopSetWidth","forEach","newSetting","width","order","setColumnsMap","formItems","items","flatColumnsHandle","hideInSearch","omitKeysAndUndefined","tooltip","headerTooltip","dataIndex","preserveRecordsRef","Map","getRowKey","rowKey","record","data","dataRowKey","set","onCleanSelected","selectedRowKeys","setSelectedRowKeys","useMergedState","rowSelection","defaultSelectedRowKeys","preserveSelectedRowKeys","onChange","selectedRows","get","hideToolbar","title","toolbar","searchExtra","toolbarActions","notNeedCardDom","toolBar","cardBodyStyle","cardProps","padding","paddingBlockEnd","scrollTo","pos","behavior","scrollLeft","unref","scrollTop","bodyRef","copySelectedRange","getSelectedRange","clearAllSelectedRange","clearDataSource","appendCellToSelectedRange","openEditor","cellInfos","closeEditor","expandIcon","expandedRowRender","mergeColumns","convertChildrenToColumns","default","tableDom","_createVNode","_Fragment","ToolBar","subTitle","fullScreen","document","fullscreenEnabled","fullscreenElement","exitFullscreen","hasFullScreen","requestFullscreen","newValues","formSearch","type","alwaysShowAlert","Alert","info","alertInfo","alertActions","InteralTable","_mergeProps","omit","tableSize","contextmenuPopup","footer","_tableDom","Card","isBordered","cardBordered","ConfigProvider","getPopupContainer","body","bordered","theme","class","FormRender","beforeSearchSubmit","manual","manualRequest","onReset","onSubmit"],"mappings":"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"}
1
+ {"version":3,"file":"Table.js","sources":["../../../../../../../../packages/components/table/src/components/Table.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-11-01 09:26:05\n * @LastEditors: shen\n * @LastEditTime: 2025-10-15 15:00:45\n * @Description:\n */\n\nimport { defineComponent, ref, computed, watch, unref } from 'vue'\nimport { Card, ConfigProvider } from 'ant-design-vue'\nimport { theme } from './config'\nimport { useProvideHover } from '../hooks/useHover'\nimport { useProvideLevel } from '../hooks/useLevel'\nimport { usePrefixCls } from '@pro-design-vue/hooks'\nimport { convertChildrenToColumns, genColumnKey, isBordered } from '../utils/util'\nimport { tableProps } from './interface'\nimport { useFetchData } from '../hooks/useFetchData'\nimport { useContainer } from '../hooks/useContainer'\nimport { genProColumnToColumn } from '../utils/genProColumnToColumn'\nimport { columnSort } from '../utils/columnSort'\nimport { flatColumnsHandle } from '../utils/flatColumnsHandle'\nimport { omit, omitKeysAndUndefined } from '@pro-design-vue/utils'\nimport { useProConfigInject } from '@pro-design-vue/components/config-provider'\nimport useMergedState from '../hooks/useMergedState'\nimport InteralTable from './InteralTable.vue'\nimport ToolBar from './ToolBar/ToolBar.vue'\nimport Alert from './Alert.vue'\nimport FormRender from './Form/Form'\n\nimport type { ProFormItemType } from '@pro-design-vue/components/form'\nimport type {\n ColumnsType,\n GetRowKey,\n Key,\n OptionSearchProps,\n Position,\n RequestData,\n SorterResult,\n TableRowSelection,\n} from './interface'\nimport type { AppendCellRange } from '../hooks/RangeInterface'\nimport type { CustomSlotsType } from '../utils/type'\nimport type { ContextSlots } from './context/TableSlotsContext'\n\nexport default defineComponent({\n name: 'ProTable',\n inheritAttrs: false,\n props: tableProps(),\n slots: {} as CustomSlotsType<ContextSlots>,\n emits: ['keydown'],\n setup(props, { expose, slots, attrs, emit }) {\n const tableRef = ref()\n const { table, prefixCls: antPrefixCls } = useProConfigInject()\n\n const prefixCls = usePrefixCls('table')\n\n const { hoverRowKey } = useProvideHover({\n rowHoverDelay: computed(() => props.rowHoverDelay),\n rowHover: computed(() => props.rowHover ?? table?.value?.rowHover),\n })\n\n const mergedPrefixCls = computed(() => props.prefixCls ?? prefixCls)\n const mergeOptions = computed(() => {\n if (props.options === false) {\n return false\n }\n if (props.options === undefined) {\n return table?.value?.options\n }\n return { ...table?.value?.options, ...props.options }\n })\n\n useProvideLevel()\n\n watch(\n hoverRowKey,\n (newValue, oldValue) => {\n if (counter.rootDomRef.value) {\n counter.rootDomRef.value.style.removeProperty(\n `--${mergedPrefixCls.value}-row-bg-${oldValue}`,\n )\n counter.rootDomRef.value.style.setProperty(\n `--${mergedPrefixCls.value}-row-bg-${newValue}`,\n `hsl(var(--pro-accent))`,\n )\n }\n },\n { flush: 'post' },\n )\n\n const onKeydown = (ev: KeyboardEvent) => {\n ev.stopPropagation()\n emit('keydown', ev)\n }\n\n const fetchData = computed(() => {\n if (!props.request) return undefined\n\n return async (\n params?: Record<string, any>,\n sorters?: SorterResult<any>[],\n filter?: Record<string, (string | number)[] | null>,\n ) => {\n const actionParams = {\n ...(params || {}),\n ...(props.params || {}),\n }\n const response = await props.request!(actionParams, sorters, filter)\n return response as RequestData\n }\n })\n\n const actions = useFetchData(fetchData, props)\n const { dataSource, loading, pagination, pollingLoading, onTableChange, reload, reset } =\n actions\n const mergePagination = computed(() => {\n if (props.pagination === false) {\n return false\n }\n return pagination.value\n })\n\n const formSubmitLoading = computed(() => {\n if (typeof loading.value === 'boolean') {\n return loading.value\n } else if (typeof loading.value === 'object') {\n return loading.value.spinning\n } else {\n return undefined\n }\n })\n\n const onFormSearchSubmit = (values: any) => {\n // 判断search.onSearch返回值决定是否更新formSearch\n if (mergeOptions.value && mergeOptions.value.search) {\n const { name = 'keyword' } =\n mergeOptions.value.search === true ? {} : mergeOptions.value.search\n\n /** 如果传入的 onSearch 返回值为 false,则不要把options.search.name对应的值set到formSearch */\n const success = (mergeOptions.value.search as OptionSearchProps)?.onSearch?.(\n actions.keyword.value!,\n )\n\n if (success !== false) {\n actions.setFormSearch({\n ...values,\n [name]: actions.keyword.value,\n })\n return\n }\n }\n\n actions.setFormSearch(values)\n }\n\n const counter = useContainer(props)\n\n // ---------- 列计算相关 start -----------------\n const tableColumn = computed(() => {\n return genProColumnToColumn({\n columns: props.columns,\n counter,\n }).sort(columnSort(counter.columnsMap.value))\n })\n\n watch(\n tableColumn,\n () => {\n if (tableColumn.value && tableColumn.value.length > 0) {\n // 重新生成key的字符串用于排序\n const columnKeys = tableColumn.value.map((item) => genColumnKey(item.key, item.index))\n counter.setSortKeyColumns(columnKeys)\n }\n },\n {\n immediate: true,\n },\n )\n\n /** 需要遍历一下,不然不支持嵌套表格 */\n const columns = computed(() => {\n const loopFilter = (column: any[]): any[] => {\n return column\n .map((item) => {\n // 删掉不应该显示的\n const columnKey = genColumnKey(item.key, item.index)\n const config = counter.columnsMap.value[columnKey]\n if (config && config.show === false) {\n return false\n }\n if (item.children) {\n return {\n ...item,\n children: loopFilter(item.children),\n }\n }\n return item\n })\n .filter(Boolean)\n }\n return loopFilter(tableColumn.value)\n })\n\n const onColumnsChange = (rawColumns, action: 'resize' | 'drag') => {\n const newMap = { ...counter.columnsMap.value }\n const newColumns = rawColumns.map((item) => genColumnKey(item.key, item.index))\n if (action === 'resize') {\n const loopSetWidth = (rawColumns) => {\n rawColumns.forEach((item) => {\n const key = genColumnKey(item.key, item.index)\n const newSetting = { ...newMap[key] }\n if (item.children?.length) {\n loopSetWidth(item.children)\n } else {\n newSetting.width = item.width\n newMap[key] = newSetting\n }\n })\n }\n loopSetWidth(rawColumns)\n } else {\n newColumns.forEach((key, order) => {\n newMap[key] = { ...(newMap[key] || {}), order }\n })\n }\n counter.setColumnsMap(newMap)\n counter.setSortKeyColumns(newColumns)\n props['onUpdate:columns']?.(rawColumns as ColumnsType, action)\n }\n const formItems = computed(() => {\n if (props.search === false) {\n return []\n }\n if (props.search?.items?.length) {\n return props.search?.items\n }\n return flatColumnsHandle(props.columns)\n .filter((item) => {\n if (item.hideInSearch) {\n return false\n }\n return true\n })\n .map((item) => {\n return omitKeysAndUndefined(\n {\n ...item,\n width: undefined,\n tooltip: item.headerTooltip,\n name: item.dataIndex,\n },\n ['dataIndex', 'width'],\n ) as ProFormItemType\n })\n })\n\n /** SelectedRowKeys受控处理selectRows */\n const preserveRecordsRef = ref(new Map<any, any>())\n // ============================ RowKey ============================\n const getRowKey = computed<GetRowKey>(() =>\n typeof props.rowKey == 'function'\n ? props.rowKey\n : (record: Record<string, any>) => {\n return record?.[(props.rowKey || 'id') as string]\n },\n )\n\n watch([() => dataSource.value, getRowKey], () => {\n if (dataSource.value?.length) {\n dataSource.value.forEach((data) => {\n const dataRowKey = getRowKey.value(data, -1)\n preserveRecordsRef.value.set(dataRowKey, data)\n })\n }\n onCleanSelected()\n })\n\n /** 单选多选的相关逻辑 */\n const [selectedRowKeys, setSelectedRowKeys] = useMergedState<(string | number)[] | undefined>(\n props.selectedRowKeys ||\n (props.rowSelection ? props.rowSelection?.defaultSelectedRowKeys || [] : undefined),\n {\n value: computed(\n () =>\n props.selectedRowKeys ||\n (props.rowSelection ? props.rowSelection.selectedRowKeys : undefined),\n ),\n },\n )\n\n const rowSelection = computed<TableRowSelection>(() => ({\n selectedRowKeys: selectedRowKeys.value,\n preserveSelectedRowKeys: true,\n ...props.rowSelection,\n onChange: (selectedRowKeys: Key[], selectedRows: any[]) => {\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange(selectedRowKeys, selectedRows)\n }\n props['onUpdate:selectedRowKeys']?.(selectedRowKeys, selectedRows)\n setSelectedRowKeys(selectedRowKeys)\n },\n }))\n\n const selectedRows = computed(() =>\n selectedRowKeys.value?.map((key) => preserveRecordsRef.value?.get(key)),\n )\n\n const onCleanSelected = () => {\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange([], [])\n }\n props['onUpdate:selectedRowKeys']?.([], [])\n setSelectedRowKeys([])\n }\n\n const hideToolbar = computed(\n () =>\n mergeOptions.value === false &&\n !props.title &&\n !slots.title &&\n !slots.toolbar &&\n !slots.searchExtra &&\n !slots.toolbarActions,\n )\n\n /**\n * 是否需要 card 来包裹\n */\n const notNeedCardDom = computed(() => {\n if ((props.search === false || !formItems.value?.length) && props.toolBar === false) {\n return true\n }\n return false\n })\n\n const cardBodyStyle = computed(() => {\n if (props.cardProps === false || notNeedCardDom.value === true) return {}\n\n if (hideToolbar.value) {\n return {\n padding: 0,\n }\n }\n\n // if (props.toolBar) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n\n // if (props.toolBar && props.pagination === false) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n if (props.pagination !== false) {\n return {\n paddingBlockEnd: 0,\n }\n }\n return {}\n })\n\n expose({\n scrollTo: (pos: string | Position, behavior: 'auto' | 'smooth') => {\n tableRef.value?.scrollTo(pos, behavior)\n },\n scrollLeft: computed(() => {\n return unref(tableRef.value?.scrollLeft)\n }),\n scrollTop: computed(() => {\n return unref(tableRef.value?.scrollTop)\n }),\n bodyRef: computed(() => {\n return unref(tableRef.value?.bodyRef)\n }),\n copySelectedRange: () => {\n return tableRef.value?.copySelectedRange()\n },\n getSelectedRange: () => {\n return tableRef.value?.getSelectedRange()\n },\n clearAllSelectedRange: () => {\n return tableRef.value?.clearAllSelectedRange()\n },\n clearDataSource: () => {\n dataSource.value = []\n },\n appendCellToSelectedRange: (params: AppendCellRange) => {\n return tableRef.value?.appendCellToSelectedRange(params)\n },\n openEditor: (cellInfos: any[]) => {\n return tableRef.value?.openEditor(cellInfos)\n },\n closeEditor: (cellInfos: any[]) => {\n return tableRef.value?.closeEditor(cellInfos)\n },\n reload,\n reset,\n })\n\n return () => {\n const { expandIcon = slots.expandIcon, expandedRowRender = slots.expandedRowRender } = props\n const mergeColumns = columns.value || convertChildrenToColumns(slots.default?.()) || []\n let tableDom = (\n <>\n {props.toolBar !== false && !hideToolbar.value && (\n <ToolBar\n title={props.title}\n subTitle={props.subTitle}\n tooltip={props.tooltip}\n prefixCls={mergedPrefixCls.value}\n options={mergeOptions.value}\n actionsRef={{\n ...actions,\n fullScreen: () => {\n if (!counter.rootDomRef.value || !document.fullscreenEnabled) {\n return\n }\n if (document.fullscreenElement) {\n document.exitFullscreen()\n counter.hasFullScreen.value = false\n } else {\n counter.rootDomRef.value?.requestFullscreen()\n counter.hasFullScreen.value = true\n }\n },\n }}\n tableColumn={tableColumn.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n v-slots={{\n toolbar: slots.toolbar,\n title: slots.title,\n searchExtra: slots.searchExtra,\n actions: slots.toolbarActions,\n }}\n onFormSearchSubmit={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n />\n )}\n {!!props.rowSelection &&\n props.rowSelection?.type !== 'radio' &&\n props.alwaysShowAlert !== false &&\n !!selectedRowKeys.value!.length && (\n <Alert\n prefixCls={mergedPrefixCls.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n onCleanSelected={onCleanSelected}\n v-slots={{ info: slots.alertInfo, actions: slots.alertActions }}\n />\n )}\n <InteralTable\n ref={tableRef}\n {...omit(props, [\n 'onChange',\n 'onUpdate:pagination',\n 'onUpdate:selectedRowKeys',\n 'onUpdate:columns',\n ])}\n prefixCls={mergedPrefixCls.value}\n columns={mergeColumns || []}\n size={counter.tableSize.value}\n dataSource={dataSource.value}\n loading={loading.value}\n rowSelection={props.rowSelection ? rowSelection.value : undefined}\n pagination={mergePagination.value}\n expandIcon={expandIcon}\n expandedRowRender={expandedRowRender}\n hasContextmenuPopup={!!slots.contextmenuPopup}\n onChange={onTableChange}\n onUpdate:columns={onColumnsChange}\n v-slots={{\n ...slots,\n footer: props.footer || slots.footer,\n }}\n />\n </>\n )\n\n if (!(props.cardProps === false || notNeedCardDom.value)) {\n tableDom = (\n <Card\n bordered={isBordered('table', props.cardBordered ?? table?.value?.cardBordered)}\n bodyStyle={cardBodyStyle.value}\n {...props.cardProps}\n >\n {tableDom}\n </Card>\n )\n }\n\n return (\n <ConfigProvider\n prefixCls={antPrefixCls?.value}\n getPopupContainer={() => {\n return (counter.rootDomRef.value || document.body) as any as HTMLElement\n }}\n >\n <div\n ref={counter.rootDomRef}\n {...attrs}\n class={[\n `${mergedPrefixCls.value}-wrapper ${props.bordered ? mergedPrefixCls.value + '-wrapper-bordered' : ''} ${\n 'dark' === theme.value ? mergedPrefixCls.value + '-wrapper-dark' : ''\n } ${pollingLoading.value ? mergedPrefixCls.value + '-wrapper-polling' : ''}`,\n attrs.class,\n ]}\n onKeydown={onKeydown}\n >\n {props.search !== false && !!formItems.value?.length && (\n <FormRender\n prefixCls={mergedPrefixCls.value}\n items={formItems.value}\n cardBordered={props.cardBordered ?? table?.value?.cardBordered}\n search={props.search}\n tableShowCard={props.cardProps !== false}\n loading={formSubmitLoading.value}\n beforeSearchSubmit={props.beforeSearchSubmit}\n manual={props.manual || props.manualRequest}\n v-slots={slots}\n onReset={props.onReset}\n onSubmit={props.onSubmit}\n onFormSearchSubmit={onFormSearchSubmit}\n onSearchTabChange={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n />\n )}\n {tableDom}\n </div>\n </ConfigProvider>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","inheritAttrs","props","tableProps","slots","emits","setup","expose","attrs","emit","tableRef","ref","table","prefixCls","antPrefixCls","useProConfigInject","usePrefixCls","hoverRowKey","useProvideHover","rowHoverDelay","computed","rowHover","_a","value","mergedPrefixCls","mergeOptions","options","undefined","useProvideLevel","watch","newValue","oldValue","counter","rootDomRef","style","removeProperty","setProperty","flush","onKeydown","ev","stopPropagation","fetchData","request","params","sorters","filter","actionParams","response","actions","useFetchData","dataSource","loading","pagination","pollingLoading","onTableChange","reload","reset","mergePagination","formSubmitLoading","spinning","onFormSearchSubmit","values","search","success","onSearch","keyword","setFormSearch","useContainer","tableColumn","genProColumnToColumn","columns","sort","columnSort","columnsMap","length","columnKeys","map","item","genColumnKey","key","index","setSortKeyColumns","immediate","loopFilter","column","columnKey","config","show","children","Boolean","onColumnsChange","rawColumns","action","newMap","newColumns","loopSetWidth","forEach","newSetting","width","order","setColumnsMap","formItems","items","flatColumnsHandle","hideInSearch","omitKeysAndUndefined","tooltip","headerTooltip","dataIndex","preserveRecordsRef","Map","getRowKey","rowKey","record","data","dataRowKey","set","onCleanSelected","selectedRowKeys","setSelectedRowKeys","useMergedState","rowSelection","defaultSelectedRowKeys","preserveSelectedRowKeys","onChange","selectedRows","get","hideToolbar","title","toolbar","searchExtra","toolbarActions","notNeedCardDom","toolBar","cardBodyStyle","cardProps","padding","paddingBlockEnd","scrollTo","pos","behavior","scrollLeft","unref","scrollTop","bodyRef","copySelectedRange","getSelectedRange","clearAllSelectedRange","clearDataSource","appendCellToSelectedRange","openEditor","cellInfos","closeEditor","expandIcon","expandedRowRender","mergeColumns","convertChildrenToColumns","default","tableDom","_createVNode","_Fragment","ToolBar","subTitle","fullScreen","document","fullscreenEnabled","fullscreenElement","exitFullscreen","hasFullScreen","requestFullscreen","newValues","formSearch","type","alwaysShowAlert","Alert","info","alertInfo","alertActions","InteralTable","_mergeProps","omit","tableSize","contextmenuPopup","footer","_tableDom","Card","isBordered","cardBordered","ConfigProvider","getPopupContainer","body","_b","_c","bordered","theme","class","FormRender","beforeSearchSubmit","manual","manualRequest","onReset","onSubmit"],"mappings":"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"}
@@ -4,7 +4,20 @@ var index = require('../../../node_modules/.pnpm/theme-colors@0.1.0/node_modules
4
4
  var convert = require('./convert.js');
5
5
  var index$1 = require('../../../node_modules/.pnpm/@ctrl_tinycolor@4.2.0/node_modules/@ctrl/tinycolor/dist/module/index.js');
6
6
 
7
- function generatorColorVariables(colorItems, namespace) {
7
+ const darkColorKeyMap = {
8
+ 50: "950",
9
+ 100: "900",
10
+ 200: "800",
11
+ 300: "700",
12
+ 400: "600",
13
+ 500: "500",
14
+ 600: "400",
15
+ 700: "300",
16
+ 800: "200",
17
+ 900: "100",
18
+ 950: "50"
19
+ };
20
+ function generatorColorVariables(colorItems, dark, namespace) {
8
21
  const colorVariables = {};
9
22
  colorItems.forEach(({ alias, color, name }) => {
10
23
  if (color) {
@@ -12,7 +25,7 @@ function generatorColorVariables(colorItems, namespace) {
12
25
  let mainColor = colorsMap["500"];
13
26
  const colorKeys = Object.keys(colorsMap);
14
27
  colorKeys.forEach((key) => {
15
- const colorValue = colorsMap[key];
28
+ const colorValue = !dark ? colorsMap[key] : colorsMap[darkColorKeyMap[key]];
16
29
  if (colorValue) {
17
30
  const hslColor = convert.convertToHslCssVar(colorValue);
18
31
  colorVariables[`--${namespace}-${name}-${key}`] = hslColor;
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sources":["../../../../../../packages/utils/color/generator.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2025-05-10 22:33:31\n * @LastEditors: shen\n * @LastEditTime: 2025-10-12 11:04:00\n * @Description:\n */\nimport { getColors } from 'theme-colors'\n\nimport { convertToHslCssVar, TinyColor } from './convert'\n\ninterface ColorItem {\n alias?: string\n color: string\n name: string\n key: string\n}\n\nfunction generatorColorVariables(colorItems: ColorItem[], namespace?: string) {\n const colorVariables: Record<string, string> = {}\n\n colorItems.forEach(({ alias, color, name }) => {\n if (color) {\n const colorsMap = getColors(new TinyColor(color).toHexString())\n\n let mainColor = colorsMap['500']\n\n const colorKeys = Object.keys(colorsMap)\n\n colorKeys.forEach((key) => {\n const colorValue = colorsMap[key]\n\n if (colorValue) {\n const hslColor = convertToHslCssVar(colorValue)\n colorVariables[`--${namespace}-${name}-${key}`] = hslColor\n if (alias) {\n colorVariables[`--${namespace}-${alias}-${key}`] = hslColor\n }\n\n if (key === '500') {\n mainColor = hslColor\n }\n }\n })\n if (alias && mainColor) {\n colorVariables[`--${namespace}-${alias}`] = mainColor\n }\n }\n })\n return colorVariables\n}\n\nexport { generatorColorVariables }\n"],"names":["getColors","TinyColor","convertToHslCssVar"],"mappings":";;;;;;AAkBA,SAAS,uBAAA,CAAwB,YAAyB,SAAA,EAAoB;AAC5E,EAAA,MAAM,iBAAyC,EAAC;AAEhD,EAAA,UAAA,CAAW,QAAQ,CAAC,EAAE,KAAA,EAAO,KAAA,EAAO,MAAK,KAAM;AAC7C,IAAA,IAAI,KAAA,EAAO;AACT,MAAA,MAAM,YAAYA,eAAA,CAAU,IAAIC,kBAAU,KAAK,CAAA,CAAE,aAAa,CAAA;AAE9D,MAAA,IAAI,SAAA,GAAY,UAAU,KAAK,CAAA;AAE/B,MAAA,MAAM,SAAA,GAAY,MAAA,CAAO,IAAA,CAAK,SAAS,CAAA;AAEvC,MAAA,SAAA,CAAU,OAAA,CAAQ,CAAC,GAAA,KAAQ;AACzB,QAAA,MAAM,UAAA,GAAa,UAAU,GAAG,CAAA;AAEhC,QAAA,IAAI,UAAA,EAAY;AACd,UAAA,MAAM,QAAA,GAAWC,2BAAmB,UAAU,CAAA;AAC9C,UAAA,cAAA,CAAe,KAAK,SAAS,CAAA,CAAA,EAAI,IAAI,CAAA,CAAA,EAAI,GAAG,EAAE,CAAA,GAAI,QAAA;AAClD,UAAA,IAAI,KAAA,EAAO;AACT,YAAA,cAAA,CAAe,KAAK,SAAS,CAAA,CAAA,EAAI,KAAK,CAAA,CAAA,EAAI,GAAG,EAAE,CAAA,GAAI,QAAA;AAAA,UACrD;AAEA,UAAA,IAAI,QAAQ,KAAA,EAAO;AACjB,YAAA,SAAA,GAAY,QAAA;AAAA,UACd;AAAA,QACF;AAAA,MACF,CAAC,CAAA;AACD,MAAA,IAAI,SAAS,SAAA,EAAW;AACtB,QAAA,cAAA,CAAe,CAAA,EAAA,EAAK,SAAS,CAAA,CAAA,EAAI,KAAK,EAAE,CAAA,GAAI,SAAA;AAAA,MAC9C;AAAA,IACF;AAAA,EACF,CAAC,CAAA;AACD,EAAA,OAAO,cAAA;AACT;;;;"}
1
+ {"version":3,"file":"generator.js","sources":["../../../../../../packages/utils/color/generator.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2025-05-10 22:33:31\n * @LastEditors: shen\n * @LastEditTime: 2025-10-15 15:42:18\n * @Description:\n */\nimport { getColors } from 'theme-colors'\n\nimport { convertToHslCssVar, TinyColor } from './convert'\n\ninterface ColorItem {\n alias?: string\n color: string\n name: string\n key: string\n}\n\nconst darkColorKeyMap = {\n 50: '950',\n 100: '900',\n 200: '800',\n 300: '700',\n 400: '600',\n 500: '500',\n 600: '400',\n 700: '300',\n 800: '200',\n 900: '100',\n 950: '50',\n}\n\nfunction generatorColorVariables(colorItems: ColorItem[], dark: boolean, namespace?: string) {\n const colorVariables: Record<string, string> = {}\n\n colorItems.forEach(({ alias, color, name }) => {\n if (color) {\n const colorsMap = getColors(new TinyColor(color).toHexString())\n\n let mainColor = colorsMap['500']\n\n const colorKeys = Object.keys(colorsMap)\n colorKeys.forEach((key) => {\n const colorValue = !dark ? colorsMap[key] : colorsMap[darkColorKeyMap[key]]\n\n if (colorValue) {\n const hslColor = convertToHslCssVar(colorValue)\n colorVariables[`--${namespace}-${name}-${key}`] = hslColor\n if (alias) {\n colorVariables[`--${namespace}-${alias}-${key}`] = hslColor\n }\n\n if (key === '500') {\n mainColor = hslColor\n }\n }\n })\n if (alias && mainColor) {\n colorVariables[`--${namespace}-${alias}`] = mainColor\n }\n }\n })\n return colorVariables\n}\n\nexport { generatorColorVariables }\n"],"names":["getColors","TinyColor","convertToHslCssVar"],"mappings":";;;;;;AAkBA,MAAM,eAAA,GAAkB;AAAA,EACtB,EAAA,EAAI,KAAA;AAAA,EACJ,GAAA,EAAK,KAAA;AAAA,EACL,GAAA,EAAK,KAAA;AAAA,EACL,GAAA,EAAK,KAAA;AAAA,EACL,GAAA,EAAK,KAAA;AAAA,EACL,GAAA,EAAK,KAAA;AAAA,EACL,GAAA,EAAK,KAAA;AAAA,EACL,GAAA,EAAK,KAAA;AAAA,EACL,GAAA,EAAK,KAAA;AAAA,EACL,GAAA,EAAK,KAAA;AAAA,EACL,GAAA,EAAK;AACP,CAAA;AAEA,SAAS,uBAAA,CAAwB,UAAA,EAAyB,IAAA,EAAe,SAAA,EAAoB;AAC3F,EAAA,MAAM,iBAAyC,EAAC;AAEhD,EAAA,UAAA,CAAW,QAAQ,CAAC,EAAE,KAAA,EAAO,KAAA,EAAO,MAAK,KAAM;AAC7C,IAAA,IAAI,KAAA,EAAO;AACT,MAAA,MAAM,YAAYA,eAAA,CAAU,IAAIC,kBAAU,KAAK,CAAA,CAAE,aAAa,CAAA;AAE9D,MAAA,IAAI,SAAA,GAAY,UAAU,KAAK,CAAA;AAE/B,MAAA,MAAM,SAAA,GAAY,MAAA,CAAO,IAAA,CAAK,SAAS,CAAA;AACvC,MAAA,SAAA,CAAU,OAAA,CAAQ,CAAC,GAAA,KAAQ;AACzB,QAAA,MAAM,UAAA,GAAa,CAAC,IAAA,GAAO,SAAA,CAAU,GAAG,CAAA,GAAI,SAAA,CAAU,eAAA,CAAgB,GAAG,CAAC,CAAA;AAE1E,QAAA,IAAI,UAAA,EAAY;AACd,UAAA,MAAM,QAAA,GAAWC,2BAAmB,UAAU,CAAA;AAC9C,UAAA,cAAA,CAAe,KAAK,SAAS,CAAA,CAAA,EAAI,IAAI,CAAA,CAAA,EAAI,GAAG,EAAE,CAAA,GAAI,QAAA;AAClD,UAAA,IAAI,KAAA,EAAO;AACT,YAAA,cAAA,CAAe,KAAK,SAAS,CAAA,CAAA,EAAI,KAAK,CAAA,CAAA,EAAI,GAAG,EAAE,CAAA,GAAI,QAAA;AAAA,UACrD;AAEA,UAAA,IAAI,QAAQ,KAAA,EAAO;AACjB,YAAA,SAAA,GAAY,QAAA;AAAA,UACd;AAAA,QACF;AAAA,MACF,CAAC,CAAA;AACD,MAAA,IAAI,SAAS,SAAA,EAAW;AACtB,QAAA,cAAA,CAAe,CAAA,EAAA,EAAK,SAAS,CAAA,CAAA,EAAI,KAAK,EAAE,CAAA,GAAI,SAAA;AAAA,MAC9C;AAAA,IACF;AAAA,EACF,CAAC,CAAA;AACD,EAAA,OAAO,cAAA;AACT;;;;"}
@@ -4,5 +4,5 @@ interface ColorItem {
4
4
  name: string;
5
5
  key: string;
6
6
  }
7
- declare function generatorColorVariables(colorItems: ColorItem[], namespace?: string): Record<string, string>;
7
+ declare function generatorColorVariables(colorItems: ColorItem[], dark: boolean, namespace?: string): Record<string, string>;
8
8
  export { generatorColorVariables };
package/lib/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "1.2.4";
1
+ export declare const version = "1.2.6";
package/lib/version.js CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const version = "1.2.4";
3
+ const version = "1.2.6";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sources":["../../../packages/pro-design-vue/version.ts"],"sourcesContent":["export const version = '1.2.4'\n"],"names":[],"mappings":";;AAAO,MAAM,OAAA,GAAU;;;;"}
1
+ {"version":3,"file":"version.js","sources":["../../../packages/pro-design-vue/version.ts"],"sourcesContent":["export const version = '1.2.6'\n"],"names":[],"mappings":";;AAAO,MAAM,OAAA,GAAU;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pro-design-vue",
3
- "version": "1.2.4",
3
+ "version": "1.2.6",
4
4
  "description": "A Component Library for Vue 3",
5
5
  "keywords": [
6
6
  "pro design",