plmt-constructor-sdk 0.13.5 → 0.13.7
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 +291 -0
- package/__internal__/config.d.ts +60 -54
- package/__internal__/config.js +46 -46
- package/__internal__/dataset.d.ts +19 -19
- package/__internal__/dataset.js +12 -12
- package/__internal__/theme.d.ts +13 -13
- package/__internal__/theme.js +112 -112
- package/__internal__/view-settings.d.ts +24 -24
- package/__internal__/view-settings.js +50 -50
- package/__internal__/widget-io.d.ts +56 -56
- package/__internal__/widget-io.js +21 -21
- package/__internal__/widget-provide-data.d.ts +4 -4
- package/__internal__/widget-provide-data.js +114 -112
- package/__internal__/widget.d.ts +64 -64
- package/__internal__/widget.js +64 -64
- package/config.d.ts +149 -143
- package/config.js +198 -198
- package/data.d.ts +62 -62
- package/data.js +51 -51
- package/declare.d.ts +20 -20
- package/declare.js +131 -131
- package/index.d.ts +2 -2
- package/index.js +18 -18
- package/package.json +2 -2
- package/theme.d.ts +26 -26
- package/theme.js +19 -19
- package/widget.d.ts +63 -63
- package/widget.js +24 -24
package/declare.js
CHANGED
|
@@ -1,131 +1,131 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Для того, чтобы виджет получал и управлял данными,
|
|
4
|
-
* класс виджета необходимо декорировать функцией Declare:
|
|
5
|
-
*
|
|
6
|
-
* ```ts
|
|
7
|
-
* import { Declare, Widget } from 'plmt-constructor-sdk';
|
|
8
|
-
*
|
|
9
|
-
* @Declare()
|
|
10
|
-
* class MyWidget extends Widget {}
|
|
11
|
-
* ```
|
|
12
|
-
*
|
|
13
|
-
* @packageDocumentation
|
|
14
|
-
* @module Регистрация виджета
|
|
15
|
-
*/
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.Declare = void 0;
|
|
18
|
-
const logical_not_1 = require("logical-not");
|
|
19
|
-
const data_1 = require("./data");
|
|
20
|
-
const widget_io_1 = require("./__internal__/widget-io");
|
|
21
|
-
const widget_provide_data_1 = require("./__internal__/widget-provide-data");
|
|
22
|
-
const theme_1 = require("./__internal__/theme");
|
|
23
|
-
const widget_1 = require("./__internal__/widget");
|
|
24
|
-
/**
|
|
25
|
-
* Функция-декоратор
|
|
26
|
-
*/
|
|
27
|
-
function Declare(params) {
|
|
28
|
-
if ((0, logical_not_1.not)(params))
|
|
29
|
-
params = {
|
|
30
|
-
provideCssVariables: false,
|
|
31
|
-
};
|
|
32
|
-
return (T) => {
|
|
33
|
-
const instance = new T();
|
|
34
|
-
const token = readFromUrl('token');
|
|
35
|
-
const uid = readFromUrl('uid');
|
|
36
|
-
if (uid) {
|
|
37
|
-
instance.uid = uid;
|
|
38
|
-
}
|
|
39
|
-
Object.assign(instance, {
|
|
40
|
-
viewSettings: {},
|
|
41
|
-
ready() {
|
|
42
|
-
output(token, widget_io_1.Output.Ready);
|
|
43
|
-
},
|
|
44
|
-
});
|
|
45
|
-
const dataSettingsMethods = {
|
|
46
|
-
setFilter(filter, rowIndex, target = data_1.Target.Self) {
|
|
47
|
-
filter = { ...filter };
|
|
48
|
-
filter.column = { ...filter.column };
|
|
49
|
-
delete filter.column.format;
|
|
50
|
-
output(token, widget_io_1.Output.SetFilter, {
|
|
51
|
-
filter,
|
|
52
|
-
target,
|
|
53
|
-
rowIndex,
|
|
54
|
-
});
|
|
55
|
-
},
|
|
56
|
-
removeFilterAt(index) {
|
|
57
|
-
output(token, widget_io_1.Output.RemoveFilterAt, {
|
|
58
|
-
index,
|
|
59
|
-
});
|
|
60
|
-
},
|
|
61
|
-
setSort(sort, target = data_1.Target.Self) {
|
|
62
|
-
if (sort) {
|
|
63
|
-
sort = { ...sort };
|
|
64
|
-
sort.column = { ...sort.column };
|
|
65
|
-
delete sort.column.format;
|
|
66
|
-
}
|
|
67
|
-
output(token, widget_io_1.Output.SetSort, { sort, target });
|
|
68
|
-
},
|
|
69
|
-
removeSortAt(index) {
|
|
70
|
-
output(token, widget_io_1.Output.RemoveSortAt, {
|
|
71
|
-
index,
|
|
72
|
-
});
|
|
73
|
-
},
|
|
74
|
-
interact(dataIndex) {
|
|
75
|
-
output(token, widget_io_1.Output.Interact, {
|
|
76
|
-
dataOptionId: this.id,
|
|
77
|
-
dataIndex,
|
|
78
|
-
});
|
|
79
|
-
},
|
|
80
|
-
};
|
|
81
|
-
let inited = false;
|
|
82
|
-
input(widget_io_1.Input.Change, (widgetRepresent) => {
|
|
83
|
-
(0, widget_provide_data_1.provideDataTo)(instance, widgetRepresent, dataSettingsMethods);
|
|
84
|
-
if ((0, logical_not_1.not)(inited)) {
|
|
85
|
-
inited = true;
|
|
86
|
-
if (typeof instance.onInit === 'function') {
|
|
87
|
-
instance.onInit();
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
if (typeof instance.onChange === 'function') {
|
|
91
|
-
instance.onChange();
|
|
92
|
-
}
|
|
93
|
-
});
|
|
94
|
-
input(widget_io_1.Input.ChangeLang, (lang) => {
|
|
95
|
-
instance.lang = lang;
|
|
96
|
-
if (instance.onLangChange && inited)
|
|
97
|
-
instance.onLangChange();
|
|
98
|
-
});
|
|
99
|
-
input(widget_io_1.Input.ChangeTheme, (value) => {
|
|
100
|
-
instance.theme = value.theme;
|
|
101
|
-
if (params.provideCssVariables)
|
|
102
|
-
(0, theme_1.provideCssVariables)(value);
|
|
103
|
-
if (instance.onThemeChange && inited)
|
|
104
|
-
instance.onThemeChange();
|
|
105
|
-
});
|
|
106
|
-
input(widget_io_1.Input.ChangeOtherFilters, (source) => (0, widget_1.dispatchChangeOtherFilters)(instance, source));
|
|
107
|
-
input(widget_io_1.Input.ChangeWidgetRenderEnv, (value) => {
|
|
108
|
-
instance.renderEnv = value;
|
|
109
|
-
});
|
|
110
|
-
output(token, widget_io_1.Output.Init);
|
|
111
|
-
return T;
|
|
112
|
-
};
|
|
113
|
-
}
|
|
114
|
-
exports.Declare = Declare;
|
|
115
|
-
function input(type, callback) {
|
|
116
|
-
window.addEventListener('message', ({ data }) => {
|
|
117
|
-
if (data.type === type)
|
|
118
|
-
callback(data.payload);
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
function output(token, type, payload) {
|
|
122
|
-
const message = { type, token, payload };
|
|
123
|
-
window.parent.postMessage(message, '*');
|
|
124
|
-
}
|
|
125
|
-
function readFromUrl(key) {
|
|
126
|
-
const startsWith = key + '=';
|
|
127
|
-
const source = window.location.search
|
|
128
|
-
.split(/[?&]/)
|
|
129
|
-
.find((item) => item.startsWith(startsWith));
|
|
130
|
-
return source ? source.slice(startsWith.length) : '';
|
|
131
|
-
}
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Для того, чтобы виджет получал и управлял данными,
|
|
4
|
+
* класс виджета необходимо декорировать функцией Declare:
|
|
5
|
+
*
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { Declare, Widget } from 'plmt-constructor-sdk';
|
|
8
|
+
*
|
|
9
|
+
* @Declare()
|
|
10
|
+
* class MyWidget extends Widget {}
|
|
11
|
+
* ```
|
|
12
|
+
*
|
|
13
|
+
* @packageDocumentation
|
|
14
|
+
* @module Регистрация виджета
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.Declare = void 0;
|
|
18
|
+
const logical_not_1 = require("logical-not");
|
|
19
|
+
const data_1 = require("./data");
|
|
20
|
+
const widget_io_1 = require("./__internal__/widget-io");
|
|
21
|
+
const widget_provide_data_1 = require("./__internal__/widget-provide-data");
|
|
22
|
+
const theme_1 = require("./__internal__/theme");
|
|
23
|
+
const widget_1 = require("./__internal__/widget");
|
|
24
|
+
/**
|
|
25
|
+
* Функция-декоратор
|
|
26
|
+
*/
|
|
27
|
+
function Declare(params) {
|
|
28
|
+
if ((0, logical_not_1.not)(params))
|
|
29
|
+
params = {
|
|
30
|
+
provideCssVariables: false,
|
|
31
|
+
};
|
|
32
|
+
return (T) => {
|
|
33
|
+
const instance = new T();
|
|
34
|
+
const token = readFromUrl('token');
|
|
35
|
+
const uid = readFromUrl('uid');
|
|
36
|
+
if (uid) {
|
|
37
|
+
instance.uid = uid;
|
|
38
|
+
}
|
|
39
|
+
Object.assign(instance, {
|
|
40
|
+
viewSettings: {},
|
|
41
|
+
ready() {
|
|
42
|
+
output(token, widget_io_1.Output.Ready);
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
const dataSettingsMethods = {
|
|
46
|
+
setFilter(filter, rowIndex, target = data_1.Target.Self) {
|
|
47
|
+
filter = { ...filter };
|
|
48
|
+
filter.column = { ...filter.column };
|
|
49
|
+
delete filter.column.format;
|
|
50
|
+
output(token, widget_io_1.Output.SetFilter, {
|
|
51
|
+
filter,
|
|
52
|
+
target,
|
|
53
|
+
rowIndex,
|
|
54
|
+
});
|
|
55
|
+
},
|
|
56
|
+
removeFilterAt(index) {
|
|
57
|
+
output(token, widget_io_1.Output.RemoveFilterAt, {
|
|
58
|
+
index,
|
|
59
|
+
});
|
|
60
|
+
},
|
|
61
|
+
setSort(sort, target = data_1.Target.Self) {
|
|
62
|
+
if (sort) {
|
|
63
|
+
sort = { ...sort };
|
|
64
|
+
sort.column = { ...sort.column };
|
|
65
|
+
delete sort.column.format;
|
|
66
|
+
}
|
|
67
|
+
output(token, widget_io_1.Output.SetSort, { sort, target });
|
|
68
|
+
},
|
|
69
|
+
removeSortAt(index) {
|
|
70
|
+
output(token, widget_io_1.Output.RemoveSortAt, {
|
|
71
|
+
index,
|
|
72
|
+
});
|
|
73
|
+
},
|
|
74
|
+
interact(dataIndex) {
|
|
75
|
+
output(token, widget_io_1.Output.Interact, {
|
|
76
|
+
dataOptionId: this.id,
|
|
77
|
+
dataIndex,
|
|
78
|
+
});
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
let inited = false;
|
|
82
|
+
input(widget_io_1.Input.Change, (widgetRepresent) => {
|
|
83
|
+
(0, widget_provide_data_1.provideDataTo)(instance, widgetRepresent, dataSettingsMethods);
|
|
84
|
+
if ((0, logical_not_1.not)(inited)) {
|
|
85
|
+
inited = true;
|
|
86
|
+
if (typeof instance.onInit === 'function') {
|
|
87
|
+
instance.onInit();
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
if (typeof instance.onChange === 'function') {
|
|
91
|
+
instance.onChange();
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
input(widget_io_1.Input.ChangeLang, (lang) => {
|
|
95
|
+
instance.lang = lang;
|
|
96
|
+
if (instance.onLangChange && inited)
|
|
97
|
+
instance.onLangChange();
|
|
98
|
+
});
|
|
99
|
+
input(widget_io_1.Input.ChangeTheme, (value) => {
|
|
100
|
+
instance.theme = value.theme;
|
|
101
|
+
if (params.provideCssVariables)
|
|
102
|
+
(0, theme_1.provideCssVariables)(value);
|
|
103
|
+
if (instance.onThemeChange && inited)
|
|
104
|
+
instance.onThemeChange();
|
|
105
|
+
});
|
|
106
|
+
input(widget_io_1.Input.ChangeOtherFilters, (source) => (0, widget_1.dispatchChangeOtherFilters)(instance, source));
|
|
107
|
+
input(widget_io_1.Input.ChangeWidgetRenderEnv, (value) => {
|
|
108
|
+
instance.renderEnv = value;
|
|
109
|
+
});
|
|
110
|
+
output(token, widget_io_1.Output.Init);
|
|
111
|
+
return T;
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
exports.Declare = Declare;
|
|
115
|
+
function input(type, callback) {
|
|
116
|
+
window.addEventListener('message', ({ data }) => {
|
|
117
|
+
if (data.type === type)
|
|
118
|
+
callback(data.payload);
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
function output(token, type, payload) {
|
|
122
|
+
const message = { type, token, payload };
|
|
123
|
+
window.parent.postMessage(message, '*');
|
|
124
|
+
}
|
|
125
|
+
function readFromUrl(key) {
|
|
126
|
+
const startsWith = key + '=';
|
|
127
|
+
const source = window.location.search
|
|
128
|
+
.split(/[?&]/)
|
|
129
|
+
.find((item) => item.startsWith(startsWith));
|
|
130
|
+
return source ? source.slice(startsWith.length) : '';
|
|
131
|
+
}
|
package/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './declare';
|
|
2
|
-
export * from './widget';
|
|
1
|
+
export * from './declare';
|
|
2
|
+
export * from './widget';
|
package/index.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./declare"), exports);
|
|
18
|
-
__exportStar(require("./widget"), exports);
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./declare"), exports);
|
|
18
|
+
__exportStar(require("./widget"), exports);
|
package/package.json
CHANGED
package/theme.d.ts
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Для получения текущей темы, виджет должен имплементировать
|
|
3
|
-
* интерфейс OnThemeChange:
|
|
4
|
-
*
|
|
5
|
-
* ```ts
|
|
6
|
-
* import { Declare, Widget, OnThemeChange } from 'plmt-constructor-sdk';
|
|
7
|
-
* import { Theme } from 'plmt-constructor-sdk/theme';
|
|
8
|
-
*
|
|
9
|
-
* @Declare()
|
|
10
|
-
* class MyWidget extends Widget implements OnThemeChange {
|
|
11
|
-
* onThemeChange(theme: Theme): void {}
|
|
12
|
-
* }
|
|
13
|
-
* ```
|
|
14
|
-
*
|
|
15
|
-
* @packageDocumentation
|
|
16
|
-
* @module Работа с темами
|
|
17
|
-
*/
|
|
18
|
-
export interface Theme {
|
|
19
|
-
background: string;
|
|
20
|
-
backgroundBright: string;
|
|
21
|
-
backgroundTint: string[];
|
|
22
|
-
colorize: string[][];
|
|
23
|
-
colors: string[];
|
|
24
|
-
text: string;
|
|
25
|
-
textTint: string[];
|
|
26
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* Для получения текущей темы, виджет должен имплементировать
|
|
3
|
+
* интерфейс OnThemeChange:
|
|
4
|
+
*
|
|
5
|
+
* ```ts
|
|
6
|
+
* import { Declare, Widget, OnThemeChange } from 'plmt-constructor-sdk';
|
|
7
|
+
* import { Theme } from 'plmt-constructor-sdk/theme';
|
|
8
|
+
*
|
|
9
|
+
* @Declare()
|
|
10
|
+
* class MyWidget extends Widget implements OnThemeChange {
|
|
11
|
+
* onThemeChange(theme: Theme): void {}
|
|
12
|
+
* }
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* @packageDocumentation
|
|
16
|
+
* @module Работа с темами
|
|
17
|
+
*/
|
|
18
|
+
export interface Theme {
|
|
19
|
+
background: string;
|
|
20
|
+
backgroundBright: string;
|
|
21
|
+
backgroundTint: string[];
|
|
22
|
+
colorize: string[][];
|
|
23
|
+
colors: string[];
|
|
24
|
+
text: string;
|
|
25
|
+
textTint: string[];
|
|
26
|
+
}
|
package/theme.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Для получения текущей темы, виджет должен имплементировать
|
|
4
|
-
* интерфейс OnThemeChange:
|
|
5
|
-
*
|
|
6
|
-
* ```ts
|
|
7
|
-
* import { Declare, Widget, OnThemeChange } from 'plmt-constructor-sdk';
|
|
8
|
-
* import { Theme } from 'plmt-constructor-sdk/theme';
|
|
9
|
-
*
|
|
10
|
-
* @Declare()
|
|
11
|
-
* class MyWidget extends Widget implements OnThemeChange {
|
|
12
|
-
* onThemeChange(theme: Theme): void {}
|
|
13
|
-
* }
|
|
14
|
-
* ```
|
|
15
|
-
*
|
|
16
|
-
* @packageDocumentation
|
|
17
|
-
* @module Работа с темами
|
|
18
|
-
*/
|
|
19
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Для получения текущей темы, виджет должен имплементировать
|
|
4
|
+
* интерфейс OnThemeChange:
|
|
5
|
+
*
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { Declare, Widget, OnThemeChange } from 'plmt-constructor-sdk';
|
|
8
|
+
* import { Theme } from 'plmt-constructor-sdk/theme';
|
|
9
|
+
*
|
|
10
|
+
* @Declare()
|
|
11
|
+
* class MyWidget extends Widget implements OnThemeChange {
|
|
12
|
+
* onThemeChange(theme: Theme): void {}
|
|
13
|
+
* }
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* @packageDocumentation
|
|
17
|
+
* @module Работа с темами
|
|
18
|
+
*/
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
package/widget.d.ts
CHANGED
|
@@ -1,63 +1,63 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* xXxXx
|
|
3
|
-
*
|
|
4
|
-
* @packageDocumentation
|
|
5
|
-
* @module Класс Widget
|
|
6
|
-
*/
|
|
7
|
-
import { Column, Filter, Target, Sort, DataItem } from './data';
|
|
8
|
-
import { Locale } from './config';
|
|
9
|
-
import { Theme } from './theme';
|
|
10
|
-
export declare abstract class Widget {
|
|
11
|
-
viewSettings: ViewSettings;
|
|
12
|
-
theme: Theme;
|
|
13
|
-
lang: Locale;
|
|
14
|
-
renderEnv: WidgetRenderEnv;
|
|
15
|
-
uid?: string;
|
|
16
|
-
ready(): void;
|
|
17
|
-
onInit(): void;
|
|
18
|
-
abstract onChange(): void;
|
|
19
|
-
onThemeChange(): void;
|
|
20
|
-
onLangChange(): void;
|
|
21
|
-
}
|
|
22
|
-
export interface SingleData {
|
|
23
|
-
readonly data: DataItem[];
|
|
24
|
-
readonly dataSettings: DataSettings;
|
|
25
|
-
}
|
|
26
|
-
export interface MultiData {
|
|
27
|
-
readonly data: {
|
|
28
|
-
[key: string]: DataItem[];
|
|
29
|
-
};
|
|
30
|
-
readonly dataSettings: DataSettingsMap;
|
|
31
|
-
}
|
|
32
|
-
export interface DataSettingsMap {
|
|
33
|
-
[key: string]: DataSettings;
|
|
34
|
-
}
|
|
35
|
-
export interface DataSettings {
|
|
36
|
-
columns: Column[];
|
|
37
|
-
columnsByBlock: Record<string, Column[]>;
|
|
38
|
-
filters: Filter[];
|
|
39
|
-
sort: Sort[];
|
|
40
|
-
colorize: ColorizeItem[];
|
|
41
|
-
total: number;
|
|
42
|
-
limit: number;
|
|
43
|
-
offset: number;
|
|
44
|
-
setFilter(filter: Filter, rowIndex: number, target?: Target): void;
|
|
45
|
-
removeFilterAt(index: number): void;
|
|
46
|
-
setSort(sort: Sort | null): void;
|
|
47
|
-
removeSortAt(index: number): void;
|
|
48
|
-
interact(dataIndex: number): void;
|
|
49
|
-
events: {
|
|
50
|
-
onOtherFilterChange?: (filter: Filter) => void;
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
export interface ColorizeItem {
|
|
54
|
-
column: Column;
|
|
55
|
-
getColor(value: number): string;
|
|
56
|
-
}
|
|
57
|
-
export interface ViewSettings {
|
|
58
|
-
[key: string]: any;
|
|
59
|
-
}
|
|
60
|
-
export declare enum WidgetRenderEnv {
|
|
61
|
-
Default = "default",
|
|
62
|
-
Print = "print"
|
|
63
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* xXxXx
|
|
3
|
+
*
|
|
4
|
+
* @packageDocumentation
|
|
5
|
+
* @module Класс Widget
|
|
6
|
+
*/
|
|
7
|
+
import { Column, Filter, Target, Sort, DataItem } from './data';
|
|
8
|
+
import { Locale } from './config';
|
|
9
|
+
import { Theme } from './theme';
|
|
10
|
+
export declare abstract class Widget {
|
|
11
|
+
viewSettings: ViewSettings;
|
|
12
|
+
theme: Theme;
|
|
13
|
+
lang: Locale;
|
|
14
|
+
renderEnv: WidgetRenderEnv;
|
|
15
|
+
uid?: string;
|
|
16
|
+
ready(): void;
|
|
17
|
+
onInit(): void;
|
|
18
|
+
abstract onChange(): void;
|
|
19
|
+
onThemeChange(): void;
|
|
20
|
+
onLangChange(): void;
|
|
21
|
+
}
|
|
22
|
+
export interface SingleData {
|
|
23
|
+
readonly data: DataItem[];
|
|
24
|
+
readonly dataSettings: DataSettings;
|
|
25
|
+
}
|
|
26
|
+
export interface MultiData {
|
|
27
|
+
readonly data: {
|
|
28
|
+
[key: string]: DataItem[];
|
|
29
|
+
};
|
|
30
|
+
readonly dataSettings: DataSettingsMap;
|
|
31
|
+
}
|
|
32
|
+
export interface DataSettingsMap {
|
|
33
|
+
[key: string]: DataSettings;
|
|
34
|
+
}
|
|
35
|
+
export interface DataSettings {
|
|
36
|
+
columns: Column[];
|
|
37
|
+
columnsByBlock: Record<string, Column[]>;
|
|
38
|
+
filters: Filter[];
|
|
39
|
+
sort: Sort[];
|
|
40
|
+
colorize: ColorizeItem[];
|
|
41
|
+
total: number;
|
|
42
|
+
limit: number;
|
|
43
|
+
offset: number;
|
|
44
|
+
setFilter(filter: Filter, rowIndex: number, target?: Target): void;
|
|
45
|
+
removeFilterAt(index: number): void;
|
|
46
|
+
setSort(sort: Sort | null): void;
|
|
47
|
+
removeSortAt(index: number): void;
|
|
48
|
+
interact(dataIndex: number): void;
|
|
49
|
+
events: {
|
|
50
|
+
onOtherFilterChange?: (filter: Filter) => void;
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
export interface ColorizeItem {
|
|
54
|
+
column: Column;
|
|
55
|
+
getColor(value: number): string;
|
|
56
|
+
}
|
|
57
|
+
export interface ViewSettings {
|
|
58
|
+
[key: string]: any;
|
|
59
|
+
}
|
|
60
|
+
export declare enum WidgetRenderEnv {
|
|
61
|
+
Default = "default",
|
|
62
|
+
Print = "print"
|
|
63
|
+
}
|
package/widget.js
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* xXxXx
|
|
4
|
-
*
|
|
5
|
-
* @packageDocumentation
|
|
6
|
-
* @module Класс Widget
|
|
7
|
-
*/
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.WidgetRenderEnv = exports.Widget = void 0;
|
|
10
|
-
class Widget {
|
|
11
|
-
constructor() {
|
|
12
|
-
this.renderEnv = WidgetRenderEnv.Default;
|
|
13
|
-
}
|
|
14
|
-
ready() { }
|
|
15
|
-
onInit() { }
|
|
16
|
-
onThemeChange() { }
|
|
17
|
-
onLangChange() { }
|
|
18
|
-
}
|
|
19
|
-
exports.Widget = Widget;
|
|
20
|
-
var WidgetRenderEnv;
|
|
21
|
-
(function (WidgetRenderEnv) {
|
|
22
|
-
WidgetRenderEnv["Default"] = "default";
|
|
23
|
-
WidgetRenderEnv["Print"] = "print";
|
|
24
|
-
})(WidgetRenderEnv = exports.WidgetRenderEnv || (exports.WidgetRenderEnv = {}));
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* xXxXx
|
|
4
|
+
*
|
|
5
|
+
* @packageDocumentation
|
|
6
|
+
* @module Класс Widget
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.WidgetRenderEnv = exports.Widget = void 0;
|
|
10
|
+
class Widget {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.renderEnv = WidgetRenderEnv.Default;
|
|
13
|
+
}
|
|
14
|
+
ready() { }
|
|
15
|
+
onInit() { }
|
|
16
|
+
onThemeChange() { }
|
|
17
|
+
onLangChange() { }
|
|
18
|
+
}
|
|
19
|
+
exports.Widget = Widget;
|
|
20
|
+
var WidgetRenderEnv;
|
|
21
|
+
(function (WidgetRenderEnv) {
|
|
22
|
+
WidgetRenderEnv["Default"] = "default";
|
|
23
|
+
WidgetRenderEnv["Print"] = "print";
|
|
24
|
+
})(WidgetRenderEnv = exports.WidgetRenderEnv || (exports.WidgetRenderEnv = {}));
|