mtxuilib 0.0.747 → 0.0.749

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.
@@ -13,6 +13,7 @@ export interface TreeDataItem extends TreeNode {
13
13
  icon?: string | null;
14
14
  children?: TreeDataItem[];
15
15
  }
16
+ export declare function makeTree<T extends TreeDataItem>(treeNodes: T[]): T[];
16
17
  export declare const Tree: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
17
18
  data: TreeDataItem[] | TreeDataItem;
18
19
  initialSlelectedItemId?: string | undefined;
@@ -1 +1 @@
1
- "use client";var V=Object.defineProperty,X=Object.defineProperties;var q=Object.getOwnPropertyDescriptors;var I=Object.getOwnPropertySymbols;var D=Object.prototype.hasOwnProperty,L=Object.prototype.propertyIsEnumerable;var P=(r,e,o)=>e in r?V(r,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):r[e]=o,p=(r,e)=>{for(var o in e||(e={}))D.call(e,o)&&P(r,o,e[o]);if(I)for(var o of I(e))L.call(e,o)&&P(r,o,e[o]);return r},h=(r,e)=>X(r,q(e));var b=(r,e)=>{var o={};for(var t in r)D.call(r,t)&&e.indexOf(t)<0&&(o[t]=r[t]);if(r!=null&&I)for(var t of I(r))e.indexOf(t)<0&&L.call(r,t)&&(o[t]=r[t]);return o};import{jsx as n,jsxs as y}from"react/jsx-runtime";import*as f from"@radix-ui/react-accordion";import{ChevronRight as B}from"lucide-react";import s from"react";import G from"use-resize-observer";import{IconX as C}from"../../icons/icons";import{cn as T}from"../../lib/utils";import{ScrollArea as J}from"../scroll-area";const K=s.forwardRef((M,N)=>{var g=M,{data:r,initialSlelectedItemId:e,onSelectChange:o,expandAll:t,folderIcon:c,itemIcon:a,className:m}=g,u=b(g,["data","initialSlelectedItemId","onSelectChange","expandAll","folderIcon","itemIcon","className"]);const[i,E]=s.useState(e),S=s.useCallback(d=>{E(d==null?void 0:d.id),o&&o(d)},[o]),z=s.useMemo(()=>{if(!e)return[];const d=[];function R(l,x){if(l instanceof Array)for(let v=0;v<l.length;v++){if(d.push(l[v].id),R(l[v],x)&&!t)return!0;t||d.pop()}else{if(!t&&l.id===x)return!0;if(l.children)return R(l.children,x)}}return R(r,e),d},[r,e]),{ref:W,width:F,height:O}=G();return n("div",{ref:W,className:T("overflow-hidden",m),children:n(J,{style:{width:F,height:O},children:n("div",{className:"relative p-2",children:n(w,p({data:r,ref:N,selectedItemId:i,handleSelectChange:S,expandedItemIds:z,FolderIcon:c,ItemIcon:a},u))})})})});K.displayName="Tree";const w=s.forwardRef((M,N)=>{var g=M,{className:r,data:e,selectedItemId:o,handleSelectChange:t,expandedItemIds:c,FolderIcon:a,ItemIcon:m}=g,u=b(g,["className","data","selectedItemId","handleSelectChange","expandedItemIds","FolderIcon","ItemIcon"]);return n("div",h(p({ref:N,role:"tree",className:r},u),{children:n("ul",{children:e instanceof Array?e.map(i=>n("li",{children:i.children?n(f.Root,{type:"multiple",defaultValue:c,children:y(f.Item,{value:i.id,children:[y(k,{className:T("before:bg-muted/80 px-2 before:absolute before:left-0 before:-z-10 before:h-7 before:w-full before:opacity-0 hover:before:opacity-100",o===i.id&&"before:bg-accent text-accent-foreground before:border-l-accent-foreground/50 before:border-l-2 before:opacity-100 dark:before:border-0"),onClick:()=>t(i),children:[i.icon&&n(C,{name:i.icon,className:"text-accent-foreground/50 mr-2 h-4 w-4 shrink-0","aria-hidden":"true"}),!i.icon&&a&&n(a,{className:"text-accent-foreground/50 mr-2 h-4 w-4 shrink-0","aria-hidden":"true"}),n("span",{className:"truncate text-sm",children:i.label})]}),n(H,{className:"pl-6",children:n(w,{data:i.children?i.children:i,selectedItemId:o,handleSelectChange:t,expandedItemIds:c,FolderIcon:a,ItemIcon:m})})]})}):n(A,{item:i,isSelected:o===i.id,onClick:()=>t(i),Icon:m})},i.id)):n("li",{children:n(A,{item:e,isSelected:o===e.id,onClick:()=>t(e),Icon:m})})})}))});w.displayName="TreeItem";const A=s.forwardRef((m,a)=>{var u=m,{className:r,item:e,isSelected:o,Icon:t}=u,c=b(u,["className","item","isSelected","Icon"]);return y("div",h(p({ref:a,className:T("before:bg-muted/80 flex cursor-pointer items-center px-2 py-2 before:absolute before:left-0 before:right-1 before:-z-10 before:h-7 before:w-full before:opacity-0 hover:before:opacity-100",r,o&&"before:bg-accent text-accent-foreground before:border-l-accent-foreground/50 before:border-l-2 before:opacity-100 dark:before:border-0")},c),{children:[e.icon&&n(C,{name:e.label||"",className:"text-accent-foreground/50 mr-2 h-4 w-4 shrink-0","aria-hidden":"true"}),!e.icon&&t&&n(t,{className:"text-accent-foreground/50 mr-2 h-4 w-4 shrink-0","aria-hidden":"true"}),n("span",{className:"grow truncate text-sm",children:e.label})]}))});A.displayName="Leaf";const k=s.forwardRef((c,t)=>{var a=c,{className:r,children:e}=a,o=b(a,["className","children"]);return n(f.Header,{children:y(f.Trigger,h(p({ref:t,className:T("flex w-full flex-1 items-center py-2 transition-all last:[&[data-state=open]>svg]:rotate-90",r)},o),{children:[e,n(B,{className:"text-accent-foreground/50 ml-auto h-4 w-4 shrink-0 transition-transform duration-200"})]}))})});k.displayName=f.Trigger.displayName;const H=s.forwardRef((c,t)=>{var a=c,{className:r,children:e}=a,o=b(a,["className","children"]);return n(f.Content,h(p({ref:t,className:T("data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm transition-all",r)},o),{children:n("div",{className:"pb-1 pt-0",children:e})}))});H.displayName=f.Content.displayName;export{K as Tree};
1
+ "use client";var V=Object.defineProperty,X=Object.defineProperties;var q=Object.getOwnPropertyDescriptors;var y=Object.getOwnPropertySymbols;var P=Object.prototype.hasOwnProperty,L=Object.prototype.propertyIsEnumerable;var D=(r,e,t)=>e in r?V(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,b=(r,e)=>{for(var t in e||(e={}))P.call(e,t)&&D(r,t,e[t]);if(y)for(var t of y(e))L.call(e,t)&&D(r,t,e[t]);return r},h=(r,e)=>X(r,q(e));var g=(r,e)=>{var t={};for(var o in r)P.call(r,o)&&e.indexOf(o)<0&&(t[o]=r[o]);if(r!=null&&y)for(var o of y(r))e.indexOf(o)<0&&L.call(r,o)&&(t[o]=r[o]);return t};import{jsx as n,jsxs as N}from"react/jsx-runtime";import*as p from"@radix-ui/react-accordion";import{ChevronRight as B}from"lucide-react";import f from"react";import G from"use-resize-observer";import{IconX as k}from"../../icons/icons";import{cn as I}from"../../lib/utils";import{ScrollArea as J}from"../scroll-area";function ee(r){var o;const e=new Map(r.map(a=>[a.id,a])),t={};return r.forEach((a,c)=>{var s,u;const d=(s=e.get(a.pid||""))!=null?s:t;((u=d.children)!=null?u:d.children=[]).push(a)}),(o=t.children)!=null?o:[]}const K=f.forwardRef((H,u)=>{var T=H,{data:r,initialSlelectedItemId:e,onSelectChange:t,expandAll:o,folderIcon:a,itemIcon:c,className:d}=T,s=g(T,["data","initialSlelectedItemId","onSelectChange","expandAll","folderIcon","itemIcon","className"]);const[i,E]=f.useState(e),S=f.useCallback(l=>{E(l==null?void 0:l.id),t&&t(l)},[t]),z=f.useMemo(()=>{if(!e)return[];const l=[];function x(m,R){if(m instanceof Array)for(let v=0;v<m.length;v++){if(l.push(m[v].id),x(m[v],R)&&!o)return!0;o||l.pop()}else{if(!o&&m.id===R)return!0;if(m.children)return x(m.children,R)}}return x(r,e),l},[r,e]),{ref:W,width:F,height:O}=G();return n("div",{ref:W,className:I("overflow-hidden",d),children:n(J,{style:{width:F,height:O},children:n("div",{className:"relative p-2",children:n(w,b({data:r,ref:u,selectedItemId:i,handleSelectChange:S,expandedItemIds:z,FolderIcon:a,ItemIcon:c},s))})})})});K.displayName="Tree";const w=f.forwardRef((H,u)=>{var T=H,{className:r,data:e,selectedItemId:t,handleSelectChange:o,expandedItemIds:a,FolderIcon:c,ItemIcon:d}=T,s=g(T,["className","data","selectedItemId","handleSelectChange","expandedItemIds","FolderIcon","ItemIcon"]);return n("div",h(b({ref:u,role:"tree",className:r},s),{children:n("ul",{children:e instanceof Array?e.map(i=>n("li",{children:i.children?n(p.Root,{type:"multiple",defaultValue:a,children:N(p.Item,{value:i.id,children:[N(C,{className:I("before:bg-muted/80 px-2 before:absolute before:left-0 before:-z-10 before:h-7 before:w-full before:opacity-0 hover:before:opacity-100",t===i.id&&"before:bg-accent text-accent-foreground before:border-l-accent-foreground/50 before:border-l-2 before:opacity-100 dark:before:border-0"),onClick:()=>o(i),children:[i.icon&&n(k,{name:i.icon,className:"text-accent-foreground/50 mr-2 h-4 w-4 shrink-0","aria-hidden":"true"}),!i.icon&&c&&n(c,{className:"text-accent-foreground/50 mr-2 h-4 w-4 shrink-0","aria-hidden":"true"}),n("span",{className:"truncate text-sm",children:i.label})]}),n(M,{className:"pl-6",children:n(w,{data:i.children?i.children:i,selectedItemId:t,handleSelectChange:o,expandedItemIds:a,FolderIcon:c,ItemIcon:d})})]})}):n(A,{item:i,isSelected:t===i.id,onClick:()=>o(i),Icon:d})},i.id)):n("li",{children:n(A,{item:e,isSelected:t===e.id,onClick:()=>o(e),Icon:d})})})}))});w.displayName="TreeItem";const A=f.forwardRef((d,c)=>{var s=d,{className:r,item:e,isSelected:t,Icon:o}=s,a=g(s,["className","item","isSelected","Icon"]);return N("div",h(b({ref:c,className:I("before:bg-muted/80 flex cursor-pointer items-center px-2 py-2 before:absolute before:left-0 before:right-1 before:-z-10 before:h-7 before:w-full before:opacity-0 hover:before:opacity-100",r,t&&"before:bg-accent text-accent-foreground before:border-l-accent-foreground/50 before:border-l-2 before:opacity-100 dark:before:border-0")},a),{children:[e.icon&&n(k,{name:e.label||"",className:"text-accent-foreground/50 mr-2 h-4 w-4 shrink-0","aria-hidden":"true"}),!e.icon&&o&&n(o,{className:"text-accent-foreground/50 mr-2 h-4 w-4 shrink-0","aria-hidden":"true"}),n("span",{className:"grow truncate text-sm",children:e.label})]}))});A.displayName="Leaf";const C=f.forwardRef((a,o)=>{var c=a,{className:r,children:e}=c,t=g(c,["className","children"]);return n(p.Header,{children:N(p.Trigger,h(b({ref:o,className:I("flex w-full flex-1 items-center py-2 transition-all last:[&[data-state=open]>svg]:rotate-90",r)},t),{children:[e,n(B,{className:"text-accent-foreground/50 ml-auto h-4 w-4 shrink-0 transition-transform duration-200"})]}))})});C.displayName=p.Trigger.displayName;const M=f.forwardRef((a,o)=>{var c=a,{className:r,children:e}=c,t=g(c,["className","children"]);return n(p.Content,h(b({ref:o,className:I("data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm transition-all",r)},t),{children:n("div",{className:"pb-1 pt-0",children:e})}))});M.displayName=p.Content.displayName;export{K as Tree,ee as makeTree};