xframelib 0.7.7 → 0.7.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,12 +1,20 @@
1
1
  # xframelib
2
-
3
- 基于 VUE3+Hprose+Typescript 的前端框架
4
-
2
+ <p>
3
+ <a href="https://www.npmjs.com/package/xframelib" target="_blank">
4
+ <img src="https://img.shields.io/npm/v/xframelib?color=orange&logo=npm" />
5
+ </a>
6
+ <a href="https://www.npmjs.com/package/xframelib" target="_blank">
7
+ <img src="https://img.shields.io/npm/dt/xframelib?logo=npm"/>
8
+ </a>
9
+ </p>
10
+ **基于 VUE3+Hprose+Typescript 的前端框架**
11
+
12
+ - *v0.7.9 给H5Tool增加常用DOM操作方法;为SysEvents增加LayoutContainerLoaded,每个LayoutManager对象自动加载到Global.LayoutMap里,为Global默认增加CesiumViewer对象;强化Widget链式排队加载,必须先afterid对应的widget加载成功,然后才加载当前widget。
13
+ - v0.7.8 更新依赖库版本;增加SysConfig默认配置项;controls增加XWindow和XWindowManager取代VWindow;增加全局的Global.WidgetConfigList数组和getLayoutManager方法;删除VCollapsiblePanel、 VCollapsiblePanelGroup组件。
5
14
  - v0.7.7 增加hprose二进制序列化方法serialize和deserialize;修改Global默认自带LayoutMap和默认为console的Message;为LayoutManager增加静态方法getLayoutManager;增加RouterTransition控件,并应用于layoutcontainer中;更新依赖库版本。
6
-
7
15
  - v0.7.6 为LayoutManager增加卸载全部组件unloadAllWidgets、批量卸载组件unloadWidgets、获得已经加载组件ID列表getWidgetLoadedIDList;解决H5Tool的windowResizeHandler和offWindowResizeHandler内部调用错误方法的问题。
8
16
  - ~~v0.7.5 解决上一版LayoutContainer存在问题:CSS样式对应上,调整层级顺序;加入组件引用,changeWidgetVisible能控制Widget组件可见性;修改getWidgetComponent方法,实现对Widget组件的defineExpose方法调用;增加isWidgetVisible判断组件是否可见。~~
9
- - ~~ v0.7.4 完善Axios异常捕捉(对接后端Furion包装异常);更新完善LayoutContainer;H5Tool增加removeHandler和offWindowResizeHandler方法;升级依赖基础库。~~
17
+ - ~~v0.7.4 完善Axios异常捕捉(对接后端Furion包装异常);更新完善LayoutContainer;H5Tool增加removeHandler和offWindowResizeHandler方法;升级依赖基础库。~~
10
18
  - v0.7.3 升级依赖库;loadWidget失败输出日志和事件SysEvents.WidgetLoadedErrorEvent;优化系统权限相关模型;增加GetSignalRClient、ValidateTool、WaterMark等工具。
11
19
  - v0.7.2 解决v0.7.0的deepMerge方法存在复制对象的BUG。
12
20
  - v0.7.0 修改requestPost无法使用FormData参数;修改deepMerge方法;修改isObjectX方法;更新rollup-plugin-scss应用版本。
@@ -68,8 +76,8 @@
68
76
  - Global 全局对象
69
77
  - Message 提示信息
70
78
  - SplitSpanes 封装
71
- - collapsepanel 封装
72
- - vuewindow 封装
79
+ - LayoutContainer 封装
80
+ - XWindow 封装
73
81
  - 增加 utils 里的 Color、FileDownload、StorageHelper
74
82
 
75
83
  ## Installation
@@ -40,7 +40,7 @@ export declare class LayoutManager {
40
40
  * 加载组件和子组件
41
41
  * @param widgetItem 组件对象
42
42
  */
43
- loadWidget(widgetItem: IWidgetConfig | string): Promise<void>;
43
+ loadWidget(widgetItem: IWidgetConfig | string): any;
44
44
  private loadOtherDependenceWidgets;
45
45
  private _loadWidget;
46
46
  /**
@@ -1,6 +1,5 @@
1
- /// <reference path="../../../../../../src/shims-vue.d.ts" />
2
1
  import VWindow from './window/index.vue';
3
2
  import { StyleBlack, StyleWhite, StyleMetal, StyleGrayblue } from './style';
4
3
  export { WindowResizeEvent } from './window/utils';
5
4
  export { StyleBlack, StyleWhite, StyleMetal, StyleGrayblue, VWindow };
6
- export declare const WindowType: typeof import("*.vue");
5
+ export declare const WindowType: typeof import("./window/index.vue");
@@ -0,0 +1,129 @@
1
+ declare const _default: import("vue").DefineComponent<{
2
+ top: {
3
+ type: (StringConstructor | NumberConstructor)[];
4
+ default: number;
5
+ };
6
+ left: {
7
+ type: (StringConstructor | NumberConstructor)[];
8
+ default: number;
9
+ };
10
+ nWidth: {
11
+ type: (StringConstructor | NumberConstructor)[];
12
+ default: string;
13
+ };
14
+ nHeight: {
15
+ type: (StringConstructor | NumberConstructor)[];
16
+ default: string;
17
+ };
18
+ icon: {
19
+ type: StringConstructor;
20
+ default: string;
21
+ };
22
+ title: {
23
+ type: StringConstructor;
24
+ default: string;
25
+ };
26
+ titleHeight: {
27
+ type: (StringConstructor | NumberConstructor)[];
28
+ default: string;
29
+ };
30
+ hasMin: {
31
+ type: BooleanConstructor;
32
+ default: boolean;
33
+ };
34
+ hasMax: {
35
+ type: BooleanConstructor;
36
+ default: boolean;
37
+ };
38
+ hasClose: {
39
+ type: BooleanConstructor;
40
+ default: boolean;
41
+ };
42
+ isDark: {
43
+ type: BooleanConstructor;
44
+ default: boolean;
45
+ };
46
+ pid: {
47
+ type: StringConstructor;
48
+ default: string;
49
+ };
50
+ tag: {
51
+ type: (StringConstructor | NumberConstructor | ArrayConstructor | ObjectConstructor)[];
52
+ default: string;
53
+ };
54
+ }, (_ctx: any, _cache: any) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
55
+ [key: string]: any;
56
+ }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "open" | "loaded" | "minimize")[], "close" | "open" | "loaded" | "minimize", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
57
+ top: {
58
+ type: (StringConstructor | NumberConstructor)[];
59
+ default: number;
60
+ };
61
+ left: {
62
+ type: (StringConstructor | NumberConstructor)[];
63
+ default: number;
64
+ };
65
+ nWidth: {
66
+ type: (StringConstructor | NumberConstructor)[];
67
+ default: string;
68
+ };
69
+ nHeight: {
70
+ type: (StringConstructor | NumberConstructor)[];
71
+ default: string;
72
+ };
73
+ icon: {
74
+ type: StringConstructor;
75
+ default: string;
76
+ };
77
+ title: {
78
+ type: StringConstructor;
79
+ default: string;
80
+ };
81
+ titleHeight: {
82
+ type: (StringConstructor | NumberConstructor)[];
83
+ default: string;
84
+ };
85
+ hasMin: {
86
+ type: BooleanConstructor;
87
+ default: boolean;
88
+ };
89
+ hasMax: {
90
+ type: BooleanConstructor;
91
+ default: boolean;
92
+ };
93
+ hasClose: {
94
+ type: BooleanConstructor;
95
+ default: boolean;
96
+ };
97
+ isDark: {
98
+ type: BooleanConstructor;
99
+ default: boolean;
100
+ };
101
+ pid: {
102
+ type: StringConstructor;
103
+ default: string;
104
+ };
105
+ tag: {
106
+ type: (StringConstructor | NumberConstructor | ArrayConstructor | ObjectConstructor)[];
107
+ default: string;
108
+ };
109
+ }>> & {
110
+ onClose?: ((...args: any[]) => any) | undefined;
111
+ onOpen?: ((...args: any[]) => any) | undefined;
112
+ onLoaded?: ((...args: any[]) => any) | undefined;
113
+ onMinimize?: ((...args: any[]) => any) | undefined;
114
+ }, {
115
+ top: string | number;
116
+ left: string | number;
117
+ nWidth: string | number;
118
+ nHeight: string | number;
119
+ icon: string;
120
+ title: string;
121
+ titleHeight: string | number;
122
+ hasMin: boolean;
123
+ hasMax: boolean;
124
+ hasClose: boolean;
125
+ isDark: boolean;
126
+ pid: string;
127
+ tag: string | number | Record<string, any> | unknown[];
128
+ }, {}>;
129
+ export default _default;
@@ -0,0 +1,37 @@
1
+ /**
2
+ * 传递的WindowPanel数据模型
3
+ */
4
+ export interface IPanelData {
5
+ id: string;
6
+ icon?: string;
7
+ title?: string;
8
+ pid?: string;
9
+ data?: any;
10
+ }
11
+ /**
12
+ * Windows窗体Map集合
13
+ */
14
+ export declare const WindowsMap: Map<string, IPanelData>;
15
+ /**
16
+ * 最小化窗体Map集合
17
+ */
18
+ export declare const MinWindowMap: import("vue").Ref<Map<string, number> & Omit<Map<string, number>, keyof Map<any, any>>>;
19
+ declare class XWindowManager {
20
+ /**
21
+ * 注册添加窗体对象
22
+ * @param panelData
23
+ */
24
+ static addWindowPanel(panelData: IPanelData): void;
25
+ /**
26
+ * 移除窗体
27
+ * @param id
28
+ */
29
+ static removeWindowPanel(id: string): void;
30
+ static minimizeWindowPanel(id: string): void;
31
+ /**
32
+ * 打开窗体
33
+ * @param id
34
+ */
35
+ static openWindowPanel(id: string): void;
36
+ }
37
+ export default XWindowManager;
@@ -0,0 +1,4 @@
1
+ import XWindow from './XWindow.vue';
2
+ import XWindowManager from './XWindowManager';
3
+ import { WindowsMap, MinWindowMap } from './XWindowManager';
4
+ export { WindowsMap, MinWindowMap, XWindowManager, XWindow };
@@ -5,6 +5,7 @@ import { ISystemConfig } from '../model/Config';
5
5
  import { LayoutManager } from '../controls/layoutcontainer';
6
6
  import { AxiosStatic } from 'axios';
7
7
  import * as Log from "loglevel";
8
+ import { IWidgetConfig } from '../model/Layout';
8
9
  export interface InnerObject {
9
10
  /**
10
11
  * axios对象
@@ -25,6 +26,15 @@ export interface InnerObject {
25
26
  * LayoutManager字典
26
27
  */
27
28
  LayoutMap: Map<string, LayoutManager>;
29
+ /**
30
+ * 权限过滤后的WidgetConfig列表
31
+ */
32
+ WidgetConfigList?: Array<IWidgetConfig>;
33
+ /**
34
+ * 通过WidgetID获取LayoutManager
35
+ * @param widgetID
36
+ */
37
+ getLayoutManager(widgetID: string): LayoutManager | undefined;
28
38
  /**
29
39
  * 系统ID标识
30
40
  */
@@ -39,6 +49,10 @@ export interface InnerObject {
39
49
  * @param name 日志名称
40
50
  */
41
51
  Logger(name?: string): Log.Logger;
52
+ /**
53
+ * 全局的CesiumViewer对象
54
+ */
55
+ CesiumViewer?: any;
42
56
  [props: string]: any;
43
57
  }
44
58
  /**
@@ -10,6 +10,10 @@ export declare const SysEvents: {
10
10
  * 插件加载后事件
11
11
  */
12
12
  WidgetLoadedEvent: string;
13
+ /**
14
+ * 与WidgetLoadedEvent相同
15
+ */
16
+ WidgetLoaded: string;
13
17
  WidgetUnLoadedEvent: string;
14
18
  WidgetLoadedErrorEvent: string;
15
19
  /**
@@ -20,5 +24,9 @@ export declare const SysEvents: {
20
24
  * Axios请求失败异常
21
25
  */
22
26
  AxiosRequestErrorEvent: string;
27
+ /**
28
+ * LayoutContainer容器被加载了
29
+ */
30
+ LayoutContainerLoaded: string;
23
31
  };
24
32
  export default SysEvents;