@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.
- package/@types/index.d.ts +1 -84
- package/{src/index.ts → @types/namespace.d.ts} +4 -24
- package/@types/router/template-factory.d.ts +2 -2
- package/dist/angular-ts.esm.js +3 -3
- package/dist/angular-ts.umd.js +3 -3
- package/dist/angular-ts.umd.min.js +1 -1
- package/package.json +9 -2
- package/.github/workflows/ci.yml +0 -104
- package/.github/workflows/gh-pages.yml +0 -75
- package/.husky/pre-commit +0 -5
- package/.prettierignore +0 -9
- package/CHANGELOG.md +0 -17667
- package/CODE_OF_CONDUCT.md +0 -3
- package/CONTRIBUTING.md +0 -247
- package/DEVELOPERS.md +0 -499
- package/Makefile +0 -60
- package/RELEASE.md +0 -86
- package/TRIAGING.md +0 -127
- package/docs/.cspell.yml +0 -8
- package/docs/.github/dependabot.yml +0 -14
- package/docs/.nvmrc +0 -1
- package/docs/CONTRIBUTING.md +0 -28
- package/docs/Dockerfile +0 -4
- package/docs/LICENSE +0 -201
- package/docs/README.md +0 -217
- package/docs/assets/icons/logo.svg +0 -1
- package/docs/assets/scss/_variables_project.scss +0 -12
- package/docs/assets/scss/_variables_project_after_bs.scss +0 -8
- package/docs/assets/scss/index.scss +0 -48
- package/docs/config.yaml +0 -15
- package/docs/content/_index.md +0 -28
- package/docs/content/docs/_index.md +0 -61
- package/docs/content/docs/directive/_index.md +0 -4
- package/docs/content/docs/directive/app.md +0 -11
- package/docs/content/docs/directive/aria.md +0 -0
- package/docs/content/docs/directive/bind.md +0 -72
- package/docs/content/docs/directive/blur.md +0 -38
- package/docs/content/docs/directive/channel.md +0 -37
- package/docs/content/docs/directive/class-even.md +0 -47
- package/docs/content/docs/directive/class-odd.md +0 -48
- package/docs/content/docs/directive/class.md +0 -64
- package/docs/content/docs/directive/click.md +0 -41
- package/docs/content/docs/directive/cloak.md +0 -74
- package/docs/content/docs/directive/copy.md +0 -38
- package/docs/content/docs/directive/cut.md +0 -40
- package/docs/content/docs/directive/dblclick.md +0 -41
- package/docs/content/docs/directive/focus.md +0 -38
- package/docs/content/docs/directive/get.md +0 -203
- package/docs/content/docs/directive/include.md +0 -7
- package/docs/content/docs/directive/keydown.md +0 -38
- package/docs/content/docs/directive/keyup.md +0 -38
- package/docs/content/docs/directive/load.md +0 -43
- package/docs/content/docs/directive/mousedown.md +0 -38
- package/docs/content/docs/directive/mouseenter.md +0 -38
- package/docs/content/docs/directive/mouseleave.md +0 -38
- package/docs/content/docs/directive/mousemove.md +0 -38
- package/docs/content/docs/directive/mouseout.md +0 -38
- package/docs/content/docs/directive/mouseover.md +0 -38
- package/docs/content/docs/directive/mouseup.md +0 -38
- package/docs/content/docs/directive/non-bindable.md +0 -28
- package/docs/content/docs/filter/_index.md +0 -4
- package/docs/content/docs/filter/filter.md +0 -78
- package/docs/content/docs/filter/json.md +0 -19
- package/docs/content/docs/filter/limit-to.md +0 -30
- package/docs/content/docs/filter/order-by.md +0 -123
- package/docs/content/docs/provider/_index.md +0 -4
- package/docs/content/docs/provider/eventBusProvider.md +0 -35
- package/docs/content/docs/provider/locationProvider.md +0 -26
- package/docs/content/docs/provider/logProvider.md +0 -59
- package/docs/content/docs/provider/sceProvider.md +0 -194
- package/docs/content/docs/provider/templateCacheProvider.md +0 -100
- package/docs/content/docs/provider/templateRequestProvider.md +0 -5
- package/docs/content/docs/service/_index.md +0 -4
- package/docs/content/docs/service/compile.md +0 -5
- package/docs/content/docs/service/controller.md +0 -5
- package/docs/content/docs/service/eventBus.md +0 -56
- package/docs/content/docs/service/http.md +0 -161
- package/docs/content/docs/service/interpolation.md +0 -5
- package/docs/content/docs/service/location.md +0 -57
- package/docs/content/docs/service/log.md +0 -113
- package/docs/content/docs/service/parse.md +0 -5
- package/docs/content/docs/service/rootElement.md +0 -5
- package/docs/content/docs/service/rootScope.md +0 -5
- package/docs/content/docs/service/sce.md +0 -194
- package/docs/content/docs/service/templateCache.md +0 -64
- package/docs/content/docs/service/templateRequest.md +0 -5
- package/docs/content/docs/service/url.md +0 -5
- package/docs/content/docs/values/_index.md +0 -4
- package/docs/content/docs/values/document.md +0 -29
- package/docs/content/docs/values/window.md +0 -29
- package/docs/docker-compose.yaml +0 -12
- package/docs/docsy.work +0 -5
- package/docs/docsy.work.sum +0 -0
- package/docs/go.mod +0 -5
- package/docs/go.sum +0 -6
- package/docs/hugo-disabled.toml +0 -220
- package/docs/hugo.yaml +0 -200
- package/docs/layouts/404.html +0 -13
- package/docs/layouts/_markup/render-heading.html +0 -1
- package/docs/layouts/partials/hooks/head-end.html +0 -3
- package/docs/layouts/shortcodes/showcss.html +0 -2
- package/docs/layouts/shortcodes/showhtml.html +0 -2
- package/docs/layouts/shortcodes/showjs.html +0 -2
- package/docs/layouts/shortcodes/showraw.html +0 -1
- package/docs/layouts/shortcodes/version.html +0 -1
- package/docs/package-lock.json +0 -2293
- package/docs/package.json +0 -53
- package/docs/static/examples/counter/counter-test.html +0 -13
- package/docs/static/examples/counter/counter.html +0 -5
- package/docs/static/examples/counter/counter.test.js +0 -28
- package/docs/static/examples/document/document.html +0 -3
- package/docs/static/examples/eventbus/eventbus-test.html +0 -15
- package/docs/static/examples/eventbus/eventbus.html +0 -13
- package/docs/static/examples/eventbus/eventbus.js +0 -15
- package/docs/static/examples/eventbus/eventbus.test.js +0 -19
- package/docs/static/examples/i18n/i18n.html +0 -77
- package/docs/static/examples/ng-bind/ng-bind.html +0 -9
- package/docs/static/examples/ng-blur/ng-blur.html +0 -9
- package/docs/static/examples/ng-channel/ng-channel-test.html +0 -17
- package/docs/static/examples/ng-channel/ng-channel.html +0 -24
- package/docs/static/examples/ng-channel/ng-channel.test.js +0 -31
- package/docs/static/examples/ng-class/ng-class.html +0 -71
- package/docs/static/examples/ng-class-even/ng-class-even.html +0 -8
- package/docs/static/examples/ng-class-odd/ng-class-odd.html +0 -8
- package/docs/static/examples/ng-click/ng-click.html +0 -6
- package/docs/static/examples/ng-copy/ng-copy.html +0 -6
- package/docs/static/examples/ng-cut/ng-cut.html +0 -6
- package/docs/static/examples/ng-dblclick/ng-dblclick.html +0 -10
- package/docs/static/examples/ng-focus/ng-focus.html +0 -9
- package/docs/static/examples/ng-keydown/ng-keydown.html +0 -9
- package/docs/static/examples/ng-keyup/ng-keyup.html +0 -9
- package/docs/static/examples/ng-load/ng-load.html +0 -8
- package/docs/static/examples/ng-mousedown/ng-mousedown.html +0 -6
- package/docs/static/examples/ng-mouseenter/ng-mouseenter.html +0 -4
- package/docs/static/examples/ng-mouseleave/ng-mouseleave.html +0 -4
- package/docs/static/examples/ng-mousemove/ng-mousemove.html +0 -4
- package/docs/static/examples/ng-mouseout/ng-mouseout.html +0 -4
- package/docs/static/examples/ng-mouseover/ng-mouseover.html +0 -4
- package/docs/static/examples/ng-mouseup/ng-mouseup.html +0 -4
- package/docs/static/examples/ng-non-bindable/ng-non-bindable-test.html +0 -13
- package/docs/static/examples/ng-non-bindable/ng-non-bindable.html +0 -3
- package/docs/static/examples/ng-non-bindable/ng-non-bindable.test.js +0 -11
- package/docs/static/examples/window/window.html +0 -4
- package/docs/static/typedoc/.nojekyll +0 -1
- package/docs/static/typedoc/assets/hierarchy.js +0 -1
- package/docs/static/typedoc/assets/highlight.css +0 -29
- package/docs/static/typedoc/assets/icons.js +0 -18
- package/docs/static/typedoc/assets/icons.svg +0 -1
- package/docs/static/typedoc/assets/main.js +0 -60
- package/docs/static/typedoc/assets/navigation.js +0 -1
- package/docs/static/typedoc/assets/search.js +0 -1
- package/docs/static/typedoc/assets/style.css +0 -1633
- package/docs/static/typedoc/classes/Location.html +0 -55
- package/docs/static/typedoc/classes/LocationProvider.html +0 -20
- package/docs/static/typedoc/classes/LogProvider.html +0 -6
- package/docs/static/typedoc/classes/PubSub.html +0 -71
- package/docs/static/typedoc/classes/PubSubProvider.html +0 -4
- package/docs/static/typedoc/classes/TemplateCacheProvider.html +0 -5
- package/docs/static/typedoc/hierarchy.html +0 -1
- package/docs/static/typedoc/index.html +0 -1
- package/docs/static/typedoc/interfaces/DefaultPorts.html +0 -5
- package/docs/static/typedoc/interfaces/Html5Mode.html +0 -23
- package/docs/static/typedoc/interfaces/HttpHeadersGetter.html +0 -1
- package/docs/static/typedoc/interfaces/HttpProviderDefaults.html +0 -31
- package/docs/static/typedoc/interfaces/HttpRequestConfigHeaders.html +0 -6
- package/docs/static/typedoc/interfaces/HttpRequestTransformer.html +0 -1
- package/docs/static/typedoc/interfaces/HttpResponse.html +0 -7
- package/docs/static/typedoc/interfaces/HttpResponseTransformer.html +0 -1
- package/docs/static/typedoc/interfaces/HttpService.html +0 -38
- package/docs/static/typedoc/interfaces/LogService.html +0 -12
- package/docs/static/typedoc/interfaces/RequestConfig.html +0 -48
- package/docs/static/typedoc/interfaces/RequestShortcutConfig.html +0 -38
- package/docs/static/typedoc/interfaces/ServiceProvider.html +0 -5
- package/docs/static/typedoc/interfaces/UrlParts.html +0 -9
- package/docs/static/typedoc/types/HttpParamSerializer.html +0 -2
- package/docs/static/typedoc/types/HttpParams.html +0 -2
- package/docs/static/typedoc/types/HttpPromise.html +0 -1
- package/docs/static/typedoc/types/HttpResponseStatus.html +0 -1
- package/docs/static/typedoc/types/LogCall.html +0 -2
- package/docs/static/typedoc/types/LogServiceFactory.html +0 -2
- package/docs/static/typedoc/types/UrlChangeListener.html +0 -5
- package/docs/static/typedoc/variables/EventBus.html +0 -1
- package/docs/static/version.js +0 -13
- package/docs/test-results/.last-run.json +0 -4
- package/docs/test-results/static-examples-counter-counter-counter-example/error-context.md +0 -50
- package/eslint.config.js +0 -26
- package/images/android-chrome-192x192.png +0 -0
- package/images/android-chrome-512x512.png +0 -0
- package/images/apple-touch-icon.png +0 -0
- package/images/favicon-16x16.png +0 -0
- package/images/favicon-32x32.png +0 -0
- package/images/favicon.ico +0 -0
- package/images/site.webmanifest +0 -19
- package/index.html +0 -86
- package/legacy.d.ts +0 -1678
- package/playwright.config.ts +0 -81
- package/public/jasmine/boot0.js +0 -66
- package/public/jasmine/boot1.js +0 -134
- package/public/jasmine/jasmine-html.js +0 -970
- package/public/jasmine/jasmine.css +0 -323
- package/public/jasmine/jasmine.js +0 -11406
- package/public/public/README.md +0 -1
- package/public/public/circle.html +0 -1
- package/public/public/jasmine-helper.css +0 -9
- package/public/public/my_child_directive.html +0 -1
- package/public/public/my_directive.html +0 -1
- package/public/public/my_other_directive.html +0 -1
- package/public/public/test.html +0 -1
- package/rollup.config.js +0 -51
- package/src/angular.js +0 -286
- package/src/angular.spec.js +0 -1191
- package/src/animations/animate-cache.js +0 -80
- package/src/animations/animate-children-directive.js +0 -32
- package/src/animations/animate-children-directive.md +0 -80
- package/src/animations/animate-css-driver.js +0 -284
- package/src/animations/animate-css.html +0 -58
- package/src/animations/animate-css.js +0 -915
- package/src/animations/animate-css.md +0 -263
- package/src/animations/animate-js-driver.js +0 -60
- package/src/animations/animate-js.html +0 -47
- package/src/animations/animate-js.js +0 -371
- package/src/animations/animate-queue.js +0 -859
- package/src/animations/animate-runner.js +0 -193
- package/src/animations/animate-swap.js +0 -33
- package/src/animations/animate-swap.md +0 -88
- package/src/animations/animate.html +0 -19
- package/src/animations/animate.js +0 -546
- package/src/animations/animate.md +0 -933
- package/src/animations/animate.spec.js +0 -490
- package/src/animations/animation.js +0 -519
- package/src/animations/animations.test.js +0 -10
- package/src/animations/interface.ts +0 -19
- package/src/animations/raf-scheduler.html +0 -19
- package/src/animations/raf-scheduler.js +0 -92
- package/src/animations/raf-scheduler.spec.js +0 -98
- package/src/animations/shared.js +0 -341
- package/src/binding.html +0 -19
- package/src/binding.spec.js +0 -474
- package/src/binding.test.js +0 -10
- package/src/core/compile/attributes.js +0 -337
- package/src/core/compile/compile.html +0 -19
- package/src/core/compile/compile.js +0 -3271
- package/src/core/compile/compile.md +0 -1128
- package/src/core/compile/compile.spec.js +0 -15574
- package/src/core/compile/compile.test.js +0 -12
- package/src/core/controller/controller.html +0 -22
- package/src/core/controller/controller.js +0 -193
- package/src/core/controller/controller.spec.js +0 -334
- package/src/core/controller/controller.test.js +0 -12
- package/src/core/controller/interface.ts +0 -6
- package/src/core/core.html +0 -20
- package/src/core/core.test.js +0 -12
- package/src/core/di/injector.html +0 -19
- package/src/core/di/injector.js +0 -307
- package/src/core/di/injector.md +0 -740
- package/src/core/di/injector.spec.js +0 -2310
- package/src/core/di/injector.test.js +0 -12
- package/src/core/di/internal-injector.js +0 -286
- package/src/core/di/ng-module.html +0 -19
- package/src/core/di/ng-module.js +0 -229
- package/src/core/di/ng-module.spec.js +0 -263
- package/src/core/di/ng-module.test.js +0 -12
- package/src/core/filter/filter.html +0 -19
- package/src/core/filter/filter.js +0 -55
- package/src/core/filter/filter.md +0 -132
- package/src/core/filter/filter.spec.js +0 -149
- package/src/core/filter/filter.test.js +0 -12
- package/src/core/interpolate/interface.ts +0 -14
- package/src/core/interpolate/interpolate.html +0 -22
- package/src/core/interpolate/interpolate.js +0 -410
- package/src/core/interpolate/interpolate.spec.js +0 -601
- package/src/core/interpolate/interpolate.test.js +0 -12
- package/src/core/parse/ast/ast-node.ts +0 -81
- package/src/core/parse/ast/ast.html +0 -19
- package/src/core/parse/ast/ast.js +0 -574
- package/src/core/parse/ast/ast.spec.js +0 -1453
- package/src/core/parse/ast/ast.test.js +0 -10
- package/src/core/parse/ast-type.js +0 -23
- package/src/core/parse/interface.ts +0 -84
- package/src/core/parse/interpreter.js +0 -915
- package/src/core/parse/lexer/lexer.html +0 -19
- package/src/core/parse/lexer/lexer.js +0 -338
- package/src/core/parse/lexer/lexer.spec.js +0 -303
- package/src/core/parse/lexer/lexer.test.js +0 -10
- package/src/core/parse/lexer/token.ts +0 -22
- package/src/core/parse/parse.html +0 -19
- package/src/core/parse/parse.js +0 -337
- package/src/core/parse/parse.md +0 -57
- package/src/core/parse/parse.spec.js +0 -2107
- package/src/core/parse/parse.test.js +0 -10
- package/src/core/parse/parser/parser.html +0 -19
- package/src/core/parse/parser/parser.js +0 -64
- package/src/core/parse/parser/parser.spec.js +0 -8
- package/src/core/parse/parser/parser.test.js +0 -10
- package/src/core/prop.spec.js +0 -775
- package/src/core/root-element.spec.js +0 -14
- package/src/core/sanitize/interface.ts +0 -10
- package/src/core/sanitize/sanitize-uri.js +0 -75
- package/src/core/sanitize/sanitize-uri.spec.js +0 -249
- package/src/core/sanitize/sanitize-uri.test.js +0 -12
- package/src/core/sanitize/sanitize.html +0 -22
- package/src/core/scope/scope.html +0 -19
- package/src/core/scope/scope.js +0 -1252
- package/src/core/scope/scope.spec.js +0 -3000
- package/src/core/scope/scope.test.js +0 -12
- package/src/directive/aria/aria.html +0 -19
- package/src/directive/aria/aria.js +0 -382
- package/src/directive/aria/aria.md +0 -145
- package/src/directive/aria/aria.spec.js +0 -1241
- package/src/directive/aria/aria.test.js +0 -12
- package/src/directive/attrs/attrs.html +0 -19
- package/src/directive/attrs/attrs.js +0 -106
- package/src/directive/attrs/attrs.md +0 -224
- package/src/directive/attrs/attrs.spec.js +0 -71
- package/src/directive/attrs/attrs.test.js +0 -12
- package/src/directive/attrs/boolean.html +0 -19
- package/src/directive/attrs/boolean.spec.js +0 -137
- package/src/directive/attrs/boolean.test.js +0 -12
- package/src/directive/attrs/element-style.html +0 -22
- package/src/directive/attrs/element-style.spec.js +0 -85
- package/src/directive/attrs/element-style.test.js +0 -12
- package/src/directive/attrs/src.html +0 -19
- package/src/directive/attrs/src.spec.js +0 -163
- package/src/directive/attrs/src.test.js +0 -12
- package/src/directive/bind/bind-html.spec.js +0 -36
- package/src/directive/bind/bind.html +0 -20
- package/src/directive/bind/bind.js +0 -78
- package/src/directive/bind/bind.md +0 -142
- package/src/directive/bind/bind.spec.js +0 -314
- package/src/directive/bind/bind.test.js +0 -12
- package/src/directive/channel/channel.html +0 -19
- package/src/directive/channel/channel.js +0 -30
- package/src/directive/channel/channel.spec.js +0 -67
- package/src/directive/channel/channel.test.js +0 -10
- package/src/directive/class/class-test.html +0 -23
- package/src/directive/class/class.html +0 -19
- package/src/directive/class/class.js +0 -184
- package/src/directive/class/class.spec.js +0 -704
- package/src/directive/class/class.test.js +0 -12
- package/src/directive/cloak/cloak.html +0 -19
- package/src/directive/cloak/cloak.js +0 -11
- package/src/directive/cloak/cloak.spec.js +0 -44
- package/src/directive/cloak/cloak.test.js +0 -12
- package/src/directive/controller/controller.html +0 -22
- package/src/directive/controller/controller.js +0 -11
- package/src/directive/controller/controller.md +0 -46
- package/src/directive/controller/controller.spec.js +0 -175
- package/src/directive/controller/controller.test.js +0 -12
- package/src/directive/events/click.spec.js +0 -35
- package/src/directive/events/event.spec.js +0 -267
- package/src/directive/events/events-test.html +0 -36
- package/src/directive/events/events.html +0 -20
- package/src/directive/events/events.js +0 -65
- package/src/directive/events/events.md +0 -125
- package/src/directive/events/events.test.js +0 -12
- package/src/directive/form/form.html +0 -19
- package/src/directive/form/form.js +0 -669
- package/src/directive/form/form.spec.js +0 -1515
- package/src/directive/form/form.test.js +0 -12
- package/src/directive/http/delete.spec.js +0 -23
- package/src/directive/http/form-router-test.html +0 -44
- package/src/directive/http/form-test.html +0 -18
- package/src/directive/http/get.spec.js +0 -488
- package/src/directive/http/http.html +0 -22
- package/src/directive/http/http.js +0 -342
- package/src/directive/http/http.test.js +0 -12
- package/src/directive/http/interface.ts +0 -36
- package/src/directive/http/post-example.html +0 -30
- package/src/directive/http/post.spec.js +0 -521
- package/src/directive/http/put.spec.js +0 -23
- package/src/directive/if/if-animate-css.html +0 -57
- package/src/directive/if/if-animate-svg.html +0 -25
- package/src/directive/if/if.html +0 -19
- package/src/directive/if/if.js +0 -72
- package/src/directive/if/if.md +0 -76
- package/src/directive/if/if.spec.js +0 -293
- package/src/directive/if/if.test.js +0 -114
- package/src/directive/include/include.html +0 -19
- package/src/directive/include/include.js +0 -151
- package/src/directive/include/include.md +0 -87
- package/src/directive/include/include.spec.js +0 -734
- package/src/directive/include/include.test.js +0 -12
- package/src/directive/init/init.html +0 -19
- package/src/directive/init/init.js +0 -22
- package/src/directive/init/init.md +0 -41
- package/src/directive/init/init.spec.js +0 -68
- package/src/directive/init/init.test.js +0 -12
- package/src/directive/inject/inject.html +0 -19
- package/src/directive/inject/inject.js +0 -35
- package/src/directive/inject/inject.spec.js +0 -108
- package/src/directive/inject/inject.test.js +0 -12
- package/src/directive/input/input-example.html +0 -15
- package/src/directive/input/input.html +0 -19
- package/src/directive/input/input.js +0 -1078
- package/src/directive/input/input.md +0 -706
- package/src/directive/input/input.spec.js +0 -3700
- package/src/directive/input/input.test.js +0 -12
- package/src/directive/messages/messages.html +0 -22
- package/src/directive/messages/messages.js +0 -349
- package/src/directive/messages/messages.md +0 -543
- package/src/directive/messages/messages.spec.js +0 -1083
- package/src/directive/messages/messages.test.js +0 -12
- package/src/directive/model/change.md +0 -25
- package/src/directive/model/model.html +0 -19
- package/src/directive/model/model.js +0 -1170
- package/src/directive/model/model.spec.js +0 -1976
- package/src/directive/model/model.test.js +0 -12
- package/src/directive/model-options/model-option.test.js +0 -12
- package/src/directive/model-options/model-options.html +0 -22
- package/src/directive/model-options/model-options.js +0 -142
- package/src/directive/model-options/model-options.md +0 -407
- package/src/directive/model-options/model-options.spec.js +0 -1022
- package/src/directive/non-bindable/non-bindable.html +0 -22
- package/src/directive/non-bindable/non-bindable.js +0 -9
- package/src/directive/non-bindable/non-bindable.spec.js +0 -59
- package/src/directive/non-bindable/non-bindable.test.js +0 -12
- package/src/directive/observe/observe-demo.html +0 -184
- package/src/directive/observe/observe.html +0 -19
- package/src/directive/observe/observe.js +0 -41
- package/src/directive/observe/observe.spec.js +0 -106
- package/src/directive/observe/observe.test.js +0 -10
- package/src/directive/on/on.html +0 -19
- package/src/directive/on/on.spec.js +0 -215
- package/src/directive/on/on.test.js +0 -12
- package/src/directive/options/options-example.html +0 -17
- package/src/directive/options/options.html +0 -22
- package/src/directive/options/options.js +0 -542
- package/src/directive/options/options.md +0 -179
- package/src/directive/options/options.spec.js +0 -3554
- package/src/directive/options/options.test.js +0 -12
- package/src/directive/ref/href.html +0 -19
- package/src/directive/ref/href.spec.js +0 -141
- package/src/directive/ref/href.test.js +0 -19
- package/src/directive/ref/ref.html +0 -19
- package/src/directive/ref/ref.js +0 -89
- package/src/directive/ref/ref.spec.js +0 -546
- package/src/directive/repeat/repeat.html +0 -19
- package/src/directive/repeat/repeat.js +0 -333
- package/src/directive/repeat/repeat.md +0 -330
- package/src/directive/repeat/repeat.spec.js +0 -1209
- package/src/directive/repeat/repeat.test.js +0 -12
- package/src/directive/script/script.html +0 -19
- package/src/directive/script/script.js +0 -17
- package/src/directive/script/script.md +0 -11
- package/src/directive/script/script.spec.js +0 -47
- package/src/directive/script/script.test.js +0 -12
- package/src/directive/select/select.html +0 -19
- package/src/directive/select/select.js +0 -594
- package/src/directive/select/select.md +0 -74
- package/src/directive/select/select.spec.js +0 -2566
- package/src/directive/select/select.test.js +0 -12
- package/src/directive/setter/setter.html +0 -19
- package/src/directive/setter/setter.js +0 -59
- package/src/directive/setter/setter.spec.js +0 -100
- package/src/directive/setter/setter.test.js +0 -12
- package/src/directive/show-hide/show-hide.html +0 -22
- package/src/directive/show-hide/show-hide.js +0 -65
- package/src/directive/show-hide/show-hide.md +0 -255
- package/src/directive/show-hide/show-hide.spec.js +0 -268
- package/src/directive/show-hide/show-hide.test.js +0 -12
- package/src/directive/style/style.html +0 -19
- package/src/directive/style/style.js +0 -27
- package/src/directive/style/style.md +0 -23
- package/src/directive/style/style.spec.js +0 -183
- package/src/directive/style/style.test.js +0 -12
- package/src/directive/switch/switch.html +0 -19
- package/src/directive/switch/switch.js +0 -133
- package/src/directive/switch/switch.md +0 -66
- package/src/directive/switch/switch.spec.js +0 -509
- package/src/directive/switch/switch.test.js +0 -12
- package/src/directive/transclude/transclude.js +0 -122
- package/src/directive/validators/validators.html +0 -22
- package/src/directive/validators/validators.js +0 -346
- package/src/directive/validators/validators.spec.js +0 -740
- package/src/directive/validators/validators.test.js +0 -12
- package/src/filters/filter.js +0 -213
- package/src/filters/filter.spec.js +0 -719
- package/src/filters/filters.html +0 -22
- package/src/filters/filters.js +0 -239
- package/src/filters/filters.spec.js +0 -36
- package/src/filters/filters.test.js +0 -12
- package/src/filters/interface.ts +0 -9
- package/src/filters/limit-to.js +0 -55
- package/src/filters/limit-to.spec.js +0 -252
- package/src/filters/order-by.js +0 -181
- package/src/filters/order-by.spec.js +0 -883
- package/src/index.js +0 -6
- package/src/index.spec.js +0 -11
- package/src/injection-tokens.js +0 -81
- package/src/interface.ts +0 -430
- package/src/ng.js +0 -291
- package/src/ng.spec.js +0 -45
- package/src/router/common/trace.js +0 -240
- package/src/router/directives/component-example.html +0 -37
- package/src/router/directives/state-directives.html +0 -22
- package/src/router/directives/state-directives.js +0 -393
- package/src/router/directives/state-directives.md +0 -435
- package/src/router/directives/state-directives.spec.js +0 -1091
- package/src/router/directives/state-directives.test.js +0 -10
- package/src/router/directives/view-directive.js +0 -489
- package/src/router/directives/view-directive.spec.js +0 -1921
- package/src/router/directives/view-directive.test.js +0 -10
- package/src/router/directives/view-directives.html +0 -22
- package/src/router/glob/glob.html +0 -19
- package/src/router/glob/glob.js +0 -102
- package/src/router/glob/glob.spec.js +0 -108
- package/src/router/glob/glob.test.js +0 -12
- package/src/router/hooks/core-resolvables.js +0 -38
- package/src/router/hooks/ignored-transition.js +0 -25
- package/src/router/hooks/invalid-transition.js +0 -14
- package/src/router/hooks/lazy-load.js +0 -104
- package/src/router/hooks/on-enter-exit-retain.js +0 -55
- package/src/router/hooks/redirect-to.js +0 -38
- package/src/router/hooks/resolve.js +0 -57
- package/src/router/hooks/update-globals.js +0 -34
- package/src/router/hooks/url.js +0 -34
- package/src/router/hooks/views.js +0 -41
- package/src/router/params/interface.ts +0 -626
- package/src/router/params/param-factory.js +0 -23
- package/src/router/params/param-type.js +0 -133
- package/src/router/params/param-types.js +0 -153
- package/src/router/params/param.js +0 -243
- package/src/router/params/state-params.js +0 -36
- package/src/router/path/path-node.js +0 -78
- package/src/router/path/path-utils.js +0 -207
- package/src/router/resolve/interface.ts +0 -208
- package/src/router/resolve/resolvable.js +0 -123
- package/src/router/resolve/resolve-context.js +0 -190
- package/src/router/router-test-hashbang.html +0 -45
- package/src/router/router-test.html +0 -41
- package/src/router/router.html +0 -22
- package/src/router/router.js +0 -54
- package/src/router/router.test.js +0 -12
- package/src/router/services.spec.js +0 -52
- package/src/router/state/interface.ts +0 -1007
- package/src/router/state/state-builder.js +0 -376
- package/src/router/state/state-builder.spec.js +0 -86
- package/src/router/state/state-matcher.js +0 -64
- package/src/router/state/state-object.js +0 -118
- package/src/router/state/state-queue-manager.js +0 -95
- package/src/router/state/state-registry.js +0 -262
- package/src/router/state/state-service.js +0 -687
- package/src/router/state/state.html +0 -23
- package/src/router/state/state.spec.js +0 -1002
- package/src/router/state/state.test.js +0 -12
- package/src/router/state/target-state.js +0 -162
- package/src/router/state/views.js +0 -195
- package/src/router/state-filter.spec.js +0 -139
- package/src/router/state-filters.js +0 -46
- package/src/router/template-factory.html +0 -19
- package/src/router/template-factory.js +0 -249
- package/src/router/template-factory.spec.js +0 -146
- package/src/router/template-factory.test.js +0 -12
- package/src/router/transition/hook-builder.js +0 -137
- package/src/router/transition/hook-registry.js +0 -181
- package/src/router/transition/interface.js +0 -18
- package/src/router/transition/interface.ts +0 -922
- package/src/router/transition/reject-factory.js +0 -122
- package/src/router/transition/transition-event-type.js +0 -26
- package/src/router/transition/transition-hook.js +0 -199
- package/src/router/transition/transition-service.js +0 -297
- package/src/router/transition/transition.js +0 -653
- package/src/router/url/url-config.js +0 -155
- package/src/router/url/url-matcher.js +0 -532
- package/src/router/url/url-rule.js +0 -231
- package/src/router/url/url-rules.js +0 -350
- package/src/router/url/url-service.js +0 -446
- package/src/router/url/url-service.spec.js +0 -1288
- package/src/router/url/url.html +0 -19
- package/src/router/url/url.test.js +0 -12
- package/src/router/view/interface.ts +0 -51
- package/src/router/view/view.html +0 -19
- package/src/router/view/view.js +0 -262
- package/src/router/view/view.spec.js +0 -100
- package/src/router/view/view.test.js +0 -12
- package/src/router/view-hook.spec.js +0 -215
- package/src/router/view-scroll.js +0 -33
- package/src/router/view-scroll.spec.js +0 -72
- package/src/services/anchor-scroll/anchor-scroll.html +0 -76
- package/src/services/anchor-scroll/anchor-scroll.js +0 -147
- package/src/services/exception/exception-handler.js +0 -75
- package/src/services/exception/interface.ts +0 -7
- package/src/services/http/http.html +0 -23
- package/src/services/http/http.js +0 -1109
- package/src/services/http/http.spec.js +0 -4320
- package/src/services/http/http.test.js +0 -11
- package/src/services/http/interface.ts +0 -256
- package/src/services/http/template-request.spec.js +0 -220
- package/src/services/location/interface.ts +0 -70
- package/src/services/location/location.html +0 -22
- package/src/services/location/location.js +0 -1006
- package/src/services/location/location.spec.js +0 -3792
- package/src/services/location/location.test.js +0 -12
- package/src/services/log/interface.ts +0 -39
- package/src/services/log/log.html +0 -19
- package/src/services/log/log.js +0 -74
- package/src/services/log/log.spec.js +0 -64
- package/src/services/log/log.test.js +0 -12
- package/src/services/pubsub/pubsub.html +0 -19
- package/src/services/pubsub/pubsub.js +0 -349
- package/src/services/pubsub/pubsub.spec.js +0 -400
- package/src/services/pubsub/pubsub.test.js +0 -12
- package/src/services/sce/sce.html +0 -19
- package/src/services/sce/sce.js +0 -852
- package/src/services/sce/sce.spec.js +0 -617
- package/src/services/sce/sce.test.js +0 -12
- package/src/services/template-cache/template-cache.html +0 -22
- package/src/services/template-cache/template-cache.js +0 -15
- package/src/services/template-cache/template-cache.spec.js +0 -134
- package/src/services/template-cache/template-cache.test.js +0 -12
- package/src/services/template-request/interface.ts +0 -23
- package/src/services/template-request/template-request.js +0 -142
- package/src/shared/cache.js +0 -7
- package/src/shared/common.js +0 -365
- package/src/shared/common.spec.js +0 -294
- package/src/shared/constants.js +0 -21
- package/src/shared/dom.js +0 -716
- package/src/shared/hof.js +0 -157
- package/src/shared/hof.spec.js +0 -60
- package/src/shared/interface.ts +0 -21
- package/src/shared/min-err.spec.js +0 -178
- package/src/shared/noderef.js +0 -225
- package/src/shared/predicates.js +0 -34
- package/src/shared/queue.js +0 -105
- package/src/shared/queue.spec.js +0 -80
- package/src/shared/shared.html +0 -24
- package/src/shared/shared.test.js +0 -12
- package/src/shared/strings.js +0 -142
- package/src/shared/strings.spec.js +0 -40
- package/src/shared/test-utils.js +0 -47
- package/src/shared/url-utils/interface.ts +0 -54
- package/src/shared/url-utils/url-utils.html +0 -22
- package/src/shared/url-utils/url-utils.js +0 -122
- package/src/shared/url-utils/url-utils.spec.js +0 -148
- package/src/shared/url-utils/url-utils.test.js +0 -12
- package/src/shared/utils.js +0 -1255
- package/src/shared/utils.spec.js +0 -178
- package/src/src.html +0 -21
- package/src/src.test.js +0 -10
- package/tsconfig.json +0 -19
- package/tsconfig.types.json +0 -14
- package/typedoc.json +0 -8
- package/utils/express.js +0 -203
- package/utils/version.cjs +0 -23
- package/vite.config.js +0 -14
|
@@ -1,519 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
deleteCacheData,
|
|
3
|
-
getCacheData,
|
|
4
|
-
removeElementData,
|
|
5
|
-
setCacheData,
|
|
6
|
-
} from "../shared/dom.js";
|
|
7
|
-
import { mergeClasses } from "../shared/utils.js";
|
|
8
|
-
import {
|
|
9
|
-
NG_ANIMATE_CLASSNAME,
|
|
10
|
-
PREPARE_CLASS_SUFFIX,
|
|
11
|
-
applyAnimationClassesFactory,
|
|
12
|
-
applyAnimationStyles,
|
|
13
|
-
prepareAnimationOptions,
|
|
14
|
-
} from "./shared.js";
|
|
15
|
-
import { $injectTokens as $t } from "../injection-tokens.js";
|
|
16
|
-
|
|
17
|
-
const RUNNER_STORAGE_KEY = "$$animationRunner";
|
|
18
|
-
const PREPARE_CLASSES_KEY = "$$animatePrepareClasses";
|
|
19
|
-
|
|
20
|
-
export function AnimationProvider() {
|
|
21
|
-
const NG_ANIMATE_REF_ATTR = "ng-animate-ref";
|
|
22
|
-
|
|
23
|
-
const drivers = (this.drivers = []);
|
|
24
|
-
|
|
25
|
-
function setRunner(element, runner) {
|
|
26
|
-
setCacheData(element, RUNNER_STORAGE_KEY, runner);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
function removeRunner(element) {
|
|
30
|
-
deleteCacheData(element, RUNNER_STORAGE_KEY);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
function getRunner(element) {
|
|
34
|
-
return getCacheData(element, RUNNER_STORAGE_KEY);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
this.$get = [
|
|
38
|
-
$t.$rootScope,
|
|
39
|
-
$t.$injector,
|
|
40
|
-
$t.$$AnimateRunner,
|
|
41
|
-
$t.$$rAFScheduler,
|
|
42
|
-
$t.$$animateCache,
|
|
43
|
-
/**
|
|
44
|
-
*
|
|
45
|
-
* @param {ng.RootScopeService} $rootScope
|
|
46
|
-
* @param {import("../core/di/internal-injector").InjectorService} $injector
|
|
47
|
-
* @param {*} $$AnimateRunner
|
|
48
|
-
* @param {import("./raf-scheduler").RafScheduler} $$rAFScheduler
|
|
49
|
-
* @param {*} $$animateCache
|
|
50
|
-
* @returns
|
|
51
|
-
*/
|
|
52
|
-
function (
|
|
53
|
-
$rootScope,
|
|
54
|
-
$injector,
|
|
55
|
-
$$AnimateRunner,
|
|
56
|
-
$$rAFScheduler,
|
|
57
|
-
$$animateCache,
|
|
58
|
-
) {
|
|
59
|
-
const animationQueue = [];
|
|
60
|
-
const applyAnimationClasses = applyAnimationClassesFactory();
|
|
61
|
-
|
|
62
|
-
function sortAnimations(animations) {
|
|
63
|
-
const tree = { children: [] };
|
|
64
|
-
let i;
|
|
65
|
-
const lookup = new Map();
|
|
66
|
-
|
|
67
|
-
// this is done first beforehand so that the map
|
|
68
|
-
// is filled with a list of the elements that will be animated
|
|
69
|
-
|
|
70
|
-
for (i = 0; i < animations.length; i++) {
|
|
71
|
-
const animation = animations[i];
|
|
72
|
-
lookup.set(
|
|
73
|
-
animation.domNode,
|
|
74
|
-
(animations[i] = {
|
|
75
|
-
domNode: animation.domNode,
|
|
76
|
-
element: animation.element,
|
|
77
|
-
fn: animation.fn,
|
|
78
|
-
children: [],
|
|
79
|
-
}),
|
|
80
|
-
);
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
for (i = 0; i < animations.length; i++) {
|
|
84
|
-
processNode(animations[i]);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
return flatten(tree);
|
|
88
|
-
|
|
89
|
-
function processNode(entry) {
|
|
90
|
-
if (entry.processed) return entry;
|
|
91
|
-
entry.processed = true;
|
|
92
|
-
|
|
93
|
-
const elementNode = entry.domNode;
|
|
94
|
-
let { parentNode } = elementNode;
|
|
95
|
-
lookup.set(elementNode, entry);
|
|
96
|
-
|
|
97
|
-
let parentEntry;
|
|
98
|
-
while (parentNode) {
|
|
99
|
-
parentEntry = lookup.get(parentNode);
|
|
100
|
-
if (parentEntry) {
|
|
101
|
-
if (!parentEntry.processed) {
|
|
102
|
-
parentEntry = processNode(parentEntry);
|
|
103
|
-
}
|
|
104
|
-
break;
|
|
105
|
-
}
|
|
106
|
-
parentNode = parentNode.parentNode;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
(parentEntry || tree).children.push(entry);
|
|
110
|
-
return entry;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
function flatten(tree) {
|
|
114
|
-
const result = [];
|
|
115
|
-
const queue = [];
|
|
116
|
-
let i;
|
|
117
|
-
|
|
118
|
-
for (i = 0; i < tree.children.length; i++) {
|
|
119
|
-
queue.push(tree.children[i]);
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
let remainingLevelEntries = queue.length;
|
|
123
|
-
let nextLevelEntries = 0;
|
|
124
|
-
let row = [];
|
|
125
|
-
|
|
126
|
-
for (i = 0; i < queue.length; i++) {
|
|
127
|
-
const entry = queue[i];
|
|
128
|
-
if (remainingLevelEntries <= 0) {
|
|
129
|
-
remainingLevelEntries = nextLevelEntries;
|
|
130
|
-
nextLevelEntries = 0;
|
|
131
|
-
result.push(row);
|
|
132
|
-
row = [];
|
|
133
|
-
}
|
|
134
|
-
row.push(entry);
|
|
135
|
-
entry.children.forEach((childEntry) => {
|
|
136
|
-
nextLevelEntries++;
|
|
137
|
-
queue.push(childEntry);
|
|
138
|
-
});
|
|
139
|
-
remainingLevelEntries--;
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
if (row.length) {
|
|
143
|
-
result.push(row);
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
return result;
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
// TODO(matsko): document the signature in a better way
|
|
151
|
-
return function (element, event, options) {
|
|
152
|
-
options = prepareAnimationOptions(options);
|
|
153
|
-
const isStructural = ["enter", "move", "leave"].indexOf(event) >= 0;
|
|
154
|
-
|
|
155
|
-
// there is no animation at the current moment, however
|
|
156
|
-
// these runner methods will get later updated with the
|
|
157
|
-
// methods leading into the driver's end/cancel methods
|
|
158
|
-
// for now they just stop the animation from starting
|
|
159
|
-
const runner = new $$AnimateRunner({
|
|
160
|
-
end() {
|
|
161
|
-
close();
|
|
162
|
-
},
|
|
163
|
-
cancel() {
|
|
164
|
-
close(true);
|
|
165
|
-
},
|
|
166
|
-
});
|
|
167
|
-
|
|
168
|
-
if (!drivers.length) {
|
|
169
|
-
close();
|
|
170
|
-
return runner;
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
let classes = mergeClasses(
|
|
174
|
-
element.getAttribute("class"),
|
|
175
|
-
mergeClasses(options.addClass, options.removeClass),
|
|
176
|
-
);
|
|
177
|
-
let { tempClasses } = options;
|
|
178
|
-
if (tempClasses) {
|
|
179
|
-
classes += ` ${tempClasses}`;
|
|
180
|
-
options.tempClasses = null;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
if (isStructural) {
|
|
184
|
-
setCacheData(
|
|
185
|
-
element,
|
|
186
|
-
PREPARE_CLASSES_KEY,
|
|
187
|
-
`ng-${event}${PREPARE_CLASS_SUFFIX}`,
|
|
188
|
-
);
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
setRunner(element, runner);
|
|
192
|
-
|
|
193
|
-
animationQueue.push({
|
|
194
|
-
// this data is used by the postDigest code and passed into
|
|
195
|
-
// the driver step function
|
|
196
|
-
element,
|
|
197
|
-
classes,
|
|
198
|
-
event,
|
|
199
|
-
structural: isStructural,
|
|
200
|
-
options,
|
|
201
|
-
beforeStart,
|
|
202
|
-
close,
|
|
203
|
-
});
|
|
204
|
-
|
|
205
|
-
element.addEventListener("$destroy", handleDestroyedElement);
|
|
206
|
-
|
|
207
|
-
// we only want there to be one function called within the post digest
|
|
208
|
-
// block. This way we can group animations for all the animations that
|
|
209
|
-
// were apart of the same postDigest flush call.
|
|
210
|
-
if (animationQueue.length > 1) return runner;
|
|
211
|
-
$rootScope.$postUpdate(() => {
|
|
212
|
-
const animations = [];
|
|
213
|
-
animationQueue.forEach((entry) => {
|
|
214
|
-
// the element was destroyed early on which removed the runner
|
|
215
|
-
// form its storage. This means we can't animate this element
|
|
216
|
-
// at all and it already has been closed due to destruction.
|
|
217
|
-
if (getRunner(entry.element)) {
|
|
218
|
-
animations.push(entry);
|
|
219
|
-
} else {
|
|
220
|
-
entry.close();
|
|
221
|
-
}
|
|
222
|
-
});
|
|
223
|
-
|
|
224
|
-
// now any future animations will be in another postDigest
|
|
225
|
-
animationQueue.length = 0;
|
|
226
|
-
|
|
227
|
-
const groupedAnimations = groupAnimations(animations);
|
|
228
|
-
const toBeSortedAnimations = [];
|
|
229
|
-
|
|
230
|
-
groupedAnimations.forEach((animationEntry) => {
|
|
231
|
-
const element = animationEntry.from
|
|
232
|
-
? animationEntry.from.element
|
|
233
|
-
: animationEntry.element;
|
|
234
|
-
let extraClasses = options.addClass;
|
|
235
|
-
|
|
236
|
-
extraClasses =
|
|
237
|
-
(extraClasses ? `${extraClasses} ` : "") + NG_ANIMATE_CLASSNAME;
|
|
238
|
-
const cacheKey = $$animateCache.cacheKey(
|
|
239
|
-
element,
|
|
240
|
-
animationEntry.event,
|
|
241
|
-
extraClasses,
|
|
242
|
-
options.removeClass,
|
|
243
|
-
);
|
|
244
|
-
|
|
245
|
-
toBeSortedAnimations.push({
|
|
246
|
-
element,
|
|
247
|
-
domNode: element,
|
|
248
|
-
fn: function triggerAnimationStart() {
|
|
249
|
-
let startAnimationFn;
|
|
250
|
-
const closeFn = animationEntry.close;
|
|
251
|
-
|
|
252
|
-
// in the event that we've cached the animation status for this element
|
|
253
|
-
// and it's in fact an invalid animation (something that has duration = 0)
|
|
254
|
-
// then we should skip all the heavy work from here on
|
|
255
|
-
if (
|
|
256
|
-
$$animateCache.containsCachedAnimationWithoutDuration(
|
|
257
|
-
cacheKey,
|
|
258
|
-
)
|
|
259
|
-
) {
|
|
260
|
-
closeFn();
|
|
261
|
-
return;
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
// it's important that we apply the `ng-animate` CSS class and the
|
|
265
|
-
// temporary classes before we do any driver invoking since these
|
|
266
|
-
// CSS classes may be required for proper CSS detection.
|
|
267
|
-
animationEntry.beforeStart();
|
|
268
|
-
|
|
269
|
-
// in the event that the element was removed before the digest runs or
|
|
270
|
-
// during the RAF sequencing then we should not trigger the animation.
|
|
271
|
-
const targetElement = animationEntry.anchors
|
|
272
|
-
? animationEntry.from.element || animationEntry.to.element
|
|
273
|
-
: animationEntry.element;
|
|
274
|
-
|
|
275
|
-
if (getRunner(targetElement)) {
|
|
276
|
-
const operation = invokeFirstDriver(animationEntry);
|
|
277
|
-
if (operation) {
|
|
278
|
-
startAnimationFn = operation.start;
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
|
|
282
|
-
if (!startAnimationFn) {
|
|
283
|
-
closeFn();
|
|
284
|
-
} else {
|
|
285
|
-
const animationRunner = startAnimationFn();
|
|
286
|
-
animationRunner.done((status) => {
|
|
287
|
-
closeFn(!status);
|
|
288
|
-
});
|
|
289
|
-
updateAnimationRunners(animationEntry, animationRunner);
|
|
290
|
-
}
|
|
291
|
-
},
|
|
292
|
-
});
|
|
293
|
-
});
|
|
294
|
-
|
|
295
|
-
// we need to sort each of the animations in order of parent to child
|
|
296
|
-
// relationships. This ensures that the child classes are applied at the
|
|
297
|
-
// right time.
|
|
298
|
-
const finalAnimations = sortAnimations(toBeSortedAnimations);
|
|
299
|
-
for (let i = 0; i < finalAnimations.length; i++) {
|
|
300
|
-
const innerArray = finalAnimations[i];
|
|
301
|
-
for (let j = 0; j < innerArray.length; j++) {
|
|
302
|
-
const entry = innerArray[j];
|
|
303
|
-
const { element } = entry;
|
|
304
|
-
|
|
305
|
-
// the RAFScheduler code only uses functions
|
|
306
|
-
finalAnimations[i][j] = entry.fn;
|
|
307
|
-
|
|
308
|
-
// the first row of elements shouldn't have a prepare-class added to them
|
|
309
|
-
// since the elements are at the top of the animation hierarchy and they
|
|
310
|
-
// will be applied without a RAF having to pass...
|
|
311
|
-
if (i === 0) {
|
|
312
|
-
removeElementData(element, PREPARE_CLASSES_KEY);
|
|
313
|
-
continue;
|
|
314
|
-
}
|
|
315
|
-
|
|
316
|
-
const prepareClassName = getCacheData(
|
|
317
|
-
element,
|
|
318
|
-
PREPARE_CLASSES_KEY,
|
|
319
|
-
);
|
|
320
|
-
if (prepareClassName) {
|
|
321
|
-
element.classList.add(prepareClassName);
|
|
322
|
-
}
|
|
323
|
-
}
|
|
324
|
-
}
|
|
325
|
-
// @ts-ignore
|
|
326
|
-
$$rAFScheduler(finalAnimations);
|
|
327
|
-
});
|
|
328
|
-
|
|
329
|
-
return runner;
|
|
330
|
-
|
|
331
|
-
// TODO(matsko): change to reference nodes
|
|
332
|
-
function getAnchorNodes(node) {
|
|
333
|
-
const SELECTOR = `[${NG_ANIMATE_REF_ATTR}]`;
|
|
334
|
-
const items = node.hasAttribute(NG_ANIMATE_REF_ATTR)
|
|
335
|
-
? [node]
|
|
336
|
-
: node.querySelectorAll(SELECTOR);
|
|
337
|
-
const anchors = [];
|
|
338
|
-
items.forEach((node) => {
|
|
339
|
-
const attr = node.getAttribute(NG_ANIMATE_REF_ATTR);
|
|
340
|
-
if (attr && attr.length) {
|
|
341
|
-
anchors.push(node);
|
|
342
|
-
}
|
|
343
|
-
});
|
|
344
|
-
return anchors;
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
function groupAnimations(animations) {
|
|
348
|
-
const preparedAnimations = [];
|
|
349
|
-
const refLookup = {};
|
|
350
|
-
animations.forEach((animation, index) => {
|
|
351
|
-
const { element } = animation;
|
|
352
|
-
const node = element;
|
|
353
|
-
const { event } = animation;
|
|
354
|
-
const enterOrMove = ["enter", "move"].indexOf(event) >= 0;
|
|
355
|
-
const anchorNodes = animation.structural
|
|
356
|
-
? getAnchorNodes(node)
|
|
357
|
-
: [];
|
|
358
|
-
|
|
359
|
-
if (anchorNodes.length) {
|
|
360
|
-
const direction = enterOrMove ? "to" : "from";
|
|
361
|
-
|
|
362
|
-
anchorNodes.forEach((anchor) => {
|
|
363
|
-
const key = anchor.getAttribute(NG_ANIMATE_REF_ATTR);
|
|
364
|
-
refLookup[key] = refLookup[key] || {};
|
|
365
|
-
refLookup[key][direction] = {
|
|
366
|
-
animationID: index,
|
|
367
|
-
element: anchor,
|
|
368
|
-
};
|
|
369
|
-
});
|
|
370
|
-
} else {
|
|
371
|
-
preparedAnimations.push(animation);
|
|
372
|
-
}
|
|
373
|
-
});
|
|
374
|
-
|
|
375
|
-
const usedIndicesLookup = {};
|
|
376
|
-
const anchorGroups = {};
|
|
377
|
-
Object.values(refLookup).forEach((operations) => {
|
|
378
|
-
const { from } = operations;
|
|
379
|
-
const { to } = operations;
|
|
380
|
-
|
|
381
|
-
if (!from || !to) {
|
|
382
|
-
// only one of these is set therefore we can't have an
|
|
383
|
-
// anchor animation since all three pieces are required
|
|
384
|
-
const index = from ? from.animationID : to.animationID;
|
|
385
|
-
const indexKey = index.toString();
|
|
386
|
-
if (!usedIndicesLookup[indexKey]) {
|
|
387
|
-
usedIndicesLookup[indexKey] = true;
|
|
388
|
-
preparedAnimations.push(animations[index]);
|
|
389
|
-
}
|
|
390
|
-
return;
|
|
391
|
-
}
|
|
392
|
-
|
|
393
|
-
const fromAnimation = animations[from.animationID];
|
|
394
|
-
const toAnimation = animations[to.animationID];
|
|
395
|
-
const lookupKey = from.animationID.toString();
|
|
396
|
-
if (!anchorGroups[lookupKey]) {
|
|
397
|
-
const group = (anchorGroups[lookupKey] = {
|
|
398
|
-
structural: true,
|
|
399
|
-
beforeStart() {
|
|
400
|
-
fromAnimation.beforeStart();
|
|
401
|
-
toAnimation.beforeStart();
|
|
402
|
-
},
|
|
403
|
-
close() {
|
|
404
|
-
fromAnimation.close();
|
|
405
|
-
toAnimation.close();
|
|
406
|
-
},
|
|
407
|
-
classes: cssClassesIntersection(
|
|
408
|
-
fromAnimation.classes,
|
|
409
|
-
toAnimation.classes,
|
|
410
|
-
),
|
|
411
|
-
from: fromAnimation,
|
|
412
|
-
to: toAnimation,
|
|
413
|
-
anchors: [], // TODO(matsko): change to reference nodes
|
|
414
|
-
});
|
|
415
|
-
|
|
416
|
-
// the anchor animations require that the from and to elements both have at least
|
|
417
|
-
// one shared CSS class which effectively marries the two elements together to use
|
|
418
|
-
// the same animation driver and to properly sequence the anchor animation.
|
|
419
|
-
if (group.classes.length) {
|
|
420
|
-
preparedAnimations.push(group);
|
|
421
|
-
} else {
|
|
422
|
-
preparedAnimations.push(fromAnimation);
|
|
423
|
-
preparedAnimations.push(toAnimation);
|
|
424
|
-
}
|
|
425
|
-
}
|
|
426
|
-
|
|
427
|
-
anchorGroups[lookupKey].anchors.push({
|
|
428
|
-
out: from.element,
|
|
429
|
-
in: to.element,
|
|
430
|
-
});
|
|
431
|
-
});
|
|
432
|
-
|
|
433
|
-
return preparedAnimations;
|
|
434
|
-
}
|
|
435
|
-
|
|
436
|
-
function cssClassesIntersection(a, b) {
|
|
437
|
-
a = a.split(" ");
|
|
438
|
-
b = b.split(" ");
|
|
439
|
-
const matches = [];
|
|
440
|
-
|
|
441
|
-
for (let i = 0; i < a.length; i++) {
|
|
442
|
-
const aa = a[i];
|
|
443
|
-
if (aa.substring(0, 3) === "ng-") continue;
|
|
444
|
-
|
|
445
|
-
for (let j = 0; j < b.length; j++) {
|
|
446
|
-
if (aa === b[j]) {
|
|
447
|
-
matches.push(aa);
|
|
448
|
-
break;
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
}
|
|
452
|
-
|
|
453
|
-
return matches.join(" ");
|
|
454
|
-
}
|
|
455
|
-
|
|
456
|
-
function invokeFirstDriver(animationDetails) {
|
|
457
|
-
// we loop in reverse order since the more general drivers (like CSS and JS)
|
|
458
|
-
// may attempt more elements, but custom drivers are more particular
|
|
459
|
-
for (let i = drivers.length - 1; i >= 0; i--) {
|
|
460
|
-
const driverName = drivers[i];
|
|
461
|
-
const factory = $injector.get(driverName);
|
|
462
|
-
const driver = factory(animationDetails);
|
|
463
|
-
if (driver) {
|
|
464
|
-
return driver;
|
|
465
|
-
}
|
|
466
|
-
}
|
|
467
|
-
}
|
|
468
|
-
|
|
469
|
-
function beforeStart() {
|
|
470
|
-
tempClasses =
|
|
471
|
-
(tempClasses ? `${tempClasses} ` : "") + NG_ANIMATE_CLASSNAME;
|
|
472
|
-
element.className += ` ${tempClasses}`;
|
|
473
|
-
let prepareClassName = getCacheData(element, PREPARE_CLASSES_KEY);
|
|
474
|
-
if (prepareClassName) {
|
|
475
|
-
element.classList.remove(prepareClassName);
|
|
476
|
-
prepareClassName = null;
|
|
477
|
-
}
|
|
478
|
-
}
|
|
479
|
-
|
|
480
|
-
function updateAnimationRunners(animation, newRunner) {
|
|
481
|
-
if (animation.from && animation.to) {
|
|
482
|
-
update(animation.from.element);
|
|
483
|
-
update(animation.to.element);
|
|
484
|
-
} else {
|
|
485
|
-
update(animation.element);
|
|
486
|
-
}
|
|
487
|
-
|
|
488
|
-
function update(element) {
|
|
489
|
-
const runner = getRunner(element);
|
|
490
|
-
if (runner) runner.setHost(newRunner);
|
|
491
|
-
}
|
|
492
|
-
}
|
|
493
|
-
|
|
494
|
-
function handleDestroyedElement() {
|
|
495
|
-
const runner = getRunner(element);
|
|
496
|
-
if (runner && (event !== "leave" || !options.$$domOperationFired)) {
|
|
497
|
-
runner.end();
|
|
498
|
-
}
|
|
499
|
-
}
|
|
500
|
-
|
|
501
|
-
function close(rejected) {
|
|
502
|
-
removeRunner(element);
|
|
503
|
-
|
|
504
|
-
applyAnimationClasses(element, options);
|
|
505
|
-
applyAnimationStyles(element, options);
|
|
506
|
-
options.domOperation();
|
|
507
|
-
|
|
508
|
-
if (tempClasses) {
|
|
509
|
-
tempClasses
|
|
510
|
-
.split(" ")
|
|
511
|
-
.forEach((cls) => element.classList.remove(cls));
|
|
512
|
-
}
|
|
513
|
-
|
|
514
|
-
runner.complete(!rejected);
|
|
515
|
-
}
|
|
516
|
-
};
|
|
517
|
-
},
|
|
518
|
-
];
|
|
519
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { test, expect } from "@playwright/test";
|
|
2
|
-
|
|
3
|
-
test("raf-scheduler unit tests contain no errors", async ({ page }) => {
|
|
4
|
-
await page.goto("src/animations/raf-scheduler.html");
|
|
5
|
-
await page.content();
|
|
6
|
-
|
|
7
|
-
await expect(page.locator(".jasmine-overall-result")).toHaveText(
|
|
8
|
-
/ 0 failures/,
|
|
9
|
-
);
|
|
10
|
-
});
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export type RafScheduler = {
|
|
2
|
-
/**
|
|
3
|
-
* Schedules a list of functions to run on the next animation frame(s).
|
|
4
|
-
* @param tasks - The tasks to be scheduled.
|
|
5
|
-
*/
|
|
6
|
-
(tasks: Array<() => void>): void;
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Internal queue of scheduled task arrays.
|
|
10
|
-
*/
|
|
11
|
-
queue: Array<Array<() => void>>;
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Waits until the animation frame is quiet before running the provided function.
|
|
15
|
-
* Cancels any previous animation frame requests.
|
|
16
|
-
* @param fn - The function to run when the frame is quiet.
|
|
17
|
-
*/
|
|
18
|
-
waitUntilQuiet(fn: () => void): void;
|
|
19
|
-
};
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html>
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="utf-8" />
|
|
5
|
-
<title>AngularTS Test Runner</title>
|
|
6
|
-
|
|
7
|
-
<link rel="shortcut icon" type="image/png" href="/images/favicon.ico" />
|
|
8
|
-
<link rel="stylesheet" href="/jasmine/jasmine.css" />
|
|
9
|
-
<link rel="stylesheet" href="/public/jasmine-helper.css" />
|
|
10
|
-
<script src="/jasmine/jasmine.js"></script>
|
|
11
|
-
<script src="/jasmine/jasmine-html.js"></script>
|
|
12
|
-
<script src="/jasmine/boot0.js"></script>
|
|
13
|
-
<script src="/jasmine/boot1.js"></script>
|
|
14
|
-
<script type="module" src="/src/animations/raf-scheduler.spec.js"></script>
|
|
15
|
-
</head>
|
|
16
|
-
<body>
|
|
17
|
-
<div id="app"></div>
|
|
18
|
-
</body>
|
|
19
|
-
</html>
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @typedef {import('./interface.js').RafScheduler} RafScheduler
|
|
3
|
-
* @typedef {import('../interface.js').ServiceProvider} ServiceProvider
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Service provider that creates a requestAnimationFrame-based scheduler.
|
|
8
|
-
* @type {ServiceProvider}
|
|
9
|
-
*/
|
|
10
|
-
export class RafSchedulerProvider {
|
|
11
|
-
constructor() {
|
|
12
|
-
/**
|
|
13
|
-
* Internal task queue, where each item is an array of functions to run.
|
|
14
|
-
* @type {Array<Array<() => void>>}
|
|
15
|
-
*/
|
|
16
|
-
this.queue = [];
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* ID of the currently scheduled animation frame (if any).
|
|
20
|
-
* Used for cancellation and tracking.
|
|
21
|
-
* @type {number|null}
|
|
22
|
-
*/
|
|
23
|
-
this.cancelFn = null;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Processes the next batch of tasks in the animation frame.
|
|
28
|
-
* Executes the first group of functions in the queue, then
|
|
29
|
-
* schedules the next frame if needed.
|
|
30
|
-
*/
|
|
31
|
-
nextTick() {
|
|
32
|
-
if (!this.queue.length) return;
|
|
33
|
-
|
|
34
|
-
const items = this.queue.shift();
|
|
35
|
-
items.forEach((fn) => fn());
|
|
36
|
-
|
|
37
|
-
if (!this.cancelFn) {
|
|
38
|
-
this.cancelFn = window.requestAnimationFrame(() => {
|
|
39
|
-
this.cancelFn = null;
|
|
40
|
-
this.nextTick();
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* Returns the scheduler function.
|
|
47
|
-
* This function allows tasks to be queued for execution on future animation frames.
|
|
48
|
-
* It also has helper methods and state attached.
|
|
49
|
-
*
|
|
50
|
-
* @returns {RafScheduler} The scheduler function with `queue` and `waitUntilQuiet`.
|
|
51
|
-
*/
|
|
52
|
-
$get() {
|
|
53
|
-
/**
|
|
54
|
-
* The main scheduler function.
|
|
55
|
-
* Accepts an array of functions and schedules them to run in the next available frame(s).
|
|
56
|
-
*
|
|
57
|
-
* @type {RafScheduler}
|
|
58
|
-
*/
|
|
59
|
-
const scheduler = (tasks) => {
|
|
60
|
-
// Clone the input array to avoid mutating the original.
|
|
61
|
-
this.queue = this.queue.concat(tasks);
|
|
62
|
-
this.nextTick();
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* Exposes the internal queue to consumers (read-only use preferred).
|
|
67
|
-
* This matches the type signature for RafScheduler.
|
|
68
|
-
*/
|
|
69
|
-
scheduler.queue = this.queue;
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Cancels any pending frame and runs the given function once the frame is idle.
|
|
73
|
-
* Useful for debounced updates.
|
|
74
|
-
*
|
|
75
|
-
* @param {Function} fn - Function to run when the animation frame is quiet.
|
|
76
|
-
*/
|
|
77
|
-
scheduler.waitUntilQuiet = (fn) => {
|
|
78
|
-
if (this.cancelFn !== null) {
|
|
79
|
-
window.cancelAnimationFrame(this.cancelFn);
|
|
80
|
-
this.cancelFn = null;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
this.cancelFn = window.requestAnimationFrame(() => {
|
|
84
|
-
this.cancelFn = null;
|
|
85
|
-
fn();
|
|
86
|
-
this.nextTick();
|
|
87
|
-
});
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
return scheduler;
|
|
91
|
-
}
|
|
92
|
-
}
|