@angular-wave/angular.ts 0.9.4 → 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 (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 +8 -1
  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,915 +0,0 @@
1
- import {
2
- getCacheData,
3
- removeElementData,
4
- setCacheData,
5
- } from "../shared/dom.js";
6
- import { isDefined } from "../shared/utils.js";
7
- import {
8
- ACTIVE_CLASS_SUFFIX,
9
- ADD_CLASS_SUFFIX,
10
- ANIMATION_DELAY_PROP,
11
- ANIMATION_DURATION_PROP,
12
- ANIMATION_ITERATION_COUNT_KEY,
13
- ANIMATION_PROP,
14
- ANIMATIONEND_EVENT,
15
- applyAnimationClassesFactory,
16
- applyAnimationFromStyles,
17
- applyAnimationStyles,
18
- applyAnimationToStyles,
19
- applyInlineStyle,
20
- blockKeyframeAnimations,
21
- DURATION_KEY,
22
- EVENT_CLASS_PREFIX,
23
- packageStyles,
24
- pendClasses,
25
- prepareAnimationOptions,
26
- PROPERTY_KEY,
27
- REMOVE_CLASS_SUFFIX,
28
- removeFromArray,
29
- SAFE_FAST_FORWARD_DURATION_VALUE,
30
- TIMING_KEY,
31
- TRANSITION_DELAY_PROP,
32
- TRANSITION_DURATION_PROP,
33
- TRANSITION_PROP,
34
- TRANSITIONEND_EVENT,
35
- } from "./shared.js";
36
-
37
- const ANIMATE_TIMER_KEY = "$$animateCss";
38
-
39
- const ONE_SECOND = 1000;
40
-
41
- const ELAPSED_TIME_MAX_DECIMAL_PLACES = 3;
42
- const CLOSING_TIME_BUFFER = 1.5;
43
-
44
- const DETECT_CSS_PROPERTIES = {
45
- transitionDuration: TRANSITION_DURATION_PROP,
46
- transitionDelay: TRANSITION_DELAY_PROP,
47
- transitionProperty: TRANSITION_PROP + PROPERTY_KEY,
48
- animationDuration: ANIMATION_DURATION_PROP,
49
- animationDelay: ANIMATION_DELAY_PROP,
50
- animationIterationCount: ANIMATION_PROP + ANIMATION_ITERATION_COUNT_KEY,
51
- };
52
-
53
- const DETECT_STAGGER_CSS_PROPERTIES = {
54
- transitionDuration: TRANSITION_DURATION_PROP,
55
- transitionDelay: TRANSITION_DELAY_PROP,
56
- animationDuration: ANIMATION_DURATION_PROP,
57
- animationDelay: ANIMATION_DELAY_PROP,
58
- };
59
-
60
- function getCssKeyframeDurationStyle(duration) {
61
- return [ANIMATION_DURATION_PROP, `${duration}s`];
62
- }
63
-
64
- function getCssDelayStyle(delay, isKeyframeAnimation) {
65
- const prop = isKeyframeAnimation
66
- ? ANIMATION_DELAY_PROP
67
- : TRANSITION_DELAY_PROP;
68
- return [prop, `${delay}s`];
69
- }
70
-
71
- function computeCssStyles(element, properties) {
72
- const styles = Object.create(null);
73
- const detectedStyles = window.getComputedStyle(element) || {};
74
- Object.entries(properties).forEach(([actualStyleName, formalStyleName]) => {
75
- let val = detectedStyles[formalStyleName];
76
- if (val) {
77
- const c = val.charAt(0);
78
-
79
- // only numerical-based values have a negative sign or digit as the first value
80
- if (c === "-" || c === "+" || c >= 0) {
81
- val = parseMaxTime(val);
82
- }
83
-
84
- // by setting this to null in the event that the delay is not set or is set directly as 0
85
- // then we can still allow for negative values to be used later on and not mistake this
86
- // value for being greater than any other negative value.
87
- if (val === 0) {
88
- val = null;
89
- }
90
- styles[actualStyleName] = val;
91
- }
92
- });
93
-
94
- return styles;
95
- }
96
-
97
- function parseMaxTime(str) {
98
- let maxValue = 0;
99
- str.split(/\s*,\s*/).forEach((value) => {
100
- // it's always safe to consider only second values and omit `ms` values since
101
- // getComputedStyle will always handle the conversion for us
102
- if (value.charAt(value.length - 1) === "s") {
103
- value = value.substring(0, value.length - 1);
104
- }
105
- value = parseFloat(value) || 0;
106
- maxValue = maxValue ? Math.max(value, maxValue) : value;
107
- });
108
- return maxValue;
109
- }
110
-
111
- function truthyTimingValue(val) {
112
- return val === 0 || val != null;
113
- }
114
-
115
- function getCssTransitionDurationStyle(duration, applyOnlyDuration) {
116
- let style = TRANSITION_PROP;
117
- let value = `${duration}s`;
118
- if (applyOnlyDuration) {
119
- style += DURATION_KEY;
120
- } else {
121
- value += " linear all";
122
- }
123
- return [style, value];
124
- }
125
-
126
- // we do not reassign an already present style value since
127
- // if we detect the style property value again we may be
128
- // detecting styles that were added via the `from` styles.
129
- // We make use of `isDefined` here since an empty string
130
- // or null value (which is what getPropertyValue will return
131
- // for a non-existing style) will still be marked as a valid
132
- // value for the style (a falsy value implies that the style
133
- // is to be removed at the end of the animation). If we had a simple
134
- // "OR" statement then it would not be enough to catch that.
135
- function registerRestorableStyles(backup, node, properties) {
136
- properties.forEach((prop) => {
137
- backup[prop] = isDefined(backup[prop])
138
- ? backup[prop]
139
- : node.style.getPropertyValue(prop);
140
- });
141
- }
142
-
143
- export function AnimateCssProvider() {
144
- this.$get = [
145
- "$$AnimateRunner",
146
- "$$animateCache",
147
- "$$rAFScheduler",
148
-
149
- /**
150
- *
151
- * @param {*} $$AnimateRunner
152
- * @param {*} $$animateCache
153
- * @param {import("./raf-scheduler").RafScheduler} $$rAFScheduler
154
- * @returns
155
- */
156
- function ($$AnimateRunner, $$animateCache, $$rAFScheduler) {
157
- const applyAnimationClasses = applyAnimationClassesFactory();
158
-
159
- function computeCachedCssStyles(
160
- node,
161
- cacheKey,
162
- allowNoDuration,
163
- properties,
164
- ) {
165
- let timings = $$animateCache.get(cacheKey);
166
-
167
- if (!timings) {
168
- timings = computeCssStyles(node, properties);
169
- if (timings.animationIterationCount === "infinite") {
170
- timings.animationIterationCount = 1;
171
- }
172
- }
173
-
174
- // if a css animation has no duration we
175
- // should mark that so that repeated addClass/removeClass calls are skipped
176
- const hasDuration =
177
- allowNoDuration ||
178
- timings.transitionDuration > 0 ||
179
- timings.animationDuration > 0;
180
-
181
- // we keep putting this in multiple times even though the value and the cacheKey are the same
182
- // because we're keeping an internal tally of how many duplicate animations are detected.
183
- $$animateCache.put(cacheKey, timings, hasDuration);
184
-
185
- return timings;
186
- }
187
-
188
- function computeCachedCssStaggerStyles(
189
- node,
190
- className,
191
- cacheKey,
192
- properties,
193
- ) {
194
- let stagger;
195
- const staggerCacheKey = `stagger-${cacheKey}`;
196
-
197
- // if we have one or more existing matches of matching elements
198
- // containing the same parent + CSS styles (which is how cacheKey works)
199
- // then staggering is possible
200
- if ($$animateCache.count(cacheKey) > 0) {
201
- stagger = $$animateCache.get(staggerCacheKey);
202
-
203
- if (!stagger) {
204
- const staggerClassName = pendClasses(className, "-stagger");
205
-
206
- node.className += ` ${staggerClassName}`;
207
- stagger = computeCssStyles(node, properties);
208
-
209
- // force the conversion of a null value to zero incase not set
210
- stagger.animationDuration = Math.max(stagger.animationDuration, 0);
211
- stagger.transitionDuration = Math.max(
212
- stagger.transitionDuration,
213
- 0,
214
- );
215
-
216
- node.classList.remove(staggerClassName);
217
-
218
- $$animateCache.put(staggerCacheKey, stagger, true);
219
- }
220
- }
221
-
222
- return stagger || {};
223
- }
224
-
225
- const rafWaitQueue = [];
226
- function waitUntilQuiet(callback) {
227
- rafWaitQueue.push(callback);
228
- $$rAFScheduler.waitUntilQuiet(() => {
229
- $$animateCache.flush();
230
-
231
- // DO NOT REMOVE THIS LINE OR REFACTOR OUT THE `pageWidth` variable.
232
- // the line below will force the browser to perform a repaint so
233
- // that all the animated elements within the animation frame will
234
- // be properly updated and drawn on screen. This is required to
235
- // ensure that the preparation animation is properly flushed so that
236
- // the active state picks up from there. DO NOT REMOVE THIS LINE.
237
- // DO NOT OPTIMIZE THIS LINE. THE MINIFIER WILL REMOVE IT OTHERWISE WHICH
238
- // WILL RESULT IN AN UNPREDICTABLE BUG THAT IS VERY HARD TO TRACK DOWN AND
239
- // WILL TAKE YEARS AWAY FROM YOUR LIFE.
240
-
241
- const pageWidth = document.body.offsetWidth + 1;
242
-
243
- // we use a for loop to ensure that if the queue is changed
244
- // during this looping then it will consider new requests
245
- for (let i = 0; i < rafWaitQueue.length; i++) {
246
- rafWaitQueue[i](pageWidth);
247
- }
248
- rafWaitQueue.length = 0;
249
- });
250
- }
251
-
252
- function computeTimings(node, cacheKey, allowNoDuration) {
253
- const timings = computeCachedCssStyles(
254
- node,
255
- cacheKey,
256
- allowNoDuration,
257
- DETECT_CSS_PROPERTIES,
258
- );
259
- const aD = timings.animationDelay;
260
- const tD = timings.transitionDelay;
261
- timings.maxDelay = aD && tD ? Math.max(aD, tD) : aD || tD;
262
- timings.maxDuration = Math.max(
263
- timings.animationDuration * timings.animationIterationCount,
264
- timings.transitionDuration,
265
- );
266
-
267
- return timings;
268
- }
269
-
270
- return function init(element, initialOptions) {
271
- // all of the animation functions should create
272
- // a copy of the options data, however, if a
273
- // parent service has already created a copy then
274
- let delayStyle;
275
- // we should stick to using that
276
- let options = initialOptions || {};
277
- if (!options.$$prepared) {
278
- options = prepareAnimationOptions(structuredClone(options));
279
- }
280
-
281
- const restoreStyles = {};
282
- const node = /** @type {HTMLElement} */ (element);
283
- // Note: this had an additional !$$animateQueue.enabled() check
284
- if (!node || !node.parentNode) {
285
- return closeAndReturnNoopAnimator();
286
- }
287
-
288
- const temporaryStyles = [];
289
- const styles = packageStyles(options);
290
- let animationClosed;
291
- let animationPaused;
292
- let animationCompleted;
293
- let runner;
294
- let runnerHost;
295
- let maxDelay;
296
- let maxDelayTime;
297
- let maxDuration;
298
- let maxDurationTime;
299
- let startTime;
300
- const events = [];
301
-
302
- if (options.duration === 0) {
303
- return closeAndReturnNoopAnimator();
304
- }
305
-
306
- const method =
307
- options.event && Array.isArray(options.event)
308
- ? options.event.join(" ")
309
- : options.event;
310
-
311
- const isStructural = method && options.structural;
312
- let structuralClassName = "";
313
- let addRemoveClassName = "";
314
-
315
- if (isStructural) {
316
- structuralClassName = pendClasses(method, EVENT_CLASS_PREFIX, true);
317
- } else if (method) {
318
- structuralClassName = method;
319
- }
320
-
321
- if (options.addClass) {
322
- addRemoveClassName += pendClasses(options.addClass, ADD_CLASS_SUFFIX);
323
- }
324
-
325
- if (options.removeClass) {
326
- if (addRemoveClassName.length) {
327
- addRemoveClassName += " ";
328
- }
329
- addRemoveClassName += pendClasses(
330
- options.removeClass,
331
- REMOVE_CLASS_SUFFIX,
332
- );
333
- }
334
-
335
- // there may be a situation where a structural animation is combined together
336
- // with CSS classes that need to resolve before the animation is computed.
337
- // However this means that there is no explicit CSS code to block the animation
338
- // from happening (by setting 0s none in the class name). If this is the case
339
- // we need to apply the classes before the first rAF so we know to continue if
340
- // there actually is a detected transition or keyframe animation
341
- if (options.applyClassesEarly && addRemoveClassName.length) {
342
- applyAnimationClasses(element, options);
343
- }
344
-
345
- let preparationClasses = [structuralClassName, addRemoveClassName]
346
- .join(" ")
347
- .trim();
348
- const hasToStyles = styles.to && Object.keys(styles.to).length > 0;
349
- const containsKeyframeAnimation =
350
- (options.keyframeStyle || "").length > 0;
351
-
352
- // there is no way we can trigger an animation if no styles and
353
- // no classes are being applied which would then trigger a transition,
354
- // unless there a is raw keyframe value that is applied to the element.
355
- if (!containsKeyframeAnimation && !hasToStyles && !preparationClasses) {
356
- return closeAndReturnNoopAnimator();
357
- }
358
-
359
- let stagger;
360
- let cacheKey = $$animateCache.cacheKey(
361
- node,
362
- method,
363
- options.addClass,
364
- options.removeClass,
365
- );
366
- if ($$animateCache.containsCachedAnimationWithoutDuration(cacheKey)) {
367
- preparationClasses = null;
368
- return closeAndReturnNoopAnimator();
369
- }
370
-
371
- if (options.stagger > 0) {
372
- const staggerVal = parseFloat(options.stagger);
373
- stagger = {
374
- transitionDelay: staggerVal,
375
- animationDelay: staggerVal,
376
- transitionDuration: 0,
377
- animationDuration: 0,
378
- };
379
- } else {
380
- stagger = computeCachedCssStaggerStyles(
381
- node,
382
- preparationClasses,
383
- cacheKey,
384
- DETECT_STAGGER_CSS_PROPERTIES,
385
- );
386
- }
387
-
388
- if (!options.$$skipPreparationClasses) {
389
- element.classList.add(
390
- ...preparationClasses.split(" ").filter((x) => x !== ""),
391
- );
392
- }
393
-
394
- let applyOnlyDuration;
395
-
396
- if (options.transitionStyle) {
397
- const transitionStyle = [TRANSITION_PROP, options.transitionStyle];
398
- applyInlineStyle(node, transitionStyle);
399
- temporaryStyles.push(transitionStyle);
400
- }
401
-
402
- if (options.duration >= 0) {
403
- applyOnlyDuration = node.style[TRANSITION_PROP].length > 0;
404
- const durationStyle = getCssTransitionDurationStyle(
405
- options.duration,
406
- applyOnlyDuration,
407
- );
408
-
409
- // we set the duration so that it will be picked up by getComputedStyle later
410
- applyInlineStyle(node, durationStyle);
411
-
412
- temporaryStyles.push(durationStyle);
413
- }
414
-
415
- if (options.keyframeStyle) {
416
- const keyframeStyle = [ANIMATION_PROP, options.keyframeStyle];
417
- applyInlineStyle(node, keyframeStyle);
418
- temporaryStyles.push(keyframeStyle);
419
- }
420
-
421
- const itemIndex = stagger
422
- ? options.staggerIndex >= 0
423
- ? options.staggerIndex
424
- : $$animateCache.count(cacheKey)
425
- : 0;
426
-
427
- const isFirst = itemIndex === 0;
428
-
429
- // this is a pre-emptive way of forcing the setup classes to be added and applied INSTANTLY
430
- // without causing any combination of transitions to kick in. By adding a negative delay value
431
- // it forces the setup class' transition to end immediately. We later then remove the negative
432
- // transition delay to allow for the transition to naturally do it's thing. The beauty here is
433
- // that if there is no transition defined then nothing will happen and this will also allow
434
- // other transitions to be stacked on top of each other without any chopping them out.
435
- if (isFirst && !options.skipBlocking) {
436
- blockTransitions(node, SAFE_FAST_FORWARD_DURATION_VALUE);
437
- }
438
-
439
- let timings = computeTimings(node, cacheKey, !isStructural);
440
- let relativeDelay = timings.maxDelay;
441
- maxDelay = Math.max(relativeDelay, 0);
442
- maxDuration = timings.maxDuration;
443
-
444
- const flags = {};
445
- flags.hasTransitions = timings.transitionDuration > 0;
446
- flags.hasAnimations = timings.animationDuration > 0;
447
- flags.hasTransitionAll =
448
- flags.hasTransitions && timings.transitionProperty === "all";
449
- flags.applyTransitionDuration =
450
- hasToStyles &&
451
- ((flags.hasTransitions && !flags.hasTransitionAll) ||
452
- (flags.hasAnimations && !flags.hasTransitions));
453
- flags.applyAnimationDuration = options.duration && flags.hasAnimations;
454
- flags.applyTransitionDelay =
455
- truthyTimingValue(options.delay) &&
456
- (flags.applyTransitionDuration || flags.hasTransitions);
457
- flags.applyAnimationDelay =
458
- truthyTimingValue(options.delay) && flags.hasAnimations;
459
- flags.recalculateTimingStyles = addRemoveClassName.length > 0;
460
-
461
- if (flags.applyTransitionDuration || flags.applyAnimationDuration) {
462
- maxDuration = options.duration
463
- ? parseFloat(options.duration)
464
- : maxDuration;
465
-
466
- if (flags.applyTransitionDuration) {
467
- flags.hasTransitions = true;
468
- timings.transitionDuration = maxDuration;
469
- applyOnlyDuration =
470
- node.style[TRANSITION_PROP + PROPERTY_KEY].length > 0;
471
- temporaryStyles.push(
472
- getCssTransitionDurationStyle(maxDuration, applyOnlyDuration),
473
- );
474
- }
475
-
476
- if (flags.applyAnimationDuration) {
477
- flags.hasAnimations = true;
478
- timings.animationDuration = maxDuration;
479
- temporaryStyles.push(getCssKeyframeDurationStyle(maxDuration));
480
- }
481
- }
482
-
483
- if (maxDuration === 0 && !flags.recalculateTimingStyles) {
484
- return closeAndReturnNoopAnimator();
485
- }
486
-
487
- let activeClasses = pendClasses(
488
- preparationClasses,
489
- ACTIVE_CLASS_SUFFIX,
490
- );
491
-
492
- if (options.delay != null) {
493
- if (typeof options.delay !== "boolean") {
494
- delayStyle = parseFloat(options.delay);
495
- // number in options.delay means we have to recalculate the delay for the closing timeout
496
- maxDelay = Math.max(delayStyle, 0);
497
- }
498
-
499
- if (flags.applyTransitionDelay) {
500
- temporaryStyles.push(getCssDelayStyle(delayStyle));
501
- }
502
-
503
- if (flags.applyAnimationDelay) {
504
- temporaryStyles.push(getCssDelayStyle(delayStyle, true));
505
- }
506
- }
507
-
508
- // we need to recalculate the delay value since we used a pre-emptive negative
509
- // delay value and the delay value is required for the final event checking. This
510
- // property will ensure that this will happen after the RAF phase has passed.
511
- if (options.duration == null && timings.transitionDuration > 0) {
512
- flags.recalculateTimingStyles =
513
- flags.recalculateTimingStyles || isFirst;
514
- }
515
-
516
- maxDelayTime = maxDelay * ONE_SECOND;
517
- maxDurationTime = maxDuration * ONE_SECOND;
518
- if (!options.skipBlocking) {
519
- flags.blockTransition = timings.transitionDuration > 0;
520
- flags.blockKeyframeAnimation =
521
- timings.animationDuration > 0 &&
522
- stagger.animationDelay > 0 &&
523
- stagger.animationDuration === 0;
524
- }
525
-
526
- if (options.from) {
527
- if (options.cleanupStyles) {
528
- registerRestorableStyles(
529
- restoreStyles,
530
- node,
531
- Object.keys(options.from),
532
- );
533
- }
534
- applyAnimationFromStyles(element, options);
535
- }
536
-
537
- if (flags.blockTransition || flags.blockKeyframeAnimation) {
538
- applyBlocking(maxDuration);
539
- } else if (!options.skipBlocking) {
540
- blockTransitions(node, false);
541
- }
542
-
543
- // TODO(matsko): for 1.5 change this code to have an animator object for better debugging
544
- return {
545
- $$willAnimate: true,
546
- end: endFn,
547
- start() {
548
- if (animationClosed) return;
549
-
550
- runnerHost = {
551
- end: endFn,
552
- cancel: cancelFn,
553
- resume: null, // this will be set during the start() phase
554
- pause: null,
555
- };
556
-
557
- runner = new $$AnimateRunner(runnerHost);
558
-
559
- waitUntilQuiet(start);
560
-
561
- // we don't have access to pause/resume the animation
562
- // since it hasn't run yet. AnimateRunner will therefore
563
- // set noop functions for resume and pause and they will
564
- // later be overridden once the animation is triggered
565
- return runner;
566
- },
567
- };
568
-
569
- function endFn() {
570
- close();
571
- }
572
-
573
- function cancelFn() {
574
- close(true);
575
- }
576
-
577
- function close(rejected) {
578
- // if the promise has been called already then we shouldn't close
579
- // the animation again
580
- if (animationClosed || (animationCompleted && animationPaused))
581
- return;
582
- animationClosed = true;
583
- animationPaused = false;
584
-
585
- if (preparationClasses && !options.$$skipPreparationClasses) {
586
- element.classList.remove(...preparationClasses.split(" "));
587
- }
588
- activeClasses = pendClasses(preparationClasses, ACTIVE_CLASS_SUFFIX);
589
- if (activeClasses) {
590
- element.classList.remove(...activeClasses.split(" "));
591
- }
592
-
593
- blockKeyframeAnimations(node, false);
594
- blockTransitions(node, false);
595
-
596
- temporaryStyles.forEach((entry) => {
597
- // There is only one way to remove inline style properties entirely from elements.
598
- // By using `removeProperty` this works, but we need to convert camel-cased CSS
599
- // styles down to hyphenated values.
600
- node.style[entry[0]] = "";
601
- });
602
-
603
- applyAnimationClasses(element, options);
604
- applyAnimationStyles(element, options);
605
-
606
- if (Object.keys(restoreStyles).length) {
607
- Object.entries(restoreStyles).forEach(([prop, value]) => {
608
- if (value) {
609
- node.style.setProperty(prop, value);
610
- } else {
611
- node.style.removeProperty(prop);
612
- }
613
- });
614
- }
615
-
616
- // the reason why we have this option is to allow a synchronous closing callback
617
- // that is fired as SOON as the animation ends (when the CSS is removed) or if
618
- // the animation never takes off at all. A good example is a leave animation since
619
- // the element must be removed just after the animation is over or else the element
620
- // will appear on screen for one animation frame causing an overbearing flicker.
621
- if (options.onDone) {
622
- options.onDone();
623
- }
624
-
625
- if (events && events.length) {
626
- // Remove the transitionend / animationend listener(s)
627
- element.off(events.join(" "), onAnimationProgress);
628
- }
629
-
630
- // Cancel the fallback closing timeout and remove the timer data
631
- const animationTimerData = getCacheData(element, ANIMATE_TIMER_KEY);
632
- if (animationTimerData) {
633
- clearTimeout(animationTimerData[0].timer);
634
- removeElementData(element, ANIMATE_TIMER_KEY);
635
- }
636
-
637
- // if the preparation function fails then the promise is not setup
638
- if (runner) {
639
- runner.complete(!rejected);
640
- }
641
- }
642
-
643
- function applyBlocking(duration) {
644
- if (flags.blockTransition) {
645
- blockTransitions(node, duration);
646
- }
647
-
648
- if (flags.blockKeyframeAnimation) {
649
- blockKeyframeAnimations(node, !!duration);
650
- }
651
- }
652
-
653
- function closeAndReturnNoopAnimator() {
654
- runner = new $$AnimateRunner({
655
- end: endFn,
656
- cancel: cancelFn,
657
- });
658
-
659
- // should flush the cache animation
660
- waitUntilQuiet(() => {});
661
- close();
662
-
663
- return {
664
- $$willAnimate: false,
665
- start() {
666
- return runner;
667
- },
668
- end: endFn,
669
- };
670
- }
671
-
672
- function onAnimationProgress(event) {
673
- event.stopPropagation();
674
- const ev = event.originalEvent || event;
675
-
676
- if (ev.target !== node) {
677
- // Since TransitionEvent / AnimationEvent bubble up,
678
- // we have to ignore events by finished child animations
679
- return;
680
- }
681
-
682
- // we now always use `Date.now()` due to the recent changes with
683
- // event.timeStamp in Firefox, Webkit and Chrome (see #13494 for more info)
684
- const timeStamp = ev.$manualTimeStamp || Date.now();
685
-
686
- /* Firefox (or possibly just Gecko) likes to not round values up
687
- * when a ms measurement is used for the animation */
688
- const elapsedTime = parseFloat(
689
- ev.elapsedTime.toFixed(ELAPSED_TIME_MAX_DECIMAL_PLACES),
690
- );
691
-
692
- /* $manualTimeStamp is a mocked timeStamp value which is set
693
- * within browserTrigger(). This is only here so that tests can
694
- * mock animations properly. Real events fallback to event.timeStamp,
695
- * or, if they don't, then a timeStamp is automatically created for them.
696
- * We're checking to see if the timeStamp surpasses the expected delay,
697
- * but we're using elapsedTime instead of the timeStamp on the 2nd
698
- * pre-condition since animationPauseds sometimes close off early */
699
- if (
700
- Math.max(timeStamp - startTime, 0) >= maxDelayTime &&
701
- elapsedTime >= maxDuration
702
- ) {
703
- // we set this flag to ensure that if the transition is paused then, when resumed,
704
- // the animation will automatically close itself since transitions cannot be paused.
705
- animationCompleted = true;
706
- close();
707
- }
708
- }
709
-
710
- function start() {
711
- if (animationClosed) return;
712
- if (!node.parentNode) {
713
- close();
714
- return;
715
- }
716
-
717
- // even though we only pause keyframe animations here the pause flag
718
- // will still happen when transitions are used. Only the transition will
719
- // not be paused since that is not possible. If the animation ends when
720
- // paused then it will not complete until unpaused or cancelled.
721
- const playPause = function (playAnimation) {
722
- if (!animationCompleted) {
723
- animationPaused = !playAnimation;
724
- if (timings.animationDuration) {
725
- const value = blockKeyframeAnimations(node, animationPaused);
726
- if (animationPaused) {
727
- temporaryStyles.push(value);
728
- } else {
729
- removeFromArray(temporaryStyles, value);
730
- }
731
- }
732
- } else if (animationPaused && playAnimation) {
733
- animationPaused = false;
734
- close();
735
- }
736
- };
737
-
738
- // checking the stagger duration prevents an accidentally cascade of the CSS delay style
739
- // being inherited from the parent. If the transition duration is zero then we can safely
740
- // rely that the delay value is an intentional stagger delay style.
741
- const maxStagger =
742
- itemIndex > 0 &&
743
- ((timings.transitionDuration && stagger.transitionDuration === 0) ||
744
- (timings.animationDuration && stagger.animationDuration === 0)) &&
745
- Math.max(stagger.animationDelay, stagger.transitionDelay);
746
- if (maxStagger) {
747
- setTimeout(
748
- triggerAnimationStart,
749
- Math.floor(maxStagger * itemIndex * ONE_SECOND),
750
- false,
751
- );
752
- } else {
753
- triggerAnimationStart();
754
- }
755
-
756
- // this will decorate the existing promise runner with pause/resume methods
757
- runnerHost.resume = function () {
758
- playPause(true);
759
- };
760
-
761
- runnerHost.pause = function () {
762
- playPause(false);
763
- };
764
-
765
- function triggerAnimationStart() {
766
- // just incase a stagger animation kicks in when the animation
767
- // itself was cancelled entirely
768
- if (animationClosed) return;
769
-
770
- applyBlocking(false);
771
-
772
- temporaryStyles.forEach((entry) => {
773
- const key = entry[0];
774
- node.style[key] = entry[1];
775
- });
776
-
777
- applyAnimationClasses(element, options);
778
- element.classList.add(
779
- ...activeClasses.split(" ").filter((x) => x !== ""),
780
- );
781
- if (flags.recalculateTimingStyles) {
782
- cacheKey = $$animateCache.cacheKey(
783
- node,
784
- method,
785
- options.addClass,
786
- options.removeClass,
787
- );
788
-
789
- timings = computeTimings(node, cacheKey, false);
790
- relativeDelay = timings.maxDelay;
791
- maxDelay = Math.max(relativeDelay, 0);
792
- maxDuration = timings.maxDuration;
793
-
794
- if (maxDuration === 0) {
795
- close();
796
- return;
797
- }
798
-
799
- flags.hasTransitions = timings.transitionDuration > 0;
800
- flags.hasAnimations = timings.animationDuration > 0;
801
- }
802
-
803
- if (flags.applyAnimationDelay) {
804
- relativeDelay =
805
- typeof options.delay !== "boolean" &&
806
- truthyTimingValue(options.delay)
807
- ? parseFloat(options.delay)
808
- : relativeDelay;
809
-
810
- maxDelay = Math.max(relativeDelay, 0);
811
- timings.animationDelay = relativeDelay;
812
- delayStyle = getCssDelayStyle(relativeDelay, true);
813
- temporaryStyles.push(delayStyle);
814
- node.style[delayStyle[0]] = delayStyle[1];
815
- }
816
-
817
- maxDelayTime = maxDelay * ONE_SECOND;
818
- maxDurationTime = maxDuration * ONE_SECOND;
819
-
820
- if (options.easing) {
821
- let easeProp;
822
- const easeVal = options.easing;
823
- if (flags.hasTransitions) {
824
- easeProp = TRANSITION_PROP + TIMING_KEY;
825
- temporaryStyles.push([easeProp, easeVal]);
826
- node.style[easeProp] = easeVal;
827
- }
828
- if (flags.hasAnimations) {
829
- easeProp = ANIMATION_PROP + TIMING_KEY;
830
- temporaryStyles.push([easeProp, easeVal]);
831
- node.style[easeProp] = easeVal;
832
- }
833
- }
834
-
835
- if (timings.transitionDuration) {
836
- events.push(TRANSITIONEND_EVENT);
837
- }
838
-
839
- if (timings.animationDuration) {
840
- events.push(ANIMATIONEND_EVENT);
841
- }
842
-
843
- startTime = Date.now();
844
- const timerTime =
845
- maxDelayTime + CLOSING_TIME_BUFFER * maxDurationTime;
846
- const endTime = startTime + timerTime;
847
-
848
- const animationsData =
849
- getCacheData(element, ANIMATE_TIMER_KEY) || [];
850
- let setupFallbackTimer = true;
851
- if (animationsData.length) {
852
- const currentTimerData = animationsData[0];
853
- setupFallbackTimer = endTime > currentTimerData.expectedEndTime;
854
- if (setupFallbackTimer) {
855
- clearTimeout(currentTimerData.timer);
856
- } else {
857
- animationsData.push(close);
858
- }
859
- }
860
-
861
- if (setupFallbackTimer) {
862
- const timer = setTimeout(onAnimationExpired, timerTime, false);
863
- animationsData[0] = {
864
- timer,
865
- expectedEndTime: endTime,
866
- };
867
- animationsData.push(close);
868
- setCacheData(element, ANIMATE_TIMER_KEY, animationsData);
869
- }
870
-
871
- if (events.length) {
872
- events.forEach((x) => {
873
- element.addEventListener(x, onAnimationProgress);
874
- });
875
- }
876
-
877
- if (options.to) {
878
- if (options.cleanupStyles) {
879
- registerRestorableStyles(
880
- restoreStyles,
881
- node,
882
- Object.keys(options.to),
883
- );
884
- }
885
- applyAnimationToStyles(element, options);
886
- }
887
- }
888
-
889
- function onAnimationExpired() {
890
- const animationsData = getCacheData(element, ANIMATE_TIMER_KEY);
891
-
892
- // this will be false in the event that the element was
893
- // removed from the DOM (via a leave animation or something
894
- // similar)
895
- if (animationsData) {
896
- for (let i = 1; i < animationsData.length; i++) {
897
- animationsData[i]();
898
- }
899
- removeElementData(element, ANIMATE_TIMER_KEY);
900
- }
901
- }
902
- }
903
- };
904
- },
905
- ];
906
- }
907
-
908
- function blockTransitions(node, duration) {
909
- // we use a negative delay value since it performs blocking
910
- // yet it doesn't kill any existing transitions running on the
911
- // same element which makes this safe for class-based animations
912
- const value = duration ? `-${duration}s` : "";
913
- applyInlineStyle(node, [TRANSITION_DELAY_PROP, value]);
914
- return [TRANSITION_DELAY_PROP, value];
915
- }