@eccenca/gui-elements 24.0.0-rc.0 → 24.0.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/cjs/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.js +8 -2
  3. package/dist/cjs/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.js.map +1 -1
  4. package/dist/cjs/components/FlexibleLayout/FlexibleLayoutContainer.js +55 -0
  5. package/dist/cjs/components/FlexibleLayout/FlexibleLayoutContainer.js.map +1 -0
  6. package/dist/cjs/components/FlexibleLayout/FlexibleLayoutItem.js +57 -0
  7. package/dist/cjs/components/FlexibleLayout/FlexibleLayoutItem.js.map +1 -0
  8. package/dist/cjs/components/FlexibleLayout/index.js +19 -0
  9. package/dist/cjs/components/FlexibleLayout/index.js.map +1 -0
  10. package/dist/cjs/components/Icon/canonicalIconNames.js +2 -2
  11. package/dist/cjs/components/Icon/canonicalIconNames.js.map +1 -1
  12. package/dist/cjs/components/Label/Label.js +2 -2
  13. package/dist/cjs/components/Label/Label.js.map +1 -1
  14. package/dist/cjs/components/PropertyValuePair/PropertyValueList.js +12 -2
  15. package/dist/cjs/components/PropertyValuePair/PropertyValueList.js.map +1 -1
  16. package/dist/cjs/components/PropertyValuePair/PropertyValuePair.js +3 -2
  17. package/dist/cjs/components/PropertyValuePair/PropertyValuePair.js.map +1 -1
  18. package/dist/cjs/components/index.js +1 -0
  19. package/dist/cjs/components/index.js.map +1 -1
  20. package/dist/esm/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.js +8 -2
  21. package/dist/esm/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.js.map +1 -1
  22. package/dist/esm/components/FlexibleLayout/FlexibleLayoutContainer.js +40 -0
  23. package/dist/esm/components/FlexibleLayout/FlexibleLayoutContainer.js.map +1 -0
  24. package/dist/esm/components/FlexibleLayout/FlexibleLayoutItem.js +42 -0
  25. package/dist/esm/components/FlexibleLayout/FlexibleLayoutItem.js.map +1 -0
  26. package/dist/esm/components/FlexibleLayout/index.js +3 -0
  27. package/dist/esm/components/FlexibleLayout/index.js.map +1 -0
  28. package/dist/esm/components/Icon/canonicalIconNames.js +2 -2
  29. package/dist/esm/components/Icon/canonicalIconNames.js.map +1 -1
  30. package/dist/esm/components/Label/Label.js +2 -2
  31. package/dist/esm/components/Label/Label.js.map +1 -1
  32. package/dist/esm/components/PropertyValuePair/PropertyValueList.js +12 -2
  33. package/dist/esm/components/PropertyValuePair/PropertyValueList.js.map +1 -1
  34. package/dist/esm/components/PropertyValuePair/PropertyValuePair.js +3 -2
  35. package/dist/esm/components/PropertyValuePair/PropertyValuePair.js.map +1 -1
  36. package/dist/esm/components/index.js +1 -0
  37. package/dist/esm/components/index.js.map +1 -1
  38. package/dist/types/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.d.ts +5 -1
  39. package/dist/types/components/FlexibleLayout/FlexibleLayoutContainer.d.ts +31 -0
  40. package/dist/types/components/FlexibleLayout/FlexibleLayoutItem.d.ts +24 -0
  41. package/dist/types/components/FlexibleLayout/index.d.ts +2 -0
  42. package/dist/types/components/Label/Label.d.ts +5 -1
  43. package/dist/types/components/PropertyValuePair/PropertyValueList.d.ts +8 -2
  44. package/dist/types/components/PropertyValuePair/PropertyValuePair.d.ts +5 -1
  45. package/dist/types/components/index.d.ts +1 -0
  46. package/package.json +1 -1
  47. package/src/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.tsx +17 -7
  48. package/src/cmem/markdown/markdown.scss +6 -3
  49. package/src/cmem/markdown/markdown.utils.ts +18 -0
  50. package/src/cmem/markdown/markdownutils.test.ts +13 -0
  51. package/src/components/Application/_header.scss +27 -10
  52. package/src/components/Application/stories/Application.stories.tsx +139 -0
  53. package/src/components/FlexibleLayout/FlexibleLayoutContainer.tsx +67 -0
  54. package/src/components/FlexibleLayout/FlexibleLayoutItem.tsx +59 -0
  55. package/src/components/FlexibleLayout/flexiblelayout.scss +48 -0
  56. package/src/components/FlexibleLayout/index.ts +2 -0
  57. package/src/components/FlexibleLayout/stories/FlexibleLayoutContainer.stories.tsx +31 -0
  58. package/src/components/FlexibleLayout/stories/FlexibleLayoutItem.stories.tsx +28 -0
  59. package/src/components/Icon/canonicalIconNames.tsx +2 -2
  60. package/src/components/Label/Label.tsx +6 -1
  61. package/src/components/Label/label.scss +6 -0
  62. package/src/components/PropertyValuePair/PropertyValueList.tsx +26 -3
  63. package/src/components/PropertyValuePair/PropertyValuePair.tsx +7 -1
  64. package/src/components/PropertyValuePair/propertyvalue.scss +25 -13
  65. package/src/components/PropertyValuePair/stories/PropertyValueList.stories.tsx +1 -1
  66. package/src/components/PropertyValuePair/stories/PropertyValuePair.stories.tsx +1 -1
  67. package/src/components/Typography/typography.scss +51 -0
  68. package/src/components/index.scss +1 -0
  69. package/src/components/index.ts +1 -0
  70. package/src/configuration/_variables.scss +4 -0
@@ -0,0 +1,59 @@
1
+ import React, { forwardRef } from "react";
2
+
3
+ import { CLASSPREFIX as eccgui } from "../../configuration/constants";
4
+
5
+ export interface FlexibleLayoutItemProps extends React.HTMLAttributes<HTMLDivElement> {
6
+ /**
7
+ * Defines the ability for the item to grow.
8
+ * The factor defines how much space the item would take up compared to the other items with a grow factor greater than zero.
9
+ * Must be equal or greater than zero.
10
+ * With a factor of `0` the item cannot grow.
11
+ */
12
+ growFactor?: number;
13
+ /**
14
+ * Defines the ability for the item to shrink.
15
+ * The factor defines how strong the shrink effect has impact on the item compared to the other items with a shrink factor greater than zero.
16
+ * Must be equal or greater than zero.
17
+ * With a factor of `0` the item cannot shrink.
18
+ */
19
+ shrinkFactor?: number;
20
+ }
21
+
22
+ /**
23
+ * Simple layout helper to organize items into rows and columns that are not necessarily need to be aligned.
24
+ * `FlexibleLayoutItem`s can contain `FlexibleLayoutContainer` for more partitions.
25
+ * `FlexibleLayoutItem` siblings will share all available space from the `FlexibleLayoutContainer` container.
26
+ */
27
+ export const FlexibleLayoutItem = forwardRef<HTMLDivElement, FlexibleLayoutItemProps>(
28
+ (
29
+ {
30
+ children,
31
+ className = "",
32
+ growFactor = 1,
33
+ shrinkFactor = 1,
34
+ style,
35
+ ...otherDivProps
36
+ }: FlexibleLayoutItemProps,
37
+ ref
38
+ ) => {
39
+ const sizing = {} as any;
40
+ if (typeof growFactor !== "undefined" && growFactor >= 0 && growFactor !== 1) {
41
+ sizing[`--${eccgui}-flexible-item-grow`] = growFactor.toString(10);
42
+ }
43
+ if (typeof shrinkFactor !== "undefined" && shrinkFactor >= 0 && shrinkFactor !== 1) {
44
+ sizing[`--${eccgui}-flexible-item-shrink`] = shrinkFactor.toString(10);
45
+ }
46
+ return (
47
+ <div
48
+ className={`${eccgui}-flexible__item` + (className ? " " + className : "")}
49
+ style={{ ...(style ?? {}), ...sizing }}
50
+ ref={ref}
51
+ {...otherDivProps}
52
+ >
53
+ {children}
54
+ </div>
55
+ );
56
+ }
57
+ );
58
+
59
+ export default FlexibleLayoutItem;
@@ -0,0 +1,48 @@
1
+ .#{$eccgui}-flexible__container {
2
+ --#{$eccgui}-flexible-item-shrink: 1;
3
+ --#{$eccgui}-flexible-item-grow: 1;
4
+ --#{$eccgui}-flexible-container-gapsize: 0;
5
+
6
+ position: relative;
7
+ display: flex;
8
+ flex-flow: row nowrap;
9
+ gap: var(--#{$eccgui}-flexible-container-gapsize);
10
+ place-content: stretch center;
11
+ align-items: stretch;
12
+ width: 100%;
13
+ }
14
+
15
+ .#{$eccgui}-flexible__container--absolutespace {
16
+ position: absolute;
17
+ inset: 0;
18
+ }
19
+
20
+ .#{$eccgui}-flexible__container--vertical {
21
+ flex-direction: column;
22
+ }
23
+
24
+ .#{$eccgui}-flexible__container--gap-tiny {
25
+ --#{$eccgui}-flexible-container-gapsize: #{$eccgui-size-block-whitespace * 0.25};
26
+ }
27
+ .#{$eccgui}-flexible__container--gap-small {
28
+ --#{$eccgui}-flexible-container-gapsize: #{$eccgui-size-block-whitespace * 0.5};
29
+ }
30
+ .#{$eccgui}-flexible__container--gap-medium {
31
+ --#{$eccgui}-flexible-container-gapsize: #{$eccgui-size-block-whitespace};
32
+ }
33
+ .#{$eccgui}-flexible__container--gap-large {
34
+ --#{$eccgui}-flexible-container-gapsize: #{$eccgui-size-block-whitespace * 1.5};
35
+ }
36
+ .#{$eccgui}-flexible__container--gap-xlarge {
37
+ --#{$eccgui}-flexible-container-gapsize: #{$eccgui-size-block-whitespace * 2};
38
+ }
39
+
40
+ .#{$eccgui}-flexible__item {
41
+ position: relative;
42
+ flex: var(--#{$eccgui}-flexible-item-grow) var(--#{$eccgui}-flexible-item-shrink) 100%;
43
+ min-width: 0;
44
+
45
+ .#{$eccgui}-flexible__container--notequalitemspace > & {
46
+ flex-basis: auto;
47
+ }
48
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./FlexibleLayoutContainer";
2
+ export * from "./FlexibleLayoutItem";
@@ -0,0 +1,31 @@
1
+ import React from "react";
2
+ import { LoremIpsum } from "react-lorem-ipsum";
3
+ import { Meta, StoryFn } from "@storybook/react";
4
+
5
+ import { Divider, FlexibleLayoutContainer, FlexibleLayoutItem, HtmlContentBlock } from "../../../../index";
6
+
7
+ export default {
8
+ title: "Components/FlexibleLayout/Container",
9
+ component: FlexibleLayoutContainer,
10
+ } as Meta<typeof FlexibleLayoutContainer>;
11
+
12
+ const Template: StoryFn<typeof FlexibleLayoutContainer> = (args) => (
13
+ <div style={{ position: "relative", height: "400px" }}>
14
+ <FlexibleLayoutContainer {...args}>
15
+ <FlexibleLayoutItem>
16
+ <HtmlContentBlock>
17
+ <LoremIpsum p={1} avgSentencesPerParagraph={3} random={false} />
18
+ </HtmlContentBlock>
19
+ </FlexibleLayoutItem>
20
+ <FlexibleLayoutItem>
21
+ <Divider />
22
+ <HtmlContentBlock>
23
+ <LoremIpsum p={3} avgSentencesPerParagraph={2} random={false} />
24
+ </HtmlContentBlock>
25
+ </FlexibleLayoutItem>
26
+ </FlexibleLayoutContainer>
27
+ </div>
28
+ );
29
+
30
+ export const Default = Template.bind({});
31
+ Default.args = {};
@@ -0,0 +1,28 @@
1
+ import React from "react";
2
+ import { LoremIpsum } from "react-lorem-ipsum";
3
+ import { Meta, StoryFn } from "@storybook/react";
4
+
5
+ import { FlexibleLayoutContainer, FlexibleLayoutItem, HtmlContentBlock } from "../../../../index";
6
+
7
+ export default {
8
+ title: "Components/FlexibleLayout/Item",
9
+ component: FlexibleLayoutItem,
10
+ } as Meta<typeof FlexibleLayoutItem>;
11
+
12
+ const Template: StoryFn<typeof FlexibleLayoutItem> = (args) => (
13
+ <FlexibleLayoutContainer horizontal>
14
+ <FlexibleLayoutItem {...args}>
15
+ <HtmlContentBlock>
16
+ <LoremIpsum p={1} avgSentencesPerParagraph={1} avgWordsPerSentence={3} random={false} />
17
+ </HtmlContentBlock>
18
+ </FlexibleLayoutItem>
19
+ <FlexibleLayoutItem>
20
+ <HtmlContentBlock>
21
+ <LoremIpsum p={2} avgSentencesPerParagraph={4} random={false} />
22
+ </HtmlContentBlock>
23
+ </FlexibleLayoutItem>
24
+ </FlexibleLayoutContainer>
25
+ );
26
+
27
+ export const Default = Template.bind({});
28
+ Default.args = {};
@@ -66,9 +66,9 @@ const canonicalIcons = {
66
66
  "entity-robot": icons.Bot,
67
67
 
68
68
  "item-add-artefact": icons.AddAlt,
69
- "item-clone": icons.Copy,
69
+ "item-clone": icons.Replicate,
70
70
  "item-comment": icons.AddComment,
71
- "item-copy": icons.CopyFile,
71
+ "item-copy": icons.Copy,
72
72
  "item-download": icons.Download,
73
73
  "item-draggable": icons.Draggable,
74
74
  "item-edit": icons.Edit,
@@ -30,6 +30,10 @@ export interface LabelProps extends React.LabelHTMLAttributes<HTMLLabelElement>
30
30
  * If there is no `isLayoutForElement` set then a `span` is used.
31
31
  */
32
32
  disabled?: boolean;
33
+ /**
34
+ * visual appearance of the label
35
+ */
36
+ emphasis?: "strong" | "normal";
33
37
  }
34
38
 
35
39
  export const Label = ({
@@ -41,6 +45,7 @@ export const Label = ({
41
45
  tooltip,
42
46
  tooltipProps,
43
47
  isLayoutForElement = "label",
48
+ emphasis = "normal",
44
49
  ...otherLabelProps
45
50
  }: LabelProps) => {
46
51
  let htmlElementstring = isLayoutForElement;
@@ -66,7 +71,7 @@ export const Label = ({
66
71
  htmlElementstring,
67
72
  {
68
73
  className:
69
- `${eccgui}-label` +
74
+ `${eccgui}-label ${eccgui}-label--${emphasis}` +
70
75
  (className ? " " + className : "") +
71
76
  (disabled ? ` ${eccgui}-label--disabled` : ""),
72
77
  ...otherLabelProps,
@@ -21,6 +21,12 @@ $eccgui-color-label-info: rgba($eccgui-color-workspace-text, $eccgui-opacity-mut
21
21
  opacity: $eccgui-opacity-disabled;
22
22
  }
23
23
 
24
+ .#{$eccgui}-label--strong {
25
+ .#{$eccgui}-label__text {
26
+ font-weight: bolder;
27
+ }
28
+ }
29
+
24
30
  .#{$eccgui}-label__text {
25
31
  .#{$eccgui}-typography__overflowtext--passdown > .#{$eccgui}-label > & {
26
32
  display: block;
@@ -2,12 +2,35 @@ import React from "react";
2
2
 
3
3
  import { CLASSPREFIX as eccgui } from "../../configuration/constants";
4
4
 
5
- export type PropertyValueListProps = React.HTMLAttributes<HTMLDListElement>;
5
+ import { PropertyValuePair } from "./PropertyValuePair";
6
+
7
+ export interface PropertyValueListProps extends React.HTMLAttributes<HTMLDListElement> {
8
+ /**
9
+ * Only use one single column and put property label and value below each other.
10
+ * This property is forwardd to direct `PropertyValuePair` children.
11
+ */
12
+ singleColumn?: boolean;
13
+ }
14
+
15
+ export const PropertyValueList = ({
16
+ className = "",
17
+ children,
18
+ singleColumn = false,
19
+ ...otherProps
20
+ }: PropertyValueListProps) => {
21
+ const alteredChildren = singleColumn
22
+ ? React.Children.map(children, (child) => {
23
+ const originalChild = child as React.ReactElement;
24
+ if (originalChild && originalChild.type && originalChild.type === PropertyValuePair) {
25
+ return React.cloneElement(originalChild, { singleColumn: true });
26
+ }
27
+ return child;
28
+ })
29
+ : children;
6
30
 
7
- export const PropertyValueList = ({ className = "", children, ...otherProps }: PropertyValueListProps) => {
8
31
  return (
9
32
  <dl className={`${eccgui}-propertyvalue__list` + (className ? " " + className : "")} {...otherProps}>
10
- {children}
33
+ {alteredChildren}
11
34
  </dl>
12
35
  );
13
36
  };
@@ -18,6 +18,10 @@ export interface PropertyValuePairProps extends React.HTMLAttributes<HTMLDivElem
18
18
  * Forward the `nowrap` option to it `PropertyName` and `PropertyValue` children.
19
19
  */
20
20
  nowrap?: boolean;
21
+ /**
22
+ * Only use one single column and put property label and value below each other.
23
+ */
24
+ singleColumn?: boolean;
21
25
  }
22
26
 
23
27
  export const PropertyValuePair = ({
@@ -26,6 +30,7 @@ export const PropertyValuePair = ({
26
30
  nowrap,
27
31
  hasSpacing = false,
28
32
  hasDivider = false,
33
+ singleColumn = false,
29
34
  ...otherProps
30
35
  }: PropertyValuePairProps) => {
31
36
  const alteredChildren = nowrap
@@ -44,7 +49,8 @@ export const PropertyValuePair = ({
44
49
  `${eccgui}-propertyvalue__pair` +
45
50
  (className ? " " + className : "") +
46
51
  (hasSpacing ? ` ${eccgui}-propertyvalue__pair--hasspacing` : "") +
47
- (hasDivider ? ` ${eccgui}-propertyvalue__pair--hasdivider` : "")
52
+ (hasDivider ? ` ${eccgui}-propertyvalue__pair--hasdivider` : "") +
53
+ (singleColumn ? ` ${eccgui}-propertyvalue__pair--singlecolumn` : "")
48
54
  }
49
55
  {...otherProps}
50
56
  >
@@ -34,32 +34,41 @@
34
34
  display: flex;
35
35
  flex-direction: column;
36
36
  justify-content: center;
37
- min-height: $eccgui-size-textfield-height-regular;
37
+
38
+ :not(.#{$eccgui}-propertyvalue__pair--singlecolumn) > & {
39
+ min-height: $eccgui-size-textfield-height-regular;
40
+ }
38
41
  }
39
42
 
40
43
  .#{$eccgui}-propertyvalue__property {
41
- float: left;
42
- width: math.div(3, 16) * 100%;
43
- overflow: hidden;
44
+ :not(.#{$eccgui}-propertyvalue__pair--singlecolumn) > & {
45
+ float: left;
46
+ width: math.div(3, 16) * 100%;
47
+ overflow: hidden;
44
48
 
45
- & > div {
46
- margin-right: $eccgui-size-block-whitespace;
49
+ & > div {
50
+ margin-right: $eccgui-size-block-whitespace;
51
+ }
47
52
  }
48
53
  }
49
54
 
50
55
  .#{$eccgui}-propertyvalue__property--small {
51
- width: math.div(2, 16) * 100%;
56
+ :not(.#{$eccgui}-propertyvalue__pair--singlecolumn) > & {
57
+ width: math.div(2, 16) * 100%;
52
58
 
53
- & + .#{$eccgui}-propertyvalue__value {
54
- margin-left: math.div(2, 16) * 100%;
59
+ & + .#{$eccgui}-propertyvalue__value {
60
+ margin-left: math.div(2, 16) * 100%;
61
+ }
55
62
  }
56
63
  }
57
64
 
58
65
  .#{$eccgui}-propertyvalue__property--large {
59
- width: math.div(5, 16) * 100%;
66
+ :not(.#{$eccgui}-propertyvalue__pair--singlecolumn) > & {
67
+ width: math.div(5, 16) * 100%;
60
68
 
61
- & + .#{$eccgui}-propertyvalue__value {
62
- margin-left: math.div(5, 16) * 100%;
69
+ & + .#{$eccgui}-propertyvalue__value {
70
+ margin-left: math.div(5, 16) * 100%;
71
+ }
63
72
  }
64
73
  }
65
74
 
@@ -70,7 +79,10 @@
70
79
 
71
80
  .#{$eccgui}-propertyvalue__value {
72
81
  box-sizing: content-box;
73
- margin-left: math.div(3, 16) * 100%;
82
+
83
+ :not(.#{$eccgui}-propertyvalue__pair--singlecolumn) > & {
84
+ margin-left: math.div(3, 16) * 100%;
85
+ }
74
86
 
75
87
  &:not(:last-child) {
76
88
  .#{$eccgui}-propertyvalue__pair--hasdivider > & {
@@ -14,7 +14,7 @@ export default {
14
14
  argTypes: {
15
15
  children: {
16
16
  control: "none",
17
- description: "Shoukd be one or more `<PropertyValuePair />` elements.",
17
+ description: "Should be one or more `<PropertyValuePair />` elements.",
18
18
  },
19
19
  },
20
20
  } as Meta<typeof PropertyValueList>;
@@ -16,7 +16,7 @@ export default {
16
16
  argTypes: {
17
17
  children: {
18
18
  control: "none",
19
- description: "Shoukd be `<PropertyName/>` and `<PropertyValue/>`, 1 of each.",
19
+ description: "Should be `<PropertyName/>` and `<PropertyValue/>`, 1 of each.",
20
20
  },
21
21
  },
22
22
  } as Meta<typeof PropertyValuePair>;
@@ -296,3 +296,54 @@ table {
296
296
  }
297
297
  }
298
298
  }
299
+
300
+ // Highlight spots in text bodies
301
+
302
+ :is(#{$eccgui-selector-text-spot-highlight}) {
303
+ position: relative;
304
+ text-decoration: none;
305
+ transition: text-decoration 2s allow-discrete;
306
+
307
+ &::before {
308
+ position: absolute;
309
+ top: 50%;
310
+ left: 50%;
311
+ width: 0;
312
+ height: 0;
313
+ overflow: hidden;
314
+ content: " ";
315
+ background-color: $eccgui-color-primary;
316
+ opacity: 1;
317
+ transition: all 1s ease-in;
318
+ }
319
+
320
+ &:empty {
321
+ &::before {
322
+ border-radius: 100%;
323
+ }
324
+ }
325
+
326
+ &:target,
327
+ &.#{$eccgui}-typography--spothighlight {
328
+ text-decoration: underline;
329
+ text-decoration-style: dotted;
330
+ text-decoration-color: $eccgui-color-accent;
331
+
332
+ &::before {
333
+ top: -50%;
334
+ left: -50%;
335
+ width: 200%;
336
+ height: 200%;
337
+ opacity: 0;
338
+ }
339
+
340
+ &:empty {
341
+ &::before {
342
+ top: -2.5 * $eccgui-size-block-whitespace;
343
+ left: -2.5 * $eccgui-size-block-whitespace;
344
+ width: 5 * $eccgui-size-block-whitespace;
345
+ height: 5 * $eccgui-size-block-whitespace;
346
+ }
347
+ }
348
+ }
349
+ }
@@ -6,6 +6,7 @@
6
6
  @import "./Checkbox/checkbox";
7
7
  @import "./Depiction/depiction";
8
8
  @import "./Dialog/dialog";
9
+ @import "./FlexibleLayout/flexiblelayout";
9
10
  @import "./Form/form";
10
11
  @import "./Grid/grid";
11
12
  @import "./HoverToggler/hovertoggler";
@@ -12,6 +12,7 @@ export * from "./Checkbox/Checkbox";
12
12
  export * from "./ContextOverlay";
13
13
  export * from "./Depiction/Depiction";
14
14
  export * from "./Dialog";
15
+ export * from "./FlexibleLayout";
15
16
  export * from "./Form";
16
17
  export * from "./Grid";
17
18
  export * from "./HoverToggler/HoverToggler";
@@ -80,6 +80,10 @@ $eccgui-opacity-invisible: 0 !default;
80
80
  $eccgui-zindex-modals: 8001 !default; // higher than carbon ui shell header
81
81
  $eccgui-zindex-overlays: 10001 !default; // add delta to dialog portals
82
82
 
83
+ // -- Dynamic selectors --------------------------------------------------------
84
+
85
+ $eccgui-selector-text-spot-highlight: "unknownelement" !default;
86
+
83
87
  // -- Calculation of more config vars ------------------------------------------
84
88
 
85
89
  /*