diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml new file mode 100644 index 0000000..645e671 --- /dev/null +++ b/.github/workflows/docker-publish.yml @@ -0,0 +1,97 @@ +name: Publish Docker Images + +on: + workflow_dispatch: + inputs: + version: + description: 'Version tag for docker images (e.g. 25.6)' + required: true + type: string + push_images: + description: 'Push images to Docker Hub' + required: true + type: boolean + default: false + update_description: + description: 'Update Docker Hub repository description' + required: true + type: boolean + default: false + latest: + description: 'Also tag openjdk18-bullseye-spring as latest (when pushing images)' + required: true + type: boolean + default: false + +run-name: "Docker ${{ inputs.version }} | push=${{ inputs.push_images }} | docs=${{ inputs.update_description }} | latest=${{ inputs.latest }}" + +jobs: + update-description: + if: ${{ inputs.update_description }} + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Render Docker Hub overview + run: | + sed "s/{{VERSION}}/${{ inputs.version }}/g" docs/docker-hub-overview.md > /tmp/docker-hub-overview.md + + - name: Update Docker Hub description + uses: peter-evans/dockerhub-description@v5 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + repository: groupdocs/annotation + readme-filepath: /tmp/docker-hub-overview.md + short-description: GroupDocs.Annotation for Java ${{ inputs.version }} demo (Spring & Dropwizard) + + build: + if: ${{ inputs.push_images }} + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + framework: [spring, dropwizard] + jdk: [openjdk8, openjdk11, openjdk18] + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Set context directory + id: ctx + run: | + if [ "${{ matrix.framework }}" = "spring" ]; then + echo "dir=Demos/Spring" >> "$GITHUB_OUTPUT" + else + echo "dir=Demos/Dropwizard" >> "$GITHUB_OUTPUT" + fi + + - name: Determine tags + id: tags + run: | + TAG="groupdocs/annotation:${{ inputs.version }}-java-${{ matrix.jdk }}-bullseye-${{ matrix.framework }}" + TAGS="${TAG}" + if [ "${{ inputs.latest }}" = "true" ] && [ "${{ matrix.framework }}" = "spring" ] && [ "${{ matrix.jdk }}" = "openjdk18" ]; then + TAGS="${TAGS},groupdocs/annotation:latest" + fi + echo "tags=${TAGS}" >> "$GITHUB_OUTPUT" + + - name: Build and push + uses: docker/build-push-action@v6 + with: + context: ${{ steps.ctx.outputs.dir }} + file: ${{ steps.ctx.outputs.dir }}/docker/Dockerfile-${{ matrix.jdk }}-bullseye + push: true + tags: ${{ steps.tags.outputs.tags }} + cache-from: type=gha + cache-to: type=gha,mode=max diff --git a/.github/workflows/update-version.yml b/.github/workflows/update-version.yml new file mode 100644 index 0000000..7f405a3 --- /dev/null +++ b/.github/workflows/update-version.yml @@ -0,0 +1,60 @@ +name: Update Version + +on: + workflow_dispatch: + inputs: + version: + description: 'New version (e.g. 25.6)' + required: true + type: string + create_pr: + description: 'Create a pull request with the changes' + required: true + type: boolean + default: true + +run-name: "Update version to ${{ inputs.version }}" + +jobs: + update-version: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Update versions + run: ./scripts/update-version.sh ${{ inputs.version }} + + - name: Verify versions + run: ./scripts/update-version.sh + + - name: Show changed files + run: git diff --name-only + + - name: Create pull request + if: ${{ inputs.create_pr }} + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + VERSION: ${{ inputs.version }} + run: | + BRANCH="update-version-${VERSION}" + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + git checkout -b "${BRANCH}" + git add -A + git commit -m "Update version to ${VERSION}" + git push -u origin "${BRANCH}" + gh pr create \ + --title "Update version to ${VERSION}" \ + --body "Automated version update to **${VERSION}** across all projects, Dockerfiles, and README." + + - name: Commit directly + if: ${{ !inputs.create_pr }} + env: + VERSION: ${{ inputs.version }} + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + git add -A + git commit -m "Update version to ${VERSION}" + git push diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..70ac879 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +/Examples/target +/Examples/Resources/Output +Examples/.classpath +Examples/.project +Examples/.settings/ +deploy_key + +#License files +*.lic diff --git a/Demos/Dropwizard/.dockerignore b/Demos/Dropwizard/.dockerignore new file mode 100644 index 0000000..996d586 --- /dev/null +++ b/Demos/Dropwizard/.dockerignore @@ -0,0 +1,9 @@ +.git +target +client/node_modules +client/.angular +client/package-lock.json +docker +Dockerfile +DocumentSamples/* +!DocumentSamples/.gitkeep \ No newline at end of file diff --git a/Demos/Dropwizard/.gitignore b/Demos/Dropwizard/.gitignore new file mode 100644 index 0000000..21ed7b3 --- /dev/null +++ b/Demos/Dropwizard/.gitignore @@ -0,0 +1,23 @@ +.idea/* +*.iml +*.ipr +*.iws +target/* +.DS_Store +vs.bin +App_Data/* +node_modules +client/.angular +src/main/resources/assets/* +!src/main/resources/assets/angular/ +!src/main/resources/assets/angular/** +node/ +etc/ +package-lock.json +Licenses/* +!Licenses/.gitkeep +DocumentSamples/* +!DocumentSamples/.gitkeep + +#License files +*.lic diff --git a/Demos/Dropwizard/.travis.yml b/Demos/Dropwizard/.travis.yml new file mode 100644 index 0000000..d996b1c --- /dev/null +++ b/Demos/Dropwizard/.travis.yml @@ -0,0 +1,40 @@ +dist: trusty +language: java +jdk: +- oraclejdk8 +- oraclejdk9 +- openjdk8 +#- oraclejdk11 +#- openjdk10 +#- openjdk11 +services: + - docker +jobs: + include: + - stage: Coverage + jdk: oraclejdk8 + script: + - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter + - chmod +x ./cc-test-reporter + - ./cc-test-reporter before-build + - mvn clean package + - JACOCO_SOURCE_PATH=src/main/java ./cc-test-reporter format-coverage target/site/jacoco/jacoco.xml --input-type jacoco + - ./cc-test-reporter upload-coverage + - stage: Tag Release + if: type = push AND branch = master AND commit_message !~ /^Travis bot released/ + install: skip + script: git checkout master && git reset --hard $sha1 && git config --global push.followTags true && git config --global user.email "travis@travis-ci.org" && git config --global user.name "Travis CI" && export current_version=$(mvn -q -Dexec.executable="echo" -Dexec.args='${project.version}' --non-recursive exec:exec) && echo "current version ${current_version}" && export minor=$(echo $current_version | sed "s/^[0-9]\{1,\}\.[0-9]\{1,\}\.\([0-9]\{1,\}\)/\1/") && export major=$(echo $current_version | sed "s/^\([0-9]\{1,\}\.[0-9]\{1,\}\)\.[0-9]\{1,\}/\1/") && export next_version=$major.$((minor+1)) && echo "next version ${next_version}" && sed -i.bak "s/$current_version/$next_version/g" README.md && rm README.md.bak && sed -i.bak "s/^ $current_version<\\/version>/ $next_version<\\/version>/g" pom.xml && rm pom.xml.bak && git status && git commit -am "Travis bot released $next_version" && git tag -a $next_version -m "Automated release" && git remote add target https://${GH_TOKEN}@github.com/groupdocs-annotation/GroupDocs.Annotation-for-Java-Dropwizard.git > /dev/null 2>&1 && git remote -v && git push --set-upstream target master + - stage: Release + if: type = push AND branch = master AND commit_message =~ /^Travis bot released/ + install: skip + jdk: oraclejdk8 + script: mvn -B clean package && mkdir -p target/release/DocumentSamples && mkdir -p target/release/Licenses && cp target/annotation-*.jar target/release && cp configuration.yml target/release && cd target && tar -zcvf release.tar.gz release && cd .. + deploy: + provider: releases + overwrite: true + skip_cleanup: true + api_key: $GH_TOKEN + file: target/release.tar.gz + on: + repo: groupdocs-annotation/GroupDocs.Annotation-for-Java-Dropwizard + branch: master \ No newline at end of file diff --git a/Demos/Dropwizard/Dockerfile b/Demos/Dropwizard/Dockerfile new file mode 100644 index 0000000..e9bf85f --- /dev/null +++ b/Demos/Dropwizard/Dockerfile @@ -0,0 +1,26 @@ +# Build the project +FROM maven:3-eclipse-temurin-8 AS builder +COPY pom.xml /usr/local/build/pom.xml +COPY src /usr/local/build/src +WORKDIR /usr/local/build +RUN mvn clean package -DskipTests -Dskip.npm=true + +# Configure Docker Image +FROM eclipse-temurin:21-jre-jammy + +RUN apt-get update && \ + apt-get install -y --no-install-recommends fontconfig && \ + fc-cache -f && \ + rm -rf /var/lib/apt/lists/* && \ + mkdir -p /home/groupdocs/app && \ + mkdir -p /home/groupdocs/app/DocumentSamples && \ + mkdir -p /home/groupdocs/app/Licenses + +WORKDIR /home/groupdocs/app +COPY /DocumentSamples /home/groupdocs/app/DocumentSamples +COPY /configuration.yml /home/groupdocs/app/configuration.yml +COPY --from=builder /usr/local/build/target/annotation-*.jar /home/groupdocs/app/app.jar + +EXPOSE 8080 + +ENTRYPOINT [ "java", "-jar", "app.jar", "configuration.yml" ] diff --git a/Demos/Dropwizard/DocumentSamples/.gitkeep b/Demos/Dropwizard/DocumentSamples/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/Demos/Dropwizard/LICENSE b/Demos/Dropwizard/LICENSE new file mode 100644 index 0000000..af0a3df --- /dev/null +++ b/Demos/Dropwizard/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2001-2018 Aspose Pty Ltd + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Demos/Dropwizard/Licenses/.gitkeep b/Demos/Dropwizard/Licenses/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/Demos/Dropwizard/README.md b/Demos/Dropwizard/README.md new file mode 100644 index 0000000..2154246 --- /dev/null +++ b/Demos/Dropwizard/README.md @@ -0,0 +1,185 @@ +![Groupdocs document & pdf annotator](https://raw.githubusercontent.com/groupdocs-annotation/groupdocs-annotation.github.io/master/resources/image/banner.png "GroupDocs.Annotation") +# GroupDocs.Annotation for Java Dropwizard Example +###### version 1.12.26 + +[![GitHub license](https://img.shields.io/github/license/groupdocs-annotation/GroupDocs.Annotation-for-Java-Dropwizard.svg)](https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-Java-Dropwizard/blob/master/LICENSE) + +## Security Notice + +This Dropwizard sample is a **demonstration application**. It is provided to show how GroupDocs.Annotation can be integrated with a web UI. + +- Intended for **local development and evaluation** only +- **Not** audited or hardened for production deployment +- File upload, download, and document path handling must be reviewed and adapted before any external exposure + +When integrating GroupDocs.Annotation into your product, implement your own secure file storage, input validation, and access control — do not copy this demo directly into a public-facing service. + +## System Requirements +- Java 8 (JDK 1.8) +- Maven 3 + + +## Annotate & write on document with Java Dropwizard + +**GroupDocs.Annotations for Java** is a powerful library that provides flexible API which allows you to **annotate PDF**, DOCX, PPT, XLS, and over 90 document formats without external dependencies and/or additional document conversions such us (DOCX to PDF or PPT to PDF). With GroupDocs.Annotation API you can write on documents using various annotation tools such as arrow annotation, text annotation or even draw on a document with help of freehand annotation drawing tool. + +With GroupDocs.Annotation for Java Dropwizard application, you can annotate and **write on document** using our modern and responsive web UI interface. Thanks to flexible and highly customizable configuration it can be used as standalone application or can be integrated into your project within few simple steps. + + +**Note:** without a license application will run in trial mode, purchase [GroupDocs.Annotation for Java license](https://purchase.groupdocs.com/buy) or request [GroupDocs.Annotation for Java temporary license](https://purchase.groupdocs.com/temporary-license/). + + +## Demo Video + +

+ + + +

+ + +## Features +

+ +


+ Text annotation +

Add text annotations in any document. Specify font size, set colors, add comments and collaborate.
+



+

+
+

+ +


+ Freehand Drawing +

Draw on a document using a freehand drawing tool. Easily highlight specific areas on your document page.
+


+

+
+

+ +


+ Blackout & Redaction +

Blackout and redact sensitive or personally identifiable information on your document.
+



+

+
+

+ +


+ Comments +

Collaborate and comment on any annotation. Start a discussion right in a document without database dependency/integration.
+





+

+
+ +### More features + +- Clean, modern and intuitive design +- Easily switchable colour theme (create your own colour theme in 5 minutes) +- Responsive design +- Mobile support (open application on any mobile device) +- Support over 50 documents and image formats +- Image mode +- Fully customizable navigation panel +- Annotate password protected documents +- Download original documents +- Download annotated documents +- Upload documents +- Annotate document with such annotation types: + * **Text** – highlights and comments selected text + * **Area** – marks an area with a rectangle and adds notes to it + * **Point** – sticks comments to any point in a document + * **TextStrikeout** – marks text with a strikethrough styling + * **Polyline** – draws shapes and freehand lines + * **TextField** – adds rectangle with a text inside + * **Watermark** - Horizontal textual watermark + * **TextReplacement** – replaces original text with user’s text + * **Arrow** – draws an arrow on a document + * **TextRedaction** – fills black rectangle with fixed position (used if you want to hide some text) + * **ResourcesRedaction** – fills black rectangle with fixed position + * **TextUnderline** – marks text with a underline styling + * **Distance** – measures a distance between objects in a document +- Draw annotation over the document page +- Add comment or reply +- Print document +- Smooth page navigation +- Smooth document scrolling +- Preload pages for faster document rendering +- Multi-language support for displaying errors +- Cross-browser support (Safari, Chrome, Opera, Firefox) +- Cross-platform support (Windows, Linux, MacOS) + + +## How to run + +You can run this sample by one of following methods + + +#### Build from source + +Download [source code](https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-Java-Dropwizard/archive/master.zip) from github or clone this repository. + +```bash +git clone https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-Java/ +cd /Demos/Dropwizard +mvn clean compile exec:java +## Open http://localhost:8080/annotation/ in your favorite browser. +``` + +#### Docker image +Use [Docker Hub](https://hub.docker.com/r/groupdocs/annotation) images. + +```bash +mkdir DocumentSamples +mkdir Licenses +docker run -p 8080:8080 --env HOST_ADDRESS=localhost \ + -v `pwd`/DocumentSamples:/home/groupdocs/app/DocumentSamples \ + -v `pwd`/Licenses:/home/groupdocs/app/Licenses \ + groupdocs/annotation:25.6-java-openjdk18-bullseye-dropwizard +## Open http://localhost:8080/annotation/ in your favorite browser. +``` + +**Security notice:** Docker images ship with demo defaults (upload and browse enabled, no authentication). Use for local evaluation only. + +## Configuration +For all methods above you can adjust settings in `configuration.yml`. By default in this sample will lookup for license file in `./Licenses` folder, so you can simply put your license file in that folder or specify relative/absolute path by setting `licensePath` value in `configuration.yml`. + +### Annotation configuration options + +| Option | Type | Default value | Description | +| ---------------------------------- | ------- |:-----------------:|:-------------------------------------------------------------------------------------------------------------------------------------------- | +| **`filesDirectory`** | String | `DocumentSamples` | Files directory path. Indicates where uploaded and predefined files are stored. It can be absolute or relative path | +| **`fontsDirectory`** | String | | Path to custom fonts directory. | +| **`defaultDocument`** | String | | Absolute path to default document that will be loaded automaticaly. | +| **`preloadPageCount`** | Integer | `0` | Indicate how many pages from a document should be loaded, remaining pages will be loaded on page scrolling.Set `0` to load all pages at once | +| **`textAnnotation`** | Boolean | `true` | Enable/disable Text annotation | +| **`areaAnnotation`** | Boolean | `true` | Enable/disable Area annotation | +| **`areaAnnotation`** | Boolean | `true` | Enable/disable Point annotation | +| **`pointAnnotation`** | Boolean | `true` | Enable thumbnails preview | +| **`textStrikeoutAnnotation`** | Boolean | `true` | Enable/disable TextStrikeout annotation | +| **`polylineAnnotation`** | Boolean | `true` | Enable/disable Polyline annotation | +| **`textFieldAnnotation`** | Boolean | `true` | Enable/disable TextField annotation | +| **`watermarkAnnotation`** | Boolean | `true` | Enable/disable Watermark annotation | +| **`textReplacementAnnotation`** | Boolean | `true` | Enable/disable TextReplacement annotation | +| **`arrowAnnotation`** | Boolean | `true` | Enable/disable Arrow annotation | +| **`textRedactionAnnotation`** | Boolean | `true` | Enable/disable TextRedaction annotation | +| **`resourcesRedactionAnnotation`** | Boolean | `true` | Enable/disable ResourcesRedaction annotation | +| **`textUnderlineAnnotation`** | Boolean | `true` | Enable/disable TextUnderline annotation | +| **`distanceAnnotation`** | Boolean | `true` | Enable/disable Distance annotation | +| **`downloadOriginal`** | Boolean | `true` | Enable/disable original document downloading | +| **`downloadAnnotated`** | Boolean | `true` | Enable/disable signed document downloading | +| **`zoom`** | Boolean | `true` | Enable/disable zoom | +| **`fitWidth`** | Boolean | `true` | Enable/disable fit width. Set true to zoom document pages fit width | + +## License +The MIT License (MIT). + +Please have a look at the LICENSE.md for more details + +## GroupDocs Annotation on other platforms & frameworks + +- JAVA Spring [Document & PDF annotator](https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-Java/tree/master/Demos/Spring) +- .NET MVC [Document & PDF annotator](https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-.NET/tree/master/Demos) +- .NET WebForms [Document & PDF annotator](https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-.NET/tree/master/Demos) + +[Home](https://www.groupdocs.com/) | [Product Page](https://products.groupdocs.com/annotation/java) | [Documentation](https://docs.groupdocs.com/annotation/java/) | [Demos](https://products.groupdocs.app/annotation/family) | [API Reference](https://apireference.groupdocs.com/java/annotation) | [Examples](https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-Java/tree/master/Examples) | [Blog](https://blog.groupdocs.com/category/annotation/) | [Free Support](https://forum.groupdocs.com/c/annotation) | [Temporary License](https://purchase.groupdocs.com/temporary-license) diff --git a/Demos/Dropwizard/client/.editorconfig b/Demos/Dropwizard/client/.editorconfig new file mode 100644 index 0000000..6e87a00 --- /dev/null +++ b/Demos/Dropwizard/client/.editorconfig @@ -0,0 +1,13 @@ +# Editor configuration, see http://editorconfig.org +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +max_line_length = off +trim_trailing_whitespace = false diff --git a/Demos/Dropwizard/client/.gitignore b/Demos/Dropwizard/client/.gitignore new file mode 100644 index 0000000..ee5c9d8 --- /dev/null +++ b/Demos/Dropwizard/client/.gitignore @@ -0,0 +1,39 @@ +# See http://help.github.com/ignore-files/ for more about ignoring files. + +# compiled output +/dist +/tmp +/out-tsc + +# dependencies +/node_modules + +# IDEs and editors +/.idea +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace + +# IDE - VSCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json + +# misc +/.sass-cache +/connect.lock +/coverage +/libpeerconnection.log +npm-debug.log +yarn-error.log +testem.log +/typings + +# System Files +.DS_Store +Thumbs.db diff --git a/Demos/Dropwizard/client/.prettierignore b/Demos/Dropwizard/client/.prettierignore new file mode 100644 index 0000000..d0b804d --- /dev/null +++ b/Demos/Dropwizard/client/.prettierignore @@ -0,0 +1,4 @@ +# Add files here to ignore them from prettier formatting + +/dist +/coverage diff --git a/Demos/Dropwizard/client/.prettierrc b/Demos/Dropwizard/client/.prettierrc new file mode 100644 index 0000000..544138b --- /dev/null +++ b/Demos/Dropwizard/client/.prettierrc @@ -0,0 +1,3 @@ +{ + "singleQuote": true +} diff --git a/Demos/Dropwizard/client/.vscode/extensions.json b/Demos/Dropwizard/client/.vscode/extensions.json new file mode 100644 index 0000000..7804e26 --- /dev/null +++ b/Demos/Dropwizard/client/.vscode/extensions.json @@ -0,0 +1,8 @@ +{ + "recommendations": [ + "nrwl.angular-console", + "angular.ng-template", + "ms-vscode.vscode-typescript-tslint-plugin", + "esbenp.prettier-vscode" + ] +} diff --git a/Demos/Dropwizard/client/README.md b/Demos/Dropwizard/client/README.md new file mode 100644 index 0000000..8337f8c --- /dev/null +++ b/Demos/Dropwizard/client/README.md @@ -0,0 +1,84 @@ +# Client + +This project was generated using [Nx](https://nx.dev). + +

+ +🔎 **Nx is a set of Extensible Dev Tools for Monorepos.** + +## Quick Start & Documentation + +[Nx Documentation](https://nx.dev/angular) + +[10-minute video showing all Nx features](https://nx.dev/angular/getting-started/what-is-nx) + +[Interactive Tutorial](https://nx.dev/angular/tutorial/01-create-application) + +## Adding capabilities to your workspace + +Nx supports many plugins which add capabilities for developing different types of applications and different tools. + +These capabilities include generating applications, libraries, etc as well as the devtools to test, and build projects as well. + +Below are some plugins which you can add to your workspace: + +- [Angular](https://angular.io) + - `ng add @nrwl/angular` +- [React](https://reactjs.org) + - `ng add @nrwl/react` +- Web (no framework frontends) + - `ng add @nrwl/web` +- [Nest](https://nestjs.com) + - `ng add @nrwl/nest` +- [Express](https://expressjs.com) + - `ng add @nrwl/express` +- [Node](https://nodejs.org) + - `ng add @nrwl/node` + +## Generate an application + +Run `ng g @nrwl/angular:app my-app` to generate an application. + +> You can use any of the plugins above to generate applications as well. + +When using Nx, you can create multiple applications and libraries in the same workspace. + +## Generate a library + +Run `ng g @nrwl/angular:lib my-lib` to generate a library. + +> You can also use any of the plugins above to generate libraries as well. + +Libraries are sharable across libraries and applications. They can be imported from `@client/mylib`. + +## Development server + +Run `ng serve my-app` for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files. + +## Code scaffolding + +Run `ng g component my-component --project=my-app` to generate a new component. + +## Build + +Run `ng build my-app` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build. + +## Running unit tests + +Run `ng test my-app` to execute the unit tests via [Jest](https://jestjs.io). + +Run `nx affected:test` to execute the unit tests affected by a change. + +## Running end-to-end tests + +Run `ng e2e my-app` to execute the end-to-end tests via [Cypress](https://www.cypress.io). + +Run `nx affected:e2e` to execute the end-to-end tests affected by a change. + +## Understand your workspace + +Run `nx dep-graph` to see a diagram of the dependencies of your projects. + +## Further help + +Visit the [Nx Documentation](https://nx.dev/angular) to learn more. diff --git a/Demos/Dropwizard/client/angular.json b/Demos/Dropwizard/client/angular.json new file mode 100644 index 0000000..34f7f04 --- /dev/null +++ b/Demos/Dropwizard/client/angular.json @@ -0,0 +1,140 @@ +{ + "version": 1, + "projects": { + "annotation": { + "projectType": "application", + "schematics": { + "@nrwl/angular:component": { + "style": "less" + } + }, + "root": "apps/annotation", + "sourceRoot": "apps/annotation/src", + "prefix": "client", + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "../src/main/resources/assets/angular/annotation", + "index": "apps/annotation/src/index.html", + "main": "apps/annotation/src/main.ts", + "polyfills": "apps/annotation/src/polyfills.ts", + "tsConfig": "apps/annotation/tsconfig.app.json", + "aot": true, + "assets": [ + "apps/annotation/src/favicon.ico", + "apps/annotation/src/assets" + ], + "styles": ["apps/annotation/src/styles.less"], + "scripts": [] + }, + "configurations": { + "production": { + "fileReplacements": [ + { + "replace": "apps/annotation/src/environments/environment.ts", + "with": "apps/annotation/src/environments/environment.prod.ts" + } + ], + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "extractCss": true, + "namedChunks": false, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": true, + "budgets": [ + { + "type": "initial", + "maximumWarning": "2mb", + "maximumError": "5mb" + }, + { + "type": "anyComponentStyle", + "maximumWarning": "6kb", + "maximumError": "10kb" + } + ] + } + } + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "options": { + "browserTarget": "annotation:build" + }, + "configurations": { + "production": { + "browserTarget": "annotation:build:production" + } + } + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "annotation:build" + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "apps/annotation/tsconfig.app.json", + "apps/annotation/tsconfig.spec.json" + ], + "exclude": ["**/node_modules/**", "!apps/annotation/**"] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "apps/annotation/jest.config.js", + "tsConfig": "apps/annotation/tsconfig.spec.json", + "setupFile": "apps/annotation/src/test-setup.ts" + } + } + } + }, + "annotation-e2e": { + "root": "apps/annotation-e2e", + "sourceRoot": "apps/annotation-e2e/src", + "projectType": "application", + "architect": { + "e2e": { + "builder": "@nrwl/cypress:cypress", + "options": { + "cypressConfig": "apps/annotation-e2e/cypress.json", + "tsConfig": "apps/annotation-e2e/tsconfig.e2e.json", + "devServerTarget": "annotation:serve" + }, + "configurations": { + "production": { + "devServerTarget": "annotation:serve:production" + } + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": ["apps/annotation-e2e/tsconfig.e2e.json"], + "exclude": ["**/node_modules/**", "!apps/annotation-e2e/**"] + } + } + } + } + }, + "cli": { + "defaultCollection": "@nrwl/angular" + }, + "schematics": { + "@nrwl/angular:application": { + "unitTestRunner": "jest", + "e2eTestRunner": "cypress" + }, + "@nrwl/angular:library": { + "unitTestRunner": "jest" + } + }, + "defaultProject": "annotation" +} diff --git a/Demos/Dropwizard/client/apps/.gitkeep b/Demos/Dropwizard/client/apps/.gitkeep new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Demos/Dropwizard/client/apps/.gitkeep @@ -0,0 +1 @@ + diff --git a/Demos/Dropwizard/client/apps/annotation-e2e/cypress.json b/Demos/Dropwizard/client/apps/annotation-e2e/cypress.json new file mode 100644 index 0000000..156cb77 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation-e2e/cypress.json @@ -0,0 +1,12 @@ +{ + "fileServerFolder": ".", + "fixturesFolder": "./src/fixtures", + "integrationFolder": "./src/integration", + "modifyObstructiveCode": false, + "pluginsFile": "./src/plugins/index", + "supportFile": "./src/support/index.ts", + "video": true, + "videosFolder": "../../dist/cypress/apps/annotation-e2e/videos", + "screenshotsFolder": "../../dist/cypress/apps/annotation-e2e/screenshots", + "chromeWebSecurity": false +} diff --git a/Demos/Dropwizard/client/apps/annotation-e2e/src/fixtures/example.json b/Demos/Dropwizard/client/apps/annotation-e2e/src/fixtures/example.json new file mode 100644 index 0000000..294cbed --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation-e2e/src/fixtures/example.json @@ -0,0 +1,4 @@ +{ + "name": "Using fixtures to represent data", + "email": "hello@cypress.io" +} diff --git a/Demos/Dropwizard/client/apps/annotation-e2e/src/integration/app.spec.ts b/Demos/Dropwizard/client/apps/annotation-e2e/src/integration/app.spec.ts new file mode 100644 index 0000000..e75549a --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation-e2e/src/integration/app.spec.ts @@ -0,0 +1,13 @@ +import { getGreeting } from '../support/app.po'; + +describe('annotation', () => { + beforeEach(() => cy.visit('/')); + + it('should display welcome message', () => { + // Custom command example, see `../support/commands.ts` file + cy.login('my-email@something.com', 'myPassword'); + + // Function helper example, see `../support/app.po.ts` file + getGreeting().contains('Welcome to annotation!'); + }); +}); diff --git a/Demos/Dropwizard/client/apps/annotation-e2e/src/plugins/index.js b/Demos/Dropwizard/client/apps/annotation-e2e/src/plugins/index.js new file mode 100644 index 0000000..9067e75 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation-e2e/src/plugins/index.js @@ -0,0 +1,22 @@ +// *********************************************************** +// This example plugins/index.js can be used to load plugins +// +// You can change the location of this file or turn off loading +// the plugins file with the 'pluginsFile' configuration option. +// +// You can read more here: +// https://on.cypress.io/plugins-guide +// *********************************************************** + +// This function is called when a project is opened or re-opened (e.g. due to +// the project's config changing) + +const { preprocessTypescript } = require('@nrwl/cypress/plugins/preprocessor'); + +module.exports = (on, config) => { + // `on` is used to hook into various events Cypress emits + // `config` is the resolved Cypress config + + // Preprocess Typescript file using Nx helper + on('file:preprocessor', preprocessTypescript(config)); +}; diff --git a/Demos/Dropwizard/client/apps/annotation-e2e/src/support/app.po.ts b/Demos/Dropwizard/client/apps/annotation-e2e/src/support/app.po.ts new file mode 100644 index 0000000..3293424 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation-e2e/src/support/app.po.ts @@ -0,0 +1 @@ +export const getGreeting = () => cy.get('h1'); diff --git a/Demos/Dropwizard/client/apps/annotation-e2e/src/support/commands.ts b/Demos/Dropwizard/client/apps/annotation-e2e/src/support/commands.ts new file mode 100644 index 0000000..61b3a3e --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation-e2e/src/support/commands.ts @@ -0,0 +1,31 @@ +// *********************************************** +// This example commands.js shows you how to +// create various custom commands and overwrite +// existing commands. +// +// For more comprehensive examples of custom +// commands please read more here: +// https://on.cypress.io/custom-commands +// *********************************************** +// eslint-disable-next-line @typescript-eslint/no-namespace +declare namespace Cypress { + interface Chainable { + login(email: string, password: string): void; + } +} +// +// -- This is a parent command -- +Cypress.Commands.add('login', (email, password) => { + console.log('Custom command example: Login', email, password); +}); +// +// -- This is a child command -- +// Cypress.Commands.add("drag", { prevSubject: 'element'}, (subject, options) => { ... }) +// +// +// -- This is a dual command -- +// Cypress.Commands.add("dismiss", { prevSubject: 'optional'}, (subject, options) => { ... }) +// +// +// -- This will overwrite an existing command -- +// Cypress.Commands.overwrite("visit", (originalFn, url, options) => { ... }) diff --git a/Demos/Dropwizard/client/apps/annotation-e2e/src/support/index.ts b/Demos/Dropwizard/client/apps/annotation-e2e/src/support/index.ts new file mode 100644 index 0000000..3d469a6 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation-e2e/src/support/index.ts @@ -0,0 +1,17 @@ +// *********************************************************** +// This example support/index.js is processed and +// loaded automatically before your test files. +// +// This is a great place to put global configuration and +// behavior that modifies Cypress. +// +// You can change the location of this file or turn off +// automatically serving support files with the +// 'supportFile' configuration option. +// +// You can read more here: +// https://on.cypress.io/configuration +// *********************************************************** + +// Import commands.js using ES2015 syntax: +import './commands'; diff --git a/Demos/Dropwizard/client/apps/annotation-e2e/tsconfig.e2e.json b/Demos/Dropwizard/client/apps/annotation-e2e/tsconfig.e2e.json new file mode 100644 index 0000000..824748b --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation-e2e/tsconfig.e2e.json @@ -0,0 +1,8 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "sourceMap": false, + "outDir": "../../dist/out-tsc" + }, + "include": ["src/**/*.ts", "src/**/*.js"] +} diff --git a/Demos/Dropwizard/client/apps/annotation-e2e/tsconfig.json b/Demos/Dropwizard/client/apps/annotation-e2e/tsconfig.json new file mode 100644 index 0000000..d8d4ea3 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation-e2e/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "types": ["cypress", "node"] + }, + "include": ["**/*.ts", "**/*.js"] +} diff --git a/Demos/Dropwizard/client/apps/annotation-e2e/tslint.json b/Demos/Dropwizard/client/apps/annotation-e2e/tslint.json new file mode 100644 index 0000000..8acd9a3 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation-e2e/tslint.json @@ -0,0 +1 @@ +{ "extends": "../../tslint.json", "rules": {} } diff --git a/Demos/Dropwizard/client/apps/annotation/browserslist b/Demos/Dropwizard/client/apps/annotation/browserslist new file mode 100644 index 0000000..8084853 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/browserslist @@ -0,0 +1,12 @@ +# This file is used by the build system to adjust CSS and JS output to support the specified browsers below. +# For additional information regarding the format and rule options, please see: +# https://github.com/browserslist/browserslist#queries + +# You can see what browsers were selected by your queries by running: +# npx browserslist + +> 0.5% +last 2 versions +Firefox ESR +not dead +not IE 9-11 # For IE 9-11 support, remove 'not'. \ No newline at end of file diff --git a/Demos/Dropwizard/client/apps/annotation/jest.config.js b/Demos/Dropwizard/client/apps/annotation/jest.config.js new file mode 100644 index 0000000..dd90dfa --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/jest.config.js @@ -0,0 +1,10 @@ +module.exports = { + name: 'annotation', + preset: '../../jest.config.js', + coverageDirectory: '../../coverage/apps/annotation', + snapshotSerializers: [ + 'jest-preset-angular/build/AngularNoNgAttributesSnapshotSerializer.js', + 'jest-preset-angular/build/AngularSnapshotSerializer.js', + 'jest-preset-angular/build/HTMLCommentSerializer.js' + ] +}; diff --git a/Demos/Dropwizard/client/apps/annotation/src/app/app.component.html b/Demos/Dropwizard/client/apps/annotation/src/app/app.component.html new file mode 100644 index 0000000..557d7ad --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/src/app/app.component.html @@ -0,0 +1 @@ + diff --git a/Demos/Dropwizard/client/apps/annotation/src/app/app.component.less b/Demos/Dropwizard/client/apps/annotation/src/app/app.component.less new file mode 100644 index 0000000..e69de29 diff --git a/Demos/Dropwizard/client/apps/annotation/src/app/app.component.spec.ts b/Demos/Dropwizard/client/apps/annotation/src/app/app.component.spec.ts new file mode 100644 index 0000000..e69de29 diff --git a/Demos/Dropwizard/client/apps/annotation/src/app/app.component.ts b/Demos/Dropwizard/client/apps/annotation/src/app/app.component.ts new file mode 100644 index 0000000..e6fb213 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/src/app/app.component.ts @@ -0,0 +1,10 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'client-root', + templateUrl: './app.component.html', + styleUrls: ['./app.component.less'] +}) +export class AppComponent { + title = 'annotation'; +} diff --git a/Demos/Dropwizard/client/apps/annotation/src/app/app.module.ts b/Demos/Dropwizard/client/apps/annotation/src/app/app.module.ts new file mode 100644 index 0000000..32e6832 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/src/app/app.module.ts @@ -0,0 +1,16 @@ +import {BrowserModule} from '@angular/platform-browser'; +import {NgModule} from '@angular/core'; + +import {AppComponent} from './app.component'; +import {AnnotationModule} from "@groupdocs.examples.angular/annotation"; + +import { TranslateModule } from '@ngx-translate/core'; + +@NgModule({ + declarations: [AppComponent], + imports: [BrowserModule, AnnotationModule, TranslateModule.forRoot()], + providers: [], + bootstrap: [AppComponent] +}) +export class AppModule { +} diff --git a/Demos/Dropwizard/client/apps/annotation/src/assets/.gitkeep b/Demos/Dropwizard/client/apps/annotation/src/assets/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/Demos/Dropwizard/client/apps/annotation/src/environments/environment.prod.ts b/Demos/Dropwizard/client/apps/annotation/src/environments/environment.prod.ts new file mode 100644 index 0000000..3612073 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/src/environments/environment.prod.ts @@ -0,0 +1,3 @@ +export const environment = { + production: true +}; diff --git a/Demos/Dropwizard/client/apps/annotation/src/environments/environment.ts b/Demos/Dropwizard/client/apps/annotation/src/environments/environment.ts new file mode 100644 index 0000000..7b4f817 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/src/environments/environment.ts @@ -0,0 +1,16 @@ +// This file can be replaced during build by using the `fileReplacements` array. +// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. +// The list of file replacements can be found in `angular.json`. + +export const environment = { + production: false +}; + +/* + * For easier debugging in development mode, you can import the following file + * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. + * + * This import should be commented out in production mode because it will have a negative impact + * on performance if an error is thrown. + */ +// import 'zone.js/dist/zone-error'; // Included with Angular CLI. diff --git a/Demos/Dropwizard/client/apps/annotation/src/favicon.ico b/Demos/Dropwizard/client/apps/annotation/src/favicon.ico new file mode 100644 index 0000000..317ebcb Binary files /dev/null and b/Demos/Dropwizard/client/apps/annotation/src/favicon.ico differ diff --git a/Demos/Dropwizard/client/apps/annotation/src/index.html b/Demos/Dropwizard/client/apps/annotation/src/index.html new file mode 100644 index 0000000..70c837f --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/src/index.html @@ -0,0 +1,13 @@ + + + + + Annotation + + + + + + + + diff --git a/Demos/Dropwizard/client/apps/annotation/src/main.ts b/Demos/Dropwizard/client/apps/annotation/src/main.ts new file mode 100644 index 0000000..fa4e0ae --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/src/main.ts @@ -0,0 +1,13 @@ +import { enableProdMode } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; + +import { AppModule } from './app/app.module'; +import { environment } from './environments/environment'; + +if (environment.production) { + enableProdMode(); +} + +platformBrowserDynamic() + .bootstrapModule(AppModule) + .catch(err => console.error(err)); diff --git a/Demos/Dropwizard/client/apps/annotation/src/polyfills.ts b/Demos/Dropwizard/client/apps/annotation/src/polyfills.ts new file mode 100644 index 0000000..2f258e5 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/src/polyfills.ts @@ -0,0 +1,62 @@ +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), + * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. + * + * Learn more in https://angular.io/guide/browser-support + */ + +/*************************************************************************************************** + * BROWSER POLYFILLS + */ + +/** IE10 and IE11 requires the following for NgClass support on SVG elements */ +// import 'classlist.js'; // Run `npm install --save classlist.js`. + +/** + * Web Animations `@angular/platform-browser/animations` + * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. + * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). + */ +// import 'web-animations-js'; // Run `npm install --save web-animations-js`. + +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + * because those flags need to be set before `zone.js` being loaded, and webpack + * will put import in the top of bundle, so user need to create a separate file + * in this directory (for example: zone-flags.ts), and put the following flags + * into that file, and then add the following code before importing zone.js. + * import './zone-flags.ts'; + * + * The flags allowed in zone-flags.ts are listed here. + * + * The following flags will work for all browsers. + * + * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + * + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + * + * (window as any).__Zone_enable_cross_context_check = true; + * + */ + +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ +import 'zone.js/dist/zone'; // Included with Angular CLI. + +/*************************************************************************************************** + * APPLICATION IMPORTS + */ diff --git a/Demos/Dropwizard/client/apps/annotation/src/styles.less b/Demos/Dropwizard/client/apps/annotation/src/styles.less new file mode 100644 index 0000000..90d4ee0 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/src/styles.less @@ -0,0 +1 @@ +/* You can add global styles to this file, and also import other style files */ diff --git a/Demos/Dropwizard/client/apps/annotation/src/test-setup.ts b/Demos/Dropwizard/client/apps/annotation/src/test-setup.ts new file mode 100644 index 0000000..8d88704 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/src/test-setup.ts @@ -0,0 +1 @@ +import 'jest-preset-angular'; diff --git a/Demos/Dropwizard/client/apps/annotation/tsconfig.app.json b/Demos/Dropwizard/client/apps/annotation/tsconfig.app.json new file mode 100644 index 0000000..12dc816 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/tsconfig.app.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "types": [] + }, + "files": ["src/main.ts", "src/polyfills.ts"], + "include": ["**/*.ts"], + "exclude": ["src/test-setup.ts", "**/*.spec.ts"] +} diff --git a/Demos/Dropwizard/client/apps/annotation/tsconfig.json b/Demos/Dropwizard/client/apps/annotation/tsconfig.json new file mode 100644 index 0000000..e5decd5 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "types": ["node", "jest"] + }, + "include": ["**/*.ts"] +} diff --git a/Demos/Dropwizard/client/apps/annotation/tsconfig.spec.json b/Demos/Dropwizard/client/apps/annotation/tsconfig.spec.json new file mode 100644 index 0000000..cfff29a --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/tsconfig.spec.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "files": ["src/test-setup.ts"], + "include": ["**/*.spec.ts", "**/*.d.ts"] +} diff --git a/Demos/Dropwizard/client/apps/annotation/tslint.json b/Demos/Dropwizard/client/apps/annotation/tslint.json new file mode 100644 index 0000000..df75834 --- /dev/null +++ b/Demos/Dropwizard/client/apps/annotation/tslint.json @@ -0,0 +1,7 @@ +{ + "extends": "../../tslint.json", + "rules": { + "directive-selector": [true, "attribute", "client", "camelCase"], + "component-selector": [true, "element", "client", "kebab-case"] + } +} diff --git a/Demos/Dropwizard/client/jest.config.js b/Demos/Dropwizard/client/jest.config.js new file mode 100644 index 0000000..ffd5ba2 --- /dev/null +++ b/Demos/Dropwizard/client/jest.config.js @@ -0,0 +1,10 @@ +module.exports = { + testMatch: ['**/+(*.)+(spec|test).+(ts|js)?(x)'], + transform: { + '^.+\\.(ts|js|html)$': 'ts-jest' + }, + resolver: '@nrwl/jest/plugins/resolver', + moduleFileExtensions: ['ts', 'js', 'html'], + coverageReporters: ['html'], + passWithNoTests: true +}; diff --git a/Demos/Dropwizard/client/libs/.gitkeep b/Demos/Dropwizard/client/libs/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/Demos/Dropwizard/client/nx.json b/Demos/Dropwizard/client/nx.json new file mode 100644 index 0000000..9fa5e7a --- /dev/null +++ b/Demos/Dropwizard/client/nx.json @@ -0,0 +1,19 @@ +{ + "npmScope": "client", + "implicitDependencies": { + "angular.json": "*", + "package.json": "*", + "tsconfig.json": "*", + "tslint.json": "*", + "nx.json": "*" + }, + "projects": { + "annotation": { + "tags": [] + }, + "annotation-e2e": { + "tags": [], + "implicitDependencies": ["annotation"] + } + } +} diff --git a/Demos/Dropwizard/client/package.json b/Demos/Dropwizard/client/package.json new file mode 100644 index 0000000..45ce89f --- /dev/null +++ b/Demos/Dropwizard/client/package.json @@ -0,0 +1,67 @@ +{ + "name": "client", + "version": "0.0.0", + "license": "MIT", + "scripts": { + "ng": "ng", + "nx": "nx", + "start": "ng serve", + "build": "ng build", + "test": "ng test", + "lint": "nx workspace-lint && ng lint", + "e2e": "ng e2e", + "affected:apps": "nx affected:apps", + "affected:libs": "nx affected:libs", + "affected:build": "nx affected:build", + "affected:e2e": "nx affected:e2e", + "affected:test": "nx affected:test", + "affected:lint": "nx affected:lint", + "affected:dep-graph": "nx affected:dep-graph", + "affected": "nx affected", + "format": "nx format:write", + "format:write": "nx format:write", + "format:check": "nx format:check", + "update": "ng update @nrwl/workspace", + "workspace-schematic": "nx workspace-schematic", + "dep-graph": "nx dep-graph", + "help": "nx help" + }, + "private": true, + "dependencies": { + "@angular/animations": "^8.2.14", + "@angular/common": "^8.2.14", + "@angular/compiler": "^8.2.4", + "@angular/core": "^8.2.14", + "@angular/forms": "^8.2.14", + "@angular/platform-browser": "^8.2.14", + "@angular/platform-browser-dynamic": "^8.2.14", + "@angular/router": "^8.2.14", + "@groupdocs.examples.angular/annotation": "^0.8.99", + "@nrwl/angular": "^8.12.11", + "common-components": "^1.0.5", + "core-js": "^2.6.11", + "rxjs": "~6.4.0", + "zone.js": "^0.9.1" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^0.800.1", + "@angular/cli": "8.1.1", + "@angular/compiler-cli": "^8.2.13", + "@angular/language-service": "^8.2.13", + "@nrwl/cypress": "8.12.11", + "@nrwl/jest": "8.12.11", + "@nrwl/workspace": "8.12.11", + "@types/jest": "24.0.9", + "@types/node": "~8.9.4", + "codelyzer": "~5.0.1", + "cypress": "~3.8.2", + "dotenv": "6.2.0", + "jest": "24.1.0", + "jest-preset-angular": "7.0.0", + "prettier": "1.18.2", + "ts-jest": "24.0.0", + "ts-node": "~7.0.0", + "tslint": "~5.11.0", + "typescript": "~3.4.5" + } +} diff --git a/Demos/Dropwizard/client/tools/schematics/.gitkeep b/Demos/Dropwizard/client/tools/schematics/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/Demos/Dropwizard/client/tools/tsconfig.tools.json b/Demos/Dropwizard/client/tools/tsconfig.tools.json new file mode 100644 index 0000000..82bd1f0 --- /dev/null +++ b/Demos/Dropwizard/client/tools/tsconfig.tools.json @@ -0,0 +1,11 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "../dist/out-tsc/tools", + "rootDir": ".", + "module": "commonjs", + "target": "es5", + "types": ["node"] + }, + "include": ["**/*.ts"] +} diff --git a/Demos/Dropwizard/client/tsconfig.json b/Demos/Dropwizard/client/tsconfig.json new file mode 100644 index 0000000..a5099b5 --- /dev/null +++ b/Demos/Dropwizard/client/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compileOnSave": false, + "compilerOptions": { + "rootDir": ".", + "sourceMap": true, + "declaration": false, + "moduleResolution": "node", + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "importHelpers": true, + "target": "es2015", + "module": "esnext", + "typeRoots": ["node_modules/@types"], + "lib": ["es2017", "dom"], + "skipLibCheck": true, + "skipDefaultLibCheck": true, + "baseUrl": ".", + "paths": {} + }, + "exclude": ["node_modules", "tmp"] +} diff --git a/Demos/Dropwizard/client/tslint.json b/Demos/Dropwizard/client/tslint.json new file mode 100644 index 0000000..2533001 --- /dev/null +++ b/Demos/Dropwizard/client/tslint.json @@ -0,0 +1,80 @@ +{ + "rulesDirectory": [ + "node_modules/@nrwl/workspace/src/tslint", + "node_modules/codelyzer" + ], + "rules": { + "arrow-return-shorthand": true, + "callable-types": true, + "class-name": true, + "deprecation": { + "severity": "warn" + }, + "forin": true, + "import-blacklist": [true, "rxjs/Rx"], + "interface-over-type-literal": true, + "member-access": false, + "member-ordering": [ + true, + { + "order": [ + "static-field", + "instance-field", + "static-method", + "instance-method" + ] + } + ], + "no-arg": true, + "no-bitwise": true, + "no-console": [true, "debug", "info", "time", "timeEnd", "trace"], + "no-construct": true, + "no-debugger": true, + "no-duplicate-super": true, + "no-empty": false, + "no-empty-interface": true, + "no-eval": true, + "no-inferrable-types": [true, "ignore-params"], + "no-misused-new": true, + "no-non-null-assertion": true, + "no-shadowed-variable": true, + "no-string-literal": false, + "no-string-throw": true, + "no-switch-case-fall-through": true, + "no-unnecessary-initializer": true, + "no-unused-expression": true, + "no-var-keyword": true, + "object-literal-sort-keys": false, + "prefer-const": true, + "radix": true, + "triple-equals": [true, "allow-null-check"], + "unified-signatures": true, + "variable-name": false, + "nx-enforce-module-boundaries": [ + true, + { + "allow": [], + "depConstraints": [ + { + "sourceTag": "*", + "onlyDependOnLibsWithTags": ["*"] + } + ] + } + ], + "directive-selector": [true, "attribute", "app", "camelCase"], + "component-selector": [true, "element", "app", "kebab-case"], + "no-conflicting-lifecycle": true, + "no-host-metadata-property": true, + "no-input-rename": true, + "no-inputs-metadata-property": true, + "no-output-native": true, + "no-output-on-prefix": true, + "no-output-rename": true, + "no-outputs-metadata-property": true, + "template-banana-in-box": true, + "template-no-negated-async": true, + "use-lifecycle-interface": true, + "use-pipe-transform-interface": true + } +} diff --git a/Demos/Dropwizard/configuration.yml b/Demos/Dropwizard/configuration.yml new file mode 100644 index 0000000..38e281a --- /dev/null +++ b/Demos/Dropwizard/configuration.yml @@ -0,0 +1,100 @@ +################################################ +# Server configurations +################################################ +server: + type: simple + applicationContextPath: / + adminContextPath: /admin + connector: + type: http + port: 8080 + + +################################################ +# Application (global) configurations +################################################ +application: + # License path + # Absolute or relative path to GroupDocs license file + licensePath: + # Host name or ip for server instance + hostAddress: ${application.hostAddress} + +################################################ +# Common configurations +################################################ +common: + # File rewriting on document uploading + # Set false to keep both files + # Set true to replace files with same name + rewrite: true + # Page navigation + # Set false to disable document navigation (go to next, previous, last and first page) + pageSelector: true + # Document download + # Set false to disable document download + download: true + # Document upload + # Set false to disable document upload + upload: true + # Document print + # Set false to disable document print + print: true + # File browser + # Set false to disable document browse + browse: true + # Set false to disable right mouse click + enableRightClick: true + +################################################ +# GroupDocs.Annotation configurations +################################################ +annotation: + # Files directory path + # Absolute or relative path to files directory + filesDirectory: + # Default document + # Absolute or relative path to default document + defaultDocument: '' + # Pages preload + # How many pages from a document should be loaded, remaining pages will be loaded on page scrolling + # Set 0 to load all pages at once + preloadPageCount: 0 + # Fonts path + # Absolute path to custom fonts directory + fontsDirectory: '' + # Enable/disable Text annotation + textAnnotation: true + # Enable/disable Area annotation + areaAnnotation: true + # Enable/disable Point annotation + pointAnnotation: true + # Enable/disable TextStrikeout annotation + textStrikeoutAnnotation: true + # Enable/disable Polyline annotation + polylineAnnotation: true + # Enable/disable TextField annotation + textFieldAnnotation: true + # Enable/disable Watermark annotation + watermarkAnnotation: true + # Enable/disable TextReplacement annotation + textReplacementAnnotation: true + # Enable/disable Arrow annotation + arrowAnnotation: true + # Enable/disable TextRedaction annotation + textRedactionAnnotation: true + # Enable/disable ResourcesRedaction annotation + resourcesRedactionAnnotation: true + # Enable/disable TextUnderline annotation + textUnderlineAnnotation: true + # Enable/disable Distance annotation + distanceAnnotation: true + # Enable/disable original document downloading + downloadOriginal: true + # Enable/disable signed document downloading + downloadAnnotated: true + # Enable/disable zoom + zoom: true + # Enable/disable fit width + # set true to zoom document pages fit width + fitWidth: true diff --git a/Demos/Dropwizard/docker/Dockerfile-openjdk11-bullseye b/Demos/Dropwizard/docker/Dockerfile-openjdk11-bullseye new file mode 100644 index 0000000..08219db --- /dev/null +++ b/Demos/Dropwizard/docker/Dockerfile-openjdk11-bullseye @@ -0,0 +1,49 @@ +# Build the project +FROM maven:3-eclipse-temurin-8 AS builder +COPY pom.xml /usr/local/build/pom.xml +COPY src /usr/local/build/src +WORKDIR /usr/local/build +RUN mvn clean package -DskipTests -Dskip.npm=true + +# Configure Docker Image +FROM eclipse-temurin:11-jre-jammy + +RUN apt-get update && \ + echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections && \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ + fontconfig software-properties-common && \ + apt-add-repository multiverse && \ + apt-get update && \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ + ttf-mscorefonts-installer && \ + fc-cache -f && \ + rm -rf /var/lib/apt/lists/* && \ + mkdir -p /home/groupdocs/app && \ + mkdir -p /home/groupdocs/app/DocumentSamples && \ + mkdir -p /home/groupdocs/app/Licenses +COPY /DocumentSamples /home/groupdocs/app/DocumentSamples +COPY /configuration.yml /home/groupdocs/app/configuration.yml +COPY --from=builder /usr/local/build/target/annotation-*.jar /home/groupdocs/app/app.jar +WORKDIR /home/groupdocs/app + +ENV LIC_PATH="Licenses" +ENV DOWNLOAD_ON=true +ENV UPLOAD_ON=true +ENV PRINT_ON=true +ENV BROWSE_ON=true +ENV RIGHTCLICK_ON=false +ENV FILES_DIR="DocumentSamples" +ENV HOST_ADDRESS="" + +LABEL version="25.6" \ + maintainer="GroupDocs Team" \ + url="https://products.groupdocs.com/annotation/java" \ + documentation="https://docs.groupdocs.com/annotation/java" \ + source="https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-Java" \ + description="GroupDocs.Annotation for Java Dropwizard sample, based on Eclipse Temurin 11" + +EXPOSE 8080 + +VOLUME [ "/home/groupdocs/app", "/home/groupdocs/app/DocumentSamples", "/home/groupdocs/app/Licenses" ] + +ENTRYPOINT [ "java", "-jar", "app.jar", "configuration.yml" ] diff --git a/Demos/Dropwizard/docker/Dockerfile-openjdk18-bullseye b/Demos/Dropwizard/docker/Dockerfile-openjdk18-bullseye new file mode 100644 index 0000000..501e226 --- /dev/null +++ b/Demos/Dropwizard/docker/Dockerfile-openjdk18-bullseye @@ -0,0 +1,49 @@ +# Build the project +FROM maven:3-eclipse-temurin-8 AS builder +COPY pom.xml /usr/local/build/pom.xml +COPY src /usr/local/build/src +WORKDIR /usr/local/build +RUN mvn clean package -DskipTests -Dskip.npm=true + +# Configure Docker Image +FROM eclipse-temurin:21-jre-jammy + +RUN apt-get update && \ + echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections && \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ + fontconfig software-properties-common && \ + apt-add-repository multiverse && \ + apt-get update && \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ + ttf-mscorefonts-installer && \ + fc-cache -f && \ + rm -rf /var/lib/apt/lists/* && \ + mkdir -p /home/groupdocs/app && \ + mkdir -p /home/groupdocs/app/DocumentSamples && \ + mkdir -p /home/groupdocs/app/Licenses +COPY /DocumentSamples /home/groupdocs/app/DocumentSamples +COPY /configuration.yml /home/groupdocs/app/configuration.yml +COPY --from=builder /usr/local/build/target/annotation-*.jar /home/groupdocs/app/app.jar +WORKDIR /home/groupdocs/app + +ENV LIC_PATH="Licenses" +ENV DOWNLOAD_ON=true +ENV UPLOAD_ON=true +ENV PRINT_ON=true +ENV BROWSE_ON=true +ENV RIGHTCLICK_ON=false +ENV FILES_DIR="DocumentSamples" +ENV HOST_ADDRESS="" + +LABEL version="25.6" \ + maintainer="GroupDocs Team" \ + url="https://products.groupdocs.com/annotation/java" \ + documentation="https://docs.groupdocs.com/annotation/java" \ + source="https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-Java" \ + description="GroupDocs.Annotation for Java Dropwizard sample, based on Eclipse Temurin 21" + +EXPOSE 8080 + +VOLUME [ "/home/groupdocs/app", "/home/groupdocs/app/DocumentSamples", "/home/groupdocs/app/Licenses" ] + +ENTRYPOINT [ "java", "-jar", "app.jar", "configuration.yml" ] diff --git a/Demos/Dropwizard/docker/Dockerfile-openjdk8-bullseye b/Demos/Dropwizard/docker/Dockerfile-openjdk8-bullseye new file mode 100644 index 0000000..5cbb511 --- /dev/null +++ b/Demos/Dropwizard/docker/Dockerfile-openjdk8-bullseye @@ -0,0 +1,49 @@ +# Build the project +FROM maven:3-eclipse-temurin-8 AS builder +COPY pom.xml /usr/local/build/pom.xml +COPY src /usr/local/build/src +WORKDIR /usr/local/build +RUN mvn clean package -DskipTests -Dskip.npm=true + +# Configure Docker Image +FROM eclipse-temurin:8-jre-jammy + +RUN apt-get update && \ + echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections && \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ + fontconfig software-properties-common && \ + apt-add-repository multiverse && \ + apt-get update && \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ + ttf-mscorefonts-installer && \ + fc-cache -f && \ + rm -rf /var/lib/apt/lists/* && \ + mkdir -p /home/groupdocs/app && \ + mkdir -p /home/groupdocs/app/DocumentSamples && \ + mkdir -p /home/groupdocs/app/Licenses +COPY /DocumentSamples /home/groupdocs/app/DocumentSamples +COPY /configuration.yml /home/groupdocs/app/configuration.yml +COPY --from=builder /usr/local/build/target/annotation-*.jar /home/groupdocs/app/app.jar +WORKDIR /home/groupdocs/app + +ENV LIC_PATH="Licenses" +ENV DOWNLOAD_ON=true +ENV UPLOAD_ON=true +ENV PRINT_ON=true +ENV BROWSE_ON=true +ENV RIGHTCLICK_ON=false +ENV FILES_DIR="DocumentSamples" +ENV HOST_ADDRESS="" + +LABEL version="25.6" \ + maintainer="GroupDocs Team" \ + url="https://products.groupdocs.com/annotation/java" \ + documentation="https://docs.groupdocs.com/annotation/java" \ + source="https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-Java" \ + description="GroupDocs.Annotation for Java Dropwizard sample, based on Eclipse Temurin 8" + +EXPOSE 8080 + +VOLUME [ "/home/groupdocs/app", "/home/groupdocs/app/DocumentSamples", "/home/groupdocs/app/Licenses" ] + +ENTRYPOINT [ "java", "-jar", "app.jar", "configuration.yml" ] diff --git a/Demos/Dropwizard/pom.xml b/Demos/Dropwizard/pom.xml new file mode 100644 index 0000000..93ba231 --- /dev/null +++ b/Demos/Dropwizard/pom.xml @@ -0,0 +1,251 @@ + + + 4.0.0 + + com.groupdocs.ui + annotation + 1.12.26 + jar + + GroupDocs.Annotation Dropwizard + https://groupdocs.com + + + UTF-8 + false + + + + + io.dropwizard + dropwizard-core + 1.3.0 + + + io.dropwizard + dropwizard-views-freemarker + 1.3.0 + + + io.dropwizard + dropwizard-assets + 1.3.0 + + + io.dropwizard + dropwizard-auth + 1.3.0 + + + io.dropwizard + dropwizard-forms + 1.3.0 + + + io.dropwizard + dropwizard-testing + 1.3.7 + test + + + io.dropwizard + dropwizard-client + 1.3.7 + + + org.glassfish.jersey.core + jersey-client + 2.25.1 + + + org.gitlab4j + gitlab4j-api + 4.6.9 + + + com.google.code.gson + gson + 2.8.2 + + + org.json + json + 20180130 + + + commons-io + commons-io + 2.7 + + + com.groupdocs + groupdocs-annotation + 25.6 + + + javax.xml.bind + jaxb-api + 2.3.0 + + + javax.activation + activation + 1.1 + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.0 + + 1.8 + 1.8 + + + + org.codehaus.mojo + exec-maven-plugin + 1.2.1 + + com.groupdocs.ui.common.MainService + + server + configuration.yml + + + + + org.apache.maven.plugins + maven-shade-plugin + 3.5.1 + + + + *:* + + META-INF/*.SF + META-INF/*.DSA + META-INF/*.RSA + + + + false + + + + package + + shade + + + + + + com.groupdocs.ui.common.MainService + + . + + + + + + + + + com.github.eirslett + frontend-maven-plugin + 1.6 + + client + ${skip.npm} + + + + + install node and npm + + install-node-and-npm + + + v10.15.1 + + + + npm install + + npm + + + install + + + + npm update + + npm + + + update + + + + install client + + npm + + + install + + + + build client + + npm + + + run build + + + + + + org.jacoco + jacoco-maven-plugin + 0.8.2 + + + default-prepare-agent + + prepare-agent + + + + default-report + prepare-package + + report + + + + + + + + + + GroupDocs Artifact Repository + GroupDocs Artifact Repository + https://releases.groupdocs.com/java/repo/ + + + maven-central + https://repo1.maven.org/maven2 + + + + diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/AbstractTextAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/AbstractTextAnnotator.java new file mode 100644 index 0000000..21dd199 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/AbstractTextAnnotator.java @@ -0,0 +1,23 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.Point; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import java.util.ArrayList; +import java.util.List; + +public abstract class AbstractTextAnnotator extends BaseAnnotator { + + protected AbstractTextAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + } + + protected static java.util.List getPoints(AnnotationDataEntity annotationData, PageInfo pageInfo) { + List tmp0 = new ArrayList<>(); + tmp0.add(new Point(annotationData.getLeft(), pageInfo.getHeight() - annotationData.getTop())); + tmp0.add(new Point(annotationData.getLeft() + annotationData.getWidth(), pageInfo.getHeight() - annotationData.getTop())); + tmp0.add(new Point(annotationData.getLeft(), pageInfo.getHeight() - annotationData.getTop() - annotationData.getHeight())); + tmp0.add(new Point(annotationData.getLeft() + annotationData.getWidth(), pageInfo.getHeight() - annotationData.getTop() - annotationData.getHeight())); + return tmp0; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/AnnotatorFactory.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/AnnotatorFactory.java new file mode 100644 index 0000000..08d4a84 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/AnnotatorFactory.java @@ -0,0 +1,60 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; + +public class AnnotatorFactory { + + /** + *

+ * Create annotator instance depending on type of annotation + *

+ * + * @return + * @param annotationData AnnotationDataEntity + * @param pageInfo PageInfo + */ + public static BaseAnnotator createAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + AnnotationDataEntity roundedAnnotationData = roundCoordinates(annotationData); + switch (roundedAnnotationData.getType().toLowerCase()) { // addev .toLowerCase() + case "text": + case "texthighlight": //textHighlight + return new TextHighlightAnnotator(roundedAnnotationData, pageInfo); + case "area": + return new AreaAnnotator(roundedAnnotationData, pageInfo); + case "point": + return new PointAnnotator(roundedAnnotationData, pageInfo); + case "textstrikeout": //textStrikeout + return new TextStrikeoutAnnotator(roundedAnnotationData, pageInfo); + case "polyline": + return new PolylineAnnotator(roundedAnnotationData, pageInfo); + case "textfield": //textField + return new TextFieldAnnotator(roundedAnnotationData, pageInfo); + case "watermark": + return new WatermarkAnnotator(roundedAnnotationData, pageInfo); + case "textreplacement": //textReplacement + return new TextReplacementAnnotator(roundedAnnotationData, pageInfo); + case "arrow": + return new ArrowAnnotator(roundedAnnotationData, pageInfo); + case "textredaction": //textRedaction + return new TextRedactionAnnotator(roundedAnnotationData, pageInfo); + case "resourcesredaction": //resourcesRedaction + return new ResourceRedactionAnnotator(roundedAnnotationData, pageInfo); + case "textunderline": //textUnderline + return new TextUnderlineAnnotator(roundedAnnotationData, pageInfo); + case "distance": + return new DistanceAnnotator(roundedAnnotationData, pageInfo); + default: + throw new TotalGroupDocsException("Wrong annotation data without annotation type!"); + } + } + + private static AnnotationDataEntity roundCoordinates(AnnotationDataEntity annotationData) { + annotationData.setHeight((float) Math.round(annotationData.getHeight())); + annotationData.setLeft((float) Math.round(annotationData.getLeft())); + annotationData.setTop((float) Math.round(annotationData.getTop())); + annotationData.setWidth((float) Math.round(annotationData.getWidth())); + return annotationData; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/AreaAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/AreaAnnotator.java new file mode 100644 index 0000000..6edbf8a --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/AreaAnnotator.java @@ -0,0 +1,55 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.AreaAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; + +public class AreaAnnotator extends BaseAnnotator { + + private AreaAnnotation areaAnnotation; + + public AreaAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + areaAnnotation = new AreaAnnotation(); + areaAnnotation.setBox(getBox()); + } + + @Override + public AnnotationBase annotateWord() { + areaAnnotation = (AreaAnnotation) initAnnotationBase(areaAnnotation); + return areaAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateCells() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateSlides() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateImage() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateDiagram() { + return annotateWord(); + } + + @Override + protected int getType() { + return AnnotationType.AREA; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/ArrowAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/ArrowAnnotator.java new file mode 100644 index 0000000..d5b10bc --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/ArrowAnnotator.java @@ -0,0 +1,90 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.Rectangle; +import com.groupdocs.annotation.models.Reply; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.ArrowAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.annotation.entity.web.CommentsEntity; + +public class ArrowAnnotator extends BaseAnnotator { + + private boolean withGuid = false; + private ArrowAnnotation arrowAnnotation; + + public ArrowAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + this.arrowAnnotation = new ArrowAnnotation(); + this.arrowAnnotation.setBox(getBox()); + } + + @Override + public AnnotationBase annotateWord() { + withGuid = false; + arrowAnnotation = (ArrowAnnotation) initAnnotationBase(arrowAnnotation); + return arrowAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateCells() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateSlides() { + withGuid = true; + arrowAnnotation = (ArrowAnnotation) initAnnotationBase(arrowAnnotation); + return arrowAnnotation; + } + + @Override + public AnnotationBase annotateImage() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateDiagram() { + return annotateWord(); + } + + @Override + protected Reply getAnnotationReplyInfo(CommentsEntity comment) { + Reply annotationReplyInfo = super.getAnnotationReplyInfo(comment); + if (withGuid) { + annotationReplyInfo.setParentReply(new Reply()); + annotationReplyInfo.getParentReply().setId(annotationData.getId()); + } + return annotationReplyInfo; + } + + @Override + protected int getType() { + return AnnotationType.ARROW; + } + + @Override + protected Rectangle getBox() { + String svgPath = annotationData.getSvgPath(); + + String startPoint = svgPath.replace("[a-zA-Z]+", "").split(" ")[0]; + String endPoint = svgPath.replace("[a-zA-Z]+", "").split(" ")[1]; + + String[] start = startPoint.split(","); + float startX = Float.parseFloat(start.length > 0 ? start[0].replace("M", "").replace(",", ".") : "0"); + float startY = Float.parseFloat(start.length > 0 ? start[1].replace("M", "").replace(",", ".") : "0"); + + String[] end = endPoint.split(","); + float endX = Float.parseFloat(end.length > 0 ? end[0].replace("L", "").replace(",", ".") : "0") - startX; + float endY = Float.parseFloat(end.length > 1 ? end[1].replace("L", "").replace(",", ".") : "0") - startY; + + return new Rectangle(startX, startY, endX, endY); + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/BaseAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/BaseAnnotator.java new file mode 100644 index 0000000..7bc2c5e --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/BaseAnnotator.java @@ -0,0 +1,225 @@ +package com.groupdocs.ui.annotation.annotator; + + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.Rectangle; +import com.groupdocs.annotation.models.Reply; +import com.groupdocs.annotation.models.User; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.annotation.entity.web.CommentsEntity; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.time.Instant; +import java.util.ArrayList; +import java.util.Locale; +import java.util.TimeZone; + +/** + *

+ * BaseSigner + *

+ */ +public abstract class BaseAnnotator { + + public String Message = "Annotation of type {0} for this file type is not supported"; + protected AnnotationDataEntity annotationData; + protected PageInfo pageInfo; + + /** + *

+ * Constructor + *

+ * + * @param annotationData + * @param pageInfo + */ + protected BaseAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + this.annotationData = annotationData; + this.pageInfo = pageInfo; + } + + /** + *

+ * Add area annotation into the Word document + *

+ * + * @return AnnotationBase + */ + public abstract AnnotationBase annotateWord(); + + /** + *

+ * Add area annotation into the pdf document + *

+ * + * @return AnnotationBase + */ + public abstract AnnotationBase annotatePdf(); + + ///// + ///// Add area annotation into the Excel document + ///// + ///// AnnotationBase + public abstract AnnotationBase annotateCells(); + + /** + *

+ * Add area annotation into the Power Point document + *

+ * + * @return AnnotationBase + */ + public abstract AnnotationBase annotateSlides(); + + /** + *

+ * Add area annotation into the image document + *

+ * + * @return AnnotationBase + */ + public abstract AnnotationBase annotateImage(); + + /** + *

+ * Add area annotation into the document + *

+ * + * @return AnnotationBase + */ + public abstract AnnotationBase annotateDiagram(); + + /** + *

+ * Initial for annotation info + *

+ * + * @param annotationBase + * @return AnnotationBase + */ + protected final AnnotationBase initAnnotationBase(AnnotationBase annotationBase) { + // set page number to add annotation + annotationBase.setPageNumber(annotationData.getPageNumber() - 1); + // set annotation type + annotationBase.setType(getType()); + annotationBase.setCreatedOn(Date.from(Instant.now())); + annotationBase.setId(annotationData.getId()); + // add replies + CommentsEntity[] comments = annotationData.getComments(); + if (comments != null && comments.length != 0) { + java.util.List replies = new ArrayList<>(); + for (int i = 0; i < comments.length; i++) { + Reply reply = getAnnotationReplyInfo(comments[i]); + replies.add(reply); + } + annotationBase.setReplies(replies); + } + return annotationBase; + } + + /** + *

+ * Initial for reply annotation info + *

+ * + * @return AnnotationReplyInfo + * @param comment CommentsEntity + */ + protected Reply getAnnotationReplyInfo(CommentsEntity comment) { + Reply reply = new Reply(); + reply.setComment(comment.getText()); + DateFormat format = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss"); + format.setTimeZone(TimeZone.getTimeZone("GMT")); + Date date; + try { + date = new Date(Long.parseLong(comment.getTime())); + } catch (Exception e) { + try { + date = format.parse(comment.getTime()); + } catch (Exception exc) { + format = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US); + try { + date = format.parse(comment.getTime()); + } catch (ParseException ex) { + throw new TotalGroupDocsException(ex.getMessage()); + } + } + } + reply.setRepliedOn(date); + reply.setUser(new User()); + reply.getUser().setName(comment.getUserName()); + return reply; + } + + /** + *

+ * Get rectangle + *

+ * + * @return Rectangle + */ + protected Rectangle getBox() { + return new Rectangle(annotationData.getLeft(), annotationData.getTop(), annotationData.getWidth(), annotationData.getHeight()); + } + + /** + *

+ * Get type of annotation + *

+ * + * @return byte + */ + protected abstract int getType(); + + /** + *

+ * Get Annotation info depending on document type + *

+ * + * @return AnnotationBase + * @param documentType string + */ + public final AnnotationBase getAnnotationBase(String documentType) { + switch (documentType) { + case "Portable Document Format": + return annotatePdf(); + case "Microsoft Word": + case "Open Document Text": + return annotateWord(); + case "Rich Text Format": + return annotateWord(); + case "Microsoft PowerPoint": + return annotateSlides(); + case "image": + return annotateImage(); + case "Microsoft Excel": + return annotateCells(); + case "AutoCAD Drawing File Format": + return annotateDiagram(); + default: + throw new TotalGroupDocsException("Wrong annotation data without document type!"); + } + } + + /** + *

+ * Check if the current annotatin is supported + *

+ * + * @return + * @param documentType string + */ + public final boolean isSupported(String documentType) { + try { + AnnotatorFactory.createAnnotator(annotationData, pageInfo).getAnnotationBase(documentType); + return true; + } catch (java.lang.UnsupportedOperationException e) { + Message += annotationData.getType(); + return false; + } + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/DistanceAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/DistanceAnnotator.java new file mode 100644 index 0000000..1efc61b --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/DistanceAnnotator.java @@ -0,0 +1,92 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.Rectangle; +import com.groupdocs.annotation.models.Reply; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.DistanceAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.annotation.entity.web.CommentsEntity; + +public class DistanceAnnotator extends BaseAnnotator { + + private DistanceAnnotation distanceAnnotation; + + public DistanceAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + distanceAnnotation = new DistanceAnnotation(); + distanceAnnotation.setBox(getBox()); + } + + @Override + public AnnotationBase annotateWord() { + distanceAnnotation = (DistanceAnnotation) initAnnotationBaseDistanceAnnotator(distanceAnnotation); + return distanceAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateCells() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateSlides() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateImage() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateDiagram() { + return annotateWord(); + } + + protected final AnnotationBase initAnnotationBaseDistanceAnnotator(AnnotationBase annotationBase) { + distanceAnnotation = (DistanceAnnotation) super.initAnnotationBase(annotationBase); + String tmp0 = annotationData.getText(); + if (tmp0 == null) { + tmp0 = ""; + } + // add replies + String text = tmp0; + CommentsEntity[] comments = annotationData.getComments(); + if (comments != null && comments.length != 0) { + Reply reply = distanceAnnotation.getReplies().get(0); + if (reply != null) { + reply.setComment(String.format("%s %s", text, reply.getComment())); + } + } + + return distanceAnnotation; + } + + @Override + protected int getType() { + return AnnotationType.DISTANCE; + } + + @Override + protected Rectangle getBox() { + String svgPath = annotationData.getSvgPath(); + + String startPoint = svgPath.replaceAll("[a-zA-Z]+", "").split(" ")[0]; + String endPoint = svgPath.replaceAll("[a-zA-Z]+", "").split(" ")[1]; + String[] start = startPoint.split(","); + float startX = Float.parseFloat(start.length > 0 ? start[0] : "0"); + float startY = Float.parseFloat(start.length > 1 ? start[1] : "0"); + String[] end = endPoint.split(","); + float endX = Float.parseFloat(end.length > 0 ? end[0] : "0") - startX; + float endY = Float.parseFloat(end.length > 1 ? end[1] : "0") - startY; + return new Rectangle(startX, startY, endX, endY); + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/PointAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/PointAnnotator.java new file mode 100644 index 0000000..82c853f --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/PointAnnotator.java @@ -0,0 +1,56 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.PointAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; + + +public class PointAnnotator extends BaseAnnotator { + + private PointAnnotation pointAnnotation; + + public PointAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + pointAnnotation = new PointAnnotation(); + pointAnnotation.setBox(getBox()); + } + + @Override + public AnnotationBase annotateWord() { + pointAnnotation = (PointAnnotation) super.initAnnotationBase(pointAnnotation); + return pointAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateCells() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateSlides() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateImage() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateDiagram() { + return annotateWord(); + } + + @Override + protected int getType() { + return AnnotationType.POINT; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/PolylineAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/PolylineAnnotator.java new file mode 100644 index 0000000..a554cb1 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/PolylineAnnotator.java @@ -0,0 +1,79 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.User; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.PolylineAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.annotation.entity.web.CommentsEntity; + + +public class PolylineAnnotator extends BaseAnnotator { + + private PolylineAnnotation polylineAnnotation; + + public PolylineAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + this.polylineAnnotation = new PolylineAnnotation(); + this.polylineAnnotation.setBox(getBox()); + this.polylineAnnotation.setPenColor(1201033); + this.polylineAnnotation.setPenWidth((byte) 2); + this.polylineAnnotation.setSvgPath(annotationData.getSvgPath()); + } + + @Override + public AnnotationBase annotateWord() { + polylineAnnotation = (PolylineAnnotation) initAnnotationBase(polylineAnnotation); + return polylineAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateCells() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateSlides() { + polylineAnnotation = (PolylineAnnotation) initAnnotationBase(polylineAnnotation); + fillCreatorName(polylineAnnotation, annotationData); + return polylineAnnotation; + } + + /** + *

+ * Fill creator name field in annotation info + *

+ * + * @param polylineAnnotation AnnotationBase + * @param annotationData + */ + protected static void fillCreatorName(AnnotationBase polylineAnnotation, AnnotationDataEntity annotationData) { + CommentsEntity[] comments = annotationData.getComments(); + if (comments != null && comments.length > 0 && comments[0] != null) { + polylineAnnotation.setUser(new User()); + polylineAnnotation.getUser().setName(comments[0].getUserName()); + } + } + + @Override + public AnnotationBase annotateImage() { + return annotateSlides(); + } + + @Override + public AnnotationBase annotateDiagram() { + return annotateSlides(); + } + + @Override + protected int getType() { + return AnnotationType.POLYLINE; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/ResourceRedactionAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/ResourceRedactionAnnotator.java new file mode 100644 index 0000000..bef6255 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/ResourceRedactionAnnotator.java @@ -0,0 +1,57 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.ResourcesRedactionAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; + + +public class ResourceRedactionAnnotator extends BaseAnnotator { + + private ResourcesRedactionAnnotation resourcesRedactionAnnotation; + + public ResourceRedactionAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + this.resourcesRedactionAnnotation = new ResourcesRedactionAnnotation(); + this.resourcesRedactionAnnotation.setBox(getBox()); + } + + @Override + public AnnotationBase annotateWord() { + resourcesRedactionAnnotation = (ResourcesRedactionAnnotation) initAnnotationBase(resourcesRedactionAnnotation); + return resourcesRedactionAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateCells() { + throw new TotalGroupDocsException(Message + annotationData.getType()); + } + + @Override + public AnnotationBase annotateSlides() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateImage() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateDiagram() { + return annotateWord(); + } + + @Override + protected int getType() { + return AnnotationType.RESOURCES_REDACTION; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextFieldAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextFieldAnnotator.java new file mode 100644 index 0000000..4df87dc --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextFieldAnnotator.java @@ -0,0 +1,61 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.TextFieldAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; + + +public class TextFieldAnnotator extends BaseAnnotator { + + private TextFieldAnnotation textFieldAnnotation; + + public TextFieldAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + textFieldAnnotation = new TextFieldAnnotation(); + textFieldAnnotation.setBox(getBox()); + + textFieldAnnotation.setFontFamily(annotationData.getFont() != null || !"".equals(annotationData.getFont()) ? annotationData.getFont() : "Arial"); + textFieldAnnotation.setFontColor(annotationData.getFontColor()); + textFieldAnnotation.setFontSize(annotationData.getFontSize() == 0 ? 12 : annotationData.getFontSize()); + textFieldAnnotation.setText(annotationData.getText()); + } + + @Override + public AnnotationBase annotateWord() { + textFieldAnnotation = (TextFieldAnnotation) initAnnotationBase(textFieldAnnotation); + return textFieldAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateCells() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateSlides() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateImage() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateDiagram() { + return annotateWord(); + } + + @Override + protected int getType() { + return AnnotationType.TEXT_FIELD; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextHighlightAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextHighlightAnnotator.java new file mode 100644 index 0000000..cc4b08d --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextHighlightAnnotator.java @@ -0,0 +1,57 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.HighlightAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; + + +public class TextHighlightAnnotator extends AbstractTextAnnotator { + + private HighlightAnnotation highlightAnnotation; + + public TextHighlightAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + highlightAnnotation = new HighlightAnnotation(); + highlightAnnotation.setPoints(getPoints(annotationData, pageInfo)); + } + + @Override + public AnnotationBase annotateWord() { + highlightAnnotation = (HighlightAnnotation) initAnnotationBase(highlightAnnotation); + return highlightAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateCells() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateSlides() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateImage() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateDiagram() { + throw new TotalGroupDocsException(Message + annotationData.getType()); + } + + @Override + protected int getType() { + return AnnotationType.TEXT_HIGHLIGHT; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextRedactionAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextRedactionAnnotator.java new file mode 100644 index 0000000..f1b3a4b --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextRedactionAnnotator.java @@ -0,0 +1,56 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.TextRedactionAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; + +public class TextRedactionAnnotator extends TextHighlightAnnotator { + + private TextRedactionAnnotation textRedactionAnnotation; + + public TextRedactionAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + textRedactionAnnotation = new TextRedactionAnnotation(); + textRedactionAnnotation.setPoints(getPoints(annotationData, pageInfo)); + } + + @Override + public AnnotationBase annotateCells() { + return annotatePdf(); + } + + @Override + public AnnotationBase annotateSlides() { + return annotatePdf(); + } + + @Override + public AnnotationBase annotateImage() { + throw new TotalGroupDocsException(Message + annotationData.getType()); + } + + @Override + public AnnotationBase annotateDiagram() { + throw new TotalGroupDocsException(Message + annotationData.getType()); + } + + @Override + public AnnotationBase annotatePdf() { + textRedactionAnnotation = (TextRedactionAnnotation) initAnnotationBase(textRedactionAnnotation); + return textRedactionAnnotation; + } + + @Override + public AnnotationBase annotateWord() { + return annotatePdf(); + } + + @Override + protected int getType() { + return AnnotationType.TEXT_REDACTION; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextReplacementAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextReplacementAnnotator.java new file mode 100644 index 0000000..c6d92ca --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextReplacementAnnotator.java @@ -0,0 +1,58 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.ReplacementAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; + + +public class TextReplacementAnnotator extends AbstractTextAnnotator { + + private ReplacementAnnotation replacementAnnotation; + + public TextReplacementAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + replacementAnnotation = new ReplacementAnnotation(); + replacementAnnotation.setPoints(getPoints(annotationData, pageInfo)); + replacementAnnotation.setTextToReplace(annotationData.getText()); + } + + @Override + public AnnotationBase annotateWord() { + replacementAnnotation = (ReplacementAnnotation) initAnnotationBase(replacementAnnotation); + return replacementAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateCells() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateSlides() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateImage() { + throw new TotalGroupDocsException(Message + annotationData.getType()); + } + + @Override + public AnnotationBase annotateDiagram() { + throw new TotalGroupDocsException(Message + annotationData.getType()); + } + + @Override + protected int getType() { + return AnnotationType.TEXT_REPLACEMENT; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextStrikeoutAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextStrikeoutAnnotator.java new file mode 100644 index 0000000..3f36675 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextStrikeoutAnnotator.java @@ -0,0 +1,58 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.StrikeoutAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; + +public class TextStrikeoutAnnotator extends AbstractTextAnnotator { + + private StrikeoutAnnotation strikeoutAnnotation; + + public TextStrikeoutAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + strikeoutAnnotation = new StrikeoutAnnotation(); + strikeoutAnnotation.setPoints(getPoints(annotationData, pageInfo)); + } + + @Override + public AnnotationBase annotateWord() { + strikeoutAnnotation = (StrikeoutAnnotation) initAnnotationBase(strikeoutAnnotation); + return strikeoutAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + strikeoutAnnotation = (StrikeoutAnnotation) initAnnotationBase(strikeoutAnnotation); + this.strikeoutAnnotation.setFontColor(0); + return strikeoutAnnotation; + } + + @Override + public AnnotationBase annotateCells() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateSlides() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateImage() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateDiagram() { + throw new TotalGroupDocsException(Message + annotationData.getType()); + } + + @Override + protected int getType() { + return AnnotationType.TEXT_STRIKEOUT; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextUnderlineAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextUnderlineAnnotator.java new file mode 100644 index 0000000..ef09636 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/TextUnderlineAnnotator.java @@ -0,0 +1,60 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.UnderlineAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; + + +public class TextUnderlineAnnotator extends AbstractTextAnnotator { + + private UnderlineAnnotation underlineAnnotation; + + public TextUnderlineAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + underlineAnnotation = new UnderlineAnnotation(); + underlineAnnotation.setPoints(getPoints(annotationData, pageInfo)); + } + + @Override + public AnnotationBase annotateWord() { + underlineAnnotation = (UnderlineAnnotation) initAnnotationBase(underlineAnnotation); + underlineAnnotation.setFontColor(1201033); + return underlineAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateCells() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateSlides() { + underlineAnnotation = (UnderlineAnnotation) initAnnotationBase(underlineAnnotation); + underlineAnnotation.setFontColor(0); + return underlineAnnotation; + } + + @Override + public AnnotationBase annotateImage() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateDiagram() { + throw new TotalGroupDocsException(Message + annotationData.getType()); + } + + @Override + protected int getType() { + return AnnotationType.TEXT_UNDERLINE; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/WatermarkAnnotator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/WatermarkAnnotator.java new file mode 100644 index 0000000..b395e0a --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/annotator/WatermarkAnnotator.java @@ -0,0 +1,60 @@ +package com.groupdocs.ui.annotation.annotator; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.WatermarkAnnotation; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; + +public class WatermarkAnnotator extends BaseAnnotator { + + private WatermarkAnnotation watermarkAnnotation; + + public WatermarkAnnotator(AnnotationDataEntity annotationData, PageInfo pageInfo) { + super(annotationData, pageInfo); + + watermarkAnnotation = new WatermarkAnnotation(); + watermarkAnnotation.setBox(getBox()); + watermarkAnnotation.setFontFamily(annotationData.getFont() != null || !"".equals(annotationData.getFont()) ? annotationData.getFont() : "Arial"); + watermarkAnnotation.setFontColor(annotationData.getFontColor()); + watermarkAnnotation.setFontSize(annotationData.getFontSize() == 0 ? 12 : annotationData.getFontSize()); + watermarkAnnotation.setText(annotationData.getText()); + } + + @Override + public AnnotationBase annotateWord() { + watermarkAnnotation = (WatermarkAnnotation) initAnnotationBase(watermarkAnnotation); + return watermarkAnnotation; + } + + @Override + public AnnotationBase annotatePdf() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateCells() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateSlides() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateImage() { + return annotateWord(); + } + + @Override + public AnnotationBase annotateDiagram() { + throw new TotalGroupDocsException(Message + annotationData.getType()); + } + + @Override + protected int getType() { + return AnnotationType.WATERMARK; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/config/AnnotationConfiguration.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/config/AnnotationConfiguration.java new file mode 100644 index 0000000..55738cb --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/config/AnnotationConfiguration.java @@ -0,0 +1,270 @@ +package com.groupdocs.ui.annotation.config; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.dropwizard.Configuration; +import org.apache.commons.lang3.StringUtils; + +import javax.validation.Valid; + +import static com.groupdocs.ui.common.config.DefaultDirectories.defaultAnnotationDirectory; +import static com.groupdocs.ui.common.config.DefaultDirectories.relativePathToAbsolute; + +/** + * AnnotationConfiguration + * + * @author Aspose Pty Ltd + */ +public class AnnotationConfiguration extends Configuration { + + @Valid + @JsonProperty + private String filesDirectory; + + @Valid + @JsonProperty + private String defaultDocument; + + @Valid + @JsonProperty + private int preloadPageCount; + + @Valid + @JsonProperty + private String fontsDirectory; + + @Valid + @JsonProperty + private boolean textAnnotation; + + @Valid + @JsonProperty + private boolean areaAnnotation; + + @Valid + @JsonProperty + private boolean pointAnnotation; + + @Valid + @JsonProperty + private boolean textStrikeoutAnnotation; + + @Valid + @JsonProperty + private boolean polylineAnnotation; + + @Valid + @JsonProperty + private boolean textFieldAnnotation; + + @Valid + @JsonProperty + private boolean watermarkAnnotation; + + @Valid + @JsonProperty + private boolean textReplacementAnnotation; + + @Valid + @JsonProperty + private boolean arrowAnnotation; + + @Valid + @JsonProperty + private boolean textRedactionAnnotation; + + @Valid + @JsonProperty + private boolean resourcesRedactionAnnotation; + + @Valid + @JsonProperty + private boolean textUnderlineAnnotation; + + @Valid + @JsonProperty + private boolean distanceAnnotation; + + @Valid + @JsonProperty + private boolean downloadOriginal; + + @Valid + @JsonProperty + private boolean downloadAnnotated; + + @Valid + @JsonProperty + private boolean zoom; + + @Valid + @JsonProperty + private boolean fitWidth; + + public String getFilesDirectory() { + return filesDirectory; + } + + public void setFilesDirectory(String filesDirectory) { + this.filesDirectory = StringUtils.isEmpty(filesDirectory) ? defaultAnnotationDirectory() : relativePathToAbsolute(filesDirectory); + } + + public String getDefaultDocument() { + return defaultDocument; + } + + public void setDefaultDocument(String defaultDocument) { + this.defaultDocument = defaultDocument; + } + + public int getPreloadPageCount() { + return preloadPageCount; + } + + public void setPreloadPageCount(int preloadPageCount) { + this.preloadPageCount = preloadPageCount; + } + + public String getFontsDirectory() { + return fontsDirectory; + } + + public void setFontsDirectory(String fontsDirectory) { + this.fontsDirectory = fontsDirectory; + } + + public boolean getTextAnnotation() { + return textAnnotation; + } + + public void setTextAnnotation(boolean textAnnotation) { + this.textAnnotation = textAnnotation; + } + + public boolean getAreaAnnotation() { + return areaAnnotation; + } + + public void setAreaAnnotation(boolean areaAnnotation) { + this.areaAnnotation = areaAnnotation; + } + + public boolean getPointAnnotation() { + return pointAnnotation; + } + + public void setPointAnnotation(boolean pointAnnotation) { + this.pointAnnotation = pointAnnotation; + } + + public boolean getTextStrikeoutAnnotation() { + return textStrikeoutAnnotation; + } + + public void setTextStrikeoutAnnotation(boolean textStrikeoutAnnotation) { + this.textStrikeoutAnnotation = textStrikeoutAnnotation; + } + + public boolean getPolylineAnnotation() { + return polylineAnnotation; + } + + public void setPolylineAnnotation(boolean polylineAnnotation) { + this.polylineAnnotation = polylineAnnotation; + } + + public boolean getTextFieldAnnotation() { + return textFieldAnnotation; + } + + public void setTextFieldAnnotation(boolean textFieldAnnotation) { + this.textFieldAnnotation = textFieldAnnotation; + } + + public boolean getWatermarkAnnotation() { + return watermarkAnnotation; + } + + public void setWatermarkAnnotation(boolean watermarkAnnotation) { + this.watermarkAnnotation = watermarkAnnotation; + } + + public boolean getTextReplacementAnnotation() { + return textReplacementAnnotation; + } + + public void setTextReplacementAnnotation(boolean textReplacementAnnotation) { + this.textReplacementAnnotation = textReplacementAnnotation; + } + + public boolean getArrowAnnotation() { + return arrowAnnotation; + } + + public void setArrowAnnotation(boolean arrowAnnotation) { + this.arrowAnnotation = arrowAnnotation; + } + + public boolean getTextRedactionAnnotation() { + return textRedactionAnnotation; + } + + public void setTextRedactionAnnotation(boolean textRedactionAnnotation) { + this.textRedactionAnnotation = textRedactionAnnotation; + } + + public boolean getResourcesRedactionAnnotation() { + return resourcesRedactionAnnotation; + } + + public void setResourcesRedactionAnnotation(boolean resourcesRedactionAnnotation) { + this.resourcesRedactionAnnotation = resourcesRedactionAnnotation; + } + + public boolean getTextUnderlineAnnotation() { + return textUnderlineAnnotation; + } + + public void setTextUnderlineAnnotation(boolean textUnderlineAnnotation) { + this.textUnderlineAnnotation = textUnderlineAnnotation; + } + + public boolean getDistanceAnnotation() { + return distanceAnnotation; + } + + public void setDistanceAnnotation(boolean distanceAnnotation) { + this.distanceAnnotation = distanceAnnotation; + } + + public boolean getDownloadOriginal() { + return downloadOriginal; + } + + public void setDownloadOriginal(boolean downloadOriginal) { + this.downloadOriginal = downloadOriginal; + } + + public boolean getDownloadAnnotated() { + return downloadAnnotated; + } + + public void setDownloadAnnotated(boolean downloadAnnotated) { + this.downloadAnnotated = downloadAnnotated; + } + + public boolean getZoom() { + return zoom; + } + + public void setZoom(boolean zoom) { + this.zoom = zoom; + } + + public boolean getFitWidth() { + return fitWidth; + } + + public void setFitWidth(boolean fitWidth) { + this.fitWidth = fitWidth; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/config/AnnotationConfigurationModel.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/config/AnnotationConfigurationModel.java new file mode 100644 index 0000000..e71e628 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/config/AnnotationConfigurationModel.java @@ -0,0 +1,289 @@ +package com.groupdocs.ui.annotation.config; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.groupdocs.ui.common.config.CommonConfiguration; +import com.groupdocs.ui.common.config.CommonConfigurationModel; + +import javax.validation.Valid; + +public class AnnotationConfigurationModel extends CommonConfigurationModel { + + @Valid + @JsonProperty + private String filesDirectory; + + @Valid + @JsonProperty + private String defaultDocument; + + @Valid + @JsonProperty + private int preloadPageCount; + + @Valid + @JsonProperty + private String fontsDirectory; + + @Valid + @JsonProperty + private boolean textAnnotation; + + @Valid + @JsonProperty + private boolean areaAnnotation; + + @Valid + @JsonProperty + private boolean pointAnnotation; + + @Valid + @JsonProperty + private boolean textStrikeoutAnnotation; + + @Valid + @JsonProperty + private boolean polylineAnnotation; + + @Valid + @JsonProperty + private boolean textFieldAnnotation; + + @Valid + @JsonProperty + private boolean watermarkAnnotation; + + @Valid + @JsonProperty + private boolean textReplacementAnnotation; + + @Valid + @JsonProperty + private boolean arrowAnnotation; + + @Valid + @JsonProperty + private boolean textRedactionAnnotation; + + @Valid + @JsonProperty + private boolean resourcesRedactionAnnotation; + + @Valid + @JsonProperty + private boolean textUnderlineAnnotation; + + @Valid + @JsonProperty + private boolean distanceAnnotation; + + @Valid + @JsonProperty + private boolean downloadOriginal; + + @Valid + @JsonProperty + private boolean downloadAnnotated; + + @Valid + @JsonProperty + private boolean zoom; + + @Valid + @JsonProperty + private boolean fitWidth; + + public String getFilesDirectory() { + return filesDirectory; + } + + public void setFilesDirectory(String filesDirectory) { + this.filesDirectory = filesDirectory; + } + + public String getDefaultDocument() { + return defaultDocument; + } + + public void setDefaultDocument(String defaultDocument) { + this.defaultDocument = defaultDocument; + } + + public int getPreloadPageCount() { + return preloadPageCount; + } + + public void setPreloadPageCount(int preloadPageCount) { + this.preloadPageCount = preloadPageCount; + } + + public String getFontsDirectory() { + return fontsDirectory; + } + + public void setFontsDirectory(String fontsDirectory) { + this.fontsDirectory = fontsDirectory; + } + + public boolean isTextAnnotation() { + return textAnnotation; + } + + public void setTextAnnotation(boolean textAnnotation) { + this.textAnnotation = textAnnotation; + } + + public boolean isAreaAnnotation() { + return areaAnnotation; + } + + public void setAreaAnnotation(boolean areaAnnotation) { + this.areaAnnotation = areaAnnotation; + } + + public boolean isPointAnnotation() { + return pointAnnotation; + } + + public void setPointAnnotation(boolean pointAnnotation) { + this.pointAnnotation = pointAnnotation; + } + + public boolean isTextStrikeoutAnnotation() { + return textStrikeoutAnnotation; + } + + public void setTextStrikeoutAnnotation(boolean textStrikeoutAnnotation) { + this.textStrikeoutAnnotation = textStrikeoutAnnotation; + } + + public boolean isPolylineAnnotation() { + return polylineAnnotation; + } + + public void setPolylineAnnotation(boolean polylineAnnotation) { + this.polylineAnnotation = polylineAnnotation; + } + + public boolean isTextFieldAnnotation() { + return textFieldAnnotation; + } + + public void setTextFieldAnnotation(boolean textFieldAnnotation) { + this.textFieldAnnotation = textFieldAnnotation; + } + + public boolean isWatermarkAnnotation() { + return watermarkAnnotation; + } + + public void setWatermarkAnnotation(boolean watermarkAnnotation) { + this.watermarkAnnotation = watermarkAnnotation; + } + + public boolean isTextReplacementAnnotation() { + return textReplacementAnnotation; + } + + public void setTextReplacementAnnotation(boolean textReplacementAnnotation) { + this.textReplacementAnnotation = textReplacementAnnotation; + } + + public boolean isArrowAnnotation() { + return arrowAnnotation; + } + + public void setArrowAnnotation(boolean arrowAnnotation) { + this.arrowAnnotation = arrowAnnotation; + } + + public boolean isTextRedactionAnnotation() { + return textRedactionAnnotation; + } + + public void setTextRedactionAnnotation(boolean textRedactionAnnotation) { + this.textRedactionAnnotation = textRedactionAnnotation; + } + + public boolean isResourcesRedactionAnnotation() { + return resourcesRedactionAnnotation; + } + + public void setResourcesRedactionAnnotation(boolean resourcesRedactionAnnotation) { + this.resourcesRedactionAnnotation = resourcesRedactionAnnotation; + } + + public boolean isTextUnderlineAnnotation() { + return textUnderlineAnnotation; + } + + public void setTextUnderlineAnnotation(boolean textUnderlineAnnotation) { + this.textUnderlineAnnotation = textUnderlineAnnotation; + } + + public boolean isDistanceAnnotation() { + return distanceAnnotation; + } + + public void setDistanceAnnotation(boolean distanceAnnotation) { + this.distanceAnnotation = distanceAnnotation; + } + + public boolean isDownloadOriginal() { + return downloadOriginal; + } + + public void setDownloadOriginal(boolean downloadOriginal) { + this.downloadOriginal = downloadOriginal; + } + + public boolean isDownloadAnnotated() { + return downloadAnnotated; + } + + public void setDownloadAnnotated(boolean downloadAnnotated) { + this.downloadAnnotated = downloadAnnotated; + } + + public boolean isZoom() { + return zoom; + } + + public void setZoom(boolean zoom) { + this.zoom = zoom; + } + + public boolean isFitWidth() { + return fitWidth; + } + + public void setFitWidth(boolean fitWidth) { + this.fitWidth = fitWidth; + } + + public static AnnotationConfigurationModel createAnnotationConfiguration(AnnotationConfiguration annotation, CommonConfiguration common) { + AnnotationConfigurationModel config = new AnnotationConfigurationModel(); + config.init(common); + config.setFilesDirectory(annotation.getFilesDirectory()); + config.setDefaultDocument(annotation.getDefaultDocument()); + config.setPreloadPageCount(annotation.getPreloadPageCount()); + config.setFontsDirectory(annotation.getFontsDirectory()); + config.setTextAnnotation(annotation.getTextAnnotation()); + config.setAreaAnnotation(annotation.getAreaAnnotation()); + config.setPointAnnotation(annotation.getPointAnnotation()); + config.setTextStrikeoutAnnotation(annotation.getTextStrikeoutAnnotation()); + config.setPolylineAnnotation(annotation.getPolylineAnnotation()); + config.setTextFieldAnnotation(annotation.getTextFieldAnnotation()); + config.setTextReplacementAnnotation(annotation.getTextReplacementAnnotation()); + config.setTextRedactionAnnotation(annotation.getTextRedactionAnnotation()); + config.setTextUnderlineAnnotation(annotation.getTextUnderlineAnnotation()); + config.setWatermarkAnnotation(annotation.getWatermarkAnnotation()); + config.setArrowAnnotation(annotation.getArrowAnnotation()); + config.setDistanceAnnotation(annotation.getDistanceAnnotation()); + config.setResourcesRedactionAnnotation(annotation.getResourcesRedactionAnnotation()); + config.setZoom(annotation.getZoom()); + config.setFitWidth(annotation.getFitWidth()); + config.setDownloadOriginal(annotation.getDownloadOriginal()); + config.setDownloadAnnotated(annotation.getDownloadAnnotated()); + return config; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/request/AnnotateDocumentRequest.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/request/AnnotateDocumentRequest.java new file mode 100644 index 0000000..3a005b9 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/request/AnnotateDocumentRequest.java @@ -0,0 +1,49 @@ +package com.groupdocs.ui.annotation.entity.request; + +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.common.entity.web.request.LoadDocumentRequest; + +/** + * AnnotateDocumentRequest + * + * @author Aspose Pty Ltd + */ +public class AnnotateDocumentRequest extends LoadDocumentRequest { + /** + * List of annotation data + */ + private AnnotationDataEntity[] annotationsData; + /** + * Document type + */ + private String documentType; + + /** + * For print annotated file + */ + private Boolean print; + + public AnnotationDataEntity[] getAnnotationsData() { + return annotationsData; + } + + public void setAnnotationsData(AnnotationDataEntity[] annotationsData) { + this.annotationsData = annotationsData; + } + + public String getDocumentType() { + return documentType; + } + + public void setDocumentType(String documentType) { + this.documentType = documentType; + } + + public Boolean getPrint() { + return print; + } + + public void setPrint(Boolean print) { + this.print = print; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/request/PostedDataEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/request/PostedDataEntity.java new file mode 100644 index 0000000..cf02445 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/request/PostedDataEntity.java @@ -0,0 +1,183 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.groupdocs.ui.annotation.entity.request; + +import java.util.List; + +/** + * + * @author AlexT + */ +public class PostedDataEntity { + /** + *

+ * Absolute path to the posted document. + *

+ * @return + */ + public String getPath() { + return path; + } + + /** + *

+ * Absolute path to the posted document. + *

+ * @param value + */ + public void setPath(String value) { + path = value; + } + private String path; + + /** + *

+ * Absolute path to the document. + *

+ * @return + */ + public String getGuid() { + return guid; + } + + /** + *

+ * Absolute path to the document. + *

+ * @param value + */ + public void setGuid(String value) { + guid = value; + } + private String guid; + + /** + *

+ * Document password. + *

+ * @return + */ + public String getPassword() { + return password; + } + + /** + *

+ * Document password. + *

+ * @param value + */ + public void setPassword(String value) { + password = value; + } + private String password; + + /** + *

+ * Url of the posted file. + *

+ * @return + */ + public String getUrl() { + return url; + } + + /** + *

+ * Url of the posted file. + *

+ * @param value + */ + public void setUrl(String value) { + url = value; + } + private String url; + + /** + *

+ * Page number. + *

+ * @return + */ + public int getPage() { + return page; + } + + /** + *

+ * Page number. + *

+ * @param value + */ + public void setPage(int value) { + page = value; + } + private int page; + + /** + *

+ * Page rotation angle. + *

+ * @return + */ + public int getAngle() { + return angle; + } + + /** + *

+ * Page rotation angle. + *

+ * @param value + */ + public void setAngle(int value) { + angle = value; + } + private int angle; + + /** + *

+ * Collection of the document pages with their data. + *

+ * @return + */ + public List getPages() { + return pages; + } + + /** + *

+ * Collection of the document pages with their data. + *

+ * @param value + */ + public void setPages(List value) { + pages = value; + } + + private List pages; + + /** + *

+ * Flag indicating whether the file should be overwritten. + *

+ * @return + */ + public boolean getRewrite() { + return rewrite; + } + + /** + *

+ * Flag indicating whether the file should be overwritten. + *

+ * @param value + */ + public void setRewrite(boolean value) { + rewrite = value; + } + private boolean rewrite; +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/AnnotatedDocumentEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/AnnotatedDocumentEntity.java new file mode 100644 index 0000000..143983a --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/AnnotatedDocumentEntity.java @@ -0,0 +1,48 @@ +package com.groupdocs.ui.annotation.entity.web; + +import java.util.ArrayList; +import java.util.List; + +/** + * AnnotatedDocumentEntity + * + * @author Aspose Pty Ltd + */ +public class AnnotatedDocumentEntity extends PageDescriptionEntity { + /** + * Document Guid + */ + private String guid; + /** + * List of supported types of annotations + */ + public String[] supportedAnnotations; + /** + * list of pages + */ + private List pages = new ArrayList<>();; + + public String getGuid() { + return guid; + } + + public void setGuid(String guid) { + this.guid = guid; + } + + public String[] getSupportedAnnotations() { + return supportedAnnotations; + } + + public void setSupportedAnnotations(String[] supportedAnnotations) { + this.supportedAnnotations = supportedAnnotations; + } + + public List getPages() { + return pages; + } + + public void setPages(List pages) { + this.pages = pages; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/AnnotationDataEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/AnnotationDataEntity.java new file mode 100644 index 0000000..bbca6ae --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/AnnotationDataEntity.java @@ -0,0 +1,177 @@ +package com.groupdocs.ui.annotation.entity.web; + +/** + * AnnotationDataEntity + * + * @author Aspose Pty Ltd + */ +public class AnnotationDataEntity { + /** + * Annotation Id + */ + private Integer id; + /** + * The number of page in document + */ + private Integer pageNumber; + /** + * The size of font of annotation + */ + private Double fontSize; + /** + * Annotation position. Left position. + */ + private float left; + /** + * Annotation position. Top position. + */ + private float top; + /** + * Annotation position. Width of annotation. + */ + private float width; + /** + * Annotation position. Height of annotation. + */ + private float height; + /** + * SVG path + */ + private String svgPath; + /** + * The type of annotation (text, watermark, ect) + */ + private String type; + /** + * Annotation text + */ + private String text; + /** + * The annotation font + */ + private String font; + /** + * List of comments in annotation + */ + private CommentsEntity[] comments; + /** + * Imported annotations + */ + private boolean imported; + /** + * font color + */ + private Integer fontColor; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public Integer getPageNumber() { + return pageNumber; + } + + public void setPageNumber(Integer pageNumber) { + this.pageNumber = pageNumber; + } + + public Double getFontSize() { + return fontSize; + } + + public void setFontSize(Double fontSize) { + this.fontSize = fontSize; + } + + public float getLeft() { + return left; + } + + public void setLeft(float left) { + this.left = left; + } + + public float getTop() { + return top; + } + + public void setTop(float top) { + this.top = top; + } + + public float getWidth() { + return width; + } + + public void setWidth(float width) { + this.width = width; + } + + public float getHeight() { + return height; + } + + public void setHeight(float height) { + this.height = height; + } + + public String getSvgPath() { + return svgPath; + } + + public void setSvgPath(String svgPath) { + this.svgPath = svgPath; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getText() { + return text; + } + + public void setText(String text) { + this.text = text; + } + + public String getFont() { + return font; + } + + public void setFont(String font) { + this.font = font; + } + + public CommentsEntity[] getComments() { + return comments; + } + + public void setComments(CommentsEntity[] comments) { + this.comments = comments; + } + + public boolean isImported() { + return imported; + } + + public void setImported(boolean imported) { + this.imported = imported; + } + + public Integer getFontColor() { + return fontColor; + } + + public void setFontColor(Integer fontColor) { + this.fontColor = fontColor; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/AnnotationPostedDataEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/AnnotationPostedDataEntity.java new file mode 100644 index 0000000..5df2967 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/AnnotationPostedDataEntity.java @@ -0,0 +1,42 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.groupdocs.ui.annotation.entity.web; + +import com.groupdocs.ui.annotation.entity.request.PostedDataEntity; + +/** + * + * @author AlexT + */ +public class AnnotationPostedDataEntity extends PostedDataEntity { + + public final String getDocumentType() { + return documentType; + } + + public final void setDocumentType(String value) { + documentType = value; + } + private String documentType; + + public final AnnotationDataEntity[] getAnnotationsData() { + return annotationsData; + } + + public final void setAnnotationsData(AnnotationDataEntity[] value) { + annotationsData = value; + } + private AnnotationDataEntity[] annotationsData; + + public final boolean getPrint() { + return print; + } + + public final void setPrint(boolean value) { + print = value; + } + private boolean print; +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/CommentsEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/CommentsEntity.java new file mode 100644 index 0000000..30fd005 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/CommentsEntity.java @@ -0,0 +1,45 @@ +package com.groupdocs.ui.annotation.entity.web; + +/** + * CommentsEntity + * + * @author Aspose Pty Ltd + */ +public class CommentsEntity { + private Integer id; + private String time; + private String text; + private String userName; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getTime() { + return time; + } + + public void setTime(String time) { + this.time = time; + } + + public String getText() { + return text; + } + + public void setText(String text) { + this.text = text; + } + + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/PageDataDescriptionEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/PageDataDescriptionEntity.java new file mode 100644 index 0000000..3b27c48 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/PageDataDescriptionEntity.java @@ -0,0 +1,26 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.groupdocs.ui.annotation.entity.web; + +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; + +/** + * + * @author AlexT + */ +public class PageDataDescriptionEntity extends PageDescriptionEntity { + @JsonProperty + private List annotations; // AnnotationDataEntity[] => List + + public final void setAnnotations(List annotations) { + this.annotations = annotations; + } + + public final List getAnnotations() { + return annotations; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/PageDescriptionEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/PageDescriptionEntity.java new file mode 100644 index 0000000..f54bd66 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/entity/web/PageDescriptionEntity.java @@ -0,0 +1,61 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.groupdocs.ui.annotation.entity.web; + +/** + * + * @author AlexT + */ +public class PageDescriptionEntity { + /** + * Page data + */ + private String data; + private int angle; + private double width; + private double height; + private int number; + + public int getAngle() { + return angle; + } + + public void setAngle(int angle) { + this.angle = angle; + } + + public double getWidth() { + return width; + } + + public void setWidth(double width) { + this.width = width; + } + + public double getHeight() { + return height; + } + + public void setHeight(double height) { + this.height = height; + } + + public int getNumber() { + return number; + } + + public void setNumber(int number) { + this.number = number; + } + + public String getData() { + return data; + } + + public void setData(String data) { + this.data = data; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/resources/AnnotationResources.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/resources/AnnotationResources.java new file mode 100644 index 0000000..ce9e462 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/resources/AnnotationResources.java @@ -0,0 +1,193 @@ +package com.groupdocs.ui.annotation.resources; + +import com.groupdocs.ui.annotation.config.AnnotationConfigurationModel; +import com.groupdocs.ui.annotation.entity.web.AnnotatedDocumentEntity; +import com.groupdocs.ui.annotation.entity.web.AnnotationPostedDataEntity; +import com.groupdocs.ui.annotation.entity.web.PageDataDescriptionEntity; +import com.groupdocs.ui.annotation.service.AnnotationService; +import com.groupdocs.ui.annotation.service.AnnotationServiceImpl; +import com.groupdocs.ui.annotation.views.Annotation; +import com.groupdocs.ui.common.config.GlobalConfiguration; +import com.groupdocs.ui.common.entity.web.FileDescriptionEntity; +import com.groupdocs.ui.common.entity.web.UploadedDocumentEntity; +import com.groupdocs.ui.common.entity.web.request.FileTreeRequest; +import com.groupdocs.ui.common.entity.web.request.LoadDocumentPageRequest; +import com.groupdocs.ui.common.entity.web.request.LoadDocumentRequest; +import com.groupdocs.ui.common.resources.Resources; +import com.groupdocs.ui.common.util.PathSecurityUtils; +import com.groupdocs.ui.common.util.Utils; +import org.glassfish.jersey.media.multipart.FormDataContentDisposition; +import org.glassfish.jersey.media.multipart.FormDataParam; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.*; +import javax.ws.rs.core.Context; +import java.io.*; +import java.net.UnknownHostException; +import java.util.*; +import static javax.ws.rs.core.MediaType.*; + + +/** + * AnnotationResources + * + * @author Aspose Pty Ltd + */ +@Path(value = "/annotation") +public class AnnotationResources extends Resources { + private static final Logger logger = LoggerFactory.getLogger(AnnotationResources.class); + + private AnnotationService annotationService; + + /** + * Constructor + * + * @param globalConfiguration global configuration object + * @throws UnknownHostException + */ + public AnnotationResources(GlobalConfiguration globalConfiguration) throws UnknownHostException { + super(globalConfiguration); + + annotationService = new AnnotationServiceImpl(globalConfiguration); + } + + /** + * Get and set annotation page + * + * @return html view + */ + @GET + public Annotation getView() { + // initiate index page + return new Annotation(globalConfiguration, DEFAULT_CHARSET); + } + + @GET + @Path(value = "/loadConfig") + @Produces(APPLICATION_JSON) + public AnnotationConfigurationModel loadConfig() { + return AnnotationConfigurationModel.createAnnotationConfiguration(annotationService.getAnnotationConfiguration(), globalConfiguration.getCommon()); + } + + /** + * Get files and directories + * + * @param fileTreeRequest request's object with specified path + * @return files and directories list + */ + @POST + @Path(value = "/loadFileTree") + @Produces(APPLICATION_JSON) + @Consumes(APPLICATION_JSON) + public List loadFileTree(FileTreeRequest fileTreeRequest) { + return annotationService.getFileList(fileTreeRequest); + } + + /** + * Get document description + * + * @param loadDocumentRequest + * @return document description + */ + @POST + @Path(value = "/loadDocumentDescription") + @Produces(APPLICATION_JSON) + @Consumes(APPLICATION_JSON) + public AnnotatedDocumentEntity loadDocumentDescription(LoadDocumentRequest loadDocumentRequest) { + return annotationService.getDocumentDescription(loadDocumentRequest); + } + + /** + * Get document page + * + * @return document page + */ + @POST + @Path(value = "/loadDocumentPage") + @Produces(APPLICATION_JSON) + @Consumes(APPLICATION_JSON) + public PageDataDescriptionEntity loadDocumentPage(LoadDocumentPageRequest loadDocumentPageRequest) { + return annotationService.getDocumentPage(loadDocumentPageRequest); + } + + /** + * Download document + * + * @param documentGuid path to document parameter + * @param response + */ + @GET + @Path(value = "/downloadDocument") + @Produces(APPLICATION_OCTET_STREAM) + public void downloadDocument(@QueryParam("path") String documentGuid, + @Context HttpServletResponse response) { + downloadFile(response, resolveDocumentPath(documentGuid)); + } + + /** + * Upload document + * + * @param inputStream file content + * @param fileDetail file description + * @param documentUrl url for document + * @param rewrite flag for rewriting file + * @return uploaded document object (the object contains uploaded document guid) + */ + @POST + @Path(value = "/uploadDocument") + @Produces(APPLICATION_JSON) + @Consumes(MULTIPART_FORM_DATA) + public UploadedDocumentEntity uploadDocument(@FormDataParam("file") InputStream inputStream, + @FormDataParam("file") FormDataContentDisposition fileDetail, + @FormDataParam("url") String documentUrl, + @FormDataParam("rewrite") Boolean rewrite) { + // upload file + String pathname = uploadFile(documentUrl, inputStream, fileDetail, rewrite, null); + // create response + UploadedDocumentEntity uploadedDocument = new UploadedDocumentEntity(); + uploadedDocument.setGuid(Utils.normalizePathToGuid( + annotationService.getAnnotationConfiguration().getFilesDirectory(), pathname)); + return uploadedDocument; + + } + + @Override + protected String getStoragePath(Map params) { + return globalConfiguration.getAnnotation().getFilesDirectory(); + } + + /** + * Annotate document + * + * @param annotateDocumentRequest + * @return annotated document info + */ + @POST + @Path(value = "/annotate") + @Produces(APPLICATION_JSON) + @Consumes(APPLICATION_JSON) + public AnnotatedDocumentEntity annotate(AnnotationPostedDataEntity annotateDocumentRequest) { + return annotationService.annotate(annotateDocumentRequest); + } + + + /** + * Download document + * + * @param documentGuid path to document parameter + * @param response + */ + @GET + @Path(value = "/downloadAnnotated") + @Produces(APPLICATION_OCTET_STREAM) + public void downloadAnnotated(@QueryParam("path") String documentGuid, + @Context HttpServletResponse response) { + downloadFile(response, resolveDocumentPath(documentGuid)); + } + + private String resolveDocumentPath(String documentGuid) { + return PathSecurityUtils.resolveInsideBaseDirectoryAsString( + globalConfiguration.getAnnotation().getFilesDirectory(), documentGuid); + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/service/AnnotationService.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/service/AnnotationService.java new file mode 100644 index 0000000..3be6c20 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/service/AnnotationService.java @@ -0,0 +1,72 @@ +package com.groupdocs.ui.annotation.service; + +import com.groupdocs.ui.annotation.config.AnnotationConfiguration; +import com.groupdocs.ui.annotation.entity.web.AnnotatedDocumentEntity; +import com.groupdocs.ui.annotation.entity.web.AnnotationPostedDataEntity; +import com.groupdocs.ui.annotation.entity.web.PageDataDescriptionEntity; +import com.groupdocs.ui.common.config.GlobalConfiguration; +import com.groupdocs.ui.common.entity.web.FileDescriptionEntity; +import com.groupdocs.ui.common.entity.web.request.FileTreeRequest; +import com.groupdocs.ui.common.entity.web.request.LoadDocumentPageRequest; +import com.groupdocs.ui.common.entity.web.request.LoadDocumentRequest; +import java.io.InputStream; +import java.util.List; + +/** + * Service for annotating documents + */ +public interface AnnotationService { + /** + * Get global configuration + * + * @return global configuration + */ + GlobalConfiguration getGlobalConfiguration(); + + /** + * Get annotation configuration + * + * @return annotation configuration + */ + AnnotationConfiguration getAnnotationConfiguration(); + + /** + * Get list of files and folders + * + * @param fileTreeRequest request object with path for loading list of files + * @return list of files and folders + */ + List getFileList(FileTreeRequest fileTreeRequest); + + /** + * Get document information + * + * @param loadDocumentRequest request object with document guid + * @return document with list of pages + */ + AnnotatedDocumentEntity getDocumentDescription(LoadDocumentRequest loadDocumentRequest); + + /** + * Load document page + * + * @param loadDocumentPageRequest request object with document guid and page number + * @return document page data + */ + PageDataDescriptionEntity getDocumentPage(LoadDocumentPageRequest loadDocumentPageRequest); + + /** + * Annotate document + * + * @param annotateDocumentRequest request object with document guid and annotations data + * @return annotated document + */ + AnnotatedDocumentEntity annotate(AnnotationPostedDataEntity annotateDocumentRequest); + + /** + * Annotate document by streams + * + * @param annotateDocumentRequest request object with document guid and annotations data + * @return stream of annotated document + */ + InputStream annotateByStream(AnnotationPostedDataEntity annotateDocumentRequest); +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/service/AnnotationServiceImpl.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/service/AnnotationServiceImpl.java new file mode 100644 index 0000000..3a1ba44 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/service/AnnotationServiceImpl.java @@ -0,0 +1,558 @@ +package com.groupdocs.ui.annotation.service; + +import com.groupdocs.annotation.licenses.License; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.Annotator; +import com.groupdocs.annotation.IDocumentInfo; +import com.groupdocs.annotation.exceptions.AnnotatorException; +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.options.LoadOptions; +import com.groupdocs.annotation.options.pagepreview.PreviewFormats; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.annotation.options.export.SaveOptions; +import com.groupdocs.annotation.options.pagepreview.CreatePageStream; +import com.groupdocs.annotation.options.pagepreview.PreviewOptions; +import com.groupdocs.ui.annotation.annotator.AnnotatorFactory; +import com.groupdocs.ui.annotation.annotator.BaseAnnotator; +import com.groupdocs.ui.annotation.config.AnnotationConfiguration; +import com.groupdocs.ui.annotation.entity.web.AnnotatedDocumentEntity; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.annotation.entity.web.AnnotationPostedDataEntity; +import com.groupdocs.ui.annotation.entity.web.PageDataDescriptionEntity; +import com.groupdocs.ui.common.config.GlobalConfiguration; +import com.groupdocs.ui.annotation.util.AnnotationMapper; +import com.groupdocs.ui.annotation.util.DocumentTypesConverter; +import com.groupdocs.ui.annotation.util.SupportedAnnotations; +import com.groupdocs.ui.common.entity.web.FileDescriptionEntity; +import com.groupdocs.ui.common.entity.web.request.FileTreeRequest; +import com.groupdocs.ui.common.entity.web.request.LoadDocumentPageRequest; +import com.groupdocs.ui.common.entity.web.request.LoadDocumentRequest; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; +import com.groupdocs.ui.common.util.ExceptionMessageUtils; +import com.groupdocs.ui.common.util.PathSecurityUtils; +import com.groupdocs.ui.common.util.Utils; + +import org.apache.commons.io.FilenameUtils; +import org.apache.commons.io.IOUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.*; +import java.util.ArrayList; +import java.util.List; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Arrays; +import java.util.Base64; +import java.util.Iterator; + +import org.apache.commons.lang3.StringUtils; + +public class AnnotationServiceImpl implements AnnotationService { + + private static final Logger logger = LoggerFactory.getLogger(AnnotationServiceImpl.class); + private final List SupportedImageFormats = new ArrayList<>(); + + private GlobalConfiguration globalConfiguration; + + private AnnotationConfiguration annotationConfiguration; + + private final List annotationPageDescriptionEntityList = new ArrayList<>(); + + public AnnotationServiceImpl(GlobalConfiguration globalConfiguration) { + this.annotationConfiguration = globalConfiguration.getAnnotation(); + this.globalConfiguration = globalConfiguration; + try { + SupportedImageFormats.add(".bmp"); + SupportedImageFormats.add(".jpeg"); + SupportedImageFormats.add(".jpg"); + SupportedImageFormats.add(".tiff"); + SupportedImageFormats.add(".tif"); + SupportedImageFormats.add(".png"); + SupportedImageFormats.add(".dwg"); + SupportedImageFormats.add(".dcm"); + SupportedImageFormats.add(".dxf"); + + // set GroupDocs license + License license = new License(); + license.setLicense(globalConfiguration.getApplication().getLicensePath()); + } catch (Throwable exc) { + logger.error("Can not verify Annotation license!"); + } + } + + @Override + public GlobalConfiguration getGlobalConfiguration() { + return globalConfiguration; + } + + @Override + public AnnotationConfiguration getAnnotationConfiguration() { + return annotationConfiguration; + } + + @Override + public List getFileList(FileTreeRequest fileTreeRequest) { + String filesDirectory = annotationConfiguration.getFilesDirectory(); + Path filesSubDirectoryPath = PathSecurityUtils.resolveInsideBaseDirectoryOrRoot(filesDirectory, fileTreeRequest.getPath()); + File directory = filesSubDirectoryPath.toFile(); + try { + if (!directory.isDirectory()) { + throw new TotalGroupDocsException(PathSecurityUtils.ACCESS_DENIED); + } + File[] files = directory.listFiles(); + if (files == null) { + throw new TotalGroupDocsException("Can't list files"); + } + List filesList = Arrays.asList(files); + + List fileList = getFileDescriptionEntities(filesList); + return fileList; + } catch (Exception ex) { + logger.error("Exception in getting file list", ex); + throw new TotalGroupDocsException(ex.getMessage(), ex); + } + } + + public List getFileDescriptionEntities(List filesList) { + String filesDirectory = annotationConfiguration.getFilesDirectory(); + List fileList = new ArrayList<>(); + for (File file : filesList) { + String extension = FilenameUtils.getExtension(file.getName()); + if (file.isDirectory() || (!StringUtils.isEmpty(extension))) { + FileDescriptionEntity fileDescription = new FileDescriptionEntity(); + try { + fileDescription.setGuid(Utils.normalizePathToGuid(filesDirectory, file.getCanonicalFile().getAbsolutePath())); + } catch (IOException e) { + throw new TotalGroupDocsException(e.getMessage(), e); + } + fileDescription.setName(file.getName()); + fileDescription.setDirectory(file.isDirectory()); + fileDescription.setSize(file.length()); + fileList.add(fileDescription); + } + } + return fileList; + } + + @Override + public AnnotatedDocumentEntity getDocumentDescription(LoadDocumentRequest loadDocumentRequest) { + try { + return loadDocument( + loadDocumentRequest, + annotationConfiguration.getPreloadPageCount() == 0 + ); + } catch (Throwable ex) { + throw new TotalGroupDocsException(ex.getMessage()); + } + } + + public final AnnotatedDocumentEntity loadDocument(LoadDocumentRequest loadDocumentRequest, boolean loadAllPages) { + Annotator annotator = null; + AnnotatedDocumentEntity description = new AnnotatedDocumentEntity(); + String guid = resolveDocumentPath(loadDocumentRequest.getGuid()); + String password = loadDocumentRequest.getPassword(); + LoadOptions loadOptions = new LoadOptions(); + loadOptions.setPassword(password); + + try { + annotator = new Annotator(guid, loadOptions); + + IDocumentInfo info = null; + try { + info = annotator.getDocument().getDocumentInfo(); + } catch (IOException e) { + e.printStackTrace(); + } + List annotations = annotator.get(); + + String documentType = ""; + if (info.getFileType() != null) { + documentType = SupportedImageFormats.contains(info.getFileType().getExtension()) ? "image" : info.getFileType().toString(); + } else { + documentType = "Portable Document Format"; + } + + description.supportedAnnotations = SupportedAnnotations.getSupportedAnnotations(documentType); + + List pagesContent = new ArrayList<>(); + + if (loadAllPages) { + pagesContent = getAllPagesContent(password, guid, info); + } + for (int i = 0; i < info.getPageCount(); i++) { + PageDataDescriptionEntity page = new PageDataDescriptionEntity(); + page.setNumber(i + 1); + page.setHeight(info.getPagesInfo().get(i).getHeight()); + page.setWidth(info.getPagesInfo().get(i).getWidth()); + + if (annotations != null && annotations.size() > 0) { + page.setAnnotations(AnnotationMapper.mapForPage(annotations, i + 1, info.getPagesInfo().get(i))); + } + + if (pagesContent.size() > 0) { + page.setData(pagesContent.get(i)); + } + description.getPages().add(page); + } + } finally { + if (annotator != null) { + annotator.dispose(); + } + } + + description.setGuid(Utils.normalizePathToGuid(annotationConfiguration.getFilesDirectory(), guid)); + // return document description + return description; + } + + public static String getStringFromStream(InputStream inputStream) throws IOException { + inputStream.reset(); + inputStream.skip(0); + + byte[] bytes = IOUtils.toByteArray(inputStream); + // encode ByteArray into String + return Base64.getEncoder().encodeToString(bytes); + } + + @Override + public PageDataDescriptionEntity getDocumentPage(LoadDocumentPageRequest loadDocumentPageRequest) { + String password = ""; + try { + // get/set parameters + String documentGuid = resolveDocumentPath(loadDocumentPageRequest.getGuid()); + int pageNumber = loadDocumentPageRequest.getPage(); + password = loadDocumentPageRequest.getPassword(); + PageDataDescriptionEntity loadedPage = new PageDataDescriptionEntity(); + + // get page image + byte[] bytes; + + final Annotator annotator = new Annotator(documentGuid, getLoadOptions(password)); + try { + final OutputStream renderPage = renderPageToMemoryStream(pageNumber, documentGuid, password); + + ByteArrayOutputStream bufferRenderPage = (ByteArrayOutputStream) renderPage; + byte[] bytesRenderPage = bufferRenderPage.toByteArray(); + InputStream streamRenderPage = new ByteArrayInputStream(bytesRenderPage); + + try { + bytes = IOUtils.toByteArray(streamRenderPage); + } finally { + if (streamRenderPage != null) { + streamRenderPage.close(); + } + } + + IDocumentInfo info = annotator.getDocument().getDocumentInfo(); + List annotations = annotator.get(); + + if (annotations != null && annotations.size() > 0) { + loadedPage.setAnnotations(AnnotationMapper.mapForPage(annotations, pageNumber, info.getPagesInfo().get(pageNumber - 1))); + } + + String encodedImage = Base64.getEncoder().encodeToString(bytes); + loadedPage.setData(encodedImage); + + loadedPage.setHeight(info.getPagesInfo().get(pageNumber - 1).getHeight()); + loadedPage.setWidth(info.getPagesInfo().get(pageNumber - 1).getWidth()); + loadedPage.setNumber(pageNumber); + } finally { + if (annotator != null) { + annotator.dispose(); + } + } + + // return loaded page object + return loadedPage; + } catch (Exception ex) { + throw new TotalGroupDocsException(ex.getMessage()); + } + } + + private static OutputStream renderPageToMemoryStream(int pageNumberToRender, String documentGuid, String password) { + try { + OutputStream result = new ByteArrayOutputStream(); // MemoryStream => OutputStream + InputStream inputStream = new FileInputStream(documentGuid); //final FileStream outputStream = File.openRead(documentGuid); + try { + final Annotator annotator = new Annotator(inputStream, getLoadOptions(password)); + try { + PreviewOptions previewOptions = new PreviewOptions( //PreviewOptions previewOptions = new PreviewOptions((pageNumber) = > result); + new CreatePageStream() { + @Override + public OutputStream invoke(int pageNumber) { + return result; + } + } + ); + previewOptions.setPreviewFormat(PreviewFormats.PNG); + previewOptions.setPageNumbers(new int[]{pageNumberToRender}); + previewOptions.setRenderComments(false); + + annotator.getDocument().generatePreview(previewOptions); + } finally { + if (annotator != null) { + annotator.dispose(); + } + } + } finally { + if (inputStream != null) { + inputStream.close(); + } + } + return result; + } catch (Exception ex) { + throw new TotalGroupDocsException(ex.getMessage()); + } + } + + private static LoadOptions getLoadOptions(String password) { + LoadOptions loadOptions = new LoadOptions(); + loadOptions.setPassword(password); + return loadOptions; + } + + public InputStream annotateDocument(String documentGuid, String documentType, List annotations) throws FileNotFoundException { + documentGuid = resolveDocumentPath(documentGuid); + Annotator annotator = new Annotator(documentGuid); + + SaveOptions saveOptions = new SaveOptions(); + saveOptions.setAnnotationTypes(AnnotationType.NONE); + + annotator.save(documentGuid, saveOptions); + + if (annotations.size() > 0) { + annotator.add(annotations); + annotator.save(documentGuid, new SaveOptions()); + } + + return new FileInputStream(documentGuid); + } + + @Override + public AnnotatedDocumentEntity annotate(AnnotationPostedDataEntity annotateDocumentRequest) { + AnnotatedDocumentEntity annotatedDocument = new AnnotatedDocumentEntity(); + try { + // get/set parameters + String documentGuid = resolveDocumentPath(annotateDocumentRequest.getGuid()); + String password = annotateDocumentRequest.getPassword(); + + //String documentType1 = DocumentTypesConverter.checkedDocumentType(documentGuid, annotateDocumentRequest.getDocumentType()); + String documentType = SupportedImageFormats.contains( + FilenameUtils.getExtension(annotateDocumentRequest.getGuid()) + ) ? "image" : annotateDocumentRequest.getDocumentType(); + + String tempPath = getTempPath(documentGuid); + + AnnotationDataEntity[] annotationsData = annotateDocumentRequest.getAnnotationsData(); + // initiate list of annotations to add + List annotations = new ArrayList<>(); + + final Annotator annotator = new Annotator(documentGuid, getLoadOptions(password)); + try { + IDocumentInfo info = annotator.getDocument().getDocumentInfo(); + + for (int i = 0; i < annotationsData.length; i++) { + AnnotationDataEntity annotationData = annotationsData[i]; + PageInfo pageInfo = info.getPagesInfo().get(annotationsData[i].getPageNumber() - 1); + // add annotation, if current annotation type isn't supported by the current document type it will be ignored + try { + BaseAnnotator baseAnnotator = AnnotatorFactory.createAnnotator(annotationData, pageInfo); + if (baseAnnotator.isSupported(documentType)) { + annotations.add(baseAnnotator.getAnnotationBase(documentType)); + } + } catch (java.lang.RuntimeException ex) { + throw new AnnotatorException(ex.getMessage(), ex); + } + } + } finally { + if (annotator != null) { + annotator.dispose(); + } + } + + // Add annotation to the document + removeAnnotations(documentGuid, password); + // check if annotations array contains at least one annotation to add + if (annotations.size() != 0) { + final Annotator annotator1 = new Annotator(documentGuid, getLoadOptions(password)); + try { + //foreach to while statements conversion + Iterator tmp0 = (annotations).iterator(); + + while (tmp0.hasNext()) { + AnnotationBase annotation = (AnnotationBase) tmp0.next(); + annotator1.add(annotation); + } + + annotator1.save(tempPath); + } finally { + if (annotator1 != null) { + annotator1.dispose(); + } + } + + try (OutputStream fileStream = new FileOutputStream(documentGuid)) { + InputStream inputStream1 = new FileInputStream(tempPath); + IOUtils.copyLarge(inputStream1, fileStream); + } + } + + annotatedDocument = new AnnotatedDocumentEntity(); + annotatedDocument.setGuid(Utils.normalizePathToGuid(annotationConfiguration.getFilesDirectory(), documentGuid)); + if (annotateDocumentRequest.getPrint()) { + annotatedDocument.setPages(getAnnotatedPagesForPrint(password, documentGuid)); + Files.move(Paths.get(documentGuid), Paths.get(annotateDocumentRequest.getGuid())); + } + } catch (Exception ex) { + throw new TotalGroupDocsException(ExceptionMessageUtils.toUserMessage(ex), ex); + } + + return annotatedDocument; + + } + + private List getAnnotatedPagesForPrint(String password, String documentGuid) { + AnnotatedDocumentEntity description = new AnnotatedDocumentEntity(); + try { + InputStream outputStream = new FileInputStream(documentGuid); + try { + final Annotator annotator = new Annotator(outputStream, getLoadOptions(password)); + try { + IDocumentInfo info = annotator.getDocument().getDocumentInfo(); + List pagesContent = getAllPagesContent(password, documentGuid, info); + + for (int i = 0; i < info.getPageCount(); i++) { + PageDataDescriptionEntity page = new PageDataDescriptionEntity(); + + if (pagesContent.size() > 0) { + page.setData(pagesContent.get(i)); + } + + description.getPages().add(page); + } + } finally { + if (annotator != null) { + annotator.dispose(); + } + } + } finally { + if (outputStream != null) { + outputStream.close(); + } + } + + return description.getPages(); + } catch (Exception ex) { + throw new TotalGroupDocsException(ex.getMessage(), ex); + } + } + + private static String getTempPath(String documentGuid) { + File fileName = new File(documentGuid); + return fileName.getParentFile().getPath() + "//tmp_" + fileName.getName(); + } + + public static void removeAnnotations(String documentGuid, String password) { + String tempPath = getTempPath(documentGuid); + + try { + final InputStream inputStream = new FileInputStream(documentGuid); + //final Stream inputStream = File.open(documentGuid, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite); + try { + final Annotator annotator = new Annotator(inputStream, getLoadOptions(password)); + try { + SaveOptions tmp0 = new SaveOptions(); + tmp0.setAnnotationTypes(AnnotationType.NONE); + annotator.save(tempPath, tmp0); + } finally { + if (annotator != null) { + annotator.dispose(); + } + } + } finally { + if (inputStream != null) { + inputStream.close(); + } + } + + + try (PrintWriter writer = new PrintWriter(documentGuid)) { + writer.print(""); + } + + try (OutputStream fileStream = new FileOutputStream(documentGuid)) { + InputStream inputStream1 = new FileInputStream(tempPath); + IOUtils.copyLarge(inputStream1, fileStream); + } + } catch (Exception ex) { + throw new TotalGroupDocsException(ex.getMessage(), ex); + } + } + + private List getAllPagesContent(String password, String documentGuid, IDocumentInfo pages) { + List allPages = new ArrayList<>(); + + for (int i = 0; i < pages.getPageCount(); i++) { + byte[] bytes; + try (OutputStream memoryStream = renderPageToMemoryStream(i + 1, documentGuid, password)) { + ByteArrayOutputStream bos = (ByteArrayOutputStream) memoryStream; + bytes = bos.toByteArray(); //memoryStream.ToArray(); + } catch (IOException ex) { + throw new TotalGroupDocsException(ex.getMessage(), ex); + } + + String encodedImage = new String(Base64.getEncoder().encode(bytes)); //Convert.ToBase64String(bytes); + allPages.add(encodedImage); + } + + return allPages; + } + + + public List getAnnotationInfos(AnnotationPostedDataEntity annotateDocumentRequest, String documentType) { + try { + AnnotationDataEntity[] annotationsData = annotateDocumentRequest.getAnnotationsData(); + // get document info - required to get document page height and calculate annotation top position + + List annotations = new ArrayList<>(); + for (AnnotationDataEntity annotationData : annotationsData) { + // create annotator + // add annotation, if current annotation type isn't supported by the current document type it will be ignored + PageDataDescriptionEntity pageData = annotationPageDescriptionEntityList.get(annotationData.getPageNumber() - 1); + + PageInfo pageInfo = new PageInfo(); + pageInfo.setHeight((int) pageData.getHeight()); + //pageInfo.setPageNumber(pageData.getNumber()); + pageInfo.setWidth((int) pageData.getWidth()); + + try { + annotations.add(AnnotatorFactory.createAnnotator(annotationData, pageInfo).getAnnotationBase(documentType)); + } catch (Throwable ex) { + throw new TotalGroupDocsException(ex.getMessage(), ex); + } + } + return annotations; + } catch (Exception ex) { + throw new TotalGroupDocsException(ex.getMessage(), ex); + } + } + + @Override + public InputStream annotateByStream(AnnotationPostedDataEntity annotateDocumentRequest) { + String documentGuid = resolveDocumentPath(annotateDocumentRequest.getGuid()); + String documentType = DocumentTypesConverter.checkedDocumentType(documentGuid, annotateDocumentRequest.getDocumentType()); + List annotations = getAnnotationInfos(annotateDocumentRequest, documentType); + try { + return annotateDocument(documentGuid, documentType, annotations); + } catch (FileNotFoundException ex) { + throw new TotalGroupDocsException(ex.getMessage(), ex); + } + } + + private String resolveDocumentPath(String guid) { + return PathSecurityUtils.resolveInsideBaseDirectoryAsString( + annotationConfiguration.getFilesDirectory(), guid); + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/AnnotationMapper.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/AnnotationMapper.java new file mode 100644 index 0000000..52b9318 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/AnnotationMapper.java @@ -0,0 +1,149 @@ +package com.groupdocs.ui.annotation.util; + +import com.groupdocs.annotation.models.PageInfo; +import com.groupdocs.annotation.models.Point; +import com.groupdocs.annotation.models.Rectangle; +import com.groupdocs.annotation.models.Reply; +import com.groupdocs.annotation.models.annotationmodels.AnnotationBase; +import com.groupdocs.annotation.models.annotationmodels.interfaces.properties.IBox; +import com.groupdocs.annotation.models.annotationmodels.interfaces.properties.IFontColor; +import com.groupdocs.annotation.models.annotationmodels.interfaces.properties.IFontFamily; +import com.groupdocs.annotation.models.annotationmodels.interfaces.properties.IFontSize; +import com.groupdocs.annotation.models.annotationmodels.interfaces.properties.IPoints; +import com.groupdocs.annotation.models.annotationmodels.interfaces.properties.ISvgPath; +import com.groupdocs.annotation.models.annotationmodels.interfaces.properties.IText; +import com.groupdocs.annotation.models.annotationmodels.interfaces.properties.ITextToReplace; +import com.groupdocs.annotation.options.export.AnnotationType; +import com.groupdocs.ui.annotation.entity.web.AnnotationDataEntity; +import com.groupdocs.ui.annotation.entity.web.CommentsEntity; +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.List; + + +public class AnnotationMapper { + + private AnnotationMapper() { + } + + /** + *

+ * Map AnnotationInfo instances into AnnotationDataEntity + *

+ * + * @param pageInfo + * @return + * @param annotations AnnotationInfo[] + * @param pageNumber int + */ + // AnnotationDataEntity[] => List + public static List mapForPage(List annotations, int pageNumber, PageInfo pageInfo) { //AnnotationBase[] => List + // initiate annotations data array + List pageAnnotations = new ArrayList<>(); + // each annotation data - this functionality used since annotations data returned by the + // GroupDocs.Annotation library are obfuscated + for (int n = 0; n < annotations.size(); n++) { + AnnotationBase annotationInfo = annotations.get(n); + if (pageNumber == annotationInfo.getPageNumber() + 1) { + AnnotationDataEntity annotation = mapAnnotationDataEntity(annotationInfo, pageInfo); + pageAnnotations.add(annotation); + } + } + + return pageAnnotations; + } + + /** + *

+ * Map AnnotationInfo instances into AnnotationDataEntity + *

+ * + * @param pageInfo + * @return AnnotationDataEntity + * @param annotationInfo AnnotationInfo + */ + public static AnnotationDataEntity mapAnnotationDataEntity(AnnotationBase annotationInfo, PageInfo pageInfo) { + String annotationTypeName = AnnotationType.getName(annotationInfo.getType()); + float maxY = 0, minY = Float.MAX_VALUE, maxX = 0, minX = Float.MAX_VALUE; // minY = 0, minX = 0 + float boxX = 0, boxY = 0, boxHeight = 0, boxWidth = 0; + String svgPath = ""; + + if (annotationInfo instanceof IPoints) { + List points = ((IPoints)annotationInfo).getPoints(); + for (Point point : points) { + maxY = point.getY() > maxY ? point.getY(): maxY; + maxX = point.getX() > maxX ? point.getX(): maxX; + minY = point.getY() < minY ? point.getY(): minY; + minX = point.getX() < minX ? point.getX(): minX; + } + } + + if (annotationInfo instanceof IBox) { + Rectangle box = ((IBox)annotationInfo).getBox(); + boxX = box.getX(); + boxY = box.getY(); + boxHeight = box.getHeight(); + boxWidth = box.getWidth(); + + StringBuilder builder = new StringBuilder(). + append("M").append(box.getX()). + append(",").append(box.getY()). + append("L").append(box.getWidth()). + append(",").append(box.getHeight()); + + svgPath = builder.toString(); + } + + AnnotationDataEntity annotation = new AnnotationDataEntity(); + annotation.setFont(annotationInfo instanceof IFontFamily ? ((IFontFamily)annotationInfo).getFontFamily() : ""); + + Double fontSize = annotationInfo instanceof IFontSize ? (((IFontSize)annotationInfo).getFontSize() == null) ? 0.0 : ((IFontSize)annotationInfo).getFontSize() : 0.0; + + annotation.setFontSize(fontSize); + + annotation.setFontColor( + annotationInfo instanceof IFontColor ? + ((((IFontColor) annotationInfo).getFontColor() == null) ? 0 : (int)((IFontColor) annotationInfo).getFontColor()) + : 0 + ); + annotation.setHeight(annotationInfo instanceof IBox ? boxHeight : (annotationInfo instanceof IPoints ? (maxY - minY) : 0)); + annotation.setLeft(annotationInfo instanceof IBox ? boxX : (annotationInfo instanceof IPoints ? minX : 0)); + + annotation.setPageNumber((int)annotationInfo.getPageNumber() + 1); + annotation.setSvgPath(annotationInfo instanceof ISvgPath ? (((ISvgPath)annotationInfo).getSvgPath().replace("l", "L")) : svgPath); + + String text = ""; + if (annotationInfo.getMessage() == null && annotationInfo instanceof ITextToReplace) { + text = ((ITextToReplace) annotationInfo).getTextToReplace(); + } else if (annotationInfo instanceof IText && ((IText) annotationInfo).getText() != null) { + text = ((IText) annotationInfo).getText(); + } else if (annotationInfo.getMessage() != null) { + text = annotationInfo.getMessage(); + } + annotation.setText(text); + + // TODO: remove comment after check all annotations types on main formats + annotation.setTop(annotationInfo instanceof IBox ? boxY : (annotationInfo instanceof IPoints ? pageInfo.getHeight() - maxY : 0)); + annotation.setType(annotationTypeName.toLowerCase()); + annotation.setWidth(annotationInfo instanceof IBox ? boxWidth : (annotationInfo instanceof IPoints ? (maxX - minX) : 0)); + // each reply data + List replies = annotationInfo.getReplies(); + if (replies != null && replies.size() > 0) { + CommentsEntity[] comments = new CommentsEntity[replies.size()]; + for (int m = 0; m < replies.size(); m++) { + CommentsEntity comment = new CommentsEntity(); + Reply reply = replies.get(m); + comment.setText(reply.getComment()); + DateFormat format = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss"); //"yyyy-MM-dd HH:mm:ss" + comment.setTime(format.format(reply.getRepliedOn())); + + comment.setUserName(reply.getUser().getName()); + comments[m] = comment; + } + annotation.setComments(comments); + } + + return annotation; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/AnnotationTypes.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/AnnotationTypes.java new file mode 100644 index 0000000..6793ba5 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/AnnotationTypes.java @@ -0,0 +1,57 @@ +package com.groupdocs.ui.annotation.util; + +import java.util.HashMap; +import java.util.Map; + +/** + * AnnotationTypes + * Contains all annotations types + * + * @author Aspose Pty Ltd + */ +public class AnnotationTypes { + + /** + * Map annotation types from byte into string + */ + private static final Map types = new HashMap<>(); + + // init map values + { + types.put((byte) 0, "text"); + types.put((byte) 1, "area"); + types.put((byte) 2, "point"); + types.put((byte) 3, "textStrikeout"); + types.put((byte) 4, "polyline"); + types.put((byte) 5, "textField"); + types.put((byte) 6, "watermark"); + types.put((byte) 7, "textReplacement"); + types.put((byte) 8, "arrow"); + types.put((byte) 9, "textRedaction"); + types.put((byte) 10, "resourcesRedaction"); + types.put((byte) 11, "textUnderline"); + types.put((byte) 12, "distance"); + } + + /** + * Instance of AnnotationTypes + */ + public static final AnnotationTypes instance = new AnnotationTypes(); + + /** + * Private constructor, for using only in this class + */ + private AnnotationTypes() { + } + + /** + * Get string value of annotation type + * + * @param type byte value of annotation type + * @return string value of annotation type + */ + public String getAnnotationType(byte type) { + return types.get(type); + } +} + diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/DocumentTypesConverter.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/DocumentTypesConverter.java new file mode 100644 index 0000000..bac184e --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/DocumentTypesConverter.java @@ -0,0 +1,68 @@ +package com.groupdocs.ui.annotation.util; + +//import com.groupdocs.annotation.domain.DocumentType; + +import com.google.common.collect.Lists; +import com.groupdocs.annotation.models.DocumentType; +import static com.groupdocs.ui.common.util.Utils.parseFileExtension; +import java.util.List; + +/** + * Converter for document types + */ +public class DocumentTypesConverter { + + private static final List supportedImageFormats = Lists.newArrayList("bmp", "jpeg", "jpg", "tiff", "tif", "png", "gif", "emf", "wmf", "dwg", "dicom", "djvu"); + private static final List supportedDiagramFormats = Lists.newArrayList(".vsd", ".vdx", ".vss", ".vsx", ".vst", ".vtx", ".vsdx", ".vdw", ".vstx", ".vssx"); + + /** + *

+ * Convert document type from string into int + *

+ * + * @return int + * @param documentType string + */ +// public static int getDocumentType(String documentType) { +// switch (documentType) { +// case "Portable Document Format": +// case "PDF": +// return DocumentType.Pdf; +// case "Microsoft Word": +// case "WORDS": +// case "Microsoft Word Open XML format (.docx)": +// return DocumentType.Words; +// case "Microsoft PowerPoint": +// case "SLIDES": +// return DocumentType.Slides; +// case "image": +// return DocumentType.Images; +// case "Microsoft Excel": +// case "CELLS": +// return DocumentType.Cells; +// case "AutoCAD Drawing File Format": +// case "diagram": +// return DocumentType.Diagram; +// default: +// return DocumentType.Undefined; +// } +// } + + /** + * Check image and diagram document types + * + * @param documentGuid document name + * @param documentType string value of document type + * @return correct document type + */ + public static String checkedDocumentType(String documentGuid, String documentType) { + String fileExtension = parseFileExtension(documentGuid); + // check if document type is image + if (supportedImageFormats.contains(fileExtension)) { + documentType = "image"; + } else if (supportedDiagramFormats.contains(fileExtension)) { + documentType = "diagram"; + } + return documentType; + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/SupportedAnnotations.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/SupportedAnnotations.java new file mode 100644 index 0000000..f523ff4 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/SupportedAnnotations.java @@ -0,0 +1,102 @@ +package com.groupdocs.ui.annotation.util; + +/** + * The list of supported annotation types for each document type + */ +public class SupportedAnnotations { + public static String[] CELLS = { + "text" + }; + public static String[] DIAGRAM = { + "area", + "point", + "polyline", + "textField", + "arrow", + "textRedaction", + "resourcesRedaction", + "distance" + }; + public static String[] WORD = { + "point", + "textStrikeout", + "polyline", + "textField", + "watermark", + "textReplacement", + "arrow", + "textRedaction", + "resourcesRedaction", + "textUnderline", + "distance", + "text" + }; + public static String[] PDF = { + "area", + "point", + "textStrikeout", + "polyline", + "textField", + "watermark", + "textReplacement", + "arrow", + "textRedaction", + "resourcesRedaction", + "textUnderline", + "distance", + "text" + }; + public static String[] IMAGE = { + "area", + "point", + "textStrikeout", + "polyline", + "textField", + "watermark", + "arrow", + "textRedaction", + "resourcesRedaction", + "textUnderline", + "distance", + "text" + }; + public static String[] SLIDES = { + "area", + "point", + "textStrikeout", + "polyline", + "textField", + "watermark", + "arrow", + "textRedaction", + "resourcesRedaction", + "textUnderline", + "text" + }; + + public static String[] getSupportedAnnotations(String documentType) { + switch (documentType) { + case "Adobe Portable Document format": + case "Portable Document Format": + case "PDF": + return PDF; + case "Microsoft Word Open XML format": + case "Microsoft Word": + case "WORDS": + return WORD; + case "Microsoft PowerPoint": + case "SLIDES": + return SLIDES; + case "image": + return IMAGE; + case "Microsoft Excel": + case "CELLS": + return CELLS; + case "AutoCAD Drawing File Format": + case "diagram": + return DIAGRAM; + default: + return PDF; + } + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/directory/DirectoryUtils.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/directory/DirectoryUtils.java new file mode 100644 index 0000000..6025fe0 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/directory/DirectoryUtils.java @@ -0,0 +1,28 @@ +package com.groupdocs.ui.annotation.util.directory; + +import com.groupdocs.ui.annotation.config.AnnotationConfiguration; + +/** + * DirectoryUtils + * Compare and sort file types - folders first + * @author Aspose Pty Ltd + */ +public class DirectoryUtils { + private FilesDirectoryUtils filesDirectory; + + /** + * Constructor + * @param annotationConfiguration + */ + public DirectoryUtils(AnnotationConfiguration annotationConfiguration){ + filesDirectory = new FilesDirectoryUtils(annotationConfiguration); + } + + /** + * Get files directory - path where all documents for signing are stored + * @return FilesDirectoryUtils + */ + public FilesDirectoryUtils getFilesDirectory() { + return filesDirectory; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/directory/FilesDirectoryUtils.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/directory/FilesDirectoryUtils.java new file mode 100644 index 0000000..160c080 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/directory/FilesDirectoryUtils.java @@ -0,0 +1,30 @@ +package com.groupdocs.ui.annotation.util.directory; + +import com.groupdocs.ui.annotation.config.AnnotationConfiguration; + +/** + * FilesDirectoryUtils + * Compare and sort file types - folders first + * @author Aspose Pty Ltd + */ +public class FilesDirectoryUtils implements IDirectoryUtils { + private AnnotationConfiguration annotationConfiguration; + + /** + * Constructor + * @param annotationConfiguration + */ + public FilesDirectoryUtils(AnnotationConfiguration annotationConfiguration){ + this.annotationConfiguration = annotationConfiguration; + } + + /** + * Get path for files directory + * @return path of the files directory + */ + @Override + public String getPath() { + return annotationConfiguration.getFilesDirectory(); + } + +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/directory/IDirectoryUtils.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/directory/IDirectoryUtils.java new file mode 100644 index 0000000..3bfe9d9 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/util/directory/IDirectoryUtils.java @@ -0,0 +1,11 @@ +package com.groupdocs.ui.annotation.util.directory; + +/** + * IDirectoryUtils + * Compare and sort file types - folders first + * @author Aspose Pty Ltd + */ +public interface IDirectoryUtils { + + String getPath(); +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/views/Annotation.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/views/Annotation.java new file mode 100644 index 0000000..d5452d8 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/annotation/views/Annotation.java @@ -0,0 +1,43 @@ +package com.groupdocs.ui.annotation.views; + +import com.groupdocs.ui.common.config.GlobalConfiguration; +import io.dropwizard.views.View; + +import java.nio.charset.Charset; + +/** + * Annotation + * + * @author Aspose Pty Ltd + */ + +public class Annotation extends View { + private GlobalConfiguration globalConfiguration; + + /** + * Constructor + * @param globalConfiguration total configuration + * @param charset charset + */ + public Annotation(GlobalConfiguration globalConfiguration, String charset){ + super("annotation.ftl", Charset.forName(charset)); + this.globalConfiguration = globalConfiguration; + } + + /** + * Get total config + * @return total config + */ + public GlobalConfiguration getGlobalConfiguration() { + return globalConfiguration; + } + + /** + * Set total config + * @param globalConfiguration total config + */ + public void setGlobalConfiguration(GlobalConfiguration globalConfiguration) { + this.globalConfiguration = globalConfiguration; + } + +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/MainService.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/MainService.java new file mode 100644 index 0000000..76f92d6 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/MainService.java @@ -0,0 +1,107 @@ +package com.groupdocs.ui.common; + +import com.google.common.collect.Sets; +import com.groupdocs.ui.annotation.resources.AnnotationResources; +import com.groupdocs.ui.common.config.GlobalConfiguration; +import com.groupdocs.ui.common.exception.TotalGroupDocsExceptionMapper; +import com.groupdocs.ui.common.health.TemplateHealthCheck; +import io.dropwizard.Application; +import io.dropwizard.assets.AssetsBundle; +import io.dropwizard.configuration.ResourceConfigurationSourceProvider; +import io.dropwizard.forms.MultiPartBundle; +import io.dropwizard.setup.Bootstrap; +import io.dropwizard.setup.Environment; +import io.dropwizard.views.ViewBundle; +import org.apache.commons.lang3.StringUtils; +import org.eclipse.jetty.servlets.CrossOriginFilter; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.servlet.DispatcherType; +import javax.servlet.FilterRegistration; +import java.io.File; +import java.util.EnumSet; +import java.util.HashSet; + +/** + * Main class + * Where all the magic starts + * + * @author Aspose Pty Ltd + */ + +public class MainService extends Application { + private static final Logger logger = LoggerFactory.getLogger(MainService.class); + + private static final String SERVER_COMMAND = "server"; + private static final String CHECK_COMMAND = "check"; + private static final HashSet COMMANDS = Sets.newHashSet(SERVER_COMMAND, CHECK_COMMAND); + private static final String DEFAULT_CONFIGURATION_FILE = "defaultConfiguration.yml"; + private static final String EXTERNAL_CONFIGURATION_FILE = "configuration.yml"; + + private boolean defaultConfiguration; + + public MainService() { + super(); + defaultConfiguration = false; + } + + public MainService(boolean defaultConfiguration) { + super(); + this.defaultConfiguration = defaultConfiguration; + } + + public static void main(String[] args) throws Exception { + if (args == null || args.length == 0 || (args.length == 1 && !COMMANDS.contains(args[0]))) { + logger.info("Command is not specified. Use default: server."); + args = args.length == 1 ? new String[]{SERVER_COMMAND, args[0]} : new String[]{SERVER_COMMAND, EXTERNAL_CONFIGURATION_FILE}; + } + if (args.length > 1 && StringUtils.isNotEmpty(args[1]) && new File(args[1]).exists()) { + new MainService(false).run(args); + } else { + logger.info("Can not find external configuration file. Use default."); + String[] newArgs = new String[]{args[0], DEFAULT_CONFIGURATION_FILE}; + new MainService(true).run(newArgs); + } + } + + @Override + public void initialize(Bootstrap bootstrap) { + if (defaultConfiguration) { + bootstrap.setConfigurationSourceProvider(new ResourceConfigurationSourceProvider()); + } else { + bootstrap.setConfigurationSourceProvider(new MergedConfigurationSourceProvider(DEFAULT_CONFIGURATION_FILE)); + } + // add assets bundle in order to get resources from assets directory + bootstrap.addBundle(new AssetsBundle()); + // init view bundle + bootstrap.addBundle(new ViewBundle()); + // for injection file content in resource methods + bootstrap.addBundle(new MultiPartBundle()); + } + + @Override + public void run(GlobalConfiguration globalConfiguration, Environment environment) throws Exception { + // Enable CORS headers + final FilterRegistration.Dynamic cors = environment.servlets().addFilter("CORS", CrossOriginFilter.class); + + // Configure CORS parameters + cors.setInitParameter("allowedOrigins", "*"); + cors.setInitParameter("allowedHeaders", "X-Requested-With,Content-Type,Accept,Origin"); + cors.setInitParameter("allowedMethods", "OPTIONS,GET,PUT,POST,DELETE,HEAD"); + + // Add URL mapping + cors.addMappingForUrlPatterns(EnumSet.allOf(DispatcherType.class), true, "/*"); + + // Initiate resources (web pages) + environment.jersey().register(new AnnotationResources(globalConfiguration)); + + // Add custom exception mapper + environment.jersey().register(new TotalGroupDocsExceptionMapper()); + + // Add dummy health check to get rid of console warnings + // TODO: implement health check + final TemplateHealthCheck healthCheck = new TemplateHealthCheck(""); + environment.healthChecks().register("HealthCheck", healthCheck); + } +} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/MergedConfigurationSourceProvider.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/MergedConfigurationSourceProvider.java new file mode 100644 index 0000000..ee4c33f --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/MergedConfigurationSourceProvider.java @@ -0,0 +1,79 @@ +package com.groupdocs.ui.common; + +import io.dropwizard.configuration.ConfigurationSourceProvider; +import org.yaml.snakeyaml.Yaml; + +import javax.validation.constraints.NotNull; +import java.io.*; +import java.nio.charset.StandardCharsets; +import java.util.Map; + +/** + * Provider for reading two config files default and external file + */ +public class MergedConfigurationSourceProvider implements ConfigurationSourceProvider { + private String defaultConfigFile; + + public MergedConfigurationSourceProvider(@NotNull String defaultConfigFile) { + this.defaultConfigFile = defaultConfigFile; + } + + @Override + public InputStream open(String path) throws IOException { + try (InputStream defaultConfigStream = getResourceAsStream(defaultConfigFile); + InputStream extConfigStream = getResourceFile(path)) { + + Yaml yaml = new Yaml(); + Map defaultConfig = yaml.loadAs(defaultConfigStream, Map.class); + Map extConfig = yaml.loadAs(extConfigStream, Map.class); + + merge(defaultConfig, extConfig); + + return new ByteArrayInputStream(new Yaml().dump(defaultConfig).getBytes(StandardCharsets.UTF_8)); + } + } + + /** + * Deep merge two map, if there is a property in extConfig, then replace its value in defaultConfig. + * + * @param defaultConfig contains all properties with default values + * @param extConfig contains properties from external config, to replace its values in default config + */ + private void merge(Map defaultConfig, Map extConfig) { + for (String key : defaultConfig.keySet()) { + if (extConfig.containsKey(key)) { + if (defaultConfig.get(key) instanceof Map) { + merge((Map) defaultConfig.get(key), (Map) extConfig.get(key)); + } else { + defaultConfig.replace(key, extConfig.get(key)); + } + } + } + } + + /** + * Read file from resources + * + * @param path path to config file + * @return + */ + private InputStream getResourceAsStream(String path) { + return this.getClass().getClassLoader().getResourceAsStream(path); + } + + /** + * Read external file + * + * @param path path to config file + * @return + * @throws IOException + */ + private InputStream getResourceFile(String path) throws IOException { + File file = new File(path); + if (!file.exists()) { + throw new FileNotFoundException("File " + file + " not found"); + } else { + return new FileInputStream(file); + } + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/ApplicationConfiguration.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/ApplicationConfiguration.java new file mode 100644 index 0000000..152fbd2 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/ApplicationConfiguration.java @@ -0,0 +1,41 @@ +package com.groupdocs.ui.common.config; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.dropwizard.Configuration; +import org.apache.commons.lang3.StringUtils; + +import javax.validation.Valid; + +import static com.groupdocs.ui.common.config.DefaultDirectories.defaultLicenseDirectory; +import static com.groupdocs.ui.common.config.DefaultDirectories.relativePathToAbsolute; + +/** + * ApplicationConfiguration + * + * @author Aspose Pty Ltd + */ +public class ApplicationConfiguration extends Configuration { + + @Valid + @JsonProperty + private String licensePath; + @Valid + @JsonProperty + private String hostAddress; + + public String getLicensePath() { + return licensePath; + } + + public void setLicensePath(String licensePath) { + this.licensePath = StringUtils.isEmpty(licensePath) ? defaultLicenseDirectory() : relativePathToAbsolute(licensePath); + } + + public String getHostAddress() { + return hostAddress; + } + + public void setHostAddress(String hostAddress) { + this.hostAddress = hostAddress; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/CommonConfiguration.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/CommonConfiguration.java new file mode 100644 index 0000000..74917de --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/CommonConfiguration.java @@ -0,0 +1,98 @@ +package com.groupdocs.ui.common.config; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.dropwizard.Configuration; + +import javax.validation.Valid; + +/** + * CommonConfiguration + * + * @author Aspose Pty Ltd + */ +public class CommonConfiguration extends Configuration { + + @Valid + @JsonProperty + private boolean pageSelector; + + @Valid + @JsonProperty + private boolean download; + + @Valid + @JsonProperty + private boolean upload; + + @Valid + @JsonProperty + private boolean print; + + @Valid + @JsonProperty + private boolean browse; + + @Valid + @JsonProperty + private boolean rewrite; + + @Valid + @JsonProperty + private boolean enableRightClick; + + public boolean isPageSelector() { + return pageSelector; + } + + public void setPageSelector(boolean pageSelector) { + this.pageSelector = pageSelector; + } + + public boolean isDownload() { + return download; + } + + public void setDownload(boolean download) { + this.download = download; + } + + public boolean isUpload() { + return upload; + } + + public void setUpload(boolean upload) { + this.upload = upload; + } + + public boolean isPrint() { + return print; + } + + public void setPrint(boolean print) { + this.print = print; + } + + public boolean isBrowse() { + return browse; + } + + public void setBrowse(boolean browse) { + this.browse = browse; + } + + public boolean isRewrite() { + return rewrite; + } + + public void setRewrite(boolean rewrite) { + this.rewrite = rewrite; + } + + public boolean isEnableRightClick() { + return enableRightClick; + } + + public void setEnableRightClick(boolean enableRightClick) { + this.enableRightClick = enableRightClick; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/CommonConfigurationModel.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/CommonConfigurationModel.java new file mode 100644 index 0000000..446f70e --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/CommonConfigurationModel.java @@ -0,0 +1,101 @@ +package com.groupdocs.ui.common.config; + +import com.fasterxml.jackson.annotation.JsonProperty; + +import javax.validation.Valid; + +public class CommonConfigurationModel { + @Valid + @JsonProperty + private boolean pageSelector; + + @Valid + @JsonProperty + private boolean download; + + @Valid + @JsonProperty + private boolean upload; + + @Valid + @JsonProperty + private boolean print; + + @Valid + @JsonProperty + private boolean browse; + + @Valid + @JsonProperty + private boolean rewrite; + + @Valid + @JsonProperty + private boolean enableRightClick; + + public boolean isPageSelector() { + return pageSelector; + } + + public void setPageSelector(boolean pageSelector) { + this.pageSelector = pageSelector; + } + + public boolean isDownload() { + return download; + } + + public void setDownload(boolean download) { + this.download = download; + } + + public boolean isUpload() { + return upload; + } + + public void setUpload(boolean upload) { + this.upload = upload; + } + + public boolean isPrint() { + return print; + } + + public void setPrint(boolean print) { + this.print = print; + } + + public boolean isBrowse() { + return browse; + } + + public void setBrowse(boolean browse) { + this.browse = browse; + } + + public boolean isRewrite() { + return rewrite; + } + + public void setRewrite(boolean rewrite) { + this.rewrite = rewrite; + } + + public boolean isEnableRightClick() { + return enableRightClick; + } + + public void setEnableRightClick(boolean enableRightClick) { + this.enableRightClick = enableRightClick; + } + + public void init(CommonConfiguration common) { + this.setPageSelector(common.isPageSelector()); + this.setDownload(common.isDownload()); + this.setUpload(common.isUpload()); + this.setPrint(common.isPrint()); + this.setBrowse(common.isBrowse()); + this.setRewrite(common.isRewrite()); + this.setEnableRightClick(common.isEnableRightClick()); + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/DefaultDirectories.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/DefaultDirectories.java new file mode 100644 index 0000000..4576ea4 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/DefaultDirectories.java @@ -0,0 +1,76 @@ +package com.groupdocs.ui.common.config; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.File; +import java.nio.file.FileSystems; +import java.nio.file.Path; + +public class DefaultDirectories { + private static final Logger logger = LoggerFactory.getLogger(DefaultDirectories.class); + + public static final String LIC = ".lic"; + public static final String LICENSES = "Licenses"; + public static final String DOCUMENT_SAMPLES = "DocumentSamples"; + + public static String defaultLicenseDirectory() { + Path defaultLicFolder = FileSystems.getDefault().getPath(LICENSES).toAbsolutePath(); + File licFolder = defaultLicFolder.toFile(); + if (licFolder.exists()) { + Path defaultLicFile = getDefaultLicFile(licFolder); + if (defaultLicFile != null) { + return defaultLicFile.toString(); + } + } + licFolder.mkdirs(); + logger.info("License file path is incorrect, application launched in trial mode"); + return ""; + } + + public static String defaultAnnotationDirectory() { + return getDefaultDir(""); + } + + public static String getDefaultDir(String folder) { + String dir = DOCUMENT_SAMPLES + File.separator + folder; + Path path = FileSystems.getDefault().getPath(dir).toAbsolutePath(); + makeDirs(path.toFile()); + return path.toString(); + } + + private static void makeDirs(File file) { + if (!file.exists()) { + file.mkdirs(); + } + } + + public static String relativePathToAbsolute(String path) { + Iterable rootDirectories = FileSystems.getDefault().getRootDirectories(); + + if (StringUtils.isEmpty(path)) { + return FileSystems.getDefault().getPath("").toAbsolutePath().toString(); + } + + for (Path root : rootDirectories) { + if (path.startsWith(root.toString())) { + makeDirs(new File(path)); + return path; + } + } + + Path absolutePath = FileSystems.getDefault().getPath(path).toAbsolutePath(); + makeDirs(absolutePath.toFile()); + return absolutePath.toString(); + } + + public static Path getDefaultLicFile(File licFolder) { + for (File file : licFolder.listFiles()) { + if (file.getName().endsWith(LIC)) { + return FileSystems.getDefault().getPath(LICENSES + File.separator + file.getName()).toAbsolutePath(); + } + } + return null; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/GlobalConfiguration.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/GlobalConfiguration.java new file mode 100644 index 0000000..799e298 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/GlobalConfiguration.java @@ -0,0 +1,76 @@ +package com.groupdocs.ui.common.config; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.groupdocs.ui.annotation.config.AnnotationConfiguration; +import io.dropwizard.Configuration; + +import javax.validation.Valid; + +/** + * GlobalConfiguration + * Object to hold all application's configurations from yml file + * + * @author Aspose Pty Ltd + */ +public class GlobalConfiguration extends Configuration { + + @Valid + @JsonProperty + private ServerConfiguration server; + + @Valid + @JsonProperty + private ApplicationConfiguration application; + + @Valid + @JsonProperty + private CommonConfiguration common; + + @Valid + @JsonProperty + private AnnotationConfiguration annotation; + + /** + * Constructor + */ + public GlobalConfiguration(){ + server = new ServerConfiguration(); + application = new ApplicationConfiguration(); + common = new CommonConfiguration(); + annotation = new AnnotationConfiguration(); + } + + /** + * Get server configuration + * @return server configuration + */ + public ServerConfiguration getServer() { + return server; + } + + /** + * Get application configuration + * @return application configuration + */ + public ApplicationConfiguration getApplication() { + return application; + } + + /** + * Get common configuration + * @return common configuration + */ + public CommonConfiguration getCommon() { + return common; + } + + /** + * Get annotation configuration + * @return annotation configuration + */ + public AnnotationConfiguration getAnnotation() { + return annotation; + } +} + + diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/ServerConfiguration.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/ServerConfiguration.java new file mode 100644 index 0000000..36c0d62 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/config/ServerConfiguration.java @@ -0,0 +1,21 @@ +package com.groupdocs.ui.common.config; + +import io.dropwizard.Configuration; + +/** + * ServerConfiguration + * + * @author Aspose Pty Ltd + */ +public class ServerConfiguration extends Configuration { + private int httpPort; + + public int getHttpPort() { + return httpPort; + } + + public void setHttpPort(int httpPort) { + this.httpPort = httpPort; + } + +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/ExceptionEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/ExceptionEntity.java new file mode 100644 index 0000000..fe4c11f --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/ExceptionEntity.java @@ -0,0 +1,52 @@ +package com.groupdocs.ui.common.entity.web; + +/** + * ExceptionEntity + * + * @author Aspose Pty Ltd + */ +public class ExceptionEntity { + private String message; + private Exception exception; + + public ExceptionEntity() { + } + + public ExceptionEntity(String message, Exception exception) { + this.message = message; + this.exception = exception; + } + + /** + * Get exception message + * @return message + */ + public String getMessage() { + return message; + } + + /** + * Set exception message + * @param message message + */ + public void setMessage(String message) { + this.message = message; + } + + /** + * Get exception + * @return exception + */ + public Exception getException() { + return exception; + } + + /** + * Set exception + * @param exception exception + */ + public void setException(Exception exception) { + this.exception = exception; + } + +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/FileDescriptionEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/FileDescriptionEntity.java new file mode 100644 index 0000000..917dd48 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/FileDescriptionEntity.java @@ -0,0 +1,95 @@ +package com.groupdocs.ui.common.entity.web; + +/** + * FileDescriptionEntity + * + * @author Aspose Pty Ltd + */ +public class FileDescriptionEntity { + private String guid; + private String name; + private String docType; + private Boolean isDirectory; + private Long size; + + /** + * Get guid (file id) + * @return guid + */ + public String getGuid() { + return guid; + } + + /** + * Set guid (File id) + * @param guid guid + */ + public void setGuid(String guid) { + this.guid = guid; + } + + /** + * Get file name + * @return file name + */ + public String getName() { + return name; + } + + /** + * Set file name + * @param name file name + */ + public void setName(String name) { + this.name = name; + } + + /** + * Get document type + * @return document type + */ + public String getDocType() { + return docType; + } + + /** + * Set document type + * @param docType document type + */ + public void setDocType(String docType) { + this.docType = docType; + } + + /** + * Check if path is directory + * @return true/false flag + */ + public Boolean isDirectory() { + return isDirectory; + } + + /** + * Set is directory flag + * @param directory true/false flag + */ + public void setDirectory(Boolean directory) { + isDirectory = directory; + } + + /** + * Get file size + * @return file size + */ + public Long getSize() { + return size; + } + + /** + * Set file size + * @param size file size + */ + public void setSize(Long size) { + this.size = size; + } + +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/LoadDocumentEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/LoadDocumentEntity.java new file mode 100644 index 0000000..2054d93 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/LoadDocumentEntity.java @@ -0,0 +1,30 @@ +package com.groupdocs.ui.common.entity.web; + +import java.util.List; + +public class LoadDocumentEntity { + /** + * Document Guid + */ + private String guid; + /** + * list of pages + */ + private List pages; + + public String getGuid() { + return guid; + } + + public void setGuid(String guid) { + this.guid = guid; + } + + public List getPages() { + return pages; + } + + public void setPages(List pages) { + this.pages = pages; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/PageDescriptionEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/PageDescriptionEntity.java new file mode 100644 index 0000000..0cb2f6d --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/PageDescriptionEntity.java @@ -0,0 +1,57 @@ +package com.groupdocs.ui.common.entity.web; + +/** + * PageDescriptionEntity + * + * @author Aspose Pty Ltd + */ +public class PageDescriptionEntity { + /** + * Page data + */ + private String data; + private int angle; + private double width; + private double height; + private int number; + + public int getAngle() { + return angle; + } + + public void setAngle(int angle) { + this.angle = angle; + } + + public double getWidth() { + return width; + } + + public void setWidth(double width) { + this.width = width; + } + + public double getHeight() { + return height; + } + + public void setHeight(double height) { + this.height = height; + } + + public int getNumber() { + return number; + } + + public void setNumber(int number) { + this.number = number; + } + + public String getData() { + return data; + } + + public void setData(String data) { + this.data = data; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/UploadedDocumentEntity.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/UploadedDocumentEntity.java new file mode 100644 index 0000000..923cd4c --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/UploadedDocumentEntity.java @@ -0,0 +1,26 @@ +package com.groupdocs.ui.common.entity.web; + +/** + * UploadedDocumentEntity + * + * @author Aspose Pty Ltd + */ +public class UploadedDocumentEntity { + private String guid; + + /** + * Get guid (file id) + * @return guid + */ + public String getGuid() { + return guid; + } + + /** + * Set guid (file id) + * @param guid guid + */ + public void setGuid(String guid) { + this.guid = guid; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/request/FileTreeRequest.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/request/FileTreeRequest.java new file mode 100644 index 0000000..1a6008a --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/request/FileTreeRequest.java @@ -0,0 +1,13 @@ +package com.groupdocs.ui.common.entity.web.request; + +public class FileTreeRequest { + private String path; + + public String getPath() { + return path; + } + + public void setPath(String path) { + this.path = path; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/request/LoadDocumentPageRequest.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/request/LoadDocumentPageRequest.java new file mode 100644 index 0000000..d596c66 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/request/LoadDocumentPageRequest.java @@ -0,0 +1,13 @@ +package com.groupdocs.ui.common.entity.web.request; + +public class LoadDocumentPageRequest extends LoadDocumentRequest { + private Integer page; + + public Integer getPage() { + return page; + } + + public void setPage(Integer page) { + this.page = page; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/request/LoadDocumentRequest.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/request/LoadDocumentRequest.java new file mode 100644 index 0000000..01bbd54 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/entity/web/request/LoadDocumentRequest.java @@ -0,0 +1,23 @@ +package com.groupdocs.ui.common.entity.web.request; + +public class LoadDocumentRequest { + + private String guid; + private String password; + + public String getGuid() { + return guid; + } + + public void setGuid(String guid) { + this.guid = guid; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/exception/PasswordExceptions.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/exception/PasswordExceptions.java new file mode 100644 index 0000000..d9996d5 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/exception/PasswordExceptions.java @@ -0,0 +1,6 @@ +package com.groupdocs.ui.common.exception; + +public class PasswordExceptions { + public static final String PASSWORD_REQUIRED = "Password Required"; + public static final String INCORRECT_PASSWORD = "Incorrect password"; +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/exception/TotalGroupDocsException.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/exception/TotalGroupDocsException.java new file mode 100644 index 0000000..9db6a46 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/exception/TotalGroupDocsException.java @@ -0,0 +1,15 @@ +package com.groupdocs.ui.common.exception; + +/** + * Wrapper for application's exceptions + */ +public class TotalGroupDocsException extends RuntimeException { + + public TotalGroupDocsException(String message) { + super(message); + } + + public TotalGroupDocsException(String message, Throwable cause) { + super(message, cause); + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/exception/TotalGroupDocsExceptionMapper.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/exception/TotalGroupDocsExceptionMapper.java new file mode 100644 index 0000000..a4058fe --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/exception/TotalGroupDocsExceptionMapper.java @@ -0,0 +1,53 @@ +package com.groupdocs.ui.common.exception; + +import com.groupdocs.ui.common.entity.web.ExceptionEntity; +import com.groupdocs.ui.common.util.ExceptionMessageUtils; +import com.groupdocs.ui.common.util.PathSecurityUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.Response; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import static com.groupdocs.ui.common.exception.PasswordExceptions.INCORRECT_PASSWORD; +import static com.groupdocs.ui.common.exception.PasswordExceptions.PASSWORD_REQUIRED; + +/** + * Map application's exceptions into responses + */ +@Provider +public class TotalGroupDocsExceptionMapper implements ExceptionMapper { + private static final Logger logger = LoggerFactory.getLogger(TotalGroupDocsExceptionMapper.class); + @Override + public Response toResponse(TotalGroupDocsException exception) { + ExceptionEntity exceptionEntity = new ExceptionEntity(); + String message = ExceptionMessageUtils.toUserMessage(exception); + exceptionEntity.setMessage(message); + if (PASSWORD_REQUIRED.equals(message) || INCORRECT_PASSWORD.equals(message)) { + return Response.ok(exceptionEntity).build(); + } + if (PathSecurityUtils.ACCESS_DENIED.equals(message)) { + return Response.status(Response.Status.FORBIDDEN).entity(exceptionEntity).build(); + } + if (ExceptionMessageUtils.isUserFacingMessage(message)) { + logger.error(message); + return Response + .serverError() + .entity(exceptionEntity) + .type(MediaType.APPLICATION_JSON_TYPE) + .build(); + } + if (logger.isDebugEnabled()) { + exception.printStackTrace(); + exceptionEntity.setException(exception); + } + logger.error(exception.getCause() != null? exception.getCause().getLocalizedMessage() : message); + return Response + .serverError() + .entity(exceptionEntity) + .type(MediaType.APPLICATION_JSON_TYPE) + .build(); + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/health/TemplateHealthCheck.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/health/TemplateHealthCheck.java new file mode 100644 index 0000000..d91a179 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/health/TemplateHealthCheck.java @@ -0,0 +1,21 @@ +package com.groupdocs.ui.common.health; + +import com.codahale.metrics.health.HealthCheck; + +/** +* Dummy HealthCheck +* @author Aspose Pty Ltd +*/ +public class TemplateHealthCheck extends HealthCheck { + private final String template; + + public TemplateHealthCheck(String template) { + this.template = template; + } + + @Override + protected Result check() throws Exception { + return Result.healthy(); + } + +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/resources/Resources.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/resources/Resources.java new file mode 100644 index 0000000..75a1a16 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/resources/Resources.java @@ -0,0 +1,231 @@ +package com.groupdocs.ui.common.resources; + +import com.google.common.collect.Lists; +import com.groupdocs.ui.common.config.GlobalConfiguration; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; +import com.groupdocs.ui.common.util.PathSecurityUtils; +import io.dropwizard.jetty.ConnectorFactory; +import io.dropwizard.jetty.HttpConnectorFactory; +import io.dropwizard.server.SimpleServerFactory; +import org.apache.commons.io.FilenameUtils; +import org.apache.commons.io.IOUtils; +import org.apache.commons.lang3.StringUtils; +import org.glassfish.jersey.media.multipart.FormDataContentDisposition; + +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.core.MediaType; +import java.io.*; +import java.net.InetAddress; +import java.net.URL; +import java.net.UnknownHostException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.StandardCopyOption; +import java.time.Instant; +import java.time.ZoneId; +import java.time.ZonedDateTime; +import java.time.format.DateTimeFormatter; +import java.util.HashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; + +/** + * Resources + * + * @author Aspose Pty Ltd + */ +public abstract class Resources { + protected final String DEFAULT_CHARSET = "UTF-8"; + protected final GlobalConfiguration globalConfiguration; + + private static final ZoneId GMT = ZoneId.of("GMT"); + + /** + * Get path to storage. Different for different products + * + * @param params parameters for calculating the path + * @return path to files storage + */ + protected abstract String getStoragePath(Map params); + + /** + * Internal upload file into server + * + * @param documentUrl url for document + * @param inputStream file stream + * @param fileDetail file description + * @param rewrite flag for rewriting file + * @param params parameters for creating path to files storage + * @return path to file in storage + */ + protected String uploadFile(String documentUrl, InputStream inputStream, FormDataContentDisposition fileDetail, boolean rewrite, Map params) { + InputStream uploadedInputStream = null; + String pathname; + try { + String fileName; + if (StringUtils.isEmpty(documentUrl)) { + uploadedInputStream = inputStream; + fileName = PathSecurityUtils.sanitizeFileName(fileDetail.getFileName()); + } else { + if (!documentUrl.startsWith("http://") && !documentUrl.startsWith("https://")) { + throw new TotalGroupDocsException("Only HTTP and HTTPS URLs are allowed"); + } + URL url = new URL(documentUrl); + uploadedInputStream = url.openStream(); + fileName = PathSecurityUtils.sanitizeFileName(FilenameUtils.getName(url.getPath())); + } + String documentStoragePath = getStoragePath(params); + Path targetPath = PathSecurityUtils.resolveInsideBaseDirectory(documentStoragePath, fileName); + File file = targetPath.toFile(); + if (rewrite) { + Files.copy(uploadedInputStream, targetPath, StandardCopyOption.REPLACE_EXISTING); + pathname = targetPath.toString(); + } else { + if (file.exists()) { + file = getFreeFileName(documentStoragePath, fileName); + } + Path path = file.toPath(); + PathSecurityUtils.resolveInsideBaseDirectory(documentStoragePath, path.getFileName().toString()); + Files.copy(uploadedInputStream, path); + pathname = path.toString(); + } + } catch(Exception ex) { + throw new TotalGroupDocsException(ex.getMessage(), ex); + } finally { + try { + uploadedInputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + return pathname; + } + + /** + * Date formats with time zone as specified in the HTTP RFC. + * @see Section 7.1.1.1 of RFC 7231 + */ + private static final DateTimeFormatter[] DATE_FORMATTERS = new DateTimeFormatter[] { + DateTimeFormatter.RFC_1123_DATE_TIME, + DateTimeFormatter.ofPattern("EEEE, dd-MMM-yy HH:mm:ss zz", Locale.US), + DateTimeFormatter.ofPattern("EEE MMM dd HH:mm:ss yyyy",Locale.US).withZone(GMT) + }; + + /** + * Fill Header Content-disposition parameter for download file + * + * @param response http response to fill header + * @param fileName name of file + */ + protected void fillResponseHeaderDisposition(HttpServletResponse response, String fileName) { + response.setHeader("Content-disposition", "attachment; filename=" + fileName); + } + + /** + * Download file + * + * @param response http response + * @param pathToFile path to file + */ + protected void downloadFile(HttpServletResponse response, String pathToFile) { + String fileName = FilenameUtils.getName(pathToFile); + // don't delete, should be before writing + fillResponseHeaderDisposition(response, fileName); + long length; + try (InputStream inputStream = new FileInputStream(pathToFile); + OutputStream outputStream = response.getOutputStream()){ + // download the document + length = IOUtils.copyLarge(inputStream, outputStream); + } catch (Exception ex){ + throw new TotalGroupDocsException(ex.getMessage(), ex); + } + // set response content disposition + addFileDownloadHeaders(response, fileName, length); + } + + /** + * Constructor + * @param globalConfiguration global application configuration + * @throws UnknownHostException + */ + public Resources(GlobalConfiguration globalConfiguration) throws UnknownHostException { + this.globalConfiguration = globalConfiguration; + + // set HTTP port + SimpleServerFactory serverFactory = (SimpleServerFactory) globalConfiguration.getServerFactory(); + ConnectorFactory connector = serverFactory.getConnector(); + globalConfiguration.getServer().setHttpPort(((HttpConnectorFactory) connector).getPort()); + + // set host address + String hostAddress = globalConfiguration.getApplication().getHostAddress(); + if (StringUtils.isEmpty(hostAddress) || hostAddress.startsWith("${")) { + globalConfiguration.getApplication().setHostAddress(InetAddress.getLocalHost().getHostAddress()); + } + } + + /** + * Rename file if exist + * @param directory directory where files are located + * @param fileName file name + * @return new file with new file name + */ + protected File getFreeFileName(String directory, String fileName){ + File file = null; + try { + String safeFileName = PathSecurityUtils.sanitizeFileName(fileName); + File folder = new File(directory); + File[] listOfFiles = folder.listFiles(); + for (int i = 0; i < listOfFiles.length; i++) { + int number = i + 1; + String newFileName = FilenameUtils.removeExtension(safeFileName) + "-Copy(" + number + ")." + FilenameUtils.getExtension(safeFileName); + file = PathSecurityUtils.resolveInsideBaseDirectory(directory, newFileName).toFile(); + if(file.exists()) { + continue; + } else { + break; + } + } + } catch (Exception e) { + e.printStackTrace(); + } + return file; + } + + /** + * Fill header HTTP response with file data + */ + public void addFileDownloadHeaders(HttpServletResponse response, String fileName, Long fileLength) { + Map> fileDownloadHeaders = createFileDownloadHeaders(fileName, fileLength, MediaType.APPLICATION_OCTET_STREAM); + for (Map.Entry> entry : fileDownloadHeaders.entrySet()) { + for (String value : entry.getValue()) { + response.addHeader(entry.getKey(), value); + } + } + } + + /** + * Get headers for downloading files + */ + private static Map> createFileDownloadHeaders(String fileName, Long fileLength, String mediaType) { + Map> httpHeaders = new HashMap<>(); + httpHeaders.put("Content-disposition", Lists.newArrayList("attachment; filename=" + fileName)); + httpHeaders.put("Content-Type", Lists.newArrayList(mediaType)); + httpHeaders.put("Content-Description", Lists.newArrayList("File Transfer")); + httpHeaders.put("Content-Transfer-Encoding", Lists.newArrayList("binary")); + httpHeaders.put("Expires", Lists.newArrayList(formatDate(0))); + httpHeaders.put("Cache-Control", Lists.newArrayList("must-revalidate")); + httpHeaders.put("Pragma", Lists.newArrayList("public")); + if (fileLength != null) { + httpHeaders.put("Content-Length", Lists.newArrayList(Long.toString(fileLength))); + } + return httpHeaders; + } + + private static String formatDate(long date) { + Instant instant = Instant.ofEpochMilli(date); + ZonedDateTime time = ZonedDateTime.ofInstant(instant, GMT); + return DATE_FORMATTERS[0].format(time); + } + +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/ExceptionMessageUtils.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/ExceptionMessageUtils.java new file mode 100644 index 0000000..7509174 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/ExceptionMessageUtils.java @@ -0,0 +1,114 @@ +package com.groupdocs.ui.common.util; + +import com.groupdocs.annotation.options.export.AnnotationType; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +public final class ExceptionMessageUtils { + + private static final Pattern TRIAL_ANNOTATION_PATTERN = Pattern.compile( + "Unfortunately, you are not able to add (\\d+) annotation in trial mode", + Pattern.CASE_INSENSITIVE); + + private ExceptionMessageUtils() { + } + + public static String toUserMessage(Throwable throwable) { + if (throwable == null) { + return ""; + } + + String trialMessage = findTrialModeMessage(throwable); + if (trialMessage != null) { + return formatTrialModeMessage(trialMessage); + } + + String rootMessage = extractRootCauseMessage(throwable); + return rootMessage != null ? rootMessage : throwable.toString(); + } + + public static boolean isUserFacingMessage(String message) { + return message != null && TRIAL_ANNOTATION_PATTERN.matcher(message).find(); + } + + private static String findTrialModeMessage(Throwable throwable) { + Throwable current = throwable; + while (current != null) { + String message = current.getMessage(); + if (message != null) { + Matcher matcher = TRIAL_ANNOTATION_PATTERN.matcher(message); + if (matcher.find()) { + return matcher.group(); + } + } + current = current.getCause(); + } + return null; + } + + private static String formatTrialModeMessage(String message) { + Matcher matcher = TRIAL_ANNOTATION_PATTERN.matcher(message); + if (!matcher.find()) { + return message; + } + + int typeId = Integer.parseInt(matcher.group(1)); + String typeName = resolveAnnotationTypeName(typeId); + return "Unfortunately, you are not able to add " + typeName + " annotation in trial mode"; + } + + private static String resolveAnnotationTypeName(int typeId) { + try { + String name = AnnotationType.getName(typeId); + if (name != null && !name.trim().isEmpty()) { + return humanizeAnnotationTypeName(name); + } + } catch (Exception ignored) { + // fall back to numeric id + } + return String.valueOf(typeId); + } + + private static String humanizeAnnotationTypeName(String name) { + if (name.contains("_")) { + String[] parts = name.toLowerCase().split("_"); + StringBuilder result = new StringBuilder(); + for (String part : parts) { + if (part.isEmpty()) { + continue; + } + if (result.length() > 0) { + result.append(' '); + } + result.append(Character.toUpperCase(part.charAt(0))); + if (part.length() > 1) { + result.append(part.substring(1)); + } + } + return result.toString(); + } + + if (name.length() == 1) { + return name.toUpperCase(); + } + return Character.toUpperCase(name.charAt(0)) + name.substring(1).toLowerCase(); + } + + private static String extractRootCauseMessage(Throwable throwable) { + Throwable root = throwable; + while (root.getCause() != null && root.getCause() != root) { + root = root.getCause(); + } + + String message = root.getMessage(); + if (message != null && !message.trim().isEmpty()) { + int colonIndex = message.indexOf(": "); + if (colonIndex > 0 && message.substring(0, colonIndex).contains(".")) { + return message.substring(colonIndex + 2).trim(); + } + return message.trim(); + } + return null; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/PathSecurityUtils.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/PathSecurityUtils.java new file mode 100644 index 0000000..0bad748 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/PathSecurityUtils.java @@ -0,0 +1,63 @@ +package com.groupdocs.ui.common.util; + +import com.groupdocs.ui.common.exception.TotalGroupDocsException; + +import java.io.File; +import java.nio.file.Path; +import java.nio.file.Paths; + +public final class PathSecurityUtils { + + public static final String ACCESS_DENIED = "Access denied"; + + private PathSecurityUtils() { + } + + public static Path resolveInsideBaseDirectory(String baseDirectory, String userGuid) { + if (userGuid == null || userGuid.trim().isEmpty()) { + throw new TotalGroupDocsException(ACCESS_DENIED); + } + + if (userGuid.contains("://")) { + throw new TotalGroupDocsException(ACCESS_DENIED); + } + + Path base = Paths.get(baseDirectory).toAbsolutePath().normalize(); + Path userPath = Paths.get(userGuid.replace('/', File.separatorChar)); + + Path resolved; + if (userPath.isAbsolute()) { + resolved = userPath.normalize(); + } else { + resolved = base.resolve(userPath).normalize(); + } + + if (!resolved.startsWith(base)) { + throw new TotalGroupDocsException(ACCESS_DENIED); + } + return resolved; + } + + public static String resolveInsideBaseDirectoryAsString(String baseDirectory, String userGuid) { + return resolveInsideBaseDirectory(baseDirectory, userGuid).toString(); + } + + public static Path resolveInsideBaseDirectoryOrRoot(String baseDirectory, String userPath) { + if (userPath == null || userPath.trim().isEmpty() || ".".equals(userPath.trim())) { + return Paths.get(baseDirectory).toAbsolutePath().normalize(); + } + return resolveInsideBaseDirectory(baseDirectory, userPath); + } + + public static String sanitizeFileName(String name) { + if (name == null || name.trim().isEmpty()) { + throw new TotalGroupDocsException(ACCESS_DENIED); + } + + String fileName = Paths.get(name).getFileName().toString(); + if (fileName.isEmpty() || fileName.contains("..")) { + throw new TotalGroupDocsException(ACCESS_DENIED); + } + return fileName; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/Utils.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/Utils.java new file mode 100644 index 0000000..8f7ccc1 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/Utils.java @@ -0,0 +1,163 @@ +package com.groupdocs.ui.common.util; + +import com.google.common.collect.Ordering; +import com.groupdocs.ui.common.exception.TotalGroupDocsException; +import com.groupdocs.ui.common.util.comparator.FileNameComparator; +import com.groupdocs.ui.common.util.comparator.FileTypeComparator; +import org.apache.commons.io.FilenameUtils; +import org.apache.commons.io.IOUtils; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.awt.*; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Base64; +import java.util.List; + +import static com.groupdocs.ui.common.exception.PasswordExceptions.INCORRECT_PASSWORD; +import static com.groupdocs.ui.common.exception.PasswordExceptions.PASSWORD_REQUIRED; + +public class Utils { + private static final Logger logger = LoggerFactory.getLogger(Utils.class); + + public static java.util.List orderByTypeAndName(List files) { + return Ordering.from(FileTypeComparator.instance).compound(FileNameComparator.instance).sortedCopy(files); + } + + /** + * Read stream and convert to string + * + * @param inputStream + * @return + * @throws IOException + */ + public static String getStringFromStream(InputStream inputStream) throws IOException { + byte[] bytes = IOUtils.toByteArray(inputStream); + // encode ByteArray into String + return Base64.getEncoder().encodeToString(bytes); + } + + /** + * Parse extension of the file's name + * + * @param documentGuid path to file + * @return extension of the file's name + */ + public static String parseFileExtension(String documentGuid) { + String extension = FilenameUtils.getExtension(documentGuid); + return extension == null ? null : extension.toLowerCase(); + } + + /** + * Get correct message for security exceptions + * + * @param password + * @return + */ + public static String getExceptionMessage(String password) { + return StringUtils.isEmpty(password) ? PASSWORD_REQUIRED : INCORRECT_PASSWORD; + } + + public static String normalizePathToGuid(String filesDirectory, String path) { + final Path relativePath = Paths.get(filesDirectory).relativize(Paths.get(path)); + return relativePath.toString().replace(File.separatorChar, '/'); + } + + public static String normalizeGuidToPath(String path) { + return path.replace('/', File.separatorChar); + } + + /** + * Rename file if exist + * + * @param directory directory where files are located + * @param fileName file name + * @return new file with new file name + */ + public static File getFreeFileName(String directory, String fileName) { + File file = null; + try { + File folder = new File(directory); + File[] listOfFiles = folder.listFiles(); + for (int i = 0; i < listOfFiles.length; i++) { + int number = i + 1; + String newFileName = FilenameUtils.removeExtension(fileName) + "-Copy(" + number + ")." + FilenameUtils.getExtension(fileName); + file = new File(directory + File.separator + newFileName); + if (!file.exists()) { + break; + } + } + } catch (Exception e) { + e.printStackTrace(); + } + return file; + } + + /** + * Create file in previewPath and name imageGuid + * if the file is already exist, create new file with next number in name + * examples, 001, 002, 003, etc + * + * @param previewPath path to file folder + * @param imageGuid path to file + * @return created file + */ + public static File getFileWithUniqueName(String previewPath, String imageGuid, String ext) { + if (!StringUtils.isEmpty(imageGuid) && new File(imageGuid).exists()) { + return new File(imageGuid); + } else { + File[] listOfFiles = new File(previewPath).listFiles(); + if (listOfFiles == null) { + throw new RuntimeException("Can't list files of '" + previewPath + "' folder"); + } + return createUniqueFile(previewPath, listOfFiles, ext); + } + } + + private static File createUniqueFile(String previewPath, File[] listOfFiles, String ext) { + for (int i = 0; i <= listOfFiles.length; i++) { + // set file name, for example 001 + String fileName = String.format("%03d", i + 1); + File file = new File(String.format("%s%s%s.%s", previewPath, File.separator, fileName, ext)); + // check if file with such name already exists + if (!file.exists()) { + return file; + } + } + return new File(String.format("%s%s001.png", previewPath, File.separator)); + } + + /** + * Generate empty image for future signing with signature, such approach required to get signature as image + * + * @param width image width + * @param height image height + * @return + */ + public static BufferedImage getBufferedImage(int width, int height) { + BufferedImage bufImage = null; + try { + bufImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB); + // Create a graphics contents on the buffered image + Graphics2D g2d = bufImage.createGraphics(); + // Draw graphics + g2d.setColor(Color.WHITE); + g2d.fillRect(0, 0, width, height); + // Graphics context no longer needed so dispose it + g2d.dispose(); + return bufImage; + } catch (Exception ex) { + throw new TotalGroupDocsException(ex.getMessage(), ex); + } finally { + if (bufImage != null) { + bufImage.flush(); + } + } + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/comparator/FileDateComparator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/comparator/FileDateComparator.java new file mode 100644 index 0000000..f5c4f8f --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/comparator/FileDateComparator.java @@ -0,0 +1,36 @@ +package com.groupdocs.ui.common.util.comparator; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.attribute.BasicFileAttributes; +import java.util.Comparator; + +public class FileDateComparator implements Comparator { + private static final Logger logger = LoggerFactory.getLogger(FileDateComparator.class); + + public static FileDateComparator instance = new FileDateComparator(); + + /** + * Compare two file names + * + * @param file1 + * @param file2 + * @return int + */ + @Override + public int compare(File file1, File file2) { + + try { + BasicFileAttributes attr1 = Files.readAttributes(file1.toPath(), BasicFileAttributes.class); + BasicFileAttributes attr2 = Files.readAttributes(file2.toPath(), BasicFileAttributes.class); + return attr1.creationTime().compareTo(attr2.creationTime()); + } catch (IOException e) { + logger.error("Error comparing files by creation date"); + } + return 0; + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/comparator/FileNameComparator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/comparator/FileNameComparator.java new file mode 100644 index 0000000..e5e1b1b --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/comparator/FileNameComparator.java @@ -0,0 +1,27 @@ +package com.groupdocs.ui.common.util.comparator; + +import java.io.File; +import java.util.Comparator; + +/** + * FileNameComparator + * Compare and sort file names alphabetically + * @author Aspose Pty Ltd + */ +public class FileNameComparator implements Comparator { + + public static FileNameComparator instance = new FileNameComparator(); + + /** + * Compare two file names + * @param file1 + * @param file2 + * @return int + */ + @Override + public int compare(File file1, File file2) { + + return String.CASE_INSENSITIVE_ORDER.compare(file1.getName(), + file2.getName()); + } +} diff --git a/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/comparator/FileTypeComparator.java b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/comparator/FileTypeComparator.java new file mode 100644 index 0000000..3ed0c74 --- /dev/null +++ b/Demos/Dropwizard/src/main/java/com/groupdocs/ui/common/util/comparator/FileTypeComparator.java @@ -0,0 +1,34 @@ +package com.groupdocs.ui.common.util.comparator; + +import java.io.File; +import java.util.Comparator; + +/** + * FileTypeComparator + * Compare and sort file types - folders first + * @author Aspose Pty Ltd + */ +public class FileTypeComparator implements Comparator { + + public static FileTypeComparator instance = new FileTypeComparator(); + + /** + * Compare two file types + * @param file1 + * @param file2 + * @return + */ + @Override + public int compare(File file1, File file2) { + + if (file1.isDirectory() && file2.isFile()) + return -1; + if (file1.isDirectory() && file2.isDirectory()) { + return 0; + } + if (file1.isFile() && file2.isFile()) { + return 0; + } + return 1; + } +} diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/favicon.ico b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/favicon.ico new file mode 100644 index 0000000..317ebcb Binary files /dev/null and b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/favicon.ico differ diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/index.html b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/index.html new file mode 100644 index 0000000..6bf183a --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/index.html @@ -0,0 +1,13 @@ + + + + + Annotation + + + + + + + + diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es2015.js b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es2015.js new file mode 100644 index 0000000..cf65041 --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es2015.js @@ -0,0 +1,242 @@ +(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["main"],{ + +/***/ "./$$_lazy_route_resource lazy recursive": +/*!******************************************************!*\ + !*** ./$$_lazy_route_resource lazy namespace object ***! + \******************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function webpackEmptyAsyncContext(req) { + // Here Promise.resolve().then() is used instead of new Promise() to prevent + // uncaught exception popping up in devtools + return Promise.resolve().then(function() { + var e = new Error("Cannot find module '" + req + "'"); + e.code = 'MODULE_NOT_FOUND'; + throw e; + }); +} +webpackEmptyAsyncContext.keys = function() { return []; }; +webpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext; +module.exports = webpackEmptyAsyncContext; +webpackEmptyAsyncContext.id = "./$$_lazy_route_resource lazy recursive"; + +/***/ }), + +/***/ "./src/app/app.component.less.shim.ngstyle.js": +/*!****************************************************!*\ + !*** ./src/app/app.component.less.shim.ngstyle.js ***! + \****************************************************/ +/*! exports provided: styles */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "styles", function() { return styles; }); +/** + * @fileoverview This file was generated by the Angular template compiler. Do not edit. + * + * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes} + * tslint:disable + */ +var styles = ["\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJhcHBzL2Fubm90YXRpb24vc3JjL2FwcC9hcHAuY29tcG9uZW50Lmxlc3MifQ== */"]; + + + +/***/ }), + +/***/ "./src/app/app.component.ngfactory.js": +/*!********************************************!*\ + !*** ./src/app/app.component.ngfactory.js ***! + \********************************************/ +/*! exports provided: RenderType_AppComponent, View_AppComponent_0, View_AppComponent_Host_0, AppComponentNgFactory */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RenderType_AppComponent", function() { return RenderType_AppComponent; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "View_AppComponent_0", function() { return View_AppComponent_0; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "View_AppComponent_Host_0", function() { return View_AppComponent_Host_0; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppComponentNgFactory", function() { return AppComponentNgFactory; }); +/* harmony import */ var _app_component_less_shim_ngstyle__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./app.component.less.shim.ngstyle */ "./src/app/app.component.less.shim.ngstyle.js"); +/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "../../node_modules/@angular/core/fesm2015/core.js"); +/* harmony import */ var _node_modules_groupdocs_examples_angular_annotation_groupdocs_examples_angular_annotation_ngfactory__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/@groupdocs.examples.angular/annotation/groupdocs.examples.angular-annotation.ngfactory */ "../../node_modules/@groupdocs.examples.angular/annotation/groupdocs.examples.angular-annotation.ngfactory.js"); +/* harmony import */ var _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @groupdocs.examples.angular/annotation */ "../../node_modules/@groupdocs.examples.angular/annotation/fesm2015/groupdocs.examples.angular-annotation.js"); +/* harmony import */ var _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @groupdocs.examples.angular/common-components */ "../../node_modules/@groupdocs.examples.angular/common-components/fesm2015/groupdocs.examples.angular-common-components.js"); +/* harmony import */ var _app_component__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./app.component */ "./src/app/app.component.ts"); +/** + * @fileoverview This file was generated by the Angular template compiler. Do not edit. + * + * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes} + * tslint:disable + */ + + + + + + +var styles_AppComponent = [_app_component_less_shim_ngstyle__WEBPACK_IMPORTED_MODULE_0__["styles"]]; +var RenderType_AppComponent = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵcrt"]({ encapsulation: 0, styles: styles_AppComponent, data: {} }); + +function View_AppComponent_0(_l) { return _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵvid"](0, [(_l()(), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵeld"](0, 0, null, null, 1, "gd-annotation-app", [], null, null, null, _node_modules_groupdocs_examples_angular_annotation_groupdocs_examples_angular_annotation_ngfactory__WEBPACK_IMPORTED_MODULE_2__["View_AnnotationAppComponent_0"], _node_modules_groupdocs_examples_angular_annotation_groupdocs_examples_angular_annotation_ngfactory__WEBPACK_IMPORTED_MODULE_2__["RenderType_AnnotationAppComponent"])), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵdid"](1, 114688, null, 0, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["AnnotationAppComponent"], [_groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["AnnotationService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["ModalService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["NavigateService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["TopTabActivatorService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["HostingDynamicComponentService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["AddDynamicComponentService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["ActiveAnnotationService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["RemoveAnnotationService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["CommentAnnotationService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["UploadFilesService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["PagePreloadService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["PasswordService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["WindowService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["ZoomService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["AnnotationConfigService"]], null, null)], function (_ck, _v) { _ck(_v, 1, 0); }, null); } +function View_AppComponent_Host_0(_l) { return _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵvid"](0, [(_l()(), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵeld"](0, 0, null, null, 1, "client-root", [], null, null, null, View_AppComponent_0, RenderType_AppComponent)), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵdid"](1, 49152, null, 0, _app_component__WEBPACK_IMPORTED_MODULE_5__["AppComponent"], [], null, null)], null, null); } +var AppComponentNgFactory = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵccf"]("client-root", _app_component__WEBPACK_IMPORTED_MODULE_5__["AppComponent"], View_AppComponent_Host_0, {}, {}, []); + + + +/***/ }), + +/***/ "./src/app/app.component.ts": +/*!**********************************!*\ + !*** ./src/app/app.component.ts ***! + \**********************************/ +/*! exports provided: AppComponent */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppComponent", function() { return AppComponent; }); +class AppComponent { + constructor() { + this.title = 'annotation'; + } +} + + +/***/ }), + +/***/ "./src/app/app.module.ngfactory.js": +/*!*****************************************!*\ + !*** ./src/app/app.module.ngfactory.js ***! + \*****************************************/ +/*! exports provided: AppModuleNgFactory */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppModuleNgFactory", function() { return AppModuleNgFactory; }); +/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "../../node_modules/@angular/core/fesm2015/core.js"); +/* harmony import */ var _app_module__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./app.module */ "./src/app/app.module.ts"); +/* harmony import */ var _app_component__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./app.component */ "./src/app/app.component.ts"); +/* harmony import */ var _node_modules_groupdocs_examples_angular_annotation_groupdocs_examples_angular_annotation_ngfactory__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../node_modules/@groupdocs.examples.angular/annotation/groupdocs.examples.angular-annotation.ngfactory */ "../../node_modules/@groupdocs.examples.angular/annotation/groupdocs.examples.angular-annotation.ngfactory.js"); +/* harmony import */ var _app_component_ngfactory__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./app.component.ngfactory */ "./src/app/app.component.ngfactory.js"); +/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @angular/common */ "../../node_modules/@angular/common/fesm2015/common.js"); +/* harmony import */ var _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @angular/platform-browser */ "../../node_modules/@angular/platform-browser/fesm2015/platform-browser.js"); +/* harmony import */ var _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @groupdocs.examples.angular/common-components */ "../../node_modules/@groupdocs.examples.angular/common-components/fesm2015/groupdocs.examples.angular-common-components.js"); +/* harmony import */ var _angular_common_http__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @angular/common/http */ "../../node_modules/@angular/common/fesm2015/http.js"); +/* harmony import */ var _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @groupdocs.examples.angular/annotation */ "../../node_modules/@groupdocs.examples.angular/annotation/fesm2015/groupdocs.examples.angular-annotation.js"); +/* harmony import */ var _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @ngx-translate/core */ "../../node_modules/@ngx-translate/core/fesm2015/ngx-translate-core.js"); +/* harmony import */ var _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @fortawesome/angular-fontawesome */ "../../node_modules/@fortawesome/angular-fontawesome/fesm2015/angular-fontawesome.js"); +/* harmony import */ var ng_click_outside_lib_commonjs_click_outside_module__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ng-click-outside/lib_commonjs/click-outside.module */ "../../node_modules/ng-click-outside/lib_commonjs/click-outside.module.js"); +/* harmony import */ var ng_click_outside_lib_commonjs_click_outside_module__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(ng_click_outside_lib_commonjs_click_outside_module__WEBPACK_IMPORTED_MODULE_12__); +/** + * @fileoverview This file was generated by the Angular template compiler. Do not edit. + * + * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes} + * tslint:disable + */ + + + + + + + + + + + + + +var AppModuleNgFactory = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵcmf"](_app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], [_app_component__WEBPACK_IMPORTED_MODULE_2__["AppComponent"]], function (_l) { return _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmod"]([_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵCodegenComponentFactoryResolver"], [[8, [_node_modules_groupdocs_examples_angular_annotation_groupdocs_examples_angular_annotation_ngfactory__WEBPACK_IMPORTED_MODULE_3__["ɵaNgFactory"], _app_component_ngfactory__WEBPACK_IMPORTED_MODULE_4__["AppComponentNgFactory"]]], [3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"]], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_p"], [[3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common__WEBPACK_IMPORTED_MODULE_5__["NgLocalization"], _angular_common__WEBPACK_IMPORTED_MODULE_5__["NgLocaleLocalization"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], [2, _angular_common__WEBPACK_IMPORTED_MODULE_5__["ɵangular_packages_common_common_a"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_ba"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_r"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_f"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["IterableDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_n"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["KeyValueDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_o"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["DomSanitizer"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomSanitizerImpl"], [_angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Sanitizer"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["HAMMER_GESTURE_CONFIG"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["HammerGestureConfig"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["EVENT_MANAGER_PLUGINS"], function (p0_0, p0_1, p0_2, p1_0, p2_0, p2_1, p2_2, p2_3) { return [new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomEventsPlugin"](p0_0, p0_1, p0_2), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵKeyEventsPlugin"](p1_0), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵHammerGesturesPlugin"](p2_0, p2_1, p2_2, p2_3)]; }, [_angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"], _angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["HAMMER_GESTURE_CONFIG"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], [2, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["HAMMER_LOADER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["EventManager"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["EVENT_MANAGER_PLUGINS"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](135680, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomSharedStylesHost"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomSharedStylesHost"], [_angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomRendererFactory2"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomRendererFactory2"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomSharedStylesHost"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["RendererFactory2"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomRendererFactory2"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵSharedStylesHost"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomSharedStylesHost"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["Api"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["Api"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ModalService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ModalService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileModel"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileModel"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileUtil"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileUtil"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["Utils"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["Utils"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeHtmlPipe"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeHtmlPipe"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeResourceHtmlPipe"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeResourceHtmlPipe"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeStylePipe"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeStylePipe"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["HighlightSearchPipe"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["HighlightSearchPipe"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["UploadFilesService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["UploadFilesService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["RenderPrintService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["RenderPrintService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["PagePreloadService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["PagePreloadService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["NavigateService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["NavigateService"], [_groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["PagePreloadService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ZoomService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ZoomService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ExceptionMessageService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ExceptionMessageService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["PasswordService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["PasswordService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ErrorInterceptorService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ErrorInterceptorService"], [_groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ModalService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ExceptionMessageService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SearchService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SearchService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["WindowService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["WindowService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ViewportService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ViewportService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FormattingService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FormattingService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["BackFormattingService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["BackFormattingService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["OnCloseService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["OnCloseService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskInterceptorService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskInterceptorService"], [_groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["TabActivatorService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["TabActivatorService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["AddDynamicComponentService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["AddDynamicComponentService"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["HostingDynamicComponentService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["HostingDynamicComponentService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["TopTabActivatorService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["TopTabActivatorService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_g"], [_angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_e"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_h"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_h"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_f"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HTTP_INTERCEPTORS"], function (p0_0, p1_0, p1_1, p2_0) { return [p0_0, new _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ErrorInterceptorService"](p1_0, p1_1), _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["setupLoadingInterceptor"](p2_0)]; }, [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_h"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ModalService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ExceptionMessageService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateLoader"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateFakeLoader"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateCompiler"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateFakeCompiler"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateParser"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateDefaultParser"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["MissingTranslationHandler"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["FakeMissingTranslationHandler"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateStore"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateStore"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateService"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateService"], [_ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateStore"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateLoader"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateCompiler"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateParser"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["MissingTranslationHandler"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_DEFAULT_LANG"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_STORE"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_EXTEND"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["DEFAULT_LANGUAGE"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["ActiveAnnotationService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["ActiveAnnotationService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["RemoveAnnotationService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["RemoveAnnotationService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["CommentAnnotationService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["CommentAnnotationService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common__WEBPACK_IMPORTED_MODULE_5__["CommonModule"], _angular_common__WEBPACK_IMPORTED_MODULE_5__["CommonModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵangular_packages_platform_browser_platform_browser_a"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_d"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_d"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](2048, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["XhrFactory"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_d"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpXhrBackend"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpXhrBackend"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["XhrFactory"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](2048, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpBackend"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpXhrBackend"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpHandler"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵHttpInterceptingHandler"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpBackend"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClient"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClient"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpHandler"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ConfigService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ConfigService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["AnnotationConfigService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["AnnotationConfigService"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClient"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ConfigService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"], function (p0_0, p1_0) { return [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵangular_packages_platform_browser_platform_browser_j"](p0_0), _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["initializeApp"](p1_0)]; }, [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgProbeToken"]], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["AnnotationConfigService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](131584, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["BrowserModule"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["BrowserModule"], [[3, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["BrowserModule"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_11__["FontAwesomeModule"], _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_11__["FontAwesomeModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, ng_click_outside_lib_commonjs_click_outside_module__WEBPACK_IMPORTED_MODULE_12__["ClickOutsideModule"], ng_click_outside_lib_commonjs_click_outside_module__WEBPACK_IMPORTED_MODULE_12__["ClickOutsideModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateModule"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["CommonComponentsModule"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["CommonComponentsModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClientXsrfModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClientXsrfModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClientModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClientModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["AnnotationModule"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["AnnotationModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵAPP_ROOT"], true, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_e"], "XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_f"], "X-XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_STORE"], undefined, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_DEFAULT_LANG"], undefined, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_EXTEND"], undefined, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["DEFAULT_LANGUAGE"], undefined, [])]); }); + + + +/***/ }), + +/***/ "./src/app/app.module.ts": +/*!*******************************!*\ + !*** ./src/app/app.module.ts ***! + \*******************************/ +/*! exports provided: AppModule */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppModule", function() { return AppModule; }); +class AppModule { +} + + +/***/ }), + +/***/ "./src/environments/environment.ts": +/*!*****************************************!*\ + !*** ./src/environments/environment.ts ***! + \*****************************************/ +/*! exports provided: environment */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "environment", function() { return environment; }); +// This file can be replaced during build by using the `fileReplacements` array. +// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. +// The list of file replacements can be found in `angular.json`. +const environment = { + production: false +}; +/* + * For easier debugging in development mode, you can import the following file + * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. + * + * This import should be commented out in production mode because it will have a negative impact + * on performance if an error is thrown. + */ +// import 'zone.js/dist/zone-error'; // Included with Angular CLI. + + +/***/ }), + +/***/ "./src/main.ts": +/*!*********************!*\ + !*** ./src/main.ts ***! + \*********************/ +/*! no exports provided */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "../../node_modules/@angular/core/fesm2015/core.js"); +/* harmony import */ var _environments_environment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./environments/environment */ "./src/environments/environment.ts"); +/* harmony import */ var _app_app_module_ngfactory__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./app/app.module.ngfactory */ "./src/app/app.module.ngfactory.js"); +/* harmony import */ var _angular_platform_browser__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/platform-browser */ "../../node_modules/@angular/platform-browser/fesm2015/platform-browser.js"); + + + + +if (_environments_environment__WEBPACK_IMPORTED_MODULE_1__["environment"].production) { + Object(_angular_core__WEBPACK_IMPORTED_MODULE_0__["enableProdMode"])(); +} +_angular_platform_browser__WEBPACK_IMPORTED_MODULE_3__["platformBrowser"]() + .bootstrapModuleFactory(_app_app_module_ngfactory__WEBPACK_IMPORTED_MODULE_2__["AppModuleNgFactory"]) + .catch(err => console.error(err)); + + +/***/ }), + +/***/ 0: +/*!***************************!*\ + !*** multi ./src/main.ts ***! + \***************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(/*! /workspace/client/apps/annotation/src/main.ts */"./src/main.ts"); + + +/***/ }) + +},[[0,"runtime","vendor"]]]); +//# sourceMappingURL=main-es2015.js.map \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es2015.js.map b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es2015.js.map new file mode 100644 index 0000000..0235226 --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es2015.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,wE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kGCZA,6kEAAmB;;;;;;;;;;;;;;;;ACOnB;AAAA;AAAO,MAAM,YAAY;IALzB;QAME,UAAK,GAAG,YAAY,CAAC;IACvB,CAAC;CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACKD;AAAA;AAAO,MAAM,SAAS;CACrB;;;;;;;;;;;;;ACfD;AAAA;AAAA,gFAAgF;AAChF,0EAA0E;AAC1E,gEAAgE;AAEzD,MAAM,WAAW,GAAG;IACzB,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF;;;;;;GAMG;AACH,mEAAmE;;;;;;;;;;;;;ACfnE;AAAA;AAAA;AAAA;AAAA;AAA+C;AAIU;;;AAEzD,IAAI,qEAAW,CAAC,UAAU,EAAE;IAC1B,oEAAc,EAAE,CAAC;CAClB;AAED,2EAAwB;2BACN,CAAC,6EAAU;KAC1B,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC","file":"main-es2015.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'client-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.less']\r\n})\r\nexport class AppComponent {\r\n title = 'annotation';\r\n}\r\n","import {BrowserModule} from '@angular/platform-browser';\r\nimport {NgModule} from '@angular/core';\r\n\r\nimport {AppComponent} from './app.component';\r\nimport {AnnotationModule} from \"@groupdocs.examples.angular/annotation\";\r\n\r\nimport { TranslateModule } from '@ngx-translate/core';\r\n\r\n@NgModule({\r\n declarations: [AppComponent],\r\n imports: [BrowserModule, AnnotationModule, TranslateModule.forRoot()],\r\n providers: [],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule {\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic()\r\n .bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"sourceRoot":""} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es5.js b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es5.js new file mode 100644 index 0000000..f0b187d --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es5.js @@ -0,0 +1,248 @@ +(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["main"],{ + +/***/ "./$$_lazy_route_resource lazy recursive": +/*!******************************************************!*\ + !*** ./$$_lazy_route_resource lazy namespace object ***! + \******************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function webpackEmptyAsyncContext(req) { + // Here Promise.resolve().then() is used instead of new Promise() to prevent + // uncaught exception popping up in devtools + return Promise.resolve().then(function() { + var e = new Error("Cannot find module '" + req + "'"); + e.code = 'MODULE_NOT_FOUND'; + throw e; + }); +} +webpackEmptyAsyncContext.keys = function() { return []; }; +webpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext; +module.exports = webpackEmptyAsyncContext; +webpackEmptyAsyncContext.id = "./$$_lazy_route_resource lazy recursive"; + +/***/ }), + +/***/ "./src/app/app.component.less.shim.ngstyle.js": +/*!****************************************************!*\ + !*** ./src/app/app.component.less.shim.ngstyle.js ***! + \****************************************************/ +/*! exports provided: styles */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "styles", function() { return styles; }); +/** + * @fileoverview This file was generated by the Angular template compiler. Do not edit. + * + * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes} + * tslint:disable + */ +var styles = ["\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJhcHBzL2Fubm90YXRpb24vc3JjL2FwcC9hcHAuY29tcG9uZW50Lmxlc3MifQ== */"]; + + + +/***/ }), + +/***/ "./src/app/app.component.ngfactory.js": +/*!********************************************!*\ + !*** ./src/app/app.component.ngfactory.js ***! + \********************************************/ +/*! exports provided: RenderType_AppComponent, View_AppComponent_0, View_AppComponent_Host_0, AppComponentNgFactory */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RenderType_AppComponent", function() { return RenderType_AppComponent; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "View_AppComponent_0", function() { return View_AppComponent_0; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "View_AppComponent_Host_0", function() { return View_AppComponent_Host_0; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppComponentNgFactory", function() { return AppComponentNgFactory; }); +/* harmony import */ var _app_component_less_shim_ngstyle__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./app.component.less.shim.ngstyle */ "./src/app/app.component.less.shim.ngstyle.js"); +/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "../../node_modules/@angular/core/fesm5/core.js"); +/* harmony import */ var _node_modules_groupdocs_examples_angular_annotation_groupdocs_examples_angular_annotation_ngfactory__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/@groupdocs.examples.angular/annotation/groupdocs.examples.angular-annotation.ngfactory */ "../../node_modules/@groupdocs.examples.angular/annotation/groupdocs.examples.angular-annotation.ngfactory.js"); +/* harmony import */ var _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @groupdocs.examples.angular/annotation */ "../../node_modules/@groupdocs.examples.angular/annotation/fesm5/groupdocs.examples.angular-annotation.js"); +/* harmony import */ var _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @groupdocs.examples.angular/common-components */ "../../node_modules/@groupdocs.examples.angular/common-components/fesm5/groupdocs.examples.angular-common-components.js"); +/* harmony import */ var _app_component__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./app.component */ "./src/app/app.component.ts"); +/** + * @fileoverview This file was generated by the Angular template compiler. Do not edit. + * + * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes} + * tslint:disable + */ + + + + + + +var styles_AppComponent = [_app_component_less_shim_ngstyle__WEBPACK_IMPORTED_MODULE_0__["styles"]]; +var RenderType_AppComponent = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵcrt"]({ encapsulation: 0, styles: styles_AppComponent, data: {} }); + +function View_AppComponent_0(_l) { return _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵvid"](0, [(_l()(), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵeld"](0, 0, null, null, 1, "gd-annotation-app", [], null, null, null, _node_modules_groupdocs_examples_angular_annotation_groupdocs_examples_angular_annotation_ngfactory__WEBPACK_IMPORTED_MODULE_2__["View_AnnotationAppComponent_0"], _node_modules_groupdocs_examples_angular_annotation_groupdocs_examples_angular_annotation_ngfactory__WEBPACK_IMPORTED_MODULE_2__["RenderType_AnnotationAppComponent"])), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵdid"](1, 114688, null, 0, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["AnnotationAppComponent"], [_groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["AnnotationService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["ModalService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["NavigateService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["TopTabActivatorService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["HostingDynamicComponentService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["AddDynamicComponentService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["ActiveAnnotationService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["RemoveAnnotationService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["CommentAnnotationService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["UploadFilesService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["PagePreloadService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["PasswordService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["WindowService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_4__["ZoomService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_3__["AnnotationConfigService"]], null, null)], function (_ck, _v) { _ck(_v, 1, 0); }, null); } +function View_AppComponent_Host_0(_l) { return _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵvid"](0, [(_l()(), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵeld"](0, 0, null, null, 1, "client-root", [], null, null, null, View_AppComponent_0, RenderType_AppComponent)), _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵdid"](1, 49152, null, 0, _app_component__WEBPACK_IMPORTED_MODULE_5__["AppComponent"], [], null, null)], null, null); } +var AppComponentNgFactory = _angular_core__WEBPACK_IMPORTED_MODULE_1__["ɵccf"]("client-root", _app_component__WEBPACK_IMPORTED_MODULE_5__["AppComponent"], View_AppComponent_Host_0, {}, {}, []); + + + +/***/ }), + +/***/ "./src/app/app.component.ts": +/*!**********************************!*\ + !*** ./src/app/app.component.ts ***! + \**********************************/ +/*! exports provided: AppComponent */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppComponent", function() { return AppComponent; }); +var AppComponent = /** @class */ (function () { + function AppComponent() { + this.title = 'annotation'; + } + return AppComponent; +}()); + + + +/***/ }), + +/***/ "./src/app/app.module.ngfactory.js": +/*!*****************************************!*\ + !*** ./src/app/app.module.ngfactory.js ***! + \*****************************************/ +/*! exports provided: AppModuleNgFactory */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppModuleNgFactory", function() { return AppModuleNgFactory; }); +/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "../../node_modules/@angular/core/fesm5/core.js"); +/* harmony import */ var _app_module__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./app.module */ "./src/app/app.module.ts"); +/* harmony import */ var _app_component__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./app.component */ "./src/app/app.component.ts"); +/* harmony import */ var _node_modules_groupdocs_examples_angular_annotation_groupdocs_examples_angular_annotation_ngfactory__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../node_modules/@groupdocs.examples.angular/annotation/groupdocs.examples.angular-annotation.ngfactory */ "../../node_modules/@groupdocs.examples.angular/annotation/groupdocs.examples.angular-annotation.ngfactory.js"); +/* harmony import */ var _app_component_ngfactory__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./app.component.ngfactory */ "./src/app/app.component.ngfactory.js"); +/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @angular/common */ "../../node_modules/@angular/common/fesm5/common.js"); +/* harmony import */ var _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @angular/platform-browser */ "../../node_modules/@angular/platform-browser/fesm5/platform-browser.js"); +/* harmony import */ var _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @groupdocs.examples.angular/common-components */ "../../node_modules/@groupdocs.examples.angular/common-components/fesm5/groupdocs.examples.angular-common-components.js"); +/* harmony import */ var _angular_common_http__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @angular/common/http */ "../../node_modules/@angular/common/fesm5/http.js"); +/* harmony import */ var _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @groupdocs.examples.angular/annotation */ "../../node_modules/@groupdocs.examples.angular/annotation/fesm5/groupdocs.examples.angular-annotation.js"); +/* harmony import */ var _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @ngx-translate/core */ "../../node_modules/@ngx-translate/core/fesm5/ngx-translate-core.js"); +/* harmony import */ var _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @fortawesome/angular-fontawesome */ "../../node_modules/@fortawesome/angular-fontawesome/fesm5/angular-fontawesome.js"); +/* harmony import */ var ng_click_outside_lib_commonjs_click_outside_module__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ng-click-outside/lib_commonjs/click-outside.module */ "../../node_modules/ng-click-outside/lib_commonjs/click-outside.module.js"); +/* harmony import */ var ng_click_outside_lib_commonjs_click_outside_module__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(ng_click_outside_lib_commonjs_click_outside_module__WEBPACK_IMPORTED_MODULE_12__); +/** + * @fileoverview This file was generated by the Angular template compiler. Do not edit. + * + * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes} + * tslint:disable + */ + + + + + + + + + + + + + +var AppModuleNgFactory = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵcmf"](_app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], [_app_component__WEBPACK_IMPORTED_MODULE_2__["AppComponent"]], function (_l) { return _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmod"]([_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵCodegenComponentFactoryResolver"], [[8, [_node_modules_groupdocs_examples_angular_annotation_groupdocs_examples_angular_annotation_ngfactory__WEBPACK_IMPORTED_MODULE_3__["ɵaNgFactory"], _app_component_ngfactory__WEBPACK_IMPORTED_MODULE_4__["AppComponentNgFactory"]]], [3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"]], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_p"], [[3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common__WEBPACK_IMPORTED_MODULE_5__["NgLocalization"], _angular_common__WEBPACK_IMPORTED_MODULE_5__["NgLocaleLocalization"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], [2, _angular_common__WEBPACK_IMPORTED_MODULE_5__["ɵangular_packages_common_common_a"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_ba"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_r"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_f"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["IterableDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_n"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["KeyValueDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_o"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["DomSanitizer"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomSanitizerImpl"], [_angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Sanitizer"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["HAMMER_GESTURE_CONFIG"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["HammerGestureConfig"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["EVENT_MANAGER_PLUGINS"], function (p0_0, p0_1, p0_2, p1_0, p2_0, p2_1, p2_2, p2_3) { return [new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomEventsPlugin"](p0_0, p0_1, p0_2), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵKeyEventsPlugin"](p1_0), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵHammerGesturesPlugin"](p2_0, p2_1, p2_2, p2_3)]; }, [_angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"], _angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["HAMMER_GESTURE_CONFIG"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], [2, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["HAMMER_LOADER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["EventManager"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["EVENT_MANAGER_PLUGINS"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](135680, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomSharedStylesHost"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomSharedStylesHost"], [_angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomRendererFactory2"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomRendererFactory2"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomSharedStylesHost"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["RendererFactory2"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomRendererFactory2"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵSharedStylesHost"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵDomSharedStylesHost"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["Api"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["Api"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ModalService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ModalService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileModel"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileModel"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileUtil"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FileUtil"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["Utils"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["Utils"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeHtmlPipe"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeHtmlPipe"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeResourceHtmlPipe"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeResourceHtmlPipe"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeStylePipe"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SanitizeStylePipe"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["HighlightSearchPipe"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["HighlightSearchPipe"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["UploadFilesService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["UploadFilesService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["RenderPrintService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["RenderPrintService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["PagePreloadService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["PagePreloadService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["NavigateService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["NavigateService"], [_groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["PagePreloadService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ZoomService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ZoomService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ExceptionMessageService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ExceptionMessageService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["PasswordService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["PasswordService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ErrorInterceptorService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ErrorInterceptorService"], [_groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ModalService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ExceptionMessageService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SearchService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["SearchService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["WindowService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["WindowService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ViewportService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ViewportService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FormattingService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["FormattingService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["BackFormattingService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["BackFormattingService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["OnCloseService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["OnCloseService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskInterceptorService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskInterceptorService"], [_groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["TabActivatorService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["TabActivatorService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["AddDynamicComponentService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["AddDynamicComponentService"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["HostingDynamicComponentService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["HostingDynamicComponentService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["TopTabActivatorService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["TopTabActivatorService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_g"], [_angular_common__WEBPACK_IMPORTED_MODULE_5__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_e"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_h"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_h"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_f"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HTTP_INTERCEPTORS"], function (p0_0, p1_0, p1_1, p2_0) { return [p0_0, new _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ErrorInterceptorService"](p1_0, p1_1), _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["setupLoadingInterceptor"](p2_0)]; }, [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_h"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ModalService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ExceptionMessageService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["LoadingMaskService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateLoader"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateFakeLoader"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateCompiler"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateFakeCompiler"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateParser"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateDefaultParser"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["MissingTranslationHandler"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["FakeMissingTranslationHandler"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateStore"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateStore"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateService"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateService"], [_ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateStore"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateLoader"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateCompiler"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateParser"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["MissingTranslationHandler"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_DEFAULT_LANG"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_STORE"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_EXTEND"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["DEFAULT_LANGUAGE"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["ActiveAnnotationService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["ActiveAnnotationService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["RemoveAnnotationService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["RemoveAnnotationService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["CommentAnnotationService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["CommentAnnotationService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common__WEBPACK_IMPORTED_MODULE_5__["CommonModule"], _angular_common__WEBPACK_IMPORTED_MODULE_5__["CommonModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵangular_packages_platform_browser_platform_browser_a"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_d"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_d"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](2048, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["XhrFactory"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_d"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpXhrBackend"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpXhrBackend"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["XhrFactory"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](2048, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpBackend"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpXhrBackend"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpHandler"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵHttpInterceptingHandler"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpBackend"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClient"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClient"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpHandler"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ConfigService"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ConfigService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["AnnotationConfigService"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["AnnotationConfigService"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClient"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["ConfigService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"], function (p0_0, p1_0) { return [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["ɵangular_packages_platform_browser_platform_browser_j"](p0_0), _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["initializeApp"](p1_0)]; }, [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgProbeToken"]], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["AnnotationConfigService"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](131584, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["BrowserModule"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["BrowserModule"], [[3, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__["BrowserModule"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_11__["FontAwesomeModule"], _fortawesome_angular_fontawesome__WEBPACK_IMPORTED_MODULE_11__["FontAwesomeModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, ng_click_outside_lib_commonjs_click_outside_module__WEBPACK_IMPORTED_MODULE_12__["ClickOutsideModule"], ng_click_outside_lib_commonjs_click_outside_module__WEBPACK_IMPORTED_MODULE_12__["ClickOutsideModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateModule"], _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["TranslateModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["CommonComponentsModule"], _groupdocs_examples_angular_common_components__WEBPACK_IMPORTED_MODULE_7__["CommonComponentsModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClientXsrfModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClientXsrfModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClientModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["HttpClientModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["AnnotationModule"], _groupdocs_examples_angular_annotation__WEBPACK_IMPORTED_MODULE_9__["AnnotationModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵAPP_ROOT"], true, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_e"], "XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_8__["ɵangular_packages_common_http_http_f"], "X-XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_STORE"], undefined, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_DEFAULT_LANG"], undefined, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["USE_EXTEND"], undefined, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _ngx_translate_core__WEBPACK_IMPORTED_MODULE_10__["DEFAULT_LANGUAGE"], undefined, [])]); }); + + + +/***/ }), + +/***/ "./src/app/app.module.ts": +/*!*******************************!*\ + !*** ./src/app/app.module.ts ***! + \*******************************/ +/*! exports provided: AppModule */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppModule", function() { return AppModule; }); +var AppModule = /** @class */ (function () { + function AppModule() { + } + return AppModule; +}()); + + + +/***/ }), + +/***/ "./src/environments/environment.ts": +/*!*****************************************!*\ + !*** ./src/environments/environment.ts ***! + \*****************************************/ +/*! exports provided: environment */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "environment", function() { return environment; }); +// This file can be replaced during build by using the `fileReplacements` array. +// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. +// The list of file replacements can be found in `angular.json`. +var environment = { + production: false +}; +/* + * For easier debugging in development mode, you can import the following file + * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. + * + * This import should be commented out in production mode because it will have a negative impact + * on performance if an error is thrown. + */ +// import 'zone.js/dist/zone-error'; // Included with Angular CLI. + + +/***/ }), + +/***/ "./src/main.ts": +/*!*********************!*\ + !*** ./src/main.ts ***! + \*********************/ +/*! no exports provided */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "../../node_modules/@angular/core/fesm5/core.js"); +/* harmony import */ var _environments_environment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./environments/environment */ "./src/environments/environment.ts"); +/* harmony import */ var _app_app_module_ngfactory__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./app/app.module.ngfactory */ "./src/app/app.module.ngfactory.js"); +/* harmony import */ var _angular_platform_browser__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/platform-browser */ "../../node_modules/@angular/platform-browser/fesm5/platform-browser.js"); + + + + +if (_environments_environment__WEBPACK_IMPORTED_MODULE_1__["environment"].production) { + Object(_angular_core__WEBPACK_IMPORTED_MODULE_0__["enableProdMode"])(); +} +_angular_platform_browser__WEBPACK_IMPORTED_MODULE_3__["platformBrowser"]() + .bootstrapModuleFactory(_app_app_module_ngfactory__WEBPACK_IMPORTED_MODULE_2__["AppModuleNgFactory"]) + .catch(function (err) { return console.error(err); }); + + +/***/ }), + +/***/ 0: +/*!***************************!*\ + !*** multi ./src/main.ts ***! + \***************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(/*! /workspace/client/apps/annotation/src/main.ts */"./src/main.ts"); + + +/***/ }) + +},[[0,"runtime","vendor"]]]); +//# sourceMappingURL=main-es5.js.map \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es5.js.map b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es5.js.map new file mode 100644 index 0000000..6402b3d --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/main-es5.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,wE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kGCZA,6kEAAmB;;;;;;;;;;;;;;;;ACEnB;AAAA;AAAA;IAAA;QAME,UAAK,GAAG,YAAY,CAAC;IACvB,CAAC;IAAD,mBAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACDD;AAAA;AAAA;IAAA;IAOA,CAAC;IAAD,gBAAC;AAAD,CAAC;;;;;;;;;;;;;;ACfD;AAAA;AAAA,gFAAgF;AAChF,0EAA0E;AAC1E,gEAAgE;AAEzD,IAAM,WAAW,GAAG;IACzB,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF;;;;;;GAMG;AACH,mEAAmE;;;;;;;;;;;;;ACfnE;AAAA;AAAA;AAAA;AAAA;AAA+C;AAIU;;;AAEzD,IAAI,qEAAW,CAAC,UAAU,EAAE;IAC1B,oEAAc,EAAE,CAAC;CAClB;AAED,2EAAwB;2BACN,CAAC,6EAAU;KAC1B,KAAK,CAAC,aAAG,IAAI,cAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAlB,CAAkB,CAAC,CAAC","file":"main-es5.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'client-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.less']\r\n})\r\nexport class AppComponent {\r\n title = 'annotation';\r\n}\r\n","import {BrowserModule} from '@angular/platform-browser';\r\nimport {NgModule} from '@angular/core';\r\n\r\nimport {AppComponent} from './app.component';\r\nimport {AnnotationModule} from \"@groupdocs.examples.angular/annotation\";\r\n\r\nimport { TranslateModule } from '@ngx-translate/core';\r\n\r\n@NgModule({\r\n declarations: [AppComponent],\r\n imports: [BrowserModule, AnnotationModule, TranslateModule.forRoot()],\r\n providers: [],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule {\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic()\r\n .bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"sourceRoot":""} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es2015.js b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es2015.js new file mode 100644 index 0000000..a5f1665 --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es2015.js @@ -0,0 +1,3151 @@ +(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["polyfills"],{ + +/***/ "../../node_modules/zone.js/dist/zone-evergreen.js": +/*!*********************************************************************!*\ + !*** /workspace/client/node_modules/zone.js/dist/zone-evergreen.js ***! + \*********************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +/** +* @license +* Copyright Google Inc. All Rights Reserved. +* +* Use of this source code is governed by an MIT-style license that can be +* found in the LICENSE file at https://angular.io/license +*/ +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +const Zone$1 = (function (global) { + const performance = global['performance']; + function mark(name) { + performance && performance['mark'] && performance['mark'](name); + } + function performanceMeasure(name, label) { + performance && performance['measure'] && performance['measure'](name, label); + } + mark('Zone'); + const checkDuplicate = global[('__zone_symbol__forceDuplicateZoneCheck')] === true; + if (global['Zone']) { + // if global['Zone'] already exists (maybe zone.js was already loaded or + // some other lib also registered a global object named Zone), we may need + // to throw an error, but sometimes user may not want this error. + // For example, + // we have two web pages, page1 includes zone.js, page2 doesn't. + // and the 1st time user load page1 and page2, everything work fine, + // but when user load page2 again, error occurs because global['Zone'] already exists. + // so we add a flag to let user choose whether to throw this error or not. + // By default, if existing Zone is from zone.js, we will not throw the error. + if (checkDuplicate || typeof global['Zone'].__symbol__ !== 'function') { + throw new Error('Zone already loaded.'); + } + else { + return global['Zone']; + } + } + class Zone { + constructor(parent, zoneSpec) { + this._parent = parent; + this._name = zoneSpec ? zoneSpec.name || 'unnamed' : ''; + this._properties = zoneSpec && zoneSpec.properties || {}; + this._zoneDelegate = + new ZoneDelegate(this, this._parent && this._parent._zoneDelegate, zoneSpec); + } + static assertZonePatched() { + if (global['Promise'] !== patches['ZoneAwarePromise']) { + throw new Error('Zone.js has detected that ZoneAwarePromise `(window|global).Promise` ' + + 'has been overwritten.\n' + + 'Most likely cause is that a Promise polyfill has been loaded ' + + 'after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. ' + + 'If you must load one, do so before loading zone.js.)'); + } + } + static get root() { + let zone = Zone.current; + while (zone.parent) { + zone = zone.parent; + } + return zone; + } + static get current() { + return _currentZoneFrame.zone; + } + static get currentTask() { + return _currentTask; + } + static __load_patch(name, fn) { + if (patches.hasOwnProperty(name)) { + if (checkDuplicate) { + throw Error('Already loaded patch: ' + name); + } + } + else if (!global['__Zone_disable_' + name]) { + const perfName = 'Zone:' + name; + mark(perfName); + patches[name] = fn(global, Zone, _api); + performanceMeasure(perfName, perfName); + } + } + get parent() { + return this._parent; + } + get name() { + return this._name; + } + get(key) { + const zone = this.getZoneWith(key); + if (zone) + return zone._properties[key]; + } + getZoneWith(key) { + let current = this; + while (current) { + if (current._properties.hasOwnProperty(key)) { + return current; + } + current = current._parent; + } + return null; + } + fork(zoneSpec) { + if (!zoneSpec) + throw new Error('ZoneSpec required!'); + return this._zoneDelegate.fork(this, zoneSpec); + } + wrap(callback, source) { + if (typeof callback !== 'function') { + throw new Error('Expecting function got: ' + callback); + } + const _callback = this._zoneDelegate.intercept(this, callback, source); + const zone = this; + return function () { + return zone.runGuarded(_callback, this, arguments, source); + }; + } + run(callback, applyThis, applyArgs, source) { + _currentZoneFrame = { parent: _currentZoneFrame, zone: this }; + try { + return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source); + } + finally { + _currentZoneFrame = _currentZoneFrame.parent; + } + } + runGuarded(callback, applyThis = null, applyArgs, source) { + _currentZoneFrame = { parent: _currentZoneFrame, zone: this }; + try { + try { + return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source); + } + catch (error) { + if (this._zoneDelegate.handleError(this, error)) { + throw error; + } + } + } + finally { + _currentZoneFrame = _currentZoneFrame.parent; + } + } + runTask(task, applyThis, applyArgs) { + if (task.zone != this) { + throw new Error('A task can only be run in the zone of creation! (Creation: ' + + (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')'); + } + // https://github.com/angular/zone.js/issues/778, sometimes eventTask + // will run in notScheduled(canceled) state, we should not try to + // run such kind of task but just return + if (task.state === notScheduled && (task.type === eventTask || task.type === macroTask)) { + return; + } + const reEntryGuard = task.state != running; + reEntryGuard && task._transitionTo(running, scheduled); + task.runCount++; + const previousTask = _currentTask; + _currentTask = task; + _currentZoneFrame = { parent: _currentZoneFrame, zone: this }; + try { + if (task.type == macroTask && task.data && !task.data.isPeriodic) { + task.cancelFn = undefined; + } + try { + return this._zoneDelegate.invokeTask(this, task, applyThis, applyArgs); + } + catch (error) { + if (this._zoneDelegate.handleError(this, error)) { + throw error; + } + } + } + finally { + // if the task's state is notScheduled or unknown, then it has already been cancelled + // we should not reset the state to scheduled + if (task.state !== notScheduled && task.state !== unknown) { + if (task.type == eventTask || (task.data && task.data.isPeriodic)) { + reEntryGuard && task._transitionTo(scheduled, running); + } + else { + task.runCount = 0; + this._updateTaskCount(task, -1); + reEntryGuard && + task._transitionTo(notScheduled, running, notScheduled); + } + } + _currentZoneFrame = _currentZoneFrame.parent; + _currentTask = previousTask; + } + } + scheduleTask(task) { + if (task.zone && task.zone !== this) { + // check if the task was rescheduled, the newZone + // should not be the children of the original zone + let newZone = this; + while (newZone) { + if (newZone === task.zone) { + throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${task.zone.name}`); + } + newZone = newZone.parent; + } + } + task._transitionTo(scheduling, notScheduled); + const zoneDelegates = []; + task._zoneDelegates = zoneDelegates; + task._zone = this; + try { + task = this._zoneDelegate.scheduleTask(this, task); + } + catch (err) { + // should set task's state to unknown when scheduleTask throw error + // because the err may from reschedule, so the fromState maybe notScheduled + task._transitionTo(unknown, scheduling, notScheduled); + // TODO: @JiaLiPassion, should we check the result from handleError? + this._zoneDelegate.handleError(this, err); + throw err; + } + if (task._zoneDelegates === zoneDelegates) { + // we have to check because internally the delegate can reschedule the task. + this._updateTaskCount(task, 1); + } + if (task.state == scheduling) { + task._transitionTo(scheduled, scheduling); + } + return task; + } + scheduleMicroTask(source, callback, data, customSchedule) { + return this.scheduleTask(new ZoneTask(microTask, source, callback, data, customSchedule, undefined)); + } + scheduleMacroTask(source, callback, data, customSchedule, customCancel) { + return this.scheduleTask(new ZoneTask(macroTask, source, callback, data, customSchedule, customCancel)); + } + scheduleEventTask(source, callback, data, customSchedule, customCancel) { + return this.scheduleTask(new ZoneTask(eventTask, source, callback, data, customSchedule, customCancel)); + } + cancelTask(task) { + if (task.zone != this) + throw new Error('A task can only be cancelled in the zone of creation! (Creation: ' + + (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')'); + task._transitionTo(canceling, scheduled, running); + try { + this._zoneDelegate.cancelTask(this, task); + } + catch (err) { + // if error occurs when cancelTask, transit the state to unknown + task._transitionTo(unknown, canceling); + this._zoneDelegate.handleError(this, err); + throw err; + } + this._updateTaskCount(task, -1); + task._transitionTo(notScheduled, canceling); + task.runCount = 0; + return task; + } + _updateTaskCount(task, count) { + const zoneDelegates = task._zoneDelegates; + if (count == -1) { + task._zoneDelegates = null; + } + for (let i = 0; i < zoneDelegates.length; i++) { + zoneDelegates[i]._updateTaskCount(task.type, count); + } + } + } + Zone.__symbol__ = __symbol__; + const DELEGATE_ZS = { + name: '', + onHasTask: (delegate, _, target, hasTaskState) => delegate.hasTask(target, hasTaskState), + onScheduleTask: (delegate, _, target, task) => delegate.scheduleTask(target, task), + onInvokeTask: (delegate, _, target, task, applyThis, applyArgs) => delegate.invokeTask(target, task, applyThis, applyArgs), + onCancelTask: (delegate, _, target, task) => delegate.cancelTask(target, task) + }; + class ZoneDelegate { + constructor(zone, parentDelegate, zoneSpec) { + this._taskCounts = { 'microTask': 0, 'macroTask': 0, 'eventTask': 0 }; + this.zone = zone; + this._parentDelegate = parentDelegate; + this._forkZS = zoneSpec && (zoneSpec && zoneSpec.onFork ? zoneSpec : parentDelegate._forkZS); + this._forkDlgt = zoneSpec && (zoneSpec.onFork ? parentDelegate : parentDelegate._forkDlgt); + this._forkCurrZone = zoneSpec && (zoneSpec.onFork ? this.zone : parentDelegate.zone); + this._interceptZS = + zoneSpec && (zoneSpec.onIntercept ? zoneSpec : parentDelegate._interceptZS); + this._interceptDlgt = + zoneSpec && (zoneSpec.onIntercept ? parentDelegate : parentDelegate._interceptDlgt); + this._interceptCurrZone = + zoneSpec && (zoneSpec.onIntercept ? this.zone : parentDelegate.zone); + this._invokeZS = zoneSpec && (zoneSpec.onInvoke ? zoneSpec : parentDelegate._invokeZS); + this._invokeDlgt = + zoneSpec && (zoneSpec.onInvoke ? parentDelegate : parentDelegate._invokeDlgt); + this._invokeCurrZone = zoneSpec && (zoneSpec.onInvoke ? this.zone : parentDelegate.zone); + this._handleErrorZS = + zoneSpec && (zoneSpec.onHandleError ? zoneSpec : parentDelegate._handleErrorZS); + this._handleErrorDlgt = + zoneSpec && (zoneSpec.onHandleError ? parentDelegate : parentDelegate._handleErrorDlgt); + this._handleErrorCurrZone = + zoneSpec && (zoneSpec.onHandleError ? this.zone : parentDelegate.zone); + this._scheduleTaskZS = + zoneSpec && (zoneSpec.onScheduleTask ? zoneSpec : parentDelegate._scheduleTaskZS); + this._scheduleTaskDlgt = zoneSpec && + (zoneSpec.onScheduleTask ? parentDelegate : parentDelegate._scheduleTaskDlgt); + this._scheduleTaskCurrZone = + zoneSpec && (zoneSpec.onScheduleTask ? this.zone : parentDelegate.zone); + this._invokeTaskZS = + zoneSpec && (zoneSpec.onInvokeTask ? zoneSpec : parentDelegate._invokeTaskZS); + this._invokeTaskDlgt = + zoneSpec && (zoneSpec.onInvokeTask ? parentDelegate : parentDelegate._invokeTaskDlgt); + this._invokeTaskCurrZone = + zoneSpec && (zoneSpec.onInvokeTask ? this.zone : parentDelegate.zone); + this._cancelTaskZS = + zoneSpec && (zoneSpec.onCancelTask ? zoneSpec : parentDelegate._cancelTaskZS); + this._cancelTaskDlgt = + zoneSpec && (zoneSpec.onCancelTask ? parentDelegate : parentDelegate._cancelTaskDlgt); + this._cancelTaskCurrZone = + zoneSpec && (zoneSpec.onCancelTask ? this.zone : parentDelegate.zone); + this._hasTaskZS = null; + this._hasTaskDlgt = null; + this._hasTaskDlgtOwner = null; + this._hasTaskCurrZone = null; + const zoneSpecHasTask = zoneSpec && zoneSpec.onHasTask; + const parentHasTask = parentDelegate && parentDelegate._hasTaskZS; + if (zoneSpecHasTask || parentHasTask) { + // If we need to report hasTask, than this ZS needs to do ref counting on tasks. In such + // a case all task related interceptors must go through this ZD. We can't short circuit it. + this._hasTaskZS = zoneSpecHasTask ? zoneSpec : DELEGATE_ZS; + this._hasTaskDlgt = parentDelegate; + this._hasTaskDlgtOwner = this; + this._hasTaskCurrZone = zone; + if (!zoneSpec.onScheduleTask) { + this._scheduleTaskZS = DELEGATE_ZS; + this._scheduleTaskDlgt = parentDelegate; + this._scheduleTaskCurrZone = this.zone; + } + if (!zoneSpec.onInvokeTask) { + this._invokeTaskZS = DELEGATE_ZS; + this._invokeTaskDlgt = parentDelegate; + this._invokeTaskCurrZone = this.zone; + } + if (!zoneSpec.onCancelTask) { + this._cancelTaskZS = DELEGATE_ZS; + this._cancelTaskDlgt = parentDelegate; + this._cancelTaskCurrZone = this.zone; + } + } + } + fork(targetZone, zoneSpec) { + return this._forkZS ? this._forkZS.onFork(this._forkDlgt, this.zone, targetZone, zoneSpec) : + new Zone(targetZone, zoneSpec); + } + intercept(targetZone, callback, source) { + return this._interceptZS ? + this._interceptZS.onIntercept(this._interceptDlgt, this._interceptCurrZone, targetZone, callback, source) : + callback; + } + invoke(targetZone, callback, applyThis, applyArgs, source) { + return this._invokeZS ? this._invokeZS.onInvoke(this._invokeDlgt, this._invokeCurrZone, targetZone, callback, applyThis, applyArgs, source) : + callback.apply(applyThis, applyArgs); + } + handleError(targetZone, error) { + return this._handleErrorZS ? + this._handleErrorZS.onHandleError(this._handleErrorDlgt, this._handleErrorCurrZone, targetZone, error) : + true; + } + scheduleTask(targetZone, task) { + let returnTask = task; + if (this._scheduleTaskZS) { + if (this._hasTaskZS) { + returnTask._zoneDelegates.push(this._hasTaskDlgtOwner); + } + returnTask = this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt, this._scheduleTaskCurrZone, targetZone, task); + if (!returnTask) + returnTask = task; + } + else { + if (task.scheduleFn) { + task.scheduleFn(task); + } + else if (task.type == microTask) { + scheduleMicroTask(task); + } + else { + throw new Error('Task is missing scheduleFn.'); + } + } + return returnTask; + } + invokeTask(targetZone, task, applyThis, applyArgs) { + return this._invokeTaskZS ? this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt, this._invokeTaskCurrZone, targetZone, task, applyThis, applyArgs) : + task.callback.apply(applyThis, applyArgs); + } + cancelTask(targetZone, task) { + let value; + if (this._cancelTaskZS) { + value = this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt, this._cancelTaskCurrZone, targetZone, task); + } + else { + if (!task.cancelFn) { + throw Error('Task is not cancelable'); + } + value = task.cancelFn(task); + } + return value; + } + hasTask(targetZone, isEmpty) { + // hasTask should not throw error so other ZoneDelegate + // can still trigger hasTask callback + try { + this._hasTaskZS && + this._hasTaskZS.onHasTask(this._hasTaskDlgt, this._hasTaskCurrZone, targetZone, isEmpty); + } + catch (err) { + this.handleError(targetZone, err); + } + } + _updateTaskCount(type, count) { + const counts = this._taskCounts; + const prev = counts[type]; + const next = counts[type] = prev + count; + if (next < 0) { + throw new Error('More tasks executed then were scheduled.'); + } + if (prev == 0 || next == 0) { + const isEmpty = { + microTask: counts['microTask'] > 0, + macroTask: counts['macroTask'] > 0, + eventTask: counts['eventTask'] > 0, + change: type + }; + this.hasTask(this.zone, isEmpty); + } + } + } + class ZoneTask { + constructor(type, source, callback, options, scheduleFn, cancelFn) { + this._zone = null; + this.runCount = 0; + this._zoneDelegates = null; + this._state = 'notScheduled'; + this.type = type; + this.source = source; + this.data = options; + this.scheduleFn = scheduleFn; + this.cancelFn = cancelFn; + this.callback = callback; + const self = this; + // TODO: @JiaLiPassion options should have interface + if (type === eventTask && options && options.useG) { + this.invoke = ZoneTask.invokeTask; + } + else { + this.invoke = function () { + return ZoneTask.invokeTask.call(global, self, this, arguments); + }; + } + } + static invokeTask(task, target, args) { + if (!task) { + task = this; + } + _numberOfNestedTaskFrames++; + try { + task.runCount++; + return task.zone.runTask(task, target, args); + } + finally { + if (_numberOfNestedTaskFrames == 1) { + drainMicroTaskQueue(); + } + _numberOfNestedTaskFrames--; + } + } + get zone() { + return this._zone; + } + get state() { + return this._state; + } + cancelScheduleRequest() { + this._transitionTo(notScheduled, scheduling); + } + _transitionTo(toState, fromState1, fromState2) { + if (this._state === fromState1 || this._state === fromState2) { + this._state = toState; + if (toState == notScheduled) { + this._zoneDelegates = null; + } + } + else { + throw new Error(`${this.type} '${this.source}': can not transition to '${toState}', expecting state '${fromState1}'${fromState2 ? ' or \'' + fromState2 + '\'' : ''}, was '${this._state}'.`); + } + } + toString() { + if (this.data && typeof this.data.handleId !== 'undefined') { + return this.data.handleId.toString(); + } + else { + return Object.prototype.toString.call(this); + } + } + // add toJSON method to prevent cyclic error when + // call JSON.stringify(zoneTask) + toJSON() { + return { + type: this.type, + state: this.state, + source: this.source, + zone: this.zone.name, + runCount: this.runCount + }; + } + } + ////////////////////////////////////////////////////// + ////////////////////////////////////////////////////// + /// MICROTASK QUEUE + ////////////////////////////////////////////////////// + ////////////////////////////////////////////////////// + const symbolSetTimeout = __symbol__('setTimeout'); + const symbolPromise = __symbol__('Promise'); + const symbolThen = __symbol__('then'); + let _microTaskQueue = []; + let _isDrainingMicrotaskQueue = false; + let nativeMicroTaskQueuePromise; + function scheduleMicroTask(task) { + // if we are not running in any task, and there has not been anything scheduled + // we must bootstrap the initial task creation by manually scheduling the drain + if (_numberOfNestedTaskFrames === 0 && _microTaskQueue.length === 0) { + // We are not running in Task, so we need to kickstart the microtask queue. + if (!nativeMicroTaskQueuePromise) { + if (global[symbolPromise]) { + nativeMicroTaskQueuePromise = global[symbolPromise].resolve(0); + } + } + if (nativeMicroTaskQueuePromise) { + let nativeThen = nativeMicroTaskQueuePromise[symbolThen]; + if (!nativeThen) { + // native Promise is not patchable, we need to use `then` directly + // issue 1078 + nativeThen = nativeMicroTaskQueuePromise['then']; + } + nativeThen.call(nativeMicroTaskQueuePromise, drainMicroTaskQueue); + } + else { + global[symbolSetTimeout](drainMicroTaskQueue, 0); + } + } + task && _microTaskQueue.push(task); + } + function drainMicroTaskQueue() { + if (!_isDrainingMicrotaskQueue) { + _isDrainingMicrotaskQueue = true; + while (_microTaskQueue.length) { + const queue = _microTaskQueue; + _microTaskQueue = []; + for (let i = 0; i < queue.length; i++) { + const task = queue[i]; + try { + task.zone.runTask(task, null, null); + } + catch (error) { + _api.onUnhandledError(error); + } + } + } + _api.microtaskDrainDone(); + _isDrainingMicrotaskQueue = false; + } + } + ////////////////////////////////////////////////////// + ////////////////////////////////////////////////////// + /// BOOTSTRAP + ////////////////////////////////////////////////////// + ////////////////////////////////////////////////////// + const NO_ZONE = { name: 'NO ZONE' }; + const notScheduled = 'notScheduled', scheduling = 'scheduling', scheduled = 'scheduled', running = 'running', canceling = 'canceling', unknown = 'unknown'; + const microTask = 'microTask', macroTask = 'macroTask', eventTask = 'eventTask'; + const patches = {}; + const _api = { + symbol: __symbol__, + currentZoneFrame: () => _currentZoneFrame, + onUnhandledError: noop, + microtaskDrainDone: noop, + scheduleMicroTask: scheduleMicroTask, + showUncaughtError: () => !Zone[__symbol__('ignoreConsoleErrorUncaughtError')], + patchEventTarget: () => [], + patchOnProperties: noop, + patchMethod: () => noop, + bindArguments: () => [], + patchThen: () => noop, + patchMacroTask: () => noop, + setNativePromise: (NativePromise) => { + // sometimes NativePromise.resolve static function + // is not ready yet, (such as core-js/es6.promise) + // so we need to check here. + if (NativePromise && typeof NativePromise.resolve === 'function') { + nativeMicroTaskQueuePromise = NativePromise.resolve(0); + } + }, + patchEventPrototype: () => noop, + isIEOrEdge: () => false, + getGlobalObjects: () => undefined, + ObjectDefineProperty: () => noop, + ObjectGetOwnPropertyDescriptor: () => undefined, + ObjectCreate: () => undefined, + ArraySlice: () => [], + patchClass: () => noop, + wrapWithCurrentZone: () => noop, + filterProperties: () => [], + attachOriginToPatched: () => noop, + _redefineProperty: () => noop, + patchCallbacks: () => noop + }; + let _currentZoneFrame = { parent: null, zone: new Zone(null, null) }; + let _currentTask = null; + let _numberOfNestedTaskFrames = 0; + function noop() { } + function __symbol__(name) { + return '__zone_symbol__' + name; + } + performanceMeasure('Zone', 'Zone'); + return global['Zone'] = Zone; +})(typeof window !== 'undefined' && window || typeof self !== 'undefined' && self || global); + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +Zone.__load_patch('ZoneAwarePromise', (global, Zone, api) => { + const ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + const ObjectDefineProperty = Object.defineProperty; + function readableObjectToString(obj) { + if (obj && obj.toString === Object.prototype.toString) { + const className = obj.constructor && obj.constructor.name; + return (className ? className : '') + ': ' + JSON.stringify(obj); + } + return obj ? obj.toString() : Object.prototype.toString.call(obj); + } + const __symbol__ = api.symbol; + const _uncaughtPromiseErrors = []; + const symbolPromise = __symbol__('Promise'); + const symbolThen = __symbol__('then'); + const creationTrace = '__creationTrace__'; + api.onUnhandledError = (e) => { + if (api.showUncaughtError()) { + const rejection = e && e.rejection; + if (rejection) { + console.error('Unhandled Promise rejection:', rejection instanceof Error ? rejection.message : rejection, '; Zone:', e.zone.name, '; Task:', e.task && e.task.source, '; Value:', rejection, rejection instanceof Error ? rejection.stack : undefined); + } + else { + console.error(e); + } + } + }; + api.microtaskDrainDone = () => { + while (_uncaughtPromiseErrors.length) { + while (_uncaughtPromiseErrors.length) { + const uncaughtPromiseError = _uncaughtPromiseErrors.shift(); + try { + uncaughtPromiseError.zone.runGuarded(() => { + throw uncaughtPromiseError; + }); + } + catch (error) { + handleUnhandledRejection(error); + } + } + } + }; + const UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL = __symbol__('unhandledPromiseRejectionHandler'); + function handleUnhandledRejection(e) { + api.onUnhandledError(e); + try { + const handler = Zone[UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL]; + if (handler && typeof handler === 'function') { + handler.call(this, e); + } + } + catch (err) { + } + } + function isThenable(value) { + return value && value.then; + } + function forwardResolution(value) { + return value; + } + function forwardRejection(rejection) { + return ZoneAwarePromise.reject(rejection); + } + const symbolState = __symbol__('state'); + const symbolValue = __symbol__('value'); + const symbolFinally = __symbol__('finally'); + const symbolParentPromiseValue = __symbol__('parentPromiseValue'); + const symbolParentPromiseState = __symbol__('parentPromiseState'); + const source = 'Promise.then'; + const UNRESOLVED = null; + const RESOLVED = true; + const REJECTED = false; + const REJECTED_NO_CATCH = 0; + function makeResolver(promise, state) { + return (v) => { + try { + resolvePromise(promise, state, v); + } + catch (err) { + resolvePromise(promise, false, err); + } + // Do not return value or you will break the Promise spec. + }; + } + const once = function () { + let wasCalled = false; + return function wrapper(wrappedFunction) { + return function () { + if (wasCalled) { + return; + } + wasCalled = true; + wrappedFunction.apply(null, arguments); + }; + }; + }; + const TYPE_ERROR = 'Promise resolved with itself'; + const CURRENT_TASK_TRACE_SYMBOL = __symbol__('currentTaskTrace'); + // Promise Resolution + function resolvePromise(promise, state, value) { + const onceWrapper = once(); + if (promise === value) { + throw new TypeError(TYPE_ERROR); + } + if (promise[symbolState] === UNRESOLVED) { + // should only get value.then once based on promise spec. + let then = null; + try { + if (typeof value === 'object' || typeof value === 'function') { + then = value && value.then; + } + } + catch (err) { + onceWrapper(() => { + resolvePromise(promise, false, err); + })(); + return promise; + } + // if (value instanceof ZoneAwarePromise) { + if (state !== REJECTED && value instanceof ZoneAwarePromise && + value.hasOwnProperty(symbolState) && value.hasOwnProperty(symbolValue) && + value[symbolState] !== UNRESOLVED) { + clearRejectedNoCatch(value); + resolvePromise(promise, value[symbolState], value[symbolValue]); + } + else if (state !== REJECTED && typeof then === 'function') { + try { + then.call(value, onceWrapper(makeResolver(promise, state)), onceWrapper(makeResolver(promise, false))); + } + catch (err) { + onceWrapper(() => { + resolvePromise(promise, false, err); + })(); + } + } + else { + promise[symbolState] = state; + const queue = promise[symbolValue]; + promise[symbolValue] = value; + if (promise[symbolFinally] === symbolFinally) { + // the promise is generated by Promise.prototype.finally + if (state === RESOLVED) { + // the state is resolved, should ignore the value + // and use parent promise value + promise[symbolState] = promise[symbolParentPromiseState]; + promise[symbolValue] = promise[symbolParentPromiseValue]; + } + } + // record task information in value when error occurs, so we can + // do some additional work such as render longStackTrace + if (state === REJECTED && value instanceof Error) { + // check if longStackTraceZone is here + const trace = Zone.currentTask && Zone.currentTask.data && + Zone.currentTask.data[creationTrace]; + if (trace) { + // only keep the long stack trace into error when in longStackTraceZone + ObjectDefineProperty(value, CURRENT_TASK_TRACE_SYMBOL, { configurable: true, enumerable: false, writable: true, value: trace }); + } + } + for (let i = 0; i < queue.length;) { + scheduleResolveOrReject(promise, queue[i++], queue[i++], queue[i++], queue[i++]); + } + if (queue.length == 0 && state == REJECTED) { + promise[symbolState] = REJECTED_NO_CATCH; + try { + // try to print more readable error log + throw new Error('Uncaught (in promise): ' + readableObjectToString(value) + + (value && value.stack ? '\n' + value.stack : '')); + } + catch (err) { + const error = err; + error.rejection = value; + error.promise = promise; + error.zone = Zone.current; + error.task = Zone.currentTask; + _uncaughtPromiseErrors.push(error); + api.scheduleMicroTask(); // to make sure that it is running + } + } + } + } + // Resolving an already resolved promise is a noop. + return promise; + } + const REJECTION_HANDLED_HANDLER = __symbol__('rejectionHandledHandler'); + function clearRejectedNoCatch(promise) { + if (promise[symbolState] === REJECTED_NO_CATCH) { + // if the promise is rejected no catch status + // and queue.length > 0, means there is a error handler + // here to handle the rejected promise, we should trigger + // windows.rejectionhandled eventHandler or nodejs rejectionHandled + // eventHandler + try { + const handler = Zone[REJECTION_HANDLED_HANDLER]; + if (handler && typeof handler === 'function') { + handler.call(this, { rejection: promise[symbolValue], promise: promise }); + } + } + catch (err) { + } + promise[symbolState] = REJECTED; + for (let i = 0; i < _uncaughtPromiseErrors.length; i++) { + if (promise === _uncaughtPromiseErrors[i].promise) { + _uncaughtPromiseErrors.splice(i, 1); + } + } + } + } + function scheduleResolveOrReject(promise, zone, chainPromise, onFulfilled, onRejected) { + clearRejectedNoCatch(promise); + const promiseState = promise[symbolState]; + const delegate = promiseState ? + (typeof onFulfilled === 'function') ? onFulfilled : forwardResolution : + (typeof onRejected === 'function') ? onRejected : forwardRejection; + zone.scheduleMicroTask(source, () => { + try { + const parentPromiseValue = promise[symbolValue]; + const isFinallyPromise = chainPromise && symbolFinally === chainPromise[symbolFinally]; + if (isFinallyPromise) { + // if the promise is generated from finally call, keep parent promise's state and value + chainPromise[symbolParentPromiseValue] = parentPromiseValue; + chainPromise[symbolParentPromiseState] = promiseState; + } + // should not pass value to finally callback + const value = zone.run(delegate, undefined, isFinallyPromise && delegate !== forwardRejection && delegate !== forwardResolution ? + [] : + [parentPromiseValue]); + resolvePromise(chainPromise, true, value); + } + catch (error) { + // if error occurs, should always return this error + resolvePromise(chainPromise, false, error); + } + }, chainPromise); + } + const ZONE_AWARE_PROMISE_TO_STRING = 'function ZoneAwarePromise() { [native code] }'; + class ZoneAwarePromise { + constructor(executor) { + const promise = this; + if (!(promise instanceof ZoneAwarePromise)) { + throw new Error('Must be an instanceof Promise.'); + } + promise[symbolState] = UNRESOLVED; + promise[symbolValue] = []; // queue; + try { + executor && executor(makeResolver(promise, RESOLVED), makeResolver(promise, REJECTED)); + } + catch (error) { + resolvePromise(promise, false, error); + } + } + static toString() { + return ZONE_AWARE_PROMISE_TO_STRING; + } + static resolve(value) { + return resolvePromise(new this(null), RESOLVED, value); + } + static reject(error) { + return resolvePromise(new this(null), REJECTED, error); + } + static race(values) { + let resolve; + let reject; + let promise = new this((res, rej) => { + resolve = res; + reject = rej; + }); + function onResolve(value) { + resolve(value); + } + function onReject(error) { + reject(error); + } + for (let value of values) { + if (!isThenable(value)) { + value = this.resolve(value); + } + value.then(onResolve, onReject); + } + return promise; + } + static all(values) { + let resolve; + let reject; + let promise = new this((res, rej) => { + resolve = res; + reject = rej; + }); + // Start at 2 to prevent prematurely resolving if .then is called immediately. + let unresolvedCount = 2; + let valueIndex = 0; + const resolvedValues = []; + for (let value of values) { + if (!isThenable(value)) { + value = this.resolve(value); + } + const curValueIndex = valueIndex; + value.then((value) => { + resolvedValues[curValueIndex] = value; + unresolvedCount--; + if (unresolvedCount === 0) { + resolve(resolvedValues); + } + }, reject); + unresolvedCount++; + valueIndex++; + } + // Make the unresolvedCount zero-based again. + unresolvedCount -= 2; + if (unresolvedCount === 0) { + resolve(resolvedValues); + } + return promise; + } + get [Symbol.toStringTag]() { + return 'Promise'; + } + then(onFulfilled, onRejected) { + const chainPromise = new this.constructor(null); + const zone = Zone.current; + if (this[symbolState] == UNRESOLVED) { + this[symbolValue].push(zone, chainPromise, onFulfilled, onRejected); + } + else { + scheduleResolveOrReject(this, zone, chainPromise, onFulfilled, onRejected); + } + return chainPromise; + } + catch(onRejected) { + return this.then(null, onRejected); + } + finally(onFinally) { + const chainPromise = new this.constructor(null); + chainPromise[symbolFinally] = symbolFinally; + const zone = Zone.current; + if (this[symbolState] == UNRESOLVED) { + this[symbolValue].push(zone, chainPromise, onFinally, onFinally); + } + else { + scheduleResolveOrReject(this, zone, chainPromise, onFinally, onFinally); + } + return chainPromise; + } + } + // Protect against aggressive optimizers dropping seemingly unused properties. + // E.g. Closure Compiler in advanced mode. + ZoneAwarePromise['resolve'] = ZoneAwarePromise.resolve; + ZoneAwarePromise['reject'] = ZoneAwarePromise.reject; + ZoneAwarePromise['race'] = ZoneAwarePromise.race; + ZoneAwarePromise['all'] = ZoneAwarePromise.all; + const NativePromise = global[symbolPromise] = global['Promise']; + const ZONE_AWARE_PROMISE = Zone.__symbol__('ZoneAwarePromise'); + let desc = ObjectGetOwnPropertyDescriptor(global, 'Promise'); + if (!desc || desc.configurable) { + desc && delete desc.writable; + desc && delete desc.value; + if (!desc) { + desc = { configurable: true, enumerable: true }; + } + desc.get = function () { + // if we already set ZoneAwarePromise, use patched one + // otherwise return native one. + return global[ZONE_AWARE_PROMISE] ? global[ZONE_AWARE_PROMISE] : global[symbolPromise]; + }; + desc.set = function (NewNativePromise) { + if (NewNativePromise === ZoneAwarePromise) { + // if the NewNativePromise is ZoneAwarePromise + // save to global + global[ZONE_AWARE_PROMISE] = NewNativePromise; + } + else { + // if the NewNativePromise is not ZoneAwarePromise + // for example: after load zone.js, some library just + // set es6-promise to global, if we set it to global + // directly, assertZonePatched will fail and angular + // will not loaded, so we just set the NewNativePromise + // to global[symbolPromise], so the result is just like + // we load ES6 Promise before zone.js + global[symbolPromise] = NewNativePromise; + if (!NewNativePromise.prototype[symbolThen]) { + patchThen(NewNativePromise); + } + api.setNativePromise(NewNativePromise); + } + }; + ObjectDefineProperty(global, 'Promise', desc); + } + global['Promise'] = ZoneAwarePromise; + const symbolThenPatched = __symbol__('thenPatched'); + function patchThen(Ctor) { + const proto = Ctor.prototype; + const prop = ObjectGetOwnPropertyDescriptor(proto, 'then'); + if (prop && (prop.writable === false || !prop.configurable)) { + // check Ctor.prototype.then propertyDescriptor is writable or not + // in meteor env, writable is false, we should ignore such case + return; + } + const originalThen = proto.then; + // Keep a reference to the original method. + proto[symbolThen] = originalThen; + Ctor.prototype.then = function (onResolve, onReject) { + const wrapped = new ZoneAwarePromise((resolve, reject) => { + originalThen.call(this, resolve, reject); + }); + return wrapped.then(onResolve, onReject); + }; + Ctor[symbolThenPatched] = true; + } + api.patchThen = patchThen; + function zoneify(fn) { + return function () { + let resultPromise = fn.apply(this, arguments); + if (resultPromise instanceof ZoneAwarePromise) { + return resultPromise; + } + let ctor = resultPromise.constructor; + if (!ctor[symbolThenPatched]) { + patchThen(ctor); + } + return resultPromise; + }; + } + if (NativePromise) { + patchThen(NativePromise); + const fetch = global['fetch']; + if (typeof fetch == 'function') { + global[api.symbol('fetch')] = fetch; + global['fetch'] = zoneify(fetch); + } + } + // This is not part of public API, but it is useful for tests, so we expose it. + Promise[Zone.__symbol__('uncaughtPromiseErrors')] = _uncaughtPromiseErrors; + return ZoneAwarePromise; +}); + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * Suppress closure compiler errors about unknown 'Zone' variable + * @fileoverview + * @suppress {undefinedVars,globalThis,missingRequire} + */ +// issue #989, to reduce bundle size, use short name +/** Object.getOwnPropertyDescriptor */ +const ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; +/** Object.defineProperty */ +const ObjectDefineProperty = Object.defineProperty; +/** Object.getPrototypeOf */ +const ObjectGetPrototypeOf = Object.getPrototypeOf; +/** Object.create */ +const ObjectCreate = Object.create; +/** Array.prototype.slice */ +const ArraySlice = Array.prototype.slice; +/** addEventListener string const */ +const ADD_EVENT_LISTENER_STR = 'addEventListener'; +/** removeEventListener string const */ +const REMOVE_EVENT_LISTENER_STR = 'removeEventListener'; +/** zoneSymbol addEventListener */ +const ZONE_SYMBOL_ADD_EVENT_LISTENER = Zone.__symbol__(ADD_EVENT_LISTENER_STR); +/** zoneSymbol removeEventListener */ +const ZONE_SYMBOL_REMOVE_EVENT_LISTENER = Zone.__symbol__(REMOVE_EVENT_LISTENER_STR); +/** true string const */ +const TRUE_STR = 'true'; +/** false string const */ +const FALSE_STR = 'false'; +/** __zone_symbol__ string const */ +const ZONE_SYMBOL_PREFIX = '__zone_symbol__'; +function wrapWithCurrentZone(callback, source) { + return Zone.current.wrap(callback, source); +} +function scheduleMacroTaskWithCurrentZone(source, callback, data, customSchedule, customCancel) { + return Zone.current.scheduleMacroTask(source, callback, data, customSchedule, customCancel); +} +const zoneSymbol = Zone.__symbol__; +const isWindowExists = typeof window !== 'undefined'; +const internalWindow = isWindowExists ? window : undefined; +const _global = isWindowExists && internalWindow || typeof self === 'object' && self || global; +const REMOVE_ATTRIBUTE = 'removeAttribute'; +const NULL_ON_PROP_VALUE = [null]; +function bindArguments(args, source) { + for (let i = args.length - 1; i >= 0; i--) { + if (typeof args[i] === 'function') { + args[i] = wrapWithCurrentZone(args[i], source + '_' + i); + } + } + return args; +} +function patchPrototype(prototype, fnNames) { + const source = prototype.constructor['name']; + for (let i = 0; i < fnNames.length; i++) { + const name = fnNames[i]; + const delegate = prototype[name]; + if (delegate) { + const prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, name); + if (!isPropertyWritable(prototypeDesc)) { + continue; + } + prototype[name] = ((delegate) => { + const patched = function () { + return delegate.apply(this, bindArguments(arguments, source + '.' + name)); + }; + attachOriginToPatched(patched, delegate); + return patched; + })(delegate); + } + } +} +function isPropertyWritable(propertyDesc) { + if (!propertyDesc) { + return true; + } + if (propertyDesc.writable === false) { + return false; + } + return !(typeof propertyDesc.get === 'function' && typeof propertyDesc.set === 'undefined'); +} +const isWebWorker = (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope); +// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify +// this code. +const isNode = (!('nw' in _global) && typeof _global.process !== 'undefined' && + {}.toString.call(_global.process) === '[object process]'); +const isBrowser = !isNode && !isWebWorker && !!(isWindowExists && internalWindow['HTMLElement']); +// we are in electron of nw, so we are both browser and nodejs +// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify +// this code. +const isMix = typeof _global.process !== 'undefined' && + {}.toString.call(_global.process) === '[object process]' && !isWebWorker && + !!(isWindowExists && internalWindow['HTMLElement']); +const zoneSymbolEventNames = {}; +const wrapFn = function (event) { + // https://github.com/angular/zone.js/issues/911, in IE, sometimes + // event will be undefined, so we need to use window.event + event = event || _global.event; + if (!event) { + return; + } + let eventNameSymbol = zoneSymbolEventNames[event.type]; + if (!eventNameSymbol) { + eventNameSymbol = zoneSymbolEventNames[event.type] = zoneSymbol('ON_PROPERTY' + event.type); + } + const target = this || event.target || _global; + const listener = target[eventNameSymbol]; + let result; + if (isBrowser && target === internalWindow && event.type === 'error') { + // window.onerror have different signiture + // https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror#window.onerror + // and onerror callback will prevent default when callback return true + const errorEvent = event; + result = listener && + listener.call(this, errorEvent.message, errorEvent.filename, errorEvent.lineno, errorEvent.colno, errorEvent.error); + if (result === true) { + event.preventDefault(); + } + } + else { + result = listener && listener.apply(this, arguments); + if (result != undefined && !result) { + event.preventDefault(); + } + } + return result; +}; +function patchProperty(obj, prop, prototype) { + let desc = ObjectGetOwnPropertyDescriptor(obj, prop); + if (!desc && prototype) { + // when patch window object, use prototype to check prop exist or not + const prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, prop); + if (prototypeDesc) { + desc = { enumerable: true, configurable: true }; + } + } + // if the descriptor not exists or is not configurable + // just return + if (!desc || !desc.configurable) { + return; + } + const onPropPatchedSymbol = zoneSymbol('on' + prop + 'patched'); + if (obj.hasOwnProperty(onPropPatchedSymbol) && obj[onPropPatchedSymbol]) { + return; + } + // A property descriptor cannot have getter/setter and be writable + // deleting the writable and value properties avoids this error: + // + // TypeError: property descriptors must not specify a value or be writable when a + // getter or setter has been specified + delete desc.writable; + delete desc.value; + const originalDescGet = desc.get; + const originalDescSet = desc.set; + // substr(2) cuz 'onclick' -> 'click', etc + const eventName = prop.substr(2); + let eventNameSymbol = zoneSymbolEventNames[eventName]; + if (!eventNameSymbol) { + eventNameSymbol = zoneSymbolEventNames[eventName] = zoneSymbol('ON_PROPERTY' + eventName); + } + desc.set = function (newValue) { + // in some of windows's onproperty callback, this is undefined + // so we need to check it + let target = this; + if (!target && obj === _global) { + target = _global; + } + if (!target) { + return; + } + let previousValue = target[eventNameSymbol]; + if (previousValue) { + target.removeEventListener(eventName, wrapFn); + } + // issue #978, when onload handler was added before loading zone.js + // we should remove it with originalDescSet + if (originalDescSet) { + originalDescSet.apply(target, NULL_ON_PROP_VALUE); + } + if (typeof newValue === 'function') { + target[eventNameSymbol] = newValue; + target.addEventListener(eventName, wrapFn, false); + } + else { + target[eventNameSymbol] = null; + } + }; + // The getter would return undefined for unassigned properties but the default value of an + // unassigned property is null + desc.get = function () { + // in some of windows's onproperty callback, this is undefined + // so we need to check it + let target = this; + if (!target && obj === _global) { + target = _global; + } + if (!target) { + return null; + } + const listener = target[eventNameSymbol]; + if (listener) { + return listener; + } + else if (originalDescGet) { + // result will be null when use inline event attribute, + // such as + // because the onclick function is internal raw uncompiled handler + // the onclick will be evaluated when first time event was triggered or + // the property is accessed, https://github.com/angular/zone.js/issues/525 + // so we should use original native get to retrieve the handler + let value = originalDescGet && originalDescGet.call(this); + if (value) { + desc.set.call(this, value); + if (typeof target[REMOVE_ATTRIBUTE] === 'function') { + target.removeAttribute(prop); + } + return value; + } + } + return null; + }; + ObjectDefineProperty(obj, prop, desc); + obj[onPropPatchedSymbol] = true; +} +function patchOnProperties(obj, properties, prototype) { + if (properties) { + for (let i = 0; i < properties.length; i++) { + patchProperty(obj, 'on' + properties[i], prototype); + } + } + else { + const onProperties = []; + for (const prop in obj) { + if (prop.substr(0, 2) == 'on') { + onProperties.push(prop); + } + } + for (let j = 0; j < onProperties.length; j++) { + patchProperty(obj, onProperties[j], prototype); + } + } +} +const originalInstanceKey = zoneSymbol('originalInstance'); +// wrap some native API on `window` +function patchClass(className) { + const OriginalClass = _global[className]; + if (!OriginalClass) + return; + // keep original class in global + _global[zoneSymbol(className)] = OriginalClass; + _global[className] = function () { + const a = bindArguments(arguments, className); + switch (a.length) { + case 0: + this[originalInstanceKey] = new OriginalClass(); + break; + case 1: + this[originalInstanceKey] = new OriginalClass(a[0]); + break; + case 2: + this[originalInstanceKey] = new OriginalClass(a[0], a[1]); + break; + case 3: + this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2]); + break; + case 4: + this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2], a[3]); + break; + default: + throw new Error('Arg list too long.'); + } + }; + // attach original delegate to patched function + attachOriginToPatched(_global[className], OriginalClass); + const instance = new OriginalClass(function () { }); + let prop; + for (prop in instance) { + // https://bugs.webkit.org/show_bug.cgi?id=44721 + if (className === 'XMLHttpRequest' && prop === 'responseBlob') + continue; + (function (prop) { + if (typeof instance[prop] === 'function') { + _global[className].prototype[prop] = function () { + return this[originalInstanceKey][prop].apply(this[originalInstanceKey], arguments); + }; + } + else { + ObjectDefineProperty(_global[className].prototype, prop, { + set: function (fn) { + if (typeof fn === 'function') { + this[originalInstanceKey][prop] = wrapWithCurrentZone(fn, className + '.' + prop); + // keep callback in wrapped function so we can + // use it in Function.prototype.toString to return + // the native one. + attachOriginToPatched(this[originalInstanceKey][prop], fn); + } + else { + this[originalInstanceKey][prop] = fn; + } + }, + get: function () { + return this[originalInstanceKey][prop]; + } + }); + } + }(prop)); + } + for (prop in OriginalClass) { + if (prop !== 'prototype' && OriginalClass.hasOwnProperty(prop)) { + _global[className][prop] = OriginalClass[prop]; + } + } +} +function copySymbolProperties(src, dest) { + if (typeof Object.getOwnPropertySymbols !== 'function') { + return; + } + const symbols = Object.getOwnPropertySymbols(src); + symbols.forEach((symbol) => { + const desc = Object.getOwnPropertyDescriptor(src, symbol); + Object.defineProperty(dest, symbol, { + get: function () { + return src[symbol]; + }, + set: function (value) { + if (desc && (!desc.writable || typeof desc.set !== 'function')) { + // if src[symbol] is not writable or not have a setter, just return + return; + } + src[symbol] = value; + }, + enumerable: desc ? desc.enumerable : true, + configurable: desc ? desc.configurable : true + }); + }); +} +let shouldCopySymbolProperties = false; + +function patchMethod(target, name, patchFn) { + let proto = target; + while (proto && !proto.hasOwnProperty(name)) { + proto = ObjectGetPrototypeOf(proto); + } + if (!proto && target[name]) { + // somehow we did not find it, but we can see it. This happens on IE for Window properties. + proto = target; + } + const delegateName = zoneSymbol(name); + let delegate = null; + if (proto && !(delegate = proto[delegateName])) { + delegate = proto[delegateName] = proto[name]; + // check whether proto[name] is writable + // some property is readonly in safari, such as HtmlCanvasElement.prototype.toBlob + const desc = proto && ObjectGetOwnPropertyDescriptor(proto, name); + if (isPropertyWritable(desc)) { + const patchDelegate = patchFn(delegate, delegateName, name); + proto[name] = function () { + return patchDelegate(this, arguments); + }; + attachOriginToPatched(proto[name], delegate); + if (shouldCopySymbolProperties) { + copySymbolProperties(delegate, proto[name]); + } + } + } + return delegate; +} +// TODO: @JiaLiPassion, support cancel task later if necessary +function patchMacroTask(obj, funcName, metaCreator) { + let setNative = null; + function scheduleTask(task) { + const data = task.data; + data.args[data.cbIdx] = function () { + task.invoke.apply(this, arguments); + }; + setNative.apply(data.target, data.args); + return task; + } + setNative = patchMethod(obj, funcName, (delegate) => function (self, args) { + const meta = metaCreator(self, args); + if (meta.cbIdx >= 0 && typeof args[meta.cbIdx] === 'function') { + return scheduleMacroTaskWithCurrentZone(meta.name, args[meta.cbIdx], meta, scheduleTask); + } + else { + // cause an error by calling it directly. + return delegate.apply(self, args); + } + }); +} + +function attachOriginToPatched(patched, original) { + patched[zoneSymbol('OriginalDelegate')] = original; +} +let isDetectedIEOrEdge = false; +let ieOrEdge = false; +function isIE() { + try { + const ua = internalWindow.navigator.userAgent; + if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1) { + return true; + } + } + catch (error) { + } + return false; +} +function isIEOrEdge() { + if (isDetectedIEOrEdge) { + return ieOrEdge; + } + isDetectedIEOrEdge = true; + try { + const ua = internalWindow.navigator.userAgent; + if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1 || ua.indexOf('Edge/') !== -1) { + ieOrEdge = true; + } + } + catch (error) { + } + return ieOrEdge; +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +// override Function.prototype.toString to make zone.js patched function +// look like native function +Zone.__load_patch('toString', (global) => { + // patch Func.prototype.toString to let them look like native + const originalFunctionToString = Function.prototype.toString; + const ORIGINAL_DELEGATE_SYMBOL = zoneSymbol('OriginalDelegate'); + const PROMISE_SYMBOL = zoneSymbol('Promise'); + const ERROR_SYMBOL = zoneSymbol('Error'); + const newFunctionToString = function toString() { + if (typeof this === 'function') { + const originalDelegate = this[ORIGINAL_DELEGATE_SYMBOL]; + if (originalDelegate) { + if (typeof originalDelegate === 'function') { + return originalFunctionToString.call(originalDelegate); + } + else { + return Object.prototype.toString.call(originalDelegate); + } + } + if (this === Promise) { + const nativePromise = global[PROMISE_SYMBOL]; + if (nativePromise) { + return originalFunctionToString.call(nativePromise); + } + } + if (this === Error) { + const nativeError = global[ERROR_SYMBOL]; + if (nativeError) { + return originalFunctionToString.call(nativeError); + } + } + } + return originalFunctionToString.call(this); + }; + newFunctionToString[ORIGINAL_DELEGATE_SYMBOL] = originalFunctionToString; + Function.prototype.toString = newFunctionToString; + // patch Object.prototype.toString to let them look like native + const originalObjectToString = Object.prototype.toString; + const PROMISE_OBJECT_TO_STRING = '[object Promise]'; + Object.prototype.toString = function () { + if (this instanceof Promise) { + return PROMISE_OBJECT_TO_STRING; + } + return originalObjectToString.call(this); + }; +}); + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * @fileoverview + * @suppress {missingRequire} + */ +let passiveSupported = false; +if (typeof window !== 'undefined') { + try { + const options = Object.defineProperty({}, 'passive', { + get: function () { + passiveSupported = true; + } + }); + window.addEventListener('test', options, options); + window.removeEventListener('test', options, options); + } + catch (err) { + passiveSupported = false; + } +} +// an identifier to tell ZoneTask do not create a new invoke closure +const OPTIMIZED_ZONE_EVENT_TASK_DATA = { + useG: true +}; +const zoneSymbolEventNames$1 = {}; +const globalSources = {}; +const EVENT_NAME_SYMBOL_REGX = /^__zone_symbol__(\w+)(true|false)$/; +const IMMEDIATE_PROPAGATION_SYMBOL = ('__zone_symbol__propagationStopped'); +function patchEventTarget(_global, apis, patchOptions) { + const ADD_EVENT_LISTENER = (patchOptions && patchOptions.add) || ADD_EVENT_LISTENER_STR; + const REMOVE_EVENT_LISTENER = (patchOptions && patchOptions.rm) || REMOVE_EVENT_LISTENER_STR; + const LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.listeners) || 'eventListeners'; + const REMOVE_ALL_LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.rmAll) || 'removeAllListeners'; + const zoneSymbolAddEventListener = zoneSymbol(ADD_EVENT_LISTENER); + const ADD_EVENT_LISTENER_SOURCE = '.' + ADD_EVENT_LISTENER + ':'; + const PREPEND_EVENT_LISTENER = 'prependListener'; + const PREPEND_EVENT_LISTENER_SOURCE = '.' + PREPEND_EVENT_LISTENER + ':'; + const invokeTask = function (task, target, event) { + // for better performance, check isRemoved which is set + // by removeEventListener + if (task.isRemoved) { + return; + } + const delegate = task.callback; + if (typeof delegate === 'object' && delegate.handleEvent) { + // create the bind version of handleEvent when invoke + task.callback = (event) => delegate.handleEvent(event); + task.originalDelegate = delegate; + } + // invoke static task.invoke + task.invoke(task, target, [event]); + const options = task.options; + if (options && typeof options === 'object' && options.once) { + // if options.once is true, after invoke once remove listener here + // only browser need to do this, nodejs eventEmitter will cal removeListener + // inside EventEmitter.once + const delegate = task.originalDelegate ? task.originalDelegate : task.callback; + target[REMOVE_EVENT_LISTENER].call(target, event.type, delegate, options); + } + }; + // global shared zoneAwareCallback to handle all event callback with capture = false + const globalZoneAwareCallback = function (event) { + // https://github.com/angular/zone.js/issues/911, in IE, sometimes + // event will be undefined, so we need to use window.event + event = event || _global.event; + if (!event) { + return; + } + // event.target is needed for Samsung TV and SourceBuffer + // || global is needed https://github.com/angular/zone.js/issues/190 + const target = this || event.target || _global; + const tasks = target[zoneSymbolEventNames$1[event.type][FALSE_STR]]; + if (tasks) { + // invoke all tasks which attached to current target with given event.type and capture = false + // for performance concern, if task.length === 1, just invoke + if (tasks.length === 1) { + invokeTask(tasks[0], target, event); + } + else { + // https://github.com/angular/zone.js/issues/836 + // copy the tasks array before invoke, to avoid + // the callback will remove itself or other listener + const copyTasks = tasks.slice(); + for (let i = 0; i < copyTasks.length; i++) { + if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) { + break; + } + invokeTask(copyTasks[i], target, event); + } + } + } + }; + // global shared zoneAwareCallback to handle all event callback with capture = true + const globalZoneAwareCaptureCallback = function (event) { + // https://github.com/angular/zone.js/issues/911, in IE, sometimes + // event will be undefined, so we need to use window.event + event = event || _global.event; + if (!event) { + return; + } + // event.target is needed for Samsung TV and SourceBuffer + // || global is needed https://github.com/angular/zone.js/issues/190 + const target = this || event.target || _global; + const tasks = target[zoneSymbolEventNames$1[event.type][TRUE_STR]]; + if (tasks) { + // invoke all tasks which attached to current target with given event.type and capture = false + // for performance concern, if task.length === 1, just invoke + if (tasks.length === 1) { + invokeTask(tasks[0], target, event); + } + else { + // https://github.com/angular/zone.js/issues/836 + // copy the tasks array before invoke, to avoid + // the callback will remove itself or other listener + const copyTasks = tasks.slice(); + for (let i = 0; i < copyTasks.length; i++) { + if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) { + break; + } + invokeTask(copyTasks[i], target, event); + } + } + } + }; + function patchEventTargetMethods(obj, patchOptions) { + if (!obj) { + return false; + } + let useGlobalCallback = true; + if (patchOptions && patchOptions.useG !== undefined) { + useGlobalCallback = patchOptions.useG; + } + const validateHandler = patchOptions && patchOptions.vh; + let checkDuplicate = true; + if (patchOptions && patchOptions.chkDup !== undefined) { + checkDuplicate = patchOptions.chkDup; + } + let returnTarget = false; + if (patchOptions && patchOptions.rt !== undefined) { + returnTarget = patchOptions.rt; + } + let proto = obj; + while (proto && !proto.hasOwnProperty(ADD_EVENT_LISTENER)) { + proto = ObjectGetPrototypeOf(proto); + } + if (!proto && obj[ADD_EVENT_LISTENER]) { + // somehow we did not find it, but we can see it. This happens on IE for Window properties. + proto = obj; + } + if (!proto) { + return false; + } + if (proto[zoneSymbolAddEventListener]) { + return false; + } + const eventNameToString = patchOptions && patchOptions.eventNameToString; + // a shared global taskData to pass data for scheduleEventTask + // so we do not need to create a new object just for pass some data + const taskData = {}; + const nativeAddEventListener = proto[zoneSymbolAddEventListener] = proto[ADD_EVENT_LISTENER]; + const nativeRemoveEventListener = proto[zoneSymbol(REMOVE_EVENT_LISTENER)] = + proto[REMOVE_EVENT_LISTENER]; + const nativeListeners = proto[zoneSymbol(LISTENERS_EVENT_LISTENER)] = + proto[LISTENERS_EVENT_LISTENER]; + const nativeRemoveAllListeners = proto[zoneSymbol(REMOVE_ALL_LISTENERS_EVENT_LISTENER)] = + proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER]; + let nativePrependEventListener; + if (patchOptions && patchOptions.prepend) { + nativePrependEventListener = proto[zoneSymbol(patchOptions.prepend)] = + proto[patchOptions.prepend]; + } + function checkIsPassive(task) { + if (!passiveSupported && typeof taskData.options !== 'boolean' && + typeof taskData.options !== 'undefined' && taskData.options !== null) { + // options is a non-null non-undefined object + // passive is not supported + // don't pass options as object + // just pass capture as a boolean + task.options = !!taskData.options.capture; + taskData.options = task.options; + } + } + const customScheduleGlobal = function (task) { + // if there is already a task for the eventName + capture, + // just return, because we use the shared globalZoneAwareCallback here. + if (taskData.isExisting) { + return; + } + checkIsPassive(task); + return nativeAddEventListener.call(taskData.target, taskData.eventName, taskData.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, taskData.options); + }; + const customCancelGlobal = function (task) { + // if task is not marked as isRemoved, this call is directly + // from Zone.prototype.cancelTask, we should remove the task + // from tasksList of target first + if (!task.isRemoved) { + const symbolEventNames = zoneSymbolEventNames$1[task.eventName]; + let symbolEventName; + if (symbolEventNames) { + symbolEventName = symbolEventNames[task.capture ? TRUE_STR : FALSE_STR]; + } + const existingTasks = symbolEventName && task.target[symbolEventName]; + if (existingTasks) { + for (let i = 0; i < existingTasks.length; i++) { + const existingTask = existingTasks[i]; + if (existingTask === task) { + existingTasks.splice(i, 1); + // set isRemoved to data for faster invokeTask check + task.isRemoved = true; + if (existingTasks.length === 0) { + // all tasks for the eventName + capture have gone, + // remove globalZoneAwareCallback and remove the task cache from target + task.allRemoved = true; + task.target[symbolEventName] = null; + } + break; + } + } + } + } + // if all tasks for the eventName + capture have gone, + // we will really remove the global event callback, + // if not, return + if (!task.allRemoved) { + return; + } + return nativeRemoveEventListener.call(task.target, task.eventName, task.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, task.options); + }; + const customScheduleNonGlobal = function (task) { + checkIsPassive(task); + return nativeAddEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options); + }; + const customSchedulePrepend = function (task) { + return nativePrependEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options); + }; + const customCancelNonGlobal = function (task) { + return nativeRemoveEventListener.call(task.target, task.eventName, task.invoke, task.options); + }; + const customSchedule = useGlobalCallback ? customScheduleGlobal : customScheduleNonGlobal; + const customCancel = useGlobalCallback ? customCancelGlobal : customCancelNonGlobal; + const compareTaskCallbackVsDelegate = function (task, delegate) { + const typeOfDelegate = typeof delegate; + return (typeOfDelegate === 'function' && task.callback === delegate) || + (typeOfDelegate === 'object' && task.originalDelegate === delegate); + }; + const compare = (patchOptions && patchOptions.diff) ? patchOptions.diff : compareTaskCallbackVsDelegate; + const blackListedEvents = Zone[Zone.__symbol__('BLACK_LISTED_EVENTS')]; + const makeAddListener = function (nativeListener, addSource, customScheduleFn, customCancelFn, returnTarget = false, prepend = false) { + return function () { + const target = this || _global; + const eventName = arguments[0]; + let delegate = arguments[1]; + if (!delegate) { + return nativeListener.apply(this, arguments); + } + if (isNode && eventName === 'uncaughtException') { + // don't patch uncaughtException of nodejs to prevent endless loop + return nativeListener.apply(this, arguments); + } + // don't create the bind delegate function for handleEvent + // case here to improve addEventListener performance + // we will create the bind delegate when invoke + let isHandleEvent = false; + if (typeof delegate !== 'function') { + if (!delegate.handleEvent) { + return nativeListener.apply(this, arguments); + } + isHandleEvent = true; + } + if (validateHandler && !validateHandler(nativeListener, delegate, target, arguments)) { + return; + } + const options = arguments[2]; + if (blackListedEvents) { + // check black list + for (let i = 0; i < blackListedEvents.length; i++) { + if (eventName === blackListedEvents[i]) { + return nativeListener.apply(this, arguments); + } + } + } + let capture; + let once = false; + if (options === undefined) { + capture = false; + } + else if (options === true) { + capture = true; + } + else if (options === false) { + capture = false; + } + else { + capture = options ? !!options.capture : false; + once = options ? !!options.once : false; + } + const zone = Zone.current; + const symbolEventNames = zoneSymbolEventNames$1[eventName]; + let symbolEventName; + if (!symbolEventNames) { + // the code is duplicate, but I just want to get some better performance + const falseEventName = (eventNameToString ? eventNameToString(eventName) : eventName) + FALSE_STR; + const trueEventName = (eventNameToString ? eventNameToString(eventName) : eventName) + TRUE_STR; + const symbol = ZONE_SYMBOL_PREFIX + falseEventName; + const symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName; + zoneSymbolEventNames$1[eventName] = {}; + zoneSymbolEventNames$1[eventName][FALSE_STR] = symbol; + zoneSymbolEventNames$1[eventName][TRUE_STR] = symbolCapture; + symbolEventName = capture ? symbolCapture : symbol; + } + else { + symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR]; + } + let existingTasks = target[symbolEventName]; + let isExisting = false; + if (existingTasks) { + // already have task registered + isExisting = true; + if (checkDuplicate) { + for (let i = 0; i < existingTasks.length; i++) { + if (compare(existingTasks[i], delegate)) { + // same callback, same capture, same event name, just return + return; + } + } + } + } + else { + existingTasks = target[symbolEventName] = []; + } + let source; + const constructorName = target.constructor['name']; + const targetSource = globalSources[constructorName]; + if (targetSource) { + source = targetSource[eventName]; + } + if (!source) { + source = constructorName + addSource + + (eventNameToString ? eventNameToString(eventName) : eventName); + } + // do not create a new object as task.data to pass those things + // just use the global shared one + taskData.options = options; + if (once) { + // if addEventListener with once options, we don't pass it to + // native addEventListener, instead we keep the once setting + // and handle ourselves. + taskData.options.once = false; + } + taskData.target = target; + taskData.capture = capture; + taskData.eventName = eventName; + taskData.isExisting = isExisting; + const data = useGlobalCallback ? OPTIMIZED_ZONE_EVENT_TASK_DATA : undefined; + // keep taskData into data to allow onScheduleEventTask to access the task information + if (data) { + data.taskData = taskData; + } + const task = zone.scheduleEventTask(source, delegate, data, customScheduleFn, customCancelFn); + // should clear taskData.target to avoid memory leak + // issue, https://github.com/angular/angular/issues/20442 + taskData.target = null; + // need to clear up taskData because it is a global object + if (data) { + data.taskData = null; + } + // have to save those information to task in case + // application may call task.zone.cancelTask() directly + if (once) { + options.once = true; + } + if (!(!passiveSupported && typeof task.options === 'boolean')) { + // if not support passive, and we pass an option object + // to addEventListener, we should save the options to task + task.options = options; + } + task.target = target; + task.capture = capture; + task.eventName = eventName; + if (isHandleEvent) { + // save original delegate for compare to check duplicate + task.originalDelegate = delegate; + } + if (!prepend) { + existingTasks.push(task); + } + else { + existingTasks.unshift(task); + } + if (returnTarget) { + return target; + } + }; + }; + proto[ADD_EVENT_LISTENER] = makeAddListener(nativeAddEventListener, ADD_EVENT_LISTENER_SOURCE, customSchedule, customCancel, returnTarget); + if (nativePrependEventListener) { + proto[PREPEND_EVENT_LISTENER] = makeAddListener(nativePrependEventListener, PREPEND_EVENT_LISTENER_SOURCE, customSchedulePrepend, customCancel, returnTarget, true); + } + proto[REMOVE_EVENT_LISTENER] = function () { + const target = this || _global; + const eventName = arguments[0]; + const options = arguments[2]; + let capture; + if (options === undefined) { + capture = false; + } + else if (options === true) { + capture = true; + } + else if (options === false) { + capture = false; + } + else { + capture = options ? !!options.capture : false; + } + const delegate = arguments[1]; + if (!delegate) { + return nativeRemoveEventListener.apply(this, arguments); + } + if (validateHandler && + !validateHandler(nativeRemoveEventListener, delegate, target, arguments)) { + return; + } + const symbolEventNames = zoneSymbolEventNames$1[eventName]; + let symbolEventName; + if (symbolEventNames) { + symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR]; + } + const existingTasks = symbolEventName && target[symbolEventName]; + if (existingTasks) { + for (let i = 0; i < existingTasks.length; i++) { + const existingTask = existingTasks[i]; + if (compare(existingTask, delegate)) { + existingTasks.splice(i, 1); + // set isRemoved to data for faster invokeTask check + existingTask.isRemoved = true; + if (existingTasks.length === 0) { + // all tasks for the eventName + capture have gone, + // remove globalZoneAwareCallback and remove the task cache from target + existingTask.allRemoved = true; + target[symbolEventName] = null; + } + existingTask.zone.cancelTask(existingTask); + if (returnTarget) { + return target; + } + return; + } + } + } + // issue 930, didn't find the event name or callback + // from zone kept existingTasks, the callback maybe + // added outside of zone, we need to call native removeEventListener + // to try to remove it. + return nativeRemoveEventListener.apply(this, arguments); + }; + proto[LISTENERS_EVENT_LISTENER] = function () { + const target = this || _global; + const eventName = arguments[0]; + const listeners = []; + const tasks = findEventTasks(target, eventNameToString ? eventNameToString(eventName) : eventName); + for (let i = 0; i < tasks.length; i++) { + const task = tasks[i]; + let delegate = task.originalDelegate ? task.originalDelegate : task.callback; + listeners.push(delegate); + } + return listeners; + }; + proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER] = function () { + const target = this || _global; + const eventName = arguments[0]; + if (!eventName) { + const keys = Object.keys(target); + for (let i = 0; i < keys.length; i++) { + const prop = keys[i]; + const match = EVENT_NAME_SYMBOL_REGX.exec(prop); + let evtName = match && match[1]; + // in nodejs EventEmitter, removeListener event is + // used for monitoring the removeListener call, + // so just keep removeListener eventListener until + // all other eventListeners are removed + if (evtName && evtName !== 'removeListener') { + this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, evtName); + } + } + // remove removeListener listener finally + this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, 'removeListener'); + } + else { + const symbolEventNames = zoneSymbolEventNames$1[eventName]; + if (symbolEventNames) { + const symbolEventName = symbolEventNames[FALSE_STR]; + const symbolCaptureEventName = symbolEventNames[TRUE_STR]; + const tasks = target[symbolEventName]; + const captureTasks = target[symbolCaptureEventName]; + if (tasks) { + const removeTasks = tasks.slice(); + for (let i = 0; i < removeTasks.length; i++) { + const task = removeTasks[i]; + let delegate = task.originalDelegate ? task.originalDelegate : task.callback; + this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options); + } + } + if (captureTasks) { + const removeTasks = captureTasks.slice(); + for (let i = 0; i < removeTasks.length; i++) { + const task = removeTasks[i]; + let delegate = task.originalDelegate ? task.originalDelegate : task.callback; + this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options); + } + } + } + } + if (returnTarget) { + return this; + } + }; + // for native toString patch + attachOriginToPatched(proto[ADD_EVENT_LISTENER], nativeAddEventListener); + attachOriginToPatched(proto[REMOVE_EVENT_LISTENER], nativeRemoveEventListener); + if (nativeRemoveAllListeners) { + attachOriginToPatched(proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER], nativeRemoveAllListeners); + } + if (nativeListeners) { + attachOriginToPatched(proto[LISTENERS_EVENT_LISTENER], nativeListeners); + } + return true; + } + let results = []; + for (let i = 0; i < apis.length; i++) { + results[i] = patchEventTargetMethods(apis[i], patchOptions); + } + return results; +} +function findEventTasks(target, eventName) { + const foundTasks = []; + for (let prop in target) { + const match = EVENT_NAME_SYMBOL_REGX.exec(prop); + let evtName = match && match[1]; + if (evtName && (!eventName || evtName === eventName)) { + const tasks = target[prop]; + if (tasks) { + for (let i = 0; i < tasks.length; i++) { + foundTasks.push(tasks[i]); + } + } + } + } + return foundTasks; +} +function patchEventPrototype(global, api) { + const Event = global['Event']; + if (Event && Event.prototype) { + api.patchMethod(Event.prototype, 'stopImmediatePropagation', (delegate) => function (self, args) { + self[IMMEDIATE_PROPAGATION_SYMBOL] = true; + // we need to call the native stopImmediatePropagation + // in case in some hybrid application, some part of + // application will be controlled by zone, some are not + delegate && delegate.apply(self, args); + }); + } +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +function patchCallbacks(api, target, targetName, method, callbacks) { + const symbol = Zone.__symbol__(method); + if (target[symbol]) { + return; + } + const nativeDelegate = target[symbol] = target[method]; + target[method] = function (name, opts, options) { + if (opts && opts.prototype) { + callbacks.forEach(function (callback) { + const source = `${targetName}.${method}::` + callback; + const prototype = opts.prototype; + if (prototype.hasOwnProperty(callback)) { + const descriptor = api.ObjectGetOwnPropertyDescriptor(prototype, callback); + if (descriptor && descriptor.value) { + descriptor.value = api.wrapWithCurrentZone(descriptor.value, source); + api._redefineProperty(opts.prototype, callback, descriptor); + } + else if (prototype[callback]) { + prototype[callback] = api.wrapWithCurrentZone(prototype[callback], source); + } + } + else if (prototype[callback]) { + prototype[callback] = api.wrapWithCurrentZone(prototype[callback], source); + } + }); + } + return nativeDelegate.call(target, name, opts, options); + }; + api.attachOriginToPatched(target[method], nativeDelegate); +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/* + * This is necessary for Chrome and Chrome mobile, to enable + * things like redefining `createdCallback` on an element. + */ +const zoneSymbol$1 = Zone.__symbol__; +const _defineProperty = Object[zoneSymbol$1('defineProperty')] = Object.defineProperty; +const _getOwnPropertyDescriptor = Object[zoneSymbol$1('getOwnPropertyDescriptor')] = + Object.getOwnPropertyDescriptor; +const _create = Object.create; +const unconfigurablesKey = zoneSymbol$1('unconfigurables'); +function propertyPatch() { + Object.defineProperty = function (obj, prop, desc) { + if (isUnconfigurable(obj, prop)) { + throw new TypeError('Cannot assign to read only property \'' + prop + '\' of ' + obj); + } + const originalConfigurableFlag = desc.configurable; + if (prop !== 'prototype') { + desc = rewriteDescriptor(obj, prop, desc); + } + return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag); + }; + Object.defineProperties = function (obj, props) { + Object.keys(props).forEach(function (prop) { + Object.defineProperty(obj, prop, props[prop]); + }); + return obj; + }; + Object.create = function (obj, proto) { + if (typeof proto === 'object' && !Object.isFrozen(proto)) { + Object.keys(proto).forEach(function (prop) { + proto[prop] = rewriteDescriptor(obj, prop, proto[prop]); + }); + } + return _create(obj, proto); + }; + Object.getOwnPropertyDescriptor = function (obj, prop) { + const desc = _getOwnPropertyDescriptor(obj, prop); + if (desc && isUnconfigurable(obj, prop)) { + desc.configurable = false; + } + return desc; + }; +} +function _redefineProperty(obj, prop, desc) { + const originalConfigurableFlag = desc.configurable; + desc = rewriteDescriptor(obj, prop, desc); + return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag); +} +function isUnconfigurable(obj, prop) { + return obj && obj[unconfigurablesKey] && obj[unconfigurablesKey][prop]; +} +function rewriteDescriptor(obj, prop, desc) { + // issue-927, if the desc is frozen, don't try to change the desc + if (!Object.isFrozen(desc)) { + desc.configurable = true; + } + if (!desc.configurable) { + // issue-927, if the obj is frozen, don't try to set the desc to obj + if (!obj[unconfigurablesKey] && !Object.isFrozen(obj)) { + _defineProperty(obj, unconfigurablesKey, { writable: true, value: {} }); + } + if (obj[unconfigurablesKey]) { + obj[unconfigurablesKey][prop] = true; + } + } + return desc; +} +function _tryDefineProperty(obj, prop, desc, originalConfigurableFlag) { + try { + return _defineProperty(obj, prop, desc); + } + catch (error) { + if (desc.configurable) { + // In case of errors, when the configurable flag was likely set by rewriteDescriptor(), let's + // retry with the original flag value + if (typeof originalConfigurableFlag == 'undefined') { + delete desc.configurable; + } + else { + desc.configurable = originalConfigurableFlag; + } + try { + return _defineProperty(obj, prop, desc); + } + catch (error) { + let descJson = null; + try { + descJson = JSON.stringify(desc); + } + catch (error) { + descJson = desc.toString(); + } + console.log(`Attempting to configure '${prop}' with descriptor '${descJson}' on object '${obj}' and got error, giving up: ${error}`); + } + } + else { + throw error; + } + } +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * @fileoverview + * @suppress {globalThis} + */ +const globalEventHandlersEventNames = [ + 'abort', + 'animationcancel', + 'animationend', + 'animationiteration', + 'auxclick', + 'beforeinput', + 'blur', + 'cancel', + 'canplay', + 'canplaythrough', + 'change', + 'compositionstart', + 'compositionupdate', + 'compositionend', + 'cuechange', + 'click', + 'close', + 'contextmenu', + 'curechange', + 'dblclick', + 'drag', + 'dragend', + 'dragenter', + 'dragexit', + 'dragleave', + 'dragover', + 'drop', + 'durationchange', + 'emptied', + 'ended', + 'error', + 'focus', + 'focusin', + 'focusout', + 'gotpointercapture', + 'input', + 'invalid', + 'keydown', + 'keypress', + 'keyup', + 'load', + 'loadstart', + 'loadeddata', + 'loadedmetadata', + 'lostpointercapture', + 'mousedown', + 'mouseenter', + 'mouseleave', + 'mousemove', + 'mouseout', + 'mouseover', + 'mouseup', + 'mousewheel', + 'orientationchange', + 'pause', + 'play', + 'playing', + 'pointercancel', + 'pointerdown', + 'pointerenter', + 'pointerleave', + 'pointerlockchange', + 'mozpointerlockchange', + 'webkitpointerlockerchange', + 'pointerlockerror', + 'mozpointerlockerror', + 'webkitpointerlockerror', + 'pointermove', + 'pointout', + 'pointerover', + 'pointerup', + 'progress', + 'ratechange', + 'reset', + 'resize', + 'scroll', + 'seeked', + 'seeking', + 'select', + 'selectionchange', + 'selectstart', + 'show', + 'sort', + 'stalled', + 'submit', + 'suspend', + 'timeupdate', + 'volumechange', + 'touchcancel', + 'touchmove', + 'touchstart', + 'touchend', + 'transitioncancel', + 'transitionend', + 'waiting', + 'wheel' +]; +const documentEventNames = [ + 'afterscriptexecute', 'beforescriptexecute', 'DOMContentLoaded', 'freeze', 'fullscreenchange', + 'mozfullscreenchange', 'webkitfullscreenchange', 'msfullscreenchange', 'fullscreenerror', + 'mozfullscreenerror', 'webkitfullscreenerror', 'msfullscreenerror', 'readystatechange', + 'visibilitychange', 'resume' +]; +const windowEventNames = [ + 'absolutedeviceorientation', + 'afterinput', + 'afterprint', + 'appinstalled', + 'beforeinstallprompt', + 'beforeprint', + 'beforeunload', + 'devicelight', + 'devicemotion', + 'deviceorientation', + 'deviceorientationabsolute', + 'deviceproximity', + 'hashchange', + 'languagechange', + 'message', + 'mozbeforepaint', + 'offline', + 'online', + 'paint', + 'pageshow', + 'pagehide', + 'popstate', + 'rejectionhandled', + 'storage', + 'unhandledrejection', + 'unload', + 'userproximity', + 'vrdisplyconnected', + 'vrdisplaydisconnected', + 'vrdisplaypresentchange' +]; +const htmlElementEventNames = [ + 'beforecopy', 'beforecut', 'beforepaste', 'copy', 'cut', 'paste', 'dragstart', 'loadend', + 'animationstart', 'search', 'transitionrun', 'transitionstart', 'webkitanimationend', + 'webkitanimationiteration', 'webkitanimationstart', 'webkittransitionend' +]; +const mediaElementEventNames = ['encrypted', 'waitingforkey', 'msneedkey', 'mozinterruptbegin', 'mozinterruptend']; +const ieElementEventNames = [ + 'activate', + 'afterupdate', + 'ariarequest', + 'beforeactivate', + 'beforedeactivate', + 'beforeeditfocus', + 'beforeupdate', + 'cellchange', + 'controlselect', + 'dataavailable', + 'datasetchanged', + 'datasetcomplete', + 'errorupdate', + 'filterchange', + 'layoutcomplete', + 'losecapture', + 'move', + 'moveend', + 'movestart', + 'propertychange', + 'resizeend', + 'resizestart', + 'rowenter', + 'rowexit', + 'rowsdelete', + 'rowsinserted', + 'command', + 'compassneedscalibration', + 'deactivate', + 'help', + 'mscontentzoom', + 'msmanipulationstatechanged', + 'msgesturechange', + 'msgesturedoubletap', + 'msgestureend', + 'msgesturehold', + 'msgesturestart', + 'msgesturetap', + 'msgotpointercapture', + 'msinertiastart', + 'mslostpointercapture', + 'mspointercancel', + 'mspointerdown', + 'mspointerenter', + 'mspointerhover', + 'mspointerleave', + 'mspointermove', + 'mspointerout', + 'mspointerover', + 'mspointerup', + 'pointerout', + 'mssitemodejumplistitemremoved', + 'msthumbnailclick', + 'stop', + 'storagecommit' +]; +const webglEventNames = ['webglcontextrestored', 'webglcontextlost', 'webglcontextcreationerror']; +const formEventNames = ['autocomplete', 'autocompleteerror']; +const detailEventNames = ['toggle']; +const frameEventNames = ['load']; +const frameSetEventNames = ['blur', 'error', 'focus', 'load', 'resize', 'scroll', 'messageerror']; +const marqueeEventNames = ['bounce', 'finish', 'start']; +const XMLHttpRequestEventNames = [ + 'loadstart', 'progress', 'abort', 'error', 'load', 'progress', 'timeout', 'loadend', + 'readystatechange' +]; +const IDBIndexEventNames = ['upgradeneeded', 'complete', 'abort', 'success', 'error', 'blocked', 'versionchange', 'close']; +const websocketEventNames = ['close', 'error', 'open', 'message']; +const workerEventNames = ['error', 'message']; +const eventNames = globalEventHandlersEventNames.concat(webglEventNames, formEventNames, detailEventNames, documentEventNames, windowEventNames, htmlElementEventNames, ieElementEventNames); +function filterProperties(target, onProperties, ignoreProperties) { + if (!ignoreProperties || ignoreProperties.length === 0) { + return onProperties; + } + const tip = ignoreProperties.filter(ip => ip.target === target); + if (!tip || tip.length === 0) { + return onProperties; + } + const targetIgnoreProperties = tip[0].ignoreProperties; + return onProperties.filter(op => targetIgnoreProperties.indexOf(op) === -1); +} +function patchFilteredProperties(target, onProperties, ignoreProperties, prototype) { + // check whether target is available, sometimes target will be undefined + // because different browser or some 3rd party plugin. + if (!target) { + return; + } + const filteredProperties = filterProperties(target, onProperties, ignoreProperties); + patchOnProperties(target, filteredProperties, prototype); +} +function propertyDescriptorPatch(api, _global) { + if (isNode && !isMix) { + return; + } + if (Zone[api.symbol('patchEvents')]) { + // events are already been patched by legacy patch. + return; + } + const supportsWebSocket = typeof WebSocket !== 'undefined'; + const ignoreProperties = _global['__Zone_ignore_on_properties']; + // for browsers that we can patch the descriptor: Chrome & Firefox + if (isBrowser) { + const internalWindow = window; + const ignoreErrorProperties = isIE ? [{ target: internalWindow, ignoreProperties: ['error'] }] : []; + // in IE/Edge, onProp not exist in window object, but in WindowPrototype + // so we need to pass WindowPrototype to check onProp exist or not + patchFilteredProperties(internalWindow, eventNames.concat(['messageerror']), ignoreProperties ? ignoreProperties.concat(ignoreErrorProperties) : ignoreProperties, ObjectGetPrototypeOf(internalWindow)); + patchFilteredProperties(Document.prototype, eventNames, ignoreProperties); + if (typeof internalWindow['SVGElement'] !== 'undefined') { + patchFilteredProperties(internalWindow['SVGElement'].prototype, eventNames, ignoreProperties); + } + patchFilteredProperties(Element.prototype, eventNames, ignoreProperties); + patchFilteredProperties(HTMLElement.prototype, eventNames, ignoreProperties); + patchFilteredProperties(HTMLMediaElement.prototype, mediaElementEventNames, ignoreProperties); + patchFilteredProperties(HTMLFrameSetElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties); + patchFilteredProperties(HTMLBodyElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties); + patchFilteredProperties(HTMLFrameElement.prototype, frameEventNames, ignoreProperties); + patchFilteredProperties(HTMLIFrameElement.prototype, frameEventNames, ignoreProperties); + const HTMLMarqueeElement = internalWindow['HTMLMarqueeElement']; + if (HTMLMarqueeElement) { + patchFilteredProperties(HTMLMarqueeElement.prototype, marqueeEventNames, ignoreProperties); + } + const Worker = internalWindow['Worker']; + if (Worker) { + patchFilteredProperties(Worker.prototype, workerEventNames, ignoreProperties); + } + } + const XMLHttpRequest = _global['XMLHttpRequest']; + if (XMLHttpRequest) { + // XMLHttpRequest is not available in ServiceWorker, so we need to check here + patchFilteredProperties(XMLHttpRequest.prototype, XMLHttpRequestEventNames, ignoreProperties); + } + const XMLHttpRequestEventTarget = _global['XMLHttpRequestEventTarget']; + if (XMLHttpRequestEventTarget) { + patchFilteredProperties(XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype, XMLHttpRequestEventNames, ignoreProperties); + } + if (typeof IDBIndex !== 'undefined') { + patchFilteredProperties(IDBIndex.prototype, IDBIndexEventNames, ignoreProperties); + patchFilteredProperties(IDBRequest.prototype, IDBIndexEventNames, ignoreProperties); + patchFilteredProperties(IDBOpenDBRequest.prototype, IDBIndexEventNames, ignoreProperties); + patchFilteredProperties(IDBDatabase.prototype, IDBIndexEventNames, ignoreProperties); + patchFilteredProperties(IDBTransaction.prototype, IDBIndexEventNames, ignoreProperties); + patchFilteredProperties(IDBCursor.prototype, IDBIndexEventNames, ignoreProperties); + } + if (supportsWebSocket) { + patchFilteredProperties(WebSocket.prototype, websocketEventNames, ignoreProperties); + } +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +Zone.__load_patch('util', (global, Zone, api) => { + api.patchOnProperties = patchOnProperties; + api.patchMethod = patchMethod; + api.bindArguments = bindArguments; + api.patchMacroTask = patchMacroTask; + // In earlier version of zone.js (<0.9.0), we use env name `__zone_symbol__BLACK_LISTED_EVENTS` to + // define which events will not be patched by `Zone.js`. + // In newer version (>=0.9.0), we change the env name to `__zone_symbol__UNPATCHED_EVENTS` to keep + // the name consistent with angular repo. + // The `__zone_symbol__BLACK_LISTED_EVENTS` is deprecated, but it is still be supported for + // backwards compatibility. + const SYMBOL_BLACK_LISTED_EVENTS = Zone.__symbol__('BLACK_LISTED_EVENTS'); + const SYMBOL_UNPATCHED_EVENTS = Zone.__symbol__('UNPATCHED_EVENTS'); + if (global[SYMBOL_UNPATCHED_EVENTS]) { + global[SYMBOL_BLACK_LISTED_EVENTS] = global[SYMBOL_UNPATCHED_EVENTS]; + } + if (global[SYMBOL_BLACK_LISTED_EVENTS]) { + Zone[SYMBOL_BLACK_LISTED_EVENTS] = Zone[SYMBOL_UNPATCHED_EVENTS] = + global[SYMBOL_BLACK_LISTED_EVENTS]; + } + api.patchEventPrototype = patchEventPrototype; + api.patchEventTarget = patchEventTarget; + api.isIEOrEdge = isIEOrEdge; + api.ObjectDefineProperty = ObjectDefineProperty; + api.ObjectGetOwnPropertyDescriptor = ObjectGetOwnPropertyDescriptor; + api.ObjectCreate = ObjectCreate; + api.ArraySlice = ArraySlice; + api.patchClass = patchClass; + api.wrapWithCurrentZone = wrapWithCurrentZone; + api.filterProperties = filterProperties; + api.attachOriginToPatched = attachOriginToPatched; + api._redefineProperty = _redefineProperty; + api.patchCallbacks = patchCallbacks; + api.getGlobalObjects = () => ({ + globalSources, + zoneSymbolEventNames: zoneSymbolEventNames$1, + eventNames, + isBrowser, + isMix, + isNode, + TRUE_STR, + FALSE_STR, + ZONE_SYMBOL_PREFIX, + ADD_EVENT_LISTENER_STR, + REMOVE_EVENT_LISTENER_STR + }); +}); + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * @fileoverview + * @suppress {missingRequire} + */ +const taskSymbol = zoneSymbol('zoneTask'); +function patchTimer(window, setName, cancelName, nameSuffix) { + let setNative = null; + let clearNative = null; + setName += nameSuffix; + cancelName += nameSuffix; + const tasksByHandleId = {}; + function scheduleTask(task) { + const data = task.data; + function timer() { + try { + task.invoke.apply(this, arguments); + } + finally { + // issue-934, task will be cancelled + // even it is a periodic task such as + // setInterval + if (!(task.data && task.data.isPeriodic)) { + if (typeof data.handleId === 'number') { + // in non-nodejs env, we remove timerId + // from local cache + delete tasksByHandleId[data.handleId]; + } + else if (data.handleId) { + // Node returns complex objects as handleIds + // we remove task reference from timer object + data.handleId[taskSymbol] = null; + } + } + } + } + data.args[0] = timer; + data.handleId = setNative.apply(window, data.args); + return task; + } + function clearTask(task) { + return clearNative(task.data.handleId); + } + setNative = + patchMethod(window, setName, (delegate) => function (self, args) { + if (typeof args[0] === 'function') { + const options = { + isPeriodic: nameSuffix === 'Interval', + delay: (nameSuffix === 'Timeout' || nameSuffix === 'Interval') ? args[1] || 0 : + undefined, + args: args + }; + const task = scheduleMacroTaskWithCurrentZone(setName, args[0], options, scheduleTask, clearTask); + if (!task) { + return task; + } + // Node.js must additionally support the ref and unref functions. + const handle = task.data.handleId; + if (typeof handle === 'number') { + // for non nodejs env, we save handleId: task + // mapping in local cache for clearTimeout + tasksByHandleId[handle] = task; + } + else if (handle) { + // for nodejs env, we save task + // reference in timerId Object for clearTimeout + handle[taskSymbol] = task; + } + // check whether handle is null, because some polyfill or browser + // may return undefined from setTimeout/setInterval/setImmediate/requestAnimationFrame + if (handle && handle.ref && handle.unref && typeof handle.ref === 'function' && + typeof handle.unref === 'function') { + task.ref = handle.ref.bind(handle); + task.unref = handle.unref.bind(handle); + } + if (typeof handle === 'number' || handle) { + return handle; + } + return task; + } + else { + // cause an error by calling it directly. + return delegate.apply(window, args); + } + }); + clearNative = + patchMethod(window, cancelName, (delegate) => function (self, args) { + const id = args[0]; + let task; + if (typeof id === 'number') { + // non nodejs env. + task = tasksByHandleId[id]; + } + else { + // nodejs env. + task = id && id[taskSymbol]; + // other environments. + if (!task) { + task = id; + } + } + if (task && typeof task.type === 'string') { + if (task.state !== 'notScheduled' && + (task.cancelFn && task.data.isPeriodic || task.runCount === 0)) { + if (typeof id === 'number') { + delete tasksByHandleId[id]; + } + else if (id) { + id[taskSymbol] = null; + } + // Do not cancel already canceled functions + task.zone.cancelTask(task); + } + } + else { + // cause an error by calling it directly. + delegate.apply(window, args); + } + }); +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +function patchCustomElements(_global, api) { + const { isBrowser, isMix } = api.getGlobalObjects(); + if ((!isBrowser && !isMix) || !_global['customElements'] || !('customElements' in _global)) { + return; + } + const callbacks = ['connectedCallback', 'disconnectedCallback', 'adoptedCallback', 'attributeChangedCallback']; + api.patchCallbacks(api, _global.customElements, 'customElements', 'define', callbacks); +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +function eventTargetPatch(_global, api) { + if (Zone[api.symbol('patchEventTarget')]) { + // EventTarget is already patched. + return; + } + const { eventNames, zoneSymbolEventNames, TRUE_STR, FALSE_STR, ZONE_SYMBOL_PREFIX } = api.getGlobalObjects(); + // predefine all __zone_symbol__ + eventName + true/false string + for (let i = 0; i < eventNames.length; i++) { + const eventName = eventNames[i]; + const falseEventName = eventName + FALSE_STR; + const trueEventName = eventName + TRUE_STR; + const symbol = ZONE_SYMBOL_PREFIX + falseEventName; + const symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName; + zoneSymbolEventNames[eventName] = {}; + zoneSymbolEventNames[eventName][FALSE_STR] = symbol; + zoneSymbolEventNames[eventName][TRUE_STR] = symbolCapture; + } + const EVENT_TARGET = _global['EventTarget']; + if (!EVENT_TARGET || !EVENT_TARGET.prototype) { + return; + } + api.patchEventTarget(_global, [EVENT_TARGET && EVENT_TARGET.prototype]); + return true; +} +function patchEvent(global, api) { + api.patchEventPrototype(global, api); +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * @fileoverview + * @suppress {missingRequire} + */ +Zone.__load_patch('legacy', (global) => { + const legacyPatch = global[Zone.__symbol__('legacyPatch')]; + if (legacyPatch) { + legacyPatch(); + } +}); +Zone.__load_patch('timers', (global) => { + const set = 'set'; + const clear = 'clear'; + patchTimer(global, set, clear, 'Timeout'); + patchTimer(global, set, clear, 'Interval'); + patchTimer(global, set, clear, 'Immediate'); +}); +Zone.__load_patch('requestAnimationFrame', (global) => { + patchTimer(global, 'request', 'cancel', 'AnimationFrame'); + patchTimer(global, 'mozRequest', 'mozCancel', 'AnimationFrame'); + patchTimer(global, 'webkitRequest', 'webkitCancel', 'AnimationFrame'); +}); +Zone.__load_patch('blocking', (global, Zone) => { + const blockingMethods = ['alert', 'prompt', 'confirm']; + for (let i = 0; i < blockingMethods.length; i++) { + const name = blockingMethods[i]; + patchMethod(global, name, (delegate, symbol, name) => { + return function (s, args) { + return Zone.current.run(delegate, global, args, name); + }; + }); + } +}); +Zone.__load_patch('EventTarget', (global, Zone, api) => { + patchEvent(global, api); + eventTargetPatch(global, api); + // patch XMLHttpRequestEventTarget's addEventListener/removeEventListener + const XMLHttpRequestEventTarget = global['XMLHttpRequestEventTarget']; + if (XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype) { + api.patchEventTarget(global, [XMLHttpRequestEventTarget.prototype]); + } + patchClass('MutationObserver'); + patchClass('WebKitMutationObserver'); + patchClass('IntersectionObserver'); + patchClass('FileReader'); +}); +Zone.__load_patch('on_property', (global, Zone, api) => { + propertyDescriptorPatch(api, global); + propertyPatch(); +}); +Zone.__load_patch('customElements', (global, Zone, api) => { + patchCustomElements(global, api); +}); +Zone.__load_patch('XHR', (global, Zone) => { + // Treat XMLHttpRequest as a macrotask. + patchXHR(global); + const XHR_TASK = zoneSymbol('xhrTask'); + const XHR_SYNC = zoneSymbol('xhrSync'); + const XHR_LISTENER = zoneSymbol('xhrListener'); + const XHR_SCHEDULED = zoneSymbol('xhrScheduled'); + const XHR_URL = zoneSymbol('xhrURL'); + const XHR_ERROR_BEFORE_SCHEDULED = zoneSymbol('xhrErrorBeforeScheduled'); + function patchXHR(window) { + const XMLHttpRequest = window['XMLHttpRequest']; + if (!XMLHttpRequest) { + // XMLHttpRequest is not available in service worker + return; + } + const XMLHttpRequestPrototype = XMLHttpRequest.prototype; + function findPendingTask(target) { + return target[XHR_TASK]; + } + let oriAddListener = XMLHttpRequestPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER]; + let oriRemoveListener = XMLHttpRequestPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER]; + if (!oriAddListener) { + const XMLHttpRequestEventTarget = window['XMLHttpRequestEventTarget']; + if (XMLHttpRequestEventTarget) { + const XMLHttpRequestEventTargetPrototype = XMLHttpRequestEventTarget.prototype; + oriAddListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER]; + oriRemoveListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER]; + } + } + const READY_STATE_CHANGE = 'readystatechange'; + const SCHEDULED = 'scheduled'; + function scheduleTask(task) { + const data = task.data; + const target = data.target; + target[XHR_SCHEDULED] = false; + target[XHR_ERROR_BEFORE_SCHEDULED] = false; + // remove existing event listener + const listener = target[XHR_LISTENER]; + if (!oriAddListener) { + oriAddListener = target[ZONE_SYMBOL_ADD_EVENT_LISTENER]; + oriRemoveListener = target[ZONE_SYMBOL_REMOVE_EVENT_LISTENER]; + } + if (listener) { + oriRemoveListener.call(target, READY_STATE_CHANGE, listener); + } + const newListener = target[XHR_LISTENER] = () => { + if (target.readyState === target.DONE) { + // sometimes on some browsers XMLHttpRequest will fire onreadystatechange with + // readyState=4 multiple times, so we need to check task state here + if (!data.aborted && target[XHR_SCHEDULED] && task.state === SCHEDULED) { + // check whether the xhr has registered onload listener + // if that is the case, the task should invoke after all + // onload listeners finish. + const loadTasks = target['__zone_symbol__loadfalse']; + if (loadTasks && loadTasks.length > 0) { + const oriInvoke = task.invoke; + task.invoke = function () { + // need to load the tasks again, because in other + // load listener, they may remove themselves + const loadTasks = target['__zone_symbol__loadfalse']; + for (let i = 0; i < loadTasks.length; i++) { + if (loadTasks[i] === task) { + loadTasks.splice(i, 1); + } + } + if (!data.aborted && task.state === SCHEDULED) { + oriInvoke.call(task); + } + }; + loadTasks.push(task); + } + else { + task.invoke(); + } + } + else if (!data.aborted && target[XHR_SCHEDULED] === false) { + // error occurs when xhr.send() + target[XHR_ERROR_BEFORE_SCHEDULED] = true; + } + } + }; + oriAddListener.call(target, READY_STATE_CHANGE, newListener); + const storedTask = target[XHR_TASK]; + if (!storedTask) { + target[XHR_TASK] = task; + } + sendNative.apply(target, data.args); + target[XHR_SCHEDULED] = true; + return task; + } + function placeholderCallback() { } + function clearTask(task) { + const data = task.data; + // Note - ideally, we would call data.target.removeEventListener here, but it's too late + // to prevent it from firing. So instead, we store info for the event listener. + data.aborted = true; + return abortNative.apply(data.target, data.args); + } + const openNative = patchMethod(XMLHttpRequestPrototype, 'open', () => function (self, args) { + self[XHR_SYNC] = args[2] == false; + self[XHR_URL] = args[1]; + return openNative.apply(self, args); + }); + const XMLHTTPREQUEST_SOURCE = 'XMLHttpRequest.send'; + const fetchTaskAborting = zoneSymbol('fetchTaskAborting'); + const fetchTaskScheduling = zoneSymbol('fetchTaskScheduling'); + const sendNative = patchMethod(XMLHttpRequestPrototype, 'send', () => function (self, args) { + if (Zone.current[fetchTaskScheduling] === true) { + // a fetch is scheduling, so we are using xhr to polyfill fetch + // and because we already schedule macroTask for fetch, we should + // not schedule a macroTask for xhr again + return sendNative.apply(self, args); + } + if (self[XHR_SYNC]) { + // if the XHR is sync there is no task to schedule, just execute the code. + return sendNative.apply(self, args); + } + else { + const options = { target: self, url: self[XHR_URL], isPeriodic: false, args: args, aborted: false }; + const task = scheduleMacroTaskWithCurrentZone(XMLHTTPREQUEST_SOURCE, placeholderCallback, options, scheduleTask, clearTask); + if (self && self[XHR_ERROR_BEFORE_SCHEDULED] === true && !options.aborted && + task.state === SCHEDULED) { + // xhr request throw error when send + // we should invoke task instead of leaving a scheduled + // pending macroTask + task.invoke(); + } + } + }); + const abortNative = patchMethod(XMLHttpRequestPrototype, 'abort', () => function (self, args) { + const task = findPendingTask(self); + if (task && typeof task.type == 'string') { + // If the XHR has already completed, do nothing. + // If the XHR has already been aborted, do nothing. + // Fix #569, call abort multiple times before done will cause + // macroTask task count be negative number + if (task.cancelFn == null || (task.data && task.data.aborted)) { + return; + } + task.zone.cancelTask(task); + } + else if (Zone.current[fetchTaskAborting] === true) { + // the abort is called from fetch polyfill, we need to call native abort of XHR. + return abortNative.apply(self, args); + } + // Otherwise, we are trying to abort an XHR which has not yet been sent, so there is no + // task + // to cancel. Do nothing. + }); + } +}); +Zone.__load_patch('geolocation', (global) => { + /// GEO_LOCATION + if (global['navigator'] && global['navigator'].geolocation) { + patchPrototype(global['navigator'].geolocation, ['getCurrentPosition', 'watchPosition']); + } +}); +Zone.__load_patch('PromiseRejectionEvent', (global, Zone) => { + // handle unhandled promise rejection + function findPromiseRejectionHandler(evtName) { + return function (e) { + const eventTasks = findEventTasks(global, evtName); + eventTasks.forEach(eventTask => { + // windows has added unhandledrejection event listener + // trigger the event listener + const PromiseRejectionEvent = global['PromiseRejectionEvent']; + if (PromiseRejectionEvent) { + const evt = new PromiseRejectionEvent(evtName, { promise: e.promise, reason: e.rejection }); + eventTask.invoke(evt); + } + }); + }; + } + if (global['PromiseRejectionEvent']) { + Zone[zoneSymbol('unhandledPromiseRejectionHandler')] = + findPromiseRejectionHandler('unhandledrejection'); + Zone[zoneSymbol('rejectionHandledHandler')] = + findPromiseRejectionHandler('rejectionhandled'); + } +}); + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + + +/***/ }), + +/***/ "./src/polyfills.ts": +/*!**************************!*\ + !*** ./src/polyfills.ts ***! + \**************************/ +/*! no exports provided */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var zone_js_dist_zone__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! zone.js/dist/zone */ "../../node_modules/zone.js/dist/zone-evergreen.js"); +/* harmony import */ var zone_js_dist_zone__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(zone_js_dist_zone__WEBPACK_IMPORTED_MODULE_0__); +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), + * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. + * + * Learn more in https://angular.io/guide/browser-support + */ +/*************************************************************************************************** + * BROWSER POLYFILLS + */ +/** IE10 and IE11 requires the following for NgClass support on SVG elements */ +// import 'classlist.js'; // Run `npm install --save classlist.js`. +/** + * Web Animations `@angular/platform-browser/animations` + * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. + * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). + */ +// import 'web-animations-js'; // Run `npm install --save web-animations-js`. +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + * because those flags need to be set before `zone.js` being loaded, and webpack + * will put import in the top of bundle, so user need to create a separate file + * in this directory (for example: zone-flags.ts), and put the following flags + * into that file, and then add the following code before importing zone.js. + * import './zone-flags.ts'; + * + * The flags allowed in zone-flags.ts are listed here. + * + * The following flags will work for all browsers. + * + * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + * + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + * + * (window as any).__Zone_enable_cross_context_check = true; + * + */ +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ + // Included with Angular CLI. +/*************************************************************************************************** + * APPLICATION IMPORTS + */ + + +/***/ }), + +/***/ 1: +/*!********************************!*\ + !*** multi ./src/polyfills.ts ***! + \********************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(/*! /workspace/client/apps/annotation/src/polyfills.ts */"./src/polyfills.ts"); + + +/***/ }) + +},[[1,"runtime"]]]); +//# sourceMappingURL=polyfills-es2015.js.map \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es2015.js.map b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es2015.js.map new file mode 100644 index 0000000..3b63b1e --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es2015.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:////workspace/client/node_modules/zone.js/dist/zone-evergreen.js","webpack:///./src/polyfills.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,UAAU,6CAA6C,eAAe;AACxI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,0BAA0B;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,UAAU,IAAI,YAAY,4BAA4B,QAAQ,sBAAsB,WAAW,GAAG,+CAA+C,SAAS,YAAY;AACzM;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,kBAAkB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4HAA4H,wBAAwB,oCAAoC;AACxL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF,sEAAsE;AACtJ;AACA;AACA,+BAA+B,kBAAkB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAoD;AAC5F;AACA;AACA;AACA;AACA;AACA,2BAA2B,mCAAmC;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,uEAAuE,gBAAgB;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,QAAQ;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,oBAAoB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,uBAAuB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,yBAAyB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,EAAE;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,sBAAsB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,sBAAsB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,0BAA0B;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,8BAA8B;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,0BAA0B;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,0BAA0B;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,kBAAkB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,iBAAiB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,wBAAwB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,wBAAwB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,iBAAiB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,kBAAkB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,WAAW,GAAG,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,0BAA0B,EAAE;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,KAAK,qBAAqB,SAAS,eAAe,IAAI,8BAA8B,MAAM;AAClJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,sDAAsD;AACrG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,mBAAmB;AAC9B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,4EAA4E;AACvF;AACA,mBAAmB,uBAAuB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA,mBAAmB,4BAA4B;AAC/C;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,sBAAsB;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE,0CAA0C;AAC9G;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC5+FA;AAAA;AAAA;AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AAEH,+EAA+E;AAC/E,oEAAoE;AAEpE;;;;GAIG;AACH,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH;;GAEG;AACwB,CAAC,6BAA6B;AAEzD;;GAEG","file":"polyfills-es2015.js","sourcesContent":["/**\n* @license\n* Copyright Google Inc. All Rights Reserved.\n*\n* Use of this source code is governed by an MIT-style license that can be\n* found in the LICENSE file at https://angular.io/license\n*/\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst Zone$1 = (function (global) {\n const performance = global['performance'];\n function mark(name) {\n performance && performance['mark'] && performance['mark'](name);\n }\n function performanceMeasure(name, label) {\n performance && performance['measure'] && performance['measure'](name, label);\n }\n mark('Zone');\n const checkDuplicate = global[('__zone_symbol__forceDuplicateZoneCheck')] === true;\n if (global['Zone']) {\n // if global['Zone'] already exists (maybe zone.js was already loaded or\n // some other lib also registered a global object named Zone), we may need\n // to throw an error, but sometimes user may not want this error.\n // For example,\n // we have two web pages, page1 includes zone.js, page2 doesn't.\n // and the 1st time user load page1 and page2, everything work fine,\n // but when user load page2 again, error occurs because global['Zone'] already exists.\n // so we add a flag to let user choose whether to throw this error or not.\n // By default, if existing Zone is from zone.js, we will not throw the error.\n if (checkDuplicate || typeof global['Zone'].__symbol__ !== 'function') {\n throw new Error('Zone already loaded.');\n }\n else {\n return global['Zone'];\n }\n }\n class Zone {\n constructor(parent, zoneSpec) {\n this._parent = parent;\n this._name = zoneSpec ? zoneSpec.name || 'unnamed' : '';\n this._properties = zoneSpec && zoneSpec.properties || {};\n this._zoneDelegate =\n new ZoneDelegate(this, this._parent && this._parent._zoneDelegate, zoneSpec);\n }\n static assertZonePatched() {\n if (global['Promise'] !== patches['ZoneAwarePromise']) {\n throw new Error('Zone.js has detected that ZoneAwarePromise `(window|global).Promise` ' +\n 'has been overwritten.\\n' +\n 'Most likely cause is that a Promise polyfill has been loaded ' +\n 'after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. ' +\n 'If you must load one, do so before loading zone.js.)');\n }\n }\n static get root() {\n let zone = Zone.current;\n while (zone.parent) {\n zone = zone.parent;\n }\n return zone;\n }\n static get current() {\n return _currentZoneFrame.zone;\n }\n static get currentTask() {\n return _currentTask;\n }\n static __load_patch(name, fn) {\n if (patches.hasOwnProperty(name)) {\n if (checkDuplicate) {\n throw Error('Already loaded patch: ' + name);\n }\n }\n else if (!global['__Zone_disable_' + name]) {\n const perfName = 'Zone:' + name;\n mark(perfName);\n patches[name] = fn(global, Zone, _api);\n performanceMeasure(perfName, perfName);\n }\n }\n get parent() {\n return this._parent;\n }\n get name() {\n return this._name;\n }\n get(key) {\n const zone = this.getZoneWith(key);\n if (zone)\n return zone._properties[key];\n }\n getZoneWith(key) {\n let current = this;\n while (current) {\n if (current._properties.hasOwnProperty(key)) {\n return current;\n }\n current = current._parent;\n }\n return null;\n }\n fork(zoneSpec) {\n if (!zoneSpec)\n throw new Error('ZoneSpec required!');\n return this._zoneDelegate.fork(this, zoneSpec);\n }\n wrap(callback, source) {\n if (typeof callback !== 'function') {\n throw new Error('Expecting function got: ' + callback);\n }\n const _callback = this._zoneDelegate.intercept(this, callback, source);\n const zone = this;\n return function () {\n return zone.runGuarded(_callback, this, arguments, source);\n };\n }\n run(callback, applyThis, applyArgs, source) {\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);\n }\n finally {\n _currentZoneFrame = _currentZoneFrame.parent;\n }\n }\n runGuarded(callback, applyThis = null, applyArgs, source) {\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n try {\n return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);\n }\n catch (error) {\n if (this._zoneDelegate.handleError(this, error)) {\n throw error;\n }\n }\n }\n finally {\n _currentZoneFrame = _currentZoneFrame.parent;\n }\n }\n runTask(task, applyThis, applyArgs) {\n if (task.zone != this) {\n throw new Error('A task can only be run in the zone of creation! (Creation: ' +\n (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')');\n }\n // https://github.com/angular/zone.js/issues/778, sometimes eventTask\n // will run in notScheduled(canceled) state, we should not try to\n // run such kind of task but just return\n if (task.state === notScheduled && (task.type === eventTask || task.type === macroTask)) {\n return;\n }\n const reEntryGuard = task.state != running;\n reEntryGuard && task._transitionTo(running, scheduled);\n task.runCount++;\n const previousTask = _currentTask;\n _currentTask = task;\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n if (task.type == macroTask && task.data && !task.data.isPeriodic) {\n task.cancelFn = undefined;\n }\n try {\n return this._zoneDelegate.invokeTask(this, task, applyThis, applyArgs);\n }\n catch (error) {\n if (this._zoneDelegate.handleError(this, error)) {\n throw error;\n }\n }\n }\n finally {\n // if the task's state is notScheduled or unknown, then it has already been cancelled\n // we should not reset the state to scheduled\n if (task.state !== notScheduled && task.state !== unknown) {\n if (task.type == eventTask || (task.data && task.data.isPeriodic)) {\n reEntryGuard && task._transitionTo(scheduled, running);\n }\n else {\n task.runCount = 0;\n this._updateTaskCount(task, -1);\n reEntryGuard &&\n task._transitionTo(notScheduled, running, notScheduled);\n }\n }\n _currentZoneFrame = _currentZoneFrame.parent;\n _currentTask = previousTask;\n }\n }\n scheduleTask(task) {\n if (task.zone && task.zone !== this) {\n // check if the task was rescheduled, the newZone\n // should not be the children of the original zone\n let newZone = this;\n while (newZone) {\n if (newZone === task.zone) {\n throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${task.zone.name}`);\n }\n newZone = newZone.parent;\n }\n }\n task._transitionTo(scheduling, notScheduled);\n const zoneDelegates = [];\n task._zoneDelegates = zoneDelegates;\n task._zone = this;\n try {\n task = this._zoneDelegate.scheduleTask(this, task);\n }\n catch (err) {\n // should set task's state to unknown when scheduleTask throw error\n // because the err may from reschedule, so the fromState maybe notScheduled\n task._transitionTo(unknown, scheduling, notScheduled);\n // TODO: @JiaLiPassion, should we check the result from handleError?\n this._zoneDelegate.handleError(this, err);\n throw err;\n }\n if (task._zoneDelegates === zoneDelegates) {\n // we have to check because internally the delegate can reschedule the task.\n this._updateTaskCount(task, 1);\n }\n if (task.state == scheduling) {\n task._transitionTo(scheduled, scheduling);\n }\n return task;\n }\n scheduleMicroTask(source, callback, data, customSchedule) {\n return this.scheduleTask(new ZoneTask(microTask, source, callback, data, customSchedule, undefined));\n }\n scheduleMacroTask(source, callback, data, customSchedule, customCancel) {\n return this.scheduleTask(new ZoneTask(macroTask, source, callback, data, customSchedule, customCancel));\n }\n scheduleEventTask(source, callback, data, customSchedule, customCancel) {\n return this.scheduleTask(new ZoneTask(eventTask, source, callback, data, customSchedule, customCancel));\n }\n cancelTask(task) {\n if (task.zone != this)\n throw new Error('A task can only be cancelled in the zone of creation! (Creation: ' +\n (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')');\n task._transitionTo(canceling, scheduled, running);\n try {\n this._zoneDelegate.cancelTask(this, task);\n }\n catch (err) {\n // if error occurs when cancelTask, transit the state to unknown\n task._transitionTo(unknown, canceling);\n this._zoneDelegate.handleError(this, err);\n throw err;\n }\n this._updateTaskCount(task, -1);\n task._transitionTo(notScheduled, canceling);\n task.runCount = 0;\n return task;\n }\n _updateTaskCount(task, count) {\n const zoneDelegates = task._zoneDelegates;\n if (count == -1) {\n task._zoneDelegates = null;\n }\n for (let i = 0; i < zoneDelegates.length; i++) {\n zoneDelegates[i]._updateTaskCount(task.type, count);\n }\n }\n }\n Zone.__symbol__ = __symbol__;\n const DELEGATE_ZS = {\n name: '',\n onHasTask: (delegate, _, target, hasTaskState) => delegate.hasTask(target, hasTaskState),\n onScheduleTask: (delegate, _, target, task) => delegate.scheduleTask(target, task),\n onInvokeTask: (delegate, _, target, task, applyThis, applyArgs) => delegate.invokeTask(target, task, applyThis, applyArgs),\n onCancelTask: (delegate, _, target, task) => delegate.cancelTask(target, task)\n };\n class ZoneDelegate {\n constructor(zone, parentDelegate, zoneSpec) {\n this._taskCounts = { 'microTask': 0, 'macroTask': 0, 'eventTask': 0 };\n this.zone = zone;\n this._parentDelegate = parentDelegate;\n this._forkZS = zoneSpec && (zoneSpec && zoneSpec.onFork ? zoneSpec : parentDelegate._forkZS);\n this._forkDlgt = zoneSpec && (zoneSpec.onFork ? parentDelegate : parentDelegate._forkDlgt);\n this._forkCurrZone = zoneSpec && (zoneSpec.onFork ? this.zone : parentDelegate.zone);\n this._interceptZS =\n zoneSpec && (zoneSpec.onIntercept ? zoneSpec : parentDelegate._interceptZS);\n this._interceptDlgt =\n zoneSpec && (zoneSpec.onIntercept ? parentDelegate : parentDelegate._interceptDlgt);\n this._interceptCurrZone =\n zoneSpec && (zoneSpec.onIntercept ? this.zone : parentDelegate.zone);\n this._invokeZS = zoneSpec && (zoneSpec.onInvoke ? zoneSpec : parentDelegate._invokeZS);\n this._invokeDlgt =\n zoneSpec && (zoneSpec.onInvoke ? parentDelegate : parentDelegate._invokeDlgt);\n this._invokeCurrZone = zoneSpec && (zoneSpec.onInvoke ? this.zone : parentDelegate.zone);\n this._handleErrorZS =\n zoneSpec && (zoneSpec.onHandleError ? zoneSpec : parentDelegate._handleErrorZS);\n this._handleErrorDlgt =\n zoneSpec && (zoneSpec.onHandleError ? parentDelegate : parentDelegate._handleErrorDlgt);\n this._handleErrorCurrZone =\n zoneSpec && (zoneSpec.onHandleError ? this.zone : parentDelegate.zone);\n this._scheduleTaskZS =\n zoneSpec && (zoneSpec.onScheduleTask ? zoneSpec : parentDelegate._scheduleTaskZS);\n this._scheduleTaskDlgt = zoneSpec &&\n (zoneSpec.onScheduleTask ? parentDelegate : parentDelegate._scheduleTaskDlgt);\n this._scheduleTaskCurrZone =\n zoneSpec && (zoneSpec.onScheduleTask ? this.zone : parentDelegate.zone);\n this._invokeTaskZS =\n zoneSpec && (zoneSpec.onInvokeTask ? zoneSpec : parentDelegate._invokeTaskZS);\n this._invokeTaskDlgt =\n zoneSpec && (zoneSpec.onInvokeTask ? parentDelegate : parentDelegate._invokeTaskDlgt);\n this._invokeTaskCurrZone =\n zoneSpec && (zoneSpec.onInvokeTask ? this.zone : parentDelegate.zone);\n this._cancelTaskZS =\n zoneSpec && (zoneSpec.onCancelTask ? zoneSpec : parentDelegate._cancelTaskZS);\n this._cancelTaskDlgt =\n zoneSpec && (zoneSpec.onCancelTask ? parentDelegate : parentDelegate._cancelTaskDlgt);\n this._cancelTaskCurrZone =\n zoneSpec && (zoneSpec.onCancelTask ? this.zone : parentDelegate.zone);\n this._hasTaskZS = null;\n this._hasTaskDlgt = null;\n this._hasTaskDlgtOwner = null;\n this._hasTaskCurrZone = null;\n const zoneSpecHasTask = zoneSpec && zoneSpec.onHasTask;\n const parentHasTask = parentDelegate && parentDelegate._hasTaskZS;\n if (zoneSpecHasTask || parentHasTask) {\n // If we need to report hasTask, than this ZS needs to do ref counting on tasks. In such\n // a case all task related interceptors must go through this ZD. We can't short circuit it.\n this._hasTaskZS = zoneSpecHasTask ? zoneSpec : DELEGATE_ZS;\n this._hasTaskDlgt = parentDelegate;\n this._hasTaskDlgtOwner = this;\n this._hasTaskCurrZone = zone;\n if (!zoneSpec.onScheduleTask) {\n this._scheduleTaskZS = DELEGATE_ZS;\n this._scheduleTaskDlgt = parentDelegate;\n this._scheduleTaskCurrZone = this.zone;\n }\n if (!zoneSpec.onInvokeTask) {\n this._invokeTaskZS = DELEGATE_ZS;\n this._invokeTaskDlgt = parentDelegate;\n this._invokeTaskCurrZone = this.zone;\n }\n if (!zoneSpec.onCancelTask) {\n this._cancelTaskZS = DELEGATE_ZS;\n this._cancelTaskDlgt = parentDelegate;\n this._cancelTaskCurrZone = this.zone;\n }\n }\n }\n fork(targetZone, zoneSpec) {\n return this._forkZS ? this._forkZS.onFork(this._forkDlgt, this.zone, targetZone, zoneSpec) :\n new Zone(targetZone, zoneSpec);\n }\n intercept(targetZone, callback, source) {\n return this._interceptZS ?\n this._interceptZS.onIntercept(this._interceptDlgt, this._interceptCurrZone, targetZone, callback, source) :\n callback;\n }\n invoke(targetZone, callback, applyThis, applyArgs, source) {\n return this._invokeZS ? this._invokeZS.onInvoke(this._invokeDlgt, this._invokeCurrZone, targetZone, callback, applyThis, applyArgs, source) :\n callback.apply(applyThis, applyArgs);\n }\n handleError(targetZone, error) {\n return this._handleErrorZS ?\n this._handleErrorZS.onHandleError(this._handleErrorDlgt, this._handleErrorCurrZone, targetZone, error) :\n true;\n }\n scheduleTask(targetZone, task) {\n let returnTask = task;\n if (this._scheduleTaskZS) {\n if (this._hasTaskZS) {\n returnTask._zoneDelegates.push(this._hasTaskDlgtOwner);\n }\n returnTask = this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt, this._scheduleTaskCurrZone, targetZone, task);\n if (!returnTask)\n returnTask = task;\n }\n else {\n if (task.scheduleFn) {\n task.scheduleFn(task);\n }\n else if (task.type == microTask) {\n scheduleMicroTask(task);\n }\n else {\n throw new Error('Task is missing scheduleFn.');\n }\n }\n return returnTask;\n }\n invokeTask(targetZone, task, applyThis, applyArgs) {\n return this._invokeTaskZS ? this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt, this._invokeTaskCurrZone, targetZone, task, applyThis, applyArgs) :\n task.callback.apply(applyThis, applyArgs);\n }\n cancelTask(targetZone, task) {\n let value;\n if (this._cancelTaskZS) {\n value = this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt, this._cancelTaskCurrZone, targetZone, task);\n }\n else {\n if (!task.cancelFn) {\n throw Error('Task is not cancelable');\n }\n value = task.cancelFn(task);\n }\n return value;\n }\n hasTask(targetZone, isEmpty) {\n // hasTask should not throw error so other ZoneDelegate\n // can still trigger hasTask callback\n try {\n this._hasTaskZS &&\n this._hasTaskZS.onHasTask(this._hasTaskDlgt, this._hasTaskCurrZone, targetZone, isEmpty);\n }\n catch (err) {\n this.handleError(targetZone, err);\n }\n }\n _updateTaskCount(type, count) {\n const counts = this._taskCounts;\n const prev = counts[type];\n const next = counts[type] = prev + count;\n if (next < 0) {\n throw new Error('More tasks executed then were scheduled.');\n }\n if (prev == 0 || next == 0) {\n const isEmpty = {\n microTask: counts['microTask'] > 0,\n macroTask: counts['macroTask'] > 0,\n eventTask: counts['eventTask'] > 0,\n change: type\n };\n this.hasTask(this.zone, isEmpty);\n }\n }\n }\n class ZoneTask {\n constructor(type, source, callback, options, scheduleFn, cancelFn) {\n this._zone = null;\n this.runCount = 0;\n this._zoneDelegates = null;\n this._state = 'notScheduled';\n this.type = type;\n this.source = source;\n this.data = options;\n this.scheduleFn = scheduleFn;\n this.cancelFn = cancelFn;\n this.callback = callback;\n const self = this;\n // TODO: @JiaLiPassion options should have interface\n if (type === eventTask && options && options.useG) {\n this.invoke = ZoneTask.invokeTask;\n }\n else {\n this.invoke = function () {\n return ZoneTask.invokeTask.call(global, self, this, arguments);\n };\n }\n }\n static invokeTask(task, target, args) {\n if (!task) {\n task = this;\n }\n _numberOfNestedTaskFrames++;\n try {\n task.runCount++;\n return task.zone.runTask(task, target, args);\n }\n finally {\n if (_numberOfNestedTaskFrames == 1) {\n drainMicroTaskQueue();\n }\n _numberOfNestedTaskFrames--;\n }\n }\n get zone() {\n return this._zone;\n }\n get state() {\n return this._state;\n }\n cancelScheduleRequest() {\n this._transitionTo(notScheduled, scheduling);\n }\n _transitionTo(toState, fromState1, fromState2) {\n if (this._state === fromState1 || this._state === fromState2) {\n this._state = toState;\n if (toState == notScheduled) {\n this._zoneDelegates = null;\n }\n }\n else {\n throw new Error(`${this.type} '${this.source}': can not transition to '${toState}', expecting state '${fromState1}'${fromState2 ? ' or \\'' + fromState2 + '\\'' : ''}, was '${this._state}'.`);\n }\n }\n toString() {\n if (this.data && typeof this.data.handleId !== 'undefined') {\n return this.data.handleId.toString();\n }\n else {\n return Object.prototype.toString.call(this);\n }\n }\n // add toJSON method to prevent cyclic error when\n // call JSON.stringify(zoneTask)\n toJSON() {\n return {\n type: this.type,\n state: this.state,\n source: this.source,\n zone: this.zone.name,\n runCount: this.runCount\n };\n }\n }\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n /// MICROTASK QUEUE\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n const symbolSetTimeout = __symbol__('setTimeout');\n const symbolPromise = __symbol__('Promise');\n const symbolThen = __symbol__('then');\n let _microTaskQueue = [];\n let _isDrainingMicrotaskQueue = false;\n let nativeMicroTaskQueuePromise;\n function scheduleMicroTask(task) {\n // if we are not running in any task, and there has not been anything scheduled\n // we must bootstrap the initial task creation by manually scheduling the drain\n if (_numberOfNestedTaskFrames === 0 && _microTaskQueue.length === 0) {\n // We are not running in Task, so we need to kickstart the microtask queue.\n if (!nativeMicroTaskQueuePromise) {\n if (global[symbolPromise]) {\n nativeMicroTaskQueuePromise = global[symbolPromise].resolve(0);\n }\n }\n if (nativeMicroTaskQueuePromise) {\n let nativeThen = nativeMicroTaskQueuePromise[symbolThen];\n if (!nativeThen) {\n // native Promise is not patchable, we need to use `then` directly\n // issue 1078\n nativeThen = nativeMicroTaskQueuePromise['then'];\n }\n nativeThen.call(nativeMicroTaskQueuePromise, drainMicroTaskQueue);\n }\n else {\n global[symbolSetTimeout](drainMicroTaskQueue, 0);\n }\n }\n task && _microTaskQueue.push(task);\n }\n function drainMicroTaskQueue() {\n if (!_isDrainingMicrotaskQueue) {\n _isDrainingMicrotaskQueue = true;\n while (_microTaskQueue.length) {\n const queue = _microTaskQueue;\n _microTaskQueue = [];\n for (let i = 0; i < queue.length; i++) {\n const task = queue[i];\n try {\n task.zone.runTask(task, null, null);\n }\n catch (error) {\n _api.onUnhandledError(error);\n }\n }\n }\n _api.microtaskDrainDone();\n _isDrainingMicrotaskQueue = false;\n }\n }\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n /// BOOTSTRAP\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n const NO_ZONE = { name: 'NO ZONE' };\n const notScheduled = 'notScheduled', scheduling = 'scheduling', scheduled = 'scheduled', running = 'running', canceling = 'canceling', unknown = 'unknown';\n const microTask = 'microTask', macroTask = 'macroTask', eventTask = 'eventTask';\n const patches = {};\n const _api = {\n symbol: __symbol__,\n currentZoneFrame: () => _currentZoneFrame,\n onUnhandledError: noop,\n microtaskDrainDone: noop,\n scheduleMicroTask: scheduleMicroTask,\n showUncaughtError: () => !Zone[__symbol__('ignoreConsoleErrorUncaughtError')],\n patchEventTarget: () => [],\n patchOnProperties: noop,\n patchMethod: () => noop,\n bindArguments: () => [],\n patchThen: () => noop,\n patchMacroTask: () => noop,\n setNativePromise: (NativePromise) => {\n // sometimes NativePromise.resolve static function\n // is not ready yet, (such as core-js/es6.promise)\n // so we need to check here.\n if (NativePromise && typeof NativePromise.resolve === 'function') {\n nativeMicroTaskQueuePromise = NativePromise.resolve(0);\n }\n },\n patchEventPrototype: () => noop,\n isIEOrEdge: () => false,\n getGlobalObjects: () => undefined,\n ObjectDefineProperty: () => noop,\n ObjectGetOwnPropertyDescriptor: () => undefined,\n ObjectCreate: () => undefined,\n ArraySlice: () => [],\n patchClass: () => noop,\n wrapWithCurrentZone: () => noop,\n filterProperties: () => [],\n attachOriginToPatched: () => noop,\n _redefineProperty: () => noop,\n patchCallbacks: () => noop\n };\n let _currentZoneFrame = { parent: null, zone: new Zone(null, null) };\n let _currentTask = null;\n let _numberOfNestedTaskFrames = 0;\n function noop() { }\n function __symbol__(name) {\n return '__zone_symbol__' + name;\n }\n performanceMeasure('Zone', 'Zone');\n return global['Zone'] = Zone;\n})(typeof window !== 'undefined' && window || typeof self !== 'undefined' && self || global);\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nZone.__load_patch('ZoneAwarePromise', (global, Zone, api) => {\n const ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n const ObjectDefineProperty = Object.defineProperty;\n function readableObjectToString(obj) {\n if (obj && obj.toString === Object.prototype.toString) {\n const className = obj.constructor && obj.constructor.name;\n return (className ? className : '') + ': ' + JSON.stringify(obj);\n }\n return obj ? obj.toString() : Object.prototype.toString.call(obj);\n }\n const __symbol__ = api.symbol;\n const _uncaughtPromiseErrors = [];\n const symbolPromise = __symbol__('Promise');\n const symbolThen = __symbol__('then');\n const creationTrace = '__creationTrace__';\n api.onUnhandledError = (e) => {\n if (api.showUncaughtError()) {\n const rejection = e && e.rejection;\n if (rejection) {\n console.error('Unhandled Promise rejection:', rejection instanceof Error ? rejection.message : rejection, '; Zone:', e.zone.name, '; Task:', e.task && e.task.source, '; Value:', rejection, rejection instanceof Error ? rejection.stack : undefined);\n }\n else {\n console.error(e);\n }\n }\n };\n api.microtaskDrainDone = () => {\n while (_uncaughtPromiseErrors.length) {\n while (_uncaughtPromiseErrors.length) {\n const uncaughtPromiseError = _uncaughtPromiseErrors.shift();\n try {\n uncaughtPromiseError.zone.runGuarded(() => {\n throw uncaughtPromiseError;\n });\n }\n catch (error) {\n handleUnhandledRejection(error);\n }\n }\n }\n };\n const UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL = __symbol__('unhandledPromiseRejectionHandler');\n function handleUnhandledRejection(e) {\n api.onUnhandledError(e);\n try {\n const handler = Zone[UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL];\n if (handler && typeof handler === 'function') {\n handler.call(this, e);\n }\n }\n catch (err) {\n }\n }\n function isThenable(value) {\n return value && value.then;\n }\n function forwardResolution(value) {\n return value;\n }\n function forwardRejection(rejection) {\n return ZoneAwarePromise.reject(rejection);\n }\n const symbolState = __symbol__('state');\n const symbolValue = __symbol__('value');\n const symbolFinally = __symbol__('finally');\n const symbolParentPromiseValue = __symbol__('parentPromiseValue');\n const symbolParentPromiseState = __symbol__('parentPromiseState');\n const source = 'Promise.then';\n const UNRESOLVED = null;\n const RESOLVED = true;\n const REJECTED = false;\n const REJECTED_NO_CATCH = 0;\n function makeResolver(promise, state) {\n return (v) => {\n try {\n resolvePromise(promise, state, v);\n }\n catch (err) {\n resolvePromise(promise, false, err);\n }\n // Do not return value or you will break the Promise spec.\n };\n }\n const once = function () {\n let wasCalled = false;\n return function wrapper(wrappedFunction) {\n return function () {\n if (wasCalled) {\n return;\n }\n wasCalled = true;\n wrappedFunction.apply(null, arguments);\n };\n };\n };\n const TYPE_ERROR = 'Promise resolved with itself';\n const CURRENT_TASK_TRACE_SYMBOL = __symbol__('currentTaskTrace');\n // Promise Resolution\n function resolvePromise(promise, state, value) {\n const onceWrapper = once();\n if (promise === value) {\n throw new TypeError(TYPE_ERROR);\n }\n if (promise[symbolState] === UNRESOLVED) {\n // should only get value.then once based on promise spec.\n let then = null;\n try {\n if (typeof value === 'object' || typeof value === 'function') {\n then = value && value.then;\n }\n }\n catch (err) {\n onceWrapper(() => {\n resolvePromise(promise, false, err);\n })();\n return promise;\n }\n // if (value instanceof ZoneAwarePromise) {\n if (state !== REJECTED && value instanceof ZoneAwarePromise &&\n value.hasOwnProperty(symbolState) && value.hasOwnProperty(symbolValue) &&\n value[symbolState] !== UNRESOLVED) {\n clearRejectedNoCatch(value);\n resolvePromise(promise, value[symbolState], value[symbolValue]);\n }\n else if (state !== REJECTED && typeof then === 'function') {\n try {\n then.call(value, onceWrapper(makeResolver(promise, state)), onceWrapper(makeResolver(promise, false)));\n }\n catch (err) {\n onceWrapper(() => {\n resolvePromise(promise, false, err);\n })();\n }\n }\n else {\n promise[symbolState] = state;\n const queue = promise[symbolValue];\n promise[symbolValue] = value;\n if (promise[symbolFinally] === symbolFinally) {\n // the promise is generated by Promise.prototype.finally\n if (state === RESOLVED) {\n // the state is resolved, should ignore the value\n // and use parent promise value\n promise[symbolState] = promise[symbolParentPromiseState];\n promise[symbolValue] = promise[symbolParentPromiseValue];\n }\n }\n // record task information in value when error occurs, so we can\n // do some additional work such as render longStackTrace\n if (state === REJECTED && value instanceof Error) {\n // check if longStackTraceZone is here\n const trace = Zone.currentTask && Zone.currentTask.data &&\n Zone.currentTask.data[creationTrace];\n if (trace) {\n // only keep the long stack trace into error when in longStackTraceZone\n ObjectDefineProperty(value, CURRENT_TASK_TRACE_SYMBOL, { configurable: true, enumerable: false, writable: true, value: trace });\n }\n }\n for (let i = 0; i < queue.length;) {\n scheduleResolveOrReject(promise, queue[i++], queue[i++], queue[i++], queue[i++]);\n }\n if (queue.length == 0 && state == REJECTED) {\n promise[symbolState] = REJECTED_NO_CATCH;\n try {\n // try to print more readable error log\n throw new Error('Uncaught (in promise): ' + readableObjectToString(value) +\n (value && value.stack ? '\\n' + value.stack : ''));\n }\n catch (err) {\n const error = err;\n error.rejection = value;\n error.promise = promise;\n error.zone = Zone.current;\n error.task = Zone.currentTask;\n _uncaughtPromiseErrors.push(error);\n api.scheduleMicroTask(); // to make sure that it is running\n }\n }\n }\n }\n // Resolving an already resolved promise is a noop.\n return promise;\n }\n const REJECTION_HANDLED_HANDLER = __symbol__('rejectionHandledHandler');\n function clearRejectedNoCatch(promise) {\n if (promise[symbolState] === REJECTED_NO_CATCH) {\n // if the promise is rejected no catch status\n // and queue.length > 0, means there is a error handler\n // here to handle the rejected promise, we should trigger\n // windows.rejectionhandled eventHandler or nodejs rejectionHandled\n // eventHandler\n try {\n const handler = Zone[REJECTION_HANDLED_HANDLER];\n if (handler && typeof handler === 'function') {\n handler.call(this, { rejection: promise[symbolValue], promise: promise });\n }\n }\n catch (err) {\n }\n promise[symbolState] = REJECTED;\n for (let i = 0; i < _uncaughtPromiseErrors.length; i++) {\n if (promise === _uncaughtPromiseErrors[i].promise) {\n _uncaughtPromiseErrors.splice(i, 1);\n }\n }\n }\n }\n function scheduleResolveOrReject(promise, zone, chainPromise, onFulfilled, onRejected) {\n clearRejectedNoCatch(promise);\n const promiseState = promise[symbolState];\n const delegate = promiseState ?\n (typeof onFulfilled === 'function') ? onFulfilled : forwardResolution :\n (typeof onRejected === 'function') ? onRejected : forwardRejection;\n zone.scheduleMicroTask(source, () => {\n try {\n const parentPromiseValue = promise[symbolValue];\n const isFinallyPromise = chainPromise && symbolFinally === chainPromise[symbolFinally];\n if (isFinallyPromise) {\n // if the promise is generated from finally call, keep parent promise's state and value\n chainPromise[symbolParentPromiseValue] = parentPromiseValue;\n chainPromise[symbolParentPromiseState] = promiseState;\n }\n // should not pass value to finally callback\n const value = zone.run(delegate, undefined, isFinallyPromise && delegate !== forwardRejection && delegate !== forwardResolution ?\n [] :\n [parentPromiseValue]);\n resolvePromise(chainPromise, true, value);\n }\n catch (error) {\n // if error occurs, should always return this error\n resolvePromise(chainPromise, false, error);\n }\n }, chainPromise);\n }\n const ZONE_AWARE_PROMISE_TO_STRING = 'function ZoneAwarePromise() { [native code] }';\n class ZoneAwarePromise {\n constructor(executor) {\n const promise = this;\n if (!(promise instanceof ZoneAwarePromise)) {\n throw new Error('Must be an instanceof Promise.');\n }\n promise[symbolState] = UNRESOLVED;\n promise[symbolValue] = []; // queue;\n try {\n executor && executor(makeResolver(promise, RESOLVED), makeResolver(promise, REJECTED));\n }\n catch (error) {\n resolvePromise(promise, false, error);\n }\n }\n static toString() {\n return ZONE_AWARE_PROMISE_TO_STRING;\n }\n static resolve(value) {\n return resolvePromise(new this(null), RESOLVED, value);\n }\n static reject(error) {\n return resolvePromise(new this(null), REJECTED, error);\n }\n static race(values) {\n let resolve;\n let reject;\n let promise = new this((res, rej) => {\n resolve = res;\n reject = rej;\n });\n function onResolve(value) {\n resolve(value);\n }\n function onReject(error) {\n reject(error);\n }\n for (let value of values) {\n if (!isThenable(value)) {\n value = this.resolve(value);\n }\n value.then(onResolve, onReject);\n }\n return promise;\n }\n static all(values) {\n let resolve;\n let reject;\n let promise = new this((res, rej) => {\n resolve = res;\n reject = rej;\n });\n // Start at 2 to prevent prematurely resolving if .then is called immediately.\n let unresolvedCount = 2;\n let valueIndex = 0;\n const resolvedValues = [];\n for (let value of values) {\n if (!isThenable(value)) {\n value = this.resolve(value);\n }\n const curValueIndex = valueIndex;\n value.then((value) => {\n resolvedValues[curValueIndex] = value;\n unresolvedCount--;\n if (unresolvedCount === 0) {\n resolve(resolvedValues);\n }\n }, reject);\n unresolvedCount++;\n valueIndex++;\n }\n // Make the unresolvedCount zero-based again.\n unresolvedCount -= 2;\n if (unresolvedCount === 0) {\n resolve(resolvedValues);\n }\n return promise;\n }\n get [Symbol.toStringTag]() {\n return 'Promise';\n }\n then(onFulfilled, onRejected) {\n const chainPromise = new this.constructor(null);\n const zone = Zone.current;\n if (this[symbolState] == UNRESOLVED) {\n this[symbolValue].push(zone, chainPromise, onFulfilled, onRejected);\n }\n else {\n scheduleResolveOrReject(this, zone, chainPromise, onFulfilled, onRejected);\n }\n return chainPromise;\n }\n catch(onRejected) {\n return this.then(null, onRejected);\n }\n finally(onFinally) {\n const chainPromise = new this.constructor(null);\n chainPromise[symbolFinally] = symbolFinally;\n const zone = Zone.current;\n if (this[symbolState] == UNRESOLVED) {\n this[symbolValue].push(zone, chainPromise, onFinally, onFinally);\n }\n else {\n scheduleResolveOrReject(this, zone, chainPromise, onFinally, onFinally);\n }\n return chainPromise;\n }\n }\n // Protect against aggressive optimizers dropping seemingly unused properties.\n // E.g. Closure Compiler in advanced mode.\n ZoneAwarePromise['resolve'] = ZoneAwarePromise.resolve;\n ZoneAwarePromise['reject'] = ZoneAwarePromise.reject;\n ZoneAwarePromise['race'] = ZoneAwarePromise.race;\n ZoneAwarePromise['all'] = ZoneAwarePromise.all;\n const NativePromise = global[symbolPromise] = global['Promise'];\n const ZONE_AWARE_PROMISE = Zone.__symbol__('ZoneAwarePromise');\n let desc = ObjectGetOwnPropertyDescriptor(global, 'Promise');\n if (!desc || desc.configurable) {\n desc && delete desc.writable;\n desc && delete desc.value;\n if (!desc) {\n desc = { configurable: true, enumerable: true };\n }\n desc.get = function () {\n // if we already set ZoneAwarePromise, use patched one\n // otherwise return native one.\n return global[ZONE_AWARE_PROMISE] ? global[ZONE_AWARE_PROMISE] : global[symbolPromise];\n };\n desc.set = function (NewNativePromise) {\n if (NewNativePromise === ZoneAwarePromise) {\n // if the NewNativePromise is ZoneAwarePromise\n // save to global\n global[ZONE_AWARE_PROMISE] = NewNativePromise;\n }\n else {\n // if the NewNativePromise is not ZoneAwarePromise\n // for example: after load zone.js, some library just\n // set es6-promise to global, if we set it to global\n // directly, assertZonePatched will fail and angular\n // will not loaded, so we just set the NewNativePromise\n // to global[symbolPromise], so the result is just like\n // we load ES6 Promise before zone.js\n global[symbolPromise] = NewNativePromise;\n if (!NewNativePromise.prototype[symbolThen]) {\n patchThen(NewNativePromise);\n }\n api.setNativePromise(NewNativePromise);\n }\n };\n ObjectDefineProperty(global, 'Promise', desc);\n }\n global['Promise'] = ZoneAwarePromise;\n const symbolThenPatched = __symbol__('thenPatched');\n function patchThen(Ctor) {\n const proto = Ctor.prototype;\n const prop = ObjectGetOwnPropertyDescriptor(proto, 'then');\n if (prop && (prop.writable === false || !prop.configurable)) {\n // check Ctor.prototype.then propertyDescriptor is writable or not\n // in meteor env, writable is false, we should ignore such case\n return;\n }\n const originalThen = proto.then;\n // Keep a reference to the original method.\n proto[symbolThen] = originalThen;\n Ctor.prototype.then = function (onResolve, onReject) {\n const wrapped = new ZoneAwarePromise((resolve, reject) => {\n originalThen.call(this, resolve, reject);\n });\n return wrapped.then(onResolve, onReject);\n };\n Ctor[symbolThenPatched] = true;\n }\n api.patchThen = patchThen;\n function zoneify(fn) {\n return function () {\n let resultPromise = fn.apply(this, arguments);\n if (resultPromise instanceof ZoneAwarePromise) {\n return resultPromise;\n }\n let ctor = resultPromise.constructor;\n if (!ctor[symbolThenPatched]) {\n patchThen(ctor);\n }\n return resultPromise;\n };\n }\n if (NativePromise) {\n patchThen(NativePromise);\n const fetch = global['fetch'];\n if (typeof fetch == 'function') {\n global[api.symbol('fetch')] = fetch;\n global['fetch'] = zoneify(fetch);\n }\n }\n // This is not part of public API, but it is useful for tests, so we expose it.\n Promise[Zone.__symbol__('uncaughtPromiseErrors')] = _uncaughtPromiseErrors;\n return ZoneAwarePromise;\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Suppress closure compiler errors about unknown 'Zone' variable\n * @fileoverview\n * @suppress {undefinedVars,globalThis,missingRequire}\n */\n// issue #989, to reduce bundle size, use short name\n/** Object.getOwnPropertyDescriptor */\nconst ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n/** Object.defineProperty */\nconst ObjectDefineProperty = Object.defineProperty;\n/** Object.getPrototypeOf */\nconst ObjectGetPrototypeOf = Object.getPrototypeOf;\n/** Object.create */\nconst ObjectCreate = Object.create;\n/** Array.prototype.slice */\nconst ArraySlice = Array.prototype.slice;\n/** addEventListener string const */\nconst ADD_EVENT_LISTENER_STR = 'addEventListener';\n/** removeEventListener string const */\nconst REMOVE_EVENT_LISTENER_STR = 'removeEventListener';\n/** zoneSymbol addEventListener */\nconst ZONE_SYMBOL_ADD_EVENT_LISTENER = Zone.__symbol__(ADD_EVENT_LISTENER_STR);\n/** zoneSymbol removeEventListener */\nconst ZONE_SYMBOL_REMOVE_EVENT_LISTENER = Zone.__symbol__(REMOVE_EVENT_LISTENER_STR);\n/** true string const */\nconst TRUE_STR = 'true';\n/** false string const */\nconst FALSE_STR = 'false';\n/** __zone_symbol__ string const */\nconst ZONE_SYMBOL_PREFIX = '__zone_symbol__';\nfunction wrapWithCurrentZone(callback, source) {\n return Zone.current.wrap(callback, source);\n}\nfunction scheduleMacroTaskWithCurrentZone(source, callback, data, customSchedule, customCancel) {\n return Zone.current.scheduleMacroTask(source, callback, data, customSchedule, customCancel);\n}\nconst zoneSymbol = Zone.__symbol__;\nconst isWindowExists = typeof window !== 'undefined';\nconst internalWindow = isWindowExists ? window : undefined;\nconst _global = isWindowExists && internalWindow || typeof self === 'object' && self || global;\nconst REMOVE_ATTRIBUTE = 'removeAttribute';\nconst NULL_ON_PROP_VALUE = [null];\nfunction bindArguments(args, source) {\n for (let i = args.length - 1; i >= 0; i--) {\n if (typeof args[i] === 'function') {\n args[i] = wrapWithCurrentZone(args[i], source + '_' + i);\n }\n }\n return args;\n}\nfunction patchPrototype(prototype, fnNames) {\n const source = prototype.constructor['name'];\n for (let i = 0; i < fnNames.length; i++) {\n const name = fnNames[i];\n const delegate = prototype[name];\n if (delegate) {\n const prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, name);\n if (!isPropertyWritable(prototypeDesc)) {\n continue;\n }\n prototype[name] = ((delegate) => {\n const patched = function () {\n return delegate.apply(this, bindArguments(arguments, source + '.' + name));\n };\n attachOriginToPatched(patched, delegate);\n return patched;\n })(delegate);\n }\n }\n}\nfunction isPropertyWritable(propertyDesc) {\n if (!propertyDesc) {\n return true;\n }\n if (propertyDesc.writable === false) {\n return false;\n }\n return !(typeof propertyDesc.get === 'function' && typeof propertyDesc.set === 'undefined');\n}\nconst isWebWorker = (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope);\n// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify\n// this code.\nconst isNode = (!('nw' in _global) && typeof _global.process !== 'undefined' &&\n {}.toString.call(_global.process) === '[object process]');\nconst isBrowser = !isNode && !isWebWorker && !!(isWindowExists && internalWindow['HTMLElement']);\n// we are in electron of nw, so we are both browser and nodejs\n// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify\n// this code.\nconst isMix = typeof _global.process !== 'undefined' &&\n {}.toString.call(_global.process) === '[object process]' && !isWebWorker &&\n !!(isWindowExists && internalWindow['HTMLElement']);\nconst zoneSymbolEventNames = {};\nconst wrapFn = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n let eventNameSymbol = zoneSymbolEventNames[event.type];\n if (!eventNameSymbol) {\n eventNameSymbol = zoneSymbolEventNames[event.type] = zoneSymbol('ON_PROPERTY' + event.type);\n }\n const target = this || event.target || _global;\n const listener = target[eventNameSymbol];\n let result;\n if (isBrowser && target === internalWindow && event.type === 'error') {\n // window.onerror have different signiture\n // https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror#window.onerror\n // and onerror callback will prevent default when callback return true\n const errorEvent = event;\n result = listener &&\n listener.call(this, errorEvent.message, errorEvent.filename, errorEvent.lineno, errorEvent.colno, errorEvent.error);\n if (result === true) {\n event.preventDefault();\n }\n }\n else {\n result = listener && listener.apply(this, arguments);\n if (result != undefined && !result) {\n event.preventDefault();\n }\n }\n return result;\n};\nfunction patchProperty(obj, prop, prototype) {\n let desc = ObjectGetOwnPropertyDescriptor(obj, prop);\n if (!desc && prototype) {\n // when patch window object, use prototype to check prop exist or not\n const prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, prop);\n if (prototypeDesc) {\n desc = { enumerable: true, configurable: true };\n }\n }\n // if the descriptor not exists or is not configurable\n // just return\n if (!desc || !desc.configurable) {\n return;\n }\n const onPropPatchedSymbol = zoneSymbol('on' + prop + 'patched');\n if (obj.hasOwnProperty(onPropPatchedSymbol) && obj[onPropPatchedSymbol]) {\n return;\n }\n // A property descriptor cannot have getter/setter and be writable\n // deleting the writable and value properties avoids this error:\n //\n // TypeError: property descriptors must not specify a value or be writable when a\n // getter or setter has been specified\n delete desc.writable;\n delete desc.value;\n const originalDescGet = desc.get;\n const originalDescSet = desc.set;\n // substr(2) cuz 'onclick' -> 'click', etc\n const eventName = prop.substr(2);\n let eventNameSymbol = zoneSymbolEventNames[eventName];\n if (!eventNameSymbol) {\n eventNameSymbol = zoneSymbolEventNames[eventName] = zoneSymbol('ON_PROPERTY' + eventName);\n }\n desc.set = function (newValue) {\n // in some of windows's onproperty callback, this is undefined\n // so we need to check it\n let target = this;\n if (!target && obj === _global) {\n target = _global;\n }\n if (!target) {\n return;\n }\n let previousValue = target[eventNameSymbol];\n if (previousValue) {\n target.removeEventListener(eventName, wrapFn);\n }\n // issue #978, when onload handler was added before loading zone.js\n // we should remove it with originalDescSet\n if (originalDescSet) {\n originalDescSet.apply(target, NULL_ON_PROP_VALUE);\n }\n if (typeof newValue === 'function') {\n target[eventNameSymbol] = newValue;\n target.addEventListener(eventName, wrapFn, false);\n }\n else {\n target[eventNameSymbol] = null;\n }\n };\n // The getter would return undefined for unassigned properties but the default value of an\n // unassigned property is null\n desc.get = function () {\n // in some of windows's onproperty callback, this is undefined\n // so we need to check it\n let target = this;\n if (!target && obj === _global) {\n target = _global;\n }\n if (!target) {\n return null;\n }\n const listener = target[eventNameSymbol];\n if (listener) {\n return listener;\n }\n else if (originalDescGet) {\n // result will be null when use inline event attribute,\n // such as \n // because the onclick function is internal raw uncompiled handler\n // the onclick will be evaluated when first time event was triggered or\n // the property is accessed, https://github.com/angular/zone.js/issues/525\n // so we should use original native get to retrieve the handler\n let value = originalDescGet && originalDescGet.call(this);\n if (value) {\n desc.set.call(this, value);\n if (typeof target[REMOVE_ATTRIBUTE] === 'function') {\n target.removeAttribute(prop);\n }\n return value;\n }\n }\n return null;\n };\n ObjectDefineProperty(obj, prop, desc);\n obj[onPropPatchedSymbol] = true;\n}\nfunction patchOnProperties(obj, properties, prototype) {\n if (properties) {\n for (let i = 0; i < properties.length; i++) {\n patchProperty(obj, 'on' + properties[i], prototype);\n }\n }\n else {\n const onProperties = [];\n for (const prop in obj) {\n if (prop.substr(0, 2) == 'on') {\n onProperties.push(prop);\n }\n }\n for (let j = 0; j < onProperties.length; j++) {\n patchProperty(obj, onProperties[j], prototype);\n }\n }\n}\nconst originalInstanceKey = zoneSymbol('originalInstance');\n// wrap some native API on `window`\nfunction patchClass(className) {\n const OriginalClass = _global[className];\n if (!OriginalClass)\n return;\n // keep original class in global\n _global[zoneSymbol(className)] = OriginalClass;\n _global[className] = function () {\n const a = bindArguments(arguments, className);\n switch (a.length) {\n case 0:\n this[originalInstanceKey] = new OriginalClass();\n break;\n case 1:\n this[originalInstanceKey] = new OriginalClass(a[0]);\n break;\n case 2:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1]);\n break;\n case 3:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2]);\n break;\n case 4:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2], a[3]);\n break;\n default:\n throw new Error('Arg list too long.');\n }\n };\n // attach original delegate to patched function\n attachOriginToPatched(_global[className], OriginalClass);\n const instance = new OriginalClass(function () { });\n let prop;\n for (prop in instance) {\n // https://bugs.webkit.org/show_bug.cgi?id=44721\n if (className === 'XMLHttpRequest' && prop === 'responseBlob')\n continue;\n (function (prop) {\n if (typeof instance[prop] === 'function') {\n _global[className].prototype[prop] = function () {\n return this[originalInstanceKey][prop].apply(this[originalInstanceKey], arguments);\n };\n }\n else {\n ObjectDefineProperty(_global[className].prototype, prop, {\n set: function (fn) {\n if (typeof fn === 'function') {\n this[originalInstanceKey][prop] = wrapWithCurrentZone(fn, className + '.' + prop);\n // keep callback in wrapped function so we can\n // use it in Function.prototype.toString to return\n // the native one.\n attachOriginToPatched(this[originalInstanceKey][prop], fn);\n }\n else {\n this[originalInstanceKey][prop] = fn;\n }\n },\n get: function () {\n return this[originalInstanceKey][prop];\n }\n });\n }\n }(prop));\n }\n for (prop in OriginalClass) {\n if (prop !== 'prototype' && OriginalClass.hasOwnProperty(prop)) {\n _global[className][prop] = OriginalClass[prop];\n }\n }\n}\nfunction copySymbolProperties(src, dest) {\n if (typeof Object.getOwnPropertySymbols !== 'function') {\n return;\n }\n const symbols = Object.getOwnPropertySymbols(src);\n symbols.forEach((symbol) => {\n const desc = Object.getOwnPropertyDescriptor(src, symbol);\n Object.defineProperty(dest, symbol, {\n get: function () {\n return src[symbol];\n },\n set: function (value) {\n if (desc && (!desc.writable || typeof desc.set !== 'function')) {\n // if src[symbol] is not writable or not have a setter, just return\n return;\n }\n src[symbol] = value;\n },\n enumerable: desc ? desc.enumerable : true,\n configurable: desc ? desc.configurable : true\n });\n });\n}\nlet shouldCopySymbolProperties = false;\n\nfunction patchMethod(target, name, patchFn) {\n let proto = target;\n while (proto && !proto.hasOwnProperty(name)) {\n proto = ObjectGetPrototypeOf(proto);\n }\n if (!proto && target[name]) {\n // somehow we did not find it, but we can see it. This happens on IE for Window properties.\n proto = target;\n }\n const delegateName = zoneSymbol(name);\n let delegate = null;\n if (proto && !(delegate = proto[delegateName])) {\n delegate = proto[delegateName] = proto[name];\n // check whether proto[name] is writable\n // some property is readonly in safari, such as HtmlCanvasElement.prototype.toBlob\n const desc = proto && ObjectGetOwnPropertyDescriptor(proto, name);\n if (isPropertyWritable(desc)) {\n const patchDelegate = patchFn(delegate, delegateName, name);\n proto[name] = function () {\n return patchDelegate(this, arguments);\n };\n attachOriginToPatched(proto[name], delegate);\n if (shouldCopySymbolProperties) {\n copySymbolProperties(delegate, proto[name]);\n }\n }\n }\n return delegate;\n}\n// TODO: @JiaLiPassion, support cancel task later if necessary\nfunction patchMacroTask(obj, funcName, metaCreator) {\n let setNative = null;\n function scheduleTask(task) {\n const data = task.data;\n data.args[data.cbIdx] = function () {\n task.invoke.apply(this, arguments);\n };\n setNative.apply(data.target, data.args);\n return task;\n }\n setNative = patchMethod(obj, funcName, (delegate) => function (self, args) {\n const meta = metaCreator(self, args);\n if (meta.cbIdx >= 0 && typeof args[meta.cbIdx] === 'function') {\n return scheduleMacroTaskWithCurrentZone(meta.name, args[meta.cbIdx], meta, scheduleTask);\n }\n else {\n // cause an error by calling it directly.\n return delegate.apply(self, args);\n }\n });\n}\n\nfunction attachOriginToPatched(patched, original) {\n patched[zoneSymbol('OriginalDelegate')] = original;\n}\nlet isDetectedIEOrEdge = false;\nlet ieOrEdge = false;\nfunction isIE() {\n try {\n const ua = internalWindow.navigator.userAgent;\n if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1) {\n return true;\n }\n }\n catch (error) {\n }\n return false;\n}\nfunction isIEOrEdge() {\n if (isDetectedIEOrEdge) {\n return ieOrEdge;\n }\n isDetectedIEOrEdge = true;\n try {\n const ua = internalWindow.navigator.userAgent;\n if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1 || ua.indexOf('Edge/') !== -1) {\n ieOrEdge = true;\n }\n }\n catch (error) {\n }\n return ieOrEdge;\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// override Function.prototype.toString to make zone.js patched function\n// look like native function\nZone.__load_patch('toString', (global) => {\n // patch Func.prototype.toString to let them look like native\n const originalFunctionToString = Function.prototype.toString;\n const ORIGINAL_DELEGATE_SYMBOL = zoneSymbol('OriginalDelegate');\n const PROMISE_SYMBOL = zoneSymbol('Promise');\n const ERROR_SYMBOL = zoneSymbol('Error');\n const newFunctionToString = function toString() {\n if (typeof this === 'function') {\n const originalDelegate = this[ORIGINAL_DELEGATE_SYMBOL];\n if (originalDelegate) {\n if (typeof originalDelegate === 'function') {\n return originalFunctionToString.call(originalDelegate);\n }\n else {\n return Object.prototype.toString.call(originalDelegate);\n }\n }\n if (this === Promise) {\n const nativePromise = global[PROMISE_SYMBOL];\n if (nativePromise) {\n return originalFunctionToString.call(nativePromise);\n }\n }\n if (this === Error) {\n const nativeError = global[ERROR_SYMBOL];\n if (nativeError) {\n return originalFunctionToString.call(nativeError);\n }\n }\n }\n return originalFunctionToString.call(this);\n };\n newFunctionToString[ORIGINAL_DELEGATE_SYMBOL] = originalFunctionToString;\n Function.prototype.toString = newFunctionToString;\n // patch Object.prototype.toString to let them look like native\n const originalObjectToString = Object.prototype.toString;\n const PROMISE_OBJECT_TO_STRING = '[object Promise]';\n Object.prototype.toString = function () {\n if (this instanceof Promise) {\n return PROMISE_OBJECT_TO_STRING;\n }\n return originalObjectToString.call(this);\n };\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\nlet passiveSupported = false;\nif (typeof window !== 'undefined') {\n try {\n const options = Object.defineProperty({}, 'passive', {\n get: function () {\n passiveSupported = true;\n }\n });\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, options);\n }\n catch (err) {\n passiveSupported = false;\n }\n}\n// an identifier to tell ZoneTask do not create a new invoke closure\nconst OPTIMIZED_ZONE_EVENT_TASK_DATA = {\n useG: true\n};\nconst zoneSymbolEventNames$1 = {};\nconst globalSources = {};\nconst EVENT_NAME_SYMBOL_REGX = /^__zone_symbol__(\\w+)(true|false)$/;\nconst IMMEDIATE_PROPAGATION_SYMBOL = ('__zone_symbol__propagationStopped');\nfunction patchEventTarget(_global, apis, patchOptions) {\n const ADD_EVENT_LISTENER = (patchOptions && patchOptions.add) || ADD_EVENT_LISTENER_STR;\n const REMOVE_EVENT_LISTENER = (patchOptions && patchOptions.rm) || REMOVE_EVENT_LISTENER_STR;\n const LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.listeners) || 'eventListeners';\n const REMOVE_ALL_LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.rmAll) || 'removeAllListeners';\n const zoneSymbolAddEventListener = zoneSymbol(ADD_EVENT_LISTENER);\n const ADD_EVENT_LISTENER_SOURCE = '.' + ADD_EVENT_LISTENER + ':';\n const PREPEND_EVENT_LISTENER = 'prependListener';\n const PREPEND_EVENT_LISTENER_SOURCE = '.' + PREPEND_EVENT_LISTENER + ':';\n const invokeTask = function (task, target, event) {\n // for better performance, check isRemoved which is set\n // by removeEventListener\n if (task.isRemoved) {\n return;\n }\n const delegate = task.callback;\n if (typeof delegate === 'object' && delegate.handleEvent) {\n // create the bind version of handleEvent when invoke\n task.callback = (event) => delegate.handleEvent(event);\n task.originalDelegate = delegate;\n }\n // invoke static task.invoke\n task.invoke(task, target, [event]);\n const options = task.options;\n if (options && typeof options === 'object' && options.once) {\n // if options.once is true, after invoke once remove listener here\n // only browser need to do this, nodejs eventEmitter will cal removeListener\n // inside EventEmitter.once\n const delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n target[REMOVE_EVENT_LISTENER].call(target, event.type, delegate, options);\n }\n };\n // global shared zoneAwareCallback to handle all event callback with capture = false\n const globalZoneAwareCallback = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n // event.target is needed for Samsung TV and SourceBuffer\n // || global is needed https://github.com/angular/zone.js/issues/190\n const target = this || event.target || _global;\n const tasks = target[zoneSymbolEventNames$1[event.type][FALSE_STR]];\n if (tasks) {\n // invoke all tasks which attached to current target with given event.type and capture = false\n // for performance concern, if task.length === 1, just invoke\n if (tasks.length === 1) {\n invokeTask(tasks[0], target, event);\n }\n else {\n // https://github.com/angular/zone.js/issues/836\n // copy the tasks array before invoke, to avoid\n // the callback will remove itself or other listener\n const copyTasks = tasks.slice();\n for (let i = 0; i < copyTasks.length; i++) {\n if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) {\n break;\n }\n invokeTask(copyTasks[i], target, event);\n }\n }\n }\n };\n // global shared zoneAwareCallback to handle all event callback with capture = true\n const globalZoneAwareCaptureCallback = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n // event.target is needed for Samsung TV and SourceBuffer\n // || global is needed https://github.com/angular/zone.js/issues/190\n const target = this || event.target || _global;\n const tasks = target[zoneSymbolEventNames$1[event.type][TRUE_STR]];\n if (tasks) {\n // invoke all tasks which attached to current target with given event.type and capture = false\n // for performance concern, if task.length === 1, just invoke\n if (tasks.length === 1) {\n invokeTask(tasks[0], target, event);\n }\n else {\n // https://github.com/angular/zone.js/issues/836\n // copy the tasks array before invoke, to avoid\n // the callback will remove itself or other listener\n const copyTasks = tasks.slice();\n for (let i = 0; i < copyTasks.length; i++) {\n if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) {\n break;\n }\n invokeTask(copyTasks[i], target, event);\n }\n }\n }\n };\n function patchEventTargetMethods(obj, patchOptions) {\n if (!obj) {\n return false;\n }\n let useGlobalCallback = true;\n if (patchOptions && patchOptions.useG !== undefined) {\n useGlobalCallback = patchOptions.useG;\n }\n const validateHandler = patchOptions && patchOptions.vh;\n let checkDuplicate = true;\n if (patchOptions && patchOptions.chkDup !== undefined) {\n checkDuplicate = patchOptions.chkDup;\n }\n let returnTarget = false;\n if (patchOptions && patchOptions.rt !== undefined) {\n returnTarget = patchOptions.rt;\n }\n let proto = obj;\n while (proto && !proto.hasOwnProperty(ADD_EVENT_LISTENER)) {\n proto = ObjectGetPrototypeOf(proto);\n }\n if (!proto && obj[ADD_EVENT_LISTENER]) {\n // somehow we did not find it, but we can see it. This happens on IE for Window properties.\n proto = obj;\n }\n if (!proto) {\n return false;\n }\n if (proto[zoneSymbolAddEventListener]) {\n return false;\n }\n const eventNameToString = patchOptions && patchOptions.eventNameToString;\n // a shared global taskData to pass data for scheduleEventTask\n // so we do not need to create a new object just for pass some data\n const taskData = {};\n const nativeAddEventListener = proto[zoneSymbolAddEventListener] = proto[ADD_EVENT_LISTENER];\n const nativeRemoveEventListener = proto[zoneSymbol(REMOVE_EVENT_LISTENER)] =\n proto[REMOVE_EVENT_LISTENER];\n const nativeListeners = proto[zoneSymbol(LISTENERS_EVENT_LISTENER)] =\n proto[LISTENERS_EVENT_LISTENER];\n const nativeRemoveAllListeners = proto[zoneSymbol(REMOVE_ALL_LISTENERS_EVENT_LISTENER)] =\n proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER];\n let nativePrependEventListener;\n if (patchOptions && patchOptions.prepend) {\n nativePrependEventListener = proto[zoneSymbol(patchOptions.prepend)] =\n proto[patchOptions.prepend];\n }\n function checkIsPassive(task) {\n if (!passiveSupported && typeof taskData.options !== 'boolean' &&\n typeof taskData.options !== 'undefined' && taskData.options !== null) {\n // options is a non-null non-undefined object\n // passive is not supported\n // don't pass options as object\n // just pass capture as a boolean\n task.options = !!taskData.options.capture;\n taskData.options = task.options;\n }\n }\n const customScheduleGlobal = function (task) {\n // if there is already a task for the eventName + capture,\n // just return, because we use the shared globalZoneAwareCallback here.\n if (taskData.isExisting) {\n return;\n }\n checkIsPassive(task);\n return nativeAddEventListener.call(taskData.target, taskData.eventName, taskData.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, taskData.options);\n };\n const customCancelGlobal = function (task) {\n // if task is not marked as isRemoved, this call is directly\n // from Zone.prototype.cancelTask, we should remove the task\n // from tasksList of target first\n if (!task.isRemoved) {\n const symbolEventNames = zoneSymbolEventNames$1[task.eventName];\n let symbolEventName;\n if (symbolEventNames) {\n symbolEventName = symbolEventNames[task.capture ? TRUE_STR : FALSE_STR];\n }\n const existingTasks = symbolEventName && task.target[symbolEventName];\n if (existingTasks) {\n for (let i = 0; i < existingTasks.length; i++) {\n const existingTask = existingTasks[i];\n if (existingTask === task) {\n existingTasks.splice(i, 1);\n // set isRemoved to data for faster invokeTask check\n task.isRemoved = true;\n if (existingTasks.length === 0) {\n // all tasks for the eventName + capture have gone,\n // remove globalZoneAwareCallback and remove the task cache from target\n task.allRemoved = true;\n task.target[symbolEventName] = null;\n }\n break;\n }\n }\n }\n }\n // if all tasks for the eventName + capture have gone,\n // we will really remove the global event callback,\n // if not, return\n if (!task.allRemoved) {\n return;\n }\n return nativeRemoveEventListener.call(task.target, task.eventName, task.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, task.options);\n };\n const customScheduleNonGlobal = function (task) {\n checkIsPassive(task);\n return nativeAddEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options);\n };\n const customSchedulePrepend = function (task) {\n return nativePrependEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options);\n };\n const customCancelNonGlobal = function (task) {\n return nativeRemoveEventListener.call(task.target, task.eventName, task.invoke, task.options);\n };\n const customSchedule = useGlobalCallback ? customScheduleGlobal : customScheduleNonGlobal;\n const customCancel = useGlobalCallback ? customCancelGlobal : customCancelNonGlobal;\n const compareTaskCallbackVsDelegate = function (task, delegate) {\n const typeOfDelegate = typeof delegate;\n return (typeOfDelegate === 'function' && task.callback === delegate) ||\n (typeOfDelegate === 'object' && task.originalDelegate === delegate);\n };\n const compare = (patchOptions && patchOptions.diff) ? patchOptions.diff : compareTaskCallbackVsDelegate;\n const blackListedEvents = Zone[Zone.__symbol__('BLACK_LISTED_EVENTS')];\n const makeAddListener = function (nativeListener, addSource, customScheduleFn, customCancelFn, returnTarget = false, prepend = false) {\n return function () {\n const target = this || _global;\n const eventName = arguments[0];\n let delegate = arguments[1];\n if (!delegate) {\n return nativeListener.apply(this, arguments);\n }\n if (isNode && eventName === 'uncaughtException') {\n // don't patch uncaughtException of nodejs to prevent endless loop\n return nativeListener.apply(this, arguments);\n }\n // don't create the bind delegate function for handleEvent\n // case here to improve addEventListener performance\n // we will create the bind delegate when invoke\n let isHandleEvent = false;\n if (typeof delegate !== 'function') {\n if (!delegate.handleEvent) {\n return nativeListener.apply(this, arguments);\n }\n isHandleEvent = true;\n }\n if (validateHandler && !validateHandler(nativeListener, delegate, target, arguments)) {\n return;\n }\n const options = arguments[2];\n if (blackListedEvents) {\n // check black list\n for (let i = 0; i < blackListedEvents.length; i++) {\n if (eventName === blackListedEvents[i]) {\n return nativeListener.apply(this, arguments);\n }\n }\n }\n let capture;\n let once = false;\n if (options === undefined) {\n capture = false;\n }\n else if (options === true) {\n capture = true;\n }\n else if (options === false) {\n capture = false;\n }\n else {\n capture = options ? !!options.capture : false;\n once = options ? !!options.once : false;\n }\n const zone = Zone.current;\n const symbolEventNames = zoneSymbolEventNames$1[eventName];\n let symbolEventName;\n if (!symbolEventNames) {\n // the code is duplicate, but I just want to get some better performance\n const falseEventName = (eventNameToString ? eventNameToString(eventName) : eventName) + FALSE_STR;\n const trueEventName = (eventNameToString ? eventNameToString(eventName) : eventName) + TRUE_STR;\n const symbol = ZONE_SYMBOL_PREFIX + falseEventName;\n const symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName;\n zoneSymbolEventNames$1[eventName] = {};\n zoneSymbolEventNames$1[eventName][FALSE_STR] = symbol;\n zoneSymbolEventNames$1[eventName][TRUE_STR] = symbolCapture;\n symbolEventName = capture ? symbolCapture : symbol;\n }\n else {\n symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR];\n }\n let existingTasks = target[symbolEventName];\n let isExisting = false;\n if (existingTasks) {\n // already have task registered\n isExisting = true;\n if (checkDuplicate) {\n for (let i = 0; i < existingTasks.length; i++) {\n if (compare(existingTasks[i], delegate)) {\n // same callback, same capture, same event name, just return\n return;\n }\n }\n }\n }\n else {\n existingTasks = target[symbolEventName] = [];\n }\n let source;\n const constructorName = target.constructor['name'];\n const targetSource = globalSources[constructorName];\n if (targetSource) {\n source = targetSource[eventName];\n }\n if (!source) {\n source = constructorName + addSource +\n (eventNameToString ? eventNameToString(eventName) : eventName);\n }\n // do not create a new object as task.data to pass those things\n // just use the global shared one\n taskData.options = options;\n if (once) {\n // if addEventListener with once options, we don't pass it to\n // native addEventListener, instead we keep the once setting\n // and handle ourselves.\n taskData.options.once = false;\n }\n taskData.target = target;\n taskData.capture = capture;\n taskData.eventName = eventName;\n taskData.isExisting = isExisting;\n const data = useGlobalCallback ? OPTIMIZED_ZONE_EVENT_TASK_DATA : undefined;\n // keep taskData into data to allow onScheduleEventTask to access the task information\n if (data) {\n data.taskData = taskData;\n }\n const task = zone.scheduleEventTask(source, delegate, data, customScheduleFn, customCancelFn);\n // should clear taskData.target to avoid memory leak\n // issue, https://github.com/angular/angular/issues/20442\n taskData.target = null;\n // need to clear up taskData because it is a global object\n if (data) {\n data.taskData = null;\n }\n // have to save those information to task in case\n // application may call task.zone.cancelTask() directly\n if (once) {\n options.once = true;\n }\n if (!(!passiveSupported && typeof task.options === 'boolean')) {\n // if not support passive, and we pass an option object\n // to addEventListener, we should save the options to task\n task.options = options;\n }\n task.target = target;\n task.capture = capture;\n task.eventName = eventName;\n if (isHandleEvent) {\n // save original delegate for compare to check duplicate\n task.originalDelegate = delegate;\n }\n if (!prepend) {\n existingTasks.push(task);\n }\n else {\n existingTasks.unshift(task);\n }\n if (returnTarget) {\n return target;\n }\n };\n };\n proto[ADD_EVENT_LISTENER] = makeAddListener(nativeAddEventListener, ADD_EVENT_LISTENER_SOURCE, customSchedule, customCancel, returnTarget);\n if (nativePrependEventListener) {\n proto[PREPEND_EVENT_LISTENER] = makeAddListener(nativePrependEventListener, PREPEND_EVENT_LISTENER_SOURCE, customSchedulePrepend, customCancel, returnTarget, true);\n }\n proto[REMOVE_EVENT_LISTENER] = function () {\n const target = this || _global;\n const eventName = arguments[0];\n const options = arguments[2];\n let capture;\n if (options === undefined) {\n capture = false;\n }\n else if (options === true) {\n capture = true;\n }\n else if (options === false) {\n capture = false;\n }\n else {\n capture = options ? !!options.capture : false;\n }\n const delegate = arguments[1];\n if (!delegate) {\n return nativeRemoveEventListener.apply(this, arguments);\n }\n if (validateHandler &&\n !validateHandler(nativeRemoveEventListener, delegate, target, arguments)) {\n return;\n }\n const symbolEventNames = zoneSymbolEventNames$1[eventName];\n let symbolEventName;\n if (symbolEventNames) {\n symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR];\n }\n const existingTasks = symbolEventName && target[symbolEventName];\n if (existingTasks) {\n for (let i = 0; i < existingTasks.length; i++) {\n const existingTask = existingTasks[i];\n if (compare(existingTask, delegate)) {\n existingTasks.splice(i, 1);\n // set isRemoved to data for faster invokeTask check\n existingTask.isRemoved = true;\n if (existingTasks.length === 0) {\n // all tasks for the eventName + capture have gone,\n // remove globalZoneAwareCallback and remove the task cache from target\n existingTask.allRemoved = true;\n target[symbolEventName] = null;\n }\n existingTask.zone.cancelTask(existingTask);\n if (returnTarget) {\n return target;\n }\n return;\n }\n }\n }\n // issue 930, didn't find the event name or callback\n // from zone kept existingTasks, the callback maybe\n // added outside of zone, we need to call native removeEventListener\n // to try to remove it.\n return nativeRemoveEventListener.apply(this, arguments);\n };\n proto[LISTENERS_EVENT_LISTENER] = function () {\n const target = this || _global;\n const eventName = arguments[0];\n const listeners = [];\n const tasks = findEventTasks(target, eventNameToString ? eventNameToString(eventName) : eventName);\n for (let i = 0; i < tasks.length; i++) {\n const task = tasks[i];\n let delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n listeners.push(delegate);\n }\n return listeners;\n };\n proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER] = function () {\n const target = this || _global;\n const eventName = arguments[0];\n if (!eventName) {\n const keys = Object.keys(target);\n for (let i = 0; i < keys.length; i++) {\n const prop = keys[i];\n const match = EVENT_NAME_SYMBOL_REGX.exec(prop);\n let evtName = match && match[1];\n // in nodejs EventEmitter, removeListener event is\n // used for monitoring the removeListener call,\n // so just keep removeListener eventListener until\n // all other eventListeners are removed\n if (evtName && evtName !== 'removeListener') {\n this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, evtName);\n }\n }\n // remove removeListener listener finally\n this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, 'removeListener');\n }\n else {\n const symbolEventNames = zoneSymbolEventNames$1[eventName];\n if (symbolEventNames) {\n const symbolEventName = symbolEventNames[FALSE_STR];\n const symbolCaptureEventName = symbolEventNames[TRUE_STR];\n const tasks = target[symbolEventName];\n const captureTasks = target[symbolCaptureEventName];\n if (tasks) {\n const removeTasks = tasks.slice();\n for (let i = 0; i < removeTasks.length; i++) {\n const task = removeTasks[i];\n let delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options);\n }\n }\n if (captureTasks) {\n const removeTasks = captureTasks.slice();\n for (let i = 0; i < removeTasks.length; i++) {\n const task = removeTasks[i];\n let delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options);\n }\n }\n }\n }\n if (returnTarget) {\n return this;\n }\n };\n // for native toString patch\n attachOriginToPatched(proto[ADD_EVENT_LISTENER], nativeAddEventListener);\n attachOriginToPatched(proto[REMOVE_EVENT_LISTENER], nativeRemoveEventListener);\n if (nativeRemoveAllListeners) {\n attachOriginToPatched(proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER], nativeRemoveAllListeners);\n }\n if (nativeListeners) {\n attachOriginToPatched(proto[LISTENERS_EVENT_LISTENER], nativeListeners);\n }\n return true;\n }\n let results = [];\n for (let i = 0; i < apis.length; i++) {\n results[i] = patchEventTargetMethods(apis[i], patchOptions);\n }\n return results;\n}\nfunction findEventTasks(target, eventName) {\n const foundTasks = [];\n for (let prop in target) {\n const match = EVENT_NAME_SYMBOL_REGX.exec(prop);\n let evtName = match && match[1];\n if (evtName && (!eventName || evtName === eventName)) {\n const tasks = target[prop];\n if (tasks) {\n for (let i = 0; i < tasks.length; i++) {\n foundTasks.push(tasks[i]);\n }\n }\n }\n }\n return foundTasks;\n}\nfunction patchEventPrototype(global, api) {\n const Event = global['Event'];\n if (Event && Event.prototype) {\n api.patchMethod(Event.prototype, 'stopImmediatePropagation', (delegate) => function (self, args) {\n self[IMMEDIATE_PROPAGATION_SYMBOL] = true;\n // we need to call the native stopImmediatePropagation\n // in case in some hybrid application, some part of\n // application will be controlled by zone, some are not\n delegate && delegate.apply(self, args);\n });\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction patchCallbacks(api, target, targetName, method, callbacks) {\n const symbol = Zone.__symbol__(method);\n if (target[symbol]) {\n return;\n }\n const nativeDelegate = target[symbol] = target[method];\n target[method] = function (name, opts, options) {\n if (opts && opts.prototype) {\n callbacks.forEach(function (callback) {\n const source = `${targetName}.${method}::` + callback;\n const prototype = opts.prototype;\n if (prototype.hasOwnProperty(callback)) {\n const descriptor = api.ObjectGetOwnPropertyDescriptor(prototype, callback);\n if (descriptor && descriptor.value) {\n descriptor.value = api.wrapWithCurrentZone(descriptor.value, source);\n api._redefineProperty(opts.prototype, callback, descriptor);\n }\n else if (prototype[callback]) {\n prototype[callback] = api.wrapWithCurrentZone(prototype[callback], source);\n }\n }\n else if (prototype[callback]) {\n prototype[callback] = api.wrapWithCurrentZone(prototype[callback], source);\n }\n });\n }\n return nativeDelegate.call(target, name, opts, options);\n };\n api.attachOriginToPatched(target[method], nativeDelegate);\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/*\n * This is necessary for Chrome and Chrome mobile, to enable\n * things like redefining `createdCallback` on an element.\n */\nconst zoneSymbol$1 = Zone.__symbol__;\nconst _defineProperty = Object[zoneSymbol$1('defineProperty')] = Object.defineProperty;\nconst _getOwnPropertyDescriptor = Object[zoneSymbol$1('getOwnPropertyDescriptor')] =\n Object.getOwnPropertyDescriptor;\nconst _create = Object.create;\nconst unconfigurablesKey = zoneSymbol$1('unconfigurables');\nfunction propertyPatch() {\n Object.defineProperty = function (obj, prop, desc) {\n if (isUnconfigurable(obj, prop)) {\n throw new TypeError('Cannot assign to read only property \\'' + prop + '\\' of ' + obj);\n }\n const originalConfigurableFlag = desc.configurable;\n if (prop !== 'prototype') {\n desc = rewriteDescriptor(obj, prop, desc);\n }\n return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag);\n };\n Object.defineProperties = function (obj, props) {\n Object.keys(props).forEach(function (prop) {\n Object.defineProperty(obj, prop, props[prop]);\n });\n return obj;\n };\n Object.create = function (obj, proto) {\n if (typeof proto === 'object' && !Object.isFrozen(proto)) {\n Object.keys(proto).forEach(function (prop) {\n proto[prop] = rewriteDescriptor(obj, prop, proto[prop]);\n });\n }\n return _create(obj, proto);\n };\n Object.getOwnPropertyDescriptor = function (obj, prop) {\n const desc = _getOwnPropertyDescriptor(obj, prop);\n if (desc && isUnconfigurable(obj, prop)) {\n desc.configurable = false;\n }\n return desc;\n };\n}\nfunction _redefineProperty(obj, prop, desc) {\n const originalConfigurableFlag = desc.configurable;\n desc = rewriteDescriptor(obj, prop, desc);\n return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag);\n}\nfunction isUnconfigurable(obj, prop) {\n return obj && obj[unconfigurablesKey] && obj[unconfigurablesKey][prop];\n}\nfunction rewriteDescriptor(obj, prop, desc) {\n // issue-927, if the desc is frozen, don't try to change the desc\n if (!Object.isFrozen(desc)) {\n desc.configurable = true;\n }\n if (!desc.configurable) {\n // issue-927, if the obj is frozen, don't try to set the desc to obj\n if (!obj[unconfigurablesKey] && !Object.isFrozen(obj)) {\n _defineProperty(obj, unconfigurablesKey, { writable: true, value: {} });\n }\n if (obj[unconfigurablesKey]) {\n obj[unconfigurablesKey][prop] = true;\n }\n }\n return desc;\n}\nfunction _tryDefineProperty(obj, prop, desc, originalConfigurableFlag) {\n try {\n return _defineProperty(obj, prop, desc);\n }\n catch (error) {\n if (desc.configurable) {\n // In case of errors, when the configurable flag was likely set by rewriteDescriptor(), let's\n // retry with the original flag value\n if (typeof originalConfigurableFlag == 'undefined') {\n delete desc.configurable;\n }\n else {\n desc.configurable = originalConfigurableFlag;\n }\n try {\n return _defineProperty(obj, prop, desc);\n }\n catch (error) {\n let descJson = null;\n try {\n descJson = JSON.stringify(desc);\n }\n catch (error) {\n descJson = desc.toString();\n }\n console.log(`Attempting to configure '${prop}' with descriptor '${descJson}' on object '${obj}' and got error, giving up: ${error}`);\n }\n }\n else {\n throw error;\n }\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {globalThis}\n */\nconst globalEventHandlersEventNames = [\n 'abort',\n 'animationcancel',\n 'animationend',\n 'animationiteration',\n 'auxclick',\n 'beforeinput',\n 'blur',\n 'cancel',\n 'canplay',\n 'canplaythrough',\n 'change',\n 'compositionstart',\n 'compositionupdate',\n 'compositionend',\n 'cuechange',\n 'click',\n 'close',\n 'contextmenu',\n 'curechange',\n 'dblclick',\n 'drag',\n 'dragend',\n 'dragenter',\n 'dragexit',\n 'dragleave',\n 'dragover',\n 'drop',\n 'durationchange',\n 'emptied',\n 'ended',\n 'error',\n 'focus',\n 'focusin',\n 'focusout',\n 'gotpointercapture',\n 'input',\n 'invalid',\n 'keydown',\n 'keypress',\n 'keyup',\n 'load',\n 'loadstart',\n 'loadeddata',\n 'loadedmetadata',\n 'lostpointercapture',\n 'mousedown',\n 'mouseenter',\n 'mouseleave',\n 'mousemove',\n 'mouseout',\n 'mouseover',\n 'mouseup',\n 'mousewheel',\n 'orientationchange',\n 'pause',\n 'play',\n 'playing',\n 'pointercancel',\n 'pointerdown',\n 'pointerenter',\n 'pointerleave',\n 'pointerlockchange',\n 'mozpointerlockchange',\n 'webkitpointerlockerchange',\n 'pointerlockerror',\n 'mozpointerlockerror',\n 'webkitpointerlockerror',\n 'pointermove',\n 'pointout',\n 'pointerover',\n 'pointerup',\n 'progress',\n 'ratechange',\n 'reset',\n 'resize',\n 'scroll',\n 'seeked',\n 'seeking',\n 'select',\n 'selectionchange',\n 'selectstart',\n 'show',\n 'sort',\n 'stalled',\n 'submit',\n 'suspend',\n 'timeupdate',\n 'volumechange',\n 'touchcancel',\n 'touchmove',\n 'touchstart',\n 'touchend',\n 'transitioncancel',\n 'transitionend',\n 'waiting',\n 'wheel'\n];\nconst documentEventNames = [\n 'afterscriptexecute', 'beforescriptexecute', 'DOMContentLoaded', 'freeze', 'fullscreenchange',\n 'mozfullscreenchange', 'webkitfullscreenchange', 'msfullscreenchange', 'fullscreenerror',\n 'mozfullscreenerror', 'webkitfullscreenerror', 'msfullscreenerror', 'readystatechange',\n 'visibilitychange', 'resume'\n];\nconst windowEventNames = [\n 'absolutedeviceorientation',\n 'afterinput',\n 'afterprint',\n 'appinstalled',\n 'beforeinstallprompt',\n 'beforeprint',\n 'beforeunload',\n 'devicelight',\n 'devicemotion',\n 'deviceorientation',\n 'deviceorientationabsolute',\n 'deviceproximity',\n 'hashchange',\n 'languagechange',\n 'message',\n 'mozbeforepaint',\n 'offline',\n 'online',\n 'paint',\n 'pageshow',\n 'pagehide',\n 'popstate',\n 'rejectionhandled',\n 'storage',\n 'unhandledrejection',\n 'unload',\n 'userproximity',\n 'vrdisplyconnected',\n 'vrdisplaydisconnected',\n 'vrdisplaypresentchange'\n];\nconst htmlElementEventNames = [\n 'beforecopy', 'beforecut', 'beforepaste', 'copy', 'cut', 'paste', 'dragstart', 'loadend',\n 'animationstart', 'search', 'transitionrun', 'transitionstart', 'webkitanimationend',\n 'webkitanimationiteration', 'webkitanimationstart', 'webkittransitionend'\n];\nconst mediaElementEventNames = ['encrypted', 'waitingforkey', 'msneedkey', 'mozinterruptbegin', 'mozinterruptend'];\nconst ieElementEventNames = [\n 'activate',\n 'afterupdate',\n 'ariarequest',\n 'beforeactivate',\n 'beforedeactivate',\n 'beforeeditfocus',\n 'beforeupdate',\n 'cellchange',\n 'controlselect',\n 'dataavailable',\n 'datasetchanged',\n 'datasetcomplete',\n 'errorupdate',\n 'filterchange',\n 'layoutcomplete',\n 'losecapture',\n 'move',\n 'moveend',\n 'movestart',\n 'propertychange',\n 'resizeend',\n 'resizestart',\n 'rowenter',\n 'rowexit',\n 'rowsdelete',\n 'rowsinserted',\n 'command',\n 'compassneedscalibration',\n 'deactivate',\n 'help',\n 'mscontentzoom',\n 'msmanipulationstatechanged',\n 'msgesturechange',\n 'msgesturedoubletap',\n 'msgestureend',\n 'msgesturehold',\n 'msgesturestart',\n 'msgesturetap',\n 'msgotpointercapture',\n 'msinertiastart',\n 'mslostpointercapture',\n 'mspointercancel',\n 'mspointerdown',\n 'mspointerenter',\n 'mspointerhover',\n 'mspointerleave',\n 'mspointermove',\n 'mspointerout',\n 'mspointerover',\n 'mspointerup',\n 'pointerout',\n 'mssitemodejumplistitemremoved',\n 'msthumbnailclick',\n 'stop',\n 'storagecommit'\n];\nconst webglEventNames = ['webglcontextrestored', 'webglcontextlost', 'webglcontextcreationerror'];\nconst formEventNames = ['autocomplete', 'autocompleteerror'];\nconst detailEventNames = ['toggle'];\nconst frameEventNames = ['load'];\nconst frameSetEventNames = ['blur', 'error', 'focus', 'load', 'resize', 'scroll', 'messageerror'];\nconst marqueeEventNames = ['bounce', 'finish', 'start'];\nconst XMLHttpRequestEventNames = [\n 'loadstart', 'progress', 'abort', 'error', 'load', 'progress', 'timeout', 'loadend',\n 'readystatechange'\n];\nconst IDBIndexEventNames = ['upgradeneeded', 'complete', 'abort', 'success', 'error', 'blocked', 'versionchange', 'close'];\nconst websocketEventNames = ['close', 'error', 'open', 'message'];\nconst workerEventNames = ['error', 'message'];\nconst eventNames = globalEventHandlersEventNames.concat(webglEventNames, formEventNames, detailEventNames, documentEventNames, windowEventNames, htmlElementEventNames, ieElementEventNames);\nfunction filterProperties(target, onProperties, ignoreProperties) {\n if (!ignoreProperties || ignoreProperties.length === 0) {\n return onProperties;\n }\n const tip = ignoreProperties.filter(ip => ip.target === target);\n if (!tip || tip.length === 0) {\n return onProperties;\n }\n const targetIgnoreProperties = tip[0].ignoreProperties;\n return onProperties.filter(op => targetIgnoreProperties.indexOf(op) === -1);\n}\nfunction patchFilteredProperties(target, onProperties, ignoreProperties, prototype) {\n // check whether target is available, sometimes target will be undefined\n // because different browser or some 3rd party plugin.\n if (!target) {\n return;\n }\n const filteredProperties = filterProperties(target, onProperties, ignoreProperties);\n patchOnProperties(target, filteredProperties, prototype);\n}\nfunction propertyDescriptorPatch(api, _global) {\n if (isNode && !isMix) {\n return;\n }\n if (Zone[api.symbol('patchEvents')]) {\n // events are already been patched by legacy patch.\n return;\n }\n const supportsWebSocket = typeof WebSocket !== 'undefined';\n const ignoreProperties = _global['__Zone_ignore_on_properties'];\n // for browsers that we can patch the descriptor: Chrome & Firefox\n if (isBrowser) {\n const internalWindow = window;\n const ignoreErrorProperties = isIE ? [{ target: internalWindow, ignoreProperties: ['error'] }] : [];\n // in IE/Edge, onProp not exist in window object, but in WindowPrototype\n // so we need to pass WindowPrototype to check onProp exist or not\n patchFilteredProperties(internalWindow, eventNames.concat(['messageerror']), ignoreProperties ? ignoreProperties.concat(ignoreErrorProperties) : ignoreProperties, ObjectGetPrototypeOf(internalWindow));\n patchFilteredProperties(Document.prototype, eventNames, ignoreProperties);\n if (typeof internalWindow['SVGElement'] !== 'undefined') {\n patchFilteredProperties(internalWindow['SVGElement'].prototype, eventNames, ignoreProperties);\n }\n patchFilteredProperties(Element.prototype, eventNames, ignoreProperties);\n patchFilteredProperties(HTMLElement.prototype, eventNames, ignoreProperties);\n patchFilteredProperties(HTMLMediaElement.prototype, mediaElementEventNames, ignoreProperties);\n patchFilteredProperties(HTMLFrameSetElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties);\n patchFilteredProperties(HTMLBodyElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties);\n patchFilteredProperties(HTMLFrameElement.prototype, frameEventNames, ignoreProperties);\n patchFilteredProperties(HTMLIFrameElement.prototype, frameEventNames, ignoreProperties);\n const HTMLMarqueeElement = internalWindow['HTMLMarqueeElement'];\n if (HTMLMarqueeElement) {\n patchFilteredProperties(HTMLMarqueeElement.prototype, marqueeEventNames, ignoreProperties);\n }\n const Worker = internalWindow['Worker'];\n if (Worker) {\n patchFilteredProperties(Worker.prototype, workerEventNames, ignoreProperties);\n }\n }\n const XMLHttpRequest = _global['XMLHttpRequest'];\n if (XMLHttpRequest) {\n // XMLHttpRequest is not available in ServiceWorker, so we need to check here\n patchFilteredProperties(XMLHttpRequest.prototype, XMLHttpRequestEventNames, ignoreProperties);\n }\n const XMLHttpRequestEventTarget = _global['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget) {\n patchFilteredProperties(XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype, XMLHttpRequestEventNames, ignoreProperties);\n }\n if (typeof IDBIndex !== 'undefined') {\n patchFilteredProperties(IDBIndex.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBRequest.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBOpenDBRequest.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBDatabase.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBTransaction.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBCursor.prototype, IDBIndexEventNames, ignoreProperties);\n }\n if (supportsWebSocket) {\n patchFilteredProperties(WebSocket.prototype, websocketEventNames, ignoreProperties);\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nZone.__load_patch('util', (global, Zone, api) => {\n api.patchOnProperties = patchOnProperties;\n api.patchMethod = patchMethod;\n api.bindArguments = bindArguments;\n api.patchMacroTask = patchMacroTask;\n // In earlier version of zone.js (<0.9.0), we use env name `__zone_symbol__BLACK_LISTED_EVENTS` to\n // define which events will not be patched by `Zone.js`.\n // In newer version (>=0.9.0), we change the env name to `__zone_symbol__UNPATCHED_EVENTS` to keep\n // the name consistent with angular repo.\n // The `__zone_symbol__BLACK_LISTED_EVENTS` is deprecated, but it is still be supported for\n // backwards compatibility.\n const SYMBOL_BLACK_LISTED_EVENTS = Zone.__symbol__('BLACK_LISTED_EVENTS');\n const SYMBOL_UNPATCHED_EVENTS = Zone.__symbol__('UNPATCHED_EVENTS');\n if (global[SYMBOL_UNPATCHED_EVENTS]) {\n global[SYMBOL_BLACK_LISTED_EVENTS] = global[SYMBOL_UNPATCHED_EVENTS];\n }\n if (global[SYMBOL_BLACK_LISTED_EVENTS]) {\n Zone[SYMBOL_BLACK_LISTED_EVENTS] = Zone[SYMBOL_UNPATCHED_EVENTS] =\n global[SYMBOL_BLACK_LISTED_EVENTS];\n }\n api.patchEventPrototype = patchEventPrototype;\n api.patchEventTarget = patchEventTarget;\n api.isIEOrEdge = isIEOrEdge;\n api.ObjectDefineProperty = ObjectDefineProperty;\n api.ObjectGetOwnPropertyDescriptor = ObjectGetOwnPropertyDescriptor;\n api.ObjectCreate = ObjectCreate;\n api.ArraySlice = ArraySlice;\n api.patchClass = patchClass;\n api.wrapWithCurrentZone = wrapWithCurrentZone;\n api.filterProperties = filterProperties;\n api.attachOriginToPatched = attachOriginToPatched;\n api._redefineProperty = _redefineProperty;\n api.patchCallbacks = patchCallbacks;\n api.getGlobalObjects = () => ({\n globalSources,\n zoneSymbolEventNames: zoneSymbolEventNames$1,\n eventNames,\n isBrowser,\n isMix,\n isNode,\n TRUE_STR,\n FALSE_STR,\n ZONE_SYMBOL_PREFIX,\n ADD_EVENT_LISTENER_STR,\n REMOVE_EVENT_LISTENER_STR\n });\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\nconst taskSymbol = zoneSymbol('zoneTask');\nfunction patchTimer(window, setName, cancelName, nameSuffix) {\n let setNative = null;\n let clearNative = null;\n setName += nameSuffix;\n cancelName += nameSuffix;\n const tasksByHandleId = {};\n function scheduleTask(task) {\n const data = task.data;\n function timer() {\n try {\n task.invoke.apply(this, arguments);\n }\n finally {\n // issue-934, task will be cancelled\n // even it is a periodic task such as\n // setInterval\n if (!(task.data && task.data.isPeriodic)) {\n if (typeof data.handleId === 'number') {\n // in non-nodejs env, we remove timerId\n // from local cache\n delete tasksByHandleId[data.handleId];\n }\n else if (data.handleId) {\n // Node returns complex objects as handleIds\n // we remove task reference from timer object\n data.handleId[taskSymbol] = null;\n }\n }\n }\n }\n data.args[0] = timer;\n data.handleId = setNative.apply(window, data.args);\n return task;\n }\n function clearTask(task) {\n return clearNative(task.data.handleId);\n }\n setNative =\n patchMethod(window, setName, (delegate) => function (self, args) {\n if (typeof args[0] === 'function') {\n const options = {\n isPeriodic: nameSuffix === 'Interval',\n delay: (nameSuffix === 'Timeout' || nameSuffix === 'Interval') ? args[1] || 0 :\n undefined,\n args: args\n };\n const task = scheduleMacroTaskWithCurrentZone(setName, args[0], options, scheduleTask, clearTask);\n if (!task) {\n return task;\n }\n // Node.js must additionally support the ref and unref functions.\n const handle = task.data.handleId;\n if (typeof handle === 'number') {\n // for non nodejs env, we save handleId: task\n // mapping in local cache for clearTimeout\n tasksByHandleId[handle] = task;\n }\n else if (handle) {\n // for nodejs env, we save task\n // reference in timerId Object for clearTimeout\n handle[taskSymbol] = task;\n }\n // check whether handle is null, because some polyfill or browser\n // may return undefined from setTimeout/setInterval/setImmediate/requestAnimationFrame\n if (handle && handle.ref && handle.unref && typeof handle.ref === 'function' &&\n typeof handle.unref === 'function') {\n task.ref = handle.ref.bind(handle);\n task.unref = handle.unref.bind(handle);\n }\n if (typeof handle === 'number' || handle) {\n return handle;\n }\n return task;\n }\n else {\n // cause an error by calling it directly.\n return delegate.apply(window, args);\n }\n });\n clearNative =\n patchMethod(window, cancelName, (delegate) => function (self, args) {\n const id = args[0];\n let task;\n if (typeof id === 'number') {\n // non nodejs env.\n task = tasksByHandleId[id];\n }\n else {\n // nodejs env.\n task = id && id[taskSymbol];\n // other environments.\n if (!task) {\n task = id;\n }\n }\n if (task && typeof task.type === 'string') {\n if (task.state !== 'notScheduled' &&\n (task.cancelFn && task.data.isPeriodic || task.runCount === 0)) {\n if (typeof id === 'number') {\n delete tasksByHandleId[id];\n }\n else if (id) {\n id[taskSymbol] = null;\n }\n // Do not cancel already canceled functions\n task.zone.cancelTask(task);\n }\n }\n else {\n // cause an error by calling it directly.\n delegate.apply(window, args);\n }\n });\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction patchCustomElements(_global, api) {\n const { isBrowser, isMix } = api.getGlobalObjects();\n if ((!isBrowser && !isMix) || !_global['customElements'] || !('customElements' in _global)) {\n return;\n }\n const callbacks = ['connectedCallback', 'disconnectedCallback', 'adoptedCallback', 'attributeChangedCallback'];\n api.patchCallbacks(api, _global.customElements, 'customElements', 'define', callbacks);\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction eventTargetPatch(_global, api) {\n if (Zone[api.symbol('patchEventTarget')]) {\n // EventTarget is already patched.\n return;\n }\n const { eventNames, zoneSymbolEventNames, TRUE_STR, FALSE_STR, ZONE_SYMBOL_PREFIX } = api.getGlobalObjects();\n // predefine all __zone_symbol__ + eventName + true/false string\n for (let i = 0; i < eventNames.length; i++) {\n const eventName = eventNames[i];\n const falseEventName = eventName + FALSE_STR;\n const trueEventName = eventName + TRUE_STR;\n const symbol = ZONE_SYMBOL_PREFIX + falseEventName;\n const symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName;\n zoneSymbolEventNames[eventName] = {};\n zoneSymbolEventNames[eventName][FALSE_STR] = symbol;\n zoneSymbolEventNames[eventName][TRUE_STR] = symbolCapture;\n }\n const EVENT_TARGET = _global['EventTarget'];\n if (!EVENT_TARGET || !EVENT_TARGET.prototype) {\n return;\n }\n api.patchEventTarget(_global, [EVENT_TARGET && EVENT_TARGET.prototype]);\n return true;\n}\nfunction patchEvent(global, api) {\n api.patchEventPrototype(global, api);\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\nZone.__load_patch('legacy', (global) => {\n const legacyPatch = global[Zone.__symbol__('legacyPatch')];\n if (legacyPatch) {\n legacyPatch();\n }\n});\nZone.__load_patch('timers', (global) => {\n const set = 'set';\n const clear = 'clear';\n patchTimer(global, set, clear, 'Timeout');\n patchTimer(global, set, clear, 'Interval');\n patchTimer(global, set, clear, 'Immediate');\n});\nZone.__load_patch('requestAnimationFrame', (global) => {\n patchTimer(global, 'request', 'cancel', 'AnimationFrame');\n patchTimer(global, 'mozRequest', 'mozCancel', 'AnimationFrame');\n patchTimer(global, 'webkitRequest', 'webkitCancel', 'AnimationFrame');\n});\nZone.__load_patch('blocking', (global, Zone) => {\n const blockingMethods = ['alert', 'prompt', 'confirm'];\n for (let i = 0; i < blockingMethods.length; i++) {\n const name = blockingMethods[i];\n patchMethod(global, name, (delegate, symbol, name) => {\n return function (s, args) {\n return Zone.current.run(delegate, global, args, name);\n };\n });\n }\n});\nZone.__load_patch('EventTarget', (global, Zone, api) => {\n patchEvent(global, api);\n eventTargetPatch(global, api);\n // patch XMLHttpRequestEventTarget's addEventListener/removeEventListener\n const XMLHttpRequestEventTarget = global['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype) {\n api.patchEventTarget(global, [XMLHttpRequestEventTarget.prototype]);\n }\n patchClass('MutationObserver');\n patchClass('WebKitMutationObserver');\n patchClass('IntersectionObserver');\n patchClass('FileReader');\n});\nZone.__load_patch('on_property', (global, Zone, api) => {\n propertyDescriptorPatch(api, global);\n propertyPatch();\n});\nZone.__load_patch('customElements', (global, Zone, api) => {\n patchCustomElements(global, api);\n});\nZone.__load_patch('XHR', (global, Zone) => {\n // Treat XMLHttpRequest as a macrotask.\n patchXHR(global);\n const XHR_TASK = zoneSymbol('xhrTask');\n const XHR_SYNC = zoneSymbol('xhrSync');\n const XHR_LISTENER = zoneSymbol('xhrListener');\n const XHR_SCHEDULED = zoneSymbol('xhrScheduled');\n const XHR_URL = zoneSymbol('xhrURL');\n const XHR_ERROR_BEFORE_SCHEDULED = zoneSymbol('xhrErrorBeforeScheduled');\n function patchXHR(window) {\n const XMLHttpRequest = window['XMLHttpRequest'];\n if (!XMLHttpRequest) {\n // XMLHttpRequest is not available in service worker\n return;\n }\n const XMLHttpRequestPrototype = XMLHttpRequest.prototype;\n function findPendingTask(target) {\n return target[XHR_TASK];\n }\n let oriAddListener = XMLHttpRequestPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n let oriRemoveListener = XMLHttpRequestPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n if (!oriAddListener) {\n const XMLHttpRequestEventTarget = window['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget) {\n const XMLHttpRequestEventTargetPrototype = XMLHttpRequestEventTarget.prototype;\n oriAddListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n oriRemoveListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n }\n }\n const READY_STATE_CHANGE = 'readystatechange';\n const SCHEDULED = 'scheduled';\n function scheduleTask(task) {\n const data = task.data;\n const target = data.target;\n target[XHR_SCHEDULED] = false;\n target[XHR_ERROR_BEFORE_SCHEDULED] = false;\n // remove existing event listener\n const listener = target[XHR_LISTENER];\n if (!oriAddListener) {\n oriAddListener = target[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n oriRemoveListener = target[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n }\n if (listener) {\n oriRemoveListener.call(target, READY_STATE_CHANGE, listener);\n }\n const newListener = target[XHR_LISTENER] = () => {\n if (target.readyState === target.DONE) {\n // sometimes on some browsers XMLHttpRequest will fire onreadystatechange with\n // readyState=4 multiple times, so we need to check task state here\n if (!data.aborted && target[XHR_SCHEDULED] && task.state === SCHEDULED) {\n // check whether the xhr has registered onload listener\n // if that is the case, the task should invoke after all\n // onload listeners finish.\n const loadTasks = target['__zone_symbol__loadfalse'];\n if (loadTasks && loadTasks.length > 0) {\n const oriInvoke = task.invoke;\n task.invoke = function () {\n // need to load the tasks again, because in other\n // load listener, they may remove themselves\n const loadTasks = target['__zone_symbol__loadfalse'];\n for (let i = 0; i < loadTasks.length; i++) {\n if (loadTasks[i] === task) {\n loadTasks.splice(i, 1);\n }\n }\n if (!data.aborted && task.state === SCHEDULED) {\n oriInvoke.call(task);\n }\n };\n loadTasks.push(task);\n }\n else {\n task.invoke();\n }\n }\n else if (!data.aborted && target[XHR_SCHEDULED] === false) {\n // error occurs when xhr.send()\n target[XHR_ERROR_BEFORE_SCHEDULED] = true;\n }\n }\n };\n oriAddListener.call(target, READY_STATE_CHANGE, newListener);\n const storedTask = target[XHR_TASK];\n if (!storedTask) {\n target[XHR_TASK] = task;\n }\n sendNative.apply(target, data.args);\n target[XHR_SCHEDULED] = true;\n return task;\n }\n function placeholderCallback() { }\n function clearTask(task) {\n const data = task.data;\n // Note - ideally, we would call data.target.removeEventListener here, but it's too late\n // to prevent it from firing. So instead, we store info for the event listener.\n data.aborted = true;\n return abortNative.apply(data.target, data.args);\n }\n const openNative = patchMethod(XMLHttpRequestPrototype, 'open', () => function (self, args) {\n self[XHR_SYNC] = args[2] == false;\n self[XHR_URL] = args[1];\n return openNative.apply(self, args);\n });\n const XMLHTTPREQUEST_SOURCE = 'XMLHttpRequest.send';\n const fetchTaskAborting = zoneSymbol('fetchTaskAborting');\n const fetchTaskScheduling = zoneSymbol('fetchTaskScheduling');\n const sendNative = patchMethod(XMLHttpRequestPrototype, 'send', () => function (self, args) {\n if (Zone.current[fetchTaskScheduling] === true) {\n // a fetch is scheduling, so we are using xhr to polyfill fetch\n // and because we already schedule macroTask for fetch, we should\n // not schedule a macroTask for xhr again\n return sendNative.apply(self, args);\n }\n if (self[XHR_SYNC]) {\n // if the XHR is sync there is no task to schedule, just execute the code.\n return sendNative.apply(self, args);\n }\n else {\n const options = { target: self, url: self[XHR_URL], isPeriodic: false, args: args, aborted: false };\n const task = scheduleMacroTaskWithCurrentZone(XMLHTTPREQUEST_SOURCE, placeholderCallback, options, scheduleTask, clearTask);\n if (self && self[XHR_ERROR_BEFORE_SCHEDULED] === true && !options.aborted &&\n task.state === SCHEDULED) {\n // xhr request throw error when send\n // we should invoke task instead of leaving a scheduled\n // pending macroTask\n task.invoke();\n }\n }\n });\n const abortNative = patchMethod(XMLHttpRequestPrototype, 'abort', () => function (self, args) {\n const task = findPendingTask(self);\n if (task && typeof task.type == 'string') {\n // If the XHR has already completed, do nothing.\n // If the XHR has already been aborted, do nothing.\n // Fix #569, call abort multiple times before done will cause\n // macroTask task count be negative number\n if (task.cancelFn == null || (task.data && task.data.aborted)) {\n return;\n }\n task.zone.cancelTask(task);\n }\n else if (Zone.current[fetchTaskAborting] === true) {\n // the abort is called from fetch polyfill, we need to call native abort of XHR.\n return abortNative.apply(self, args);\n }\n // Otherwise, we are trying to abort an XHR which has not yet been sent, so there is no\n // task\n // to cancel. Do nothing.\n });\n }\n});\nZone.__load_patch('geolocation', (global) => {\n /// GEO_LOCATION\n if (global['navigator'] && global['navigator'].geolocation) {\n patchPrototype(global['navigator'].geolocation, ['getCurrentPosition', 'watchPosition']);\n }\n});\nZone.__load_patch('PromiseRejectionEvent', (global, Zone) => {\n // handle unhandled promise rejection\n function findPromiseRejectionHandler(evtName) {\n return function (e) {\n const eventTasks = findEventTasks(global, evtName);\n eventTasks.forEach(eventTask => {\n // windows has added unhandledrejection event listener\n // trigger the event listener\n const PromiseRejectionEvent = global['PromiseRejectionEvent'];\n if (PromiseRejectionEvent) {\n const evt = new PromiseRejectionEvent(evtName, { promise: e.promise, reason: e.rejection });\n eventTask.invoke(evt);\n }\n });\n };\n }\n if (global['PromiseRejectionEvent']) {\n Zone[zoneSymbol('unhandledPromiseRejectionHandler')] =\n findPromiseRejectionHandler('unhandledrejection');\n Zone[zoneSymbol('rejectionHandledHandler')] =\n findPromiseRejectionHandler('rejectionhandled');\n }\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n","/**\r\n * This file includes polyfills needed by Angular and is loaded before the app.\r\n * You can add your own extra polyfills to this file.\r\n *\r\n * This file is divided into 2 sections:\r\n * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers.\r\n * 2. Application imports. Files imported after ZoneJS that should be loaded before your main\r\n * file.\r\n *\r\n * The current setup is for so-called \"evergreen\" browsers; the last versions of browsers that\r\n * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera),\r\n * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile.\r\n *\r\n * Learn more in https://angular.io/guide/browser-support\r\n */\r\n\r\n/***************************************************************************************************\r\n * BROWSER POLYFILLS\r\n */\r\n\r\n/** IE10 and IE11 requires the following for NgClass support on SVG elements */\r\n// import 'classlist.js'; // Run `npm install --save classlist.js`.\r\n\r\n/**\r\n * Web Animations `@angular/platform-browser/animations`\r\n * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari.\r\n * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0).\r\n */\r\n// import 'web-animations-js'; // Run `npm install --save web-animations-js`.\r\n\r\n/**\r\n * By default, zone.js will patch all possible macroTask and DomEvents\r\n * user can disable parts of macroTask/DomEvents patch by setting following flags\r\n * because those flags need to be set before `zone.js` being loaded, and webpack\r\n * will put import in the top of bundle, so user need to create a separate file\r\n * in this directory (for example: zone-flags.ts), and put the following flags\r\n * into that file, and then add the following code before importing zone.js.\r\n * import './zone-flags.ts';\r\n *\r\n * The flags allowed in zone-flags.ts are listed here.\r\n *\r\n * The following flags will work for all browsers.\r\n *\r\n * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame\r\n * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick\r\n * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames\r\n *\r\n * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js\r\n * with the following flag, it will bypass `zone.js` patch for IE/Edge\r\n *\r\n * (window as any).__Zone_enable_cross_context_check = true;\r\n *\r\n */\r\n\r\n/***************************************************************************************************\r\n * Zone JS is required by default for Angular itself.\r\n */\r\nimport 'zone.js/dist/zone'; // Included with Angular CLI.\r\n\r\n/***************************************************************************************************\r\n * APPLICATION IMPORTS\r\n */\r\n"],"sourceRoot":""} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es5.js b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es5.js new file mode 100644 index 0000000..77152ca --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es5.js @@ -0,0 +1,11754 @@ +(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["polyfills"],{ + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/es/date/index.js": +/*!**********************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/es/date/index.js ***! + \**********************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +__webpack_require__(/*! ../../modules/es.date.now */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.now.js"); +__webpack_require__(/*! ../../modules/es.date.to-json */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-json.js"); +__webpack_require__(/*! ../../modules/es.date.to-iso-string */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-iso-string.js"); +__webpack_require__(/*! ../../modules/es.date.to-string */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-string.js"); +__webpack_require__(/*! ../../modules/es.date.to-primitive */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-primitive.js"); + +module.exports = __webpack_require__(/*! ../../internals/path */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/path.js").Date; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/es/math/index.js": +/*!**********************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/es/math/index.js ***! + \**********************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +__webpack_require__(/*! ../../modules/es.math.acosh */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.acosh.js"); +__webpack_require__(/*! ../../modules/es.math.asinh */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.asinh.js"); +__webpack_require__(/*! ../../modules/es.math.atanh */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.atanh.js"); +__webpack_require__(/*! ../../modules/es.math.cbrt */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.cbrt.js"); +__webpack_require__(/*! ../../modules/es.math.clz32 */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.clz32.js"); +__webpack_require__(/*! ../../modules/es.math.cosh */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.cosh.js"); +__webpack_require__(/*! ../../modules/es.math.expm1 */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.expm1.js"); +__webpack_require__(/*! ../../modules/es.math.fround */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.fround.js"); +__webpack_require__(/*! ../../modules/es.math.hypot */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.hypot.js"); +__webpack_require__(/*! ../../modules/es.math.imul */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.imul.js"); +__webpack_require__(/*! ../../modules/es.math.log10 */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log10.js"); +__webpack_require__(/*! ../../modules/es.math.log1p */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log1p.js"); +__webpack_require__(/*! ../../modules/es.math.log2 */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log2.js"); +__webpack_require__(/*! ../../modules/es.math.sign */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.sign.js"); +__webpack_require__(/*! ../../modules/es.math.sinh */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.sinh.js"); +__webpack_require__(/*! ../../modules/es.math.tanh */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.tanh.js"); +__webpack_require__(/*! ../../modules/es.math.to-string-tag */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.to-string-tag.js"); +__webpack_require__(/*! ../../modules/es.math.trunc */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.trunc.js"); + +module.exports = __webpack_require__(/*! ../../internals/path */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/path.js").Math; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/es/number/index.js": +/*!************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/es/number/index.js ***! + \************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +__webpack_require__(/*! ../../modules/es.number.constructor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.constructor.js"); +__webpack_require__(/*! ../../modules/es.number.epsilon */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.epsilon.js"); +__webpack_require__(/*! ../../modules/es.number.is-finite */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-finite.js"); +__webpack_require__(/*! ../../modules/es.number.is-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-integer.js"); +__webpack_require__(/*! ../../modules/es.number.is-nan */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-nan.js"); +__webpack_require__(/*! ../../modules/es.number.is-safe-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-safe-integer.js"); +__webpack_require__(/*! ../../modules/es.number.max-safe-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.max-safe-integer.js"); +__webpack_require__(/*! ../../modules/es.number.min-safe-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.min-safe-integer.js"); +__webpack_require__(/*! ../../modules/es.number.parse-float */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.parse-float.js"); +__webpack_require__(/*! ../../modules/es.number.parse-int */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.parse-int.js"); +__webpack_require__(/*! ../../modules/es.number.to-fixed */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.to-fixed.js"); +__webpack_require__(/*! ../../modules/es.number.to-precision */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.to-precision.js"); + +module.exports = __webpack_require__(/*! ../../internals/path */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/path.js").Number; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/es/regexp/index.js": +/*!************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/es/regexp/index.js ***! + \************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +__webpack_require__(/*! ../../modules/es.regexp.constructor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.constructor.js"); +__webpack_require__(/*! ../../modules/es.regexp.to-string */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.to-string.js"); +__webpack_require__(/*! ../../modules/es.regexp.exec */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.exec.js"); +__webpack_require__(/*! ../../modules/es.regexp.flags */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.flags.js"); +__webpack_require__(/*! ../../modules/es.string.match */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.match.js"); +__webpack_require__(/*! ../../modules/es.string.replace */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.replace.js"); +__webpack_require__(/*! ../../modules/es.string.search */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.search.js"); +__webpack_require__(/*! ../../modules/es.string.split */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.split.js"); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/a-function.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/a-function.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +module.exports = function (it) { + if (typeof it != 'function') { + throw TypeError(String(it) + ' is not a function'); + } return it; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/add-to-unscopables.js": +/*!*************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/add-to-unscopables.js ***! + \*************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var UNSCOPABLES = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('unscopables'); +var create = __webpack_require__(/*! ../internals/object-create */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-create.js"); +var hide = __webpack_require__(/*! ../internals/hide */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js"); +var ArrayPrototype = Array.prototype; + +// Array.prototype[@@unscopables] +// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables +if (ArrayPrototype[UNSCOPABLES] == undefined) { + hide(ArrayPrototype, UNSCOPABLES, create(null)); +} + +// add a key to Array.prototype[@@unscopables] +module.exports = function (key) { + ArrayPrototype[UNSCOPABLES][key] = true; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/advance-string-index.js": +/*!***************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/advance-string-index.js ***! + \***************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var codePointAt = __webpack_require__(/*! ../internals/string-at */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-at.js"); + +// `AdvanceStringIndex` abstract operation +// https://tc39.github.io/ecma262/#sec-advancestringindex +module.exports = function (S, index, unicode) { + return index + (unicode ? codePointAt(S, index, true).length : 1); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-instance.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-instance.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +module.exports = function (it, Constructor, name) { + if (!(it instanceof Constructor)) { + throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation'); + } return it; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); + +module.exports = function (it) { + if (!isObject(it)) { + throw TypeError(String(it) + ' is not an object'); + } return it; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-copy-within.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-copy-within.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var toAbsoluteIndex = __webpack_require__(/*! ../internals/to-absolute-index */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-absolute-index.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); + +// `Array.prototype.copyWithin` method implementation +// https://tc39.github.io/ecma262/#sec-array.prototype.copywithin +module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) { + var O = toObject(this); + var len = toLength(O.length); + var to = toAbsoluteIndex(target, len); + var from = toAbsoluteIndex(start, len); + var end = arguments.length > 2 ? arguments[2] : undefined; + var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); + var inc = 1; + if (from < to && to < from + count) { + inc = -1; + from += count - 1; + to += count - 1; + } + while (count-- > 0) { + if (from in O) O[to] = O[from]; + else delete O[to]; + to += inc; + from += inc; + } return O; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-fill.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-fill.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var toAbsoluteIndex = __webpack_require__(/*! ../internals/to-absolute-index */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-absolute-index.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); + +// `Array.prototype.fill` method implementation +// https://tc39.github.io/ecma262/#sec-array.prototype.fill +module.exports = function fill(value /* , start = 0, end = @length */) { + var O = toObject(this); + var length = toLength(O.length); + var argumentsLength = arguments.length; + var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length); + var end = argumentsLength > 2 ? arguments[2] : undefined; + var endPos = end === undefined ? length : toAbsoluteIndex(end, length); + while (endPos > index) O[index++] = value; + return O; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-for-each.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-for-each.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var nativeForEach = [].forEach; +var internalForEach = __webpack_require__(/*! ../internals/array-methods */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-methods.js")(0); + +var SLOPPY_METHOD = __webpack_require__(/*! ../internals/sloppy-array-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js")('forEach'); + +// `Array.prototype.forEach` method implementation +// https://tc39.github.io/ecma262/#sec-array.prototype.foreach +module.exports = SLOPPY_METHOD ? function forEach(callbackfn /* , thisArg */) { + return internalForEach(this, callbackfn, arguments[1]); +} : nativeForEach; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-from.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-from.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var bind = __webpack_require__(/*! ../internals/bind-context */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/bind-context.js"); +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var callWithSafeIterationClosing = __webpack_require__(/*! ../internals/call-with-safe-iteration-closing */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/call-with-safe-iteration-closing.js"); +var isArrayIteratorMethod = __webpack_require__(/*! ../internals/is-array-iterator-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array-iterator-method.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); +var createProperty = __webpack_require__(/*! ../internals/create-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property.js"); +var getIteratorMethod = __webpack_require__(/*! ../internals/get-iterator-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/get-iterator-method.js"); + +// `Array.from` method +// https://tc39.github.io/ecma262/#sec-array.from +module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) { + var O = toObject(arrayLike); + var C = typeof this == 'function' ? this : Array; + var argumentsLength = arguments.length; + var mapfn = argumentsLength > 1 ? arguments[1] : undefined; + var mapping = mapfn !== undefined; + var index = 0; + var iteratorMethod = getIteratorMethod(O); + var length, result, step, iterator; + if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2); + // if the target is not iterable or it's an array with the default iterator - use a simple case + if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) { + iterator = iteratorMethod.call(O); + result = new C(); + for (;!(step = iterator.next()).done; index++) { + createProperty(result, index, mapping + ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) + : step.value + ); + } + } else { + length = toLength(O.length); + result = new C(length); + for (;length > index; index++) { + createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]); + } + } + result.length = index; + return result; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-includes.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-includes.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); +var toAbsoluteIndex = __webpack_require__(/*! ../internals/to-absolute-index */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-absolute-index.js"); + +// `Array.prototype.{ indexOf, includes }` methods implementation +// false -> Array#indexOf +// https://tc39.github.io/ecma262/#sec-array.prototype.indexof +// true -> Array#includes +// https://tc39.github.io/ecma262/#sec-array.prototype.includes +module.exports = function (IS_INCLUDES) { + return function ($this, el, fromIndex) { + var O = toIndexedObject($this); + var length = toLength(O.length); + var index = toAbsoluteIndex(fromIndex, length); + var value; + // Array#includes uses SameValueZero equality algorithm + // eslint-disable-next-line no-self-compare + if (IS_INCLUDES && el != el) while (length > index) { + value = O[index++]; + // eslint-disable-next-line no-self-compare + if (value != value) return true; + // Array#indexOf ignores holes, Array#includes - not + } else for (;length > index; index++) if (IS_INCLUDES || index in O) { + if (O[index] === el) return IS_INCLUDES || index || 0; + } return !IS_INCLUDES && -1; + }; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-last-index-of.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-last-index-of.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js"); +var toInteger = __webpack_require__(/*! ../internals/to-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-integer.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); +var nativeLastIndexOf = [].lastIndexOf; + +var NEGATIVE_ZERO = !!nativeLastIndexOf && 1 / [1].lastIndexOf(1, -0) < 0; +var SLOPPY_METHOD = __webpack_require__(/*! ../internals/sloppy-array-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js")('lastIndexOf'); + +// `Array.prototype.lastIndexOf` method implementation +// https://tc39.github.io/ecma262/#sec-array.prototype.lastindexof +module.exports = (NEGATIVE_ZERO || SLOPPY_METHOD) ? function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) { + // convert -0 to +0 + if (NEGATIVE_ZERO) return nativeLastIndexOf.apply(this, arguments) || 0; + var O = toIndexedObject(this); + var length = toLength(O.length); + var index = length - 1; + if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1])); + if (index < 0) index = length + index; + for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0; + return -1; +} : nativeLastIndexOf; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-method-has-species-support.js": +/*!***************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-method-has-species-support.js ***! + \***************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var SPECIES = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('species'); + +module.exports = function (METHOD_NAME) { + return !fails(function () { + var array = []; + var constructor = array.constructor = {}; + constructor[SPECIES] = function () { + return { foo: 1 }; + }; + return array[METHOD_NAME](Boolean).foo !== 1; + }); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-methods.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-methods.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var bind = __webpack_require__(/*! ../internals/bind-context */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/bind-context.js"); +var IndexedObject = __webpack_require__(/*! ../internals/indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/indexed-object.js"); +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); +var arraySpeciesCreate = __webpack_require__(/*! ../internals/array-species-create */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-species-create.js"); + +// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation +// 0 -> Array#forEach +// https://tc39.github.io/ecma262/#sec-array.prototype.foreach +// 1 -> Array#map +// https://tc39.github.io/ecma262/#sec-array.prototype.map +// 2 -> Array#filter +// https://tc39.github.io/ecma262/#sec-array.prototype.filter +// 3 -> Array#some +// https://tc39.github.io/ecma262/#sec-array.prototype.some +// 4 -> Array#every +// https://tc39.github.io/ecma262/#sec-array.prototype.every +// 5 -> Array#find +// https://tc39.github.io/ecma262/#sec-array.prototype.find +// 6 -> Array#findIndex +// https://tc39.github.io/ecma262/#sec-array.prototype.findIndex +module.exports = function (TYPE, specificCreate) { + var IS_MAP = TYPE == 1; + var IS_FILTER = TYPE == 2; + var IS_SOME = TYPE == 3; + var IS_EVERY = TYPE == 4; + var IS_FIND_INDEX = TYPE == 6; + var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; + var create = specificCreate || arraySpeciesCreate; + return function ($this, callbackfn, that) { + var O = toObject($this); + var self = IndexedObject(O); + var boundFunction = bind(callbackfn, that, 3); + var length = toLength(self.length); + var index = 0; + var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined; + var value, result; + for (;length > index; index++) if (NO_HOLES || index in self) { + value = self[index]; + result = boundFunction(value, index, O); + if (TYPE) { + if (IS_MAP) target[index] = result; // map + else if (result) switch (TYPE) { + case 3: return true; // some + case 5: return value; // find + case 6: return index; // findIndex + case 2: target.push(value); // filter + } else if (IS_EVERY) return false; // every + } + } + return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target; + }; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-reduce.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-reduce.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var aFunction = __webpack_require__(/*! ../internals/a-function */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/a-function.js"); +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var IndexedObject = __webpack_require__(/*! ../internals/indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/indexed-object.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); + +// `Array.prototype.{ reduce, reduceRight }` methods implementation +// https://tc39.github.io/ecma262/#sec-array.prototype.reduce +// https://tc39.github.io/ecma262/#sec-array.prototype.reduceright +module.exports = function (that, callbackfn, argumentsLength, memo, isRight) { + aFunction(callbackfn); + var O = toObject(that); + var self = IndexedObject(O); + var length = toLength(O.length); + var index = isRight ? length - 1 : 0; + var i = isRight ? -1 : 1; + if (argumentsLength < 2) while (true) { + if (index in self) { + memo = self[index]; + index += i; + break; + } + index += i; + if (isRight ? index < 0 : length <= index) { + throw TypeError('Reduce of empty array with no initial value'); + } + } + for (;isRight ? index >= 0 : length > index; index += i) if (index in self) { + memo = callbackfn(memo, self[index], index, O); + } + return memo; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-species-create.js": +/*!***************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-species-create.js ***! + \***************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var isArray = __webpack_require__(/*! ../internals/is-array */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array.js"); +var SPECIES = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('species'); + +// `ArraySpeciesCreate` abstract operation +// https://tc39.github.io/ecma262/#sec-arrayspeciescreate +module.exports = function (originalArray, length) { + var C; + if (isArray(originalArray)) { + C = originalArray.constructor; + // cross-realm fallback + if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; + else if (isObject(C)) { + C = C[SPECIES]; + if (C === null) C = undefined; + } + } return new (C === undefined ? Array : C)(length === 0 ? 0 : length); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/bind-context.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/bind-context.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var aFunction = __webpack_require__(/*! ../internals/a-function */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/a-function.js"); + +// optional / simple context binding +module.exports = function (fn, that, length) { + aFunction(fn); + if (that === undefined) return fn; + switch (length) { + case 0: return function () { + return fn.call(that); + }; + case 1: return function (a) { + return fn.call(that, a); + }; + case 2: return function (a, b) { + return fn.call(that, a, b); + }; + case 3: return function (a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function (/* ...args */) { + return fn.apply(that, arguments); + }; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/call-with-safe-iteration-closing.js": +/*!***************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/call-with-safe-iteration-closing.js ***! + \***************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); + +// call something on iterator step with safe closing on error +module.exports = function (iterator, fn, value, ENTRIES) { + try { + return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value); + // 7.4.6 IteratorClose(iterator, completion) + } catch (error) { + var returnMethod = iterator['return']; + if (returnMethod !== undefined) anObject(returnMethod.call(iterator)); + throw error; + } +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/check-correctness-of-iteration.js": +/*!*************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/check-correctness-of-iteration.js ***! + \*************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var ITERATOR = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('iterator'); +var SAFE_CLOSING = false; + +try { + var called = 0; + var iteratorWithReturn = { + next: function () { + return { done: !!called++ }; + }, + 'return': function () { + SAFE_CLOSING = true; + } + }; + iteratorWithReturn[ITERATOR] = function () { + return this; + }; + // eslint-disable-next-line no-throw-literal + Array.from(iteratorWithReturn, function () { throw 2; }); +} catch (error) { /* empty */ } + +module.exports = function (exec, SKIP_CLOSING) { + if (!SKIP_CLOSING && !SAFE_CLOSING) return false; + var ITERATION_SUPPORT = false; + try { + var object = {}; + object[ITERATOR] = function () { + return { + next: function () { + return { done: ITERATION_SUPPORT = true }; + } + }; + }; + exec(object); + } catch (error) { /* empty */ } + return ITERATION_SUPPORT; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +var toString = {}.toString; + +module.exports = function (it) { + return toString.call(it).slice(8, -1); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof.js": +/*!**************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof.js ***! + \**************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var classofRaw = __webpack_require__(/*! ../internals/classof-raw */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js"); +var TO_STRING_TAG = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('toStringTag'); +// ES3 wrong here +var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments'; + +// fallback for IE11 Script Access Denied error +var tryGet = function (it, key) { + try { + return it[key]; + } catch (error) { /* empty */ } +}; + +// getting tag from ES6+ `Object.prototype.toString` +module.exports = function (it) { + var O, tag, result; + return it === undefined ? 'Undefined' : it === null ? 'Null' + // @@toStringTag case + : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag + // builtinTag case + : CORRECT_ARGUMENTS ? classofRaw(O) + // ES3 arguments fallback + : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection-strong.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection-strong.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var defineProperty = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js").f; +var create = __webpack_require__(/*! ../internals/object-create */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-create.js"); +var redefineAll = __webpack_require__(/*! ../internals/redefine-all */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine-all.js"); +var bind = __webpack_require__(/*! ../internals/bind-context */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/bind-context.js"); +var anInstance = __webpack_require__(/*! ../internals/an-instance */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-instance.js"); +var iterate = __webpack_require__(/*! ../internals/iterate */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterate.js"); +var defineIterator = __webpack_require__(/*! ../internals/define-iterator */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/define-iterator.js"); +var setSpecies = __webpack_require__(/*! ../internals/set-species */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-species.js"); +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); +var fastKey = __webpack_require__(/*! ../internals/internal-metadata */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-metadata.js").fastKey; +var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-state.js"); +var setInternalState = InternalStateModule.set; +var internalStateGetterFor = InternalStateModule.getterFor; + +module.exports = { + getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) { + var C = wrapper(function (that, iterable) { + anInstance(that, C, CONSTRUCTOR_NAME); + setInternalState(that, { + type: CONSTRUCTOR_NAME, + index: create(null), + first: undefined, + last: undefined, + size: 0 + }); + if (!DESCRIPTORS) that.size = 0; + if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP); + }); + + var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME); + + var define = function (that, key, value) { + var state = getInternalState(that); + var entry = getEntry(that, key); + var previous, index; + // change existing entry + if (entry) { + entry.value = value; + // create new entry + } else { + state.last = entry = { + index: index = fastKey(key, true), + key: key, + value: value, + previous: previous = state.last, + next: undefined, + removed: false + }; + if (!state.first) state.first = entry; + if (previous) previous.next = entry; + if (DESCRIPTORS) state.size++; + else that.size++; + // add to index + if (index !== 'F') state.index[index] = entry; + } return that; + }; + + var getEntry = function (that, key) { + var state = getInternalState(that); + // fast case + var index = fastKey(key); + var entry; + if (index !== 'F') return state.index[index]; + // frozen object case + for (entry = state.first; entry; entry = entry.next) { + if (entry.key == key) return entry; + } + }; + + redefineAll(C.prototype, { + // 23.1.3.1 Map.prototype.clear() + // 23.2.3.2 Set.prototype.clear() + clear: function clear() { + var that = this; + var state = getInternalState(that); + var data = state.index; + var entry = state.first; + while (entry) { + entry.removed = true; + if (entry.previous) entry.previous = entry.previous.next = undefined; + delete data[entry.index]; + entry = entry.next; + } + state.first = state.last = undefined; + if (DESCRIPTORS) state.size = 0; + else that.size = 0; + }, + // 23.1.3.3 Map.prototype.delete(key) + // 23.2.3.4 Set.prototype.delete(value) + 'delete': function (key) { + var that = this; + var state = getInternalState(that); + var entry = getEntry(that, key); + if (entry) { + var next = entry.next; + var prev = entry.previous; + delete state.index[entry.index]; + entry.removed = true; + if (prev) prev.next = next; + if (next) next.previous = prev; + if (state.first == entry) state.first = next; + if (state.last == entry) state.last = prev; + if (DESCRIPTORS) state.size--; + else that.size--; + } return !!entry; + }, + // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) + // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) + forEach: function forEach(callbackfn /* , that = undefined */) { + var state = getInternalState(this); + var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); + var entry; + while (entry = entry ? entry.next : state.first) { + boundFunction(entry.value, entry.key, this); + // revert to the last existing entry + while (entry && entry.removed) entry = entry.previous; + } + }, + // 23.1.3.7 Map.prototype.has(key) + // 23.2.3.7 Set.prototype.has(value) + has: function has(key) { + return !!getEntry(this, key); + } + }); + + redefineAll(C.prototype, IS_MAP ? { + // 23.1.3.6 Map.prototype.get(key) + get: function get(key) { + var entry = getEntry(this, key); + return entry && entry.value; + }, + // 23.1.3.9 Map.prototype.set(key, value) + set: function set(key, value) { + return define(this, key === 0 ? 0 : key, value); + } + } : { + // 23.2.3.1 Set.prototype.add(value) + add: function add(value) { + return define(this, value = value === 0 ? 0 : value, value); + } + }); + if (DESCRIPTORS) defineProperty(C.prototype, 'size', { + get: function () { + return getInternalState(this).size; + } + }); + return C; + }, + setStrong: function (C, CONSTRUCTOR_NAME, IS_MAP) { + var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator'; + var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME); + var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME); + // add .keys, .values, .entries, [@@iterator] + // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11 + defineIterator(C, CONSTRUCTOR_NAME, function (iterated, kind) { + setInternalState(this, { + type: ITERATOR_NAME, + target: iterated, + state: getInternalCollectionState(iterated), + kind: kind, + last: undefined + }); + }, function () { + var state = getInternalIteratorState(this); + var kind = state.kind; + var entry = state.last; + // revert to the last existing entry + while (entry && entry.removed) entry = entry.previous; + // get next entry + if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) { + // or finish the iteration + state.target = undefined; + return { value: undefined, done: true }; + } + // return step by kind + if (kind == 'keys') return { value: entry.key, done: false }; + if (kind == 'values') return { value: entry.value, done: false }; + return { value: [entry.key, entry.value], done: false }; + }, IS_MAP ? 'entries' : 'values', !IS_MAP, true); + + // add [@@species], 23.1.2.2, 23.2.2.2 + setSpecies(CONSTRUCTOR_NAME); + } +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection-weak.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection-weak.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var redefineAll = __webpack_require__(/*! ../internals/redefine-all */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine-all.js"); +var getWeakData = __webpack_require__(/*! ../internals/internal-metadata */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-metadata.js").getWeakData; +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var anInstance = __webpack_require__(/*! ../internals/an-instance */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-instance.js"); +var iterate = __webpack_require__(/*! ../internals/iterate */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterate.js"); +var createArrayMethod = __webpack_require__(/*! ../internals/array-methods */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-methods.js"); +var $has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-state.js"); +var setInternalState = InternalStateModule.set; +var internalStateGetterFor = InternalStateModule.getterFor; +var arrayFind = createArrayMethod(5); +var arrayFindIndex = createArrayMethod(6); +var id = 0; + +// fallback for uncaught frozen keys +var uncaughtFrozenStore = function (store) { + return store.frozen || (store.frozen = new UncaughtFrozenStore()); +}; + +var UncaughtFrozenStore = function () { + this.entries = []; +}; + +var findUncaughtFrozen = function (store, key) { + return arrayFind(store.entries, function (it) { + return it[0] === key; + }); +}; + +UncaughtFrozenStore.prototype = { + get: function (key) { + var entry = findUncaughtFrozen(this, key); + if (entry) return entry[1]; + }, + has: function (key) { + return !!findUncaughtFrozen(this, key); + }, + set: function (key, value) { + var entry = findUncaughtFrozen(this, key); + if (entry) entry[1] = value; + else this.entries.push([key, value]); + }, + 'delete': function (key) { + var index = arrayFindIndex(this.entries, function (it) { + return it[0] === key; + }); + if (~index) this.entries.splice(index, 1); + return !!~index; + } +}; + +module.exports = { + getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) { + var C = wrapper(function (that, iterable) { + anInstance(that, C, CONSTRUCTOR_NAME); + setInternalState(that, { + type: CONSTRUCTOR_NAME, + id: id++, + frozen: undefined + }); + if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP); + }); + + var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME); + + var define = function (that, key, value) { + var state = getInternalState(that); + var data = getWeakData(anObject(key), true); + if (data === true) uncaughtFrozenStore(state).set(key, value); + else data[state.id] = value; + return that; + }; + + redefineAll(C.prototype, { + // 23.3.3.2 WeakMap.prototype.delete(key) + // 23.4.3.3 WeakSet.prototype.delete(value) + 'delete': function (key) { + var state = getInternalState(this); + if (!isObject(key)) return false; + var data = getWeakData(key); + if (data === true) return uncaughtFrozenStore(state)['delete'](key); + return data && $has(data, state.id) && delete data[state.id]; + }, + // 23.3.3.4 WeakMap.prototype.has(key) + // 23.4.3.4 WeakSet.prototype.has(value) + has: function has(key) { + var state = getInternalState(this); + if (!isObject(key)) return false; + var data = getWeakData(key); + if (data === true) return uncaughtFrozenStore(state).has(key); + return data && $has(data, state.id); + } + }); + + redefineAll(C.prototype, IS_MAP ? { + // 23.3.3.3 WeakMap.prototype.get(key) + get: function get(key) { + var state = getInternalState(this); + if (isObject(key)) { + var data = getWeakData(key); + if (data === true) return uncaughtFrozenStore(state).get(key); + return data ? data[state.id] : undefined; + } + }, + // 23.3.3.5 WeakMap.prototype.set(key, value) + set: function set(key, value) { + return define(this, key, value); + } + } : { + // 23.4.3.1 WeakSet.prototype.add(value) + add: function add(value) { + return define(this, value, true); + } + }); + + return C; + } +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var isForced = __webpack_require__(/*! ../internals/is-forced */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-forced.js"); +var $export = __webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js"); +var redefine = __webpack_require__(/*! ../internals/redefine */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js"); +var InternalMetadataModule = __webpack_require__(/*! ../internals/internal-metadata */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-metadata.js"); +var iterate = __webpack_require__(/*! ../internals/iterate */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterate.js"); +var anInstance = __webpack_require__(/*! ../internals/an-instance */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-instance.js"); +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var checkCorrectnessOfIteration = __webpack_require__(/*! ../internals/check-correctness-of-iteration */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/check-correctness-of-iteration.js"); +var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-to-string-tag.js"); +var inheritIfRequired = __webpack_require__(/*! ../internals/inherit-if-required */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/inherit-if-required.js"); + +module.exports = function (CONSTRUCTOR_NAME, wrapper, common, IS_MAP, IS_WEAK) { + var NativeConstructor = global[CONSTRUCTOR_NAME]; + var NativePrototype = NativeConstructor && NativeConstructor.prototype; + var Constructor = NativeConstructor; + var ADDER = IS_MAP ? 'set' : 'add'; + var exported = {}; + + var fixMethod = function (KEY) { + var nativeMethod = NativePrototype[KEY]; + redefine(NativePrototype, KEY, + KEY == 'add' ? function add(a) { + nativeMethod.call(this, a === 0 ? 0 : a); + return this; + } : KEY == 'delete' ? function (a) { + return IS_WEAK && !isObject(a) ? false : nativeMethod.call(this, a === 0 ? 0 : a); + } : KEY == 'get' ? function get(a) { + return IS_WEAK && !isObject(a) ? undefined : nativeMethod.call(this, a === 0 ? 0 : a); + } : KEY == 'has' ? function has(a) { + return IS_WEAK && !isObject(a) ? false : nativeMethod.call(this, a === 0 ? 0 : a); + } : function set(a, b) { + nativeMethod.call(this, a === 0 ? 0 : a, b); + return this; + } + ); + }; + + // eslint-disable-next-line max-len + if (isForced(CONSTRUCTOR_NAME, typeof NativeConstructor != 'function' || !(IS_WEAK || NativePrototype.forEach && !fails(function () { + new NativeConstructor().entries().next(); + })))) { + // create collection constructor + Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER); + InternalMetadataModule.REQUIRED = true; + } else if (isForced(CONSTRUCTOR_NAME, true)) { + var instance = new Constructor(); + // early implementations not supports chaining + var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance; + // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false + var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); }); + // most early implementations doesn't supports iterables, most modern - not close it correctly + // eslint-disable-next-line no-new + var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); }); + // for early implementations -0 and +0 not the same + var BUGGY_ZERO = !IS_WEAK && fails(function () { + // V8 ~ Chromium 42- fails only with 5+ elements + var $instance = new NativeConstructor(); + var index = 5; + while (index--) $instance[ADDER](index, index); + return !$instance.has(-0); + }); + + if (!ACCEPT_ITERABLES) { + Constructor = wrapper(function (target, iterable) { + anInstance(target, Constructor, CONSTRUCTOR_NAME); + var that = inheritIfRequired(new NativeConstructor(), target, Constructor); + if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP); + return that; + }); + Constructor.prototype = NativePrototype; + NativePrototype.constructor = Constructor; + } + + if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) { + fixMethod('delete'); + fixMethod('has'); + IS_MAP && fixMethod('get'); + } + + if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER); + + // weak collections should not contains .clear method + if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear; + } + + exported[CONSTRUCTOR_NAME] = Constructor; + $export({ global: true, forced: Constructor != NativeConstructor }, exported); + + setToStringTag(Constructor, CONSTRUCTOR_NAME); + + if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP); + + return Constructor; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/copy-constructor-properties.js": +/*!**********************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/copy-constructor-properties.js ***! + \**********************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var ownKeys = __webpack_require__(/*! ../internals/own-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/own-keys.js"); +var getOwnPropertyDescriptorModule = __webpack_require__(/*! ../internals/object-get-own-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-descriptor.js"); +var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js"); + +module.exports = function (target, source) { + var keys = ownKeys(source); + var defineProperty = definePropertyModule.f; + var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key)); + } +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/correct-is-regexp-logic.js": +/*!******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/correct-is-regexp-logic.js ***! + \******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var MATCH = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('match'); + +module.exports = function (METHOD_NAME) { + var regexp = /./; + try { + '/./'[METHOD_NAME](regexp); + } catch (e) { + try { + regexp[MATCH] = false; + return '/./'[METHOD_NAME](regexp); + } catch (f) { /* empty */ } + } return false; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/correct-prototype-getter.js": +/*!*******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/correct-prototype-getter.js ***! + \*******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = !__webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { + function F() { /* empty */ } + F.prototype.constructor = null; + return Object.getPrototypeOf(new F()) !== F.prototype; +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js"); +var quot = /"/g; + +// B.2.3.2.1 CreateHTML(string, tag, attribute, value) +// https://tc39.github.io/ecma262/#sec-createhtml +module.exports = function (string, tag, attribute, value) { + var S = String(requireObjectCoercible(string)); + var p1 = '<' + tag; + if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '"') + '"'; + return p1 + '>' + S + ''; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-iterator-constructor.js": +/*!**********************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-iterator-constructor.js ***! + \**********************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var IteratorPrototype = __webpack_require__(/*! ../internals/iterators-core */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators-core.js").IteratorPrototype; +var create = __webpack_require__(/*! ../internals/object-create */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-create.js"); +var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property-descriptor.js"); +var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-to-string-tag.js"); +var Iterators = __webpack_require__(/*! ../internals/iterators */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators.js"); + +var returnThis = function () { return this; }; + +module.exports = function (IteratorConstructor, NAME, next) { + var TO_STRING_TAG = NAME + ' Iterator'; + IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) }); + setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true); + Iterators[TO_STRING_TAG] = returnThis; + return IteratorConstructor; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property-descriptor.js": +/*!*********************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property-descriptor.js ***! + \*********************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +module.exports = function (bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value: value + }; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var toPrimitive = __webpack_require__(/*! ../internals/to-primitive */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-primitive.js"); +var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js"); +var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property-descriptor.js"); + +module.exports = function (object, key, value) { + var propertyKey = toPrimitive(key); + if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value)); + else object[propertyKey] = value; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/date-to-iso-string.js": +/*!*************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/date-to-iso-string.js ***! + \*************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var prototype = Date.prototype; +var getTime = prototype.getTime; +var nativeDateToISOString = prototype.toISOString; + +var leadingZero = function (number) { + return number > 9 ? number : '0' + number; +}; + +// `Date.prototype.toISOString` method implementation +// https://tc39.github.io/ecma262/#sec-date.prototype.toisostring +// PhantomJS / old WebKit fails here: +module.exports = (fails(function () { + return nativeDateToISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z'; +}) || !fails(function () { + nativeDateToISOString.call(new Date(NaN)); +})) ? function toISOString() { + if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value'); + var date = this; + var year = date.getUTCFullYear(); + var milliseconds = date.getUTCMilliseconds(); + var sign = year < 0 ? '-' : year > 9999 ? '+' : ''; + return sign + ('00000' + Math.abs(year)).slice(sign ? -6 : -4) + + '-' + leadingZero(date.getUTCMonth() + 1) + + '-' + leadingZero(date.getUTCDate()) + + 'T' + leadingZero(date.getUTCHours()) + + ':' + leadingZero(date.getUTCMinutes()) + + ':' + leadingZero(date.getUTCSeconds()) + + '.' + (milliseconds > 99 ? milliseconds : '0' + leadingZero(milliseconds)) + + 'Z'; +} : nativeDateToISOString; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/date-to-primitive.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/date-to-primitive.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var toPrimitive = __webpack_require__(/*! ../internals/to-primitive */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-primitive.js"); + +module.exports = function (hint) { + if (hint !== 'string' && hint !== 'number' && hint !== 'default') { + throw TypeError('Incorrect hint'); + } return toPrimitive(anObject(this), hint !== 'number'); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/define-iterator.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/define-iterator.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var $export = __webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js"); +var createIteratorConstructor = __webpack_require__(/*! ../internals/create-iterator-constructor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-iterator-constructor.js"); +var getPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-prototype-of.js"); +var setPrototypeOf = __webpack_require__(/*! ../internals/object-set-prototype-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-set-prototype-of.js"); +var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-to-string-tag.js"); +var hide = __webpack_require__(/*! ../internals/hide */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js"); +var redefine = __webpack_require__(/*! ../internals/redefine */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js"); +var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-pure.js"); +var ITERATOR = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('iterator'); +var Iterators = __webpack_require__(/*! ../internals/iterators */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators.js"); +var IteratorsCore = __webpack_require__(/*! ../internals/iterators-core */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators-core.js"); +var IteratorPrototype = IteratorsCore.IteratorPrototype; +var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS; +var KEYS = 'keys'; +var VALUES = 'values'; +var ENTRIES = 'entries'; + +var returnThis = function () { return this; }; + +module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) { + createIteratorConstructor(IteratorConstructor, NAME, next); + + var getIterationMethod = function (KIND) { + if (KIND === DEFAULT && defaultIterator) return defaultIterator; + if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND]; + switch (KIND) { + case KEYS: return function keys() { return new IteratorConstructor(this, KIND); }; + case VALUES: return function values() { return new IteratorConstructor(this, KIND); }; + case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); }; + } return function () { return new IteratorConstructor(this); }; + }; + + var TO_STRING_TAG = NAME + ' Iterator'; + var INCORRECT_VALUES_NAME = false; + var IterablePrototype = Iterable.prototype; + var nativeIterator = IterablePrototype[ITERATOR] + || IterablePrototype['@@iterator'] + || DEFAULT && IterablePrototype[DEFAULT]; + var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT); + var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator; + var CurrentIteratorPrototype, methods, KEY; + + // fix native + if (anyNativeIterator) { + CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable())); + if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) { + if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) { + if (setPrototypeOf) { + setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype); + } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') { + hide(CurrentIteratorPrototype, ITERATOR, returnThis); + } + } + // Set @@toStringTag to native iterators + setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true); + if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis; + } + } + + // fix Array#{values, @@iterator}.name in V8 / FF + if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) { + INCORRECT_VALUES_NAME = true; + defaultIterator = function values() { return nativeIterator.call(this); }; + } + + // define iterator + if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) { + hide(IterablePrototype, ITERATOR, defaultIterator); + } + Iterators[NAME] = defaultIterator; + + // export additional methods + if (DEFAULT) { + methods = { + values: getIterationMethod(VALUES), + keys: IS_SET ? defaultIterator : getIterationMethod(KEYS), + entries: getIterationMethod(ENTRIES) + }; + if (FORCED) for (KEY in methods) { + if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) { + redefine(IterablePrototype, KEY, methods[KEY]); + } + } else $export({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods); + } + + return methods; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/define-well-known-symbol.js": +/*!*******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/define-well-known-symbol.js ***! + \*******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var path = __webpack_require__(/*! ../internals/path */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/path.js"); +var has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var wrappedWellKnownSymbolModule = __webpack_require__(/*! ../internals/wrapped-well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/wrapped-well-known-symbol.js"); +var defineProperty = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js").f; + +module.exports = function (NAME) { + var Symbol = path.Symbol || (path.Symbol = {}); + if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, { + value: wrappedWellKnownSymbolModule.f(NAME) + }); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// Thank's IE8 for his funny defineProperty +module.exports = !__webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { + return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/document-create-element.js": +/*!******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/document-create-element.js ***! + \******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var document = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js").document; +// typeof document.createElement is 'object' in old IE +var exist = isObject(document) && isObject(document.createElement); + +module.exports = function (it) { + return exist ? document.createElement(it) : {}; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/dom-iterables.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/dom-iterables.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +// iterable DOM collections +// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods +module.exports = { + CSSRuleList: 0, + CSSStyleDeclaration: 0, + CSSValueList: 0, + ClientRectList: 0, + DOMRectList: 0, + DOMStringList: 0, + DOMTokenList: 1, + DataTransferItemList: 0, + FileList: 0, + HTMLAllCollection: 0, + HTMLCollection: 0, + HTMLFormElement: 0, + HTMLSelectElement: 0, + MediaList: 0, + MimeTypeArray: 0, + NamedNodeMap: 0, + NodeList: 1, + PaintRequestList: 0, + Plugin: 0, + PluginArray: 0, + SVGLengthList: 0, + SVGNumberList: 0, + SVGPathSegList: 0, + SVGPointList: 0, + SVGStringList: 0, + SVGTransformList: 0, + SourceBufferList: 0, + StyleSheetList: 0, + TextTrackCueList: 0, + TextTrackList: 0, + TouchList: 0 +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/enum-bug-keys.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/enum-bug-keys.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +// IE8- don't enum bug keys +module.exports = [ + 'constructor', + 'hasOwnProperty', + 'isPrototypeOf', + 'propertyIsEnumerable', + 'toLocaleString', + 'toString', + 'valueOf' +]; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/enum-keys.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/enum-keys.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var objectKeys = __webpack_require__(/*! ../internals/object-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys.js"); +var getOwnPropertySymbolsModule = __webpack_require__(/*! ../internals/object-get-own-property-symbols */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-symbols.js"); +var propertyIsEnumerableModule = __webpack_require__(/*! ../internals/object-property-is-enumerable */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-property-is-enumerable.js"); + +// all enumerable object keys, includes symbols +module.exports = function (it) { + var result = objectKeys(it); + var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; + if (getOwnPropertySymbols) { + var symbols = getOwnPropertySymbols(it); + var propertyIsEnumerable = propertyIsEnumerableModule.f; + var i = 0; + var key; + while (symbols.length > i) if (propertyIsEnumerable.call(it, key = symbols[i++])) result.push(key); + } return result; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js": +/*!*************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js ***! + \*************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var getOwnPropertyDescriptor = __webpack_require__(/*! ../internals/object-get-own-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-descriptor.js").f; +var hide = __webpack_require__(/*! ../internals/hide */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js"); +var redefine = __webpack_require__(/*! ../internals/redefine */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js"); +var setGlobal = __webpack_require__(/*! ../internals/set-global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-global.js"); +var copyConstructorProperties = __webpack_require__(/*! ../internals/copy-constructor-properties */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/copy-constructor-properties.js"); +var isForced = __webpack_require__(/*! ../internals/is-forced */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-forced.js"); + +/* + options.target - name of the target object + options.global - target is the global object + options.stat - export as static methods of target + options.proto - export as prototype methods of target + options.real - real prototype method for the `pure` version + options.forced - export even if the native feature is available + options.bind - bind methods to the target, required for the `pure` version + options.wrap - wrap constructors to preventing global pollution, required for the `pure` version + options.unsafe - use the simple assignment of property instead of delete + defineProperty + options.sham - add a flag to not completely full polyfills + options.enumerable - export as enumerable property + options.noTargetGet - prevent calling a getter on target +*/ +module.exports = function (options, source) { + var TARGET = options.target; + var GLOBAL = options.global; + var STATIC = options.stat; + var FORCED, target, key, targetProperty, sourceProperty, descriptor; + if (GLOBAL) { + target = global; + } else if (STATIC) { + target = global[TARGET] || setGlobal(TARGET, {}); + } else { + target = (global[TARGET] || {}).prototype; + } + if (target) for (key in source) { + sourceProperty = source[key]; + if (options.noTargetGet) { + descriptor = getOwnPropertyDescriptor(target, key); + targetProperty = descriptor && descriptor.value; + } else targetProperty = target[key]; + FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced); + // contained in target + if (!FORCED && targetProperty !== undefined) { + if (typeof sourceProperty === typeof targetProperty) continue; + copyConstructorProperties(sourceProperty, targetProperty); + } + // add a flag to not completely full polyfills + if (options.sham || (targetProperty && targetProperty.sham)) { + hide(sourceProperty, 'sham', true); + } + // extend global + redefine(target, key, sourceProperty, options); + } +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js": +/*!************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js ***! + \************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +module.exports = function (exec) { + try { + return !!exec(); + } catch (error) { + return true; + } +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js": +/*!*****************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js ***! + \*****************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var hide = __webpack_require__(/*! ../internals/hide */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js"); +var redefine = __webpack_require__(/*! ../internals/redefine */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js"); +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js"); +var regexpExec = __webpack_require__(/*! ../internals/regexp-exec */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec.js"); + +var SPECIES = wellKnownSymbol('species'); + +var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () { + // #replace needs built-in support for named groups. + // #match works fine because it just return the exec results, even if it has + // a "grops" property. + var re = /./; + re.exec = function () { + var result = []; + result.groups = { a: '7' }; + return result; + }; + return ''.replace(re, '$') !== '7'; +}); + +// Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec +// Weex JS has frozen built-in prototypes, so use try / catch wrapper +var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () { + var re = /(?:)/; + var originalExec = re.exec; + re.exec = function () { return originalExec.apply(this, arguments); }; + var result = 'ab'.split(re); + return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b'; +}); + +module.exports = function (KEY, length, exec, sham) { + var SYMBOL = wellKnownSymbol(KEY); + + var DELEGATES_TO_SYMBOL = !fails(function () { + // String methods call symbol-named RegEp methods + var O = {}; + O[SYMBOL] = function () { return 7; }; + return ''[KEY](O) != 7; + }); + + var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () { + // Symbol-named RegExp methods call .exec + var execCalled = false; + var re = /a/; + re.exec = function () { execCalled = true; return null; }; + + if (KEY === 'split') { + // RegExp[@@split] doesn't call the regex's exec method, but first creates + // a new one. We need to return the patched regex when creating the new one. + re.constructor = {}; + re.constructor[SPECIES] = function () { return re; }; + } + + re[SYMBOL](''); + return !execCalled; + }); + + if ( + !DELEGATES_TO_SYMBOL || + !DELEGATES_TO_EXEC || + (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) || + (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC) + ) { + var nativeRegExpMethod = /./[SYMBOL]; + var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) { + if (regexp.exec === regexpExec) { + if (DELEGATES_TO_SYMBOL && !forceStringMethod) { + // The native String method already delegates to @@method (this + // polyfilled function), leasing to infinite recursion. + // We avoid it by directly calling the native @@method method. + return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) }; + } + return { done: true, value: nativeMethod.call(str, regexp, arg2) }; + } + return { done: false }; + }); + var stringMethod = methods[0]; + var regexMethod = methods[1]; + + redefine(String.prototype, KEY, stringMethod); + redefine(RegExp.prototype, SYMBOL, length == 2 + // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue) + // 21.2.5.11 RegExp.prototype[@@split](string, limit) + ? function (string, arg) { return regexMethod.call(string, this, arg); } + // 21.2.5.6 RegExp.prototype[@@match](string) + // 21.2.5.9 RegExp.prototype[@@search](string) + : function (string) { return regexMethod.call(string, this); } + ); + if (sham) hide(RegExp.prototype[SYMBOL], 'sham', true); + } +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js": +/*!********************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js ***! + \********************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); + +// check the existence of a method, lowercase +// of a tag and escaping quotes in arguments +module.exports = function (METHOD_NAME) { + return fails(function () { + var test = ''[METHOD_NAME]('"'); + return test !== test.toLowerCase() || test.split('"').length > 3; + }); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-trim-method.js": +/*!********************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-trim-method.js ***! + \********************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var whitespaces = __webpack_require__(/*! ../internals/whitespaces */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/whitespaces.js"); +var non = '\u200B\u0085\u180E'; + +// check that a method works with the correct list +// of whitespaces and has a correct name +module.exports = function (METHOD_NAME) { + return fails(function () { + return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME; + }); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/freezing.js": +/*!***************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/freezing.js ***! + \***************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = !__webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { + return Object.isExtensible(Object.preventExtensions({})); +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/function-bind.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/function-bind.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var aFunction = __webpack_require__(/*! ../internals/a-function */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/a-function.js"); +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var arraySlice = [].slice; +var factories = {}; + +var construct = function (C, argsLength, args) { + if (!(argsLength in factories)) { + for (var list = [], i = 0; i < argsLength; i++) list[i] = 'a[' + i + ']'; + // eslint-disable-next-line no-new-func + factories[argsLength] = Function('C,a', 'return new C(' + list.join(',') + ')'); + } return factories[argsLength](C, args); +}; + +// `Function.prototype.bind` method implementation +// https://tc39.github.io/ecma262/#sec-function.prototype.bind +module.exports = Function.bind || function bind(that /* , ...args */) { + var fn = aFunction(this); + var partArgs = arraySlice.call(arguments, 1); + var boundFunction = function bound(/* args... */) { + var args = partArgs.concat(arraySlice.call(arguments)); + return this instanceof boundFunction ? construct(fn, args.length, args) : fn.apply(that, args); + }; + if (isObject(fn.prototype)) boundFunction.prototype = fn.prototype; + return boundFunction; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/function-to-string.js": +/*!*************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/function-to-string.js ***! + \*************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(/*! ../internals/shared */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared.js")('native-function-to-string', Function.toString); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/get-built-in.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/get-built-in.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var path = __webpack_require__(/*! ../internals/path */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/path.js"); +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); + +var aFunction = function (variable) { + return typeof variable == 'function' ? variable : undefined; +}; + +module.exports = function (namespace, method) { + return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace]) + : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method]; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/get-iterator-method.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/get-iterator-method.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var classof = __webpack_require__(/*! ../internals/classof */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof.js"); +var ITERATOR = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('iterator'); +var Iterators = __webpack_require__(/*! ../internals/iterators */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators.js"); + +module.exports = function (it) { + if (it != undefined) return it[ITERATOR] + || it['@@iterator'] + || Iterators[classof(it)]; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js": +/*!*************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js ***! + \*************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 +module.exports = typeof window == 'object' && window && window.Math == Math ? window + : typeof self == 'object' && self && self.Math == Math ? self + // eslint-disable-next-line no-new-func + : Function('return this')(); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js": +/*!**********************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js ***! + \**********************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +var hasOwnProperty = {}.hasOwnProperty; + +module.exports = function (it, key) { + return hasOwnProperty.call(it, key); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hidden-keys.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hidden-keys.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +module.exports = {}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js": +/*!***********************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js ***! + \***********************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js"); +var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property-descriptor.js"); + +module.exports = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js") ? function (object, key, value) { + return definePropertyModule.f(object, key, createPropertyDescriptor(1, value)); +} : function (object, key, value) { + object[key] = value; + return object; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/host-report-errors.js": +/*!*************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/host-report-errors.js ***! + \*************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); + +module.exports = function (a, b) { + var console = global.console; + if (console && console.error) { + arguments.length === 1 ? console.error(a) : console.error(a, b); + } +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/html.js": +/*!***********************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/html.js ***! + \***********************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var document = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js").document; + +module.exports = document && document.documentElement; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/ie8-dom-define.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/ie8-dom-define.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// Thank's IE8 for his funny defineProperty +module.exports = !__webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js") && !__webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { + return Object.defineProperty(__webpack_require__(/*! ../internals/document-create-element */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/document-create-element.js")('div'), 'a', { + get: function () { return 7; } + }).a != 7; +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/indexed-object.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/indexed-object.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// fallback for non-array-like ES3 and non-enumerable old V8 strings +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var classof = __webpack_require__(/*! ../internals/classof-raw */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js"); +var split = ''.split; + +module.exports = fails(function () { + // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346 + // eslint-disable-next-line no-prototype-builtins + return !Object('z').propertyIsEnumerable(0); +}) ? function (it) { + return classof(it) == 'String' ? split.call(it, '') : Object(it); +} : Object; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/inherit-if-required.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/inherit-if-required.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var setPrototypeOf = __webpack_require__(/*! ../internals/object-set-prototype-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-set-prototype-of.js"); + +module.exports = function (that, target, C) { + var S = target.constructor; + var P; + if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) { + setPrototypeOf(that, P); + } return that; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-metadata.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-metadata.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var METADATA = __webpack_require__(/*! ../internals/uid */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/uid.js")('meta'); +var FREEZING = __webpack_require__(/*! ../internals/freezing */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/freezing.js"); +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var defineProperty = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js").f; +var id = 0; + +var isExtensible = Object.isExtensible || function () { + return true; +}; + +var setMetadata = function (it) { + defineProperty(it, METADATA, { value: { + objectID: 'O' + ++id, // object ID + weakData: {} // weak collections IDs + } }); +}; + +var fastKey = function (it, create) { + // return a primitive with prefix + if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it; + if (!has(it, METADATA)) { + // can't set metadata to uncaught frozen object + if (!isExtensible(it)) return 'F'; + // not necessary to add metadata + if (!create) return 'E'; + // add missing metadata + setMetadata(it); + // return object ID + } return it[METADATA].objectID; +}; + +var getWeakData = function (it, create) { + if (!has(it, METADATA)) { + // can't set metadata to uncaught frozen object + if (!isExtensible(it)) return true; + // not necessary to add metadata + if (!create) return false; + // add missing metadata + setMetadata(it); + // return the store of weak collections IDs + } return it[METADATA].weakData; +}; + +// add metadata on freeze-family methods calling +var onFreeze = function (it) { + if (FREEZING && meta.REQUIRED && isExtensible(it) && !has(it, METADATA)) setMetadata(it); + return it; +}; + +var meta = module.exports = { + REQUIRED: false, + fastKey: fastKey, + getWeakData: getWeakData, + onFreeze: onFreeze +}; + +__webpack_require__(/*! ../internals/hidden-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hidden-keys.js")[METADATA] = true; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-state.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-state.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var NATIVE_WEAK_MAP = __webpack_require__(/*! ../internals/native-weak-map */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/native-weak-map.js"); +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var hide = __webpack_require__(/*! ../internals/hide */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js"); +var objectHas = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var sharedKey = __webpack_require__(/*! ../internals/shared-key */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared-key.js"); +var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hidden-keys.js"); +var WeakMap = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js").WeakMap; +var set, get, has; + +var enforce = function (it) { + return has(it) ? get(it) : set(it, {}); +}; + +var getterFor = function (TYPE) { + return function (it) { + var state; + if (!isObject(it) || (state = get(it)).type !== TYPE) { + throw TypeError('Incompatible receiver, ' + TYPE + ' required'); + } return state; + }; +}; + +if (NATIVE_WEAK_MAP) { + var store = new WeakMap(); + var wmget = store.get; + var wmhas = store.has; + var wmset = store.set; + set = function (it, metadata) { + wmset.call(store, it, metadata); + return metadata; + }; + get = function (it) { + return wmget.call(store, it) || {}; + }; + has = function (it) { + return wmhas.call(store, it); + }; +} else { + var STATE = sharedKey('state'); + hiddenKeys[STATE] = true; + set = function (it, metadata) { + hide(it, STATE, metadata); + return metadata; + }; + get = function (it) { + return objectHas(it, STATE) ? it[STATE] : {}; + }; + has = function (it) { + return objectHas(it, STATE); + }; +} + +module.exports = { + set: set, + get: get, + has: has, + enforce: enforce, + getterFor: getterFor +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array-iterator-method.js": +/*!*******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array-iterator-method.js ***! + \*******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// check on default Array iterator +var Iterators = __webpack_require__(/*! ../internals/iterators */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators.js"); +var ITERATOR = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('iterator'); +var ArrayPrototype = Array.prototype; + +module.exports = function (it) { + return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array.js": +/*!***************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array.js ***! + \***************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var classof = __webpack_require__(/*! ../internals/classof-raw */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js"); + +// `IsArray` abstract operation +// https://tc39.github.io/ecma262/#sec-isarray +module.exports = Array.isArray || function isArray(arg) { + return classof(arg) == 'Array'; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-forced.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-forced.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var replacement = /#|\.prototype\./; + +var isForced = function (feature, detection) { + var value = data[normalize(feature)]; + return value == POLYFILL ? true + : value == NATIVE ? false + : typeof detection == 'function' ? fails(detection) + : !!detection; +}; + +var normalize = isForced.normalize = function (string) { + return String(string).replace(replacement, '.').toLowerCase(); +}; + +var data = isForced.data = {}; +var NATIVE = isForced.NATIVE = 'N'; +var POLYFILL = isForced.POLYFILL = 'P'; + +module.exports = isForced; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-integer.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-integer.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var floor = Math.floor; + +// `Number.isInteger` method implementation +// https://tc39.github.io/ecma262/#sec-number.isinteger +module.exports = function isInteger(it) { + return !isObject(it) && isFinite(it) && floor(it) === it; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +module.exports = function (it) { + return typeof it === 'object' ? it !== null : typeof it === 'function'; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-pure.js": +/*!**************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-pure.js ***! + \**************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +module.exports = false; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-regexp.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-regexp.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var classof = __webpack_require__(/*! ../internals/classof-raw */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js"); +var MATCH = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('match'); + +// `IsRegExp` abstract operation +// https://tc39.github.io/ecma262/#sec-isregexp +module.exports = function (it) { + var isRegExp; + return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp'); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterate.js": +/*!**************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterate.js ***! + \**************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var isArrayIteratorMethod = __webpack_require__(/*! ../internals/is-array-iterator-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array-iterator-method.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); +var bind = __webpack_require__(/*! ../internals/bind-context */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/bind-context.js"); +var getIteratorMethod = __webpack_require__(/*! ../internals/get-iterator-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/get-iterator-method.js"); +var callWithSafeIterationClosing = __webpack_require__(/*! ../internals/call-with-safe-iteration-closing */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/call-with-safe-iteration-closing.js"); +var BREAK = {}; + +var exports = module.exports = function (iterable, fn, that, ENTRIES, ITERATOR) { + var boundFunction = bind(fn, that, ENTRIES ? 2 : 1); + var iterator, iterFn, index, length, result, step; + + if (ITERATOR) { + iterator = iterable; + } else { + iterFn = getIteratorMethod(iterable); + if (typeof iterFn != 'function') throw TypeError('Target is not iterable'); + // optimisation for array iterators + if (isArrayIteratorMethod(iterFn)) { + for (index = 0, length = toLength(iterable.length); length > index; index++) { + result = ENTRIES ? boundFunction(anObject(step = iterable[index])[0], step[1]) : boundFunction(iterable[index]); + if (result === BREAK) return BREAK; + } return; + } + iterator = iterFn.call(iterable); + } + + while (!(step = iterator.next()).done) { + if (callWithSafeIterationClosing(iterator, boundFunction, step.value, ENTRIES) === BREAK) return BREAK; + } +}; + +exports.BREAK = BREAK; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators-core.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators-core.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var getPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-prototype-of.js"); +var hide = __webpack_require__(/*! ../internals/hide */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js"); +var has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-pure.js"); +var ITERATOR = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('iterator'); +var BUGGY_SAFARI_ITERATORS = false; + +var returnThis = function () { return this; }; + +// `%IteratorPrototype%` object +// https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object +var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator; + +if ([].keys) { + arrayIterator = [].keys(); + // Safari 8 has buggy iterators w/o `next` + if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true; + else { + PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator)); + if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype; + } +} + +if (IteratorPrototype == undefined) IteratorPrototype = {}; + +// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() +if (!IS_PURE && !has(IteratorPrototype, ITERATOR)) hide(IteratorPrototype, ITERATOR, returnThis); + +module.exports = { + IteratorPrototype: IteratorPrototype, + BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +module.exports = {}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-expm1.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-expm1.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +var nativeExpm1 = Math.expm1; + +// `Math.expm1` method implementation +// https://tc39.github.io/ecma262/#sec-math.expm1 +module.exports = (!nativeExpm1 + // Old FF bug + || nativeExpm1(10) > 22025.465794806719 || nativeExpm1(10) < 22025.4657948067165168 + // Tor Browser bug + || nativeExpm1(-2e-17) != -2e-17 +) ? function expm1(x) { + return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1; +} : nativeExpm1; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-fround.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-fround.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var sign = __webpack_require__(/*! ../internals/math-sign */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-sign.js"); +var pow = Math.pow; +var EPSILON = pow(2, -52); +var EPSILON32 = pow(2, -23); +var MAX32 = pow(2, 127) * (2 - EPSILON32); +var MIN32 = pow(2, -126); + +var roundTiesToEven = function (n) { + return n + 1 / EPSILON - 1 / EPSILON; +}; + +// `Math.fround` method implementation +// https://tc39.github.io/ecma262/#sec-math.fround +module.exports = Math.fround || function fround(x) { + var $abs = Math.abs(x); + var $sign = sign(x); + var a, result; + if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32; + a = (1 + EPSILON32 / EPSILON) * $abs; + result = a - (a - $abs); + // eslint-disable-next-line no-self-compare + if (result > MAX32 || result != result) return $sign * Infinity; + return $sign * result; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-log1p.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-log1p.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +// `Math.log1p` method implementation +// https://tc39.github.io/ecma262/#sec-math.log1p +module.exports = Math.log1p || function log1p(x) { + return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-sign.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-sign.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +// `Math.sign` method implementation +// https://tc39.github.io/ecma262/#sec-math.sign +module.exports = Math.sign || function sign(x) { + // eslint-disable-next-line no-self-compare + return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/microtask.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/microtask.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var getOwnPropertyDescriptor = __webpack_require__(/*! ../internals/object-get-own-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-descriptor.js").f; +var classof = __webpack_require__(/*! ../internals/classof-raw */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js"); +var macrotask = __webpack_require__(/*! ../internals/task */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/task.js").set; +var userAgent = __webpack_require__(/*! ../internals/user-agent */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/user-agent.js"); +var MutationObserver = global.MutationObserver || global.WebKitMutationObserver; +var process = global.process; +var Promise = global.Promise; +var IS_NODE = classof(process) == 'process'; +// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask` +var queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask'); +var queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value; + +var flush, head, last, notify, toggle, node, promise; + +// modern engines have queueMicrotask method +if (!queueMicrotask) { + flush = function () { + var parent, fn; + if (IS_NODE && (parent = process.domain)) parent.exit(); + while (head) { + fn = head.fn; + head = head.next; + try { + fn(); + } catch (error) { + if (head) notify(); + else last = undefined; + throw error; + } + } last = undefined; + if (parent) parent.enter(); + }; + + // Node.js + if (IS_NODE) { + notify = function () { + process.nextTick(flush); + }; + // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339 + } else if (MutationObserver && !/(iPhone|iPod|iPad).*AppleWebKit/i.test(userAgent)) { + toggle = true; + node = document.createTextNode(''); + new MutationObserver(flush).observe(node, { characterData: true }); // eslint-disable-line no-new + notify = function () { + node.data = toggle = !toggle; + }; + // environments with maybe non-completely correct, but existent Promise + } else if (Promise && Promise.resolve) { + // Promise.resolve without an argument throws an error in LG WebOS 2 + promise = Promise.resolve(undefined); + notify = function () { + promise.then(flush); + }; + // for other environments - macrotask based on: + // - setImmediate + // - MessageChannel + // - window.postMessag + // - onreadystatechange + // - setTimeout + } else { + notify = function () { + // strange IE + webpack dev server bug - use .call(global) + macrotask.call(global, flush); + }; + } +} + +module.exports = queueMicrotask || function (fn) { + var task = { fn: fn, next: undefined }; + if (last) last.next = task; + if (!head) { + head = task; + notify(); + } last = task; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/native-symbol.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/native-symbol.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// Chrome 38 Symbol has incorrect toString conversion +module.exports = !__webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { + // eslint-disable-next-line no-undef + return !String(Symbol()); +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/native-weak-map.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/native-weak-map.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var nativeFunctionToString = __webpack_require__(/*! ../internals/function-to-string */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/function-to-string.js"); +var WeakMap = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js").WeakMap; + +module.exports = typeof WeakMap === 'function' && /native code/.test(nativeFunctionToString.call(WeakMap)); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/new-promise-capability.js": +/*!*****************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/new-promise-capability.js ***! + \*****************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +// 25.4.1.5 NewPromiseCapability(C) +var aFunction = __webpack_require__(/*! ../internals/a-function */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/a-function.js"); + +var PromiseCapability = function (C) { + var resolve, reject; + this.promise = new C(function ($$resolve, $$reject) { + if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor'); + resolve = $$resolve; + reject = $$reject; + }); + this.resolve = aFunction(resolve); + this.reject = aFunction(reject); +}; + +module.exports.f = function (C) { + return new PromiseCapability(C); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/number-is-finite.js": +/*!***********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/number-is-finite.js ***! + \***********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var globalIsFinite = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js").isFinite; + +// `Number.isFinite` method +// https://tc39.github.io/ecma262/#sec-number.isfinite +module.exports = Number.isFinite || function isFinite(it) { + return typeof it == 'number' && globalIsFinite(it); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-assign.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-assign.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +// 19.1.2.1 Object.assign(target, source, ...) +var objectKeys = __webpack_require__(/*! ../internals/object-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys.js"); +var getOwnPropertySymbolsModule = __webpack_require__(/*! ../internals/object-get-own-property-symbols */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-symbols.js"); +var propertyIsEnumerableModule = __webpack_require__(/*! ../internals/object-property-is-enumerable */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-property-is-enumerable.js"); +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var IndexedObject = __webpack_require__(/*! ../internals/indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/indexed-object.js"); +var nativeAssign = Object.assign; + +// should work with symbols and should have deterministic property order (V8 bug) +module.exports = !nativeAssign || __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { + var A = {}; + var B = {}; + // eslint-disable-next-line no-undef + var symbol = Symbol(); + var alphabet = 'abcdefghijklmnopqrst'; + A[symbol] = 7; + alphabet.split('').forEach(function (chr) { B[chr] = chr; }); + return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet; +}) ? function assign(target, source) { // eslint-disable-line no-unused-vars + var T = toObject(target); + var argumentsLength = arguments.length; + var index = 1; + var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; + var propertyIsEnumerable = propertyIsEnumerableModule.f; + while (argumentsLength > index) { + var S = IndexedObject(arguments[index++]); + var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S); + var length = keys.length; + var j = 0; + var key; + while (length > j) if (propertyIsEnumerable.call(S, key = keys[j++])) T[key] = S[key]; + } return T; +} : nativeAssign; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-create.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-create.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var defineProperties = __webpack_require__(/*! ../internals/object-define-properties */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-properties.js"); +var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/enum-bug-keys.js"); +var html = __webpack_require__(/*! ../internals/html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/html.js"); +var documentCreateElement = __webpack_require__(/*! ../internals/document-create-element */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/document-create-element.js"); +var IE_PROTO = __webpack_require__(/*! ../internals/shared-key */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared-key.js")('IE_PROTO'); +var PROTOTYPE = 'prototype'; +var Empty = function () { /* empty */ }; + +// Create object with fake `null` prototype: use iframe Object with cleared prototype +var createDict = function () { + // Thrash, waste and sodomy: IE GC bug + var iframe = documentCreateElement('iframe'); + var length = enumBugKeys.length; + var lt = '<'; + var script = 'script'; + var gt = '>'; + var js = 'java' + script + ':'; + var iframeDocument; + iframe.style.display = 'none'; + html.appendChild(iframe); + iframe.src = String(js); + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(lt + script + gt + 'document.F=Object' + lt + '/' + script + gt); + iframeDocument.close(); + createDict = iframeDocument.F; + while (length--) delete createDict[PROTOTYPE][enumBugKeys[length]]; + return createDict(); +}; + +module.exports = Object.create || function create(O, Properties) { + var result; + if (O !== null) { + Empty[PROTOTYPE] = anObject(O); + result = new Empty(); + Empty[PROTOTYPE] = null; + // add "__proto__" for Object.getPrototypeOf polyfill + result[IE_PROTO] = O; + } else result = createDict(); + return Properties === undefined ? result : defineProperties(result, Properties); +}; + +__webpack_require__(/*! ../internals/hidden-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hidden-keys.js")[IE_PROTO] = true; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-properties.js": +/*!*******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-properties.js ***! + \*******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); +var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js"); +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var objectKeys = __webpack_require__(/*! ../internals/object-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys.js"); + +module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) { + anObject(O); + var keys = objectKeys(Properties); + var length = keys.length; + var i = 0; + var key; + while (length > i) definePropertyModule.f(O, key = keys[i++], Properties[key]); + return O; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js": +/*!*****************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js ***! + \*****************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); +var IE8_DOM_DEFINE = __webpack_require__(/*! ../internals/ie8-dom-define */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/ie8-dom-define.js"); +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var toPrimitive = __webpack_require__(/*! ../internals/to-primitive */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-primitive.js"); +var nativeDefineProperty = Object.defineProperty; + +exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) { + anObject(O); + P = toPrimitive(P, true); + anObject(Attributes); + if (IE8_DOM_DEFINE) try { + return nativeDefineProperty(O, P, Attributes); + } catch (error) { /* empty */ } + if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported'); + if ('value' in Attributes) O[P] = Attributes.value; + return O; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-descriptor.js": +/*!*****************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-descriptor.js ***! + \*****************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); +var propertyIsEnumerableModule = __webpack_require__(/*! ../internals/object-property-is-enumerable */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-property-is-enumerable.js"); +var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property-descriptor.js"); +var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js"); +var toPrimitive = __webpack_require__(/*! ../internals/to-primitive */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-primitive.js"); +var has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var IE8_DOM_DEFINE = __webpack_require__(/*! ../internals/ie8-dom-define */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/ie8-dom-define.js"); +var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + +exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) { + O = toIndexedObject(O); + P = toPrimitive(P, true); + if (IE8_DOM_DEFINE) try { + return nativeGetOwnPropertyDescriptor(O, P); + } catch (error) { /* empty */ } + if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names-external.js": +/*!*********************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names-external.js ***! + \*********************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window +var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js"); +var nativeGetOwnPropertyNames = __webpack_require__(/*! ../internals/object-get-own-property-names */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names.js").f; +var toString = {}.toString; + +var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames + ? Object.getOwnPropertyNames(window) : []; + +var getWindowNames = function (it) { + try { + return nativeGetOwnPropertyNames(it); + } catch (error) { + return windowNames.slice(); + } +}; + +module.exports.f = function getOwnPropertyNames(it) { + return windowNames && toString.call(it) == '[object Window]' + ? getWindowNames(it) + : nativeGetOwnPropertyNames(toIndexedObject(it)); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names.js": +/*!************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names.js ***! + \************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) +var internalObjectKeys = __webpack_require__(/*! ../internals/object-keys-internal */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys-internal.js"); +var hiddenKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/enum-bug-keys.js").concat('length', 'prototype'); + +exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { + return internalObjectKeys(O, hiddenKeys); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-symbols.js": +/*!**************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-symbols.js ***! + \**************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +exports.f = Object.getOwnPropertySymbols; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-prototype-of.js": +/*!******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-prototype-of.js ***! + \******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) +var has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var IE_PROTO = __webpack_require__(/*! ../internals/shared-key */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared-key.js")('IE_PROTO'); +var CORRECT_PROTOTYPE_GETTER = __webpack_require__(/*! ../internals/correct-prototype-getter */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/correct-prototype-getter.js"); +var ObjectPrototype = Object.prototype; + +module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) { + O = toObject(O); + if (has(O, IE_PROTO)) return O[IE_PROTO]; + if (typeof O.constructor == 'function' && O instanceof O.constructor) { + return O.constructor.prototype; + } return O instanceof Object ? ObjectPrototype : null; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys-internal.js": +/*!***************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys-internal.js ***! + \***************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js"); +var arrayIndexOf = __webpack_require__(/*! ../internals/array-includes */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-includes.js")(false); +var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hidden-keys.js"); + +module.exports = function (object, names) { + var O = toIndexedObject(object); + var i = 0; + var result = []; + var key; + for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key); + // Don't enum bug & hidden keys + while (names.length > i) if (has(O, key = names[i++])) { + ~arrayIndexOf(result, key) || result.push(key); + } + return result; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// 19.1.2.14 / 15.2.3.14 Object.keys(O) +var internalObjectKeys = __webpack_require__(/*! ../internals/object-keys-internal */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys-internal.js"); +var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/enum-bug-keys.js"); + +module.exports = Object.keys || function keys(O) { + return internalObjectKeys(O, enumBugKeys); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-property-is-enumerable.js": +/*!************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-property-is-enumerable.js ***! + \************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var nativePropertyIsEnumerable = {}.propertyIsEnumerable; +var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + +// Nashorn ~ JDK8 bug +var NASHORN_BUG = nativeGetOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1); + +exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) { + var descriptor = nativeGetOwnPropertyDescriptor(this, V); + return !!descriptor && descriptor.enumerable; +} : nativePropertyIsEnumerable; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-set-prototype-of.js": +/*!******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-set-prototype-of.js ***! + \******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// Works with __proto__ only. Old v8 can't work with null proto objects. +/* eslint-disable no-proto */ +var validateSetPrototypeOfArguments = __webpack_require__(/*! ../internals/validate-set-prototype-of-arguments */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/validate-set-prototype-of-arguments.js"); + +module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () { + var correctSetter = false; + var test = {}; + var setter; + try { + setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set; + setter.call(test, []); + correctSetter = test instanceof Array; + } catch (error) { /* empty */ } + return function setPrototypeOf(O, proto) { + validateSetPrototypeOfArguments(O, proto); + if (correctSetter) setter.call(O, proto); + else O.__proto__ = proto; + return O; + }; +}() : undefined); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-to-string.js": +/*!***********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-to-string.js ***! + \***********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var classof = __webpack_require__(/*! ../internals/classof */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof.js"); +var TO_STRING_TAG = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('toStringTag'); +var test = {}; + +test[TO_STRING_TAG] = 'z'; + +// `Object.prototype.toString` method implementation +// https://tc39.github.io/ecma262/#sec-object.prototype.tostring +module.exports = String(test) !== '[object z]' ? function toString() { + return '[object ' + classof(this) + ']'; +} : test.toString; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/own-keys.js": +/*!***************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/own-keys.js ***! + \***************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var getOwnPropertyNamesModule = __webpack_require__(/*! ../internals/object-get-own-property-names */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names.js"); +var getOwnPropertySymbolsModule = __webpack_require__(/*! ../internals/object-get-own-property-symbols */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-symbols.js"); +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var Reflect = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js").Reflect; + +// all object keys, includes non-enumerable and symbols +module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) { + var keys = getOwnPropertyNamesModule.f(anObject(it)); + var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; + return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/parse-float.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/parse-float.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var nativeParseFloat = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js").parseFloat; +var internalStringTrim = __webpack_require__(/*! ../internals/string-trim */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-trim.js"); +var whitespaces = __webpack_require__(/*! ../internals/whitespaces */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/whitespaces.js"); +var FORCED = 1 / nativeParseFloat(whitespaces + '-0') !== -Infinity; + +module.exports = FORCED ? function parseFloat(str) { + var string = internalStringTrim(String(str), 3); + var result = nativeParseFloat(string); + return result === 0 && string.charAt(0) == '-' ? -0 : result; +} : nativeParseFloat; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/parse-int.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/parse-int.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var nativeParseInt = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js").parseInt; +var internalStringTrim = __webpack_require__(/*! ../internals/string-trim */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-trim.js"); +var whitespaces = __webpack_require__(/*! ../internals/whitespaces */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/whitespaces.js"); +var hex = /^[-+]?0[xX]/; +var FORCED = nativeParseInt(whitespaces + '08') !== 8 || nativeParseInt(whitespaces + '0x16') !== 22; + +module.exports = FORCED ? function parseInt(str, radix) { + var string = internalStringTrim(String(str), 3); + return nativeParseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10)); +} : nativeParseInt; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/path.js": +/*!***********************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/path.js ***! + \***********************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/perform.js": +/*!**************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/perform.js ***! + \**************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +module.exports = function (exec) { + try { + return { error: false, value: exec() }; + } catch (error) { + return { error: true, value: error }; + } +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/promise-resolve.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/promise-resolve.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var newPromiseCapability = __webpack_require__(/*! ../internals/new-promise-capability */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/new-promise-capability.js"); + +module.exports = function (C, x) { + anObject(C); + if (isObject(x) && x.constructor === C) return x; + var promiseCapability = newPromiseCapability.f(C); + var resolve = promiseCapability.resolve; + resolve(x); + return promiseCapability.promise; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine-all.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine-all.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var redefine = __webpack_require__(/*! ../internals/redefine */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js"); + +module.exports = function (target, src, options) { + for (var key in src) redefine(target, key, src[key], options); + return target; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js": +/*!***************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js ***! + \***************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var hide = __webpack_require__(/*! ../internals/hide */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js"); +var has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var setGlobal = __webpack_require__(/*! ../internals/set-global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-global.js"); +var nativeFunctionToString = __webpack_require__(/*! ../internals/function-to-string */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/function-to-string.js"); +var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-state.js"); +var getInternalState = InternalStateModule.get; +var enforceInternalState = InternalStateModule.enforce; +var TEMPLATE = String(nativeFunctionToString).split('toString'); + +__webpack_require__(/*! ../internals/shared */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared.js")('inspectSource', function (it) { + return nativeFunctionToString.call(it); +}); + +(module.exports = function (O, key, value, options) { + var unsafe = options ? !!options.unsafe : false; + var simple = options ? !!options.enumerable : false; + var noTargetGet = options ? !!options.noTargetGet : false; + if (typeof value == 'function') { + if (typeof key == 'string' && !has(value, 'name')) hide(value, 'name', key); + enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : ''); + } + if (O === global) { + if (simple) O[key] = value; + else setGlobal(key, value); + return; + } else if (!unsafe) { + delete O[key]; + } else if (!noTargetGet && O[key]) { + simple = true; + } + if (simple) O[key] = value; + else hide(O, key, value); +// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative +})(Function.prototype, 'toString', function toString() { + return typeof this == 'function' && getInternalState(this).source || nativeFunctionToString.call(this); +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec-abstract.js": +/*!***************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec-abstract.js ***! + \***************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var classof = __webpack_require__(/*! ./classof-raw */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js"); +var regexpExec = __webpack_require__(/*! ./regexp-exec */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec.js"); + +// `RegExpExec` abstract operation +// https://tc39.github.io/ecma262/#sec-regexpexec +module.exports = function (R, S) { + var exec = R.exec; + if (typeof exec === 'function') { + var result = exec.call(R, S); + if (typeof result !== 'object') { + throw TypeError('RegExp exec method returned something other than an Object or null'); + } + return result; + } + + if (classof(R) !== 'RegExp') { + throw TypeError('RegExp#exec called on incompatible receiver'); + } + + return regexpExec.call(R, S); +}; + + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var regexpFlags = __webpack_require__(/*! ./regexp-flags */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-flags.js"); + +var nativeExec = RegExp.prototype.exec; +// This always refers to the native implementation, because the +// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js, +// which loads this file before patching the method. +var nativeReplace = String.prototype.replace; + +var patchedExec = nativeExec; + +var UPDATES_LAST_INDEX_WRONG = (function () { + var re1 = /a/; + var re2 = /b*/g; + nativeExec.call(re1, 'a'); + nativeExec.call(re2, 'a'); + return re1.lastIndex !== 0 || re2.lastIndex !== 0; +})(); + +// nonparticipating capturing group, copied from es5-shim's String#split patch. +var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined; + +var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED; + +if (PATCH) { + patchedExec = function exec(str) { + var re = this; + var lastIndex, reCopy, match, i; + + if (NPCG_INCLUDED) { + reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re)); + } + if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex; + + match = nativeExec.call(re, str); + + if (UPDATES_LAST_INDEX_WRONG && match) { + re.lastIndex = re.global ? match.index + match[0].length : lastIndex; + } + if (NPCG_INCLUDED && match && match.length > 1) { + // Fix browsers whose `exec` methods don't consistently return `undefined` + // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/ + nativeReplace.call(match[0], reCopy, function () { + for (i = 1; i < arguments.length - 2; i++) { + if (arguments[i] === undefined) match[i] = undefined; + } + }); + } + + return match; + }; +} + +module.exports = patchedExec; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-flags.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-flags.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); + +// `RegExp.prototype.flags` getter implementation +// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags +module.exports = function () { + var that = anObject(this); + var result = ''; + if (that.global) result += 'g'; + if (that.ignoreCase) result += 'i'; + if (that.multiline) result += 'm'; + if (that.unicode) result += 'u'; + if (that.sticky) result += 'y'; + return result; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js": +/*!*******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js ***! + \*******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +// `RequireObjectCoercible` abstract operation +// https://tc39.github.io/ecma262/#sec-requireobjectcoercible +module.exports = function (it) { + if (it == undefined) throw TypeError("Can't call method on " + it); + return it; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/same-value.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/same-value.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +// `SameValue` abstract operation +// https://tc39.github.io/ecma262/#sec-samevalue +module.exports = Object.is || function is(x, y) { + // eslint-disable-next-line no-self-compare + return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-global.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-global.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var hide = __webpack_require__(/*! ../internals/hide */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js"); + +module.exports = function (key, value) { + try { + hide(global, key, value); + } catch (error) { + global[key] = value; + } return value; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-species.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-species.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/get-built-in.js"); +var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js"); +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); +var SPECIES = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('species'); + +module.exports = function (CONSTRUCTOR_NAME) { + var C = getBuiltIn(CONSTRUCTOR_NAME); + var defineProperty = definePropertyModule.f; + if (DESCRIPTORS && C && !C[SPECIES]) defineProperty(C, SPECIES, { + configurable: true, + get: function () { return this; } + }); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-to-string-tag.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-to-string-tag.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var defineProperty = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js").f; +var has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var TO_STRING_TAG = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('toStringTag'); + +module.exports = function (it, TAG, STATIC) { + if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) { + defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG }); + } +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared-key.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared-key.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var shared = __webpack_require__(/*! ../internals/shared */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared.js")('keys'); +var uid = __webpack_require__(/*! ../internals/uid */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/uid.js"); + +module.exports = function (key) { + return shared[key] || (shared[key] = uid(key)); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared.js": +/*!*************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared.js ***! + \*************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var setGlobal = __webpack_require__(/*! ../internals/set-global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-global.js"); +var SHARED = '__core-js_shared__'; +var store = global[SHARED] || setGlobal(SHARED, {}); + +(module.exports = function (key, value) { + return store[key] || (store[key] = value !== undefined ? value : {}); +})('versions', []).push({ + version: '3.0.1', + mode: __webpack_require__(/*! ../internals/is-pure */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-pure.js") ? 'pure' : 'global', + copyright: '© 2019 Denis Pushkarev (zloirock.ru)' +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); + +module.exports = function (METHOD_NAME, argument) { + var method = [][METHOD_NAME]; + return !method || !fails(function () { + // eslint-disable-next-line no-useless-call,no-throw-literal + method.call(null, argument || function () { throw 1; }, 1); + }); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/species-constructor.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/species-constructor.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var aFunction = __webpack_require__(/*! ../internals/a-function */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/a-function.js"); +var SPECIES = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('species'); + +// `SpeciesConstructor` abstract operation +// https://tc39.github.io/ecma262/#sec-speciesconstructor +module.exports = function (O, defaultConstructor) { + var C = anObject(O).constructor; + var S; + return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-at.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-at.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var toInteger = __webpack_require__(/*! ../internals/to-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-integer.js"); +var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js"); +// CONVERT_TO_STRING: true -> String#at +// CONVERT_TO_STRING: false -> String#codePointAt +module.exports = function (that, pos, CONVERT_TO_STRING) { + var S = String(requireObjectCoercible(that)); + var position = toInteger(pos); + var size = S.length; + var first, second; + if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined; + first = S.charCodeAt(position); + return first < 0xD800 || first > 0xDBFF || position + 1 === size + || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF + ? CONVERT_TO_STRING ? S.charAt(position) : first + : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-repeat.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-repeat.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var toInteger = __webpack_require__(/*! ../internals/to-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-integer.js"); +var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js"); + +// `String.prototype.repeat` method implementation +// https://tc39.github.io/ecma262/#sec-string.prototype.repeat +module.exports = ''.repeat || function repeat(count) { + var str = String(requireObjectCoercible(this)); + var result = ''; + var n = toInteger(count); + if (n < 0 || n == Infinity) throw RangeError('Wrong number of repetitions'); + for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) result += str; + return result; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-trim.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-trim.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js"); +var whitespace = '[' + __webpack_require__(/*! ../internals/whitespaces */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/whitespaces.js") + ']'; +var ltrim = RegExp('^' + whitespace + whitespace + '*'); +var rtrim = RegExp(whitespace + whitespace + '*$'); + +// 1 -> String#trimStart +// 2 -> String#trimEnd +// 3 -> String#trim +module.exports = function (string, TYPE) { + string = String(requireObjectCoercible(string)); + if (TYPE & 1) string = string.replace(ltrim, ''); + if (TYPE & 2) string = string.replace(rtrim, ''); + return string; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/task.js": +/*!***********************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/task.js ***! + \***********************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var classof = __webpack_require__(/*! ../internals/classof-raw */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js"); +var bind = __webpack_require__(/*! ../internals/bind-context */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/bind-context.js"); +var html = __webpack_require__(/*! ../internals/html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/html.js"); +var createElement = __webpack_require__(/*! ../internals/document-create-element */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/document-create-element.js"); +var set = global.setImmediate; +var clear = global.clearImmediate; +var process = global.process; +var MessageChannel = global.MessageChannel; +var Dispatch = global.Dispatch; +var counter = 0; +var queue = {}; +var ONREADYSTATECHANGE = 'onreadystatechange'; +var defer, channel, port; + +var run = function () { + var id = +this; + // eslint-disable-next-line no-prototype-builtins + if (queue.hasOwnProperty(id)) { + var fn = queue[id]; + delete queue[id]; + fn(); + } +}; + +var listener = function (event) { + run.call(event.data); +}; + +// Node.js 0.9+ & IE10+ has setImmediate, otherwise: +if (!set || !clear) { + set = function setImmediate(fn) { + var args = []; + var i = 1; + while (arguments.length > i) args.push(arguments[i++]); + queue[++counter] = function () { + // eslint-disable-next-line no-new-func + (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args); + }; + defer(counter); + return counter; + }; + clear = function clearImmediate(id) { + delete queue[id]; + }; + // Node.js 0.8- + if (classof(process) == 'process') { + defer = function (id) { + process.nextTick(bind(run, id, 1)); + }; + // Sphere (JS game engine) Dispatch API + } else if (Dispatch && Dispatch.now) { + defer = function (id) { + Dispatch.now(bind(run, id, 1)); + }; + // Browsers with MessageChannel, includes WebWorkers + } else if (MessageChannel) { + channel = new MessageChannel(); + port = channel.port2; + channel.port1.onmessage = listener; + defer = bind(port.postMessage, port, 1); + // Browsers with postMessage, skip WebWorkers + // IE8 has postMessage, but it's sync & typeof its postMessage is 'object' + } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) { + defer = function (id) { + global.postMessage(id + '', '*'); + }; + global.addEventListener('message', listener, false); + // IE8- + } else if (ONREADYSTATECHANGE in createElement('script')) { + defer = function (id) { + html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () { + html.removeChild(this); + run.call(id); + }; + }; + // Rest old browsers + } else { + defer = function (id) { + setTimeout(bind(run, id, 1), 0); + }; + } +} + +module.exports = { + set: set, + clear: clear +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/this-number-value.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/this-number-value.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var classof = __webpack_require__(/*! ../internals/classof-raw */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js"); + +// `thisNumberValue` abstract operation +// https://tc39.github.io/ecma262/#sec-thisnumbervalue +module.exports = function (value) { + if (typeof value != 'number' && classof(value) != 'Number') { + throw TypeError('Incorrect invocation'); + } + return +value; +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-absolute-index.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-absolute-index.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var toInteger = __webpack_require__(/*! ../internals/to-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-integer.js"); +var max = Math.max; +var min = Math.min; + +// Helper for a popular repeating case of the spec: +// Let integer be ? ToInteger(index). +// If integer < 0, let result be max((length + integer), 0); else let result be min(length, length). +module.exports = function (index, length) { + var integer = toInteger(index); + return integer < 0 ? max(integer + length, 0) : min(integer, length); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// toObject with fallback for non-array-like ES3 strings +var IndexedObject = __webpack_require__(/*! ../internals/indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/indexed-object.js"); +var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js"); + +module.exports = function (it) { + return IndexedObject(requireObjectCoercible(it)); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-integer.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-integer.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +var ceil = Math.ceil; +var floor = Math.floor; + +// `ToInteger` abstract operation +// https://tc39.github.io/ecma262/#sec-tointeger +module.exports = function (argument) { + return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var toInteger = __webpack_require__(/*! ../internals/to-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-integer.js"); +var min = Math.min; + +// `ToLength` abstract operation +// https://tc39.github.io/ecma262/#sec-tolength +module.exports = function (argument) { + return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991 +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js"); + +// `ToObject` abstract operation +// https://tc39.github.io/ecma262/#sec-toobject +module.exports = function (argument) { + return Object(requireObjectCoercible(argument)); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-primitive.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-primitive.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// 7.1.1 ToPrimitive(input [, PreferredType]) +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +// instead of the ES6 spec version, we didn't implement @@toPrimitive case +// and the second argument - flag - preferred type is a string +module.exports = function (it, S) { + if (!isObject(it)) return it; + var fn, val; + if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; + if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; + if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; + throw TypeError("Can't convert object to primitive value"); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/uid.js": +/*!**********************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/uid.js ***! + \**********************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +var id = 0; +var postfix = Math.random(); + +module.exports = function (key) { + return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + postfix).toString(36)); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/user-agent.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/user-agent.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var navigator = global.navigator; + +module.exports = navigator && navigator.userAgent || ''; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/validate-set-prototype-of-arguments.js": +/*!******************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/validate-set-prototype-of-arguments.js ***! + \******************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); + +module.exports = function (O, proto) { + anObject(O); + if (!isObject(proto) && proto !== null) { + throw TypeError("Can't set " + String(proto) + ' as a prototype'); + } +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/validate-string-method-arguments.js": +/*!***************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/validate-string-method-arguments.js ***! + \***************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// helper for String#{startsWith, endsWith, includes} +var isRegExp = __webpack_require__(/*! ../internals/is-regexp */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-regexp.js"); +var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js"); + +module.exports = function (that, searchString, NAME) { + if (isRegExp(searchString)) { + throw TypeError('String.prototype.' + NAME + " doesn't accept regex"); + } return String(requireObjectCoercible(that)); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var store = __webpack_require__(/*! ../internals/shared */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared.js")('wks'); +var uid = __webpack_require__(/*! ../internals/uid */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/uid.js"); +var Symbol = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js").Symbol; +var NATIVE_SYMBOL = __webpack_require__(/*! ../internals/native-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/native-symbol.js"); + +module.exports = function (name) { + return store[name] || (store[name] = NATIVE_SYMBOL && Symbol[name] + || (NATIVE_SYMBOL ? Symbol : uid)('Symbol.' + name)); +}; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/whitespaces.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/whitespaces.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +// a string of all valid unicode whitespaces +// eslint-disable-next-line max-len +module.exports = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/wrapped-well-known-symbol.js": +/*!********************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/wrapped-well-known-symbol.js ***! + \********************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +exports.f = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js"); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.copy-within.js": +/*!*************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.copy-within.js ***! + \*************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Array.prototype.copyWithin` method +// https://tc39.github.io/ecma262/#sec-array.prototype.copywithin +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true }, { + copyWithin: __webpack_require__(/*! ../internals/array-copy-within */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-copy-within.js") +}); + +// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables +__webpack_require__(/*! ../internals/add-to-unscopables */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/add-to-unscopables.js")('copyWithin'); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.every.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.every.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var internalEvery = __webpack_require__(/*! ../internals/array-methods */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-methods.js")(4); + +var SLOPPY_METHOD = __webpack_require__(/*! ../internals/sloppy-array-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js")('every'); + +// `Array.prototype.every` method +// https://tc39.github.io/ecma262/#sec-array.prototype.every +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: SLOPPY_METHOD }, { + every: function every(callbackfn /* , thisArg */) { + return internalEvery(this, callbackfn, arguments[1]); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.fill.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.fill.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Array.prototype.fill` method +// https://tc39.github.io/ecma262/#sec-array.prototype.fill +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true }, { fill: __webpack_require__(/*! ../internals/array-fill */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-fill.js") }); + +// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables +__webpack_require__(/*! ../internals/add-to-unscopables */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/add-to-unscopables.js")('fill'); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.filter.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.filter.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var internalFilter = __webpack_require__(/*! ../internals/array-methods */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-methods.js")(2); + +var SPECIES_SUPPORT = __webpack_require__(/*! ../internals/array-method-has-species-support */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-method-has-species-support.js")('filter'); + +// `Array.prototype.filter` method +// https://tc39.github.io/ecma262/#sec-array.prototype.filter +// with adding support of @@species +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: !SPECIES_SUPPORT }, { + filter: function filter(callbackfn /* , thisArg */) { + return internalFilter(this, callbackfn, arguments[1]); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.find-index.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.find-index.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var internalFindIndex = __webpack_require__(/*! ../internals/array-methods */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-methods.js")(6); +var FIND_INDEX = 'findIndex'; +var SKIPS_HOLES = true; + +// Shouldn't skip holes +if (FIND_INDEX in []) Array(1)[FIND_INDEX](function () { SKIPS_HOLES = false; }); + +// `Array.prototype.findIndex` method +// https://tc39.github.io/ecma262/#sec-array.prototype.findindex +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: SKIPS_HOLES }, { + findIndex: function findIndex(callbackfn /* , that = undefined */) { + return internalFindIndex(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); + } +}); + +// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables +__webpack_require__(/*! ../internals/add-to-unscopables */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/add-to-unscopables.js")(FIND_INDEX); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.find.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.find.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var internalFind = __webpack_require__(/*! ../internals/array-methods */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-methods.js")(5); +var FIND = 'find'; +var SKIPS_HOLES = true; + +// Shouldn't skip holes +if (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; }); + +// `Array.prototype.find` method +// https://tc39.github.io/ecma262/#sec-array.prototype.find +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: SKIPS_HOLES }, { + find: function find(callbackfn /* , that = undefined */) { + return internalFind(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); + } +}); + +// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables +__webpack_require__(/*! ../internals/add-to-unscopables */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/add-to-unscopables.js")(FIND); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.for-each.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.for-each.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var forEach = __webpack_require__(/*! ../internals/array-for-each */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-for-each.js"); + +// `Array.prototype.forEach` method +// https://tc39.github.io/ecma262/#sec-array.prototype.foreach +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: [].forEach != forEach }, { forEach: forEach }); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.from.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.from.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var INCORRECT_ITERATION = !__webpack_require__(/*! ../internals/check-correctness-of-iteration */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/check-correctness-of-iteration.js")(function (iterable) { + Array.from(iterable); +}); + +// `Array.from` method +// https://tc39.github.io/ecma262/#sec-array.from +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, { + from: __webpack_require__(/*! ../internals/array-from */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-from.js") +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.index-of.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.index-of.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var internalIndexOf = __webpack_require__(/*! ../internals/array-includes */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-includes.js")(false); +var nativeIndexOf = [].indexOf; + +var NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0; +var SLOPPY_METHOD = __webpack_require__(/*! ../internals/sloppy-array-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js")('indexOf'); + +// `Array.prototype.indexOf` method +// https://tc39.github.io/ecma262/#sec-array.prototype.indexof +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || SLOPPY_METHOD }, { + indexOf: function indexOf(searchElement /* , fromIndex = 0 */) { + return NEGATIVE_ZERO + // convert -0 to +0 + ? nativeIndexOf.apply(this, arguments) || 0 + : internalIndexOf(this, searchElement, arguments[1]); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.is-array.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.is-array.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Array.isArray` method +// https://tc39.github.io/ecma262/#sec-array.isarray +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', stat: true }, { isArray: __webpack_require__(/*! ../internals/is-array */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array.js") }); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.iterator.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.iterator.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js"); +var addToUnscopables = __webpack_require__(/*! ../internals/add-to-unscopables */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/add-to-unscopables.js"); +var Iterators = __webpack_require__(/*! ../internals/iterators */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators.js"); +var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-state.js"); +var defineIterator = __webpack_require__(/*! ../internals/define-iterator */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/define-iterator.js"); +var ARRAY_ITERATOR = 'Array Iterator'; +var setInternalState = InternalStateModule.set; +var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR); + +// `Array.prototype.entries` method +// https://tc39.github.io/ecma262/#sec-array.prototype.entries +// `Array.prototype.keys` method +// https://tc39.github.io/ecma262/#sec-array.prototype.keys +// `Array.prototype.values` method +// https://tc39.github.io/ecma262/#sec-array.prototype.values +// `Array.prototype[@@iterator]` method +// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator +// `CreateArrayIterator` internal method +// https://tc39.github.io/ecma262/#sec-createarrayiterator +module.exports = defineIterator(Array, 'Array', function (iterated, kind) { + setInternalState(this, { + type: ARRAY_ITERATOR, + target: toIndexedObject(iterated), // target + index: 0, // next index + kind: kind // kind + }); +// `%ArrayIteratorPrototype%.next` method +// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next +}, function () { + var state = getInternalState(this); + var target = state.target; + var kind = state.kind; + var index = state.index++; + if (!target || index >= target.length) { + state.target = undefined; + return { value: undefined, done: true }; + } + if (kind == 'keys') return { value: index, done: false }; + if (kind == 'values') return { value: target[index], done: false }; + return { value: [index, target[index]], done: false }; +}, 'values'); + +// argumentsList[@@iterator] is %ArrayProto_values% +// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject +// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject +Iterators.Arguments = Iterators.Array; + +// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables +addToUnscopables('keys'); +addToUnscopables('values'); +addToUnscopables('entries'); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.join.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.join.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js"); +var nativeJoin = [].join; + +var ES3_STRINGS = __webpack_require__(/*! ../internals/indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/indexed-object.js") != Object; +var SLOPPY_METHOD = __webpack_require__(/*! ../internals/sloppy-array-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js")('join', ','); + +// `Array.prototype.join` method +// https://tc39.github.io/ecma262/#sec-array.prototype.join +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: ES3_STRINGS || SLOPPY_METHOD }, { + join: function join(separator) { + return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.last-index-of.js": +/*!***************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.last-index-of.js ***! + \***************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var arrayLastIndexOf = __webpack_require__(/*! ../internals/array-last-index-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-last-index-of.js"); + +// `Array.prototype.lastIndexOf` method +// https://tc39.github.io/ecma262/#sec-array.prototype.lastindexof +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: arrayLastIndexOf !== [].lastIndexOf }, { + lastIndexOf: arrayLastIndexOf +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.map.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.map.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var internalMap = __webpack_require__(/*! ../internals/array-methods */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-methods.js")(1); + +var SPECIES_SUPPORT = __webpack_require__(/*! ../internals/array-method-has-species-support */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-method-has-species-support.js")('map'); + +// `Array.prototype.map` method +// https://tc39.github.io/ecma262/#sec-array.prototype.map +// with adding support of @@species +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: !SPECIES_SUPPORT }, { + map: function map(callbackfn /* , thisArg */) { + return internalMap(this, callbackfn, arguments[1]); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.of.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.of.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createProperty = __webpack_require__(/*! ../internals/create-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property.js"); + +var ISNT_GENERIC = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { + function F() { /* empty */ } + return !(Array.of.call(F) instanceof F); +}); + +// `Array.of` method +// https://tc39.github.io/ecma262/#sec-array.of +// WebKit Array.of isn't generic +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', stat: true, forced: ISNT_GENERIC }, { + of: function of(/* ...args */) { + var index = 0; + var argumentsLength = arguments.length; + var result = new (typeof this == 'function' ? this : Array)(argumentsLength); + while (argumentsLength > index) createProperty(result, index, arguments[index++]); + result.length = argumentsLength; + return result; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.reduce-right.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.reduce-right.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var internalReduceRight = __webpack_require__(/*! ../internals/array-reduce */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-reduce.js"); + +var SLOPPY_METHOD = __webpack_require__(/*! ../internals/sloppy-array-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js")('reduceRight'); + +// `Array.prototype.reduceRight` method +// https://tc39.github.io/ecma262/#sec-array.prototype.reduceright +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: SLOPPY_METHOD }, { + reduceRight: function reduceRight(callbackfn /* , initialValue */) { + return internalReduceRight(this, callbackfn, arguments.length, arguments[1], true); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.reduce.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.reduce.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var internalReduce = __webpack_require__(/*! ../internals/array-reduce */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-reduce.js"); + +var SLOPPY_METHOD = __webpack_require__(/*! ../internals/sloppy-array-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js")('reduce'); + +// `Array.prototype.reduce` method +// https://tc39.github.io/ecma262/#sec-array.prototype.reduce +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: SLOPPY_METHOD }, { + reduce: function reduce(callbackfn /* , initialValue */) { + return internalReduce(this, callbackfn, arguments.length, arguments[1], false); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.slice.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.slice.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var isArray = __webpack_require__(/*! ../internals/is-array */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array.js"); +var toAbsoluteIndex = __webpack_require__(/*! ../internals/to-absolute-index */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-absolute-index.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); +var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js"); +var createProperty = __webpack_require__(/*! ../internals/create-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property.js"); +var SPECIES = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('species'); +var nativeSlice = [].slice; +var max = Math.max; + +var SPECIES_SUPPORT = __webpack_require__(/*! ../internals/array-method-has-species-support */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-method-has-species-support.js")('slice'); + +// `Array.prototype.slice` method +// https://tc39.github.io/ecma262/#sec-array.prototype.slice +// fallback for not array-like ES3 strings and DOM objects +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: !SPECIES_SUPPORT }, { + slice: function slice(start, end) { + var O = toIndexedObject(this); + var length = toLength(O.length); + var k = toAbsoluteIndex(start, length); + var fin = toAbsoluteIndex(end === undefined ? length : end, length); + // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible + var Constructor, result, n; + if (isArray(O)) { + Constructor = O.constructor; + // cross-realm fallback + if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) { + Constructor = undefined; + } else if (isObject(Constructor)) { + Constructor = Constructor[SPECIES]; + if (Constructor === null) Constructor = undefined; + } + if (Constructor === Array || Constructor === undefined) { + return nativeSlice.call(O, k, fin); + } + } + result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0)); + for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]); + result.length = n; + return result; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.some.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.some.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var internalSome = __webpack_require__(/*! ../internals/array-methods */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-methods.js")(3); + +var SLOPPY_METHOD = __webpack_require__(/*! ../internals/sloppy-array-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js")('some'); + +// `Array.prototype.some` method +// https://tc39.github.io/ecma262/#sec-array.prototype.some +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: SLOPPY_METHOD }, { + some: function some(callbackfn /* , thisArg */) { + return internalSome(this, callbackfn, arguments[1]); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.sort.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.sort.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var aFunction = __webpack_require__(/*! ../internals/a-function */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/a-function.js"); +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var nativeSort = [].sort; +var test = [1, 2, 3]; + +// IE8- +var FAILS_ON_UNDEFINED = fails(function () { + test.sort(undefined); +}); +// V8 bug +var FAILS_ON_NULL = fails(function () { + test.sort(null); +}); +// Old WebKit +var SLOPPY_METHOD = __webpack_require__(/*! ../internals/sloppy-array-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js")('sort'); + +var FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || SLOPPY_METHOD; + +// `Array.prototype.sort` method +// https://tc39.github.io/ecma262/#sec-array.prototype.sort +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Array', proto: true, forced: FORCED }, { + sort: function sort(comparefn) { + return comparefn === undefined + ? nativeSort.call(toObject(this)) + : nativeSort.call(toObject(this), aFunction(comparefn)); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.now.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.now.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Date.now` method +// https://tc39.github.io/ecma262/#sec-date.now +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Date', stat: true }, { + now: function now() { + return new Date().getTime(); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-iso-string.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-iso-string.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var toISOString = __webpack_require__(/*! ../internals/date-to-iso-string */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/date-to-iso-string.js"); + +// `Date.prototype.toISOString` method +// https://tc39.github.io/ecma262/#sec-date.prototype.toisostring +// PhantomJS / old WebKit has a broken implementations +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Date', proto: true, forced: Date.prototype.toISOString !== toISOString }, { + toISOString: toISOString +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-json.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-json.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var toPrimitive = __webpack_require__(/*! ../internals/to-primitive */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-primitive.js"); + +var FORCED = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { + return new Date(NaN).toJSON() !== null + || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1; +}); + +// `Date.prototype.toJSON` method +// https://tc39.github.io/ecma262/#sec-date.prototype.tojson +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Date', proto: true, forced: FORCED }, { + // eslint-disable-next-line no-unused-vars + toJSON: function toJSON(key) { + var O = toObject(this); + var pv = toPrimitive(O); + return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString(); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-primitive.js": +/*!*************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-primitive.js ***! + \*************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var hide = __webpack_require__(/*! ../internals/hide */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js"); +var TO_PRIMITIVE = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('toPrimitive'); +var dateToPrimitive = __webpack_require__(/*! ../internals/date-to-primitive */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/date-to-primitive.js"); +var DatePrototype = Date.prototype; + +// `Date.prototype[@@toPrimitive]` method +// https://tc39.github.io/ecma262/#sec-date.prototype-@@toprimitive +if (!(TO_PRIMITIVE in DatePrototype)) hide(DatePrototype, TO_PRIMITIVE, dateToPrimitive); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-string.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-string.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var DatePrototype = Date.prototype; +var INVALID_DATE = 'Invalid Date'; +var TO_STRING = 'toString'; +var nativeDateToString = DatePrototype[TO_STRING]; +var getTime = DatePrototype.getTime; + +// `Date.prototype.toString` method +// https://tc39.github.io/ecma262/#sec-date.prototype.tostring +if (new Date(NaN) + '' != INVALID_DATE) { + __webpack_require__(/*! ../internals/redefine */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js")(DatePrototype, TO_STRING, function toString() { + var value = getTime.call(this); + // eslint-disable-next-line no-self-compare + return value === value ? nativeDateToString.call(this) : INVALID_DATE; + }); +} + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.bind.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.bind.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Function.prototype.bind` method +// https://tc39.github.io/ecma262/#sec-function.prototype.bind +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Function', proto: true }, { + bind: __webpack_require__(/*! ../internals/function-bind */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/function-bind.js") +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.has-instance.js": +/*!*****************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.has-instance.js ***! + \*****************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js"); +var getPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-prototype-of.js"); +var HAS_INSTANCE = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('hasInstance'); +var FunctionPrototype = Function.prototype; + +// `Function.prototype[@@hasInstance]` method +// https://tc39.github.io/ecma262/#sec-function.prototype-@@hasinstance +if (!(HAS_INSTANCE in FunctionPrototype)) { + definePropertyModule.f(FunctionPrototype, HAS_INSTANCE, { value: function (O) { + if (typeof this != 'function' || !isObject(O)) return false; + if (!isObject(this.prototype)) return O instanceof this; + // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this: + while (O = getPrototypeOf(O)) if (this.prototype === O) return true; + return false; + } }); +} + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.name.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.name.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); +var defineProperty = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js").f; +var FunctionPrototype = Function.prototype; +var FunctionPrototypeToString = FunctionPrototype.toString; +var nameRE = /^\s*function ([^ (]*)/; +var NAME = 'name'; + +// Function instances `.name` property +// https://tc39.github.io/ecma262/#sec-function-instances-name +if (DESCRIPTORS && !(NAME in FunctionPrototype)) { + defineProperty(FunctionPrototype, NAME, { + configurable: true, + get: function () { + try { + return FunctionPrototypeToString.call(this).match(nameRE)[1]; + } catch (error) { + return ''; + } + } + }); +} + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.map.js": +/*!***********************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.map.js ***! + \***********************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +// `Map` constructor +// https://tc39.github.io/ecma262/#sec-map-objects +module.exports = __webpack_require__(/*! ../internals/collection */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection.js")('Map', function (get) { + return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; +}, __webpack_require__(/*! ../internals/collection-strong */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection-strong.js"), true); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.acosh.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.acosh.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var log1p = __webpack_require__(/*! ../internals/math-log1p */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-log1p.js"); +var nativeAcosh = Math.acosh; +var log = Math.log; +var sqrt = Math.sqrt; +var LN2 = Math.LN2; + +var FORCED = !nativeAcosh + // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509 + || Math.floor(nativeAcosh(Number.MAX_VALUE)) != 710 + // Tor Browser bug: Math.acosh(Infinity) -> NaN + || nativeAcosh(Infinity) != Infinity; + +// `Math.acosh` method +// https://tc39.github.io/ecma262/#sec-math.acosh +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true, forced: FORCED }, { + acosh: function acosh(x) { + return (x = +x) < 1 ? NaN : x > 94906265.62425156 + ? log(x) + LN2 + : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1)); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.asinh.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.asinh.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var nativeAsinh = Math.asinh; +var log = Math.log; +var sqrt = Math.sqrt; + +function asinh(x) { + return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : log(x + sqrt(x * x + 1)); +} + +// `Math.asinh` method +// https://tc39.github.io/ecma262/#sec-math.asinh +// Tor Browser bug: Math.asinh(0) -> -0 +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true, forced: !(nativeAsinh && 1 / nativeAsinh(0) > 0) }, { + asinh: asinh +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.atanh.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.atanh.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var nativeAtanh = Math.atanh; +var log = Math.log; + +// `Math.atanh` method +// https://tc39.github.io/ecma262/#sec-math.atanh +// Tor Browser bug: Math.atanh(-0) -> 0 +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true, forced: !(nativeAtanh && 1 / nativeAtanh(-0) < 0) }, { + atanh: function atanh(x) { + return (x = +x) == 0 ? x : log((1 + x) / (1 - x)) / 2; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.cbrt.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.cbrt.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var sign = __webpack_require__(/*! ../internals/math-sign */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-sign.js"); +var abs = Math.abs; +var pow = Math.pow; + +// `Math.cbrt` method +// https://tc39.github.io/ecma262/#sec-math.cbrt +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true }, { + cbrt: function cbrt(x) { + return sign(x = +x) * pow(abs(x), 1 / 3); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.clz32.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.clz32.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var floor = Math.floor; +var log = Math.log; +var LOG2E = Math.LOG2E; + +// `Math.clz32` method +// https://tc39.github.io/ecma262/#sec-math.clz32 +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true }, { + clz32: function clz32(x) { + return (x >>>= 0) ? 31 - floor(log(x + 0.5) * LOG2E) : 32; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.cosh.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.cosh.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var expm1 = __webpack_require__(/*! ../internals/math-expm1 */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-expm1.js"); +var nativeCosh = Math.cosh; +var abs = Math.abs; +var E = Math.E; + +// `Math.cosh` method +// https://tc39.github.io/ecma262/#sec-math.cosh +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true, forced: !nativeCosh || nativeCosh(710) === Infinity }, { + cosh: function cosh(x) { + var t = expm1(abs(x) - 1) + 1; + return (t + 1 / (t * E * E)) * (E / 2); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.expm1.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.expm1.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var expm1Implementation = __webpack_require__(/*! ../internals/math-expm1 */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-expm1.js"); + +// `Math.expm1` method +// https://tc39.github.io/ecma262/#sec-math.expm1 +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true, forced: expm1Implementation != Math.expm1 }, { + expm1: expm1Implementation +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.fround.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.fround.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Math.fround` method +// https://tc39.github.io/ecma262/#sec-math.fround +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true }, { fround: __webpack_require__(/*! ../internals/math-fround */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-fround.js") }); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.hypot.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.hypot.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var abs = Math.abs; +var sqrt = Math.sqrt; + +// `Math.hypot` method +// https://tc39.github.io/ecma262/#sec-math.hypot +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true }, { + hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars + var sum = 0; + var i = 0; + var aLen = arguments.length; + var larg = 0; + var arg, div; + while (i < aLen) { + arg = abs(arguments[i++]); + if (larg < arg) { + div = larg / arg; + sum = sum * div * div + 1; + larg = arg; + } else if (arg > 0) { + div = arg / larg; + sum += div * div; + } else sum += arg; + } + return larg === Infinity ? Infinity : larg * sqrt(sum); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.imul.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.imul.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var nativeImul = Math.imul; + +var FORCED = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { + return nativeImul(0xFFFFFFFF, 5) != -5 || nativeImul.length != 2; +}); + +// `Math.imul` method +// https://tc39.github.io/ecma262/#sec-math.imul +// some WebKit versions fails with big numbers, some has wrong arity +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true, forced: FORCED }, { + imul: function imul(x, y) { + var UINT16 = 0xFFFF; + var xn = +x; + var yn = +y; + var xl = UINT16 & xn; + var yl = UINT16 & yn; + return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log10.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log10.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var log = Math.log; +var LOG10E = Math.LOG10E; + +// `Math.log10` method +// https://tc39.github.io/ecma262/#sec-math.log10 +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true }, { + log10: function log10(x) { + return log(x) * LOG10E; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log1p.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log1p.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Math.log1p` method +// https://tc39.github.io/ecma262/#sec-math.log1p +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true }, { log1p: __webpack_require__(/*! ../internals/math-log1p */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-log1p.js") }); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log2.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log2.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var log = Math.log; +var LN2 = Math.LN2; + +// `Math.log2` method +// https://tc39.github.io/ecma262/#sec-math.log2 +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true }, { + log2: function log2(x) { + return log(x) / LN2; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.sign.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.sign.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Math.sign` method +// https://tc39.github.io/ecma262/#sec-math.sign +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true }, { sign: __webpack_require__(/*! ../internals/math-sign */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-sign.js") }); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.sinh.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.sinh.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var expm1 = __webpack_require__(/*! ../internals/math-expm1 */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-expm1.js"); +var abs = Math.abs; +var exp = Math.exp; +var E = Math.E; + +var FORCED = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { + return Math.sinh(-2e-17) != -2e-17; +}); + +// `Math.sinh` method +// https://tc39.github.io/ecma262/#sec-math.sinh +// V8 near Chromium 38 has a problem with very small numbers +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true, forced: FORCED }, { + sinh: function sinh(x) { + return abs(x = +x) < 1 ? (expm1(x) - expm1(-x)) / 2 : (exp(x - 1) - exp(-x - 1)) * (E / 2); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.tanh.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.tanh.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var expm1 = __webpack_require__(/*! ../internals/math-expm1 */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-expm1.js"); +var exp = Math.exp; + +// `Math.tanh` method +// https://tc39.github.io/ecma262/#sec-math.tanh +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true }, { + tanh: function tanh(x) { + var a = expm1(x = +x); + var b = expm1(-x); + return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x)); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.to-string-tag.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.to-string-tag.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// Math[@@toStringTag] property +// https://tc39.github.io/ecma262/#sec-math-@@tostringtag +__webpack_require__(/*! ../internals/set-to-string-tag */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-to-string-tag.js")(Math, 'Math', true); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.trunc.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.trunc.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var ceil = Math.ceil; +var floor = Math.floor; + +// `Math.trunc` method +// https://tc39.github.io/ecma262/#sec-math.trunc +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Math', stat: true }, { + trunc: function trunc(it) { + return (it > 0 ? floor : ceil)(it); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.constructor.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.constructor.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var isForced = __webpack_require__(/*! ../internals/is-forced */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-forced.js"); +var has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var classof = __webpack_require__(/*! ../internals/classof-raw */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js"); +var inheritIfRequired = __webpack_require__(/*! ../internals/inherit-if-required */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/inherit-if-required.js"); +var toPrimitive = __webpack_require__(/*! ../internals/to-primitive */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-primitive.js"); +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var getOwnPropertyNames = __webpack_require__(/*! ../internals/object-get-own-property-names */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names.js").f; +var getOwnPropertyDescriptor = __webpack_require__(/*! ../internals/object-get-own-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-descriptor.js").f; +var defineProperty = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js").f; +var internalStringTrim = __webpack_require__(/*! ../internals/string-trim */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-trim.js"); +var NUMBER = 'Number'; +var NativeNumber = global[NUMBER]; +var NumberPrototype = NativeNumber.prototype; + +// Opera ~12 has broken Object#toString +var BROKEN_CLASSOF = classof(__webpack_require__(/*! ../internals/object-create */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-create.js")(NumberPrototype)) == NUMBER; +var NATIVE_TRIM = 'trim' in String.prototype; + +// `ToNumber` abstract operation +// https://tc39.github.io/ecma262/#sec-tonumber +var toNumber = function (argument) { + var it = toPrimitive(argument, false); + var first, third, radix, maxCode, digits, length, i, code; + if (typeof it == 'string' && it.length > 2) { + it = NATIVE_TRIM ? it.trim() : internalStringTrim(it, 3); + first = it.charCodeAt(0); + if (first === 43 || first === 45) { + third = it.charCodeAt(2); + if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix + } else if (first === 48) { + switch (it.charCodeAt(1)) { + case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i + case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i + default: return +it; + } + digits = it.slice(2); + length = digits.length; + for (i = 0; i < length; i++) { + code = digits.charCodeAt(i); + // parseInt parses a string to a first unavailable symbol + // but ToNumber should return NaN if a string contains unavailable symbols + if (code < 48 || code > maxCode) return NaN; + } return parseInt(digits, radix); + } + } return +it; +}; + +// `Number` constructor +// https://tc39.github.io/ecma262/#sec-number-constructor +if (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) { + var NumberWrapper = function Number(value) { + var it = arguments.length < 1 ? 0 : value; + var that = this; + return that instanceof NumberWrapper + // check on 1..constructor(foo) case + && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(that); }) : classof(that) != NUMBER) + ? inheritIfRequired(new NativeNumber(toNumber(it)), that, NumberWrapper) : toNumber(it); + }; + for (var keys = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js") ? getOwnPropertyNames(NativeNumber) : ( + // ES3: + 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' + + // ES2015 (in case, if modules with ES2015 Number statics required before): + 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' + + 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger' + ).split(','), j = 0, key; keys.length > j; j++) { + if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) { + defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key)); + } + } + NumberWrapper.prototype = NumberPrototype; + NumberPrototype.constructor = NumberWrapper; + __webpack_require__(/*! ../internals/redefine */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js")(global, NUMBER, NumberWrapper); +} + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.epsilon.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.epsilon.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Number.EPSILON` constant +// https://tc39.github.io/ecma262/#sec-number.epsilon +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Number', stat: true }, { EPSILON: Math.pow(2, -52) }); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-finite.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-finite.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Number.isFinite` method +// https://tc39.github.io/ecma262/#sec-number.isfinite +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Number', stat: true }, { + isFinite: __webpack_require__(/*! ../internals/number-is-finite */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/number-is-finite.js") +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-integer.js": +/*!*************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-integer.js ***! + \*************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Number.isInteger` method +// https://tc39.github.io/ecma262/#sec-number.isinteger +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Number', stat: true }, { + isInteger: __webpack_require__(/*! ../internals/is-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-integer.js") +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-nan.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-nan.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Number.isNaN` method +// https://tc39.github.io/ecma262/#sec-number.isnan +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Number', stat: true }, { + isNaN: function isNaN(number) { + // eslint-disable-next-line no-self-compare + return number != number; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-safe-integer.js": +/*!******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-safe-integer.js ***! + \******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isInteger = __webpack_require__(/*! ../internals/is-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-integer.js"); +var abs = Math.abs; + +// `Number.isSafeInteger` method +// https://tc39.github.io/ecma262/#sec-number.issafeinteger +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Number', stat: true }, { + isSafeInteger: function isSafeInteger(number) { + return isInteger(number) && abs(number) <= 0x1FFFFFFFFFFFFF; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.max-safe-integer.js": +/*!*******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.max-safe-integer.js ***! + \*******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Number.MAX_SAFE_INTEGER` constant +// https://tc39.github.io/ecma262/#sec-number.max_safe_integer +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Number', stat: true }, { MAX_SAFE_INTEGER: 0x1FFFFFFFFFFFFF }); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.min-safe-integer.js": +/*!*******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.min-safe-integer.js ***! + \*******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Number.MIN_SAFE_INTEGER` constant +// https://tc39.github.io/ecma262/#sec-number.min_safe_integer +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Number', stat: true }, { MIN_SAFE_INTEGER: -0x1FFFFFFFFFFFFF }); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.parse-float.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.parse-float.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var parseFloat = __webpack_require__(/*! ../internals/parse-float */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/parse-float.js"); + +// `Number.parseFloat` method +// https://tc39.github.io/ecma262/#sec-number.parseFloat +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Number', stat: true, forced: Number.parseFloat != parseFloat }, { + parseFloat: parseFloat +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.parse-int.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.parse-int.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var parseInt = __webpack_require__(/*! ../internals/parse-int */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/parse-int.js"); + +// `Number.parseInt` method +// https://tc39.github.io/ecma262/#sec-number.parseint +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Number', stat: true, forced: Number.parseInt != parseInt }, { + parseInt: parseInt +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.to-fixed.js": +/*!***********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.to-fixed.js ***! + \***********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var toInteger = __webpack_require__(/*! ../internals/to-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-integer.js"); +var thisNumberValue = __webpack_require__(/*! ../internals/this-number-value */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/this-number-value.js"); +var repeat = __webpack_require__(/*! ../internals/string-repeat */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-repeat.js"); +var nativeToFixed = 1.0.toFixed; +var floor = Math.floor; +var data = [0, 0, 0, 0, 0, 0]; + +var multiply = function (n, c) { + var i = -1; + var c2 = c; + while (++i < 6) { + c2 += n * data[i]; + data[i] = c2 % 1e7; + c2 = floor(c2 / 1e7); + } +}; + +var divide = function (n) { + var i = 6; + var c = 0; + while (--i >= 0) { + c += data[i]; + data[i] = floor(c / n); + c = (c % n) * 1e7; + } +}; + +var numToString = function () { + var i = 6; + var s = ''; + while (--i >= 0) { + if (s !== '' || i === 0 || data[i] !== 0) { + var t = String(data[i]); + s = s === '' ? t : s + repeat.call('0', 7 - t.length) + t; + } + } return s; +}; + +var pow = function (x, n, acc) { + return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc); +}; + +var log = function (x) { + var n = 0; + var x2 = x; + while (x2 >= 4096) { + n += 12; + x2 /= 4096; + } + while (x2 >= 2) { + n += 1; + x2 /= 2; + } return n; +}; + +// `Number.prototype.toFixed` method +// https://tc39.github.io/ecma262/#sec-number.prototype.tofixed +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Number', proto: true, forced: nativeToFixed && ( + 0.00008.toFixed(3) !== '0.000' || + 0.9.toFixed(0) !== '1' || + 1.255.toFixed(2) !== '1.25' || + 1000000000000000128.0.toFixed(0) !== '1000000000000000128' +) || !__webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { + // V8 ~ Android 4.3- + nativeToFixed.call({}); +}) }, { + toFixed: function toFixed(fractionDigits) { + var x = thisNumberValue(this); + var f = toInteger(fractionDigits); + var s = ''; + var m = '0'; + var e, z, j, k; + if (f < 0 || f > 20) throw RangeError('Incorrect fraction digits'); + // eslint-disable-next-line no-self-compare + if (x != x) return 'NaN'; + if (x <= -1e21 || x >= 1e21) return String(x); + if (x < 0) { + s = '-'; + x = -x; + } + if (x > 1e-21) { + e = log(x * pow(2, 69, 1)) - 69; + z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1); + z *= 0x10000000000000; + e = 52 - e; + if (e > 0) { + multiply(0, z); + j = f; + while (j >= 7) { + multiply(1e7, 0); + j -= 7; + } + multiply(pow(10, j, 1), 0); + j = e - 1; + while (j >= 23) { + divide(1 << 23); + j -= 23; + } + divide(1 << j); + multiply(1, 1); + divide(2); + m = numToString(); + } else { + multiply(0, z); + multiply(1 << -e, 0); + m = numToString() + repeat.call('0', f); + } + } + if (f > 0) { + k = m.length; + m = s + (k <= f ? '0.' + repeat.call('0', f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f)); + } else { + m = s + m; + } return m; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.to-precision.js": +/*!***************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.to-precision.js ***! + \***************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var thisNumberValue = __webpack_require__(/*! ../internals/this-number-value */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/this-number-value.js"); +var nativeToPrecision = 1.0.toPrecision; + +// `Number.prototype.toPrecision` method +// https://tc39.github.io/ecma262/#sec-number.prototype.toprecision +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Number', proto: true, forced: fails(function () { + // IE7- + return nativeToPrecision.call(1, undefined) !== '1'; +}) || !fails(function () { + // V8 ~ Android 4.3- + nativeToPrecision.call({}); +}) }, { + toPrecision: function toPrecision(precision) { + return precision === undefined + ? nativeToPrecision.call(thisNumberValue(this)) + : nativeToPrecision.call(thisNumberValue(this), precision); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.assign.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.assign.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var assign = __webpack_require__(/*! ../internals/object-assign */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-assign.js"); + +// `Object.assign` method +// https://tc39.github.io/ecma262/#sec-object.assign +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: Object.assign !== assign }, { assign: assign }); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.create.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.create.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Object.create` method +// https://tc39.github.io/ecma262/#sec-object.create +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ + target: 'Object', stat: true, sham: !__webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js") +}, { create: __webpack_require__(/*! ../internals/object-create */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-create.js") }); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.define-properties.js": +/*!********************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.define-properties.js ***! + \********************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); + +// `Object.defineProperties` method +// https://tc39.github.io/ecma262/#sec-object.defineproperties +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: !DESCRIPTORS, sham: !DESCRIPTORS }, { + defineProperties: __webpack_require__(/*! ../internals/object-define-properties */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-properties.js") +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.define-property.js": +/*!******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.define-property.js ***! + \******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); + +// `Object.defineProperty` method +// https://tc39.github.io/ecma262/#sec-object.defineproperty +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: !DESCRIPTORS, sham: !DESCRIPTORS }, { + defineProperty: __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js").f +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.freeze.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.freeze.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var onFreeze = __webpack_require__(/*! ../internals/internal-metadata */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-metadata.js").onFreeze; +var nativeFreeze = Object.freeze; +var FREEZING = __webpack_require__(/*! ../internals/freezing */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/freezing.js"); +var FAILS_ON_PRIMITIVES = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { nativeFreeze(1); }); + +// `Object.freeze` method +// https://tc39.github.io/ecma262/#sec-object.freeze +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !FREEZING }, { + freeze: function freeze(it) { + return nativeFreeze && isObject(it) ? nativeFreeze(onFreeze(it)) : it; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-own-property-descriptor.js": +/*!******************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-own-property-descriptor.js ***! + \******************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js"); +var nativeGetOwnPropertyDescriptor = __webpack_require__(/*! ../internals/object-get-own-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-descriptor.js").f; +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); +var FAILS_ON_PRIMITIVES = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { nativeGetOwnPropertyDescriptor(1); }); +var FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES; + +// `Object.getOwnPropertyDescriptor` method +// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, { + getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) { + return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-own-property-names.js": +/*!*************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-own-property-names.js ***! + \*************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var nativeGetOwnPropertyNames = __webpack_require__(/*! ../internals/object-get-own-property-names-external */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names-external.js").f; +var FAILS_ON_PRIMITIVES = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { Object.getOwnPropertyNames(1); }); + +// `Object.getOwnPropertyNames` method +// https://tc39.github.io/ecma262/#sec-object.getownpropertynames +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, { + getOwnPropertyNames: nativeGetOwnPropertyNames +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-prototype-of.js": +/*!*******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-prototype-of.js ***! + \*******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var nativeGetPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-prototype-of.js"); +var CORRECT_PROTOTYPE_GETTER = __webpack_require__(/*! ../internals/correct-prototype-getter */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/correct-prototype-getter.js"); +var FAILS_ON_PRIMITIVES = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { nativeGetPrototypeOf(1); }); + +// `Object.getPrototypeOf` method +// https://tc39.github.io/ecma262/#sec-object.getprototypeof +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ + target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER +}, { + getPrototypeOf: function getPrototypeOf(it) { + return nativeGetPrototypeOf(toObject(it)); + } +}); + + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-extensible.js": +/*!****************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-extensible.js ***! + \****************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var nativeIsExtensible = Object.isExtensible; +var FAILS_ON_PRIMITIVES = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { nativeIsExtensible(1); }); + +// `Object.isExtensible` method +// https://tc39.github.io/ecma262/#sec-object.isextensible +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, { + isExtensible: function isExtensible(it) { + return isObject(it) ? nativeIsExtensible ? nativeIsExtensible(it) : true : false; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-frozen.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-frozen.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var nativeIsFrozen = Object.isFrozen; +var FAILS_ON_PRIMITIVES = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { nativeIsFrozen(1); }); + +// `Object.isFrozen` method +// https://tc39.github.io/ecma262/#sec-object.isfrozen +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, { + isFrozen: function isFrozen(it) { + return isObject(it) ? nativeIsFrozen ? nativeIsFrozen(it) : false : true; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-sealed.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-sealed.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var nativeIsSealed = Object.isSealed; +var FAILS_ON_PRIMITIVES = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { nativeIsSealed(1); }); + +// `Object.isSealed` method +// https://tc39.github.io/ecma262/#sec-object.issealed +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, { + isSealed: function isSealed(it) { + return isObject(it) ? nativeIsSealed ? nativeIsSealed(it) : false : true; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Object.is` method +// https://tc39.github.io/ecma262/#sec-object.is +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true }, { is: __webpack_require__(/*! ../internals/same-value */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/same-value.js") }); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.keys.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.keys.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var nativeKeys = __webpack_require__(/*! ../internals/object-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys.js"); +var FAILS_ON_PRIMITIVES = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { nativeKeys(1); }); + +// `Object.keys` method +// https://tc39.github.io/ecma262/#sec-object.keys +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, { + keys: function keys(it) { + return nativeKeys(toObject(it)); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.prevent-extensions.js": +/*!*********************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.prevent-extensions.js ***! + \*********************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var onFreeze = __webpack_require__(/*! ../internals/internal-metadata */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-metadata.js").onFreeze; +var nativePreventExtensions = Object.preventExtensions; +var FREEZING = __webpack_require__(/*! ../internals/freezing */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/freezing.js"); +var FAILS_ON_PRIMITIVES = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { nativePreventExtensions(1); }); + +// `Object.preventExtensions` method +// https://tc39.github.io/ecma262/#sec-object.preventextensions +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !FREEZING }, { + preventExtensions: function preventExtensions(it) { + return nativePreventExtensions && isObject(it) ? nativePreventExtensions(onFreeze(it)) : it; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.seal.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.seal.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var onFreeze = __webpack_require__(/*! ../internals/internal-metadata */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-metadata.js").onFreeze; +var nativeSeal = Object.seal; +var FREEZING = __webpack_require__(/*! ../internals/freezing */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/freezing.js"); +var FAILS_ON_PRIMITIVES = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js")(function () { nativeSeal(1); }); + +// `Object.seal` method +// https://tc39.github.io/ecma262/#sec-object.seal +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !FREEZING }, { + seal: function seal(it) { + return nativeSeal && isObject(it) ? nativeSeal(onFreeze(it)) : it; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.set-prototype-of.js": +/*!*******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.set-prototype-of.js ***! + \*******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Object.setPrototypeOf` method +// https://tc39.github.io/ecma262/#sec-object.setprototypeof +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'Object', stat: true }, { + setPrototypeOf: __webpack_require__(/*! ../internals/object-set-prototype-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-set-prototype-of.js") +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.to-string.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.to-string.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var toString = __webpack_require__(/*! ../internals/object-to-string */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-to-string.js"); +var ObjectPrototype = Object.prototype; + +// `Object.prototype.toString` method +// https://tc39.github.io/ecma262/#sec-object.prototype.tostring +if (toString !== ObjectPrototype.toString) { + __webpack_require__(/*! ../internals/redefine */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js")(ObjectPrototype, 'toString', toString, { unsafe: true }); +} + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.parse-float.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.parse-float.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var parseFloatImplementation = __webpack_require__(/*! ../internals/parse-float */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/parse-float.js"); + +// `parseFloat` method +// https://tc39.github.io/ecma262/#sec-parsefloat-string +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ global: true, forced: parseFloat != parseFloatImplementation }, { + parseFloat: parseFloatImplementation +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.parse-int.js": +/*!*****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.parse-int.js ***! + \*****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var parseIntImplementation = __webpack_require__(/*! ../internals/parse-int */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/parse-int.js"); + +// `parseInt` method +// https://tc39.github.io/ecma262/#sec-parseint-string-radix +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ global: true, forced: parseInt != parseIntImplementation }, { + parseInt: parseIntImplementation +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.promise.js": +/*!***************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.promise.js ***! + \***************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var PROMISE = 'Promise'; +var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-pure.js"); +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var $export = __webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js"); +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var aFunction = __webpack_require__(/*! ../internals/a-function */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/a-function.js"); +var anInstance = __webpack_require__(/*! ../internals/an-instance */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-instance.js"); +var classof = __webpack_require__(/*! ../internals/classof-raw */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js"); +var iterate = __webpack_require__(/*! ../internals/iterate */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterate.js"); +var checkCorrectnessOfIteration = __webpack_require__(/*! ../internals/check-correctness-of-iteration */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/check-correctness-of-iteration.js"); +var speciesConstructor = __webpack_require__(/*! ../internals/species-constructor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/species-constructor.js"); +var task = __webpack_require__(/*! ../internals/task */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/task.js").set; +var microtask = __webpack_require__(/*! ../internals/microtask */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/microtask.js"); +var promiseResolve = __webpack_require__(/*! ../internals/promise-resolve */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/promise-resolve.js"); +var hostReportErrors = __webpack_require__(/*! ../internals/host-report-errors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/host-report-errors.js"); +var newPromiseCapabilityModule = __webpack_require__(/*! ../internals/new-promise-capability */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/new-promise-capability.js"); +var perform = __webpack_require__(/*! ../internals/perform */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/perform.js"); +var userAgent = __webpack_require__(/*! ../internals/user-agent */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/user-agent.js"); +var SPECIES = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('species'); +var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-state.js"); +var isForced = __webpack_require__(/*! ../internals/is-forced */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-forced.js"); +var getInternalState = InternalStateModule.get; +var setInternalState = InternalStateModule.set; +var getInternalPromiseState = InternalStateModule.getterFor(PROMISE); +var PromiseConstructor = global[PROMISE]; +var TypeError = global.TypeError; +var document = global.document; +var process = global.process; +var $fetch = global.fetch; +var versions = process && process.versions; +var v8 = versions && versions.v8 || ''; +var newPromiseCapability = newPromiseCapabilityModule.f; +var newGenericPromiseCapability = newPromiseCapability; +var IS_NODE = classof(process) == 'process'; +var DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent); +var UNHANDLED_REJECTION = 'unhandledrejection'; +var REJECTION_HANDLED = 'rejectionhandled'; +var PENDING = 0; +var FULFILLED = 1; +var REJECTED = 2; +var HANDLED = 1; +var UNHANDLED = 2; +var Internal, OwnPromiseCapability, PromiseWrapper; + +var FORCED = isForced(PROMISE, function () { + // correct subclassing with @@species support + var promise = PromiseConstructor.resolve(1); + var empty = function () { /* empty */ }; + var FakePromise = (promise.constructor = {})[SPECIES] = function (exec) { + exec(empty, empty); + }; + // unhandled rejections tracking support, NodeJS Promise without it fails @@species test + return !((IS_NODE || typeof PromiseRejectionEvent == 'function') + && (!IS_PURE || promise['finally']) + && promise.then(empty) instanceof FakePromise + // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables + // https://bugs.chromium.org/p/chromium/issues/detail?id=830565 + // we can't detect it synchronously, so just check versions + && v8.indexOf('6.6') !== 0 + && userAgent.indexOf('Chrome/66') === -1); +}); + +var INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) { + PromiseConstructor.all(iterable)['catch'](function () { /* empty */ }); +}); + +// helpers +var isThenable = function (it) { + var then; + return isObject(it) && typeof (then = it.then) == 'function' ? then : false; +}; + +var notify = function (promise, state, isReject) { + if (state.notified) return; + state.notified = true; + var chain = state.reactions; + microtask(function () { + var value = state.value; + var ok = state.state == FULFILLED; + var i = 0; + var run = function (reaction) { + var handler = ok ? reaction.ok : reaction.fail; + var resolve = reaction.resolve; + var reject = reaction.reject; + var domain = reaction.domain; + var result, then, exited; + try { + if (handler) { + if (!ok) { + if (state.rejection === UNHANDLED) onHandleUnhandled(promise, state); + state.rejection = HANDLED; + } + if (handler === true) result = value; + else { + if (domain) domain.enter(); + result = handler(value); // may throw + if (domain) { + domain.exit(); + exited = true; + } + } + if (result === reaction.promise) { + reject(TypeError('Promise-chain cycle')); + } else if (then = isThenable(result)) { + then.call(result, resolve, reject); + } else resolve(result); + } else reject(value); + } catch (error) { + if (domain && !exited) domain.exit(); + reject(error); + } + }; + while (chain.length > i) run(chain[i++]); // variable length - can't use forEach + state.reactions = []; + state.notified = false; + if (isReject && !state.rejection) onUnhandled(promise, state); + }); +}; + +var dispatchEvent = function (name, promise, reason) { + var event, handler; + if (DISPATCH_EVENT) { + event = document.createEvent('Event'); + event.promise = promise; + event.reason = reason; + event.initEvent(name, false, true); + global.dispatchEvent(event); + } else event = { promise: promise, reason: reason }; + if (handler = global['on' + name]) handler(event); + else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason); +}; + +var onUnhandled = function (promise, state) { + task.call(global, function () { + var value = state.value; + var IS_UNHANDLED = isUnhandled(state); + var result; + if (IS_UNHANDLED) { + result = perform(function () { + if (IS_NODE) { + process.emit('unhandledRejection', value, promise); + } else dispatchEvent(UNHANDLED_REJECTION, promise, value); + }); + // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should + state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED; + if (result.error) throw result.value; + } + }); +}; + +var isUnhandled = function (state) { + return state.rejection !== HANDLED && !state.parent; +}; + +var onHandleUnhandled = function (promise, state) { + task.call(global, function () { + if (IS_NODE) { + process.emit('rejectionHandled', promise); + } else dispatchEvent(REJECTION_HANDLED, promise, state.value); + }); +}; + +var bind = function (fn, promise, state, unwrap) { + return function (value) { + fn(promise, state, value, unwrap); + }; +}; + +var internalReject = function (promise, state, value, unwrap) { + if (state.done) return; + state.done = true; + if (unwrap) state = unwrap; + state.value = value; + state.state = REJECTED; + notify(promise, state, true); +}; + +var internalResolve = function (promise, state, value, unwrap) { + if (state.done) return; + state.done = true; + if (unwrap) state = unwrap; + try { + if (promise === value) throw TypeError("Promise can't be resolved itself"); + var then = isThenable(value); + if (then) { + microtask(function () { + var wrapper = { done: false }; + try { + then.call(value, + bind(internalResolve, promise, wrapper, state), + bind(internalReject, promise, wrapper, state) + ); + } catch (error) { + internalReject(promise, wrapper, error, state); + } + }); + } else { + state.value = value; + state.state = FULFILLED; + notify(promise, state, false); + } + } catch (error) { + internalReject(promise, { done: false }, error, state); + } +}; + +// constructor polyfill +if (FORCED) { + // 25.4.3.1 Promise(executor) + PromiseConstructor = function Promise(executor) { + anInstance(this, PromiseConstructor, PROMISE); + aFunction(executor); + Internal.call(this); + var state = getInternalState(this); + try { + executor(bind(internalResolve, this, state), bind(internalReject, this, state)); + } catch (error) { + internalReject(this, state, error); + } + }; + // eslint-disable-next-line no-unused-vars + Internal = function Promise(executor) { + setInternalState(this, { + type: PROMISE, + done: false, + notified: false, + parent: false, + reactions: [], + rejection: false, + state: PENDING, + value: undefined + }); + }; + Internal.prototype = __webpack_require__(/*! ../internals/redefine-all */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine-all.js")(PromiseConstructor.prototype, { + // `Promise.prototype.then` method + // https://tc39.github.io/ecma262/#sec-promise.prototype.then + then: function then(onFulfilled, onRejected) { + var state = getInternalPromiseState(this); + var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor)); + reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true; + reaction.fail = typeof onRejected == 'function' && onRejected; + reaction.domain = IS_NODE ? process.domain : undefined; + state.parent = true; + state.reactions.push(reaction); + if (state.state != PENDING) notify(this, state, false); + return reaction.promise; + }, + // `Promise.prototype.catch` method + // https://tc39.github.io/ecma262/#sec-promise.prototype.catch + 'catch': function (onRejected) { + return this.then(undefined, onRejected); + } + }); + OwnPromiseCapability = function () { + var promise = new Internal(); + var state = getInternalState(promise); + this.promise = promise; + this.resolve = bind(internalResolve, promise, state); + this.reject = bind(internalReject, promise, state); + }; + newPromiseCapabilityModule.f = newPromiseCapability = function (C) { + return C === PromiseConstructor || C === PromiseWrapper + ? new OwnPromiseCapability(C) + : newGenericPromiseCapability(C); + }; + + // wrap fetch result + if (!IS_PURE && typeof $fetch == 'function') $export({ global: true, enumerable: true, forced: true }, { + // eslint-disable-next-line no-unused-vars + fetch: function fetch(input) { + return promiseResolve(PromiseConstructor, $fetch.apply(global, arguments)); + } + }); +} + +$export({ global: true, wrap: true, forced: FORCED }, { Promise: PromiseConstructor }); + +__webpack_require__(/*! ../internals/set-to-string-tag */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-to-string-tag.js")(PromiseConstructor, PROMISE, false, true); +__webpack_require__(/*! ../internals/set-species */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-species.js")(PROMISE); + +PromiseWrapper = __webpack_require__(/*! ../internals/path */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/path.js")[PROMISE]; + +// statics +$export({ target: PROMISE, stat: true, forced: FORCED }, { + // `Promise.reject` method + // https://tc39.github.io/ecma262/#sec-promise.reject + reject: function reject(r) { + var capability = newPromiseCapability(this); + capability.reject.call(undefined, r); + return capability.promise; + } +}); + +$export({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, { + // `Promise.resolve` method + // https://tc39.github.io/ecma262/#sec-promise.resolve + resolve: function resolve(x) { + return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x); + } +}); + +$export({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, { + // `Promise.all` method + // https://tc39.github.io/ecma262/#sec-promise.all + all: function all(iterable) { + var C = this; + var capability = newPromiseCapability(C); + var resolve = capability.resolve; + var reject = capability.reject; + var result = perform(function () { + var values = []; + var counter = 0; + var remaining = 1; + iterate(iterable, function (promise) { + var index = counter++; + var alreadyCalled = false; + values.push(undefined); + remaining++; + C.resolve(promise).then(function (value) { + if (alreadyCalled) return; + alreadyCalled = true; + values[index] = value; + --remaining || resolve(values); + }, reject); + }); + --remaining || resolve(values); + }); + if (result.error) reject(result.value); + return capability.promise; + }, + // `Promise.race` method + // https://tc39.github.io/ecma262/#sec-promise.race + race: function race(iterable) { + var C = this; + var capability = newPromiseCapability(C); + var reject = capability.reject; + var result = perform(function () { + iterate(iterable, function (promise) { + C.resolve(promise).then(capability.resolve, reject); + }); + }); + if (result.error) reject(result.value); + return capability.promise; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.constructor.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.constructor.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); +var MATCH = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js")('match'); +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var isForced = __webpack_require__(/*! ../internals/is-forced */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-forced.js"); +var inheritIfRequired = __webpack_require__(/*! ../internals/inherit-if-required */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/inherit-if-required.js"); +var defineProperty = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js").f; +var getOwnPropertyNames = __webpack_require__(/*! ../internals/object-get-own-property-names */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names.js").f; +var isRegExp = __webpack_require__(/*! ../internals/is-regexp */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-regexp.js"); +var getFlags = __webpack_require__(/*! ../internals/regexp-flags */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-flags.js"); +var redefine = __webpack_require__(/*! ../internals/redefine */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js"); +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var NativeRegExp = global.RegExp; +var RegExpPrototype = NativeRegExp.prototype; +var re1 = /a/g; +var re2 = /a/g; + +// "new" should create a new object, old webkit bug +var CORRECT_NEW = new NativeRegExp(re1) !== re1; + +var FORCED = isForced('RegExp', DESCRIPTORS && (!CORRECT_NEW || fails(function () { + re2[MATCH] = false; + // RegExp constructor can alter flags and IsRegExp works correct with @@match + return NativeRegExp(re1) != re1 || NativeRegExp(re2) == re2 || NativeRegExp(re1, 'i') != '/a/i'; +}))); + +// `RegExp` constructor +// https://tc39.github.io/ecma262/#sec-regexp-constructor +if (FORCED) { + var RegExpWrapper = function RegExp(pattern, flags) { + var thisIsRegExp = this instanceof RegExpWrapper; + var patternIsRegExp = isRegExp(pattern); + var flagsAreUndefined = flags === undefined; + return !thisIsRegExp && patternIsRegExp && pattern.constructor === RegExpWrapper && flagsAreUndefined ? pattern + : inheritIfRequired(CORRECT_NEW + ? new NativeRegExp(patternIsRegExp && !flagsAreUndefined ? pattern.source : pattern, flags) + : NativeRegExp((patternIsRegExp = pattern instanceof RegExpWrapper) + ? pattern.source + : pattern, patternIsRegExp && flagsAreUndefined ? getFlags.call(pattern) : flags) + , thisIsRegExp ? this : RegExpPrototype, RegExpWrapper); + }; + var proxy = function (key) { + key in RegExpWrapper || defineProperty(RegExpWrapper, key, { + configurable: true, + get: function () { return NativeRegExp[key]; }, + set: function (it) { NativeRegExp[key] = it; } + }); + }; + var keys = getOwnPropertyNames(NativeRegExp); + var i = 0; + while (i < keys.length) proxy(keys[i++]); + RegExpPrototype.constructor = RegExpWrapper; + RegExpWrapper.prototype = RegExpPrototype; + redefine(global, 'RegExp', RegExpWrapper); +} + +// https://tc39.github.io/ecma262/#sec-get-regexp-@@species +__webpack_require__(/*! ../internals/set-species */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-species.js")('RegExp'); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.exec.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.exec.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var regexpExec = __webpack_require__(/*! ../internals/regexp-exec */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec.js"); + +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'RegExp', proto: true, forced: /./.exec !== regexpExec }, { + exec: regexpExec +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.flags.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.flags.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `RegExp.prototype.flags` getter +// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags +if (__webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js") && /./g.flags != 'g') { + __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js").f(RegExp.prototype, 'flags', { + configurable: true, + get: __webpack_require__(/*! ../internals/regexp-flags */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-flags.js") + }); +} + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.to-string.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.to-string.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var flags = __webpack_require__(/*! ../internals/regexp-flags */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-flags.js"); +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); +var TO_STRING = 'toString'; +var nativeToString = /./[TO_STRING]; + +var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; }); +// FF44- RegExp#toString has a wrong name +var INCORRECT_NAME = nativeToString.name != TO_STRING; + +// `RegExp.prototype.toString` method +// https://tc39.github.io/ecma262/#sec-regexp.prototype.tostring +if (NOT_GENERIC || INCORRECT_NAME) { + __webpack_require__(/*! ../internals/redefine */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js")(RegExp.prototype, TO_STRING, function toString() { + var R = anObject(this); + return '/'.concat(R.source, '/', + 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? flags.call(R) : undefined); + }, { unsafe: true }); +} + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.set.js": +/*!***********************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.set.js ***! + \***********************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +// `Set` constructor +// https://tc39.github.io/ecma262/#sec-set-objects +module.exports = __webpack_require__(/*! ../internals/collection */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection.js")('Set', function (get) { + return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; +}, __webpack_require__(/*! ../internals/collection-strong */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection-strong.js")); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.anchor.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.anchor.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('anchor'); + +// `String.prototype.anchor` method +// https://tc39.github.io/ecma262/#sec-string.prototype.anchor +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + anchor: function anchor(name) { + return createHTML(this, 'a', 'name', name); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.big.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.big.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('big'); + +// `String.prototype.big` method +// https://tc39.github.io/ecma262/#sec-string.prototype.big +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + big: function big() { + return createHTML(this, 'big', '', ''); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.blink.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.blink.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('blink'); + +// `String.prototype.blink` method +// https://tc39.github.io/ecma262/#sec-string.prototype.blink +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + blink: function blink() { + return createHTML(this, 'blink', '', ''); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.bold.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.bold.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('bold'); + +// `String.prototype.bold` method +// https://tc39.github.io/ecma262/#sec-string.prototype.bold +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + bold: function bold() { + return createHTML(this, 'b', '', ''); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.code-point-at.js": +/*!****************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.code-point-at.js ***! + \****************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var internalCodePointAt = __webpack_require__(/*! ../internals/string-at */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-at.js"); + +// `String.prototype.codePointAt` method +// https://tc39.github.io/ecma262/#sec-string.prototype.codepointat +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true }, { + codePointAt: function codePointAt(pos) { + return internalCodePointAt(this, pos); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.ends-with.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.ends-with.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); +var validateArguments = __webpack_require__(/*! ../internals/validate-string-method-arguments */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/validate-string-method-arguments.js"); +var ENDS_WITH = 'endsWith'; +var nativeEndsWith = ''[ENDS_WITH]; +var min = Math.min; + +var CORRECT_IS_REGEXP_LOGIC = __webpack_require__(/*! ../internals/correct-is-regexp-logic */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/correct-is-regexp-logic.js")(ENDS_WITH); + +// `String.prototype.endsWith` method +// https://tc39.github.io/ecma262/#sec-string.prototype.endswith +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: !CORRECT_IS_REGEXP_LOGIC }, { + endsWith: function endsWith(searchString /* , endPosition = @length */) { + var that = validateArguments(this, searchString, ENDS_WITH); + var endPosition = arguments.length > 1 ? arguments[1] : undefined; + var len = toLength(that.length); + var end = endPosition === undefined ? len : min(toLength(endPosition), len); + var search = String(searchString); + return nativeEndsWith + ? nativeEndsWith.call(that, search, end) + : that.slice(end - search.length, end) === search; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fixed.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fixed.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('fixed'); + +// `String.prototype.fixed` method +// https://tc39.github.io/ecma262/#sec-string.prototype.fixed +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + fixed: function fixed() { + return createHTML(this, 'tt', '', ''); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fontcolor.js": +/*!************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fontcolor.js ***! + \************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('fontcolor'); + +// `String.prototype.fontcolor` method +// https://tc39.github.io/ecma262/#sec-string.prototype.fontcolor +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + fontcolor: function fontcolor(color) { + return createHTML(this, 'font', 'color', color); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fontsize.js": +/*!***********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fontsize.js ***! + \***********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('fontsize'); + +// `String.prototype.fontsize` method +// https://tc39.github.io/ecma262/#sec-string.prototype.fontsize +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + fontsize: function fontsize(size) { + return createHTML(this, 'font', 'size', size); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.from-code-point.js": +/*!******************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.from-code-point.js ***! + \******************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var toAbsoluteIndex = __webpack_require__(/*! ../internals/to-absolute-index */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-absolute-index.js"); +var fromCharCode = String.fromCharCode; +var nativeFromCodePoint = String.fromCodePoint; + +// length should be 1, old FF problem +var INCORRECT_LENGTH = !!nativeFromCodePoint && nativeFromCodePoint.length != 1; + +// `String.fromCodePoint` method +// https://tc39.github.io/ecma262/#sec-string.fromcodepoint +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', stat: true, forced: INCORRECT_LENGTH }, { + fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars + var elements = []; + var length = arguments.length; + var i = 0; + var code; + while (length > i) { + code = +arguments[i++]; + if (toAbsoluteIndex(code, 0x10FFFF) !== code) throw RangeError(code + ' is not a valid code point'); + elements.push(code < 0x10000 + ? fromCharCode(code) + : fromCharCode(((code -= 0x10000) >> 10) + 0xD800, code % 0x400 + 0xDC00) + ); + } return elements.join(''); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.includes.js": +/*!***********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.includes.js ***! + \***********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var validateArguments = __webpack_require__(/*! ../internals/validate-string-method-arguments */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/validate-string-method-arguments.js"); +var INCLUDES = 'includes'; + +var CORRECT_IS_REGEXP_LOGIC = __webpack_require__(/*! ../internals/correct-is-regexp-logic */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/correct-is-regexp-logic.js")(INCLUDES); + +// `String.prototype.includes` method +// https://tc39.github.io/ecma262/#sec-string.prototype.includes +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: !CORRECT_IS_REGEXP_LOGIC }, { + includes: function includes(searchString /* , position = 0 */) { + return !!~validateArguments(this, searchString, INCLUDES) + .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.italics.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.italics.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('italics'); + +// `String.prototype.italics` method +// https://tc39.github.io/ecma262/#sec-string.prototype.italics +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + italics: function italics() { + return createHTML(this, 'i', '', ''); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.iterator.js": +/*!***********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.iterator.js ***! + \***********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var codePointAt = __webpack_require__(/*! ../internals/string-at */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-at.js"); +var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-state.js"); +var defineIterator = __webpack_require__(/*! ../internals/define-iterator */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/define-iterator.js"); +var STRING_ITERATOR = 'String Iterator'; +var setInternalState = InternalStateModule.set; +var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR); + +// `String.prototype[@@iterator]` method +// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator +defineIterator(String, 'String', function (iterated) { + setInternalState(this, { + type: STRING_ITERATOR, + string: String(iterated), + index: 0 + }); +// `%StringIteratorPrototype%.next` method +// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next +}, function next() { + var state = getInternalState(this); + var string = state.string; + var index = state.index; + var point; + if (index >= string.length) return { value: undefined, done: true }; + point = codePointAt(string, index, true); + state.index += point.length; + return { value: point, done: false }; +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.link.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.link.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('link'); + +// `String.prototype.link` method +// https://tc39.github.io/ecma262/#sec-string.prototype.link +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + link: function link(url) { + return createHTML(this, 'a', 'href', url); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.match.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.match.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); +var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js"); +var advanceStringIndex = __webpack_require__(/*! ../internals/advance-string-index */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/advance-string-index.js"); +var regExpExec = __webpack_require__(/*! ../internals/regexp-exec-abstract */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec-abstract.js"); + +// @@match logic +__webpack_require__(/*! ../internals/fix-regexp-well-known-symbol-logic */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js")( + 'match', + 1, + function (MATCH, nativeMatch, maybeCallNative) { + return [ + // `String.prototype.match` method + // https://tc39.github.io/ecma262/#sec-string.prototype.match + function match(regexp) { + var O = requireObjectCoercible(this); + var matcher = regexp == undefined ? undefined : regexp[MATCH]; + return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O)); + }, + // `RegExp.prototype[@@match]` method + // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match + function (regexp) { + var res = maybeCallNative(nativeMatch, regexp, this); + if (res.done) return res.value; + + var rx = anObject(regexp); + var S = String(this); + + if (!rx.global) return regExpExec(rx, S); + + var fullUnicode = rx.unicode; + rx.lastIndex = 0; + var A = []; + var n = 0; + var result; + while ((result = regExpExec(rx, S)) !== null) { + var matchStr = String(result[0]); + A[n] = matchStr; + if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); + n++; + } + return n === 0 ? null : A; + } + ]; + } +); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.raw.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.raw.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); + +// `String.raw` method +// https://tc39.github.io/ecma262/#sec-string.raw +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', stat: true }, { + raw: function raw(template) { + var rawTemplate = toIndexedObject(template.raw); + var literalSegments = toLength(rawTemplate.length); + var argumentsLength = arguments.length; + var elements = []; + var i = 0; + while (literalSegments > i) { + elements.push(String(rawTemplate[i++])); + if (i < argumentsLength) elements.push(String(arguments[i])); + } return elements.join(''); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.repeat.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.repeat.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `String.prototype.repeat` method +// https://tc39.github.io/ecma262/#sec-string.prototype.repeat +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true }, { + repeat: __webpack_require__(/*! ../internals/string-repeat */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-repeat.js") +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.replace.js": +/*!**********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.replace.js ***! + \**********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var toObject = __webpack_require__(/*! ../internals/to-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); +var toInteger = __webpack_require__(/*! ../internals/to-integer */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-integer.js"); +var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js"); +var advanceStringIndex = __webpack_require__(/*! ../internals/advance-string-index */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/advance-string-index.js"); +var regExpExec = __webpack_require__(/*! ../internals/regexp-exec-abstract */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec-abstract.js"); +var max = Math.max; +var min = Math.min; +var floor = Math.floor; +var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g; +var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g; + +var maybeToString = function (it) { + return it === undefined ? it : String(it); +}; + +// @@replace logic +__webpack_require__(/*! ../internals/fix-regexp-well-known-symbol-logic */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js")( + 'replace', + 2, + function (REPLACE, nativeReplace, maybeCallNative) { + return [ + // `String.prototype.replace` method + // https://tc39.github.io/ecma262/#sec-string.prototype.replace + function replace(searchValue, replaceValue) { + var O = requireObjectCoercible(this); + var replacer = searchValue == undefined ? undefined : searchValue[REPLACE]; + return replacer !== undefined + ? replacer.call(searchValue, O, replaceValue) + : nativeReplace.call(String(O), searchValue, replaceValue); + }, + // `RegExp.prototype[@@replace]` method + // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace + function (regexp, replaceValue) { + var res = maybeCallNative(nativeReplace, regexp, this, replaceValue); + if (res.done) return res.value; + + var rx = anObject(regexp); + var S = String(this); + + var functionalReplace = typeof replaceValue === 'function'; + if (!functionalReplace) replaceValue = String(replaceValue); + + var global = rx.global; + if (global) { + var fullUnicode = rx.unicode; + rx.lastIndex = 0; + } + var results = []; + while (true) { + var result = regExpExec(rx, S); + if (result === null) break; + + results.push(result); + if (!global) break; + + var matchStr = String(result[0]); + if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); + } + + var accumulatedResult = ''; + var nextSourcePosition = 0; + for (var i = 0; i < results.length; i++) { + result = results[i]; + + var matched = String(result[0]); + var position = max(min(toInteger(result.index), S.length), 0); + var captures = []; + // NOTE: This is equivalent to + // captures = result.slice(1).map(maybeToString) + // but for some reason `nativeSlice.call(result, 1, result.length)` (called in + // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and + // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it. + for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j])); + var namedCaptures = result.groups; + if (functionalReplace) { + var replacerArgs = [matched].concat(captures, position, S); + if (namedCaptures !== undefined) replacerArgs.push(namedCaptures); + var replacement = String(replaceValue.apply(undefined, replacerArgs)); + } else { + replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue); + } + if (position >= nextSourcePosition) { + accumulatedResult += S.slice(nextSourcePosition, position) + replacement; + nextSourcePosition = position + matched.length; + } + } + return accumulatedResult + S.slice(nextSourcePosition); + } + ]; + + // https://tc39.github.io/ecma262/#sec-getsubstitution + function getSubstitution(matched, str, position, captures, namedCaptures, replacement) { + var tailPos = position + matched.length; + var m = captures.length; + var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED; + if (namedCaptures !== undefined) { + namedCaptures = toObject(namedCaptures); + symbols = SUBSTITUTION_SYMBOLS; + } + return nativeReplace.call(replacement, symbols, function (match, ch) { + var capture; + switch (ch.charAt(0)) { + case '$': return '$'; + case '&': return matched; + case '`': return str.slice(0, position); + case "'": return str.slice(tailPos); + case '<': + capture = namedCaptures[ch.slice(1, -1)]; + break; + default: // \d\d? + var n = +ch; + if (n === 0) return match; + if (n > m) { + var f = floor(n / 10); + if (f === 0) return match; + if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1); + return match; + } + capture = captures[n - 1]; + } + return capture === undefined ? '' : capture; + }); + } + } +); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.search.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.search.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js"); +var sameValue = __webpack_require__(/*! ../internals/same-value */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/same-value.js"); +var regExpExec = __webpack_require__(/*! ../internals/regexp-exec-abstract */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec-abstract.js"); + +// @@search logic +__webpack_require__(/*! ../internals/fix-regexp-well-known-symbol-logic */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js")( + 'search', + 1, + function (SEARCH, nativeSearch, maybeCallNative) { + return [ + // `String.prototype.search` method + // https://tc39.github.io/ecma262/#sec-string.prototype.search + function search(regexp) { + var O = requireObjectCoercible(this); + var searcher = regexp == undefined ? undefined : regexp[SEARCH]; + return searcher !== undefined ? searcher.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O)); + }, + // `RegExp.prototype[@@search]` method + // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search + function (regexp) { + var res = maybeCallNative(nativeSearch, regexp, this); + if (res.done) return res.value; + + var rx = anObject(regexp); + var S = String(this); + + var previousLastIndex = rx.lastIndex; + if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0; + var result = regExpExec(rx, S); + if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex; + return result === null ? -1 : result.index; + } + ]; + } +); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.small.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.small.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('small'); + +// `String.prototype.small` method +// https://tc39.github.io/ecma262/#sec-string.prototype.small +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + small: function small() { + return createHTML(this, 'small', '', ''); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.split.js": +/*!********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.split.js ***! + \********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var isRegExp = __webpack_require__(/*! ../internals/is-regexp */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-regexp.js"); +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js"); +var speciesConstructor = __webpack_require__(/*! ../internals/species-constructor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/species-constructor.js"); +var advanceStringIndex = __webpack_require__(/*! ../internals/advance-string-index */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/advance-string-index.js"); +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); +var callRegExpExec = __webpack_require__(/*! ../internals/regexp-exec-abstract */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec-abstract.js"); +var regexpExec = __webpack_require__(/*! ../internals/regexp-exec */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec.js"); +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var arrayPush = [].push; +var min = Math.min; +var MAX_UINT32 = 0xFFFFFFFF; + +// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError +var SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); }); + +// @@split logic +__webpack_require__(/*! ../internals/fix-regexp-well-known-symbol-logic */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js")( + 'split', + 2, + function (SPLIT, nativeSplit, maybeCallNative) { + var internalSplit; + if ( + 'abbc'.split(/(b)*/)[1] == 'c' || + 'test'.split(/(?:)/, -1).length != 4 || + 'ab'.split(/(?:ab)*/).length != 2 || + '.'.split(/(.?)(.?)/).length != 4 || + '.'.split(/()()/).length > 1 || + ''.split(/.?/).length + ) { + // based on es5-shim implementation, need to rework it + internalSplit = function (separator, limit) { + var string = String(requireObjectCoercible(this)); + var lim = limit === undefined ? MAX_UINT32 : limit >>> 0; + if (lim === 0) return []; + if (separator === undefined) return [string]; + // If `separator` is not a regex, use native split + if (!isRegExp(separator)) { + return nativeSplit.call(string, separator, lim); + } + var output = []; + var flags = (separator.ignoreCase ? 'i' : '') + + (separator.multiline ? 'm' : '') + + (separator.unicode ? 'u' : '') + + (separator.sticky ? 'y' : ''); + var lastLastIndex = 0; + // Make `global` and avoid `lastIndex` issues by working with a copy + var separatorCopy = new RegExp(separator.source, flags + 'g'); + var match, lastIndex, lastLength; + while (match = regexpExec.call(separatorCopy, string)) { + lastIndex = separatorCopy.lastIndex; + if (lastIndex > lastLastIndex) { + output.push(string.slice(lastLastIndex, match.index)); + if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1)); + lastLength = match[0].length; + lastLastIndex = lastIndex; + if (output.length >= lim) break; + } + if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop + } + if (lastLastIndex === string.length) { + if (lastLength || !separatorCopy.test('')) output.push(''); + } else output.push(string.slice(lastLastIndex)); + return output.length > lim ? output.slice(0, lim) : output; + }; + // Chakra, V8 + } else if ('0'.split(undefined, 0).length) { + internalSplit = function (separator, limit) { + return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit); + }; + } else internalSplit = nativeSplit; + + return [ + // `String.prototype.split` method + // https://tc39.github.io/ecma262/#sec-string.prototype.split + function split(separator, limit) { + var O = requireObjectCoercible(this); + var splitter = separator == undefined ? undefined : separator[SPLIT]; + return splitter !== undefined + ? splitter.call(separator, O, limit) + : internalSplit.call(String(O), separator, limit); + }, + // `RegExp.prototype[@@split]` method + // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split + // + // NOTE: This cannot be properly polyfilled in engines that don't support + // the 'y' flag. + function (regexp, limit) { + var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit); + if (res.done) return res.value; + + var rx = anObject(regexp); + var S = String(this); + var C = speciesConstructor(rx, RegExp); + + var unicodeMatching = rx.unicode; + var flags = (rx.ignoreCase ? 'i' : '') + + (rx.multiline ? 'm' : '') + + (rx.unicode ? 'u' : '') + + (SUPPORTS_Y ? 'y' : 'g'); + + // ^(? + rx + ) is needed, in combination with some S slicing, to + // simulate the 'y' flag. + var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags); + var lim = limit === undefined ? MAX_UINT32 : limit >>> 0; + if (lim === 0) return []; + if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : []; + var p = 0; + var q = 0; + var A = []; + while (q < S.length) { + splitter.lastIndex = SUPPORTS_Y ? q : 0; + var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q)); + var e; + if ( + z === null || + (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p + ) { + q = advanceStringIndex(S, q, unicodeMatching); + } else { + A.push(S.slice(p, q)); + if (A.length === lim) return A; + for (var i = 1; i <= z.length - 1; i++) { + A.push(z[i]); + if (A.length === lim) return A; + } + q = p = e; + } + } + A.push(S.slice(p)); + return A; + } + ]; + }, + !SUPPORTS_Y +); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.starts-with.js": +/*!**************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.starts-with.js ***! + \**************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var toLength = __webpack_require__(/*! ../internals/to-length */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js"); +var validateArguments = __webpack_require__(/*! ../internals/validate-string-method-arguments */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/validate-string-method-arguments.js"); +var STARTS_WITH = 'startsWith'; +var CORRECT_IS_REGEXP_LOGIC = __webpack_require__(/*! ../internals/correct-is-regexp-logic */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/correct-is-regexp-logic.js")(STARTS_WITH); +var nativeStartsWith = ''[STARTS_WITH]; + +// `String.prototype.startsWith` method +// https://tc39.github.io/ecma262/#sec-string.prototype.startswith +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: !CORRECT_IS_REGEXP_LOGIC }, { + startsWith: function startsWith(searchString /* , position = 0 */) { + var that = validateArguments(this, searchString, STARTS_WITH); + var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length)); + var search = String(searchString); + return nativeStartsWith + ? nativeStartsWith.call(that, search, index) + : that.slice(index, index + search.length) === search; + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.strike.js": +/*!*********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.strike.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('strike'); + +// `String.prototype.strike` method +// https://tc39.github.io/ecma262/#sec-string.prototype.strike +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + strike: function strike() { + return createHTML(this, 'strike', '', ''); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.sub.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.sub.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('sub'); + +// `String.prototype.sub` method +// https://tc39.github.io/ecma262/#sec-string.prototype.sub +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + sub: function sub() { + return createHTML(this, 'sub', '', ''); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.sup.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.sup.js ***! + \******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var createHTML = __webpack_require__(/*! ../internals/create-html */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-html-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js")('sup'); + +// `String.prototype.sup` method +// https://tc39.github.io/ecma262/#sec-string.prototype.sup +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + sup: function sup() { + return createHTML(this, 'sup', '', ''); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.trim.js": +/*!*******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.trim.js ***! + \*******************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var internalStringTrim = __webpack_require__(/*! ../internals/string-trim */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-trim.js"); +var FORCED = __webpack_require__(/*! ../internals/forced-string-trim-method */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-trim-method.js")('trim'); + +// `String.prototype.trim` method +// https://tc39.github.io/ecma262/#sec-string.prototype.trim +__webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js")({ target: 'String', proto: true, forced: FORCED }, { + trim: function trim() { + return internalStringTrim(this, 3); + } +}); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.symbol.iterator.js": +/*!***********************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.symbol.iterator.js ***! + \***********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +// `Symbol.iterator` well-known symbol +// https://tc39.github.io/ecma262/#sec-symbol.iterator +__webpack_require__(/*! ../internals/define-well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/define-well-known-symbol.js")('iterator'); + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.symbol.js": +/*!**************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.symbol.js ***! + \**************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +// ECMAScript 6 symbols shim +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var has = __webpack_require__(/*! ../internals/has */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js"); +var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js"); +var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-pure.js"); +var $export = __webpack_require__(/*! ../internals/export */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js"); +var redefine = __webpack_require__(/*! ../internals/redefine */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js"); +var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hidden-keys.js"); +var fails = __webpack_require__(/*! ../internals/fails */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js"); +var shared = __webpack_require__(/*! ../internals/shared */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared.js"); +var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-to-string-tag.js"); +var uid = __webpack_require__(/*! ../internals/uid */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/uid.js"); +var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js"); +var wrappedWellKnownSymbolModule = __webpack_require__(/*! ../internals/wrapped-well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/wrapped-well-known-symbol.js"); +var defineWellKnownSymbol = __webpack_require__(/*! ../internals/define-well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/define-well-known-symbol.js"); +var enumKeys = __webpack_require__(/*! ../internals/enum-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/enum-keys.js"); +var isArray = __webpack_require__(/*! ../internals/is-array */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array.js"); +var anObject = __webpack_require__(/*! ../internals/an-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js"); +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js"); +var toPrimitive = __webpack_require__(/*! ../internals/to-primitive */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-primitive.js"); +var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property-descriptor.js"); +var nativeObjectCreate = __webpack_require__(/*! ../internals/object-create */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-create.js"); +var getOwnPropertyNamesExternal = __webpack_require__(/*! ../internals/object-get-own-property-names-external */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names-external.js"); +var getOwnPropertyDescriptorModule = __webpack_require__(/*! ../internals/object-get-own-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-descriptor.js"); +var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js"); +var propertyIsEnumerableModule = __webpack_require__(/*! ../internals/object-property-is-enumerable */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-property-is-enumerable.js"); +var hide = __webpack_require__(/*! ../internals/hide */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js"); +var objectKeys = __webpack_require__(/*! ../internals/object-keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys.js"); +var HIDDEN = __webpack_require__(/*! ../internals/shared-key */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared-key.js")('hidden'); +var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-state.js"); +var SYMBOL = 'Symbol'; +var setInternalState = InternalStateModule.set; +var getInternalState = InternalStateModule.getterFor(SYMBOL); +var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; +var nativeDefineProperty = definePropertyModule.f; +var nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f; +var $Symbol = global.Symbol; +var JSON = global.JSON; +var nativeJSONStringify = JSON && JSON.stringify; +var PROTOTYPE = 'prototype'; +var TO_PRIMITIVE = wellKnownSymbol('toPrimitive'); +var nativePropertyIsEnumerable = propertyIsEnumerableModule.f; +var SymbolRegistry = shared('symbol-registry'); +var AllSymbols = shared('symbols'); +var ObjectPrototypeSymbols = shared('op-symbols'); +var WellKnownSymbolsStore = shared('wks'); +var ObjectPrototype = Object[PROTOTYPE]; +var QObject = global.QObject; +var NATIVE_SYMBOL = __webpack_require__(/*! ../internals/native-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/native-symbol.js"); +// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 +var USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; + +// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 +var setSymbolDescriptor = DESCRIPTORS && fails(function () { + return nativeObjectCreate(nativeDefineProperty({}, 'a', { + get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; } + })).a != 7; +}) ? function (it, key, D) { + var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, key); + if (ObjectPrototypeDescriptor) delete ObjectPrototype[key]; + nativeDefineProperty(it, key, D); + if (ObjectPrototypeDescriptor && it !== ObjectPrototype) { + nativeDefineProperty(ObjectPrototype, key, ObjectPrototypeDescriptor); + } +} : nativeDefineProperty; + +var wrap = function (tag, description) { + var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]); + setInternalState(symbol, { + type: SYMBOL, + tag: tag, + description: description + }); + if (!DESCRIPTORS) symbol.description = description; + return symbol; +}; + +var isSymbol = NATIVE_SYMBOL && typeof $Symbol.iterator == 'symbol' ? function (it) { + return typeof it == 'symbol'; +} : function (it) { + return Object(it) instanceof $Symbol; +}; + +var $defineProperty = function defineProperty(it, key, D) { + if (it === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, key, D); + anObject(it); + key = toPrimitive(key, true); + anObject(D); + if (has(AllSymbols, key)) { + if (!D.enumerable) { + if (!has(it, HIDDEN)) nativeDefineProperty(it, HIDDEN, createPropertyDescriptor(1, {})); + it[HIDDEN][key] = true; + } else { + if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false; + D = nativeObjectCreate(D, { enumerable: createPropertyDescriptor(0, false) }); + } return setSymbolDescriptor(it, key, D); + } return nativeDefineProperty(it, key, D); +}; + +var $defineProperties = function defineProperties(it, P) { + anObject(it); + var keys = enumKeys(P = toIndexedObject(P)); + var i = 0; + var l = keys.length; + var key; + while (l > i) $defineProperty(it, key = keys[i++], P[key]); + return it; +}; + +var $create = function create(it, P) { + return P === undefined ? nativeObjectCreate(it) : $defineProperties(nativeObjectCreate(it), P); +}; + +var $propertyIsEnumerable = function propertyIsEnumerable(key) { + var E = nativePropertyIsEnumerable.call(this, key = toPrimitive(key, true)); + if (this === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return false; + return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true; +}; + +var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) { + it = toIndexedObject(it); + key = toPrimitive(key, true); + if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return; + var D = nativeGetOwnPropertyDescriptor(it, key); + if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true; + return D; +}; + +var $getOwnPropertyNames = function getOwnPropertyNames(it) { + var names = nativeGetOwnPropertyNames(toIndexedObject(it)); + var result = []; + var i = 0; + var key; + while (names.length > i) { + if (!has(AllSymbols, key = names[i++]) && !has(hiddenKeys, key)) result.push(key); + } return result; +}; + +var $getOwnPropertySymbols = function getOwnPropertySymbols(it) { + var IS_OP = it === ObjectPrototype; + var names = nativeGetOwnPropertyNames(IS_OP ? ObjectPrototypeSymbols : toIndexedObject(it)); + var result = []; + var i = 0; + var key; + while (names.length > i) { + if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectPrototype, key) : true)) result.push(AllSymbols[key]); + } return result; +}; + +// `Symbol` constructor +// https://tc39.github.io/ecma262/#sec-symbol-constructor +if (!NATIVE_SYMBOL) { + $Symbol = function Symbol() { + if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor'); + var description = arguments[0] === undefined ? undefined : String(arguments[0]); + var tag = uid(description); + var setter = function (value) { + if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value); + if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false; + setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value)); + }; + if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter }); + return wrap(tag, description); + }; + redefine($Symbol[PROTOTYPE], 'toString', function toString() { + return getInternalState(this).tag; + }); + + propertyIsEnumerableModule.f = $propertyIsEnumerable; + definePropertyModule.f = $defineProperty; + getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor; + __webpack_require__(/*! ../internals/object-get-own-property-names */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names.js").f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames; + __webpack_require__(/*! ../internals/object-get-own-property-symbols */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-symbols.js").f = $getOwnPropertySymbols; + + if (DESCRIPTORS) { + // https://github.com/tc39/proposal-Symbol-description + nativeDefineProperty($Symbol[PROTOTYPE], 'description', { + configurable: true, + get: function description() { + return getInternalState(this).description; + } + }); + if (!IS_PURE) { + redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true }); + } + } + + wrappedWellKnownSymbolModule.f = function (name) { + return wrap(wellKnownSymbol(name), name); + }; +} + +$export({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, { Symbol: $Symbol }); + +for (var wellKnownSymbols = objectKeys(WellKnownSymbolsStore), k = 0; wellKnownSymbols.length > k;) { + defineWellKnownSymbol(wellKnownSymbols[k++]); +} + +$export({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, { + // `Symbol.for` method + // https://tc39.github.io/ecma262/#sec-symbol.for + 'for': function (key) { + return has(SymbolRegistry, key += '') + ? SymbolRegistry[key] + : SymbolRegistry[key] = $Symbol(key); + }, + // `Symbol.keyFor` method + // https://tc39.github.io/ecma262/#sec-symbol.keyfor + keyFor: function keyFor(sym) { + if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol'); + for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key; + }, + useSetter: function () { USE_SETTER = true; }, + useSimple: function () { USE_SETTER = false; } +}); + +$export({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, { + // `Object.create` method + // https://tc39.github.io/ecma262/#sec-object.create + create: $create, + // `Object.defineProperty` method + // https://tc39.github.io/ecma262/#sec-object.defineproperty + defineProperty: $defineProperty, + // `Object.defineProperties` method + // https://tc39.github.io/ecma262/#sec-object.defineproperties + defineProperties: $defineProperties, + // `Object.getOwnPropertyDescriptor` method + // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors + getOwnPropertyDescriptor: $getOwnPropertyDescriptor +}); + +$export({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, { + // `Object.getOwnPropertyNames` method + // https://tc39.github.io/ecma262/#sec-object.getownpropertynames + getOwnPropertyNames: $getOwnPropertyNames, + // `Object.getOwnPropertySymbols` method + // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols + getOwnPropertySymbols: $getOwnPropertySymbols +}); + +// `JSON.stringify` method behavior with symbols +// https://tc39.github.io/ecma262/#sec-json.stringify +JSON && $export({ target: 'JSON', stat: true, forced: !NATIVE_SYMBOL || fails(function () { + var symbol = $Symbol(); + // MS Edge converts symbol values to JSON as {} + return nativeJSONStringify([symbol]) != '[null]' + // WebKit converts symbol values to JSON as null + || nativeJSONStringify({ a: symbol }) != '{}' + // V8 throws on boxed symbols + || nativeJSONStringify(Object(symbol)) != '{}'; +}) }, { + stringify: function stringify(it) { + var args = [it]; + var i = 1; + var replacer, $replacer; + while (arguments.length > i) args.push(arguments[i++]); + $replacer = replacer = args[1]; + if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined + if (!isArray(replacer)) replacer = function (key, value) { + if (typeof $replacer == 'function') value = $replacer.call(this, key, value); + if (!isSymbol(value)) return value; + }; + args[1] = replacer; + return nativeJSONStringify.apply(JSON, args); + } +}); + +// `Symbol.prototype[@@toPrimitive]` method +// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive +if (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) hide($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf); +// `Symbol.prototype[@@toStringTag]` property +// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag +setToStringTag($Symbol, SYMBOL); + +hiddenKeys[HIDDEN] = true; + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.weak-map.js": +/*!****************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.weak-map.js ***! + \****************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var redefineAll = __webpack_require__(/*! ../internals/redefine-all */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine-all.js"); +var InternalMetadataModule = __webpack_require__(/*! ../internals/internal-metadata */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-metadata.js"); +var weak = __webpack_require__(/*! ../internals/collection-weak */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection-weak.js"); +var isObject = __webpack_require__(/*! ../internals/is-object */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js"); +var enforceIternalState = __webpack_require__(/*! ../internals/internal-state */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-state.js").enforce; +var NATIVE_WEAK_MAP = __webpack_require__(/*! ../internals/native-weak-map */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/native-weak-map.js"); +var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global; +var isExtensible = Object.isExtensible; +var InternalWeakMap; + +var wrapper = function (get) { + return function WeakMap() { + return get(this, arguments.length > 0 ? arguments[0] : undefined); + }; +}; + +// `WeakMap` constructor +// https://tc39.github.io/ecma262/#sec-weakmap-constructor +var $WeakMap = module.exports = __webpack_require__(/*! ../internals/collection */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection.js")('WeakMap', wrapper, weak, true, true); + +// IE11 WeakMap frozen keys fix +// We can't use feature detection because it crash some old IE builds +// https://github.com/zloirock/core-js/issues/485 +if (NATIVE_WEAK_MAP && IS_IE11) { + InternalWeakMap = weak.getConstructor(wrapper, 'WeakMap', true); + InternalMetadataModule.REQUIRED = true; + var WeakMapPrototype = $WeakMap.prototype; + var nativeDelete = WeakMapPrototype['delete']; + var nativeHas = WeakMapPrototype.has; + var nativeGet = WeakMapPrototype.get; + var nativeSet = WeakMapPrototype.set; + redefineAll(WeakMapPrototype, { + 'delete': function (key) { + if (isObject(key) && !isExtensible(key)) { + var state = enforceIternalState(this); + if (!state.frozen) state.frozen = new InternalWeakMap(); + return nativeDelete.call(this, key) || state.frozen['delete'](key); + } return nativeDelete.call(this, key); + }, + has: function has(key) { + if (isObject(key) && !isExtensible(key)) { + var state = enforceIternalState(this); + if (!state.frozen) state.frozen = new InternalWeakMap(); + return nativeHas.call(this, key) || state.frozen.has(key); + } return nativeHas.call(this, key); + }, + get: function get(key) { + if (isObject(key) && !isExtensible(key)) { + var state = enforceIternalState(this); + if (!state.frozen) state.frozen = new InternalWeakMap(); + return nativeHas.call(this, key) ? nativeGet.call(this, key) : state.frozen.get(key); + } return nativeGet.call(this, key); + }, + set: function set(key, value) { + if (isObject(key) && !isExtensible(key)) { + var state = enforceIternalState(this); + if (!state.frozen) state.frozen = new InternalWeakMap(); + nativeHas.call(this, key) ? nativeSet.call(this, key, value) : state.frozen.set(key, value); + } else nativeSet.call(this, key, value); + return this; + } + }); +} + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/web.dom-collections.iterator.js": +/*!*********************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/web.dom-collections.iterator.js ***! + \*********************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var DOMIterables = __webpack_require__(/*! ../internals/dom-iterables */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/dom-iterables.js"); +var ArrayIteratorMethods = __webpack_require__(/*! ../modules/es.array.iterator */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.iterator.js"); +var global = __webpack_require__(/*! ../internals/global */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js"); +var hide = __webpack_require__(/*! ../internals/hide */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js"); +var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js"); +var ITERATOR = wellKnownSymbol('iterator'); +var TO_STRING_TAG = wellKnownSymbol('toStringTag'); +var ArrayValues = ArrayIteratorMethods.values; + +for (var COLLECTION_NAME in DOMIterables) { + var Collection = global[COLLECTION_NAME]; + var CollectionPrototype = Collection && Collection.prototype; + if (CollectionPrototype) { + // some Chrome versions have non-configurable methods on DOMTokenList + if (CollectionPrototype[ITERATOR] !== ArrayValues) try { + hide(CollectionPrototype, ITERATOR, ArrayValues); + } catch (error) { + CollectionPrototype[ITERATOR] = ArrayValues; + } + if (!CollectionPrototype[TO_STRING_TAG]) hide(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME); + if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) { + // some Chrome versions have non-configurable methods on DOMTokenList + if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try { + hide(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]); + } catch (error) { + CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME]; + } + } + } +} + + +/***/ }), + +/***/ "../../node_modules/@angular-devkit/build-angular/src/angular-cli-files/models/es5-polyfills.js": +/*!******************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/src/angular-cli-files/models/es5-polyfills.js ***! + \******************************************************************************************************************/ +/*! no exports provided */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var core_js_modules_es_symbol__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.symbol */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.symbol.js"); +/* harmony import */ var core_js_modules_es_symbol__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var core_js_modules_es_symbol_iterator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.symbol.iterator */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.symbol.iterator.js"); +/* harmony import */ var core_js_modules_es_symbol_iterator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_iterator__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var core_js_modules_es_function_bind__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.function.bind */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.bind.js"); +/* harmony import */ var core_js_modules_es_function_bind__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_bind__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var core_js_modules_es_function_name__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.function.name */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.name.js"); +/* harmony import */ var core_js_modules_es_function_name__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_name__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var core_js_modules_es_function_has_instance__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.function.has-instance */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.has-instance.js"); +/* harmony import */ var core_js_modules_es_function_has_instance__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_has_instance__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var core_js_modules_es_object_create__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.object.create */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.create.js"); +/* harmony import */ var core_js_modules_es_object_create__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_create__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var core_js_modules_es_object_define_property__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.object.define-property */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.define-property.js"); +/* harmony import */ var core_js_modules_es_object_define_property__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_define_property__WEBPACK_IMPORTED_MODULE_6__); +/* harmony import */ var core_js_modules_es_object_define_properties__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/es.object.define-properties */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.define-properties.js"); +/* harmony import */ var core_js_modules_es_object_define_properties__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_define_properties__WEBPACK_IMPORTED_MODULE_7__); +/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-own-property-descriptor.js"); +/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptor__WEBPACK_IMPORTED_MODULE_8__); +/* harmony import */ var core_js_modules_es_object_get_prototype_of__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.object.get-prototype-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-prototype-of.js"); +/* harmony import */ var core_js_modules_es_object_get_prototype_of__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_prototype_of__WEBPACK_IMPORTED_MODULE_9__); +/* harmony import */ var core_js_modules_es_object_keys__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! core-js/modules/es.object.keys */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.keys.js"); +/* harmony import */ var core_js_modules_es_object_keys__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys__WEBPACK_IMPORTED_MODULE_10__); +/* harmony import */ var core_js_modules_es_object_get_own_property_names__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-names */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-own-property-names.js"); +/* harmony import */ var core_js_modules_es_object_get_own_property_names__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_names__WEBPACK_IMPORTED_MODULE_11__); +/* harmony import */ var core_js_modules_es_object_freeze__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! core-js/modules/es.object.freeze */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.freeze.js"); +/* harmony import */ var core_js_modules_es_object_freeze__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_freeze__WEBPACK_IMPORTED_MODULE_12__); +/* harmony import */ var core_js_modules_es_object_seal__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! core-js/modules/es.object.seal */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.seal.js"); +/* harmony import */ var core_js_modules_es_object_seal__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_seal__WEBPACK_IMPORTED_MODULE_13__); +/* harmony import */ var core_js_modules_es_object_prevent_extensions__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! core-js/modules/es.object.prevent-extensions */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.prevent-extensions.js"); +/* harmony import */ var core_js_modules_es_object_prevent_extensions__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_prevent_extensions__WEBPACK_IMPORTED_MODULE_14__); +/* harmony import */ var core_js_modules_es_object_is_frozen__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! core-js/modules/es.object.is-frozen */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-frozen.js"); +/* harmony import */ var core_js_modules_es_object_is_frozen__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_is_frozen__WEBPACK_IMPORTED_MODULE_15__); +/* harmony import */ var core_js_modules_es_object_is_sealed__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! core-js/modules/es.object.is-sealed */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-sealed.js"); +/* harmony import */ var core_js_modules_es_object_is_sealed__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_is_sealed__WEBPACK_IMPORTED_MODULE_16__); +/* harmony import */ var core_js_modules_es_object_is_extensible__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! core-js/modules/es.object.is-extensible */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-extensible.js"); +/* harmony import */ var core_js_modules_es_object_is_extensible__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_is_extensible__WEBPACK_IMPORTED_MODULE_17__); +/* harmony import */ var core_js_modules_es_object_assign__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! core-js/modules/es.object.assign */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.assign.js"); +/* harmony import */ var core_js_modules_es_object_assign__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_assign__WEBPACK_IMPORTED_MODULE_18__); +/* harmony import */ var core_js_modules_es_object_is__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! core-js/modules/es.object.is */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is.js"); +/* harmony import */ var core_js_modules_es_object_is__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_is__WEBPACK_IMPORTED_MODULE_19__); +/* harmony import */ var core_js_modules_es_object_set_prototype_of__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! core-js/modules/es.object.set-prototype-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.set-prototype-of.js"); +/* harmony import */ var core_js_modules_es_object_set_prototype_of__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_set_prototype_of__WEBPACK_IMPORTED_MODULE_20__); +/* harmony import */ var core_js_modules_es_object_to_string__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! core-js/modules/es.object.to-string */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.to-string.js"); +/* harmony import */ var core_js_modules_es_object_to_string__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string__WEBPACK_IMPORTED_MODULE_21__); +/* harmony import */ var core_js_modules_es_array_is_array__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! core-js/modules/es.array.is-array */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.is-array.js"); +/* harmony import */ var core_js_modules_es_array_is_array__WEBPACK_IMPORTED_MODULE_22___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_is_array__WEBPACK_IMPORTED_MODULE_22__); +/* harmony import */ var core_js_modules_es_array_from__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! core-js/modules/es.array.from */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.from.js"); +/* harmony import */ var core_js_modules_es_array_from__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_from__WEBPACK_IMPORTED_MODULE_23__); +/* harmony import */ var core_js_modules_es_array_of__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! core-js/modules/es.array.of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.of.js"); +/* harmony import */ var core_js_modules_es_array_of__WEBPACK_IMPORTED_MODULE_24___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_of__WEBPACK_IMPORTED_MODULE_24__); +/* harmony import */ var core_js_modules_es_array_join__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! core-js/modules/es.array.join */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.join.js"); +/* harmony import */ var core_js_modules_es_array_join__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_join__WEBPACK_IMPORTED_MODULE_25__); +/* harmony import */ var core_js_modules_es_array_slice__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! core-js/modules/es.array.slice */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.slice.js"); +/* harmony import */ var core_js_modules_es_array_slice__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice__WEBPACK_IMPORTED_MODULE_26__); +/* harmony import */ var core_js_modules_es_array_sort__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! core-js/modules/es.array.sort */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.sort.js"); +/* harmony import */ var core_js_modules_es_array_sort__WEBPACK_IMPORTED_MODULE_27___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_sort__WEBPACK_IMPORTED_MODULE_27__); +/* harmony import */ var core_js_modules_es_array_for_each__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! core-js/modules/es.array.for-each */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.for-each.js"); +/* harmony import */ var core_js_modules_es_array_for_each__WEBPACK_IMPORTED_MODULE_28___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_for_each__WEBPACK_IMPORTED_MODULE_28__); +/* harmony import */ var core_js_modules_es_array_map__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! core-js/modules/es.array.map */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.map.js"); +/* harmony import */ var core_js_modules_es_array_map__WEBPACK_IMPORTED_MODULE_29___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map__WEBPACK_IMPORTED_MODULE_29__); +/* harmony import */ var core_js_modules_es_array_filter__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! core-js/modules/es.array.filter */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.filter.js"); +/* harmony import */ var core_js_modules_es_array_filter__WEBPACK_IMPORTED_MODULE_30___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter__WEBPACK_IMPORTED_MODULE_30__); +/* harmony import */ var core_js_modules_es_array_some__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! core-js/modules/es.array.some */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.some.js"); +/* harmony import */ var core_js_modules_es_array_some__WEBPACK_IMPORTED_MODULE_31___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_some__WEBPACK_IMPORTED_MODULE_31__); +/* harmony import */ var core_js_modules_es_array_every__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! core-js/modules/es.array.every */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.every.js"); +/* harmony import */ var core_js_modules_es_array_every__WEBPACK_IMPORTED_MODULE_32___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_every__WEBPACK_IMPORTED_MODULE_32__); +/* harmony import */ var core_js_modules_es_array_reduce__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! core-js/modules/es.array.reduce */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.reduce.js"); +/* harmony import */ var core_js_modules_es_array_reduce__WEBPACK_IMPORTED_MODULE_33___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_reduce__WEBPACK_IMPORTED_MODULE_33__); +/* harmony import */ var core_js_modules_es_array_reduce_right__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! core-js/modules/es.array.reduce-right */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.reduce-right.js"); +/* harmony import */ var core_js_modules_es_array_reduce_right__WEBPACK_IMPORTED_MODULE_34___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_reduce_right__WEBPACK_IMPORTED_MODULE_34__); +/* harmony import */ var core_js_modules_es_array_index_of__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! core-js/modules/es.array.index-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.index-of.js"); +/* harmony import */ var core_js_modules_es_array_index_of__WEBPACK_IMPORTED_MODULE_35___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_index_of__WEBPACK_IMPORTED_MODULE_35__); +/* harmony import */ var core_js_modules_es_array_last_index_of__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! core-js/modules/es.array.last-index-of */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.last-index-of.js"); +/* harmony import */ var core_js_modules_es_array_last_index_of__WEBPACK_IMPORTED_MODULE_36___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_last_index_of__WEBPACK_IMPORTED_MODULE_36__); +/* harmony import */ var core_js_modules_es_array_copy_within__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! core-js/modules/es.array.copy-within */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.copy-within.js"); +/* harmony import */ var core_js_modules_es_array_copy_within__WEBPACK_IMPORTED_MODULE_37___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_copy_within__WEBPACK_IMPORTED_MODULE_37__); +/* harmony import */ var core_js_modules_es_array_fill__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! core-js/modules/es.array.fill */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.fill.js"); +/* harmony import */ var core_js_modules_es_array_fill__WEBPACK_IMPORTED_MODULE_38___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_fill__WEBPACK_IMPORTED_MODULE_38__); +/* harmony import */ var core_js_modules_es_array_find__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! core-js/modules/es.array.find */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.find.js"); +/* harmony import */ var core_js_modules_es_array_find__WEBPACK_IMPORTED_MODULE_39___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find__WEBPACK_IMPORTED_MODULE_39__); +/* harmony import */ var core_js_modules_es_array_find_index__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! core-js/modules/es.array.find-index */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.find-index.js"); +/* harmony import */ var core_js_modules_es_array_find_index__WEBPACK_IMPORTED_MODULE_40___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_index__WEBPACK_IMPORTED_MODULE_40__); +/* harmony import */ var core_js_modules_es_array_iterator__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! core-js/modules/es.array.iterator */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.iterator.js"); +/* harmony import */ var core_js_modules_es_array_iterator__WEBPACK_IMPORTED_MODULE_41___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_iterator__WEBPACK_IMPORTED_MODULE_41__); +/* harmony import */ var core_js_modules_es_string_from_code_point__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(/*! core-js/modules/es.string.from-code-point */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.from-code-point.js"); +/* harmony import */ var core_js_modules_es_string_from_code_point__WEBPACK_IMPORTED_MODULE_42___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_from_code_point__WEBPACK_IMPORTED_MODULE_42__); +/* harmony import */ var core_js_modules_es_string_raw__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(/*! core-js/modules/es.string.raw */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.raw.js"); +/* harmony import */ var core_js_modules_es_string_raw__WEBPACK_IMPORTED_MODULE_43___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_raw__WEBPACK_IMPORTED_MODULE_43__); +/* harmony import */ var core_js_modules_es_string_trim__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(/*! core-js/modules/es.string.trim */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.trim.js"); +/* harmony import */ var core_js_modules_es_string_trim__WEBPACK_IMPORTED_MODULE_44___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_trim__WEBPACK_IMPORTED_MODULE_44__); +/* harmony import */ var core_js_modules_es_string_iterator__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(/*! core-js/modules/es.string.iterator */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.iterator.js"); +/* harmony import */ var core_js_modules_es_string_iterator__WEBPACK_IMPORTED_MODULE_45___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_iterator__WEBPACK_IMPORTED_MODULE_45__); +/* harmony import */ var core_js_modules_es_string_code_point_at__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(/*! core-js/modules/es.string.code-point-at */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.code-point-at.js"); +/* harmony import */ var core_js_modules_es_string_code_point_at__WEBPACK_IMPORTED_MODULE_46___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_code_point_at__WEBPACK_IMPORTED_MODULE_46__); +/* harmony import */ var core_js_modules_es_string_ends_with__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(/*! core-js/modules/es.string.ends-with */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.ends-with.js"); +/* harmony import */ var core_js_modules_es_string_ends_with__WEBPACK_IMPORTED_MODULE_47___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_ends_with__WEBPACK_IMPORTED_MODULE_47__); +/* harmony import */ var core_js_modules_es_string_includes__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(/*! core-js/modules/es.string.includes */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.includes.js"); +/* harmony import */ var core_js_modules_es_string_includes__WEBPACK_IMPORTED_MODULE_48___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_includes__WEBPACK_IMPORTED_MODULE_48__); +/* harmony import */ var core_js_modules_es_string_repeat__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(/*! core-js/modules/es.string.repeat */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.repeat.js"); +/* harmony import */ var core_js_modules_es_string_repeat__WEBPACK_IMPORTED_MODULE_49___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_repeat__WEBPACK_IMPORTED_MODULE_49__); +/* harmony import */ var core_js_modules_es_string_starts_with__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(/*! core-js/modules/es.string.starts-with */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.starts-with.js"); +/* harmony import */ var core_js_modules_es_string_starts_with__WEBPACK_IMPORTED_MODULE_50___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_starts_with__WEBPACK_IMPORTED_MODULE_50__); +/* harmony import */ var core_js_modules_es_string_anchor__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(/*! core-js/modules/es.string.anchor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.anchor.js"); +/* harmony import */ var core_js_modules_es_string_anchor__WEBPACK_IMPORTED_MODULE_51___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_anchor__WEBPACK_IMPORTED_MODULE_51__); +/* harmony import */ var core_js_modules_es_string_big__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(/*! core-js/modules/es.string.big */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.big.js"); +/* harmony import */ var core_js_modules_es_string_big__WEBPACK_IMPORTED_MODULE_52___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_big__WEBPACK_IMPORTED_MODULE_52__); +/* harmony import */ var core_js_modules_es_string_blink__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(/*! core-js/modules/es.string.blink */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.blink.js"); +/* harmony import */ var core_js_modules_es_string_blink__WEBPACK_IMPORTED_MODULE_53___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_blink__WEBPACK_IMPORTED_MODULE_53__); +/* harmony import */ var core_js_modules_es_string_bold__WEBPACK_IMPORTED_MODULE_54__ = __webpack_require__(/*! core-js/modules/es.string.bold */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.bold.js"); +/* harmony import */ var core_js_modules_es_string_bold__WEBPACK_IMPORTED_MODULE_54___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_bold__WEBPACK_IMPORTED_MODULE_54__); +/* harmony import */ var core_js_modules_es_string_fixed__WEBPACK_IMPORTED_MODULE_55__ = __webpack_require__(/*! core-js/modules/es.string.fixed */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fixed.js"); +/* harmony import */ var core_js_modules_es_string_fixed__WEBPACK_IMPORTED_MODULE_55___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_fixed__WEBPACK_IMPORTED_MODULE_55__); +/* harmony import */ var core_js_modules_es_string_fontcolor__WEBPACK_IMPORTED_MODULE_56__ = __webpack_require__(/*! core-js/modules/es.string.fontcolor */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fontcolor.js"); +/* harmony import */ var core_js_modules_es_string_fontcolor__WEBPACK_IMPORTED_MODULE_56___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_fontcolor__WEBPACK_IMPORTED_MODULE_56__); +/* harmony import */ var core_js_modules_es_string_fontsize__WEBPACK_IMPORTED_MODULE_57__ = __webpack_require__(/*! core-js/modules/es.string.fontsize */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fontsize.js"); +/* harmony import */ var core_js_modules_es_string_fontsize__WEBPACK_IMPORTED_MODULE_57___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_fontsize__WEBPACK_IMPORTED_MODULE_57__); +/* harmony import */ var core_js_modules_es_string_italics__WEBPACK_IMPORTED_MODULE_58__ = __webpack_require__(/*! core-js/modules/es.string.italics */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.italics.js"); +/* harmony import */ var core_js_modules_es_string_italics__WEBPACK_IMPORTED_MODULE_58___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_italics__WEBPACK_IMPORTED_MODULE_58__); +/* harmony import */ var core_js_modules_es_string_link__WEBPACK_IMPORTED_MODULE_59__ = __webpack_require__(/*! core-js/modules/es.string.link */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.link.js"); +/* harmony import */ var core_js_modules_es_string_link__WEBPACK_IMPORTED_MODULE_59___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_link__WEBPACK_IMPORTED_MODULE_59__); +/* harmony import */ var core_js_modules_es_string_small__WEBPACK_IMPORTED_MODULE_60__ = __webpack_require__(/*! core-js/modules/es.string.small */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.small.js"); +/* harmony import */ var core_js_modules_es_string_small__WEBPACK_IMPORTED_MODULE_60___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_small__WEBPACK_IMPORTED_MODULE_60__); +/* harmony import */ var core_js_modules_es_string_strike__WEBPACK_IMPORTED_MODULE_61__ = __webpack_require__(/*! core-js/modules/es.string.strike */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.strike.js"); +/* harmony import */ var core_js_modules_es_string_strike__WEBPACK_IMPORTED_MODULE_61___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_strike__WEBPACK_IMPORTED_MODULE_61__); +/* harmony import */ var core_js_modules_es_string_sub__WEBPACK_IMPORTED_MODULE_62__ = __webpack_require__(/*! core-js/modules/es.string.sub */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.sub.js"); +/* harmony import */ var core_js_modules_es_string_sub__WEBPACK_IMPORTED_MODULE_62___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_sub__WEBPACK_IMPORTED_MODULE_62__); +/* harmony import */ var core_js_modules_es_string_sup__WEBPACK_IMPORTED_MODULE_63__ = __webpack_require__(/*! core-js/modules/es.string.sup */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.sup.js"); +/* harmony import */ var core_js_modules_es_string_sup__WEBPACK_IMPORTED_MODULE_63___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_sup__WEBPACK_IMPORTED_MODULE_63__); +/* harmony import */ var core_js_modules_es_parse_int__WEBPACK_IMPORTED_MODULE_64__ = __webpack_require__(/*! core-js/modules/es.parse-int */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.parse-int.js"); +/* harmony import */ var core_js_modules_es_parse_int__WEBPACK_IMPORTED_MODULE_64___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_parse_int__WEBPACK_IMPORTED_MODULE_64__); +/* harmony import */ var core_js_modules_es_parse_float__WEBPACK_IMPORTED_MODULE_65__ = __webpack_require__(/*! core-js/modules/es.parse-float */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.parse-float.js"); +/* harmony import */ var core_js_modules_es_parse_float__WEBPACK_IMPORTED_MODULE_65___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_parse_float__WEBPACK_IMPORTED_MODULE_65__); +/* harmony import */ var core_js_es_number__WEBPACK_IMPORTED_MODULE_66__ = __webpack_require__(/*! core-js/es/number */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/es/number/index.js"); +/* harmony import */ var core_js_es_number__WEBPACK_IMPORTED_MODULE_66___default = /*#__PURE__*/__webpack_require__.n(core_js_es_number__WEBPACK_IMPORTED_MODULE_66__); +/* harmony import */ var core_js_es_math__WEBPACK_IMPORTED_MODULE_67__ = __webpack_require__(/*! core-js/es/math */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/es/math/index.js"); +/* harmony import */ var core_js_es_math__WEBPACK_IMPORTED_MODULE_67___default = /*#__PURE__*/__webpack_require__.n(core_js_es_math__WEBPACK_IMPORTED_MODULE_67__); +/* harmony import */ var core_js_es_date__WEBPACK_IMPORTED_MODULE_68__ = __webpack_require__(/*! core-js/es/date */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/es/date/index.js"); +/* harmony import */ var core_js_es_date__WEBPACK_IMPORTED_MODULE_68___default = /*#__PURE__*/__webpack_require__.n(core_js_es_date__WEBPACK_IMPORTED_MODULE_68__); +/* harmony import */ var core_js_es_regexp__WEBPACK_IMPORTED_MODULE_69__ = __webpack_require__(/*! core-js/es/regexp */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/es/regexp/index.js"); +/* harmony import */ var core_js_es_regexp__WEBPACK_IMPORTED_MODULE_69___default = /*#__PURE__*/__webpack_require__.n(core_js_es_regexp__WEBPACK_IMPORTED_MODULE_69__); +/* harmony import */ var core_js_modules_es_map__WEBPACK_IMPORTED_MODULE_70__ = __webpack_require__(/*! core-js/modules/es.map */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.map.js"); +/* harmony import */ var core_js_modules_es_map__WEBPACK_IMPORTED_MODULE_70___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_map__WEBPACK_IMPORTED_MODULE_70__); +/* harmony import */ var core_js_modules_es_weak_map__WEBPACK_IMPORTED_MODULE_71__ = __webpack_require__(/*! core-js/modules/es.weak-map */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.weak-map.js"); +/* harmony import */ var core_js_modules_es_weak_map__WEBPACK_IMPORTED_MODULE_71___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_weak_map__WEBPACK_IMPORTED_MODULE_71__); +/* harmony import */ var core_js_modules_es_set__WEBPACK_IMPORTED_MODULE_72__ = __webpack_require__(/*! core-js/modules/es.set */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.set.js"); +/* harmony import */ var core_js_modules_es_set__WEBPACK_IMPORTED_MODULE_72___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set__WEBPACK_IMPORTED_MODULE_72__); +/* harmony import */ var core_js_modules_web_dom_collections_iterator__WEBPACK_IMPORTED_MODULE_73__ = __webpack_require__(/*! core-js/modules/web.dom-collections.iterator */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/web.dom-collections.iterator.js"); +/* harmony import */ var core_js_modules_web_dom_collections_iterator__WEBPACK_IMPORTED_MODULE_73___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_iterator__WEBPACK_IMPORTED_MODULE_73__); +/* harmony import */ var core_js_modules_es_promise__WEBPACK_IMPORTED_MODULE_74__ = __webpack_require__(/*! core-js/modules/es.promise */ "../../node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.promise.js"); +/* harmony import */ var core_js_modules_es_promise__WEBPACK_IMPORTED_MODULE_74___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_promise__WEBPACK_IMPORTED_MODULE_74__); +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + +// ES2015 symbol capabilities + + + +// ES2015 function capabilities + + + + +// ES2015 object capabilities + + + + + + + + + + + + + + + + + + +// ES2015 array capabilities + + + + + + + + + + + + + + + + + + + + + +// ES2015 string capabilities + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +/***/ }), + +/***/ "../../node_modules/zone.js/dist/zone.js": +/*!***********************************************************!*\ + !*** /workspace/client/node_modules/zone.js/dist/zone.js ***! + \***********************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +/** +* @license +* Copyright Google Inc. All Rights Reserved. +* +* Use of this source code is governed by an MIT-style license that can be +* found in the LICENSE file at https://angular.io/license +*/ +(function (global, factory) { + true ? factory() : + undefined; +}(this, (function () { 'use strict'; + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +var Zone$1 = (function (global) { + var performance = global['performance']; + function mark(name) { + performance && performance['mark'] && performance['mark'](name); + } + function performanceMeasure(name, label) { + performance && performance['measure'] && performance['measure'](name, label); + } + mark('Zone'); + var checkDuplicate = global[('__zone_symbol__forceDuplicateZoneCheck')] === true; + if (global['Zone']) { + // if global['Zone'] already exists (maybe zone.js was already loaded or + // some other lib also registered a global object named Zone), we may need + // to throw an error, but sometimes user may not want this error. + // For example, + // we have two web pages, page1 includes zone.js, page2 doesn't. + // and the 1st time user load page1 and page2, everything work fine, + // but when user load page2 again, error occurs because global['Zone'] already exists. + // so we add a flag to let user choose whether to throw this error or not. + // By default, if existing Zone is from zone.js, we will not throw the error. + if (checkDuplicate || typeof global['Zone'].__symbol__ !== 'function') { + throw new Error('Zone already loaded.'); + } + else { + return global['Zone']; + } + } + var Zone = /** @class */ (function () { + function Zone(parent, zoneSpec) { + this._parent = parent; + this._name = zoneSpec ? zoneSpec.name || 'unnamed' : ''; + this._properties = zoneSpec && zoneSpec.properties || {}; + this._zoneDelegate = + new ZoneDelegate(this, this._parent && this._parent._zoneDelegate, zoneSpec); + } + Zone.assertZonePatched = function () { + if (global['Promise'] !== patches['ZoneAwarePromise']) { + throw new Error('Zone.js has detected that ZoneAwarePromise `(window|global).Promise` ' + + 'has been overwritten.\n' + + 'Most likely cause is that a Promise polyfill has been loaded ' + + 'after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. ' + + 'If you must load one, do so before loading zone.js.)'); + } + }; + Object.defineProperty(Zone, "root", { + get: function () { + var zone = Zone.current; + while (zone.parent) { + zone = zone.parent; + } + return zone; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Zone, "current", { + get: function () { + return _currentZoneFrame.zone; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Zone, "currentTask", { + get: function () { + return _currentTask; + }, + enumerable: true, + configurable: true + }); + Zone.__load_patch = function (name, fn) { + if (patches.hasOwnProperty(name)) { + if (checkDuplicate) { + throw Error('Already loaded patch: ' + name); + } + } + else if (!global['__Zone_disable_' + name]) { + var perfName = 'Zone:' + name; + mark(perfName); + patches[name] = fn(global, Zone, _api); + performanceMeasure(perfName, perfName); + } + }; + Object.defineProperty(Zone.prototype, "parent", { + get: function () { + return this._parent; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Zone.prototype, "name", { + get: function () { + return this._name; + }, + enumerable: true, + configurable: true + }); + Zone.prototype.get = function (key) { + var zone = this.getZoneWith(key); + if (zone) + return zone._properties[key]; + }; + Zone.prototype.getZoneWith = function (key) { + var current = this; + while (current) { + if (current._properties.hasOwnProperty(key)) { + return current; + } + current = current._parent; + } + return null; + }; + Zone.prototype.fork = function (zoneSpec) { + if (!zoneSpec) + throw new Error('ZoneSpec required!'); + return this._zoneDelegate.fork(this, zoneSpec); + }; + Zone.prototype.wrap = function (callback, source) { + if (typeof callback !== 'function') { + throw new Error('Expecting function got: ' + callback); + } + var _callback = this._zoneDelegate.intercept(this, callback, source); + var zone = this; + return function () { + return zone.runGuarded(_callback, this, arguments, source); + }; + }; + Zone.prototype.run = function (callback, applyThis, applyArgs, source) { + _currentZoneFrame = { parent: _currentZoneFrame, zone: this }; + try { + return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source); + } + finally { + _currentZoneFrame = _currentZoneFrame.parent; + } + }; + Zone.prototype.runGuarded = function (callback, applyThis, applyArgs, source) { + if (applyThis === void 0) { applyThis = null; } + _currentZoneFrame = { parent: _currentZoneFrame, zone: this }; + try { + try { + return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source); + } + catch (error) { + if (this._zoneDelegate.handleError(this, error)) { + throw error; + } + } + } + finally { + _currentZoneFrame = _currentZoneFrame.parent; + } + }; + Zone.prototype.runTask = function (task, applyThis, applyArgs) { + if (task.zone != this) { + throw new Error('A task can only be run in the zone of creation! (Creation: ' + + (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')'); + } + // https://github.com/angular/zone.js/issues/778, sometimes eventTask + // will run in notScheduled(canceled) state, we should not try to + // run such kind of task but just return + if (task.state === notScheduled && (task.type === eventTask || task.type === macroTask)) { + return; + } + var reEntryGuard = task.state != running; + reEntryGuard && task._transitionTo(running, scheduled); + task.runCount++; + var previousTask = _currentTask; + _currentTask = task; + _currentZoneFrame = { parent: _currentZoneFrame, zone: this }; + try { + if (task.type == macroTask && task.data && !task.data.isPeriodic) { + task.cancelFn = undefined; + } + try { + return this._zoneDelegate.invokeTask(this, task, applyThis, applyArgs); + } + catch (error) { + if (this._zoneDelegate.handleError(this, error)) { + throw error; + } + } + } + finally { + // if the task's state is notScheduled or unknown, then it has already been cancelled + // we should not reset the state to scheduled + if (task.state !== notScheduled && task.state !== unknown) { + if (task.type == eventTask || (task.data && task.data.isPeriodic)) { + reEntryGuard && task._transitionTo(scheduled, running); + } + else { + task.runCount = 0; + this._updateTaskCount(task, -1); + reEntryGuard && + task._transitionTo(notScheduled, running, notScheduled); + } + } + _currentZoneFrame = _currentZoneFrame.parent; + _currentTask = previousTask; + } + }; + Zone.prototype.scheduleTask = function (task) { + if (task.zone && task.zone !== this) { + // check if the task was rescheduled, the newZone + // should not be the children of the original zone + var newZone = this; + while (newZone) { + if (newZone === task.zone) { + throw Error("can not reschedule task to " + this.name + " which is descendants of the original zone " + task.zone.name); + } + newZone = newZone.parent; + } + } + task._transitionTo(scheduling, notScheduled); + var zoneDelegates = []; + task._zoneDelegates = zoneDelegates; + task._zone = this; + try { + task = this._zoneDelegate.scheduleTask(this, task); + } + catch (err) { + // should set task's state to unknown when scheduleTask throw error + // because the err may from reschedule, so the fromState maybe notScheduled + task._transitionTo(unknown, scheduling, notScheduled); + // TODO: @JiaLiPassion, should we check the result from handleError? + this._zoneDelegate.handleError(this, err); + throw err; + } + if (task._zoneDelegates === zoneDelegates) { + // we have to check because internally the delegate can reschedule the task. + this._updateTaskCount(task, 1); + } + if (task.state == scheduling) { + task._transitionTo(scheduled, scheduling); + } + return task; + }; + Zone.prototype.scheduleMicroTask = function (source, callback, data, customSchedule) { + return this.scheduleTask(new ZoneTask(microTask, source, callback, data, customSchedule, undefined)); + }; + Zone.prototype.scheduleMacroTask = function (source, callback, data, customSchedule, customCancel) { + return this.scheduleTask(new ZoneTask(macroTask, source, callback, data, customSchedule, customCancel)); + }; + Zone.prototype.scheduleEventTask = function (source, callback, data, customSchedule, customCancel) { + return this.scheduleTask(new ZoneTask(eventTask, source, callback, data, customSchedule, customCancel)); + }; + Zone.prototype.cancelTask = function (task) { + if (task.zone != this) + throw new Error('A task can only be cancelled in the zone of creation! (Creation: ' + + (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')'); + task._transitionTo(canceling, scheduled, running); + try { + this._zoneDelegate.cancelTask(this, task); + } + catch (err) { + // if error occurs when cancelTask, transit the state to unknown + task._transitionTo(unknown, canceling); + this._zoneDelegate.handleError(this, err); + throw err; + } + this._updateTaskCount(task, -1); + task._transitionTo(notScheduled, canceling); + task.runCount = 0; + return task; + }; + Zone.prototype._updateTaskCount = function (task, count) { + var zoneDelegates = task._zoneDelegates; + if (count == -1) { + task._zoneDelegates = null; + } + for (var i = 0; i < zoneDelegates.length; i++) { + zoneDelegates[i]._updateTaskCount(task.type, count); + } + }; + Zone.__symbol__ = __symbol__; + return Zone; + }()); + var DELEGATE_ZS = { + name: '', + onHasTask: function (delegate, _, target, hasTaskState) { return delegate.hasTask(target, hasTaskState); }, + onScheduleTask: function (delegate, _, target, task) { + return delegate.scheduleTask(target, task); + }, + onInvokeTask: function (delegate, _, target, task, applyThis, applyArgs) { + return delegate.invokeTask(target, task, applyThis, applyArgs); + }, + onCancelTask: function (delegate, _, target, task) { return delegate.cancelTask(target, task); } + }; + var ZoneDelegate = /** @class */ (function () { + function ZoneDelegate(zone, parentDelegate, zoneSpec) { + this._taskCounts = { 'microTask': 0, 'macroTask': 0, 'eventTask': 0 }; + this.zone = zone; + this._parentDelegate = parentDelegate; + this._forkZS = zoneSpec && (zoneSpec && zoneSpec.onFork ? zoneSpec : parentDelegate._forkZS); + this._forkDlgt = zoneSpec && (zoneSpec.onFork ? parentDelegate : parentDelegate._forkDlgt); + this._forkCurrZone = zoneSpec && (zoneSpec.onFork ? this.zone : parentDelegate.zone); + this._interceptZS = + zoneSpec && (zoneSpec.onIntercept ? zoneSpec : parentDelegate._interceptZS); + this._interceptDlgt = + zoneSpec && (zoneSpec.onIntercept ? parentDelegate : parentDelegate._interceptDlgt); + this._interceptCurrZone = + zoneSpec && (zoneSpec.onIntercept ? this.zone : parentDelegate.zone); + this._invokeZS = zoneSpec && (zoneSpec.onInvoke ? zoneSpec : parentDelegate._invokeZS); + this._invokeDlgt = + zoneSpec && (zoneSpec.onInvoke ? parentDelegate : parentDelegate._invokeDlgt); + this._invokeCurrZone = zoneSpec && (zoneSpec.onInvoke ? this.zone : parentDelegate.zone); + this._handleErrorZS = + zoneSpec && (zoneSpec.onHandleError ? zoneSpec : parentDelegate._handleErrorZS); + this._handleErrorDlgt = + zoneSpec && (zoneSpec.onHandleError ? parentDelegate : parentDelegate._handleErrorDlgt); + this._handleErrorCurrZone = + zoneSpec && (zoneSpec.onHandleError ? this.zone : parentDelegate.zone); + this._scheduleTaskZS = + zoneSpec && (zoneSpec.onScheduleTask ? zoneSpec : parentDelegate._scheduleTaskZS); + this._scheduleTaskDlgt = zoneSpec && + (zoneSpec.onScheduleTask ? parentDelegate : parentDelegate._scheduleTaskDlgt); + this._scheduleTaskCurrZone = + zoneSpec && (zoneSpec.onScheduleTask ? this.zone : parentDelegate.zone); + this._invokeTaskZS = + zoneSpec && (zoneSpec.onInvokeTask ? zoneSpec : parentDelegate._invokeTaskZS); + this._invokeTaskDlgt = + zoneSpec && (zoneSpec.onInvokeTask ? parentDelegate : parentDelegate._invokeTaskDlgt); + this._invokeTaskCurrZone = + zoneSpec && (zoneSpec.onInvokeTask ? this.zone : parentDelegate.zone); + this._cancelTaskZS = + zoneSpec && (zoneSpec.onCancelTask ? zoneSpec : parentDelegate._cancelTaskZS); + this._cancelTaskDlgt = + zoneSpec && (zoneSpec.onCancelTask ? parentDelegate : parentDelegate._cancelTaskDlgt); + this._cancelTaskCurrZone = + zoneSpec && (zoneSpec.onCancelTask ? this.zone : parentDelegate.zone); + this._hasTaskZS = null; + this._hasTaskDlgt = null; + this._hasTaskDlgtOwner = null; + this._hasTaskCurrZone = null; + var zoneSpecHasTask = zoneSpec && zoneSpec.onHasTask; + var parentHasTask = parentDelegate && parentDelegate._hasTaskZS; + if (zoneSpecHasTask || parentHasTask) { + // If we need to report hasTask, than this ZS needs to do ref counting on tasks. In such + // a case all task related interceptors must go through this ZD. We can't short circuit it. + this._hasTaskZS = zoneSpecHasTask ? zoneSpec : DELEGATE_ZS; + this._hasTaskDlgt = parentDelegate; + this._hasTaskDlgtOwner = this; + this._hasTaskCurrZone = zone; + if (!zoneSpec.onScheduleTask) { + this._scheduleTaskZS = DELEGATE_ZS; + this._scheduleTaskDlgt = parentDelegate; + this._scheduleTaskCurrZone = this.zone; + } + if (!zoneSpec.onInvokeTask) { + this._invokeTaskZS = DELEGATE_ZS; + this._invokeTaskDlgt = parentDelegate; + this._invokeTaskCurrZone = this.zone; + } + if (!zoneSpec.onCancelTask) { + this._cancelTaskZS = DELEGATE_ZS; + this._cancelTaskDlgt = parentDelegate; + this._cancelTaskCurrZone = this.zone; + } + } + } + ZoneDelegate.prototype.fork = function (targetZone, zoneSpec) { + return this._forkZS ? this._forkZS.onFork(this._forkDlgt, this.zone, targetZone, zoneSpec) : + new Zone(targetZone, zoneSpec); + }; + ZoneDelegate.prototype.intercept = function (targetZone, callback, source) { + return this._interceptZS ? + this._interceptZS.onIntercept(this._interceptDlgt, this._interceptCurrZone, targetZone, callback, source) : + callback; + }; + ZoneDelegate.prototype.invoke = function (targetZone, callback, applyThis, applyArgs, source) { + return this._invokeZS ? this._invokeZS.onInvoke(this._invokeDlgt, this._invokeCurrZone, targetZone, callback, applyThis, applyArgs, source) : + callback.apply(applyThis, applyArgs); + }; + ZoneDelegate.prototype.handleError = function (targetZone, error) { + return this._handleErrorZS ? + this._handleErrorZS.onHandleError(this._handleErrorDlgt, this._handleErrorCurrZone, targetZone, error) : + true; + }; + ZoneDelegate.prototype.scheduleTask = function (targetZone, task) { + var returnTask = task; + if (this._scheduleTaskZS) { + if (this._hasTaskZS) { + returnTask._zoneDelegates.push(this._hasTaskDlgtOwner); + } + returnTask = this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt, this._scheduleTaskCurrZone, targetZone, task); + if (!returnTask) + returnTask = task; + } + else { + if (task.scheduleFn) { + task.scheduleFn(task); + } + else if (task.type == microTask) { + scheduleMicroTask(task); + } + else { + throw new Error('Task is missing scheduleFn.'); + } + } + return returnTask; + }; + ZoneDelegate.prototype.invokeTask = function (targetZone, task, applyThis, applyArgs) { + return this._invokeTaskZS ? this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt, this._invokeTaskCurrZone, targetZone, task, applyThis, applyArgs) : + task.callback.apply(applyThis, applyArgs); + }; + ZoneDelegate.prototype.cancelTask = function (targetZone, task) { + var value; + if (this._cancelTaskZS) { + value = this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt, this._cancelTaskCurrZone, targetZone, task); + } + else { + if (!task.cancelFn) { + throw Error('Task is not cancelable'); + } + value = task.cancelFn(task); + } + return value; + }; + ZoneDelegate.prototype.hasTask = function (targetZone, isEmpty) { + // hasTask should not throw error so other ZoneDelegate + // can still trigger hasTask callback + try { + this._hasTaskZS && + this._hasTaskZS.onHasTask(this._hasTaskDlgt, this._hasTaskCurrZone, targetZone, isEmpty); + } + catch (err) { + this.handleError(targetZone, err); + } + }; + ZoneDelegate.prototype._updateTaskCount = function (type, count) { + var counts = this._taskCounts; + var prev = counts[type]; + var next = counts[type] = prev + count; + if (next < 0) { + throw new Error('More tasks executed then were scheduled.'); + } + if (prev == 0 || next == 0) { + var isEmpty = { + microTask: counts['microTask'] > 0, + macroTask: counts['macroTask'] > 0, + eventTask: counts['eventTask'] > 0, + change: type + }; + this.hasTask(this.zone, isEmpty); + } + }; + return ZoneDelegate; + }()); + var ZoneTask = /** @class */ (function () { + function ZoneTask(type, source, callback, options, scheduleFn, cancelFn) { + this._zone = null; + this.runCount = 0; + this._zoneDelegates = null; + this._state = 'notScheduled'; + this.type = type; + this.source = source; + this.data = options; + this.scheduleFn = scheduleFn; + this.cancelFn = cancelFn; + this.callback = callback; + var self = this; + // TODO: @JiaLiPassion options should have interface + if (type === eventTask && options && options.useG) { + this.invoke = ZoneTask.invokeTask; + } + else { + this.invoke = function () { + return ZoneTask.invokeTask.call(global, self, this, arguments); + }; + } + } + ZoneTask.invokeTask = function (task, target, args) { + if (!task) { + task = this; + } + _numberOfNestedTaskFrames++; + try { + task.runCount++; + return task.zone.runTask(task, target, args); + } + finally { + if (_numberOfNestedTaskFrames == 1) { + drainMicroTaskQueue(); + } + _numberOfNestedTaskFrames--; + } + }; + Object.defineProperty(ZoneTask.prototype, "zone", { + get: function () { + return this._zone; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ZoneTask.prototype, "state", { + get: function () { + return this._state; + }, + enumerable: true, + configurable: true + }); + ZoneTask.prototype.cancelScheduleRequest = function () { + this._transitionTo(notScheduled, scheduling); + }; + ZoneTask.prototype._transitionTo = function (toState, fromState1, fromState2) { + if (this._state === fromState1 || this._state === fromState2) { + this._state = toState; + if (toState == notScheduled) { + this._zoneDelegates = null; + } + } + else { + throw new Error(this.type + " '" + this.source + "': can not transition to '" + toState + "', expecting state '" + fromState1 + "'" + (fromState2 ? ' or \'' + fromState2 + '\'' : '') + ", was '" + this._state + "'."); + } + }; + ZoneTask.prototype.toString = function () { + if (this.data && typeof this.data.handleId !== 'undefined') { + return this.data.handleId.toString(); + } + else { + return Object.prototype.toString.call(this); + } + }; + // add toJSON method to prevent cyclic error when + // call JSON.stringify(zoneTask) + ZoneTask.prototype.toJSON = function () { + return { + type: this.type, + state: this.state, + source: this.source, + zone: this.zone.name, + runCount: this.runCount + }; + }; + return ZoneTask; + }()); + ////////////////////////////////////////////////////// + ////////////////////////////////////////////////////// + /// MICROTASK QUEUE + ////////////////////////////////////////////////////// + ////////////////////////////////////////////////////// + var symbolSetTimeout = __symbol__('setTimeout'); + var symbolPromise = __symbol__('Promise'); + var symbolThen = __symbol__('then'); + var _microTaskQueue = []; + var _isDrainingMicrotaskQueue = false; + var nativeMicroTaskQueuePromise; + function scheduleMicroTask(task) { + // if we are not running in any task, and there has not been anything scheduled + // we must bootstrap the initial task creation by manually scheduling the drain + if (_numberOfNestedTaskFrames === 0 && _microTaskQueue.length === 0) { + // We are not running in Task, so we need to kickstart the microtask queue. + if (!nativeMicroTaskQueuePromise) { + if (global[symbolPromise]) { + nativeMicroTaskQueuePromise = global[symbolPromise].resolve(0); + } + } + if (nativeMicroTaskQueuePromise) { + var nativeThen = nativeMicroTaskQueuePromise[symbolThen]; + if (!nativeThen) { + // native Promise is not patchable, we need to use `then` directly + // issue 1078 + nativeThen = nativeMicroTaskQueuePromise['then']; + } + nativeThen.call(nativeMicroTaskQueuePromise, drainMicroTaskQueue); + } + else { + global[symbolSetTimeout](drainMicroTaskQueue, 0); + } + } + task && _microTaskQueue.push(task); + } + function drainMicroTaskQueue() { + if (!_isDrainingMicrotaskQueue) { + _isDrainingMicrotaskQueue = true; + while (_microTaskQueue.length) { + var queue = _microTaskQueue; + _microTaskQueue = []; + for (var i = 0; i < queue.length; i++) { + var task = queue[i]; + try { + task.zone.runTask(task, null, null); + } + catch (error) { + _api.onUnhandledError(error); + } + } + } + _api.microtaskDrainDone(); + _isDrainingMicrotaskQueue = false; + } + } + ////////////////////////////////////////////////////// + ////////////////////////////////////////////////////// + /// BOOTSTRAP + ////////////////////////////////////////////////////// + ////////////////////////////////////////////////////// + var NO_ZONE = { name: 'NO ZONE' }; + var notScheduled = 'notScheduled', scheduling = 'scheduling', scheduled = 'scheduled', running = 'running', canceling = 'canceling', unknown = 'unknown'; + var microTask = 'microTask', macroTask = 'macroTask', eventTask = 'eventTask'; + var patches = {}; + var _api = { + symbol: __symbol__, + currentZoneFrame: function () { return _currentZoneFrame; }, + onUnhandledError: noop, + microtaskDrainDone: noop, + scheduleMicroTask: scheduleMicroTask, + showUncaughtError: function () { return !Zone[__symbol__('ignoreConsoleErrorUncaughtError')]; }, + patchEventTarget: function () { return []; }, + patchOnProperties: noop, + patchMethod: function () { return noop; }, + bindArguments: function () { return []; }, + patchThen: function () { return noop; }, + patchMacroTask: function () { return noop; }, + setNativePromise: function (NativePromise) { + // sometimes NativePromise.resolve static function + // is not ready yet, (such as core-js/es6.promise) + // so we need to check here. + if (NativePromise && typeof NativePromise.resolve === 'function') { + nativeMicroTaskQueuePromise = NativePromise.resolve(0); + } + }, + patchEventPrototype: function () { return noop; }, + isIEOrEdge: function () { return false; }, + getGlobalObjects: function () { return undefined; }, + ObjectDefineProperty: function () { return noop; }, + ObjectGetOwnPropertyDescriptor: function () { return undefined; }, + ObjectCreate: function () { return undefined; }, + ArraySlice: function () { return []; }, + patchClass: function () { return noop; }, + wrapWithCurrentZone: function () { return noop; }, + filterProperties: function () { return []; }, + attachOriginToPatched: function () { return noop; }, + _redefineProperty: function () { return noop; }, + patchCallbacks: function () { return noop; } + }; + var _currentZoneFrame = { parent: null, zone: new Zone(null, null) }; + var _currentTask = null; + var _numberOfNestedTaskFrames = 0; + function noop() { } + function __symbol__(name) { + return '__zone_symbol__' + name; + } + performanceMeasure('Zone', 'Zone'); + return global['Zone'] = Zone; +})(typeof window !== 'undefined' && window || typeof self !== 'undefined' && self || global); + +var __values = (undefined && undefined.__values) || function (o) { + var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0; + if (m) return m.call(o); + return { + next: function () { + if (o && i >= o.length) o = void 0; + return { value: o && o[i++], done: !o }; + } + }; +}; +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +Zone.__load_patch('ZoneAwarePromise', function (global, Zone, api) { + var ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + var ObjectDefineProperty = Object.defineProperty; + function readableObjectToString(obj) { + if (obj && obj.toString === Object.prototype.toString) { + var className = obj.constructor && obj.constructor.name; + return (className ? className : '') + ': ' + JSON.stringify(obj); + } + return obj ? obj.toString() : Object.prototype.toString.call(obj); + } + var __symbol__ = api.symbol; + var _uncaughtPromiseErrors = []; + var symbolPromise = __symbol__('Promise'); + var symbolThen = __symbol__('then'); + var creationTrace = '__creationTrace__'; + api.onUnhandledError = function (e) { + if (api.showUncaughtError()) { + var rejection = e && e.rejection; + if (rejection) { + console.error('Unhandled Promise rejection:', rejection instanceof Error ? rejection.message : rejection, '; Zone:', e.zone.name, '; Task:', e.task && e.task.source, '; Value:', rejection, rejection instanceof Error ? rejection.stack : undefined); + } + else { + console.error(e); + } + } + }; + api.microtaskDrainDone = function () { + while (_uncaughtPromiseErrors.length) { + var _loop_1 = function () { + var uncaughtPromiseError = _uncaughtPromiseErrors.shift(); + try { + uncaughtPromiseError.zone.runGuarded(function () { + throw uncaughtPromiseError; + }); + } + catch (error) { + handleUnhandledRejection(error); + } + }; + while (_uncaughtPromiseErrors.length) { + _loop_1(); + } + } + }; + var UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL = __symbol__('unhandledPromiseRejectionHandler'); + function handleUnhandledRejection(e) { + api.onUnhandledError(e); + try { + var handler = Zone[UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL]; + if (handler && typeof handler === 'function') { + handler.call(this, e); + } + } + catch (err) { + } + } + function isThenable(value) { + return value && value.then; + } + function forwardResolution(value) { + return value; + } + function forwardRejection(rejection) { + return ZoneAwarePromise.reject(rejection); + } + var symbolState = __symbol__('state'); + var symbolValue = __symbol__('value'); + var symbolFinally = __symbol__('finally'); + var symbolParentPromiseValue = __symbol__('parentPromiseValue'); + var symbolParentPromiseState = __symbol__('parentPromiseState'); + var source = 'Promise.then'; + var UNRESOLVED = null; + var RESOLVED = true; + var REJECTED = false; + var REJECTED_NO_CATCH = 0; + function makeResolver(promise, state) { + return function (v) { + try { + resolvePromise(promise, state, v); + } + catch (err) { + resolvePromise(promise, false, err); + } + // Do not return value or you will break the Promise spec. + }; + } + var once = function () { + var wasCalled = false; + return function wrapper(wrappedFunction) { + return function () { + if (wasCalled) { + return; + } + wasCalled = true; + wrappedFunction.apply(null, arguments); + }; + }; + }; + var TYPE_ERROR = 'Promise resolved with itself'; + var CURRENT_TASK_TRACE_SYMBOL = __symbol__('currentTaskTrace'); + // Promise Resolution + function resolvePromise(promise, state, value) { + var onceWrapper = once(); + if (promise === value) { + throw new TypeError(TYPE_ERROR); + } + if (promise[symbolState] === UNRESOLVED) { + // should only get value.then once based on promise spec. + var then = null; + try { + if (typeof value === 'object' || typeof value === 'function') { + then = value && value.then; + } + } + catch (err) { + onceWrapper(function () { + resolvePromise(promise, false, err); + })(); + return promise; + } + // if (value instanceof ZoneAwarePromise) { + if (state !== REJECTED && value instanceof ZoneAwarePromise && + value.hasOwnProperty(symbolState) && value.hasOwnProperty(symbolValue) && + value[symbolState] !== UNRESOLVED) { + clearRejectedNoCatch(value); + resolvePromise(promise, value[symbolState], value[symbolValue]); + } + else if (state !== REJECTED && typeof then === 'function') { + try { + then.call(value, onceWrapper(makeResolver(promise, state)), onceWrapper(makeResolver(promise, false))); + } + catch (err) { + onceWrapper(function () { + resolvePromise(promise, false, err); + })(); + } + } + else { + promise[symbolState] = state; + var queue = promise[symbolValue]; + promise[symbolValue] = value; + if (promise[symbolFinally] === symbolFinally) { + // the promise is generated by Promise.prototype.finally + if (state === RESOLVED) { + // the state is resolved, should ignore the value + // and use parent promise value + promise[symbolState] = promise[symbolParentPromiseState]; + promise[symbolValue] = promise[symbolParentPromiseValue]; + } + } + // record task information in value when error occurs, so we can + // do some additional work such as render longStackTrace + if (state === REJECTED && value instanceof Error) { + // check if longStackTraceZone is here + var trace = Zone.currentTask && Zone.currentTask.data && + Zone.currentTask.data[creationTrace]; + if (trace) { + // only keep the long stack trace into error when in longStackTraceZone + ObjectDefineProperty(value, CURRENT_TASK_TRACE_SYMBOL, { configurable: true, enumerable: false, writable: true, value: trace }); + } + } + for (var i = 0; i < queue.length;) { + scheduleResolveOrReject(promise, queue[i++], queue[i++], queue[i++], queue[i++]); + } + if (queue.length == 0 && state == REJECTED) { + promise[symbolState] = REJECTED_NO_CATCH; + try { + // try to print more readable error log + throw new Error('Uncaught (in promise): ' + readableObjectToString(value) + + (value && value.stack ? '\n' + value.stack : '')); + } + catch (err) { + var error_1 = err; + error_1.rejection = value; + error_1.promise = promise; + error_1.zone = Zone.current; + error_1.task = Zone.currentTask; + _uncaughtPromiseErrors.push(error_1); + api.scheduleMicroTask(); // to make sure that it is running + } + } + } + } + // Resolving an already resolved promise is a noop. + return promise; + } + var REJECTION_HANDLED_HANDLER = __symbol__('rejectionHandledHandler'); + function clearRejectedNoCatch(promise) { + if (promise[symbolState] === REJECTED_NO_CATCH) { + // if the promise is rejected no catch status + // and queue.length > 0, means there is a error handler + // here to handle the rejected promise, we should trigger + // windows.rejectionhandled eventHandler or nodejs rejectionHandled + // eventHandler + try { + var handler = Zone[REJECTION_HANDLED_HANDLER]; + if (handler && typeof handler === 'function') { + handler.call(this, { rejection: promise[symbolValue], promise: promise }); + } + } + catch (err) { + } + promise[symbolState] = REJECTED; + for (var i = 0; i < _uncaughtPromiseErrors.length; i++) { + if (promise === _uncaughtPromiseErrors[i].promise) { + _uncaughtPromiseErrors.splice(i, 1); + } + } + } + } + function scheduleResolveOrReject(promise, zone, chainPromise, onFulfilled, onRejected) { + clearRejectedNoCatch(promise); + var promiseState = promise[symbolState]; + var delegate = promiseState ? + (typeof onFulfilled === 'function') ? onFulfilled : forwardResolution : + (typeof onRejected === 'function') ? onRejected : forwardRejection; + zone.scheduleMicroTask(source, function () { + try { + var parentPromiseValue = promise[symbolValue]; + var isFinallyPromise = chainPromise && symbolFinally === chainPromise[symbolFinally]; + if (isFinallyPromise) { + // if the promise is generated from finally call, keep parent promise's state and value + chainPromise[symbolParentPromiseValue] = parentPromiseValue; + chainPromise[symbolParentPromiseState] = promiseState; + } + // should not pass value to finally callback + var value = zone.run(delegate, undefined, isFinallyPromise && delegate !== forwardRejection && delegate !== forwardResolution ? + [] : + [parentPromiseValue]); + resolvePromise(chainPromise, true, value); + } + catch (error) { + // if error occurs, should always return this error + resolvePromise(chainPromise, false, error); + } + }, chainPromise); + } + var ZONE_AWARE_PROMISE_TO_STRING = 'function ZoneAwarePromise() { [native code] }'; + var ZoneAwarePromise = /** @class */ (function () { + function ZoneAwarePromise(executor) { + var promise = this; + if (!(promise instanceof ZoneAwarePromise)) { + throw new Error('Must be an instanceof Promise.'); + } + promise[symbolState] = UNRESOLVED; + promise[symbolValue] = []; // queue; + try { + executor && executor(makeResolver(promise, RESOLVED), makeResolver(promise, REJECTED)); + } + catch (error) { + resolvePromise(promise, false, error); + } + } + ZoneAwarePromise.toString = function () { + return ZONE_AWARE_PROMISE_TO_STRING; + }; + ZoneAwarePromise.resolve = function (value) { + return resolvePromise(new this(null), RESOLVED, value); + }; + ZoneAwarePromise.reject = function (error) { + return resolvePromise(new this(null), REJECTED, error); + }; + ZoneAwarePromise.race = function (values) { + var e_1, _a; + var resolve; + var reject; + var promise = new this(function (res, rej) { + resolve = res; + reject = rej; + }); + function onResolve(value) { + resolve(value); + } + function onReject(error) { + reject(error); + } + try { + for (var values_1 = __values(values), values_1_1 = values_1.next(); !values_1_1.done; values_1_1 = values_1.next()) { + var value = values_1_1.value; + if (!isThenable(value)) { + value = this.resolve(value); + } + value.then(onResolve, onReject); + } + } + catch (e_1_1) { e_1 = { error: e_1_1 }; } + finally { + try { + if (values_1_1 && !values_1_1.done && (_a = values_1.return)) _a.call(values_1); + } + finally { if (e_1) throw e_1.error; } + } + return promise; + }; + ZoneAwarePromise.all = function (values) { + var e_2, _a; + var resolve; + var reject; + var promise = new this(function (res, rej) { + resolve = res; + reject = rej; + }); + // Start at 2 to prevent prematurely resolving if .then is called immediately. + var unresolvedCount = 2; + var valueIndex = 0; + var resolvedValues = []; + var _loop_2 = function (value) { + if (!isThenable(value)) { + value = this_1.resolve(value); + } + var curValueIndex = valueIndex; + value.then(function (value) { + resolvedValues[curValueIndex] = value; + unresolvedCount--; + if (unresolvedCount === 0) { + resolve(resolvedValues); + } + }, reject); + unresolvedCount++; + valueIndex++; + }; + var this_1 = this; + try { + for (var values_2 = __values(values), values_2_1 = values_2.next(); !values_2_1.done; values_2_1 = values_2.next()) { + var value = values_2_1.value; + _loop_2(value); + } + } + catch (e_2_1) { e_2 = { error: e_2_1 }; } + finally { + try { + if (values_2_1 && !values_2_1.done && (_a = values_2.return)) _a.call(values_2); + } + finally { if (e_2) throw e_2.error; } + } + // Make the unresolvedCount zero-based again. + unresolvedCount -= 2; + if (unresolvedCount === 0) { + resolve(resolvedValues); + } + return promise; + }; + Object.defineProperty(ZoneAwarePromise.prototype, Symbol.toStringTag, { + get: function () { + return 'Promise'; + }, + enumerable: true, + configurable: true + }); + ZoneAwarePromise.prototype.then = function (onFulfilled, onRejected) { + var chainPromise = new this.constructor(null); + var zone = Zone.current; + if (this[symbolState] == UNRESOLVED) { + this[symbolValue].push(zone, chainPromise, onFulfilled, onRejected); + } + else { + scheduleResolveOrReject(this, zone, chainPromise, onFulfilled, onRejected); + } + return chainPromise; + }; + ZoneAwarePromise.prototype.catch = function (onRejected) { + return this.then(null, onRejected); + }; + ZoneAwarePromise.prototype.finally = function (onFinally) { + var chainPromise = new this.constructor(null); + chainPromise[symbolFinally] = symbolFinally; + var zone = Zone.current; + if (this[symbolState] == UNRESOLVED) { + this[symbolValue].push(zone, chainPromise, onFinally, onFinally); + } + else { + scheduleResolveOrReject(this, zone, chainPromise, onFinally, onFinally); + } + return chainPromise; + }; + return ZoneAwarePromise; + }()); + // Protect against aggressive optimizers dropping seemingly unused properties. + // E.g. Closure Compiler in advanced mode. + ZoneAwarePromise['resolve'] = ZoneAwarePromise.resolve; + ZoneAwarePromise['reject'] = ZoneAwarePromise.reject; + ZoneAwarePromise['race'] = ZoneAwarePromise.race; + ZoneAwarePromise['all'] = ZoneAwarePromise.all; + var NativePromise = global[symbolPromise] = global['Promise']; + var ZONE_AWARE_PROMISE = Zone.__symbol__('ZoneAwarePromise'); + var desc = ObjectGetOwnPropertyDescriptor(global, 'Promise'); + if (!desc || desc.configurable) { + desc && delete desc.writable; + desc && delete desc.value; + if (!desc) { + desc = { configurable: true, enumerable: true }; + } + desc.get = function () { + // if we already set ZoneAwarePromise, use patched one + // otherwise return native one. + return global[ZONE_AWARE_PROMISE] ? global[ZONE_AWARE_PROMISE] : global[symbolPromise]; + }; + desc.set = function (NewNativePromise) { + if (NewNativePromise === ZoneAwarePromise) { + // if the NewNativePromise is ZoneAwarePromise + // save to global + global[ZONE_AWARE_PROMISE] = NewNativePromise; + } + else { + // if the NewNativePromise is not ZoneAwarePromise + // for example: after load zone.js, some library just + // set es6-promise to global, if we set it to global + // directly, assertZonePatched will fail and angular + // will not loaded, so we just set the NewNativePromise + // to global[symbolPromise], so the result is just like + // we load ES6 Promise before zone.js + global[symbolPromise] = NewNativePromise; + if (!NewNativePromise.prototype[symbolThen]) { + patchThen(NewNativePromise); + } + api.setNativePromise(NewNativePromise); + } + }; + ObjectDefineProperty(global, 'Promise', desc); + } + global['Promise'] = ZoneAwarePromise; + var symbolThenPatched = __symbol__('thenPatched'); + function patchThen(Ctor) { + var proto = Ctor.prototype; + var prop = ObjectGetOwnPropertyDescriptor(proto, 'then'); + if (prop && (prop.writable === false || !prop.configurable)) { + // check Ctor.prototype.then propertyDescriptor is writable or not + // in meteor env, writable is false, we should ignore such case + return; + } + var originalThen = proto.then; + // Keep a reference to the original method. + proto[symbolThen] = originalThen; + Ctor.prototype.then = function (onResolve, onReject) { + var _this = this; + var wrapped = new ZoneAwarePromise(function (resolve, reject) { + originalThen.call(_this, resolve, reject); + }); + return wrapped.then(onResolve, onReject); + }; + Ctor[symbolThenPatched] = true; + } + api.patchThen = patchThen; + function zoneify(fn) { + return function () { + var resultPromise = fn.apply(this, arguments); + if (resultPromise instanceof ZoneAwarePromise) { + return resultPromise; + } + var ctor = resultPromise.constructor; + if (!ctor[symbolThenPatched]) { + patchThen(ctor); + } + return resultPromise; + }; + } + if (NativePromise) { + patchThen(NativePromise); + var fetch_1 = global['fetch']; + if (typeof fetch_1 == 'function') { + global[api.symbol('fetch')] = fetch_1; + global['fetch'] = zoneify(fetch_1); + } + } + // This is not part of public API, but it is useful for tests, so we expose it. + Promise[Zone.__symbol__('uncaughtPromiseErrors')] = _uncaughtPromiseErrors; + return ZoneAwarePromise; +}); + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * Suppress closure compiler errors about unknown 'Zone' variable + * @fileoverview + * @suppress {undefinedVars,globalThis,missingRequire} + */ +// issue #989, to reduce bundle size, use short name +/** Object.getOwnPropertyDescriptor */ +var ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; +/** Object.defineProperty */ +var ObjectDefineProperty = Object.defineProperty; +/** Object.getPrototypeOf */ +var ObjectGetPrototypeOf = Object.getPrototypeOf; +/** Object.create */ +var ObjectCreate = Object.create; +/** Array.prototype.slice */ +var ArraySlice = Array.prototype.slice; +/** addEventListener string const */ +var ADD_EVENT_LISTENER_STR = 'addEventListener'; +/** removeEventListener string const */ +var REMOVE_EVENT_LISTENER_STR = 'removeEventListener'; +/** zoneSymbol addEventListener */ +var ZONE_SYMBOL_ADD_EVENT_LISTENER = Zone.__symbol__(ADD_EVENT_LISTENER_STR); +/** zoneSymbol removeEventListener */ +var ZONE_SYMBOL_REMOVE_EVENT_LISTENER = Zone.__symbol__(REMOVE_EVENT_LISTENER_STR); +/** true string const */ +var TRUE_STR = 'true'; +/** false string const */ +var FALSE_STR = 'false'; +/** __zone_symbol__ string const */ +var ZONE_SYMBOL_PREFIX = '__zone_symbol__'; +function wrapWithCurrentZone(callback, source) { + return Zone.current.wrap(callback, source); +} +function scheduleMacroTaskWithCurrentZone(source, callback, data, customSchedule, customCancel) { + return Zone.current.scheduleMacroTask(source, callback, data, customSchedule, customCancel); +} +var zoneSymbol = Zone.__symbol__; +var isWindowExists = typeof window !== 'undefined'; +var internalWindow = isWindowExists ? window : undefined; +var _global = isWindowExists && internalWindow || typeof self === 'object' && self || global; +var REMOVE_ATTRIBUTE = 'removeAttribute'; +var NULL_ON_PROP_VALUE = [null]; +function bindArguments(args, source) { + for (var i = args.length - 1; i >= 0; i--) { + if (typeof args[i] === 'function') { + args[i] = wrapWithCurrentZone(args[i], source + '_' + i); + } + } + return args; +} +function patchPrototype(prototype, fnNames) { + var source = prototype.constructor['name']; + var _loop_1 = function (i) { + var name_1 = fnNames[i]; + var delegate = prototype[name_1]; + if (delegate) { + var prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, name_1); + if (!isPropertyWritable(prototypeDesc)) { + return "continue"; + } + prototype[name_1] = (function (delegate) { + var patched = function () { + return delegate.apply(this, bindArguments(arguments, source + '.' + name_1)); + }; + attachOriginToPatched(patched, delegate); + return patched; + })(delegate); + } + }; + for (var i = 0; i < fnNames.length; i++) { + _loop_1(i); + } +} +function isPropertyWritable(propertyDesc) { + if (!propertyDesc) { + return true; + } + if (propertyDesc.writable === false) { + return false; + } + return !(typeof propertyDesc.get === 'function' && typeof propertyDesc.set === 'undefined'); +} +var isWebWorker = (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope); +// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify +// this code. +var isNode = (!('nw' in _global) && typeof _global.process !== 'undefined' && + {}.toString.call(_global.process) === '[object process]'); +var isBrowser = !isNode && !isWebWorker && !!(isWindowExists && internalWindow['HTMLElement']); +// we are in electron of nw, so we are both browser and nodejs +// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify +// this code. +var isMix = typeof _global.process !== 'undefined' && + {}.toString.call(_global.process) === '[object process]' && !isWebWorker && + !!(isWindowExists && internalWindow['HTMLElement']); +var zoneSymbolEventNames = {}; +var wrapFn = function (event) { + // https://github.com/angular/zone.js/issues/911, in IE, sometimes + // event will be undefined, so we need to use window.event + event = event || _global.event; + if (!event) { + return; + } + var eventNameSymbol = zoneSymbolEventNames[event.type]; + if (!eventNameSymbol) { + eventNameSymbol = zoneSymbolEventNames[event.type] = zoneSymbol('ON_PROPERTY' + event.type); + } + var target = this || event.target || _global; + var listener = target[eventNameSymbol]; + var result; + if (isBrowser && target === internalWindow && event.type === 'error') { + // window.onerror have different signiture + // https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror#window.onerror + // and onerror callback will prevent default when callback return true + var errorEvent = event; + result = listener && + listener.call(this, errorEvent.message, errorEvent.filename, errorEvent.lineno, errorEvent.colno, errorEvent.error); + if (result === true) { + event.preventDefault(); + } + } + else { + result = listener && listener.apply(this, arguments); + if (result != undefined && !result) { + event.preventDefault(); + } + } + return result; +}; +function patchProperty(obj, prop, prototype) { + var desc = ObjectGetOwnPropertyDescriptor(obj, prop); + if (!desc && prototype) { + // when patch window object, use prototype to check prop exist or not + var prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, prop); + if (prototypeDesc) { + desc = { enumerable: true, configurable: true }; + } + } + // if the descriptor not exists or is not configurable + // just return + if (!desc || !desc.configurable) { + return; + } + var onPropPatchedSymbol = zoneSymbol('on' + prop + 'patched'); + if (obj.hasOwnProperty(onPropPatchedSymbol) && obj[onPropPatchedSymbol]) { + return; + } + // A property descriptor cannot have getter/setter and be writable + // deleting the writable and value properties avoids this error: + // + // TypeError: property descriptors must not specify a value or be writable when a + // getter or setter has been specified + delete desc.writable; + delete desc.value; + var originalDescGet = desc.get; + var originalDescSet = desc.set; + // substr(2) cuz 'onclick' -> 'click', etc + var eventName = prop.substr(2); + var eventNameSymbol = zoneSymbolEventNames[eventName]; + if (!eventNameSymbol) { + eventNameSymbol = zoneSymbolEventNames[eventName] = zoneSymbol('ON_PROPERTY' + eventName); + } + desc.set = function (newValue) { + // in some of windows's onproperty callback, this is undefined + // so we need to check it + var target = this; + if (!target && obj === _global) { + target = _global; + } + if (!target) { + return; + } + var previousValue = target[eventNameSymbol]; + if (previousValue) { + target.removeEventListener(eventName, wrapFn); + } + // issue #978, when onload handler was added before loading zone.js + // we should remove it with originalDescSet + if (originalDescSet) { + originalDescSet.apply(target, NULL_ON_PROP_VALUE); + } + if (typeof newValue === 'function') { + target[eventNameSymbol] = newValue; + target.addEventListener(eventName, wrapFn, false); + } + else { + target[eventNameSymbol] = null; + } + }; + // The getter would return undefined for unassigned properties but the default value of an + // unassigned property is null + desc.get = function () { + // in some of windows's onproperty callback, this is undefined + // so we need to check it + var target = this; + if (!target && obj === _global) { + target = _global; + } + if (!target) { + return null; + } + var listener = target[eventNameSymbol]; + if (listener) { + return listener; + } + else if (originalDescGet) { + // result will be null when use inline event attribute, + // such as + // because the onclick function is internal raw uncompiled handler + // the onclick will be evaluated when first time event was triggered or + // the property is accessed, https://github.com/angular/zone.js/issues/525 + // so we should use original native get to retrieve the handler + var value = originalDescGet && originalDescGet.call(this); + if (value) { + desc.set.call(this, value); + if (typeof target[REMOVE_ATTRIBUTE] === 'function') { + target.removeAttribute(prop); + } + return value; + } + } + return null; + }; + ObjectDefineProperty(obj, prop, desc); + obj[onPropPatchedSymbol] = true; +} +function patchOnProperties(obj, properties, prototype) { + if (properties) { + for (var i = 0; i < properties.length; i++) { + patchProperty(obj, 'on' + properties[i], prototype); + } + } + else { + var onProperties = []; + for (var prop in obj) { + if (prop.substr(0, 2) == 'on') { + onProperties.push(prop); + } + } + for (var j = 0; j < onProperties.length; j++) { + patchProperty(obj, onProperties[j], prototype); + } + } +} +var originalInstanceKey = zoneSymbol('originalInstance'); +// wrap some native API on `window` +function patchClass(className) { + var OriginalClass = _global[className]; + if (!OriginalClass) + return; + // keep original class in global + _global[zoneSymbol(className)] = OriginalClass; + _global[className] = function () { + var a = bindArguments(arguments, className); + switch (a.length) { + case 0: + this[originalInstanceKey] = new OriginalClass(); + break; + case 1: + this[originalInstanceKey] = new OriginalClass(a[0]); + break; + case 2: + this[originalInstanceKey] = new OriginalClass(a[0], a[1]); + break; + case 3: + this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2]); + break; + case 4: + this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2], a[3]); + break; + default: + throw new Error('Arg list too long.'); + } + }; + // attach original delegate to patched function + attachOriginToPatched(_global[className], OriginalClass); + var instance = new OriginalClass(function () { }); + var prop; + for (prop in instance) { + // https://bugs.webkit.org/show_bug.cgi?id=44721 + if (className === 'XMLHttpRequest' && prop === 'responseBlob') + continue; + (function (prop) { + if (typeof instance[prop] === 'function') { + _global[className].prototype[prop] = function () { + return this[originalInstanceKey][prop].apply(this[originalInstanceKey], arguments); + }; + } + else { + ObjectDefineProperty(_global[className].prototype, prop, { + set: function (fn) { + if (typeof fn === 'function') { + this[originalInstanceKey][prop] = wrapWithCurrentZone(fn, className + '.' + prop); + // keep callback in wrapped function so we can + // use it in Function.prototype.toString to return + // the native one. + attachOriginToPatched(this[originalInstanceKey][prop], fn); + } + else { + this[originalInstanceKey][prop] = fn; + } + }, + get: function () { + return this[originalInstanceKey][prop]; + } + }); + } + }(prop)); + } + for (prop in OriginalClass) { + if (prop !== 'prototype' && OriginalClass.hasOwnProperty(prop)) { + _global[className][prop] = OriginalClass[prop]; + } + } +} +function copySymbolProperties(src, dest) { + if (typeof Object.getOwnPropertySymbols !== 'function') { + return; + } + var symbols = Object.getOwnPropertySymbols(src); + symbols.forEach(function (symbol) { + var desc = Object.getOwnPropertyDescriptor(src, symbol); + Object.defineProperty(dest, symbol, { + get: function () { + return src[symbol]; + }, + set: function (value) { + if (desc && (!desc.writable || typeof desc.set !== 'function')) { + // if src[symbol] is not writable or not have a setter, just return + return; + } + src[symbol] = value; + }, + enumerable: desc ? desc.enumerable : true, + configurable: desc ? desc.configurable : true + }); + }); +} +var shouldCopySymbolProperties = false; + +function patchMethod(target, name, patchFn) { + var proto = target; + while (proto && !proto.hasOwnProperty(name)) { + proto = ObjectGetPrototypeOf(proto); + } + if (!proto && target[name]) { + // somehow we did not find it, but we can see it. This happens on IE for Window properties. + proto = target; + } + var delegateName = zoneSymbol(name); + var delegate = null; + if (proto && !(delegate = proto[delegateName])) { + delegate = proto[delegateName] = proto[name]; + // check whether proto[name] is writable + // some property is readonly in safari, such as HtmlCanvasElement.prototype.toBlob + var desc = proto && ObjectGetOwnPropertyDescriptor(proto, name); + if (isPropertyWritable(desc)) { + var patchDelegate_1 = patchFn(delegate, delegateName, name); + proto[name] = function () { + return patchDelegate_1(this, arguments); + }; + attachOriginToPatched(proto[name], delegate); + if (shouldCopySymbolProperties) { + copySymbolProperties(delegate, proto[name]); + } + } + } + return delegate; +} +// TODO: @JiaLiPassion, support cancel task later if necessary +function patchMacroTask(obj, funcName, metaCreator) { + var setNative = null; + function scheduleTask(task) { + var data = task.data; + data.args[data.cbIdx] = function () { + task.invoke.apply(this, arguments); + }; + setNative.apply(data.target, data.args); + return task; + } + setNative = patchMethod(obj, funcName, function (delegate) { return function (self, args) { + var meta = metaCreator(self, args); + if (meta.cbIdx >= 0 && typeof args[meta.cbIdx] === 'function') { + return scheduleMacroTaskWithCurrentZone(meta.name, args[meta.cbIdx], meta, scheduleTask); + } + else { + // cause an error by calling it directly. + return delegate.apply(self, args); + } + }; }); +} + +function attachOriginToPatched(patched, original) { + patched[zoneSymbol('OriginalDelegate')] = original; +} +var isDetectedIEOrEdge = false; +var ieOrEdge = false; +function isIE() { + try { + var ua = internalWindow.navigator.userAgent; + if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1) { + return true; + } + } + catch (error) { + } + return false; +} +function isIEOrEdge() { + if (isDetectedIEOrEdge) { + return ieOrEdge; + } + isDetectedIEOrEdge = true; + try { + var ua = internalWindow.navigator.userAgent; + if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1 || ua.indexOf('Edge/') !== -1) { + ieOrEdge = true; + } + } + catch (error) { + } + return ieOrEdge; +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +// override Function.prototype.toString to make zone.js patched function +// look like native function +Zone.__load_patch('toString', function (global) { + // patch Func.prototype.toString to let them look like native + var originalFunctionToString = Function.prototype.toString; + var ORIGINAL_DELEGATE_SYMBOL = zoneSymbol('OriginalDelegate'); + var PROMISE_SYMBOL = zoneSymbol('Promise'); + var ERROR_SYMBOL = zoneSymbol('Error'); + var newFunctionToString = function toString() { + if (typeof this === 'function') { + var originalDelegate = this[ORIGINAL_DELEGATE_SYMBOL]; + if (originalDelegate) { + if (typeof originalDelegate === 'function') { + return originalFunctionToString.call(originalDelegate); + } + else { + return Object.prototype.toString.call(originalDelegate); + } + } + if (this === Promise) { + var nativePromise = global[PROMISE_SYMBOL]; + if (nativePromise) { + return originalFunctionToString.call(nativePromise); + } + } + if (this === Error) { + var nativeError = global[ERROR_SYMBOL]; + if (nativeError) { + return originalFunctionToString.call(nativeError); + } + } + } + return originalFunctionToString.call(this); + }; + newFunctionToString[ORIGINAL_DELEGATE_SYMBOL] = originalFunctionToString; + Function.prototype.toString = newFunctionToString; + // patch Object.prototype.toString to let them look like native + var originalObjectToString = Object.prototype.toString; + var PROMISE_OBJECT_TO_STRING = '[object Promise]'; + Object.prototype.toString = function () { + if (this instanceof Promise) { + return PROMISE_OBJECT_TO_STRING; + } + return originalObjectToString.call(this); + }; +}); + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * @fileoverview + * @suppress {missingRequire} + */ +var passiveSupported = false; +if (typeof window !== 'undefined') { + try { + var options = Object.defineProperty({}, 'passive', { + get: function () { + passiveSupported = true; + } + }); + window.addEventListener('test', options, options); + window.removeEventListener('test', options, options); + } + catch (err) { + passiveSupported = false; + } +} +// an identifier to tell ZoneTask do not create a new invoke closure +var OPTIMIZED_ZONE_EVENT_TASK_DATA = { + useG: true +}; +var zoneSymbolEventNames$1 = {}; +var globalSources = {}; +var EVENT_NAME_SYMBOL_REGX = /^__zone_symbol__(\w+)(true|false)$/; +var IMMEDIATE_PROPAGATION_SYMBOL = ('__zone_symbol__propagationStopped'); +function patchEventTarget(_global, apis, patchOptions) { + var ADD_EVENT_LISTENER = (patchOptions && patchOptions.add) || ADD_EVENT_LISTENER_STR; + var REMOVE_EVENT_LISTENER = (patchOptions && patchOptions.rm) || REMOVE_EVENT_LISTENER_STR; + var LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.listeners) || 'eventListeners'; + var REMOVE_ALL_LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.rmAll) || 'removeAllListeners'; + var zoneSymbolAddEventListener = zoneSymbol(ADD_EVENT_LISTENER); + var ADD_EVENT_LISTENER_SOURCE = '.' + ADD_EVENT_LISTENER + ':'; + var PREPEND_EVENT_LISTENER = 'prependListener'; + var PREPEND_EVENT_LISTENER_SOURCE = '.' + PREPEND_EVENT_LISTENER + ':'; + var invokeTask = function (task, target, event) { + // for better performance, check isRemoved which is set + // by removeEventListener + if (task.isRemoved) { + return; + } + var delegate = task.callback; + if (typeof delegate === 'object' && delegate.handleEvent) { + // create the bind version of handleEvent when invoke + task.callback = function (event) { return delegate.handleEvent(event); }; + task.originalDelegate = delegate; + } + // invoke static task.invoke + task.invoke(task, target, [event]); + var options = task.options; + if (options && typeof options === 'object' && options.once) { + // if options.once is true, after invoke once remove listener here + // only browser need to do this, nodejs eventEmitter will cal removeListener + // inside EventEmitter.once + var delegate_1 = task.originalDelegate ? task.originalDelegate : task.callback; + target[REMOVE_EVENT_LISTENER].call(target, event.type, delegate_1, options); + } + }; + // global shared zoneAwareCallback to handle all event callback with capture = false + var globalZoneAwareCallback = function (event) { + // https://github.com/angular/zone.js/issues/911, in IE, sometimes + // event will be undefined, so we need to use window.event + event = event || _global.event; + if (!event) { + return; + } + // event.target is needed for Samsung TV and SourceBuffer + // || global is needed https://github.com/angular/zone.js/issues/190 + var target = this || event.target || _global; + var tasks = target[zoneSymbolEventNames$1[event.type][FALSE_STR]]; + if (tasks) { + // invoke all tasks which attached to current target with given event.type and capture = false + // for performance concern, if task.length === 1, just invoke + if (tasks.length === 1) { + invokeTask(tasks[0], target, event); + } + else { + // https://github.com/angular/zone.js/issues/836 + // copy the tasks array before invoke, to avoid + // the callback will remove itself or other listener + var copyTasks = tasks.slice(); + for (var i = 0; i < copyTasks.length; i++) { + if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) { + break; + } + invokeTask(copyTasks[i], target, event); + } + } + } + }; + // global shared zoneAwareCallback to handle all event callback with capture = true + var globalZoneAwareCaptureCallback = function (event) { + // https://github.com/angular/zone.js/issues/911, in IE, sometimes + // event will be undefined, so we need to use window.event + event = event || _global.event; + if (!event) { + return; + } + // event.target is needed for Samsung TV and SourceBuffer + // || global is needed https://github.com/angular/zone.js/issues/190 + var target = this || event.target || _global; + var tasks = target[zoneSymbolEventNames$1[event.type][TRUE_STR]]; + if (tasks) { + // invoke all tasks which attached to current target with given event.type and capture = false + // for performance concern, if task.length === 1, just invoke + if (tasks.length === 1) { + invokeTask(tasks[0], target, event); + } + else { + // https://github.com/angular/zone.js/issues/836 + // copy the tasks array before invoke, to avoid + // the callback will remove itself or other listener + var copyTasks = tasks.slice(); + for (var i = 0; i < copyTasks.length; i++) { + if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) { + break; + } + invokeTask(copyTasks[i], target, event); + } + } + } + }; + function patchEventTargetMethods(obj, patchOptions) { + if (!obj) { + return false; + } + var useGlobalCallback = true; + if (patchOptions && patchOptions.useG !== undefined) { + useGlobalCallback = patchOptions.useG; + } + var validateHandler = patchOptions && patchOptions.vh; + var checkDuplicate = true; + if (patchOptions && patchOptions.chkDup !== undefined) { + checkDuplicate = patchOptions.chkDup; + } + var returnTarget = false; + if (patchOptions && patchOptions.rt !== undefined) { + returnTarget = patchOptions.rt; + } + var proto = obj; + while (proto && !proto.hasOwnProperty(ADD_EVENT_LISTENER)) { + proto = ObjectGetPrototypeOf(proto); + } + if (!proto && obj[ADD_EVENT_LISTENER]) { + // somehow we did not find it, but we can see it. This happens on IE for Window properties. + proto = obj; + } + if (!proto) { + return false; + } + if (proto[zoneSymbolAddEventListener]) { + return false; + } + var eventNameToString = patchOptions && patchOptions.eventNameToString; + // a shared global taskData to pass data for scheduleEventTask + // so we do not need to create a new object just for pass some data + var taskData = {}; + var nativeAddEventListener = proto[zoneSymbolAddEventListener] = proto[ADD_EVENT_LISTENER]; + var nativeRemoveEventListener = proto[zoneSymbol(REMOVE_EVENT_LISTENER)] = + proto[REMOVE_EVENT_LISTENER]; + var nativeListeners = proto[zoneSymbol(LISTENERS_EVENT_LISTENER)] = + proto[LISTENERS_EVENT_LISTENER]; + var nativeRemoveAllListeners = proto[zoneSymbol(REMOVE_ALL_LISTENERS_EVENT_LISTENER)] = + proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER]; + var nativePrependEventListener; + if (patchOptions && patchOptions.prepend) { + nativePrependEventListener = proto[zoneSymbol(patchOptions.prepend)] = + proto[patchOptions.prepend]; + } + function checkIsPassive(task) { + if (!passiveSupported && typeof taskData.options !== 'boolean' && + typeof taskData.options !== 'undefined' && taskData.options !== null) { + // options is a non-null non-undefined object + // passive is not supported + // don't pass options as object + // just pass capture as a boolean + task.options = !!taskData.options.capture; + taskData.options = task.options; + } + } + var customScheduleGlobal = function (task) { + // if there is already a task for the eventName + capture, + // just return, because we use the shared globalZoneAwareCallback here. + if (taskData.isExisting) { + return; + } + checkIsPassive(task); + return nativeAddEventListener.call(taskData.target, taskData.eventName, taskData.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, taskData.options); + }; + var customCancelGlobal = function (task) { + // if task is not marked as isRemoved, this call is directly + // from Zone.prototype.cancelTask, we should remove the task + // from tasksList of target first + if (!task.isRemoved) { + var symbolEventNames = zoneSymbolEventNames$1[task.eventName]; + var symbolEventName = void 0; + if (symbolEventNames) { + symbolEventName = symbolEventNames[task.capture ? TRUE_STR : FALSE_STR]; + } + var existingTasks = symbolEventName && task.target[symbolEventName]; + if (existingTasks) { + for (var i = 0; i < existingTasks.length; i++) { + var existingTask = existingTasks[i]; + if (existingTask === task) { + existingTasks.splice(i, 1); + // set isRemoved to data for faster invokeTask check + task.isRemoved = true; + if (existingTasks.length === 0) { + // all tasks for the eventName + capture have gone, + // remove globalZoneAwareCallback and remove the task cache from target + task.allRemoved = true; + task.target[symbolEventName] = null; + } + break; + } + } + } + } + // if all tasks for the eventName + capture have gone, + // we will really remove the global event callback, + // if not, return + if (!task.allRemoved) { + return; + } + return nativeRemoveEventListener.call(task.target, task.eventName, task.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, task.options); + }; + var customScheduleNonGlobal = function (task) { + checkIsPassive(task); + return nativeAddEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options); + }; + var customSchedulePrepend = function (task) { + return nativePrependEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options); + }; + var customCancelNonGlobal = function (task) { + return nativeRemoveEventListener.call(task.target, task.eventName, task.invoke, task.options); + }; + var customSchedule = useGlobalCallback ? customScheduleGlobal : customScheduleNonGlobal; + var customCancel = useGlobalCallback ? customCancelGlobal : customCancelNonGlobal; + var compareTaskCallbackVsDelegate = function (task, delegate) { + var typeOfDelegate = typeof delegate; + return (typeOfDelegate === 'function' && task.callback === delegate) || + (typeOfDelegate === 'object' && task.originalDelegate === delegate); + }; + var compare = (patchOptions && patchOptions.diff) ? patchOptions.diff : compareTaskCallbackVsDelegate; + var blackListedEvents = Zone[Zone.__symbol__('BLACK_LISTED_EVENTS')]; + var makeAddListener = function (nativeListener, addSource, customScheduleFn, customCancelFn, returnTarget, prepend) { + if (returnTarget === void 0) { returnTarget = false; } + if (prepend === void 0) { prepend = false; } + return function () { + var target = this || _global; + var eventName = arguments[0]; + var delegate = arguments[1]; + if (!delegate) { + return nativeListener.apply(this, arguments); + } + if (isNode && eventName === 'uncaughtException') { + // don't patch uncaughtException of nodejs to prevent endless loop + return nativeListener.apply(this, arguments); + } + // don't create the bind delegate function for handleEvent + // case here to improve addEventListener performance + // we will create the bind delegate when invoke + var isHandleEvent = false; + if (typeof delegate !== 'function') { + if (!delegate.handleEvent) { + return nativeListener.apply(this, arguments); + } + isHandleEvent = true; + } + if (validateHandler && !validateHandler(nativeListener, delegate, target, arguments)) { + return; + } + var options = arguments[2]; + if (blackListedEvents) { + // check black list + for (var i = 0; i < blackListedEvents.length; i++) { + if (eventName === blackListedEvents[i]) { + return nativeListener.apply(this, arguments); + } + } + } + var capture; + var once = false; + if (options === undefined) { + capture = false; + } + else if (options === true) { + capture = true; + } + else if (options === false) { + capture = false; + } + else { + capture = options ? !!options.capture : false; + once = options ? !!options.once : false; + } + var zone = Zone.current; + var symbolEventNames = zoneSymbolEventNames$1[eventName]; + var symbolEventName; + if (!symbolEventNames) { + // the code is duplicate, but I just want to get some better performance + var falseEventName = (eventNameToString ? eventNameToString(eventName) : eventName) + FALSE_STR; + var trueEventName = (eventNameToString ? eventNameToString(eventName) : eventName) + TRUE_STR; + var symbol = ZONE_SYMBOL_PREFIX + falseEventName; + var symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName; + zoneSymbolEventNames$1[eventName] = {}; + zoneSymbolEventNames$1[eventName][FALSE_STR] = symbol; + zoneSymbolEventNames$1[eventName][TRUE_STR] = symbolCapture; + symbolEventName = capture ? symbolCapture : symbol; + } + else { + symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR]; + } + var existingTasks = target[symbolEventName]; + var isExisting = false; + if (existingTasks) { + // already have task registered + isExisting = true; + if (checkDuplicate) { + for (var i = 0; i < existingTasks.length; i++) { + if (compare(existingTasks[i], delegate)) { + // same callback, same capture, same event name, just return + return; + } + } + } + } + else { + existingTasks = target[symbolEventName] = []; + } + var source; + var constructorName = target.constructor['name']; + var targetSource = globalSources[constructorName]; + if (targetSource) { + source = targetSource[eventName]; + } + if (!source) { + source = constructorName + addSource + + (eventNameToString ? eventNameToString(eventName) : eventName); + } + // do not create a new object as task.data to pass those things + // just use the global shared one + taskData.options = options; + if (once) { + // if addEventListener with once options, we don't pass it to + // native addEventListener, instead we keep the once setting + // and handle ourselves. + taskData.options.once = false; + } + taskData.target = target; + taskData.capture = capture; + taskData.eventName = eventName; + taskData.isExisting = isExisting; + var data = useGlobalCallback ? OPTIMIZED_ZONE_EVENT_TASK_DATA : undefined; + // keep taskData into data to allow onScheduleEventTask to access the task information + if (data) { + data.taskData = taskData; + } + var task = zone.scheduleEventTask(source, delegate, data, customScheduleFn, customCancelFn); + // should clear taskData.target to avoid memory leak + // issue, https://github.com/angular/angular/issues/20442 + taskData.target = null; + // need to clear up taskData because it is a global object + if (data) { + data.taskData = null; + } + // have to save those information to task in case + // application may call task.zone.cancelTask() directly + if (once) { + options.once = true; + } + if (!(!passiveSupported && typeof task.options === 'boolean')) { + // if not support passive, and we pass an option object + // to addEventListener, we should save the options to task + task.options = options; + } + task.target = target; + task.capture = capture; + task.eventName = eventName; + if (isHandleEvent) { + // save original delegate for compare to check duplicate + task.originalDelegate = delegate; + } + if (!prepend) { + existingTasks.push(task); + } + else { + existingTasks.unshift(task); + } + if (returnTarget) { + return target; + } + }; + }; + proto[ADD_EVENT_LISTENER] = makeAddListener(nativeAddEventListener, ADD_EVENT_LISTENER_SOURCE, customSchedule, customCancel, returnTarget); + if (nativePrependEventListener) { + proto[PREPEND_EVENT_LISTENER] = makeAddListener(nativePrependEventListener, PREPEND_EVENT_LISTENER_SOURCE, customSchedulePrepend, customCancel, returnTarget, true); + } + proto[REMOVE_EVENT_LISTENER] = function () { + var target = this || _global; + var eventName = arguments[0]; + var options = arguments[2]; + var capture; + if (options === undefined) { + capture = false; + } + else if (options === true) { + capture = true; + } + else if (options === false) { + capture = false; + } + else { + capture = options ? !!options.capture : false; + } + var delegate = arguments[1]; + if (!delegate) { + return nativeRemoveEventListener.apply(this, arguments); + } + if (validateHandler && + !validateHandler(nativeRemoveEventListener, delegate, target, arguments)) { + return; + } + var symbolEventNames = zoneSymbolEventNames$1[eventName]; + var symbolEventName; + if (symbolEventNames) { + symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR]; + } + var existingTasks = symbolEventName && target[symbolEventName]; + if (existingTasks) { + for (var i = 0; i < existingTasks.length; i++) { + var existingTask = existingTasks[i]; + if (compare(existingTask, delegate)) { + existingTasks.splice(i, 1); + // set isRemoved to data for faster invokeTask check + existingTask.isRemoved = true; + if (existingTasks.length === 0) { + // all tasks for the eventName + capture have gone, + // remove globalZoneAwareCallback and remove the task cache from target + existingTask.allRemoved = true; + target[symbolEventName] = null; + } + existingTask.zone.cancelTask(existingTask); + if (returnTarget) { + return target; + } + return; + } + } + } + // issue 930, didn't find the event name or callback + // from zone kept existingTasks, the callback maybe + // added outside of zone, we need to call native removeEventListener + // to try to remove it. + return nativeRemoveEventListener.apply(this, arguments); + }; + proto[LISTENERS_EVENT_LISTENER] = function () { + var target = this || _global; + var eventName = arguments[0]; + var listeners = []; + var tasks = findEventTasks(target, eventNameToString ? eventNameToString(eventName) : eventName); + for (var i = 0; i < tasks.length; i++) { + var task = tasks[i]; + var delegate = task.originalDelegate ? task.originalDelegate : task.callback; + listeners.push(delegate); + } + return listeners; + }; + proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER] = function () { + var target = this || _global; + var eventName = arguments[0]; + if (!eventName) { + var keys = Object.keys(target); + for (var i = 0; i < keys.length; i++) { + var prop = keys[i]; + var match = EVENT_NAME_SYMBOL_REGX.exec(prop); + var evtName = match && match[1]; + // in nodejs EventEmitter, removeListener event is + // used for monitoring the removeListener call, + // so just keep removeListener eventListener until + // all other eventListeners are removed + if (evtName && evtName !== 'removeListener') { + this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, evtName); + } + } + // remove removeListener listener finally + this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, 'removeListener'); + } + else { + var symbolEventNames = zoneSymbolEventNames$1[eventName]; + if (symbolEventNames) { + var symbolEventName = symbolEventNames[FALSE_STR]; + var symbolCaptureEventName = symbolEventNames[TRUE_STR]; + var tasks = target[symbolEventName]; + var captureTasks = target[symbolCaptureEventName]; + if (tasks) { + var removeTasks = tasks.slice(); + for (var i = 0; i < removeTasks.length; i++) { + var task = removeTasks[i]; + var delegate = task.originalDelegate ? task.originalDelegate : task.callback; + this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options); + } + } + if (captureTasks) { + var removeTasks = captureTasks.slice(); + for (var i = 0; i < removeTasks.length; i++) { + var task = removeTasks[i]; + var delegate = task.originalDelegate ? task.originalDelegate : task.callback; + this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options); + } + } + } + } + if (returnTarget) { + return this; + } + }; + // for native toString patch + attachOriginToPatched(proto[ADD_EVENT_LISTENER], nativeAddEventListener); + attachOriginToPatched(proto[REMOVE_EVENT_LISTENER], nativeRemoveEventListener); + if (nativeRemoveAllListeners) { + attachOriginToPatched(proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER], nativeRemoveAllListeners); + } + if (nativeListeners) { + attachOriginToPatched(proto[LISTENERS_EVENT_LISTENER], nativeListeners); + } + return true; + } + var results = []; + for (var i = 0; i < apis.length; i++) { + results[i] = patchEventTargetMethods(apis[i], patchOptions); + } + return results; +} +function findEventTasks(target, eventName) { + var foundTasks = []; + for (var prop in target) { + var match = EVENT_NAME_SYMBOL_REGX.exec(prop); + var evtName = match && match[1]; + if (evtName && (!eventName || evtName === eventName)) { + var tasks = target[prop]; + if (tasks) { + for (var i = 0; i < tasks.length; i++) { + foundTasks.push(tasks[i]); + } + } + } + } + return foundTasks; +} +function patchEventPrototype(global, api) { + var Event = global['Event']; + if (Event && Event.prototype) { + api.patchMethod(Event.prototype, 'stopImmediatePropagation', function (delegate) { return function (self, args) { + self[IMMEDIATE_PROPAGATION_SYMBOL] = true; + // we need to call the native stopImmediatePropagation + // in case in some hybrid application, some part of + // application will be controlled by zone, some are not + delegate && delegate.apply(self, args); + }; }); + } +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +function patchCallbacks(api, target, targetName, method, callbacks) { + var symbol = Zone.__symbol__(method); + if (target[symbol]) { + return; + } + var nativeDelegate = target[symbol] = target[method]; + target[method] = function (name, opts, options) { + if (opts && opts.prototype) { + callbacks.forEach(function (callback) { + var source = targetName + "." + method + "::" + callback; + var prototype = opts.prototype; + if (prototype.hasOwnProperty(callback)) { + var descriptor = api.ObjectGetOwnPropertyDescriptor(prototype, callback); + if (descriptor && descriptor.value) { + descriptor.value = api.wrapWithCurrentZone(descriptor.value, source); + api._redefineProperty(opts.prototype, callback, descriptor); + } + else if (prototype[callback]) { + prototype[callback] = api.wrapWithCurrentZone(prototype[callback], source); + } + } + else if (prototype[callback]) { + prototype[callback] = api.wrapWithCurrentZone(prototype[callback], source); + } + }); + } + return nativeDelegate.call(target, name, opts, options); + }; + api.attachOriginToPatched(target[method], nativeDelegate); +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/* + * This is necessary for Chrome and Chrome mobile, to enable + * things like redefining `createdCallback` on an element. + */ +var zoneSymbol$1 = Zone.__symbol__; +var _defineProperty = Object[zoneSymbol$1('defineProperty')] = Object.defineProperty; +var _getOwnPropertyDescriptor = Object[zoneSymbol$1('getOwnPropertyDescriptor')] = + Object.getOwnPropertyDescriptor; +var _create = Object.create; +var unconfigurablesKey = zoneSymbol$1('unconfigurables'); +function propertyPatch() { + Object.defineProperty = function (obj, prop, desc) { + if (isUnconfigurable(obj, prop)) { + throw new TypeError('Cannot assign to read only property \'' + prop + '\' of ' + obj); + } + var originalConfigurableFlag = desc.configurable; + if (prop !== 'prototype') { + desc = rewriteDescriptor(obj, prop, desc); + } + return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag); + }; + Object.defineProperties = function (obj, props) { + Object.keys(props).forEach(function (prop) { + Object.defineProperty(obj, prop, props[prop]); + }); + return obj; + }; + Object.create = function (obj, proto) { + if (typeof proto === 'object' && !Object.isFrozen(proto)) { + Object.keys(proto).forEach(function (prop) { + proto[prop] = rewriteDescriptor(obj, prop, proto[prop]); + }); + } + return _create(obj, proto); + }; + Object.getOwnPropertyDescriptor = function (obj, prop) { + var desc = _getOwnPropertyDescriptor(obj, prop); + if (desc && isUnconfigurable(obj, prop)) { + desc.configurable = false; + } + return desc; + }; +} +function _redefineProperty(obj, prop, desc) { + var originalConfigurableFlag = desc.configurable; + desc = rewriteDescriptor(obj, prop, desc); + return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag); +} +function isUnconfigurable(obj, prop) { + return obj && obj[unconfigurablesKey] && obj[unconfigurablesKey][prop]; +} +function rewriteDescriptor(obj, prop, desc) { + // issue-927, if the desc is frozen, don't try to change the desc + if (!Object.isFrozen(desc)) { + desc.configurable = true; + } + if (!desc.configurable) { + // issue-927, if the obj is frozen, don't try to set the desc to obj + if (!obj[unconfigurablesKey] && !Object.isFrozen(obj)) { + _defineProperty(obj, unconfigurablesKey, { writable: true, value: {} }); + } + if (obj[unconfigurablesKey]) { + obj[unconfigurablesKey][prop] = true; + } + } + return desc; +} +function _tryDefineProperty(obj, prop, desc, originalConfigurableFlag) { + try { + return _defineProperty(obj, prop, desc); + } + catch (error) { + if (desc.configurable) { + // In case of errors, when the configurable flag was likely set by rewriteDescriptor(), let's + // retry with the original flag value + if (typeof originalConfigurableFlag == 'undefined') { + delete desc.configurable; + } + else { + desc.configurable = originalConfigurableFlag; + } + try { + return _defineProperty(obj, prop, desc); + } + catch (error) { + var descJson = null; + try { + descJson = JSON.stringify(desc); + } + catch (error) { + descJson = desc.toString(); + } + console.log("Attempting to configure '" + prop + "' with descriptor '" + descJson + "' on object '" + obj + "' and got error, giving up: " + error); + } + } + else { + throw error; + } + } +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * @fileoverview + * @suppress {globalThis} + */ +var globalEventHandlersEventNames = [ + 'abort', + 'animationcancel', + 'animationend', + 'animationiteration', + 'auxclick', + 'beforeinput', + 'blur', + 'cancel', + 'canplay', + 'canplaythrough', + 'change', + 'compositionstart', + 'compositionupdate', + 'compositionend', + 'cuechange', + 'click', + 'close', + 'contextmenu', + 'curechange', + 'dblclick', + 'drag', + 'dragend', + 'dragenter', + 'dragexit', + 'dragleave', + 'dragover', + 'drop', + 'durationchange', + 'emptied', + 'ended', + 'error', + 'focus', + 'focusin', + 'focusout', + 'gotpointercapture', + 'input', + 'invalid', + 'keydown', + 'keypress', + 'keyup', + 'load', + 'loadstart', + 'loadeddata', + 'loadedmetadata', + 'lostpointercapture', + 'mousedown', + 'mouseenter', + 'mouseleave', + 'mousemove', + 'mouseout', + 'mouseover', + 'mouseup', + 'mousewheel', + 'orientationchange', + 'pause', + 'play', + 'playing', + 'pointercancel', + 'pointerdown', + 'pointerenter', + 'pointerleave', + 'pointerlockchange', + 'mozpointerlockchange', + 'webkitpointerlockerchange', + 'pointerlockerror', + 'mozpointerlockerror', + 'webkitpointerlockerror', + 'pointermove', + 'pointout', + 'pointerover', + 'pointerup', + 'progress', + 'ratechange', + 'reset', + 'resize', + 'scroll', + 'seeked', + 'seeking', + 'select', + 'selectionchange', + 'selectstart', + 'show', + 'sort', + 'stalled', + 'submit', + 'suspend', + 'timeupdate', + 'volumechange', + 'touchcancel', + 'touchmove', + 'touchstart', + 'touchend', + 'transitioncancel', + 'transitionend', + 'waiting', + 'wheel' +]; +var documentEventNames = [ + 'afterscriptexecute', 'beforescriptexecute', 'DOMContentLoaded', 'freeze', 'fullscreenchange', + 'mozfullscreenchange', 'webkitfullscreenchange', 'msfullscreenchange', 'fullscreenerror', + 'mozfullscreenerror', 'webkitfullscreenerror', 'msfullscreenerror', 'readystatechange', + 'visibilitychange', 'resume' +]; +var windowEventNames = [ + 'absolutedeviceorientation', + 'afterinput', + 'afterprint', + 'appinstalled', + 'beforeinstallprompt', + 'beforeprint', + 'beforeunload', + 'devicelight', + 'devicemotion', + 'deviceorientation', + 'deviceorientationabsolute', + 'deviceproximity', + 'hashchange', + 'languagechange', + 'message', + 'mozbeforepaint', + 'offline', + 'online', + 'paint', + 'pageshow', + 'pagehide', + 'popstate', + 'rejectionhandled', + 'storage', + 'unhandledrejection', + 'unload', + 'userproximity', + 'vrdisplyconnected', + 'vrdisplaydisconnected', + 'vrdisplaypresentchange' +]; +var htmlElementEventNames = [ + 'beforecopy', 'beforecut', 'beforepaste', 'copy', 'cut', 'paste', 'dragstart', 'loadend', + 'animationstart', 'search', 'transitionrun', 'transitionstart', 'webkitanimationend', + 'webkitanimationiteration', 'webkitanimationstart', 'webkittransitionend' +]; +var mediaElementEventNames = ['encrypted', 'waitingforkey', 'msneedkey', 'mozinterruptbegin', 'mozinterruptend']; +var ieElementEventNames = [ + 'activate', + 'afterupdate', + 'ariarequest', + 'beforeactivate', + 'beforedeactivate', + 'beforeeditfocus', + 'beforeupdate', + 'cellchange', + 'controlselect', + 'dataavailable', + 'datasetchanged', + 'datasetcomplete', + 'errorupdate', + 'filterchange', + 'layoutcomplete', + 'losecapture', + 'move', + 'moveend', + 'movestart', + 'propertychange', + 'resizeend', + 'resizestart', + 'rowenter', + 'rowexit', + 'rowsdelete', + 'rowsinserted', + 'command', + 'compassneedscalibration', + 'deactivate', + 'help', + 'mscontentzoom', + 'msmanipulationstatechanged', + 'msgesturechange', + 'msgesturedoubletap', + 'msgestureend', + 'msgesturehold', + 'msgesturestart', + 'msgesturetap', + 'msgotpointercapture', + 'msinertiastart', + 'mslostpointercapture', + 'mspointercancel', + 'mspointerdown', + 'mspointerenter', + 'mspointerhover', + 'mspointerleave', + 'mspointermove', + 'mspointerout', + 'mspointerover', + 'mspointerup', + 'pointerout', + 'mssitemodejumplistitemremoved', + 'msthumbnailclick', + 'stop', + 'storagecommit' +]; +var webglEventNames = ['webglcontextrestored', 'webglcontextlost', 'webglcontextcreationerror']; +var formEventNames = ['autocomplete', 'autocompleteerror']; +var detailEventNames = ['toggle']; +var frameEventNames = ['load']; +var frameSetEventNames = ['blur', 'error', 'focus', 'load', 'resize', 'scroll', 'messageerror']; +var marqueeEventNames = ['bounce', 'finish', 'start']; +var XMLHttpRequestEventNames = [ + 'loadstart', 'progress', 'abort', 'error', 'load', 'progress', 'timeout', 'loadend', + 'readystatechange' +]; +var IDBIndexEventNames = ['upgradeneeded', 'complete', 'abort', 'success', 'error', 'blocked', 'versionchange', 'close']; +var websocketEventNames = ['close', 'error', 'open', 'message']; +var workerEventNames = ['error', 'message']; +var eventNames = globalEventHandlersEventNames.concat(webglEventNames, formEventNames, detailEventNames, documentEventNames, windowEventNames, htmlElementEventNames, ieElementEventNames); +function filterProperties(target, onProperties, ignoreProperties) { + if (!ignoreProperties || ignoreProperties.length === 0) { + return onProperties; + } + var tip = ignoreProperties.filter(function (ip) { return ip.target === target; }); + if (!tip || tip.length === 0) { + return onProperties; + } + var targetIgnoreProperties = tip[0].ignoreProperties; + return onProperties.filter(function (op) { return targetIgnoreProperties.indexOf(op) === -1; }); +} +function patchFilteredProperties(target, onProperties, ignoreProperties, prototype) { + // check whether target is available, sometimes target will be undefined + // because different browser or some 3rd party plugin. + if (!target) { + return; + } + var filteredProperties = filterProperties(target, onProperties, ignoreProperties); + patchOnProperties(target, filteredProperties, prototype); +} +function propertyDescriptorPatch(api, _global) { + if (isNode && !isMix) { + return; + } + if (Zone[api.symbol('patchEvents')]) { + // events are already been patched by legacy patch. + return; + } + var supportsWebSocket = typeof WebSocket !== 'undefined'; + var ignoreProperties = _global['__Zone_ignore_on_properties']; + // for browsers that we can patch the descriptor: Chrome & Firefox + if (isBrowser) { + var internalWindow = window; + var ignoreErrorProperties = isIE ? [{ target: internalWindow, ignoreProperties: ['error'] }] : []; + // in IE/Edge, onProp not exist in window object, but in WindowPrototype + // so we need to pass WindowPrototype to check onProp exist or not + patchFilteredProperties(internalWindow, eventNames.concat(['messageerror']), ignoreProperties ? ignoreProperties.concat(ignoreErrorProperties) : ignoreProperties, ObjectGetPrototypeOf(internalWindow)); + patchFilteredProperties(Document.prototype, eventNames, ignoreProperties); + if (typeof internalWindow['SVGElement'] !== 'undefined') { + patchFilteredProperties(internalWindow['SVGElement'].prototype, eventNames, ignoreProperties); + } + patchFilteredProperties(Element.prototype, eventNames, ignoreProperties); + patchFilteredProperties(HTMLElement.prototype, eventNames, ignoreProperties); + patchFilteredProperties(HTMLMediaElement.prototype, mediaElementEventNames, ignoreProperties); + patchFilteredProperties(HTMLFrameSetElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties); + patchFilteredProperties(HTMLBodyElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties); + patchFilteredProperties(HTMLFrameElement.prototype, frameEventNames, ignoreProperties); + patchFilteredProperties(HTMLIFrameElement.prototype, frameEventNames, ignoreProperties); + var HTMLMarqueeElement_1 = internalWindow['HTMLMarqueeElement']; + if (HTMLMarqueeElement_1) { + patchFilteredProperties(HTMLMarqueeElement_1.prototype, marqueeEventNames, ignoreProperties); + } + var Worker_1 = internalWindow['Worker']; + if (Worker_1) { + patchFilteredProperties(Worker_1.prototype, workerEventNames, ignoreProperties); + } + } + var XMLHttpRequest = _global['XMLHttpRequest']; + if (XMLHttpRequest) { + // XMLHttpRequest is not available in ServiceWorker, so we need to check here + patchFilteredProperties(XMLHttpRequest.prototype, XMLHttpRequestEventNames, ignoreProperties); + } + var XMLHttpRequestEventTarget = _global['XMLHttpRequestEventTarget']; + if (XMLHttpRequestEventTarget) { + patchFilteredProperties(XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype, XMLHttpRequestEventNames, ignoreProperties); + } + if (typeof IDBIndex !== 'undefined') { + patchFilteredProperties(IDBIndex.prototype, IDBIndexEventNames, ignoreProperties); + patchFilteredProperties(IDBRequest.prototype, IDBIndexEventNames, ignoreProperties); + patchFilteredProperties(IDBOpenDBRequest.prototype, IDBIndexEventNames, ignoreProperties); + patchFilteredProperties(IDBDatabase.prototype, IDBIndexEventNames, ignoreProperties); + patchFilteredProperties(IDBTransaction.prototype, IDBIndexEventNames, ignoreProperties); + patchFilteredProperties(IDBCursor.prototype, IDBIndexEventNames, ignoreProperties); + } + if (supportsWebSocket) { + patchFilteredProperties(WebSocket.prototype, websocketEventNames, ignoreProperties); + } +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +Zone.__load_patch('util', function (global, Zone, api) { + api.patchOnProperties = patchOnProperties; + api.patchMethod = patchMethod; + api.bindArguments = bindArguments; + api.patchMacroTask = patchMacroTask; + // In earlier version of zone.js (<0.9.0), we use env name `__zone_symbol__BLACK_LISTED_EVENTS` to + // define which events will not be patched by `Zone.js`. + // In newer version (>=0.9.0), we change the env name to `__zone_symbol__UNPATCHED_EVENTS` to keep + // the name consistent with angular repo. + // The `__zone_symbol__BLACK_LISTED_EVENTS` is deprecated, but it is still be supported for + // backwards compatibility. + var SYMBOL_BLACK_LISTED_EVENTS = Zone.__symbol__('BLACK_LISTED_EVENTS'); + var SYMBOL_UNPATCHED_EVENTS = Zone.__symbol__('UNPATCHED_EVENTS'); + if (global[SYMBOL_UNPATCHED_EVENTS]) { + global[SYMBOL_BLACK_LISTED_EVENTS] = global[SYMBOL_UNPATCHED_EVENTS]; + } + if (global[SYMBOL_BLACK_LISTED_EVENTS]) { + Zone[SYMBOL_BLACK_LISTED_EVENTS] = Zone[SYMBOL_UNPATCHED_EVENTS] = + global[SYMBOL_BLACK_LISTED_EVENTS]; + } + api.patchEventPrototype = patchEventPrototype; + api.patchEventTarget = patchEventTarget; + api.isIEOrEdge = isIEOrEdge; + api.ObjectDefineProperty = ObjectDefineProperty; + api.ObjectGetOwnPropertyDescriptor = ObjectGetOwnPropertyDescriptor; + api.ObjectCreate = ObjectCreate; + api.ArraySlice = ArraySlice; + api.patchClass = patchClass; + api.wrapWithCurrentZone = wrapWithCurrentZone; + api.filterProperties = filterProperties; + api.attachOriginToPatched = attachOriginToPatched; + api._redefineProperty = _redefineProperty; + api.patchCallbacks = patchCallbacks; + api.getGlobalObjects = function () { return ({ + globalSources: globalSources, + zoneSymbolEventNames: zoneSymbolEventNames$1, + eventNames: eventNames, + isBrowser: isBrowser, + isMix: isMix, + isNode: isNode, + TRUE_STR: TRUE_STR, + FALSE_STR: FALSE_STR, + ZONE_SYMBOL_PREFIX: ZONE_SYMBOL_PREFIX, + ADD_EVENT_LISTENER_STR: ADD_EVENT_LISTENER_STR, + REMOVE_EVENT_LISTENER_STR: REMOVE_EVENT_LISTENER_STR + }); }; +}); + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +function eventTargetLegacyPatch(_global, api) { + var _a = api.getGlobalObjects(), eventNames = _a.eventNames, globalSources = _a.globalSources, zoneSymbolEventNames = _a.zoneSymbolEventNames, TRUE_STR = _a.TRUE_STR, FALSE_STR = _a.FALSE_STR, ZONE_SYMBOL_PREFIX = _a.ZONE_SYMBOL_PREFIX; + var WTF_ISSUE_555 = 'Anchor,Area,Audio,BR,Base,BaseFont,Body,Button,Canvas,Content,DList,Directory,Div,Embed,FieldSet,Font,Form,Frame,FrameSet,HR,Head,Heading,Html,IFrame,Image,Input,Keygen,LI,Label,Legend,Link,Map,Marquee,Media,Menu,Meta,Meter,Mod,OList,Object,OptGroup,Option,Output,Paragraph,Pre,Progress,Quote,Script,Select,Source,Span,Style,TableCaption,TableCell,TableCol,Table,TableRow,TableSection,TextArea,Title,Track,UList,Unknown,Video'; + var NO_EVENT_TARGET = 'ApplicationCache,EventSource,FileReader,InputMethodContext,MediaController,MessagePort,Node,Performance,SVGElementInstance,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebKitNamedFlow,Window,Worker,WorkerGlobalScope,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload,IDBRequest,IDBOpenDBRequest,IDBDatabase,IDBTransaction,IDBCursor,DBIndex,WebSocket' + .split(','); + var EVENT_TARGET = 'EventTarget'; + var apis = []; + var isWtf = _global['wtf']; + var WTF_ISSUE_555_ARRAY = WTF_ISSUE_555.split(','); + if (isWtf) { + // Workaround for: https://github.com/google/tracing-framework/issues/555 + apis = WTF_ISSUE_555_ARRAY.map(function (v) { return 'HTML' + v + 'Element'; }).concat(NO_EVENT_TARGET); + } + else if (_global[EVENT_TARGET]) { + apis.push(EVENT_TARGET); + } + else { + // Note: EventTarget is not available in all browsers, + // if it's not available, we instead patch the APIs in the IDL that inherit from EventTarget + apis = NO_EVENT_TARGET; + } + var isDisableIECheck = _global['__Zone_disable_IE_check'] || false; + var isEnableCrossContextCheck = _global['__Zone_enable_cross_context_check'] || false; + var ieOrEdge = api.isIEOrEdge(); + var ADD_EVENT_LISTENER_SOURCE = '.addEventListener:'; + var FUNCTION_WRAPPER = '[object FunctionWrapper]'; + var BROWSER_TOOLS = 'function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }'; + // predefine all __zone_symbol__ + eventName + true/false string + for (var i = 0; i < eventNames.length; i++) { + var eventName = eventNames[i]; + var falseEventName = eventName + FALSE_STR; + var trueEventName = eventName + TRUE_STR; + var symbol = ZONE_SYMBOL_PREFIX + falseEventName; + var symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName; + zoneSymbolEventNames[eventName] = {}; + zoneSymbolEventNames[eventName][FALSE_STR] = symbol; + zoneSymbolEventNames[eventName][TRUE_STR] = symbolCapture; + } + // predefine all task.source string + for (var i = 0; i < WTF_ISSUE_555.length; i++) { + var target = WTF_ISSUE_555_ARRAY[i]; + var targets = globalSources[target] = {}; + for (var j = 0; j < eventNames.length; j++) { + var eventName = eventNames[j]; + targets[eventName] = target + ADD_EVENT_LISTENER_SOURCE + eventName; + } + } + var checkIEAndCrossContext = function (nativeDelegate, delegate, target, args) { + if (!isDisableIECheck && ieOrEdge) { + if (isEnableCrossContextCheck) { + try { + var testString = delegate.toString(); + if ((testString === FUNCTION_WRAPPER || testString == BROWSER_TOOLS)) { + nativeDelegate.apply(target, args); + return false; + } + } + catch (error) { + nativeDelegate.apply(target, args); + return false; + } + } + else { + var testString = delegate.toString(); + if ((testString === FUNCTION_WRAPPER || testString == BROWSER_TOOLS)) { + nativeDelegate.apply(target, args); + return false; + } + } + } + else if (isEnableCrossContextCheck) { + try { + delegate.toString(); + } + catch (error) { + nativeDelegate.apply(target, args); + return false; + } + } + return true; + }; + var apiTypes = []; + for (var i = 0; i < apis.length; i++) { + var type = _global[apis[i]]; + apiTypes.push(type && type.prototype); + } + // vh is validateHandler to check event handler + // is valid or not(for security check) + api.patchEventTarget(_global, apiTypes, { vh: checkIEAndCrossContext }); + Zone[api.symbol('patchEventTarget')] = !!_global[EVENT_TARGET]; + return true; +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +// we have to patch the instance since the proto is non-configurable +function apply(api, _global) { + var _a = api.getGlobalObjects(), ADD_EVENT_LISTENER_STR = _a.ADD_EVENT_LISTENER_STR, REMOVE_EVENT_LISTENER_STR = _a.REMOVE_EVENT_LISTENER_STR; + var WS = _global.WebSocket; + // On Safari window.EventTarget doesn't exist so need to patch WS add/removeEventListener + // On older Chrome, no need since EventTarget was already patched + if (!_global.EventTarget) { + api.patchEventTarget(_global, [WS.prototype]); + } + _global.WebSocket = function (x, y) { + var socket = arguments.length > 1 ? new WS(x, y) : new WS(x); + var proxySocket; + var proxySocketProto; + // Safari 7.0 has non-configurable own 'onmessage' and friends properties on the socket instance + var onmessageDesc = api.ObjectGetOwnPropertyDescriptor(socket, 'onmessage'); + if (onmessageDesc && onmessageDesc.configurable === false) { + proxySocket = api.ObjectCreate(socket); + // socket have own property descriptor 'onopen', 'onmessage', 'onclose', 'onerror' + // but proxySocket not, so we will keep socket as prototype and pass it to + // patchOnProperties method + proxySocketProto = socket; + [ADD_EVENT_LISTENER_STR, REMOVE_EVENT_LISTENER_STR, 'send', 'close'].forEach(function (propName) { + proxySocket[propName] = function () { + var args = api.ArraySlice.call(arguments); + if (propName === ADD_EVENT_LISTENER_STR || propName === REMOVE_EVENT_LISTENER_STR) { + var eventName = args.length > 0 ? args[0] : undefined; + if (eventName) { + var propertySymbol = Zone.__symbol__('ON_PROPERTY' + eventName); + socket[propertySymbol] = proxySocket[propertySymbol]; + } + } + return socket[propName].apply(socket, args); + }; + }); + } + else { + // we can patch the real socket + proxySocket = socket; + } + api.patchOnProperties(proxySocket, ['close', 'error', 'message', 'open'], proxySocketProto); + return proxySocket; + }; + var globalWebSocket = _global['WebSocket']; + for (var prop in WS) { + globalWebSocket[prop] = WS[prop]; + } +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * @fileoverview + * @suppress {globalThis} + */ +function propertyDescriptorLegacyPatch(api, _global) { + var _a = api.getGlobalObjects(), isNode = _a.isNode, isMix = _a.isMix; + if (isNode && !isMix) { + return; + } + if (!canPatchViaPropertyDescriptor(api, _global)) { + var supportsWebSocket = typeof WebSocket !== 'undefined'; + // Safari, Android browsers (Jelly Bean) + patchViaCapturingAllTheEvents(api); + api.patchClass('XMLHttpRequest'); + if (supportsWebSocket) { + apply(api, _global); + } + Zone[api.symbol('patchEvents')] = true; + } +} +function canPatchViaPropertyDescriptor(api, _global) { + var _a = api.getGlobalObjects(), isBrowser = _a.isBrowser, isMix = _a.isMix; + if ((isBrowser || isMix) && + !api.ObjectGetOwnPropertyDescriptor(HTMLElement.prototype, 'onclick') && + typeof Element !== 'undefined') { + // WebKit https://bugs.webkit.org/show_bug.cgi?id=134364 + // IDL interface attributes are not configurable + var desc = api.ObjectGetOwnPropertyDescriptor(Element.prototype, 'onclick'); + if (desc && !desc.configurable) + return false; + // try to use onclick to detect whether we can patch via propertyDescriptor + // because XMLHttpRequest is not available in service worker + if (desc) { + api.ObjectDefineProperty(Element.prototype, 'onclick', { + enumerable: true, + configurable: true, + get: function () { + return true; + } + }); + var div = document.createElement('div'); + var result = !!div.onclick; + api.ObjectDefineProperty(Element.prototype, 'onclick', desc); + return result; + } + } + var XMLHttpRequest = _global['XMLHttpRequest']; + if (!XMLHttpRequest) { + // XMLHttpRequest is not available in service worker + return false; + } + var ON_READY_STATE_CHANGE = 'onreadystatechange'; + var XMLHttpRequestPrototype = XMLHttpRequest.prototype; + var xhrDesc = api.ObjectGetOwnPropertyDescriptor(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE); + // add enumerable and configurable here because in opera + // by default XMLHttpRequest.prototype.onreadystatechange is undefined + // without adding enumerable and configurable will cause onreadystatechange + // non-configurable + // and if XMLHttpRequest.prototype.onreadystatechange is undefined, + // we should set a real desc instead a fake one + if (xhrDesc) { + api.ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, { + enumerable: true, + configurable: true, + get: function () { + return true; + } + }); + var req = new XMLHttpRequest(); + var result = !!req.onreadystatechange; + // restore original desc + api.ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, xhrDesc || {}); + return result; + } + else { + var SYMBOL_FAKE_ONREADYSTATECHANGE_1 = api.symbol('fake'); + api.ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, { + enumerable: true, + configurable: true, + get: function () { + return this[SYMBOL_FAKE_ONREADYSTATECHANGE_1]; + }, + set: function (value) { + this[SYMBOL_FAKE_ONREADYSTATECHANGE_1] = value; + } + }); + var req = new XMLHttpRequest(); + var detectFunc = function () { }; + req.onreadystatechange = detectFunc; + var result = req[SYMBOL_FAKE_ONREADYSTATECHANGE_1] === detectFunc; + req.onreadystatechange = null; + return result; + } +} +// Whenever any eventListener fires, we check the eventListener target and all parents +// for `onwhatever` properties and replace them with zone-bound functions +// - Chrome (for now) +function patchViaCapturingAllTheEvents(api) { + var eventNames = api.getGlobalObjects().eventNames; + var unboundKey = api.symbol('unbound'); + var _loop_1 = function (i) { + var property = eventNames[i]; + var onproperty = 'on' + property; + self.addEventListener(property, function (event) { + var elt = event.target, bound, source; + if (elt) { + source = elt.constructor['name'] + '.' + onproperty; + } + else { + source = 'unknown.' + onproperty; + } + while (elt) { + if (elt[onproperty] && !elt[onproperty][unboundKey]) { + bound = api.wrapWithCurrentZone(elt[onproperty], source); + bound[unboundKey] = elt[onproperty]; + elt[onproperty] = bound; + } + elt = elt.parentElement; + } + }, true); + }; + for (var i = 0; i < eventNames.length; i++) { + _loop_1(i); + } +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +function registerElementPatch(_global, api) { + var _a = api.getGlobalObjects(), isBrowser = _a.isBrowser, isMix = _a.isMix; + if ((!isBrowser && !isMix) || !('registerElement' in _global.document)) { + return; + } + var callbacks = ['createdCallback', 'attachedCallback', 'detachedCallback', 'attributeChangedCallback']; + api.patchCallbacks(api, document, 'Document', 'registerElement', callbacks); +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * @fileoverview + * @suppress {missingRequire} + */ +(function (_global) { + _global['__zone_symbol__legacyPatch'] = function () { + var Zone = _global['Zone']; + Zone.__load_patch('registerElement', function (global, Zone, api) { + registerElementPatch(global, api); + }); + Zone.__load_patch('EventTargetLegacy', function (global, Zone, api) { + eventTargetLegacyPatch(global, api); + propertyDescriptorLegacyPatch(api, global); + }); + }; +})(typeof window !== 'undefined' && window || typeof self !== 'undefined' && self || global); + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * @fileoverview + * @suppress {missingRequire} + */ +var taskSymbol = zoneSymbol('zoneTask'); +function patchTimer(window, setName, cancelName, nameSuffix) { + var setNative = null; + var clearNative = null; + setName += nameSuffix; + cancelName += nameSuffix; + var tasksByHandleId = {}; + function scheduleTask(task) { + var data = task.data; + function timer() { + try { + task.invoke.apply(this, arguments); + } + finally { + // issue-934, task will be cancelled + // even it is a periodic task such as + // setInterval + if (!(task.data && task.data.isPeriodic)) { + if (typeof data.handleId === 'number') { + // in non-nodejs env, we remove timerId + // from local cache + delete tasksByHandleId[data.handleId]; + } + else if (data.handleId) { + // Node returns complex objects as handleIds + // we remove task reference from timer object + data.handleId[taskSymbol] = null; + } + } + } + } + data.args[0] = timer; + data.handleId = setNative.apply(window, data.args); + return task; + } + function clearTask(task) { + return clearNative(task.data.handleId); + } + setNative = + patchMethod(window, setName, function (delegate) { return function (self, args) { + if (typeof args[0] === 'function') { + var options = { + isPeriodic: nameSuffix === 'Interval', + delay: (nameSuffix === 'Timeout' || nameSuffix === 'Interval') ? args[1] || 0 : + undefined, + args: args + }; + var task = scheduleMacroTaskWithCurrentZone(setName, args[0], options, scheduleTask, clearTask); + if (!task) { + return task; + } + // Node.js must additionally support the ref and unref functions. + var handle = task.data.handleId; + if (typeof handle === 'number') { + // for non nodejs env, we save handleId: task + // mapping in local cache for clearTimeout + tasksByHandleId[handle] = task; + } + else if (handle) { + // for nodejs env, we save task + // reference in timerId Object for clearTimeout + handle[taskSymbol] = task; + } + // check whether handle is null, because some polyfill or browser + // may return undefined from setTimeout/setInterval/setImmediate/requestAnimationFrame + if (handle && handle.ref && handle.unref && typeof handle.ref === 'function' && + typeof handle.unref === 'function') { + task.ref = handle.ref.bind(handle); + task.unref = handle.unref.bind(handle); + } + if (typeof handle === 'number' || handle) { + return handle; + } + return task; + } + else { + // cause an error by calling it directly. + return delegate.apply(window, args); + } + }; }); + clearNative = + patchMethod(window, cancelName, function (delegate) { return function (self, args) { + var id = args[0]; + var task; + if (typeof id === 'number') { + // non nodejs env. + task = tasksByHandleId[id]; + } + else { + // nodejs env. + task = id && id[taskSymbol]; + // other environments. + if (!task) { + task = id; + } + } + if (task && typeof task.type === 'string') { + if (task.state !== 'notScheduled' && + (task.cancelFn && task.data.isPeriodic || task.runCount === 0)) { + if (typeof id === 'number') { + delete tasksByHandleId[id]; + } + else if (id) { + id[taskSymbol] = null; + } + // Do not cancel already canceled functions + task.zone.cancelTask(task); + } + } + else { + // cause an error by calling it directly. + delegate.apply(window, args); + } + }; }); +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +function patchCustomElements(_global, api) { + var _a = api.getGlobalObjects(), isBrowser = _a.isBrowser, isMix = _a.isMix; + if ((!isBrowser && !isMix) || !_global['customElements'] || !('customElements' in _global)) { + return; + } + var callbacks = ['connectedCallback', 'disconnectedCallback', 'adoptedCallback', 'attributeChangedCallback']; + api.patchCallbacks(api, _global.customElements, 'customElements', 'define', callbacks); +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +function eventTargetPatch(_global, api) { + if (Zone[api.symbol('patchEventTarget')]) { + // EventTarget is already patched. + return; + } + var _a = api.getGlobalObjects(), eventNames = _a.eventNames, zoneSymbolEventNames = _a.zoneSymbolEventNames, TRUE_STR = _a.TRUE_STR, FALSE_STR = _a.FALSE_STR, ZONE_SYMBOL_PREFIX = _a.ZONE_SYMBOL_PREFIX; + // predefine all __zone_symbol__ + eventName + true/false string + for (var i = 0; i < eventNames.length; i++) { + var eventName = eventNames[i]; + var falseEventName = eventName + FALSE_STR; + var trueEventName = eventName + TRUE_STR; + var symbol = ZONE_SYMBOL_PREFIX + falseEventName; + var symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName; + zoneSymbolEventNames[eventName] = {}; + zoneSymbolEventNames[eventName][FALSE_STR] = symbol; + zoneSymbolEventNames[eventName][TRUE_STR] = symbolCapture; + } + var EVENT_TARGET = _global['EventTarget']; + if (!EVENT_TARGET || !EVENT_TARGET.prototype) { + return; + } + api.patchEventTarget(_global, [EVENT_TARGET && EVENT_TARGET.prototype]); + return true; +} +function patchEvent$1(global, api) { + api.patchEventPrototype(global, api); +} + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +/** + * @fileoverview + * @suppress {missingRequire} + */ +Zone.__load_patch('legacy', function (global) { + var legacyPatch = global[Zone.__symbol__('legacyPatch')]; + if (legacyPatch) { + legacyPatch(); + } +}); +Zone.__load_patch('timers', function (global) { + var set = 'set'; + var clear = 'clear'; + patchTimer(global, set, clear, 'Timeout'); + patchTimer(global, set, clear, 'Interval'); + patchTimer(global, set, clear, 'Immediate'); +}); +Zone.__load_patch('requestAnimationFrame', function (global) { + patchTimer(global, 'request', 'cancel', 'AnimationFrame'); + patchTimer(global, 'mozRequest', 'mozCancel', 'AnimationFrame'); + patchTimer(global, 'webkitRequest', 'webkitCancel', 'AnimationFrame'); +}); +Zone.__load_patch('blocking', function (global, Zone) { + var blockingMethods = ['alert', 'prompt', 'confirm']; + for (var i = 0; i < blockingMethods.length; i++) { + var name_1 = blockingMethods[i]; + patchMethod(global, name_1, function (delegate, symbol, name) { + return function (s, args) { + return Zone.current.run(delegate, global, args, name); + }; + }); + } +}); +Zone.__load_patch('EventTarget', function (global, Zone, api) { + patchEvent$1(global, api); + eventTargetPatch(global, api); + // patch XMLHttpRequestEventTarget's addEventListener/removeEventListener + var XMLHttpRequestEventTarget = global['XMLHttpRequestEventTarget']; + if (XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype) { + api.patchEventTarget(global, [XMLHttpRequestEventTarget.prototype]); + } + patchClass('MutationObserver'); + patchClass('WebKitMutationObserver'); + patchClass('IntersectionObserver'); + patchClass('FileReader'); +}); +Zone.__load_patch('on_property', function (global, Zone, api) { + propertyDescriptorPatch(api, global); + propertyPatch(); +}); +Zone.__load_patch('customElements', function (global, Zone, api) { + patchCustomElements(global, api); +}); +Zone.__load_patch('XHR', function (global, Zone) { + // Treat XMLHttpRequest as a macrotask. + patchXHR(global); + var XHR_TASK = zoneSymbol('xhrTask'); + var XHR_SYNC = zoneSymbol('xhrSync'); + var XHR_LISTENER = zoneSymbol('xhrListener'); + var XHR_SCHEDULED = zoneSymbol('xhrScheduled'); + var XHR_URL = zoneSymbol('xhrURL'); + var XHR_ERROR_BEFORE_SCHEDULED = zoneSymbol('xhrErrorBeforeScheduled'); + function patchXHR(window) { + var XMLHttpRequest = window['XMLHttpRequest']; + if (!XMLHttpRequest) { + // XMLHttpRequest is not available in service worker + return; + } + var XMLHttpRequestPrototype = XMLHttpRequest.prototype; + function findPendingTask(target) { + return target[XHR_TASK]; + } + var oriAddListener = XMLHttpRequestPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER]; + var oriRemoveListener = XMLHttpRequestPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER]; + if (!oriAddListener) { + var XMLHttpRequestEventTarget_1 = window['XMLHttpRequestEventTarget']; + if (XMLHttpRequestEventTarget_1) { + var XMLHttpRequestEventTargetPrototype = XMLHttpRequestEventTarget_1.prototype; + oriAddListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER]; + oriRemoveListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER]; + } + } + var READY_STATE_CHANGE = 'readystatechange'; + var SCHEDULED = 'scheduled'; + function scheduleTask(task) { + var data = task.data; + var target = data.target; + target[XHR_SCHEDULED] = false; + target[XHR_ERROR_BEFORE_SCHEDULED] = false; + // remove existing event listener + var listener = target[XHR_LISTENER]; + if (!oriAddListener) { + oriAddListener = target[ZONE_SYMBOL_ADD_EVENT_LISTENER]; + oriRemoveListener = target[ZONE_SYMBOL_REMOVE_EVENT_LISTENER]; + } + if (listener) { + oriRemoveListener.call(target, READY_STATE_CHANGE, listener); + } + var newListener = target[XHR_LISTENER] = function () { + if (target.readyState === target.DONE) { + // sometimes on some browsers XMLHttpRequest will fire onreadystatechange with + // readyState=4 multiple times, so we need to check task state here + if (!data.aborted && target[XHR_SCHEDULED] && task.state === SCHEDULED) { + // check whether the xhr has registered onload listener + // if that is the case, the task should invoke after all + // onload listeners finish. + var loadTasks = target['__zone_symbol__loadfalse']; + if (loadTasks && loadTasks.length > 0) { + var oriInvoke_1 = task.invoke; + task.invoke = function () { + // need to load the tasks again, because in other + // load listener, they may remove themselves + var loadTasks = target['__zone_symbol__loadfalse']; + for (var i = 0; i < loadTasks.length; i++) { + if (loadTasks[i] === task) { + loadTasks.splice(i, 1); + } + } + if (!data.aborted && task.state === SCHEDULED) { + oriInvoke_1.call(task); + } + }; + loadTasks.push(task); + } + else { + task.invoke(); + } + } + else if (!data.aborted && target[XHR_SCHEDULED] === false) { + // error occurs when xhr.send() + target[XHR_ERROR_BEFORE_SCHEDULED] = true; + } + } + }; + oriAddListener.call(target, READY_STATE_CHANGE, newListener); + var storedTask = target[XHR_TASK]; + if (!storedTask) { + target[XHR_TASK] = task; + } + sendNative.apply(target, data.args); + target[XHR_SCHEDULED] = true; + return task; + } + function placeholderCallback() { } + function clearTask(task) { + var data = task.data; + // Note - ideally, we would call data.target.removeEventListener here, but it's too late + // to prevent it from firing. So instead, we store info for the event listener. + data.aborted = true; + return abortNative.apply(data.target, data.args); + } + var openNative = patchMethod(XMLHttpRequestPrototype, 'open', function () { return function (self, args) { + self[XHR_SYNC] = args[2] == false; + self[XHR_URL] = args[1]; + return openNative.apply(self, args); + }; }); + var XMLHTTPREQUEST_SOURCE = 'XMLHttpRequest.send'; + var fetchTaskAborting = zoneSymbol('fetchTaskAborting'); + var fetchTaskScheduling = zoneSymbol('fetchTaskScheduling'); + var sendNative = patchMethod(XMLHttpRequestPrototype, 'send', function () { return function (self, args) { + if (Zone.current[fetchTaskScheduling] === true) { + // a fetch is scheduling, so we are using xhr to polyfill fetch + // and because we already schedule macroTask for fetch, we should + // not schedule a macroTask for xhr again + return sendNative.apply(self, args); + } + if (self[XHR_SYNC]) { + // if the XHR is sync there is no task to schedule, just execute the code. + return sendNative.apply(self, args); + } + else { + var options = { target: self, url: self[XHR_URL], isPeriodic: false, args: args, aborted: false }; + var task = scheduleMacroTaskWithCurrentZone(XMLHTTPREQUEST_SOURCE, placeholderCallback, options, scheduleTask, clearTask); + if (self && self[XHR_ERROR_BEFORE_SCHEDULED] === true && !options.aborted && + task.state === SCHEDULED) { + // xhr request throw error when send + // we should invoke task instead of leaving a scheduled + // pending macroTask + task.invoke(); + } + } + }; }); + var abortNative = patchMethod(XMLHttpRequestPrototype, 'abort', function () { return function (self, args) { + var task = findPendingTask(self); + if (task && typeof task.type == 'string') { + // If the XHR has already completed, do nothing. + // If the XHR has already been aborted, do nothing. + // Fix #569, call abort multiple times before done will cause + // macroTask task count be negative number + if (task.cancelFn == null || (task.data && task.data.aborted)) { + return; + } + task.zone.cancelTask(task); + } + else if (Zone.current[fetchTaskAborting] === true) { + // the abort is called from fetch polyfill, we need to call native abort of XHR. + return abortNative.apply(self, args); + } + // Otherwise, we are trying to abort an XHR which has not yet been sent, so there is no + // task + // to cancel. Do nothing. + }; }); + } +}); +Zone.__load_patch('geolocation', function (global) { + /// GEO_LOCATION + if (global['navigator'] && global['navigator'].geolocation) { + patchPrototype(global['navigator'].geolocation, ['getCurrentPosition', 'watchPosition']); + } +}); +Zone.__load_patch('PromiseRejectionEvent', function (global, Zone) { + // handle unhandled promise rejection + function findPromiseRejectionHandler(evtName) { + return function (e) { + var eventTasks = findEventTasks(global, evtName); + eventTasks.forEach(function (eventTask) { + // windows has added unhandledrejection event listener + // trigger the event listener + var PromiseRejectionEvent = global['PromiseRejectionEvent']; + if (PromiseRejectionEvent) { + var evt = new PromiseRejectionEvent(evtName, { promise: e.promise, reason: e.rejection }); + eventTask.invoke(evt); + } + }); + }; + } + if (global['PromiseRejectionEvent']) { + Zone[zoneSymbol('unhandledPromiseRejectionHandler')] = + findPromiseRejectionHandler('unhandledrejection'); + Zone[zoneSymbol('rejectionHandledHandler')] = + findPromiseRejectionHandler('rejectionhandled'); + } +}); + +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + +}))); + + +/***/ }), + +/***/ "./src/polyfills.ts": +/*!**************************!*\ + !*** ./src/polyfills.ts ***! + \**************************/ +/*! no exports provided */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var zone_js_dist_zone__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! zone.js/dist/zone */ "../../node_modules/zone.js/dist/zone.js"); +/* harmony import */ var zone_js_dist_zone__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(zone_js_dist_zone__WEBPACK_IMPORTED_MODULE_0__); +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), + * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. + * + * Learn more in https://angular.io/guide/browser-support + */ +/*************************************************************************************************** + * BROWSER POLYFILLS + */ +/** IE10 and IE11 requires the following for NgClass support on SVG elements */ +// import 'classlist.js'; // Run `npm install --save classlist.js`. +/** + * Web Animations `@angular/platform-browser/animations` + * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. + * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). + */ +// import 'web-animations-js'; // Run `npm install --save web-animations-js`. +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + * because those flags need to be set before `zone.js` being loaded, and webpack + * will put import in the top of bundle, so user need to create a separate file + * in this directory (for example: zone-flags.ts), and put the following flags + * into that file, and then add the following code before importing zone.js. + * import './zone-flags.ts'; + * + * The flags allowed in zone-flags.ts are listed here. + * + * The following flags will work for all browsers. + * + * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + * + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + * + * (window as any).__Zone_enable_cross_context_check = true; + * + */ +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ + // Included with Angular CLI. +/*************************************************************************************************** + * APPLICATION IMPORTS + */ + + +/***/ }), + +/***/ 1: +/*!*******************************************************************************************************************************************!*\ + !*** multi /workspace/client/node_modules/@angular-devkit/build-angular/src/angular-cli-files/models/es5-polyfills.js ./src/polyfills.ts ***! + \*******************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +__webpack_require__(/*! /workspace/client/node_modules/@angular-devkit/build-angular/src/angular-cli-files/models/es5-polyfills.js */"../../node_modules/@angular-devkit/build-angular/src/angular-cli-files/models/es5-polyfills.js"); +module.exports = __webpack_require__(/*! /workspace/client/apps/annotation/src/polyfills.ts */"./src/polyfills.ts"); + + +/***/ }) + +},[[1,"runtime"]]]); +//# sourceMappingURL=polyfills-es5.js.map \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es5.js.map b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es5.js.map new file mode 100644 index 0000000..5d591b0 --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/polyfills-es5.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/es/date/index.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/es/math/index.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/es/number/index.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/es/regexp/index.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/a-function.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/add-to-unscopables.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/advance-string-index.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-instance.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/an-object.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-copy-within.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-fill.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-for-each.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-from.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-includes.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-last-index-of.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-method-has-species-support.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-methods.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-reduce.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/array-species-create.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/bind-context.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/check-correctness-of-iteration.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof-raw.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/classof.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection-strong.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection-weak.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/collection.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/copy-constructor-properties.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/correct-prototype-getter.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-html.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-iterator-constructor.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property-descriptor.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/create-property.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/date-to-iso-string.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/date-to-primitive.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/define-iterator.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/define-well-known-symbol.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/descriptors.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/document-create-element.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/dom-iterables.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/enum-bug-keys.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/enum-keys.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/export.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fails.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-html-method.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/forced-string-trim-method.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/freezing.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/function-bind.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/function-to-string.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/get-built-in.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/get-iterator-method.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/global.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/has.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hidden-keys.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/hide.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/host-report-errors.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/html.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/ie8-dom-define.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/indexed-object.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/inherit-if-required.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-metadata.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/internal-state.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array-iterator-method.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-array.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-forced.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-integer.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-object.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-pure.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/is-regexp.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterate.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators-core.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/iterators.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-expm1.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-fround.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-log1p.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/math-sign.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/microtask.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/native-symbol.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/native-weak-map.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/new-promise-capability.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/number-is-finite.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-assign.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-create.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-properties.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-define-property.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names-external.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-names.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-get-prototype-of.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys-internal.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-keys.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-property-is-enumerable.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-set-prototype-of.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/object-to-string.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/own-keys.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/parse-float.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/parse-int.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/path.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/perform.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/promise-resolve.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine-all.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/redefine.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec-abstract.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-exec.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/regexp-flags.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/require-object-coercible.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/same-value.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-global.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-species.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/set-to-string-tag.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared-key.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/shared.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/sloppy-array-method.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/species-constructor.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-at.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-repeat.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/string-trim.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/task.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/this-number-value.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-absolute-index.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-indexed-object.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-integer.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-length.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-object.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/to-primitive.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/uid.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/user-agent.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/validate-set-prototype-of-arguments.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/validate-string-method-arguments.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/well-known-symbol.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/whitespaces.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/internals/wrapped-well-known-symbol.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.copy-within.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.every.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.fill.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.filter.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.find-index.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.find.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.for-each.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.from.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.index-of.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.is-array.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.iterator.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.join.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.last-index-of.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.map.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.of.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.reduce-right.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.reduce.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.slice.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.some.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.array.sort.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.now.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-iso-string.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-json.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-primitive.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.date.to-string.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.bind.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.has-instance.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.function.name.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.map.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.acosh.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.asinh.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.atanh.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.cbrt.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.clz32.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.cosh.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.expm1.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.fround.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.hypot.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.imul.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log10.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log1p.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.log2.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.sign.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.sinh.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.tanh.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.to-string-tag.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.math.trunc.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.constructor.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.epsilon.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-finite.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-integer.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-nan.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.is-safe-integer.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.max-safe-integer.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.min-safe-integer.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.parse-float.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.parse-int.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.to-fixed.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.number.to-precision.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.assign.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.create.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.define-properties.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.define-property.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.freeze.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-own-property-descriptor.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-own-property-names.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.get-prototype-of.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-extensible.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-frozen.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is-sealed.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.is.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.keys.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.prevent-extensions.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.seal.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.set-prototype-of.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.object.to-string.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.parse-float.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.parse-int.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.promise.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.constructor.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.exec.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.flags.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.regexp.to-string.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.set.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.anchor.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.big.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.blink.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.bold.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.code-point-at.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.ends-with.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fixed.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fontcolor.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.fontsize.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.from-code-point.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.includes.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.italics.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.iterator.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.link.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.match.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.raw.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.repeat.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.replace.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.search.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.small.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.split.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.starts-with.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.strike.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.sub.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.sup.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.string.trim.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.symbol.iterator.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.symbol.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/es.weak-map.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:////workspace/client/node_modules/@angular-devkit/build-angular/src/angular-cli-files/models/es5-polyfills.js","webpack:////workspace/client/node_modules/zone.js/dist/zone.js","webpack:///./src/polyfills.ts"],"names":[],"mappings":";;;;;;;;;AAAA,mBAAO,CAAC,+HAA2B;AACnC,mBAAO,CAAC,uIAA+B;AACvC,mBAAO,CAAC,mJAAqC;AAC7C,mBAAO,CAAC,2IAAiC;AACzC,mBAAO,CAAC,iJAAoC;;AAE5C,iBAAiB,mBAAO,CAAC,qHAAsB;;;;;;;;;;;;ACN/C,mBAAO,CAAC,mIAA6B;AACrC,mBAAO,CAAC,mIAA6B;AACrC,mBAAO,CAAC,mIAA6B;AACrC,mBAAO,CAAC,iIAA4B;AACpC,mBAAO,CAAC,mIAA6B;AACrC,mBAAO,CAAC,iIAA4B;AACpC,mBAAO,CAAC,mIAA6B;AACrC,mBAAO,CAAC,qIAA8B;AACtC,mBAAO,CAAC,mIAA6B;AACrC,mBAAO,CAAC,iIAA4B;AACpC,mBAAO,CAAC,mIAA6B;AACrC,mBAAO,CAAC,mIAA6B;AACrC,mBAAO,CAAC,iIAA4B;AACpC,mBAAO,CAAC,iIAA4B;AACpC,mBAAO,CAAC,iIAA4B;AACpC,mBAAO,CAAC,iIAA4B;AACpC,mBAAO,CAAC,mJAAqC;AAC7C,mBAAO,CAAC,mIAA6B;;AAErC,iBAAiB,mBAAO,CAAC,qHAAsB;;;;;;;;;;;;ACnB/C,mBAAO,CAAC,mJAAqC;AAC7C,mBAAO,CAAC,2IAAiC;AACzC,mBAAO,CAAC,+IAAmC;AAC3C,mBAAO,CAAC,iJAAoC;AAC5C,mBAAO,CAAC,yIAAgC;AACxC,mBAAO,CAAC,2JAAyC;AACjD,mBAAO,CAAC,6JAA0C;AAClD,mBAAO,CAAC,6JAA0C;AAClD,mBAAO,CAAC,mJAAqC;AAC7C,mBAAO,CAAC,+IAAmC;AAC3C,mBAAO,CAAC,6IAAkC;AAC1C,mBAAO,CAAC,qJAAsC;;AAE9C,iBAAiB,mBAAO,CAAC,qHAAsB;;;;;;;;;;;;ACb/C,mBAAO,CAAC,mJAAqC;AAC7C,mBAAO,CAAC,+IAAmC;AAC3C,mBAAO,CAAC,qIAA8B;AACtC,mBAAO,CAAC,uIAA+B;AACvC,mBAAO,CAAC,uIAA+B;AACvC,mBAAO,CAAC,2IAAiC;AACzC,mBAAO,CAAC,yIAAgC;AACxC,mBAAO,CAAC,uIAA+B;;;;;;;;;;;;ACPvC;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACJA,kBAAkB,mBAAO,CAAC,4IAAgC;AAC1D,aAAa,mBAAO,CAAC,oIAA4B;AACjD,WAAW,mBAAO,CAAC,kHAAmB;AACtC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;;ACda;AACb,kBAAkB,mBAAO,CAAC,4HAAwB;;AAElD;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACPA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACJA,eAAe,mBAAO,CAAC,4HAAwB;;AAE/C;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;ACNa;AACb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,eAAe,mBAAO,CAAC,4HAAwB;;AAE/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;AC1Ba;AACb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,eAAe,mBAAO,CAAC,4HAAwB;;AAE/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AChBa;AACb;AACA,sBAAsB,mBAAO,CAAC,oIAA4B;;AAE1D,oBAAoB,mBAAO,CAAC,gJAAkC;;AAE9D;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;AACb,WAAW,mBAAO,CAAC,kIAA2B;AAC9C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,mCAAmC,mBAAO,CAAC,0KAA+C;AAC1F,4BAA4B,mBAAO,CAAC,0JAAuC;AAC3E,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,qBAAqB,mBAAO,CAAC,wIAA8B;AAC3D,wBAAwB,mBAAO,CAAC,gJAAkC;;AAElE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,+BAA+B;AACzC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,UAAU,eAAe;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACxCA,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,sBAAsB,mBAAO,CAAC,4IAAgC;;AAE9D,qBAAqB,oBAAoB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,YAAY,eAAe;AAChC;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;AC1Ba;AACb,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C;;AAEA;AACA,oBAAoB,mBAAO,CAAC,gJAAkC;;AAE9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,WAAW;AACnB;AACA,CAAC;;;;;;;;;;;;ACrBD,YAAY,mBAAO,CAAC,oHAAoB;AACxC,cAAc,mBAAO,CAAC,4IAAgC;;AAEtD;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACZA,WAAW,mBAAO,CAAC,kIAA2B;AAC9C,oBAAoB,mBAAO,CAAC,sIAA6B;AACzD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,yBAAyB,mBAAO,CAAC,kJAAmC;;AAEpE,qBAAqB,qDAAqD;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,eAAe;AACzB;AACA;AACA;AACA,2CAA2C;AAC3C;AACA,8BAA8B;AAC9B,+BAA+B;AAC/B,+BAA+B;AAC/B,qCAAqC;AACrC,SAAS,iCAAiC;AAC1C;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACpDA,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,oBAAoB,mBAAO,CAAC,sIAA6B;AACzD,eAAe,mBAAO,CAAC,4HAAwB;;AAE/C,qBAAqB,sBAAsB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,sCAAsC;AAC9C;AACA;AACA;AACA;;;;;;;;;;;;AC9BA,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,cAAc,mBAAO,CAAC,0HAAuB;AAC7C,cAAc,mBAAO,CAAC,4IAAgC;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACjBA,gBAAgB,mBAAO,CAAC,8HAAyB;;AAEjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACvBA,eAAe,mBAAO,CAAC,4HAAwB;;AAE/C;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACZA,eAAe,mBAAO,CAAC,4IAAgC;AACvD;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,SAAS,EAAE;AACzD,CAAC,gBAAgB;;AAEjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA,GAAG,gBAAgB;AACnB;AACA;;;;;;;;;;;;ACnCA,iBAAiB;;AAEjB;AACA;AACA;;;;;;;;;;;;ACJA,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,oBAAoB,mBAAO,CAAC,4IAAgC;AAC5D;AACA,gDAAgD,kBAAkB,EAAE;;AAEpE;AACA;AACA;AACA;AACA,GAAG,gBAAgB;AACnB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACtBa;AACb,qBAAqB,mBAAO,CAAC,sJAAqC;AAClE,aAAa,mBAAO,CAAC,oIAA4B;AACjD,kBAAkB,mBAAO,CAAC,kIAA2B;AACrD,WAAW,mBAAO,CAAC,kIAA2B;AAC9C,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,cAAc,mBAAO,CAAC,wHAAsB;AAC5C,qBAAqB,mBAAO,CAAC,wIAA8B;AAC3D,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD,cAAc,mBAAO,CAAC,4IAAgC;AACtD,0BAA0B,mBAAO,CAAC,sIAA6B;AAC/D;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,OAAO;AACtC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA,kCAAkC;AAClC,oCAAoC;AACpC,cAAc;AACd,KAAK;;AAEL;AACA;AACA;AACA;;;;;;;;;;;;;ACxLa;AACb,kBAAkB,mBAAO,CAAC,kIAA2B;AACrD,kBAAkB,mBAAO,CAAC,4IAAgC;AAC1D,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,cAAc,mBAAO,CAAC,wHAAsB;AAC5C,wBAAwB,mBAAO,CAAC,oIAA4B;AAC5D,WAAW,mBAAO,CAAC,gHAAkB;AACrC,0BAA0B,mBAAO,CAAC,sIAA6B;AAC/D;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;;;;;;;;;;;;ACvHa;AACb,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,cAAc,mBAAO,CAAC,sHAAqB;AAC3C,eAAe,mBAAO,CAAC,0HAAuB;AAC9C,6BAA6B,mBAAO,CAAC,4IAAgC;AACrE,cAAc,mBAAO,CAAC,wHAAsB;AAC5C,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,YAAY,mBAAO,CAAC,oHAAoB;AACxC,kCAAkC,mBAAO,CAAC,sKAA6C;AACvF,qBAAqB,mBAAO,CAAC,4IAAgC;AAC7D,wBAAwB,mBAAO,CAAC,gJAAkC;;AAElE;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,qDAAqD;AACrD;AACA,kDAAkD,iBAAiB,EAAE;AACrE;AACA;AACA,4EAA4E,iCAAiC,EAAE;AAC/G;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,WAAW,yDAAyD;;AAEpE;;AAEA;;AAEA;AACA;;;;;;;;;;;;AChGA,UAAU,mBAAO,CAAC,gHAAkB;AACpC,cAAc,mBAAO,CAAC,0HAAuB;AAC7C,qCAAqC,mBAAO,CAAC,8KAAiD;AAC9F,2BAA2B,mBAAO,CAAC,sJAAqC;;AAExE;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA;;;;;;;;;;;;ACbA,YAAY,mBAAO,CAAC,4IAAgC;;AAEpD;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK,YAAY;AACjB,GAAG;AACH;;;;;;;;;;;;ACZA,kBAAkB,mBAAO,CAAC,oHAAoB;AAC9C,gBAAgB;AAChB;AACA;AACA,CAAC;;;;;;;;;;;;ACJD,6BAA6B,mBAAO,CAAC,0JAAuC;AAC5E;;AAEA;AACA;AACA;AACA;AACA;AACA,0FAA0F;AAC1F;AACA;;;;;;;;;;;;;ACVa;AACb,wBAAwB,mBAAO,CAAC,sIAA6B;AAC7D,aAAa,mBAAO,CAAC,oIAA4B;AACjD,+BAA+B,mBAAO,CAAC,8JAAyC;AAChF,qBAAqB,mBAAO,CAAC,4IAAgC;AAC7D,gBAAgB,mBAAO,CAAC,4HAAwB;;AAEhD,8BAA8B,aAAa;;AAE3C;AACA;AACA,6DAA6D,0CAA0C;AACvG;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACPa;AACb,kBAAkB,mBAAO,CAAC,kIAA2B;AACrD,2BAA2B,mBAAO,CAAC,sJAAqC;AACxE,+BAA+B,mBAAO,CAAC,8JAAyC;;AAEhF;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACTa;AACb,YAAY,mBAAO,CAAC,oHAAoB;AACxC;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;AC/BY;AACb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,kBAAkB,mBAAO,CAAC,kIAA2B;;AAErD;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;ACRa;AACb,cAAc,mBAAO,CAAC,sHAAqB;AAC3C,gCAAgC,mBAAO,CAAC,gKAA0C;AAClF,qBAAqB,mBAAO,CAAC,wJAAsC;AACnE,qBAAqB,mBAAO,CAAC,wJAAsC;AACnE,qBAAqB,mBAAO,CAAC,4IAAgC;AAC7D,WAAW,mBAAO,CAAC,kHAAmB;AACtC,eAAe,mBAAO,CAAC,0HAAuB;AAC9C,cAAc,mBAAO,CAAC,wHAAsB;AAC5C,eAAe,mBAAO,CAAC,4IAAgC;AACvD,gBAAgB,mBAAO,CAAC,4HAAwB;AAChD,oBAAoB,mBAAO,CAAC,sIAA6B;AACzD;AACA;AACA;AACA;AACA;;AAEA,8BAA8B,aAAa;;AAE3C;AACA;;AAEA;AACA;AACA;AACA;AACA,yCAAyC,4CAA4C;AACrF,6CAA6C,4CAA4C;AACzF,+CAA+C,4CAA4C;AAC3F,KAAK,qBAAqB,sCAAsC;AAChE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,gBAAgB,mBAAmB;AACnC;AACA;AACA,yCAAyC,kCAAkC;AAC3E;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,eAAe,qFAAqF;AACzG;;AAEA;AACA;;;;;;;;;;;;ACvFA,WAAW,mBAAO,CAAC,kHAAmB;AACtC,UAAU,mBAAO,CAAC,gHAAkB;AACpC,mCAAmC,mBAAO,CAAC,4JAAwC;AACnF,qBAAqB,mBAAO,CAAC,sJAAqC;;AAElE;AACA,+CAA+C;AAC/C;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACVA;AACA,kBAAkB,mBAAO,CAAC,oHAAoB;AAC9C,iCAAiC,QAAQ,mBAAmB,UAAU,EAAE,EAAE;AAC1E,CAAC;;;;;;;;;;;;ACHD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,sHAAqB;AAC5C;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACTA,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,kCAAkC,mBAAO,CAAC,wKAA8C;AACxF,iCAAiC,mBAAO,CAAC,oKAA4C;;AAErF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACfA,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,+BAA+B,mBAAO,CAAC,8KAAiD;AACxF,WAAW,mBAAO,CAAC,kHAAmB;AACtC,eAAe,mBAAO,CAAC,0HAAuB;AAC9C,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,gCAAgC,mBAAO,CAAC,gKAA0C;AAClF,eAAe,mBAAO,CAAC,4HAAwB;;AAE/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,mDAAmD;AACnD,GAAG;AACH,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACrDA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;;;;;;ACNa;AACb,WAAW,mBAAO,CAAC,kHAAmB;AACtC,eAAe,mBAAO,CAAC,0HAAuB;AAC9C,YAAY,mBAAO,CAAC,oHAAoB;AACxC,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,iBAAiB,mBAAO,CAAC,gIAA0B;;AAEnD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,yBAAyB,4CAA4C;AACrE;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA,6BAA6B,UAAU;AACvC;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,2BAA2B,mBAAmB,aAAa;;AAE3D;AACA;AACA;AACA;AACA,6CAA6C,WAAW;AACxD;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,gBAAgB;AAChB;AACA,cAAc;AACd,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA,gCAAgC,4CAA4C;AAC5E;AACA;AACA,2BAA2B,uCAAuC;AAClE;AACA;AACA;AACA;;;;;;;;;;;;AC5FA,YAAY,mBAAO,CAAC,oHAAoB;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACTA,YAAY,mBAAO,CAAC,oHAAoB;AACxC,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACVA,kBAAkB,mBAAO,CAAC,oHAAoB;AAC9C,wDAAwD;AACxD,CAAC;;;;;;;;;;;;;ACFY;AACb,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C;AACA;;AAEA;AACA;AACA,8BAA8B,gBAAgB;AAC9C;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACzBA,iBAAiB,mBAAO,CAAC,sHAAqB;;;;;;;;;;;;ACA9C,WAAW,mBAAO,CAAC,kHAAmB;AACtC,aAAa,mBAAO,CAAC,sHAAqB;;AAE1C;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;ACVA,cAAc,mBAAO,CAAC,wHAAsB;AAC5C,eAAe,mBAAO,CAAC,4IAAgC;AACvD,gBAAgB,mBAAO,CAAC,4HAAwB;;AAEhD;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACRA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACJA,uBAAuB;;AAEvB;AACA;AACA;;;;;;;;;;;;ACJA;;;;;;;;;;;;ACAA,2BAA2B,mBAAO,CAAC,sJAAqC;AACxE,+BAA+B,mBAAO,CAAC,8JAAyC;;AAEhF,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD;AACA,CAAC;AACD;AACA;AACA;;;;;;;;;;;;ACRA,aAAa,mBAAO,CAAC,sHAAqB;;AAE1C;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACPA,eAAe,mBAAO,CAAC,sHAAqB;;AAE5C;;;;;;;;;;;;ACFA;AACA,kBAAkB,mBAAO,CAAC,gIAA0B,MAAM,mBAAO,CAAC,oHAAoB;AACtF,+BAA+B,mBAAO,CAAC,wJAAsC;AAC7E,sBAAsB,UAAU;AAChC,GAAG;AACH,CAAC;;;;;;;;;;;;ACLD;AACA,YAAY,mBAAO,CAAC,oHAAoB;AACxC,cAAc,mBAAO,CAAC,gIAA0B;AAChD;;AAEA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA,CAAC;;;;;;;;;;;;ACXD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,qBAAqB,mBAAO,CAAC,wJAAsC;;AAEnE;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACTA,eAAe,mBAAO,CAAC,gHAAkB;AACzC,eAAe,mBAAO,CAAC,0HAAuB;AAC9C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,UAAU,mBAAO,CAAC,gHAAkB;AACpC,qBAAqB,mBAAO,CAAC,sJAAqC;AAClE;;AAEA;AACA;AACA;;AAEA;AACA,gCAAgC;AAChC;AACA,gBAAgB;AAChB,GAAG,EAAE;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,mBAAO,CAAC,gIAA0B;;;;;;;;;;;;ACzDlC,sBAAsB,mBAAO,CAAC,wIAA8B;AAC5D,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,WAAW,mBAAO,CAAC,kHAAmB;AACtC,gBAAgB,mBAAO,CAAC,gHAAkB;AAC1C,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,cAAc,mBAAO,CAAC,sHAAqB;AAC3C;;AAEA;AACA,uCAAuC;AACvC;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC1DA;AACA,gBAAgB,mBAAO,CAAC,4HAAwB;AAChD,eAAe,mBAAO,CAAC,4IAAgC;AACvD;;AAEA;AACA;AACA;;;;;;;;;;;;ACPA,cAAc,mBAAO,CAAC,gIAA0B;;AAEhD;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACNA,YAAY,mBAAO,CAAC,oHAAoB;AACxC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;;ACnBA,eAAe,mBAAO,CAAC,4HAAwB;AAC/C;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACPA;AACA;AACA;;;;;;;;;;;;ACFA;;;;;;;;;;;;ACAA,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,cAAc,mBAAO,CAAC,gIAA0B;AAChD,YAAY,mBAAO,CAAC,4IAAgC;;AAEpD;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACTA,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,4BAA4B,mBAAO,CAAC,0JAAuC;AAC3E,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,WAAW,mBAAO,CAAC,kIAA2B;AAC9C,wBAAwB,mBAAO,CAAC,gJAAkC;AAClE,mCAAmC,mBAAO,CAAC,0KAA+C;AAC1F;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,yDAAyD,gBAAgB;AACzE;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;;;;;;;;;;;;AChCa;AACb,qBAAqB,mBAAO,CAAC,wJAAsC;AACnE,WAAW,mBAAO,CAAC,kHAAmB;AACtC,UAAU,mBAAO,CAAC,gHAAkB;AACpC,cAAc,mBAAO,CAAC,wHAAsB;AAC5C,eAAe,mBAAO,CAAC,4IAAgC;AACvD;;AAEA,8BAA8B,aAAa;;AAE3C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;AChCA;;;;;;;;;;;;ACAA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACXD,WAAW,mBAAO,CAAC,4HAAwB;AAC3C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACvBA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACLA,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,+BAA+B,mBAAO,CAAC,8KAAiD;AACxF,cAAc,mBAAO,CAAC,gIAA0B;AAChD,gBAAgB,mBAAO,CAAC,kHAAmB;AAC3C,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,+CAA+C,sBAAsB,EAAE;AACvE;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;AC3EA;AACA,kBAAkB,mBAAO,CAAC,oHAAoB;AAC9C;AACA;AACA,CAAC;;;;;;;;;;;;ACJD,6BAA6B,mBAAO,CAAC,8IAAiC;AACtE,cAAc,mBAAO,CAAC,sHAAqB;;AAE3C;;;;;;;;;;;;;ACHa;AACb;AACA,gBAAgB,mBAAO,CAAC,8HAAyB;;AAEjD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;ACjBA,qBAAqB,mBAAO,CAAC,sHAAqB;;AAElD;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACNa;AACb;AACA,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,kCAAkC,mBAAO,CAAC,wKAA8C;AACxF,iCAAiC,mBAAO,CAAC,oKAA4C;AACrF,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,oBAAoB,mBAAO,CAAC,sIAA6B;AACzD;;AAEA;AACA,kCAAkC,mBAAO,CAAC,oHAAoB;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,cAAc,EAAE;AAC7D,wBAAwB,+CAA+C;AACvE,CAAC,qCAAqC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,CAAC;;;;;;;;;;;;ACjCD;AACA,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,uBAAuB,mBAAO,CAAC,0JAAuC;AACtE,kBAAkB,mBAAO,CAAC,oIAA4B;AACtD,WAAW,mBAAO,CAAC,kHAAmB;AACtC,4BAA4B,mBAAO,CAAC,wJAAsC;AAC1E,eAAe,mBAAO,CAAC,8HAAyB;AAChD;AACA,yBAAyB;;AAEzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA,mBAAO,CAAC,gIAA0B;;;;;;;;;;;;AC5ClC,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD,2BAA2B,mBAAO,CAAC,sJAAqC;AACxE,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,iBAAiB,mBAAO,CAAC,gIAA0B;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACbA,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD,qBAAqB,mBAAO,CAAC,sIAA6B;AAC1D,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,kBAAkB,mBAAO,CAAC,kIAA2B;AACrD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,gBAAgB;AACnB;AACA;AACA;AACA;;;;;;;;;;;;AChBA,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD,iCAAiC,mBAAO,CAAC,oKAA4C;AACrF,+BAA+B,mBAAO,CAAC,8JAAyC;AAChF,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,kBAAkB,mBAAO,CAAC,kIAA2B;AACrD,UAAU,mBAAO,CAAC,gHAAkB;AACpC,qBAAqB,mBAAO,CAAC,sIAA6B;AAC1D;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG,gBAAgB;AACnB;AACA;;;;;;;;;;;;AChBA;AACA,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,gCAAgC,mBAAO,CAAC,oKAA4C;AACpF,iBAAiB;;AAEjB;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACpBA;AACA,yBAAyB,mBAAO,CAAC,kJAAmC;AACpE,iBAAiB,mBAAO,CAAC,oIAA4B;;AAErD;AACA;AACA;;;;;;;;;;;;ACNA;;;;;;;;;;;;ACAA;AACA,UAAU,mBAAO,CAAC,gHAAkB;AACpC,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,8HAAyB;AAChD,+BAA+B,mBAAO,CAAC,0JAAuC;AAC9E;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACbA,UAAU,mBAAO,CAAC,gHAAkB;AACpC,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,mBAAmB,mBAAO,CAAC,sIAA6B;AACxD,iBAAiB,mBAAO,CAAC,gIAA0B;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AChBA;AACA,yBAAyB,mBAAO,CAAC,kJAAmC;AACpE,kBAAkB,mBAAO,CAAC,oIAA4B;;AAEtD;AACA;AACA;;;;;;;;;;;;;ACNa;AACb,mCAAmC;AACnC;;AAEA;AACA,sFAAsF,OAAO;;AAE7F;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACVD;AACA;AACA,sCAAsC,mBAAO,CAAC,gLAAkD;;AAEhG,4DAA4D;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,gBAAgB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACnBY;AACb,cAAc,mBAAO,CAAC,wHAAsB;AAC5C,oBAAoB,mBAAO,CAAC,4IAAgC;AAC5D;;AAEA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACXD,gCAAgC,mBAAO,CAAC,oKAA4C;AACpF,kCAAkC,mBAAO,CAAC,wKAA8C;AACxF,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,cAAc,mBAAO,CAAC,sHAAqB;;AAE3C;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACVA,uBAAuB,mBAAO,CAAC,sHAAqB;AACpD,yBAAyB,mBAAO,CAAC,gIAA0B;AAC3D,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD;;AAEA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACTD,qBAAqB,mBAAO,CAAC,sHAAqB;AAClD,yBAAyB,mBAAO,CAAC,gIAA0B;AAC3D,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD;AACA;;AAEA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACTD,iBAAiB,mBAAO,CAAC,sHAAqB;;;;;;;;;;;;ACA9C;AACA;AACA,YAAY;AACZ,GAAG;AACH,YAAY;AACZ;AACA;;;;;;;;;;;;ACNA,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,2BAA2B,mBAAO,CAAC,sJAAqC;;AAExE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACXA,eAAe,mBAAO,CAAC,0HAAuB;;AAE9C;AACA;AACA;AACA;;;;;;;;;;;;ACLA,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,WAAW,mBAAO,CAAC,kHAAmB;AACtC,UAAU,mBAAO,CAAC,gHAAkB;AACpC,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,6BAA6B,mBAAO,CAAC,8IAAiC;AACtE,0BAA0B,mBAAO,CAAC,sIAA6B;AAC/D;AACA;AACA;;AAEA,mBAAO,CAAC,sHAAqB;AAC7B;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA,CAAC;;;;;;;;;;;;ACpCD,cAAc,mBAAO,CAAC,qHAAe;AACrC,iBAAiB,mBAAO,CAAC,qHAAe;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;;;ACpBa;;AAEb,kBAAkB,mBAAO,CAAC,uHAAgB;;AAE1C;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,0BAA0B;AAC7C;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;;;ACtDa;AACb,eAAe,mBAAO,CAAC,4HAAwB;;AAE/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACdA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACLA,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,WAAW,mBAAO,CAAC,kHAAmB;;AAEtC;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;;;;;;;;;;;;;ACTa;AACb,iBAAiB,mBAAO,CAAC,kIAA2B;AACpD,2BAA2B,mBAAO,CAAC,sJAAqC;AACxE,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD,cAAc,mBAAO,CAAC,4IAAgC;;AAEtD;AACA;AACA;AACA;AACA;AACA,sBAAsB,aAAa;AACnC,GAAG;AACH;;;;;;;;;;;;ACbA,qBAAqB,mBAAO,CAAC,sJAAqC;AAClE,UAAU,mBAAO,CAAC,gHAAkB;AACpC,oBAAoB,mBAAO,CAAC,4IAAgC;;AAE5D;AACA;AACA,uCAAuC,iCAAiC;AACxE;AACA;;;;;;;;;;;;ACRA,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,UAAU,mBAAO,CAAC,gHAAkB;;AAEpC;AACA;AACA;;;;;;;;;;;;ACLA,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD;AACA,kDAAkD;;AAElD;AACA,qEAAqE;AACrE,CAAC;AACD;AACA,QAAQ,mBAAO,CAAC,wHAAsB;AACtC;AACA,CAAC;;;;;;;;;;;;;ACXY;AACb,YAAY,mBAAO,CAAC,oHAAoB;;AAExC;AACA;AACA;AACA;AACA,+CAA+C,SAAS,EAAE;AAC1D,GAAG;AACH;;;;;;;;;;;;ACTA,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,cAAc,mBAAO,CAAC,4IAAgC;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACVA,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,6BAA6B,mBAAO,CAAC,0JAAuC;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACfa;AACb,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,6BAA6B,mBAAO,CAAC,0JAAuC;;AAE5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,MAAM;AACd;AACA;;;;;;;;;;;;ACbA,6BAA6B,mBAAO,CAAC,0JAAuC;AAC5E,uBAAuB,mBAAO,CAAC,gIAA0B;AACzD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACbA,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,cAAc,mBAAO,CAAC,gIAA0B;AAChD,WAAW,mBAAO,CAAC,kIAA2B;AAC9C,WAAW,mBAAO,CAAC,kHAAmB;AACtC,oBAAoB,mBAAO,CAAC,wJAAsC;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;ACvFA,cAAc,mBAAO,CAAC,gIAA0B;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACTA,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD;AACA;;AAEA;AACA;AACA,4DAA4D;AAC5D;AACA;AACA;AACA;;;;;;;;;;;;ACVA;AACA,oBAAoB,mBAAO,CAAC,sIAA6B;AACzD,6BAA6B,mBAAO,CAAC,0JAAuC;;AAE5E;AACA;AACA;;;;;;;;;;;;ACNA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACPA,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD;;AAEA;AACA;AACA;AACA,uEAAuE;AACvE;;;;;;;;;;;;ACPA,6BAA6B,mBAAO,CAAC,0JAAuC;;AAE5E;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACNA;AACA,eAAe,mBAAO,CAAC,4HAAwB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACXA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;ACLA,aAAa,mBAAO,CAAC,sHAAqB;AAC1C;;AAEA;;;;;;;;;;;;ACHA,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4HAAwB;;AAE/C;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACRA,sBAAsB;AACtB,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,6BAA6B,mBAAO,CAAC,0JAAuC;;AAE5E;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACRA,YAAY,mBAAO,CAAC,sHAAqB;AACzC,UAAU,mBAAO,CAAC,gHAAkB;AACpC,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,oBAAoB,mBAAO,CAAC,oIAA4B;;AAExD;AACA;AACA;AACA;;;;;;;;;;;;ACRA;AACA;AACA;;;;;;;;;;;;ACFA,YAAY,mBAAO,CAAC,4IAAgC;;;;;;;;;;;;ACApD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B;AAC/D,cAAc,mBAAO,CAAC,4IAAgC;AACtD,CAAC;;AAED;AACA,mBAAO,CAAC,8IAAiC;;;;;;;;;;;;;ACP5B;AACb,oBAAoB,mBAAO,CAAC,oIAA4B;;AAExD,oBAAoB,mBAAO,CAAC,gJAAkC;;AAE9D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,sDAAsD;AACtF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACXD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B,GAAG,OAAO,mBAAO,CAAC,8HAAyB,GAAG;;AAE7G;AACA,mBAAO,CAAC,8IAAiC;;;;;;;;;;;;;ACL5B;AACb,qBAAqB,mBAAO,CAAC,oIAA4B;;AAEzD,sBAAsB,mBAAO,CAAC,0KAA+C;;AAE7E;AACA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,yDAAyD;AACzF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACZY;AACb,wBAAwB,mBAAO,CAAC,oIAA4B;AAC5D;AACA;;AAEA;AACA,wDAAwD,qBAAqB,EAAE;;AAE/E;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,oDAAoD;AACpF;AACA;AACA;AACA,CAAC;;AAED;AACA,mBAAO,CAAC,8IAAiC;;;;;;;;;;;;;ACjB5B;AACb,mBAAmB,mBAAO,CAAC,oIAA4B;AACvD;AACA;;AAEA;AACA,4CAA4C,qBAAqB,EAAE;;AAEnE;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,oDAAoD;AACpF;AACA;AACA;AACA,CAAC;;AAED;AACA,mBAAO,CAAC,8IAAiC;;;;;;;;;;;;;ACjB5B;AACb,cAAc,mBAAO,CAAC,sIAA6B;;AAEnD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,8DAA8D,GAAG,mBAAmB;;;;;;;;;;;;ACLpH,2BAA2B,mBAAO,CAAC,sKAA6C;AAChF;AACA,CAAC;;AAED;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,2DAA2D;AAC3F,QAAQ,mBAAO,CAAC,8HAAyB;AACzC,CAAC;;;;;;;;;;;;;ACRY;AACb,sBAAsB,mBAAO,CAAC,sIAA6B;AAC3D;;AAEA;AACA,oBAAoB,mBAAO,CAAC,gJAAkC;;AAE9D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,uEAAuE;AACvG;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;AChBD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,8BAA8B,GAAG,UAAU,mBAAO,CAAC,0HAAuB,GAAG;;;;;;;;;;;;;ACFhG;AACb,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,uBAAuB,mBAAO,CAAC,8IAAiC;AAChE,gBAAgB,mBAAO,CAAC,4HAAwB;AAChD,0BAA0B,mBAAO,CAAC,sIAA6B;AAC/D,qBAAqB,mBAAO,CAAC,wIAA8B;AAC3D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA,8BAA8B;AAC9B,gCAAgC;AAChC,UAAU;AACV,CAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;;ACnDa;AACb,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D;;AAEA,kBAAkB,mBAAO,CAAC,sIAA6B;AACvD,oBAAoB,mBAAO,CAAC,gJAAkC;;AAE9D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,qEAAqE;AACrG;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACbD,uBAAuB,mBAAO,CAAC,gJAAkC;;AAEjE;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,4EAA4E;AAC5G;AACA,CAAC;;;;;;;;;;;;;ACNY;AACb,kBAAkB,mBAAO,CAAC,oIAA4B;;AAEtD,sBAAsB,mBAAO,CAAC,0KAA+C;;AAE7E;AACA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,yDAAyD;AACzF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACZY;AACb,qBAAqB,mBAAO,CAAC,wIAA8B;;AAE3D,mBAAmB,mBAAO,CAAC,oHAAoB;AAC/C,gBAAgB;AAChB;AACA,CAAC;;AAED;AACA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,oDAAoD;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACpBY;AACb,0BAA0B,mBAAO,CAAC,kIAA2B;;AAE7D,oBAAoB,mBAAO,CAAC,gJAAkC;;AAE9D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,sDAAsD;AACtF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACXY;AACb,qBAAqB,mBAAO,CAAC,kIAA2B;;AAExD,oBAAoB,mBAAO,CAAC,gJAAkC;;AAE9D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,sDAAsD;AACtF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACXY;AACb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,cAAc,mBAAO,CAAC,0HAAuB;AAC7C,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,qBAAqB,mBAAO,CAAC,wIAA8B;AAC3D,cAAc,mBAAO,CAAC,4IAAgC;AACtD;AACA;;AAEA,sBAAsB,mBAAO,CAAC,0KAA+C;;AAE7E;AACA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,yDAAyD;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAAS;AACxB;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;AC1CY;AACb,mBAAmB,mBAAO,CAAC,oIAA4B;;AAEvD,oBAAoB,mBAAO,CAAC,gJAAkC;;AAE9D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,sDAAsD;AACtF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACXY;AACb,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,YAAY,mBAAO,CAAC,oHAAoB;AACxC;AACA;;AAEA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA,CAAC;AACD;AACA,oBAAoB,mBAAO,CAAC,gJAAkC;;AAE9D;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+CAA+C;AAC/E;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;AC5BD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6BAA6B;AAC7D;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACND,kBAAkB,mBAAO,CAAC,8IAAiC;;AAE3D;AACA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,kFAAkF;AAClH;AACA,CAAC;;;;;;;;;;;;;ACPY;AACb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,kBAAkB,mBAAO,CAAC,kIAA2B;;AAErD,aAAa,mBAAO,CAAC,oHAAoB;AACzC;AACA,mCAAmC,2BAA2B,UAAU,EAAE,EAAE;AAC5E,CAAC;;AAED;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,8CAA8C;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;AClBD,WAAW,mBAAO,CAAC,kHAAmB;AACtC,mBAAmB,mBAAO,CAAC,4IAAgC;AAC3D,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D;;AAEA;AACA;AACA;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,EAAE,mBAAO,CAAC,0HAAuB;AACjC;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACdA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,kCAAkC;AAClE,QAAQ,mBAAO,CAAC,oIAA4B;AAC5C,CAAC;;;;;;;;;;;;;ACJY;AACb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,2BAA2B,mBAAO,CAAC,sJAAqC;AACxE,qBAAqB,mBAAO,CAAC,wJAAsC;AACnE,mBAAmB,mBAAO,CAAC,4IAAgC;AAC3D;;AAEA;AACA;AACA;AACA,2DAA2D;AAC3D;AACA;AACA;AACA;AACA;AACA,GAAG,EAAE;AACL;;;;;;;;;;;;ACjBA,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD,qBAAqB,mBAAO,CAAC,sJAAqC;AAClE;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;ACpBa;AACb;AACA;AACA,iBAAiB,mBAAO,CAAC,8HAAyB;AAClD,yBAAyB,mEAAmE;AAC5F,CAAC,EAAE,mBAAO,CAAC,4IAAgC;;;;;;;;;;;;ACL3C,YAAY,mBAAO,CAAC,8HAAyB;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6CAA6C;AAC7E;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACpBD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+EAA+E;AAC/G;AACA,CAAC;;;;;;;;;;;;ACbD;AACA;;AAEA;AACA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gFAAgF;AAChH;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACVD,WAAW,mBAAO,CAAC,4HAAwB;AAC3C;AACA;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6BAA6B;AAC7D;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACVD;AACA;AACA;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6BAA6B;AAC7D;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACVD,YAAY,mBAAO,CAAC,8HAAyB;AAC7C;AACA;AACA;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,kFAAkF;AAClH;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACZD,0BAA0B,mBAAO,CAAC,8HAAyB;;AAE3D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,wEAAwE;AACxG;AACA,CAAC;;;;;;;;;;;;ACND;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6BAA6B,GAAG,SAAS,mBAAO,CAAC,gIAA0B,GAAG;;;;;;;;;;;;ACF9G;AACA;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6BAA6B;AAC7D,yCAAyC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACzBD;;AAEA,aAAa,mBAAO,CAAC,oHAAoB;AACzC;AACA,CAAC;;AAED;AACA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6CAA6C;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;AClBD;AACA;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6BAA6B;AAC7D;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACTD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6BAA6B,GAAG,QAAQ,mBAAO,CAAC,8HAAyB,GAAG;;;;;;;;;;;;ACF5G;AACA;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6BAA6B;AAC7D;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACTD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6BAA6B,GAAG,OAAO,mBAAO,CAAC,4HAAwB,GAAG;;;;;;;;;;;;ACF1G,YAAY,mBAAO,CAAC,8HAAyB;AAC7C;AACA;AACA;;AAEA,aAAa,mBAAO,CAAC,oHAAoB;AACzC;AACA,CAAC;;AAED;AACA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6CAA6C;AAC7E;AACA;AACA;AACA,CAAC;;;;;;;;;;;;AChBD,YAAY,mBAAO,CAAC,8HAAyB;AAC7C;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6BAA6B;AAC7D;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACXD;AACA;AACA,mBAAO,CAAC,4IAAgC;;;;;;;;;;;;ACFxC;AACA;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6BAA6B;AAC7D;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACTY;AACb,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,UAAU,mBAAO,CAAC,gHAAkB;AACpC,cAAc,mBAAO,CAAC,gIAA0B;AAChD,wBAAwB,mBAAO,CAAC,gJAAkC;AAClE,kBAAkB,mBAAO,CAAC,kIAA2B;AACrD,YAAY,mBAAO,CAAC,oHAAoB;AACxC,0BAA0B,mBAAO,CAAC,oKAA4C;AAC9E,+BAA+B,mBAAO,CAAC,8KAAiD;AACxF,qBAAqB,mBAAO,CAAC,sJAAqC;AAClE,yBAAyB,mBAAO,CAAC,gIAA0B;AAC3D;AACA;AACA;;AAEA;AACA,6BAA6B,mBAAO,CAAC,oIAA4B;AACjE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD,KAAK;AACL;AACA,oCAAoC,cAAc,OAAO;AACzD,qCAAqC,cAAc,OAAO;AAC1D;AACA;AACA;AACA;AACA,iBAAiB,YAAY;AAC7B;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,oCAAoC,EAAE;AACpF;AACA;AACA,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD;AACA;AACA;AACA;AACA;AACA,2BAA2B,iBAAiB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,mBAAO,CAAC,0HAAuB;AACjC;;;;;;;;;;;;AC1EA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B,GAAG,4BAA4B;;;;;;;;;;;;ACF9F;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B;AAC/D,YAAY,mBAAO,CAAC,0IAA+B;AACnD,CAAC;;;;;;;;;;;;ACJD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B;AAC/D,aAAa,mBAAO,CAAC,8HAAyB;AAC9C,CAAC;;;;;;;;;;;;ACJD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B;AAC/D;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACPD,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B;AAC/D;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACTD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B,GAAG,qCAAqC;;;;;;;;;;;;ACFvG;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B,GAAG,sCAAsC;;;;;;;;;;;;ACFxG,iBAAiB,mBAAO,CAAC,gIAA0B;;AAEnD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,wEAAwE;AACxG;AACA,CAAC;;;;;;;;;;;;ACND,eAAe,mBAAO,CAAC,4HAAwB;;AAE/C;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,oEAAoE;AACpG;AACA,CAAC;;;;;;;;;;;;;ACNY;AACb,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,aAAa,mBAAO,CAAC,oIAA4B;AACjD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG;AAChC;AACA;AACA;AACA;AACA,MAAM,mBAAO,CAAC,oHAAoB;AAClC;AACA,uBAAuB;AACvB,CAAC,GAAG;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA,CAAC;;;;;;;;;;;;;ACpHY;AACb,YAAY,mBAAO,CAAC,oHAAoB;AACxC,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG;AAChC;AACA;AACA,CAAC;AACD;AACA,2BAA2B;AAC3B,CAAC,GAAG;AACJ;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACnBD,aAAa,mBAAO,CAAC,oIAA4B;;AAEjD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,iEAAiE,GAAG,iBAAiB;;;;;;;;;;;;ACJrH;AACA;AACA,mBAAO,CAAC,sHAAqB;AAC7B,uCAAuC,mBAAO,CAAC,gIAA0B;AACzE,CAAC,GAAG,SAAS,mBAAO,CAAC,oIAA4B,GAAG;;;;;;;;;;;;ACJpD,kBAAkB,mBAAO,CAAC,gIAA0B;;AAEpD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,yEAAyE;AACzG,oBAAoB,mBAAO,CAAC,0JAAuC;AACnE,CAAC;;;;;;;;;;;;ACND,kBAAkB,mBAAO,CAAC,gIAA0B;;AAEpD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,yEAAyE;AACzG,kBAAkB,mBAAO,CAAC,sJAAqC;AAC/D,CAAC;;;;;;;;;;;;ACND,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4IAAgC;AACvD;AACA,eAAe,mBAAO,CAAC,0HAAuB;AAC9C,0BAA0B,mBAAO,CAAC,oHAAoB,eAAe,iBAAiB,EAAE;;AAExF;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6EAA6E;AAC7G;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACZD,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,qCAAqC,mBAAO,CAAC,8KAAiD;AAC9F,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD,0BAA0B,mBAAO,CAAC,oHAAoB,eAAe,mCAAmC,EAAE;AAC1G;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,mEAAmE;AACnG;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACZD,gCAAgC,mBAAO,CAAC,sLAAqD;AAC7F,0BAA0B,mBAAO,CAAC,oHAAoB,eAAe,+BAA+B,EAAE;;AAEtG;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,4DAA4D;AAC5F;AACA,CAAC;;;;;;;;;;;;ACPD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,2BAA2B,mBAAO,CAAC,wJAAsC;AACzE,+BAA+B,mBAAO,CAAC,0JAAuC;AAC9E,0BAA0B,mBAAO,CAAC,oHAAoB,eAAe,yBAAyB,EAAE;;AAEhG;AACA;AACA,mBAAO,CAAC,sHAAqB;AAC7B;AACA,CAAC;AACD;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACbD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C;AACA,0BAA0B,mBAAO,CAAC,oHAAoB,eAAe,uBAAuB,EAAE;;AAE9F;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,4DAA4D;AAC5F;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACVD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C;AACA,0BAA0B,mBAAO,CAAC,oHAAoB,eAAe,mBAAmB,EAAE;;AAE1F;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,4DAA4D;AAC5F;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACVD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C;AACA,0BAA0B,mBAAO,CAAC,oHAAoB,eAAe,mBAAmB,EAAE;;AAE1F;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,4DAA4D;AAC5F;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACVD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B,GAAG,KAAK,mBAAO,CAAC,8HAAyB,GAAG;;;;;;;;;;;;ACF3G,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,0BAA0B,mBAAO,CAAC,oHAAoB,eAAe,eAAe,EAAE;;AAEtF;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,4DAA4D;AAC5F;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACVD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4IAAgC;AACvD;AACA,eAAe,mBAAO,CAAC,0HAAuB;AAC9C,0BAA0B,mBAAO,CAAC,oHAAoB,eAAe,4BAA4B,EAAE;;AAEnG;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6EAA6E;AAC7G;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACZD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4IAAgC;AACvD;AACA,eAAe,mBAAO,CAAC,0HAAuB;AAC9C,0BAA0B,mBAAO,CAAC,oHAAoB,eAAe,eAAe,EAAE;;AAEtF;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,6EAA6E;AAC7G;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACZD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B;AAC/D,kBAAkB,mBAAO,CAAC,wJAAsC;AAChE,CAAC;;;;;;;;;;;;ACJD,eAAe,mBAAO,CAAC,0IAA+B;AACtD;;AAEA;AACA;AACA;AACA,EAAE,mBAAO,CAAC,0HAAuB,0CAA0C,eAAe;AAC1F;;;;;;;;;;;;ACPA,+BAA+B,mBAAO,CAAC,gIAA0B;;AAEjE;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+DAA+D;AAC/F;AACA,CAAC;;;;;;;;;;;;ACND,6BAA6B,mBAAO,CAAC,4HAAwB;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,2DAA2D;AAC3F;AACA,CAAC;;;;;;;;;;;;;ACNY;AACb;AACA,cAAc,mBAAO,CAAC,wHAAsB;AAC5C,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,cAAc,mBAAO,CAAC,sHAAqB;AAC3C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,cAAc,mBAAO,CAAC,gIAA0B;AAChD,cAAc,mBAAO,CAAC,wHAAsB;AAC5C,kCAAkC,mBAAO,CAAC,sKAA6C;AACvF,yBAAyB,mBAAO,CAAC,gJAAkC;AACnE,WAAW,mBAAO,CAAC,kHAAmB;AACtC,gBAAgB,mBAAO,CAAC,4HAAwB;AAChD,qBAAqB,mBAAO,CAAC,wIAA8B;AAC3D,uBAAuB,mBAAO,CAAC,8IAAiC;AAChE,iCAAiC,mBAAO,CAAC,sJAAqC;AAC9E,cAAc,mBAAO,CAAC,wHAAsB;AAC5C,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,cAAc,mBAAO,CAAC,4IAAgC;AACtD,0BAA0B,mBAAO,CAAC,sIAA6B;AAC/D,eAAe,mBAAO,CAAC,4HAAwB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,2BAA2B;AAC3B,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA,yDAAyD,cAAc;AACvE,CAAC;;AAED;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,WAAW;AACX,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA,6CAA6C;AAC7C;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,eAAe;AAClB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA,GAAG;AACH,6BAA6B,cAAc;AAC3C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,uBAAuB,mBAAO,CAAC,kIAA2B;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,wDAAwD,+CAA+C;AACvG;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA,SAAS,2CAA2C,GAAG,8BAA8B;;AAErF,mBAAO,CAAC,4IAAgC;AACxC,mBAAO,CAAC,gIAA0B;;AAElC,iBAAiB,mBAAO,CAAC,kHAAmB;;AAE5C;AACA,SAAS,8CAA8C;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED,SAAS,yDAAyD;AAClE;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED,SAAS,2DAA2D;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACzVD,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD,YAAY,mBAAO,CAAC,4IAAgC;AACpD,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,wBAAwB,mBAAO,CAAC,gJAAkC;AAClE,qBAAqB,mBAAO,CAAC,sJAAqC;AAClE,0BAA0B,mBAAO,CAAC,oKAA4C;AAC9E,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,kIAA2B;AAClD,eAAe,mBAAO,CAAC,0HAAuB;AAC9C,YAAY,mBAAO,CAAC,oHAAoB;AACxC;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,0BAA0B,EAAE;AACpD,0BAA0B,wBAAwB;AAClD,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,mBAAO,CAAC,gIAA0B;;;;;;;;;;;;;ACxDrB;;AAEb,iBAAiB,mBAAO,CAAC,gIAA0B;;AAEnD,mBAAO,CAAC,sHAAqB,GAAG,iEAAiE;AACjG;AACA,CAAC;;;;;;;;;;;;ACND;AACA;AACA,IAAI,mBAAO,CAAC,gIAA0B;AACtC,EAAE,mBAAO,CAAC,sJAAqC;AAC/C;AACA,SAAS,mBAAO,CAAC,kIAA2B;AAC5C,GAAG;AACH;;;;;;;;;;;;;ACPa;AACb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,YAAY,mBAAO,CAAC,oHAAoB;AACxC,YAAY,mBAAO,CAAC,kIAA2B;AAC/C,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD;AACA;;AAEA,qCAAqC,6BAA6B,0BAA0B,YAAY,EAAE;AAC1G;AACA;;AAEA;AACA;AACA;AACA,EAAE,mBAAO,CAAC,0HAAuB;AACjC;AACA;AACA;AACA,GAAG,GAAG,eAAe;AACrB;;;;;;;;;;;;;ACpBa;AACb;AACA;AACA,iBAAiB,mBAAO,CAAC,8HAAyB;AAClD,yBAAyB,mEAAmE;AAC5F,CAAC,EAAE,mBAAO,CAAC,4IAAgC;;;;;;;;;;;;;ACL9B;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;AACb,0BAA0B,mBAAO,CAAC,4HAAwB;;AAE1D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gCAAgC;AAChE;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACTY;AACb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,wBAAwB,mBAAO,CAAC,0KAA+C;AAC/E;AACA;AACA;;AAEA,8BAA8B,mBAAO,CAAC,wJAAsC;;AAE5E;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,kEAAkE;AAClG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACtBY;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACVD,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D;AACA;;AAEA;AACA;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,yDAAyD;AACzF,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,CAAC;;;;;;;;;;;;;ACxBY;AACb,wBAAwB,mBAAO,CAAC,0KAA+C;AAC/E;;AAEA,8BAA8B,mBAAO,CAAC,wJAAsC;;AAE5E;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,kEAAkE;AAClG;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACbY;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;AACb,kBAAkB,mBAAO,CAAC,4HAAwB;AAClD,0BAA0B,mBAAO,CAAC,sIAA6B;AAC/D,qBAAqB,mBAAO,CAAC,wIAA8B;AAC3D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA,UAAU;AACV,CAAC;;;;;;;;;;;;;AC3BY;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;;AAEb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,6BAA6B,mBAAO,CAAC,0JAAuC;AAC5E,yBAAyB,mBAAO,CAAC,kJAAmC;AACpE,iBAAiB,mBAAO,CAAC,kJAAmC;;AAE5D;AACA,mBAAO,CAAC,8KAAiD;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC/CA,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,eAAe,mBAAO,CAAC,4HAAwB;;AAE/C;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,+BAA+B;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,CAAC;;;;;;;;;;;;ACjBD;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gCAAgC;AAChE,UAAU,mBAAO,CAAC,oIAA4B;AAC9C,CAAC;;;;;;;;;;;;;ACJY;;AAEb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,6BAA6B,mBAAO,CAAC,0JAAuC;AAC5E,yBAAyB,mBAAO,CAAC,kJAAmC;AACpE,iBAAiB,mBAAO,CAAC,kJAAmC;AAC5D;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAO,CAAC,8KAAiD;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,uBAAuB,oBAAoB;AAC3C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,mBAAmB;AAC5C;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;;;;;;;;;;;;AChIa;;AAEb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,6BAA6B,mBAAO,CAAC,0JAAuC;AAC5E,gBAAgB,mBAAO,CAAC,8HAAyB;AACjD,iBAAiB,mBAAO,CAAC,kJAAmC;;AAE5D;AACA,mBAAO,CAAC,8KAAiD;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACrCa;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;;AAEb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,6BAA6B,mBAAO,CAAC,0JAAuC;AAC5E,yBAAyB,mBAAO,CAAC,gJAAkC;AACnE,yBAAyB,mBAAO,CAAC,kJAAmC;AACpE,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,qBAAqB,mBAAO,CAAC,kJAAmC;AAChE,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,YAAY,mBAAO,CAAC,oHAAoB;AACxC;AACA;AACA;;AAEA;AACA,qCAAqC,iCAAiC,EAAE;;AAExE;AACA,mBAAO,CAAC,8KAAiD;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiF;AACjF;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,2BAA2B,mBAAmB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;;;;;;;;;;;;ACzIa;AACb,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,wBAAwB,mBAAO,CAAC,0KAA+C;AAC/E;AACA,8BAA8B,mBAAO,CAAC,wJAAsC;AAC5E;;AAEA;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,kEAAkE;AAClG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;AClBY;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;AACb,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;ACVY;AACb,yBAAyB,mBAAO,CAAC,gIAA0B;AAC3D,aAAa,mBAAO,CAAC,4JAAwC;;AAE7D;AACA;AACA,mBAAO,CAAC,sHAAqB,GAAG,gDAAgD;AAChF;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACVD;AACA;AACA,mBAAO,CAAC,0JAAuC;;;;;;;;;;;;;ACFlC;AACb;AACA,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,UAAU,mBAAO,CAAC,gHAAkB;AACpC,kBAAkB,mBAAO,CAAC,gIAA0B;AACpD,cAAc,mBAAO,CAAC,wHAAsB;AAC5C,cAAc,mBAAO,CAAC,sHAAqB;AAC3C,eAAe,mBAAO,CAAC,0HAAuB;AAC9C,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,YAAY,mBAAO,CAAC,oHAAoB;AACxC,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,qBAAqB,mBAAO,CAAC,4IAAgC;AAC7D,UAAU,mBAAO,CAAC,gHAAkB;AACpC,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,mCAAmC,mBAAO,CAAC,4JAAwC;AACnF,4BAA4B,mBAAO,CAAC,0JAAuC;AAC3E,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,cAAc,mBAAO,CAAC,0HAAuB;AAC7C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D,kBAAkB,mBAAO,CAAC,kIAA2B;AACrD,+BAA+B,mBAAO,CAAC,8JAAyC;AAChF,yBAAyB,mBAAO,CAAC,oIAA4B;AAC7D,kCAAkC,mBAAO,CAAC,sLAAqD;AAC/F,qCAAqC,mBAAO,CAAC,8KAAiD;AAC9F,2BAA2B,mBAAO,CAAC,sJAAqC;AACxE,iCAAiC,mBAAO,CAAC,oKAA4C;AACrF,WAAW,mBAAO,CAAC,kHAAmB;AACtC,iBAAiB,mBAAO,CAAC,gIAA0B;AACnD,aAAa,mBAAO,CAAC,8HAAyB;AAC9C,0BAA0B,mBAAO,CAAC,sIAA6B;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,mBAAO,CAAC,oIAA4B;AACxD;AACA;;AAEA;AACA;AACA,mDAAmD;AACnD,sBAAsB,yCAAyC,WAAW,IAAI;AAC9E,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2FAA2F;AAC3F;AACA,KAAK;AACL;AACA,iCAAiC,iDAAiD;AAClF,KAAK;AACL,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8EAA8E,kCAAkC;AAChH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,EAAE,mBAAO,CAAC,oKAA4C;AACtD,EAAE,mBAAO,CAAC,wKAA8C;;AAExD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,gFAAgF,eAAe;AAC/F;AACA;;AAEA;AACA;AACA;AACA;;AAEA,SAAS,yEAAyE,GAAG,kBAAkB;;AAEvG,qEAAqE,6BAA6B;AAClG;AACA;;AAEA,SAAS,qDAAqD;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,0BAA0B,mBAAmB,EAAE;AAC/C,0BAA0B,oBAAoB;AAC9C,CAAC;;AAED,SAAS,2EAA2E;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED,SAAS,uDAAuD;AAChE;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,4BAA4B,YAAY,QAAQ;AAChD;AACA,iDAAiD;AACjD,CAAC,GAAG;AACJ;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;;;;;ACpRa;AACb,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,kBAAkB,mBAAO,CAAC,kIAA2B;AACrD,6BAA6B,mBAAO,CAAC,4IAAgC;AACrE,WAAW,mBAAO,CAAC,wIAA8B;AACjD,eAAe,mBAAO,CAAC,4HAAwB;AAC/C,0BAA0B,mBAAO,CAAC,sIAA6B;AAC/D,sBAAsB,mBAAO,CAAC,wIAA8B;AAC5D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,gCAAgC,mBAAO,CAAC,8HAAyB;;AAEjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,GAAG;AACH;;;;;;;;;;;;AChEA,mBAAmB,mBAAO,CAAC,oIAA4B;AACvD,2BAA2B,mBAAO,CAAC,wIAA8B;AACjE,aAAa,mBAAO,CAAC,sHAAqB;AAC1C,WAAW,mBAAO,CAAC,kHAAmB;AACtC,sBAAsB,mBAAO,CAAC,4IAAgC;AAC9D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC7BA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACmC;AACS;;AAE5C;AAC0C;AACA;AACQ;;AAElD;AAC0C;AACS;AACE;AACU;AACX;AACZ;AACkB;AAChB;AACF;AACc;AACT;AACA;AACI;AACP;AACJ;AACc;AACP;;AAE7C;AAC2C;AACJ;AACF;AACE;AACC;AACD;AACI;AACL;AACG;AACF;AACC;AACC;AACM;AACJ;AACK;AACF;AACP;AACA;AACM;AACF;;AAE3C;AACmD;AACZ;AACC;AACI;AACK;AACJ;AACD;AACF;AACK;AACL;AACH;AACE;AACD;AACC;AACI;AACD;AACD;AACH;AACC;AACC;AACH;AACA;;AAED;AACE;;AAEb;AACF;AACA;AACE;;AAEK;AACK;AACL;AACsB;AAClB;;;;;;;;;;;;AC9FpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,KAA4D;AAC7D,CAAC,SACW;AACZ,CAAC,qBAAqB;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,kBAAkB;AACzD,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,0BAA0B;AACrD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,iEAAiE,+CAA+C,EAAE;AAClH;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,4DAA4D,0CAA0C;AACtG;AACA;AACA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,kBAAkB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA,uCAAuC,0BAA0B,EAAE;AACnE;AACA;AACA;AACA,wCAAwC,6DAA6D,EAAE;AACvG,uCAAuC,WAAW,EAAE;AACpD;AACA,kCAAkC,aAAa,EAAE;AACjD,oCAAoC,WAAW,EAAE;AACjD,gCAAgC,aAAa,EAAE;AAC/C,qCAAqC,aAAa,EAAE;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,0CAA0C,aAAa,EAAE;AACzD,iCAAiC,cAAc,EAAE;AACjD,uCAAuC,kBAAkB,EAAE;AAC3D,2CAA2C,aAAa,EAAE;AAC1D,qDAAqD,kBAAkB,EAAE;AACzE,mCAAmC,kBAAkB,EAAE;AACvD,iCAAiC,WAAW,EAAE;AAC9C,iCAAiC,aAAa,EAAE;AAChD,0CAA0C,aAAa,EAAE;AACzD,uCAAuC,WAAW,EAAE;AACpD,4CAA4C,aAAa,EAAE;AAC3D,wCAAwC,aAAa,EAAE;AACvD,qCAAqC,aAAa;AAClD;AACA,6BAA6B;AAC7B;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4HAA4H,wBAAwB,oCAAoC;AACxL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF,sEAAsE;AACtJ;AACA;AACA,+BAA+B,kBAAkB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAoD;AAC5F;AACA;AACA;AACA;AACA;AACA,2BAA2B,mCAAmC;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,qEAAqE,gBAAgB;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mFAAmF,kBAAkB;AACrG;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,QAAQ,gBAAgB;AACnD;AACA;AACA;AACA;AACA,yBAAyB,0BAA0B;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,mFAAmF,kBAAkB;AACrG;AACA;AACA;AACA;AACA,2BAA2B,QAAQ,gBAAgB;AACnD;AACA;AACA;AACA;AACA,yBAAyB,0BAA0B;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,QAAQ;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,mBAAmB,oBAAoB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,uBAAuB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,yBAAyB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,EAAE;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gEAAgE;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,EAAE;AACR;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,oCAAoC;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,sBAAsB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,sBAAsB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,0BAA0B;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,sBAAsB;AAChE,qCAAqC,iBAAiB;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,8BAA8B;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,0BAA0B;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,0BAA0B;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,kBAAkB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,iBAAiB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,wBAAwB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,wBAAwB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,iBAAiB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,kBAAkB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0FAA0F;AAC1F;AACA;AACA;AACA;AACA;AACA,UAAU,EAAE;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,0BAA0B,EAAE;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,6BAA6B,EAAE;AACpF;AACA;AACA;AACA;AACA,8CAA8C,kDAAkD,EAAE;AAClG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,sDAAsD;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,EAAE;AACP,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,+BAA+B,EAAE;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE,gBAAgB;AACrF;AACA,mBAAmB,uBAAuB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,0BAA0B;AAC7C;AACA;AACA,uBAAuB,uBAAuB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,iBAAiB;AACpC;AACA;AACA;AACA;AACA;AACA,6CAA6C,6BAA6B;AAC1E;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,8FAA8F;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,mBAAmB,uBAAuB;AAC1C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,EAAE;AACZ;AACA,6DAA6D;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,EAAE;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,uBAAuB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA,mBAAmB,4BAA4B;AAC/C;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,sBAAsB;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mFAAmF;AACnF;AACA;AACA;AACA,UAAU,EAAE;AACZ;AACA;AACA;AACA,mFAAmF;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,EAAE;AACZ,qFAAqF;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,EAAE;AACZ;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,0CAA0C;AAC5G;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;;;;;;;;;;;;;ACl5GD;AAAA;AAAA;AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AAEH,+EAA+E;AAC/E,oEAAoE;AAEpE;;;;GAIG;AACH,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH;;GAEG;AACwB,CAAC,6BAA6B;AAEzD;;GAEG","file":"polyfills-es5.js","sourcesContent":["require('../../modules/es.date.now');\nrequire('../../modules/es.date.to-json');\nrequire('../../modules/es.date.to-iso-string');\nrequire('../../modules/es.date.to-string');\nrequire('../../modules/es.date.to-primitive');\n\nmodule.exports = require('../../internals/path').Date;\n","require('../../modules/es.math.acosh');\nrequire('../../modules/es.math.asinh');\nrequire('../../modules/es.math.atanh');\nrequire('../../modules/es.math.cbrt');\nrequire('../../modules/es.math.clz32');\nrequire('../../modules/es.math.cosh');\nrequire('../../modules/es.math.expm1');\nrequire('../../modules/es.math.fround');\nrequire('../../modules/es.math.hypot');\nrequire('../../modules/es.math.imul');\nrequire('../../modules/es.math.log10');\nrequire('../../modules/es.math.log1p');\nrequire('../../modules/es.math.log2');\nrequire('../../modules/es.math.sign');\nrequire('../../modules/es.math.sinh');\nrequire('../../modules/es.math.tanh');\nrequire('../../modules/es.math.to-string-tag');\nrequire('../../modules/es.math.trunc');\n\nmodule.exports = require('../../internals/path').Math;\n","require('../../modules/es.number.constructor');\nrequire('../../modules/es.number.epsilon');\nrequire('../../modules/es.number.is-finite');\nrequire('../../modules/es.number.is-integer');\nrequire('../../modules/es.number.is-nan');\nrequire('../../modules/es.number.is-safe-integer');\nrequire('../../modules/es.number.max-safe-integer');\nrequire('../../modules/es.number.min-safe-integer');\nrequire('../../modules/es.number.parse-float');\nrequire('../../modules/es.number.parse-int');\nrequire('../../modules/es.number.to-fixed');\nrequire('../../modules/es.number.to-precision');\n\nmodule.exports = require('../../internals/path').Number;\n","require('../../modules/es.regexp.constructor');\nrequire('../../modules/es.regexp.to-string');\nrequire('../../modules/es.regexp.exec');\nrequire('../../modules/es.regexp.flags');\nrequire('../../modules/es.string.match');\nrequire('../../modules/es.string.replace');\nrequire('../../modules/es.string.search');\nrequire('../../modules/es.string.split');\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","var UNSCOPABLES = require('../internals/well-known-symbol')('unscopables');\nvar create = require('../internals/object-create');\nvar hide = require('../internals/hide');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n hide(ArrayPrototype, UNSCOPABLES, create(null));\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar codePointAt = require('../internals/string-at');\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? codePointAt(S, index, true).length : 1);\n};\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.copyWithin` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.copywithin\nmodule.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var to = toAbsoluteIndex(target, len);\n var from = toAbsoluteIndex(start, len);\n var end = arguments.length > 2 ? arguments[2] : undefined;\n var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);\n var inc = 1;\n if (from < to && to < from + count) {\n inc = -1;\n from += count - 1;\n to += count - 1;\n }\n while (count-- > 0) {\n if (from in O) O[to] = O[from];\n else delete O[to];\n to += inc;\n from += inc;\n } return O;\n};\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = toLength(O.length);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","'use strict';\nvar nativeForEach = [].forEach;\nvar internalForEach = require('../internals/array-methods')(0);\n\nvar SLOPPY_METHOD = require('../internals/sloppy-array-method')('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\nmodule.exports = SLOPPY_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return internalForEach(this, callbackfn, arguments[1]);\n} : nativeForEach;\n","'use strict';\nvar bind = require('../internals/bind-context');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\n// `Array.from` method\n// https://tc39.github.io/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var index = 0;\n var iteratorMethod = getIteratorMethod(O);\n var length, result, step, iterator;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = iteratorMethod.call(O);\n result = new C();\n for (;!(step = iterator.next()).done; index++) {\n createProperty(result, index, mapping\n ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true)\n : step.value\n );\n }\n } else {\n length = toLength(O.length);\n result = new C(length);\n for (;length > index; index++) {\n createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);\n }\n }\n result.length = index;\n return result;\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\n// false -> Array#indexOf\n// https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n// true -> Array#includes\n// https://tc39.github.io/ecma262/#sec-array.prototype.includes\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toInteger = require('../internals/to-integer');\nvar toLength = require('../internals/to-length');\nvar nativeLastIndexOf = [].lastIndexOf;\n\nvar NEGATIVE_ZERO = !!nativeLastIndexOf && 1 / [1].lastIndexOf(1, -0) < 0;\nvar SLOPPY_METHOD = require('../internals/sloppy-array-method')('lastIndexOf');\n\n// `Array.prototype.lastIndexOf` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.lastindexof\nmodule.exports = (NEGATIVE_ZERO || SLOPPY_METHOD) ? function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) {\n // convert -0 to +0\n if (NEGATIVE_ZERO) return nativeLastIndexOf.apply(this, arguments) || 0;\n var O = toIndexedObject(this);\n var length = toLength(O.length);\n var index = length - 1;\n if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1]));\n if (index < 0) index = length + index;\n for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0;\n return -1;\n} : nativeLastIndexOf;\n","var fails = require('../internals/fails');\nvar SPECIES = require('../internals/well-known-symbol')('species');\n\nmodule.exports = function (METHOD_NAME) {\n return !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","var bind = require('../internals/bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation\n// 0 -> Array#forEach\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n// 1 -> Array#map\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// 2 -> Array#filter\n// https://tc39.github.io/ecma262/#sec-array.prototype.filter\n// 3 -> Array#some\n// https://tc39.github.io/ecma262/#sec-array.prototype.some\n// 4 -> Array#every\n// https://tc39.github.io/ecma262/#sec-array.prototype.every\n// 5 -> Array#find\n// https://tc39.github.io/ecma262/#sec-array.prototype.find\n// 6 -> Array#findIndex\n// https://tc39.github.io/ecma262/#sec-array.prototype.findIndex\nmodule.exports = function (TYPE, specificCreate) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n var create = specificCreate || arraySpeciesCreate;\n return function ($this, callbackfn, that) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: target.push(value); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n","var aFunction = require('../internals/a-function');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.{ reduce, reduceRight }` methods implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n// https://tc39.github.io/ecma262/#sec-array.prototype.reduceright\nmodule.exports = function (that, callbackfn, argumentsLength, memo, isRight) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IndexedObject(O);\n var length = toLength(O.length);\n var index = isRight ? length - 1 : 0;\n var i = isRight ? -1 : 1;\n if (argumentsLength < 2) while (true) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (isRight ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;isRight ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n};\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar SPECIES = require('../internals/well-known-symbol')('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.github.io/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var anObject = require('../internals/an-object');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (error) {\n var returnMethod = iterator['return'];\n if (returnMethod !== undefined) anObject(returnMethod.call(iterator));\n throw error;\n }\n};\n","var ITERATOR = require('../internals/well-known-symbol')('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line no-throw-literal\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var classofRaw = require('../internals/classof-raw');\nvar TO_STRING_TAG = require('../internals/well-known-symbol')('toStringTag');\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;\n};\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar create = require('../internals/object-create');\nvar redefineAll = require('../internals/redefine-all');\nvar bind = require('../internals/bind-context');\nvar anInstance = require('../internals/an-instance');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/define-iterator');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, CONSTRUCTOR_NAME);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP);\n });\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key == key) return entry;\n }\n };\n\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first == entry) state.first = next;\n if (state.last == entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n redefineAll(C.prototype, IS_MAP ? {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineProperty(C.prototype, 'size', {\n get: function () {\n return getInternalState(this).size;\n }\n });\n return C;\n },\n setStrong: function (C, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n defineIterator(C, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return { value: undefined, done: true };\n }\n // return step by kind\n if (kind == 'keys') return { value: entry.key, done: false };\n if (kind == 'values') return { value: entry.value, done: false };\n return { value: [entry.key, entry.value], done: false };\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","'use strict';\nvar redefineAll = require('../internals/redefine-all');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar iterate = require('../internals/iterate');\nvar createArrayMethod = require('../internals/array-methods');\nvar $has = require('../internals/has');\nvar InternalStateModule = require('../internals/internal-state');\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar arrayFind = createArrayMethod(5);\nvar arrayFindIndex = createArrayMethod(6);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (store) {\n return store.frozen || (store.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return arrayFind(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = arrayFindIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) this.entries.splice(index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, CONSTRUCTOR_NAME);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP);\n });\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n redefineAll(C.prototype, {\n // 23.3.3.2 WeakMap.prototype.delete(key)\n // 23.4.3.3 WeakSet.prototype.delete(value)\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && $has(data, state.id) && delete data[state.id];\n },\n // 23.3.3.4 WeakMap.prototype.has(key)\n // 23.4.3.4 WeakSet.prototype.has(value)\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && $has(data, state.id);\n }\n });\n\n redefineAll(C.prototype, IS_MAP ? {\n // 23.3.3.3 WeakMap.prototype.get(key)\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // 23.3.3.5 WeakMap.prototype.set(key, value)\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // 23.4.3.1 WeakSet.prototype.add(value)\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return C;\n }\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar $export = require('../internals/export');\nvar redefine = require('../internals/redefine');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common, IS_MAP, IS_WEAK) {\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var ADDER = IS_MAP ? 'set' : 'add';\n var exported = {};\n\n var fixMethod = function (KEY) {\n var nativeMethod = NativePrototype[KEY];\n redefine(NativePrototype, KEY,\n KEY == 'add' ? function add(a) {\n nativeMethod.call(this, a === 0 ? 0 : a);\n return this;\n } : KEY == 'delete' ? function (a) {\n return IS_WEAK && !isObject(a) ? false : nativeMethod.call(this, a === 0 ? 0 : a);\n } : KEY == 'get' ? function get(a) {\n return IS_WEAK && !isObject(a) ? undefined : nativeMethod.call(this, a === 0 ? 0 : a);\n } : KEY == 'has' ? function has(a) {\n return IS_WEAK && !isObject(a) ? false : nativeMethod.call(this, a === 0 ? 0 : a);\n } : function set(a, b) {\n nativeMethod.call(this, a === 0 ? 0 : a, b);\n return this;\n }\n );\n };\n\n // eslint-disable-next-line max-len\n if (isForced(CONSTRUCTOR_NAME, typeof NativeConstructor != 'function' || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n })))) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.REQUIRED = true;\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (target, iterable) {\n anInstance(target, Constructor, CONSTRUCTOR_NAME);\n var that = inheritIfRequired(new NativeConstructor(), target, Constructor);\n if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP);\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $export({ global: true, forced: Constructor != NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var MATCH = require('../internals/well-known-symbol')('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (e) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (f) { /* empty */ }\n } return false;\n};\n","module.exports = !require('../internals/fails')(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar quot = /\"/g;\n\n// B.2.3.2.1 CreateHTML(string, tag, attribute, value)\n// https://tc39.github.io/ecma262/#sec-createhtml\nmodule.exports = function (string, tag, attribute, value) {\n var S = String(requireObjectCoercible(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + String(value).replace(quot, '"') + '\"';\n return p1 + '>' + S + '';\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar prototype = Date.prototype;\nvar getTime = prototype.getTime;\nvar nativeDateToISOString = prototype.toISOString;\n\nvar leadingZero = function (number) {\n return number > 9 ? number : '0' + number;\n};\n\n// `Date.prototype.toISOString` method implementation\n// https://tc39.github.io/ecma262/#sec-date.prototype.toisostring\n// PhantomJS / old WebKit fails here:\nmodule.exports = (fails(function () {\n return nativeDateToISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z';\n}) || !fails(function () {\n nativeDateToISOString.call(new Date(NaN));\n})) ? function toISOString() {\n if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value');\n var date = this;\n var year = date.getUTCFullYear();\n var milliseconds = date.getUTCMilliseconds();\n var sign = year < 0 ? '-' : year > 9999 ? '+' : '';\n return sign + ('00000' + Math.abs(year)).slice(sign ? -6 : -4) +\n '-' + leadingZero(date.getUTCMonth() + 1) +\n '-' + leadingZero(date.getUTCDate()) +\n 'T' + leadingZero(date.getUTCHours()) +\n ':' + leadingZero(date.getUTCMinutes()) +\n ':' + leadingZero(date.getUTCSeconds()) +\n '.' + (milliseconds > 99 ? milliseconds : '0' + leadingZero(milliseconds)) +\n 'Z';\n} : nativeDateToISOString;\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nmodule.exports = function (hint) {\n if (hint !== 'string' && hint !== 'number' && hint !== 'default') {\n throw TypeError('Incorrect hint');\n } return toPrimitive(anObject(this), hint !== 'number');\n};\n","'use strict';\nvar $export = require('../internals/export');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar hide = require('../internals/hide');\nvar redefine = require('../internals/redefine');\nvar IS_PURE = require('../internals/is-pure');\nvar ITERATOR = require('../internals/well-known-symbol')('iterator');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n hide(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return nativeIterator.call(this); };\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n hide(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $export({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n return methods;\n};\n","var path = require('../internals/path');\nvar has = require('../internals/has');\nvar wrappedWellKnownSymbolModule = require('../internals/wrapped-well-known-symbol');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('../internals/fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n","var isObject = require('../internals/is-object');\nvar document = require('../internals/global').document;\n// typeof document.createElement is 'object' in old IE\nvar exist = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return exist ? document.createElement(it) : {};\n};\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\n\n// all enumerable object keys, includes symbols\nmodule.exports = function (it) {\n var result = objectKeys(it);\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n if (getOwnPropertySymbols) {\n var symbols = getOwnPropertySymbols(it);\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n var i = 0;\n var key;\n while (symbols.length > i) if (propertyIsEnumerable.call(it, key = symbols[i++])) result.push(key);\n } return result;\n};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar hide = require('../internals/hide');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n hide(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar hide = require('../internals/hide');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar SPECIES = wellKnownSymbol('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$') !== '7';\n});\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nmodule.exports = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n re.exec = function () { execCalled = true; return null; };\n\n if (KEY === 'split') {\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n }\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n if (sham) hide(RegExp.prototype[SYMBOL], 'sham', true);\n }\n};\n","var fails = require('../internals/fails');\n\n// check the existence of a method, lowercase\n// of a tag and escaping quotes in arguments\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n var test = ''[METHOD_NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n });\n};\n","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n","module.exports = !require('../internals/fails')(function () {\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar aFunction = require('../internals/a-function');\nvar isObject = require('../internals/is-object');\nvar arraySlice = [].slice;\nvar factories = {};\n\nvar construct = function (C, argsLength, args) {\n if (!(argsLength in factories)) {\n for (var list = [], i = 0; i < argsLength; i++) list[i] = 'a[' + i + ']';\n // eslint-disable-next-line no-new-func\n factories[argsLength] = Function('C,a', 'return new C(' + list.join(',') + ')');\n } return factories[argsLength](C, args);\n};\n\n// `Function.prototype.bind` method implementation\n// https://tc39.github.io/ecma262/#sec-function.prototype.bind\nmodule.exports = Function.bind || function bind(that /* , ...args */) {\n var fn = aFunction(this);\n var partArgs = arraySlice.call(arguments, 1);\n var boundFunction = function bound(/* args... */) {\n var args = partArgs.concat(arraySlice.call(arguments));\n return this instanceof boundFunction ? construct(fn, args.length, args) : fn.apply(that, args);\n };\n if (isObject(fn.prototype)) boundFunction.prototype = fn.prototype;\n return boundFunction;\n};\n","module.exports = require('../internals/shared')('native-function-to-string', Function.toString);\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","var classof = require('../internals/classof');\nvar ITERATOR = require('../internals/well-known-symbol')('iterator');\nvar Iterators = require('../internals/iterators');\n\nmodule.exports = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports = typeof window == 'object' && window && window.Math == Math ? window\n : typeof self == 'object' && self && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","module.exports = {};\n","var definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = require('../internals/descriptors') ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n","var document = require('../internals/global').document;\n\nmodule.exports = document && document.documentElement;\n","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('../internals/descriptors') && !require('../internals/fails')(function () {\n return Object.defineProperty(require('../internals/document-create-element')('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\nvar split = ''.split;\n\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\nmodule.exports = function (that, target, C) {\n var S = target.constructor;\n var P;\n if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {\n setPrototypeOf(that, P);\n } return that;\n};\n","var METADATA = require('../internals/uid')('meta');\nvar FREEZING = require('../internals/freezing');\nvar isObject = require('../internals/is-object');\nvar has = require('../internals/has');\nvar defineProperty = require('../internals/object-define-property').f;\nvar id = 0;\n\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + ++id, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!has(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && meta.REQUIRED && isExtensible(it) && !has(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar meta = module.exports = {\n REQUIRED: false,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nrequire('../internals/hidden-keys')[METADATA] = true;\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar isObject = require('../internals/is-object');\nvar hide = require('../internals/hide');\nvar objectHas = require('../internals/has');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar WeakMap = require('../internals/global').WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = new WeakMap();\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n hide(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","// check on default Array iterator\nvar Iterators = require('../internals/iterators');\nvar ITERATOR = require('../internals/well-known-symbol')('iterator');\nvar ArrayPrototype = Array.prototype;\n\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.github.io/ecma262/#sec-isarray\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","var fails = require('../internals/fails');\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var isObject = require('../internals/is-object');\nvar floor = Math.floor;\n\n// `Number.isInteger` method implementation\n// https://tc39.github.io/ecma262/#sec-number.isinteger\nmodule.exports = function isInteger(it) {\n return !isObject(it) && isFinite(it) && floor(it) === it;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = false;\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar MATCH = require('../internals/well-known-symbol')('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","var anObject = require('../internals/an-object');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/bind-context');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar BREAK = {};\n\nvar exports = module.exports = function (iterable, fn, that, ENTRIES, ITERATOR) {\n var boundFunction = bind(fn, that, ENTRIES ? 2 : 1);\n var iterator, iterFn, index, length, result, step;\n\n if (ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (typeof iterFn != 'function') throw TypeError('Target is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = toLength(iterable.length); length > index; index++) {\n result = ENTRIES ? boundFunction(anObject(step = iterable[index])[0], step[1]) : boundFunction(iterable[index]);\n if (result === BREAK) return BREAK;\n } return;\n }\n iterator = iterFn.call(iterable);\n }\n\n while (!(step = iterator.next()).done) {\n if (callWithSafeIterationClosing(iterator, boundFunction, step.value, ENTRIES) === BREAK) return BREAK;\n }\n};\n\nexports.BREAK = BREAK;\n","'use strict';\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar hide = require('../internals/hide');\nvar has = require('../internals/has');\nvar IS_PURE = require('../internals/is-pure');\nvar ITERATOR = require('../internals/well-known-symbol')('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\nvar returnThis = function () { return this; };\n\n// `%IteratorPrototype%` object\n// https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nif (IteratorPrototype == undefined) IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nif (!IS_PURE && !has(IteratorPrototype, ITERATOR)) hide(IteratorPrototype, ITERATOR, returnThis);\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","module.exports = {};\n","var nativeExpm1 = Math.expm1;\n\n// `Math.expm1` method implementation\n// https://tc39.github.io/ecma262/#sec-math.expm1\nmodule.exports = (!nativeExpm1\n // Old FF bug\n || nativeExpm1(10) > 22025.465794806719 || nativeExpm1(10) < 22025.4657948067165168\n // Tor Browser bug\n || nativeExpm1(-2e-17) != -2e-17\n) ? function expm1(x) {\n return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;\n} : nativeExpm1;\n","var sign = require('../internals/math-sign');\nvar pow = Math.pow;\nvar EPSILON = pow(2, -52);\nvar EPSILON32 = pow(2, -23);\nvar MAX32 = pow(2, 127) * (2 - EPSILON32);\nvar MIN32 = pow(2, -126);\n\nvar roundTiesToEven = function (n) {\n return n + 1 / EPSILON - 1 / EPSILON;\n};\n\n// `Math.fround` method implementation\n// https://tc39.github.io/ecma262/#sec-math.fround\nmodule.exports = Math.fround || function fround(x) {\n var $abs = Math.abs(x);\n var $sign = sign(x);\n var a, result;\n if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;\n a = (1 + EPSILON32 / EPSILON) * $abs;\n result = a - (a - $abs);\n // eslint-disable-next-line no-self-compare\n if (result > MAX32 || result != result) return $sign * Infinity;\n return $sign * result;\n};\n","// `Math.log1p` method implementation\n// https://tc39.github.io/ecma262/#sec-math.log1p\nmodule.exports = Math.log1p || function log1p(x) {\n return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);\n};\n","// `Math.sign` method implementation\n// https://tc39.github.io/ecma262/#sec-math.sign\nmodule.exports = Math.sign || function sign(x) {\n // eslint-disable-next-line no-self-compare\n return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;\n};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar classof = require('../internals/classof-raw');\nvar macrotask = require('../internals/task').set;\nvar userAgent = require('../internals/user-agent');\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar process = global.process;\nvar Promise = global.Promise;\nvar IS_NODE = classof(process) == 'process';\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n } else if (MutationObserver && !/(iPhone|iPod|iPad).*AppleWebKit/i.test(userAgent)) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true }); // eslint-disable-line no-new\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n notify = function () {\n promise.then(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n}\n\nmodule.exports = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n","// Chrome 38 Symbol has incorrect toString conversion\nmodule.exports = !require('../internals/fails')(function () {\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n});\n","var nativeFunctionToString = require('../internals/function-to-string');\nvar WeakMap = require('../internals/global').WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(nativeFunctionToString.call(WeakMap));\n","'use strict';\n// 25.4.1.5 NewPromiseCapability(C)\nvar aFunction = require('../internals/a-function');\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\n\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var globalIsFinite = require('../internals/global').isFinite;\n\n// `Number.isFinite` method\n// https://tc39.github.io/ecma262/#sec-number.isfinite\nmodule.exports = Number.isFinite || function isFinite(it) {\n return typeof it == 'number' && globalIsFinite(it);\n};\n","'use strict';\n// 19.1.2.1 Object.assign(target, source, ...)\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar nativeAssign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !nativeAssign || require('../internals/fails')(function () {\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) if (propertyIsEnumerable.call(S, key = keys[j++])) T[key] = S[key];\n } return T;\n} : nativeAssign;\n","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar IE_PROTO = require('../internals/shared-key')('IE_PROTO');\nvar PROTOTYPE = 'prototype';\nvar Empty = function () { /* empty */ };\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var length = enumBugKeys.length;\n var lt = '<';\n var script = 'script';\n var gt = '>';\n var js = 'java' + script + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n iframe.src = String(js);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + script + gt + 'document.F=Object' + lt + '/' + script + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (length--) delete createDict[PROTOTYPE][enumBugKeys[length]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n\nrequire('../internals/hidden-keys')[IE_PROTO] = true;\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var i = 0;\n var key;\n while (length > i) definePropertyModule.f(O, key = keys[i++], Properties[key]);\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar nativeDefineProperty = Object.defineProperty;\n\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return nativeGetOwnPropertyNames(it);\n } catch (error) {\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]'\n ? getWindowNames(it)\n : nativeGetOwnPropertyNames(toIndexedObject(it));\n};\n","// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar hiddenKeys = require('../internals/enum-bug-keys').concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","exports.f = Object.getOwnPropertySymbols;\n","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('../internals/has');\nvar toObject = require('../internals/to-object');\nvar IE_PROTO = require('../internals/shared-key')('IE_PROTO');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\nvar ObjectPrototype = Object.prototype;\n\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectPrototype : null;\n};\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayIndexOf = require('../internals/array-includes')(false);\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = nativeGetOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = nativeGetOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar validateSetPrototypeOfArguments = require('../internals/validate-set-prototype-of-arguments');\n\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var correctSetter = false;\n var test = {};\n var setter;\n try {\n setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;\n setter.call(test, []);\n correctSetter = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n validateSetPrototypeOfArguments(O, proto);\n if (correctSetter) setter.call(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar classof = require('../internals/classof');\nvar TO_STRING_TAG = require('../internals/well-known-symbol')('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\n// `Object.prototype.toString` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nmodule.exports = String(test) !== '[object z]' ? function toString() {\n return '[object ' + classof(this) + ']';\n} : test.toString;\n","var getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\nvar Reflect = require('../internals/global').Reflect;\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","var nativeParseFloat = require('../internals/global').parseFloat;\nvar internalStringTrim = require('../internals/string-trim');\nvar whitespaces = require('../internals/whitespaces');\nvar FORCED = 1 / nativeParseFloat(whitespaces + '-0') !== -Infinity;\n\nmodule.exports = FORCED ? function parseFloat(str) {\n var string = internalStringTrim(String(str), 3);\n var result = nativeParseFloat(string);\n return result === 0 && string.charAt(0) == '-' ? -0 : result;\n} : nativeParseFloat;\n","var nativeParseInt = require('../internals/global').parseInt;\nvar internalStringTrim = require('../internals/string-trim');\nvar whitespaces = require('../internals/whitespaces');\nvar hex = /^[-+]?0[xX]/;\nvar FORCED = nativeParseInt(whitespaces + '08') !== 8 || nativeParseInt(whitespaces + '0x16') !== 22;\n\nmodule.exports = FORCED ? function parseInt(str, radix) {\n var string = internalStringTrim(String(str), 3);\n return nativeParseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));\n} : nativeParseInt;\n","module.exports = require('../internals/global');\n","module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","var anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","var redefine = require('../internals/redefine');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n};\n","var global = require('../internals/global');\nvar hide = require('../internals/hide');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar nativeFunctionToString = require('../internals/function-to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(nativeFunctionToString).split('toString');\n\nrequire('../internals/shared')('inspectSource', function (it) {\n return nativeFunctionToString.call(it);\n});\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) hide(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else hide(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || nativeFunctionToString.call(this);\n});\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\n","'use strict';\n\nvar regexpFlags = require('./regexp-flags');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + re.source + '$(?!\\\\s)', regexpFlags.call(re));\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(re, str);\n\n if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// `SameValue` abstract operation\n// https://tc39.github.io/ecma262/#sec-samevalue\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","var global = require('../internals/global');\nvar hide = require('../internals/hide');\n\nmodule.exports = function (key, value) {\n try {\n hide(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar SPECIES = require('../internals/well-known-symbol')('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var C = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n if (DESCRIPTORS && C && !C[SPECIES]) defineProperty(C, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar TO_STRING_TAG = require('../internals/well-known-symbol')('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","var shared = require('../internals/shared')('keys');\nvar uid = require('../internals/uid');\n\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.0.1',\n mode: require('../internals/is-pure') ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !method || !fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar SPECIES = require('../internals/well-known-symbol')('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.github.io/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n// CONVERT_TO_STRING: true -> String#at\n// CONVERT_TO_STRING: false -> String#codePointAt\nmodule.exports = function (that, pos, CONVERT_TO_STRING) {\n var S = String(requireObjectCoercible(that));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n};\n","'use strict';\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.repeat` method implementation\n// https://tc39.github.io/ecma262/#sec-string.prototype.repeat\nmodule.exports = ''.repeat || function repeat(count) {\n var str = String(requireObjectCoercible(this));\n var result = '';\n var n = toInteger(count);\n if (n < 0 || n == Infinity) throw RangeError('Wrong number of repetitions');\n for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) result += str;\n return result;\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespace = '[' + require('../internals/whitespaces') + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// 1 -> String#trimStart\n// 2 -> String#trimEnd\n// 3 -> String#trim\nmodule.exports = function (string, TYPE) {\n string = String(requireObjectCoercible(string));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n};\n","var global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\nvar bind = require('../internals/bind-context');\nvar html = require('../internals/html');\nvar createElement = require('../internals/document-create-element');\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\n\nvar run = function () {\n var id = +this;\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar listener = function (event) {\n run.call(event.data);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (classof(process) == 'process') {\n defer = function (id) {\n process.nextTick(bind(run, id, 1));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(bind(run, id, 1));\n };\n // Browsers with MessageChannel, includes WebWorkers\n } else if (MessageChannel) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {\n defer = function (id) {\n global.postMessage(id + '', '*');\n };\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run.call(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(bind(run, id, 1), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var classof = require('../internals/classof-raw');\n\n// `thisNumberValue` abstract operation\n// https://tc39.github.io/ecma262/#sec-thisnumbervalue\nmodule.exports = function (value) {\n if (typeof value != 'number' && classof(value) != 'Number') {\n throw TypeError('Incorrect invocation');\n }\n return +value;\n};\n","var toInteger = require('../internals/to-integer');\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(length, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","var toInteger = require('../internals/to-integer');\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('../internals/is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + postfix).toString(36));\n};\n","var global = require('../internals/global');\nvar navigator = global.navigator;\n\nmodule.exports = navigator && navigator.userAgent || '';\n","var isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\n\nmodule.exports = function (O, proto) {\n anObject(O);\n if (!isObject(proto) && proto !== null) {\n throw TypeError(\"Can't set \" + String(proto) + ' as a prototype');\n }\n};\n","// helper for String#{startsWith, endsWith, includes}\nvar isRegExp = require('../internals/is-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (that, searchString, NAME) {\n if (isRegExp(searchString)) {\n throw TypeError('String.prototype.' + NAME + \" doesn't accept regex\");\n } return String(requireObjectCoercible(that));\n};\n","var store = require('../internals/shared')('wks');\nvar uid = require('../internals/uid');\nvar Symbol = require('../internals/global').Symbol;\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = function (name) {\n return store[name] || (store[name] = NATIVE_SYMBOL && Symbol[name]\n || (NATIVE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n","// a string of all valid unicode whitespaces\n// eslint-disable-next-line max-len\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","exports.f = require('../internals/well-known-symbol');\n","// `Array.prototype.copyWithin` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.copywithin\nrequire('../internals/export')({ target: 'Array', proto: true }, {\n copyWithin: require('../internals/array-copy-within')\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nrequire('../internals/add-to-unscopables')('copyWithin');\n","'use strict';\nvar internalEvery = require('../internals/array-methods')(4);\n\nvar SLOPPY_METHOD = require('../internals/sloppy-array-method')('every');\n\n// `Array.prototype.every` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.every\nrequire('../internals/export')({ target: 'Array', proto: true, forced: SLOPPY_METHOD }, {\n every: function every(callbackfn /* , thisArg */) {\n return internalEvery(this, callbackfn, arguments[1]);\n }\n});\n","// `Array.prototype.fill` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.fill\nrequire('../internals/export')({ target: 'Array', proto: true }, { fill: require('../internals/array-fill') });\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nrequire('../internals/add-to-unscopables')('fill');\n","'use strict';\nvar internalFilter = require('../internals/array-methods')(2);\n\nvar SPECIES_SUPPORT = require('../internals/array-method-has-species-support')('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\nrequire('../internals/export')({ target: 'Array', proto: true, forced: !SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return internalFilter(this, callbackfn, arguments[1]);\n }\n});\n","'use strict';\nvar internalFindIndex = require('../internals/array-methods')(6);\nvar FIND_INDEX = 'findIndex';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND_INDEX in []) Array(1)[FIND_INDEX](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.findIndex` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.findindex\nrequire('../internals/export')({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n findIndex: function findIndex(callbackfn /* , that = undefined */) {\n return internalFindIndex(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nrequire('../internals/add-to-unscopables')(FIND_INDEX);\n","'use strict';\nvar internalFind = require('../internals/array-methods')(5);\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.find\nrequire('../internals/export')({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n find: function find(callbackfn /* , that = undefined */) {\n return internalFind(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nrequire('../internals/add-to-unscopables')(FIND);\n","'use strict';\nvar forEach = require('../internals/array-for-each');\n\n// `Array.prototype.forEach` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\nrequire('../internals/export')({ target: 'Array', proto: true, forced: [].forEach != forEach }, { forEach: forEach });\n","var INCORRECT_ITERATION = !require('../internals/check-correctness-of-iteration')(function (iterable) {\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.github.io/ecma262/#sec-array.from\nrequire('../internals/export')({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: require('../internals/array-from')\n});\n","'use strict';\nvar internalIndexOf = require('../internals/array-includes')(false);\nvar nativeIndexOf = [].indexOf;\n\nvar NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;\nvar SLOPPY_METHOD = require('../internals/sloppy-array-method')('indexOf');\n\n// `Array.prototype.indexOf` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.indexof\nrequire('../internals/export')({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || SLOPPY_METHOD }, {\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? nativeIndexOf.apply(this, arguments) || 0\n : internalIndexOf(this, searchElement, arguments[1]);\n }\n});\n","// `Array.isArray` method\n// https://tc39.github.io/ecma262/#sec-array.isarray\nrequire('../internals/export')({ target: 'Array', stat: true }, { isArray: require('../internals/is-array') });\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.github.io/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = require('../internals/indexed-object') != Object;\nvar SLOPPY_METHOD = require('../internals/sloppy-array-method')('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.join\nrequire('../internals/export')({ target: 'Array', proto: true, forced: ES3_STRINGS || SLOPPY_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","var arrayLastIndexOf = require('../internals/array-last-index-of');\n\n// `Array.prototype.lastIndexOf` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.lastindexof\nrequire('../internals/export')({ target: 'Array', proto: true, forced: arrayLastIndexOf !== [].lastIndexOf }, {\n lastIndexOf: arrayLastIndexOf\n});\n","'use strict';\nvar internalMap = require('../internals/array-methods')(1);\n\nvar SPECIES_SUPPORT = require('../internals/array-method-has-species-support')('map');\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\nrequire('../internals/export')({ target: 'Array', proto: true, forced: !SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return internalMap(this, callbackfn, arguments[1]);\n }\n});\n","'use strict';\nvar createProperty = require('../internals/create-property');\n\nvar ISNT_GENERIC = require('../internals/fails')(function () {\n function F() { /* empty */ }\n return !(Array.of.call(F) instanceof F);\n});\n\n// `Array.of` method\n// https://tc39.github.io/ecma262/#sec-array.of\n// WebKit Array.of isn't generic\nrequire('../internals/export')({ target: 'Array', stat: true, forced: ISNT_GENERIC }, {\n of: function of(/* ...args */) {\n var index = 0;\n var argumentsLength = arguments.length;\n var result = new (typeof this == 'function' ? this : Array)(argumentsLength);\n while (argumentsLength > index) createProperty(result, index, arguments[index++]);\n result.length = argumentsLength;\n return result;\n }\n});\n","'use strict';\nvar internalReduceRight = require('../internals/array-reduce');\n\nvar SLOPPY_METHOD = require('../internals/sloppy-array-method')('reduceRight');\n\n// `Array.prototype.reduceRight` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.reduceright\nrequire('../internals/export')({ target: 'Array', proto: true, forced: SLOPPY_METHOD }, {\n reduceRight: function reduceRight(callbackfn /* , initialValue */) {\n return internalReduceRight(this, callbackfn, arguments.length, arguments[1], true);\n }\n});\n","'use strict';\nvar internalReduce = require('../internals/array-reduce');\n\nvar SLOPPY_METHOD = require('../internals/sloppy-array-method')('reduce');\n\n// `Array.prototype.reduce` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.reduce\nrequire('../internals/export')({ target: 'Array', proto: true, forced: SLOPPY_METHOD }, {\n reduce: function reduce(callbackfn /* , initialValue */) {\n return internalReduce(this, callbackfn, arguments.length, arguments[1], false);\n }\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar SPECIES = require('../internals/well-known-symbol')('species');\nvar nativeSlice = [].slice;\nvar max = Math.max;\n\nvar SPECIES_SUPPORT = require('../internals/array-method-has-species-support')('slice');\n\n// `Array.prototype.slice` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\nrequire('../internals/export')({ target: 'Array', proto: true, forced: !SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = toLength(O.length);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === Array || Constructor === undefined) {\n return nativeSlice.call(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","'use strict';\nvar internalSome = require('../internals/array-methods')(3);\n\nvar SLOPPY_METHOD = require('../internals/sloppy-array-method')('some');\n\n// `Array.prototype.some` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.some\nrequire('../internals/export')({ target: 'Array', proto: true, forced: SLOPPY_METHOD }, {\n some: function some(callbackfn /* , thisArg */) {\n return internalSome(this, callbackfn, arguments[1]);\n }\n});\n","'use strict';\nvar aFunction = require('../internals/a-function');\nvar toObject = require('../internals/to-object');\nvar fails = require('../internals/fails');\nvar nativeSort = [].sort;\nvar test = [1, 2, 3];\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar SLOPPY_METHOD = require('../internals/sloppy-array-method')('sort');\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || SLOPPY_METHOD;\n\n// `Array.prototype.sort` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.sort\nrequire('../internals/export')({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n return comparefn === undefined\n ? nativeSort.call(toObject(this))\n : nativeSort.call(toObject(this), aFunction(comparefn));\n }\n});\n","// `Date.now` method\n// https://tc39.github.io/ecma262/#sec-date.now\nrequire('../internals/export')({ target: 'Date', stat: true }, {\n now: function now() {\n return new Date().getTime();\n }\n});\n","var toISOString = require('../internals/date-to-iso-string');\n\n// `Date.prototype.toISOString` method\n// https://tc39.github.io/ecma262/#sec-date.prototype.toisostring\n// PhantomJS / old WebKit has a broken implementations\nrequire('../internals/export')({ target: 'Date', proto: true, forced: Date.prototype.toISOString !== toISOString }, {\n toISOString: toISOString\n});\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar FORCED = require('../internals/fails')(function () {\n return new Date(NaN).toJSON() !== null\n || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1;\n});\n\n// `Date.prototype.toJSON` method\n// https://tc39.github.io/ecma262/#sec-date.prototype.tojson\nrequire('../internals/export')({ target: 'Date', proto: true, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars\n toJSON: function toJSON(key) {\n var O = toObject(this);\n var pv = toPrimitive(O);\n return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString();\n }\n});\n","var hide = require('../internals/hide');\nvar TO_PRIMITIVE = require('../internals/well-known-symbol')('toPrimitive');\nvar dateToPrimitive = require('../internals/date-to-primitive');\nvar DatePrototype = Date.prototype;\n\n// `Date.prototype[@@toPrimitive]` method\n// https://tc39.github.io/ecma262/#sec-date.prototype-@@toprimitive\nif (!(TO_PRIMITIVE in DatePrototype)) hide(DatePrototype, TO_PRIMITIVE, dateToPrimitive);\n","var DatePrototype = Date.prototype;\nvar INVALID_DATE = 'Invalid Date';\nvar TO_STRING = 'toString';\nvar nativeDateToString = DatePrototype[TO_STRING];\nvar getTime = DatePrototype.getTime;\n\n// `Date.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-date.prototype.tostring\nif (new Date(NaN) + '' != INVALID_DATE) {\n require('../internals/redefine')(DatePrototype, TO_STRING, function toString() {\n var value = getTime.call(this);\n // eslint-disable-next-line no-self-compare\n return value === value ? nativeDateToString.call(this) : INVALID_DATE;\n });\n}\n","// `Function.prototype.bind` method\n// https://tc39.github.io/ecma262/#sec-function.prototype.bind\nrequire('../internals/export')({ target: 'Function', proto: true }, {\n bind: require('../internals/function-bind')\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\nvar definePropertyModule = require('../internals/object-define-property');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar HAS_INSTANCE = require('../internals/well-known-symbol')('hasInstance');\nvar FunctionPrototype = Function.prototype;\n\n// `Function.prototype[@@hasInstance]` method\n// https://tc39.github.io/ecma262/#sec-function.prototype-@@hasinstance\nif (!(HAS_INSTANCE in FunctionPrototype)) {\n definePropertyModule.f(FunctionPrototype, HAS_INSTANCE, { value: function (O) {\n if (typeof this != 'function' || !isObject(O)) return false;\n if (!isObject(this.prototype)) return O instanceof this;\n // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:\n while (O = getPrototypeOf(O)) if (this.prototype === O) return true;\n return false;\n } });\n}\n","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.github.io/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\n// `Map` constructor\n// https://tc39.github.io/ecma262/#sec-map-objects\nmodule.exports = require('../internals/collection')('Map', function (get) {\n return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, require('../internals/collection-strong'), true);\n","var log1p = require('../internals/math-log1p');\nvar nativeAcosh = Math.acosh;\nvar log = Math.log;\nvar sqrt = Math.sqrt;\nvar LN2 = Math.LN2;\n\nvar FORCED = !nativeAcosh\n // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509\n || Math.floor(nativeAcosh(Number.MAX_VALUE)) != 710\n // Tor Browser bug: Math.acosh(Infinity) -> NaN\n || nativeAcosh(Infinity) != Infinity;\n\n// `Math.acosh` method\n// https://tc39.github.io/ecma262/#sec-math.acosh\nrequire('../internals/export')({ target: 'Math', stat: true, forced: FORCED }, {\n acosh: function acosh(x) {\n return (x = +x) < 1 ? NaN : x > 94906265.62425156\n ? log(x) + LN2\n : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));\n }\n});\n","var nativeAsinh = Math.asinh;\nvar log = Math.log;\nvar sqrt = Math.sqrt;\n\nfunction asinh(x) {\n return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : log(x + sqrt(x * x + 1));\n}\n\n// `Math.asinh` method\n// https://tc39.github.io/ecma262/#sec-math.asinh\n// Tor Browser bug: Math.asinh(0) -> -0\nrequire('../internals/export')({ target: 'Math', stat: true, forced: !(nativeAsinh && 1 / nativeAsinh(0) > 0) }, {\n asinh: asinh\n});\n","var nativeAtanh = Math.atanh;\nvar log = Math.log;\n\n// `Math.atanh` method\n// https://tc39.github.io/ecma262/#sec-math.atanh\n// Tor Browser bug: Math.atanh(-0) -> 0\nrequire('../internals/export')({ target: 'Math', stat: true, forced: !(nativeAtanh && 1 / nativeAtanh(-0) < 0) }, {\n atanh: function atanh(x) {\n return (x = +x) == 0 ? x : log((1 + x) / (1 - x)) / 2;\n }\n});\n","var sign = require('../internals/math-sign');\nvar abs = Math.abs;\nvar pow = Math.pow;\n\n// `Math.cbrt` method\n// https://tc39.github.io/ecma262/#sec-math.cbrt\nrequire('../internals/export')({ target: 'Math', stat: true }, {\n cbrt: function cbrt(x) {\n return sign(x = +x) * pow(abs(x), 1 / 3);\n }\n});\n","var floor = Math.floor;\nvar log = Math.log;\nvar LOG2E = Math.LOG2E;\n\n// `Math.clz32` method\n// https://tc39.github.io/ecma262/#sec-math.clz32\nrequire('../internals/export')({ target: 'Math', stat: true }, {\n clz32: function clz32(x) {\n return (x >>>= 0) ? 31 - floor(log(x + 0.5) * LOG2E) : 32;\n }\n});\n","var expm1 = require('../internals/math-expm1');\nvar nativeCosh = Math.cosh;\nvar abs = Math.abs;\nvar E = Math.E;\n\n// `Math.cosh` method\n// https://tc39.github.io/ecma262/#sec-math.cosh\nrequire('../internals/export')({ target: 'Math', stat: true, forced: !nativeCosh || nativeCosh(710) === Infinity }, {\n cosh: function cosh(x) {\n var t = expm1(abs(x) - 1) + 1;\n return (t + 1 / (t * E * E)) * (E / 2);\n }\n});\n","var expm1Implementation = require('../internals/math-expm1');\n\n// `Math.expm1` method\n// https://tc39.github.io/ecma262/#sec-math.expm1\nrequire('../internals/export')({ target: 'Math', stat: true, forced: expm1Implementation != Math.expm1 }, {\n expm1: expm1Implementation\n});\n","// `Math.fround` method\n// https://tc39.github.io/ecma262/#sec-math.fround\nrequire('../internals/export')({ target: 'Math', stat: true }, { fround: require('../internals/math-fround') });\n","var abs = Math.abs;\nvar sqrt = Math.sqrt;\n\n// `Math.hypot` method\n// https://tc39.github.io/ecma262/#sec-math.hypot\nrequire('../internals/export')({ target: 'Math', stat: true }, {\n hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars\n var sum = 0;\n var i = 0;\n var aLen = arguments.length;\n var larg = 0;\n var arg, div;\n while (i < aLen) {\n arg = abs(arguments[i++]);\n if (larg < arg) {\n div = larg / arg;\n sum = sum * div * div + 1;\n larg = arg;\n } else if (arg > 0) {\n div = arg / larg;\n sum += div * div;\n } else sum += arg;\n }\n return larg === Infinity ? Infinity : larg * sqrt(sum);\n }\n});\n","var nativeImul = Math.imul;\n\nvar FORCED = require('../internals/fails')(function () {\n return nativeImul(0xFFFFFFFF, 5) != -5 || nativeImul.length != 2;\n});\n\n// `Math.imul` method\n// https://tc39.github.io/ecma262/#sec-math.imul\n// some WebKit versions fails with big numbers, some has wrong arity\nrequire('../internals/export')({ target: 'Math', stat: true, forced: FORCED }, {\n imul: function imul(x, y) {\n var UINT16 = 0xFFFF;\n var xn = +x;\n var yn = +y;\n var xl = UINT16 & xn;\n var yl = UINT16 & yn;\n return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);\n }\n});\n","var log = Math.log;\nvar LOG10E = Math.LOG10E;\n\n// `Math.log10` method\n// https://tc39.github.io/ecma262/#sec-math.log10\nrequire('../internals/export')({ target: 'Math', stat: true }, {\n log10: function log10(x) {\n return log(x) * LOG10E;\n }\n});\n","// `Math.log1p` method\n// https://tc39.github.io/ecma262/#sec-math.log1p\nrequire('../internals/export')({ target: 'Math', stat: true }, { log1p: require('../internals/math-log1p') });\n","var log = Math.log;\nvar LN2 = Math.LN2;\n\n// `Math.log2` method\n// https://tc39.github.io/ecma262/#sec-math.log2\nrequire('../internals/export')({ target: 'Math', stat: true }, {\n log2: function log2(x) {\n return log(x) / LN2;\n }\n});\n","// `Math.sign` method\n// https://tc39.github.io/ecma262/#sec-math.sign\nrequire('../internals/export')({ target: 'Math', stat: true }, { sign: require('../internals/math-sign') });\n","var expm1 = require('../internals/math-expm1');\nvar abs = Math.abs;\nvar exp = Math.exp;\nvar E = Math.E;\n\nvar FORCED = require('../internals/fails')(function () {\n return Math.sinh(-2e-17) != -2e-17;\n});\n\n// `Math.sinh` method\n// https://tc39.github.io/ecma262/#sec-math.sinh\n// V8 near Chromium 38 has a problem with very small numbers\nrequire('../internals/export')({ target: 'Math', stat: true, forced: FORCED }, {\n sinh: function sinh(x) {\n return abs(x = +x) < 1 ? (expm1(x) - expm1(-x)) / 2 : (exp(x - 1) - exp(-x - 1)) * (E / 2);\n }\n});\n","var expm1 = require('../internals/math-expm1');\nvar exp = Math.exp;\n\n// `Math.tanh` method\n// https://tc39.github.io/ecma262/#sec-math.tanh\nrequire('../internals/export')({ target: 'Math', stat: true }, {\n tanh: function tanh(x) {\n var a = expm1(x = +x);\n var b = expm1(-x);\n return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));\n }\n});\n","// Math[@@toStringTag] property\n// https://tc39.github.io/ecma262/#sec-math-@@tostringtag\nrequire('../internals/set-to-string-tag')(Math, 'Math', true);\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.github.io/ecma262/#sec-math.trunc\nrequire('../internals/export')({ target: 'Math', stat: true }, {\n trunc: function trunc(it) {\n return (it > 0 ? floor : ceil)(it);\n }\n});\n","'use strict';\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar has = require('../internals/has');\nvar classof = require('../internals/classof-raw');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar internalStringTrim = require('../internals/string-trim');\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\n\n// Opera ~12 has broken Object#toString\nvar BROKEN_CLASSOF = classof(require('../internals/object-create')(NumberPrototype)) == NUMBER;\nvar NATIVE_TRIM = 'trim' in String.prototype;\n\n// `ToNumber` abstract operation\n// https://tc39.github.io/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n var first, third, radix, maxCode, digits, length, i, code;\n if (typeof it == 'string' && it.length > 2) {\n it = NATIVE_TRIM ? it.trim() : internalStringTrim(it, 3);\n first = it.charCodeAt(0);\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = it.slice(2);\n length = digits.length;\n for (i = 0; i < length; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.github.io/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof NumberWrapper\n // check on 1..constructor(foo) case\n && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(that); }) : classof(that) != NUMBER)\n ? inheritIfRequired(new NativeNumber(toNumber(it)), that, NumberWrapper) : toNumber(it);\n };\n for (var keys = require('../internals/descriptors') ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n require('../internals/redefine')(global, NUMBER, NumberWrapper);\n}\n","// `Number.EPSILON` constant\n// https://tc39.github.io/ecma262/#sec-number.epsilon\nrequire('../internals/export')({ target: 'Number', stat: true }, { EPSILON: Math.pow(2, -52) });\n","// `Number.isFinite` method\n// https://tc39.github.io/ecma262/#sec-number.isfinite\nrequire('../internals/export')({ target: 'Number', stat: true }, {\n isFinite: require('../internals/number-is-finite')\n});\n","// `Number.isInteger` method\n// https://tc39.github.io/ecma262/#sec-number.isinteger\nrequire('../internals/export')({ target: 'Number', stat: true }, {\n isInteger: require('../internals/is-integer')\n});\n","// `Number.isNaN` method\n// https://tc39.github.io/ecma262/#sec-number.isnan\nrequire('../internals/export')({ target: 'Number', stat: true }, {\n isNaN: function isNaN(number) {\n // eslint-disable-next-line no-self-compare\n return number != number;\n }\n});\n","var isInteger = require('../internals/is-integer');\nvar abs = Math.abs;\n\n// `Number.isSafeInteger` method\n// https://tc39.github.io/ecma262/#sec-number.issafeinteger\nrequire('../internals/export')({ target: 'Number', stat: true }, {\n isSafeInteger: function isSafeInteger(number) {\n return isInteger(number) && abs(number) <= 0x1FFFFFFFFFFFFF;\n }\n});\n","// `Number.MAX_SAFE_INTEGER` constant\n// https://tc39.github.io/ecma262/#sec-number.max_safe_integer\nrequire('../internals/export')({ target: 'Number', stat: true }, { MAX_SAFE_INTEGER: 0x1FFFFFFFFFFFFF });\n","// `Number.MIN_SAFE_INTEGER` constant\n// https://tc39.github.io/ecma262/#sec-number.min_safe_integer\nrequire('../internals/export')({ target: 'Number', stat: true }, { MIN_SAFE_INTEGER: -0x1FFFFFFFFFFFFF });\n","var parseFloat = require('../internals/parse-float');\n\n// `Number.parseFloat` method\n// https://tc39.github.io/ecma262/#sec-number.parseFloat\nrequire('../internals/export')({ target: 'Number', stat: true, forced: Number.parseFloat != parseFloat }, {\n parseFloat: parseFloat\n});\n","var parseInt = require('../internals/parse-int');\n\n// `Number.parseInt` method\n// https://tc39.github.io/ecma262/#sec-number.parseint\nrequire('../internals/export')({ target: 'Number', stat: true, forced: Number.parseInt != parseInt }, {\n parseInt: parseInt\n});\n","'use strict';\nvar toInteger = require('../internals/to-integer');\nvar thisNumberValue = require('../internals/this-number-value');\nvar repeat = require('../internals/string-repeat');\nvar nativeToFixed = 1.0.toFixed;\nvar floor = Math.floor;\nvar data = [0, 0, 0, 0, 0, 0];\n\nvar multiply = function (n, c) {\n var i = -1;\n var c2 = c;\n while (++i < 6) {\n c2 += n * data[i];\n data[i] = c2 % 1e7;\n c2 = floor(c2 / 1e7);\n }\n};\n\nvar divide = function (n) {\n var i = 6;\n var c = 0;\n while (--i >= 0) {\n c += data[i];\n data[i] = floor(c / n);\n c = (c % n) * 1e7;\n }\n};\n\nvar numToString = function () {\n var i = 6;\n var s = '';\n while (--i >= 0) {\n if (s !== '' || i === 0 || data[i] !== 0) {\n var t = String(data[i]);\n s = s === '' ? t : s + repeat.call('0', 7 - t.length) + t;\n }\n } return s;\n};\n\nvar pow = function (x, n, acc) {\n return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);\n};\n\nvar log = function (x) {\n var n = 0;\n var x2 = x;\n while (x2 >= 4096) {\n n += 12;\n x2 /= 4096;\n }\n while (x2 >= 2) {\n n += 1;\n x2 /= 2;\n } return n;\n};\n\n// `Number.prototype.toFixed` method\n// https://tc39.github.io/ecma262/#sec-number.prototype.tofixed\nrequire('../internals/export')({ target: 'Number', proto: true, forced: nativeToFixed && (\n 0.00008.toFixed(3) !== '0.000' ||\n 0.9.toFixed(0) !== '1' ||\n 1.255.toFixed(2) !== '1.25' ||\n 1000000000000000128.0.toFixed(0) !== '1000000000000000128'\n) || !require('../internals/fails')(function () {\n // V8 ~ Android 4.3-\n nativeToFixed.call({});\n}) }, {\n toFixed: function toFixed(fractionDigits) {\n var x = thisNumberValue(this);\n var f = toInteger(fractionDigits);\n var s = '';\n var m = '0';\n var e, z, j, k;\n if (f < 0 || f > 20) throw RangeError('Incorrect fraction digits');\n // eslint-disable-next-line no-self-compare\n if (x != x) return 'NaN';\n if (x <= -1e21 || x >= 1e21) return String(x);\n if (x < 0) {\n s = '-';\n x = -x;\n }\n if (x > 1e-21) {\n e = log(x * pow(2, 69, 1)) - 69;\n z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1);\n z *= 0x10000000000000;\n e = 52 - e;\n if (e > 0) {\n multiply(0, z);\n j = f;\n while (j >= 7) {\n multiply(1e7, 0);\n j -= 7;\n }\n multiply(pow(10, j, 1), 0);\n j = e - 1;\n while (j >= 23) {\n divide(1 << 23);\n j -= 23;\n }\n divide(1 << j);\n multiply(1, 1);\n divide(2);\n m = numToString();\n } else {\n multiply(0, z);\n multiply(1 << -e, 0);\n m = numToString() + repeat.call('0', f);\n }\n }\n if (f > 0) {\n k = m.length;\n m = s + (k <= f ? '0.' + repeat.call('0', f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f));\n } else {\n m = s + m;\n } return m;\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar thisNumberValue = require('../internals/this-number-value');\nvar nativeToPrecision = 1.0.toPrecision;\n\n// `Number.prototype.toPrecision` method\n// https://tc39.github.io/ecma262/#sec-number.prototype.toprecision\nrequire('../internals/export')({ target: 'Number', proto: true, forced: fails(function () {\n // IE7-\n return nativeToPrecision.call(1, undefined) !== '1';\n}) || !fails(function () {\n // V8 ~ Android 4.3-\n nativeToPrecision.call({});\n}) }, {\n toPrecision: function toPrecision(precision) {\n return precision === undefined\n ? nativeToPrecision.call(thisNumberValue(this))\n : nativeToPrecision.call(thisNumberValue(this), precision);\n }\n});\n","var assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\nrequire('../internals/export')({ target: 'Object', stat: true, forced: Object.assign !== assign }, { assign: assign });\n","// `Object.create` method\n// https://tc39.github.io/ecma262/#sec-object.create\nrequire('../internals/export')({\n target: 'Object', stat: true, sham: !require('../internals/descriptors')\n}, { create: require('../internals/object-create') });\n","var DESCRIPTORS = require('../internals/descriptors');\n\n// `Object.defineProperties` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperties\nrequire('../internals/export')({ target: 'Object', stat: true, forced: !DESCRIPTORS, sham: !DESCRIPTORS }, {\n defineProperties: require('../internals/object-define-properties')\n});\n","var DESCRIPTORS = require('../internals/descriptors');\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nrequire('../internals/export')({ target: 'Object', stat: true, forced: !DESCRIPTORS, sham: !DESCRIPTORS }, {\n defineProperty: require('../internals/object-define-property').f\n});\n","var isObject = require('../internals/is-object');\nvar onFreeze = require('../internals/internal-metadata').onFreeze;\nvar nativeFreeze = Object.freeze;\nvar FREEZING = require('../internals/freezing');\nvar FAILS_ON_PRIMITIVES = require('../internals/fails')(function () { nativeFreeze(1); });\n\n// `Object.freeze` method\n// https://tc39.github.io/ecma262/#sec-object.freeze\nrequire('../internals/export')({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !FREEZING }, {\n freeze: function freeze(it) {\n return nativeFreeze && isObject(it) ? nativeFreeze(onFreeze(it)) : it;\n }\n});\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FAILS_ON_PRIMITIVES = require('../internals/fails')(function () { nativeGetOwnPropertyDescriptor(1); });\nvar FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nrequire('../internals/export')({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {\n return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);\n }\n});\n","var nativeGetOwnPropertyNames = require('../internals/object-get-own-property-names-external').f;\nvar FAILS_ON_PRIMITIVES = require('../internals/fails')(function () { Object.getOwnPropertyNames(1); });\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nrequire('../internals/export')({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n getOwnPropertyNames: nativeGetOwnPropertyNames\n});\n","var toObject = require('../internals/to-object');\nvar nativeGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\nvar FAILS_ON_PRIMITIVES = require('../internals/fails')(function () { nativeGetPrototypeOf(1); });\n\n// `Object.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.getprototypeof\nrequire('../internals/export')({\n target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER\n}, {\n getPrototypeOf: function getPrototypeOf(it) {\n return nativeGetPrototypeOf(toObject(it));\n }\n});\n\n","var isObject = require('../internals/is-object');\nvar nativeIsExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = require('../internals/fails')(function () { nativeIsExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.github.io/ecma262/#sec-object.isextensible\nrequire('../internals/export')({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n isExtensible: function isExtensible(it) {\n return isObject(it) ? nativeIsExtensible ? nativeIsExtensible(it) : true : false;\n }\n});\n","var isObject = require('../internals/is-object');\nvar nativeIsFrozen = Object.isFrozen;\nvar FAILS_ON_PRIMITIVES = require('../internals/fails')(function () { nativeIsFrozen(1); });\n\n// `Object.isFrozen` method\n// https://tc39.github.io/ecma262/#sec-object.isfrozen\nrequire('../internals/export')({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n isFrozen: function isFrozen(it) {\n return isObject(it) ? nativeIsFrozen ? nativeIsFrozen(it) : false : true;\n }\n});\n","var isObject = require('../internals/is-object');\nvar nativeIsSealed = Object.isSealed;\nvar FAILS_ON_PRIMITIVES = require('../internals/fails')(function () { nativeIsSealed(1); });\n\n// `Object.isSealed` method\n// https://tc39.github.io/ecma262/#sec-object.issealed\nrequire('../internals/export')({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n isSealed: function isSealed(it) {\n return isObject(it) ? nativeIsSealed ? nativeIsSealed(it) : false : true;\n }\n});\n","// `Object.is` method\n// https://tc39.github.io/ecma262/#sec-object.is\nrequire('../internals/export')({ target: 'Object', stat: true }, { is: require('../internals/same-value') });\n","var toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar FAILS_ON_PRIMITIVES = require('../internals/fails')(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nrequire('../internals/export')({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","var isObject = require('../internals/is-object');\nvar onFreeze = require('../internals/internal-metadata').onFreeze;\nvar nativePreventExtensions = Object.preventExtensions;\nvar FREEZING = require('../internals/freezing');\nvar FAILS_ON_PRIMITIVES = require('../internals/fails')(function () { nativePreventExtensions(1); });\n\n// `Object.preventExtensions` method\n// https://tc39.github.io/ecma262/#sec-object.preventextensions\nrequire('../internals/export')({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !FREEZING }, {\n preventExtensions: function preventExtensions(it) {\n return nativePreventExtensions && isObject(it) ? nativePreventExtensions(onFreeze(it)) : it;\n }\n});\n","var isObject = require('../internals/is-object');\nvar onFreeze = require('../internals/internal-metadata').onFreeze;\nvar nativeSeal = Object.seal;\nvar FREEZING = require('../internals/freezing');\nvar FAILS_ON_PRIMITIVES = require('../internals/fails')(function () { nativeSeal(1); });\n\n// `Object.seal` method\n// https://tc39.github.io/ecma262/#sec-object.seal\nrequire('../internals/export')({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !FREEZING }, {\n seal: function seal(it) {\n return nativeSeal && isObject(it) ? nativeSeal(onFreeze(it)) : it;\n }\n});\n","// `Object.setPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.setprototypeof\nrequire('../internals/export')({ target: 'Object', stat: true }, {\n setPrototypeOf: require('../internals/object-set-prototype-of')\n});\n","var toString = require('../internals/object-to-string');\nvar ObjectPrototype = Object.prototype;\n\n// `Object.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nif (toString !== ObjectPrototype.toString) {\n require('../internals/redefine')(ObjectPrototype, 'toString', toString, { unsafe: true });\n}\n","var parseFloatImplementation = require('../internals/parse-float');\n\n// `parseFloat` method\n// https://tc39.github.io/ecma262/#sec-parsefloat-string\nrequire('../internals/export')({ global: true, forced: parseFloat != parseFloatImplementation }, {\n parseFloat: parseFloatImplementation\n});\n","var parseIntImplementation = require('../internals/parse-int');\n\n// `parseInt` method\n// https://tc39.github.io/ecma262/#sec-parseint-string-radix\nrequire('../internals/export')({ global: true, forced: parseInt != parseIntImplementation }, {\n parseInt: parseIntImplementation\n});\n","'use strict';\nvar PROMISE = 'Promise';\nvar IS_PURE = require('../internals/is-pure');\nvar global = require('../internals/global');\nvar $export = require('../internals/export');\nvar isObject = require('../internals/is-object');\nvar aFunction = require('../internals/a-function');\nvar anInstance = require('../internals/an-instance');\nvar classof = require('../internals/classof-raw');\nvar iterate = require('../internals/iterate');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar promiseResolve = require('../internals/promise-resolve');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar userAgent = require('../internals/user-agent');\nvar SPECIES = require('../internals/well-known-symbol')('species');\nvar InternalStateModule = require('../internals/internal-state');\nvar isForced = require('../internals/is-forced');\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar PromiseConstructor = global[PROMISE];\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar $fetch = global.fetch;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8 || '';\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\nvar IS_NODE = classof(process) == 'process';\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar Internal, OwnPromiseCapability, PromiseWrapper;\n\nvar FORCED = isForced(PROMISE, function () {\n // correct subclassing with @@species support\n var promise = PromiseConstructor.resolve(1);\n var empty = function () { /* empty */ };\n var FakePromise = (promise.constructor = {})[SPECIES] = function (exec) {\n exec(empty, empty);\n };\n // unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return !((IS_NODE || typeof PromiseRejectionEvent == 'function')\n && (!IS_PURE || promise['finally'])\n && promise.then(empty) instanceof FakePromise\n // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // we can't detect it synchronously, so just check versions\n && v8.indexOf('6.6') !== 0\n && userAgent.indexOf('Chrome/66') === -1);\n});\n\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });\n});\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\n\nvar notify = function (promise, state, isReject) {\n if (state.notified) return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var i = 0;\n var run = function (reaction) {\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(promise, state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // may throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n };\n while (chain.length > i) run(chain[i++]); // variable length - can't use forEach\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(promise, state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (handler = global['on' + name]) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (promise, state) {\n task.call(global, function () {\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (promise, state) {\n task.call(global, function () {\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, promise, state, unwrap) {\n return function (value) {\n fn(promise, state, value, unwrap);\n };\n};\n\nvar internalReject = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(promise, state, true);\n};\n\nvar internalResolve = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (promise === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value,\n bind(internalResolve, promise, wrapper, state),\n bind(internalReject, promise, wrapper, state)\n );\n } catch (error) {\n internalReject(promise, wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(promise, state, false);\n }\n } catch (error) {\n internalReject(promise, { done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, this, state), bind(internalReject, this, state));\n } catch (error) {\n internalReject(this, state, error);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = require('../internals/redefine-all')(PromiseConstructor.prototype, {\n // `Promise.prototype.then` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.then\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING) notify(this, state, false);\n return reaction.promise;\n },\n // `Promise.prototype.catch` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.catch\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, promise, state);\n this.reject = bind(internalReject, promise, state);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n // wrap fetch result\n if (!IS_PURE && typeof $fetch == 'function') $export({ global: true, enumerable: true, forced: true }, {\n // eslint-disable-next-line no-unused-vars\n fetch: function fetch(input) {\n return promiseResolve(PromiseConstructor, $fetch.apply(global, arguments));\n }\n });\n}\n\n$export({ global: true, wrap: true, forced: FORCED }, { Promise: PromiseConstructor });\n\nrequire('../internals/set-to-string-tag')(PromiseConstructor, PROMISE, false, true);\nrequire('../internals/set-species')(PROMISE);\n\nPromiseWrapper = require('../internals/path')[PROMISE];\n\n// statics\n$export({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.reject` method\n // https://tc39.github.io/ecma262/#sec-promise.reject\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n\n$export({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {\n // `Promise.resolve` method\n // https://tc39.github.io/ecma262/#sec-promise.resolve\n resolve: function resolve(x) {\n return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);\n }\n});\n\n$export({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {\n // `Promise.all` method\n // https://tc39.github.io/ecma262/#sec-promise.all\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n C.resolve(promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n },\n // `Promise.race` method\n // https://tc39.github.io/ecma262/#sec-promise.race\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n iterate(iterable, function (promise) {\n C.resolve(promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar MATCH = require('../internals/well-known-symbol')('match');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar isRegExp = require('../internals/is-regexp');\nvar getFlags = require('../internals/regexp-flags');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar NativeRegExp = global.RegExp;\nvar RegExpPrototype = NativeRegExp.prototype;\nvar re1 = /a/g;\nvar re2 = /a/g;\n\n// \"new\" should create a new object, old webkit bug\nvar CORRECT_NEW = new NativeRegExp(re1) !== re1;\n\nvar FORCED = isForced('RegExp', DESCRIPTORS && (!CORRECT_NEW || fails(function () {\n re2[MATCH] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return NativeRegExp(re1) != re1 || NativeRegExp(re2) == re2 || NativeRegExp(re1, 'i') != '/a/i';\n})));\n\n// `RegExp` constructor\n// https://tc39.github.io/ecma262/#sec-regexp-constructor\nif (FORCED) {\n var RegExpWrapper = function RegExp(pattern, flags) {\n var thisIsRegExp = this instanceof RegExpWrapper;\n var patternIsRegExp = isRegExp(pattern);\n var flagsAreUndefined = flags === undefined;\n return !thisIsRegExp && patternIsRegExp && pattern.constructor === RegExpWrapper && flagsAreUndefined ? pattern\n : inheritIfRequired(CORRECT_NEW\n ? new NativeRegExp(patternIsRegExp && !flagsAreUndefined ? pattern.source : pattern, flags)\n : NativeRegExp((patternIsRegExp = pattern instanceof RegExpWrapper)\n ? pattern.source\n : pattern, patternIsRegExp && flagsAreUndefined ? getFlags.call(pattern) : flags)\n , thisIsRegExp ? this : RegExpPrototype, RegExpWrapper);\n };\n var proxy = function (key) {\n key in RegExpWrapper || defineProperty(RegExpWrapper, key, {\n configurable: true,\n get: function () { return NativeRegExp[key]; },\n set: function (it) { NativeRegExp[key] = it; }\n });\n };\n var keys = getOwnPropertyNames(NativeRegExp);\n var i = 0;\n while (i < keys.length) proxy(keys[i++]);\n RegExpPrototype.constructor = RegExpWrapper;\n RegExpWrapper.prototype = RegExpPrototype;\n redefine(global, 'RegExp', RegExpWrapper);\n}\n\n// https://tc39.github.io/ecma262/#sec-get-regexp-@@species\nrequire('../internals/set-species')('RegExp');\n","'use strict';\n\nvar regexpExec = require('../internals/regexp-exec');\n\nrequire('../internals/export')({ target: 'RegExp', proto: true, forced: /./.exec !== regexpExec }, {\n exec: regexpExec\n});\n","// `RegExp.prototype.flags` getter\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nif (require('../internals/descriptors') && /./g.flags != 'g') {\n require('../internals/object-define-property').f(RegExp.prototype, 'flags', {\n configurable: true,\n get: require('../internals/regexp-flags')\n });\n}\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar fails = require('../internals/fails');\nvar flags = require('../internals/regexp-flags');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar TO_STRING = 'toString';\nvar nativeToString = /./[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = nativeToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n require('../internals/redefine')(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n return '/'.concat(R.source, '/',\n 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? flags.call(R) : undefined);\n }, { unsafe: true });\n}\n","'use strict';\n// `Set` constructor\n// https://tc39.github.io/ecma262/#sec-set-objects\nmodule.exports = require('../internals/collection')('Set', function (get) {\n return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, require('../internals/collection-strong'));\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('anchor');\n\n// `String.prototype.anchor` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.anchor\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n anchor: function anchor(name) {\n return createHTML(this, 'a', 'name', name);\n }\n});\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('big');\n\n// `String.prototype.big` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.big\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n big: function big() {\n return createHTML(this, 'big', '', '');\n }\n});\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('blink');\n\n// `String.prototype.blink` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.blink\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n blink: function blink() {\n return createHTML(this, 'blink', '', '');\n }\n});\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('bold');\n\n// `String.prototype.bold` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.bold\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n bold: function bold() {\n return createHTML(this, 'b', '', '');\n }\n});\n","'use strict';\nvar internalCodePointAt = require('../internals/string-at');\n\n// `String.prototype.codePointAt` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\nrequire('../internals/export')({ target: 'String', proto: true }, {\n codePointAt: function codePointAt(pos) {\n return internalCodePointAt(this, pos);\n }\n});\n","'use strict';\nvar toLength = require('../internals/to-length');\nvar validateArguments = require('../internals/validate-string-method-arguments');\nvar ENDS_WITH = 'endsWith';\nvar nativeEndsWith = ''[ENDS_WITH];\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = require('../internals/correct-is-regexp-logic')(ENDS_WITH);\n\n// `String.prototype.endsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.endswith\nrequire('../internals/export')({ target: 'String', proto: true, forced: !CORRECT_IS_REGEXP_LOGIC }, {\n endsWith: function endsWith(searchString /* , endPosition = @length */) {\n var that = validateArguments(this, searchString, ENDS_WITH);\n var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n var len = toLength(that.length);\n var end = endPosition === undefined ? len : min(toLength(endPosition), len);\n var search = String(searchString);\n return nativeEndsWith\n ? nativeEndsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('fixed');\n\n// `String.prototype.fixed` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.fixed\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n fixed: function fixed() {\n return createHTML(this, 'tt', '', '');\n }\n});\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('fontcolor');\n\n// `String.prototype.fontcolor` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.fontcolor\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n fontcolor: function fontcolor(color) {\n return createHTML(this, 'font', 'color', color);\n }\n});\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('fontsize');\n\n// `String.prototype.fontsize` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.fontsize\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n fontsize: function fontsize(size) {\n return createHTML(this, 'font', 'size', size);\n }\n});\n","var toAbsoluteIndex = require('../internals/to-absolute-index');\nvar fromCharCode = String.fromCharCode;\nvar nativeFromCodePoint = String.fromCodePoint;\n\n// length should be 1, old FF problem\nvar INCORRECT_LENGTH = !!nativeFromCodePoint && nativeFromCodePoint.length != 1;\n\n// `String.fromCodePoint` method\n// https://tc39.github.io/ecma262/#sec-string.fromcodepoint\nrequire('../internals/export')({ target: 'String', stat: true, forced: INCORRECT_LENGTH }, {\n fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars\n var elements = [];\n var length = arguments.length;\n var i = 0;\n var code;\n while (length > i) {\n code = +arguments[i++];\n if (toAbsoluteIndex(code, 0x10FFFF) !== code) throw RangeError(code + ' is not a valid code point');\n elements.push(code < 0x10000\n ? fromCharCode(code)\n : fromCharCode(((code -= 0x10000) >> 10) + 0xD800, code % 0x400 + 0xDC00)\n );\n } return elements.join('');\n }\n});\n","'use strict';\nvar validateArguments = require('../internals/validate-string-method-arguments');\nvar INCLUDES = 'includes';\n\nvar CORRECT_IS_REGEXP_LOGIC = require('../internals/correct-is-regexp-logic')(INCLUDES);\n\n// `String.prototype.includes` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.includes\nrequire('../internals/export')({ target: 'String', proto: true, forced: !CORRECT_IS_REGEXP_LOGIC }, {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~validateArguments(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('italics');\n\n// `String.prototype.italics` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.italics\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n italics: function italics() {\n return createHTML(this, 'i', '', '');\n }\n});\n","'use strict';\nvar codePointAt = require('../internals/string-at');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = codePointAt(string, index, true);\n state.index += point.length;\n return { value: point, done: false };\n});\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('link');\n\n// `String.prototype.link` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.link\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n link: function link(url) {\n return createHTML(this, 'a', 'href', url);\n }\n});\n","'use strict';\n\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nrequire('../internals/fix-regexp-well-known-symbol-logic')(\n 'match',\n 1,\n function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n }\n);\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\n\n// `String.raw` method\n// https://tc39.github.io/ecma262/#sec-string.raw\nrequire('../internals/export')({ target: 'String', stat: true }, {\n raw: function raw(template) {\n var rawTemplate = toIndexedObject(template.raw);\n var literalSegments = toLength(rawTemplate.length);\n var argumentsLength = arguments.length;\n var elements = [];\n var i = 0;\n while (literalSegments > i) {\n elements.push(String(rawTemplate[i++]));\n if (i < argumentsLength) elements.push(String(arguments[i]));\n } return elements.join('');\n }\n});\n","// `String.prototype.repeat` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.repeat\nrequire('../internals/export')({ target: 'String', proto: true }, {\n repeat: require('../internals/string-repeat')\n});\n","'use strict';\n\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&`']|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&`']|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nrequire('../internals/fix-regexp-well-known-symbol-logic')(\n 'replace',\n 2,\n function (REPLACE, nativeReplace, maybeCallNative) {\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];\n return replacer !== undefined\n ? replacer.call(searchValue, O, replaceValue)\n : nativeReplace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n results.push(result);\n if (!global) break;\n\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return nativeReplace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n }\n);\n","'use strict';\n\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nrequire('../internals/fix-regexp-well-known-symbol-logic')(\n 'search',\n 1,\n function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = regexp == undefined ? undefined : regexp[SEARCH];\n return searcher !== undefined ? searcher.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search\n function (regexp) {\n var res = maybeCallNative(nativeSearch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n }\n);\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('small');\n\n// `String.prototype.small` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.small\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n small: function small() {\n return createHTML(this, 'small', '', '');\n }\n});\n","'use strict';\n\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nrequire('../internals/fix-regexp-well-known-symbol-logic')(\n 'split',\n 2,\n function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n },\n !SUPPORTS_Y\n);\n","'use strict';\nvar toLength = require('../internals/to-length');\nvar validateArguments = require('../internals/validate-string-method-arguments');\nvar STARTS_WITH = 'startsWith';\nvar CORRECT_IS_REGEXP_LOGIC = require('../internals/correct-is-regexp-logic')(STARTS_WITH);\nvar nativeStartsWith = ''[STARTS_WITH];\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\nrequire('../internals/export')({ target: 'String', proto: true, forced: !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = validateArguments(this, searchString, STARTS_WITH);\n var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('strike');\n\n// `String.prototype.strike` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.strike\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n strike: function strike() {\n return createHTML(this, 'strike', '', '');\n }\n});\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('sub');\n\n// `String.prototype.sub` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.sub\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n sub: function sub() {\n return createHTML(this, 'sub', '', '');\n }\n});\n","'use strict';\nvar createHTML = require('../internals/create-html');\nvar FORCED = require('../internals/forced-string-html-method')('sup');\n\n// `String.prototype.sup` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.sup\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n sup: function sup() {\n return createHTML(this, 'sup', '', '');\n }\n});\n","'use strict';\nvar internalStringTrim = require('../internals/string-trim');\nvar FORCED = require('../internals/forced-string-trim-method')('trim');\n\n// `String.prototype.trim` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.trim\nrequire('../internals/export')({ target: 'String', proto: true, forced: FORCED }, {\n trim: function trim() {\n return internalStringTrim(this, 3);\n }\n});\n","// `Symbol.iterator` well-known symbol\n// https://tc39.github.io/ecma262/#sec-symbol.iterator\nrequire('../internals/define-well-known-symbol')('iterator');\n","'use strict';\n// ECMAScript 6 symbols shim\nvar global = require('../internals/global');\nvar has = require('../internals/has');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IS_PURE = require('../internals/is-pure');\nvar $export = require('../internals/export');\nvar redefine = require('../internals/redefine');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar fails = require('../internals/fails');\nvar shared = require('../internals/shared');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/wrapped-well-known-symbol');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar enumKeys = require('../internals/enum-keys');\nvar isArray = require('../internals/is-array');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar hide = require('../internals/hide');\nvar objectKeys = require('../internals/object-keys');\nvar HIDDEN = require('../internals/shared-key')('hidden');\nvar InternalStateModule = require('../internals/internal-state');\nvar SYMBOL = 'Symbol';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar $Symbol = global.Symbol;\nvar JSON = global.JSON;\nvar nativeJSONStringify = JSON && JSON.stringify;\nvar PROTOTYPE = 'prototype';\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar SymbolRegistry = shared('symbol-registry');\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar WellKnownSymbolsStore = shared('wks');\nvar ObjectPrototype = Object[PROTOTYPE];\nvar QObject = global.QObject;\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (it, key, D) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, key);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[key];\n nativeDefineProperty(it, key, D);\n if (ObjectPrototypeDescriptor && it !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, key, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar isSymbol = NATIVE_SYMBOL && typeof $Symbol.iterator == 'symbol' ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return Object(it) instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D) {\n if (it === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if (has(AllSymbols, key)) {\n if (!D.enumerable) {\n if (!has(it, HIDDEN)) nativeDefineProperty(it, HIDDEN, createPropertyDescriptor(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;\n D = nativeObjectCreate(D, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(it, key, D);\n } return nativeDefineProperty(it, key, D);\n};\n\nvar $defineProperties = function defineProperties(it, P) {\n anObject(it);\n var keys = enumKeys(P = toIndexedObject(P));\n var i = 0;\n var l = keys.length;\n var key;\n while (l > i) $defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\n\nvar $create = function create(it, P) {\n return P === undefined ? nativeObjectCreate(it) : $defineProperties(nativeObjectCreate(it), P);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(key) {\n var E = nativePropertyIsEnumerable.call(this, key = toPrimitive(key, true));\n if (this === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {\n it = toIndexedObject(it);\n key = toPrimitive(key, true);\n if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;\n var D = nativeGetOwnPropertyDescriptor(it, key);\n if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;\n return D;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(it) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (!has(AllSymbols, key = names[i++]) && !has(hiddenKeys, key)) result.push(key);\n } return result;\n};\n\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it) {\n var IS_OP = it === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OP ? ObjectPrototypeSymbols : toIndexedObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectPrototype, key) : true)) result.push(AllSymbols[key]);\n } return result;\n};\n\n// `Symbol` constructor\n// https://tc39.github.io/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');\n var description = arguments[0] === undefined ? undefined : String(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n require('../internals/object-get-own-property-names').f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n require('../internals/object-get-own-property-symbols').f = $getOwnPropertySymbols;\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty($Symbol[PROTOTYPE], 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n}\n\n$export({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, { Symbol: $Symbol });\n\nfor (var wellKnownSymbols = objectKeys(WellKnownSymbolsStore), k = 0; wellKnownSymbols.length > k;) {\n defineWellKnownSymbol(wellKnownSymbols[k++]);\n}\n\n$export({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n // `Symbol.for` method\n // https://tc39.github.io/ecma262/#sec-symbol.for\n 'for': function (key) {\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // `Symbol.keyFor` method\n // https://tc39.github.io/ecma262/#sec-symbol.keyfor\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');\n for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;\n },\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$export({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.github.io/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$export({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames,\n // `Object.getOwnPropertySymbols` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// `JSON.stringify` method behavior with symbols\n// https://tc39.github.io/ecma262/#sec-json.stringify\nJSON && $export({ target: 'JSON', stat: true, forced: !NATIVE_SYMBOL || fails(function () {\n var symbol = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n return nativeJSONStringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || nativeJSONStringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || nativeJSONStringify(Object(symbol)) != '{}';\n}) }, {\n stringify: function stringify(it) {\n var args = [it];\n var i = 1;\n var replacer, $replacer;\n while (arguments.length > i) args.push(arguments[i++]);\n $replacer = replacer = args[1];\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return nativeJSONStringify.apply(JSON, args);\n }\n});\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive\nif (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) hide($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","'use strict';\nvar global = require('../internals/global');\nvar redefineAll = require('../internals/redefine-all');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar weak = require('../internals/collection-weak');\nvar isObject = require('../internals/is-object');\nvar enforceIternalState = require('../internals/internal-state').enforce;\nvar NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;\nvar isExtensible = Object.isExtensible;\nvar InternalWeakMap;\n\nvar wrapper = function (get) {\n return function WeakMap() {\n return get(this, arguments.length > 0 ? arguments[0] : undefined);\n };\n};\n\n// `WeakMap` constructor\n// https://tc39.github.io/ecma262/#sec-weakmap-constructor\nvar $WeakMap = module.exports = require('../internals/collection')('WeakMap', wrapper, weak, true, true);\n\n// IE11 WeakMap frozen keys fix\n// We can't use feature detection because it crash some old IE builds\n// https://github.com/zloirock/core-js/issues/485\nif (NATIVE_WEAK_MAP && IS_IE11) {\n InternalWeakMap = weak.getConstructor(wrapper, 'WeakMap', true);\n InternalMetadataModule.REQUIRED = true;\n var WeakMapPrototype = $WeakMap.prototype;\n var nativeDelete = WeakMapPrototype['delete'];\n var nativeHas = WeakMapPrototype.has;\n var nativeGet = WeakMapPrototype.get;\n var nativeSet = WeakMapPrototype.set;\n redefineAll(WeakMapPrototype, {\n 'delete': function (key) {\n if (isObject(key) && !isExtensible(key)) {\n var state = enforceIternalState(this);\n if (!state.frozen) state.frozen = new InternalWeakMap();\n return nativeDelete.call(this, key) || state.frozen['delete'](key);\n } return nativeDelete.call(this, key);\n },\n has: function has(key) {\n if (isObject(key) && !isExtensible(key)) {\n var state = enforceIternalState(this);\n if (!state.frozen) state.frozen = new InternalWeakMap();\n return nativeHas.call(this, key) || state.frozen.has(key);\n } return nativeHas.call(this, key);\n },\n get: function get(key) {\n if (isObject(key) && !isExtensible(key)) {\n var state = enforceIternalState(this);\n if (!state.frozen) state.frozen = new InternalWeakMap();\n return nativeHas.call(this, key) ? nativeGet.call(this, key) : state.frozen.get(key);\n } return nativeGet.call(this, key);\n },\n set: function set(key, value) {\n if (isObject(key) && !isExtensible(key)) {\n var state = enforceIternalState(this);\n if (!state.frozen) state.frozen = new InternalWeakMap();\n nativeHas.call(this, key) ? nativeSet.call(this, key, value) : state.frozen.set(key, value);\n } else nativeSet.call(this, key, value);\n return this;\n }\n });\n}\n","var DOMIterables = require('../internals/dom-iterables');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar global = require('../internals/global');\nvar hide = require('../internals/hide');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n hide(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) hide(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n hide(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n// ES2015 symbol capabilities\nimport 'core-js/modules/es.symbol';\nimport 'core-js/modules/es.symbol.iterator';\n\n// ES2015 function capabilities\nimport 'core-js/modules/es.function.bind';\nimport 'core-js/modules/es.function.name';\nimport 'core-js/modules/es.function.has-instance';\n\n// ES2015 object capabilities\nimport 'core-js/modules/es.object.create';\nimport 'core-js/modules/es.object.define-property';\nimport 'core-js/modules/es.object.define-properties';\nimport 'core-js/modules/es.object.get-own-property-descriptor';\nimport 'core-js/modules/es.object.get-prototype-of';\nimport 'core-js/modules/es.object.keys';\nimport 'core-js/modules/es.object.get-own-property-names';\nimport 'core-js/modules/es.object.freeze';\nimport 'core-js/modules/es.object.seal';\nimport 'core-js/modules/es.object.prevent-extensions';\nimport 'core-js/modules/es.object.is-frozen';\nimport 'core-js/modules/es.object.is-sealed';\nimport 'core-js/modules/es.object.is-extensible';\nimport 'core-js/modules/es.object.assign';\nimport 'core-js/modules/es.object.is';\nimport 'core-js/modules/es.object.set-prototype-of';\nimport 'core-js/modules/es.object.to-string';\n\n// ES2015 array capabilities\nimport 'core-js/modules/es.array.is-array';\nimport 'core-js/modules/es.array.from';\nimport 'core-js/modules/es.array.of';\nimport 'core-js/modules/es.array.join';\nimport 'core-js/modules/es.array.slice';\nimport 'core-js/modules/es.array.sort';\nimport 'core-js/modules/es.array.for-each';\nimport 'core-js/modules/es.array.map';\nimport 'core-js/modules/es.array.filter';\nimport 'core-js/modules/es.array.some';\nimport 'core-js/modules/es.array.every';\nimport 'core-js/modules/es.array.reduce';\nimport 'core-js/modules/es.array.reduce-right';\nimport 'core-js/modules/es.array.index-of';\nimport 'core-js/modules/es.array.last-index-of';\nimport 'core-js/modules/es.array.copy-within';\nimport 'core-js/modules/es.array.fill';\nimport 'core-js/modules/es.array.find';\nimport 'core-js/modules/es.array.find-index';\nimport 'core-js/modules/es.array.iterator';\n\n// ES2015 string capabilities\nimport 'core-js/modules/es.string.from-code-point';\nimport 'core-js/modules/es.string.raw';\nimport 'core-js/modules/es.string.trim';\nimport 'core-js/modules/es.string.iterator';\nimport 'core-js/modules/es.string.code-point-at';\nimport 'core-js/modules/es.string.ends-with';\nimport 'core-js/modules/es.string.includes';\nimport 'core-js/modules/es.string.repeat';\nimport 'core-js/modules/es.string.starts-with';\nimport 'core-js/modules/es.string.anchor';\nimport 'core-js/modules/es.string.big';\nimport 'core-js/modules/es.string.blink';\nimport 'core-js/modules/es.string.bold';\nimport 'core-js/modules/es.string.fixed';\nimport 'core-js/modules/es.string.fontcolor';\nimport 'core-js/modules/es.string.fontsize';\nimport 'core-js/modules/es.string.italics';\nimport 'core-js/modules/es.string.link';\nimport 'core-js/modules/es.string.small';\nimport 'core-js/modules/es.string.strike';\nimport 'core-js/modules/es.string.sub';\nimport 'core-js/modules/es.string.sup';\n\nimport 'core-js/modules/es.parse-int';\nimport 'core-js/modules/es.parse-float';\n\nimport 'core-js/es/number';\nimport 'core-js/es/math';\nimport 'core-js/es/date';\nimport 'core-js/es/regexp';\n\nimport 'core-js/modules/es.map';\nimport 'core-js/modules/es.weak-map';\nimport 'core-js/modules/es.set';\nimport 'core-js/modules/web.dom-collections.iterator';\nimport 'core-js/modules/es.promise';\n","/**\n* @license\n* Copyright Google Inc. All Rights Reserved.\n*\n* Use of this source code is governed by an MIT-style license that can be\n* found in the LICENSE file at https://angular.io/license\n*/\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(factory());\n}(this, (function () { 'use strict';\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nvar Zone$1 = (function (global) {\n var performance = global['performance'];\n function mark(name) {\n performance && performance['mark'] && performance['mark'](name);\n }\n function performanceMeasure(name, label) {\n performance && performance['measure'] && performance['measure'](name, label);\n }\n mark('Zone');\n var checkDuplicate = global[('__zone_symbol__forceDuplicateZoneCheck')] === true;\n if (global['Zone']) {\n // if global['Zone'] already exists (maybe zone.js was already loaded or\n // some other lib also registered a global object named Zone), we may need\n // to throw an error, but sometimes user may not want this error.\n // For example,\n // we have two web pages, page1 includes zone.js, page2 doesn't.\n // and the 1st time user load page1 and page2, everything work fine,\n // but when user load page2 again, error occurs because global['Zone'] already exists.\n // so we add a flag to let user choose whether to throw this error or not.\n // By default, if existing Zone is from zone.js, we will not throw the error.\n if (checkDuplicate || typeof global['Zone'].__symbol__ !== 'function') {\n throw new Error('Zone already loaded.');\n }\n else {\n return global['Zone'];\n }\n }\n var Zone = /** @class */ (function () {\n function Zone(parent, zoneSpec) {\n this._parent = parent;\n this._name = zoneSpec ? zoneSpec.name || 'unnamed' : '';\n this._properties = zoneSpec && zoneSpec.properties || {};\n this._zoneDelegate =\n new ZoneDelegate(this, this._parent && this._parent._zoneDelegate, zoneSpec);\n }\n Zone.assertZonePatched = function () {\n if (global['Promise'] !== patches['ZoneAwarePromise']) {\n throw new Error('Zone.js has detected that ZoneAwarePromise `(window|global).Promise` ' +\n 'has been overwritten.\\n' +\n 'Most likely cause is that a Promise polyfill has been loaded ' +\n 'after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. ' +\n 'If you must load one, do so before loading zone.js.)');\n }\n };\n Object.defineProperty(Zone, \"root\", {\n get: function () {\n var zone = Zone.current;\n while (zone.parent) {\n zone = zone.parent;\n }\n return zone;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Zone, \"current\", {\n get: function () {\n return _currentZoneFrame.zone;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Zone, \"currentTask\", {\n get: function () {\n return _currentTask;\n },\n enumerable: true,\n configurable: true\n });\n Zone.__load_patch = function (name, fn) {\n if (patches.hasOwnProperty(name)) {\n if (checkDuplicate) {\n throw Error('Already loaded patch: ' + name);\n }\n }\n else if (!global['__Zone_disable_' + name]) {\n var perfName = 'Zone:' + name;\n mark(perfName);\n patches[name] = fn(global, Zone, _api);\n performanceMeasure(perfName, perfName);\n }\n };\n Object.defineProperty(Zone.prototype, \"parent\", {\n get: function () {\n return this._parent;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Zone.prototype, \"name\", {\n get: function () {\n return this._name;\n },\n enumerable: true,\n configurable: true\n });\n Zone.prototype.get = function (key) {\n var zone = this.getZoneWith(key);\n if (zone)\n return zone._properties[key];\n };\n Zone.prototype.getZoneWith = function (key) {\n var current = this;\n while (current) {\n if (current._properties.hasOwnProperty(key)) {\n return current;\n }\n current = current._parent;\n }\n return null;\n };\n Zone.prototype.fork = function (zoneSpec) {\n if (!zoneSpec)\n throw new Error('ZoneSpec required!');\n return this._zoneDelegate.fork(this, zoneSpec);\n };\n Zone.prototype.wrap = function (callback, source) {\n if (typeof callback !== 'function') {\n throw new Error('Expecting function got: ' + callback);\n }\n var _callback = this._zoneDelegate.intercept(this, callback, source);\n var zone = this;\n return function () {\n return zone.runGuarded(_callback, this, arguments, source);\n };\n };\n Zone.prototype.run = function (callback, applyThis, applyArgs, source) {\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);\n }\n finally {\n _currentZoneFrame = _currentZoneFrame.parent;\n }\n };\n Zone.prototype.runGuarded = function (callback, applyThis, applyArgs, source) {\n if (applyThis === void 0) { applyThis = null; }\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n try {\n return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);\n }\n catch (error) {\n if (this._zoneDelegate.handleError(this, error)) {\n throw error;\n }\n }\n }\n finally {\n _currentZoneFrame = _currentZoneFrame.parent;\n }\n };\n Zone.prototype.runTask = function (task, applyThis, applyArgs) {\n if (task.zone != this) {\n throw new Error('A task can only be run in the zone of creation! (Creation: ' +\n (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')');\n }\n // https://github.com/angular/zone.js/issues/778, sometimes eventTask\n // will run in notScheduled(canceled) state, we should not try to\n // run such kind of task but just return\n if (task.state === notScheduled && (task.type === eventTask || task.type === macroTask)) {\n return;\n }\n var reEntryGuard = task.state != running;\n reEntryGuard && task._transitionTo(running, scheduled);\n task.runCount++;\n var previousTask = _currentTask;\n _currentTask = task;\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n if (task.type == macroTask && task.data && !task.data.isPeriodic) {\n task.cancelFn = undefined;\n }\n try {\n return this._zoneDelegate.invokeTask(this, task, applyThis, applyArgs);\n }\n catch (error) {\n if (this._zoneDelegate.handleError(this, error)) {\n throw error;\n }\n }\n }\n finally {\n // if the task's state is notScheduled or unknown, then it has already been cancelled\n // we should not reset the state to scheduled\n if (task.state !== notScheduled && task.state !== unknown) {\n if (task.type == eventTask || (task.data && task.data.isPeriodic)) {\n reEntryGuard && task._transitionTo(scheduled, running);\n }\n else {\n task.runCount = 0;\n this._updateTaskCount(task, -1);\n reEntryGuard &&\n task._transitionTo(notScheduled, running, notScheduled);\n }\n }\n _currentZoneFrame = _currentZoneFrame.parent;\n _currentTask = previousTask;\n }\n };\n Zone.prototype.scheduleTask = function (task) {\n if (task.zone && task.zone !== this) {\n // check if the task was rescheduled, the newZone\n // should not be the children of the original zone\n var newZone = this;\n while (newZone) {\n if (newZone === task.zone) {\n throw Error(\"can not reschedule task to \" + this.name + \" which is descendants of the original zone \" + task.zone.name);\n }\n newZone = newZone.parent;\n }\n }\n task._transitionTo(scheduling, notScheduled);\n var zoneDelegates = [];\n task._zoneDelegates = zoneDelegates;\n task._zone = this;\n try {\n task = this._zoneDelegate.scheduleTask(this, task);\n }\n catch (err) {\n // should set task's state to unknown when scheduleTask throw error\n // because the err may from reschedule, so the fromState maybe notScheduled\n task._transitionTo(unknown, scheduling, notScheduled);\n // TODO: @JiaLiPassion, should we check the result from handleError?\n this._zoneDelegate.handleError(this, err);\n throw err;\n }\n if (task._zoneDelegates === zoneDelegates) {\n // we have to check because internally the delegate can reschedule the task.\n this._updateTaskCount(task, 1);\n }\n if (task.state == scheduling) {\n task._transitionTo(scheduled, scheduling);\n }\n return task;\n };\n Zone.prototype.scheduleMicroTask = function (source, callback, data, customSchedule) {\n return this.scheduleTask(new ZoneTask(microTask, source, callback, data, customSchedule, undefined));\n };\n Zone.prototype.scheduleMacroTask = function (source, callback, data, customSchedule, customCancel) {\n return this.scheduleTask(new ZoneTask(macroTask, source, callback, data, customSchedule, customCancel));\n };\n Zone.prototype.scheduleEventTask = function (source, callback, data, customSchedule, customCancel) {\n return this.scheduleTask(new ZoneTask(eventTask, source, callback, data, customSchedule, customCancel));\n };\n Zone.prototype.cancelTask = function (task) {\n if (task.zone != this)\n throw new Error('A task can only be cancelled in the zone of creation! (Creation: ' +\n (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')');\n task._transitionTo(canceling, scheduled, running);\n try {\n this._zoneDelegate.cancelTask(this, task);\n }\n catch (err) {\n // if error occurs when cancelTask, transit the state to unknown\n task._transitionTo(unknown, canceling);\n this._zoneDelegate.handleError(this, err);\n throw err;\n }\n this._updateTaskCount(task, -1);\n task._transitionTo(notScheduled, canceling);\n task.runCount = 0;\n return task;\n };\n Zone.prototype._updateTaskCount = function (task, count) {\n var zoneDelegates = task._zoneDelegates;\n if (count == -1) {\n task._zoneDelegates = null;\n }\n for (var i = 0; i < zoneDelegates.length; i++) {\n zoneDelegates[i]._updateTaskCount(task.type, count);\n }\n };\n Zone.__symbol__ = __symbol__;\n return Zone;\n }());\n var DELEGATE_ZS = {\n name: '',\n onHasTask: function (delegate, _, target, hasTaskState) { return delegate.hasTask(target, hasTaskState); },\n onScheduleTask: function (delegate, _, target, task) {\n return delegate.scheduleTask(target, task);\n },\n onInvokeTask: function (delegate, _, target, task, applyThis, applyArgs) {\n return delegate.invokeTask(target, task, applyThis, applyArgs);\n },\n onCancelTask: function (delegate, _, target, task) { return delegate.cancelTask(target, task); }\n };\n var ZoneDelegate = /** @class */ (function () {\n function ZoneDelegate(zone, parentDelegate, zoneSpec) {\n this._taskCounts = { 'microTask': 0, 'macroTask': 0, 'eventTask': 0 };\n this.zone = zone;\n this._parentDelegate = parentDelegate;\n this._forkZS = zoneSpec && (zoneSpec && zoneSpec.onFork ? zoneSpec : parentDelegate._forkZS);\n this._forkDlgt = zoneSpec && (zoneSpec.onFork ? parentDelegate : parentDelegate._forkDlgt);\n this._forkCurrZone = zoneSpec && (zoneSpec.onFork ? this.zone : parentDelegate.zone);\n this._interceptZS =\n zoneSpec && (zoneSpec.onIntercept ? zoneSpec : parentDelegate._interceptZS);\n this._interceptDlgt =\n zoneSpec && (zoneSpec.onIntercept ? parentDelegate : parentDelegate._interceptDlgt);\n this._interceptCurrZone =\n zoneSpec && (zoneSpec.onIntercept ? this.zone : parentDelegate.zone);\n this._invokeZS = zoneSpec && (zoneSpec.onInvoke ? zoneSpec : parentDelegate._invokeZS);\n this._invokeDlgt =\n zoneSpec && (zoneSpec.onInvoke ? parentDelegate : parentDelegate._invokeDlgt);\n this._invokeCurrZone = zoneSpec && (zoneSpec.onInvoke ? this.zone : parentDelegate.zone);\n this._handleErrorZS =\n zoneSpec && (zoneSpec.onHandleError ? zoneSpec : parentDelegate._handleErrorZS);\n this._handleErrorDlgt =\n zoneSpec && (zoneSpec.onHandleError ? parentDelegate : parentDelegate._handleErrorDlgt);\n this._handleErrorCurrZone =\n zoneSpec && (zoneSpec.onHandleError ? this.zone : parentDelegate.zone);\n this._scheduleTaskZS =\n zoneSpec && (zoneSpec.onScheduleTask ? zoneSpec : parentDelegate._scheduleTaskZS);\n this._scheduleTaskDlgt = zoneSpec &&\n (zoneSpec.onScheduleTask ? parentDelegate : parentDelegate._scheduleTaskDlgt);\n this._scheduleTaskCurrZone =\n zoneSpec && (zoneSpec.onScheduleTask ? this.zone : parentDelegate.zone);\n this._invokeTaskZS =\n zoneSpec && (zoneSpec.onInvokeTask ? zoneSpec : parentDelegate._invokeTaskZS);\n this._invokeTaskDlgt =\n zoneSpec && (zoneSpec.onInvokeTask ? parentDelegate : parentDelegate._invokeTaskDlgt);\n this._invokeTaskCurrZone =\n zoneSpec && (zoneSpec.onInvokeTask ? this.zone : parentDelegate.zone);\n this._cancelTaskZS =\n zoneSpec && (zoneSpec.onCancelTask ? zoneSpec : parentDelegate._cancelTaskZS);\n this._cancelTaskDlgt =\n zoneSpec && (zoneSpec.onCancelTask ? parentDelegate : parentDelegate._cancelTaskDlgt);\n this._cancelTaskCurrZone =\n zoneSpec && (zoneSpec.onCancelTask ? this.zone : parentDelegate.zone);\n this._hasTaskZS = null;\n this._hasTaskDlgt = null;\n this._hasTaskDlgtOwner = null;\n this._hasTaskCurrZone = null;\n var zoneSpecHasTask = zoneSpec && zoneSpec.onHasTask;\n var parentHasTask = parentDelegate && parentDelegate._hasTaskZS;\n if (zoneSpecHasTask || parentHasTask) {\n // If we need to report hasTask, than this ZS needs to do ref counting on tasks. In such\n // a case all task related interceptors must go through this ZD. We can't short circuit it.\n this._hasTaskZS = zoneSpecHasTask ? zoneSpec : DELEGATE_ZS;\n this._hasTaskDlgt = parentDelegate;\n this._hasTaskDlgtOwner = this;\n this._hasTaskCurrZone = zone;\n if (!zoneSpec.onScheduleTask) {\n this._scheduleTaskZS = DELEGATE_ZS;\n this._scheduleTaskDlgt = parentDelegate;\n this._scheduleTaskCurrZone = this.zone;\n }\n if (!zoneSpec.onInvokeTask) {\n this._invokeTaskZS = DELEGATE_ZS;\n this._invokeTaskDlgt = parentDelegate;\n this._invokeTaskCurrZone = this.zone;\n }\n if (!zoneSpec.onCancelTask) {\n this._cancelTaskZS = DELEGATE_ZS;\n this._cancelTaskDlgt = parentDelegate;\n this._cancelTaskCurrZone = this.zone;\n }\n }\n }\n ZoneDelegate.prototype.fork = function (targetZone, zoneSpec) {\n return this._forkZS ? this._forkZS.onFork(this._forkDlgt, this.zone, targetZone, zoneSpec) :\n new Zone(targetZone, zoneSpec);\n };\n ZoneDelegate.prototype.intercept = function (targetZone, callback, source) {\n return this._interceptZS ?\n this._interceptZS.onIntercept(this._interceptDlgt, this._interceptCurrZone, targetZone, callback, source) :\n callback;\n };\n ZoneDelegate.prototype.invoke = function (targetZone, callback, applyThis, applyArgs, source) {\n return this._invokeZS ? this._invokeZS.onInvoke(this._invokeDlgt, this._invokeCurrZone, targetZone, callback, applyThis, applyArgs, source) :\n callback.apply(applyThis, applyArgs);\n };\n ZoneDelegate.prototype.handleError = function (targetZone, error) {\n return this._handleErrorZS ?\n this._handleErrorZS.onHandleError(this._handleErrorDlgt, this._handleErrorCurrZone, targetZone, error) :\n true;\n };\n ZoneDelegate.prototype.scheduleTask = function (targetZone, task) {\n var returnTask = task;\n if (this._scheduleTaskZS) {\n if (this._hasTaskZS) {\n returnTask._zoneDelegates.push(this._hasTaskDlgtOwner);\n }\n returnTask = this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt, this._scheduleTaskCurrZone, targetZone, task);\n if (!returnTask)\n returnTask = task;\n }\n else {\n if (task.scheduleFn) {\n task.scheduleFn(task);\n }\n else if (task.type == microTask) {\n scheduleMicroTask(task);\n }\n else {\n throw new Error('Task is missing scheduleFn.');\n }\n }\n return returnTask;\n };\n ZoneDelegate.prototype.invokeTask = function (targetZone, task, applyThis, applyArgs) {\n return this._invokeTaskZS ? this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt, this._invokeTaskCurrZone, targetZone, task, applyThis, applyArgs) :\n task.callback.apply(applyThis, applyArgs);\n };\n ZoneDelegate.prototype.cancelTask = function (targetZone, task) {\n var value;\n if (this._cancelTaskZS) {\n value = this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt, this._cancelTaskCurrZone, targetZone, task);\n }\n else {\n if (!task.cancelFn) {\n throw Error('Task is not cancelable');\n }\n value = task.cancelFn(task);\n }\n return value;\n };\n ZoneDelegate.prototype.hasTask = function (targetZone, isEmpty) {\n // hasTask should not throw error so other ZoneDelegate\n // can still trigger hasTask callback\n try {\n this._hasTaskZS &&\n this._hasTaskZS.onHasTask(this._hasTaskDlgt, this._hasTaskCurrZone, targetZone, isEmpty);\n }\n catch (err) {\n this.handleError(targetZone, err);\n }\n };\n ZoneDelegate.prototype._updateTaskCount = function (type, count) {\n var counts = this._taskCounts;\n var prev = counts[type];\n var next = counts[type] = prev + count;\n if (next < 0) {\n throw new Error('More tasks executed then were scheduled.');\n }\n if (prev == 0 || next == 0) {\n var isEmpty = {\n microTask: counts['microTask'] > 0,\n macroTask: counts['macroTask'] > 0,\n eventTask: counts['eventTask'] > 0,\n change: type\n };\n this.hasTask(this.zone, isEmpty);\n }\n };\n return ZoneDelegate;\n }());\n var ZoneTask = /** @class */ (function () {\n function ZoneTask(type, source, callback, options, scheduleFn, cancelFn) {\n this._zone = null;\n this.runCount = 0;\n this._zoneDelegates = null;\n this._state = 'notScheduled';\n this.type = type;\n this.source = source;\n this.data = options;\n this.scheduleFn = scheduleFn;\n this.cancelFn = cancelFn;\n this.callback = callback;\n var self = this;\n // TODO: @JiaLiPassion options should have interface\n if (type === eventTask && options && options.useG) {\n this.invoke = ZoneTask.invokeTask;\n }\n else {\n this.invoke = function () {\n return ZoneTask.invokeTask.call(global, self, this, arguments);\n };\n }\n }\n ZoneTask.invokeTask = function (task, target, args) {\n if (!task) {\n task = this;\n }\n _numberOfNestedTaskFrames++;\n try {\n task.runCount++;\n return task.zone.runTask(task, target, args);\n }\n finally {\n if (_numberOfNestedTaskFrames == 1) {\n drainMicroTaskQueue();\n }\n _numberOfNestedTaskFrames--;\n }\n };\n Object.defineProperty(ZoneTask.prototype, \"zone\", {\n get: function () {\n return this._zone;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(ZoneTask.prototype, \"state\", {\n get: function () {\n return this._state;\n },\n enumerable: true,\n configurable: true\n });\n ZoneTask.prototype.cancelScheduleRequest = function () {\n this._transitionTo(notScheduled, scheduling);\n };\n ZoneTask.prototype._transitionTo = function (toState, fromState1, fromState2) {\n if (this._state === fromState1 || this._state === fromState2) {\n this._state = toState;\n if (toState == notScheduled) {\n this._zoneDelegates = null;\n }\n }\n else {\n throw new Error(this.type + \" '\" + this.source + \"': can not transition to '\" + toState + \"', expecting state '\" + fromState1 + \"'\" + (fromState2 ? ' or \\'' + fromState2 + '\\'' : '') + \", was '\" + this._state + \"'.\");\n }\n };\n ZoneTask.prototype.toString = function () {\n if (this.data && typeof this.data.handleId !== 'undefined') {\n return this.data.handleId.toString();\n }\n else {\n return Object.prototype.toString.call(this);\n }\n };\n // add toJSON method to prevent cyclic error when\n // call JSON.stringify(zoneTask)\n ZoneTask.prototype.toJSON = function () {\n return {\n type: this.type,\n state: this.state,\n source: this.source,\n zone: this.zone.name,\n runCount: this.runCount\n };\n };\n return ZoneTask;\n }());\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n /// MICROTASK QUEUE\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n var symbolSetTimeout = __symbol__('setTimeout');\n var symbolPromise = __symbol__('Promise');\n var symbolThen = __symbol__('then');\n var _microTaskQueue = [];\n var _isDrainingMicrotaskQueue = false;\n var nativeMicroTaskQueuePromise;\n function scheduleMicroTask(task) {\n // if we are not running in any task, and there has not been anything scheduled\n // we must bootstrap the initial task creation by manually scheduling the drain\n if (_numberOfNestedTaskFrames === 0 && _microTaskQueue.length === 0) {\n // We are not running in Task, so we need to kickstart the microtask queue.\n if (!nativeMicroTaskQueuePromise) {\n if (global[symbolPromise]) {\n nativeMicroTaskQueuePromise = global[symbolPromise].resolve(0);\n }\n }\n if (nativeMicroTaskQueuePromise) {\n var nativeThen = nativeMicroTaskQueuePromise[symbolThen];\n if (!nativeThen) {\n // native Promise is not patchable, we need to use `then` directly\n // issue 1078\n nativeThen = nativeMicroTaskQueuePromise['then'];\n }\n nativeThen.call(nativeMicroTaskQueuePromise, drainMicroTaskQueue);\n }\n else {\n global[symbolSetTimeout](drainMicroTaskQueue, 0);\n }\n }\n task && _microTaskQueue.push(task);\n }\n function drainMicroTaskQueue() {\n if (!_isDrainingMicrotaskQueue) {\n _isDrainingMicrotaskQueue = true;\n while (_microTaskQueue.length) {\n var queue = _microTaskQueue;\n _microTaskQueue = [];\n for (var i = 0; i < queue.length; i++) {\n var task = queue[i];\n try {\n task.zone.runTask(task, null, null);\n }\n catch (error) {\n _api.onUnhandledError(error);\n }\n }\n }\n _api.microtaskDrainDone();\n _isDrainingMicrotaskQueue = false;\n }\n }\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n /// BOOTSTRAP\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n var NO_ZONE = { name: 'NO ZONE' };\n var notScheduled = 'notScheduled', scheduling = 'scheduling', scheduled = 'scheduled', running = 'running', canceling = 'canceling', unknown = 'unknown';\n var microTask = 'microTask', macroTask = 'macroTask', eventTask = 'eventTask';\n var patches = {};\n var _api = {\n symbol: __symbol__,\n currentZoneFrame: function () { return _currentZoneFrame; },\n onUnhandledError: noop,\n microtaskDrainDone: noop,\n scheduleMicroTask: scheduleMicroTask,\n showUncaughtError: function () { return !Zone[__symbol__('ignoreConsoleErrorUncaughtError')]; },\n patchEventTarget: function () { return []; },\n patchOnProperties: noop,\n patchMethod: function () { return noop; },\n bindArguments: function () { return []; },\n patchThen: function () { return noop; },\n patchMacroTask: function () { return noop; },\n setNativePromise: function (NativePromise) {\n // sometimes NativePromise.resolve static function\n // is not ready yet, (such as core-js/es6.promise)\n // so we need to check here.\n if (NativePromise && typeof NativePromise.resolve === 'function') {\n nativeMicroTaskQueuePromise = NativePromise.resolve(0);\n }\n },\n patchEventPrototype: function () { return noop; },\n isIEOrEdge: function () { return false; },\n getGlobalObjects: function () { return undefined; },\n ObjectDefineProperty: function () { return noop; },\n ObjectGetOwnPropertyDescriptor: function () { return undefined; },\n ObjectCreate: function () { return undefined; },\n ArraySlice: function () { return []; },\n patchClass: function () { return noop; },\n wrapWithCurrentZone: function () { return noop; },\n filterProperties: function () { return []; },\n attachOriginToPatched: function () { return noop; },\n _redefineProperty: function () { return noop; },\n patchCallbacks: function () { return noop; }\n };\n var _currentZoneFrame = { parent: null, zone: new Zone(null, null) };\n var _currentTask = null;\n var _numberOfNestedTaskFrames = 0;\n function noop() { }\n function __symbol__(name) {\n return '__zone_symbol__' + name;\n }\n performanceMeasure('Zone', 'Zone');\n return global['Zone'] = Zone;\n})(typeof window !== 'undefined' && window || typeof self !== 'undefined' && self || global);\n\nvar __values = (undefined && undefined.__values) || function (o) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\n if (m) return m.call(o);\n return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n};\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nZone.__load_patch('ZoneAwarePromise', function (global, Zone, api) {\n var ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n var ObjectDefineProperty = Object.defineProperty;\n function readableObjectToString(obj) {\n if (obj && obj.toString === Object.prototype.toString) {\n var className = obj.constructor && obj.constructor.name;\n return (className ? className : '') + ': ' + JSON.stringify(obj);\n }\n return obj ? obj.toString() : Object.prototype.toString.call(obj);\n }\n var __symbol__ = api.symbol;\n var _uncaughtPromiseErrors = [];\n var symbolPromise = __symbol__('Promise');\n var symbolThen = __symbol__('then');\n var creationTrace = '__creationTrace__';\n api.onUnhandledError = function (e) {\n if (api.showUncaughtError()) {\n var rejection = e && e.rejection;\n if (rejection) {\n console.error('Unhandled Promise rejection:', rejection instanceof Error ? rejection.message : rejection, '; Zone:', e.zone.name, '; Task:', e.task && e.task.source, '; Value:', rejection, rejection instanceof Error ? rejection.stack : undefined);\n }\n else {\n console.error(e);\n }\n }\n };\n api.microtaskDrainDone = function () {\n while (_uncaughtPromiseErrors.length) {\n var _loop_1 = function () {\n var uncaughtPromiseError = _uncaughtPromiseErrors.shift();\n try {\n uncaughtPromiseError.zone.runGuarded(function () {\n throw uncaughtPromiseError;\n });\n }\n catch (error) {\n handleUnhandledRejection(error);\n }\n };\n while (_uncaughtPromiseErrors.length) {\n _loop_1();\n }\n }\n };\n var UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL = __symbol__('unhandledPromiseRejectionHandler');\n function handleUnhandledRejection(e) {\n api.onUnhandledError(e);\n try {\n var handler = Zone[UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL];\n if (handler && typeof handler === 'function') {\n handler.call(this, e);\n }\n }\n catch (err) {\n }\n }\n function isThenable(value) {\n return value && value.then;\n }\n function forwardResolution(value) {\n return value;\n }\n function forwardRejection(rejection) {\n return ZoneAwarePromise.reject(rejection);\n }\n var symbolState = __symbol__('state');\n var symbolValue = __symbol__('value');\n var symbolFinally = __symbol__('finally');\n var symbolParentPromiseValue = __symbol__('parentPromiseValue');\n var symbolParentPromiseState = __symbol__('parentPromiseState');\n var source = 'Promise.then';\n var UNRESOLVED = null;\n var RESOLVED = true;\n var REJECTED = false;\n var REJECTED_NO_CATCH = 0;\n function makeResolver(promise, state) {\n return function (v) {\n try {\n resolvePromise(promise, state, v);\n }\n catch (err) {\n resolvePromise(promise, false, err);\n }\n // Do not return value or you will break the Promise spec.\n };\n }\n var once = function () {\n var wasCalled = false;\n return function wrapper(wrappedFunction) {\n return function () {\n if (wasCalled) {\n return;\n }\n wasCalled = true;\n wrappedFunction.apply(null, arguments);\n };\n };\n };\n var TYPE_ERROR = 'Promise resolved with itself';\n var CURRENT_TASK_TRACE_SYMBOL = __symbol__('currentTaskTrace');\n // Promise Resolution\n function resolvePromise(promise, state, value) {\n var onceWrapper = once();\n if (promise === value) {\n throw new TypeError(TYPE_ERROR);\n }\n if (promise[symbolState] === UNRESOLVED) {\n // should only get value.then once based on promise spec.\n var then = null;\n try {\n if (typeof value === 'object' || typeof value === 'function') {\n then = value && value.then;\n }\n }\n catch (err) {\n onceWrapper(function () {\n resolvePromise(promise, false, err);\n })();\n return promise;\n }\n // if (value instanceof ZoneAwarePromise) {\n if (state !== REJECTED && value instanceof ZoneAwarePromise &&\n value.hasOwnProperty(symbolState) && value.hasOwnProperty(symbolValue) &&\n value[symbolState] !== UNRESOLVED) {\n clearRejectedNoCatch(value);\n resolvePromise(promise, value[symbolState], value[symbolValue]);\n }\n else if (state !== REJECTED && typeof then === 'function') {\n try {\n then.call(value, onceWrapper(makeResolver(promise, state)), onceWrapper(makeResolver(promise, false)));\n }\n catch (err) {\n onceWrapper(function () {\n resolvePromise(promise, false, err);\n })();\n }\n }\n else {\n promise[symbolState] = state;\n var queue = promise[symbolValue];\n promise[symbolValue] = value;\n if (promise[symbolFinally] === symbolFinally) {\n // the promise is generated by Promise.prototype.finally\n if (state === RESOLVED) {\n // the state is resolved, should ignore the value\n // and use parent promise value\n promise[symbolState] = promise[symbolParentPromiseState];\n promise[symbolValue] = promise[symbolParentPromiseValue];\n }\n }\n // record task information in value when error occurs, so we can\n // do some additional work such as render longStackTrace\n if (state === REJECTED && value instanceof Error) {\n // check if longStackTraceZone is here\n var trace = Zone.currentTask && Zone.currentTask.data &&\n Zone.currentTask.data[creationTrace];\n if (trace) {\n // only keep the long stack trace into error when in longStackTraceZone\n ObjectDefineProperty(value, CURRENT_TASK_TRACE_SYMBOL, { configurable: true, enumerable: false, writable: true, value: trace });\n }\n }\n for (var i = 0; i < queue.length;) {\n scheduleResolveOrReject(promise, queue[i++], queue[i++], queue[i++], queue[i++]);\n }\n if (queue.length == 0 && state == REJECTED) {\n promise[symbolState] = REJECTED_NO_CATCH;\n try {\n // try to print more readable error log\n throw new Error('Uncaught (in promise): ' + readableObjectToString(value) +\n (value && value.stack ? '\\n' + value.stack : ''));\n }\n catch (err) {\n var error_1 = err;\n error_1.rejection = value;\n error_1.promise = promise;\n error_1.zone = Zone.current;\n error_1.task = Zone.currentTask;\n _uncaughtPromiseErrors.push(error_1);\n api.scheduleMicroTask(); // to make sure that it is running\n }\n }\n }\n }\n // Resolving an already resolved promise is a noop.\n return promise;\n }\n var REJECTION_HANDLED_HANDLER = __symbol__('rejectionHandledHandler');\n function clearRejectedNoCatch(promise) {\n if (promise[symbolState] === REJECTED_NO_CATCH) {\n // if the promise is rejected no catch status\n // and queue.length > 0, means there is a error handler\n // here to handle the rejected promise, we should trigger\n // windows.rejectionhandled eventHandler or nodejs rejectionHandled\n // eventHandler\n try {\n var handler = Zone[REJECTION_HANDLED_HANDLER];\n if (handler && typeof handler === 'function') {\n handler.call(this, { rejection: promise[symbolValue], promise: promise });\n }\n }\n catch (err) {\n }\n promise[symbolState] = REJECTED;\n for (var i = 0; i < _uncaughtPromiseErrors.length; i++) {\n if (promise === _uncaughtPromiseErrors[i].promise) {\n _uncaughtPromiseErrors.splice(i, 1);\n }\n }\n }\n }\n function scheduleResolveOrReject(promise, zone, chainPromise, onFulfilled, onRejected) {\n clearRejectedNoCatch(promise);\n var promiseState = promise[symbolState];\n var delegate = promiseState ?\n (typeof onFulfilled === 'function') ? onFulfilled : forwardResolution :\n (typeof onRejected === 'function') ? onRejected : forwardRejection;\n zone.scheduleMicroTask(source, function () {\n try {\n var parentPromiseValue = promise[symbolValue];\n var isFinallyPromise = chainPromise && symbolFinally === chainPromise[symbolFinally];\n if (isFinallyPromise) {\n // if the promise is generated from finally call, keep parent promise's state and value\n chainPromise[symbolParentPromiseValue] = parentPromiseValue;\n chainPromise[symbolParentPromiseState] = promiseState;\n }\n // should not pass value to finally callback\n var value = zone.run(delegate, undefined, isFinallyPromise && delegate !== forwardRejection && delegate !== forwardResolution ?\n [] :\n [parentPromiseValue]);\n resolvePromise(chainPromise, true, value);\n }\n catch (error) {\n // if error occurs, should always return this error\n resolvePromise(chainPromise, false, error);\n }\n }, chainPromise);\n }\n var ZONE_AWARE_PROMISE_TO_STRING = 'function ZoneAwarePromise() { [native code] }';\n var ZoneAwarePromise = /** @class */ (function () {\n function ZoneAwarePromise(executor) {\n var promise = this;\n if (!(promise instanceof ZoneAwarePromise)) {\n throw new Error('Must be an instanceof Promise.');\n }\n promise[symbolState] = UNRESOLVED;\n promise[symbolValue] = []; // queue;\n try {\n executor && executor(makeResolver(promise, RESOLVED), makeResolver(promise, REJECTED));\n }\n catch (error) {\n resolvePromise(promise, false, error);\n }\n }\n ZoneAwarePromise.toString = function () {\n return ZONE_AWARE_PROMISE_TO_STRING;\n };\n ZoneAwarePromise.resolve = function (value) {\n return resolvePromise(new this(null), RESOLVED, value);\n };\n ZoneAwarePromise.reject = function (error) {\n return resolvePromise(new this(null), REJECTED, error);\n };\n ZoneAwarePromise.race = function (values) {\n var e_1, _a;\n var resolve;\n var reject;\n var promise = new this(function (res, rej) {\n resolve = res;\n reject = rej;\n });\n function onResolve(value) {\n resolve(value);\n }\n function onReject(error) {\n reject(error);\n }\n try {\n for (var values_1 = __values(values), values_1_1 = values_1.next(); !values_1_1.done; values_1_1 = values_1.next()) {\n var value = values_1_1.value;\n if (!isThenable(value)) {\n value = this.resolve(value);\n }\n value.then(onResolve, onReject);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (values_1_1 && !values_1_1.done && (_a = values_1.return)) _a.call(values_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return promise;\n };\n ZoneAwarePromise.all = function (values) {\n var e_2, _a;\n var resolve;\n var reject;\n var promise = new this(function (res, rej) {\n resolve = res;\n reject = rej;\n });\n // Start at 2 to prevent prematurely resolving if .then is called immediately.\n var unresolvedCount = 2;\n var valueIndex = 0;\n var resolvedValues = [];\n var _loop_2 = function (value) {\n if (!isThenable(value)) {\n value = this_1.resolve(value);\n }\n var curValueIndex = valueIndex;\n value.then(function (value) {\n resolvedValues[curValueIndex] = value;\n unresolvedCount--;\n if (unresolvedCount === 0) {\n resolve(resolvedValues);\n }\n }, reject);\n unresolvedCount++;\n valueIndex++;\n };\n var this_1 = this;\n try {\n for (var values_2 = __values(values), values_2_1 = values_2.next(); !values_2_1.done; values_2_1 = values_2.next()) {\n var value = values_2_1.value;\n _loop_2(value);\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (values_2_1 && !values_2_1.done && (_a = values_2.return)) _a.call(values_2);\n }\n finally { if (e_2) throw e_2.error; }\n }\n // Make the unresolvedCount zero-based again.\n unresolvedCount -= 2;\n if (unresolvedCount === 0) {\n resolve(resolvedValues);\n }\n return promise;\n };\n Object.defineProperty(ZoneAwarePromise.prototype, Symbol.toStringTag, {\n get: function () {\n return 'Promise';\n },\n enumerable: true,\n configurable: true\n });\n ZoneAwarePromise.prototype.then = function (onFulfilled, onRejected) {\n var chainPromise = new this.constructor(null);\n var zone = Zone.current;\n if (this[symbolState] == UNRESOLVED) {\n this[symbolValue].push(zone, chainPromise, onFulfilled, onRejected);\n }\n else {\n scheduleResolveOrReject(this, zone, chainPromise, onFulfilled, onRejected);\n }\n return chainPromise;\n };\n ZoneAwarePromise.prototype.catch = function (onRejected) {\n return this.then(null, onRejected);\n };\n ZoneAwarePromise.prototype.finally = function (onFinally) {\n var chainPromise = new this.constructor(null);\n chainPromise[symbolFinally] = symbolFinally;\n var zone = Zone.current;\n if (this[symbolState] == UNRESOLVED) {\n this[symbolValue].push(zone, chainPromise, onFinally, onFinally);\n }\n else {\n scheduleResolveOrReject(this, zone, chainPromise, onFinally, onFinally);\n }\n return chainPromise;\n };\n return ZoneAwarePromise;\n }());\n // Protect against aggressive optimizers dropping seemingly unused properties.\n // E.g. Closure Compiler in advanced mode.\n ZoneAwarePromise['resolve'] = ZoneAwarePromise.resolve;\n ZoneAwarePromise['reject'] = ZoneAwarePromise.reject;\n ZoneAwarePromise['race'] = ZoneAwarePromise.race;\n ZoneAwarePromise['all'] = ZoneAwarePromise.all;\n var NativePromise = global[symbolPromise] = global['Promise'];\n var ZONE_AWARE_PROMISE = Zone.__symbol__('ZoneAwarePromise');\n var desc = ObjectGetOwnPropertyDescriptor(global, 'Promise');\n if (!desc || desc.configurable) {\n desc && delete desc.writable;\n desc && delete desc.value;\n if (!desc) {\n desc = { configurable: true, enumerable: true };\n }\n desc.get = function () {\n // if we already set ZoneAwarePromise, use patched one\n // otherwise return native one.\n return global[ZONE_AWARE_PROMISE] ? global[ZONE_AWARE_PROMISE] : global[symbolPromise];\n };\n desc.set = function (NewNativePromise) {\n if (NewNativePromise === ZoneAwarePromise) {\n // if the NewNativePromise is ZoneAwarePromise\n // save to global\n global[ZONE_AWARE_PROMISE] = NewNativePromise;\n }\n else {\n // if the NewNativePromise is not ZoneAwarePromise\n // for example: after load zone.js, some library just\n // set es6-promise to global, if we set it to global\n // directly, assertZonePatched will fail and angular\n // will not loaded, so we just set the NewNativePromise\n // to global[symbolPromise], so the result is just like\n // we load ES6 Promise before zone.js\n global[symbolPromise] = NewNativePromise;\n if (!NewNativePromise.prototype[symbolThen]) {\n patchThen(NewNativePromise);\n }\n api.setNativePromise(NewNativePromise);\n }\n };\n ObjectDefineProperty(global, 'Promise', desc);\n }\n global['Promise'] = ZoneAwarePromise;\n var symbolThenPatched = __symbol__('thenPatched');\n function patchThen(Ctor) {\n var proto = Ctor.prototype;\n var prop = ObjectGetOwnPropertyDescriptor(proto, 'then');\n if (prop && (prop.writable === false || !prop.configurable)) {\n // check Ctor.prototype.then propertyDescriptor is writable or not\n // in meteor env, writable is false, we should ignore such case\n return;\n }\n var originalThen = proto.then;\n // Keep a reference to the original method.\n proto[symbolThen] = originalThen;\n Ctor.prototype.then = function (onResolve, onReject) {\n var _this = this;\n var wrapped = new ZoneAwarePromise(function (resolve, reject) {\n originalThen.call(_this, resolve, reject);\n });\n return wrapped.then(onResolve, onReject);\n };\n Ctor[symbolThenPatched] = true;\n }\n api.patchThen = patchThen;\n function zoneify(fn) {\n return function () {\n var resultPromise = fn.apply(this, arguments);\n if (resultPromise instanceof ZoneAwarePromise) {\n return resultPromise;\n }\n var ctor = resultPromise.constructor;\n if (!ctor[symbolThenPatched]) {\n patchThen(ctor);\n }\n return resultPromise;\n };\n }\n if (NativePromise) {\n patchThen(NativePromise);\n var fetch_1 = global['fetch'];\n if (typeof fetch_1 == 'function') {\n global[api.symbol('fetch')] = fetch_1;\n global['fetch'] = zoneify(fetch_1);\n }\n }\n // This is not part of public API, but it is useful for tests, so we expose it.\n Promise[Zone.__symbol__('uncaughtPromiseErrors')] = _uncaughtPromiseErrors;\n return ZoneAwarePromise;\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Suppress closure compiler errors about unknown 'Zone' variable\n * @fileoverview\n * @suppress {undefinedVars,globalThis,missingRequire}\n */\n// issue #989, to reduce bundle size, use short name\n/** Object.getOwnPropertyDescriptor */\nvar ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n/** Object.defineProperty */\nvar ObjectDefineProperty = Object.defineProperty;\n/** Object.getPrototypeOf */\nvar ObjectGetPrototypeOf = Object.getPrototypeOf;\n/** Object.create */\nvar ObjectCreate = Object.create;\n/** Array.prototype.slice */\nvar ArraySlice = Array.prototype.slice;\n/** addEventListener string const */\nvar ADD_EVENT_LISTENER_STR = 'addEventListener';\n/** removeEventListener string const */\nvar REMOVE_EVENT_LISTENER_STR = 'removeEventListener';\n/** zoneSymbol addEventListener */\nvar ZONE_SYMBOL_ADD_EVENT_LISTENER = Zone.__symbol__(ADD_EVENT_LISTENER_STR);\n/** zoneSymbol removeEventListener */\nvar ZONE_SYMBOL_REMOVE_EVENT_LISTENER = Zone.__symbol__(REMOVE_EVENT_LISTENER_STR);\n/** true string const */\nvar TRUE_STR = 'true';\n/** false string const */\nvar FALSE_STR = 'false';\n/** __zone_symbol__ string const */\nvar ZONE_SYMBOL_PREFIX = '__zone_symbol__';\nfunction wrapWithCurrentZone(callback, source) {\n return Zone.current.wrap(callback, source);\n}\nfunction scheduleMacroTaskWithCurrentZone(source, callback, data, customSchedule, customCancel) {\n return Zone.current.scheduleMacroTask(source, callback, data, customSchedule, customCancel);\n}\nvar zoneSymbol = Zone.__symbol__;\nvar isWindowExists = typeof window !== 'undefined';\nvar internalWindow = isWindowExists ? window : undefined;\nvar _global = isWindowExists && internalWindow || typeof self === 'object' && self || global;\nvar REMOVE_ATTRIBUTE = 'removeAttribute';\nvar NULL_ON_PROP_VALUE = [null];\nfunction bindArguments(args, source) {\n for (var i = args.length - 1; i >= 0; i--) {\n if (typeof args[i] === 'function') {\n args[i] = wrapWithCurrentZone(args[i], source + '_' + i);\n }\n }\n return args;\n}\nfunction patchPrototype(prototype, fnNames) {\n var source = prototype.constructor['name'];\n var _loop_1 = function (i) {\n var name_1 = fnNames[i];\n var delegate = prototype[name_1];\n if (delegate) {\n var prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, name_1);\n if (!isPropertyWritable(prototypeDesc)) {\n return \"continue\";\n }\n prototype[name_1] = (function (delegate) {\n var patched = function () {\n return delegate.apply(this, bindArguments(arguments, source + '.' + name_1));\n };\n attachOriginToPatched(patched, delegate);\n return patched;\n })(delegate);\n }\n };\n for (var i = 0; i < fnNames.length; i++) {\n _loop_1(i);\n }\n}\nfunction isPropertyWritable(propertyDesc) {\n if (!propertyDesc) {\n return true;\n }\n if (propertyDesc.writable === false) {\n return false;\n }\n return !(typeof propertyDesc.get === 'function' && typeof propertyDesc.set === 'undefined');\n}\nvar isWebWorker = (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope);\n// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify\n// this code.\nvar isNode = (!('nw' in _global) && typeof _global.process !== 'undefined' &&\n {}.toString.call(_global.process) === '[object process]');\nvar isBrowser = !isNode && !isWebWorker && !!(isWindowExists && internalWindow['HTMLElement']);\n// we are in electron of nw, so we are both browser and nodejs\n// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify\n// this code.\nvar isMix = typeof _global.process !== 'undefined' &&\n {}.toString.call(_global.process) === '[object process]' && !isWebWorker &&\n !!(isWindowExists && internalWindow['HTMLElement']);\nvar zoneSymbolEventNames = {};\nvar wrapFn = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n var eventNameSymbol = zoneSymbolEventNames[event.type];\n if (!eventNameSymbol) {\n eventNameSymbol = zoneSymbolEventNames[event.type] = zoneSymbol('ON_PROPERTY' + event.type);\n }\n var target = this || event.target || _global;\n var listener = target[eventNameSymbol];\n var result;\n if (isBrowser && target === internalWindow && event.type === 'error') {\n // window.onerror have different signiture\n // https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror#window.onerror\n // and onerror callback will prevent default when callback return true\n var errorEvent = event;\n result = listener &&\n listener.call(this, errorEvent.message, errorEvent.filename, errorEvent.lineno, errorEvent.colno, errorEvent.error);\n if (result === true) {\n event.preventDefault();\n }\n }\n else {\n result = listener && listener.apply(this, arguments);\n if (result != undefined && !result) {\n event.preventDefault();\n }\n }\n return result;\n};\nfunction patchProperty(obj, prop, prototype) {\n var desc = ObjectGetOwnPropertyDescriptor(obj, prop);\n if (!desc && prototype) {\n // when patch window object, use prototype to check prop exist or not\n var prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, prop);\n if (prototypeDesc) {\n desc = { enumerable: true, configurable: true };\n }\n }\n // if the descriptor not exists or is not configurable\n // just return\n if (!desc || !desc.configurable) {\n return;\n }\n var onPropPatchedSymbol = zoneSymbol('on' + prop + 'patched');\n if (obj.hasOwnProperty(onPropPatchedSymbol) && obj[onPropPatchedSymbol]) {\n return;\n }\n // A property descriptor cannot have getter/setter and be writable\n // deleting the writable and value properties avoids this error:\n //\n // TypeError: property descriptors must not specify a value or be writable when a\n // getter or setter has been specified\n delete desc.writable;\n delete desc.value;\n var originalDescGet = desc.get;\n var originalDescSet = desc.set;\n // substr(2) cuz 'onclick' -> 'click', etc\n var eventName = prop.substr(2);\n var eventNameSymbol = zoneSymbolEventNames[eventName];\n if (!eventNameSymbol) {\n eventNameSymbol = zoneSymbolEventNames[eventName] = zoneSymbol('ON_PROPERTY' + eventName);\n }\n desc.set = function (newValue) {\n // in some of windows's onproperty callback, this is undefined\n // so we need to check it\n var target = this;\n if (!target && obj === _global) {\n target = _global;\n }\n if (!target) {\n return;\n }\n var previousValue = target[eventNameSymbol];\n if (previousValue) {\n target.removeEventListener(eventName, wrapFn);\n }\n // issue #978, when onload handler was added before loading zone.js\n // we should remove it with originalDescSet\n if (originalDescSet) {\n originalDescSet.apply(target, NULL_ON_PROP_VALUE);\n }\n if (typeof newValue === 'function') {\n target[eventNameSymbol] = newValue;\n target.addEventListener(eventName, wrapFn, false);\n }\n else {\n target[eventNameSymbol] = null;\n }\n };\n // The getter would return undefined for unassigned properties but the default value of an\n // unassigned property is null\n desc.get = function () {\n // in some of windows's onproperty callback, this is undefined\n // so we need to check it\n var target = this;\n if (!target && obj === _global) {\n target = _global;\n }\n if (!target) {\n return null;\n }\n var listener = target[eventNameSymbol];\n if (listener) {\n return listener;\n }\n else if (originalDescGet) {\n // result will be null when use inline event attribute,\n // such as \n // because the onclick function is internal raw uncompiled handler\n // the onclick will be evaluated when first time event was triggered or\n // the property is accessed, https://github.com/angular/zone.js/issues/525\n // so we should use original native get to retrieve the handler\n var value = originalDescGet && originalDescGet.call(this);\n if (value) {\n desc.set.call(this, value);\n if (typeof target[REMOVE_ATTRIBUTE] === 'function') {\n target.removeAttribute(prop);\n }\n return value;\n }\n }\n return null;\n };\n ObjectDefineProperty(obj, prop, desc);\n obj[onPropPatchedSymbol] = true;\n}\nfunction patchOnProperties(obj, properties, prototype) {\n if (properties) {\n for (var i = 0; i < properties.length; i++) {\n patchProperty(obj, 'on' + properties[i], prototype);\n }\n }\n else {\n var onProperties = [];\n for (var prop in obj) {\n if (prop.substr(0, 2) == 'on') {\n onProperties.push(prop);\n }\n }\n for (var j = 0; j < onProperties.length; j++) {\n patchProperty(obj, onProperties[j], prototype);\n }\n }\n}\nvar originalInstanceKey = zoneSymbol('originalInstance');\n// wrap some native API on `window`\nfunction patchClass(className) {\n var OriginalClass = _global[className];\n if (!OriginalClass)\n return;\n // keep original class in global\n _global[zoneSymbol(className)] = OriginalClass;\n _global[className] = function () {\n var a = bindArguments(arguments, className);\n switch (a.length) {\n case 0:\n this[originalInstanceKey] = new OriginalClass();\n break;\n case 1:\n this[originalInstanceKey] = new OriginalClass(a[0]);\n break;\n case 2:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1]);\n break;\n case 3:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2]);\n break;\n case 4:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2], a[3]);\n break;\n default:\n throw new Error('Arg list too long.');\n }\n };\n // attach original delegate to patched function\n attachOriginToPatched(_global[className], OriginalClass);\n var instance = new OriginalClass(function () { });\n var prop;\n for (prop in instance) {\n // https://bugs.webkit.org/show_bug.cgi?id=44721\n if (className === 'XMLHttpRequest' && prop === 'responseBlob')\n continue;\n (function (prop) {\n if (typeof instance[prop] === 'function') {\n _global[className].prototype[prop] = function () {\n return this[originalInstanceKey][prop].apply(this[originalInstanceKey], arguments);\n };\n }\n else {\n ObjectDefineProperty(_global[className].prototype, prop, {\n set: function (fn) {\n if (typeof fn === 'function') {\n this[originalInstanceKey][prop] = wrapWithCurrentZone(fn, className + '.' + prop);\n // keep callback in wrapped function so we can\n // use it in Function.prototype.toString to return\n // the native one.\n attachOriginToPatched(this[originalInstanceKey][prop], fn);\n }\n else {\n this[originalInstanceKey][prop] = fn;\n }\n },\n get: function () {\n return this[originalInstanceKey][prop];\n }\n });\n }\n }(prop));\n }\n for (prop in OriginalClass) {\n if (prop !== 'prototype' && OriginalClass.hasOwnProperty(prop)) {\n _global[className][prop] = OriginalClass[prop];\n }\n }\n}\nfunction copySymbolProperties(src, dest) {\n if (typeof Object.getOwnPropertySymbols !== 'function') {\n return;\n }\n var symbols = Object.getOwnPropertySymbols(src);\n symbols.forEach(function (symbol) {\n var desc = Object.getOwnPropertyDescriptor(src, symbol);\n Object.defineProperty(dest, symbol, {\n get: function () {\n return src[symbol];\n },\n set: function (value) {\n if (desc && (!desc.writable || typeof desc.set !== 'function')) {\n // if src[symbol] is not writable or not have a setter, just return\n return;\n }\n src[symbol] = value;\n },\n enumerable: desc ? desc.enumerable : true,\n configurable: desc ? desc.configurable : true\n });\n });\n}\nvar shouldCopySymbolProperties = false;\n\nfunction patchMethod(target, name, patchFn) {\n var proto = target;\n while (proto && !proto.hasOwnProperty(name)) {\n proto = ObjectGetPrototypeOf(proto);\n }\n if (!proto && target[name]) {\n // somehow we did not find it, but we can see it. This happens on IE for Window properties.\n proto = target;\n }\n var delegateName = zoneSymbol(name);\n var delegate = null;\n if (proto && !(delegate = proto[delegateName])) {\n delegate = proto[delegateName] = proto[name];\n // check whether proto[name] is writable\n // some property is readonly in safari, such as HtmlCanvasElement.prototype.toBlob\n var desc = proto && ObjectGetOwnPropertyDescriptor(proto, name);\n if (isPropertyWritable(desc)) {\n var patchDelegate_1 = patchFn(delegate, delegateName, name);\n proto[name] = function () {\n return patchDelegate_1(this, arguments);\n };\n attachOriginToPatched(proto[name], delegate);\n if (shouldCopySymbolProperties) {\n copySymbolProperties(delegate, proto[name]);\n }\n }\n }\n return delegate;\n}\n// TODO: @JiaLiPassion, support cancel task later if necessary\nfunction patchMacroTask(obj, funcName, metaCreator) {\n var setNative = null;\n function scheduleTask(task) {\n var data = task.data;\n data.args[data.cbIdx] = function () {\n task.invoke.apply(this, arguments);\n };\n setNative.apply(data.target, data.args);\n return task;\n }\n setNative = patchMethod(obj, funcName, function (delegate) { return function (self, args) {\n var meta = metaCreator(self, args);\n if (meta.cbIdx >= 0 && typeof args[meta.cbIdx] === 'function') {\n return scheduleMacroTaskWithCurrentZone(meta.name, args[meta.cbIdx], meta, scheduleTask);\n }\n else {\n // cause an error by calling it directly.\n return delegate.apply(self, args);\n }\n }; });\n}\n\nfunction attachOriginToPatched(patched, original) {\n patched[zoneSymbol('OriginalDelegate')] = original;\n}\nvar isDetectedIEOrEdge = false;\nvar ieOrEdge = false;\nfunction isIE() {\n try {\n var ua = internalWindow.navigator.userAgent;\n if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1) {\n return true;\n }\n }\n catch (error) {\n }\n return false;\n}\nfunction isIEOrEdge() {\n if (isDetectedIEOrEdge) {\n return ieOrEdge;\n }\n isDetectedIEOrEdge = true;\n try {\n var ua = internalWindow.navigator.userAgent;\n if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1 || ua.indexOf('Edge/') !== -1) {\n ieOrEdge = true;\n }\n }\n catch (error) {\n }\n return ieOrEdge;\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// override Function.prototype.toString to make zone.js patched function\n// look like native function\nZone.__load_patch('toString', function (global) {\n // patch Func.prototype.toString to let them look like native\n var originalFunctionToString = Function.prototype.toString;\n var ORIGINAL_DELEGATE_SYMBOL = zoneSymbol('OriginalDelegate');\n var PROMISE_SYMBOL = zoneSymbol('Promise');\n var ERROR_SYMBOL = zoneSymbol('Error');\n var newFunctionToString = function toString() {\n if (typeof this === 'function') {\n var originalDelegate = this[ORIGINAL_DELEGATE_SYMBOL];\n if (originalDelegate) {\n if (typeof originalDelegate === 'function') {\n return originalFunctionToString.call(originalDelegate);\n }\n else {\n return Object.prototype.toString.call(originalDelegate);\n }\n }\n if (this === Promise) {\n var nativePromise = global[PROMISE_SYMBOL];\n if (nativePromise) {\n return originalFunctionToString.call(nativePromise);\n }\n }\n if (this === Error) {\n var nativeError = global[ERROR_SYMBOL];\n if (nativeError) {\n return originalFunctionToString.call(nativeError);\n }\n }\n }\n return originalFunctionToString.call(this);\n };\n newFunctionToString[ORIGINAL_DELEGATE_SYMBOL] = originalFunctionToString;\n Function.prototype.toString = newFunctionToString;\n // patch Object.prototype.toString to let them look like native\n var originalObjectToString = Object.prototype.toString;\n var PROMISE_OBJECT_TO_STRING = '[object Promise]';\n Object.prototype.toString = function () {\n if (this instanceof Promise) {\n return PROMISE_OBJECT_TO_STRING;\n }\n return originalObjectToString.call(this);\n };\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\nvar passiveSupported = false;\nif (typeof window !== 'undefined') {\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function () {\n passiveSupported = true;\n }\n });\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, options);\n }\n catch (err) {\n passiveSupported = false;\n }\n}\n// an identifier to tell ZoneTask do not create a new invoke closure\nvar OPTIMIZED_ZONE_EVENT_TASK_DATA = {\n useG: true\n};\nvar zoneSymbolEventNames$1 = {};\nvar globalSources = {};\nvar EVENT_NAME_SYMBOL_REGX = /^__zone_symbol__(\\w+)(true|false)$/;\nvar IMMEDIATE_PROPAGATION_SYMBOL = ('__zone_symbol__propagationStopped');\nfunction patchEventTarget(_global, apis, patchOptions) {\n var ADD_EVENT_LISTENER = (patchOptions && patchOptions.add) || ADD_EVENT_LISTENER_STR;\n var REMOVE_EVENT_LISTENER = (patchOptions && patchOptions.rm) || REMOVE_EVENT_LISTENER_STR;\n var LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.listeners) || 'eventListeners';\n var REMOVE_ALL_LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.rmAll) || 'removeAllListeners';\n var zoneSymbolAddEventListener = zoneSymbol(ADD_EVENT_LISTENER);\n var ADD_EVENT_LISTENER_SOURCE = '.' + ADD_EVENT_LISTENER + ':';\n var PREPEND_EVENT_LISTENER = 'prependListener';\n var PREPEND_EVENT_LISTENER_SOURCE = '.' + PREPEND_EVENT_LISTENER + ':';\n var invokeTask = function (task, target, event) {\n // for better performance, check isRemoved which is set\n // by removeEventListener\n if (task.isRemoved) {\n return;\n }\n var delegate = task.callback;\n if (typeof delegate === 'object' && delegate.handleEvent) {\n // create the bind version of handleEvent when invoke\n task.callback = function (event) { return delegate.handleEvent(event); };\n task.originalDelegate = delegate;\n }\n // invoke static task.invoke\n task.invoke(task, target, [event]);\n var options = task.options;\n if (options && typeof options === 'object' && options.once) {\n // if options.once is true, after invoke once remove listener here\n // only browser need to do this, nodejs eventEmitter will cal removeListener\n // inside EventEmitter.once\n var delegate_1 = task.originalDelegate ? task.originalDelegate : task.callback;\n target[REMOVE_EVENT_LISTENER].call(target, event.type, delegate_1, options);\n }\n };\n // global shared zoneAwareCallback to handle all event callback with capture = false\n var globalZoneAwareCallback = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n // event.target is needed for Samsung TV and SourceBuffer\n // || global is needed https://github.com/angular/zone.js/issues/190\n var target = this || event.target || _global;\n var tasks = target[zoneSymbolEventNames$1[event.type][FALSE_STR]];\n if (tasks) {\n // invoke all tasks which attached to current target with given event.type and capture = false\n // for performance concern, if task.length === 1, just invoke\n if (tasks.length === 1) {\n invokeTask(tasks[0], target, event);\n }\n else {\n // https://github.com/angular/zone.js/issues/836\n // copy the tasks array before invoke, to avoid\n // the callback will remove itself or other listener\n var copyTasks = tasks.slice();\n for (var i = 0; i < copyTasks.length; i++) {\n if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) {\n break;\n }\n invokeTask(copyTasks[i], target, event);\n }\n }\n }\n };\n // global shared zoneAwareCallback to handle all event callback with capture = true\n var globalZoneAwareCaptureCallback = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n // event.target is needed for Samsung TV and SourceBuffer\n // || global is needed https://github.com/angular/zone.js/issues/190\n var target = this || event.target || _global;\n var tasks = target[zoneSymbolEventNames$1[event.type][TRUE_STR]];\n if (tasks) {\n // invoke all tasks which attached to current target with given event.type and capture = false\n // for performance concern, if task.length === 1, just invoke\n if (tasks.length === 1) {\n invokeTask(tasks[0], target, event);\n }\n else {\n // https://github.com/angular/zone.js/issues/836\n // copy the tasks array before invoke, to avoid\n // the callback will remove itself or other listener\n var copyTasks = tasks.slice();\n for (var i = 0; i < copyTasks.length; i++) {\n if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) {\n break;\n }\n invokeTask(copyTasks[i], target, event);\n }\n }\n }\n };\n function patchEventTargetMethods(obj, patchOptions) {\n if (!obj) {\n return false;\n }\n var useGlobalCallback = true;\n if (patchOptions && patchOptions.useG !== undefined) {\n useGlobalCallback = patchOptions.useG;\n }\n var validateHandler = patchOptions && patchOptions.vh;\n var checkDuplicate = true;\n if (patchOptions && patchOptions.chkDup !== undefined) {\n checkDuplicate = patchOptions.chkDup;\n }\n var returnTarget = false;\n if (patchOptions && patchOptions.rt !== undefined) {\n returnTarget = patchOptions.rt;\n }\n var proto = obj;\n while (proto && !proto.hasOwnProperty(ADD_EVENT_LISTENER)) {\n proto = ObjectGetPrototypeOf(proto);\n }\n if (!proto && obj[ADD_EVENT_LISTENER]) {\n // somehow we did not find it, but we can see it. This happens on IE for Window properties.\n proto = obj;\n }\n if (!proto) {\n return false;\n }\n if (proto[zoneSymbolAddEventListener]) {\n return false;\n }\n var eventNameToString = patchOptions && patchOptions.eventNameToString;\n // a shared global taskData to pass data for scheduleEventTask\n // so we do not need to create a new object just for pass some data\n var taskData = {};\n var nativeAddEventListener = proto[zoneSymbolAddEventListener] = proto[ADD_EVENT_LISTENER];\n var nativeRemoveEventListener = proto[zoneSymbol(REMOVE_EVENT_LISTENER)] =\n proto[REMOVE_EVENT_LISTENER];\n var nativeListeners = proto[zoneSymbol(LISTENERS_EVENT_LISTENER)] =\n proto[LISTENERS_EVENT_LISTENER];\n var nativeRemoveAllListeners = proto[zoneSymbol(REMOVE_ALL_LISTENERS_EVENT_LISTENER)] =\n proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER];\n var nativePrependEventListener;\n if (patchOptions && patchOptions.prepend) {\n nativePrependEventListener = proto[zoneSymbol(patchOptions.prepend)] =\n proto[patchOptions.prepend];\n }\n function checkIsPassive(task) {\n if (!passiveSupported && typeof taskData.options !== 'boolean' &&\n typeof taskData.options !== 'undefined' && taskData.options !== null) {\n // options is a non-null non-undefined object\n // passive is not supported\n // don't pass options as object\n // just pass capture as a boolean\n task.options = !!taskData.options.capture;\n taskData.options = task.options;\n }\n }\n var customScheduleGlobal = function (task) {\n // if there is already a task for the eventName + capture,\n // just return, because we use the shared globalZoneAwareCallback here.\n if (taskData.isExisting) {\n return;\n }\n checkIsPassive(task);\n return nativeAddEventListener.call(taskData.target, taskData.eventName, taskData.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, taskData.options);\n };\n var customCancelGlobal = function (task) {\n // if task is not marked as isRemoved, this call is directly\n // from Zone.prototype.cancelTask, we should remove the task\n // from tasksList of target first\n if (!task.isRemoved) {\n var symbolEventNames = zoneSymbolEventNames$1[task.eventName];\n var symbolEventName = void 0;\n if (symbolEventNames) {\n symbolEventName = symbolEventNames[task.capture ? TRUE_STR : FALSE_STR];\n }\n var existingTasks = symbolEventName && task.target[symbolEventName];\n if (existingTasks) {\n for (var i = 0; i < existingTasks.length; i++) {\n var existingTask = existingTasks[i];\n if (existingTask === task) {\n existingTasks.splice(i, 1);\n // set isRemoved to data for faster invokeTask check\n task.isRemoved = true;\n if (existingTasks.length === 0) {\n // all tasks for the eventName + capture have gone,\n // remove globalZoneAwareCallback and remove the task cache from target\n task.allRemoved = true;\n task.target[symbolEventName] = null;\n }\n break;\n }\n }\n }\n }\n // if all tasks for the eventName + capture have gone,\n // we will really remove the global event callback,\n // if not, return\n if (!task.allRemoved) {\n return;\n }\n return nativeRemoveEventListener.call(task.target, task.eventName, task.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, task.options);\n };\n var customScheduleNonGlobal = function (task) {\n checkIsPassive(task);\n return nativeAddEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options);\n };\n var customSchedulePrepend = function (task) {\n return nativePrependEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options);\n };\n var customCancelNonGlobal = function (task) {\n return nativeRemoveEventListener.call(task.target, task.eventName, task.invoke, task.options);\n };\n var customSchedule = useGlobalCallback ? customScheduleGlobal : customScheduleNonGlobal;\n var customCancel = useGlobalCallback ? customCancelGlobal : customCancelNonGlobal;\n var compareTaskCallbackVsDelegate = function (task, delegate) {\n var typeOfDelegate = typeof delegate;\n return (typeOfDelegate === 'function' && task.callback === delegate) ||\n (typeOfDelegate === 'object' && task.originalDelegate === delegate);\n };\n var compare = (patchOptions && patchOptions.diff) ? patchOptions.diff : compareTaskCallbackVsDelegate;\n var blackListedEvents = Zone[Zone.__symbol__('BLACK_LISTED_EVENTS')];\n var makeAddListener = function (nativeListener, addSource, customScheduleFn, customCancelFn, returnTarget, prepend) {\n if (returnTarget === void 0) { returnTarget = false; }\n if (prepend === void 0) { prepend = false; }\n return function () {\n var target = this || _global;\n var eventName = arguments[0];\n var delegate = arguments[1];\n if (!delegate) {\n return nativeListener.apply(this, arguments);\n }\n if (isNode && eventName === 'uncaughtException') {\n // don't patch uncaughtException of nodejs to prevent endless loop\n return nativeListener.apply(this, arguments);\n }\n // don't create the bind delegate function for handleEvent\n // case here to improve addEventListener performance\n // we will create the bind delegate when invoke\n var isHandleEvent = false;\n if (typeof delegate !== 'function') {\n if (!delegate.handleEvent) {\n return nativeListener.apply(this, arguments);\n }\n isHandleEvent = true;\n }\n if (validateHandler && !validateHandler(nativeListener, delegate, target, arguments)) {\n return;\n }\n var options = arguments[2];\n if (blackListedEvents) {\n // check black list\n for (var i = 0; i < blackListedEvents.length; i++) {\n if (eventName === blackListedEvents[i]) {\n return nativeListener.apply(this, arguments);\n }\n }\n }\n var capture;\n var once = false;\n if (options === undefined) {\n capture = false;\n }\n else if (options === true) {\n capture = true;\n }\n else if (options === false) {\n capture = false;\n }\n else {\n capture = options ? !!options.capture : false;\n once = options ? !!options.once : false;\n }\n var zone = Zone.current;\n var symbolEventNames = zoneSymbolEventNames$1[eventName];\n var symbolEventName;\n if (!symbolEventNames) {\n // the code is duplicate, but I just want to get some better performance\n var falseEventName = (eventNameToString ? eventNameToString(eventName) : eventName) + FALSE_STR;\n var trueEventName = (eventNameToString ? eventNameToString(eventName) : eventName) + TRUE_STR;\n var symbol = ZONE_SYMBOL_PREFIX + falseEventName;\n var symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName;\n zoneSymbolEventNames$1[eventName] = {};\n zoneSymbolEventNames$1[eventName][FALSE_STR] = symbol;\n zoneSymbolEventNames$1[eventName][TRUE_STR] = symbolCapture;\n symbolEventName = capture ? symbolCapture : symbol;\n }\n else {\n symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR];\n }\n var existingTasks = target[symbolEventName];\n var isExisting = false;\n if (existingTasks) {\n // already have task registered\n isExisting = true;\n if (checkDuplicate) {\n for (var i = 0; i < existingTasks.length; i++) {\n if (compare(existingTasks[i], delegate)) {\n // same callback, same capture, same event name, just return\n return;\n }\n }\n }\n }\n else {\n existingTasks = target[symbolEventName] = [];\n }\n var source;\n var constructorName = target.constructor['name'];\n var targetSource = globalSources[constructorName];\n if (targetSource) {\n source = targetSource[eventName];\n }\n if (!source) {\n source = constructorName + addSource +\n (eventNameToString ? eventNameToString(eventName) : eventName);\n }\n // do not create a new object as task.data to pass those things\n // just use the global shared one\n taskData.options = options;\n if (once) {\n // if addEventListener with once options, we don't pass it to\n // native addEventListener, instead we keep the once setting\n // and handle ourselves.\n taskData.options.once = false;\n }\n taskData.target = target;\n taskData.capture = capture;\n taskData.eventName = eventName;\n taskData.isExisting = isExisting;\n var data = useGlobalCallback ? OPTIMIZED_ZONE_EVENT_TASK_DATA : undefined;\n // keep taskData into data to allow onScheduleEventTask to access the task information\n if (data) {\n data.taskData = taskData;\n }\n var task = zone.scheduleEventTask(source, delegate, data, customScheduleFn, customCancelFn);\n // should clear taskData.target to avoid memory leak\n // issue, https://github.com/angular/angular/issues/20442\n taskData.target = null;\n // need to clear up taskData because it is a global object\n if (data) {\n data.taskData = null;\n }\n // have to save those information to task in case\n // application may call task.zone.cancelTask() directly\n if (once) {\n options.once = true;\n }\n if (!(!passiveSupported && typeof task.options === 'boolean')) {\n // if not support passive, and we pass an option object\n // to addEventListener, we should save the options to task\n task.options = options;\n }\n task.target = target;\n task.capture = capture;\n task.eventName = eventName;\n if (isHandleEvent) {\n // save original delegate for compare to check duplicate\n task.originalDelegate = delegate;\n }\n if (!prepend) {\n existingTasks.push(task);\n }\n else {\n existingTasks.unshift(task);\n }\n if (returnTarget) {\n return target;\n }\n };\n };\n proto[ADD_EVENT_LISTENER] = makeAddListener(nativeAddEventListener, ADD_EVENT_LISTENER_SOURCE, customSchedule, customCancel, returnTarget);\n if (nativePrependEventListener) {\n proto[PREPEND_EVENT_LISTENER] = makeAddListener(nativePrependEventListener, PREPEND_EVENT_LISTENER_SOURCE, customSchedulePrepend, customCancel, returnTarget, true);\n }\n proto[REMOVE_EVENT_LISTENER] = function () {\n var target = this || _global;\n var eventName = arguments[0];\n var options = arguments[2];\n var capture;\n if (options === undefined) {\n capture = false;\n }\n else if (options === true) {\n capture = true;\n }\n else if (options === false) {\n capture = false;\n }\n else {\n capture = options ? !!options.capture : false;\n }\n var delegate = arguments[1];\n if (!delegate) {\n return nativeRemoveEventListener.apply(this, arguments);\n }\n if (validateHandler &&\n !validateHandler(nativeRemoveEventListener, delegate, target, arguments)) {\n return;\n }\n var symbolEventNames = zoneSymbolEventNames$1[eventName];\n var symbolEventName;\n if (symbolEventNames) {\n symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR];\n }\n var existingTasks = symbolEventName && target[symbolEventName];\n if (existingTasks) {\n for (var i = 0; i < existingTasks.length; i++) {\n var existingTask = existingTasks[i];\n if (compare(existingTask, delegate)) {\n existingTasks.splice(i, 1);\n // set isRemoved to data for faster invokeTask check\n existingTask.isRemoved = true;\n if (existingTasks.length === 0) {\n // all tasks for the eventName + capture have gone,\n // remove globalZoneAwareCallback and remove the task cache from target\n existingTask.allRemoved = true;\n target[symbolEventName] = null;\n }\n existingTask.zone.cancelTask(existingTask);\n if (returnTarget) {\n return target;\n }\n return;\n }\n }\n }\n // issue 930, didn't find the event name or callback\n // from zone kept existingTasks, the callback maybe\n // added outside of zone, we need to call native removeEventListener\n // to try to remove it.\n return nativeRemoveEventListener.apply(this, arguments);\n };\n proto[LISTENERS_EVENT_LISTENER] = function () {\n var target = this || _global;\n var eventName = arguments[0];\n var listeners = [];\n var tasks = findEventTasks(target, eventNameToString ? eventNameToString(eventName) : eventName);\n for (var i = 0; i < tasks.length; i++) {\n var task = tasks[i];\n var delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n listeners.push(delegate);\n }\n return listeners;\n };\n proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER] = function () {\n var target = this || _global;\n var eventName = arguments[0];\n if (!eventName) {\n var keys = Object.keys(target);\n for (var i = 0; i < keys.length; i++) {\n var prop = keys[i];\n var match = EVENT_NAME_SYMBOL_REGX.exec(prop);\n var evtName = match && match[1];\n // in nodejs EventEmitter, removeListener event is\n // used for monitoring the removeListener call,\n // so just keep removeListener eventListener until\n // all other eventListeners are removed\n if (evtName && evtName !== 'removeListener') {\n this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, evtName);\n }\n }\n // remove removeListener listener finally\n this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, 'removeListener');\n }\n else {\n var symbolEventNames = zoneSymbolEventNames$1[eventName];\n if (symbolEventNames) {\n var symbolEventName = symbolEventNames[FALSE_STR];\n var symbolCaptureEventName = symbolEventNames[TRUE_STR];\n var tasks = target[symbolEventName];\n var captureTasks = target[symbolCaptureEventName];\n if (tasks) {\n var removeTasks = tasks.slice();\n for (var i = 0; i < removeTasks.length; i++) {\n var task = removeTasks[i];\n var delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options);\n }\n }\n if (captureTasks) {\n var removeTasks = captureTasks.slice();\n for (var i = 0; i < removeTasks.length; i++) {\n var task = removeTasks[i];\n var delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options);\n }\n }\n }\n }\n if (returnTarget) {\n return this;\n }\n };\n // for native toString patch\n attachOriginToPatched(proto[ADD_EVENT_LISTENER], nativeAddEventListener);\n attachOriginToPatched(proto[REMOVE_EVENT_LISTENER], nativeRemoveEventListener);\n if (nativeRemoveAllListeners) {\n attachOriginToPatched(proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER], nativeRemoveAllListeners);\n }\n if (nativeListeners) {\n attachOriginToPatched(proto[LISTENERS_EVENT_LISTENER], nativeListeners);\n }\n return true;\n }\n var results = [];\n for (var i = 0; i < apis.length; i++) {\n results[i] = patchEventTargetMethods(apis[i], patchOptions);\n }\n return results;\n}\nfunction findEventTasks(target, eventName) {\n var foundTasks = [];\n for (var prop in target) {\n var match = EVENT_NAME_SYMBOL_REGX.exec(prop);\n var evtName = match && match[1];\n if (evtName && (!eventName || evtName === eventName)) {\n var tasks = target[prop];\n if (tasks) {\n for (var i = 0; i < tasks.length; i++) {\n foundTasks.push(tasks[i]);\n }\n }\n }\n }\n return foundTasks;\n}\nfunction patchEventPrototype(global, api) {\n var Event = global['Event'];\n if (Event && Event.prototype) {\n api.patchMethod(Event.prototype, 'stopImmediatePropagation', function (delegate) { return function (self, args) {\n self[IMMEDIATE_PROPAGATION_SYMBOL] = true;\n // we need to call the native stopImmediatePropagation\n // in case in some hybrid application, some part of\n // application will be controlled by zone, some are not\n delegate && delegate.apply(self, args);\n }; });\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction patchCallbacks(api, target, targetName, method, callbacks) {\n var symbol = Zone.__symbol__(method);\n if (target[symbol]) {\n return;\n }\n var nativeDelegate = target[symbol] = target[method];\n target[method] = function (name, opts, options) {\n if (opts && opts.prototype) {\n callbacks.forEach(function (callback) {\n var source = targetName + \".\" + method + \"::\" + callback;\n var prototype = opts.prototype;\n if (prototype.hasOwnProperty(callback)) {\n var descriptor = api.ObjectGetOwnPropertyDescriptor(prototype, callback);\n if (descriptor && descriptor.value) {\n descriptor.value = api.wrapWithCurrentZone(descriptor.value, source);\n api._redefineProperty(opts.prototype, callback, descriptor);\n }\n else if (prototype[callback]) {\n prototype[callback] = api.wrapWithCurrentZone(prototype[callback], source);\n }\n }\n else if (prototype[callback]) {\n prototype[callback] = api.wrapWithCurrentZone(prototype[callback], source);\n }\n });\n }\n return nativeDelegate.call(target, name, opts, options);\n };\n api.attachOriginToPatched(target[method], nativeDelegate);\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/*\n * This is necessary for Chrome and Chrome mobile, to enable\n * things like redefining `createdCallback` on an element.\n */\nvar zoneSymbol$1 = Zone.__symbol__;\nvar _defineProperty = Object[zoneSymbol$1('defineProperty')] = Object.defineProperty;\nvar _getOwnPropertyDescriptor = Object[zoneSymbol$1('getOwnPropertyDescriptor')] =\n Object.getOwnPropertyDescriptor;\nvar _create = Object.create;\nvar unconfigurablesKey = zoneSymbol$1('unconfigurables');\nfunction propertyPatch() {\n Object.defineProperty = function (obj, prop, desc) {\n if (isUnconfigurable(obj, prop)) {\n throw new TypeError('Cannot assign to read only property \\'' + prop + '\\' of ' + obj);\n }\n var originalConfigurableFlag = desc.configurable;\n if (prop !== 'prototype') {\n desc = rewriteDescriptor(obj, prop, desc);\n }\n return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag);\n };\n Object.defineProperties = function (obj, props) {\n Object.keys(props).forEach(function (prop) {\n Object.defineProperty(obj, prop, props[prop]);\n });\n return obj;\n };\n Object.create = function (obj, proto) {\n if (typeof proto === 'object' && !Object.isFrozen(proto)) {\n Object.keys(proto).forEach(function (prop) {\n proto[prop] = rewriteDescriptor(obj, prop, proto[prop]);\n });\n }\n return _create(obj, proto);\n };\n Object.getOwnPropertyDescriptor = function (obj, prop) {\n var desc = _getOwnPropertyDescriptor(obj, prop);\n if (desc && isUnconfigurable(obj, prop)) {\n desc.configurable = false;\n }\n return desc;\n };\n}\nfunction _redefineProperty(obj, prop, desc) {\n var originalConfigurableFlag = desc.configurable;\n desc = rewriteDescriptor(obj, prop, desc);\n return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag);\n}\nfunction isUnconfigurable(obj, prop) {\n return obj && obj[unconfigurablesKey] && obj[unconfigurablesKey][prop];\n}\nfunction rewriteDescriptor(obj, prop, desc) {\n // issue-927, if the desc is frozen, don't try to change the desc\n if (!Object.isFrozen(desc)) {\n desc.configurable = true;\n }\n if (!desc.configurable) {\n // issue-927, if the obj is frozen, don't try to set the desc to obj\n if (!obj[unconfigurablesKey] && !Object.isFrozen(obj)) {\n _defineProperty(obj, unconfigurablesKey, { writable: true, value: {} });\n }\n if (obj[unconfigurablesKey]) {\n obj[unconfigurablesKey][prop] = true;\n }\n }\n return desc;\n}\nfunction _tryDefineProperty(obj, prop, desc, originalConfigurableFlag) {\n try {\n return _defineProperty(obj, prop, desc);\n }\n catch (error) {\n if (desc.configurable) {\n // In case of errors, when the configurable flag was likely set by rewriteDescriptor(), let's\n // retry with the original flag value\n if (typeof originalConfigurableFlag == 'undefined') {\n delete desc.configurable;\n }\n else {\n desc.configurable = originalConfigurableFlag;\n }\n try {\n return _defineProperty(obj, prop, desc);\n }\n catch (error) {\n var descJson = null;\n try {\n descJson = JSON.stringify(desc);\n }\n catch (error) {\n descJson = desc.toString();\n }\n console.log(\"Attempting to configure '\" + prop + \"' with descriptor '\" + descJson + \"' on object '\" + obj + \"' and got error, giving up: \" + error);\n }\n }\n else {\n throw error;\n }\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {globalThis}\n */\nvar globalEventHandlersEventNames = [\n 'abort',\n 'animationcancel',\n 'animationend',\n 'animationiteration',\n 'auxclick',\n 'beforeinput',\n 'blur',\n 'cancel',\n 'canplay',\n 'canplaythrough',\n 'change',\n 'compositionstart',\n 'compositionupdate',\n 'compositionend',\n 'cuechange',\n 'click',\n 'close',\n 'contextmenu',\n 'curechange',\n 'dblclick',\n 'drag',\n 'dragend',\n 'dragenter',\n 'dragexit',\n 'dragleave',\n 'dragover',\n 'drop',\n 'durationchange',\n 'emptied',\n 'ended',\n 'error',\n 'focus',\n 'focusin',\n 'focusout',\n 'gotpointercapture',\n 'input',\n 'invalid',\n 'keydown',\n 'keypress',\n 'keyup',\n 'load',\n 'loadstart',\n 'loadeddata',\n 'loadedmetadata',\n 'lostpointercapture',\n 'mousedown',\n 'mouseenter',\n 'mouseleave',\n 'mousemove',\n 'mouseout',\n 'mouseover',\n 'mouseup',\n 'mousewheel',\n 'orientationchange',\n 'pause',\n 'play',\n 'playing',\n 'pointercancel',\n 'pointerdown',\n 'pointerenter',\n 'pointerleave',\n 'pointerlockchange',\n 'mozpointerlockchange',\n 'webkitpointerlockerchange',\n 'pointerlockerror',\n 'mozpointerlockerror',\n 'webkitpointerlockerror',\n 'pointermove',\n 'pointout',\n 'pointerover',\n 'pointerup',\n 'progress',\n 'ratechange',\n 'reset',\n 'resize',\n 'scroll',\n 'seeked',\n 'seeking',\n 'select',\n 'selectionchange',\n 'selectstart',\n 'show',\n 'sort',\n 'stalled',\n 'submit',\n 'suspend',\n 'timeupdate',\n 'volumechange',\n 'touchcancel',\n 'touchmove',\n 'touchstart',\n 'touchend',\n 'transitioncancel',\n 'transitionend',\n 'waiting',\n 'wheel'\n];\nvar documentEventNames = [\n 'afterscriptexecute', 'beforescriptexecute', 'DOMContentLoaded', 'freeze', 'fullscreenchange',\n 'mozfullscreenchange', 'webkitfullscreenchange', 'msfullscreenchange', 'fullscreenerror',\n 'mozfullscreenerror', 'webkitfullscreenerror', 'msfullscreenerror', 'readystatechange',\n 'visibilitychange', 'resume'\n];\nvar windowEventNames = [\n 'absolutedeviceorientation',\n 'afterinput',\n 'afterprint',\n 'appinstalled',\n 'beforeinstallprompt',\n 'beforeprint',\n 'beforeunload',\n 'devicelight',\n 'devicemotion',\n 'deviceorientation',\n 'deviceorientationabsolute',\n 'deviceproximity',\n 'hashchange',\n 'languagechange',\n 'message',\n 'mozbeforepaint',\n 'offline',\n 'online',\n 'paint',\n 'pageshow',\n 'pagehide',\n 'popstate',\n 'rejectionhandled',\n 'storage',\n 'unhandledrejection',\n 'unload',\n 'userproximity',\n 'vrdisplyconnected',\n 'vrdisplaydisconnected',\n 'vrdisplaypresentchange'\n];\nvar htmlElementEventNames = [\n 'beforecopy', 'beforecut', 'beforepaste', 'copy', 'cut', 'paste', 'dragstart', 'loadend',\n 'animationstart', 'search', 'transitionrun', 'transitionstart', 'webkitanimationend',\n 'webkitanimationiteration', 'webkitanimationstart', 'webkittransitionend'\n];\nvar mediaElementEventNames = ['encrypted', 'waitingforkey', 'msneedkey', 'mozinterruptbegin', 'mozinterruptend'];\nvar ieElementEventNames = [\n 'activate',\n 'afterupdate',\n 'ariarequest',\n 'beforeactivate',\n 'beforedeactivate',\n 'beforeeditfocus',\n 'beforeupdate',\n 'cellchange',\n 'controlselect',\n 'dataavailable',\n 'datasetchanged',\n 'datasetcomplete',\n 'errorupdate',\n 'filterchange',\n 'layoutcomplete',\n 'losecapture',\n 'move',\n 'moveend',\n 'movestart',\n 'propertychange',\n 'resizeend',\n 'resizestart',\n 'rowenter',\n 'rowexit',\n 'rowsdelete',\n 'rowsinserted',\n 'command',\n 'compassneedscalibration',\n 'deactivate',\n 'help',\n 'mscontentzoom',\n 'msmanipulationstatechanged',\n 'msgesturechange',\n 'msgesturedoubletap',\n 'msgestureend',\n 'msgesturehold',\n 'msgesturestart',\n 'msgesturetap',\n 'msgotpointercapture',\n 'msinertiastart',\n 'mslostpointercapture',\n 'mspointercancel',\n 'mspointerdown',\n 'mspointerenter',\n 'mspointerhover',\n 'mspointerleave',\n 'mspointermove',\n 'mspointerout',\n 'mspointerover',\n 'mspointerup',\n 'pointerout',\n 'mssitemodejumplistitemremoved',\n 'msthumbnailclick',\n 'stop',\n 'storagecommit'\n];\nvar webglEventNames = ['webglcontextrestored', 'webglcontextlost', 'webglcontextcreationerror'];\nvar formEventNames = ['autocomplete', 'autocompleteerror'];\nvar detailEventNames = ['toggle'];\nvar frameEventNames = ['load'];\nvar frameSetEventNames = ['blur', 'error', 'focus', 'load', 'resize', 'scroll', 'messageerror'];\nvar marqueeEventNames = ['bounce', 'finish', 'start'];\nvar XMLHttpRequestEventNames = [\n 'loadstart', 'progress', 'abort', 'error', 'load', 'progress', 'timeout', 'loadend',\n 'readystatechange'\n];\nvar IDBIndexEventNames = ['upgradeneeded', 'complete', 'abort', 'success', 'error', 'blocked', 'versionchange', 'close'];\nvar websocketEventNames = ['close', 'error', 'open', 'message'];\nvar workerEventNames = ['error', 'message'];\nvar eventNames = globalEventHandlersEventNames.concat(webglEventNames, formEventNames, detailEventNames, documentEventNames, windowEventNames, htmlElementEventNames, ieElementEventNames);\nfunction filterProperties(target, onProperties, ignoreProperties) {\n if (!ignoreProperties || ignoreProperties.length === 0) {\n return onProperties;\n }\n var tip = ignoreProperties.filter(function (ip) { return ip.target === target; });\n if (!tip || tip.length === 0) {\n return onProperties;\n }\n var targetIgnoreProperties = tip[0].ignoreProperties;\n return onProperties.filter(function (op) { return targetIgnoreProperties.indexOf(op) === -1; });\n}\nfunction patchFilteredProperties(target, onProperties, ignoreProperties, prototype) {\n // check whether target is available, sometimes target will be undefined\n // because different browser or some 3rd party plugin.\n if (!target) {\n return;\n }\n var filteredProperties = filterProperties(target, onProperties, ignoreProperties);\n patchOnProperties(target, filteredProperties, prototype);\n}\nfunction propertyDescriptorPatch(api, _global) {\n if (isNode && !isMix) {\n return;\n }\n if (Zone[api.symbol('patchEvents')]) {\n // events are already been patched by legacy patch.\n return;\n }\n var supportsWebSocket = typeof WebSocket !== 'undefined';\n var ignoreProperties = _global['__Zone_ignore_on_properties'];\n // for browsers that we can patch the descriptor: Chrome & Firefox\n if (isBrowser) {\n var internalWindow = window;\n var ignoreErrorProperties = isIE ? [{ target: internalWindow, ignoreProperties: ['error'] }] : [];\n // in IE/Edge, onProp not exist in window object, but in WindowPrototype\n // so we need to pass WindowPrototype to check onProp exist or not\n patchFilteredProperties(internalWindow, eventNames.concat(['messageerror']), ignoreProperties ? ignoreProperties.concat(ignoreErrorProperties) : ignoreProperties, ObjectGetPrototypeOf(internalWindow));\n patchFilteredProperties(Document.prototype, eventNames, ignoreProperties);\n if (typeof internalWindow['SVGElement'] !== 'undefined') {\n patchFilteredProperties(internalWindow['SVGElement'].prototype, eventNames, ignoreProperties);\n }\n patchFilteredProperties(Element.prototype, eventNames, ignoreProperties);\n patchFilteredProperties(HTMLElement.prototype, eventNames, ignoreProperties);\n patchFilteredProperties(HTMLMediaElement.prototype, mediaElementEventNames, ignoreProperties);\n patchFilteredProperties(HTMLFrameSetElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties);\n patchFilteredProperties(HTMLBodyElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties);\n patchFilteredProperties(HTMLFrameElement.prototype, frameEventNames, ignoreProperties);\n patchFilteredProperties(HTMLIFrameElement.prototype, frameEventNames, ignoreProperties);\n var HTMLMarqueeElement_1 = internalWindow['HTMLMarqueeElement'];\n if (HTMLMarqueeElement_1) {\n patchFilteredProperties(HTMLMarqueeElement_1.prototype, marqueeEventNames, ignoreProperties);\n }\n var Worker_1 = internalWindow['Worker'];\n if (Worker_1) {\n patchFilteredProperties(Worker_1.prototype, workerEventNames, ignoreProperties);\n }\n }\n var XMLHttpRequest = _global['XMLHttpRequest'];\n if (XMLHttpRequest) {\n // XMLHttpRequest is not available in ServiceWorker, so we need to check here\n patchFilteredProperties(XMLHttpRequest.prototype, XMLHttpRequestEventNames, ignoreProperties);\n }\n var XMLHttpRequestEventTarget = _global['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget) {\n patchFilteredProperties(XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype, XMLHttpRequestEventNames, ignoreProperties);\n }\n if (typeof IDBIndex !== 'undefined') {\n patchFilteredProperties(IDBIndex.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBRequest.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBOpenDBRequest.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBDatabase.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBTransaction.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBCursor.prototype, IDBIndexEventNames, ignoreProperties);\n }\n if (supportsWebSocket) {\n patchFilteredProperties(WebSocket.prototype, websocketEventNames, ignoreProperties);\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nZone.__load_patch('util', function (global, Zone, api) {\n api.patchOnProperties = patchOnProperties;\n api.patchMethod = patchMethod;\n api.bindArguments = bindArguments;\n api.patchMacroTask = patchMacroTask;\n // In earlier version of zone.js (<0.9.0), we use env name `__zone_symbol__BLACK_LISTED_EVENTS` to\n // define which events will not be patched by `Zone.js`.\n // In newer version (>=0.9.0), we change the env name to `__zone_symbol__UNPATCHED_EVENTS` to keep\n // the name consistent with angular repo.\n // The `__zone_symbol__BLACK_LISTED_EVENTS` is deprecated, but it is still be supported for\n // backwards compatibility.\n var SYMBOL_BLACK_LISTED_EVENTS = Zone.__symbol__('BLACK_LISTED_EVENTS');\n var SYMBOL_UNPATCHED_EVENTS = Zone.__symbol__('UNPATCHED_EVENTS');\n if (global[SYMBOL_UNPATCHED_EVENTS]) {\n global[SYMBOL_BLACK_LISTED_EVENTS] = global[SYMBOL_UNPATCHED_EVENTS];\n }\n if (global[SYMBOL_BLACK_LISTED_EVENTS]) {\n Zone[SYMBOL_BLACK_LISTED_EVENTS] = Zone[SYMBOL_UNPATCHED_EVENTS] =\n global[SYMBOL_BLACK_LISTED_EVENTS];\n }\n api.patchEventPrototype = patchEventPrototype;\n api.patchEventTarget = patchEventTarget;\n api.isIEOrEdge = isIEOrEdge;\n api.ObjectDefineProperty = ObjectDefineProperty;\n api.ObjectGetOwnPropertyDescriptor = ObjectGetOwnPropertyDescriptor;\n api.ObjectCreate = ObjectCreate;\n api.ArraySlice = ArraySlice;\n api.patchClass = patchClass;\n api.wrapWithCurrentZone = wrapWithCurrentZone;\n api.filterProperties = filterProperties;\n api.attachOriginToPatched = attachOriginToPatched;\n api._redefineProperty = _redefineProperty;\n api.patchCallbacks = patchCallbacks;\n api.getGlobalObjects = function () { return ({\n globalSources: globalSources,\n zoneSymbolEventNames: zoneSymbolEventNames$1,\n eventNames: eventNames,\n isBrowser: isBrowser,\n isMix: isMix,\n isNode: isNode,\n TRUE_STR: TRUE_STR,\n FALSE_STR: FALSE_STR,\n ZONE_SYMBOL_PREFIX: ZONE_SYMBOL_PREFIX,\n ADD_EVENT_LISTENER_STR: ADD_EVENT_LISTENER_STR,\n REMOVE_EVENT_LISTENER_STR: REMOVE_EVENT_LISTENER_STR\n }); };\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction eventTargetLegacyPatch(_global, api) {\n var _a = api.getGlobalObjects(), eventNames = _a.eventNames, globalSources = _a.globalSources, zoneSymbolEventNames = _a.zoneSymbolEventNames, TRUE_STR = _a.TRUE_STR, FALSE_STR = _a.FALSE_STR, ZONE_SYMBOL_PREFIX = _a.ZONE_SYMBOL_PREFIX;\n var WTF_ISSUE_555 = 'Anchor,Area,Audio,BR,Base,BaseFont,Body,Button,Canvas,Content,DList,Directory,Div,Embed,FieldSet,Font,Form,Frame,FrameSet,HR,Head,Heading,Html,IFrame,Image,Input,Keygen,LI,Label,Legend,Link,Map,Marquee,Media,Menu,Meta,Meter,Mod,OList,Object,OptGroup,Option,Output,Paragraph,Pre,Progress,Quote,Script,Select,Source,Span,Style,TableCaption,TableCell,TableCol,Table,TableRow,TableSection,TextArea,Title,Track,UList,Unknown,Video';\n var NO_EVENT_TARGET = 'ApplicationCache,EventSource,FileReader,InputMethodContext,MediaController,MessagePort,Node,Performance,SVGElementInstance,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebKitNamedFlow,Window,Worker,WorkerGlobalScope,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload,IDBRequest,IDBOpenDBRequest,IDBDatabase,IDBTransaction,IDBCursor,DBIndex,WebSocket'\n .split(',');\n var EVENT_TARGET = 'EventTarget';\n var apis = [];\n var isWtf = _global['wtf'];\n var WTF_ISSUE_555_ARRAY = WTF_ISSUE_555.split(',');\n if (isWtf) {\n // Workaround for: https://github.com/google/tracing-framework/issues/555\n apis = WTF_ISSUE_555_ARRAY.map(function (v) { return 'HTML' + v + 'Element'; }).concat(NO_EVENT_TARGET);\n }\n else if (_global[EVENT_TARGET]) {\n apis.push(EVENT_TARGET);\n }\n else {\n // Note: EventTarget is not available in all browsers,\n // if it's not available, we instead patch the APIs in the IDL that inherit from EventTarget\n apis = NO_EVENT_TARGET;\n }\n var isDisableIECheck = _global['__Zone_disable_IE_check'] || false;\n var isEnableCrossContextCheck = _global['__Zone_enable_cross_context_check'] || false;\n var ieOrEdge = api.isIEOrEdge();\n var ADD_EVENT_LISTENER_SOURCE = '.addEventListener:';\n var FUNCTION_WRAPPER = '[object FunctionWrapper]';\n var BROWSER_TOOLS = 'function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }';\n // predefine all __zone_symbol__ + eventName + true/false string\n for (var i = 0; i < eventNames.length; i++) {\n var eventName = eventNames[i];\n var falseEventName = eventName + FALSE_STR;\n var trueEventName = eventName + TRUE_STR;\n var symbol = ZONE_SYMBOL_PREFIX + falseEventName;\n var symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName;\n zoneSymbolEventNames[eventName] = {};\n zoneSymbolEventNames[eventName][FALSE_STR] = symbol;\n zoneSymbolEventNames[eventName][TRUE_STR] = symbolCapture;\n }\n // predefine all task.source string\n for (var i = 0; i < WTF_ISSUE_555.length; i++) {\n var target = WTF_ISSUE_555_ARRAY[i];\n var targets = globalSources[target] = {};\n for (var j = 0; j < eventNames.length; j++) {\n var eventName = eventNames[j];\n targets[eventName] = target + ADD_EVENT_LISTENER_SOURCE + eventName;\n }\n }\n var checkIEAndCrossContext = function (nativeDelegate, delegate, target, args) {\n if (!isDisableIECheck && ieOrEdge) {\n if (isEnableCrossContextCheck) {\n try {\n var testString = delegate.toString();\n if ((testString === FUNCTION_WRAPPER || testString == BROWSER_TOOLS)) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n catch (error) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n else {\n var testString = delegate.toString();\n if ((testString === FUNCTION_WRAPPER || testString == BROWSER_TOOLS)) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n }\n else if (isEnableCrossContextCheck) {\n try {\n delegate.toString();\n }\n catch (error) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n return true;\n };\n var apiTypes = [];\n for (var i = 0; i < apis.length; i++) {\n var type = _global[apis[i]];\n apiTypes.push(type && type.prototype);\n }\n // vh is validateHandler to check event handler\n // is valid or not(for security check)\n api.patchEventTarget(_global, apiTypes, { vh: checkIEAndCrossContext });\n Zone[api.symbol('patchEventTarget')] = !!_global[EVENT_TARGET];\n return true;\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// we have to patch the instance since the proto is non-configurable\nfunction apply(api, _global) {\n var _a = api.getGlobalObjects(), ADD_EVENT_LISTENER_STR = _a.ADD_EVENT_LISTENER_STR, REMOVE_EVENT_LISTENER_STR = _a.REMOVE_EVENT_LISTENER_STR;\n var WS = _global.WebSocket;\n // On Safari window.EventTarget doesn't exist so need to patch WS add/removeEventListener\n // On older Chrome, no need since EventTarget was already patched\n if (!_global.EventTarget) {\n api.patchEventTarget(_global, [WS.prototype]);\n }\n _global.WebSocket = function (x, y) {\n var socket = arguments.length > 1 ? new WS(x, y) : new WS(x);\n var proxySocket;\n var proxySocketProto;\n // Safari 7.0 has non-configurable own 'onmessage' and friends properties on the socket instance\n var onmessageDesc = api.ObjectGetOwnPropertyDescriptor(socket, 'onmessage');\n if (onmessageDesc && onmessageDesc.configurable === false) {\n proxySocket = api.ObjectCreate(socket);\n // socket have own property descriptor 'onopen', 'onmessage', 'onclose', 'onerror'\n // but proxySocket not, so we will keep socket as prototype and pass it to\n // patchOnProperties method\n proxySocketProto = socket;\n [ADD_EVENT_LISTENER_STR, REMOVE_EVENT_LISTENER_STR, 'send', 'close'].forEach(function (propName) {\n proxySocket[propName] = function () {\n var args = api.ArraySlice.call(arguments);\n if (propName === ADD_EVENT_LISTENER_STR || propName === REMOVE_EVENT_LISTENER_STR) {\n var eventName = args.length > 0 ? args[0] : undefined;\n if (eventName) {\n var propertySymbol = Zone.__symbol__('ON_PROPERTY' + eventName);\n socket[propertySymbol] = proxySocket[propertySymbol];\n }\n }\n return socket[propName].apply(socket, args);\n };\n });\n }\n else {\n // we can patch the real socket\n proxySocket = socket;\n }\n api.patchOnProperties(proxySocket, ['close', 'error', 'message', 'open'], proxySocketProto);\n return proxySocket;\n };\n var globalWebSocket = _global['WebSocket'];\n for (var prop in WS) {\n globalWebSocket[prop] = WS[prop];\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {globalThis}\n */\nfunction propertyDescriptorLegacyPatch(api, _global) {\n var _a = api.getGlobalObjects(), isNode = _a.isNode, isMix = _a.isMix;\n if (isNode && !isMix) {\n return;\n }\n if (!canPatchViaPropertyDescriptor(api, _global)) {\n var supportsWebSocket = typeof WebSocket !== 'undefined';\n // Safari, Android browsers (Jelly Bean)\n patchViaCapturingAllTheEvents(api);\n api.patchClass('XMLHttpRequest');\n if (supportsWebSocket) {\n apply(api, _global);\n }\n Zone[api.symbol('patchEvents')] = true;\n }\n}\nfunction canPatchViaPropertyDescriptor(api, _global) {\n var _a = api.getGlobalObjects(), isBrowser = _a.isBrowser, isMix = _a.isMix;\n if ((isBrowser || isMix) &&\n !api.ObjectGetOwnPropertyDescriptor(HTMLElement.prototype, 'onclick') &&\n typeof Element !== 'undefined') {\n // WebKit https://bugs.webkit.org/show_bug.cgi?id=134364\n // IDL interface attributes are not configurable\n var desc = api.ObjectGetOwnPropertyDescriptor(Element.prototype, 'onclick');\n if (desc && !desc.configurable)\n return false;\n // try to use onclick to detect whether we can patch via propertyDescriptor\n // because XMLHttpRequest is not available in service worker\n if (desc) {\n api.ObjectDefineProperty(Element.prototype, 'onclick', {\n enumerable: true,\n configurable: true,\n get: function () {\n return true;\n }\n });\n var div = document.createElement('div');\n var result = !!div.onclick;\n api.ObjectDefineProperty(Element.prototype, 'onclick', desc);\n return result;\n }\n }\n var XMLHttpRequest = _global['XMLHttpRequest'];\n if (!XMLHttpRequest) {\n // XMLHttpRequest is not available in service worker\n return false;\n }\n var ON_READY_STATE_CHANGE = 'onreadystatechange';\n var XMLHttpRequestPrototype = XMLHttpRequest.prototype;\n var xhrDesc = api.ObjectGetOwnPropertyDescriptor(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE);\n // add enumerable and configurable here because in opera\n // by default XMLHttpRequest.prototype.onreadystatechange is undefined\n // without adding enumerable and configurable will cause onreadystatechange\n // non-configurable\n // and if XMLHttpRequest.prototype.onreadystatechange is undefined,\n // we should set a real desc instead a fake one\n if (xhrDesc) {\n api.ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, {\n enumerable: true,\n configurable: true,\n get: function () {\n return true;\n }\n });\n var req = new XMLHttpRequest();\n var result = !!req.onreadystatechange;\n // restore original desc\n api.ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, xhrDesc || {});\n return result;\n }\n else {\n var SYMBOL_FAKE_ONREADYSTATECHANGE_1 = api.symbol('fake');\n api.ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, {\n enumerable: true,\n configurable: true,\n get: function () {\n return this[SYMBOL_FAKE_ONREADYSTATECHANGE_1];\n },\n set: function (value) {\n this[SYMBOL_FAKE_ONREADYSTATECHANGE_1] = value;\n }\n });\n var req = new XMLHttpRequest();\n var detectFunc = function () { };\n req.onreadystatechange = detectFunc;\n var result = req[SYMBOL_FAKE_ONREADYSTATECHANGE_1] === detectFunc;\n req.onreadystatechange = null;\n return result;\n }\n}\n// Whenever any eventListener fires, we check the eventListener target and all parents\n// for `onwhatever` properties and replace them with zone-bound functions\n// - Chrome (for now)\nfunction patchViaCapturingAllTheEvents(api) {\n var eventNames = api.getGlobalObjects().eventNames;\n var unboundKey = api.symbol('unbound');\n var _loop_1 = function (i) {\n var property = eventNames[i];\n var onproperty = 'on' + property;\n self.addEventListener(property, function (event) {\n var elt = event.target, bound, source;\n if (elt) {\n source = elt.constructor['name'] + '.' + onproperty;\n }\n else {\n source = 'unknown.' + onproperty;\n }\n while (elt) {\n if (elt[onproperty] && !elt[onproperty][unboundKey]) {\n bound = api.wrapWithCurrentZone(elt[onproperty], source);\n bound[unboundKey] = elt[onproperty];\n elt[onproperty] = bound;\n }\n elt = elt.parentElement;\n }\n }, true);\n };\n for (var i = 0; i < eventNames.length; i++) {\n _loop_1(i);\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction registerElementPatch(_global, api) {\n var _a = api.getGlobalObjects(), isBrowser = _a.isBrowser, isMix = _a.isMix;\n if ((!isBrowser && !isMix) || !('registerElement' in _global.document)) {\n return;\n }\n var callbacks = ['createdCallback', 'attachedCallback', 'detachedCallback', 'attributeChangedCallback'];\n api.patchCallbacks(api, document, 'Document', 'registerElement', callbacks);\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\n(function (_global) {\n _global['__zone_symbol__legacyPatch'] = function () {\n var Zone = _global['Zone'];\n Zone.__load_patch('registerElement', function (global, Zone, api) {\n registerElementPatch(global, api);\n });\n Zone.__load_patch('EventTargetLegacy', function (global, Zone, api) {\n eventTargetLegacyPatch(global, api);\n propertyDescriptorLegacyPatch(api, global);\n });\n };\n})(typeof window !== 'undefined' && window || typeof self !== 'undefined' && self || global);\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\nvar taskSymbol = zoneSymbol('zoneTask');\nfunction patchTimer(window, setName, cancelName, nameSuffix) {\n var setNative = null;\n var clearNative = null;\n setName += nameSuffix;\n cancelName += nameSuffix;\n var tasksByHandleId = {};\n function scheduleTask(task) {\n var data = task.data;\n function timer() {\n try {\n task.invoke.apply(this, arguments);\n }\n finally {\n // issue-934, task will be cancelled\n // even it is a periodic task such as\n // setInterval\n if (!(task.data && task.data.isPeriodic)) {\n if (typeof data.handleId === 'number') {\n // in non-nodejs env, we remove timerId\n // from local cache\n delete tasksByHandleId[data.handleId];\n }\n else if (data.handleId) {\n // Node returns complex objects as handleIds\n // we remove task reference from timer object\n data.handleId[taskSymbol] = null;\n }\n }\n }\n }\n data.args[0] = timer;\n data.handleId = setNative.apply(window, data.args);\n return task;\n }\n function clearTask(task) {\n return clearNative(task.data.handleId);\n }\n setNative =\n patchMethod(window, setName, function (delegate) { return function (self, args) {\n if (typeof args[0] === 'function') {\n var options = {\n isPeriodic: nameSuffix === 'Interval',\n delay: (nameSuffix === 'Timeout' || nameSuffix === 'Interval') ? args[1] || 0 :\n undefined,\n args: args\n };\n var task = scheduleMacroTaskWithCurrentZone(setName, args[0], options, scheduleTask, clearTask);\n if (!task) {\n return task;\n }\n // Node.js must additionally support the ref and unref functions.\n var handle = task.data.handleId;\n if (typeof handle === 'number') {\n // for non nodejs env, we save handleId: task\n // mapping in local cache for clearTimeout\n tasksByHandleId[handle] = task;\n }\n else if (handle) {\n // for nodejs env, we save task\n // reference in timerId Object for clearTimeout\n handle[taskSymbol] = task;\n }\n // check whether handle is null, because some polyfill or browser\n // may return undefined from setTimeout/setInterval/setImmediate/requestAnimationFrame\n if (handle && handle.ref && handle.unref && typeof handle.ref === 'function' &&\n typeof handle.unref === 'function') {\n task.ref = handle.ref.bind(handle);\n task.unref = handle.unref.bind(handle);\n }\n if (typeof handle === 'number' || handle) {\n return handle;\n }\n return task;\n }\n else {\n // cause an error by calling it directly.\n return delegate.apply(window, args);\n }\n }; });\n clearNative =\n patchMethod(window, cancelName, function (delegate) { return function (self, args) {\n var id = args[0];\n var task;\n if (typeof id === 'number') {\n // non nodejs env.\n task = tasksByHandleId[id];\n }\n else {\n // nodejs env.\n task = id && id[taskSymbol];\n // other environments.\n if (!task) {\n task = id;\n }\n }\n if (task && typeof task.type === 'string') {\n if (task.state !== 'notScheduled' &&\n (task.cancelFn && task.data.isPeriodic || task.runCount === 0)) {\n if (typeof id === 'number') {\n delete tasksByHandleId[id];\n }\n else if (id) {\n id[taskSymbol] = null;\n }\n // Do not cancel already canceled functions\n task.zone.cancelTask(task);\n }\n }\n else {\n // cause an error by calling it directly.\n delegate.apply(window, args);\n }\n }; });\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction patchCustomElements(_global, api) {\n var _a = api.getGlobalObjects(), isBrowser = _a.isBrowser, isMix = _a.isMix;\n if ((!isBrowser && !isMix) || !_global['customElements'] || !('customElements' in _global)) {\n return;\n }\n var callbacks = ['connectedCallback', 'disconnectedCallback', 'adoptedCallback', 'attributeChangedCallback'];\n api.patchCallbacks(api, _global.customElements, 'customElements', 'define', callbacks);\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction eventTargetPatch(_global, api) {\n if (Zone[api.symbol('patchEventTarget')]) {\n // EventTarget is already patched.\n return;\n }\n var _a = api.getGlobalObjects(), eventNames = _a.eventNames, zoneSymbolEventNames = _a.zoneSymbolEventNames, TRUE_STR = _a.TRUE_STR, FALSE_STR = _a.FALSE_STR, ZONE_SYMBOL_PREFIX = _a.ZONE_SYMBOL_PREFIX;\n // predefine all __zone_symbol__ + eventName + true/false string\n for (var i = 0; i < eventNames.length; i++) {\n var eventName = eventNames[i];\n var falseEventName = eventName + FALSE_STR;\n var trueEventName = eventName + TRUE_STR;\n var symbol = ZONE_SYMBOL_PREFIX + falseEventName;\n var symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName;\n zoneSymbolEventNames[eventName] = {};\n zoneSymbolEventNames[eventName][FALSE_STR] = symbol;\n zoneSymbolEventNames[eventName][TRUE_STR] = symbolCapture;\n }\n var EVENT_TARGET = _global['EventTarget'];\n if (!EVENT_TARGET || !EVENT_TARGET.prototype) {\n return;\n }\n api.patchEventTarget(_global, [EVENT_TARGET && EVENT_TARGET.prototype]);\n return true;\n}\nfunction patchEvent$1(global, api) {\n api.patchEventPrototype(global, api);\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\nZone.__load_patch('legacy', function (global) {\n var legacyPatch = global[Zone.__symbol__('legacyPatch')];\n if (legacyPatch) {\n legacyPatch();\n }\n});\nZone.__load_patch('timers', function (global) {\n var set = 'set';\n var clear = 'clear';\n patchTimer(global, set, clear, 'Timeout');\n patchTimer(global, set, clear, 'Interval');\n patchTimer(global, set, clear, 'Immediate');\n});\nZone.__load_patch('requestAnimationFrame', function (global) {\n patchTimer(global, 'request', 'cancel', 'AnimationFrame');\n patchTimer(global, 'mozRequest', 'mozCancel', 'AnimationFrame');\n patchTimer(global, 'webkitRequest', 'webkitCancel', 'AnimationFrame');\n});\nZone.__load_patch('blocking', function (global, Zone) {\n var blockingMethods = ['alert', 'prompt', 'confirm'];\n for (var i = 0; i < blockingMethods.length; i++) {\n var name_1 = blockingMethods[i];\n patchMethod(global, name_1, function (delegate, symbol, name) {\n return function (s, args) {\n return Zone.current.run(delegate, global, args, name);\n };\n });\n }\n});\nZone.__load_patch('EventTarget', function (global, Zone, api) {\n patchEvent$1(global, api);\n eventTargetPatch(global, api);\n // patch XMLHttpRequestEventTarget's addEventListener/removeEventListener\n var XMLHttpRequestEventTarget = global['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype) {\n api.patchEventTarget(global, [XMLHttpRequestEventTarget.prototype]);\n }\n patchClass('MutationObserver');\n patchClass('WebKitMutationObserver');\n patchClass('IntersectionObserver');\n patchClass('FileReader');\n});\nZone.__load_patch('on_property', function (global, Zone, api) {\n propertyDescriptorPatch(api, global);\n propertyPatch();\n});\nZone.__load_patch('customElements', function (global, Zone, api) {\n patchCustomElements(global, api);\n});\nZone.__load_patch('XHR', function (global, Zone) {\n // Treat XMLHttpRequest as a macrotask.\n patchXHR(global);\n var XHR_TASK = zoneSymbol('xhrTask');\n var XHR_SYNC = zoneSymbol('xhrSync');\n var XHR_LISTENER = zoneSymbol('xhrListener');\n var XHR_SCHEDULED = zoneSymbol('xhrScheduled');\n var XHR_URL = zoneSymbol('xhrURL');\n var XHR_ERROR_BEFORE_SCHEDULED = zoneSymbol('xhrErrorBeforeScheduled');\n function patchXHR(window) {\n var XMLHttpRequest = window['XMLHttpRequest'];\n if (!XMLHttpRequest) {\n // XMLHttpRequest is not available in service worker\n return;\n }\n var XMLHttpRequestPrototype = XMLHttpRequest.prototype;\n function findPendingTask(target) {\n return target[XHR_TASK];\n }\n var oriAddListener = XMLHttpRequestPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n var oriRemoveListener = XMLHttpRequestPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n if (!oriAddListener) {\n var XMLHttpRequestEventTarget_1 = window['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget_1) {\n var XMLHttpRequestEventTargetPrototype = XMLHttpRequestEventTarget_1.prototype;\n oriAddListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n oriRemoveListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n }\n }\n var READY_STATE_CHANGE = 'readystatechange';\n var SCHEDULED = 'scheduled';\n function scheduleTask(task) {\n var data = task.data;\n var target = data.target;\n target[XHR_SCHEDULED] = false;\n target[XHR_ERROR_BEFORE_SCHEDULED] = false;\n // remove existing event listener\n var listener = target[XHR_LISTENER];\n if (!oriAddListener) {\n oriAddListener = target[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n oriRemoveListener = target[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n }\n if (listener) {\n oriRemoveListener.call(target, READY_STATE_CHANGE, listener);\n }\n var newListener = target[XHR_LISTENER] = function () {\n if (target.readyState === target.DONE) {\n // sometimes on some browsers XMLHttpRequest will fire onreadystatechange with\n // readyState=4 multiple times, so we need to check task state here\n if (!data.aborted && target[XHR_SCHEDULED] && task.state === SCHEDULED) {\n // check whether the xhr has registered onload listener\n // if that is the case, the task should invoke after all\n // onload listeners finish.\n var loadTasks = target['__zone_symbol__loadfalse'];\n if (loadTasks && loadTasks.length > 0) {\n var oriInvoke_1 = task.invoke;\n task.invoke = function () {\n // need to load the tasks again, because in other\n // load listener, they may remove themselves\n var loadTasks = target['__zone_symbol__loadfalse'];\n for (var i = 0; i < loadTasks.length; i++) {\n if (loadTasks[i] === task) {\n loadTasks.splice(i, 1);\n }\n }\n if (!data.aborted && task.state === SCHEDULED) {\n oriInvoke_1.call(task);\n }\n };\n loadTasks.push(task);\n }\n else {\n task.invoke();\n }\n }\n else if (!data.aborted && target[XHR_SCHEDULED] === false) {\n // error occurs when xhr.send()\n target[XHR_ERROR_BEFORE_SCHEDULED] = true;\n }\n }\n };\n oriAddListener.call(target, READY_STATE_CHANGE, newListener);\n var storedTask = target[XHR_TASK];\n if (!storedTask) {\n target[XHR_TASK] = task;\n }\n sendNative.apply(target, data.args);\n target[XHR_SCHEDULED] = true;\n return task;\n }\n function placeholderCallback() { }\n function clearTask(task) {\n var data = task.data;\n // Note - ideally, we would call data.target.removeEventListener here, but it's too late\n // to prevent it from firing. So instead, we store info for the event listener.\n data.aborted = true;\n return abortNative.apply(data.target, data.args);\n }\n var openNative = patchMethod(XMLHttpRequestPrototype, 'open', function () { return function (self, args) {\n self[XHR_SYNC] = args[2] == false;\n self[XHR_URL] = args[1];\n return openNative.apply(self, args);\n }; });\n var XMLHTTPREQUEST_SOURCE = 'XMLHttpRequest.send';\n var fetchTaskAborting = zoneSymbol('fetchTaskAborting');\n var fetchTaskScheduling = zoneSymbol('fetchTaskScheduling');\n var sendNative = patchMethod(XMLHttpRequestPrototype, 'send', function () { return function (self, args) {\n if (Zone.current[fetchTaskScheduling] === true) {\n // a fetch is scheduling, so we are using xhr to polyfill fetch\n // and because we already schedule macroTask for fetch, we should\n // not schedule a macroTask for xhr again\n return sendNative.apply(self, args);\n }\n if (self[XHR_SYNC]) {\n // if the XHR is sync there is no task to schedule, just execute the code.\n return sendNative.apply(self, args);\n }\n else {\n var options = { target: self, url: self[XHR_URL], isPeriodic: false, args: args, aborted: false };\n var task = scheduleMacroTaskWithCurrentZone(XMLHTTPREQUEST_SOURCE, placeholderCallback, options, scheduleTask, clearTask);\n if (self && self[XHR_ERROR_BEFORE_SCHEDULED] === true && !options.aborted &&\n task.state === SCHEDULED) {\n // xhr request throw error when send\n // we should invoke task instead of leaving a scheduled\n // pending macroTask\n task.invoke();\n }\n }\n }; });\n var abortNative = patchMethod(XMLHttpRequestPrototype, 'abort', function () { return function (self, args) {\n var task = findPendingTask(self);\n if (task && typeof task.type == 'string') {\n // If the XHR has already completed, do nothing.\n // If the XHR has already been aborted, do nothing.\n // Fix #569, call abort multiple times before done will cause\n // macroTask task count be negative number\n if (task.cancelFn == null || (task.data && task.data.aborted)) {\n return;\n }\n task.zone.cancelTask(task);\n }\n else if (Zone.current[fetchTaskAborting] === true) {\n // the abort is called from fetch polyfill, we need to call native abort of XHR.\n return abortNative.apply(self, args);\n }\n // Otherwise, we are trying to abort an XHR which has not yet been sent, so there is no\n // task\n // to cancel. Do nothing.\n }; });\n }\n});\nZone.__load_patch('geolocation', function (global) {\n /// GEO_LOCATION\n if (global['navigator'] && global['navigator'].geolocation) {\n patchPrototype(global['navigator'].geolocation, ['getCurrentPosition', 'watchPosition']);\n }\n});\nZone.__load_patch('PromiseRejectionEvent', function (global, Zone) {\n // handle unhandled promise rejection\n function findPromiseRejectionHandler(evtName) {\n return function (e) {\n var eventTasks = findEventTasks(global, evtName);\n eventTasks.forEach(function (eventTask) {\n // windows has added unhandledrejection event listener\n // trigger the event listener\n var PromiseRejectionEvent = global['PromiseRejectionEvent'];\n if (PromiseRejectionEvent) {\n var evt = new PromiseRejectionEvent(evtName, { promise: e.promise, reason: e.rejection });\n eventTask.invoke(evt);\n }\n });\n };\n }\n if (global['PromiseRejectionEvent']) {\n Zone[zoneSymbol('unhandledPromiseRejectionHandler')] =\n findPromiseRejectionHandler('unhandledrejection');\n Zone[zoneSymbol('rejectionHandledHandler')] =\n findPromiseRejectionHandler('rejectionhandled');\n }\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n})));\n","/**\r\n * This file includes polyfills needed by Angular and is loaded before the app.\r\n * You can add your own extra polyfills to this file.\r\n *\r\n * This file is divided into 2 sections:\r\n * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers.\r\n * 2. Application imports. Files imported after ZoneJS that should be loaded before your main\r\n * file.\r\n *\r\n * The current setup is for so-called \"evergreen\" browsers; the last versions of browsers that\r\n * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera),\r\n * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile.\r\n *\r\n * Learn more in https://angular.io/guide/browser-support\r\n */\r\n\r\n/***************************************************************************************************\r\n * BROWSER POLYFILLS\r\n */\r\n\r\n/** IE10 and IE11 requires the following for NgClass support on SVG elements */\r\n// import 'classlist.js'; // Run `npm install --save classlist.js`.\r\n\r\n/**\r\n * Web Animations `@angular/platform-browser/animations`\r\n * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari.\r\n * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0).\r\n */\r\n// import 'web-animations-js'; // Run `npm install --save web-animations-js`.\r\n\r\n/**\r\n * By default, zone.js will patch all possible macroTask and DomEvents\r\n * user can disable parts of macroTask/DomEvents patch by setting following flags\r\n * because those flags need to be set before `zone.js` being loaded, and webpack\r\n * will put import in the top of bundle, so user need to create a separate file\r\n * in this directory (for example: zone-flags.ts), and put the following flags\r\n * into that file, and then add the following code before importing zone.js.\r\n * import './zone-flags.ts';\r\n *\r\n * The flags allowed in zone-flags.ts are listed here.\r\n *\r\n * The following flags will work for all browsers.\r\n *\r\n * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame\r\n * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick\r\n * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames\r\n *\r\n * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js\r\n * with the following flag, it will bypass `zone.js` patch for IE/Edge\r\n *\r\n * (window as any).__Zone_enable_cross_context_check = true;\r\n *\r\n */\r\n\r\n/***************************************************************************************************\r\n * Zone JS is required by default for Angular itself.\r\n */\r\nimport 'zone.js/dist/zone'; // Included with Angular CLI.\r\n\r\n/***************************************************************************************************\r\n * APPLICATION IMPORTS\r\n */\r\n"],"sourceRoot":""} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es2015.js b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es2015.js new file mode 100644 index 0000000..f8c116a --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es2015.js @@ -0,0 +1,154 @@ +/******/ (function(modules) { // webpackBootstrap +/******/ // install a JSONP callback for chunk loading +/******/ function webpackJsonpCallback(data) { +/******/ var chunkIds = data[0]; +/******/ var moreModules = data[1]; +/******/ var executeModules = data[2]; +/******/ +/******/ // add "moreModules" to the modules object, +/******/ // then flag all "chunkIds" as loaded and fire callback +/******/ var moduleId, chunkId, i = 0, resolves = []; +/******/ for(;i < chunkIds.length; i++) { +/******/ chunkId = chunkIds[i]; +/******/ if(installedChunks[chunkId]) { +/******/ resolves.push(installedChunks[chunkId][0]); +/******/ } +/******/ installedChunks[chunkId] = 0; +/******/ } +/******/ for(moduleId in moreModules) { +/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) { +/******/ modules[moduleId] = moreModules[moduleId]; +/******/ } +/******/ } +/******/ if(parentJsonpFunction) parentJsonpFunction(data); +/******/ +/******/ while(resolves.length) { +/******/ resolves.shift()(); +/******/ } +/******/ +/******/ // add entry modules from loaded chunk to deferred list +/******/ deferredModules.push.apply(deferredModules, executeModules || []); +/******/ +/******/ // run deferred modules when all chunks ready +/******/ return checkDeferredModules(); +/******/ }; +/******/ function checkDeferredModules() { +/******/ var result; +/******/ for(var i = 0; i < deferredModules.length; i++) { +/******/ var deferredModule = deferredModules[i]; +/******/ var fulfilled = true; +/******/ for(var j = 1; j < deferredModule.length; j++) { +/******/ var depId = deferredModule[j]; +/******/ if(installedChunks[depId] !== 0) fulfilled = false; +/******/ } +/******/ if(fulfilled) { +/******/ deferredModules.splice(i--, 1); +/******/ result = __webpack_require__(__webpack_require__.s = deferredModule[0]); +/******/ } +/******/ } +/******/ return result; +/******/ } +/******/ +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // object to store loaded and loading chunks +/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched +/******/ // Promise = chunk loading, 0 = chunk loaded +/******/ var installedChunks = { +/******/ "runtime": 0 +/******/ }; +/******/ +/******/ var deferredModules = []; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); +/******/ } +/******/ }; +/******/ +/******/ // define __esModule on exports +/******/ __webpack_require__.r = function(exports) { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ +/******/ // create a fake namespace object +/******/ // mode & 1: value is a module id, require it +/******/ // mode & 2: merge all properties of value into the ns +/******/ // mode & 4: return value when already ns object +/******/ // mode & 8|1: behave like require +/******/ __webpack_require__.t = function(value, mode) { +/******/ if(mode & 1) value = __webpack_require__(value); +/******/ if(mode & 8) return value; +/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; +/******/ var ns = Object.create(null); +/******/ __webpack_require__.r(ns); +/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); +/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); +/******/ return ns; +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; +/******/ +/******/ var jsonpArray = window["webpackJsonp"] = window["webpackJsonp"] || []; +/******/ var oldJsonpFunction = jsonpArray.push.bind(jsonpArray); +/******/ jsonpArray.push = webpackJsonpCallback; +/******/ jsonpArray = jsonpArray.slice(); +/******/ for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]); +/******/ var parentJsonpFunction = oldJsonpFunction; +/******/ +/******/ +/******/ // run deferred modules from other chunks +/******/ checkDeferredModules(); +/******/ }) +/************************************************************************/ +/******/ ([]); +//# sourceMappingURL=runtime-es2015.js.map \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es2015.js.map b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es2015.js.map new file mode 100644 index 0000000..88eec42 --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es2015.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///webpack/bootstrap"],"names":[],"mappings":";AAAA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,gBAAQ,oBAAoB;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yBAAiB,4BAA4B;AAC7C;AACA;AACA,0BAAkB,2BAA2B;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,kDAA0C,gCAAgC;AAC1E;AACA;;AAEA;AACA;AACA;AACA,gEAAwD,kBAAkB;AAC1E;AACA,yDAAiD,cAAc;AAC/D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAyC,iCAAiC;AAC1E,wHAAgH,mBAAmB,EAAE;AACrI;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;AACA;AACA;AACA,wBAAgB,uBAAuB;AACvC;;;AAGA;AACA","file":"runtime-es2015.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"runtime\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es5.js b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es5.js new file mode 100644 index 0000000..7fc39e2 --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es5.js @@ -0,0 +1,154 @@ +/******/ (function(modules) { // webpackBootstrap +/******/ // install a JSONP callback for chunk loading +/******/ function webpackJsonpCallback(data) { +/******/ var chunkIds = data[0]; +/******/ var moreModules = data[1]; +/******/ var executeModules = data[2]; +/******/ +/******/ // add "moreModules" to the modules object, +/******/ // then flag all "chunkIds" as loaded and fire callback +/******/ var moduleId, chunkId, i = 0, resolves = []; +/******/ for(;i < chunkIds.length; i++) { +/******/ chunkId = chunkIds[i]; +/******/ if(installedChunks[chunkId]) { +/******/ resolves.push(installedChunks[chunkId][0]); +/******/ } +/******/ installedChunks[chunkId] = 0; +/******/ } +/******/ for(moduleId in moreModules) { +/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) { +/******/ modules[moduleId] = moreModules[moduleId]; +/******/ } +/******/ } +/******/ if(parentJsonpFunction) parentJsonpFunction(data); +/******/ +/******/ while(resolves.length) { +/******/ resolves.shift()(); +/******/ } +/******/ +/******/ // add entry modules from loaded chunk to deferred list +/******/ deferredModules.push.apply(deferredModules, executeModules || []); +/******/ +/******/ // run deferred modules when all chunks ready +/******/ return checkDeferredModules(); +/******/ }; +/******/ function checkDeferredModules() { +/******/ var result; +/******/ for(var i = 0; i < deferredModules.length; i++) { +/******/ var deferredModule = deferredModules[i]; +/******/ var fulfilled = true; +/******/ for(var j = 1; j < deferredModule.length; j++) { +/******/ var depId = deferredModule[j]; +/******/ if(installedChunks[depId] !== 0) fulfilled = false; +/******/ } +/******/ if(fulfilled) { +/******/ deferredModules.splice(i--, 1); +/******/ result = __webpack_require__(__webpack_require__.s = deferredModule[0]); +/******/ } +/******/ } +/******/ return result; +/******/ } +/******/ +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // object to store loaded and loading chunks +/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched +/******/ // Promise = chunk loading, 0 = chunk loaded +/******/ var installedChunks = { +/******/ "runtime": 0 +/******/ }; +/******/ +/******/ var deferredModules = []; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); +/******/ } +/******/ }; +/******/ +/******/ // define __esModule on exports +/******/ __webpack_require__.r = function(exports) { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ +/******/ // create a fake namespace object +/******/ // mode & 1: value is a module id, require it +/******/ // mode & 2: merge all properties of value into the ns +/******/ // mode & 4: return value when already ns object +/******/ // mode & 8|1: behave like require +/******/ __webpack_require__.t = function(value, mode) { +/******/ if(mode & 1) value = __webpack_require__(value); +/******/ if(mode & 8) return value; +/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; +/******/ var ns = Object.create(null); +/******/ __webpack_require__.r(ns); +/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); +/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); +/******/ return ns; +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; +/******/ +/******/ var jsonpArray = window["webpackJsonp"] = window["webpackJsonp"] || []; +/******/ var oldJsonpFunction = jsonpArray.push.bind(jsonpArray); +/******/ jsonpArray.push = webpackJsonpCallback; +/******/ jsonpArray = jsonpArray.slice(); +/******/ for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]); +/******/ var parentJsonpFunction = oldJsonpFunction; +/******/ +/******/ +/******/ // run deferred modules from other chunks +/******/ checkDeferredModules(); +/******/ }) +/************************************************************************/ +/******/ ([]); +//# sourceMappingURL=runtime-es5.js.map \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es5.js.map b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es5.js.map new file mode 100644 index 0000000..40e6e53 --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/runtime-es5.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///webpack/bootstrap"],"names":[],"mappings":";AAAA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,gBAAQ,oBAAoB;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yBAAiB,4BAA4B;AAC7C;AACA;AACA,0BAAkB,2BAA2B;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,kDAA0C,gCAAgC;AAC1E;AACA;;AAEA;AACA;AACA;AACA,gEAAwD,kBAAkB;AAC1E;AACA,yDAAiD,cAAc;AAC/D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAyC,iCAAiC;AAC1E,wHAAgH,mBAAmB,EAAE;AACrI;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;AACA;AACA;AACA,wBAAgB,uBAAuB;AACvC;;;AAGA;AACA","file":"runtime-es5.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"runtime\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""} \ No newline at end of file diff --git a/Demos/Dropwizard/src/main/resources/assets/angular/annotation/styles-es2015.js b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/styles-es2015.js new file mode 100644 index 0000000..dcd9ff2 --- /dev/null +++ b/Demos/Dropwizard/src/main/resources/assets/angular/annotation/styles-es2015.js @@ -0,0 +1,566 @@ +(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["styles"],{ + +/***/ "../../node_modules/@angular-devkit/build-angular/src/angular-cli-files/plugins/raw-css-loader.js!../../node_modules/postcss-loader/src/index.js?!../../node_modules/less-loader/dist/cjs.js?!./src/styles.less": +/*!********************************************************************************************************************************************************************************************************************************************************************!*\ + !*** /workspace/client/node_modules/@angular-devkit/build-angular/src/angular-cli-files/plugins/raw-css-loader.js!/workspace/client/node_modules/postcss-loader/src??embedded!/workspace/client/node_modules/less-loader/dist/cjs.js??ref--14-3!./src/styles.less ***! + \********************************************************************************************************************************************************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +module.exports = [[module.i, "/* You can add global styles to this file, and also import other style files */\n\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcHMvYW5ub3RhdGlvbi9zcmMvc3R5bGVzLmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsOEVBQThFIiwiZmlsZSI6ImFwcHMvYW5ub3RhdGlvbi9zcmMvc3R5bGVzLmxlc3MifQ== */", '', '']] + +/***/ }), + +/***/ "../../node_modules/style-loader/lib/addStyles.js": +/*!********************************************************************!*\ + !*** /workspace/client/node_modules/style-loader/lib/addStyles.js ***! + \********************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +/* + MIT License http://www.opensource.org/licenses/mit-license.php + Author Tobias Koppers @sokra +*/ + +var stylesInDom = {}; + +var memoize = function (fn) { + var memo; + + return function () { + if (typeof memo === "undefined") memo = fn.apply(this, arguments); + return memo; + }; +}; + +var isOldIE = memoize(function () { + // Test for IE <= 9 as proposed by Browserhacks + // @see http://browserhacks.com/#hack-e71d8692f65334173fee715c222cb805 + // Tests for existence of standard globals is to allow style-loader + // to operate correctly into non-standard environments + // @see https://github.com/webpack-contrib/style-loader/issues/177 + return window && document && document.all && !window.atob; +}); + +var getTarget = function (target, parent) { + if (parent){ + return parent.querySelector(target); + } + return document.querySelector(target); +}; + +var getElement = (function (fn) { + var memo = {}; + + return function(target, parent) { + // If passing function in options, then use it for resolve "head" element. + // Useful for Shadow Root style i.e + // { + // insertInto: function () { return document.querySelector("#foo").shadowRoot } + // } + if (typeof target === 'function') { + return target(); + } + if (typeof memo[target] === "undefined") { + var styleTarget = getTarget.call(this, target, parent); + // Special case to return head of iframe instead of iframe itself + if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) { + try { + // This will throw an exception if access to iframe is blocked + // due to cross-origin restrictions + styleTarget = styleTarget.contentDocument.head; + } catch(e) { + styleTarget = null; + } + } + memo[target] = styleTarget; + } + return memo[target] + }; +})(); + +var singleton = null; +var singletonCounter = 0; +var stylesInsertedAtTop = []; + +var fixUrls = __webpack_require__(/*! ./urls */ "../../node_modules/style-loader/lib/urls.js"); + +module.exports = function(list, options) { + if (typeof DEBUG !== "undefined" && DEBUG) { + if (typeof document !== "object") throw new Error("The style-loader cannot be used in a non-browser environment"); + } + + options = options || {}; + + options.attrs = typeof options.attrs === "object" ? options.attrs : {}; + + // Force single-tag solution on IE6-9, which has a hard limit on the # of '; + if (this.inertBodyElement.querySelector && this.inertBodyElement.querySelector('svg img')) { + // We just hit the Firefox bug - which prevents the inner img JS from being sanitized + // so use the DOMParser strategy, if it is available. + // If the DOMParser is not available then we are not in Firefox (Server/WebWorker?) so we + // fall through to the default strategy below. + if (isDOMParserAvailable()) { + this.getInertBodyElement = this.getInertBodyElement_DOMParser; + return; + } + } + // None of the bugs were hit so it is safe for us to use the default InertDocument strategy + this.getInertBodyElement = this.getInertBodyElement_InertDocument; + } + /** + * Use XHR to create and fill an inert body element (on Safari 10.1) + * See + * https://github.com/cure53/DOMPurify/blob/a992d3a75031cb8bb032e5ea8399ba972bdf9a65/src/purify.js#L439-L449 + * @private + * @param {?} html + * @return {?} + */ + getInertBodyElement_XHR(html) { + // We add these extra elements to ensure that the rest of the content is parsed as expected + // e.g. leading whitespace is maintained and tags like `` do not get hoisted to the + // `` tag. + html = '' + html + ''; + try { + html = encodeURI(html); + } + catch (_a) { + return null; + } + /** @type {?} */ + const xhr = new XMLHttpRequest(); + xhr.responseType = 'document'; + xhr.open('GET', 'data:text/html;charset=utf-8,' + html, false); + xhr.send(undefined); + /** @type {?} */ + const body = xhr.response.body; + body.removeChild((/** @type {?} */ (body.firstChild))); + return body; + } + /** + * Use DOMParser to create and fill an inert body element (on Firefox) + * See https://github.com/cure53/DOMPurify/releases/tag/0.6.7 + * + * @private + * @param {?} html + * @return {?} + */ + getInertBodyElement_DOMParser(html) { + // We add these extra elements to ensure that the rest of the content is parsed as expected + // e.g. leading whitespace is maintained and tags like `` do not get hoisted to the + // `` tag. + html = '' + html + ''; + try { + /** @type {?} */ + const body = (/** @type {?} */ (new ((/** @type {?} */ (window))) + .DOMParser() + .parseFromString(html, 'text/html') + .body)); + body.removeChild((/** @type {?} */ (body.firstChild))); + return body; + } + catch (_a) { + return null; + } + } + /** + * Use an HTML5 `template` element, if supported, or an inert body element created via + * `createHtmlDocument` to create and fill an inert DOM element. + * This is the default sane strategy to use if the browser does not require one of the specialised + * strategies above. + * @private + * @param {?} html + * @return {?} + */ + getInertBodyElement_InertDocument(html) { + // Prefer using