@angular-wave/angular.ts 0.9.3 → 0.9.5

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 (703) hide show
  1. package/@types/angular.d.ts +4 -19
  2. package/@types/animations/animate.d.ts +2 -2
  3. package/@types/animations/animation.d.ts +1 -1
  4. package/@types/core/compile/attributes.d.ts +1 -1
  5. package/@types/core/compile/compile.d.ts +2 -2
  6. package/@types/core/controller/controller.d.ts +1 -1
  7. package/@types/core/controller/interface.d.ts +6 -0
  8. package/@types/core/di/ng-module.d.ts +27 -26
  9. package/@types/core/filter/filter.d.ts +5 -5
  10. package/@types/core/interpolate/interface.d.ts +13 -0
  11. package/@types/core/interpolate/interpolate.d.ts +1 -13
  12. package/@types/core/scope/scope.d.ts +4 -1
  13. package/@types/directive/http/http.d.ts +16 -16
  14. package/@types/directive/http/interface.d.ts +27 -0
  15. package/@types/directive/include/include.d.ts +4 -4
  16. package/@types/directive/inject/inject.d.ts +12 -0
  17. package/@types/directive/model/model.d.ts +1 -1
  18. package/@types/directive/script/script.d.ts +2 -2
  19. package/@types/directive/setter/setter.d.ts +4 -4
  20. package/@types/filters/filter.d.ts +2 -2
  21. package/@types/filters/filters.d.ts +2 -2
  22. package/@types/filters/interface.d.ts +8 -0
  23. package/@types/filters/limit-to.d.ts +2 -2
  24. package/@types/filters/order-by.d.ts +2 -2
  25. package/@types/interface.d.ts +105 -82
  26. package/@types/namespace.d.ts +76 -0
  27. package/@types/router/state/interface.d.ts +8 -8
  28. package/@types/router/state-filters.d.ts +4 -4
  29. package/@types/router/template-factory.d.ts +8 -8
  30. package/@types/router/transition/hook-builder.d.ts +5 -2
  31. package/@types/router/transition/hook-registry.d.ts +11 -2
  32. package/@types/router/transition/transition-service.d.ts +6 -2
  33. package/@types/router/transition/transition.d.ts +2 -2
  34. package/@types/router/view/view.d.ts +1 -8
  35. package/@types/router/view-scroll.d.ts +4 -2
  36. package/@types/services/{anchor-scroll.d.ts → anchor-scroll/anchor-scroll.d.ts} +2 -2
  37. package/@types/services/exception/exception-handler.d.ts +2 -2
  38. package/@types/services/exception/interface.d.ts +1 -1
  39. package/@types/services/http/http.d.ts +40 -2
  40. package/@types/services/http/interface.d.ts +11 -0
  41. package/@types/services/location/location.d.ts +1 -4
  42. package/@types/services/sce/sce.d.ts +3 -4
  43. package/@types/services/template-cache/template-cache.d.ts +4 -4
  44. package/@types/services/template-request/interface.d.ts +22 -0
  45. package/@types/services/{template-request.d.ts → template-request/template-request.d.ts} +4 -7
  46. package/@types/shared/common.d.ts +8 -69
  47. package/@types/shared/hof.d.ts +7 -7
  48. package/dist/angular-ts.esm.js +510 -570
  49. package/dist/angular-ts.umd.js +510 -570
  50. package/dist/angular-ts.umd.min.js +1 -1
  51. package/package.json +8 -1
  52. package/.github/workflows/ci.yml +0 -104
  53. package/.github/workflows/gh-pages.yml +0 -75
  54. package/.husky/pre-commit +0 -5
  55. package/.prettierignore +0 -9
  56. package/@types/services/cookie-reader.d.ts +0 -4
  57. package/@types/services/http-backend/http-backend.d.ts +0 -58
  58. package/@types/services/template-cache/interface.d.ts +0 -10
  59. package/CHANGELOG.md +0 -17667
  60. package/CODE_OF_CONDUCT.md +0 -3
  61. package/CONTRIBUTING.md +0 -247
  62. package/DEVELOPERS.md +0 -499
  63. package/Makefile +0 -60
  64. package/RELEASE.md +0 -86
  65. package/TRIAGING.md +0 -127
  66. package/docs/.cspell.yml +0 -8
  67. package/docs/.github/dependabot.yml +0 -14
  68. package/docs/.nvmrc +0 -1
  69. package/docs/CONTRIBUTING.md +0 -28
  70. package/docs/Dockerfile +0 -4
  71. package/docs/LICENSE +0 -201
  72. package/docs/README.md +0 -217
  73. package/docs/assets/icons/logo.svg +0 -1
  74. package/docs/assets/scss/_variables_project.scss +0 -12
  75. package/docs/assets/scss/_variables_project_after_bs.scss +0 -8
  76. package/docs/assets/scss/index.scss +0 -48
  77. package/docs/config.yaml +0 -15
  78. package/docs/content/_index.md +0 -28
  79. package/docs/content/docs/_index.md +0 -61
  80. package/docs/content/docs/directive/_index.md +0 -4
  81. package/docs/content/docs/directive/app.md +0 -11
  82. package/docs/content/docs/directive/aria.md +0 -0
  83. package/docs/content/docs/directive/bind.md +0 -72
  84. package/docs/content/docs/directive/blur.md +0 -38
  85. package/docs/content/docs/directive/channel.md +0 -37
  86. package/docs/content/docs/directive/class-even.md +0 -47
  87. package/docs/content/docs/directive/class-odd.md +0 -48
  88. package/docs/content/docs/directive/class.md +0 -64
  89. package/docs/content/docs/directive/click.md +0 -41
  90. package/docs/content/docs/directive/cloak.md +0 -74
  91. package/docs/content/docs/directive/copy.md +0 -38
  92. package/docs/content/docs/directive/cut.md +0 -40
  93. package/docs/content/docs/directive/dblclick.md +0 -41
  94. package/docs/content/docs/directive/focus.md +0 -38
  95. package/docs/content/docs/directive/get.md +0 -203
  96. package/docs/content/docs/directive/include.md +0 -7
  97. package/docs/content/docs/directive/keydown.md +0 -38
  98. package/docs/content/docs/directive/keyup.md +0 -38
  99. package/docs/content/docs/directive/load.md +0 -43
  100. package/docs/content/docs/directive/mousedown.md +0 -38
  101. package/docs/content/docs/directive/mouseenter.md +0 -38
  102. package/docs/content/docs/directive/mouseleave.md +0 -38
  103. package/docs/content/docs/directive/mousemove.md +0 -38
  104. package/docs/content/docs/directive/mouseout.md +0 -38
  105. package/docs/content/docs/directive/mouseover.md +0 -38
  106. package/docs/content/docs/directive/mouseup.md +0 -38
  107. package/docs/content/docs/directive/non-bindable.md +0 -28
  108. package/docs/content/docs/filter/_index.md +0 -4
  109. package/docs/content/docs/provider/_index.md +0 -4
  110. package/docs/content/docs/provider/eventBusProvider.md +0 -35
  111. package/docs/content/docs/provider/locationProvider.md +0 -26
  112. package/docs/content/docs/provider/logProvider.md +0 -59
  113. package/docs/content/docs/provider/templateCacheProvider.md +0 -100
  114. package/docs/content/docs/service/_index.md +0 -4
  115. package/docs/content/docs/service/eventBus.md +0 -56
  116. package/docs/content/docs/service/location.md +0 -57
  117. package/docs/content/docs/service/log.md +0 -113
  118. package/docs/content/docs/service/templateCache.md +0 -64
  119. package/docs/content/docs/service/url.md +0 -5
  120. package/docs/docker-compose.yaml +0 -12
  121. package/docs/docsy.work +0 -5
  122. package/docs/docsy.work.sum +0 -0
  123. package/docs/go.mod +0 -5
  124. package/docs/go.sum +0 -6
  125. package/docs/hugo-disabled.toml +0 -220
  126. package/docs/hugo.yaml +0 -200
  127. package/docs/layouts/404.html +0 -13
  128. package/docs/layouts/_markup/render-heading.html +0 -1
  129. package/docs/layouts/partials/hooks/head-end.html +0 -3
  130. package/docs/layouts/shortcodes/showcss.html +0 -2
  131. package/docs/layouts/shortcodes/showhtml.html +0 -2
  132. package/docs/layouts/shortcodes/showjs.html +0 -2
  133. package/docs/layouts/shortcodes/showraw.html +0 -1
  134. package/docs/layouts/shortcodes/version.html +0 -1
  135. package/docs/package-lock.json +0 -2293
  136. package/docs/package.json +0 -53
  137. package/docs/static/examples/counter/counter-test.html +0 -13
  138. package/docs/static/examples/counter/counter.html +0 -5
  139. package/docs/static/examples/counter/counter.test.js +0 -28
  140. package/docs/static/examples/eventbus/eventbus-test.html +0 -15
  141. package/docs/static/examples/eventbus/eventbus.html +0 -13
  142. package/docs/static/examples/eventbus/eventbus.js +0 -15
  143. package/docs/static/examples/eventbus/eventbus.test.js +0 -19
  144. package/docs/static/examples/ng-bind/ng-bind.html +0 -9
  145. package/docs/static/examples/ng-blur/ng-blur.html +0 -9
  146. package/docs/static/examples/ng-channel/ng-channel-test.html +0 -17
  147. package/docs/static/examples/ng-channel/ng-channel.html +0 -24
  148. package/docs/static/examples/ng-channel/ng-channel.test.js +0 -31
  149. package/docs/static/examples/ng-class/ng-class.html +0 -71
  150. package/docs/static/examples/ng-class-even/ng-class-even.html +0 -8
  151. package/docs/static/examples/ng-class-odd/ng-class-odd.html +0 -8
  152. package/docs/static/examples/ng-click/ng-click.html +0 -6
  153. package/docs/static/examples/ng-copy/ng-copy.html +0 -6
  154. package/docs/static/examples/ng-cut/ng-cut.html +0 -6
  155. package/docs/static/examples/ng-dblclick/ng-dblclick.html +0 -10
  156. package/docs/static/examples/ng-focus/ng-focus.html +0 -9
  157. package/docs/static/examples/ng-keydown/ng-keydown.html +0 -9
  158. package/docs/static/examples/ng-keyup/ng-keyup.html +0 -9
  159. package/docs/static/examples/ng-load/ng-load.html +0 -8
  160. package/docs/static/examples/ng-mousedown/ng-mousedown.html +0 -6
  161. package/docs/static/examples/ng-mouseenter/ng-mouseenter.html +0 -4
  162. package/docs/static/examples/ng-mouseleave/ng-mouseleave.html +0 -4
  163. package/docs/static/examples/ng-mousemove/ng-mousemove.html +0 -4
  164. package/docs/static/examples/ng-mouseout/ng-mouseout.html +0 -4
  165. package/docs/static/examples/ng-mouseover/ng-mouseover.html +0 -4
  166. package/docs/static/examples/ng-mouseup/ng-mouseup.html +0 -4
  167. package/docs/static/examples/ng-non-bindable/ng-non-bindable-test.html +0 -13
  168. package/docs/static/examples/ng-non-bindable/ng-non-bindable.html +0 -3
  169. package/docs/static/examples/ng-non-bindable/ng-non-bindable.test.js +0 -11
  170. package/docs/static/typedoc/.nojekyll +0 -1
  171. package/docs/static/typedoc/assets/hierarchy.js +0 -1
  172. package/docs/static/typedoc/assets/highlight.css +0 -78
  173. package/docs/static/typedoc/assets/icons.js +0 -18
  174. package/docs/static/typedoc/assets/icons.svg +0 -1
  175. package/docs/static/typedoc/assets/main.js +0 -60
  176. package/docs/static/typedoc/assets/navigation.js +0 -1
  177. package/docs/static/typedoc/assets/search.js +0 -1
  178. package/docs/static/typedoc/assets/style.css +0 -1633
  179. package/docs/static/typedoc/classes/Location.html +0 -55
  180. package/docs/static/typedoc/classes/LocationProvider.html +0 -20
  181. package/docs/static/typedoc/classes/LogProvider.html +0 -6
  182. package/docs/static/typedoc/classes/PubSub.html +0 -71
  183. package/docs/static/typedoc/classes/PubSubProvider.html +0 -3
  184. package/docs/static/typedoc/classes/TemplateCacheProvider.html +0 -5
  185. package/docs/static/typedoc/hierarchy.html +0 -1
  186. package/docs/static/typedoc/index.html +0 -1
  187. package/docs/static/typedoc/interfaces/ChangesObject.html +0 -6
  188. package/docs/static/typedoc/interfaces/ComponentOptions.html +0 -16
  189. package/docs/static/typedoc/interfaces/Controller.html +0 -12
  190. package/docs/static/typedoc/interfaces/DefaultPorts.html +0 -5
  191. package/docs/static/typedoc/interfaces/Directive.html +0 -37
  192. package/docs/static/typedoc/interfaces/DirectivePrePost.html +0 -4
  193. package/docs/static/typedoc/interfaces/Html5Mode.html +0 -23
  194. package/docs/static/typedoc/interfaces/HttpHeadersGetter.html +0 -1
  195. package/docs/static/typedoc/interfaces/HttpProviderDefaults.html +0 -31
  196. package/docs/static/typedoc/interfaces/HttpRequestConfigHeaders.html +0 -6
  197. package/docs/static/typedoc/interfaces/HttpRequestTransformer.html +0 -1
  198. package/docs/static/typedoc/interfaces/HttpResponse.html +0 -7
  199. package/docs/static/typedoc/interfaces/HttpResponseTransformer.html +0 -1
  200. package/docs/static/typedoc/interfaces/HttpService.html +0 -38
  201. package/docs/static/typedoc/interfaces/LogService.html +0 -12
  202. package/docs/static/typedoc/interfaces/NgModelController.html +0 -30
  203. package/docs/static/typedoc/interfaces/NgModelOptions.html +0 -16
  204. package/docs/static/typedoc/interfaces/Provider.html +0 -34
  205. package/docs/static/typedoc/interfaces/RequestConfig.html +0 -48
  206. package/docs/static/typedoc/interfaces/RequestShortcutConfig.html +0 -38
  207. package/docs/static/typedoc/interfaces/ServiceProvider.html +0 -5
  208. package/docs/static/typedoc/interfaces/TemplateCache.html +0 -7
  209. package/docs/static/typedoc/interfaces/TranscludeFunctionObject.html +0 -8
  210. package/docs/static/typedoc/interfaces/UrlParts.html +0 -9
  211. package/docs/static/typedoc/types/AnnotatedDirectiveFactory.html +0 -1
  212. package/docs/static/typedoc/types/AnnotatedFactory.html +0 -8
  213. package/docs/static/typedoc/types/CloneAttachFunction.html +0 -2
  214. package/docs/static/typedoc/types/ControllerConstructor.html +0 -2
  215. package/docs/static/typedoc/types/DirectiveCompileFn.html +0 -2
  216. package/docs/static/typedoc/types/DirectiveController.html +0 -2
  217. package/docs/static/typedoc/types/DirectiveFactory.html +0 -1
  218. package/docs/static/typedoc/types/DirectiveFactoryFn.html +0 -1
  219. package/docs/static/typedoc/types/DirectiveLinkFn.html +0 -2
  220. package/docs/static/typedoc/types/ExpandoStore.html +0 -2
  221. package/docs/static/typedoc/types/Expression.html +0 -6
  222. package/docs/static/typedoc/types/FilterFactory.html +0 -2
  223. package/docs/static/typedoc/types/FilterFn.html +0 -2
  224. package/docs/static/typedoc/types/HttpPromise.html +0 -1
  225. package/docs/static/typedoc/types/HttpResponseStatus.html +0 -1
  226. package/docs/static/typedoc/types/Injectable.html +0 -4
  227. package/docs/static/typedoc/types/InjectableClass.html +0 -1
  228. package/docs/static/typedoc/types/InjectableFactory.html +0 -1
  229. package/docs/static/typedoc/types/LogCall.html +0 -2
  230. package/docs/static/typedoc/types/LogServiceFactory.html +0 -2
  231. package/docs/static/typedoc/types/OnChangesObject.html +0 -2
  232. package/docs/static/typedoc/types/SwapModeType.html +0 -2
  233. package/docs/static/typedoc/types/TController.html +0 -2
  234. package/docs/static/typedoc/types/UrlChangeListener.html +0 -5
  235. package/docs/static/typedoc/variables/EventBus.html +0 -1
  236. package/docs/static/typedoc/variables/SwapMode.html +0 -11
  237. package/docs/static/version.js +0 -13
  238. package/docs/test-results/.last-run.json +0 -4
  239. package/docs/test-results/static-examples-counter-counter-counter-example/error-context.md +0 -50
  240. package/eslint.config.js +0 -26
  241. package/images/android-chrome-192x192.png +0 -0
  242. package/images/android-chrome-512x512.png +0 -0
  243. package/images/apple-touch-icon.png +0 -0
  244. package/images/favicon-16x16.png +0 -0
  245. package/images/favicon-32x32.png +0 -0
  246. package/images/favicon.ico +0 -0
  247. package/images/site.webmanifest +0 -19
  248. package/index.html +0 -86
  249. package/legacy.d.ts +0 -2599
  250. package/playwright.config.ts +0 -81
  251. package/public/jasmine/boot0.js +0 -66
  252. package/public/jasmine/boot1.js +0 -134
  253. package/public/jasmine/jasmine-html.js +0 -970
  254. package/public/jasmine/jasmine.css +0 -323
  255. package/public/jasmine/jasmine.js +0 -11406
  256. package/public/public/README.md +0 -1
  257. package/public/public/circle.html +0 -1
  258. package/public/public/jasmine-helper.css +0 -9
  259. package/public/public/my_child_directive.html +0 -1
  260. package/public/public/my_directive.html +0 -1
  261. package/public/public/my_other_directive.html +0 -1
  262. package/public/public/test.html +0 -1
  263. package/rollup.config.js +0 -51
  264. package/src/angular.js +0 -293
  265. package/src/angular.spec.js +0 -1191
  266. package/src/animations/animate-cache.js +0 -80
  267. package/src/animations/animate-children-directive.js +0 -32
  268. package/src/animations/animate-children-directive.md +0 -80
  269. package/src/animations/animate-css-driver.js +0 -284
  270. package/src/animations/animate-css.html +0 -58
  271. package/src/animations/animate-css.js +0 -915
  272. package/src/animations/animate-css.md +0 -263
  273. package/src/animations/animate-js-driver.js +0 -60
  274. package/src/animations/animate-js.html +0 -47
  275. package/src/animations/animate-js.js +0 -371
  276. package/src/animations/animate-queue.js +0 -859
  277. package/src/animations/animate-runner.js +0 -193
  278. package/src/animations/animate-swap.js +0 -33
  279. package/src/animations/animate-swap.md +0 -88
  280. package/src/animations/animate.html +0 -19
  281. package/src/animations/animate.js +0 -546
  282. package/src/animations/animate.md +0 -933
  283. package/src/animations/animate.spec.js +0 -490
  284. package/src/animations/animation.js +0 -519
  285. package/src/animations/animations.test.js +0 -10
  286. package/src/animations/interface.ts +0 -19
  287. package/src/animations/raf-scheduler.html +0 -19
  288. package/src/animations/raf-scheduler.js +0 -92
  289. package/src/animations/raf-scheduler.spec.js +0 -98
  290. package/src/animations/shared.js +0 -341
  291. package/src/binding.html +0 -19
  292. package/src/binding.spec.js +0 -474
  293. package/src/binding.test.js +0 -10
  294. package/src/core/compile/attributes.js +0 -337
  295. package/src/core/compile/compile.html +0 -19
  296. package/src/core/compile/compile.js +0 -3270
  297. package/src/core/compile/compile.md +0 -1128
  298. package/src/core/compile/compile.spec.js +0 -15574
  299. package/src/core/compile/compile.test.js +0 -12
  300. package/src/core/controller/controller.html +0 -22
  301. package/src/core/controller/controller.js +0 -189
  302. package/src/core/controller/controller.spec.js +0 -334
  303. package/src/core/controller/controller.test.js +0 -12
  304. package/src/core/core.html +0 -20
  305. package/src/core/core.test.js +0 -12
  306. package/src/core/di/injector.html +0 -19
  307. package/src/core/di/injector.js +0 -307
  308. package/src/core/di/injector.md +0 -740
  309. package/src/core/di/injector.spec.js +0 -2310
  310. package/src/core/di/injector.test.js +0 -12
  311. package/src/core/di/internal-injector.js +0 -284
  312. package/src/core/di/ng-module.html +0 -19
  313. package/src/core/di/ng-module.js +0 -226
  314. package/src/core/di/ng-module.spec.js +0 -263
  315. package/src/core/di/ng-module.test.js +0 -12
  316. package/src/core/filter/filter.html +0 -19
  317. package/src/core/filter/filter.js +0 -55
  318. package/src/core/filter/filter.md +0 -132
  319. package/src/core/filter/filter.spec.js +0 -149
  320. package/src/core/filter/filter.test.js +0 -12
  321. package/src/core/interpolate/interpolate.html +0 -22
  322. package/src/core/interpolate/interpolate.js +0 -408
  323. package/src/core/interpolate/interpolate.spec.js +0 -601
  324. package/src/core/interpolate/interpolate.test.js +0 -12
  325. package/src/core/parse/ast/ast-node.ts +0 -81
  326. package/src/core/parse/ast/ast.html +0 -19
  327. package/src/core/parse/ast/ast.js +0 -574
  328. package/src/core/parse/ast/ast.spec.js +0 -1453
  329. package/src/core/parse/ast/ast.test.js +0 -10
  330. package/src/core/parse/ast-type.js +0 -23
  331. package/src/core/parse/interface.ts +0 -84
  332. package/src/core/parse/interpreter.js +0 -915
  333. package/src/core/parse/lexer/lexer.html +0 -19
  334. package/src/core/parse/lexer/lexer.js +0 -338
  335. package/src/core/parse/lexer/lexer.spec.js +0 -303
  336. package/src/core/parse/lexer/lexer.test.js +0 -10
  337. package/src/core/parse/lexer/token.ts +0 -22
  338. package/src/core/parse/parse.html +0 -19
  339. package/src/core/parse/parse.js +0 -337
  340. package/src/core/parse/parse.md +0 -57
  341. package/src/core/parse/parse.spec.js +0 -2107
  342. package/src/core/parse/parse.test.js +0 -10
  343. package/src/core/parse/parser/parser.html +0 -19
  344. package/src/core/parse/parser/parser.js +0 -64
  345. package/src/core/parse/parser/parser.spec.js +0 -8
  346. package/src/core/parse/parser/parser.test.js +0 -10
  347. package/src/core/prop.spec.js +0 -775
  348. package/src/core/root-element.spec.js +0 -14
  349. package/src/core/sanitize/interface.ts +0 -10
  350. package/src/core/sanitize/sanitize-uri.js +0 -75
  351. package/src/core/sanitize/sanitize-uri.spec.js +0 -249
  352. package/src/core/sanitize/sanitize-uri.test.js +0 -12
  353. package/src/core/sanitize/sanitize.html +0 -22
  354. package/src/core/scope/scope.html +0 -19
  355. package/src/core/scope/scope.js +0 -1249
  356. package/src/core/scope/scope.spec.js +0 -3000
  357. package/src/core/scope/scope.test.js +0 -12
  358. package/src/directive/aria/aria.html +0 -19
  359. package/src/directive/aria/aria.js +0 -382
  360. package/src/directive/aria/aria.md +0 -145
  361. package/src/directive/aria/aria.spec.js +0 -1241
  362. package/src/directive/aria/aria.test.js +0 -12
  363. package/src/directive/attrs/attrs.html +0 -19
  364. package/src/directive/attrs/attrs.js +0 -106
  365. package/src/directive/attrs/attrs.md +0 -224
  366. package/src/directive/attrs/attrs.spec.js +0 -71
  367. package/src/directive/attrs/attrs.test.js +0 -12
  368. package/src/directive/attrs/boolean.html +0 -19
  369. package/src/directive/attrs/boolean.spec.js +0 -137
  370. package/src/directive/attrs/boolean.test.js +0 -12
  371. package/src/directive/attrs/element-style.html +0 -22
  372. package/src/directive/attrs/element-style.spec.js +0 -85
  373. package/src/directive/attrs/element-style.test.js +0 -12
  374. package/src/directive/attrs/src.html +0 -19
  375. package/src/directive/attrs/src.spec.js +0 -163
  376. package/src/directive/attrs/src.test.js +0 -12
  377. package/src/directive/bind/bind-html.spec.js +0 -36
  378. package/src/directive/bind/bind.html +0 -20
  379. package/src/directive/bind/bind.js +0 -78
  380. package/src/directive/bind/bind.md +0 -142
  381. package/src/directive/bind/bind.spec.js +0 -314
  382. package/src/directive/bind/bind.test.js +0 -12
  383. package/src/directive/channel/channel.html +0 -19
  384. package/src/directive/channel/channel.js +0 -30
  385. package/src/directive/channel/channel.spec.js +0 -67
  386. package/src/directive/channel/channel.test.js +0 -10
  387. package/src/directive/class/class-test.html +0 -23
  388. package/src/directive/class/class.html +0 -19
  389. package/src/directive/class/class.js +0 -184
  390. package/src/directive/class/class.spec.js +0 -704
  391. package/src/directive/class/class.test.js +0 -12
  392. package/src/directive/cloak/cloak.html +0 -19
  393. package/src/directive/cloak/cloak.js +0 -11
  394. package/src/directive/cloak/cloak.spec.js +0 -44
  395. package/src/directive/cloak/cloak.test.js +0 -12
  396. package/src/directive/controller/controller.html +0 -22
  397. package/src/directive/controller/controller.js +0 -11
  398. package/src/directive/controller/controller.md +0 -46
  399. package/src/directive/controller/controller.spec.js +0 -175
  400. package/src/directive/controller/controller.test.js +0 -12
  401. package/src/directive/events/click.spec.js +0 -35
  402. package/src/directive/events/event.spec.js +0 -267
  403. package/src/directive/events/events-test.html +0 -36
  404. package/src/directive/events/events.html +0 -20
  405. package/src/directive/events/events.js +0 -65
  406. package/src/directive/events/events.md +0 -125
  407. package/src/directive/events/events.test.js +0 -12
  408. package/src/directive/form/form.html +0 -19
  409. package/src/directive/form/form.js +0 -669
  410. package/src/directive/form/form.spec.js +0 -1515
  411. package/src/directive/form/form.test.js +0 -12
  412. package/src/directive/http/delete.spec.js +0 -26
  413. package/src/directive/http/form-router-test.html +0 -44
  414. package/src/directive/http/form-test.html +0 -18
  415. package/src/directive/http/get.spec.js +0 -488
  416. package/src/directive/http/http.html +0 -22
  417. package/src/directive/http/http.js +0 -342
  418. package/src/directive/http/http.test.js +0 -12
  419. package/src/directive/http/post-example.html +0 -30
  420. package/src/directive/http/post.spec.js +0 -521
  421. package/src/directive/http/put.spec.js +0 -26
  422. package/src/directive/if/if-animate-css.html +0 -57
  423. package/src/directive/if/if-animate-svg.html +0 -25
  424. package/src/directive/if/if.html +0 -19
  425. package/src/directive/if/if.js +0 -72
  426. package/src/directive/if/if.md +0 -76
  427. package/src/directive/if/if.spec.js +0 -293
  428. package/src/directive/if/if.test.js +0 -114
  429. package/src/directive/include/include.html +0 -19
  430. package/src/directive/include/include.js +0 -151
  431. package/src/directive/include/include.md +0 -87
  432. package/src/directive/include/include.spec.js +0 -734
  433. package/src/directive/include/include.test.js +0 -12
  434. package/src/directive/init/init.html +0 -19
  435. package/src/directive/init/init.js +0 -22
  436. package/src/directive/init/init.md +0 -41
  437. package/src/directive/init/init.spec.js +0 -68
  438. package/src/directive/init/init.test.js +0 -12
  439. package/src/directive/input/input-example.html +0 -15
  440. package/src/directive/input/input.html +0 -19
  441. package/src/directive/input/input.js +0 -1078
  442. package/src/directive/input/input.md +0 -706
  443. package/src/directive/input/input.spec.js +0 -3700
  444. package/src/directive/input/input.test.js +0 -12
  445. package/src/directive/messages/messages.html +0 -22
  446. package/src/directive/messages/messages.js +0 -349
  447. package/src/directive/messages/messages.md +0 -543
  448. package/src/directive/messages/messages.spec.js +0 -1083
  449. package/src/directive/messages/messages.test.js +0 -12
  450. package/src/directive/model/change.md +0 -25
  451. package/src/directive/model/model.html +0 -19
  452. package/src/directive/model/model.js +0 -1170
  453. package/src/directive/model/model.spec.js +0 -1976
  454. package/src/directive/model/model.test.js +0 -12
  455. package/src/directive/model-options/model-option.test.js +0 -12
  456. package/src/directive/model-options/model-options.html +0 -22
  457. package/src/directive/model-options/model-options.js +0 -142
  458. package/src/directive/model-options/model-options.md +0 -407
  459. package/src/directive/model-options/model-options.spec.js +0 -1022
  460. package/src/directive/non-bindable/non-bindable.html +0 -22
  461. package/src/directive/non-bindable/non-bindable.js +0 -9
  462. package/src/directive/non-bindable/non-bindable.spec.js +0 -59
  463. package/src/directive/non-bindable/non-bindable.test.js +0 -12
  464. package/src/directive/observe/observe-demo.html +0 -184
  465. package/src/directive/observe/observe.html +0 -19
  466. package/src/directive/observe/observe.js +0 -41
  467. package/src/directive/observe/observe.spec.js +0 -106
  468. package/src/directive/observe/observe.test.js +0 -10
  469. package/src/directive/on/on.html +0 -19
  470. package/src/directive/on/on.spec.js +0 -215
  471. package/src/directive/on/on.test.js +0 -12
  472. package/src/directive/options/options-example.html +0 -17
  473. package/src/directive/options/options.html +0 -22
  474. package/src/directive/options/options.js +0 -542
  475. package/src/directive/options/options.md +0 -179
  476. package/src/directive/options/options.spec.js +0 -3554
  477. package/src/directive/options/options.test.js +0 -12
  478. package/src/directive/ref/href.html +0 -19
  479. package/src/directive/ref/href.spec.js +0 -141
  480. package/src/directive/ref/href.test.js +0 -19
  481. package/src/directive/ref/ref.html +0 -19
  482. package/src/directive/ref/ref.js +0 -89
  483. package/src/directive/ref/ref.spec.js +0 -546
  484. package/src/directive/repeat/repeat.html +0 -19
  485. package/src/directive/repeat/repeat.js +0 -333
  486. package/src/directive/repeat/repeat.md +0 -330
  487. package/src/directive/repeat/repeat.spec.js +0 -1209
  488. package/src/directive/repeat/repeat.test.js +0 -12
  489. package/src/directive/script/script.html +0 -19
  490. package/src/directive/script/script.js +0 -17
  491. package/src/directive/script/script.md +0 -11
  492. package/src/directive/script/script.spec.js +0 -47
  493. package/src/directive/script/script.test.js +0 -12
  494. package/src/directive/select/select.html +0 -19
  495. package/src/directive/select/select.js +0 -594
  496. package/src/directive/select/select.md +0 -74
  497. package/src/directive/select/select.spec.js +0 -2566
  498. package/src/directive/select/select.test.js +0 -12
  499. package/src/directive/setter/setter.html +0 -19
  500. package/src/directive/setter/setter.js +0 -59
  501. package/src/directive/setter/setter.spec.js +0 -100
  502. package/src/directive/setter/setter.test.js +0 -12
  503. package/src/directive/show-hide/show-hide.html +0 -22
  504. package/src/directive/show-hide/show-hide.js +0 -65
  505. package/src/directive/show-hide/show-hide.md +0 -255
  506. package/src/directive/show-hide/show-hide.spec.js +0 -268
  507. package/src/directive/show-hide/show-hide.test.js +0 -12
  508. package/src/directive/style/style.html +0 -19
  509. package/src/directive/style/style.js +0 -27
  510. package/src/directive/style/style.md +0 -23
  511. package/src/directive/style/style.spec.js +0 -183
  512. package/src/directive/style/style.test.js +0 -12
  513. package/src/directive/switch/switch.html +0 -19
  514. package/src/directive/switch/switch.js +0 -133
  515. package/src/directive/switch/switch.md +0 -66
  516. package/src/directive/switch/switch.spec.js +0 -509
  517. package/src/directive/switch/switch.test.js +0 -12
  518. package/src/directive/transclude/transclude.js +0 -122
  519. package/src/directive/validators/validators.html +0 -22
  520. package/src/directive/validators/validators.js +0 -346
  521. package/src/directive/validators/validators.spec.js +0 -740
  522. package/src/directive/validators/validators.test.js +0 -12
  523. package/src/filters/filter.js +0 -213
  524. package/src/filters/filter.md +0 -69
  525. package/src/filters/filter.spec.js +0 -719
  526. package/src/filters/filters.html +0 -22
  527. package/src/filters/filters.js +0 -239
  528. package/src/filters/filters.spec.js +0 -36
  529. package/src/filters/filters.test.js +0 -12
  530. package/src/filters/json.md +0 -16
  531. package/src/filters/limit-to.js +0 -55
  532. package/src/filters/limit-to.md +0 -19
  533. package/src/filters/limit-to.spec.js +0 -252
  534. package/src/filters/order-by.js +0 -181
  535. package/src/filters/order-by.md +0 -83
  536. package/src/filters/order-by.spec.js +0 -883
  537. package/src/index.js +0 -6
  538. package/src/index.spec.js +0 -11
  539. package/src/injection-tokens.js +0 -78
  540. package/src/interface.ts +0 -421
  541. package/src/ng.js +0 -289
  542. package/src/ng.spec.js +0 -33
  543. package/src/router/common/trace.js +0 -240
  544. package/src/router/directives/component-example.html +0 -37
  545. package/src/router/directives/state-directives.html +0 -22
  546. package/src/router/directives/state-directives.js +0 -393
  547. package/src/router/directives/state-directives.md +0 -435
  548. package/src/router/directives/state-directives.spec.js +0 -1091
  549. package/src/router/directives/state-directives.test.js +0 -10
  550. package/src/router/directives/view-directive.js +0 -489
  551. package/src/router/directives/view-directive.spec.js +0 -1937
  552. package/src/router/directives/view-directive.test.js +0 -10
  553. package/src/router/directives/view-directives.html +0 -22
  554. package/src/router/glob/glob.html +0 -19
  555. package/src/router/glob/glob.js +0 -102
  556. package/src/router/glob/glob.spec.js +0 -108
  557. package/src/router/glob/glob.test.js +0 -12
  558. package/src/router/hooks/core-resolvables.js +0 -38
  559. package/src/router/hooks/ignored-transition.js +0 -25
  560. package/src/router/hooks/invalid-transition.js +0 -14
  561. package/src/router/hooks/lazy-load.js +0 -104
  562. package/src/router/hooks/on-enter-exit-retain.js +0 -55
  563. package/src/router/hooks/redirect-to.js +0 -38
  564. package/src/router/hooks/resolve.js +0 -57
  565. package/src/router/hooks/update-globals.js +0 -34
  566. package/src/router/hooks/url.js +0 -34
  567. package/src/router/hooks/views.js +0 -41
  568. package/src/router/params/interface.ts +0 -626
  569. package/src/router/params/param-factory.js +0 -23
  570. package/src/router/params/param-type.js +0 -133
  571. package/src/router/params/param-types.js +0 -153
  572. package/src/router/params/param.js +0 -243
  573. package/src/router/params/state-params.js +0 -36
  574. package/src/router/path/path-node.js +0 -78
  575. package/src/router/path/path-utils.js +0 -207
  576. package/src/router/resolve/interface.ts +0 -208
  577. package/src/router/resolve/resolvable.js +0 -123
  578. package/src/router/resolve/resolve-context.js +0 -190
  579. package/src/router/router-test-hashbang.html +0 -45
  580. package/src/router/router-test.html +0 -41
  581. package/src/router/router.html +0 -22
  582. package/src/router/router.js +0 -54
  583. package/src/router/router.test.js +0 -12
  584. package/src/router/services.spec.js +0 -52
  585. package/src/router/state/README.md +0 -21
  586. package/src/router/state/interface.ts +0 -1007
  587. package/src/router/state/state-builder.js +0 -376
  588. package/src/router/state/state-builder.spec.js +0 -86
  589. package/src/router/state/state-matcher.js +0 -64
  590. package/src/router/state/state-object.js +0 -118
  591. package/src/router/state/state-queue-manager.js +0 -95
  592. package/src/router/state/state-registry.js +0 -257
  593. package/src/router/state/state-service.js +0 -699
  594. package/src/router/state/state.html +0 -23
  595. package/src/router/state/state.spec.js +0 -1002
  596. package/src/router/state/state.test.js +0 -12
  597. package/src/router/state/target-state.js +0 -162
  598. package/src/router/state/views.js +0 -195
  599. package/src/router/state-filter.spec.js +0 -139
  600. package/src/router/state-filters.js +0 -46
  601. package/src/router/template-factory.html +0 -19
  602. package/src/router/template-factory.js +0 -249
  603. package/src/router/template-factory.spec.js +0 -155
  604. package/src/router/template-factory.test.js +0 -12
  605. package/src/router/transition/hook-builder.js +0 -133
  606. package/src/router/transition/hook-registry.js +0 -172
  607. package/src/router/transition/interface.js +0 -18
  608. package/src/router/transition/interface.ts +0 -922
  609. package/src/router/transition/reject-factory.js +0 -122
  610. package/src/router/transition/transition-event-type.js +0 -26
  611. package/src/router/transition/transition-hook.js +0 -199
  612. package/src/router/transition/transition-service.js +0 -302
  613. package/src/router/transition/transition.js +0 -652
  614. package/src/router/url/url-config.js +0 -155
  615. package/src/router/url/url-matcher.js +0 -532
  616. package/src/router/url/url-rule.js +0 -231
  617. package/src/router/url/url-rules.js +0 -350
  618. package/src/router/url/url-service.js +0 -446
  619. package/src/router/url/url-service.spec.js +0 -1288
  620. package/src/router/url/url.html +0 -19
  621. package/src/router/url/url.test.js +0 -12
  622. package/src/router/view/interface.ts +0 -51
  623. package/src/router/view/view.html +0 -19
  624. package/src/router/view/view.js +0 -274
  625. package/src/router/view/view.spec.js +0 -100
  626. package/src/router/view/view.test.js +0 -12
  627. package/src/router/view-hook.spec.js +0 -215
  628. package/src/router/view-scroll.js +0 -33
  629. package/src/router/view-scroll.spec.js +0 -72
  630. package/src/services/anchor-scroll.html +0 -76
  631. package/src/services/anchor-scroll.js +0 -147
  632. package/src/services/cookie-reader.js +0 -48
  633. package/src/services/exception/exception-handler.js +0 -75
  634. package/src/services/exception/interface.ts +0 -7
  635. package/src/services/http/http.html +0 -23
  636. package/src/services/http/http.js +0 -922
  637. package/src/services/http/http.md +0 -413
  638. package/src/services/http/http.spec.js +0 -3941
  639. package/src/services/http/http.test.js +0 -11
  640. package/src/services/http/interface.ts +0 -243
  641. package/src/services/http/template-request.spec.js +0 -220
  642. package/src/services/http-backend/http-backend.html +0 -22
  643. package/src/services/http-backend/http-backend.js +0 -158
  644. package/src/services/http-backend/http-backend.spec.js +0 -389
  645. package/src/services/http-backend/http-backend.test.js +0 -12
  646. package/src/services/location/interface.ts +0 -70
  647. package/src/services/location/location.html +0 -22
  648. package/src/services/location/location.js +0 -1006
  649. package/src/services/location/location.spec.js +0 -3792
  650. package/src/services/location/location.test.js +0 -12
  651. package/src/services/log/interface.ts +0 -39
  652. package/src/services/log/log.html +0 -19
  653. package/src/services/log/log.js +0 -74
  654. package/src/services/log/log.spec.js +0 -64
  655. package/src/services/log/log.test.js +0 -12
  656. package/src/services/pubsub/pubsub.html +0 -19
  657. package/src/services/pubsub/pubsub.js +0 -349
  658. package/src/services/pubsub/pubsub.spec.js +0 -400
  659. package/src/services/pubsub/pubsub.test.js +0 -12
  660. package/src/services/sce/sce.html +0 -19
  661. package/src/services/sce/sce.js +0 -847
  662. package/src/services/sce/sce.md +0 -300
  663. package/src/services/sce/sce.spec.js +0 -617
  664. package/src/services/sce/sce.test.js +0 -12
  665. package/src/services/template-cache/interface.ts +0 -10
  666. package/src/services/template-cache/template-cache.html +0 -22
  667. package/src/services/template-cache/template-cache.js +0 -15
  668. package/src/services/template-cache/template-cache.spec.js +0 -134
  669. package/src/services/template-cache/template-cache.test.js +0 -12
  670. package/src/services/template-request.js +0 -142
  671. package/src/shared/cache.js +0 -7
  672. package/src/shared/common.js +0 -438
  673. package/src/shared/common.spec.js +0 -294
  674. package/src/shared/constants.js +0 -21
  675. package/src/shared/dom.js +0 -716
  676. package/src/shared/hof.js +0 -151
  677. package/src/shared/hof.spec.js +0 -60
  678. package/src/shared/interface.ts +0 -21
  679. package/src/shared/min-err.spec.js +0 -178
  680. package/src/shared/noderef.js +0 -225
  681. package/src/shared/predicates.js +0 -34
  682. package/src/shared/queue.js +0 -105
  683. package/src/shared/queue.spec.js +0 -80
  684. package/src/shared/shared.html +0 -24
  685. package/src/shared/shared.test.js +0 -12
  686. package/src/shared/strings.js +0 -142
  687. package/src/shared/strings.spec.js +0 -40
  688. package/src/shared/test-utils.js +0 -47
  689. package/src/shared/url-utils/interface.ts +0 -54
  690. package/src/shared/url-utils/url-utils.html +0 -22
  691. package/src/shared/url-utils/url-utils.js +0 -122
  692. package/src/shared/url-utils/url-utils.spec.js +0 -148
  693. package/src/shared/url-utils/url-utils.test.js +0 -12
  694. package/src/shared/utils.js +0 -1255
  695. package/src/shared/utils.spec.js +0 -178
  696. package/src/src.html +0 -21
  697. package/src/src.test.js +0 -10
  698. package/tsconfig.json +0 -19
  699. package/tsconfig.types.json +0 -14
  700. package/typedoc.json +0 -8
  701. package/utils/express.js +0 -203
  702. package/utils/version.cjs +0 -23
  703. package/vite.config.js +0 -14
@@ -1,207 +0,0 @@
1
- import { find, pick, omit, unnestR, arrayTuples } from "../../shared/common.js";
2
- import { propEq } from "../../shared/hof.js";
3
- import { TargetState } from "../state/target-state.js";
4
- import { PathNode } from "./path-node.js";
5
- /**
6
- * This class contains functions which convert TargetStates, Nodes and paths from one type to another.
7
- */
8
- export class PathUtils {
9
- static buildPath(targetState) {
10
- const toParams = targetState.params();
11
- return targetState
12
- .$state()
13
- .path.map((state) => new PathNode(state).applyRawParams(toParams));
14
- }
15
- /** Given a fromPath: PathNode[] and a TargetState, builds a toPath: PathNode[] */
16
- static buildToPath(fromPath, targetState) {
17
- const toPath = PathUtils.buildPath(targetState);
18
- if (targetState.options().inherit) {
19
- return PathUtils.inheritParams(
20
- fromPath,
21
- toPath,
22
- Object.keys(targetState.params()),
23
- );
24
- }
25
- return toPath;
26
- }
27
- /**
28
- * Creates ViewConfig objects and adds to nodes.
29
- *
30
- * On each [[PathNode]], creates ViewConfig objects from the views: property of the node's state
31
- */
32
- static applyViewConfigs($view, path, states) {
33
- // Only apply the viewConfigs to the nodes for the given states
34
- path
35
- .filter((node) => states.includes(node.state))
36
- .forEach((node) => {
37
- const viewDecls = Object.values(node.state.views || {});
38
- const subPath = PathUtils.subPath(path, (n) => n === node);
39
- const viewConfigs = viewDecls.map((view) => {
40
- return $view.createViewConfig(subPath, view);
41
- });
42
- node.views = viewConfigs.reduce(unnestR, []);
43
- });
44
- }
45
- /**
46
- * Given a fromPath and a toPath, returns a new to path which inherits parameters from the fromPath
47
- *
48
- * For a parameter in a node to be inherited from the from path:
49
- * - The toPath's node must have a matching node in the fromPath (by state).
50
- * - The parameter name must not be found in the toKeys parameter array.
51
- *
52
- * Note: the keys provided in toKeys are intended to be those param keys explicitly specified by some
53
- * caller, for instance, $state.transitionTo(..., toParams). If a key was found in toParams,
54
- * it is not inherited from the fromPath.
55
- */
56
- static inheritParams(fromPath, toPath, toKeys = []) {
57
- function nodeParamVals(path, state) {
58
- /** @type {PathNode} */
59
- const node = find(path, propEq("state", state));
60
- return Object.assign({}, node && node.paramValues);
61
- }
62
- const noInherit = fromPath
63
- .map((node) => node.paramSchema)
64
- .reduce(unnestR, [])
65
- .filter((param) => !param.inherit)
66
- .map((x) => x.id);
67
- /**
68
- * Given an [[PathNode]] "toNode", return a new [[PathNode]] with param values inherited from the
69
- * matching node in fromPath. Only inherit keys that aren't found in "toKeys" from the node in "fromPath""
70
- */
71
- function makeInheritedParamsNode(toNode) {
72
- // All param values for the node (may include default key/vals, when key was not found in toParams)
73
- let toParamVals = Object.assign({}, toNode && toNode.paramValues);
74
- // limited to only those keys found in toParams
75
- const incomingParamVals = pick(toParamVals, toKeys);
76
- toParamVals = omit(toParamVals, toKeys);
77
- const fromParamVals = omit(
78
- nodeParamVals(fromPath, toNode.state) || {},
79
- noInherit,
80
- );
81
- // extend toParamVals with any fromParamVals, then override any of those those with incomingParamVals
82
- const ownParamVals = Object.assign(
83
- toParamVals,
84
- fromParamVals,
85
- incomingParamVals,
86
- );
87
- return new PathNode(toNode.state).applyRawParams(ownParamVals);
88
- }
89
- // The param keys specified by the incoming toParams
90
- return toPath.map(makeInheritedParamsNode);
91
- }
92
-
93
- /**
94
- * Computes the tree changes (entering, exiting) between a fromPath and toPath.
95
- * @param {PathNode[]} fromPath
96
- * @param {PathNode[]} toPath
97
- * @param {boolean} [reloadState]
98
- * @returns {import("../transition/interface.js").TreeChanges}
99
- */
100
- static treeChanges(fromPath, toPath, reloadState) {
101
- const max = Math.min(fromPath.length, toPath.length);
102
- let keep = 0;
103
- const nodesMatch = (node1, node2) =>
104
- node1.equals(node2, PathUtils.nonDynamicParams);
105
- while (
106
- keep < max &&
107
- fromPath[keep].state !== reloadState &&
108
- nodesMatch(fromPath[keep], toPath[keep])
109
- ) {
110
- keep++;
111
- }
112
- /** Given a retained node, return a new node which uses the to node's param values */
113
- function applyToParams(retainedNode, idx) {
114
- const cloned = retainedNode.clone();
115
- cloned.paramValues = toPath[idx].paramValues;
116
- return cloned;
117
- }
118
- let from, retained, exiting, entering, to;
119
- from = fromPath;
120
- retained = from.slice(0, keep);
121
- exiting = from.slice(keep);
122
- // Create a new retained path (with shallow copies of nodes) which have the params of the toPath mapped
123
- const retainedWithToParams = retained.map(applyToParams);
124
- entering = toPath.slice(keep);
125
- to = retainedWithToParams.concat(entering);
126
- return { from, to, retained, retainedWithToParams, exiting, entering };
127
- }
128
- /**
129
- * Returns a new path which is: the subpath of the first path which matches the second path.
130
- *
131
- * The new path starts from root and contains any nodes that match the nodes in the second path.
132
- * It stops before the first non-matching node.
133
- *
134
- * Nodes are compared using their state property and their parameter values.
135
- * If a `paramsFn` is provided, only the [[Param]] returned by the function will be considered when comparing nodes.
136
- *
137
- * @param pathA the first path
138
- * @param pathB the second path
139
- * @param paramsFn a function which returns the parameters to consider when comparing
140
- *
141
- * @returns an array of PathNodes from the first path which match the nodes in the second path
142
- */
143
- static matching(pathA, pathB, paramsFn) {
144
- let done = false;
145
- const tuples = arrayTuples(pathA, pathB);
146
- return tuples.reduce((matching, [nodeA, nodeB]) => {
147
- done = done || !nodeA.equals(nodeB, paramsFn);
148
- return done ? matching : matching.concat(nodeA);
149
- }, []);
150
- }
151
- /**
152
- * Returns true if two paths are identical.
153
- *
154
- * @param pathA
155
- * @param pathB
156
- * @param paramsFn a function which returns the parameters to consider when comparing
157
- * @returns true if the the states and parameter values for both paths are identical
158
- */
159
- static equals(pathA, pathB, paramsFn) {
160
- return (
161
- pathA.length === pathB.length &&
162
- PathUtils.matching(pathA, pathB, paramsFn).length === pathA.length
163
- );
164
- }
165
- /**
166
- * Return a subpath of a path, which stops at the first matching node
167
- *
168
- * Given an array of nodes, returns a subset of the array starting from the first node,
169
- * stopping when the first node matches the predicate.
170
- *
171
- * @param path a path of [[PathNode]]s
172
- * @param predicate a [[Predicate]] fn that matches [[PathNode]]s
173
- * @returns a subpath up to the matching node, or undefined if no match is found
174
- */
175
- static subPath(path, predicate) {
176
- const node = find(path, predicate);
177
- const elementIdx = path.indexOf(node);
178
- return elementIdx === -1 ? undefined : path.slice(0, elementIdx + 1);
179
- }
180
-
181
- static nonDynamicParams(node) {
182
- return node.state
183
- .parameters({ inherit: false })
184
- .filter((param) => !param.dynamic);
185
- }
186
-
187
- /** Gets the raw parameter values from a path */
188
- static paramValues(path) {
189
- return path.reduce((acc, node) => Object.assign(acc, node.paramValues), {});
190
- }
191
- }
192
-
193
- /** Given a PathNode[], create an TargetState
194
- * @param {import("../state/state-registry.js").StateRegistryProvider} registry
195
- * @param {Array<PathNode>} path
196
- * @returns
197
- */
198
- export function makeTargetState(registry, path) {
199
- return new TargetState(
200
- registry,
201
- path.at(-1).state,
202
- path
203
- .map((x) => x.paramValues)
204
- .reduce((acc, obj) => ({ ...acc, ...obj }), {}),
205
- {},
206
- );
207
- }
@@ -1,208 +0,0 @@
1
- /**
2
- * # The Resolve subsystem
3
- *
4
- * This subsystem is an asynchronous, hierarchical Dependency Injection system.
5
- *
6
- * Typically, resolve is configured on a state using a [[StateDeclaration.resolve]] declaration.
7
- *
8
- * @packageDocumentation
9
- */
10
- /**
11
- * An interface which is similar to an Angular 2 `Provider`
12
- */
13
- export interface ProviderLike {
14
- provide: any;
15
- useClass?: any;
16
- useFactory?: Function;
17
- useValue?: any;
18
- useExisting?: any;
19
- deps?: any[];
20
- }
21
-
22
- /**
23
- * A plain object used to describe a [[Resolvable]]
24
- *
25
- * These objects may be used in the [[StateDeclaration.resolve]] array to declare
26
- * async data that the state or substates require.
27
- *
28
- * #### Example:
29
- * ```js
30
- *
31
- * var state = {
32
- * name: 'main',
33
- * resolve: [
34
- * { token: 'myData', deps: [MyDataApi], resolveFn: (myDataApi) => myDataApi.getData() },
35
- * ],
36
- * }
37
- * ```
38
- */
39
- export interface ResolvableLiteral {
40
- /**
41
- * A Dependency Injection token
42
- *
43
- * This Resolvable's DI token.
44
- * The Resolvable will be injectable elsewhere using the token.
45
- */
46
- token: any;
47
-
48
- /**
49
- * A function which fetches the Resolvable's data
50
- *
51
- * A function which returns one of:
52
- *
53
- * - The resolved value (synchronously)
54
- * - A promise for the resolved value
55
- * - An Observable of the resolved value(s)
56
- *
57
- * This function will be provided the dependencies listed in [[deps]] as its arguments.
58
- * The resolve system will asynchronously fetch the dependencies before invoking this function.
59
- */
60
- resolveFn: Function;
61
-
62
- /**
63
- * Defines the Resolve Policy
64
- *
65
- * A policy that defines when to invoke the resolve,
66
- * and whether to wait for async and unwrap the data
67
- */
68
- policy?: ResolvePolicy;
69
-
70
- /**
71
- * The Dependency Injection tokens
72
- *
73
- * This is an array of Dependency Injection tokens for the dependencies of the [[resolveFn]].
74
- *
75
- * The DI tokens are references to other `Resolvables`, or to other
76
- * services from the native DI system.
77
- */
78
- deps?: any[];
79
-
80
- /** Pre-resolved data. */
81
- data?: any;
82
- }
83
-
84
- /**
85
- * Defines how a resolve is processed during a transition
86
- *
87
- * This object is the [[StateDeclaration.resolvePolicy]] property.
88
- *
89
- * #### Example:
90
- * ```js
91
- * // Fetched when the resolve's state is being entered.
92
- * // Wait for the promise to resolve.
93
- * var policy1 = { when: "LAZY", async: "WAIT" }
94
- *
95
- * // Fetched when the Transition is starting.
96
- * // Do not wait for the returned promise to resolve.
97
- * // Inject the raw promise/value
98
- * var policy2 = { when: "EAGER", async: "NOWAIT" }
99
- * ```
100
- *
101
- * The policy for a given Resolvable is merged from three sources (highest priority first):
102
- *
103
- * - 1) Individual resolve definition
104
- * - 2) State definition
105
- * - 3) Global default
106
- *
107
- * #### Example:
108
- * ```js
109
- * // Wait for an Observable to emit one item.
110
- * // Since `wait` is not specified, it uses the `wait`
111
- * // policy defined on the state, or the global default
112
- * // if no `wait` policy is defined on the state
113
- * import { RXWAIT } from '@uirouter/rx';
114
- *
115
- * var myResolvablePolicy = { async: RXWAIT }
116
- * ```
117
- */
118
- export interface ResolvePolicy {
119
- /**
120
- * Defines when a Resolvable is resolved (fetched) during a transition
121
- *
122
- * - `LAZY` (default)
123
- * - Resolved as the resolve's state is being entered
124
- * - `EAGER`
125
- * - Resolved as the transition is starting
126
- *
127
- * #### Example:
128
- * Resolves for `main` and `main.home` are fetched when each state is entered.
129
- * All of `main` resolves are processed before fetching `main.home` resolves.
130
- * ```js
131
- * var state = {
132
- * name: 'main',
133
- * resolve: mainResolves, // defined elsewhere
134
- * resolvePolicy: { when: 'LAZY' }, // default
135
- * }
136
- *
137
- * var state = {
138
- * name: 'main.home',
139
- * resolve: homeResolves, // defined elsewhere
140
- * resolvePolicy: { when: 'LAZY' }, // default
141
- * }
142
- * ```
143
- *
144
- * #### Example:
145
- * Resolves for `main` and `main.home` are fetched at the same time when the transition starts.
146
- * This happens earlier in the lifecycle than when states are entered.
147
- * All of the `main` and `main.home` resolves are fetched as soon as possible.
148
- * ```js
149
- * var mainState = {
150
- * name: 'main',
151
- * resolve: mainResolves, // defined elsewhere
152
- * resolvePolicy: { when: 'EAGER' },
153
- * }
154
- *
155
- * var homeState = {
156
- * name: 'main.home',
157
- * resolve: homeResolves, // defined elsewhere
158
- * resolvePolicy: { when: 'EAGER' },
159
- * }
160
- * ```
161
- */
162
- when?: PolicyWhen;
163
-
164
- /**
165
- * Determines the unwrapping behavior of asynchronous resolve values.
166
- *
167
- * - `WAIT` (default)
168
- * - If a promise is returned from the resolveFn, wait for the promise before proceeding
169
- * - The unwrapped value from the promise
170
- * - `NOWAIT`
171
- * - If a promise is returned from the resolve, do not wait for the promise.
172
- * - Any other value returned is wrapped in a promise.
173
- * - The promise will not be unwrapped.
174
- * - The promise itself will be provided when the resolve is injected or bound elsewhere.
175
- * - {@link CustomAsyncPolicy}
176
- * - You can define a custom function that will be called with the resolveFn value.
177
- * - This function must return a promise.
178
- * - The transition will wait for this promise before proceeding
179
- *
180
- * NOTE: The previous `RXWAIT` policy has become a CustomAsyncPolicy function exported in `@uirouter/rx` package.
181
- *
182
- * #### Example:
183
- * The `Transition` will not wait for the resolve promise(s) from `main` to settle before continuing.
184
- * Resolves for `main` will be provided to components wrapped in a `Promise`.
185
- *
186
- * The `Transition` will wait for the `main.home` resolve promises.
187
- * Resolved values will be unwrapped before being provided to components.
188
- * ```js
189
- * var mainState = {
190
- * name: 'main',
191
- * resolve: mainResolves, // defined elsewhere
192
- * resolvePolicy: { async: 'NOWAIT' },
193
- * }
194
- * var homeState = {
195
- * name: 'main.home',
196
- * resolve: homeResolves, // defined elsewhere
197
- * resolvePolicy: { async: 'WAIT' }, // default
198
- * }
199
- * ```
200
- */
201
- async?: PolicyAsync;
202
- }
203
-
204
- export type PolicyWhen = "LAZY" | "EAGER";
205
- export type PolicyAsync = "WAIT" | "NOWAIT" | CustomAsyncPolicy;
206
- export interface CustomAsyncPolicy {
207
- (data: any): Promise<any>;
208
- }
@@ -1,123 +0,0 @@
1
- import {
2
- assert,
3
- isFunction,
4
- isObject,
5
- isNullOrUndefined,
6
- hasOwn,
7
- } from "../../shared/utils.js";
8
- import { trace } from "../common/trace.js";
9
- import { stringify } from "../../shared/strings.js";
10
-
11
- // TODO: explicitly make this user configurable
12
- export let defaultResolvePolicy = {
13
- when: "LAZY",
14
- async: "WAIT",
15
- };
16
- /**
17
- * The basic building block for the resolve system.
18
- *
19
- * Resolvables encapsulate a state's resolve's resolveFn, the resolveFn's declared dependencies, the wrapped (.promise),
20
- * and the unwrapped-when-complete (.data) result of the resolveFn.
21
- *
22
- * Resolvable.get() either retrieves the Resolvable's existing promise, or else invokes resolve() (which invokes the
23
- * resolveFn) and returns the resulting promise.
24
- *
25
- * Resolvable.get() and Resolvable.resolve() both execute within a context path, which is passed as the first
26
- * parameter to those fns.
27
- */
28
- export class Resolvable {
29
- constructor(arg1, resolveFn, deps, policy, data) {
30
- this.resolved = false;
31
- this.promise = undefined;
32
- if (arg1 instanceof Resolvable) {
33
- Object.assign(this, arg1);
34
- } else if (isFunction(resolveFn)) {
35
- assert(!isNullOrUndefined(arg1), "token argument is required");
36
- this.token = arg1;
37
- this.policy = policy;
38
- this.resolveFn = resolveFn;
39
- this.deps = deps || [];
40
- this.data = data;
41
- this.resolved = data !== undefined;
42
- this.promise = this.resolved ? Promise.resolve(this.data) : undefined;
43
- } else if (
44
- isObject(arg1) &&
45
- arg1.token &&
46
- (hasOwn(arg1, "resolveFn") || hasOwn(arg1, "data"))
47
- ) {
48
- this.token = arg1.token;
49
- this.resolveFn = arg1.resolveFn;
50
- this.deps = arg1.deps;
51
- this.policy = arg1.policy;
52
- this.data = arg1.data;
53
- }
54
- }
55
-
56
- getPolicy(state) {
57
- const thisPolicy = this.policy || {};
58
- const statePolicy = (state && state.resolvePolicy) || {};
59
- return {
60
- when: thisPolicy.when || statePolicy.when || defaultResolvePolicy.when,
61
- async:
62
- thisPolicy.async || statePolicy.async || defaultResolvePolicy.async,
63
- };
64
- }
65
-
66
- /**
67
- * Asynchronously resolve this Resolvable's data
68
- *
69
- * Given a ResolveContext that this Resolvable is found in:
70
- * Wait for this Resolvable's dependencies, then invoke this Resolvable's function
71
- * and update the Resolvable's state
72
- */
73
- resolve(resolveContext, trans) {
74
- // Gets all dependencies from ResolveContext and wait for them to be resolved
75
- const getResolvableDependencies = () =>
76
- Promise.all(
77
- resolveContext
78
- .getDependencies(this)
79
- .map((resolvable) => resolvable.get(resolveContext, trans)),
80
- );
81
- // Invokes the resolve function passing the resolved dependencies as arguments
82
- const invokeResolveFn = (resolvedDeps) =>
83
- this.resolveFn.apply(null, resolvedDeps);
84
- const node = resolveContext.findNode(this);
85
- const state = node && node.state;
86
- const asyncPolicy = this.getPolicy(state).async;
87
- const customAsyncPolicy = isFunction(asyncPolicy) ? asyncPolicy : (x) => x;
88
- // After the final value has been resolved, update the state of the Resolvable
89
- const applyResolvedValue = (resolvedValue) => {
90
- this.data = resolvedValue;
91
- this.resolved = true;
92
- this.resolveFn = null;
93
- trace.traceResolvableResolved(this, trans);
94
- return this.data;
95
- };
96
- // Sets the promise property first, then getsResolvableDependencies in the context of the promise chain. Always waits one tick.
97
- this.promise = Promise.resolve()
98
- .then(getResolvableDependencies)
99
- .then(invokeResolveFn)
100
- .then(customAsyncPolicy)
101
- .then(applyResolvedValue);
102
- return this.promise;
103
- }
104
- /**
105
- * Gets a promise for this Resolvable's data.
106
- *
107
- * Fetches the data and returns a promise.
108
- * Returns the existing promise if it has already been fetched once.
109
- */
110
- get(resolveContext, trans) {
111
- return this.promise || this.resolve(resolveContext, trans);
112
- }
113
-
114
- toString() {
115
- return `Resolvable(token: ${stringify(this.token)}, requires: [${this.deps.map(stringify)}])`;
116
- }
117
-
118
- clone() {
119
- return new Resolvable(this);
120
- }
121
- }
122
- Resolvable.fromData = (token, data) =>
123
- new Resolvable(token, () => data, null, null, data);