From 66466e22b93ffbdbb2bc6a8e4ed45cd51cea0403 Mon Sep 17 00:00:00 2001 From: richard-loafle <44828666+richard-loafle@users.noreply.github.com> Date: Wed, 1 Apr 2020 17:31:04 +0900 Subject: [PATCH] bug fixed --- angular.json | 48 + package-lock.json | 1046 +++++++---------- package.json | 73 +- src/app/app-provider.module.ts | 55 +- src/app/app.module.ts | 1 + .../components/login.page.component.html | 1 + .../components/login.page.component.ts | 7 +- .../account/account.section.module.ts | 10 +- .../components/login.section.component.html | 44 +- .../components/login.section.component.ts | 88 +- src/app/services/app.service.ts | 108 ++ src/assets/i18n/en/authentication.json | 3 +- src/assets/i18n/ko/authentication.json | 3 +- src/environments/environment.hmr.ts | 8 +- src/environments/environment.prod.ts | 284 +++-- src/environments/environment.ts | 8 +- src/environments/environment.type.ts | 8 +- src/polyfills.es5.ts | 62 + tsconfig.app.es5.json | 10 + 19 files changed, 968 insertions(+), 899 deletions(-) create mode 100644 src/app/services/app.service.ts create mode 100644 src/polyfills.es5.ts create mode 100644 tsconfig.app.es5.json diff --git a/angular.json b/angular.json index 554f7ec..5e26e97 100644 --- a/angular.json +++ b/angular.json @@ -60,6 +60,37 @@ } ] }, + "production-es5": { + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.prod.ts" + } + ], + "es5BrowserSupport": true, + "outputPath": "dist/ucap-lg-web-es5", + "tsConfig": "tsconfig.app.es5.json", + "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" + } + ] + }, "hmr": { "fileReplacements": [ { @@ -67,6 +98,16 @@ "with": "src/environments/environment.hmr.ts" } ] + }, + "hmr-es5": { + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.hmr.ts" + } + ], + "es5BrowserSupport": true, + "tsConfig": "tsconfig.app.es5.json" } } }, @@ -80,9 +121,16 @@ "production": { "browserTarget": "ucap-lg-web:build:production" }, + "production-5": { + "browserTarget": "ucap-lg-web:build:production-es5" + }, "hmr": { "hmr": true, "browserTarget": "ucap-lg-web:build:hmr" + }, + "hmr-es5": { + "hmr": true, + "browserTarget": "ucap-lg-web:build:hmr-es5" } } }, diff --git a/package-lock.json b/package-lock.json index d6503cb..b1996cd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -430,6 +430,15 @@ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, + "find-up": { + "version": "3.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, "fs-extra": { "version": "4.0.2", "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/fs-extra/-/fs-extra-4.0.2.tgz", @@ -447,6 +456,40 @@ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, + "locate-path": { + "version": "3.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-limit/-/p-limit-2.2.2.tgz", + "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, "require-main-filename": { "version": "2.0.0", "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/require-main-filename/-/require-main-filename-2.0.0.tgz", @@ -1650,9 +1693,9 @@ "dev": true }, "@types/node": { - "version": "12.12.31", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@types/node/-/node-12.12.31.tgz", - "integrity": "sha512-T+wnJno8uh27G9c+1T+a1/WYCHzLeDqtsGJkoEdSp2X8RTh3oOCZQcUnjAx90CS8cmmADX51O0FI/tu9s0yssg==", + "version": "12.12.34", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@types/node/-/node-12.12.34.tgz", + "integrity": "sha512-BneGN0J9ke24lBRn44hVHNeDlrXRYF+VRp0HbSUNnEZahXGAysHZIqnf/hER6aabdBgzM4YOV4jrR8gj4Zfi0g==", "dev": true }, "@types/q": { @@ -1698,202 +1741,54 @@ } }, "@ucap/api": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api/-/api-0.0.1.tgz", - "integrity": "sha512-gmZhbsuHVu0oefkd1NLKM0K1YJAAc6KeBFHAhNrFIoAvuxgJl/t8RC3FKKMnC50aYVGkMpMWpOi7LL9ZfAXz1Q==", - "requires": { - "@ucap/core": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api/-/api-0.0.2.tgz", + "integrity": "sha512-WfUSnJ4djZCFxqVykXsNqFfBbIAUGbz9VF0JaBkEUh676TVvJOhBA4bvfXfS3mjVPFSVG9dZMDubzgeXacADzQ==" }, "@ucap/api-common": { - "version": "0.0.2", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api-common/-/api-common-0.0.2.tgz", - "integrity": "sha512-yph9RMCY1iohzdtmk5rRRsckvGd5Xo8hn1LwsUTg5Bueu46YGvIglV7kokUE3M/0k0llTrg2lRjX14CtY9Ei8A==", - "requires": { - "@ucap/api": "^0.0.1", - "@ucap/core": "^0.0.1", - "axios": "^0.19.2", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.3", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api-common/-/api-common-0.0.3.tgz", + "integrity": "sha512-GQ8Sypu4U2fJUwdy3tWd0YtxciDvxcR5giMzmAwakYnsPRTIQD28v3dmHc8bQO7wEZNwe2jTvT7cfnuOA8JaRw==" }, "@ucap/api-external": { - "version": "0.0.4", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api-external/-/api-external-0.0.4.tgz", - "integrity": "sha512-Po4UkLqoAiSMysM0QrXUsGOsaWiRfUN7gKUveu/eHSLhipVE1ydU7QusYle7aUMjoFmj6h7lg/ZkaYjDFlNqmQ==", - "requires": { - "@ucap/api": "^0.0.1", - "@ucap/core": "^0.0.1", - "axios": "^0.19.2", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.5", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api-external/-/api-external-0.0.5.tgz", + "integrity": "sha512-fcZslFy/oVzfDKlGZV5DApALK2yiUFZZ1TxDTdgnzSmHJ78wZgxc/IhQa9ivioWvr/RNAN3KTqcWMyn3FZ7mCA==" }, "@ucap/api-message": { - "version": "0.0.2", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api-message/-/api-message-0.0.2.tgz", - "integrity": "sha512-rV2KWnHw6p86ULyuaW/Un01nZNjWUWUB3zv48Q+6rpDNSH8RWUGJzNtfhPAxr9Rb7t7vsk3oBa40y+cAnOUJkQ==", - "requires": { - "@ucap/api": "^0.0.1", - "@ucap/core": "^0.0.1", - "axios": "^0.19.2", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.3", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api-message/-/api-message-0.0.3.tgz", + "integrity": "sha512-6yDrUv/0Y3YpBaRKEqsPpPObD2J+k9cfo54bF288hYKSAuSJKXUttyrYOgDM1vzkvZv7aibrd6xpDFOL8/tymw==" }, "@ucap/api-prompt": { - "version": "0.0.2", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api-prompt/-/api-prompt-0.0.2.tgz", - "integrity": "sha512-Xc/S1uQT2ZHaXO403jUtPqVELexC5r9Qm+5LajhplzcC+eMuA2NrmS6FFgFjsQclQuCrqavJiJt+qLzqvPGqcg==", - "requires": { - "@ucap/api": "^0.0.1", - "@ucap/core": "^0.0.1", - "axios": "^0.19.2", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.3", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api-prompt/-/api-prompt-0.0.3.tgz", + "integrity": "sha512-X9rUvoemcOBzjpytG77EeUPTQPZ4XX0ZYw41rmp9B7JNkUQ9xttrox5jXrRYPyDmfYlx6Wyt5f0zlGY+jGbmqw==" }, "@ucap/api-public": { - "version": "0.0.2", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api-public/-/api-public-0.0.2.tgz", - "integrity": "sha512-VnZkQWJs7OwbwPWzCqH9V9ma4HplWwJuPKIRs7D/pUIa4HIrkodpqMUKBTcb2mMzf6MSWSz7SJDdHksUGdhuRA==", - "requires": { - "@ucap/api": "^0.0.1", - "@ucap/core": "^0.0.1", - "axios": "^0.19.2", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.3", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/api-public/-/api-public-0.0.3.tgz", + "integrity": "sha512-FDg7WLiq5Y5aPxC66LXKQOnqily1zcaUdtl3ZMGU3HfENod/d6aFarqFZOw5y0C+OZQ1LB+jIKa+AP0V4zC0Ug==" }, "@ucap/core": { - "version": "0.0.2", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.2.tgz", - "integrity": "sha512-GqYS7R4hxPqwMzyBRYwpTyoLbqUg5Do3yj2Y7NhI9jkwlt1aLGWfN6WMOwUJzBHP+IGx4slhO1Pda7F+9OqBew==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } + "version": "0.0.4", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.4.tgz", + "integrity": "sha512-pghZ8oC0IKuD3c/ztAbkUFWaJMHyjRNtWKhOcOl6hFr9ttvmzAZNfXfOm5Wp30ROOXWDITYrjVQ4OC/vte7GHg==" }, "@ucap/logger": { - "version": "0.0.4", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/logger/-/logger-0.0.4.tgz", - "integrity": "sha512-v1GxTxTac4qmGuObQK50KIO/J6sBV2dz2d9GkV6jR5EKJVMyN/uTb2Ua5gZ6LO254ZEYfhPBK58pcuFueo2Bdg==", - "requires": { - "pino": "^6.0.0", - "rxjs": "^6.5.4" - } + "version": "0.0.7", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/logger/-/logger-0.0.7.tgz", + "integrity": "sha512-4bAfKRQJ2MBK9LX+4mCE8GRHIZ0REBQnwbxO1j3aRtpV7rkPQ9Dr0OK4RQ/FoGqLUCU1RiquO2wku9o8PtMT4w==" }, "@ucap/native": { - "version": "0.0.2", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/native/-/native-0.0.2.tgz", - "integrity": "sha512-kPF5tuWEeJ8QK5GGVOJK18ZIx2+surv3Crrf5rPXpdUWJgHA5BntCPWuYDz8M+nEVhjatdCrs9stqXNFJbtV0Q==", - "requires": { - "@ucap/core": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.6", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/native/-/native-0.0.6.tgz", + "integrity": "sha512-XIAikUbtygfBflezVD3CybBPwRNUXeFHRttRSwNJsRezdI0kBY446r7uwYNVJ6XI3H5bINisoXBL49eTPeWrPQ==" }, "@ucap/native-browser": { - "version": "0.0.2", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/native-browser/-/native-browser-0.0.2.tgz", - "integrity": "sha512-yTvKwaTSe5+aP99oreYPT24r2QJcuBhM0q8goVW2cWUHbUKElMu+pWLZ18s10nCQ97yWs5D2naC4p34MC1KiMQ==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/native": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - }, - "@ucap/native": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/native/-/native-0.0.1.tgz", - "integrity": "sha512-lvryFxk9luRqgsVVQwjFGnJl8JXseeoqnrqsUfG2AhOFGNioqQiLdhQZex3cxh4wr/+/t4pHPiMoOL0yVV/sdg==", - "requires": { - "@ucap/core": "^0.0.1", - "rxjs": "^6.5.4" - } - } - } + "version": "0.0.5", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/native-browser/-/native-browser-0.0.5.tgz", + "integrity": "sha512-V9wcOFQ+Vt6k5Fn3SzGgvenwYwOkAzbgIeBL53733lT/3FYuv5uauxFEn2YVnR74LsJ/+8p6p8Ab0nIqKweYQA==" }, "@ucap/ng-api-common": { "version": "0.0.1", @@ -1926,9 +1821,9 @@ "integrity": "sha512-F1q2lIzwn5yUkQI5mdQmRHc8NvOnyH5NJAI3JpTWp+5LWCpCMw9+bWuxYcUST4RFJkawLrNm/Sq2N3pO7c4g6Q==" }, "@ucap/ng-i18n": { - "version": "0.0.5", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/ng-i18n/-/ng-i18n-0.0.5.tgz", - "integrity": "sha512-P+MUurrVyLeRl4l7b4aLMG3/nPpZ54U1U2VQnAGb7OHNvZG/BJVzZqc2Z+YvnNXTe8PhMqkRfRysOZeu1AGj5A==" + "version": "0.0.6", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/ng-i18n/-/ng-i18n-0.0.6.tgz", + "integrity": "sha512-0vnoC3tAbXmcnsL1xy5Otswu75ZBht8wrI5Zz1mfSgYT/mnR9QoNkpCHiHfl/ILAJlKD0iBn+BBOrwTIprsJ/Q==" }, "@ucap/ng-logger": { "version": "0.0.1", @@ -2056,9 +1951,9 @@ "integrity": "sha512-U/tpzUgXSGrWzetmmqEcLYYzgCUEew3C0CcfYSr+ajkt4AvHqcFijqXARVHXVahfAkMXZU69/8etDhzWmOcvGw==" }, "@ucap/ng-ui-authentication": { - "version": "0.0.5", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/ng-ui-authentication/-/ng-ui-authentication-0.0.5.tgz", - "integrity": "sha512-NwsISychSVyCxVO3j13jNRtHbZpvKY2pb/WBATGPnkYrhaB4x7a+b4gXhWUCmO5QZoYrb2uBV4K9hXANr2Ergg==" + "version": "0.0.8", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/ng-ui-authentication/-/ng-ui-authentication-0.0.8.tgz", + "integrity": "sha512-n6pV113DuSD5TV4jAwrY/JJlhcBtNLHEFTTxrQ8QhFIMz9hgbRC6x4R/LF8q9kzx0BWQcgxGdfgY1oN3YoqGtg==" }, "@ucap/ng-ui-skin-default": { "version": "0.0.1", @@ -2071,402 +1966,99 @@ "integrity": "sha512-r74sXWxe6dHD/tiJ4VcWQ+oRD2yDbIFNJtsO7NyI/pMRILXyUX5qUDl53SEPL4m1vSFGXztIDyQ6DSi7UYcWCw==" }, "@ucap/pi": { - "version": "0.0.2", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/pi/-/pi-0.0.2.tgz", - "integrity": "sha512-HgCuKMmdWMEhCi4zoPEOd/Ef+Fm7dRdI/66Jzyr2JRbbStAsrO9qIwXlmtTI40Ggy7nCrt1ywRAtV1m1pA2+Ug==", - "requires": { - "@ucap/api": "^0.0.1", - "@ucap/core": "^0.0.1", - "axios": "^0.19.2", - "crypto-js": "^4.0.0", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.4", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/pi/-/pi-0.0.4.tgz", + "integrity": "sha512-faQQ8cV3GFChN84yUwfWq/KL2WKT0QaNS8hsVI9qWRXSqRaIkA9AGxZM9u/YhUB1NGMIQDz6hyJ/iD9B9l8JFA==" }, "@ucap/protocol": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol/-/protocol-0.0.1.tgz", - "integrity": "sha512-gz7415jNG5Mv9SskjKtfFTrwuT+boizCaqyzaqLCgr3ScHUl/MTtMiEZUg1y73aMDaOe0qFuuqulaKlv+578Ww==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/web-socket": "^0.0.1", - "queueing-subject": "^0.3.4", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol/-/protocol-0.0.2.tgz", + "integrity": "sha512-+lk492tb+vXeXJfINiW63Po9gytuA9EZwriZiYApHhLG0DeTUnL/FjWMspGNG7vHlhp2kld3zJlThZ45jz/YQQ==" }, "@ucap/protocol-authentication": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-authentication/-/protocol-authentication-0.0.1.tgz", - "integrity": "sha512-BSwNrclg5uHjdd9B7Z8WKZbCdBTkbK7Hbj1t+sF9UvFXlld6SS7xhB1T1lKhGhGHWfVDpxBk9Gmle/hPnznGxw==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-authentication/-/protocol-authentication-0.0.2.tgz", + "integrity": "sha512-DSnoPvWAfLLWb8WMfCX72vJHvNrj5GKM90p6mo8GUML1F9s440ovaSpNmiLkq32TPhJeFvGI6R8oqdQzI1lASg==" }, "@ucap/protocol-buddy": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-buddy/-/protocol-buddy-0.0.1.tgz", - "integrity": "sha512-oBvnEXmL8jVye8GngH5mDF1jqJVGeBAmU4pmSDkGQoR6oU9CO5wHjx4A+6OMylJVNMABN6J4KHZk9bNQQrXL1Q==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-buddy/-/protocol-buddy-0.0.2.tgz", + "integrity": "sha512-HvwU2DCGrloB0U3jnGqfORmCu+j/sV/4VsAZooCX6kTzP8r+SF2PvgSLm87KzMhCV3BjOR7vhwl/bu7CDh75iQ==" }, "@ucap/protocol-event": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-event/-/protocol-event-0.0.1.tgz", - "integrity": "sha512-Sm8KzeEYvex0Y4mWHpdLz/J+2QbR/EoUG0bMtZGx2q719pIlm0TvqXZnF11CVh4meHWkbbX5M3ooMsfjIJB0Uw==", - "requires": { - "@ucap/api": "^0.0.1", - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-event/-/protocol-event-0.0.2.tgz", + "integrity": "sha512-qEVyzf0aMm0yVqhLlLOjD9WgfAo+BMtxtyGc4oFSjIMhUPLxiX0DQ5r5f+SH2YDYUjKZD37NjhXbq3CCSeXfTA==" }, "@ucap/protocol-file": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-file/-/protocol-file-0.0.1.tgz", - "integrity": "sha512-u4ME8/okqXVtsGRID8oQhNxkQDp6ADl0xA8y1woDVsXv3SE0QhZNQKWVE1Au5vvp6VxT/q8vD6WgTPK3Evca4g==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "@ucap/protocol-event": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-file/-/protocol-file-0.0.2.tgz", + "integrity": "sha512-/uLPgJBe4Upu/hkiUCXJb1x0/QtTUaxMfm/6tSdErZsFgUB0rlBKEO87N+waM1PwFGARbIBIvdT5E1Q9Tn7jUA==" }, "@ucap/protocol-group": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-group/-/protocol-group-0.0.1.tgz", - "integrity": "sha512-v833QlDnbB9dU1C9CrjAybWlLM6RBw1bUlx4FGg9ml33Swoj0QDyezTFejVLrt8Xa77PF4wgwS43qBdac2KVmA==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-group/-/protocol-group-0.0.2.tgz", + "integrity": "sha512-ZkUA9mEphYwsRjuwQ7bQZ7e+suSi+wiLG+NMwj8fwhCoEUkxASBuSgYKIo2RyuMgew8Oei535t6UpokGYKTS+A==" }, "@ucap/protocol-info": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-info/-/protocol-info-0.0.1.tgz", - "integrity": "sha512-c2oB8juMxg8LQxfPiWClG6nguy2VCBxr9HnCPNXd7DX1vpy1fQKtV8qS5mdi8Th8fr1C3Z3Fs/6pN0zLkznxCQ==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "@ucap/protocol-status": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-info/-/protocol-info-0.0.2.tgz", + "integrity": "sha512-yonCF0rFtfwQYk7pPtcGHo/hhXe9xuxdGFoBd8iGDJSxNJDr4s/j/dsLTCiyWRTS/H9K+8A2cABCrfpGn0KVTA==" }, "@ucap/protocol-inner": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-inner/-/protocol-inner-0.0.1.tgz", - "integrity": "sha512-hx+luBngrIs4UmrFu0vG3OGj6XHgn68yGmnTZj0LPwyuXWsB6nrM5hchbGfYc1jXBiaQfGdOlH2GpgCx9Ab/XQ==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-inner/-/protocol-inner-0.0.2.tgz", + "integrity": "sha512-Qnsk08yiL75crDh3DQ96eNi5sD2zoRUclXy033ug2FqAFmihMuU+B2XHalTl8YE4mRSwFdAacq/VIiePyLlqgA==" }, "@ucap/protocol-option": { - "version": "0.0.3", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-option/-/protocol-option-0.0.3.tgz", - "integrity": "sha512-eN3yxUDW4pcZf/nGfMbI0lnousWmvPkL5QhIP/lSgwOLZu3+hcWK5vMXr1bIUHHQyeUESzSCiMxB0CMjGOeJug==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.4", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-option/-/protocol-option-0.0.4.tgz", + "integrity": "sha512-dDf6xmV5bnVAcym/S4CTh+kgbgCXjSoZbgCQG3Ay9hbuu5IhJjwWC+qoLWDdao0h77souMOzWxBULAJadqKoFA==" }, "@ucap/protocol-ping": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-ping/-/protocol-ping-0.0.1.tgz", - "integrity": "sha512-Is43L6aSOkvvO7uyhrs8EWRBQDO9YlYXcH19Xp1DRCsL0bKJcn7k/Gd8UYrpi6UaCVbWonYCoGEv9vwWunPjBg==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-ping/-/protocol-ping-0.0.2.tgz", + "integrity": "sha512-vBPGHVZ9CwU+gtFxUAwzo8IqPvhTw9KzKVNTqkMgsPuHrikcu2MWwQCicqYVgCCPHycRvPKZd8rPlQoOj/O3fA==" }, "@ucap/protocol-query": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-query/-/protocol-query-0.0.1.tgz", - "integrity": "sha512-Cpxu49vhsA7q5r3Wm4JdH5/tQ7V3PxIi51C4X7XzPElZcDI/UqNwCbQ4TDaUqU1O2BO+GenUYcCBk6e9btz2QA==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "@ucap/protocol-authentication": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-query/-/protocol-query-0.0.2.tgz", + "integrity": "sha512-xfzEFchd9FYPbj21UtZo0WwS+LhDPTwSaCnWQHGRtFg3waDAgaEjKRhaCNlUuxXhHWuSnKBHUS50HsQTojUArQ==" }, "@ucap/protocol-room": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-room/-/protocol-room-0.0.1.tgz", - "integrity": "sha512-yeybVz85ujTuf3jGHEIxQ34dxyRTZIf4Im4ioUQulaKIb8vaSDSFEv0HGbbVWFoYR+2iFKPiXWBs7v7UCCXjMw==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "@ucap/protocol-authentication": "^0.0.1", - "@ucap/protocol-event": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-room/-/protocol-room-0.0.2.tgz", + "integrity": "sha512-wb381vwN8G6WYs/qwN+8HrsmVwwGfH8bJ4P+zndHx39KUtAiOHn90k60FE7l7Fz0gvrN/WAzgwTD6UbdbdvkxA==" }, "@ucap/protocol-service": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-service/-/protocol-service-0.0.1.tgz", - "integrity": "sha512-mQ8KUgywBprH3zEhLAJmoyL2CHPqknqgbUi2VA8eIzM4XAZXvvzVXHbPjRfXJPkcsezHvYcpXG0JNM7qGHkxjg==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-service/-/protocol-service-0.0.2.tgz", + "integrity": "sha512-KUI5RBeJ3Wfkvw4P0Mxg9hc6FRyQi0CgVl1fkVV0POiVg38VyLBDROjF4PWJ9OpPbd1UF/azWvcm/04XqBryjg==" }, "@ucap/protocol-status": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-status/-/protocol-status-0.0.1.tgz", - "integrity": "sha512-nMLCvYp8MycaePawl7GfCLxaFnCSXiBdvrnsl84WnhE53IRm10qMasJjvqBja5RPNX8QaogmrPqIzDXP45wfRg==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-status/-/protocol-status-0.0.2.tgz", + "integrity": "sha512-h8Kw+aZkwbHmf/Xknz3//f0RqZYTOmVr98mfLAhW5EHQDR9Lf0YZXIUAsIvHQ1NPI3nEK5/SJnOPDesZKwqLmw==" }, "@ucap/protocol-sync": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-sync/-/protocol-sync-0.0.1.tgz", - "integrity": "sha512-MbBB3Te4KWfC1OYDsGqBSSX64SaMTG57CDZrG9wTLf+RnU5fq5SEk4QJB211fi+uKD8zUZqHARgYbypPfd+Iow==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "@ucap/protocol-authentication": "^0.0.1", - "@ucap/protocol-event": "^0.0.1", - "@ucap/protocol-room": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-sync/-/protocol-sync-0.0.2.tgz", + "integrity": "sha512-Uu0V8kPb0FXg+zmEjLRN3T+O1tJ17PbrJEDN/YDEkrTs0TsKFANSeCZLqGOx0tk5e/eFpDtfNguXpPI1iCQmwg==" }, "@ucap/protocol-umg": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-umg/-/protocol-umg-0.0.1.tgz", - "integrity": "sha512-5oUI96XDK3aLnHs9Z0lv1SLPbhtDRqBXXr3Ez1nF6IPEG4J9eYSqYOOc3hom4xo6eQXXerOX5le245yXzM7wOw==", - "requires": { - "@ucap/core": "^0.0.1", - "@ucap/protocol": "^0.0.1", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/protocol-umg/-/protocol-umg-0.0.2.tgz", + "integrity": "sha512-PC9+c13YMoIyY+Pm3q9LQUYGePnPOmf56+n3EnztPyfcmqHOH0UL+7HqMByg+SjMKY5j+BCI6gFMnlKTtQK3Yw==" }, "@ucap/web-socket": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/web-socket/-/web-socket-0.0.1.tgz", - "integrity": "sha512-T10syd72WfdTMVnAF5nG5PF6zk9NfOiika1+x2abOlPPPepZqamdr7317kI0ZJzleynczp02hgZuPC0DC0KiMQ==", - "requires": { - "rxjs": "^6.5.4" - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/web-socket/-/web-socket-0.0.2.tgz", + "integrity": "sha512-hKAEsIzMhUuR8u26ENkuIAh4Xp8ltzBlZggxhqtLifP8KbgQdWD3w3+1M1697MPni8q42+Q/ZH/1IHLdi8KB7w==" }, "@ucap/web-storage": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/web-storage/-/web-storage-0.0.1.tgz", - "integrity": "sha512-JN+CpYDrGBGTvf2XiBp1qDEYP5K0epwbyL1Jb8YY5I/B2AInztRj/s+1hjRClozbkm8rAyvtNQSK9rCdz/2xew==", - "requires": { - "@ucap/core": "^0.0.1", - "crypto-js": "^4.0.0", - "rxjs": "^6.5.4" - }, - "dependencies": { - "@ucap/core": { - "version": "0.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/core/-/core-0.0.1.tgz", - "integrity": "sha512-TfQqgu9/Ys0a7wN+3U97ZivUcwF9Ko0uY3qWgyV41MzlCKjigH2L2+hxj6/x9yxXZIK6/ynvVW3RB7x1odR5bQ==", - "requires": { - "detect-browser": "^5.0.0", - "file-type": "^14.1.4" - } - } - } + "version": "0.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/@ucap/web-storage/-/web-storage-0.0.2.tgz", + "integrity": "sha512-KyZlFCmEfEsMo9h1fI2mZjULfpE9PEybf1Ax5N5cR4H/IZRSYsA+pCEgV+u9RAxIn0h/fI+y2sg60bpheorEIA==" }, "@webassemblyjs/ast": { "version": "1.8.5", @@ -3062,6 +2654,29 @@ "integrity": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==", "requires": { "follow-redirects": "1.5.10" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "requires": { + "ms": "2.0.0" + } + }, + "follow-redirects": { + "version": "1.5.10", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/follow-redirects/-/follow-redirects-1.5.10.tgz", + "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", + "requires": { + "debug": "=3.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } } }, "axobject-query": { @@ -3419,15 +3034,15 @@ } }, "browserslist": { - "version": "4.11.0", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/browserslist/-/browserslist-4.11.0.tgz", - "integrity": "sha512-WqEC7Yr5wUH5sg6ruR++v2SGOQYpyUdYYd4tZoAq1F7y+QXoLoYGXVbxhtaIqWmAJjtNTRjVD3HuJc1OXTel2A==", + "version": "4.11.1", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/browserslist/-/browserslist-4.11.1.tgz", + "integrity": "sha512-DCTr3kDrKEYNw6Jb9HFxVLQNaue8z+0ZfRBRjmCunKDEXEBajKDj2Y+Uelg+Pi29OnvaSGwjOsnRyNEkXzHg5g==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001035", - "electron-to-chromium": "^1.3.380", - "node-releases": "^1.1.52", - "pkg-up": "^3.1.0" + "caniuse-lite": "^1.0.30001038", + "electron-to-chromium": "^1.3.390", + "node-releases": "^1.1.53", + "pkg-up": "^2.0.0" } }, "browserstack": { @@ -3732,6 +3347,11 @@ } } }, + "classlist.js": { + "version": "1.1.20150312", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/classlist.js/-/classlist.js-1.1.20150312.tgz", + "integrity": "sha1-HXCEL3Ai8I2awIbOaeWyUPLFd4k=" + }, "clean-stack": { "version": "2.2.0", "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/clean-stack/-/clean-stack-2.2.0.tgz", @@ -4175,6 +3795,21 @@ "pkg-dir": "^3.0.0" } }, + "p-limit": { + "version": "2.2.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-limit/-/p-limit-2.2.2.tgz", + "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, "rimraf": { "version": "2.7.1", "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/rimraf/-/rimraf-2.7.1.tgz", @@ -4999,9 +4634,9 @@ "dev": true }, "electron-to-chromium": { - "version": "1.3.387", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/electron-to-chromium/-/electron-to-chromium-1.3.387.tgz", - "integrity": "sha512-jjQ6WkxrOu0rtGqY9/74Z+UEVQ7YmJU2rCX6kH4eidKP0ZK0VKB3/i1avXQ+EDwJAABKGaOAbJrcyz18P8E3aA==", + "version": "1.3.392", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/electron-to-chromium/-/electron-to-chromium-1.3.392.tgz", + "integrity": "sha512-/hsgeVdReDsyTBE0aU9FRdh1wnNPrX3xlz3t61F+CJPOT+Umfi9DXHsCX85TEgWZQqlow0Rw44/4/jbU2Sqgkg==", "dev": true }, "elliptic": { @@ -5780,6 +5415,15 @@ "semver": "^6.0.0" } }, + "p-limit": { + "version": "2.2.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-limit/-/p-limit-2.2.2.tgz", + "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, "p-locate": { "version": "4.1.0", "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-locate/-/p-locate-4.1.0.tgz", @@ -5789,6 +5433,12 @@ "p-limit": "^2.2.0" } }, + "p-try": { + "version": "2.2.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, "path-exists": { "version": "4.0.0", "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/path-exists/-/path-exists-4.0.0.tgz", @@ -5807,12 +5457,12 @@ } }, "find-up": { - "version": "3.0.0", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "version": "2.1.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "^2.0.0" } }, "flatstr": { @@ -5821,9 +5471,9 @@ "integrity": "sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw==" }, "flatted": { - "version": "2.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/flatted/-/flatted-2.0.1.tgz", - "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", + "version": "2.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", "dev": true }, "flush-write-stream": { @@ -5837,25 +5487,22 @@ } }, "follow-redirects": { - "version": "1.5.10", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/follow-redirects/-/follow-redirects-1.5.10.tgz", - "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", + "version": "1.11.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/follow-redirects/-/follow-redirects-1.11.0.tgz", + "integrity": "sha512-KZm0V+ll8PfBrKwMzdo5D13b1bur9Iq9Zd/RMmAoQQcl2PxxFml8cxXPaaPYVbV0RjNjq1CU7zIzAOqtUPudmA==", + "dev": true, "requires": { - "debug": "=3.1.0" + "debug": "^3.0.0" }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } }, @@ -6298,9 +5945,9 @@ "dev": true }, "html-escaper": { - "version": "2.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/html-escaper/-/html-escaper-2.0.1.tgz", - "integrity": "sha512-hNX23TjWwD3q56HpWjUHOKj1+4KKlnjv9PcmBUYKVpga+2cnb9nDx/B1o0yO4n+RZXZdiNxzx6B24C9aNMTkkQ==", + "version": "2.0.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, "http-cache-semantics": { @@ -6440,9 +6087,9 @@ } }, "i18next": { - "version": "19.3.3", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/i18next/-/i18next-19.3.3.tgz", - "integrity": "sha512-CnuPqep5/JsltkGvQqzYN4d79eCe0TreCBRF3a8qHHi8x4SON1qqZ/pvR2X7BfNkNqpA5HXIqw0E731H+VsgSg==", + "version": "19.3.4", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/i18next/-/i18next-19.3.4.tgz", + "integrity": "sha512-ef7AxxutzdhBsBNugE9jgqsbwesG1muJOtZ9ZrPARPs/jXegViTp4+8JCeMp8BAyTIo1Zn0giqc8+2UpqFjU0w==", "requires": { "@babel/runtime": "^7.3.1" } @@ -6462,16 +6109,6 @@ "requires": { "js-yaml": "3.13.1", "json5": "2.0.0" - }, - "dependencies": { - "json5": { - "version": "2.0.0", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/json5/-/json5-2.0.0.tgz", - "integrity": "sha512-0EdQvHuLm7yJ7lyG5dp7Q3X2ku++BG5ZHaJ5FTnaXpKqDrw4pMxel5Bt3oAYMthnrthFBdnZ1FcsXTPyrQlV0w==", - "requires": { - "minimist": "^1.2.0" - } - } } }, "i18next-xhr-backend": { @@ -7312,10 +6949,9 @@ "dev": true }, "json5": { - "version": "1.0.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, + "version": "2.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/json5/-/json5-2.0.0.tgz", + "integrity": "sha512-0EdQvHuLm7yJ7lyG5dp7Q3X2ku++BG5ZHaJ5FTnaXpKqDrw4pMxel5Bt3oAYMthnrthFBdnZ1FcsXTPyrQlV0w==", "requires": { "minimist": "^1.2.0" } @@ -7519,9 +7155,9 @@ } }, "libphonenumber-js": { - "version": "1.7.48", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/libphonenumber-js/-/libphonenumber-js-1.7.48.tgz", - "integrity": "sha512-qiHOxCBQ8cNqSkpUcAFn0vwk8eZs6Bq6ttQTiiAICEfUZp3uQ/RuOnPqYMw5qciHCrCNjLN3qp3ih1u0+NuzVA==", + "version": "1.7.49", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/libphonenumber-js/-/libphonenumber-js-1.7.49.tgz", + "integrity": "sha512-AthHsii6+s+TBNMCUvKRzjscxMJAUD9rjDYZNj8rCVKBX9w1TzRbsmv+f4/pSuoHeKoNI64rcOV0Xb+7hoHudw==", "requires": { "minimist": "^1.2.5", "xml2js": "^0.4.17" @@ -7561,15 +7197,26 @@ "big.js": "^5.2.2", "emojis-list": "^2.0.0", "json5": "^1.0.1" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + } } }, "locate-path": { - "version": "3.0.0", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "version": "2.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { - "p-locate": "^3.0.0", + "p-locate": "^2.0.0", "path-exists": "^3.0.0" } }, @@ -8337,13 +7984,10 @@ } }, "node-releases": { - "version": "1.1.52", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/node-releases/-/node-releases-1.1.52.tgz", - "integrity": "sha512-snSiT1UypkgGt2wxPqS6ImEUICbNCMb31yaxWrOLXjhlt2z2/IBpaOxzONExqSm4y5oLnAqjjRWu+wsDzK5yNQ==", - "dev": true, - "requires": { - "semver": "^6.3.0" - } + "version": "1.1.53", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/node-releases/-/node-releases-1.1.53.tgz", + "integrity": "sha512-wp8zyQVwef2hpZ/dJH7SfSrIPD6YoJz6BDQDpGEkcA0s3LpAQoxBIYmfIq6QAhC1DhwsyCgTaTTcONwX8qzCuQ==", + "dev": true }, "normalize-package-data": { "version": "2.5.0", @@ -8814,21 +8458,21 @@ "dev": true }, "p-limit": { - "version": "2.2.2", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "version": "1.3.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { - "p-try": "^2.0.0" + "p-try": "^1.0.0" } }, "p-locate": { - "version": "3.0.0", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "version": "2.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { - "p-limit": "^2.0.0" + "p-limit": "^1.1.0" } }, "p-map": { @@ -8850,9 +8494,9 @@ } }, "p-try": { - "version": "2.2.0", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "version": "1.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, "pacote": { @@ -9180,15 +8824,60 @@ "dev": true, "requires": { "find-up": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-limit/-/p-limit-2.2.2.tgz", + "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + } } }, "pkg-up": { - "version": "3.1.0", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "version": "2.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/pkg-up/-/pkg-up-2.0.0.tgz", + "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", "dev": true, "requires": { - "find-up": "^3.0.0" + "find-up": "^2.1.0" } }, "portfinder": { @@ -11717,24 +11406,46 @@ } } }, - "string.prototype.trimleft": { - "version": "2.1.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", - "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", + "string.prototype.trimend": { + "version": "1.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/string.prototype.trimend/-/string.prototype.trimend-1.0.0.tgz", + "integrity": "sha512-EEJnGqa/xNfIg05SxiPSqRS7S9qwDhYts1TSLR1BQfYUfPe1stofgGKvwERK9+9yf+PpfBMlpBaCHucXGPQfUA==", "dev": true, "requires": { "define-properties": "^1.1.3", - "function-bind": "^1.1.1" + "es-abstract": "^1.17.5" + } + }, + "string.prototype.trimleft": { + "version": "2.1.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz", + "integrity": "sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5", + "string.prototype.trimstart": "^1.0.0" } }, "string.prototype.trimright": { - "version": "2.1.1", - "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", - "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", + "version": "2.1.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz", + "integrity": "sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg==", "dev": true, "requires": { "define-properties": "^1.1.3", - "function-bind": "^1.1.1" + "es-abstract": "^1.17.5", + "string.prototype.trimend": "^1.0.0" + } + }, + "string.prototype.trimstart": { + "version": "1.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/string.prototype.trimstart/-/string.prototype.trimstart-1.0.0.tgz", + "integrity": "sha512-iCP8g01NFYiiBOnwG1Xc3WZLyoo+RuBymwIlWncShXDDJYWN6DbnM3odslBJdgCdRlq94B5s63NWAZlcn2CS4w==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" } }, "string_decoder": { @@ -12079,6 +11790,15 @@ "semver": "^6.0.0" } }, + "p-limit": { + "version": "2.2.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-limit/-/p-limit-2.2.2.tgz", + "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, "p-locate": { "version": "4.1.0", "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-locate/-/p-locate-4.1.0.tgz", @@ -12088,6 +11808,12 @@ "p-limit": "^2.2.0" } }, + "p-try": { + "version": "2.2.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, "path-exists": { "version": "4.0.0", "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/path-exists/-/path-exists-4.0.0.tgz", @@ -13448,6 +13174,11 @@ "defaults": "^1.0.3" } }, + "web-animations-js": { + "version": "2.3.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/web-animations-js/-/web-animations-js-2.3.2.tgz", + "integrity": "sha512-TOMFWtQdxzjWp8qx4DAraTWTsdhxVSiWa6NkPFSaPtZ1diKUxTn4yTix73A1euG1WbSOMMPcY51cnjTIHrGtDA==" + }, "webdriver-js-extender": { "version": "2.1.0", "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz", @@ -14571,6 +14302,51 @@ "which-module": "^2.0.0", "y18n": "^3.2.1 || ^4.0.0", "yargs-parser": "^11.1.1" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.2", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-limit/-/p-limit-2.2.2.tgz", + "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "http://10.81.13.221:8081/nexus/repository/npm-all/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + } } }, "yargs-parser": { diff --git a/package.json b/package.json index a2d8f1b..dc96ae7 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,10 @@ "ng": "ng", "start": "ng serve", "start:hmr": "ng serve --configuration hmr", + "start:hmr-es5": "ng serve --configuration hmr-es5", "build": "ng build", + "build:production": "ng build --prod", + "build:production-es5": "ng build --configuration production-es5", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" @@ -28,16 +31,16 @@ "@ngrx/entity": "^9.0.0", "@ngrx/router-store": "^9.0.0", "@ngrx/store": "^9.0.0", - "@ucap/api": "~0.0.1", - "@ucap/api-common": "~0.0.2", - "@ucap/api-external": "~0.0.4", - "@ucap/api-message": "~0.0.2", - "@ucap/api-prompt": "~0.0.2", - "@ucap/api-public": "~0.0.2", - "@ucap/core": "~0.0.2", - "@ucap/logger": "~0.0.4", - "@ucap/native": "~0.0.2", - "@ucap/native-browser": "~0.0.2", + "@ucap/api": "~0.0.2", + "@ucap/api-common": "~0.0.3", + "@ucap/api-external": "~0.0.5", + "@ucap/api-message": "~0.0.3", + "@ucap/api-prompt": "~0.0.3", + "@ucap/api-public": "~0.0.3", + "@ucap/core": "~0.0.4", + "@ucap/logger": "~0.0.7", + "@ucap/native": "~0.0.6", + "@ucap/native-browser": "~0.0.5", "@ucap/ng-api-common": "~0.0.1", "@ucap/ng-api-external": "~0.0.1", "@ucap/ng-api-message": "~0.0.1", @@ -45,7 +48,7 @@ "@ucap/ng-api-public": "~0.0.1", "@ucap/ng-core": "~0.0.1", "@ucap/ng-logger": "~0.0.1", - "@ucap/ng-i18n": "~0.0.5", + "@ucap/ng-i18n": "~0.0.6", "@ucap/ng-native": "~0.0.1", "@ucap/ng-native-browser": "~0.0.1", "@ucap/ng-pi": "~0.0.1", @@ -71,28 +74,33 @@ "@ucap/ng-store-organization": "~0.0.3", "@ucap/ng-web-storage": "~0.0.1", "@ucap/ng-ui": "~0.0.3", - "@ucap/ng-ui-authentication": "~0.0.5", + "@ucap/ng-ui-authentication": "~0.0.8", "@ucap/ng-ui-skin-default": "~0.0.1", - "@ucap/pi": "~0.0.2", - "@ucap/protocol": "~0.0.1", - "@ucap/protocol-authentication": "~0.0.1", - "@ucap/protocol-buddy": "~0.0.1", - "@ucap/protocol-event": "~0.0.1", - "@ucap/protocol-file": "~0.0.1", - "@ucap/protocol-group": "~0.0.1", - "@ucap/protocol-info": "~0.0.1", - "@ucap/protocol-inner": "~0.0.1", - "@ucap/protocol-option": "~0.0.3", - "@ucap/protocol-ping": "~0.0.1", - "@ucap/protocol-query": "~0.0.1", - "@ucap/protocol-room": "~0.0.1", - "@ucap/protocol-service": "~0.0.1", - "@ucap/protocol-status": "~0.0.1", - "@ucap/protocol-sync": "~0.0.1", - "@ucap/protocol-umg": "~0.0.1", - "@ucap/web-socket": "~0.0.1", - "@ucap/web-storage": "~0.0.1", + "@ucap/pi": "~0.0.4", + "@ucap/protocol": "~0.0.2", + "@ucap/protocol-authentication": "~0.0.2", + "@ucap/protocol-buddy": "~0.0.2", + "@ucap/protocol-event": "~0.0.2", + "@ucap/protocol-file": "~0.0.2", + "@ucap/protocol-group": "~0.0.2", + "@ucap/protocol-info": "~0.0.2", + "@ucap/protocol-inner": "~0.0.2", + "@ucap/protocol-option": "~0.0.4", + "@ucap/protocol-ping": "~0.0.2", + "@ucap/protocol-query": "~0.0.2", + "@ucap/protocol-room": "~0.0.2", + "@ucap/protocol-service": "~0.0.2", + "@ucap/protocol-status": "~0.0.2", + "@ucap/protocol-sync": "~0.0.2", + "@ucap/protocol-umg": "~0.0.2", + "@ucap/web-socket": "~0.0.2", + "@ucap/web-storage": "~0.0.2", "autolinker": "^3.13.0", + "axios": "^0.19.2", + "classlist.js": "^1.1.20150312", + "crypto-js": "^4.0.0", + "detect-browser": "^5.0.0", + "file-type": "^14.1.4", "i18next": "^19.3.3", "i18next-browser-languagedetector": "^4.0.2", "i18next-node-fs-backend": "^2.1.3", @@ -102,8 +110,11 @@ "moment-timezone": "^0.5.28", "ngx-perfect-scrollbar": "^9.0.0", "ngx-virtual-scroller": "^4.0.3", + "pino": "^6.0.0", + "queueing-subject": "^0.3.4", "rxjs": "~6.5.4", "tslib": "^1.10.0", + "web-animations-js": "^2.3.2", "zone.js": "~0.10.2" }, "devDependencies": { diff --git a/src/app/app-provider.module.ts b/src/app/app-provider.module.ts index d3e8117..cdf1975 100644 --- a/src/app/app-provider.module.ts +++ b/src/app/app-provider.module.ts @@ -2,10 +2,7 @@ import { NgModule, APP_INITIALIZER } from '@angular/core'; import axios from 'axios'; -import { NativeService, NativeType } from '@ucap/native'; - import { AXIOS_INSTANCE } from '@ucap/ng-core'; -import { I18nService } from '@ucap/ng-i18n'; import { UCAP_NATIVE_SERVICE } from '@ucap/ng-native'; import { environment } from '@environments'; @@ -14,9 +11,10 @@ import { AppAuthenticationGuard } from './guards/app-authentication.guard'; import { AppAuthenticationService } from './services/app-authentication.service'; import { AppNativeService } from './services/app-native.service'; +import { AppService } from './services/app.service'; const GUARDS = [AppAuthenticationGuard]; -const SERVICES = [AppAuthenticationService, AppNativeService]; +const SERVICES = [AppService, AppAuthenticationService, AppNativeService]; const axiosFactory = () => { const i = axios.create(); @@ -24,51 +22,8 @@ const axiosFactory = () => { return i; }; -const appInit = (nativeService: NativeService, i18nService: I18nService) => { - return () => - new Promise(async (resolve, reject) => { - switch (nativeService.type()) { - case NativeType.Browser: - const xhr = await import('i18next-xhr-backend').then(m => m.default); - const languageDetector = await import( - 'i18next-browser-languagedetector' - ).then(m => m.default); - i18nService.use(xhr).use(languageDetector); - break; - // case NativeType.Electron: - // const nodeFs = await import('i18next-node-fs-backend').then(m => m); - // i18nService.use(nodeFs); - // break; - default: - break; - } - - i18nService - .init({ - whitelist: ['ko', 'en'], - fallbackLng: 'ko', - debug: true, // set debug? - returnEmptyString: false, - ns: [ - 'common', - 'organization', - 'authentication', - 'group', - 'chat', - 'call', - 'message' - ], - backend: { - loadPath: 'assets/i18n/{{lng}}/{{ns}}.json' - } - }) - .then(() => { - resolve(); - }) - .catch(reason => { - reject(reason); - }); - }); +const appInit = (appService: AppService) => { + return () => appService.initialize(); }; @NgModule({ @@ -90,7 +45,7 @@ const appInit = (nativeService: NativeService, i18nService: I18nService) => { { provide: APP_INITIALIZER, useFactory: appInit, - deps: [UCAP_NATIVE_SERVICE, I18nService], + deps: [AppService], multi: true }, ...GUARDS, diff --git a/src/app/app.module.ts b/src/app/app.module.ts index 46f010b..bbea980 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -64,6 +64,7 @@ import { environment } from '@environments'; LoggerModule.forRoot({ optionsOrStream: { + level: 'debug', browser: { write: o => { console.log(o); diff --git a/src/app/pages/account/components/login.page.component.html b/src/app/pages/account/components/login.page.component.html index f9e57bd..0a84706 100644 --- a/src/app/pages/account/components/login.page.component.html +++ b/src/app/pages/account/components/login.page.component.html @@ -3,6 +3,7 @@
+
+ + {{ 'login.labels.rememberMe' | ucapI18n }} + + + +
- +
diff --git a/src/app/sections/account/components/login.section.component.ts b/src/app/sections/account/components/login.section.component.ts index 8c454c8..5214a13 100644 --- a/src/app/sections/account/components/login.section.component.ts +++ b/src/app/sections/account/components/login.section.component.ts @@ -1,16 +1,25 @@ import { Subscription } from 'rxjs'; -import { Component, OnInit, OnDestroy, Input } from '@angular/core'; +import { Component, OnInit, OnDestroy, Input, ViewChild } from '@angular/core'; + +import { MatCheckbox } from '@angular/material/checkbox'; import { Store, select } from '@ngrx/store'; import { Company } from '@ucap/api-external'; -import { ProtocolService } from '@ucap/ng-protocol'; +import { LogService } from '@ucap/ng-logger'; import { I18nService } from '@ucap/ng-i18n'; - +import { SessionStorageService } from '@ucap/ng-web-storage'; +import { PiService } from '@ucap/ng-pi'; +import { ProtocolService } from '@ucap/ng-protocol'; import { CompanyActions, CompanySelector } from '@ucap/ng-store-organization'; +import { LoginActions } from '@ucap/ng-store-authentication'; + import { UserStore } from '@app/models/user-store'; +import { LoginSession } from '@app/models/login-session'; +import { AppKey } from '@app/types/app-key.type'; +import { take } from 'rxjs/operators'; @Component({ selector: 'app-sections-account-login', @@ -21,6 +30,9 @@ export class LoginSectionComponent implements OnInit, OnDestroy { @Input() companyGroupCode: string; + @Input() + fixedCompanyCode: string; + @Input() userStore: UserStore; @@ -30,17 +42,33 @@ export class LoginSectionComponent implements OnInit, OnDestroy { @Input() useAutoLogin: boolean; + @ViewChild('chkUseRememberMe', { static: false }) + chkUseRememberMe: MatCheckbox; + + @ViewChild('chkUseAutoLogin', { static: false }) + chkUseAutoLogin: MatCheckbox; + + loginSession: LoginSession; companyList: Company[]; + disableLoginForm = false; + loginProcessing = false; private companyListSubscription: Subscription; constructor( + private piService: PiService, private protocolService: ProtocolService, + private sessionStorageService: SessionStorageService, private i18nService: I18nService, - private store: Store + private store: Store, + private logService: LogService ) {} ngOnInit(): void { + this.loginSession = this.sessionStorageService.get( + AppKey.LoginSession + ); + this.protocolService.disconnect(); this.store.dispatch( @@ -66,12 +94,54 @@ export class LoginSectionComponent implements OnInit, OnDestroy { companyCode: string; loginId: string; loginPw: string; - rememberMe: boolean; - autoLogin: boolean; notValid: () => void; - }) {} + }) { + const useRememberMe: boolean = this.chkUseRememberMe.checked; + const useAutoLogin: boolean = this.chkUseAutoLogin.checked; - onClickForgotPassword() { - this.i18nService.changeLanguage('ko'); + this.disableLoginForm = true; + this.loginProcessing = true; + + this.piService + .login2({ + companyCode: event.companyCode, + loginId: event.loginId, + loginPw: event.loginPw, + deviceType: this.loginSession.deviceType + }) + .pipe(take(1)) + .subscribe( + res => { + if ('success' !== res.status.toLowerCase()) { + this.store.dispatch( + LoginActions.webLoginFailure({ error: res.status }) + ); + return; + } else { + this.store.dispatch( + LoginActions.webLoginSuccess({ + companyCode: event.companyCode, + loginId: event.loginId, + loginPw: event.loginPw, + autoLogin: useAutoLogin, + rememberMe: useRememberMe, + login2Response: res + }) + ); + return; + } + }, + error => { + this.store.dispatch(LoginActions.webLoginFailure({ error })); + }, + () => { + this.disableLoginForm = false; + this.loginProcessing = false; + } + ); + } + + onClickForgotPassword(lng: string) { + this.i18nService.changeLanguage(lng); } } diff --git a/src/app/services/app.service.ts b/src/app/services/app.service.ts new file mode 100644 index 0000000..738a9b4 --- /dev/null +++ b/src/app/services/app.service.ts @@ -0,0 +1,108 @@ +import { Injectable, Inject } from '@angular/core'; + +import { DeviceType, DesktopType } from '@ucap/core'; +import { NativeService, NativeType, OsType } from '@ucap/native'; + +import { I18nService } from '@ucap/ng-i18n'; +import { UCAP_NATIVE_SERVICE } from '@ucap/ng-native'; +import { SessionStorageService } from '@ucap/ng-web-storage'; +import { LoginSession } from '@app/models/login-session'; +import { AppKey } from '@app/types/app-key.type'; + +@Injectable() +export class AppService { + constructor( + private sessionStorageService: SessionStorageService, + private i18nService: I18nService, + @Inject(UCAP_NATIVE_SERVICE) private nativeService: NativeService + ) {} + + initialize(): Promise { + const initSession = new Promise(async (resolve, reject) => { + try { + let deviceType: DeviceType; + let desktopType: DesktopType; + + switch (this.nativeService.type()) { + case NativeType.Browser: + deviceType = DeviceType.Web; + break; + case NativeType.Electron: + deviceType = DeviceType.PC; + break; + default: + break; + } + + const osType = await this.nativeService.osType(); + + switch (osType) { + case OsType.Windows: + desktopType = DesktopType.Windows; + break; + case OsType.MacOS: + desktopType = DesktopType.MacOS; + break; + default: + desktopType = DesktopType.Linux; + break; + } + + this.sessionStorageService.set(AppKey.LoginSession, { + deviceType, + desktopType + }); + + resolve(); + } catch (error) { + reject(error); + } + }); + + const initI18n = new Promise(async (resolve, reject) => { + switch (this.nativeService.type()) { + case NativeType.Browser: + const xhr = await import('i18next-xhr-backend').then(m => m.default); + const languageDetector = await import( + 'i18next-browser-languagedetector' + ).then(m => m.default); + this.i18nService.use(xhr).use(languageDetector); + break; + // case NativeType.Electron: + // const nodeFs = await import('i18next-node-fs-backend').then(m => m); + // i18nService.use(nodeFs); + // break; + default: + break; + } + + this.i18nService + .init({ + whitelist: ['ko', 'en'], + fallbackLng: 'ko', + debug: true, // set debug? + returnEmptyString: false, + ns: [ + 'common', + 'organization', + 'authentication', + 'group', + 'chat', + 'call', + 'message' + ], + backend: { + loadPath: 'assets/i18n/{{lng}}/{{ns}}.json' + } + }) + .then(() => { + resolve(); + }) + .catch(reason => { + reject(reason); + }); + }); + + return Promise.all([initSession, initI18n]); + } +} diff --git a/src/assets/i18n/en/authentication.json b/src/assets/i18n/en/authentication.json index d80ce2e..f363e04 100644 --- a/src/assets/i18n/en/authentication.json +++ b/src/assets/i18n/en/authentication.json @@ -1,7 +1,8 @@ { "login": { "labels": { - "rememberMe": "", + "doLogin": "Login", + "rememberMe": "Remember me", "autoLogin": "Auto login", "instructionsOfLogin": "LOGIN TO YOUR ACCOUNT" }, diff --git a/src/assets/i18n/ko/authentication.json b/src/assets/i18n/ko/authentication.json index aa5cef9..d3e5e20 100644 --- a/src/assets/i18n/ko/authentication.json +++ b/src/assets/i18n/ko/authentication.json @@ -1,7 +1,8 @@ { "login": { "labels": { - "rememberMe": "", + "doLogin": "로그인", + "rememberMe": "아이디 저장", "autoLogin": "자동 로그인", "instructionsOfLogin": "계정에 로그인 하세요." }, diff --git a/src/environments/environment.hmr.ts b/src/environments/environment.hmr.ts index b9355e7..47eaaa5 100644 --- a/src/environments/environment.hmr.ts +++ b/src/environments/environment.hmr.ts @@ -64,12 +64,8 @@ export const environment: Environment = { }, authentication: { usePrivateInformationAgree: false, - rememberMe: { - use: false - }, - autoLogin: { - use: true - } + useRememberMe: true, + useAutoLogin: true }, profile: { editableProfileImage: false diff --git a/src/environments/environment.prod.ts b/src/environments/environment.prod.ts index a438d8a..f61d692 100644 --- a/src/environments/environment.prod.ts +++ b/src/environments/environment.prod.ts @@ -16,159 +16,155 @@ import { } from './environment.type'; export const environment: Environment = { - production: false, - hmr: false, + production: false, + hmr: false, - productConfig: { - productId: 'PRO_000482', - productName: 'EZMessenger', - localEncriptionKey: '!@#$LG%^&*', - nativeServiceClass: BrowserNativeService, - updateCheck: { - deviceType: DeviceType.Renderer, - devicePlatformType: DesktopType.Windows, - intervalHour: 1 - }, - defaultSettings: { - general: { - theme: 'theme-default', - autoLogin: false, - autoLaunch: false, - continueRunWhenClose: true, - locale: 'ko', - hrInfoLocale: 'ko', - startupHideWindow: false, - timezone: 'Asia/Seoul' - }, - notification: { - preView: true, - use: true, - method: NotificationMethod.SoundAndAlert, - alertExposureTime: 5, - receiveForMobile: false, - receiveForMessage: false - }, - chat: { - fontFamily: 'Malgun Gothic', - fontSize: 12, - downloadPath: undefined - }, - presence: { - absenceTime: 10 - } - }, - file: { - defaultDownloadFolder: 'LF Talk2 Download', - defaultFileAllowSize: 100 - }, - authentication: { - usePrivateInformationAgree: false, - rememberMe: { - use: false - }, - autoLogin: { - use: true - } - }, - profile: { - editableProfileImage: false - }, - group: { - useMyDeptGroup: false, - myDeptGroupSeq: -5, - fixedGroupSeqs: [-5] - }, - chat: { - useTimerRoom: false, - timerRoomDefaultInterval: 24 * 60 * 60, + productConfig: { + productId: 'PRO_000482', + productName: 'EZMessenger', + localEncriptionKey: '!@#$LG%^&*', + nativeServiceClass: BrowserNativeService, + updateCheck: { + deviceType: DeviceType.Renderer, + devicePlatformType: DesktopType.Windows, + intervalHour: 1 + }, + defaultSettings: { + general: { + theme: 'theme-default', + autoLogin: false, + autoLaunch: false, + continueRunWhenClose: true, + locale: 'ko', + hrInfoLocale: 'ko', + startupHideWindow: false, + timezone: 'Asia/Seoul' + }, + notification: { + preView: true, + use: true, + method: NotificationMethod.SoundAndAlert, + alertExposureTime: 5, + receiveForMobile: false, + receiveForMessage: false + }, + chat: { + fontFamily: 'Malgun Gothic', + fontSize: 12, + downloadPath: undefined + }, + presence: { + absenceTime: 10 + } + }, + file: { + defaultDownloadFolder: 'LF Talk2 Download', + defaultFileAllowSize: 100 + }, + authentication: { + usePrivateInformationAgree: false, + useRememberMe: true, + useAutoLogin: true + }, + profile: { + editableProfileImage: false + }, + group: { + useMyDeptGroup: false, + myDeptGroupSeq: -5, + fixedGroupSeqs: [-5] + }, + chat: { + useTimerRoom: false, + timerRoomDefaultInterval: 24 * 60 * 60, - maxChatRoomUser: 300, - masstextLength: 800, + maxChatRoomUser: 300, + masstextLength: 800, - eventRequestInitCount: 30, - eventRequestDefaultCount: 50, + eventRequestInitCount: 30, + eventRequestDefaultCount: 50, - readHereShowMinimumEventCount: 10, - readHereShowMaximumEventCount: 100, - readHereEventRequestCount: 10 - } - }, + readHereShowMinimumEventCount: 10, + readHereShowMaximumEventCount: 100, + readHereEventRequestCount: 10 + } + }, - companyConfig: { - companyGroupCode: 'LG', - fixedCompanyCode: 'LF' - }, + companyConfig: { + companyGroupCode: 'LG', + fixedCompanyCode: 'LF' + }, - commonApiModuleConfig: { - hostConfig: { - protocol: 'http', - domain: 'lftalk2.lfcorp.com', - port: 8033 - }, - urls: commonApiUrls, - acceptableFileExtensions: commonApiacceptableFileExtensions, - acceptableFileExtensionsForImage: commonApiAcceptableFileExtensionsForImage, - acceptableFileExtensionsForVideo: commonApiAcceptableFileExtensionsForVideo - }, + commonApiModuleConfig: { + hostConfig: { + protocol: 'http', + domain: 'lftalk2.lfcorp.com', + port: 8033 + }, + urls: commonApiUrls, + acceptableFileExtensions: commonApiacceptableFileExtensions, + acceptableFileExtensionsForImage: commonApiAcceptableFileExtensionsForImage, + acceptableFileExtensionsForVideo: commonApiAcceptableFileExtensionsForVideo + }, - publicApiModuleConfig: { - hostConfig: { - protocol: 'http', - domain: 'lftalk2.lfcorp.com', - port: 8033 - }, - urls: publicApiUrls - }, + publicApiModuleConfig: { + hostConfig: { + protocol: 'http', + domain: 'lftalk2.lfcorp.com', + port: 8033 + }, + urls: publicApiUrls + }, - externalApiModuleConfig: { - hostConfig: { - protocol: 'http', - domain: 'lftalk2.lfcorp.com', - port: 8011 - }, - urls: externalApiUrls - }, + externalApiModuleConfig: { + hostConfig: { + protocol: 'http', + domain: 'lftalk2.lfcorp.com', + port: 8011 + }, + urls: externalApiUrls + }, - messageApiModuleConfig: { - hostConfig: { - protocol: 'http', - domain: 'lftalk2.lfcorp.com', - port: 9097 - }, - urls: messageApiUrls - }, + messageApiModuleConfig: { + hostConfig: { + protocol: 'http', + domain: 'lftalk2.lfcorp.com', + port: 9097 + }, + urls: messageApiUrls + }, - promptApiModuleConfig: { - hostConfig: { - protocol: 'http', - domain: 'lftalk2.lfcorp.com', - port: 9097 - }, - urls: promptUrls - }, + promptApiModuleConfig: { + hostConfig: { + protocol: 'http', + domain: 'lftalk2.lfcorp.com', + port: 9097 + }, + urls: promptUrls + }, - piModuleConfig: { - hostConfig: { - protocol: 'http', - domain: 'lftalk2.lfcorp.com', - port: 9097 - }, - urls: piUrls - }, + piModuleConfig: { + hostConfig: { + protocol: 'http', + domain: 'lftalk2.lfcorp.com', + port: 9097 + }, + urls: piUrls + }, - protocolModuleConfig: { - hostConfig: { - protocol: 'ws', - domain: 'lftalk2.lfcorp.com', - port: 8080 - }, - urls: protocolUrls, - reconnect: { - delay: 1000 - }, - requestId: { - min: 1, - max: 59999 - } - } -}; + protocolModuleConfig: { + hostConfig: { + protocol: 'ws', + domain: 'lftalk2.lfcorp.com', + port: 8080 + }, + urls: protocolUrls, + reconnect: { + delay: 1000 + }, + requestId: { + min: 1, + max: 59999 + } + } + }; diff --git a/src/environments/environment.ts b/src/environments/environment.ts index 06a4005..b8f7cdc 100644 --- a/src/environments/environment.ts +++ b/src/environments/environment.ts @@ -66,12 +66,8 @@ export const environment: Environment = { }, authentication: { usePrivateInformationAgree: false, - rememberMe: { - use: false - }, - autoLogin: { - use: true - } + useRememberMe: true, + useAutoLogin: true }, profile: { editableProfileImage: false diff --git a/src/environments/environment.type.ts b/src/environments/environment.type.ts index 06aa0af..5f0f306 100644 --- a/src/environments/environment.type.ts +++ b/src/environments/environment.type.ts @@ -59,12 +59,8 @@ export interface Environment { }; authentication: { usePrivateInformationAgree: boolean; - rememberMe: { - use: boolean; - }; - autoLogin: { - use: boolean; - }; + useRememberMe: boolean; + useAutoLogin: boolean; }; profile: { /** 내 프로필 이미지 수정 가능 여부 */ diff --git a/src/polyfills.es5.ts b/src/polyfills.es5.ts new file mode 100644 index 0000000..39755f9 --- /dev/null +++ b/src/polyfills.es5.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'; + * + * 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/tsconfig.app.es5.json b/tsconfig.app.es5.json new file mode 100644 index 0000000..86b53b7 --- /dev/null +++ b/tsconfig.app.es5.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "./out-tsc/app", + "target": "ES5", + "types": [] + }, + "files": ["src/main.ts", "src/polyfills.ts"], + "include": ["src/**/*.d.ts"] +}