@tarojs/runtime 4.0.0-canary.8 → 4.0.0

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 (177) hide show
  1. package/LICENSE +17 -3
  2. package/dist/bom/URL.d.ts +54 -0
  3. package/dist/bom/URL.js +221 -0
  4. package/dist/bom/URL.js.map +1 -0
  5. package/dist/bom/URLSearchParams.d.ts +2 -0
  6. package/dist/bom/URLSearchParams.js +131 -0
  7. package/dist/bom/URLSearchParams.js.map +1 -0
  8. package/dist/bom/document.d.ts +3 -0
  9. package/dist/bom/document.js +39 -0
  10. package/dist/bom/document.js.map +1 -0
  11. package/dist/bom/getComputedStyle.d.ts +5 -0
  12. package/dist/bom/getComputedStyle.js +8 -0
  13. package/dist/bom/getComputedStyle.js.map +1 -0
  14. package/dist/bom/history.d.ts +32 -0
  15. package/dist/bom/history.js +121 -0
  16. package/dist/bom/history.js.map +1 -0
  17. package/dist/bom/location.d.ts +39 -0
  18. package/dist/bom/location.js +240 -0
  19. package/dist/bom/location.js.map +1 -0
  20. package/dist/bom/navigator.d.ts +2 -0
  21. package/dist/bom/navigator.js +24 -0
  22. package/dist/bom/navigator.js.map +1 -0
  23. package/dist/bom/raf.d.ts +5 -0
  24. package/dist/bom/raf.js +33 -0
  25. package/dist/bom/raf.js.map +1 -0
  26. package/dist/bom/window.d.ts +26 -0
  27. package/dist/bom/window.js +92 -0
  28. package/dist/bom/window.js.map +1 -0
  29. package/dist/constants/index.d.ts +60 -0
  30. package/dist/constants/index.js +63 -0
  31. package/dist/constants/index.js.map +1 -0
  32. package/dist/current.d.ts +19 -0
  33. package/dist/current.js +9 -0
  34. package/dist/current.js.map +1 -0
  35. package/dist/dom/anchor-element.d.ts +14 -0
  36. package/dist/dom/anchor-element.js +54 -0
  37. package/dist/dom/anchor-element.js.map +1 -0
  38. package/dist/dom/class-list.d.ts +17 -0
  39. package/dist/dom/class-list.js +92 -0
  40. package/dist/dom/class-list.js.map +1 -0
  41. package/dist/dom/document.d.ts +25 -0
  42. package/dist/dom/document.js +80 -0
  43. package/dist/dom/document.js.map +1 -0
  44. package/dist/dom/element.d.ts +40 -0
  45. package/dist/dom/element.js +315 -0
  46. package/dist/dom/element.js.map +1 -0
  47. package/dist/dom/event-source.d.ts +7 -0
  48. package/dist/dom/event-source.js +17 -0
  49. package/dist/dom/event-source.js.map +1 -0
  50. package/dist/dom/event-target.d.ts +8 -0
  51. package/dist/dom/event-target.js +78 -0
  52. package/dist/dom/event-target.js.map +1 -0
  53. package/dist/dom/event.d.ts +24 -0
  54. package/dist/dom/event.js +152 -0
  55. package/dist/dom/event.js.map +1 -0
  56. package/dist/dom/form.d.ts +10 -0
  57. package/dist/dom/form.js +38 -0
  58. package/dist/dom/form.js.map +1 -0
  59. package/dist/dom/node.d.ts +107 -0
  60. package/dist/dom/node.js +292 -0
  61. package/dist/dom/node.js.map +1 -0
  62. package/dist/dom/root.d.ts +16 -0
  63. package/dist/dom/root.js +169 -0
  64. package/dist/dom/root.js.map +1 -0
  65. package/dist/dom/style.d.ts +15 -0
  66. package/dist/dom/style.js +168 -0
  67. package/dist/dom/style.js.map +1 -0
  68. package/dist/dom/style_properties.d.ts +3 -0
  69. package/dist/dom/style_properties.js +186 -0
  70. package/dist/dom/style_properties.js.map +1 -0
  71. package/dist/dom/svg.d.ts +4 -0
  72. package/dist/dom/svg.js +8 -0
  73. package/dist/dom/svg.js.map +1 -0
  74. package/dist/dom/text.d.ts +15 -0
  75. package/dist/dom/text.js +41 -0
  76. package/dist/dom/text.js.map +1 -0
  77. package/dist/dom/transfer.d.ts +8 -0
  78. package/dist/dom/transfer.js +15 -0
  79. package/dist/dom/transfer.js.map +1 -0
  80. package/dist/dom/tree.d.ts +4 -0
  81. package/dist/dom/tree.js +38 -0
  82. package/dist/dom/tree.js.map +1 -0
  83. package/dist/dom-external/element.d.ts +4 -0
  84. package/dist/dom-external/element.js +29 -0
  85. package/dist/dom-external/element.js.map +1 -0
  86. package/dist/dom-external/index.d.ts +1 -0
  87. package/dist/dom-external/index.js +38 -0
  88. package/dist/dom-external/index.js.map +1 -0
  89. package/dist/dom-external/inner-html/html.d.ts +3 -0
  90. package/dist/dom-external/inner-html/html.js +28 -0
  91. package/dist/dom-external/inner-html/html.js.map +1 -0
  92. package/dist/dom-external/inner-html/parser.d.ts +25 -0
  93. package/dist/dom-external/inner-html/parser.js +216 -0
  94. package/dist/dom-external/inner-html/parser.js.map +1 -0
  95. package/dist/dom-external/inner-html/scaner.d.ts +30 -0
  96. package/dist/dom-external/inner-html/scaner.js +304 -0
  97. package/dist/dom-external/inner-html/scaner.js.map +1 -0
  98. package/dist/dom-external/inner-html/style.d.ts +27 -0
  99. package/dist/dom-external/inner-html/style.js +235 -0
  100. package/dist/dom-external/inner-html/style.js.map +1 -0
  101. package/dist/dom-external/inner-html/tags.d.ts +9 -0
  102. package/dist/dom-external/inner-html/tags.js +26 -0
  103. package/dist/dom-external/inner-html/tags.js.map +1 -0
  104. package/dist/dom-external/inner-html/utils.d.ts +2 -0
  105. package/dist/dom-external/inner-html/utils.js +12 -0
  106. package/dist/dom-external/inner-html/utils.js.map +1 -0
  107. package/dist/dom-external/mutation-observer/implements.d.ts +71 -0
  108. package/dist/dom-external/mutation-observer/implements.js +108 -0
  109. package/dist/dom-external/mutation-observer/implements.js.map +1 -0
  110. package/dist/dom-external/mutation-observer/index.d.ts +12 -0
  111. package/dist/dom-external/mutation-observer/index.js +35 -0
  112. package/dist/dom-external/mutation-observer/index.js.map +1 -0
  113. package/dist/dom-external/node.d.ts +12 -0
  114. package/dist/dom-external/node.js +75 -0
  115. package/dist/dom-external/node.js.map +1 -0
  116. package/dist/dsl/common.d.ts +16 -0
  117. package/dist/dsl/common.js +337 -0
  118. package/dist/dsl/common.js.map +1 -0
  119. package/dist/emitter/emitter.d.ts +4 -0
  120. package/dist/emitter/emitter.js +7 -0
  121. package/dist/emitter/emitter.js.map +1 -0
  122. package/dist/env.d.ts +7 -0
  123. package/dist/env.js +9 -0
  124. package/dist/env.js.map +1 -0
  125. package/dist/hydrate.d.ts +11 -0
  126. package/dist/hydrate.js +91 -0
  127. package/dist/hydrate.js.map +1 -0
  128. package/dist/index-26658829.d.ts +23 -0
  129. package/dist/{runtime.cjs.d.ts → index.cjs.d.ts} +108 -102
  130. package/dist/{runtime.h5.js → index.cjs.js} +4301 -2495
  131. package/dist/index.cjs.js.map +1 -0
  132. package/dist/index.d.ts +34 -0
  133. package/dist/index.js +35 -0
  134. package/dist/index.js.map +1 -0
  135. package/dist/instance-4c64b022.d.ts +85 -0
  136. package/dist/next-tick.d.ts +3 -0
  137. package/dist/next-tick.js +47 -0
  138. package/dist/next-tick.js.map +1 -0
  139. package/dist/node_types-9ac5b4dd.d.ts +11 -0
  140. package/dist/options-4c64b022.d.ts +17 -0
  141. package/dist/options.d.ts +3 -0
  142. package/dist/options.js +7 -0
  143. package/dist/options.js.map +1 -0
  144. package/dist/perf.d.ts +9 -0
  145. package/dist/perf.js +49 -0
  146. package/dist/perf.js.map +1 -0
  147. package/dist/polyfill/array.d.ts +3 -0
  148. package/dist/polyfill/array.js +56 -0
  149. package/dist/polyfill/array.js.map +1 -0
  150. package/dist/polyfill/index.d.ts +2 -0
  151. package/dist/polyfill/index.js +34 -0
  152. package/dist/polyfill/index.js.map +1 -0
  153. package/dist/polyfill/intersection-observer.d.ts +2 -0
  154. package/dist/polyfill/intersection-observer.js +600 -0
  155. package/dist/polyfill/intersection-observer.js.map +1 -0
  156. package/dist/polyfill/object.d.ts +4 -0
  157. package/dist/polyfill/object.js +102 -0
  158. package/dist/polyfill/object.js.map +1 -0
  159. package/dist/record-32b054d8.d.ts +25 -0
  160. package/dist/runtime.esm.d.ts +108 -102
  161. package/dist/runtime.esm.js +4126 -3320
  162. package/dist/runtime.esm.js.map +1 -1
  163. package/dist/utils/cache.d.ts +13 -0
  164. package/dist/utils/cache.js +27 -0
  165. package/dist/utils/cache.js.map +1 -0
  166. package/dist/utils/index.d.ts +26 -0
  167. package/dist/utils/index.js +99 -0
  168. package/dist/utils/index.js.map +1 -0
  169. package/dist/utils/lodash.d.ts +3 -0
  170. package/dist/utils/lodash.js +32 -0
  171. package/dist/utils/lodash.js.map +1 -0
  172. package/dist/utils/router.d.ts +8 -0
  173. package/dist/utils/router.js +24 -0
  174. package/dist/utils/router.js.map +1 -0
  175. package/package.json +23 -26
  176. package/dist/runtime.cjs.js +0 -4628
  177. package/dist/runtime.h5.d.ts +0 -800
@@ -0,0 +1,92 @@
1
+ import { Events, isString } from '@tarojs/shared';
2
+ import { CONTEXT_ACTIONS } from '../constants/index.js';
3
+ import '../emitter/emitter.js';
4
+ import env from '../env.js';
5
+ import { getComputedStyle } from './getComputedStyle.js';
6
+ import { History } from './history.js';
7
+ import { Location } from './location.js';
8
+ import { nav } from './navigator.js';
9
+ import { raf as _raf, caf as _caf } from './raf.js';
10
+
11
+ class TaroWindow extends Events {
12
+ constructor() {
13
+ super();
14
+ this.navigator = nav;
15
+ this.requestAnimationFrame = _raf;
16
+ this.cancelAnimationFrame = _caf;
17
+ this.getComputedStyle = getComputedStyle;
18
+ const globalProperties = [
19
+ ...Object.getOwnPropertyNames(global || {}),
20
+ ...Object.getOwnPropertySymbols(global || {})
21
+ ];
22
+ globalProperties.forEach(property => {
23
+ if (property === 'atob' || property === 'document')
24
+ return;
25
+ if (!Object.prototype.hasOwnProperty.call(this, property)) {
26
+ // 防止小程序环境下,window 上的某些 get 属性在赋值时报错
27
+ try {
28
+ this[property] = global[property];
29
+ }
30
+ catch (e) {
31
+ if (process.env.NODE_ENV !== 'production') {
32
+ console.warn(`[Taro warn] window.${String(property)} 在赋值到 window 时报错`);
33
+ }
34
+ }
35
+ }
36
+ });
37
+ this.Date || (this.Date = Date);
38
+ // 应用启动时,提供给需要读取历史信息的库使用
39
+ this.location = new Location({ window: this });
40
+ // @ts-ignore
41
+ this.history = new History(this.location, { window: this });
42
+ this.initEvent();
43
+ }
44
+ initEvent() {
45
+ const _location = this.location;
46
+ const _history = this.history;
47
+ this.on(CONTEXT_ACTIONS.INIT, (pageId) => {
48
+ // 页面onload,为该页面建立新的上下文信息
49
+ _location.trigger(CONTEXT_ACTIONS.INIT, pageId);
50
+ }, null);
51
+ this.on(CONTEXT_ACTIONS.RECOVER, (pageId) => {
52
+ // 页面onshow,恢复当前页面的上下文信息
53
+ _location.trigger(CONTEXT_ACTIONS.RECOVER, pageId);
54
+ _history.trigger(CONTEXT_ACTIONS.RECOVER, pageId);
55
+ }, null);
56
+ this.on(CONTEXT_ACTIONS.RESTORE, (pageId) => {
57
+ // 页面onhide,缓存当前页面的上下文信息
58
+ _location.trigger(CONTEXT_ACTIONS.RESTORE, pageId);
59
+ _history.trigger(CONTEXT_ACTIONS.RESTORE, pageId);
60
+ }, null);
61
+ this.on(CONTEXT_ACTIONS.DESTORY, (pageId) => {
62
+ // 页面onunload,清除当前页面的上下文信息
63
+ _location.trigger(CONTEXT_ACTIONS.DESTORY, pageId);
64
+ _history.trigger(CONTEXT_ACTIONS.DESTORY, pageId);
65
+ }, null);
66
+ }
67
+ get document() {
68
+ return env.document;
69
+ }
70
+ addEventListener(event, callback) {
71
+ if (!isString(event))
72
+ return;
73
+ this.on(event, callback, null);
74
+ }
75
+ removeEventListener(event, callback) {
76
+ if (!isString(event))
77
+ return;
78
+ this.off(event, callback, null);
79
+ }
80
+ setTimeout(...args) {
81
+ return setTimeout(...args);
82
+ }
83
+ clearTimeout(...args) {
84
+ return clearTimeout(...args);
85
+ }
86
+ }
87
+ const window = process.env.TARO_PLATFORM === 'web' ? env.window : (env.window = new TaroWindow());
88
+ const location = window.location;
89
+ const history = window.history;
90
+
91
+ export { history, location, window };
92
+ //# sourceMappingURL=window.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"window.js","sources":["../../src/bom/window.ts"],"sourcesContent":["import { isString } from '@tarojs/shared'\n\nimport { CONTEXT_ACTIONS } from '../constants'\nimport { Events } from '../emitter/emitter'\nimport env from '../env'\nimport { getComputedStyle } from './getComputedStyle'\nimport { History } from './history'\nimport { Location } from './location'\nimport { nav as navigator } from './navigator'\nimport { caf, raf } from './raf'\n\nimport type { TaroHistory } from './history'\nimport type { TaroLocation } from './location'\n\nclass TaroWindow extends Events {\n navigator = navigator\n requestAnimationFrame = raf\n cancelAnimationFrame = caf\n getComputedStyle = getComputedStyle\n Date: DateConstructor\n\n location: TaroLocation\n history: TaroHistory\n XMLHttpRequest?: Partial<XMLHttpRequest>\n\n constructor () {\n super()\n\n const globalProperties = [\n ...Object.getOwnPropertyNames(global || {}),\n ...Object.getOwnPropertySymbols(global || {})\n ]\n\n globalProperties.forEach(property => {\n if (property === 'atob' || property === 'document') return\n if (!Object.prototype.hasOwnProperty.call(this, property)) {\n // 防止小程序环境下,window 上的某些 get 属性在赋值时报错\n try {\n this[property] = global[property]\n } catch (e) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`[Taro warn] window.${String(property)} 在赋值到 window 时报错`)\n }\n }\n }\n })\n\n this.Date ||= Date\n\n // 应用启动时,提供给需要读取历史信息的库使用\n this.location = new Location({ window: this }) as any\n // @ts-ignore\n this.history = new History(this.location, { window: this })\n\n this.initEvent()\n }\n\n initEvent () {\n const _location = this.location\n const _history = this.history\n\n this.on(CONTEXT_ACTIONS.INIT, (pageId: string) => {\n // 页面onload,为该页面建立新的上下文信息\n _location.trigger(CONTEXT_ACTIONS.INIT, pageId)\n }, null)\n\n this.on(CONTEXT_ACTIONS.RECOVER, (pageId: string) => {\n // 页面onshow,恢复当前页面的上下文信息\n _location.trigger(CONTEXT_ACTIONS.RECOVER, pageId)\n _history.trigger(CONTEXT_ACTIONS.RECOVER, pageId)\n }, null)\n\n this.on(CONTEXT_ACTIONS.RESTORE, (pageId: string) => {\n // 页面onhide,缓存当前页面的上下文信息\n _location.trigger(CONTEXT_ACTIONS.RESTORE, pageId)\n _history.trigger(CONTEXT_ACTIONS.RESTORE, pageId)\n }, null)\n\n this.on(CONTEXT_ACTIONS.DESTORY, (pageId: string) => {\n // 页面onunload,清除当前页面的上下文信息\n _location.trigger(CONTEXT_ACTIONS.DESTORY, pageId)\n _history.trigger(CONTEXT_ACTIONS.DESTORY, pageId)\n }, null)\n }\n\n get document () {\n return env.document\n }\n\n addEventListener (event: string, callback: (arg: any) => void) {\n if (!isString(event)) return\n this.on(event, callback, null)\n }\n\n removeEventListener (event: string, callback: (arg: any) => void) {\n if (!isString(event)) return\n this.off(event, callback, null)\n }\n\n setTimeout (...args: Parameters<typeof setTimeout>) {\n return setTimeout(...args)\n }\n\n clearTimeout (...args: Parameters<typeof clearTimeout>) {\n return clearTimeout(...args)\n }\n}\n\nexport type { TaroWindow }\nexport const window: TaroWindow = process.env.TARO_PLATFORM === 'web' ? env.window : (env.window = new TaroWindow())\n\nexport const location = window.location\nexport const history = window.history\n"],"names":["navigator","raf","caf"],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ declare const PROPERTY_THRESHOLD = 2046;
2
+ declare const TARO_RUNTIME = "Taro runtime";
3
+ declare const HOOKS_APP_ID = "taro-app";
4
+ declare const SET_DATA = "\u5C0F\u7A0B\u5E8F setData";
5
+ declare const PAGE_INIT = "\u9875\u9762\u521D\u59CB\u5316";
6
+ declare const ROOT_STR = "root";
7
+ declare const HTML = "html";
8
+ declare const HEAD = "head";
9
+ declare const BODY = "body";
10
+ declare const APP = "app";
11
+ declare const CONTAINER = "container";
12
+ declare const DOCUMENT_ELEMENT_NAME = "#document";
13
+ declare const DOCUMENT_FRAGMENT = "document-fragment";
14
+ declare const ID = "id";
15
+ declare const UID = "uid";
16
+ declare const CLASS = "class";
17
+ declare const STYLE = "style";
18
+ declare const FOCUS = "focus";
19
+ declare const VIEW = "view";
20
+ declare const STATIC_VIEW = "static-view";
21
+ declare const PURE_VIEW = "pure-view";
22
+ declare const PROPS = "props";
23
+ declare const DATASET = "dataset";
24
+ declare const OBJECT = "object";
25
+ declare const VALUE = "value";
26
+ declare const INPUT = "input";
27
+ declare const CHANGE = "change";
28
+ declare const CUSTOM_WRAPPER = "custom-wrapper";
29
+ declare const TARGET = "target";
30
+ declare const CURRENT_TARGET = "currentTarget";
31
+ declare const TYPE = "type";
32
+ declare const CONFIRM = "confirm";
33
+ declare const TIME_STAMP = "timeStamp";
34
+ declare const KEY_CODE = "keyCode";
35
+ declare const TOUCHMOVE = "touchmove";
36
+ declare const DATE = "Date";
37
+ declare const SET_TIMEOUT = "setTimeout";
38
+ declare const COMPILE_MODE = "compileMode";
39
+ declare const CATCHMOVE = "catchMove";
40
+ declare const CATCH_VIEW = "catch-view";
41
+ declare const COMMENT = "comment";
42
+ declare const ON_LOAD = "onLoad";
43
+ declare const ON_READY = "onReady";
44
+ declare const ON_SHOW = "onShow";
45
+ declare const ON_HIDE = "onHide";
46
+ declare const OPTIONS = "options";
47
+ declare const EXTERNAL_CLASSES = "externalClasses";
48
+ declare const EVENT_CALLBACK_RESULT = "e_result";
49
+ declare const BEHAVIORS = "behaviors";
50
+ declare const A = "a";
51
+ /**
52
+ * 页面上下文切换时的行为
53
+ */
54
+ declare enum CONTEXT_ACTIONS {
55
+ INIT = "0",
56
+ RESTORE = "1",
57
+ RECOVER = "2",
58
+ DESTORY = "3"
59
+ }
60
+ export { PROPERTY_THRESHOLD, TARO_RUNTIME, HOOKS_APP_ID, SET_DATA, PAGE_INIT, ROOT_STR, HTML, HEAD, BODY, APP, CONTAINER, DOCUMENT_ELEMENT_NAME, DOCUMENT_FRAGMENT, ID, UID, CLASS, STYLE, FOCUS, VIEW, STATIC_VIEW, PURE_VIEW, PROPS, DATASET, OBJECT, VALUE, INPUT, CHANGE, CUSTOM_WRAPPER, TARGET, CURRENT_TARGET, TYPE, CONFIRM, TIME_STAMP, KEY_CODE, TOUCHMOVE, DATE, SET_TIMEOUT, COMPILE_MODE, CATCHMOVE, CATCH_VIEW, COMMENT, ON_LOAD, ON_READY, ON_SHOW, ON_HIDE, OPTIONS, EXTERNAL_CLASSES, EVENT_CALLBACK_RESULT, BEHAVIORS, A, CONTEXT_ACTIONS };
@@ -0,0 +1,63 @@
1
+ const PROPERTY_THRESHOLD = 2046;
2
+ const TARO_RUNTIME = 'Taro runtime';
3
+ const HOOKS_APP_ID = 'taro-app';
4
+ const SET_DATA = '小程序 setData';
5
+ const PAGE_INIT = '页面初始化';
6
+ const ROOT_STR = 'root';
7
+ const HTML = 'html';
8
+ const HEAD = 'head';
9
+ const BODY = 'body';
10
+ const APP = 'app';
11
+ const CONTAINER = 'container';
12
+ const DOCUMENT_ELEMENT_NAME = '#document';
13
+ const DOCUMENT_FRAGMENT = 'document-fragment';
14
+ const ID = 'id';
15
+ const UID = 'uid';
16
+ const CLASS = 'class';
17
+ const STYLE = 'style';
18
+ const FOCUS = 'focus';
19
+ const VIEW = 'view';
20
+ const STATIC_VIEW = 'static-view';
21
+ const PURE_VIEW = 'pure-view';
22
+ const PROPS = 'props';
23
+ const DATASET = 'dataset';
24
+ const OBJECT = 'object';
25
+ const VALUE = 'value';
26
+ const INPUT = 'input';
27
+ const CHANGE = 'change';
28
+ const CUSTOM_WRAPPER = 'custom-wrapper';
29
+ const TARGET = 'target';
30
+ const CURRENT_TARGET = 'currentTarget';
31
+ const TYPE = 'type';
32
+ const CONFIRM = 'confirm';
33
+ const TIME_STAMP = 'timeStamp';
34
+ const KEY_CODE = 'keyCode';
35
+ const TOUCHMOVE = 'touchmove';
36
+ const DATE = 'Date';
37
+ const SET_TIMEOUT = 'setTimeout';
38
+ const COMPILE_MODE = 'compileMode';
39
+ const CATCHMOVE = 'catchMove';
40
+ const CATCH_VIEW = 'catch-view';
41
+ const COMMENT = 'comment';
42
+ const ON_LOAD = 'onLoad';
43
+ const ON_READY = 'onReady';
44
+ const ON_SHOW = 'onShow';
45
+ const ON_HIDE = 'onHide';
46
+ const OPTIONS = 'options';
47
+ const EXTERNAL_CLASSES = 'externalClasses';
48
+ const EVENT_CALLBACK_RESULT = 'e_result';
49
+ const BEHAVIORS = 'behaviors';
50
+ const A = 'a';
51
+ /**
52
+ * 页面上下文切换时的行为
53
+ */
54
+ var CONTEXT_ACTIONS;
55
+ (function (CONTEXT_ACTIONS) {
56
+ CONTEXT_ACTIONS["INIT"] = "0";
57
+ CONTEXT_ACTIONS["RESTORE"] = "1";
58
+ CONTEXT_ACTIONS["RECOVER"] = "2";
59
+ CONTEXT_ACTIONS["DESTORY"] = "3";
60
+ })(CONTEXT_ACTIONS || (CONTEXT_ACTIONS = {}));
61
+
62
+ export { A, APP, BEHAVIORS, BODY, CATCHMOVE, CATCH_VIEW, CHANGE, CLASS, COMMENT, COMPILE_MODE, CONFIRM, CONTAINER, CONTEXT_ACTIONS, CURRENT_TARGET, CUSTOM_WRAPPER, DATASET, DATE, DOCUMENT_ELEMENT_NAME, DOCUMENT_FRAGMENT, EVENT_CALLBACK_RESULT, EXTERNAL_CLASSES, FOCUS, HEAD, HOOKS_APP_ID, HTML, ID, INPUT, KEY_CODE, OBJECT, ON_HIDE, ON_LOAD, ON_READY, ON_SHOW, OPTIONS, PAGE_INIT, PROPERTY_THRESHOLD, PROPS, PURE_VIEW, ROOT_STR, SET_DATA, SET_TIMEOUT, STATIC_VIEW, STYLE, TARGET, TARO_RUNTIME, TIME_STAMP, TOUCHMOVE, TYPE, UID, VALUE, VIEW };
63
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../src/constants/index.ts"],"sourcesContent":["export const PROPERTY_THRESHOLD = 2046\nexport const TARO_RUNTIME = 'Taro runtime'\nexport const HOOKS_APP_ID = 'taro-app'\nexport const SET_DATA = '小程序 setData'\nexport const PAGE_INIT = '页面初始化'\nexport const ROOT_STR = 'root'\nexport const HTML = 'html'\nexport const HEAD = 'head'\nexport const BODY = 'body'\nexport const APP = 'app'\nexport const CONTAINER = 'container'\nexport const DOCUMENT_ELEMENT_NAME = '#document'\nexport const DOCUMENT_FRAGMENT = 'document-fragment'\nexport const ID = 'id'\nexport const UID = 'uid'\nexport const CLASS = 'class'\nexport const STYLE = 'style'\nexport const FOCUS = 'focus'\nexport const VIEW = 'view'\nexport const STATIC_VIEW = 'static-view'\nexport const PURE_VIEW = 'pure-view'\nexport const PROPS = 'props'\nexport const DATASET = 'dataset'\nexport const OBJECT = 'object'\nexport const VALUE = 'value'\nexport const INPUT = 'input'\nexport const CHANGE = 'change'\nexport const CUSTOM_WRAPPER = 'custom-wrapper'\nexport const TARGET = 'target'\nexport const CURRENT_TARGET = 'currentTarget'\nexport const TYPE = 'type'\nexport const CONFIRM = 'confirm'\nexport const TIME_STAMP = 'timeStamp'\nexport const KEY_CODE = 'keyCode'\nexport const TOUCHMOVE = 'touchmove'\nexport const DATE = 'Date'\nexport const SET_TIMEOUT = 'setTimeout'\nexport const COMPILE_MODE = 'compileMode'\nexport const CATCHMOVE = 'catchMove'\nexport const CATCH_VIEW = 'catch-view'\nexport const COMMENT = 'comment'\nexport const ON_LOAD = 'onLoad'\nexport const ON_READY = 'onReady'\nexport const ON_SHOW = 'onShow'\nexport const ON_HIDE = 'onHide'\nexport const OPTIONS = 'options'\nexport const EXTERNAL_CLASSES = 'externalClasses'\nexport const EVENT_CALLBACK_RESULT = 'e_result'\nexport const BEHAVIORS = 'behaviors'\nexport const A = 'a'\n\n/**\n * 页面上下文切换时的行为\n */\nexport enum CONTEXT_ACTIONS {\n INIT = '0',\n RESTORE = '1',\n RECOVER = '2',\n DESTORY = '3'\n}\n"],"names":[],"mappings":"AAAO,MAAM,kBAAkB,GAAG,KAAI;AAC/B,MAAM,YAAY,GAAG,eAAc;AACnC,MAAM,YAAY,GAAG,WAAU;AAC/B,MAAM,QAAQ,GAAG,cAAa;AAC9B,MAAM,SAAS,GAAG,QAAO;AACzB,MAAM,QAAQ,GAAG,OAAM;AACvB,MAAM,IAAI,GAAG,OAAM;AACnB,MAAM,IAAI,GAAG,OAAM;AACnB,MAAM,IAAI,GAAG,OAAM;AACnB,MAAM,GAAG,GAAG,MAAK;AACjB,MAAM,SAAS,GAAG,YAAW;AAC7B,MAAM,qBAAqB,GAAG,YAAW;AACzC,MAAM,iBAAiB,GAAG,oBAAmB;AAC7C,MAAM,EAAE,GAAG,KAAI;AACf,MAAM,GAAG,GAAG,MAAK;AACjB,MAAM,KAAK,GAAG,QAAO;AACrB,MAAM,KAAK,GAAG,QAAO;AACrB,MAAM,KAAK,GAAG,QAAO;AACrB,MAAM,IAAI,GAAG,OAAM;AACnB,MAAM,WAAW,GAAG,cAAa;AACjC,MAAM,SAAS,GAAG,YAAW;AAC7B,MAAM,KAAK,GAAG,QAAO;AACrB,MAAM,OAAO,GAAG,UAAS;AACzB,MAAM,MAAM,GAAG,SAAQ;AACvB,MAAM,KAAK,GAAG,QAAO;AACrB,MAAM,KAAK,GAAG,QAAO;AACrB,MAAM,MAAM,GAAG,SAAQ;AACvB,MAAM,cAAc,GAAG,iBAAgB;AACvC,MAAM,MAAM,GAAG,SAAQ;AACvB,MAAM,cAAc,GAAG,gBAAe;AACtC,MAAM,IAAI,GAAG,OAAM;AACnB,MAAM,OAAO,GAAG,UAAS;AACzB,MAAM,UAAU,GAAG,YAAW;AAC9B,MAAM,QAAQ,GAAG,UAAS;AAC1B,MAAM,SAAS,GAAG,YAAW;AAC7B,MAAM,IAAI,GAAG,OAAM;AACnB,MAAM,WAAW,GAAG,aAAY;AAChC,MAAM,YAAY,GAAG,cAAa;AAClC,MAAM,SAAS,GAAG,YAAW;AAC7B,MAAM,UAAU,GAAG,aAAY;AAC/B,MAAM,OAAO,GAAG,UAAS;AACzB,MAAM,OAAO,GAAG,SAAQ;AACxB,MAAM,QAAQ,GAAG,UAAS;AAC1B,MAAM,OAAO,GAAG,SAAQ;AACxB,MAAM,OAAO,GAAG,SAAQ;AACxB,MAAM,OAAO,GAAG,UAAS;AACzB,MAAM,gBAAgB,GAAG,kBAAiB;AAC1C,MAAM,qBAAqB,GAAG,WAAU;AACxC,MAAM,SAAS,GAAG,YAAW;AAC7B,MAAM,CAAC,GAAG,IAAG;AAEpB;;AAEG;IACS,gBAKX;AALD,CAAA,UAAY,eAAe,EAAA;AACzB,IAAA,eAAA,CAAA,MAAA,CAAA,GAAA,GAAU,CAAA;AACV,IAAA,eAAA,CAAA,SAAA,CAAA,GAAA,GAAa,CAAA;AACb,IAAA,eAAA,CAAA,SAAA,CAAA,GAAA,GAAa,CAAA;AACb,IAAA,eAAA,CAAA,SAAA,CAAA,GAAA,GAAa,CAAA;AACf,CAAC,EALW,eAAe,KAAf,eAAe,GAK1B,EAAA,CAAA,CAAA;;;;"}
@@ -0,0 +1,19 @@
1
+ import { AppInstance, PageInstance } from "./instance-4c64b022.js";
2
+ interface Router {
3
+ params: Record<string, unknown>;
4
+ path: string;
5
+ $taroPath: string;
6
+ onReady: string;
7
+ onHide: string;
8
+ onShow: string;
9
+ exitState?: any;
10
+ }
11
+ interface Current {
12
+ app: AppInstance | null;
13
+ router: Router | null;
14
+ page: PageInstance | null;
15
+ preloadData?: any;
16
+ }
17
+ declare const Current: Current;
18
+ declare const getCurrentInstance: () => Current;
19
+ export { Router, Current, getCurrentInstance };
@@ -0,0 +1,9 @@
1
+ const Current = {
2
+ app: null,
3
+ router: null,
4
+ page: null
5
+ };
6
+ const getCurrentInstance = () => Current;
7
+
8
+ export { Current, getCurrentInstance };
9
+ //# sourceMappingURL=current.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"current.js","sources":["../src/current.ts"],"sourcesContent":["import { AppInstance, PageInstance } from './dsl/instance'\n\nexport interface Router {\n params: Record<string, unknown>\n path: string\n $taroPath: string\n onReady: string\n onHide: string\n onShow: string\n exitState?: any\n}\n\ninterface Current {\n app: AppInstance | null\n router: Router | null\n page: PageInstance | null\n preloadData?: any\n}\n\nexport const Current: Current = {\n app: null,\n router: null,\n page: null\n}\n\nexport const getCurrentInstance = () => Current\n"],"names":[],"mappings":"AAmBa,MAAA,OAAO,GAAY;AAC9B,IAAA,GAAG,EAAE,IAAI;AACT,IAAA,MAAM,EAAE,IAAI;AACZ,IAAA,IAAI,EAAE,IAAI;EACX;MAEY,kBAAkB,GAAG,MAAM;;;;"}
@@ -0,0 +1,14 @@
1
+ import { TaroElement } from "./element.js";
2
+ declare class AnchorElement extends TaroElement {
3
+ get href(): string;
4
+ set href(val: string);
5
+ get protocol(): any;
6
+ get host(): any;
7
+ get search(): any;
8
+ get hash(): any;
9
+ get hostname(): any;
10
+ get port(): any;
11
+ get pathname(): any;
12
+ setAttribute(qualifiedName: string, value: any): void;
13
+ }
14
+ export { AnchorElement };
@@ -0,0 +1,54 @@
1
+ import { parseUrl } from '../bom/URL.js';
2
+ import { TaroElement } from './element.js';
3
+
4
+ class AnchorElement extends TaroElement {
5
+ get href() {
6
+ var _a;
7
+ return (_a = this.props["href" /* AnchorElementAttrs.HREF */]) !== null && _a !== void 0 ? _a : '';
8
+ }
9
+ set href(val) {
10
+ this.setAttribute("href" /* AnchorElementAttrs.HREF */, val);
11
+ }
12
+ get protocol() {
13
+ var _a;
14
+ return (_a = this.props["protocol" /* AnchorElementAttrs.PROTOCOL */]) !== null && _a !== void 0 ? _a : '';
15
+ }
16
+ get host() {
17
+ var _a;
18
+ return (_a = this.props["host" /* AnchorElementAttrs.HOST */]) !== null && _a !== void 0 ? _a : '';
19
+ }
20
+ get search() {
21
+ var _a;
22
+ return (_a = this.props["search" /* AnchorElementAttrs.SEARCH */]) !== null && _a !== void 0 ? _a : '';
23
+ }
24
+ get hash() {
25
+ var _a;
26
+ return (_a = this.props["hash" /* AnchorElementAttrs.HASH */]) !== null && _a !== void 0 ? _a : '';
27
+ }
28
+ get hostname() {
29
+ var _a;
30
+ return (_a = this.props["hostname" /* AnchorElementAttrs.HOSTNAME */]) !== null && _a !== void 0 ? _a : '';
31
+ }
32
+ get port() {
33
+ var _a;
34
+ return (_a = this.props["port" /* AnchorElementAttrs.PORT */]) !== null && _a !== void 0 ? _a : '';
35
+ }
36
+ get pathname() {
37
+ var _a;
38
+ return (_a = this.props["pathname" /* AnchorElementAttrs.PATHNAME */]) !== null && _a !== void 0 ? _a : '';
39
+ }
40
+ setAttribute(qualifiedName, value) {
41
+ if (qualifiedName === "href" /* AnchorElementAttrs.HREF */) {
42
+ const willSetAttr = parseUrl(value);
43
+ for (const k in willSetAttr) {
44
+ super.setAttribute(k, willSetAttr[k]);
45
+ }
46
+ }
47
+ else {
48
+ super.setAttribute(qualifiedName, value);
49
+ }
50
+ }
51
+ }
52
+
53
+ export { AnchorElement };
54
+ //# sourceMappingURL=anchor-element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anchor-element.js","sources":["../../src/dom/anchor-element.ts"],"sourcesContent":["import { parseUrl } from '../bom/URL'\nimport { TaroElement } from './element'\n\nconst enum AnchorElementAttrs {\n HREF = 'href',\n PROTOCOL = 'protocol',\n HOST = 'host',\n SEARCH = 'search',\n HASH = 'hash',\n HOSTNAME = 'hostname',\n PORT = 'port',\n PATHNAME = 'pathname'\n}\n\nexport class AnchorElement extends TaroElement {\n public get href () {\n return this.props[AnchorElementAttrs.HREF] ?? ''\n }\n\n public set href (val: string) {\n this.setAttribute(AnchorElementAttrs.HREF, val)\n }\n\n get protocol () {\n return this.props[AnchorElementAttrs.PROTOCOL] ?? ''\n }\n\n get host () {\n return this.props[AnchorElementAttrs.HOST] ?? ''\n }\n\n get search () {\n return this.props[AnchorElementAttrs.SEARCH] ?? ''\n }\n\n get hash () {\n return this.props[AnchorElementAttrs.HASH] ?? ''\n }\n\n get hostname () {\n return this.props[AnchorElementAttrs.HOSTNAME] ?? ''\n }\n\n get port () {\n return this.props[AnchorElementAttrs.PORT] ?? ''\n }\n\n get pathname () {\n return this.props[AnchorElementAttrs.PATHNAME] ?? ''\n }\n\n public setAttribute (qualifiedName: string, value: any): void {\n if (qualifiedName === AnchorElementAttrs.HREF) {\n const willSetAttr = parseUrl(value)\n for (const k in willSetAttr) {\n super.setAttribute(k, willSetAttr[k])\n }\n } else {\n super.setAttribute(qualifiedName, value)\n }\n }\n}\n"],"names":[],"mappings":";;;AAcM,MAAO,aAAc,SAAQ,WAAW,CAAA;AAC5C,IAAA,IAAW,IAAI,GAAA;;AACb,QAAA,OAAO,MAAA,IAAI,CAAC,KAAK,CAAyB,MAAA,+BAAA,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAA;KACjD;IAED,IAAW,IAAI,CAAE,GAAW,EAAA;AAC1B,QAAA,IAAI,CAAC,YAAY,CAA0B,MAAA,gCAAA,GAAG,CAAC,CAAA;KAChD;AAED,IAAA,IAAI,QAAQ,GAAA;;AACV,QAAA,OAAO,MAAA,IAAI,CAAC,KAAK,CAA6B,UAAA,mCAAA,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAA;KACrD;AAED,IAAA,IAAI,IAAI,GAAA;;AACN,QAAA,OAAO,MAAA,IAAI,CAAC,KAAK,CAAyB,MAAA,+BAAA,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAA;KACjD;AAED,IAAA,IAAI,MAAM,GAAA;;AACR,QAAA,OAAO,MAAA,IAAI,CAAC,KAAK,CAA2B,QAAA,iCAAA,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAA;KACnD;AAED,IAAA,IAAI,IAAI,GAAA;;AACN,QAAA,OAAO,MAAA,IAAI,CAAC,KAAK,CAAyB,MAAA,+BAAA,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAA;KACjD;AAED,IAAA,IAAI,QAAQ,GAAA;;AACV,QAAA,OAAO,MAAA,IAAI,CAAC,KAAK,CAA6B,UAAA,mCAAA,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAA;KACrD;AAED,IAAA,IAAI,IAAI,GAAA;;AACN,QAAA,OAAO,MAAA,IAAI,CAAC,KAAK,CAAyB,MAAA,+BAAA,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAA;KACjD;AAED,IAAA,IAAI,QAAQ,GAAA;;AACV,QAAA,OAAO,MAAA,IAAI,CAAC,KAAK,CAA6B,UAAA,mCAAA,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAA;KACrD;IAEM,YAAY,CAAE,aAAqB,EAAE,KAAU,EAAA;QACpD,IAAI,aAAa,KAA4B,MAAA,gCAAE;AAC7C,YAAA,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;AACnC,YAAA,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE;gBAC3B,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;aACtC;SACF;aAAM;AACL,YAAA,KAAK,CAAC,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,CAAA;SACzC;KACF;AACF;;;;"}
@@ -0,0 +1,17 @@
1
+ import { TaroElement } from "./element.js";
2
+ declare class ClassList {
3
+ private el;
4
+ private tokenList;
5
+ constructor(className: string, el: TaroElement);
6
+ get value(): string;
7
+ get length(): number;
8
+ add(): void;
9
+ remove(): void;
10
+ contains(token: string): boolean;
11
+ toggle(token: string, force: boolean): boolean;
12
+ replace(token: string, replacement_token: string): void;
13
+ toString(): string;
14
+ private checkTokenIsValid;
15
+ private _update;
16
+ }
17
+ export { ClassList };
@@ -0,0 +1,92 @@
1
+ class ClassList {
2
+ constructor(className, el) {
3
+ this.tokenList = [];
4
+ this.el = el;
5
+ className.trim().split(/\s+/).forEach(token => this.tokenList.push(token));
6
+ }
7
+ get value() {
8
+ return this.toString();
9
+ }
10
+ get length() {
11
+ return this.tokenList.length;
12
+ }
13
+ add() {
14
+ let index = 0;
15
+ let updated = false;
16
+ const tokens = arguments;
17
+ const length = tokens.length;
18
+ const tokenList = this.tokenList;
19
+ do {
20
+ const token = tokens[index];
21
+ if (this.checkTokenIsValid(token) && !~tokenList.indexOf(token)) {
22
+ tokenList.push(token);
23
+ updated = true;
24
+ }
25
+ } while (++index < length);
26
+ if (updated) {
27
+ this._update();
28
+ }
29
+ }
30
+ remove() {
31
+ let i = 0;
32
+ let updated = false;
33
+ const tokens = arguments;
34
+ const length = tokens.length;
35
+ const tokenList = this.tokenList;
36
+ do {
37
+ const token = tokens[i] + '';
38
+ if (!this.checkTokenIsValid(token))
39
+ continue;
40
+ const index = tokenList.indexOf(token);
41
+ if (~tokenList.indexOf(token)) {
42
+ tokenList.splice(index, 1);
43
+ updated = true;
44
+ }
45
+ } while (++i < length);
46
+ if (updated) {
47
+ this._update();
48
+ }
49
+ }
50
+ contains(token) {
51
+ if (!this.checkTokenIsValid(token))
52
+ return false;
53
+ return !!~this.tokenList.indexOf(token);
54
+ }
55
+ toggle(token, force) {
56
+ const result = this.contains(token);
57
+ const method = result ? force !== true && 'remove' : force !== false && 'add';
58
+ if (method) {
59
+ // @ts-ignore
60
+ this[method](token);
61
+ }
62
+ if (force === true || force === false) {
63
+ return force;
64
+ }
65
+ else {
66
+ return !result;
67
+ }
68
+ }
69
+ replace(token, replacement_token) {
70
+ if (!this.checkTokenIsValid(token) || !this.checkTokenIsValid(replacement_token))
71
+ return;
72
+ const index = this.tokenList.indexOf(token);
73
+ if (~index) {
74
+ this.tokenList.splice(index, 1, replacement_token);
75
+ this._update();
76
+ }
77
+ }
78
+ toString() {
79
+ return this.tokenList.filter(v => v !== '').join(' ');
80
+ }
81
+ checkTokenIsValid(token) {
82
+ if (token === '' || /\s/.test(token))
83
+ return false;
84
+ return true;
85
+ }
86
+ _update() {
87
+ this.el.className = this.value;
88
+ }
89
+ }
90
+
91
+ export { ClassList };
92
+ //# sourceMappingURL=class-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"class-list.js","sources":["../../src/dom/class-list.ts"],"sourcesContent":["import type { TaroElement } from './element'\n\nexport class ClassList {\n private el: TaroElement\n\n private tokenList: string[] = []\n\n constructor (className: string, el: TaroElement) {\n this.el = el\n className.trim().split(/\\s+/).forEach(token => this.tokenList.push(token))\n }\n\n public get value () {\n return this.toString()\n }\n\n public get length () {\n return this.tokenList.length\n }\n\n add () {\n let index = 0\n let updated = false\n\n const tokens = arguments\n const length = tokens.length\n const tokenList = this.tokenList\n\n do {\n const token: string = tokens[index]\n\n if (this.checkTokenIsValid(token) && !~tokenList.indexOf(token)) {\n tokenList.push(token)\n\n updated = true\n }\n } while (++index < length)\n\n if (updated) {\n this._update()\n }\n }\n\n remove () {\n let i = 0\n let updated = false\n\n const tokens = arguments\n const length = tokens.length\n const tokenList = this.tokenList\n\n do {\n const token = tokens[i] + ''\n\n if (!this.checkTokenIsValid(token)) continue\n\n const index = tokenList.indexOf(token)\n\n if (~tokenList.indexOf(token)) {\n tokenList.splice(index, 1)\n\n updated = true\n }\n } while (++i < length)\n\n if (updated) {\n this._update()\n }\n }\n\n contains (token: string) {\n if (!this.checkTokenIsValid(token)) return false\n\n return !!~this.tokenList.indexOf(token)\n }\n\n toggle (token: string, force: boolean) {\n const result = this.contains(token)\n const method = result ? force !== true && 'remove' : force !== false && 'add'\n\n if (method) {\n // @ts-ignore\n this[method](token)\n }\n\n if (force === true || force === false) {\n return force\n } else {\n return !result\n }\n }\n\n replace (token: string, replacement_token: string) {\n if (!this.checkTokenIsValid(token) || !this.checkTokenIsValid(replacement_token)) return\n\n const index = this.tokenList.indexOf(token)\n\n if (~index) {\n this.tokenList.splice(index, 1, replacement_token)\n this._update()\n }\n }\n\n toString () {\n return this.tokenList.filter(v => v !== '').join(' ')\n }\n\n private checkTokenIsValid (token: string) {\n if (token === '' || /\\s/.test(token)) return false\n\n return true\n }\n\n private _update () {\n this.el.className = this.value\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { TaroElement } from "./element.js";
2
+ import { createEvent } from "./event.js";
3
+ import { FormElement } from "./form.js";
4
+ import { TaroRootElement } from "./root.js";
5
+ import { TaroText } from "./text.js";
6
+ declare class TaroDocument extends TaroElement {
7
+ documentElement: TaroElement;
8
+ head: TaroElement;
9
+ body: TaroElement;
10
+ createEvent: typeof createEvent;
11
+ cookie?: string;
12
+ constructor();
13
+ createElement(type: string): TaroElement | TaroRootElement | FormElement;
14
+ // an ugly fake createElementNS to deal with @vue/runtime-dom's
15
+ // support mounting app to svg container since vue@3.0.8
16
+ createElementNS(_svgNS: string, type: string): TaroElement | TaroRootElement | FormElement;
17
+ createTextNode(text: string): TaroText;
18
+ getElementById<T extends TaroElement>(id: string | undefined | null): T | null;
19
+ querySelector<T extends TaroElement>(query: string): T | null;
20
+ querySelectorAll(): never[];
21
+ // @TODO: @PERF: 在 hydrate 移除掉空的 node
22
+ createComment(): TaroText;
23
+ get defaultView(): any;
24
+ }
25
+ export { TaroDocument };
@@ -0,0 +1,80 @@
1
+ import { toCamelCase, controlledComponent, isUndefined } from '@tarojs/shared';
2
+ import { DOCUMENT_ELEMENT_NAME, A, ROOT_STR, COMMENT } from '../constants/index.js';
3
+ import { TaroElement } from './element.js';
4
+ import { createEvent } from './event.js';
5
+ import { eventSource } from './event-source.js';
6
+ import { FormElement } from './form.js';
7
+ import { TaroRootElement } from './root.js';
8
+ import { TaroText } from './text.js';
9
+ import env from '../env.js';
10
+ import { AnchorElement } from './anchor-element.js';
11
+ import { TransferElement } from './transfer.js';
12
+
13
+ class TaroDocument extends TaroElement {
14
+ constructor() {
15
+ super();
16
+ this.createEvent = createEvent;
17
+ this.nodeType = 9 /* NodeType.DOCUMENT_NODE */;
18
+ this.nodeName = DOCUMENT_ELEMENT_NAME;
19
+ }
20
+ createElement(type) {
21
+ const nodeName = type.toLowerCase();
22
+ let element;
23
+ switch (true) {
24
+ case nodeName === ROOT_STR:
25
+ element = new TaroRootElement();
26
+ return element;
27
+ case controlledComponent.has(nodeName):
28
+ element = new FormElement();
29
+ break;
30
+ case nodeName === A:
31
+ element = new AnchorElement();
32
+ break;
33
+ case nodeName === 'page-meta':
34
+ case nodeName === 'navigation-bar':
35
+ element = new TransferElement(toCamelCase(nodeName));
36
+ break;
37
+ default:
38
+ element = new TaroElement();
39
+ break;
40
+ }
41
+ element.nodeName = nodeName;
42
+ element.tagName = type.toUpperCase();
43
+ return element;
44
+ }
45
+ // an ugly fake createElementNS to deal with @vue/runtime-dom's
46
+ // support mounting app to svg container since vue@3.0.8
47
+ createElementNS(_svgNS, type) {
48
+ return this.createElement(type);
49
+ }
50
+ createTextNode(text) {
51
+ return new TaroText(text);
52
+ }
53
+ getElementById(id) {
54
+ const el = eventSource.get(id);
55
+ return isUndefined(el) ? null : el;
56
+ }
57
+ querySelector(query) {
58
+ // 为了 Vue3 的乞丐版实现
59
+ if (/^#/.test(query)) {
60
+ return this.getElementById(query.slice(1));
61
+ }
62
+ return null;
63
+ }
64
+ querySelectorAll() {
65
+ // fake hack
66
+ return [];
67
+ }
68
+ // @TODO: @PERF: 在 hydrate 移除掉空的 node
69
+ createComment() {
70
+ const textnode = new TaroText('');
71
+ textnode.nodeName = COMMENT;
72
+ return textnode;
73
+ }
74
+ get defaultView() {
75
+ return env.window;
76
+ }
77
+ }
78
+
79
+ export { TaroDocument };
80
+ //# sourceMappingURL=document.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document.js","sources":["../../src/dom/document.ts"],"sourcesContent":["import { controlledComponent, isUndefined, toCamelCase } from '@tarojs/shared'\n\nimport {\n A,\n COMMENT,\n DOCUMENT_ELEMENT_NAME,\n ROOT_STR\n} from '../constants'\nimport { TaroElement } from '../dom/element'\nimport { createEvent } from '../dom/event'\nimport { eventSource } from '../dom/event-source'\nimport { FormElement } from '../dom/form'\nimport { NodeType } from '../dom/node_types'\nimport { TaroRootElement } from '../dom/root'\nimport { TaroText } from '../dom/text'\nimport env from '../env'\nimport { AnchorElement } from './anchor-element'\nimport { TransferElement } from './transfer'\n\nexport class TaroDocument extends TaroElement {\n public documentElement: TaroElement\n public head: TaroElement\n public body: TaroElement\n public createEvent = createEvent\n cookie?: string\n\n public constructor () {\n super()\n this.nodeType = NodeType.DOCUMENT_NODE\n this.nodeName = DOCUMENT_ELEMENT_NAME\n }\n\n public createElement (type: string): TaroElement | TaroRootElement | FormElement {\n const nodeName = type.toLowerCase()\n\n let element: TaroElement\n switch (true) {\n case nodeName === ROOT_STR:\n element = new TaroRootElement()\n return element\n case controlledComponent.has(nodeName):\n element = new FormElement()\n break\n case nodeName === A:\n element = new AnchorElement()\n break\n case nodeName === 'page-meta':\n case nodeName === 'navigation-bar':\n element = new TransferElement(toCamelCase(nodeName))\n break\n default:\n element = new TaroElement()\n break\n }\n\n element.nodeName = nodeName\n element.tagName = type.toUpperCase()\n\n return element\n }\n\n // an ugly fake createElementNS to deal with @vue/runtime-dom's\n // support mounting app to svg container since vue@3.0.8\n public createElementNS (_svgNS: string, type: string): TaroElement | TaroRootElement | FormElement {\n return this.createElement(type)\n }\n\n public createTextNode (text: string): TaroText {\n return new TaroText(text)\n }\n\n public getElementById<T extends TaroElement> (id: string | undefined | null): T | null {\n const el = eventSource.get(id)\n return isUndefined(el) ? null : el as T\n }\n\n public querySelector<T extends TaroElement> (query: string): T | null {\n // 为了 Vue3 的乞丐版实现\n if (/^#/.test(query)) {\n return this.getElementById<T>(query.slice(1))\n }\n return null\n }\n\n public querySelectorAll () {\n // fake hack\n return []\n }\n\n // @TODO: @PERF: 在 hydrate 移除掉空的 node\n public createComment (): TaroText {\n const textnode = new TaroText('')\n textnode.nodeName = COMMENT\n return textnode\n }\n\n get defaultView () {\n return env.window\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;AAmBM,MAAO,YAAa,SAAQ,WAAW,CAAA;AAO3C,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE,CAAA;QAJF,IAAW,CAAA,WAAA,GAAG,WAAW,CAAA;QAK9B,IAAI,CAAC,QAAQ,GAAA,CAAA,8BAAyB;AACtC,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAA;KACtC;AAEM,IAAA,aAAa,CAAE,IAAY,EAAA;AAChC,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;AAEnC,QAAA,IAAI,OAAoB,CAAA;QACxB,QAAQ,IAAI;YACV,KAAK,QAAQ,KAAK,QAAQ;AACxB,gBAAA,OAAO,GAAG,IAAI,eAAe,EAAE,CAAA;AAC/B,gBAAA,OAAO,OAAO,CAAA;AAChB,YAAA,KAAK,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC;AACpC,gBAAA,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;gBAC3B,MAAK;YACP,KAAK,QAAQ,KAAK,CAAC;AACjB,gBAAA,OAAO,GAAG,IAAI,aAAa,EAAE,CAAA;gBAC7B,MAAK;YACP,KAAK,QAAQ,KAAK,WAAW,CAAC;YAC9B,KAAK,QAAQ,KAAK,gBAAgB;gBAChC,OAAO,GAAG,IAAI,eAAe,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAA;gBACpD,MAAK;AACP,YAAA;AACE,gBAAA,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;gBAC3B,MAAK;SACR;AAED,QAAA,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAA;AAC3B,QAAA,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;AAEpC,QAAA,OAAO,OAAO,CAAA;KACf;;;IAIM,eAAe,CAAE,MAAc,EAAE,IAAY,EAAA;AAClD,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;KAChC;AAEM,IAAA,cAAc,CAAE,IAAY,EAAA;AACjC,QAAA,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;KAC1B;AAEM,IAAA,cAAc,CAAyB,EAA6B,EAAA;QACzE,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;AAC9B,QAAA,OAAO,WAAW,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,EAAO,CAAA;KACxC;AAEM,IAAA,aAAa,CAAyB,KAAa,EAAA;;AAExD,QAAA,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACpB,OAAO,IAAI,CAAC,cAAc,CAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;SAC9C;AACD,QAAA,OAAO,IAAI,CAAA;KACZ;IAEM,gBAAgB,GAAA;;AAErB,QAAA,OAAO,EAAE,CAAA;KACV;;IAGM,aAAa,GAAA;AAClB,QAAA,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAA;AACjC,QAAA,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAA;AAC3B,QAAA,OAAO,QAAQ,CAAA;KAChB;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,GAAG,CAAC,MAAM,CAAA;KAClB;AACF;;;;"}
@@ -0,0 +1,40 @@
1
+ import { ClassList } from "./class-list.js";
2
+ import { TaroNode } from "./node.js";
3
+ import { Style } from "./style.js";
4
+ import { Attributes, TFunc } from "../index-26658829.js";
5
+ import { TaroEvent } from "./event.js";
6
+ declare class TaroElement extends TaroNode {
7
+ ctx?: any;
8
+ tagName: string;
9
+ props: Record<string, any>;
10
+ style: Style;
11
+ dataset: Record<string, unknown>;
12
+ innerHTML: string;
13
+ constructor();
14
+ private _stopPropagation;
15
+ get id(): string;
16
+ set id(val: string);
17
+ get className(): string;
18
+ set className(val: string);
19
+ get cssText(): string;
20
+ get classList(): ClassList;
21
+ get children(): TaroElement[];
22
+ get attributes(): Attributes[];
23
+ get textContent(): string;
24
+ set textContent(text: string);
25
+ hasAttribute(qualifiedName: string): boolean;
26
+ hasAttributes(): boolean;
27
+ get focus(): () => void;
28
+ set focus(value: () => void);
29
+ blur(): void;
30
+ setAttribute(qualifiedName: string, value: any): void;
31
+ removeAttribute(qualifiedName: string): void;
32
+ getAttribute(qualifiedName: string): string;
33
+ getElementsByTagName(tagName: string): TaroElement[];
34
+ getElementsByClassName(className: string): TaroElement[];
35
+ dispatchEvent(event: TaroEvent): boolean;
36
+ addEventListener(type: any, handler: any, options: any): void;
37
+ removeEventListener(type: any, handler: any, sideEffect?: boolean): void;
38
+ static extend(methodName: string, options: TFunc | Record<string, any>): void;
39
+ }
40
+ export { TaroElement };