@itwin/presentation-common 3.4.0-dev.9 → 3.5.0-dev.5

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.
Files changed (42) hide show
  1. package/CHANGELOG.md +25 -1
  2. package/lib/cjs/presentation-common/Diagnostics.d.ts +82 -14
  3. package/lib/cjs/presentation-common/Diagnostics.d.ts.map +1 -1
  4. package/lib/cjs/presentation-common/Diagnostics.js +52 -2
  5. package/lib/cjs/presentation-common/Diagnostics.js.map +1 -1
  6. package/lib/cjs/presentation-common/LocalizationHelper.d.ts +30 -0
  7. package/lib/cjs/presentation-common/LocalizationHelper.d.ts.map +1 -0
  8. package/lib/cjs/presentation-common/LocalizationHelper.js +111 -0
  9. package/lib/cjs/presentation-common/LocalizationHelper.js.map +1 -0
  10. package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts +12 -3
  11. package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
  12. package/lib/cjs/presentation-common/PresentationRpcInterface.js.map +1 -1
  13. package/lib/cjs/presentation-common/RulesetsFactory.js +3 -6
  14. package/lib/cjs/presentation-common/RulesetsFactory.js.map +1 -1
  15. package/lib/cjs/presentation-common/content/Value.d.ts.map +1 -1
  16. package/lib/cjs/presentation-common/content/Value.js +21 -7
  17. package/lib/cjs/presentation-common/content/Value.js.map +1 -1
  18. package/lib/cjs/presentation-common.d.ts +1 -0
  19. package/lib/cjs/presentation-common.d.ts.map +1 -1
  20. package/lib/cjs/presentation-common.js +1 -0
  21. package/lib/cjs/presentation-common.js.map +1 -1
  22. package/lib/esm/presentation-common/Diagnostics.d.ts +82 -14
  23. package/lib/esm/presentation-common/Diagnostics.d.ts.map +1 -1
  24. package/lib/esm/presentation-common/Diagnostics.js +49 -1
  25. package/lib/esm/presentation-common/Diagnostics.js.map +1 -1
  26. package/lib/esm/presentation-common/LocalizationHelper.d.ts +30 -0
  27. package/lib/esm/presentation-common/LocalizationHelper.d.ts.map +1 -0
  28. package/lib/esm/presentation-common/LocalizationHelper.js +107 -0
  29. package/lib/esm/presentation-common/LocalizationHelper.js.map +1 -0
  30. package/lib/esm/presentation-common/PresentationRpcInterface.d.ts +12 -3
  31. package/lib/esm/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
  32. package/lib/esm/presentation-common/PresentationRpcInterface.js.map +1 -1
  33. package/lib/esm/presentation-common/RulesetsFactory.js +3 -6
  34. package/lib/esm/presentation-common/RulesetsFactory.js.map +1 -1
  35. package/lib/esm/presentation-common/content/Value.d.ts.map +1 -1
  36. package/lib/esm/presentation-common/content/Value.js +21 -7
  37. package/lib/esm/presentation-common/content/Value.js.map +1 -1
  38. package/lib/esm/presentation-common.d.ts +1 -0
  39. package/lib/esm/presentation-common.d.ts.map +1 -1
  40. package/lib/esm/presentation-common.js +1 -0
  41. package/lib/esm/presentation-common.js.map +1 -1
  42. package/package.json +9 -9
package/CHANGELOG.md CHANGED
@@ -1,6 +1,30 @@
1
1
  # Change Log - @itwin/presentation-common
2
2
 
3
- This log was last generated on Tue, 09 Aug 2022 15:52:41 GMT and should not be manually modified.
3
+ This log was last generated on Thu, 01 Sep 2022 14:37:22 GMT and should not be manually modified.
4
+
5
+ ## 3.3.2
6
+ Thu, 01 Sep 2022 14:37:22 GMT
7
+
8
+ _Version update only_
9
+
10
+ ## 3.3.1
11
+ Fri, 26 Aug 2022 15:40:02 GMT
12
+
13
+ _Version update only_
14
+
15
+ ## 3.3.0
16
+ Thu, 18 Aug 2022 19:08:02 GMT
17
+
18
+ ### Updates
19
+
20
+ - upgrade mocha to version 10.0.0
21
+ - Add target info to NavigationPropertyInfo
22
+ - `PresentationRpcInterface`: Enable response compression for certain operations.
23
+
24
+ ## 3.2.9
25
+ Fri, 26 Aug 2022 14:21:40 GMT
26
+
27
+ _Version update only_
4
28
 
5
29
  ## 3.2.8
6
30
  Tue, 09 Aug 2022 15:52:41 GMT
@@ -1,38 +1,93 @@
1
1
  /** @packageDocumentation
2
2
  * @module Core
3
3
  */
4
- /** @alpha */
4
+ /**
5
+ * Type of diagnostics logger severity.
6
+ * @beta
7
+ */
5
8
  export declare type DiagnosticsLoggerSeverity = "error" | "warning" | "info" | "debug" | "trace";
6
- /** @alpha */
9
+ /**
10
+ * Returns lower severity of the given two. Examples:
11
+ * ```
12
+ * combineDiagnosticsSeverities("error", "error") === "error"
13
+ * combineDiagnosticsSeverities("error", "debug") === "debug"
14
+ * combineDiagnosticsSeverities("debug", "error") === "debug"
15
+ * ```
16
+ * @internal
17
+ */
18
+ export declare function combineDiagnosticsSeverities(lhs: undefined | boolean | DiagnosticsLoggerSeverity, rhs: undefined | boolean | DiagnosticsLoggerSeverity): DiagnosticsLoggerSeverity | undefined;
19
+ /**
20
+ * Returns 0 if the given severities are equal after normalization, negative if `lhs` is lower, positive if higher. Examples:
21
+ * ```
22
+ * compareDiagnosticsSeverities("error", "error") === 0
23
+ * compareDiagnosticsSeverities("error", false) === 0
24
+ * compareDiagnosticsSeverities("error", undefined) === 0
25
+ * compareDiagnosticsSeverities("debug", true) === 0
26
+ * compareDiagnosticsSeverities("debug", "error") < 0
27
+ * compareDiagnosticsSeverities("error", "debug") > 0
28
+ * ```
29
+ * @internal
30
+ */
31
+ export declare function compareDiagnosticsSeverities(lhs: undefined | boolean | DiagnosticsLoggerSeverity, rhs: undefined | boolean | DiagnosticsLoggerSeverity): 0 | 1 | -1;
32
+ /**
33
+ * Data structure for diagnostics information.
34
+ * @beta
35
+ */
7
36
  export interface Diagnostics {
8
37
  logs?: DiagnosticsScopeLogs[];
9
38
  }
10
- /** @alpha */
39
+ /**
40
+ * Data structure with client diagnostics information.
41
+ * @beta
42
+ */
11
43
  export interface ClientDiagnostics extends Diagnostics {
12
44
  backendVersion?: string;
13
45
  }
14
- /** @alpha */
46
+ /**
47
+ * Data structure for diagnostics options.
48
+ * @beta
49
+ */
15
50
  export interface DiagnosticsOptions {
16
- /** Measure performance */
17
- perf?: boolean;
51
+ /**
52
+ * Flag specifying that performance should be measured, or
53
+ * minimum duration in milliseconds for which performance metric should be included.
54
+ */
55
+ perf?: boolean | {
56
+ minimumDuration: number;
57
+ };
18
58
  /** Severity for developer log messages */
19
59
  dev?: boolean | DiagnosticsLoggerSeverity;
20
60
  /** Severity for presentation rules' editor log messages */
21
61
  editor?: boolean | DiagnosticsLoggerSeverity;
22
62
  }
23
- /** @alpha */
63
+ /**
64
+ * A function that can be called after receiving diagnostics.
65
+ * @beta
66
+ */
24
67
  export declare type ClientDiagnosticsHandler = (logs: ClientDiagnostics) => void;
25
- /** @alpha */
68
+ /**
69
+ * Data structure for client diagnostics options.
70
+ * @beta
71
+ */
26
72
  export interface ClientDiagnosticsOptions extends DiagnosticsOptions {
27
73
  backendVersion?: boolean;
28
74
  handler: ClientDiagnosticsHandler;
29
75
  }
30
- /** @public */
76
+ /**
77
+ * Data structure which contains client diagnostics options.
78
+ * @public
79
+ */
31
80
  export interface ClientDiagnosticsAttribute {
32
- /** @alpha */
81
+ /**
82
+ * Diagnostics options.
83
+ * @beta
84
+ */
33
85
  diagnostics?: ClientDiagnosticsOptions;
34
86
  }
35
- /** @alpha */
87
+ /**
88
+ * Data structure for diagnostics log message information.
89
+ * @beta
90
+ */
36
91
  export interface DiagnosticsLogMessage {
37
92
  severity: {
38
93
  dev?: DiagnosticsLoggerSeverity;
@@ -42,15 +97,28 @@ export interface DiagnosticsLogMessage {
42
97
  message: string;
43
98
  timestamp: number;
44
99
  }
45
- /** @alpha */
100
+ /**
101
+ * Data structure for diagnostics scope information.
102
+ * @beta
103
+ */
46
104
  export interface DiagnosticsScopeLogs {
47
105
  scope: string;
106
+ scopeCreateTimestamp?: number;
48
107
  duration?: number;
49
108
  logs?: DiagnosticsLogEntry[];
109
+ attributes?: {
110
+ [attributeKey: string]: string | string[];
111
+ };
50
112
  }
51
- /** @alpha */
113
+ /**
114
+ * Data structure for diagnostics log entry.
115
+ * @beta
116
+ */
52
117
  export declare type DiagnosticsLogEntry = DiagnosticsLogMessage | DiagnosticsScopeLogs;
53
- /** @alpha */
118
+ /**
119
+ * Functions related to diagnostics log entry.
120
+ * @beta
121
+ */
54
122
  export declare namespace DiagnosticsLogEntry {
55
123
  function isMessage(entry: DiagnosticsLogEntry): entry is DiagnosticsLogMessage;
56
124
  function isScope(entry: DiagnosticsLogEntry): entry is DiagnosticsScopeLogs;
@@ -1 +1 @@
1
- {"version":3,"file":"Diagnostics.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/Diagnostics.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,aAAa;AACb,oBAAY,yBAAyB,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAEzF,aAAa;AACb,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,oBAAoB,EAAE,CAAC;CAC/B;AAED,aAAa;AACb,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,aAAa;AACb,MAAM,WAAW,kBAAkB;IACjC,0BAA0B;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,0CAA0C;IAC1C,GAAG,CAAC,EAAE,OAAO,GAAG,yBAAyB,CAAC;IAC1C,2DAA2D;IAC3D,MAAM,CAAC,EAAE,OAAO,GAAG,yBAAyB,CAAC;CAC9C;AAED,aAAa;AACb,oBAAY,wBAAwB,GAAG,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;AAEzE,aAAa;AACb,MAAM,WAAW,wBAAyB,SAAQ,kBAAkB;IAClE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,EAAE,wBAAwB,CAAC;CACnC;AAED,cAAc;AACd,MAAM,WAAW,0BAA0B;IACzC,aAAa;IACb,WAAW,CAAC,EAAE,wBAAwB,CAAC;CACxC;AAED,aAAa;AACb,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE;QACR,GAAG,CAAC,EAAE,yBAAyB,CAAC;QAChC,MAAM,CAAC,EAAE,yBAAyB,CAAC;KACpC,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,aAAa;AACb,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,mBAAmB,EAAE,CAAC;CAC9B;AAED,aAAa;AACb,oBAAY,mBAAmB,GAAG,qBAAqB,GAAG,oBAAoB,CAAC;AAE/E,aAAa;AACb,yBAAiB,mBAAmB,CAAC;IACnC,SAAgB,SAAS,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,IAAI,qBAAqB,CAEpF;IACD,SAAgB,OAAO,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,IAAI,oBAAoB,CAEjF;CACF"}
1
+ {"version":3,"file":"Diagnostics.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/Diagnostics.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;GAGG;AACH,oBAAY,yBAAyB,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAEzF;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,GAAG,yBAAyB,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,GAAG,yBAAyB,yCAStJ;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,GAAG,yBAAyB,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,GAAG,yBAAyB,cActJ;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,oBAAoB,EAAE,CAAC;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG;QAAE,eAAe,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,0CAA0C;IAC1C,GAAG,CAAC,EAAE,OAAO,GAAG,yBAAyB,CAAC;IAC1C,2DAA2D;IAC3D,MAAM,CAAC,EAAE,OAAO,GAAG,yBAAyB,CAAC;CAC9C;AAED;;;GAGG;AACH,oBAAY,wBAAwB,GAAG,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;AAEzE;;;GAGG;AACH,MAAM,WAAW,wBAAyB,SAAQ,kBAAkB;IAClE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,EAAE,wBAAwB,CAAC;CACnC;AAED;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,WAAW,CAAC,EAAE,wBAAwB,CAAC;CACxC;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE;QACR,GAAG,CAAC,EAAE,yBAAyB,CAAC;QAChC,MAAM,CAAC,EAAE,yBAAyB,CAAC;KACpC,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE;QAAE,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAC;CAC5D;AAED;;;GAGG;AACH,oBAAY,mBAAmB,GAAG,qBAAqB,GAAG,oBAAoB,CAAC;AAE/E;;;GAGG;AACH,yBAAiB,mBAAmB,CAAC;IACnC,SAAgB,SAAS,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,IAAI,qBAAqB,CAEpF;IACD,SAAgB,OAAO,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,IAAI,oBAAoB,CAEjF;CACF"}
@@ -7,8 +7,58 @@
7
7
  * @module Core
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.DiagnosticsLogEntry = void 0;
11
- /** @alpha */
10
+ exports.DiagnosticsLogEntry = exports.compareDiagnosticsSeverities = exports.combineDiagnosticsSeverities = void 0;
11
+ /**
12
+ * Returns lower severity of the given two. Examples:
13
+ * ```
14
+ * combineDiagnosticsSeverities("error", "error") === "error"
15
+ * combineDiagnosticsSeverities("error", "debug") === "debug"
16
+ * combineDiagnosticsSeverities("debug", "error") === "debug"
17
+ * ```
18
+ * @internal
19
+ */
20
+ function combineDiagnosticsSeverities(lhs, rhs) {
21
+ if (!lhs && !rhs)
22
+ return undefined;
23
+ const combinedSeverity = (lhs === "trace" || rhs === "trace") ? "trace" :
24
+ (lhs === "debug" || lhs === true || rhs === "debug" || rhs === true) ? "debug" :
25
+ (lhs === "info" || rhs === "info") ? "info" :
26
+ (lhs === "warning" || rhs === "warning") ? "warning" : "error";
27
+ return combinedSeverity;
28
+ }
29
+ exports.combineDiagnosticsSeverities = combineDiagnosticsSeverities;
30
+ /**
31
+ * Returns 0 if the given severities are equal after normalization, negative if `lhs` is lower, positive if higher. Examples:
32
+ * ```
33
+ * compareDiagnosticsSeverities("error", "error") === 0
34
+ * compareDiagnosticsSeverities("error", false) === 0
35
+ * compareDiagnosticsSeverities("error", undefined) === 0
36
+ * compareDiagnosticsSeverities("debug", true) === 0
37
+ * compareDiagnosticsSeverities("debug", "error") < 0
38
+ * compareDiagnosticsSeverities("error", "debug") > 0
39
+ * ```
40
+ * @internal
41
+ */
42
+ function compareDiagnosticsSeverities(lhs, rhs) {
43
+ const normalizedLhs = (lhs === undefined || lhs === false) ? "error" : lhs === true ? "debug" : lhs;
44
+ const normalizedRhs = (rhs === undefined || rhs === false) ? "error" : rhs === true ? "debug" : rhs;
45
+ if (normalizedLhs === normalizedRhs)
46
+ return 0;
47
+ if (normalizedLhs === "error")
48
+ return 1;
49
+ if (normalizedLhs === "warning")
50
+ return normalizedRhs === "error" ? -1 : 1;
51
+ if (normalizedLhs === "info")
52
+ return normalizedRhs === "warning" || normalizedRhs === "error" ? -1 : 1;
53
+ if (normalizedLhs === "debug")
54
+ return normalizedRhs === "info" || normalizedRhs === "warning" || normalizedRhs === "error" ? -1 : 1;
55
+ return -1;
56
+ }
57
+ exports.compareDiagnosticsSeverities = compareDiagnosticsSeverities;
58
+ /**
59
+ * Functions related to diagnostics log entry.
60
+ * @beta
61
+ */
12
62
  var DiagnosticsLogEntry;
13
63
  (function (DiagnosticsLogEntry) {
14
64
  function isMessage(entry) {
@@ -1 +1 @@
1
- {"version":3,"file":"Diagnostics.js","sourceRoot":"","sources":["../../../src/presentation-common/Diagnostics.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AA6DH,aAAa;AACb,IAAiB,mBAAmB,CAOnC;AAPD,WAAiB,mBAAmB;IAClC,SAAgB,SAAS,CAAC,KAA0B;QAClD,OAAO,CAAC,CAAE,KAAa,CAAC,OAAO,CAAC;IAClC,CAAC;IAFe,6BAAS,YAExB,CAAA;IACD,SAAgB,OAAO,CAAC,KAA0B;QAChD,OAAO,CAAC,CAAE,KAAa,CAAC,KAAK,CAAC;IAChC,CAAC;IAFe,2BAAO,UAEtB,CAAA;AACH,CAAC,EAPgB,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAOnC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Core\r\n */\r\n\r\n/** @alpha */\r\nexport type DiagnosticsLoggerSeverity = \"error\" | \"warning\" | \"info\" | \"debug\" | \"trace\";\r\n\r\n/** @alpha */\r\nexport interface Diagnostics {\r\n logs?: DiagnosticsScopeLogs[];\r\n}\r\n\r\n/** @alpha */\r\nexport interface ClientDiagnostics extends Diagnostics {\r\n backendVersion?: string;\r\n}\r\n\r\n/** @alpha */\r\nexport interface DiagnosticsOptions {\r\n /** Measure performance */\r\n perf?: boolean;\r\n /** Severity for developer log messages */\r\n dev?: boolean | DiagnosticsLoggerSeverity;\r\n /** Severity for presentation rules' editor log messages */\r\n editor?: boolean | DiagnosticsLoggerSeverity;\r\n}\r\n\r\n/** @alpha */\r\nexport type ClientDiagnosticsHandler = (logs: ClientDiagnostics) => void;\r\n\r\n/** @alpha */\r\nexport interface ClientDiagnosticsOptions extends DiagnosticsOptions {\r\n backendVersion?: boolean;\r\n handler: ClientDiagnosticsHandler;\r\n}\r\n\r\n/** @public */\r\nexport interface ClientDiagnosticsAttribute {\r\n /** @alpha */\r\n diagnostics?: ClientDiagnosticsOptions;\r\n}\r\n\r\n/** @alpha */\r\nexport interface DiagnosticsLogMessage {\r\n severity: {\r\n dev?: DiagnosticsLoggerSeverity;\r\n editor?: DiagnosticsLoggerSeverity;\r\n };\r\n category: string;\r\n message: string;\r\n timestamp: number;\r\n}\r\n\r\n/** @alpha */\r\nexport interface DiagnosticsScopeLogs {\r\n scope: string;\r\n duration?: number;\r\n logs?: DiagnosticsLogEntry[];\r\n}\r\n\r\n/** @alpha */\r\nexport type DiagnosticsLogEntry = DiagnosticsLogMessage | DiagnosticsScopeLogs;\r\n\r\n/** @alpha */\r\nexport namespace DiagnosticsLogEntry { // eslint-disable-line @typescript-eslint/no-redeclare\r\n export function isMessage(entry: DiagnosticsLogEntry): entry is DiagnosticsLogMessage {\r\n return !!(entry as any).message;\r\n }\r\n export function isScope(entry: DiagnosticsLogEntry): entry is DiagnosticsScopeLogs {\r\n return !!(entry as any).scope;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"Diagnostics.js","sourceRoot":"","sources":["../../../src/presentation-common/Diagnostics.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAQH;;;;;;;;GAQG;AACH,SAAgB,4BAA4B,CAAC,GAAoD,EAAE,GAAoD;IACrJ,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG;QACd,OAAO,SAAS,CAAC;IACnB,MAAM,gBAAgB,GACpB,CAAC,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC9E,CAAC,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBAC3C,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;IACvE,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AATD,oEASC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,4BAA4B,CAAC,GAAoD,EAAE,GAAoD;IACrJ,MAAM,aAAa,GAA8B,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC/H,MAAM,aAAa,GAA8B,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC/H,IAAI,aAAa,KAAK,aAAa;QACjC,OAAO,CAAC,CAAC;IACX,IAAI,aAAa,KAAK,OAAO;QAC3B,OAAO,CAAC,CAAC;IACX,IAAI,aAAa,KAAK,SAAS;QAC7B,OAAO,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,IAAI,aAAa,KAAK,MAAM;QAC1B,OAAO,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,IAAI,aAAa,KAAK,OAAO;QAC3B,OAAO,aAAa,KAAK,MAAM,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvG,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAdD,oEAcC;AA6FD;;;GAGG;AACH,IAAiB,mBAAmB,CAOnC;AAPD,WAAiB,mBAAmB;IAClC,SAAgB,SAAS,CAAC,KAA0B;QAClD,OAAO,CAAC,CAAE,KAAa,CAAC,OAAO,CAAC;IAClC,CAAC;IAFe,6BAAS,YAExB,CAAA;IACD,SAAgB,OAAO,CAAC,KAA0B;QAChD,OAAO,CAAC,CAAE,KAAa,CAAC,KAAK,CAAC;IAChC,CAAC;IAFe,2BAAO,UAEtB,CAAA;AACH,CAAC,EAPgB,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAOnC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Core\r\n */\r\n\r\n/**\r\n * Type of diagnostics logger severity.\r\n * @beta\r\n */\r\nexport type DiagnosticsLoggerSeverity = \"error\" | \"warning\" | \"info\" | \"debug\" | \"trace\";\r\n\r\n/**\r\n * Returns lower severity of the given two. Examples:\r\n * ```\r\n * combineDiagnosticsSeverities(\"error\", \"error\") === \"error\"\r\n * combineDiagnosticsSeverities(\"error\", \"debug\") === \"debug\"\r\n * combineDiagnosticsSeverities(\"debug\", \"error\") === \"debug\"\r\n * ```\r\n * @internal\r\n */\r\nexport function combineDiagnosticsSeverities(lhs: undefined | boolean | DiagnosticsLoggerSeverity, rhs: undefined | boolean | DiagnosticsLoggerSeverity) {\r\n if (!lhs && !rhs)\r\n return undefined;\r\n const combinedSeverity: DiagnosticsLoggerSeverity =\r\n (lhs === \"trace\" || rhs === \"trace\") ? \"trace\" :\r\n (lhs === \"debug\" || lhs === true || rhs === \"debug\" || rhs === true) ? \"debug\" :\r\n (lhs === \"info\" || rhs === \"info\") ? \"info\" :\r\n (lhs === \"warning\" || rhs === \"warning\") ? \"warning\" : \"error\";\r\n return combinedSeverity;\r\n}\r\n\r\n/**\r\n * Returns 0 if the given severities are equal after normalization, negative if `lhs` is lower, positive if higher. Examples:\r\n * ```\r\n * compareDiagnosticsSeverities(\"error\", \"error\") === 0\r\n * compareDiagnosticsSeverities(\"error\", false) === 0\r\n * compareDiagnosticsSeverities(\"error\", undefined) === 0\r\n * compareDiagnosticsSeverities(\"debug\", true) === 0\r\n * compareDiagnosticsSeverities(\"debug\", \"error\") < 0\r\n * compareDiagnosticsSeverities(\"error\", \"debug\") > 0\r\n * ```\r\n * @internal\r\n */\r\nexport function compareDiagnosticsSeverities(lhs: undefined | boolean | DiagnosticsLoggerSeverity, rhs: undefined | boolean | DiagnosticsLoggerSeverity) {\r\n const normalizedLhs: DiagnosticsLoggerSeverity = (lhs === undefined || lhs === false) ? \"error\" : lhs === true ? \"debug\" : lhs;\r\n const normalizedRhs: DiagnosticsLoggerSeverity = (rhs === undefined || rhs === false) ? \"error\" : rhs === true ? \"debug\" : rhs;\r\n if (normalizedLhs === normalizedRhs)\r\n return 0;\r\n if (normalizedLhs === \"error\")\r\n return 1;\r\n if (normalizedLhs === \"warning\")\r\n return normalizedRhs === \"error\" ? -1 : 1;\r\n if (normalizedLhs === \"info\")\r\n return normalizedRhs === \"warning\" || normalizedRhs === \"error\" ? -1 : 1;\r\n if (normalizedLhs === \"debug\")\r\n return normalizedRhs === \"info\" || normalizedRhs === \"warning\" || normalizedRhs === \"error\" ? -1 : 1;\r\n return -1;\r\n}\r\n\r\n/**\r\n * Data structure for diagnostics information.\r\n * @beta\r\n */\r\nexport interface Diagnostics {\r\n logs?: DiagnosticsScopeLogs[];\r\n}\r\n\r\n/**\r\n * Data structure with client diagnostics information.\r\n * @beta\r\n */\r\nexport interface ClientDiagnostics extends Diagnostics {\r\n backendVersion?: string;\r\n}\r\n\r\n/**\r\n * Data structure for diagnostics options.\r\n * @beta\r\n */\r\nexport interface DiagnosticsOptions {\r\n /**\r\n * Flag specifying that performance should be measured, or\r\n * minimum duration in milliseconds for which performance metric should be included.\r\n */\r\n perf?: boolean | { minimumDuration: number };\r\n /** Severity for developer log messages */\r\n dev?: boolean | DiagnosticsLoggerSeverity;\r\n /** Severity for presentation rules' editor log messages */\r\n editor?: boolean | DiagnosticsLoggerSeverity;\r\n}\r\n\r\n/**\r\n * A function that can be called after receiving diagnostics.\r\n * @beta\r\n */\r\nexport type ClientDiagnosticsHandler = (logs: ClientDiagnostics) => void;\r\n\r\n/**\r\n * Data structure for client diagnostics options.\r\n * @beta\r\n */\r\nexport interface ClientDiagnosticsOptions extends DiagnosticsOptions {\r\n backendVersion?: boolean;\r\n handler: ClientDiagnosticsHandler;\r\n}\r\n\r\n/**\r\n * Data structure which contains client diagnostics options.\r\n * @public\r\n */\r\nexport interface ClientDiagnosticsAttribute {\r\n /**\r\n * Diagnostics options.\r\n * @beta\r\n */\r\n diagnostics?: ClientDiagnosticsOptions;\r\n}\r\n\r\n/**\r\n * Data structure for diagnostics log message information.\r\n * @beta\r\n */\r\nexport interface DiagnosticsLogMessage {\r\n severity: {\r\n dev?: DiagnosticsLoggerSeverity;\r\n editor?: DiagnosticsLoggerSeverity;\r\n };\r\n category: string;\r\n message: string;\r\n timestamp: number;\r\n}\r\n\r\n/**\r\n * Data structure for diagnostics scope information.\r\n * @beta\r\n */\r\nexport interface DiagnosticsScopeLogs {\r\n scope: string;\r\n scopeCreateTimestamp?: number;\r\n duration?: number;\r\n logs?: DiagnosticsLogEntry[];\r\n attributes?: { [attributeKey: string]: string | string[] };\r\n}\r\n\r\n/**\r\n * Data structure for diagnostics log entry.\r\n * @beta\r\n */\r\nexport type DiagnosticsLogEntry = DiagnosticsLogMessage | DiagnosticsScopeLogs;\r\n\r\n/**\r\n * Functions related to diagnostics log entry.\r\n * @beta\r\n */\r\nexport namespace DiagnosticsLogEntry { // eslint-disable-line @typescript-eslint/no-redeclare\r\n export function isMessage(entry: DiagnosticsLogEntry): entry is DiagnosticsLogMessage {\r\n return !!(entry as any).message;\r\n }\r\n export function isScope(entry: DiagnosticsLogEntry): entry is DiagnosticsScopeLogs {\r\n return !!(entry as any).scope;\r\n }\r\n}\r\n"]}
@@ -0,0 +1,30 @@
1
+ /** @packageDocumentation
2
+ * @module Core
3
+ */
4
+ import { Node } from "./hierarchy/Node";
5
+ import { Content } from "./content/Content";
6
+ import { LabelDefinition } from "./LabelDefinition";
7
+ import { ElementProperties } from "./ElementProperties";
8
+ /** @internal */
9
+ export interface LocalizationHelperProps {
10
+ getLocalizedString: (key: string) => string;
11
+ }
12
+ /** @internal */
13
+ export declare class LocalizationHelper {
14
+ private _getLocalizedString;
15
+ constructor(props: LocalizationHelperProps);
16
+ getLocalizedString(text: string): string;
17
+ getLocalizedNodes(nodes: Node[]): Node[];
18
+ getLocalizedLabelDefinition(labelDefinition: LabelDefinition): LabelDefinition;
19
+ getLocalizedLabelDefinitions(labelDefinitions: LabelDefinition[]): LabelDefinition[];
20
+ getLocalizedContent(content: Content): Content;
21
+ getLocalizedElementProperties(elem: ElementProperties): ElementProperties;
22
+ private translateContentItem;
23
+ private translateContentItemDisplayValue;
24
+ private translateContentItemValue;
25
+ private translateContentDescriptorField;
26
+ private translateContentDescriptorCategory;
27
+ private translateNode;
28
+ private translateLabelDefinition;
29
+ }
30
+ //# sourceMappingURL=LocalizationHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalizationHelper.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/LocalizationHelper.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAuB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAIxD,gBAAgB;AAChB,MAAM,WAAW,uBAAuB;IACtC,kBAAkB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;CAC7C;AAED,gBAAgB;AAChB,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,mBAAmB,CAA0B;gBAEzC,KAAK,EAAE,uBAAuB;IAInC,kBAAkB,CAAC,IAAI,EAAE,MAAM;IAI/B,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE;IAMxC,2BAA2B,CAAC,eAAe,EAAE,eAAe,GAAG,eAAe;IAK9E,4BAA4B,CAAC,gBAAgB,EAAE,eAAe,EAAE;IAKhE,mBAAmB,CAAC,OAAO,EAAE,OAAO;IAOpC,6BAA6B,CAAC,IAAI,EAAE,iBAAiB;IAK5D,OAAO,CAAC,oBAAoB;IAc5B,OAAO,CAAC,gCAAgC;IAQxC,OAAO,CAAC,yBAAyB;IAoBjC,OAAO,CAAC,+BAA+B;IAIvC,OAAO,CAAC,kCAAkC;IAK1C,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,wBAAwB;CAajC"}
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module Core
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.LocalizationHelper = void 0;
11
+ const LabelDefinition_1 = require("./LabelDefinition");
12
+ const Value_1 = require("./content/Value");
13
+ const KEY_PATTERN = /@[\w\d\-_]+:[\w\d\-\._]+?@/g;
14
+ /** @internal */
15
+ class LocalizationHelper {
16
+ constructor(props) {
17
+ this._getLocalizedString = props.getLocalizedString;
18
+ }
19
+ getLocalizedString(text) {
20
+ return text.replace(KEY_PATTERN, (key) => this._getLocalizedString(key.replace(/^@|@$/g, "")));
21
+ }
22
+ getLocalizedNodes(nodes) {
23
+ for (const node of nodes)
24
+ this.translateNode(node);
25
+ return nodes;
26
+ }
27
+ getLocalizedLabelDefinition(labelDefinition) {
28
+ this.translateLabelDefinition(labelDefinition);
29
+ return labelDefinition;
30
+ }
31
+ getLocalizedLabelDefinitions(labelDefinitions) {
32
+ labelDefinitions.forEach((labelDefinition) => this.translateLabelDefinition(labelDefinition));
33
+ return labelDefinitions;
34
+ }
35
+ getLocalizedContent(content) {
36
+ content.contentSet.forEach((item) => this.translateContentItem(item));
37
+ content.descriptor.fields.forEach((field) => this.translateContentDescriptorField(field));
38
+ content.descriptor.categories.forEach((category) => this.translateContentDescriptorCategory(category));
39
+ return content;
40
+ }
41
+ getLocalizedElementProperties(elem) {
42
+ elem.label = this.getLocalizedString(elem.label);
43
+ return elem;
44
+ }
45
+ translateContentItem(item) {
46
+ for (const key in item.displayValues) {
47
+ // istanbul ignore else
48
+ if (key)
49
+ item.displayValues[key] = this.translateContentItemDisplayValue(item.displayValues[key]);
50
+ }
51
+ for (const key in item.values) {
52
+ // istanbul ignore else
53
+ if (key)
54
+ item.values[key] = this.translateContentItemValue(item.values[key]);
55
+ }
56
+ this.translateLabelDefinition(item.label);
57
+ }
58
+ translateContentItemDisplayValue(value) {
59
+ // istanbul ignore else
60
+ if (typeof value === "string") {
61
+ value = this.getLocalizedString(value);
62
+ }
63
+ return value;
64
+ }
65
+ translateContentItemValue(value) {
66
+ if (typeof value === "string") {
67
+ value = this.getLocalizedString(value);
68
+ }
69
+ else if (Value_1.Value.isNestedContent(value)) {
70
+ for (const nestedValue of value) {
71
+ for (const key in nestedValue.values) {
72
+ // istanbul ignore else
73
+ if (key)
74
+ nestedValue.values[key] = this.translateContentItemValue(nestedValue.values[key]);
75
+ }
76
+ for (const key in nestedValue.displayValues) {
77
+ // istanbul ignore else
78
+ if (key)
79
+ nestedValue.displayValues[key] = this.translateContentItemDisplayValue(nestedValue.displayValues[key]);
80
+ }
81
+ }
82
+ }
83
+ return value;
84
+ }
85
+ translateContentDescriptorField(field) {
86
+ field.label = this.getLocalizedString(field.label);
87
+ }
88
+ translateContentDescriptorCategory(category) {
89
+ category.label = this.getLocalizedString(category.label);
90
+ category.description = this.getLocalizedString(category.description);
91
+ }
92
+ translateNode(node) {
93
+ this.translateLabelDefinition(node.label);
94
+ // istanbul ignore else
95
+ if (node.description)
96
+ node.description = this.getLocalizedString(node.description);
97
+ }
98
+ translateLabelDefinition(labelDefinition) {
99
+ const translateComposite = (compositeValue) => {
100
+ compositeValue.values.map((value) => this.translateLabelDefinition(value));
101
+ };
102
+ if (labelDefinition.typeName === LabelDefinition_1.LabelDefinition.COMPOSITE_DEFINITION_TYPENAME)
103
+ translateComposite(labelDefinition.rawValue);
104
+ else if (labelDefinition.typeName === "string") {
105
+ labelDefinition.rawValue = this.getLocalizedString(labelDefinition.rawValue);
106
+ labelDefinition.displayValue = this.getLocalizedString(labelDefinition.displayValue);
107
+ }
108
+ }
109
+ }
110
+ exports.LocalizationHelper = LocalizationHelper;
111
+ //# sourceMappingURL=LocalizationHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalizationHelper.js","sourceRoot":"","sources":["../../../src/presentation-common/LocalizationHelper.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Core\r\n */\r\n\r\nimport { Node } from \"./hierarchy/Node\";\r\nimport { Content } from \"./content/Content\";\r\nimport { Item } from \"./content/Item\";\r\nimport { LabelCompositeValue, LabelDefinition } from \"./LabelDefinition\";\r\nimport { DisplayValue, Value } from \"./content/Value\";\r\nimport { Field } from \"./content/Fields\";\r\nimport { CategoryDescription } from \"./content/Category\";\r\nimport { ElementProperties } from \"./ElementProperties\";\r\n\r\nconst KEY_PATTERN = /@[\\w\\d\\-_]+:[\\w\\d\\-\\._]+?@/g;\r\n\r\n/** @internal */\r\nexport interface LocalizationHelperProps {\r\n getLocalizedString: (key: string) => string;\r\n}\r\n\r\n/** @internal */\r\nexport class LocalizationHelper {\r\n private _getLocalizedString: (key: string) => string;\r\n\r\n constructor(props: LocalizationHelperProps) {\r\n this._getLocalizedString = props.getLocalizedString;\r\n }\r\n\r\n public getLocalizedString(text: string) {\r\n return text.replace(KEY_PATTERN, (key) => this._getLocalizedString(key.replace(/^@|@$/g, \"\")));\r\n }\r\n\r\n public getLocalizedNodes(nodes: Node[]): Node[] {\r\n for (const node of nodes)\r\n this.translateNode(node);\r\n return nodes;\r\n }\r\n\r\n public getLocalizedLabelDefinition(labelDefinition: LabelDefinition): LabelDefinition {\r\n this.translateLabelDefinition(labelDefinition);\r\n return labelDefinition;\r\n }\r\n\r\n public getLocalizedLabelDefinitions(labelDefinitions: LabelDefinition[]) {\r\n labelDefinitions.forEach((labelDefinition) => this.translateLabelDefinition(labelDefinition));\r\n return labelDefinitions;\r\n }\r\n\r\n public getLocalizedContent(content: Content) {\r\n content.contentSet.forEach((item) => this.translateContentItem(item));\r\n content.descriptor.fields.forEach((field) => this.translateContentDescriptorField(field));\r\n content.descriptor.categories.forEach((category) => this.translateContentDescriptorCategory(category));\r\n return content;\r\n }\r\n\r\n public getLocalizedElementProperties(elem: ElementProperties) {\r\n elem.label = this.getLocalizedString(elem.label);\r\n return elem;\r\n }\r\n\r\n private translateContentItem(item: Item) {\r\n for (const key in item.displayValues) {\r\n // istanbul ignore else\r\n if (key)\r\n item.displayValues[key] = this.translateContentItemDisplayValue(item.displayValues[key]);\r\n }\r\n for (const key in item.values) {\r\n // istanbul ignore else\r\n if (key)\r\n item.values[key] = this.translateContentItemValue(item.values[key]);\r\n }\r\n this.translateLabelDefinition(item.label);\r\n }\r\n\r\n private translateContentItemDisplayValue(value: DisplayValue): DisplayValue {\r\n // istanbul ignore else\r\n if (typeof value === \"string\") {\r\n value = this.getLocalizedString(value);\r\n }\r\n return value;\r\n }\r\n\r\n private translateContentItemValue(value: Value): Value {\r\n if (typeof value === \"string\") {\r\n value = this.getLocalizedString(value);\r\n } else if (Value.isNestedContent(value)) {\r\n for (const nestedValue of value) {\r\n for (const key in nestedValue.values) {\r\n // istanbul ignore else\r\n if (key)\r\n nestedValue.values[key] = this.translateContentItemValue(nestedValue.values[key]);\r\n }\r\n for (const key in nestedValue.displayValues) {\r\n // istanbul ignore else\r\n if (key)\r\n nestedValue.displayValues[key] = this.translateContentItemDisplayValue(nestedValue.displayValues[key]);\r\n }\r\n }\r\n }\r\n return value;\r\n }\r\n\r\n private translateContentDescriptorField(field: Field) {\r\n field.label = this.getLocalizedString(field.label);\r\n }\r\n\r\n private translateContentDescriptorCategory(category: CategoryDescription) {\r\n category.label = this.getLocalizedString(category.label);\r\n category.description = this.getLocalizedString(category.description);\r\n }\r\n\r\n private translateNode(node: Node) {\r\n this.translateLabelDefinition(node.label);\r\n // istanbul ignore else\r\n if (node.description)\r\n node.description = this.getLocalizedString(node.description);\r\n }\r\n\r\n private translateLabelDefinition(labelDefinition: LabelDefinition) {\r\n const translateComposite = (compositeValue: LabelCompositeValue) => {\r\n compositeValue.values.map((value) => this.translateLabelDefinition(value));\r\n };\r\n\r\n if (labelDefinition.typeName === LabelDefinition.COMPOSITE_DEFINITION_TYPENAME)\r\n translateComposite(labelDefinition.rawValue as LabelCompositeValue);\r\n else if (labelDefinition.typeName === \"string\") {\r\n labelDefinition.rawValue = this.getLocalizedString(labelDefinition.rawValue as string);\r\n labelDefinition.displayValue = this.getLocalizedString(labelDefinition.displayValue);\r\n }\r\n }\r\n\r\n}\r\n"]}
@@ -26,7 +26,10 @@ import { Omit, PagedResponse } from "./Utils";
26
26
  export declare type PresentationRpcRequestOptions<TManagerRequestOptions> = Omit<TManagerRequestOptions, "imodel" | "diagnostics"> & {
27
27
  /** @internal ID of the client requesting data */
28
28
  clientId?: string;
29
- /** @alpha */
29
+ /**
30
+ * RPC request diagnostics options.
31
+ * @beta
32
+ */
30
33
  diagnostics?: RpcDiagnosticsOptions;
31
34
  };
32
35
  /**
@@ -40,10 +43,16 @@ export interface PresentationRpcResponseData<TResult = undefined> {
40
43
  errorMessage?: string;
41
44
  /** In case of a success response, the result */
42
45
  result?: TResult;
43
- /** @alpha */
46
+ /**
47
+ * Diagnostics response.
48
+ * @beta
49
+ */
44
50
  diagnostics?: ClientDiagnostics;
45
51
  }
46
- /** @alpha */
52
+ /**
53
+ * Data structure for RPC diagnostics options.
54
+ * @beta
55
+ */
47
56
  export declare type RpcDiagnosticsOptions = Omit<ClientDiagnosticsOptions, "handler">;
48
57
  /**
49
58
  * A promise of [[PresentationRpcResponseData]].
@@ -1 +1 @@
1
- {"version":3,"file":"PresentationRpcInterface.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/PresentationRpcInterface.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAgB,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChG,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EACL,8BAA8B,EAAE,+BAA+B,EAAE,iCAAiC,EAAE,qBAAqB,EACzH,4BAA4B,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,4BAA4B,EACnH,4CAA4C,EAAE,mCAAmC,EAAE,uBAAuB,EAAE,KAAK,EAAE,4BAA4B,EAC/I,qCAAqC,EACtC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE9C;;;GAGG;AACH,oBAAY,6BAA6B,CAAC,sBAAsB,IAAI,IAAI,CAAC,sBAAsB,EAAE,QAAQ,GAAG,aAAa,CAAC,GAAG;IAC3H,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa;IACb,WAAW,CAAC,EAAE,qBAAqB,CAAC;CACrC,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,2BAA2B,CAAC,OAAO,GAAG,SAAS;IAC9D,2BAA2B;IAC3B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gDAAgD;IAChD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa;IACb,WAAW,CAAC,EAAE,iBAAiB,CAAC;CACjC;AAED,aAAa;AACb,oBAAY,qBAAqB,GAAG,IAAI,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC;AAE9E;;;GAGG;AACH,oBAAY,uBAAuB,CAAC,OAAO,GAAG,SAAS,IAAI,OAAO,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC,CAAC;AAEzG;;;GAGG;AACH,oBAAY,0BAA0B,GAAG,6BAA6B,CAAC,uBAAuB,CAAC,KAAK,EAAE,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAEzI;;;GAGG;AACH,oBAAY,+CAA+C,GAAG,6BAA6B,CAAC,4CAA4C,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAEtK;;;GAGG;AACH,oBAAY,sCAAsC,GAAG,6BAA6B,CAAC,mCAAmC,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAEpJ;;;GAGG;AACH,oBAAY,+BAA+B,GAAG,6BAA6B,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC;AACjH;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,+DAA+D;IAC/D,OAAO,EAAE,mBAAmB,CAAC,UAAU,CAAC,EAAE,CAAC;IAC3C,uFAAuF;IACvF,UAAU,EAAE;QAAE,CAAC,EAAE,EAAE,MAAM,GAAG,uBAAuB,CAAA;KAAE,CAAC;CACvD;AAED;;;GAGG;AACH,oBAAY,kCAAkC,GAAG,6BAA6B,CAAC,+BAA+B,CAAC,KAAK,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAExJ;;;GAGG;AACH,oBAAY,wBAAwB,GAAG,6BAA6B,CAAC,qBAAqB,CAAC,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAEzJ;;;GAGG;AACH,oBAAY,wCAAwC,GAAG,6BAA6B,CAAC,qCAAqC,CAAC,KAAK,CAAC,CAAC,CAAC;AAEnI;;;GAGG;AACH,oBAAY,+BAA+B,GAAG,6BAA6B,CAAC,4BAA4B,CAAC,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAEvK;;;GAGG;AACH,oBAAY,oCAAoC,GAAG,6BAA6B,CAAC,iCAAiC,CAAC,KAAK,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAE5J;;;GAGG;AACH,oBAAY,6BAA6B,GAAG,6BAA6B,CAAC,0BAA0B,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC;AAE9H;;;GAGG;AACH,oBAAY,8BAA8B,GAAG,6BAA6B,CAAC,2BAA2B,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC;AAEhI;;;GAGG;AACH,oBAAY,+BAA+B,GAAG,6BAA6B,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC;AAEjH;;GAEG;AACH,oBAAY,iCAAiC,GAAG,6BAA6B,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC,CAAC;AAErH;;;GAGG;AACH,qBAAa,wBAAyB,SAAQ,YAAY;IACxD,2CAA2C;IAC3C,gBAAuB,aAAa,8BAA8B;IAElE,6CAA6C;IAC7C,OAAc,gBAAgB,SAAW;IAO5B,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,0BAA0B,GAAG,uBAAuB,CAAC,MAAM,CAAC;IAG5G,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,CAAC,0BAA0B,CAAC,GAAG,uBAAuB,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAIpI,YAAY,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,+CAA+C,GAAG,uBAAuB,CAAC,mBAAmB,EAAE,CAAC;IAI/I,oBAAoB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,sCAAsC,GAAG,uBAAuB,CAAC,mBAAmB,EAAE,CAAC;IAE3J,YAAY;IAEC,iBAAiB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,+BAA+B,GAAG,uBAAuB,CAAC,uBAAuB,CAAC;IAGtI,oBAAoB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,kCAAkC,GAAG,uBAAuB,CAAC,cAAc,GAAG,SAAS,CAAC;IAU/I,iBAAiB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,wBAAwB,GAAG,uBAAuB,CAAC,MAAM,CAAC;IAG9G,eAAe,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,CAAC,wBAAwB,CAAC,GAAG,uBAAuB,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,UAAU,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAA;KAAE,GAAG,SAAS,CAAC;IAG5L,kBAAkB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,CAAC,wBAAwB,CAAC,GAAG,uBAAuB,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAEpJ,YAAY;IAEC,oBAAoB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,wCAAwC,GAAG,uBAAuB,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAGxJ,sBAAsB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,+BAA+B,GAAG,uBAAuB,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAErK,YAAY;IACC,sBAAsB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,oCAAoC,GAAG,uBAAuB,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,UAAU,CAAA;KAAE,CAAC;IAE7J,yBAAyB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,6BAA6B,GAAG,uBAAuB,CAAC,mBAAmB,CAAC;IAGxI,+BAA+B,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,8BAA8B,GAAG,uBAAuB,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAE9J,kBAAkB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,+BAA+B,GAAG,uBAAuB,CAAC,cAAc,EAAE,CAAC;IAGhI,gBAAgB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,+BAA+B,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,uBAAuB,CAAC,UAAU,CAAC;IAC3K,aAAa;IACA,gBAAgB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,iCAAiC,GAAG,uBAAuB,CAAC,UAAU,CAAC;CAGxI;AAED,aAAa;AACb,oBAAY,qBAAqB;IAC/B;;OAEG;IACH,MAAM,0BAA0B;CACjC"}
1
+ {"version":3,"file":"PresentationRpcInterface.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/PresentationRpcInterface.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PresentationRpcInterface.js","sourceRoot":"","sources":["../../../src/presentation-common/PresentationRpcInterface.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module RPC\r\n */\r\n\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\nimport { IModelRpcProps, RpcInterface, RpcOperation } from \"@itwin/core-common\";\r\nimport { DescriptorJSON, DescriptorOverrides, SelectClassInfoJSON } from \"./content/Descriptor\";\r\nimport { ItemJSON } from \"./content/Item\";\r\nimport { DisplayValueGroupJSON } from \"./content/Value\";\r\nimport { ClientDiagnostics, ClientDiagnosticsOptions } from \"./Diagnostics\";\r\nimport { CompressedClassInfoJSON, InstanceKeyJSON } from \"./EC\";\r\nimport { ElementProperties } from \"./ElementProperties\";\r\nimport { PresentationStatus } from \"./Error\";\r\nimport { NodeKeyJSON } from \"./hierarchy/Key\";\r\nimport { NodeJSON } from \"./hierarchy/Node\";\r\nimport { NodePathElementJSON } from \"./hierarchy/NodePathElement\";\r\nimport { KeySetJSON } from \"./KeySet\";\r\nimport { LabelDefinitionJSON } from \"./LabelDefinition\";\r\nimport {\r\n ComputeSelectionRequestOptions, ContentDescriptorRequestOptions, ContentInstanceKeysRequestOptions, ContentRequestOptions,\r\n ContentSourcesRequestOptions, DisplayLabelRequestOptions, DisplayLabelsRequestOptions, DistinctValuesRequestOptions,\r\n FilterByInstancePathsHierarchyRequestOptions, FilterByTextHierarchyRequestOptions, HierarchyRequestOptions, Paged, SelectionScopeRequestOptions,\r\n SingleElementPropertiesRequestOptions,\r\n} from \"./PresentationManagerOptions\";\r\nimport { RulesetVariableJSON } from \"./RulesetVariables\";\r\nimport { SelectionScope } from \"./selection/SelectionScope\";\r\nimport { Omit, PagedResponse } from \"./Utils\";\r\n\r\n/**\r\n * Base options for all presentation RPC requests.\r\n * @public\r\n */\r\nexport type PresentationRpcRequestOptions<TManagerRequestOptions> = Omit<TManagerRequestOptions, \"imodel\" | \"diagnostics\"> & {\r\n /** @internal ID of the client requesting data */\r\n clientId?: string;\r\n /** @alpha */\r\n diagnostics?: RpcDiagnosticsOptions;\r\n};\r\n\r\n/**\r\n * Data structure for presentation RPC responses\r\n * @public\r\n */\r\nexport interface PresentationRpcResponseData<TResult = undefined> {\r\n /** Response status code */\r\n statusCode: PresentationStatus;\r\n /** In case of an error response, the error message */\r\n errorMessage?: string;\r\n /** In case of a success response, the result */\r\n result?: TResult;\r\n /** @alpha */\r\n diagnostics?: ClientDiagnostics;\r\n}\r\n\r\n/** @alpha */\r\nexport type RpcDiagnosticsOptions = Omit<ClientDiagnosticsOptions, \"handler\">;\r\n\r\n/**\r\n * A promise of [[PresentationRpcResponseData]].\r\n * @public\r\n */\r\nexport type PresentationRpcResponse<TResult = undefined> = Promise<PresentationRpcResponseData<TResult>>;\r\n\r\n/**\r\n * Data structure for hierarchy request options.\r\n * @public\r\n */\r\nexport type HierarchyRpcRequestOptions = PresentationRpcRequestOptions<HierarchyRequestOptions<never, NodeKeyJSON, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for filtering hierarchy by ECInstance paths request options.\r\n * @public\r\n */\r\nexport type FilterByInstancePathsHierarchyRpcRequestOptions = PresentationRpcRequestOptions<FilterByInstancePathsHierarchyRequestOptions<never, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for filtering hierarchy by text request options.\r\n * @public\r\n */\r\nexport type FilterByTextHierarchyRpcRequestOptions = PresentationRpcRequestOptions<FilterByTextHierarchyRequestOptions<never, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for content sources RPC request options.\r\n * @beta\r\n */\r\nexport type ContentSourcesRpcRequestOptions = PresentationRpcRequestOptions<ContentSourcesRequestOptions<never>>;\r\n/**\r\n * Data structure for content sources RPC response.\r\n * @beta\r\n */\r\nexport interface ContentSourcesRpcResult {\r\n /** A list of objects containing content source information. */\r\n sources: SelectClassInfoJSON<Id64String>[];\r\n /** An `ECClassId` => [[CompressedClassInfoJSON]] map for deserializing [[sources]]. */\r\n classesMap: { [id: string]: CompressedClassInfoJSON };\r\n}\r\n\r\n/**\r\n * Data structure for content descriptor RPC request options.\r\n * @public\r\n */\r\nexport type ContentDescriptorRpcRequestOptions = PresentationRpcRequestOptions<ContentDescriptorRequestOptions<never, KeySetJSON, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for content RPC request options.\r\n * @public\r\n */\r\nexport type ContentRpcRequestOptions = PresentationRpcRequestOptions<ContentRequestOptions<never, DescriptorOverrides, KeySetJSON, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for single element properties RPC request options.\r\n * @beta\r\n */\r\nexport type SingleElementPropertiesRpcRequestOptions = PresentationRpcRequestOptions<SingleElementPropertiesRequestOptions<never>>;\r\n\r\n/**\r\n * Data structure for distinct values' request options.\r\n * @public\r\n */\r\nexport type DistinctValuesRpcRequestOptions = PresentationRpcRequestOptions<DistinctValuesRequestOptions<never, DescriptorOverrides, KeySetJSON, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for content instance keys' request options.\r\n * @beta\r\n */\r\nexport type ContentInstanceKeysRpcRequestOptions = PresentationRpcRequestOptions<ContentInstanceKeysRequestOptions<never, KeySetJSON, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for label request options.\r\n * @public\r\n */\r\nexport type DisplayLabelRpcRequestOptions = PresentationRpcRequestOptions<DisplayLabelRequestOptions<never, InstanceKeyJSON>>;\r\n\r\n/**\r\n * Data structure for labels request options.\r\n * @public\r\n */\r\nexport type DisplayLabelsRpcRequestOptions = PresentationRpcRequestOptions<DisplayLabelsRequestOptions<never, InstanceKeyJSON>>;\r\n\r\n/**\r\n * Data structure for selection scope request options.\r\n * @public\r\n */\r\nexport type SelectionScopeRpcRequestOptions = PresentationRpcRequestOptions<SelectionScopeRequestOptions<never>>;\r\n\r\n/**\r\n * @alpha\r\n */\r\nexport type ComputeSelectionRpcRequestOptions = PresentationRpcRequestOptions<ComputeSelectionRequestOptions<never>>;\r\n\r\n/**\r\n * Interface used for communication between Presentation backend and frontend.\r\n * @public\r\n */\r\nexport class PresentationRpcInterface extends RpcInterface {\r\n /** The immutable name of the interface. */\r\n public static readonly interfaceName = \"PresentationRpcInterface\"; // eslint-disable-line @typescript-eslint/naming-convention\r\n\r\n /** The semantic version of the interface. */\r\n public static interfaceVersion = \"3.1.0\";\r\n\r\n /*===========================================================================================\r\n NOTE: Any add/remove/change to the methods below requires an update of the interface version.\r\n NOTE: Please consult the README in core/common/src/rpc for the semantic versioning rules.\r\n ===========================================================================================*/\r\n\r\n public async getNodesCount(_token: IModelRpcProps, _options: HierarchyRpcRequestOptions): PresentationRpcResponse<number> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getPagedNodes(_token: IModelRpcProps, _options: Paged<HierarchyRpcRequestOptions>): PresentationRpcResponse<PagedResponse<NodeJSON>> { return this.forward(arguments); }\r\n\r\n // TODO: add paged version of this (#387280)\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getNodePaths(_token: IModelRpcProps, _options: FilterByInstancePathsHierarchyRpcRequestOptions): PresentationRpcResponse<NodePathElementJSON[]> { return this.forward(arguments); }\r\n\r\n // TODO: add paged version of this (#387280)\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getFilteredNodePaths(_token: IModelRpcProps, _options: FilterByTextHierarchyRpcRequestOptions): PresentationRpcResponse<NodePathElementJSON[]> { return this.forward(arguments); }\r\n\r\n /** @beta */\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getContentSources(_token: IModelRpcProps, _options: ContentSourcesRpcRequestOptions): PresentationRpcResponse<ContentSourcesRpcResult> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getContentDescriptor(_token: IModelRpcProps, _options: ContentDescriptorRpcRequestOptions): PresentationRpcResponse<DescriptorJSON | undefined> {\r\n arguments[1] = { ...arguments[1], transport: \"unparsed-json\" };\r\n const response: PresentationRpcResponseData<DescriptorJSON | string | undefined> = await this.forward(arguments);\r\n if (response.statusCode === PresentationStatus.Success && typeof response.result === \"string\") {\r\n response.result = JSON.parse(response.result);\r\n }\r\n\r\n return response as PresentationRpcResponseData<DescriptorJSON | undefined>;\r\n }\r\n\r\n public async getContentSetSize(_token: IModelRpcProps, _options: ContentRpcRequestOptions): PresentationRpcResponse<number> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getPagedContent(_token: IModelRpcProps, _options: Paged<ContentRpcRequestOptions>): PresentationRpcResponse<{ descriptor: DescriptorJSON, contentSet: PagedResponse<ItemJSON> } | undefined> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getPagedContentSet(_token: IModelRpcProps, _options: Paged<ContentRpcRequestOptions>): PresentationRpcResponse<PagedResponse<ItemJSON>> { return this.forward(arguments); }\r\n\r\n /** @beta */\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getElementProperties(_token: IModelRpcProps, _options: SingleElementPropertiesRpcRequestOptions): PresentationRpcResponse<ElementProperties | undefined> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getPagedDistinctValues(_token: IModelRpcProps, _options: DistinctValuesRpcRequestOptions): PresentationRpcResponse<PagedResponse<DisplayValueGroupJSON>> { return this.forward(arguments); }\r\n\r\n /** @beta */\r\n public async getContentInstanceKeys(_token: IModelRpcProps, _options: ContentInstanceKeysRpcRequestOptions): PresentationRpcResponse<{ total: number, items: KeySetJSON }> { return this.forward(arguments); }\r\n\r\n public async getDisplayLabelDefinition(_token: IModelRpcProps, _options: DisplayLabelRpcRequestOptions): PresentationRpcResponse<LabelDefinitionJSON> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getPagedDisplayLabelDefinitions(_token: IModelRpcProps, _options: DisplayLabelsRpcRequestOptions): PresentationRpcResponse<PagedResponse<LabelDefinitionJSON>> { return this.forward(arguments); }\r\n\r\n public async getSelectionScopes(_token: IModelRpcProps, _options: SelectionScopeRpcRequestOptions): PresentationRpcResponse<SelectionScope[]> { return this.forward(arguments); }\r\n\r\n // TODO: need to enforce paging on this\r\n public async computeSelection(_token: IModelRpcProps, _options: SelectionScopeRpcRequestOptions, _ids: Id64String[], _scopeId: string): PresentationRpcResponse<KeySetJSON>;\r\n /** @alpha */\r\n public async computeSelection(_token: IModelRpcProps, _options: ComputeSelectionRpcRequestOptions): PresentationRpcResponse<KeySetJSON>;\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async computeSelection(_token: IModelRpcProps, _options: ComputeSelectionRpcRequestOptions | SelectionScopeRpcRequestOptions, _ids?: Id64String[], _scopeId?: string): PresentationRpcResponse<KeySetJSON> { return this.forward(arguments); }\r\n}\r\n\r\n/** @alpha */\r\nexport enum PresentationIpcEvents {\r\n /**\r\n * ID of an event that's emitted when backend detects changes in presented data.\r\n */\r\n Update = \"presentation.onUpdate\",\r\n}\r\n"]}
1
+ {"version":3,"file":"PresentationRpcInterface.js","sourceRoot":"","sources":["../../../src/presentation-common/PresentationRpcInterface.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module RPC\r\n */\r\n\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\nimport { IModelRpcProps, RpcInterface, RpcOperation } from \"@itwin/core-common\";\r\nimport { DescriptorJSON, DescriptorOverrides, SelectClassInfoJSON } from \"./content/Descriptor\";\r\nimport { ItemJSON } from \"./content/Item\";\r\nimport { DisplayValueGroupJSON } from \"./content/Value\";\r\nimport { ClientDiagnostics, ClientDiagnosticsOptions } from \"./Diagnostics\";\r\nimport { CompressedClassInfoJSON, InstanceKeyJSON } from \"./EC\";\r\nimport { ElementProperties } from \"./ElementProperties\";\r\nimport { PresentationStatus } from \"./Error\";\r\nimport { NodeKeyJSON } from \"./hierarchy/Key\";\r\nimport { NodeJSON } from \"./hierarchy/Node\";\r\nimport { NodePathElementJSON } from \"./hierarchy/NodePathElement\";\r\nimport { KeySetJSON } from \"./KeySet\";\r\nimport { LabelDefinitionJSON } from \"./LabelDefinition\";\r\nimport {\r\n ComputeSelectionRequestOptions, ContentDescriptorRequestOptions, ContentInstanceKeysRequestOptions, ContentRequestOptions,\r\n ContentSourcesRequestOptions, DisplayLabelRequestOptions, DisplayLabelsRequestOptions, DistinctValuesRequestOptions,\r\n FilterByInstancePathsHierarchyRequestOptions, FilterByTextHierarchyRequestOptions, HierarchyRequestOptions, Paged, SelectionScopeRequestOptions,\r\n SingleElementPropertiesRequestOptions,\r\n} from \"./PresentationManagerOptions\";\r\nimport { RulesetVariableJSON } from \"./RulesetVariables\";\r\nimport { SelectionScope } from \"./selection/SelectionScope\";\r\nimport { Omit, PagedResponse } from \"./Utils\";\r\n\r\n/**\r\n * Base options for all presentation RPC requests.\r\n * @public\r\n */\r\nexport type PresentationRpcRequestOptions<TManagerRequestOptions> = Omit<TManagerRequestOptions, \"imodel\" | \"diagnostics\"> & {\r\n /** @internal ID of the client requesting data */\r\n clientId?: string;\r\n /**\r\n * RPC request diagnostics options.\r\n * @beta\r\n */\r\n diagnostics?: RpcDiagnosticsOptions;\r\n};\r\n\r\n/**\r\n * Data structure for presentation RPC responses\r\n * @public\r\n */\r\nexport interface PresentationRpcResponseData<TResult = undefined> {\r\n /** Response status code */\r\n statusCode: PresentationStatus;\r\n /** In case of an error response, the error message */\r\n errorMessage?: string;\r\n /** In case of a success response, the result */\r\n result?: TResult;\r\n /**\r\n * Diagnostics response.\r\n * @beta\r\n */\r\n diagnostics?: ClientDiagnostics;\r\n}\r\n\r\n/**\r\n * Data structure for RPC diagnostics options.\r\n * @beta\r\n */\r\nexport type RpcDiagnosticsOptions = Omit<ClientDiagnosticsOptions, \"handler\">;\r\n\r\n/**\r\n * A promise of [[PresentationRpcResponseData]].\r\n * @public\r\n */\r\nexport type PresentationRpcResponse<TResult = undefined> = Promise<PresentationRpcResponseData<TResult>>;\r\n\r\n/**\r\n * Data structure for hierarchy request options.\r\n * @public\r\n */\r\nexport type HierarchyRpcRequestOptions = PresentationRpcRequestOptions<HierarchyRequestOptions<never, NodeKeyJSON, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for filtering hierarchy by ECInstance paths request options.\r\n * @public\r\n */\r\nexport type FilterByInstancePathsHierarchyRpcRequestOptions = PresentationRpcRequestOptions<FilterByInstancePathsHierarchyRequestOptions<never, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for filtering hierarchy by text request options.\r\n * @public\r\n */\r\nexport type FilterByTextHierarchyRpcRequestOptions = PresentationRpcRequestOptions<FilterByTextHierarchyRequestOptions<never, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for content sources RPC request options.\r\n * @beta\r\n */\r\nexport type ContentSourcesRpcRequestOptions = PresentationRpcRequestOptions<ContentSourcesRequestOptions<never>>;\r\n/**\r\n * Data structure for content sources RPC response.\r\n * @beta\r\n */\r\nexport interface ContentSourcesRpcResult {\r\n /** A list of objects containing content source information. */\r\n sources: SelectClassInfoJSON<Id64String>[];\r\n /** An `ECClassId` => [[CompressedClassInfoJSON]] map for deserializing [[sources]]. */\r\n classesMap: { [id: string]: CompressedClassInfoJSON };\r\n}\r\n\r\n/**\r\n * Data structure for content descriptor RPC request options.\r\n * @public\r\n */\r\nexport type ContentDescriptorRpcRequestOptions = PresentationRpcRequestOptions<ContentDescriptorRequestOptions<never, KeySetJSON, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for content RPC request options.\r\n * @public\r\n */\r\nexport type ContentRpcRequestOptions = PresentationRpcRequestOptions<ContentRequestOptions<never, DescriptorOverrides, KeySetJSON, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for single element properties RPC request options.\r\n * @beta\r\n */\r\nexport type SingleElementPropertiesRpcRequestOptions = PresentationRpcRequestOptions<SingleElementPropertiesRequestOptions<never>>;\r\n\r\n/**\r\n * Data structure for distinct values' request options.\r\n * @public\r\n */\r\nexport type DistinctValuesRpcRequestOptions = PresentationRpcRequestOptions<DistinctValuesRequestOptions<never, DescriptorOverrides, KeySetJSON, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for content instance keys' request options.\r\n * @beta\r\n */\r\nexport type ContentInstanceKeysRpcRequestOptions = PresentationRpcRequestOptions<ContentInstanceKeysRequestOptions<never, KeySetJSON, RulesetVariableJSON>>;\r\n\r\n/**\r\n * Data structure for label request options.\r\n * @public\r\n */\r\nexport type DisplayLabelRpcRequestOptions = PresentationRpcRequestOptions<DisplayLabelRequestOptions<never, InstanceKeyJSON>>;\r\n\r\n/**\r\n * Data structure for labels request options.\r\n * @public\r\n */\r\nexport type DisplayLabelsRpcRequestOptions = PresentationRpcRequestOptions<DisplayLabelsRequestOptions<never, InstanceKeyJSON>>;\r\n\r\n/**\r\n * Data structure for selection scope request options.\r\n * @public\r\n */\r\nexport type SelectionScopeRpcRequestOptions = PresentationRpcRequestOptions<SelectionScopeRequestOptions<never>>;\r\n\r\n/**\r\n * @alpha\r\n */\r\nexport type ComputeSelectionRpcRequestOptions = PresentationRpcRequestOptions<ComputeSelectionRequestOptions<never>>;\r\n\r\n/**\r\n * Interface used for communication between Presentation backend and frontend.\r\n * @public\r\n */\r\nexport class PresentationRpcInterface extends RpcInterface {\r\n /** The immutable name of the interface. */\r\n public static readonly interfaceName = \"PresentationRpcInterface\"; // eslint-disable-line @typescript-eslint/naming-convention\r\n\r\n /** The semantic version of the interface. */\r\n public static interfaceVersion = \"3.1.0\";\r\n\r\n /*===========================================================================================\r\n NOTE: Any add/remove/change to the methods below requires an update of the interface version.\r\n NOTE: Please consult the README in core/common/src/rpc for the semantic versioning rules.\r\n ===========================================================================================*/\r\n\r\n public async getNodesCount(_token: IModelRpcProps, _options: HierarchyRpcRequestOptions): PresentationRpcResponse<number> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getPagedNodes(_token: IModelRpcProps, _options: Paged<HierarchyRpcRequestOptions>): PresentationRpcResponse<PagedResponse<NodeJSON>> { return this.forward(arguments); }\r\n\r\n // TODO: add paged version of this (#387280)\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getNodePaths(_token: IModelRpcProps, _options: FilterByInstancePathsHierarchyRpcRequestOptions): PresentationRpcResponse<NodePathElementJSON[]> { return this.forward(arguments); }\r\n\r\n // TODO: add paged version of this (#387280)\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getFilteredNodePaths(_token: IModelRpcProps, _options: FilterByTextHierarchyRpcRequestOptions): PresentationRpcResponse<NodePathElementJSON[]> { return this.forward(arguments); }\r\n\r\n /** @beta */\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getContentSources(_token: IModelRpcProps, _options: ContentSourcesRpcRequestOptions): PresentationRpcResponse<ContentSourcesRpcResult> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getContentDescriptor(_token: IModelRpcProps, _options: ContentDescriptorRpcRequestOptions): PresentationRpcResponse<DescriptorJSON | undefined> {\r\n arguments[1] = { ...arguments[1], transport: \"unparsed-json\" };\r\n const response: PresentationRpcResponseData<DescriptorJSON | string | undefined> = await this.forward(arguments);\r\n if (response.statusCode === PresentationStatus.Success && typeof response.result === \"string\") {\r\n response.result = JSON.parse(response.result);\r\n }\r\n\r\n return response as PresentationRpcResponseData<DescriptorJSON | undefined>;\r\n }\r\n\r\n public async getContentSetSize(_token: IModelRpcProps, _options: ContentRpcRequestOptions): PresentationRpcResponse<number> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getPagedContent(_token: IModelRpcProps, _options: Paged<ContentRpcRequestOptions>): PresentationRpcResponse<{ descriptor: DescriptorJSON, contentSet: PagedResponse<ItemJSON> } | undefined> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getPagedContentSet(_token: IModelRpcProps, _options: Paged<ContentRpcRequestOptions>): PresentationRpcResponse<PagedResponse<ItemJSON>> { return this.forward(arguments); }\r\n\r\n /** @beta */\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getElementProperties(_token: IModelRpcProps, _options: SingleElementPropertiesRpcRequestOptions): PresentationRpcResponse<ElementProperties | undefined> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getPagedDistinctValues(_token: IModelRpcProps, _options: DistinctValuesRpcRequestOptions): PresentationRpcResponse<PagedResponse<DisplayValueGroupJSON>> { return this.forward(arguments); }\r\n\r\n /** @beta */\r\n public async getContentInstanceKeys(_token: IModelRpcProps, _options: ContentInstanceKeysRpcRequestOptions): PresentationRpcResponse<{ total: number, items: KeySetJSON }> { return this.forward(arguments); }\r\n\r\n public async getDisplayLabelDefinition(_token: IModelRpcProps, _options: DisplayLabelRpcRequestOptions): PresentationRpcResponse<LabelDefinitionJSON> { return this.forward(arguments); }\r\n\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async getPagedDisplayLabelDefinitions(_token: IModelRpcProps, _options: DisplayLabelsRpcRequestOptions): PresentationRpcResponse<PagedResponse<LabelDefinitionJSON>> { return this.forward(arguments); }\r\n\r\n public async getSelectionScopes(_token: IModelRpcProps, _options: SelectionScopeRpcRequestOptions): PresentationRpcResponse<SelectionScope[]> { return this.forward(arguments); }\r\n\r\n // TODO: need to enforce paging on this\r\n public async computeSelection(_token: IModelRpcProps, _options: SelectionScopeRpcRequestOptions, _ids: Id64String[], _scopeId: string): PresentationRpcResponse<KeySetJSON>;\r\n /** @alpha */\r\n public async computeSelection(_token: IModelRpcProps, _options: ComputeSelectionRpcRequestOptions): PresentationRpcResponse<KeySetJSON>;\r\n @RpcOperation.setPolicy({ allowResponseCompression: true })\r\n public async computeSelection(_token: IModelRpcProps, _options: ComputeSelectionRpcRequestOptions | SelectionScopeRpcRequestOptions, _ids?: Id64String[], _scopeId?: string): PresentationRpcResponse<KeySetJSON> { return this.forward(arguments); }\r\n}\r\n\r\n/** @alpha */\r\nexport enum PresentationIpcEvents {\r\n /**\r\n * ID of an event that's emitted when backend detects changes in presented data.\r\n */\r\n Update = \"presentation.onUpdate\",\r\n}\r\n"]}
@@ -149,10 +149,9 @@ const createComparison = (type, name, operator, value) => {
149
149
  compareValue = value.toString();
150
150
  break;
151
151
  }
152
- if (type.typeName === "navigation" && typeof value === "object" && core_bentley_1.Id64.isId64(value.id)) {
152
+ if (type.typeName === "navigation" && typeof value === "object" && core_bentley_1.Id64.isId64(value.id))
153
153
  // note: this is temporary until we support hex ids in instance filters
154
154
  compareValue = hexToDec(value.id);
155
- }
156
155
  if (type.typeName === "point2d" || type.typeName === "point3d") {
157
156
  if (typeof value !== "object")
158
157
  throw new Error("Expecting point values to be supplied as objects");
@@ -167,12 +166,10 @@ const createComparison = (type, name, operator, value) => {
167
166
  comparison += ` AND ${createComparison(dimensionType, `${name}.z`, operator, pointValue.z)}`;
168
167
  return comparison;
169
168
  }
170
- if (type.typeName === "double") {
169
+ if (type.typeName === "double")
171
170
  return `CompareDoubles(${name}, ${compareValue}) ${operator} 0`;
172
- }
173
- if (type.typeName === "dateTime") {
171
+ if (type.typeName === "dateTime")
174
172
  return `CompareDateTimes(${name}, ${compareValue}) ${operator} 0`;
175
- }
176
173
  return `${name} ${operator} ${compareValue}`;
177
174
  };
178
175
  const createMultiClassSpecification = (classInfo) => {