gd-bs 6.1.1 → 6.1.3
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/build/components/checkboxGroup/item.js +1 -0
- package/build/components/dropdown/index.js +5 -0
- package/build/components/form/control.js +19 -0
- package/build/components/inputGroup/index.js +2 -0
- package/build/components/listBox/index.js +2 -0
- package/build/icons/svgs/folderPlus.js +1 -1
- package/build/icons/svgs/postcardHeartFill.js +1 -1
- package/build/icons/svgs/trash.js +1 -1
- package/dist/gd-bs-icons.js +1 -1
- package/dist/gd-bs-icons.min.js +1 -1
- package/dist/gd-bs.d.ts +5 -1
- package/dist/gd-bs.js +1 -1
- package/dist/gd-bs.min.js +1 -1
- package/index.html +4 -0
- package/package.json +2 -2
- package/pnpm-lock.yaml +4 -4
- package/src/components/checkboxGroup/item.ts +1 -0
- package/src/components/checkboxGroup/types.d.ts +1 -0
- package/src/components/dropdown/index.ts +4 -0
- package/src/components/dropdown/types.d.ts +1 -0
- package/src/components/form/control.ts +19 -0
- package/src/components/inputGroup/index.ts +2 -0
- package/src/components/inputGroup/types.d.ts +1 -0
- package/src/components/listBox/index.ts +3 -0
- package/src/components/listBox/types.d.ts +2 -1
- package/src/icons/svgs/folderPlus.ts +1 -1
- package/src/icons/svgs/postcardHeartFill.ts +1 -1
- package/src/icons/svgs/trash.ts +1 -1
package/index.html
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gd-bs",
|
|
3
|
-
"version": "6.1.
|
|
3
|
+
"version": "6.1.3",
|
|
4
4
|
"description": "Bootstrap JavaScript, TypeScript and Web Components library.",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"typings": "src/index.d.ts",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@popperjs/core": "^2.11.6",
|
|
37
37
|
"bootstrap": "^5.2.3",
|
|
38
|
-
"bootstrap-icons": "^1.10.
|
|
38
|
+
"bootstrap-icons": "^1.10.4",
|
|
39
39
|
"core-js": "^3.25.5",
|
|
40
40
|
"tippy.js": "^6.3.7"
|
|
41
41
|
},
|
package/pnpm-lock.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
dependencies:
|
|
2
2
|
'@popperjs/core': 2.11.6
|
|
3
3
|
bootstrap: 5.2.3_@popperjs+core@2.11.6
|
|
4
|
-
bootstrap-icons: 1.10.
|
|
4
|
+
bootstrap-icons: 1.10.4
|
|
5
5
|
core-js: 3.25.5
|
|
6
6
|
tippy.js: 6.3.7
|
|
7
7
|
devDependencies:
|
|
@@ -1612,10 +1612,10 @@ packages:
|
|
|
1612
1612
|
node: '>=8'
|
|
1613
1613
|
resolution:
|
|
1614
1614
|
integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
|
|
1615
|
-
/bootstrap-icons/1.10.
|
|
1615
|
+
/bootstrap-icons/1.10.4:
|
|
1616
1616
|
dev: false
|
|
1617
1617
|
resolution:
|
|
1618
|
-
integrity: sha512-
|
|
1618
|
+
integrity: sha512-eI3HyIUmpGKRiRv15FCZccV+2sreGE2NnmH8mtxV/nPOzQVu0sPEj8HhF1MwjJ31IhjF0rgMvtYOX5VqIzcb/A==
|
|
1619
1619
|
/bootstrap/5.2.3_@popperjs+core@2.11.6:
|
|
1620
1620
|
dependencies:
|
|
1621
1621
|
'@popperjs/core': 2.11.6
|
|
@@ -3282,7 +3282,7 @@ specifiers:
|
|
|
3282
3282
|
autoprefixer: ^10.4.12
|
|
3283
3283
|
babel-loader: ^8.2.5
|
|
3284
3284
|
bootstrap: ^5.2.3
|
|
3285
|
-
bootstrap-icons: ^1.10.
|
|
3285
|
+
bootstrap-icons: ^1.10.4
|
|
3286
3286
|
core-js: ^3.25.5
|
|
3287
3287
|
css-loader: ^6.7.1
|
|
3288
3288
|
dts-bundle: ^0.7.3
|
|
@@ -37,6 +37,7 @@ export class CheckboxItem {
|
|
|
37
37
|
if (this._elCheckbox) {
|
|
38
38
|
this._elCheckbox.disabled = this._parent.isDisabled ? true : false;
|
|
39
39
|
this._elCheckbox.readOnly = this._parent.isReadonly ? true : false;
|
|
40
|
+
this._elCheckbox.required = this._parent.required ? true : false;
|
|
40
41
|
|
|
41
42
|
// Default the title property for the checkbox
|
|
42
43
|
this._elCheckbox.title = this.props.label || this._parent.title || "";
|
|
@@ -95,6 +95,7 @@ export interface ICheckboxGroupProps extends IBaseProps<ICheckboxGroup> {
|
|
|
95
95
|
multi?: boolean;
|
|
96
96
|
onRender?: (el?: HTMLElement, item?: ICheckboxGroupItem) => void;
|
|
97
97
|
onChange?: (items: ICheckboxGroupItem | Array<ICheckboxGroupItem>, ev?: Event) => void;
|
|
98
|
+
required?: boolean;
|
|
98
99
|
title?: string;
|
|
99
100
|
type?: number;
|
|
100
101
|
value?: any;
|
|
@@ -289,6 +289,7 @@ class _Dropdown extends Base<IDropdownProps> implements IDropdown {
|
|
|
289
289
|
dropdown.classList.add("form-select");
|
|
290
290
|
dropdown.disabled = this.props.isReadonly ? true : false;
|
|
291
291
|
dropdown.multiple = this.props.multi ? true : false;
|
|
292
|
+
dropdown.required = this.props.required ? true : false;
|
|
292
293
|
this.props.title ? dropdown.title = this.props.title : null;
|
|
293
294
|
}
|
|
294
295
|
}
|
|
@@ -448,6 +449,9 @@ class _Dropdown extends Base<IDropdownProps> implements IDropdown {
|
|
|
448
449
|
for (let i = 0; i < this._items.length; i++) {
|
|
449
450
|
let item = this._items[i];
|
|
450
451
|
|
|
452
|
+
// Skip disabled items
|
|
453
|
+
if ((item.el as HTMLOptionElement).disabled) { continue; }
|
|
454
|
+
|
|
451
455
|
// See if this item is selected
|
|
452
456
|
if (item.isSelected) {
|
|
453
457
|
// Add the value
|
|
@@ -143,6 +143,7 @@ export interface IDropdownProps extends IBaseProps<IDropdown> {
|
|
|
143
143
|
navFl?: boolean;
|
|
144
144
|
onChange?: (item?: IDropdownItem | Array<IDropdownItem>, ev?: Event) => void;
|
|
145
145
|
onMenuRendering?: (props: IPopoverProps) => IPopoverProps;
|
|
146
|
+
required?: boolean;
|
|
146
147
|
setLabelToValue?: boolean;
|
|
147
148
|
title?: string;
|
|
148
149
|
type?: number;
|
|
@@ -121,6 +121,7 @@ export class FormControl implements IFormControl {
|
|
|
121
121
|
isReadonly: this._props.isReadonly,
|
|
122
122
|
items: cbProps.items,
|
|
123
123
|
onChange: cbProps.onChange,
|
|
124
|
+
required: this._props.required,
|
|
124
125
|
title: this._props.title,
|
|
125
126
|
type: CheckboxGroupTypes.Checkbox,
|
|
126
127
|
value
|
|
@@ -136,6 +137,7 @@ export class FormControl implements IFormControl {
|
|
|
136
137
|
isReadonly: this._props.isReadonly,
|
|
137
138
|
onChange: (this._props as IFormControlPropsTextField).onChange,
|
|
138
139
|
placeholder: (this._props as IFormControlPropsTextField).placeholder,
|
|
140
|
+
required: this._props.required,
|
|
139
141
|
title: this._props.title,
|
|
140
142
|
type: InputGroupTypes.ColorPicker,
|
|
141
143
|
value
|
|
@@ -152,6 +154,7 @@ export class FormControl implements IFormControl {
|
|
|
152
154
|
isReadonly: this._props.isReadonly,
|
|
153
155
|
items: (this._props as IFormControlPropsDropdown).items,
|
|
154
156
|
onChange: (this._props as IFormControlPropsDropdown).onChange,
|
|
157
|
+
required: this._props.required,
|
|
155
158
|
title: this._props.title,
|
|
156
159
|
value
|
|
157
160
|
});
|
|
@@ -167,6 +170,7 @@ export class FormControl implements IFormControl {
|
|
|
167
170
|
items: (this._props as IFormControlPropsDropdown).items,
|
|
168
171
|
onChange: (this._props as IFormControlPropsDropdown).onChange,
|
|
169
172
|
onMenuRendering: (this._props as IFormControlPropsDropdown).onMenuRendering,
|
|
173
|
+
required: this._props.required,
|
|
170
174
|
title: this._props.title,
|
|
171
175
|
value
|
|
172
176
|
});
|
|
@@ -181,6 +185,7 @@ export class FormControl implements IFormControl {
|
|
|
181
185
|
isReadonly: this._props.isReadonly,
|
|
182
186
|
onChange: (this._props as IFormControlPropsTextField).onChange,
|
|
183
187
|
placeholder: (this._props as IFormControlPropsTextField).placeholder,
|
|
188
|
+
required: this._props.required,
|
|
184
189
|
title: this._props.title,
|
|
185
190
|
type: InputGroupTypes.Email,
|
|
186
191
|
value
|
|
@@ -196,6 +201,7 @@ export class FormControl implements IFormControl {
|
|
|
196
201
|
isReadonly: this._props.isReadonly,
|
|
197
202
|
onChange: (this._props as IFormControlPropsTextField).onChange,
|
|
198
203
|
placeholder: (this._props as IFormControlPropsTextField).placeholder,
|
|
204
|
+
required: this._props.required,
|
|
199
205
|
title: this._props.title,
|
|
200
206
|
type: InputGroupTypes.File,
|
|
201
207
|
value
|
|
@@ -210,6 +216,7 @@ export class FormControl implements IFormControl {
|
|
|
210
216
|
items: (this._props as IFormControlPropsListBox).items,
|
|
211
217
|
onChange: (this._props as IFormControlPropsListBox).onChange,
|
|
212
218
|
placeholder: (this._props as IFormControlPropsListBox).placeholder,
|
|
219
|
+
required: this._props.required,
|
|
213
220
|
value
|
|
214
221
|
});
|
|
215
222
|
break;
|
|
@@ -228,6 +235,7 @@ export class FormControl implements IFormControl {
|
|
|
228
235
|
items: cbMultiProps.items,
|
|
229
236
|
multi: true,
|
|
230
237
|
onChange: cbMultiProps.onChange,
|
|
238
|
+
required: this._props.required,
|
|
231
239
|
title: this._props.title,
|
|
232
240
|
type: CheckboxGroupTypes.Checkbox,
|
|
233
241
|
value
|
|
@@ -245,6 +253,7 @@ export class FormControl implements IFormControl {
|
|
|
245
253
|
multi: true,
|
|
246
254
|
onChange: (this._props as IFormControlPropsDropdown).onChange,
|
|
247
255
|
onMenuRendering: (this._props as IFormControlPropsDropdown).onMenuRendering,
|
|
256
|
+
required: this._props.required,
|
|
248
257
|
title: this._props.title,
|
|
249
258
|
value
|
|
250
259
|
});
|
|
@@ -259,6 +268,7 @@ export class FormControl implements IFormControl {
|
|
|
259
268
|
multi: true,
|
|
260
269
|
onChange: (this._props as IFormControlPropsMultiListBox).onChange,
|
|
261
270
|
placeholder: (this._props as IFormControlPropsMultiListBox).placeholder,
|
|
271
|
+
required: this._props.required,
|
|
262
272
|
value
|
|
263
273
|
});
|
|
264
274
|
break;
|
|
@@ -274,6 +284,7 @@ export class FormControl implements IFormControl {
|
|
|
274
284
|
items: (this._props as IFormControlPropsMultiCheckbox).items,
|
|
275
285
|
multi: true,
|
|
276
286
|
onChange: (this._props as IFormControlPropsMultiCheckbox).onChange,
|
|
287
|
+
required: this._props.required,
|
|
277
288
|
title: this._props.title,
|
|
278
289
|
type: CheckboxGroupTypes.Radio,
|
|
279
290
|
value
|
|
@@ -291,6 +302,7 @@ export class FormControl implements IFormControl {
|
|
|
291
302
|
items: (this._props as IFormControlPropsMultiCheckbox).items,
|
|
292
303
|
multi: true,
|
|
293
304
|
onChange: (this._props as IFormControlPropsMultiCheckbox).onChange,
|
|
305
|
+
required: this._props.required,
|
|
294
306
|
title: this._props.title,
|
|
295
307
|
type: CheckboxGroupTypes.Switch,
|
|
296
308
|
value
|
|
@@ -306,6 +318,7 @@ export class FormControl implements IFormControl {
|
|
|
306
318
|
isReadonly: this._props.isReadonly,
|
|
307
319
|
onChange: (this._props as IFormControlPropsTextField).onChange,
|
|
308
320
|
placeholder: (this._props as IFormControlPropsTextField).placeholder,
|
|
321
|
+
required: this._props.required,
|
|
309
322
|
title: this._props.title,
|
|
310
323
|
type: InputGroupTypes.Password,
|
|
311
324
|
value
|
|
@@ -322,6 +335,7 @@ export class FormControl implements IFormControl {
|
|
|
322
335
|
isReadonly: this._props.isReadonly,
|
|
323
336
|
items: (this._props as IFormControlPropsCheckbox).items,
|
|
324
337
|
onChange: (this._props as IFormControlPropsCheckbox).onChange,
|
|
338
|
+
required: this._props.required,
|
|
325
339
|
title: this._props.title,
|
|
326
340
|
type: CheckboxGroupTypes.Radio,
|
|
327
341
|
value
|
|
@@ -339,6 +353,7 @@ export class FormControl implements IFormControl {
|
|
|
339
353
|
max: (this._props as IFormControlPropsRange).max || 100,
|
|
340
354
|
onChange: (this._props as IFormControlPropsRange).onChange,
|
|
341
355
|
placeholder: (this._props as IFormControlPropsRange).placeholder,
|
|
356
|
+
required: this._props.required,
|
|
342
357
|
step: (this._props as IFormControlPropsRange).step,
|
|
343
358
|
title: this._props.title,
|
|
344
359
|
type: InputGroupTypes.Range,
|
|
@@ -354,6 +369,7 @@ export class FormControl implements IFormControl {
|
|
|
354
369
|
isReadonly: true,
|
|
355
370
|
onChange: (this._props as IFormControlPropsTextField).onChange,
|
|
356
371
|
placeholder: (this._props as IFormControlPropsTextField).placeholder,
|
|
372
|
+
required: this._props.required,
|
|
357
373
|
title: this._props.title,
|
|
358
374
|
type: InputGroupTypes.TextField,
|
|
359
375
|
value
|
|
@@ -370,6 +386,7 @@ export class FormControl implements IFormControl {
|
|
|
370
386
|
isReadonly: this._props.isReadonly,
|
|
371
387
|
items: (this._props as IFormControlPropsCheckbox).items,
|
|
372
388
|
onChange: (this._props as IFormControlPropsCheckbox).onChange,
|
|
389
|
+
required: this._props.required,
|
|
373
390
|
title: this._props.title,
|
|
374
391
|
type: CheckboxGroupTypes.Switch,
|
|
375
392
|
value
|
|
@@ -385,6 +402,7 @@ export class FormControl implements IFormControl {
|
|
|
385
402
|
isReadonly: this._props.isReadonly,
|
|
386
403
|
onChange: (this._props as IFormControlPropsTextField).onChange,
|
|
387
404
|
placeholder: (this._props as IFormControlPropsTextField).placeholder,
|
|
405
|
+
required: this._props.required,
|
|
388
406
|
rows: (this._props as IFormControlPropsTextField).rows,
|
|
389
407
|
title: this._props.title,
|
|
390
408
|
type: InputGroupTypes.TextArea,
|
|
@@ -401,6 +419,7 @@ export class FormControl implements IFormControl {
|
|
|
401
419
|
isReadonly: this._props.isReadonly,
|
|
402
420
|
onChange: (this._props as IFormControlPropsTextField).onChange,
|
|
403
421
|
placeholder: (this._props as IFormControlPropsTextField).placeholder,
|
|
422
|
+
required: this._props.required,
|
|
404
423
|
title: this._props.title,
|
|
405
424
|
type: InputGroupTypes.TextField,
|
|
406
425
|
value
|
|
@@ -219,6 +219,7 @@ class _InputGroup extends Base<IInputGroupProps> implements IInputGroup {
|
|
|
219
219
|
this.props.placeholder ? textarea.placeholder = this.props.placeholder : null;
|
|
220
220
|
textarea.disabled = this.props.isDisabled ? true : false;
|
|
221
221
|
textarea.readOnly = this.props.isReadonly ? true : false;
|
|
222
|
+
textarea.required = this.props.required ? true : false;
|
|
222
223
|
textarea.rows = this.props.rows;
|
|
223
224
|
this.props.title ? textarea.title = this.props.title : null;
|
|
224
225
|
}
|
|
@@ -233,6 +234,7 @@ class _InputGroup extends Base<IInputGroupProps> implements IInputGroup {
|
|
|
233
234
|
this.props.placeholder ? input.placeholder = this.props.placeholder : null;
|
|
234
235
|
input.disabled = this.props.isDisabled ? true : false;
|
|
235
236
|
input.readOnly = this.props.isReadonly ? true : false;
|
|
237
|
+
input.required = this.props.required ? true : false;
|
|
236
238
|
this.props.title ? input.title = this.props.title : null;
|
|
237
239
|
typeof (this.props.min) === "number" ? input.min = this.props.min + "" : null;
|
|
238
240
|
typeof (this.props.max) === "number" ? input.max = this.props.max + "" : null;
|
|
@@ -72,6 +72,9 @@ class _ListBox extends Base<IListBoxProps> implements IListBox {
|
|
|
72
72
|
this._elSearchBox ? this._elSearchBox.disabled = true : null;
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
+
// Set the required property
|
|
76
|
+
this._elSearchBox.required = this.props.required ? true : false;
|
|
77
|
+
|
|
75
78
|
// Set the options
|
|
76
79
|
this.setOptions(this.props.items);
|
|
77
80
|
|
|
@@ -99,8 +99,9 @@ export interface IListBoxProps extends IBaseProps<IListBox> {
|
|
|
99
99
|
isReadonly?: boolean;
|
|
100
100
|
items: Array<IDropdownItem>;
|
|
101
101
|
multi?: boolean;
|
|
102
|
-
placeholder?: string;
|
|
103
102
|
onLoadData?: () => Array<IDropdownItem> | PromiseLike<Array<IDropdownItem>>;
|
|
104
103
|
onChange?: (items: IDropdownItem | Array<IDropdownItem>, ev?: Event) => void;
|
|
104
|
+
placeholder?: string;
|
|
105
|
+
required?: boolean;
|
|
105
106
|
value?: string | Array<string>;
|
|
106
107
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { generateIcon } from "../generate";
|
|
2
2
|
export function folderPlus(height, width, className?) {
|
|
3
|
-
return generateIcon(`<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-folder-plus' viewBox='0 0 16 16'> <path d='m.5 3 .04.87a1.99 1.99 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14H9v-1H2.826a1 1 0 0 1-.995-.91l-.637-7A1 1 0 0 1 2.19 4h11.62a1 1 0 0 1 .996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0 0 13.81 3H9.828a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 6.172 1H2.5a2 2 0 0 0-2
|
|
3
|
+
return generateIcon(`<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-folder-plus' viewBox='0 0 16 16'> <path d='m.5 3 .04.87a1.99 1.99 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14H9v-1H2.826a1 1 0 0 1-.995-.91l-.637-7A1 1 0 0 1 2.19 4h11.62a1 1 0 0 1 .996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0 0 13.81 3H9.828a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 6.172 1H2.5a2 2 0 0 0-2 2Zm5.672-1a1 1 0 0 1 .707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 0 1 1-.98h3.672Z'/> <path d='M13.5 9a.5.5 0 0 1 .5.5V11h1.5a.5.5 0 1 1 0 1H14v1.5a.5.5 0 1 1-1 0V12h-1.5a.5.5 0 0 1 0-1H13V9.5a.5.5 0 0 1 .5-.5Z'/> </svg>`, height, width, className);
|
|
4
4
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { generateIcon } from "../generate";
|
|
2
2
|
export function postcardHeartFill(height, width, className?) {
|
|
3
|
-
return generateIcon(`<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-postcard-heart-fill' viewBox='0 0 16 16'> <path
|
|
3
|
+
return generateIcon(`<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-postcard-heart-fill' viewBox='0 0 16 16'> <path d='M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2Zm6 2.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 1 0Zm3.5.878c1.482-1.42 4.795 1.392 0 4.622-4.795-3.23-1.482-6.043 0-4.622ZM2 5.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Z'/> </svg>`, height, width, className);
|
|
4
4
|
}
|
package/src/icons/svgs/trash.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { generateIcon } from "../generate";
|
|
2
2
|
export function trash(height, width, className?) {
|
|
3
|
-
return generateIcon(`<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-trash' viewBox='0 0 16 16'> <path d='M5.5 5.5A.5.5 0 0 1 6 6v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.
|
|
3
|
+
return generateIcon(`<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-trash' viewBox='0 0 16 16'> <path d='M5.5 5.5A.5.5 0 0 1 6 6v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5Zm2.5 0a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5Zm3 .5a.5.5 0 0 0-1 0v6a.5.5 0 0 0 1 0V6Z'/> <path d='M14.5 3a1 1 0 0 1-1 1H13v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V4h-.5a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1H6a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1h3.5a1 1 0 0 1 1 1v1ZM4.118 4 4 4.059V13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V4.059L11.882 4H4.118ZM2.5 3h11V2h-11v1Z'/> </svg>`, height, width, className);
|
|
4
4
|
}
|