@itwin/grouping-mapping-widget 0.3.5 → 0.5.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.
Files changed (195) hide show
  1. package/lib/cjs/formula/FormulaDataTypeResolver.d.ts +12 -0
  2. package/lib/cjs/formula/FormulaDataTypeResolver.js +50 -0
  3. package/lib/cjs/formula/FormulaDataTypeResolver.js.map +1 -0
  4. package/lib/cjs/formula/FormulaFunctionProvider.js +59 -59
  5. package/lib/cjs/formula/FormulaFunctionProvider.js.map +1 -1
  6. package/lib/cjs/formula/FormulaOperatorsProvider.js +7 -7
  7. package/lib/cjs/formula/FormulaOperatorsProvider.js.map +1 -1
  8. package/lib/cjs/formula/FormulaTokensDataTypeResolver.d.ts +6 -0
  9. package/lib/cjs/formula/{FormulaTokensValidator.js → FormulaTokensDataTypeResolver.js} +32 -32
  10. package/lib/cjs/formula/FormulaTokensDataTypeResolver.js.map +1 -0
  11. package/lib/cjs/formula/Types.d.ts +2 -2
  12. package/lib/cjs/formula/Types.js.map +1 -1
  13. package/lib/cjs/grouping-mapping-widget.d.ts +9 -0
  14. package/lib/cjs/grouping-mapping-widget.js +9 -1
  15. package/lib/cjs/grouping-mapping-widget.js.map +1 -1
  16. package/lib/cjs/widget/GroupingMappingWidget.d.ts +3 -4
  17. package/lib/cjs/widget/GroupingMappingWidget.js +3 -4
  18. package/lib/cjs/widget/GroupingMappingWidget.js.map +1 -1
  19. package/lib/cjs/widget/IMappingClient.d.ts +327 -0
  20. package/lib/cjs/widget/IMappingClient.js +7 -0
  21. package/lib/cjs/widget/IMappingClient.js.map +1 -0
  22. package/lib/cjs/widget/components/CalculatedPropertyAction.js +7 -5
  23. package/lib/cjs/widget/components/CalculatedPropertyAction.js.map +1 -1
  24. package/lib/cjs/widget/components/CalculatedPropertyTable.js +6 -5
  25. package/lib/cjs/widget/components/CalculatedPropertyTable.js.map +1 -1
  26. package/lib/cjs/widget/components/ConfirmMappingsImport.js +6 -4
  27. package/lib/cjs/widget/components/ConfirmMappingsImport.js.map +1 -1
  28. package/lib/cjs/widget/components/CustomCalculationAction.js +7 -5
  29. package/lib/cjs/widget/components/CustomCalculationAction.js.map +1 -1
  30. package/lib/cjs/widget/components/CustomCalculationTable.js +6 -5
  31. package/lib/cjs/widget/components/CustomCalculationTable.js.map +1 -1
  32. package/lib/cjs/widget/components/GroupAction.d.ts +2 -1
  33. package/lib/cjs/widget/components/GroupAction.js +21 -13
  34. package/lib/cjs/widget/components/GroupAction.js.map +1 -1
  35. package/lib/cjs/widget/components/GroupPropertyAction.js +19 -9
  36. package/lib/cjs/widget/components/GroupPropertyAction.js.map +1 -1
  37. package/lib/cjs/widget/components/GroupPropertyTable.js +6 -5
  38. package/lib/cjs/widget/components/GroupPropertyTable.js.map +1 -1
  39. package/lib/cjs/widget/components/GroupQueryBuilderContainer.js +8 -5
  40. package/lib/cjs/widget/components/GroupQueryBuilderContainer.js.map +1 -1
  41. package/lib/cjs/widget/components/GroupTile.d.ts +13 -0
  42. package/lib/cjs/widget/components/GroupTile.js +18 -0
  43. package/lib/cjs/widget/components/GroupTile.js.map +1 -0
  44. package/lib/cjs/widget/components/GroupTile.scss +32 -0
  45. package/lib/cjs/widget/components/Grouping.js +215 -165
  46. package/lib/cjs/widget/components/Grouping.js.map +1 -1
  47. package/lib/cjs/widget/components/Grouping.scss +39 -4
  48. package/lib/cjs/widget/components/GroupingMapping.d.ts +18 -11
  49. package/lib/cjs/widget/components/GroupingMapping.js +24 -15
  50. package/lib/cjs/widget/components/GroupingMapping.js.map +1 -1
  51. package/lib/cjs/widget/components/Mapping.js +20 -16
  52. package/lib/cjs/widget/components/Mapping.js.map +1 -1
  53. package/lib/cjs/widget/components/MappingAction.js +7 -5
  54. package/lib/cjs/widget/components/MappingAction.js.map +1 -1
  55. package/lib/cjs/widget/components/PropertyMenu.js +17 -18
  56. package/lib/cjs/widget/components/PropertyMenu.js.map +1 -1
  57. package/lib/cjs/widget/components/QueryBuilder.d.ts +10 -5
  58. package/lib/cjs/widget/components/QueryBuilder.js +223 -142
  59. package/lib/cjs/widget/components/QueryBuilder.js.map +1 -1
  60. package/lib/cjs/widget/components/SelectIModel.js +13 -4
  61. package/lib/cjs/widget/components/SelectIModel.js.map +1 -1
  62. package/lib/cjs/widget/components/SelectMappings.js +9 -7
  63. package/lib/cjs/widget/components/SelectMappings.js.map +1 -1
  64. package/lib/cjs/widget/components/SelectProject.js +13 -4
  65. package/lib/cjs/widget/components/SelectProject.js.map +1 -1
  66. package/lib/cjs/widget/components/{GroupQueryBuilderContext.d.ts → context/GroupQueryBuilderContext.d.ts} +2 -1
  67. package/lib/cjs/widget/components/{GroupQueryBuilderContext.js → context/GroupQueryBuilderContext.js} +2 -1
  68. package/lib/cjs/widget/components/context/GroupQueryBuilderContext.js.map +1 -0
  69. package/lib/cjs/widget/components/context/GroupingApiConfigContext.d.ts +11 -0
  70. package/lib/cjs/widget/components/context/GroupingApiConfigContext.js +37 -0
  71. package/lib/cjs/widget/components/context/GroupingApiConfigContext.js.map +1 -0
  72. package/lib/cjs/widget/components/context/MappingClientContext.d.ts +7 -0
  73. package/lib/cjs/widget/components/context/MappingClientContext.js +30 -0
  74. package/lib/cjs/widget/components/context/MappingClientContext.js.map +1 -0
  75. package/lib/cjs/widget/components/property-grid/PropertyGrid.d.ts +1 -1
  76. package/lib/cjs/widget/components/property-grid/PropertyGrid.js +5 -5
  77. package/lib/cjs/widget/components/property-grid/PropertyGrid.js.map +1 -1
  78. package/lib/cjs/widget/components/property-grid/PropertyGridWrapper.d.ts +1 -1
  79. package/lib/cjs/widget/components/property-grid/PropertyGridWrapper.js +2 -2
  80. package/lib/cjs/widget/components/property-grid/PropertyGridWrapper.js.map +1 -1
  81. package/lib/cjs/widget/components/property-grid/PropertyView.js +14 -6
  82. package/lib/cjs/widget/components/property-grid/PropertyView.js.map +1 -1
  83. package/lib/cjs/widget/components/utils.d.ts +6 -2
  84. package/lib/cjs/widget/components/utils.js +9 -13
  85. package/lib/cjs/widget/components/utils.js.map +1 -1
  86. package/lib/cjs/widget/components/utils.scss +12 -3
  87. package/lib/cjs/widget/components/viewerUtils.d.ts +19 -0
  88. package/lib/cjs/widget/components/viewerUtils.js +224 -3
  89. package/lib/cjs/widget/components/viewerUtils.js.map +1 -1
  90. package/lib/cjs/widget/hooks/useFormulaValidation.js +3 -2
  91. package/lib/cjs/widget/hooks/useFormulaValidation.js.map +1 -1
  92. package/lib/esm/formula/FormulaDataTypeResolver.d.ts +12 -0
  93. package/lib/esm/formula/FormulaDataTypeResolver.js +46 -0
  94. package/lib/esm/formula/FormulaDataTypeResolver.js.map +1 -0
  95. package/lib/esm/formula/FormulaFunctionProvider.js +59 -59
  96. package/lib/esm/formula/FormulaFunctionProvider.js.map +1 -1
  97. package/lib/esm/formula/FormulaOperatorsProvider.js +7 -7
  98. package/lib/esm/formula/FormulaOperatorsProvider.js.map +1 -1
  99. package/lib/esm/formula/FormulaTokensDataTypeResolver.d.ts +6 -0
  100. package/lib/esm/formula/{FormulaTokensValidator.js → FormulaTokensDataTypeResolver.js} +30 -30
  101. package/lib/esm/formula/FormulaTokensDataTypeResolver.js.map +1 -0
  102. package/lib/esm/formula/Types.d.ts +2 -2
  103. package/lib/esm/formula/Types.js.map +1 -1
  104. package/lib/esm/grouping-mapping-widget.d.ts +9 -0
  105. package/lib/esm/grouping-mapping-widget.js +6 -0
  106. package/lib/esm/grouping-mapping-widget.js.map +1 -1
  107. package/lib/esm/widget/GroupingMappingWidget.d.ts +3 -4
  108. package/lib/esm/widget/GroupingMappingWidget.js +3 -4
  109. package/lib/esm/widget/GroupingMappingWidget.js.map +1 -1
  110. package/lib/esm/widget/IMappingClient.d.ts +327 -0
  111. package/lib/esm/widget/IMappingClient.js +6 -0
  112. package/lib/esm/widget/IMappingClient.js.map +1 -0
  113. package/lib/esm/widget/components/CalculatedPropertyAction.js +9 -7
  114. package/lib/esm/widget/components/CalculatedPropertyAction.js.map +1 -1
  115. package/lib/esm/widget/components/CalculatedPropertyTable.js +7 -6
  116. package/lib/esm/widget/components/CalculatedPropertyTable.js.map +1 -1
  117. package/lib/esm/widget/components/ConfirmMappingsImport.js +8 -6
  118. package/lib/esm/widget/components/ConfirmMappingsImport.js.map +1 -1
  119. package/lib/esm/widget/components/CustomCalculationAction.js +9 -7
  120. package/lib/esm/widget/components/CustomCalculationAction.js.map +1 -1
  121. package/lib/esm/widget/components/CustomCalculationTable.js +7 -6
  122. package/lib/esm/widget/components/CustomCalculationTable.js.map +1 -1
  123. package/lib/esm/widget/components/GroupAction.d.ts +2 -1
  124. package/lib/esm/widget/components/GroupAction.js +24 -16
  125. package/lib/esm/widget/components/GroupAction.js.map +1 -1
  126. package/lib/esm/widget/components/GroupPropertyAction.js +21 -11
  127. package/lib/esm/widget/components/GroupPropertyAction.js.map +1 -1
  128. package/lib/esm/widget/components/GroupPropertyTable.js +7 -6
  129. package/lib/esm/widget/components/GroupPropertyTable.js.map +1 -1
  130. package/lib/esm/widget/components/GroupQueryBuilderContainer.js +8 -5
  131. package/lib/esm/widget/components/GroupQueryBuilderContainer.js.map +1 -1
  132. package/lib/esm/widget/components/GroupTile.d.ts +13 -0
  133. package/lib/esm/widget/components/GroupTile.js +11 -0
  134. package/lib/esm/widget/components/GroupTile.js.map +1 -0
  135. package/lib/esm/widget/components/GroupTile.scss +32 -0
  136. package/lib/esm/widget/components/Grouping.js +220 -170
  137. package/lib/esm/widget/components/Grouping.js.map +1 -1
  138. package/lib/esm/widget/components/Grouping.scss +39 -4
  139. package/lib/esm/widget/components/GroupingMapping.d.ts +18 -11
  140. package/lib/esm/widget/components/GroupingMapping.js +25 -15
  141. package/lib/esm/widget/components/GroupingMapping.js.map +1 -1
  142. package/lib/esm/widget/components/Mapping.js +22 -18
  143. package/lib/esm/widget/components/Mapping.js.map +1 -1
  144. package/lib/esm/widget/components/MappingAction.js +9 -7
  145. package/lib/esm/widget/components/MappingAction.js.map +1 -1
  146. package/lib/esm/widget/components/PropertyMenu.js +20 -21
  147. package/lib/esm/widget/components/PropertyMenu.js.map +1 -1
  148. package/lib/esm/widget/components/QueryBuilder.d.ts +10 -5
  149. package/lib/esm/widget/components/QueryBuilder.js +224 -143
  150. package/lib/esm/widget/components/QueryBuilder.js.map +1 -1
  151. package/lib/esm/widget/components/SelectIModel.js +14 -5
  152. package/lib/esm/widget/components/SelectIModel.js.map +1 -1
  153. package/lib/esm/widget/components/SelectMappings.js +11 -9
  154. package/lib/esm/widget/components/SelectMappings.js.map +1 -1
  155. package/lib/esm/widget/components/SelectProject.js +14 -5
  156. package/lib/esm/widget/components/SelectProject.js.map +1 -1
  157. package/lib/esm/widget/components/{GroupQueryBuilderContext.d.ts → context/GroupQueryBuilderContext.d.ts} +2 -1
  158. package/lib/esm/widget/components/{GroupQueryBuilderContext.js → context/GroupQueryBuilderContext.js} +2 -1
  159. package/lib/esm/widget/components/context/GroupQueryBuilderContext.js.map +1 -0
  160. package/lib/esm/widget/components/context/GroupingApiConfigContext.d.ts +11 -0
  161. package/lib/esm/widget/components/context/GroupingApiConfigContext.js +14 -0
  162. package/lib/esm/widget/components/context/GroupingApiConfigContext.js.map +1 -0
  163. package/lib/esm/widget/components/context/MappingClientContext.d.ts +7 -0
  164. package/lib/esm/widget/components/context/MappingClientContext.js +25 -0
  165. package/lib/esm/widget/components/context/MappingClientContext.js.map +1 -0
  166. package/lib/esm/widget/components/property-grid/PropertyGrid.d.ts +1 -1
  167. package/lib/esm/widget/components/property-grid/PropertyGrid.js +6 -6
  168. package/lib/esm/widget/components/property-grid/PropertyGrid.js.map +1 -1
  169. package/lib/esm/widget/components/property-grid/PropertyGridWrapper.d.ts +1 -1
  170. package/lib/esm/widget/components/property-grid/PropertyGridWrapper.js +2 -2
  171. package/lib/esm/widget/components/property-grid/PropertyGridWrapper.js.map +1 -1
  172. package/lib/esm/widget/components/property-grid/PropertyView.js +14 -6
  173. package/lib/esm/widget/components/property-grid/PropertyView.js.map +1 -1
  174. package/lib/esm/widget/components/utils.d.ts +6 -2
  175. package/lib/esm/widget/components/utils.js +6 -11
  176. package/lib/esm/widget/components/utils.js.map +1 -1
  177. package/lib/esm/widget/components/utils.scss +12 -3
  178. package/lib/esm/widget/components/viewerUtils.d.ts +19 -0
  179. package/lib/esm/widget/components/viewerUtils.js +207 -3
  180. package/lib/esm/widget/components/viewerUtils.js.map +1 -1
  181. package/lib/esm/widget/hooks/useFormulaValidation.js +3 -2
  182. package/lib/esm/widget/hooks/useFormulaValidation.js.map +1 -1
  183. package/package.json +29 -29
  184. package/lib/cjs/formula/FormulaTokensValidator.d.ts +0 -5
  185. package/lib/cjs/formula/FormulaTokensValidator.js.map +0 -1
  186. package/lib/cjs/formula/FormulaValidator.d.ts +0 -3
  187. package/lib/cjs/formula/FormulaValidator.js +0 -35
  188. package/lib/cjs/formula/FormulaValidator.js.map +0 -1
  189. package/lib/cjs/widget/components/GroupQueryBuilderContext.js.map +0 -1
  190. package/lib/esm/formula/FormulaTokensValidator.d.ts +0 -5
  191. package/lib/esm/formula/FormulaTokensValidator.js.map +0 -1
  192. package/lib/esm/formula/FormulaValidator.d.ts +0 -3
  193. package/lib/esm/formula/FormulaValidator.js +0 -31
  194. package/lib/esm/formula/FormulaValidator.js.map +0 -1
  195. package/lib/esm/widget/components/GroupQueryBuilderContext.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormulaTokensDataTypeResolver.js","sourceRoot":"","sources":["../../../src/formula/FormulaTokensDataTypeResolver.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\nimport { getFormulaFunctionReturnType, getFunction } from \"./FormulaFunctionProvider\";\nimport { getOperatorArgumentCountBounds, getOperatorReturnType, isOperator } from \"./FormulaOperatorsProvider\";\nimport type { Token } from \"./InfixToPostfixConverter\";\nimport { TokenType } from \"./InfixToPostfixConverter\";\nimport type { IResult } from \"./IResult\";\nimport type { Queue } from \"./Queue\";\nimport { Stack } from \"./Stack\";\nimport type { DataType, PossibleDataType, PropertyMap } from \"./Types\";\n\nfunction isNumericalConstant(name: string): boolean {\n return [\n \"e\",\n \"ln2\",\n \"ln10\",\n \"log2e\",\n \"log10e\",\n \"pi\",\n \"sqrt1_2\",\n \"sqrt2\",\n ].includes(name.toLowerCase());\n}\n\nexport function resolveTokensDataType(formulaName: string, tokens: Queue<Token>, properties: PropertyMap): IResult<DataType> {\n if (tokens.length === 0)\n return { errorMessage: \"Formula cannot be empty.\" };\n\n const argStack = new Stack<PossibleDataType>();\n\n while (tokens.length > 0) {\n const token = tokens.dequeue()!;\n\n switch (token.type) {\n case TokenType.Number:\n argStack.push(\"Number\");\n break;\n case TokenType.String:\n argStack.push(\"String\");\n break;\n case TokenType.Boolean:\n argStack.push(\"Boolean\");\n break;\n case TokenType.Null:\n argStack.push(\"Undefined\");\n break;\n case TokenType.Variable:\n const isConstant = isNumericalConstant(token.value);\n if (isConstant) {\n argStack.push(\"Number\");\n } else {\n if (token.value === formulaName)\n return { errorMessage: \"Formula cannot reference itself.\" };\n\n const prop = properties[token.value];\n if (!prop)\n return { errorMessage: `Variable \"${token.value}\" is not available.` };\n\n argStack.push(prop);\n }\n break;\n case TokenType.Operator:\n if (!isOperator(token.value))\n return { errorMessage: `Operator \"${token.value}\" is not supported.` };\n\n const operatorBounds = getOperatorArgumentCountBounds(token.value);\n if (!operatorBounds)\n return { errorMessage: `Operator \"${token.value}\" is not supported.` };\n\n if (operatorBounds[0] === 2 && token.argCount === 1)\n return { errorMessage: `Unary operator \"${token.value}\" is not supported.` };\n\n if (argStack.length < token.argCount) {\n return { errorMessage: `Too few arguments given for ${token.argCount === 1 ? \"unary\" : \"binary\"} operator \"${token.value}\".` };\n }\n const opArgs = argStack.popN(token.argCount).reverse();\n let operationResult;\n if (opArgs.length === 1)\n operationResult = getOperatorReturnType(token.value, opArgs[0]);\n else if (opArgs.length === 2)\n operationResult = getOperatorReturnType(token.value, opArgs[0], opArgs[1]);\n else\n return { errorMessage: `Operator \"${token.value}\" does not support ${token.argCount} operands.` };\n\n if (operationResult.errorMessage)\n return { errorMessage: operationResult.errorMessage };\n else\n argStack.push(operationResult.value!);\n\n break;\n case TokenType.Function:\n const fnArg = getFunction(token.value);\n if (!fnArg)\n return { errorMessage: `Function \"${token.value}\" is not supported.` };\n\n const fnArgBounds = fnArg.argumentCountBounds;\n if (fnArgBounds[0] === 0 && fnArgBounds[1] === 0 && token.argCount > 0) {\n return { errorMessage: `Function \"${token.value}\" does not accept any arguments.` };\n } else if (fnArgBounds[1] === -1 && token.argCount < fnArgBounds[0]) {\n if (fnArgBounds[0] === 1) {\n return { errorMessage: `Function \"${token.value}\" requires at least 1 argument.` };\n } else {\n if (token.argCount === 1) {\n return { errorMessage: `Function \"${token.value}\" requires at least ${fnArgBounds[0]} arguments, but only 1 argument was given.` };\n } else {\n return { errorMessage: `Function \"${token.value}\" requires at least ${fnArgBounds[0]} arguments, but only ${token.argCount} arguments were given.` };\n }\n }\n } else if (fnArgBounds[0] === fnArgBounds[1] && token.argCount !== fnArgBounds[0]) {\n if (fnArgBounds[0] === 1) {\n return { errorMessage: `Function \"${token.value}\" requires exactly 1 argument, but ${token.argCount} arguments were given.` };\n } else {\n if (token.argCount === 1) {\n return { errorMessage: `Function \"${token.value}\" requires exactly ${fnArgBounds[0]} arguments, but 1 argument was given.` };\n } else {\n return { errorMessage: `Function \"${token.value}\" requires exactly ${fnArgBounds[0]} arguments, but ${token.argCount} arguments were given.` };\n }\n }\n }\n\n const fArgs = argStack.popN(token.argCount).reverse();\n if (fArgs.length < token.argCount) {\n return { errorMessage: `Too few arguments given for function \"${token.value}\".` };\n }\n\n const functionResult = getFormulaFunctionReturnType(fnArg, fArgs);\n if (functionResult.errorMessage)\n return { errorMessage: `Function \"${token.value}\" is invalid. ${functionResult.errorMessage}` };\n else\n argStack.push(functionResult.value!);\n\n break;\n }\n }\n\n if (argStack.length !== 1) {\n return { errorMessage: \"Formula is invalid.\" };\n }\n\n const resultType = argStack.pop();\n if (!resultType || resultType === \"Undefined\") {\n return { errorMessage: \"Formula cannot always return null.\" };\n }\n\n return { value: resultType };\n}\n\n"]}
@@ -1,7 +1,7 @@
1
1
  export declare type ValueType = number | string | boolean;
2
2
  export declare type PossibleValueType = ValueType | undefined;
3
- export declare type DataType = "number" | "string" | "boolean";
4
- export declare type PossibleDataType = DataType | "undefined";
3
+ export declare type DataType = "Number" | "String" | "Boolean";
4
+ export declare type PossibleDataType = DataType | "Undefined";
5
5
  export interface PropertyMap {
6
6
  [key: string]: PossibleDataType;
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Types.js","sourceRoot":"","sources":["../../../src/formula/Types.ts"],"names":[],"mappings":"","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\nexport type ValueType = number | string | boolean;\n\nexport type PossibleValueType = ValueType | undefined;\n\nexport type DataType = \"number\" | \"string\" | \"boolean\";\n\nexport type PossibleDataType = DataType | \"undefined\";\n\nexport interface PropertyMap { [key: string]: PossibleDataType }\n"]}
1
+ {"version":3,"file":"Types.js","sourceRoot":"","sources":["../../../src/formula/Types.ts"],"names":[],"mappings":"","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\nexport type ValueType = number | string | boolean;\n\nexport type PossibleValueType = ValueType | undefined;\n\nexport type DataType = \"Number\" | \"String\" | \"Boolean\";\n\nexport type PossibleDataType = DataType | \"Undefined\";\n\nexport interface PropertyMap { [key: string]: PossibleDataType }\n"]}
@@ -1,7 +1,16 @@
1
1
  /** UI Provider for iTwin Viewer Applications */
2
2
  export * from "./widget/GroupingMappingWidget";
3
+ /** Interfaces for providing custom MappingClient */
4
+ export { createDefaultMappingClient } from "./widget/components/context/MappingClientContext";
5
+ export { ClientPrefix } from "./widget/components/context/GroupingApiConfigContext";
6
+ export * from "@itwin/insights-client";
7
+ export * from "./widget/IMappingClient";
3
8
  /** Internal components for custom UIs */
4
9
  export { Mappings } from "./widget/components/Mapping";
5
10
  export { Groupings } from "./widget/components/Grouping";
6
11
  export { PropertyMenu } from "./widget/components/PropertyMenu";
12
+ /** Formula DataType resolver */
13
+ export { resolveFormulaDataType } from "./formula/FormulaDataTypeResolver";
14
+ export { DataType, PropertyMap } from "./formula/Types";
15
+ export { IResult } from "./formula/IResult";
7
16
  //# sourceMappingURL=grouping-mapping-widget.d.ts.map
@@ -4,8 +4,14 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  /** UI Provider for iTwin Viewer Applications */
6
6
  export * from "./widget/GroupingMappingWidget";
7
+ /** Interfaces for providing custom MappingClient */
8
+ export { createDefaultMappingClient } from "./widget/components/context/MappingClientContext";
9
+ export * from "@itwin/insights-client";
10
+ export * from "./widget/IMappingClient";
7
11
  /** Internal components for custom UIs */
8
12
  export { Mappings } from "./widget/components/Mapping";
9
13
  export { Groupings } from "./widget/components/Grouping";
10
14
  export { PropertyMenu } from "./widget/components/PropertyMenu";
15
+ /** Formula DataType resolver */
16
+ export { resolveFormulaDataType } from "./formula/FormulaDataTypeResolver";
11
17
  //# sourceMappingURL=grouping-mapping-widget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"grouping-mapping-widget.js","sourceRoot":"","sources":["../../src/grouping-mapping-widget.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,gDAAgD;AAChD,cAAc,gCAAgC,CAAC;AAE/C,yCAAyC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** UI Provider for iTwin Viewer Applications */\nexport * from \"./widget/GroupingMappingWidget\";\n\n/** Internal components for custom UIs */\nexport { Mappings } from \"./widget/components/Mapping\";\nexport { Groupings } from \"./widget/components/Grouping\";\nexport { PropertyMenu } from \"./widget/components/PropertyMenu\";\n"]}
1
+ {"version":3,"file":"grouping-mapping-widget.js","sourceRoot":"","sources":["../../src/grouping-mapping-widget.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,gDAAgD;AAChD,cAAc,gCAAgC,CAAC;AAE/C,oDAAoD;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,kDAAkD,CAAC;AAE9F,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AAExC,yCAAyC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAEhE,gCAAgC;AAChC,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** UI Provider for iTwin Viewer Applications */\nexport * from \"./widget/GroupingMappingWidget\";\n\n/** Interfaces for providing custom MappingClient */\nexport { createDefaultMappingClient } from \"./widget/components/context/MappingClientContext\";\nexport { ClientPrefix } from \"./widget/components/context/GroupingApiConfigContext\";\nexport * from \"@itwin/insights-client\";\nexport * from \"./widget/IMappingClient\";\n\n/** Internal components for custom UIs */\nexport { Mappings } from \"./widget/components/Mapping\";\nexport { Groupings } from \"./widget/components/Grouping\";\nexport { PropertyMenu } from \"./widget/components/PropertyMenu\";\n\n/** Formula DataType resolver */\nexport { resolveFormulaDataType } from \"./formula/FormulaDataTypeResolver\";\nexport { DataType, PropertyMap } from \"./formula/Types\";\nexport { IResult } from \"./formula/IResult\";\n"]}
@@ -1,11 +1,10 @@
1
1
  import type { AbstractWidgetProps, UiItemsProvider } from "@itwin/appui-abstract";
2
2
  import { AbstractZoneLocation, StagePanelLocation, StagePanelSection } from "@itwin/appui-abstract";
3
- import type { AccessToken } from "@itwin/core-bentley";
3
+ import type { GroupingMappingProps } from "./components/GroupingMapping";
4
4
  export declare class GroupingMappingProvider implements UiItemsProvider {
5
+ private readonly _props;
5
6
  readonly id = "GroupingMappingProvider";
6
- private readonly _accessToken?;
7
- private readonly _prefix?;
8
- constructor(accessToken?: AccessToken, prefix?: "" | "dev" | "qa");
7
+ constructor(_props?: GroupingMappingProps);
9
8
  provideWidgets(_stageId: string, stageUsage: string, location: StagePanelLocation, section?: StagePanelSection, zonelocation?: AbstractZoneLocation): ReadonlyArray<AbstractWidgetProps>;
10
9
  }
11
10
  //# sourceMappingURL=GroupingMappingWidget.d.ts.map
@@ -2,10 +2,9 @@ import { AbstractZoneLocation, StagePanelLocation, StagePanelSection, StageUsage
2
2
  import React from "react";
3
3
  import GroupingMapping from "./components/GroupingMapping";
4
4
  export class GroupingMappingProvider {
5
- constructor(accessToken, prefix) {
5
+ constructor(_props = {}) {
6
+ this._props = _props;
6
7
  this.id = "GroupingMappingProvider";
7
- this._accessToken = accessToken;
8
- this._prefix = prefix;
9
8
  }
10
9
  provideWidgets(_stageId, stageUsage, location, section, zonelocation) {
11
10
  const widgets = [];
@@ -17,7 +16,7 @@ export class GroupingMappingProvider {
17
16
  id: "GroupingMappingWidget",
18
17
  label: "Grouping & Mapping",
19
18
  getWidgetContent: () => {
20
- return React.createElement(GroupingMapping, { accessToken: this._accessToken, prefix: this._prefix });
19
+ return React.createElement(GroupingMapping, { ...this._props });
21
20
  },
22
21
  };
23
22
  widgets.push(GroupingMappingWidget);
@@ -1 +1 @@
1
- {"version":3,"file":"GroupingMappingWidget.js","sourceRoot":"","sources":["../../../src/widget/GroupingMappingWidget.tsx"],"names":[],"mappings":"AAQA,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,GACX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAE3D,MAAM,OAAO,uBAAuB;IAMlC,YAAY,WAAyB,EAAE,MAA0B;QALjD,OAAE,GAAG,yBAAyB,CAAC;QAM7C,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAEM,cAAc,CACnB,QAAgB,EAChB,UAAkB,EAClB,QAA4B,EAC5B,OAA2B,EAC3B,YAAmC;QAEnC,MAAM,OAAO,GAA0B,EAAE,CAAC;QAC1C,IACE,CAAC,QAAQ,KAAK,kBAAkB,CAAC,IAAI;YACnC,OAAO,KAAK,iBAAiB,CAAC,KAAK;YACnC,UAAU,KAAK,UAAU,CAAC,OAAO,CAAC;YACpC,YAAY,KAAK,oBAAoB,CAAC,UAAU,EAChD;YACA,MAAM,qBAAqB,GAAwB;gBACjD,EAAE,EAAE,uBAAuB;gBAC3B,KAAK,EAAE,oBAAoB;gBAC3B,gBAAgB,EAAE,GAAG,EAAE;oBACrB,OAAO,oBAAC,eAAe,IAAC,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,GAAI,CAAC;gBACnF,CAAC;aACF,CAAC;YAEF,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;SACrC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\nimport type {\n AbstractWidgetProps,\n UiItemsProvider,\n} from \"@itwin/appui-abstract\";\nimport {\n AbstractZoneLocation,\n StagePanelLocation,\n StagePanelSection,\n StageUsage,\n} from \"@itwin/appui-abstract\";\nimport type { AccessToken } from \"@itwin/core-bentley\";\nimport React from \"react\";\nimport GroupingMapping from \"./components/GroupingMapping\";\n\nexport class GroupingMappingProvider implements UiItemsProvider {\n public readonly id = \"GroupingMappingProvider\";\n\n private readonly _accessToken?: AccessToken;\n private readonly _prefix?: \"\" | \"dev\" | \"qa\";\n\n constructor(accessToken?: AccessToken, prefix?: \"\" | \"dev\" | \"qa\") {\n this._accessToken = accessToken;\n this._prefix = prefix;\n }\n\n public provideWidgets(\n _stageId: string,\n stageUsage: string,\n location: StagePanelLocation,\n section?: StagePanelSection,\n zonelocation?: AbstractZoneLocation\n ): ReadonlyArray<AbstractWidgetProps> {\n const widgets: AbstractWidgetProps[] = [];\n if (\n (location === StagePanelLocation.Left &&\n section === StagePanelSection.Start &&\n stageUsage === StageUsage.General) ||\n zonelocation === AbstractZoneLocation.CenterLeft\n ) {\n const GroupingMappingWidget: AbstractWidgetProps = {\n id: \"GroupingMappingWidget\",\n label: \"Grouping & Mapping\",\n getWidgetContent: () => {\n return <GroupingMapping accessToken={this._accessToken} prefix={this._prefix} />;\n },\n };\n\n widgets.push(GroupingMappingWidget);\n }\n\n return widgets;\n }\n}\n"]}
1
+ {"version":3,"file":"GroupingMappingWidget.js","sourceRoot":"","sources":["../../../src/widget/GroupingMappingWidget.tsx"],"names":[],"mappings":"AAQA,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,GACX,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAE3D,MAAM,OAAO,uBAAuB;IAGlC,YAA6B,SAA+B,EAAE;QAAjC,WAAM,GAAN,MAAM,CAA2B;QAF9C,OAAE,GAAG,yBAAyB,CAAC;IAEmB,CAAC;IAE5D,cAAc,CACnB,QAAgB,EAChB,UAAkB,EAClB,QAA4B,EAC5B,OAA2B,EAC3B,YAAmC;QAEnC,MAAM,OAAO,GAA0B,EAAE,CAAC;QAC1C,IACE,CAAC,QAAQ,KAAK,kBAAkB,CAAC,IAAI;YACnC,OAAO,KAAK,iBAAiB,CAAC,KAAK;YACnC,UAAU,KAAK,UAAU,CAAC,OAAO,CAAC;YACpC,YAAY,KAAK,oBAAoB,CAAC,UAAU,EAChD;YACA,MAAM,qBAAqB,GAAwB;gBACjD,EAAE,EAAE,uBAAuB;gBAC3B,KAAK,EAAE,oBAAoB;gBAC3B,gBAAgB,EAAE,GAAG,EAAE;oBACrB,OAAO,oBAAC,eAAe,OAAK,IAAI,CAAC,MAAM,GAAI,CAAC;gBAC9C,CAAC;aACF,CAAC;YAEF,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;SACrC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\nimport type {\n AbstractWidgetProps,\n UiItemsProvider,\n} from \"@itwin/appui-abstract\";\nimport {\n AbstractZoneLocation,\n StagePanelLocation,\n StagePanelSection,\n StageUsage,\n} from \"@itwin/appui-abstract\";\nimport React from \"react\";\nimport type { GroupingMappingProps } from \"./components/GroupingMapping\";\nimport GroupingMapping from \"./components/GroupingMapping\";\n\nexport class GroupingMappingProvider implements UiItemsProvider {\n public readonly id = \"GroupingMappingProvider\";\n\n constructor(private readonly _props: GroupingMappingProps = {}) { }\n\n public provideWidgets(\n _stageId: string,\n stageUsage: string,\n location: StagePanelLocation,\n section?: StagePanelSection,\n zonelocation?: AbstractZoneLocation\n ): ReadonlyArray<AbstractWidgetProps> {\n const widgets: AbstractWidgetProps[] = [];\n if (\n (location === StagePanelLocation.Left &&\n section === StagePanelSection.Start &&\n stageUsage === StageUsage.General) ||\n zonelocation === AbstractZoneLocation.CenterLeft\n ) {\n const GroupingMappingWidget: AbstractWidgetProps = {\n id: \"GroupingMappingWidget\",\n label: \"Grouping & Mapping\",\n getWidgetContent: () => {\n return <GroupingMapping {...this._props} />;\n },\n };\n\n widgets.push(GroupingMappingWidget);\n }\n\n return widgets;\n }\n}\n"]}
@@ -0,0 +1,327 @@
1
+ import type { AccessToken } from "@itwin/core-bentley";
2
+ import type { CalculatedProperty, CalculatedPropertyCreate, CalculatedPropertySingle, CalculatedPropertyUpdate, CustomCalculation, CustomCalculationCreate, CustomCalculationSingle, CustomCalculationUpdate, Group, GroupCreate, GroupProperty, GroupPropertyCreate, GroupPropertySingle, GroupPropertyUpdate, GroupSingle, GroupUpdate, Mapping, MappingCopy, MappingCreate, MappingSingle, MappingUpdate } from "@itwin/insights-client";
3
+ export interface IMappingClient {
4
+ /**
5
+ * Gets all Mappings for an iModel.
6
+ *
7
+ * @summary Get Mappings.
8
+ * @param {string} iModelId The iModel Id.
9
+ * @param {string} accessToken OAuth access token with scope `insights:read`.
10
+ * @memberof IMappingClient
11
+ * @see https://developer.bentley.com/apis/insights/operations/get-mappings/
12
+ */
13
+ getMappings(accessToken: AccessToken, iModelId: string): Promise<Mapping[]>;
14
+ /**
15
+ * Gets a Mapping for an iModel.
16
+ *
17
+ * @summary Get Mapping.
18
+ * @param {string} iModelId The iModel Id.
19
+ * @param {string} mappingId The Mapping Id.
20
+ * @param {string} accessToken OAuth access token with scope `insights:read`.
21
+ * @memberof IMappingClient
22
+ * @see https://developer.bentley.com/apis/insights/operations/get-mapping/
23
+ */
24
+ getMapping(accessToken: AccessToken, mappingId: string, iModelId: string): Promise<MappingSingle>;
25
+ /**
26
+ * Creates a Mapping for an iModel.
27
+ *
28
+ * @summary Create Mapping.
29
+ * @param {string} iModelId Id of the iModel for which to create a new Mapping.
30
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
31
+ * @param {MappingCreate} mapping Request body.
32
+ * @memberof IMappingClient
33
+ * @see https://developer.bentley.com/apis/insights/operations/create-mapping/
34
+ */
35
+ createMapping(accessToken: AccessToken, iModelId: string, mapping: MappingCreate): Promise<MappingSingle>;
36
+ /**
37
+ * Updates a Mapping for an iModel.
38
+ *
39
+ * @summary Update Mapping.
40
+ * @param {string} iModelId The iModel Id.
41
+ * @param {string} mappingId Id of the Mapping to be updated.
42
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
43
+ * @param {MappingUpdate} mapping Request body.
44
+ * @memberof IMappingClient
45
+ * @see https://developer.bentley.com/apis/insights/operations/update-mapping/
46
+ */
47
+ updateMapping(accessToken: AccessToken, iModelId: string, mappingId: string, mapping: MappingUpdate): Promise<MappingSingle>;
48
+ /**
49
+ * Deletes a Mapping for an iModel.
50
+ *
51
+ * @summary Delete Mapping.
52
+ * @param {string} iModelId The iModel Id.
53
+ * @param {string} mappingId Id of the Mapping to be deleted.
54
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
55
+ * @memberof IMappingClient
56
+ * @see https://developer.bentley.com/apis/insights/operations/delete-mapping/
57
+ */
58
+ deleteMapping(accessToken: AccessToken, iModelId: string, mappingId: string): Promise<Response>;
59
+ /**
60
+ * Copies a Mapping and all its Groups, GroupProperties, CalculatedProperties, and CustomCalculations to a target iModel.
61
+ *
62
+ * @summary Copy Mapping.
63
+ * @param {string} iModelId Id of the source Mapping's iModel.
64
+ * @param {string} mappingId Id of the source Mapping.
65
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
66
+ * @param {MappingCopy} mappingCopy Request body.
67
+ * @memberof IMappingClient
68
+ * @see https://developer.bentley.com/apis/insights/operations/copy-mapping/
69
+ */
70
+ copyMapping(accessToken: AccessToken, iModelId: string, mappingId: string, mappingCopy: MappingCopy): Promise<MappingSingle>;
71
+ /**
72
+ * Gets all Groups for a Mapping.
73
+ *
74
+ * @summary Get Groups.
75
+ * @param {string} iModelId The iModel Id.
76
+ * @param {string} mappingId The Mapping Id.
77
+ * @param {string} accessToken OAuth access token with scope `insights:read`.
78
+ * @memberof IMappingClient
79
+ * @see https://developer.bentley.com/apis/insights/operations/get-groups/
80
+ */
81
+ getGroups(accessToken: AccessToken, iModelId: string, mappingId: string): Promise<Group[]>;
82
+ /**
83
+ * Creates a Group for an iModel data source Mapping.
84
+ *
85
+ * @summary Create Group
86
+ * @param {string} iModelId The iModel Id.
87
+ * @param {string} mappingId Id of the Mapping for which to create a new Group.
88
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
89
+ * @param {GroupCreate} group Request body.
90
+ * @memberof IMappingClient
91
+ * @see https://developer.bentley.com/apis/insights/operations/create-group/
92
+ */
93
+ createGroup(accessToken: AccessToken, iModelId: string, mappingId: string, group: GroupCreate): Promise<GroupSingle>;
94
+ /**
95
+ * Gets a Group for a Mapping.
96
+ *
97
+ * @summary Get Group.
98
+ * @param {string} iModelId The iModel Id.
99
+ * @param {string} mappingId The Mapping Id.
100
+ * @param {string} groupId The Group Id.
101
+ * @param {string} accessToken OAuth access token with scope `insights:read`.
102
+ * @memberof IMappingClient
103
+ * @see https://developer.bentley.com/apis/insights/operations/get-group/
104
+ */
105
+ getGroup(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string): Promise<GroupSingle>;
106
+ /**
107
+ * Updates a Group for a Mapping.
108
+ *
109
+ * @summary Update Group.
110
+ * @param {string} iModelId Globally Unique Identifier of the target iModel.
111
+ * @param {string} mappingId Globally Unique Identifier of the target Mapping.
112
+ * @param {string} groupId Id of the Group to be updated.
113
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
114
+ * @param {GroupUpdate} group Request body.
115
+ * @memberof IMappingClient
116
+ * @see https://developer.bentley.com/apis/insights/operations/update-group/
117
+ */
118
+ updateGroup(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, group: GroupUpdate): Promise<GroupSingle>;
119
+ /**
120
+ * Deletes a Group for a Mapping.
121
+ *
122
+ * @summary Delete Group.
123
+ * @param {string} iModelId The iModel Id.
124
+ * @param {string} mappingId The Mapping Id.
125
+ * @param {string} groupId Id of the Group to be deleted.
126
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
127
+ * @memberof IMappingClient
128
+ * @see https://developer.bentley.com/apis/insights/operations/delete-group/
129
+ */
130
+ deleteGroup(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string): Promise<Response>;
131
+ /**
132
+ * Gets all GroupProperties for a Group.
133
+ *
134
+ * @summary Get GroupProperties.
135
+ * @param {string} iModelId The iModel Id.
136
+ * @param {string} mappingId The Mapping Id.
137
+ * @param {string} groupId The Group Id.
138
+ * @param {string} accessToken OAuth access token with scope `insights:read`.
139
+ * @memberof IMappingClient
140
+ * @see https://developer.bentley.com/apis/insights/operations/get-groupproperties/
141
+ */
142
+ getGroupProperties(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string): Promise<GroupProperty[]>;
143
+ /**
144
+ * Gets a GroupProperty for a Group.
145
+ *
146
+ * @summary Get GroupProperty.
147
+ * @param {string} iModelId The iModel Id.
148
+ * @param {string} mappingId The Mapping Id.
149
+ * @param {string} groupId The Group Id.
150
+ * @param {string} propertyId The GroupProperty Id.
151
+ * @param {string} accessToken access token with scope `insights:read`.
152
+ * @memberof IMappingClient
153
+ * @see https://developer.bentley.com/apis/insights/operations/get-groupproperty/
154
+ */
155
+ getGroupProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string): Promise<GroupPropertySingle>;
156
+ /**
157
+ * Creates a GroupProperty for a Group.
158
+ *
159
+ * @summary Create GroupProperty.
160
+ * @param {string} iModelId The iModel Id.
161
+ * @param {string} mappingId The Mapping Id.
162
+ * @param {string} groupId Id of the Group for which to create a new GroupProperty.
163
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
164
+ * @param {GroupPropertyCreate} groupProperty Request body.
165
+ * @memberof IMappingClient
166
+ * @see https://developer.bentley.com/apis/insights/operations/create-groupproperty/
167
+ */
168
+ createGroupProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, groupProperty: GroupPropertyCreate): Promise<GroupPropertySingle>;
169
+ /**
170
+ * Updates a GroupProperty for a Group.
171
+ *
172
+ * @summary Update GroupProperty.
173
+ * @param {string} iModelId The iModel Id.
174
+ * @param {string} mappingId The Mapping Id.
175
+ * @param {string} groupId The Group Id.
176
+ * @param {string} propertyId Id of the GroupProperty to be updated.
177
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
178
+ * @param {GroupPropertyUpdate} groupProperty Request body.
179
+ * @memberof IMappingClient
180
+ * @see https://developer.bentley.com/apis/insights/operations/update-groupproperty/
181
+ */
182
+ updateGroupProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, groupPropertyId: string, groupProperty: GroupPropertyUpdate): Promise<GroupPropertySingle>;
183
+ /**
184
+ * Deletes a GroupProperty from a Group.
185
+ *
186
+ * @summary Delete GroupProperty.
187
+ * @param {string} iModelId The iModel Id.
188
+ * @param {string} mappingId The Mapping Id.
189
+ * @param {string} groupId The Group Id.
190
+ * @param {string} groupPropertyId Id of the GroupProperty to be deleted.
191
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
192
+ * @memberof IMappingClient
193
+ * @see https://developer.bentley.com/apis/insights/operations/delete-groupproperty/
194
+ */
195
+ deleteGroupProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, groupPropertyId: string): Promise<Response>;
196
+ /**
197
+ * Gets all CalculatedProperties for a Group.
198
+ *
199
+ * @summary Get CalculatedProperties.
200
+ * @param {string} iModelId The iModel Id.
201
+ * @param {string} mappingId The Mapping Id.
202
+ * @param {string} groupId The Group Id.
203
+ * @param {string} accessToken OAuth access token with scope `insights:read`.
204
+ * @memberof IMappingClient
205
+ * @see https://developer.bentley.com/apis/insights/operations/get-calculatedproperties/
206
+ */
207
+ getCalculatedProperties(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string): Promise<CalculatedProperty[]>;
208
+ /**
209
+ * Gets a CalculatedProperty for a Group.
210
+ *
211
+ * @summary Get CalculatedProperty.
212
+ * @param {string} iModelId The iModel Id.
213
+ * @param {string} mappingId The Mapping Id.
214
+ * @param {string} groupId The Group Id.
215
+ * @param {string} propertyId The CalculatedProperty Id.
216
+ * @param {string} accessToken OAuth access token with scope `insights:read`.
217
+ * @memberof IMappingClient
218
+ * @see https://developer.bentley.com/apis/insights/operations/get-calculatedproperty/
219
+ */
220
+ getCalculatedProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string): Promise<CalculatedPropertySingle>;
221
+ /**
222
+ * Creates a CalculatedProperty for a Group.
223
+ *
224
+ * @summary Create CalculatedProperty.
225
+ * @param {string} iModelId The iModel Id.
226
+ * @param {string} mappingId The Mapping Id.
227
+ * @param {string} groupId Id of the Group for which to create a new CalculatedProperty.
228
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
229
+ * @param {CalculatedPropertyCreate} property Request body.
230
+ * @memberof IMappingClient
231
+ * @see https://developer.bentley.com/apis/insights/operations/create-calculatedproperty/
232
+ */
233
+ createCalculatedProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, property: CalculatedPropertyCreate): Promise<CalculatedPropertySingle>;
234
+ /**
235
+ * Updates a CalculatedProperty for a Group.
236
+ *
237
+ * @summary Update CalculatedProperty.
238
+ * @param {string} iModelId The iModel Id.
239
+ * @param {string} mappingId The Mapping Id.
240
+ * @param {string} groupId The Group Id.
241
+ * @param {string} propertyId Id of the CalculatedProperty to be updated.
242
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
243
+ * @param {CalculatedPropertyUpdate} property Request body.
244
+ * @memberof IMappingClient
245
+ * @see https://developer.bentley.com/apis/insights/operations/update-calculatedproperty/
246
+ */
247
+ updateCalculatedProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string, property: CalculatedPropertyUpdate): Promise<CalculatedPropertySingle>;
248
+ /**
249
+ * Deletes a CalculatedProperty from a Group.
250
+ *
251
+ * @summary Delete CalculatedProperty.
252
+ * @param {string} iModelId The iModel Id.
253
+ * @param {string} mappingId The Mapping Id.
254
+ * @param {string} groupId The Group Id.
255
+ * @param {string} propertyId Id of the CalculatedProperty to be deleted.
256
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
257
+ * @memberof IMappingClient
258
+ * @see https://developer.bentley.com/apis/insights/operations/delete-calculatedproperty/
259
+ */
260
+ deleteCalculatedProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string): Promise<Response>;
261
+ /**
262
+ * Gets all CustomCalculations for a Group.
263
+ *
264
+ * @summary Get CustomCalculations.
265
+ * @param {string} iModelId The iModel Id.
266
+ * @param {string} mappingId The Mapping Id.
267
+ * @param {string} groupId The Group Id.
268
+ * @param {string} accessToken OAuth access token with scope `insights:read`.
269
+ * @memberof IMappingClient
270
+ * @see https://developer.bentley.com/apis/insights/operations/get-customcalculations/
271
+ */
272
+ getCustomCalculations(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string): Promise<CustomCalculation[]>;
273
+ /**
274
+ * Gets a CustomCalculation for a Group.
275
+ *
276
+ * @summary Get CustomCalculation.
277
+ * @param {string} iModelId The iModel Id.
278
+ * @param {string} mappingId The Mapping Id.
279
+ * @param {string} groupId The Group Id.
280
+ * @param {string} propertyId The CustomCalculation Id.
281
+ * @param {string} accessToken OAuth access token with scope `insights:read`.
282
+ * @memberof IMappingClient
283
+ * @see https://developer.bentley.com/apis/insights/operations/get-customcalculation/
284
+ */
285
+ getCustomCalculation(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string): Promise<CustomCalculationSingle>;
286
+ /**
287
+ * Creates a CustomCalculation for a Group.
288
+ *
289
+ * @summary Create CustomCalculation.
290
+ * @param {string} iModelId The iModel Id.
291
+ * @param {string} mappingId The Mapping Id.
292
+ * @param {string} groupId Id of the Group for which to create a new CustomCalculation.
293
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
294
+ * @param {CustomCalculationCreate} property Request body.
295
+ * @memberof IMappingClient
296
+ * @see https://developer.bentley.com/apis/insights/operations/create-customcalculation/
297
+ */
298
+ createCustomCalculation(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, property: CustomCalculationCreate): Promise<CustomCalculationSingle>;
299
+ /**
300
+ * Updates a CustomCalculation for a Group.
301
+ *
302
+ * @summary Update CustomCalculation.
303
+ * @param {string} iModelId The iModel Id.
304
+ * @param {string} mappingId The Mapping Id.
305
+ * @param {string} groupId The Group Id.
306
+ * @param {string} propertyId Id of the CustomCalculation to be updated.
307
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
308
+ * @param {CustomCalculationUpdate} property Request body.
309
+ * @memberof IMappingClient
310
+ * @see https://developer.bentley.com/apis/insights/operations/update-customcalculation/
311
+ */
312
+ updateCustomCalculation(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string, property: CustomCalculationUpdate): Promise<CustomCalculationSingle>;
313
+ /**
314
+ * Deletes a CustomCalculation from a Group.
315
+ *
316
+ * @summary Delete CustomCalculation.
317
+ * @param {string} iModelId The iModel Id.
318
+ * @param {string} mappingId The Mapping Id.
319
+ * @param {string} groupId The Group Id.
320
+ * @param {string} propertyId Id of the CustomCalculation to be deleted.
321
+ * @param {string} accessToken OAuth access token with scope `insights:modify`.
322
+ * @memberof IMappingClient
323
+ * @see https://developer.bentley.com/apis/insights/operations/delete-customcalculation/
324
+ */
325
+ deleteCustomCalculation(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string): Promise<Response>;
326
+ }
327
+ //# sourceMappingURL=IMappingClient.d.ts.map
@@ -0,0 +1,6 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ export {};
6
+ //# sourceMappingURL=IMappingClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IMappingClient.js","sourceRoot":"","sources":["../../../src/widget/IMappingClient.ts"],"names":[],"mappings":"AAAA;;;+FAG+F","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n\nimport type { AccessToken } from \"@itwin/core-bentley\";\nimport type { CalculatedProperty, CalculatedPropertyCreate, CalculatedPropertySingle, CalculatedPropertyUpdate, CustomCalculation, CustomCalculationCreate, CustomCalculationSingle, CustomCalculationUpdate, Group, GroupCreate, GroupProperty, GroupPropertyCreate, GroupPropertySingle, GroupPropertyUpdate, GroupSingle, GroupUpdate, Mapping, MappingCopy, MappingCreate, MappingSingle, MappingUpdate } from \"@itwin/insights-client\";\n\nexport interface IMappingClient {\n /**\n * Gets all Mappings for an iModel.\n *\n * @summary Get Mappings.\n * @param {string} iModelId The iModel Id.\n * @param {string} accessToken OAuth access token with scope `insights:read`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/get-mappings/\n */\n getMappings(accessToken: AccessToken, iModelId: string): Promise<Mapping[]>;\n\n /**\n * Gets a Mapping for an iModel.\n *\n * @summary Get Mapping.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} accessToken OAuth access token with scope `insights:read`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/get-mapping/\n */\n getMapping(accessToken: AccessToken, mappingId: string, iModelId: string): Promise<MappingSingle>;\n\n /**\n * Creates a Mapping for an iModel.\n *\n * @summary Create Mapping.\n * @param {string} iModelId Id of the iModel for which to create a new Mapping.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @param {MappingCreate} mapping Request body.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/create-mapping/\n */\n createMapping(accessToken: AccessToken, iModelId: string, mapping: MappingCreate): Promise<MappingSingle>;\n\n /**\n * Updates a Mapping for an iModel.\n *\n * @summary Update Mapping.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId Id of the Mapping to be updated.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @param {MappingUpdate} mapping Request body.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/update-mapping/\n */\n updateMapping(accessToken: AccessToken, iModelId: string, mappingId: string, mapping: MappingUpdate): Promise<MappingSingle>;\n\n /**\n * Deletes a Mapping for an iModel.\n *\n * @summary Delete Mapping.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId Id of the Mapping to be deleted.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/delete-mapping/\n */\n deleteMapping(accessToken: AccessToken, iModelId: string, mappingId: string): Promise<Response>;\n\n /**\n * Copies a Mapping and all its Groups, GroupProperties, CalculatedProperties, and CustomCalculations to a target iModel.\n *\n * @summary Copy Mapping.\n * @param {string} iModelId Id of the source Mapping's iModel.\n * @param {string} mappingId Id of the source Mapping.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @param {MappingCopy} mappingCopy Request body.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/copy-mapping/\n */\n copyMapping(accessToken: AccessToken, iModelId: string, mappingId: string, mappingCopy: MappingCopy): Promise<MappingSingle>;\n\n /**\n * Gets all Groups for a Mapping.\n *\n * @summary Get Groups.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} accessToken OAuth access token with scope `insights:read`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/get-groups/\n */\n getGroups(accessToken: AccessToken, iModelId: string, mappingId: string): Promise<Group[]>;\n\n /**\n * Creates a Group for an iModel data source Mapping.\n *\n * @summary Create Group\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId Id of the Mapping for which to create a new Group.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @param {GroupCreate} group Request body.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/create-group/\n */\n createGroup(accessToken: AccessToken, iModelId: string, mappingId: string, group: GroupCreate): Promise<GroupSingle>;\n\n /**\n * Gets a Group for a Mapping.\n *\n * @summary Get Group.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} accessToken OAuth access token with scope `insights:read`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/get-group/\n */\n getGroup(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string): Promise<GroupSingle>;\n\n /**\n * Updates a Group for a Mapping.\n *\n * @summary Update Group.\n * @param {string} iModelId Globally Unique Identifier of the target iModel.\n * @param {string} mappingId Globally Unique Identifier of the target Mapping.\n * @param {string} groupId Id of the Group to be updated.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @param {GroupUpdate} group Request body.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/update-group/\n */\n updateGroup(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, group: GroupUpdate): Promise<GroupSingle>;\n\n /**\n * Deletes a Group for a Mapping.\n *\n * @summary Delete Group.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId Id of the Group to be deleted.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/delete-group/\n */\n deleteGroup(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string): Promise<Response>;\n\n /**\n * Gets all GroupProperties for a Group.\n *\n * @summary Get GroupProperties.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} accessToken OAuth access token with scope `insights:read`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/get-groupproperties/\n */\n getGroupProperties(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string): Promise<GroupProperty[]>;\n\n /**\n * Gets a GroupProperty for a Group.\n *\n * @summary Get GroupProperty.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} propertyId The GroupProperty Id.\n * @param {string} accessToken access token with scope `insights:read`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/get-groupproperty/\n */\n getGroupProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string): Promise<GroupPropertySingle>;\n\n /**\n * Creates a GroupProperty for a Group.\n *\n * @summary Create GroupProperty.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId Id of the Group for which to create a new GroupProperty.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @param {GroupPropertyCreate} groupProperty Request body.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/create-groupproperty/\n */\n createGroupProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, groupProperty: GroupPropertyCreate): Promise<GroupPropertySingle>;\n\n /**\n * Updates a GroupProperty for a Group.\n *\n * @summary Update GroupProperty.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} propertyId Id of the GroupProperty to be updated.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @param {GroupPropertyUpdate} groupProperty Request body.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/update-groupproperty/\n */\n updateGroupProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, groupPropertyId: string, groupProperty: GroupPropertyUpdate): Promise<GroupPropertySingle>;\n\n /**\n * Deletes a GroupProperty from a Group.\n *\n * @summary Delete GroupProperty.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} groupPropertyId Id of the GroupProperty to be deleted.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/delete-groupproperty/\n */\n deleteGroupProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, groupPropertyId: string): Promise<Response>;\n\n /**\n * Gets all CalculatedProperties for a Group.\n *\n * @summary Get CalculatedProperties.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} accessToken OAuth access token with scope `insights:read`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/get-calculatedproperties/\n */\n getCalculatedProperties(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string): Promise<CalculatedProperty[]>;\n\n /**\n * Gets a CalculatedProperty for a Group.\n *\n * @summary Get CalculatedProperty.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} propertyId The CalculatedProperty Id.\n * @param {string} accessToken OAuth access token with scope `insights:read`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/get-calculatedproperty/\n */\n getCalculatedProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string): Promise<CalculatedPropertySingle>;\n\n /**\n * Creates a CalculatedProperty for a Group.\n *\n * @summary Create CalculatedProperty.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId Id of the Group for which to create a new CalculatedProperty.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @param {CalculatedPropertyCreate} property Request body.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/create-calculatedproperty/\n */\n createCalculatedProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, property: CalculatedPropertyCreate): Promise<CalculatedPropertySingle>;\n\n /**\n * Updates a CalculatedProperty for a Group.\n *\n * @summary Update CalculatedProperty.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} propertyId Id of the CalculatedProperty to be updated.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @param {CalculatedPropertyUpdate} property Request body.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/update-calculatedproperty/\n */\n updateCalculatedProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string, property: CalculatedPropertyUpdate): Promise<CalculatedPropertySingle>;\n\n /**\n * Deletes a CalculatedProperty from a Group.\n *\n * @summary Delete CalculatedProperty.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} propertyId Id of the CalculatedProperty to be deleted.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/delete-calculatedproperty/\n */\n deleteCalculatedProperty(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string): Promise<Response>;\n\n /**\n * Gets all CustomCalculations for a Group.\n *\n * @summary Get CustomCalculations.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} accessToken OAuth access token with scope `insights:read`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/get-customcalculations/\n */\n getCustomCalculations(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string): Promise<CustomCalculation[]>;\n\n /**\n * Gets a CustomCalculation for a Group.\n *\n * @summary Get CustomCalculation.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} propertyId The CustomCalculation Id.\n * @param {string} accessToken OAuth access token with scope `insights:read`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/get-customcalculation/\n */\n getCustomCalculation(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string): Promise<CustomCalculationSingle>;\n\n /**\n * Creates a CustomCalculation for a Group.\n *\n * @summary Create CustomCalculation.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId Id of the Group for which to create a new CustomCalculation.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @param {CustomCalculationCreate} property Request body.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/create-customcalculation/\n */\n createCustomCalculation(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, property: CustomCalculationCreate): Promise<CustomCalculationSingle>;\n\n /**\n * Updates a CustomCalculation for a Group.\n *\n * @summary Update CustomCalculation.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} propertyId Id of the CustomCalculation to be updated.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @param {CustomCalculationUpdate} property Request body.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/update-customcalculation/\n */\n updateCustomCalculation(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string, property: CustomCalculationUpdate): Promise<CustomCalculationSingle>;\n\n /**\n * Deletes a CustomCalculation from a Group.\n *\n * @summary Delete CustomCalculation.\n * @param {string} iModelId The iModel Id.\n * @param {string} mappingId The Mapping Id.\n * @param {string} groupId The Group Id.\n * @param {string} propertyId Id of the CustomCalculation to be deleted.\n * @param {string} accessToken OAuth access token with scope `insights:modify`.\n * @memberof IMappingClient\n * @see https://developer.bentley.com/apis/insights/operations/delete-customcalculation/\n */\n deleteCustomCalculation(accessToken: AccessToken, iModelId: string, mappingId: string, groupId: string, propertyId: string): Promise<Response>;\n}\n"]}
@@ -4,17 +4,19 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import { IModelApp } from "@itwin/core-frontend";
6
6
  import { Fieldset, LabeledInput, LabeledSelect, MenuItem, Small, } from "@itwin/itwinui-react";
7
- import React, { useContext, useEffect, useState } from "react";
7
+ import React, { useEffect, useState } from "react";
8
8
  import ActionPanel from "./ActionPanel";
9
9
  import { BboxDimension, BboxDimensionsDecorator, } from "../../decorators/BboxDimensionsDecorator";
10
10
  import useValidator, { NAME_REQUIREMENTS } from "../hooks/useValidator";
11
- import { getReportingClient, handleError, WidgetHeader } from "./utils";
11
+ import { handleError, WidgetHeader } from "./utils";
12
12
  import { visualizeElements, zoomToElements } from "./viewerUtils";
13
13
  import "./CalculatedPropertyAction.scss";
14
- import { ApiContext } from "./GroupingMapping";
14
+ import { useMappingClient } from "./context/MappingClientContext";
15
+ import { useGroupingMappingApiConfig } from "./context/GroupingApiConfigContext";
15
16
  const CalculatedPropertyAction = ({ iModelId, mappingId, groupId, property, ids, returnFn, }) => {
16
17
  var _a, _b, _c;
17
- const apiContext = useContext(ApiContext);
18
+ const { getAccessToken } = useGroupingMappingApiConfig();
19
+ const mappingClient = useMappingClient();
18
20
  const [propertyName, setPropertyName] = useState((_a = property === null || property === void 0 ? void 0 : property.propertyName) !== null && _a !== void 0 ? _a : "");
19
21
  const [type, setType] = useState((_b = property === null || property === void 0 ? void 0 : property.type) !== null && _b !== void 0 ? _b : "");
20
22
  const [bboxDecorator, setBboxDecorator] = useState();
@@ -63,13 +65,13 @@ const CalculatedPropertyAction = ({ iModelId, mappingId, groupId, property, ids,
63
65
  }
64
66
  try {
65
67
  setIsLoading(true);
66
- const reportingClientApi = getReportingClient(apiContext.prefix);
68
+ const accessToken = await getAccessToken();
67
69
  property
68
- ? await reportingClientApi.updateCalculatedProperty(apiContext.accessToken, iModelId, mappingId, groupId, (_a = property.id) !== null && _a !== void 0 ? _a : "", {
70
+ ? await mappingClient.updateCalculatedProperty(accessToken, iModelId, mappingId, groupId, (_a = property.id) !== null && _a !== void 0 ? _a : "", {
69
71
  propertyName,
70
72
  type,
71
73
  })
72
- : await reportingClientApi.createCalculatedProperty(apiContext.accessToken, iModelId, mappingId, groupId, {
74
+ : await mappingClient.createCalculatedProperty(accessToken, iModelId, mappingId, groupId, {
73
75
  propertyName,
74
76
  type,
75
77
  });