@vue-start/pro 0.5.38 → 0.5.40

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/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # 0.5.40
7
+
8
+ - 新增 theme 模式
9
+ - Layout css 变量位置由:root 迁移到.pro-layout
10
+ - Layout menu 新增 hide 模式
11
+ - Layout 新增 tabs 组件,可通过配置处理
12
+
13
+ # 0.5.39
14
+
15
+ - bug 修复;
16
+
6
17
  # 0.5.38
7
18
 
8
19
  - 新增 ProTip 组件
package/dist/index.css CHANGED
@@ -1,33 +1,92 @@
1
1
  :root {
2
- /***************layout****************/
2
+ /****************** reset layout ***************/
3
+ /*section高度*/
4
+ --pro-secion-hei: 100vh;
5
+
6
+ /****************** 预置变量,仅做提示用 ***************/
7
+ --pro-color-primary: #409eff;
8
+ --pro-color-primary-light-3: #73b8ff;
9
+ --pro-color-primary-light-5: #95c9ff;
10
+ --pro-color-primary-light-7: #b7daff;
11
+ --pro-color-primary-light-8: #c8e3ff;
12
+ --pro-color-primary-light-9: #d9ecff;
13
+ --pro-color-success: #67c23a;
14
+ --pro-color-warning: #e6a23c;
15
+ --pro-color-danger: #f56c6c;
16
+ --pro-color-error: #f56c6c;
17
+ --pro-color-info: #909399;
18
+ --pro-color-text: #303133;
19
+ --pro-color-text-regular: #606266;
20
+ --pro-color-text-secondary: #909399;
21
+ --pro-color-text-placeholder: #a8abb2;
22
+ --pro-color-border: #dcdfe6;
23
+ --pro-color-border-light: #e4e7ed;
24
+ --pro-color-bg: #ffffff;
25
+ --pro-radius: 4px;
26
+ --pro-radius-lg: 8px;
27
+ --pro-radius-md: 4px;
28
+ --pro-radius-sm: 2px;
29
+ --pro-size: 14px;
30
+ --pro-size-lg: 16px;
31
+ --pro-size-md: 14px;
32
+ --pro-size-sm: 13px;
33
+ --pro-size-xs: 12px;
34
+ --pro-line-height: 1.5714285714285714;
35
+ --pro-line-height-lg: 1.5;
36
+ --pro-line-height-md: 1.5714285714285714;
37
+ --pro-line-height-sm: 1.6666666666666667;
38
+ --pro-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
39
+ --pro-shadow-lg: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
40
+ --pro-shadow-md: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
41
+ --pro-shadow-sm: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
42
+ --pro-shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
43
+ --pro-spacing-1: 4px;
44
+ --pro-spacing-2: 8px;
45
+ --pro-spacing-3: 12px;
46
+ --pro-spacing-4: 16px;
47
+ --pro-spacing-5: 20px;
48
+ --pro-spacing-6: 24px;
49
+ --pro-spacing-7: 28px;
50
+ --pro-spacing-8: 32px;
51
+ --pro-spacing-9: 36px;
52
+ }
53
+
54
+ /********************************** pro-layout ***********************************/
55
+
56
+ .pro-layout {
3
57
  /*header高度*/
4
58
  --pro-header-hei: 60px;
5
59
  /*header与内容间隔*/
6
60
  --pro-divide-ver-hei: 2px;
7
61
  /*面包屑高度*/
8
62
  --pro-bread-hei: 0px;
63
+ /*tabs高度*/
64
+ --pro-tabs-hei: 0px;
9
65
  /*菜单宽度变量:合并/展开会重新赋值;媒体查询重新赋值*/
10
- --pro-left-menu-wid: 220px;
66
+ --pro-left-menu-wid: 0px;
11
67
  /*左侧菜单start,end插槽高度*/
12
68
  --pro-menu-start-hei: 0px;
13
69
  --pro-menu-end-hei: 0px;
14
- /*page*/
15
- --pro-page-header-hei: 40px;
16
- --pro-page-footer-hei: 46px;
17
70
 
18
- /*color*/
19
- --pro-color-primary: #1890ff;
20
- --pro-color-bg: #f8f8f8;
71
+ /*section高度*/
72
+ --pro-secion-hei: calc(100vh - var(--pro-header-hei) - var(--pro-divide-ver-hei) - var(--pro-tabs-hei));
73
+ --pro-section-hei: calc(100vh - var(--pro-header-hei) - var(--pro-divide-ver-hei) - var(--pro-tabs-hei));
74
+ /*左侧菜单高度*/
75
+ --pro-left-menu-hei: calc(
76
+ 100vh - var(--pro-header-hei) - var(--pro-divide-ver-hei) - var(--pro-menu-start-hei) - var(--pro-menu-end-hei)
77
+ );
21
78
  }
22
79
 
23
- /********************************** pro-layout ***********************************/
80
+ .pro-layout.has-left-menu {
81
+ --pro-left-menu-wid: 220px;
82
+ }
24
83
 
25
- .pro-layout {
26
- /*section高度*/
27
- --pro-secion-hei: calc(100vh - var(--pro-header-hei) - var(--pro-divide-ver-hei));
28
- --pro-section-hei: calc(100vh - var(--pro-header-hei) - var(--pro-divide-ver-hei));
29
- /*左侧菜单高度*/
30
- --pro-left-menu-hei: calc(var(--pro-secion-hei) - var(--pro-menu-start-hei) - var(--pro-menu-end-hei));
84
+ .pro-layout.mini {
85
+ --pro-left-menu-wid: 64px;
86
+ }
87
+
88
+ .pro-layout.has-tabs {
89
+ --pro-tabs-hei: 34px;
31
90
  }
32
91
 
33
92
  .pro-layout .pro-layout-header {
@@ -66,10 +125,6 @@
66
125
  max-width: var(--pro-left-menu-wid);
67
126
  }
68
127
 
69
- .pro-layout .pro-layout-menus-wrapper .mini {
70
- --pro-left-menu-wid: 64px;
71
- }
72
-
73
128
  /*section*/
74
129
  .pro-layout .pro-layout-section {
75
130
  height: var(--pro-secion-hei);
@@ -97,7 +152,7 @@
97
152
  }
98
153
 
99
154
  .pro-layout-horizontal .pro-layout-structure {
100
- flex: 1;
155
+ width: calc(100vw - var(--pro-left-menu-wid));
101
156
  }
102
157
 
103
158
  .pro-layout-horizontal .pro-layout-section {
@@ -114,8 +169,8 @@
114
169
  margin-top: var(--pro-divide-ver-hei);
115
170
  }
116
171
 
117
- .pro-layout-horizontal-v .pro-layout-structure .pro-layout-section {
118
- flex-grow: 1;
172
+ .pro-layout-horizontal-v .pro-layout-structure .pro-layout-right {
173
+ width: calc(100vw - var(--pro-left-menu-wid));
119
174
  }
120
175
 
121
176
  /*compose*/
@@ -128,8 +183,72 @@
128
183
  margin-top: var(--pro-divide-ver-hei);
129
184
  }
130
185
 
131
- .pro-layout-compose .pro-layout-structure .pro-layout-section {
132
- flex-grow: 1;
186
+ .pro-layout-compose .pro-layout-structure .pro-layout-right {
187
+ width: calc(100vw - var(--pro-left-menu-wid));
188
+ }
189
+
190
+ /*layout-tabs*/
191
+
192
+ .pro-layout .pro-layout-tabs {
193
+ height: var(--pro-tabs-hei);
194
+ background-color: white;
195
+ width: calc(100vw - var(--pro-left-menu-wid));
196
+ }
197
+
198
+ .pro-layout-tabs-root {
199
+ /*box-sizing: border-box;*/
200
+ height: var(--pro-tabs-hei);
201
+ display: flex;
202
+ align-items: center;
203
+ flex-wrap: nowrap;
204
+ font-size: 14px;
205
+ color: var(--pro-color-text-regular);
206
+ }
207
+
208
+ .pro-layout-tabs-root .place {
209
+ min-width: var(--pro-spacing-2);
210
+ height: 100%;
211
+ }
212
+
213
+ .pro-layout-tabs-item {
214
+ cursor: pointer;
215
+ padding: 4px 12px;
216
+ border-radius: var(--pro-radius);
217
+ white-space: nowrap;
218
+ margin: 0 var(--pro-spacing-1);
219
+ }
220
+
221
+ .pro-layout-tabs-item:hover {
222
+ background-color: var(--pro-color-primary-light-9);
223
+ }
224
+
225
+ .pro-layout-tabs-item.active {
226
+ color: var(--pro-color-primary);
227
+ font-weight: bold;
228
+ background-color: var(--pro-color-primary-light-9);
229
+ }
230
+
231
+ .pro-layout-tabs-item-close {
232
+ display: inline-block;
233
+ margin-left: var(--pro-spacing-1);
234
+ font-weight: normal;
235
+ width: 16px;
236
+ height: 16px;
237
+ text-align: center;
238
+ line-height: 16px;
239
+ font-size: 12px;
240
+ }
241
+
242
+ .pro-layout-tabs-item-close:hover {
243
+ color: white;
244
+ background-color: var(--pro-color-primary-light-5);
245
+ border-radius: 50%;
246
+ }
247
+
248
+ .pro-layout-tabs-menus {
249
+ position: fixed;
250
+ background-color: pink;
251
+ transform: translate(-50%,0);
133
252
  }
134
253
 
135
254
  /********************************** pro-typography ***********************************/
@@ -223,6 +342,9 @@
223
342
  /********************************** pro-page ***********************************/
224
343
 
225
344
  .pro-page {
345
+ --pro-page-header-hei: 40px;
346
+ --pro-page-footer-hei: 46px;
347
+
226
348
  height: var(--pro-secion-hei);
227
349
  max-height: var(--pro-secion-hei);
228
350
  overflow-y: auto;
package/dist/index.d.ts CHANGED
@@ -2360,6 +2360,8 @@ declare const ElementKeys: {
2360
2360
  TableKey: string;
2361
2361
  TableOperateKey: string;
2362
2362
  UploaderKey: string;
2363
+ EmptyKey: string;
2364
+ DropdownKey: string;
2363
2365
  ProFormKey: string;
2364
2366
  ProSearchFormKey: string;
2365
2367
  ProTableKey: string;
@@ -2657,4 +2659,122 @@ declare const getSignValue: <T = any>(item: TColumn, signName: string) => T;
2657
2659
  */
2658
2660
  declare const filterSlotsByPrefix: (slots: Record<string, any>, prefix: string) => lodash.Dictionary<any>;
2659
2661
 
2660
- export { AddButton, BooleanObjType, BooleanRulesObjType, ColumnSetting, CurdAction, CurdAddAction, CurdCurrentMode, CurdMethods, CurdSubAction, ElementKeys, FieldNames, FormAction, FormItemProps, FormRulePrefixMap, IAccess, ICurdAction, ICurdAddAction, ICurdCurrentMode, ICurdOperateOpts, ICurdState, ICurdSubAction, IElementConfig, IHighConfig, IListData, IOpeItem, IOperateItem, IPer, IProConfigProvide, IProCurdProvide, IProFormProvideExtra, IProModuleProvide, IProTableProvide, IProTableProvideExtra, IRequestOpts, ISearchMode, ITableOperate, IUser, InternalNamePath, LogonUser, LogonUserKey, ModalCurdOpe, MustLogon, NamePath, PageHeader, PageHeaderProps, PaginationSlotProps, PerSuffix, Permission, PermissionProps, ProBaseProps, ProColumnSettingProps, ProConfig, ProConfigProps, ProCurd, ProCurdDesc, ProCurdDescConnect, ProCurdDescProps, ProCurdForm, ProCurdFormConnect, ProCurdFormProps, ProCurdList, ProCurdListConnect, ProCurdListProps, ProCurdModal, ProCurdModalForm, ProCurdModalFormConnect, ProCurdModalProps, ProCurdProps, ProDesc, ProDescProps, ProDispatchRequestType, ProForm, ProFormItemProps, ProFormList, ProFormListProps, ProFormProps, ProGrid, ProGridProps, ProLayout, ProList, ProListProps, ProModalCurd, ProModalCurdProps, ProModule, ProModuleProps, ProOperate, ProOperateProps, ProPage, ProPageCurd, ProPageCurdProps, ProPageProps, ProSearchForm, ProSearchFormProps, ProShowDate, ProShowDigit, ProShowOptions, ProShowText, ProShowTree, ProTable, ProTableProps, ProTip, ProTipProps, ProTypography, ProTypographyProps, ProUploadList, ProUploaderText, ProValue, RequestAction, RouterMethods, SearchMode, SearchSlotProps, TAccess, TActionEvent, TActionState, TColumn, TColumns, TConfigData, TCurdActionEvent, TDefaultValueType, TElementMap, TExecuteFunName, TExecuteItem, TExecuteName, TFile, TFormExtraMap, TInitialState, TLogonUserProvide, TMeta, TOpenMenu, TOption, TOptions, TPageState, TProFormOperate, TRegisterStore, TRegisterStoreMap, TRender, TRouter, TTableColumn, TTableColumns, TValueType, TreeOption, TreeOptions, Wrapper, convertPathToList, convertResData, createExpose, createExposeObj, createFormItemCompFn, createModule, createProConfig, defaultPage, filterSlotsByPrefix, getColumnFormItemName, getColumnValueType, getFirstPropName, getRealRender, getSignValue, getValidValues, isValidConfig, isValidNode, mergeState, mergeStateToList, proBaseProps, provideProCurd, provideProFormList, provideProModule, renderColumn, renderElement, renderElements, renderInputColumn, showValue, useAccess, useAccessMgr, useComposeRequestActor, useDispatchMeta, useDispatchStore, useDoneRequestActor, useFailedRequestActor, useFormSubmit, useGetCompByKey, useHasPer, useHasPer2, useLogonUser, useMetaRegister, useModuleEvent, useProConfig, useProCurd, useProForm, useProFormList, useProModal, useProModule, useProMsg, useProNotify, useProRouter, useProTable, useReadStore };
2662
+ declare const ThemeKey: unique symbol;
2663
+ declare type TLight = Record<"1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9", string>;
2664
+ declare type TDark = Record<"2", string>;
2665
+ declare type TColor = {
2666
+ base: string;
2667
+ light: TLight;
2668
+ dark: TDark;
2669
+ };
2670
+ declare type TSubType = {
2671
+ base: string;
2672
+ lg: string;
2673
+ md: string;
2674
+ sm: string;
2675
+ };
2676
+ interface ITheme {
2677
+ color: {
2678
+ primary: TColor;
2679
+ success: TColor;
2680
+ warning: TColor;
2681
+ danger: TColor;
2682
+ error: TColor;
2683
+ info: TColor;
2684
+ text: {
2685
+ base: string;
2686
+ regular: string;
2687
+ secondary: string;
2688
+ placeholder: string;
2689
+ disabled: string;
2690
+ };
2691
+ border: {
2692
+ base: string;
2693
+ light: string;
2694
+ };
2695
+ bg: string;
2696
+ };
2697
+ radius: TSubType;
2698
+ fontSize: TSubType & {
2699
+ xs: string;
2700
+ };
2701
+ lineHeight: {
2702
+ base: number;
2703
+ lg: number;
2704
+ md: number;
2705
+ sm: number;
2706
+ };
2707
+ spacing: TLight;
2708
+ shadow: TSubType & {
2709
+ inner: string;
2710
+ };
2711
+ }
2712
+ declare const useTheme: () => ITheme;
2713
+ interface IThemeToken {
2714
+ color?: {
2715
+ primary?: string;
2716
+ success?: string;
2717
+ warning?: string;
2718
+ danger?: string;
2719
+ error?: string;
2720
+ info?: string;
2721
+ };
2722
+ radius?: string;
2723
+ lineHeight?: number;
2724
+ spacing?: number;
2725
+ }
2726
+ declare const ThemeToken: IThemeToken;
2727
+ declare const createTheme: (tt?: IThemeToken) => ITheme;
2728
+ declare const ProTheme: vue.DefineComponent<{
2729
+ theme: {
2730
+ type: ObjectConstructor;
2731
+ };
2732
+ /**
2733
+ * 是否在全局注册css变量
2734
+ */
2735
+ global: {
2736
+ type: BooleanConstructor;
2737
+ default: boolean;
2738
+ };
2739
+ /**
2740
+ * 根据themeToken生成theme
2741
+ */
2742
+ themeToken: {
2743
+ type: PropType<IThemeToken>;
2744
+ };
2745
+ /**
2746
+ * 将生成的ITheme对象映射成 css 变量
2747
+ */
2748
+ createCssVar: {
2749
+ type: PropType<(t: ITheme) => Record<string, string | number>>;
2750
+ };
2751
+ }, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
2752
+ [key: string]: any;
2753
+ }>[] | JSX.Element | undefined, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
2754
+ theme: {
2755
+ type: ObjectConstructor;
2756
+ };
2757
+ /**
2758
+ * 是否在全局注册css变量
2759
+ */
2760
+ global: {
2761
+ type: BooleanConstructor;
2762
+ default: boolean;
2763
+ };
2764
+ /**
2765
+ * 根据themeToken生成theme
2766
+ */
2767
+ themeToken: {
2768
+ type: PropType<IThemeToken>;
2769
+ };
2770
+ /**
2771
+ * 将生成的ITheme对象映射成 css 变量
2772
+ */
2773
+ createCssVar: {
2774
+ type: PropType<(t: ITheme) => Record<string, string | number>>;
2775
+ };
2776
+ }>>, {
2777
+ global: boolean;
2778
+ }>;
2779
+
2780
+ export { AddButton, BooleanObjType, BooleanRulesObjType, ColumnSetting, CurdAction, CurdAddAction, CurdCurrentMode, CurdMethods, CurdSubAction, ElementKeys, FieldNames, FormAction, FormItemProps, FormRulePrefixMap, IAccess, ICurdAction, ICurdAddAction, ICurdCurrentMode, ICurdOperateOpts, ICurdState, ICurdSubAction, IElementConfig, IHighConfig, IListData, IOpeItem, IOperateItem, IPer, IProConfigProvide, IProCurdProvide, IProFormProvideExtra, IProModuleProvide, IProTableProvide, IProTableProvideExtra, IRequestOpts, ISearchMode, ITableOperate, ITheme, IThemeToken, IUser, InternalNamePath, LogonUser, LogonUserKey, ModalCurdOpe, MustLogon, NamePath, PageHeader, PageHeaderProps, PaginationSlotProps, PerSuffix, Permission, PermissionProps, ProBaseProps, ProColumnSettingProps, ProConfig, ProConfigProps, ProCurd, ProCurdDesc, ProCurdDescConnect, ProCurdDescProps, ProCurdForm, ProCurdFormConnect, ProCurdFormProps, ProCurdList, ProCurdListConnect, ProCurdListProps, ProCurdModal, ProCurdModalForm, ProCurdModalFormConnect, ProCurdModalProps, ProCurdProps, ProDesc, ProDescProps, ProDispatchRequestType, ProForm, ProFormItemProps, ProFormList, ProFormListProps, ProFormProps, ProGrid, ProGridProps, ProLayout, ProList, ProListProps, ProModalCurd, ProModalCurdProps, ProModule, ProModuleProps, ProOperate, ProOperateProps, ProPage, ProPageCurd, ProPageCurdProps, ProPageProps, ProSearchForm, ProSearchFormProps, ProShowDate, ProShowDigit, ProShowOptions, ProShowText, ProShowTree, ProTable, ProTableProps, ProTheme, ProTip, ProTipProps, ProTypography, ProTypographyProps, ProUploadList, ProUploaderText, ProValue, RequestAction, RouterMethods, SearchMode, SearchSlotProps, TAccess, TActionEvent, TActionState, TColor, TColumn, TColumns, TConfigData, TCurdActionEvent, TDark, TDefaultValueType, TElementMap, TExecuteFunName, TExecuteItem, TExecuteName, TFile, TFormExtraMap, TInitialState, TLight, TLogonUserProvide, TMeta, TOpenMenu, TOption, TOptions, TPageState, TProFormOperate, TRegisterStore, TRegisterStoreMap, TRender, TRouter, TSubType, TTableColumn, TTableColumns, TValueType, ThemeKey, ThemeToken, TreeOption, TreeOptions, Wrapper, convertPathToList, convertResData, createExpose, createExposeObj, createFormItemCompFn, createModule, createProConfig, createTheme, defaultPage, filterSlotsByPrefix, getColumnFormItemName, getColumnValueType, getFirstPropName, getRealRender, getSignValue, getValidValues, isValidConfig, isValidNode, mergeState, mergeStateToList, proBaseProps, provideProCurd, provideProFormList, provideProModule, renderColumn, renderElement, renderElements, renderInputColumn, showValue, useAccess, useAccessMgr, useComposeRequestActor, useDispatchMeta, useDispatchStore, useDoneRequestActor, useFailedRequestActor, useFormSubmit, useGetCompByKey, useHasPer, useHasPer2, useLogonUser, useMetaRegister, useModuleEvent, useProConfig, useProCurd, useProForm, useProFormList, useProModal, useProModule, useProMsg, useProNotify, useProRouter, useProTable, useReadStore, useTheme };