@bentley/itwin-client
Advanced tools
Comparing version 2.0.0 to 2.1.0
{ | ||
"files": { | ||
"clients/itwin/CHANGELOG.json": "afb0f00750ed402e444526e963c2afc375b26a90", | ||
"clients/itwin/CHANGELOG.md": "4c812e128e71e9b27f6bb82065884a21a848b616", | ||
"clients/itwin/CHANGELOG.json": "5ba824d02520fcef5a5882321aa491c558b836c5", | ||
"clients/itwin/CHANGELOG.md": "51650168c60e18bb2b86257b4a5ad52c7459376f", | ||
"clients/itwin/LICENSE.md": "8181b17119b2efac25a81e4f169696bff4b5d88d", | ||
"clients/itwin/README.md": "b3c6da1eb68b5c19e96eedcc02f23e7648d8b5c9", | ||
"clients/itwin/certa.json": "af102cdf4fdb460b162d4f4fb02e09406fcd7ef6", | ||
"clients/itwin/package.json": "64d99ddf8a143fce805018e7258274093056a8ad", | ||
"clients/itwin/package.json": "e9b00cd62e9f5789a06bfff46e762191ae89fe50", | ||
"clients/itwin/src/AuthorizationClient.ts": "c06ff568e21b669a59b81018dcad16cbc89caf97", | ||
"clients/itwin/src/AuthorizedClientRequestContext.ts": "674c3fd23505bafb15130b3680a51896f694dc84", | ||
"clients/itwin/src/Client.ts": "67afb19fbbf2d56e8a3893249cbb6e5dd1d010da", | ||
"clients/itwin/src/ChunkedQueryContext.ts": "43dd113ff2118eb7afe19a4b31f92797362e486b", | ||
"clients/itwin/src/Client.ts": "2127270eee0eda8a1cb93b18b824e643dd02d8c0", | ||
"clients/itwin/src/ECJsonTypeMap.ts": "5b570845e511678c5220b4e2f674025ff0e59ab0", | ||
@@ -16,15 +17,15 @@ "clients/itwin/src/FileHandler.ts": "83ab73f107c6df65e80a4806a3bcba5ac5c6d8ff", | ||
"clients/itwin/src/ImsAuthorizationClient.ts": "23c2de47b8f3489962d1469f91387e194b975d03", | ||
"clients/itwin/src/Request.ts": "3b0d0fd3548a3350c7c247b505ddb067c404f215", | ||
"clients/itwin/src/Request.ts": "de380cc720bd2debc994f9ac4eaec2eb033a0755", | ||
"clients/itwin/src/SamlToken.ts": "4f8068e45f26e0cd5294f489ce6eee733e9dc598", | ||
"clients/itwin/src/Token.ts": "f016a13b500dcd3c3e3c636f39ad6dd998dcf491", | ||
"clients/itwin/src/UserInfo.ts": "c27fb9ffb3a51ee395e514383e1ee0b84d0dbcd8", | ||
"clients/itwin/src/WsgClient.ts": "8725d89c226c9b092ace777748003e9946658754", | ||
"clients/itwin/src/WsgClient.ts": "42df96270b20b4055afb6a21acb2b28d8211d467", | ||
"clients/itwin/src/WsgQuery.ts": "5e88aeac8b96bcbc96992a2e52b267b10cc21f23", | ||
"clients/itwin/src/itwin-client.ts": "1d19ab5a49adb4164c94ddd0a972c9f8148bd582", | ||
"clients/itwin/src/itwin-client.ts": "d7b6b369a0f03a777500339e821a1852a24abd4c", | ||
"clients/itwin/src/test/ECJsonTypeMap.test.ts": "acbe6e0b0acee3fc8e75a81fe61008513b3bf09b", | ||
"clients/itwin/tsconfig.json": "f484b0697ba4444b222311f0747ca83d361c9ce8", | ||
"clients/itwin/tslint.json": "66909b881acc0880b8d172f3f62f2bd17d84e03a", | ||
"clients/itwin/.rush/temp/shrinkwrap-deps.json": "90f7e0a5aed0505548a41c81f54b8c6b1cce009b" | ||
"clients/itwin/.rush/temp/shrinkwrap-deps.json": "a47c863f69cf16c7a4b82524104a5b7d69cc15d6" | ||
}, | ||
"arguments": "tsc 1>&2 " | ||
} |
{ | ||
"files": { | ||
"clients/itwin/CHANGELOG.json": "afb0f00750ed402e444526e963c2afc375b26a90", | ||
"clients/itwin/CHANGELOG.md": "4c812e128e71e9b27f6bb82065884a21a848b616", | ||
"clients/itwin/CHANGELOG.json": "5ba824d02520fcef5a5882321aa491c558b836c5", | ||
"clients/itwin/CHANGELOG.md": "51650168c60e18bb2b86257b4a5ad52c7459376f", | ||
"clients/itwin/LICENSE.md": "8181b17119b2efac25a81e4f169696bff4b5d88d", | ||
"clients/itwin/README.md": "b3c6da1eb68b5c19e96eedcc02f23e7648d8b5c9", | ||
"clients/itwin/certa.json": "af102cdf4fdb460b162d4f4fb02e09406fcd7ef6", | ||
"clients/itwin/package.json": "64d99ddf8a143fce805018e7258274093056a8ad", | ||
"clients/itwin/package.json": "e9b00cd62e9f5789a06bfff46e762191ae89fe50", | ||
"clients/itwin/src/AuthorizationClient.ts": "c06ff568e21b669a59b81018dcad16cbc89caf97", | ||
"clients/itwin/src/AuthorizedClientRequestContext.ts": "674c3fd23505bafb15130b3680a51896f694dc84", | ||
"clients/itwin/src/Client.ts": "67afb19fbbf2d56e8a3893249cbb6e5dd1d010da", | ||
"clients/itwin/src/ChunkedQueryContext.ts": "43dd113ff2118eb7afe19a4b31f92797362e486b", | ||
"clients/itwin/src/Client.ts": "2127270eee0eda8a1cb93b18b824e643dd02d8c0", | ||
"clients/itwin/src/ECJsonTypeMap.ts": "5b570845e511678c5220b4e2f674025ff0e59ab0", | ||
@@ -16,15 +17,15 @@ "clients/itwin/src/FileHandler.ts": "83ab73f107c6df65e80a4806a3bcba5ac5c6d8ff", | ||
"clients/itwin/src/ImsAuthorizationClient.ts": "23c2de47b8f3489962d1469f91387e194b975d03", | ||
"clients/itwin/src/Request.ts": "3b0d0fd3548a3350c7c247b505ddb067c404f215", | ||
"clients/itwin/src/Request.ts": "de380cc720bd2debc994f9ac4eaec2eb033a0755", | ||
"clients/itwin/src/SamlToken.ts": "4f8068e45f26e0cd5294f489ce6eee733e9dc598", | ||
"clients/itwin/src/Token.ts": "f016a13b500dcd3c3e3c636f39ad6dd998dcf491", | ||
"clients/itwin/src/UserInfo.ts": "c27fb9ffb3a51ee395e514383e1ee0b84d0dbcd8", | ||
"clients/itwin/src/WsgClient.ts": "8725d89c226c9b092ace777748003e9946658754", | ||
"clients/itwin/src/WsgClient.ts": "42df96270b20b4055afb6a21acb2b28d8211d467", | ||
"clients/itwin/src/WsgQuery.ts": "5e88aeac8b96bcbc96992a2e52b267b10cc21f23", | ||
"clients/itwin/src/itwin-client.ts": "1d19ab5a49adb4164c94ddd0a972c9f8148bd582", | ||
"clients/itwin/src/itwin-client.ts": "d7b6b369a0f03a777500339e821a1852a24abd4c", | ||
"clients/itwin/src/test/ECJsonTypeMap.test.ts": "acbe6e0b0acee3fc8e75a81fe61008513b3bf09b", | ||
"clients/itwin/tsconfig.json": "f484b0697ba4444b222311f0747ca83d361c9ce8", | ||
"clients/itwin/tslint.json": "66909b881acc0880b8d172f3f62f2bd17d84e03a", | ||
"clients/itwin/.rush/temp/shrinkwrap-deps.json": "90f7e0a5aed0505548a41c81f54b8c6b1cce009b" | ||
"clients/itwin/.rush/temp/shrinkwrap-deps.json": "a47c863f69cf16c7a4b82524104a5b7d69cc15d6" | ||
}, | ||
"arguments": "nyc npm test " | ||
} |
{ | ||
"files": { | ||
"clients/itwin/CHANGELOG.json": "afb0f00750ed402e444526e963c2afc375b26a90", | ||
"clients/itwin/CHANGELOG.md": "4c812e128e71e9b27f6bb82065884a21a848b616", | ||
"clients/itwin/CHANGELOG.json": "5ba824d02520fcef5a5882321aa491c558b836c5", | ||
"clients/itwin/CHANGELOG.md": "51650168c60e18bb2b86257b4a5ad52c7459376f", | ||
"clients/itwin/LICENSE.md": "8181b17119b2efac25a81e4f169696bff4b5d88d", | ||
"clients/itwin/README.md": "b3c6da1eb68b5c19e96eedcc02f23e7648d8b5c9", | ||
"clients/itwin/certa.json": "af102cdf4fdb460b162d4f4fb02e09406fcd7ef6", | ||
"clients/itwin/package.json": "64d99ddf8a143fce805018e7258274093056a8ad", | ||
"clients/itwin/package.json": "e9b00cd62e9f5789a06bfff46e762191ae89fe50", | ||
"clients/itwin/src/AuthorizationClient.ts": "c06ff568e21b669a59b81018dcad16cbc89caf97", | ||
"clients/itwin/src/AuthorizedClientRequestContext.ts": "674c3fd23505bafb15130b3680a51896f694dc84", | ||
"clients/itwin/src/Client.ts": "67afb19fbbf2d56e8a3893249cbb6e5dd1d010da", | ||
"clients/itwin/src/ChunkedQueryContext.ts": "43dd113ff2118eb7afe19a4b31f92797362e486b", | ||
"clients/itwin/src/Client.ts": "2127270eee0eda8a1cb93b18b824e643dd02d8c0", | ||
"clients/itwin/src/ECJsonTypeMap.ts": "5b570845e511678c5220b4e2f674025ff0e59ab0", | ||
@@ -16,15 +17,15 @@ "clients/itwin/src/FileHandler.ts": "83ab73f107c6df65e80a4806a3bcba5ac5c6d8ff", | ||
"clients/itwin/src/ImsAuthorizationClient.ts": "23c2de47b8f3489962d1469f91387e194b975d03", | ||
"clients/itwin/src/Request.ts": "3b0d0fd3548a3350c7c247b505ddb067c404f215", | ||
"clients/itwin/src/Request.ts": "de380cc720bd2debc994f9ac4eaec2eb033a0755", | ||
"clients/itwin/src/SamlToken.ts": "4f8068e45f26e0cd5294f489ce6eee733e9dc598", | ||
"clients/itwin/src/Token.ts": "f016a13b500dcd3c3e3c636f39ad6dd998dcf491", | ||
"clients/itwin/src/UserInfo.ts": "c27fb9ffb3a51ee395e514383e1ee0b84d0dbcd8", | ||
"clients/itwin/src/WsgClient.ts": "8725d89c226c9b092ace777748003e9946658754", | ||
"clients/itwin/src/WsgClient.ts": "42df96270b20b4055afb6a21acb2b28d8211d467", | ||
"clients/itwin/src/WsgQuery.ts": "5e88aeac8b96bcbc96992a2e52b267b10cc21f23", | ||
"clients/itwin/src/itwin-client.ts": "1d19ab5a49adb4164c94ddd0a972c9f8148bd582", | ||
"clients/itwin/src/itwin-client.ts": "d7b6b369a0f03a777500339e821a1852a24abd4c", | ||
"clients/itwin/src/test/ECJsonTypeMap.test.ts": "acbe6e0b0acee3fc8e75a81fe61008513b3bf09b", | ||
"clients/itwin/tsconfig.json": "f484b0697ba4444b222311f0747ca83d361c9ce8", | ||
"clients/itwin/tslint.json": "66909b881acc0880b8d172f3f62f2bd17d84e03a", | ||
"clients/itwin/.rush/temp/shrinkwrap-deps.json": "90f7e0a5aed0505548a41c81f54b8c6b1cce009b" | ||
"clients/itwin/.rush/temp/shrinkwrap-deps.json": "a47c863f69cf16c7a4b82524104a5b7d69cc15d6" | ||
}, | ||
"arguments": "betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/itwin-client/file.json --tsIndexFile=itwin-client.ts --onlyJson " | ||
} |
{ | ||
"files": { | ||
"clients/itwin/CHANGELOG.json": "afb0f00750ed402e444526e963c2afc375b26a90", | ||
"clients/itwin/CHANGELOG.md": "4c812e128e71e9b27f6bb82065884a21a848b616", | ||
"clients/itwin/CHANGELOG.json": "5ba824d02520fcef5a5882321aa491c558b836c5", | ||
"clients/itwin/CHANGELOG.md": "51650168c60e18bb2b86257b4a5ad52c7459376f", | ||
"clients/itwin/LICENSE.md": "8181b17119b2efac25a81e4f169696bff4b5d88d", | ||
"clients/itwin/README.md": "b3c6da1eb68b5c19e96eedcc02f23e7648d8b5c9", | ||
"clients/itwin/certa.json": "af102cdf4fdb460b162d4f4fb02e09406fcd7ef6", | ||
"clients/itwin/package.json": "64d99ddf8a143fce805018e7258274093056a8ad", | ||
"clients/itwin/package.json": "e9b00cd62e9f5789a06bfff46e762191ae89fe50", | ||
"clients/itwin/src/AuthorizationClient.ts": "c06ff568e21b669a59b81018dcad16cbc89caf97", | ||
"clients/itwin/src/AuthorizedClientRequestContext.ts": "674c3fd23505bafb15130b3680a51896f694dc84", | ||
"clients/itwin/src/Client.ts": "67afb19fbbf2d56e8a3893249cbb6e5dd1d010da", | ||
"clients/itwin/src/ChunkedQueryContext.ts": "43dd113ff2118eb7afe19a4b31f92797362e486b", | ||
"clients/itwin/src/Client.ts": "2127270eee0eda8a1cb93b18b824e643dd02d8c0", | ||
"clients/itwin/src/ECJsonTypeMap.ts": "5b570845e511678c5220b4e2f674025ff0e59ab0", | ||
@@ -16,15 +17,15 @@ "clients/itwin/src/FileHandler.ts": "83ab73f107c6df65e80a4806a3bcba5ac5c6d8ff", | ||
"clients/itwin/src/ImsAuthorizationClient.ts": "23c2de47b8f3489962d1469f91387e194b975d03", | ||
"clients/itwin/src/Request.ts": "3b0d0fd3548a3350c7c247b505ddb067c404f215", | ||
"clients/itwin/src/Request.ts": "de380cc720bd2debc994f9ac4eaec2eb033a0755", | ||
"clients/itwin/src/SamlToken.ts": "4f8068e45f26e0cd5294f489ce6eee733e9dc598", | ||
"clients/itwin/src/Token.ts": "f016a13b500dcd3c3e3c636f39ad6dd998dcf491", | ||
"clients/itwin/src/UserInfo.ts": "c27fb9ffb3a51ee395e514383e1ee0b84d0dbcd8", | ||
"clients/itwin/src/WsgClient.ts": "8725d89c226c9b092ace777748003e9946658754", | ||
"clients/itwin/src/WsgClient.ts": "42df96270b20b4055afb6a21acb2b28d8211d467", | ||
"clients/itwin/src/WsgQuery.ts": "5e88aeac8b96bcbc96992a2e52b267b10cc21f23", | ||
"clients/itwin/src/itwin-client.ts": "1d19ab5a49adb4164c94ddd0a972c9f8148bd582", | ||
"clients/itwin/src/itwin-client.ts": "d7b6b369a0f03a777500339e821a1852a24abd4c", | ||
"clients/itwin/src/test/ECJsonTypeMap.test.ts": "acbe6e0b0acee3fc8e75a81fe61008513b3bf09b", | ||
"clients/itwin/tsconfig.json": "f484b0697ba4444b222311f0747ca83d361c9ce8", | ||
"clients/itwin/tslint.json": "66909b881acc0880b8d172f3f62f2bd17d84e03a", | ||
"clients/itwin/.rush/temp/shrinkwrap-deps.json": "90f7e0a5aed0505548a41c81f54b8c6b1cce009b" | ||
"clients/itwin/.rush/temp/shrinkwrap-deps.json": "a47c863f69cf16c7a4b82524104a5b7d69cc15d6" | ||
}, | ||
"arguments": "betools extract-api --entry=itwin-client " | ||
} |
{ | ||
"@babel/code-frame@7.8.3": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", | ||
"@babel/generator@7.9.6": "sha512-+htwWKJbH2bL72HRluF8zumBxzuX0ZZUFl3JLNyoUjM/Ho8wnVpPXM6aUz8cfKDqQ/h7zHqKt4xzJteUosckqQ==", | ||
"@babel/generator@7.10.0": "sha512-ThoWCJHlgukbtCP79nAK4oLqZt5fVo70AHUni/y8Jotyg5rtJiG2FVl+iJjRNKIyl4hppqztLyAoEWcCvqyOFQ==", | ||
"@babel/helper-function-name@7.9.5": "sha512-JVcQZeXM59Cd1qanDUxv9fgJpt3NeKUaqBqUEvfmQ+BCOKq2xUgaWZW2hr0dkbyJgezYuplEoh5knmrnS68efw==", | ||
@@ -9,7 +9,7 @@ "@babel/helper-get-function-arity@7.8.3": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", | ||
"@babel/highlight@7.9.0": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", | ||
"@babel/parser@7.9.6": "sha512-AoeIEJn8vt+d/6+PXDRPaksYhnlbMIiejioBZvvMQsOjW/JYK6k/0dKnvvP3EhK5GfMBWDPtrxRtegWdAcdq9Q==", | ||
"@babel/template@7.8.6": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", | ||
"@babel/traverse@7.9.6": "sha512-b3rAHSjbxy6VEAvlxM8OV/0X4XrG72zoxme6q1MOoe2vd0bEc+TwayhuC1+Dfgqh1QEG+pj7atQqvUprHIccsg==", | ||
"@babel/types@7.9.6": "sha512-qxXzvBO//jO9ZnoasKF1uJzHd2+M6Q2ZPIVfnFps8JJvXy0ZBbwbNOmE6SGIY5XOY6d1Bo5lb9d9RJ8nv3WSeA==", | ||
"@phenomnomnominal/tsquery@4.0.0_typescript@3.7.5": "sha512-s2Yet/MCj9Jh6nR6GfldrUPT6Y+aM1jIAdiKcOKEzmeKALT0Tc7SFIkYP3KvzjzbkKK5W7BiJ3cWy2UOa4ITbw==", | ||
"@babel/parser@7.10.0": "sha512-fnDUl1Uy2gThM4IFVW4ISNHqr3cJrCsRkSCasFgx0XDO9JcttDS5ytyBc4Cu4X1+fjoo3IVvFbRD6TeFlHJlEQ==", | ||
"@babel/template@7.10.0": "sha512-aMLEQn5tcG49LEWrsEwxiRTdaJmvLem3+JMCMSeCy2TILau0IDVyWdm/18ACx7XOCady64FLt6KkHy28tkDQHQ==", | ||
"@babel/traverse@7.10.0": "sha512-NZsFleMaLF1zX3NxbtXI/JCs2RPOdpGru6UBdGsfhdsDsP+kFF+h2QQJnMJglxk0kc69YmMFs4A44OJY0tKo5g==", | ||
"@babel/types@7.10.0": "sha512-t41W8yWFyQFPOAAvPvjyRhejcLGnJTA3iRpFcDbEKwVJ3UnHQePFzLk8GagTsucJlImyNwrGikGsYURrWbQG8w==", | ||
"@phenomnomnominal/tsquery@4.1.0_typescript@3.7.5": "sha512-+i1eqUJODVanUDuTdOPgnjErFg21DKGLstdRXp4LLGcSbO7c+3pwJPkmdSfbkh9gO6xaHJ/5ftSAMqEFJF5cGA==", | ||
"@types/chai@4.2.11": "sha512-t7uW6eFafjO+qJ3BIV2gGUyZs27egcNRkUdalkud+Qa3+kg//f129iuOFivHDXQ+vnU3fDXuwgv0cqMCbcE8sw==", | ||
@@ -22,3 +22,4 @@ "@types/cookiejar@2.1.1": "sha512-aRnpPa7ysx3aNW60hTiCtLHlQaIFsXFCgQlpakNgDNVFzbtusSY8PwjAQgRWfSk0ekNoBjO51eQRB6upA9uuyw==", | ||
"@types/node@10.14.1": "sha512-Rymt08vh1GaW4vYB6QP61/5m/CFLGnFZP++bJpWbiNxceNa6RBipDmb413jvtSf/R1gg5a/jQVl2jY4XVRscEA==", | ||
"@types/qs@6.9.1": "sha512-lhbQXx9HKZAPgBkISrBcmAcMpZsmpe/Cd/hY7LGZS5OfkySUBItnPZHgQPssWYUET8elF+yCFBbP1Q0RZPTdaw==", | ||
"@types/node@12.12.42": "sha512-R/9QdYFLL9dE9l5cWWzWIZByVGFd7lk7JVOJ7KD+E1SJ4gni7XJRLz9QTjyYQiHIqEAgku9VgxdLjMlhhUaAFg==", | ||
"@types/qs@6.9.3": "sha512-7s9EQWupR1fTc2pSMtXRQ9w9gLOcrJn+h7HOXw4evxyvVqMi4f+q7d2tnFe3ng3SNHjtK+0EzGMGFUQX4/AQRA==", | ||
"@types/superagent@3.8.7": "sha512-9KhCkyXv268A2nZ1Wvu7rQWM+BmdYUVkycFeNnYrUL5Zwu7o8wPQ3wBfW59dDP+wuoxw0ww8YKgTNv8j/cgscA==", | ||
@@ -46,2 +47,3 @@ "@types/xmldom@0.1.29": "sha1-xEKLDKhtO4gUdXJv2UmAs4onw4E=", | ||
"@xtuc/long@4.2.2": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", | ||
"abab@2.0.3": "sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg==", | ||
"acorn@6.4.1": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", | ||
@@ -54,2 +56,3 @@ "ajv-errors@1.0.1_ajv@6.12.2": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", | ||
"anymatch@2.0.0": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", | ||
"anymatch@3.1.1": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", | ||
"append-transform@1.0.0": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", | ||
@@ -69,3 +72,2 @@ "aproba@1.2.0": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", | ||
"async-each@1.0.3": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", | ||
"async@2.6.3": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", | ||
"asynckit@0.4.0": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", | ||
@@ -78,7 +80,10 @@ "atob@2.1.2": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", | ||
"binary-extensions@1.13.1": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", | ||
"binary-extensions@2.0.0": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==", | ||
"bindings@1.5.0": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", | ||
"bluebird@3.7.2": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", | ||
"bn.js@4.11.8": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", | ||
"bn.js@4.11.9": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", | ||
"bn.js@5.1.2": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", | ||
"brace-expansion@1.1.11": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", | ||
"braces@2.3.2": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", | ||
"braces@3.0.2": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", | ||
"brorand@1.1.0": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", | ||
@@ -90,3 +95,3 @@ "browser-stdout@1.3.1": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", | ||
"browserify-rsa@4.0.1": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", | ||
"browserify-sign@4.0.4": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", | ||
"browserify-sign@4.2.0": "sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA==", | ||
"browserify-zlib@0.2.0": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", | ||
@@ -106,2 +111,3 @@ "buffer-from@1.1.1": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", | ||
"chokidar@2.1.8": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", | ||
"chokidar@3.4.0": "sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ==", | ||
"chownr@1.1.4": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", | ||
@@ -136,2 +142,3 @@ "chrome-trace-event@1.0.2": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", | ||
"cyclist@1.0.1": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", | ||
"data-urls@2.0.0": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", | ||
"debug@2.6.9": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", | ||
@@ -187,2 +194,3 @@ "debug@3.1.0": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", | ||
"fill-range@4.0.0": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", | ||
"fill-range@7.0.1": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", | ||
"find-cache-dir@2.1.0": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", | ||
@@ -199,3 +207,4 @@ "find-up@3.0.0": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", | ||
"fs.realpath@1.0.0": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", | ||
"fsevents@1.2.12": "sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==", | ||
"fsevents@1.2.13": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", | ||
"fsevents@2.1.3": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", | ||
"function-bind@1.1.1": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", | ||
@@ -206,2 +215,3 @@ "get-caller-file@2.0.5": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", | ||
"glob-parent@3.1.0": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", | ||
"glob-parent@5.1.1": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", | ||
"glob@7.1.2": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", | ||
@@ -227,2 +237,3 @@ "glob@7.1.6": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", | ||
"https-browserify@1.0.0": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", | ||
"iconv-lite@0.5.1": "sha512-ONHr16SQvKZNSqjQT9gy5z24Jw+uqfO02/ngBSBoqChZ+W8qXX7GPRa1RoUnzGADw8K63R1BXUMzarCVQBpY8Q==", | ||
"ieee754@1.1.13": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", | ||
@@ -241,2 +252,3 @@ "iferr@0.1.5": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", | ||
"is-binary-path@1.0.1": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", | ||
"is-binary-path@2.1.0": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", | ||
"is-buffer@1.1.6": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", | ||
@@ -256,2 +268,3 @@ "is-callable@1.1.5": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", | ||
"is-number@3.0.0": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", | ||
"is-number@7.0.0": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", | ||
"is-obj@1.0.1": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", | ||
@@ -276,3 +289,3 @@ "is-plain-object@2.0.4": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", | ||
"js-tokens@4.0.0": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", | ||
"js-yaml@3.13.1": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", | ||
"js-yaml@3.14.0": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", | ||
"jsesc@2.5.2": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", | ||
@@ -283,2 +296,3 @@ "json-parse-better-errors@1.0.2": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", | ||
"json5@1.0.1": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", | ||
"json5@2.1.3": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", | ||
"kind-of@3.2.2": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", | ||
@@ -291,4 +305,6 @@ "kind-of@4.0.0": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", | ||
"loader-utils@1.4.0": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", | ||
"loader-utils@2.0.0": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", | ||
"locate-path@3.0.0": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", | ||
"lodash.flattendeep@4.4.0": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", | ||
"lodash.sortby@4.7.0": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", | ||
"lodash@4.17.15": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", | ||
@@ -363,2 +379,3 @@ "lru-cache@4.1.5": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", | ||
"pbkdf2@3.0.17": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", | ||
"picomatch@2.2.2": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", | ||
"pify@3.0.0": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", | ||
@@ -381,3 +398,3 @@ "pify@4.0.1": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", | ||
"punycode@2.1.1": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", | ||
"qs@6.9.3": "sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw==", | ||
"qs@6.9.4": "sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ==", | ||
"querystring-es3@0.2.1": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", | ||
@@ -392,2 +409,3 @@ "querystring@0.2.0": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", | ||
"readdirp@2.2.1": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", | ||
"readdirp@3.4.0": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", | ||
"regex-not@1.0.2": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", | ||
@@ -410,5 +428,7 @@ "regexp.prototype.flags@1.3.0": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", | ||
"safe-buffer@5.1.2": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", | ||
"safe-buffer@5.2.0": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==", | ||
"safe-buffer@5.2.1": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", | ||
"safe-regex@1.1.0": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", | ||
"safer-buffer@2.1.2": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", | ||
"schema-utils@1.0.0": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", | ||
"schema-utils@2.6.6": "sha512-wHutF/WPSbIi9x6ctjGGk2Hvl0VOz5l3EKEuKbjPlB30mKZUzb9A5k9yEXRX3pwyqVLPvpfZZEllaFq/M718hA==", | ||
"semver@5.7.1": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", | ||
@@ -426,3 +446,3 @@ "semver@6.3.0": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", | ||
"source-list-map@2.0.1": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", | ||
"source-map-loader@0.2.4": "sha512-OU6UJUty+i2JDpTItnizPrlpOIBLmQbWMuBg9q5bVtnHACqw1tn9nNwqJLbv0/00JjnJb/Ee5g5WS5vrRv7zIQ==", | ||
"source-map-loader@1.0.0_webpack@4.42.0": "sha512-ZayyQCSCrQazN50aCvuS84lJT4xc1ZAcykH5blHaBdVveSwjiFK8UGMPvao0ho54DTb0Jf7m57uRRG/YYUZ2Fg==", | ||
"source-map-resolve@0.5.3": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", | ||
@@ -434,5 +454,5 @@ "source-map-support@0.5.19": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", | ||
"spawn-wrap@1.4.3": "sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw==", | ||
"spdx-correct@3.1.0": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", | ||
"spdx-correct@3.1.1": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", | ||
"spdx-exceptions@2.3.0": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", | ||
"spdx-expression-parse@3.0.0": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", | ||
"spdx-expression-parse@3.0.1": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", | ||
"spdx-license-ids@3.0.5": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", | ||
@@ -462,3 +482,3 @@ "split-string@3.1.0": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", | ||
"terser-webpack-plugin@1.4.3_webpack@4.42.0": "sha512-QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==", | ||
"terser@4.6.13": "sha512-wMvqukYgVpQlymbnNbabVZbtM6PN63AzqexpwJL8tbh/mRT9LE5o+ruVduAGL7D6Fpjl+Q+06U5I9Ul82odAhw==", | ||
"terser@4.7.0": "sha512-Lfb0RiZcjRDXCC3OSHJpEkxJ9Qeqs6mp2v4jf2MHfy8vGERmVDuvjXdd/EnP5Deme5F2yBRBymKmKHCBg2echw==", | ||
"test-exclude@5.2.3": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", | ||
@@ -471,5 +491,7 @@ "through2@2.0.5": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", | ||
"to-regex-range@2.1.1": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", | ||
"to-regex-range@5.0.1": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", | ||
"to-regex@3.0.2": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", | ||
"tr46@2.0.2": "sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg==", | ||
"ts-node@7.0.1": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", | ||
"tslib@1.11.1": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", | ||
"tslib@1.13.0": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", | ||
"tslint-etc@1.10.1_tslint@5.20.1+typescript@3.7.5": "sha512-8mtyUaOSuN7FTVg/8QYlxTb+Ih+x3p5mZkouN031ZfmDQlPED5ulG/gK8wcXJwrYwC09GxaoV8g3HYq1vlfa0Q==", | ||
@@ -499,5 +521,9 @@ "tslint@5.20.1_typescript@3.7.5": "sha512-EcMxhzCFt8k+/UP5r8waCf/lzmeSyVlqxqMEDQE7rWYiQky8KpIBz1JAoYXfROHrPZ1XXd43q8yQnULOLiBRQg==", | ||
"vm-browserify@1.1.2": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", | ||
"watchpack@1.6.1": "sha512-+IF9hfUFOrYOOaKyfaI7h7dquUIOgyEMoQMLA7OP5FxegKA2+XdXThAZ9TU2kucfhDH7rfMHs1oPYziVGWRnZA==", | ||
"watchpack-chokidar2@2.0.0": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", | ||
"watchpack@1.7.2": "sha512-ymVbbQP40MFTp+cNMvpyBpBtygHnPzPkHqoIwRRj/0B8KhqQwV8LaKjtbaxF2lK4vl8zN9wCxS46IFCU5K4W0g==", | ||
"webidl-conversions@5.0.0": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", | ||
"webpack-sources@1.4.3": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", | ||
"webpack@4.42.0_webpack@4.42.0": "sha512-EzJRHvwQyBiYrYqhyjW9AqM90dE4+s1/XtCfn7uWg6cS72zH+2VPFAlsnW0+W0cDi0XRjNKUMoJtpSi50+Ph6w==", | ||
"whatwg-mimetype@2.3.0": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", | ||
"whatwg-url@8.1.0": "sha512-vEIkwNi9Hqt4TV9RdnaBPNt+E2Sgmo3gePebCRgZ1R7g6d23+53zCTnuB0amKI4AXq6VM8jj2DUAa0S1vjJxkw==", | ||
"which-module@2.0.0": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", | ||
@@ -504,0 +530,0 @@ "which@1.3.1": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", |
@@ -5,2 +5,14 @@ { | ||
{ | ||
"version": "2.1.0", | ||
"tag": "@bentley/itwin-client_v2.1.0", | ||
"date": "Thu, 28 May 2020 22:48:59 GMT", | ||
"comments": { | ||
"none": [ | ||
{ | ||
"comment": "Download ChangeSets in chunks" | ||
} | ||
] | ||
} | ||
}, | ||
{ | ||
"version": "2.0.0", | ||
@@ -7,0 +19,0 @@ "tag": "@bentley/itwin-client_v2.0.0", |
# Change Log - @bentley/itwin-client | ||
This log was last generated on Wed, 06 May 2020 13:17:49 GMT and should not be manually modified. | ||
This log was last generated on Thu, 28 May 2020 22:48:59 GMT and should not be manually modified. | ||
## 2.1.0 | ||
Thu, 28 May 2020 22:48:59 GMT | ||
### Updates | ||
- Download ChangeSets in chunks | ||
## 2.0.0 | ||
@@ -6,0 +13,0 @@ Wed, 06 May 2020 13:17:49 GMT |
@@ -36,3 +36,2 @@ "use strict"; | ||
deepAssign(options, clonedOptions); // ensure the supplied options override the defaults | ||
return Promise.resolve(); | ||
} | ||
@@ -69,14 +68,14 @@ } | ||
if (this._url) { | ||
return Promise.resolve(this._url); | ||
return this._url; | ||
} | ||
const urlDiscoveryClient = new UrlDiscoveryClient(); | ||
const searchKey = this.getUrlSearchKey(); | ||
return urlDiscoveryClient.discoverUrl(requestContext, searchKey, undefined) | ||
.then(async (url) => { | ||
try { | ||
const url = await urlDiscoveryClient.discoverUrl(requestContext, searchKey, undefined); | ||
this._url = url; | ||
return Promise.resolve(this._url); // TODO: On the server this really needs a lifetime!! | ||
}) | ||
.catch(async () => { | ||
return Promise.reject(`Failed to discover URL for service identified by "${searchKey}"`); | ||
}); | ||
return this._url; // TODO: On the server this really needs a lifetime!! | ||
} | ||
catch (error) { | ||
throw new Error(`Failed to discover URL for service identified by "${searchKey}"`); | ||
} | ||
} | ||
@@ -129,3 +128,3 @@ /** used by clients to send delete requests */ | ||
async getUrl() { | ||
return Promise.resolve(bentleyjs_core_1.Config.App.getString(UrlDiscoveryClient.configURL, "https://buddi.bentley.com/WebService")); | ||
return bentleyjs_core_1.Config.App.getString(UrlDiscoveryClient.configURL, "https://buddi.bentley.com/WebService"); | ||
} | ||
@@ -154,3 +153,3 @@ /** | ||
const discoveredUrl = response.body.result.url.replace(/\/$/, ""); // strip trailing "/" for consistency | ||
return Promise.resolve(discoveredUrl); | ||
return discoveredUrl; | ||
} | ||
@@ -157,0 +156,0 @@ } |
@@ -14,2 +14,3 @@ export * from "./AuthorizationClient"; | ||
export * from "./SamlToken"; | ||
export * from "./ChunkedQueryContext"; | ||
/** @docs-package-description | ||
@@ -16,0 +17,0 @@ * The itwin-client package allows sending requests to various iTwin services. |
@@ -18,2 +18,3 @@ "use strict"; | ||
__export(require("./SamlToken")); | ||
__export(require("./ChunkedQueryContext")); | ||
/** @docs-package-description | ||
@@ -20,0 +21,0 @@ * The itwin-client package allows sending requests to various iTwin services. |
@@ -272,4 +272,4 @@ "use strict"; | ||
*/ | ||
return sareq | ||
.then(async (response) => { | ||
try { | ||
const response = await sareq; | ||
const retResponse = { | ||
@@ -281,8 +281,8 @@ body: response.body, | ||
}; | ||
return Promise.resolve(retResponse); | ||
}) | ||
.catch(async (error) => { | ||
return retResponse; | ||
} | ||
catch (error) { | ||
const parsedError = errorCallback(error); | ||
return Promise.reject(parsedError); | ||
}); | ||
throw parsedError; | ||
} | ||
} | ||
@@ -289,0 +289,0 @@ exports.request = request; |
@@ -1,1 +0,1 @@ | ||
{"processes":{"4b192b2f-91f8-4df9-a365-9d30bc78e80b":{"parent":"ecf49e97-d5e7-4615-bb5f-15d04c990deb","children":["dafe6310-d8dd-4dee-8111-b0a6ceab3fca"]},"bdc0b767-0686-426d-bc55-7f4c16a4085c":{"parent":null,"children":["e566b7ad-63f8-4758-aefe-d881982a7237"]},"dafe6310-d8dd-4dee-8111-b0a6ceab3fca":{"parent":"4b192b2f-91f8-4df9-a365-9d30bc78e80b","children":["dcfc623e-f77c-482e-8932-54e8222a6c6b"]},"dcfc623e-f77c-482e-8932-54e8222a6c6b":{"parent":"dafe6310-d8dd-4dee-8111-b0a6ceab3fca","children":[]},"e566b7ad-63f8-4758-aefe-d881982a7237":{"parent":"bdc0b767-0686-426d-bc55-7f4c16a4085c","children":["ecf49e97-d5e7-4615-bb5f-15d04c990deb"]},"ecf49e97-d5e7-4615-bb5f-15d04c990deb":{"parent":"e566b7ad-63f8-4758-aefe-d881982a7237","children":["4b192b2f-91f8-4df9-a365-9d30bc78e80b"]}},"files":{"D:\\vsts_b\\5\\s\\clients\\itwin\\src\\ECJsonTypeMap.ts":["dafe6310-d8dd-4dee-8111-b0a6ceab3fca","dcfc623e-f77c-482e-8932-54e8222a6c6b"],"D:\\vsts_b\\5\\s\\clients\\itwin\\src\\ITwinClientLoggerCategory.ts":["dafe6310-d8dd-4dee-8111-b0a6ceab3fca","dcfc623e-f77c-482e-8932-54e8222a6c6b"]},"externalIds":{}} | ||
{"processes":{"10064800-41e0-4683-8b9b-debb6cb54dc7":{"parent":null,"children":["33f060e6-57c8-4485-9950-7b4a8fbdeaea"]},"33f060e6-57c8-4485-9950-7b4a8fbdeaea":{"parent":"10064800-41e0-4683-8b9b-debb6cb54dc7","children":["483932cc-523d-48c3-8690-0523866cefe7"]},"483932cc-523d-48c3-8690-0523866cefe7":{"parent":"33f060e6-57c8-4485-9950-7b4a8fbdeaea","children":["63143d55-8738-4b02-8ba6-1d92dc870916"]},"63143d55-8738-4b02-8ba6-1d92dc870916":{"parent":"483932cc-523d-48c3-8690-0523866cefe7","children":["e2dc698c-4c5c-4f7e-99f1-8a20b4ecd2ae"]},"66660b5d-0063-4f5b-a714-7c5d16bd4498":{"parent":"e2dc698c-4c5c-4f7e-99f1-8a20b4ecd2ae","children":[]},"e2dc698c-4c5c-4f7e-99f1-8a20b4ecd2ae":{"parent":"63143d55-8738-4b02-8ba6-1d92dc870916","children":["66660b5d-0063-4f5b-a714-7c5d16bd4498"]}},"files":{"D:\\vsts_a\\1\\s\\clients\\itwin\\src\\ECJsonTypeMap.ts":["66660b5d-0063-4f5b-a714-7c5d16bd4498","e2dc698c-4c5c-4f7e-99f1-8a20b4ecd2ae"],"D:\\vsts_a\\1\\s\\clients\\itwin\\src\\ITwinClientLoggerCategory.ts":["66660b5d-0063-4f5b-a714-7c5d16bd4498","e2dc698c-4c5c-4f7e-99f1-8a20b4ecd2ae"]},"externalIds":{}} |
@@ -6,2 +6,3 @@ import { ClientRequestContext, GetMetaDataFunction, HttpStatus } from "@bentley/bentleyjs-core"; | ||
import { RequestOptions, RequestQueryOptions, ResponseError } from "./Request"; | ||
import { ChunkedQueryContext } from "./ChunkedQueryContext"; | ||
/** Error that was returned by a WSG based service. | ||
@@ -127,2 +128,12 @@ * @beta | ||
protected getInstances<T extends WsgInstance>(requestContext: AuthorizedClientRequestContext, typedConstructor: new () => T, relativeUrlPath: string, queryOptions?: RequestQueryOptions): Promise<T[]>; | ||
/** | ||
* Used by clients to get a chunk of strongly typed instances from standard WSG REST queries that return EC JSON instances. | ||
* @param requestContext Client request context | ||
* @param url Full path to the REST resource. | ||
* @param chunkedQueryContext Chunked query context. | ||
* @param typedConstructor Constructor function for the type | ||
* @param queryOptions Query options. | ||
* @returns Array of strongly typed instances. | ||
*/ | ||
protected getInstancesChunk<T extends WsgInstance>(requestContext: AuthorizedClientRequestContext, url: string, chunkedQueryContext: ChunkedQueryContext | undefined, typedConstructor: new () => T, queryOptions?: RequestQueryOptions): Promise<T[]>; | ||
private getQueryRequestBody; | ||
@@ -129,0 +140,0 @@ /** Used by clients to get strongly typed instances from standard WSG REST queries that return EC JSON instances. |
@@ -16,2 +16,3 @@ "use strict"; | ||
const Request_1 = require("./Request"); | ||
const ChunkedQueryContext_1 = require("./ChunkedQueryContext"); | ||
const loggerCategory = ITwinClientLoggerCategory_1.ITwinClientLoggerCategory.Clients; | ||
@@ -216,12 +217,10 @@ /** Error that was returned by a WSG based service. | ||
if (this._url) { | ||
return Promise.resolve(this._url); | ||
return this._url; | ||
} | ||
return super.getUrl(requestContext) | ||
.then(async (url) => { | ||
this._url = url; | ||
if (!excludeApiVersion) { | ||
this._url += "/" + this.apiVersion; | ||
} | ||
return Promise.resolve(this._url); // TODO: On the server this really needs a lifetime!! | ||
}); | ||
const url = await super.getUrl(requestContext); | ||
this._url = url; | ||
if (!excludeApiVersion) { | ||
this._url += "/" + this.apiVersion; | ||
} | ||
return this._url; // TODO: On the server this really needs a lifetime!! | ||
} | ||
@@ -245,3 +244,3 @@ /** used by clients to delete strongly typed instances through the standard WSG REST API */ | ||
await this.setupOptionDefaults(options); | ||
return Request_1.request(requestContext, url, options).then(async () => Promise.resolve()); | ||
await Request_1.request(requestContext, url, options); | ||
} | ||
@@ -277,3 +276,3 @@ /** | ||
if (!res.body || !res.body.changedInstance || !res.body.changedInstance.instanceAfterChange) { | ||
return Promise.reject(new Error(`POST to URL ${url} executed successfully, but did not return the expected result.`)); | ||
throw new Error(`POST to URL ${url} executed successfully, but did not return the expected result.`); | ||
} | ||
@@ -284,6 +283,6 @@ const ecJsonInstance = res.body.changedInstance.instanceAfterChange; | ||
if (!typedInstance) { | ||
return Promise.reject(new Error(`POST to URL ${url} executed successfully, but could not convert response to a strongly typed instance.`)); | ||
throw new Error(`POST to URL ${url} executed successfully, but could not convert response to a strongly typed instance.`); | ||
} | ||
bentleyjs_core_1.Logger.logTrace(loggerCategory, "Successful POST request", () => ({ url })); | ||
return Promise.resolve(typedInstance); | ||
return typedInstance; | ||
} | ||
@@ -319,3 +318,3 @@ /** Used by clients to post multiple strongly typed instances through standard WSG REST API | ||
if (!res.body || !res.body.changedInstances) { | ||
return Promise.reject(new Error(`POST to URL ${url} executed successfully, but did not return the expected result.`)); | ||
throw new Error(`POST to URL ${url} executed successfully, but did not return the expected result.`); | ||
} | ||
@@ -334,3 +333,3 @@ const changedInstances = res.body.changedInstances.map((value) => { | ||
bentleyjs_core_1.Logger.logTrace(loggerCategory, "Successful POST request", () => ({ url })); | ||
return Promise.resolve(changedInstances); | ||
return changedInstances; | ||
} | ||
@@ -352,70 +351,53 @@ // @todo Use lower level utilities instead of the node based Request API. | ||
bentleyjs_core_1.Logger.logInfo(loggerCategory, "Sending GET request", () => ({ url })); | ||
let useSkipToken = false; | ||
let instancesLeft = -1; | ||
if (queryOptions) { | ||
if (!queryOptions.$top) { | ||
// Top was undefined. All instances must be returned by using SkipToken. | ||
queryOptions.$top = queryOptions.$pageSize; | ||
useSkipToken = true; | ||
} | ||
else if (queryOptions.$pageSize) { | ||
// Top and PageSize are defined. If Top is less or equal to PageSize then single request should be performed. | ||
// Otherwise multiple request should be performed by using SkipToken. | ||
if (queryOptions.$top > queryOptions.$pageSize) { | ||
instancesLeft = queryOptions.$top; | ||
queryOptions.$top = queryOptions.$pageSize; | ||
useSkipToken = true; | ||
} | ||
} | ||
// Clear PageSize so that it won't be included in url. | ||
queryOptions.$pageSize = undefined; | ||
} | ||
let skipToken = ""; | ||
const chunkedQueryContext = queryOptions ? ChunkedQueryContext_1.ChunkedQueryContext.create(queryOptions) : undefined; | ||
const typedInstances = new Array(); | ||
do { | ||
if (useSkipToken && instancesLeft > 0) { | ||
// Top was greater than PageSize. Update Top if this is the last page. | ||
if (instancesLeft > queryOptions.$top) { | ||
instancesLeft -= queryOptions.$top; | ||
} | ||
else { | ||
queryOptions.$top = instancesLeft; | ||
useSkipToken = false; | ||
} | ||
} | ||
const options = { | ||
method: "GET", | ||
qs: queryOptions, | ||
accept: "application/json", | ||
}; | ||
if (skipToken.length === 0) { | ||
options.headers = { | ||
authorization: requestContext.accessToken.toTokenString(), | ||
}; | ||
} | ||
else { | ||
options.headers = { | ||
authorization: requestContext.accessToken.toTokenString(), | ||
skiptoken: skipToken, | ||
}; | ||
} | ||
await this.setupOptionDefaults(options); | ||
const chunk = await this.getInstancesChunk(requestContext, url, chunkedQueryContext, typedConstructor, queryOptions); | ||
requestContext.enter(); | ||
const res = await Request_1.request(requestContext, url, options); | ||
requestContext.enter(); | ||
if (!res.body || !res.body.hasOwnProperty("instances")) { | ||
return Promise.reject(new Error(`Query to URL ${url} executed successfully, but did NOT return any instances.`)); | ||
} | ||
// console.log(JSON.stringify(res.body.instances)); | ||
for (const ecJsonInstance of res.body.instances) { | ||
const typedInstance = ECJsonTypeMap_1.ECJsonTypeMap.fromJson(typedConstructor, "wsg", ecJsonInstance); | ||
if (typedInstance) { | ||
typedInstances.push(typedInstance); | ||
} | ||
} | ||
skipToken = res.header.skiptoken; | ||
} while (skipToken && useSkipToken); | ||
typedInstances.push(...chunk); | ||
} while (chunkedQueryContext && !chunkedQueryContext.isQueryFinished); | ||
bentleyjs_core_1.Logger.logTrace(loggerCategory, "Successful GET request", () => ({ url })); | ||
return Promise.resolve(typedInstances); | ||
return typedInstances; | ||
} | ||
/** | ||
* Used by clients to get a chunk of strongly typed instances from standard WSG REST queries that return EC JSON instances. | ||
* @param requestContext Client request context | ||
* @param url Full path to the REST resource. | ||
* @param chunkedQueryContext Chunked query context. | ||
* @param typedConstructor Constructor function for the type | ||
* @param queryOptions Query options. | ||
* @returns Array of strongly typed instances. | ||
*/ | ||
async getInstancesChunk(requestContext, url, chunkedQueryContext, typedConstructor, queryOptions) { | ||
requestContext.enter(); | ||
const resultInstances = new Array(); | ||
if (chunkedQueryContext) | ||
chunkedQueryContext.handleIteration(queryOptions); | ||
const options = { | ||
method: "GET", | ||
qs: queryOptions, | ||
accept: "application/json", | ||
}; | ||
options.headers = { | ||
authorization: requestContext.accessToken.toTokenString(), | ||
}; | ||
if (chunkedQueryContext && chunkedQueryContext.skipToken && chunkedQueryContext.skipToken.length > 0) | ||
options.headers.skiptoken = chunkedQueryContext.skipToken; | ||
await this.setupOptionDefaults(options); | ||
requestContext.enter(); | ||
const res = await Request_1.request(requestContext, url, options); | ||
requestContext.enter(); | ||
if (!res.body || !res.body.hasOwnProperty("instances")) { | ||
throw new Error(`Query to URL ${url} executed successfully, but did NOT return any instances.`); | ||
} | ||
for (const ecJsonInstance of res.body.instances) { | ||
const typedInstance = ECJsonTypeMap_1.ECJsonTypeMap.fromJson(typedConstructor, "wsg", ecJsonInstance); | ||
if (typedInstance) { | ||
resultInstances.push(typedInstance); | ||
} | ||
} | ||
if (chunkedQueryContext) | ||
chunkedQueryContext.skipToken = res.header.skiptoken; | ||
return resultInstances; | ||
} | ||
getQueryRequestBody(queryOptions) { | ||
@@ -467,3 +449,3 @@ const addPart = (query, key, value) => { | ||
if (!res.body || !res.body.hasOwnProperty("instances")) { | ||
return Promise.reject(new Error(`Query to URL ${url} executed successfully, but did NOT return any instances.`)); | ||
throw new Error(`Query to URL ${url} executed successfully, but did NOT return any instances.`); | ||
} | ||
@@ -479,3 +461,3 @@ // console.log(JSON.stringify(res.body.instances)); | ||
bentleyjs_core_1.Logger.logTrace(loggerCategory, "Successful POST request", () => ({ url })); | ||
return Promise.resolve(typedInstances); | ||
return typedInstances; | ||
} | ||
@@ -482,0 +464,0 @@ } |
152
package.json
{ | ||
"name": "@bentley/itwin-client", | ||
"version": "2.0.0", | ||
"description": "Base client package for iTwin applications", | ||
"main": "lib/itwin-client.js", | ||
"typings": "lib/itwin-client", | ||
"imodeljsSharedLibrary": true, | ||
"license": "MIT", | ||
"scripts": { | ||
"build": "tsc 1>&2", | ||
"clean": "rimraf lib .rush/temp/package-deps*.json", | ||
"extract-api": "betools extract-api --entry=itwin-client", | ||
"docs": "betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/itwin-client/file.json --tsIndexFile=itwin-client.ts --onlyJson", | ||
"lint": "tslint --project . 1>&2", | ||
"webpackTests": "webpack --config ./src/test/utils/webpack.config.js 1>&2", | ||
"test": "betools test --offline=\"mock\"", | ||
"test:integration": "", | ||
"cover": "nyc npm test" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "https://github.com/imodeljs/imodeljs/tree/master/core/itwin-client" | ||
}, | ||
"keywords": [ | ||
"IMS Client", | ||
"WSG Client", | ||
"iTwin Client" | ||
], | ||
"author": { | ||
"name": "Bentley Systems, Inc.", | ||
"url": "http://www.bentley.com" | ||
}, | ||
"peerDependencies": { | ||
"@bentley/bentleyjs-core": "^2.0.0" | ||
}, | ||
"//devDependencies": [ | ||
"NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install", | ||
"NOTE: All tools used by scripts in this package must be listed as devDependencies" | ||
], | ||
"devDependencies": { | ||
"@bentley/certa": "2.0.0", | ||
"@bentley/bentleyjs-core": "2.0.0", | ||
"@bentley/build-tools": "2.0.0", | ||
"@bentley/config-loader": "2.0.0", | ||
"@bentley/geometry-core": "2.0.0", | ||
"@types/chai": "^4.1.4", | ||
"@types/deep-assign": "^0.1.0", | ||
"@types/js-base64": "^2.3.1", | ||
"@types/mocha": "^5.2.5", | ||
"@types/nock": "^9.1.2", | ||
"@types/node": "10.14.1", | ||
"@types/qs": "^6.5.0", | ||
"@types/superagent": "^3.5.6", | ||
"@types/xmldom": "^0.1.29", | ||
"chai": "^4.1.2", | ||
"mocha": "^5.2.0", | ||
"nock": "^9.2.3", | ||
"nyc": "^14.0.0", | ||
"rimraf": "^3.0.2", | ||
"ts-node": "^7.0.1", | ||
"tslint": "^5.11.0", | ||
"tslint-etc": "^1.5.2", | ||
"typescript": "~3.7.4", | ||
"webpack": "4.42.0", | ||
"source-map-loader": "^0.2.3" | ||
}, | ||
"dependencies": { | ||
"deep-assign": "^2.0.0", | ||
"js-base64": "^2.4.5", | ||
"qs": "^6.5.1", | ||
"superagent": "^3.7.0", | ||
"xmldom": "^0.1.27", | ||
"xpath": "0.0.27" | ||
}, | ||
"nyc": { | ||
"nycrc-path": "./node_modules/@bentley/build-tools/.nycrc" | ||
} | ||
"name": "@bentley/itwin-client", | ||
"version": "2.1.0", | ||
"description": "Base client package for iTwin applications", | ||
"main": "lib/itwin-client.js", | ||
"typings": "lib/itwin-client", | ||
"imodeljsSharedLibrary": true, | ||
"license": "MIT", | ||
"scripts": { | ||
"build": "tsc 1>&2", | ||
"clean": "rimraf lib .rush/temp/package-deps*.json", | ||
"extract-api": "betools extract-api --entry=itwin-client", | ||
"docs": "betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/itwin-client/file.json --tsIndexFile=itwin-client.ts --onlyJson", | ||
"lint": "tslint --project . 1>&2", | ||
"webpackTests": "webpack --config ./src/test/utils/webpack.config.js 1>&2", | ||
"test": "betools test --offline=\"mock\"", | ||
"test:integration": "", | ||
"cover": "nyc npm test" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "https://github.com/imodeljs/imodeljs/tree/master/core/itwin-client" | ||
}, | ||
"keywords": [ | ||
"IMS Client", | ||
"WSG Client", | ||
"iTwin Client" | ||
], | ||
"author": { | ||
"name": "Bentley Systems, Inc.", | ||
"url": "http://www.bentley.com" | ||
}, | ||
"peerDependencies": { | ||
"@bentley/bentleyjs-core": "^2.1.0" | ||
}, | ||
"//devDependencies": [ | ||
"NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install", | ||
"NOTE: All tools used by scripts in this package must be listed as devDependencies" | ||
], | ||
"devDependencies": { | ||
"@bentley/certa": "2.1.0", | ||
"@bentley/bentleyjs-core": "2.1.0", | ||
"@bentley/build-tools": "2.1.0", | ||
"@bentley/config-loader": "2.1.0", | ||
"@bentley/geometry-core": "2.1.0", | ||
"@types/chai": "^4.1.4", | ||
"@types/deep-assign": "^0.1.0", | ||
"@types/js-base64": "^2.3.1", | ||
"@types/mocha": "^5.2.5", | ||
"@types/nock": "^9.1.2", | ||
"@types/node": "10.14.1", | ||
"@types/qs": "^6.5.0", | ||
"@types/superagent": "^3.5.6", | ||
"@types/xmldom": "^0.1.29", | ||
"chai": "^4.1.2", | ||
"mocha": "^5.2.0", | ||
"nock": "^9.2.3", | ||
"nyc": "^14.0.0", | ||
"rimraf": "^3.0.2", | ||
"ts-node": "^7.0.1", | ||
"tslint": "^5.11.0", | ||
"tslint-etc": "^1.5.2", | ||
"typescript": "~3.7.4", | ||
"webpack": "4.42.0", | ||
"source-map-loader": "^1.0.0" | ||
}, | ||
"dependencies": { | ||
"deep-assign": "^2.0.0", | ||
"js-base64": "^2.4.5", | ||
"qs": "^6.5.1", | ||
"superagent": "^3.7.0", | ||
"xmldom": "^0.1.27", | ||
"xpath": "0.0.27" | ||
}, | ||
"nyc": { | ||
"nycrc-path": "./node_modules/@bentley/build-tools/.nycrc" | ||
} | ||
} |
@@ -39,3 +39,2 @@ /*--------------------------------------------------------------------------------------------- | ||
deepAssign(options, clonedOptions); // ensure the supplied options override the defaults | ||
return Promise.resolve(); | ||
} | ||
@@ -84,3 +83,3 @@ } | ||
if (this._url) { | ||
return Promise.resolve(this._url); | ||
return this._url; | ||
} | ||
@@ -90,10 +89,9 @@ | ||
const searchKey: string = this.getUrlSearchKey(); | ||
return urlDiscoveryClient.discoverUrl(requestContext, searchKey, undefined) | ||
.then(async (url: string): Promise<string> => { | ||
this._url = url; | ||
return Promise.resolve(this._url); // TODO: On the server this really needs a lifetime!! | ||
}) | ||
.catch(async (): Promise<string> => { | ||
return Promise.reject(`Failed to discover URL for service identified by "${searchKey}"`); | ||
}); | ||
try { | ||
const url = await urlDiscoveryClient.discoverUrl(requestContext, searchKey, undefined); | ||
this._url = url; | ||
return this._url; // TODO: On the server this really needs a lifetime!! | ||
} catch (error) { | ||
throw new Error(`Failed to discover URL for service identified by "${searchKey}"`); | ||
} | ||
} | ||
@@ -151,3 +149,3 @@ | ||
public async getUrl(): Promise<string> { | ||
return Promise.resolve(Config.App.getString(UrlDiscoveryClient.configURL, "https://buddi.bentley.com/WebService")); | ||
return Config.App.getString(UrlDiscoveryClient.configURL, "https://buddi.bentley.com/WebService"); | ||
} | ||
@@ -181,4 +179,4 @@ | ||
const discoveredUrl: string = response.body.result.url.replace(/\/$/, ""); // strip trailing "/" for consistency | ||
return Promise.resolve(discoveredUrl); | ||
return discoveredUrl; | ||
} | ||
} |
@@ -18,2 +18,3 @@ /*--------------------------------------------------------------------------------------------- | ||
export * from "./SamlToken"; | ||
export * from "./ChunkedQueryContext"; | ||
@@ -20,0 +21,0 @@ /** @docs-package-description |
@@ -423,16 +423,15 @@ /*--------------------------------------------------------------------------------------------- | ||
*/ | ||
return sareq | ||
.then(async (response: sarequest.Response) => { | ||
const retResponse: Response = { | ||
body: response.body, | ||
text: response.text, | ||
header: response.header, | ||
status: response.status, | ||
}; | ||
return Promise.resolve(retResponse); | ||
}) | ||
.catch(async (error: any) => { | ||
const parsedError = errorCallback(error); | ||
return Promise.reject(parsedError); | ||
}); | ||
try { | ||
const response = await sareq; | ||
const retResponse: Response = { | ||
body: response.body, | ||
text: response.text, | ||
header: response.header, | ||
status: response.status, | ||
}; | ||
return retResponse; | ||
} catch (error) { | ||
const parsedError = errorCallback(error); | ||
throw parsedError; | ||
} | ||
} | ||
@@ -439,0 +438,0 @@ |
@@ -15,2 +15,3 @@ /*--------------------------------------------------------------------------------------------- | ||
import { request, RequestOptions, RequestQueryOptions, Response, ResponseError } from "./Request"; | ||
import { ChunkedQueryContext } from "./ChunkedQueryContext"; | ||
@@ -248,13 +249,11 @@ const loggerCategory: string = ITwinClientLoggerCategory.Clients; | ||
if (this._url) { | ||
return Promise.resolve(this._url); | ||
return this._url; | ||
} | ||
return super.getUrl(requestContext) | ||
.then(async (url: string): Promise<string> => { | ||
this._url = url; | ||
if (!excludeApiVersion) { | ||
this._url += "/" + this.apiVersion; | ||
} | ||
return Promise.resolve(this._url); // TODO: On the server this really needs a lifetime!! | ||
}); | ||
const url = await super.getUrl(requestContext); | ||
this._url = url; | ||
if (!excludeApiVersion) { | ||
this._url += "/" + this.apiVersion; | ||
} | ||
return this._url; // TODO: On the server this really needs a lifetime!! | ||
} | ||
@@ -279,3 +278,3 @@ | ||
await this.setupOptionDefaults(options); | ||
return request(requestContext, url, options).then(async () => Promise.resolve()); | ||
await request(requestContext, url, options); | ||
} | ||
@@ -313,3 +312,3 @@ | ||
if (!res.body || !res.body.changedInstance || !res.body.changedInstance.instanceAfterChange) { | ||
return Promise.reject(new Error(`POST to URL ${url} executed successfully, but did not return the expected result.`)); | ||
throw new Error(`POST to URL ${url} executed successfully, but did not return the expected result.`); | ||
} | ||
@@ -321,7 +320,7 @@ const ecJsonInstance = res.body.changedInstance.instanceAfterChange; | ||
if (!typedInstance) { | ||
return Promise.reject(new Error(`POST to URL ${url} executed successfully, but could not convert response to a strongly typed instance.`)); | ||
throw new Error(`POST to URL ${url} executed successfully, but could not convert response to a strongly typed instance.`); | ||
} | ||
Logger.logTrace(loggerCategory, "Successful POST request", () => ({ url })); | ||
return Promise.resolve(typedInstance); | ||
return typedInstance; | ||
} | ||
@@ -360,3 +359,3 @@ | ||
if (!res.body || !res.body.changedInstances) { | ||
return Promise.reject(new Error(`POST to URL ${url} executed successfully, but did not return the expected result.`)); | ||
throw new Error(`POST to URL ${url} executed successfully, but did not return the expected result.`); | ||
} | ||
@@ -376,3 +375,3 @@ const changedInstances: T[] = (res.body.changedInstances as any[]).map<T>((value: any) => { | ||
Logger.logTrace(loggerCategory, "Successful POST request", () => ({ url })); | ||
return Promise.resolve(changedInstances); | ||
return changedInstances; | ||
} | ||
@@ -396,72 +395,63 @@ | ||
let useSkipToken: boolean = false; | ||
let instancesLeft: number = -1; | ||
if (queryOptions) { | ||
if (!queryOptions.$top) { | ||
// Top was undefined. All instances must be returned by using SkipToken. | ||
queryOptions.$top = queryOptions.$pageSize; | ||
useSkipToken = true; | ||
} else if (queryOptions.$pageSize) { | ||
// Top and PageSize are defined. If Top is less or equal to PageSize then single request should be performed. | ||
// Otherwise multiple request should be performed by using SkipToken. | ||
if (queryOptions.$top > queryOptions.$pageSize) { | ||
instancesLeft = queryOptions.$top; | ||
queryOptions.$top = queryOptions.$pageSize; | ||
useSkipToken = true; | ||
} | ||
} | ||
// Clear PageSize so that it won't be included in url. | ||
queryOptions.$pageSize = undefined; | ||
} | ||
let skipToken: string = ""; | ||
const chunkedQueryContext = queryOptions ? ChunkedQueryContext.create(queryOptions) : undefined; | ||
const typedInstances: T[] = new Array<T>(); | ||
do { | ||
if (useSkipToken && instancesLeft > 0) { | ||
// Top was greater than PageSize. Update Top if this is the last page. | ||
if (instancesLeft > queryOptions!.$top!) { | ||
instancesLeft -= queryOptions!.$top!; | ||
} else { | ||
queryOptions!.$top = instancesLeft; | ||
useSkipToken = false; | ||
} | ||
} | ||
const chunk = await this.getInstancesChunk(requestContext, url, chunkedQueryContext, typedConstructor, queryOptions); | ||
requestContext.enter(); | ||
typedInstances.push(...chunk); | ||
} while (chunkedQueryContext && !chunkedQueryContext.isQueryFinished); | ||
const options: RequestOptions = { | ||
method: "GET", | ||
qs: queryOptions, | ||
accept: "application/json", | ||
}; | ||
Logger.logTrace(loggerCategory, "Successful GET request", () => ({ url })); | ||
return typedInstances; | ||
} | ||
if (skipToken.length === 0) { | ||
options.headers = { | ||
authorization: requestContext.accessToken.toTokenString(), | ||
}; | ||
} else { | ||
options.headers = { | ||
authorization: requestContext.accessToken.toTokenString(), | ||
skiptoken: skipToken, | ||
}; | ||
} | ||
/** | ||
* Used by clients to get a chunk of strongly typed instances from standard WSG REST queries that return EC JSON instances. | ||
* @param requestContext Client request context | ||
* @param url Full path to the REST resource. | ||
* @param chunkedQueryContext Chunked query context. | ||
* @param typedConstructor Constructor function for the type | ||
* @param queryOptions Query options. | ||
* @returns Array of strongly typed instances. | ||
*/ | ||
protected async getInstancesChunk<T extends WsgInstance>(requestContext: AuthorizedClientRequestContext, url: string, chunkedQueryContext: ChunkedQueryContext | undefined, typedConstructor: new () => T, queryOptions?: RequestQueryOptions): Promise<T[]> { | ||
requestContext.enter(); | ||
const resultInstances: T[] = new Array<T>(); | ||
await this.setupOptionDefaults(options); | ||
requestContext.enter(); | ||
if (chunkedQueryContext) | ||
chunkedQueryContext.handleIteration(queryOptions!); | ||
const res: Response = await request(requestContext, url, options); | ||
requestContext.enter(); | ||
if (!res.body || !res.body.hasOwnProperty("instances")) { | ||
return Promise.reject(new Error(`Query to URL ${url} executed successfully, but did NOT return any instances.`)); | ||
const options: RequestOptions = { | ||
method: "GET", | ||
qs: queryOptions, | ||
accept: "application/json", | ||
}; | ||
options.headers = { | ||
authorization: requestContext.accessToken.toTokenString(), | ||
}; | ||
if (chunkedQueryContext && chunkedQueryContext.skipToken && chunkedQueryContext.skipToken.length > 0) | ||
options.headers.skiptoken = chunkedQueryContext.skipToken; | ||
await this.setupOptionDefaults(options); | ||
requestContext.enter(); | ||
const res: Response = await request(requestContext, url, options); | ||
requestContext.enter(); | ||
if (!res.body || !res.body.hasOwnProperty("instances")) { | ||
throw new Error(`Query to URL ${url} executed successfully, but did NOT return any instances.`); | ||
} | ||
for (const ecJsonInstance of res.body.instances) { | ||
const typedInstance: T | undefined = ECJsonTypeMap.fromJson<T>(typedConstructor, "wsg", ecJsonInstance); | ||
if (typedInstance) { | ||
resultInstances.push(typedInstance); | ||
} | ||
// console.log(JSON.stringify(res.body.instances)); | ||
for (const ecJsonInstance of res.body.instances) { | ||
const typedInstance: T | undefined = ECJsonTypeMap.fromJson<T>(typedConstructor, "wsg", ecJsonInstance); | ||
if (typedInstance) { | ||
typedInstances.push(typedInstance); | ||
} | ||
} | ||
skipToken = res.header.skiptoken; | ||
} while (skipToken && useSkipToken); | ||
} | ||
Logger.logTrace(loggerCategory, "Successful GET request", () => ({ url })); | ||
return Promise.resolve(typedInstances); | ||
if (chunkedQueryContext) | ||
chunkedQueryContext.skipToken = res.header.skiptoken; | ||
return resultInstances; | ||
} | ||
@@ -519,3 +509,3 @@ | ||
if (!res.body || !res.body.hasOwnProperty("instances")) { | ||
return Promise.reject(new Error(`Query to URL ${url} executed successfully, but did NOT return any instances.`)); | ||
throw new Error(`Query to URL ${url} executed successfully, but did NOT return any instances.`); | ||
} | ||
@@ -532,4 +522,4 @@ // console.log(JSON.stringify(res.body.instances)); | ||
Logger.logTrace(loggerCategory, "Successful POST request", () => ({ url })); | ||
return Promise.resolve(typedInstances); | ||
return typedInstances; | ||
} | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
1039571
121
8194