@eccenca/gui-elements 24.4.1-featurepreparefinalnextcmem6943.2 → 25.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +29 -12
- package/dist/cjs/components/AutocompleteField/AutoCompleteField.js +1 -1
- package/dist/cjs/components/AutocompleteField/AutoCompleteField.js.map +1 -1
- package/dist/cjs/components/Button/Button.js +1 -1
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/Dialog/Modal.js +15 -3
- package/dist/cjs/components/Dialog/Modal.js.map +1 -1
- package/dist/cjs/components/Dialog/ModalContext.js +45 -0
- package/dist/cjs/components/Dialog/ModalContext.js.map +1 -0
- package/dist/cjs/components/Dialog/index.js +1 -0
- package/dist/cjs/components/Dialog/index.js.map +1 -1
- package/dist/cjs/components/Icon/canonicalIconNames.js +4 -0
- package/dist/cjs/components/Icon/canonicalIconNames.js.map +1 -1
- package/dist/cjs/components/Spinner/Spinner.js +2 -1
- package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
- package/dist/cjs/extensions/react-flow/nodes/NodeContent.js +2 -2
- package/dist/cjs/extensions/react-flow/nodes/NodeContent.js.map +1 -1
- package/dist/esm/components/AutocompleteField/AutoCompleteField.js +1 -1
- package/dist/esm/components/AutocompleteField/AutoCompleteField.js.map +1 -1
- package/dist/esm/components/Button/Button.js +1 -1
- package/dist/esm/components/Button/Button.js.map +1 -1
- package/dist/esm/components/Dialog/Modal.js +15 -3
- package/dist/esm/components/Dialog/Modal.js.map +1 -1
- package/dist/esm/components/Dialog/ModalContext.js +63 -0
- package/dist/esm/components/Dialog/ModalContext.js.map +1 -0
- package/dist/esm/components/Dialog/index.js +1 -0
- package/dist/esm/components/Dialog/index.js.map +1 -1
- package/dist/esm/components/Icon/canonicalIconNames.js +4 -0
- package/dist/esm/components/Icon/canonicalIconNames.js.map +1 -1
- package/dist/esm/components/Spinner/Spinner.js +2 -1
- package/dist/esm/components/Spinner/Spinner.js.map +1 -1
- package/dist/esm/extensions/react-flow/nodes/NodeContent.js +2 -2
- package/dist/esm/extensions/react-flow/nodes/NodeContent.js.map +1 -1
- package/dist/types/components/Button/Button.d.ts +14 -7
- package/dist/types/components/Dialog/Modal.d.ts +9 -1
- package/dist/types/components/Dialog/ModalContext.d.ts +13 -0
- package/dist/types/components/Dialog/index.d.ts +1 -0
- package/dist/types/components/Icon/canonicalIconNames.d.ts +4 -0
- package/dist/types/components/Spinner/Spinner.d.ts +11 -4
- package/dist/types/extensions/react-flow/edges/EdgeLabel.d.ts +1 -1
- package/package.json +1 -1
- package/src/cmem/react-flow/_minimap.scss +10 -0
- package/src/cmem/react-flow/configuration/_colors-graph.scss +12 -12
- package/src/cmem/react-flow/configuration/_colors-linking.scss +8 -8
- package/src/cmem/react-flow/configuration/_colors-workflow.scss +11 -11
- package/src/common/scss/_color-functions.scss +5 -0
- package/src/components/AutocompleteField/AutoCompleteField.tsx +1 -0
- package/src/components/Button/Button.stories.tsx +7 -1
- package/src/components/Button/Button.tsx +16 -9
- package/src/components/Button/button.scss +86 -24
- package/src/components/Chat/stories/ChatField.stories.tsx +6 -1
- package/src/components/Dialog/Modal.tsx +28 -3
- package/src/components/Dialog/ModalContext.tsx +48 -0
- package/src/components/Dialog/index.ts +1 -0
- package/src/components/Dialog/stories/Modal.stories.tsx +143 -2
- package/src/components/Icon/canonicalIconNames.tsx +4 -0
- package/src/components/Icon/icon.scss +6 -0
- package/src/components/Icon/stories/Icon.stories.tsx +65 -5
- package/src/components/Icon/stories/IconButton.stories.tsx +2 -1
- package/src/components/Notification/Notification.stories.tsx +20 -6
- package/src/components/Notification/notification.scss +7 -2
- package/src/components/ProgressBar/Stories/ProgressBar.stories.tsx +7 -1
- package/src/components/Select/Select.stories.tsx +1 -1
- package/src/components/Spinner/Spinner.tsx +13 -3
- package/src/components/Spinner/Stories/spinner.stories.tsx +1 -1
- package/src/components/Spinner/spinner.scss +5 -1
- package/src/components/Tag/tag.scss +89 -68
- package/src/components/TextField/textfield.scss +23 -15
- package/src/components/VisualTour/stories/VisualTour.stories.tsx +1 -1
- package/src/configuration/_palettes.scss +1 -0
- package/src/extensions/react-flow/_react-flow_v12.scss +10 -14
- package/src/extensions/react-flow/edges/EdgeLabel.tsx +1 -1
- package/src/extensions/react-flow/edges/_edges.scss +4 -0
- package/src/extensions/react-flow/edges/stories/EdgeDefault.stories.tsx +5 -5
- package/src/extensions/react-flow/nodes/NodeContent.tsx +2 -2
|
@@ -2,7 +2,18 @@ import React from "react";
|
|
|
2
2
|
import { OverlaysProvider } from "@blueprintjs/core";
|
|
3
3
|
import { Meta, StoryFn } from "@storybook/react";
|
|
4
4
|
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
Card,
|
|
7
|
+
FlexibleLayoutContainer,
|
|
8
|
+
FlexibleLayoutItem,
|
|
9
|
+
Icon,
|
|
10
|
+
OverflowText,
|
|
11
|
+
OverviewItem,
|
|
12
|
+
OverviewItemDepiction,
|
|
13
|
+
OverviewItemDescription,
|
|
14
|
+
OverviewItemLine,
|
|
15
|
+
TitleSubsection,
|
|
16
|
+
} from "../../../../index";
|
|
6
17
|
import { Definitions } from "../../../common/Intent";
|
|
7
18
|
import BaseIcon from "../BaseIcon";
|
|
8
19
|
|
|
@@ -19,7 +30,8 @@ export default {
|
|
|
19
30
|
},
|
|
20
31
|
intent: {
|
|
21
32
|
control: "select",
|
|
22
|
-
options:
|
|
33
|
+
options: [...Object.keys(Definitions)],
|
|
34
|
+
mapping: { ...Definitions },
|
|
23
35
|
},
|
|
24
36
|
},
|
|
25
37
|
} as Meta<typeof Icon>;
|
|
@@ -49,12 +61,60 @@ IconSizes.args = {
|
|
|
49
61
|
name: "undefined",
|
|
50
62
|
};
|
|
51
63
|
|
|
64
|
+
/**
|
|
65
|
+
* Available icons by their canonical names.
|
|
66
|
+
* If you need another icon then use `<TestIcon /`> component.
|
|
67
|
+
*/
|
|
52
68
|
export const IconsOverview = () => {
|
|
69
|
+
let section = "";
|
|
70
|
+
let separation = <></>;
|
|
53
71
|
return (
|
|
54
72
|
<OverlaysProvider>
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
73
|
+
<FlexibleLayoutContainer
|
|
74
|
+
noEqualItemSpace
|
|
75
|
+
gapSize="small"
|
|
76
|
+
style={{ flexWrap: "wrap", justifyContent: "flex-start" }}
|
|
77
|
+
>
|
|
78
|
+
{Object.keys(canonicalIcons)
|
|
79
|
+
.sort()
|
|
80
|
+
.map((iconName) => {
|
|
81
|
+
if (
|
|
82
|
+
section !==
|
|
83
|
+
iconName.substring(0, iconName.indexOf("-") > 0 ? iconName.indexOf("-") : iconName.length)
|
|
84
|
+
) {
|
|
85
|
+
section = iconName.substring(
|
|
86
|
+
0,
|
|
87
|
+
iconName.indexOf("-") > 0 ? iconName.indexOf("-") : iconName.length
|
|
88
|
+
);
|
|
89
|
+
separation = (
|
|
90
|
+
<FlexibleLayoutItem style={{ width: "100%", padding: "1rem 0 0.5rem 0" }}>
|
|
91
|
+
<TitleSubsection>{section}</TitleSubsection>
|
|
92
|
+
</FlexibleLayoutItem>
|
|
93
|
+
);
|
|
94
|
+
} else {
|
|
95
|
+
separation = <></>;
|
|
96
|
+
}
|
|
97
|
+
return (
|
|
98
|
+
<React.Fragment key={iconName}>
|
|
99
|
+
{separation}
|
|
100
|
+
<FlexibleLayoutItem growFactor={0} style={{ width: "20rem" }}>
|
|
101
|
+
<Card>
|
|
102
|
+
<OverviewItem>
|
|
103
|
+
<OverviewItemDepiction keepColors>
|
|
104
|
+
<Icon name={iconName as ValidIconName} />
|
|
105
|
+
</OverviewItemDepiction>
|
|
106
|
+
<OverviewItemDescription>
|
|
107
|
+
<OverviewItemLine small>
|
|
108
|
+
<OverflowText>{iconName}</OverflowText>
|
|
109
|
+
</OverviewItemLine>
|
|
110
|
+
</OverviewItemDescription>
|
|
111
|
+
</OverviewItem>
|
|
112
|
+
</Card>
|
|
113
|
+
</FlexibleLayoutItem>
|
|
114
|
+
</React.Fragment>
|
|
115
|
+
);
|
|
116
|
+
})}
|
|
117
|
+
</FlexibleLayoutContainer>
|
|
58
118
|
</OverlaysProvider>
|
|
59
119
|
);
|
|
60
120
|
};
|
|
@@ -5,13 +5,13 @@ import { Meta, StoryFn } from "@storybook/react";
|
|
|
5
5
|
|
|
6
6
|
import { IconButton, TestIcon } from "../../../../index";
|
|
7
7
|
|
|
8
|
+
import buttonStory from "./../../Button/Button.stories";
|
|
8
9
|
import canonicalIcons from "./../canonicalIconNames";
|
|
9
10
|
|
|
10
11
|
export default {
|
|
11
12
|
title: "Components/IconButton",
|
|
12
13
|
component: IconButton,
|
|
13
14
|
argTypes: {
|
|
14
|
-
text: { control: "text" },
|
|
15
15
|
name: {
|
|
16
16
|
control: "select",
|
|
17
17
|
options: ["Test icon", ...Object.keys(canonicalIcons)],
|
|
@@ -20,6 +20,7 @@ export default {
|
|
|
20
20
|
...Object.keys(canonicalIcons),
|
|
21
21
|
},
|
|
22
22
|
},
|
|
23
|
+
intent: buttonStory.argTypes?.intent,
|
|
23
24
|
},
|
|
24
25
|
} as Meta<typeof IconButton>;
|
|
25
26
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { LoremIpsum } from "react-lorem-ipsum";
|
|
2
|
+
import { LoremIpsum, loremIpsum } from "react-lorem-ipsum";
|
|
3
3
|
import { Meta, StoryFn } from "@storybook/react";
|
|
4
4
|
|
|
5
5
|
import { helpersArgTypes } from "../../../.storybook/helpers";
|
|
6
|
-
import { Button, HtmlContentBlock, Notification, Spacing } from "../../../index";
|
|
6
|
+
import { Button, HtmlContentBlock, Markdown, Notification, Spacing } from "../../../index";
|
|
7
7
|
|
|
8
8
|
export default {
|
|
9
9
|
title: "Components/Notification",
|
|
@@ -33,12 +33,26 @@ ExampleWithMessage.args = {
|
|
|
33
33
|
export const ExampleWithChildren = TemplateFull.bind({});
|
|
34
34
|
ExampleWithChildren.args = {
|
|
35
35
|
children: (
|
|
36
|
-
|
|
37
|
-
<
|
|
38
|
-
|
|
39
|
-
|
|
36
|
+
<>
|
|
37
|
+
<HtmlContentBlock>
|
|
38
|
+
<LoremIpsum p={1} avgSentencesPerParagraph={1} random={false} />
|
|
39
|
+
<LoremIpsum p={1} avgSentencesPerParagraph={4} random={false} />
|
|
40
|
+
</HtmlContentBlock>
|
|
41
|
+
<br />
|
|
42
|
+
<Markdown
|
|
43
|
+
htmlContentBlockProps={{
|
|
44
|
+
style: {
|
|
45
|
+
maxHeight: "25vh",
|
|
46
|
+
overflow: "auto",
|
|
47
|
+
},
|
|
48
|
+
}}
|
|
49
|
+
>
|
|
50
|
+
{"```\n" + loremIpsum({ random: false }) + "\n```"}
|
|
51
|
+
</Markdown>
|
|
52
|
+
</>
|
|
40
53
|
),
|
|
41
54
|
onDismiss: false, // workaround for undefined function in Storybook
|
|
55
|
+
actions: [<></>],
|
|
42
56
|
};
|
|
43
57
|
|
|
44
58
|
export const ExampleNeutralMessage = TemplateFull.bind({});
|
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
@use "sass:math";
|
|
4
4
|
@import "~@blueprintjs/core/src/components/toast/toast";
|
|
5
5
|
|
|
6
|
+
.#{$ns}-toast-message {
|
|
7
|
+
min-width: 0;
|
|
8
|
+
}
|
|
9
|
+
|
|
6
10
|
.#{$eccgui}-notification {
|
|
7
11
|
width: 100%;
|
|
8
12
|
min-width: math.div(4, 16) * 100vw;
|
|
@@ -69,13 +73,14 @@
|
|
|
69
73
|
display: flex;
|
|
70
74
|
align-items: baseline;
|
|
71
75
|
justify-content: space-between;
|
|
72
|
-
margin: -
|
|
76
|
+
margin: -0.5 * $toast-margin;
|
|
73
77
|
}
|
|
74
78
|
|
|
75
79
|
.#{$eccgui}-notification__messagebody {
|
|
76
80
|
flex-grow: 1;
|
|
77
81
|
flex-shrink: 1;
|
|
78
|
-
|
|
82
|
+
min-width: 0;
|
|
83
|
+
padding: 0.5 * $toast-margin;
|
|
79
84
|
}
|
|
80
85
|
|
|
81
86
|
.#{$eccgui}-notification__actions {
|
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { Meta, StoryFn } from "@storybook/react";
|
|
3
3
|
|
|
4
|
+
import { helpersArgTypes } from "../../../../.storybook/helpers";
|
|
4
5
|
import { ProgressBar } from "../../../../index";
|
|
5
6
|
export default {
|
|
6
7
|
title: "Components/ProgressBar",
|
|
7
8
|
component: ProgressBar,
|
|
8
|
-
argTypes: {
|
|
9
|
+
argTypes: {
|
|
10
|
+
intent: {
|
|
11
|
+
...helpersArgTypes.exampleIntent,
|
|
12
|
+
options: ["UNDEFINED", "primary", "success", "warning", "danger"],
|
|
13
|
+
},
|
|
14
|
+
},
|
|
9
15
|
} as Meta<typeof ProgressBar>;
|
|
10
16
|
|
|
11
17
|
const ProgressBarExample: StoryFn<typeof ProgressBar> = (args) => <ProgressBar {...args}></ProgressBar>;
|
|
@@ -53,7 +53,7 @@ export const ControlledTarget = Template.bind({});
|
|
|
53
53
|
ControlledTarget.args = {
|
|
54
54
|
...Default.args,
|
|
55
55
|
fill: false,
|
|
56
|
-
children: <Button text="Controlled select target"
|
|
56
|
+
children: <Button text="Controlled select target" elevated />,
|
|
57
57
|
onActiveItemChange: fn(),
|
|
58
58
|
};
|
|
59
59
|
|
|
@@ -9,10 +9,11 @@ import Color from "color";
|
|
|
9
9
|
|
|
10
10
|
import { CLASSPREFIX as eccgui } from "../../configuration/constants";
|
|
11
11
|
|
|
12
|
+
import { ButtonProps } from "./../Button/Button";
|
|
13
|
+
|
|
12
14
|
type SpinnerPosition = "local" | "inline" | "global";
|
|
13
15
|
type SpinnerSize = "tiny" | "small" | "medium" | "large" | "xlarge" | "inherit";
|
|
14
16
|
type SpinnerStroke = "thin" | "medium" | "bold";
|
|
15
|
-
type Intent = "primary" | "success" | "warning" | "danger";
|
|
16
17
|
|
|
17
18
|
/** A spinner that is either displayed globally or locally. */
|
|
18
19
|
export interface SpinnerProps extends Omit<BlueprintSpinnerProps, "size" | "intent" | "color"> {
|
|
@@ -22,9 +23,16 @@ export interface SpinnerProps extends Omit<BlueprintSpinnerProps, "size" | "inte
|
|
|
22
23
|
*/
|
|
23
24
|
color?: Color | string | "inherit";
|
|
24
25
|
/**
|
|
25
|
-
* Intent state of the
|
|
26
|
+
* Intent state of the spinner.
|
|
27
|
+
* When used the spinner is colored.
|
|
28
|
+
* Property overwrites `elevated` setting.
|
|
29
|
+
*/
|
|
30
|
+
intent?: ButtonProps["intent"];
|
|
31
|
+
/**
|
|
32
|
+
* Highlight the spinner.
|
|
33
|
+
* It is displayed with accent color intent.
|
|
26
34
|
*/
|
|
27
|
-
|
|
35
|
+
elevated?: boolean;
|
|
28
36
|
/**
|
|
29
37
|
* Additional CSS class names.
|
|
30
38
|
*/
|
|
@@ -67,6 +75,7 @@ export const Spinner = ({
|
|
|
67
75
|
className = "",
|
|
68
76
|
color = "inherit",
|
|
69
77
|
intent,
|
|
78
|
+
elevated,
|
|
70
79
|
position = "local",
|
|
71
80
|
size,
|
|
72
81
|
stroke,
|
|
@@ -119,6 +128,7 @@ export const Spinner = ({
|
|
|
119
128
|
className={
|
|
120
129
|
`${eccgui}-spinner` +
|
|
121
130
|
` ${eccgui}-spinner--position-${position}` +
|
|
131
|
+
(elevated ? ` ${eccgui}-spinner--intent-accent` : "") +
|
|
122
132
|
(intent ? ` ${eccgui}-spinner--intent-${intent}` : "") +
|
|
123
133
|
` ${eccgui}-spinner--size-${spinnerSize}` +
|
|
124
134
|
(showLocalBackdrop ? ` ${eccgui}-spinner--localbackdrop` : "") +
|
|
@@ -10,7 +10,7 @@ export default {
|
|
|
10
10
|
color: { control: "color" },
|
|
11
11
|
intent: {
|
|
12
12
|
...helpersArgTypes.exampleIntent,
|
|
13
|
-
options: ["UNDEFINED", "primary", "success", "warning", "danger", "none"],
|
|
13
|
+
options: ["UNDEFINED", "primary", "accent", "success", "warning", "danger", "none"],
|
|
14
14
|
},
|
|
15
15
|
position: { control: "radio", options: ["local", "inline", "global"] },
|
|
16
16
|
size: { control: "radio", options: ["tiny", "small", "medium", "large", "xlarge", "inherit"] },
|
|
@@ -29,10 +29,14 @@ span.#{$eccgui}-spinner {
|
|
|
29
29
|
color: inherit;
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
.#{$eccgui}-spinner--intent-
|
|
32
|
+
.#{$eccgui}-spinner--intent-accent {
|
|
33
33
|
color: $eccgui-color-accent;
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
+
.#{$eccgui}-spinner--intent-primary {
|
|
37
|
+
color: $eccgui-color-primary;
|
|
38
|
+
}
|
|
39
|
+
|
|
36
40
|
.#{$eccgui}-spinner--intent-success {
|
|
37
41
|
color: $eccgui-color-success-text;
|
|
38
42
|
}
|
|
@@ -7,19 +7,21 @@ $eccgui-size-margin-tag: $eccgui-size-inline-whitespace * 0.5 !default;
|
|
|
7
7
|
$eccgui-color-tag-background-emphasized: $eccgui-color-workspace-text !default;
|
|
8
8
|
|
|
9
9
|
// lib vars
|
|
10
|
-
$tag-default-color: $eccgui-color-tag-background-emphasized;
|
|
10
|
+
$tag-default-color: $eccgui-color-tag-background-emphasized;
|
|
11
|
+
|
|
11
12
|
// $dark-tag-default-color: $gray5 !default;
|
|
12
|
-
$tag-height: $eccgui-size-typo-tag * $eccgui-size-typo-tag-lineheight;
|
|
13
|
-
$tag-line-height: $eccgui-size-typo-tag;
|
|
14
|
-
$tag-padding-top: ($tag-height - $tag-line-height) * 0.5;
|
|
15
|
-
$tag-padding: $tag-padding-top * 2;
|
|
16
|
-
$tag-margin: 0;
|
|
17
|
-
$tag-height-small: $eccgui-size-typo-tag;
|
|
18
|
-
$tag-line-height-small: $tag-height-small;
|
|
19
|
-
$tag-padding-small: $tag-padding-top * 0.5;
|
|
20
|
-
$tag-height-large: $eccgui-size-typo-tag-large * $eccgui-size-typo-tag-large-lineheight;
|
|
21
|
-
$tag-line-height-large: $eccgui-size-typo-tag-large;
|
|
22
|
-
$tag-padding-large: ($tag-height-large - $tag-line-height-large);
|
|
13
|
+
$tag-height: $eccgui-size-typo-tag * $eccgui-size-typo-tag-lineheight;
|
|
14
|
+
$tag-line-height: $eccgui-size-typo-tag;
|
|
15
|
+
$tag-padding-top: ($tag-height - $tag-line-height) * 0.5;
|
|
16
|
+
$tag-padding: $tag-padding-top * 2;
|
|
17
|
+
$tag-margin: 0;
|
|
18
|
+
$tag-height-small: $eccgui-size-typo-tag;
|
|
19
|
+
$tag-line-height-small: $tag-height-small;
|
|
20
|
+
$tag-padding-small: $tag-padding-top * 0.5;
|
|
21
|
+
$tag-height-large: $eccgui-size-typo-tag-large * $eccgui-size-typo-tag-large-lineheight;
|
|
22
|
+
$tag-line-height-large: $eccgui-size-typo-tag-large;
|
|
23
|
+
$tag-padding-large: ($tag-height-large - $tag-line-height-large);
|
|
24
|
+
|
|
23
25
|
// $tag-icon-spacing: ($tag-height - 12px) * 0.5 !default;
|
|
24
26
|
// $tag-icon-spacing-large: ($tag-height-large - $pt-icon-size-standard) * 0.5 !default;
|
|
25
27
|
$tag-round-adjustment: 0 !default;
|
|
@@ -139,109 +141,128 @@ $tag-round-adjustment: 0 !default;
|
|
|
139
141
|
border-width: 1px;
|
|
140
142
|
|
|
141
143
|
&:not([class*="#{$ns}-intent-"]) {
|
|
144
|
+
--eccgui-tag-bg: #{$tag-default-color};
|
|
145
|
+
--eccgui-tag-border: #{$tag-default-color};
|
|
146
|
+
--eccgui-tag-text: #{eccgui-color-var("identity", "text", "100")};
|
|
147
|
+
--eccgui-tag-emfactor: 100%;
|
|
148
|
+
|
|
149
|
+
color: var(--eccgui-tag-text);
|
|
150
|
+
background-color: eccgui-color-mix(
|
|
151
|
+
var(--eccgui-tag-bg) var(--eccgui-tag-emfactor),
|
|
152
|
+
eccgui-color-var("identity", "background", "100")
|
|
153
|
+
);
|
|
154
|
+
border-color: var(--eccgui-tag-border);
|
|
155
|
+
|
|
142
156
|
&.#{$eccgui}-tag--strongeremphasis {
|
|
143
|
-
|
|
144
|
-
border-color: $tag-default-color;
|
|
157
|
+
--eccgui-tag-emfactor: 95%;
|
|
145
158
|
}
|
|
146
159
|
&.#{$eccgui}-tag--strongemphasis {
|
|
147
|
-
|
|
148
|
-
border-color: eccgui-color-rgba($tag-default-color, 0.875);
|
|
160
|
+
--eccgui-tag-emfactor: 90%;
|
|
149
161
|
}
|
|
150
162
|
&.#{$eccgui}-tag--normalemphasis {
|
|
151
|
-
|
|
152
|
-
border-color: eccgui-color-rgba($tag-default-color, 0.75);
|
|
163
|
+
--eccgui-tag-emfactor: 85%;
|
|
153
164
|
}
|
|
154
165
|
&.#{$eccgui}-tag--weakemphasis {
|
|
155
|
-
|
|
156
|
-
border-color: eccgui-color-rgba($tag-default-color, 0.625);
|
|
166
|
+
--eccgui-tag-emfactor: 80%;
|
|
157
167
|
}
|
|
158
168
|
&.#{$eccgui}-tag--weakeremphasis {
|
|
159
|
-
|
|
160
|
-
border-color: eccgui-color-rgba($tag-default-color, 0.5);
|
|
169
|
+
--eccgui-tag-emfactor: 75%;
|
|
161
170
|
}
|
|
162
171
|
|
|
163
172
|
&.#{$eccgui}-intent--primary {
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
173
|
+
--eccgui-tag-bg: #{$eccgui-color-primary};
|
|
174
|
+
--eccgui-tag-border: #{$eccgui-color-primary};
|
|
175
|
+
--eccgui-tag-text: #{$eccgui-color-primary-contrast};
|
|
167
176
|
}
|
|
168
177
|
&.#{$eccgui}-intent--accent {
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
178
|
+
--eccgui-tag-bg: #{$eccgui-color-accent};
|
|
179
|
+
--eccgui-tag-border: #{$eccgui-color-accent};
|
|
180
|
+
--eccgui-tag-text: #{$eccgui-color-accent-contrast};
|
|
172
181
|
}
|
|
173
182
|
&.#{$eccgui}-intent--info {
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
183
|
+
--eccgui-tag-bg: #{$eccgui-color-info-text};
|
|
184
|
+
--eccgui-tag-border: #{$eccgui-color-info-text};
|
|
185
|
+
--eccgui-tag-text: #{$eccgui-color-info-background};
|
|
177
186
|
}
|
|
178
187
|
&.#{$eccgui}-intent--success {
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
188
|
+
--eccgui-tag-bg: #{$eccgui-color-success-text};
|
|
189
|
+
--eccgui-tag-border: #{$eccgui-color-success-text};
|
|
190
|
+
--eccgui-tag-text: #{$eccgui-color-success-background};
|
|
182
191
|
}
|
|
183
192
|
&.#{$eccgui}-intent--warning {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
193
|
+
--eccgui-tag-bg: #{$eccgui-color-warning-text};
|
|
194
|
+
--eccgui-tag-border: #{$eccgui-color-warning-text};
|
|
195
|
+
--eccgui-tag-text: #{$eccgui-color-warning-background};
|
|
187
196
|
}
|
|
188
197
|
&.#{$eccgui}-intent--danger {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
198
|
+
--eccgui-tag-bg: #{$eccgui-color-danger-text};
|
|
199
|
+
--eccgui-tag-border: #{$eccgui-color-danger-text};
|
|
200
|
+
--eccgui-tag-text: #{$eccgui-color-danger-background};
|
|
192
201
|
}
|
|
193
202
|
|
|
194
203
|
&.#{$ns}-minimal,
|
|
195
204
|
&.#{$ns}-minimal.#{$ns}-interactive {
|
|
205
|
+
--eccgui-tag-bg: #{eccgui-color-var("identity", "background", "500")};
|
|
206
|
+
--eccgui-tag-border: #{$tag-default-color};
|
|
207
|
+
--eccgui-tag-text: #{$tag-default-color};
|
|
208
|
+
|
|
209
|
+
color: var(--eccgui-tag-text);
|
|
210
|
+
background-color: eccgui-color-mix(
|
|
211
|
+
var(--eccgui-tag-bg) var(--eccgui-tag-emfactor),
|
|
212
|
+
eccgui-color-var("identity", "background", "100")
|
|
213
|
+
);
|
|
214
|
+
border-color: var(--eccgui-tag-border);
|
|
215
|
+
|
|
196
216
|
&.#{$eccgui}-tag--strongeremphasis {
|
|
197
|
-
|
|
198
|
-
border-color: eccgui-color-rgba($tag-default-color, 0.3);
|
|
217
|
+
--eccgui-tag-emfactor: 100%;
|
|
199
218
|
}
|
|
200
219
|
&.#{$eccgui}-tag--strongemphasis {
|
|
201
|
-
|
|
202
|
-
border-color: eccgui-color-rgba($tag-default-color, 0.225);
|
|
220
|
+
--eccgui-tag-emfactor: 90%;
|
|
203
221
|
}
|
|
204
222
|
&.#{$eccgui}-tag--normalemphasis {
|
|
205
|
-
|
|
206
|
-
border-color: eccgui-color-rgba($tag-default-color, 0.15);
|
|
223
|
+
--eccgui-tag-emfactor: 80%;
|
|
207
224
|
}
|
|
208
225
|
&.#{$eccgui}-tag--weakemphasis {
|
|
209
|
-
|
|
210
|
-
border-color: eccgui-color-rgba($tag-default-color, 0.075);
|
|
226
|
+
--eccgui-tag-emfactor: 70%;
|
|
211
227
|
}
|
|
212
228
|
&.#{$eccgui}-tag--weakeremphasis {
|
|
213
|
-
|
|
214
|
-
|
|
229
|
+
--eccgui-tag-emfactor: 60%;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
&[class*="#{$eccgui}-intent--"] {
|
|
233
|
+
color: eccgui-color-rgba(var(--eccgui-tag-text), var(--eccgui-tag-emfactor));
|
|
234
|
+
border-color: eccgui-color-rgba(var(--eccgui-tag-border), var(--eccgui-tag-emfactor));
|
|
215
235
|
}
|
|
236
|
+
|
|
216
237
|
&.#{$eccgui}-intent--primary {
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
238
|
+
--eccgui-tag-text: #{$eccgui-color-primary};
|
|
239
|
+
--eccgui-tag-border: #{$eccgui-color-primary};
|
|
240
|
+
--eccgui-tag-bg: #{$eccgui-color-primary-contrast};
|
|
220
241
|
}
|
|
221
242
|
&.#{$eccgui}-intent--accent {
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
243
|
+
--eccgui-tag-text: #{$eccgui-color-accent};
|
|
244
|
+
--eccgui-tag-border: #{$eccgui-color-accent};
|
|
245
|
+
--eccgui-tag-bg: #{$eccgui-color-accent-contrast};
|
|
225
246
|
}
|
|
226
247
|
&.#{$eccgui}-intent--info {
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
248
|
+
--eccgui-tag-text: #{$eccgui-color-info-text};
|
|
249
|
+
--eccgui-tag-border: #{$eccgui-color-info-text};
|
|
250
|
+
--eccgui-tag-bg: #{$eccgui-color-info-background};
|
|
230
251
|
}
|
|
231
252
|
&.#{$eccgui}-intent--success {
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
253
|
+
--eccgui-tag-text: #{$eccgui-color-success-text};
|
|
254
|
+
--eccgui-tag-border: #{$eccgui-color-success-text};
|
|
255
|
+
--eccgui-tag-bg: #{$eccgui-color-success-background};
|
|
235
256
|
}
|
|
236
257
|
&.#{$eccgui}-intent--warning {
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
258
|
+
--eccgui-tag-text: #{$eccgui-color-warning-text};
|
|
259
|
+
--eccgui-tag-border: #{$eccgui-color-warning-text};
|
|
260
|
+
--eccgui-tag-bg: #{$eccgui-color-warning-background};
|
|
240
261
|
}
|
|
241
262
|
&.#{$eccgui}-intent--danger {
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
263
|
+
--eccgui-tag-text: #{$eccgui-color-danger-text};
|
|
264
|
+
--eccgui-tag-border: #{$eccgui-color-danger-text};
|
|
265
|
+
--eccgui-tag-bg: #{$eccgui-color-danger-background};
|
|
245
266
|
}
|
|
246
267
|
}
|
|
247
268
|
}
|
|
@@ -10,7 +10,8 @@ $eccgui-size-textfield-padding-horizontal-regular: $eccgui-size-inline-whitespac
|
|
|
10
10
|
$eccgui-size-textfield-padding-horizontal-small: $eccgui-size-inline-whitespace * 0.5 !default;
|
|
11
11
|
$eccgui-typo-textfield-fontweight: $eccgui-font-weight-regular !default;
|
|
12
12
|
$eccgui-color-textfield-text: $eccgui-color-workspace-text !default;
|
|
13
|
-
$eccgui-color-textfield-background:
|
|
13
|
+
$eccgui-color-textfield-background: eccgui-color-var("identity", "background", 100) !default;
|
|
14
|
+
|
|
14
15
|
// lib vars
|
|
15
16
|
$pt-input-height: $eccgui-size-textfield-height-regular; // !default;
|
|
16
17
|
$pt-input-height-large: $eccgui-size-textfield-height-large; // !default;
|
|
@@ -191,33 +192,40 @@ $eccgui-map-intent-bgcolors: (
|
|
|
191
192
|
position: absolute;
|
|
192
193
|
top: 0;
|
|
193
194
|
left: 0;
|
|
195
|
+
margin-top: -1 * $eccgui-size-textfield-padding-horizontal-small;
|
|
196
|
+
margin-right: -1 * $eccgui-size-textfield-padding-horizontal-small;
|
|
197
|
+
|
|
198
|
+
.#{$ns}-input.#{$ns}-small ~ & {
|
|
199
|
+
margin-top: -0.5 * $eccgui-size-textfield-padding-horizontal-small;
|
|
200
|
+
margin-right: -0.5 * $eccgui-size-textfield-padding-horizontal-small;
|
|
201
|
+
}
|
|
194
202
|
}
|
|
195
203
|
|
|
196
204
|
.#{$eccgui}-textarea__options {
|
|
197
205
|
position: absolute;
|
|
198
206
|
top: 0;
|
|
199
207
|
right: 0;
|
|
208
|
+
margin-top: -1 * $eccgui-size-textfield-padding-horizontal-small;
|
|
209
|
+
margin-right: -1 * $eccgui-size-textfield-padding-horizontal-small;
|
|
210
|
+
text-align: right;
|
|
200
211
|
filter: grayscale(1);
|
|
201
212
|
|
|
213
|
+
.#{$ns}-input.#{$ns}-small ~ & {
|
|
214
|
+
margin-top: -0.5 * $eccgui-size-textfield-padding-horizontal-small;
|
|
215
|
+
margin-right: -0.5 * $eccgui-size-textfield-padding-horizontal-small;
|
|
216
|
+
}
|
|
217
|
+
|
|
202
218
|
&:hover,
|
|
203
219
|
.#{$eccgui}-textarea:focus ~ & {
|
|
204
220
|
filter: none;
|
|
205
221
|
}
|
|
206
222
|
|
|
207
|
-
& > .#{$eccgui}-button
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
.#{$ns}-input.#{$ns}-small ~ & > .#{$eccgui}-button--icon {
|
|
216
|
-
margin-top: -1 * $eccgui-size-textfield-padding-horizontal-small;
|
|
217
|
-
|
|
218
|
-
&:last-of-type {
|
|
219
|
-
margin-right: -1 * $eccgui-size-textfield-padding-horizontal-small;
|
|
220
|
-
}
|
|
223
|
+
& > .#{$eccgui}-button,
|
|
224
|
+
& > .#{$eccgui}-icon,
|
|
225
|
+
& > .#{$eccgui}-contextoverlay,
|
|
226
|
+
& > .#{$eccgui}-tooltip__wrapper {
|
|
227
|
+
display: inline-block;
|
|
228
|
+
vertical-align: middle;
|
|
221
229
|
}
|
|
222
230
|
}
|
|
223
231
|
|
|
@@ -35,7 +35,7 @@ const Template: StoryFn<typeof VisualTour> = (args: VisualTourProps) => {
|
|
|
35
35
|
<ToolbarSection id={"buttonSection"}>
|
|
36
36
|
<Button id={"actionA"}>Action A</Button>
|
|
37
37
|
<Button id={"actionB"}>Action B</Button>
|
|
38
|
-
<Button id={"startTour"}
|
|
38
|
+
<Button id={"startTour"} elevated onClick={() => setIsOpen(true)}>
|
|
39
39
|
Start tour!
|
|
40
40
|
</Button>
|
|
41
41
|
</ToolbarSection>
|
|
@@ -24,6 +24,7 @@ $eccgui-color-palette-light: (
|
|
|
24
24
|
"pink": eccgui-create-color-tints(#fde4f1 #e6b4ce #d08aae #bb5f8e #711c4d),
|
|
25
25
|
"violet": eccgui-create-color-tints(#f4e3f4 #d8b0d8 #b377b3 #904490 #6e1f6e),
|
|
26
26
|
"indigo": eccgui-create-color-tints(#efe4fb #b89ee0 #8f72c5 #6547aa #3b1e8f),
|
|
27
|
+
"petrol": eccgui-create-color-tints(#e7eef2 #b0c8d4 #7aa2b5 #437c97 #0c5678),
|
|
27
28
|
"cyan": eccgui-create-color-tints(#dff9fc #86d6e5 #5abfd4 #2da9c4 #006a8f),
|
|
28
29
|
"teal": eccgui-create-color-tints(#dff4ef #a3ddd3 #6dc0b2 #479d8d #104c42),
|
|
29
30
|
"lime": eccgui-create-color-tints(#e4f3ea #d2edd6 #9dcd99 #688a55 #5a7b2c),
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
position: absolute;
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
-
.react-flow .react-flow__edges svg {
|
|
70
|
+
.react-flow .react-flow__edges svg:not(.#{$eccgui}-icon) {
|
|
71
71
|
position: absolute;
|
|
72
72
|
overflow: visible;
|
|
73
73
|
pointer-events: none;
|
|
@@ -179,31 +179,27 @@ svg.react-flow__connectionline {
|
|
|
179
179
|
pointer-events: none;
|
|
180
180
|
background-color: $reactflow-background-color;
|
|
181
181
|
border: solid 1px $eccgui-color-separation-divider;
|
|
182
|
-
|
|
183
|
-
pattern path {
|
|
184
|
-
opacity: $eccgui-opacity-ghostly;
|
|
185
|
-
stroke: #{eccgui-color-var("identity", "text", "300")};
|
|
186
|
-
}
|
|
187
182
|
}
|
|
188
183
|
|
|
189
184
|
.react-flow__background-pattern,
|
|
190
|
-
.react-flow__background pattern
|
|
191
|
-
opacity: $eccgui-opacity-
|
|
192
|
-
stroke:
|
|
185
|
+
.react-flow__background pattern *:first-child:not(.react-flow__background-pattern) {
|
|
186
|
+
opacity: $eccgui-opacity-muted;
|
|
187
|
+
stroke: $eccgui-color-separation-divider;
|
|
193
188
|
}
|
|
194
189
|
|
|
195
190
|
.react-flow__background-pattern.dots,
|
|
196
|
-
.react-flow__background pattern circle:first-child {
|
|
197
|
-
|
|
198
|
-
fill: #{eccgui-color-var("identity", "text", "700")};
|
|
191
|
+
.react-flow__background pattern circle:first-child:not(.react-flow__background-pattern) {
|
|
192
|
+
fill: #{eccgui-color-var("identity", "text", "500")};
|
|
199
193
|
}
|
|
200
194
|
|
|
201
195
|
.react-flow__background-pattern.cross {
|
|
202
|
-
|
|
196
|
+
opacity: $eccgui-opacity-disabled;
|
|
197
|
+
stroke: #{eccgui-color-var("identity", "text", "500")};
|
|
198
|
+
stroke-width: 0.3;
|
|
203
199
|
}
|
|
204
200
|
|
|
205
201
|
.react-flow__background-pattern.lines {
|
|
206
|
-
stroke:
|
|
202
|
+
stroke-width: 0.4;
|
|
207
203
|
}
|
|
208
204
|
|
|
209
205
|
.react-flow__attribution {
|