@gooddata/sdk-code-convertors 11.56.0-alpha.5 → 11.56.0-alpha.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"buildAfmExecution.d.ts","sourceRoot":"","sources":["../../src/execution/buildAfmExecution.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAER,KAAK,EAIR,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAyC3E,cAAc;AACd,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,GAAG,kBAAkB,CAkB5F"}
1
+ {"version":3,"file":"buildAfmExecution.d.ts","sourceRoot":"","sources":["../../src/execution/buildAfmExecution.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAER,KAAK,EAIR,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAC;AA0C3E,cAAc;AACd,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,GAAG,kBAAkB,CAkB5F"}
@@ -3,7 +3,7 @@ import { convertBucketToTitle } from "../utils/convertBucketToTitle.js";
3
3
  import { mapDateAttribute, mapDateDataset } from "../utils/dateUtils.js";
4
4
  import { parseDateValues, yamlConditionToMatch } from "../utils/filterUtils.js";
5
5
  import { getFullField } from "../utils/sharedUtils.js";
6
- import { isAbsoluteDateFilter, isArbitraryTextFilter, isArithmeticMetricField, isAttributeField, isAttributeSort, isCalculatedMetricField, isInlineMetricField, isMatchTextFilter, isMetricAllValueFilter, isMetricComparisonValueFilter, isMetricField, isMetricRangeValueFilter, isMetricValueFilterWithConditions, isNegativeAttributeFilter, isPoPMetricField, isPositiveAttributeFilter, isPreviousPeriodField, isRankingFilter, isRelativeDateFilter, isSimpleMetricSort, } from "../utils/typeGuards.js";
6
+ import { isAbsoluteDateFilter, isArbitraryTextFilter, isArithmeticMetricField, isAttributeField, isAttributeSort, isCalculatedMetricField, isComputedAttributeReference, isInlineMetricField, isMatchTextFilter, isMetricAllValueFilter, isMetricComparisonValueFilter, isMetricField, isMetricRangeValueFilter, isMetricValueFilterWithConditions, isNegativeAttributeFilter, isPoPMetricField, isPositiveAttributeFilter, isPreviousPeriodField, isRankingFilter, isRelativeDateFilter, isSimpleMetricSort, } from "../utils/typeGuards.js";
7
7
  import { createIdentifier, createLocalIdentifier } from "../utils/yamlUtils.js";
8
8
  const MATCH_OPERATOR_TO_AFM = {
9
9
  startsWith: "STARTS_WITH",
@@ -49,7 +49,10 @@ function buildExecution(entities, query) {
49
49
  if (isAttributeField(fieldDef)) {
50
50
  return {
51
51
  localIdentifier: field,
52
- label: createIdentifier(fieldDef.using, { forceType: "label" }),
52
+ // a computed attribute keeps its own type, everything else is asked for as a label
53
+ label: isComputedAttributeReference(fieldDef.using)
54
+ ? createIdentifier(fieldDef.using)
55
+ : createIdentifier(fieldDef.using, { forceType: "label" }),
53
56
  showAllValues: fieldDef.show_all_values,
54
57
  };
55
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"declarativeComputedAttributeToYaml.d.ts","sourceRoot":"","sources":["../../src/from/declarativeComputedAttributeToYaml.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAKvE,cAAc;AACd,wBAAgB,kCAAkC,CAAC,iBAAiB,EAAE,4BAA4B,GAAG;IACjG,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,iBAAiB,CAAC;CAC3B,CA4BA"}
1
+ {"version":3,"file":"declarativeComputedAttributeToYaml.d.ts","sourceRoot":"","sources":["../../src/from/declarativeComputedAttributeToYaml.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAKvE,cAAc;AACd,wBAAgB,kCAAkC,CAAC,iBAAiB,EAAE,4BAA4B,GAAG;IACjG,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,iBAAiB,CAAC;CAC3B,CAqDA"}
@@ -15,8 +15,30 @@ export function declarativeComputedAttributeToYaml(computedAttribute) {
15
15
  fillOptionalMetaFields(doc, computedAttribute);
16
16
  // Add MAQL field
17
17
  doc.add(entryWithSpace("maql", computedAttribute.content.maql ?? ""));
18
- // dataType and valueType are deliberately not written out - they are backend defaults the YAML
19
- // shape does not expose (see yamlComputedAttributeToDeclarative)
18
+ // Add formatting of the computed values
19
+ if (computedAttribute.content.format) {
20
+ doc.add(doc.createPair("format", computedAttribute.content.format));
21
+ }
22
+ if (computedAttribute.content.metricType) {
23
+ doc.add(doc.createPair("metric_type", computedAttribute.content.metricType));
24
+ }
25
+ // Add typing of the computed values
26
+ if (computedAttribute.dataType) {
27
+ doc.add(doc.createPair("data_type", computedAttribute.dataType));
28
+ }
29
+ if (computedAttribute.valueType) {
30
+ doc.add(doc.createPair("value_type", computedAttribute.valueType));
31
+ }
32
+ if (computedAttribute.isNullable !== undefined) {
33
+ doc.add(doc.createPair("is_nullable", computedAttribute.isNullable));
34
+ }
35
+ if (computedAttribute.nullValue !== undefined) {
36
+ doc.add(doc.createPair("null_value_join_replacement", computedAttribute.nullValue));
37
+ }
38
+ // Add visibility flag only when hidden
39
+ if (computedAttribute.isHidden === true) {
40
+ doc.add(doc.createPair("show_in_ai_results", false));
41
+ }
20
42
  if (computedAttribute.locale) {
21
43
  doc.add(doc.createPair("locale", computedAttribute.locale));
22
44
  }
@@ -1,7 +1,7 @@
1
1
  import type { Parameter } from "@gooddata/sdk-code-schemas/v1";
2
- import { type DeclarativeStringParameter } from "../utils/parameterUtils.js";
2
+ import { type DeclarativeCodeParameter } from "../utils/parameterUtils.js";
3
3
  /** @public */
4
- export declare function declarativeParameterToYaml(parameter: DeclarativeStringParameter): {
4
+ export declare function declarativeParameterToYaml(parameter: DeclarativeCodeParameter): {
5
5
  content: string;
6
6
  json: Parameter;
7
7
  };
@@ -1 +1 @@
1
- {"version":3,"file":"declarativeParameterToYaml.d.ts","sourceRoot":"","sources":["../../src/from/declarativeParameterToYaml.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE/D,OAAO,EACH,KAAK,0BAA0B,EAGlC,MAAM,4BAA4B,CAAC;AAIpC,cAAc;AACd,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,0BAA0B,GAAG;IAC/E,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,SAAS,CAAC;CACnB,CAwBA"}
1
+ {"version":3,"file":"declarativeParameterToYaml.d.ts","sourceRoot":"","sources":["../../src/from/declarativeParameterToYaml.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACR,SAAS,EAGZ,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACH,KAAK,wBAAwB,EAGhC,MAAM,4BAA4B,CAAC;AAIpC,cAAc;AACd,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,wBAAwB,GAAG;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,SAAS,CAAC;CACnB,CAwBA"}
@@ -24,6 +24,11 @@ export function declarativeParameterToYaml(parameter) {
24
24
  };
25
25
  }
26
26
  function declarativeParameterDefinitionToYaml(definition) {
27
+ return definition.type === "NUMBER"
28
+ ? declarativeNumberDefinitionToYaml(definition)
29
+ : declarativeStringDefinitionToYaml(definition);
30
+ }
31
+ function declarativeStringDefinitionToYaml(definition) {
27
32
  const { minLength, maxLength, allowedValues } = definition.constraints ?? {};
28
33
  // The schema requires a non-empty list, so an empty one from the server means "free text".
29
34
  const [first, ...rest] = allowedValues ?? [];
@@ -37,3 +42,11 @@ function declarativeParameterDefinitionToYaml(definition) {
37
42
  }),
38
43
  };
39
44
  }
45
+ function declarativeNumberDefinitionToYaml(definition) {
46
+ const { min, max } = definition.constraints ?? {};
47
+ return {
48
+ type: "NUMBER",
49
+ defaultValue: definition.defaultValue,
50
+ ...optionalConstraints({ min, max }),
51
+ };
52
+ }
package/esm/index.d.ts CHANGED
@@ -4,7 +4,7 @@ export { yamlDatasetToDeclarative, buildAttributeLabels, buildAttributes, buildF
4
4
  export { yamlDateDatesetToDeclarative } from "./to/yamlDateDatasetToDeclarative.js";
5
5
  export { yamlMetricToDeclarative } from "./to/yamlMetricToDeclarative.js";
6
6
  export { yamlParameterToDeclarative } from "./to/yamlParameterToDeclarative.js";
7
- export { isDeclarativeStringParameter, type DeclarativeStringParameter } from "./utils/parameterUtils.js";
7
+ export { isDeclarativeCodeParameter, isDeclarativeNumberParameter, isDeclarativeStringParameter, type DeclarativeCodeParameter, type DeclarativeNumberParameter, type DeclarativeStringParameter, } from "./utils/parameterUtils.js";
8
8
  export { yamlComputedAttributeToDeclarative } from "./to/yamlComputedAttributeToDeclarative.js";
9
9
  export { yamlVisualisationToDeclarative, yamlVisualisationToMetadataObject, yamlBucketsToDeclarative, yamlFiltersToDeclarative, yamlReportToDeclarative, yamlReportTotalToDeclarative, yamlSortsToDeclarative, type VisualisationDefinition, } from "./to/yamlVisualisationToDeclarative.js";
10
10
  export { yamlDashboardToDeclarative, yamlFilterContextToDeclarative, yamlInteractionToDeclarative, yamlPluginsToDeclarative, yamlWidgetItemToDeclarative, yamlWidgetToDeclarative, type DashboardDefinition, type DashboardSection, type DashboardWidget, type EmptyValueHandling, type FilterContextDefinition, } from "./to/yamlDashboardToDeclarative.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,YAAY,EACR,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,EACZ,mBAAmB,EACnB,UAAU,EACV,cAAc,EACd,WAAW,EACX,SAAS,EACT,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,SAAS,GACZ,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACH,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,WAAW,GACd,MAAM,YAAY,CAAC;AAEpB,OAAO,EACH,wBAAwB,EACxB,oBAAoB,EACpB,eAAe,EACf,UAAU,EACV,eAAe,GAClB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,KAAK,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC1G,OAAO,EAAE,kCAAkC,EAAE,MAAM,4CAA4C,CAAC;AAChG,OAAO,EACH,8BAA8B,EAC9B,iCAAiC,EACjC,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,4BAA4B,EAC5B,sBAAsB,EACtB,KAAK,uBAAuB,GAC/B,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACH,0BAA0B,EAC1B,8BAA8B,EAC9B,4BAA4B,EAC5B,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,GAC/B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,mCAAmC,EAAE,MAAM,6CAA6C,CAAC;AAElG,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,kCAAkC,EAAE,MAAM,8CAA8C,CAAC;AAClG,OAAO,EACH,8BAA8B,EAC9B,wBAAwB,EACxB,iCAAiC,EACjC,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,6BAA6B,EAC7B,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,EAC1B,qCAAqC,EACrC,sBAAsB,EACtB,sBAAsB,EACtB,KAAK,SAAS,EACd,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,aAAa,GACrB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACH,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,mCAAmC,EACnC,wBAAwB,EACxB,mCAAmC,EACnC,wCAAwC,EACxC,wCAAwC,EACxC,8BAA8B,EAC9B,mCAAmC,EACnC,KAAK,kBAAkB,EACvB,KAAK,WAAW,GACnB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACH,0BAA0B,EAC1B,sBAAsB,EACtB,8BAA8B,EAC9B,8BAA8B,EAC9B,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,KAAK,iBAAiB,EACtB,KAAK,2BAA2B,GACnC,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,mCAAmC,EAAE,MAAM,+CAA+C,CAAC;AAGpG,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAGrE,OAAO,EACH,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,mBAAmB,EACnB,QAAQ,GACX,MAAM,YAAY,CAAC;AAGpB,OAAO,EACH,KAAK,EACL,SAAS,EACT,SAAS,EACT,cAAc,EACd,KAAK,YAAY,EACjB,KAAK,qBAAqB,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACH,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,KAAK,eAAe,EACpB,KAAK,wBAAwB,GAChC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACH,WAAW,EACX,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,GACnC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACH,SAAS,EACT,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,GACjC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACH,UAAU,EACV,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,GAClC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACH,SAAS,EACT,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,GACjC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACH,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,mBAAmB,EACxB,KAAK,4BAA4B,GACpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACH,WAAW,EACX,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,GACnC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACH,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,KAAK,eAAe,EACpB,KAAK,wBAAwB,GAChC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACH,UAAU,EACV,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,GAClC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACH,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,mBAAmB,EACxB,KAAK,4BAA4B,GACpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACH,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,mBAAmB,EACxB,KAAK,4BAA4B,GACpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACH,WAAW,EACX,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,GACnC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACH,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,mBAAmB,EACxB,KAAK,4BAA4B,GACpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACH,WAAW,EACX,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,GACnC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACH,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,8BAA8B,GACtC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACH,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EACxB,+BAA+B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,oCAAoC,GAC5C,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACH,WAAW,EACX,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,GACnC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACH,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,KAAK,oBAAoB,EACzB,KAAK,6BAA6B,GACrC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACH,UAAU,EACV,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,GAClC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACH,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,KAAK,eAAe,EACpB,KAAK,wBAAwB,GAChC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACH,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,KAAK,mBAAmB,EACxB,KAAK,4BAA4B,GACpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACH,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,wBAAwB,EACxB,KAAK,oBAAoB,EACzB,KAAK,6BAA6B,EAClC,KAAK,oBAAoB,GAC5B,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACR,UAAU,IAAI,SAAS,EACvB,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,eAAe,EACf,cAAc,IAAI,aAAa,EAC/B,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,EAC1B,8BAA8B,EAC9B,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,6BAA6B,EAC7B,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,EACzB,uBAAuB,EACvB,2BAA2B,EAC3B,2BAA2B,EAC3B,+BAA+B,EAC/B,4BAA4B,EAC5B,gCAAgC,EAChC,mBAAmB,EACnB,uBAAuB,EACvB,2BAA2B,EAC3B,+BAA+B,EAC/B,eAAe,EACf,gBAAgB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACH,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,SAAS,GACjB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EACH,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,aAAa,EACb,cAAc,EACd,iBAAiB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACH,0BAA0B,EAC1B,wBAAwB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,6BAA6B,EAClC,KAAK,iBAAiB,EACtB,KAAK,WAAW,GACnB,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/esm/index.js CHANGED
@@ -6,7 +6,7 @@ export { yamlDatasetToDeclarative, buildAttributeLabels, buildAttributes, buildF
6
6
  export { yamlDateDatesetToDeclarative } from "./to/yamlDateDatasetToDeclarative.js";
7
7
  export { yamlMetricToDeclarative } from "./to/yamlMetricToDeclarative.js";
8
8
  export { yamlParameterToDeclarative } from "./to/yamlParameterToDeclarative.js";
9
- export { isDeclarativeStringParameter } from "./utils/parameterUtils.js";
9
+ export { isDeclarativeCodeParameter, isDeclarativeNumberParameter, isDeclarativeStringParameter, } from "./utils/parameterUtils.js";
10
10
  export { yamlComputedAttributeToDeclarative } from "./to/yamlComputedAttributeToDeclarative.js";
11
11
  export { yamlVisualisationToDeclarative, yamlVisualisationToMetadataObject, yamlBucketsToDeclarative, yamlFiltersToDeclarative, yamlReportToDeclarative, yamlReportTotalToDeclarative, yamlSortsToDeclarative, } from "./to/yamlVisualisationToDeclarative.js";
12
12
  export { yamlDashboardToDeclarative, yamlFilterContextToDeclarative, yamlInteractionToDeclarative, yamlPluginsToDeclarative, yamlWidgetItemToDeclarative, yamlWidgetToDeclarative, } from "./to/yamlDashboardToDeclarative.js";
@@ -77,6 +77,7 @@ import type { ListOfColors } from '@gooddata/sdk-code-schemas/v1';
77
77
  import type { Metadata } from '@gooddata/sdk-code-schemas/v1';
78
78
  import type { Metric } from '@gooddata/sdk-code-schemas/v1';
79
79
  import type { MetricField } from '@gooddata/sdk-code-schemas/v1';
80
+ import { NumberParameterDefinition } from '@gooddata/api-client-tiger';
80
81
  import { ObjRef } from '@gooddata/sdk-model';
81
82
  import { ObjRefInScope } from '@gooddata/sdk-model';
82
83
  import { Pair } from 'yaml';
@@ -1354,6 +1355,14 @@ export declare function declarativeAttributeToYaml(def: IAttributeBody, errorCon
1354
1355
  /** @internal */
1355
1356
  export declare function declarativeBucketsToYaml(entities: FromEntities, buckets: IBucket[], errorContext?: IErrorContext): YamlBuckets;
1356
1357
 
1358
+ /**
1359
+ * A parameter AAC can represent as code: textual or numeric. Anything else has to stay under
1360
+ * whatever tool created it.
1361
+ *
1362
+ * @public
1363
+ */
1364
+ export declare type DeclarativeCodeParameter = DeclarativeStringParameter | DeclarativeNumberParameter;
1365
+
1357
1366
  /** @public */
1358
1367
  export declare function declarativeComputedAttributeToYaml(computedAttribute: DeclarativeComputedAttribute): {
1359
1368
  content: string;
@@ -1423,8 +1432,17 @@ export declare function declarativeNegativeAttributeFilterToYaml(entities: FromE
1423
1432
  /** @internal */
1424
1433
  export declare function declarativeNormalMetricToYaml(def: IMeasureBody, metricDefinition: IMeasureDefinition, postProcessors: YamlPostProcessors, errorContext?: IErrorContext): YAMLMap;
1425
1434
 
1435
+ /**
1436
+ * A numeric parameter as the declarative API carries it.
1437
+ *
1438
+ * @public
1439
+ */
1440
+ export declare type DeclarativeNumberParameter = DeclarativeParameter & {
1441
+ content: NumberParameterDefinition;
1442
+ };
1443
+
1426
1444
  /** @public */
1427
- export declare function declarativeParameterToYaml(parameter: DeclarativeStringParameter): {
1445
+ export declare function declarativeParameterToYaml(parameter: DeclarativeCodeParameter): {
1428
1446
  content: string;
1429
1447
  json: Parameter;
1430
1448
  };
@@ -1463,8 +1481,7 @@ export declare function declarativeSectionsToYaml(layout?: IDashboardLayout, ent
1463
1481
  export declare function declarativeSortsToYaml(sorts: ISortItem[], _errorContext?: IErrorContext): YamlSorts;
1464
1482
 
1465
1483
  /**
1466
- * A parameter AAC can represent as code. Only textual parameters are supported, so anything else
1467
- * has to stay under whatever tool created it.
1484
+ * A textual parameter as the declarative API carries it.
1468
1485
  *
1469
1486
  * @public
1470
1487
  */
@@ -2647,6 +2664,12 @@ export declare interface IScatterChartConfig {
2647
2664
  DEFAULTS: ConfigDefaults<ScatterChartConfigProperties>;
2648
2665
  }
2649
2666
 
2667
+ /** @public */
2668
+ export declare function isDeclarativeCodeParameter(parameter: DeclarativeParameter): parameter is DeclarativeCodeParameter;
2669
+
2670
+ /** @public */
2671
+ export declare function isDeclarativeNumberParameter(parameter: DeclarativeParameter): parameter is DeclarativeNumberParameter;
2672
+
2650
2673
  /** @public */
2651
2674
  export declare function isDeclarativeStringParameter(parameter: DeclarativeParameter): parameter is DeclarativeStringParameter;
2652
2675
 
@@ -4317,7 +4340,7 @@ export declare function yamlInteractionToDeclarative(entities: ExportEntities, v
4317
4340
  export declare function yamlMetricToDeclarative(input: Metric): DeclarativeMetric;
4318
4341
 
4319
4342
  /** @public */
4320
- export declare function yamlParameterToDeclarative(input: Parameter): DeclarativeStringParameter;
4343
+ export declare function yamlParameterToDeclarative(input: Parameter): DeclarativeCodeParameter;
4321
4344
 
4322
4345
  /** @internal */
4323
4346
  export declare function yamlPluginsToDeclarative(plugins: Dashboard["plugins"]): IDashboardPluginLink[] | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"yamlComputedAttributeToDeclarative.d.ts","sourceRoot":"","sources":["../../src/to/yamlComputedAttributeToDeclarative.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAYvE,cAAc;AACd,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,iBAAiB,GAAG,4BAA4B,CAmBzG"}
1
+ {"version":3,"file":"yamlComputedAttributeToDeclarative.d.ts","sourceRoot":"","sources":["../../src/to/yamlComputedAttributeToDeclarative.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIvE,cAAc;AACd,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,iBAAiB,GAAG,4BAA4B,CAwCzG"}
@@ -1,12 +1,5 @@
1
1
  // (C) 2026 GoodData Corporation
2
2
  import { convertIdToTitle } from "../utils/sharedUtils.js";
3
- /**
4
- * A computed attribute is textual for now: the backend does not transfer the value type from
5
- * metadata yet, so every computed attribute is interpreted as a STRING/TEXT one. The YAML shape
6
- * therefore does not expose dataType/valueType and the defaults are filled in here.
7
- */
8
- const DEFAULT_DATA_TYPE = "STRING";
9
- const DEFAULT_VALUE_TYPE = "TEXT";
10
3
  /** @public */
11
4
  export function yamlComputedAttributeToDeclarative(input) {
12
5
  // Assuming it's validated already by the `validate` command and all options are accounted for
@@ -18,9 +11,30 @@ export function yamlComputedAttributeToDeclarative(input) {
18
11
  content: {
19
12
  maql: input.maql,
20
13
  },
21
- dataType: DEFAULT_DATA_TYPE,
22
- valueType: DEFAULT_VALUE_TYPE,
23
14
  };
15
+ // Optional fields are only sent when the yaml sets them, so the backend keeps applying its own
16
+ // defaults (STRING/TEXT/UNSPECIFIED) instead of the convertor forcing them on every deploy.
17
+ if (input.format !== undefined) {
18
+ output.content.format = input.format;
19
+ }
20
+ if (input.metric_type !== undefined) {
21
+ output.content.metricType = input.metric_type;
22
+ }
23
+ if (input.data_type !== undefined) {
24
+ output.dataType = input.data_type;
25
+ }
26
+ if (input.value_type !== undefined) {
27
+ output.valueType = input.value_type;
28
+ }
29
+ if (input.is_nullable !== undefined) {
30
+ output.isNullable = input.is_nullable;
31
+ }
32
+ if (input.null_value_join_replacement !== undefined) {
33
+ output.nullValue = input.null_value_join_replacement;
34
+ }
35
+ if (input.show_in_ai_results !== undefined) {
36
+ output.isHidden = input.show_in_ai_results === false;
37
+ }
24
38
  if (input.locale !== undefined) {
25
39
  output.locale = input.locale;
26
40
  }
@@ -570,7 +570,7 @@ function sourceInsightFilterIdToDeclarative(filterId, sourceVisualizationFilters
570
570
  }
571
571
  function yamlIgnoredFilterToDeclarative(input) {
572
572
  const ref = parseReferenceObject(input);
573
- if (ref?.type === "label") {
573
+ if (ref?.type === "label" || ref?.type === "computed_attribute") {
574
574
  return {
575
575
  type: "attributeFilterReference",
576
576
  displayForm: createIdentifier(input),
@@ -1,5 +1,5 @@
1
1
  import type { Parameter } from "@gooddata/sdk-code-schemas/v1";
2
- import { type DeclarativeStringParameter } from "../utils/parameterUtils.js";
2
+ import { type DeclarativeCodeParameter } from "../utils/parameterUtils.js";
3
3
  /** @public */
4
- export declare function yamlParameterToDeclarative(input: Parameter): DeclarativeStringParameter;
4
+ export declare function yamlParameterToDeclarative(input: Parameter): DeclarativeCodeParameter;
5
5
  //# sourceMappingURL=yamlParameterToDeclarative.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"yamlParameterToDeclarative.d.ts","sourceRoot":"","sources":["../../src/to/yamlParameterToDeclarative.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE/D,OAAO,EACH,KAAK,0BAA0B,EAGlC,MAAM,4BAA4B,CAAC;AAGpC,cAAc;AACd,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,SAAS,GAAG,0BAA0B,CAQvF"}
1
+ {"version":3,"file":"yamlParameterToDeclarative.d.ts","sourceRoot":"","sources":["../../src/to/yamlParameterToDeclarative.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACR,SAAS,EAGZ,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACH,KAAK,wBAAwB,EAGhC,MAAM,4BAA4B,CAAC;AAGpC,cAAc;AACd,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,SAAS,GAAG,wBAAwB,CAQrF"}
@@ -12,6 +12,11 @@ export function yamlParameterToDeclarative(input) {
12
12
  };
13
13
  }
14
14
  function yamlParameterDefinitionToDeclarative(definition) {
15
+ return definition.type === "NUMBER"
16
+ ? yamlNumberDefinitionToDeclarative(definition)
17
+ : yamlStringDefinitionToDeclarative(definition);
18
+ }
19
+ function yamlStringDefinitionToDeclarative(definition) {
15
20
  const { minLength, maxLength, allowedValues } = definition.constraints ?? {};
16
21
  return {
17
22
  type: "STRING",
@@ -23,3 +28,11 @@ function yamlParameterDefinitionToDeclarative(definition) {
23
28
  }),
24
29
  };
25
30
  }
31
+ function yamlNumberDefinitionToDeclarative(definition) {
32
+ const { min, max } = definition.constraints ?? {};
33
+ return {
34
+ type: "NUMBER",
35
+ defaultValue: definition.defaultValue,
36
+ ...optionalConstraints({ min, max }),
37
+ };
38
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"convertBucketToTitle.d.ts","sourceRoot":"","sources":["../../src/utils/convertBucketToTitle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convertBucketToTitle.d.ts","sourceRoot":"","sources":["../../src/utils/convertBucketToTitle.ts"],"names":[],"mappings":"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"}
@@ -353,6 +353,13 @@ function findObjectProps(entities, item) {
353
353
  firstLetterUpperCase(convertIdToTitle(item.identifier.id).toLowerCase()),
354
354
  };
355
355
  }
356
+ case "computedAttribute": {
357
+ const found = entities.find((entity) => entity.type === "computed_attribute" && entity.id === item.identifier.id);
358
+ const title = found ? found.data.title : undefined;
359
+ return {
360
+ title: title ?? firstLetterUpperCase(convertIdToTitle(item.identifier.id).toLowerCase()),
361
+ };
362
+ }
356
363
  case "label":
357
364
  case "metric": {
358
365
  const found = items.labels.find((label) => label.id === item.identifier.id);
@@ -1,15 +1,33 @@
1
- import { type DeclarativeParameter, type StringParameterDefinition } from "@gooddata/api-client-tiger";
1
+ import { type DeclarativeParameter, type NumberParameterDefinition, type StringParameterDefinition } from "@gooddata/api-client-tiger";
2
2
  /**
3
- * A parameter AAC can represent as code. Only textual parameters are supported, so anything else
4
- * has to stay under whatever tool created it.
3
+ * A textual parameter as the declarative API carries it.
5
4
  *
6
5
  * @public
7
6
  */
8
7
  export type DeclarativeStringParameter = DeclarativeParameter & {
9
8
  content: StringParameterDefinition;
10
9
  };
10
+ /**
11
+ * A numeric parameter as the declarative API carries it.
12
+ *
13
+ * @public
14
+ */
15
+ export type DeclarativeNumberParameter = DeclarativeParameter & {
16
+ content: NumberParameterDefinition;
17
+ };
18
+ /**
19
+ * A parameter AAC can represent as code: textual or numeric. Anything else has to stay under
20
+ * whatever tool created it.
21
+ *
22
+ * @public
23
+ */
24
+ export type DeclarativeCodeParameter = DeclarativeStringParameter | DeclarativeNumberParameter;
11
25
  /** @public */
12
26
  export declare function isDeclarativeStringParameter(parameter: DeclarativeParameter): parameter is DeclarativeStringParameter;
27
+ /** @public */
28
+ export declare function isDeclarativeNumberParameter(parameter: DeclarativeParameter): parameter is DeclarativeNumberParameter;
29
+ /** @public */
30
+ export declare function isDeclarativeCodeParameter(parameter: DeclarativeParameter): parameter is DeclarativeCodeParameter;
13
31
  /** Same keys, each narrowed to its defined type — what remains after dropping undefined values. */
14
32
  type DefinedValues<T> = {
15
33
  [K in keyof T]?: Exclude<T[K], undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"parameterUtils.d.ts","sourceRoot":"","sources":["../../src/utils/parameterUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,oBAAoB,EAAE,KAAK,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAEvG;;;;;GAKG;AACH,MAAM,MAAM,0BAA0B,GAAG,oBAAoB,GAAG;IAAE,OAAO,EAAE,yBAAyB,CAAA;CAAE,CAAC;AAEvG,cAAc;AACd,wBAAgB,4BAA4B,CACxC,SAAS,EAAE,oBAAoB,GAChC,SAAS,IAAI,0BAA0B,CAEzC;AAED,mGAAmG;AACnG,KAAK,aAAa,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;CAAE,CAAC;AAEtE;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,CAAC,GAAG;IAAE,WAAW,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;CAAE,CAMxG;AAED,iHAAiH;AACjH,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG;IACjF,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAEA"}
1
+ {"version":3,"file":"parameterUtils.d.ts","sourceRoot":"","sources":["../../src/utils/parameterUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EACjC,MAAM,4BAA4B,CAAC;AAEpC;;;;GAIG;AACH,MAAM,MAAM,0BAA0B,GAAG,oBAAoB,GAAG;IAAE,OAAO,EAAE,yBAAyB,CAAA;CAAE,CAAC;AAEvG;;;;GAIG;AACH,MAAM,MAAM,0BAA0B,GAAG,oBAAoB,GAAG;IAAE,OAAO,EAAE,yBAAyB,CAAA;CAAE,CAAC;AAEvG;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,GAAG,0BAA0B,GAAG,0BAA0B,CAAC;AAE/F,cAAc;AACd,wBAAgB,4BAA4B,CACxC,SAAS,EAAE,oBAAoB,GAChC,SAAS,IAAI,0BAA0B,CAEzC;AAED,cAAc;AACd,wBAAgB,4BAA4B,CACxC,SAAS,EAAE,oBAAoB,GAChC,SAAS,IAAI,0BAA0B,CAEzC;AAED,cAAc;AACd,wBAAgB,0BAA0B,CACtC,SAAS,EAAE,oBAAoB,GAChC,SAAS,IAAI,wBAAwB,CAEvC;AAED,mGAAmG;AACnG,KAAK,aAAa,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;CAAE,CAAC;AAEtE;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,CAAC,GAAG;IAAE,WAAW,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;CAAE,CAMxG;AAED,iHAAiH;AACjH,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG;IACjF,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAEA"}
@@ -3,6 +3,14 @@
3
3
  export function isDeclarativeStringParameter(parameter) {
4
4
  return parameter.content.type === "STRING";
5
5
  }
6
+ /** @public */
7
+ export function isDeclarativeNumberParameter(parameter) {
8
+ return parameter.content.type === "NUMBER";
9
+ }
10
+ /** @public */
11
+ export function isDeclarativeCodeParameter(parameter) {
12
+ return isDeclarativeStringParameter(parameter) || isDeclarativeNumberParameter(parameter);
13
+ }
6
14
  /**
7
15
  * Spreadable `constraints` entry for a parameter definition: present only when at least one
8
16
  * restriction is set, and never carrying a key whose value is undefined.
@@ -1,14 +1,23 @@
1
1
  import type { All, ArithmeticMetricField, Attribute, AttributeField, AttributeFilter, AttributeSort, CalculatedMetricField, Comparison, ComputedAttribute, ContainerWidget, DashboardAbsoluteDateFilter, DashboardAttributeFilter, DashboardMetricValueFilter, DashboardRelativeDateFilter, DashboardTextFilter, Dataset, DateDataset, DateFilter, Fact, InlineMetricField, Metric, MetricField, MetricSort, MetricValueFilter, MultipleConditions, PoPMetricField, PreviousPeriodMetricField, Range, RankingFilter, RichTextWidget, TextFilter, VisualisationWidget, VisualizationSwitcherWidget } from "@gooddata/sdk-code-schemas/v1";
2
2
  export type ReferenceObject = {
3
- type: "fact" | "label" | "metric" | "dataset" | "attribute" | "visualisation" | "plugin" | "dashboard" | "attribute_hierarchy";
3
+ type: "fact" | "label" | "computed_attribute" | "metric" | "dataset" | "attribute" | "visualisation" | "plugin" | "dashboard" | "attribute_hierarchy";
4
4
  identifier: string;
5
5
  };
6
6
  export type TextFilterCondition = TextFilter["condition"];
7
- export declare const SupportedReferenceTypes: readonly ["fact", "label", "metric", "dataset", "attribute"];
7
+ export declare const SupportedReferenceTypes: readonly ["fact", "label", "computed_attribute", "metric", "dataset", "attribute"];
8
+ /**
9
+ * Reference prefixes that stand for an attribute-like object a query field, an attribute filter
10
+ * or a drill can use. A computed attribute behaves as a label with computed values.
11
+ */
12
+ export declare const AttributeLikeReferenceTypes: ReferenceObject["type"][];
8
13
  export declare function parseReferenceObject(obj: string): ReferenceObject | null;
9
14
  export declare const AttrTypes: Attribute["type"][];
10
15
  export declare function isAttribute(obj: unknown): obj is Attribute;
11
16
  export declare function isAttributeField(obj: unknown): obj is AttributeField;
17
+ /**
18
+ * Whether the reference names a computed attribute (`computed_attribute/{id}`).
19
+ */
20
+ export declare function isComputedAttributeReference(reference: string): boolean;
12
21
  export declare function isInlineMetricField(obj: unknown): obj is InlineMetricField;
13
22
  export declare function isMetricField(obj: unknown): obj is MetricField;
14
23
  export declare function isCalculatedMetricField(obj: unknown): obj is CalculatedMetricField;
@@ -1 +1 @@
1
- {"version":3,"file":"typeGuards.d.ts","sourceRoot":"","sources":["../../src/utils/typeGuards.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typeGuards.d.ts","sourceRoot":"","sources":["../../src/utils/typeGuards.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,21 @@
1
1
  // (C) 2023-2026 GoodData Corporation
2
- export const SupportedReferenceTypes = ["fact", "label", "metric", "dataset", "attribute"];
2
+ export const SupportedReferenceTypes = [
3
+ "fact",
4
+ "label",
5
+ "computed_attribute",
6
+ "metric",
7
+ "dataset",
8
+ "attribute",
9
+ ];
10
+ /**
11
+ * Reference prefixes that stand for an attribute-like object a query field, an attribute filter
12
+ * or a drill can use. A computed attribute behaves as a label with computed values.
13
+ */
14
+ export const AttributeLikeReferenceTypes = [
15
+ "attribute",
16
+ "label",
17
+ "computed_attribute",
18
+ ];
3
19
  export function parseReferenceObject(obj) {
4
20
  const [t, identifier] = obj?.split("/") ?? [];
5
21
  const type = t;
@@ -25,10 +41,16 @@ export function isAttributeField(obj) {
25
41
  typeof obj.using === "string" &&
26
42
  !("aggregation" in obj)) {
27
43
  const id = parseReferenceObject(obj.using);
28
- return Boolean(id && ["attribute", "label", "fact"].includes(id.type));
44
+ return Boolean(id && [...AttributeLikeReferenceTypes, "fact"].includes(id.type));
29
45
  }
30
46
  return false;
31
47
  }
48
+ /**
49
+ * Whether the reference names a computed attribute (`computed_attribute/{id}`).
50
+ */
51
+ export function isComputedAttributeReference(reference) {
52
+ return parseReferenceObject(reference)?.type === "computed_attribute";
53
+ }
32
54
  export function isInlineMetricField(obj) {
33
55
  return typeof obj === "object" && obj !== null && "maql" in obj && typeof obj.maql === "string";
34
56
  }
@@ -101,7 +123,7 @@ export function isAttributeFilter(obj) {
101
123
  "type" in obj &&
102
124
  obj.type === "attribute_filter") {
103
125
  const id = parseReferenceObject(obj.using);
104
- return Boolean(id && ["attribute", "label"].includes(id.type));
126
+ return Boolean(id && AttributeLikeReferenceTypes.includes(id.type));
105
127
  }
106
128
  return false;
107
129
  }
@@ -1 +1 @@
1
- {"version":3,"file":"yamlUtils.d.ts","sourceRoot":"","sources":["../../src/utils/yamlUtils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,EACH,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EAExB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EAExB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACH,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,aAAa,EAgBrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAiB,KAAK,aAAa,EAAgC,MAAM,aAAa,CAAC;AAK9F,KAAK,eAAe,GAAG;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,wBAAgB,sBAAsB,CAClC,GAAG,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,EACjC,GAAG,EAAE,eAAe,EACpB,SAAS,UAAO,QAiBnB;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,uCAKrD;AAED,wBAAgB,wBAAwB,CACpC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,EAC7C,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,OAAO,EAAE,kBAAkB,GAAG,SAAS,EACvC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,6EAUzB;AAED,wBAAgB,SAAS,CACrB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,EAC7C,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,OAAO,EAAE,kBAAkB,GAAG,SAAS,GACxC;IAAE,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CA0B7C;AAED,wBAAgB,8BAA8B,CAC1C,IAAI,EAAE,iBAAiB,EACvB,IAAI,GAAE,MAAe,EACrB,YAAY,CAAC,EAAE,aAAa,UAyC/B;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,MAAe,EAAE,YAAY,CAAC,EAAE,aAAa,UA6DzG;AAED,cAAc;AACd,wBAAgB,aAAa,CACzB,GAAG,EAAE,MAAM,GAAG,aAAa,GAAG,mBAAmB,EACjD,MAAM,CAAC,EAAE,OAAO,EAChB,YAAY,CAAC,EAAE,aAAa,GAC7B,MAAM,CAgBR;AAED,cAAc;AACd,wBAAgB,gBAAgB,CAAC,CAAC,GAAG,mBAAmB,EACpD,IAAI,EAAE,MAAM,EACZ,EACI,WAAW,EACX,SAAS,GACZ,GAAE;IACC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EACJ,MAAM,GACN,WAAW,GACX,SAAS,GACT,MAAM,GACN,WAAW,GACX,OAAO,GACP,SAAS,GACT,qBAAqB,GACrB,qBAAqB,GACrB,qBAAqB,GACrB,iBAAiB,GACjB,eAAe,CAAC;CACpB,GACP,CAAC,GAAG,IAAI,CA0BV;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAItE;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAUvE"}
1
+ {"version":3,"file":"yamlUtils.d.ts","sourceRoot":"","sources":["../../src/utils/yamlUtils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,EACH,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EAExB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EAExB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACH,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,aAAa,EAgBrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAiB,KAAK,aAAa,EAAgC,MAAM,aAAa,CAAC;AAK9F,KAAK,eAAe,GAAG;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,wBAAgB,sBAAsB,CAClC,GAAG,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,EACjC,GAAG,EAAE,eAAe,EACpB,SAAS,UAAO,QAiBnB;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,uCAKrD;AAED,wBAAgB,wBAAwB,CACpC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,EAC7C,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,OAAO,EAAE,kBAAkB,GAAG,SAAS,EACvC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,6EAUzB;AAED,wBAAgB,SAAS,CACrB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,EAC7C,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,OAAO,EAAE,kBAAkB,GAAG,SAAS,GACxC;IAAE,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CA0B7C;AAED,wBAAgB,8BAA8B,CAC1C,IAAI,EAAE,iBAAiB,EACvB,IAAI,GAAE,MAAe,EACrB,YAAY,CAAC,EAAE,aAAa,UAyC/B;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,MAAe,EAAE,YAAY,CAAC,EAAE,aAAa,UA6DzG;AAED,cAAc;AACd,wBAAgB,aAAa,CACzB,GAAG,EAAE,MAAM,GAAG,aAAa,GAAG,mBAAmB,EACjD,MAAM,CAAC,EAAE,OAAO,EAChB,YAAY,CAAC,EAAE,aAAa,GAC7B,MAAM,CAgBR;AA6BD,cAAc;AACd,wBAAgB,gBAAgB,CAAC,CAAC,GAAG,mBAAmB,EACpD,IAAI,EAAE,MAAM,EACZ,EACI,WAAW,EACX,SAAS,GACZ,GAAE;IACC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EACJ,MAAM,GACN,WAAW,GACX,SAAS,GACT,MAAM,GACN,WAAW,GACX,OAAO,GACP,SAAS,GACT,qBAAqB,GACrB,qBAAqB,GACrB,qBAAqB,GACrB,iBAAiB,GACjB,eAAe,CAAC;CACpB,GACP,CAAC,GAAG,IAAI,CA2BV;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAItE;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAUvE"}
@@ -137,7 +137,7 @@ export function getIdentifier(obj, untype, errorContext) {
137
137
  return idRef.localIdentifier;
138
138
  }
139
139
  if (isIdentifierRef(idRef) && !untype) {
140
- const type = idRef.type === "measure" ? "metric" : idRef.type;
140
+ const type = declarativeTypeToReferencePrefix(idRef.type);
141
141
  return `${type}/${idRef.identifier}`;
142
142
  }
143
143
  if (isIdentifierRef(idRef) && untype) {
@@ -145,6 +145,31 @@ export function getIdentifier(obj, untype, errorContext) {
145
145
  }
146
146
  throw newError(CoreErrorCode.ReferenceTypeNotSupported, [JSON.stringify(obj)], errorContext);
147
147
  }
148
+ /**
149
+ * Maps the yaml reference prefix (`metric/`, `computed_attribute/`, ...) to the object type the
150
+ * declarative API uses for the same object.
151
+ */
152
+ function referencePrefixToDeclarativeType(prefix, forceMetric) {
153
+ if (prefix === "metric" && !forceMetric) {
154
+ return "measure";
155
+ }
156
+ if (prefix === "computed_attribute") {
157
+ return "computedAttribute";
158
+ }
159
+ return prefix;
160
+ }
161
+ /**
162
+ * Inverse of {@link referencePrefixToDeclarativeType}.
163
+ */
164
+ function declarativeTypeToReferencePrefix(type) {
165
+ if (type === "measure") {
166
+ return "metric";
167
+ }
168
+ if (type === "computedAttribute") {
169
+ return "computed_attribute";
170
+ }
171
+ return type;
172
+ }
148
173
  /** @public */
149
174
  export function createIdentifier(data, { forceMetric, forceType, } = {}) {
150
175
  const [type, objId] = data.split("/");
@@ -152,9 +177,7 @@ export function createIdentifier(data, { forceMetric, forceType, } = {}) {
152
177
  return {
153
178
  identifier: {
154
179
  type: forceType ||
155
- (type === "metric" && !forceMetric
156
- ? "measure"
157
- : type),
180
+ referencePrefixToDeclarativeType(type, forceMetric),
158
181
  id: objId,
159
182
  },
160
183
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-code-convertors",
3
- "version": "11.56.0-alpha.5",
3
+ "version": "11.56.0-alpha.7",
4
4
  "description": "GoodData AAC declarative converters",
5
5
  "license": "MIT",
6
6
  "author": "GoodData",
@@ -26,15 +26,14 @@
26
26
  "dependencies": {
27
27
  "uuid": "11.1.1",
28
28
  "yaml": "2.8.3",
29
- "@gooddata/api-client-tiger": "11.56.0-alpha.5",
30
- "@gooddata/sdk-code-schemas": "11.56.0-alpha.5",
31
- "@gooddata/sdk-model": "11.56.0-alpha.5"
29
+ "@gooddata/api-client-tiger": "11.56.0-alpha.7",
30
+ "@gooddata/sdk-code-schemas": "11.56.0-alpha.7",
31
+ "@gooddata/sdk-model": "11.56.0-alpha.7"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@microsoft/api-extractor": "7.58.12",
35
35
  "@typescript-eslint/eslint-plugin": "8.58.0",
36
36
  "@typescript-eslint/parser": "8.58.0",
37
- "@typescript/native-preview": "7.0.0-dev.20260707.2",
38
37
  "dependency-cruiser": "17.3.10",
39
38
  "eslint": "^9.39.2",
40
39
  "eslint-plugin-headers": "1.3.3",
@@ -46,10 +45,10 @@
46
45
  "oxfmt": "0.66.0",
47
46
  "oxlint": "1.57.0",
48
47
  "oxlint-tsgolint": "0.15.0",
49
- "typescript": "6.0.3",
48
+ "typescript": "7.0.2",
50
49
  "vitest": "4.1.8",
51
- "@gooddata/eslint-config": "11.56.0-alpha.5",
52
- "@gooddata/oxlint-config": "11.56.0-alpha.5"
50
+ "@gooddata/oxlint-config": "11.56.0-alpha.7",
51
+ "@gooddata/eslint-config": "11.56.0-alpha.7"
53
52
  },
54
53
  "scripts": {
55
54
  "_phase:build": "npm run build",
@@ -57,8 +56,8 @@
57
56
  "_phase:validate": "npm run validate",
58
57
  "api-extractor": "mkdir -p api && [ -z \"${CI}\" ] && (api-extractor run -l) || (api-extractor run)",
59
58
  "build": "npm-run-all -p build-check build-ts && npm run api-extractor",
60
- "build-check": "tsgo",
61
- "build-ts": "tsgo -p tsconfig.build.json",
59
+ "build-check": "tsc",
60
+ "build-ts": "tsc -p tsconfig.build.json",
62
61
  "build-wasm": "bash wasm/build.sh",
63
62
  "check-python-types": "node scripts/check-python-types.mjs",
64
63
  "clean": "../../common/scripts/clean-command-state.sh && rm -rf esm coverage temp *.log tsconfig.tsbuildinfo",