@angular-wave/angular.ts 0.9.4 → 0.9.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 (645) hide show
  1. package/@types/index.d.ts +1 -84
  2. package/{src/index.ts → @types/namespace.d.ts} +4 -24
  3. package/@types/router/template-factory.d.ts +2 -2
  4. package/dist/angular-ts.esm.js +3 -3
  5. package/dist/angular-ts.umd.js +3 -3
  6. package/dist/angular-ts.umd.min.js +1 -1
  7. package/package.json +9 -2
  8. package/.github/workflows/ci.yml +0 -104
  9. package/.github/workflows/gh-pages.yml +0 -75
  10. package/.husky/pre-commit +0 -5
  11. package/.prettierignore +0 -9
  12. package/CHANGELOG.md +0 -17667
  13. package/CODE_OF_CONDUCT.md +0 -3
  14. package/CONTRIBUTING.md +0 -247
  15. package/DEVELOPERS.md +0 -499
  16. package/Makefile +0 -60
  17. package/RELEASE.md +0 -86
  18. package/TRIAGING.md +0 -127
  19. package/docs/.cspell.yml +0 -8
  20. package/docs/.github/dependabot.yml +0 -14
  21. package/docs/.nvmrc +0 -1
  22. package/docs/CONTRIBUTING.md +0 -28
  23. package/docs/Dockerfile +0 -4
  24. package/docs/LICENSE +0 -201
  25. package/docs/README.md +0 -217
  26. package/docs/assets/icons/logo.svg +0 -1
  27. package/docs/assets/scss/_variables_project.scss +0 -12
  28. package/docs/assets/scss/_variables_project_after_bs.scss +0 -8
  29. package/docs/assets/scss/index.scss +0 -48
  30. package/docs/config.yaml +0 -15
  31. package/docs/content/_index.md +0 -28
  32. package/docs/content/docs/_index.md +0 -61
  33. package/docs/content/docs/directive/_index.md +0 -4
  34. package/docs/content/docs/directive/app.md +0 -11
  35. package/docs/content/docs/directive/aria.md +0 -0
  36. package/docs/content/docs/directive/bind.md +0 -72
  37. package/docs/content/docs/directive/blur.md +0 -38
  38. package/docs/content/docs/directive/channel.md +0 -37
  39. package/docs/content/docs/directive/class-even.md +0 -47
  40. package/docs/content/docs/directive/class-odd.md +0 -48
  41. package/docs/content/docs/directive/class.md +0 -64
  42. package/docs/content/docs/directive/click.md +0 -41
  43. package/docs/content/docs/directive/cloak.md +0 -74
  44. package/docs/content/docs/directive/copy.md +0 -38
  45. package/docs/content/docs/directive/cut.md +0 -40
  46. package/docs/content/docs/directive/dblclick.md +0 -41
  47. package/docs/content/docs/directive/focus.md +0 -38
  48. package/docs/content/docs/directive/get.md +0 -203
  49. package/docs/content/docs/directive/include.md +0 -7
  50. package/docs/content/docs/directive/keydown.md +0 -38
  51. package/docs/content/docs/directive/keyup.md +0 -38
  52. package/docs/content/docs/directive/load.md +0 -43
  53. package/docs/content/docs/directive/mousedown.md +0 -38
  54. package/docs/content/docs/directive/mouseenter.md +0 -38
  55. package/docs/content/docs/directive/mouseleave.md +0 -38
  56. package/docs/content/docs/directive/mousemove.md +0 -38
  57. package/docs/content/docs/directive/mouseout.md +0 -38
  58. package/docs/content/docs/directive/mouseover.md +0 -38
  59. package/docs/content/docs/directive/mouseup.md +0 -38
  60. package/docs/content/docs/directive/non-bindable.md +0 -28
  61. package/docs/content/docs/filter/_index.md +0 -4
  62. package/docs/content/docs/filter/filter.md +0 -78
  63. package/docs/content/docs/filter/json.md +0 -19
  64. package/docs/content/docs/filter/limit-to.md +0 -30
  65. package/docs/content/docs/filter/order-by.md +0 -123
  66. package/docs/content/docs/provider/_index.md +0 -4
  67. package/docs/content/docs/provider/eventBusProvider.md +0 -35
  68. package/docs/content/docs/provider/locationProvider.md +0 -26
  69. package/docs/content/docs/provider/logProvider.md +0 -59
  70. package/docs/content/docs/provider/sceProvider.md +0 -194
  71. package/docs/content/docs/provider/templateCacheProvider.md +0 -100
  72. package/docs/content/docs/provider/templateRequestProvider.md +0 -5
  73. package/docs/content/docs/service/_index.md +0 -4
  74. package/docs/content/docs/service/compile.md +0 -5
  75. package/docs/content/docs/service/controller.md +0 -5
  76. package/docs/content/docs/service/eventBus.md +0 -56
  77. package/docs/content/docs/service/http.md +0 -161
  78. package/docs/content/docs/service/interpolation.md +0 -5
  79. package/docs/content/docs/service/location.md +0 -57
  80. package/docs/content/docs/service/log.md +0 -113
  81. package/docs/content/docs/service/parse.md +0 -5
  82. package/docs/content/docs/service/rootElement.md +0 -5
  83. package/docs/content/docs/service/rootScope.md +0 -5
  84. package/docs/content/docs/service/sce.md +0 -194
  85. package/docs/content/docs/service/templateCache.md +0 -64
  86. package/docs/content/docs/service/templateRequest.md +0 -5
  87. package/docs/content/docs/service/url.md +0 -5
  88. package/docs/content/docs/values/_index.md +0 -4
  89. package/docs/content/docs/values/document.md +0 -29
  90. package/docs/content/docs/values/window.md +0 -29
  91. package/docs/docker-compose.yaml +0 -12
  92. package/docs/docsy.work +0 -5
  93. package/docs/docsy.work.sum +0 -0
  94. package/docs/go.mod +0 -5
  95. package/docs/go.sum +0 -6
  96. package/docs/hugo-disabled.toml +0 -220
  97. package/docs/hugo.yaml +0 -200
  98. package/docs/layouts/404.html +0 -13
  99. package/docs/layouts/_markup/render-heading.html +0 -1
  100. package/docs/layouts/partials/hooks/head-end.html +0 -3
  101. package/docs/layouts/shortcodes/showcss.html +0 -2
  102. package/docs/layouts/shortcodes/showhtml.html +0 -2
  103. package/docs/layouts/shortcodes/showjs.html +0 -2
  104. package/docs/layouts/shortcodes/showraw.html +0 -1
  105. package/docs/layouts/shortcodes/version.html +0 -1
  106. package/docs/package-lock.json +0 -2293
  107. package/docs/package.json +0 -53
  108. package/docs/static/examples/counter/counter-test.html +0 -13
  109. package/docs/static/examples/counter/counter.html +0 -5
  110. package/docs/static/examples/counter/counter.test.js +0 -28
  111. package/docs/static/examples/document/document.html +0 -3
  112. package/docs/static/examples/eventbus/eventbus-test.html +0 -15
  113. package/docs/static/examples/eventbus/eventbus.html +0 -13
  114. package/docs/static/examples/eventbus/eventbus.js +0 -15
  115. package/docs/static/examples/eventbus/eventbus.test.js +0 -19
  116. package/docs/static/examples/i18n/i18n.html +0 -77
  117. package/docs/static/examples/ng-bind/ng-bind.html +0 -9
  118. package/docs/static/examples/ng-blur/ng-blur.html +0 -9
  119. package/docs/static/examples/ng-channel/ng-channel-test.html +0 -17
  120. package/docs/static/examples/ng-channel/ng-channel.html +0 -24
  121. package/docs/static/examples/ng-channel/ng-channel.test.js +0 -31
  122. package/docs/static/examples/ng-class/ng-class.html +0 -71
  123. package/docs/static/examples/ng-class-even/ng-class-even.html +0 -8
  124. package/docs/static/examples/ng-class-odd/ng-class-odd.html +0 -8
  125. package/docs/static/examples/ng-click/ng-click.html +0 -6
  126. package/docs/static/examples/ng-copy/ng-copy.html +0 -6
  127. package/docs/static/examples/ng-cut/ng-cut.html +0 -6
  128. package/docs/static/examples/ng-dblclick/ng-dblclick.html +0 -10
  129. package/docs/static/examples/ng-focus/ng-focus.html +0 -9
  130. package/docs/static/examples/ng-keydown/ng-keydown.html +0 -9
  131. package/docs/static/examples/ng-keyup/ng-keyup.html +0 -9
  132. package/docs/static/examples/ng-load/ng-load.html +0 -8
  133. package/docs/static/examples/ng-mousedown/ng-mousedown.html +0 -6
  134. package/docs/static/examples/ng-mouseenter/ng-mouseenter.html +0 -4
  135. package/docs/static/examples/ng-mouseleave/ng-mouseleave.html +0 -4
  136. package/docs/static/examples/ng-mousemove/ng-mousemove.html +0 -4
  137. package/docs/static/examples/ng-mouseout/ng-mouseout.html +0 -4
  138. package/docs/static/examples/ng-mouseover/ng-mouseover.html +0 -4
  139. package/docs/static/examples/ng-mouseup/ng-mouseup.html +0 -4
  140. package/docs/static/examples/ng-non-bindable/ng-non-bindable-test.html +0 -13
  141. package/docs/static/examples/ng-non-bindable/ng-non-bindable.html +0 -3
  142. package/docs/static/examples/ng-non-bindable/ng-non-bindable.test.js +0 -11
  143. package/docs/static/examples/window/window.html +0 -4
  144. package/docs/static/typedoc/.nojekyll +0 -1
  145. package/docs/static/typedoc/assets/hierarchy.js +0 -1
  146. package/docs/static/typedoc/assets/highlight.css +0 -29
  147. package/docs/static/typedoc/assets/icons.js +0 -18
  148. package/docs/static/typedoc/assets/icons.svg +0 -1
  149. package/docs/static/typedoc/assets/main.js +0 -60
  150. package/docs/static/typedoc/assets/navigation.js +0 -1
  151. package/docs/static/typedoc/assets/search.js +0 -1
  152. package/docs/static/typedoc/assets/style.css +0 -1633
  153. package/docs/static/typedoc/classes/Location.html +0 -55
  154. package/docs/static/typedoc/classes/LocationProvider.html +0 -20
  155. package/docs/static/typedoc/classes/LogProvider.html +0 -6
  156. package/docs/static/typedoc/classes/PubSub.html +0 -71
  157. package/docs/static/typedoc/classes/PubSubProvider.html +0 -4
  158. package/docs/static/typedoc/classes/TemplateCacheProvider.html +0 -5
  159. package/docs/static/typedoc/hierarchy.html +0 -1
  160. package/docs/static/typedoc/index.html +0 -1
  161. package/docs/static/typedoc/interfaces/DefaultPorts.html +0 -5
  162. package/docs/static/typedoc/interfaces/Html5Mode.html +0 -23
  163. package/docs/static/typedoc/interfaces/HttpHeadersGetter.html +0 -1
  164. package/docs/static/typedoc/interfaces/HttpProviderDefaults.html +0 -31
  165. package/docs/static/typedoc/interfaces/HttpRequestConfigHeaders.html +0 -6
  166. package/docs/static/typedoc/interfaces/HttpRequestTransformer.html +0 -1
  167. package/docs/static/typedoc/interfaces/HttpResponse.html +0 -7
  168. package/docs/static/typedoc/interfaces/HttpResponseTransformer.html +0 -1
  169. package/docs/static/typedoc/interfaces/HttpService.html +0 -38
  170. package/docs/static/typedoc/interfaces/LogService.html +0 -12
  171. package/docs/static/typedoc/interfaces/RequestConfig.html +0 -48
  172. package/docs/static/typedoc/interfaces/RequestShortcutConfig.html +0 -38
  173. package/docs/static/typedoc/interfaces/ServiceProvider.html +0 -5
  174. package/docs/static/typedoc/interfaces/UrlParts.html +0 -9
  175. package/docs/static/typedoc/types/HttpParamSerializer.html +0 -2
  176. package/docs/static/typedoc/types/HttpParams.html +0 -2
  177. package/docs/static/typedoc/types/HttpPromise.html +0 -1
  178. package/docs/static/typedoc/types/HttpResponseStatus.html +0 -1
  179. package/docs/static/typedoc/types/LogCall.html +0 -2
  180. package/docs/static/typedoc/types/LogServiceFactory.html +0 -2
  181. package/docs/static/typedoc/types/UrlChangeListener.html +0 -5
  182. package/docs/static/typedoc/variables/EventBus.html +0 -1
  183. package/docs/static/version.js +0 -13
  184. package/docs/test-results/.last-run.json +0 -4
  185. package/docs/test-results/static-examples-counter-counter-counter-example/error-context.md +0 -50
  186. package/eslint.config.js +0 -26
  187. package/images/android-chrome-192x192.png +0 -0
  188. package/images/android-chrome-512x512.png +0 -0
  189. package/images/apple-touch-icon.png +0 -0
  190. package/images/favicon-16x16.png +0 -0
  191. package/images/favicon-32x32.png +0 -0
  192. package/images/favicon.ico +0 -0
  193. package/images/site.webmanifest +0 -19
  194. package/index.html +0 -86
  195. package/legacy.d.ts +0 -1678
  196. package/playwright.config.ts +0 -81
  197. package/public/jasmine/boot0.js +0 -66
  198. package/public/jasmine/boot1.js +0 -134
  199. package/public/jasmine/jasmine-html.js +0 -970
  200. package/public/jasmine/jasmine.css +0 -323
  201. package/public/jasmine/jasmine.js +0 -11406
  202. package/public/public/README.md +0 -1
  203. package/public/public/circle.html +0 -1
  204. package/public/public/jasmine-helper.css +0 -9
  205. package/public/public/my_child_directive.html +0 -1
  206. package/public/public/my_directive.html +0 -1
  207. package/public/public/my_other_directive.html +0 -1
  208. package/public/public/test.html +0 -1
  209. package/rollup.config.js +0 -51
  210. package/src/angular.js +0 -286
  211. package/src/angular.spec.js +0 -1191
  212. package/src/animations/animate-cache.js +0 -80
  213. package/src/animations/animate-children-directive.js +0 -32
  214. package/src/animations/animate-children-directive.md +0 -80
  215. package/src/animations/animate-css-driver.js +0 -284
  216. package/src/animations/animate-css.html +0 -58
  217. package/src/animations/animate-css.js +0 -915
  218. package/src/animations/animate-css.md +0 -263
  219. package/src/animations/animate-js-driver.js +0 -60
  220. package/src/animations/animate-js.html +0 -47
  221. package/src/animations/animate-js.js +0 -371
  222. package/src/animations/animate-queue.js +0 -859
  223. package/src/animations/animate-runner.js +0 -193
  224. package/src/animations/animate-swap.js +0 -33
  225. package/src/animations/animate-swap.md +0 -88
  226. package/src/animations/animate.html +0 -19
  227. package/src/animations/animate.js +0 -546
  228. package/src/animations/animate.md +0 -933
  229. package/src/animations/animate.spec.js +0 -490
  230. package/src/animations/animation.js +0 -519
  231. package/src/animations/animations.test.js +0 -10
  232. package/src/animations/interface.ts +0 -19
  233. package/src/animations/raf-scheduler.html +0 -19
  234. package/src/animations/raf-scheduler.js +0 -92
  235. package/src/animations/raf-scheduler.spec.js +0 -98
  236. package/src/animations/shared.js +0 -341
  237. package/src/binding.html +0 -19
  238. package/src/binding.spec.js +0 -474
  239. package/src/binding.test.js +0 -10
  240. package/src/core/compile/attributes.js +0 -337
  241. package/src/core/compile/compile.html +0 -19
  242. package/src/core/compile/compile.js +0 -3271
  243. package/src/core/compile/compile.md +0 -1128
  244. package/src/core/compile/compile.spec.js +0 -15574
  245. package/src/core/compile/compile.test.js +0 -12
  246. package/src/core/controller/controller.html +0 -22
  247. package/src/core/controller/controller.js +0 -193
  248. package/src/core/controller/controller.spec.js +0 -334
  249. package/src/core/controller/controller.test.js +0 -12
  250. package/src/core/controller/interface.ts +0 -6
  251. package/src/core/core.html +0 -20
  252. package/src/core/core.test.js +0 -12
  253. package/src/core/di/injector.html +0 -19
  254. package/src/core/di/injector.js +0 -307
  255. package/src/core/di/injector.md +0 -740
  256. package/src/core/di/injector.spec.js +0 -2310
  257. package/src/core/di/injector.test.js +0 -12
  258. package/src/core/di/internal-injector.js +0 -286
  259. package/src/core/di/ng-module.html +0 -19
  260. package/src/core/di/ng-module.js +0 -229
  261. package/src/core/di/ng-module.spec.js +0 -263
  262. package/src/core/di/ng-module.test.js +0 -12
  263. package/src/core/filter/filter.html +0 -19
  264. package/src/core/filter/filter.js +0 -55
  265. package/src/core/filter/filter.md +0 -132
  266. package/src/core/filter/filter.spec.js +0 -149
  267. package/src/core/filter/filter.test.js +0 -12
  268. package/src/core/interpolate/interface.ts +0 -14
  269. package/src/core/interpolate/interpolate.html +0 -22
  270. package/src/core/interpolate/interpolate.js +0 -410
  271. package/src/core/interpolate/interpolate.spec.js +0 -601
  272. package/src/core/interpolate/interpolate.test.js +0 -12
  273. package/src/core/parse/ast/ast-node.ts +0 -81
  274. package/src/core/parse/ast/ast.html +0 -19
  275. package/src/core/parse/ast/ast.js +0 -574
  276. package/src/core/parse/ast/ast.spec.js +0 -1453
  277. package/src/core/parse/ast/ast.test.js +0 -10
  278. package/src/core/parse/ast-type.js +0 -23
  279. package/src/core/parse/interface.ts +0 -84
  280. package/src/core/parse/interpreter.js +0 -915
  281. package/src/core/parse/lexer/lexer.html +0 -19
  282. package/src/core/parse/lexer/lexer.js +0 -338
  283. package/src/core/parse/lexer/lexer.spec.js +0 -303
  284. package/src/core/parse/lexer/lexer.test.js +0 -10
  285. package/src/core/parse/lexer/token.ts +0 -22
  286. package/src/core/parse/parse.html +0 -19
  287. package/src/core/parse/parse.js +0 -337
  288. package/src/core/parse/parse.md +0 -57
  289. package/src/core/parse/parse.spec.js +0 -2107
  290. package/src/core/parse/parse.test.js +0 -10
  291. package/src/core/parse/parser/parser.html +0 -19
  292. package/src/core/parse/parser/parser.js +0 -64
  293. package/src/core/parse/parser/parser.spec.js +0 -8
  294. package/src/core/parse/parser/parser.test.js +0 -10
  295. package/src/core/prop.spec.js +0 -775
  296. package/src/core/root-element.spec.js +0 -14
  297. package/src/core/sanitize/interface.ts +0 -10
  298. package/src/core/sanitize/sanitize-uri.js +0 -75
  299. package/src/core/sanitize/sanitize-uri.spec.js +0 -249
  300. package/src/core/sanitize/sanitize-uri.test.js +0 -12
  301. package/src/core/sanitize/sanitize.html +0 -22
  302. package/src/core/scope/scope.html +0 -19
  303. package/src/core/scope/scope.js +0 -1252
  304. package/src/core/scope/scope.spec.js +0 -3000
  305. package/src/core/scope/scope.test.js +0 -12
  306. package/src/directive/aria/aria.html +0 -19
  307. package/src/directive/aria/aria.js +0 -382
  308. package/src/directive/aria/aria.md +0 -145
  309. package/src/directive/aria/aria.spec.js +0 -1241
  310. package/src/directive/aria/aria.test.js +0 -12
  311. package/src/directive/attrs/attrs.html +0 -19
  312. package/src/directive/attrs/attrs.js +0 -106
  313. package/src/directive/attrs/attrs.md +0 -224
  314. package/src/directive/attrs/attrs.spec.js +0 -71
  315. package/src/directive/attrs/attrs.test.js +0 -12
  316. package/src/directive/attrs/boolean.html +0 -19
  317. package/src/directive/attrs/boolean.spec.js +0 -137
  318. package/src/directive/attrs/boolean.test.js +0 -12
  319. package/src/directive/attrs/element-style.html +0 -22
  320. package/src/directive/attrs/element-style.spec.js +0 -85
  321. package/src/directive/attrs/element-style.test.js +0 -12
  322. package/src/directive/attrs/src.html +0 -19
  323. package/src/directive/attrs/src.spec.js +0 -163
  324. package/src/directive/attrs/src.test.js +0 -12
  325. package/src/directive/bind/bind-html.spec.js +0 -36
  326. package/src/directive/bind/bind.html +0 -20
  327. package/src/directive/bind/bind.js +0 -78
  328. package/src/directive/bind/bind.md +0 -142
  329. package/src/directive/bind/bind.spec.js +0 -314
  330. package/src/directive/bind/bind.test.js +0 -12
  331. package/src/directive/channel/channel.html +0 -19
  332. package/src/directive/channel/channel.js +0 -30
  333. package/src/directive/channel/channel.spec.js +0 -67
  334. package/src/directive/channel/channel.test.js +0 -10
  335. package/src/directive/class/class-test.html +0 -23
  336. package/src/directive/class/class.html +0 -19
  337. package/src/directive/class/class.js +0 -184
  338. package/src/directive/class/class.spec.js +0 -704
  339. package/src/directive/class/class.test.js +0 -12
  340. package/src/directive/cloak/cloak.html +0 -19
  341. package/src/directive/cloak/cloak.js +0 -11
  342. package/src/directive/cloak/cloak.spec.js +0 -44
  343. package/src/directive/cloak/cloak.test.js +0 -12
  344. package/src/directive/controller/controller.html +0 -22
  345. package/src/directive/controller/controller.js +0 -11
  346. package/src/directive/controller/controller.md +0 -46
  347. package/src/directive/controller/controller.spec.js +0 -175
  348. package/src/directive/controller/controller.test.js +0 -12
  349. package/src/directive/events/click.spec.js +0 -35
  350. package/src/directive/events/event.spec.js +0 -267
  351. package/src/directive/events/events-test.html +0 -36
  352. package/src/directive/events/events.html +0 -20
  353. package/src/directive/events/events.js +0 -65
  354. package/src/directive/events/events.md +0 -125
  355. package/src/directive/events/events.test.js +0 -12
  356. package/src/directive/form/form.html +0 -19
  357. package/src/directive/form/form.js +0 -669
  358. package/src/directive/form/form.spec.js +0 -1515
  359. package/src/directive/form/form.test.js +0 -12
  360. package/src/directive/http/delete.spec.js +0 -23
  361. package/src/directive/http/form-router-test.html +0 -44
  362. package/src/directive/http/form-test.html +0 -18
  363. package/src/directive/http/get.spec.js +0 -488
  364. package/src/directive/http/http.html +0 -22
  365. package/src/directive/http/http.js +0 -342
  366. package/src/directive/http/http.test.js +0 -12
  367. package/src/directive/http/interface.ts +0 -36
  368. package/src/directive/http/post-example.html +0 -30
  369. package/src/directive/http/post.spec.js +0 -521
  370. package/src/directive/http/put.spec.js +0 -23
  371. package/src/directive/if/if-animate-css.html +0 -57
  372. package/src/directive/if/if-animate-svg.html +0 -25
  373. package/src/directive/if/if.html +0 -19
  374. package/src/directive/if/if.js +0 -72
  375. package/src/directive/if/if.md +0 -76
  376. package/src/directive/if/if.spec.js +0 -293
  377. package/src/directive/if/if.test.js +0 -114
  378. package/src/directive/include/include.html +0 -19
  379. package/src/directive/include/include.js +0 -151
  380. package/src/directive/include/include.md +0 -87
  381. package/src/directive/include/include.spec.js +0 -734
  382. package/src/directive/include/include.test.js +0 -12
  383. package/src/directive/init/init.html +0 -19
  384. package/src/directive/init/init.js +0 -22
  385. package/src/directive/init/init.md +0 -41
  386. package/src/directive/init/init.spec.js +0 -68
  387. package/src/directive/init/init.test.js +0 -12
  388. package/src/directive/inject/inject.html +0 -19
  389. package/src/directive/inject/inject.js +0 -35
  390. package/src/directive/inject/inject.spec.js +0 -108
  391. package/src/directive/inject/inject.test.js +0 -12
  392. package/src/directive/input/input-example.html +0 -15
  393. package/src/directive/input/input.html +0 -19
  394. package/src/directive/input/input.js +0 -1078
  395. package/src/directive/input/input.md +0 -706
  396. package/src/directive/input/input.spec.js +0 -3700
  397. package/src/directive/input/input.test.js +0 -12
  398. package/src/directive/messages/messages.html +0 -22
  399. package/src/directive/messages/messages.js +0 -349
  400. package/src/directive/messages/messages.md +0 -543
  401. package/src/directive/messages/messages.spec.js +0 -1083
  402. package/src/directive/messages/messages.test.js +0 -12
  403. package/src/directive/model/change.md +0 -25
  404. package/src/directive/model/model.html +0 -19
  405. package/src/directive/model/model.js +0 -1170
  406. package/src/directive/model/model.spec.js +0 -1976
  407. package/src/directive/model/model.test.js +0 -12
  408. package/src/directive/model-options/model-option.test.js +0 -12
  409. package/src/directive/model-options/model-options.html +0 -22
  410. package/src/directive/model-options/model-options.js +0 -142
  411. package/src/directive/model-options/model-options.md +0 -407
  412. package/src/directive/model-options/model-options.spec.js +0 -1022
  413. package/src/directive/non-bindable/non-bindable.html +0 -22
  414. package/src/directive/non-bindable/non-bindable.js +0 -9
  415. package/src/directive/non-bindable/non-bindable.spec.js +0 -59
  416. package/src/directive/non-bindable/non-bindable.test.js +0 -12
  417. package/src/directive/observe/observe-demo.html +0 -184
  418. package/src/directive/observe/observe.html +0 -19
  419. package/src/directive/observe/observe.js +0 -41
  420. package/src/directive/observe/observe.spec.js +0 -106
  421. package/src/directive/observe/observe.test.js +0 -10
  422. package/src/directive/on/on.html +0 -19
  423. package/src/directive/on/on.spec.js +0 -215
  424. package/src/directive/on/on.test.js +0 -12
  425. package/src/directive/options/options-example.html +0 -17
  426. package/src/directive/options/options.html +0 -22
  427. package/src/directive/options/options.js +0 -542
  428. package/src/directive/options/options.md +0 -179
  429. package/src/directive/options/options.spec.js +0 -3554
  430. package/src/directive/options/options.test.js +0 -12
  431. package/src/directive/ref/href.html +0 -19
  432. package/src/directive/ref/href.spec.js +0 -141
  433. package/src/directive/ref/href.test.js +0 -19
  434. package/src/directive/ref/ref.html +0 -19
  435. package/src/directive/ref/ref.js +0 -89
  436. package/src/directive/ref/ref.spec.js +0 -546
  437. package/src/directive/repeat/repeat.html +0 -19
  438. package/src/directive/repeat/repeat.js +0 -333
  439. package/src/directive/repeat/repeat.md +0 -330
  440. package/src/directive/repeat/repeat.spec.js +0 -1209
  441. package/src/directive/repeat/repeat.test.js +0 -12
  442. package/src/directive/script/script.html +0 -19
  443. package/src/directive/script/script.js +0 -17
  444. package/src/directive/script/script.md +0 -11
  445. package/src/directive/script/script.spec.js +0 -47
  446. package/src/directive/script/script.test.js +0 -12
  447. package/src/directive/select/select.html +0 -19
  448. package/src/directive/select/select.js +0 -594
  449. package/src/directive/select/select.md +0 -74
  450. package/src/directive/select/select.spec.js +0 -2566
  451. package/src/directive/select/select.test.js +0 -12
  452. package/src/directive/setter/setter.html +0 -19
  453. package/src/directive/setter/setter.js +0 -59
  454. package/src/directive/setter/setter.spec.js +0 -100
  455. package/src/directive/setter/setter.test.js +0 -12
  456. package/src/directive/show-hide/show-hide.html +0 -22
  457. package/src/directive/show-hide/show-hide.js +0 -65
  458. package/src/directive/show-hide/show-hide.md +0 -255
  459. package/src/directive/show-hide/show-hide.spec.js +0 -268
  460. package/src/directive/show-hide/show-hide.test.js +0 -12
  461. package/src/directive/style/style.html +0 -19
  462. package/src/directive/style/style.js +0 -27
  463. package/src/directive/style/style.md +0 -23
  464. package/src/directive/style/style.spec.js +0 -183
  465. package/src/directive/style/style.test.js +0 -12
  466. package/src/directive/switch/switch.html +0 -19
  467. package/src/directive/switch/switch.js +0 -133
  468. package/src/directive/switch/switch.md +0 -66
  469. package/src/directive/switch/switch.spec.js +0 -509
  470. package/src/directive/switch/switch.test.js +0 -12
  471. package/src/directive/transclude/transclude.js +0 -122
  472. package/src/directive/validators/validators.html +0 -22
  473. package/src/directive/validators/validators.js +0 -346
  474. package/src/directive/validators/validators.spec.js +0 -740
  475. package/src/directive/validators/validators.test.js +0 -12
  476. package/src/filters/filter.js +0 -213
  477. package/src/filters/filter.spec.js +0 -719
  478. package/src/filters/filters.html +0 -22
  479. package/src/filters/filters.js +0 -239
  480. package/src/filters/filters.spec.js +0 -36
  481. package/src/filters/filters.test.js +0 -12
  482. package/src/filters/interface.ts +0 -9
  483. package/src/filters/limit-to.js +0 -55
  484. package/src/filters/limit-to.spec.js +0 -252
  485. package/src/filters/order-by.js +0 -181
  486. package/src/filters/order-by.spec.js +0 -883
  487. package/src/index.js +0 -6
  488. package/src/index.spec.js +0 -11
  489. package/src/injection-tokens.js +0 -81
  490. package/src/interface.ts +0 -430
  491. package/src/ng.js +0 -291
  492. package/src/ng.spec.js +0 -45
  493. package/src/router/common/trace.js +0 -240
  494. package/src/router/directives/component-example.html +0 -37
  495. package/src/router/directives/state-directives.html +0 -22
  496. package/src/router/directives/state-directives.js +0 -393
  497. package/src/router/directives/state-directives.md +0 -435
  498. package/src/router/directives/state-directives.spec.js +0 -1091
  499. package/src/router/directives/state-directives.test.js +0 -10
  500. package/src/router/directives/view-directive.js +0 -489
  501. package/src/router/directives/view-directive.spec.js +0 -1921
  502. package/src/router/directives/view-directive.test.js +0 -10
  503. package/src/router/directives/view-directives.html +0 -22
  504. package/src/router/glob/glob.html +0 -19
  505. package/src/router/glob/glob.js +0 -102
  506. package/src/router/glob/glob.spec.js +0 -108
  507. package/src/router/glob/glob.test.js +0 -12
  508. package/src/router/hooks/core-resolvables.js +0 -38
  509. package/src/router/hooks/ignored-transition.js +0 -25
  510. package/src/router/hooks/invalid-transition.js +0 -14
  511. package/src/router/hooks/lazy-load.js +0 -104
  512. package/src/router/hooks/on-enter-exit-retain.js +0 -55
  513. package/src/router/hooks/redirect-to.js +0 -38
  514. package/src/router/hooks/resolve.js +0 -57
  515. package/src/router/hooks/update-globals.js +0 -34
  516. package/src/router/hooks/url.js +0 -34
  517. package/src/router/hooks/views.js +0 -41
  518. package/src/router/params/interface.ts +0 -626
  519. package/src/router/params/param-factory.js +0 -23
  520. package/src/router/params/param-type.js +0 -133
  521. package/src/router/params/param-types.js +0 -153
  522. package/src/router/params/param.js +0 -243
  523. package/src/router/params/state-params.js +0 -36
  524. package/src/router/path/path-node.js +0 -78
  525. package/src/router/path/path-utils.js +0 -207
  526. package/src/router/resolve/interface.ts +0 -208
  527. package/src/router/resolve/resolvable.js +0 -123
  528. package/src/router/resolve/resolve-context.js +0 -190
  529. package/src/router/router-test-hashbang.html +0 -45
  530. package/src/router/router-test.html +0 -41
  531. package/src/router/router.html +0 -22
  532. package/src/router/router.js +0 -54
  533. package/src/router/router.test.js +0 -12
  534. package/src/router/services.spec.js +0 -52
  535. package/src/router/state/interface.ts +0 -1007
  536. package/src/router/state/state-builder.js +0 -376
  537. package/src/router/state/state-builder.spec.js +0 -86
  538. package/src/router/state/state-matcher.js +0 -64
  539. package/src/router/state/state-object.js +0 -118
  540. package/src/router/state/state-queue-manager.js +0 -95
  541. package/src/router/state/state-registry.js +0 -262
  542. package/src/router/state/state-service.js +0 -687
  543. package/src/router/state/state.html +0 -23
  544. package/src/router/state/state.spec.js +0 -1002
  545. package/src/router/state/state.test.js +0 -12
  546. package/src/router/state/target-state.js +0 -162
  547. package/src/router/state/views.js +0 -195
  548. package/src/router/state-filter.spec.js +0 -139
  549. package/src/router/state-filters.js +0 -46
  550. package/src/router/template-factory.html +0 -19
  551. package/src/router/template-factory.js +0 -249
  552. package/src/router/template-factory.spec.js +0 -146
  553. package/src/router/template-factory.test.js +0 -12
  554. package/src/router/transition/hook-builder.js +0 -137
  555. package/src/router/transition/hook-registry.js +0 -181
  556. package/src/router/transition/interface.js +0 -18
  557. package/src/router/transition/interface.ts +0 -922
  558. package/src/router/transition/reject-factory.js +0 -122
  559. package/src/router/transition/transition-event-type.js +0 -26
  560. package/src/router/transition/transition-hook.js +0 -199
  561. package/src/router/transition/transition-service.js +0 -297
  562. package/src/router/transition/transition.js +0 -653
  563. package/src/router/url/url-config.js +0 -155
  564. package/src/router/url/url-matcher.js +0 -532
  565. package/src/router/url/url-rule.js +0 -231
  566. package/src/router/url/url-rules.js +0 -350
  567. package/src/router/url/url-service.js +0 -446
  568. package/src/router/url/url-service.spec.js +0 -1288
  569. package/src/router/url/url.html +0 -19
  570. package/src/router/url/url.test.js +0 -12
  571. package/src/router/view/interface.ts +0 -51
  572. package/src/router/view/view.html +0 -19
  573. package/src/router/view/view.js +0 -262
  574. package/src/router/view/view.spec.js +0 -100
  575. package/src/router/view/view.test.js +0 -12
  576. package/src/router/view-hook.spec.js +0 -215
  577. package/src/router/view-scroll.js +0 -33
  578. package/src/router/view-scroll.spec.js +0 -72
  579. package/src/services/anchor-scroll/anchor-scroll.html +0 -76
  580. package/src/services/anchor-scroll/anchor-scroll.js +0 -147
  581. package/src/services/exception/exception-handler.js +0 -75
  582. package/src/services/exception/interface.ts +0 -7
  583. package/src/services/http/http.html +0 -23
  584. package/src/services/http/http.js +0 -1109
  585. package/src/services/http/http.spec.js +0 -4320
  586. package/src/services/http/http.test.js +0 -11
  587. package/src/services/http/interface.ts +0 -256
  588. package/src/services/http/template-request.spec.js +0 -220
  589. package/src/services/location/interface.ts +0 -70
  590. package/src/services/location/location.html +0 -22
  591. package/src/services/location/location.js +0 -1006
  592. package/src/services/location/location.spec.js +0 -3792
  593. package/src/services/location/location.test.js +0 -12
  594. package/src/services/log/interface.ts +0 -39
  595. package/src/services/log/log.html +0 -19
  596. package/src/services/log/log.js +0 -74
  597. package/src/services/log/log.spec.js +0 -64
  598. package/src/services/log/log.test.js +0 -12
  599. package/src/services/pubsub/pubsub.html +0 -19
  600. package/src/services/pubsub/pubsub.js +0 -349
  601. package/src/services/pubsub/pubsub.spec.js +0 -400
  602. package/src/services/pubsub/pubsub.test.js +0 -12
  603. package/src/services/sce/sce.html +0 -19
  604. package/src/services/sce/sce.js +0 -852
  605. package/src/services/sce/sce.spec.js +0 -617
  606. package/src/services/sce/sce.test.js +0 -12
  607. package/src/services/template-cache/template-cache.html +0 -22
  608. package/src/services/template-cache/template-cache.js +0 -15
  609. package/src/services/template-cache/template-cache.spec.js +0 -134
  610. package/src/services/template-cache/template-cache.test.js +0 -12
  611. package/src/services/template-request/interface.ts +0 -23
  612. package/src/services/template-request/template-request.js +0 -142
  613. package/src/shared/cache.js +0 -7
  614. package/src/shared/common.js +0 -365
  615. package/src/shared/common.spec.js +0 -294
  616. package/src/shared/constants.js +0 -21
  617. package/src/shared/dom.js +0 -716
  618. package/src/shared/hof.js +0 -157
  619. package/src/shared/hof.spec.js +0 -60
  620. package/src/shared/interface.ts +0 -21
  621. package/src/shared/min-err.spec.js +0 -178
  622. package/src/shared/noderef.js +0 -225
  623. package/src/shared/predicates.js +0 -34
  624. package/src/shared/queue.js +0 -105
  625. package/src/shared/queue.spec.js +0 -80
  626. package/src/shared/shared.html +0 -24
  627. package/src/shared/shared.test.js +0 -12
  628. package/src/shared/strings.js +0 -142
  629. package/src/shared/strings.spec.js +0 -40
  630. package/src/shared/test-utils.js +0 -47
  631. package/src/shared/url-utils/interface.ts +0 -54
  632. package/src/shared/url-utils/url-utils.html +0 -22
  633. package/src/shared/url-utils/url-utils.js +0 -122
  634. package/src/shared/url-utils/url-utils.spec.js +0 -148
  635. package/src/shared/url-utils/url-utils.test.js +0 -12
  636. package/src/shared/utils.js +0 -1255
  637. package/src/shared/utils.spec.js +0 -178
  638. package/src/src.html +0 -21
  639. package/src/src.test.js +0 -10
  640. package/tsconfig.json +0 -19
  641. package/tsconfig.types.json +0 -14
  642. package/typedoc.json +0 -8
  643. package/utils/express.js +0 -203
  644. package/utils/version.cjs +0 -23
  645. package/vite.config.js +0 -14
@@ -1,859 +0,0 @@
1
- import { getOrSetCacheData, setCacheData } from "../shared/dom.js";
2
- import {
3
- isUndefined,
4
- isObject,
5
- isString,
6
- isElement,
7
- isDefined,
8
- extend,
9
- } from "../shared/utils.js";
10
- import {
11
- NG_ANIMATE_CHILDREN_DATA,
12
- applyAnimationClassesFactory,
13
- applyAnimationStyles,
14
- applyGeneratedPreparationClasses,
15
- assertArg,
16
- clearGeneratedClasses,
17
- extractElementNode,
18
- mergeAnimationDetails,
19
- prepareAnimationOptions,
20
- stripCommentsFromElement,
21
- } from "./shared.js";
22
- import { $injectTokens as $t } from "../injection-tokens.js";
23
-
24
- const NG_ANIMATE_ATTR_NAME = "data-ng-animate";
25
- const NG_ANIMATE_PIN_DATA = "$ngAnimatePin";
26
- AnimateQueueProvider.$inject = ["$animateProvider"];
27
- export function AnimateQueueProvider($animateProvider) {
28
- const PRE_DIGEST_STATE = 1;
29
- const RUNNING_STATE = 2;
30
- const ONE_SPACE = " ";
31
-
32
- const rules = (this.rules = {
33
- skip: [],
34
- cancel: [],
35
- join: [],
36
- });
37
-
38
- function getEventData(options) {
39
- return {
40
- addClass: options.addClass,
41
- removeClass: options.removeClass,
42
- from: options.from,
43
- to: options.to,
44
- };
45
- }
46
-
47
- function makeTruthyCssClassMap(classString) {
48
- if (!classString) {
49
- return null;
50
- }
51
-
52
- const keys = classString.split(ONE_SPACE);
53
- const map = Object.create(null);
54
-
55
- keys.forEach((key) => {
56
- map[key] = true;
57
- });
58
- return map;
59
- }
60
-
61
- function hasMatchingClasses(newClassString, currentClassString) {
62
- if (newClassString && currentClassString) {
63
- const currentClassMap = makeTruthyCssClassMap(currentClassString);
64
- return newClassString
65
- .split(ONE_SPACE)
66
- .some((className) => currentClassMap[className]);
67
- }
68
- }
69
-
70
- function isAllowed(ruleType, currentAnimation, previousAnimation) {
71
- return rules[ruleType].some((fn) =>
72
- fn(currentAnimation, previousAnimation),
73
- );
74
- }
75
-
76
- function hasAnimationClasses(animation, and) {
77
- const a = (animation.addClass || "").length > 0;
78
- const b = (animation.removeClass || "").length > 0;
79
- return and ? a && b : a || b;
80
- }
81
-
82
- rules.join.push(
83
- (newAnimation) =>
84
- // if the new animation is class-based then we can just tack that on
85
- !newAnimation.structural && hasAnimationClasses(newAnimation),
86
- );
87
-
88
- rules.skip.push(
89
- (newAnimation) =>
90
- // there is no need to animate anything if no classes are being added and
91
- // there is no structural animation that will be triggered
92
- !newAnimation.structural && !hasAnimationClasses(newAnimation),
93
- );
94
-
95
- rules.skip.push(
96
- (newAnimation, currentAnimation) =>
97
- // why should we trigger a new structural animation if the element will
98
- // be removed from the DOM anyway?
99
- currentAnimation.event === "leave" && newAnimation.structural,
100
- );
101
-
102
- rules.skip.push(
103
- (newAnimation, currentAnimation) =>
104
- // if there is an ongoing current animation then don't even bother running the class-based animation
105
- currentAnimation.structural &&
106
- currentAnimation.state === RUNNING_STATE &&
107
- !newAnimation.structural,
108
- );
109
-
110
- rules.cancel.push(
111
- (newAnimation, currentAnimation) =>
112
- // there can never be two structural animations running at the same time
113
- currentAnimation.structural && newAnimation.structural,
114
- );
115
-
116
- rules.cancel.push(
117
- (newAnimation, currentAnimation) =>
118
- // if the previous animation is already running, but the new animation will
119
- // be triggered, but the new animation is structural
120
- currentAnimation.state === RUNNING_STATE && newAnimation.structural,
121
- );
122
-
123
- rules.cancel.push((newAnimation, currentAnimation) => {
124
- // cancel the animation if classes added / removed in both animation cancel each other out,
125
- // but only if the current animation isn't structural
126
-
127
- if (currentAnimation.structural) return false;
128
-
129
- const nA = newAnimation.addClass;
130
- const nR = newAnimation.removeClass;
131
- const cA = currentAnimation.addClass;
132
- const cR = currentAnimation.removeClass;
133
-
134
- // early detection to save the global CPU shortage :)
135
- if (
136
- (isUndefined(nA) && isUndefined(nR)) ||
137
- (isUndefined(cA) && isUndefined(cR))
138
- ) {
139
- return false;
140
- }
141
-
142
- return hasMatchingClasses(nA, cR) || hasMatchingClasses(nR, cA);
143
- });
144
-
145
- this.$get = [
146
- $t.$rootScope,
147
- $t.$injector,
148
- $t.$$animation,
149
- $t.$$AnimateRunner,
150
- $t.$templateRequest,
151
- /**
152
- *
153
- * @param {import('../core/scope/scope.js').Scope} $rootScope
154
- * @param {import('../core/di/internal-injector.js').InjectorService} $injector
155
- * @param {*} $$animation
156
- * @param {*} $$AnimateRunner
157
- * @param {*} $templateRequest
158
- * @returns
159
- */
160
- function (
161
- $rootScope,
162
- $injector,
163
- $$animation,
164
- $$AnimateRunner,
165
- $templateRequest,
166
- ) {
167
- const activeAnimationsLookup = new Map();
168
- const disabledElementsLookup = new Map();
169
- let animationsEnabled = null;
170
-
171
- function removeFromDisabledElementsLookup(evt) {
172
- disabledElementsLookup.delete(evt.target);
173
- }
174
-
175
- function postDigestTaskFactory() {
176
- let postDigestCalled = false;
177
- return function (fn) {
178
- // we only issue a call to postDigest before
179
- // it has first passed. This prevents any callbacks
180
- // from not firing once the animation has completed
181
- // since it will be out of the digest cycle.
182
- if (postDigestCalled) {
183
- fn();
184
- } else {
185
- $rootScope.$postUpdate(() => {
186
- postDigestCalled = true;
187
- fn();
188
- });
189
- }
190
- };
191
- }
192
-
193
- // Wait until all directive and route-related templates are downloaded and
194
- // compiled. The $templateRequest.totalPendingRequests variable keeps track of
195
- // all of the remote templates being currently downloaded. If there are no
196
- // templates currently downloading then the watcher will still fire anyway.
197
- $rootScope["templateRequest"] = $templateRequest;
198
- const deregisterWatch = $rootScope.$watch(
199
- "$templateRequest.totalPendingRequests",
200
- (val) => {
201
- if (val === 0) {
202
- deregisterWatch();
203
- $rootScope["$templateRequest"] = undefined;
204
- // Now that all templates have been downloaded, $animate will wait until
205
- // the post digest queue is empty before enabling animations. By having two
206
- // calls to $postDigest calls we can ensure that the flag is enabled at the
207
- // very end of the post digest queue. Since all of the animations in $animate
208
- // use $postDigest, it's important that the code below executes at the end.
209
- // This basically means that the page is fully downloaded and compiled before
210
- // any animations are triggered.
211
- $rootScope.$postUpdate(() => {
212
- $rootScope.$postUpdate(() => {
213
- // we check for null directly in the event that the application already called
214
- // .enabled() with whatever arguments that it provided it with
215
- if (animationsEnabled === null) {
216
- animationsEnabled = true;
217
- }
218
- });
219
- });
220
- }
221
- },
222
- true,
223
- );
224
-
225
- const callbackRegistry = Object.create(null);
226
-
227
- // remember that the `customFilter`/`classNameFilter` are set during the
228
- // provider/config stage therefore we can optimize here and setup helper functions
229
- const customFilter = $animateProvider.customFilter();
230
- const classNameFilter = $animateProvider.classNameFilter();
231
- const returnTrue = function () {
232
- return true;
233
- };
234
-
235
- const isAnimatableByFilter = customFilter || returnTrue;
236
- const isAnimatableClassName = !classNameFilter
237
- ? returnTrue
238
- : function (node, options) {
239
- const className = [
240
- node.getAttribute("class"),
241
- options.addClass,
242
- options.removeClass,
243
- ].join(" ");
244
- return classNameFilter.test(className);
245
- };
246
-
247
- const applyAnimationClasses = applyAnimationClassesFactory();
248
-
249
- function normalizeAnimationDetails(element, animation) {
250
- return mergeAnimationDetails(element, animation, {});
251
- }
252
-
253
- // IE9-11 has no method "contains" in SVG element and in Node.prototype. Bug #10259.
254
- const contains =
255
- window.Node.prototype.contains ||
256
- function (arg) {
257
- return this === arg || !!(this.compareDocumentPosition(arg) & 16);
258
- };
259
-
260
- function findCallbacks(targetParentNode, targetNode, event) {
261
- const matches = [];
262
- const entries = callbackRegistry[event];
263
- if (entries) {
264
- entries.forEach((entry) => {
265
- if (contains.call(entry.node, targetNode)) {
266
- matches.push(entry.callback);
267
- } else if (
268
- event === "leave" &&
269
- contains.call(entry.node, targetParentNode)
270
- ) {
271
- matches.push(entry.callback);
272
- }
273
- });
274
- }
275
-
276
- return matches;
277
- }
278
-
279
- function filterFromRegistry(list, matchContainer, matchCallback) {
280
- const containerNode = extractElementNode(matchContainer);
281
- return list.filter((entry) => {
282
- const isMatch =
283
- entry.node === containerNode &&
284
- (!matchCallback || entry.callback === matchCallback);
285
- return !isMatch;
286
- });
287
- }
288
-
289
- function cleanupEventListeners(phase, node) {
290
- if (phase === "close" && !node.parentNode) {
291
- // If the element is not attached to a parentNode, it has been removed by
292
- // the domOperation, and we can safely remove the event callbacks
293
- $animate.off(node);
294
- }
295
- }
296
-
297
- let $animate = {
298
- on(event, container, callback) {
299
- const node = extractElementNode(container);
300
- callbackRegistry[event] = callbackRegistry[event] || [];
301
- callbackRegistry[event].push({
302
- node,
303
- callback,
304
- });
305
-
306
- // Remove the callback when the element is removed from the DOM
307
- container.addEventListener("$destroy", () => {
308
- const animationDetails = activeAnimationsLookup.get(node);
309
-
310
- if (!animationDetails) {
311
- // If there's an animation ongoing, the callback calling code will remove
312
- // the event listeners. If we'd remove here, the callbacks would be removed
313
- // before the animation ends
314
- $animate.off(event, container, callback);
315
- }
316
- });
317
- },
318
-
319
- off(event, container, callback) {
320
- if (arguments.length === 1 && !isString(arguments[0])) {
321
- container = arguments[0];
322
- for (const eventType in callbackRegistry) {
323
- callbackRegistry[eventType] = filterFromRegistry(
324
- callbackRegistry[eventType],
325
- container,
326
- );
327
- }
328
-
329
- return;
330
- }
331
-
332
- const entries = callbackRegistry[event];
333
- if (!entries) return;
334
-
335
- callbackRegistry[event] =
336
- arguments.length === 1
337
- ? null
338
- : filterFromRegistry(entries, container, callback);
339
- },
340
-
341
- pin(element, parentElement) {
342
- assertArg(isElement(element), "element", "not an element");
343
- assertArg(
344
- isElement(parentElement),
345
- "parentElement",
346
- "not an element",
347
- );
348
- setCacheData(element, NG_ANIMATE_PIN_DATA, parentElement);
349
- },
350
-
351
- push(element, event, options, domOperation) {
352
- options = options || {};
353
- options.domOperation = domOperation;
354
- return queueAnimation(element, event, options);
355
- },
356
-
357
- // this method has four signatures:
358
- // () - global getter
359
- // (bool) - global setter
360
- // (element) - element getter
361
- // (element, bool) - element setter<F37>
362
- enabled(element, bool) {
363
- const argCount = arguments.length;
364
-
365
- if (argCount === 0) {
366
- // () - Global getter
367
- bool = !!animationsEnabled;
368
- } else {
369
- const hasElement = isElement(element);
370
-
371
- if (!hasElement) {
372
- // (bool) - Global setter
373
- bool = animationsEnabled = !!element;
374
- } else {
375
- const node = element;
376
-
377
- if (argCount === 1) {
378
- // (element) - Element getter
379
- bool = !disabledElementsLookup.get(node);
380
- } else {
381
- // (element, bool) - Element setter
382
- if (!disabledElementsLookup.has(node)) {
383
- // The element is added to the map for the first time.
384
- // Create a listener to remove it on `$destroy` (to avoid memory leak).
385
- element.addEventListener(
386
- "$destroy",
387
- removeFromDisabledElementsLookup,
388
- );
389
- }
390
- disabledElementsLookup.set(node, !bool);
391
- }
392
- }
393
- }
394
-
395
- return bool;
396
- },
397
- };
398
-
399
- return $animate;
400
-
401
- /**
402
- * @param {Element} originalElement
403
- * @param {string} event
404
- * @param {*} initialOptions
405
- * @returns void
406
- */
407
- function queueAnimation(originalElement, event, initialOptions) {
408
- // we always make a copy of the options since
409
- // there should never be any side effects on
410
- // the input data when running `$animateCss`.
411
- let options = initialOptions;
412
-
413
- // strip comments
414
-
415
- let element = Array.isArray(originalElement)
416
- ? originalElement.filter((x) => x.nodeName !== "#comment")[0]
417
- : originalElement;
418
- const node = element;
419
- const parentNode = node && node.parentNode;
420
-
421
- options = prepareAnimationOptions(options);
422
-
423
- // we create a fake runner with a working promise.
424
- // These methods will become available after the digest has passed
425
- const runner = new $$AnimateRunner();
426
-
427
- // this is used to trigger callbacks in postDigest mode
428
- const runInNextPostDigestOrNow = postDigestTaskFactory();
429
-
430
- if (Array.isArray(options.addClass)) {
431
- options.addClass = options.addClass.join(" ");
432
- }
433
-
434
- if (options.addClass && !isString(options.addClass)) {
435
- options.addClass = null;
436
- }
437
-
438
- if (Array.isArray(options.removeClass)) {
439
- options.removeClass = options.removeClass.join(" ");
440
- }
441
-
442
- if (options.removeClass && !isString(options.removeClass)) {
443
- options.removeClass = null;
444
- }
445
-
446
- if (options.from && !isObject(options.from)) {
447
- options.from = null;
448
- }
449
-
450
- if (options.to && !isObject(options.to)) {
451
- options.to = null;
452
- }
453
- // If animations are hard-disabled for the whole application there is no need to continue.
454
- // There are also situations where a directive issues an animation for a JQLite wrapper that
455
- // contains only comment nodes. In this case, there is no way we can perform an animation.
456
- if (
457
- // !animationsEnabled ||
458
- !node ||
459
- !isAnimatableByFilter(node, event, initialOptions) ||
460
- !isAnimatableClassName(node, options)
461
- ) {
462
- close();
463
- return runner;
464
- }
465
-
466
- const isStructural = ["enter", "move", "leave"].indexOf(event) >= 0;
467
-
468
- // This is a hard disable of all animations the element itself, therefore there is no need to
469
- // continue further past this point if not enabled
470
- // Animations are also disabled if the document is currently hidden (page is not visible
471
- // to the user), because browsers slow down or do not flush calls to requestAnimationFrame
472
- let skipAnimations =
473
- document.hidden || disabledElementsLookup.get(node);
474
- const existingAnimation =
475
- (!skipAnimations && activeAnimationsLookup.get(node)) || {};
476
- const hasExistingAnimation = !!existingAnimation.state;
477
- // there is no point in traversing the same collection of parent ancestors if a followup
478
- // animation will be run on the same element that already did all that checking work
479
- if (
480
- !skipAnimations &&
481
- (!hasExistingAnimation ||
482
- existingAnimation.state !== PRE_DIGEST_STATE)
483
- ) {
484
- skipAnimations = !areAnimationsAllowed(node, parentNode);
485
- }
486
-
487
- if (skipAnimations) {
488
- // Callbacks should fire even if the document is hidden (regression fix for issue #14120)
489
- if (document.hidden)
490
- notifyProgress(runner, event, "start", getEventData(options));
491
- close();
492
- if (document.hidden)
493
- notifyProgress(runner, event, "close", getEventData(options));
494
- return runner;
495
- }
496
-
497
- if (isStructural) {
498
- closeChildAnimations(node);
499
- }
500
-
501
- const newAnimation = {
502
- structural: isStructural,
503
- element,
504
- event,
505
- addClass: options.addClass,
506
- removeClass: options.removeClass,
507
- close,
508
- options,
509
- runner,
510
- };
511
-
512
- if (hasExistingAnimation) {
513
- const skipAnimationFlag = isAllowed(
514
- "skip",
515
- newAnimation,
516
- existingAnimation,
517
- );
518
- if (skipAnimationFlag) {
519
- if (existingAnimation.state === RUNNING_STATE) {
520
- close();
521
- return runner;
522
- }
523
- mergeAnimationDetails(element, existingAnimation, newAnimation);
524
- return existingAnimation.runner;
525
- }
526
- const cancelAnimationFlag = isAllowed(
527
- "cancel",
528
- newAnimation,
529
- existingAnimation,
530
- );
531
- if (cancelAnimationFlag) {
532
- if (existingAnimation.state === RUNNING_STATE) {
533
- // this will end the animation right away and it is safe
534
- // to do so since the animation is already running and the
535
- // runner callback code will run in async
536
- existingAnimation.runner.end();
537
- } else if (existingAnimation.structural) {
538
- // this means that the animation is queued into a digest, but
539
- // hasn't started yet. Therefore it is safe to run the close
540
- // method which will call the runner methods in async.
541
- existingAnimation.close();
542
- } else {
543
- // this will merge the new animation options into existing animation options
544
- mergeAnimationDetails(element, existingAnimation, newAnimation);
545
-
546
- return existingAnimation.runner;
547
- }
548
- } else {
549
- // a joined animation means that this animation will take over the existing one
550
- // so an example would involve a leave animation taking over an enter. Then when
551
- // the postDigest kicks in the enter will be ignored.
552
- const joinAnimationFlag = isAllowed(
553
- "join",
554
- newAnimation,
555
- existingAnimation,
556
- );
557
- if (joinAnimationFlag) {
558
- if (existingAnimation.state === RUNNING_STATE) {
559
- normalizeAnimationDetails(element, newAnimation);
560
- } else {
561
- applyGeneratedPreparationClasses(
562
- element,
563
- isStructural ? event : null,
564
- options,
565
- );
566
-
567
- event = newAnimation.event = existingAnimation.event;
568
- options = mergeAnimationDetails(
569
- element,
570
- existingAnimation,
571
- newAnimation,
572
- );
573
-
574
- // we return the same runner since only the option values of this animation will
575
- // be fed into the `existingAnimation`.
576
- return existingAnimation.runner;
577
- }
578
- }
579
- }
580
- } else {
581
- // normalization in this case means that it removes redundant CSS classes that
582
- // already exist (addClass) or do not exist (removeClass) on the element
583
- normalizeAnimationDetails(element, newAnimation);
584
- }
585
-
586
- // when the options are merged and cleaned up we may end up not having to do
587
- // an animation at all, therefore we should check this before issuing a post
588
- // digest callback. Structural animations will always run no matter what.
589
- let isValidAnimation = newAnimation.structural;
590
- if (!isValidAnimation) {
591
- // animate (from/to) can be quickly checked first, otherwise we check if any classes are present
592
- isValidAnimation =
593
- (newAnimation.event === "animate" &&
594
- Object.keys(newAnimation.options.to || {}).length > 0) ||
595
- hasAnimationClasses(newAnimation);
596
- }
597
-
598
- if (!isValidAnimation) {
599
- close();
600
- clearElementAnimationState(node);
601
- return runner;
602
- }
603
-
604
- // the counter keeps track of cancelled animations
605
- const counter = (existingAnimation.counter || 0) + 1;
606
- newAnimation.counter = counter;
607
-
608
- markElementAnimationState(node, PRE_DIGEST_STATE, newAnimation);
609
- $rootScope.$postUpdate(() => {
610
- // It is possible that the DOM nodes inside `originalElement` have been replaced. This can
611
- // happen if the animated element is a transcluded clone and also has a `templateUrl`
612
- // directive on it. Therefore, we must recreate `element` in order to interact with the
613
- // actual DOM nodes.
614
- // Note: We still need to use the old `node` for certain things, such as looking up in
615
- // HashMaps where it was used as the key.
616
-
617
- element = stripCommentsFromElement(originalElement);
618
-
619
- let animationDetails = activeAnimationsLookup.get(node);
620
- const animationCancelled = !animationDetails;
621
- animationDetails = animationDetails || {};
622
-
623
- // if addClass/removeClass is called before something like enter then the
624
- // registered parent element may not be present. The code below will ensure
625
- // that a final value for parent element is obtained
626
- const parentElement = element.parentElement || [];
627
-
628
- // animate/structural/class-based animations all have requirements. Otherwise there
629
- // is no point in performing an animation. The parent node must also be set.
630
- const isValidAnimation =
631
- parentElement &&
632
- (animationDetails.event === "animate" ||
633
- animationDetails.structural ||
634
- hasAnimationClasses(animationDetails));
635
-
636
- // this means that the previous animation was cancelled
637
- // even if the follow-up animation is the same event
638
- if (
639
- animationCancelled ||
640
- animationDetails.counter !== counter ||
641
- !isValidAnimation
642
- ) {
643
- // if another animation did not take over then we need
644
- // to make sure that the domOperation and options are
645
- // handled accordingly
646
- if (animationCancelled) {
647
- applyAnimationClasses(element, options);
648
- applyAnimationStyles(element, options);
649
- }
650
-
651
- // if the event changed from something like enter to leave then we do
652
- // it, otherwise if it's the same then the end result will be the same too
653
- if (
654
- animationCancelled ||
655
- (isStructural && animationDetails.event !== event)
656
- ) {
657
- options.domOperation();
658
- runner.end();
659
- }
660
-
661
- // in the event that the element animation was not cancelled or a follow-up animation
662
- // isn't allowed to animate from here then we need to clear the state of the element
663
- // so that any future animations won't read the expired animation data.
664
- if (!isValidAnimation) {
665
- clearElementAnimationState(node);
666
- }
667
-
668
- return;
669
- }
670
-
671
- // this combined multiple class to addClass / removeClass into a setClass event
672
- // so long as a structural event did not take over the animation
673
- event =
674
- !animationDetails.structural &&
675
- hasAnimationClasses(animationDetails, true)
676
- ? "setClass"
677
- : animationDetails.event;
678
-
679
- markElementAnimationState(node, RUNNING_STATE);
680
- const realRunner = $$animation(
681
- element,
682
- event,
683
- animationDetails.options,
684
- );
685
-
686
- // this will update the runner's flow-control events based on
687
- // the `realRunner` object.
688
- runner.setHost(realRunner);
689
- notifyProgress(runner, event, "start", getEventData(options));
690
-
691
- realRunner.done((status) => {
692
- close(!status);
693
- const animationDetails = activeAnimationsLookup.get(node);
694
- if (animationDetails && animationDetails.counter === counter) {
695
- clearElementAnimationState(node);
696
- }
697
- notifyProgress(runner, event, "close", getEventData(options));
698
- });
699
- });
700
-
701
- return runner;
702
-
703
- function notifyProgress(runner, event, phase, data) {
704
- runInNextPostDigestOrNow(() => {
705
- const callbacks = findCallbacks(parentNode, node, event);
706
- if (callbacks.length) {
707
- callbacks.forEach((callback) => {
708
- callback(element, phase, data);
709
- });
710
- cleanupEventListeners(phase, node);
711
- } else {
712
- cleanupEventListeners(phase, node);
713
- }
714
- });
715
- runner.progress(event, phase, data);
716
- }
717
-
718
- function close(reject) {
719
- clearGeneratedClasses(element, options);
720
- applyAnimationClasses(element, options);
721
- applyAnimationStyles(element, options);
722
- options.domOperation();
723
- runner.complete(!reject);
724
- }
725
- }
726
-
727
- function closeChildAnimations(node) {
728
- const children = node.querySelectorAll(`[${NG_ANIMATE_ATTR_NAME}]`);
729
- children.forEach((child) => {
730
- const state = parseInt(child.getAttribute(NG_ANIMATE_ATTR_NAME), 10);
731
- const animationDetails = activeAnimationsLookup.get(child);
732
- if (animationDetails) {
733
- switch (state) {
734
- case RUNNING_STATE:
735
- animationDetails.runner.end();
736
- /* falls through */
737
- case PRE_DIGEST_STATE:
738
- activeAnimationsLookup.delete(child);
739
- break;
740
- }
741
- }
742
- });
743
- }
744
-
745
- function clearElementAnimationState(node) {
746
- node.removeAttribute(NG_ANIMATE_ATTR_NAME);
747
- activeAnimationsLookup.delete(node);
748
- }
749
-
750
- /**
751
- * This fn returns false if any of the following is true:
752
- * a) animations on any parent element are disabled, and animations on the element aren't explicitly allowed
753
- * b) a parent element has an ongoing structural animation, and animateChildren is false
754
- * c) the element is not a child of the body
755
- * d) the element is not a child of the $rootElement
756
- */
757
- function areAnimationsAllowed(node, parentNode) {
758
- const bodyNode = document.body;
759
- const rootNode = $injector.get("$rootElement");
760
-
761
- let bodyNodeDetected = node === bodyNode || node.nodeName === "HTML";
762
- let rootNodeDetected = node === rootNode;
763
- let parentAnimationDetected = false;
764
- let elementDisabled = disabledElementsLookup.get(node);
765
- let animateChildren;
766
-
767
- let parentHost = getOrSetCacheData(node, NG_ANIMATE_PIN_DATA);
768
- if (parentHost) {
769
- parentNode = parentHost;
770
- }
771
-
772
- while (parentNode) {
773
- if (!rootNodeDetected) {
774
- // AngularTS doesn't want to attempt to animate elements outside of the application
775
- // therefore we need to ensure that the rootElement is an ancestor of the current element
776
- rootNodeDetected = parentNode === rootNode;
777
- }
778
-
779
- if (parentNode.nodeType !== Node.ELEMENT_NODE) {
780
- // no point in inspecting the #document element
781
- break;
782
- }
783
-
784
- const details = activeAnimationsLookup.get(parentNode) || {};
785
- // either an enter, leave or move animation will commence
786
- // therefore we can't allow any animations to take place
787
- // but if a parent animation is class-based then that's ok
788
- if (!parentAnimationDetected) {
789
- const parentNodeDisabled = disabledElementsLookup.get(parentNode);
790
-
791
- if (parentNodeDisabled === true && elementDisabled !== false) {
792
- // disable animations if the user hasn't explicitly enabled animations on the
793
- // current element
794
- elementDisabled = true;
795
- // element is disabled via parent element, no need to check anything else
796
- break;
797
- } else if (parentNodeDisabled === false) {
798
- elementDisabled = false;
799
- }
800
- parentAnimationDetected = details.structural;
801
- }
802
-
803
- if (isUndefined(animateChildren) || animateChildren === true) {
804
- const value = getOrSetCacheData(
805
- parentNode,
806
- NG_ANIMATE_CHILDREN_DATA,
807
- );
808
- if (isDefined(value)) {
809
- animateChildren = value;
810
- }
811
- }
812
-
813
- // there is no need to continue traversing at this point
814
- if (parentAnimationDetected && animateChildren === false) break;
815
-
816
- if (!bodyNodeDetected) {
817
- // we also need to ensure that the element is or will be a part of the body element
818
- // otherwise it is pointless to even issue an animation to be rendered
819
- bodyNodeDetected = parentNode === bodyNode;
820
- }
821
-
822
- if (bodyNodeDetected && rootNodeDetected) {
823
- // If both body and root have been found, any other checks are pointless,
824
- // as no animation data should live outside the application
825
- break;
826
- }
827
-
828
- if (!rootNodeDetected) {
829
- // If `rootNode` is not detected, check if `parentNode` is pinned to another element
830
- parentHost = getOrSetCacheData(parentNode, NG_ANIMATE_PIN_DATA);
831
- if (parentHost) {
832
- // The pin target element becomes the next parent element
833
- parentNode = parentHost;
834
- continue;
835
- }
836
- }
837
-
838
- parentNode = parentNode.parentNode;
839
- }
840
-
841
- const allowAnimation =
842
- (!parentAnimationDetected || animateChildren) &&
843
- elementDisabled !== true;
844
- return allowAnimation && rootNodeDetected && bodyNodeDetected;
845
- }
846
-
847
- function markElementAnimationState(node, state, details) {
848
- details = details || {};
849
- details.state = state;
850
-
851
- node.setAttribute(NG_ANIMATE_ATTR_NAME, state);
852
-
853
- const oldValue = activeAnimationsLookup.get(node);
854
- const newValue = oldValue ? extend(oldValue, details) : details;
855
- activeAnimationsLookup.set(node, newValue);
856
- }
857
- },
858
- ];
859
- }