@itwin/core-frontend 5.9.0-dev.9 → 5.9.1
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/CHANGELOG.md +37 -1
- package/lib/cjs/BriefcaseConnection.d.ts +2 -2
- package/lib/cjs/BriefcaseConnection.js +2 -2
- package/lib/cjs/BriefcaseConnection.js.map +1 -1
- package/lib/cjs/PerModelCategoryVisibility.d.ts.map +1 -1
- package/lib/cjs/PerModelCategoryVisibility.js +83 -81
- package/lib/cjs/PerModelCategoryVisibility.js.map +1 -1
- package/lib/cjs/SpatialViewState.d.ts.map +1 -1
- package/lib/cjs/SpatialViewState.js +3 -1
- package/lib/cjs/SpatialViewState.js.map +1 -1
- package/lib/cjs/ViewState.d.ts +32 -0
- package/lib/cjs/ViewState.d.ts.map +1 -1
- package/lib/cjs/ViewState.js +41 -4
- package/lib/cjs/ViewState.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FrustumUniforms.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RenderCommands.js.map +1 -1
- package/lib/cjs/quantity-formatting/AlternateUnitLabels.d.ts +8 -0
- package/lib/cjs/quantity-formatting/AlternateUnitLabels.d.ts.map +1 -0
- package/lib/cjs/quantity-formatting/AlternateUnitLabels.js +26 -0
- package/lib/cjs/quantity-formatting/AlternateUnitLabels.js.map +1 -0
- package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts +119 -22
- package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.js +271 -65
- package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/cjs/tile/GltfReader.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/cjs/tools/PrimitiveTool.d.ts +1 -1
- package/lib/cjs/tools/PrimitiveTool.js +1 -1
- package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
- package/lib/cjs/tools/ToolAdmin.d.ts +16 -1
- package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
- package/lib/cjs/tools/ToolAdmin.js +52 -5
- package/lib/cjs/tools/ToolAdmin.js.map +1 -1
- package/lib/cjs/tools/ToolSettings.d.ts +4 -0
- package/lib/cjs/tools/ToolSettings.d.ts.map +1 -1
- package/lib/cjs/tools/ToolSettings.js +4 -0
- package/lib/cjs/tools/ToolSettings.js.map +1 -1
- package/lib/esm/BriefcaseConnection.d.ts +2 -2
- package/lib/esm/BriefcaseConnection.js +2 -2
- package/lib/esm/BriefcaseConnection.js.map +1 -1
- package/lib/esm/PerModelCategoryVisibility.d.ts.map +1 -1
- package/lib/esm/PerModelCategoryVisibility.js +84 -82
- package/lib/esm/PerModelCategoryVisibility.js.map +1 -1
- package/lib/esm/SpatialViewState.d.ts.map +1 -1
- package/lib/esm/SpatialViewState.js +3 -1
- package/lib/esm/SpatialViewState.js.map +1 -1
- package/lib/esm/ViewState.d.ts +32 -0
- package/lib/esm/ViewState.d.ts.map +1 -1
- package/lib/esm/ViewState.js +42 -5
- package/lib/esm/ViewState.js.map +1 -1
- package/lib/esm/internal/render/webgl/FrustumUniforms.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/RenderCommands.js.map +1 -1
- package/lib/esm/quantity-formatting/AlternateUnitLabels.d.ts +8 -0
- package/lib/esm/quantity-formatting/AlternateUnitLabels.d.ts.map +1 -0
- package/lib/esm/quantity-formatting/AlternateUnitLabels.js +23 -0
- package/lib/esm/quantity-formatting/AlternateUnitLabels.js.map +1 -0
- package/lib/esm/quantity-formatting/QuantityFormatter.d.ts +119 -22
- package/lib/esm/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.js +269 -63
- package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/esm/tile/GltfReader.js.map +1 -1
- package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/esm/tools/PrimitiveTool.d.ts +1 -1
- package/lib/esm/tools/PrimitiveTool.js +1 -1
- package/lib/esm/tools/PrimitiveTool.js.map +1 -1
- package/lib/esm/tools/ToolAdmin.d.ts +16 -1
- package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
- package/lib/esm/tools/ToolAdmin.js +52 -5
- package/lib/esm/tools/ToolAdmin.js.map +1 -1
- package/lib/esm/tools/ToolSettings.d.ts +4 -0
- package/lib/esm/tools/ToolSettings.d.ts.map +1 -1
- package/lib/esm/tools/ToolSettings.js +4 -0
- package/lib/esm/tools/ToolSettings.js.map +1 -1
- package/lib/public/scripts/parse-imdl-worker.js +1 -1
- package/lib/workers/webpack/parse-imdl-worker.js +1 -1
- package/package.json +20 -20
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts +0 -38
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts.map +0 -1
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.js +0 -160
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +0 -1
- package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts +0 -38
- package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts.map +0 -1
- package/lib/esm/quantity-formatting/BasicUnitsProvider.js +0 -155
- package/lib/esm/quantity-formatting/BasicUnitsProvider.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/** @packageDocumentation
|
|
2
2
|
* @module QuantityFormatting
|
|
3
3
|
*/
|
|
4
|
-
import { BeEvent, BeUiEvent } from "@itwin/core-bentley";
|
|
5
|
-
import { AlternateUnitLabelsProvider, FormatDefinition, FormatProps, FormatsChangedArgs, FormatsProvider, FormatterSpec, ParserSpec, QuantityParseResult, UnitConversionProps, UnitProps, UnitsProvider, UnitSystemKey } from "@itwin/core-quantity";
|
|
4
|
+
import { BeEvent, BeUiEvent, BeUnorderedUiEvent } from "@itwin/core-bentley";
|
|
5
|
+
import { AddFormattingSpecArgs, AlternateUnitLabelsProvider, FormatDefinition, FormatProps, FormatsChangedArgs, FormatSpecHandle, FormatsProvider, FormatterSpec, FormattingReadyCollector, FormattingSpecArgs, FormattingSpecEntry, FormattingSpecProvider, ParserSpec, QuantityParseResult, UnitConversionProps, UnitProps, UnitsProvider, UnitSystemKey } from "@itwin/core-quantity";
|
|
6
6
|
import { IModelConnection } from "../IModelConnection";
|
|
7
7
|
import { CustomFormatPropEditorSpec } from "./QuantityTypesEditorSpecs";
|
|
8
8
|
/**
|
|
@@ -128,14 +128,6 @@ export interface OverrideFormatEntry {
|
|
|
128
128
|
/** Override format for "usSurvey" unit system */
|
|
129
129
|
usSurvey?: FormatProps;
|
|
130
130
|
}
|
|
131
|
-
/**
|
|
132
|
-
* Entries returned when looking up specs from the [[QuantityFormatter._formatSpecsRegistry]]
|
|
133
|
-
* @beta
|
|
134
|
-
*/
|
|
135
|
-
export interface FormattingSpecEntry {
|
|
136
|
-
formatterSpec: FormatterSpec;
|
|
137
|
-
parserSpec: ParserSpec;
|
|
138
|
-
}
|
|
139
131
|
/** Interface that defines the functions required to be implemented to provide custom formatting and parsing of a custom quantity type.
|
|
140
132
|
* @public
|
|
141
133
|
*/
|
|
@@ -213,7 +205,7 @@ export declare class QuantityTypeFormatsProvider implements FormatsProvider {
|
|
|
213
205
|
constructor();
|
|
214
206
|
[Symbol.dispose](): void;
|
|
215
207
|
private _kindOfQuantityMap;
|
|
216
|
-
getFormat(name: string): Promise<FormatDefinition | undefined>;
|
|
208
|
+
getFormat(name: string, _system?: UnitSystemKey): Promise<FormatDefinition | undefined>;
|
|
217
209
|
}
|
|
218
210
|
/**
|
|
219
211
|
* An implementation of the [[FormatsProvider]] interface that forwards calls to getFormats to the underlying FormatsProvider.
|
|
@@ -223,8 +215,9 @@ export declare class QuantityTypeFormatsProvider implements FormatsProvider {
|
|
|
223
215
|
export declare class FormatsProviderManager implements FormatsProvider {
|
|
224
216
|
private _formatsProvider;
|
|
225
217
|
onFormatsChanged: BeEvent<(args: FormatsChangedArgs) => void>;
|
|
218
|
+
private _removeProviderListener?;
|
|
226
219
|
constructor(_formatsProvider: FormatsProvider);
|
|
227
|
-
getFormat(name: string): Promise<FormatDefinition | undefined>;
|
|
220
|
+
getFormat(name: string, system?: UnitSystemKey): Promise<FormatDefinition | undefined>;
|
|
228
221
|
get formatsProvider(): FormatsProvider;
|
|
229
222
|
set formatsProvider(formatsProvider: FormatsProvider);
|
|
230
223
|
}
|
|
@@ -239,7 +232,26 @@ export declare class FormatsProviderManager implements FormatsProvider {
|
|
|
239
232
|
*
|
|
240
233
|
* @public
|
|
241
234
|
*/
|
|
242
|
-
|
|
235
|
+
/** Discriminated union describing what a queued reload should do.
|
|
236
|
+
* @internal
|
|
237
|
+
*/
|
|
238
|
+
type ReloadIntent = {
|
|
239
|
+
scope: "full";
|
|
240
|
+
} | {
|
|
241
|
+
scope: "formatsChanged";
|
|
242
|
+
args: FormatsChangedArgs;
|
|
243
|
+
} | {
|
|
244
|
+
scope: "activeSystem";
|
|
245
|
+
emitSystemChanged?: boolean;
|
|
246
|
+
};
|
|
247
|
+
/** The QuantityFormatter class provides methods for formatting and parsing quantities. There are a set of standard quantity types
|
|
248
|
+
* identified by the [[QuantityType]] enum. [[CustomQuantityTypeDefinition]] can be registered to extend the available quantity types available
|
|
249
|
+
* by frontend tools. The QuantityFormatter also allows the default formats to be overriden.
|
|
250
|
+
*
|
|
251
|
+
* @public
|
|
252
|
+
*/
|
|
253
|
+
export declare class QuantityFormatter implements UnitsProvider, FormattingSpecProvider {
|
|
254
|
+
private static readonly _allUnitSystems;
|
|
243
255
|
private _unitsProvider;
|
|
244
256
|
private _alternateUnitLabelsRegistry;
|
|
245
257
|
/** Registry containing available quantity type definitions. */
|
|
@@ -247,12 +259,12 @@ export declare class QuantityFormatter implements UnitsProvider {
|
|
|
247
259
|
/** Registry containing available FormatterSpec and ParserSpec, mapped by keys.
|
|
248
260
|
* @beta
|
|
249
261
|
*/
|
|
250
|
-
protected _formatSpecsRegistry: Map<string, FormattingSpecEntry
|
|
262
|
+
protected _formatSpecsRegistry: Map<string, Map<string, Map<UnitSystemKey, FormattingSpecEntry>>>;
|
|
251
263
|
/** Active UnitSystem key - must be one of "imperial", "metric", "usCustomary", or "usSurvey". */
|
|
252
264
|
protected _activeUnitSystem: UnitSystemKey;
|
|
253
|
-
/** Map of FormatSpecs for all available QuantityTypes
|
|
265
|
+
/** Map of FormatSpecs for all available QuantityTypes, keyed by quantity type */
|
|
254
266
|
protected _activeFormatSpecsByType: Map<string, FormatterSpec>;
|
|
255
|
-
/** Map of ParserSpecs for all available QuantityTypes
|
|
267
|
+
/** Map of ParserSpecs for all available QuantityTypes, keyed by quantity type */
|
|
256
268
|
protected _activeParserSpecsByType: Map<string, ParserSpec>;
|
|
257
269
|
/** Map of FormatSpecs that have been overriden from the default. */
|
|
258
270
|
protected _overrideFormatPropsByUnitSystem: Map<UnitSystemKey, Map<string, FormatProps>>;
|
|
@@ -270,6 +282,45 @@ export declare class QuantityFormatter implements UnitsProvider {
|
|
|
270
282
|
readonly onQuantityFormatsChanged: BeUiEvent<QuantityFormatsChangedArgs>;
|
|
271
283
|
/** Fired when the active UnitsProvider is updated. This will allow cached Formatter and Parser specs to be updated if necessary. */
|
|
272
284
|
readonly onUnitsProviderChanged: BeUiEvent<void>;
|
|
285
|
+
/** Fired after every reload path completes (initialization, unit system change, provider change, reinitialize).
|
|
286
|
+
* This is the terminal "ready" signal — it fires once the QuantityFormatter has fully rebuilt its caches and is
|
|
287
|
+
* ready to format/parse values. Subscribe to this event to know when formatting specs are available.
|
|
288
|
+
*
|
|
289
|
+
* Uses `BeUnorderedUiEvent` (Set-backed) so listeners can safely add/remove themselves during emit —
|
|
290
|
+
* this is critical for `FormatSpecHandle` instances that subscribe/dispose at volume.
|
|
291
|
+
* @beta
|
|
292
|
+
*/
|
|
293
|
+
readonly onFormattingReady: BeUnorderedUiEvent<void>;
|
|
294
|
+
/** Event for formatting providers to register async work before the formatter signals ready.
|
|
295
|
+
* Fires synchronously after each reload completes. Providers should call
|
|
296
|
+
* `collector.addPendingWork(promise)` to register work. The formatter awaits all
|
|
297
|
+
* registered work (with a 20-second default timeout) before emitting [[onFormattingReady]].
|
|
298
|
+
*
|
|
299
|
+
* Use this for **providers** that need async loading. Use [[onFormattingReady]] for
|
|
300
|
+
* **consumers** that read specs.
|
|
301
|
+
* @beta
|
|
302
|
+
*/
|
|
303
|
+
readonly onBeforeFormattingReady: BeEvent<(collector: FormattingReadyCollector) => void>;
|
|
304
|
+
/** Whether the QuantityFormatter has completed at least one successful reload and is ready to format/parse.
|
|
305
|
+
* @beta
|
|
306
|
+
*/
|
|
307
|
+
get isReady(): boolean;
|
|
308
|
+
/** A promise that resolves after the first successful initialization. This is one-shot — it resolves once
|
|
309
|
+
* and stays resolved forever. For subsequent reloads, subscribe to [[onFormattingReady]].
|
|
310
|
+
*
|
|
311
|
+
* This promise never rejects. If the first initialization attempt fails, it stays pending until a
|
|
312
|
+
* subsequent reload succeeds (e.g., triggered by `setUnitsProvider` or a format change). There is no
|
|
313
|
+
* finite retry limit, so rejection would prematurely close the door on recovery.
|
|
314
|
+
* @beta
|
|
315
|
+
*/
|
|
316
|
+
get whenInitialized(): Promise<void>;
|
|
317
|
+
private _isReady;
|
|
318
|
+
private _hasEverBeenReady;
|
|
319
|
+
private _initializedPromise;
|
|
320
|
+
private _resolveInitialized;
|
|
321
|
+
private _reloadInFlight;
|
|
322
|
+
private _pendingReload;
|
|
323
|
+
private _deferredSystemChangedEmit;
|
|
273
324
|
private _removeFormatsProviderListener?;
|
|
274
325
|
/**
|
|
275
326
|
* constructor
|
|
@@ -278,6 +329,30 @@ export declare class QuantityFormatter implements UnitsProvider {
|
|
|
278
329
|
*/
|
|
279
330
|
constructor(showMetricOrUnitSystem?: boolean | UnitSystemKey);
|
|
280
331
|
[Symbol.dispose](): void;
|
|
332
|
+
/** Schedule an async reload. If no reload is in flight, runs immediately. If a reload is
|
|
333
|
+
* already in flight, stores the intent as pending (latest-wins: only the last scheduled reload
|
|
334
|
+
* is kept). `finalizeReload()` fires only when the queue is fully drained.
|
|
335
|
+
*
|
|
336
|
+
* **Await semantics:** When a reload is already in flight, the returned promise resolves
|
|
337
|
+
* immediately *without* the requested reload having run. Callers that need to know when
|
|
338
|
+
* the reload has actually completed should listen for `onFormattingReady` instead.
|
|
339
|
+
*
|
|
340
|
+
* Reload intents:
|
|
341
|
+
* - `"full"` — rebuild entire registry + re-register provider listener (onInitialized, setUnitsProvider)
|
|
342
|
+
* - `"formatsChanged"` — patch registry from provider + load maps (formatsChanged listener)
|
|
343
|
+
* - `"activeSystem"` — reload format/parsing maps for current unit system (setActiveUnitSystem, reinitializeFormatAndParsingsMaps)
|
|
344
|
+
* @internal
|
|
345
|
+
*/
|
|
346
|
+
protected scheduleReload(intent: ReloadIntent): Promise<void>;
|
|
347
|
+
/** Execute the reload work for a given intent. All reload logic is centralized here.
|
|
348
|
+
* @internal
|
|
349
|
+
*/
|
|
350
|
+
private _executeReload;
|
|
351
|
+
/** Called when the reload queue is fully drained after a successful reload.
|
|
352
|
+
* Sets `isReady` to true, resolves `whenInitialized` (one-shot), and emits ready events.
|
|
353
|
+
* @internal
|
|
354
|
+
*/
|
|
355
|
+
private finalizeReload;
|
|
281
356
|
private getOverrideFormatPropsByQuantityType;
|
|
282
357
|
/** Method used to register all QuantityTypes defined in QuantityType enum. */
|
|
283
358
|
protected initializeQuantityTypesRegistry(): Promise<void>;
|
|
@@ -296,6 +371,16 @@ export declare class QuantityFormatter implements UnitsProvider {
|
|
|
296
371
|
* @internal
|
|
297
372
|
*/
|
|
298
373
|
onInitialized(): Promise<void>;
|
|
374
|
+
/** Core reload logic — does all async I/O and cache rebuilding without events or state management.
|
|
375
|
+
* @internal
|
|
376
|
+
*/
|
|
377
|
+
private _reloadCore;
|
|
378
|
+
/** Rebuild the formatting specs registry from the current formatsProvider based on changed args.
|
|
379
|
+
* @internal
|
|
380
|
+
*/
|
|
381
|
+
private _rebuildRegistryFromProvider;
|
|
382
|
+
/** Rebuild all system entries for a single KoQ name in the registry. */
|
|
383
|
+
private _rebuildRegistryForName;
|
|
299
384
|
/** Return a map that serves as a registry of all standard and custom quantity types. */
|
|
300
385
|
get quantityTypesRegistry(): Map<string, QuantityTypeDefinition>;
|
|
301
386
|
/** Return the class the contain map of all alternate labels for units. These alternate labels are used when parsing strings in quantity values. */
|
|
@@ -441,16 +526,28 @@ export declare class QuantityFormatter implements UnitsProvider {
|
|
|
441
526
|
createParserSpec(props: CreateFormattingSpecProps): Promise<ParserSpec>;
|
|
442
527
|
/**
|
|
443
528
|
* @beta
|
|
444
|
-
* Returns a [[FormattingSpecEntry]] for a given name, typically a KindOfQuantity full name.
|
|
529
|
+
* Returns a map of [[FormattingSpecEntry]] keyed by persistence unit for a given name, typically a KindOfQuantity full name.
|
|
530
|
+
*/
|
|
531
|
+
getSpecsByName(name: string): ReadonlyMap<string, FormattingSpecEntry> | undefined;
|
|
532
|
+
/**
|
|
533
|
+
* Returns a [[FormattingSpecEntry]] for a given name and persistence unit.
|
|
534
|
+
* @beta
|
|
535
|
+
*/
|
|
536
|
+
getSpecsByNameAndUnit(args: FormattingSpecArgs): FormattingSpecEntry | undefined;
|
|
537
|
+
/** Create a cacheable handle to formatting specs for a specific KoQ and persistence unit.
|
|
538
|
+
* The handle auto-refreshes when the QuantityFormatter reloads. Call `dispose()` when done.
|
|
539
|
+
*
|
|
540
|
+
* @param koqName - The KindOfQuantity name (e.g., "DefaultToolsUnits.LENGTH")
|
|
541
|
+
* @param persistenceUnit - The persistence unit name (e.g., "Units.M")
|
|
542
|
+
* @returns A FormatSpecHandle that auto-updates on reload
|
|
543
|
+
* @beta
|
|
445
544
|
*/
|
|
446
|
-
|
|
545
|
+
getFormatSpecHandle(koqName: string, persistenceUnit: string, system?: UnitSystemKey): FormatSpecHandle;
|
|
447
546
|
/**
|
|
448
547
|
* Populates the registry with a new FormatterSpec and ParserSpec entry for the given format name.
|
|
449
548
|
* @beta
|
|
450
|
-
* @param name The key used to identify the formatter and parser spec
|
|
451
|
-
* @param persistenceUnitName The name of the persistence unit
|
|
452
|
-
* @param formatProps If not supplied, tries to retrieve the [[FormatProps]] from [[IModelApp.formatsProvider]]
|
|
453
549
|
*/
|
|
454
|
-
addFormattingSpecsToRegistry(
|
|
550
|
+
addFormattingSpecsToRegistry(args: AddFormattingSpecArgs): Promise<void>;
|
|
455
551
|
}
|
|
552
|
+
export {};
|
|
456
553
|
//# sourceMappingURL=QuantityFormatter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuantityFormatter.d.ts","sourceRoot":"","sources":["../../../src/quantity-formatting/QuantityFormatter.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAgB,SAAS,EAAU,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"QuantityFormatter.d.ts","sourceRoot":"","sources":["../../../src/quantity-formatting/QuantityFormatter.ts"],"names":[],"mappings":"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"}
|