@j-solution/components 1.0.1 → 1.1.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/README.md +370 -81
- package/assets/jwms-portal-frontend-BqyV9oqF.css +1 -0
- package/assets/styles/j-components.css +1 -1
- package/components/atoms/JToast.vue.cjs +2 -0
- package/components/atoms/JToast.vue.cjs.map +1 -0
- package/components/atoms/JToast.vue.js +37 -0
- package/components/atoms/JToast.vue.js.map +1 -0
- package/components/atoms/JToast.vue2.cjs +2 -0
- package/components/atoms/JToast.vue2.cjs.map +1 -0
- package/components/atoms/JToast.vue2.js +5 -0
- package/components/atoms/JToast.vue2.js.map +1 -0
- package/components/molecules/JAlert.vue.cjs +1 -1
- package/components/molecules/JAlert.vue.cjs.map +1 -1
- package/components/molecules/JAlert.vue.js +6 -5
- package/components/molecules/JAlert.vue.js.map +1 -1
- package/components/molecules/JFormField.vue.cjs +1 -1
- package/components/molecules/JFormField.vue.cjs.map +1 -1
- package/components/molecules/JFormField.vue.js +3 -2
- package/components/molecules/JFormField.vue.js.map +1 -1
- package/components/molecules/JTitlebar.vue.cjs +1 -1
- package/components/molecules/JTitlebar.vue.cjs.map +1 -1
- package/components/molecules/JTitlebar.vue.js +10 -9
- package/components/molecules/JTitlebar.vue.js.map +1 -1
- package/components/organisms/JDynamicForm.vue2.cjs +1 -1
- package/components/organisms/JDynamicForm.vue2.cjs.map +1 -1
- package/components/organisms/JDynamicForm.vue2.js +3 -2
- package/components/organisms/JDynamicForm.vue2.js.map +1 -1
- package/components/organisms/JFormModal.vue.cjs +1 -1
- package/components/organisms/JFormModal.vue.cjs.map +1 -1
- package/components/organisms/JFormModal.vue.js +3 -2
- package/components/organisms/JFormModal.vue.js.map +1 -1
- package/components/organisms/JModal.vue.cjs +1 -1
- package/components/organisms/JModal.vue.cjs.map +1 -1
- package/components/organisms/JModal.vue.js +17 -16
- package/components/organisms/JModal.vue.js.map +1 -1
- package/components/organisms/JSearchPanel.vue2.cjs +1 -1
- package/components/organisms/JSearchPanel.vue2.cjs.map +1 -1
- package/components/organisms/JSearchPanel.vue2.js +17 -16
- package/components/organisms/JSearchPanel.vue2.js.map +1 -1
- package/components/shadcn/Toaster.vue.cjs +2 -0
- package/components/shadcn/Toaster.vue.cjs.map +1 -0
- package/components/shadcn/Toaster.vue.js +36 -0
- package/components/shadcn/Toaster.vue.js.map +1 -0
- package/components/shadcn/Toaster.vue2.cjs +2 -0
- package/components/shadcn/Toaster.vue2.cjs.map +1 -0
- package/components/shadcn/Toaster.vue2.js +5 -0
- package/components/shadcn/Toaster.vue2.js.map +1 -0
- package/components/shadcn/index.cjs +1 -1
- package/components/shadcn/index.cjs.map +1 -1
- package/components/shadcn/index.js +1 -0
- package/components/shadcn/index.js.map +1 -1
- package/index.cjs +1 -1
- package/index.js +89 -84
- package/package.json +2 -1
- package/types/index.d.ts +11 -0
- package/assets/jwms-portal-frontend-DjoLgoaO.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JSearchPanel.vue2.js","sources":["../../../../src/components/organisms/JSearchPanel.vue"],"sourcesContent":["<template>\n <Card class=\"w-full\">\n <!-- 헤더: 제목, Badge 목록, 초기화 버튼 -->\n <CardHeader class=\"pt-4 pb-3 px-6\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex items-center gap-3 flex-1\">\n <button\n v-if=\"collapsible\"\n type=\"button\"\n @click=\"isExpanded = !isExpanded\"\n class=\"flex items-center gap-2 font-semibold hover:text-primary transition-colors\"\n >\n <ChevronDown\n :class=\"['h-4 w-4 transition-transform', isExpanded ? 'rotate-0' : '-rotate-90']\"\n />\n {{ title }}\n </button>\n <CardTitle v-else class=\"mb-0\">{{ title }}</CardTitle>\n \n <!-- 조건 Badge 목록 -->\n <div v-if=\"conditionBadges.length > 0\" class=\"flex flex-wrap items-center gap-2 ml-2\">\n <JBadge\n v-for=\"badge in conditionBadges\"\n :key=\"badge.fieldName\"\n variant=\"secondary\"\n size=\"sm\"\n class=\"flex items-center gap-1.5 pr-1\"\n >\n <span>{{ badge.label }}: {{ badge.value }}</span>\n <button\n type=\"button\"\n @click.stop=\"handleFieldReset(badge.fieldName)\"\n class=\"h-4 w-4 rounded-full hover:bg-destructive/20 hover:text-destructive transition-colors flex items-center justify-center\"\n :aria-label=\"`${badge.label} 조건 제거`\"\n >\n <X class=\"h-3 w-3\" />\n </button>\n </JBadge>\n </div>\n </div>\n \n <JButton\n variant=\"outline\"\n size=\"sm\"\n @click.stop=\"handleReset\"\n >\n 초기화\n </JButton>\n </div>\n </CardHeader>\n \n <!-- 폼 내용 -->\n <CardContent v-show=\"isExpanded || !collapsible\" class=\"px-6 pb-6 pt-0\">\n <JDynamicForm\n ref=\"dynamicFormRef\"\n :schema=\"schema\"\n :model-value=\"localModelValue\"\n @update:model-value=\"handleFormValueUpdate\"\n @submit=\"handleSubmit\"\n />\n </CardContent>\n </Card>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref, reactive, watch } from 'vue'\nimport { ChevronDown, X } from 'lucide-vue-next'\nimport { Card, CardHeader, CardTitle, CardContent } from '@/components/shadcn'\nimport { JButton, JBadge } from '@/components/atoms'\nimport JDynamicForm from './JDynamicForm.vue'\nimport type { FormSchema, DynamicFormField } from '@/types/dynamic-form'\nimport type { ComponentPublicInstance } from 'vue'\n\ninterface ConditionBadge {\n fieldName: string\n label: string\n value: string\n}\n\nexport interface JSearchPanelProps {\n /** 패널 제목 */\n title?: string\n /** JDynamicForm에 전달할 FormSchema */\n schema: FormSchema\n /** JDynamicForm의 v-model 값 */\n modelValue?: Record<string, any>\n /** 기본 접힘 상태 */\n defaultCollapsed?: boolean\n /** 접기/펼치기 가능 여부 */\n collapsible?: boolean\n}\n\nconst props = withDefaults(defineProps<JSearchPanelProps>(), {\n title: '조회조건',\n defaultCollapsed: false,\n collapsible: true,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: Record<string, any>]\n 'submit': [values: Record<string, any>]\n 'reset': []\n}>()\n\nconst dynamicFormRef = ref<ComponentPublicInstance & { reset: () => void } | null>(null)\nconst isExpanded = ref(!props.defaultCollapsed)\n\n// 로컬 modelValue - reactive로 관리하여 양방향 바인딩\nconst localModelValue = reactive<Record<string, any>>(props.modelValue ? { ...props.modelValue } : {})\n\n// 내부 변경인지 외부 변경인지 구분하는 플래그\nlet isInternalUpdate = false\n\n// props.modelValue 변경 시 localModelValue 동기화 (외부 변경)\nwatch(\n () => props.modelValue,\n (newValue) => {\n if (newValue && !isInternalUpdate) {\n // 기존 키 중 새 값에 없는 것은 삭제\n Object.keys(localModelValue).forEach(key => {\n if (!(key in newValue)) {\n delete localModelValue[key]\n }\n })\n // 새 값으로 업데이트\n Object.assign(localModelValue, newValue)\n }\n isInternalUpdate = false\n },\n { deep: true, immediate: true }\n)\n\n// JDynamicForm에서 값이 변경되었을 때 처리\nfunction handleFormValueUpdate(value: Record<string, any>) {\n // JDynamicForm에서 emit된 값을 localModelValue에 반영\n isInternalUpdate = true\n Object.assign(localModelValue, value)\n // 상위로 emit\n emit('update:modelValue', { ...value })\n}\n\n// 모든 필드 가져오기\nconst allFields = computed((): DynamicFormField[] => {\n if (!props.schema) return []\n \n const fields: DynamicFormField[] = []\n if (props.schema.type === 'simple' && props.schema.fields) {\n fields.push(...props.schema.fields)\n } else if (props.schema.type === 'sectioned' && props.schema.sections) {\n props.schema.sections.forEach(section => {\n if (section.fields) fields.push(...section.fields)\n })\n } else if (props.schema.type === 'wizard' && props.schema.steps) {\n props.schema.steps.forEach(step => {\n if (step.fields) fields.push(...step.fields)\n })\n }\n return fields\n})\n\n// 조건 Badge 목록 생성\nconst conditionBadges = computed((): ConditionBadge[] => {\n if (!localModelValue || !props.schema) {\n return []\n }\n\n const badges: ConditionBadge[] = []\n const formState = localModelValue\n\n allFields.value.forEach((field) => {\n const value = formState[field.controlName]\n \n // 빈 값 체크 (빈 문자열, null, undefined, 'ALL', 'SELECT' 제외)\n if (\n value === undefined ||\n value === null ||\n value === '' ||\n value === 'ALL' ||\n value === 'SELECT' ||\n (field.type === 'checkbox' && value === 'N') ||\n (field.type === 'switch' && value === 'N')\n ) {\n return\n }\n\n // 필드 타입에 따라 값 표시\n let displayValue = String(value)\n\n // 콤보/검색콤보인 경우 옵션의 label 찾기\n if ((field.type === 'combo' || field.type === 'searchcombo') && field.options) {\n const option = field.options.find(opt => opt.value === value)\n if (option) {\n displayValue = option.label\n }\n }\n\n // 체크박스/스위치는 'Y'일 때만 표시\n if (field.type === 'checkbox' || field.type === 'switch') {\n if (value === 'Y') {\n badges.push({\n fieldName: field.controlName,\n label: field.label,\n value: field.inlineLabel || field.label\n })\n }\n } else {\n badges.push({\n fieldName: field.controlName,\n label: field.label,\n value: displayValue\n })\n }\n })\n\n return badges\n})\n\n// submit 핸들러\nfunction handleSubmit(values: Record<string, any>) {\n emit('submit', values)\n}\n\n// 전체 초기화 핸들러\nfunction handleReset() {\n if (dynamicFormRef.value) {\n dynamicFormRef.value.reset()\n emit('reset')\n }\n}\n\n// 필드별 초기화 핸들러\nfunction handleFieldReset(fieldName: string) {\n if (!localModelValue || !props.schema) return\n \n const field = allFields.value.find(f => f.controlName === fieldName)\n \n if (field) {\n // 필드 타입에 따라 초기값 설정 - reactive 객체 직접 수정\n if (field.type === 'checkbox' || field.type === 'switch') {\n localModelValue[fieldName] = 'N'\n } else {\n localModelValue[fieldName] = ''\n }\n \n // localModelValue 변경 후 상위로 emit하여 JDynamicForm에도 반영\n isInternalUpdate = true\n emit('update:modelValue', { ...localModelValue })\n }\n}\n</script>\n\n<style scoped>\n/* 필요시 스타일 추가 */\n</style>\n\n"],"names":["props","__props","emit","__emit","dynamicFormRef","ref","isExpanded","localModelValue","reactive","isInternalUpdate","watch","newValue","key","handleFormValueUpdate","value","allFields","computed","fields","section","step","conditionBadges","badges","formState","field","displayValue","option","opt","handleSubmit","values","handleReset","handleFieldReset","fieldName","f","_createBlock","_unref","Card","_createVNode","CardHeader","_createElementVNode","_hoisted_1","_hoisted_2","_createElementBlock","_cache","$event","ChevronDown","_createTextVNode","CardTitle","_openBlock","_hoisted_3","_Fragment","_renderList","badge","JBadge","_toDisplayString","_withModifiers","X","JButton","CardContent","JDynamicForm","_vShow"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"JSearchPanel.vue2.js","sources":["../../../../src/components/organisms/JSearchPanel.vue"],"sourcesContent":["<template>\n <Card class=\"w-full\">\n <!-- 헤더: 제목, Badge 목록, 초기화 버튼 -->\n <CardHeader class=\"pt-4 pb-3 px-6\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex items-center gap-3 flex-1\">\n <button\n v-if=\"collapsible\"\n type=\"button\"\n @click=\"isExpanded = !isExpanded\"\n class=\"flex items-center gap-2 font-semibold hover:text-primary transition-colors\"\n >\n <ChevronDown\n :class=\"['h-4 w-4 transition-transform', isExpanded ? 'rotate-0' : '-rotate-90']\"\n />\n {{ title }}\n </button>\n <CardTitle v-else class=\"mb-0\">{{ title }}</CardTitle>\n \n <!-- 조건 Badge 목록 -->\n <div v-if=\"conditionBadges.length > 0\" class=\"flex flex-wrap items-center gap-2 ml-2\">\n <JBadge\n v-for=\"badge in conditionBadges\"\n :key=\"badge.fieldName\"\n variant=\"secondary\"\n size=\"sm\"\n class=\"flex items-center gap-1.5 pr-1\"\n >\n <span>{{ badge.label }}: {{ badge.value }}</span>\n <button\n type=\"button\"\n @click.stop=\"handleFieldReset(badge.fieldName)\"\n class=\"h-4 w-4 rounded-full hover:bg-destructive/20 hover:text-destructive transition-colors flex items-center justify-center\"\n :aria-label=\"`${badge.label} 조건 제거`\"\n >\n <X class=\"h-3 w-3\" />\n </button>\n </JBadge>\n </div>\n </div>\n \n <JButton\n variant=\"outline\"\n size=\"sm\"\n @click.stop=\"handleReset\"\n >\n 초기화\n </JButton>\n </div>\n </CardHeader>\n \n <!-- 폼 내용 -->\n <CardContent v-show=\"isExpanded || !collapsible\" class=\"px-6 pb-6 pt-0\">\n <JDynamicForm\n ref=\"dynamicFormRef\"\n :schema=\"schema\"\n :model-value=\"localModelValue\"\n @update:model-value=\"handleFormValueUpdate\"\n @submit=\"handleSubmit\"\n />\n </CardContent>\n </Card>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref, reactive, watch } from 'vue'\nimport { ChevronDown, X } from 'lucide-vue-next'\nimport { Card, CardHeader, CardTitle, CardContent } from '@/components/shadcn'\nimport { JButton, JBadge } from '@/components/atoms'\nimport JDynamicForm from './JDynamicForm.vue'\nimport type { FormSchema, DynamicFormField } from '@/types/dynamic-form'\nimport type { ComponentPublicInstance } from 'vue'\n\ninterface ConditionBadge {\n fieldName: string\n label: string\n value: string\n}\n\nexport interface JSearchPanelProps {\n /** 패널 제목 */\n title?: string\n /** JDynamicForm에 전달할 FormSchema */\n schema: FormSchema\n /** JDynamicForm의 v-model 값 */\n modelValue?: Record<string, any>\n /** 기본 접힘 상태 */\n defaultCollapsed?: boolean\n /** 접기/펼치기 가능 여부 */\n collapsible?: boolean\n}\n\nconst props = withDefaults(defineProps<JSearchPanelProps>(), {\n title: '조회조건',\n defaultCollapsed: false,\n collapsible: true,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: Record<string, any>]\n 'submit': [values: Record<string, any>]\n 'reset': []\n}>()\n\nconst dynamicFormRef = ref<ComponentPublicInstance & { reset: () => void } | null>(null)\nconst isExpanded = ref(!props.defaultCollapsed)\n\n// 로컬 modelValue - reactive로 관리하여 양방향 바인딩\nconst localModelValue = reactive<Record<string, any>>(props.modelValue ? { ...props.modelValue } : {})\n\n// 내부 변경인지 외부 변경인지 구분하는 플래그\nlet isInternalUpdate = false\n\n// props.modelValue 변경 시 localModelValue 동기화 (외부 변경)\nwatch(\n () => props.modelValue,\n (newValue) => {\n if (newValue && !isInternalUpdate) {\n // 기존 키 중 새 값에 없는 것은 삭제\n Object.keys(localModelValue).forEach(key => {\n if (!(key in newValue)) {\n delete localModelValue[key]\n }\n })\n // 새 값으로 업데이트\n Object.assign(localModelValue, newValue)\n }\n isInternalUpdate = false\n },\n { deep: true, immediate: true }\n)\n\n// JDynamicForm에서 값이 변경되었을 때 처리\nfunction handleFormValueUpdate(value: Record<string, any>) {\n // JDynamicForm에서 emit된 값을 localModelValue에 반영\n isInternalUpdate = true\n Object.assign(localModelValue, value)\n // 상위로 emit\n emit('update:modelValue', { ...value })\n}\n\n// 모든 필드 가져오기\nconst allFields = computed((): DynamicFormField[] => {\n if (!props.schema) return []\n \n const fields: DynamicFormField[] = []\n if (props.schema.type === 'simple' && props.schema.fields) {\n fields.push(...props.schema.fields)\n } else if (props.schema.type === 'sectioned' && props.schema.sections) {\n props.schema.sections.forEach(section => {\n if (section.fields) fields.push(...section.fields)\n })\n } else if (props.schema.type === 'wizard' && props.schema.steps) {\n props.schema.steps.forEach(step => {\n if (step.fields) fields.push(...step.fields)\n })\n }\n return fields\n})\n\n// 조건 Badge 목록 생성\nconst conditionBadges = computed((): ConditionBadge[] => {\n if (!localModelValue || !props.schema) {\n return []\n }\n\n const badges: ConditionBadge[] = []\n const formState = localModelValue\n\n allFields.value.forEach((field) => {\n const value = formState[field.controlName]\n \n // 빈 값 체크 (빈 문자열, null, undefined, 'ALL', 'SELECT' 제외)\n if (\n value === undefined ||\n value === null ||\n value === '' ||\n value === 'ALL' ||\n value === 'SELECT' ||\n (field.type === 'checkbox' && value === 'N') ||\n (field.type === 'switch' && value === 'N')\n ) {\n return\n }\n\n // 필드 타입에 따라 값 표시\n let displayValue = String(value)\n\n // 콤보/검색콤보인 경우 옵션의 label 찾기\n if ((field.type === 'combo' || field.type === 'searchcombo') && field.options) {\n const option = field.options.find(opt => opt.value === value)\n if (option) {\n displayValue = option.label\n }\n }\n\n // 체크박스/스위치는 'Y'일 때만 표시\n if (field.type === 'checkbox' || field.type === 'switch') {\n if (value === 'Y') {\n badges.push({\n fieldName: field.controlName,\n label: field.label,\n value: field.inlineLabel || field.label\n })\n }\n } else {\n badges.push({\n fieldName: field.controlName,\n label: field.label,\n value: displayValue\n })\n }\n })\n\n return badges\n})\n\n// submit 핸들러\nfunction handleSubmit(values: Record<string, any>) {\n emit('submit', values)\n}\n\n// 전체 초기화 핸들러\nfunction handleReset() {\n if (dynamicFormRef.value) {\n dynamicFormRef.value.reset()\n emit('reset')\n }\n}\n\n// 필드별 초기화 핸들러\nfunction handleFieldReset(fieldName: string) {\n if (!localModelValue || !props.schema) return\n \n const field = allFields.value.find(f => f.controlName === fieldName)\n \n if (field) {\n // 필드 타입에 따라 초기값 설정 - reactive 객체 직접 수정\n if (field.type === 'checkbox' || field.type === 'switch') {\n localModelValue[fieldName] = 'N'\n } else {\n localModelValue[fieldName] = ''\n }\n \n // localModelValue 변경 후 상위로 emit하여 JDynamicForm에도 반영\n isInternalUpdate = true\n emit('update:modelValue', { ...localModelValue })\n }\n}\n</script>\n\n<style scoped>\n/* 필요시 스타일 추가 */\n</style>\n\n"],"names":["props","__props","emit","__emit","dynamicFormRef","ref","isExpanded","localModelValue","reactive","isInternalUpdate","watch","newValue","key","handleFormValueUpdate","value","allFields","computed","fields","section","step","conditionBadges","badges","formState","field","displayValue","option","opt","handleSubmit","values","handleReset","handleFieldReset","fieldName","f","_createBlock","_unref","Card","_createVNode","CardHeader","_createElementVNode","_hoisted_1","_hoisted_2","_createElementBlock","_cache","$event","ChevronDown","_createTextVNode","CardTitle","_openBlock","_hoisted_3","_Fragment","_renderList","badge","JBadge","_toDisplayString","_withModifiers","X","JButton","CardContent","JDynamicForm","_vShow"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),n=require("vue-sonner"),r=e.defineComponent({__name:"Toaster",props:{id:{},invert:{type:Boolean},theme:{},position:{default:"top-center"},closeButtonPosition:{},hotkey:{},richColors:{type:Boolean,default:!0},expand:{type:Boolean,default:!0},duration:{},gap:{},visibleToasts:{},closeButton:{type:Boolean,default:!1},toastOptions:{},class:{},style:{},offset:{},mobileOffset:{},dir:{},swipeDirections:{},icons:{},containerAriaLabel:{}},setup(t){const o=t;return(s,a)=>(e.openBlock(),e.createBlock(e.unref(n.Toaster),e.normalizeProps(e.guardReactiveProps(o)),null,16))}});exports.default=r;
|
|
2
|
+
//# sourceMappingURL=Toaster.vue.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toaster.vue.cjs","sources":["../../../../src/components/shadcn/Toaster.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { Toaster as Sonner } from 'vue-sonner'\r\nimport type { ToasterProps } from 'vue-sonner'\r\n\r\nconst props = withDefaults(\r\n defineProps<ToasterProps>(),\r\n {\r\n position: 'top-center',\r\n expand: true,\r\n richColors: true,\r\n closeButton: false,\r\n },\r\n)\r\n</script>\r\n\r\n<template>\r\n <Sonner v-bind=\"props\" />\r\n</template>\r\n\r\n"],"names":["props","__props","_openBlock","_createBlock","_unref"],"mappings":"6jBAIA,MAAMA,EAAQC,gBAYZC,YAAA,EAAAC,cAAyBC,EAAAA,uDAATJ,CAAK,CAAA,EAAA,KAAA,EAAA"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { defineComponent as t, createBlock as n, openBlock as r, unref as s, normalizeProps as a, guardReactiveProps as i } from "vue";
|
|
2
|
+
import { Toaster as l } from "vue-sonner";
|
|
3
|
+
const d = /* @__PURE__ */ t({
|
|
4
|
+
__name: "Toaster",
|
|
5
|
+
props: {
|
|
6
|
+
id: {},
|
|
7
|
+
invert: { type: Boolean },
|
|
8
|
+
theme: {},
|
|
9
|
+
position: { default: "top-center" },
|
|
10
|
+
closeButtonPosition: {},
|
|
11
|
+
hotkey: {},
|
|
12
|
+
richColors: { type: Boolean, default: !0 },
|
|
13
|
+
expand: { type: Boolean, default: !0 },
|
|
14
|
+
duration: {},
|
|
15
|
+
gap: {},
|
|
16
|
+
visibleToasts: {},
|
|
17
|
+
closeButton: { type: Boolean, default: !1 },
|
|
18
|
+
toastOptions: {},
|
|
19
|
+
class: {},
|
|
20
|
+
style: {},
|
|
21
|
+
offset: {},
|
|
22
|
+
mobileOffset: {},
|
|
23
|
+
dir: {},
|
|
24
|
+
swipeDirections: {},
|
|
25
|
+
icons: {},
|
|
26
|
+
containerAriaLabel: {}
|
|
27
|
+
},
|
|
28
|
+
setup(e) {
|
|
29
|
+
const o = e;
|
|
30
|
+
return (p, c) => (r(), n(s(l), a(i(o)), null, 16));
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
export {
|
|
34
|
+
d as default
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=Toaster.vue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toaster.vue.js","sources":["../../../../src/components/shadcn/Toaster.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { Toaster as Sonner } from 'vue-sonner'\r\nimport type { ToasterProps } from 'vue-sonner'\r\n\r\nconst props = withDefaults(\r\n defineProps<ToasterProps>(),\r\n {\r\n position: 'top-center',\r\n expand: true,\r\n richColors: true,\r\n closeButton: false,\r\n },\r\n)\r\n</script>\r\n\r\n<template>\r\n <Sonner v-bind=\"props\" />\r\n</template>\r\n\r\n"],"names":["props","__props","_openBlock","_createBlock","_unref"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,UAAMA,IAAQC;sBAYZC,EAAA,GAAAC,EAAyBC,UAATJ,CAAK,CAAA,GAAA,MAAA,EAAA;AAAA;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toaster.vue2.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toaster.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("class-variance-authority");require("vue");require("reka-ui");require("@vueuse/core");require("clsx");require("tailwind-merge");require("lucide-vue-next");require("./alert-variants.cjs");require("./avatar-variants.cjs");require("./badge-variants.cjs");require("./button-group-variants.cjs");const r=e.cva("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}});exports.buttonVariants=r;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("class-variance-authority");require("vue");require("reka-ui");require("@vueuse/core");require("clsx");require("tailwind-merge");require("lucide-vue-next");require("./alert-variants.cjs");require("./avatar-variants.cjs");require("./badge-variants.cjs");require("./button-group-variants.cjs");require("vue-sonner");const r=e.cva("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}});exports.buttonVariants=r;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../../../../src/components/shadcn/index.ts"],"sourcesContent":["// Button variants\r\nimport type { VariantProps } from \"class-variance-authority\"\r\nimport { cva } from \"class-variance-authority\"\r\n\r\nexport const buttonVariants = cva(\r\n \"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\r\n {\r\n variants: {\r\n variant: {\r\n default: \"bg-primary text-primary-foreground hover:bg-primary/90\",\r\n destructive:\r\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\r\n outline:\r\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\r\n secondary:\r\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\r\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\r\n link: \"text-primary underline-offset-4 hover:underline\",\r\n },\r\n size: {\r\n default: \"h-10 px-4 py-2\",\r\n sm: \"h-9 rounded-md px-3\",\r\n lg: \"h-11 rounded-md px-8\",\r\n icon: \"h-10 w-10\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n size: \"default\",\r\n },\r\n },\r\n)\r\n\r\nexport type ButtonVariants = VariantProps<typeof buttonVariants>\r\n\r\n// Accordion\r\nexport { default as Accordion } from \"./Accordion.vue\"\r\nexport { default as AccordionContent } from \"./AccordionContent.vue\"\r\nexport { default as AccordionItem } from \"./AccordionItem.vue\"\r\nexport { default as AccordionTrigger } from \"./AccordionTrigger.vue\"\r\n\r\n// Alert\r\nexport { default as Alert } from \"./Alert.vue\"\r\nexport { default as AlertDescription } from \"./AlertDescription.vue\"\r\nexport { default as AlertTitle } from \"./AlertTitle.vue\"\r\n\r\n// Avatar\r\nexport { default as Avatar } from \"./Avatar.vue\"\r\nexport { default as AvatarFallback } from \"./AvatarFallback.vue\"\r\nexport { default as AvatarImage } from \"./AvatarImage.vue\"\r\n\r\n// Badge\r\nexport { default as Badge } from \"./Badge.vue\"\r\n\r\n// Calendar\r\nexport { default as Calendar } from \"./Calendar.vue\"\r\nexport { default as CalendarCell } from \"./CalendarCell.vue\"\r\nexport { default as CalendarCellTrigger } from \"./CalendarCellTrigger.vue\"\r\nexport { default as CalendarGrid } from \"./CalendarGrid.vue\"\r\nexport { default as CalendarGridBody } from \"./CalendarGridBody.vue\"\r\nexport { default as CalendarGridHead } from \"./CalendarGridHead.vue\"\r\nexport { default as CalendarGridRow } from \"./CalendarGridRow.vue\"\r\nexport { default as CalendarHeadCell } from \"./CalendarHeadCell.vue\"\r\nexport { default as CalendarHeader } from \"./CalendarHeader.vue\"\r\nexport { default as CalendarHeading } from \"./CalendarHeading.vue\"\r\nexport { default as CalendarNextButton } from \"./CalendarNextButton.vue\"\r\nexport { default as CalendarPrevButton } from \"./CalendarPrevButton.vue\"\r\n\r\n// Card\r\nexport { default as Card } from \"./Card.vue\"\r\nexport { default as CardContent } from \"./CardContent.vue\"\r\nexport { default as CardDescription } from \"./CardDescription.vue\"\r\nexport { default as CardFooter } from \"./CardFooter.vue\"\r\nexport { default as CardHeader } from \"./CardHeader.vue\"\r\nexport { default as CardTitle } from \"./CardTitle.vue\"\r\n\r\n// Checkbox\r\nexport { default as Checkbox } from \"./Checkbox.vue\"\r\n\r\n// Combobox\r\nexport { default as Combobox } from \"./Combobox.vue\"\r\nexport { default as ComboboxAnchor } from \"./ComboboxAnchor.vue\"\r\nexport { default as ComboboxEmpty } from \"./ComboboxEmpty.vue\"\r\nexport { default as ComboboxGroup } from \"./ComboboxGroup.vue\"\r\nexport { default as ComboboxInput } from \"./ComboboxInput.vue\"\r\nexport { default as ComboboxItem } from \"./ComboboxItem.vue\"\r\nexport { default as ComboboxList } from \"./ComboboxList.vue\"\r\nexport { default as ComboboxSeparator } from \"./ComboboxSeparator.vue\"\r\nexport { default as ComboboxTrigger } from \"./ComboboxTrigger.vue\"\r\n\r\n// ContextMenu\r\nexport { default as ContextMenu } from \"./ContextMenu.vue\"\r\nexport { default as ContextMenuCheckboxItem } from \"./ContextMenuCheckboxItem.vue\"\r\nexport { default as ContextMenuContent } from \"./ContextMenuContent.vue\"\r\nexport { default as ContextMenuGroup } from \"./ContextMenuGroup.vue\"\r\nexport { default as ContextMenuItem } from \"./ContextMenuItem.vue\"\r\nexport { default as ContextMenuLabel } from \"./ContextMenuLabel.vue\"\r\nexport { default as ContextMenuPortal } from \"./ContextMenuPortal.vue\"\r\nexport { default as ContextMenuRadioGroup } from \"./ContextMenuRadioGroup.vue\"\r\nexport { default as ContextMenuRadioItem } from \"./ContextMenuRadioItem.vue\"\r\nexport { default as ContextMenuSeparator } from \"./ContextMenuSeparator.vue\"\r\nexport { default as ContextMenuShortcut } from \"./ContextMenuShortcut.vue\"\r\nexport { default as ContextMenuSub } from \"./ContextMenuSub.vue\"\r\nexport { default as ContextMenuSubContent } from \"./ContextMenuSubContent.vue\"\r\nexport { default as ContextMenuSubTrigger } from \"./ContextMenuSubTrigger.vue\"\r\nexport { default as ContextMenuTrigger } from \"./ContextMenuTrigger.vue\"\r\n\r\n// Dialog\r\nexport { default as Dialog } from \"./Dialog.vue\"\r\nexport { default as DialogBody } from \"./DialogBody.vue\"\r\nexport { default as DialogContent } from \"./DialogContent.vue\"\r\nexport { default as DialogDescription } from \"./DialogDescription.vue\"\r\nexport { default as DialogFooter } from \"./DialogFooter.vue\"\r\nexport { default as DialogHeader } from \"./DialogHeader.vue\"\r\nexport { default as DialogTitle } from \"./DialogTitle.vue\"\r\n\r\n// Field\r\nexport { default as Field } from \"./Field.vue\"\r\nexport { default as FieldContent } from \"./FieldContent.vue\"\r\nexport { default as FieldDescription } from \"./FieldDescription.vue\"\r\nexport { default as FieldError } from \"./FieldError.vue\"\r\nexport { default as FieldGroup } from \"./FieldGroup.vue\"\r\nexport { default as FieldLabel } from \"./FieldLabel.vue\"\r\nexport { default as FieldLegend } from \"./FieldLegend.vue\"\r\nexport { default as FieldSeparator } from \"./FieldSeparator.vue\"\r\nexport { default as FieldSet } from \"./FieldSet.vue\"\r\nexport { default as FieldTitle } from \"./FieldTitle.vue\"\r\n\r\n// ButtonGroup\r\nexport { default as ButtonGroup } from \"./ButtonGroup.vue\"\r\nexport { default as ButtonGroupSeparator } from \"./ButtonGroupSeparator.vue\"\r\nexport { default as ButtonGroupText } from \"./ButtonGroupText.vue\"\r\n\r\n// Input\r\nexport { default as Button } from \"./Button.vue\"\r\nexport { default as Input } from \"./Input.vue\"\r\n\r\n// Kbd\r\nexport { default as Kbd } from \"./Kbd.vue\"\r\nexport { default as KbdGroup } from \"./KbdGroup.vue\"\r\n\r\n// Label\r\nexport { default as Label } from \"./Label.vue\"\r\n\r\n// Popover\r\nexport { default as Popover } from \"./Popover.vue\"\r\nexport { default as PopoverContent } from \"./PopoverContent.vue\"\r\nexport { default as PopoverTrigger } from \"./PopoverTrigger.vue\"\r\n\r\n// Progress\r\nexport { default as Progress } from \"./Progress.vue\"\r\n\r\n// Radio\r\nexport { default as RadioGroup } from \"./RadioGroup.vue\"\r\nexport { default as RadioGroupItem } from \"./RadioGroupItem.vue\"\r\n\r\n// Select\r\nexport { default as Select } from \"./Select.vue\"\r\nexport { default as SelectContent } from \"./SelectContent.vue\"\r\nexport { default as SelectGroup } from \"./SelectGroup.vue\"\r\nexport { default as SelectItem } from \"./SelectItem.vue\"\r\nexport { default as SelectItemText } from \"./SelectItemText.vue\"\r\nexport { default as SelectLabel } from \"./SelectLabel.vue\"\r\nexport { default as SelectScrollDownButton } from \"./SelectScrollDownButton.vue\"\r\nexport { default as SelectScrollUpButton } from \"./SelectScrollUpButton.vue\"\r\nexport { default as SelectSeparator } from \"./SelectSeparator.vue\"\r\nexport { default as SelectTrigger } from \"./SelectTrigger.vue\"\r\nexport { default as SelectValue } from \"./SelectValue.vue\"\r\n\r\n// Separator\r\nexport { default as Separator } from \"./Separator.vue\"\r\n\r\n// Spinner\r\nexport { default as Spinner } from \"./Spinner.vue\"\r\n\r\n// Switch\r\nexport { default as Switch } from \"./Switch.vue\"\r\n\r\n// Tabs\r\nexport { default as Tabs } from \"./Tabs.vue\"\r\nexport { default as TabsContent } from \"./TabsContent.vue\"\r\nexport { default as TabsList } from \"./TabsList.vue\"\r\nexport { default as TabsTrigger } from \"./TabsTrigger.vue\"\r\n\r\n// Textarea\r\nexport { default as Textarea } from \"./Textarea.vue\"\r\n\r\n\r\n// Tooltip\r\nexport { default as Tooltip } from \"./Tooltip.vue\"\r\nexport { default as TooltipContent } from \"./TooltipContent.vue\"\r\nexport { default as TooltipProvider } from \"./TooltipProvider.vue\"\r\nexport { default as TooltipTrigger } from \"./TooltipTrigger.vue\"\r\n"],"names":["buttonVariants","cva"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../../../src/components/shadcn/index.ts"],"sourcesContent":["// Button variants\r\nimport type { VariantProps } from \"class-variance-authority\"\r\nimport { cva } from \"class-variance-authority\"\r\n\r\nexport const buttonVariants = cva(\r\n \"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\r\n {\r\n variants: {\r\n variant: {\r\n default: \"bg-primary text-primary-foreground hover:bg-primary/90\",\r\n destructive:\r\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\r\n outline:\r\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\r\n secondary:\r\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\r\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\r\n link: \"text-primary underline-offset-4 hover:underline\",\r\n },\r\n size: {\r\n default: \"h-10 px-4 py-2\",\r\n sm: \"h-9 rounded-md px-3\",\r\n lg: \"h-11 rounded-md px-8\",\r\n icon: \"h-10 w-10\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n size: \"default\",\r\n },\r\n },\r\n)\r\n\r\nexport type ButtonVariants = VariantProps<typeof buttonVariants>\r\n\r\n// Accordion\r\nexport { default as Accordion } from \"./Accordion.vue\"\r\nexport { default as AccordionContent } from \"./AccordionContent.vue\"\r\nexport { default as AccordionItem } from \"./AccordionItem.vue\"\r\nexport { default as AccordionTrigger } from \"./AccordionTrigger.vue\"\r\n\r\n// Alert\r\nexport { default as Alert } from \"./Alert.vue\"\r\nexport { default as AlertDescription } from \"./AlertDescription.vue\"\r\nexport { default as AlertTitle } from \"./AlertTitle.vue\"\r\n\r\n// Avatar\r\nexport { default as Avatar } from \"./Avatar.vue\"\r\nexport { default as AvatarFallback } from \"./AvatarFallback.vue\"\r\nexport { default as AvatarImage } from \"./AvatarImage.vue\"\r\n\r\n// Badge\r\nexport { default as Badge } from \"./Badge.vue\"\r\n\r\n// Calendar\r\nexport { default as Calendar } from \"./Calendar.vue\"\r\nexport { default as CalendarCell } from \"./CalendarCell.vue\"\r\nexport { default as CalendarCellTrigger } from \"./CalendarCellTrigger.vue\"\r\nexport { default as CalendarGrid } from \"./CalendarGrid.vue\"\r\nexport { default as CalendarGridBody } from \"./CalendarGridBody.vue\"\r\nexport { default as CalendarGridHead } from \"./CalendarGridHead.vue\"\r\nexport { default as CalendarGridRow } from \"./CalendarGridRow.vue\"\r\nexport { default as CalendarHeadCell } from \"./CalendarHeadCell.vue\"\r\nexport { default as CalendarHeader } from \"./CalendarHeader.vue\"\r\nexport { default as CalendarHeading } from \"./CalendarHeading.vue\"\r\nexport { default as CalendarNextButton } from \"./CalendarNextButton.vue\"\r\nexport { default as CalendarPrevButton } from \"./CalendarPrevButton.vue\"\r\n\r\n// Card\r\nexport { default as Card } from \"./Card.vue\"\r\nexport { default as CardContent } from \"./CardContent.vue\"\r\nexport { default as CardDescription } from \"./CardDescription.vue\"\r\nexport { default as CardFooter } from \"./CardFooter.vue\"\r\nexport { default as CardHeader } from \"./CardHeader.vue\"\r\nexport { default as CardTitle } from \"./CardTitle.vue\"\r\n\r\n// Checkbox\r\nexport { default as Checkbox } from \"./Checkbox.vue\"\r\n\r\n// Combobox\r\nexport { default as Combobox } from \"./Combobox.vue\"\r\nexport { default as ComboboxAnchor } from \"./ComboboxAnchor.vue\"\r\nexport { default as ComboboxEmpty } from \"./ComboboxEmpty.vue\"\r\nexport { default as ComboboxGroup } from \"./ComboboxGroup.vue\"\r\nexport { default as ComboboxInput } from \"./ComboboxInput.vue\"\r\nexport { default as ComboboxItem } from \"./ComboboxItem.vue\"\r\nexport { default as ComboboxList } from \"./ComboboxList.vue\"\r\nexport { default as ComboboxSeparator } from \"./ComboboxSeparator.vue\"\r\nexport { default as ComboboxTrigger } from \"./ComboboxTrigger.vue\"\r\n\r\n// ContextMenu\r\nexport { default as ContextMenu } from \"./ContextMenu.vue\"\r\nexport { default as ContextMenuCheckboxItem } from \"./ContextMenuCheckboxItem.vue\"\r\nexport { default as ContextMenuContent } from \"./ContextMenuContent.vue\"\r\nexport { default as ContextMenuGroup } from \"./ContextMenuGroup.vue\"\r\nexport { default as ContextMenuItem } from \"./ContextMenuItem.vue\"\r\nexport { default as ContextMenuLabel } from \"./ContextMenuLabel.vue\"\r\nexport { default as ContextMenuPortal } from \"./ContextMenuPortal.vue\"\r\nexport { default as ContextMenuRadioGroup } from \"./ContextMenuRadioGroup.vue\"\r\nexport { default as ContextMenuRadioItem } from \"./ContextMenuRadioItem.vue\"\r\nexport { default as ContextMenuSeparator } from \"./ContextMenuSeparator.vue\"\r\nexport { default as ContextMenuShortcut } from \"./ContextMenuShortcut.vue\"\r\nexport { default as ContextMenuSub } from \"./ContextMenuSub.vue\"\r\nexport { default as ContextMenuSubContent } from \"./ContextMenuSubContent.vue\"\r\nexport { default as ContextMenuSubTrigger } from \"./ContextMenuSubTrigger.vue\"\r\nexport { default as ContextMenuTrigger } from \"./ContextMenuTrigger.vue\"\r\n\r\n// Dialog\r\nexport { default as Dialog } from \"./Dialog.vue\"\r\nexport { default as DialogBody } from \"./DialogBody.vue\"\r\nexport { default as DialogContent } from \"./DialogContent.vue\"\r\nexport { default as DialogDescription } from \"./DialogDescription.vue\"\r\nexport { default as DialogFooter } from \"./DialogFooter.vue\"\r\nexport { default as DialogHeader } from \"./DialogHeader.vue\"\r\nexport { default as DialogTitle } from \"./DialogTitle.vue\"\r\n\r\n// Field\r\nexport { default as Field } from \"./Field.vue\"\r\nexport { default as FieldContent } from \"./FieldContent.vue\"\r\nexport { default as FieldDescription } from \"./FieldDescription.vue\"\r\nexport { default as FieldError } from \"./FieldError.vue\"\r\nexport { default as FieldGroup } from \"./FieldGroup.vue\"\r\nexport { default as FieldLabel } from \"./FieldLabel.vue\"\r\nexport { default as FieldLegend } from \"./FieldLegend.vue\"\r\nexport { default as FieldSeparator } from \"./FieldSeparator.vue\"\r\nexport { default as FieldSet } from \"./FieldSet.vue\"\r\nexport { default as FieldTitle } from \"./FieldTitle.vue\"\r\n\r\n// ButtonGroup\r\nexport { default as ButtonGroup } from \"./ButtonGroup.vue\"\r\nexport { default as ButtonGroupSeparator } from \"./ButtonGroupSeparator.vue\"\r\nexport { default as ButtonGroupText } from \"./ButtonGroupText.vue\"\r\n\r\n// Input\r\nexport { default as Button } from \"./Button.vue\"\r\nexport { default as Input } from \"./Input.vue\"\r\n\r\n// Kbd\r\nexport { default as Kbd } from \"./Kbd.vue\"\r\nexport { default as KbdGroup } from \"./KbdGroup.vue\"\r\n\r\n// Label\r\nexport { default as Label } from \"./Label.vue\"\r\n\r\n// Popover\r\nexport { default as Popover } from \"./Popover.vue\"\r\nexport { default as PopoverContent } from \"./PopoverContent.vue\"\r\nexport { default as PopoverTrigger } from \"./PopoverTrigger.vue\"\r\n\r\n// Progress\r\nexport { default as Progress } from \"./Progress.vue\"\r\n\r\n// Radio\r\nexport { default as RadioGroup } from \"./RadioGroup.vue\"\r\nexport { default as RadioGroupItem } from \"./RadioGroupItem.vue\"\r\n\r\n// Select\r\nexport { default as Select } from \"./Select.vue\"\r\nexport { default as SelectContent } from \"./SelectContent.vue\"\r\nexport { default as SelectGroup } from \"./SelectGroup.vue\"\r\nexport { default as SelectItem } from \"./SelectItem.vue\"\r\nexport { default as SelectItemText } from \"./SelectItemText.vue\"\r\nexport { default as SelectLabel } from \"./SelectLabel.vue\"\r\nexport { default as SelectScrollDownButton } from \"./SelectScrollDownButton.vue\"\r\nexport { default as SelectScrollUpButton } from \"./SelectScrollUpButton.vue\"\r\nexport { default as SelectSeparator } from \"./SelectSeparator.vue\"\r\nexport { default as SelectTrigger } from \"./SelectTrigger.vue\"\r\nexport { default as SelectValue } from \"./SelectValue.vue\"\r\n\r\n// Separator\r\nexport { default as Separator } from \"./Separator.vue\"\r\n\r\n// Spinner\r\nexport { default as Spinner } from \"./Spinner.vue\"\r\n\r\n// Switch\r\nexport { default as Switch } from \"./Switch.vue\"\r\n\r\n// Tabs\r\nexport { default as Tabs } from \"./Tabs.vue\"\r\nexport { default as TabsContent } from \"./TabsContent.vue\"\r\nexport { default as TabsList } from \"./TabsList.vue\"\r\nexport { default as TabsTrigger } from \"./TabsTrigger.vue\"\r\n\r\n// Textarea\r\nexport { default as Textarea } from \"./Textarea.vue\"\r\n\r\n\r\n// Tooltip\r\nexport { default as Tooltip } from \"./Tooltip.vue\"\r\nexport { default as TooltipContent } from \"./TooltipContent.vue\"\r\nexport { default as TooltipProvider } from \"./TooltipProvider.vue\"\r\nexport { default as TooltipTrigger } from \"./TooltipTrigger.vue\"\r\n\r\n// Toaster\r\nexport { default as Toaster } from \"./Toaster.vue\""],"names":["buttonVariants","cva"],"mappings":"yZAIO,MAAMA,EAAiBC,EAAAA,IAC5B,yRACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,yDACT,YACE,qEACF,QACE,iFACF,UACE,+DACF,MAAO,+CACP,KAAM,iDAAA,EAER,KAAM,CACJ,QAAS,iBACT,GAAI,sBACJ,GAAI,uBACJ,KAAM,WAAA,CACR,EAEF,gBAAiB,CACf,QAAS,UACT,KAAM,SAAA,CACR,CAEJ"}
|
|
@@ -9,6 +9,7 @@ import "./alert-variants.js";
|
|
|
9
9
|
import "./avatar-variants.js";
|
|
10
10
|
import "./badge-variants.js";
|
|
11
11
|
import "./button-group-variants.js";
|
|
12
|
+
import "vue-sonner";
|
|
12
13
|
const f = e(
|
|
13
14
|
"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",
|
|
14
15
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/shadcn/index.ts"],"sourcesContent":["// Button variants\r\nimport type { VariantProps } from \"class-variance-authority\"\r\nimport { cva } from \"class-variance-authority\"\r\n\r\nexport const buttonVariants = cva(\r\n \"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\r\n {\r\n variants: {\r\n variant: {\r\n default: \"bg-primary text-primary-foreground hover:bg-primary/90\",\r\n destructive:\r\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\r\n outline:\r\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\r\n secondary:\r\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\r\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\r\n link: \"text-primary underline-offset-4 hover:underline\",\r\n },\r\n size: {\r\n default: \"h-10 px-4 py-2\",\r\n sm: \"h-9 rounded-md px-3\",\r\n lg: \"h-11 rounded-md px-8\",\r\n icon: \"h-10 w-10\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n size: \"default\",\r\n },\r\n },\r\n)\r\n\r\nexport type ButtonVariants = VariantProps<typeof buttonVariants>\r\n\r\n// Accordion\r\nexport { default as Accordion } from \"./Accordion.vue\"\r\nexport { default as AccordionContent } from \"./AccordionContent.vue\"\r\nexport { default as AccordionItem } from \"./AccordionItem.vue\"\r\nexport { default as AccordionTrigger } from \"./AccordionTrigger.vue\"\r\n\r\n// Alert\r\nexport { default as Alert } from \"./Alert.vue\"\r\nexport { default as AlertDescription } from \"./AlertDescription.vue\"\r\nexport { default as AlertTitle } from \"./AlertTitle.vue\"\r\n\r\n// Avatar\r\nexport { default as Avatar } from \"./Avatar.vue\"\r\nexport { default as AvatarFallback } from \"./AvatarFallback.vue\"\r\nexport { default as AvatarImage } from \"./AvatarImage.vue\"\r\n\r\n// Badge\r\nexport { default as Badge } from \"./Badge.vue\"\r\n\r\n// Calendar\r\nexport { default as Calendar } from \"./Calendar.vue\"\r\nexport { default as CalendarCell } from \"./CalendarCell.vue\"\r\nexport { default as CalendarCellTrigger } from \"./CalendarCellTrigger.vue\"\r\nexport { default as CalendarGrid } from \"./CalendarGrid.vue\"\r\nexport { default as CalendarGridBody } from \"./CalendarGridBody.vue\"\r\nexport { default as CalendarGridHead } from \"./CalendarGridHead.vue\"\r\nexport { default as CalendarGridRow } from \"./CalendarGridRow.vue\"\r\nexport { default as CalendarHeadCell } from \"./CalendarHeadCell.vue\"\r\nexport { default as CalendarHeader } from \"./CalendarHeader.vue\"\r\nexport { default as CalendarHeading } from \"./CalendarHeading.vue\"\r\nexport { default as CalendarNextButton } from \"./CalendarNextButton.vue\"\r\nexport { default as CalendarPrevButton } from \"./CalendarPrevButton.vue\"\r\n\r\n// Card\r\nexport { default as Card } from \"./Card.vue\"\r\nexport { default as CardContent } from \"./CardContent.vue\"\r\nexport { default as CardDescription } from \"./CardDescription.vue\"\r\nexport { default as CardFooter } from \"./CardFooter.vue\"\r\nexport { default as CardHeader } from \"./CardHeader.vue\"\r\nexport { default as CardTitle } from \"./CardTitle.vue\"\r\n\r\n// Checkbox\r\nexport { default as Checkbox } from \"./Checkbox.vue\"\r\n\r\n// Combobox\r\nexport { default as Combobox } from \"./Combobox.vue\"\r\nexport { default as ComboboxAnchor } from \"./ComboboxAnchor.vue\"\r\nexport { default as ComboboxEmpty } from \"./ComboboxEmpty.vue\"\r\nexport { default as ComboboxGroup } from \"./ComboboxGroup.vue\"\r\nexport { default as ComboboxInput } from \"./ComboboxInput.vue\"\r\nexport { default as ComboboxItem } from \"./ComboboxItem.vue\"\r\nexport { default as ComboboxList } from \"./ComboboxList.vue\"\r\nexport { default as ComboboxSeparator } from \"./ComboboxSeparator.vue\"\r\nexport { default as ComboboxTrigger } from \"./ComboboxTrigger.vue\"\r\n\r\n// ContextMenu\r\nexport { default as ContextMenu } from \"./ContextMenu.vue\"\r\nexport { default as ContextMenuCheckboxItem } from \"./ContextMenuCheckboxItem.vue\"\r\nexport { default as ContextMenuContent } from \"./ContextMenuContent.vue\"\r\nexport { default as ContextMenuGroup } from \"./ContextMenuGroup.vue\"\r\nexport { default as ContextMenuItem } from \"./ContextMenuItem.vue\"\r\nexport { default as ContextMenuLabel } from \"./ContextMenuLabel.vue\"\r\nexport { default as ContextMenuPortal } from \"./ContextMenuPortal.vue\"\r\nexport { default as ContextMenuRadioGroup } from \"./ContextMenuRadioGroup.vue\"\r\nexport { default as ContextMenuRadioItem } from \"./ContextMenuRadioItem.vue\"\r\nexport { default as ContextMenuSeparator } from \"./ContextMenuSeparator.vue\"\r\nexport { default as ContextMenuShortcut } from \"./ContextMenuShortcut.vue\"\r\nexport { default as ContextMenuSub } from \"./ContextMenuSub.vue\"\r\nexport { default as ContextMenuSubContent } from \"./ContextMenuSubContent.vue\"\r\nexport { default as ContextMenuSubTrigger } from \"./ContextMenuSubTrigger.vue\"\r\nexport { default as ContextMenuTrigger } from \"./ContextMenuTrigger.vue\"\r\n\r\n// Dialog\r\nexport { default as Dialog } from \"./Dialog.vue\"\r\nexport { default as DialogBody } from \"./DialogBody.vue\"\r\nexport { default as DialogContent } from \"./DialogContent.vue\"\r\nexport { default as DialogDescription } from \"./DialogDescription.vue\"\r\nexport { default as DialogFooter } from \"./DialogFooter.vue\"\r\nexport { default as DialogHeader } from \"./DialogHeader.vue\"\r\nexport { default as DialogTitle } from \"./DialogTitle.vue\"\r\n\r\n// Field\r\nexport { default as Field } from \"./Field.vue\"\r\nexport { default as FieldContent } from \"./FieldContent.vue\"\r\nexport { default as FieldDescription } from \"./FieldDescription.vue\"\r\nexport { default as FieldError } from \"./FieldError.vue\"\r\nexport { default as FieldGroup } from \"./FieldGroup.vue\"\r\nexport { default as FieldLabel } from \"./FieldLabel.vue\"\r\nexport { default as FieldLegend } from \"./FieldLegend.vue\"\r\nexport { default as FieldSeparator } from \"./FieldSeparator.vue\"\r\nexport { default as FieldSet } from \"./FieldSet.vue\"\r\nexport { default as FieldTitle } from \"./FieldTitle.vue\"\r\n\r\n// ButtonGroup\r\nexport { default as ButtonGroup } from \"./ButtonGroup.vue\"\r\nexport { default as ButtonGroupSeparator } from \"./ButtonGroupSeparator.vue\"\r\nexport { default as ButtonGroupText } from \"./ButtonGroupText.vue\"\r\n\r\n// Input\r\nexport { default as Button } from \"./Button.vue\"\r\nexport { default as Input } from \"./Input.vue\"\r\n\r\n// Kbd\r\nexport { default as Kbd } from \"./Kbd.vue\"\r\nexport { default as KbdGroup } from \"./KbdGroup.vue\"\r\n\r\n// Label\r\nexport { default as Label } from \"./Label.vue\"\r\n\r\n// Popover\r\nexport { default as Popover } from \"./Popover.vue\"\r\nexport { default as PopoverContent } from \"./PopoverContent.vue\"\r\nexport { default as PopoverTrigger } from \"./PopoverTrigger.vue\"\r\n\r\n// Progress\r\nexport { default as Progress } from \"./Progress.vue\"\r\n\r\n// Radio\r\nexport { default as RadioGroup } from \"./RadioGroup.vue\"\r\nexport { default as RadioGroupItem } from \"./RadioGroupItem.vue\"\r\n\r\n// Select\r\nexport { default as Select } from \"./Select.vue\"\r\nexport { default as SelectContent } from \"./SelectContent.vue\"\r\nexport { default as SelectGroup } from \"./SelectGroup.vue\"\r\nexport { default as SelectItem } from \"./SelectItem.vue\"\r\nexport { default as SelectItemText } from \"./SelectItemText.vue\"\r\nexport { default as SelectLabel } from \"./SelectLabel.vue\"\r\nexport { default as SelectScrollDownButton } from \"./SelectScrollDownButton.vue\"\r\nexport { default as SelectScrollUpButton } from \"./SelectScrollUpButton.vue\"\r\nexport { default as SelectSeparator } from \"./SelectSeparator.vue\"\r\nexport { default as SelectTrigger } from \"./SelectTrigger.vue\"\r\nexport { default as SelectValue } from \"./SelectValue.vue\"\r\n\r\n// Separator\r\nexport { default as Separator } from \"./Separator.vue\"\r\n\r\n// Spinner\r\nexport { default as Spinner } from \"./Spinner.vue\"\r\n\r\n// Switch\r\nexport { default as Switch } from \"./Switch.vue\"\r\n\r\n// Tabs\r\nexport { default as Tabs } from \"./Tabs.vue\"\r\nexport { default as TabsContent } from \"./TabsContent.vue\"\r\nexport { default as TabsList } from \"./TabsList.vue\"\r\nexport { default as TabsTrigger } from \"./TabsTrigger.vue\"\r\n\r\n// Textarea\r\nexport { default as Textarea } from \"./Textarea.vue\"\r\n\r\n\r\n// Tooltip\r\nexport { default as Tooltip } from \"./Tooltip.vue\"\r\nexport { default as TooltipContent } from \"./TooltipContent.vue\"\r\nexport { default as TooltipProvider } from \"./TooltipProvider.vue\"\r\nexport { default as TooltipTrigger } from \"./TooltipTrigger.vue\"\r\n"],"names":["buttonVariants","cva"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/shadcn/index.ts"],"sourcesContent":["// Button variants\r\nimport type { VariantProps } from \"class-variance-authority\"\r\nimport { cva } from \"class-variance-authority\"\r\n\r\nexport const buttonVariants = cva(\r\n \"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\r\n {\r\n variants: {\r\n variant: {\r\n default: \"bg-primary text-primary-foreground hover:bg-primary/90\",\r\n destructive:\r\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\r\n outline:\r\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\r\n secondary:\r\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\r\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\r\n link: \"text-primary underline-offset-4 hover:underline\",\r\n },\r\n size: {\r\n default: \"h-10 px-4 py-2\",\r\n sm: \"h-9 rounded-md px-3\",\r\n lg: \"h-11 rounded-md px-8\",\r\n icon: \"h-10 w-10\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n size: \"default\",\r\n },\r\n },\r\n)\r\n\r\nexport type ButtonVariants = VariantProps<typeof buttonVariants>\r\n\r\n// Accordion\r\nexport { default as Accordion } from \"./Accordion.vue\"\r\nexport { default as AccordionContent } from \"./AccordionContent.vue\"\r\nexport { default as AccordionItem } from \"./AccordionItem.vue\"\r\nexport { default as AccordionTrigger } from \"./AccordionTrigger.vue\"\r\n\r\n// Alert\r\nexport { default as Alert } from \"./Alert.vue\"\r\nexport { default as AlertDescription } from \"./AlertDescription.vue\"\r\nexport { default as AlertTitle } from \"./AlertTitle.vue\"\r\n\r\n// Avatar\r\nexport { default as Avatar } from \"./Avatar.vue\"\r\nexport { default as AvatarFallback } from \"./AvatarFallback.vue\"\r\nexport { default as AvatarImage } from \"./AvatarImage.vue\"\r\n\r\n// Badge\r\nexport { default as Badge } from \"./Badge.vue\"\r\n\r\n// Calendar\r\nexport { default as Calendar } from \"./Calendar.vue\"\r\nexport { default as CalendarCell } from \"./CalendarCell.vue\"\r\nexport { default as CalendarCellTrigger } from \"./CalendarCellTrigger.vue\"\r\nexport { default as CalendarGrid } from \"./CalendarGrid.vue\"\r\nexport { default as CalendarGridBody } from \"./CalendarGridBody.vue\"\r\nexport { default as CalendarGridHead } from \"./CalendarGridHead.vue\"\r\nexport { default as CalendarGridRow } from \"./CalendarGridRow.vue\"\r\nexport { default as CalendarHeadCell } from \"./CalendarHeadCell.vue\"\r\nexport { default as CalendarHeader } from \"./CalendarHeader.vue\"\r\nexport { default as CalendarHeading } from \"./CalendarHeading.vue\"\r\nexport { default as CalendarNextButton } from \"./CalendarNextButton.vue\"\r\nexport { default as CalendarPrevButton } from \"./CalendarPrevButton.vue\"\r\n\r\n// Card\r\nexport { default as Card } from \"./Card.vue\"\r\nexport { default as CardContent } from \"./CardContent.vue\"\r\nexport { default as CardDescription } from \"./CardDescription.vue\"\r\nexport { default as CardFooter } from \"./CardFooter.vue\"\r\nexport { default as CardHeader } from \"./CardHeader.vue\"\r\nexport { default as CardTitle } from \"./CardTitle.vue\"\r\n\r\n// Checkbox\r\nexport { default as Checkbox } from \"./Checkbox.vue\"\r\n\r\n// Combobox\r\nexport { default as Combobox } from \"./Combobox.vue\"\r\nexport { default as ComboboxAnchor } from \"./ComboboxAnchor.vue\"\r\nexport { default as ComboboxEmpty } from \"./ComboboxEmpty.vue\"\r\nexport { default as ComboboxGroup } from \"./ComboboxGroup.vue\"\r\nexport { default as ComboboxInput } from \"./ComboboxInput.vue\"\r\nexport { default as ComboboxItem } from \"./ComboboxItem.vue\"\r\nexport { default as ComboboxList } from \"./ComboboxList.vue\"\r\nexport { default as ComboboxSeparator } from \"./ComboboxSeparator.vue\"\r\nexport { default as ComboboxTrigger } from \"./ComboboxTrigger.vue\"\r\n\r\n// ContextMenu\r\nexport { default as ContextMenu } from \"./ContextMenu.vue\"\r\nexport { default as ContextMenuCheckboxItem } from \"./ContextMenuCheckboxItem.vue\"\r\nexport { default as ContextMenuContent } from \"./ContextMenuContent.vue\"\r\nexport { default as ContextMenuGroup } from \"./ContextMenuGroup.vue\"\r\nexport { default as ContextMenuItem } from \"./ContextMenuItem.vue\"\r\nexport { default as ContextMenuLabel } from \"./ContextMenuLabel.vue\"\r\nexport { default as ContextMenuPortal } from \"./ContextMenuPortal.vue\"\r\nexport { default as ContextMenuRadioGroup } from \"./ContextMenuRadioGroup.vue\"\r\nexport { default as ContextMenuRadioItem } from \"./ContextMenuRadioItem.vue\"\r\nexport { default as ContextMenuSeparator } from \"./ContextMenuSeparator.vue\"\r\nexport { default as ContextMenuShortcut } from \"./ContextMenuShortcut.vue\"\r\nexport { default as ContextMenuSub } from \"./ContextMenuSub.vue\"\r\nexport { default as ContextMenuSubContent } from \"./ContextMenuSubContent.vue\"\r\nexport { default as ContextMenuSubTrigger } from \"./ContextMenuSubTrigger.vue\"\r\nexport { default as ContextMenuTrigger } from \"./ContextMenuTrigger.vue\"\r\n\r\n// Dialog\r\nexport { default as Dialog } from \"./Dialog.vue\"\r\nexport { default as DialogBody } from \"./DialogBody.vue\"\r\nexport { default as DialogContent } from \"./DialogContent.vue\"\r\nexport { default as DialogDescription } from \"./DialogDescription.vue\"\r\nexport { default as DialogFooter } from \"./DialogFooter.vue\"\r\nexport { default as DialogHeader } from \"./DialogHeader.vue\"\r\nexport { default as DialogTitle } from \"./DialogTitle.vue\"\r\n\r\n// Field\r\nexport { default as Field } from \"./Field.vue\"\r\nexport { default as FieldContent } from \"./FieldContent.vue\"\r\nexport { default as FieldDescription } from \"./FieldDescription.vue\"\r\nexport { default as FieldError } from \"./FieldError.vue\"\r\nexport { default as FieldGroup } from \"./FieldGroup.vue\"\r\nexport { default as FieldLabel } from \"./FieldLabel.vue\"\r\nexport { default as FieldLegend } from \"./FieldLegend.vue\"\r\nexport { default as FieldSeparator } from \"./FieldSeparator.vue\"\r\nexport { default as FieldSet } from \"./FieldSet.vue\"\r\nexport { default as FieldTitle } from \"./FieldTitle.vue\"\r\n\r\n// ButtonGroup\r\nexport { default as ButtonGroup } from \"./ButtonGroup.vue\"\r\nexport { default as ButtonGroupSeparator } from \"./ButtonGroupSeparator.vue\"\r\nexport { default as ButtonGroupText } from \"./ButtonGroupText.vue\"\r\n\r\n// Input\r\nexport { default as Button } from \"./Button.vue\"\r\nexport { default as Input } from \"./Input.vue\"\r\n\r\n// Kbd\r\nexport { default as Kbd } from \"./Kbd.vue\"\r\nexport { default as KbdGroup } from \"./KbdGroup.vue\"\r\n\r\n// Label\r\nexport { default as Label } from \"./Label.vue\"\r\n\r\n// Popover\r\nexport { default as Popover } from \"./Popover.vue\"\r\nexport { default as PopoverContent } from \"./PopoverContent.vue\"\r\nexport { default as PopoverTrigger } from \"./PopoverTrigger.vue\"\r\n\r\n// Progress\r\nexport { default as Progress } from \"./Progress.vue\"\r\n\r\n// Radio\r\nexport { default as RadioGroup } from \"./RadioGroup.vue\"\r\nexport { default as RadioGroupItem } from \"./RadioGroupItem.vue\"\r\n\r\n// Select\r\nexport { default as Select } from \"./Select.vue\"\r\nexport { default as SelectContent } from \"./SelectContent.vue\"\r\nexport { default as SelectGroup } from \"./SelectGroup.vue\"\r\nexport { default as SelectItem } from \"./SelectItem.vue\"\r\nexport { default as SelectItemText } from \"./SelectItemText.vue\"\r\nexport { default as SelectLabel } from \"./SelectLabel.vue\"\r\nexport { default as SelectScrollDownButton } from \"./SelectScrollDownButton.vue\"\r\nexport { default as SelectScrollUpButton } from \"./SelectScrollUpButton.vue\"\r\nexport { default as SelectSeparator } from \"./SelectSeparator.vue\"\r\nexport { default as SelectTrigger } from \"./SelectTrigger.vue\"\r\nexport { default as SelectValue } from \"./SelectValue.vue\"\r\n\r\n// Separator\r\nexport { default as Separator } from \"./Separator.vue\"\r\n\r\n// Spinner\r\nexport { default as Spinner } from \"./Spinner.vue\"\r\n\r\n// Switch\r\nexport { default as Switch } from \"./Switch.vue\"\r\n\r\n// Tabs\r\nexport { default as Tabs } from \"./Tabs.vue\"\r\nexport { default as TabsContent } from \"./TabsContent.vue\"\r\nexport { default as TabsList } from \"./TabsList.vue\"\r\nexport { default as TabsTrigger } from \"./TabsTrigger.vue\"\r\n\r\n// Textarea\r\nexport { default as Textarea } from \"./Textarea.vue\"\r\n\r\n\r\n// Tooltip\r\nexport { default as Tooltip } from \"./Tooltip.vue\"\r\nexport { default as TooltipContent } from \"./TooltipContent.vue\"\r\nexport { default as TooltipProvider } from \"./TooltipProvider.vue\"\r\nexport { default as TooltipTrigger } from \"./TooltipTrigger.vue\"\r\n\r\n// Toaster\r\nexport { default as Toaster } from \"./Toaster.vue\""],"names":["buttonVariants","cva"],"mappings":";;;;;;;;;;;;AAIO,MAAMA,IAAiBC;AAAA,EAC5B;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,aACE;AAAA,QACF,SACE;AAAA,QACF,WACE;AAAA,QACF,OAAO;AAAA,QACP,MAAM;AAAA,MAAA;AAAA,MAER,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,MAAM;AAAA,MAAA;AAAA,IACR;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IAAA;AAAA,EACR;AAEJ;"}
|
package/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
require('./assets/styles/j-components.css');
|
|
2
2
|
require('./assets/styles/themes.css');
|
|
3
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});;/* empty css */;/* empty css */const e=require("./components/atoms/JButton.vue.cjs"),t=require("./components/atoms/JInput.vue.cjs"),u=require("./components/atoms/JTextarea.vue.cjs"),_=require("./components/atoms/JCheckbox.vue.cjs"),r=require("./components/atoms/JCombo.vue.cjs"),a=require("./components/atoms/JSearchCombo.vue.cjs"),
|
|
3
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});;/* empty css */;/* empty css */;/* empty css */const e=require("./components/atoms/JButton.vue.cjs"),t=require("./components/atoms/JInput.vue.cjs"),u=require("./components/atoms/JTextarea.vue.cjs"),_=require("./components/atoms/JCheckbox.vue.cjs"),r=require("./components/atoms/JCombo.vue.cjs"),a=require("./components/atoms/JSearchCombo.vue.cjs"),s=require("./components/atoms/JRadio.vue.cjs"),p=require("./components/atoms/JSwitch.vue.cjs"),i=require("./components/atoms/JDatepicker.vue.cjs"),n=require("./components/atoms/JDivider.vue.cjs"),o=require("./components/atoms/JLink.vue.cjs"),c=require("./components/atoms/JImage.vue.cjs"),l=require("./components/atoms/JBadge.vue.cjs"),J=require("./components/atoms/JProgress.vue.cjs");;/* empty css */const d=require("./components/atoms/JSpinner.vue.cjs"),v=require("./components/atoms/JAvatar.vue.cjs"),q=require("./components/atoms/JKbd.vue.cjs"),y=require("./components/atoms/JTooltip.vue.cjs"),g=require("./components/atoms/JIcon.vue.cjs"),f=require("./components/atoms/JLabel.vue.cjs"),b=require("./components/atoms/JPopover.vue.cjs"),m=require("./components/atoms/JGrid.vue.cjs"),S=require("vue-sonner"),C=require("./components/atoms/JToast.vue.cjs"),T=require("./components/molecules/JFormField.vue.cjs");;/* empty css */const A=require("./components/molecules/JGroupCombo.vue.cjs"),h=require("./components/molecules/JTabs.vue.cjs"),L=require("./components/molecules/JSearchAddr.vue.cjs"),P=require("./components/molecules/JContextMenu.vue.cjs"),B=require("./components/molecules/JCard.vue.cjs"),D=require("./components/molecules/JAlert.vue.cjs"),F=require("./components/molecules/JAccordion.vue.cjs"),M=require("./components/molecules/JTitlebar.vue.cjs"),k=require("./components/molecules/JButtonGroup.vue.cjs"),x=require("./components/molecules/JBreadcrumb.vue.cjs"),G=require("./components/organisms/JDynamicTabs.vue.cjs"),I=require("./components/organisms/JModal.vue.cjs"),j=require("./components/organisms/JFormModal.vue.cjs"),w=require("./components/organisms/JDynamicForm.vue.cjs"),H=require("./components/organisms/JSearchPanel.vue.cjs"),K=require("./components/organisms/JHeader.vue.cjs"),O=require("./components/organisms/JSidebarSimple.vue.cjs"),R=require("./components/organisms/JSidebarAdvanced.vue.cjs"),z=require("./components/organisms/JPageContainer.vue.cjs"),E=require("./components/templates/JLayout.vue.cjs"),N=require("./components/templates/JLayoutSimple.vue.cjs"),Q=require("./components/templates/JLayoutAdvanced.vue.cjs");exports.JButton=e.default;exports.JInput=t.default;exports.JTextarea=u.default;exports.JCheckbox=_.default;exports.JCombo=r.default;exports.JSearchCombo=a.default;exports.JRadio=s.default;exports.JSwitch=p.default;exports.JDatepicker=i.default;exports.JDivider=n.default;exports.JLink=o.default;exports.JImage=c.default;exports.JBadge=l.default;exports.JProgress=J.default;exports.JSpinner=d.default;exports.JAvatar=v.default;exports.JKbd=q.default;exports.JTooltip=y.default;exports.JIcon=g.default;exports.JLabel=f.default;exports.JPopover=b.default;exports.JGrid=m.default;Object.defineProperty(exports,"JToast",{enumerable:!0,get:()=>S.toast});exports.JToaster=C.default;exports.JFormField=T.default;exports.JGroupCombo=A.default;exports.JTabs=h.default;exports.JSearchAddr=L.default;exports.JContextMenu=P.default;exports.JCard=B.default;exports.JAlert=D.default;exports.JAccordion=F.default;exports.JTitlebar=M.default;exports.JButtonGroup=k.default;exports.JBreadcrumb=x.default;exports.JDynamicTabs=G.default;exports.JModal=I.default;exports.JFormModal=j.default;exports.JDynamicForm=w.default;exports.JSearchPanel=H.default;exports.JHeader=K.default;exports.JSidebarSimple=O.default;exports.JSidebarAdvanced=R.default;exports.JPageContainer=z.default;exports.JLayout=E.default;exports.JLayoutSimple=N.default;exports.JLayoutAdvanced=Q.default;
|
|
4
4
|
//# sourceMappingURL=index.cjs.map
|
package/index.js
CHANGED
|
@@ -2,98 +2,103 @@ import './assets/styles/j-components.css';
|
|
|
2
2
|
import './assets/styles/themes.css';
|
|
3
3
|
/* empty css */
|
|
4
4
|
/* empty css */
|
|
5
|
-
|
|
6
|
-
import { default as
|
|
7
|
-
import { default as
|
|
8
|
-
import { default as
|
|
9
|
-
import { default as
|
|
10
|
-
import { default as
|
|
11
|
-
import { default as
|
|
5
|
+
/* empty css */
|
|
6
|
+
import { default as m } from "./components/atoms/JButton.vue.js";
|
|
7
|
+
import { default as l } from "./components/atoms/JInput.vue.js";
|
|
8
|
+
import { default as s } from "./components/atoms/JTextarea.vue.js";
|
|
9
|
+
import { default as J } from "./components/atoms/JCheckbox.vue.js";
|
|
10
|
+
import { default as n } from "./components/atoms/JCombo.vue.js";
|
|
11
|
+
import { default as b } from "./components/atoms/JSearchCombo.vue.js";
|
|
12
|
+
import { default as C } from "./components/atoms/JRadio.vue.js";
|
|
12
13
|
import { default as A } from "./components/atoms/JSwitch.vue.js";
|
|
13
14
|
import { default as v } from "./components/atoms/JDatepicker.vue.js";
|
|
14
15
|
import { default as L } from "./components/atoms/JDivider.vue.js";
|
|
15
|
-
import { default as
|
|
16
|
-
import { default as
|
|
17
|
-
import { default as
|
|
18
|
-
import { default as
|
|
16
|
+
import { default as B } from "./components/atoms/JLink.vue.js";
|
|
17
|
+
import { default as F } from "./components/atoms/JImage.vue.js";
|
|
18
|
+
import { default as k } from "./components/atoms/JBadge.vue.js";
|
|
19
|
+
import { default as I } from "./components/atoms/JProgress.vue.js";
|
|
19
20
|
/* empty css */
|
|
20
|
-
import { default as
|
|
21
|
-
import { default as
|
|
22
|
-
import { default as
|
|
23
|
-
import { default as
|
|
24
|
-
import { default as
|
|
25
|
-
import { default as
|
|
26
|
-
import { default as
|
|
27
|
-
import { default as
|
|
28
|
-
import {
|
|
21
|
+
import { default as w } from "./components/atoms/JSpinner.vue.js";
|
|
22
|
+
import { default as K } from "./components/atoms/JAvatar.vue.js";
|
|
23
|
+
import { default as j } from "./components/atoms/JKbd.vue.js";
|
|
24
|
+
import { default as z } from "./components/atoms/JTooltip.vue.js";
|
|
25
|
+
import { default as N } from "./components/atoms/JIcon.vue.js";
|
|
26
|
+
import { default as Q } from "./components/atoms/JLabel.vue.js";
|
|
27
|
+
import { default as V } from "./components/atoms/JPopover.vue.js";
|
|
28
|
+
import { default as X } from "./components/atoms/JGrid.vue.js";
|
|
29
|
+
import { toast as Z } from "vue-sonner";
|
|
30
|
+
import { default as $ } from "./components/atoms/JToast.vue.js";
|
|
31
|
+
import { default as ao } from "./components/molecules/JFormField.vue.js";
|
|
29
32
|
/* empty css */
|
|
30
|
-
import { default as
|
|
31
|
-
import { default as
|
|
32
|
-
import { default as
|
|
33
|
-
import { default as
|
|
34
|
-
import { default as
|
|
35
|
-
import { default as
|
|
36
|
-
import { default as
|
|
37
|
-
import { default as
|
|
38
|
-
import { default as
|
|
39
|
-
import { default as
|
|
40
|
-
import { default as
|
|
41
|
-
import { default as
|
|
42
|
-
import { default as
|
|
43
|
-
import { default as
|
|
44
|
-
import { default as
|
|
45
|
-
import { default as
|
|
46
|
-
import { default as
|
|
47
|
-
import { default as
|
|
48
|
-
import { default as
|
|
49
|
-
import { default as
|
|
50
|
-
import { default as
|
|
51
|
-
import { default as
|
|
33
|
+
import { default as eo } from "./components/molecules/JGroupCombo.vue.js";
|
|
34
|
+
import { default as fo } from "./components/molecules/JTabs.vue.js";
|
|
35
|
+
import { default as po } from "./components/molecules/JSearchAddr.vue.js";
|
|
36
|
+
import { default as uo } from "./components/molecules/JContextMenu.vue.js";
|
|
37
|
+
import { default as xo } from "./components/molecules/JCard.vue.js";
|
|
38
|
+
import { default as io } from "./components/molecules/JAlert.vue.js";
|
|
39
|
+
import { default as co } from "./components/molecules/JAccordion.vue.js";
|
|
40
|
+
import { default as So } from "./components/molecules/JTitlebar.vue.js";
|
|
41
|
+
import { default as To } from "./components/molecules/JButtonGroup.vue.js";
|
|
42
|
+
import { default as ho } from "./components/molecules/JBreadcrumb.vue.js";
|
|
43
|
+
import { default as yo } from "./components/organisms/JDynamicTabs.vue.js";
|
|
44
|
+
import { default as go } from "./components/organisms/JModal.vue.js";
|
|
45
|
+
import { default as Do } from "./components/organisms/JFormModal.vue.js";
|
|
46
|
+
import { default as Po } from "./components/organisms/JDynamicForm.vue.js";
|
|
47
|
+
import { default as Go } from "./components/organisms/JSearchPanel.vue.js";
|
|
48
|
+
import { default as Mo } from "./components/organisms/JHeader.vue.js";
|
|
49
|
+
import { default as Ho } from "./components/organisms/JSidebarSimple.vue.js";
|
|
50
|
+
import { default as Ro } from "./components/organisms/JSidebarAdvanced.vue.js";
|
|
51
|
+
import { default as qo } from "./components/organisms/JPageContainer.vue.js";
|
|
52
|
+
import { default as Eo } from "./components/templates/JLayout.vue.js";
|
|
53
|
+
import { default as Oo } from "./components/templates/JLayoutSimple.vue.js";
|
|
54
|
+
import { default as Uo } from "./components/templates/JLayoutAdvanced.vue.js";
|
|
52
55
|
export {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
56
|
+
co as JAccordion,
|
|
57
|
+
io as JAlert,
|
|
58
|
+
K as JAvatar,
|
|
59
|
+
k as JBadge,
|
|
60
|
+
ho as JBreadcrumb,
|
|
61
|
+
m as JButton,
|
|
62
|
+
To as JButtonGroup,
|
|
63
|
+
xo as JCard,
|
|
64
|
+
J as JCheckbox,
|
|
65
|
+
n as JCombo,
|
|
66
|
+
uo as JContextMenu,
|
|
64
67
|
v as JDatepicker,
|
|
65
68
|
L as JDivider,
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
69
|
+
Po as JDynamicForm,
|
|
70
|
+
yo as JDynamicTabs,
|
|
71
|
+
ao as JFormField,
|
|
72
|
+
Do as JFormModal,
|
|
73
|
+
X as JGrid,
|
|
74
|
+
eo as JGroupCombo,
|
|
75
|
+
Mo as JHeader,
|
|
76
|
+
N as JIcon,
|
|
77
|
+
F as JImage,
|
|
78
|
+
l as JInput,
|
|
79
|
+
j as JKbd,
|
|
80
|
+
Q as JLabel,
|
|
81
|
+
Eo as JLayout,
|
|
82
|
+
Uo as JLayoutAdvanced,
|
|
83
|
+
Oo as JLayoutSimple,
|
|
84
|
+
B as JLink,
|
|
85
|
+
go as JModal,
|
|
86
|
+
qo as JPageContainer,
|
|
87
|
+
V as JPopover,
|
|
88
|
+
I as JProgress,
|
|
89
|
+
C as JRadio,
|
|
90
|
+
po as JSearchAddr,
|
|
91
|
+
b as JSearchCombo,
|
|
92
|
+
Go as JSearchPanel,
|
|
93
|
+
Ro as JSidebarAdvanced,
|
|
94
|
+
Ho as JSidebarSimple,
|
|
95
|
+
w as JSpinner,
|
|
93
96
|
A as JSwitch,
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
97
|
+
fo as JTabs,
|
|
98
|
+
s as JTextarea,
|
|
99
|
+
So as JTitlebar,
|
|
100
|
+
Z as JToast,
|
|
101
|
+
$ as JToaster,
|
|
102
|
+
z as JTooltip
|
|
98
103
|
};
|
|
99
104
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@j-solution/components",
|
|
3
3
|
"description": "Vue 3 Atomic Design component kit for enterprise dashboards",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.1.1",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./index.cjs",
|
|
7
7
|
"module": "./index.js",
|
|
@@ -69,6 +69,7 @@
|
|
|
69
69
|
"reka-ui": "^2.6.0",
|
|
70
70
|
"tailwind-merge": "^3.3.1",
|
|
71
71
|
"vee-validate": "^4.15.1",
|
|
72
|
+
"vue-sonner": "^2.0.9",
|
|
72
73
|
"zod": "^3.25.76"
|
|
73
74
|
},
|
|
74
75
|
"keywords": [
|
package/types/index.d.ts
CHANGED
|
@@ -11,8 +11,10 @@ import { GlobalComponents } from 'vue';
|
|
|
11
11
|
import { GlobalDirectives } from 'vue';
|
|
12
12
|
import { HTMLAttributes } from 'vue';
|
|
13
13
|
import { default as JLayoutAdvanced } from './JLayoutAdvanced.vue';
|
|
14
|
+
import { toast as JToast } from 'vue-sonner';
|
|
14
15
|
import { PublicProps } from 'vue';
|
|
15
16
|
import { Ref } from 'vue';
|
|
17
|
+
import { ToasterProps } from 'vue-sonner';
|
|
16
18
|
import { VariantProps } from 'class-variance-authority';
|
|
17
19
|
|
|
18
20
|
declare const __VLS_component: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
@@ -2149,6 +2151,15 @@ rows: number;
|
|
|
2149
2151
|
|
|
2150
2152
|
export declare const JTitlebar: __VLS_WithTemplateSlots_14<typeof __VLS_component_14, __VLS_TemplateResult_14["slots"]>;
|
|
2151
2153
|
|
|
2154
|
+
export { JToast }
|
|
2155
|
+
|
|
2156
|
+
export declare const JToaster: DefineComponent<ToasterProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ToasterProps> & Readonly<{}>, {
|
|
2157
|
+
position: "top-left" | "top-right" | "bottom-left" | "bottom-right" | "top-center" | "bottom-center";
|
|
2158
|
+
richColors: boolean;
|
|
2159
|
+
expand: boolean;
|
|
2160
|
+
closeButton: boolean;
|
|
2161
|
+
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
|
|
2162
|
+
|
|
2152
2163
|
export declare const JTooltip: __VLS_WithTemplateSlots_6<typeof __VLS_component_6, __VLS_TemplateResult_6["slots"]>;
|
|
2153
2164
|
|
|
2154
2165
|
declare type LabelPosition = 'right' | 'left' | 'top' | 'bottom';
|