clickgo 3.11.2 → 3.11.3
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 +1 -1
- package/dist/app/demo/config.json +1 -0
- package/dist/app/demo/form/control/panel/panel.xml +1 -0
- package/dist/app/demo/form/control/panel/test1.xml +2 -1
- package/dist/app/demo/form/control/svg/svg.xml +11 -11
- package/dist/app/demo/form/control/tip/tip.xml +13 -0
- package/dist/app/demo/form/main.js +4 -0
- package/dist/app/demo/form/main.xml +3 -0
- package/dist/app/demo/form/method/tool/tool.js +17 -0
- package/dist/app/demo/form/method/tool/tool.xml +12 -3
- package/dist/clickgo.js +1 -1
- package/dist/clickgo.ts +1 -1
- package/dist/control/common.cgc +0 -0
- package/dist/lib/control.ts +1 -1
- package/dist/lib/form.js +46 -4
- package/dist/lib/form.ts +67 -8
- package/dist/lib/fs.js +1 -1
- package/dist/lib/fs.ts +1 -1
- package/dist/lib/task.js +6 -0
- package/dist/lib/task.ts +6 -0
- package/dist/lib/tool.js +34 -1
- package/dist/lib/tool.ts +44 -0
- package/dist/theme/light.cgt +0 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -28,7 +28,7 @@ Load the module loader first, and then load it using the module loader.
|
|
|
28
28
|
**index.html**
|
|
29
29
|
|
|
30
30
|
```html
|
|
31
|
-
<script src="https://cdn.jsdelivr.net/npm/@litert/loader@3.5.1/dist/loader.min.js?path=index&npm={'clickgo':'3.11.
|
|
31
|
+
<script src="https://cdn.jsdelivr.net/npm/@litert/loader@3.5.1/dist/loader.min.js?path=index&npm={'clickgo':'3.11.3'}"></script>
|
|
32
32
|
```
|
|
33
33
|
|
|
34
34
|
**index.js**
|
|
@@ -108,6 +108,7 @@
|
|
|
108
108
|
"/form/control/tag/tag.xml",
|
|
109
109
|
"/form/control/text/text.js",
|
|
110
110
|
"/form/control/text/text.xml",
|
|
111
|
+
"/form/control/tip/tip.xml",
|
|
111
112
|
"/form/control/tuieditor/tuieditor.js",
|
|
112
113
|
"/form/control/tuieditor/tuieditor.xml",
|
|
113
114
|
"/form/control/vflow/vflow.css",
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
<layout gutter="10">
|
|
6
6
|
<button v-if="selected[0] !== './test1'" style="flex: 1;" @click="go">Go test1 with {'type': 'show'}</button>
|
|
7
7
|
<button style="flex: 1;" @click="ssend">send {'type': 'send'}</button>
|
|
8
|
+
<button style="flex: 1;" @click="sendToPanel(refs.panel, {'type': 's2p'})">sendToPanel {'type': 's2p'}</button>
|
|
8
9
|
</layout>
|
|
9
10
|
<layout gutter="10">
|
|
10
11
|
<button style="flex: 1;" @click="plain = !plain">{{plain ? '' : '!'}}plain</button>
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
<label>Parent data: {{rootForm.parentData}}</label>
|
|
6
6
|
<label>Qs: {{qs}}</label>
|
|
7
7
|
<label>rootMountData: {{rootMountData}}</label>
|
|
8
|
-
<button @click="click"
|
|
8
|
+
<button @click="click">Hi</button>
|
|
9
|
+
<button @click="sendToRootPanel({'a':1})" style="height: 30px;">sendToRootPanel({'a':1})</button>
|
|
9
10
|
<layout>
|
|
10
11
|
<button style="padding: 15px 30px;" area="split">
|
|
11
12
|
Padding 10px 20px with pop
|
|
@@ -5,20 +5,20 @@
|
|
|
5
5
|
<svg :layout="layout" :src="file" style="width: 64px; height: 64px;" />
|
|
6
6
|
</layout>
|
|
7
7
|
<layout gutter="10" style="margin-top: 10px;">
|
|
8
|
-
<button @click="color = undefined" style="
|
|
9
|
-
<button @click="color = 'green'" style="
|
|
10
|
-
<button @click="color = 'red'" style="
|
|
8
|
+
<button @click="color = undefined" style="flex: 1; width: 0;">Default</button>
|
|
9
|
+
<button @click="color = 'green'" style="flex: 1; width: 0;">Green</button>
|
|
10
|
+
<button @click="color = 'red'" style="flex: 1; width: 0;">Red</button>
|
|
11
11
|
</layout>
|
|
12
12
|
<layout gutter="10" style="margin-top: 10px;">
|
|
13
|
-
<button @click="i = 0" style="
|
|
14
|
-
<button @click="i = 1" style="
|
|
15
|
-
<button @click="i = 2" style="
|
|
16
|
-
<button @click="i = 3" style="
|
|
13
|
+
<button @click="i = 0" style="flex: 1; width: 0;">Shape 0</button>
|
|
14
|
+
<button @click="i = 1" style="flex: 1; width: 0;">1</button>
|
|
15
|
+
<button @click="i = 2" style="flex: 1; width: 0;">2</button>
|
|
16
|
+
<button @click="i = 3" style="flex: 1; width: 0;">None</button>
|
|
17
17
|
</layout>
|
|
18
18
|
<layout gutter="10" style="margin-top: 10px;">
|
|
19
|
-
<button @click="f = 0" style="
|
|
20
|
-
<button @click="f = 1" style="
|
|
21
|
-
<button @click="f = 2" style="
|
|
22
|
-
<button @click="f = 3" style="
|
|
19
|
+
<button @click="f = 0" style="flex: 1; width: 0;">File 0</button>
|
|
20
|
+
<button @click="f = 1" style="flex: 1; width: 0;">1</button>
|
|
21
|
+
<button @click="f = 2" style="flex: 1; width: 0;">2</button>
|
|
22
|
+
<button @click="f = 3" style="flex: 1; width: 0;">None</button>
|
|
23
23
|
</layout>
|
|
24
24
|
</form>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<form width="300" height="500" title="Tip">
|
|
2
|
+
<layout direction="v" gutter="10" style="flex: 1; padding: 10px;">
|
|
3
|
+
<tip label="ok">
|
|
4
|
+
<button>123</button>
|
|
5
|
+
</tip>
|
|
6
|
+
<tip label="Click me">
|
|
7
|
+
<button>456</button>
|
|
8
|
+
</tip>
|
|
9
|
+
<tip label="This is a select">
|
|
10
|
+
<select :data="[1,2,3,4]"></select>
|
|
11
|
+
</tip>
|
|
12
|
+
</layout>
|
|
13
|
+
</form>
|
|
@@ -172,6 +172,10 @@ class default_1 extends clickgo.form.AbstractForm {
|
|
|
172
172
|
frm = yield clickgo.form.create('/form/control/tag/tag');
|
|
173
173
|
break;
|
|
174
174
|
}
|
|
175
|
+
case 'ctip': {
|
|
176
|
+
frm = yield clickgo.form.create('/form/control/tip/tip');
|
|
177
|
+
break;
|
|
178
|
+
}
|
|
175
179
|
case 'cxterm': {
|
|
176
180
|
frm = yield clickgo.form.create(xterm_1.default);
|
|
177
181
|
break;
|
|
@@ -75,6 +75,9 @@
|
|
|
75
75
|
<button @click="openForm('cstep')">Step</button>
|
|
76
76
|
<button @click="openForm('ctag')">Tag</button>
|
|
77
77
|
</layout>
|
|
78
|
+
<layout gutter="10">
|
|
79
|
+
<button @click="openForm('ctip')">Tip</button>
|
|
80
|
+
</layout>
|
|
78
81
|
<layout gutter="10">
|
|
79
82
|
<button @click="openForm('cmonaco')">Monaco</button>
|
|
80
83
|
<button @click="openForm('cxterm')">Xterm</button>
|
|
@@ -66,6 +66,8 @@ class default_1 extends clickgo.form.AbstractForm {
|
|
|
66
66
|
this.url = 'HtTp://uSer:pAss@sUBDom.TopdOm23.CoM:29819/Admxw2Ksiz/dszas?Mdi=KdiMs1&a=JDd#hehHe';
|
|
67
67
|
this.url1 = '/abc/def/hehe';
|
|
68
68
|
this.url2 = '../bb.index';
|
|
69
|
+
this.second = '4531';
|
|
70
|
+
this.qs = 'a=1&b=2&c=3';
|
|
69
71
|
}
|
|
70
72
|
sleep() {
|
|
71
73
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -98,5 +100,20 @@ class default_1 extends clickgo.form.AbstractForm {
|
|
|
98
100
|
urlResolve() {
|
|
99
101
|
clickgo.form.dialog(clickgo.tool.urlResolve(this.url1, this.url2)).catch((e) => { throw e; });
|
|
100
102
|
}
|
|
103
|
+
formatSecond() {
|
|
104
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
105
|
+
yield clickgo.form.dialog(clickgo.tool.formatSecond(parseInt(this.second) || 0));
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
queryParse() {
|
|
109
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
110
|
+
yield clickgo.form.dialog(JSON.stringify(clickgo.tool.queryParse(this.qs)));
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
queryStringify() {
|
|
114
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
115
|
+
yield clickgo.form.dialog(clickgo.tool.queryStringify({ 'a': 1, 'b': 'c' }));
|
|
116
|
+
});
|
|
117
|
+
}
|
|
101
118
|
}
|
|
102
119
|
exports.default = default_1;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<form width="350" height="
|
|
1
|
+
<form width="350" height="500" title="Library tool">
|
|
2
2
|
<flow direction="v" style="flex: 1; padding: 10px;">
|
|
3
3
|
<layout direction="v" gutter="10">
|
|
4
4
|
<button @click="sleep">{{sleeping ? 'Waiting...' : 'sleep(1000)'}}</button>
|
|
@@ -7,12 +7,12 @@
|
|
|
7
7
|
<layout gutter="10">
|
|
8
8
|
<text v-model="min" style="flex: 1;"></text>
|
|
9
9
|
<text v-model="max" style="flex: 1;"></text>
|
|
10
|
-
<button @click="rand"
|
|
10
|
+
<button @click="rand">rand({{min}}, {{max}})</button>
|
|
11
11
|
</layout>
|
|
12
12
|
<layout gutter="10">
|
|
13
13
|
<text v-model="length" style="width: 30px;"></text>
|
|
14
14
|
<text v-model="block" style="flex: 1;"></text>
|
|
15
|
-
<button @click="random"
|
|
15
|
+
<button @click="random">random({{length}}, RANDOM_LN, '{{block}}')</button>
|
|
16
16
|
</layout>
|
|
17
17
|
<button @click="escapeHTML">escapeHTML('{{purifyTxt.slice(0, 5).replace("'", "\\'")}}...')</button>
|
|
18
18
|
<button @click="rgb2hsl">rgb2hsl('9,105,218')</button>
|
|
@@ -22,6 +22,15 @@
|
|
|
22
22
|
<text v-model="url1"></text>
|
|
23
23
|
<text v-model="url2"></text>
|
|
24
24
|
<button @click="urlResolve">urlResolve('{{url1.slice(0, 5)}}...', '{{url2.slice(0, 5)}}...')</button>
|
|
25
|
+
<layout gutter="10">
|
|
26
|
+
<text v-model="second" style="flex: 1;"></text>
|
|
27
|
+
<button @click="formatSecond">formatSecond({{second}})</button>
|
|
28
|
+
</layout>
|
|
29
|
+
<layout gutter="10">
|
|
30
|
+
<text v-model="qs" style="flex: 1;"></text>
|
|
31
|
+
<button @click="queryParse">queryParse('{{qs.slice(0, 5)}}...')</button>
|
|
32
|
+
</layout>
|
|
33
|
+
<button @click="queryStringify">queryStringify({'a':1,'b':'c'})</button>
|
|
25
34
|
</layout>
|
|
26
35
|
</flow>
|
|
27
36
|
</form>
|
package/dist/clickgo.js
CHANGED
|
@@ -24,7 +24,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.zip = exports.tool = exports.theme = exports.task = exports.storage = exports.native = exports.fs = exports.form = exports.dom = exports.core = exports.control = exports.vue = exports.hasFrame = exports.isImmersion = exports.getPlatform = exports.isNative = exports.getVersion = void 0;
|
|
27
|
-
const version = '3.11.
|
|
27
|
+
const version = '3.11.3';
|
|
28
28
|
function getVersion() {
|
|
29
29
|
return version;
|
|
30
30
|
}
|
package/dist/clickgo.ts
CHANGED
package/dist/control/common.cgc
CHANGED
|
Binary file
|
package/dist/lib/control.ts
CHANGED
|
@@ -186,7 +186,7 @@ export abstract class AbstractControl {
|
|
|
186
186
|
public readonly emits: Record<string, null | ((payload: any) => boolean)> = {};
|
|
187
187
|
|
|
188
188
|
/** --- 组件的子插槽 --- */
|
|
189
|
-
public readonly slots: Record<string, any> = {};
|
|
189
|
+
public readonly slots: Record<string, () => any[]> = {};
|
|
190
190
|
|
|
191
191
|
/** --- 获取某插槽所有子类 --- */
|
|
192
192
|
public get slotsAll() {
|
package/dist/lib/form.js
CHANGED
|
@@ -269,6 +269,15 @@ class AbstractPanel extends AbstractCommon {
|
|
|
269
269
|
get rootPanel() {
|
|
270
270
|
return {};
|
|
271
271
|
}
|
|
272
|
+
get formHash() {
|
|
273
|
+
return this.rootForm.formHash;
|
|
274
|
+
}
|
|
275
|
+
set formHash(fh) {
|
|
276
|
+
this.rootForm.formHash = fh;
|
|
277
|
+
}
|
|
278
|
+
sendToRootPanel(data) {
|
|
279
|
+
this.rootPanel.send(data);
|
|
280
|
+
}
|
|
272
281
|
enterStep(list) {
|
|
273
282
|
return __awaiter(this, void 0, void 0, function* () {
|
|
274
283
|
return this.rootForm.enterStep(list);
|
|
@@ -384,6 +393,9 @@ class AbstractForm extends AbstractCommon {
|
|
|
384
393
|
core.trigger('formHashChange', this.taskId, this.formId, parent);
|
|
385
394
|
});
|
|
386
395
|
}
|
|
396
|
+
sendToPanel(panel, data) {
|
|
397
|
+
panel.send(data);
|
|
398
|
+
}
|
|
387
399
|
get inStep() {
|
|
388
400
|
return this._inStep;
|
|
389
401
|
}
|
|
@@ -1502,25 +1514,38 @@ function refreshPopPosition(el, pop, direction, size = {}) {
|
|
|
1502
1514
|
left = bcr.left;
|
|
1503
1515
|
top = bcr.top + bcr.height;
|
|
1504
1516
|
}
|
|
1505
|
-
else {
|
|
1517
|
+
else if (direction === 'h') {
|
|
1506
1518
|
left = bcr.left + bcr.width - 2;
|
|
1507
1519
|
top = bcr.top - 2;
|
|
1508
1520
|
}
|
|
1521
|
+
else {
|
|
1522
|
+
pop.removeAttribute('data-pop-t-bottom');
|
|
1523
|
+
left = bcr.left + bcr.width / 2 - width / 2;
|
|
1524
|
+
top = bcr.top - height - 10;
|
|
1525
|
+
}
|
|
1509
1526
|
if (width + left > window.innerWidth) {
|
|
1510
1527
|
if (direction === 'v') {
|
|
1511
1528
|
left = bcr.left + bcr.width - width;
|
|
1512
1529
|
}
|
|
1513
|
-
else {
|
|
1530
|
+
else if (direction === 'h') {
|
|
1514
1531
|
left = bcr.left - width + 2;
|
|
1515
1532
|
}
|
|
1533
|
+
else {
|
|
1534
|
+
}
|
|
1516
1535
|
}
|
|
1517
1536
|
if (height + top > window.innerHeight) {
|
|
1518
1537
|
if (direction === 'v') {
|
|
1519
1538
|
top = bcr.top - height;
|
|
1520
1539
|
}
|
|
1521
|
-
else {
|
|
1540
|
+
else if (direction === 'h') {
|
|
1522
1541
|
top = bcr.top + bcr.height - height + 2;
|
|
1523
1542
|
}
|
|
1543
|
+
else {
|
|
1544
|
+
}
|
|
1545
|
+
}
|
|
1546
|
+
else if (top < 0 && direction === 't') {
|
|
1547
|
+
top = bcr.top + bcr.height + 10;
|
|
1548
|
+
pop.dataset.popTBottom = '';
|
|
1524
1549
|
}
|
|
1525
1550
|
}
|
|
1526
1551
|
else {
|
|
@@ -1565,6 +1590,17 @@ function refreshPopPosition(el, pop, direction, size = {}) {
|
|
|
1565
1590
|
}
|
|
1566
1591
|
let lastShowPopTime = 0;
|
|
1567
1592
|
function showPop(el, pop, direction, opt = {}) {
|
|
1593
|
+
if (pop && direction === 't') {
|
|
1594
|
+
refreshPopPosition(el, pop, 't', opt.size);
|
|
1595
|
+
if (opt.autoPosition) {
|
|
1596
|
+
clickgo.dom.watchSize(pop, () => {
|
|
1597
|
+
refreshPopPosition(el, pop, 't', opt.size);
|
|
1598
|
+
});
|
|
1599
|
+
}
|
|
1600
|
+
pop.dataset.cgOpen = '';
|
|
1601
|
+
pop.dataset.cgT = '';
|
|
1602
|
+
return;
|
|
1603
|
+
}
|
|
1568
1604
|
if (opt.null === undefined) {
|
|
1569
1605
|
opt.null = false;
|
|
1570
1606
|
}
|
|
@@ -1605,7 +1641,7 @@ function showPop(el, pop, direction, opt = {}) {
|
|
|
1605
1641
|
return;
|
|
1606
1642
|
}
|
|
1607
1643
|
refreshPopPosition(el, pop, direction, opt.size);
|
|
1608
|
-
if (opt.autoPosition && typeof direction === 'string'
|
|
1644
|
+
if (opt.autoPosition && typeof direction === 'string') {
|
|
1609
1645
|
clickgo.dom.watchSize(pop, () => {
|
|
1610
1646
|
refreshPopPosition(el, pop, direction, opt.size);
|
|
1611
1647
|
});
|
|
@@ -1626,6 +1662,12 @@ function hidePop(pop) {
|
|
|
1626
1662
|
hidePop(popInfo.elList[0]);
|
|
1627
1663
|
return;
|
|
1628
1664
|
}
|
|
1665
|
+
if (pop.dataset.cgT !== undefined) {
|
|
1666
|
+
pop.removeAttribute('data-cg-t');
|
|
1667
|
+
pop.removeAttribute('data-cg-open');
|
|
1668
|
+
clickgo.dom.unwatchSize(pop);
|
|
1669
|
+
return;
|
|
1670
|
+
}
|
|
1629
1671
|
let isPop = false;
|
|
1630
1672
|
if (pop.dataset.cgPopOpen !== undefined) {
|
|
1631
1673
|
}
|
package/dist/lib/form.ts
CHANGED
|
@@ -358,6 +358,21 @@ export abstract class AbstractPanel extends AbstractCommon {
|
|
|
358
358
|
return {} as any;
|
|
359
359
|
}
|
|
360
360
|
|
|
361
|
+
/** --- 获取母窗体的 formHash --- */
|
|
362
|
+
public get formHash(): string {
|
|
363
|
+
return this.rootForm.formHash;
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
/** --- 设置母窗体的 formHash --- */
|
|
367
|
+
public set formHash(fh: string) {
|
|
368
|
+
this.rootForm.formHash = fh;
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
/** --- 发送一段数据到自己这个 panel 控件,本质上也是调用的 panel 控件的 send 方法,主要用来实现发送给跳转后的 panel --- */
|
|
372
|
+
public sendToRootPanel(data: Record<string, any>): void {
|
|
373
|
+
this.rootPanel.send(data);
|
|
374
|
+
}
|
|
375
|
+
|
|
361
376
|
/** --- 母窗体进入 form hash 为源的步进条 --- */
|
|
362
377
|
public async enterStep(list: Array<{
|
|
363
378
|
/** --- 步骤 hash,第一个必须为当前 hash --- */
|
|
@@ -523,6 +538,11 @@ export abstract class AbstractForm extends AbstractCommon {
|
|
|
523
538
|
core.trigger('formHashChange', this.taskId, this.formId, parent);
|
|
524
539
|
}
|
|
525
540
|
|
|
541
|
+
/** --- 发送一段数据到 panel 控件,本质上也是调用的 panel 控件的 send 方法 --- */
|
|
542
|
+
public sendToPanel(panel: control.AbstractControl & Record<string, any>, data: Record<string, any>): void {
|
|
543
|
+
panel.send(data);
|
|
544
|
+
}
|
|
545
|
+
|
|
526
546
|
/** --- 覆盖整个窗体的 loading --- */
|
|
527
547
|
public loading: boolean = false;
|
|
528
548
|
|
|
@@ -1965,43 +1985,61 @@ export function removeFromPop(el: HTMLElement): void {
|
|
|
1965
1985
|
}
|
|
1966
1986
|
|
|
1967
1987
|
/** --- 重新调整 pop 的位置 --- */
|
|
1968
|
-
function refreshPopPosition(el: HTMLElement, pop: HTMLElement, direction: 'h' | 'v' | MouseEvent | TouchEvent | { x: number; y: number; }, size: { width?: number; height?: number; } = {}): void {
|
|
1988
|
+
function refreshPopPosition(el: HTMLElement, pop: HTMLElement, direction: 'h' | 'v' | 't' | MouseEvent | TouchEvent | { x: number; y: number; }, size: { width?: number; height?: number; } = {}): void {
|
|
1969
1989
|
// --- 最终 pop 的大小 ---
|
|
1970
1990
|
const width = size.width ?? pop.offsetWidth;
|
|
1971
1991
|
const height = size.height ?? pop.offsetHeight;
|
|
1972
1992
|
// --- 最终显示位置 ---
|
|
1973
1993
|
let left: number, top: number;
|
|
1974
1994
|
if (typeof direction === 'string') {
|
|
1995
|
+
/** --- 母对象的位置 --- */
|
|
1975
1996
|
const bcr = el.getBoundingClientRect();
|
|
1976
1997
|
if (direction === 'v') {
|
|
1977
1998
|
// --- 垂直弹出 ---
|
|
1978
1999
|
left = bcr.left;
|
|
1979
2000
|
top = bcr.top + bcr.height;
|
|
1980
2001
|
}
|
|
1981
|
-
else {
|
|
2002
|
+
else if (direction === 'h') {
|
|
1982
2003
|
// --- 水平弹出 ---
|
|
1983
2004
|
left = bcr.left + bcr.width - 2;
|
|
1984
2005
|
top = bcr.top - 2;
|
|
1985
2006
|
}
|
|
2007
|
+
else {
|
|
2008
|
+
// --- 垂直水平居中 ---
|
|
2009
|
+
pop.removeAttribute('data-pop-t-bottom');
|
|
2010
|
+
left = bcr.left + bcr.width / 2 - width / 2;
|
|
2011
|
+
top = bcr.top - height - 10;
|
|
2012
|
+
}
|
|
1986
2013
|
// --- 检查水平是否出框 ---
|
|
1987
2014
|
if (width + left > window.innerWidth) {
|
|
1988
2015
|
if (direction === 'v') {
|
|
1989
2016
|
// --- 垂直弹出 ---
|
|
1990
2017
|
left = bcr.left + bcr.width - width;
|
|
1991
2018
|
}
|
|
1992
|
-
else {
|
|
2019
|
+
else if (direction === 'h') {
|
|
1993
2020
|
// --- 水平弹出,右边位置不够弹到左边 ---
|
|
1994
2021
|
left = bcr.left - width + 2;
|
|
1995
2022
|
}
|
|
2023
|
+
else {
|
|
2024
|
+
// --- 垂直水平居中,水平超出不管 ---
|
|
2025
|
+
}
|
|
1996
2026
|
}
|
|
1997
|
-
// ---
|
|
2027
|
+
// --- 检测垂直是否下侧出框 ---
|
|
1998
2028
|
if (height + top > window.innerHeight) {
|
|
1999
2029
|
if (direction === 'v') {
|
|
2000
2030
|
top = bcr.top - height;
|
|
2001
2031
|
}
|
|
2002
|
-
else {
|
|
2032
|
+
else if (direction === 'h') {
|
|
2003
2033
|
top = bcr.top + bcr.height - height + 2;
|
|
2004
2034
|
}
|
|
2035
|
+
else {
|
|
2036
|
+
// --- 垂直水平居中,下侧出框不管 ---
|
|
2037
|
+
}
|
|
2038
|
+
}
|
|
2039
|
+
else if (top < 0 && direction === 't') {
|
|
2040
|
+
// --- 垂直水平居中,上侧出框 ---
|
|
2041
|
+
top = bcr.top + bcr.height + 10;
|
|
2042
|
+
pop.dataset.popTBottom = '';
|
|
2005
2043
|
}
|
|
2006
2044
|
}
|
|
2007
2045
|
else {
|
|
@@ -2053,10 +2091,25 @@ let lastShowPopTime: number = 0;
|
|
|
2053
2091
|
* --- 获取 pop 显示出来的坐标并报系统全局记录 ---
|
|
2054
2092
|
* @param el 响应的元素
|
|
2055
2093
|
* @param pop 要显示 pop 元素
|
|
2056
|
-
* @param direction 要显示方向(以 $el 为准的 h
|
|
2094
|
+
* @param direction 要显示方向(以 $el 为准的 h 水平 v 垂直 t 垂直水平居中)或坐标
|
|
2057
2095
|
* @param opt width / height 显示的 pop 定义自定义宽/高度,可省略;null,true 代表为空也会显示,默认为 false; autoPosition, 自动更新 pop 位置,默认 false,true 为原元素位置变更,pop 位置也会变更,pop 大小变更,位置也会变更
|
|
2058
2096
|
*/
|
|
2059
|
-
export function showPop(el: HTMLElement, pop: HTMLElement | undefined, direction: 'h' | 'v' | MouseEvent | TouchEvent | { x: number; y: number; }, opt: {
|
|
2097
|
+
export function showPop(el: HTMLElement, pop: HTMLElement | undefined, direction: 'h' | 'v' | 't' | MouseEvent | TouchEvent | { x: number; y: number; }, opt: {
|
|
2098
|
+
'size'?: { width?: number; height?: number; };
|
|
2099
|
+
'null'?: boolean;
|
|
2100
|
+
'autoPosition'?: boolean;
|
|
2101
|
+
} = {}): void {
|
|
2102
|
+
if (pop && direction === 't') {
|
|
2103
|
+
refreshPopPosition(el, pop, 't', opt.size);
|
|
2104
|
+
if (opt.autoPosition) {
|
|
2105
|
+
clickgo.dom.watchSize(pop, () => {
|
|
2106
|
+
refreshPopPosition(el, pop, 't', opt.size);
|
|
2107
|
+
});
|
|
2108
|
+
}
|
|
2109
|
+
pop.dataset.cgOpen = '';
|
|
2110
|
+
pop.dataset.cgT = '';
|
|
2111
|
+
return;
|
|
2112
|
+
}
|
|
2060
2113
|
// --- opt.null 为 true 代表可为空,为空也会被显示,默认为 false ---
|
|
2061
2114
|
if (opt.null === undefined) {
|
|
2062
2115
|
opt.null = false;
|
|
@@ -2105,7 +2158,7 @@ export function showPop(el: HTMLElement, pop: HTMLElement | undefined, direction
|
|
|
2105
2158
|
}
|
|
2106
2159
|
// --- 设定 pop 位置 ---
|
|
2107
2160
|
refreshPopPosition(el, pop, direction, opt.size);
|
|
2108
|
-
if (opt.autoPosition && typeof direction === 'string'
|
|
2161
|
+
if (opt.autoPosition && typeof direction === 'string') {
|
|
2109
2162
|
// --- 可能要重置 pop 位置 ---
|
|
2110
2163
|
clickgo.dom.watchSize(pop, () => {
|
|
2111
2164
|
refreshPopPosition(el, pop, direction, opt.size);
|
|
@@ -2130,6 +2183,12 @@ export function hidePop(pop?: HTMLElement): void {
|
|
|
2130
2183
|
hidePop(popInfo.elList[0]);
|
|
2131
2184
|
return;
|
|
2132
2185
|
}
|
|
2186
|
+
if (pop.dataset.cgT !== undefined) {
|
|
2187
|
+
pop.removeAttribute('data-cg-t');
|
|
2188
|
+
pop.removeAttribute('data-cg-open');
|
|
2189
|
+
clickgo.dom.unwatchSize(pop);
|
|
2190
|
+
return;
|
|
2191
|
+
}
|
|
2133
2192
|
let isPop: boolean = false;
|
|
2134
2193
|
if (pop.dataset.cgPopOpen !== undefined) {
|
|
2135
2194
|
// --- el ---
|
package/dist/lib/fs.js
CHANGED
|
@@ -38,7 +38,7 @@ const task = __importStar(require("./task"));
|
|
|
38
38
|
const form = __importStar(require("./form"));
|
|
39
39
|
const core = __importStar(require("./core"));
|
|
40
40
|
const native = __importStar(require("./native"));
|
|
41
|
-
const clickgoFiles = ['/app/', '/app/demo/', '/app/demo/app.js', '/app/demo/config.json', '/app/demo/form/', '/app/demo/form/control/', '/app/demo/form/control/alayout/', '/app/demo/form/control/alayout/alayout.css', '/app/demo/form/control/alayout/alayout.js', '/app/demo/form/control/alayout/alayout.xml', '/app/demo/form/control/arteditor/', '/app/demo/form/control/arteditor/arteditor.js', '/app/demo/form/control/arteditor/arteditor.xml', '/app/demo/form/control/arteditor/img.js', '/app/demo/form/control/arteditor/img.xml', '/app/demo/form/control/block/', '/app/demo/form/control/block/block.css', '/app/demo/form/control/block/block.xml', '/app/demo/form/control/box/', '/app/demo/form/control/box/box.js', '/app/demo/form/control/box/box.xml', '/app/demo/form/control/button/', '/app/demo/form/control/button/button.css', '/app/demo/form/control/button/button.js', '/app/demo/form/control/button/button.xml', '/app/demo/form/control/check/', '/app/demo/form/control/check/check.js', '/app/demo/form/control/check/check.xml', '/app/demo/form/control/date/', '/app/demo/form/control/date/date.js', '/app/demo/form/control/date/date.xml', '/app/demo/form/control/desc/', '/app/demo/form/control/desc/desc.js', '/app/demo/form/control/desc/desc.xml', '/app/demo/form/control/dialog/', '/app/demo/form/control/dialog/dialog.js', '/app/demo/form/control/dialog/dialog.xml', '/app/demo/form/control/echarts/', '/app/demo/form/control/echarts/echarts.js', '/app/demo/form/control/echarts/echarts.xml', '/app/demo/form/control/file/', '/app/demo/form/control/file/file.js', '/app/demo/form/control/file/file.xml', '/app/demo/form/control/flow/', '/app/demo/form/control/flow/flow.css', '/app/demo/form/control/flow/flow.js', '/app/demo/form/control/flow/flow.xml', '/app/demo/form/control/form/', '/app/demo/form/control/form/form.css', '/app/demo/form/control/form/form.js', '/app/demo/form/control/form/form.xml', '/app/demo/form/control/html/', '/app/demo/form/control/html/html.js', '/app/demo/form/control/html/html.xml', '/app/demo/form/control/iconview/', '/app/demo/form/control/iconview/iconview.js', '/app/demo/form/control/iconview/iconview.xml', '/app/demo/form/control/img/', '/app/demo/form/control/img/img.xml', '/app/demo/form/control/label/', '/app/demo/form/control/label/label.js', '/app/demo/form/control/label/label.xml', '/app/demo/form/control/layout/', '/app/demo/form/control/layout/layout.js', '/app/demo/form/control/layout/layout.xml', '/app/demo/form/control/link/', '/app/demo/form/control/link/link.js', '/app/demo/form/control/link/link.xml', '/app/demo/form/control/list/', '/app/demo/form/control/list/list.css', '/app/demo/form/control/list/list.js', '/app/demo/form/control/list/list.xml', '/app/demo/form/control/loading/', '/app/demo/form/control/loading/loading.xml', '/app/demo/form/control/map/', '/app/demo/form/control/map/map.js', '/app/demo/form/control/map/map.xml', '/app/demo/form/control/marquee/', '/app/demo/form/control/marquee/marquee.js', '/app/demo/form/control/marquee/marquee.xml', '/app/demo/form/control/menu/', '/app/demo/form/control/menu/menu.js', '/app/demo/form/control/menu/menu.xml', '/app/demo/form/control/monaco/', '/app/demo/form/control/monaco/monaco.js', '/app/demo/form/control/monaco/monaco.xml', '/app/demo/form/control/nav/', '/app/demo/form/control/nav/nav.js', '/app/demo/form/control/nav/nav.xml', '/app/demo/form/control/page/', '/app/demo/form/control/page/page.js', '/app/demo/form/control/page/page.xml', '/app/demo/form/control/panel/', '/app/demo/form/control/panel/panel.js', '/app/demo/form/control/panel/panel.xml', '/app/demo/form/control/panel/test1.js', '/app/demo/form/control/panel/test1.xml', '/app/demo/form/control/panel/test2.xml', '/app/demo/form/control/property/', '/app/demo/form/control/property/property.js', '/app/demo/form/control/property/property.xml', '/app/demo/form/control/radio/', '/app/demo/form/control/radio/radio.js', '/app/demo/form/control/radio/radio.xml', '/app/demo/form/control/scroll/', '/app/demo/form/control/scroll/scroll.js', '/app/demo/form/control/scroll/scroll.xml', '/app/demo/form/control/select/', '/app/demo/form/control/select/select.js', '/app/demo/form/control/select/select.xml', '/app/demo/form/control/step/', '/app/demo/form/control/step/step.js', '/app/demo/form/control/step/step.xml', '/app/demo/form/control/svg/', '/app/demo/form/control/svg/svg.js', '/app/demo/form/control/svg/svg.xml', '/app/demo/form/control/tab/', '/app/demo/form/control/tab/tab.js', '/app/demo/form/control/tab/tab.xml', '/app/demo/form/control/table/', '/app/demo/form/control/table/table.js', '/app/demo/form/control/table/table.xml', '/app/demo/form/control/tag/', '/app/demo/form/control/tag/tag.xml', '/app/demo/form/control/text/', '/app/demo/form/control/text/text.js', '/app/demo/form/control/text/text.xml', '/app/demo/form/control/tuieditor/', '/app/demo/form/control/tuieditor/tuieditor.js', '/app/demo/form/control/tuieditor/tuieditor.xml', '/app/demo/form/control/vflow/', '/app/demo/form/control/vflow/vflow.css', '/app/demo/form/control/vflow/vflow.js', '/app/demo/form/control/vflow/vflow.xml', '/app/demo/form/control/video/', '/app/demo/form/control/video/video.js', '/app/demo/form/control/video/video.xml', '/app/demo/form/control/xterm/', '/app/demo/form/control/xterm/xterm.js', '/app/demo/form/control/xterm/xterm.xml', '/app/demo/form/event/', '/app/demo/form/event/form/', '/app/demo/form/event/form/form.css', '/app/demo/form/event/form/form.js', '/app/demo/form/event/form/form.xml', '/app/demo/form/event/other/', '/app/demo/form/event/other/other.js', '/app/demo/form/event/other/other.xml', '/app/demo/form/event/screen/', '/app/demo/form/event/screen/screen.js', '/app/demo/form/event/screen/screen.xml', '/app/demo/form/event/task/', '/app/demo/form/event/task/task.js', '/app/demo/form/event/task/task.xml', '/app/demo/form/main.css', '/app/demo/form/main.js', '/app/demo/form/main.xml', '/app/demo/form/method/', '/app/demo/form/method/aform/', '/app/demo/form/method/aform/aform.js', '/app/demo/form/method/aform/aform.xml', '/app/demo/form/method/aform/sd.js', '/app/demo/form/method/aform/sd.xml', '/app/demo/form/method/core/', '/app/demo/form/method/core/core.js', '/app/demo/form/method/core/core.xml', '/app/demo/form/method/dom/', '/app/demo/form/method/dom/dom.css', '/app/demo/form/method/dom/dom.js', '/app/demo/form/method/dom/dom.xml', '/app/demo/form/method/form/', '/app/demo/form/method/form/form.js', '/app/demo/form/method/form/form.xml', '/app/demo/form/method/form/test.xml', '/app/demo/form/method/fs/', '/app/demo/form/method/fs/fs.js', '/app/demo/form/method/fs/fs.xml', '/app/demo/form/method/fs/text.js', '/app/demo/form/method/fs/text.xml', '/app/demo/form/method/native/', '/app/demo/form/method/native/native.js', '/app/demo/form/method/native/native.xml', '/app/demo/form/method/storage/', '/app/demo/form/method/storage/storage.js', '/app/demo/form/method/storage/storage.xml', '/app/demo/form/method/system/', '/app/demo/form/method/system/system.js', '/app/demo/form/method/system/system.xml', '/app/demo/form/method/task/', '/app/demo/form/method/task/locale1.json', '/app/demo/form/method/task/locale2.json', '/app/demo/form/method/task/task.js', '/app/demo/form/method/task/task.xml', '/app/demo/form/method/theme/', '/app/demo/form/method/theme/theme.js', '/app/demo/form/method/theme/theme.xml', '/app/demo/form/method/tool/', '/app/demo/form/method/tool/tool.js', '/app/demo/form/method/tool/tool.xml', '/app/demo/form/method/zip/', '/app/demo/form/method/zip/zip.js', '/app/demo/form/method/zip/zip.xml', '/app/demo/form/solution/', '/app/demo/form/solution/backpanel/', '/app/demo/form/solution/backpanel/backpanel.js', '/app/demo/form/solution/backpanel/backpanel.xml', '/app/demo/global.css', '/app/demo/res/', '/app/demo/res/icon.svg', '/app/demo/res/img.jpg', '/app/demo/res/marker.svg', '/app/demo/res/r-1.svg', '/app/demo/res/r-2.svg', '/app/demo/res/sql.svg', '/app/demo/res/txt.svg', '/app/demo/res/video.mp4', '/app/demo/res/zip.svg', '/app/task/', '/app/task/app.js', '/app/task/config.json', '/app/task/form/', '/app/task/form/bar/', '/app/task/form/bar/bar.js', '/app/task/form/bar/bar.xml', '/app/task/form/desktop/', '/app/task/form/desktop/desktop.xml', '/app/task/locale/', '/app/task/locale/en.json', '/app/task/locale/ja.json', '/app/task/locale/sc.json', '/app/task/locale/tc.json', '/clickgo.js', '/clickgo.ts', '/control/', '/control/arteditor.cgc', '/control/box.cgc', '/control/common.cgc', '/control/desc.cgc', '/control/echarts.cgc', '/control/form.cgc', '/control/html.cgc', '/control/iconview.cgc', '/control/map.cgc', '/control/monaco.cgc', '/control/nav.cgc', '/control/page.cgc', '/control/property.cgc', '/control/table.cgc', '/control/task.cgc', '/control/tuieditor.cgc', '/control/xterm.cgc', '/ext/', '/ext/toastui-editor-all.min.js', '/global.css', '/icon.png', '/index.js', '/index.ts', '/lib/', '/lib/control.js', '/lib/control.ts', '/lib/core.js', '/lib/core.ts', '/lib/dom.js', '/lib/dom.ts', '/lib/form.js', '/lib/form.ts', '/lib/fs.js', '/lib/fs.ts', '/lib/native.js', '/lib/native.ts', '/lib/storage.js', '/lib/storage.ts', '/lib/task.js', '/lib/task.ts', '/lib/theme.js', '/lib/theme.ts', '/lib/tool.js', '/lib/tool.ts', '/lib/zip.js', '/lib/zip.ts', '/theme/', '/theme/byterun.cgt', '/theme/familiar.cgt', '/theme/light.cgt'];
|
|
41
|
+
const clickgoFiles = ['/app/', '/app/demo/', '/app/demo/app.js', '/app/demo/config.json', '/app/demo/form/', '/app/demo/form/control/', '/app/demo/form/control/alayout/', '/app/demo/form/control/alayout/alayout.css', '/app/demo/form/control/alayout/alayout.js', '/app/demo/form/control/alayout/alayout.xml', '/app/demo/form/control/arteditor/', '/app/demo/form/control/arteditor/arteditor.js', '/app/demo/form/control/arteditor/arteditor.xml', '/app/demo/form/control/arteditor/img.js', '/app/demo/form/control/arteditor/img.xml', '/app/demo/form/control/block/', '/app/demo/form/control/block/block.css', '/app/demo/form/control/block/block.xml', '/app/demo/form/control/box/', '/app/demo/form/control/box/box.js', '/app/demo/form/control/box/box.xml', '/app/demo/form/control/button/', '/app/demo/form/control/button/button.css', '/app/demo/form/control/button/button.js', '/app/demo/form/control/button/button.xml', '/app/demo/form/control/check/', '/app/demo/form/control/check/check.js', '/app/demo/form/control/check/check.xml', '/app/demo/form/control/date/', '/app/demo/form/control/date/date.js', '/app/demo/form/control/date/date.xml', '/app/demo/form/control/desc/', '/app/demo/form/control/desc/desc.js', '/app/demo/form/control/desc/desc.xml', '/app/demo/form/control/dialog/', '/app/demo/form/control/dialog/dialog.js', '/app/demo/form/control/dialog/dialog.xml', '/app/demo/form/control/echarts/', '/app/demo/form/control/echarts/echarts.js', '/app/demo/form/control/echarts/echarts.xml', '/app/demo/form/control/file/', '/app/demo/form/control/file/file.js', '/app/demo/form/control/file/file.xml', '/app/demo/form/control/flow/', '/app/demo/form/control/flow/flow.css', '/app/demo/form/control/flow/flow.js', '/app/demo/form/control/flow/flow.xml', '/app/demo/form/control/form/', '/app/demo/form/control/form/form.css', '/app/demo/form/control/form/form.js', '/app/demo/form/control/form/form.xml', '/app/demo/form/control/html/', '/app/demo/form/control/html/html.js', '/app/demo/form/control/html/html.xml', '/app/demo/form/control/iconview/', '/app/demo/form/control/iconview/iconview.js', '/app/demo/form/control/iconview/iconview.xml', '/app/demo/form/control/img/', '/app/demo/form/control/img/img.xml', '/app/demo/form/control/label/', '/app/demo/form/control/label/label.js', '/app/demo/form/control/label/label.xml', '/app/demo/form/control/layout/', '/app/demo/form/control/layout/layout.js', '/app/demo/form/control/layout/layout.xml', '/app/demo/form/control/link/', '/app/demo/form/control/link/link.js', '/app/demo/form/control/link/link.xml', '/app/demo/form/control/list/', '/app/demo/form/control/list/list.css', '/app/demo/form/control/list/list.js', '/app/demo/form/control/list/list.xml', '/app/demo/form/control/loading/', '/app/demo/form/control/loading/loading.xml', '/app/demo/form/control/map/', '/app/demo/form/control/map/map.js', '/app/demo/form/control/map/map.xml', '/app/demo/form/control/marquee/', '/app/demo/form/control/marquee/marquee.js', '/app/demo/form/control/marquee/marquee.xml', '/app/demo/form/control/menu/', '/app/demo/form/control/menu/menu.js', '/app/demo/form/control/menu/menu.xml', '/app/demo/form/control/monaco/', '/app/demo/form/control/monaco/monaco.js', '/app/demo/form/control/monaco/monaco.xml', '/app/demo/form/control/nav/', '/app/demo/form/control/nav/nav.js', '/app/demo/form/control/nav/nav.xml', '/app/demo/form/control/page/', '/app/demo/form/control/page/page.js', '/app/demo/form/control/page/page.xml', '/app/demo/form/control/panel/', '/app/demo/form/control/panel/panel.js', '/app/demo/form/control/panel/panel.xml', '/app/demo/form/control/panel/test1.js', '/app/demo/form/control/panel/test1.xml', '/app/demo/form/control/panel/test2.xml', '/app/demo/form/control/property/', '/app/demo/form/control/property/property.js', '/app/demo/form/control/property/property.xml', '/app/demo/form/control/radio/', '/app/demo/form/control/radio/radio.js', '/app/demo/form/control/radio/radio.xml', '/app/demo/form/control/scroll/', '/app/demo/form/control/scroll/scroll.js', '/app/demo/form/control/scroll/scroll.xml', '/app/demo/form/control/select/', '/app/demo/form/control/select/select.js', '/app/demo/form/control/select/select.xml', '/app/demo/form/control/step/', '/app/demo/form/control/step/step.js', '/app/demo/form/control/step/step.xml', '/app/demo/form/control/svg/', '/app/demo/form/control/svg/svg.js', '/app/demo/form/control/svg/svg.xml', '/app/demo/form/control/tab/', '/app/demo/form/control/tab/tab.js', '/app/demo/form/control/tab/tab.xml', '/app/demo/form/control/table/', '/app/demo/form/control/table/table.js', '/app/demo/form/control/table/table.xml', '/app/demo/form/control/tag/', '/app/demo/form/control/tag/tag.xml', '/app/demo/form/control/text/', '/app/demo/form/control/text/text.js', '/app/demo/form/control/text/text.xml', '/app/demo/form/control/tip/', '/app/demo/form/control/tip/tip.xml', '/app/demo/form/control/tuieditor/', '/app/demo/form/control/tuieditor/tuieditor.js', '/app/demo/form/control/tuieditor/tuieditor.xml', '/app/demo/form/control/vflow/', '/app/demo/form/control/vflow/vflow.css', '/app/demo/form/control/vflow/vflow.js', '/app/demo/form/control/vflow/vflow.xml', '/app/demo/form/control/video/', '/app/demo/form/control/video/video.js', '/app/demo/form/control/video/video.xml', '/app/demo/form/control/xterm/', '/app/demo/form/control/xterm/xterm.js', '/app/demo/form/control/xterm/xterm.xml', '/app/demo/form/event/', '/app/demo/form/event/form/', '/app/demo/form/event/form/form.css', '/app/demo/form/event/form/form.js', '/app/demo/form/event/form/form.xml', '/app/demo/form/event/other/', '/app/demo/form/event/other/other.js', '/app/demo/form/event/other/other.xml', '/app/demo/form/event/screen/', '/app/demo/form/event/screen/screen.js', '/app/demo/form/event/screen/screen.xml', '/app/demo/form/event/task/', '/app/demo/form/event/task/task.js', '/app/demo/form/event/task/task.xml', '/app/demo/form/main.css', '/app/demo/form/main.js', '/app/demo/form/main.xml', '/app/demo/form/method/', '/app/demo/form/method/aform/', '/app/demo/form/method/aform/aform.js', '/app/demo/form/method/aform/aform.xml', '/app/demo/form/method/aform/sd.js', '/app/demo/form/method/aform/sd.xml', '/app/demo/form/method/core/', '/app/demo/form/method/core/core.js', '/app/demo/form/method/core/core.xml', '/app/demo/form/method/dom/', '/app/demo/form/method/dom/dom.css', '/app/demo/form/method/dom/dom.js', '/app/demo/form/method/dom/dom.xml', '/app/demo/form/method/form/', '/app/demo/form/method/form/form.js', '/app/demo/form/method/form/form.xml', '/app/demo/form/method/form/test.xml', '/app/demo/form/method/fs/', '/app/demo/form/method/fs/fs.js', '/app/demo/form/method/fs/fs.xml', '/app/demo/form/method/fs/text.js', '/app/demo/form/method/fs/text.xml', '/app/demo/form/method/native/', '/app/demo/form/method/native/native.js', '/app/demo/form/method/native/native.xml', '/app/demo/form/method/storage/', '/app/demo/form/method/storage/storage.js', '/app/demo/form/method/storage/storage.xml', '/app/demo/form/method/system/', '/app/demo/form/method/system/system.js', '/app/demo/form/method/system/system.xml', '/app/demo/form/method/task/', '/app/demo/form/method/task/locale1.json', '/app/demo/form/method/task/locale2.json', '/app/demo/form/method/task/task.js', '/app/demo/form/method/task/task.xml', '/app/demo/form/method/theme/', '/app/demo/form/method/theme/theme.js', '/app/demo/form/method/theme/theme.xml', '/app/demo/form/method/tool/', '/app/demo/form/method/tool/tool.js', '/app/demo/form/method/tool/tool.xml', '/app/demo/form/method/zip/', '/app/demo/form/method/zip/zip.js', '/app/demo/form/method/zip/zip.xml', '/app/demo/form/solution/', '/app/demo/form/solution/backpanel/', '/app/demo/form/solution/backpanel/backpanel.js', '/app/demo/form/solution/backpanel/backpanel.xml', '/app/demo/global.css', '/app/demo/res/', '/app/demo/res/icon.svg', '/app/demo/res/img.jpg', '/app/demo/res/marker.svg', '/app/demo/res/r-1.svg', '/app/demo/res/r-2.svg', '/app/demo/res/sql.svg', '/app/demo/res/txt.svg', '/app/demo/res/video.mp4', '/app/demo/res/zip.svg', '/app/task/', '/app/task/app.js', '/app/task/config.json', '/app/task/form/', '/app/task/form/bar/', '/app/task/form/bar/bar.js', '/app/task/form/bar/bar.xml', '/app/task/form/desktop/', '/app/task/form/desktop/desktop.xml', '/app/task/locale/', '/app/task/locale/en.json', '/app/task/locale/ja.json', '/app/task/locale/sc.json', '/app/task/locale/tc.json', '/clickgo.js', '/clickgo.ts', '/control/', '/control/arteditor.cgc', '/control/box.cgc', '/control/common.cgc', '/control/desc.cgc', '/control/echarts.cgc', '/control/form.cgc', '/control/html.cgc', '/control/iconview.cgc', '/control/map.cgc', '/control/monaco.cgc', '/control/nav.cgc', '/control/page.cgc', '/control/property.cgc', '/control/table.cgc', '/control/task.cgc', '/control/tuieditor.cgc', '/control/xterm.cgc', '/ext/', '/ext/toastui-editor-all.min.js', '/global.css', '/icon.png', '/index.js', '/index.ts', '/lib/', '/lib/control.js', '/lib/control.ts', '/lib/core.js', '/lib/core.ts', '/lib/dom.js', '/lib/dom.ts', '/lib/form.js', '/lib/form.ts', '/lib/fs.js', '/lib/fs.ts', '/lib/native.js', '/lib/native.ts', '/lib/storage.js', '/lib/storage.ts', '/lib/task.js', '/lib/task.ts', '/lib/theme.js', '/lib/theme.ts', '/lib/tool.js', '/lib/tool.ts', '/lib/zip.js', '/lib/zip.ts', '/theme/', '/theme/byterun.cgt', '/theme/familiar.cgt', '/theme/light.cgt'];
|
|
42
42
|
const localeData = {
|
|
43
43
|
'en': {
|
|
44
44
|
'apply-unmount': 'Are you sure to unmount the "?" mount point?',
|
package/dist/lib/fs.ts
CHANGED
|
@@ -12,7 +12,7 @@ import * as form from './form';
|
|
|
12
12
|
import * as core from './core';
|
|
13
13
|
import * as native from './native';
|
|
14
14
|
|
|
15
|
-
const clickgoFiles = ['/app/', '/app/demo/', '/app/demo/app.js', '/app/demo/config.json', '/app/demo/form/', '/app/demo/form/control/', '/app/demo/form/control/alayout/', '/app/demo/form/control/alayout/alayout.css', '/app/demo/form/control/alayout/alayout.js', '/app/demo/form/control/alayout/alayout.xml', '/app/demo/form/control/arteditor/', '/app/demo/form/control/arteditor/arteditor.js', '/app/demo/form/control/arteditor/arteditor.xml', '/app/demo/form/control/arteditor/img.js', '/app/demo/form/control/arteditor/img.xml', '/app/demo/form/control/block/', '/app/demo/form/control/block/block.css', '/app/demo/form/control/block/block.xml', '/app/demo/form/control/box/', '/app/demo/form/control/box/box.js', '/app/demo/form/control/box/box.xml', '/app/demo/form/control/button/', '/app/demo/form/control/button/button.css', '/app/demo/form/control/button/button.js', '/app/demo/form/control/button/button.xml', '/app/demo/form/control/check/', '/app/demo/form/control/check/check.js', '/app/demo/form/control/check/check.xml', '/app/demo/form/control/date/', '/app/demo/form/control/date/date.js', '/app/demo/form/control/date/date.xml', '/app/demo/form/control/desc/', '/app/demo/form/control/desc/desc.js', '/app/demo/form/control/desc/desc.xml', '/app/demo/form/control/dialog/', '/app/demo/form/control/dialog/dialog.js', '/app/demo/form/control/dialog/dialog.xml', '/app/demo/form/control/echarts/', '/app/demo/form/control/echarts/echarts.js', '/app/demo/form/control/echarts/echarts.xml', '/app/demo/form/control/file/', '/app/demo/form/control/file/file.js', '/app/demo/form/control/file/file.xml', '/app/demo/form/control/flow/', '/app/demo/form/control/flow/flow.css', '/app/demo/form/control/flow/flow.js', '/app/demo/form/control/flow/flow.xml', '/app/demo/form/control/form/', '/app/demo/form/control/form/form.css', '/app/demo/form/control/form/form.js', '/app/demo/form/control/form/form.xml', '/app/demo/form/control/html/', '/app/demo/form/control/html/html.js', '/app/demo/form/control/html/html.xml', '/app/demo/form/control/iconview/', '/app/demo/form/control/iconview/iconview.js', '/app/demo/form/control/iconview/iconview.xml', '/app/demo/form/control/img/', '/app/demo/form/control/img/img.xml', '/app/demo/form/control/label/', '/app/demo/form/control/label/label.js', '/app/demo/form/control/label/label.xml', '/app/demo/form/control/layout/', '/app/demo/form/control/layout/layout.js', '/app/demo/form/control/layout/layout.xml', '/app/demo/form/control/link/', '/app/demo/form/control/link/link.js', '/app/demo/form/control/link/link.xml', '/app/demo/form/control/list/', '/app/demo/form/control/list/list.css', '/app/demo/form/control/list/list.js', '/app/demo/form/control/list/list.xml', '/app/demo/form/control/loading/', '/app/demo/form/control/loading/loading.xml', '/app/demo/form/control/map/', '/app/demo/form/control/map/map.js', '/app/demo/form/control/map/map.xml', '/app/demo/form/control/marquee/', '/app/demo/form/control/marquee/marquee.js', '/app/demo/form/control/marquee/marquee.xml', '/app/demo/form/control/menu/', '/app/demo/form/control/menu/menu.js', '/app/demo/form/control/menu/menu.xml', '/app/demo/form/control/monaco/', '/app/demo/form/control/monaco/monaco.js', '/app/demo/form/control/monaco/monaco.xml', '/app/demo/form/control/nav/', '/app/demo/form/control/nav/nav.js', '/app/demo/form/control/nav/nav.xml', '/app/demo/form/control/page/', '/app/demo/form/control/page/page.js', '/app/demo/form/control/page/page.xml', '/app/demo/form/control/panel/', '/app/demo/form/control/panel/panel.js', '/app/demo/form/control/panel/panel.xml', '/app/demo/form/control/panel/test1.js', '/app/demo/form/control/panel/test1.xml', '/app/demo/form/control/panel/test2.xml', '/app/demo/form/control/property/', '/app/demo/form/control/property/property.js', '/app/demo/form/control/property/property.xml', '/app/demo/form/control/radio/', '/app/demo/form/control/radio/radio.js', '/app/demo/form/control/radio/radio.xml', '/app/demo/form/control/scroll/', '/app/demo/form/control/scroll/scroll.js', '/app/demo/form/control/scroll/scroll.xml', '/app/demo/form/control/select/', '/app/demo/form/control/select/select.js', '/app/demo/form/control/select/select.xml', '/app/demo/form/control/step/', '/app/demo/form/control/step/step.js', '/app/demo/form/control/step/step.xml', '/app/demo/form/control/svg/', '/app/demo/form/control/svg/svg.js', '/app/demo/form/control/svg/svg.xml', '/app/demo/form/control/tab/', '/app/demo/form/control/tab/tab.js', '/app/demo/form/control/tab/tab.xml', '/app/demo/form/control/table/', '/app/demo/form/control/table/table.js', '/app/demo/form/control/table/table.xml', '/app/demo/form/control/tag/', '/app/demo/form/control/tag/tag.xml', '/app/demo/form/control/text/', '/app/demo/form/control/text/text.js', '/app/demo/form/control/text/text.xml', '/app/demo/form/control/tuieditor/', '/app/demo/form/control/tuieditor/tuieditor.js', '/app/demo/form/control/tuieditor/tuieditor.xml', '/app/demo/form/control/vflow/', '/app/demo/form/control/vflow/vflow.css', '/app/demo/form/control/vflow/vflow.js', '/app/demo/form/control/vflow/vflow.xml', '/app/demo/form/control/video/', '/app/demo/form/control/video/video.js', '/app/demo/form/control/video/video.xml', '/app/demo/form/control/xterm/', '/app/demo/form/control/xterm/xterm.js', '/app/demo/form/control/xterm/xterm.xml', '/app/demo/form/event/', '/app/demo/form/event/form/', '/app/demo/form/event/form/form.css', '/app/demo/form/event/form/form.js', '/app/demo/form/event/form/form.xml', '/app/demo/form/event/other/', '/app/demo/form/event/other/other.js', '/app/demo/form/event/other/other.xml', '/app/demo/form/event/screen/', '/app/demo/form/event/screen/screen.js', '/app/demo/form/event/screen/screen.xml', '/app/demo/form/event/task/', '/app/demo/form/event/task/task.js', '/app/demo/form/event/task/task.xml', '/app/demo/form/main.css', '/app/demo/form/main.js', '/app/demo/form/main.xml', '/app/demo/form/method/', '/app/demo/form/method/aform/', '/app/demo/form/method/aform/aform.js', '/app/demo/form/method/aform/aform.xml', '/app/demo/form/method/aform/sd.js', '/app/demo/form/method/aform/sd.xml', '/app/demo/form/method/core/', '/app/demo/form/method/core/core.js', '/app/demo/form/method/core/core.xml', '/app/demo/form/method/dom/', '/app/demo/form/method/dom/dom.css', '/app/demo/form/method/dom/dom.js', '/app/demo/form/method/dom/dom.xml', '/app/demo/form/method/form/', '/app/demo/form/method/form/form.js', '/app/demo/form/method/form/form.xml', '/app/demo/form/method/form/test.xml', '/app/demo/form/method/fs/', '/app/demo/form/method/fs/fs.js', '/app/demo/form/method/fs/fs.xml', '/app/demo/form/method/fs/text.js', '/app/demo/form/method/fs/text.xml', '/app/demo/form/method/native/', '/app/demo/form/method/native/native.js', '/app/demo/form/method/native/native.xml', '/app/demo/form/method/storage/', '/app/demo/form/method/storage/storage.js', '/app/demo/form/method/storage/storage.xml', '/app/demo/form/method/system/', '/app/demo/form/method/system/system.js', '/app/demo/form/method/system/system.xml', '/app/demo/form/method/task/', '/app/demo/form/method/task/locale1.json', '/app/demo/form/method/task/locale2.json', '/app/demo/form/method/task/task.js', '/app/demo/form/method/task/task.xml', '/app/demo/form/method/theme/', '/app/demo/form/method/theme/theme.js', '/app/demo/form/method/theme/theme.xml', '/app/demo/form/method/tool/', '/app/demo/form/method/tool/tool.js', '/app/demo/form/method/tool/tool.xml', '/app/demo/form/method/zip/', '/app/demo/form/method/zip/zip.js', '/app/demo/form/method/zip/zip.xml', '/app/demo/form/solution/', '/app/demo/form/solution/backpanel/', '/app/demo/form/solution/backpanel/backpanel.js', '/app/demo/form/solution/backpanel/backpanel.xml', '/app/demo/global.css', '/app/demo/res/', '/app/demo/res/icon.svg', '/app/demo/res/img.jpg', '/app/demo/res/marker.svg', '/app/demo/res/r-1.svg', '/app/demo/res/r-2.svg', '/app/demo/res/sql.svg', '/app/demo/res/txt.svg', '/app/demo/res/video.mp4', '/app/demo/res/zip.svg', '/app/task/', '/app/task/app.js', '/app/task/config.json', '/app/task/form/', '/app/task/form/bar/', '/app/task/form/bar/bar.js', '/app/task/form/bar/bar.xml', '/app/task/form/desktop/', '/app/task/form/desktop/desktop.xml', '/app/task/locale/', '/app/task/locale/en.json', '/app/task/locale/ja.json', '/app/task/locale/sc.json', '/app/task/locale/tc.json', '/clickgo.js', '/clickgo.ts', '/control/', '/control/arteditor.cgc', '/control/box.cgc', '/control/common.cgc', '/control/desc.cgc', '/control/echarts.cgc', '/control/form.cgc', '/control/html.cgc', '/control/iconview.cgc', '/control/map.cgc', '/control/monaco.cgc', '/control/nav.cgc', '/control/page.cgc', '/control/property.cgc', '/control/table.cgc', '/control/task.cgc', '/control/tuieditor.cgc', '/control/xterm.cgc', '/ext/', '/ext/toastui-editor-all.min.js', '/global.css', '/icon.png', '/index.js', '/index.ts', '/lib/', '/lib/control.js', '/lib/control.ts', '/lib/core.js', '/lib/core.ts', '/lib/dom.js', '/lib/dom.ts', '/lib/form.js', '/lib/form.ts', '/lib/fs.js', '/lib/fs.ts', '/lib/native.js', '/lib/native.ts', '/lib/storage.js', '/lib/storage.ts', '/lib/task.js', '/lib/task.ts', '/lib/theme.js', '/lib/theme.ts', '/lib/tool.js', '/lib/tool.ts', '/lib/zip.js', '/lib/zip.ts', '/theme/', '/theme/byterun.cgt', '/theme/familiar.cgt', '/theme/light.cgt'];
|
|
15
|
+
const clickgoFiles = ['/app/', '/app/demo/', '/app/demo/app.js', '/app/demo/config.json', '/app/demo/form/', '/app/demo/form/control/', '/app/demo/form/control/alayout/', '/app/demo/form/control/alayout/alayout.css', '/app/demo/form/control/alayout/alayout.js', '/app/demo/form/control/alayout/alayout.xml', '/app/demo/form/control/arteditor/', '/app/demo/form/control/arteditor/arteditor.js', '/app/demo/form/control/arteditor/arteditor.xml', '/app/demo/form/control/arteditor/img.js', '/app/demo/form/control/arteditor/img.xml', '/app/demo/form/control/block/', '/app/demo/form/control/block/block.css', '/app/demo/form/control/block/block.xml', '/app/demo/form/control/box/', '/app/demo/form/control/box/box.js', '/app/demo/form/control/box/box.xml', '/app/demo/form/control/button/', '/app/demo/form/control/button/button.css', '/app/demo/form/control/button/button.js', '/app/demo/form/control/button/button.xml', '/app/demo/form/control/check/', '/app/demo/form/control/check/check.js', '/app/demo/form/control/check/check.xml', '/app/demo/form/control/date/', '/app/demo/form/control/date/date.js', '/app/demo/form/control/date/date.xml', '/app/demo/form/control/desc/', '/app/demo/form/control/desc/desc.js', '/app/demo/form/control/desc/desc.xml', '/app/demo/form/control/dialog/', '/app/demo/form/control/dialog/dialog.js', '/app/demo/form/control/dialog/dialog.xml', '/app/demo/form/control/echarts/', '/app/demo/form/control/echarts/echarts.js', '/app/demo/form/control/echarts/echarts.xml', '/app/demo/form/control/file/', '/app/demo/form/control/file/file.js', '/app/demo/form/control/file/file.xml', '/app/demo/form/control/flow/', '/app/demo/form/control/flow/flow.css', '/app/demo/form/control/flow/flow.js', '/app/demo/form/control/flow/flow.xml', '/app/demo/form/control/form/', '/app/demo/form/control/form/form.css', '/app/demo/form/control/form/form.js', '/app/demo/form/control/form/form.xml', '/app/demo/form/control/html/', '/app/demo/form/control/html/html.js', '/app/demo/form/control/html/html.xml', '/app/demo/form/control/iconview/', '/app/demo/form/control/iconview/iconview.js', '/app/demo/form/control/iconview/iconview.xml', '/app/demo/form/control/img/', '/app/demo/form/control/img/img.xml', '/app/demo/form/control/label/', '/app/demo/form/control/label/label.js', '/app/demo/form/control/label/label.xml', '/app/demo/form/control/layout/', '/app/demo/form/control/layout/layout.js', '/app/demo/form/control/layout/layout.xml', '/app/demo/form/control/link/', '/app/demo/form/control/link/link.js', '/app/demo/form/control/link/link.xml', '/app/demo/form/control/list/', '/app/demo/form/control/list/list.css', '/app/demo/form/control/list/list.js', '/app/demo/form/control/list/list.xml', '/app/demo/form/control/loading/', '/app/demo/form/control/loading/loading.xml', '/app/demo/form/control/map/', '/app/demo/form/control/map/map.js', '/app/demo/form/control/map/map.xml', '/app/demo/form/control/marquee/', '/app/demo/form/control/marquee/marquee.js', '/app/demo/form/control/marquee/marquee.xml', '/app/demo/form/control/menu/', '/app/demo/form/control/menu/menu.js', '/app/demo/form/control/menu/menu.xml', '/app/demo/form/control/monaco/', '/app/demo/form/control/monaco/monaco.js', '/app/demo/form/control/monaco/monaco.xml', '/app/demo/form/control/nav/', '/app/demo/form/control/nav/nav.js', '/app/demo/form/control/nav/nav.xml', '/app/demo/form/control/page/', '/app/demo/form/control/page/page.js', '/app/demo/form/control/page/page.xml', '/app/demo/form/control/panel/', '/app/demo/form/control/panel/panel.js', '/app/demo/form/control/panel/panel.xml', '/app/demo/form/control/panel/test1.js', '/app/demo/form/control/panel/test1.xml', '/app/demo/form/control/panel/test2.xml', '/app/demo/form/control/property/', '/app/demo/form/control/property/property.js', '/app/demo/form/control/property/property.xml', '/app/demo/form/control/radio/', '/app/demo/form/control/radio/radio.js', '/app/demo/form/control/radio/radio.xml', '/app/demo/form/control/scroll/', '/app/demo/form/control/scroll/scroll.js', '/app/demo/form/control/scroll/scroll.xml', '/app/demo/form/control/select/', '/app/demo/form/control/select/select.js', '/app/demo/form/control/select/select.xml', '/app/demo/form/control/step/', '/app/demo/form/control/step/step.js', '/app/demo/form/control/step/step.xml', '/app/demo/form/control/svg/', '/app/demo/form/control/svg/svg.js', '/app/demo/form/control/svg/svg.xml', '/app/demo/form/control/tab/', '/app/demo/form/control/tab/tab.js', '/app/demo/form/control/tab/tab.xml', '/app/demo/form/control/table/', '/app/demo/form/control/table/table.js', '/app/demo/form/control/table/table.xml', '/app/demo/form/control/tag/', '/app/demo/form/control/tag/tag.xml', '/app/demo/form/control/text/', '/app/demo/form/control/text/text.js', '/app/demo/form/control/text/text.xml', '/app/demo/form/control/tip/', '/app/demo/form/control/tip/tip.xml', '/app/demo/form/control/tuieditor/', '/app/demo/form/control/tuieditor/tuieditor.js', '/app/demo/form/control/tuieditor/tuieditor.xml', '/app/demo/form/control/vflow/', '/app/demo/form/control/vflow/vflow.css', '/app/demo/form/control/vflow/vflow.js', '/app/demo/form/control/vflow/vflow.xml', '/app/demo/form/control/video/', '/app/demo/form/control/video/video.js', '/app/demo/form/control/video/video.xml', '/app/demo/form/control/xterm/', '/app/demo/form/control/xterm/xterm.js', '/app/demo/form/control/xterm/xterm.xml', '/app/demo/form/event/', '/app/demo/form/event/form/', '/app/demo/form/event/form/form.css', '/app/demo/form/event/form/form.js', '/app/demo/form/event/form/form.xml', '/app/demo/form/event/other/', '/app/demo/form/event/other/other.js', '/app/demo/form/event/other/other.xml', '/app/demo/form/event/screen/', '/app/demo/form/event/screen/screen.js', '/app/demo/form/event/screen/screen.xml', '/app/demo/form/event/task/', '/app/demo/form/event/task/task.js', '/app/demo/form/event/task/task.xml', '/app/demo/form/main.css', '/app/demo/form/main.js', '/app/demo/form/main.xml', '/app/demo/form/method/', '/app/demo/form/method/aform/', '/app/demo/form/method/aform/aform.js', '/app/demo/form/method/aform/aform.xml', '/app/demo/form/method/aform/sd.js', '/app/demo/form/method/aform/sd.xml', '/app/demo/form/method/core/', '/app/demo/form/method/core/core.js', '/app/demo/form/method/core/core.xml', '/app/demo/form/method/dom/', '/app/demo/form/method/dom/dom.css', '/app/demo/form/method/dom/dom.js', '/app/demo/form/method/dom/dom.xml', '/app/demo/form/method/form/', '/app/demo/form/method/form/form.js', '/app/demo/form/method/form/form.xml', '/app/demo/form/method/form/test.xml', '/app/demo/form/method/fs/', '/app/demo/form/method/fs/fs.js', '/app/demo/form/method/fs/fs.xml', '/app/demo/form/method/fs/text.js', '/app/demo/form/method/fs/text.xml', '/app/demo/form/method/native/', '/app/demo/form/method/native/native.js', '/app/demo/form/method/native/native.xml', '/app/demo/form/method/storage/', '/app/demo/form/method/storage/storage.js', '/app/demo/form/method/storage/storage.xml', '/app/demo/form/method/system/', '/app/demo/form/method/system/system.js', '/app/demo/form/method/system/system.xml', '/app/demo/form/method/task/', '/app/demo/form/method/task/locale1.json', '/app/demo/form/method/task/locale2.json', '/app/demo/form/method/task/task.js', '/app/demo/form/method/task/task.xml', '/app/demo/form/method/theme/', '/app/demo/form/method/theme/theme.js', '/app/demo/form/method/theme/theme.xml', '/app/demo/form/method/tool/', '/app/demo/form/method/tool/tool.js', '/app/demo/form/method/tool/tool.xml', '/app/demo/form/method/zip/', '/app/demo/form/method/zip/zip.js', '/app/demo/form/method/zip/zip.xml', '/app/demo/form/solution/', '/app/demo/form/solution/backpanel/', '/app/demo/form/solution/backpanel/backpanel.js', '/app/demo/form/solution/backpanel/backpanel.xml', '/app/demo/global.css', '/app/demo/res/', '/app/demo/res/icon.svg', '/app/demo/res/img.jpg', '/app/demo/res/marker.svg', '/app/demo/res/r-1.svg', '/app/demo/res/r-2.svg', '/app/demo/res/sql.svg', '/app/demo/res/txt.svg', '/app/demo/res/video.mp4', '/app/demo/res/zip.svg', '/app/task/', '/app/task/app.js', '/app/task/config.json', '/app/task/form/', '/app/task/form/bar/', '/app/task/form/bar/bar.js', '/app/task/form/bar/bar.xml', '/app/task/form/desktop/', '/app/task/form/desktop/desktop.xml', '/app/task/locale/', '/app/task/locale/en.json', '/app/task/locale/ja.json', '/app/task/locale/sc.json', '/app/task/locale/tc.json', '/clickgo.js', '/clickgo.ts', '/control/', '/control/arteditor.cgc', '/control/box.cgc', '/control/common.cgc', '/control/desc.cgc', '/control/echarts.cgc', '/control/form.cgc', '/control/html.cgc', '/control/iconview.cgc', '/control/map.cgc', '/control/monaco.cgc', '/control/nav.cgc', '/control/page.cgc', '/control/property.cgc', '/control/table.cgc', '/control/task.cgc', '/control/tuieditor.cgc', '/control/xterm.cgc', '/ext/', '/ext/toastui-editor-all.min.js', '/global.css', '/icon.png', '/index.js', '/index.ts', '/lib/', '/lib/control.js', '/lib/control.ts', '/lib/core.js', '/lib/core.ts', '/lib/dom.js', '/lib/dom.ts', '/lib/form.js', '/lib/form.ts', '/lib/fs.js', '/lib/fs.ts', '/lib/native.js', '/lib/native.ts', '/lib/storage.js', '/lib/storage.ts', '/lib/task.js', '/lib/task.ts', '/lib/theme.js', '/lib/theme.ts', '/lib/tool.js', '/lib/tool.ts', '/lib/zip.js', '/lib/zip.ts', '/theme/', '/theme/byterun.cgt', '/theme/familiar.cgt', '/theme/light.cgt'];
|
|
16
16
|
|
|
17
17
|
/** --- fs lib 用到的语言包 --- */
|
|
18
18
|
const localeData: Record<string, {
|
package/dist/lib/task.js
CHANGED
|
@@ -1057,6 +1057,12 @@ function run(url, opt = {}, ntid) {
|
|
|
1057
1057
|
},
|
|
1058
1058
|
formatSecond: function (second) {
|
|
1059
1059
|
return tool.formatSecond(second);
|
|
1060
|
+
},
|
|
1061
|
+
queryStringify: function (query) {
|
|
1062
|
+
return tool.queryStringify(query);
|
|
1063
|
+
},
|
|
1064
|
+
queryParse: function (query) {
|
|
1065
|
+
return tool.queryParse(query);
|
|
1060
1066
|
}
|
|
1061
1067
|
},
|
|
1062
1068
|
'zip': {
|
package/dist/lib/task.ts
CHANGED
|
@@ -1187,6 +1187,12 @@ export async function run(url: string | types.IApp, opt: types.ITaskRunOptions =
|
|
|
1187
1187
|
},
|
|
1188
1188
|
formatSecond: function(second: number): string {
|
|
1189
1189
|
return tool.formatSecond(second);
|
|
1190
|
+
},
|
|
1191
|
+
queryStringify: function(query: Record<string, any>): string {
|
|
1192
|
+
return tool.queryStringify(query);
|
|
1193
|
+
},
|
|
1194
|
+
queryParse: function(query: string): Record<string, string | string[]> {
|
|
1195
|
+
return tool.queryParse(query);
|
|
1190
1196
|
}
|
|
1191
1197
|
},
|
|
1192
1198
|
'zip': {
|
package/dist/lib/tool.js
CHANGED
|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.formatSecond = exports.compar = exports.execCommand = exports.blob2DataUrl = exports.blob2Text = exports.urlAtom = exports.urlResolve = exports.parseUrl = exports.post = exports.fetch = exports.request = exports.rgb2hsl = exports.escapeHTML = exports.getArray = exports.getNumber = exports.getBoolean = exports.random = exports.RANDOM_LUNS = exports.RANDOM_V = exports.RANDOM_LUN = exports.RANDOM_LU = exports.RANDOM_LN = exports.RANDOM_UN = exports.RANDOM_L = exports.RANDOM_U = exports.RANDOM_N = exports.rand = exports.getMimeByPath = exports.stylePrepend = exports.teleportGlue = exports.eventsAttrWrap = exports.layoutClassPrepend = exports.layoutInsertAttr = exports.layoutAddTagClassAndReTagName = exports.styleUrl2DataUrl = exports.match = exports.purify = exports.sleepFrame = exports.nextFrame = exports.sleep = exports.clone = exports.blob2ArrayBuffer = exports.getClassPrototype = void 0;
|
|
12
|
+
exports.queryParse = exports.queryStringify = exports.formatSecond = exports.compar = exports.execCommand = exports.blob2DataUrl = exports.blob2Text = exports.urlAtom = exports.urlResolve = exports.parseUrl = exports.post = exports.fetch = exports.request = exports.rgb2hsl = exports.escapeHTML = exports.getArray = exports.getNumber = exports.getBoolean = exports.random = exports.RANDOM_LUNS = exports.RANDOM_V = exports.RANDOM_LUN = exports.RANDOM_LU = exports.RANDOM_LN = exports.RANDOM_UN = exports.RANDOM_L = exports.RANDOM_U = exports.RANDOM_N = exports.rand = exports.getMimeByPath = exports.stylePrepend = exports.teleportGlue = exports.eventsAttrWrap = exports.layoutClassPrepend = exports.layoutInsertAttr = exports.layoutAddTagClassAndReTagName = exports.styleUrl2DataUrl = exports.match = exports.purify = exports.sleepFrame = exports.nextFrame = exports.sleep = exports.clone = exports.blob2ArrayBuffer = exports.getClassPrototype = void 0;
|
|
13
13
|
function getClassPrototype(obj, over = [], level = 0) {
|
|
14
14
|
if (level === 0) {
|
|
15
15
|
return getClassPrototype(Object.getPrototypeOf(obj), over, level + 1);
|
|
@@ -692,3 +692,36 @@ function formatSecond(second) {
|
|
|
692
692
|
return (h ? h.toString().padStart(2, '0') + ':' : '') + m.toString().padStart(2, '0') + ':' + s.toString().padStart(2, '0');
|
|
693
693
|
}
|
|
694
694
|
exports.formatSecond = formatSecond;
|
|
695
|
+
function queryStringify(query) {
|
|
696
|
+
return Object.entries(query).map(([k, v]) => {
|
|
697
|
+
if (Array.isArray(v)) {
|
|
698
|
+
return v.map((i) => `${encodeURIComponent(k)}=${encodeURIComponent(`${i}`)}`).join('&');
|
|
699
|
+
}
|
|
700
|
+
return `${encodeURIComponent(k)}=${encodeURIComponent(`${v}`)}`;
|
|
701
|
+
}).join('&');
|
|
702
|
+
}
|
|
703
|
+
exports.queryStringify = queryStringify;
|
|
704
|
+
function queryParse(query) {
|
|
705
|
+
const ret = {};
|
|
706
|
+
const arrayKeys = {};
|
|
707
|
+
for (const i of query.split('&')) {
|
|
708
|
+
if (!i.length) {
|
|
709
|
+
continue;
|
|
710
|
+
}
|
|
711
|
+
const pos = i.indexOf('=');
|
|
712
|
+
const key = decodeURIComponent(pos === -1 ? i : i.slice(0, pos));
|
|
713
|
+
const value = pos === -1 ? '' : decodeURIComponent(i.slice(pos + 1));
|
|
714
|
+
if (arrayKeys[key]) {
|
|
715
|
+
ret[key].push(value);
|
|
716
|
+
}
|
|
717
|
+
else if (undefined === ret[key]) {
|
|
718
|
+
ret[key] = value;
|
|
719
|
+
}
|
|
720
|
+
else {
|
|
721
|
+
ret[key] = [ret[key], value];
|
|
722
|
+
arrayKeys[key] = true;
|
|
723
|
+
}
|
|
724
|
+
}
|
|
725
|
+
return ret;
|
|
726
|
+
}
|
|
727
|
+
exports.queryParse = queryParse;
|
package/dist/lib/tool.ts
CHANGED
|
@@ -867,3 +867,47 @@ export function formatSecond(second: number): string {
|
|
|
867
867
|
const s = Math.floor(second - m * 60);
|
|
868
868
|
return (h ? h.toString().padStart(2, '0') + ':' : '') + m.toString().padStart(2, '0') + ':' + s.toString().padStart(2, '0');
|
|
869
869
|
}
|
|
870
|
+
|
|
871
|
+
/**
|
|
872
|
+
* --- 将对象转换为 query string ---
|
|
873
|
+
* @param query 要转换的对象
|
|
874
|
+
*/
|
|
875
|
+
export function queryStringify(query: Record<string, any>): string {
|
|
876
|
+
return Object.entries(query).map(([k, v]) => {
|
|
877
|
+
if (Array.isArray(v)) {
|
|
878
|
+
return v.map((i) => `${encodeURIComponent(k)}=${encodeURIComponent(`${i}`)}`).join('&');
|
|
879
|
+
}
|
|
880
|
+
return `${encodeURIComponent(k)}=${encodeURIComponent(`${v}`)}`;
|
|
881
|
+
}).join('&');
|
|
882
|
+
}
|
|
883
|
+
|
|
884
|
+
/**
|
|
885
|
+
* --- 将 query string 转换为对象 ---
|
|
886
|
+
* @param query 要转换的字符串
|
|
887
|
+
*/
|
|
888
|
+
export function queryParse(query: string): Record<string, string | string[]> {
|
|
889
|
+
const ret: Record<string, string | string[]> = {};
|
|
890
|
+
const arrayKeys: Record<string, boolean> = {};
|
|
891
|
+
for (const i of query.split('&')) {
|
|
892
|
+
if (!i.length) {
|
|
893
|
+
continue;
|
|
894
|
+
}
|
|
895
|
+
|
|
896
|
+
const pos = i.indexOf('=');
|
|
897
|
+
|
|
898
|
+
const key = decodeURIComponent(pos === -1 ? i : i.slice(0, pos));
|
|
899
|
+
const value = pos === -1 ? '' : decodeURIComponent(i.slice(pos + 1));
|
|
900
|
+
|
|
901
|
+
if (arrayKeys[key]) {
|
|
902
|
+
(ret[key] as string[]).push(value);
|
|
903
|
+
}
|
|
904
|
+
else if (undefined === ret[key]) {
|
|
905
|
+
ret[key] = value;
|
|
906
|
+
}
|
|
907
|
+
else {
|
|
908
|
+
ret[key] = [ret[key] as string, value];
|
|
909
|
+
arrayKeys[key] = true;
|
|
910
|
+
}
|
|
911
|
+
}
|
|
912
|
+
return ret;
|
|
913
|
+
}
|
package/dist/theme/light.cgt
CHANGED
|
Binary file
|