ranuts 0.1.0-alpha.9 → 0.2.0-alpha.1

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.
Files changed (179) hide show
  1. package/CLAUDE.md +164 -0
  2. package/README.md +116 -0
  3. package/{readme.md → README.zh-CN.md} +43 -12
  4. package/dist/bin/generate-api-docs.d.ts +1 -0
  5. package/dist/build/build.es.d.ts +2 -0
  6. package/dist/build/build.umd.d.ts +2 -0
  7. package/dist/build/build.umd.node.d.ts +2 -0
  8. package/dist/build/build.umd.utils.d.ts +2 -0
  9. package/dist/color-CRdlaDqQ.js +1 -0
  10. package/dist/examples/clone-deep-example.d.ts +1 -0
  11. package/dist/examples/is-equal-example.d.ts +1 -0
  12. package/dist/index.d.ts +5 -21
  13. package/dist/index.js +1 -2484
  14. package/dist/plugins/vite-plugins-banner.d.ts +2 -0
  15. package/dist/rolldown-runtime-I3TIJKkN.js +1 -0
  16. package/dist/src/node/appendFile.d.ts +7 -0
  17. package/dist/src/node/body.d.ts +9 -0
  18. package/dist/src/node/color.d.ts +7 -0
  19. package/dist/src/node/command.d.ts +8 -0
  20. package/dist/src/node/ctx2req.d.ts +5 -0
  21. package/dist/src/node/fileInfo.d.ts +7 -0
  22. package/dist/src/node/fs.d.ts +7 -0
  23. package/dist/src/node/get.d.ts +10 -0
  24. package/dist/src/node/getIPAdress.d.ts +1 -0
  25. package/dist/src/node/index.d.ts +25 -0
  26. package/dist/src/node/index.js +1 -0
  27. package/dist/src/node/isColorSupported.d.ts +2 -0
  28. package/dist/src/node/paresUrl.d.ts +19 -0
  29. package/dist/src/node/readDir.d.ts +6 -0
  30. package/dist/src/node/readFile.d.ts +9 -0
  31. package/dist/src/node/router.d.ts +42 -0
  32. package/dist/src/node/send.d.ts +7 -0
  33. package/dist/src/node/server.d.ts +18 -0
  34. package/dist/src/node/startTask.d.ts +2 -0
  35. package/dist/src/node/stream.d.ts +15 -0
  36. package/dist/src/node/taskEnd.d.ts +2 -0
  37. package/dist/src/node/traverse.d.ts +17 -0
  38. package/dist/src/node/watchFile.d.ts +8 -0
  39. package/dist/src/node/writeFile.d.ts +8 -0
  40. package/dist/src/node/ws.d.ts +8 -0
  41. package/dist/src/utils/audioRecorder.d.ts +16 -0
  42. package/dist/src/utils/behavior.d.ts +15 -0
  43. package/dist/src/utils/bom.d.ts +294 -0
  44. package/dist/src/utils/color.d.ts +71 -0
  45. package/dist/src/utils/compose.d.ts +10 -0
  46. package/dist/src/utils/console.d.ts +1 -0
  47. package/dist/src/utils/debounce.d.ts +7 -0
  48. package/dist/src/utils/device.d.ts +25 -0
  49. package/dist/src/utils/dom.d.ts +105 -0
  50. package/dist/src/utils/error.d.ts +1 -0
  51. package/dist/src/utils/func.d.ts +1 -0
  52. package/dist/src/utils/img.d.ts +16 -0
  53. package/dist/src/utils/index.d.ts +35 -0
  54. package/dist/src/utils/index.js +1 -0
  55. package/dist/src/utils/memoize.d.ts +7 -0
  56. package/dist/src/utils/mimeType.d.ts +9 -0
  57. package/dist/src/utils/monitor.d.ts +38 -0
  58. package/dist/src/utils/network.d.ts +39 -0
  59. package/dist/src/utils/noop.d.ts +2 -0
  60. package/dist/src/utils/number.d.ts +45 -0
  61. package/dist/src/utils/obj.d.ts +83 -0
  62. package/dist/src/utils/performance.d.ts +21 -0
  63. package/dist/src/utils/queue.d.ts +33 -0
  64. package/dist/src/utils/report.d.ts +8 -0
  65. package/dist/src/utils/request.d.ts +17 -0
  66. package/dist/src/utils/script.d.ts +7 -0
  67. package/dist/src/utils/signal.d.ts +6 -0
  68. package/dist/src/utils/storage.d.ts +2 -0
  69. package/dist/src/utils/str.d.ts +212 -0
  70. package/dist/src/utils/subscribe.d.ts +46 -0
  71. package/dist/src/utils/throttle.d.ts +15 -0
  72. package/dist/src/utils/time.d.ts +20 -0
  73. package/dist/src/utils/totp/sha/common.d.ts +151 -0
  74. package/dist/src/utils/totp/sha/converters.d.ts +88 -0
  75. package/dist/src/utils/totp/sha/custom_types.d.ts +60 -0
  76. package/dist/src/utils/totp/sha/primitives_32.d.ts +98 -0
  77. package/dist/src/utils/totp/sha/primitives_64.d.ts +116 -0
  78. package/dist/src/utils/totp/sha/sha.d.ts +103 -0
  79. package/dist/src/utils/totp/sha/sha1.d.ts +18 -0
  80. package/dist/src/utils/totp/sha/sha256.d.ts +20 -0
  81. package/dist/src/utils/totp/sha/sha3.d.ts +53 -0
  82. package/dist/src/utils/totp/sha/sha512.d.ts +21 -0
  83. package/dist/src/utils/totp/totp.d.ts +23 -0
  84. package/dist/src/utils/visual/application.d.ts +27 -0
  85. package/dist/src/utils/visual/enums.d.ts +27 -0
  86. package/dist/src/utils/visual/event/boundary.d.ts +22 -0
  87. package/dist/src/utils/visual/event/event.d.ts +14 -0
  88. package/dist/src/utils/visual/event/index.d.ts +6 -0
  89. package/dist/src/utils/visual/event/types.d.ts +32 -0
  90. package/dist/src/utils/visual/graphics/graphics.d.ts +81 -0
  91. package/dist/src/utils/visual/graphics/graphicsData.d.ts +13 -0
  92. package/dist/src/utils/visual/graphics/graphicsGeometry.d.ts +35 -0
  93. package/dist/src/utils/visual/graphics/index.d.ts +4 -0
  94. package/dist/src/utils/visual/index.d.ts +7 -0
  95. package/dist/src/utils/visual/index.js +1 -0
  96. package/dist/src/utils/visual/math/bezier.d.ts +2 -0
  97. package/dist/src/utils/visual/math/enums.d.ts +3 -0
  98. package/dist/src/utils/visual/math/index.d.ts +5 -0
  99. package/dist/src/utils/visual/math/matrix.d.ts +113 -0
  100. package/dist/src/utils/visual/math/transform.d.ts +29 -0
  101. package/dist/src/utils/visual/render/batchRenderer.d.ts +78 -0
  102. package/dist/src/utils/visual/render/canvasRenderer.d.ts +10 -0
  103. package/dist/src/utils/visual/render/index.d.ts +3 -0
  104. package/dist/src/utils/visual/render/render.d.ts +11 -0
  105. package/dist/src/utils/visual/render/utils/batch/index.d.ts +90 -0
  106. package/dist/src/utils/visual/render/utils/batch/index.test.d.ts +1 -0
  107. package/dist/src/utils/visual/render/utils/float.d.ts +63 -0
  108. package/dist/src/utils/visual/render/utils/index.d.ts +3 -0
  109. package/dist/src/utils/visual/render/utils/index.test.d.ts +1 -0
  110. package/dist/src/utils/visual/render/utils/verticy.d.ts +13 -0
  111. package/dist/src/utils/visual/render/utils/webgl/initShader.d.ts +7 -0
  112. package/dist/src/utils/visual/render/utils/webgl/shaders.d.ts +2 -0
  113. package/dist/src/utils/visual/render/utils/webgpu/shaders.d.ts +8 -0
  114. package/dist/src/utils/visual/render/webGPURenderer.d.ts +49 -0
  115. package/dist/src/utils/visual/render/webGlRenderer.d.ts +14 -0
  116. package/dist/src/utils/visual/shape/circle.d.ts +11 -0
  117. package/dist/src/utils/visual/shape/ellipse.d.ts +12 -0
  118. package/dist/src/utils/visual/shape/index.d.ts +7 -0
  119. package/dist/src/utils/visual/shape/polygon.d.ts +11 -0
  120. package/dist/src/utils/visual/shape/rectangle.d.ts +12 -0
  121. package/dist/src/utils/visual/shape/roundedRectangle.d.ts +13 -0
  122. package/dist/src/utils/visual/shape/shape.d.ts +6 -0
  123. package/dist/src/utils/visual/style/fill.d.ts +8 -0
  124. package/dist/src/utils/visual/style/index.d.ts +3 -0
  125. package/dist/src/utils/visual/style/line.d.ts +10 -0
  126. package/dist/src/utils/visual/types.d.ts +18 -0
  127. package/dist/src/utils/visual/vertex/container.d.ts +74 -0
  128. package/dist/src/utils/visual/vertex/point.d.ts +18 -0
  129. package/dist/src/utils/visual/vertex/vertex.d.ts +36 -0
  130. package/dist/src/vnode/chainDom.d.ts +47 -0
  131. package/dist/src/vnode/h.d.ts +6 -0
  132. package/dist/src/vnode/hooks.d.ts +23 -0
  133. package/dist/src/vnode/htmlDomApi.d.ts +33 -0
  134. package/dist/src/vnode/index.d.ts +18 -0
  135. package/dist/src/vnode/index.js +1 -0
  136. package/dist/src/vnode/init.d.ts +2 -0
  137. package/dist/src/vnode/is.d.ts +5 -0
  138. package/dist/src/vnode/modules/attributes.d.ts +8 -0
  139. package/dist/src/vnode/modules/class.d.ts +8 -0
  140. package/dist/src/vnode/modules/index.d.ts +3 -0
  141. package/dist/src/vnode/modules/listeners.d.ts +12 -0
  142. package/dist/src/vnode/modules/props.d.ts +8 -0
  143. package/dist/src/vnode/modules/style.d.ts +14 -0
  144. package/dist/src/vnode/vnode.d.ts +31 -0
  145. package/dist/subscribe-CINWsor3.js +1 -0
  146. package/dist/test/bridge.test.d.ts +1 -0
  147. package/dist/test/clearBr.test.d.ts +1 -0
  148. package/dist/test/cloneDeep.test.d.ts +1 -0
  149. package/dist/test/command.test.d.ts +1 -0
  150. package/dist/test/encodeUrl.test.d.ts +1 -0
  151. package/dist/test/escapeHtml.test.d.ts +1 -0
  152. package/dist/test/is-equal.test.d.ts +1 -0
  153. package/dist/test/mimeType.test.d.ts +1 -0
  154. package/dist/test/package-exports.test.d.ts +1 -0
  155. package/dist/test/server.test.d.ts +1 -0
  156. package/dist/test/status.test.d.ts +1 -0
  157. package/dist/test/totp.test.d.ts +1 -0
  158. package/dist/test/utils/compose.test.d.ts +1 -0
  159. package/dist/test/utils/mergeObj.test.d.ts +1 -0
  160. package/dist/test/visual/math.test.d.ts +1 -0
  161. package/dist/test/visual-application.test.d.ts +1 -0
  162. package/dist/test/visual-batch.test.d.ts +1 -0
  163. package/dist/test/visual-math.test.d.ts +1 -0
  164. package/dist/test/vnode/index.d.ts +1 -0
  165. package/dist/test/vnode/server.d.ts +2 -0
  166. package/dist/test/vnode/vnode.d.ts +1 -0
  167. package/dist/test/vnode.test.d.ts +1 -0
  168. package/dist/test/websocket.test.d.ts +1 -0
  169. package/dist/test/writeFile.test.d.ts +1 -0
  170. package/dist/umd/index.umd.cjs +1 -0
  171. package/dist/umd/node/node.umd.cjs +1 -0
  172. package/dist/umd/utils/utils.umd.cjs +1 -0
  173. package/dist/utils-_OxsVZmz.js +1 -0
  174. package/dist/vite.config.d.ts +8 -0
  175. package/dist/vitest.config.d.ts +2 -0
  176. package/docs/API.md +305 -0
  177. package/package.json +67 -15
  178. package/typings.d.ts +28 -0
  179. package/dist/index.umd.cjs +0 -1
package/dist/index.js CHANGED
@@ -1,2484 +1 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __publicField = (obj, key, value) => {
4
- __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
- return value;
6
- };
7
- import fs from "node:fs";
8
- const readFile = (path, format = "utf-8") => {
9
- const controller = new AbortController();
10
- const signal = controller.signal;
11
- const result = new Promise((resolve, reject) => {
12
- fs.readFile(
13
- path,
14
- { encoding: format, signal },
15
- (err, data) => {
16
- if (err) {
17
- controller.abort();
18
- reject({ success: false, _identification: false, data: err });
19
- } else {
20
- resolve({ success: true, _identification: true, data });
21
- }
22
- }
23
- );
24
- });
25
- result.abort = controller.abort;
26
- return result;
27
- };
28
- const watchFile = (path, interval = 20) => new Promise((resolve, reject) => {
29
- fs.watchFile(path, { interval }, (curr, prev) => {
30
- if (curr.mtime !== prev.mtime) {
31
- fs.unwatchFile(path);
32
- resolve({
33
- success: true,
34
- _identification: true,
35
- data: {},
36
- message: "file is changed"
37
- });
38
- } else {
39
- resolve({
40
- success: false,
41
- _identification: false,
42
- data: {},
43
- message: "file is not changed"
44
- });
45
- }
46
- });
47
- });
48
- const NEW_LISTENER = "NEW_LISTENER";
49
- class SyncHook {
50
- constructor() {
51
- __publicField(this, "_events");
52
- __publicField(this, "on", (eventName, eventItem) => {
53
- if (this._events[eventName] && eventName !== Symbol.for(NEW_LISTENER)) {
54
- this.emit(Symbol.for(NEW_LISTENER), eventName);
55
- }
56
- const callbacks = this._events[eventName] || [];
57
- if (typeof eventItem === "function") {
58
- callbacks.push({
59
- name: eventName,
60
- callback: eventItem
61
- });
62
- } else {
63
- callbacks.push(eventItem);
64
- }
65
- this._events[eventName] = callbacks;
66
- });
67
- __publicField(this, "emit", (eventName, ...args) => {
68
- const callbacks = this._events[eventName] || [];
69
- callbacks.forEach((item) => {
70
- const { callback } = item;
71
- callback(...args);
72
- });
73
- });
74
- __publicField(this, "once", (eventName, eventItem) => {
75
- let one;
76
- if (typeof eventItem === "function") {
77
- one = {
78
- name: eventName,
79
- callback: (...args) => {
80
- eventItem(...args);
81
- this.off(eventName, one);
82
- },
83
- initialCallback: eventItem
84
- };
85
- } else {
86
- const { callback } = eventItem;
87
- one = {
88
- name: eventName,
89
- callback: (...args) => {
90
- callback(...args);
91
- this.off(eventName, one);
92
- },
93
- initialCallback: callback
94
- };
95
- }
96
- this.on(eventName, one);
97
- });
98
- __publicField(this, "off", (eventName, eventItem) => {
99
- const callbacks = this._events[eventName] || [];
100
- const newCallbacks = callbacks.filter((item) => {
101
- if (typeof eventItem === "function") {
102
- return item.callback !== eventItem && item.initialCallback !== eventItem;
103
- } else {
104
- const { callback } = eventItem;
105
- return item.callback !== callback && item.initialCallback !== callback;
106
- }
107
- });
108
- this._events[eventName] = newCallbacks;
109
- });
110
- this._events = {};
111
- }
112
- }
113
- const queryFileInfo = (path) => new Promise((resolve, reject) => {
114
- fs.stat(path, (err, data) => {
115
- err ? reject({ success: false, _identification: false, data: err }) : resolve({ success: true, _identification: true, data });
116
- });
117
- });
118
- const filterObj = (obj, list) => {
119
- const result = {};
120
- Object.keys(obj).forEach((item) => {
121
- if (!list.includes(item)) {
122
- result[item] = obj[item];
123
- }
124
- });
125
- return result;
126
- };
127
- const readDir = (options) => {
128
- const { dirPath } = options;
129
- try {
130
- return fs.readdirSync(dirPath);
131
- } catch (error) {
132
- console.log("readDir error", error);
133
- throw error;
134
- }
135
- };
136
- const str2Xml = (xmlStr, format = "text/xml") => {
137
- if (window.DOMParser)
138
- return new window.DOMParser().parseFromString(xmlStr, format).documentElement;
139
- if (typeof window.ActiveXObject !== "undefined" && new window.ActiveXObject("Microsoft.XMLDOM")) {
140
- const xmlDoc = new window.ActiveXObject("Microsoft.XMLDOM");
141
- xmlDoc.async = "false";
142
- xmlDoc.loadXML(xmlStr);
143
- return xmlDoc;
144
- }
145
- return void 0;
146
- };
147
- const writeFile = (path, content) => new Promise((resolve, reject) => {
148
- fs.writeFile(
149
- path,
150
- content,
151
- {
152
- mode: 438,
153
- flag: "w+",
154
- encoding: "utf-8"
155
- },
156
- (err) => {
157
- if (err) {
158
- reject({ success: false, _identification: false, data: err });
159
- throw err;
160
- } else {
161
- resolve({ success: true, _identification: false, data: { path, content } });
162
- }
163
- }
164
- );
165
- });
166
- function vnode$1(sel, data, children, text, elm) {
167
- const key = data === void 0 ? void 0 : data.key;
168
- return { sel, data, children, text, elm, key };
169
- }
170
- function createElement(tagName2, options) {
171
- return document.createElement(tagName2, options);
172
- }
173
- function createElementNS(namespaceURI, qualifiedName, options) {
174
- return document.createElementNS(namespaceURI, qualifiedName, options);
175
- }
176
- function createDocumentFragment() {
177
- return parseFragment(document.createDocumentFragment());
178
- }
179
- function createTextNode(text) {
180
- return document.createTextNode(text);
181
- }
182
- function createComment(text) {
183
- return document.createComment(text);
184
- }
185
- function insertBefore(parentNode2, newNode, referenceNode) {
186
- if (isDocumentFragment(parentNode2)) {
187
- let node = parentNode2;
188
- while (node && isDocumentFragment(node)) {
189
- const fragment = parseFragment(node);
190
- node = fragment.parent;
191
- }
192
- parentNode2 = node != null ? node : parentNode2;
193
- }
194
- if (isDocumentFragment(newNode)) {
195
- newNode = parseFragment(newNode, parentNode2);
196
- }
197
- if (referenceNode && isDocumentFragment(referenceNode)) {
198
- referenceNode = parseFragment(referenceNode).firstChildNode;
199
- }
200
- parentNode2.insertBefore(newNode, referenceNode);
201
- }
202
- function removeChild(node, child) {
203
- node.removeChild(child);
204
- }
205
- function appendChild(node, child) {
206
- if (isDocumentFragment(child)) {
207
- child = parseFragment(child, node);
208
- }
209
- node.appendChild(child);
210
- }
211
- function parentNode(node) {
212
- if (isDocumentFragment(node)) {
213
- while (node && isDocumentFragment(node)) {
214
- const fragment = parseFragment(node);
215
- node = fragment.parent;
216
- }
217
- return node != null ? node : null;
218
- }
219
- return node.parentNode;
220
- }
221
- function nextSibling(node) {
222
- var _a;
223
- if (isDocumentFragment(node)) {
224
- const fragment = parseFragment(node);
225
- const parent = parentNode(fragment);
226
- if (parent && fragment.lastChildNode) {
227
- const children = Array.from(parent.childNodes);
228
- const index = children.indexOf(fragment.lastChildNode);
229
- return (_a = children[index + 1]) != null ? _a : null;
230
- }
231
- return null;
232
- }
233
- return node.nextSibling;
234
- }
235
- function tagName(elm) {
236
- return elm.tagName;
237
- }
238
- function setTextContent(node, text) {
239
- node.textContent = text;
240
- }
241
- function getTextContent(node) {
242
- return node.textContent;
243
- }
244
- function isElement(node) {
245
- return node.nodeType === 1;
246
- }
247
- function isText(node) {
248
- return node.nodeType === 3;
249
- }
250
- function isComment(node) {
251
- return node.nodeType === 8;
252
- }
253
- function isDocumentFragment(node) {
254
- return node.nodeType === 11;
255
- }
256
- function parseFragment(fragmentNode, parentNode2) {
257
- var _a, _b, _c;
258
- const fragment = fragmentNode;
259
- (_a = fragment.parent) != null ? _a : fragment.parent = parentNode2 != null ? parentNode2 : null;
260
- (_b = fragment.firstChildNode) != null ? _b : fragment.firstChildNode = fragmentNode.firstChild;
261
- (_c = fragment.lastChildNode) != null ? _c : fragment.lastChildNode = fragmentNode.lastChild;
262
- return fragment;
263
- }
264
- const htmlDomApi = {
265
- createElement,
266
- createElementNS,
267
- createTextNode,
268
- createDocumentFragment,
269
- createComment,
270
- insertBefore,
271
- removeChild,
272
- appendChild,
273
- parentNode,
274
- nextSibling,
275
- tagName,
276
- setTextContent,
277
- getTextContent,
278
- isElement,
279
- isText,
280
- isComment,
281
- isDocumentFragment
282
- };
283
- const array = Array.isArray;
284
- function primitive(s) {
285
- return typeof s === "string" || typeof s === "number";
286
- }
287
- function isVnode$1(s) {
288
- return !!(s == null ? void 0 : s.sel);
289
- }
290
- const xlinkNS = "http://www.w3.org/1999/xlink";
291
- const xmlNS = "http://www.w3.org/XML/1998/namespace";
292
- const colonChar = 58;
293
- const xChar = 120;
294
- function updateAttrs(oldVnode, vnode2) {
295
- let key;
296
- const elm = vnode2.elm;
297
- let oldAttrs = oldVnode.data && oldVnode.data.attrs;
298
- let attrs = vnode2.data && vnode2.data.attrs;
299
- if (!oldAttrs && !attrs)
300
- return;
301
- if (oldAttrs === attrs)
302
- return;
303
- oldAttrs = oldAttrs || {};
304
- attrs = attrs || {};
305
- for (key in attrs) {
306
- const cur = attrs[key];
307
- const old = oldAttrs[key];
308
- if (old !== cur) {
309
- if (cur === true) {
310
- elm.setAttribute(key, "");
311
- } else if (cur === false) {
312
- elm.removeAttribute(key);
313
- } else {
314
- if (key.charCodeAt(0) !== xChar) {
315
- elm.setAttribute(key, cur);
316
- } else if (key.charCodeAt(3) === colonChar) {
317
- elm.setAttributeNS(xmlNS, key, cur);
318
- } else if (key.charCodeAt(5) === colonChar) {
319
- elm.setAttributeNS(xlinkNS, key, cur);
320
- } else {
321
- elm.setAttribute(key, `${cur}`);
322
- }
323
- }
324
- }
325
- }
326
- for (key in oldAttrs) {
327
- if (!(key in attrs)) {
328
- elm.removeAttribute(key);
329
- }
330
- }
331
- }
332
- const attributesModule = { create: updateAttrs, update: updateAttrs };
333
- function updateClass(oldVnode, vnode2) {
334
- let cur;
335
- let name;
336
- const elm = vnode2.elm;
337
- let oldClass = oldVnode.data && oldVnode.data.class;
338
- let className = vnode2.data && vnode2.data.class;
339
- if (!oldClass && !className)
340
- return;
341
- if (oldClass === className)
342
- return;
343
- oldClass = oldClass || {};
344
- className = className || {};
345
- for (name in oldClass) {
346
- if (oldClass[name] && !Object.prototype.hasOwnProperty.call(className, name)) {
347
- elm.classList.remove(name);
348
- }
349
- }
350
- for (name in className) {
351
- cur = className[name];
352
- if (cur !== oldClass[name]) {
353
- elm.classList[cur ? "add" : "remove"](name);
354
- }
355
- }
356
- }
357
- const classModule = { create: updateClass, update: updateClass };
358
- const isFunction = (handler) => {
359
- return typeof handler === "function";
360
- };
361
- function invokeHandler(handler, vnode2, event) {
362
- if (isFunction(handler)) {
363
- handler.call(vnode2, event, vnode2);
364
- } else if (typeof handler === "object") {
365
- for (let i = 0; i < handler.length; i++) {
366
- invokeHandler(handler[i], vnode2, event);
367
- }
368
- }
369
- }
370
- function handleEvent(event, vnode2) {
371
- const name = event.type;
372
- const on = vnode2.data && vnode2.data.on;
373
- if (on && on[name]) {
374
- invokeHandler(on[name], vnode2, event);
375
- }
376
- }
377
- function createListener() {
378
- return function handler(event) {
379
- handleEvent(event, handler.vnode);
380
- };
381
- }
382
- function updateEventListeners(oldVnode, vnode2) {
383
- var _a, _b;
384
- const oldOn = (_a = oldVnode == null ? void 0 : oldVnode.data) == null ? void 0 : _a.on;
385
- const oldListener = oldVnode == null ? void 0 : oldVnode.listener;
386
- const oldElm = oldVnode.elm;
387
- const on = (_b = vnode2 == null ? void 0 : vnode2.data) == null ? void 0 : _b.on;
388
- const elm = vnode2 && vnode2.elm;
389
- let name;
390
- if (oldOn === on) {
391
- return;
392
- }
393
- if (oldOn && oldListener) {
394
- if (!on) {
395
- for (name in oldOn) {
396
- oldElm.removeEventListener(name, oldListener, false);
397
- }
398
- } else {
399
- for (name in oldOn) {
400
- if (!on[name]) {
401
- oldElm.removeEventListener(name, oldListener, false);
402
- }
403
- }
404
- }
405
- }
406
- if (on) {
407
- const listener = vnode2.listener = oldVnode.listener || createListener();
408
- if (!oldOn) {
409
- for (name in on) {
410
- elm.addEventListener(name, listener, false);
411
- }
412
- } else {
413
- for (name in on) {
414
- if (!oldOn[name]) {
415
- elm.addEventListener(name, listener, false);
416
- }
417
- }
418
- }
419
- }
420
- }
421
- const eventListenersModule = {
422
- create: updateEventListeners,
423
- update: updateEventListeners,
424
- destroy: updateEventListeners
425
- };
426
- function updateProps(oldVnode, vnode2) {
427
- let key;
428
- let cur;
429
- let old;
430
- const elm = vnode2.elm;
431
- let oldProps = oldVnode.data ? oldVnode.data.props : void 0;
432
- let props = vnode2.data ? vnode2.data.props : void 0;
433
- if (!oldProps && !props)
434
- return;
435
- if (oldProps === props)
436
- return;
437
- oldProps = oldProps || {};
438
- props = props || {};
439
- for (key in props) {
440
- cur = props[key];
441
- old = oldProps[key];
442
- if (old !== cur && (key !== "value" || elm[key] !== cur)) {
443
- elm[key] = cur;
444
- }
445
- }
446
- }
447
- const propsModule = { create: updateProps, update: updateProps };
448
- let reflowForced = false;
449
- function updateStyle(oldVnode, vnode2) {
450
- let cur;
451
- let name;
452
- const elm = vnode2.elm;
453
- let oldStyle = oldVnode.data.style;
454
- let style = vnode2.data.style;
455
- if (!oldStyle && !style)
456
- return;
457
- if (oldStyle === style)
458
- return;
459
- oldStyle = oldStyle || {};
460
- style = style || {};
461
- for (name in oldStyle) {
462
- if (!style[name]) {
463
- if (name[0] === "-" && name[1] === "-") {
464
- elm.style.removeProperty(name);
465
- } else {
466
- elm.style[name] = "";
467
- }
468
- }
469
- }
470
- for (name in style) {
471
- cur = style[name];
472
- if (cur !== oldStyle[name]) {
473
- if (name[0] === "-" && name[1] === "-") {
474
- elm.style.setProperty(name, cur);
475
- } else {
476
- elm.style[name] = cur;
477
- }
478
- }
479
- }
480
- }
481
- function forceReflow() {
482
- reflowForced = false;
483
- }
484
- function applyDestroyStyle(vnode2) {
485
- let style;
486
- let name;
487
- const elm = vnode2.elm;
488
- const s = vnode2.data.style;
489
- if (!s || !(style = s.destroy))
490
- return;
491
- for (name in style) {
492
- elm.style[name] = style[name];
493
- }
494
- }
495
- function applyRemoveStyle(vnode2, rm) {
496
- const s = vnode2.data.style;
497
- if (!s || !s.remove) {
498
- rm();
499
- return;
500
- }
501
- if (!reflowForced) {
502
- vnode2.elm.offsetLeft;
503
- reflowForced = true;
504
- }
505
- let name;
506
- const elm = vnode2.elm;
507
- let i = 0;
508
- const style = s.remove;
509
- let amount = 0;
510
- const applied = [];
511
- for (name in style) {
512
- applied.push(name);
513
- elm.style[name] = style[name];
514
- }
515
- const compStyle = getComputedStyle(elm);
516
- const props = compStyle["transition-property"].split(", ");
517
- for (; i < props.length; ++i) {
518
- if (applied.indexOf(props[i]) !== -1)
519
- amount++;
520
- }
521
- elm.addEventListener(
522
- "transitionend",
523
- function(ev) {
524
- if (ev.target === elm)
525
- --amount;
526
- if (amount === 0)
527
- rm();
528
- }
529
- );
530
- }
531
- const styleModule = {
532
- pre: forceReflow,
533
- create: updateStyle,
534
- update: updateStyle,
535
- destroy: applyDestroyStyle,
536
- remove: applyRemoveStyle
537
- };
538
- const modules = {
539
- attributesModule,
540
- classModule,
541
- eventListenersModule,
542
- propsModule,
543
- styleModule
544
- };
545
- function sameVnode(vnode1, vnode2) {
546
- return vnode1.key === vnode2.key && vnode1.sel === vnode2.sel;
547
- }
548
- function isVnode(vnode2) {
549
- return vnode2.sel !== void 0;
550
- }
551
- function createKeyToOldIdx(children, beginIdx, endIdx) {
552
- var _a;
553
- const map = {};
554
- for (let i = beginIdx; i <= endIdx; ++i) {
555
- const key = (_a = children[i]) == null ? void 0 : _a.key;
556
- if (key !== void 0) {
557
- map[key] = i;
558
- }
559
- }
560
- return map;
561
- }
562
- const emptyNode = vnode$1("", {}, [], void 0, void 0);
563
- function init() {
564
- const api = htmlDomApi;
565
- const cbs = {
566
- create: [],
567
- update: [],
568
- destroy: []
569
- };
570
- for (const key of Object.keys(cbs)) {
571
- cbs[key] = [];
572
- for (const module of Object.keys(modules)) {
573
- const hook = modules[module][key];
574
- if (hook !== void 0) {
575
- cbs[key].push(hook);
576
- }
577
- }
578
- }
579
- function emptyNodeAt(elm) {
580
- const id = elm.id ? "#" + elm.id : "";
581
- const c = elm.className ? "." + elm.className.split(" ").join(".") : "";
582
- return vnode$1(
583
- api.tagName(elm).toLowerCase() + id + c,
584
- {},
585
- [],
586
- void 0,
587
- elm
588
- );
589
- }
590
- function isUndef(s) {
591
- return s === void 0;
592
- }
593
- function isDef(s) {
594
- return s !== void 0;
595
- }
596
- function createElm(vnode2) {
597
- let i;
598
- const children = vnode2.children;
599
- const sel = vnode2.sel;
600
- if (sel === "!") {
601
- if (isUndef(vnode2.text)) {
602
- vnode2.text = "";
603
- }
604
- vnode2.elm = api.createComment(`${vnode2.text}`);
605
- } else if (sel !== void 0) {
606
- const hashIdx = sel.indexOf("#");
607
- const dotIdx = sel.indexOf(".", hashIdx);
608
- const hash = hashIdx > 0 ? hashIdx : sel.length;
609
- const dot = dotIdx > 0 ? dotIdx : sel.length;
610
- const tag = hashIdx !== -1 || dotIdx !== -1 ? sel.slice(0, Math.min(hash, dot)) : sel;
611
- const elm = vnode2.elm = api.createElement(tag);
612
- if (hash < dot)
613
- elm.setAttribute("id", sel.slice(hash + 1, dot));
614
- if (dotIdx > 0)
615
- elm.setAttribute("class", sel.slice(dot + 1).replace(/\./g, " "));
616
- for (i = 0; i < cbs.create.length; ++i) {
617
- cbs.create[i](emptyNode, vnode2);
618
- }
619
- if (array(children)) {
620
- for (i = 0; i < children.length; ++i) {
621
- const ch = children[i];
622
- if (ch != null) {
623
- api.appendChild(elm, createElm(ch));
624
- }
625
- }
626
- } else if (primitive(vnode2.text)) {
627
- api.appendChild(elm, api.createTextNode(`${vnode2.text}`));
628
- }
629
- } else {
630
- vnode2.elm = api.createTextNode(`${vnode2.text}`);
631
- }
632
- return vnode2.elm;
633
- }
634
- function addVnodes(parentElm, before, vnodes, startIdx, endIdx) {
635
- for (; startIdx <= endIdx; ++startIdx) {
636
- const ch = vnodes[startIdx];
637
- if (ch != null) {
638
- api.insertBefore(parentElm, createElm(ch), before);
639
- }
640
- }
641
- }
642
- function invokeDestroyHook(vnode2) {
643
- const data = vnode2.data;
644
- if (data !== void 0) {
645
- for (let i = 0; i < cbs.destroy.length; ++i)
646
- cbs.destroy[i](vnode2);
647
- if (vnode2.children !== void 0) {
648
- for (let j = 0; j < vnode2.children.length; ++j) {
649
- const child = vnode2.children[j];
650
- if (child != null && typeof child !== "string" && typeof child !== "number") {
651
- invokeDestroyHook(child);
652
- }
653
- }
654
- }
655
- }
656
- }
657
- function createRmCb(childElm) {
658
- return function rmCb() {
659
- const parent = api.parentNode(childElm);
660
- api.removeChild(parent, childElm);
661
- };
662
- }
663
- function removeVnodes(parentElm, vnodes, startIdx, endIdx) {
664
- for (; startIdx <= endIdx; ++startIdx) {
665
- let rm;
666
- const ch = vnodes[startIdx];
667
- if (ch != null) {
668
- if (isDef(ch.sel)) {
669
- invokeDestroyHook(ch);
670
- rm = createRmCb(ch.elm);
671
- rm();
672
- } else {
673
- api.removeChild(parentElm, ch.elm);
674
- }
675
- }
676
- }
677
- }
678
- function updateChildren(parentElm, oldCh, newCh) {
679
- let oldStartIdx = 0;
680
- let newStartIdx = 0;
681
- let oldEndIdx = oldCh.length - 1;
682
- let newEndIdx = newCh.length - 1;
683
- let oldStartVnode = oldCh[0];
684
- let oldEndVnode = oldCh[oldEndIdx];
685
- let newStartVnode = newCh[0];
686
- let newEndVnode = newCh[newEndIdx];
687
- let oldKeyToIdx;
688
- let idxInOld;
689
- let elmToMove;
690
- let before;
691
- while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {
692
- if (oldStartVnode == null) {
693
- oldStartVnode = oldCh[++oldStartIdx];
694
- } else if (oldEndVnode == null) {
695
- oldEndVnode = oldCh[--oldEndIdx];
696
- } else if (newStartVnode == null) {
697
- newStartVnode = newCh[++newStartIdx];
698
- } else if (newEndVnode == null) {
699
- newEndVnode = newCh[--newEndIdx];
700
- } else if (sameVnode(oldStartVnode, newStartVnode)) {
701
- patchVnode(oldStartVnode, newStartVnode);
702
- oldStartVnode = oldCh[++oldStartIdx];
703
- newStartVnode = newCh[++newStartIdx];
704
- } else if (sameVnode(oldEndVnode, newEndVnode)) {
705
- patchVnode(oldEndVnode, newEndVnode);
706
- oldEndVnode = oldCh[--oldEndIdx];
707
- newEndVnode = newCh[--newEndIdx];
708
- } else if (sameVnode(oldStartVnode, newEndVnode)) {
709
- patchVnode(oldStartVnode, newEndVnode);
710
- api.insertBefore(
711
- parentElm,
712
- oldStartVnode.elm,
713
- api.nextSibling(oldEndVnode.elm)
714
- );
715
- oldStartVnode = oldCh[++oldStartIdx];
716
- newEndVnode = newCh[--newEndIdx];
717
- } else if (sameVnode(oldEndVnode, newStartVnode)) {
718
- patchVnode(oldEndVnode, newStartVnode);
719
- api.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);
720
- oldEndVnode = oldCh[--oldEndIdx];
721
- newStartVnode = newCh[++newStartIdx];
722
- } else {
723
- if (oldKeyToIdx === void 0) {
724
- oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx);
725
- }
726
- idxInOld = oldKeyToIdx[newStartVnode.key];
727
- if (isUndef(idxInOld)) {
728
- api.insertBefore(
729
- parentElm,
730
- createElm(newStartVnode),
731
- oldStartVnode.elm
732
- );
733
- } else {
734
- elmToMove = oldCh[idxInOld];
735
- if (elmToMove.sel !== newStartVnode.sel) {
736
- api.insertBefore(
737
- parentElm,
738
- createElm(newStartVnode),
739
- oldStartVnode.elm
740
- );
741
- } else {
742
- patchVnode(elmToMove, newStartVnode);
743
- oldCh[idxInOld] = void 0;
744
- api.insertBefore(parentElm, elmToMove.elm, oldStartVnode.elm);
745
- }
746
- }
747
- newStartVnode = newCh[++newStartIdx];
748
- }
749
- }
750
- if (oldStartIdx <= oldEndIdx || newStartIdx <= newEndIdx) {
751
- if (oldStartIdx > oldEndIdx) {
752
- before = newCh[newEndIdx + 1] == null ? null : newCh[newEndIdx + 1].elm;
753
- addVnodes(parentElm, before, newCh, newStartIdx, newEndIdx);
754
- } else {
755
- removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx);
756
- }
757
- }
758
- }
759
- function patchVnode(oldVnode, vnode2) {
760
- if (vnode2.data !== void 0) {
761
- for (let i = 0; i < cbs.update.length; ++i) {
762
- cbs.update[i](oldVnode, vnode2);
763
- }
764
- }
765
- const elm = vnode2.elm = oldVnode.elm;
766
- const oldCh = oldVnode.children;
767
- const ch = vnode2.children;
768
- if (oldVnode === vnode2)
769
- return;
770
- if (isUndef(vnode2.text)) {
771
- if (isDef(oldCh) && isDef(ch)) {
772
- if (oldCh !== ch) {
773
- updateChildren(elm, oldCh, ch);
774
- }
775
- }
776
- }
777
- }
778
- return function patch(oldVnode, vnode2) {
779
- let elm, parent;
780
- if (!isVnode(oldVnode)) {
781
- oldVnode = emptyNodeAt(oldVnode);
782
- }
783
- if (sameVnode(oldVnode, vnode2)) {
784
- patchVnode(oldVnode, vnode2);
785
- } else {
786
- elm = oldVnode.elm;
787
- parent = api.parentNode(elm);
788
- createElm(vnode2);
789
- if (parent != null) {
790
- api.insertBefore(parent, vnode2.elm, api.nextSibling(elm));
791
- removeVnodes(parent, [oldVnode], 0, 0);
792
- }
793
- }
794
- return vnode2;
795
- };
796
- }
797
- function addNS(data, children, sel) {
798
- data.ns = "http://www.w3.org/2000/svg";
799
- if (sel !== "foreignObject" && children !== void 0) {
800
- for (let i = 0; i < children.length; ++i) {
801
- const child = children[i];
802
- if (typeof child === "string" || typeof child === "number")
803
- continue;
804
- const childData = child.data;
805
- if (childData !== void 0) {
806
- addNS(childData, child.children, child.sel);
807
- }
808
- }
809
- }
810
- }
811
- function h(sel, b, c) {
812
- let data = {};
813
- let children = void 0;
814
- let text;
815
- let i;
816
- if (c !== void 0) {
817
- if (b != null) {
818
- data = b;
819
- }
820
- if (array(c)) {
821
- children = c;
822
- } else if (primitive(c)) {
823
- text = c;
824
- } else if (c && c.sel) {
825
- children = [c];
826
- }
827
- } else if (b !== void 0 && b != null) {
828
- if (array(b)) {
829
- children = b;
830
- } else if (primitive(b)) {
831
- text = b;
832
- } else {
833
- if (isVnode$1(b)) {
834
- children = [b];
835
- } else {
836
- data = b;
837
- }
838
- }
839
- }
840
- if (typeof children !== "undefined") {
841
- for (i = 0; i < children.length; ++i) {
842
- const msg = children[i];
843
- if (primitive(msg)) {
844
- children[i] = vnode$1(void 0, void 0, void 0, msg, void 0);
845
- }
846
- }
847
- }
848
- if (sel[0] === "s" && sel[1] === "v" && sel[2] === "g" && (sel.length === 3 || sel[3] === "." || sel[3] === "#")) {
849
- addNS(data, children, sel);
850
- }
851
- return vnode$1(sel, data, children, text, void 0);
852
- }
853
- const getAllQueryString = (url) => {
854
- if (typeof window !== "undefined") {
855
- const r = {};
856
- const href = url || window.location.href;
857
- if (href.split("?")[1]) {
858
- const str = href.split("?")[1];
859
- const strList = str.split("&");
860
- strList.forEach((item) => {
861
- const [key, val] = item.split("=");
862
- if (key && val) {
863
- r[key] = decodeURIComponent(val);
864
- }
865
- });
866
- }
867
- return r;
868
- }
869
- return {};
870
- };
871
- function getFreshUrl(url, params = {}) {
872
- let _url = url;
873
- if (_url.indexOf("//") === 0) {
874
- _url = _url.replace("//", "https://");
875
- }
876
- const urlObj = new URL(_url);
877
- if (params) {
878
- Object.keys(params).forEach((key) => {
879
- params[key] && urlObj.searchParams.set(key, params[key]);
880
- });
881
- }
882
- return urlObj.href;
883
- }
884
- const debounce = (fn, ms = 500) => {
885
- let timeout;
886
- return (...args) => {
887
- clearTimeout(timeout);
888
- timeout = setTimeout(() => {
889
- fn.apply(void 0, args);
890
- }, ms);
891
- };
892
- };
893
- const throttle$1 = (fn, wait = 300) => {
894
- let timer;
895
- return function() {
896
- const context = this;
897
- const args = arguments;
898
- if (!timer) {
899
- timer = setTimeout(() => {
900
- timer = null;
901
- fn.apply(context, args);
902
- }, wait);
903
- }
904
- };
905
- };
906
- const requestAnimation = (fn) => {
907
- let ticking = false;
908
- return function() {
909
- const context = this;
910
- const args = arguments;
911
- if (!ticking) {
912
- window.requestAnimationFrame(function() {
913
- fn.apply(context, args);
914
- ticking = false;
915
- });
916
- ticking = true;
917
- }
918
- };
919
- };
920
- const memoize = (fn) => {
921
- let cache = false;
922
- let result = void 0;
923
- return (...args) => {
924
- if (cache) {
925
- return result;
926
- } else {
927
- result = typeof fn === "function" ? fn(...args) : fn;
928
- cache = true;
929
- fn = void 0;
930
- return result;
931
- }
932
- };
933
- };
934
- const mergeExports = (obj, exports) => {
935
- const descriptors = Object.getOwnPropertyDescriptors(exports);
936
- for (const name of Object.keys(descriptors)) {
937
- const descriptor = descriptors[name];
938
- if (descriptor.get) {
939
- const fn = descriptor.get;
940
- Object.defineProperty(obj, name, {
941
- configurable: false,
942
- enumerable: true,
943
- get: memoize(fn)
944
- });
945
- } else if (typeof descriptor.value === "object") {
946
- Object.defineProperty(obj, name, {
947
- configurable: false,
948
- enumerable: true,
949
- writable: false,
950
- value: mergeExports({}, descriptor.value)
951
- });
952
- } else {
953
- throw new Error(
954
- "Exposed values must be either a getter or an nested object"
955
- );
956
- }
957
- }
958
- return Object.freeze(obj);
959
- };
960
- const noop = () => {
961
- };
962
- const judgeDevice = () => {
963
- const ua = navigator.userAgent.toLowerCase();
964
- if (/ipad|ipod/.test(ua)) {
965
- return "ipad";
966
- } else if (/android|iphone/.test(ua)) {
967
- return "mobile";
968
- }
969
- return "pc";
970
- };
971
- const isClient = typeof window !== "undefined";
972
- const isWeiXin = () => {
973
- if (isClient) {
974
- const ua = window.navigator.userAgent.toLowerCase();
975
- return ua.includes("micromessenger");
976
- }
977
- return false;
978
- };
979
- const scriptOnLoad = (urls, append, callback) => {
980
- urls = Array.isArray(urls) ? urls : [urls];
981
- const array2 = urls.map((src) => {
982
- const cssReg = /\w*.css$/;
983
- let script;
984
- if (cssReg.test(src)) {
985
- const link = document.createElement("link");
986
- link.type = "text/css";
987
- link.rel = "stylesheet";
988
- link.href = src;
989
- script = link;
990
- } else {
991
- script = document.createElement("script");
992
- script.type = "text/javascript";
993
- script.src = src;
994
- }
995
- const bodyElement = document.getElementsByTagName("body")[0];
996
- const currentAppend = append || bodyElement;
997
- currentAppend.appendChild(script);
998
- return new Promise((resolve) => {
999
- script.onload = () => {
1000
- resolve();
1001
- };
1002
- });
1003
- });
1004
- return new Promise((resolve) => {
1005
- Promise.all(array2).then(() => {
1006
- if (typeof callback === "function") {
1007
- callback();
1008
- }
1009
- resolve();
1010
- });
1011
- });
1012
- };
1013
- const isMobile = () => {
1014
- const ua = window.navigator.userAgent;
1015
- if (/Android|webOS|iPhone|iPod|iPad|BlackBerry/i.test(ua)) {
1016
- return true;
1017
- }
1018
- return false;
1019
- };
1020
- const isImageSize = (file, width, height) => {
1021
- return new Promise((resolve) => {
1022
- const _URL = window.URL || window.webkitURL;
1023
- const img = new Image();
1024
- img.onload = function() {
1025
- let valid = false;
1026
- if (width) {
1027
- valid = img.width === width;
1028
- }
1029
- if (height) {
1030
- valid = img.height === height;
1031
- }
1032
- _URL.revokeObjectURL(img.src);
1033
- resolve(valid);
1034
- };
1035
- img.src = _URL.createObjectURL(file);
1036
- });
1037
- };
1038
- const retain = (callback = noop) => {
1039
- const historyReturnCb = () => {
1040
- callback();
1041
- window.removeEventListener("popstate", historyReturnCb);
1042
- };
1043
- window.history.pushState(
1044
- null,
1045
- "",
1046
- window.location.href
1047
- );
1048
- setTimeout(() => {
1049
- window.addEventListener("popstate", historyReturnCb);
1050
- }, 500);
1051
- };
1052
- const removeGhosting = (event) => {
1053
- const dragIcon = document.createElement("img");
1054
- const url = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";
1055
- dragIcon.src = url;
1056
- dragIcon.width = 0;
1057
- dragIcon.height = 0;
1058
- dragIcon.style.opacity = "0";
1059
- if (event.dataTransfer) {
1060
- event.dataTransfer.setDragImage(dragIcon, 0, 0);
1061
- }
1062
- };
1063
- function formatDuration(time) {
1064
- return time < 10 ? `0${time}` : time;
1065
- }
1066
- function timestampToTime(timestamp = null, returnType = 1) {
1067
- let date = new Date();
1068
- if (timestamp) {
1069
- date = new Date(timestamp);
1070
- }
1071
- const year = date.getFullYear();
1072
- const month = formatDuration(date.getMonth() + 1);
1073
- const day = formatDuration(date.getDate());
1074
- const hour = formatDuration(date.getHours());
1075
- const minute = formatDuration(date.getMinutes());
1076
- const second = formatDuration(date.getSeconds());
1077
- let timeRes = "";
1078
- switch (returnType) {
1079
- case 1:
1080
- timeRes = `${year}-${month}-${day} ${hour}-${minute}-${second}`;
1081
- break;
1082
- case 2:
1083
- timeRes = `${year}-${month}-${day} ${hour}:${minute}:${second}`;
1084
- break;
1085
- case 3:
1086
- timeRes = `${year}-${month}-${day}`;
1087
- break;
1088
- case 4:
1089
- timeRes = `${month}\u6708${day}`;
1090
- break;
1091
- }
1092
- return timeRes;
1093
- }
1094
- function querystring$1(data = {}) {
1095
- if (typeof data !== "object") {
1096
- throw new TypeError("param must be object");
1097
- }
1098
- return Object.entries(data).reduce(
1099
- (searchParams, [name, value]) => value === void 0 || value === null ? searchParams : (searchParams.append(decodeURIComponent(name), decodeURIComponent(value)), searchParams),
1100
- new URLSearchParams()
1101
- ).toString();
1102
- }
1103
- const transitionJsonToString = (jsonObj, callback = (error) => {
1104
- }) => {
1105
- let _jsonObj = "";
1106
- if (Object.prototype.toString.call(jsonObj) !== "[object String]") {
1107
- try {
1108
- _jsonObj = JSON.stringify(jsonObj);
1109
- } catch (error) {
1110
- callback(error);
1111
- }
1112
- } else {
1113
- try {
1114
- jsonObj = typeof jsonObj === "string" ? jsonObj.replace(/(')/g, '"') : JSON.stringify(jsonObj);
1115
- _jsonObj = JSON.stringify(JSON.parse(jsonObj));
1116
- } catch (error) {
1117
- callback(error);
1118
- }
1119
- }
1120
- return _jsonObj;
1121
- };
1122
- const formatJson = (jsonObj, callback = () => {
1123
- }) => {
1124
- let formatted = "";
1125
- let pad = 0;
1126
- const PADDING = " ";
1127
- let jsonString = transitionJsonToString(jsonObj, callback);
1128
- if (!jsonString) {
1129
- return jsonString;
1130
- }
1131
- const _index = [];
1132
- let _indexStart = null;
1133
- let _indexEnd = null;
1134
- let jsonArray = [];
1135
- jsonString = jsonString.replace(/([{}])/g, "\r\n$1\r\n");
1136
- jsonString = jsonString.replace(/([[\]])/g, "\r\n$1\r\n");
1137
- jsonString = jsonString.replace(/(,)/g, "$1\r\n");
1138
- jsonString = jsonString.replace(/(\r\n\r\n)/g, "\r\n");
1139
- jsonString = jsonString.replace(/\r\n,/g, ",");
1140
- jsonArray = jsonString.split("\r\n");
1141
- jsonArray.forEach(function(node, index) {
1142
- var _a;
1143
- const num = node.match(/"/g) ? ((_a = node.match(/"/g)) == null ? void 0 : _a.length) || 0 : 0;
1144
- if (num % 2 && !_indexStart) {
1145
- _indexStart = index;
1146
- }
1147
- if (num % 2 && _indexStart && _indexStart != index) {
1148
- _indexEnd = index;
1149
- }
1150
- if (_indexStart && _indexEnd) {
1151
- _index.push({
1152
- start: _indexStart,
1153
- end: _indexEnd
1154
- });
1155
- _indexStart = null;
1156
- _indexEnd = null;
1157
- }
1158
- });
1159
- _index.reverse().forEach(function(item, index) {
1160
- const newArray = jsonArray.slice(item.start, item.end + 1);
1161
- jsonArray.splice(item.start, item.end + 1 - item.start, newArray.join(""));
1162
- });
1163
- jsonString = jsonArray.join("\r\n");
1164
- jsonString = jsonString.replace(/:\r\n\{/g, ":{");
1165
- jsonString = jsonString.replace(/:\r\n\[/g, ":[");
1166
- jsonArray = jsonString.split("\r\n");
1167
- jsonArray.forEach(function(item, index) {
1168
- let i = 0;
1169
- let indent = 0;
1170
- let padding = "";
1171
- if (item.match(/\{$/) || item.match(/\[$/)) {
1172
- indent += 1;
1173
- } else if (item.match(/\}$/) || item.match(/\]$/) || item.match(/\},$/) || item.match(/\],$/)) {
1174
- if (pad !== 0) {
1175
- pad -= 1;
1176
- }
1177
- } else {
1178
- indent = 0;
1179
- }
1180
- for (i = 0; i < pad; i++) {
1181
- padding += PADDING;
1182
- }
1183
- formatted += padding + item + "\r\n";
1184
- pad += indent;
1185
- });
1186
- return formatted.trim();
1187
- };
1188
- const getCookie$1 = (objName) => {
1189
- const arrStr = document.cookie.split("; ");
1190
- for (let i = 0; i < arrStr.length; i++) {
1191
- const item = arrStr[i].split("=");
1192
- if (item[0] == objName) {
1193
- return decodeURIComponent(item[1]);
1194
- }
1195
- }
1196
- return "";
1197
- };
1198
- const handleClick = (hooks = noop) => {
1199
- if (typeof document !== "undefined") {
1200
- document.addEventListener(
1201
- "click",
1202
- function(event) {
1203
- hooks(event);
1204
- },
1205
- true
1206
- );
1207
- }
1208
- };
1209
- const handleError = (hooks = noop) => {
1210
- if (typeof window !== "undefined") {
1211
- window.addEventListener(
1212
- "unhandledrejection",
1213
- (error) => {
1214
- hooks(error);
1215
- },
1216
- true
1217
- );
1218
- window.addEventListener(
1219
- "error",
1220
- (error) => {
1221
- hooks(error);
1222
- return false;
1223
- },
1224
- true
1225
- );
1226
- }
1227
- };
1228
- function getPerformance() {
1229
- if (typeof window !== "undefined") {
1230
- const [performanceNavigationTiming] = performance.getEntriesByType("navigation");
1231
- const [firstPaint = {}, firstContentfulPaint = {}] = performance.getEntriesByType("paint");
1232
- const { startTime: fp } = firstPaint;
1233
- const { startTime: fcp } = firstContentfulPaint;
1234
- const {
1235
- domainLookupEnd,
1236
- domainLookupStart,
1237
- connectEnd,
1238
- connectStart,
1239
- secureConnectionStart,
1240
- loadEventStart,
1241
- domInteractive,
1242
- domContentLoadedEventEnd,
1243
- duration,
1244
- responseStart,
1245
- requestStart,
1246
- responseEnd,
1247
- fetchStart,
1248
- transferSize,
1249
- encodedBodySize,
1250
- redirectEnd,
1251
- redirectStart,
1252
- redirectCount
1253
- } = performanceNavigationTiming;
1254
- return {
1255
- dnsSearch: domainLookupEnd - domainLookupStart,
1256
- tcpConnect: connectEnd - connectStart,
1257
- sslConnect: connectEnd - secureConnectionStart,
1258
- request: responseStart - requestStart,
1259
- response: responseEnd - responseStart,
1260
- parseDomTree: domInteractive - responseEnd,
1261
- resource: loadEventStart - domContentLoadedEventEnd,
1262
- domReady: domContentLoadedEventEnd - fetchStart,
1263
- interactive: domInteractive - fetchStart,
1264
- complete: loadEventStart - fetchStart,
1265
- httpHead: transferSize - encodedBodySize,
1266
- redirect: redirectCount,
1267
- redirectTime: redirectEnd - redirectStart,
1268
- duration,
1269
- fp,
1270
- fcp
1271
- };
1272
- }
1273
- }
1274
- function querystring(data = {}) {
1275
- if (typeof data !== "object") {
1276
- throw new TypeError("param must be object");
1277
- }
1278
- return Object.entries(data).reduce(
1279
- (searchParams, [name, value]) => value === void 0 || value == null ? searchParams : (searchParams.append(
1280
- decodeURIComponent(name),
1281
- decodeURIComponent(value)
1282
- ), searchParams),
1283
- new URLSearchParams()
1284
- ).toString();
1285
- }
1286
- function randomString(len = 8) {
1287
- const chars = "ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678";
1288
- const maxPos = chars.length;
1289
- let pwd = "";
1290
- for (let i = 0; i < len; i++) {
1291
- pwd += chars.charAt(Math.floor(Math.random() * maxPos));
1292
- }
1293
- return `${Date.now()}-${pwd}`;
1294
- }
1295
- function getCookie(name) {
1296
- if (typeof window !== "undefined") {
1297
- const cookieList = document.cookie.match(
1298
- new RegExp(`(^| )${name}(?:=([^;]*))?(;|$)`)
1299
- );
1300
- if (cookieList && cookieList[2])
1301
- return cookieList[2];
1302
- }
1303
- return "";
1304
- }
1305
- const getWindow = () => {
1306
- if (typeof window.innerWidth !== "undefined") {
1307
- return {
1308
- width: window.innerWidth,
1309
- height: window.innerHeight
1310
- };
1311
- }
1312
- return {
1313
- width: 0,
1314
- height: 0
1315
- };
1316
- };
1317
- function createData(params = {}) {
1318
- if (typeof window !== "undefined") {
1319
- const { width, height } = getWindow();
1320
- return Object.assign(
1321
- {},
1322
- {
1323
- id: randomString(),
1324
- path: window.location.href,
1325
- time: Date.now(),
1326
- referrer: document.referrer,
1327
- ip: window.returnCitySN || { cid: "", cip: "", cname: "" },
1328
- userId: getCookie("chaxus_prod"),
1329
- ratio: `${width}x${height}`,
1330
- userAgent: window.navigator.userAgent
1331
- },
1332
- params
1333
- );
1334
- }
1335
- return {};
1336
- }
1337
- const throttle = (fn, wait = 500) => {
1338
- let timer = null;
1339
- return function(...args) {
1340
- const context = this;
1341
- if (!timer) {
1342
- timer = setTimeout(() => {
1343
- timer = null;
1344
- fn.apply(context, args);
1345
- }, wait);
1346
- }
1347
- };
1348
- };
1349
- function replaceOld(source, name, replacement, isForced) {
1350
- if (typeof source === "undefined")
1351
- return;
1352
- if (name in source || isForced) {
1353
- const original = source[name];
1354
- const wrapped = replacement(original);
1355
- if (typeof wrapped === "function") {
1356
- source[name] = wrapped;
1357
- }
1358
- }
1359
- }
1360
- const isString = (obj) => {
1361
- return toString.call(obj) === "[object String]";
1362
- };
1363
- const getHost = (env) => {
1364
- if (typeof window !== "undefined") {
1365
- if (env && isString(env)) {
1366
- if (/trunk|neibu|release/.test(env))
1367
- ;
1368
- else if (/test/.test(env))
1369
- ;
1370
- else if (/prod/.test(env))
1371
- ;
1372
- else
1373
- ;
1374
- } else {
1375
- const env2 = /\w(\.trunk|\.neibu|\.release|test)\./.exec(
1376
- window.location.hostname
1377
- );
1378
- if (env2) {
1379
- env2[1];
1380
- }
1381
- }
1382
- return "//log.chaxus.com";
1383
- }
1384
- };
1385
- const sendBeacon = ({
1386
- url = "",
1387
- type = "application/json; charset=UTF-8",
1388
- payload = {}
1389
- }) => {
1390
- const requestUrl = url ? url : getHost();
1391
- if (navigator.sendBeacon && requestUrl) {
1392
- const param = new Blob([JSON.stringify(payload)], { type });
1393
- return navigator.sendBeacon(requestUrl, param);
1394
- }
1395
- };
1396
- const sendImage = ({ url = "", payload = {} }) => {
1397
- const requestUrl = url ? url : getHost();
1398
- if (typeof document !== "undefined" && requestUrl) {
1399
- const image = new Image();
1400
- image.width = 1;
1401
- image.height = 1;
1402
- image.src = `${requestUrl}?${querystring(payload)}`;
1403
- }
1404
- };
1405
- const report = ({
1406
- url = "",
1407
- type = "application/json; charset=UTF-8",
1408
- payload = {}
1409
- }) => {
1410
- const requestUrl = url ? url : getHost();
1411
- if (typeof navigator !== "undefined") {
1412
- return sendBeacon({ url: requestUrl, type, payload });
1413
- }
1414
- return sendImage({ url: requestUrl, payload });
1415
- };
1416
- const handleFetchHook = (options = {}) => {
1417
- if (typeof window !== "undefined") {
1418
- const {
1419
- requestHook = noop,
1420
- responseHook = noop,
1421
- errorHook = noop
1422
- } = options;
1423
- const replacement = (originalFetch) => {
1424
- return (url, config) => {
1425
- requestHook(url, config);
1426
- return originalFetch.apply(window, [url, config]).then((response) => {
1427
- responseHook(url, config, response);
1428
- return response;
1429
- }).catch((error) => {
1430
- errorHook(url, error);
1431
- throw error;
1432
- });
1433
- };
1434
- };
1435
- replaceOld(window, "fetch", replacement);
1436
- }
1437
- };
1438
- const handleXhrHook = (options = {}) => {
1439
- if (typeof window !== "undefined") {
1440
- const originalXhrProto = XMLHttpRequest.prototype;
1441
- const {
1442
- requestHook = noop,
1443
- responseHook = noop,
1444
- errorHook = noop
1445
- } = options;
1446
- const replacementXhrOpen = (originalOpen) => {
1447
- return function(...args) {
1448
- requestHook(args);
1449
- originalOpen.apply(this, args);
1450
- };
1451
- };
1452
- replaceOld(originalXhrProto, "open", replacementXhrOpen);
1453
- const replacementXhrSend = (originalSend) => {
1454
- return function(...args) {
1455
- this.addEventListener("loadend", function() {
1456
- responseHook(this);
1457
- });
1458
- this.addEventListener("error", function() {
1459
- errorHook(this);
1460
- });
1461
- originalSend.apply(this, args);
1462
- };
1463
- };
1464
- replaceOld(originalXhrProto, "send", replacementXhrSend);
1465
- }
1466
- };
1467
- const handleConsole = (hooks = noop) => {
1468
- const consoleTypeList = ["log", "info", "warn", "error", "assert"];
1469
- consoleTypeList.forEach((type) => {
1470
- const replacement = (originalConsole) => {
1471
- return function(...args) {
1472
- if (originalConsole) {
1473
- hooks(type, ...args);
1474
- originalConsole.apply(console, args);
1475
- }
1476
- };
1477
- };
1478
- replaceOld(console, type, replacement);
1479
- });
1480
- };
1481
- class Monitor {
1482
- constructor() {
1483
- __publicField(this, "init", () => {
1484
- this.reportClick();
1485
- this.reportError();
1486
- this.reportFetch();
1487
- this.reportPerformance();
1488
- this.reportXhr();
1489
- });
1490
- this.initialize();
1491
- }
1492
- reportPerformance() {
1493
- const params = getPerformance();
1494
- const payload = createData();
1495
- report({
1496
- payload: {
1497
- ...params,
1498
- ...payload
1499
- }
1500
- });
1501
- }
1502
- log(payload) {
1503
- report({ payload });
1504
- }
1505
- reportClick() {
1506
- const throttleReport = throttle(report);
1507
- const payload = createData();
1508
- const hook = (event) => {
1509
- const { pageX, pageY, screenX, screenY, type } = event;
1510
- throttleReport({
1511
- payload: {
1512
- ...payload,
1513
- data: { pageX, pageY, screenX, screenY, type },
1514
- type: "click"
1515
- }
1516
- });
1517
- };
1518
- handleClick(hook);
1519
- }
1520
- reportXhr() {
1521
- const throttleReport = throttle(report);
1522
- const payload = createData();
1523
- const requestHook = (...args) => {
1524
- throttleReport({
1525
- payload: { ...payload, data: { ...args }, type: "xhrRequest" }
1526
- });
1527
- };
1528
- const responseHook = (...args) => {
1529
- throttleReport({
1530
- payload: { ...payload, data: { ...args }, type: "xhrResponse" }
1531
- });
1532
- };
1533
- const errorHook = (...args) => {
1534
- throttleReport({
1535
- payload: { ...payload, data: { ...args }, type: "xhrError" }
1536
- });
1537
- };
1538
- handleXhrHook({ requestHook, responseHook, errorHook });
1539
- }
1540
- reportFetch() {
1541
- const throttleReport = throttle(report);
1542
- const payload = createData();
1543
- const requestHook = (...args) => {
1544
- throttleReport({
1545
- payload: { ...payload, data: { ...args }, type: "fetchRequest" }
1546
- });
1547
- };
1548
- const responseHook = (...args) => {
1549
- throttleReport({
1550
- payload: { ...payload, data: { ...args }, type: "fetchResponse" }
1551
- });
1552
- };
1553
- const errorHook = (...args) => {
1554
- throttleReport({
1555
- payload: { ...payload, data: { ...args }, type: "fetchError" }
1556
- });
1557
- };
1558
- handleFetchHook({ requestHook, responseHook, errorHook });
1559
- }
1560
- reportError() {
1561
- const throttleReport = throttle(report);
1562
- const payload = createData();
1563
- const hook = (...args) => {
1564
- throttleReport({
1565
- payload: { ...payload, data: { ...args }, type: "error" }
1566
- });
1567
- };
1568
- handleError(hook);
1569
- }
1570
- reportConsole() {
1571
- const throttleReport = throttle(report);
1572
- const payload = createData();
1573
- const hook = (...args) => {
1574
- throttleReport({
1575
- payload: { ...payload, data: { ...args }, type: "console" }
1576
- });
1577
- };
1578
- handleConsole(hook);
1579
- }
1580
- initialize() {
1581
- if (typeof window !== "undefined" && !window.ranlog) {
1582
- window.ranlog = true;
1583
- this.init();
1584
- }
1585
- if (typeof process !== "undefined" && !process.ranlog) {
1586
- process.ranlog = true;
1587
- this.init();
1588
- }
1589
- }
1590
- }
1591
- const MimeType = /* @__PURE__ */ new Map([
1592
- [".ez", "application/andrew-inset"],
1593
- [".aw", "application/applixware"],
1594
- [".txt", "text/plain"],
1595
- [".ez", "application/andrew-inset"],
1596
- [".aw", "application/applixware"],
1597
- [".atom", "application/atom+xml"],
1598
- [".atomcat", "application/atomcat+xml"],
1599
- [".atomsvc", "application/atomsvc+xml"],
1600
- [".ccxml", "application/ccxml+xml"],
1601
- [".cu", "application/cu-seeme"],
1602
- [".davmount", "application/davmount+xml"],
1603
- [".ecma", "application/ecmascript"],
1604
- [".emma", "application/emma+xml"],
1605
- [".epub", "application/epub+zip"],
1606
- [".pfr", "application/font-tdpfr"],
1607
- [".stk", "application/hyperstudio"],
1608
- [".jar", "application/java-archive"],
1609
- [".ser", "application/java-serialized-object"],
1610
- [".class", "application/java-vm"],
1611
- [".js", "application/javascript"],
1612
- [".ts", "application/javascript"],
1613
- [".json", "application/json"],
1614
- [".lostxml", "application/lost+xml"],
1615
- [".hqx", "application/mac-binhex40"],
1616
- [".cpt", "application/mac-compactpro"],
1617
- [".mrc", "application/marc"],
1618
- [".ma,", "application/mathematica"],
1619
- [".nb", "application/mathematica"],
1620
- [".mb", "application/mathematica"],
1621
- [".mathml", "application/mathml+xml"],
1622
- [".mbox", "application/mbox"],
1623
- [".mscml", "application/mediaservercontrol+xml"],
1624
- [".mp4s", "application/mp4"],
1625
- [".doc", "application/msword"],
1626
- [".dot", "application/msword"],
1627
- [".mxf", "application/mxf"],
1628
- [".oda", "application/oda"],
1629
- [".opf", "application/oebps-package+xml"],
1630
- [".ogx", "application/ogg"],
1631
- [".onetoc", "application/onenote"],
1632
- [".onetoc2", "application/onenote"],
1633
- [".onetmp", "application/onenote"],
1634
- [".onepkg", "application/onenote"],
1635
- [".xer", "application/patch-ops-error+xml"],
1636
- [".pdf", "application/pdf"],
1637
- [".pgp", "application/pgp-encrypted"],
1638
- [".asc", "application/pgp-signature"],
1639
- [".sig", "application/pgp-signature"],
1640
- [".prf", "application/pics-rules"],
1641
- [".p10", "application/pkcs10"],
1642
- [".p7c", "application/pkcs7-mime"],
1643
- [".p7m", "application/pkcs7-mime"],
1644
- [".p7s", "application/pkcs7-signature"],
1645
- [".cer", "application/pkix-cert"],
1646
- [".crl", "application/pkix-crl"],
1647
- [".pkipath", "application/pkix-pkipath"],
1648
- [".pki", "application/pkixcmp"],
1649
- [".pls", "application/pls+xml"],
1650
- [".ai", "application/postscript"],
1651
- [".eps", "application/postscript"],
1652
- [".ps", "application/postscript"],
1653
- [".cww", "application/prs.cww"],
1654
- [".rdf", "application/rdf+xml"],
1655
- [".rif", "application/reginfo+xml"],
1656
- [".rnc", "application/relax-ng-compact-syntax"],
1657
- [".rl", "application/resource-lists+xml"],
1658
- [".rld", "application/resource-lists-diff+xml"],
1659
- [".rs", "application/rls-services+xml"],
1660
- [".rsd", "application/rsd+xml"],
1661
- [".rss", "application/rss+xml"],
1662
- [".rtf", "application/rtf"],
1663
- [".sbml", "application/sbml+xml"],
1664
- [".scq", "application/scvp-cv-request"],
1665
- [".scs", "application/scvp-cv-response"],
1666
- [".spq", "application/scvp-vp-request"],
1667
- [".spp", "application/scvp-vp-response"],
1668
- [".sdp", "application/sdp"],
1669
- [".setpay", "application/set-payment-initiation"],
1670
- [".setreg", "application/set-registration-initiation"],
1671
- [".shf", "application/shf+xml"],
1672
- [".smil", "application/smil+xml"],
1673
- [".smi", "application/smil+xml"],
1674
- [".rq", "application/sparql-query"],
1675
- [".srx", "application/sparql-results+xml"],
1676
- [".gram", "application/srgs"],
1677
- [".grxml", "application/srgs+xml"],
1678
- [".ssml", "application/ssml+xml"],
1679
- [".plb", "application/vnd.3gpp.pic-bw-large"],
1680
- [".psb", "application/vnd.3gpp.pic-bw-small"],
1681
- [".pvb", "application/vnd.3gpp.pic-bw-var"],
1682
- [".tcap", "application/vnd.3gpp2.tcap"],
1683
- [".pwn", "application/vnd.3m.post-it-notes"],
1684
- [".aso", "application/vnd.accpac.simply.aso"],
1685
- [".imp", "application/vnd.accpac.simply.imp"],
1686
- [".acu", "application/vnd.acucobol"],
1687
- [".atc", "application/vnd.acucorp"],
1688
- [".acutc", "application/vnd.acucorp"],
1689
- [".air", "application/vnd.adobe.air-application-installer-package+zip"],
1690
- [".xdp", "application/vnd.adobe.xdp+xml"],
1691
- [".xfdf", "application/vnd.adobe.xfdf"],
1692
- [".azf", "application/vnd.airzip.filesecure.azf"],
1693
- [".azs", "application/vnd.airzip.filesecure.azs"],
1694
- [".azw", "application/vnd.amazon.ebook"],
1695
- [".acc", "application/vnd.americandynamics.acc"],
1696
- [".ami", "application/vnd.amiga.ami"],
1697
- [".apk", "application/vnd.android.package-archive"],
1698
- [".cii", "application/vnd.anser-web-certificate-issue-initiation"],
1699
- [".fti", "application/vnd.anser-web-funds-transfer-initiation"],
1700
- [".atx", "application/vnd.antix.game-component"],
1701
- [".mpkg", "application/vnd.apple.installer+xml"],
1702
- [".swi", "application/vnd.arastra.swi"],
1703
- [".aep", "application/vnd.audiograph"],
1704
- [".mpm", "application/vnd.blueice.multipass"],
1705
- [".bmi", "application/vnd.bmi"],
1706
- [".rep", "application/vnd.businessobjects"],
1707
- [".cdxml", "application/vnd.chemdraw+xml"],
1708
- [".mmd", "application/vnd.chipnuts.karaoke-mmd"],
1709
- [".cdy", "application/vnd.cinderella"],
1710
- [".cla", "application/vnd.claymore"],
1711
- [".c4u", "application/vnd.clonk.c4group"],
1712
- [".c4p", "application/vnd.clonk.c4group"],
1713
- [".c4f", "application/vnd.clonk.c4group"],
1714
- [".c4d", "application/vnd.clonk.c4group"],
1715
- [".c4g", "application/vnd.clonk.c4group"],
1716
- [".csp", "application/vnd.commonspace"],
1717
- [".cdbcmsg", "application/vnd.contact.cmsg"],
1718
- [".cmc", "application/vnd.cosmocaller"],
1719
- [".clkx", "application/vnd.crick.clicker"],
1720
- [".clkk", "application/vnd.crick.clicker.keyboard"],
1721
- [".clkp", "application/vnd.crick.clicker.palette"],
1722
- [".clkt", "application/vnd.crick.clicker.template"],
1723
- [".clkw", "application/vnd.crick.clicker.wordbank"],
1724
- [".wbs", "application/vnd.criticaltools.wbs+xml"],
1725
- [".pml", "application/vnd.ctc-posml"],
1726
- [".ppd", "application/vnd.cups-ppd"],
1727
- [".car", "application/vnd.curl.car"],
1728
- [".pcurl", "application/vnd.curl.pcurl"],
1729
- [".rdz", "application/vnd.data-vision.rdz"],
1730
- [".fe_launch", "application/vnd.denovo.fcselayout-link"],
1731
- [".dna", "application/vnd.dna"],
1732
- [".mlp", "application/vnd.dolby.mlp"],
1733
- [".dpg", "application/vnd.dpgraph"],
1734
- [".dfac", "application/vnd.dreamfactory"],
1735
- [".geo", "application/vnd.dynageo"],
1736
- [".mag", "application/vnd.ecowin.chart"],
1737
- [".nml", "application/vnd.enliven"],
1738
- [".esf", "application/vnd.epson.esf"],
1739
- [".msf", "application/vnd.epson.msf"],
1740
- [".qam", "application/vnd.epson.quickanime"],
1741
- [".slt", "application/vnd.epson.salt"],
1742
- [".ssf", "application/vnd.epson.ssf"],
1743
- [".et3", "application/vnd.eszigno3+xml"],
1744
- [".es3", "application/vnd.eszigno3+xml"],
1745
- [".ez2", "application/vnd.ezpix-album"],
1746
- [".ez3", "application/vnd.ezpix-package"],
1747
- [".fdf", "application/vnd.fdf"],
1748
- [".mseed", "application/vnd.fdsn.mseed"],
1749
- [".dataless", "application/vnd.fdsn.seed"],
1750
- [".seed", "application/vnd.fdsn.seed"],
1751
- [".gph", "application/vnd.flographit"],
1752
- [".ftc", "application/vnd.fluxtime.clip"],
1753
- [".fm", "application/vnd.framemaker"],
1754
- [".frame", "application/vnd.framemaker"],
1755
- [".maker", "application/vnd.framemaker"],
1756
- [".book", "application/vnd.framemaker"],
1757
- [".fnc", "application/vnd.frogans.fnc"],
1758
- [".ltf", "application/vnd.frogans.ltf"],
1759
- [".fsc", "application/vnd.fsc.weblaunch"],
1760
- [".oas", "application/vnd.fujitsu.oasys"],
1761
- [".oa2", "application/vnd.fujitsu.oasys2"],
1762
- [".oa3", "application/vnd.fujitsu.oasys3"],
1763
- [".fg5", "application/vnd.fujitsu.oasysgp"],
1764
- [".bh2", "application/vnd.fujitsu.oasysprs"],
1765
- [".ddd", "application/vnd.fujixerox.ddd"],
1766
- [".xdw", "application/vnd.fujixerox.docuworks"],
1767
- [".xbd", "application/vnd.fujixerox.docuworks.binder"],
1768
- [".fzs", "application/vnd.fuzzysheet"],
1769
- [".txd", "application/vnd.genomatix.tuxedo"],
1770
- [".ggb", "application/vnd.geogebra.file"],
1771
- [".ggt", "application/vnd.geogebra.tool"],
1772
- [".gre", "application/vnd.geometry-explorer"],
1773
- [".gex", "application/vnd.geometry-explorer"],
1774
- [".gmx", "application/vnd.gmx"],
1775
- [".kml", "application/vnd.google-earth.kml+xml"],
1776
- [".kmz", "application/vnd.google-earth.kmz"],
1777
- [".gqf", "application/vnd.grafeq"],
1778
- [".gqs", "application/vnd.grafeq"],
1779
- [".gac", "application/vnd.groove-account"],
1780
- [".ghf", "application/vnd.groove-help"],
1781
- [".gim", "application/vnd.groove-identity-message"],
1782
- [".grv", "application/vnd.groove-injector"],
1783
- [".gtm", "application/vnd.groove-tool-message"],
1784
- [".tpl", "application/vnd.groove-tool-template"],
1785
- [".vcg", "application/vnd.groove-vcard"],
1786
- [".zmm", "application/vnd.handheld-entertainment+xml"],
1787
- [".hbci", "application/vnd.hbci"],
1788
- [".les", "application/vnd.hhe.lesson-player"],
1789
- [".hpgl", "application/vnd.hp-hpgl"],
1790
- [".hpid", "application/vnd.hp-hpid"],
1791
- [".hps", "application/vnd.hp-hps"],
1792
- [".jlt", "application/vnd.hp-jlyt"],
1793
- [".pcl", "application/vnd.hp-pcl"],
1794
- [".pclxl", "application/vnd.hp-pclxl"],
1795
- [".sfd-hdstx", "application/vnd.hydrostatix.sof-data"],
1796
- [".x3d", "application/vnd.hzn-3d-crossword"],
1797
- [".mpy", "application/vnd.ibm.minipay"],
1798
- [".afp", "application/vnd.ibm.modcap"],
1799
- [".listafp", "application/vnd.ibm.modcap"],
1800
- [".list3820", "application/vnd.ibm.modcap"],
1801
- [".irm", "application/vnd.ibm.rights-management"],
1802
- [".sc", "application/vnd.ibm.secure-container"],
1803
- [".icm", "application/vnd.iccprofile"],
1804
- [".icc", "application/vnd.iccprofile"],
1805
- [".igl", "application/vnd.igloader"],
1806
- [".ivp", "application/vnd.immervision-ivp"],
1807
- [".ivu", "application/vnd.immervision-ivu"],
1808
- [".xpw", "application/vnd.intercon.formnet"],
1809
- [".xpx", "application/vnd.intercon.formnet"],
1810
- [".qbo", "application/vnd.intu.qbo"],
1811
- [".qfx", "application/vnd.intu.qfx"],
1812
- [".rcprofile", "application/vnd.ipunplugged.rcprofile"],
1813
- [".irp", "application/vnd.irepository.package+xml"],
1814
- [".xpr", "application/vnd.is-xpr"],
1815
- [".jam", "application/vnd.jam"],
1816
- [".rms", "application/vnd.jcp.javame.midlet-rms"],
1817
- [".jisp", "application/vnd.jisp"],
1818
- [".joda", "application/vnd.joost.joda-archive"],
1819
- [".ktz", "application/vnd.kahootz"],
1820
- [".ktr", "application/vnd.kahootz"],
1821
- [".karbon", "application/vnd.kde.karbon"],
1822
- [".chrt", "application/vnd.kde.kchart"],
1823
- [".kfo", "application/vnd.kde.kformula"],
1824
- [".flw", "application/vnd.kde.kivio"],
1825
- [".kon", "application/vnd.kde.kontour"],
1826
- [".kpt", "application/vnd.kde.kpresenter"],
1827
- [".kpr", "application/vnd.kde.kpresenter"],
1828
- [".ksp", "application/vnd.kde.kspread"],
1829
- [".kwd", "application/vnd.kde.kword"],
1830
- [".kwt", "application/vnd.kde.kword"],
1831
- [".htke", "application/vnd.kenameaapp"],
1832
- [".kia", "application/vnd.kidspiration"],
1833
- [".kne", "application/vnd.kinar"],
1834
- [".knp", "application/vnd.kinar"],
1835
- [".skp", "application/vnd.koan"],
1836
- [".skd", "application/vnd.koan"],
1837
- [".skt", "application/vnd.koan"],
1838
- [".skm", "application/vnd.koan"],
1839
- [".sse", "application/vnd.kodak-descriptor"],
1840
- [".lbd", "application/vnd.llamagraphics.life-balance.desktop"],
1841
- [".lbe", "application/vnd.llamagraphics.life-balance.exchange+xml"],
1842
- [".123", "application/vnd.lotus-1-2-3"],
1843
- [".apr", "application/vnd.lotus-approach"],
1844
- [".pre", "application/vnd.lotus-freelance"],
1845
- [".nsf", "application/vnd.lotus-notes"],
1846
- [".org", "application/vnd.lotus-organizer"],
1847
- [".scm", "application/vnd.lotus-screencam"],
1848
- [".lwp", "application/vnd.lotus-wordpro"],
1849
- [".portpkg", "application/vnd.macports.portpkg"],
1850
- [".mcd", "application/vnd.mcd"],
1851
- [".mc1", "application/vnd.medcalcdata"],
1852
- [".cdkey", "application/vnd.mediastation.cdkey"],
1853
- [".mwf", "application/vnd.mfer"],
1854
- [".mfm", "application/vnd.mfmp"],
1855
- [".flo", "application/vnd.micrografx.flo"],
1856
- [".igx", "application/vnd.micrografx.igx"],
1857
- [".mif", "application/vnd.mif"],
1858
- [".daf", "application/vnd.mobius.daf"],
1859
- [".dis", "application/vnd.mobius.dis"],
1860
- [".mbk", "application/vnd.mobius.mbk"],
1861
- [".mqy", "application/vnd.mobius.mqy"],
1862
- [".msl", "application/vnd.mobius.msl"],
1863
- [".plc", "application/vnd.mobius.plc"],
1864
- [".txf", "application/vnd.mobius.txf"],
1865
- [".mpn", "application/vnd.mophun.application"],
1866
- [".mpc", "application/vnd.mophun.certificate"],
1867
- [".xul", "application/vnd.mozilla.xul+xml"],
1868
- [".cil", "application/vnd.ms-artgalry"],
1869
- [".cab", "application/vnd.ms-cab-compressed"],
1870
- [".xls", "application/vnd.ms-excel"],
1871
- [".xlm", "application/vnd.ms-excel"],
1872
- [".xla", "application/vnd.ms-excel"],
1873
- [".xlc", "application/vnd.ms-excel"],
1874
- [".xlt", "application/vnd.ms-excel"],
1875
- [".xlw", "application/vnd.ms-excel"],
1876
- [".xlam", "application/vnd.ms-excel.addin.macroenabled.12"],
1877
- [".xlsb", "application/vnd.ms-excel.sheet.binary.macroenabled.12"],
1878
- [".xlsm", "application/vnd.ms-excel.sheet.macroenabled.12"],
1879
- [".xltm", "application/vnd.ms-excel.template.macroenabled.12"],
1880
- [".eot", "application/vnd.ms-fontobject"],
1881
- [".chm", "application/vnd.ms-htmlhelp"],
1882
- [".ims", "application/vnd.ms-ims"],
1883
- [".lrm", "application/vnd.ms-lrm"],
1884
- [".cat", "application/vnd.ms-pki.seccat"],
1885
- [".stl", "application/vnd.ms-pki.stl"],
1886
- [".pot", "application/vnd.ms-powerpoint"],
1887
- [".pps", "application/vnd.ms-powerpoint"],
1888
- [".ppt", "application/vnd.ms-powerpoint"],
1889
- [".ppam", "application/vnd.ms-powerpoint.addin.macroenabled.12"],
1890
- [".pptm", "application/vnd.ms-powerpoint.presentation.macroenabled.12"],
1891
- [".sldm", "application/vnd.ms-powerpoint.slide.macroenabled.12"],
1892
- [".ppsm", "application/vnd.ms-powerpoint.slideshow.macroenabled.12"],
1893
- [".potm", "application/vnd.ms-powerpoint.template.macroenabled.12"],
1894
- [".mpp", "application/vnd.ms-project"],
1895
- [".mpt", "application/vnd.ms-project"],
1896
- [".docm", "application/vnd.ms-word.document.macroenabled.12"],
1897
- [".dotm", "application/vnd.ms-word.template.macroenabled.12"],
1898
- [".wdb", "application/vnd.ms-works"],
1899
- [".wcm", "application/vnd.ms-works"],
1900
- [".wks", "application/vnd.ms-works"],
1901
- [".wps", "application/vnd.ms-works"],
1902
- [".wpl", "application/vnd.ms-wpl"],
1903
- [".xps", "application/vnd.ms-xpsdocument"],
1904
- [".mseq", "application/vnd.mseq"],
1905
- [".mus", "application/vnd.musician"],
1906
- [".msty", "application/vnd.muvee.style"],
1907
- [".nlu", "application/vnd.neurolanguage.nlu"],
1908
- [".nnd", "application/vnd.noblenet-directory"],
1909
- [".nns", "application/vnd.noblenet-sealer"],
1910
- [".nnw", "application/vnd.noblenet-web"],
1911
- [".ngdat", "application/vnd.nokia.n-gage.data"],
1912
- [".n-gage", "application/vnd.nokia.n-gage.symbian.install"],
1913
- [".rpst", "application/vnd.nokia.radio-preset"],
1914
- [".rpss", "application/vnd.nokia.radio-presets"],
1915
- [".edm", "application/vnd.novadigm.edm"],
1916
- [".edx", "application/vnd.novadigm.edx"],
1917
- [".ext", "application/vnd.novadigm.ext"],
1918
- [".odc", "application/vnd.oasis.opendocument.chart"],
1919
- [".otc", "application/vnd.oasis.opendocument.chart-template"],
1920
- [".odb", "application/vnd.oasis.opendocument.database"],
1921
- [".odf", "application/vnd.oasis.opendocument.formula"],
1922
- [".odft", "application/vnd.oasis.opendocument.formula-template"],
1923
- [".odg", "application/vnd.oasis.opendocument.graphics"],
1924
- [".otg", "application/vnd.oasis.opendocument.graphics-template"],
1925
- [".odi", "application/vnd.oasis.opendocument.image"],
1926
- [".oti", "application/vnd.oasis.opendocument.image-template"],
1927
- [".odp", "application/vnd.oasis.opendocument.presentation"],
1928
- [".ods", "application/vnd.oasis.opendocument.spreadsheet"],
1929
- [".ots", "application/vnd.oasis.opendocument.spreadsheet-template"],
1930
- [".odt", "application/vnd.oasis.opendocument.text"],
1931
- [".otm", "application/vnd.oasis.opendocument.text-master"],
1932
- [".ott", "application/vnd.oasis.opendocument.text-template"],
1933
- [".oth", "application/vnd.oasis.opendocument.text-web"],
1934
- [".xo", "application/vnd.olpc-sugar"],
1935
- [".dd2", "application/vnd.oma.dd2+xml"],
1936
- [".oxt", "application/vnd.openofficeorg.extension"],
1937
- [
1938
- ".pptx",
1939
- "application/vnd.openxmlformats-officedocument.presentationml.presentation"
1940
- ],
1941
- [
1942
- ".sldx",
1943
- "application/vnd.openxmlformats-officedocument.presentationml.slide"
1944
- ],
1945
- [
1946
- ".ppsx",
1947
- "application/vnd.openxmlformats-officedocument.presentationml.slideshow"
1948
- ],
1949
- [
1950
- ".potx",
1951
- "application/vnd.openxmlformats-officedocument.presentationml.template"
1952
- ],
1953
- [
1954
- ".xlsx",
1955
- "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
1956
- ],
1957
- [
1958
- ".xltx",
1959
- "application/vnd.openxmlformats-officedocument.spreadsheetml.template"
1960
- ],
1961
- [
1962
- ".docx",
1963
- "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
1964
- ],
1965
- [
1966
- ".dotx",
1967
- "application/vnd.openxmlformats-officedocument.wordprocessingml.template"
1968
- ],
1969
- [".dp", "application/vnd.osgi.dp"],
1970
- [".oprc", "application/vnd.palm"],
1971
- [".pqa", "application/vnd.palm"],
1972
- [".pdb", "application/vnd.palm"],
1973
- [".str", "application/vnd.pg.format"],
1974
- [".ei6", "application/vnd.pg.osasli"],
1975
- [".efif", "application/vnd.picsel"],
1976
- [".plf", "application/vnd.pocketlearn"],
1977
- [".pbd", "application/vnd.powerbuilder6"],
1978
- [".box", "application/vnd.previewsystems.box"],
1979
- [".mgz", "application/vnd.proteus.magazine"],
1980
- [".qps", "application/vnd.publishare-delta-tree"],
1981
- [".ptid", "application/vnd.pvi.ptid1"],
1982
- [".qxd", "application/vnd.quark.quarkxpress"],
1983
- [".qxt", "application/vnd.quark.quarkxpress"],
1984
- [".qwd", "application/vnd.quark.quarkxpress"],
1985
- [".qwt", "application/vnd.quark.quarkxpress"],
1986
- [".qxl", "application/vnd.quark.quarkxpress"],
1987
- [".qxb", "application/vnd.quark.quarkxpress"],
1988
- [".mxl", "application/vnd.recordare.musicxml"],
1989
- [".musicxml", "application/vnd.recordare.musicxml+xml"],
1990
- [".cod", "application/vnd.rim.cod"],
1991
- [".rm", "application/vnd.rn-realmedia"],
1992
- [".link66", "application/vnd.route66.link66+xml"],
1993
- [".see", "application/vnd.seemail"],
1994
- [".sema", "application/vnd.sema"],
1995
- [".semd", "application/vnd.semd"],
1996
- [".semf", "application/vnd.semf"],
1997
- [".ifm", "application/vnd.shana.informed.formdata"],
1998
- [".itp", "application/vnd.shana.informed.formtemplate"],
1999
- [".iif", "application/vnd.shana.informed.interchange"],
2000
- [".ipk", "application/vnd.shana.informed.package"],
2001
- [".twds", "application/vnd.simtech-mindmapper"],
2002
- [".twd", "application/vnd.simtech-mindmapper"],
2003
- [".mmf", "application/vnd.smaf"],
2004
- [".teacher", "application/vnd.smart.teacher"],
2005
- [".sdkm", "application/vnd.solent.sdkm+xml"],
2006
- [".sdkd", "application/vnd.solent.sdkm+xml"],
2007
- [".dxp", "application/vnd.spotfire.dxp"],
2008
- [".sfs", "application/vnd.spotfire.sfs"],
2009
- [".sdc", "application/vnd.stardivision.calc"],
2010
- [".sda", "application/vnd.stardivision.draw"],
2011
- [".sdd", "application/vnd.stardivision.impress"],
2012
- [".smf", "application/vnd.stardivision.math"],
2013
- [".sdw", "application/vnd.stardivision.writer"],
2014
- [".vor", "application/vnd.stardivision.writer"],
2015
- [".sgl", "application/vnd.stardivision.writer-global"],
2016
- [".sxc", "application/vnd.sun.xml.calc"],
2017
- [".stc", "application/vnd.sun.xml.calc.template"],
2018
- [".sxd", "application/vnd.sun.xml.draw"],
2019
- [".std", "application/vnd.sun.xml.draw.template"],
2020
- [".sxi", "application/vnd.sun.xml.impress"],
2021
- [".sti", "application/vnd.sun.xml.impress.template"],
2022
- [".sxm", "application/vnd.sun.xml.math"],
2023
- [".sxw", "application/vnd.sun.xml.writer"],
2024
- [".sxg", "application/vnd.sun.xml.writer.global"],
2025
- [".stw", "application/vnd.sun.xml.writer.template"],
2026
- [".susp", "application/vnd.sus-calendar"],
2027
- [".sus", "application/vnd.sus-calendar"],
2028
- [".svd", "application/vnd.svd"],
2029
- [".sis", "application/vnd.symbian.install"],
2030
- [".sisx", "application/vnd.symbian.install"],
2031
- [".xsm", "application/vnd.syncml+xml"],
2032
- [".bdm", "application/vnd.syncml.dm+wbxml"],
2033
- [".xdm", "application/vnd.syncml.dm+xml"],
2034
- [".tao", "application/vnd.tao.intent-module-archive"],
2035
- [".tmo", "application/vnd.tmobile-livetv"],
2036
- [".tpt", "application/vnd.trid.tpt"],
2037
- [".mxs", "application/vnd.triscape.mxs"],
2038
- [".tra", "application/vnd.trueapp"],
2039
- [".ufdl", "application/vnd.ufdl"],
2040
- [".ufd", "application/vnd.ufdl"],
2041
- [".utz", "application/vnd.uiq.theme"],
2042
- [".umj", "application/vnd.umajin"],
2043
- [".unityweb", "application/vnd.unity"],
2044
- [".uoml", "application/vnd.uoml+xml"],
2045
- [".vcx", "application/vnd.vcx"],
2046
- [".vsw", "application/vnd.visio"],
2047
- [".vss", "application/vnd.visio"],
2048
- [".vst", "application/vnd.visio"],
2049
- [".vsd", "application/vnd.visio"],
2050
- [".vis", "application/vnd.visionary"],
2051
- [".vsf", "application/vnd.vsf"],
2052
- [".wbxml", "application/vnd.wap.wbxml"],
2053
- [".wmlc", "application/vnd.wap.wmlc"],
2054
- [".wmlsc", "application/vnd.wap.wmlscriptc"],
2055
- [".wtb", "application/vnd.webturbo"],
2056
- [".wpd", "application/vnd.wordperfect"],
2057
- [".wqd", "application/vnd.wqd"],
2058
- [".stf", "application/vnd.wt.stf"],
2059
- [".xar", "application/vnd.xara"],
2060
- [".xfdl", "application/vnd.xfdl"],
2061
- [".hvd", "application/vnd.yamaha.hv-dic"],
2062
- [".hvs", "application/vnd.yamaha.hv-script"],
2063
- [".hvp", "application/vnd.yamaha.hv-voice"],
2064
- [".osf", "application/vnd.yamaha.openscoreformat"],
2065
- [".osfpvg", "application/vnd.yamaha.openscoreformat.osfpvg+xml"],
2066
- [".saf", "application/vnd.yamaha.smaf-audio"],
2067
- [".spf", "application/vnd.yamaha.smaf-phrase"],
2068
- [".cmp", "application/vnd.yellowriver-custom-menu"],
2069
- [".zir", "application/vnd.zul"],
2070
- [".zirz", "application/vnd.zul"],
2071
- [".zaz", "application/vnd.zzazz.deck+xml"],
2072
- [".vxml", "application/voicexml+xml"],
2073
- [".hlp", "application/winhlp"],
2074
- [".wsdl", "application/wsdl+xml"],
2075
- [".wspolicy", "application/wspolicy+xml"],
2076
- [".abw", "application/x-abiword"],
2077
- [".ace", "application/x-ace-compressed"],
2078
- [".aab", "application/x-authorware-bin"],
2079
- [".x32", "application/x-authorware-bin"],
2080
- [".u32", "application/x-authorware-bin"],
2081
- [".vox", "application/x-authorware-bin"],
2082
- [".aam", "application/x-authorware-map"],
2083
- [".aas", "application/x-authorware-seg"],
2084
- [".bcpio", "application/x-bcpio"],
2085
- [".torrent", "application/x-bittorrent"],
2086
- [".bz", "application/x-bzip"],
2087
- [".bz2", "application/x-bzip2"],
2088
- [".boz", "application/x-bzip2"],
2089
- [".vcd", "application/x-cdlink"],
2090
- [".chat", "application/x-chat"],
2091
- [".pgn", "application/x-chess-pgn"],
2092
- [".cpio", "application/x-cpio"],
2093
- [".csh", "application/x-csh"],
2094
- [".deb", "application/x-debian-package"],
2095
- [".udeb", "application/x-debian-package"],
2096
- [".swa", "application/x-director"],
2097
- [".w3d", "application/x-director"],
2098
- [".fgd", "application/x-director"],
2099
- [".cxt", "application/x-director"],
2100
- [".cct", "application/x-director"],
2101
- [".cst", "application/x-director"],
2102
- [".dxr", "application/x-director"],
2103
- [".dcr", "application/x-director"],
2104
- [".dir", "application/x-director"],
2105
- [".wad", "application/x-doom"],
2106
- [".ncx", "application/x-dtbncx+xml"],
2107
- [".dtb", "application/x-dtbook+xml"],
2108
- [".res", "application/x-dtbresource+xml"],
2109
- [".dvi", "application/x-dvi"],
2110
- [".bdf", "application/x-font-bdf"],
2111
- [".gsf", "application/x-font-ghostscript"],
2112
- [".psf", "application/x-font-linux-psf"],
2113
- [".otf", "application/x-font-otf"],
2114
- [".pcf", "application/x-font-pcf"],
2115
- [".snf", "application/x-font-snf"],
2116
- [".ttf", "application/x-font-ttf"],
2117
- [".ttc", "application/x-font-ttf"],
2118
- [".woff", "application/font-woff"],
2119
- [".pfa", "application/x-font-type1"],
2120
- [".pfb", "application/x-font-type1"],
2121
- [".pfm", "application/x-font-type1"],
2122
- [".afm", "application/x-font-type1"],
2123
- [".spl", "application/x-futuresplash"],
2124
- [".gnumeric", "application/x-gnumeric"],
2125
- [".gtar", "application/x-gtar"],
2126
- [".hdf", "application/x-hdf"],
2127
- [".jnlp", "application/x-java-jnlp-file"],
2128
- [".latex", "application/x-latex"],
2129
- [".prc", "application/x-mobipocket-ebook"],
2130
- [".mobi", "application/x-mobipocket-ebook"],
2131
- [".application", "application/x-ms-application"],
2132
- [".wmd", "application/x-ms-wmd"],
2133
- [".wmz", "application/x-ms-wmz"],
2134
- [".xbap", "application/x-ms-xbap"],
2135
- [".mdb", "application/x-msaccess"],
2136
- [".obd", "application/x-msbinder"],
2137
- [".crd", "application/x-mscardfile"],
2138
- [".clp", "application/x-msclip"],
2139
- [".msi", "application/x-msdownload"],
2140
- [".bat", "application/x-msdownload"],
2141
- [".com", "application/x-msdownload"],
2142
- [".dll", "application/x-msdownload"],
2143
- [".exe", "application/x-msdownload"],
2144
- [".mvb", "application/x-msmediaview"],
2145
- [".m13", "application/x-msmediaview"],
2146
- [".m14", "application/x-msmediaview"],
2147
- [".wmf", "application/x-msmetafile"],
2148
- [".mny", "application/x-msmoney"],
2149
- [".pub", "application/x-mspublisher"],
2150
- [".scd", "application/x-msschedule"],
2151
- [".trm", "application/x-msterminal"],
2152
- [".wri", "application/x-mswrite"],
2153
- [".nc", "application/x-netcdf"],
2154
- [".cdf", "application/x-netcdf"],
2155
- [".p12", "application/x-pkcs12"],
2156
- [".pfx", "application/x-pkcs12"],
2157
- [".p7b", "application/x-pkcs7-certificates"],
2158
- [".spc", "application/x-pkcs7-certificates"],
2159
- [".p7r", "application/x-pkcs7-certreqresp"],
2160
- [".rar", "application/x-rar-compressed"],
2161
- [".sh", "application/x-sh"],
2162
- [".shar", "application/x-shar"],
2163
- [".swf", "application/x-shockwave-flash"],
2164
- [".xap", "application/x-silverlight-app"],
2165
- [".sit", "application/x-stuffit"],
2166
- [".sitx", "application/x-stuffitx"],
2167
- [".sv4cpio", "application/x-sv4cpio"],
2168
- [".sv4crc", "application/x-sv4crc"],
2169
- [".tar", "application/x-tar"],
2170
- [".tcl", "application/x-tcl"],
2171
- [".tex", "application/x-tex"],
2172
- [".tfm", "application/x-tex-tfm"],
2173
- [".texinfo", "application/x-texinfo"],
2174
- [".texi", "application/x-texinfo"],
2175
- [".ustar", "application/x-ustar"],
2176
- [".src", "application/x-wais-source"],
2177
- [".der", "application/x-x509-ca-cert"],
2178
- [".crt", "application/x-x509-ca-cert"],
2179
- [".fig", "application/x-xfig"],
2180
- [".xpi", "application/x-xpinstall"],
2181
- [".xenc", "application/xenc+xml"],
2182
- [".xhtml", "application/xhtml+xml"],
2183
- [".xht", "application/xhtml+xml"],
2184
- [".xsl", "application/xml"],
2185
- [".xml", "application/xml"],
2186
- [".dtd", "application/xml-dtd"],
2187
- [".xop", "application/xop+xml"],
2188
- [".xslt", "application/xslt+xml"],
2189
- [".xspf", "application/xspf+xml"],
2190
- [".xvm", "application/xv+xml"],
2191
- [".xvml", "application/xv+xml"],
2192
- [".xhvml", "application/xv+xml"],
2193
- [".mxml", "application/xv+xml"],
2194
- [".zip", "application/zip"],
2195
- [".adp", "audio/adpcm"],
2196
- [".au", "audio/basic"],
2197
- [".snd", "audio/basic"],
2198
- [".mid", "audio/midi"],
2199
- [".midi", "audio/midi"],
2200
- [".kar", "audio/midi"],
2201
- [".rmi", "audio/midi"],
2202
- [".mp4a", "audio/mp4"],
2203
- [".m4a", "audio/mp4a-latm"],
2204
- [".m4p", "audio/mp4a-latm"],
2205
- [".m3a", "audio/mpeg"],
2206
- [".m2a", "audio/mpeg"],
2207
- [".mp3", "audio/mpeg"],
2208
- [".mp2a", "audio/mpeg"],
2209
- [".mp2", "audio/mpeg"],
2210
- [".mpga", "audio/mpeg"],
2211
- [".spx", "audio/ogg"],
2212
- [".ogg", "audio/ogg"],
2213
- [".oga", "audio/ogg"],
2214
- [".eol", "audio/vnd.digital-winds"],
2215
- [".dts", "audio/vnd.dts"],
2216
- [".dtshd", "audio/vnd.dts.hd"],
2217
- [".lvp", "audio/vnd.lucent.voice"],
2218
- [".pya", "audio/vnd.ms-playready.media.pya"],
2219
- [".ecelp4800", "audio/vnd.nuera.ecelp4800"],
2220
- [".ecelp7470", "audio/vnd.nuera.ecelp7470"],
2221
- [".ecelp9600", "audio/vnd.nuera.ecelp9600"],
2222
- [".aac", "audio/x-aac"],
2223
- [".aif", "audio/x-aiff"],
2224
- [".aiff", "audio/x-aiff"],
2225
- [".aif", "audio/x-aiff"],
2226
- [".m3u", "audio/x-mpegurl"],
2227
- [".wax", "audio/x-ms-wax"],
2228
- [".wma", "audio/x-ms-wma"],
2229
- [".ram", "audio/x-pn-realaudio"],
2230
- [".ra", "audio/x-pn-realaudio"],
2231
- [".rmp", "audio/x-pn-realaudio-plugin"],
2232
- [".wav", "audio/x-wav"],
2233
- [".cdx", "chemical/x-cdx"],
2234
- [".cif", "chemical/x-cif"],
2235
- [".cmdf", "chemical/x-cmdf"],
2236
- [".cml", "chemical/x-cml"],
2237
- [".csml", "chemical/x-csml"],
2238
- [".xyz", "chemical/x-xyz"],
2239
- [".bmp", "image/bmp"],
2240
- [".cgm", "image/cgm"],
2241
- [".g3", "image/g3fax"],
2242
- [".gif", "image/gif"],
2243
- [".ief", "image/ief"],
2244
- [".jp2", "image/jp2"],
2245
- [".jpeg", "image/jpeg"],
2246
- [".jpg", "image/jpeg"],
2247
- [".jpe", "image/jpeg"],
2248
- [".pict", "image/pict"],
2249
- [".pic", "image/pict"],
2250
- [".pct", "image/pict"],
2251
- [".png", "image/png"],
2252
- [".btif", "image/prs.btif"],
2253
- [".svg", "image/svg+xml"],
2254
- [".svgz", "image/svg+xml"],
2255
- [".tiff", "image/tiff"],
2256
- [".tif", "image/tiff"],
2257
- [".psd", "image/vnd.adobe.photoshop"],
2258
- [".djvu", "image/vnd.djvu"],
2259
- [".djv", "image/vnd.djvu"],
2260
- [".dwg", "image/vnd.dwg"],
2261
- [".dxf", "image/vnd.dxf"],
2262
- [".fbs", "image/vnd.fastbidsheet"],
2263
- [".fpx", "image/vnd.fpx"],
2264
- [".fst", "image/vnd.fst"],
2265
- [".mmr", "image/vnd.fujixerox.edmics-mmr"],
2266
- [".rlc", "image/vnd.fujixerox.edmics-rlc"],
2267
- [".mdi", "image/vnd.ms-modi"],
2268
- [".npx", "image/vnd.net-fpx"],
2269
- [".wbmp", "image/vnd.wap.wbmp"],
2270
- [".xif", "image/vnd.xiff"],
2271
- [".ras", "image/x-cmu-raster"],
2272
- [".cmx", "image/x-cmx"],
2273
- [".fh", "image/x-freehand"],
2274
- [".fhc", "image/x-freehand"],
2275
- [".fh4", "image/x-freehand"],
2276
- [".fh5", "image/x-freehand"],
2277
- [".fh7", "image/x-freehand"],
2278
- [".ico", "image/x-icon"],
2279
- [".pntg", "image/x-macpaint"],
2280
- [".pnt", "image/x-macpaint"],
2281
- [".mac", "image/x-macpaint"],
2282
- [".pcx", "image/x-pcx"],
2283
- [".pic", "image/x-pict"],
2284
- [".pct", "image/x-pict"],
2285
- [".pnm", "image/x-portable-anymap"],
2286
- [".pbm", "image/x-portable-bitmap"],
2287
- [".pgm", "image/x-portable-graymap"],
2288
- [".ppm", "image/x-portable-pixmap"],
2289
- [".qtif", "image/x-quicktime"],
2290
- [".qti", "image/x-quicktime"],
2291
- [".rgb", "image/x-rgb"],
2292
- [".xbm", "image/x-xbitmap"],
2293
- [".xpm", "image/x-xpixmap"],
2294
- [".xwd", "image/x-xwindowdump"],
2295
- [".eml", "message/rfc822"],
2296
- [".mime", "message/rfc822"],
2297
- [".igs", "model/iges"],
2298
- [".iges", "model/iges"],
2299
- [".msh", "model/mesh"],
2300
- [".mesh", "model/mesh"],
2301
- [".silo", "model/mesh"],
2302
- [".dwf", "model/vnd.dwf"],
2303
- [".gdl", "model/vnd.gdl"],
2304
- [".gtw", "model/vnd.gtw"],
2305
- [".mts", "model/vnd.mts"],
2306
- [".vtu", "model/vnd.vtu"],
2307
- [".wrl", "model/vrml"],
2308
- [".vrml", "model/vrml"],
2309
- [".ics", "text/calendar"],
2310
- [".ifb", "text/calendar"],
2311
- [".css", "text/css"],
2312
- [".csv", "text/csv"],
2313
- [".html", "text/html"],
2314
- [".htm", "text/html"],
2315
- [".txt", "text/plain"],
2316
- [".text", "text/plain"],
2317
- [".conf", "text/plain"],
2318
- [".def", "text/plain"],
2319
- [".list", "text/plain"],
2320
- [".log", "text/plain"],
2321
- [".in", "text/plain"],
2322
- [".dsc", "text/prs.lines.tag"],
2323
- [".rtx", "text/richtext"],
2324
- [".sgml", "text/sgml"],
2325
- [".sgm", "text/sgml"],
2326
- [".tsv", "text/tab-separated-values"],
2327
- [".t", "text/troff"],
2328
- [".tr", "text/troff"],
2329
- [".roff", "text/troff"],
2330
- [".man", "text/troff"],
2331
- [".me", "text/troff"],
2332
- [".ms", "text/troff"],
2333
- [".uri", "text/uri-list"],
2334
- [".uris", "text/uri-list"],
2335
- [".urls", "text/uri-list"],
2336
- [".curl", "text/vnd.curl"],
2337
- [".dcurl", "text/vnd.curl.dcurl"],
2338
- [".scurl", "text/vnd.curl.scurl"],
2339
- [".mcurl", "text/vnd.curl.mcurl"],
2340
- [".fly", "text/vnd.fly"],
2341
- [".flx", "text/vnd.fmi.flexstor"],
2342
- [".gv", "text/vnd.graphviz"],
2343
- [".3dml", "text/vnd.in3d.3dml"],
2344
- [".spot", "text/vnd.in3d.spot"],
2345
- [".jad", "text/vnd.sun.j2me.app-descriptor"],
2346
- [".wml", "text/vnd.wap.wml"],
2347
- [".wmls", "text/vnd.wap.wmlscript"],
2348
- [".s", "text/x-asm"],
2349
- [".asm", "text/x-asm"],
2350
- [".c", "text/x-c"],
2351
- [".cc", "text/x-c"],
2352
- [".cxx", "text/x-c"],
2353
- [".cpp", "text/x-c"],
2354
- [".h", "text/x-c"],
2355
- [".hh", "text/x-c"],
2356
- [".dic", "text/x-c"],
2357
- [".f", "text/x-fortran"],
2358
- [".for", "text/x-fortran"],
2359
- [".f77", "text/x-fortran"],
2360
- [".f90", "text/x-fortran"],
2361
- [".p", "text/x-pascal"],
2362
- [".pas", "text/x-pascal"],
2363
- [".java", "text/x-java-source"],
2364
- [".etx", "text/x-setext"],
2365
- [".uu", "text/x-uuencode"],
2366
- [".vcs", "text/x-vcalendar"],
2367
- [".vcf", "text/x-vcard"],
2368
- [".3gp", "video/3gpp"],
2369
- [".3g2", "video/3gpp2"],
2370
- [".h261", "video/h261"],
2371
- [".h263", "video/h263"],
2372
- [".h264", "video/h264"],
2373
- [".jpgv", "video/jpeg"],
2374
- [".jpm", "video/jpm"],
2375
- [".jpgm", "video/jpm"],
2376
- [".mj2", "video/mj2"],
2377
- [".mjp2", "video/mj2"],
2378
- [".mp4", "video/mp4"],
2379
- [".mp4v", "video/mp4"],
2380
- [".mpg4", "video/mp4"],
2381
- [".m4v", "video/mp4"],
2382
- [".mkv", "video/x-matroska"],
2383
- [".mk3d", "video/x-matroska"],
2384
- [".mka", "video/x-matroska"],
2385
- [".mks", "video/x-matroska"],
2386
- [".webm", "video/webm"],
2387
- [".mpeg", "video/mpeg"],
2388
- [".mpg", "video/mpeg"],
2389
- [".mpe", "video/mpeg"],
2390
- [".m1v", "video/mpeg"],
2391
- [".m2v", "video/mpeg"],
2392
- [".ogv", "video/ogg"],
2393
- [".qt", "video/quicktime"],
2394
- [".mov", "video/quicktime"],
2395
- [".fvt", "video/vnd.fvt"],
2396
- [".mxu", "video/vnd.mpegurl"],
2397
- [".m4u", "video/vnd.mpegurl"],
2398
- [".pyv", "video/vnd.ms-playready.media.pyv"],
2399
- [".viv", "video/vnd.vivo"],
2400
- [".dv", "video/x-dv"],
2401
- [".dif", "video/x-dv"],
2402
- [".f4v", "video/x-f4v"],
2403
- [".fli", "video/x-fli"],
2404
- [".flv", "video/x-flv"],
2405
- [".m4v", "video/x-m4v"],
2406
- [".asf", "video/x-ms-asf"],
2407
- [".asx", "video/x-ms-asf"],
2408
- [".wm", "video/x-ms-wm"],
2409
- [".wmv", "video/x-ms-wmv"],
2410
- [".wmx", "video/x-ms-wmx"],
2411
- [".wvx", "video/x-ms-wvx"],
2412
- [".avi", "video/x-msvideo"],
2413
- [".movie", "video/x-sgi-movie"],
2414
- [".ice", "x-conference/x-cooltalk"],
2415
- [".indd", "application/x-indesign"],
2416
- [".dat", "application/octet-stream"],
2417
- [".gz", "application/x-gzip"],
2418
- [".tgz", "application/x-tar"],
2419
- [".tar", "application/x-tar"],
2420
- [".epub", "application/epub+zip"],
2421
- [".mobi", "application/x-mobipocket-ebook"],
2422
- ["README", "text/plain"],
2423
- ["LICENSE", "text/plain"],
2424
- ["COPYING", "text/plain"],
2425
- ["TODO", "text/plain"],
2426
- ["ABOUT", "text/plain"],
2427
- ["AUTHORS", "text/plain"],
2428
- ["CONTRIBUTORS", "text/plain"],
2429
- ["manifest", "text/cache-manifest"],
2430
- [".manifest", "text/cache-manifest"],
2431
- [".mf", "text/cache-manifest"],
2432
- [".appcache", "text/cache-manifest"]
2433
- ]);
2434
- const setMime = (ext, mimeType) => {
2435
- MimeType.set(ext, mimeType);
2436
- return MimeType;
2437
- };
2438
- function getMime(ext) {
2439
- const tmp = ("" + ext).trim().toLowerCase();
2440
- let idx = tmp.lastIndexOf(".");
2441
- const suffix = !~idx ? tmp : tmp.substring(++idx);
2442
- return MimeType.get(`.${suffix}`) || MimeType.get(suffix);
2443
- }
2444
- const vnode = {
2445
- init,
2446
- h
2447
- };
2448
- const EventEmitter = SyncHook;
2449
- export {
2450
- EventEmitter,
2451
- MimeType,
2452
- Monitor,
2453
- SyncHook,
2454
- debounce,
2455
- filterObj,
2456
- formatJson,
2457
- getAllQueryString,
2458
- getCookie$1 as getCookie,
2459
- getFreshUrl,
2460
- getMime,
2461
- isClient,
2462
- isImageSize,
2463
- isMobile,
2464
- isWeiXin,
2465
- judgeDevice,
2466
- memoize,
2467
- mergeExports,
2468
- noop,
2469
- queryFileInfo,
2470
- querystring$1 as querystring,
2471
- readDir,
2472
- readFile,
2473
- removeGhosting,
2474
- requestAnimation,
2475
- retain,
2476
- scriptOnLoad,
2477
- setMime,
2478
- str2Xml,
2479
- throttle$1 as throttle,
2480
- timestampToTime,
2481
- vnode,
2482
- watchFile,
2483
- writeFile
2484
- };
1
+ import{t as s}from"./subscribe-CINWsor3.js";import{A as a,C as t,D as o,E as r,F as m,I as i,M as p,N as f,O as j,P as b,S as c,T as l,_ as u,a as x,b as d,c as e,d as g,f as k,g as n,h as v,i as w,j as y,k as A,l as C,m as D,n as E,o as M,p as N,r as O,s as S,t as T,u as _,v as h,w as F,x as I,y as P}from"./color-CRdlaDqQ.js";import{$ as z,A as B,At as G,B as H,C as J,Ct as K,D as L,Dt as Q,E as R,Et as U,F as V,G as Y,H as Z,I as $,J as q,K as W,L as X,M as ss,Mt as as,N as ts,Nt as os,O as rs,Ot as ms,P as is,Q as ps,R as fs,S as js,St as bs,T as cs,Tt as ls,U as us,V as xs,Y as ds,Z as es,_ as gs,_t as ks,a as ns,at as vs,b as ws,bt as ys,c as As,ct as Cs,d as Ds,dt as Es,et as Ms,f as Ns,ft as Os,g as Ss,gt as Ts,h as _s,i as hs,it as Fs,j as Is,jt as Ps,k as zs,kt as Bs,l as Gs,lt as Hs,m as Js,mt as Ks,n as Ls,nt as Qs,o as Rs,ot as Us,p as Vs,pt as Ys,r as Zs,rt as $s,s as qs,st as Ws,t as Xs,u as sa,ut as aa,v as ta,vt as oa,w as ra,wt as ma,x as ia,xt as pa,y as fa,yt as ja,z as ba}from"./utils-_OxsVZmz.js";export{ts as AudioRecorder,Y as BridgeManager,_s as Chain,W as Client,T as Color,E as ColorScheme,O as FMT,w as Hsl,x as Hsla,ms as Mathjs,t as MessageCodec,P as MimeType,ns as Monitor,q as Platform,ds as PostMessageBridge,Ls as QuestQueue,M as Rgb,S as Rgba,s as SyncHook,L as TOTP,Ss as addClassToElement,Bs as addNumSym,es as appendUrl,rs as audioVendor,ps as bridgeManager,zs as canvasVendor,F as changeHumpToLowerCase,l as checkEncoding,r as clearBr,o as clearStr,is as cloneDeep,e as componentToHex,ra as compose,z as connection,Ns as convertImageToBase64,gs as create,Gs as createData,ta as createDocumentFragment,Ms as createObjectURL,Is as createSignal,ja as currentDevice,js as debounce,Qs as durationHandler,$s as encodeUrl,fa as escapeHtml,V as filterObj,$ as formatJson,Rs as generateThrottle,Fs as getAllQueryString,vs as getCookie,Us as getCookieByName,d as getExtensions,Ws as getFrame,Cs as getHost,j as getMatchingSentences,I as getMime,Ds as getPerformance,Hs as getPixelRatio,aa as getQuery,A as getRandomString,Zs as getStatus,Es as getWindow,J as handleConsole,Js as handleError,As as handleFetchHook,C as hexToRgb,_ as hsbToRgb,g as hslToRgb,k as hsvToHsl,N as hsvToRgb,D as hue2rgb,Os as imageRequest,ys as isBangDevice,pa as isClient,X as isEqual,Vs as isImageSize,bs as isMobile,Ys as isSafari,a as isString,K as isWeiXin,cs as localStorageGetItem,R as localStorageSetItem,G as mathjs,y as md5,us as memoize,fs as merge,ba as mergeExports,Ks as networkSpeed,Q as noop,Ps as perToNum,ma as performanceTime,H as querystring,v as randomColor,p as randomString,as as range,ws as removeClassToElement,Ts as removeGhosting,xs as replaceOld,sa as report,ks as requestUrlToBuffer,oa as retain,n as rgbToHex,u as rgbToHsb,h as rgbToHsl,Xs as scriptOnLoad,Z as setAttributeByGlobal,ia as setFontSize2html,c as setMime,hs as status,f as str2Xml,b as strParse,ss as subscribers,qs as throttle,ls as timeFormat,U as timestampToTime,m as toString,os as transformNumber,i as transformText,B as webglVendor};