@itwin/rpcinterface-full-stack-tests 3.4.0-dev.61 → 3.4.0-dev.62
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/dist/_fc1f.bundled-tests.js.map +1 -1
- package/lib/dist/bundled-tests.js +332 -332
- package/lib/dist/bundled-tests.js.map +1 -1
- package/lib/dist/core_frontend_lib_esm_ApproximateTerrainHeightsProps_js.bundled-tests.js.map +1 -1
- package/lib/dist/object-storage.bundled-tests.js.map +1 -1
- package/lib/dist/vendors-common_temp_node_modules_pnpm_itwin_object-storage-azure_1_4_0_node_modules_itwin_obj-3576c6.bundled-tests.js.map +1 -1
- package/lib/dist/vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_2_9_node_modules_loaders_gl_draco_di-01256f.bundled-tests.js.map +1 -1
- package/lib/dist/vendors-common_temp_node_modules_pnpm_reflect-metadata_0_1_13_node_modules_reflect-metadata_R-610cb3.bundled-tests.js.map +1 -1
- package/package.json +14 -14
|
@@ -268394,225 +268394,225 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
268394
268394
|
/* harmony import */ var i18next_browser_languagedetector__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! i18next-browser-languagedetector */ "../../common/temp/node_modules/.pnpm/i18next-browser-languagedetector@6.1.5/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js");
|
|
268395
268395
|
/* harmony import */ var i18next_http_backend__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! i18next-http-backend */ "../../common/temp/node_modules/.pnpm/i18next-http-backend@1.4.4/node_modules/i18next-http-backend/esm/index.js");
|
|
268396
268396
|
/* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
|
|
268397
|
-
/*---------------------------------------------------------------------------------------------
|
|
268398
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
268399
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
268400
|
-
*--------------------------------------------------------------------------------------------*/
|
|
268401
|
-
/** @packageDocumentation
|
|
268402
|
-
* @module Localization
|
|
268403
|
-
*/
|
|
268404
|
-
|
|
268405
|
-
|
|
268406
|
-
|
|
268407
|
-
|
|
268408
|
-
const DEFAULT_MAX_RETRIES = 1; // a low number prevents wasted time and potential timeouts when requesting localization files throws an error
|
|
268409
|
-
/** Supplies localizations for iTwin.js
|
|
268410
|
-
* @note this class uses the [i18next](https://www.i18next.com/) package.
|
|
268411
|
-
* @public
|
|
268412
|
-
*/
|
|
268413
|
-
class ITwinLocalization {
|
|
268414
|
-
constructor(options) {
|
|
268415
|
-
var _a, _b, _c;
|
|
268416
|
-
this._namespaces = new Map();
|
|
268417
|
-
this.i18next = i18next__WEBPACK_IMPORTED_MODULE_0__["default"].createInstance();
|
|
268418
|
-
this._backendOptions = {
|
|
268419
|
-
loadPath: (_a = options === null || options === void 0 ? void 0 : options.urlTemplate) !== null && _a !== void 0 ? _a : "locales/{{lng}}/{{ns}}.json",
|
|
268420
|
-
crossDomain: true,
|
|
268421
|
-
...options === null || options === void 0 ? void 0 : options.backendHttpOptions,
|
|
268422
|
-
};
|
|
268423
|
-
this._detectionOptions = {
|
|
268424
|
-
order: ["querystring", "navigator", "htmlTag"],
|
|
268425
|
-
lookupQuerystring: "lng",
|
|
268426
|
-
caches: [],
|
|
268427
|
-
...options === null || options === void 0 ? void 0 : options.detectorOptions,
|
|
268428
|
-
};
|
|
268429
|
-
this._initOptions = {
|
|
268430
|
-
interpolation: { escapeValue: true },
|
|
268431
|
-
fallbackLng: "en",
|
|
268432
|
-
maxRetries: DEFAULT_MAX_RETRIES,
|
|
268433
|
-
backend: this._backendOptions,
|
|
268434
|
-
detection: this._detectionOptions,
|
|
268435
|
-
...options === null || options === void 0 ? void 0 : options.initOptions,
|
|
268436
|
-
};
|
|
268437
|
-
this.i18next
|
|
268438
|
-
.use((_b = options === null || options === void 0 ? void 0 : options.detectorPlugin) !== null && _b !== void 0 ? _b : i18next_browser_languagedetector__WEBPACK_IMPORTED_MODULE_1__["default"])
|
|
268439
|
-
.use((_c = options === null || options === void 0 ? void 0 : options.backendPlugin) !== null && _c !== void 0 ? _c : i18next_http_backend__WEBPACK_IMPORTED_MODULE_2__["default"])
|
|
268440
|
-
.use(TranslationLogger);
|
|
268441
|
-
}
|
|
268442
|
-
async initialize(namespaces) {
|
|
268443
|
-
var _a;
|
|
268444
|
-
// Also consider namespaces passed into constructor
|
|
268445
|
-
const initNamespaces = [this._initOptions.ns || []].flat();
|
|
268446
|
-
const combinedNamespaces = new Set([...namespaces, ...initNamespaces]); // without duplicates
|
|
268447
|
-
const defaultNamespace = (_a = this._initOptions.defaultNS) !== null && _a !== void 0 ? _a : namespaces[0];
|
|
268448
|
-
if (defaultNamespace)
|
|
268449
|
-
combinedNamespaces.add(defaultNamespace); // Make sure default namespace is in namespaces list
|
|
268450
|
-
const initOptions = {
|
|
268451
|
-
...this._initOptions,
|
|
268452
|
-
defaultNS: defaultNamespace,
|
|
268453
|
-
ns: [...combinedNamespaces],
|
|
268454
|
-
};
|
|
268455
|
-
// if in a development environment, set debugging
|
|
268456
|
-
if (false)
|
|
268457
|
-
{}
|
|
268458
|
-
const initPromise = this.i18next.init(initOptions);
|
|
268459
|
-
for (const ns of namespaces)
|
|
268460
|
-
this._namespaces.set(ns, initPromise);
|
|
268461
|
-
return initPromise;
|
|
268462
|
-
}
|
|
268463
|
-
/** Replace all instances of `%{key}` within a string with the translations of those keys.
|
|
268464
|
-
* For example:
|
|
268465
|
-
* ``` ts
|
|
268466
|
-
* "MyKeys": {
|
|
268467
|
-
* "Key1": "First value",
|
|
268468
|
-
* "Key2": "Second value"
|
|
268469
|
-
* }
|
|
268470
|
-
* ```
|
|
268471
|
-
*
|
|
268472
|
-
* ``` ts
|
|
268473
|
-
* i18.translateKeys("string with %{MyKeys.Key1} followed by %{MyKeys.Key2}!"") // returns "string with First Value followed by Second Value!"
|
|
268474
|
-
* ```
|
|
268475
|
-
* @param line The input line, potentially containing %{keys}.
|
|
268476
|
-
* @returns The line with all %{keys} translated
|
|
268477
|
-
* @public
|
|
268478
|
-
*/
|
|
268479
|
-
getLocalizedKeys(line) {
|
|
268480
|
-
return line.replace(/\%\{(.+?)\}/g, (_match, tag) => this.getLocalizedString(tag));
|
|
268481
|
-
}
|
|
268482
|
-
/** Return the translated value of a key.
|
|
268483
|
-
* @param key - the key that matches a property in the JSON localization file.
|
|
268484
|
-
* @note The key includes the namespace, which identifies the particular localization file that contains the property,
|
|
268485
|
-
* followed by a colon, followed by the property in the JSON file.
|
|
268486
|
-
* For example:
|
|
268487
|
-
* ``` ts
|
|
268488
|
-
* const dataString: string = IModelApp.localization.getLocalizedString("iModelJs:BackgroundMap.BingDataAttribution");
|
|
268489
|
-
* ```
|
|
268490
|
-
* assigns to dataString the string with property BackgroundMap.BingDataAttribution from the iModelJs.json localization file.
|
|
268491
|
-
* @returns The string corresponding to the first key that resolves.
|
|
268492
|
-
* @throws Error if no keys resolve to a string.
|
|
268493
|
-
* @public
|
|
268494
|
-
*/
|
|
268495
|
-
getLocalizedString(key, options) {
|
|
268496
|
-
if ((options === null || options === void 0 ? void 0 : options.returnDetails) || (options === null || options === void 0 ? void 0 : options.returnObjects)) {
|
|
268497
|
-
throw new Error("Translation key must map to a string, but the given options will result in an object");
|
|
268498
|
-
}
|
|
268499
|
-
const value = this.i18next.t(key, options);
|
|
268500
|
-
if (typeof value !== "string") {
|
|
268501
|
-
throw new Error("Translation key(s) string not found");
|
|
268502
|
-
}
|
|
268503
|
-
return value;
|
|
268504
|
-
}
|
|
268505
|
-
/** Similar to `getLocalizedString` but the namespace is a separate param and the key does not include the namespace.
|
|
268506
|
-
* @param namespace - the namespace that identifies the particular localization file that contains the property.
|
|
268507
|
-
* @param key - the key that matches a property in the JSON localization file.
|
|
268508
|
-
* @returns The string corresponding to the first key that resolves.
|
|
268509
|
-
* @throws Error if no keys resolve to a string.
|
|
268510
|
-
* @internal
|
|
268511
|
-
*/
|
|
268512
|
-
getLocalizedStringWithNamespace(namespace, key, options) {
|
|
268513
|
-
let fullKey = "";
|
|
268514
|
-
if (typeof key === "string") {
|
|
268515
|
-
fullKey = `${namespace}:${key}`;
|
|
268516
|
-
}
|
|
268517
|
-
else {
|
|
268518
|
-
fullKey = key.map((subKey) => {
|
|
268519
|
-
return `${namespace}:${subKey}`;
|
|
268520
|
-
});
|
|
268521
|
-
}
|
|
268522
|
-
return this.getLocalizedString(fullKey, options);
|
|
268523
|
-
}
|
|
268524
|
-
/** Gets the English translation.
|
|
268525
|
-
* @param namespace - the namespace that identifies the particular localization file that contains the property.
|
|
268526
|
-
* @param key - the key that matches a property in the JSON localization file.
|
|
268527
|
-
* @returns The string corresponding to the first key that resolves.
|
|
268528
|
-
* @throws Error if no keys resolve to a string.
|
|
268529
|
-
* @internal
|
|
268530
|
-
*/
|
|
268531
|
-
getEnglishString(namespace, key, options) {
|
|
268532
|
-
if ((options === null || options === void 0 ? void 0 : options.returnDetails) || (options === null || options === void 0 ? void 0 : options.returnObjects)) {
|
|
268533
|
-
throw new Error("Translation key must map to a string, but the given options will result in an object");
|
|
268534
|
-
}
|
|
268535
|
-
const en = this.i18next.getFixedT("en", namespace);
|
|
268536
|
-
const str = en(key, options);
|
|
268537
|
-
if (typeof str !== "string")
|
|
268538
|
-
throw new Error("Translation key(s) not found");
|
|
268539
|
-
return str;
|
|
268540
|
-
}
|
|
268541
|
-
/** Get the promise for an already registered Namespace.
|
|
268542
|
-
* @param name - the name of the namespace
|
|
268543
|
-
* @public
|
|
268544
|
-
*/
|
|
268545
|
-
getNamespacePromise(name) {
|
|
268546
|
-
return this._namespaces.get(name);
|
|
268547
|
-
}
|
|
268548
|
-
/** @internal */
|
|
268549
|
-
getLanguageList() {
|
|
268550
|
-
return this.i18next.languages;
|
|
268551
|
-
}
|
|
268552
|
-
/** override the language detected in the browser */
|
|
268553
|
-
async changeLanguage(language) {
|
|
268554
|
-
return this.i18next.changeLanguage(language);
|
|
268555
|
-
}
|
|
268556
|
-
/** Register a new Namespace and return it. If the namespace is already registered, it will be returned.
|
|
268557
|
-
* @param name - the name of the namespace, which is the base name of the JSON file that contains the localization properties.
|
|
268558
|
-
* @note - The registerNamespace method starts fetching the appropriate version of the JSON localization file from the server,
|
|
268559
|
-
* based on the current locale. To make sure that fetch is complete before performing translations from this namespace, await
|
|
268560
|
-
* fulfillment of the readPromise Promise property of the returned LocalizationNamespace.
|
|
268561
|
-
* @see [Localization in iTwin.js]($docs/learning/frontend/Localization.md)
|
|
268562
|
-
* @public
|
|
268563
|
-
*/
|
|
268564
|
-
async registerNamespace(name) {
|
|
268565
|
-
const existing = this._namespaces.get(name);
|
|
268566
|
-
if (existing !== undefined)
|
|
268567
|
-
return existing;
|
|
268568
|
-
const theReadPromise = new Promise((resolve) => {
|
|
268569
|
-
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
268570
|
-
this.i18next.loadNamespaces(name, (err) => {
|
|
268571
|
-
if (!err)
|
|
268572
|
-
return resolve();
|
|
268573
|
-
// Here we got a non-null err object.
|
|
268574
|
-
// This method is called when the system has attempted to load the resources for the namespaces for each possible locale.
|
|
268575
|
-
// For example 'fr-ca' might be the most specific locale, in which case 'fr' and 'en' are fallback locales.
|
|
268576
|
-
// Using Backend from i18next-http-backend, err will be an array of strings of each namespace it tried to read and its locale.
|
|
268577
|
-
// There might be errs for some other namespaces as well as this one. We resolve the promise unless there's an error for each possible locale.
|
|
268578
|
-
let locales = this.getLanguageList().map((thisLocale) => `/${thisLocale}/`);
|
|
268579
|
-
try {
|
|
268580
|
-
for (const thisError of err) {
|
|
268581
|
-
if (typeof thisError === "string")
|
|
268582
|
-
locales = locales.filter((thisLocale) => !thisError.includes(thisLocale));
|
|
268583
|
-
}
|
|
268584
|
-
}
|
|
268585
|
-
catch (e) {
|
|
268586
|
-
locales = [];
|
|
268587
|
-
}
|
|
268588
|
-
// if we removed every locale from the array, it wasn't loaded.
|
|
268589
|
-
if (locales.length === 0)
|
|
268590
|
-
_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_3__.Logger.logError("i18n", `No resources for namespace ${name} could be loaded`);
|
|
268591
|
-
resolve();
|
|
268592
|
-
});
|
|
268593
|
-
});
|
|
268594
|
-
this._namespaces.set(name, theReadPromise);
|
|
268595
|
-
return theReadPromise;
|
|
268596
|
-
}
|
|
268597
|
-
/** @internal */
|
|
268598
|
-
unregisterNamespace(name) {
|
|
268599
|
-
this._namespaces.delete(name);
|
|
268600
|
-
}
|
|
268601
|
-
}
|
|
268602
|
-
class TranslationLogger {
|
|
268603
|
-
log(args) { _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_3__.Logger.logInfo("i18n", this.createLogMessage(args)); }
|
|
268604
|
-
warn(args) { _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_3__.Logger.logWarning("i18n", this.createLogMessage(args)); }
|
|
268605
|
-
error(args) { _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_3__.Logger.logError("i18n", this.createLogMessage(args)); }
|
|
268606
|
-
createLogMessage(args) {
|
|
268607
|
-
let message = args[0];
|
|
268608
|
-
for (let i = 1; i < args.length; ++i) {
|
|
268609
|
-
if (typeof args[i] === "string")
|
|
268610
|
-
message += `\n ${args[i]}`;
|
|
268611
|
-
}
|
|
268612
|
-
return message;
|
|
268613
|
-
}
|
|
268614
|
-
}
|
|
268615
|
-
TranslationLogger.type = "logger";
|
|
268397
|
+
/*---------------------------------------------------------------------------------------------
|
|
268398
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
268399
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
268400
|
+
*--------------------------------------------------------------------------------------------*/
|
|
268401
|
+
/** @packageDocumentation
|
|
268402
|
+
* @module Localization
|
|
268403
|
+
*/
|
|
268404
|
+
|
|
268405
|
+
|
|
268406
|
+
|
|
268407
|
+
|
|
268408
|
+
const DEFAULT_MAX_RETRIES = 1; // a low number prevents wasted time and potential timeouts when requesting localization files throws an error
|
|
268409
|
+
/** Supplies localizations for iTwin.js
|
|
268410
|
+
* @note this class uses the [i18next](https://www.i18next.com/) package.
|
|
268411
|
+
* @public
|
|
268412
|
+
*/
|
|
268413
|
+
class ITwinLocalization {
|
|
268414
|
+
constructor(options) {
|
|
268415
|
+
var _a, _b, _c;
|
|
268416
|
+
this._namespaces = new Map();
|
|
268417
|
+
this.i18next = i18next__WEBPACK_IMPORTED_MODULE_0__["default"].createInstance();
|
|
268418
|
+
this._backendOptions = {
|
|
268419
|
+
loadPath: (_a = options === null || options === void 0 ? void 0 : options.urlTemplate) !== null && _a !== void 0 ? _a : "locales/{{lng}}/{{ns}}.json",
|
|
268420
|
+
crossDomain: true,
|
|
268421
|
+
...options === null || options === void 0 ? void 0 : options.backendHttpOptions,
|
|
268422
|
+
};
|
|
268423
|
+
this._detectionOptions = {
|
|
268424
|
+
order: ["querystring", "navigator", "htmlTag"],
|
|
268425
|
+
lookupQuerystring: "lng",
|
|
268426
|
+
caches: [],
|
|
268427
|
+
...options === null || options === void 0 ? void 0 : options.detectorOptions,
|
|
268428
|
+
};
|
|
268429
|
+
this._initOptions = {
|
|
268430
|
+
interpolation: { escapeValue: true },
|
|
268431
|
+
fallbackLng: "en",
|
|
268432
|
+
maxRetries: DEFAULT_MAX_RETRIES,
|
|
268433
|
+
backend: this._backendOptions,
|
|
268434
|
+
detection: this._detectionOptions,
|
|
268435
|
+
...options === null || options === void 0 ? void 0 : options.initOptions,
|
|
268436
|
+
};
|
|
268437
|
+
this.i18next
|
|
268438
|
+
.use((_b = options === null || options === void 0 ? void 0 : options.detectorPlugin) !== null && _b !== void 0 ? _b : i18next_browser_languagedetector__WEBPACK_IMPORTED_MODULE_1__["default"])
|
|
268439
|
+
.use((_c = options === null || options === void 0 ? void 0 : options.backendPlugin) !== null && _c !== void 0 ? _c : i18next_http_backend__WEBPACK_IMPORTED_MODULE_2__["default"])
|
|
268440
|
+
.use(TranslationLogger);
|
|
268441
|
+
}
|
|
268442
|
+
async initialize(namespaces) {
|
|
268443
|
+
var _a;
|
|
268444
|
+
// Also consider namespaces passed into constructor
|
|
268445
|
+
const initNamespaces = [this._initOptions.ns || []].flat();
|
|
268446
|
+
const combinedNamespaces = new Set([...namespaces, ...initNamespaces]); // without duplicates
|
|
268447
|
+
const defaultNamespace = (_a = this._initOptions.defaultNS) !== null && _a !== void 0 ? _a : namespaces[0];
|
|
268448
|
+
if (defaultNamespace)
|
|
268449
|
+
combinedNamespaces.add(defaultNamespace); // Make sure default namespace is in namespaces list
|
|
268450
|
+
const initOptions = {
|
|
268451
|
+
...this._initOptions,
|
|
268452
|
+
defaultNS: defaultNamespace,
|
|
268453
|
+
ns: [...combinedNamespaces],
|
|
268454
|
+
};
|
|
268455
|
+
// if in a development environment, set debugging
|
|
268456
|
+
if (false)
|
|
268457
|
+
{}
|
|
268458
|
+
const initPromise = this.i18next.init(initOptions);
|
|
268459
|
+
for (const ns of namespaces)
|
|
268460
|
+
this._namespaces.set(ns, initPromise);
|
|
268461
|
+
return initPromise;
|
|
268462
|
+
}
|
|
268463
|
+
/** Replace all instances of `%{key}` within a string with the translations of those keys.
|
|
268464
|
+
* For example:
|
|
268465
|
+
* ``` ts
|
|
268466
|
+
* "MyKeys": {
|
|
268467
|
+
* "Key1": "First value",
|
|
268468
|
+
* "Key2": "Second value"
|
|
268469
|
+
* }
|
|
268470
|
+
* ```
|
|
268471
|
+
*
|
|
268472
|
+
* ``` ts
|
|
268473
|
+
* i18.translateKeys("string with %{MyKeys.Key1} followed by %{MyKeys.Key2}!"") // returns "string with First Value followed by Second Value!"
|
|
268474
|
+
* ```
|
|
268475
|
+
* @param line The input line, potentially containing %{keys}.
|
|
268476
|
+
* @returns The line with all %{keys} translated
|
|
268477
|
+
* @public
|
|
268478
|
+
*/
|
|
268479
|
+
getLocalizedKeys(line) {
|
|
268480
|
+
return line.replace(/\%\{(.+?)\}/g, (_match, tag) => this.getLocalizedString(tag));
|
|
268481
|
+
}
|
|
268482
|
+
/** Return the translated value of a key.
|
|
268483
|
+
* @param key - the key that matches a property in the JSON localization file.
|
|
268484
|
+
* @note The key includes the namespace, which identifies the particular localization file that contains the property,
|
|
268485
|
+
* followed by a colon, followed by the property in the JSON file.
|
|
268486
|
+
* For example:
|
|
268487
|
+
* ``` ts
|
|
268488
|
+
* const dataString: string = IModelApp.localization.getLocalizedString("iModelJs:BackgroundMap.BingDataAttribution");
|
|
268489
|
+
* ```
|
|
268490
|
+
* assigns to dataString the string with property BackgroundMap.BingDataAttribution from the iModelJs.json localization file.
|
|
268491
|
+
* @returns The string corresponding to the first key that resolves.
|
|
268492
|
+
* @throws Error if no keys resolve to a string.
|
|
268493
|
+
* @public
|
|
268494
|
+
*/
|
|
268495
|
+
getLocalizedString(key, options) {
|
|
268496
|
+
if ((options === null || options === void 0 ? void 0 : options.returnDetails) || (options === null || options === void 0 ? void 0 : options.returnObjects)) {
|
|
268497
|
+
throw new Error("Translation key must map to a string, but the given options will result in an object");
|
|
268498
|
+
}
|
|
268499
|
+
const value = this.i18next.t(key, options);
|
|
268500
|
+
if (typeof value !== "string") {
|
|
268501
|
+
throw new Error("Translation key(s) string not found");
|
|
268502
|
+
}
|
|
268503
|
+
return value;
|
|
268504
|
+
}
|
|
268505
|
+
/** Similar to `getLocalizedString` but the namespace is a separate param and the key does not include the namespace.
|
|
268506
|
+
* @param namespace - the namespace that identifies the particular localization file that contains the property.
|
|
268507
|
+
* @param key - the key that matches a property in the JSON localization file.
|
|
268508
|
+
* @returns The string corresponding to the first key that resolves.
|
|
268509
|
+
* @throws Error if no keys resolve to a string.
|
|
268510
|
+
* @internal
|
|
268511
|
+
*/
|
|
268512
|
+
getLocalizedStringWithNamespace(namespace, key, options) {
|
|
268513
|
+
let fullKey = "";
|
|
268514
|
+
if (typeof key === "string") {
|
|
268515
|
+
fullKey = `${namespace}:${key}`;
|
|
268516
|
+
}
|
|
268517
|
+
else {
|
|
268518
|
+
fullKey = key.map((subKey) => {
|
|
268519
|
+
return `${namespace}:${subKey}`;
|
|
268520
|
+
});
|
|
268521
|
+
}
|
|
268522
|
+
return this.getLocalizedString(fullKey, options);
|
|
268523
|
+
}
|
|
268524
|
+
/** Gets the English translation.
|
|
268525
|
+
* @param namespace - the namespace that identifies the particular localization file that contains the property.
|
|
268526
|
+
* @param key - the key that matches a property in the JSON localization file.
|
|
268527
|
+
* @returns The string corresponding to the first key that resolves.
|
|
268528
|
+
* @throws Error if no keys resolve to a string.
|
|
268529
|
+
* @internal
|
|
268530
|
+
*/
|
|
268531
|
+
getEnglishString(namespace, key, options) {
|
|
268532
|
+
if ((options === null || options === void 0 ? void 0 : options.returnDetails) || (options === null || options === void 0 ? void 0 : options.returnObjects)) {
|
|
268533
|
+
throw new Error("Translation key must map to a string, but the given options will result in an object");
|
|
268534
|
+
}
|
|
268535
|
+
const en = this.i18next.getFixedT("en", namespace);
|
|
268536
|
+
const str = en(key, options);
|
|
268537
|
+
if (typeof str !== "string")
|
|
268538
|
+
throw new Error("Translation key(s) not found");
|
|
268539
|
+
return str;
|
|
268540
|
+
}
|
|
268541
|
+
/** Get the promise for an already registered Namespace.
|
|
268542
|
+
* @param name - the name of the namespace
|
|
268543
|
+
* @public
|
|
268544
|
+
*/
|
|
268545
|
+
getNamespacePromise(name) {
|
|
268546
|
+
return this._namespaces.get(name);
|
|
268547
|
+
}
|
|
268548
|
+
/** @internal */
|
|
268549
|
+
getLanguageList() {
|
|
268550
|
+
return this.i18next.languages;
|
|
268551
|
+
}
|
|
268552
|
+
/** override the language detected in the browser */
|
|
268553
|
+
async changeLanguage(language) {
|
|
268554
|
+
return this.i18next.changeLanguage(language);
|
|
268555
|
+
}
|
|
268556
|
+
/** Register a new Namespace and return it. If the namespace is already registered, it will be returned.
|
|
268557
|
+
* @param name - the name of the namespace, which is the base name of the JSON file that contains the localization properties.
|
|
268558
|
+
* @note - The registerNamespace method starts fetching the appropriate version of the JSON localization file from the server,
|
|
268559
|
+
* based on the current locale. To make sure that fetch is complete before performing translations from this namespace, await
|
|
268560
|
+
* fulfillment of the readPromise Promise property of the returned LocalizationNamespace.
|
|
268561
|
+
* @see [Localization in iTwin.js]($docs/learning/frontend/Localization.md)
|
|
268562
|
+
* @public
|
|
268563
|
+
*/
|
|
268564
|
+
async registerNamespace(name) {
|
|
268565
|
+
const existing = this._namespaces.get(name);
|
|
268566
|
+
if (existing !== undefined)
|
|
268567
|
+
return existing;
|
|
268568
|
+
const theReadPromise = new Promise((resolve) => {
|
|
268569
|
+
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
268570
|
+
this.i18next.loadNamespaces(name, (err) => {
|
|
268571
|
+
if (!err)
|
|
268572
|
+
return resolve();
|
|
268573
|
+
// Here we got a non-null err object.
|
|
268574
|
+
// This method is called when the system has attempted to load the resources for the namespaces for each possible locale.
|
|
268575
|
+
// For example 'fr-ca' might be the most specific locale, in which case 'fr' and 'en' are fallback locales.
|
|
268576
|
+
// Using Backend from i18next-http-backend, err will be an array of strings of each namespace it tried to read and its locale.
|
|
268577
|
+
// There might be errs for some other namespaces as well as this one. We resolve the promise unless there's an error for each possible locale.
|
|
268578
|
+
let locales = this.getLanguageList().map((thisLocale) => `/${thisLocale}/`);
|
|
268579
|
+
try {
|
|
268580
|
+
for (const thisError of err) {
|
|
268581
|
+
if (typeof thisError === "string")
|
|
268582
|
+
locales = locales.filter((thisLocale) => !thisError.includes(thisLocale));
|
|
268583
|
+
}
|
|
268584
|
+
}
|
|
268585
|
+
catch (e) {
|
|
268586
|
+
locales = [];
|
|
268587
|
+
}
|
|
268588
|
+
// if we removed every locale from the array, it wasn't loaded.
|
|
268589
|
+
if (locales.length === 0)
|
|
268590
|
+
_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_3__.Logger.logError("i18n", `No resources for namespace ${name} could be loaded`);
|
|
268591
|
+
resolve();
|
|
268592
|
+
});
|
|
268593
|
+
});
|
|
268594
|
+
this._namespaces.set(name, theReadPromise);
|
|
268595
|
+
return theReadPromise;
|
|
268596
|
+
}
|
|
268597
|
+
/** @internal */
|
|
268598
|
+
unregisterNamespace(name) {
|
|
268599
|
+
this._namespaces.delete(name);
|
|
268600
|
+
}
|
|
268601
|
+
}
|
|
268602
|
+
class TranslationLogger {
|
|
268603
|
+
log(args) { _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_3__.Logger.logInfo("i18n", this.createLogMessage(args)); }
|
|
268604
|
+
warn(args) { _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_3__.Logger.logWarning("i18n", this.createLogMessage(args)); }
|
|
268605
|
+
error(args) { _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_3__.Logger.logError("i18n", this.createLogMessage(args)); }
|
|
268606
|
+
createLogMessage(args) {
|
|
268607
|
+
let message = args[0];
|
|
268608
|
+
for (let i = 1; i < args.length; ++i) {
|
|
268609
|
+
if (typeof args[i] === "string")
|
|
268610
|
+
message += `\n ${args[i]}`;
|
|
268611
|
+
}
|
|
268612
|
+
return message;
|
|
268613
|
+
}
|
|
268614
|
+
}
|
|
268615
|
+
TranslationLogger.type = "logger";
|
|
268616
268616
|
|
|
268617
268617
|
|
|
268618
268618
|
/***/ }),
|
|
@@ -268629,17 +268629,17 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
268629
268629
|
/* harmony export */ "ITwinLocalization": () => (/* reexport safe */ _ITwinLocalization__WEBPACK_IMPORTED_MODULE_0__.ITwinLocalization)
|
|
268630
268630
|
/* harmony export */ });
|
|
268631
268631
|
/* harmony import */ var _ITwinLocalization__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ITwinLocalization */ "../../core/i18n/lib/esm/ITwinLocalization.js");
|
|
268632
|
-
/*---------------------------------------------------------------------------------------------
|
|
268633
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
268634
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
268635
|
-
*--------------------------------------------------------------------------------------------*/
|
|
268636
|
-
|
|
268637
|
-
/** @docs-package-description
|
|
268638
|
-
* The core-i18n package contains classes related to internationalization and localization.
|
|
268639
|
-
*/
|
|
268640
|
-
/** @docs-group-description Localization
|
|
268641
|
-
* Classes for internationalization and localization of your app.
|
|
268642
|
-
*/
|
|
268632
|
+
/*---------------------------------------------------------------------------------------------
|
|
268633
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
268634
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
268635
|
+
*--------------------------------------------------------------------------------------------*/
|
|
268636
|
+
|
|
268637
|
+
/** @docs-package-description
|
|
268638
|
+
* The core-i18n package contains classes related to internationalization and localization.
|
|
268639
|
+
*/
|
|
268640
|
+
/** @docs-group-description Localization
|
|
268641
|
+
* Classes for internationalization and localization of your app.
|
|
268642
|
+
*/
|
|
268643
268643
|
|
|
268644
268644
|
|
|
268645
268645
|
/***/ }),
|
|
@@ -287878,83 +287878,83 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
287878
287878
|
/* harmony export */ });
|
|
287879
287879
|
/* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
|
|
287880
287880
|
/* harmony import */ var _TelemetryClientLoggerCategory__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TelemetryClientLoggerCategory */ "../../core/telemetry/lib/esm/TelemetryClientLoggerCategory.js");
|
|
287881
|
-
/*---------------------------------------------------------------------------------------------
|
|
287882
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
287883
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
287884
|
-
*--------------------------------------------------------------------------------------------*/
|
|
287885
|
-
/** @packageDocumentation
|
|
287886
|
-
* @module Telemetry
|
|
287887
|
-
*/
|
|
287888
|
-
|
|
287889
|
-
|
|
287890
|
-
/**
|
|
287891
|
-
* @alpha
|
|
287892
|
-
* Represents a particular occurrence of an event that can be tracked through various telemetry services
|
|
287893
|
-
*/
|
|
287894
|
-
class TelemetryEvent {
|
|
287895
|
-
constructor(
|
|
287896
|
-
/** Human-readable name for the event being tracked */
|
|
287897
|
-
eventName,
|
|
287898
|
-
/**
|
|
287899
|
-
* Optional Guid that can be used to more accurately identify the telemetry event.
|
|
287900
|
-
* This field is required when posting a telemetry event as feature usage to ULAS.
|
|
287901
|
-
*/
|
|
287902
|
-
eventId,
|
|
287903
|
-
/** iModel parent iTwin id */
|
|
287904
|
-
iTwinId, iModelId, changeSetId, time,
|
|
287905
|
-
/** Custom properties */
|
|
287906
|
-
additionalProperties = {}) {
|
|
287907
|
-
this.eventName = eventName;
|
|
287908
|
-
this.eventId = eventId;
|
|
287909
|
-
this.iTwinId = iTwinId;
|
|
287910
|
-
this.iModelId = iModelId;
|
|
287911
|
-
this.changeSetId = changeSetId;
|
|
287912
|
-
this.time = time;
|
|
287913
|
-
this.additionalProperties = additionalProperties;
|
|
287914
|
-
}
|
|
287915
|
-
/**
|
|
287916
|
-
* Returns all properties as a new object
|
|
287917
|
-
*/
|
|
287918
|
-
getProperties() {
|
|
287919
|
-
const properties = {
|
|
287920
|
-
eventName: this.eventName,
|
|
287921
|
-
eventId: this.eventId,
|
|
287922
|
-
iTwinId: this.iTwinId,
|
|
287923
|
-
iModelId: this.iModelId,
|
|
287924
|
-
changeSetId: this.changeSetId,
|
|
287925
|
-
time: this.time,
|
|
287926
|
-
additionalProperties: this.additionalProperties,
|
|
287927
|
-
};
|
|
287928
|
-
return properties;
|
|
287929
|
-
}
|
|
287930
|
-
}
|
|
287931
|
-
/** @alpha */
|
|
287932
|
-
class TelemetryManager {
|
|
287933
|
-
constructor(...clients) {
|
|
287934
|
-
this._clients = new Set(clients);
|
|
287935
|
-
}
|
|
287936
|
-
async postTelemetry(requestContext, telemetryEvent) {
|
|
287937
|
-
const postPerClient = async (subClient) => {
|
|
287938
|
-
try {
|
|
287939
|
-
await subClient.postTelemetry(requestContext, telemetryEvent);
|
|
287940
|
-
}
|
|
287941
|
-
catch (err) {
|
|
287942
|
-
_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Logger.logError(_TelemetryClientLoggerCategory__WEBPACK_IMPORTED_MODULE_1__.TelemetryClientLoggerCategory.Telemetry, `Failed to post telemetry via subclient`, () => _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BentleyError.getErrorProps(err));
|
|
287943
|
-
}
|
|
287944
|
-
};
|
|
287945
|
-
const subClientPromises = [];
|
|
287946
|
-
for (const subClient of this._clients) {
|
|
287947
|
-
subClientPromises.push(postPerClient(subClient));
|
|
287948
|
-
}
|
|
287949
|
-
await Promise.all(subClientPromises);
|
|
287950
|
-
}
|
|
287951
|
-
addClient(client) {
|
|
287952
|
-
this._clients.add(client);
|
|
287953
|
-
}
|
|
287954
|
-
hasClient(client) {
|
|
287955
|
-
return this._clients.has(client);
|
|
287956
|
-
}
|
|
287957
|
-
}
|
|
287881
|
+
/*---------------------------------------------------------------------------------------------
|
|
287882
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
287883
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
287884
|
+
*--------------------------------------------------------------------------------------------*/
|
|
287885
|
+
/** @packageDocumentation
|
|
287886
|
+
* @module Telemetry
|
|
287887
|
+
*/
|
|
287888
|
+
|
|
287889
|
+
|
|
287890
|
+
/**
|
|
287891
|
+
* @alpha
|
|
287892
|
+
* Represents a particular occurrence of an event that can be tracked through various telemetry services
|
|
287893
|
+
*/
|
|
287894
|
+
class TelemetryEvent {
|
|
287895
|
+
constructor(
|
|
287896
|
+
/** Human-readable name for the event being tracked */
|
|
287897
|
+
eventName,
|
|
287898
|
+
/**
|
|
287899
|
+
* Optional Guid that can be used to more accurately identify the telemetry event.
|
|
287900
|
+
* This field is required when posting a telemetry event as feature usage to ULAS.
|
|
287901
|
+
*/
|
|
287902
|
+
eventId,
|
|
287903
|
+
/** iModel parent iTwin id */
|
|
287904
|
+
iTwinId, iModelId, changeSetId, time,
|
|
287905
|
+
/** Custom properties */
|
|
287906
|
+
additionalProperties = {}) {
|
|
287907
|
+
this.eventName = eventName;
|
|
287908
|
+
this.eventId = eventId;
|
|
287909
|
+
this.iTwinId = iTwinId;
|
|
287910
|
+
this.iModelId = iModelId;
|
|
287911
|
+
this.changeSetId = changeSetId;
|
|
287912
|
+
this.time = time;
|
|
287913
|
+
this.additionalProperties = additionalProperties;
|
|
287914
|
+
}
|
|
287915
|
+
/**
|
|
287916
|
+
* Returns all properties as a new object
|
|
287917
|
+
*/
|
|
287918
|
+
getProperties() {
|
|
287919
|
+
const properties = {
|
|
287920
|
+
eventName: this.eventName,
|
|
287921
|
+
eventId: this.eventId,
|
|
287922
|
+
iTwinId: this.iTwinId,
|
|
287923
|
+
iModelId: this.iModelId,
|
|
287924
|
+
changeSetId: this.changeSetId,
|
|
287925
|
+
time: this.time,
|
|
287926
|
+
additionalProperties: this.additionalProperties,
|
|
287927
|
+
};
|
|
287928
|
+
return properties;
|
|
287929
|
+
}
|
|
287930
|
+
}
|
|
287931
|
+
/** @alpha */
|
|
287932
|
+
class TelemetryManager {
|
|
287933
|
+
constructor(...clients) {
|
|
287934
|
+
this._clients = new Set(clients);
|
|
287935
|
+
}
|
|
287936
|
+
async postTelemetry(requestContext, telemetryEvent) {
|
|
287937
|
+
const postPerClient = async (subClient) => {
|
|
287938
|
+
try {
|
|
287939
|
+
await subClient.postTelemetry(requestContext, telemetryEvent);
|
|
287940
|
+
}
|
|
287941
|
+
catch (err) {
|
|
287942
|
+
_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Logger.logError(_TelemetryClientLoggerCategory__WEBPACK_IMPORTED_MODULE_1__.TelemetryClientLoggerCategory.Telemetry, `Failed to post telemetry via subclient`, () => _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BentleyError.getErrorProps(err));
|
|
287943
|
+
}
|
|
287944
|
+
};
|
|
287945
|
+
const subClientPromises = [];
|
|
287946
|
+
for (const subClient of this._clients) {
|
|
287947
|
+
subClientPromises.push(postPerClient(subClient));
|
|
287948
|
+
}
|
|
287949
|
+
await Promise.all(subClientPromises);
|
|
287950
|
+
}
|
|
287951
|
+
addClient(client) {
|
|
287952
|
+
this._clients.add(client);
|
|
287953
|
+
}
|
|
287954
|
+
hasClient(client) {
|
|
287955
|
+
return this._clients.has(client);
|
|
287956
|
+
}
|
|
287957
|
+
}
|
|
287958
287958
|
|
|
287959
287959
|
|
|
287960
287960
|
/***/ }),
|
|
@@ -287970,23 +287970,23 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
287970
287970
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
287971
287971
|
/* harmony export */ "TelemetryClientLoggerCategory": () => (/* binding */ TelemetryClientLoggerCategory)
|
|
287972
287972
|
/* harmony export */ });
|
|
287973
|
-
/*---------------------------------------------------------------------------------------------
|
|
287974
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
287975
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
287976
|
-
*--------------------------------------------------------------------------------------------*/
|
|
287977
|
-
/** @packageDocumentation
|
|
287978
|
-
* @module Logging
|
|
287979
|
-
*/
|
|
287980
|
-
/** Logger categories used by this package
|
|
287981
|
-
* @note All logger categories in this package start with the `telemetry-client` prefix.
|
|
287982
|
-
* @see [Logger]($bentley)
|
|
287983
|
-
* @alpha
|
|
287984
|
-
*/
|
|
287985
|
-
var TelemetryClientLoggerCategory;
|
|
287986
|
-
(function (TelemetryClientLoggerCategory) {
|
|
287987
|
-
/** The logger category used for Telemetry */
|
|
287988
|
-
TelemetryClientLoggerCategory["Telemetry"] = "telemetry-client.Telemetry";
|
|
287989
|
-
})(TelemetryClientLoggerCategory || (TelemetryClientLoggerCategory = {}));
|
|
287973
|
+
/*---------------------------------------------------------------------------------------------
|
|
287974
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
287975
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
287976
|
+
*--------------------------------------------------------------------------------------------*/
|
|
287977
|
+
/** @packageDocumentation
|
|
287978
|
+
* @module Logging
|
|
287979
|
+
*/
|
|
287980
|
+
/** Logger categories used by this package
|
|
287981
|
+
* @note All logger categories in this package start with the `telemetry-client` prefix.
|
|
287982
|
+
* @see [Logger]($bentley)
|
|
287983
|
+
* @alpha
|
|
287984
|
+
*/
|
|
287985
|
+
var TelemetryClientLoggerCategory;
|
|
287986
|
+
(function (TelemetryClientLoggerCategory) {
|
|
287987
|
+
/** The logger category used for Telemetry */
|
|
287988
|
+
TelemetryClientLoggerCategory["Telemetry"] = "telemetry-client.Telemetry";
|
|
287989
|
+
})(TelemetryClientLoggerCategory || (TelemetryClientLoggerCategory = {}));
|
|
287990
287990
|
|
|
287991
287991
|
|
|
287992
287992
|
/***/ }),
|
|
@@ -288006,12 +288006,12 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
288006
288006
|
/* harmony export */ });
|
|
288007
288007
|
/* harmony import */ var _TelemetryClient__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TelemetryClient */ "../../core/telemetry/lib/esm/TelemetryClient.js");
|
|
288008
288008
|
/* harmony import */ var _TelemetryClientLoggerCategory__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TelemetryClientLoggerCategory */ "../../core/telemetry/lib/esm/TelemetryClientLoggerCategory.js");
|
|
288009
|
-
/*---------------------------------------------------------------------------------------------
|
|
288010
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
288011
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
288012
|
-
*--------------------------------------------------------------------------------------------*/
|
|
288013
|
-
|
|
288014
|
-
|
|
288009
|
+
/*---------------------------------------------------------------------------------------------
|
|
288010
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
288011
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
288012
|
+
*--------------------------------------------------------------------------------------------*/
|
|
288013
|
+
|
|
288014
|
+
|
|
288015
288015
|
|
|
288016
288016
|
|
|
288017
288017
|
/***/ }),
|
|
@@ -289804,7 +289804,7 @@ class TestContext {
|
|
|
289804
289804
|
this.initializeRpcInterfaces({ title: this.settings.Backend.name, version: this.settings.Backend.version });
|
|
289805
289805
|
const iModelClient = new imodels_client_management_1.IModelsClient({ api: { baseUrl: `https://${(_a = process.env.IMJS_URL_PREFIX) !== null && _a !== void 0 ? _a : ""}api.bentley.com/imodels` } });
|
|
289806
289806
|
await core_frontend_1.NoRenderApp.startup({
|
|
289807
|
-
applicationVersion: "3.4.0-dev.
|
|
289807
|
+
applicationVersion: "3.4.0-dev.62",
|
|
289808
289808
|
applicationId: this.settings.gprid,
|
|
289809
289809
|
authorizationClient: new frontend_1.TestFrontendAuthorizationClient(this.adminUserAccessToken),
|
|
289810
289810
|
hubAccess: new imodels_access_frontend_1.FrontendIModelsAccess(iModelClient),
|
|
@@ -308887,7 +308887,7 @@ module.exports = JSON.parse('{"name":"axios","version":"0.21.4","description":"P
|
|
|
308887
308887
|
/***/ ((module) => {
|
|
308888
308888
|
|
|
308889
308889
|
"use strict";
|
|
308890
|
-
module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"3.4.0-dev.
|
|
308890
|
+
module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"3.4.0-dev.62","description":"iTwin.js frontend components","main":"lib/cjs/core-frontend.js","module":"lib/esm/core-frontend.js","typings":"lib/cjs/core-frontend","license":"MIT","scripts":{"build":"npm run -s copy:public && npm run -s build:cjs","build:ci":"npm run -s build && npm run -s build:esm","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2020 --outDir lib/esm","clean":"rimraf lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","docs":"betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/primitives,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts","extract-api":"betools extract-api --entry=core-frontend && npm run extract-extension-api","extract-extension-api":"eslint --no-eslintrc -c \\"../../tools/eslint-plugin/dist/configs/extension-exports-config.js\\" \\"./src/**/*.ts\\" 1>&2","lint":"eslint -f visualstudio \\"./src/**/*.ts\\" 1>&2","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run -s webpackTests && certa -r chrome","cover":"npm -s test","test:debug":"certa -r chrome --debug","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core/tree/master/core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:^3.4.0-dev.62","@itwin/core-bentley":"workspace:^3.4.0-dev.62","@itwin/core-common":"workspace:^3.4.0-dev.62","@itwin/core-geometry":"workspace:^3.4.0-dev.62","@itwin/core-orbitgt":"workspace:^3.4.0-dev.62","@itwin/core-quantity":"workspace:^3.4.0-dev.62","@itwin/webgl-compatibility":"workspace:^3.4.0-dev.62"},"//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":{"@itwin/appui-abstract":"workspace:*","@itwin/build-tools":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/certa":"workspace:*","@itwin/eslint-plugin":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@types/chai":"4.3.1","@types/chai-as-promised":"^7","@types/deep-assign":"^0.1.0","@types/lodash":"^4.14.0","@types/mocha":"^8.2.2","@types/node":"16.11.59","@types/qs":"^6.5.0","@types/semver":"7.3.10","@types/superagent":"^4.1.14","@types/sinon":"^9.0.0","chai":"^4.1.2","chai-as-promised":"^7","cpx2":"^3.0.0","eslint":"^7.11.0","glob":"^7.1.2","mocha":"^10.0.0","nyc":"^15.1.0","rimraf":"^3.0.2","sinon":"^9.0.2","source-map-loader":"^4.0.0","typescript":"~4.4.0","webpack":"^5.64.4"},"//dependencies":["NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API","NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed"],"dependencies":{"@itwin/object-storage-azure":"~1.4.0","@itwin/cloud-agnostic-core":"~1.4.0","@itwin/object-storage-core":"~1.4.0","@itwin/core-i18n":"workspace:*","@itwin/core-telemetry":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","deep-assign":"^2.0.0","fuse.js":"^3.3.0","lodash":"^4.17.10","qs":"^6.5.1","semver":"^7.3.5","superagent":"7.1.3","wms-capabilities":"0.4.0","xml-js":"~1.6.11","reflect-metadata":"0.1.13"},"nyc":{"extends":"./node_modules/@itwin/build-tools/.nycrc"},"eslintConfig":{"plugins":["@itwin"],"extends":"plugin:@itwin/itwinjs-recommended","rules":{"@itwin/no-internal-barrel-imports":["error",{"required-barrel-modules":["./src/tile/internal.ts"]}],"@itwin/public-extension-exports":["error",{"releaseTags":["public","preview"],"outputApiFile":false}]},"overrides":[{"files":["*.test.ts","*.test.tsx","**/test/**/*.ts"],"rules":{"@itwin/no-internal-barrel-imports":"off"}}]}}');
|
|
308891
308891
|
|
|
308892
308892
|
/***/ }),
|
|
308893
308893
|
|