@brumaombra/ui-vintage 0.4.0 → 0.5.1
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/{AlertDialogTitle.vue_vue_type_script_setup_true_lang-Ca0g2mVz.js → AlertDialogTitle.vue_vue_type_script_setup_true_lang-_UW48pv7.js} +6 -5
- package/dist/{Busy-D1u_LUYu.js → Busy-BaCc_Jo8.js} +2 -1
- package/dist/{CalendarPrevButton.vue_vue_type_script_setup_true_lang-BA4Aw_Sl.js → CalendarPrevButton.vue_vue_type_script_setup_true_lang-DdzS6YGM.js} +18 -11
- package/dist/Card.vue_vue_type_script_setup_true_lang-D0pFVflK.js +30 -0
- package/dist/{Card.vue_vue_type_script_setup_true_lang-6ol3rxy1.js → CardContent.vue_vue_type_script_setup_true_lang-dBzO0q1t.js} +3 -8
- package/dist/{CardFooter.vue_vue_type_script_setup_true_lang-B1eS9wge.js → CardFooter.vue_vue_type_script_setup_true_lang-B5EqgrgN.js} +1 -19
- package/dist/CardText.vue_vue_type_script_setup_true_lang-DbDhSd3h.js +22 -0
- package/dist/ChineseFlag-CVrOCbRz.js +18 -0
- package/dist/{Collection-Coi6nyvb.js → Collection-4P3HQ4uU.js} +1 -1
- package/dist/{ConfigProvider-D2O0Jles.js → ConfigProvider-DYO65bNW.js} +1 -1
- package/dist/DatePicker.vue_vue_type_script_setup_true_lang-C2Ug81pX.js +88 -0
- package/dist/DialogClose-DxCTEp0d.js +36 -0
- package/dist/{DialogPortal-D81oXsCY.js → DialogPortal-BiMJAKLg.js} +1 -1
- package/dist/{DialogTitle-CLuntLBB.js → DialogTitle-jKgSCoXM.js} +10 -6
- package/dist/{DialogTitle.vue_vue_type_script_setup_true_lang-BG4dvMRo.js → DialogTitle.vue_vue_type_script_setup_true_lang-CycrzAMT.js} +33 -10
- package/dist/{DialogTrigger-BQbSAHMb.js → DialogTrigger-Cb3rLcid.js} +5 -35
- package/dist/EmptyStateCard.vue_vue_type_script_setup_true_lang-BYKX6WRQ.js +59 -0
- package/dist/EnglishFlag-BrpG8XMW.js +18 -0
- package/dist/{FocusScope-DYbCtSNc.js → FocusScope-mzbqk6Y_.js} +8 -14
- package/dist/FrenchFlag-CUdQacS3.js +35 -0
- package/dist/GermanFlag-Bc1CeEHw.js +35 -0
- package/dist/HugeiconsIcon.vue-By2RXWWz.js +111 -0
- package/dist/{Input.vue_vue_type_script_setup_true_lang-6SfPeT8d.js → Input.vue_vue_type_script_setup_true_lang-BdjbS5s7.js} +1 -1
- package/dist/ItalianFlag-BAdg13z7.js +34 -0
- package/dist/JapaneseFlag-Dnd2ITzZ.js +27 -0
- package/dist/{Label.vue_vue_type_script_setup_true_lang-pMIzCHzV.js → Label.vue_vue_type_script_setup_true_lang-CdLIMAdF.js} +2 -2
- package/dist/LandingContent.vue_vue_type_script_setup_true_lang-Wgtl_yeD.js +21 -0
- package/dist/LandingFooter.vue_vue_type_script_setup_true_lang-CDy30mYg.js +159 -0
- package/dist/LandingNavbar.vue_vue_type_script_setup_true_lang-0jX2tmdb.js +59 -0
- package/dist/LandingShell.vue_vue_type_script_setup_true_lang-BXwdQR24.js +49 -0
- package/dist/LoadMoreButton.vue_vue_type_script_setup_true_lang-CGhFcsF-.js +61 -0
- package/dist/LoadingStateCard.vue_vue_type_script_setup_true_lang-DwyQjtZ3.js +53 -0
- package/dist/{MessageToast-C1L25W2l.js → MessageToast-uKrMyOZf.js} +15 -12
- package/dist/{NativeSelectOption.vue_vue_type_script_setup_true_lang-COnFRt8g.js → NativeSelectOption.vue_vue_type_script_setup_true_lang-CNcUI9Yh.js} +4 -3
- package/dist/{PopoverTrigger.vue_vue_type_script_setup_true_lang-DFZJvU_P.js → PopoverTrigger.vue_vue_type_script_setup_true_lang-Cf33q_yT.js} +11 -8
- package/dist/{PopperContent-h-thLTz8.js → PopperContent-DUJ8a4i0.js} +4 -4
- package/dist/Presence-CTmUEdMR.js +168 -0
- package/dist/Progress.vue_vue_type_script_setup_true_lang-BDJfyW-d.js +188 -0
- package/dist/RussianFlag-Cnc4PHmq.js +29 -0
- package/dist/{Separator.vue_vue_type_script_setup_true_lang-CMRkdntA.js → Separator.vue_vue_type_script_setup_true_lang-D9BozdWD.js} +1 -1
- package/dist/{SheetTitle.vue_vue_type_script_setup_true_lang-BQbpsE2c.js → SheetTitle.vue_vue_type_script_setup_true_lang-Ja7-gmXd.js} +4 -4
- package/dist/{Slider.vue_vue_type_script_setup_true_lang-C_CsSGAt.js → Slider.vue_vue_type_script_setup_true_lang-CSOSwGGr.js} +10 -9
- package/dist/SpanishFlag-Dy-C9kGk.js +28 -0
- package/dist/{Switch.vue_vue_type_script_setup_true_lang-BG6nkPSO.js → Switch.vue_vue_type_script_setup_true_lang-C8mqOepU.js} +7 -6
- package/dist/{Teleport-CV0tKbq5.js → Teleport-DTOwRCqx.js} +7 -185
- package/dist/TimePicker.vue_vue_type_script_setup_true_lang-tbOoMfZu.js +51 -0
- package/dist/{TooltipTrigger.vue_vue_type_script_setup_true_lang-DEPKysA_.js → TooltipTrigger.vue_vue_type_script_setup_true_lang-BMdZRPa3.js} +9 -6
- package/dist/{VisuallyHiddenInput-1G1IEkBL.js → VisuallyHiddenInput-D5eipDQU.js} +1 -1
- package/dist/alert-dialog.js +7 -6
- package/dist/alert.js +8 -18
- package/dist/badge.js +9 -36
- package/dist/breadcrumb.js +159 -0
- package/dist/busy-indicator.js +1 -1
- package/dist/busy.js +1 -1
- package/dist/button.js +11 -7
- package/dist/calendar.js +1 -1
- package/dist/card-grid.js +58 -0
- package/dist/card.js +9 -6
- package/dist/chip.js +47 -0
- package/dist/color-tokens-D9BviGPK.js +40 -0
- package/dist/command.js +17 -33
- package/dist/components/card-grid/CardGrid.vue.d.ts +88 -0
- package/dist/components/card-grid/index.d.ts +2 -0
- package/dist/components/chip/Chip.vue.d.ts +17 -0
- package/dist/components/chip/index.d.ts +2 -0
- package/dist/components/confirm-dialog/confirm-dialog-state.d.ts +11 -8
- package/dist/components/dashboard-shell/DashboardShell.vue.d.ts +12 -2
- package/dist/components/data-list/DataList.vue.d.ts +21 -0
- package/dist/components/data-list/DataListItem.vue.d.ts +21 -0
- package/dist/components/data-list/DataListLabel.vue.d.ts +21 -0
- package/dist/components/data-list/DataListText.vue.d.ts +21 -0
- package/dist/components/data-list/DataListValue.vue.d.ts +21 -0
- package/dist/components/data-list/index.d.ts +5 -0
- package/dist/components/empty-state-card/EmptyStateCard.vue.d.ts +73 -0
- package/dist/components/empty-state-card/index.d.ts +2 -0
- package/dist/components/info-card/InfoCard.vue.d.ts +46 -0
- package/dist/components/info-card/index.d.ts +2 -0
- package/dist/components/landing/landing-content/LandingContent.vue.d.ts +2 -3
- package/dist/components/landing/landing-footer/LandingFooter.vue.d.ts +5 -10
- package/dist/components/landing/landing-navbar/LandingNavbar.vue.d.ts +8 -1
- package/dist/components/landing/landing-shell/LandingShell.vue.d.ts +0 -1
- package/dist/components/language-flag/LanguageFlag.vue.d.ts +14 -0
- package/dist/components/language-flag/flags/ChineseFlag.vue.d.ts +2 -0
- package/dist/components/language-flag/flags/EnglishFlag.vue.d.ts +2 -0
- package/dist/components/language-flag/flags/FrenchFlag.vue.d.ts +2 -0
- package/dist/components/language-flag/flags/GermanFlag.vue.d.ts +2 -0
- package/dist/components/language-flag/flags/ItalianFlag.vue.d.ts +2 -0
- package/dist/components/language-flag/flags/JapaneseFlag.vue.d.ts +2 -0
- package/dist/components/language-flag/flags/RussianFlag.vue.d.ts +2 -0
- package/dist/components/language-flag/flags/SpanishFlag.vue.d.ts +2 -0
- package/dist/components/language-flag/index.d.ts +10 -0
- package/dist/components/language-selector/LanguageSelector.vue.d.ts +31 -0
- package/dist/components/language-selector/index.d.ts +3 -0
- package/dist/components/load-more-button/LoadMoreButton.vue.d.ts +36 -0
- package/dist/components/load-more-button/index.d.ts +2 -0
- package/dist/components/loading-state-card/LoadingStateCard.vue.d.ts +55 -0
- package/dist/components/loading-state-card/index.d.ts +2 -0
- package/dist/components/message-dialog/message-dialog-state.d.ts +9 -7
- package/dist/components/message-toast/index.d.ts +1 -1
- package/dist/components/message-toast/message-toast-state.d.ts +3 -3
- package/dist/components/page-header/PageHeader.vue.d.ts +48 -0
- package/dist/components/page-header/index.d.ts +2 -0
- package/dist/components/progress-component/ProgressComponent.vue.d.ts +47 -0
- package/dist/components/progress-component/index.d.ts +2 -0
- package/dist/components/single-value-card/SingleValueCard.vue.d.ts +40 -0
- package/dist/components/single-value-card/index.d.ts +2 -0
- package/dist/components/slider-form-component/SliderFormComponent.vue.d.ts +2 -2
- package/dist/components/text-link/TextLink.vue.d.ts +35 -0
- package/dist/components/text-link/index.d.ts +2 -0
- package/dist/components/theme-selector/ThemeSelector.vue.d.ts +2 -0
- package/dist/components/theme-selector/index.d.ts +2 -0
- package/dist/components/ui/alert/Alert.vue.d.ts +2 -2
- package/dist/components/ui/alert/index.d.ts +6 -5
- package/dist/components/ui/badge/Badge.vue.d.ts +7 -20
- package/dist/components/ui/badge/index.d.ts +0 -5
- package/dist/components/ui/breadcrumb/Breadcrumb.vue.d.ts +21 -0
- package/dist/components/ui/breadcrumb/BreadcrumbEllipsis.vue.d.ts +21 -0
- package/dist/components/ui/breadcrumb/BreadcrumbItem.vue.d.ts +21 -0
- package/dist/components/ui/breadcrumb/BreadcrumbLink.vue.d.ts +24 -0
- package/dist/components/ui/breadcrumb/BreadcrumbList.vue.d.ts +21 -0
- package/dist/components/ui/breadcrumb/BreadcrumbPage.vue.d.ts +21 -0
- package/dist/components/ui/breadcrumb/BreadcrumbSeparator.vue.d.ts +21 -0
- package/dist/components/ui/breadcrumb/index.d.ts +7 -0
- package/dist/components/ui/button/index.d.ts +6 -6
- package/dist/components/ui/card/Card.vue.d.ts +3 -0
- package/dist/components/ui/card/CardText.vue.d.ts +21 -0
- package/dist/components/ui/card/index.d.ts +1 -0
- package/dist/components/ui/date-picker/DatePicker.vue.d.ts +2 -0
- package/dist/components/ui/date-time-picker/DateTimePicker.vue.d.ts +27 -0
- package/dist/components/ui/date-time-picker/index.d.ts +2 -0
- package/dist/components/ui/dialog/DialogContent.vue.d.ts +4 -1
- package/dist/components/ui/dialog/DialogFooter.vue.d.ts +1 -4
- package/dist/components/ui/dialog/DialogScrollContent.vue.d.ts +4 -1
- package/dist/components/ui/field/index.d.ts +4 -4
- package/dist/components/ui/progress/Progress.vue.d.ts +9 -0
- package/dist/components/ui/progress/index.d.ts +1 -0
- package/dist/components/ui/scroll-area/ScrollArea.vue.d.ts +22 -0
- package/dist/components/ui/scroll-area/ScrollBar.vue.d.ts +9 -0
- package/dist/components/ui/scroll-area/index.d.ts +2 -0
- package/dist/components/ui/select/SelectItemContent.vue.d.ts +15 -0
- package/dist/components/ui/select/SelectValueContent.vue.d.ts +16 -0
- package/dist/components/ui/select/index.d.ts +2 -0
- package/dist/components/ui/sidebar/index.d.ts +4 -4
- package/dist/components/ui/table/Table.vue.d.ts +21 -0
- package/dist/components/ui/table/TableBody.vue.d.ts +21 -0
- package/dist/components/ui/table/TableCaption.vue.d.ts +21 -0
- package/dist/components/ui/table/TableCell.vue.d.ts +21 -0
- package/dist/components/ui/table/TableEmpty.vue.d.ts +24 -0
- package/dist/components/ui/table/TableFooter.vue.d.ts +21 -0
- package/dist/components/ui/table/TableHead.vue.d.ts +21 -0
- package/dist/components/ui/table/TableHeader.vue.d.ts +21 -0
- package/dist/components/ui/table/TableRow.vue.d.ts +21 -0
- package/dist/components/ui/table/index.d.ts +9 -0
- package/dist/components/ui/tabs/Tabs.vue.d.ts +28 -0
- package/dist/components/ui/tabs/TabsContent.vue.d.ts +22 -0
- package/dist/components/ui/tabs/TabsList.vue.d.ts +22 -0
- package/dist/components/ui/tabs/TabsTrigger.vue.d.ts +22 -0
- package/dist/components/ui/tabs/index.d.ts +4 -0
- package/dist/components/ui/textarea/Textarea.vue.d.ts +12 -0
- package/dist/components/ui/textarea/index.d.ts +1 -0
- package/dist/components/ui/time-picker/TimePicker.vue.d.ts +21 -0
- package/dist/components/ui/time-picker/index.d.ts +2 -0
- package/dist/confirm-dialog.js +15 -11
- package/dist/createContext-BabAT1K8.js +19 -0
- package/dist/dashboard-shell.js +88 -38
- package/dist/data-list.js +97 -0
- package/dist/date-picker.js +3 -82
- package/dist/date-time-picker.js +140 -0
- package/dist/dialog.js +36 -29
- package/dist/empty-state-card.js +5 -0
- package/dist/error-page.js +8 -6
- package/dist/field.js +2 -2
- package/dist/getActiveElement-Bmy6QsUb.js +9 -0
- package/dist/i18n/en.json.d.ts +57 -0
- package/dist/i18n/it.json.d.ts +57 -0
- package/dist/i18n.js +148 -0
- package/dist/{index-qGMU40e1.js → index-DDJjWaIl.js} +64 -0
- package/dist/{index-Cq9Ekgtb.js → index-Dw56kNV0.js} +10 -10
- package/dist/index.min-CZ9FIOXr.js +23 -0
- package/dist/info-card.js +65 -0
- package/dist/input.js +1 -1
- package/dist/label.js +1 -1
- package/dist/landing-content.js +5 -0
- package/dist/landing-footer.js +5 -0
- package/dist/landing-navbar.js +5 -0
- package/dist/landing-shell.js +5 -0
- package/dist/landing.js +9 -237
- package/dist/language-flag.js +60 -0
- package/dist/language-selector.js +168 -0
- package/dist/lib/color-tokens.d.ts +6 -0
- package/dist/lib/i18n.d.ts +222 -0
- package/dist/load-more-button.js +5 -0
- package/dist/loading-state-card.js +5 -0
- package/dist/message-dialog.js +34 -18
- package/dist/message-toast.js +2 -2
- package/dist/native-select.js +1 -1
- package/dist/nullish-D3tMkl6i.js +6 -0
- package/dist/page-header.js +57 -0
- package/dist/popover.js +4 -4
- package/dist/progress-component.js +51 -0
- package/dist/progress.js +4 -0
- package/dist/scroll-area.js +1080 -0
- package/dist/select.js +149 -53
- package/dist/separator.js +1 -1
- package/dist/sheet.js +3 -2
- package/dist/sidebar.js +10 -9
- package/dist/single-value-card.js +64 -0
- package/dist/slider-form-component.js +2 -2
- package/dist/slider.js +1 -1
- package/dist/style.css +822 -144
- package/dist/switch-form-component.js +2 -2
- package/dist/switch.js +1 -1
- package/dist/table.js +193 -0
- package/dist/tabs.js +658 -0
- package/dist/text-link.js +39 -0
- package/dist/textarea.js +37 -0
- package/dist/theme-selector.js +159 -0
- package/dist/time-picker.js +5 -0
- package/dist/tooltip.js +2 -2
- package/dist/{useDirection-SIyEYNxv.js → useDirection-B2bMgzzV.js} +1 -1
- package/dist/{useFocusGuards-WYWvpJy2.js → useFocusGuards-2C1jyYW5.js} +1 -1
- package/dist/{useFormControl-CyoJwp9r.js → useFormControl-DZ4LnB9F.js} +1 -1
- package/dist/{useForwardExpose-BiRQH8eO.js → useForwardExpose-BcX3VRdS.js} +1 -1
- package/dist/{useForwardPropsEmits-DmumnZO5.js → useForwardPropsEmits-GlUGKcIz.js} +1 -17
- package/dist/useId-CF6wz41D.js +16 -0
- package/dist/useNonce-CWj1JlPB.js +12 -0
- package/dist/{usePrimitiveElement-Bk3ZOslv.js → usePrimitiveElement-BCpwlakH.js} +1 -1
- package/dist/{useSize-BLYTFgnQ.js → useSize-DUgGY9t1.js} +1 -1
- package/dist/{useTypeahead-KTl4-oeq.js → useTypeahead-4RK0Emcv.js} +2 -2
- package/dist/{utils-BXBXPGDA.js → utils-DbR1EZn-.js} +1 -1
- package/dist/utils-hdwtyAF3.js +44 -0
- package/package.json +111 -2
- package/dist/HugeiconsIcon.vue-CurGbgrJ.js +0 -125
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { openBlock, createElementBlock, createElementVNode } from "vue";
|
|
2
|
+
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.js";
|
|
3
|
+
const _sfc_main = {};
|
|
4
|
+
const _hoisted_1 = {
|
|
5
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
6
|
+
viewBox: "0 0 3 2",
|
|
7
|
+
"aria-hidden": "true",
|
|
8
|
+
focusable: "false"
|
|
9
|
+
};
|
|
10
|
+
function _sfc_render(_ctx, _cache) {
|
|
11
|
+
return openBlock(), createElementBlock("svg", _hoisted_1, _cache[0] || (_cache[0] = [
|
|
12
|
+
createElementVNode("rect", {
|
|
13
|
+
width: "1",
|
|
14
|
+
height: "2",
|
|
15
|
+
x: "0",
|
|
16
|
+
fill: "#002654"
|
|
17
|
+
}, null, -1),
|
|
18
|
+
createElementVNode("rect", {
|
|
19
|
+
width: "1",
|
|
20
|
+
height: "2",
|
|
21
|
+
x: "1",
|
|
22
|
+
fill: "#ffffff"
|
|
23
|
+
}, null, -1),
|
|
24
|
+
createElementVNode("rect", {
|
|
25
|
+
width: "1",
|
|
26
|
+
height: "2",
|
|
27
|
+
x: "2",
|
|
28
|
+
fill: "#ce1126"
|
|
29
|
+
}, null, -1)
|
|
30
|
+
]));
|
|
31
|
+
}
|
|
32
|
+
const FrenchFlag = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
33
|
+
export {
|
|
34
|
+
FrenchFlag as default
|
|
35
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { openBlock, createElementBlock, createElementVNode } from "vue";
|
|
2
|
+
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.js";
|
|
3
|
+
const _sfc_main = {};
|
|
4
|
+
const _hoisted_1 = {
|
|
5
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
6
|
+
viewBox: "0 0 5 3",
|
|
7
|
+
"aria-hidden": "true",
|
|
8
|
+
focusable: "false"
|
|
9
|
+
};
|
|
10
|
+
function _sfc_render(_ctx, _cache) {
|
|
11
|
+
return openBlock(), createElementBlock("svg", _hoisted_1, _cache[0] || (_cache[0] = [
|
|
12
|
+
createElementVNode("rect", {
|
|
13
|
+
width: "5",
|
|
14
|
+
height: "1",
|
|
15
|
+
y: "0",
|
|
16
|
+
fill: "#000000"
|
|
17
|
+
}, null, -1),
|
|
18
|
+
createElementVNode("rect", {
|
|
19
|
+
width: "5",
|
|
20
|
+
height: "1",
|
|
21
|
+
y: "1",
|
|
22
|
+
fill: "#dd0000"
|
|
23
|
+
}, null, -1),
|
|
24
|
+
createElementVNode("rect", {
|
|
25
|
+
width: "5",
|
|
26
|
+
height: "1",
|
|
27
|
+
y: "2",
|
|
28
|
+
fill: "#ffce00"
|
|
29
|
+
}, null, -1)
|
|
30
|
+
]));
|
|
31
|
+
}
|
|
32
|
+
const GermanFlag = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
33
|
+
export {
|
|
34
|
+
GermanFlag as default
|
|
35
|
+
};
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { defineComponent, computed, openBlock, createElementBlock, mergeProps, Fragment, renderList, createBlock, resolveDynamicComponent } from "vue";
|
|
2
|
+
var _sfc_main = defineComponent({
|
|
3
|
+
name: "HugeiconsIcon",
|
|
4
|
+
inheritAttrs: false,
|
|
5
|
+
props: {
|
|
6
|
+
icon: {
|
|
7
|
+
type: Array,
|
|
8
|
+
required: true
|
|
9
|
+
},
|
|
10
|
+
size: {
|
|
11
|
+
type: [Number, String],
|
|
12
|
+
default: 24,
|
|
13
|
+
validator(value) {
|
|
14
|
+
const size = typeof value === "string" ? parseInt(value, 10) : value;
|
|
15
|
+
return !isNaN(size) && size > 0;
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
strokeWidth: {
|
|
19
|
+
type: Number,
|
|
20
|
+
default: void 0
|
|
21
|
+
},
|
|
22
|
+
absoluteStrokeWidth: {
|
|
23
|
+
type: Boolean,
|
|
24
|
+
default: false
|
|
25
|
+
},
|
|
26
|
+
altIcon: {
|
|
27
|
+
type: Array,
|
|
28
|
+
default: void 0
|
|
29
|
+
},
|
|
30
|
+
showAlt: {
|
|
31
|
+
type: Boolean,
|
|
32
|
+
default: false
|
|
33
|
+
},
|
|
34
|
+
color: {
|
|
35
|
+
type: String,
|
|
36
|
+
default: "currentColor"
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
setup(props) {
|
|
40
|
+
const computedSize = computed(() => {
|
|
41
|
+
const size = typeof props.size === "string" ? parseInt(props.size, 10) : props.size;
|
|
42
|
+
return !isNaN(size) && size > 0 ? size : 24;
|
|
43
|
+
});
|
|
44
|
+
const calculatedStrokeWidth = computed(() => {
|
|
45
|
+
if (props.strokeWidth === void 0) return void 0;
|
|
46
|
+
return props.absoluteStrokeWidth ? props.strokeWidth * 24 / computedSize.value : props.strokeWidth;
|
|
47
|
+
});
|
|
48
|
+
const currentIcon = computed(() => {
|
|
49
|
+
return props.altIcon && props.showAlt ? props.altIcon : props.icon;
|
|
50
|
+
});
|
|
51
|
+
const transformAttrs = (attrs, strokeWidth) => {
|
|
52
|
+
const result = {};
|
|
53
|
+
for (const [key, value] of Object.entries(attrs)) {
|
|
54
|
+
const kebabKey = key.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
|
|
55
|
+
result[kebabKey] = value;
|
|
56
|
+
}
|
|
57
|
+
if (strokeWidth !== void 0) {
|
|
58
|
+
result["stroke-width"] = strokeWidth;
|
|
59
|
+
result["stroke"] = "currentColor";
|
|
60
|
+
}
|
|
61
|
+
return result;
|
|
62
|
+
};
|
|
63
|
+
return {
|
|
64
|
+
computedSize,
|
|
65
|
+
calculatedStrokeWidth,
|
|
66
|
+
transformAttrs,
|
|
67
|
+
currentIcon
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
var _export_sfc = (sfc, props) => {
|
|
72
|
+
const target = sfc.__vccOpts || sfc;
|
|
73
|
+
for (const [key, val] of props) {
|
|
74
|
+
target[key] = val;
|
|
75
|
+
}
|
|
76
|
+
return target;
|
|
77
|
+
};
|
|
78
|
+
const _hoisted_1 = ["width", "height", "color"];
|
|
79
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
80
|
+
return openBlock(), createElementBlock("svg", mergeProps({
|
|
81
|
+
width: _ctx.computedSize,
|
|
82
|
+
height: _ctx.computedSize,
|
|
83
|
+
viewBox: `0 0 24 24`,
|
|
84
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
85
|
+
fill: "none",
|
|
86
|
+
color: _ctx.color
|
|
87
|
+
}, _ctx.$attrs), [
|
|
88
|
+
(openBlock(true), createElementBlock(
|
|
89
|
+
Fragment,
|
|
90
|
+
null,
|
|
91
|
+
renderList(_ctx.currentIcon, (element, index) => {
|
|
92
|
+
return openBlock(), createBlock(
|
|
93
|
+
resolveDynamicComponent(element[0]),
|
|
94
|
+
mergeProps({
|
|
95
|
+
key: index,
|
|
96
|
+
ref_for: true
|
|
97
|
+
}, _ctx.transformAttrs(element[1], _ctx.calculatedStrokeWidth)),
|
|
98
|
+
null,
|
|
99
|
+
16
|
|
100
|
+
/* FULL_PROPS */
|
|
101
|
+
);
|
|
102
|
+
}),
|
|
103
|
+
128
|
|
104
|
+
/* KEYED_FRAGMENT */
|
|
105
|
+
))
|
|
106
|
+
], 16, _hoisted_1);
|
|
107
|
+
}
|
|
108
|
+
var HugeiconsIcon = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/mahmudulhasan/Desktop/Projects/Hugeicons/packages/vue/src/components/HugeiconsIcon.vue"]]);
|
|
109
|
+
export {
|
|
110
|
+
HugeiconsIcon as H
|
|
111
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, withDirectives, openBlock, createElementBlock, normalizeClass, unref, isRef, vModelText } from "vue";
|
|
2
|
-
import {
|
|
2
|
+
import { a as useVModel } from "./index-Dw56kNV0.js";
|
|
3
3
|
import { c as cn } from "./utils-Bz4m9VPB.js";
|
|
4
4
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
5
5
|
__name: "Input",
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { openBlock, createElementBlock, createElementVNode } from "vue";
|
|
2
|
+
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.js";
|
|
3
|
+
const _sfc_main = {};
|
|
4
|
+
const _hoisted_1 = {
|
|
5
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
6
|
+
viewBox: "0 0 640 480",
|
|
7
|
+
"aria-hidden": "true",
|
|
8
|
+
focusable: "false"
|
|
9
|
+
};
|
|
10
|
+
function _sfc_render(_ctx, _cache) {
|
|
11
|
+
return openBlock(), createElementBlock("svg", _hoisted_1, _cache[0] || (_cache[0] = [
|
|
12
|
+
createElementVNode("g", {
|
|
13
|
+
"fill-rule": "evenodd",
|
|
14
|
+
"stroke-width": "1pt"
|
|
15
|
+
}, [
|
|
16
|
+
createElementVNode("path", {
|
|
17
|
+
fill: "#fff",
|
|
18
|
+
d: "M0 0h640v480H0z"
|
|
19
|
+
}),
|
|
20
|
+
createElementVNode("path", {
|
|
21
|
+
fill: "#009246",
|
|
22
|
+
d: "M0 0h213.3v480H0z"
|
|
23
|
+
}),
|
|
24
|
+
createElementVNode("path", {
|
|
25
|
+
fill: "#ce2b37",
|
|
26
|
+
d: "M426.7 0H640v480H426.7z"
|
|
27
|
+
})
|
|
28
|
+
], -1)
|
|
29
|
+
]));
|
|
30
|
+
}
|
|
31
|
+
const ItalianFlag = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
32
|
+
export {
|
|
33
|
+
ItalianFlag as default
|
|
34
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { openBlock, createElementBlock, createElementVNode } from "vue";
|
|
2
|
+
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.js";
|
|
3
|
+
const _sfc_main = {};
|
|
4
|
+
const _hoisted_1 = {
|
|
5
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
6
|
+
viewBox: "0 0 640 480",
|
|
7
|
+
"aria-hidden": "true",
|
|
8
|
+
focusable: "false"
|
|
9
|
+
};
|
|
10
|
+
function _sfc_render(_ctx, _cache) {
|
|
11
|
+
return openBlock(), createElementBlock("svg", _hoisted_1, _cache[0] || (_cache[0] = [
|
|
12
|
+
createElementVNode("path", {
|
|
13
|
+
fill: "#fff",
|
|
14
|
+
d: "M0 0h640v480H0z"
|
|
15
|
+
}, null, -1),
|
|
16
|
+
createElementVNode("circle", {
|
|
17
|
+
cx: "320",
|
|
18
|
+
cy: "240",
|
|
19
|
+
r: "112",
|
|
20
|
+
fill: "#bc002d"
|
|
21
|
+
}, null, -1)
|
|
22
|
+
]));
|
|
23
|
+
}
|
|
24
|
+
const JapaneseFlag = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
25
|
+
export {
|
|
26
|
+
JapaneseFlag as default
|
|
27
|
+
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { defineComponent, openBlock, createBlock, unref, mergeProps, withCtx, renderSlot } from "vue";
|
|
2
|
-
import { u as useForwardExpose } from "./useForwardExpose-
|
|
2
|
+
import { u as useForwardExpose } from "./useForwardExpose-BcX3VRdS.js";
|
|
3
3
|
import { P as Primitive } from "./Primitive-D3IcFg81.js";
|
|
4
4
|
import { c as cn } from "./utils-Bz4m9VPB.js";
|
|
5
|
-
import { r as reactiveOmit } from "./index-
|
|
5
|
+
import { r as reactiveOmit } from "./index-DDJjWaIl.js";
|
|
6
6
|
var Label_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
|
|
7
7
|
__name: "Label",
|
|
8
8
|
props: {
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { defineComponent, openBlock, createElementBlock, normalizeClass, unref, renderSlot } from "vue";
|
|
2
|
+
import { c as cn } from "./utils-Bz4m9VPB.js";
|
|
3
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
4
|
+
__name: "LandingContent",
|
|
5
|
+
props: {
|
|
6
|
+
class: {}
|
|
7
|
+
},
|
|
8
|
+
setup(__props) {
|
|
9
|
+
const props = __props;
|
|
10
|
+
return (_ctx, _cache) => {
|
|
11
|
+
return openBlock(), createElementBlock("div", {
|
|
12
|
+
class: normalizeClass(unref(cn)("mx-auto w-full max-w-6xl px-3 py-6 sm:px-6 lg:px-8 lg:py-14", props.class))
|
|
13
|
+
}, [
|
|
14
|
+
renderSlot(_ctx.$slots, "default")
|
|
15
|
+
], 2);
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
export {
|
|
20
|
+
_sfc_main as _
|
|
21
|
+
};
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, createCommentVNode, toDisplayString, Fragment, renderList, createBlock, resolveDynamicComponent, mergeProps, withCtx, createTextVNode, createVNode } from "vue";
|
|
2
|
+
import { D as DB } from "./index.min-CZ9FIOXr.js";
|
|
3
|
+
import { H as HugeiconsIcon } from "./HugeiconsIcon.vue-By2RXWWz.js";
|
|
4
|
+
import { useI18n } from "vue-i18n";
|
|
5
|
+
import { c as cn } from "./utils-Bz4m9VPB.js";
|
|
6
|
+
const _hoisted_1 = { class: "mb-4 inline-flex items-center gap-2 text-lg font-semibold tracking-tight text-foreground" };
|
|
7
|
+
const _hoisted_2 = ["src", "alt"];
|
|
8
|
+
const _hoisted_3 = {
|
|
9
|
+
key: 0,
|
|
10
|
+
class: "max-w-sm text-xs md:text-sm leading-relaxed text-muted-foreground"
|
|
11
|
+
};
|
|
12
|
+
const _hoisted_4 = { class: "md:text-right" };
|
|
13
|
+
const _hoisted_5 = { class: "mb-4 font-semibold text-foreground" };
|
|
14
|
+
const _hoisted_6 = { class: "space-y-3 text-xs sm:text-sm" };
|
|
15
|
+
const _hoisted_7 = {
|
|
16
|
+
key: 1,
|
|
17
|
+
class: "flex flex-col gap-8 md:max-w-[60%] md:flex-row md:flex-wrap md:justify-end md:gap-16"
|
|
18
|
+
};
|
|
19
|
+
const _hoisted_8 = { class: "mb-4 font-semibold text-foreground" };
|
|
20
|
+
const _hoisted_9 = { class: "space-y-3 text-xs sm:text-sm" };
|
|
21
|
+
const _hoisted_10 = {
|
|
22
|
+
key: 0,
|
|
23
|
+
class: "flex flex-wrap items-center justify-center gap-1.5 md:justify-end"
|
|
24
|
+
};
|
|
25
|
+
const _hoisted_11 = ["href"];
|
|
26
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
27
|
+
__name: "LandingFooter",
|
|
28
|
+
props: {
|
|
29
|
+
appName: {},
|
|
30
|
+
appLogo: {},
|
|
31
|
+
appDescription: { default: "" },
|
|
32
|
+
sections: { default: () => [] },
|
|
33
|
+
linkComponent: { default: "a" },
|
|
34
|
+
authorName: { default: "" },
|
|
35
|
+
authorLink: { default: "" },
|
|
36
|
+
year: { default: () => (/* @__PURE__ */ new Date()).getFullYear() },
|
|
37
|
+
showBottomBar: { type: Boolean, default: true },
|
|
38
|
+
class: {},
|
|
39
|
+
containerClass: {},
|
|
40
|
+
brandClass: {},
|
|
41
|
+
sectionsClass: {},
|
|
42
|
+
bottomBarClass: {}
|
|
43
|
+
},
|
|
44
|
+
setup(__props) {
|
|
45
|
+
const props = __props;
|
|
46
|
+
const { t } = useI18n();
|
|
47
|
+
const hasSingleSection = computed(() => props.sections.length === 1);
|
|
48
|
+
const getLinkProps = (link) => {
|
|
49
|
+
const sharedProps = link.newTab ? { target: "_blank", rel: "noopener noreferrer" } : {};
|
|
50
|
+
if (props.linkComponent === "a") {
|
|
51
|
+
return {
|
|
52
|
+
href: link.href ?? "#",
|
|
53
|
+
...sharedProps
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
to: link.to ?? link.href ?? "/",
|
|
58
|
+
...sharedProps
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
return (_ctx, _cache) => {
|
|
62
|
+
var _a, _b;
|
|
63
|
+
return openBlock(), createElementBlock("footer", {
|
|
64
|
+
class: normalizeClass(unref(cn)("relative z-10 border-t border-border bg-card", props.class))
|
|
65
|
+
}, [
|
|
66
|
+
createElementVNode("div", {
|
|
67
|
+
class: normalizeClass(unref(cn)("mx-auto max-w-7xl px-4 py-12 sm:px-6 lg:px-8", props.containerClass))
|
|
68
|
+
}, [
|
|
69
|
+
createElementVNode("div", {
|
|
70
|
+
class: normalizeClass(unref(cn)("flex flex-col gap-8", !hasSingleSection.value && "md:flex-row md:items-start md:justify-between"))
|
|
71
|
+
}, [
|
|
72
|
+
createElementVNode("div", {
|
|
73
|
+
class: normalizeClass(unref(cn)("max-w-md flex-1", props.brandClass))
|
|
74
|
+
}, [
|
|
75
|
+
createElementVNode("div", _hoisted_1, [
|
|
76
|
+
props.appLogo ? (openBlock(), createElementBlock("img", {
|
|
77
|
+
key: 0,
|
|
78
|
+
src: props.appLogo,
|
|
79
|
+
alt: `${props.appName} logo`,
|
|
80
|
+
class: "size-8 shrink-0 object-contain"
|
|
81
|
+
}, null, 8, _hoisted_2)) : createCommentVNode("", true),
|
|
82
|
+
createElementVNode("span", null, toDisplayString(props.appName), 1)
|
|
83
|
+
]),
|
|
84
|
+
props.appDescription ? (openBlock(), createElementBlock("p", _hoisted_3, toDisplayString(props.appDescription), 1)) : createCommentVNode("", true)
|
|
85
|
+
], 2),
|
|
86
|
+
hasSingleSection.value ? (openBlock(), createElementBlock("div", {
|
|
87
|
+
key: 0,
|
|
88
|
+
class: normalizeClass(unref(cn)("min-w-0 md:flex md:justify-end", props.sectionsClass))
|
|
89
|
+
}, [
|
|
90
|
+
createElementVNode("div", _hoisted_4, [
|
|
91
|
+
createElementVNode("h3", _hoisted_5, toDisplayString((_a = props.sections[0]) == null ? void 0 : _a.title), 1),
|
|
92
|
+
createElementVNode("ul", _hoisted_6, [
|
|
93
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList((_b = props.sections[0]) == null ? void 0 : _b.links, (link) => {
|
|
94
|
+
return openBlock(), createElementBlock("li", {
|
|
95
|
+
key: link.id
|
|
96
|
+
}, [
|
|
97
|
+
(openBlock(), createBlock(resolveDynamicComponent(props.linkComponent), mergeProps({ ref_for: true }, getLinkProps(link), { class: "text-muted-foreground transition-colors duration-200 hover:text-foreground" }), {
|
|
98
|
+
default: withCtx(() => [
|
|
99
|
+
createTextVNode(toDisplayString(link.label), 1)
|
|
100
|
+
]),
|
|
101
|
+
_: 2
|
|
102
|
+
}, 1040))
|
|
103
|
+
]);
|
|
104
|
+
}), 128))
|
|
105
|
+
])
|
|
106
|
+
])
|
|
107
|
+
], 2)) : (openBlock(), createElementBlock("div", _hoisted_7, [
|
|
108
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(props.sections, (section) => {
|
|
109
|
+
return openBlock(), createElementBlock("div", {
|
|
110
|
+
key: section.id,
|
|
111
|
+
class: normalizeClass(unref(cn)("min-w-28", props.sectionsClass))
|
|
112
|
+
}, [
|
|
113
|
+
createElementVNode("h3", _hoisted_8, toDisplayString(section.title), 1),
|
|
114
|
+
createElementVNode("ul", _hoisted_9, [
|
|
115
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(section.links, (link) => {
|
|
116
|
+
return openBlock(), createElementBlock("li", {
|
|
117
|
+
key: link.id
|
|
118
|
+
}, [
|
|
119
|
+
(openBlock(), createBlock(resolveDynamicComponent(props.linkComponent), mergeProps({ ref_for: true }, getLinkProps(link), { class: "text-muted-foreground transition-colors duration-200 hover:text-foreground" }), {
|
|
120
|
+
default: withCtx(() => [
|
|
121
|
+
createTextVNode(toDisplayString(link.label), 1)
|
|
122
|
+
]),
|
|
123
|
+
_: 2
|
|
124
|
+
}, 1040))
|
|
125
|
+
]);
|
|
126
|
+
}), 128))
|
|
127
|
+
])
|
|
128
|
+
], 2);
|
|
129
|
+
}), 128))
|
|
130
|
+
]))
|
|
131
|
+
], 2),
|
|
132
|
+
props.showBottomBar ? (openBlock(), createElementBlock("div", {
|
|
133
|
+
key: 0,
|
|
134
|
+
class: normalizeClass(unref(cn)("mt-12 flex flex-col items-center justify-between gap-4 border-t border-border pt-8 text-xs md:text-sm text-muted-foreground md:flex-row", props.bottomBarClass))
|
|
135
|
+
}, [
|
|
136
|
+
createElementVNode("div", null, " © " + toDisplayString(props.year) + " " + toDisplayString(props.appName) + ". " + toDisplayString(unref(t)("ui.footer.allRightsReserved")), 1),
|
|
137
|
+
props.authorName && props.authorLink ? (openBlock(), createElementBlock("div", _hoisted_10, [
|
|
138
|
+
createElementVNode("span", null, toDisplayString(unref(t)("ui.footer.madeWith")), 1),
|
|
139
|
+
createVNode(unref(HugeiconsIcon), {
|
|
140
|
+
icon: unref(DB),
|
|
141
|
+
class: "size-4 shrink-0 text-red-700 dark:text-red-400"
|
|
142
|
+
}, null, 8, ["icon"]),
|
|
143
|
+
createElementVNode("span", null, toDisplayString(unref(t)("ui.footer.by")), 1),
|
|
144
|
+
createElementVNode("a", {
|
|
145
|
+
href: props.authorLink,
|
|
146
|
+
target: "_blank",
|
|
147
|
+
rel: "noopener noreferrer",
|
|
148
|
+
class: "font-medium text-foreground hover:underline"
|
|
149
|
+
}, toDisplayString(props.authorName), 9, _hoisted_11)
|
|
150
|
+
])) : createCommentVNode("", true)
|
|
151
|
+
], 2)) : createCommentVNode("", true)
|
|
152
|
+
], 2)
|
|
153
|
+
], 2);
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
});
|
|
157
|
+
export {
|
|
158
|
+
_sfc_main as _
|
|
159
|
+
};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { defineComponent, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, renderSlot, createCommentVNode, toDisplayString } from "vue";
|
|
2
|
+
import { c as cn } from "./utils-Bz4m9VPB.js";
|
|
3
|
+
const _hoisted_1 = ["href"];
|
|
4
|
+
const _hoisted_2 = ["src", "alt"];
|
|
5
|
+
const _hoisted_3 = {
|
|
6
|
+
key: 1,
|
|
7
|
+
class: "hidden sm:inline text-xl font-bold tracking-tight text-foreground"
|
|
8
|
+
};
|
|
9
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
10
|
+
__name: "LandingNavbar",
|
|
11
|
+
props: {
|
|
12
|
+
appName: { default: "" },
|
|
13
|
+
appLogo: { default: "" },
|
|
14
|
+
appLinkTo: { default: "/" },
|
|
15
|
+
class: {},
|
|
16
|
+
containerClass: {},
|
|
17
|
+
leftClass: {},
|
|
18
|
+
rightClass: {}
|
|
19
|
+
},
|
|
20
|
+
setup(__props) {
|
|
21
|
+
const props = __props;
|
|
22
|
+
return (_ctx, _cache) => {
|
|
23
|
+
return openBlock(), createElementBlock("header", {
|
|
24
|
+
class: normalizeClass(unref(cn)("z-30 flex h-20 w-full flex-wrap sm:flex-nowrap sm:justify-start", props.class))
|
|
25
|
+
}, [
|
|
26
|
+
createElementVNode("nav", {
|
|
27
|
+
class: normalizeClass(unref(cn)("mx-auto flex max-w-6xl basis-full items-center justify-between px-3 sm:px-6 lg:px-8", props.containerClass))
|
|
28
|
+
}, [
|
|
29
|
+
createElementVNode("div", {
|
|
30
|
+
class: normalizeClass(unref(cn)("flex items-center", props.leftClass))
|
|
31
|
+
}, [
|
|
32
|
+
renderSlot(_ctx.$slots, "left", {}, () => [
|
|
33
|
+
createElementVNode("a", {
|
|
34
|
+
href: props.appLinkTo,
|
|
35
|
+
class: "inline-flex items-center gap-2 transition-opacity hover:opacity-80"
|
|
36
|
+
}, [
|
|
37
|
+
props.appLogo ? (openBlock(), createElementBlock("img", {
|
|
38
|
+
key: 0,
|
|
39
|
+
src: props.appLogo,
|
|
40
|
+
alt: `${props.appName} logo`,
|
|
41
|
+
class: "size-11 sm:size-9 shrink-0 object-contain"
|
|
42
|
+
}, null, 8, _hoisted_2)) : createCommentVNode("", true),
|
|
43
|
+
props.appName ? (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(props.appName), 1)) : createCommentVNode("", true)
|
|
44
|
+
], 8, _hoisted_1)
|
|
45
|
+
])
|
|
46
|
+
], 2),
|
|
47
|
+
createElementVNode("div", {
|
|
48
|
+
class: normalizeClass(unref(cn)("flex items-center justify-end gap-2 sm:gap-3", props.rightClass))
|
|
49
|
+
}, [
|
|
50
|
+
renderSlot(_ctx.$slots, "right")
|
|
51
|
+
], 2)
|
|
52
|
+
], 2)
|
|
53
|
+
], 2);
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
export {
|
|
58
|
+
_sfc_main as _
|
|
59
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { defineComponent, useSlots, computed, openBlock, createElementBlock, normalizeClass, unref, createBlock, createCommentVNode, Fragment, createElementVNode, renderSlot } from "vue";
|
|
2
|
+
import { B as BackgroundGrid } from "./BackgroundGrid-BJDDcLzF.js";
|
|
3
|
+
import { c as cn } from "./utils-Bz4m9VPB.js";
|
|
4
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
5
|
+
__name: "LandingShell",
|
|
6
|
+
props: {
|
|
7
|
+
showBackground: { type: Boolean, default: true },
|
|
8
|
+
rootClass: {},
|
|
9
|
+
navbarClass: {},
|
|
10
|
+
mainClass: {},
|
|
11
|
+
footerClass: {}
|
|
12
|
+
},
|
|
13
|
+
setup(__props) {
|
|
14
|
+
const props = __props;
|
|
15
|
+
const slots = useSlots();
|
|
16
|
+
const hasStructuredSlots = computed(() => {
|
|
17
|
+
return Boolean(slots.navbar || slots.content || slots.footer);
|
|
18
|
+
});
|
|
19
|
+
return (_ctx, _cache) => {
|
|
20
|
+
return openBlock(), createElementBlock("div", {
|
|
21
|
+
class: normalizeClass(unref(cn)("relative flex min-h-screen flex-col bg-background text-foreground", props.rootClass))
|
|
22
|
+
}, [
|
|
23
|
+
props.showBackground ? (openBlock(), createBlock(BackgroundGrid, { key: 0 })) : createCommentVNode("", true),
|
|
24
|
+
hasStructuredSlots.value ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
25
|
+
createElementVNode("header", {
|
|
26
|
+
class: normalizeClass(unref(cn)("relative z-10", props.navbarClass))
|
|
27
|
+
}, [
|
|
28
|
+
renderSlot(_ctx.$slots, "navbar")
|
|
29
|
+
], 2),
|
|
30
|
+
createElementVNode("main", {
|
|
31
|
+
class: normalizeClass(unref(cn)("relative z-10", props.mainClass))
|
|
32
|
+
}, [
|
|
33
|
+
renderSlot(_ctx.$slots, "content", {}, () => [
|
|
34
|
+
renderSlot(_ctx.$slots, "default")
|
|
35
|
+
])
|
|
36
|
+
], 2),
|
|
37
|
+
createElementVNode("footer", {
|
|
38
|
+
class: normalizeClass(unref(cn)("relative z-10", props.footerClass))
|
|
39
|
+
}, [
|
|
40
|
+
renderSlot(_ctx.$slots, "footer")
|
|
41
|
+
], 2)
|
|
42
|
+
], 64)) : renderSlot(_ctx.$slots, "default", { key: 2 })
|
|
43
|
+
], 2);
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
export {
|
|
48
|
+
_sfc_main as _
|
|
49
|
+
};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { defineComponent, computed, openBlock, createElementBlock, createBlock, unref, withCtx, createVNode, createTextVNode, toDisplayString } from "vue";
|
|
2
|
+
import { useI18n } from "vue-i18n";
|
|
3
|
+
import { S as Ser, a as dn } from "./index.min-CZ9FIOXr.js";
|
|
4
|
+
import { H as HugeiconsIcon } from "./HugeiconsIcon.vue-By2RXWWz.js";
|
|
5
|
+
import { Button as _sfc_main$1 } from "./button.js";
|
|
6
|
+
const _hoisted_1 = { class: "flex justify-center" };
|
|
7
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
8
|
+
__name: "LoadMoreButton",
|
|
9
|
+
props: {
|
|
10
|
+
busy: { type: Boolean, default: false },
|
|
11
|
+
text: { type: String, default: "" },
|
|
12
|
+
loadingText: { type: String, default: "" }
|
|
13
|
+
},
|
|
14
|
+
emits: ["load-more"],
|
|
15
|
+
setup(__props, { emit: __emit }) {
|
|
16
|
+
const props = __props;
|
|
17
|
+
const emits = __emit;
|
|
18
|
+
const { t } = useI18n();
|
|
19
|
+
const resolvedText = computed(() => props.text || t("ui.buttons.loadMore") || "Load more");
|
|
20
|
+
const resolvedLoadingText = computed(() => props.loadingText || t("ui.buttons.loading") || "Loading");
|
|
21
|
+
const handleClick = () => {
|
|
22
|
+
emits("load-more");
|
|
23
|
+
};
|
|
24
|
+
return (_ctx, _cache) => {
|
|
25
|
+
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
26
|
+
props.busy ? (openBlock(), createBlock(unref(_sfc_main$1), {
|
|
27
|
+
key: 0,
|
|
28
|
+
variant: "secondary",
|
|
29
|
+
class: "w-full md:w-auto",
|
|
30
|
+
disabled: true
|
|
31
|
+
}, {
|
|
32
|
+
default: withCtx(() => [
|
|
33
|
+
createVNode(unref(HugeiconsIcon), {
|
|
34
|
+
icon: unref(Ser),
|
|
35
|
+
class: "size-4 animate-spin"
|
|
36
|
+
}, null, 8, ["icon"]),
|
|
37
|
+
createTextVNode(" " + toDisplayString(resolvedLoadingText.value), 1)
|
|
38
|
+
]),
|
|
39
|
+
_: 1
|
|
40
|
+
})) : (openBlock(), createBlock(unref(_sfc_main$1), {
|
|
41
|
+
key: 1,
|
|
42
|
+
variant: "secondary",
|
|
43
|
+
class: "w-full md:w-auto",
|
|
44
|
+
onClick: handleClick
|
|
45
|
+
}, {
|
|
46
|
+
default: withCtx(() => [
|
|
47
|
+
createVNode(unref(HugeiconsIcon), {
|
|
48
|
+
icon: unref(dn),
|
|
49
|
+
class: "size-4"
|
|
50
|
+
}, null, 8, ["icon"]),
|
|
51
|
+
createTextVNode(" " + toDisplayString(resolvedText.value), 1)
|
|
52
|
+
]),
|
|
53
|
+
_: 1
|
|
54
|
+
}))
|
|
55
|
+
]);
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
export {
|
|
60
|
+
_sfc_main as _
|
|
61
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { defineComponent, computed, openBlock, createBlock, unref, withCtx, createVNode, createElementVNode, createElementBlock, toDisplayString, createCommentVNode, renderSlot } from "vue";
|
|
2
|
+
import { useI18n } from "vue-i18n";
|
|
3
|
+
import { b as SK } from "./index.min-CZ9FIOXr.js";
|
|
4
|
+
import { H as HugeiconsIcon } from "./HugeiconsIcon.vue-By2RXWWz.js";
|
|
5
|
+
import { _ as _sfc_main$1 } from "./Card.vue_vue_type_script_setup_true_lang-D0pFVflK.js";
|
|
6
|
+
import { _ as _sfc_main$2 } from "./CardContent.vue_vue_type_script_setup_true_lang-dBzO0q1t.js";
|
|
7
|
+
const _hoisted_1 = { class: "flex items-center justify-center text-4xl text-[var(--text-secondary-light)] opacity-60 dark:text-[var(--text-secondary-dark)]" };
|
|
8
|
+
const _hoisted_2 = {
|
|
9
|
+
key: 0,
|
|
10
|
+
class: "text-sm font-bold text-[var(--text-primary-light)] dark:text-[var(--text-primary-dark)] md:text-lg"
|
|
11
|
+
};
|
|
12
|
+
const _hoisted_3 = {
|
|
13
|
+
key: 1,
|
|
14
|
+
class: "max-w-md text-xs text-[var(--text-secondary-light)] dark:text-[var(--text-secondary-dark)] md:text-sm"
|
|
15
|
+
};
|
|
16
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
17
|
+
__name: "LoadingStateCard",
|
|
18
|
+
props: {
|
|
19
|
+
icon: { type: [Object, Array], default: () => SK },
|
|
20
|
+
title: { type: String, default: "" },
|
|
21
|
+
description: { type: String, default: "" }
|
|
22
|
+
},
|
|
23
|
+
setup(__props) {
|
|
24
|
+
const props = __props;
|
|
25
|
+
const { t } = useI18n();
|
|
26
|
+
const resolvedTitle = computed(() => props.title || t("ui.common.loading.title") || "Loading...");
|
|
27
|
+
const resolvedDescription = computed(() => props.description || t("ui.common.loading.description") || "Please wait a moment while we load the content.");
|
|
28
|
+
return (_ctx, _cache) => {
|
|
29
|
+
return openBlock(), createBlock(unref(_sfc_main$1), { class: "flex flex-col items-center justify-center px-4 py-8 text-center md:py-12" }, {
|
|
30
|
+
default: withCtx(() => [
|
|
31
|
+
createVNode(unref(_sfc_main$2), { class: "flex flex-col items-center justify-center !p-0 text-center" }, {
|
|
32
|
+
default: withCtx(() => [
|
|
33
|
+
createElementVNode("div", _hoisted_1, [
|
|
34
|
+
createVNode(unref(HugeiconsIcon), {
|
|
35
|
+
icon: props.icon,
|
|
36
|
+
class: "size-10 animate-spin"
|
|
37
|
+
}, null, 8, ["icon"])
|
|
38
|
+
]),
|
|
39
|
+
resolvedTitle.value ? (openBlock(), createElementBlock("h3", _hoisted_2, toDisplayString(resolvedTitle.value), 1)) : createCommentVNode("", true),
|
|
40
|
+
resolvedDescription.value ? (openBlock(), createElementBlock("p", _hoisted_3, toDisplayString(resolvedDescription.value), 1)) : createCommentVNode("", true),
|
|
41
|
+
renderSlot(_ctx.$slots, "default")
|
|
42
|
+
]),
|
|
43
|
+
_: 3
|
|
44
|
+
})
|
|
45
|
+
]),
|
|
46
|
+
_: 3
|
|
47
|
+
});
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
export {
|
|
52
|
+
_sfc_main as _
|
|
53
|
+
};
|