@vue-start/pro 0.5.39 → 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
@@ -2361,6 +2361,7 @@ declare const ElementKeys: {
2361
2361
  TableOperateKey: string;
2362
2362
  UploaderKey: string;
2363
2363
  EmptyKey: string;
2364
+ DropdownKey: string;
2364
2365
  ProFormKey: string;
2365
2366
  ProSearchFormKey: string;
2366
2367
  ProTableKey: string;
@@ -2658,4 +2659,122 @@ declare const getSignValue: <T = any>(item: TColumn, signName: string) => T;
2658
2659
  */
2659
2660
  declare const filterSlotsByPrefix: (slots: Record<string, any>, prefix: string) => lodash.Dictionary<any>;
2660
2661
 
2661
- 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 };