@public-ui/sample-react 2.2.6 → 2.2.7-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.
Files changed (114) hide show
  1. package/dist/1266.js +1 -1
  2. package/dist/1353.js +2 -0
  3. package/dist/1601.js +1 -1
  4. package/dist/1786.js +1 -1
  5. package/dist/1797.js +1 -1
  6. package/dist/1832.js +1 -1
  7. package/dist/2441.js +1 -1
  8. package/dist/2462.js +1 -1
  9. package/dist/2605.js +1 -1
  10. package/dist/2728.js +1 -1
  11. package/dist/2960.js +1 -1
  12. package/dist/3440.js +1 -1
  13. package/dist/3460.js +1 -1
  14. package/dist/3492.js +1 -1
  15. package/dist/3503.js +1 -1
  16. package/dist/3845.js +1 -1
  17. package/dist/3882.js +1 -1
  18. package/dist/3965.js +1 -1
  19. package/dist/4181.js +1 -1
  20. package/dist/4294.js +1 -1
  21. package/dist/4604.js +1 -1
  22. package/dist/4714.js +2 -0
  23. package/dist/4737.js +1 -1
  24. package/dist/4804.js +1 -1
  25. package/dist/4972.js +1 -1
  26. package/dist/5076.js +1 -1
  27. package/dist/5204.js +1 -1
  28. package/dist/5399.js +1 -1
  29. package/dist/5431.js +1 -1
  30. package/dist/5514.js +1 -1
  31. package/dist/5522.js +1 -1
  32. package/dist/5677.js +1 -1
  33. package/dist/5781.js +1 -1
  34. package/dist/5813.js +1 -1
  35. package/dist/5829.js +1 -1
  36. package/dist/6199.js +1 -1
  37. package/dist/6320.js +1 -1
  38. package/dist/6473.js +1 -1
  39. package/dist/6567.js +1 -1
  40. package/dist/6649.js +1 -1
  41. package/dist/6705.js +1 -1
  42. package/dist/6717.js +1 -1
  43. package/dist/6731.js +1 -1
  44. package/dist/6974.js +1 -1
  45. package/dist/7157.js +1 -1
  46. package/dist/7162.js +1 -1
  47. package/dist/7163.js +1 -1
  48. package/dist/7183.js +1 -1
  49. package/dist/7310.js +1 -1
  50. package/dist/7391.js +1 -1
  51. package/dist/7461.js +1 -1
  52. package/dist/7560.js +1 -1
  53. package/dist/7582.js +1 -1
  54. package/dist/7609.js +1 -1
  55. package/dist/7743.js +2 -0
  56. package/dist/7743.js.LICENSE.txt +3 -0
  57. package/dist/8100.js +1 -1
  58. package/dist/8116.js +1 -1
  59. package/dist/8126.js +1 -1
  60. package/dist/8191.js +1 -1
  61. package/dist/8210.js +1 -1
  62. package/dist/8286.js +1 -1
  63. package/dist/8471.js +1 -1
  64. package/dist/85.js +1 -1
  65. package/dist/8799.js +1 -1
  66. package/dist/8902.js +1 -1
  67. package/dist/8956.js +1 -1
  68. package/dist/92.js +1 -1
  69. package/dist/9558.js +1 -1
  70. package/dist/9768.js +1 -1
  71. package/dist/9818.js +1 -1
  72. package/dist/989.js +1 -1
  73. package/dist/9980.js +1 -1
  74. package/dist/assets/material-icons/css/_mixins.scss +2 -2
  75. package/dist/assets/material-icons/css/_variables.scss +3 -3
  76. package/dist/assets/material-icons/css/material-icons.scss +16 -22
  77. package/dist/assets/material-icons/iconfont/filled.scss +3 -3
  78. package/dist/assets/material-icons/iconfont/material-icons.scss +5 -5
  79. package/dist/assets/material-icons/iconfont/outlined.scss +3 -3
  80. package/dist/assets/material-icons/iconfont/round.scss +3 -3
  81. package/dist/assets/material-icons/iconfont/sharp.scss +3 -3
  82. package/dist/assets/material-icons/iconfont/two-tone.scss +3 -3
  83. package/dist/assets/material-symbols/index.scss +3 -3
  84. package/dist/assets/material-symbols/outlined.scss +2 -2
  85. package/dist/assets/material-symbols/rounded.scss +2 -2
  86. package/dist/assets/material-symbols/sharp.scss +2 -2
  87. package/dist/main.css +3 -3
  88. package/dist/main.js +1 -1
  89. package/package.json +4 -4
  90. package/public/assets/material-icons/css/_mixins.scss +2 -2
  91. package/public/assets/material-icons/css/_variables.scss +3 -3
  92. package/public/assets/material-icons/css/material-icons.scss +16 -22
  93. package/public/assets/material-icons/iconfont/filled.scss +3 -3
  94. package/public/assets/material-icons/iconfont/material-icons.scss +5 -5
  95. package/public/assets/material-icons/iconfont/outlined.scss +3 -3
  96. package/public/assets/material-icons/iconfont/round.scss +3 -3
  97. package/public/assets/material-icons/iconfont/sharp.scss +3 -3
  98. package/public/assets/material-icons/iconfont/two-tone.scss +3 -3
  99. package/public/assets/material-symbols/index.scss +3 -3
  100. package/public/assets/material-symbols/outlined.scss +2 -2
  101. package/public/assets/material-symbols/rounded.scss +2 -2
  102. package/public/assets/material-symbols/sharp.scss +2 -2
  103. package/src/components/input-radio/partials/variants.tsx +8 -6
  104. package/src/components/popover-button/basic.tsx +55 -0
  105. package/src/components/popover-button/routes.ts +8 -0
  106. package/src/components/progress/basic.tsx +12 -5
  107. package/src/components/single-select/partials/cases.tsx +1 -0
  108. package/src/scenarios/horizontal-scrollbar-advanced/layout.scss +4 -4
  109. package/src/shares/routes.ts +10 -8
  110. package/src/style.scss +2 -2
  111. package/dist/6616.js +0 -2
  112. package/dist/7322.js +0 -2
  113. /package/dist/{6616.js.LICENSE.txt → 1353.js.LICENSE.txt} +0 -0
  114. /package/dist/{7322.js.LICENSE.txt → 4714.js.LICENSE.txt} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@public-ui/sample-react",
3
- "version": "2.2.6",
3
+ "version": "2.2.7-rc.0",
4
4
  "description": "This app contains samples for the KoliBri/Public UI",
5
5
  "license": "EUPL-1.2",
6
6
  "repository": {
@@ -36,9 +36,9 @@
36
36
  "typescript": "5.7.3",
37
37
  "world_countries_lists": "2.9.0",
38
38
  "yup": "1.6.1",
39
- "@public-ui/components": "2.2.6",
40
- "@public-ui/react": "2.2.6",
41
- "@public-ui/themes": "2.2.6"
39
+ "@public-ui/themes": "2.2.7-rc.0",
40
+ "@public-ui/react": "2.2.7-rc.0",
41
+ "@public-ui/components": "2.2.7-rc.0"
42
42
  },
43
43
  "files": [
44
44
  ".eslintignore",
@@ -1,4 +1,4 @@
1
- @import '../iconfont/mixins';
1
+ @use '../iconfont/mixins' as *;
2
2
 
3
3
  @function material-icons-content($codepoint) {
4
4
  @return unquote('"\\#{$codepoint}"');
@@ -10,4 +10,4 @@
10
10
  &::#{$pseudo} {
11
11
  content: material-icons-content($codepoint);
12
12
  }
13
- }
13
+ }
@@ -1,6 +1,6 @@
1
- @import '../iconfont/variables';
2
- @import 'codepoints';
1
+ @use '../iconfont/variables' as *;
2
+ @use 'codepoints' as *;
3
3
 
4
4
  $material-icons-css-prefix: 'mi' !default;
5
5
  $material-icons-css-search: '_' !default;
6
- $material-icons-css-replace: '-' !default;
6
+ $material-icons-css-replace: '-' !default;
@@ -1,22 +1,18 @@
1
- @import 'variables';
2
- @import 'mixins';
1
+ @use 'variables' as *;
2
+ @use 'mixins' as *;
3
3
 
4
- @each $font-family
5
- in (
6
- 'Material Icons',
7
- 'Material Icons Outlined',
8
- 'Material Icons Round',
9
- 'Material Icons Sharp',
10
- 'Material Icons Two Tone'
11
- )
12
- {
4
+ @each $font-family in ('Material Icons',
5
+ 'Material Icons Outlined',
6
+ 'Material Icons Round',
7
+ 'Material Icons Sharp',
8
+ 'Material Icons Two Tone'
9
+
10
+ ) {
13
11
  $full-class-name: to-lower-case($font-family);
14
12
  $full-class-name: material-icons-str-replace($full-class-name, ' ', '-');
15
- $class-name: material-icons-str-replace(
16
- $full-class-name,
17
- 'material-icons',
18
- $material-icons-css-prefix
19
- );
13
+ $class-name: material-icons-str-replace($full-class-name,
14
+ 'material-icons',
15
+ $material-icons-css-prefix );
20
16
 
21
17
  /**
22
18
  * @deprecated As of 1.0, use .#{$full-class-name} instead of .#{$class-name}
@@ -27,13 +23,11 @@
27
23
  }
28
24
 
29
25
  @each $name, $codepoint in $material-icons-codepoints {
30
- $class-name: material-icons-str-replace(
31
- $name,
32
- $material-icons-css-search,
33
- $material-icons-css-replace
34
- );
26
+ $class-name: material-icons-str-replace($name,
27
+ $material-icons-css-search,
28
+ $material-icons-css-replace );
35
29
 
36
30
  .#{$material-icons-css-prefix}-#{$class-name} {
37
31
  @include material-icon($name);
38
32
  }
39
- }
33
+ }
@@ -1,4 +1,4 @@
1
- @import 'variables';
2
- @import 'mixins';
1
+ @use 'variables' as *;
2
+ @use 'mixins' as *;
3
3
 
4
- @include material-icons-font('Material Icons');
4
+ @include material-icons-font('Material Icons');
@@ -1,5 +1,5 @@
1
- @import 'filled';
2
- @import 'outlined';
3
- @import 'round';
4
- @import 'sharp';
5
- @import 'two-tone';
1
+ @use 'filled' as *;
2
+ @use 'outlined' as *;
3
+ @use 'round' as *;
4
+ @use 'sharp' as *;
5
+ @use 'two-tone' as *;
@@ -1,4 +1,4 @@
1
- @import 'variables';
2
- @import 'mixins';
1
+ @use 'variables' as *;
2
+ @use 'mixins' as *;
3
3
 
4
- @include material-icons-font('Material Icons Outlined');
4
+ @include material-icons-font('Material Icons Outlined');
@@ -1,4 +1,4 @@
1
- @import 'variables';
2
- @import 'mixins';
1
+ @use 'variables' as *;
2
+ @use 'mixins' as *;
3
3
 
4
- @include material-icons-font('Material Icons Round');
4
+ @include material-icons-font('Material Icons Round');
@@ -1,4 +1,4 @@
1
- @import 'variables';
2
- @import 'mixins';
1
+ @use 'variables' as *;
2
+ @use 'mixins' as *;
3
3
 
4
- @include material-icons-font('Material Icons Sharp');
4
+ @include material-icons-font('Material Icons Sharp');
@@ -1,4 +1,4 @@
1
- @import 'variables';
2
- @import 'mixins';
1
+ @use 'variables' as *;
2
+ @use 'mixins' as *;
3
3
 
4
- @include material-icons-font('Material Icons Two Tone');
4
+ @include material-icons-font('Material Icons Two Tone');
@@ -1,3 +1,3 @@
1
- @import 'outlined';
2
- @import 'rounded';
3
- @import 'sharp';
1
+ @use 'outlined' as *;
2
+ @use 'rounded' as *;
3
+ @use 'sharp' as *;
@@ -1,3 +1,3 @@
1
- @import 'core';
1
+ @use 'core' as *;
2
2
 
3
- @include material-symbols-font('Material Symbols Outlined');
3
+ @include material-symbols-font('Material Symbols Outlined');
@@ -1,3 +1,3 @@
1
- @import 'core';
1
+ @use 'core' as *;
2
2
 
3
- @include material-symbols-font('Material Symbols Rounded');
3
+ @include material-symbols-font('Material Symbols Rounded');
@@ -1,3 +1,3 @@
1
- @import 'core';
1
+ @use 'core' as *;
2
2
 
3
- @include material-symbols-font('Material Symbols Sharp');
3
+ @include material-symbols-font('Material Symbols Sharp');
@@ -3,17 +3,19 @@ import React, { forwardRef } from 'react';
3
3
  import { InputRadioCases } from './cases';
4
4
 
5
5
  import type { Components } from '@public-ui/components';
6
+ import { KolHeading } from '@public-ui/react';
7
+
6
8
  export const InputRadioVariants = forwardRef<HTMLKolInputRadioElement, Components.KolInputRadio>(function InputRadioVariant(props, ref) {
7
9
  return (
8
10
  <div className="grid md:grid-cols-2 gap-4">
9
- <fieldset>
10
- <legend>Radio</legend>
11
+ <div className="border border-solid border-dark-100 p-3">
12
+ <KolHeading _level={2} _label="Radio" className="block mb-2" />
11
13
  <InputRadioCases {...props} />
12
- </fieldset>
13
- <fieldset>
14
- <legend>Radio (hideLabel)</legend>
14
+ </div>
15
+ <div className="border border-solid border-dark-100 p-3">
16
+ <KolHeading _level={2} _label="Radio (hideLabel)" className="block mb-2" />
15
17
  <InputRadioCases ref={ref} {...props} _hideLabel />
16
- </fieldset>
18
+ </div>
17
19
  </div>
18
20
  );
19
21
  });
@@ -0,0 +1,55 @@
1
+ import type { FC } from 'react';
2
+ import { useContext } from 'react';
3
+ import React from 'react';
4
+ import { SampleDescription } from '../SampleDescription';
5
+ import { KolButton, KolPopoverButton, KolBadge } from '@public-ui/react';
6
+ import { useToasterService } from '../../hooks/useToasterService';
7
+ import { HideMenusContext } from '../../shares/HideMenusContext';
8
+
9
+ export const PopoverButtonBasic: FC = () => {
10
+ const hideMenus = useContext(HideMenusContext);
11
+ const { dummyClickEventHandler } = useToasterService();
12
+
13
+ const dummyEventHandler = {
14
+ onClick: dummyClickEventHandler,
15
+ };
16
+
17
+ return (
18
+ <>
19
+ <SampleDescription>
20
+ <p>
21
+ The PopoverButton component combines a button with a popover that appears when clicked. The popover can be positioned in different directions (top,
22
+ right, bottom, left) using the <code>_popoverAlign</code> prop.
23
+ </p>
24
+ </SampleDescription>
25
+ {!hideMenus && <KolBadge className="block mb-3" _label="Component is a DRAFT - Don't use in production yet." _color="#db5461" />}
26
+
27
+ <div className="flex flex-wrap gap-4">
28
+ <KolPopoverButton _label={'Open popover'} _variant="primary" _icons={{ right: 'codicon codicon-chevron-down' }}>
29
+ <KolButton _label="Button within popover" _variant="primary" _on={dummyEventHandler} />
30
+ <br />
31
+ <br />
32
+ <KolButton _label="Second Button within popover" _on={dummyEventHandler} />
33
+ </KolPopoverButton>
34
+
35
+ <KolPopoverButton _label="Open popover" _popoverAlign="right" _icons={{ right: 'codicon codicon-chevron-right' }}>
36
+ <p className="w-sm">
37
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aspernatur aut dolore dolores itaque praesentium reprehenderit sed voluptatum!
38
+ Exercitationem ipsa magni maiores modi, placeat quas quos reprehenderit rerum sit veniam vitae.
39
+ </p>
40
+ </KolPopoverButton>
41
+
42
+ <KolPopoverButton _label="icon-only with tooltip" _icons="codicon codicon-info" _tooltipAlign="right" _hideLabel>
43
+ This is an explanation shown on click.
44
+ </KolPopoverButton>
45
+
46
+ <KolPopoverButton _label="">
47
+ <span slot="expert">
48
+ <u>Expert slot content</u>
49
+ </span>
50
+ This sample illustrates a button with expert slot.
51
+ </KolPopoverButton>
52
+ </div>
53
+ </>
54
+ );
55
+ };
@@ -0,0 +1,8 @@
1
+ import { Routes } from '../../shares/types';
2
+ import { PopoverButtonBasic } from './basic';
3
+
4
+ export const POPOVER_BUTTON_ROUTES: Routes = {
5
+ 'popover-button': {
6
+ basic: PopoverButtonBasic,
7
+ },
8
+ };
@@ -11,11 +11,18 @@ export const ProgressBasic: FC = () => (
11
11
  <p>KolProgress renders a progress indicator. The sample shows the variants &quot;bar&quot; and &quot;cycle&quot; with and without labels.</p>
12
12
  </SampleDescription>
13
13
 
14
- <div className="grid gap-4">
15
- <KolProgress _variant="bar" _max={100} _value={0} _label="With label"></KolProgress>
16
- <KolProgress _variant="bar" _max={100} _value={33}></KolProgress>
17
- <KolProgress _variant="bar" _max={100} _value={100}></KolProgress>
18
- <KolProgress _variant="cycle" _max={100} _value={33}></KolProgress>
14
+ <div className="grid gap-4 grid-cols-1 sm:grid-cols-2">
15
+ <fieldset title="Percentages" className="flex flex-col gap-4">
16
+ <KolProgress _variant="bar" _max={100} _value={0}></KolProgress>
17
+ <KolProgress _variant="bar" _max={100} _value={17}></KolProgress>
18
+ <KolProgress _variant="bar" _max={100} _value={100}></KolProgress>
19
+ <KolProgress _variant="cycle" _max={100} _value={85}></KolProgress>
20
+ </fieldset>
21
+ <fieldset title="Custom units" className="flex flex-col gap-4">
22
+ <KolProgress _label="Distance" _variant="bar" _max={65434} _value={7236} _unit="m"></KolProgress>
23
+ <KolProgress _label="12 Tasks to do" _variant="bar" _max={12} _value={5} _unit="tasks completed"></KolProgress>
24
+ <KolProgress _label="Max 150 kg" _variant="cycle" _max={150} _value={134} _unit="kg"></KolProgress>
25
+ </fieldset>
19
26
  </div>
20
27
  </>
21
28
  );
@@ -36,6 +36,7 @@ export const SingleSelectCases = forwardRef<HTMLKolSingleSelectElement, Componen
36
36
  />
37
37
  <KolSingleSelect {...props} _label="With access key" _options={COUNTRY_OPTIONS as Option<StencilUnknown>[]} _value={'de'} _accessKey="c" />
38
38
  <KolSingleSelect {...props} _label="With short key" _options={COUNTRY_OPTIONS as Option<StencilUnknown>[]} _value={'de'} _shortKey="s" />
39
+ <KolSingleSelect {...props} _label="With hidden clear button" _options={COUNTRY_OPTIONS as Option<StencilUnknown>[]} _value={'de'} _hideClearButton />
39
40
  </div>
40
41
  );
41
42
  });
@@ -1,4 +1,4 @@
1
- @import '../../@shared/mixins';
1
+ @use '../../@shared/mixins' as *;
2
2
 
3
3
  .mainlayout {
4
4
  min-height: calc(100vh - rem(32));
@@ -9,11 +9,11 @@
9
9
  grid-template-rows: 1fr;
10
10
  grid-template-areas: 'nav content';
11
11
 
12
- & > .nav-area {
12
+ &>.nav-area {
13
13
  grid-area: nav;
14
14
  }
15
15
 
16
- & > .content {
16
+ &>.content {
17
17
  grid-area: content;
18
18
  }
19
- }
19
+ }
@@ -1,3 +1,4 @@
1
+ import { Routes } from './types';
1
2
  import { ABBR_ROUTES } from '../components/abbr/routes';
2
3
  import { ACCORDION_ROUTES } from '../components/accordion/routes';
3
4
  import { ALERT_ROUTES } from '../components/alert/routes';
@@ -8,6 +9,7 @@ import { BUTTON_GROUP_ROUTES } from '../components/button-group/routes';
8
9
  import { BUTTON_LINK_ROUTES } from '../components/button-link/routes';
9
10
  import { BUTTON_ROUTES } from '../components/button/routes';
10
11
  import { CARD_ROUTES } from '../components/card/routes';
12
+ import { COMBOBOX_ROUTES } from '../components/combobox/routes';
11
13
  import { DETAILS_ROUTES } from '../components/details/routes';
12
14
  import { DRAWER_ROUTES } from '../components/drawer/routes';
13
15
  import { FORM_ROUTES } from '../components/form/routes';
@@ -33,9 +35,12 @@ import { LINK_ROUTES } from '../components/link/routes';
33
35
  import { MODAL_ROUTES } from '../components/modal/routes';
34
36
  import { NAV_ROUTES } from '../components/nav/routes';
35
37
  import { PAGINATION_ROUTES } from '../components/pagination/routes';
38
+ import { POPOVER_BUTTON_ROUTES } from '../components/popover-button/routes';
36
39
  import { PROGRESS_ROUTES } from '../components/progress/routes';
37
40
  import { QUOTE_ROUTES } from '../components/quote/routes';
41
+ import { SCENARIO_ROUTES } from '../scenarios/routes';
38
42
  import { SELECT_ROUTES } from '../components/select/routes';
43
+ import { SINGLE_SELECT_ROUTES } from '../components/single-select/routes';
39
44
  import { SKIP_NAV_ROUTES } from '../components/skip-nav/routes';
40
45
  import { SPIN_ROUTES } from '../components/spin/routes';
41
46
  import { SPLIT_BUTTON_ROUTES } from '../components/split-button/routes';
@@ -44,15 +49,10 @@ import { TABS_ROUTES } from '../components/tabs/routes';
44
49
  import { TEXTAREA_ROUTES } from '../components/textarea/routes';
45
50
  import { TOAST_ROUTES } from '../components/toast/routes';
46
51
  import { TOOLBAR_ROUTES } from '../components/toolbar/routes';
47
- import { VERSION_ROUTES } from '../components/version/routes';
48
- import { SCENARIO_ROUTES } from '../scenarios/routes';
49
- import { Routes } from './types';
50
52
  import { TREE_ROUTES } from '../components/tree/routes';
51
- import { COMBOBOX_ROUTES } from '../components/combobox/routes';
52
- import { SINGLE_SELECT_ROUTES } from '../components/single-select/routes';
53
+ import { VERSION_ROUTES } from '../components/version/routes';
53
54
 
54
55
  export const ROUTES: Routes = {
55
- ...HANDOUT_ROUTES,
56
56
  ...ABBR_ROUTES,
57
57
  ...ACCORDION_ROUTES,
58
58
  ...ALERT_ROUTES,
@@ -67,6 +67,7 @@ export const ROUTES: Routes = {
67
67
  ...DETAILS_ROUTES,
68
68
  ...DRAWER_ROUTES,
69
69
  ...FORM_ROUTES,
70
+ ...HANDOUT_ROUTES,
70
71
  ...HEADING_ROUTES,
71
72
  ...ICON_ROUTES,
72
73
  ...IMAGE_ROUTES,
@@ -88,13 +89,15 @@ export const ROUTES: Routes = {
88
89
  ...MODAL_ROUTES,
89
90
  ...NAV_ROUTES,
90
91
  ...PAGINATION_ROUTES,
92
+ ...POPOVER_BUTTON_ROUTES,
91
93
  ...PROGRESS_ROUTES,
92
94
  ...QUOTE_ROUTES,
95
+ ...SCENARIO_ROUTES,
93
96
  ...SELECT_ROUTES,
94
97
  ...SELECT_ROUTES,
98
+ ...SINGLE_SELECT_ROUTES,
95
99
  ...SKIP_NAV_ROUTES,
96
100
  ...SPIN_ROUTES,
97
- ...SINGLE_SELECT_ROUTES,
98
101
  ...SPLIT_BUTTON_ROUTES,
99
102
  ...TABLE_ROUTES,
100
103
  ...TABS_ROUTES,
@@ -103,5 +106,4 @@ export const ROUTES: Routes = {
103
106
  ...TOOLBAR_ROUTES,
104
107
  ...TREE_ROUTES,
105
108
  ...VERSION_ROUTES,
106
- ...SCENARIO_ROUTES,
107
109
  };
package/src/style.scss CHANGED
@@ -1,4 +1,4 @@
1
- @import './@shared/mixins';
1
+ @use './@shared/mixins' as *;
2
2
 
3
3
  :root {
4
4
  --kolibri-root-font-size: 100;
@@ -50,7 +50,7 @@ hr {
50
50
  }
51
51
 
52
52
  .app-sidebar {
53
- border-right: rem(1) solid gray;
53
+ border-right: 1px solid gray;
54
54
  position: relative;
55
55
 
56
56
  & .scrollable-container-wrapper {
package/dist/6616.js DELETED
@@ -1,2 +0,0 @@
1
- /*! For license information please see 6616.js.LICENSE.txt */
2
- "use strict";(self.webpackChunk_public_ui_sample_react=self.webpackChunk_public_ui_sample_react||[]).push([[6616],{3283:(e,t,i)=>{i.d(t,{i:()=>s,n:()=>c,r:()=>a});var o=i(8594),n=i(7177),r=i(5838);const l=()=>{let e=(0,r.d)().KoliBri;return void 0===e&&(e={},Object.defineProperty((0,r.d)(),"KoliBri",{value:e,writable:!1})),e},s=()=>{(()=>{const e=(0,r.g)().querySelector('meta[name="kolibri"]');if(e&&e.hasAttribute("content")){const t=e.getAttribute("content");"string"==typeof t&&((0,r.s)(t.includes("dev-mode=true")),(0,r.b)(t.includes("experimental-mode=true")),(0,r.c)(t.includes("color-contrast-analysis=true")))}})(),r.L.debug(`\n,--. ,--. ,--. ,--. ,-----. ,--.\n| .' / ,---. | | \`--' | |) /_ ,--.--. \`--'\n| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n| |\\ \\ | '-' | | | | | | '--' / | | | |\n\`--' \`--´ \`---´ \`--' \`--' \`------´ \`--' \`--'\n🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | ${o.E.kolibriVersion}\n\t`,{forceLog:!0})},a=()=>{!0!==l().adviceShown&&(Object.defineProperty(l(),"adviceShown",{get:function(){return!0}}),r.L.debug("\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n"))};let c=()=>Math.floor(16777215*Math.random()).toString(16);"test"===n.p&&(c=()=>"nonce")},6616:(e,t,i)=>{i.r(t),i.d(t,{initialize:()=>a});var o=i(3283),n=i(5838),r=i(1722);function l(e,t){try{Object.defineProperty((()=>{let e=(0,n.d)().KoliBri;return void 0===e&&(e={},Object.defineProperty((0,n.d)(),"KoliBri",{value:e,writable:!1})),e})(),e,{get:function(){return t}})}catch(t){n.L.debug(`KoliBri property ${e} is already bind.`)}}const s=(e,t)=>n.L.debug(`${e} ${t?"":"not "}activated`),a=()=>{if((0,o.i)(),(0,n.e)()){(0,o.r)(),l("a11yColorContrast",r.z),l("querySelector",r.v),l("querySelectorAll",r.A),l("querySelectorColors",r.B),l("utils",(function(){return r.C})),l("parseJson",r.p),l("stringifyJson",r.D);const e=(0,n.g)().body,t=(0,n.g)().createElement("svg");if(t.setAttribute("aria-label","KoliBri-DevTools"),t.setAttribute("xmlns","http://www.w3.org/2000/svg"),t.setAttribute("role","toolbar"),t.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),t.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',(0,n.g)().body.appendChild(t),s("Development mode",(0,n.e)()),s("Experimental mode",(0,n.a)()),s("Color contrast analysis",(0,n.f)()),(0,n.f)()){const t=setTimeout((()=>{clearTimeout(t),setInterval((()=>{r.C.queryHtmlElementColors((0,n.g)().createElement("div"),(0,r.z)(e),!1,!1)}),1e4)}),2500)}}}},7177:(e,t,i)=>{i.d(t,{b:()=>l,h:()=>n,p:()=>o,s:()=>r});let o="development";try{o="production"}catch(e){o="production"}const n=(e,t,i)=>{if(e&&t&&"string"==typeof i){const o=e.querySelector(`[slot="${i}"]`);o&&t.appendChild(o)}},r=e=>""===e,l=(e,t)=>e||t||""}}]);
package/dist/7322.js DELETED
@@ -1,2 +0,0 @@
1
- /*! For license information please see 7322.js.LICENSE.txt */
2
- "use strict";(self.webpackChunk_public_ui_sample_react=self.webpackChunk_public_ui_sample_react||[]).push([[7322],{4590:(t,e,o)=>{o.d(e,{I:()=>i});var n=o(8594);const i=({badgeText:t,label:e})=>{const o=t;let[i,...s]=e.split(o);return 0===s.length&&(t=o.toUpperCase(),[i,...s]=e.split(o)),0===s.length&&(t=o.toLowerCase(),[i,...s]=e.split(o)),(0,n.h)(n.F,null,i,s.length?(0,n.h)(n.F,null,(0,n.h)("u",null,t),s.join(o)):null)}},2309:(t,e,o)=>{o.d(e,{a:()=>l,b:()=>r,c:()=>a,v:()=>i});var n=o(1722);const i=(t,e)=>{(0,n.i)(t,"_accessKey",e)},s={hooks:{afterPatch:t=>{-1!==t&&0!==t&&(0,n.a)("Don't Use Tabindex Greater than 0: https://adrianroselli.com/2014/11/dont-use-tabindex-greater-than-0.html")}}},a=(t,e)=>{(0,n.k)(t,"_tabIndex",e,s)},r=(t,e)=>{(0,n.i)(t,"_shortKey",e)},l=(t,e)=>{if(t&&e)throw new Error("AccessKey and ShortKey are used. Only one is allowed.")}},5683:(t,e,o)=>{o.d(e,{a:()=>a,v:()=>i});var n=o(1722);const i=(t,e,o)=>{(0,n.w)(t,e,(t=>"string"==typeof t&&s.includes(t)),new Set(s),o,{defaultValue:"top"})},s=["left","right","top","bottom"],a=(t,e)=>{i(t,"_align",e)}},148:(t,e,o)=>{o.d(e,{A:()=>s});var n=o(5838),i=o(1722);class s{constructor(t,e,o){var s,a,r,l;if(this.experimentalMode=(0,n.a)(),this.setFormAssociatedValue=t=>{var e;const o=null===(e=this.formAssociated)||void 0===e?void 0:e.getAttribute("name");null!==o&&""!==o||(0,i.j)(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);const n=this.tryToStringifyValue(t);this.syncValue(t,n,this.formAssociated),this.syncValue(t,n,this.syncToOwnInput)},this.component=t,this.host=this.findHostWithShadowRoot(o),this.type=e,this.experimentalMode&&("KOL-BUTTON"===(l=null===(s=this.host)||void 0===s?void 0:s.tagName)||"KOL-COMBOBOX"===l||"KOL-INPUT-CHECKBOX"===l||"KOL-INPUT-COLOR"===l||"KOL-INPUT-DATE"===l||"KOL-INPUT-EMAIL"===l||"KOL-INPUT-FILE"===l||"KOL-INPUT-NUMBER"===l||"KOL-INPUT-PASSWORD"===l||"KOL-INPUT-RADIO"===l||"KOL-INPUT-RANGE"===l||"KOL-INPUT-TEXT"===l||"KOL-SELECT"===l||"KOL-SINGLE-SELECT"===l||"KOL-TEXTAREA"===l)&&t._name){switch(null===(a=this.host)||void 0===a||a.querySelectorAll("input,select,textarea").forEach((t=>{var e;null===(e=this.host)||void 0===e||e.removeChild(t)})),this.type){case"button":case"color":case"date":case"email":case"file":case"number":case"password":case"radio":case"range":case"text":this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type",this.type);break;case"select":this.formAssociated=document.createElement("select"),this.formAssociated.setAttribute("multiple","");break;case"textarea":this.formAssociated=document.createElement("textarea");break;default:this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type","hidden")}this.formAssociated.setAttribute("data-form-associated",""),this.formAssociated.setAttribute("hidden",""),null===(r=this.host)||void 0===r||r.appendChild(this.formAssociated)}}findHostWithShadowRoot(t){for(;null===(null==t?void 0:t.shadowRoot)&&t!==document.body;)(t=null==t?void 0:t.parentNode).host&&(t=t.host);return t}setAttribute(t,e,o){if(this.experimentalMode)try{if("boolean"!=typeof(o="object"==typeof o&&null!==o?JSON.stringify(o):o)&&"number"!=typeof o&&"string"!=typeof o)throw new Error("Invalid value type: "+typeof o);null==e||e.setAttribute(t,`${o}`)}catch(o){null==e||e.removeAttribute(t)}}tryToStringifyValue(t){try{return"object"==typeof t&&null!==t?JSON.stringify(t).toString():null==t?null:t.toString()}catch(t){return(0,i.l)(`The form field raw value is not able to stringify! ${t}`),""}}syncValue(t,e,o){if(o)switch(this.type){case"file":o.files=t;break;case"select":o.querySelectorAll("option").forEach((t=>{o.removeChild(t)})),Array.isArray(t)&&t.forEach((t=>{const e=this.tryToStringifyValue(t);if("string"==typeof e){const t=document.createElement("option");t.setAttribute("value",e),t.setAttribute("selected",""),o.appendChild(t)}}));break;case"radio":"string"==typeof e&&(o.setAttribute("value",e),o.setAttribute("checked",""),o.value=e);break;default:"string"==typeof e?(o.setAttribute("value",e),o.value=e):(o.removeAttribute("value"),o.value="")}}validateName(t){((t,e,o)=>{(0,i.i)(t,"_name",e,o)})(this.component,t,{hooks:{afterPatch:()=>{this.setAttribute("name",this.formAssociated,this.component.state._name)}}}),void 0===t&&(0,i.j)("A name on input fields or switches is not strictly required, but it might be relevant for the autocomplete function and for the static submission of the input field.")}validateSyncValueBySelector(t){if(this.experimentalMode&&"string"==typeof t){const e=document.querySelector(t);e&&(this.syncToOwnInput=e)}}componentWillLoad(){this.validateName(this.component._name),this.validateSyncValueBySelector(this.component._syncValueBySelector)}}},7257:(t,e,o)=>{o.d(e,{S:()=>a,a:()=>n,b:()=>s,i:()=>i});const n=t=>"object"==typeof t&&null!==t,i=(t,e=0)=>"string"==typeof t&&t.length>=e,s=t=>{if("object"!=typeof t||null===t)return i(t,1);for(const e in t)if(!1===i(e,1))return!1;return!0},a=new Event("StateChange")},8669:(t,e,o)=>{o.d(e,{I:()=>p,g:()=>d});var n=o(8445),i=o(148),s=o(1722),a=o(2309),r=o(8463),l=o(472),c=o(7257),h=o(3589);const d=t=>{var e,o;const n=Boolean("error"===(null===(e=t._msg)||void 0===e?void 0:e._type)&&t._msg._description&&(null===(o=t._msg._description)||void 0===o?void 0:o.length)>0)&&!0===t._touched,i="string"==typeof t._hint&&t._hint.length>0,s=[];return!0===n&&s.push(`${t._id}-error`),!0===i&&s.push(`${t._id}-hint`),{hasError:n,hasHint:i,ariaDescribedBy:s}};class u extends i.A{constructor(t,e,o){super(t,e,o),this.component=t}validateAlert(t){(0,s.b)(this.component,"_alert",t)}validateTouched(t){((t,e)=>{(0,s.b)(t,"_touched",e)})(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAlert(this.component._alert),this.validateTouched(this.component._touched)}}class p extends u{constructor(t,e,o){super(t,e,o),this.valueChangeListeners=[],this.onFacade={onBlur:this.onBlur.bind(this),onChange:this.onChange.bind(this),onClick:this.onClick.bind(this),onFocus:this.onFocus.bind(this),onInput:this.onInput.bind(this)},this.component=t}validateAccessKey(t){(0,a.v)(this.component,t),(0,a.a)(t,this.component._shortKey)}validateAdjustHeight(t){((t,e)=>{(0,s.b)(t,"_adjustHeight",e)})(this.component,t)}validateDisabled(t){(0,s.b)(this.component,"_disabled",t),!0===t&&(0,s.c)()}validateTooltipAlign(t){(0,h.v)(this.component,t)}validateError(t){"string"==typeof t&&t.length>0?this.validateMsg({_description:t,_type:"error"}):this.validateMsg(void 0)}validateHideError(t){((t,e,o)=>{(0,s.b)(t,"_hideError",e,o)})(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideError&&(0,s.a)("Property hide-error for inputs: Only use when the error message is shown outside of the input component.")}}})}validateHideLabel(t){(0,r.v)(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideLabel&&(0,s.a)("Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.")}}})}validateHint(t){(0,s.i)(this.component,"_hint",t)}validateId(t){(0,s.i)(this.component,"_id",t,{minLength:1}),""!==t&&void 0!==t||(0,s.j)("A unique ID on the input fields is not strictly required, but it might be relevant for E2E tests.")}validateLabel(t){(0,l.a)(this.component,t,{required:!0})}validateMsg(t){((t,e)=>{(0,s.o)(e,(()=>{try{e=(0,s.p)(e)}catch(t){}(0,s.w)(t,"_msg",(t=>(0,c.a)(t)&&"string"==typeof(null==t?void 0:t._description)),new Set(["MsgPropType"]),e,{defaultValue:{_description:"",_type:"error"}})}))})(this.component,t)}validateOn(t){"object"==typeof t&&(0,s.s)(this.component,"_on",t)}validateShortKey(t){(0,a.b)(this.component,t),(0,a.a)(this.component._accessKey,t)}validateSmartButton(t){(0,s.o)(t,(()=>{try{t=(0,s.p)(t)}catch(t){}(0,s.s)(this.component,"_smartButton",t)}))}validateTabIndex(t){(0,a.c)(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAccessKey(this.component._accessKey),this.validateAdjustHeight(this.component._adjustHeight),this.validateError(this.component._error),this.component._msg&&this.validateMsg(this.component._msg),this.validateDisabled(this.component._disabled),this.validateHideError(this.component._hideError),this.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateLabel(this.component._label),this.validateShortKey(this.component._shortKey),this.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex),(0,a.a)(this.component._accessKey,this.component._shortKey)}onBlur(t){var e;this.component._touched=!0,(0,n.s)(t),(0,n.t)("blur",this.host),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onBlur)&&this.component._on.onBlur(t)}onChange(t,e){var o;e=null!=e?e:t.target.value,(0,n.t)("change",this.host,e),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onChange)&&this.component._on.onChange(t,e),this.valueChangeListeners.forEach((t=>t(e)))}onInput(t,e=!0,o){var i;o=null!=o?o:t.target.value,(0,n.s)(t),(0,n.t)("input",this.host,o),e&&this.setFormAssociatedValue(o),"function"==typeof(null===(i=this.component._on)||void 0===i?void 0:i.onInput)&&this.component._on.onInput(t,o)}onClick(t){var e;(0,n.s)(t),(0,n.t)("click",this.host),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onClick)&&this.component._on.onClick(t)}onFocus(t){var e;(0,n.s)(t),(0,n.t)("focus",this.host),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onFocus)&&this.component._on.onFocus(t)}addValueChangeListener(t){this.valueChangeListeners.push(t)}}},3283:(t,e,o)=>{o.d(e,{i:()=>r,n:()=>c,r:()=>l});var n=o(8594),i=o(7177),s=o(5838);const a=()=>{let t=(0,s.d)().KoliBri;return void 0===t&&(t={},Object.defineProperty((0,s.d)(),"KoliBri",{value:t,writable:!1})),t},r=()=>{(()=>{const t=(0,s.g)().querySelector('meta[name="kolibri"]');if(t&&t.hasAttribute("content")){const e=t.getAttribute("content");"string"==typeof e&&((0,s.s)(e.includes("dev-mode=true")),(0,s.b)(e.includes("experimental-mode=true")),(0,s.c)(e.includes("color-contrast-analysis=true")))}})(),s.L.debug(`\n,--. ,--. ,--. ,--. ,-----. ,--.\n| .' / ,---. | | \`--' | |) /_ ,--.--. \`--'\n| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n| |\\ \\ | '-' | | | | | | '--' / | | | |\n\`--' \`--´ \`---´ \`--' \`--' \`------´ \`--' \`--'\n🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | ${n.E.kolibriVersion}\n\t`,{forceLog:!0})},l=()=>{!0!==a().adviceShown&&(Object.defineProperty(a(),"adviceShown",{get:function(){return!0}}),s.L.debug("\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n"))};let c=()=>Math.floor(16777215*Math.random()).toString(16);"test"===i.p&&(c=()=>"nonce")},8445:(t,e,o)=>{function n(t){t.stopImmediatePropagation(),t.stopPropagation()}function i(t,e,o){e&&function(t,e,o){const n=t.dispatchEvent(function(t,e){return new CustomEvent(`kol-${t}`,{bubbles:!0,cancelable:!0,composed:!0,detail:e})}(e,o))}(e,t,o)}function s(t){t.preventDefault(),n(t)}o.d(e,{p:()=>s,s:()=>n,t:()=>i})},8463:(t,e,o)=>{o.d(e,{v:()=>i});var n=o(1722);const i=(t,e,o={})=>{(0,n.b)(t,"_hideLabel",e,o)}},472:(t,e,o)=>{o.d(e,{a:()=>d,b:()=>r,c:()=>l,h:()=>i,v:()=>h});var n=o(1722);const i=[0,1,2,3,4,5,6],s=/[a-zA-Z0-9äöüÄÖÜß]/g,a=/^\d+$/;function r(t,e=1){return function(t){var e;return"string"==typeof t&&(null===(e=t.match(s))||void 0===e?void 0:e.length)||0}(t)>=e}function l(t){return a.test(t)}const c=new Set(["string"]),h=(t,e,o={})=>{(0,n.w)(t,"_label",(t=>"string"==typeof t),c,e,function(t){var e;return Object.assign(Object.assign({},t),{hooks:{afterPatch:(e,o,i,s)=>{var a,c;"function"==typeof(null===(a=t.hooks)||void 0===a?void 0:a.afterPatch)&&(null===(c=t.hooks)||void 0===c||c.afterPatch(e,o,i,s)),"string"==typeof e&&!1===r(e,3)&&!1===l(e)&&(0,n.a)(`The heading or label ("${e}") is not accessible. A label should consist of at least three readable characters.`),"string"==typeof e&&e.length>80&&(0,n.u)("A heading or label should not be longer than 80 characters.")},beforePatch:null===(e=t.hooks)||void 0===e?void 0:e.beforePatch}})}(o))},d=h},7177:(t,e,o)=>{o.d(e,{b:()=>a,h:()=>i,p:()=>n,s:()=>s});let n="development";try{n="production"}catch(t){n="production"}const i=(t,e,o)=>{if(t&&e&&"string"==typeof o){const n=t.querySelector(`[slot="${o}"]`);n&&e.appendChild(n)}},s=t=>""===t,a=(t,e)=>t||e||""},3589:(t,e,o)=>{o.d(e,{v:()=>i});var n=o(5683);const i=(t,e)=>{(0,n.v)(t,"_tooltipAlign",e)}}}]);