@public-ui/sample-react 3.0.0-rc.4 → 3.0.0-rc.6
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/dist/1068.js +1 -1
- package/dist/1219.js +1 -1
- package/dist/136.js +1 -1
- package/dist/1416.js +1 -1
- package/dist/1573.js +2 -0
- package/dist/1676.js +1 -1
- package/dist/1718.js +1 -1
- package/dist/1744.js +1 -1
- package/dist/1791.js +1 -1
- package/dist/2078.js +1 -1
- package/dist/2115.js +1 -1
- package/dist/2195.js +1 -1
- package/dist/2994.js +2 -0
- package/dist/3021.js +1 -1
- package/dist/3027.js +1 -1
- package/dist/3186.js +1 -1
- package/dist/364.js +1 -1
- package/dist/3758.js +1 -1
- package/dist/3836.js +1 -1
- package/dist/3872.js +1 -1
- package/dist/3879.js +1 -1
- package/dist/3949.js +1 -1
- package/dist/4114.js +2 -0
- package/dist/4211.js +1 -1
- package/dist/4350.js +1 -1
- package/dist/4390.js +1 -1
- package/dist/4566.js +1 -1
- package/dist/4662.js +1 -1
- package/dist/4928.js +1 -1
- package/dist/5000.js +1 -1
- package/dist/5151.js +1 -1
- package/dist/5171.js +1 -1
- package/dist/5876.js +1 -1
- package/dist/597.js +1 -1
- package/dist/6451.js +1 -1
- package/dist/6480.js +1 -1
- package/dist/6577.js +1 -1
- package/dist/6983.js +1 -1
- package/dist/7084.js +1 -1
- package/dist/7225.js +1 -1
- package/dist/7267.js +1 -1
- package/dist/7958.js +1 -1
- package/dist/7997.js +1 -1
- package/dist/8069.js +1 -1
- package/dist/8177.js +1 -1
- package/dist/8212.js +1 -1
- package/dist/8243.js +1 -1
- package/dist/8283.js +1 -1
- package/dist/8478.js +1 -1
- package/dist/851.js +1 -1
- package/dist/8573.js +1 -1
- package/dist/8728.js +1 -1
- package/dist/8808.js +1 -1
- package/dist/8999.js +1 -1
- package/dist/9068.js +1 -1
- package/dist/9130.js +1 -1
- package/dist/9162.js +1 -1
- package/dist/9219.js +1 -1
- package/dist/9235.js +2 -0
- package/dist/9423.js +1 -1
- package/dist/9430.js +1 -1
- package/dist/9802.js +2 -0
- package/dist/9802.js.LICENSE.txt +3 -0
- package/dist/9914.js +2 -0
- package/dist/9914.js.LICENSE.txt +3 -0
- package/dist/9929.js +1 -1
- package/dist/993.js +1 -1
- package/dist/main.css +3 -3
- package/dist/main.js +1 -1
- package/package.json +8 -6
- package/src/components/handout/basic.tsx +2 -4
- package/src/components/input-radio/partials/variants.tsx +8 -6
- package/src/components/popover-button/basic.tsx +55 -0
- package/src/components/popover-button/routes.ts +8 -0
- package/src/components/progress/basic.tsx +12 -5
- package/src/components/single-select/partials/cases.tsx +3 -0
- package/src/react.main.tsx +10 -2
- package/src/scenarios/horizontal-scrollbar-advanced/layout.scss +4 -4
- package/src/shares/longOptions.ts +15 -0
- package/src/shares/routes.ts +3 -1
- package/src/style.scss +3 -3
- package/webpack.config.js +22 -0
- package/dist/4989.js +0 -2
- package/dist/6368.js +0 -2
- package/dist/9244.js +0 -2
- package/dist/9296.js +0 -2
- /package/dist/{4989.js.LICENSE.txt → 1573.js.LICENSE.txt} +0 -0
- /package/dist/{6368.js.LICENSE.txt → 2994.js.LICENSE.txt} +0 -0
- /package/dist/{9244.js.LICENSE.txt → 4114.js.LICENSE.txt} +0 -0
- /package/dist/{9296.js.LICENSE.txt → 9235.js.LICENSE.txt} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@public-ui/sample-react",
|
|
3
|
-
"version": "3.0.0-rc.
|
|
3
|
+
"version": "3.0.0-rc.6",
|
|
4
4
|
"description": "This app contains samples for the KoliBri/Public UI",
|
|
5
5
|
"license": "EUPL-1.2",
|
|
6
6
|
"repository": {
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"less-loader": "12.2.0",
|
|
39
39
|
"mini-css-extract-plugin": "2.9.2",
|
|
40
40
|
"nightwatch-axe-verbose": "2.3.1",
|
|
41
|
-
"npm-run-
|
|
41
|
+
"npm-run-all2": "7.0.2",
|
|
42
42
|
"postcss-loader": "8.1.1",
|
|
43
43
|
"prettier": "3.4.2",
|
|
44
44
|
"react": "18.3.1",
|
|
@@ -56,10 +56,12 @@
|
|
|
56
56
|
"webpack-dev-server": "5.2.0",
|
|
57
57
|
"world_countries_lists": "2.9.0",
|
|
58
58
|
"yup": "1.5.0",
|
|
59
|
-
"@public-ui
|
|
60
|
-
"@public-ui/
|
|
61
|
-
"@public-ui/
|
|
62
|
-
|
|
59
|
+
"@public-ui/components": "3.0.0-rc.6",
|
|
60
|
+
"@public-ui/react": "3.0.0-rc.6",
|
|
61
|
+
"@public-ui/theme-default": "3.0.0-rc.6"
|
|
62
|
+
},
|
|
63
|
+
"optionalDependencies": {
|
|
64
|
+
"@public-ui-/theme-ecl": "2.1.3"
|
|
63
65
|
},
|
|
64
66
|
"files": [
|
|
65
67
|
".eslintignore",
|
|
@@ -248,10 +248,8 @@ export const HandoutBasic: FC = () => {
|
|
|
248
248
|
<p>
|
|
249
249
|
I am <KolAbbr>e.g.</KolAbbr> an abbreviation without label.
|
|
250
250
|
</p>
|
|
251
|
-
<
|
|
252
|
-
|
|
253
|
-
<KolProgress _variant="cycle" _max={100} _value={66} _label="Progress" />
|
|
254
|
-
</div>
|
|
251
|
+
<KolProgress _variant="bar" _max={100} _value={33} _label="Progress" />
|
|
252
|
+
<KolProgress _variant="cycle" _max={100} _value={66} _label="Progress" />
|
|
255
253
|
</div>
|
|
256
254
|
</KolCard>
|
|
257
255
|
<KolCard className="col-span-6 sm:col-span-6 md:col-span-6 xl:col-span-3" _label="Button, LinkButton and Tab" _level={2}>
|
|
@@ -4,17 +4,19 @@ import { InputRadioCases } from './cases';
|
|
|
4
4
|
|
|
5
5
|
import type { Components } from '@public-ui/components';
|
|
6
6
|
import { SampleColumns } from '../../SampleColumns';
|
|
7
|
+
import { KolHeading } from '@public-ui/react';
|
|
8
|
+
|
|
7
9
|
export const InputRadioVariants = forwardRef<HTMLKolInputRadioElement, Components.KolInputRadio>(function InputRadioVariant(props, ref) {
|
|
8
10
|
return (
|
|
9
11
|
<SampleColumns>
|
|
10
|
-
<
|
|
11
|
-
<
|
|
12
|
+
<div className="border border-solid border-dark-100 p-3">
|
|
13
|
+
<KolHeading _level={2} _label="Radio" className="block mb-2" />
|
|
12
14
|
<InputRadioCases {...props} />
|
|
13
|
-
</
|
|
14
|
-
<
|
|
15
|
-
<
|
|
15
|
+
</div>
|
|
16
|
+
<div className="border border-solid border-dark-100 p-3">
|
|
17
|
+
<KolHeading _level={2} _label="Radio (hideLabel)" className="block mb-2" />
|
|
16
18
|
<InputRadioCases ref={ref} {...props} _hideLabel />
|
|
17
|
-
</
|
|
19
|
+
</div>
|
|
18
20
|
</SampleColumns>
|
|
19
21
|
);
|
|
20
22
|
});
|
|
@@ -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
|
+
};
|
|
@@ -11,11 +11,18 @@ export const ProgressBasic: FC = () => (
|
|
|
11
11
|
<p>KolProgress renders a progress indicator. The sample shows the variants "bar" and "cycle" with and without labels.</p>
|
|
12
12
|
</SampleDescription>
|
|
13
13
|
|
|
14
|
-
<div className="grid gap-4">
|
|
15
|
-
<
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
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={7} _value={0}></KolProgress>
|
|
17
|
+
<KolProgress _variant="bar" _max={7} _value={2}></KolProgress>
|
|
18
|
+
<KolProgress _variant="bar" _max={7} _value={7}></KolProgress>
|
|
19
|
+
<KolProgress _variant="cycle" _max={7} _value={6}></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={42} _unit="kg"></KolProgress>
|
|
25
|
+
</fieldset>
|
|
19
26
|
</div>
|
|
20
27
|
</>
|
|
21
28
|
);
|
|
@@ -7,6 +7,7 @@ import { ERROR_MSG, HINT_MSG } from '../../../shares/constants';
|
|
|
7
7
|
import type { Option, StencilUnknown } from '@public-ui/components';
|
|
8
8
|
import { COUNTRY_OPTIONS } from '../../../shares/country';
|
|
9
9
|
import type { Components } from '@public-ui/components';
|
|
10
|
+
import { LONG_OPTIONS } from '../../../shares/longOptions';
|
|
10
11
|
|
|
11
12
|
export const SingleSelectCases = (props: Components.KolSingleSelect) => {
|
|
12
13
|
return (
|
|
@@ -37,6 +38,8 @@ export const SingleSelectCases = (props: Components.KolSingleSelect) => {
|
|
|
37
38
|
/>
|
|
38
39
|
<KolSingleSelect {...props} _label="With access key" _options={COUNTRY_OPTIONS as Option<StencilUnknown>[]} _value={'de'} _accessKey="c" />
|
|
39
40
|
<KolSingleSelect {...props} _label="With short key" _options={COUNTRY_OPTIONS as Option<StencilUnknown>[]} _value={'de'} _shortKey="s" />
|
|
41
|
+
<KolSingleSelect {...props} _label="With long labels" _options={LONG_OPTIONS as Option<StencilUnknown>[]} _placeholder="Placeholder" />
|
|
42
|
+
<KolSingleSelect {...props} _label="With hidden clear button" _options={COUNTRY_OPTIONS as Option<StencilUnknown>[]} _value={'de'} _hideClearButton />
|
|
40
43
|
</div>
|
|
41
44
|
);
|
|
42
45
|
};
|
package/src/react.main.tsx
CHANGED
|
@@ -6,7 +6,6 @@ import { setTagNameTransformer } from '@public-ui/react';
|
|
|
6
6
|
import { bootstrap, KoliBriDevHelper } from '@public-ui/components';
|
|
7
7
|
import { defineCustomElements } from '@public-ui/components/dist/loader';
|
|
8
8
|
import { DEFAULT } from '@public-ui/theme-default';
|
|
9
|
-
import { ECL_EC, ECL_EU } from '@public-ui-/theme-ecl';
|
|
10
9
|
|
|
11
10
|
import { App } from './App';
|
|
12
11
|
|
|
@@ -35,8 +34,17 @@ const getThemes = async () => {
|
|
|
35
34
|
return [theme];
|
|
36
35
|
}
|
|
37
36
|
|
|
37
|
+
const optionalThemes: Theme[] = [];
|
|
38
|
+
const { ECL_EC, ECL_EU } = await import('@public-ui-/theme-ecl');
|
|
39
|
+
|
|
40
|
+
if (ECL_EC && ECL_EU) {
|
|
41
|
+
optionalThemes.push(ECL_EC, ECL_EU);
|
|
42
|
+
} else {
|
|
43
|
+
console.warn('Theme package @public-ui-/theme-ecl not available. Continuing without it.');
|
|
44
|
+
}
|
|
45
|
+
|
|
38
46
|
/* List of regular sample app themes */
|
|
39
|
-
return [DEFAULT,
|
|
47
|
+
return [DEFAULT, ...optionalThemes] as Theme[];
|
|
40
48
|
};
|
|
41
49
|
|
|
42
50
|
void (async () => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
@
|
|
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
|
-
|
|
12
|
+
&>.nav-area {
|
|
13
13
|
grid-area: nav;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
&>.content {
|
|
17
17
|
grid-area: content;
|
|
18
18
|
}
|
|
19
|
-
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export const LONG_OPTIONS = [
|
|
2
|
+
{ value: '1', label: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam' },
|
|
3
|
+
{ value: '2', label: 'Lorem ipsum dolor' },
|
|
4
|
+
{
|
|
5
|
+
value: '3',
|
|
6
|
+
label:
|
|
7
|
+
'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.',
|
|
8
|
+
},
|
|
9
|
+
{ value: '4', label: 'Lorem ipsum dolor' },
|
|
10
|
+
{ value: '5', label: 'Lorem ipsum dolor' },
|
|
11
|
+
{ value: '6', label: 'Lorem ipsum dolor' },
|
|
12
|
+
{ value: '7', label: 'Lorem ipsum dolor' },
|
|
13
|
+
{ value: '8', label: 'Lorem ipsum dolor' },
|
|
14
|
+
{ value: '2', label: 'Lorem ipsum dolor' },
|
|
15
|
+
];
|
package/src/shares/routes.ts
CHANGED
|
@@ -30,8 +30,10 @@ import { LINK_ROUTES } from '../components/link/routes';
|
|
|
30
30
|
import { MODAL_ROUTES } from '../components/modal/routes';
|
|
31
31
|
import { NAV_ROUTES } from '../components/nav/routes';
|
|
32
32
|
import { PAGINATION_ROUTES } from '../components/pagination/routes';
|
|
33
|
+
import { POPOVER_BUTTON_ROUTES } from '../components/popover-button/routes';
|
|
33
34
|
import { PROGRESS_ROUTES } from '../components/progress/routes';
|
|
34
35
|
import { QUOTE_ROUTES } from '../components/quote/routes';
|
|
36
|
+
import { SCENARIO_ROUTES } from '../scenarios/routes';
|
|
35
37
|
import { SELECT_ROUTES } from '../components/select/routes';
|
|
36
38
|
import { SKIP_NAV_ROUTES } from '../components/skip-nav/routes';
|
|
37
39
|
import { SPIN_ROUTES } from '../components/spin/routes';
|
|
@@ -42,7 +44,6 @@ import { TEXTAREA_ROUTES } from '../components/textarea/routes';
|
|
|
42
44
|
import { TOAST_ROUTES } from '../components/toast/routes';
|
|
43
45
|
import { TOOLBAR_ROUTES } from '../components/toolbar/routes';
|
|
44
46
|
import { VERSION_ROUTES } from '../components/version/routes';
|
|
45
|
-
import { SCENARIO_ROUTES } from '../scenarios/routes';
|
|
46
47
|
import { Routes } from './types';
|
|
47
48
|
import { TREE_ROUTES } from '../components/tree/routes';
|
|
48
49
|
import { COMBOBOX_ROUTES } from '../components/combobox/routes';
|
|
@@ -82,6 +83,7 @@ export const ROUTES: Routes = {
|
|
|
82
83
|
...MODAL_ROUTES,
|
|
83
84
|
...NAV_ROUTES,
|
|
84
85
|
...PAGINATION_ROUTES,
|
|
86
|
+
...POPOVER_BUTTON_ROUTES,
|
|
85
87
|
...PROGRESS_ROUTES,
|
|
86
88
|
...QUOTE_ROUTES,
|
|
87
89
|
...SELECT_ROUTES,
|
package/src/style.scss
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
@
|
|
1
|
+
@use './@shared/mixins' as *;
|
|
2
2
|
|
|
3
3
|
:root {
|
|
4
4
|
--kolibri-root-font-size: 100;
|
|
@@ -24,7 +24,7 @@ hr {
|
|
|
24
24
|
.indented-text {
|
|
25
25
|
p {
|
|
26
26
|
font-family: var(--font-family);
|
|
27
|
-
border-left:
|
|
27
|
+
border-left: -2px solid var(--color-primary-variant);
|
|
28
28
|
padding: 0 calc(8rem / var(--kolibri-root-font-size, 16));
|
|
29
29
|
margin-left: rem(-2);
|
|
30
30
|
}
|
|
@@ -50,7 +50,7 @@ hr {
|
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
.app-sidebar {
|
|
53
|
-
border-right:
|
|
53
|
+
border-right: 1px solid gray;
|
|
54
54
|
position: relative;
|
|
55
55
|
|
|
56
56
|
& .scrollable-container-wrapper {
|
package/webpack.config.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
const webpack = require('webpack');
|
|
2
2
|
|
|
3
|
+
const OPTIONAL_THEME_PACKAGE = '@public-ui-/theme-ecl';
|
|
4
|
+
|
|
3
5
|
module.exports = (...args) => {
|
|
4
6
|
const config = require('@leanup/stack-react/webpack.config')(...args);
|
|
5
7
|
const UnoCSS = require('@unocss/webpack').default;
|
|
@@ -17,5 +19,25 @@ module.exports = (...args) => {
|
|
|
17
19
|
}),
|
|
18
20
|
);
|
|
19
21
|
delete config.devServer.proxy;
|
|
22
|
+
|
|
23
|
+
config.externals = [
|
|
24
|
+
...(config.externals || []),
|
|
25
|
+
|
|
26
|
+
/* Handle optional theme dependencies */
|
|
27
|
+
({ request }, callback) => {
|
|
28
|
+
if (request === OPTIONAL_THEME_PACKAGE) {
|
|
29
|
+
try {
|
|
30
|
+
require.resolve(OPTIONAL_THEME_PACKAGE);
|
|
31
|
+
// Package exists, include it
|
|
32
|
+
return callback();
|
|
33
|
+
} catch (e) {
|
|
34
|
+
// Package doesn't exist, replace with empty module
|
|
35
|
+
return callback(null, 'null');
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
callback();
|
|
39
|
+
},
|
|
40
|
+
];
|
|
41
|
+
|
|
20
42
|
return config;
|
|
21
43
|
};
|
package/dist/4989.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! For license information please see 4989.js.LICENSE.txt */
|
|
2
|
-
"use strict";(self.webpackChunk_public_ui_sample_react=self.webpackChunk_public_ui_sample_react||[]).push([[4989],{7336:(e,t,i)=>{i.d(t,{i:()=>s,n:()=>c,r:()=>a});var o=i(6783),n=i(5687),r=i(1732);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")},4989:(e,t,i)=>{i.r(t),i.d(t,{initialize:()=>a});var o=i(7336),n=i(1732),r=i(5800);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)}}}},5687:(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||""}}]);
|