glass-easel 0.2.0 → 0.3.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 (197) hide show
  1. package/.eslintignore +4 -0
  2. package/dist/glass_easel.all.js +2 -2
  3. package/dist/glass_easel.all.js.map +1 -1
  4. package/dist/glass_easel.d.ts +2546 -0
  5. package/dist/glass_easel.domlike.global.js +2 -2
  6. package/dist/glass_easel.domlike.global.js.map +1 -1
  7. package/guide/zh_CN/appendix/backend_protocol.md +164 -74
  8. package/jest.unit.config.js +7 -4
  9. package/package.json +7 -5
  10. package/rollup.config.ts +101 -0
  11. package/src/backend/backend_protocol.ts +26 -345
  12. package/src/backend/composed_backend_protocol.ts +10 -264
  13. package/src/backend/current_window_backend_context.ts +478 -0
  14. package/src/backend/domlike_backend_protocol.ts +9 -498
  15. package/src/backend/empty_backend.ts +265 -0
  16. package/src/backend/empty_composed_backend.ts +245 -0
  17. package/src/backend/index.ts +18 -0
  18. package/src/backend/suggested_backend_protocol.ts +62 -11
  19. package/src/behavior.ts +131 -442
  20. package/src/class_list.ts +328 -222
  21. package/src/component.ts +349 -184
  22. package/src/component_params.ts +54 -25
  23. package/src/component_space.ts +36 -15
  24. package/src/data_path.ts +22 -34
  25. package/src/data_proxy.ts +334 -27
  26. package/src/devtool.ts +89 -0
  27. package/src/element.ts +667 -285
  28. package/src/element_iterator.ts +9 -4
  29. package/src/event.ts +39 -20
  30. package/src/external_shadow_tree.ts +2 -2
  31. package/src/func_arr.ts +55 -101
  32. package/src/global_options.ts +18 -42
  33. package/src/index.ts +72 -73
  34. package/src/mutation_observer.ts +10 -7
  35. package/src/native_node.ts +79 -35
  36. package/src/node.ts +23 -30
  37. package/src/relation.ts +101 -12
  38. package/src/render.ts +5 -3
  39. package/src/selector.ts +9 -7
  40. package/src/shadow_root.ts +96 -240
  41. package/src/template_engine.ts +10 -7
  42. package/src/text_node.ts +43 -19
  43. package/src/tmpl/index.ts +38 -30
  44. package/src/tmpl/native_rendering.ts +14 -21
  45. package/src/tmpl/proc_gen_wrapper.ts +189 -151
  46. package/src/tmpl/proc_gen_wrapper_dom.ts +10 -8
  47. package/src/tmpl/range_list_diff.ts +30 -9
  48. package/src/trait_behaviors.ts +1 -1
  49. package/src/type_symbol.ts +36 -0
  50. package/src/virtual_node.ts +26 -13
  51. package/src/warning.ts +119 -0
  52. package/tests/base/composed_backend.ts +143 -142
  53. package/tests/base/env.ts +76 -3
  54. package/tests/base/match.ts +24 -22
  55. package/tests/base/shadow_backend.ts +917 -0
  56. package/tests/core/backend.test.ts +53 -1
  57. package/tests/core/behavior.test.ts +1 -1
  58. package/tests/core/data_update.test.ts +135 -0
  59. package/tests/core/misc.test.ts +91 -21
  60. package/tests/core/placeholder.test.ts +66 -25
  61. package/tests/core/slot.test.ts +161 -23
  62. package/tests/legacy/component.test.js +152 -78
  63. package/tests/legacy/data_path.test.js +19 -19
  64. package/tests/legacy/data_proxy.test.js +14 -7
  65. package/tests/legacy/external.test.js +8 -8
  66. package/tests/legacy/mutation_observer.test.js +7 -5
  67. package/tests/legacy/slot.test.js +2 -3
  68. package/tests/legacy/virtual.test.js +258 -25
  69. package/tests/tmpl/binding_map.test.ts +201 -195
  70. package/tests/tmpl/event.test.ts +138 -23
  71. package/tests/tmpl/expression.test.ts +15 -15
  72. package/tests/tmpl/lvalue.test.ts +101 -0
  73. package/tests/tmpl/structure.test.ts +486 -43
  74. package/tests/types/chaining.test.ts +27 -30
  75. package/tests/types/createElement.test.ts +5 -4
  76. package/tests/types/definition.test.ts +11 -14
  77. package/tsconfig.json +1 -3
  78. package/dist/glass_easel.all.d.ts +0 -1
  79. package/dist/glass_easel.domlike.global.d.ts +0 -1
  80. package/dist/index.d.ts +0 -1
  81. package/dist/index.js +0 -1
  82. package/dist/types/src/backend/backend_protocol.d.ts +0 -141
  83. package/dist/types/src/backend/backend_protocol.d.ts.map +0 -1
  84. package/dist/types/src/backend/composed_backend_protocol.d.ts +0 -102
  85. package/dist/types/src/backend/composed_backend_protocol.d.ts.map +0 -1
  86. package/dist/types/src/backend/domlike_backend_protocol.d.ts +0 -100
  87. package/dist/types/src/backend/domlike_backend_protocol.d.ts.map +0 -1
  88. package/dist/types/src/backend/mode.d.ts +0 -65
  89. package/dist/types/src/backend/mode.d.ts.map +0 -1
  90. package/dist/types/src/backend/suggested_backend_protocol.d.ts +0 -30
  91. package/dist/types/src/backend/suggested_backend_protocol.d.ts.map +0 -1
  92. package/dist/types/src/behavior.d.ts +0 -434
  93. package/dist/types/src/behavior.d.ts.map +0 -1
  94. package/dist/types/src/class_list.d.ts +0 -83
  95. package/dist/types/src/class_list.d.ts.map +0 -1
  96. package/dist/types/src/component.d.ts +0 -325
  97. package/dist/types/src/component.d.ts.map +0 -1
  98. package/dist/types/src/component_params.d.ts +0 -236
  99. package/dist/types/src/component_params.d.ts.map +0 -1
  100. package/dist/types/src/component_space.d.ts +0 -211
  101. package/dist/types/src/component_space.d.ts.map +0 -1
  102. package/dist/types/src/data_path.d.ts +0 -5
  103. package/dist/types/src/data_path.d.ts.map +0 -1
  104. package/dist/types/src/data_proxy.d.ts +0 -107
  105. package/dist/types/src/data_proxy.d.ts.map +0 -1
  106. package/dist/types/src/data_utils.d.ts +0 -3
  107. package/dist/types/src/data_utils.d.ts.map +0 -1
  108. package/dist/types/src/element.d.ts +0 -365
  109. package/dist/types/src/element.d.ts.map +0 -1
  110. package/dist/types/src/element_iterator.d.ts +0 -43
  111. package/dist/types/src/element_iterator.d.ts.map +0 -1
  112. package/dist/types/src/event.d.ts +0 -105
  113. package/dist/types/src/event.d.ts.map +0 -1
  114. package/dist/types/src/external_shadow_tree.d.ts +0 -20
  115. package/dist/types/src/external_shadow_tree.d.ts.map +0 -1
  116. package/dist/types/src/func_arr.d.ts +0 -39
  117. package/dist/types/src/func_arr.d.ts.map +0 -1
  118. package/dist/types/src/global_options.d.ts +0 -120
  119. package/dist/types/src/global_options.d.ts.map +0 -1
  120. package/dist/types/src/index.d.ts +0 -43
  121. package/dist/types/src/index.d.ts.map +0 -1
  122. package/dist/types/src/mutation_observer.d.ts +0 -79
  123. package/dist/types/src/mutation_observer.d.ts.map +0 -1
  124. package/dist/types/src/native_node.d.ts +0 -11
  125. package/dist/types/src/native_node.d.ts.map +0 -1
  126. package/dist/types/src/node.d.ts +0 -48
  127. package/dist/types/src/node.d.ts.map +0 -1
  128. package/dist/types/src/relation.d.ts +0 -46
  129. package/dist/types/src/relation.d.ts.map +0 -1
  130. package/dist/types/src/render.d.ts +0 -3
  131. package/dist/types/src/render.d.ts.map +0 -1
  132. package/dist/types/src/selector.d.ts +0 -32
  133. package/dist/types/src/selector.d.ts.map +0 -1
  134. package/dist/types/src/shadow_root.d.ts +0 -174
  135. package/dist/types/src/shadow_root.d.ts.map +0 -1
  136. package/dist/types/src/template_engine.d.ts +0 -56
  137. package/dist/types/src/template_engine.d.ts.map +0 -1
  138. package/dist/types/src/text_node.d.ts +0 -44
  139. package/dist/types/src/text_node.d.ts.map +0 -1
  140. package/dist/types/src/tmpl/index.d.ts +0 -19
  141. package/dist/types/src/tmpl/index.d.ts.map +0 -1
  142. package/dist/types/src/tmpl/native_rendering.d.ts +0 -45
  143. package/dist/types/src/tmpl/native_rendering.d.ts.map +0 -1
  144. package/dist/types/src/tmpl/proc_gen_wrapper.d.ts +0 -89
  145. package/dist/types/src/tmpl/proc_gen_wrapper.d.ts.map +0 -1
  146. package/dist/types/src/tmpl/proc_gen_wrapper_dom.d.ts +0 -50
  147. package/dist/types/src/tmpl/proc_gen_wrapper_dom.d.ts.map +0 -1
  148. package/dist/types/src/tmpl/range_list_diff.d.ts +0 -19
  149. package/dist/types/src/tmpl/range_list_diff.d.ts.map +0 -1
  150. package/dist/types/src/trait_behaviors.d.ts +0 -38
  151. package/dist/types/src/trait_behaviors.d.ts.map +0 -1
  152. package/dist/types/src/virtual_node.d.ts +0 -10
  153. package/dist/types/src/virtual_node.d.ts.map +0 -1
  154. package/dist/types/tests/backend/domlike.test.d.ts +0 -2
  155. package/dist/types/tests/backend/domlike.test.d.ts.map +0 -1
  156. package/dist/types/tests/base/composed_backend.d.ts +0 -123
  157. package/dist/types/tests/base/composed_backend.d.ts.map +0 -1
  158. package/dist/types/tests/base/env.d.ts +0 -30
  159. package/dist/types/tests/base/env.d.ts.map +0 -1
  160. package/dist/types/tests/base/match.d.ts +0 -9
  161. package/dist/types/tests/base/match.d.ts.map +0 -1
  162. package/dist/types/tests/core/backend.test.d.ts +0 -2
  163. package/dist/types/tests/core/backend.test.d.ts.map +0 -1
  164. package/dist/types/tests/core/behavior.test.d.ts +0 -2
  165. package/dist/types/tests/core/behavior.test.d.ts.map +0 -1
  166. package/dist/types/tests/core/component_space.test.d.ts +0 -2
  167. package/dist/types/tests/core/component_space.test.d.ts.map +0 -1
  168. package/dist/types/tests/core/data_update.test.d.ts +0 -2
  169. package/dist/types/tests/core/data_update.test.d.ts.map +0 -1
  170. package/dist/types/tests/core/misc.test.d.ts +0 -2
  171. package/dist/types/tests/core/misc.test.d.ts.map +0 -1
  172. package/dist/types/tests/core/placeholder.test.d.ts +0 -2
  173. package/dist/types/tests/core/placeholder.test.d.ts.map +0 -1
  174. package/dist/types/tests/core/slot.test.d.ts +0 -2
  175. package/dist/types/tests/core/slot.test.d.ts.map +0 -1
  176. package/dist/types/tests/core/trait_behaviors.test.d.ts +0 -2
  177. package/dist/types/tests/core/trait_behaviors.test.d.ts.map +0 -1
  178. package/dist/types/tests/tmpl/binding_map.test.d.ts +0 -2
  179. package/dist/types/tests/tmpl/binding_map.test.d.ts.map +0 -1
  180. package/dist/types/tests/tmpl/event.test.d.ts +0 -2
  181. package/dist/types/tests/tmpl/event.test.d.ts.map +0 -1
  182. package/dist/types/tests/tmpl/expression.test.d.ts +0 -2
  183. package/dist/types/tests/tmpl/expression.test.d.ts.map +0 -1
  184. package/dist/types/tests/tmpl/lvalue.test.d.ts +0 -2
  185. package/dist/types/tests/tmpl/lvalue.test.d.ts.map +0 -1
  186. package/dist/types/tests/tmpl/native_rendering.test.d.ts +0 -2
  187. package/dist/types/tests/tmpl/native_rendering.test.d.ts.map +0 -1
  188. package/dist/types/tests/tmpl/structure.test.d.ts +0 -2
  189. package/dist/types/tests/tmpl/structure.test.d.ts.map +0 -1
  190. package/dist/types/tests/types/chaining.test.d.ts +0 -2
  191. package/dist/types/tests/types/chaining.test.d.ts.map +0 -1
  192. package/dist/types/tests/types/createElement.test.d.ts +0 -2
  193. package/dist/types/tests/types/createElement.test.d.ts.map +0 -1
  194. package/dist/types/tests/types/definition.test.d.ts +0 -2
  195. package/dist/types/tests/types/definition.test.d.ts.map +0 -1
  196. package/webpack.config.js +0 -275
  197. /package/src/backend/{mode.ts → shared.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"behavior.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/behavior.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=component_space.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component_space.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/component_space.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data_update.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data_update.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/data_update.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=misc.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"misc.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/misc.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=placeholder.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"placeholder.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/placeholder.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=slot.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"slot.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/slot.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=trait_behaviors.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"trait_behaviors.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/trait_behaviors.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=binding_map.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"binding_map.test.d.ts","sourceRoot":"","sources":["../../../../tests/tmpl/binding_map.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=event.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event.test.d.ts","sourceRoot":"","sources":["../../../../tests/tmpl/event.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=expression.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expression.test.d.ts","sourceRoot":"","sources":["../../../../tests/tmpl/expression.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=lvalue.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lvalue.test.d.ts","sourceRoot":"","sources":["../../../../tests/tmpl/lvalue.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=native_rendering.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"native_rendering.test.d.ts","sourceRoot":"","sources":["../../../../tests/tmpl/native_rendering.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=structure.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"structure.test.d.ts","sourceRoot":"","sources":["../../../../tests/tmpl/structure.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=chaining.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chaining.test.d.ts","sourceRoot":"","sources":["../../../../tests/types/chaining.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=createElement.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createElement.test.d.ts","sourceRoot":"","sources":["../../../../tests/types/createElement.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=definition.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"definition.test.d.ts","sourceRoot":"","sources":["../../../../tests/types/definition.test.ts"],"names":[],"mappings":""}
package/webpack.config.js DELETED
@@ -1,275 +0,0 @@
1
- /* eslint-disable */
2
-
3
- const path = require('path')
4
- const webpack = require('webpack')
5
- const { RawSource } = require('webpack-sources')
6
-
7
- const jobs = []
8
- let mainJobOutput = null
9
- let minimize = null
10
- let dev = false
11
- const args = process.env['GLASS_EASEL_ARGS'] || ''
12
- args.split(' ').forEach((arg) => {
13
- if (!arg) return
14
- if (arg[0] === '-') {
15
- if (arg === '--minimize') minimize = true
16
- else if (arg === '--no-minimize') minimize = false
17
- else if (arg === '--dev') dev = true
18
- } else {
19
- jobs.push(arg)
20
- }
21
- })
22
-
23
- const genOutputName = (jobExt) => `glass_easel.${jobExt}${dev ? '.dev' : ''}.js`
24
-
25
- const mode = dev ? 'development' : 'production'
26
-
27
- const rules = [
28
- {
29
- test: /\.ts$/,
30
- loader: 'ts-loader',
31
- exclude: /node_modules/,
32
- },
33
- ]
34
-
35
- const optimization = {
36
- minimize: minimize === null ? undefined : minimize,
37
- }
38
-
39
- const devtool = 'source-map'
40
-
41
- const resolve = {
42
- extensions: ['.ts', '.js'],
43
- }
44
-
45
- const performance = {
46
- maxEntrypointSize: 512000,
47
- maxAssetSize: 512000,
48
- }
49
-
50
- class BundleDeclarationEntrancePlugin {
51
- apply(compiler) {
52
- compiler.hooks.compilation.tap(
53
- 'BundleDeclarationEntrancePlugin',
54
- (compilation, compilationParams) => {
55
- compilation.hooks.additionalAssets.tapPromise('ExtraAssetPlugin', async () => {
56
- Object.keys(compilation.assets).forEach((file) => {
57
- if (file.endsWith('.js')) {
58
- const dtsFile = file.replace(/\.js$/, '.d.ts')
59
- compilation.assets[dtsFile] = new RawSource('export * from "./types/src/index"')
60
- }
61
- })
62
- if (mainJobOutput) {
63
- compilation.assets['index.js'] = new RawSource(
64
- `module.exports = require('./${mainJobOutput}')`,
65
- )
66
- compilation.assets['index.d.ts'] = new RawSource(`export * from "./${mainJobOutput}"`)
67
- }
68
- })
69
- },
70
- )
71
- }
72
- }
73
-
74
- const globalPlugins = [new BundleDeclarationEntrancePlugin()]
75
-
76
- const allCompilation = {
77
- mode,
78
- output: {
79
- path: path.resolve(__dirname, 'dist'),
80
- filename: genOutputName('all'),
81
- libraryTarget: 'commonjs2',
82
- },
83
- optimization,
84
- devtool,
85
- module: {
86
- rules,
87
- },
88
- resolve,
89
- performance,
90
- plugins: [
91
- new webpack.DefinePlugin({
92
- 'BM.DYNAMIC': true,
93
- 'BM.SHADOW': false,
94
- 'BM.COMPOSED': false,
95
- 'BM.DOMLIKE': false,
96
- }),
97
- ...globalPlugins,
98
- ],
99
- }
100
-
101
- const shadowCompilation = {
102
- mode,
103
- output: {
104
- path: path.resolve(__dirname, 'dist'),
105
- filename: genOutputName('shadow'),
106
- libraryTarget: 'commonjs2',
107
- },
108
- optimization,
109
- devtool,
110
- module: {
111
- rules,
112
- },
113
- resolve,
114
- performance,
115
- plugins: [
116
- new webpack.DefinePlugin({
117
- 'BM.DYNAMIC': false,
118
- 'BM.SHADOW': true,
119
- 'BM.COMPOSED': false,
120
- 'BM.DOMLIKE': false,
121
- }),
122
- ...globalPlugins,
123
- ],
124
- }
125
-
126
- const shadowGlobalCompilation = {
127
- mode,
128
- output: {
129
- path: path.resolve(__dirname, 'dist'),
130
- filename: genOutputName('shadow.global'),
131
- libraryTarget: 'var',
132
- library: 'glassEasel',
133
- },
134
- optimization,
135
- devtool,
136
- module: {
137
- rules,
138
- },
139
- resolve,
140
- performance,
141
- plugins: [
142
- new webpack.DefinePlugin({
143
- 'BM.DYNAMIC': false,
144
- 'BM.SHADOW': true,
145
- 'BM.COMPOSED': false,
146
- 'BM.DOMLIKE': false,
147
- }),
148
- ...globalPlugins,
149
- ],
150
- }
151
-
152
- const composedCompilation = {
153
- mode,
154
- output: {
155
- path: path.resolve(__dirname, 'dist'),
156
- filename: genOutputName('composed'),
157
- libraryTarget: 'commonjs2',
158
- },
159
- optimization,
160
- devtool,
161
- module: {
162
- rules,
163
- },
164
- resolve,
165
- performance,
166
- plugins: [
167
- new webpack.DefinePlugin({
168
- 'BM.DYNAMIC': false,
169
- 'BM.SHADOW': false,
170
- 'BM.COMPOSED': true,
171
- 'BM.DOMLIKE': false,
172
- }),
173
- ...globalPlugins,
174
- ],
175
- }
176
-
177
- const composedGlobalCompilation = {
178
- mode,
179
- output: {
180
- path: path.resolve(__dirname, 'dist'),
181
- filename: genOutputName('composed.global'),
182
- libraryTarget: 'var',
183
- library: 'glassEasel',
184
- },
185
- optimization,
186
- devtool,
187
- module: {
188
- rules,
189
- },
190
- resolve,
191
- performance,
192
- plugins: [
193
- new webpack.DefinePlugin({
194
- 'BM.DYNAMIC': false,
195
- 'BM.SHADOW': false,
196
- 'BM.COMPOSED': true,
197
- 'BM.DOMLIKE': false,
198
- }),
199
- ...globalPlugins,
200
- ],
201
- }
202
-
203
- const domlikeCompilation = {
204
- mode,
205
- output: {
206
- path: path.resolve(__dirname, 'dist'),
207
- filename: genOutputName('domlike'),
208
- libraryTarget: 'commonjs2',
209
- },
210
- entry: dev ? './src/bootstrap_dom_dev.js' : './src/index.ts',
211
- optimization,
212
- devtool,
213
- module: {
214
- rules,
215
- },
216
- resolve,
217
- performance,
218
- plugins: [
219
- new webpack.DefinePlugin({
220
- 'BM.DYNAMIC': false,
221
- 'BM.SHADOW': false,
222
- 'BM.COMPOSED': false,
223
- 'BM.DOMLIKE': true,
224
- }),
225
- ...globalPlugins,
226
- ],
227
- }
228
-
229
- const domlikeGlobalCompilation = {
230
- mode,
231
- output: {
232
- path: path.resolve(__dirname, 'dist'),
233
- filename: genOutputName('domlike.global'),
234
- libraryTarget: 'var',
235
- library: 'glassEasel',
236
- },
237
- entry: dev ? './src/bootstrap_dom_dev.js' : './src/index.ts',
238
- optimization,
239
- devtool,
240
- module: {
241
- rules,
242
- },
243
- resolve,
244
- performance,
245
- plugins: [
246
- new webpack.DefinePlugin({
247
- 'BM.DYNAMIC': false,
248
- 'BM.SHADOW': false,
249
- 'BM.COMPOSED': false,
250
- 'BM.DOMLIKE': true,
251
- }),
252
- ...globalPlugins,
253
- ],
254
- }
255
-
256
- const defaultJobs = [allCompilation, domlikeGlobalCompilation]
257
-
258
- if (jobs.length) {
259
- module.exports = jobs.map((name) => {
260
- const map = {
261
- all: allCompilation,
262
- shadow: shadowCompilation,
263
- 'shadow-global': shadowGlobalCompilation,
264
- composed: composedCompilation,
265
- 'composed-global': composedGlobalCompilation,
266
- domlike: domlikeCompilation,
267
- 'domlike-global': domlikeGlobalCompilation,
268
- }
269
- if (map[name]) return map[name]
270
- throw new Error('Unknown job: ' + name)
271
- })
272
- } else {
273
- module.exports = defaultJobs
274
- }
275
- mainJobOutput = module.exports[0]?.output.filename.slice(0, -3)
File without changes