@gooddata/sdk-ui-catalog 11.46.0-alpha.3 → 11.46.0-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/AnalyticsCatalogDetail.d.ts.map +1 -1
- package/esm/AnalyticsCatalogDetail.js +2 -1
- package/esm/catalog/Catalog.d.ts.map +1 -1
- package/esm/catalog/Catalog.js +5 -2
- package/esm/catalogDetail/CatalogDetailActionBar.d.ts +6 -4
- package/esm/catalogDetail/CatalogDetailActionBar.d.ts.map +1 -1
- package/esm/catalogDetail/CatalogDetailActionBar.js +5 -6
- package/esm/catalogDetail/CatalogDetailActions.d.ts +2 -1
- package/esm/catalogDetail/CatalogDetailActions.d.ts.map +1 -1
- package/esm/catalogDetail/CatalogDetailActions.js +6 -2
- package/esm/catalogDetail/CatalogDetailContent.d.ts.map +1 -1
- package/esm/catalogDetail/CatalogDetailContent.js +3 -1
- package/esm/catalogItem/query.d.ts +7 -2
- package/esm/catalogItem/query.d.ts.map +1 -1
- package/esm/catalogItem/query.js +16 -1
- package/esm/header/CreateObjectButton.d.ts +2 -1
- package/esm/header/CreateObjectButton.d.ts.map +1 -1
- package/esm/header/CreateObjectButton.js +42 -38
- package/esm/localization/bundles/en-US.localization-bundle.d.ts +112 -0
- package/esm/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
- package/esm/localization/bundles/en-US.localization-bundle.js +121 -9
- package/esm/main/Main.d.ts.map +1 -1
- package/esm/main/Main.js +2 -3
- package/esm/metric/MetricCreateDialog.d.ts +11 -0
- package/esm/metric/MetricCreateDialog.d.ts.map +1 -0
- package/esm/metric/MetricCreateDialog.js +55 -0
- package/esm/metric/MetricDeleteDialog.d.ts +9 -0
- package/esm/metric/MetricDeleteDialog.d.ts.map +1 -0
- package/esm/metric/MetricDeleteDialog.js +68 -0
- package/esm/metric/MetricDetailActions.d.ts +23 -0
- package/esm/metric/MetricDetailActions.d.ts.map +1 -0
- package/esm/metric/MetricDetailActions.js +101 -0
- package/esm/metric/MetricDialog.d.ts +14 -0
- package/esm/metric/MetricDialog.d.ts.map +1 -0
- package/esm/metric/MetricDialog.js +100 -0
- package/esm/metric/MetricEditDialog.d.ts +11 -0
- package/esm/metric/MetricEditDialog.d.ts.map +1 -0
- package/esm/metric/MetricEditDialog.js +51 -0
- package/esm/metric/MetricMutationContext.d.ts +16 -0
- package/esm/metric/MetricMutationContext.d.ts.map +1 -0
- package/esm/metric/MetricMutationContext.js +32 -0
- package/esm/metric/MetricYamlEditor.d.ts +8 -0
- package/esm/metric/MetricYamlEditor.d.ts.map +1 -0
- package/esm/metric/MetricYamlEditor.js +20 -0
- package/esm/metric/gate.d.ts +9 -0
- package/esm/metric/gate.d.ts.map +1 -0
- package/esm/metric/gate.js +16 -0
- package/esm/metric/metricCompletions.d.ts +7 -0
- package/esm/metric/metricCompletions.d.ts.map +1 -0
- package/esm/metric/metricCompletions.js +59 -0
- package/esm/metric/metricConverter.d.ts +49 -0
- package/esm/metric/metricConverter.d.ts.map +1 -0
- package/esm/metric/metricConverter.js +101 -0
- package/esm/metric/metricCopy.d.ts +4 -0
- package/esm/metric/metricCopy.d.ts.map +1 -0
- package/esm/metric/metricCopy.js +60 -0
- package/esm/metric/metricMutationPort.d.ts +18 -0
- package/esm/metric/metricMutationPort.d.ts.map +1 -0
- package/esm/metric/metricMutationPort.js +39 -0
- package/esm/metric/metricSchema.d.ts +29 -0
- package/esm/metric/metricSchema.d.ts.map +1 -0
- package/esm/metric/metricSchema.js +30 -0
- package/esm/metric/metricSerialization.d.ts +10 -0
- package/esm/metric/metricSerialization.d.ts.map +1 -0
- package/esm/metric/metricSerialization.js +33 -0
- package/esm/metric/metricValidation.d.ts +15 -0
- package/esm/metric/metricValidation.d.ts.map +1 -0
- package/esm/metric/metricValidation.js +47 -0
- package/esm/metric/metricYamlLinter.d.ts +7 -0
- package/esm/metric/metricYamlLinter.d.ts.map +1 -0
- package/esm/metric/metricYamlLinter.js +13 -0
- package/esm/metric/tests/metricMutationPort.test.utils.d.ts +7 -0
- package/esm/metric/tests/metricMutationPort.test.utils.d.ts.map +1 -0
- package/esm/metric/tests/metricMutationPort.test.utils.js +43 -0
- package/esm/parameter/ParameterDialog.d.ts.map +1 -1
- package/esm/parameter/ParameterDialog.js +19 -12
- package/esm/parameter/ParameterYamlEditor.d.ts +3 -1
- package/esm/parameter/ParameterYamlEditor.d.ts.map +1 -1
- package/esm/parameter/ParameterYamlEditor.js +4 -3
- package/esm/parameter/gate.d.ts +5 -0
- package/esm/parameter/gate.d.ts.map +1 -1
- package/esm/parameter/gate.js +8 -0
- package/esm/parameter/parameterCompletions.d.ts +9 -3
- package/esm/parameter/parameterCompletions.d.ts.map +1 -1
- package/esm/parameter/parameterCompletions.js +68 -43
- package/esm/parameter/parameterSchema.d.ts +23 -3
- package/esm/parameter/parameterSchema.d.ts.map +1 -1
- package/esm/parameter/parameterSchema.js +32 -10
- package/esm/parameter/parameterValidation.d.ts +4 -1
- package/esm/parameter/parameterValidation.d.ts.map +1 -1
- package/esm/parameter/parameterValidation.js +22 -9
- package/esm/parameter/yamlLinter.d.ts +1 -4
- package/esm/parameter/yamlLinter.d.ts.map +1 -1
- package/esm/parameter/yamlLinter.js +3 -24
- package/esm/utils/backendError.d.ts +11 -0
- package/esm/utils/backendError.d.ts.map +1 -0
- package/esm/utils/backendError.js +21 -0
- package/esm/utils/yamlSyntaxLinter.d.ts +11 -0
- package/esm/utils/yamlSyntaxLinter.d.ts.map +1 -0
- package/esm/utils/yamlSyntaxLinter.js +31 -0
- package/package.json +15 -14
- package/styles/css/{parameter.css → codeDialog.css} +26 -18
- package/styles/css/codeDialog.css.map +1 -0
- package/styles/css/detail.css +25 -17
- package/styles/css/detail.css.map +1 -1
- package/styles/css/main.css +25 -17
- package/styles/css/main.css.map +1 -1
- package/styles/scss/{parameter.scss → codeDialog.scss} +17 -8
- package/styles/scss/detail.scss +1 -1
- package/styles/css/parameter.css.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// (C) 2026 GoodData Corporation
|
|
2
2
|
import { parse as parseYaml } from "yaml";
|
|
3
|
-
import {
|
|
4
|
-
export function validateParameterYaml(value, options
|
|
3
|
+
import { buildParameterSchema } from "./parameterSchema.js";
|
|
4
|
+
export function validateParameterYaml(value, options) {
|
|
5
5
|
if (value.trim() === "") {
|
|
6
6
|
return invalid("empty");
|
|
7
7
|
}
|
|
@@ -12,9 +12,9 @@ export function validateParameterYaml(value, options = {}) {
|
|
|
12
12
|
catch {
|
|
13
13
|
return invalid("syntax");
|
|
14
14
|
}
|
|
15
|
-
const result =
|
|
15
|
+
const result = buildParameterSchema(options.enabledTypes).safeParse(parsed);
|
|
16
16
|
if (!result.success) {
|
|
17
|
-
return classifySchemaError(result.error);
|
|
17
|
+
return classifySchemaError(result.error, readDeclaredType(parsed));
|
|
18
18
|
}
|
|
19
19
|
if (options.fixedIdentifier !== undefined && result.data.id !== options.fixedIdentifier) {
|
|
20
20
|
return invalid("idImmutable");
|
|
@@ -24,22 +24,22 @@ export function validateParameterYaml(value, options = {}) {
|
|
|
24
24
|
parameter: result.data,
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
|
-
function classifySchemaError(error) {
|
|
27
|
+
function classifySchemaError(error, declaredType) {
|
|
28
28
|
for (const issue of error.issues) {
|
|
29
29
|
const path = issue.path.map(String).join(".");
|
|
30
30
|
if (issue.code === "custom") {
|
|
31
31
|
if (issue.message === "invalidConstraintRange") {
|
|
32
|
-
return invalid("invalidConstraintRange");
|
|
32
|
+
return invalid("invalidConstraintRange", declaredType);
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
if (path === "definition.type") {
|
|
36
36
|
return invalid("unsupportedType");
|
|
37
37
|
}
|
|
38
38
|
if (path === "definition.defaultValue") {
|
|
39
|
-
return invalid("invalidDefaultValue");
|
|
39
|
+
return invalid("invalidDefaultValue", declaredType);
|
|
40
40
|
}
|
|
41
41
|
if (path.startsWith("definition.constraints")) {
|
|
42
|
-
return invalid("invalidConstraints");
|
|
42
|
+
return invalid("invalidConstraints", declaredType);
|
|
43
43
|
}
|
|
44
44
|
if (path === "tags" || path.startsWith("tags.")) {
|
|
45
45
|
return invalid("invalidTags");
|
|
@@ -47,9 +47,22 @@ function classifySchemaError(error) {
|
|
|
47
47
|
}
|
|
48
48
|
return invalid("invalidStructure");
|
|
49
49
|
}
|
|
50
|
-
|
|
50
|
+
/** The declared `definition.type`, when it names a known model type; drives the type-specific error copy. */
|
|
51
|
+
function readDeclaredType(parsed) {
|
|
52
|
+
if (!parsed || typeof parsed !== "object") {
|
|
53
|
+
return undefined;
|
|
54
|
+
}
|
|
55
|
+
const { definition } = parsed;
|
|
56
|
+
if (!definition || typeof definition !== "object") {
|
|
57
|
+
return undefined;
|
|
58
|
+
}
|
|
59
|
+
const { type } = definition;
|
|
60
|
+
return type === "NUMBER" || type === "STRING" ? type : undefined;
|
|
61
|
+
}
|
|
62
|
+
function invalid(code, type) {
|
|
51
63
|
return {
|
|
52
64
|
isValid: false,
|
|
53
65
|
errorCode: code,
|
|
66
|
+
type,
|
|
54
67
|
};
|
|
55
68
|
}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import { type IntlShape } from "react-intl";
|
|
2
2
|
/**
|
|
3
3
|
* Creates a CodeMirror linter extension that reports YAML syntax errors
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* This reuses the tree already built by `@codemirror/lang-yaml` for
|
|
7
|
-
* highlighting — no extra parsing or dependencies required.
|
|
4
|
+
* using the parameter-specific syntax error message.
|
|
8
5
|
*/
|
|
9
6
|
export declare function createYamlLinter(intl: IntlShape): import("@codemirror/state").Extension;
|
|
10
7
|
//# sourceMappingURL=yamlLinter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yamlLinter.d.ts","sourceRoot":"","sources":["../../src/parameter/yamlLinter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"yamlLinter.d.ts","sourceRoot":"","sources":["../../src/parameter/yamlLinter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAkB,MAAM,YAAY,CAAC;AAQ5D;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,yCAE/C"}
|
|
@@ -1,34 +1,13 @@
|
|
|
1
1
|
// (C) 2026 GoodData Corporation
|
|
2
|
-
import { syntaxTree } from "@codemirror/language";
|
|
3
|
-
import { linter } from "@codemirror/lint";
|
|
4
2
|
import { defineMessages } from "react-intl";
|
|
3
|
+
import { createYamlSyntaxLinter } from "../utils/yamlSyntaxLinter.js";
|
|
5
4
|
const messages = defineMessages({
|
|
6
5
|
syntaxError: { id: "analyticsCatalog.parameter.validation.syntax" },
|
|
7
6
|
});
|
|
8
7
|
/**
|
|
9
8
|
* Creates a CodeMirror linter extension that reports YAML syntax errors
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* This reuses the tree already built by `@codemirror/lang-yaml` for
|
|
13
|
-
* highlighting — no extra parsing or dependencies required.
|
|
9
|
+
* using the parameter-specific syntax error message.
|
|
14
10
|
*/
|
|
15
11
|
export function createYamlLinter(intl) {
|
|
16
|
-
|
|
17
|
-
return linter((view) => {
|
|
18
|
-
const diagnostics = [];
|
|
19
|
-
const tree = syntaxTree(view.state);
|
|
20
|
-
tree.iterate({
|
|
21
|
-
enter(node) {
|
|
22
|
-
if (node.type.isError) {
|
|
23
|
-
diagnostics.push({
|
|
24
|
-
from: node.from,
|
|
25
|
-
to: Math.max(node.to, node.from + 1),
|
|
26
|
-
severity: "error",
|
|
27
|
-
message,
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
},
|
|
31
|
-
});
|
|
32
|
-
return diagnostics;
|
|
33
|
-
});
|
|
12
|
+
return createYamlSyntaxLinter(intl.formatMessage(messages.syntaxError));
|
|
34
13
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Extracts the human-readable reason from a backend error, if present.
|
|
3
|
+
*
|
|
4
|
+
* For a generic `UnexpectedResponseError` the meaningful reason lives in Tiger's RFC 7807
|
|
5
|
+
* `responseBody.detail`, while `error.message` carries only the transport-level "Request failed
|
|
6
|
+
* with status code NNN" — so that message is intentionally ignored. Other typed backend errors
|
|
7
|
+
* (e.g. `LimitReached` → "Upgrade your plan to create more objects.") carry a curated, user-facing
|
|
8
|
+
* message, which is preserved. Callers fall back to a localized generic message otherwise.
|
|
9
|
+
*/
|
|
10
|
+
export declare function extractBackendErrorDetail(error: unknown): string | undefined;
|
|
11
|
+
//# sourceMappingURL=backendError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backendError.d.ts","sourceRoot":"","sources":["../../src/utils/backendError.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAS5E"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// (C) 2026 GoodData Corporation
|
|
2
|
+
import { isAnalyticalBackendError, isUnexpectedResponseError } from "@gooddata/sdk-backend-spi";
|
|
3
|
+
/**
|
|
4
|
+
* Extracts the human-readable reason from a backend error, if present.
|
|
5
|
+
*
|
|
6
|
+
* For a generic `UnexpectedResponseError` the meaningful reason lives in Tiger's RFC 7807
|
|
7
|
+
* `responseBody.detail`, while `error.message` carries only the transport-level "Request failed
|
|
8
|
+
* with status code NNN" — so that message is intentionally ignored. Other typed backend errors
|
|
9
|
+
* (e.g. `LimitReached` → "Upgrade your plan to create more objects.") carry a curated, user-facing
|
|
10
|
+
* message, which is preserved. Callers fall back to a localized generic message otherwise.
|
|
11
|
+
*/
|
|
12
|
+
export function extractBackendErrorDetail(error) {
|
|
13
|
+
if (isUnexpectedResponseError(error)) {
|
|
14
|
+
const detail = error.responseBody?.detail;
|
|
15
|
+
return typeof detail === "string" && detail.trim() !== "" ? detail : undefined;
|
|
16
|
+
}
|
|
17
|
+
if (isAnalyticalBackendError(error) && error.message.trim() !== "") {
|
|
18
|
+
return error.message;
|
|
19
|
+
}
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Creates a CodeMirror linter extension that reports YAML syntax errors
|
|
3
|
+
* by walking the parse tree for error nodes.
|
|
4
|
+
*
|
|
5
|
+
* This reuses the tree already built by `@codemirror/lang-yaml` for
|
|
6
|
+
* highlighting — no extra parsing or dependencies required.
|
|
7
|
+
*
|
|
8
|
+
* @param message - localized message shown on each syntax error diagnostic
|
|
9
|
+
*/
|
|
10
|
+
export declare function createYamlSyntaxLinter(message: string): import("@codemirror/state").Extension;
|
|
11
|
+
//# sourceMappingURL=yamlSyntaxLinter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yamlSyntaxLinter.d.ts","sourceRoot":"","sources":["../../src/utils/yamlSyntaxLinter.ts"],"names":[],"mappings":"AAKA;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,yCAoBrD"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// (C) 2026 GoodData Corporation
|
|
2
|
+
import { syntaxTree } from "@codemirror/language";
|
|
3
|
+
import { linter } from "@codemirror/lint";
|
|
4
|
+
/**
|
|
5
|
+
* Creates a CodeMirror linter extension that reports YAML syntax errors
|
|
6
|
+
* by walking the parse tree for error nodes.
|
|
7
|
+
*
|
|
8
|
+
* This reuses the tree already built by `@codemirror/lang-yaml` for
|
|
9
|
+
* highlighting — no extra parsing or dependencies required.
|
|
10
|
+
*
|
|
11
|
+
* @param message - localized message shown on each syntax error diagnostic
|
|
12
|
+
*/
|
|
13
|
+
export function createYamlSyntaxLinter(message) {
|
|
14
|
+
return linter((view) => {
|
|
15
|
+
const diagnostics = [];
|
|
16
|
+
const tree = syntaxTree(view.state);
|
|
17
|
+
tree.iterate({
|
|
18
|
+
enter(node) {
|
|
19
|
+
if (node.type.isError) {
|
|
20
|
+
diagnostics.push({
|
|
21
|
+
from: node.from,
|
|
22
|
+
to: Math.max(node.to, node.from + 1),
|
|
23
|
+
severity: "error",
|
|
24
|
+
message,
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
});
|
|
29
|
+
return diagnostics;
|
|
30
|
+
});
|
|
31
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gooddata/sdk-ui-catalog",
|
|
3
|
-
"version": "11.46.0-alpha.
|
|
3
|
+
"version": "11.46.0-alpha.5",
|
|
4
4
|
"description": "GoodData SDK - Analytics Catalog",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "GoodData Corporation",
|
|
@@ -45,14 +45,15 @@
|
|
|
45
45
|
"tslib": "2.8.1",
|
|
46
46
|
"yaml": "2.8.3",
|
|
47
47
|
"zod": "4.3.6",
|
|
48
|
-
"@gooddata/sdk-backend-spi": "11.46.0-alpha.
|
|
49
|
-
"@gooddata/sdk-
|
|
50
|
-
"@gooddata/sdk-
|
|
51
|
-
"@gooddata/sdk-ui
|
|
52
|
-
"@gooddata/sdk-ui": "11.46.0-alpha.
|
|
53
|
-
"@gooddata/sdk-ui-
|
|
54
|
-
"@gooddata/sdk-ui-
|
|
55
|
-
"@gooddata/
|
|
48
|
+
"@gooddata/sdk-backend-spi": "11.46.0-alpha.5",
|
|
49
|
+
"@gooddata/sdk-code-schemas": "11.46.0-alpha.5",
|
|
50
|
+
"@gooddata/sdk-model": "11.46.0-alpha.5",
|
|
51
|
+
"@gooddata/sdk-ui": "11.46.0-alpha.5",
|
|
52
|
+
"@gooddata/sdk-ui-ext": "11.46.0-alpha.5",
|
|
53
|
+
"@gooddata/sdk-ui-kit": "11.46.0-alpha.5",
|
|
54
|
+
"@gooddata/sdk-ui-semantic-search": "11.46.0-alpha.5",
|
|
55
|
+
"@gooddata/sdk-ui-theme-provider": "11.46.0-alpha.5",
|
|
56
|
+
"@gooddata/util": "11.46.0-alpha.5"
|
|
56
57
|
},
|
|
57
58
|
"devDependencies": {
|
|
58
59
|
"@microsoft/api-documenter": "^7.17.0",
|
|
@@ -92,11 +93,11 @@
|
|
|
92
93
|
"typescript": "5.9.3",
|
|
93
94
|
"vitest": "4.1.8",
|
|
94
95
|
"vitest-dom": "0.1.1",
|
|
95
|
-
"@gooddata/eslint-config": "11.46.0-alpha.
|
|
96
|
-
"@gooddata/i18n-toolkit": "11.46.0-alpha.
|
|
97
|
-
"@gooddata/
|
|
98
|
-
"@gooddata/sdk-backend-mockingbird": "11.46.0-alpha.
|
|
99
|
-
"@gooddata/
|
|
96
|
+
"@gooddata/eslint-config": "11.46.0-alpha.5",
|
|
97
|
+
"@gooddata/i18n-toolkit": "11.46.0-alpha.5",
|
|
98
|
+
"@gooddata/stylelint-config": "11.46.0-alpha.5",
|
|
99
|
+
"@gooddata/sdk-backend-mockingbird": "11.46.0-alpha.5",
|
|
100
|
+
"@gooddata/oxlint-config": "11.46.0-alpha.5"
|
|
100
101
|
},
|
|
101
102
|
"peerDependencies": {
|
|
102
103
|
"react": "^18.0.0 || ^19.0.0",
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
.gd-
|
|
1
|
+
.gd-ascode-dialog {
|
|
2
2
|
width: 640px;
|
|
3
3
|
height: 560px;
|
|
4
4
|
flex-direction: column;
|
|
5
5
|
display: flex;
|
|
6
6
|
overflow: hidden;
|
|
7
7
|
}
|
|
8
|
-
.gd-
|
|
8
|
+
.gd-ascode-dialog.overlay.gd-dialog:not(.gd-dropdown) {
|
|
9
9
|
max-width: calc(100vw - 40px);
|
|
10
10
|
padding: 0;
|
|
11
11
|
}
|
|
12
|
-
.gd-
|
|
12
|
+
.gd-ascode-dialog .gd-dialog-header-wrapper {
|
|
13
13
|
padding: 20px 20px 0;
|
|
14
14
|
}
|
|
15
|
-
.gd-
|
|
15
|
+
.gd-ascode-dialog .gd-dialog-content {
|
|
16
16
|
flex: auto;
|
|
17
17
|
padding: 0;
|
|
18
18
|
overflow: hidden;
|
|
19
19
|
}
|
|
20
|
-
.gd-
|
|
20
|
+
.gd-ascode-dialog .gd-dialog-footer {
|
|
21
21
|
display: flex;
|
|
22
22
|
align-items: center;
|
|
23
23
|
margin-top: 0;
|
|
@@ -25,15 +25,23 @@
|
|
|
25
25
|
border-top: 1px solid var(--gd-palette-complementary-3);
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
.gd-
|
|
28
|
+
.gd-ascode-dialog-content {
|
|
29
29
|
display: grid;
|
|
30
30
|
grid-template-rows: auto 1fr;
|
|
31
31
|
height: 100%;
|
|
32
|
-
background-color: #fcfcfd;
|
|
32
|
+
background-color: var(--gd-palette-complementary-0-from-theme, #fcfcfd);
|
|
33
33
|
border-top: 1px solid var(--gd-palette-complementary-3);
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
.gd-
|
|
36
|
+
.gd-ascode-dialog-loading {
|
|
37
|
+
grid-row: 1/-1;
|
|
38
|
+
display: flex;
|
|
39
|
+
align-items: center;
|
|
40
|
+
justify-content: center;
|
|
41
|
+
height: 100%;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.gd-ascode-dialog-section-header {
|
|
37
45
|
display: flex;
|
|
38
46
|
align-items: center;
|
|
39
47
|
gap: 5px;
|
|
@@ -45,38 +53,38 @@
|
|
|
45
53
|
color: var(--gd-palette-complementary-6);
|
|
46
54
|
}
|
|
47
55
|
|
|
48
|
-
.gd-
|
|
56
|
+
.gd-ascode-dialog-editor {
|
|
49
57
|
height: 100%;
|
|
50
58
|
overflow: hidden;
|
|
51
59
|
padding: 10px 20px 20px;
|
|
52
60
|
}
|
|
53
|
-
.gd-
|
|
61
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input {
|
|
54
62
|
height: 100%;
|
|
55
63
|
font-family: "Andale Mono", monospace;
|
|
56
64
|
font-size: 14px;
|
|
57
65
|
line-height: 22px;
|
|
58
66
|
}
|
|
59
|
-
.gd-
|
|
67
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-editor {
|
|
60
68
|
height: 100%;
|
|
61
69
|
border-color: transparent;
|
|
62
70
|
background-color: transparent;
|
|
63
71
|
box-shadow: none;
|
|
64
72
|
transition: none;
|
|
65
73
|
}
|
|
66
|
-
.gd-
|
|
74
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-editor.cm-focused {
|
|
67
75
|
border-color: var(--gd-palette-primary-base, #14b2e2);
|
|
68
76
|
}
|
|
69
|
-
.gd-
|
|
77
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-content {
|
|
70
78
|
font-family: "Andale Mono", monospace;
|
|
71
79
|
}
|
|
72
|
-
.gd-
|
|
80
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-gutters {
|
|
73
81
|
background-color: transparent;
|
|
74
82
|
border-right: none;
|
|
75
83
|
color: var(--gd-palette-complementary-6);
|
|
76
84
|
padding-right: 10px;
|
|
77
85
|
}
|
|
78
86
|
|
|
79
|
-
.gd-
|
|
87
|
+
.gd-ascode-dialog-error {
|
|
80
88
|
background-color: var(--gd-palette-error-lightest, #fff2f1);
|
|
81
89
|
color: var(--gd-palette-error-base, #e54d42);
|
|
82
90
|
font-size: 14px;
|
|
@@ -85,11 +93,11 @@
|
|
|
85
93
|
margin: 0 20px 10px;
|
|
86
94
|
border-radius: 3px;
|
|
87
95
|
}
|
|
88
|
-
.gd-
|
|
96
|
+
.gd-ascode-dialog-error .gd-ascode-dialog-error-label {
|
|
89
97
|
font-weight: 700;
|
|
90
98
|
}
|
|
91
99
|
|
|
92
|
-
.gd-
|
|
100
|
+
.gd-ascode-dialog-footer-left {
|
|
93
101
|
display: flex;
|
|
94
102
|
align-items: center;
|
|
95
103
|
justify-content: space-between;
|
|
@@ -98,4 +106,4 @@
|
|
|
98
106
|
margin-right: 10px;
|
|
99
107
|
}
|
|
100
108
|
|
|
101
|
-
/*# sourceMappingURL=
|
|
109
|
+
/*# sourceMappingURL=codeDialog.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../scss/codeDialog.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss"],"names":[],"mappings":"AAIA;EACI;EACA;EACA;EACA;EACA;;AAGA;EACI;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAIR;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI,cCpCU;;ADwClB;EACI;;AAGJ;EACI;EACA;EACA;EACA;;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA","file":"codeDialog.css"}
|
package/styles/css/detail.css
CHANGED
|
@@ -14,26 +14,26 @@
|
|
|
14
14
|
--catalog-object-type-icon-color: #f18600;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
.gd-
|
|
17
|
+
.gd-ascode-dialog {
|
|
18
18
|
width: 640px;
|
|
19
19
|
height: 560px;
|
|
20
20
|
flex-direction: column;
|
|
21
21
|
display: flex;
|
|
22
22
|
overflow: hidden;
|
|
23
23
|
}
|
|
24
|
-
.gd-
|
|
24
|
+
.gd-ascode-dialog.overlay.gd-dialog:not(.gd-dropdown) {
|
|
25
25
|
max-width: calc(100vw - 40px);
|
|
26
26
|
padding: 0;
|
|
27
27
|
}
|
|
28
|
-
.gd-
|
|
28
|
+
.gd-ascode-dialog .gd-dialog-header-wrapper {
|
|
29
29
|
padding: 20px 20px 0;
|
|
30
30
|
}
|
|
31
|
-
.gd-
|
|
31
|
+
.gd-ascode-dialog .gd-dialog-content {
|
|
32
32
|
flex: auto;
|
|
33
33
|
padding: 0;
|
|
34
34
|
overflow: hidden;
|
|
35
35
|
}
|
|
36
|
-
.gd-
|
|
36
|
+
.gd-ascode-dialog .gd-dialog-footer {
|
|
37
37
|
display: flex;
|
|
38
38
|
align-items: center;
|
|
39
39
|
margin-top: 0;
|
|
@@ -41,15 +41,23 @@
|
|
|
41
41
|
border-top: 1px solid var(--gd-palette-complementary-3);
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
.gd-
|
|
44
|
+
.gd-ascode-dialog-content {
|
|
45
45
|
display: grid;
|
|
46
46
|
grid-template-rows: auto 1fr;
|
|
47
47
|
height: 100%;
|
|
48
|
-
background-color: #fcfcfd;
|
|
48
|
+
background-color: var(--gd-palette-complementary-0-from-theme, #fcfcfd);
|
|
49
49
|
border-top: 1px solid var(--gd-palette-complementary-3);
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
-
.gd-
|
|
52
|
+
.gd-ascode-dialog-loading {
|
|
53
|
+
grid-row: 1/-1;
|
|
54
|
+
display: flex;
|
|
55
|
+
align-items: center;
|
|
56
|
+
justify-content: center;
|
|
57
|
+
height: 100%;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.gd-ascode-dialog-section-header {
|
|
53
61
|
display: flex;
|
|
54
62
|
align-items: center;
|
|
55
63
|
gap: 5px;
|
|
@@ -61,38 +69,38 @@
|
|
|
61
69
|
color: var(--gd-palette-complementary-6);
|
|
62
70
|
}
|
|
63
71
|
|
|
64
|
-
.gd-
|
|
72
|
+
.gd-ascode-dialog-editor {
|
|
65
73
|
height: 100%;
|
|
66
74
|
overflow: hidden;
|
|
67
75
|
padding: 10px 20px 20px;
|
|
68
76
|
}
|
|
69
|
-
.gd-
|
|
77
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input {
|
|
70
78
|
height: 100%;
|
|
71
79
|
font-family: "Andale Mono", monospace;
|
|
72
80
|
font-size: 14px;
|
|
73
81
|
line-height: 22px;
|
|
74
82
|
}
|
|
75
|
-
.gd-
|
|
83
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-editor {
|
|
76
84
|
height: 100%;
|
|
77
85
|
border-color: transparent;
|
|
78
86
|
background-color: transparent;
|
|
79
87
|
box-shadow: none;
|
|
80
88
|
transition: none;
|
|
81
89
|
}
|
|
82
|
-
.gd-
|
|
90
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-editor.cm-focused {
|
|
83
91
|
border-color: var(--gd-palette-primary-base, #14b2e2);
|
|
84
92
|
}
|
|
85
|
-
.gd-
|
|
93
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-content {
|
|
86
94
|
font-family: "Andale Mono", monospace;
|
|
87
95
|
}
|
|
88
|
-
.gd-
|
|
96
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-gutters {
|
|
89
97
|
background-color: transparent;
|
|
90
98
|
border-right: none;
|
|
91
99
|
color: var(--gd-palette-complementary-6);
|
|
92
100
|
padding-right: 10px;
|
|
93
101
|
}
|
|
94
102
|
|
|
95
|
-
.gd-
|
|
103
|
+
.gd-ascode-dialog-error {
|
|
96
104
|
background-color: var(--gd-palette-error-lightest, #fff2f1);
|
|
97
105
|
color: var(--gd-palette-error-base, #e54d42);
|
|
98
106
|
font-size: 14px;
|
|
@@ -101,11 +109,11 @@
|
|
|
101
109
|
margin: 0 20px 10px;
|
|
102
110
|
border-radius: 3px;
|
|
103
111
|
}
|
|
104
|
-
.gd-
|
|
112
|
+
.gd-ascode-dialog-error .gd-ascode-dialog-error-label {
|
|
105
113
|
font-weight: 700;
|
|
106
114
|
}
|
|
107
115
|
|
|
108
|
-
.gd-
|
|
116
|
+
.gd-ascode-dialog-footer-left {
|
|
109
117
|
display: flex;
|
|
110
118
|
align-items: center;
|
|
111
119
|
justify-content: space-between;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../scss/objectType.scss","../scss/
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../scss/objectType.scss","../scss/codeDialog.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss","../scss/detail.scss"],"names":[],"mappings":"AAKI;EAEI;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;EAEI;;AAGJ;EACI;;;ACpBR;EACI;EACA;EACA;EACA;EACA;;AAGA;EACI;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAIR;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI,cCpCU;;ADwClB;EACI;;AAGJ;EACI;EACA;EACA;EACA;;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;;;AE1GJ;EACI,aDwFc;ECvFd,WAJgB;EAKhB,OAVI;EAWJ;;AAEA;EANJ;IAOQ;;;AAGJ;EAEI;EACA;;AAGJ;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;;AAGA;EACI;EACA;EACA;;AAIJ;EACI;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA,ODzCA;EC0CA,WAtEE;EAuEF,aAtES;EAuET;EACA;;AAEA;EACI;;AAOJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI,OD3EG;;AC8EP;EACI;EACA,OD7EJ;EC8EI;EACA;;AAGJ;EAEI;;AAGJ;EACI;EACA;EACA;EACA;;AAIR;EACI;;AAEA;EACI,ODnGJ;ECoGI,aAzHQ;EA0HR,WA3HC;EA4HD;EACA;EACA;;AAGJ;EACI,ODxGJ;ECyGI,WAjIA;EAkIA;EACA;EACA;EACA;EACA;;AAGJ;EACI,ODzHG;;AC4HP;EACI;EACA,OD3HJ;;AC+HJ;EACI;;AAEA;EACI;;AAKZ;EACI;EACA;;AAIR;EACI;EACA;EACA;;AAEA;EACI;;AAKR;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;AAAA;EAEI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAMR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;;AAIR;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAEA;EACI;;AAKZ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA,ODhQQ;ECiQR;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAKJ;EACI;;AAGJ;EACI;EACA;;AAKJ;EACI;EACA;;AAGJ;EACI,ODjSW;;ACoSf;EACI;EACA,ODnSI;;ACuSZ;EACI,ODpSQ;ECqSR;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAEA;EACI,ODvTW;ECwTX;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;;AAEJ;EACI;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAIR;EACI,MD7XS;;AC+Xb;AAAA;EAEI,MDhYQ;;ACkYZ;AAAA;EAEI,MDlYO;;ACoYX;EACI;;AAEJ;EACI;;AAGJ;EACI,QD3XW;;;ACiYnB;EACI;EACA;EACA;EACA;EACA;EACA;EACA,kBD9YS;EC+YT;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAGI;EACI;EACA;;AAIR;EACI;;AAGJ;EACI;;AAIR;EACI;EACA;EACA,kBD/bK;ECgcL;EACA;EACA,ODrbI;;ACubJ;EACI;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI","file":"detail.css"}
|
package/styles/css/main.css
CHANGED
|
@@ -330,26 +330,26 @@
|
|
|
330
330
|
--catalog-object-type-icon-color: #f18600;
|
|
331
331
|
}
|
|
332
332
|
|
|
333
|
-
.gd-
|
|
333
|
+
.gd-ascode-dialog {
|
|
334
334
|
width: 640px;
|
|
335
335
|
height: 560px;
|
|
336
336
|
flex-direction: column;
|
|
337
337
|
display: flex;
|
|
338
338
|
overflow: hidden;
|
|
339
339
|
}
|
|
340
|
-
.gd-
|
|
340
|
+
.gd-ascode-dialog.overlay.gd-dialog:not(.gd-dropdown) {
|
|
341
341
|
max-width: calc(100vw - 40px);
|
|
342
342
|
padding: 0;
|
|
343
343
|
}
|
|
344
|
-
.gd-
|
|
344
|
+
.gd-ascode-dialog .gd-dialog-header-wrapper {
|
|
345
345
|
padding: 20px 20px 0;
|
|
346
346
|
}
|
|
347
|
-
.gd-
|
|
347
|
+
.gd-ascode-dialog .gd-dialog-content {
|
|
348
348
|
flex: auto;
|
|
349
349
|
padding: 0;
|
|
350
350
|
overflow: hidden;
|
|
351
351
|
}
|
|
352
|
-
.gd-
|
|
352
|
+
.gd-ascode-dialog .gd-dialog-footer {
|
|
353
353
|
display: flex;
|
|
354
354
|
align-items: center;
|
|
355
355
|
margin-top: 0;
|
|
@@ -357,15 +357,23 @@
|
|
|
357
357
|
border-top: 1px solid var(--gd-palette-complementary-3);
|
|
358
358
|
}
|
|
359
359
|
|
|
360
|
-
.gd-
|
|
360
|
+
.gd-ascode-dialog-content {
|
|
361
361
|
display: grid;
|
|
362
362
|
grid-template-rows: auto 1fr;
|
|
363
363
|
height: 100%;
|
|
364
|
-
background-color: #fcfcfd;
|
|
364
|
+
background-color: var(--gd-palette-complementary-0-from-theme, #fcfcfd);
|
|
365
365
|
border-top: 1px solid var(--gd-palette-complementary-3);
|
|
366
366
|
}
|
|
367
367
|
|
|
368
|
-
.gd-
|
|
368
|
+
.gd-ascode-dialog-loading {
|
|
369
|
+
grid-row: 1/-1;
|
|
370
|
+
display: flex;
|
|
371
|
+
align-items: center;
|
|
372
|
+
justify-content: center;
|
|
373
|
+
height: 100%;
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
.gd-ascode-dialog-section-header {
|
|
369
377
|
display: flex;
|
|
370
378
|
align-items: center;
|
|
371
379
|
gap: 5px;
|
|
@@ -377,38 +385,38 @@
|
|
|
377
385
|
color: var(--gd-palette-complementary-6);
|
|
378
386
|
}
|
|
379
387
|
|
|
380
|
-
.gd-
|
|
388
|
+
.gd-ascode-dialog-editor {
|
|
381
389
|
height: 100%;
|
|
382
390
|
overflow: hidden;
|
|
383
391
|
padding: 10px 20px 20px;
|
|
384
392
|
}
|
|
385
|
-
.gd-
|
|
393
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input {
|
|
386
394
|
height: 100%;
|
|
387
395
|
font-family: "Andale Mono", monospace;
|
|
388
396
|
font-size: 14px;
|
|
389
397
|
line-height: 22px;
|
|
390
398
|
}
|
|
391
|
-
.gd-
|
|
399
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-editor {
|
|
392
400
|
height: 100%;
|
|
393
401
|
border-color: transparent;
|
|
394
402
|
background-color: transparent;
|
|
395
403
|
box-shadow: none;
|
|
396
404
|
transition: none;
|
|
397
405
|
}
|
|
398
|
-
.gd-
|
|
406
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-editor.cm-focused {
|
|
399
407
|
border-color: var(--gd-palette-primary-base, #14b2e2);
|
|
400
408
|
}
|
|
401
|
-
.gd-
|
|
409
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-content {
|
|
402
410
|
font-family: "Andale Mono", monospace;
|
|
403
411
|
}
|
|
404
|
-
.gd-
|
|
412
|
+
.gd-ascode-dialog-editor .gd-input-syntax-highlighting-input .cm-gutters {
|
|
405
413
|
background-color: transparent;
|
|
406
414
|
border-right: none;
|
|
407
415
|
color: var(--gd-palette-complementary-6);
|
|
408
416
|
padding-right: 10px;
|
|
409
417
|
}
|
|
410
418
|
|
|
411
|
-
.gd-
|
|
419
|
+
.gd-ascode-dialog-error {
|
|
412
420
|
background-color: var(--gd-palette-error-lightest, #fff2f1);
|
|
413
421
|
color: var(--gd-palette-error-base, #e54d42);
|
|
414
422
|
font-size: 14px;
|
|
@@ -417,11 +425,11 @@
|
|
|
417
425
|
margin: 0 20px 10px;
|
|
418
426
|
border-radius: 3px;
|
|
419
427
|
}
|
|
420
|
-
.gd-
|
|
428
|
+
.gd-ascode-dialog-error .gd-ascode-dialog-error-label {
|
|
421
429
|
font-weight: 700;
|
|
422
430
|
}
|
|
423
431
|
|
|
424
|
-
.gd-
|
|
432
|
+
.gd-ascode-dialog-footer-left {
|
|
425
433
|
display: flex;
|
|
426
434
|
align-items: center;
|
|
427
435
|
justify-content: space-between;
|