@public-ui/sample-react 2.1.7-rc.0 → 2.1.7-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.
- package/.gitignore +5 -1
- package/dist/1487.js +1 -1
- package/dist/1636.js +1 -1
- package/dist/1792.js +1 -1
- package/dist/1795.js +1 -1
- package/dist/2017.js +1 -1
- package/dist/2322.js +1 -1
- package/dist/2538.js +1 -1
- package/dist/2567.js +1 -1
- package/dist/263.js +1 -1
- package/dist/2719.js +1 -1
- package/dist/3064.js +1 -1
- package/dist/3077.js +1 -1
- package/dist/3227.js +2 -0
- package/dist/3238.js +1 -1
- package/dist/3395.js +1 -1
- package/dist/35.js +1 -1
- package/dist/3521.js +1 -1
- package/dist/356.js +1 -1
- package/dist/3714.js +1 -1
- package/dist/3735.js +1 -1
- package/dist/3766.js +1 -1
- package/dist/3994.js +1 -1
- package/dist/4025.js +1 -1
- package/dist/4118.js +1 -1
- package/dist/4182.js +1 -1
- package/dist/4188.js +1 -1
- package/dist/4332.js +1 -1
- package/dist/4402.js +1 -1
- package/dist/4818.js +1 -1
- package/dist/4892.js +1 -1
- package/dist/4933.js +1 -1
- package/dist/4943.js +1 -1
- package/dist/495.js +1 -1
- package/dist/5034.js +1 -1
- package/dist/5056.js +1 -1
- package/dist/5138.js +1 -1
- package/dist/5296.js +1 -1
- package/dist/5356.js +1 -1
- package/dist/5551.js +1 -1
- package/dist/5784.js +2 -0
- package/dist/5835.js +1 -1
- package/dist/5840.js +1 -1
- package/dist/5889.js +1 -1
- package/dist/5912.js +1 -1
- package/dist/6082.js +1 -1
- package/dist/6099.js +1 -1
- package/dist/6181.js +1 -1
- package/dist/619.js +1 -1
- package/dist/6671.js +1 -1
- package/dist/6775.js +1 -1
- package/dist/7274.js +1 -1
- package/dist/7795.js +1 -1
- package/dist/7802.js +1 -1
- package/dist/7860.js +1 -1
- package/dist/8092.js +1 -1
- package/dist/8111.js +1 -1
- package/dist/8146.js +1 -1
- package/dist/8427.js +1 -1
- package/dist/8495.js +1 -1
- package/dist/8672.js +1 -1
- package/dist/8737.js +1 -1
- package/dist/8786.js +1 -1
- package/dist/8796.js +1 -1
- package/dist/8977.js +1 -1
- package/dist/9333.js +2 -0
- package/dist/9333.js.LICENSE.txt +3 -0
- package/dist/9389.js +1 -1
- package/dist/9561.js +1 -1
- package/dist/9599.js +1 -1
- package/dist/9612.js +1 -1
- package/dist/9890.js +1 -1
- package/dist/main.css +3 -2
- package/dist/main.js +1 -1
- package/package.json +11 -6
- package/src/components/Sidebar.tsx +45 -43
- package/src/components/abbr/basic.tsx +13 -13
- package/src/components/accordion/basic.tsx +5 -5
- package/src/components/accordion/headlines.tsx +12 -12
- package/src/components/alert/basic.tsx +6 -6
- package/src/components/alert/html.tsx +3 -3
- package/src/components/breadcrumb/basic.tsx +11 -11
- package/src/components/button/access-key.tsx +5 -5
- package/src/components/button/aria-description.tsx +17 -0
- package/src/components/button/routes.ts +2 -0
- package/src/components/button/width.tsx +1 -1
- package/src/components/button-link/aria-description.tsx +17 -0
- package/src/components/button-link/basic.tsx +7 -7
- package/src/components/button-link/icons.tsx +4 -4
- package/src/components/button-link/image.tsx +2 -2
- package/src/components/button-link/routes.ts +2 -0
- package/src/components/drawer/basic.tsx +2 -2
- package/src/components/handout/basic.tsx +69 -69
- package/src/components/handout/table-data.ts +538 -538
- package/src/components/heading/badged.tsx +6 -6
- package/src/components/input-checkbox/partials/cases.tsx +5 -5
- package/src/components/input-date/partials/cases.tsx +8 -8
- package/src/components/input-date/reset.tsx +21 -0
- package/src/components/input-date/routes.ts +2 -0
- package/src/components/input-email/partials/cases.tsx +1 -1
- package/src/components/input-file/partials/cases.tsx +3 -3
- package/src/components/input-number/partials/cases.tsx +8 -8
- package/src/components/input-password/show-password.tsx +3 -3
- package/src/components/input-radio/partials/cases.tsx +30 -15
- package/src/components/input-range/partials/cases.tsx +3 -3
- package/src/components/input-text/partials/cases.tsx +11 -11
- package/src/components/input-text/routes.ts +2 -0
- package/src/components/input-text/text-formatter.tsx +91 -0
- package/src/components/link/aria-description.tsx +17 -0
- package/src/components/link/basic.tsx +8 -7
- package/src/components/link/icons.tsx +5 -5
- package/src/components/link/image.tsx +2 -2
- package/src/components/link/routes.ts +2 -0
- package/src/components/link-button/aria-description.tsx +17 -0
- package/src/components/link-button/routes.ts +2 -0
- package/src/components/nav/links.ts +4 -4
- package/src/components/select/partials/cases.tsx +9 -9
- package/src/components/single-select/basic.tsx +23 -0
- package/src/components/single-select/partials/cases.tsx +39 -0
- package/src/components/single-select/partials/variants.tsx +19 -0
- package/src/components/single-select/routes.ts +8 -0
- package/src/components/skip-nav/basic.tsx +4 -4
- package/src/components/split-button/basic.tsx +2 -2
- package/src/components/table/render-cell.tsx +1 -1
- package/src/components/table/routes.ts +4 -0
- package/src/components/table/stateful-with-selection.tsx +3 -3
- package/src/components/table/stateful-with-single-selection.tsx +84 -0
- package/src/components/table/stateless-with-selection.tsx +7 -3
- package/src/components/table/stateless-with-single-selection.tsx +69 -0
- package/src/components/tabs/basic.tsx +13 -13
- package/src/components/tabs/icons-only.tsx +8 -8
- package/src/scenarios/appointment-form/AppointmentForm.tsx +13 -13
- package/src/scenarios/appointment-form/AvailableAppointmentsForm.tsx +6 -6
- package/src/scenarios/appointment-form/DistrictForm.tsx +8 -8
- package/src/scenarios/appointment-form/PersonalInformationForm.tsx +16 -16
- package/src/scenarios/appointment-form/Summary.tsx +6 -6
- package/src/scenarios/focus-elements.tsx +12 -0
- package/src/scenarios/horizontal-scrollbar-advanced/TableHorizontalScrollbarAdvanced.tsx +80 -0
- package/src/scenarios/horizontal-scrollbar-advanced/databasedata.json +317 -0
- package/src/scenarios/horizontal-scrollbar-advanced/index.ts +1 -0
- package/src/scenarios/horizontal-scrollbar-advanced/layout.css +31 -0
- package/src/scenarios/inputs-get-value.tsx +36 -10
- package/src/scenarios/routes.ts +2 -0
- package/src/scenarios/static-form.tsx +9 -0
- package/src/shares/constants.ts +2 -2
- package/src/shares/routes.ts +2 -0
- package/src/style.scss +19 -1
- package/tsconfig.json +1 -1
- package/dist/2687.js +0 -2
- package/dist/9061.js +0 -2
- /package/dist/{2687.js.LICENSE.txt → 3227.js.LICENSE.txt} +0 -0
- /package/dist/{9061.js.LICENSE.txt → 5784.js.LICENSE.txt} +0 -0
|
@@ -16,6 +16,7 @@ import {
|
|
|
16
16
|
KolInputRange,
|
|
17
17
|
KolInputText,
|
|
18
18
|
KolSelect,
|
|
19
|
+
KolSingleSelect,
|
|
19
20
|
KolCombobox,
|
|
20
21
|
KolTextarea,
|
|
21
22
|
} from '@public-ui/react';
|
|
@@ -33,6 +34,7 @@ type Props = {
|
|
|
33
34
|
InputComponent: React.ComponentType<any>;
|
|
34
35
|
inputProps: { [key: string]: any };
|
|
35
36
|
formatter?: (value: any) => string;
|
|
37
|
+
testId?: string;
|
|
36
38
|
};
|
|
37
39
|
const Scenario = (props: Props) => {
|
|
38
40
|
const ref = useRef<HTMLStencilElement & { getValue: () => Promise<any> }>();
|
|
@@ -68,7 +70,7 @@ const Scenario = (props: Props) => {
|
|
|
68
70
|
);
|
|
69
71
|
|
|
70
72
|
return (
|
|
71
|
-
<div className="grid grid-cols-3 items-end gap-4">
|
|
73
|
+
<div className="grid grid-cols-3 items-end gap-4" data-testid={props.testId}>
|
|
72
74
|
<props.InputComponent ref={ref} _on={eventListeners} {...props.inputProps} />
|
|
73
75
|
<KolButton
|
|
74
76
|
_label="getValue()"
|
|
@@ -108,13 +110,18 @@ export const InputsGetValue: FC = () => {
|
|
|
108
110
|
</KolCard>
|
|
109
111
|
|
|
110
112
|
<div className="grid gap-4">
|
|
111
|
-
<Scenario InputComponent={KolInputText} inputProps={{ _label: 'InputText' }} />
|
|
112
|
-
<Scenario InputComponent={KolInputCheckbox} inputProps={{ _label: 'KolInputCheckbox (value)', _value: 'Checkbox True Value' }} />
|
|
113
|
-
<Scenario InputComponent={KolInputCheckbox} inputProps={{ _label: 'KolInputCheckbox (boolean)' }} />
|
|
114
|
-
<Scenario InputComponent={KolInputColor} inputProps={{ _label: 'KolInputColor' }} />
|
|
115
|
-
<Scenario InputComponent={KolInputDate} inputProps={{ _label: 'KolInputDate' }} />
|
|
116
|
-
<Scenario InputComponent={KolInputEmail} inputProps={{ _label: 'KolInputEmail' }} />
|
|
113
|
+
<Scenario testId="scenario-inputText" InputComponent={KolInputText} inputProps={{ _label: 'InputText' }} />
|
|
117
114
|
<Scenario
|
|
115
|
+
testId="scenario-inputCheckboxString"
|
|
116
|
+
InputComponent={KolInputCheckbox}
|
|
117
|
+
inputProps={{ _label: 'KolInputCheckbox (value)', _value: 'Checkbox True Value' }}
|
|
118
|
+
/>
|
|
119
|
+
<Scenario testId="scenario-inputCheckboxBoolean" InputComponent={KolInputCheckbox} inputProps={{ _label: 'KolInputCheckbox (boolean)' }} />
|
|
120
|
+
<Scenario testId="scenario-inputColor" InputComponent={KolInputColor} inputProps={{ _label: 'KolInputColor' }} />
|
|
121
|
+
<Scenario testId="scenario-inputDate" InputComponent={KolInputDate} inputProps={{ _label: 'KolInputDate' }} />
|
|
122
|
+
<Scenario testId="scenario-inputEmail" InputComponent={KolInputEmail} inputProps={{ _label: 'KolInputEmail' }} />
|
|
123
|
+
<Scenario
|
|
124
|
+
testId="scenario-inputFile"
|
|
118
125
|
InputComponent={KolInputFile}
|
|
119
126
|
inputProps={{ _label: 'KolInputFile' }}
|
|
120
127
|
formatter={(value) =>
|
|
@@ -125,10 +132,11 @@ export const InputsGetValue: FC = () => {
|
|
|
125
132
|
: JSON.stringify(value)
|
|
126
133
|
}
|
|
127
134
|
/>
|
|
128
|
-
<Scenario InputComponent={KolInputNumber} inputProps={{ _label: 'KolInputNumber' }} />
|
|
129
|
-
<Scenario InputComponent={KolInputPassword} inputProps={{ _label: 'KolInputPassword' }} />
|
|
130
|
-
<Scenario InputComponent={KolInputRange} inputProps={{ _label: 'KolInputRange' }} />
|
|
135
|
+
<Scenario testId="scenario-inputNumber" InputComponent={KolInputNumber} inputProps={{ _label: 'KolInputNumber' }} />
|
|
136
|
+
<Scenario testId="scenario-inputPassword" InputComponent={KolInputPassword} inputProps={{ _label: 'KolInputPassword' }} />
|
|
137
|
+
<Scenario testId="scenario-inputRange" InputComponent={KolInputRange} inputProps={{ _label: 'KolInputRange' }} />
|
|
131
138
|
<Scenario
|
|
139
|
+
testId="scenario-inputRadio"
|
|
132
140
|
InputComponent={KolInputRadio}
|
|
133
141
|
inputProps={{
|
|
134
142
|
_label: 'KolInputRadio',
|
|
@@ -142,6 +150,7 @@ export const InputsGetValue: FC = () => {
|
|
|
142
150
|
}}
|
|
143
151
|
/>
|
|
144
152
|
<Scenario
|
|
153
|
+
testId="scenario-select"
|
|
145
154
|
InputComponent={KolSelect}
|
|
146
155
|
inputProps={{
|
|
147
156
|
_label: 'KolSelect',
|
|
@@ -153,6 +162,20 @@ export const InputsGetValue: FC = () => {
|
|
|
153
162
|
}}
|
|
154
163
|
/>
|
|
155
164
|
<Scenario
|
|
165
|
+
testId="scenario-singleSelect"
|
|
166
|
+
InputComponent={KolSingleSelect}
|
|
167
|
+
inputProps={{
|
|
168
|
+
_label: 'KolSingleSelect',
|
|
169
|
+
_options: [
|
|
170
|
+
{ label: 'New York', value: 'New York' },
|
|
171
|
+
{ label: 'Rio de Janeiro', value: 'Rio de Janeiro' },
|
|
172
|
+
{ label: 'Rosenheim', value: 'Rosenheim' },
|
|
173
|
+
],
|
|
174
|
+
_value: 'Rosenheim',
|
|
175
|
+
}}
|
|
176
|
+
/>
|
|
177
|
+
<Scenario
|
|
178
|
+
testId="scenario-combobox"
|
|
156
179
|
InputComponent={KolCombobox}
|
|
157
180
|
inputProps={{
|
|
158
181
|
_label: 'KolCombobox',
|
|
@@ -161,12 +184,14 @@ export const InputsGetValue: FC = () => {
|
|
|
161
184
|
}}
|
|
162
185
|
/>
|
|
163
186
|
<Scenario
|
|
187
|
+
testId="scenario-textarea"
|
|
164
188
|
InputComponent={KolTextarea}
|
|
165
189
|
inputProps={{
|
|
166
190
|
_label: 'KolTextarea',
|
|
167
191
|
}}
|
|
168
192
|
/>
|
|
169
193
|
<Scenario
|
|
194
|
+
testId="scenario-button"
|
|
170
195
|
InputComponent={KolButton}
|
|
171
196
|
inputProps={{
|
|
172
197
|
_label: 'KolButton',
|
|
@@ -175,6 +200,7 @@ export const InputsGetValue: FC = () => {
|
|
|
175
200
|
}}
|
|
176
201
|
/>
|
|
177
202
|
<Scenario
|
|
203
|
+
testId="scenario-buttonLink"
|
|
178
204
|
InputComponent={KolButtonLink}
|
|
179
205
|
inputProps={{
|
|
180
206
|
_label: 'KolButtonLink',
|
package/src/scenarios/routes.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { DisabledInteractiveElements } from './disabled-interactive-elements';
|
|
|
5
5
|
import { InputsGetValue } from './inputs-get-value';
|
|
6
6
|
import { StaticForm } from './static-form';
|
|
7
7
|
import { FocusElements } from './focus-elements';
|
|
8
|
+
import { TableHorizontalScrollAdvanced } from './horizontal-scrollbar-advanced';
|
|
8
9
|
|
|
9
10
|
export const SCENARIO_ROUTES: Routes = {
|
|
10
11
|
scenarios: {
|
|
@@ -14,5 +15,6 @@ export const SCENARIO_ROUTES: Routes = {
|
|
|
14
15
|
'static-form': StaticForm,
|
|
15
16
|
'disabled-interactive-scenario': DisabledInteractiveElements,
|
|
16
17
|
'focus-elements': FocusElements,
|
|
18
|
+
'table-horizontal-scrollbar-advanced': TableHorizontalScrollAdvanced,
|
|
17
19
|
},
|
|
18
20
|
};
|
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
KolInputRange,
|
|
12
12
|
KolInputText,
|
|
13
13
|
KolSelect,
|
|
14
|
+
KolSingleSelect,
|
|
14
15
|
KolCombobox,
|
|
15
16
|
KolTextarea,
|
|
16
17
|
} from '@public-ui/react';
|
|
@@ -92,6 +93,14 @@ export const StaticForm: FC = () => {
|
|
|
92
93
|
]}
|
|
93
94
|
_rows={2}
|
|
94
95
|
/>
|
|
96
|
+
<KolSingleSelect
|
|
97
|
+
_name="singleSelect"
|
|
98
|
+
_label="Single Select"
|
|
99
|
+
_options={[
|
|
100
|
+
{ label: 'Option A', value: 'A' },
|
|
101
|
+
{ label: 'Option B', value: 'B' },
|
|
102
|
+
]}
|
|
103
|
+
/>
|
|
95
104
|
<KolCombobox _name="combobox" _label="Combobox" _suggestions={COUNTRY_SUGGESTIONS} />
|
|
96
105
|
<KolTextarea _name="textarea" _label="Textarea" _rows={5} />
|
|
97
106
|
<div className="flex flex-wrap gap-4">
|
package/src/shares/constants.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export const PUBLIC_DOC_COMPONENT_URL = 'https://public-ui.github.io/docs/components';
|
|
2
2
|
export const PUBLIC_CODE_COMPONENT_URL = 'https://github.com/public-ui/kolibri/blob/develop/packages/samples/react/src/components';
|
|
3
|
-
export const ERROR_MSG = '
|
|
4
|
-
export const HINT_MSG = '
|
|
3
|
+
export const ERROR_MSG = 'I am an error message!';
|
|
4
|
+
export const HINT_MSG = 'I am a hint.';
|
package/src/shares/routes.ts
CHANGED
|
@@ -49,6 +49,7 @@ import { SCENARIO_ROUTES } from '../scenarios/routes';
|
|
|
49
49
|
import { Routes } from './types';
|
|
50
50
|
import { TREE_ROUTES } from '../components/tree/routes';
|
|
51
51
|
import { COMBOBOX_ROUTES } from '../components/combobox/routes';
|
|
52
|
+
import { SINGLE_SELECT_ROUTES } from '../components/single-select/routes';
|
|
52
53
|
|
|
53
54
|
export const ROUTES: Routes = {
|
|
54
55
|
...HANDOUT_ROUTES,
|
|
@@ -93,6 +94,7 @@ export const ROUTES: Routes = {
|
|
|
93
94
|
...SELECT_ROUTES,
|
|
94
95
|
...SKIP_NAV_ROUTES,
|
|
95
96
|
...SPIN_ROUTES,
|
|
97
|
+
...SINGLE_SELECT_ROUTES,
|
|
96
98
|
...SPLIT_BUTTON_ROUTES,
|
|
97
99
|
...TABLE_ROUTES,
|
|
98
100
|
...TABS_ROUTES,
|
package/src/style.scss
CHANGED
|
@@ -27,12 +27,30 @@ hr {
|
|
|
27
27
|
@media (min-width: 1024px) {
|
|
28
28
|
.app-container {
|
|
29
29
|
display: grid;
|
|
30
|
-
grid-template-columns: 360px
|
|
30
|
+
grid-template-columns: 360px calc(100% - 360px);
|
|
31
|
+
min-height: 100vh;
|
|
31
32
|
height: 100%;
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
.app-sidebar {
|
|
35
36
|
border-right: 1px solid gray;
|
|
37
|
+
position: relative;
|
|
38
|
+
|
|
39
|
+
& .scrollable-container-wrapper {
|
|
40
|
+
position: fixed;
|
|
41
|
+
top: 0;
|
|
42
|
+
bottom: 0;
|
|
43
|
+
left: 0;
|
|
44
|
+
width: 330px;
|
|
45
|
+
margin: 1rem;
|
|
46
|
+
flex-direction: column;
|
|
47
|
+
display: flex;
|
|
48
|
+
|
|
49
|
+
& .scrollable-container {
|
|
50
|
+
flex: 1 auto;
|
|
51
|
+
overflow: auto;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
36
54
|
}
|
|
37
55
|
}
|
|
38
56
|
|
package/tsconfig.json
CHANGED
package/dist/2687.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! For license information please see 2687.js.LICENSE.txt */
|
|
2
|
-
"use strict";(self.webpackChunk_public_ui_sample_react=self.webpackChunk_public_ui_sample_react||[]).push([[2687],{8447:(e,t,i)=>{i.d(t,{i:()=>s,n:()=>c,r:()=>a});var o=i(397),n=i(4997),r=i(6448);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")},2687:(e,t,i)=>{i.r(t),i.d(t,{initialize:()=>a});var o=i(8447),n=i(6448),r=i(479);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)}}}},4997:(e,t,i)=>{i.d(t,{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}}]);
|
package/dist/9061.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! For license information please see 9061.js.LICENSE.txt */
|
|
2
|
-
"use strict";(self.webpackChunk_public_ui_sample_react=self.webpackChunk_public_ui_sample_react||[]).push([[9061],{7696:(t,e,o)=>{o.d(e,{I:()=>n});var i=o(397);const n=({accessKey:t,label:e})=>{let[o,...n]=e.split(t);return 0===n.length&&(t=t.toUpperCase(),[o,...n]=e.split(t)),0===n.length&&(t=t.toLowerCase(),[o,...n]=e.split(t)),(0,i.h)(i.F,null,o,n.length?(0,i.h)(i.F,null,(0,i.h)("u",null,t),n.join(t)):null)}},7914:(t,e,o)=>{o.d(e,{a:()=>a,v:()=>n});var i=o(479);const n=(t,e,o)=>{(0,i.w)(t,e,(t=>"string"==typeof t&&s.includes(t)),new Set(s),o,{defaultValue:"top"})},s=["left","right","top","bottom"],a=(t,e)=>{n(t,"_align",e)}},6611:(t,e,o)=>{o.d(e,{A:()=>s});var i=o(6448),n=o(479);class s{constructor(t,e,o){var s,a,r,l;if(this.experimentalMode=(0,i.a)(),this.setFormAssociatedValue=t=>{var e;const o=null===(e=this.formAssociated)||void 0===e?void 0:e.getAttribute("name");null!==o&&""!==o||(0,n.j)(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);const i=this.tryToStringifyValue(t);this.syncValue(t,i,this.formAssociated),this.syncValue(t,i,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-TEXTAREA"===l)){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("aria-hidden","true"),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,n.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,n.i)(t,"_name",e,o)})(this.component,t,{hooks:{afterPatch:()=>{this.setAttribute("name",this.formAssociated,this.component.state._name)}}}),void 0===t&&(0,n.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)}}},2320:(t,e,o)=>{o.d(e,{I:()=>p,g:()=>d,v:()=>h});var i=o(6855),n=o(6611),s=o(479),a=o(1618),r=o(5233),l=o(4388),c=o(6255);const h=(t,e)=>{(0,s.w)(t,"_msg",(t=>"object"==typeof t),new Set(["Object"]),e)},d=t=>{var e,o;const i=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,n="string"==typeof t._hint&&t._hint.length>0,s=[];return!0===i&&s.push(`${t._id}-error`),!0===n&&s.push(`${t._id}-hint`),{hasError:i,hasHint:n,ariaDescribedBy:s}};class u extends n.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,s.i)(this.component,"_accessKey",t)}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,c.v)(this.component,t)}validateError(t){const e={_description:t||"",_type:"error"};this.validateMsg(e)}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,a.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,{hooks:{afterPatch:()=>{this.setAttribute("id",this.formAssociated,this.component.state._id)}},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,r.a)(this.component,t,{required:!0})}validateMsg(t){h(this.component,t)}validateOn(t){"object"==typeof t&&(0,s.s)(this.component,"_on",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,l.v)(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAccessKey(this.component._accessKey),this.validateAdjustHeight(this.component._adjustHeight),this.validateError(this.component._error),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.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex)}onBlur(t){var e;this.component._alert=!0,this.component._touched=!0,(0,i.s)(t),(0,i.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,i.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 n;o=null!=o?o:t.target.value,(0,i.s)(t),(0,i.t)("input",this.host,o),e&&this.setFormAssociatedValue(o),"function"==typeof(null===(n=this.component._on)||void 0===n?void 0:n.onInput)&&this.component._on.onInput(t,o)}onClick(t){var e;(0,i.s)(t),(0,i.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;this.component._alert=!0,(0,i.s)(t),(0,i.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)}}},8447:(t,e,o)=>{o.d(e,{i:()=>r,n:()=>c,r:()=>l});var i=o(397),n=o(4997),s=o(6448);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 | ${i.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"===n.p&&(c=()=>"nonce")},6855:(t,e,o)=>{function i(t){t.stopImmediatePropagation(),t.stopPropagation()}function n(t,e,o){e&&function(t,e,o){const i=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(),i(t)}o.d(e,{p:()=>s,s:()=>i,t:()=>n})},1618:(t,e,o)=>{o.d(e,{v:()=>n});var i=o(479);const n=(t,e,o={})=>{(0,i.b)(t,"_hideLabel",e,o)}},5233:(t,e,o)=>{o.d(e,{a:()=>d,b:()=>r,c:()=>l,h:()=>n,v:()=>h});var i=o(479);const n=[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,i.w)(t,"_label",(t=>"string"==typeof t),c,e,function(t){var e;return Object.assign(Object.assign({},t),{hooks:{afterPatch:(e,o,n,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,n,s)),"string"==typeof e&&!1===r(e,3)&&!1===l(e)&&(0,i.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,i.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},4997:(t,e,o)=>{o.d(e,{h:()=>n,p:()=>i,s:()=>s});let i="development";try{i="production"}catch(t){i="production"}const n=(t,e,o)=>{if(t&&e&&"string"==typeof o){const i=t.querySelector(`[slot="${o}"]`);i&&e.appendChild(i)}},s=t=>""===t},4388:(t,e,o)=>{o.d(e,{v:()=>s});var i=o(479);const n={hooks:{afterPatch:t=>{-1!==t&&0!==t&&(0,i.a)("Don't Use Tabindex Greater than 0: https://adrianroselli.com/2014/11/dont-use-tabindex-greater-than-0.html")}}},s=(t,e)=>{(0,i.k)(t,"_tabIndex",e,n)}},6255:(t,e,o)=>{o.d(e,{v:()=>n});var i=o(7914);const n=(t,e)=>{(0,i.v)(t,"_tooltipAlign",e)}}}]);
|
|
File without changes
|
|
File without changes
|