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