@kanda-libs/ks-design-library-new 0.0.29 → 0.0.31
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/index.d.ts +14 -0
- package/dist/index.esm.mjs +1 -1
- package/dist/index.esm.mjs.map +4 -4
- package/dist/library.css +158 -12
- package/package.json +3 -2
- package/src/components/NumberedList/index.tsx +42 -0
- package/src/components/StageTimeline/Desktop.tsx +31 -0
- package/src/components/StageTimeline/Mobile.tsx +22 -0
- package/src/components/StageTimeline/Stage/index.tsx +44 -0
- package/src/components/StageTimeline/Stage/useStageProps.ts +49 -0
- package/src/components/StageTimeline/TimelineBorder.tsx +22 -0
- package/src/components/StageTimeline/index.tsx +21 -0
- package/src/components/index.tsx +2 -0
- package/src/styles/library.css +158 -12
package/dist/index.d.ts
CHANGED
|
@@ -69,6 +69,20 @@ export interface SimpleCompanyCardProps {
|
|
|
69
69
|
isLoading?: boolean;
|
|
70
70
|
}
|
|
71
71
|
export declare const SimpleCompanyCard: FunctionComponent<SimpleCompanyCardProps>;
|
|
72
|
+
export interface StageTimelineProps {
|
|
73
|
+
stages: (string | JSX.Element)[];
|
|
74
|
+
mobileStages?: string[];
|
|
75
|
+
activeKey: number;
|
|
76
|
+
}
|
|
77
|
+
export declare const StageTimeline: FunctionComponent<StageTimelineProps>;
|
|
72
78
|
export declare const NotFoundPage: FunctionComponent;
|
|
79
|
+
export interface NumberedListItem {
|
|
80
|
+
title: string;
|
|
81
|
+
description: string;
|
|
82
|
+
}
|
|
83
|
+
export interface NumberedListProps {
|
|
84
|
+
items: NumberedListItem[];
|
|
85
|
+
}
|
|
86
|
+
export declare const NumberedList: FunctionComponent<NumberedListProps>;
|
|
73
87
|
|
|
74
88
|
export {};
|
package/dist/index.esm.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as fe}from"react/jsx-runtime";var ce=function({children:e}){return fe("div",{className:"p-4 border bg-lavender-100 border-lavender-200 rounded-xl text-lavender-200",children:e})},ue=ce;import{Pagination as Xe}from"@kanda-libs/ks-design-library";import{SkeletonLoader as Ce}from"@kanda-libs/ks-design-library";import{Icon as ge}from"@kanda-libs/ks-design-library";var F="flex px-3 py-1.75 h-9 -ml-3 my-auto rounded-lg bg-transparent hover:bg-neutral-100 text-style-g-em text-neutral-500 whitespace-nowrap z-20",I={icon:"chevron-down",stroke:"neutral-500",size:12,className:"ml-2 my-auto"},_={width:"calc(100% + 16px)"},f={container:{base:"w-full h-full overflow-hidden",padding:"pl-4 -ml-4"},flex:{base:"w-full h-full flex px-4 px-0",padding:"pl-4"}};import{jsx as xe,jsxs as Pe}from"react/jsx-runtime";var be=function({label:e,...o}){return Pe("button",{className:F,...o,children:[e,xe(ge,{...I})]})},W=be;import G from"clsx";function w(e){let o=e===0?_:{};return{classNames:{container:G(f.container.base,e===0?f.container.padding:""),flex:G(f.flex.base,e===0?"":f.flex.padding)},containerStyle:o}}import{jsx as B}from"react/jsx-runtime";var Se=function({index:e,children:o}){let{classNames:t,containerStyle:r}=w(e);return B("div",{className:t.container,style:r,children:B("div",{className:t.flex,children:o})})},j=Se;var h={Button:W,Wrapper:j};import J from"clsx";var c={main:"flex h-14",loading:{base:"my-auto md:w-full mr-8",margin:"ml-4"},wrapper:{padding:"px-2 pt-2",popover:"pb-1"}};function y(e,o){return{classNames:{...c,loading:J(c.loading.base,e===0?"":c.loading.margin),wrapper:J(c.wrapper.padding,o?"":c.wrapper.popover)}}}import{jsx as P}from"react/jsx-runtime";var Te=function({index:e,isLoading:o=!1,popoverButtons:t=!1,label:r,...n}){let{classNames:a}=y(e,t);return P("div",{...n,className:a.main,children:P(Ce,{isLoading:o,wrapperClassName:a.loading,afterLoading:P(h.Wrapper,{index:e,children:P(h.Button,{label:r})})})})},X=Te;var z={base:"flex-row h-14 border-b border-neutral-200"};function N(e,o){let{headers:t,getHeaderGroupProps:r}=e,n=r({}),a=o.filter(s=>s.isVisible).length;return{headers:t,headerGroupProps:n,totalVisible:a}}import{jsx as D}from"react/jsx-runtime";function we({headerGroup:e,columns:o,isLoading:t}){let{headerGroupProps:r,headers:n}=N(e,o);return D("div",{...r,className:z.base,children:n.map((a,s)=>D(X,{index:s,label:a.render("Header"),isLoading:t,...a.getHeaderProps(a.getSortByToggleProps())}))})}var $=we;import{SkeletonLoader as Ne,Text as ve}from"@kanda-libs/ks-design-library";import he from"clsx";var d={container:"flex w-full h-full",render:"w-full my-auto text-style-g text-neutral-600 whitespace-nowrap overflow-hidden overflow-ellipsis",renderLoading:"w-full my-auto mr-8 text-style-g",mobileLabel:"block md:hidden text-16-24-em text-neutral-600 mr-2",cell:{base:"px-4 py-1 md:pt-0 md:pr-0 md:pb-0 md:h-16 flex",compact:"h-8 flex",padding:"md:pl-4"}};function v(e,o,t){return{cell:he(o?d.cell.compact:d.cell.base,e===0?"":d.cell.padding),container:d.container,render:t?d.renderLoading:d.render,mobileLabel:d.mobileLabel}}import{useIsDesktop as ye}from"@kanda-libs/ks-design-library";function E(e){if(!e)return{};let o=ye();return{...e,width:o?e==null?void 0:e.width:"100%"}}import{Fragment as Le,jsx as g,jsxs as Re}from"react/jsx-runtime";var Ee=function({render:e,index:o,compact:t=!1,isLoading:r=!1,label:n,...a}){let s=v(o,t,r),{style:i,...p}=a,l=E(i);return g("div",{...p,style:l,className:s.cell,children:g("div",{className:s.container,children:g("div",{className:s.render,children:g(Ne,{isLoading:r,afterLoading:Re(Le,{children:[g(ve,{text:`${n}:`,className:s.mobileLabel}),e()]})})})})})},V=Ee;import{useClasses as Ae}from"@kanda-libs/ks-design-library";var U={base:"relative md:h-16 flex-col py-2 md:py-0 md:flex-row",compact:"relative h-8",border:"border-b border-neutral-200",hover:"group hover:bg-neutral-50 cursor-pointer",button:"hidden group-hover:block"};function L(e,o){return Ae(U,{base:[".base",e===9?"":".border",o?".hover":""],button:[".button"]})}import{jsx as K}from"react/jsx-runtime";function He({cells:e,index:o,compact:t=!1,isLoading:r=!1,onRowClick:n,...a}){let s=L(o,!!n);return K("div",{...a,className:t?s.compact:s.base,onClick:()=>{n&&n(e[0].row.original)},children:e.map((i,p)=>K(V,{...i.getCellProps(),index:p,isLoading:r,render:()=>i.render("Cell"),label:i.column.Header}))})}var Y=He;import{Fragment as Oe,jsx as q}from"react/jsx-runtime";function ke({page:e,prepareRow:o,isLoading:t=!1,compact:r=!1,onRowClick:n}){return q(Oe,{children:e.map((a,s)=>(o(a),q(Y,{...a.getRowProps(),index:s,cells:a.cells,isLoading:t,compact:r,onRowClick:n})))})}var Q=ke;import{useTable as _e,useGlobalFilter as We,usePagination as Ge,useSortBy as Be,useFlexLayout as je}from"react-table";import Me from"fuse.js";var Fe=(e,o)=>e.filter(t=>Object.values(t.values).join(", ").toLowerCase().includes(o.toLowerCase())),Z=(e,o)=>e.filter(({id:t})=>o.filter(r=>r.id===t).length===0),Ie=(e,o,t,r,n)=>{let a=e.map(l=>l.values),p=new Me(a,{keys:t.map(l=>({name:l,getFn:m=>m[l]}))}).search(o).map(({item:l})=>l).slice(0,r).map(l=>e.find(m=>m.values.cid===l.cid)).filter(Boolean);return Z(p,n)},ee=(e,o,t,r=10)=>{if(t.length<1)return e;let n=Fe(e,t).slice(0,r),a=Z(e,n),s=Ie(a,t,o,r-n.length,n),i=[...n,...s];return e.map(({id:p})=>i.find(l=>l.id===p)).filter(Boolean)};import{useEffect as Je}from"react";function R({columns:e,data:o,pageSize:t=10,query:r=""}){let n=_e({columns:e,data:o,initialState:{pageSize:10,pageIndex:0},autoResetGlobalFilter:!1,globalFilter:(l,m,x)=>ee(l,m,x,t)},We,Be,Ge,je),{gotoPage:a,pageCount:s,state:{pageIndex:i}}=n,p={pageCount:s,pageIndex:i,setPage:l=>{a(l)}};return Je(()=>{n.setGlobalFilter(r)},[r]),{paginationProps:p,...n}}import{Fragment as $e,jsx as b,jsxs as oe}from"react/jsx-runtime";function ze({compact:e=!1,isLoading:o=!1,onRowClick:t,...r}){let{page:n,prepareRow:a,columns:s,getTableProps:i,headerGroups:p,paginationProps:l}=R(r);return oe($e,{children:[oe("div",{...i(),className:"w-full",children:[b("div",{children:p.map(m=>b($,{headerGroup:m,columns:s,isLoading:o}))}),b(Q,{page:n,prepareRow:a,isLoading:o,compact:e,onRowClick:t})]}),l.pageCount>1&&b("div",{className:"px-4 py-4",children:b(Xe,{...l})})]})}var De=ze;import{Icon as Ve,Logo as Ue}from"@kanda-libs/ks-design-library";import{jsx as u,jsxs as S}from"react/jsx-runtime";var te={80:"max-w-80",96:"max-w-96",120:"max-w-120",160:"max-w160"},re=({logo:e,icon:o,iconClassName:t,iconSize:r,title:n,subText:a,boldSubText:s,cta:i,append:p,width:l=80,contentWidth:m=80,content:x})=>S("div",{className:`flex flex-col m-auto w-full ${te[l]} text-center items-center justify-center`,children:[e&&u("div",{className:"mb-10",children:u(Ue,{height:32})}),!e&&u(Ve,{icon:o,size:r,className:`mx-auto mb-8 ${t}`}),u("h1",{className:"text-24-28-em mb-4",children:n}),S("div",{className:`flex flex-col w-full ${te[m]} mx-auto`,children:[x&&u("div",{className:"mt-4 mb-8",children:x}),S("span",{className:"text-16-24 text-neutral-600",children:[a,s&&S("b",{children:[" ",s]})]}),i&&u("div",{className:"mt-10",children:i}),p]})]});re.defaultProps={logo:!1,iconClassName:"",iconSize:104,cta:null,append:null,boldSubText:null,content:null,width:96,contentWidth:96};var Ke=re;import{useEffect as Ze}from"react";import{Document as eo,Page as oo,pdfjs as ne}from"react-pdf";import{useToast as Ye}from"@kanda-libs/ks-design-library";import{useCallback as A,useMemo as qe,useState as Qe}from"react";function H(e){let[o,t]=Qe(null),{showError:r}=Ye(),n=A(({numPages:l})=>{t([...Array(l).keys()].map(m=>({key:`page_${m+1}`,pageNumber:m+1,className:m!==0?"mt-4":""})))},[]),a=A(({message:l})=>r(`Error loading document. Please contact Kanda. Error message: ${l}`),[r]),s=A(({message:l})=>r(`Error retrieving document source. Please contact Kanda. Error message: ${l}`),[r]),i=qe(()=>e?{file:`data:application/pdf;base64,${e}`,error:"Failed to load the PDF file. The file can still be downloaded by clicking the button below",onLoadSuccess:n,onLoadError:a,onSourceError:s}:null,[e,n,a,s]);return{pdfProps:i,pages:o,showContent:!!(i&&!!e)}}import{Fragment as ae,jsx as C}from"react/jsx-runtime";var to=eo,ro=function({content:e}){let{pdfProps:o,pages:t,showContent:r}=H(e);return Ze(()=>{ne.GlobalWorkerOptions.workerSrc=`https://cdnjs.cloudflare.com/ajax/libs/pdf.js/${ne.version}/pdf.worker.js`},[]),r?C(to,{...o,children:t&&t.map(n=>C(ae,{children:C(oo,{...n})}))}):C(ae,{})},no=ro;var se={container:"grid grid-cols-7 justify-start items-start gap-x-2"};import{jsx as lo}from"react/jsx-runtime";var ao=function({children:e}){return lo("div",{className:se.container,children:e})},so=ao;import{Children as mo}from"react";import{Button as co}from"@kanda-libs/ks-design-library";var k={title:"text-18-22-em text-neutral-900 py-2 text-center h-14",items:"flex flex-col gap-y-2"};import{useCallback as io,useState as po}from"react";function O(e,o){let[t,r]=po(0),n=io(()=>{r(s=>s+1)},[r]),a=e.slice(0,(t+1)*o);return{items:a,showMore:n,canShowMore:e.length>a.length}}import{jsx as M,jsxs as le}from"react/jsx-runtime";var uo=function({title:e,children:o,perPage:t=5}){let{items:r,showMore:n,canShowMore:a}=O(mo.toArray(o),t);return le("div",{children:[M("div",{className:k.title,children:e}),le("div",{className:k.items,children:[r,a&&M("div",{className:"mt-2",children:M(co.Text,{id:"pipeline-column-show-more",variant:"outline",onClick:n,label:"More",className:"w-full"})})]})]})},fo=uo;import{Card as go,Text as ie,TimeAgo as bo}from"@kanda-libs/ks-design-library";import{jsx as T,jsxs as So}from"react/jsx-runtime";var xo=function({name:e,signedUpDate:o,reviewed:t=!1,isLoading:r=!1}){return T(go,{className:t?"bg-blue-100":"",children:So("div",{className:"flex flex-col gap-y-2",children:[T(ie,{text:e,className:"text-16-20-em",isLoading:r}),t&&T(ie,{text:"Reviewed",className:"text-12-18-em-up"}),T(bo,{timestamp:o.getTime()})]})})},Po=xo;import{Text as me}from"@kanda-libs/ks-design-library";var pe={container:"w-screen h-screen flex flex-col justify-center items-center"};import{jsx as de,jsxs as wo}from"react/jsx-runtime";var Co=function(){return wo("div",{className:pe.container,children:[de(me,{text:"404",className:"mb-4 text-28-32-em text-neutral-900"}),de(me,{text:"Page not found",className:"text-20-24 text-neutral-700"})]})},To=Co;export{ue as AlertBanner,To as NotFoundPage,no as Pdf,so as Pipeline,fo as PipelineColumn,Po as SimpleCompanyCard,Ke as SplashScreen,De as Table};
|
|
1
|
+
import{jsx as Re}from"react/jsx-runtime";var Le=function({children:e}){return Re("div",{className:"p-4 border bg-lavender-100 border-lavender-200 rounded-xl text-lavender-200",children:e})},Ee=Le;import{Pagination as no}from"@kanda-libs/ks-design-library";import{SkeletonLoader as Oe}from"@kanda-libs/ks-design-library";import{Icon as ke}from"@kanda-libs/ks-design-library";var J="flex px-3 py-1.75 h-9 -ml-3 my-auto rounded-lg bg-transparent hover:bg-neutral-100 text-style-g-em text-neutral-500 whitespace-nowrap z-20",X={icon:"chevron-down",stroke:"neutral-500",size:12,className:"ml-2 my-auto"},j={width:"calc(100% + 16px)"},g={container:{base:"w-full h-full overflow-hidden",padding:"pl-4 -ml-4"},flex:{base:"w-full h-full flex px-4 px-0",padding:"pl-4"}};import{jsx as Ae,jsxs as Fe}from"react/jsx-runtime";var He=function({label:e,...o}){return Fe("button",{className:J,...o,children:[e,Ae(ke,{...X})]})},z=He;import D from"clsx";function v(e){let o=e===0?j:{};return{classNames:{container:D(g.container.base,e===0?g.container.padding:""),flex:D(g.flex.base,e===0?"":g.flex.padding)},containerStyle:o}}import{jsx as $}from"react/jsx-runtime";var Me=function({index:e,children:o}){let{classNames:t,containerStyle:r}=v(e);return $("div",{className:t.container,style:r,children:$("div",{className:t.flex,children:o})})},V=Me;var y={Button:z,Wrapper:V};import U from"clsx";var u={main:"flex h-14",loading:{base:"my-auto md:w-full mr-8",margin:"ml-4"},wrapper:{padding:"px-2 pt-2",popover:"pb-1"}};function L(e,o){return{classNames:{...u,loading:U(u.loading.base,e===0?"":u.loading.margin),wrapper:U(u.wrapper.padding,o?"":u.wrapper.popover)}}}import{jsx as S}from"react/jsx-runtime";var Ie=function({index:e,isLoading:o=!1,popoverButtons:t=!1,label:r,...n}){let{classNames:a}=L(e,t);return S("div",{...n,className:a.main,children:S(Oe,{isLoading:o,wrapperClassName:a.loading,afterLoading:S(y.Wrapper,{index:e,children:S(y.Button,{label:r})})})})},Y=Ie;var K={base:"flex-row h-14 border-b border-neutral-200"};function E(e,o){let{headers:t,getHeaderGroupProps:r}=e,n=r({}),a=o.filter(s=>s.isVisible).length;return{headers:t,headerGroupProps:n,totalVisible:a}}import{jsx as q}from"react/jsx-runtime";function _e({headerGroup:e,columns:o,isLoading:t}){let{headerGroupProps:r,headers:n}=E(e,o);return q("div",{...r,className:K.base,children:n.map((a,s)=>q(Y,{index:s,label:a.render("Header"),isLoading:t,...a.getHeaderProps(a.getSortByToggleProps())}))})}var Q=_e;import{SkeletonLoader as Ge,Text as Je}from"@kanda-libs/ks-design-library";import We from"clsx";var d={container:"flex w-full h-full",render:"w-full my-auto text-style-g text-neutral-600 whitespace-nowrap overflow-hidden overflow-ellipsis",renderLoading:"w-full my-auto mr-8 text-style-g",mobileLabel:"block md:hidden text-16-24-em text-neutral-600 mr-2",cell:{base:"px-4 py-1 md:pt-0 md:pr-0 md:pb-0 md:h-16 flex",compact:"h-8 flex",padding:"md:pl-4"}};function R(e,o,t){return{cell:We(o?d.cell.compact:d.cell.base,e===0?"":d.cell.padding),container:d.container,render:t?d.renderLoading:d.render,mobileLabel:d.mobileLabel}}import{useIsDesktop as Be}from"@kanda-libs/ks-design-library";function k(e){if(!e)return{};let o=Be();return{...e,width:o?e==null?void 0:e.width:"100%"}}import{Fragment as je,jsx as b,jsxs as ze}from"react/jsx-runtime";var Xe=function({render:e,index:o,compact:t=!1,isLoading:r=!1,label:n,...a}){let s=R(o,t,r),{style:l,...p}=a,i=k(l);return b("div",{...p,style:i,className:s.cell,children:b("div",{className:s.container,children:b("div",{className:s.render,children:b(Ge,{isLoading:r,afterLoading:ze(je,{children:[b(Je,{text:`${n}:`,className:s.mobileLabel}),e()]})})})})})},Z=Xe;import{useClasses as De}from"@kanda-libs/ks-design-library";var ee={base:"relative md:h-16 flex-col py-2 md:py-0 md:flex-row",compact:"relative h-8",border:"border-b border-neutral-200",hover:"group hover:bg-neutral-50 cursor-pointer",button:"hidden group-hover:block"};function H(e,o){return De(ee,{base:[".base",e===9?"":".border",o?".hover":""],button:[".button"]})}import{jsx as oe}from"react/jsx-runtime";function $e({cells:e,index:o,compact:t=!1,isLoading:r=!1,onRowClick:n,...a}){let s=H(o,!!n);return oe("div",{...a,className:t?s.compact:s.base,onClick:()=>{n&&n(e[0].row.original)},children:e.map((l,p)=>oe(Z,{...l.getCellProps(),index:p,isLoading:r,render:()=>l.render("Cell"),label:l.column.Header}))})}var te=$e;import{Fragment as Ue,jsx as re}from"react/jsx-runtime";function Ve({page:e,prepareRow:o,isLoading:t=!1,compact:r=!1,onRowClick:n}){return re(Ue,{children:e.map((a,s)=>(o(a),re(te,{...a.getRowProps(),index:s,cells:a.cells,isLoading:t,compact:r,onRowClick:n})))})}var ne=Ve;import{useTable as Qe,useGlobalFilter as Ze,usePagination as eo,useSortBy as oo,useFlexLayout as to}from"react-table";import Ye from"fuse.js";var Ke=(e,o)=>e.filter(t=>Object.values(t.values).join(", ").toLowerCase().includes(o.toLowerCase())),ae=(e,o)=>e.filter(({id:t})=>o.filter(r=>r.id===t).length===0),qe=(e,o,t,r,n)=>{let a=e.map(i=>i.values),p=new Ye(a,{keys:t.map(i=>({name:i,getFn:m=>m[i]}))}).search(o).map(({item:i})=>i).slice(0,r).map(i=>e.find(m=>m.values.cid===i.cid)).filter(Boolean);return ae(p,n)},se=(e,o,t,r=10)=>{if(t.length<1)return e;let n=Ke(e,t).slice(0,r),a=ae(e,n),s=qe(a,t,o,r-n.length,n),l=[...n,...s];return e.map(({id:p})=>l.find(i=>i.id===p)).filter(Boolean)};import{useEffect as ro}from"react";function A({columns:e,data:o,pageSize:t=10,query:r=""}){let n=Qe({columns:e,data:o,initialState:{pageSize:10,pageIndex:0},autoResetGlobalFilter:!1,globalFilter:(i,m,P)=>se(i,m,P,t)},Ze,oo,eo,to),{gotoPage:a,pageCount:s,state:{pageIndex:l}}=n,p={pageCount:s,pageIndex:l,setPage:i=>{a(i)}};return ro(()=>{n.setGlobalFilter(r)},[r]),{paginationProps:p,...n}}import{Fragment as io,jsx as x,jsxs as ie}from"react/jsx-runtime";function ao({compact:e=!1,isLoading:o=!1,onRowClick:t,...r}){let{page:n,prepareRow:a,columns:s,getTableProps:l,headerGroups:p,paginationProps:i}=A(r);return ie(io,{children:[ie("div",{...l(),className:"w-full",children:[x("div",{children:p.map(m=>x(Q,{headerGroup:m,columns:s,isLoading:o}))}),x(ne,{page:n,prepareRow:a,isLoading:o,compact:e,onRowClick:t})]}),i.pageCount>1&&x("div",{className:"px-4 py-4",children:x(no,{...i})})]})}var so=ao;import{Icon as lo,Logo as po}from"@kanda-libs/ks-design-library";import{jsx as f,jsxs as C}from"react/jsx-runtime";var le={80:"max-w-80",96:"max-w-96",120:"max-w-120",160:"max-w160"},pe=({logo:e,icon:o,iconClassName:t,iconSize:r,title:n,subText:a,boldSubText:s,cta:l,append:p,width:i=80,contentWidth:m=80,content:P})=>C("div",{className:`flex flex-col m-auto w-full ${le[i]} text-center items-center justify-center`,children:[e&&f("div",{className:"mb-10",children:f(po,{height:32})}),!e&&f(lo,{icon:o,size:r,className:`mx-auto mb-8 ${t}`}),f("h1",{className:"text-24-28-em mb-4",children:n}),C("div",{className:`flex flex-col w-full ${le[m]} mx-auto`,children:[P&&f("div",{className:"mt-4 mb-8",children:P}),C("span",{className:"text-16-24 text-neutral-600",children:[a,s&&C("b",{children:[" ",s]})]}),l&&f("div",{className:"mt-10",children:l}),p]})]});pe.defaultProps={logo:!1,iconClassName:"",iconSize:104,cta:null,append:null,boldSubText:null,content:null,width:96,contentWidth:96};var mo=pe;import{useEffect as go}from"react";import{Document as bo,Page as xo,pdfjs as me}from"react-pdf";import{useToast as co}from"@kanda-libs/ks-design-library";import{useCallback as F,useMemo as uo,useState as fo}from"react";function M(e){let[o,t]=fo(null),{showError:r}=co(),n=F(({numPages:i})=>{t([...Array(i).keys()].map(m=>({key:`page_${m+1}`,pageNumber:m+1,className:m!==0?"mt-4":""})))},[]),a=F(({message:i})=>r(`Error loading document. Please contact Kanda. Error message: ${i}`),[r]),s=F(({message:i})=>r(`Error retrieving document source. Please contact Kanda. Error message: ${i}`),[r]),l=uo(()=>e?{file:`data:application/pdf;base64,${e}`,error:"Failed to load the PDF file. The file can still be downloaded by clicking the button below",onLoadSuccess:n,onLoadError:a,onSourceError:s}:null,[e,n,a,s]);return{pdfProps:l,pages:o,showContent:!!(l&&!!e)}}import{Fragment as de,jsx as T}from"react/jsx-runtime";var Po=bo,So=function({content:e}){let{pdfProps:o,pages:t,showContent:r}=M(e);return go(()=>{me.GlobalWorkerOptions.workerSrc=`https://cdnjs.cloudflare.com/ajax/libs/pdf.js/${me.version}/pdf.worker.js`},[]),r?T(Po,{...o,children:t&&t.map(n=>T(de,{children:T(xo,{...n})}))}):T(de,{})},Co=So;var ce={container:"grid grid-cols-7 justify-start items-start gap-x-2"};import{jsx as wo}from"react/jsx-runtime";var To=function({children:e}){return wo("div",{className:ce.container,children:e})},ho=To;import{Children as yo}from"react";import{Button as Lo}from"@kanda-libs/ks-design-library";var O={title:"text-18-22-em text-neutral-900 py-2 text-center h-14",items:"flex flex-col gap-y-2"};import{useCallback as No,useState as vo}from"react";function I(e,o){let[t,r]=vo(0),n=No(()=>{r(s=>s+1)},[r]),a=e.slice(0,(t+1)*o);return{items:a,showMore:n,canShowMore:e.length>a.length}}import{jsx as _,jsxs as ue}from"react/jsx-runtime";var Eo=function({title:e,children:o,perPage:t=5}){let{items:r,showMore:n,canShowMore:a}=I(yo.toArray(o),t);return ue("div",{children:[_("div",{className:O.title,children:e}),ue("div",{className:O.items,children:[r,a&&_("div",{className:"mt-2",children:_(Lo.Text,{id:"pipeline-column-show-more",variant:"outline",onClick:n,label:"More",className:"w-full"})})]})]})},Ro=Eo;import{Card as ko,Text as fe,TimeAgo as Ho}from"@kanda-libs/ks-design-library";import{jsx as h,jsxs as Mo}from"react/jsx-runtime";var Ao=function({name:e,signedUpDate:o,reviewed:t=!1,isLoading:r=!1}){return h(ko,{className:t?"bg-blue-100":"",children:Mo("div",{className:"flex flex-col gap-y-2",children:[h(fe,{text:e,className:"text-16-20-em",isLoading:r}),t&&h(fe,{text:"Reviewed",className:"text-12-18-em-up"}),h(Ho,{timestamp:o.getTime()})]})})},Fo=Ao;import{BreakPoints as Do}from"@kanda-libs/ks-design-library";import{Icon as ge,Text as Oo}from"@kanda-libs/ks-design-library";import w from"clsx";function W(e,o,t,r){let n=e||o,a=w("w-7 h-7 rounded-2xl mb-2 relative z-10","text-center text-18-22-em flex items-center justify-center border border-solid border-2",!n&&"border-neutral-600 text-neutral-600 bg-neutral-000",n&&"bg-green-500 text-neutral-000 border-transparent"),s=w("absolute h-1 top-[31px] z-0",!n&&"bg-neutral-200",n&&"bg-green-500"),l=w(s,"w-1/2 left-0",t!==0&&"hidden md:block",t===0&&"hidden"),p=w(s,"w-1/2 right-0 hidden md:block",o&&"bg-neutral-200",!r&&"hidden md:block",r&&"hidden");return{iconClasses:a,leftBorderClasses:l,rightBorderClasses:p}}import{jsx as c,jsxs as be}from"react/jsx-runtime";var Io=function({index:e,active:o=!1,current:t=!1,last:r=!1,label:n}){let{iconClasses:a,leftBorderClasses:s,rightBorderClasses:l}=W(o,t,e,r);return be("div",{className:"relative flex flex-col items-center w-full md:w-auto md:min-w-48",children:[t&&c(ge,{icon:"chevron-down",height:20}),!t&&c("div",{className:"h-5"}),c("div",{className:a,children:be("div",{children:[!o&&e+1,o&&c(ge,{icon:"check",width:12})]})}),c("div",{className:s}),!r&&c("div",{className:l}),c(Oo,{text:n,className:"text-sm text-center text-neutral-700"})]})},xe=Io;import _o from"clsx";import{jsx as Bo}from"react/jsx-runtime";var Wo=function({active:e=!1}){return Bo("div",{className:_o("flex-grow w-full h-1 -mt-[32px] hidden md:block",!e&&"bg-neutral-200",e&&"bg-green-500")})},Pe=Wo;import{Fragment as Jo,jsx as B,jsxs as Xo}from"react/jsx-runtime";var Go=function({stages:e,activeKey:o}){return B("div",{className:"flex flex-col items-center justify-between h-full md:flex-row",children:e.map((t,r)=>Xo(Jo,{children:[B(xe,{index:r,active:r<o,current:r===o,last:r===e.length-1,label:t},`stage-${r}`),r!==e.length-1&&B(Pe,{active:r<o})]}))})},Se=Go;import{Timeline as jo}from"@kanda-libs/ks-design-library";import{jsx as Ce}from"react/jsx-runtime";var zo=function({mobileStages:e=[],activeKey:o}){return Ce("div",{className:"px-2",children:Ce(jo,{compact:!0,items:e.map((t,r)=>({title:t,fill:o===r?"green":"grey"}))})})},Te=zo;import{jsx as G}from"react/jsx-runtime";var $o=function(e){return G(Do,{desktop:G(Se,{...e}),mobile:G(Te,{...e})})},Vo=$o;import{Text as we}from"@kanda-libs/ks-design-library";var he={container:"w-screen h-screen flex flex-col justify-center items-center"};import{jsx as Ne,jsxs as Ko}from"react/jsx-runtime";var Uo=function(){return Ko("div",{className:he.container,children:[Ne(we,{text:"404",className:"mb-4 text-28-32-em text-neutral-900"}),Ne(we,{text:"Page not found",className:"text-20-24 text-neutral-700"})]})},Yo=Uo;import{Text as ve}from"@kanda-libs/ks-design-library";import{jsx as N,jsxs as ye}from"react/jsx-runtime";var qo=function({items:e}){return N("div",{children:e.map((o,t)=>ye("div",{className:"flex flex-row items-center gap-y-2 md:mb-3",children:[N("div",{className:"flex items-center justify-center w-8 h-8 px-4 mr-3 text-green-900 bg-green-200 rounded-full text-18-28-em",children:t+1}),ye("div",{className:"flex flex-col gap-y-1",children:[N(ve,{text:o.title,className:"w-full mb-auto text-16-20-em text-neutral-700"}),N(ve,{text:o.description,className:"w-full mb-auto text-14-22 text-neutral-700"})]})]},`item-${t}`))})},Qo=qo;export{Ee as AlertBanner,Yo as NotFoundPage,Qo as NumberedList,Co as Pdf,ho as Pipeline,Ro as PipelineColumn,Fo as SimpleCompanyCard,mo as SplashScreen,Vo as StageTimeline,so as Table};
|
|
2
2
|
//# sourceMappingURL=index.esm.mjs.map
|
package/dist/index.esm.mjs.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../src/components/AlertBanner/index.tsx", "../src/components/Table/index.tsx", "../src/components/Table/components/HeaderColumn/index.tsx", "../src/components/Table/components/HeaderButton/Button.tsx", "../src/components/Table/components/HeaderButton/constants.ts", "../src/components/Table/components/HeaderButton/useWrapperProps.ts", "../src/components/Table/components/HeaderButton/Wrapper.tsx", "../src/components/Table/components/HeaderButton/index.tsx", "../src/components/Table/components/HeaderColumn/useHeaderColumnProps.ts", "../src/components/Table/components/HeaderColumn/constants.ts", "../src/components/Table/components/HeaderGroup/constants.ts", "../src/components/Table/components/HeaderGroup/useHeaderGroupProps.ts", "../src/components/Table/components/HeaderGroup/index.tsx", "../src/components/Table/components/Cell/index.tsx", "../src/components/Table/components/Cell/useCellClassNames.ts", "../src/components/Table/components/Cell/constants.ts", "../src/hooks/useMobileFullWidthCellStyle.ts", "../src/components/Table/components/Row/useRowClassNames.ts", "../src/components/Table/components/Row/constants.ts", "../src/components/Table/components/Row/index.tsx", "../src/components/Table/components/Pages/index.tsx", "../src/components/Table/useTableProps.ts", "../src/components/Table/helpers/search.ts", "../src/components/SplashScreen/index.tsx", "../src/components/Pdf/index.tsx", "../src/components/Pdf/usePdf.ts", "../src/components/Pipeline/constants.ts", "../src/components/Pipeline/index.tsx", "../src/components/Pipeline/PipelineColumn/index.tsx", "../src/components/Pipeline/PipelineColumn/constants.ts", "../src/components/Pipeline/PipelineColumn/usePipelineColumnPagination.ts", "../src/components/SimpleCompanyCard/index.tsx", "../src/components/NotFoundPage/index.tsx", "../src/components/NotFoundPage/constants.ts"],
|
|
4
|
-
"sourcesContent": ["import type { FunctionComponent } from 'react';\n\nexport interface AlertBannerProps {\n children: string | JSX.Element | JSX.Element[];\n}\n\nconst AlertBanner: FunctionComponent<AlertBannerProps> = function ({\n children,\n}) {\n return (\n <div className=\"p-4 border bg-lavender-100 border-lavender-200 rounded-xl text-lavender-200\">\n {children}\n </div>\n );\n};\n\nexport default AlertBanner;\n", "import type { FunctionComponent, PropsWithChildren } from 'react';\nimport {\n Pagination,\n type StringIndexedObject,\n} from '@kanda-libs/ks-design-library';\nimport type { Column } from 'react-table';\nimport HeaderGroup from './components/HeaderGroup';\nimport Pages from './components/Pages';\nimport useTableProps from './useTableProps';\n\nexport interface TableProps<T extends StringIndexedObject<unknown>> {\n columns: Readonly<Column<T>[]>;\n data: T[];\n filter?: string;\n pageSize?: number;\n compact?: boolean;\n isLoading?: boolean;\n onRowClick?: (row: T) => void;\n query?: string;\n}\n\nexport type TableFunctionComponent<\n T extends StringIndexedObject<unknown> = any,\n> = FunctionComponent<TableProps<T>>;\n\nfunction Table<T extends StringIndexedObject<unknown>>({\n compact = false,\n isLoading = false,\n onRowClick,\n ...props\n}: PropsWithChildren<TableProps<T>>) {\n const {\n page,\n prepareRow,\n columns,\n getTableProps,\n headerGroups,\n paginationProps,\n } = useTableProps(props);\n\n return (\n <>\n <div {...getTableProps()} className=\"w-full\">\n <div>\n {headerGroups.map((headerGroup) => (\n <HeaderGroup\n headerGroup={headerGroup}\n columns={columns}\n isLoading={isLoading}\n />\n ))}\n </div>\n <Pages\n page={page}\n prepareRow={prepareRow}\n isLoading={isLoading}\n compact={compact}\n onRowClick={onRowClick}\n />\n </div>\n {paginationProps.pageCount > 1 && (\n <div className=\"px-4 py-4\">\n <Pagination {...paginationProps} />\n </div>\n )}\n </>\n );\n}\n\nexport default Table;\n", "import { SkeletonLoader } from '@kanda-libs/ks-design-library';\nimport type { FunctionComponent, ReactNode } from 'react';\nimport type { TableHeaderProps } from 'react-table';\nimport HeaderButton from '../HeaderButton';\nimport useHeaderColumnProps from './useHeaderColumnProps';\n\nexport interface HeaderColumnProps extends TableHeaderProps {\n index: number;\n isLoading?: boolean;\n popoverButtons?: boolean;\n label: ReactNode;\n}\n\nconst HeaderColumn: FunctionComponent<HeaderColumnProps> = function ({\n index,\n isLoading = false,\n popoverButtons = false,\n label,\n ...props\n}) {\n const { classNames } = useHeaderColumnProps(index, popoverButtons);\n\n return (\n <div {...props} className={classNames.main}>\n <SkeletonLoader\n isLoading={isLoading}\n wrapperClassName={classNames.loading}\n afterLoading={\n <HeaderButton.Wrapper index={index}>\n <HeaderButton.Button label={label} />\n </HeaderButton.Wrapper>\n }\n />\n </div>\n );\n};\n\nexport default HeaderColumn;\n", "import type { FunctionComponent, HTMLAttributes, ReactNode } from 'react';\nimport { Icon } from '@kanda-libs/ks-design-library';\nimport { BUTTON_CLASS_NAMES, ICON_PROPS } from './constants';\n\nexport interface ButtonProps extends HTMLAttributes<HTMLButtonElement> {\n label: ReactNode;\n}\n\nconst Button: FunctionComponent<ButtonProps> = function ({ label, ...props }) {\n return (\n <button className={BUTTON_CLASS_NAMES} {...props}>\n {label}\n <Icon {...ICON_PROPS} />\n </button>\n );\n};\n\nexport default Button;\n", "export const BUTTON_CLASS_NAMES =\n 'flex px-3 py-1.75 h-9 -ml-3 my-auto rounded-lg bg-transparent hover:bg-neutral-100 text-style-g-em text-neutral-500 whitespace-nowrap z-20';\n\nexport const ICON_PROPS = {\n icon: 'chevron-down',\n stroke: 'neutral-500',\n size: 12,\n className: 'ml-2 my-auto',\n};\n\nexport const WRAPPER_STYLE = {\n width: 'calc(100% + 16px)',\n};\n\nexport const WRAPPER_CLASS_NAMES = {\n container: {\n base: 'w-full h-full overflow-hidden',\n padding: 'pl-4 -ml-4',\n },\n flex: {\n base: 'w-full h-full flex px-4 px-0',\n padding: 'pl-4',\n },\n};\n", "import type { CSSProperties } from 'react';\nimport clsx from 'clsx';\nimport { WRAPPER_STYLE, WRAPPER_CLASS_NAMES } from './constants';\n\nexport interface WrapperPropsHook {\n classNames: {\n container: string;\n flex: string;\n };\n containerStyle: CSSProperties;\n}\n\nexport default function useWrapperProps(index: number): WrapperPropsHook {\n const containerStyle = index === 0 ? WRAPPER_STYLE : {};\n\n const classNames = {\n container: clsx(\n WRAPPER_CLASS_NAMES.container.base,\n index === 0 ? WRAPPER_CLASS_NAMES.container.padding : '',\n ),\n flex: clsx(\n WRAPPER_CLASS_NAMES.flex.base,\n index === 0 ? '' : WRAPPER_CLASS_NAMES.flex.padding,\n ),\n };\n\n return {\n classNames,\n containerStyle,\n };\n}\n", "import type { FunctionComponent } from 'react';\nimport useWrapperProps from './useWrapperProps';\n\nexport interface WrapperProps {\n index: number;\n children?: JSX.Element | JSX.Element[];\n}\n\nconst Wrapper: FunctionComponent<WrapperProps> = function ({\n index,\n children,\n}) {\n const { classNames, containerStyle } = useWrapperProps(index);\n\n return (\n <div className={classNames.container} style={containerStyle}>\n <div className={classNames.flex}>{children}</div>\n </div>\n );\n};\n\nexport default Wrapper;\n", "import Button from './Button';\nimport Wrapper from './Wrapper';\n\nexport default {\n Button,\n Wrapper,\n};\n", "import clsx from 'clsx';\nimport { CLASS_NAMES } from './constants';\n\nexport interface HeaderColumnPropsHook {\n classNames: {\n main: string;\n loading: string;\n wrapper: string;\n };\n}\n\nexport default function useHeaderColumnProps(\n index: number,\n popoverButtons: boolean,\n): HeaderColumnPropsHook {\n const classNames = {\n ...CLASS_NAMES,\n loading: clsx(\n CLASS_NAMES.loading.base,\n index === 0 ? '' : CLASS_NAMES.loading.margin,\n ),\n wrapper: clsx(\n CLASS_NAMES.wrapper.padding,\n popoverButtons ? '' : CLASS_NAMES.wrapper.popover,\n ),\n };\n\n return {\n classNames,\n };\n}\n", "export const CLASS_NAMES = {\n main: 'flex h-14',\n loading: {\n base: 'my-auto md:w-full mr-8',\n margin: 'ml-4',\n },\n wrapper: {\n padding: 'px-2 pt-2',\n popover: 'pb-1',\n },\n};\n\nexport const MOVE_LEFT_ITEM_PROPS = {\n name: 'Move column left',\n icon: 'arrow-left',\n};\n\nexport const MOVE_RIGHT_ITEM_PROPS = {\n name: 'Move column right',\n icon: 'arrow-right',\n};\n\nexport const HIDE_COLUMN_PROPS = {\n name: 'Hide column',\n icon: 'eye-off',\n};\n", "export const CLASS_NAMES = {\n base: 'flex-row h-14 border-b border-neutral-200',\n};\n", "import type {\n ColumnInstance,\n HeaderGroup,\n TableHeaderProps,\n} from 'react-table';\n\nexport interface HeaderGroupPropsHook<T extends Object> {\n headers: ColumnInstance<T>[];\n headerGroupProps: TableHeaderProps;\n totalVisible: number;\n}\n\nexport default function useHeaderGroupProps<T extends Object>(\n headerGroup: HeaderGroup<T>,\n columns: ColumnInstance<T>[],\n): HeaderGroupPropsHook<T> {\n const { headers, getHeaderGroupProps } = headerGroup;\n const headerGroupProps = getHeaderGroupProps({});\n\n const totalVisible = columns.filter((column) => column.isVisible).length;\n\n return {\n headers,\n headerGroupProps,\n totalVisible,\n };\n}\n", "import type { PropsWithChildren } from 'react';\nimport type {\n ColumnInstance,\n HeaderGroup as HeaderGroupType,\n} from 'react-table';\nimport HeaderColumn from '../HeaderColumn';\nimport { CLASS_NAMES } from './constants';\nimport useHeaderGroupProps from './useHeaderGroupProps';\n\nexport interface HeaderGroupProps<T extends Object> {\n headerGroup: HeaderGroupType<T>;\n columns: ColumnInstance<T>[];\n isLoading?: boolean;\n}\n\nfunction HeaderGroup<T extends Object>({\n headerGroup,\n columns,\n isLoading,\n}: PropsWithChildren<HeaderGroupProps<T>>) {\n const { headerGroupProps, headers } = useHeaderGroupProps(\n headerGroup,\n columns,\n );\n\n return (\n <div {...headerGroupProps} className={CLASS_NAMES.base}>\n {headers.map((column, index) => (\n <HeaderColumn\n index={index}\n label={column.render('Header')}\n isLoading={isLoading}\n {...column.getHeaderProps(column.getSortByToggleProps())}\n />\n ))}\n </div>\n );\n}\n\nexport default HeaderGroup;\n", "import type { FunctionComponent, ReactNode } from 'react';\nimport type { TableCellProps } from 'react-table';\nimport { SkeletonLoader, Text } from '@kanda-libs/ks-design-library';\nimport useCellClassNames from './useCellClassNames';\nimport useMobileFullWidthCellStyle from '~/hooks/useMobileFullWidthCellStyle';\n\nexport interface CellProps extends TableCellProps {\n index: number;\n render: () => ReactNode;\n compact?: boolean;\n isLoading?: boolean;\n label?: string;\n}\n\nconst Cell: FunctionComponent<CellProps> = function ({\n render,\n index,\n compact = false,\n isLoading = false,\n label,\n ...props\n}) {\n const classNames = useCellClassNames(index, compact, isLoading);\n\n const { style: unformattedStyle, ...formattedProps } = props;\n const style = useMobileFullWidthCellStyle(unformattedStyle);\n\n return (\n <div {...formattedProps} style={style} className={classNames.cell}>\n <div className={classNames.container}>\n <div className={classNames.render}>\n <SkeletonLoader\n isLoading={isLoading}\n afterLoading={\n <>\n <Text text={`${label}:`} className={classNames.mobileLabel} />\n {render()}\n </>\n }\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default Cell;\n", "import clsx from 'clsx';\nimport { CLASS_NAMES } from './constants';\n\nexport type CellClassNamesHook = {\n cell: string;\n container: string;\n render: string;\n mobileLabel: string;\n};\n\nexport default function useCellClassNames(\n index: number,\n compact: boolean,\n isLoading: boolean,\n): CellClassNamesHook {\n return {\n cell: clsx(\n compact ? CLASS_NAMES.cell.compact : CLASS_NAMES.cell.base,\n index === 0 ? '' : CLASS_NAMES.cell.padding,\n ),\n container: CLASS_NAMES.container,\n render: isLoading ? CLASS_NAMES.renderLoading : CLASS_NAMES.render,\n mobileLabel: CLASS_NAMES.mobileLabel,\n };\n}\n", "export const CLASS_NAMES = {\n container: 'flex w-full h-full',\n render:\n 'w-full my-auto text-style-g text-neutral-600 whitespace-nowrap overflow-hidden overflow-ellipsis',\n renderLoading: 'w-full my-auto mr-8 text-style-g',\n mobileLabel: 'block md:hidden text-16-24-em text-neutral-600 mr-2',\n cell: {\n base: 'px-4 py-1 md:pt-0 md:pr-0 md:pb-0 md:h-16 flex',\n compact: 'h-8 flex',\n padding: 'md:pl-4',\n },\n};\n", "import { useIsDesktop } from '@kanda-libs/ks-design-library';\nimport type { CSSProperties } from 'react';\n\nexport type MobileFullWidthCellStyleHook = CSSProperties;\n\nexport default function useMobileFullWidthCellStyle(\n style?: CSSProperties,\n): MobileFullWidthCellStyleHook {\n if (!style) return {};\n\n const isDesktop = useIsDesktop();\n\n // For mobile, we want to make sure that the cell is always 100% width\n const formattedStyle = {\n ...style,\n width: isDesktop ? style?.width : '100%',\n };\n\n return formattedStyle;\n}\n", "import { useClasses } from '@kanda-libs/ks-design-library';\nimport { CLASS_NAMES } from './constants';\n\nexport interface RowClassNamesHook {\n base: string;\n compact: string;\n border: string;\n hover: string;\n button: string;\n}\n\nexport default function useRowClassNames(\n index: number,\n canSelect: boolean,\n): RowClassNamesHook {\n const classNames = useClasses(CLASS_NAMES, {\n base: ['.base', index === 9 ? '' : '.border', canSelect ? '.hover' : ''],\n button: ['.button'],\n });\n\n return classNames as RowClassNamesHook;\n}\n", "export const CLASS_NAMES = {\n base: 'relative md:h-16 flex-col py-2 md:py-0 md:flex-row',\n compact: 'relative h-8',\n border: 'border-b border-neutral-200',\n hover: 'group hover:bg-neutral-50 cursor-pointer',\n button: 'hidden group-hover:block',\n};\n", "import type { PropsWithChildren } from 'react';\nimport type { Row as RowType, TableRowProps } from 'react-table';\nimport Cell from '../Cell';\nimport useRowClassNames from './useRowClassNames';\n\nexport interface RowProps<T extends Object> extends TableRowProps {\n cells: RowType<T>['cells'];\n index: number;\n compact?: boolean;\n isLoading?: boolean;\n onRowClick?: (row: T) => void;\n}\n\nfunction Row<T extends Object>({\n cells,\n index,\n compact = false,\n isLoading = false,\n onRowClick,\n ...props\n}: PropsWithChildren<RowProps<T>>) {\n const classNames = useRowClassNames(index, !!onRowClick);\n\n return (\n <div\n {...props}\n className={compact ? classNames.compact : classNames.base}\n onClick={() => {\n onRowClick && onRowClick(cells[0].row.original as T);\n }}\n >\n {cells.map((cell, cellIndex) => (\n <Cell\n {...cell.getCellProps()}\n index={cellIndex}\n isLoading={isLoading}\n render={() => cell.render('Cell')}\n label={cell.column.Header as string}\n />\n ))}\n </div>\n );\n}\n\nexport default Row;\n", "import type { StringIndexedObject } from '@kanda-libs/ks-design-library';\nimport type { PropsWithChildren } from 'react';\nimport type { Row as RowType } from 'react-table';\nimport Row from '../Row';\n\nexport interface PagesProps<T extends StringIndexedObject> {\n page: RowType<T>[];\n prepareRow: (row: RowType<T>) => void;\n isLoading?: boolean;\n compact?: boolean;\n onRowClick?: (row: T) => void;\n}\n\nfunction Pages<T extends StringIndexedObject>({\n page,\n prepareRow,\n isLoading = false,\n compact = false,\n onRowClick,\n}: PropsWithChildren<PagesProps<T>>) {\n return (\n <>\n {page.map((row, index) => {\n prepareRow(row);\n return (\n <Row\n {...row.getRowProps()}\n index={index}\n cells={row.cells}\n isLoading={isLoading}\n compact={compact}\n onRowClick={onRowClick}\n />\n );\n })}\n </>\n );\n}\nexport default Pages;\n", "import type { TableInstance, Row } from '../../@types/index';\nimport {\n useTable,\n useGlobalFilter,\n usePagination,\n useSortBy,\n useFlexLayout,\n type IdType,\n TableOptions,\n} from 'react-table';\nimport type { TableProps } from '.';\nimport { globalFilter } from './helpers/search';\nimport type {\n PaginationProps,\n StringIndexedObject,\n} from '@kanda-libs/ks-design-library';\nimport { useEffect } from 'react';\n\nexport interface TablePropsHook<T extends StringIndexedObject<unknown>>\n extends TableInstance<T> {\n paginationProps: PaginationProps;\n}\n\nexport default function useTableProps<T extends StringIndexedObject<unknown>>({\n columns,\n data,\n pageSize = 10,\n query = '',\n}: TableProps<T>): TablePropsHook<T> {\n const table = useTable<T>(\n {\n columns,\n data,\n initialState: {\n pageSize: 10,\n pageIndex: 0,\n },\n autoResetGlobalFilter: false,\n globalFilter: (\n rows: Row<T>[],\n searchKeys: IdType<T>[],\n filterValue: string,\n ) => globalFilter(rows, searchKeys, filterValue, pageSize),\n } as unknown as TableOptions<T>,\n useGlobalFilter,\n useSortBy,\n usePagination,\n useFlexLayout,\n );\n\n const {\n gotoPage,\n pageCount,\n state: { pageIndex },\n } = table;\n\n const paginationProps: PaginationProps = {\n pageCount,\n pageIndex,\n setPage: (nextPage: number) => {\n gotoPage(nextPage);\n },\n };\n\n useEffect(() => {\n table.setGlobalFilter(query);\n }, [query]);\n\n return {\n paginationProps,\n ...table,\n };\n}\n", "import type { IdType } from 'react-table';\nimport type { Row } from '../../../@types/index';\nimport Fuse from 'fuse.js';\nimport type { StringIndexedObject } from '~/types';\n\nconst exactMatchSearch = <T extends StringIndexedObject<unknown>>(\n rows: Row<T>[],\n filterValue: string,\n) => {\n return rows.filter((row) => {\n // Take all values from the row, and add them together in a string\n // for the purposes of searching\n const rowValues = Object.values(row.values).join(', ');\n\n return rowValues.toLowerCase().includes(filterValue.toLowerCase());\n });\n};\n\nconst excludeExactMatches = <T extends StringIndexedObject<unknown>>(\n rows: Row<T>[],\n exactMatchRows: Row<T>[],\n) =>\n rows.filter(\n ({ id }) => exactMatchRows.filter((p) => p.id === id).length === 0,\n );\n\nconst fuzzySearch = <T extends StringIndexedObject<unknown>>(\n rows: Row<T>[],\n filterValue: string,\n searchKeys: string[],\n numberOfRows: number,\n exactMatchRows: Row<T>[],\n): Row<T>[] => {\n const currentRows = rows.map((row) => {\n return row.values;\n });\n\n const fuse = new Fuse(currentRows, {\n keys: searchKeys.map((key) => ({\n name: key,\n // Because FuseJS allows for dot notation,\n // we need to use a function to get the value\n // as the object returned from the table is flat,\n // rather than nested\n getFn: (obj: StringIndexedObject) => obj[key],\n })),\n });\n\n const results = fuse\n .search(filterValue)\n .map(({ item }) => item)\n .slice(0, numberOfRows);\n\n const filteredResults = results\n .map((result) => rows.find((row) => row.values.cid === result.cid))\n .filter(Boolean) as Row<T>[];\n\n return excludeExactMatches(filteredResults, exactMatchRows);\n};\n\nexport const globalFilter = <T extends StringIndexedObject<unknown>>(\n rows: Row<T>[],\n searchKeys: IdType<T>[],\n filterValue: string,\n pageSize = 10,\n): Row<T>[] => {\n if (filterValue.length < 1) {\n return rows;\n }\n\n // Get the first 10 exact matches. The reason for this is that exact matching\n // should take presedence over fuzzy matching. An exact match is more useful\n // but also less expensive to compute. So there's no need to do a fuzzy search\n // if there are >= 10 exact matches.\n const exactMatches = exactMatchSearch(rows, filterValue).slice(0, pageSize);\n const currentRowsExcludingExactMatches = excludeExactMatches(\n rows,\n exactMatches,\n );\n\n const fuzzyMatches = fuzzySearch(\n currentRowsExcludingExactMatches,\n filterValue,\n searchKeys,\n pageSize - exactMatches.length,\n exactMatches,\n );\n\n const results = [...exactMatches, ...fuzzyMatches];\n\n // Return the rows in the same order as the original rows\n // to preserve sorting, which happens before fuzzy matching\n return rows\n .map(({ id }) => results.find((row) => row.id === id))\n .filter(Boolean) as Row<T>[];\n};\n", "import { Icon, Logo } from '@kanda-libs/ks-design-library';\n\ntype Widths = 80 | 96 | 120 | 160;\n\ninterface SplashScreenProps {\n logo?: boolean;\n icon: string;\n iconClassName?: string;\n iconSize?: number;\n title: string;\n subText: string | JSX.Element;\n boldSubText?: string;\n cta?: JSX.Element;\n append?: JSX.Element;\n width?: Widths;\n contentWidth?: Widths;\n content?: JSX.Element;\n}\n\nconst WIDTHS = {\n 80: 'max-w-80',\n 96: 'max-w-96',\n 120: 'max-w-120',\n 160: 'max-w160',\n};\n\nconst SplashScreen = ({\n logo,\n icon,\n iconClassName,\n iconSize,\n title,\n subText,\n boldSubText,\n cta,\n append,\n width = 80,\n contentWidth = 80,\n content,\n}: SplashScreenProps) => (\n <div\n className={`flex flex-col m-auto w-full ${WIDTHS[width]} text-center items-center justify-center`}\n >\n {logo && (\n <div className=\"mb-10\">\n <Logo height={32} />\n </div>\n )}\n {!logo && (\n <Icon\n icon={icon}\n size={iconSize}\n className={`mx-auto mb-8 ${iconClassName}`}\n />\n )}\n <h1 className=\"text-24-28-em mb-4\">{title}</h1>\n <div className={`flex flex-col w-full ${WIDTHS[contentWidth]} mx-auto`}>\n {content && <div className=\"mt-4 mb-8\">{content}</div>}\n <span className=\"text-16-24 text-neutral-600\">\n {subText}\n {boldSubText && <b> {boldSubText}</b>}\n </span>\n {cta && <div className=\"mt-10\">{cta}</div>}\n {append}\n </div>\n </div>\n);\n\nSplashScreen.defaultProps = {\n logo: false,\n iconClassName: '',\n iconSize: 104,\n cta: null,\n append: null,\n boldSubText: null,\n content: null,\n width: 96,\n contentWidth: 96,\n};\n\nexport default SplashScreen;\n", "import { FunctionComponent, useEffect } from 'react';\nimport { Document, Page, pdfjs } from 'react-pdf';\nimport usePdf from './usePdf';\n\n// This sucks, but so does react-pdf's typescript support\nconst DocumentTag = Document as unknown as FunctionComponent<any>;\n\nexport interface PdfProps {\n content?: string;\n}\n\nconst Pdf: FunctionComponent<PdfProps> = function ({ content }) {\n const { pdfProps, pages, showContent } = usePdf(content);\n\n useEffect(() => {\n pdfjs.GlobalWorkerOptions.workerSrc = `https://cdnjs.cloudflare.com/ajax/libs/pdf.js/${pdfjs.version}/pdf.worker.js`;\n }, []);\n\n if (!showContent) {\n return <></>;\n }\n\n return (\n <DocumentTag {...pdfProps}>\n {pages &&\n pages.map((page) => (\n <>\n <Page {...page} />\n </>\n ))}\n </DocumentTag>\n );\n};\n\nexport default Pdf;\n", "import { useToast } from '@kanda-libs/ks-design-library';\nimport { useCallback, useMemo, useState } from 'react';\n\nexport interface PdfPage {\n key: string;\n pageNumber: number;\n className: string;\n}\n\nexport interface PdfOnLoadSuccessArgs {\n numPages: number;\n}\n\nexport interface PdfOnLoadErrorArgs {\n message: string;\n}\n\nexport interface PdfHook {\n pdfProps: {\n file: string;\n error: string;\n onLoadSuccess: (args: PdfOnLoadSuccessArgs) => void;\n onLoadError: (args: PdfOnLoadErrorArgs) => void;\n onSourceError: (args: PdfOnLoadErrorArgs) => void;\n } | null;\n pages: PdfPage[] | null;\n showContent: boolean;\n}\n\nexport default function usePdf(content?: string): PdfHook {\n const [pages, setPages] = useState<PdfPage[] | null>(null);\n\n const { showError } = useToast();\n\n const onLoadSuccess = useCallback(({ numPages }: PdfOnLoadSuccessArgs) => {\n setPages(\n [...Array(numPages).keys()].map((index) => ({\n key: `page_${index + 1}`,\n pageNumber: index + 1,\n className: index !== 0 ? 'mt-4' : '',\n })),\n );\n }, []);\n\n const onLoadError = useCallback(\n ({ message }: PdfOnLoadErrorArgs) =>\n showError(\n `Error loading document. Please contact Kanda. Error message: ${message}`,\n ),\n [showError],\n );\n\n const onSourceError = useCallback(\n ({ message }: PdfOnLoadErrorArgs) =>\n showError(\n `Error retrieving document source. Please contact Kanda. Error message: ${message}`,\n ),\n [showError],\n );\n\n const pdfProps = useMemo(() => {\n if (!content) return null;\n return {\n file: `data:application/pdf;base64,${content}`,\n error:\n 'Failed to load the PDF file. The file can still be downloaded by clicking the button below',\n onLoadSuccess,\n onLoadError,\n onSourceError,\n };\n }, [content, onLoadSuccess, onLoadError, onSourceError]);\n\n const showContent = !!(pdfProps && !!content);\n\n return {\n pdfProps,\n pages,\n showContent,\n };\n}\n", "export const CLASS_NAMES = {\n container: 'grid grid-cols-7 justify-start items-start gap-x-2',\n};\n", "import type { FunctionComponent } from 'react';\nimport { CLASS_NAMES } from './constants';\n\nexport interface PipelineProps {\n children: JSX.Element | JSX.Element[];\n}\n\nconst Pipeline: FunctionComponent<PipelineProps> = function ({ children }) {\n return <div className={CLASS_NAMES.container}>{children}</div>;\n};\n\nexport default Pipeline;\n", "import { Children, type FunctionComponent } from 'react';\nimport { Button } from '@kanda-libs/ks-design-library';\nimport { CLASS_NAMES } from './constants';\nimport usePipelineColumnPagination from './usePipelineColumnPagination';\n\nexport interface PipelineColumnProps {\n title: string;\n children: JSX.Element | JSX.Element[];\n perPage?: number;\n}\n\nconst PipelineColumn: FunctionComponent<PipelineColumnProps> = function ({\n title,\n children,\n perPage = 5,\n}) {\n const { items, showMore, canShowMore } = usePipelineColumnPagination(\n Children.toArray(children) as JSX.Element[],\n perPage,\n );\n\n return (\n <div>\n <div className={CLASS_NAMES.title}>{title}</div>\n <div className={CLASS_NAMES.items}>\n {items}\n {canShowMore && (\n <div className=\"mt-2\">\n <Button.Text\n id=\"pipeline-column-show-more\"\n variant=\"outline\"\n onClick={showMore}\n label=\"More\"\n className=\"w-full\"\n />\n </div>\n )}\n </div>\n </div>\n );\n};\n\nexport default PipelineColumn;\n", "export const CLASS_NAMES = {\n title: 'text-18-22-em text-neutral-900 py-2 text-center h-14',\n items: 'flex flex-col gap-y-2',\n};\n", "import { useCallback, useState } from 'react';\n\nexport interface PipelineColumnPaginationHook {\n items: JSX.Element[];\n showMore: () => void;\n canShowMore: boolean;\n}\n\nexport default function usePipelineColumnPagination(\n children: JSX.Element[],\n perPage: number,\n): PipelineColumnPaginationHook {\n const [page, setPage] = useState(0);\n\n const showMore = useCallback(() => {\n setPage((currentPage) => currentPage + 1);\n }, [setPage]);\n\n const items = children.slice(0, (page + 1) * perPage);\n\n return {\n items,\n showMore,\n canShowMore: children.length > items.length,\n };\n}\n", "import { Card, Text, TimeAgo } from '@kanda-libs/ks-design-library';\nimport type { FunctionComponent } from 'react';\n\nexport interface SimpleCompanyCardProps {\n name: string;\n signedUpDate: Date;\n reviewed?: boolean;\n isLoading?: boolean;\n}\n\nconst SimpleCompanyCard: FunctionComponent<SimpleCompanyCardProps> = function ({\n name,\n signedUpDate,\n reviewed = false,\n isLoading = false,\n}) {\n return (\n <Card className={reviewed ? 'bg-blue-100' : ''}>\n <div className=\"flex flex-col gap-y-2\">\n <Text text={name} className=\"text-16-20-em\" isLoading={isLoading} />\n {reviewed && <Text text=\"Reviewed\" className=\"text-12-18-em-up\" />}\n <TimeAgo timestamp={signedUpDate.getTime()} />\n </div>\n </Card>\n );\n};\n\nexport default SimpleCompanyCard;\n", "import { Text } from '@kanda-libs/ks-design-library';\nimport type { FunctionComponent } from 'react';\nimport { CLASS_NAMES } from './constants';\n\nconst NotFoundPage: FunctionComponent = function () {\n return (\n <div className={CLASS_NAMES.container}>\n <Text text=\"404\" className=\"mb-4 text-28-32-em text-neutral-900\" />\n <Text text=\"Page not found\" className=\"text-20-24 text-neutral-700\" />\n </div>\n );\n};\n\nexport default NotFoundPage;\n", "export const CLASS_NAMES = {\n container: 'w-screen h-screen flex flex-col justify-center items-center',\n};\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["jsx", "AlertBanner", "children", "AlertBanner_default", "Pagination", "SkeletonLoader", "Icon", "BUTTON_CLASS_NAMES", "ICON_PROPS", "WRAPPER_STYLE", "WRAPPER_CLASS_NAMES", "jsx", "jsxs", "Button", "label", "props", "BUTTON_CLASS_NAMES", "Icon", "ICON_PROPS", "Button_default", "clsx", "useWrapperProps", "index", "containerStyle", "WRAPPER_STYLE", "clsx", "WRAPPER_CLASS_NAMES", "jsx", "Wrapper", "index", "children", "classNames", "containerStyle", "useWrapperProps", "Wrapper_default", "HeaderButton_default", "Button_default", "Wrapper_default", "clsx", "CLASS_NAMES", "useHeaderColumnProps", "index", "popoverButtons", "CLASS_NAMES", "clsx", "jsx", "HeaderColumn", "index", "isLoading", "popoverButtons", "label", "props", "classNames", "useHeaderColumnProps", "SkeletonLoader", "HeaderButton_default", "HeaderColumn_default", "CLASS_NAMES", "useHeaderGroupProps", "headerGroup", "columns", "headers", "getHeaderGroupProps", "headerGroupProps", "totalVisible", "column", "jsx", "HeaderGroup", "headerGroup", "columns", "isLoading", "headerGroupProps", "headers", "useHeaderGroupProps", "CLASS_NAMES", "column", "index", "HeaderColumn_default", "HeaderGroup_default", "SkeletonLoader", "Text", "clsx", "CLASS_NAMES", "useCellClassNames", "index", "compact", "isLoading", "clsx", "CLASS_NAMES", "useIsDesktop", "useMobileFullWidthCellStyle", "style", "isDesktop", "Fragment", "jsx", "jsxs", "Cell", "render", "index", "compact", "isLoading", "label", "props", "classNames", "useCellClassNames", "unformattedStyle", "formattedProps", "style", "useMobileFullWidthCellStyle", "SkeletonLoader", "Text", "Cell_default", "useClasses", "CLASS_NAMES", "useRowClassNames", "index", "canSelect", "useClasses", "CLASS_NAMES", "jsx", "Row", "cells", "index", "compact", "isLoading", "onRowClick", "props", "classNames", "useRowClassNames", "cell", "cellIndex", "Cell_default", "Row_default", "Fragment", "jsx", "Pages", "page", "prepareRow", "isLoading", "compact", "onRowClick", "row", "index", "Row_default", "Pages_default", "useTable", "useGlobalFilter", "usePagination", "useSortBy", "useFlexLayout", "Fuse", "exactMatchSearch", "rows", "filterValue", "row", "excludeExactMatches", "exactMatchRows", "id", "p", "fuzzySearch", "searchKeys", "numberOfRows", "currentRows", "filteredResults", "key", "obj", "item", "result", "globalFilter", "pageSize", "exactMatches", "currentRowsExcludingExactMatches", "fuzzyMatches", "results", "useEffect", "useTableProps", "columns", "data", "pageSize", "query", "table", "useTable", "rows", "searchKeys", "filterValue", "globalFilter", "useGlobalFilter", "useSortBy", "usePagination", "useFlexLayout", "gotoPage", "pageCount", "pageIndex", "paginationProps", "nextPage", "Fragment", "jsx", "jsxs", "Table", "compact", "isLoading", "onRowClick", "props", "page", "prepareRow", "columns", "getTableProps", "headerGroups", "paginationProps", "useTableProps", "headerGroup", "HeaderGroup_default", "Pages_default", "Pagination", "Table_default", "Icon", "Logo", "jsx", "jsxs", "WIDTHS", "SplashScreen", "logo", "icon", "iconClassName", "iconSize", "title", "subText", "boldSubText", "cta", "append", "width", "contentWidth", "content", "SplashScreen_default", "useEffect", "Document", "Page", "pdfjs", "useToast", "useCallback", "useMemo", "useState", "usePdf", "content", "pages", "setPages", "showError", "onLoadSuccess", "numPages", "index", "onLoadError", "message", "onSourceError", "pdfProps", "Fragment", "jsx", "DocumentTag", "Document", "Pdf", "content", "pdfProps", "pages", "showContent", "usePdf", "useEffect", "pdfjs", "page", "Page", "Pdf_default", "CLASS_NAMES", "jsx", "Pipeline", "children", "CLASS_NAMES", "Pipeline_default", "Children", "Button", "CLASS_NAMES", "useCallback", "useState", "usePipelineColumnPagination", "children", "perPage", "page", "setPage", "showMore", "currentPage", "items", "jsx", "jsxs", "PipelineColumn", "title", "children", "perPage", "items", "showMore", "canShowMore", "usePipelineColumnPagination", "Children", "CLASS_NAMES", "Button", "PipelineColumn_default", "Card", "Text", "TimeAgo", "jsx", "jsxs", "SimpleCompanyCard", "name", "signedUpDate", "reviewed", "isLoading", "SimpleCompanyCard_default", "Text", "CLASS_NAMES", "jsx", "jsxs", "NotFoundPage", "CLASS_NAMES", "Text", "NotFoundPage_default"]
|
|
3
|
+
"sources": ["../src/components/AlertBanner/index.tsx", "../src/components/Table/index.tsx", "../src/components/Table/components/HeaderColumn/index.tsx", "../src/components/Table/components/HeaderButton/Button.tsx", "../src/components/Table/components/HeaderButton/constants.ts", "../src/components/Table/components/HeaderButton/useWrapperProps.ts", "../src/components/Table/components/HeaderButton/Wrapper.tsx", "../src/components/Table/components/HeaderButton/index.tsx", "../src/components/Table/components/HeaderColumn/useHeaderColumnProps.ts", "../src/components/Table/components/HeaderColumn/constants.ts", "../src/components/Table/components/HeaderGroup/constants.ts", "../src/components/Table/components/HeaderGroup/useHeaderGroupProps.ts", "../src/components/Table/components/HeaderGroup/index.tsx", "../src/components/Table/components/Cell/index.tsx", "../src/components/Table/components/Cell/useCellClassNames.ts", "../src/components/Table/components/Cell/constants.ts", "../src/hooks/useMobileFullWidthCellStyle.ts", "../src/components/Table/components/Row/useRowClassNames.ts", "../src/components/Table/components/Row/constants.ts", "../src/components/Table/components/Row/index.tsx", "../src/components/Table/components/Pages/index.tsx", "../src/components/Table/useTableProps.ts", "../src/components/Table/helpers/search.ts", "../src/components/SplashScreen/index.tsx", "../src/components/Pdf/index.tsx", "../src/components/Pdf/usePdf.ts", "../src/components/Pipeline/constants.ts", "../src/components/Pipeline/index.tsx", "../src/components/Pipeline/PipelineColumn/index.tsx", "../src/components/Pipeline/PipelineColumn/constants.ts", "../src/components/Pipeline/PipelineColumn/usePipelineColumnPagination.ts", "../src/components/SimpleCompanyCard/index.tsx", "../src/components/StageTimeline/index.tsx", "../src/components/StageTimeline/Stage/index.tsx", "../src/components/StageTimeline/Stage/useStageProps.ts", "../src/components/StageTimeline/TimelineBorder.tsx", "../src/components/StageTimeline/Desktop.tsx", "../src/components/StageTimeline/Mobile.tsx", "../src/components/NotFoundPage/index.tsx", "../src/components/NotFoundPage/constants.ts", "../src/components/NumberedList/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import type { FunctionComponent } from 'react';\n\nexport interface AlertBannerProps {\n children: string | JSX.Element | JSX.Element[];\n}\n\nconst AlertBanner: FunctionComponent<AlertBannerProps> = function ({\n children,\n}) {\n return (\n <div className=\"p-4 border bg-lavender-100 border-lavender-200 rounded-xl text-lavender-200\">\n {children}\n </div>\n );\n};\n\nexport default AlertBanner;\n", "import type { FunctionComponent, PropsWithChildren } from 'react';\nimport {\n Pagination,\n type StringIndexedObject,\n} from '@kanda-libs/ks-design-library';\nimport type { Column } from 'react-table';\nimport HeaderGroup from './components/HeaderGroup';\nimport Pages from './components/Pages';\nimport useTableProps from './useTableProps';\n\nexport interface TableProps<T extends StringIndexedObject<unknown>> {\n columns: Readonly<Column<T>[]>;\n data: T[];\n filter?: string;\n pageSize?: number;\n compact?: boolean;\n isLoading?: boolean;\n onRowClick?: (row: T) => void;\n query?: string;\n}\n\nexport type TableFunctionComponent<\n T extends StringIndexedObject<unknown> = any,\n> = FunctionComponent<TableProps<T>>;\n\nfunction Table<T extends StringIndexedObject<unknown>>({\n compact = false,\n isLoading = false,\n onRowClick,\n ...props\n}: PropsWithChildren<TableProps<T>>) {\n const {\n page,\n prepareRow,\n columns,\n getTableProps,\n headerGroups,\n paginationProps,\n } = useTableProps(props);\n\n return (\n <>\n <div {...getTableProps()} className=\"w-full\">\n <div>\n {headerGroups.map((headerGroup) => (\n <HeaderGroup\n headerGroup={headerGroup}\n columns={columns}\n isLoading={isLoading}\n />\n ))}\n </div>\n <Pages\n page={page}\n prepareRow={prepareRow}\n isLoading={isLoading}\n compact={compact}\n onRowClick={onRowClick}\n />\n </div>\n {paginationProps.pageCount > 1 && (\n <div className=\"px-4 py-4\">\n <Pagination {...paginationProps} />\n </div>\n )}\n </>\n );\n}\n\nexport default Table;\n", "import { SkeletonLoader } from '@kanda-libs/ks-design-library';\nimport type { FunctionComponent, ReactNode } from 'react';\nimport type { TableHeaderProps } from 'react-table';\nimport HeaderButton from '../HeaderButton';\nimport useHeaderColumnProps from './useHeaderColumnProps';\n\nexport interface HeaderColumnProps extends TableHeaderProps {\n index: number;\n isLoading?: boolean;\n popoverButtons?: boolean;\n label: ReactNode;\n}\n\nconst HeaderColumn: FunctionComponent<HeaderColumnProps> = function ({\n index,\n isLoading = false,\n popoverButtons = false,\n label,\n ...props\n}) {\n const { classNames } = useHeaderColumnProps(index, popoverButtons);\n\n return (\n <div {...props} className={classNames.main}>\n <SkeletonLoader\n isLoading={isLoading}\n wrapperClassName={classNames.loading}\n afterLoading={\n <HeaderButton.Wrapper index={index}>\n <HeaderButton.Button label={label} />\n </HeaderButton.Wrapper>\n }\n />\n </div>\n );\n};\n\nexport default HeaderColumn;\n", "import type { FunctionComponent, HTMLAttributes, ReactNode } from 'react';\nimport { Icon } from '@kanda-libs/ks-design-library';\nimport { BUTTON_CLASS_NAMES, ICON_PROPS } from './constants';\n\nexport interface ButtonProps extends HTMLAttributes<HTMLButtonElement> {\n label: ReactNode;\n}\n\nconst Button: FunctionComponent<ButtonProps> = function ({ label, ...props }) {\n return (\n <button className={BUTTON_CLASS_NAMES} {...props}>\n {label}\n <Icon {...ICON_PROPS} />\n </button>\n );\n};\n\nexport default Button;\n", "export const BUTTON_CLASS_NAMES =\n 'flex px-3 py-1.75 h-9 -ml-3 my-auto rounded-lg bg-transparent hover:bg-neutral-100 text-style-g-em text-neutral-500 whitespace-nowrap z-20';\n\nexport const ICON_PROPS = {\n icon: 'chevron-down',\n stroke: 'neutral-500',\n size: 12,\n className: 'ml-2 my-auto',\n};\n\nexport const WRAPPER_STYLE = {\n width: 'calc(100% + 16px)',\n};\n\nexport const WRAPPER_CLASS_NAMES = {\n container: {\n base: 'w-full h-full overflow-hidden',\n padding: 'pl-4 -ml-4',\n },\n flex: {\n base: 'w-full h-full flex px-4 px-0',\n padding: 'pl-4',\n },\n};\n", "import type { CSSProperties } from 'react';\nimport clsx from 'clsx';\nimport { WRAPPER_STYLE, WRAPPER_CLASS_NAMES } from './constants';\n\nexport interface WrapperPropsHook {\n classNames: {\n container: string;\n flex: string;\n };\n containerStyle: CSSProperties;\n}\n\nexport default function useWrapperProps(index: number): WrapperPropsHook {\n const containerStyle = index === 0 ? WRAPPER_STYLE : {};\n\n const classNames = {\n container: clsx(\n WRAPPER_CLASS_NAMES.container.base,\n index === 0 ? WRAPPER_CLASS_NAMES.container.padding : '',\n ),\n flex: clsx(\n WRAPPER_CLASS_NAMES.flex.base,\n index === 0 ? '' : WRAPPER_CLASS_NAMES.flex.padding,\n ),\n };\n\n return {\n classNames,\n containerStyle,\n };\n}\n", "import type { FunctionComponent } from 'react';\nimport useWrapperProps from './useWrapperProps';\n\nexport interface WrapperProps {\n index: number;\n children?: JSX.Element | JSX.Element[];\n}\n\nconst Wrapper: FunctionComponent<WrapperProps> = function ({\n index,\n children,\n}) {\n const { classNames, containerStyle } = useWrapperProps(index);\n\n return (\n <div className={classNames.container} style={containerStyle}>\n <div className={classNames.flex}>{children}</div>\n </div>\n );\n};\n\nexport default Wrapper;\n", "import Button from './Button';\nimport Wrapper from './Wrapper';\n\nexport default {\n Button,\n Wrapper,\n};\n", "import clsx from 'clsx';\nimport { CLASS_NAMES } from './constants';\n\nexport interface HeaderColumnPropsHook {\n classNames: {\n main: string;\n loading: string;\n wrapper: string;\n };\n}\n\nexport default function useHeaderColumnProps(\n index: number,\n popoverButtons: boolean,\n): HeaderColumnPropsHook {\n const classNames = {\n ...CLASS_NAMES,\n loading: clsx(\n CLASS_NAMES.loading.base,\n index === 0 ? '' : CLASS_NAMES.loading.margin,\n ),\n wrapper: clsx(\n CLASS_NAMES.wrapper.padding,\n popoverButtons ? '' : CLASS_NAMES.wrapper.popover,\n ),\n };\n\n return {\n classNames,\n };\n}\n", "export const CLASS_NAMES = {\n main: 'flex h-14',\n loading: {\n base: 'my-auto md:w-full mr-8',\n margin: 'ml-4',\n },\n wrapper: {\n padding: 'px-2 pt-2',\n popover: 'pb-1',\n },\n};\n\nexport const MOVE_LEFT_ITEM_PROPS = {\n name: 'Move column left',\n icon: 'arrow-left',\n};\n\nexport const MOVE_RIGHT_ITEM_PROPS = {\n name: 'Move column right',\n icon: 'arrow-right',\n};\n\nexport const HIDE_COLUMN_PROPS = {\n name: 'Hide column',\n icon: 'eye-off',\n};\n", "export const CLASS_NAMES = {\n base: 'flex-row h-14 border-b border-neutral-200',\n};\n", "import type {\n ColumnInstance,\n HeaderGroup,\n TableHeaderProps,\n} from 'react-table';\n\nexport interface HeaderGroupPropsHook<T extends Object> {\n headers: ColumnInstance<T>[];\n headerGroupProps: TableHeaderProps;\n totalVisible: number;\n}\n\nexport default function useHeaderGroupProps<T extends Object>(\n headerGroup: HeaderGroup<T>,\n columns: ColumnInstance<T>[],\n): HeaderGroupPropsHook<T> {\n const { headers, getHeaderGroupProps } = headerGroup;\n const headerGroupProps = getHeaderGroupProps({});\n\n const totalVisible = columns.filter((column) => column.isVisible).length;\n\n return {\n headers,\n headerGroupProps,\n totalVisible,\n };\n}\n", "import type { PropsWithChildren } from 'react';\nimport type {\n ColumnInstance,\n HeaderGroup as HeaderGroupType,\n} from 'react-table';\nimport HeaderColumn from '../HeaderColumn';\nimport { CLASS_NAMES } from './constants';\nimport useHeaderGroupProps from './useHeaderGroupProps';\n\nexport interface HeaderGroupProps<T extends Object> {\n headerGroup: HeaderGroupType<T>;\n columns: ColumnInstance<T>[];\n isLoading?: boolean;\n}\n\nfunction HeaderGroup<T extends Object>({\n headerGroup,\n columns,\n isLoading,\n}: PropsWithChildren<HeaderGroupProps<T>>) {\n const { headerGroupProps, headers } = useHeaderGroupProps(\n headerGroup,\n columns,\n );\n\n return (\n <div {...headerGroupProps} className={CLASS_NAMES.base}>\n {headers.map((column, index) => (\n <HeaderColumn\n index={index}\n label={column.render('Header')}\n isLoading={isLoading}\n {...column.getHeaderProps(column.getSortByToggleProps())}\n />\n ))}\n </div>\n );\n}\n\nexport default HeaderGroup;\n", "import type { FunctionComponent, ReactNode } from 'react';\nimport type { TableCellProps } from 'react-table';\nimport { SkeletonLoader, Text } from '@kanda-libs/ks-design-library';\nimport useCellClassNames from './useCellClassNames';\nimport useMobileFullWidthCellStyle from '~/hooks/useMobileFullWidthCellStyle';\n\nexport interface CellProps extends TableCellProps {\n index: number;\n render: () => ReactNode;\n compact?: boolean;\n isLoading?: boolean;\n label?: string;\n}\n\nconst Cell: FunctionComponent<CellProps> = function ({\n render,\n index,\n compact = false,\n isLoading = false,\n label,\n ...props\n}) {\n const classNames = useCellClassNames(index, compact, isLoading);\n\n const { style: unformattedStyle, ...formattedProps } = props;\n const style = useMobileFullWidthCellStyle(unformattedStyle);\n\n return (\n <div {...formattedProps} style={style} className={classNames.cell}>\n <div className={classNames.container}>\n <div className={classNames.render}>\n <SkeletonLoader\n isLoading={isLoading}\n afterLoading={\n <>\n <Text text={`${label}:`} className={classNames.mobileLabel} />\n {render()}\n </>\n }\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default Cell;\n", "import clsx from 'clsx';\nimport { CLASS_NAMES } from './constants';\n\nexport type CellClassNamesHook = {\n cell: string;\n container: string;\n render: string;\n mobileLabel: string;\n};\n\nexport default function useCellClassNames(\n index: number,\n compact: boolean,\n isLoading: boolean,\n): CellClassNamesHook {\n return {\n cell: clsx(\n compact ? CLASS_NAMES.cell.compact : CLASS_NAMES.cell.base,\n index === 0 ? '' : CLASS_NAMES.cell.padding,\n ),\n container: CLASS_NAMES.container,\n render: isLoading ? CLASS_NAMES.renderLoading : CLASS_NAMES.render,\n mobileLabel: CLASS_NAMES.mobileLabel,\n };\n}\n", "export const CLASS_NAMES = {\n container: 'flex w-full h-full',\n render:\n 'w-full my-auto text-style-g text-neutral-600 whitespace-nowrap overflow-hidden overflow-ellipsis',\n renderLoading: 'w-full my-auto mr-8 text-style-g',\n mobileLabel: 'block md:hidden text-16-24-em text-neutral-600 mr-2',\n cell: {\n base: 'px-4 py-1 md:pt-0 md:pr-0 md:pb-0 md:h-16 flex',\n compact: 'h-8 flex',\n padding: 'md:pl-4',\n },\n};\n", "import { useIsDesktop } from '@kanda-libs/ks-design-library';\nimport type { CSSProperties } from 'react';\n\nexport type MobileFullWidthCellStyleHook = CSSProperties;\n\nexport default function useMobileFullWidthCellStyle(\n style?: CSSProperties,\n): MobileFullWidthCellStyleHook {\n if (!style) return {};\n\n const isDesktop = useIsDesktop();\n\n // For mobile, we want to make sure that the cell is always 100% width\n const formattedStyle = {\n ...style,\n width: isDesktop ? style?.width : '100%',\n };\n\n return formattedStyle;\n}\n", "import { useClasses } from '@kanda-libs/ks-design-library';\nimport { CLASS_NAMES } from './constants';\n\nexport interface RowClassNamesHook {\n base: string;\n compact: string;\n border: string;\n hover: string;\n button: string;\n}\n\nexport default function useRowClassNames(\n index: number,\n canSelect: boolean,\n): RowClassNamesHook {\n const classNames = useClasses(CLASS_NAMES, {\n base: ['.base', index === 9 ? '' : '.border', canSelect ? '.hover' : ''],\n button: ['.button'],\n });\n\n return classNames as RowClassNamesHook;\n}\n", "export const CLASS_NAMES = {\n base: 'relative md:h-16 flex-col py-2 md:py-0 md:flex-row',\n compact: 'relative h-8',\n border: 'border-b border-neutral-200',\n hover: 'group hover:bg-neutral-50 cursor-pointer',\n button: 'hidden group-hover:block',\n};\n", "import type { PropsWithChildren } from 'react';\nimport type { Row as RowType, TableRowProps } from 'react-table';\nimport Cell from '../Cell';\nimport useRowClassNames from './useRowClassNames';\n\nexport interface RowProps<T extends Object> extends TableRowProps {\n cells: RowType<T>['cells'];\n index: number;\n compact?: boolean;\n isLoading?: boolean;\n onRowClick?: (row: T) => void;\n}\n\nfunction Row<T extends Object>({\n cells,\n index,\n compact = false,\n isLoading = false,\n onRowClick,\n ...props\n}: PropsWithChildren<RowProps<T>>) {\n const classNames = useRowClassNames(index, !!onRowClick);\n\n return (\n <div\n {...props}\n className={compact ? classNames.compact : classNames.base}\n onClick={() => {\n onRowClick && onRowClick(cells[0].row.original as T);\n }}\n >\n {cells.map((cell, cellIndex) => (\n <Cell\n {...cell.getCellProps()}\n index={cellIndex}\n isLoading={isLoading}\n render={() => cell.render('Cell')}\n label={cell.column.Header as string}\n />\n ))}\n </div>\n );\n}\n\nexport default Row;\n", "import type { StringIndexedObject } from '@kanda-libs/ks-design-library';\nimport type { PropsWithChildren } from 'react';\nimport type { Row as RowType } from 'react-table';\nimport Row from '../Row';\n\nexport interface PagesProps<T extends StringIndexedObject> {\n page: RowType<T>[];\n prepareRow: (row: RowType<T>) => void;\n isLoading?: boolean;\n compact?: boolean;\n onRowClick?: (row: T) => void;\n}\n\nfunction Pages<T extends StringIndexedObject>({\n page,\n prepareRow,\n isLoading = false,\n compact = false,\n onRowClick,\n}: PropsWithChildren<PagesProps<T>>) {\n return (\n <>\n {page.map((row, index) => {\n prepareRow(row);\n return (\n <Row\n {...row.getRowProps()}\n index={index}\n cells={row.cells}\n isLoading={isLoading}\n compact={compact}\n onRowClick={onRowClick}\n />\n );\n })}\n </>\n );\n}\nexport default Pages;\n", "import type { TableInstance, Row } from '../../@types/index';\nimport {\n useTable,\n useGlobalFilter,\n usePagination,\n useSortBy,\n useFlexLayout,\n type IdType,\n TableOptions,\n} from 'react-table';\nimport type { TableProps } from '.';\nimport { globalFilter } from './helpers/search';\nimport type {\n PaginationProps,\n StringIndexedObject,\n} from '@kanda-libs/ks-design-library';\nimport { useEffect } from 'react';\n\nexport interface TablePropsHook<T extends StringIndexedObject<unknown>>\n extends TableInstance<T> {\n paginationProps: PaginationProps;\n}\n\nexport default function useTableProps<T extends StringIndexedObject<unknown>>({\n columns,\n data,\n pageSize = 10,\n query = '',\n}: TableProps<T>): TablePropsHook<T> {\n const table = useTable<T>(\n {\n columns,\n data,\n initialState: {\n pageSize: 10,\n pageIndex: 0,\n },\n autoResetGlobalFilter: false,\n globalFilter: (\n rows: Row<T>[],\n searchKeys: IdType<T>[],\n filterValue: string,\n ) => globalFilter(rows, searchKeys, filterValue, pageSize),\n } as unknown as TableOptions<T>,\n useGlobalFilter,\n useSortBy,\n usePagination,\n useFlexLayout,\n );\n\n const {\n gotoPage,\n pageCount,\n state: { pageIndex },\n } = table;\n\n const paginationProps: PaginationProps = {\n pageCount,\n pageIndex,\n setPage: (nextPage: number) => {\n gotoPage(nextPage);\n },\n };\n\n useEffect(() => {\n table.setGlobalFilter(query);\n }, [query]);\n\n return {\n paginationProps,\n ...table,\n };\n}\n", "import type { IdType } from 'react-table';\nimport type { Row } from '../../../@types/index';\nimport Fuse from 'fuse.js';\nimport type { StringIndexedObject } from '~/types';\n\nconst exactMatchSearch = <T extends StringIndexedObject<unknown>>(\n rows: Row<T>[],\n filterValue: string,\n) => {\n return rows.filter((row) => {\n // Take all values from the row, and add them together in a string\n // for the purposes of searching\n const rowValues = Object.values(row.values).join(', ');\n\n return rowValues.toLowerCase().includes(filterValue.toLowerCase());\n });\n};\n\nconst excludeExactMatches = <T extends StringIndexedObject<unknown>>(\n rows: Row<T>[],\n exactMatchRows: Row<T>[],\n) =>\n rows.filter(\n ({ id }) => exactMatchRows.filter((p) => p.id === id).length === 0,\n );\n\nconst fuzzySearch = <T extends StringIndexedObject<unknown>>(\n rows: Row<T>[],\n filterValue: string,\n searchKeys: string[],\n numberOfRows: number,\n exactMatchRows: Row<T>[],\n): Row<T>[] => {\n const currentRows = rows.map((row) => {\n return row.values;\n });\n\n const fuse = new Fuse(currentRows, {\n keys: searchKeys.map((key) => ({\n name: key,\n // Because FuseJS allows for dot notation,\n // we need to use a function to get the value\n // as the object returned from the table is flat,\n // rather than nested\n getFn: (obj: StringIndexedObject) => obj[key],\n })),\n });\n\n const results = fuse\n .search(filterValue)\n .map(({ item }) => item)\n .slice(0, numberOfRows);\n\n const filteredResults = results\n .map((result) => rows.find((row) => row.values.cid === result.cid))\n .filter(Boolean) as Row<T>[];\n\n return excludeExactMatches(filteredResults, exactMatchRows);\n};\n\nexport const globalFilter = <T extends StringIndexedObject<unknown>>(\n rows: Row<T>[],\n searchKeys: IdType<T>[],\n filterValue: string,\n pageSize = 10,\n): Row<T>[] => {\n if (filterValue.length < 1) {\n return rows;\n }\n\n // Get the first 10 exact matches. The reason for this is that exact matching\n // should take presedence over fuzzy matching. An exact match is more useful\n // but also less expensive to compute. So there's no need to do a fuzzy search\n // if there are >= 10 exact matches.\n const exactMatches = exactMatchSearch(rows, filterValue).slice(0, pageSize);\n const currentRowsExcludingExactMatches = excludeExactMatches(\n rows,\n exactMatches,\n );\n\n const fuzzyMatches = fuzzySearch(\n currentRowsExcludingExactMatches,\n filterValue,\n searchKeys,\n pageSize - exactMatches.length,\n exactMatches,\n );\n\n const results = [...exactMatches, ...fuzzyMatches];\n\n // Return the rows in the same order as the original rows\n // to preserve sorting, which happens before fuzzy matching\n return rows\n .map(({ id }) => results.find((row) => row.id === id))\n .filter(Boolean) as Row<T>[];\n};\n", "import { Icon, Logo } from '@kanda-libs/ks-design-library';\n\ntype Widths = 80 | 96 | 120 | 160;\n\ninterface SplashScreenProps {\n logo?: boolean;\n icon: string;\n iconClassName?: string;\n iconSize?: number;\n title: string;\n subText: string | JSX.Element;\n boldSubText?: string;\n cta?: JSX.Element;\n append?: JSX.Element;\n width?: Widths;\n contentWidth?: Widths;\n content?: JSX.Element;\n}\n\nconst WIDTHS = {\n 80: 'max-w-80',\n 96: 'max-w-96',\n 120: 'max-w-120',\n 160: 'max-w160',\n};\n\nconst SplashScreen = ({\n logo,\n icon,\n iconClassName,\n iconSize,\n title,\n subText,\n boldSubText,\n cta,\n append,\n width = 80,\n contentWidth = 80,\n content,\n}: SplashScreenProps) => (\n <div\n className={`flex flex-col m-auto w-full ${WIDTHS[width]} text-center items-center justify-center`}\n >\n {logo && (\n <div className=\"mb-10\">\n <Logo height={32} />\n </div>\n )}\n {!logo && (\n <Icon\n icon={icon}\n size={iconSize}\n className={`mx-auto mb-8 ${iconClassName}`}\n />\n )}\n <h1 className=\"text-24-28-em mb-4\">{title}</h1>\n <div className={`flex flex-col w-full ${WIDTHS[contentWidth]} mx-auto`}>\n {content && <div className=\"mt-4 mb-8\">{content}</div>}\n <span className=\"text-16-24 text-neutral-600\">\n {subText}\n {boldSubText && <b> {boldSubText}</b>}\n </span>\n {cta && <div className=\"mt-10\">{cta}</div>}\n {append}\n </div>\n </div>\n);\n\nSplashScreen.defaultProps = {\n logo: false,\n iconClassName: '',\n iconSize: 104,\n cta: null,\n append: null,\n boldSubText: null,\n content: null,\n width: 96,\n contentWidth: 96,\n};\n\nexport default SplashScreen;\n", "import { FunctionComponent, useEffect } from 'react';\nimport { Document, Page, pdfjs } from 'react-pdf';\nimport usePdf from './usePdf';\n\n// This sucks, but so does react-pdf's typescript support\nconst DocumentTag = Document as unknown as FunctionComponent<any>;\n\nexport interface PdfProps {\n content?: string;\n}\n\nconst Pdf: FunctionComponent<PdfProps> = function ({ content }) {\n const { pdfProps, pages, showContent } = usePdf(content);\n\n useEffect(() => {\n pdfjs.GlobalWorkerOptions.workerSrc = `https://cdnjs.cloudflare.com/ajax/libs/pdf.js/${pdfjs.version}/pdf.worker.js`;\n }, []);\n\n if (!showContent) {\n return <></>;\n }\n\n return (\n <DocumentTag {...pdfProps}>\n {pages &&\n pages.map((page) => (\n <>\n <Page {...page} />\n </>\n ))}\n </DocumentTag>\n );\n};\n\nexport default Pdf;\n", "import { useToast } from '@kanda-libs/ks-design-library';\nimport { useCallback, useMemo, useState } from 'react';\n\nexport interface PdfPage {\n key: string;\n pageNumber: number;\n className: string;\n}\n\nexport interface PdfOnLoadSuccessArgs {\n numPages: number;\n}\n\nexport interface PdfOnLoadErrorArgs {\n message: string;\n}\n\nexport interface PdfHook {\n pdfProps: {\n file: string;\n error: string;\n onLoadSuccess: (args: PdfOnLoadSuccessArgs) => void;\n onLoadError: (args: PdfOnLoadErrorArgs) => void;\n onSourceError: (args: PdfOnLoadErrorArgs) => void;\n } | null;\n pages: PdfPage[] | null;\n showContent: boolean;\n}\n\nexport default function usePdf(content?: string): PdfHook {\n const [pages, setPages] = useState<PdfPage[] | null>(null);\n\n const { showError } = useToast();\n\n const onLoadSuccess = useCallback(({ numPages }: PdfOnLoadSuccessArgs) => {\n setPages(\n [...Array(numPages).keys()].map((index) => ({\n key: `page_${index + 1}`,\n pageNumber: index + 1,\n className: index !== 0 ? 'mt-4' : '',\n })),\n );\n }, []);\n\n const onLoadError = useCallback(\n ({ message }: PdfOnLoadErrorArgs) =>\n showError(\n `Error loading document. Please contact Kanda. Error message: ${message}`,\n ),\n [showError],\n );\n\n const onSourceError = useCallback(\n ({ message }: PdfOnLoadErrorArgs) =>\n showError(\n `Error retrieving document source. Please contact Kanda. Error message: ${message}`,\n ),\n [showError],\n );\n\n const pdfProps = useMemo(() => {\n if (!content) return null;\n return {\n file: `data:application/pdf;base64,${content}`,\n error:\n 'Failed to load the PDF file. The file can still be downloaded by clicking the button below',\n onLoadSuccess,\n onLoadError,\n onSourceError,\n };\n }, [content, onLoadSuccess, onLoadError, onSourceError]);\n\n const showContent = !!(pdfProps && !!content);\n\n return {\n pdfProps,\n pages,\n showContent,\n };\n}\n", "export const CLASS_NAMES = {\n container: 'grid grid-cols-7 justify-start items-start gap-x-2',\n};\n", "import type { FunctionComponent } from 'react';\nimport { CLASS_NAMES } from './constants';\n\nexport interface PipelineProps {\n children: JSX.Element | JSX.Element[];\n}\n\nconst Pipeline: FunctionComponent<PipelineProps> = function ({ children }) {\n return <div className={CLASS_NAMES.container}>{children}</div>;\n};\n\nexport default Pipeline;\n", "import { Children, type FunctionComponent } from 'react';\nimport { Button } from '@kanda-libs/ks-design-library';\nimport { CLASS_NAMES } from './constants';\nimport usePipelineColumnPagination from './usePipelineColumnPagination';\n\nexport interface PipelineColumnProps {\n title: string;\n children: JSX.Element | JSX.Element[];\n perPage?: number;\n}\n\nconst PipelineColumn: FunctionComponent<PipelineColumnProps> = function ({\n title,\n children,\n perPage = 5,\n}) {\n const { items, showMore, canShowMore } = usePipelineColumnPagination(\n Children.toArray(children) as JSX.Element[],\n perPage,\n );\n\n return (\n <div>\n <div className={CLASS_NAMES.title}>{title}</div>\n <div className={CLASS_NAMES.items}>\n {items}\n {canShowMore && (\n <div className=\"mt-2\">\n <Button.Text\n id=\"pipeline-column-show-more\"\n variant=\"outline\"\n onClick={showMore}\n label=\"More\"\n className=\"w-full\"\n />\n </div>\n )}\n </div>\n </div>\n );\n};\n\nexport default PipelineColumn;\n", "export const CLASS_NAMES = {\n title: 'text-18-22-em text-neutral-900 py-2 text-center h-14',\n items: 'flex flex-col gap-y-2',\n};\n", "import { useCallback, useState } from 'react';\n\nexport interface PipelineColumnPaginationHook {\n items: JSX.Element[];\n showMore: () => void;\n canShowMore: boolean;\n}\n\nexport default function usePipelineColumnPagination(\n children: JSX.Element[],\n perPage: number,\n): PipelineColumnPaginationHook {\n const [page, setPage] = useState(0);\n\n const showMore = useCallback(() => {\n setPage((currentPage) => currentPage + 1);\n }, [setPage]);\n\n const items = children.slice(0, (page + 1) * perPage);\n\n return {\n items,\n showMore,\n canShowMore: children.length > items.length,\n };\n}\n", "import { Card, Text, TimeAgo } from '@kanda-libs/ks-design-library';\nimport type { FunctionComponent } from 'react';\n\nexport interface SimpleCompanyCardProps {\n name: string;\n signedUpDate: Date;\n reviewed?: boolean;\n isLoading?: boolean;\n}\n\nconst SimpleCompanyCard: FunctionComponent<SimpleCompanyCardProps> = function ({\n name,\n signedUpDate,\n reviewed = false,\n isLoading = false,\n}) {\n return (\n <Card className={reviewed ? 'bg-blue-100' : ''}>\n <div className=\"flex flex-col gap-y-2\">\n <Text text={name} className=\"text-16-20-em\" isLoading={isLoading} />\n {reviewed && <Text text=\"Reviewed\" className=\"text-12-18-em-up\" />}\n <TimeAgo timestamp={signedUpDate.getTime()} />\n </div>\n </Card>\n );\n};\n\nexport default SimpleCompanyCard;\n", "import { BreakPoints } from '@kanda-libs/ks-design-library';\nimport type { FunctionComponent } from 'react';\nimport Desktop from './Desktop';\nimport Mobile from './Mobile';\n\nexport interface StageTimelineProps {\n stages: (string | JSX.Element)[];\n mobileStages?: string[];\n activeKey: number;\n}\n\nconst StageTimeline: FunctionComponent<StageTimelineProps> = function (props) {\n return (\n <BreakPoints\n desktop={<Desktop {...props} />}\n mobile={<Mobile {...props} />}\n />\n );\n};\n\nexport default StageTimeline;\n", "import { Icon, Text } from '@kanda-libs/ks-design-library';\nimport type { FunctionComponent } from 'react';\nimport useStageProps from './useStageProps';\n\nexport interface StageProps {\n index: number;\n active?: boolean;\n current?: boolean;\n last?: boolean;\n label: string | JSX.Element;\n}\n\nconst Stage: FunctionComponent<StageProps> = function ({\n index,\n active = false,\n current = false,\n last = false,\n label,\n}) {\n const { iconClasses, leftBorderClasses, rightBorderClasses } = useStageProps(\n active,\n current,\n index,\n last,\n );\n\n return (\n <div className=\"relative flex flex-col items-center w-full md:w-auto md:min-w-48\">\n {current && <Icon icon=\"chevron-down\" height={20} />}\n {!current && <div className=\"h-5\" />}\n <div className={iconClasses}>\n <div>\n {!active && index + 1}\n {active && <Icon icon=\"check\" width={12} />}\n </div>\n </div>\n <div className={leftBorderClasses} />\n {!last && <div className={rightBorderClasses} />}\n <Text text={label} className=\"text-sm text-center text-neutral-700\" />\n </div>\n );\n};\n\nexport default Stage;\n", "import clsx from 'clsx';\nimport type { StageProps } from '.';\n\nexport interface StagePropsHook {\n iconClasses: string;\n leftBorderClasses: string;\n rightBorderClasses: string;\n}\n\nexport default function useStageProps(\n active: StageProps['active'],\n current: StageProps['current'],\n index: StageProps['index'],\n last: StageProps['last'],\n): StagePropsHook {\n const currentlyActive = active || current;\n const iconClasses = clsx(\n 'w-7 h-7 rounded-2xl mb-2 relative z-10',\n 'text-center text-18-22-em flex items-center justify-center border border-solid border-2',\n !currentlyActive && 'border-neutral-600 text-neutral-600 bg-neutral-000',\n currentlyActive && 'bg-green-500 text-neutral-000 border-transparent',\n );\n\n const borderClasses = clsx(\n 'absolute h-1 top-[31px] z-0',\n !currentlyActive && 'bg-neutral-200',\n currentlyActive && 'bg-green-500',\n );\n\n const leftBorderClasses = clsx(\n borderClasses,\n 'w-1/2 left-0',\n index !== 0 && 'hidden md:block',\n index === 0 && 'hidden',\n );\n const rightBorderClasses = clsx(\n borderClasses,\n 'w-1/2 right-0 hidden md:block',\n current && 'bg-neutral-200',\n !last && 'hidden md:block',\n last && 'hidden',\n );\n\n return {\n iconClasses,\n leftBorderClasses,\n rightBorderClasses,\n };\n}\n", "import clsx from 'clsx';\nimport type { FunctionComponent } from 'react';\n\nexport interface TimelineBorderProps {\n active?: boolean;\n}\n\nconst TimelineBorder: FunctionComponent<TimelineBorderProps> = function ({\n active = false,\n}) {\n return (\n <div\n className={clsx(\n 'flex-grow w-full h-1 -mt-[32px] hidden md:block',\n !active && 'bg-neutral-200',\n active && 'bg-green-500',\n )}\n />\n );\n};\n\nexport default TimelineBorder;\n", "import type { FunctionComponent } from 'react';\nimport type { StageTimelineProps } from '.';\nimport Stage from './Stage';\nimport TimelineBorder from './TimelineBorder';\n\nconst Desktop: FunctionComponent<StageTimelineProps> = function ({\n stages,\n activeKey,\n}) {\n return (\n <div className=\"flex flex-col items-center justify-between h-full md:flex-row\">\n {stages.map((stage, key) => (\n <>\n <Stage\n key={`stage-${key}`}\n index={key}\n active={key < activeKey}\n current={key === activeKey}\n last={key === stages.length - 1}\n label={stage}\n />\n {key !== stages.length - 1 && (\n <TimelineBorder active={key < activeKey} />\n )}\n </>\n ))}\n </div>\n );\n};\n\nexport default Desktop;\n", "import { Timeline } from '@kanda-libs/ks-design-library';\nimport type { FunctionComponent } from 'react';\nimport type { StageTimelineProps } from '.';\n\nconst Mobile: FunctionComponent<StageTimelineProps> = function ({\n mobileStages = [],\n activeKey,\n}) {\n return (\n <div className=\"px-2\">\n <Timeline\n compact\n items={mobileStages.map((stage, index) => ({\n title: stage,\n fill: activeKey === index ? 'green' : 'grey',\n }))}\n />\n </div>\n );\n};\n\nexport default Mobile;\n", "import { Text } from '@kanda-libs/ks-design-library';\nimport type { FunctionComponent } from 'react';\nimport { CLASS_NAMES } from './constants';\n\nconst NotFoundPage: FunctionComponent = function () {\n return (\n <div className={CLASS_NAMES.container}>\n <Text text=\"404\" className=\"mb-4 text-28-32-em text-neutral-900\" />\n <Text text=\"Page not found\" className=\"text-20-24 text-neutral-700\" />\n </div>\n );\n};\n\nexport default NotFoundPage;\n", "export const CLASS_NAMES = {\n container: 'w-screen h-screen flex flex-col justify-center items-center',\n};\n", "import { Text } from '@kanda-libs/ks-design-library';\nimport type { FunctionComponent } from 'react';\n\nexport interface NumberedListItem {\n title: string;\n description: string;\n}\n\nexport interface NumberedListProps {\n items: NumberedListItem[];\n}\n\nconst NumberedList: FunctionComponent<NumberedListProps> = function ({\n items,\n}) {\n return (\n <div>\n {items.map((item, key) => (\n <div\n className=\"flex flex-row items-center gap-y-2 md:mb-3\"\n key={`item-${key}`}\n >\n <div className=\"flex items-center justify-center w-8 h-8 px-4 mr-3 text-green-900 bg-green-200 rounded-full text-18-28-em\">\n {key + 1}\n </div>\n <div className=\"flex flex-col gap-y-1\">\n <Text\n text={item.title}\n className=\"w-full mb-auto text-16-20-em text-neutral-700\"\n />\n <Text\n text={item.description}\n className=\"w-full mb-auto text-14-22 text-neutral-700\"\n />\n </div>\n </div>\n ))}\n </div>\n );\n};\n\nexport default NumberedList;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["jsx", "AlertBanner", "children", "AlertBanner_default", "Pagination", "SkeletonLoader", "Icon", "BUTTON_CLASS_NAMES", "ICON_PROPS", "WRAPPER_STYLE", "WRAPPER_CLASS_NAMES", "jsx", "jsxs", "Button", "label", "props", "BUTTON_CLASS_NAMES", "Icon", "ICON_PROPS", "Button_default", "clsx", "useWrapperProps", "index", "containerStyle", "WRAPPER_STYLE", "clsx", "WRAPPER_CLASS_NAMES", "jsx", "Wrapper", "index", "children", "classNames", "containerStyle", "useWrapperProps", "Wrapper_default", "HeaderButton_default", "Button_default", "Wrapper_default", "clsx", "CLASS_NAMES", "useHeaderColumnProps", "index", "popoverButtons", "CLASS_NAMES", "clsx", "jsx", "HeaderColumn", "index", "isLoading", "popoverButtons", "label", "props", "classNames", "useHeaderColumnProps", "SkeletonLoader", "HeaderButton_default", "HeaderColumn_default", "CLASS_NAMES", "useHeaderGroupProps", "headerGroup", "columns", "headers", "getHeaderGroupProps", "headerGroupProps", "totalVisible", "column", "jsx", "HeaderGroup", "headerGroup", "columns", "isLoading", "headerGroupProps", "headers", "useHeaderGroupProps", "CLASS_NAMES", "column", "index", "HeaderColumn_default", "HeaderGroup_default", "SkeletonLoader", "Text", "clsx", "CLASS_NAMES", "useCellClassNames", "index", "compact", "isLoading", "clsx", "CLASS_NAMES", "useIsDesktop", "useMobileFullWidthCellStyle", "style", "isDesktop", "Fragment", "jsx", "jsxs", "Cell", "render", "index", "compact", "isLoading", "label", "props", "classNames", "useCellClassNames", "unformattedStyle", "formattedProps", "style", "useMobileFullWidthCellStyle", "SkeletonLoader", "Text", "Cell_default", "useClasses", "CLASS_NAMES", "useRowClassNames", "index", "canSelect", "useClasses", "CLASS_NAMES", "jsx", "Row", "cells", "index", "compact", "isLoading", "onRowClick", "props", "classNames", "useRowClassNames", "cell", "cellIndex", "Cell_default", "Row_default", "Fragment", "jsx", "Pages", "page", "prepareRow", "isLoading", "compact", "onRowClick", "row", "index", "Row_default", "Pages_default", "useTable", "useGlobalFilter", "usePagination", "useSortBy", "useFlexLayout", "Fuse", "exactMatchSearch", "rows", "filterValue", "row", "excludeExactMatches", "exactMatchRows", "id", "p", "fuzzySearch", "searchKeys", "numberOfRows", "currentRows", "filteredResults", "key", "obj", "item", "result", "globalFilter", "pageSize", "exactMatches", "currentRowsExcludingExactMatches", "fuzzyMatches", "results", "useEffect", "useTableProps", "columns", "data", "pageSize", "query", "table", "useTable", "rows", "searchKeys", "filterValue", "globalFilter", "useGlobalFilter", "useSortBy", "usePagination", "useFlexLayout", "gotoPage", "pageCount", "pageIndex", "paginationProps", "nextPage", "Fragment", "jsx", "jsxs", "Table", "compact", "isLoading", "onRowClick", "props", "page", "prepareRow", "columns", "getTableProps", "headerGroups", "paginationProps", "useTableProps", "headerGroup", "HeaderGroup_default", "Pages_default", "Pagination", "Table_default", "Icon", "Logo", "jsx", "jsxs", "WIDTHS", "SplashScreen", "logo", "icon", "iconClassName", "iconSize", "title", "subText", "boldSubText", "cta", "append", "width", "contentWidth", "content", "SplashScreen_default", "useEffect", "Document", "Page", "pdfjs", "useToast", "useCallback", "useMemo", "useState", "usePdf", "content", "pages", "setPages", "showError", "onLoadSuccess", "numPages", "index", "onLoadError", "message", "onSourceError", "pdfProps", "Fragment", "jsx", "DocumentTag", "Document", "Pdf", "content", "pdfProps", "pages", "showContent", "usePdf", "useEffect", "pdfjs", "page", "Page", "Pdf_default", "CLASS_NAMES", "jsx", "Pipeline", "children", "CLASS_NAMES", "Pipeline_default", "Children", "Button", "CLASS_NAMES", "useCallback", "useState", "usePipelineColumnPagination", "children", "perPage", "page", "setPage", "showMore", "currentPage", "items", "jsx", "jsxs", "PipelineColumn", "title", "children", "perPage", "items", "showMore", "canShowMore", "usePipelineColumnPagination", "Children", "CLASS_NAMES", "Button", "PipelineColumn_default", "Card", "Text", "TimeAgo", "jsx", "jsxs", "SimpleCompanyCard", "name", "signedUpDate", "reviewed", "isLoading", "SimpleCompanyCard_default", "BreakPoints", "Icon", "Text", "clsx", "useStageProps", "active", "current", "index", "last", "currentlyActive", "iconClasses", "borderClasses", "leftBorderClasses", "rightBorderClasses", "jsx", "jsxs", "Stage", "index", "active", "current", "last", "label", "iconClasses", "leftBorderClasses", "rightBorderClasses", "useStageProps", "Icon", "Text", "Stage_default", "clsx", "jsx", "TimelineBorder", "active", "TimelineBorder_default", "Fragment", "jsx", "jsxs", "Desktop", "stages", "activeKey", "stage", "key", "Stage_default", "TimelineBorder_default", "Desktop_default", "Timeline", "jsx", "Mobile", "mobileStages", "activeKey", "stage", "index", "Mobile_default", "jsx", "StageTimeline", "props", "BreakPoints", "Desktop_default", "Mobile_default", "StageTimeline_default", "Text", "CLASS_NAMES", "jsx", "jsxs", "NotFoundPage", "CLASS_NAMES", "Text", "NotFoundPage_default", "Text", "jsx", "jsxs", "NumberedList", "items", "item", "key", "NumberedList_default"]
|
|
7
7
|
}
|
package/dist/library.css
CHANGED
|
@@ -982,6 +982,10 @@ video {
|
|
|
982
982
|
position: fixed;
|
|
983
983
|
}
|
|
984
984
|
|
|
985
|
+
.absolute {
|
|
986
|
+
position: absolute;
|
|
987
|
+
}
|
|
988
|
+
|
|
985
989
|
.relative {
|
|
986
990
|
position: relative;
|
|
987
991
|
}
|
|
@@ -990,6 +994,26 @@ video {
|
|
|
990
994
|
right: 16px;
|
|
991
995
|
}
|
|
992
996
|
|
|
997
|
+
.top-\[31px\] {
|
|
998
|
+
top: 31px;
|
|
999
|
+
}
|
|
1000
|
+
|
|
1001
|
+
.left-0 {
|
|
1002
|
+
left: 0;
|
|
1003
|
+
}
|
|
1004
|
+
|
|
1005
|
+
.right-0 {
|
|
1006
|
+
right: 0;
|
|
1007
|
+
}
|
|
1008
|
+
|
|
1009
|
+
.z-10 {
|
|
1010
|
+
z-index: 10;
|
|
1011
|
+
}
|
|
1012
|
+
|
|
1013
|
+
.z-0 {
|
|
1014
|
+
z-index: 0;
|
|
1015
|
+
}
|
|
1016
|
+
|
|
993
1017
|
.z-20 {
|
|
994
1018
|
z-index: 20;
|
|
995
1019
|
}
|
|
@@ -1012,6 +1036,14 @@ video {
|
|
|
1012
1036
|
margin-bottom: 16px;
|
|
1013
1037
|
}
|
|
1014
1038
|
|
|
1039
|
+
.mr-3 {
|
|
1040
|
+
margin-right: 12px;
|
|
1041
|
+
}
|
|
1042
|
+
|
|
1043
|
+
.mb-auto {
|
|
1044
|
+
margin-bottom: auto;
|
|
1045
|
+
}
|
|
1046
|
+
|
|
1015
1047
|
.mt-4 {
|
|
1016
1048
|
margin-top: 16px;
|
|
1017
1049
|
}
|
|
@@ -1028,10 +1060,18 @@ video {
|
|
|
1028
1060
|
margin-top: 40px;
|
|
1029
1061
|
}
|
|
1030
1062
|
|
|
1063
|
+
.-mt-\[32px\] {
|
|
1064
|
+
margin-top: -32px;
|
|
1065
|
+
}
|
|
1066
|
+
|
|
1031
1067
|
.mt-2 {
|
|
1032
1068
|
margin-top: 8px;
|
|
1033
1069
|
}
|
|
1034
1070
|
|
|
1071
|
+
.mb-2 {
|
|
1072
|
+
margin-bottom: 8px;
|
|
1073
|
+
}
|
|
1074
|
+
|
|
1035
1075
|
.mr-8 {
|
|
1036
1076
|
margin-right: 32px;
|
|
1037
1077
|
}
|
|
@@ -1087,16 +1127,28 @@ video {
|
|
|
1087
1127
|
}
|
|
1088
1128
|
}
|
|
1089
1129
|
|
|
1090
|
-
.h-
|
|
1091
|
-
height:
|
|
1130
|
+
.h-8 {
|
|
1131
|
+
height: 32px;
|
|
1092
1132
|
}
|
|
1093
1133
|
|
|
1094
1134
|
.h-full {
|
|
1095
1135
|
height: 100%;
|
|
1096
1136
|
}
|
|
1097
1137
|
|
|
1098
|
-
.h-
|
|
1099
|
-
height:
|
|
1138
|
+
.h-1 {
|
|
1139
|
+
height: 4px;
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
.h-14 {
|
|
1143
|
+
height: 56px;
|
|
1144
|
+
}
|
|
1145
|
+
|
|
1146
|
+
.h-5 {
|
|
1147
|
+
height: 20px;
|
|
1148
|
+
}
|
|
1149
|
+
|
|
1150
|
+
.h-7 {
|
|
1151
|
+
height: 28px;
|
|
1100
1152
|
}
|
|
1101
1153
|
|
|
1102
1154
|
.h-9 {
|
|
@@ -1107,10 +1159,22 @@ video {
|
|
|
1107
1159
|
width: 100vw;
|
|
1108
1160
|
}
|
|
1109
1161
|
|
|
1162
|
+
.w-8 {
|
|
1163
|
+
width: 32px;
|
|
1164
|
+
}
|
|
1165
|
+
|
|
1110
1166
|
.w-full {
|
|
1111
1167
|
width: 100%;
|
|
1112
1168
|
}
|
|
1113
1169
|
|
|
1170
|
+
.w-7 {
|
|
1171
|
+
width: 28px;
|
|
1172
|
+
}
|
|
1173
|
+
|
|
1174
|
+
.w-1\/2 {
|
|
1175
|
+
width: 50%;
|
|
1176
|
+
}
|
|
1177
|
+
|
|
1114
1178
|
.max-w-80 {
|
|
1115
1179
|
max-width: 320px;
|
|
1116
1180
|
}
|
|
@@ -1123,6 +1187,10 @@ video {
|
|
|
1123
1187
|
max-width: 480px;
|
|
1124
1188
|
}
|
|
1125
1189
|
|
|
1190
|
+
.flex-grow {
|
|
1191
|
+
flex-grow: 1;
|
|
1192
|
+
}
|
|
1193
|
+
|
|
1126
1194
|
.transform {
|
|
1127
1195
|
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
1128
1196
|
}
|
|
@@ -1159,15 +1227,23 @@ video {
|
|
|
1159
1227
|
justify-content: center;
|
|
1160
1228
|
}
|
|
1161
1229
|
|
|
1162
|
-
.
|
|
1163
|
-
-
|
|
1164
|
-
column-gap: 8px;
|
|
1230
|
+
.justify-between {
|
|
1231
|
+
justify-content: space-between;
|
|
1165
1232
|
}
|
|
1166
1233
|
|
|
1167
1234
|
.gap-y-2 {
|
|
1168
1235
|
row-gap: 8px;
|
|
1169
1236
|
}
|
|
1170
1237
|
|
|
1238
|
+
.gap-y-1 {
|
|
1239
|
+
row-gap: 4px;
|
|
1240
|
+
}
|
|
1241
|
+
|
|
1242
|
+
.gap-x-2 {
|
|
1243
|
+
-moz-column-gap: 8px;
|
|
1244
|
+
column-gap: 8px;
|
|
1245
|
+
}
|
|
1246
|
+
|
|
1171
1247
|
.overflow-hidden {
|
|
1172
1248
|
overflow: hidden;
|
|
1173
1249
|
}
|
|
@@ -1184,6 +1260,14 @@ video {
|
|
|
1184
1260
|
border-radius: 0.75rem;
|
|
1185
1261
|
}
|
|
1186
1262
|
|
|
1263
|
+
.rounded-full {
|
|
1264
|
+
border-radius: 9999px;
|
|
1265
|
+
}
|
|
1266
|
+
|
|
1267
|
+
.rounded-2xl {
|
|
1268
|
+
border-radius: 1rem;
|
|
1269
|
+
}
|
|
1270
|
+
|
|
1187
1271
|
.rounded-lg {
|
|
1188
1272
|
border-radius: 0.5rem;
|
|
1189
1273
|
}
|
|
@@ -1192,15 +1276,32 @@ video {
|
|
|
1192
1276
|
border-width: 1px;
|
|
1193
1277
|
}
|
|
1194
1278
|
|
|
1279
|
+
.border-2 {
|
|
1280
|
+
border-width: 2px;
|
|
1281
|
+
}
|
|
1282
|
+
|
|
1195
1283
|
.border-b {
|
|
1196
1284
|
border-bottom-width: 1px;
|
|
1197
1285
|
}
|
|
1198
1286
|
|
|
1287
|
+
.border-solid {
|
|
1288
|
+
border-style: solid;
|
|
1289
|
+
}
|
|
1290
|
+
|
|
1199
1291
|
.border-lavender-200 {
|
|
1200
1292
|
--tw-border-opacity: 1;
|
|
1201
1293
|
border-color: rgb(127 131 255 / var(--tw-border-opacity));
|
|
1202
1294
|
}
|
|
1203
1295
|
|
|
1296
|
+
.border-neutral-600 {
|
|
1297
|
+
--tw-border-opacity: 1;
|
|
1298
|
+
border-color: rgb(108 129 157 / var(--tw-border-opacity));
|
|
1299
|
+
}
|
|
1300
|
+
|
|
1301
|
+
.border-transparent {
|
|
1302
|
+
border-color: transparent;
|
|
1303
|
+
}
|
|
1304
|
+
|
|
1204
1305
|
.border-neutral-200 {
|
|
1205
1306
|
--tw-border-opacity: 1;
|
|
1206
1307
|
border-color: rgb(237 241 247 / var(--tw-border-opacity));
|
|
@@ -1211,11 +1312,31 @@ video {
|
|
|
1211
1312
|
background-color: rgb(240 240 255 / var(--tw-bg-opacity));
|
|
1212
1313
|
}
|
|
1213
1314
|
|
|
1315
|
+
.bg-green-200 {
|
|
1316
|
+
--tw-bg-opacity: 1;
|
|
1317
|
+
background-color: rgb(193 244 233 / var(--tw-bg-opacity));
|
|
1318
|
+
}
|
|
1319
|
+
|
|
1214
1320
|
.bg-blue-100 {
|
|
1215
1321
|
--tw-bg-opacity: 1;
|
|
1216
1322
|
background-color: rgb(229 245 255 / var(--tw-bg-opacity));
|
|
1217
1323
|
}
|
|
1218
1324
|
|
|
1325
|
+
.bg-neutral-200 {
|
|
1326
|
+
--tw-bg-opacity: 1;
|
|
1327
|
+
background-color: rgb(237 241 247 / var(--tw-bg-opacity));
|
|
1328
|
+
}
|
|
1329
|
+
|
|
1330
|
+
.bg-green-500 {
|
|
1331
|
+
--tw-bg-opacity: 1;
|
|
1332
|
+
background-color: rgb(31 204 175 / var(--tw-bg-opacity));
|
|
1333
|
+
}
|
|
1334
|
+
|
|
1335
|
+
.bg-neutral-000 {
|
|
1336
|
+
--tw-bg-opacity: 1;
|
|
1337
|
+
background-color: rgb(255 255 255 / var(--tw-bg-opacity));
|
|
1338
|
+
}
|
|
1339
|
+
|
|
1219
1340
|
.bg-transparent {
|
|
1220
1341
|
background-color: transparent;
|
|
1221
1342
|
}
|
|
@@ -1229,6 +1350,11 @@ video {
|
|
|
1229
1350
|
padding-right: 16px;
|
|
1230
1351
|
}
|
|
1231
1352
|
|
|
1353
|
+
.px-2 {
|
|
1354
|
+
padding-left: 8px;
|
|
1355
|
+
padding-right: 8px;
|
|
1356
|
+
}
|
|
1357
|
+
|
|
1232
1358
|
.py-4 {
|
|
1233
1359
|
padding-top: 16px;
|
|
1234
1360
|
padding-bottom: 16px;
|
|
@@ -1259,11 +1385,6 @@ video {
|
|
|
1259
1385
|
padding-right: 0;
|
|
1260
1386
|
}
|
|
1261
1387
|
|
|
1262
|
-
.px-2 {
|
|
1263
|
-
padding-left: 8px;
|
|
1264
|
-
padding-right: 8px;
|
|
1265
|
-
}
|
|
1266
|
-
|
|
1267
1388
|
.pl-4 {
|
|
1268
1389
|
padding-left: 16px;
|
|
1269
1390
|
}
|
|
@@ -1280,6 +1401,10 @@ video {
|
|
|
1280
1401
|
text-align: center;
|
|
1281
1402
|
}
|
|
1282
1403
|
|
|
1404
|
+
.text-sm {
|
|
1405
|
+
font-size: 14px;
|
|
1406
|
+
}
|
|
1407
|
+
|
|
1283
1408
|
.uppercase {
|
|
1284
1409
|
text-transform: uppercase;
|
|
1285
1410
|
}
|
|
@@ -1308,6 +1433,11 @@ video {
|
|
|
1308
1433
|
color: rgb(108 129 157 / var(--tw-text-opacity));
|
|
1309
1434
|
}
|
|
1310
1435
|
|
|
1436
|
+
.text-neutral-000 {
|
|
1437
|
+
--tw-text-opacity: 1;
|
|
1438
|
+
color: rgb(255 255 255 / var(--tw-text-opacity));
|
|
1439
|
+
}
|
|
1440
|
+
|
|
1311
1441
|
.text-neutral-500 {
|
|
1312
1442
|
--tw-text-opacity: 1;
|
|
1313
1443
|
color: rgb(156 173 196 / var(--tw-text-opacity));
|
|
@@ -2221,6 +2351,14 @@ Modified version of toast CSS to match designs
|
|
|
2221
2351
|
}
|
|
2222
2352
|
|
|
2223
2353
|
@media (min-width: 768px) {
|
|
2354
|
+
.md\:mb-3 {
|
|
2355
|
+
margin-bottom: 12px;
|
|
2356
|
+
}
|
|
2357
|
+
|
|
2358
|
+
.md\:block {
|
|
2359
|
+
display: block;
|
|
2360
|
+
}
|
|
2361
|
+
|
|
2224
2362
|
.md\:hidden {
|
|
2225
2363
|
display: none;
|
|
2226
2364
|
}
|
|
@@ -2229,10 +2367,18 @@ Modified version of toast CSS to match designs
|
|
|
2229
2367
|
height: 64px;
|
|
2230
2368
|
}
|
|
2231
2369
|
|
|
2370
|
+
.md\:w-auto {
|
|
2371
|
+
width: auto;
|
|
2372
|
+
}
|
|
2373
|
+
|
|
2232
2374
|
.md\:w-full {
|
|
2233
2375
|
width: 100%;
|
|
2234
2376
|
}
|
|
2235
2377
|
|
|
2378
|
+
.md\:min-w-48 {
|
|
2379
|
+
min-width: 192px;
|
|
2380
|
+
}
|
|
2381
|
+
|
|
2236
2382
|
.md\:flex-row {
|
|
2237
2383
|
flex-direction: row;
|
|
2238
2384
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kanda-libs/ks-design-library-new",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.31",
|
|
4
4
|
"description": "Kanda design components library",
|
|
5
5
|
"main": "dist/index.esm.mjs",
|
|
6
6
|
"module": "dist/index.esm.mjs",
|
|
@@ -100,9 +100,10 @@
|
|
|
100
100
|
"homepage": "https://github.com/kanda-co/ks-design-library#readme",
|
|
101
101
|
"dependencies": {
|
|
102
102
|
"@kanda-libs/ks-amplitude-provider": "^0.0.7",
|
|
103
|
-
"@kanda-libs/ks-design-library": "^0.2.
|
|
103
|
+
"@kanda-libs/ks-design-library": "^0.2.72",
|
|
104
104
|
"@types/react-pdf": "^6.2.0",
|
|
105
105
|
"@types/react-table": "^7.7.14",
|
|
106
|
+
"crypto-js": "^4.1.1",
|
|
106
107
|
"file-saver": "^2.0.5",
|
|
107
108
|
"fuse.js": "^6.6.2",
|
|
108
109
|
"lodash.get": "^4.4.2",
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Text } from '@kanda-libs/ks-design-library';
|
|
2
|
+
import type { FunctionComponent } from 'react';
|
|
3
|
+
|
|
4
|
+
export interface NumberedListItem {
|
|
5
|
+
title: string;
|
|
6
|
+
description: string;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface NumberedListProps {
|
|
10
|
+
items: NumberedListItem[];
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const NumberedList: FunctionComponent<NumberedListProps> = function ({
|
|
14
|
+
items,
|
|
15
|
+
}) {
|
|
16
|
+
return (
|
|
17
|
+
<div>
|
|
18
|
+
{items.map((item, key) => (
|
|
19
|
+
<div
|
|
20
|
+
className="flex flex-row items-center gap-y-2 md:mb-3"
|
|
21
|
+
key={`item-${key}`}
|
|
22
|
+
>
|
|
23
|
+
<div className="flex items-center justify-center w-8 h-8 px-4 mr-3 text-green-900 bg-green-200 rounded-full text-18-28-em">
|
|
24
|
+
{key + 1}
|
|
25
|
+
</div>
|
|
26
|
+
<div className="flex flex-col gap-y-1">
|
|
27
|
+
<Text
|
|
28
|
+
text={item.title}
|
|
29
|
+
className="w-full mb-auto text-16-20-em text-neutral-700"
|
|
30
|
+
/>
|
|
31
|
+
<Text
|
|
32
|
+
text={item.description}
|
|
33
|
+
className="w-full mb-auto text-14-22 text-neutral-700"
|
|
34
|
+
/>
|
|
35
|
+
</div>
|
|
36
|
+
</div>
|
|
37
|
+
))}
|
|
38
|
+
</div>
|
|
39
|
+
);
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
export default NumberedList;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { FunctionComponent } from 'react';
|
|
2
|
+
import type { StageTimelineProps } from '.';
|
|
3
|
+
import Stage from './Stage';
|
|
4
|
+
import TimelineBorder from './TimelineBorder';
|
|
5
|
+
|
|
6
|
+
const Desktop: FunctionComponent<StageTimelineProps> = function ({
|
|
7
|
+
stages,
|
|
8
|
+
activeKey,
|
|
9
|
+
}) {
|
|
10
|
+
return (
|
|
11
|
+
<div className="flex flex-col items-center justify-between h-full md:flex-row">
|
|
12
|
+
{stages.map((stage, key) => (
|
|
13
|
+
<>
|
|
14
|
+
<Stage
|
|
15
|
+
key={`stage-${key}`}
|
|
16
|
+
index={key}
|
|
17
|
+
active={key < activeKey}
|
|
18
|
+
current={key === activeKey}
|
|
19
|
+
last={key === stages.length - 1}
|
|
20
|
+
label={stage}
|
|
21
|
+
/>
|
|
22
|
+
{key !== stages.length - 1 && (
|
|
23
|
+
<TimelineBorder active={key < activeKey} />
|
|
24
|
+
)}
|
|
25
|
+
</>
|
|
26
|
+
))}
|
|
27
|
+
</div>
|
|
28
|
+
);
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export default Desktop;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Timeline } from '@kanda-libs/ks-design-library';
|
|
2
|
+
import type { FunctionComponent } from 'react';
|
|
3
|
+
import type { StageTimelineProps } from '.';
|
|
4
|
+
|
|
5
|
+
const Mobile: FunctionComponent<StageTimelineProps> = function ({
|
|
6
|
+
mobileStages = [],
|
|
7
|
+
activeKey,
|
|
8
|
+
}) {
|
|
9
|
+
return (
|
|
10
|
+
<div className="px-2">
|
|
11
|
+
<Timeline
|
|
12
|
+
compact
|
|
13
|
+
items={mobileStages.map((stage, index) => ({
|
|
14
|
+
title: stage,
|
|
15
|
+
fill: activeKey === index ? 'green' : 'grey',
|
|
16
|
+
}))}
|
|
17
|
+
/>
|
|
18
|
+
</div>
|
|
19
|
+
);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export default Mobile;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Icon, Text } from '@kanda-libs/ks-design-library';
|
|
2
|
+
import type { FunctionComponent } from 'react';
|
|
3
|
+
import useStageProps from './useStageProps';
|
|
4
|
+
|
|
5
|
+
export interface StageProps {
|
|
6
|
+
index: number;
|
|
7
|
+
active?: boolean;
|
|
8
|
+
current?: boolean;
|
|
9
|
+
last?: boolean;
|
|
10
|
+
label: string | JSX.Element;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const Stage: FunctionComponent<StageProps> = function ({
|
|
14
|
+
index,
|
|
15
|
+
active = false,
|
|
16
|
+
current = false,
|
|
17
|
+
last = false,
|
|
18
|
+
label,
|
|
19
|
+
}) {
|
|
20
|
+
const { iconClasses, leftBorderClasses, rightBorderClasses } = useStageProps(
|
|
21
|
+
active,
|
|
22
|
+
current,
|
|
23
|
+
index,
|
|
24
|
+
last,
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
return (
|
|
28
|
+
<div className="relative flex flex-col items-center w-full md:w-auto md:min-w-48">
|
|
29
|
+
{current && <Icon icon="chevron-down" height={20} />}
|
|
30
|
+
{!current && <div className="h-5" />}
|
|
31
|
+
<div className={iconClasses}>
|
|
32
|
+
<div>
|
|
33
|
+
{!active && index + 1}
|
|
34
|
+
{active && <Icon icon="check" width={12} />}
|
|
35
|
+
</div>
|
|
36
|
+
</div>
|
|
37
|
+
<div className={leftBorderClasses} />
|
|
38
|
+
{!last && <div className={rightBorderClasses} />}
|
|
39
|
+
<Text text={label} className="text-sm text-center text-neutral-700" />
|
|
40
|
+
</div>
|
|
41
|
+
);
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
export default Stage;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import clsx from 'clsx';
|
|
2
|
+
import type { StageProps } from '.';
|
|
3
|
+
|
|
4
|
+
export interface StagePropsHook {
|
|
5
|
+
iconClasses: string;
|
|
6
|
+
leftBorderClasses: string;
|
|
7
|
+
rightBorderClasses: string;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export default function useStageProps(
|
|
11
|
+
active: StageProps['active'],
|
|
12
|
+
current: StageProps['current'],
|
|
13
|
+
index: StageProps['index'],
|
|
14
|
+
last: StageProps['last'],
|
|
15
|
+
): StagePropsHook {
|
|
16
|
+
const currentlyActive = active || current;
|
|
17
|
+
const iconClasses = clsx(
|
|
18
|
+
'w-7 h-7 rounded-2xl mb-2 relative z-10',
|
|
19
|
+
'text-center text-18-22-em flex items-center justify-center border border-solid border-2',
|
|
20
|
+
!currentlyActive && 'border-neutral-600 text-neutral-600 bg-neutral-000',
|
|
21
|
+
currentlyActive && 'bg-green-500 text-neutral-000 border-transparent',
|
|
22
|
+
);
|
|
23
|
+
|
|
24
|
+
const borderClasses = clsx(
|
|
25
|
+
'absolute h-1 top-[31px] z-0',
|
|
26
|
+
!currentlyActive && 'bg-neutral-200',
|
|
27
|
+
currentlyActive && 'bg-green-500',
|
|
28
|
+
);
|
|
29
|
+
|
|
30
|
+
const leftBorderClasses = clsx(
|
|
31
|
+
borderClasses,
|
|
32
|
+
'w-1/2 left-0',
|
|
33
|
+
index !== 0 && 'hidden md:block',
|
|
34
|
+
index === 0 && 'hidden',
|
|
35
|
+
);
|
|
36
|
+
const rightBorderClasses = clsx(
|
|
37
|
+
borderClasses,
|
|
38
|
+
'w-1/2 right-0 hidden md:block',
|
|
39
|
+
current && 'bg-neutral-200',
|
|
40
|
+
!last && 'hidden md:block',
|
|
41
|
+
last && 'hidden',
|
|
42
|
+
);
|
|
43
|
+
|
|
44
|
+
return {
|
|
45
|
+
iconClasses,
|
|
46
|
+
leftBorderClasses,
|
|
47
|
+
rightBorderClasses,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import clsx from 'clsx';
|
|
2
|
+
import type { FunctionComponent } from 'react';
|
|
3
|
+
|
|
4
|
+
export interface TimelineBorderProps {
|
|
5
|
+
active?: boolean;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
const TimelineBorder: FunctionComponent<TimelineBorderProps> = function ({
|
|
9
|
+
active = false,
|
|
10
|
+
}) {
|
|
11
|
+
return (
|
|
12
|
+
<div
|
|
13
|
+
className={clsx(
|
|
14
|
+
'flex-grow w-full h-1 -mt-[32px] hidden md:block',
|
|
15
|
+
!active && 'bg-neutral-200',
|
|
16
|
+
active && 'bg-green-500',
|
|
17
|
+
)}
|
|
18
|
+
/>
|
|
19
|
+
);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export default TimelineBorder;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { BreakPoints } from '@kanda-libs/ks-design-library';
|
|
2
|
+
import type { FunctionComponent } from 'react';
|
|
3
|
+
import Desktop from './Desktop';
|
|
4
|
+
import Mobile from './Mobile';
|
|
5
|
+
|
|
6
|
+
export interface StageTimelineProps {
|
|
7
|
+
stages: (string | JSX.Element)[];
|
|
8
|
+
mobileStages?: string[];
|
|
9
|
+
activeKey: number;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const StageTimeline: FunctionComponent<StageTimelineProps> = function (props) {
|
|
13
|
+
return (
|
|
14
|
+
<BreakPoints
|
|
15
|
+
desktop={<Desktop {...props} />}
|
|
16
|
+
mobile={<Mobile {...props} />}
|
|
17
|
+
/>
|
|
18
|
+
);
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export default StageTimeline;
|
package/src/components/index.tsx
CHANGED
|
@@ -5,4 +5,6 @@ export { default as Pdf } from './Pdf';
|
|
|
5
5
|
export { default as Pipeline } from './Pipeline';
|
|
6
6
|
export { default as PipelineColumn } from './Pipeline/PipelineColumn';
|
|
7
7
|
export { default as SimpleCompanyCard } from './SimpleCompanyCard';
|
|
8
|
+
export { default as StageTimeline } from './StageTimeline';
|
|
8
9
|
export { default as NotFoundPage } from './NotFoundPage';
|
|
10
|
+
export { default as NumberedList } from './NumberedList';
|
package/src/styles/library.css
CHANGED
|
@@ -982,6 +982,10 @@ video {
|
|
|
982
982
|
position: fixed;
|
|
983
983
|
}
|
|
984
984
|
|
|
985
|
+
.absolute {
|
|
986
|
+
position: absolute;
|
|
987
|
+
}
|
|
988
|
+
|
|
985
989
|
.relative {
|
|
986
990
|
position: relative;
|
|
987
991
|
}
|
|
@@ -990,6 +994,26 @@ video {
|
|
|
990
994
|
right: 16px;
|
|
991
995
|
}
|
|
992
996
|
|
|
997
|
+
.top-\[31px\] {
|
|
998
|
+
top: 31px;
|
|
999
|
+
}
|
|
1000
|
+
|
|
1001
|
+
.left-0 {
|
|
1002
|
+
left: 0;
|
|
1003
|
+
}
|
|
1004
|
+
|
|
1005
|
+
.right-0 {
|
|
1006
|
+
right: 0;
|
|
1007
|
+
}
|
|
1008
|
+
|
|
1009
|
+
.z-10 {
|
|
1010
|
+
z-index: 10;
|
|
1011
|
+
}
|
|
1012
|
+
|
|
1013
|
+
.z-0 {
|
|
1014
|
+
z-index: 0;
|
|
1015
|
+
}
|
|
1016
|
+
|
|
993
1017
|
.z-20 {
|
|
994
1018
|
z-index: 20;
|
|
995
1019
|
}
|
|
@@ -1012,6 +1036,14 @@ video {
|
|
|
1012
1036
|
margin-bottom: 16px;
|
|
1013
1037
|
}
|
|
1014
1038
|
|
|
1039
|
+
.mr-3 {
|
|
1040
|
+
margin-right: 12px;
|
|
1041
|
+
}
|
|
1042
|
+
|
|
1043
|
+
.mb-auto {
|
|
1044
|
+
margin-bottom: auto;
|
|
1045
|
+
}
|
|
1046
|
+
|
|
1015
1047
|
.mt-4 {
|
|
1016
1048
|
margin-top: 16px;
|
|
1017
1049
|
}
|
|
@@ -1028,10 +1060,18 @@ video {
|
|
|
1028
1060
|
margin-top: 40px;
|
|
1029
1061
|
}
|
|
1030
1062
|
|
|
1063
|
+
.-mt-\[32px\] {
|
|
1064
|
+
margin-top: -32px;
|
|
1065
|
+
}
|
|
1066
|
+
|
|
1031
1067
|
.mt-2 {
|
|
1032
1068
|
margin-top: 8px;
|
|
1033
1069
|
}
|
|
1034
1070
|
|
|
1071
|
+
.mb-2 {
|
|
1072
|
+
margin-bottom: 8px;
|
|
1073
|
+
}
|
|
1074
|
+
|
|
1035
1075
|
.mr-8 {
|
|
1036
1076
|
margin-right: 32px;
|
|
1037
1077
|
}
|
|
@@ -1087,16 +1127,28 @@ video {
|
|
|
1087
1127
|
}
|
|
1088
1128
|
}
|
|
1089
1129
|
|
|
1090
|
-
.h-
|
|
1091
|
-
height:
|
|
1130
|
+
.h-8 {
|
|
1131
|
+
height: 32px;
|
|
1092
1132
|
}
|
|
1093
1133
|
|
|
1094
1134
|
.h-full {
|
|
1095
1135
|
height: 100%;
|
|
1096
1136
|
}
|
|
1097
1137
|
|
|
1098
|
-
.h-
|
|
1099
|
-
height:
|
|
1138
|
+
.h-1 {
|
|
1139
|
+
height: 4px;
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
.h-14 {
|
|
1143
|
+
height: 56px;
|
|
1144
|
+
}
|
|
1145
|
+
|
|
1146
|
+
.h-5 {
|
|
1147
|
+
height: 20px;
|
|
1148
|
+
}
|
|
1149
|
+
|
|
1150
|
+
.h-7 {
|
|
1151
|
+
height: 28px;
|
|
1100
1152
|
}
|
|
1101
1153
|
|
|
1102
1154
|
.h-9 {
|
|
@@ -1107,10 +1159,22 @@ video {
|
|
|
1107
1159
|
width: 100vw;
|
|
1108
1160
|
}
|
|
1109
1161
|
|
|
1162
|
+
.w-8 {
|
|
1163
|
+
width: 32px;
|
|
1164
|
+
}
|
|
1165
|
+
|
|
1110
1166
|
.w-full {
|
|
1111
1167
|
width: 100%;
|
|
1112
1168
|
}
|
|
1113
1169
|
|
|
1170
|
+
.w-7 {
|
|
1171
|
+
width: 28px;
|
|
1172
|
+
}
|
|
1173
|
+
|
|
1174
|
+
.w-1\/2 {
|
|
1175
|
+
width: 50%;
|
|
1176
|
+
}
|
|
1177
|
+
|
|
1114
1178
|
.max-w-80 {
|
|
1115
1179
|
max-width: 320px;
|
|
1116
1180
|
}
|
|
@@ -1123,6 +1187,10 @@ video {
|
|
|
1123
1187
|
max-width: 480px;
|
|
1124
1188
|
}
|
|
1125
1189
|
|
|
1190
|
+
.flex-grow {
|
|
1191
|
+
flex-grow: 1;
|
|
1192
|
+
}
|
|
1193
|
+
|
|
1126
1194
|
.transform {
|
|
1127
1195
|
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
1128
1196
|
}
|
|
@@ -1159,15 +1227,23 @@ video {
|
|
|
1159
1227
|
justify-content: center;
|
|
1160
1228
|
}
|
|
1161
1229
|
|
|
1162
|
-
.
|
|
1163
|
-
-
|
|
1164
|
-
column-gap: 8px;
|
|
1230
|
+
.justify-between {
|
|
1231
|
+
justify-content: space-between;
|
|
1165
1232
|
}
|
|
1166
1233
|
|
|
1167
1234
|
.gap-y-2 {
|
|
1168
1235
|
row-gap: 8px;
|
|
1169
1236
|
}
|
|
1170
1237
|
|
|
1238
|
+
.gap-y-1 {
|
|
1239
|
+
row-gap: 4px;
|
|
1240
|
+
}
|
|
1241
|
+
|
|
1242
|
+
.gap-x-2 {
|
|
1243
|
+
-moz-column-gap: 8px;
|
|
1244
|
+
column-gap: 8px;
|
|
1245
|
+
}
|
|
1246
|
+
|
|
1171
1247
|
.overflow-hidden {
|
|
1172
1248
|
overflow: hidden;
|
|
1173
1249
|
}
|
|
@@ -1184,6 +1260,14 @@ video {
|
|
|
1184
1260
|
border-radius: 0.75rem;
|
|
1185
1261
|
}
|
|
1186
1262
|
|
|
1263
|
+
.rounded-full {
|
|
1264
|
+
border-radius: 9999px;
|
|
1265
|
+
}
|
|
1266
|
+
|
|
1267
|
+
.rounded-2xl {
|
|
1268
|
+
border-radius: 1rem;
|
|
1269
|
+
}
|
|
1270
|
+
|
|
1187
1271
|
.rounded-lg {
|
|
1188
1272
|
border-radius: 0.5rem;
|
|
1189
1273
|
}
|
|
@@ -1192,15 +1276,32 @@ video {
|
|
|
1192
1276
|
border-width: 1px;
|
|
1193
1277
|
}
|
|
1194
1278
|
|
|
1279
|
+
.border-2 {
|
|
1280
|
+
border-width: 2px;
|
|
1281
|
+
}
|
|
1282
|
+
|
|
1195
1283
|
.border-b {
|
|
1196
1284
|
border-bottom-width: 1px;
|
|
1197
1285
|
}
|
|
1198
1286
|
|
|
1287
|
+
.border-solid {
|
|
1288
|
+
border-style: solid;
|
|
1289
|
+
}
|
|
1290
|
+
|
|
1199
1291
|
.border-lavender-200 {
|
|
1200
1292
|
--tw-border-opacity: 1;
|
|
1201
1293
|
border-color: rgb(127 131 255 / var(--tw-border-opacity));
|
|
1202
1294
|
}
|
|
1203
1295
|
|
|
1296
|
+
.border-neutral-600 {
|
|
1297
|
+
--tw-border-opacity: 1;
|
|
1298
|
+
border-color: rgb(108 129 157 / var(--tw-border-opacity));
|
|
1299
|
+
}
|
|
1300
|
+
|
|
1301
|
+
.border-transparent {
|
|
1302
|
+
border-color: transparent;
|
|
1303
|
+
}
|
|
1304
|
+
|
|
1204
1305
|
.border-neutral-200 {
|
|
1205
1306
|
--tw-border-opacity: 1;
|
|
1206
1307
|
border-color: rgb(237 241 247 / var(--tw-border-opacity));
|
|
@@ -1211,11 +1312,31 @@ video {
|
|
|
1211
1312
|
background-color: rgb(240 240 255 / var(--tw-bg-opacity));
|
|
1212
1313
|
}
|
|
1213
1314
|
|
|
1315
|
+
.bg-green-200 {
|
|
1316
|
+
--tw-bg-opacity: 1;
|
|
1317
|
+
background-color: rgb(193 244 233 / var(--tw-bg-opacity));
|
|
1318
|
+
}
|
|
1319
|
+
|
|
1214
1320
|
.bg-blue-100 {
|
|
1215
1321
|
--tw-bg-opacity: 1;
|
|
1216
1322
|
background-color: rgb(229 245 255 / var(--tw-bg-opacity));
|
|
1217
1323
|
}
|
|
1218
1324
|
|
|
1325
|
+
.bg-neutral-200 {
|
|
1326
|
+
--tw-bg-opacity: 1;
|
|
1327
|
+
background-color: rgb(237 241 247 / var(--tw-bg-opacity));
|
|
1328
|
+
}
|
|
1329
|
+
|
|
1330
|
+
.bg-green-500 {
|
|
1331
|
+
--tw-bg-opacity: 1;
|
|
1332
|
+
background-color: rgb(31 204 175 / var(--tw-bg-opacity));
|
|
1333
|
+
}
|
|
1334
|
+
|
|
1335
|
+
.bg-neutral-000 {
|
|
1336
|
+
--tw-bg-opacity: 1;
|
|
1337
|
+
background-color: rgb(255 255 255 / var(--tw-bg-opacity));
|
|
1338
|
+
}
|
|
1339
|
+
|
|
1219
1340
|
.bg-transparent {
|
|
1220
1341
|
background-color: transparent;
|
|
1221
1342
|
}
|
|
@@ -1229,6 +1350,11 @@ video {
|
|
|
1229
1350
|
padding-right: 16px;
|
|
1230
1351
|
}
|
|
1231
1352
|
|
|
1353
|
+
.px-2 {
|
|
1354
|
+
padding-left: 8px;
|
|
1355
|
+
padding-right: 8px;
|
|
1356
|
+
}
|
|
1357
|
+
|
|
1232
1358
|
.py-4 {
|
|
1233
1359
|
padding-top: 16px;
|
|
1234
1360
|
padding-bottom: 16px;
|
|
@@ -1259,11 +1385,6 @@ video {
|
|
|
1259
1385
|
padding-right: 0;
|
|
1260
1386
|
}
|
|
1261
1387
|
|
|
1262
|
-
.px-2 {
|
|
1263
|
-
padding-left: 8px;
|
|
1264
|
-
padding-right: 8px;
|
|
1265
|
-
}
|
|
1266
|
-
|
|
1267
1388
|
.pl-4 {
|
|
1268
1389
|
padding-left: 16px;
|
|
1269
1390
|
}
|
|
@@ -1280,6 +1401,10 @@ video {
|
|
|
1280
1401
|
text-align: center;
|
|
1281
1402
|
}
|
|
1282
1403
|
|
|
1404
|
+
.text-sm {
|
|
1405
|
+
font-size: 14px;
|
|
1406
|
+
}
|
|
1407
|
+
|
|
1283
1408
|
.uppercase {
|
|
1284
1409
|
text-transform: uppercase;
|
|
1285
1410
|
}
|
|
@@ -1308,6 +1433,11 @@ video {
|
|
|
1308
1433
|
color: rgb(108 129 157 / var(--tw-text-opacity));
|
|
1309
1434
|
}
|
|
1310
1435
|
|
|
1436
|
+
.text-neutral-000 {
|
|
1437
|
+
--tw-text-opacity: 1;
|
|
1438
|
+
color: rgb(255 255 255 / var(--tw-text-opacity));
|
|
1439
|
+
}
|
|
1440
|
+
|
|
1311
1441
|
.text-neutral-500 {
|
|
1312
1442
|
--tw-text-opacity: 1;
|
|
1313
1443
|
color: rgb(156 173 196 / var(--tw-text-opacity));
|
|
@@ -2221,6 +2351,14 @@ Modified version of toast CSS to match designs
|
|
|
2221
2351
|
}
|
|
2222
2352
|
|
|
2223
2353
|
@media (min-width: 768px) {
|
|
2354
|
+
.md\:mb-3 {
|
|
2355
|
+
margin-bottom: 12px;
|
|
2356
|
+
}
|
|
2357
|
+
|
|
2358
|
+
.md\:block {
|
|
2359
|
+
display: block;
|
|
2360
|
+
}
|
|
2361
|
+
|
|
2224
2362
|
.md\:hidden {
|
|
2225
2363
|
display: none;
|
|
2226
2364
|
}
|
|
@@ -2229,10 +2367,18 @@ Modified version of toast CSS to match designs
|
|
|
2229
2367
|
height: 64px;
|
|
2230
2368
|
}
|
|
2231
2369
|
|
|
2370
|
+
.md\:w-auto {
|
|
2371
|
+
width: auto;
|
|
2372
|
+
}
|
|
2373
|
+
|
|
2232
2374
|
.md\:w-full {
|
|
2233
2375
|
width: 100%;
|
|
2234
2376
|
}
|
|
2235
2377
|
|
|
2378
|
+
.md\:min-w-48 {
|
|
2379
|
+
min-width: 192px;
|
|
2380
|
+
}
|
|
2381
|
+
|
|
2236
2382
|
.md\:flex-row {
|
|
2237
2383
|
flex-direction: row;
|
|
2238
2384
|
}
|