@definable/ui 0.1.8 → 0.1.10
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/MonacoEditor-COZcVMEj.cjs +8 -0
- package/dist/MonacoEditor-COZcVMEj.cjs.map +1 -0
- package/dist/MonacoEditor-D3QSSKa4.js +295 -0
- package/dist/MonacoEditor-D3QSSKa4.js.map +1 -0
- package/dist/alert.d.ts +7 -0
- package/dist/badge.d.ts +1 -1
- package/dist/command.d.ts +13 -13
- package/dist/components/alert.d.ts +7 -0
- package/dist/components/alert.esm.js +35 -22
- package/dist/components/alert.esm.js.map +1 -1
- package/dist/components/alert.js +1 -1
- package/dist/components/alert.js.map +1 -1
- package/dist/components/badge.d.ts +1 -1
- package/dist/components/command.d.ts +13 -13
- package/dist/components/modal.esm.js +55 -44
- package/dist/components/modal.esm.js.map +1 -1
- package/dist/components/modal.js +1 -1
- package/dist/components/modal.js.map +1 -1
- package/dist/components/monaco-editor.esm.js +6 -292
- package/dist/components/monaco-editor.esm.js.map +1 -1
- package/dist/components/monaco-editor.js +1 -7
- package/dist/components/monaco-editor.js.map +1 -1
- package/dist/components/selection-bar.esm.js +7 -7
- package/dist/components/selection-bar.esm.js.map +1 -1
- package/dist/components/selection-bar.js +1 -1
- package/dist/components/selection-bar.js.map +1 -1
- package/dist/components/stepper.esm.js +4 -211
- package/dist/components/stepper.esm.js.map +1 -1
- package/dist/components/stepper.js +1 -1
- package/dist/components/stepper.js.map +1 -1
- package/dist/index.d.ts +464 -1
- package/dist/index.esm.js +455 -111
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/stepper-modal-CPlBpxWy.cjs +2 -0
- package/dist/stepper-modal-CPlBpxWy.cjs.map +1 -0
- package/dist/stepper-modal-SYU9mbXs.js +214 -0
- package/dist/stepper-modal-SYU9mbXs.js.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/utils-DSKoFOjv.cjs.map +1 -1
- package/dist/utils-qaFjX9_3.js.map +1 -1
- package/package.json +6 -1
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./components/alert.js"),i=require("./components/avatar.js"),s=require("./components/badge.js"),g=require("./components/button.js"),r=require("./components/card.js"),m=require("./components/carousel.js"),c=require("./components/charts.js"),C=require("./components/checkbox.js"),D=require("./components/collapse.js"),S=require("./components/confirmation-modal.js"),e=require("./components/dialog.js"),t=require("./components/dropdown-menu.js"),q=require("./components/input.js"),T=require("./components/label.js"),_=require("./components/loader.js"),b=require("./components/loading-placeholder.js"),p=require("./components/markdown.js"),h=require("./components/modal.js"),M=require("./components/notification.js"),l=require("./components/popover.js"),w=require("./components/progress.js"),u=require("./components/radio-group.js"),d=require("./components/scroll-area.js"),o=require("./components/select.js"),v=require("./components/selection-bar.js"),A=require("./components/separator.js"),P=require("./components/sheet.js"),L=require("./components/slider.js"),B=require("./components/switch.js"),I=require("./components/table.js"),G=require("./components/table-empty.js"),n=require("./components/tabs.js"),k=require("./components/textarea.js"),f=require("./components/tooltip.js"),y=require("./utils-DSKoFOjv.cjs");exports.Alert=a.Alert;exports.AlertDescription=a.AlertDescription;exports.AlertTitle=a.AlertTitle;exports.Avatar=i.Avatar;exports.AvatarFallback=i.AvatarFallback;exports.AvatarImage=i.AvatarImage;exports.Badge=s.Badge;exports.badgeVariants=s.badgeVariants;exports.Button=g.Button;exports.Card=r.Card;exports.CardContent=r.CardContent;exports.CardDescription=r.CardDescription;exports.CardFooter=r.CardFooter;exports.CardHeader=r.CardHeader;exports.CardTitle=r.CardTitle;exports.Carousel=m.Carousel;exports.BarChart=c.BarChart;exports.DonutChart=c.DonutChart;exports.LineChart=c.LineChart;exports.Checkbox=C.Checkbox;exports.Collapse=D.Collapse;exports.ConfirmationModal=S.ConfirmationModal;exports.Dialog=e.Dialog;exports.DialogClose=e.DialogClose;exports.DialogContent=e.DialogContent;exports.DialogDescription=e.DialogDescription;exports.DialogFooter=e.DialogFooter;exports.DialogHeader=e.DialogHeader;exports.DialogOverlay=e.DialogOverlay;exports.DialogPortal=e.DialogPortal;exports.DialogTitle=e.DialogTitle;exports.DialogTrigger=e.DialogTrigger;exports.DropdownMenu=t.DropdownMenu;exports.DropdownMenuContent=t.DropdownMenuContent;exports.DropdownMenuGroup=t.DropdownMenuGroup;exports.DropdownMenuItem=t.DropdownMenuItem;exports.DropdownMenuSeparator=t.DropdownMenuSeparator;exports.DropdownMenuTrigger=t.DropdownMenuTrigger;exports.Input=q.Input;exports.Label=T.Label;exports.Loader=_.Loader;exports.LoadingPlaceholder=b.LoadingPlaceholder;exports.Markdown=p.Markdown;exports.codeThemes=p.codeThemes;exports.Modal=h.Modal;exports.NotificationContainer=M.NotificationContainer;exports.Popover=l.Popover;exports.PopoverContent=l.PopoverContent;exports.PopoverTrigger=l.PopoverTrigger;exports.Progress=w.Progress;exports.RadioGroup=u.RadioGroup;exports.RadioGroupItem=u.RadioGroupItem;exports.ScrollArea=d.ScrollArea;exports.ScrollBar=d.ScrollBar;exports.SearchableSelect=o.SearchableSelect;exports.Select=o.Select;exports.SelectContent=o.SelectContent;exports.SelectGroup=o.SelectGroup;exports.SelectItem=o.SelectItem;exports.SelectLabel=o.SelectLabel;exports.SelectTrigger=o.SelectTrigger;exports.SelectValue=o.SelectValue;exports.SelectionBar=v.SelectionBar;exports.Separator=A.Separator;exports.Sheet=P.Sheet;exports.Slider=L.Slider;exports.Switch=B.Switch;exports.Table=I.Table;exports.TableEmpty=G.TableEmpty;exports.Tabs=n.Tabs;exports.TabsContent=n.TabsContent;exports.TabsList=n.TabsList;exports.TabsTrigger=n.TabsTrigger;exports.Textarea=k.Textarea;exports.Tooltip=f.Tooltip;exports.cn=y.cn;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("./components/alert.js"),D=require("./components/alert-dialog.js"),x=require("./components/avatar.js"),M=require("./components/badge.js"),_=require("./components/button.js"),E=require("./components/calendar.js"),c=require("./components/card.js"),T=require("./components/carousel.js"),g=require("./components/charts.js"),I=require("./components/checkbox.js"),y=require("./components/collapse.js"),a=require("./components/command.js"),f=require("./components/command-menu.js"),L=require("./components/confirmation-modal.js"),r=require("./components/context-menu.js"),s=require("./components/dialog.js"),p=require("./components/dropdown-menu.js"),A=require("./components/dropzone.js"),z=require("./components/image-cropper.js"),k=require("./components/image-cropper-modal.js"),G=require("./components/input.js"),N=require("./components/label.js"),B=require("./components/loader.js"),O=require("./components/loading-placeholder.js"),S=require("./components/markdown.js"),P=require("./components/mention.js"),F=require("./components/modal.js"),u=require("./MonacoEditor-COZcVMEj.cjs"),V=require("./components/notification.js"),h=require("./components/popover.js"),H=require("./components/progress.js"),w=require("./components/radio-group.js"),v=require("./components/scroll-area.js"),i=require("./components/select.js"),U=require("./components/selection-bar.js"),J=require("./components/separator.js"),K=require("./components/sheet.js"),Q=require("./components/skeleton.js"),W=require("./components/slider.js"),C=require("./stepper-modal-CPlBpxWy.cjs"),X=require("./components/switch.js"),Y=require("./components/table.js"),Z=require("./components/table-empty.js"),$=require("./components/table-mobile.js"),d=require("./components/tabs.js"),j=require("./components/terminal.js"),e1=require("./components/textarea.js"),o1=require("./components/tooltip.js"),b=require("./components/use-toast.js"),e=require("./jsx-runtime-BYECrxsp.cjs"),l=require("./utils-DSKoFOjv.cjs"),t1=require("lucide-react"),n1=t=>{const{size:o=48,className:n=""}=t;return e.jsxRuntimeExports.jsx("div",{"aria-label":"Claude",className:l.cn("flex flex-col items-center justify-center flex-none text-white rounded-full",n),style:{background:"rgb(217, 119, 87)",height:o,width:o},children:e.jsxRuntimeExports.jsxs("svg",{fill:"currentColor",fillRule:"evenodd",height:o,style:{padding:"5px"},width:o,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",className:"flex-none leading-none",children:[e.jsxRuntimeExports.jsx("title",{children:"Claude"}),e.jsxRuntimeExports.jsx("path",{d:"M4.709 15.955l4.72-2.647.08-.23-.08-.128H9.2l-.79-.048-2.698-.073-2.339-.097-2.266-.122-.571-.121L0 11.784l.055-.352.48-.321.686.06 1.52.103 2.278.158 1.652.097 2.449.255h.389l.055-.157-.134-.098-.103-.097-2.358-1.596-2.552-1.688-1.336-.972-.724-.491-.364-.462-.158-1.008.656-.722.881.06.225.061.893.686 1.908 1.476 2.491 1.833.365.304.145-.103.019-.073-.164-.274-1.355-2.446-1.446-2.49-.644-1.032-.17-.619a2.97 2.97 0 01-.104-.729L6.283.134 6.696 0l.996.134.42.364.62 1.414 1.002 2.229 1.555 3.03.456.898.243.832.091.255h.158V9.01l.128-1.706.237-2.095.23-2.695.08-.76.376-.91.747-.492.584.28.48.685-.067.444-.286 1.851-.559 2.903-.364 1.942h.212l.243-.242.985-1.306 1.652-2.064.73-.82.85-.904.547-.431h1.033l.76 1.129-.34 1.166-1.064 1.347-.881 1.142-1.264 1.7-.79 1.36.073.11.188-.02 2.856-.606 1.543-.28 1.841-.315.833.388.091.395-.328.807-1.969.486-2.309.462-3.439.813-.042.03.049.061 1.549.146.662.036h1.622l3.02.225.79.522.474.638-.079.485-1.215.62-1.64-.389-3.829-.91-1.312-.329h-.182v.11l1.093 1.068 2.006 1.81 2.509 2.33.127.578-.322.455-.34-.049-2.205-1.657-.851-.747-1.926-1.62h-.128v.17l.444.649 2.345 3.521.122 1.08-.17.353-.608.213-.668-.122-1.374-1.925-1.415-2.167-1.143-1.943-.14.08-.674 7.254-.316.37-.729.28-.607-.461-.322-.747.322-1.476.389-1.924.315-1.53.286-1.9.17-.632-.012-.042-.14.018-1.434 1.967-2.18 2.945-1.726 1.845-.414.164-.717-.37.067-.662.401-.589 2.388-3.036 1.44-1.882.93-1.086-.006-.158h-.055L4.132 18.56l-1.13.146-.487-.456.061-.746.231-.243 1.908-1.312-.006.006z"})]})})},r1=t=>{const{size:o=48,className:n=""}=t;return e.jsxRuntimeExports.jsx("div",{"aria-label":"Anthropic",className:l.cn("flex flex-col items-center justify-center flex-none rounded-full",n),style:{background:"rgb(241, 240, 232)",color:"rgb(20, 20, 19)",height:o,width:o},children:e.jsxRuntimeExports.jsxs("svg",{fill:"currentColor",fillRule:"evenodd",height:o,style:{padding:"5px"},width:o,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",className:"flex-none leading-none",children:[e.jsxRuntimeExports.jsx("title",{children:"Anthropic"}),e.jsxRuntimeExports.jsx("path",{d:"M13.827 3.52h3.603L24 20h-3.603l-6.57-16.48zm-7.258 0h3.767L16.906 20h-3.674l-1.343-3.461H5.017l-1.344 3.46H0L6.57 3.522zm4.132 9.959L8.453 7.687 6.205 13.48H10.7z"})]})})},s1=t=>{const{size:o=48,className:n=""}=t;return e.jsxRuntimeExports.jsx("div",{"aria-label":"OpenAI",className:l.cn("flex flex-col items-center justify-center flex-none rounded-full",n),style:{background:"rgb(25, 195, 125)",color:"rgb(255, 255, 255)",height:o,width:o},children:e.jsxRuntimeExports.jsxs("svg",{fill:"currentColor",fillRule:"evenodd",height:o,style:{padding:"5px"},width:o,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",className:"flex-none leading-none",children:[e.jsxRuntimeExports.jsx("title",{children:"OpenAI"}),e.jsxRuntimeExports.jsx("path",{d:"M21.55 10.004a5.416 5.416 0 00-.478-4.501c-1.217-2.09-3.662-3.166-6.05-2.66A5.59 5.59 0 0010.831 1C8.39.995 6.224 2.546 5.473 4.838A5.553 5.553 0 001.76 7.496a5.487 5.487 0 00.691 6.5 5.416 5.416 0 00.477 4.502c1.217 2.09 3.662 3.165 6.05 2.66A5.586 5.586 0 0013.168 23c2.443.006 4.61-1.546 5.361-3.84a5.553 5.553 0 003.715-2.66 5.488 5.488 0 00-.693-6.497v.001zm-8.381 11.558a4.199 4.199 0 01-2.675-.954c.034-.018.093-.05.132-.074l4.44-2.53a.71.71 0 00.364-.623v-6.176l1.877 1.069c.02.01.033.029.036.05v5.115c-.003 2.274-1.87 4.118-4.174 4.123zM4.192 17.78a4.059 4.059 0 01-.498-2.763c.032.02.09.055.131.078l4.44 2.53c.225.13.504.13.73 0l5.42-3.088v2.138a.068.068 0 01-.027.057L9.9 19.288c-1.999 1.136-4.552.46-5.707-1.51h-.001zM3.023 8.216A4.15 4.15 0 015.198 6.41l-.002.151v5.06a.711.711 0 00.364.624l5.42 3.087-1.876 1.07a.067.067 0 01-.063.005l-4.489-2.559c-1.995-1.14-2.679-3.658-1.53-5.63h.001zm15.417 3.54l-5.42-3.088L14.896 7.6a.067.067 0 01.063-.006l4.489 2.557c1.998 1.14 2.683 3.662 1.529 5.633a4.163 4.163 0 01-2.174 1.807V12.38a.71.71 0 00-.363-.623zm1.867-2.773a6.04 6.04 0 00-.132-.078l-4.44-2.53a.731.731 0 00-.729 0l-5.42 3.088V7.325a.068.068 0 01.027-.057L14.1 4.713c2-1.137 4.555-.46 5.707 1.513.487.833.664 1.809.499 2.757h.001zm-11.741 3.81l-1.877-1.068a.065.065 0 01-.036-.051V6.559c.001-2.277 1.873-4.122 4.181-4.12.976 0 1.92.338 2.671.954-.034.018-.092.05-.131.073l-4.44 2.53a.71.71 0 00-.365.623l-.003 6.173v.002zm1.02-2.168L12 9.25l2.414 1.375v2.75L12 14.75l-2.415-1.375v-2.75z"})]})})},a1=t=>{const{size:o=48,className:n=""}=t;return e.jsxRuntimeExports.jsx("div",{"aria-label":"DeepSeek",className:l.cn("flex flex-col items-center justify-center flex-none rounded-full h-16 w-16",n),style:{background:"rgb(77, 107, 254)",color:"rgb(255, 255, 255)",height:o,width:o},children:e.jsxRuntimeExports.jsxs("svg",{fill:"currentColor",fillRule:"evenodd",height:o,width:o,style:{padding:"5px"},viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",className:"flex-none leading-none",children:[e.jsxRuntimeExports.jsx("title",{children:"DeepSeek"}),e.jsxRuntimeExports.jsx("path",{d:"M23.748 4.482c-.254-.124-.364.113-.512.234-.051.039-.094.09-.137.136-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.156-.708-.311-.955-.65-.172-.241-.219-.51-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434 1.202-.422 1.84.027 1.436.633 2.58 1.838 3.393.137.093.172.187.129.323-.082.28-.18.552-.266.833-.055.179-.137.217-.329.14a5.526 5.526 0 01-1.736-1.18c-.857-.828-1.631-1.742-2.597-2.458a11.365 11.365 0 00-.689-.471c-.985-.957.13-1.743.388-1.836.27-.098.093-.432-.779-.428-.872.004-1.67.295-2.687.684a3.055 3.055 0 01-.465.137 9.597 9.597 0 00-2.883-.102c-1.885.21-3.39 1.102-4.497 2.623C.082 8.606-.231 10.684.152 12.85c.403 2.284 1.569 4.175 3.36 5.653 1.858 1.533 3.997 2.284 6.438 2.14 1.482-.085 3.133-.284 4.994-1.86.47.234.962.327 1.78.397.63.059 1.236-.03 1.705-.128.735-.156.684-.837.419-.961-2.155-1.004-1.682-.595-2.113-.926 1.096-1.296 2.746-2.642 3.392-7.003.05-.347.007-.565 0-.845-.004-.17.035-.237.23-.256a4.173 4.173 0 001.545-.475c1.396-.763 1.96-2.015 2.093-3.517.02-.23-.004-.467-.247-.588zM11.581 18c-2.089-1.642-3.102-2.183-3.52-2.16-.392.024-.321.471-.235.763.09.288.207.486.371.739.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.167-1.361-.802-2.5-1.86-3.301-3.307-.774-1.393-1.224-2.887-1.298-4.482-.02-.386.093-.522.477-.592a4.696 4.696 0 011.529-.039c2.132.312 3.946 1.265 5.468 2.774.868.86 1.525 1.887 2.202 2.891.72 1.066 1.494 2.082 2.48 2.914.348.292.625.514.891.677-.802.09-2.14.11-3.054-.614zm1-6.44a.306.306 0 01.415-.287.302.302 0 01.2.288.306.306 0 01-.31.307.303.303 0 01-.304-.308zm3.11 1.596c-.2.081-.399.151-.59.16a1.245 1.245 0 01-.798-.254c-.274-.23-.47-.358-.552-.758a1.73 1.73 0 01.016-.588c.07-.327-.008-.537-.239-.727-.187-.156-.426-.199-.688-.199a.559.559 0 01-.254-.078c-.11-.054-.2-.19-.114-.358.028-.054.16-.186.192-.21.356-.202.767-.136 1.146.016.352.144.618.408 1.001.782.391.451.462.576.685.914.176.265.336.537.445.848.067.195-.019.354-.25.452z"})]})})},i1=t=>{const{size:o=48,className:n=""}=t;return e.jsxRuntimeExports.jsx("div",{"aria-label":"Grok",className:l.cn("flex flex-col items-center justify-center flex-none rounded-full h-16 w-16",n),style:{background:"rgb(0, 0, 0)",color:"rgb(255, 255, 255)",height:o,width:o,padding:"5px"},children:e.jsxRuntimeExports.jsxs("svg",{fill:"currentColor",fillRule:"evenodd",height:o,width:o,style:{padding:"5px"},viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",className:"flex-none leading-none",children:[e.jsxRuntimeExports.jsx("title",{children:"Grok"}),e.jsxRuntimeExports.jsx("path",{d:"M9.27 15.29l7.978-5.897c.391-.29.95-.177 1.137.272.98 2.369.542 5.215-1.41 7.169-1.951 1.954-4.667 2.382-7.149 1.406l-2.711 1.257c3.889 2.661 8.611 2.003 11.562-.953 2.341-2.344 3.066-5.539 2.388-8.42l.006.007c-.983-4.232.242-5.924 2.75-9.383.06-.082.12-.164.179-.248l-3.301 3.305v-.01L9.267 15.292M7.623 16.723c-2.792-2.67-2.31-6.801.071-9.184 1.761-1.763 4.647-2.483 7.166-1.425l2.705-1.25a7.808 7.808 0 00-1.829-1A8.975 8.975 0 005.984 5.83c-2.533 2.536-3.33 6.436-1.962 9.764 1.022 2.487-.653 4.246-2.34 6.022-.599.63-1.199 1.259-1.682 1.925l7.62-6.815"})]})})},l1=t=>{const{size:o=48,className:n=""}=t;return e.jsxRuntimeExports.jsx("div",{"aria-label":"Gemini",className:l.cn("flex items-center justify-center rounded-full",n),style:{background:"rgb(255, 255, 255)",height:o,width:o,boxShadow:"rgba(0, 0, 0, 0.05) 0px 0px 0px 1px inset",color:"rgb(255, 255, 255)"},children:e.jsxRuntimeExports.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",height:o,width:o,viewBox:"0 0 24 24",style:{flex:"0 0 auto",lineHeight:1,padding:"5px"},children:[e.jsxRuntimeExports.jsx("title",{children:"Gemini"}),e.jsxRuntimeExports.jsx("path",{d:"M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z",fill:"#3186FF"}),e.jsxRuntimeExports.jsx("path",{d:"M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z",fill:"url(#lobe-icons-gemini-fill-0)"}),e.jsxRuntimeExports.jsx("path",{d:"M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z",fill:"url(#lobe-icons-gemini-fill-1)"}),e.jsxRuntimeExports.jsx("path",{d:"M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z",fill:"url(#lobe-icons-gemini-fill-2)"}),e.jsxRuntimeExports.jsxs("defs",{children:[e.jsxRuntimeExports.jsxs("linearGradient",{id:"lobe-icons-gemini-fill-0",x1:"7",x2:"11",y1:"15.5",y2:"12",gradientUnits:"userSpaceOnUse",children:[e.jsxRuntimeExports.jsx("stop",{stopColor:"#08B962"}),e.jsxRuntimeExports.jsx("stop",{offset:"1",stopColor:"#08B962",stopOpacity:"0"})]}),e.jsxRuntimeExports.jsxs("linearGradient",{id:"lobe-icons-gemini-fill-1",x1:"8",x2:"11.5",y1:"5.5",y2:"11",gradientUnits:"userSpaceOnUse",children:[e.jsxRuntimeExports.jsx("stop",{stopColor:"#F94543"}),e.jsxRuntimeExports.jsx("stop",{offset:"1",stopColor:"#F94543",stopOpacity:"0"})]}),e.jsxRuntimeExports.jsxs("linearGradient",{id:"lobe-icons-gemini-fill-2",x1:"3.5",x2:"17.5",y1:"13.5",y2:"12",gradientUnits:"userSpaceOnUse",children:[e.jsxRuntimeExports.jsx("stop",{stopColor:"#FABC12"}),e.jsxRuntimeExports.jsx("stop",{offset:".46",stopColor:"#FABC12",stopOpacity:"0"})]})]})]})})},R={claude:n1,anthropic:r1,openai:s1,deepseek:a1,grok:i1,gemini:l1},q=(t,o={})=>{const n=R[t];return n?e.jsxRuntimeExports.jsx(n,{...o}):e.jsxRuntimeExports.jsx(t1.BotIcon,{...o})},c1=(t,o={})=>t.type==="core"?q(t.provider,o):e.jsxRuntimeExports.jsx("img",{src:t.image,alt:t.name,className:l.cn("h-6 w-6",o.className),...o});exports.Alert=m.Alert;exports.AlertDescription=m.AlertDescription;exports.AlertTitle=m.AlertTitle;exports.AlertDialog=D.AlertDialog;exports.Avatar=x.Avatar;exports.AvatarFallback=x.AvatarFallback;exports.AvatarImage=x.AvatarImage;exports.Badge=M.Badge;exports.badgeVariants=M.badgeVariants;exports.Button=_.Button;exports.Calendar=E.Calendar;exports.Card=c.Card;exports.CardContent=c.CardContent;exports.CardDescription=c.CardDescription;exports.CardFooter=c.CardFooter;exports.CardHeader=c.CardHeader;exports.CardTitle=c.CardTitle;exports.Carousel=T.Carousel;exports.BarChart=g.BarChart;exports.DonutChart=g.DonutChart;exports.LineChart=g.LineChart;exports.Checkbox=I.Checkbox;exports.Collapse=y.Collapse;exports.Command=a.Command;exports.CommandDialog=a.CommandDialog;exports.CommandEmpty=a.CommandEmpty;exports.CommandGroup=a.CommandGroup;exports.CommandInput=a.CommandInput;exports.CommandItem=a.CommandItem;exports.CommandList=a.CommandList;exports.CommandSeparator=a.CommandSeparator;exports.CommandMenu=f.CommandMenu;exports.CommandMenuDemo=f.CommandMenuDemo;exports.ConfirmationModal=L.ConfirmationModal;exports.ContextMenu=r.ContextMenu;exports.ContextMenuCheckboxItem=r.ContextMenuCheckboxItem;exports.ContextMenuGroup=r.ContextMenuGroup;exports.ContextMenuItem=r.ContextMenuItem;exports.ContextMenuLabel=r.ContextMenuLabel;exports.ContextMenuRadioGroup=r.ContextMenuRadioGroup;exports.ContextMenuRadioItem=r.ContextMenuRadioItem;exports.ContextMenuSeparator=r.ContextMenuSeparator;exports.ContextMenuSub=r.ContextMenuSub;exports.ContextMenuSubContent=r.ContextMenuSubContent;exports.ContextMenuSubTrigger=r.ContextMenuSubTrigger;exports.Dialog=s.Dialog;exports.DialogClose=s.DialogClose;exports.DialogContent=s.DialogContent;exports.DialogDescription=s.DialogDescription;exports.DialogFooter=s.DialogFooter;exports.DialogHeader=s.DialogHeader;exports.DialogOverlay=s.DialogOverlay;exports.DialogPortal=s.DialogPortal;exports.DialogTitle=s.DialogTitle;exports.DialogTrigger=s.DialogTrigger;exports.DropdownMenu=p.DropdownMenu;exports.DropdownMenuContent=p.DropdownMenuContent;exports.DropdownMenuGroup=p.DropdownMenuGroup;exports.DropdownMenuItem=p.DropdownMenuItem;exports.DropdownMenuSeparator=p.DropdownMenuSeparator;exports.DropdownMenuTrigger=p.DropdownMenuTrigger;exports.Dropzone=A.Dropzone;exports.ImageCropper=z.ImageCropper;exports.ImageCropperModal=k.ImageCropperModal;exports.Input=G.Input;exports.Label=N.Label;exports.Loader=B.Loader;exports.LoadingPlaceholder=O.LoadingPlaceholder;exports.Markdown=S.Markdown;exports.codeThemes=S.codeThemes;exports.Mention=P.Mention;exports.Modal=F.Modal;exports.MonacoEditor=u.MonacoEditor;exports.defaultOptions=u.defaultOptions;exports.languageOptions=u.languageOptions;exports.setupVariableSuggestions=u.setupVariableSuggestions;exports.updateVariableSuggestions=u.updateVariableSuggestions;exports.NotificationContainer=V.NotificationContainer;exports.Popover=h.Popover;exports.PopoverContent=h.PopoverContent;exports.PopoverTrigger=h.PopoverTrigger;exports.Progress=H.Progress;exports.RadioGroup=w.RadioGroup;exports.RadioGroupItem=w.RadioGroupItem;exports.ScrollArea=v.ScrollArea;exports.ScrollBar=v.ScrollBar;exports.SearchableSelect=i.SearchableSelect;exports.Select=i.Select;exports.SelectContent=i.SelectContent;exports.SelectGroup=i.SelectGroup;exports.SelectItem=i.SelectItem;exports.SelectLabel=i.SelectLabel;exports.SelectTrigger=i.SelectTrigger;exports.SelectValue=i.SelectValue;exports.SelectionBar=U.SelectionBar;exports.Separator=J.Separator;exports.Sheet=K.Sheet;exports.Skeleton=Q.Skeleton;exports.Slider=W.Slider;exports.StepLayout=C.StepLayout;exports.Stepper=C.Stepper;exports.StepperModal=C.StepperModal;exports.Switch=X.Switch;exports.Table=Y.Table;exports.TableEmpty=Z.TableEmpty;exports.TableMobile=$.TableMobile;exports.Tabs=d.Tabs;exports.TabsContent=d.TabsContent;exports.TabsList=d.TabsList;exports.TabsTrigger=d.TabsTrigger;exports.ANSI=j.ANSI;exports.LOG_COLORS=j.LOG_COLORS;exports.colorize=j.colorize;exports.Textarea=e1.Textarea;exports.Tooltip=o1.Tooltip;exports.ToastContainer=b.ToastContainer;exports.toast=b.toast;exports.useToast=b.useToast;exports.cn=l.cn;exports.Icons=R;exports.getAssistantIcon=c1;exports.getLLMIcon=q;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/icons/providers/claude.tsx","../src/icons/providers/anthropic.tsx","../src/icons/providers/openai.tsx","../src/icons/providers/deepseek.tsx","../src/icons/providers/grok.tsx","../src/icons/providers/gemini.tsx","../src/icons/icons.ts","../src/lib/icons.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport type { IconProps } from \"./types\";\n\nexport const ClaudeIcon = (props: IconProps) => {\n const { size = 48, className = \"\" } = props;\n \n return (\n <div\n aria-label=\"Claude\"\n className={cn(\"flex flex-col items-center justify-center flex-none text-white rounded-full\", className)}\n style={{\n background: \"rgb(217, 119, 87)\",\n height: size,\n width: size,\n }}\n >\n <svg\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n height={size}\n style={{\n padding: \"5px\",\n }}\n width={size}\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"flex-none leading-none\"\n >\n <title>Claude</title>\n <path d=\"M4.709 15.955l4.72-2.647.08-.23-.08-.128H9.2l-.79-.048-2.698-.073-2.339-.097-2.266-.122-.571-.121L0 11.784l.055-.352.48-.321.686.06 1.52.103 2.278.158 1.652.097 2.449.255h.389l.055-.157-.134-.098-.103-.097-2.358-1.596-2.552-1.688-1.336-.972-.724-.491-.364-.462-.158-1.008.656-.722.881.06.225.061.893.686 1.908 1.476 2.491 1.833.365.304.145-.103.019-.073-.164-.274-1.355-2.446-1.446-2.49-.644-1.032-.17-.619a2.97 2.97 0 01-.104-.729L6.283.134 6.696 0l.996.134.42.364.62 1.414 1.002 2.229 1.555 3.03.456.898.243.832.091.255h.158V9.01l.128-1.706.237-2.095.23-2.695.08-.76.376-.91.747-.492.584.28.48.685-.067.444-.286 1.851-.559 2.903-.364 1.942h.212l.243-.242.985-1.306 1.652-2.064.73-.82.85-.904.547-.431h1.033l.76 1.129-.34 1.166-1.064 1.347-.881 1.142-1.264 1.7-.79 1.36.073.11.188-.02 2.856-.606 1.543-.28 1.841-.315.833.388.091.395-.328.807-1.969.486-2.309.462-3.439.813-.042.03.049.061 1.549.146.662.036h1.622l3.02.225.79.522.474.638-.079.485-1.215.62-1.64-.389-3.829-.91-1.312-.329h-.182v.11l1.093 1.068 2.006 1.81 2.509 2.33.127.578-.322.455-.34-.049-2.205-1.657-.851-.747-1.926-1.62h-.128v.17l.444.649 2.345 3.521.122 1.08-.17.353-.608.213-.668-.122-1.374-1.925-1.415-2.167-1.143-1.943-.14.08-.674 7.254-.316.37-.729.28-.607-.461-.322-.747.322-1.476.389-1.924.315-1.53.286-1.9.17-.632-.012-.042-.14.018-1.434 1.967-2.18 2.945-1.726 1.845-.414.164-.717-.37.067-.662.401-.589 2.388-3.036 1.44-1.882.93-1.086-.006-.158h-.055L4.132 18.56l-1.13.146-.487-.456.061-.746.231-.243 1.908-1.312-.006.006z\"></path>\n </svg>\n </div>\n );\n};","import { cn } from \"@/lib/utils\";\nimport type { IconProps } from \"./types\";\n\nexport const AnthropicIcon = (props: IconProps) => {\n const { size = 48, className = \"\" } = props;\n return (\n <div\n aria-label=\"Anthropic\"\n className={cn(\"flex flex-col items-center justify-center flex-none rounded-full\", className)}\n style={{\n background: \"rgb(241, 240, 232)\",\n color: \"rgb(20, 20, 19)\",\n height: size,\n width: size,\n }}\n >\n <svg\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n height={size}\n style={{\n padding: \"5px\",\n }}\n width={size}\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"flex-none leading-none\"\n >\n <title>Anthropic</title>\n <path d=\"M13.827 3.52h3.603L24 20h-3.603l-6.57-16.48zm-7.258 0h3.767L16.906 20h-3.674l-1.343-3.461H5.017l-1.344 3.46H0L6.57 3.522zm4.132 9.959L8.453 7.687 6.205 13.48H10.7z\"></path>\n </svg>\n </div>\n );\n};\n","import { cn } from \"@/lib/utils\";\nimport type { IconProps } from \"./types\";\n\nexport const OpenAIIcon = (props: IconProps) => {\n const { size = 48, className = \"\" } = props;\n \n return (\n <div\n aria-label=\"OpenAI\"\n className={cn(\"flex flex-col items-center justify-center flex-none rounded-full\", className)}\n style={{\n background: \"rgb(25, 195, 125)\",\n color: \"rgb(255, 255, 255)\",\n height: size,\n width: size,\n }}\n >\n <svg\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n height={size}\n style={{\n padding: \"5px\",\n }}\n width={size}\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"flex-none leading-none\"\n >\n <title>OpenAI</title>\n <path d=\"M21.55 10.004a5.416 5.416 0 00-.478-4.501c-1.217-2.09-3.662-3.166-6.05-2.66A5.59 5.59 0 0010.831 1C8.39.995 6.224 2.546 5.473 4.838A5.553 5.553 0 001.76 7.496a5.487 5.487 0 00.691 6.5 5.416 5.416 0 00.477 4.502c1.217 2.09 3.662 3.165 6.05 2.66A5.586 5.586 0 0013.168 23c2.443.006 4.61-1.546 5.361-3.84a5.553 5.553 0 003.715-2.66 5.488 5.488 0 00-.693-6.497v.001zm-8.381 11.558a4.199 4.199 0 01-2.675-.954c.034-.018.093-.05.132-.074l4.44-2.53a.71.71 0 00.364-.623v-6.176l1.877 1.069c.02.01.033.029.036.05v5.115c-.003 2.274-1.87 4.118-4.174 4.123zM4.192 17.78a4.059 4.059 0 01-.498-2.763c.032.02.09.055.131.078l4.44 2.53c.225.13.504.13.73 0l5.42-3.088v2.138a.068.068 0 01-.027.057L9.9 19.288c-1.999 1.136-4.552.46-5.707-1.51h-.001zM3.023 8.216A4.15 4.15 0 015.198 6.41l-.002.151v5.06a.711.711 0 00.364.624l5.42 3.087-1.876 1.07a.067.067 0 01-.063.005l-4.489-2.559c-1.995-1.14-2.679-3.658-1.53-5.63h.001zm15.417 3.54l-5.42-3.088L14.896 7.6a.067.067 0 01.063-.006l4.489 2.557c1.998 1.14 2.683 3.662 1.529 5.633a4.163 4.163 0 01-2.174 1.807V12.38a.71.71 0 00-.363-.623zm1.867-2.773a6.04 6.04 0 00-.132-.078l-4.44-2.53a.731.731 0 00-.729 0l-5.42 3.088V7.325a.068.068 0 01.027-.057L14.1 4.713c2-1.137 4.555-.46 5.707 1.513.487.833.664 1.809.499 2.757h.001zm-11.741 3.81l-1.877-1.068a.065.065 0 01-.036-.051V6.559c.001-2.277 1.873-4.122 4.181-4.12.976 0 1.92.338 2.671.954-.034.018-.092.05-.131.073l-4.44 2.53a.71.71 0 00-.365.623l-.003 6.173v.002zm1.02-2.168L12 9.25l2.414 1.375v2.75L12 14.75l-2.415-1.375v-2.75z\"></path>\n </svg>\n </div>\n );\n};\n","import { cn } from \"@/lib/utils\";\nimport type { IconProps } from \"./types\";\n\nexport const DeepSeekIcon = (props: IconProps) => {\n const { size = 48, className = \"\" } = props;\n\n return (\n <div\n aria-label=\"DeepSeek\"\n className={cn(\"flex flex-col items-center justify-center flex-none rounded-full h-16 w-16\", className)}\n style={{ \n background: \"rgb(77, 107, 254)\", \n color: \"rgb(255, 255, 255)\", \n height: size, \n width: size,\n }}\n >\n <svg\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n height={size}\n width={size}\n style={{ padding: \"5px\" }}\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"flex-none leading-none\"\n >\n <title>DeepSeek</title>\n <path d=\"M23.748 4.482c-.254-.124-.364.113-.512.234-.051.039-.094.09-.137.136-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.156-.708-.311-.955-.65-.172-.241-.219-.51-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434 1.202-.422 1.84.027 1.436.633 2.58 1.838 3.393.137.093.172.187.129.323-.082.28-.18.552-.266.833-.055.179-.137.217-.329.14a5.526 5.526 0 01-1.736-1.18c-.857-.828-1.631-1.742-2.597-2.458a11.365 11.365 0 00-.689-.471c-.985-.957.13-1.743.388-1.836.27-.098.093-.432-.779-.428-.872.004-1.67.295-2.687.684a3.055 3.055 0 01-.465.137 9.597 9.597 0 00-2.883-.102c-1.885.21-3.39 1.102-4.497 2.623C.082 8.606-.231 10.684.152 12.85c.403 2.284 1.569 4.175 3.36 5.653 1.858 1.533 3.997 2.284 6.438 2.14 1.482-.085 3.133-.284 4.994-1.86.47.234.962.327 1.78.397.63.059 1.236-.03 1.705-.128.735-.156.684-.837.419-.961-2.155-1.004-1.682-.595-2.113-.926 1.096-1.296 2.746-2.642 3.392-7.003.05-.347.007-.565 0-.845-.004-.17.035-.237.23-.256a4.173 4.173 0 001.545-.475c1.396-.763 1.96-2.015 2.093-3.517.02-.23-.004-.467-.247-.588zM11.581 18c-2.089-1.642-3.102-2.183-3.52-2.16-.392.024-.321.471-.235.763.09.288.207.486.371.739.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.167-1.361-.802-2.5-1.86-3.301-3.307-.774-1.393-1.224-2.887-1.298-4.482-.02-.386.093-.522.477-.592a4.696 4.696 0 011.529-.039c2.132.312 3.946 1.265 5.468 2.774.868.86 1.525 1.887 2.202 2.891.72 1.066 1.494 2.082 2.48 2.914.348.292.625.514.891.677-.802.09-2.14.11-3.054-.614zm1-6.44a.306.306 0 01.415-.287.302.302 0 01.2.288.306.306 0 01-.31.307.303.303 0 01-.304-.308zm3.11 1.596c-.2.081-.399.151-.59.16a1.245 1.245 0 01-.798-.254c-.274-.23-.47-.358-.552-.758a1.73 1.73 0 01.016-.588c.07-.327-.008-.537-.239-.727-.187-.156-.426-.199-.688-.199a.559.559 0 01-.254-.078c-.11-.054-.2-.19-.114-.358.028-.054.16-.186.192-.21.356-.202.767-.136 1.146.016.352.144.618.408 1.001.782.391.451.462.576.685.914.176.265.336.537.445.848.067.195-.019.354-.25.452z\"></path>\n </svg>\n </div>\n );\n};\n","import { cn } from \"@/lib/utils\";\nimport type { IconProps } from \"./types\";\n\nexport const GrokIcon = (props: IconProps) => {\n const { size = 48, className = \"\" } = props;\n return (\n <div\n aria-label=\"Grok\"\n className={cn(\"flex flex-col items-center justify-center flex-none rounded-full h-16 w-16\", className)}\n style={{ \n background: \"rgb(0, 0, 0)\",\n color: \"rgb(255, 255, 255)\",\n height: size,\n width: size,\n padding: \"5px\",\n }}\n >\n <svg\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n height={size}\n width={size}\n style={{ padding: \"5px\" }}\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"flex-none leading-none\"\n >\n <title>Grok</title>\n <path d=\"M9.27 15.29l7.978-5.897c.391-.29.95-.177 1.137.272.98 2.369.542 5.215-1.41 7.169-1.951 1.954-4.667 2.382-7.149 1.406l-2.711 1.257c3.889 2.661 8.611 2.003 11.562-.953 2.341-2.344 3.066-5.539 2.388-8.42l.006.007c-.983-4.232.242-5.924 2.75-9.383.06-.082.12-.164.179-.248l-3.301 3.305v-.01L9.267 15.292M7.623 16.723c-2.792-2.67-2.31-6.801.071-9.184 1.761-1.763 4.647-2.483 7.166-1.425l2.705-1.25a7.808 7.808 0 00-1.829-1A8.975 8.975 0 005.984 5.83c-2.533 2.536-3.33 6.436-1.962 9.764 1.022 2.487-.653 4.246-2.34 6.022-.599.63-1.199 1.259-1.682 1.925l7.62-6.815\"></path>\n </svg>\n </div>\n );\n};\n","import { cn } from \"@/lib/utils\";\nimport type { IconProps } from \"./types\";\n\nexport const GeminiIcon = (props: IconProps) => {\n const { size = 48, className = \"\" } = props;\n \n return (\n <div\n aria-label=\"Gemini\"\n className={cn(\"flex items-center justify-center rounded-full\", className)}\n style={{\n background: \"rgb(255, 255, 255)\",\n height: size,\n width: size,\n boxShadow: \"rgba(0, 0, 0, 0.05) 0px 0px 0px 1px inset\",\n color: \"rgb(255, 255, 255)\",\n }}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height={size}\n width={size}\n viewBox=\"0 0 24 24\"\n style={{ flex: \"0 0 auto\", lineHeight: 1, padding: \"5px\" }}\n >\n <title>Gemini</title>\n <path\n d=\"M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z\"\n fill=\"#3186FF\"\n />\n <path\n d=\"M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z\"\n fill=\"url(#lobe-icons-gemini-fill-0)\"\n />\n <path\n d=\"M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z\"\n fill=\"url(#lobe-icons-gemini-fill-1)\"\n />\n <path\n d=\"M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z\"\n fill=\"url(#lobe-icons-gemini-fill-2)\"\n />\n <defs>\n <linearGradient\n id=\"lobe-icons-gemini-fill-0\"\n x1=\"7\"\n x2=\"11\"\n y1=\"15.5\"\n y2=\"12\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor=\"#08B962\" />\n <stop offset=\"1\" stopColor=\"#08B962\" stopOpacity=\"0\" />\n </linearGradient>\n <linearGradient\n id=\"lobe-icons-gemini-fill-1\"\n x1=\"8\"\n x2=\"11.5\"\n y1=\"5.5\"\n y2=\"11\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor=\"#F94543\" />\n <stop offset=\"1\" stopColor=\"#F94543\" stopOpacity=\"0\" />\n </linearGradient>\n <linearGradient\n id=\"lobe-icons-gemini-fill-2\"\n x1=\"3.5\"\n x2=\"17.5\"\n y1=\"13.5\"\n y2=\"12\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor=\"#FABC12\" />\n <stop offset=\".46\" stopColor=\"#FABC12\" stopOpacity=\"0\" />\n </linearGradient>\n </defs>\n </svg>\n </div>\n );\n};","import { \n AnthropicIcon,\n ClaudeIcon,\n DeepSeekIcon,\n GrokIcon,\n OpenAIIcon,\n GeminiIcon,\n} from \"./providers\";\n\nexport const Icons = {\n claude: ClaudeIcon,\n anthropic: AnthropicIcon,\n openai: OpenAIIcon,\n deepseek: DeepSeekIcon,\n grok: GrokIcon,\n gemini: GeminiIcon,\n}; ","import { Icons } from \"@/icons/icons\";\nimport { BotIcon } from \"lucide-react\";\nimport { cn } from \"./utils\";\n\ninterface Props {\n className?: string;\n size?: number;\n}\n\ntype AssistantType = \"core\" | \"agent\";\n\ninterface Assistant {\n provider: string;\n name: string;\n image?: string;\n type: AssistantType;\n}\n\nexport const getLLMIcon = (provider: string, props: Props = {}) => {\n const Icon = Icons[provider as keyof typeof Icons];\n if (!Icon) {\n return <BotIcon {...props} />;\n }\n return <Icon {...props} />;\n};\n\nexport const getAssistantIcon = (assistant: Assistant, props: Props = {}) => {\n if (assistant.type === \"core\") {\n return getLLMIcon(assistant.provider, props);\n }\n return <img src={assistant.image} alt={assistant.name} className={cn(\"h-6 w-6\", props.className)} {...props} />;\n};"],"names":["ClaudeIcon","props","size","className","jsx","cn","jsxs","AnthropicIcon","OpenAIIcon","DeepSeekIcon","GrokIcon","GeminiIcon","Icons","getLLMIcon","provider","Icon","BotIcon","getAssistantIcon","assistant"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";const e=require("./jsx-runtime-BYECrxsp.cjs"),o=require("./utils-DSKoFOjv.cjs"),i=require("framer-motion"),C=require("./components/modal.js"),x=require("./components/button.js");function k({steps:n,className:r}){return e.jsxRuntimeExports.jsx("div",{className:o.cn("py-6 space-y-5",r),children:n.map((t,s)=>e.jsxRuntimeExports.jsxs(i.motion.div,{className:"relative",initial:{opacity:0,y:10},animate:{opacity:1,y:0},transition:{delay:s*.1,duration:.3},children:[s!==0&&e.jsxRuntimeExports.jsx(i.motion.div,{className:o.cn("absolute left-[15px] -top-[26px] w-[2px] h-[24px] origin-top",t.isCompleted||t.isCurrent?"bg-primary/60":"bg-border"),initial:{scaleY:0},animate:{scaleY:1},transition:{delay:s*.1+.2,duration:.2}}),e.jsxRuntimeExports.jsxs("div",{className:"flex gap-4 items-start",children:[e.jsxRuntimeExports.jsx(i.motion.div,{className:o.cn("w-[30px] h-[30px] rounded-full flex items-center justify-center text-xs font-medium shrink-0 transition-all",t.isCompleted&&"bg-primary text-primary-foreground shadow-sm shadow-primary/20",t.isCurrent&&"border-2 border-primary bg-primary/10 text-primary",!t.isCompleted&&!t.isCurrent&&"border-2 border-muted-foreground/30 text-muted-foreground"),whileHover:{scale:1.05},whileTap:{scale:.98},transition:{duration:.2},children:t.isCompleted?e.jsxRuntimeExports.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:e.jsxRuntimeExports.jsx("path",{d:"M7.75 12.75L10 15.25L16.25 8.75",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})}):s+1}),e.jsxRuntimeExports.jsxs("div",{className:"space-y-0.5 pt-0.5",children:[e.jsxRuntimeExports.jsx("h3",{className:o.cn("text-sm font-medium transition-colors",t.isCurrent&&"text-primary",t.isCompleted&&"text-foreground",!t.isCurrent&&!t.isCompleted&&"text-muted-foreground"),children:t.title}),t.description&&e.jsxRuntimeExports.jsx("p",{className:o.cn("text-xs text-muted-foreground leading-relaxed",t.isCurrent&&"text-muted-foreground/90"),children:t.description})]})]})]},t.title))})}function c({children:n,title:r,sidebar:t,subclassName:s}){return e.jsxRuntimeExports.jsxs("div",{className:"flex h-scroll-xl overflow-hidden",children:[e.jsxRuntimeExports.jsx(i.motion.div,{className:"border-r bg-gradient-to-b from-muted/30 to-muted/60 sticky top-0 self-start h-full max-h-[calc(100vh-10rem)]",initial:{opacity:0,x:-10},animate:{opacity:1,x:0},transition:{duration:.3,ease:"easeInOut"},children:t}),e.jsxRuntimeExports.jsxs(i.motion.div,{className:o.cn("flex-1 px-5 py-4 overflow-y-auto",s),initial:{opacity:0,x:5},animate:{opacity:1,x:0},transition:{duration:.3,delay:.1,ease:"easeInOut"},children:[r&&e.jsxRuntimeExports.jsx("div",{className:"flex items-center mb-5",children:e.jsxRuntimeExports.jsx("h2",{className:"text-lg font-semibold text-foreground",children:r})}),e.jsxRuntimeExports.jsx("div",{className:"h-full",children:n})]})]})}function L({isOpen:n,onClose:r,title:t,description:s,icon:m,currentStep:a,totalSteps:l,onBack:p,onNext:j,onComplete:h,sidebar:f,children:y,continueText:g="Continue",completeText:v="Complete",isNextDisabled:d=!1,isNextLoading:u=!1,size:R="2xl",stepLayoutSubclassName:b,isShowBackButton:E=!0,isModelContentScrollable:N=!1}){const w=(a+1)/l*100;return e.jsxRuntimeExports.jsxs(C.Modal,{isOpen:n,onClose:r,size:R,showClose:!0,title:t,isContentScrollable:N,description:s,icon:m&&e.jsxRuntimeExports.jsx("div",{className:"bg-primary/10 p-2 rounded-full",children:e.jsxRuntimeExports.jsx(m,{className:"h-5 w-5 text-primary"})}),contentClassName:"px-0 pt-0 pb-0",footer:e.jsxRuntimeExports.jsxs("div",{className:"w-full flex items-center justify-between",children:[e.jsxRuntimeExports.jsx("div",{className:"flex-1",children:a>0&&E&&e.jsxRuntimeExports.jsx(x.Button,{variant:"ghost",onClick:p,size:"sm",className:"text-muted-foreground hover:text-foreground transition-colors",children:"Back"})}),e.jsxRuntimeExports.jsxs("div",{className:"flex-1 flex justify-center text-xs text-muted-foreground",children:["Step ",a+1," of ",l]}),e.jsxRuntimeExports.jsx("div",{className:"flex-1 flex justify-end",children:a<l-1?e.jsxRuntimeExports.jsx(x.Button,{onClick:j,disabled:d,isLoading:u,size:"sm",className:"bg-primary text-primary-foreground hover:bg-primary/90",children:g}):e.jsxRuntimeExports.jsx(x.Button,{onClick:h,disabled:d,isLoading:u,size:"sm",className:"bg-primary text-primary-foreground hover:bg-primary/90",children:v})})]}),children:[e.jsxRuntimeExports.jsx("div",{className:"w-full h-0.5 bg-muted relative mb-1",children:e.jsxRuntimeExports.jsx(i.motion.div,{className:"absolute top-0 left-0 h-full bg-primary",initial:{width:0},animate:{width:`${w}%`},transition:{duration:.3,ease:"easeInOut"}})}),e.jsxRuntimeExports.jsx(c,{sidebar:f,subclassName:b,children:e.jsxRuntimeExports.jsx(i.AnimatePresence,{mode:"wait",children:e.jsxRuntimeExports.jsx(i.motion.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},exit:{opacity:0,y:-10},transition:{duration:.25,ease:"easeInOut"},className:"h-full",children:y},a)})})]})}exports.StepLayout=c;exports.Stepper=k;exports.StepperModal=L;
|
|
2
|
+
//# sourceMappingURL=stepper-modal-CPlBpxWy.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stepper-modal-CPlBpxWy.cjs","sources":["../src/components/stepper/stepper.tsx","../src/components/stepper/step-layout.tsx","../src/components/stepper/stepper-modal.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\"\nimport { motion } from \"framer-motion\"\nimport { Step } from \"./types\"\n\ninterface StepperProps {\n steps: Step[]\n className?: string\n}\n\nexport function Stepper({ steps, className }: StepperProps) {\n return (\n <div className={cn(\"py-6 space-y-5\", className)}>\n {steps.map((step, index) => (\n <motion.div \n key={step.title} \n className=\"relative\"\n initial={{ opacity: 0, y: 10 }}\n animate={{ opacity: 1, y: 0 }}\n transition={{ delay: index * 0.1, duration: 0.3 }}\n >\n {/* Connector line between steps */}\n {index !== 0 && (\n <motion.div \n className={cn(\n \"absolute left-[15px] -top-[26px] w-[2px] h-[24px] origin-top\",\n step.isCompleted || step.isCurrent ? \"bg-primary/60\" : \"bg-border\"\n )}\n initial={{ scaleY: 0 }}\n animate={{ scaleY: 1 }}\n transition={{ delay: index * 0.1 + 0.2, duration: 0.2 }}\n />\n )}\n \n <div className=\"flex gap-4 items-start\">\n {/* Step indicator circle */}\n <motion.div \n className={cn(\n \"w-[30px] h-[30px] rounded-full flex items-center justify-center text-xs font-medium shrink-0 transition-all\",\n step.isCompleted && \"bg-primary text-primary-foreground shadow-sm shadow-primary/20\",\n step.isCurrent && \"border-2 border-primary bg-primary/10 text-primary\",\n !step.isCompleted && !step.isCurrent && \"border-2 border-muted-foreground/30 text-muted-foreground\"\n )}\n whileHover={{ scale: 1.05 }}\n whileTap={{ scale: 0.98 }}\n transition={{ duration: 0.2 }}\n >\n {step.isCompleted ? (\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M7.75 12.75L10 15.25L16.25 8.75\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n ) : (\n index + 1\n )}\n </motion.div>\n \n {/* Step content */}\n <div className=\"space-y-0.5 pt-0.5\">\n <h3 className={cn(\n \"text-sm font-medium transition-colors\",\n step.isCurrent && \"text-primary\",\n step.isCompleted && \"text-foreground\",\n !step.isCurrent && !step.isCompleted && \"text-muted-foreground\"\n )}>\n {step.title}\n </h3>\n {step.description && (\n <p className={cn(\n \"text-xs text-muted-foreground leading-relaxed\",\n step.isCurrent && \"text-muted-foreground/90\"\n )}>\n {step.description}\n </p>\n )}\n </div>\n </div>\n </motion.div>\n ))}\n </div>\n )\n} ","import { cn } from \"@/lib/utils\"\nimport { motion } from \"framer-motion\"\n\ninterface StepLayoutProps {\n children: React.ReactNode\n title?: string\n sidebar?: React.ReactNode\n subclassName?: string\n}\n\nexport function StepLayout({ \n children, \n title,\n sidebar,\n subclassName,\n}: StepLayoutProps) {\n return (\n <div className=\"flex h-scroll-xl overflow-hidden\">\n {/* Sidebar with sticky positioning */}\n <motion.div \n className=\"border-r bg-gradient-to-b from-muted/30 to-muted/60 sticky top-0 self-start h-full max-h-[calc(100vh-10rem)]\"\n initial={{ opacity: 0, x: -10 }}\n animate={{ opacity: 1, x: 0 }}\n transition={{ duration: 0.3, ease: \"easeInOut\" }}\n >\n {sidebar}\n </motion.div>\n \n {/* Main content area */}\n <motion.div \n className={cn(\"flex-1 px-5 py-4 overflow-y-auto\", subclassName)}\n initial={{ opacity: 0, x: 5 }}\n animate={{ opacity: 1, x: 0 }}\n transition={{ duration: 0.3, delay: 0.1, ease: \"easeInOut\" }}\n >\n {title && (\n <div className=\"flex items-center mb-5\">\n <h2 className=\"text-lg font-semibold text-foreground\">{title}</h2>\n </div>\n )}\n <div className=\"h-full\">\n {children}\n </div>\n </motion.div>\n </div>\n )\n} ","import { Modal, ModalProps } from \"../modal\"\nimport { StepLayout } from \"./step-layout\"\nimport { Button } from \"../button\"\nimport { motion, AnimatePresence } from \"framer-motion\"\nimport { cn } from \"@/lib/utils\"\n\ninterface StepperModalProps {\n isOpen: boolean\n onClose: () => void\n title: string\n description?: string\n icon?: React.ComponentType<any>\n currentStep: number\n totalSteps: number\n onBack: () => void\n onNext: () => void\n onComplete: () => void\n sidebar: React.ReactNode\n children: React.ReactNode\n continueText?: string\n completeText?: string\n isNextDisabled?: boolean\n isNextLoading?: boolean\n size?: ModalProps['size']\n stepLayoutSubclassName?: string \n isShowClose?: boolean\n isShowBackButton?: boolean\n isModelContentScrollable?: boolean\n}\n\nexport function StepperModal({\n isOpen,\n onClose,\n title,\n description,\n icon: Icon,\n currentStep,\n totalSteps,\n onBack,\n onNext,\n onComplete,\n sidebar,\n children,\n continueText = \"Continue\",\n completeText = \"Complete\",\n isNextDisabled = false,\n isNextLoading = false,\n size = \"2xl\",\n stepLayoutSubclassName,\n isShowBackButton = true,\n isModelContentScrollable = false\n}: StepperModalProps) {\n // Calculate progress percentage\n const progress = ((currentStep + 1) / totalSteps) * 100;\n \n return (\n <Modal \n isOpen={isOpen} \n onClose={onClose}\n size={size}\n showClose={true}\n title={title}\n isContentScrollable={isModelContentScrollable}\n description={description}\n icon={Icon && (\n <div className=\"bg-primary/10 p-2 rounded-full\">\n <Icon className=\"h-5 w-5 text-primary\" />\n </div>\n )}\n contentClassName=\"px-0 pt-0 pb-0\"\n footer={\n <div className=\"w-full flex items-center justify-between\">\n <div className=\"flex-1\">\n {currentStep > 0 && isShowBackButton && (\n <Button \n variant=\"ghost\" \n onClick={onBack}\n size=\"sm\"\n className=\"text-muted-foreground hover:text-foreground transition-colors\"\n >\n Back\n </Button>\n )}\n </div>\n \n <div className=\"flex-1 flex justify-center text-xs text-muted-foreground\">\n Step {currentStep + 1} of {totalSteps}\n </div>\n \n <div className=\"flex-1 flex justify-end\">\n {currentStep < totalSteps - 1 ? (\n <Button \n onClick={onNext} \n disabled={isNextDisabled} \n isLoading={isNextLoading}\n size=\"sm\"\n className=\"bg-primary text-primary-foreground hover:bg-primary/90\"\n >\n {continueText}\n </Button>\n ) : (\n <Button \n onClick={onComplete} \n disabled={isNextDisabled} \n isLoading={isNextLoading}\n size=\"sm\"\n className=\"bg-primary text-primary-foreground hover:bg-primary/90\"\n >\n {completeText}\n </Button>\n )}\n </div>\n </div>\n }\n >\n {/* Progress bar */}\n <div className=\"w-full h-0.5 bg-muted relative mb-1\">\n <motion.div \n className=\"absolute top-0 left-0 h-full bg-primary\"\n initial={{ width: 0 }}\n animate={{ width: `${progress}%` }}\n transition={{ duration: 0.3, ease: \"easeInOut\" }}\n />\n </div>\n \n <StepLayout\n sidebar={sidebar}\n subclassName={stepLayoutSubclassName}\n >\n <AnimatePresence mode=\"wait\">\n <motion.div\n key={currentStep}\n initial={{ opacity: 0, y: 10 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -10 }}\n transition={{ duration: 0.25, ease: \"easeInOut\" }}\n className=\"h-full\"\n >\n {children}\n </motion.div>\n </AnimatePresence>\n </StepLayout>\n </Modal>\n )\n} "],"names":["Stepper","steps","className","jsx","cn","step","index","jsxs","motion","StepLayout","children","title","sidebar","subclassName","StepperModal","isOpen","onClose","description","Icon","currentStep","totalSteps","onBack","onNext","onComplete","continueText","completeText","isNextDisabled","isNextLoading","size","stepLayoutSubclassName","isShowBackButton","isModelContentScrollable","progress","Modal","Button","AnimatePresence"],"mappings":"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"}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { j as e } from "./jsx-runtime-DGlMoOmv.js";
|
|
2
|
+
import { c as a } from "./utils-qaFjX9_3.js";
|
|
3
|
+
import { motion as s, AnimatePresence as k } from "framer-motion";
|
|
4
|
+
import { Modal as L } from "./components/modal.esm.js";
|
|
5
|
+
import { Button as d } from "./components/button.esm.js";
|
|
6
|
+
function A({ steps: o, className: t }) {
|
|
7
|
+
return /* @__PURE__ */ e.jsx("div", { className: a("py-6 space-y-5", t), children: o.map((i, r) => /* @__PURE__ */ e.jsxs(
|
|
8
|
+
s.div,
|
|
9
|
+
{
|
|
10
|
+
className: "relative",
|
|
11
|
+
initial: { opacity: 0, y: 10 },
|
|
12
|
+
animate: { opacity: 1, y: 0 },
|
|
13
|
+
transition: { delay: r * 0.1, duration: 0.3 },
|
|
14
|
+
children: [
|
|
15
|
+
r !== 0 && /* @__PURE__ */ e.jsx(
|
|
16
|
+
s.div,
|
|
17
|
+
{
|
|
18
|
+
className: a(
|
|
19
|
+
"absolute left-[15px] -top-[26px] w-[2px] h-[24px] origin-top",
|
|
20
|
+
i.isCompleted || i.isCurrent ? "bg-primary/60" : "bg-border"
|
|
21
|
+
),
|
|
22
|
+
initial: { scaleY: 0 },
|
|
23
|
+
animate: { scaleY: 1 },
|
|
24
|
+
transition: { delay: r * 0.1 + 0.2, duration: 0.2 }
|
|
25
|
+
}
|
|
26
|
+
),
|
|
27
|
+
/* @__PURE__ */ e.jsxs("div", { className: "flex gap-4 items-start", children: [
|
|
28
|
+
/* @__PURE__ */ e.jsx(
|
|
29
|
+
s.div,
|
|
30
|
+
{
|
|
31
|
+
className: a(
|
|
32
|
+
"w-[30px] h-[30px] rounded-full flex items-center justify-center text-xs font-medium shrink-0 transition-all",
|
|
33
|
+
i.isCompleted && "bg-primary text-primary-foreground shadow-sm shadow-primary/20",
|
|
34
|
+
i.isCurrent && "border-2 border-primary bg-primary/10 text-primary",
|
|
35
|
+
!i.isCompleted && !i.isCurrent && "border-2 border-muted-foreground/30 text-muted-foreground"
|
|
36
|
+
),
|
|
37
|
+
whileHover: { scale: 1.05 },
|
|
38
|
+
whileTap: { scale: 0.98 },
|
|
39
|
+
transition: { duration: 0.2 },
|
|
40
|
+
children: i.isCompleted ? /* @__PURE__ */ e.jsx("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ e.jsx(
|
|
41
|
+
"path",
|
|
42
|
+
{
|
|
43
|
+
d: "M7.75 12.75L10 15.25L16.25 8.75",
|
|
44
|
+
stroke: "currentColor",
|
|
45
|
+
strokeWidth: "2",
|
|
46
|
+
strokeLinecap: "round",
|
|
47
|
+
strokeLinejoin: "round"
|
|
48
|
+
}
|
|
49
|
+
) }) : r + 1
|
|
50
|
+
}
|
|
51
|
+
),
|
|
52
|
+
/* @__PURE__ */ e.jsxs("div", { className: "space-y-0.5 pt-0.5", children: [
|
|
53
|
+
/* @__PURE__ */ e.jsx("h3", { className: a(
|
|
54
|
+
"text-sm font-medium transition-colors",
|
|
55
|
+
i.isCurrent && "text-primary",
|
|
56
|
+
i.isCompleted && "text-foreground",
|
|
57
|
+
!i.isCurrent && !i.isCompleted && "text-muted-foreground"
|
|
58
|
+
), children: i.title }),
|
|
59
|
+
i.description && /* @__PURE__ */ e.jsx("p", { className: a(
|
|
60
|
+
"text-xs text-muted-foreground leading-relaxed",
|
|
61
|
+
i.isCurrent && "text-muted-foreground/90"
|
|
62
|
+
), children: i.description })
|
|
63
|
+
] })
|
|
64
|
+
] })
|
|
65
|
+
]
|
|
66
|
+
},
|
|
67
|
+
i.title
|
|
68
|
+
)) });
|
|
69
|
+
}
|
|
70
|
+
function O({
|
|
71
|
+
children: o,
|
|
72
|
+
title: t,
|
|
73
|
+
sidebar: i,
|
|
74
|
+
subclassName: r
|
|
75
|
+
}) {
|
|
76
|
+
return /* @__PURE__ */ e.jsxs("div", { className: "flex h-scroll-xl overflow-hidden", children: [
|
|
77
|
+
/* @__PURE__ */ e.jsx(
|
|
78
|
+
s.div,
|
|
79
|
+
{
|
|
80
|
+
className: "border-r bg-gradient-to-b from-muted/30 to-muted/60 sticky top-0 self-start h-full max-h-[calc(100vh-10rem)]",
|
|
81
|
+
initial: { opacity: 0, x: -10 },
|
|
82
|
+
animate: { opacity: 1, x: 0 },
|
|
83
|
+
transition: { duration: 0.3, ease: "easeInOut" },
|
|
84
|
+
children: i
|
|
85
|
+
}
|
|
86
|
+
),
|
|
87
|
+
/* @__PURE__ */ e.jsxs(
|
|
88
|
+
s.div,
|
|
89
|
+
{
|
|
90
|
+
className: a("flex-1 px-5 py-4 overflow-y-auto", r),
|
|
91
|
+
initial: { opacity: 0, x: 5 },
|
|
92
|
+
animate: { opacity: 1, x: 0 },
|
|
93
|
+
transition: { duration: 0.3, delay: 0.1, ease: "easeInOut" },
|
|
94
|
+
children: [
|
|
95
|
+
t && /* @__PURE__ */ e.jsx("div", { className: "flex items-center mb-5", children: /* @__PURE__ */ e.jsx("h2", { className: "text-lg font-semibold text-foreground", children: t }) }),
|
|
96
|
+
/* @__PURE__ */ e.jsx("div", { className: "h-full", children: o })
|
|
97
|
+
]
|
|
98
|
+
}
|
|
99
|
+
)
|
|
100
|
+
] });
|
|
101
|
+
}
|
|
102
|
+
function E({
|
|
103
|
+
isOpen: o,
|
|
104
|
+
onClose: t,
|
|
105
|
+
title: i,
|
|
106
|
+
description: r,
|
|
107
|
+
icon: m,
|
|
108
|
+
currentStep: l,
|
|
109
|
+
totalSteps: n,
|
|
110
|
+
onBack: u,
|
|
111
|
+
onNext: f,
|
|
112
|
+
onComplete: h,
|
|
113
|
+
sidebar: p,
|
|
114
|
+
children: y,
|
|
115
|
+
continueText: j = "Continue",
|
|
116
|
+
completeText: g = "Complete",
|
|
117
|
+
isNextDisabled: c = !1,
|
|
118
|
+
isNextLoading: x = !1,
|
|
119
|
+
size: v = "2xl",
|
|
120
|
+
stepLayoutSubclassName: b,
|
|
121
|
+
isShowBackButton: N = !0,
|
|
122
|
+
isModelContentScrollable: w = !1
|
|
123
|
+
}) {
|
|
124
|
+
const C = (l + 1) / n * 100;
|
|
125
|
+
return /* @__PURE__ */ e.jsxs(
|
|
126
|
+
L,
|
|
127
|
+
{
|
|
128
|
+
isOpen: o,
|
|
129
|
+
onClose: t,
|
|
130
|
+
size: v,
|
|
131
|
+
showClose: !0,
|
|
132
|
+
title: i,
|
|
133
|
+
isContentScrollable: w,
|
|
134
|
+
description: r,
|
|
135
|
+
icon: m && /* @__PURE__ */ e.jsx("div", { className: "bg-primary/10 p-2 rounded-full", children: /* @__PURE__ */ e.jsx(m, { className: "h-5 w-5 text-primary" }) }),
|
|
136
|
+
contentClassName: "px-0 pt-0 pb-0",
|
|
137
|
+
footer: /* @__PURE__ */ e.jsxs("div", { className: "w-full flex items-center justify-between", children: [
|
|
138
|
+
/* @__PURE__ */ e.jsx("div", { className: "flex-1", children: l > 0 && N && /* @__PURE__ */ e.jsx(
|
|
139
|
+
d,
|
|
140
|
+
{
|
|
141
|
+
variant: "ghost",
|
|
142
|
+
onClick: u,
|
|
143
|
+
size: "sm",
|
|
144
|
+
className: "text-muted-foreground hover:text-foreground transition-colors",
|
|
145
|
+
children: "Back"
|
|
146
|
+
}
|
|
147
|
+
) }),
|
|
148
|
+
/* @__PURE__ */ e.jsxs("div", { className: "flex-1 flex justify-center text-xs text-muted-foreground", children: [
|
|
149
|
+
"Step ",
|
|
150
|
+
l + 1,
|
|
151
|
+
" of ",
|
|
152
|
+
n
|
|
153
|
+
] }),
|
|
154
|
+
/* @__PURE__ */ e.jsx("div", { className: "flex-1 flex justify-end", children: l < n - 1 ? /* @__PURE__ */ e.jsx(
|
|
155
|
+
d,
|
|
156
|
+
{
|
|
157
|
+
onClick: f,
|
|
158
|
+
disabled: c,
|
|
159
|
+
isLoading: x,
|
|
160
|
+
size: "sm",
|
|
161
|
+
className: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
162
|
+
children: j
|
|
163
|
+
}
|
|
164
|
+
) : /* @__PURE__ */ e.jsx(
|
|
165
|
+
d,
|
|
166
|
+
{
|
|
167
|
+
onClick: h,
|
|
168
|
+
disabled: c,
|
|
169
|
+
isLoading: x,
|
|
170
|
+
size: "sm",
|
|
171
|
+
className: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
172
|
+
children: g
|
|
173
|
+
}
|
|
174
|
+
) })
|
|
175
|
+
] }),
|
|
176
|
+
children: [
|
|
177
|
+
/* @__PURE__ */ e.jsx("div", { className: "w-full h-0.5 bg-muted relative mb-1", children: /* @__PURE__ */ e.jsx(
|
|
178
|
+
s.div,
|
|
179
|
+
{
|
|
180
|
+
className: "absolute top-0 left-0 h-full bg-primary",
|
|
181
|
+
initial: { width: 0 },
|
|
182
|
+
animate: { width: `${C}%` },
|
|
183
|
+
transition: { duration: 0.3, ease: "easeInOut" }
|
|
184
|
+
}
|
|
185
|
+
) }),
|
|
186
|
+
/* @__PURE__ */ e.jsx(
|
|
187
|
+
O,
|
|
188
|
+
{
|
|
189
|
+
sidebar: p,
|
|
190
|
+
subclassName: b,
|
|
191
|
+
children: /* @__PURE__ */ e.jsx(k, { mode: "wait", children: /* @__PURE__ */ e.jsx(
|
|
192
|
+
s.div,
|
|
193
|
+
{
|
|
194
|
+
initial: { opacity: 0, y: 10 },
|
|
195
|
+
animate: { opacity: 1, y: 0 },
|
|
196
|
+
exit: { opacity: 0, y: -10 },
|
|
197
|
+
transition: { duration: 0.25, ease: "easeInOut" },
|
|
198
|
+
className: "h-full",
|
|
199
|
+
children: y
|
|
200
|
+
},
|
|
201
|
+
l
|
|
202
|
+
) })
|
|
203
|
+
}
|
|
204
|
+
)
|
|
205
|
+
]
|
|
206
|
+
}
|
|
207
|
+
);
|
|
208
|
+
}
|
|
209
|
+
export {
|
|
210
|
+
A as S,
|
|
211
|
+
O as a,
|
|
212
|
+
E as b
|
|
213
|
+
};
|
|
214
|
+
//# sourceMappingURL=stepper-modal-SYU9mbXs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stepper-modal-SYU9mbXs.js","sources":["../src/components/stepper/stepper.tsx","../src/components/stepper/step-layout.tsx","../src/components/stepper/stepper-modal.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\"\nimport { motion } from \"framer-motion\"\nimport { Step } from \"./types\"\n\ninterface StepperProps {\n steps: Step[]\n className?: string\n}\n\nexport function Stepper({ steps, className }: StepperProps) {\n return (\n <div className={cn(\"py-6 space-y-5\", className)}>\n {steps.map((step, index) => (\n <motion.div \n key={step.title} \n className=\"relative\"\n initial={{ opacity: 0, y: 10 }}\n animate={{ opacity: 1, y: 0 }}\n transition={{ delay: index * 0.1, duration: 0.3 }}\n >\n {/* Connector line between steps */}\n {index !== 0 && (\n <motion.div \n className={cn(\n \"absolute left-[15px] -top-[26px] w-[2px] h-[24px] origin-top\",\n step.isCompleted || step.isCurrent ? \"bg-primary/60\" : \"bg-border\"\n )}\n initial={{ scaleY: 0 }}\n animate={{ scaleY: 1 }}\n transition={{ delay: index * 0.1 + 0.2, duration: 0.2 }}\n />\n )}\n \n <div className=\"flex gap-4 items-start\">\n {/* Step indicator circle */}\n <motion.div \n className={cn(\n \"w-[30px] h-[30px] rounded-full flex items-center justify-center text-xs font-medium shrink-0 transition-all\",\n step.isCompleted && \"bg-primary text-primary-foreground shadow-sm shadow-primary/20\",\n step.isCurrent && \"border-2 border-primary bg-primary/10 text-primary\",\n !step.isCompleted && !step.isCurrent && \"border-2 border-muted-foreground/30 text-muted-foreground\"\n )}\n whileHover={{ scale: 1.05 }}\n whileTap={{ scale: 0.98 }}\n transition={{ duration: 0.2 }}\n >\n {step.isCompleted ? (\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M7.75 12.75L10 15.25L16.25 8.75\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n ) : (\n index + 1\n )}\n </motion.div>\n \n {/* Step content */}\n <div className=\"space-y-0.5 pt-0.5\">\n <h3 className={cn(\n \"text-sm font-medium transition-colors\",\n step.isCurrent && \"text-primary\",\n step.isCompleted && \"text-foreground\",\n !step.isCurrent && !step.isCompleted && \"text-muted-foreground\"\n )}>\n {step.title}\n </h3>\n {step.description && (\n <p className={cn(\n \"text-xs text-muted-foreground leading-relaxed\",\n step.isCurrent && \"text-muted-foreground/90\"\n )}>\n {step.description}\n </p>\n )}\n </div>\n </div>\n </motion.div>\n ))}\n </div>\n )\n} ","import { cn } from \"@/lib/utils\"\nimport { motion } from \"framer-motion\"\n\ninterface StepLayoutProps {\n children: React.ReactNode\n title?: string\n sidebar?: React.ReactNode\n subclassName?: string\n}\n\nexport function StepLayout({ \n children, \n title,\n sidebar,\n subclassName,\n}: StepLayoutProps) {\n return (\n <div className=\"flex h-scroll-xl overflow-hidden\">\n {/* Sidebar with sticky positioning */}\n <motion.div \n className=\"border-r bg-gradient-to-b from-muted/30 to-muted/60 sticky top-0 self-start h-full max-h-[calc(100vh-10rem)]\"\n initial={{ opacity: 0, x: -10 }}\n animate={{ opacity: 1, x: 0 }}\n transition={{ duration: 0.3, ease: \"easeInOut\" }}\n >\n {sidebar}\n </motion.div>\n \n {/* Main content area */}\n <motion.div \n className={cn(\"flex-1 px-5 py-4 overflow-y-auto\", subclassName)}\n initial={{ opacity: 0, x: 5 }}\n animate={{ opacity: 1, x: 0 }}\n transition={{ duration: 0.3, delay: 0.1, ease: \"easeInOut\" }}\n >\n {title && (\n <div className=\"flex items-center mb-5\">\n <h2 className=\"text-lg font-semibold text-foreground\">{title}</h2>\n </div>\n )}\n <div className=\"h-full\">\n {children}\n </div>\n </motion.div>\n </div>\n )\n} ","import { Modal, ModalProps } from \"../modal\"\nimport { StepLayout } from \"./step-layout\"\nimport { Button } from \"../button\"\nimport { motion, AnimatePresence } from \"framer-motion\"\nimport { cn } from \"@/lib/utils\"\n\ninterface StepperModalProps {\n isOpen: boolean\n onClose: () => void\n title: string\n description?: string\n icon?: React.ComponentType<any>\n currentStep: number\n totalSteps: number\n onBack: () => void\n onNext: () => void\n onComplete: () => void\n sidebar: React.ReactNode\n children: React.ReactNode\n continueText?: string\n completeText?: string\n isNextDisabled?: boolean\n isNextLoading?: boolean\n size?: ModalProps['size']\n stepLayoutSubclassName?: string \n isShowClose?: boolean\n isShowBackButton?: boolean\n isModelContentScrollable?: boolean\n}\n\nexport function StepperModal({\n isOpen,\n onClose,\n title,\n description,\n icon: Icon,\n currentStep,\n totalSteps,\n onBack,\n onNext,\n onComplete,\n sidebar,\n children,\n continueText = \"Continue\",\n completeText = \"Complete\",\n isNextDisabled = false,\n isNextLoading = false,\n size = \"2xl\",\n stepLayoutSubclassName,\n isShowBackButton = true,\n isModelContentScrollable = false\n}: StepperModalProps) {\n // Calculate progress percentage\n const progress = ((currentStep + 1) / totalSteps) * 100;\n \n return (\n <Modal \n isOpen={isOpen} \n onClose={onClose}\n size={size}\n showClose={true}\n title={title}\n isContentScrollable={isModelContentScrollable}\n description={description}\n icon={Icon && (\n <div className=\"bg-primary/10 p-2 rounded-full\">\n <Icon className=\"h-5 w-5 text-primary\" />\n </div>\n )}\n contentClassName=\"px-0 pt-0 pb-0\"\n footer={\n <div className=\"w-full flex items-center justify-between\">\n <div className=\"flex-1\">\n {currentStep > 0 && isShowBackButton && (\n <Button \n variant=\"ghost\" \n onClick={onBack}\n size=\"sm\"\n className=\"text-muted-foreground hover:text-foreground transition-colors\"\n >\n Back\n </Button>\n )}\n </div>\n \n <div className=\"flex-1 flex justify-center text-xs text-muted-foreground\">\n Step {currentStep + 1} of {totalSteps}\n </div>\n \n <div className=\"flex-1 flex justify-end\">\n {currentStep < totalSteps - 1 ? (\n <Button \n onClick={onNext} \n disabled={isNextDisabled} \n isLoading={isNextLoading}\n size=\"sm\"\n className=\"bg-primary text-primary-foreground hover:bg-primary/90\"\n >\n {continueText}\n </Button>\n ) : (\n <Button \n onClick={onComplete} \n disabled={isNextDisabled} \n isLoading={isNextLoading}\n size=\"sm\"\n className=\"bg-primary text-primary-foreground hover:bg-primary/90\"\n >\n {completeText}\n </Button>\n )}\n </div>\n </div>\n }\n >\n {/* Progress bar */}\n <div className=\"w-full h-0.5 bg-muted relative mb-1\">\n <motion.div \n className=\"absolute top-0 left-0 h-full bg-primary\"\n initial={{ width: 0 }}\n animate={{ width: `${progress}%` }}\n transition={{ duration: 0.3, ease: \"easeInOut\" }}\n />\n </div>\n \n <StepLayout\n sidebar={sidebar}\n subclassName={stepLayoutSubclassName}\n >\n <AnimatePresence mode=\"wait\">\n <motion.div\n key={currentStep}\n initial={{ opacity: 0, y: 10 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -10 }}\n transition={{ duration: 0.25, ease: \"easeInOut\" }}\n className=\"h-full\"\n >\n {children}\n </motion.div>\n </AnimatePresence>\n </StepLayout>\n </Modal>\n )\n} "],"names":["Stepper","steps","className","jsx","cn","step","index","jsxs","motion","StepLayout","children","title","sidebar","subclassName","StepperModal","isOpen","onClose","description","Icon","currentStep","totalSteps","onBack","onNext","onComplete","continueText","completeText","isNextDisabled","isNextLoading","size","stepLayoutSubclassName","isShowBackButton","isModelContentScrollable","progress","Modal","Button","AnimatePresence"],"mappings":"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"}
|