rizzo-css 0.0.62 → 0.0.64
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/README.md +9 -5
- package/bin/rizzo-css.js +350 -31
- package/dist/rizzo.min.css +5 -3
- package/package.json +14 -7
- package/scaffold/astro/Footer.astro +8 -0
- package/scaffold/astro/Settings.astro +8 -2
- package/scaffold/astro/Tabs.astro +2 -2
- package/scaffold/react/Accordion.tsx +143 -0
- package/scaffold/react/Alert.tsx +90 -0
- package/scaffold/react/AlertDialog.tsx +80 -0
- package/scaffold/react/AspectRatio.tsx +32 -0
- package/scaffold/react/Avatar.tsx +53 -0
- package/scaffold/react/BackToTop.tsx +62 -0
- package/scaffold/react/Badge.tsx +39 -0
- package/scaffold/react/Breadcrumb.tsx +81 -0
- package/scaffold/react/Button.tsx +40 -0
- package/scaffold/react/ButtonGroup.tsx +24 -0
- package/scaffold/react/Card.tsx +26 -0
- package/scaffold/react/Checkbox.tsx +40 -0
- package/scaffold/react/Collapsible.tsx +58 -0
- package/scaffold/react/ContextMenu.tsx +67 -0
- package/scaffold/react/CopyToClipboard.tsx +128 -0
- package/scaffold/react/Dashboard.tsx +23 -0
- package/scaffold/react/Divider.tsx +47 -0
- package/scaffold/react/DocsSidebar.tsx +48 -0
- package/scaffold/react/Dropdown.tsx +256 -0
- package/scaffold/react/Empty.tsx +29 -0
- package/scaffold/react/FontSwitcher.tsx +68 -0
- package/scaffold/react/Footer.tsx +55 -0
- package/scaffold/react/FormGroup.tsx +57 -0
- package/scaffold/react/HoverCard.tsx +61 -0
- package/scaffold/react/Icons.tsx +22 -0
- package/scaffold/react/Input.tsx +69 -0
- package/scaffold/react/Kbd.tsx +16 -0
- package/scaffold/react/Label.tsx +16 -0
- package/scaffold/react/Modal.tsx +149 -0
- package/scaffold/react/Navbar.tsx +72 -0
- package/scaffold/react/Pagination.tsx +155 -0
- package/scaffold/react/Popover.tsx +66 -0
- package/scaffold/react/ProgressBar.tsx +66 -0
- package/scaffold/react/Radio.tsx +38 -0
- package/scaffold/react/ResizableHandle.tsx +24 -0
- package/scaffold/react/ResizablePane.tsx +29 -0
- package/scaffold/react/ResizablePaneGroup.tsx +29 -0
- package/scaffold/react/ScrollArea.tsx +29 -0
- package/scaffold/react/Search.tsx +62 -0
- package/scaffold/react/Select.tsx +65 -0
- package/scaffold/react/Separator.tsx +33 -0
- package/scaffold/react/Settings.tsx +60 -0
- package/scaffold/react/Sheet.tsx +86 -0
- package/scaffold/react/Skeleton.tsx +32 -0
- package/scaffold/react/Slider.tsx +66 -0
- package/scaffold/react/SoundEffects.tsx +15 -0
- package/scaffold/react/Spinner.tsx +36 -0
- package/scaffold/react/Switch.tsx +52 -0
- package/scaffold/react/Table.tsx +178 -0
- package/scaffold/react/Tabs.tsx +143 -0
- package/scaffold/react/Textarea.tsx +69 -0
- package/scaffold/react/ThemeSwitcher.tsx +89 -0
- package/scaffold/react/Toast.tsx +43 -0
- package/scaffold/react/Toggle.tsx +45 -0
- package/scaffold/react/ToggleGroup.tsx +34 -0
- package/scaffold/react/Tooltip.tsx +40 -0
- package/scaffold/react/base/README-RIZZO.md +50 -0
- package/scaffold/react/base/gitignore +8 -0
- package/scaffold/react/base/index.html +16 -0
- package/scaffold/react/base/package.json +22 -0
- package/scaffold/react/base/public/.gitkeep +0 -0
- package/scaffold/react/base/src/App.tsx +11 -0
- package/scaffold/react/base/src/index.css +1 -0
- package/scaffold/react/base/src/main.tsx +10 -0
- package/scaffold/react/base/src/vite-env.d.ts +1 -0
- package/scaffold/react/base/tsconfig.json +21 -0
- package/scaffold/react/base/tsconfig.node.json +9 -0
- package/scaffold/react/base/vite.config.ts +6 -0
- package/scaffold/vanilla/README-RIZZO.md +1 -1
- package/scaffold/vanilla/components/accordion.html +36 -0
- package/scaffold/vanilla/components/alert-dialog.html +36 -0
- package/scaffold/vanilla/components/alert.html +36 -0
- package/scaffold/vanilla/components/aspect-ratio.html +36 -0
- package/scaffold/vanilla/components/avatar.html +36 -0
- package/scaffold/vanilla/components/back-to-top.html +36 -0
- package/scaffold/vanilla/components/badge.html +36 -0
- package/scaffold/vanilla/components/breadcrumb.html +36 -0
- package/scaffold/vanilla/components/button-group.html +36 -0
- package/scaffold/vanilla/components/button.html +36 -0
- package/scaffold/vanilla/components/cards.html +36 -0
- package/scaffold/vanilla/components/collapsible.html +36 -0
- package/scaffold/vanilla/components/context-menu.html +36 -0
- package/scaffold/vanilla/components/copy-to-clipboard.html +36 -0
- package/scaffold/vanilla/components/dashboard.html +36 -0
- package/scaffold/vanilla/components/divider.html +36 -0
- package/scaffold/vanilla/components/docs-sidebar.html +36 -0
- package/scaffold/vanilla/components/dropdown.html +36 -0
- package/scaffold/vanilla/components/empty.html +36 -0
- package/scaffold/vanilla/components/font-switcher.html +36 -0
- package/scaffold/vanilla/components/footer.html +36 -0
- package/scaffold/vanilla/components/forms.html +36 -0
- package/scaffold/vanilla/components/hover-card.html +36 -0
- package/scaffold/vanilla/components/icons.html +36 -0
- package/scaffold/vanilla/components/index.html +36 -0
- package/scaffold/vanilla/components/kbd.html +36 -0
- package/scaffold/vanilla/components/label.html +36 -0
- package/scaffold/vanilla/components/modal.html +36 -0
- package/scaffold/vanilla/components/navbar.html +36 -0
- package/scaffold/vanilla/components/pagination.html +36 -0
- package/scaffold/vanilla/components/popover.html +36 -0
- package/scaffold/vanilla/components/progress-bar.html +36 -0
- package/scaffold/vanilla/components/resizable.html +36 -0
- package/scaffold/vanilla/components/scroll-area.html +36 -0
- package/scaffold/vanilla/components/search.html +36 -0
- package/scaffold/vanilla/components/separator.html +36 -0
- package/scaffold/vanilla/components/settings.html +36 -0
- package/scaffold/vanilla/components/sheet.html +36 -0
- package/scaffold/vanilla/components/skeleton.html +36 -0
- package/scaffold/vanilla/components/slider.html +36 -0
- package/scaffold/vanilla/components/sound-effects.html +36 -0
- package/scaffold/vanilla/components/spinner.html +36 -0
- package/scaffold/vanilla/components/switch.html +36 -0
- package/scaffold/vanilla/components/table.html +36 -0
- package/scaffold/vanilla/components/tabs.html +36 -0
- package/scaffold/vanilla/components/theme-switcher.html +36 -0
- package/scaffold/vanilla/components/toast.html +36 -0
- package/scaffold/vanilla/components/toggle-group.html +36 -0
- package/scaffold/vanilla/components/toggle.html +36 -0
- package/scaffold/vanilla/components/tooltip.html +36 -0
- package/scaffold/vanilla/index.html +36 -0
- package/scaffold/vue/Accordion.vue +9 -0
- package/scaffold/vue/Alert.vue +9 -0
- package/scaffold/vue/AlertDialog.vue +9 -0
- package/scaffold/vue/AspectRatio.vue +9 -0
- package/scaffold/vue/Avatar.vue +9 -0
- package/scaffold/vue/BackToTop.vue +9 -0
- package/scaffold/vue/Badge.vue +28 -0
- package/scaffold/vue/Breadcrumb.vue +9 -0
- package/scaffold/vue/Button.vue +23 -0
- package/scaffold/vue/ButtonGroup.vue +9 -0
- package/scaffold/vue/Card.vue +21 -0
- package/scaffold/vue/Checkbox.vue +31 -0
- package/scaffold/vue/Collapsible.vue +9 -0
- package/scaffold/vue/ContextMenu.vue +9 -0
- package/scaffold/vue/CopyToClipboard.vue +9 -0
- package/scaffold/vue/Dashboard.vue +9 -0
- package/scaffold/vue/Divider.vue +23 -0
- package/scaffold/vue/DocsSidebar.vue +9 -0
- package/scaffold/vue/Dropdown.vue +9 -0
- package/scaffold/vue/Empty.vue +9 -0
- package/scaffold/vue/FontSwitcher.vue +9 -0
- package/scaffold/vue/Footer.vue +9 -0
- package/scaffold/vue/FormGroup.vue +45 -0
- package/scaffold/vue/HoverCard.vue +9 -0
- package/scaffold/vue/Icons.vue +9 -0
- package/scaffold/vue/Input.vue +59 -0
- package/scaffold/vue/Kbd.vue +9 -0
- package/scaffold/vue/Label.vue +23 -0
- package/scaffold/vue/Modal.vue +9 -0
- package/scaffold/vue/Navbar.vue +9 -0
- package/scaffold/vue/Pagination.vue +9 -0
- package/scaffold/vue/Popover.vue +9 -0
- package/scaffold/vue/ProgressBar.vue +9 -0
- package/scaffold/vue/Radio.vue +29 -0
- package/scaffold/vue/ResizableHandle.vue +9 -0
- package/scaffold/vue/ResizablePane.vue +9 -0
- package/scaffold/vue/ResizablePaneGroup.vue +9 -0
- package/scaffold/vue/ScrollArea.vue +9 -0
- package/scaffold/vue/Search.vue +9 -0
- package/scaffold/vue/Select.vue +52 -0
- package/scaffold/vue/Separator.vue +9 -0
- package/scaffold/vue/Settings.vue +9 -0
- package/scaffold/vue/Sheet.vue +9 -0
- package/scaffold/vue/Skeleton.vue +9 -0
- package/scaffold/vue/Slider.vue +9 -0
- package/scaffold/vue/SoundEffects.vue +9 -0
- package/scaffold/vue/Spinner.vue +21 -0
- package/scaffold/vue/Switch.vue +9 -0
- package/scaffold/vue/Table.vue +9 -0
- package/scaffold/vue/Tabs.vue +9 -0
- package/scaffold/vue/Textarea.vue +60 -0
- package/scaffold/vue/ThemeSwitcher.vue +9 -0
- package/scaffold/vue/Toast.vue +9 -0
- package/scaffold/vue/Toggle.vue +9 -0
- package/scaffold/vue/ToggleGroup.vue +9 -0
- package/scaffold/vue/Tooltip.vue +9 -0
- package/scaffold/vue/base/README-RIZZO.md +50 -0
- package/scaffold/vue/base/gitignore +8 -0
- package/scaffold/vue/base/index.html +16 -0
- package/scaffold/vue/base/package.json +20 -0
- package/scaffold/vue/base/public/.gitkeep +0 -0
- package/scaffold/vue/base/src/App.vue +13 -0
- package/scaffold/vue/base/src/index.css +1 -0
- package/scaffold/vue/base/src/main.ts +5 -0
- package/scaffold/vue/base/src/vite-env.d.ts +7 -0
- package/scaffold/vue/base/tsconfig.json +22 -0
- package/scaffold/vue/base/tsconfig.node.json +10 -0
- package/scaffold/vue/base/vite.config.ts +6 -0
|
@@ -404,6 +404,24 @@
|
|
|
404
404
|
|
|
405
405
|
|
|
406
406
|
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
|
|
411
|
+
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
|
|
407
425
|
|
|
408
426
|
|
|
409
427
|
|
|
@@ -661,6 +679,24 @@
|
|
|
661
679
|
|
|
662
680
|
|
|
663
681
|
|
|
682
|
+
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
|
|
687
|
+
|
|
688
|
+
|
|
689
|
+
|
|
690
|
+
|
|
691
|
+
|
|
692
|
+
|
|
693
|
+
|
|
694
|
+
|
|
695
|
+
|
|
696
|
+
|
|
697
|
+
|
|
698
|
+
|
|
699
|
+
|
|
664
700
|
|
|
665
701
|
|
|
666
702
|
|
|
@@ -404,6 +404,24 @@
|
|
|
404
404
|
|
|
405
405
|
|
|
406
406
|
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
|
|
411
|
+
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
|
|
407
425
|
|
|
408
426
|
|
|
409
427
|
|
|
@@ -661,6 +679,24 @@
|
|
|
661
679
|
|
|
662
680
|
|
|
663
681
|
|
|
682
|
+
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
|
|
687
|
+
|
|
688
|
+
|
|
689
|
+
|
|
690
|
+
|
|
691
|
+
|
|
692
|
+
|
|
693
|
+
|
|
694
|
+
|
|
695
|
+
|
|
696
|
+
|
|
697
|
+
|
|
698
|
+
|
|
699
|
+
|
|
664
700
|
|
|
665
701
|
|
|
666
702
|
|
|
@@ -404,6 +404,24 @@
|
|
|
404
404
|
|
|
405
405
|
|
|
406
406
|
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
|
|
411
|
+
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
|
|
407
425
|
|
|
408
426
|
|
|
409
427
|
|
|
@@ -661,6 +679,24 @@
|
|
|
661
679
|
|
|
662
680
|
|
|
663
681
|
|
|
682
|
+
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
|
|
687
|
+
|
|
688
|
+
|
|
689
|
+
|
|
690
|
+
|
|
691
|
+
|
|
692
|
+
|
|
693
|
+
|
|
694
|
+
|
|
695
|
+
|
|
696
|
+
|
|
697
|
+
|
|
698
|
+
|
|
699
|
+
|
|
664
700
|
|
|
665
701
|
|
|
666
702
|
|
|
@@ -404,6 +404,24 @@
|
|
|
404
404
|
|
|
405
405
|
|
|
406
406
|
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
|
|
411
|
+
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
|
|
407
425
|
|
|
408
426
|
|
|
409
427
|
|
|
@@ -661,6 +679,24 @@
|
|
|
661
679
|
|
|
662
680
|
|
|
663
681
|
|
|
682
|
+
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
|
|
687
|
+
|
|
688
|
+
|
|
689
|
+
|
|
690
|
+
|
|
691
|
+
|
|
692
|
+
|
|
693
|
+
|
|
694
|
+
|
|
695
|
+
|
|
696
|
+
|
|
697
|
+
|
|
698
|
+
|
|
699
|
+
|
|
664
700
|
|
|
665
701
|
|
|
666
702
|
|
|
@@ -404,6 +404,24 @@
|
|
|
404
404
|
|
|
405
405
|
|
|
406
406
|
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
|
|
411
|
+
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
|
|
407
425
|
|
|
408
426
|
|
|
409
427
|
|
|
@@ -661,6 +679,24 @@
|
|
|
661
679
|
|
|
662
680
|
|
|
663
681
|
|
|
682
|
+
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
|
|
687
|
+
|
|
688
|
+
|
|
689
|
+
|
|
690
|
+
|
|
691
|
+
|
|
692
|
+
|
|
693
|
+
|
|
694
|
+
|
|
695
|
+
|
|
696
|
+
|
|
697
|
+
|
|
698
|
+
|
|
699
|
+
|
|
664
700
|
|
|
665
701
|
|
|
666
702
|
|
|
@@ -404,6 +404,24 @@
|
|
|
404
404
|
|
|
405
405
|
|
|
406
406
|
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
|
|
411
|
+
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
|
|
407
425
|
|
|
408
426
|
|
|
409
427
|
|
|
@@ -751,6 +769,24 @@
|
|
|
751
769
|
|
|
752
770
|
|
|
753
771
|
|
|
772
|
+
|
|
773
|
+
|
|
774
|
+
|
|
775
|
+
|
|
776
|
+
|
|
777
|
+
|
|
778
|
+
|
|
779
|
+
|
|
780
|
+
|
|
781
|
+
|
|
782
|
+
|
|
783
|
+
|
|
784
|
+
|
|
785
|
+
|
|
786
|
+
|
|
787
|
+
|
|
788
|
+
|
|
789
|
+
|
|
754
790
|
|
|
755
791
|
|
|
756
792
|
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
type Variant = 'primary' | 'success' | 'warning' | 'error' | 'info';
|
|
3
|
+
type Size = 'sm' | 'md' | 'lg';
|
|
4
|
+
|
|
5
|
+
withDefaults(
|
|
6
|
+
defineProps<{
|
|
7
|
+
variant?: Variant;
|
|
8
|
+
size?: Size;
|
|
9
|
+
pill?: boolean;
|
|
10
|
+
class?: string;
|
|
11
|
+
}>(),
|
|
12
|
+
{ variant: 'primary', size: 'md', pill: false, class: '' }
|
|
13
|
+
);
|
|
14
|
+
</script>
|
|
15
|
+
|
|
16
|
+
<template>
|
|
17
|
+
<span
|
|
18
|
+
:class="[
|
|
19
|
+
'badge',
|
|
20
|
+
`badge--${variant}`,
|
|
21
|
+
`badge--${size}`,
|
|
22
|
+
pill ? 'badge--pill' : '',
|
|
23
|
+
$props.class,
|
|
24
|
+
].filter(Boolean).join(' ')"
|
|
25
|
+
>
|
|
26
|
+
<slot />
|
|
27
|
+
</span>
|
|
28
|
+
</template>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
type Variant = 'default' | 'primary' | 'success' | 'warning' | 'error' | 'info' | 'outline';
|
|
3
|
+
|
|
4
|
+
withDefaults(
|
|
5
|
+
defineProps<{
|
|
6
|
+
variant?: Variant;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
type?: 'button' | 'submit' | 'reset';
|
|
9
|
+
class?: string;
|
|
10
|
+
}>(),
|
|
11
|
+
{ variant: 'default', disabled: false, type: 'button', class: '' }
|
|
12
|
+
);
|
|
13
|
+
</script>
|
|
14
|
+
|
|
15
|
+
<template>
|
|
16
|
+
<button
|
|
17
|
+
:type="type"
|
|
18
|
+
:disabled="disabled"
|
|
19
|
+
:class="['btn', variant !== 'default' ? `btn-${variant}` : '', $props.class].filter(Boolean).join(' ')"
|
|
20
|
+
>
|
|
21
|
+
<slot />
|
|
22
|
+
</button>
|
|
23
|
+
</template>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
withDefaults(
|
|
3
|
+
defineProps<{
|
|
4
|
+
variant?: 'default' | 'outlined' | 'elevated';
|
|
5
|
+
class?: string;
|
|
6
|
+
}>(),
|
|
7
|
+
{ variant: 'default', class: '' }
|
|
8
|
+
);
|
|
9
|
+
</script>
|
|
10
|
+
|
|
11
|
+
<template>
|
|
12
|
+
<div
|
|
13
|
+
:class="[
|
|
14
|
+
'card',
|
|
15
|
+
variant !== 'default' ? `card--${variant}` : '',
|
|
16
|
+
$props.class,
|
|
17
|
+
].filter(Boolean).join(' ')"
|
|
18
|
+
>
|
|
19
|
+
<slot />
|
|
20
|
+
</div>
|
|
21
|
+
</template>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
defineProps<{
|
|
3
|
+
id?: string;
|
|
4
|
+
name?: string;
|
|
5
|
+
value?: string;
|
|
6
|
+
modelValue?: boolean;
|
|
7
|
+
required?: boolean;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
class?: string;
|
|
10
|
+
ariaDescribedby?: string;
|
|
11
|
+
ariaLabel?: string;
|
|
12
|
+
}>();
|
|
13
|
+
|
|
14
|
+
const emit = defineEmits<{ (e: 'update:modelValue', value: boolean): void }>();
|
|
15
|
+
</script>
|
|
16
|
+
|
|
17
|
+
<template>
|
|
18
|
+
<input
|
|
19
|
+
type="checkbox"
|
|
20
|
+
:id="id"
|
|
21
|
+
:name="name"
|
|
22
|
+
:value="value"
|
|
23
|
+
:checked="modelValue"
|
|
24
|
+
:required="required"
|
|
25
|
+
:disabled="disabled"
|
|
26
|
+
:class="$props.class"
|
|
27
|
+
:aria-describedby="ariaDescribedby"
|
|
28
|
+
:aria-label="ariaLabel"
|
|
29
|
+
@change="emit('update:modelValue', ($event.target as HTMLInputElement).checked)"
|
|
30
|
+
/>
|
|
31
|
+
</template>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
withDefaults(
|
|
3
|
+
defineProps<{
|
|
4
|
+
orientation?: 'horizontal' | 'vertical';
|
|
5
|
+
label?: string;
|
|
6
|
+
class?: string;
|
|
7
|
+
}>(),
|
|
8
|
+
{ orientation: 'horizontal', class: '' }
|
|
9
|
+
);
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<template>
|
|
13
|
+
<div
|
|
14
|
+
:class="['divider', `divider--${orientation}`, label ? 'divider--labeled' : '', $props.class].filter(Boolean).join(' ')"
|
|
15
|
+
role="separator"
|
|
16
|
+
:aria-orientation="orientation"
|
|
17
|
+
:aria-label="label?.trim() || undefined"
|
|
18
|
+
>
|
|
19
|
+
<span v-if="label && orientation === 'horizontal'" class="divider__line" aria-hidden="true" />
|
|
20
|
+
<span v-if="label && orientation === 'horizontal'" class="divider__label">{{ label }}</span>
|
|
21
|
+
<span class="divider__line" aria-hidden="true" />
|
|
22
|
+
</div>
|
|
23
|
+
</template>
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
withDefaults(
|
|
3
|
+
defineProps<{
|
|
4
|
+
label?: string;
|
|
5
|
+
labelFor?: string;
|
|
6
|
+
required?: boolean;
|
|
7
|
+
help?: string;
|
|
8
|
+
error?: string;
|
|
9
|
+
success?: string;
|
|
10
|
+
class?: string;
|
|
11
|
+
}>(),
|
|
12
|
+
{ required: false, class: '' }
|
|
13
|
+
);
|
|
14
|
+
</script>
|
|
15
|
+
|
|
16
|
+
<template>
|
|
17
|
+
<div :class="['form-group', $props.class].filter(Boolean).join(' ')">
|
|
18
|
+
<label
|
|
19
|
+
v-if="label && labelFor"
|
|
20
|
+
:for="labelFor"
|
|
21
|
+
:class="['form-group__label', required ? 'required' : ''].filter(Boolean).join(' ')"
|
|
22
|
+
>
|
|
23
|
+
{{ label }}
|
|
24
|
+
</label>
|
|
25
|
+
<span
|
|
26
|
+
v-else-if="label"
|
|
27
|
+
:class="['form-group__label', required ? 'required' : ''].filter(Boolean).join(' ')"
|
|
28
|
+
>
|
|
29
|
+
{{ label }}
|
|
30
|
+
</span>
|
|
31
|
+
<slot />
|
|
32
|
+
<span v-if="help" :id="labelFor && help ? `${labelFor}-help` : undefined" class="form-group__help">
|
|
33
|
+
{{ help }}
|
|
34
|
+
</span>
|
|
35
|
+
<span
|
|
36
|
+
v-if="error"
|
|
37
|
+
:id="labelFor && error ? `${labelFor}-error` : undefined"
|
|
38
|
+
class="form-error"
|
|
39
|
+
role="alert"
|
|
40
|
+
>
|
|
41
|
+
{{ error }}
|
|
42
|
+
</span>
|
|
43
|
+
<span v-if="success" class="form-success" role="status">{{ success }}</span>
|
|
44
|
+
</div>
|
|
45
|
+
</template>
|