@visactor/vrender-core 0.19.6-alpha.2 → 0.19.6

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 (758) hide show
  1. package/cjs/allocator/bounds-allocate.js +1 -1
  2. package/cjs/allocator/bounds-allocate.js.map +1 -1
  3. package/cjs/allocator/canvas-allocate.js +9 -11
  4. package/cjs/allocator/canvas-allocate.js.map +1 -1
  5. package/cjs/allocator/graphic-allocate.js +9 -5
  6. package/cjs/allocator/graphic-allocate.js.map +1 -1
  7. package/cjs/allocator/matrix-allocate.js +6 -2
  8. package/cjs/allocator/matrix-allocate.js.map +1 -1
  9. package/cjs/animate/Ticker/default-ticker.js +14 -25
  10. package/cjs/animate/Ticker/default-ticker.js.map +1 -1
  11. package/cjs/animate/animate.js +7 -8
  12. package/cjs/animate/animate.js.map +1 -1
  13. package/cjs/animate/custom-animate.js +51 -54
  14. package/cjs/animate/custom-animate.js.map +1 -1
  15. package/cjs/animate/easing.js +8 -19
  16. package/cjs/animate/easing.js.map +1 -1
  17. package/cjs/animate/morphing.js +23 -20
  18. package/cjs/animate/morphing.js.map +1 -1
  19. package/cjs/application.js +1 -7
  20. package/cjs/application.js.map +1 -1
  21. package/cjs/canvas/conical-gradient.js +5 -12
  22. package/cjs/canvas/conical-gradient.js.map +1 -1
  23. package/cjs/canvas/contributions/base-canvas.js +7 -19
  24. package/cjs/canvas/contributions/base-canvas.js.map +1 -1
  25. package/cjs/color-string/interpolate.js +3 -5
  26. package/cjs/color-string/interpolate.js.map +1 -1
  27. package/cjs/color-string/store.js +1 -3
  28. package/cjs/color-string/store.js.map +1 -1
  29. package/cjs/common/bounds-context.js +0 -1
  30. package/cjs/common/bounds-context.js.map +1 -1
  31. package/cjs/common/canvas-utils.js +6 -3
  32. package/cjs/common/canvas-utils.js.map +1 -1
  33. package/cjs/common/contribution-provider.js +0 -3
  34. package/cjs/common/contribution-provider.js.map +1 -1
  35. package/cjs/common/custom-path2d.js +1 -7
  36. package/cjs/common/custom-path2d.js.map +1 -1
  37. package/cjs/common/generator.js +1 -2
  38. package/cjs/common/generator.js.map +1 -1
  39. package/cjs/common/inversify/binding.js +0 -12
  40. package/cjs/common/inversify/binding.js.map +1 -1
  41. package/cjs/common/inversify/container.js +0 -4
  42. package/cjs/common/inversify/container.js.map +1 -1
  43. package/cjs/common/inversify/cotainer-module.js +0 -2
  44. package/cjs/common/inversify/cotainer-module.js.map +1 -1
  45. package/cjs/common/inversify/meta-data.js +0 -2
  46. package/cjs/common/inversify/meta-data.js.map +1 -1
  47. package/cjs/common/inversify/syntax/binding_in_syntax.js +0 -1
  48. package/cjs/common/inversify/syntax/binding_in_syntax.js.map +1 -1
  49. package/cjs/common/inversify/syntax/binding_to_syntax.js +0 -1
  50. package/cjs/common/inversify/syntax/binding_to_syntax.js.map +1 -1
  51. package/cjs/common/inversify-lite/annotation/lazy_service_identifier.js +0 -1
  52. package/cjs/common/inversify-lite/annotation/lazy_service_identifier.js.map +1 -1
  53. package/cjs/common/inversify-lite/bindings/binding.js +0 -14
  54. package/cjs/common/inversify-lite/bindings/binding.js.map +1 -1
  55. package/cjs/common/inversify-lite/container/container.js +46 -22
  56. package/cjs/common/inversify-lite/container/container.js.map +1 -1
  57. package/cjs/common/inversify-lite/container/container_module.js +0 -4
  58. package/cjs/common/inversify-lite/container/container_module.js.map +1 -1
  59. package/cjs/common/inversify-lite/container/lookup.js +0 -1
  60. package/cjs/common/inversify-lite/container/lookup.js.map +1 -1
  61. package/cjs/common/inversify-lite/planning/context.js +0 -4
  62. package/cjs/common/inversify-lite/planning/context.js.map +1 -1
  63. package/cjs/common/inversify-lite/planning/metadata.js +0 -2
  64. package/cjs/common/inversify-lite/planning/metadata.js.map +1 -1
  65. package/cjs/common/inversify-lite/planning/plan.js +0 -2
  66. package/cjs/common/inversify-lite/planning/plan.js.map +1 -1
  67. package/cjs/common/inversify-lite/planning/queryable_string.js +0 -1
  68. package/cjs/common/inversify-lite/planning/queryable_string.js.map +1 -1
  69. package/cjs/common/inversify-lite/planning/request.js +0 -8
  70. package/cjs/common/inversify-lite/planning/request.js.map +1 -1
  71. package/cjs/common/inversify-lite/planning/target.js +0 -7
  72. package/cjs/common/inversify-lite/planning/target.js.map +1 -1
  73. package/cjs/common/inversify-lite/resolution/instantiation.js +42 -16
  74. package/cjs/common/inversify-lite/resolution/instantiation.js.map +1 -1
  75. package/cjs/common/inversify-lite/scope/scope.js +29 -3
  76. package/cjs/common/inversify-lite/scope/scope.js.map +1 -1
  77. package/cjs/common/inversify-lite/syntax/binding_in_syntax.js +0 -1
  78. package/cjs/common/inversify-lite/syntax/binding_in_syntax.js.map +1 -1
  79. package/cjs/common/inversify-lite/syntax/binding_in_when_on_syntax.js +0 -3
  80. package/cjs/common/inversify-lite/syntax/binding_in_when_on_syntax.js.map +1 -1
  81. package/cjs/common/inversify-lite/syntax/binding_on_syntax.js +0 -1
  82. package/cjs/common/inversify-lite/syntax/binding_on_syntax.js.map +1 -1
  83. package/cjs/common/inversify-lite/syntax/binding_to_syntax.js +0 -1
  84. package/cjs/common/inversify-lite/syntax/binding_to_syntax.js.map +1 -1
  85. package/cjs/common/inversify-lite/syntax/binding_when_on_syntax.js +0 -2
  86. package/cjs/common/inversify-lite/syntax/binding_when_on_syntax.js.map +1 -1
  87. package/cjs/common/inversify-lite/syntax/binding_when_syntax.js +0 -1
  88. package/cjs/common/inversify-lite/syntax/binding_when_syntax.js.map +1 -1
  89. package/cjs/common/polygon.js +2 -1
  90. package/cjs/common/polygon.js.map +1 -1
  91. package/cjs/common/render-area.js +3 -2
  92. package/cjs/common/render-area.js.map +1 -1
  93. package/cjs/common/render-curve.js +8 -4
  94. package/cjs/common/render-curve.js.map +1 -1
  95. package/cjs/common/seg-context.js +3 -12
  96. package/cjs/common/seg-context.js.map +1 -1
  97. package/cjs/common/segment/basis.js +0 -13
  98. package/cjs/common/segment/basis.js.map +1 -1
  99. package/cjs/common/segment/common.js +2 -2
  100. package/cjs/common/segment/common.js.map +1 -1
  101. package/cjs/common/segment/curve/arc.js +2 -2
  102. package/cjs/common/segment/curve/arc.js.map +1 -1
  103. package/cjs/common/segment/curve/base.js +0 -4
  104. package/cjs/common/segment/curve/base.js.map +1 -1
  105. package/cjs/common/segment/curve/cubic-bezier.js +2 -2
  106. package/cjs/common/segment/curve/cubic-bezier.js.map +1 -1
  107. package/cjs/common/segment/curve/curve-context.js +0 -4
  108. package/cjs/common/segment/curve/curve-context.js.map +1 -1
  109. package/cjs/common/segment/curve/ellipse.js +3 -3
  110. package/cjs/common/segment/curve/ellipse.js.map +1 -1
  111. package/cjs/common/segment/curve/line.js +1 -2
  112. package/cjs/common/segment/curve/line.js.map +1 -1
  113. package/cjs/common/segment/curve/move.js +1 -2
  114. package/cjs/common/segment/curve/move.js.map +1 -1
  115. package/cjs/common/segment/curve/path.js +0 -2
  116. package/cjs/common/segment/curve/path.js.map +1 -1
  117. package/cjs/common/segment/curve/quadratic-bezier.js +2 -2
  118. package/cjs/common/segment/curve/quadratic-bezier.js.map +1 -1
  119. package/cjs/common/segment/linear.js +0 -10
  120. package/cjs/common/segment/linear.js.map +1 -1
  121. package/cjs/common/segment/monotone.js +0 -13
  122. package/cjs/common/segment/monotone.js.map +1 -1
  123. package/cjs/common/segment/step.js +2 -13
  124. package/cjs/common/segment/step.js.map +1 -1
  125. package/cjs/common/sort.js +34 -3
  126. package/cjs/common/sort.js.map +1 -1
  127. package/cjs/common/split-path.js +11 -4
  128. package/cjs/common/split-path.js.map +1 -1
  129. package/cjs/common/utils.js +4 -8
  130. package/cjs/common/utils.js.map +1 -1
  131. package/cjs/common/xml/parser.js +2 -3
  132. package/cjs/common/xml/parser.js.map +1 -1
  133. package/cjs/core/camera.js +4 -11
  134. package/cjs/core/camera.js.map +1 -1
  135. package/cjs/core/contributions/env/base-contribution.js +0 -6
  136. package/cjs/core/contributions/env/base-contribution.js.map +1 -1
  137. package/cjs/core/contributions/layerHandler/canvas2d-contribution.js +11 -20
  138. package/cjs/core/contributions/layerHandler/canvas2d-contribution.js.map +1 -1
  139. package/cjs/core/contributions/layerHandler/empty-contribution.js +8 -8
  140. package/cjs/core/contributions/layerHandler/empty-contribution.js.map +1 -1
  141. package/cjs/core/contributions/layerHandler/offscreen2d-contribution.js +6 -5
  142. package/cjs/core/contributions/layerHandler/offscreen2d-contribution.js.map +1 -1
  143. package/cjs/core/contributions/textMeasure/AtextMeasure.js +8 -11
  144. package/cjs/core/contributions/textMeasure/AtextMeasure.js.map +1 -1
  145. package/cjs/core/contributions/textMeasure/layout.js +0 -3
  146. package/cjs/core/contributions/textMeasure/layout.js.map +1 -1
  147. package/cjs/core/contributions/window/base-contribution.js +0 -2
  148. package/cjs/core/contributions/window/base-contribution.js.map +1 -1
  149. package/cjs/core/global.js +0 -8
  150. package/cjs/core/global.js.map +1 -1
  151. package/cjs/core/graphic-utils.js +5 -16
  152. package/cjs/core/graphic-utils.js.map +1 -1
  153. package/cjs/core/layer-service.js +7 -7
  154. package/cjs/core/layer-service.js.map +1 -1
  155. package/cjs/core/layer.js +9 -7
  156. package/cjs/core/layer.js.map +1 -1
  157. package/cjs/core/stage.js +34 -68
  158. package/cjs/core/stage.js.map +1 -1
  159. package/cjs/core/window.js +13 -16
  160. package/cjs/core/window.js.map +1 -1
  161. package/cjs/event/event-manager.js +145 -153
  162. package/cjs/event/event-manager.js.map +1 -1
  163. package/cjs/event/event-system.js +43 -60
  164. package/cjs/event/event-system.js.map +1 -1
  165. package/cjs/event/event-target.js +3 -1
  166. package/cjs/event/event-target.js.map +1 -1
  167. package/cjs/event/federated-event/base-event.js +15 -43
  168. package/cjs/event/federated-event/base-event.js.map +1 -1
  169. package/cjs/event/federated-event/mouse-event.js +18 -27
  170. package/cjs/event/federated-event/mouse-event.js.map +1 -1
  171. package/cjs/event/federated-event/pointer-event.js +8 -12
  172. package/cjs/event/federated-event/pointer-event.js.map +1 -1
  173. package/cjs/event/federated-event/wheel-event.js +10 -13
  174. package/cjs/event/federated-event/wheel-event.js.map +1 -1
  175. package/cjs/graphic/arc.js +5 -10
  176. package/cjs/graphic/arc.js.map +1 -1
  177. package/cjs/graphic/arc3d.js +4 -7
  178. package/cjs/graphic/arc3d.js.map +1 -1
  179. package/cjs/graphic/area.js +9 -14
  180. package/cjs/graphic/area.js.map +1 -1
  181. package/cjs/graphic/builtin-symbol/arrow.js +3 -2
  182. package/cjs/graphic/builtin-symbol/arrow.js.map +1 -1
  183. package/cjs/graphic/builtin-symbol/arrow2-down.js +3 -2
  184. package/cjs/graphic/builtin-symbol/arrow2-down.js.map +1 -1
  185. package/cjs/graphic/builtin-symbol/arrow2-left.js +3 -2
  186. package/cjs/graphic/builtin-symbol/arrow2-left.js.map +1 -1
  187. package/cjs/graphic/builtin-symbol/arrow2-right.js +3 -2
  188. package/cjs/graphic/builtin-symbol/arrow2-right.js.map +1 -1
  189. package/cjs/graphic/builtin-symbol/arrow2-up.js +3 -2
  190. package/cjs/graphic/builtin-symbol/arrow2-up.js.map +1 -1
  191. package/cjs/graphic/builtin-symbol/circle.js +3 -2
  192. package/cjs/graphic/builtin-symbol/circle.js.map +1 -1
  193. package/cjs/graphic/builtin-symbol/close.js +3 -2
  194. package/cjs/graphic/builtin-symbol/close.js.map +1 -1
  195. package/cjs/graphic/builtin-symbol/cross.js +3 -2
  196. package/cjs/graphic/builtin-symbol/cross.js.map +1 -1
  197. package/cjs/graphic/builtin-symbol/diamond.js +3 -2
  198. package/cjs/graphic/builtin-symbol/diamond.js.map +1 -1
  199. package/cjs/graphic/builtin-symbol/line-h.js +3 -2
  200. package/cjs/graphic/builtin-symbol/line-h.js.map +1 -1
  201. package/cjs/graphic/builtin-symbol/line-v.js +3 -2
  202. package/cjs/graphic/builtin-symbol/line-v.js.map +1 -1
  203. package/cjs/graphic/builtin-symbol/rect.js +3 -2
  204. package/cjs/graphic/builtin-symbol/rect.js.map +1 -1
  205. package/cjs/graphic/builtin-symbol/square.js +3 -2
  206. package/cjs/graphic/builtin-symbol/square.js.map +1 -1
  207. package/cjs/graphic/builtin-symbol/star.js +3 -2
  208. package/cjs/graphic/builtin-symbol/star.js.map +1 -1
  209. package/cjs/graphic/builtin-symbol/stroke.js +3 -2
  210. package/cjs/graphic/builtin-symbol/stroke.js.map +1 -1
  211. package/cjs/graphic/builtin-symbol/thin-triangle.js +3 -2
  212. package/cjs/graphic/builtin-symbol/thin-triangle.js.map +1 -1
  213. package/cjs/graphic/builtin-symbol/triangle-down.js +3 -2
  214. package/cjs/graphic/builtin-symbol/triangle-down.js.map +1 -1
  215. package/cjs/graphic/builtin-symbol/triangle-left.js +3 -2
  216. package/cjs/graphic/builtin-symbol/triangle-left.js.map +1 -1
  217. package/cjs/graphic/builtin-symbol/triangle-right.js +3 -2
  218. package/cjs/graphic/builtin-symbol/triangle-right.js.map +1 -1
  219. package/cjs/graphic/builtin-symbol/triangle-up.js +3 -2
  220. package/cjs/graphic/builtin-symbol/triangle-up.js.map +1 -1
  221. package/cjs/graphic/builtin-symbol/triangle.js +3 -1
  222. package/cjs/graphic/builtin-symbol/triangle.js.map +1 -1
  223. package/cjs/graphic/builtin-symbol/utils.js +1 -6
  224. package/cjs/graphic/builtin-symbol/utils.js.map +1 -1
  225. package/cjs/graphic/builtin-symbol/wedge.js +3 -2
  226. package/cjs/graphic/builtin-symbol/wedge.js.map +1 -1
  227. package/cjs/graphic/builtin-symbol/wye.js +3 -2
  228. package/cjs/graphic/builtin-symbol/wye.js.map +1 -1
  229. package/cjs/graphic/circle.js +6 -8
  230. package/cjs/graphic/circle.js.map +1 -1
  231. package/cjs/graphic/config.js +32 -58
  232. package/cjs/graphic/config.js.map +1 -1
  233. package/cjs/graphic/glyph.js +9 -10
  234. package/cjs/graphic/glyph.js.map +1 -1
  235. package/cjs/graphic/graphic-service/graphic-service.js +8 -12
  236. package/cjs/graphic/graphic-service/graphic-service.js.map +1 -1
  237. package/cjs/graphic/graphic.js +44 -27
  238. package/cjs/graphic/graphic.js.map +1 -1
  239. package/cjs/graphic/group.js +5 -9
  240. package/cjs/graphic/group.js.map +1 -1
  241. package/cjs/graphic/image.js +16 -18
  242. package/cjs/graphic/image.js.map +1 -1
  243. package/cjs/graphic/line.js +6 -11
  244. package/cjs/graphic/line.js.map +1 -1
  245. package/cjs/graphic/node-tree.js +44 -25
  246. package/cjs/graphic/node-tree.js.map +1 -1
  247. package/cjs/graphic/path.js +6 -12
  248. package/cjs/graphic/path.js.map +1 -1
  249. package/cjs/graphic/polygon.js +4 -7
  250. package/cjs/graphic/polygon.js.map +1 -1
  251. package/cjs/graphic/pyramid3d.js +3 -4
  252. package/cjs/graphic/pyramid3d.js.map +1 -1
  253. package/cjs/graphic/rect.js +3 -7
  254. package/cjs/graphic/rect.js.map +1 -1
  255. package/cjs/graphic/rect3d.js +4 -5
  256. package/cjs/graphic/rect3d.js.map +1 -1
  257. package/cjs/graphic/richtext/frame.js +0 -19
  258. package/cjs/graphic/richtext/frame.js.map +1 -1
  259. package/cjs/graphic/richtext/icon.js +6 -14
  260. package/cjs/graphic/richtext/icon.js.map +1 -1
  261. package/cjs/graphic/richtext/line.js +2 -14
  262. package/cjs/graphic/richtext/line.js.map +1 -1
  263. package/cjs/graphic/richtext/paragraph.js +0 -22
  264. package/cjs/graphic/richtext/paragraph.js.map +1 -1
  265. package/cjs/graphic/richtext/utils.js +2 -1
  266. package/cjs/graphic/richtext/utils.js.map +1 -1
  267. package/cjs/graphic/richtext/wrapper.js +0 -12
  268. package/cjs/graphic/richtext/wrapper.js.map +1 -1
  269. package/cjs/graphic/richtext.js +45 -38
  270. package/cjs/graphic/richtext.js.map +1 -1
  271. package/cjs/graphic/shadow-root.js +1 -2
  272. package/cjs/graphic/shadow-root.js.map +1 -1
  273. package/cjs/graphic/symbol.js +5 -12
  274. package/cjs/graphic/symbol.js.map +1 -1
  275. package/cjs/graphic/text.js +45 -45
  276. package/cjs/graphic/text.js.map +1 -1
  277. package/cjs/graphic/theme.js +0 -4
  278. package/cjs/graphic/theme.js.map +1 -1
  279. package/cjs/graphic/tools.js +44 -16
  280. package/cjs/graphic/tools.js.map +1 -1
  281. package/cjs/graphic/wrap-text.js +7 -7
  282. package/cjs/graphic/wrap-text.js.map +1 -1
  283. package/cjs/picker/global-picker-service.js +0 -1
  284. package/cjs/picker/global-picker-service.js.map +1 -1
  285. package/cjs/picker/pick-interceptor.js +15 -5
  286. package/cjs/picker/pick-interceptor.js.map +1 -1
  287. package/cjs/picker/picker-service.js +5 -5
  288. package/cjs/picker/picker-service.js.map +1 -1
  289. package/cjs/plugins/builtin-plugin/3dview-transform-plugin.js +20 -26
  290. package/cjs/plugins/builtin-plugin/3dview-transform-plugin.js.map +1 -1
  291. package/cjs/plugins/builtin-plugin/auto-render-plugin.js +4 -5
  292. package/cjs/plugins/builtin-plugin/auto-render-plugin.js.map +1 -1
  293. package/cjs/plugins/builtin-plugin/dirty-bounds-plugin.js +4 -5
  294. package/cjs/plugins/builtin-plugin/dirty-bounds-plugin.js.map +1 -1
  295. package/cjs/plugins/builtin-plugin/flex-layout-plugin.js +8 -11
  296. package/cjs/plugins/builtin-plugin/flex-layout-plugin.js.map +1 -1
  297. package/cjs/plugins/builtin-plugin/html-attribute-plugin.js +19 -28
  298. package/cjs/plugins/builtin-plugin/html-attribute-plugin.js.map +1 -1
  299. package/cjs/plugins/builtin-plugin/incremental-auto-render-plugin.js +8 -12
  300. package/cjs/plugins/builtin-plugin/incremental-auto-render-plugin.js.map +1 -1
  301. package/cjs/plugins/builtin-plugin/react-attribute-plugin.js +7 -6
  302. package/cjs/plugins/builtin-plugin/react-attribute-plugin.js.map +1 -1
  303. package/cjs/plugins/plugin-service.js +0 -1
  304. package/cjs/plugins/plugin-service.js.map +1 -1
  305. package/cjs/render/contributions/render/arc-render.js +4 -6
  306. package/cjs/render/contributions/render/arc-render.js.map +1 -1
  307. package/cjs/render/contributions/render/arc3d-render.js +7 -5
  308. package/cjs/render/contributions/render/arc3d-render.js.map +1 -1
  309. package/cjs/render/contributions/render/area-render.js +23 -21
  310. package/cjs/render/contributions/render/area-render.js.map +1 -1
  311. package/cjs/render/contributions/render/base-render.js +0 -5
  312. package/cjs/render/contributions/render/base-render.js.map +1 -1
  313. package/cjs/render/contributions/render/circle-render.js +4 -6
  314. package/cjs/render/contributions/render/circle-render.js.map +1 -1
  315. package/cjs/render/contributions/render/contributions/arc-contribution-render.js +4 -3
  316. package/cjs/render/contributions/render/contributions/arc-contribution-render.js.map +1 -1
  317. package/cjs/render/contributions/render/contributions/area-texture-contribution-render.js +9 -6
  318. package/cjs/render/contributions/render/contributions/area-texture-contribution-render.js.map +1 -1
  319. package/cjs/render/contributions/render/contributions/base-contribution-render.js +8 -10
  320. package/cjs/render/contributions/render/contributions/base-contribution-render.js.map +1 -1
  321. package/cjs/render/contributions/render/contributions/base-texture-contribution-render.js +4 -4
  322. package/cjs/render/contributions/render/contributions/base-texture-contribution-render.js.map +1 -1
  323. package/cjs/render/contributions/render/contributions/circle-contribution-render.js +4 -3
  324. package/cjs/render/contributions/render/contributions/circle-contribution-render.js.map +1 -1
  325. package/cjs/render/contributions/render/contributions/group-contribution-render.js +3 -1
  326. package/cjs/render/contributions/render/contributions/group-contribution-render.js.map +1 -1
  327. package/cjs/render/contributions/render/contributions/image-contribution-render.js +3 -1
  328. package/cjs/render/contributions/render/contributions/image-contribution-render.js.map +1 -1
  329. package/cjs/render/contributions/render/contributions/rect-contribution-render.js +14 -11
  330. package/cjs/render/contributions/render/contributions/rect-contribution-render.js.map +1 -1
  331. package/cjs/render/contributions/render/contributions/symbol-contribution-render.js +4 -3
  332. package/cjs/render/contributions/render/contributions/symbol-contribution-render.js.map +1 -1
  333. package/cjs/render/contributions/render/contributions/text-contribution-render.js +8 -6
  334. package/cjs/render/contributions/render/contributions/text-contribution-render.js.map +1 -1
  335. package/cjs/render/contributions/render/draw-contribution.js +14 -12
  336. package/cjs/render/contributions/render/draw-contribution.js.map +1 -1
  337. package/cjs/render/contributions/render/draw-interceptor.js +21 -11
  338. package/cjs/render/contributions/render/draw-interceptor.js.map +1 -1
  339. package/cjs/render/contributions/render/glyph-render.js +3 -2
  340. package/cjs/render/contributions/render/glyph-render.js.map +1 -1
  341. package/cjs/render/contributions/render/graphic-render.js +1 -4
  342. package/cjs/render/contributions/render/graphic-render.js.map +1 -1
  343. package/cjs/render/contributions/render/group-render.js +3 -7
  344. package/cjs/render/contributions/render/group-render.js.map +1 -1
  345. package/cjs/render/contributions/render/image-render.js +2 -4
  346. package/cjs/render/contributions/render/image-render.js.map +1 -1
  347. package/cjs/render/contributions/render/incremental-area-render.js +3 -1
  348. package/cjs/render/contributions/render/incremental-area-render.js.map +1 -1
  349. package/cjs/render/contributions/render/incremental-draw-contribution.js +109 -80
  350. package/cjs/render/contributions/render/incremental-draw-contribution.js.map +1 -1
  351. package/cjs/render/contributions/render/incremental-line-render.js +3 -1
  352. package/cjs/render/contributions/render/incremental-line-render.js.map +1 -1
  353. package/cjs/render/contributions/render/line-render.js +16 -12
  354. package/cjs/render/contributions/render/line-render.js.map +1 -1
  355. package/cjs/render/contributions/render/path-render.js +7 -8
  356. package/cjs/render/contributions/render/path-render.js.map +1 -1
  357. package/cjs/render/contributions/render/polygon-render.js +4 -6
  358. package/cjs/render/contributions/render/polygon-render.js.map +1 -1
  359. package/cjs/render/contributions/render/pyramid3d-render.js +5 -3
  360. package/cjs/render/contributions/render/pyramid3d-render.js.map +1 -1
  361. package/cjs/render/contributions/render/rect-render.js +7 -8
  362. package/cjs/render/contributions/render/rect-render.js.map +1 -1
  363. package/cjs/render/contributions/render/rect3d-render.js +7 -5
  364. package/cjs/render/contributions/render/rect3d-render.js.map +1 -1
  365. package/cjs/render/contributions/render/richtext-render.js +3 -4
  366. package/cjs/render/contributions/render/richtext-render.js.map +1 -1
  367. package/cjs/render/contributions/render/symbol-render.js +14 -11
  368. package/cjs/render/contributions/render/symbol-render.js.map +1 -1
  369. package/cjs/render/contributions/render/text-render.js +8 -8
  370. package/cjs/render/contributions/render/text-render.js.map +1 -1
  371. package/cjs/render/contributions/render/utils.js +1 -1
  372. package/cjs/render/contributions/render/utils.js.map +1 -1
  373. package/cjs/render/render-service.js +2 -11
  374. package/cjs/render/render-service.js.map +1 -1
  375. package/cjs/resource-loader/loader.js +16 -13
  376. package/cjs/resource-loader/loader.js.map +1 -1
  377. package/cjs/tapable/Hook.js +0 -3
  378. package/cjs/tapable/Hook.js.map +1 -1
  379. package/dist/index.es.js +1709 -2151
  380. package/es/allocator/bounds-allocate.js +1 -1
  381. package/es/allocator/bounds-allocate.js.map +1 -1
  382. package/es/allocator/canvas-allocate.js +9 -11
  383. package/es/allocator/canvas-allocate.js.map +1 -1
  384. package/es/allocator/graphic-allocate.js +9 -5
  385. package/es/allocator/graphic-allocate.js.map +1 -1
  386. package/es/allocator/matrix-allocate.js +6 -2
  387. package/es/allocator/matrix-allocate.js.map +1 -1
  388. package/es/animate/Ticker/default-ticker.js +14 -25
  389. package/es/animate/Ticker/default-ticker.js.map +1 -1
  390. package/es/animate/animate.js +8 -7
  391. package/es/animate/animate.js.map +1 -1
  392. package/es/animate/custom-animate.js +50 -52
  393. package/es/animate/custom-animate.js.map +1 -1
  394. package/es/animate/easing.js +8 -18
  395. package/es/animate/easing.js.map +1 -1
  396. package/es/animate/morphing.js +23 -20
  397. package/es/animate/morphing.js.map +1 -1
  398. package/es/application.js +1 -7
  399. package/es/application.js.map +1 -1
  400. package/es/canvas/conical-gradient.js +6 -12
  401. package/es/canvas/conical-gradient.js.map +1 -1
  402. package/es/canvas/contributions/base-canvas.js +7 -19
  403. package/es/canvas/contributions/base-canvas.js.map +1 -1
  404. package/es/color-string/interpolate.js +3 -5
  405. package/es/color-string/interpolate.js.map +1 -1
  406. package/es/color-string/store.js +2 -2
  407. package/es/color-string/store.js.map +1 -1
  408. package/es/common/bounds-context.js +0 -1
  409. package/es/common/bounds-context.js.map +1 -1
  410. package/es/common/canvas-utils.js +6 -3
  411. package/es/common/canvas-utils.js.map +1 -1
  412. package/es/common/contribution-provider.js +0 -3
  413. package/es/common/contribution-provider.js.map +1 -1
  414. package/es/common/custom-path2d.js +1 -7
  415. package/es/common/custom-path2d.js.map +1 -1
  416. package/es/common/generator.js +2 -1
  417. package/es/common/generator.js.map +1 -1
  418. package/es/common/inversify/binding.js +0 -12
  419. package/es/common/inversify/binding.js.map +1 -1
  420. package/es/common/inversify/container.js +0 -4
  421. package/es/common/inversify/container.js.map +1 -1
  422. package/es/common/inversify/cotainer-module.js +0 -2
  423. package/es/common/inversify/cotainer-module.js.map +1 -1
  424. package/es/common/inversify/meta-data.js +0 -2
  425. package/es/common/inversify/meta-data.js.map +1 -1
  426. package/es/common/inversify/syntax/binding_in_syntax.js +0 -1
  427. package/es/common/inversify/syntax/binding_in_syntax.js.map +1 -1
  428. package/es/common/inversify/syntax/binding_to_syntax.js +0 -1
  429. package/es/common/inversify/syntax/binding_to_syntax.js.map +1 -1
  430. package/es/common/inversify-lite/annotation/lazy_service_identifier.js +0 -1
  431. package/es/common/inversify-lite/annotation/lazy_service_identifier.js.map +1 -1
  432. package/es/common/inversify-lite/bindings/binding.js +0 -14
  433. package/es/common/inversify-lite/bindings/binding.js.map +1 -1
  434. package/es/common/inversify-lite/container/container.js +48 -22
  435. package/es/common/inversify-lite/container/container.js.map +1 -1
  436. package/es/common/inversify-lite/container/container_module.js +0 -4
  437. package/es/common/inversify-lite/container/container_module.js.map +1 -1
  438. package/es/common/inversify-lite/container/lookup.js +0 -1
  439. package/es/common/inversify-lite/container/lookup.js.map +1 -1
  440. package/es/common/inversify-lite/planning/context.js +0 -4
  441. package/es/common/inversify-lite/planning/context.js.map +1 -1
  442. package/es/common/inversify-lite/planning/metadata.js +0 -2
  443. package/es/common/inversify-lite/planning/metadata.js.map +1 -1
  444. package/es/common/inversify-lite/planning/plan.js +0 -2
  445. package/es/common/inversify-lite/planning/plan.js.map +1 -1
  446. package/es/common/inversify-lite/planning/queryable_string.js +0 -1
  447. package/es/common/inversify-lite/planning/queryable_string.js.map +1 -1
  448. package/es/common/inversify-lite/planning/request.js +0 -8
  449. package/es/common/inversify-lite/planning/request.js.map +1 -1
  450. package/es/common/inversify-lite/planning/target.js +0 -7
  451. package/es/common/inversify-lite/planning/target.js.map +1 -1
  452. package/es/common/inversify-lite/resolution/instantiation.js +44 -16
  453. package/es/common/inversify-lite/resolution/instantiation.js.map +1 -1
  454. package/es/common/inversify-lite/scope/scope.js +29 -3
  455. package/es/common/inversify-lite/scope/scope.js.map +1 -1
  456. package/es/common/inversify-lite/syntax/binding_in_syntax.js +0 -1
  457. package/es/common/inversify-lite/syntax/binding_in_syntax.js.map +1 -1
  458. package/es/common/inversify-lite/syntax/binding_in_when_on_syntax.js +0 -3
  459. package/es/common/inversify-lite/syntax/binding_in_when_on_syntax.js.map +1 -1
  460. package/es/common/inversify-lite/syntax/binding_on_syntax.js +0 -1
  461. package/es/common/inversify-lite/syntax/binding_on_syntax.js.map +1 -1
  462. package/es/common/inversify-lite/syntax/binding_to_syntax.js +0 -1
  463. package/es/common/inversify-lite/syntax/binding_to_syntax.js.map +1 -1
  464. package/es/common/inversify-lite/syntax/binding_when_on_syntax.js +0 -2
  465. package/es/common/inversify-lite/syntax/binding_when_on_syntax.js.map +1 -1
  466. package/es/common/inversify-lite/syntax/binding_when_syntax.js +0 -1
  467. package/es/common/inversify-lite/syntax/binding_when_syntax.js.map +1 -1
  468. package/es/common/polygon.js +2 -1
  469. package/es/common/polygon.js.map +1 -1
  470. package/es/common/render-area.js +3 -2
  471. package/es/common/render-area.js.map +1 -1
  472. package/es/common/render-curve.js +8 -4
  473. package/es/common/render-curve.js.map +1 -1
  474. package/es/common/seg-context.js +3 -12
  475. package/es/common/seg-context.js.map +1 -1
  476. package/es/common/segment/basis.js +0 -13
  477. package/es/common/segment/basis.js.map +1 -1
  478. package/es/common/segment/common.js +1 -1
  479. package/es/common/segment/common.js.map +1 -1
  480. package/es/common/segment/curve/arc.js +1 -2
  481. package/es/common/segment/curve/arc.js.map +1 -1
  482. package/es/common/segment/curve/base.js +0 -4
  483. package/es/common/segment/curve/base.js.map +1 -1
  484. package/es/common/segment/curve/cubic-bezier.js +2 -2
  485. package/es/common/segment/curve/cubic-bezier.js.map +1 -1
  486. package/es/common/segment/curve/curve-context.js +0 -4
  487. package/es/common/segment/curve/curve-context.js.map +1 -1
  488. package/es/common/segment/curve/ellipse.js +3 -3
  489. package/es/common/segment/curve/ellipse.js.map +1 -1
  490. package/es/common/segment/curve/line.js +1 -2
  491. package/es/common/segment/curve/line.js.map +1 -1
  492. package/es/common/segment/curve/move.js +1 -2
  493. package/es/common/segment/curve/move.js.map +1 -1
  494. package/es/common/segment/curve/path.js +0 -2
  495. package/es/common/segment/curve/path.js.map +1 -1
  496. package/es/common/segment/curve/quadratic-bezier.js +2 -2
  497. package/es/common/segment/curve/quadratic-bezier.js.map +1 -1
  498. package/es/common/segment/linear.js +0 -10
  499. package/es/common/segment/linear.js.map +1 -1
  500. package/es/common/segment/monotone.js +0 -13
  501. package/es/common/segment/monotone.js.map +1 -1
  502. package/es/common/segment/step.js +1 -12
  503. package/es/common/segment/step.js.map +1 -1
  504. package/es/common/sort.js +34 -3
  505. package/es/common/sort.js.map +1 -1
  506. package/es/common/split-path.js +11 -4
  507. package/es/common/split-path.js.map +1 -1
  508. package/es/common/utils.js +5 -7
  509. package/es/common/utils.js.map +1 -1
  510. package/es/common/xml/parser.js +2 -2
  511. package/es/common/xml/parser.js.map +1 -1
  512. package/es/core/camera.js +4 -11
  513. package/es/core/camera.js.map +1 -1
  514. package/es/core/contributions/env/base-contribution.js +0 -6
  515. package/es/core/contributions/env/base-contribution.js.map +1 -1
  516. package/es/core/contributions/layerHandler/canvas2d-contribution.js +11 -20
  517. package/es/core/contributions/layerHandler/canvas2d-contribution.js.map +1 -1
  518. package/es/core/contributions/layerHandler/empty-contribution.js +8 -8
  519. package/es/core/contributions/layerHandler/empty-contribution.js.map +1 -1
  520. package/es/core/contributions/layerHandler/offscreen2d-contribution.js +6 -5
  521. package/es/core/contributions/layerHandler/offscreen2d-contribution.js.map +1 -1
  522. package/es/core/contributions/textMeasure/AtextMeasure.js +8 -11
  523. package/es/core/contributions/textMeasure/AtextMeasure.js.map +1 -1
  524. package/es/core/contributions/textMeasure/layout.js +0 -3
  525. package/es/core/contributions/textMeasure/layout.js.map +1 -1
  526. package/es/core/contributions/window/base-contribution.js +0 -2
  527. package/es/core/contributions/window/base-contribution.js.map +1 -1
  528. package/es/core/global.js +0 -8
  529. package/es/core/global.js.map +1 -1
  530. package/es/core/graphic-utils.js +5 -16
  531. package/es/core/graphic-utils.js.map +1 -1
  532. package/es/core/layer-service.js +7 -7
  533. package/es/core/layer-service.js.map +1 -1
  534. package/es/core/layer.js +9 -7
  535. package/es/core/layer.js.map +1 -1
  536. package/es/core/stage.js +34 -68
  537. package/es/core/stage.js.map +1 -1
  538. package/es/core/window.js +14 -16
  539. package/es/core/window.js.map +1 -1
  540. package/es/event/event-manager.js +145 -153
  541. package/es/event/event-manager.js.map +1 -1
  542. package/es/event/event-system.js +43 -60
  543. package/es/event/event-system.js.map +1 -1
  544. package/es/event/event-target.js +3 -1
  545. package/es/event/event-target.js.map +1 -1
  546. package/es/event/federated-event/base-event.js +15 -43
  547. package/es/event/federated-event/base-event.js.map +1 -1
  548. package/es/event/federated-event/mouse-event.js +18 -27
  549. package/es/event/federated-event/mouse-event.js.map +1 -1
  550. package/es/event/federated-event/pointer-event.js +8 -12
  551. package/es/event/federated-event/pointer-event.js.map +1 -1
  552. package/es/event/federated-event/wheel-event.js +11 -12
  553. package/es/event/federated-event/wheel-event.js.map +1 -1
  554. package/es/graphic/arc.js +6 -9
  555. package/es/graphic/arc.js.map +1 -1
  556. package/es/graphic/arc3d.js +5 -6
  557. package/es/graphic/arc3d.js.map +1 -1
  558. package/es/graphic/area.js +10 -13
  559. package/es/graphic/area.js.map +1 -1
  560. package/es/graphic/builtin-symbol/arrow.js +3 -2
  561. package/es/graphic/builtin-symbol/arrow.js.map +1 -1
  562. package/es/graphic/builtin-symbol/arrow2-down.js +3 -2
  563. package/es/graphic/builtin-symbol/arrow2-down.js.map +1 -1
  564. package/es/graphic/builtin-symbol/arrow2-left.js +3 -2
  565. package/es/graphic/builtin-symbol/arrow2-left.js.map +1 -1
  566. package/es/graphic/builtin-symbol/arrow2-right.js +3 -2
  567. package/es/graphic/builtin-symbol/arrow2-right.js.map +1 -1
  568. package/es/graphic/builtin-symbol/arrow2-up.js +3 -2
  569. package/es/graphic/builtin-symbol/arrow2-up.js.map +1 -1
  570. package/es/graphic/builtin-symbol/circle.js +3 -2
  571. package/es/graphic/builtin-symbol/circle.js.map +1 -1
  572. package/es/graphic/builtin-symbol/close.js +3 -2
  573. package/es/graphic/builtin-symbol/close.js.map +1 -1
  574. package/es/graphic/builtin-symbol/cross.js +3 -2
  575. package/es/graphic/builtin-symbol/cross.js.map +1 -1
  576. package/es/graphic/builtin-symbol/diamond.js +3 -2
  577. package/es/graphic/builtin-symbol/diamond.js.map +1 -1
  578. package/es/graphic/builtin-symbol/line-h.js +3 -2
  579. package/es/graphic/builtin-symbol/line-h.js.map +1 -1
  580. package/es/graphic/builtin-symbol/line-v.js +3 -2
  581. package/es/graphic/builtin-symbol/line-v.js.map +1 -1
  582. package/es/graphic/builtin-symbol/rect.js +3 -2
  583. package/es/graphic/builtin-symbol/rect.js.map +1 -1
  584. package/es/graphic/builtin-symbol/square.js +3 -2
  585. package/es/graphic/builtin-symbol/square.js.map +1 -1
  586. package/es/graphic/builtin-symbol/star.js +3 -2
  587. package/es/graphic/builtin-symbol/star.js.map +1 -1
  588. package/es/graphic/builtin-symbol/stroke.js +3 -2
  589. package/es/graphic/builtin-symbol/stroke.js.map +1 -1
  590. package/es/graphic/builtin-symbol/thin-triangle.js +3 -2
  591. package/es/graphic/builtin-symbol/thin-triangle.js.map +1 -1
  592. package/es/graphic/builtin-symbol/triangle-down.js +3 -2
  593. package/es/graphic/builtin-symbol/triangle-down.js.map +1 -1
  594. package/es/graphic/builtin-symbol/triangle-left.js +3 -2
  595. package/es/graphic/builtin-symbol/triangle-left.js.map +1 -1
  596. package/es/graphic/builtin-symbol/triangle-right.js +3 -2
  597. package/es/graphic/builtin-symbol/triangle-right.js.map +1 -1
  598. package/es/graphic/builtin-symbol/triangle-up.js +3 -2
  599. package/es/graphic/builtin-symbol/triangle-up.js.map +1 -1
  600. package/es/graphic/builtin-symbol/triangle.js +3 -1
  601. package/es/graphic/builtin-symbol/triangle.js.map +1 -1
  602. package/es/graphic/builtin-symbol/utils.js +2 -6
  603. package/es/graphic/builtin-symbol/utils.js.map +1 -1
  604. package/es/graphic/builtin-symbol/wedge.js +3 -2
  605. package/es/graphic/builtin-symbol/wedge.js.map +1 -1
  606. package/es/graphic/builtin-symbol/wye.js +3 -2
  607. package/es/graphic/builtin-symbol/wye.js.map +1 -1
  608. package/es/graphic/circle.js +6 -7
  609. package/es/graphic/circle.js.map +1 -1
  610. package/es/graphic/config.js +44 -72
  611. package/es/graphic/config.js.map +1 -1
  612. package/es/graphic/glyph.js +9 -9
  613. package/es/graphic/glyph.js.map +1 -1
  614. package/es/graphic/graphic-service/graphic-service.js +8 -12
  615. package/es/graphic/graphic-service/graphic-service.js.map +1 -1
  616. package/es/graphic/graphic.js +44 -27
  617. package/es/graphic/graphic.js.map +1 -1
  618. package/es/graphic/group.js +5 -8
  619. package/es/graphic/group.js.map +1 -1
  620. package/es/graphic/image.js +16 -17
  621. package/es/graphic/image.js.map +1 -1
  622. package/es/graphic/line.js +7 -10
  623. package/es/graphic/line.js.map +1 -1
  624. package/es/graphic/node-tree.js +44 -25
  625. package/es/graphic/node-tree.js.map +1 -1
  626. package/es/graphic/path.js +7 -11
  627. package/es/graphic/path.js.map +1 -1
  628. package/es/graphic/polygon.js +4 -6
  629. package/es/graphic/polygon.js.map +1 -1
  630. package/es/graphic/pyramid3d.js +3 -3
  631. package/es/graphic/pyramid3d.js.map +1 -1
  632. package/es/graphic/rect.js +4 -6
  633. package/es/graphic/rect.js.map +1 -1
  634. package/es/graphic/rect3d.js +4 -4
  635. package/es/graphic/rect3d.js.map +1 -1
  636. package/es/graphic/richtext/frame.js +0 -19
  637. package/es/graphic/richtext/frame.js.map +1 -1
  638. package/es/graphic/richtext/icon.js +6 -14
  639. package/es/graphic/richtext/icon.js.map +1 -1
  640. package/es/graphic/richtext/line.js +2 -14
  641. package/es/graphic/richtext/line.js.map +1 -1
  642. package/es/graphic/richtext/paragraph.js +0 -22
  643. package/es/graphic/richtext/paragraph.js.map +1 -1
  644. package/es/graphic/richtext/utils.js +2 -1
  645. package/es/graphic/richtext/utils.js.map +1 -1
  646. package/es/graphic/richtext/wrapper.js +0 -12
  647. package/es/graphic/richtext/wrapper.js.map +1 -1
  648. package/es/graphic/richtext.js +46 -37
  649. package/es/graphic/richtext.js.map +1 -1
  650. package/es/graphic/shadow-root.js +1 -2
  651. package/es/graphic/shadow-root.js.map +1 -1
  652. package/es/graphic/symbol.js +6 -11
  653. package/es/graphic/symbol.js.map +1 -1
  654. package/es/graphic/text.js +40 -39
  655. package/es/graphic/text.js.map +1 -1
  656. package/es/graphic/theme.js +0 -4
  657. package/es/graphic/theme.js.map +1 -1
  658. package/es/graphic/tools.js +44 -16
  659. package/es/graphic/tools.js.map +1 -1
  660. package/es/graphic/wrap-text.js +6 -6
  661. package/es/graphic/wrap-text.js.map +1 -1
  662. package/es/picker/global-picker-service.js +0 -1
  663. package/es/picker/global-picker-service.js.map +1 -1
  664. package/es/picker/pick-interceptor.js +15 -5
  665. package/es/picker/pick-interceptor.js.map +1 -1
  666. package/es/picker/picker-service.js +5 -5
  667. package/es/picker/picker-service.js.map +1 -1
  668. package/es/plugins/builtin-plugin/3dview-transform-plugin.js +20 -26
  669. package/es/plugins/builtin-plugin/3dview-transform-plugin.js.map +1 -1
  670. package/es/plugins/builtin-plugin/auto-render-plugin.js +4 -5
  671. package/es/plugins/builtin-plugin/auto-render-plugin.js.map +1 -1
  672. package/es/plugins/builtin-plugin/dirty-bounds-plugin.js +4 -5
  673. package/es/plugins/builtin-plugin/dirty-bounds-plugin.js.map +1 -1
  674. package/es/plugins/builtin-plugin/flex-layout-plugin.js +8 -11
  675. package/es/plugins/builtin-plugin/flex-layout-plugin.js.map +1 -1
  676. package/es/plugins/builtin-plugin/html-attribute-plugin.js +17 -28
  677. package/es/plugins/builtin-plugin/html-attribute-plugin.js.map +1 -1
  678. package/es/plugins/builtin-plugin/incremental-auto-render-plugin.js +8 -12
  679. package/es/plugins/builtin-plugin/incremental-auto-render-plugin.js.map +1 -1
  680. package/es/plugins/builtin-plugin/react-attribute-plugin.js +6 -6
  681. package/es/plugins/builtin-plugin/react-attribute-plugin.js.map +1 -1
  682. package/es/plugins/plugin-service.js +0 -1
  683. package/es/plugins/plugin-service.js.map +1 -1
  684. package/es/render/contributions/render/arc-render.js +4 -6
  685. package/es/render/contributions/render/arc-render.js.map +1 -1
  686. package/es/render/contributions/render/arc3d-render.js +7 -5
  687. package/es/render/contributions/render/arc3d-render.js.map +1 -1
  688. package/es/render/contributions/render/area-render.js +23 -21
  689. package/es/render/contributions/render/area-render.js.map +1 -1
  690. package/es/render/contributions/render/base-render.js +0 -5
  691. package/es/render/contributions/render/base-render.js.map +1 -1
  692. package/es/render/contributions/render/circle-render.js +4 -6
  693. package/es/render/contributions/render/circle-render.js.map +1 -1
  694. package/es/render/contributions/render/contributions/arc-contribution-render.js +3 -3
  695. package/es/render/contributions/render/contributions/arc-contribution-render.js.map +1 -1
  696. package/es/render/contributions/render/contributions/area-texture-contribution-render.js +5 -2
  697. package/es/render/contributions/render/contributions/area-texture-contribution-render.js.map +1 -1
  698. package/es/render/contributions/render/contributions/base-contribution-render.js +7 -10
  699. package/es/render/contributions/render/contributions/base-contribution-render.js.map +1 -1
  700. package/es/render/contributions/render/contributions/base-texture-contribution-render.js +3 -4
  701. package/es/render/contributions/render/contributions/base-texture-contribution-render.js.map +1 -1
  702. package/es/render/contributions/render/contributions/circle-contribution-render.js +3 -3
  703. package/es/render/contributions/render/contributions/circle-contribution-render.js.map +1 -1
  704. package/es/render/contributions/render/contributions/group-contribution-render.js +3 -1
  705. package/es/render/contributions/render/contributions/group-contribution-render.js.map +1 -1
  706. package/es/render/contributions/render/contributions/image-contribution-render.js +3 -1
  707. package/es/render/contributions/render/contributions/image-contribution-render.js.map +1 -1
  708. package/es/render/contributions/render/contributions/rect-contribution-render.js +11 -11
  709. package/es/render/contributions/render/contributions/rect-contribution-render.js.map +1 -1
  710. package/es/render/contributions/render/contributions/symbol-contribution-render.js +3 -3
  711. package/es/render/contributions/render/contributions/symbol-contribution-render.js.map +1 -1
  712. package/es/render/contributions/render/contributions/text-contribution-render.js +8 -6
  713. package/es/render/contributions/render/contributions/text-contribution-render.js.map +1 -1
  714. package/es/render/contributions/render/draw-contribution.js +14 -12
  715. package/es/render/contributions/render/draw-contribution.js.map +1 -1
  716. package/es/render/contributions/render/draw-interceptor.js +21 -11
  717. package/es/render/contributions/render/draw-interceptor.js.map +1 -1
  718. package/es/render/contributions/render/glyph-render.js +3 -2
  719. package/es/render/contributions/render/glyph-render.js.map +1 -1
  720. package/es/render/contributions/render/graphic-render.js +1 -4
  721. package/es/render/contributions/render/graphic-render.js.map +1 -1
  722. package/es/render/contributions/render/group-render.js +3 -7
  723. package/es/render/contributions/render/group-render.js.map +1 -1
  724. package/es/render/contributions/render/image-render.js +2 -5
  725. package/es/render/contributions/render/image-render.js.map +1 -1
  726. package/es/render/contributions/render/incremental-area-render.js +3 -1
  727. package/es/render/contributions/render/incremental-area-render.js.map +1 -1
  728. package/es/render/contributions/render/incremental-draw-contribution.js +109 -80
  729. package/es/render/contributions/render/incremental-draw-contribution.js.map +1 -1
  730. package/es/render/contributions/render/incremental-line-render.js +3 -1
  731. package/es/render/contributions/render/incremental-line-render.js.map +1 -1
  732. package/es/render/contributions/render/line-render.js +16 -12
  733. package/es/render/contributions/render/line-render.js.map +1 -1
  734. package/es/render/contributions/render/path-render.js +6 -8
  735. package/es/render/contributions/render/path-render.js.map +1 -1
  736. package/es/render/contributions/render/polygon-render.js +4 -6
  737. package/es/render/contributions/render/polygon-render.js.map +1 -1
  738. package/es/render/contributions/render/pyramid3d-render.js +5 -3
  739. package/es/render/contributions/render/pyramid3d-render.js.map +1 -1
  740. package/es/render/contributions/render/rect-render.js +6 -8
  741. package/es/render/contributions/render/rect-render.js.map +1 -1
  742. package/es/render/contributions/render/rect3d-render.js +7 -5
  743. package/es/render/contributions/render/rect3d-render.js.map +1 -1
  744. package/es/render/contributions/render/richtext-render.js +3 -4
  745. package/es/render/contributions/render/richtext-render.js.map +1 -1
  746. package/es/render/contributions/render/symbol-render.js +14 -11
  747. package/es/render/contributions/render/symbol-render.js.map +1 -1
  748. package/es/render/contributions/render/text-render.js +8 -9
  749. package/es/render/contributions/render/text-render.js.map +1 -1
  750. package/es/render/contributions/render/utils.js +1 -1
  751. package/es/render/contributions/render/utils.js.map +1 -1
  752. package/es/render/render-service.js +2 -11
  753. package/es/render/render-service.js.map +1 -1
  754. package/es/resource-loader/loader.js +17 -12
  755. package/es/resource-loader/loader.js.map +1 -1
  756. package/es/tapable/Hook.js +0 -3
  757. package/es/tapable/Hook.js.map +1 -1
  758. package/package.json +6 -5
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/inversify-lite/planning/request.ts"],"names":[],"mappings":";;;AACA,oCAAiC;AAEjC,MAAM,OAAO;IACX,EAAE,CAAS;IACX,iBAAiB,CAA+B;IAChD,aAAa,CAAqB;IAClC,aAAa,CAA4B;IACzC,QAAQ,CAAgC;IACxC,aAAa,CAAuB;IACpC,MAAM,CAAoB;IAC1B,YAAY,CAAiC;IAE7C,YACE,iBAA+C,EAC/C,aAAiC,EACjC,aAAwC,EACxC,QAA6D,EAC7D,MAAyB;QAEzB,IAAI,CAAC,EAAE,GAAG,IAAA,OAAE,GAAE,CAAC;QACf,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAGhE,IAAI,CAAC,YAAY,GAAG,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAChE,CAAC;IAED,eAAe,CACb,iBAA+C,EAC/C,QAAqE,EACrE,MAAyB;QAEzB,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QACzF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAEQ,0BAAO","file":"request.js","sourcesContent":["import type { interfaces } from '../interfaces/interfaces';\nimport { id } from '../utils/id';\n\nclass Request implements interfaces.Request {\n id: number;\n serviceIdentifier: interfaces.ServiceIdentifier;\n parentContext: interfaces.Context;\n parentRequest: interfaces.Request | null;\n bindings: interfaces.Binding<unknown>[];\n childRequests: interfaces.Request[];\n target: interfaces.Target;\n requestScope: interfaces.RequestScope | null;\n\n constructor(\n serviceIdentifier: interfaces.ServiceIdentifier,\n parentContext: interfaces.Context,\n parentRequest: interfaces.Request | null,\n bindings: interfaces.Binding<any> | interfaces.Binding<any>[],\n target: interfaces.Target\n ) {\n this.id = id();\n this.serviceIdentifier = serviceIdentifier;\n this.parentContext = parentContext;\n this.parentRequest = parentRequest;\n this.target = target;\n this.childRequests = [];\n this.bindings = Array.isArray(bindings) ? bindings : [bindings];\n\n // Set requestScope if Request is the root request\n this.requestScope = parentRequest === null ? new Map() : null;\n }\n\n addChildRequest(\n serviceIdentifier: interfaces.ServiceIdentifier,\n bindings: interfaces.Binding<unknown> | interfaces.Binding<unknown>[],\n target: interfaces.Target\n ): interfaces.Request {\n const child = new Request(serviceIdentifier, this.parentContext, this, bindings, target);\n this.childRequests.push(child);\n return child;\n }\n}\n\nexport { Request };\n"]}
1
+ {"version":3,"sources":["../src/common/inversify-lite/planning/request.ts"],"names":[],"mappings":";;;AACA,oCAAiC;AAEjC,MAAM,OAAO;IAUX,YACE,iBAA+C,EAC/C,aAAiC,EACjC,aAAwC,EACxC,QAA6D,EAC7D,MAAyB;QAEzB,IAAI,CAAC,EAAE,GAAG,IAAA,OAAE,GAAE,CAAC;QACf,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAGhE,IAAI,CAAC,YAAY,GAAG,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAChE,CAAC;IAED,eAAe,CACb,iBAA+C,EAC/C,QAAqE,EACrE,MAAyB;QAEzB,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QACzF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAEQ,0BAAO","file":"request.js","sourcesContent":["import type { interfaces } from '../interfaces/interfaces';\nimport { id } from '../utils/id';\n\nclass Request implements interfaces.Request {\n id: number;\n serviceIdentifier: interfaces.ServiceIdentifier;\n parentContext: interfaces.Context;\n parentRequest: interfaces.Request | null;\n bindings: interfaces.Binding<unknown>[];\n childRequests: interfaces.Request[];\n target: interfaces.Target;\n requestScope: interfaces.RequestScope | null;\n\n constructor(\n serviceIdentifier: interfaces.ServiceIdentifier,\n parentContext: interfaces.Context,\n parentRequest: interfaces.Request | null,\n bindings: interfaces.Binding<any> | interfaces.Binding<any>[],\n target: interfaces.Target\n ) {\n this.id = id();\n this.serviceIdentifier = serviceIdentifier;\n this.parentContext = parentContext;\n this.parentRequest = parentRequest;\n this.target = target;\n this.childRequests = [];\n this.bindings = Array.isArray(bindings) ? bindings : [bindings];\n\n // Set requestScope if Request is the root request\n this.requestScope = parentRequest === null ? new Map() : null;\n }\n\n addChildRequest(\n serviceIdentifier: interfaces.ServiceIdentifier,\n bindings: interfaces.Binding<unknown> | interfaces.Binding<unknown>[],\n target: interfaces.Target\n ): interfaces.Request {\n const child = new Request(serviceIdentifier, this.parentContext, this, bindings, target);\n this.childRequests.push(child);\n return child;\n }\n}\n\nexport { Request };\n"]}
@@ -32,13 +32,6 @@ Object.defineProperty(exports, "__esModule", {
32
32
  const METADATA_KEY = __importStar(require("../constants/metadata_keys")), id_1 = require("../utils/id"), serialization_1 = require("../utils/serialization"), metadata_1 = require("./metadata"), queryable_string_1 = require("./queryable_string");
33
33
 
34
34
  class Target {
35
- id;
36
- type;
37
- serviceIdentifier;
38
- name;
39
- identifier;
40
- key;
41
- metadata;
42
35
  constructor(type, identifier, serviceIdentifier, namedOrTagged) {
43
36
  this.id = (0, id_1.id)(), this.type = type, this.serviceIdentifier = serviceIdentifier;
44
37
  const queryableName = "symbol" == typeof identifier ? (0, serialization_1.getSymbolDescription)(identifier) : identifier;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/inversify-lite/planning/target.ts"],"names":[],"mappings":"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","file":"target.js","sourcesContent":["import * as METADATA_KEY from '../constants/metadata_keys';\nimport type { interfaces } from '../interfaces/interfaces';\nimport { id } from '../utils/id';\nimport { getSymbolDescription } from '../utils/serialization';\nimport { Metadata } from './metadata';\nimport { QueryableString } from './queryable_string';\n\nclass Target implements interfaces.Target {\n id: number;\n type: interfaces.TargetType;\n serviceIdentifier: interfaces.ServiceIdentifier;\n name: interfaces.QueryableString;\n identifier: string | symbol;\n key!: string | symbol;\n metadata!: Metadata[];\n\n constructor(\n type: interfaces.TargetType,\n identifier: string | symbol,\n serviceIdentifier: interfaces.ServiceIdentifier,\n namedOrTagged?: string | Metadata\n ) {\n this.id = id();\n this.type = type;\n this.serviceIdentifier = serviceIdentifier;\n const queryableName = typeof identifier === 'symbol' ? getSymbolDescription(identifier) : identifier;\n this.name = new QueryableString(queryableName || '');\n this.identifier = identifier;\n this.metadata = [];\n\n let metadataItem: interfaces.Metadata | null = null;\n\n // is named target\n if (typeof namedOrTagged === 'string') {\n metadataItem = new Metadata(METADATA_KEY.NAMED_TAG, namedOrTagged);\n } else if (namedOrTagged instanceof Metadata) {\n // is target with metadata\n metadataItem = namedOrTagged;\n }\n\n // target has metadata\n if (metadataItem !== null) {\n this.metadata.push(metadataItem);\n }\n }\n\n hasTag(key: string): boolean {\n for (const m of this.metadata) {\n if (m.key === key) {\n return true;\n }\n }\n return false;\n }\n\n isArray(): boolean {\n return this.hasTag(METADATA_KEY.MULTI_INJECT_TAG);\n }\n\n matchesArray(name: interfaces.ServiceIdentifier<unknown>): boolean {\n return this.matchesTag(METADATA_KEY.MULTI_INJECT_TAG)(name);\n }\n\n isNamed(): boolean {\n return this.hasTag(METADATA_KEY.NAMED_TAG);\n }\n\n isTagged(): boolean {\n return this.metadata.some(metadata => METADATA_KEY.NON_CUSTOM_TAG_KEYS.every(key => metadata.key !== key));\n }\n\n isOptional(): boolean {\n return this.matchesTag(METADATA_KEY.OPTIONAL_TAG)(true);\n }\n\n getNamedTag(): interfaces.Metadata<string> | null {\n if (this.isNamed()) {\n return this.metadata.filter(m => m.key === METADATA_KEY.NAMED_TAG)[0] as interfaces.Metadata<string>;\n }\n return null;\n }\n\n getCustomTags(): interfaces.Metadata[] | null {\n if (this.isTagged()) {\n return this.metadata.filter(metadata => METADATA_KEY.NON_CUSTOM_TAG_KEYS.every(key => metadata.key !== key));\n }\n return null;\n }\n\n matchesNamedTag(name: string): boolean {\n return this.matchesTag(METADATA_KEY.NAMED_TAG)(name);\n }\n\n matchesTag(key: string) {\n return (value: unknown) => {\n for (const m of this.metadata) {\n if (m.key === key && m.value === value) {\n return true;\n }\n }\n return false;\n };\n }\n}\n\nexport { Target };\n"]}
1
+ {"version":3,"sources":["../src/common/inversify-lite/planning/target.ts"],"names":[],"mappings":"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","file":"target.js","sourcesContent":["import * as METADATA_KEY from '../constants/metadata_keys';\nimport type { interfaces } from '../interfaces/interfaces';\nimport { id } from '../utils/id';\nimport { getSymbolDescription } from '../utils/serialization';\nimport { Metadata } from './metadata';\nimport { QueryableString } from './queryable_string';\n\nclass Target implements interfaces.Target {\n id: number;\n type: interfaces.TargetType;\n serviceIdentifier: interfaces.ServiceIdentifier;\n name: interfaces.QueryableString;\n identifier: string | symbol;\n key!: string | symbol;\n metadata!: Metadata[];\n\n constructor(\n type: interfaces.TargetType,\n identifier: string | symbol,\n serviceIdentifier: interfaces.ServiceIdentifier,\n namedOrTagged?: string | Metadata\n ) {\n this.id = id();\n this.type = type;\n this.serviceIdentifier = serviceIdentifier;\n const queryableName = typeof identifier === 'symbol' ? getSymbolDescription(identifier) : identifier;\n this.name = new QueryableString(queryableName || '');\n this.identifier = identifier;\n this.metadata = [];\n\n let metadataItem: interfaces.Metadata | null = null;\n\n // is named target\n if (typeof namedOrTagged === 'string') {\n metadataItem = new Metadata(METADATA_KEY.NAMED_TAG, namedOrTagged);\n } else if (namedOrTagged instanceof Metadata) {\n // is target with metadata\n metadataItem = namedOrTagged;\n }\n\n // target has metadata\n if (metadataItem !== null) {\n this.metadata.push(metadataItem);\n }\n }\n\n hasTag(key: string): boolean {\n for (const m of this.metadata) {\n if (m.key === key) {\n return true;\n }\n }\n return false;\n }\n\n isArray(): boolean {\n return this.hasTag(METADATA_KEY.MULTI_INJECT_TAG);\n }\n\n matchesArray(name: interfaces.ServiceIdentifier<unknown>): boolean {\n return this.matchesTag(METADATA_KEY.MULTI_INJECT_TAG)(name);\n }\n\n isNamed(): boolean {\n return this.hasTag(METADATA_KEY.NAMED_TAG);\n }\n\n isTagged(): boolean {\n return this.metadata.some(metadata => METADATA_KEY.NON_CUSTOM_TAG_KEYS.every(key => metadata.key !== key));\n }\n\n isOptional(): boolean {\n return this.matchesTag(METADATA_KEY.OPTIONAL_TAG)(true);\n }\n\n getNamedTag(): interfaces.Metadata<string> | null {\n if (this.isNamed()) {\n return this.metadata.filter(m => m.key === METADATA_KEY.NAMED_TAG)[0] as interfaces.Metadata<string>;\n }\n return null;\n }\n\n getCustomTags(): interfaces.Metadata[] | null {\n if (this.isTagged()) {\n return this.metadata.filter(metadata => METADATA_KEY.NON_CUSTOM_TAG_KEYS.every(key => metadata.key !== key));\n }\n return null;\n }\n\n matchesNamedTag(name: string): boolean {\n return this.matchesTag(METADATA_KEY.NAMED_TAG)(name);\n }\n\n matchesTag(key: string) {\n return (value: unknown) => {\n for (const m of this.metadata) {\n if (m.key === key && m.value === value) {\n return true;\n }\n }\n return false;\n };\n }\n}\n\nexport { Target };\n"]}
@@ -23,6 +23,30 @@ var __createBinding = this && this.__createBinding || (Object.create ? function(
23
23
  var result = {};
24
24
  if (null != mod) for (var k in mod) "default" !== k && Object.prototype.hasOwnProperty.call(mod, k) && __createBinding(result, mod, k);
25
25
  return __setModuleDefault(result, mod), result;
26
+ }, __awaiter = this && this.__awaiter || function(thisArg, _arguments, P, generator) {
27
+ return new (P || (P = Promise))((function(resolve, reject) {
28
+ function fulfilled(value) {
29
+ try {
30
+ step(generator.next(value));
31
+ } catch (e) {
32
+ reject(e);
33
+ }
34
+ }
35
+ function rejected(value) {
36
+ try {
37
+ step(generator.throw(value));
38
+ } catch (e) {
39
+ reject(e);
40
+ }
41
+ }
42
+ function step(result) {
43
+ var value;
44
+ result.done ? resolve(result.value) : (value = result.value, value instanceof P ? value : new P((function(resolve) {
45
+ resolve(value);
46
+ }))).then(fulfilled, rejected);
47
+ }
48
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
49
+ }));
26
50
  }, __importDefault = this && this.__importDefault || function(mod) {
27
51
  return mod && mod.__esModule ? mod : {
28
52
  default: mod
@@ -52,10 +76,9 @@ function _resolveRequests(childRequests, resolveRequest) {
52
76
  function _createInstance(constr, childRequests, resolveRequest) {
53
77
  let result;
54
78
  if (childRequests.length > 0) {
55
- const resolved = _resolveRequests(childRequests, resolveRequest), createInstanceWithInjectionsArg = {
56
- ...resolved,
79
+ const resolved = _resolveRequests(childRequests, resolveRequest), createInstanceWithInjectionsArg = Object.assign(Object.assign({}, resolved), {
57
80
  constr: constr
58
- };
81
+ });
59
82
  result = resolved.isAsync ? createInstanceWithInjectionsAsync(createInstanceWithInjectionsArg) : createInstanceWithInjections(createInstanceWithInjectionsArg);
60
83
  } else result = new constr;
61
84
  return result;
@@ -69,19 +92,22 @@ function createInstanceWithInjections(args) {
69
92
  })), instance;
70
93
  }
71
94
 
72
- async function createInstanceWithInjectionsAsync(args) {
73
- const constructorInjections = await possiblyWaitInjections(args.constructorInjections), propertyInjections = await possiblyWaitInjections(args.propertyInjections);
74
- return createInstanceWithInjections({
75
- ...args,
76
- constructorInjections: constructorInjections,
77
- propertyInjections: propertyInjections
78
- });
95
+ function createInstanceWithInjectionsAsync(args) {
96
+ return __awaiter(this, void 0, void 0, (function*() {
97
+ const constructorInjections = yield possiblyWaitInjections(args.constructorInjections), propertyInjections = yield possiblyWaitInjections(args.propertyInjections);
98
+ return createInstanceWithInjections(Object.assign(Object.assign({}, args), {
99
+ constructorInjections: constructorInjections,
100
+ propertyInjections: propertyInjections
101
+ }));
102
+ }));
79
103
  }
80
104
 
81
- async function possiblyWaitInjections(possiblePromiseinjections) {
82
- const injections = [];
83
- for (const injection of possiblePromiseinjections) Array.isArray(injection) ? injections.push(Promise.all(injection)) : injections.push(injection);
84
- return Promise.all(injections);
105
+ function possiblyWaitInjections(possiblePromiseinjections) {
106
+ return __awaiter(this, void 0, void 0, (function*() {
107
+ const injections = [];
108
+ for (const injection of possiblePromiseinjections) Array.isArray(injection) ? injections.push(Promise.all(injection)) : injections.push(injection);
109
+ return Promise.all(injections);
110
+ }));
85
111
  }
86
112
 
87
113
  function _getInstanceAfterPostConstruct(constr, result) {
@@ -90,9 +116,9 @@ function _getInstanceAfterPostConstruct(constr, result) {
90
116
  }
91
117
 
92
118
  function _postConstruct(constr, instance) {
119
+ var _a, _b;
93
120
  if (Reflect_metadata_1.default.hasMetadata(METADATA_KEY.POST_CONSTRUCT, constr)) {
94
- const data = Reflect_metadata_1.default.getMetadata(METADATA_KEY.POST_CONSTRUCT, constr);
95
- return instance[data.value]?.();
121
+ return null === (_b = (_a = instance)[Reflect_metadata_1.default.getMetadata(METADATA_KEY.POST_CONSTRUCT, constr).value]) || void 0 === _b ? void 0 : _b.call(_a);
96
122
  }
97
123
  }
98
124
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/inversify-lite/resolution/instantiation.ts"],"names":[],"mappings":"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","file":"instantiation.js","sourcesContent":["import { ON_DEACTIVATION_ERROR, POST_CONSTRUCT_ERROR, PRE_DESTROY_ERROR } from '../constants/error_msgs';\nimport { BindingScopeEnum, TargetTypeEnum } from '../constants/literal_types';\nimport * as METADATA_KEY from '../constants/metadata_keys';\nimport type { interfaces } from '../interfaces/interfaces';\nimport type { Metadata } from '../planning/metadata';\nimport { isPromise, isPromiseOrContainsPromise } from '../utils/async';\nimport Reflect from '../../Reflect-metadata';\n\ninterface InstanceCreationInstruction {\n constructorInjections: unknown[];\n propertyInjections: unknown[];\n propertyRequests: interfaces.Request[];\n}\n\ninterface ResolvedRequests extends InstanceCreationInstruction {\n isAsync: boolean;\n}\n\ninterface CreateInstanceWithInjectionArg<T> extends InstanceCreationInstruction {\n constr: interfaces.Newable<T>;\n}\n\nfunction _resolveRequests(\n childRequests: interfaces.Request[],\n resolveRequest: interfaces.ResolveRequestHandler\n): ResolvedRequests {\n return childRequests.reduce<ResolvedRequests>(\n (resolvedRequests, childRequest) => {\n const injection = resolveRequest(childRequest);\n const targetType = childRequest.target.type;\n if (targetType === TargetTypeEnum.ConstructorArgument) {\n resolvedRequests.constructorInjections.push(injection);\n } else {\n resolvedRequests.propertyRequests.push(childRequest);\n resolvedRequests.propertyInjections.push(injection);\n }\n if (!resolvedRequests.isAsync) {\n resolvedRequests.isAsync = isPromiseOrContainsPromise(injection);\n }\n return resolvedRequests;\n },\n { constructorInjections: [], propertyInjections: [], propertyRequests: [], isAsync: false }\n );\n}\n\nfunction _createInstance<T>(\n constr: interfaces.Newable<T>,\n childRequests: interfaces.Request[],\n resolveRequest: interfaces.ResolveRequestHandler\n): T | Promise<T> {\n let result: T | Promise<T>;\n\n if (childRequests.length > 0) {\n const resolved = _resolveRequests(childRequests, resolveRequest);\n const createInstanceWithInjectionsArg: CreateInstanceWithInjectionArg<T> = { ...resolved, constr };\n if (resolved.isAsync) {\n result = createInstanceWithInjectionsAsync(createInstanceWithInjectionsArg);\n } else {\n result = createInstanceWithInjections(createInstanceWithInjectionsArg);\n }\n } else {\n result = new constr();\n }\n\n return result;\n}\n\nfunction createInstanceWithInjections<T>(args: CreateInstanceWithInjectionArg<T>): T {\n const instance = new args.constr(...args.constructorInjections);\n args.propertyRequests.forEach((r: interfaces.Request, index: number) => {\n const property = r.target.identifier;\n const injection = args.propertyInjections[index];\n (instance as Record<string | symbol, unknown>)[property] = injection;\n });\n return instance;\n}\n\nasync function createInstanceWithInjectionsAsync<T>(args: CreateInstanceWithInjectionArg<T>): Promise<T> {\n const constructorInjections = await possiblyWaitInjections(args.constructorInjections);\n const propertyInjections = await possiblyWaitInjections(args.propertyInjections);\n return createInstanceWithInjections<T>({ ...args, constructorInjections, propertyInjections });\n}\n\nasync function possiblyWaitInjections(possiblePromiseinjections: unknown[]) {\n const injections: unknown[] = [];\n for (const injection of possiblePromiseinjections) {\n if (Array.isArray(injection)) {\n injections.push(Promise.all(injection));\n } else {\n injections.push(injection);\n }\n }\n return Promise.all(injections);\n}\n\nfunction _getInstanceAfterPostConstruct<T>(constr: interfaces.Newable<T>, result: T): T | Promise<T> {\n const postConstructResult = _postConstruct(constr, result);\n\n if (isPromise(postConstructResult)) {\n return postConstructResult.then(() => result);\n }\n return result;\n}\n\nfunction _postConstruct<T>(constr: interfaces.Newable<T>, instance: T): void | Promise<void> {\n if ((Reflect as any).hasMetadata(METADATA_KEY.POST_CONSTRUCT, constr)) {\n const data: Metadata = (Reflect as any).getMetadata(METADATA_KEY.POST_CONSTRUCT, constr);\n return (instance as interfaces.Instance<T>)[data.value as string]?.();\n // try {\n // return (instance as interfaces.Instance<T>)[data.value as string]?.();\n // } catch (e) {\n // if (e instanceof Error) {\n // throw new Error(POST_CONSTRUCT_ERROR(constr.name, e.message));\n // }\n // }\n }\n}\n\nfunction _validateInstanceResolution<T = unknown>(binding: interfaces.Binding<T>, constr: interfaces.Newable<T>): void {\n if (binding.scope !== BindingScopeEnum.Singleton) {\n _throwIfHandlingDeactivation(binding, constr);\n }\n}\n\nfunction _throwIfHandlingDeactivation<T = unknown>(\n binding: interfaces.Binding<T>,\n constr: interfaces.Newable<T>\n): void {\n const scopeErrorMessage = `Class cannot be instantiated in ${\n binding.scope === BindingScopeEnum.Request ? 'request' : 'transient'\n } scope.`;\n if (typeof binding.onDeactivation === 'function') {\n throw new Error(ON_DEACTIVATION_ERROR(constr.name, scopeErrorMessage));\n }\n\n if ((Reflect as any).hasMetadata(METADATA_KEY.PRE_DESTROY, constr)) {\n throw new Error(PRE_DESTROY_ERROR(constr.name, scopeErrorMessage));\n }\n}\n\nfunction resolveInstance<T>(\n binding: interfaces.Binding<T>,\n constr: interfaces.Newable<T>,\n childRequests: interfaces.Request[],\n resolveRequest: interfaces.ResolveRequestHandler\n): T | Promise<T> {\n _validateInstanceResolution(binding, constr);\n\n const result = _createInstance(constr, childRequests, resolveRequest);\n\n if (isPromise(result)) {\n return result.then(resolvedResult => _getInstanceAfterPostConstruct(constr, resolvedResult));\n }\n return _getInstanceAfterPostConstruct(constr, result);\n}\n\nexport { resolveInstance };\n"]}
1
+ {"version":3,"sources":["../src/common/inversify-lite/resolution/instantiation.ts"],"names":[],"mappings":"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","file":"instantiation.js","sourcesContent":["import { ON_DEACTIVATION_ERROR, POST_CONSTRUCT_ERROR, PRE_DESTROY_ERROR } from '../constants/error_msgs';\nimport { BindingScopeEnum, TargetTypeEnum } from '../constants/literal_types';\nimport * as METADATA_KEY from '../constants/metadata_keys';\nimport type { interfaces } from '../interfaces/interfaces';\nimport type { Metadata } from '../planning/metadata';\nimport { isPromise, isPromiseOrContainsPromise } from '../utils/async';\nimport Reflect from '../../Reflect-metadata';\n\ninterface InstanceCreationInstruction {\n constructorInjections: unknown[];\n propertyInjections: unknown[];\n propertyRequests: interfaces.Request[];\n}\n\ninterface ResolvedRequests extends InstanceCreationInstruction {\n isAsync: boolean;\n}\n\ninterface CreateInstanceWithInjectionArg<T> extends InstanceCreationInstruction {\n constr: interfaces.Newable<T>;\n}\n\nfunction _resolveRequests(\n childRequests: interfaces.Request[],\n resolveRequest: interfaces.ResolveRequestHandler\n): ResolvedRequests {\n return childRequests.reduce<ResolvedRequests>(\n (resolvedRequests, childRequest) => {\n const injection = resolveRequest(childRequest);\n const targetType = childRequest.target.type;\n if (targetType === TargetTypeEnum.ConstructorArgument) {\n resolvedRequests.constructorInjections.push(injection);\n } else {\n resolvedRequests.propertyRequests.push(childRequest);\n resolvedRequests.propertyInjections.push(injection);\n }\n if (!resolvedRequests.isAsync) {\n resolvedRequests.isAsync = isPromiseOrContainsPromise(injection);\n }\n return resolvedRequests;\n },\n { constructorInjections: [], propertyInjections: [], propertyRequests: [], isAsync: false }\n );\n}\n\nfunction _createInstance<T>(\n constr: interfaces.Newable<T>,\n childRequests: interfaces.Request[],\n resolveRequest: interfaces.ResolveRequestHandler\n): T | Promise<T> {\n let result: T | Promise<T>;\n\n if (childRequests.length > 0) {\n const resolved = _resolveRequests(childRequests, resolveRequest);\n const createInstanceWithInjectionsArg: CreateInstanceWithInjectionArg<T> = { ...resolved, constr };\n if (resolved.isAsync) {\n result = createInstanceWithInjectionsAsync(createInstanceWithInjectionsArg);\n } else {\n result = createInstanceWithInjections(createInstanceWithInjectionsArg);\n }\n } else {\n result = new constr();\n }\n\n return result;\n}\n\nfunction createInstanceWithInjections<T>(args: CreateInstanceWithInjectionArg<T>): T {\n const instance = new args.constr(...args.constructorInjections);\n args.propertyRequests.forEach((r: interfaces.Request, index: number) => {\n const property = r.target.identifier;\n const injection = args.propertyInjections[index];\n (instance as Record<string | symbol, unknown>)[property] = injection;\n });\n return instance;\n}\n\nasync function createInstanceWithInjectionsAsync<T>(args: CreateInstanceWithInjectionArg<T>): Promise<T> {\n const constructorInjections = await possiblyWaitInjections(args.constructorInjections);\n const propertyInjections = await possiblyWaitInjections(args.propertyInjections);\n return createInstanceWithInjections<T>({ ...args, constructorInjections, propertyInjections });\n}\n\nasync function possiblyWaitInjections(possiblePromiseinjections: unknown[]) {\n const injections: unknown[] = [];\n for (const injection of possiblePromiseinjections) {\n if (Array.isArray(injection)) {\n injections.push(Promise.all(injection));\n } else {\n injections.push(injection);\n }\n }\n return Promise.all(injections);\n}\n\nfunction _getInstanceAfterPostConstruct<T>(constr: interfaces.Newable<T>, result: T): T | Promise<T> {\n const postConstructResult = _postConstruct(constr, result);\n\n if (isPromise(postConstructResult)) {\n return postConstructResult.then(() => result);\n }\n return result;\n}\n\nfunction _postConstruct<T>(constr: interfaces.Newable<T>, instance: T): void | Promise<void> {\n if ((Reflect as any).hasMetadata(METADATA_KEY.POST_CONSTRUCT, constr)) {\n const data: Metadata = (Reflect as any).getMetadata(METADATA_KEY.POST_CONSTRUCT, constr);\n return (instance as interfaces.Instance<T>)[data.value as string]?.();\n // try {\n // return (instance as interfaces.Instance<T>)[data.value as string]?.();\n // } catch (e) {\n // if (e instanceof Error) {\n // throw new Error(POST_CONSTRUCT_ERROR(constr.name, e.message));\n // }\n // }\n }\n}\n\nfunction _validateInstanceResolution<T = unknown>(binding: interfaces.Binding<T>, constr: interfaces.Newable<T>): void {\n if (binding.scope !== BindingScopeEnum.Singleton) {\n _throwIfHandlingDeactivation(binding, constr);\n }\n}\n\nfunction _throwIfHandlingDeactivation<T = unknown>(\n binding: interfaces.Binding<T>,\n constr: interfaces.Newable<T>\n): void {\n const scopeErrorMessage = `Class cannot be instantiated in ${\n binding.scope === BindingScopeEnum.Request ? 'request' : 'transient'\n } scope.`;\n if (typeof binding.onDeactivation === 'function') {\n throw new Error(ON_DEACTIVATION_ERROR(constr.name, scopeErrorMessage));\n }\n\n if ((Reflect as any).hasMetadata(METADATA_KEY.PRE_DESTROY, constr)) {\n throw new Error(PRE_DESTROY_ERROR(constr.name, scopeErrorMessage));\n }\n}\n\nfunction resolveInstance<T>(\n binding: interfaces.Binding<T>,\n constr: interfaces.Newable<T>,\n childRequests: interfaces.Request[],\n resolveRequest: interfaces.ResolveRequestHandler\n): T | Promise<T> {\n _validateInstanceResolution(binding, constr);\n\n const result = _createInstance(constr, childRequests, resolveRequest);\n\n if (isPromise(result)) {\n return result.then(resolvedResult => _getInstanceAfterPostConstruct(constr, resolvedResult));\n }\n return _getInstanceAfterPostConstruct(constr, result);\n}\n\nexport { resolveInstance };\n"]}
@@ -1,5 +1,31 @@
1
1
  "use strict";
2
2
 
3
+ var __awaiter = this && this.__awaiter || function(thisArg, _arguments, P, generator) {
4
+ return new (P || (P = Promise))((function(resolve, reject) {
5
+ function fulfilled(value) {
6
+ try {
7
+ step(generator.next(value));
8
+ } catch (e) {
9
+ reject(e);
10
+ }
11
+ }
12
+ function rejected(value) {
13
+ try {
14
+ step(generator.throw(value));
15
+ } catch (e) {
16
+ reject(e);
17
+ }
18
+ }
19
+ function step(result) {
20
+ var value;
21
+ result.done ? resolve(result.value) : (value = result.value, value instanceof P ? value : new P((function(resolve) {
22
+ resolve(value);
23
+ }))).then(fulfilled, rejected);
24
+ }
25
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
26
+ }));
27
+ };
28
+
3
29
  Object.defineProperty(exports, "__esModule", {
4
30
  value: !0
5
31
  }), exports.saveToScope = exports.tryGetFromScope = void 0;
@@ -19,12 +45,12 @@ const _saveToRequestScope = (requestScope, binding, result) => {
19
45
  requestScope.has(binding.id) || requestScope.set(binding.id, result);
20
46
  }, _saveToSingletonScope = (binding, result) => {
21
47
  binding.cache = result, binding.activated = !0, (0, async_1.isPromise)(result) && _saveAsyncResultToSingletonScope(binding, result);
22
- }, _saveAsyncResultToSingletonScope = async (binding, asyncResult) => {
48
+ }, _saveAsyncResultToSingletonScope = (binding, asyncResult) => __awaiter(void 0, void 0, void 0, (function*() {
23
49
  try {
24
- const result = await asyncResult;
50
+ const result = yield asyncResult;
25
51
  binding.cache = result;
26
52
  } catch (ex) {
27
53
  throw binding.cache = null, binding.activated = !1, ex;
28
54
  }
29
- };
55
+ }));
30
56
  //# sourceMappingURL=scope.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/inversify-lite/scope/scope.ts"],"names":[],"mappings":";;;AACA,8DAA8D;AAE9D,0CAA2C;AAEpC,MAAM,eAAe,GAAG,CAC7B,YAAqC,EACrC,OAA8B,EACP,EAAE;IACzB,IAAI,OAAO,CAAC,KAAK,KAAK,gCAAgB,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE;QACrE,OAAO,OAAO,CAAC,KAAM,CAAC;KACvB;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,gCAAgB,CAAC,OAAO,IAAI,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QAC9E,OAAO,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAmB,CAAC;KACvD;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAZW,QAAA,eAAe,mBAY1B;AAEK,MAAM,WAAW,GAAG,CACzB,YAAqC,EACrC,OAA8B,EAC9B,MAAsB,EAChB,EAAE;IACR,IAAI,OAAO,CAAC,KAAK,KAAK,gCAAgB,CAAC,SAAS,EAAE;QAChD,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;KACxC;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,gCAAgB,CAAC,OAAO,EAAE;QAC9C,mBAAmB,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;KACpD;AACH,CAAC,CAAC;AAZW,QAAA,WAAW,eAYtB;AAEF,MAAM,mBAAmB,GAAG,CAC1B,YAAqC,EACrC,OAA8B,EAC9B,MAAsB,EAChB,EAAE;IACR,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACjC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;KACtC;AACH,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAI,OAA8B,EAAE,MAAsB,EAAQ,EAAE;IAEhG,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC;IACvB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAEzB,IAAI,IAAA,iBAAS,EAAC,MAAM,CAAC,EAAE;QACrB,KAAK,gCAAgC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;KACxD;AACH,CAAC,CAAC;AAEF,MAAM,gCAAgC,GAAG,KAAK,EAC5C,OAA8B,EAC9B,WAAuB,EACR,EAAE;IACjB,IAAI;QACF,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC;QAEjC,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC;KACxB;IAAC,OAAO,EAAW,EAAE;QAEpB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;QACrB,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;QAE1B,MAAM,EAAE,CAAC;KACV;AACH,CAAC,CAAC","file":"scope.js","sourcesContent":["// import { BindingScopeEnum, interfaces } from '../inversify';\nimport { BindingScopeEnum } from '../constants/literal_types';\nimport type { interfaces } from '../interfaces/interfaces';\nimport { isPromise } from '../utils/async';\n\nexport const tryGetFromScope = <T>(\n requestScope: interfaces.RequestScope,\n binding: interfaces.Binding<T>\n): T | Promise<T> | null => {\n if (binding.scope === BindingScopeEnum.Singleton && binding.activated) {\n return binding.cache!;\n }\n\n if (binding.scope === BindingScopeEnum.Request && requestScope.has(binding.id)) {\n return requestScope.get(binding.id) as T | Promise<T>;\n }\n return null;\n};\n\nexport const saveToScope = <T>(\n requestScope: interfaces.RequestScope,\n binding: interfaces.Binding<T>,\n result: T | Promise<T>\n): void => {\n if (binding.scope === BindingScopeEnum.Singleton) {\n _saveToSingletonScope(binding, result);\n }\n\n if (binding.scope === BindingScopeEnum.Request) {\n _saveToRequestScope(requestScope, binding, result);\n }\n};\n\nconst _saveToRequestScope = <T>(\n requestScope: interfaces.RequestScope,\n binding: interfaces.Binding<T>,\n result: T | Promise<T>\n): void => {\n if (!requestScope.has(binding.id)) {\n requestScope.set(binding.id, result);\n }\n};\n\nconst _saveToSingletonScope = <T>(binding: interfaces.Binding<T>, result: T | Promise<T>): void => {\n // store in cache if scope is singleton\n binding.cache = result;\n binding.activated = true;\n\n if (isPromise(result)) {\n void _saveAsyncResultToSingletonScope(binding, result);\n }\n};\n\nconst _saveAsyncResultToSingletonScope = async <T>(\n binding: interfaces.Binding<T>,\n asyncResult: Promise<T>\n): Promise<void> => {\n try {\n const result = await asyncResult;\n\n binding.cache = result;\n } catch (ex: unknown) {\n // allow binding to retry in future\n binding.cache = null;\n binding.activated = false;\n\n throw ex;\n }\n};\n"]}
1
+ {"version":3,"sources":["../src/common/inversify-lite/scope/scope.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8DAA8D;AAE9D,0CAA2C;AAEpC,MAAM,eAAe,GAAG,CAC7B,YAAqC,EACrC,OAA8B,EACP,EAAE;IACzB,IAAI,OAAO,CAAC,KAAK,KAAK,gCAAgB,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE;QACrE,OAAO,OAAO,CAAC,KAAM,CAAC;KACvB;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,gCAAgB,CAAC,OAAO,IAAI,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QAC9E,OAAO,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAmB,CAAC;KACvD;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAZW,QAAA,eAAe,mBAY1B;AAEK,MAAM,WAAW,GAAG,CACzB,YAAqC,EACrC,OAA8B,EAC9B,MAAsB,EAChB,EAAE;IACR,IAAI,OAAO,CAAC,KAAK,KAAK,gCAAgB,CAAC,SAAS,EAAE;QAChD,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;KACxC;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,gCAAgB,CAAC,OAAO,EAAE;QAC9C,mBAAmB,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;KACpD;AACH,CAAC,CAAC;AAZW,QAAA,WAAW,eAYtB;AAEF,MAAM,mBAAmB,GAAG,CAC1B,YAAqC,EACrC,OAA8B,EAC9B,MAAsB,EAChB,EAAE;IACR,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACjC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;KACtC;AACH,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAI,OAA8B,EAAE,MAAsB,EAAQ,EAAE;IAEhG,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC;IACvB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAEzB,IAAI,IAAA,iBAAS,EAAC,MAAM,CAAC,EAAE;QACrB,KAAK,gCAAgC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;KACxD;AACH,CAAC,CAAC;AAEF,MAAM,gCAAgC,GAAG,CACvC,OAA8B,EAC9B,WAAuB,EACR,EAAE;IACjB,IAAI;QACF,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC;QAEjC,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC;KACxB;IAAC,OAAO,EAAW,EAAE;QAEpB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;QACrB,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;QAE1B,MAAM,EAAE,CAAC;KACV;AACH,CAAC,CAAA,CAAC","file":"scope.js","sourcesContent":["// import { BindingScopeEnum, interfaces } from '../inversify';\nimport { BindingScopeEnum } from '../constants/literal_types';\nimport type { interfaces } from '../interfaces/interfaces';\nimport { isPromise } from '../utils/async';\n\nexport const tryGetFromScope = <T>(\n requestScope: interfaces.RequestScope,\n binding: interfaces.Binding<T>\n): T | Promise<T> | null => {\n if (binding.scope === BindingScopeEnum.Singleton && binding.activated) {\n return binding.cache!;\n }\n\n if (binding.scope === BindingScopeEnum.Request && requestScope.has(binding.id)) {\n return requestScope.get(binding.id) as T | Promise<T>;\n }\n return null;\n};\n\nexport const saveToScope = <T>(\n requestScope: interfaces.RequestScope,\n binding: interfaces.Binding<T>,\n result: T | Promise<T>\n): void => {\n if (binding.scope === BindingScopeEnum.Singleton) {\n _saveToSingletonScope(binding, result);\n }\n\n if (binding.scope === BindingScopeEnum.Request) {\n _saveToRequestScope(requestScope, binding, result);\n }\n};\n\nconst _saveToRequestScope = <T>(\n requestScope: interfaces.RequestScope,\n binding: interfaces.Binding<T>,\n result: T | Promise<T>\n): void => {\n if (!requestScope.has(binding.id)) {\n requestScope.set(binding.id, result);\n }\n};\n\nconst _saveToSingletonScope = <T>(binding: interfaces.Binding<T>, result: T | Promise<T>): void => {\n // store in cache if scope is singleton\n binding.cache = result;\n binding.activated = true;\n\n if (isPromise(result)) {\n void _saveAsyncResultToSingletonScope(binding, result);\n }\n};\n\nconst _saveAsyncResultToSingletonScope = async <T>(\n binding: interfaces.Binding<T>,\n asyncResult: Promise<T>\n): Promise<void> => {\n try {\n const result = await asyncResult;\n\n binding.cache = result;\n } catch (ex: unknown) {\n // allow binding to retry in future\n binding.cache = null;\n binding.activated = false;\n\n throw ex;\n }\n};\n"]}
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  const literal_types_1 = require("../constants/literal_types"), binding_when_on_syntax_1 = require("./binding_when_on_syntax");
8
8
 
9
9
  class BindingInSyntax {
10
- _binding;
11
10
  constructor(binding) {
12
11
  this._binding = binding;
13
12
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_in_syntax.ts"],"names":[],"mappings":";;;AAAA,8DAA8D;AAE9D,qEAA+D;AAE/D,MAAM,eAAe;IACX,QAAQ,CAAwB;IAExC,YAAY,OAA8B;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,gCAAgB,CAAC,OAAO,CAAC;QAC/C,OAAO,IAAI,4CAAmB,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,gCAAgB,CAAC,SAAS,CAAC;QACjD,OAAO,IAAI,4CAAmB,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,gCAAgB,CAAC,SAAS,CAAC;QACjD,OAAO,IAAI,4CAAmB,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;CACF;AAEQ,0CAAe","file":"binding_in_syntax.js","sourcesContent":["import { BindingScopeEnum } from '../constants/literal_types';\nimport type { interfaces } from '../interfaces/interfaces';\nimport { BindingWhenOnSyntax } from './binding_when_on_syntax';\n\nclass BindingInSyntax<T> implements interfaces.BindingInSyntax<T> {\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n }\n\n inRequestScope(): interfaces.BindingWhenOnSyntax<T> {\n this._binding.scope = BindingScopeEnum.Request;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n inSingletonScope(): interfaces.BindingWhenOnSyntax<T> {\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n inTransientScope(): interfaces.BindingWhenOnSyntax<T> {\n this._binding.scope = BindingScopeEnum.Transient;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n}\n\nexport { BindingInSyntax };\n"]}
1
+ {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_in_syntax.ts"],"names":[],"mappings":";;;AAAA,8DAA8D;AAE9D,qEAA+D;AAE/D,MAAM,eAAe;IAGnB,YAAY,OAA8B;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,gCAAgB,CAAC,OAAO,CAAC;QAC/C,OAAO,IAAI,4CAAmB,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,gCAAgB,CAAC,SAAS,CAAC;QACjD,OAAO,IAAI,4CAAmB,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,gCAAgB,CAAC,SAAS,CAAC;QACjD,OAAO,IAAI,4CAAmB,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;CACF;AAEQ,0CAAe","file":"binding_in_syntax.js","sourcesContent":["import { BindingScopeEnum } from '../constants/literal_types';\nimport type { interfaces } from '../interfaces/interfaces';\nimport { BindingWhenOnSyntax } from './binding_when_on_syntax';\n\nclass BindingInSyntax<T> implements interfaces.BindingInSyntax<T> {\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n }\n\n inRequestScope(): interfaces.BindingWhenOnSyntax<T> {\n this._binding.scope = BindingScopeEnum.Request;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n inSingletonScope(): interfaces.BindingWhenOnSyntax<T> {\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n inTransientScope(): interfaces.BindingWhenOnSyntax<T> {\n this._binding.scope = BindingScopeEnum.Transient;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n}\n\nexport { BindingInSyntax };\n"]}
@@ -7,9 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  const binding_in_syntax_1 = require("./binding_in_syntax"), binding_when_syntax_1 = require("./binding_when_syntax");
8
8
 
9
9
  class BindingInWhenOnSyntax {
10
- _bindingInSyntax;
11
- _bindingWhenSyntax;
12
- _binding;
13
10
  constructor(binding) {
14
11
  this._binding = binding, this._bindingWhenSyntax = new binding_when_syntax_1.BindingWhenSyntax(this._binding),
15
12
  this._bindingInSyntax = new binding_in_syntax_1.BindingInSyntax(binding);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_in_when_on_syntax.ts"],"names":[],"mappings":";;;AACA,2DAAsD;AAEtD,+DAA0D;AAE1D,MAAM,qBAAqB;IAGjB,gBAAgB,CAAgC;IAChD,kBAAkB,CAAkC;IAEpD,QAAQ,CAAwB;IAExC,YAAY,OAA8B;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,IAAI,uCAAiB,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElE,IAAI,CAAC,gBAAgB,GAAG,IAAI,mCAAe,CAAI,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC;IAChD,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;IAClD,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;IAClD,CAAC;IAMD,eAAe,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;CA6DF;AAEQ,sDAAqB","file":"binding_in_when_on_syntax.js","sourcesContent":["import type { interfaces } from '../interfaces/interfaces';\nimport { BindingInSyntax } from './binding_in_syntax';\n// import { BindingOnSyntax } from './binding_on_syntax';\nimport { BindingWhenSyntax } from './binding_when_syntax';\n\nclass BindingInWhenOnSyntax<T>\n implements interfaces.BindingInSyntax<T>, interfaces.BindingWhenSyntax<T>, interfaces.BindingOnSyntax<T>\n{\n private _bindingInSyntax: interfaces.BindingInSyntax<T>;\n private _bindingWhenSyntax: interfaces.BindingWhenSyntax<T>;\n // private _bindingOnSyntax: interfaces.BindingOnSyntax<T>;\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n this._bindingWhenSyntax = new BindingWhenSyntax<T>(this._binding);\n // this._bindingOnSyntax = new BindingOnSyntax<T>(this._binding);\n this._bindingInSyntax = new BindingInSyntax<T>(binding);\n }\n\n inRequestScope(): interfaces.BindingWhenOnSyntax<T> {\n return this._bindingInSyntax.inRequestScope();\n }\n\n inSingletonScope(): interfaces.BindingWhenOnSyntax<T> {\n return this._bindingInSyntax.inSingletonScope();\n }\n\n inTransientScope(): interfaces.BindingWhenOnSyntax<T> {\n return this._bindingInSyntax.inTransientScope();\n }\n\n // public when(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.when(constraint);\n // }\n\n whenTargetNamed(name: string): interfaces.BindingOnSyntax<T> {\n return this._bindingWhenSyntax.whenTargetNamed(name);\n }\n\n // public whenTargetIsDefault(): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenTargetIsDefault();\n // }\n\n // public whenTargetTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenTargetTagged(tag, value);\n // }\n\n // public whenInjectedInto(parent: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenInjectedInto(parent);\n // }\n\n // public whenParentNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenParentNamed(name);\n // }\n\n // public whenParentTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenParentTagged(tag, value);\n // }\n\n // public whenAnyAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorIs(ancestor);\n // }\n\n // public whenNoAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorIs(ancestor);\n // }\n\n // public whenAnyAncestorNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorNamed(name);\n // }\n\n // public whenAnyAncestorTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorTagged(tag, value);\n // }\n\n // public whenNoAncestorNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorNamed(name);\n // }\n\n // public whenNoAncestorTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorTagged(tag, value);\n // }\n\n // public whenAnyAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorMatches(constraint);\n // }\n\n // public whenNoAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorMatches(constraint);\n // }\n\n // public onActivation(handler: (context: interfaces.Context, injectable: T) => T | Promise<T>): interfaces.BindingWhenSyntax<T> {\n // return this._bindingOnSyntax.onActivation(handler);\n // }\n\n // public onDeactivation(handler: (injectable: T) => void | Promise<void>): interfaces.BindingWhenSyntax<T> {\n // return this._bindingOnSyntax.onDeactivation(handler);\n // }\n}\n\nexport { BindingInWhenOnSyntax };\n"]}
1
+ {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_in_when_on_syntax.ts"],"names":[],"mappings":";;;AACA,2DAAsD;AAEtD,+DAA0D;AAE1D,MAAM,qBAAqB;IAQzB,YAAY,OAA8B;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,IAAI,uCAAiB,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElE,IAAI,CAAC,gBAAgB,GAAG,IAAI,mCAAe,CAAI,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC;IAChD,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;IAClD,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;IAClD,CAAC;IAMD,eAAe,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;CA6DF;AAEQ,sDAAqB","file":"binding_in_when_on_syntax.js","sourcesContent":["import type { interfaces } from '../interfaces/interfaces';\nimport { BindingInSyntax } from './binding_in_syntax';\n// import { BindingOnSyntax } from './binding_on_syntax';\nimport { BindingWhenSyntax } from './binding_when_syntax';\n\nclass BindingInWhenOnSyntax<T>\n implements interfaces.BindingInSyntax<T>, interfaces.BindingWhenSyntax<T>, interfaces.BindingOnSyntax<T>\n{\n private _bindingInSyntax: interfaces.BindingInSyntax<T>;\n private _bindingWhenSyntax: interfaces.BindingWhenSyntax<T>;\n // private _bindingOnSyntax: interfaces.BindingOnSyntax<T>;\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n this._bindingWhenSyntax = new BindingWhenSyntax<T>(this._binding);\n // this._bindingOnSyntax = new BindingOnSyntax<T>(this._binding);\n this._bindingInSyntax = new BindingInSyntax<T>(binding);\n }\n\n inRequestScope(): interfaces.BindingWhenOnSyntax<T> {\n return this._bindingInSyntax.inRequestScope();\n }\n\n inSingletonScope(): interfaces.BindingWhenOnSyntax<T> {\n return this._bindingInSyntax.inSingletonScope();\n }\n\n inTransientScope(): interfaces.BindingWhenOnSyntax<T> {\n return this._bindingInSyntax.inTransientScope();\n }\n\n // public when(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.when(constraint);\n // }\n\n whenTargetNamed(name: string): interfaces.BindingOnSyntax<T> {\n return this._bindingWhenSyntax.whenTargetNamed(name);\n }\n\n // public whenTargetIsDefault(): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenTargetIsDefault();\n // }\n\n // public whenTargetTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenTargetTagged(tag, value);\n // }\n\n // public whenInjectedInto(parent: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenInjectedInto(parent);\n // }\n\n // public whenParentNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenParentNamed(name);\n // }\n\n // public whenParentTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenParentTagged(tag, value);\n // }\n\n // public whenAnyAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorIs(ancestor);\n // }\n\n // public whenNoAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorIs(ancestor);\n // }\n\n // public whenAnyAncestorNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorNamed(name);\n // }\n\n // public whenAnyAncestorTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorTagged(tag, value);\n // }\n\n // public whenNoAncestorNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorNamed(name);\n // }\n\n // public whenNoAncestorTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorTagged(tag, value);\n // }\n\n // public whenAnyAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorMatches(constraint);\n // }\n\n // public whenNoAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorMatches(constraint);\n // }\n\n // public onActivation(handler: (context: interfaces.Context, injectable: T) => T | Promise<T>): interfaces.BindingWhenSyntax<T> {\n // return this._bindingOnSyntax.onActivation(handler);\n // }\n\n // public onDeactivation(handler: (injectable: T) => void | Promise<void>): interfaces.BindingWhenSyntax<T> {\n // return this._bindingOnSyntax.onDeactivation(handler);\n // }\n}\n\nexport { BindingInWhenOnSyntax };\n"]}
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  }), exports.BindingOnSyntax = void 0;
6
6
 
7
7
  class BindingOnSyntax {
8
- _binding;
9
8
  constructor(binding) {
10
9
  this._binding = binding;
11
10
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_on_syntax.ts"],"names":[],"mappings":";;;AAGA,MAAM,eAAe;IACX,QAAQ,CAAwB;IAExC,YAAY,OAA8B;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;CAaF;AAEQ,0CAAe","file":"binding_on_syntax.js","sourcesContent":["import type { interfaces } from '../interfaces/interfaces';\n// import { BindingWhenSyntax } from './binding_when_syntax';\n\nclass BindingOnSyntax<T> implements interfaces.BindingOnSyntax<T> {\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n }\n\n // public onActivation(handler: interfaces.BindingActivation<T>): interfaces.BindingWhenSyntax<T> {\n // console.log('onActivation');\n // this._binding.onActivation = handler;\n // return new BindingWhenSyntax<T>(this._binding);\n // }\n\n // public onDeactivation(handler: interfaces.BindingDeactivation<T>): interfaces.BindingWhenSyntax<T> {\n // console.log('onDeactivation');\n // this._binding.onDeactivation = handler;\n // return new BindingWhenSyntax<T>(this._binding);\n // }\n}\n\nexport { BindingOnSyntax };\n"]}
1
+ {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_on_syntax.ts"],"names":[],"mappings":";;;AAGA,MAAM,eAAe;IAGnB,YAAY,OAA8B;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;CAaF;AAEQ,0CAAe","file":"binding_on_syntax.js","sourcesContent":["import type { interfaces } from '../interfaces/interfaces';\n// import { BindingWhenSyntax } from './binding_when_syntax';\n\nclass BindingOnSyntax<T> implements interfaces.BindingOnSyntax<T> {\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n }\n\n // public onActivation(handler: interfaces.BindingActivation<T>): interfaces.BindingWhenSyntax<T> {\n // console.log('onActivation');\n // this._binding.onActivation = handler;\n // return new BindingWhenSyntax<T>(this._binding);\n // }\n\n // public onDeactivation(handler: interfaces.BindingDeactivation<T>): interfaces.BindingWhenSyntax<T> {\n // console.log('onDeactivation');\n // this._binding.onDeactivation = handler;\n // return new BindingWhenSyntax<T>(this._binding);\n // }\n}\n\nexport { BindingOnSyntax };\n"]}
@@ -32,7 +32,6 @@ Object.defineProperty(exports, "__esModule", {
32
32
  const ERROR_MSGS = __importStar(require("../constants/error_msgs")), literal_types_1 = require("../constants/literal_types"), binding_in_when_on_syntax_1 = require("./binding_in_when_on_syntax"), binding_when_on_syntax_1 = require("./binding_when_on_syntax");
33
33
 
34
34
  class BindingToSyntax {
35
- _binding;
36
35
  constructor(binding) {
37
36
  this._binding = binding;
38
37
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_to_syntax.ts"],"names":[],"mappings":"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","file":"binding_to_syntax.js","sourcesContent":["import * as ERROR_MSGS from '../constants/error_msgs';\nimport { BindingScopeEnum, BindingTypeEnum } from '../constants/literal_types';\nimport type { interfaces } from '../interfaces/interfaces';\nimport { BindingInWhenOnSyntax } from './binding_in_when_on_syntax';\nimport { BindingWhenOnSyntax } from './binding_when_on_syntax';\n\nclass BindingToSyntax<T> implements interfaces.BindingToSyntax<T> {\n // TODO: Implement an internal type `_BindingToSyntax<T>` wherein this member\n // can be public. Let `BindingToSyntax<T>` be the presentational type that\n // depends on it, and does not expose this member as public.\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n }\n\n to(constructor: interfaces.Newable<T>): interfaces.BindingInWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Instance;\n this._binding.implementationType = constructor;\n return new BindingInWhenOnSyntax<T>(this._binding);\n }\n\n toSelf(): interfaces.BindingInWhenOnSyntax<T> {\n if (typeof this._binding.serviceIdentifier !== 'function') {\n throw new Error(`${ERROR_MSGS.INVALID_TO_SELF_VALUE}`);\n }\n const self = this._binding.serviceIdentifier;\n return this.to(self);\n }\n\n toConstantValue(value: T): interfaces.BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.ConstantValue;\n this._binding.cache = value;\n this._binding.dynamicValue = null;\n this._binding.implementationType = null;\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toDynamicValue(func: interfaces.DynamicValue<T>): interfaces.BindingInWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.DynamicValue;\n this._binding.cache = null;\n this._binding.dynamicValue = func;\n this._binding.implementationType = null;\n return new BindingInWhenOnSyntax<T>(this._binding);\n }\n\n toConstructor<T2>(constructor: interfaces.Newable<T2>): interfaces.BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Constructor;\n this._binding.implementationType = constructor as unknown as T;\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toFactory<T2>(factory: interfaces.FactoryCreator<T2>): interfaces.BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Factory;\n this._binding.factory = factory;\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toFunction(func: T): interfaces.BindingWhenOnSyntax<T> {\n // toFunction is an alias of toConstantValue\n if (typeof func !== 'function') {\n throw new Error(ERROR_MSGS.INVALID_FUNCTION_BINDING);\n }\n const bindingWhenOnSyntax = this.toConstantValue(func);\n this._binding.type = BindingTypeEnum.Function;\n this._binding.scope = BindingScopeEnum.Singleton;\n return bindingWhenOnSyntax;\n }\n\n toAutoFactory<T2>(serviceIdentifier: interfaces.ServiceIdentifier<T2>): interfaces.BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Factory;\n this._binding.factory = context => {\n const autofactory = () => context.container.get<T2>(serviceIdentifier);\n return autofactory;\n };\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toAutoNamedFactory<T2>(serviceIdentifier: interfaces.ServiceIdentifier<T2>): BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Factory;\n this._binding.factory = context => {\n return (named: unknown) => context.container.getNamed<T2>(serviceIdentifier, named as string);\n };\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toProvider<T2>(provider: interfaces.ProviderCreator<T2>): interfaces.BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Provider;\n this._binding.provider = provider;\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toService(service: string | symbol | interfaces.Newable<T> | interfaces.Abstract<T>): void {\n this.toDynamicValue(context => context.container.get<T>(service));\n }\n}\n\nexport { BindingToSyntax };\n"]}
1
+ {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_to_syntax.ts"],"names":[],"mappings":"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","file":"binding_to_syntax.js","sourcesContent":["import * as ERROR_MSGS from '../constants/error_msgs';\nimport { BindingScopeEnum, BindingTypeEnum } from '../constants/literal_types';\nimport type { interfaces } from '../interfaces/interfaces';\nimport { BindingInWhenOnSyntax } from './binding_in_when_on_syntax';\nimport { BindingWhenOnSyntax } from './binding_when_on_syntax';\n\nclass BindingToSyntax<T> implements interfaces.BindingToSyntax<T> {\n // TODO: Implement an internal type `_BindingToSyntax<T>` wherein this member\n // can be public. Let `BindingToSyntax<T>` be the presentational type that\n // depends on it, and does not expose this member as public.\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n }\n\n to(constructor: interfaces.Newable<T>): interfaces.BindingInWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Instance;\n this._binding.implementationType = constructor;\n return new BindingInWhenOnSyntax<T>(this._binding);\n }\n\n toSelf(): interfaces.BindingInWhenOnSyntax<T> {\n if (typeof this._binding.serviceIdentifier !== 'function') {\n throw new Error(`${ERROR_MSGS.INVALID_TO_SELF_VALUE}`);\n }\n const self = this._binding.serviceIdentifier;\n return this.to(self);\n }\n\n toConstantValue(value: T): interfaces.BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.ConstantValue;\n this._binding.cache = value;\n this._binding.dynamicValue = null;\n this._binding.implementationType = null;\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toDynamicValue(func: interfaces.DynamicValue<T>): interfaces.BindingInWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.DynamicValue;\n this._binding.cache = null;\n this._binding.dynamicValue = func;\n this._binding.implementationType = null;\n return new BindingInWhenOnSyntax<T>(this._binding);\n }\n\n toConstructor<T2>(constructor: interfaces.Newable<T2>): interfaces.BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Constructor;\n this._binding.implementationType = constructor as unknown as T;\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toFactory<T2>(factory: interfaces.FactoryCreator<T2>): interfaces.BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Factory;\n this._binding.factory = factory;\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toFunction(func: T): interfaces.BindingWhenOnSyntax<T> {\n // toFunction is an alias of toConstantValue\n if (typeof func !== 'function') {\n throw new Error(ERROR_MSGS.INVALID_FUNCTION_BINDING);\n }\n const bindingWhenOnSyntax = this.toConstantValue(func);\n this._binding.type = BindingTypeEnum.Function;\n this._binding.scope = BindingScopeEnum.Singleton;\n return bindingWhenOnSyntax;\n }\n\n toAutoFactory<T2>(serviceIdentifier: interfaces.ServiceIdentifier<T2>): interfaces.BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Factory;\n this._binding.factory = context => {\n const autofactory = () => context.container.get<T2>(serviceIdentifier);\n return autofactory;\n };\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toAutoNamedFactory<T2>(serviceIdentifier: interfaces.ServiceIdentifier<T2>): BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Factory;\n this._binding.factory = context => {\n return (named: unknown) => context.container.getNamed<T2>(serviceIdentifier, named as string);\n };\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toProvider<T2>(provider: interfaces.ProviderCreator<T2>): interfaces.BindingWhenOnSyntax<T> {\n this._binding.type = BindingTypeEnum.Provider;\n this._binding.provider = provider;\n this._binding.scope = BindingScopeEnum.Singleton;\n return new BindingWhenOnSyntax<T>(this._binding);\n }\n\n toService(service: string | symbol | interfaces.Newable<T> | interfaces.Abstract<T>): void {\n this.toDynamicValue(context => context.container.get<T>(service));\n }\n}\n\nexport { BindingToSyntax };\n"]}
@@ -7,8 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  const binding_when_syntax_1 = require("./binding_when_syntax");
8
8
 
9
9
  class BindingWhenOnSyntax {
10
- _bindingWhenSyntax;
11
- _binding;
12
10
  constructor(binding) {
13
11
  this._binding = binding, this._bindingWhenSyntax = new binding_when_syntax_1.BindingWhenSyntax(this._binding);
14
12
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_when_on_syntax.ts"],"names":[],"mappings":";;;AAEA,+DAA0D;AAE1D,MAAM,mBAAmB;IACf,kBAAkB,CAAkC;IAEpD,QAAQ,CAAwB;IAExC,YAAY,OAA8B;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,IAAI,uCAAiB,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEpE,CAAC;IAMD,eAAe,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;CA6DF;AAEQ,kDAAmB","file":"binding_when_on_syntax.js","sourcesContent":["import type { interfaces } from '../interfaces/interfaces';\n// import { BindingOnSyntax } from './binding_on_syntax';\nimport { BindingWhenSyntax } from './binding_when_syntax';\n\nclass BindingWhenOnSyntax<T> implements interfaces.BindingWhenSyntax<T>, interfaces.BindingOnSyntax<T> {\n private _bindingWhenSyntax: interfaces.BindingWhenSyntax<T>;\n // private _bindingOnSyntax: interfaces.BindingOnSyntax<T>;\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n this._bindingWhenSyntax = new BindingWhenSyntax<T>(this._binding);\n // this._bindingOnSyntax = new BindingOnSyntax<T>(this._binding);\n }\n\n // public when(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.when(constraint);\n // }\n\n whenTargetNamed(name: string): interfaces.BindingOnSyntax<T> {\n return this._bindingWhenSyntax.whenTargetNamed(name);\n }\n\n // public whenTargetIsDefault(): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenTargetIsDefault();\n // }\n\n // public whenTargetTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenTargetTagged(tag, value);\n // }\n\n // public whenInjectedInto(parent: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenInjectedInto(parent);\n // }\n\n // public whenParentNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenParentNamed(name);\n // }\n\n // public whenParentTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenParentTagged(tag, value);\n // }\n\n // public whenAnyAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorIs(ancestor);\n // }\n\n // public whenNoAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorIs(ancestor);\n // }\n\n // public whenAnyAncestorNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorNamed(name);\n // }\n\n // public whenAnyAncestorTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorTagged(tag, value);\n // }\n\n // public whenNoAncestorNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorNamed(name);\n // }\n\n // public whenNoAncestorTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorTagged(tag, value);\n // }\n\n // public whenAnyAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorMatches(constraint);\n // }\n\n // public whenNoAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorMatches(constraint);\n // }\n\n // public onActivation(handler: (context: interfaces.Context, injectable: T) => T): interfaces.BindingWhenSyntax<T> {\n // return this._bindingOnSyntax.onActivation(handler);\n // }\n\n // public onDeactivation(handler: (injectable: T) => Promise<void> | void): interfaces.BindingWhenSyntax<T> {\n // return this._bindingOnSyntax.onDeactivation(handler);\n // }\n}\n\nexport { BindingWhenOnSyntax };\n"]}
1
+ {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_when_on_syntax.ts"],"names":[],"mappings":";;;AAEA,+DAA0D;AAE1D,MAAM,mBAAmB;IAKvB,YAAY,OAA8B;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,IAAI,uCAAiB,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEpE,CAAC;IAMD,eAAe,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;CA6DF;AAEQ,kDAAmB","file":"binding_when_on_syntax.js","sourcesContent":["import type { interfaces } from '../interfaces/interfaces';\n// import { BindingOnSyntax } from './binding_on_syntax';\nimport { BindingWhenSyntax } from './binding_when_syntax';\n\nclass BindingWhenOnSyntax<T> implements interfaces.BindingWhenSyntax<T>, interfaces.BindingOnSyntax<T> {\n private _bindingWhenSyntax: interfaces.BindingWhenSyntax<T>;\n // private _bindingOnSyntax: interfaces.BindingOnSyntax<T>;\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n this._bindingWhenSyntax = new BindingWhenSyntax<T>(this._binding);\n // this._bindingOnSyntax = new BindingOnSyntax<T>(this._binding);\n }\n\n // public when(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.when(constraint);\n // }\n\n whenTargetNamed(name: string): interfaces.BindingOnSyntax<T> {\n return this._bindingWhenSyntax.whenTargetNamed(name);\n }\n\n // public whenTargetIsDefault(): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenTargetIsDefault();\n // }\n\n // public whenTargetTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenTargetTagged(tag, value);\n // }\n\n // public whenInjectedInto(parent: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenInjectedInto(parent);\n // }\n\n // public whenParentNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenParentNamed(name);\n // }\n\n // public whenParentTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenParentTagged(tag, value);\n // }\n\n // public whenAnyAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorIs(ancestor);\n // }\n\n // public whenNoAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorIs(ancestor);\n // }\n\n // public whenAnyAncestorNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorNamed(name);\n // }\n\n // public whenAnyAncestorTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorTagged(tag, value);\n // }\n\n // public whenNoAncestorNamed(name: string): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorNamed(name);\n // }\n\n // public whenNoAncestorTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorTagged(tag, value);\n // }\n\n // public whenAnyAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenAnyAncestorMatches(constraint);\n // }\n\n // public whenNoAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // return this._bindingWhenSyntax.whenNoAncestorMatches(constraint);\n // }\n\n // public onActivation(handler: (context: interfaces.Context, injectable: T) => T): interfaces.BindingWhenSyntax<T> {\n // return this._bindingOnSyntax.onActivation(handler);\n // }\n\n // public onDeactivation(handler: (injectable: T) => Promise<void> | void): interfaces.BindingWhenSyntax<T> {\n // return this._bindingOnSyntax.onDeactivation(handler);\n // }\n}\n\nexport { BindingWhenOnSyntax };\n"]}
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  const binding_on_syntax_1 = require("./binding_on_syntax"), constraint_helpers_1 = require("./constraint_helpers");
8
8
 
9
9
  class BindingWhenSyntax {
10
- _binding;
11
10
  constructor(binding) {
12
11
  this._binding = binding;
13
12
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_when_syntax.ts"],"names":[],"mappings":";;;AACA,2DAAsD;AACtD,6DAAuD;AAEvD,MAAM,iBAAiB;IACb,QAAQ,CAAwB;IAExC,YAAY,OAA8B;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAOD,eAAe,CAAC,IAA8B;QAC5C,IAAI,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAA,oCAAe,EAAC,IAAI,CAAC,CAAC;QACjD,OAAO,IAAI,mCAAe,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;CAiGF;AAEQ,8CAAiB","file":"binding_when_syntax.js","sourcesContent":["import type { interfaces } from '../interfaces/interfaces';\nimport { BindingOnSyntax } from './binding_on_syntax';\nimport { namedConstraint } from './constraint_helpers';\n\nclass BindingWhenSyntax<T> implements interfaces.BindingWhenSyntax<T> {\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n }\n\n // public when(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = constraint as interfaces.ConstraintFunction;\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n whenTargetNamed(name: string | number | symbol): interfaces.BindingOnSyntax<T> {\n this._binding.constraint = namedConstraint(name);\n return new BindingOnSyntax<T>(this._binding);\n }\n\n // public whenTargetIsDefault(): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) => {\n // if (request === null) {\n // return false;\n // }\n\n // const targetIsDefault = request.target !== null && !request.target.isNamed() && !request.target.isTagged();\n\n // return targetIsDefault;\n // };\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenTargetTagged(tag: string | number | symbol, value: unknown): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = taggedConstraint(tag)(value);\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenInjectedInto(parent: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && typeConstraint(parent)(request.parentRequest);\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenParentNamed(name: string | number | symbol): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && namedConstraint(name)(request.parentRequest);\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenParentTagged(tag: string | number | symbol, value: unknown): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && taggedConstraint(tag)(value)(request.parentRequest);\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenAnyAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && traverseAncerstors(request, typeConstraint(ancestor));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenNoAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && !traverseAncerstors(request, typeConstraint(ancestor));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenAnyAncestorNamed(name: string | number | symbol): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && traverseAncerstors(request, namedConstraint(name));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenNoAncestorNamed(name: string | number | symbol): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && !traverseAncerstors(request, namedConstraint(name));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenAnyAncestorTagged(tag: string | number | symbol, value: unknown): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && traverseAncerstors(request, taggedConstraint(tag)(value));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenNoAncestorTagged(tag: string | number | symbol, value: unknown): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && !traverseAncerstors(request, taggedConstraint(tag)(value));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenAnyAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && traverseAncerstors(request, constraint as interfaces.ConstraintFunction);\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenNoAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && !traverseAncerstors(request, constraint as interfaces.ConstraintFunction);\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n}\n\nexport { BindingWhenSyntax };\n"]}
1
+ {"version":3,"sources":["../src/common/inversify-lite/syntax/binding_when_syntax.ts"],"names":[],"mappings":";;;AACA,2DAAsD;AACtD,6DAAuD;AAEvD,MAAM,iBAAiB;IAGrB,YAAY,OAA8B;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAOD,eAAe,CAAC,IAA8B;QAC5C,IAAI,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAA,oCAAe,EAAC,IAAI,CAAC,CAAC;QACjD,OAAO,IAAI,mCAAe,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;CAiGF;AAEQ,8CAAiB","file":"binding_when_syntax.js","sourcesContent":["import type { interfaces } from '../interfaces/interfaces';\nimport { BindingOnSyntax } from './binding_on_syntax';\nimport { namedConstraint } from './constraint_helpers';\n\nclass BindingWhenSyntax<T> implements interfaces.BindingWhenSyntax<T> {\n private _binding: interfaces.Binding<T>;\n\n constructor(binding: interfaces.Binding<T>) {\n this._binding = binding;\n }\n\n // public when(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = constraint as interfaces.ConstraintFunction;\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n whenTargetNamed(name: string | number | symbol): interfaces.BindingOnSyntax<T> {\n this._binding.constraint = namedConstraint(name);\n return new BindingOnSyntax<T>(this._binding);\n }\n\n // public whenTargetIsDefault(): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) => {\n // if (request === null) {\n // return false;\n // }\n\n // const targetIsDefault = request.target !== null && !request.target.isNamed() && !request.target.isTagged();\n\n // return targetIsDefault;\n // };\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenTargetTagged(tag: string | number | symbol, value: unknown): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = taggedConstraint(tag)(value);\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenInjectedInto(parent: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && typeConstraint(parent)(request.parentRequest);\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenParentNamed(name: string | number | symbol): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && namedConstraint(name)(request.parentRequest);\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenParentTagged(tag: string | number | symbol, value: unknown): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && taggedConstraint(tag)(value)(request.parentRequest);\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenAnyAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && traverseAncerstors(request, typeConstraint(ancestor));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenNoAncestorIs(ancestor: NewableFunction | string): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && !traverseAncerstors(request, typeConstraint(ancestor));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenAnyAncestorNamed(name: string | number | symbol): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && traverseAncerstors(request, namedConstraint(name));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenNoAncestorNamed(name: string | number | symbol): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && !traverseAncerstors(request, namedConstraint(name));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenAnyAncestorTagged(tag: string | number | symbol, value: unknown): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && traverseAncerstors(request, taggedConstraint(tag)(value));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenNoAncestorTagged(tag: string | number | symbol, value: unknown): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && !traverseAncerstors(request, taggedConstraint(tag)(value));\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenAnyAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && traverseAncerstors(request, constraint as interfaces.ConstraintFunction);\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n\n // public whenNoAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T> {\n // this._binding.constraint = (request: interfaces.Request | null) =>\n // request !== null && !traverseAncerstors(request, constraint as interfaces.ConstraintFunction);\n\n // return new BindingOnSyntax<T>(this._binding);\n // }\n}\n\nexport { BindingWhenSyntax };\n"]}
@@ -6,12 +6,13 @@ function drawPolygon(path, points, x, y) {
6
6
  }
7
7
 
8
8
  function drawRoundedPolygon(path, points, x, y, cornerRadius, closePath = !0) {
9
+ var _a;
9
10
  if (points.length < 3) return void drawPolygon(path, points, x, y);
10
11
  let startI = 0, endI = points.length - 1;
11
12
  closePath || (startI += 1, endI -= 1, path.moveTo(points[0].x + x, points[0].y + y));
12
13
  for (let i = startI; i <= endI; i++) {
13
14
  const p1 = points[0 === i ? endI : (i - 1) % points.length], angularPoint = points[i % points.length], p2 = points[(i + 1) % points.length], dx1 = angularPoint.x - p1.x, dy1 = angularPoint.y - p1.y, dx2 = angularPoint.x - p2.x, dy2 = angularPoint.y - p2.y, angle = (Math.atan2(dy1, dx1) - Math.atan2(dy2, dx2)) / 2, tan = Math.abs(Math.tan(angle));
14
- let radius = Array.isArray(cornerRadius) ? cornerRadius[i % points.length] ?? 0 : cornerRadius, segment = radius / tan;
15
+ let radius = Array.isArray(cornerRadius) ? null !== (_a = cornerRadius[i % points.length]) && void 0 !== _a ? _a : 0 : cornerRadius, segment = radius / tan;
15
16
  const length1 = getLength(dx1, dy1), length2 = getLength(dx2, dy2), length = Math.min(length1, length2);
16
17
  segment > length && (segment = length, radius = length * tan);
17
18
  const p1Cross = getProportionPoint(angularPoint, segment, length1, dx1, dy1), p2Cross = getProportionPoint(angularPoint, segment, length2, dx2, dy2), dx = 2 * angularPoint.x - p1Cross.x - p2Cross.x, dy = 2 * angularPoint.y - p1Cross.y - p2Cross.y, L = getLength(dx, dy), circlePoint = getProportionPoint(angularPoint, getLength(segment, radius), L, dx, dy);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/polygon.ts"],"names":[],"mappings":"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","file":"polygon.js","sourcesContent":["import type { IPointLike } from '@visactor/vutils';\nimport type { IPath2D } from '../interface';\n\n/**\n * 绘制闭合的常规多边形\n * TODO polygon 图元的xy属性没有意义\n * @param path\n * @param points\n * @param x\n * @param y\n */\nexport function drawPolygon(path: IPath2D, points: IPointLike[], x: number, y: number) {\n path.moveTo(points[0].x + x, points[0].y + y);\n for (let i = 1; i < points.length; i++) {\n path.lineTo(points[i].x + x, points[i].y + y);\n }\n}\n\n/**\n * algorithm detail see: https://stackoverflow.com/a/24780108\n */\nexport function drawRoundedPolygon(\n path: IPath2D,\n points: IPointLike[],\n x: number,\n y: number,\n cornerRadius: number | number[],\n closePath: boolean = true\n) {\n if (points.length < 3) {\n drawPolygon(path, points, x, y);\n return;\n }\n\n let startI = 0;\n let endI = points.length - 1;\n if (!closePath) {\n startI += 1;\n endI -= 1;\n path.moveTo(points[0].x + x, points[0].y + y);\n }\n for (let i = startI; i <= endI; i++) {\n const p1 = points[i === 0 ? endI : (i - 1) % points.length];\n const angularPoint = points[i % points.length];\n const p2 = points[(i + 1) % points.length];\n\n //Vector 1\n const dx1 = angularPoint.x - p1.x;\n const dy1 = angularPoint.y - p1.y;\n\n //Vector 2\n const dx2 = angularPoint.x - p2.x;\n const dy2 = angularPoint.y - p2.y;\n\n //Angle between vector 1 and vector 2 divided by 2\n const angle = (Math.atan2(dy1, dx1) - Math.atan2(dy2, dx2)) / 2;\n\n // The length of segment between angular point and the\n // points of intersection with the circle of a given radius\n const tan = Math.abs(Math.tan(angle));\n\n // get config radius\n let radius = Array.isArray(cornerRadius) ? cornerRadius[i % points.length] ?? 0 : cornerRadius;\n let segment = radius / tan;\n\n //Check the segment\n const length1 = getLength(dx1, dy1);\n const length2 = getLength(dx2, dy2);\n\n const length = Math.min(length1, length2);\n\n if (segment > length) {\n segment = length;\n radius = length * tan;\n }\n\n // Points of intersection are calculated by the proportion between\n // the coordinates of the vector, length of vector and the length of the segment.\n const p1Cross = getProportionPoint(angularPoint, segment, length1, dx1, dy1);\n const p2Cross = getProportionPoint(angularPoint, segment, length2, dx2, dy2);\n\n // Calculation of the coordinates of the circle\n // center by the addition of angular vectors.\n const dx = angularPoint.x * 2 - p1Cross.x - p2Cross.x;\n const dy = angularPoint.y * 2 - p1Cross.y - p2Cross.y;\n\n const L = getLength(dx, dy);\n const d = getLength(segment, radius);\n\n const circlePoint = getProportionPoint(angularPoint, d, L, dx, dy);\n\n //StartAngle and EndAngle of arc\n let startAngle = Math.atan2(p1Cross.y - circlePoint.y, p1Cross.x - circlePoint.x);\n const endAngle = Math.atan2(p2Cross.y - circlePoint.y, p2Cross.x - circlePoint.x);\n\n //Sweep angle\n let sweepAngle = endAngle - startAngle;\n\n //Some additional checks\n if (sweepAngle < 0) {\n startAngle = endAngle;\n sweepAngle = -sweepAngle;\n }\n\n if (sweepAngle > Math.PI) {\n sweepAngle = sweepAngle - Math.PI;\n }\n\n if (i === 0) {\n path.moveTo(p1Cross.x + x, p1Cross.y + y);\n } else {\n path.lineTo(p1Cross.x + x, p1Cross.y + y);\n }\n\n if (sweepAngle) {\n path.arcTo(angularPoint.x + x, angularPoint.y + y, p2Cross.x + x, p2Cross.y + y, radius);\n }\n\n path.lineTo(p2Cross.x + x, p2Cross.y + y);\n }\n\n if (!closePath) {\n path.lineTo(points[endI + 1].x + x, points[endI + 1].y + y);\n }\n}\n\nfunction getLength(dx: number, dy: number) {\n return Math.sqrt(dx * dx + dy * dy);\n}\n\nfunction getProportionPoint(point: IPointLike, segment: number, length: number, dx: number, dy: number) {\n const factor = segment / length;\n\n return {\n x: point.x - dx * factor,\n y: point.y - dy * factor\n };\n}\n"]}
1
+ {"version":3,"sources":["../src/common/polygon.ts"],"names":[],"mappings":";;;AAWA,SAAgB,WAAW,CAAC,IAAa,EAAE,MAAoB,EAAE,CAAS,EAAE,CAAS;IACnF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACtC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;KAC/C;AACH,CAAC;AALD,kCAKC;AAKD,SAAgB,kBAAkB,CAChC,IAAa,EACb,MAAoB,EACpB,CAAS,EACT,CAAS,EACT,YAA+B,EAC/B,YAAqB,IAAI;;IAEzB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;QACrB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAChC,OAAO;KACR;IAED,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,IAAI,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7B,IAAI,CAAC,SAAS,EAAE;QACd,MAAM,IAAI,CAAC,CAAC;QACZ,IAAI,IAAI,CAAC,CAAC;QACV,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;KAC/C;IACD,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE;QACnC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAC5D,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAG3C,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAGlC,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAGlC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAIhE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QAGtC,IAAI,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAA,YAAY,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,mCAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAC/F,IAAI,OAAO,GAAG,MAAM,GAAG,GAAG,CAAC;QAG3B,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACpC,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAEpC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAE1C,IAAI,OAAO,GAAG,MAAM,EAAE;YACpB,OAAO,GAAG,MAAM,CAAC;YACjB,MAAM,GAAG,MAAM,GAAG,GAAG,CAAC;SACvB;QAID,MAAM,OAAO,GAAG,kBAAkB,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7E,MAAM,OAAO,GAAG,kBAAkB,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAI7E,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;QACtD,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;QAEtD,MAAM,CAAC,GAAG,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC5B,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAErC,MAAM,WAAW,GAAG,kBAAkB,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAGnE,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAClF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAGlF,IAAI,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;QAGvC,IAAI,UAAU,GAAG,CAAC,EAAE;YAClB,UAAU,GAAG,QAAQ,CAAC;YACtB,UAAU,GAAG,CAAC,UAAU,CAAC;SAC1B;QAED,IAAI,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE;YACxB,UAAU,GAAG,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC;SACnC;QAED,IAAI,CAAC,KAAK,CAAC,EAAE;YACX,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3C;aAAM;YACL,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3C;QAED,IAAI,UAAU,EAAE;YACd,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;SAC1F;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;KAC3C;IAED,IAAI,CAAC,SAAS,EAAE;QACd,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;KAC7D;AACH,CAAC;AAvGD,gDAuGC;AAED,SAAS,SAAS,CAAC,EAAU,EAAE,EAAU;IACvC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAiB,EAAE,OAAe,EAAE,MAAc,EAAE,EAAU,EAAE,EAAU;IACpG,MAAM,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IAEhC,OAAO;QACL,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM;QACxB,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM;KACzB,CAAC;AACJ,CAAC","file":"polygon.js","sourcesContent":["import type { IPointLike } from '@visactor/vutils';\nimport type { IPath2D } from '../interface';\n\n/**\n * 绘制闭合的常规多边形\n * TODO polygon 图元的xy属性没有意义\n * @param path\n * @param points\n * @param x\n * @param y\n */\nexport function drawPolygon(path: IPath2D, points: IPointLike[], x: number, y: number) {\n path.moveTo(points[0].x + x, points[0].y + y);\n for (let i = 1; i < points.length; i++) {\n path.lineTo(points[i].x + x, points[i].y + y);\n }\n}\n\n/**\n * algorithm detail see: https://stackoverflow.com/a/24780108\n */\nexport function drawRoundedPolygon(\n path: IPath2D,\n points: IPointLike[],\n x: number,\n y: number,\n cornerRadius: number | number[],\n closePath: boolean = true\n) {\n if (points.length < 3) {\n drawPolygon(path, points, x, y);\n return;\n }\n\n let startI = 0;\n let endI = points.length - 1;\n if (!closePath) {\n startI += 1;\n endI -= 1;\n path.moveTo(points[0].x + x, points[0].y + y);\n }\n for (let i = startI; i <= endI; i++) {\n const p1 = points[i === 0 ? endI : (i - 1) % points.length];\n const angularPoint = points[i % points.length];\n const p2 = points[(i + 1) % points.length];\n\n //Vector 1\n const dx1 = angularPoint.x - p1.x;\n const dy1 = angularPoint.y - p1.y;\n\n //Vector 2\n const dx2 = angularPoint.x - p2.x;\n const dy2 = angularPoint.y - p2.y;\n\n //Angle between vector 1 and vector 2 divided by 2\n const angle = (Math.atan2(dy1, dx1) - Math.atan2(dy2, dx2)) / 2;\n\n // The length of segment between angular point and the\n // points of intersection with the circle of a given radius\n const tan = Math.abs(Math.tan(angle));\n\n // get config radius\n let radius = Array.isArray(cornerRadius) ? cornerRadius[i % points.length] ?? 0 : cornerRadius;\n let segment = radius / tan;\n\n //Check the segment\n const length1 = getLength(dx1, dy1);\n const length2 = getLength(dx2, dy2);\n\n const length = Math.min(length1, length2);\n\n if (segment > length) {\n segment = length;\n radius = length * tan;\n }\n\n // Points of intersection are calculated by the proportion between\n // the coordinates of the vector, length of vector and the length of the segment.\n const p1Cross = getProportionPoint(angularPoint, segment, length1, dx1, dy1);\n const p2Cross = getProportionPoint(angularPoint, segment, length2, dx2, dy2);\n\n // Calculation of the coordinates of the circle\n // center by the addition of angular vectors.\n const dx = angularPoint.x * 2 - p1Cross.x - p2Cross.x;\n const dy = angularPoint.y * 2 - p1Cross.y - p2Cross.y;\n\n const L = getLength(dx, dy);\n const d = getLength(segment, radius);\n\n const circlePoint = getProportionPoint(angularPoint, d, L, dx, dy);\n\n //StartAngle and EndAngle of arc\n let startAngle = Math.atan2(p1Cross.y - circlePoint.y, p1Cross.x - circlePoint.x);\n const endAngle = Math.atan2(p2Cross.y - circlePoint.y, p2Cross.x - circlePoint.x);\n\n //Sweep angle\n let sweepAngle = endAngle - startAngle;\n\n //Some additional checks\n if (sweepAngle < 0) {\n startAngle = endAngle;\n sweepAngle = -sweepAngle;\n }\n\n if (sweepAngle > Math.PI) {\n sweepAngle = sweepAngle - Math.PI;\n }\n\n if (i === 0) {\n path.moveTo(p1Cross.x + x, p1Cross.y + y);\n } else {\n path.lineTo(p1Cross.x + x, p1Cross.y + y);\n }\n\n if (sweepAngle) {\n path.arcTo(angularPoint.x + x, angularPoint.y + y, p2Cross.x + x, p2Cross.y + y, radius);\n }\n\n path.lineTo(p2Cross.x + x, p2Cross.y + y);\n }\n\n if (!closePath) {\n path.lineTo(points[endI + 1].x + x, points[endI + 1].y + y);\n }\n}\n\nfunction getLength(dx: number, dy: number) {\n return Math.sqrt(dx * dx + dy * dy);\n}\n\nfunction getProportionPoint(point: IPointLike, segment: number, length: number, dx: number, dy: number) {\n const factor = segment / length;\n\n return {\n x: point.x - dx * factor,\n y: point.y - dy * factor\n };\n}\n"]}
@@ -7,6 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  const vutils_1 = require("@visactor/vutils"), enums_1 = require("./enums"), cubic_bezier_1 = require("./segment/curve/cubic-bezier"), line_1 = require("./segment/curve/line"), render_utils_1 = require("./render-utils");
8
8
 
9
9
  function drawAreaSegments(path, segPath, percent, params) {
10
+ var _a;
10
11
  const {drawConnect: drawConnect = !1, mode: mode = "none"} = params || {};
11
12
  if (drawConnect && "none" === mode) return;
12
13
  const {top: top, bottom: bottom} = segPath;
@@ -48,9 +49,9 @@ function drawAreaSegments(path, segPath, percent, params) {
48
49
  }
49
50
  if (percent <= 0) return;
50
51
  let {direction: direction} = params || {};
51
- const {curves: topCurves} = top, endP = topCurves[topCurves.length - 1].p3 ?? topCurves[topCurves.length - 1].p1, xTotalLength = (0,
52
+ const {curves: topCurves} = top, endP = null !== (_a = topCurves[topCurves.length - 1].p3) && void 0 !== _a ? _a : topCurves[topCurves.length - 1].p1, xTotalLength = (0,
52
53
  vutils_1.abs)(endP.x - topCurves[0].p0.x), yTotalLength = (0, vutils_1.abs)(endP.y - topCurves[0].p0.y);
53
- direction = direction ?? (xTotalLength > yTotalLength ? enums_1.Direction.ROW : enums_1.Direction.COLUMN),
54
+ direction = null != direction ? direction : xTotalLength > yTotalLength ? enums_1.Direction.ROW : enums_1.Direction.COLUMN,
54
55
  Number.isFinite(xTotalLength) || (direction = enums_1.Direction.COLUMN), Number.isFinite(yTotalLength) || (direction = enums_1.Direction.ROW);
55
56
  const totalDrawLength = percent * (direction === enums_1.Direction.ROW ? xTotalLength : yTotalLength);
56
57
  let drawedLengthUntilLast = 0, lastDefined = !0;