@magic-xpa/utils 4.1100.0-dev4110.106 → 4.1100.0-dev4110.108
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 +6 -6
- package/esm2020/index.mjs +27 -2
- package/esm2020/src/Base64.mjs +164 -0
- package/esm2020/src/ChoiceUtils.mjs +79 -0
- package/esm2020/src/Constants.mjs +74 -0
- package/esm2020/src/DateTimeUtils.mjs +54 -0
- package/esm2020/src/DateUtil.mjs +58 -0
- package/esm2020/src/InternalInterface.mjs +341 -0
- package/esm2020/src/JSON_Utils.mjs +7 -0
- package/esm2020/src/Logger.mjs +216 -0
- package/esm2020/src/MagicConstants.mjs +12 -0
- package/esm2020/src/Misc.mjs +98 -0
- package/esm2020/src/MsgInterface.mjs +192 -0
- package/esm2020/src/PICInterface.mjs +60 -0
- package/esm2020/src/PlatformUtils.mjs +11 -0
- package/esm2020/src/Queue.mjs +28 -0
- package/esm2020/src/Randomizer.mjs +34 -0
- package/esm2020/src/RequestInfo.mjs +26 -0
- package/esm2020/src/Rtf.mjs +616 -0
- package/esm2020/src/StorageAttribute.mjs +84 -0
- package/esm2020/src/StrUtil.mjs +453 -0
- package/esm2020/src/SyncExecutionHelper.mjs +23 -0
- package/esm2020/src/UtilDateJpn.mjs +234 -0
- package/esm2020/src/UtilImeJpn.mjs +13 -0
- package/esm2020/src/UtilStrByteMode.mjs +300 -0
- package/esm2020/src/XMLConstants.mjs +169 -0
- package/esm2020/src/Xml/XmlParser.mjs +247 -0
- package/esm2020/src/enums.mjs +1763 -0
- package/fesm2015/magic-xpa-utils.mjs +5326 -0
- package/fesm2015/magic-xpa-utils.mjs.map +1 -1
- package/fesm2020/magic-xpa-utils.mjs +5326 -0
- package/fesm2020/magic-xpa-utils.mjs.map +1 -1
- package/index.d.ts +26 -1
- package/package.json +3 -3
- package/src/Base64.d.ts +17 -0
- package/src/ChoiceUtils.d.ts +5 -0
- package/src/Constants.d.ts +71 -0
- package/src/DateTimeUtils.d.ts +5 -0
- package/src/DateUtil.d.ts +6 -0
- package/src/InternalInterface.d.ts +337 -0
- package/src/JSON_Utils.d.ts +3 -0
- package/src/Logger.d.ts +49 -0
- package/src/MagicConstants.d.ts +9 -0
- package/src/Misc.d.ts +13 -0
- package/src/MsgInterface.d.ts +175 -0
- package/src/PICInterface.d.ts +50 -0
- package/src/PlatformUtils.d.ts +5 -0
- package/src/Queue.d.ts +9 -0
- package/src/Randomizer.d.ts +14 -0
- package/src/RequestInfo.d.ts +14 -0
- package/src/Rtf.d.ts +152 -0
- package/src/StorageAttribute.d.ts +14 -0
- package/src/StrUtil.d.ts +45 -0
- package/src/SyncExecutionHelper.d.ts +7 -0
- package/src/UtilDateJpn.d.ts +19 -0
- package/src/UtilImeJpn.d.ts +9 -0
- package/src/UtilStrByteMode.d.ts +27 -0
- package/src/XMLConstants.d.ts +167 -0
- package/src/Xml/XmlParser.d.ts +34 -0
- package/src/enums.d.ts +1564 -0
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# Magic-xpa/utils
|
|
2
|
-
|
|
3
|
-
This package is part of Magic xpa Web Application Framework.
|
|
4
|
-
It is used to easily create modern business apps powered by Angular to provide a rich user experience and meet the increasingly complex enterprise business expectations for digital transformation.
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
# Magic-xpa/utils
|
|
2
|
+
|
|
3
|
+
This package is part of Magic xpa Web Application Framework.
|
|
4
|
+
It is used to easily create modern business apps powered by Angular to provide a rich user experience and meet the increasingly complex enterprise business expectations for digital transformation.
|
|
5
|
+
|
|
6
|
+
|
package/esm2020/index.mjs
CHANGED
|
@@ -1,2 +1,27 @@
|
|
|
1
|
-
export * from "./
|
|
2
|
-
|
|
1
|
+
export * from "./src/Base64";
|
|
2
|
+
export * from "./src/ChoiceUtils";
|
|
3
|
+
export * from "./src/Constants";
|
|
4
|
+
export * from "./src/DateTimeUtils";
|
|
5
|
+
export * from "./src/DateUtil";
|
|
6
|
+
export * from "./src/enums";
|
|
7
|
+
export * from "./src/InternalInterface";
|
|
8
|
+
export * from "./src/JSON_Utils";
|
|
9
|
+
export * from "./src/Logger";
|
|
10
|
+
export * from "./src/MagicConstants";
|
|
11
|
+
export * from "./src/Misc";
|
|
12
|
+
export * from "./src/MsgInterface";
|
|
13
|
+
export * from "./src/PICInterface";
|
|
14
|
+
export * from "./src/PlatformUtils";
|
|
15
|
+
export * from "./src/Queue";
|
|
16
|
+
export * from "./src/Randomizer";
|
|
17
|
+
export * from "./src/RequestInfo";
|
|
18
|
+
export * from "./src/Rtf";
|
|
19
|
+
export * from "./src/StorageAttribute";
|
|
20
|
+
export * from "./src/StrUtil";
|
|
21
|
+
export * from "./src/SyncExecutionHelper";
|
|
22
|
+
export * from "./src/UtilDateJpn";
|
|
23
|
+
export * from "./src/UtilImeJpn";
|
|
24
|
+
export * from "./src/UtilStrByteMode";
|
|
25
|
+
export * from "./src/XMLConstants";
|
|
26
|
+
export * from "./src/Xml/XmlParser";
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vc3JjL0Jhc2U2NFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL0Nob2ljZVV0aWxzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvQ29uc3RhbnRzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvRGF0ZVRpbWVVdGlsc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL0RhdGVVdGlsXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvZW51bXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9JbnRlcm5hbEludGVyZmFjZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL0pTT05fVXRpbHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9Mb2dnZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9NYWdpY0NvbnN0YW50c1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL01pc2NcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9Nc2dJbnRlcmZhY2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9QSUNJbnRlcmZhY2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9QbGF0Zm9ybVV0aWxzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvUXVldWVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9SYW5kb21pemVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvUmVxdWVzdEluZm9cIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9SdGZcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9TdG9yYWdlQXR0cmlidXRlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvU3RyVXRpbFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL1N5bmNFeGVjdXRpb25IZWxwZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9VdGlsRGF0ZUpwblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL1V0aWxJbWVKcG5cIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9VdGlsU3RyQnl0ZU1vZGVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9YTUxDb25zdGFudHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9YbWwvWG1sUGFyc2VyXCI7XG4iXX0=
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { ApplicationException, ISO_8859_1_Encoding } from "@magic-xpa/mscorelib";
|
|
2
|
+
import { StrUtil } from "./StrUtil";
|
|
3
|
+
import { Misc } from "./Misc";
|
|
4
|
+
export class Base64 {
|
|
5
|
+
static encode(str, isUseEnvCharset, encoding) {
|
|
6
|
+
if (arguments.length === 1)
|
|
7
|
+
return Base64.encode_1(str, false, null);
|
|
8
|
+
else
|
|
9
|
+
return Base64.encode_1(str, isUseEnvCharset, encoding);
|
|
10
|
+
}
|
|
11
|
+
static encode_1(str, isUseEnvCharset, encoding) {
|
|
12
|
+
let result;
|
|
13
|
+
if (str === null) {
|
|
14
|
+
result = null;
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
if (str === "") {
|
|
18
|
+
result = str;
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
try {
|
|
22
|
+
if (isUseEnvCharset === false) {
|
|
23
|
+
result = btoa(str);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
let instance = ISO_8859_1_Encoding.ISO_8859_1;
|
|
27
|
+
let encoding2 = isUseEnvCharset ? encoding : instance;
|
|
28
|
+
let ba = Base64.encodeBytes(encoding2.GetBytes(str));
|
|
29
|
+
result = instance.GetString(ba, 0, ba.length);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
catch (ex) {
|
|
33
|
+
throw new ApplicationException(ex.Message);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return result;
|
|
38
|
+
}
|
|
39
|
+
static encodeBytes(data) {
|
|
40
|
+
if (data === null)
|
|
41
|
+
return null;
|
|
42
|
+
let dest = new Uint8Array(Math.floor((data.length + 2) / 3) * 4);
|
|
43
|
+
let sidx = 0;
|
|
44
|
+
let didx = 0;
|
|
45
|
+
while (sidx < data.length - 2) {
|
|
46
|
+
dest[didx++] = Base64._base64EncMap[Misc.URShift(data[sidx], 2) & 63];
|
|
47
|
+
dest[didx++] = Base64._base64EncMap[(Misc.URShift(data[sidx + 1], 4) & 15) | (data[sidx] << 4 & 63)];
|
|
48
|
+
dest[didx++] = Base64._base64EncMap[(Misc.URShift(data[sidx + 2], 6) & 3) | (data[sidx + 1] << 2 & 63)];
|
|
49
|
+
dest[didx++] = Base64._base64EncMap[(data[sidx + 2] & 63)];
|
|
50
|
+
sidx = sidx + 3;
|
|
51
|
+
}
|
|
52
|
+
if (sidx < data.length) {
|
|
53
|
+
dest[didx++] = Base64._base64EncMap[Misc.URShift(data[sidx], 2) & 63];
|
|
54
|
+
if (sidx < data.length - 1) {
|
|
55
|
+
dest[didx++] = Base64._base64EncMap[(Misc.URShift(data[sidx + 1], 4) & 15) | (data[sidx] << 4 & 63)];
|
|
56
|
+
dest[didx++] = Base64._base64EncMap[data[sidx + 1] << 2 & 63];
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
dest[didx++] = Base64._base64EncMap[data[sidx] << 4 & 63];
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
while (didx < dest.length) {
|
|
63
|
+
dest[didx] = 61;
|
|
64
|
+
didx = didx + 1;
|
|
65
|
+
}
|
|
66
|
+
return dest;
|
|
67
|
+
}
|
|
68
|
+
static decode(str, encoding) {
|
|
69
|
+
if (arguments.length === 1)
|
|
70
|
+
encoding = null;
|
|
71
|
+
return Base64.decode_1(str, encoding);
|
|
72
|
+
}
|
|
73
|
+
static decode_1(str, encoding) {
|
|
74
|
+
let result;
|
|
75
|
+
if (str === null) {
|
|
76
|
+
result = null;
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
if (str === "") {
|
|
80
|
+
result = str;
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
try {
|
|
84
|
+
if (encoding === null || encoding === undefined) {
|
|
85
|
+
result = atob(str);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
let instance = ISO_8859_1_Encoding.ISO_8859_1;
|
|
89
|
+
let array = Base64.decodeBytes(instance.GetBytes(str));
|
|
90
|
+
let encoding2 = (encoding !== null) ? encoding : instance;
|
|
91
|
+
result = encoding2.GetString(array, 0, array.length);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
catch (ex) {
|
|
95
|
+
throw new ApplicationException(ex.Message);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return result;
|
|
100
|
+
}
|
|
101
|
+
static decodeBytes(data) {
|
|
102
|
+
if (data === null)
|
|
103
|
+
return null;
|
|
104
|
+
let tail = data.length;
|
|
105
|
+
while (data[tail - 1] === '='.charCodeAt(0)) {
|
|
106
|
+
tail = tail - 1;
|
|
107
|
+
}
|
|
108
|
+
let dest = new Uint8Array(tail - Math.floor(data.length / 4));
|
|
109
|
+
for (let idx = 0; idx < data.length; idx = idx + 1) {
|
|
110
|
+
data[idx] = Base64._base64DecMap[data[idx]];
|
|
111
|
+
}
|
|
112
|
+
let sidx = 0;
|
|
113
|
+
let didx;
|
|
114
|
+
for (didx = 0; didx < dest.length - 2; didx = didx + 3) {
|
|
115
|
+
dest[didx] = (((data[sidx] << 2) & 255) | (Misc.URShift(data[sidx + 1], 4) & 3));
|
|
116
|
+
dest[didx + 1] = (((data[sidx + 1] << 4) & 255) | (Misc.URShift(data[sidx + 2], 2) & 15));
|
|
117
|
+
dest[didx + 2] = (((data[sidx + 2] << 6) & 255) | (data[sidx + 3] & 63));
|
|
118
|
+
sidx = sidx + 4;
|
|
119
|
+
}
|
|
120
|
+
if (didx < dest.length)
|
|
121
|
+
dest[didx] = (((data[sidx] << 2) & 255) | (Misc.URShift(data[sidx + 1], 4) & 3));
|
|
122
|
+
if ((didx = didx + 1) < dest.length)
|
|
123
|
+
dest[didx] = (((data[sidx + 1] << 4) & 255) | (Misc.URShift(data[sidx + 2], 2) & 15));
|
|
124
|
+
return dest;
|
|
125
|
+
}
|
|
126
|
+
static decodeToHex(str) {
|
|
127
|
+
if (str === null)
|
|
128
|
+
return null;
|
|
129
|
+
if (str === "")
|
|
130
|
+
return str;
|
|
131
|
+
return StrUtil.stringToHexaDump(Base64.decode(str), 2);
|
|
132
|
+
}
|
|
133
|
+
static decodeToByte(str) {
|
|
134
|
+
if (str === null)
|
|
135
|
+
return null;
|
|
136
|
+
if (str === "" || str === " ")
|
|
137
|
+
return new Uint8Array(0);
|
|
138
|
+
try {
|
|
139
|
+
let instance = ISO_8859_1_Encoding.ISO_8859_1;
|
|
140
|
+
return Base64.decodeBytes(instance.GetBytes(str));
|
|
141
|
+
}
|
|
142
|
+
catch (ex) {
|
|
143
|
+
throw new ApplicationException(ex.Message);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
static initializeEncMap() {
|
|
147
|
+
return new Uint8Array([
|
|
148
|
+
65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
|
|
149
|
+
84, 85, 86, 87, 88, 89, 90, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
|
|
150
|
+
110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 48, 49, 50, 51, 52, 53, 54,
|
|
151
|
+
55, 56, 57, 43, 47
|
|
152
|
+
]);
|
|
153
|
+
}
|
|
154
|
+
static initializeDecMap() {
|
|
155
|
+
let decMap = new Uint8Array(128);
|
|
156
|
+
for (let i = 0; i < Base64._base64EncMap.length; i = i + 1) {
|
|
157
|
+
decMap[Base64._base64EncMap[i]] = i;
|
|
158
|
+
}
|
|
159
|
+
return decMap;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
Base64._base64EncMap = Base64.initializeEncMap();
|
|
163
|
+
Base64._base64DecMap = Base64.initializeDecMap();
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZTY0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXRpbHMvc3JjL0Jhc2U2NC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVcsb0JBQW9CLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RixPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBQ2xDLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFFNUIsTUFBTSxPQUFPLE1BQU07SUFPakIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFXLEVBQUUsZUFBcUIsRUFBRSxRQUFtQjtRQUNuRSxJQUFJLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUN4QixPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQzs7WUFFekMsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxlQUFlLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQVVPLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBVyxFQUFFLGVBQXdCLEVBQUUsUUFBa0I7UUFDL0UsSUFBSSxNQUFjLENBQUM7UUFDbkIsSUFBSSxHQUFHLEtBQUssSUFBSSxFQUFFO1lBQ2hCLE1BQU0sR0FBRyxJQUFJLENBQUM7U0FDZjthQUNJO1lBQ0gsSUFBSSxHQUFHLEtBQUssRUFBRSxFQUFFO2dCQUNkLE1BQU0sR0FBRyxHQUFHLENBQUM7YUFDZDtpQkFDSTtnQkFDSCxJQUFJO29CQUNGLElBQUksZUFBZSxLQUFLLEtBQUssRUFBQzt3QkFDNUIsTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztxQkFDcEI7eUJBQ0k7d0JBQ0gsSUFBSSxRQUFRLEdBQWEsbUJBQW1CLENBQUMsVUFBVSxDQUFDO3dCQUN4RCxJQUFJLFNBQVMsR0FBYSxlQUFlLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO3dCQUNoRSxJQUFJLEVBQUUsR0FBZSxNQUFNLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDakUsTUFBTSxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7cUJBQy9DO2lCQUNGO2dCQUNELE9BQU8sRUFBRSxFQUFFO29CQUNULE1BQU0sSUFBSSxvQkFBb0IsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7aUJBQzVDO2FBQ0Y7U0FDRjtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFPTyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQWdCO1FBRXpDLElBQUksSUFBSSxLQUFLLElBQUk7WUFDZixPQUFPLElBQUksQ0FBQztRQUVkLElBQUksSUFBSSxHQUFlLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzdFLElBQUksSUFBSSxHQUFXLENBQUMsQ0FBQztRQUNyQixJQUFJLElBQUksR0FBVyxDQUFDLENBQUM7UUFHckIsT0FBTyxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDN0IsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUM5RSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBUyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3JILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFTLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBUyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3hILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbkUsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLENBQUM7U0FDakI7UUFFRCxJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDOUUsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFTLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ3JI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QUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDN0M7UUFHRCxJQUFJLElBQUksR0FBVyxDQUFDLENBQUM7UUFDckIsSUFBSSxJQUFZLENBQUM7UUFDakIsS0FBSyxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsRUFBRTtZQUN0RCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakYsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDMUYsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3pFLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1NBQ2pCO1FBRUQsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU07WUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FB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SUFBSSxNQUFNLEdBQWUsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFN0MsS0FBSyxJQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2xFLE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3JDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzs7QUFoT2Msb0JBQWEsR0FBZSxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztBQUN0RCxvQkFBYSxHQUFlLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFbmNvZGluZywgQXBwbGljYXRpb25FeGNlcHRpb24sIElTT184ODU5XzFfRW5jb2Rpbmd9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5pbXBvcnQge1N0clV0aWx9IGZyb20gXCIuL1N0clV0aWxcIjtcclxuaW1wb3J0IHtNaXNjfSBmcm9tIFwiLi9NaXNjXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQmFzZTY0e1xyXG4gIHByaXZhdGUgc3RhdGljIF9iYXNlNjRFbmNNYXA6IFVpbnQ4QXJyYXkgPSBCYXNlNjQuaW5pdGlhbGl6ZUVuY01hcCgpO1xyXG4gIHByaXZhdGUgc3RhdGljIF9iYXNlNjREZWNNYXA6IFVpbnQ4QXJyYXkgPSBCYXNlNjQuaW5pdGlhbGl6ZURlY01hcCgpO1xyXG5cclxuXHJcbiAgc3RhdGljIGVuY29kZShzdHI6IHN0cmluZyk6IHN0cmluZztcclxuICBzdGF0aWMgZW5jb2RlKHN0cjogc3RyaW5nLCBpc1VzZUVudkNoYXJzZXQ6IGJvb2xlYW4sIGVuY29kaW5nOiBFbmNvZGluZyk6IHN0cmluZztcclxuICBzdGF0aWMgZW5jb2RlKHN0cjogc3RyaW5nLCBpc1VzZUVudkNoYXJzZXQ/OiBhbnksIGVuY29kaW5nPzogRW5jb2RpbmcpOiBhbnkge1xyXG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpXHJcbiAgICAgIHJldHVybiBCYXNlNjQuZW5jb2RlXzEoc3RyLCBmYWxzZSwgbnVsbCk7XHJcbiAgICBlbHNlXHJcbiAgICAgIHJldHVybiBCYXNlNjQuZW5jb2RlXzEoc3RyLCBpc1VzZUVudkNoYXJzZXQsIGVuY29kaW5nKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gRW5jb2RlcyBzdHJpbmcgdXNpbmcgdGhlIGJhc2U2NC1lbmNvZGluZy5cclxuICAvLy8gSWYgaXNVc2VFbnZDaGFyc2V0IGlzIHRydWUsIHVzZSB0aGUgc3BlY2lmaWMgY2hhcnNldCB3aGVuIGNvbnZlcnRpbmdcclxuICAvLy8gc3RyaW5nIHRvIGJ5dGUgYXJyYXkuIChEQkNTIHN1cHBvcnQpXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJzdHJcIj50aGUgc3RyaW5nIDwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiaXNVc2VFbnZDaGFyc2V0XCI+IDwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiZW5jb2RpbmdcIj4gRW52aXJvbm1lbnQuRW5jb2RpbmcgPC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+IHRoZSBiYXNlNjQtZW5jb2RlZCBzdHIgPC9yZXR1cm5zPlxyXG4gIHByaXZhdGUgc3RhdGljIGVuY29kZV8xKHN0cjogc3RyaW5nLCBpc1VzZUVudkNoYXJzZXQ6IGJvb2xlYW4sIGVuY29kaW5nOiBFbmNvZGluZyk6IHN0cmluZyB7XHJcbiAgICBsZXQgcmVzdWx0OiBzdHJpbmc7XHJcbiAgICBpZiAoc3RyID09PSBudWxsKSB7XHJcbiAgICAgIHJlc3VsdCA9IG51bGw7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgaWYgKHN0ciA9PT0gXCJcIikge1xyXG4gICAgICAgIHJlc3VsdCA9IHN0cjtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgaWYgKGlzVXNlRW52Q2hhcnNldCA9PT0gZmFsc2Upe1xyXG4gICAgICAgICAgICByZXN1bHQgPSBidG9hKHN0cik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgbGV0IGluc3RhbmNlOiBFbmNvZGluZyA9IElTT184ODU5XzFfRW5jb2RpbmcuSVNPXzg4NTlfMTtcclxuICAgICAgICAgICAgbGV0IGVuY29kaW5nMjogRW5jb2RpbmcgPSBpc1VzZUVudkNoYXJzZXQgPyBlbmNvZGluZyA6IGluc3RhbmNlO1xyXG4gICAgICAgICAgICBsZXQgYmE6IFVpbnQ4QXJyYXkgPSBCYXNlNjQuZW5jb2RlQnl0ZXMoZW5jb2RpbmcyLkdldEJ5dGVzKHN0cikpO1xyXG4gICAgICAgICAgICByZXN1bHQgPSBpbnN0YW5jZS5HZXRTdHJpbmcoYmEsIDAsIGJhLmxlbmd0aCk7XHJcbiAgICAgICAgICB9ICBcclxuICAgICAgICB9XHJcbiAgICAgICAgY2F0Y2ggKGV4KSB7XHJcbiAgICAgICAgICB0aHJvdyBuZXcgQXBwbGljYXRpb25FeGNlcHRpb24oZXguTWVzc2FnZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBUaGlzIG1ldGhvZCBlbmNvZGVzIHRoZSBnaXZlbiBieXRlW10gdXNpbmcgdGhlIGJhc2U2NC1lbmNvZGluZ1xyXG4gIC8vLyBzcGVjaWZpZWQgaW4gUkZDLTIwNDUgKFNlY3Rpb24gNi44KS5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImRhdGFcIj50aGUgZGF0YSA8L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz4gdGhlIGJhc2U2NC1lbmNvZGVkIGRhdGEgPC9yZXR1cm5zPlxyXG4gIHByaXZhdGUgc3RhdGljIGVuY29kZUJ5dGVzKGRhdGE6IFVpbnQ4QXJyYXkpOiBVaW50OEFycmF5IHtcclxuXHJcbiAgICBpZiAoZGF0YSA9PT0gbnVsbClcclxuICAgICAgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgbGV0IGRlc3Q6IFVpbnQ4QXJyYXkgPSBuZXcgVWludDhBcnJheShNYXRoLmZsb29yKChkYXRhLmxlbmd0aCArIDIpIC8gMykgKiA0KTtcclxuICAgIGxldCBzaWR4OiBudW1iZXIgPSAwO1xyXG4gICAgbGV0IGRpZHg6IG51bWJlciA9IDA7XHJcblxyXG4gICAgLy8gMy1ieXRlIHRvIDQtYnl0ZSBjb252ZXJzaW9uICsgMC02MyB0byBBU0NJSSBwcmludGFibGUgY29udmVyc2lvblxyXG4gICAgd2hpbGUgKHNpZHggPCBkYXRhLmxlbmd0aCAtIDIpIHtcclxuICAgICAgZGVzdFtkaWR4KytdID0gQmFzZTY0Ll9iYXNlNjRFbmNNYXBbTWlzYy5VUlNoaWZ0KDxudW1iZXI+ZGF0YVtzaWR4XSwgMikgJiA2M107XHJcbiAgICAgIGRlc3RbZGlkeCsrXSA9IEJhc2U2NC5fYmFzZTY0RW5jTWFwWyhNaXNjLlVSU2hpZnQoPG51bWJlcj5kYXRhW3NpZHggKyAxXSwgNCkgJiAxNSkgfCAoPG51bWJlcj5kYXRhW3NpZHhdIDw8IDQgJiA2MyldO1xyXG4gICAgICBkZXN0W2RpZHgrK10gPSBCYXNlNjQuX2Jhc2U2NEVuY01hcFsoTWlzYy5VUlNoaWZ0KDxudW1iZXI+ZGF0YVtzaWR4ICsgMl0sIDYpICYgMykgfCAoPG51bWJlcj5kYXRhW3NpZHggKyAxXSA8PCAyICYgNjMpXTtcclxuICAgICAgZGVzdFtkaWR4KytdID0gQmFzZTY0Ll9iYXNlNjRFbmNNYXBbPG51bWJlcj4oZGF0YVtzaWR4ICsgMl0gJiA2MyldO1xyXG4gICAgICBzaWR4ID0gc2lkeCArIDM7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHNpZHggPCBkYXRhLmxlbmd0aCkge1xyXG4gICAgICBkZXN0W2RpZHgrK10gPSBCYXNlNjQuX2Jhc2U2NEVuY01hcFtNaXNjLlVSU2hpZnQoPG51bWJlcj5kYXRhW3NpZHhdLCAyKSAmIDYzXTtcclxuICAgICAgaWYgKHNpZHggPCBkYXRhLmxlbmd0aCAtIDEpIHtcclxuICAgICAgICBkZXN0W2RpZHgrK10gPSBCYXNlNjQuX2Jhc2U2NEVuY01hcFsoTWlzYy5VUlNoaWZ0KDxudW1iZXI+ZGF0YVtzaWR4ICsgMV0sIDQpICYgMTUpIHwgKDxudW1iZXI+ZGF0YVtzaWR4XSA8PCA0ICYgNjMpXTtcclxuICAgICAgICBkZXN0W2RpZHgrK10gPSBCYXNlNjQuX2Jhc2U2NEVuY01hcFs8bnVtYmVyPmRhdGFbc2lkeCArIDFdIDw8IDIgJiA2M107XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgZGVzdFtkaWR4KytdID0gQmFzZTY0Ll9iYXNlNjRFbmNNYXBbPG51bWJlcj5kYXRhW3NpZHhdIDw8IDQgJiA2M107XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBhZGQgcGFkZGluZ1xyXG4gICAgd2hpbGUgKGRpZHggPCBkZXN0Lmxlbmd0aCkge1xyXG4gICAgICBkZXN0W2RpZHhdID0gNjE7XHJcbiAgICAgIGRpZHggPSBkaWR4ICsgMTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZGVzdDtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBkZWNvZGUoc3RyOiBzdHJpbmcpOiBzdHJpbmc7XHJcbiAgc3RhdGljIGRlY29kZShzdHI6IHN0cmluZywgZW5jb2Rpbmc6IEVuY29kaW5nKTogc3RyaW5nO1xyXG4gIHN0YXRpYyBkZWNvZGUoc3RyOiBzdHJpbmcsIGVuY29kaW5nPzogRW5jb2RpbmcpOiBhbnkge1xyXG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpXHJcbiAgICAgIGVuY29kaW5nID0gbnVsbDtcclxuXHJcbiAgICByZXR1cm4gQmFzZTY0LmRlY29kZV8xKHN0ciwgZW5jb2RpbmcpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBUaGlzIG1ldGhvZCBkZWNvZGVzIHRoZSBnaXZlbiBzdHJpbmcgdXNpbmcgdGhlIGJhc2U2NC1lbmNvZGluZ1xyXG4gIC8vLyBzcGVjaWZpZWQgaW4gUkZDLTIwNDUgKFNlY3Rpb24gNi44KS5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInN0clwiPnRoZSBiYXNlNjQtZW5jb2RlZCBzdHJpbmcuIDwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiZW5jb2RpbmdcIj5FbnZpcm9ubWVudC5FbmNvZGluZyBvciBudWxsLjwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPiB0aGUgZGVjb2RlZCBzdHIuPC9yZXR1cm5zPlxyXG4gIHByaXZhdGUgc3RhdGljIGRlY29kZV8xKHN0cjogc3RyaW5nLCBlbmNvZGluZzogRW5jb2RpbmcpOiBzdHJpbmcge1xyXG5cclxuICAgIGxldCByZXN1bHQ6IHN0cmluZztcclxuICAgIGlmIChzdHIgPT09IG51bGwpIHtcclxuICAgICAgcmVzdWx0ID0gbnVsbDtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBpZiAoc3RyID09PSBcIlwiKSB7XHJcbiAgICAgICAgcmVzdWx0ID0gc3RyO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICBpZiAoZW5jb2RpbmcgPT09IG51bGwgfHwgZW5jb2RpbmcgPT09IHVuZGVmaW5lZCl7XHJcbiAgICAgICAgICAgIHJlc3VsdCA9IGF0b2Ioc3RyKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBsZXQgaW5zdGFuY2U6IElTT184ODU5XzFfRW5jb2RpbmcgPSBJU09fODg1OV8xX0VuY29kaW5nLklTT184ODU5XzE7XHJcbiAgICAgICAgICAgIGxldCBhcnJheTogVWludDhBcnJheSA9IEJhc2U2NC5kZWNvZGVCeXRlcyhpbnN0YW5jZS5HZXRCeXRlcyhzdHIpKTtcclxuICAgICAgICAgICAgbGV0IGVuY29kaW5nMjogRW5jb2RpbmcgPSAoZW5jb2RpbmcgIT09IG51bGwpID8gZW5jb2RpbmcgOiBpbnN0YW5jZTtcclxuICAgICAgICAgICAgcmVzdWx0ID0gZW5jb2RpbmcyLkdldFN0cmluZyhhcnJheSwgMCwgYXJyYXkubGVuZ3RoKTtcclxuICAgICAgICAgIH0gICBcclxuICAgICAgICB9XHJcbiAgICAgICAgY2F0Y2ggKGV4KSB7XHJcbiAgICAgICAgICB0aHJvdyBuZXcgQXBwbGljYXRpb25FeGNlcHRpb24oZXguTWVzc2FnZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBUaGlzIG1ldGhvZCBkZWNvZGVzIHRoZSBnaXZlbiBieXRlW10gdXNpbmcgdGhlIGJhc2U2NC1lbmNvZGluZ1xyXG4gIC8vLyBzcGVjaWZpZWQgaW4gUkZDLTIwNDUgKFNlY3Rpb24gNi44KS5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImRhdGFcIj50aGUgYmFzZTY0LWVuY29kZWQgZGF0YS48L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz4gdGhlIGRlY29kZWQgPHZhcj5kYXRhPC92YVxyXG4gIHByaXZhdGUgc3RhdGljIGRlY29kZUJ5dGVzKGRhdGE6IFVpbnQ4QXJyYXkpOiBVaW50OEFycmF5IHtcclxuICAgIGlmIChkYXRhID09PSBudWxsKVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuXHJcbiAgICBsZXQgdGFpbDogbnVtYmVyID0gZGF0YS5sZW5ndGg7XHJcbiAgICB3aGlsZSAoZGF0YVt0YWlsIC0gMV0gPT09ICc9Jy5jaGFyQ29kZUF0KDApKSB7XHJcbiAgICAgIHRhaWwgPSB0YWlsIC0gMTtcclxuICAgIH1cclxuICAgIGxldCBkZXN0OiBVaW50OEFycmF5ID0gbmV3IFVpbnQ4QXJyYXkodGFpbCAtIE1hdGguZmxvb3IoZGF0YS5sZW5ndGggLyA0KSk7XHJcblxyXG4gICAgLy8gQVNDSUkgcHJpbnRhYmxlIHRvIDAtNjMgY29udmVyc2lvblxyXG4gICAgZm9yIChsZXQgaWR4OiBudW1iZXIgPSAwOyBpZHggPCBkYXRhLmxlbmd0aDsgaWR4ID0gaWR4ICsgMSkge1xyXG4gICAgICBkYXRhW2lkeF0gPSBCYXNlNjQuX2Jhc2U2NERlY01hcFtkYXRhW2lkeF1dO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIDQtYnl0ZSB0byAzLWJ5dGUgY29udmVyc2lvblxyXG4gICAgbGV0IHNpZHg6IG51bWJlciA9IDA7XHJcbiAgICBsZXQgZGlkeDogbnVtYmVyO1xyXG4gICAgZm9yIChkaWR4ID0gMDsgZGlkeCA8IGRlc3QubGVuZ3RoIC0gMjsgZGlkeCA9IGRpZHggKyAzKSB7XHJcbiAgICAgIGRlc3RbZGlkeF0gPSAoKChkYXRhW3NpZHhdIDw8IDIpICYgMjU1KSB8IChNaXNjLlVSU2hpZnQoZGF0YVtzaWR4ICsgMV0sIDQpICYgMykpO1xyXG4gICAgICBkZXN0W2RpZHggKyAxXSA9ICgoKGRhdGFbc2lkeCArIDFdIDw8IDQpICYgMjU1KSB8IChNaXNjLlVSU2hpZnQoZGF0YVtzaWR4ICsgMl0sIDIpICYgMTUpKTtcclxuICAgICAgZGVzdFtkaWR4ICsgMl0gPSAoKChkYXRhW3NpZHggKyAyXSA8PCA2KSAmIDI1NSkgfCAoZGF0YVtzaWR4ICsgM10gJiA2MykpO1xyXG4gICAgICBzaWR4ID0gc2lkeCArIDQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGRpZHggPCBkZXN0Lmxlbmd0aClcclxuICAgICAgZGVzdFtkaWR4XSA9ICgoKGRhdGFbc2lkeF0gPDwgMikgJiAyNTUpIHwgKE1pc2MuVVJTaGlmdChkYXRhW3NpZHggKyAxXSwgNCkgJiAzKSk7XHJcbiAgICBpZiAoKGRpZHggPSBkaWR4ICsgMSkgPCBkZXN0Lmxlbmd0aClcclxuICAgICAgZGVzdFtkaWR4XSA9ICgoKGRhdGFbc2lkeCArIDFdIDw8IDQpICYgMjU1KSB8IChNaXNjLlVSU2hpZnQoZGF0YVtzaWR4ICsgMl0sIDIpICYgMTUpKTtcclxuXHJcbiAgICByZXR1cm4gZGVzdDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gZGVjb2RlZCBhbmQgcmV0dXJuIGFuIGhleCByZXByZXNlbnRhdGlvbiBvZiB0aGUgZGF0YTwvc3VtbWFyeT5cclxuICBzdGF0aWMgZGVjb2RlVG9IZXgoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKHN0ciA9PT0gbnVsbClcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICBpZiAoc3RyID09PSBcIlwiKVxyXG4gICAgICByZXR1cm4gc3RyO1xyXG5cclxuICAgIHJldHVybiBTdHJVdGlsLnN0cmluZ1RvSGV4YUR1bXAoQmFzZTY0LmRlY29kZShzdHIpLCAyKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gZGVjb2RlcyBhIHN0cmluZyB0byBieXRlIGFycmF5PC9zdW1tYXJ5PlxyXG4gIHN0YXRpYyBkZWNvZGVUb0J5dGUoc3RyOiBzdHJpbmcpOiBVaW50OEFycmF5IHtcclxuICAgIGlmIChzdHIgPT09IG51bGwpXHJcbiAgICAgIHJldHVybiBudWxsO1xyXG5cclxuICAgIC8vIFFDUiA3NDA5MTggaWYgd2UgaGF2ZSBhbmQgZW1wdHkgZXhwcmVzc2lvbiBpdCBpcyBzZW50IGZyb20gdGhlIHNlcnZlciBhcyBlbXB0eSBzdHJpbmdcclxuICAgIC8vIGFuZCBjaGFuZ2VkIGxvY2FsbHkgdG8gYSBzdHJpbmcgd2l0aCBvbmUgYmxhbmsgZWl0aGVyIHdheSB0aGV5IGFyZSBub3QgdmFsaWQgYmFzZTY0IGVuY29kZWRcclxuICAgIC8vIHN0cmluZyBhbmQgc2hvdWxkIG5vdCBiZSBkZWNvZGVkLlxyXG4gICAgaWYgKHN0ciA9PT0gXCJcIiB8fCBzdHIgPT09IFwiIFwiKVxyXG4gICAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoMCk7XHJcblxyXG4gICAgdHJ5IHtcclxuICAgICAgbGV0IGluc3RhbmNlOiBFbmNvZGluZyA9IElTT184ODU5XzFfRW5jb2RpbmcuSVNPXzg4NTlfMTtcclxuICAgICAgcmV0dXJuIEJhc2U2NC5kZWNvZGVCeXRlcyhpbnN0YW5jZS5HZXRCeXRlcyhzdHIpKTtcclxuICAgIH1cclxuICAgIGNhdGNoIChleCkge1xyXG4gICAgICB0aHJvdyBuZXcgQXBwbGljYXRpb25FeGNlcHRpb24oZXguTWVzc2FnZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXRpYyBpbml0aWFsaXplRW5jTWFwKCkge1xyXG4gICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KFtcclxuICAgICAgNjUsIDY2LCA2NywgNjgsIDY5LCA3MCwgNzEsIDcyLCA3MywgNzQsIDc1LCA3NiwgNzcsIDc4LCA3OSwgODAsIDgxLCA4MiwgODMsXHJcbiAgICAgIDg0LCA4NSwgODYsIDg3LCA4OCwgODksIDkwLCA5NywgOTgsIDk5LCAxMDAsIDEwMSwgMTAyLCAxMDMsIDEwNCwgMTA1LCAxMDYsIDEwNywgMTA4LCAxMDksXHJcbiAgICAgIDExMCwgMTExLCAxMTIsIDExMywgMTE0LCAxMTUsIDExNiwgMTE3LCAxMTgsIDExOSwgMTIwLCAxMjEsIDEyMiwgNDgsIDQ5LCA1MCwgNTEsIDUyLCA1MywgNTQsXHJcbiAgICAgIDU1LCA1NiwgNTcsIDQzLCA0N1xyXG4gICAgXSk7XHJcblxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdGF0aWMgaW5pdGlhbGl6ZURlY01hcCgpIHtcclxuICAgIGxldCBkZWNNYXA6IFVpbnQ4QXJyYXkgPSBuZXcgVWludDhBcnJheSgxMjgpO1xyXG5cclxuICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCBCYXNlNjQuX2Jhc2U2NEVuY01hcC5sZW5ndGg7IGkgPSBpICsgMSkge1xyXG4gICAgICBkZWNNYXBbQmFzZTY0Ll9iYXNlNjRFbmNNYXBbaV1dID0gaTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZGVjTWFwO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { NString, StringBuilder } from "@magic-xpa/mscorelib";
|
|
2
|
+
import { SEQ_2_STR, StrUtil } from "./StrUtil";
|
|
3
|
+
export class ChoiceUtils {
|
|
4
|
+
static GetDisplayListFromString(choiceDispStr, removeAccelerators, shouldMakePrintable, shouldTrimOptions) {
|
|
5
|
+
let fromHelp = new Array("\\\\", "\\-", "\\,");
|
|
6
|
+
let toHelp = new Array("XX", "XX", "XX");
|
|
7
|
+
choiceDispStr = NString.TrimEnd(choiceDispStr);
|
|
8
|
+
let helpStrDisp = StrUtil.searchAndReplace(choiceDispStr, fromHelp, toHelp);
|
|
9
|
+
let sTok = StrUtil.tokenize(helpStrDisp, ",");
|
|
10
|
+
let size = (helpStrDisp !== "" ? sTok.length : 0);
|
|
11
|
+
let tokenBuffer;
|
|
12
|
+
let helpTokenDisp, token;
|
|
13
|
+
let currPosDisp = 0, nextPosDisp = 0, tokenPosDisp, i = 0;
|
|
14
|
+
let choiceDisp = new Array(size);
|
|
15
|
+
for (; i < size; i++) {
|
|
16
|
+
nextPosDisp = currPosDisp;
|
|
17
|
+
nextPosDisp = helpStrDisp.indexOf(',', nextPosDisp);
|
|
18
|
+
if (nextPosDisp === currPosDisp)
|
|
19
|
+
token = helpTokenDisp = "";
|
|
20
|
+
else if (nextPosDisp === -1) {
|
|
21
|
+
token = choiceDispStr.substr(currPosDisp);
|
|
22
|
+
helpTokenDisp = helpStrDisp.substr(currPosDisp);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
token = choiceDispStr.substr(currPosDisp, (nextPosDisp) - (currPosDisp));
|
|
26
|
+
helpTokenDisp = helpStrDisp.substr(currPosDisp, (nextPosDisp) - (currPosDisp));
|
|
27
|
+
}
|
|
28
|
+
currPosDisp = nextPosDisp + 1;
|
|
29
|
+
if (token != null) {
|
|
30
|
+
token = StrUtil.ltrim(token);
|
|
31
|
+
if (removeAccelerators)
|
|
32
|
+
token = ChoiceUtils.RemoveAcclCharFromOptions(new StringBuilder(token));
|
|
33
|
+
helpTokenDisp = StrUtil.ltrim(helpTokenDisp);
|
|
34
|
+
if (removeAccelerators)
|
|
35
|
+
helpTokenDisp = ChoiceUtils.RemoveAcclCharFromOptions(new StringBuilder(helpTokenDisp));
|
|
36
|
+
}
|
|
37
|
+
if (helpTokenDisp.indexOf('\\') >= 0) {
|
|
38
|
+
tokenBuffer = new StringBuilder();
|
|
39
|
+
for (; tokenPosDisp < helpTokenDisp.length; tokenPosDisp++)
|
|
40
|
+
if (helpTokenDisp[tokenPosDisp] !== '\\')
|
|
41
|
+
tokenBuffer.Append(token[tokenPosDisp]);
|
|
42
|
+
else if (tokenPosDisp === helpTokenDisp.length - 1)
|
|
43
|
+
tokenBuffer.Append(' ');
|
|
44
|
+
token = tokenBuffer.ToString();
|
|
45
|
+
}
|
|
46
|
+
if (shouldMakePrintable) {
|
|
47
|
+
token = StrUtil.makePrintableTokens(token, SEQ_2_STR);
|
|
48
|
+
if (shouldTrimOptions) {
|
|
49
|
+
let temp = NString.TrimEnd(token);
|
|
50
|
+
if (temp.length === 0)
|
|
51
|
+
choiceDisp[i] = " ";
|
|
52
|
+
else
|
|
53
|
+
choiceDisp[i] = NString.TrimEnd(token);
|
|
54
|
+
}
|
|
55
|
+
else
|
|
56
|
+
choiceDisp[i] = token;
|
|
57
|
+
}
|
|
58
|
+
else
|
|
59
|
+
choiceDisp[i] = token;
|
|
60
|
+
}
|
|
61
|
+
return choiceDisp;
|
|
62
|
+
}
|
|
63
|
+
static RemoveAcclCharFromOptions(OptionStr) {
|
|
64
|
+
let i = 0;
|
|
65
|
+
if (OptionStr != null) {
|
|
66
|
+
for (; i < OptionStr.Length;) {
|
|
67
|
+
if (OptionStr.get_Item(i) === '&') {
|
|
68
|
+
if (i < OptionStr.Length - 1 && OptionStr.get_Item(i + 1) === ('&'))
|
|
69
|
+
i++;
|
|
70
|
+
OptionStr = OptionStr.Remove(i, 1);
|
|
71
|
+
}
|
|
72
|
+
else
|
|
73
|
+
i++;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
return (OptionStr != null ? OptionStr.ToString() : null);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hvaWNlVXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlscy9zcmMvQ2hvaWNlVXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUM1RCxPQUFPLEVBQUMsU0FBUyxFQUFFLE9BQU8sRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUU3QyxNQUFNLE9BQU8sV0FBVztJQWN0QixNQUFNLENBQUMsd0JBQXdCLENBQUMsYUFBcUIsRUFBRSxrQkFBMkIsRUFBRSxtQkFBNEIsRUFBRSxpQkFBMEI7UUFDMUksSUFBSSxRQUFRLEdBQUcsSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMvQyxJQUFJLE1BQU0sR0FBRyxJQUFJLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3pDLGFBQWEsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQy9DLElBQUksV0FBVyxHQUFXLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3BGLElBQUksSUFBSSxHQUFhLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3hELElBQUksSUFBSSxHQUFXLENBQUMsV0FBVyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUQsSUFBSSxXQUEwQixDQUFDO1FBQy9CLElBQUksYUFBcUIsRUFBRSxLQUFhLENBQUM7UUFDekMsSUFBSSxXQUFXLEdBQVcsQ0FBQyxFQUFFLFdBQVcsR0FBRyxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUMsR0FBRyxDQUFD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eUJBQXlCLENBQUMsU0FBd0I7UUFDdkQsSUFBSSxDQUFDLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLElBQUksU0FBUyxJQUFJLElBQUksRUFBRTtZQUNyQixPQUFPLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxHQUFHO2dCQUM1QixJQUFJLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFO29CQUNqQyxJQUFJLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQzt3QkFDakUsQ0FBQyxFQUFFLENBQUM7b0JBQ04sU0FBUyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2lCQUNwQzs7b0JBQ0ksQ0FBQyxFQUFFLENBQUM7YUFDVjtTQUNGO1FBQ0QsT0FBTyxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOU3RyaW5nLCBTdHJpbmdCdWlsZGVyfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuaW1wb3J0IHtTRVFfMl9TVFIsIFN0clV0aWx9IGZyb20gXCIuL1N0clV0aWxcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBDaG9pY2VVdGlscyB7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBpbml0IHRoZSBkaXNwbGF5IFZhbHVlIGZyb20gc3RyaW5nXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImNob2ljZURpc3BTdHJcIj50aGUgYWxsIHN1YnN0cmluZyBzZXBhcmF0ZWQgd2l0aCBjb21tYS5cclxuICAvLy8gICBUaGUgYmVoYXZpb3I6XHJcbiAgLy8vICAgYS4gd2hlbiBoYXZlIFwiXFxcIiBiZWZvcmUgY2hhciBhLXogbmVlZCB0byBpZ25vcmUgdGhlIFxcIHB1dCB0aGUgYS16IGNoYXJcclxuICAvLy8gICBiLiB3aGVuIFwiXFwsXCIgLT4gXCIsXCJcclxuICAvLy8gICBjLiB3aGVuIFwiXFwtXCIgLT4gXCItXCJcclxuICAvLy8gICBkLiB3aGVuIFwiXFxcXFwiIC0+IFwiXFxcIlxyXG4gIC8vLyAgIGUuIHdoZW4gXCJcXFxcXFxcXFwiIC0+IFwiXFxcXFwiXHJcbiAgLy8vICAgdGhlIGRpc3BsYXkgY2FuIGJlIGFsbCBzdHJpbmcuIGFuZCB3ZSBkb24ndCBuZWVkIHRvIGNoZWNrIHZhbGlkYXRpb24gYWNjb3JkaW5nIHRvIHRoZSBkYXRhVHlwZShhcyB3ZSBkbyBpbiBMaW5rXHJcbiAgLy8vIDwvcGFyYW0+XHJcbiAgc3RhdGljIEdldERpc3BsYXlMaXN0RnJvbVN0cmluZyhjaG9pY2VEaXNwU3RyOiBzdHJpbmcsIHJlbW92ZUFjY2VsZXJhdG9yczogYm9vbGVhbiwgc2hvdWxkTWFrZVByaW50YWJsZTogYm9vbGVhbiwgc2hvdWxkVHJpbU9wdGlvbnM6IGJvb2xlYW4pOiBzdHJpbmdbXSB7XHJcbiAgICBsZXQgZnJvbUhlbHAgPSBuZXcgQXJyYXkoXCJcXFxcXFxcXFwiLCBcIlxcXFwtXCIsIFwiXFxcXCxcIik7XHJcbiAgICBsZXQgdG9IZWxwID0gbmV3IEFycmF5KFwiWFhcIiwgXCJYWFwiLCBcIlhYXCIpO1xyXG4gICAgY2hvaWNlRGlzcFN0ciA9IE5TdHJpbmcuVHJpbUVuZChjaG9pY2VEaXNwU3RyKTtcclxuICAgIGxldCBoZWxwU3RyRGlzcDogc3RyaW5nID0gU3RyVXRpbC5zZWFyY2hBbmRSZXBsYWNlKGNob2ljZURpc3BTdHIsIGZyb21IZWxwLCB0b0hlbHApO1xyXG4gICAgbGV0IHNUb2s6IFN0cmluZ1tdID0gU3RyVXRpbC50b2tlbml6ZShoZWxwU3RyRGlzcCwgXCIsXCIpO1xyXG4gICAgbGV0IHNpemU6IG51bWJlciA9IChoZWxwU3RyRGlzcCAhPT0gXCJcIiA/IHNUb2subGVuZ3RoIDogMCk7XHJcbiAgICBsZXQgdG9rZW5CdWZmZXI6IFN0cmluZ0J1aWxkZXI7XHJcbiAgICBsZXQgaGVscFRva2VuRGlzcDogc3RyaW5nLCB0b2tlbjogc3RyaW5nO1xyXG4gICAgbGV0IGN1cnJQb3NEaXNwOiBudW1iZXIgPSAwLCBuZXh0UG9zRGlzcCA9IDAsIHRva2VuUG9zRGlzcCwgaSA9IDA7XHJcbiAgICBsZXQgY2hvaWNlRGlzcCA9IG5ldyBBcnJheShzaXplKTtcclxuICAgIGZvciAoOyBpIDwgc2l6ZTsgaSsrKSB7XHJcbiAgICAgIG5leHRQb3NEaXNwID0gY3VyclBvc0Rpc3A7XHJcbiAgICAgIG5leHRQb3NEaXNwID0gaGVscFN0ckRpc3AuaW5kZXhPZignLCcsIG5leHRQb3NEaXNwKTtcclxuICAgICAgaWYgKG5leHRQb3NEaXNwID09PSBjdXJyUG9zRGlzcClcclxuICAgICAgICB0b2tlbiA9IGhlbHBUb2tlbkRpc3AgPSBcIlwiO1xyXG4gICAgICBlbHNlIGlmIChuZXh0UG9zRGlzcCA9PT0gLTEpIHtcclxuICAgICAgICB0b2tlbiA9IGNob2ljZURpc3BTdHIuc3Vic3RyKGN1cnJQb3NEaXNwKTtcclxuICAgICAgICBoZWxwVG9rZW5EaXNwID0gaGVscFN0ckRpc3Auc3Vic3RyKGN1cnJQb3NEaXNwKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB0b2tlbiA9IGNob2ljZURpc3BTdHIuc3Vic3RyKGN1cnJQb3NEaXNwLCAobmV4dFBvc0Rpc3ApIC0gKGN1cnJQb3NEaXNwKSk7XHJcbiAgICAgICAgaGVscFRva2VuRGlzcCA9IGhlbHBTdHJEaXNwLnN1YnN0cihjdXJyUG9zRGlzcCwgKG5leHRQb3NEaXNwKSAtIChjdXJyUG9zRGlzcCkpO1xyXG4gICAgICB9XHJcbiAgICAgIGN1cnJQb3NEaXNwID0gbmV4dFBvc0Rpc3AgKyAxO1xyXG4gICAgICBpZiAodG9rZW4gIT0gbnVsbCkge1xyXG4gICAgICAgIHRva2VuID0gU3RyVXRpbC5sdHJpbSh0b2tlbik7XHJcbiAgICAgICAgaWYgKHJlbW92ZUFjY2VsZXJhdG9ycylcclxuICAgICAgICAgIHRva2VuID0gQ2hvaWNlVXRpbHMuUmVtb3ZlQWNjbENoYXJGcm9tT3B0aW9ucyhuZXcgU3RyaW5nQnVpbGRlcih0b2tlbikpO1xyXG4gICAgICAgIGhlbHBUb2tlbkRpc3AgPSBTdHJVdGlsLmx0cmltKGhlbHBUb2tlbkRpc3ApO1xyXG4gICAgICAgIGlmIChyZW1vdmVBY2NlbGVyYXRvcnMpXHJcbiAgICAgICAgICBoZWxwVG9rZW5EaXNwID0gQ2hvaWNlVXRpbHMuUmVtb3ZlQWNjbENoYXJGcm9tT3B0aW9ucyhuZXcgU3RyaW5nQnVpbGRlcihoZWxwVG9rZW5EaXNwKSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGhlbHBUb2tlbkRpc3AuaW5kZXhPZignXFxcXCcpID49IDApIHtcclxuICAgICAgICB0b2tlbkJ1ZmZlciA9IG5ldyBTdHJpbmdCdWlsZGVyKCk7XHJcbiAgICAgICAgZm9yICg7IHRva2VuUG9zRGlzcCA8IGhlbHBUb2tlbkRpc3AubGVuZ3RoOyB0b2tlblBvc0Rpc3ArKylcclxuICAgICAgICAgIGlmIChoZWxwVG9rZW5EaXNwW3Rva2VuUG9zRGlzcF0gIT09ICdcXFxcJylcclxuICAgICAgICAgICAgdG9rZW5CdWZmZXIuQXBwZW5kKHRva2VuW3Rva2VuUG9zRGlzcF0pO1xyXG4gICAgICAgICAgZWxzZSBpZiAodG9rZW5Qb3NEaXNwID09PSBoZWxwVG9rZW5EaXNwLmxlbmd0aCAtIDEpXHJcbiAgICAgICAgICAgIHRva2VuQnVmZmVyLkFwcGVuZCgnICcpO1xyXG4gICAgICAgIHRva2VuID0gdG9rZW5CdWZmZXIuVG9TdHJpbmcoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoc2hvdWxkTWFrZVByaW50YWJsZSkge1xyXG4gICAgICAgIHRva2VuID0gU3RyVXRpbC5tYWtlUHJpbnRhYmxlVG9rZW5zKHRva2VuLCBTRVFfMl9TVFIpO1xyXG4gICAgICAgIGlmIChzaG91bGRUcmltT3B0aW9ucykge1xyXG4gICAgICAgICAgbGV0IHRlbXA6IHN0cmluZyA9IE5TdHJpbmcuVHJpbUVuZCh0b2tlbik7XHJcbiAgICAgICAgICBpZiAodGVtcC5sZW5ndGggPT09IDApXHJcbiAgICAgICAgICAgIGNob2ljZURpc3BbaV0gPSBcIiBcIjtcclxuICAgICAgICAgIGVsc2UgY2hvaWNlRGlzcFtpXSA9IE5TdHJpbmcuVHJpbUVuZCh0b2tlbik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgY2hvaWNlRGlzcFtpXSA9IHRva2VuO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgY2hvaWNlRGlzcFtpXSA9IHRva2VuO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGNob2ljZURpc3A7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgUmVtb3ZlQWNjbENoYXJGcm9tT3B0aW9ucyhPcHRpb25TdHI6IFN0cmluZ0J1aWxkZXIpOiBzdHJpbmcge1xyXG4gICAgbGV0IGk6IG51bWJlciA9IDA7XHJcbiAgICBpZiAoT3B0aW9uU3RyICE9IG51bGwpIHtcclxuICAgICAgZm9yICg7IGkgPCBPcHRpb25TdHIuTGVuZ3RoOykge1xyXG4gICAgICAgIGlmIChPcHRpb25TdHIuZ2V0X0l0ZW0oaSkgPT09ICcmJykge1xyXG4gICAgICAgICAgaWYgKGkgPCBPcHRpb25TdHIuTGVuZ3RoIC0gMSAmJiBPcHRpb25TdHIuZ2V0X0l0ZW0oaSArIDEpID09PSAoJyYnKSlcclxuICAgICAgICAgICAgaSsrO1xyXG4gICAgICAgICAgT3B0aW9uU3RyID0gT3B0aW9uU3RyLlJlbW92ZShpLCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpKys7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiAoT3B0aW9uU3RyICE9IG51bGwgPyBPcHRpb25TdHIuVG9TdHJpbmcoKSA6IG51bGwpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Int32 } from "@magic-xpa/mscorelib";
|
|
2
|
+
export class Constants {
|
|
3
|
+
constructor() {
|
|
4
|
+
}
|
|
5
|
+
}
|
|
6
|
+
Constants.NULL_ARITH_NULLIFY = 'N';
|
|
7
|
+
Constants.NULL_ARITH_USE_DEF = 'U';
|
|
8
|
+
Constants.SELPRG_MODE_BEFORE = 'B';
|
|
9
|
+
Constants.SELPRG_MODE_AFTER = 'A';
|
|
10
|
+
Constants.SELPRG_MODE_PROMPT = 'P';
|
|
11
|
+
Constants.MOVE_UNIT_TABLE = 'T';
|
|
12
|
+
Constants.MOVE_UNIT_PAGE = 'P';
|
|
13
|
+
Constants.MOVE_UNIT_ROW = 'R';
|
|
14
|
+
Constants.MOVE_UNIT_TREE_NODE = 'E';
|
|
15
|
+
Constants.MOVE_DIRECTION_NONE = ' ';
|
|
16
|
+
Constants.MOVE_DIRECTION_BEGIN = 'B';
|
|
17
|
+
Constants.MOVE_DIRECTION_PREV = 'P';
|
|
18
|
+
Constants.MOVE_DIRECTION_NEXT = 'N';
|
|
19
|
+
Constants.MOVE_DIRECTION_END = 'E';
|
|
20
|
+
Constants.MOVE_DIRECTION_PARENT = 'A';
|
|
21
|
+
Constants.MOVE_DIRECTION_FIRST_SON = 'F';
|
|
22
|
+
Constants.MOVE_DIRECTION_NEXT_SIBLING = 'X';
|
|
23
|
+
Constants.MOVE_DIRECTION_PREV_SIBLING = 'V';
|
|
24
|
+
Constants.TASK_REFRESH_FORM = 'F';
|
|
25
|
+
Constants.TASK_REFRESH_TABLE = 'T';
|
|
26
|
+
Constants.TASK_REFRESH_TREE_AND_FORM = 'R';
|
|
27
|
+
Constants.TASK_REFRESH_CURR_REC = 'C';
|
|
28
|
+
Constants.TASK_REFRESH_NONE = 'N';
|
|
29
|
+
Constants.TASK_MODE_QUERY = 'E';
|
|
30
|
+
Constants.TASK_MODE_MODIFY = 'M';
|
|
31
|
+
Constants.TASK_MODE_CREATE = 'C';
|
|
32
|
+
Constants.TASK_MODE_DELETE = 'D';
|
|
33
|
+
Constants.TASK_MODE_NONE = ' ';
|
|
34
|
+
Constants.TASK_LEVEL_NONE = ' ';
|
|
35
|
+
Constants.TASK_LEVEL_TASK = 'T';
|
|
36
|
+
Constants.TASK_LEVEL_RECORD = 'R';
|
|
37
|
+
Constants.TASK_LEVEL_CONTROL = 'C';
|
|
38
|
+
Constants.MG_DATAVIEW_FIRST_RECORD = Int32.MinValue;
|
|
39
|
+
Constants.MG_DATAVIEW_LAST_RECORD = Int32.MaxValue;
|
|
40
|
+
Constants.ACT_STT_TBL_SCREEN_MODE = 0x0001;
|
|
41
|
+
Constants.ACT_STT_TBL_LEFT_TO_RIGHT = 0x0002;
|
|
42
|
+
Constants.ACT_STT_TBL_SCREEN_TOP = 0x0004;
|
|
43
|
+
Constants.ACT_STT_TBL_SCREEN_END = 0x0008;
|
|
44
|
+
Constants.ACT_STT_TBL_ROW_START = 0x0010;
|
|
45
|
+
Constants.ACT_STT_TBL_ROW_END = 0x0020;
|
|
46
|
+
Constants.ACT_STT_EDT_LEFT_TO_RIGHT = 0x0040;
|
|
47
|
+
Constants.ACT_STT_EDT_FORM_TOP = 0x0080;
|
|
48
|
+
Constants.ACT_STT_EDT_FORM_END = 0x0100;
|
|
49
|
+
Constants.ACT_STT_EDT_LINE_START = 0x0200;
|
|
50
|
+
Constants.ACT_STT_EDT_LINE_END = 0x0400;
|
|
51
|
+
Constants.ACT_STT_EDT_EDITING = 0x0800;
|
|
52
|
+
Constants.ACT_STT_TREE_PARK = 0x1000;
|
|
53
|
+
Constants.ACT_STT_TREE_EDITING = 0x2000;
|
|
54
|
+
Constants.ForwardSlashWebUsage = "web";
|
|
55
|
+
Constants.HTTP_PROTOCOL = "http://";
|
|
56
|
+
Constants.HTTPS_PROTOCOL = "https://";
|
|
57
|
+
Constants.FILE_PROTOCOL = "file://";
|
|
58
|
+
Constants.MG_GUI_THREAD = "MG_GUI_THREAD";
|
|
59
|
+
Constants.MG_WORK_THREAD = "MG_WORK_THREAD";
|
|
60
|
+
Constants.MG_TIMER_THREAD = "MG_TIMER_THREAD";
|
|
61
|
+
Constants.ConfigurationFilePropertyName = "Configuration file";
|
|
62
|
+
Constants.WinPropText = "Text";
|
|
63
|
+
Constants.WinPropLayer = "Layer";
|
|
64
|
+
Constants.WinPropX1 = "X1";
|
|
65
|
+
Constants.WinPropX2 = "X2";
|
|
66
|
+
Constants.WinPropY1 = "Y1";
|
|
67
|
+
Constants.WinPropY2 = "Y2";
|
|
68
|
+
Constants.WinPropIsTransparent = "IsTransparent";
|
|
69
|
+
Constants.WinPropName = "Name";
|
|
70
|
+
Constants.WinPropVisible = "Visible";
|
|
71
|
+
Constants.WinPropVisibleLayerList = "VisibleLayerList";
|
|
72
|
+
Constants.TabOrderPropertyTermination = "ForTabOrder";
|
|
73
|
+
Constants.SByteMaxValue = 127;
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXRpbHMvc3JjL0NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFHM0MsTUFBTSxPQUFPLFNBQVM7SUE2RnBCO0lBRUEsQ0FBQzs7QUE3RmUsNEJBQWtCLEdBQVcsR0FBRyxDQUFDO0FBQ2pDLDRCQUFrQixHQUFXLEdBQUcsQ0FBQztBQUdqQyw0QkFBa0IsR0FBVyxHQUFHLENBQUM7QUFDakMsMkJBQWlCLEdBQVcsR0FBRyxDQUFDO0FBQ2hDLDRCQUFrQixHQUFXLEdBQUcsQ0FBQztBQUdqQyx5QkFBZSxHQUFXLEdBQUcsQ0FBQztBQUM5Qix3QkFBYyxHQUFXLEdBQUcsQ0FBQztBQUM3Qix1QkFBYSxHQUFXLEdBQUcsQ0FBQztBQUM1Qiw2QkFBbUIsR0FBVyxHQUFHLENBQUM7QUFFbEMsNkJBQW1CLEdBQVcsR0FBRyxDQUFDO0FBQ2xDLDhCQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQyw2QkFBbUIsR0FBVyxHQUFHLENBQUM7QUFDbEMsNkJBQW1CLEdBQVcsR0FBRyxDQUFDO0FBQ2xDLDRCQUFrQixHQUFXLEdBQUcsQ0FBQztBQUNqQywrQkFBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsa0NBQXdCLEdBQVcsR0FBRyxDQUFDO0FBQ3ZDLHFDQUEyQixHQUFXLEdBQUcsQ0FBQztBQUMxQyxxQ0FBMkIsR0FBVyxHQUFHLENBQUM7QUFHMUMsMkJBQWlCLEdBQVcsR0FBRyxDQUFDO0FBQ2hDLDRCQUFrQixHQUFXLEdBQUcsQ0FBQztBQUNqQyxvQ0FBMEIsR0FBVyxHQUFHLENBQUM7QUFDekMsK0JBQXFCLEdBQVcsR0FBRyxDQUFDO0FBQ3BDLDJCQUFpQixHQUFXLEdBQUcsQ0FBQztBQUVoQyx5QkFBZSxHQUFXLEdBQUcsQ0FBQztBQUM5QiwwQkFBZ0IsR0FBVyxHQUFHLENBQUM7QUFDL0IsMEJBQWdCLEdBQVcsR0FBRyxDQUFDO0FBQy9CLDBCQUFnQixHQUFXLEdBQUcsQ0FBQztBQUMvQix3QkFBYyxHQUFHLEdBQUcsQ0FBQztBQUdyQix5QkFBZSxHQUFXLEdBQUcsQ0FBQztBQUM5Qix5QkFBZSxHQUFXLEdBQUcsQ0FBQztBQUM5QiwyQkFBaUIsR0FBVyxHQUFHLENBQUM7QUFDaEMsNEJBQWtCLEdBQVcsR0FBRyxDQUFDO0FBR2pDLGtDQUF3QixHQUFXLEtBQUssQ0FBQyxRQUFRLENBQUM7QUFDbEQsaUNBQXVCLEdBQVcsS0FBSyxDQUFDLFFBQVEsQ0FBQztBQUdqRCxpQ0FBdUIsR0FBVyxNQUFNLENBQUM7QUFDekMsbUNBQXlCLEdBQVcsTUFBTSxDQUFDO0FBQzNDLGdDQUFzQixHQUFXLE1BQU0sQ0FBQztBQUN4QyxnQ0FBc0IsR0FBVyxNQUFNLENBQUM7QUFDeEMsK0JBQXFCLEdBQVcsTUFBTSxDQUFDO0FBQ3ZDLDZCQUFtQixHQUFXLE1BQU0sQ0FBQztBQUNyQyxtQ0FBeUIsR0FBVyxNQUFNLENBQUM7QUFDM0MsOEJBQW9CLEdBQVcsTUFBTSxDQUFDO0FBQ3RDLDhCQUFvQixHQUFXLE1BQU0sQ0FBQztBQUN0QyxnQ0FBc0IsR0FBVyxNQUFNLENBQUM7QUFDeEMsOEJBQW9CLEdBQVcsTUFBTSxDQUFDO0FBQ3RDLDZCQUFtQixHQUFXLE1BQU0sQ0FBQztBQUNyQywyQkFBaUIsR0FBVyxNQUFNLENBQUM7QUFDbkMsOEJBQW9CLEdBQVcsTUFBTSxDQUFDO0FBRXRDLDhCQUFvQixHQUFXLEtBQUssQ0FBQztBQUNyQyx1QkFBYSxHQUFXLFNBQVMsQ0FBQztBQUNsQyx3QkFBYyxHQUFXLFVBQVUsQ0FBQztBQUNwQyx1QkFBYSxHQUFXLFNBQVMsQ0FBQztBQUdsQyx1QkFBYSxHQUFXLGVBQWUsQ0FBQztBQUN4Qyx3QkFBYyxHQUFXLGdCQUFnQixDQUFDO0FBQzFDLHlCQUFlLEdBQVcsaUJBQWlCLENBQUM7QUFLNUMsdUNBQTZCLEdBQVcsb0JBQW9CLENBQUM7QUFDN0QscUJBQVcsR0FBVyxNQUFNLENBQUM7QUFDN0Isc0JBQVksR0FBVyxPQUFPLENBQUM7QUFDL0IsbUJBQVMsR0FBVyxJQUFJLENBQUM7QUFDekIsbUJBQVMsR0FBVyxJQUFJLENBQUM7QUFDekIsbUJBQVMsR0FBVyxJQUFJLENBQUM7QUFDekIsbUJBQVMsR0FBVyxJQUFJLENBQUM7QUFDekIsOEJBQW9CLEdBQVcsZUFBZSxDQUFDO0FBQy9DLHFCQUFXLEdBQVcsTUFBTSxDQUFDO0FBQzdCLHdCQUFjLEdBQVcsU0FBUyxDQUFDO0FBQ25DLGlDQUF1QixHQUFXLGtCQUFrQixDQUFDO0FBQ3JELHFDQUEyQixHQUFXLGFBQWEsQ0FBQztBQUVwRCx1QkFBYSxHQUFHLEdBQUcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW50MzJ9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5cclxuLy9UaGlzIGNsYXNzIGNvbnRhaW5zIGFsbCB0aGUgY29uc3RhbnRzIHdoaWNoIGFyZSB1c2VkIGluIE1neHBhUklBLmV4ZSBhcyB3ZWxsIGFzIGluIE1nR3VpLmRsbC5cclxuZXhwb3J0IGNsYXNzIENvbnN0YW50cyB7XHJcbiAgLy8vIDxzdW1tYXJ5PiBOdWxsIEFyaXRobWV0aWMgdmFsdWVzPC9zdW1tYXJ5PlxyXG4gIHN0YXRpYyByZWFkb25seSBOVUxMX0FSSVRIX05VTExJRlk6IHN0cmluZyA9ICdOJztcclxuICBzdGF0aWMgcmVhZG9ubHkgTlVMTF9BUklUSF9VU0VfREVGOiBzdHJpbmcgPSAnVSc7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gc2VsZWN0IHByb2dyYW0gOiBzZWxlY3QgbW9kZSBwcm9wZXJ0eTwvc3VtbWFyeT5cclxuICBzdGF0aWMgcmVhZG9ubHkgU0VMUFJHX01PREVfQkVGT1JFOiBzdHJpbmcgPSAnQic7XHJcbiAgc3RhdGljIHJlYWRvbmx5IFNFTFBSR19NT0RFX0FGVEVSOiBzdHJpbmcgPSAnQSc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IFNFTFBSR19NT0RFX1BST01QVDogc3RyaW5nID0gJ1AnO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+IG1vdmUgaW4gVmlldzwvc3VtbWFyeT5cclxuICBzdGF0aWMgcmVhZG9ubHkgTU9WRV9VTklUX1RBQkxFOiBzdHJpbmcgPSAnVCc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1PVkVfVU5JVF9QQUdFOiBzdHJpbmcgPSAnUCc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1PVkVfVU5JVF9ST1c6IHN0cmluZyA9ICdSJztcclxuICBzdGF0aWMgcmVhZG9ubHkgTU9WRV9VTklUX1RSRUVfTk9ERTogc3RyaW5nID0gJ0UnO1xyXG5cclxuICBzdGF0aWMgcmVhZG9ubHkgTU9WRV9ESVJFQ1RJT05fTk9ORTogc3RyaW5nID0gJyAnO1xyXG4gIHN0YXRpYyByZWFkb25seSBNT1ZFX0RJUkVDVElPTl9CRUdJTjogc3RyaW5nID0gJ0InO1xyXG4gIHN0YXRpYyByZWFkb25seSBNT1ZFX0RJUkVDVElPTl9QUkVWOiBzdHJpbmcgPSAnUCc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1PVkVfRElSRUNUSU9OX05FWFQ6IHN0cmluZyA9ICdOJztcclxuICBzdGF0aWMgcmVhZG9ubHkgTU9WRV9ESVJFQ1RJT05fRU5EOiBzdHJpbmcgPSAnRSc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1PVkVfRElSRUNUSU9OX1BBUkVOVDogc3RyaW5nID0gJ0EnO1xyXG4gIHN0YXRpYyByZWFkb25seSBNT1ZFX0RJUkVDVElPTl9GSVJTVF9TT046IHN0cmluZyA9ICdGJztcclxuICBzdGF0aWMgcmVhZG9ubHkgTU9WRV9ESVJFQ1RJT05fTkVYVF9TSUJMSU5HOiBzdHJpbmcgPSAnWCc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1PVkVfRElSRUNUSU9OX1BSRVZfU0lCTElORzogc3RyaW5nID0gJ1YnO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+IHJlZnJlc2ggdHlwZXMgZm9yIGEgdGFzayBmb3JtPC9zdW1tYXJ5PlxyXG4gIHN0YXRpYyByZWFkb25seSBUQVNLX1JFRlJFU0hfRk9STTogc3RyaW5nID0gJ0YnO1xyXG4gIHN0YXRpYyByZWFkb25seSBUQVNLX1JFRlJFU0hfVEFCTEU6IHN0cmluZyA9ICdUJztcclxuICBzdGF0aWMgcmVhZG9ubHkgVEFTS19SRUZSRVNIX1RSRUVfQU5EX0ZPUk06IHN0cmluZyA9ICdSJztcclxuICBzdGF0aWMgcmVhZG9ubHkgVEFTS19SRUZSRVNIX0NVUlJfUkVDOiBzdHJpbmcgPSAnQyc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IFRBU0tfUkVGUkVTSF9OT05FOiBzdHJpbmcgPSAnTic7XHJcblxyXG4gIHN0YXRpYyByZWFkb25seSBUQVNLX01PREVfUVVFUlk6IHN0cmluZyA9ICdFJztcclxuICBzdGF0aWMgcmVhZG9ubHkgVEFTS19NT0RFX01PRElGWTogc3RyaW5nID0gJ00nO1xyXG4gIHN0YXRpYyByZWFkb25seSBUQVNLX01PREVfQ1JFQVRFOiBzdHJpbmcgPSAnQyc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IFRBU0tfTU9ERV9ERUxFVEU6IHN0cmluZyA9ICdEJztcclxuICBzdGF0aWMgcmVhZG9ubHkgVEFTS19NT0RFX05PTkUgPSAnICc7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gdGFzayBsZXZlbDwvc3VtbWFyeT5cclxuICBzdGF0aWMgcmVhZG9ubHkgVEFTS19MRVZFTF9OT05FOiBzdHJpbmcgPSAnICc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IFRBU0tfTEVWRUxfVEFTSzogc3RyaW5nID0gJ1QnO1xyXG4gIHN0YXRpYyByZWFkb25seSBUQVNLX0xFVkVMX1JFQ09SRDogc3RyaW5nID0gJ1InO1xyXG4gIHN0YXRpYyByZWFkb25seSBUQVNLX0xFVkVMX0NPTlRST0w6IHN0cmluZyA9ICdDJztcclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBzcGVjaWFsIHJlY29yZHMgY29uc3RhbnRzPC9zdW1tYXJ5PlxyXG4gIHN0YXRpYyByZWFkb25seSBNR19EQVRBVklFV19GSVJTVF9SRUNPUkQ6IG51bWJlciA9IEludDMyLk1pblZhbHVlO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19EQVRBVklFV19MQVNUX1JFQ09SRDogbnVtYmVyID0gSW50MzIuTWF4VmFsdWU7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gYWN0aW9uIHN0YXRlcyBmb3Iga2V5Ym9hcmQgbWFwcGluZzwvc3VtbWFyeT5cclxuICBzdGF0aWMgcmVhZG9ubHkgQUNUX1NUVF9UQkxfU0NSRUVOX01PREU6IG51bWJlciA9IDB4MDAwMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgQUNUX1NUVF9UQkxfTEVGVF9UT19SSUdIVDogbnVtYmVyID0gMHgwMDAyO1xyXG4gIHN0YXRpYyByZWFkb25seSBBQ1RfU1RUX1RCTF9TQ1JFRU5fVE9QOiBudW1iZXIgPSAweDAwMDQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IEFDVF9TVFRfVEJMX1NDUkVFTl9FTkQ6IG51bWJlciA9IDB4MDAwODtcclxuICBzdGF0aWMgcmVhZG9ubHkgQUNUX1NUVF9UQkxfUk9XX1NUQVJUOiBudW1iZXIgPSAweDAwMTA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IEFDVF9TVFRfVEJMX1JPV19FTkQ6IG51bWJlciA9IDB4MDAyMDtcclxuICBzdGF0aWMgcmVhZG9ubHkgQUNUX1NUVF9FRFRfTEVGVF9UT19SSUdIVDogbnVtYmVyID0gMHgwMDQwO1xyXG4gIHN0YXRpYyByZWFkb25seSBBQ1RfU1RUX0VEVF9GT1JNX1RPUDogbnVtYmVyID0gMHgwMDgwO1xyXG4gIHN0YXRpYyByZWFkb25seSBBQ1RfU1RUX0VEVF9GT1JNX0VORDogbnVtYmVyID0gMHgwMTAwO1xyXG4gIHN0YXRpYyByZWFkb25seSBBQ1RfU1RUX0VEVF9MSU5FX1NUQVJUOiBudW1iZXIgPSAweDAyMDA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IEFDVF9TVFRfRURUX0xJTkVfRU5EOiBudW1iZXIgPSAweDA0MDA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IEFDVF9TVFRfRURUX0VESVRJTkc6IG51bWJlciA9IDB4MDgwMDtcclxuICBzdGF0aWMgcmVhZG9ubHkgQUNUX1NUVF9UUkVFX1BBUks6IG51bWJlciA9IDB4MTAwMDtcclxuICBzdGF0aWMgcmVhZG9ubHkgQUNUX1NUVF9UUkVFX0VESVRJTkc6IG51bWJlciA9IDB4MjAwMDtcclxuXHJcbiAgc3RhdGljIHJlYWRvbmx5IEZvcndhcmRTbGFzaFdlYlVzYWdlOiBzdHJpbmcgPSBcIndlYlwiOyAvLyByZWZlciB0byBhIGZvcndhcmQgc2xhc2ggYXMgYSByZWxhdGl2ZSB3ZWIgdXJsLlxyXG4gIHN0YXRpYyByZWFkb25seSBIVFRQX1BST1RPQ09MOiBzdHJpbmcgPSBcImh0dHA6Ly9cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgSFRUUFNfUFJPVE9DT0w6IHN0cmluZyA9IFwiaHR0cHM6Ly9cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgRklMRV9QUk9UT0NPTDogc3RyaW5nID0gXCJmaWxlOi8vXCI7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT50aHJlYWRzIGNvbnN0YW50czwvc3VtbWFyeT5cclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfR1VJX1RIUkVBRDogc3RyaW5nID0gXCJNR19HVUlfVEhSRUFEXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX1dPUktfVEhSRUFEOiBzdHJpbmcgPSBcIk1HX1dPUktfVEhSRUFEXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX1RJTUVSX1RIUkVBRDogc3RyaW5nID0gXCJNR19USU1FUl9USFJFQURcIjtcclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBwcm9wZXJ0eSBuYW1lIGZvciB0aGUgcnVudGltZSBkZXNpZ25lclxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgc3RhdGljIHJlYWRvbmx5IENvbmZpZ3VyYXRpb25GaWxlUHJvcGVydHlOYW1lOiBzdHJpbmcgPSBcIkNvbmZpZ3VyYXRpb24gZmlsZVwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBXaW5Qcm9wVGV4dDogc3RyaW5nID0gXCJUZXh0XCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IFdpblByb3BMYXllcjogc3RyaW5nID0gXCJMYXllclwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBXaW5Qcm9wWDE6IHN0cmluZyA9IFwiWDFcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgV2luUHJvcFgyOiBzdHJpbmcgPSBcIlgyXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IFdpblByb3BZMTogc3RyaW5nID0gXCJZMVwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBXaW5Qcm9wWTI6IHN0cmluZyA9IFwiWTJcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgV2luUHJvcElzVHJhbnNwYXJlbnQ6IHN0cmluZyA9IFwiSXNUcmFuc3BhcmVudFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBXaW5Qcm9wTmFtZTogc3RyaW5nID0gXCJOYW1lXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IFdpblByb3BWaXNpYmxlOiBzdHJpbmcgPSBcIlZpc2libGVcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgV2luUHJvcFZpc2libGVMYXllckxpc3Q6IHN0cmluZyA9IFwiVmlzaWJsZUxheWVyTGlzdFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBUYWJPcmRlclByb3BlcnR5VGVybWluYXRpb246IHN0cmluZyA9IFwiRm9yVGFiT3JkZXJcIjtcclxuXHJcbiAgc3RhdGljIHJlYWRvbmx5IFNCeXRlTWF4VmFsdWUgPSAxMjc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG5cclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Exception, StringBuilder } from "@magic-xpa/mscorelib";
|
|
2
|
+
import { XMLConstants } from "./XMLConstants";
|
|
3
|
+
export class DateTimeUtils {
|
|
4
|
+
static int2str(n) {
|
|
5
|
+
return (n > 9) ? n.toString() : ("0" + n);
|
|
6
|
+
}
|
|
7
|
+
static ToString(dateTime, format, logger) {
|
|
8
|
+
let dateTimeString;
|
|
9
|
+
try {
|
|
10
|
+
dateTimeString = dateTime.Format(format);
|
|
11
|
+
}
|
|
12
|
+
catch (ex) {
|
|
13
|
+
if (ex instanceof Exception) {
|
|
14
|
+
if (format === XMLConstants.CACHED_DATE_TIME_FORMAT) {
|
|
15
|
+
dateTimeString = DateTimeUtils.int2str(dateTime.Day) + "/" + DateTimeUtils.int2str(dateTime.Month) + "/" + dateTime.Year + " " +
|
|
16
|
+
DateTimeUtils.int2str(dateTime.Hour) + ":" + DateTimeUtils.int2str(dateTime.Minute) + ":" +
|
|
17
|
+
DateTimeUtils.int2str(dateTime.Second);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
if (format === XMLConstants.ERROR_LOG_TIME_FORMAT) {
|
|
21
|
+
dateTimeString = DateTimeUtils.int2str(dateTime.Hour) + ":" +
|
|
22
|
+
DateTimeUtils.int2str(dateTime.Minute) + ":" +
|
|
23
|
+
DateTimeUtils.int2str(dateTime.Second) + ".";
|
|
24
|
+
if (dateTime.Millisecond % 100 > 50) {
|
|
25
|
+
dateTimeString = dateTimeString + (Math.floor(dateTime.Millisecond / 100) + 1);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
dateTimeString = dateTimeString + Math.floor(dateTime.Millisecond / 100);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
if (format === XMLConstants.ERROR_LOG_DATE_FORMAT) {
|
|
33
|
+
dateTimeString = DateTimeUtils.int2str(dateTime.Day) + "/" + DateTimeUtils.int2str(dateTime.Month) + "/" + dateTime.Year;
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
if (format === XMLConstants.HTTP_ERROR_TIME_FORMAT) {
|
|
37
|
+
dateTimeString = DateTimeUtils.int2str(dateTime.Hour) + ":" + DateTimeUtils.int2str(dateTime.Minute) + ":" + DateTimeUtils.int2str(dateTime.Second) + ".";
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
logger.WriteExceptionToLogWithMsg(ex.Message);
|
|
41
|
+
let dateTimeTmpString = new StringBuilder();
|
|
42
|
+
dateTimeString = dateTimeTmpString.ToString();
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
else
|
|
49
|
+
throw ex;
|
|
50
|
+
}
|
|
51
|
+
return dateTimeString;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZVRpbWVVdGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxzL3NyYy9EYXRlVGltZVV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVyxTQUFTLEVBQUUsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDeEUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTVDLE1BQU0sT0FBTyxhQUFhO0lBR2hCLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBUztRQUM5QixPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQWtCLEVBQUUsTUFBYyxFQUFFLE1BQVc7UUFDN0QsSUFBSSxjQUFzQixDQUFDO1FBQzNCLElBQUk7WUFDRixjQUFjLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMxQztRQUNELE9BQU8sRUFBRSxFQUFFO1lBQ1QsSUFBSSxFQUFFLFlBQVksU0FBUyxFQUFFO2dCQUMzQixJQUFJLE1BQU0sS0FBSyxZQUFZLENBQUMsdUJBQXVCLEVBQUU7b0JBQ25ELGNBQWMsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxHQUFHLFFBQVEsQ0FBQyxJQUFJLEdBQUcsR0FBRzt3QkFDNUgsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUc7d0JBQ3pGLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2lCQUMxQztxQkFDSTtvQkFDSCxJQUFJLE1BQU0sS0FBSyxZQUFZLENBQUMscUJBQXFCLEVBQUU7d0JBQ2pELGNBQWMsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHOzRCQUN6RCxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHOzRCQUM1QyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLENBQUM7d0JBQy9DLElBQUksUUFBUSxDQUFDLFdBQVcsR0FBRyxHQUFHLEdBQUcsRUFBRSxFQUFFOzRCQUNuQyxjQUFjLEdBQUcsY0FBYyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO3lCQUNoRjs2QkFDSTs0QkFDSCxjQUFjLEdBQUcsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUMsQ0FBQzt5QkFDMUU7cUJBQ0Y7eUJBQ0k7d0JBQ0gsSUFBSSxNQUFNLEtBQUssWUFBWSxDQUFDLHFCQUFxQixFQUFFOzRCQUNqRCxjQUFjLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDO3lCQUMxSDs2QkFDSTs0QkFFSCxJQUFJLE1BQU0sS0FBSyxZQUFZLENBQUMsc0JBQXNCLEVBQUU7Z0NBQ2xELGNBQWMsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsQ0FBQzs2QkFDM0o7aUNBQ0k7Z0NBQ0gsTUFBTSxDQUFDLDBCQUEwQixDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQ0FDOUMsSUFBSSxpQkFBaUIsR0FBa0IsSUFBSSxhQUFhLEVBQUUsQ0FBQztnQ0FDM0QsY0FBYyxHQUFHLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDOzZCQUMvQzt5QkFDRjtxQkFDRjtpQkFDRjthQUNGOztnQkFFQyxNQUFNLEVBQUUsQ0FBQztTQUNaO1FBQ0QsT0FBTyxjQUFjLENBQUM7SUFDeEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEYXRlVGltZSwgRXhjZXB0aW9uLCBTdHJpbmdCdWlsZGVyfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuaW1wb3J0IHtYTUxDb25zdGFudHN9IGZyb20gXCIuL1hNTENvbnN0YW50c1wiO1xyXG5cclxuZXhwb3J0IGNsYXNzIERhdGVUaW1lVXRpbHMge1xyXG5cclxuICAvLy8gPHN1bW1hcnk+IHJldHVybnMgdGhlIG51bWJlciBpbiBhIDIgZGlnaXQgc3RyaW5nXHJcbiAgcHJpdmF0ZSBzdGF0aWMgaW50MnN0cihuOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIChuID4gOSkgPyBuLnRvU3RyaW5nKCkgOiAoXCIwXCIgKyBuKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBUb1N0cmluZyhkYXRlVGltZTogRGF0ZVRpbWUsIGZvcm1hdDogc3RyaW5nLCBsb2dnZXI6IGFueSk6IHN0cmluZyB7XHJcbiAgICBsZXQgZGF0ZVRpbWVTdHJpbmc6IHN0cmluZztcclxuICAgIHRyeSB7XHJcbiAgICAgIGRhdGVUaW1lU3RyaW5nID0gZGF0ZVRpbWUuRm9ybWF0KGZvcm1hdCk7XHJcbiAgICB9XHJcbiAgICBjYXRjaCAoZXgpIHtcclxuICAgICAgaWYgKGV4IGluc3RhbmNlb2YgRXhjZXB0aW9uKSB7XHJcbiAgICAgICAgaWYgKGZvcm1hdCA9PT0gWE1MQ29uc3RhbnRzLkNBQ0hFRF9EQVRFX1RJTUVfRk9STUFUKSB7XHJcbiAgICAgICAgICBkYXRlVGltZVN0cmluZyA9IERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5EYXkpICsgXCIvXCIgKyBEYXRlVGltZVV0aWxzLmludDJzdHIoZGF0ZVRpbWUuTW9udGgpICsgXCIvXCIgKyBkYXRlVGltZS5ZZWFyICsgXCIgXCIgK1xyXG4gICAgICAgICAgICBEYXRlVGltZVV0aWxzLmludDJzdHIoZGF0ZVRpbWUuSG91cikgKyBcIjpcIiArIERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5NaW51dGUpICsgXCI6XCIgK1xyXG4gICAgICAgICAgICBEYXRlVGltZVV0aWxzLmludDJzdHIoZGF0ZVRpbWUuU2Vjb25kKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICBpZiAoZm9ybWF0ID09PSBYTUxDb25zdGFudHMuRVJST1JfTE9HX1RJTUVfRk9STUFUKSB7XHJcbiAgICAgICAgICAgIGRhdGVUaW1lU3RyaW5nID0gRGF0ZVRpbWVVdGlscy5pbnQyc3RyKGRhdGVUaW1lLkhvdXIpICsgXCI6XCIgK1xyXG4gICAgICAgICAgICAgIERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5NaW51dGUpICsgXCI6XCIgK1xyXG4gICAgICAgICAgICAgIERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5TZWNvbmQpICsgXCIuXCI7XHJcbiAgICAgICAgICAgIGlmIChkYXRlVGltZS5NaWxsaXNlY29uZCAlIDEwMCA+IDUwKSB7XHJcbiAgICAgICAgICAgICAgZGF0ZVRpbWVTdHJpbmcgPSBkYXRlVGltZVN0cmluZyArIChNYXRoLmZsb29yKGRhdGVUaW1lLk1pbGxpc2Vjb25kIC8gMTAwKSArIDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgIGRhdGVUaW1lU3RyaW5nID0gZGF0ZVRpbWVTdHJpbmcgKyBNYXRoLmZsb29yKGRhdGVUaW1lLk1pbGxpc2Vjb25kIC8gMTAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGlmIChmb3JtYXQgPT09IFhNTENvbnN0YW50cy5FUlJPUl9MT0dfREFURV9GT1JNQVQpIHtcclxuICAgICAgICAgICAgICBkYXRlVGltZVN0cmluZyA9IERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5EYXkpICsgXCIvXCIgKyBEYXRlVGltZVV0aWxzLmludDJzdHIoZGF0ZVRpbWUuTW9udGgpICsgXCIvXCIgKyBkYXRlVGltZS5ZZWFyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG5cclxuICAgICAgICAgICAgICBpZiAoZm9ybWF0ID09PSBYTUxDb25zdGFudHMuSFRUUF9FUlJPUl9USU1FX0ZPUk1BVCkge1xyXG4gICAgICAgICAgICAgICAgZGF0ZVRpbWVTdHJpbmcgPSBEYXRlVGltZVV0aWxzLmludDJzdHIoZGF0ZVRpbWUuSG91cikgKyBcIjpcIiArIERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5NaW51dGUpICsgXCI6XCIgKyBEYXRlVGltZVV0aWxzLmludDJzdHIoZGF0ZVRpbWUuU2Vjb25kKSArIFwiLlwiO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGxvZ2dlci5Xcml0ZUV4Y2VwdGlvblRvTG9nV2l0aE1zZyhleC5NZXNzYWdlKTtcclxuICAgICAgICAgICAgICAgIGxldCBkYXRlVGltZVRtcFN0cmluZzogU3RyaW5nQnVpbGRlciA9IG5ldyBTdHJpbmdCdWlsZGVyKCk7XHJcbiAgICAgICAgICAgICAgICBkYXRlVGltZVN0cmluZyA9IGRhdGVUaW1lVG1wU3RyaW5nLlRvU3RyaW5nKCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGVsc2VcclxuICAgICAgICB0aHJvdyBleDtcclxuICAgIH1cclxuICAgIHJldHVybiBkYXRlVGltZVN0cmluZztcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { PICInterface } from "./PICInterface";
|
|
2
|
+
const DATE_MONTH_LEN = 10;
|
|
3
|
+
const DATE_DOW_LEN = 10;
|
|
4
|
+
export class DateUtil {
|
|
5
|
+
static getLocalMonths(names) {
|
|
6
|
+
let monthLen = DATE_MONTH_LEN;
|
|
7
|
+
if (typeof DateUtil._localMonths[0] === "undefined") {
|
|
8
|
+
if (names !== null) {
|
|
9
|
+
DateUtil._localMonths[0] = PICInterface.date_month_str[0];
|
|
10
|
+
for (let i = 1; i < DateUtil._localMonths.length; i = i + 1) {
|
|
11
|
+
if (i * monthLen >= names.length) {
|
|
12
|
+
DateUtil._localMonths[i] = names.substr((i - 1) * monthLen);
|
|
13
|
+
while (monthLen - DateUtil._localMonths[i].length > 0) {
|
|
14
|
+
DateUtil._localMonths[i] = DateUtil._localMonths[i] + " ";
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
DateUtil._localMonths[i] = names.substr((i - 1) * monthLen, i * monthLen - (i - 1) * monthLen);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
for (let i = 0; i < DateUtil._localMonths.length; i = i + 1) {
|
|
24
|
+
DateUtil._localMonths[i] = PICInterface.date_month_str[i];
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return DateUtil._localMonths;
|
|
29
|
+
}
|
|
30
|
+
static getLocalDays(names) {
|
|
31
|
+
let dowLen = DATE_DOW_LEN;
|
|
32
|
+
if (typeof DateUtil._localDays[0] === "undefined") {
|
|
33
|
+
if (names !== null) {
|
|
34
|
+
DateUtil._localDays[0] = PICInterface.date_dow_str[0];
|
|
35
|
+
for (let i = 1; i < DateUtil._localDays.length; i = i + 1) {
|
|
36
|
+
if (i * dowLen >= names.length) {
|
|
37
|
+
DateUtil._localDays[i] = names.substr((i - 1) * dowLen);
|
|
38
|
+
while (dowLen - DateUtil._localDays[i].length > 0) {
|
|
39
|
+
DateUtil._localDays[i] = DateUtil._localDays[i] + " ";
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
DateUtil._localDays[i] = names.substr((i - 1) * dowLen, i * dowLen - (i - 1) * dowLen);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
for (let i = 0; i < DateUtil._localMonths.length; i = i + 1) {
|
|
49
|
+
DateUtil._localMonths[i] = PICInterface.date_dow_str[i];
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return DateUtil._localDays;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
DateUtil._localMonths = new Array(13);
|
|
57
|
+
DateUtil._localDays = new Array(8);
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZVV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlscy9zcmMvRGF0ZVV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTVDLE1BQU0sY0FBYyxHQUFXLEVBQUUsQ0FBQztBQUNsQyxNQUFNLFlBQVksR0FBVyxFQUFFLENBQUM7QUFFaEMsTUFBTSxPQUFPLFFBQVE7SUFTbkIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFhO1FBQ2pDLElBQUksUUFBUSxHQUFXLGNBQWMsQ0FBQztRQUd0QyxJQUFJLE9BQU8sUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsS0FBSyxXQUFXLEVBQUU7WUFHbkQsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO2dCQUNsQixRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzFELEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFFbkUsSUFBSSxDQUFDLEdBQUcsUUFBUSxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUU7d0JBQ2hDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQzt3QkFDNUQsT0FBTyxRQUFRLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFOzRCQUNyRCxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO3lCQUMzRDtxQkFDRjt5QkFDSTt3QkFDSCxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsR0FBRyxRQUFRLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7cUJBQ2hHO2lCQUNGO2FBQ0Y7aUJBQ0k7Z0JBQ0gsS0FBSyxJQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUNuRSxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQzNEO2FBQ0Y7U0FDRjtRQUNELE9BQU8sUUFBUSxDQUFDLFlBQVksQ0FBQztJQUMvQixDQUFDO0lBTUQsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFhO1FBQy9CLElBQUksTUFBTSxHQUFXLFlBQVksQ0FBQztRQUdsQyxJQUFJLE9BQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsS0FBSyxXQUFXLEVBQUU7WUFHakQsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO2dCQUNsQixRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFFakUsSUFBSSxDQUFDLEdBQUcsTUFBTSxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUU7d0JBQzlCLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQzt3QkFDeEQsT0FBTyxNQUFNLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFOzRCQUNqRCxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO3lCQUN2RDtxQkFDRjt5QkFDSTt3QkFDSCxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsR0FBRyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUM7cUJBQ3hGO2lCQUNGO2FBQ0Y7aUJBQ0k7Z0JBQ0gsS0FBSyxJQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUNuRSxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ3pEO2FBQ0Y7U0FDRjtRQUNELE9BQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQztJQUM3QixDQUFDOztBQXZFdUIscUJBQVksR0FBYSxJQUFJLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztBQUMvQyxtQkFBVSxHQUFhLElBQUksS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQSUNJbnRlcmZhY2V9IGZyb20gXCIuL1BJQ0ludGVyZmFjZVwiO1xyXG5cclxuY29uc3QgREFURV9NT05USF9MRU46IG51bWJlciA9IDEwO1xyXG5jb25zdCBEQVRFX0RPV19MRU46IG51bWJlciA9IDEwO1xyXG5cclxuZXhwb3J0IGNsYXNzIERhdGVVdGlsIHtcclxuXHJcbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgX2xvY2FsTW9udGhzOiBzdHJpbmdbXSA9IG5ldyBBcnJheTxzdHJpbmc+KDEzKTtcclxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBfbG9jYWxEYXlzOiBzdHJpbmdbXSA9IG5ldyBBcnJheTxzdHJpbmc+KDgpO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICBleHRyYWN0IHRoZSB2ZWN0b3Igd2hpY2ggY29udGFpbnMgdGhlIG5hbWVzIG9mIHRoZSBtb250aHMsIGFzIHNwZWNpZmllZCBieSB0aGVcclxuICAvLy8gIGxhbmd1YWdlIENBQlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgc3RhdGljIGdldExvY2FsTW9udGhzKG5hbWVzOiBzdHJpbmcpOiBzdHJpbmdbXSB7XHJcbiAgICBsZXQgbW9udGhMZW46IG51bWJlciA9IERBVEVfTU9OVEhfTEVOO1xyXG5cclxuICAgIC8vIGlmIGl0J3MgdGhlIGZpcnN0IHRpbWUgdGhlbiBhY2Nlc3MgdGhlIGxhbmd1YWdlIENBQiBhbmQgdGFrZSB0aGUgdmFsdWVzXHJcbiAgICBpZiAodHlwZW9mIERhdGVVdGlsLl9sb2NhbE1vbnRoc1swXSA9PT0gXCJ1bmRlZmluZWRcIikge1xyXG5cclxuICAgICAgLy9jdXQgdGhlIHN0cmluZyBpbnRvIHNlcGFyYXRlIHZhbHVlc1xyXG4gICAgICBpZiAobmFtZXMgIT09IG51bGwpIHtcclxuICAgICAgICBEYXRlVXRpbC5fbG9jYWxNb250aHNbMF0gPSBQSUNJbnRlcmZhY2UuZGF0ZV9tb250aF9zdHJbMF07XHJcbiAgICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gMTsgaSA8IERhdGVVdGlsLl9sb2NhbE1vbnRocy5sZW5ndGg7IGkgPSBpICsgMSkge1xyXG5cclxuICAgICAgICAgIGlmIChpICogbW9udGhMZW4gPj0gbmFtZXMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIERhdGVVdGlsLl9sb2NhbE1vbnRoc1tpXSA9IG5hbWVzLnN1YnN0cigoaSAtIDEpICogbW9udGhMZW4pO1xyXG4gICAgICAgICAgICB3aGlsZSAobW9udGhMZW4gLSBEYXRlVXRpbC5fbG9jYWxNb250aHNbaV0ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgIERhdGVVdGlsLl9sb2NhbE1vbnRoc1tpXSA9IERhdGVVdGlsLl9sb2NhbE1vbnRoc1tpXSArIFwiIFwiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgRGF0ZVV0aWwuX2xvY2FsTW9udGhzW2ldID0gbmFtZXMuc3Vic3RyKChpIC0gMSkgKiBtb250aExlbiwgaSAqIG1vbnRoTGVuIC0gKGkgLSAxKSAqIG1vbnRoTGVuKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gMDsgaSA8IERhdGVVdGlsLl9sb2NhbE1vbnRocy5sZW5ndGg7IGkgPSBpICsgMSkge1xyXG4gICAgICAgICAgRGF0ZVV0aWwuX2xvY2FsTW9udGhzW2ldID0gUElDSW50ZXJmYWNlLmRhdGVfbW9udGhfc3RyW2ldO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIERhdGVVdGlsLl9sb2NhbE1vbnRocztcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBleHRyYWN0IHRoZSB2ZWN0b3Igd2hpY2ggY29udGFpbnMgdGhlIG5hbWVzIG9mIHRoZSBkYXlzLCBhcyBzcGVjaWZpZWQgYnkgdGhlXHJcbiAgLy8vICAgbGFuZ3VhZ2UgQ0FCXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBzdGF0aWMgZ2V0TG9jYWxEYXlzKG5hbWVzOiBzdHJpbmcpOiBzdHJpbmdbXSB7XHJcbiAgICBsZXQgZG93TGVuOiBudW1iZXIgPSBEQVRFX0RPV19MRU47XHJcblxyXG4gICAgLy8gaWYgaXQncyB0aGUgZmlyc3QgdGltZSB0aGVuIGFjY2VzcyB0aGUgbGFuZ3VhZ2UgQ0FCIGFuZCB0YWtlIHRoZSB2YWx1ZXNcclxuICAgIGlmICh0eXBlb2YgRGF0ZVV0aWwuX2xvY2FsRGF5c1swXSA9PT0gXCJ1bmRlZmluZWRcIikge1xyXG5cclxuICAgICAgLy9jdXQgdGhlIHN0cmluZyBpbnRvIHNlcGFyYXRlIHZhbHVlc1xyXG4gICAgICBpZiAobmFtZXMgIT09IG51bGwpIHtcclxuICAgICAgICBEYXRlVXRpbC5fbG9jYWxEYXlzWzBdID0gUElDSW50ZXJmYWNlLmRhdGVfZG93X3N0clswXTtcclxuICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAxOyBpIDwgRGF0ZVV0aWwuX2xvY2FsRGF5cy5sZW5ndGg7IGkgPSBpICsgMSkge1xyXG5cclxuICAgICAgICAgIGlmIChpICogZG93TGVuID49IG5hbWVzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBEYXRlVXRpbC5fbG9jYWxEYXlzW2ldID0gbmFtZXMuc3Vic3RyKChpIC0gMSkgKiBkb3dMZW4pO1xyXG4gICAgICAgICAgICB3aGlsZSAoZG93TGVuIC0gRGF0ZVV0aWwuX2xvY2FsRGF5c1tpXS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgRGF0ZVV0aWwuX2xvY2FsRGF5c1tpXSA9IERhdGVVdGlsLl9sb2NhbERheXNbaV0gKyBcIiBcIjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIERhdGVVdGlsLl9sb2NhbERheXNbaV0gPSBuYW1lcy5zdWJzdHIoKGkgLSAxKSAqIGRvd0xlbiwgaSAqIGRvd0xlbiAtIChpIC0gMSkgKiBkb3dMZW4pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgRGF0ZVV0aWwuX2xvY2FsTW9udGhzLmxlbmd0aDsgaSA9IGkgKyAxKSB7XHJcbiAgICAgICAgICBEYXRlVXRpbC5fbG9jYWxNb250aHNbaV0gPSBQSUNJbnRlcmZhY2UuZGF0ZV9kb3dfc3RyW2ldO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIERhdGVVdGlsLl9sb2NhbERheXM7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|