@aiquants/contact-map 0.1.1 → 0.3.0

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.mts CHANGED
@@ -1,13 +1,16 @@
1
- import { b as ContactRecordForTree, C as ContactMapDirectoryEntry } from "./tree-types-Dl6iBQze.mjs";
2
- export { D as DEFAULT_LIST_LAYOUT_SPEC, c as DEFAULT_TREE_LAYOUT_SPEC, R as ResponsiveLayoutSpec, a as ResponsiveThresholds, d as calculateResponsiveThresholds, g as getHysteresisBreakpointState } from "./tree-types-Dl6iBQze.mjs";
1
+ import { b as ContactRecordForTree, c as ContactMapTreeNaming, C as ContactMapDirectoryEntry } from "./tree-types-CDq16q63.mjs";
2
+ export { D as DEFAULT_LIST_LAYOUT_SPEC, d as DEFAULT_TREE_LAYOUT_SPEC, R as ResponsiveLayoutSpec, a as ResponsiveThresholds, e as calculateResponsiveThresholds, g as getHysteresisBreakpointState } from "./tree-types-CDq16q63.mjs";
3
3
  import { e as SearchResultEntry, C as ContactRecord } from "./wire-BxEK32O0.mjs";
4
4
  export { d as ContactMapLogger, c as ContactMapOutletContext, b as ContactMapSearchOutletContext, a as ContactMapStreamPhase, f as ContactMapStreamState, F as FieldPerformanceMetric, I as IndexWorkerMetrics, J as JsonSerialized, L as LevenshteinWorkerMetrics, S as SerializedContactStreamRow, g as StreamChunkWire, h as StreamCursor, i as StreamErrorWire, j as StreamLineWire, k as StreamMetadataWire, l as defaultLogger } from "./wire-BxEK32O0.mjs";
5
5
  import { z } from "zod";
6
+ declare const assertContactMapTreeNaming: (naming: ContactMapTreeNaming) => void;
6
7
  declare class IncrementalTreeBuilder<T extends ContactRecordForTree = ContactRecordForTree> {
8
+ private readonly naming;
7
9
  private companyMap;
8
10
  private processedPersonIds;
9
11
  private allDepts;
10
12
  private cachedResult;
13
+ constructor(naming: ContactMapTreeNaming);
11
14
  appendRecords(newRecords: ReadonlyArray<T>): void;
12
15
  getSnapshot(): {
13
16
  tree: ContactMapDirectoryEntry[];
@@ -19,7 +22,7 @@ declare class IncrementalTreeBuilder<T extends ContactRecordForTree = ContactRec
19
22
  getUniquePersonCount(): number;
20
23
  get size(): number;
21
24
  }
22
- declare const buildDirectoryTree: <T extends ContactRecordForTree>(contacts: ReadonlyArray<T>) => {
25
+ declare const buildDirectoryTree: <T extends ContactRecordForTree>(contacts: ReadonlyArray<T>, naming: ContactMapTreeNaming) => {
23
26
  tree: ContactMapDirectoryEntry[];
24
27
  companyMap: Record<string, ContactMapDirectoryEntry>;
25
28
  };
@@ -58,6 +61,7 @@ declare const extractDepartmentsFromTitle: (title: string, context: ParserContex
58
61
  declare const StandardDepartmentParser: DepartmentParser;
59
62
  declare const TitleBasedDepartmentParser: DepartmentParser;
60
63
  declare const normalizeSearchInput: (value: string) => string;
64
+ declare const getSearchQuerySpellings: (query: string) => string[];
61
65
  declare const schemaContactRecord: z.ZodObject<{
62
66
  person_id: z.ZodPipeline<z.ZodEffects<z.ZodUnion<[
63
67
  z.ZodString,
@@ -264,4 +268,4 @@ declare const schemaContactRecords: z.ZodArray<z.ZodObject<{
264
268
  updated_at?: string | Date | undefined;
265
269
  updated_by?: string | undefined;
266
270
  }>, "many">;
267
- export { type ContactEntrySource, ContactMapDirectoryEntry, ContactRecord, ContactRecordForTree, type DepartmentChain, type DepartmentParseSource, type DepartmentParser, type DepartmentParserMode, type EmailFieldKey, IncrementalTreeBuilder, type ParserContext, type PhoneFieldKey, type PreferredValueResult, SearchResultEntry, StandardDepartmentParser, TitleBasedDepartmentParser, buildDirectoryTree, extractContactData, extractDepartmentsFromTitle, formatDate, formatDateTime, getEmailLinkHref, getPhoneDialHref, getPrimaryEmail, getPrimaryPhone, normalizeLabel, normalizeSearchInput, normalizeString, schemaContactRecord, schemaContactRecords, splitDepartment, toDisplayValue };
271
+ export { type ContactEntrySource, ContactMapDirectoryEntry, ContactMapTreeNaming, ContactRecord, ContactRecordForTree, type DepartmentChain, type DepartmentParseSource, type DepartmentParser, type DepartmentParserMode, type EmailFieldKey, IncrementalTreeBuilder, type ParserContext, type PhoneFieldKey, type PreferredValueResult, SearchResultEntry, StandardDepartmentParser, TitleBasedDepartmentParser, assertContactMapTreeNaming, buildDirectoryTree, extractContactData, extractDepartmentsFromTitle, formatDate, formatDateTime, getEmailLinkHref, getPhoneDialHref, getPrimaryEmail, getPrimaryPhone, getSearchQuerySpellings, normalizeLabel, normalizeSearchInput, normalizeString, schemaContactRecord, schemaContactRecords, splitDepartment, toDisplayValue };
package/dist/index.d.ts CHANGED
@@ -1,13 +1,16 @@
1
- import { b as ContactRecordForTree, C as ContactMapDirectoryEntry } from "./tree-types-Dl6iBQze.js";
2
- export { D as DEFAULT_LIST_LAYOUT_SPEC, c as DEFAULT_TREE_LAYOUT_SPEC, R as ResponsiveLayoutSpec, a as ResponsiveThresholds, d as calculateResponsiveThresholds, g as getHysteresisBreakpointState } from "./tree-types-Dl6iBQze.js";
1
+ import { b as ContactRecordForTree, c as ContactMapTreeNaming, C as ContactMapDirectoryEntry } from "./tree-types-CDq16q63.js";
2
+ export { D as DEFAULT_LIST_LAYOUT_SPEC, d as DEFAULT_TREE_LAYOUT_SPEC, R as ResponsiveLayoutSpec, a as ResponsiveThresholds, e as calculateResponsiveThresholds, g as getHysteresisBreakpointState } from "./tree-types-CDq16q63.js";
3
3
  import { e as SearchResultEntry, C as ContactRecord } from "./wire-BxEK32O0.js";
4
4
  export { d as ContactMapLogger, c as ContactMapOutletContext, b as ContactMapSearchOutletContext, a as ContactMapStreamPhase, f as ContactMapStreamState, F as FieldPerformanceMetric, I as IndexWorkerMetrics, J as JsonSerialized, L as LevenshteinWorkerMetrics, S as SerializedContactStreamRow, g as StreamChunkWire, h as StreamCursor, i as StreamErrorWire, j as StreamLineWire, k as StreamMetadataWire, l as defaultLogger } from "./wire-BxEK32O0.js";
5
5
  import { z } from "zod";
6
+ declare const assertContactMapTreeNaming: (naming: ContactMapTreeNaming) => void;
6
7
  declare class IncrementalTreeBuilder<T extends ContactRecordForTree = ContactRecordForTree> {
8
+ private readonly naming;
7
9
  private companyMap;
8
10
  private processedPersonIds;
9
11
  private allDepts;
10
12
  private cachedResult;
13
+ constructor(naming: ContactMapTreeNaming);
11
14
  appendRecords(newRecords: ReadonlyArray<T>): void;
12
15
  getSnapshot(): {
13
16
  tree: ContactMapDirectoryEntry[];
@@ -19,7 +22,7 @@ declare class IncrementalTreeBuilder<T extends ContactRecordForTree = ContactRec
19
22
  getUniquePersonCount(): number;
20
23
  get size(): number;
21
24
  }
22
- declare const buildDirectoryTree: <T extends ContactRecordForTree>(contacts: ReadonlyArray<T>) => {
25
+ declare const buildDirectoryTree: <T extends ContactRecordForTree>(contacts: ReadonlyArray<T>, naming: ContactMapTreeNaming) => {
23
26
  tree: ContactMapDirectoryEntry[];
24
27
  companyMap: Record<string, ContactMapDirectoryEntry>;
25
28
  };
@@ -58,6 +61,7 @@ declare const extractDepartmentsFromTitle: (title: string, context: ParserContex
58
61
  declare const StandardDepartmentParser: DepartmentParser;
59
62
  declare const TitleBasedDepartmentParser: DepartmentParser;
60
63
  declare const normalizeSearchInput: (value: string) => string;
64
+ declare const getSearchQuerySpellings: (query: string) => string[];
61
65
  declare const schemaContactRecord: z.ZodObject<{
62
66
  person_id: z.ZodPipeline<z.ZodEffects<z.ZodUnion<[
63
67
  z.ZodString,
@@ -264,4 +268,4 @@ declare const schemaContactRecords: z.ZodArray<z.ZodObject<{
264
268
  updated_at?: string | Date | undefined;
265
269
  updated_by?: string | undefined;
266
270
  }>, "many">;
267
- export { type ContactEntrySource, ContactMapDirectoryEntry, ContactRecord, ContactRecordForTree, type DepartmentChain, type DepartmentParseSource, type DepartmentParser, type DepartmentParserMode, type EmailFieldKey, IncrementalTreeBuilder, type ParserContext, type PhoneFieldKey, type PreferredValueResult, SearchResultEntry, StandardDepartmentParser, TitleBasedDepartmentParser, buildDirectoryTree, extractContactData, extractDepartmentsFromTitle, formatDate, formatDateTime, getEmailLinkHref, getPhoneDialHref, getPrimaryEmail, getPrimaryPhone, normalizeLabel, normalizeSearchInput, normalizeString, schemaContactRecord, schemaContactRecords, splitDepartment, toDisplayValue };
271
+ export { type ContactEntrySource, ContactMapDirectoryEntry, ContactMapTreeNaming, ContactRecord, ContactRecordForTree, type DepartmentChain, type DepartmentParseSource, type DepartmentParser, type DepartmentParserMode, type EmailFieldKey, IncrementalTreeBuilder, type ParserContext, type PhoneFieldKey, type PreferredValueResult, SearchResultEntry, StandardDepartmentParser, TitleBasedDepartmentParser, assertContactMapTreeNaming, buildDirectoryTree, extractContactData, extractDepartmentsFromTitle, formatDate, formatDateTime, getEmailLinkHref, getPhoneDialHref, getPrimaryEmail, getPrimaryPhone, getSearchQuerySpellings, normalizeLabel, normalizeSearchInput, normalizeString, schemaContactRecord, schemaContactRecords, splitDepartment, toDisplayValue };
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";var z=Object.defineProperty;var Z=Object.getOwnPropertyDescriptor;var ee=Object.getOwnPropertyNames;var te=Object.prototype.hasOwnProperty;var ne=(e,t)=>{for(var r in t)z(e,r,{get:t[r],enumerable:!0})},re=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of ee(t))!te.call(e,s)&&s!==r&&z(e,s,{get:()=>t[s],enumerable:!(o=Z(t,s))||o.enumerable});return e};var oe=e=>re(z({},"__esModule",{value:!0}),e);var We={};ne(We,{DEFAULT_LIST_LAYOUT_SPEC:()=>Pe,DEFAULT_TREE_LAYOUT_SPEC:()=>Ce,IncrementalTreeBuilder:()=>L,StandardDepartmentParser:()=>N,TitleBasedDepartmentParser:()=>A,buildDirectoryTree:()=>me,calculateResponsiveThresholds:()=>xe,defaultLogger:()=>ke,extractContactData:()=>fe,extractDepartmentsFromTitle:()=>F,formatDate:()=>De,formatDateTime:()=>X,getEmailLinkHref:()=>be,getHysteresisBreakpointState:()=>Se,getPhoneDialHref:()=>ye,getPrimaryEmail:()=>he,getPrimaryPhone:()=>ge,normalizeLabel:()=>R,normalizeSearchInput:()=>Ee,normalizeString:()=>M,schemaContactRecord:()=>J,schemaContactRecords:()=>Me,splitDepartment:()=>$,toDisplayValue:()=>Te});module.exports=oe(We);var R=(e,t)=>e&&e.trim()||t;var ie={\u672C\u90E8:{rank:10,type:"Organization"},\u30AB\u30F3\u30D1\u30CB\u30FC:{rank:10,type:"Organization"},\u672C\u793E:{rank:10,type:"Location"},\u30D6\u30ED\u30C3\u30AF:{rank:11,type:"Location"},\u652F\u5E97:{rank:12,type:"Location"},\u7814\u7A76\u6240:{rank:15,type:"Location"},\u5DE5\u5834:{rank:15,type:"Location"},\u4E8B\u696D\u90E8:{rank:18,type:"Organization"},\u90E8\u9580:{rank:18,type:"Organization"},\u7D71\u62EC\u90E8:{rank:19,type:"Organization"},\u90E8:{rank:20,type:"Organization"},\u958B\u767A:{rank:20,type:"Organization"},\u30B0\u30EB\u30FC\u30D7:{rank:22,type:"Organization"},\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8:{rank:25,type:"Organization"},\u63A8\u9032:{rank:20,type:"Organization"},\u4E8B\u696D\u6240:{rank:25,type:"Location"},\u55B6\u696D\u6240:{rank:28,type:"Location"},\u5BA4:{rank:30,type:"Organization"},\u8AB2:{rank:30,type:"Organization"},\u30BB\u30F3\u30BF\u30FC:{rank:30,type:"Location"},\u30D3\u30B8\u30CD\u30B9\u30D7\u30ED\u30C7\u30E5\u30FC\u30B9\u30BB\u30F3\u30BF\u30FC:{rank:30,type:"Location"},\u30C1\u30FC\u30E0:{rank:40,type:"Organization"},\u4FC2:{rank:50,type:"Organization"},Department:{rank:20,type:"Organization"},Dept:{rank:20,type:"Organization"},"Dept.":{rank:20,type:"Organization"},Division:{rank:20,type:"Organization"},Div:{rank:20,type:"Organization"},"Div.":{rank:20,type:"Organization"},Section:{rank:30,type:"Organization"},Sect:{rank:30,type:"Organization"},"Sect.":{rank:30,type:"Organization"},Unit:{rank:30,type:"Organization"},Group:{rank:22,type:"Organization"},Team:{rank:40,type:"Organization"},Branch:{rank:12,type:"Location"},Office:{rank:28,type:"Location"},Center:{rank:30,type:"Location"},Centre:{rank:30,type:"Location"},HQ:{rank:10,type:"Organization"},Headquarters:{rank:10,type:"Organization"}},_=e=>{for(let[t,r]of Object.entries(ie))if(e.endsWith(t))return r;return{rank:99,type:"Other"}},v=e=>_(e).rank,ae=["\u30B0\u30EB\u30FC\u30D7","\u30C1\u30FC\u30E0","Group","Team","\u5BA4","\u8AB2","Unit","Area","\u90E8","Department","Dept","Division","Div","\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8","\u63A8\u9032"],E=e=>ae.find(t=>e.endsWith(t)),se=new Set(["&","Quality","Innovation","R&D","Solutions","Development","Laboratory","and","Food","Beverage"]),le=(e,t)=>t>1&&(e.endsWith("\u652F\u5E97")||e.endsWith("\u672C\u90E8")||e.endsWith("\u4E8B\u696D\u6240")||e.endsWith("\u5DE5\u5834")),pe=(e,t)=>{if(!t)return!0;let r=_(e),o=_(t);if(r.rank<o.rank||e.endsWith("\u672C\u90E8")&&t.endsWith("\u672C\u90E8"))return!1;let s=E(e),y=E(t);return!(s&&y&&s!==y)},W=(e,t)=>{if(!e)return[];if(e==="\u517C")return["\u517C"];if(e==="\u517C\u52D9")return["\u517C"];if(e.startsWith("\u517C ")||e.startsWith("\u517C\u3000")){let o=e.slice(1).trim();return["\u517C",...W(o,t)]}if(e.startsWith("\u517C\u52D9 ")||e.startsWith("\u517C\u52D9\u3000")){let o=e.slice(2).trim();return["\u517C",...W(o,t)]}let r="";for(let o=e.length-1;o>0;o--){if(e[o]!==" ")continue;let s=e.slice(0,o);if(!se.has(s)&&t.has(s)){r=s;break}}if(r){let o=r,s=e.slice(r.length),y=/^\s+(and|&)\s+([A-Za-z0-9]+)/i,P=s.match(y);P&&(o=e.slice(0,r.length+P[0].length));let u=e.slice(o.length),n=["Department","Dept","Division","Div","Section","Sect","Unit","Group","Team","Branch","Office","Center","Centre","HQ","Headquarters"];for(let i of n){let g=new RegExp(`^\\s+${i}\\.?(?=$|[\\s,])`,"i"),p=u.match(g);if(p){o=e.slice(0,o.length+p[0].length);break}}let m=e.slice(o.length).trim();return[o,...W(m,t)]}return[e]},$=(e,t)=>{let o=e.replace(/[\s\u3000]+(?:兼務|兼)[\s\u3000]+/g,"\u3000\u517C\u3000").replace(/^(?:兼務|兼)[\s\u3000]+/,"\u517C\u3000").replace(/[\s\u3000]+(?:兼務|兼)$/,"\u3000\u517C").split(/\u3000/),s=[];for(let y of o){let P=y.trim();P&&s.push(...W(P,t))}return s},F=(e,t)=>{let r=[],o=["\u90E8","\u8AB2","\u5BA4","\u672C\u90E8","\u652F\u5E97","\u55B6\u696D\u6240","\u30B0\u30EB\u30FC\u30D7","\u30C1\u30FC\u30E0","\u30BB\u30F3\u30BF\u30FC","\u30AB\u30F3\u30D1\u30CB\u30FC","\u4E8B\u696D\u6240","\u5DE5\u5834","\u7814\u7A76\u6240","\u4FC2","\u90E8\u9580","\u4E8B\u696D\u90E8","\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8","\u63A8\u9032","\u958B\u767A","Department","Dept","Division","Div","Section","Sect","Unit","Group","Team","Branch","Office","Center","Centre","HQ","Headquarters"],s=e.split(/[\s\u3000,()()[\]]+/).filter(Boolean),y=s.length,P=new Set;for(let u=y;u>=1;u--)for(let n=0;n<=y-u;n++){let m=!1;for(let g=n;g<n+u;g++)if(P.has(g)){m=!0;break}if(m)continue;let i=s.slice(n,n+u).join(" ");if(!(i==="\u517C"||i==="\u517C\u52D9"||i==="\u4FC2"||i==="of"||i==="&"||i==="Quality"||i==="Innovation"||i==="R&D"||i==="Solutions"||i==="Development"||i==="Laboratory"||i==="and"||i==="Food"||i==="Beverage")&&t.allKnownDepartments.has(i)){r.push({name:i,index:n});for(let g=n;g<n+u;g++)P.add(g)}}for(let u=0;u<y;u++){if(P.has(u))continue;let n=s[u];for(n.endsWith("\u9577")&&n.length>1?n=n.slice(0,-1):n.endsWith("\u7D71\u62EC")&&n.length>2&&(n=n.slice(0,-2));;){let p=!1;if(n.startsWith("\u62C5\u5F53")&&n.length>2||n.startsWith("\u5C02\u4EFB")&&n.length>2||n.startsWith("\u517C\u52D9")&&n.length>2?(n=n.slice(2),p=!0):(n.startsWith("\u526F")||n.startsWith("\u517C"))&&n.length>1&&(n=n.slice(1),p=!0),!p)break}if(n.includes("\u30FB")&&!t.allKnownDepartments.has(n)){let p=n.split("\u30FB"),b=p[p.length-1],T=o.find(k=>b.endsWith(k));if(T){for(let k of p){let C=k;o.some(a=>C.endsWith(a))||(C=C+T);let x=n!=="\u517C"&&n!=="\u4FC2"&&n!=="of"&&n!=="&"&&n!=="Quality"&&n!=="Innovation"&&n!=="R&D"&&n!=="Solutions"&&n!=="Development"&&n!=="Laboratory"&&n!=="and"&&n!=="Food"&&n!=="Beverage"&&t.allKnownDepartments.has(C),d=o.some(a=>C.endsWith(a)),l=o.includes(C);(x||d&&!l)&&r.push({name:C,index:u})}continue}}let m=n!=="\u517C"&&n!=="\u4FC2"&&n!=="of"&&n!=="&"&&n!=="Quality"&&n!=="Innovation"&&n!=="R&D"&&n!=="Solutions"&&n!=="Development"&&n!=="Laboratory"&&n!=="and"&&n!=="Food"&&n!=="Beverage"&&t.allKnownDepartments.has(n),i=o.some(p=>n.endsWith(p)),g=o.includes(n);(m||i&&!g)&&r.push({name:n,index:u})}return r.sort((u,n)=>u.index-n.index),r.map(u=>u.name)},K=(e,t)=>{let r=0;for(let o of t)r<e.length&&o===e[r]&&r++;return r===e.length},N={name:"Standard",parse:(e,t,r="full")=>{let o=R(e.department,"");if(!o)return null;let s=$(o,t.allKnownDepartments),y=new Map;for(let n of s)y.set(n,(y.get(n)||0)+1);let P=n=>{let m=[],i=[];for(let g=0;g<n.length;g++){let p=n[g];if(p==="\u517C"){i.length>0&&(m.push(i),i=[]);continue}let b=_(p),T=b.rank,k=y.get(p)||0,C=le(p,k);if(i.length===0)i.push(p);else{let x=i[i.length-1],d=_(x),l=d.rank;if(i.includes(p))m.push(i),i=[p];else{let a=!1;if(C)a=!0;else if(d.type===b.type){let h=E(x),f=E(p);h&&f&&h!==f||x.endsWith("\u672C\u90E8")&&p.endsWith("\u672C\u90E8")||x.endsWith("\u90E8\u9580")&&p.endsWith("\u4E8B\u696D\u90E8")||x.endsWith("\u4E8B\u696D\u90E8")&&p.endsWith("\u90E8\u9580")||x.endsWith("\u90E8\u9580")&&p.endsWith("\u672C\u90E8")||d.type==="Other"&&b.type==="Other"?a=!0:a=l<T}else a=T>=10,a&&d.type==="Location"&&b.type==="Organization"&&l>=T&&n.slice(g+1).includes(x)&&(a=!1);a?i.push(p):(m.push(i),i=[p])}}if(C){let x=g+1<n.length?n[g+1]:void 0;pe(p,x)&&i.length>0&&(m.push(i),i=[])}}return i.length>0&&m.push(i),m},u=[];if(r==="full"&&u.push(...P(s)),r==="pure_org"){let n=s.filter(m=>_(m).type!=="Location");n.length>0&&u.push(...P(n))}if(e.title){let m=/[^\x20-\x7E]/.test(e.title)?/[\s\u3000]*(?:兼務|兼)[\s\u3000]*/:/[,;]|(?:兼務|兼)/,i=e.title.split(m).filter(Boolean),g=[],p=(d,l)=>{let a=v(d),h=v(l),f=a<h;if(!f){let D=E(d),S=E(l);if(D&&S&&D!==S)f=!0;else if(d.endsWith("\u672C\u90E8")&&l.endsWith("\u672C\u90E8"))f=!0;else if(d.endsWith("\u90E8\u9580")&&l.endsWith("\u4E8B\u696D\u90E8")||d.endsWith("\u4E8B\u696D\u90E8")&&l.endsWith("\u90E8\u9580"))f=!0;else if(d.endsWith("\u90E8\u9580")&&l.endsWith("\u672C\u90E8"))f=!0;else{let O=_(d),Y=_(l);O.type==="Other"&&Y.type==="Other"&&(f=!0)}}return f};for(let d of i){let l=F(d,t);if(l.length===0)continue;let a=[];for(let h of l)if(a.length===0)a.push(h);else{let f=a[a.length-1];if(p(f,h))a.push(h);else{g.push([...a]);let D=!1;for(let S=a.length-2;S>=0;S--){let O=a[S];if(p(O,h)){a=[...a.slice(0,S+1),h],D=!0;break}}D||(a=[h])}}a.length>0&&g.push(a)}let b=[...u],T=d=>i.some(l=>l.includes(d)&&l.length>d.length);for(let d of g){let l=!1;for(let a of u){let h=a.findIndex(f=>d.includes(f));if(h!==-1){let f=a[h],D=d.indexOf(f);if(h>0&&D===0){let S=a.slice(0,h);b.push([...S,...d]),l=!0}else if(D>0&&h===0){let S=d.slice(0,D);b.push([...S,...a]),b.push(d),l=!0}else d.length>a.length-h,l=!0}if(!l){let f=a[a.length-1],D=d[0];p(f,D)&&(b.push([...a,...d]),l=!0)}}l||b.push(d)}let k=[],C=[],x=new Set;for(let d of b){let l=d.join("|");x.has(l)||(x.add(l),C.push(d))}for(let d=0;d<C.length;d++){let l=C[d],a=!1;for(let h=0;h<C.length;h++){if(d===h)continue;let f=C[h];if(f.length>l.length&&f.slice(0,l.length).join("|")===l.join("|")){let D=l[l.length-1];if(!T(D)){a=!0;break}}if(f.length>l.length&&K(l,f)){let D=l[l.length-1];if(!T(D)){a=!0;break}}if(l.length===1&&f.length>0){let D=l[0],S=f[f.length-1];if(D!==S&&S.endsWith(D)){a=!0;break}}}a||k.push(l)}return k.length>0?k:null}if(u.length>0){let n=[];for(let m=0;m<u.length;m++){let i=u[m],g=!1;for(let p=0;p<u.length;p++){if(m===p)continue;let b=u[p];if(b.length>i.length&&K(i,b)){g=!0;break}}g||n.push(i)}return n.length>0?n:null}return null}},A={name:"TitleBased",parse:(e,t,r="full")=>{let o=e.title;if(!o)return null;let s=F(o,t);return s.length>0?[s]:null}};var ce="\u672A\u5206\u985E",U="\u540D\u524D\u672A\u8A2D\u5B9A",ue=[N,A],de=e=>{let t=R(e.full_name,U),r=R(e.title,"");return r.length>0?`${t} (${r})`:t},j=(e,t)=>`${e} (${t.toLocaleString()})`,B=e=>e.sort((t,r)=>t.label.localeCompare(r.label,"ja")),I=(e,t,r)=>{let o=e.get(t);if(o)return o;let s=r();return e.set(t,s),s},w=e=>encodeURIComponent(e.replace(/\//g,"\uFF0F")),H=e=>e.sort((t,r)=>{let o=!!(t.contact.title&&t.contact.title.trim().length>0),s=!!(r.contact.title&&r.contact.title.trim().length>0);return o&&!s?-1:!o&&s?1:t.label.localeCompare(r.label,"ja")}),Q=e=>{let t=R(e.contact.full_name,U),r=R(e.contact.title,"");return{name:r?`${t} (${r})`:t,type:"file",absolutePath:e.path,relativePath:e.segment,personId:e.contact.person_id,title:e.contact.title||void 0,isPrimary:e.isPrimary}},q=e=>{let t=B(Array.from(e.children.values())).map(q),r=H([...e.persons]).map(Q);return{name:j(e.label,e.personCount),type:"directory",absolutePath:e.path,relativePath:e.segment,children:[...r,...t]}},L=class{constructor(){this.companyMap=new Map;this.processedPersonIds=new Set;this.allDepts=new Set;this.cachedResult=null}appendRecords(t){if(!t||t.length===0)return;let r="full",o=!1;for(let s of t)if(!this.processedPersonIds.has(s.person_id)&&s.department){let y=s.department.split(/\u3000/);for(let P of y){let u=P.trim();if(!u||u==="\u517C"||u==="\u4FC2")continue;if(/[^\x20-\x7E]/.test(u)){let m=u.split(" ").filter(i=>i.length>0&&i!=="\u517C"&&i!=="\u4FC2");for(let i of m)this.allDepts.add(i)}else this.allDepts.add(u)}}for(let s of t){let y=s.person_id;if(!Number.isFinite(y)||this.processedPersonIds.has(y))continue;this.processedPersonIds.add(y),o=!0;let P=R(s.company_name,ce),u=de(s),n=`company:${w(P)}`,m=I(this.companyMap,n,()=>({label:P,segment:n,path:`/${n}`,departments:new Map,persons:[],personCount:0})),i=[],g={allKnownDepartments:this.allDepts};for(let p of ue){let b=p.parse(s,g,r);if(b&&b.length>0){i=b;break}}i.length===0&&i.push([]);for(let p=0;p<i.length;p++){let b=i[p];if(b.length===0){let l=`person:${y}`,a=`${m.path}/${l}`;m.persons.some(f=>f.contact.person_id===y)||m.persons.push({contact:s,label:u,path:a,segment:l,isPrimary:!0});continue}let T=null,k=m.path;if(b.length>0){let l=b[0],a=`department:${w(l)}`;T=I(m.departments,a,()=>({label:l,segment:a,path:`${k}/${a}`,children:new Map,persons:[],personCount:0})),k=T.path,T.personCount+=1;for(let h=1;h<b.length;h++){let f=b[h],D=`department:${w(f)}`;if(!T)throw new Error("Unexpected null currentDepartmentNode");T=I(T.children,D,()=>({label:f,segment:D,path:`${k}/${D}`,children:new Map,persons:[],personCount:0})),k=T.path,T.personCount+=1}}else continue;let C=`person:${y}`,x=`${T.path}/${C}`;T.persons.some(l=>l.contact.person_id===y)||T.persons.push({contact:s,label:u,path:x,segment:C,isPrimary:p===0})}m.personCount+=1}o&&(this.cachedResult=null)}getSnapshot(){if(this.cachedResult)return this.cachedResult;let t={},r=B(Array.from(this.companyMap.values())).map(o=>{let s=B(Array.from(o.departments.values())).map(q),y=H([...o.persons]).map(Q),P={name:j(o.label,o.personCount),type:"directory",absolutePath:o.path,relativePath:o.segment,children:[...y,...s]};return t[o.label]=P,P});return this.cachedResult={tree:r,companyMap:t},this.cachedResult}append(t){this.appendRecords(t)}build(){return this.getSnapshot().tree}reset(){this.companyMap.clear(),this.processedPersonIds.clear(),this.allDepts.clear(),this.cachedResult=null}getUniquePersonCount(){return this.processedPersonIds.size}get size(){return this.processedPersonIds.size}},me=e=>{let t=new L;return t.appendRecords(e),t.getSnapshot()};var M=e=>{if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null},fe=e=>!e||typeof e!="object"?null:"item"in e?e.item??null:"person_id"in e?e:null,V=(e,t)=>{if(!e)return{value:null,fieldKey:null};for(let r of t){let o=M(e[r]);if(o)return{value:o,fieldKey:r}}return{value:null,fieldKey:null}},he=e=>V(e,["custom_email","email"]),ge=e=>V(e,["custom_mobile_phone_number","mobile_phone_number","company_phone_number"]),ye=e=>{let t=M(e);if(!t)return null;let r=t.replace(/[^0-9+#*]/g,"");return r.length===0?null:`tel:${r}`},be=(e,t)=>{let r=M(e);return r?t?`https://mail.google.com/mail/?view=cm&fs=1&to=${encodeURIComponent(r)}`:`mailto:${encodeURIComponent(r)}`:null},De=e=>{if(!e)return"-";let t=typeof e=="string"||typeof e=="number"?new Date(e):e;return!(t instanceof Date)||Number.isNaN(t.getTime())?typeof e=="string"?e:"-":t.toISOString().split("T")[0]},X=e=>{if(!e)return"-";let t=typeof e=="string"||typeof e=="number"?new Date(e):e;return!(t instanceof Date)||Number.isNaN(t.getTime())?typeof e=="string"?e:"-":t.toISOString()},Te=e=>e==null?"-":typeof e=="string"?M(e)??"-":typeof e=="number"?Number.isFinite(e)?String(e):"-":e instanceof Date?X(e):String(e);var Pe={listPanelMinWidth:320,detailPanelMinWidth:260,handleThickness:10,listPaddingAndBorder:0,detailPaddingAndBorder:0,scrollbarSafetyBuffer:20,hysteresisSafetyMargin:35},Ce={listPanelMinWidth:280,detailPanelMinWidth:260,handleThickness:10,listPaddingAndBorder:0,detailPaddingAndBorder:0,scrollbarSafetyBuffer:20,hysteresisSafetyMargin:35};function xe(e){let t=e.listPanelMinWidth+e.detailPanelMinWidth+e.handleThickness+e.listPaddingAndBorder+e.detailPaddingAndBorder,r=t+e.scrollbarSafetyBuffer,o=r+e.hysteresisSafetyMargin,s=o-r;return{physicalMinWidth:t,collapseThreshold:r,expandThreshold:o,hysteresisWidth:s}}function Se(e,t,r){return e<=0||!Number.isFinite(e)?!1:t?e>=r.collapseThreshold:e>=r.expandThreshold}var ke={info:(e,...t)=>console.info(`[contact-map] ${e}`,...t),warn:(e,...t)=>console.warn(`[contact-map] ${e}`,...t),error:(e,...t)=>console.error(`[contact-map] ${e}`,...t)};var G=require("@aiquants/select-box"),_e=/[\u200B\uFEFF]/g,Re=/^[\s\u3000\u00A0]+|[\s\u3000\u00A0]+$/g,Ee=e=>{let t=e.replace(_e,"").replace(Re,"");return(0,G.normalizeText)(t,{convertWidth:!0,convertKana:!0,convertCase:!0,convertRomaji:!0})};var c=require("zod"),J=c.z.object({person_id:c.z.union([c.z.string(),c.z.number()]).transform(e=>{if(typeof e=="number")return e;let t=e.trim();return parseInt(t,10)}).pipe(c.z.number()),person_id_redirect_to:c.z.union([c.z.string(),c.z.number()]).nullable().optional().transform(e=>{if(e==null)return null;if(typeof e=="number")return e;let t=e.trim();if(t.length===0)return null;let r=parseInt(t,10);return Number.isNaN(r)?null:r}),full_name:c.z.string().nullable().optional(),full_name_reading:c.z.string().nullable().optional(),company_name:c.z.string().nullable().optional(),company_name_reading:c.z.string().nullable().optional(),department:c.z.string().nullable().optional(),title:c.z.string().nullable().optional(),address:c.z.string().nullable().optional(),postal_code:c.z.string().nullable().optional(),email:c.z.string().nullable().optional(),custom_email:c.z.string().nullable().optional(),company_phone_number:c.z.string().nullable().optional(),custom_company_phone_number:c.z.string().nullable().optional(),company_fax_number:c.z.string().nullable().optional(),mobile_phone_number:c.z.string().nullable().optional(),custom_mobile_phone_number:c.z.string().nullable().optional(),url:c.z.string().nullable().optional(),contacted_at:c.z.union([c.z.date(),c.z.string()]).nullable().optional(),contacted_by:c.z.string().nullable().optional(),is_in_eight:c.z.boolean().nullable().optional(),is_contact_synced:c.z.boolean().nullable().optional(),is_active:c.z.boolean(),is_incomplete:c.z.boolean().nullable().optional(),created_at:c.z.union([c.z.date(),c.z.string()]).optional(),created_by:c.z.string().optional(),updated_at:c.z.union([c.z.date(),c.z.string()]).optional(),updated_by:c.z.string().optional()}),Me=c.z.array(J);0&&(module.exports={DEFAULT_LIST_LAYOUT_SPEC,DEFAULT_TREE_LAYOUT_SPEC,IncrementalTreeBuilder,StandardDepartmentParser,TitleBasedDepartmentParser,buildDirectoryTree,calculateResponsiveThresholds,defaultLogger,extractContactData,extractDepartmentsFromTitle,formatDate,formatDateTime,getEmailLinkHref,getHysteresisBreakpointState,getPhoneDialHref,getPrimaryEmail,getPrimaryPhone,normalizeLabel,normalizeSearchInput,normalizeString,schemaContactRecord,schemaContactRecords,splitDepartment,toDisplayValue});
1
+ "use strict";var L=Object.defineProperty;var te=Object.getOwnPropertyDescriptor;var ne=Object.getOwnPropertyNames;var re=Object.prototype.hasOwnProperty;var oe=(e,t)=>{for(var r in t)L(e,r,{get:t[r],enumerable:!0})},ae=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of ne(t))!re.call(e,s)&&s!==r&&L(e,s,{get:()=>t[s],enumerable:!(o=te(t,s))||o.enumerable});return e};var ie=e=>ae(L({},"__esModule",{value:!0}),e);var Ie={};oe(Ie,{DEFAULT_LIST_LAYOUT_SPEC:()=>Se,DEFAULT_TREE_LAYOUT_SPEC:()=>xe,IncrementalTreeBuilder:()=>z,StandardDepartmentParser:()=>F,TitleBasedDepartmentParser:()=>I,assertContactMapTreeNaming:()=>U,buildDirectoryTree:()=>he,calculateResponsiveThresholds:()=>ke,defaultLogger:()=>_e,extractContactData:()=>ge,extractDepartmentsFromTitle:()=>w,formatDate:()=>Ce,formatDateTime:()=>G,getEmailLinkHref:()=>Te,getHysteresisBreakpointState:()=>Re,getPhoneDialHref:()=>De,getPrimaryEmail:()=>ye,getPrimaryPhone:()=>be,getSearchQuerySpellings:()=>we,normalizeLabel:()=>M,normalizeSearchInput:()=>Y,normalizeString:()=>O,schemaContactRecord:()=>Z,schemaContactRecords:()=>Fe,splitDepartment:()=>j,toDisplayValue:()=>Pe});module.exports=ie(Ie);var M=(e,t)=>e&&e.trim()||t;var se={\u672C\u90E8:{rank:10,type:"Organization"},\u30AB\u30F3\u30D1\u30CB\u30FC:{rank:10,type:"Organization"},\u672C\u793E:{rank:10,type:"Location"},\u30D6\u30ED\u30C3\u30AF:{rank:11,type:"Location"},\u652F\u5E97:{rank:12,type:"Location"},\u7814\u7A76\u6240:{rank:15,type:"Location"},\u5DE5\u5834:{rank:15,type:"Location"},\u4E8B\u696D\u90E8:{rank:18,type:"Organization"},\u90E8\u9580:{rank:18,type:"Organization"},\u7D71\u62EC\u90E8:{rank:19,type:"Organization"},\u90E8:{rank:20,type:"Organization"},\u958B\u767A:{rank:20,type:"Organization"},\u30B0\u30EB\u30FC\u30D7:{rank:22,type:"Organization"},\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8:{rank:25,type:"Organization"},\u63A8\u9032:{rank:20,type:"Organization"},\u4E8B\u696D\u6240:{rank:25,type:"Location"},\u55B6\u696D\u6240:{rank:28,type:"Location"},\u5BA4:{rank:30,type:"Organization"},\u8AB2:{rank:30,type:"Organization"},\u30BB\u30F3\u30BF\u30FC:{rank:30,type:"Location"},\u30D3\u30B8\u30CD\u30B9\u30D7\u30ED\u30C7\u30E5\u30FC\u30B9\u30BB\u30F3\u30BF\u30FC:{rank:30,type:"Location"},\u30C1\u30FC\u30E0:{rank:40,type:"Organization"},\u4FC2:{rank:50,type:"Organization"},Department:{rank:20,type:"Organization"},Dept:{rank:20,type:"Organization"},"Dept.":{rank:20,type:"Organization"},Division:{rank:20,type:"Organization"},Div:{rank:20,type:"Organization"},"Div.":{rank:20,type:"Organization"},Section:{rank:30,type:"Organization"},Sect:{rank:30,type:"Organization"},"Sect.":{rank:30,type:"Organization"},Unit:{rank:30,type:"Organization"},Group:{rank:22,type:"Organization"},Team:{rank:40,type:"Organization"},Branch:{rank:12,type:"Location"},Office:{rank:28,type:"Location"},Center:{rank:30,type:"Location"},Centre:{rank:30,type:"Location"},HQ:{rank:10,type:"Organization"},Headquarters:{rank:10,type:"Organization"}},R=e=>{for(let[t,r]of Object.entries(se))if(e.endsWith(t))return r;return{rank:99,type:"Other"}},K=e=>R(e).rank,le=["\u30B0\u30EB\u30FC\u30D7","\u30C1\u30FC\u30E0","Group","Team","\u5BA4","\u8AB2","Unit","Area","\u90E8","Department","Dept","Division","Div","\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8","\u63A8\u9032"],_=e=>le.find(t=>e.endsWith(t)),pe=new Set(["&","Quality","Innovation","R&D","Solutions","Development","Laboratory","and","Food","Beverage"]),ce=(e,t)=>t>1&&(e.endsWith("\u652F\u5E97")||e.endsWith("\u672C\u90E8")||e.endsWith("\u4E8B\u696D\u6240")||e.endsWith("\u5DE5\u5834")),ue=(e,t)=>{if(!t)return!0;let r=R(e),o=R(t);if(r.rank<o.rank||e.endsWith("\u672C\u90E8")&&t.endsWith("\u672C\u90E8"))return!1;let s=_(e),h=_(t);return!(s&&h&&s!==h)},W=(e,t)=>{if(!e)return[];if(e==="\u517C")return["\u517C"];if(e==="\u517C\u52D9")return["\u517C"];if(e.startsWith("\u517C ")||e.startsWith("\u517C\u3000")){let o=e.slice(1).trim();return["\u517C",...W(o,t)]}if(e.startsWith("\u517C\u52D9 ")||e.startsWith("\u517C\u52D9\u3000")){let o=e.slice(2).trim();return["\u517C",...W(o,t)]}let r="";for(let o=e.length-1;o>0;o--){if(e[o]!==" ")continue;let s=e.slice(0,o);if(!pe.has(s)&&t.has(s)){r=s;break}}if(r){let o=r,s=e.slice(r.length),h=/^\s+(and|&)\s+([A-Za-z0-9]+)/i,C=s.match(h);C&&(o=e.slice(0,r.length+C[0].length));let u=e.slice(o.length),n=["Department","Dept","Division","Div","Section","Sect","Unit","Group","Team","Branch","Office","Center","Centre","HQ","Headquarters"];for(let a of n){let y=new RegExp(`^\\s+${a}\\.?(?=$|[\\s,])`,"i"),p=u.match(y);if(p){o=e.slice(0,o.length+p[0].length);break}}let m=e.slice(o.length).trim();return[o,...W(m,t)]}return[e]},j=(e,t)=>{let o=e.replace(/[\s\u3000]+(?:兼務|兼)[\s\u3000]+/g,"\u3000\u517C\u3000").replace(/^(?:兼務|兼)[\s\u3000]+/,"\u517C\u3000").replace(/[\s\u3000]+(?:兼務|兼)$/,"\u3000\u517C").split(/\u3000/),s=[];for(let h of o){let C=h.trim();C&&s.push(...W(C,t))}return s},w=(e,t)=>{let r=[],o=["\u90E8","\u8AB2","\u5BA4","\u672C\u90E8","\u652F\u5E97","\u55B6\u696D\u6240","\u30B0\u30EB\u30FC\u30D7","\u30C1\u30FC\u30E0","\u30BB\u30F3\u30BF\u30FC","\u30AB\u30F3\u30D1\u30CB\u30FC","\u4E8B\u696D\u6240","\u5DE5\u5834","\u7814\u7A76\u6240","\u4FC2","\u90E8\u9580","\u4E8B\u696D\u90E8","\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8","\u63A8\u9032","\u958B\u767A","Department","Dept","Division","Div","Section","Sect","Unit","Group","Team","Branch","Office","Center","Centre","HQ","Headquarters"],s=e.split(/[\s\u3000,()()[\]]+/).filter(Boolean),h=s.length,C=new Set;for(let u=h;u>=1;u--)for(let n=0;n<=h-u;n++){let m=!1;for(let y=n;y<n+u;y++)if(C.has(y)){m=!0;break}if(m)continue;let a=s.slice(n,n+u).join(" ");if(!(a==="\u517C"||a==="\u517C\u52D9"||a==="\u4FC2"||a==="of"||a==="&"||a==="Quality"||a==="Innovation"||a==="R&D"||a==="Solutions"||a==="Development"||a==="Laboratory"||a==="and"||a==="Food"||a==="Beverage")&&t.allKnownDepartments.has(a)){r.push({name:a,index:n});for(let y=n;y<n+u;y++)C.add(y)}}for(let u=0;u<h;u++){if(C.has(u))continue;let n=s[u];for(n.endsWith("\u9577")&&n.length>1?n=n.slice(0,-1):n.endsWith("\u7D71\u62EC")&&n.length>2&&(n=n.slice(0,-2));;){let p=!1;if(n.startsWith("\u62C5\u5F53")&&n.length>2||n.startsWith("\u5C02\u4EFB")&&n.length>2||n.startsWith("\u517C\u52D9")&&n.length>2?(n=n.slice(2),p=!0):(n.startsWith("\u526F")||n.startsWith("\u517C"))&&n.length>1&&(n=n.slice(1),p=!0),!p)break}if(n.includes("\u30FB")&&!t.allKnownDepartments.has(n)){let p=n.split("\u30FB"),b=p[p.length-1],T=o.find(k=>b.endsWith(k));if(T){for(let k of p){let P=k;o.some(i=>P.endsWith(i))||(P=P+T);let S=n!=="\u517C"&&n!=="\u4FC2"&&n!=="of"&&n!=="&"&&n!=="Quality"&&n!=="Innovation"&&n!=="R&D"&&n!=="Solutions"&&n!=="Development"&&n!=="Laboratory"&&n!=="and"&&n!=="Food"&&n!=="Beverage"&&t.allKnownDepartments.has(P),d=o.some(i=>P.endsWith(i)),l=o.includes(P);(S||d&&!l)&&r.push({name:P,index:u})}continue}}let m=n!=="\u517C"&&n!=="\u4FC2"&&n!=="of"&&n!=="&"&&n!=="Quality"&&n!=="Innovation"&&n!=="R&D"&&n!=="Solutions"&&n!=="Development"&&n!=="Laboratory"&&n!=="and"&&n!=="Food"&&n!=="Beverage"&&t.allKnownDepartments.has(n),a=o.some(p=>n.endsWith(p)),y=o.includes(n);(m||a&&!y)&&r.push({name:n,index:u})}return r.sort((u,n)=>u.index-n.index),r.map(u=>u.name)},$=(e,t)=>{let r=0;for(let o of t)r<e.length&&o===e[r]&&r++;return r===e.length},F={name:"Standard",parse:(e,t,r="full")=>{let o=M(e.department,"");if(!o)return null;let s=j(o,t.allKnownDepartments),h=new Map;for(let n of s)h.set(n,(h.get(n)||0)+1);let C=n=>{let m=[],a=[];for(let y=0;y<n.length;y++){let p=n[y];if(p==="\u517C"){a.length>0&&(m.push(a),a=[]);continue}let b=R(p),T=b.rank,k=h.get(p)||0,P=ce(p,k);if(a.length===0)a.push(p);else{let S=a[a.length-1],d=R(S),l=d.rank;if(a.includes(p))m.push(a),a=[p];else{let i=!1;if(P)i=!0;else if(d.type===b.type){let g=_(S),f=_(p);g&&f&&g!==f||S.endsWith("\u672C\u90E8")&&p.endsWith("\u672C\u90E8")||S.endsWith("\u90E8\u9580")&&p.endsWith("\u4E8B\u696D\u90E8")||S.endsWith("\u4E8B\u696D\u90E8")&&p.endsWith("\u90E8\u9580")||S.endsWith("\u90E8\u9580")&&p.endsWith("\u672C\u90E8")||d.type==="Other"&&b.type==="Other"?i=!0:i=l<T}else i=T>=10,i&&d.type==="Location"&&b.type==="Organization"&&l>=T&&n.slice(y+1).includes(S)&&(i=!1);i?a.push(p):(m.push(a),a=[p])}}if(P){let S=y+1<n.length?n[y+1]:void 0;ue(p,S)&&a.length>0&&(m.push(a),a=[])}}return a.length>0&&m.push(a),m},u=[];if(r==="full"&&u.push(...C(s)),r==="pure_org"){let n=s.filter(m=>R(m).type!=="Location");n.length>0&&u.push(...C(n))}if(e.title){let m=/[^\x20-\x7E]/.test(e.title)?/[\s\u3000]*(?:兼務|兼)[\s\u3000]*/:/[,;]|(?:兼務|兼)/,a=e.title.split(m).filter(Boolean),y=[],p=(d,l)=>{let i=K(d),g=K(l),f=i<g;if(!f){let D=_(d),x=_(l);if(D&&x&&D!==x)f=!0;else if(d.endsWith("\u672C\u90E8")&&l.endsWith("\u672C\u90E8"))f=!0;else if(d.endsWith("\u90E8\u9580")&&l.endsWith("\u4E8B\u696D\u90E8")||d.endsWith("\u4E8B\u696D\u90E8")&&l.endsWith("\u90E8\u9580"))f=!0;else if(d.endsWith("\u90E8\u9580")&&l.endsWith("\u672C\u90E8"))f=!0;else{let N=R(d),ee=R(l);N.type==="Other"&&ee.type==="Other"&&(f=!0)}}return f};for(let d of a){let l=w(d,t);if(l.length===0)continue;let i=[];for(let g of l)if(i.length===0)i.push(g);else{let f=i[i.length-1];if(p(f,g))i.push(g);else{y.push([...i]);let D=!1;for(let x=i.length-2;x>=0;x--){let N=i[x];if(p(N,g)){i=[...i.slice(0,x+1),g],D=!0;break}}D||(i=[g])}}i.length>0&&y.push(i)}let b=[...u],T=d=>a.some(l=>l.includes(d)&&l.length>d.length);for(let d of y){let l=!1;for(let i of u){let g=i.findIndex(f=>d.includes(f));if(g!==-1){let f=i[g],D=d.indexOf(f);if(g>0&&D===0){let x=i.slice(0,g);b.push([...x,...d]),l=!0}else if(D>0&&g===0){let x=d.slice(0,D);b.push([...x,...i]),b.push(d),l=!0}else d.length>i.length-g,l=!0}if(!l){let f=i[i.length-1],D=d[0];p(f,D)&&(b.push([...i,...d]),l=!0)}}l||b.push(d)}let k=[],P=[],S=new Set;for(let d of b){let l=d.join("|");S.has(l)||(S.add(l),P.push(d))}for(let d=0;d<P.length;d++){let l=P[d],i=!1;for(let g=0;g<P.length;g++){if(d===g)continue;let f=P[g];if(f.length>l.length&&f.slice(0,l.length).join("|")===l.join("|")){let D=l[l.length-1];if(!T(D)){i=!0;break}}if(f.length>l.length&&$(l,f)){let D=l[l.length-1];if(!T(D)){i=!0;break}}if(l.length===1&&f.length>0){let D=l[0],x=f[f.length-1];if(D!==x&&x.endsWith(D)){i=!0;break}}}i||k.push(l)}return k.length>0?k:null}if(u.length>0){let n=[];for(let m=0;m<u.length;m++){let a=u[m],y=!1;for(let p=0;p<u.length;p++){if(m===p)continue;let b=u[p];if(b.length>a.length&&$(a,b)){y=!0;break}}y||n.push(a)}return n.length>0?n:null}return null}},I={name:"TitleBased",parse:(e,t,r="full")=>{let o=e.title;if(!o)return null;let s=w(o,t);return s.length>0?[s]:null}};var de=["uncategorizedCompany","unnamedPerson"],U=e=>{if(typeof e!="object"||e===null)throw new RangeError(`[contact-map] tree naming must be an object; got ${e===null?"null":typeof e}`);for(let t of de){let r=e[t];if(typeof r!="string"||r.trim()==="")throw new RangeError(`[contact-map] tree naming.${t} must be a non-blank string; got ${typeof r=="string"?JSON.stringify(r):r===null?"null":typeof r}`)}},me=[F,I],fe=(e,t)=>{let r=M(e.full_name,t),o=M(e.title,"");return o.length>0?`${r} (${o})`:r},B=e=>e.sort((t,r)=>t.label.localeCompare(r.label,"ja")),A=(e,t,r)=>{let o=e.get(t);if(o)return o;let s=r();return e.set(t,s),s},v=e=>encodeURIComponent(e.replace(/\//g,"\uFF0F")),H=e=>e.sort((t,r)=>{let o=!!(t.contact.title&&t.contact.title.trim().length>0),s=!!(r.contact.title&&r.contact.title.trim().length>0);return o&&!s?-1:!o&&s?1:t.label.localeCompare(r.label,"ja")}),Q=e=>({name:e.label,type:"file",absolutePath:e.path,relativePath:e.segment,personId:e.contact.person_id,title:e.contact.title||void 0,isPrimary:e.isPrimary}),V=e=>{let t=B(Array.from(e.children.values())).map(V),r=H([...e.persons]).map(Q);return{name:e.label,type:"directory",absolutePath:e.path,relativePath:e.segment,children:[...r,...t],memberCount:e.personCount}},z=class{constructor(t){this.companyMap=new Map;this.processedPersonIds=new Set;this.allDepts=new Set;this.cachedResult=null;U(t),this.naming=t}appendRecords(t){if(!t||t.length===0)return;let r="full",o=!1;for(let s of t)if(!this.processedPersonIds.has(s.person_id)&&s.department){let h=s.department.split(/\u3000/);for(let C of h){let u=C.trim();if(!u||u==="\u517C"||u==="\u4FC2")continue;if(/[^\x20-\x7E]/.test(u)){let m=u.split(" ").filter(a=>a.length>0&&a!=="\u517C"&&a!=="\u4FC2");for(let a of m)this.allDepts.add(a)}else this.allDepts.add(u)}}for(let s of t){let h=s.person_id;if(!Number.isFinite(h)||this.processedPersonIds.has(h))continue;this.processedPersonIds.add(h),o=!0;let C=M(s.company_name,this.naming.uncategorizedCompany),u=fe(s,this.naming.unnamedPerson),n=`company:${v(C)}`,m=A(this.companyMap,n,()=>({label:C,segment:n,path:`/${n}`,departments:new Map,persons:[],personCount:0})),a=[],y={allKnownDepartments:this.allDepts};for(let p of me){let b=p.parse(s,y,r);if(b&&b.length>0){a=b;break}}a.length===0&&a.push([]);for(let p=0;p<a.length;p++){let b=a[p];if(b.length===0){let l=`person:${h}`,i=`${m.path}/${l}`;m.persons.some(f=>f.contact.person_id===h)||m.persons.push({contact:s,label:u,path:i,segment:l,isPrimary:!0});continue}let T=null,k=m.path;if(b.length>0){let l=b[0],i=`department:${v(l)}`;T=A(m.departments,i,()=>({label:l,segment:i,path:`${k}/${i}`,children:new Map,persons:[],personCount:0})),k=T.path,T.personCount+=1;for(let g=1;g<b.length;g++){let f=b[g],D=`department:${v(f)}`;if(!T)throw new Error("Unexpected null currentDepartmentNode");T=A(T.children,D,()=>({label:f,segment:D,path:`${k}/${D}`,children:new Map,persons:[],personCount:0})),k=T.path,T.personCount+=1}}else continue;let P=`person:${h}`,S=`${T.path}/${P}`;T.persons.some(l=>l.contact.person_id===h)||T.persons.push({contact:s,label:u,path:S,segment:P,isPrimary:p===0})}m.personCount+=1}o&&(this.cachedResult=null)}getSnapshot(){if(this.cachedResult)return this.cachedResult;let t={},r=B(Array.from(this.companyMap.values())).map(o=>{let s=B(Array.from(o.departments.values())).map(V),h=H([...o.persons]).map(Q),C={name:o.label,type:"directory",absolutePath:o.path,relativePath:o.segment,children:[...h,...s],memberCount:o.personCount};return t[o.label]=C,C});return this.cachedResult={tree:r,companyMap:t},this.cachedResult}append(t){this.appendRecords(t)}build(){return this.getSnapshot().tree}reset(){this.companyMap.clear(),this.processedPersonIds.clear(),this.allDepts.clear(),this.cachedResult=null}getUniquePersonCount(){return this.processedPersonIds.size}get size(){return this.processedPersonIds.size}},he=(e,t)=>{let r=new z(t);return r.appendRecords(e),r.getSnapshot()};var O=e=>{if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null},ge=e=>!e||typeof e!="object"?null:"item"in e?e.item??null:"person_id"in e?e:null,q=(e,t)=>{if(!e)return{value:null,fieldKey:null};for(let r of t){let o=O(e[r]);if(o)return{value:o,fieldKey:r}}return{value:null,fieldKey:null}},ye=e=>q(e,["custom_email","email"]),be=e=>q(e,["custom_mobile_phone_number","mobile_phone_number","company_phone_number"]),De=e=>{let t=O(e);if(!t)return null;let r=t.replace(/[^0-9+#*]/g,"");return r.length===0?null:`tel:${r}`},Te=(e,t)=>{let r=O(e);return r?t?`https://mail.google.com/mail/?view=cm&fs=1&to=${encodeURIComponent(r)}`:`mailto:${encodeURIComponent(r)}`:null},Ce=e=>{if(!e)return"-";let t=typeof e=="string"||typeof e=="number"?new Date(e):e;return!(t instanceof Date)||Number.isNaN(t.getTime())?typeof e=="string"?e:"-":t.toISOString().split("T")[0]},G=e=>{if(!e)return"-";let t=typeof e=="string"||typeof e=="number"?new Date(e):e;return!(t instanceof Date)||Number.isNaN(t.getTime())?typeof e=="string"?e:"-":t.toISOString()},Pe=e=>e==null?"-":typeof e=="string"?O(e)??"-":typeof e=="number"?Number.isFinite(e)?String(e):"-":e instanceof Date?G(e):String(e);var Se={listPanelMinWidth:320,detailPanelMinWidth:260,handleThickness:10,listPaddingAndBorder:0,detailPaddingAndBorder:0,scrollbarSafetyBuffer:20,hysteresisSafetyMargin:35},xe={listPanelMinWidth:280,detailPanelMinWidth:260,handleThickness:10,listPaddingAndBorder:0,detailPaddingAndBorder:0,scrollbarSafetyBuffer:20,hysteresisSafetyMargin:35};function ke(e){let t=e.listPanelMinWidth+e.detailPanelMinWidth+e.handleThickness+e.listPaddingAndBorder+e.detailPaddingAndBorder,r=t+e.scrollbarSafetyBuffer,o=r+e.hysteresisSafetyMargin,s=o-r;return{physicalMinWidth:t,collapseThreshold:r,expandThreshold:o,hysteresisWidth:s}}function Re(e,t,r){return e<=0||!Number.isFinite(e)?!1:t?e>=r.collapseThreshold:e>=r.expandThreshold}var _e={info:(e,...t)=>console.info(`[contact-map] ${e}`,...t),warn:(e,...t)=>console.warn(`[contact-map] ${e}`,...t),error:(e,...t)=>console.error(`[contact-map] ${e}`,...t)};var E=require("@aiquants/select-box"),Me=/[​]/g,Ee=/^[\s  ]+|[\s  ]+$/g,Oe=/\s+/,We=/^[\p{Script=Latin}\s]+$/u,ze=/\p{Script=Latin}/u,X=Object.freeze({convertWidth:!0,convertKana:!0,convertCase:!0,convertRomaji:!1}),Ne=e=>(0,E.normalizeText)(e.replace(Me,"").replace(Ee,""),X),Le=e=>{if(!We.test(e))return null;let t=(0,E.romajiToKatakana)(e);return ze.test(t)?null:t},J=e=>e.split(Oe).filter(Boolean),Y=e=>{let t=Ne(e),r=Le(t);return r===null?t:r},we=e=>{let t=new Set([...J(e),...J(Y(e))]),r=new Set;for(let o of t)for(let s of(0,E.getNormalizedVariants)(o,X)){let h=s.trim();h&&r.add(h)}return Array.from(r)};var c=require("zod"),Z=c.z.object({person_id:c.z.union([c.z.string(),c.z.number()]).transform(e=>{if(typeof e=="number")return e;let t=e.trim();return parseInt(t,10)}).pipe(c.z.number()),person_id_redirect_to:c.z.union([c.z.string(),c.z.number()]).nullable().optional().transform(e=>{if(e==null)return null;if(typeof e=="number")return e;let t=e.trim();if(t.length===0)return null;let r=parseInt(t,10);return Number.isNaN(r)?null:r}),full_name:c.z.string().nullable().optional(),full_name_reading:c.z.string().nullable().optional(),company_name:c.z.string().nullable().optional(),company_name_reading:c.z.string().nullable().optional(),department:c.z.string().nullable().optional(),title:c.z.string().nullable().optional(),address:c.z.string().nullable().optional(),postal_code:c.z.string().nullable().optional(),email:c.z.string().nullable().optional(),custom_email:c.z.string().nullable().optional(),company_phone_number:c.z.string().nullable().optional(),custom_company_phone_number:c.z.string().nullable().optional(),company_fax_number:c.z.string().nullable().optional(),mobile_phone_number:c.z.string().nullable().optional(),custom_mobile_phone_number:c.z.string().nullable().optional(),url:c.z.string().nullable().optional(),contacted_at:c.z.union([c.z.date(),c.z.string()]).nullable().optional(),contacted_by:c.z.string().nullable().optional(),is_in_eight:c.z.boolean().nullable().optional(),is_contact_synced:c.z.boolean().nullable().optional(),is_active:c.z.boolean(),is_incomplete:c.z.boolean().nullable().optional(),created_at:c.z.union([c.z.date(),c.z.string()]).optional(),created_by:c.z.string().optional(),updated_at:c.z.union([c.z.date(),c.z.string()]).optional(),updated_by:c.z.string().optional()}),Fe=c.z.array(Z);0&&(module.exports={DEFAULT_LIST_LAYOUT_SPEC,DEFAULT_TREE_LAYOUT_SPEC,IncrementalTreeBuilder,StandardDepartmentParser,TitleBasedDepartmentParser,assertContactMapTreeNaming,buildDirectoryTree,calculateResponsiveThresholds,defaultLogger,extractContactData,extractDepartmentsFromTitle,formatDate,formatDateTime,getEmailLinkHref,getHysteresisBreakpointState,getPhoneDialHref,getPrimaryEmail,getPrimaryPhone,getSearchQuerySpellings,normalizeLabel,normalizeSearchInput,normalizeString,schemaContactRecord,schemaContactRecords,splitDepartment,toDisplayValue});
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- var R=(e,t)=>e&&e.trim()||t;var V={\u672C\u90E8:{rank:10,type:"Organization"},\u30AB\u30F3\u30D1\u30CB\u30FC:{rank:10,type:"Organization"},\u672C\u793E:{rank:10,type:"Location"},\u30D6\u30ED\u30C3\u30AF:{rank:11,type:"Location"},\u652F\u5E97:{rank:12,type:"Location"},\u7814\u7A76\u6240:{rank:15,type:"Location"},\u5DE5\u5834:{rank:15,type:"Location"},\u4E8B\u696D\u90E8:{rank:18,type:"Organization"},\u90E8\u9580:{rank:18,type:"Organization"},\u7D71\u62EC\u90E8:{rank:19,type:"Organization"},\u90E8:{rank:20,type:"Organization"},\u958B\u767A:{rank:20,type:"Organization"},\u30B0\u30EB\u30FC\u30D7:{rank:22,type:"Organization"},\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8:{rank:25,type:"Organization"},\u63A8\u9032:{rank:20,type:"Organization"},\u4E8B\u696D\u6240:{rank:25,type:"Location"},\u55B6\u696D\u6240:{rank:28,type:"Location"},\u5BA4:{rank:30,type:"Organization"},\u8AB2:{rank:30,type:"Organization"},\u30BB\u30F3\u30BF\u30FC:{rank:30,type:"Location"},\u30D3\u30B8\u30CD\u30B9\u30D7\u30ED\u30C7\u30E5\u30FC\u30B9\u30BB\u30F3\u30BF\u30FC:{rank:30,type:"Location"},\u30C1\u30FC\u30E0:{rank:40,type:"Organization"},\u4FC2:{rank:50,type:"Organization"},Department:{rank:20,type:"Organization"},Dept:{rank:20,type:"Organization"},"Dept.":{rank:20,type:"Organization"},Division:{rank:20,type:"Organization"},Div:{rank:20,type:"Organization"},"Div.":{rank:20,type:"Organization"},Section:{rank:30,type:"Organization"},Sect:{rank:30,type:"Organization"},"Sect.":{rank:30,type:"Organization"},Unit:{rank:30,type:"Organization"},Group:{rank:22,type:"Organization"},Team:{rank:40,type:"Organization"},Branch:{rank:12,type:"Location"},Office:{rank:28,type:"Location"},Center:{rank:30,type:"Location"},Centre:{rank:30,type:"Location"},HQ:{rank:10,type:"Organization"},Headquarters:{rank:10,type:"Organization"}},_=e=>{for(let[t,r]of Object.entries(V))if(e.endsWith(t))return r;return{rank:99,type:"Other"}},A=e=>_(e).rank,X=["\u30B0\u30EB\u30FC\u30D7","\u30C1\u30FC\u30E0","Group","Team","\u5BA4","\u8AB2","Unit","Area","\u90E8","Department","Dept","Division","Div","\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8","\u63A8\u9032"],E=e=>X.find(t=>e.endsWith(t)),G=new Set(["&","Quality","Innovation","R&D","Solutions","Development","Laboratory","and","Food","Beverage"]),J=(e,t)=>t>1&&(e.endsWith("\u652F\u5E97")||e.endsWith("\u672C\u90E8")||e.endsWith("\u4E8B\u696D\u6240")||e.endsWith("\u5DE5\u5834")),Y=(e,t)=>{if(!t)return!0;let r=_(e),o=_(t);if(r.rank<o.rank||e.endsWith("\u672C\u90E8")&&t.endsWith("\u672C\u90E8"))return!1;let p=E(e),y=E(t);return!(p&&y&&p!==y)},M=(e,t)=>{if(!e)return[];if(e==="\u517C")return["\u517C"];if(e==="\u517C\u52D9")return["\u517C"];if(e.startsWith("\u517C ")||e.startsWith("\u517C\u3000")){let o=e.slice(1).trim();return["\u517C",...M(o,t)]}if(e.startsWith("\u517C\u52D9 ")||e.startsWith("\u517C\u52D9\u3000")){let o=e.slice(2).trim();return["\u517C",...M(o,t)]}let r="";for(let o=e.length-1;o>0;o--){if(e[o]!==" ")continue;let p=e.slice(0,o);if(!G.has(p)&&t.has(p)){r=p;break}}if(r){let o=r,p=e.slice(r.length),y=/^\s+(and|&)\s+([A-Za-z0-9]+)/i,P=p.match(y);P&&(o=e.slice(0,r.length+P[0].length));let u=e.slice(o.length),n=["Department","Dept","Division","Div","Section","Sect","Unit","Group","Team","Branch","Office","Center","Centre","HQ","Headquarters"];for(let i of n){let g=new RegExp(`^\\s+${i}\\.?(?=$|[\\s,])`,"i"),l=u.match(g);if(l){o=e.slice(0,o.length+l[0].length);break}}let m=e.slice(o.length).trim();return[o,...M(m,t)]}return[e]},Z=(e,t)=>{let o=e.replace(/[\s\u3000]+(?:兼務|兼)[\s\u3000]+/g,"\u3000\u517C\u3000").replace(/^(?:兼務|兼)[\s\u3000]+/,"\u517C\u3000").replace(/[\s\u3000]+(?:兼務|兼)$/,"\u3000\u517C").split(/\u3000/),p=[];for(let y of o){let P=y.trim();P&&p.push(...M(P,t))}return p},w=(e,t)=>{let r=[],o=["\u90E8","\u8AB2","\u5BA4","\u672C\u90E8","\u652F\u5E97","\u55B6\u696D\u6240","\u30B0\u30EB\u30FC\u30D7","\u30C1\u30FC\u30E0","\u30BB\u30F3\u30BF\u30FC","\u30AB\u30F3\u30D1\u30CB\u30FC","\u4E8B\u696D\u6240","\u5DE5\u5834","\u7814\u7A76\u6240","\u4FC2","\u90E8\u9580","\u4E8B\u696D\u90E8","\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8","\u63A8\u9032","\u958B\u767A","Department","Dept","Division","Div","Section","Sect","Unit","Group","Team","Branch","Office","Center","Centre","HQ","Headquarters"],p=e.split(/[\s\u3000,()()[\]]+/).filter(Boolean),y=p.length,P=new Set;for(let u=y;u>=1;u--)for(let n=0;n<=y-u;n++){let m=!1;for(let g=n;g<n+u;g++)if(P.has(g)){m=!0;break}if(m)continue;let i=p.slice(n,n+u).join(" ");if(!(i==="\u517C"||i==="\u517C\u52D9"||i==="\u4FC2"||i==="of"||i==="&"||i==="Quality"||i==="Innovation"||i==="R&D"||i==="Solutions"||i==="Development"||i==="Laboratory"||i==="and"||i==="Food"||i==="Beverage")&&t.allKnownDepartments.has(i)){r.push({name:i,index:n});for(let g=n;g<n+u;g++)P.add(g)}}for(let u=0;u<y;u++){if(P.has(u))continue;let n=p[u];for(n.endsWith("\u9577")&&n.length>1?n=n.slice(0,-1):n.endsWith("\u7D71\u62EC")&&n.length>2&&(n=n.slice(0,-2));;){let l=!1;if(n.startsWith("\u62C5\u5F53")&&n.length>2||n.startsWith("\u5C02\u4EFB")&&n.length>2||n.startsWith("\u517C\u52D9")&&n.length>2?(n=n.slice(2),l=!0):(n.startsWith("\u526F")||n.startsWith("\u517C"))&&n.length>1&&(n=n.slice(1),l=!0),!l)break}if(n.includes("\u30FB")&&!t.allKnownDepartments.has(n)){let l=n.split("\u30FB"),b=l[l.length-1],T=o.find(k=>b.endsWith(k));if(T){for(let k of l){let C=k;o.some(a=>C.endsWith(a))||(C=C+T);let x=n!=="\u517C"&&n!=="\u4FC2"&&n!=="of"&&n!=="&"&&n!=="Quality"&&n!=="Innovation"&&n!=="R&D"&&n!=="Solutions"&&n!=="Development"&&n!=="Laboratory"&&n!=="and"&&n!=="Food"&&n!=="Beverage"&&t.allKnownDepartments.has(C),d=o.some(a=>C.endsWith(a)),s=o.includes(C);(x||d&&!s)&&r.push({name:C,index:u})}continue}}let m=n!=="\u517C"&&n!=="\u4FC2"&&n!=="of"&&n!=="&"&&n!=="Quality"&&n!=="Innovation"&&n!=="R&D"&&n!=="Solutions"&&n!=="Development"&&n!=="Laboratory"&&n!=="and"&&n!=="Food"&&n!=="Beverage"&&t.allKnownDepartments.has(n),i=o.some(l=>n.endsWith(l)),g=o.includes(n);(m||i&&!g)&&r.push({name:n,index:u})}return r.sort((u,n)=>u.index-n.index),r.map(u=>u.name)},I=(e,t)=>{let r=0;for(let o of t)r<e.length&&o===e[r]&&r++;return r===e.length},B={name:"Standard",parse:(e,t,r="full")=>{let o=R(e.department,"");if(!o)return null;let p=Z(o,t.allKnownDepartments),y=new Map;for(let n of p)y.set(n,(y.get(n)||0)+1);let P=n=>{let m=[],i=[];for(let g=0;g<n.length;g++){let l=n[g];if(l==="\u517C"){i.length>0&&(m.push(i),i=[]);continue}let b=_(l),T=b.rank,k=y.get(l)||0,C=J(l,k);if(i.length===0)i.push(l);else{let x=i[i.length-1],d=_(x),s=d.rank;if(i.includes(l))m.push(i),i=[l];else{let a=!1;if(C)a=!0;else if(d.type===b.type){let h=E(x),f=E(l);h&&f&&h!==f||x.endsWith("\u672C\u90E8")&&l.endsWith("\u672C\u90E8")||x.endsWith("\u90E8\u9580")&&l.endsWith("\u4E8B\u696D\u90E8")||x.endsWith("\u4E8B\u696D\u90E8")&&l.endsWith("\u90E8\u9580")||x.endsWith("\u90E8\u9580")&&l.endsWith("\u672C\u90E8")||d.type==="Other"&&b.type==="Other"?a=!0:a=s<T}else a=T>=10,a&&d.type==="Location"&&b.type==="Organization"&&s>=T&&n.slice(g+1).includes(x)&&(a=!1);a?i.push(l):(m.push(i),i=[l])}}if(C){let x=g+1<n.length?n[g+1]:void 0;Y(l,x)&&i.length>0&&(m.push(i),i=[])}}return i.length>0&&m.push(i),m},u=[];if(r==="full"&&u.push(...P(p)),r==="pure_org"){let n=p.filter(m=>_(m).type!=="Location");n.length>0&&u.push(...P(n))}if(e.title){let m=/[^\x20-\x7E]/.test(e.title)?/[\s\u3000]*(?:兼務|兼)[\s\u3000]*/:/[,;]|(?:兼務|兼)/,i=e.title.split(m).filter(Boolean),g=[],l=(d,s)=>{let a=A(d),h=A(s),f=a<h;if(!f){let D=E(d),S=E(s);if(D&&S&&D!==S)f=!0;else if(d.endsWith("\u672C\u90E8")&&s.endsWith("\u672C\u90E8"))f=!0;else if(d.endsWith("\u90E8\u9580")&&s.endsWith("\u4E8B\u696D\u90E8")||d.endsWith("\u4E8B\u696D\u90E8")&&s.endsWith("\u90E8\u9580"))f=!0;else if(d.endsWith("\u90E8\u9580")&&s.endsWith("\u672C\u90E8"))f=!0;else{let L=_(d),q=_(s);L.type==="Other"&&q.type==="Other"&&(f=!0)}}return f};for(let d of i){let s=w(d,t);if(s.length===0)continue;let a=[];for(let h of s)if(a.length===0)a.push(h);else{let f=a[a.length-1];if(l(f,h))a.push(h);else{g.push([...a]);let D=!1;for(let S=a.length-2;S>=0;S--){let L=a[S];if(l(L,h)){a=[...a.slice(0,S+1),h],D=!0;break}}D||(a=[h])}}a.length>0&&g.push(a)}let b=[...u],T=d=>i.some(s=>s.includes(d)&&s.length>d.length);for(let d of g){let s=!1;for(let a of u){let h=a.findIndex(f=>d.includes(f));if(h!==-1){let f=a[h],D=d.indexOf(f);if(h>0&&D===0){let S=a.slice(0,h);b.push([...S,...d]),s=!0}else if(D>0&&h===0){let S=d.slice(0,D);b.push([...S,...a]),b.push(d),s=!0}else d.length>a.length-h,s=!0}if(!s){let f=a[a.length-1],D=d[0];l(f,D)&&(b.push([...a,...d]),s=!0)}}s||b.push(d)}let k=[],C=[],x=new Set;for(let d of b){let s=d.join("|");x.has(s)||(x.add(s),C.push(d))}for(let d=0;d<C.length;d++){let s=C[d],a=!1;for(let h=0;h<C.length;h++){if(d===h)continue;let f=C[h];if(f.length>s.length&&f.slice(0,s.length).join("|")===s.join("|")){let D=s[s.length-1];if(!T(D)){a=!0;break}}if(f.length>s.length&&I(s,f)){let D=s[s.length-1];if(!T(D)){a=!0;break}}if(s.length===1&&f.length>0){let D=s[0],S=f[f.length-1];if(D!==S&&S.endsWith(D)){a=!0;break}}}a||k.push(s)}return k.length>0?k:null}if(u.length>0){let n=[];for(let m=0;m<u.length;m++){let i=u[m],g=!1;for(let l=0;l<u.length;l++){if(m===l)continue;let b=u[l];if(b.length>i.length&&I(i,b)){g=!0;break}}g||n.push(i)}return n.length>0?n:null}return null}},v={name:"TitleBased",parse:(e,t,r="full")=>{let o=e.title;if(!o)return null;let p=w(o,t);return p.length>0?[p]:null}};var ee="\u672A\u5206\u985E",K="\u540D\u524D\u672A\u8A2D\u5B9A",te=[B,v],ne=e=>{let t=R(e.full_name,K),r=R(e.title,"");return r.length>0?`${t} (${r})`:t},$=(e,t)=>`${e} (${t.toLocaleString()})`,F=e=>e.sort((t,r)=>t.label.localeCompare(r.label,"ja")),O=(e,t,r)=>{let o=e.get(t);if(o)return o;let p=r();return e.set(t,p),p},z=e=>encodeURIComponent(e.replace(/\//g,"\uFF0F")),U=e=>e.sort((t,r)=>{let o=!!(t.contact.title&&t.contact.title.trim().length>0),p=!!(r.contact.title&&r.contact.title.trim().length>0);return o&&!p?-1:!o&&p?1:t.label.localeCompare(r.label,"ja")}),j=e=>{let t=R(e.contact.full_name,K),r=R(e.contact.title,"");return{name:r?`${t} (${r})`:t,type:"file",absolutePath:e.path,relativePath:e.segment,personId:e.contact.person_id,title:e.contact.title||void 0,isPrimary:e.isPrimary}},H=e=>{let t=F(Array.from(e.children.values())).map(H),r=U([...e.persons]).map(j);return{name:$(e.label,e.personCount),type:"directory",absolutePath:e.path,relativePath:e.segment,children:[...r,...t]}},N=class{constructor(){this.companyMap=new Map;this.processedPersonIds=new Set;this.allDepts=new Set;this.cachedResult=null}appendRecords(t){if(!t||t.length===0)return;let r="full",o=!1;for(let p of t)if(!this.processedPersonIds.has(p.person_id)&&p.department){let y=p.department.split(/\u3000/);for(let P of y){let u=P.trim();if(!u||u==="\u517C"||u==="\u4FC2")continue;if(/[^\x20-\x7E]/.test(u)){let m=u.split(" ").filter(i=>i.length>0&&i!=="\u517C"&&i!=="\u4FC2");for(let i of m)this.allDepts.add(i)}else this.allDepts.add(u)}}for(let p of t){let y=p.person_id;if(!Number.isFinite(y)||this.processedPersonIds.has(y))continue;this.processedPersonIds.add(y),o=!0;let P=R(p.company_name,ee),u=ne(p),n=`company:${z(P)}`,m=O(this.companyMap,n,()=>({label:P,segment:n,path:`/${n}`,departments:new Map,persons:[],personCount:0})),i=[],g={allKnownDepartments:this.allDepts};for(let l of te){let b=l.parse(p,g,r);if(b&&b.length>0){i=b;break}}i.length===0&&i.push([]);for(let l=0;l<i.length;l++){let b=i[l];if(b.length===0){let s=`person:${y}`,a=`${m.path}/${s}`;m.persons.some(f=>f.contact.person_id===y)||m.persons.push({contact:p,label:u,path:a,segment:s,isPrimary:!0});continue}let T=null,k=m.path;if(b.length>0){let s=b[0],a=`department:${z(s)}`;T=O(m.departments,a,()=>({label:s,segment:a,path:`${k}/${a}`,children:new Map,persons:[],personCount:0})),k=T.path,T.personCount+=1;for(let h=1;h<b.length;h++){let f=b[h],D=`department:${z(f)}`;if(!T)throw new Error("Unexpected null currentDepartmentNode");T=O(T.children,D,()=>({label:f,segment:D,path:`${k}/${D}`,children:new Map,persons:[],personCount:0})),k=T.path,T.personCount+=1}}else continue;let C=`person:${y}`,x=`${T.path}/${C}`;T.persons.some(s=>s.contact.person_id===y)||T.persons.push({contact:p,label:u,path:x,segment:C,isPrimary:l===0})}m.personCount+=1}o&&(this.cachedResult=null)}getSnapshot(){if(this.cachedResult)return this.cachedResult;let t={},r=F(Array.from(this.companyMap.values())).map(o=>{let p=F(Array.from(o.departments.values())).map(H),y=U([...o.persons]).map(j),P={name:$(o.label,o.personCount),type:"directory",absolutePath:o.path,relativePath:o.segment,children:[...y,...p]};return t[o.label]=P,P});return this.cachedResult={tree:r,companyMap:t},this.cachedResult}append(t){this.appendRecords(t)}build(){return this.getSnapshot().tree}reset(){this.companyMap.clear(),this.processedPersonIds.clear(),this.allDepts.clear(),this.cachedResult=null}getUniquePersonCount(){return this.processedPersonIds.size}get size(){return this.processedPersonIds.size}},ce=e=>{let t=new N;return t.appendRecords(e),t.getSnapshot()};var W=e=>{if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null},de=e=>!e||typeof e!="object"?null:"item"in e?e.item??null:"person_id"in e?e:null,Q=(e,t)=>{if(!e)return{value:null,fieldKey:null};for(let r of t){let o=W(e[r]);if(o)return{value:o,fieldKey:r}}return{value:null,fieldKey:null}},me=e=>Q(e,["custom_email","email"]),fe=e=>Q(e,["custom_mobile_phone_number","mobile_phone_number","company_phone_number"]),he=e=>{let t=W(e);if(!t)return null;let r=t.replace(/[^0-9+#*]/g,"");return r.length===0?null:`tel:${r}`},ge=(e,t)=>{let r=W(e);return r?t?`https://mail.google.com/mail/?view=cm&fs=1&to=${encodeURIComponent(r)}`:`mailto:${encodeURIComponent(r)}`:null},ye=e=>{if(!e)return"-";let t=typeof e=="string"||typeof e=="number"?new Date(e):e;return!(t instanceof Date)||Number.isNaN(t.getTime())?typeof e=="string"?e:"-":t.toISOString().split("T")[0]},re=e=>{if(!e)return"-";let t=typeof e=="string"||typeof e=="number"?new Date(e):e;return!(t instanceof Date)||Number.isNaN(t.getTime())?typeof e=="string"?e:"-":t.toISOString()},be=e=>e==null?"-":typeof e=="string"?W(e)??"-":typeof e=="number"?Number.isFinite(e)?String(e):"-":e instanceof Date?re(e):String(e);var Te={listPanelMinWidth:320,detailPanelMinWidth:260,handleThickness:10,listPaddingAndBorder:0,detailPaddingAndBorder:0,scrollbarSafetyBuffer:20,hysteresisSafetyMargin:35},Pe={listPanelMinWidth:280,detailPanelMinWidth:260,handleThickness:10,listPaddingAndBorder:0,detailPaddingAndBorder:0,scrollbarSafetyBuffer:20,hysteresisSafetyMargin:35};function Ce(e){let t=e.listPanelMinWidth+e.detailPanelMinWidth+e.handleThickness+e.listPaddingAndBorder+e.detailPaddingAndBorder,r=t+e.scrollbarSafetyBuffer,o=r+e.hysteresisSafetyMargin,p=o-r;return{physicalMinWidth:t,collapseThreshold:r,expandThreshold:o,hysteresisWidth:p}}function xe(e,t,r){return e<=0||!Number.isFinite(e)?!1:t?e>=r.collapseThreshold:e>=r.expandThreshold}var ke={info:(e,...t)=>console.info(`[contact-map] ${e}`,...t),warn:(e,...t)=>console.warn(`[contact-map] ${e}`,...t),error:(e,...t)=>console.error(`[contact-map] ${e}`,...t)};import{normalizeText as oe}from"@aiquants/select-box";var ie=/[\u200B\uFEFF]/g,ae=/^[\s\u3000\u00A0]+|[\s\u3000\u00A0]+$/g,Ee=e=>{let t=e.replace(ie,"").replace(ae,"");return oe(t,{convertWidth:!0,convertKana:!0,convertCase:!0,convertRomaji:!0})};import{z as c}from"zod";var se=c.object({person_id:c.union([c.string(),c.number()]).transform(e=>{if(typeof e=="number")return e;let t=e.trim();return parseInt(t,10)}).pipe(c.number()),person_id_redirect_to:c.union([c.string(),c.number()]).nullable().optional().transform(e=>{if(e==null)return null;if(typeof e=="number")return e;let t=e.trim();if(t.length===0)return null;let r=parseInt(t,10);return Number.isNaN(r)?null:r}),full_name:c.string().nullable().optional(),full_name_reading:c.string().nullable().optional(),company_name:c.string().nullable().optional(),company_name_reading:c.string().nullable().optional(),department:c.string().nullable().optional(),title:c.string().nullable().optional(),address:c.string().nullable().optional(),postal_code:c.string().nullable().optional(),email:c.string().nullable().optional(),custom_email:c.string().nullable().optional(),company_phone_number:c.string().nullable().optional(),custom_company_phone_number:c.string().nullable().optional(),company_fax_number:c.string().nullable().optional(),mobile_phone_number:c.string().nullable().optional(),custom_mobile_phone_number:c.string().nullable().optional(),url:c.string().nullable().optional(),contacted_at:c.union([c.date(),c.string()]).nullable().optional(),contacted_by:c.string().nullable().optional(),is_in_eight:c.boolean().nullable().optional(),is_contact_synced:c.boolean().nullable().optional(),is_active:c.boolean(),is_incomplete:c.boolean().nullable().optional(),created_at:c.union([c.date(),c.string()]).optional(),created_by:c.string().optional(),updated_at:c.union([c.date(),c.string()]).optional(),updated_by:c.string().optional()}),Le=c.array(se);export{Te as DEFAULT_LIST_LAYOUT_SPEC,Pe as DEFAULT_TREE_LAYOUT_SPEC,N as IncrementalTreeBuilder,B as StandardDepartmentParser,v as TitleBasedDepartmentParser,ce as buildDirectoryTree,Ce as calculateResponsiveThresholds,ke as defaultLogger,de as extractContactData,w as extractDepartmentsFromTitle,ye as formatDate,re as formatDateTime,ge as getEmailLinkHref,xe as getHysteresisBreakpointState,he as getPhoneDialHref,me as getPrimaryEmail,fe as getPrimaryPhone,R as normalizeLabel,Ee as normalizeSearchInput,W as normalizeString,se as schemaContactRecord,Le as schemaContactRecords,Z as splitDepartment,be as toDisplayValue};
1
+ var M=(e,t)=>e&&e.trim()||t;var q={\u672C\u90E8:{rank:10,type:"Organization"},\u30AB\u30F3\u30D1\u30CB\u30FC:{rank:10,type:"Organization"},\u672C\u793E:{rank:10,type:"Location"},\u30D6\u30ED\u30C3\u30AF:{rank:11,type:"Location"},\u652F\u5E97:{rank:12,type:"Location"},\u7814\u7A76\u6240:{rank:15,type:"Location"},\u5DE5\u5834:{rank:15,type:"Location"},\u4E8B\u696D\u90E8:{rank:18,type:"Organization"},\u90E8\u9580:{rank:18,type:"Organization"},\u7D71\u62EC\u90E8:{rank:19,type:"Organization"},\u90E8:{rank:20,type:"Organization"},\u958B\u767A:{rank:20,type:"Organization"},\u30B0\u30EB\u30FC\u30D7:{rank:22,type:"Organization"},\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8:{rank:25,type:"Organization"},\u63A8\u9032:{rank:20,type:"Organization"},\u4E8B\u696D\u6240:{rank:25,type:"Location"},\u55B6\u696D\u6240:{rank:28,type:"Location"},\u5BA4:{rank:30,type:"Organization"},\u8AB2:{rank:30,type:"Organization"},\u30BB\u30F3\u30BF\u30FC:{rank:30,type:"Location"},\u30D3\u30B8\u30CD\u30B9\u30D7\u30ED\u30C7\u30E5\u30FC\u30B9\u30BB\u30F3\u30BF\u30FC:{rank:30,type:"Location"},\u30C1\u30FC\u30E0:{rank:40,type:"Organization"},\u4FC2:{rank:50,type:"Organization"},Department:{rank:20,type:"Organization"},Dept:{rank:20,type:"Organization"},"Dept.":{rank:20,type:"Organization"},Division:{rank:20,type:"Organization"},Div:{rank:20,type:"Organization"},"Div.":{rank:20,type:"Organization"},Section:{rank:30,type:"Organization"},Sect:{rank:30,type:"Organization"},"Sect.":{rank:30,type:"Organization"},Unit:{rank:30,type:"Organization"},Group:{rank:22,type:"Organization"},Team:{rank:40,type:"Organization"},Branch:{rank:12,type:"Location"},Office:{rank:28,type:"Location"},Center:{rank:30,type:"Location"},Centre:{rank:30,type:"Location"},HQ:{rank:10,type:"Organization"},Headquarters:{rank:10,type:"Organization"}},R=e=>{for(let[t,r]of Object.entries(q))if(e.endsWith(t))return r;return{rank:99,type:"Other"}},F=e=>R(e).rank,G=["\u30B0\u30EB\u30FC\u30D7","\u30C1\u30FC\u30E0","Group","Team","\u5BA4","\u8AB2","Unit","Area","\u90E8","Department","Dept","Division","Div","\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8","\u63A8\u9032"],_=e=>G.find(t=>e.endsWith(t)),J=new Set(["&","Quality","Innovation","R&D","Solutions","Development","Laboratory","and","Food","Beverage"]),X=(e,t)=>t>1&&(e.endsWith("\u652F\u5E97")||e.endsWith("\u672C\u90E8")||e.endsWith("\u4E8B\u696D\u6240")||e.endsWith("\u5DE5\u5834")),Y=(e,t)=>{if(!t)return!0;let r=R(e),o=R(t);if(r.rank<o.rank||e.endsWith("\u672C\u90E8")&&t.endsWith("\u672C\u90E8"))return!1;let p=_(e),h=_(t);return!(p&&h&&p!==h)},E=(e,t)=>{if(!e)return[];if(e==="\u517C")return["\u517C"];if(e==="\u517C\u52D9")return["\u517C"];if(e.startsWith("\u517C ")||e.startsWith("\u517C\u3000")){let o=e.slice(1).trim();return["\u517C",...E(o,t)]}if(e.startsWith("\u517C\u52D9 ")||e.startsWith("\u517C\u52D9\u3000")){let o=e.slice(2).trim();return["\u517C",...E(o,t)]}let r="";for(let o=e.length-1;o>0;o--){if(e[o]!==" ")continue;let p=e.slice(0,o);if(!J.has(p)&&t.has(p)){r=p;break}}if(r){let o=r,p=e.slice(r.length),h=/^\s+(and|&)\s+([A-Za-z0-9]+)/i,C=p.match(h);C&&(o=e.slice(0,r.length+C[0].length));let u=e.slice(o.length),n=["Department","Dept","Division","Div","Section","Sect","Unit","Group","Team","Branch","Office","Center","Centre","HQ","Headquarters"];for(let a of n){let y=new RegExp(`^\\s+${a}\\.?(?=$|[\\s,])`,"i"),l=u.match(y);if(l){o=e.slice(0,o.length+l[0].length);break}}let m=e.slice(o.length).trim();return[o,...E(m,t)]}return[e]},Z=(e,t)=>{let o=e.replace(/[\s\u3000]+(?:兼務|兼)[\s\u3000]+/g,"\u3000\u517C\u3000").replace(/^(?:兼務|兼)[\s\u3000]+/,"\u517C\u3000").replace(/[\s\u3000]+(?:兼務|兼)$/,"\u3000\u517C").split(/\u3000/),p=[];for(let h of o){let C=h.trim();C&&p.push(...E(C,t))}return p},A=(e,t)=>{let r=[],o=["\u90E8","\u8AB2","\u5BA4","\u672C\u90E8","\u652F\u5E97","\u55B6\u696D\u6240","\u30B0\u30EB\u30FC\u30D7","\u30C1\u30FC\u30E0","\u30BB\u30F3\u30BF\u30FC","\u30AB\u30F3\u30D1\u30CB\u30FC","\u4E8B\u696D\u6240","\u5DE5\u5834","\u7814\u7A76\u6240","\u4FC2","\u90E8\u9580","\u4E8B\u696D\u90E8","\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8","\u63A8\u9032","\u958B\u767A","Department","Dept","Division","Div","Section","Sect","Unit","Group","Team","Branch","Office","Center","Centre","HQ","Headquarters"],p=e.split(/[\s\u3000,()()[\]]+/).filter(Boolean),h=p.length,C=new Set;for(let u=h;u>=1;u--)for(let n=0;n<=h-u;n++){let m=!1;for(let y=n;y<n+u;y++)if(C.has(y)){m=!0;break}if(m)continue;let a=p.slice(n,n+u).join(" ");if(!(a==="\u517C"||a==="\u517C\u52D9"||a==="\u4FC2"||a==="of"||a==="&"||a==="Quality"||a==="Innovation"||a==="R&D"||a==="Solutions"||a==="Development"||a==="Laboratory"||a==="and"||a==="Food"||a==="Beverage")&&t.allKnownDepartments.has(a)){r.push({name:a,index:n});for(let y=n;y<n+u;y++)C.add(y)}}for(let u=0;u<h;u++){if(C.has(u))continue;let n=p[u];for(n.endsWith("\u9577")&&n.length>1?n=n.slice(0,-1):n.endsWith("\u7D71\u62EC")&&n.length>2&&(n=n.slice(0,-2));;){let l=!1;if(n.startsWith("\u62C5\u5F53")&&n.length>2||n.startsWith("\u5C02\u4EFB")&&n.length>2||n.startsWith("\u517C\u52D9")&&n.length>2?(n=n.slice(2),l=!0):(n.startsWith("\u526F")||n.startsWith("\u517C"))&&n.length>1&&(n=n.slice(1),l=!0),!l)break}if(n.includes("\u30FB")&&!t.allKnownDepartments.has(n)){let l=n.split("\u30FB"),b=l[l.length-1],T=o.find(k=>b.endsWith(k));if(T){for(let k of l){let P=k;o.some(i=>P.endsWith(i))||(P=P+T);let S=n!=="\u517C"&&n!=="\u4FC2"&&n!=="of"&&n!=="&"&&n!=="Quality"&&n!=="Innovation"&&n!=="R&D"&&n!=="Solutions"&&n!=="Development"&&n!=="Laboratory"&&n!=="and"&&n!=="Food"&&n!=="Beverage"&&t.allKnownDepartments.has(P),d=o.some(i=>P.endsWith(i)),s=o.includes(P);(S||d&&!s)&&r.push({name:P,index:u})}continue}}let m=n!=="\u517C"&&n!=="\u4FC2"&&n!=="of"&&n!=="&"&&n!=="Quality"&&n!=="Innovation"&&n!=="R&D"&&n!=="Solutions"&&n!=="Development"&&n!=="Laboratory"&&n!=="and"&&n!=="Food"&&n!=="Beverage"&&t.allKnownDepartments.has(n),a=o.some(l=>n.endsWith(l)),y=o.includes(n);(m||a&&!y)&&r.push({name:n,index:u})}return r.sort((u,n)=>u.index-n.index),r.map(u=>u.name)},I=(e,t)=>{let r=0;for(let o of t)r<e.length&&o===e[r]&&r++;return r===e.length},v={name:"Standard",parse:(e,t,r="full")=>{let o=M(e.department,"");if(!o)return null;let p=Z(o,t.allKnownDepartments),h=new Map;for(let n of p)h.set(n,(h.get(n)||0)+1);let C=n=>{let m=[],a=[];for(let y=0;y<n.length;y++){let l=n[y];if(l==="\u517C"){a.length>0&&(m.push(a),a=[]);continue}let b=R(l),T=b.rank,k=h.get(l)||0,P=X(l,k);if(a.length===0)a.push(l);else{let S=a[a.length-1],d=R(S),s=d.rank;if(a.includes(l))m.push(a),a=[l];else{let i=!1;if(P)i=!0;else if(d.type===b.type){let g=_(S),f=_(l);g&&f&&g!==f||S.endsWith("\u672C\u90E8")&&l.endsWith("\u672C\u90E8")||S.endsWith("\u90E8\u9580")&&l.endsWith("\u4E8B\u696D\u90E8")||S.endsWith("\u4E8B\u696D\u90E8")&&l.endsWith("\u90E8\u9580")||S.endsWith("\u90E8\u9580")&&l.endsWith("\u672C\u90E8")||d.type==="Other"&&b.type==="Other"?i=!0:i=s<T}else i=T>=10,i&&d.type==="Location"&&b.type==="Organization"&&s>=T&&n.slice(y+1).includes(S)&&(i=!1);i?a.push(l):(m.push(a),a=[l])}}if(P){let S=y+1<n.length?n[y+1]:void 0;Y(l,S)&&a.length>0&&(m.push(a),a=[])}}return a.length>0&&m.push(a),m},u=[];if(r==="full"&&u.push(...C(p)),r==="pure_org"){let n=p.filter(m=>R(m).type!=="Location");n.length>0&&u.push(...C(n))}if(e.title){let m=/[^\x20-\x7E]/.test(e.title)?/[\s\u3000]*(?:兼務|兼)[\s\u3000]*/:/[,;]|(?:兼務|兼)/,a=e.title.split(m).filter(Boolean),y=[],l=(d,s)=>{let i=F(d),g=F(s),f=i<g;if(!f){let D=_(d),x=_(s);if(D&&x&&D!==x)f=!0;else if(d.endsWith("\u672C\u90E8")&&s.endsWith("\u672C\u90E8"))f=!0;else if(d.endsWith("\u90E8\u9580")&&s.endsWith("\u4E8B\u696D\u90E8")||d.endsWith("\u4E8B\u696D\u90E8")&&s.endsWith("\u90E8\u9580"))f=!0;else if(d.endsWith("\u90E8\u9580")&&s.endsWith("\u672C\u90E8"))f=!0;else{let W=R(d),V=R(s);W.type==="Other"&&V.type==="Other"&&(f=!0)}}return f};for(let d of a){let s=A(d,t);if(s.length===0)continue;let i=[];for(let g of s)if(i.length===0)i.push(g);else{let f=i[i.length-1];if(l(f,g))i.push(g);else{y.push([...i]);let D=!1;for(let x=i.length-2;x>=0;x--){let W=i[x];if(l(W,g)){i=[...i.slice(0,x+1),g],D=!0;break}}D||(i=[g])}}i.length>0&&y.push(i)}let b=[...u],T=d=>a.some(s=>s.includes(d)&&s.length>d.length);for(let d of y){let s=!1;for(let i of u){let g=i.findIndex(f=>d.includes(f));if(g!==-1){let f=i[g],D=d.indexOf(f);if(g>0&&D===0){let x=i.slice(0,g);b.push([...x,...d]),s=!0}else if(D>0&&g===0){let x=d.slice(0,D);b.push([...x,...i]),b.push(d),s=!0}else d.length>i.length-g,s=!0}if(!s){let f=i[i.length-1],D=d[0];l(f,D)&&(b.push([...i,...d]),s=!0)}}s||b.push(d)}let k=[],P=[],S=new Set;for(let d of b){let s=d.join("|");S.has(s)||(S.add(s),P.push(d))}for(let d=0;d<P.length;d++){let s=P[d],i=!1;for(let g=0;g<P.length;g++){if(d===g)continue;let f=P[g];if(f.length>s.length&&f.slice(0,s.length).join("|")===s.join("|")){let D=s[s.length-1];if(!T(D)){i=!0;break}}if(f.length>s.length&&I(s,f)){let D=s[s.length-1];if(!T(D)){i=!0;break}}if(s.length===1&&f.length>0){let D=s[0],x=f[f.length-1];if(D!==x&&x.endsWith(D)){i=!0;break}}}i||k.push(s)}return k.length>0?k:null}if(u.length>0){let n=[];for(let m=0;m<u.length;m++){let a=u[m],y=!1;for(let l=0;l<u.length;l++){if(m===l)continue;let b=u[l];if(b.length>a.length&&I(a,b)){y=!0;break}}y||n.push(a)}return n.length>0?n:null}return null}},B={name:"TitleBased",parse:(e,t,r="full")=>{let o=e.title;if(!o)return null;let p=A(o,t);return p.length>0?[p]:null}};var ee=["uncategorizedCompany","unnamedPerson"],te=e=>{if(typeof e!="object"||e===null)throw new RangeError(`[contact-map] tree naming must be an object; got ${e===null?"null":typeof e}`);for(let t of ee){let r=e[t];if(typeof r!="string"||r.trim()==="")throw new RangeError(`[contact-map] tree naming.${t} must be a non-blank string; got ${typeof r=="string"?JSON.stringify(r):r===null?"null":typeof r}`)}},ne=[v,B],re=(e,t)=>{let r=M(e.full_name,t),o=M(e.title,"");return o.length>0?`${r} (${o})`:r},L=e=>e.sort((t,r)=>t.label.localeCompare(r.label,"ja")),z=(e,t,r)=>{let o=e.get(t);if(o)return o;let p=r();return e.set(t,p),p},N=e=>encodeURIComponent(e.replace(/\//g,"\uFF0F")),K=e=>e.sort((t,r)=>{let o=!!(t.contact.title&&t.contact.title.trim().length>0),p=!!(r.contact.title&&r.contact.title.trim().length>0);return o&&!p?-1:!o&&p?1:t.label.localeCompare(r.label,"ja")}),$=e=>({name:e.label,type:"file",absolutePath:e.path,relativePath:e.segment,personId:e.contact.person_id,title:e.contact.title||void 0,isPrimary:e.isPrimary}),j=e=>{let t=L(Array.from(e.children.values())).map(j),r=K([...e.persons]).map($);return{name:e.label,type:"directory",absolutePath:e.path,relativePath:e.segment,children:[...r,...t],memberCount:e.personCount}},w=class{constructor(t){this.companyMap=new Map;this.processedPersonIds=new Set;this.allDepts=new Set;this.cachedResult=null;te(t),this.naming=t}appendRecords(t){if(!t||t.length===0)return;let r="full",o=!1;for(let p of t)if(!this.processedPersonIds.has(p.person_id)&&p.department){let h=p.department.split(/\u3000/);for(let C of h){let u=C.trim();if(!u||u==="\u517C"||u==="\u4FC2")continue;if(/[^\x20-\x7E]/.test(u)){let m=u.split(" ").filter(a=>a.length>0&&a!=="\u517C"&&a!=="\u4FC2");for(let a of m)this.allDepts.add(a)}else this.allDepts.add(u)}}for(let p of t){let h=p.person_id;if(!Number.isFinite(h)||this.processedPersonIds.has(h))continue;this.processedPersonIds.add(h),o=!0;let C=M(p.company_name,this.naming.uncategorizedCompany),u=re(p,this.naming.unnamedPerson),n=`company:${N(C)}`,m=z(this.companyMap,n,()=>({label:C,segment:n,path:`/${n}`,departments:new Map,persons:[],personCount:0})),a=[],y={allKnownDepartments:this.allDepts};for(let l of ne){let b=l.parse(p,y,r);if(b&&b.length>0){a=b;break}}a.length===0&&a.push([]);for(let l=0;l<a.length;l++){let b=a[l];if(b.length===0){let s=`person:${h}`,i=`${m.path}/${s}`;m.persons.some(f=>f.contact.person_id===h)||m.persons.push({contact:p,label:u,path:i,segment:s,isPrimary:!0});continue}let T=null,k=m.path;if(b.length>0){let s=b[0],i=`department:${N(s)}`;T=z(m.departments,i,()=>({label:s,segment:i,path:`${k}/${i}`,children:new Map,persons:[],personCount:0})),k=T.path,T.personCount+=1;for(let g=1;g<b.length;g++){let f=b[g],D=`department:${N(f)}`;if(!T)throw new Error("Unexpected null currentDepartmentNode");T=z(T.children,D,()=>({label:f,segment:D,path:`${k}/${D}`,children:new Map,persons:[],personCount:0})),k=T.path,T.personCount+=1}}else continue;let P=`person:${h}`,S=`${T.path}/${P}`;T.persons.some(s=>s.contact.person_id===h)||T.persons.push({contact:p,label:u,path:S,segment:P,isPrimary:l===0})}m.personCount+=1}o&&(this.cachedResult=null)}getSnapshot(){if(this.cachedResult)return this.cachedResult;let t={},r=L(Array.from(this.companyMap.values())).map(o=>{let p=L(Array.from(o.departments.values())).map(j),h=K([...o.persons]).map($),C={name:o.label,type:"directory",absolutePath:o.path,relativePath:o.segment,children:[...h,...p],memberCount:o.personCount};return t[o.label]=C,C});return this.cachedResult={tree:r,companyMap:t},this.cachedResult}append(t){this.appendRecords(t)}build(){return this.getSnapshot().tree}reset(){this.companyMap.clear(),this.processedPersonIds.clear(),this.allDepts.clear(),this.cachedResult=null}getUniquePersonCount(){return this.processedPersonIds.size}get size(){return this.processedPersonIds.size}},De=(e,t)=>{let r=new w(t);return r.appendRecords(e),r.getSnapshot()};var O=e=>{if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null},Ce=e=>!e||typeof e!="object"?null:"item"in e?e.item??null:"person_id"in e?e:null,U=(e,t)=>{if(!e)return{value:null,fieldKey:null};for(let r of t){let o=O(e[r]);if(o)return{value:o,fieldKey:r}}return{value:null,fieldKey:null}},Pe=e=>U(e,["custom_email","email"]),Se=e=>U(e,["custom_mobile_phone_number","mobile_phone_number","company_phone_number"]),xe=e=>{let t=O(e);if(!t)return null;let r=t.replace(/[^0-9+#*]/g,"");return r.length===0?null:`tel:${r}`},ke=(e,t)=>{let r=O(e);return r?t?`https://mail.google.com/mail/?view=cm&fs=1&to=${encodeURIComponent(r)}`:`mailto:${encodeURIComponent(r)}`:null},Re=e=>{if(!e)return"-";let t=typeof e=="string"||typeof e=="number"?new Date(e):e;return!(t instanceof Date)||Number.isNaN(t.getTime())?typeof e=="string"?e:"-":t.toISOString().split("T")[0]},oe=e=>{if(!e)return"-";let t=typeof e=="string"||typeof e=="number"?new Date(e):e;return!(t instanceof Date)||Number.isNaN(t.getTime())?typeof e=="string"?e:"-":t.toISOString()},_e=e=>e==null?"-":typeof e=="string"?O(e)??"-":typeof e=="number"?Number.isFinite(e)?String(e):"-":e instanceof Date?oe(e):String(e);var Ee={listPanelMinWidth:320,detailPanelMinWidth:260,handleThickness:10,listPaddingAndBorder:0,detailPaddingAndBorder:0,scrollbarSafetyBuffer:20,hysteresisSafetyMargin:35},Oe={listPanelMinWidth:280,detailPanelMinWidth:260,handleThickness:10,listPaddingAndBorder:0,detailPaddingAndBorder:0,scrollbarSafetyBuffer:20,hysteresisSafetyMargin:35};function We(e){let t=e.listPanelMinWidth+e.detailPanelMinWidth+e.handleThickness+e.listPaddingAndBorder+e.detailPaddingAndBorder,r=t+e.scrollbarSafetyBuffer,o=r+e.hysteresisSafetyMargin,p=o-r;return{physicalMinWidth:t,collapseThreshold:r,expandThreshold:o,hysteresisWidth:p}}function ze(e,t,r){return e<=0||!Number.isFinite(e)?!1:t?e>=r.collapseThreshold:e>=r.expandThreshold}var Le={info:(e,...t)=>console.info(`[contact-map] ${e}`,...t),warn:(e,...t)=>console.warn(`[contact-map] ${e}`,...t),error:(e,...t)=>console.error(`[contact-map] ${e}`,...t)};import{getNormalizedVariants as ae,normalizeText as ie,romajiToKatakana as se}from"@aiquants/select-box";var le=/[​]/g,pe=/^[\s  ]+|[\s  ]+$/g,ce=/\s+/,ue=/^[\p{Script=Latin}\s]+$/u,de=/\p{Script=Latin}/u,Q=Object.freeze({convertWidth:!0,convertKana:!0,convertCase:!0,convertRomaji:!1}),me=e=>ie(e.replace(le,"").replace(pe,""),Q),fe=e=>{if(!ue.test(e))return null;let t=se(e);return de.test(t)?null:t},H=e=>e.split(ce).filter(Boolean),he=e=>{let t=me(e),r=fe(t);return r===null?t:r},Ie=e=>{let t=new Set([...H(e),...H(he(e))]),r=new Set;for(let o of t)for(let p of ae(o,Q)){let h=p.trim();h&&r.add(h)}return Array.from(r)};import{z as c}from"zod";var ge=c.object({person_id:c.union([c.string(),c.number()]).transform(e=>{if(typeof e=="number")return e;let t=e.trim();return parseInt(t,10)}).pipe(c.number()),person_id_redirect_to:c.union([c.string(),c.number()]).nullable().optional().transform(e=>{if(e==null)return null;if(typeof e=="number")return e;let t=e.trim();if(t.length===0)return null;let r=parseInt(t,10);return Number.isNaN(r)?null:r}),full_name:c.string().nullable().optional(),full_name_reading:c.string().nullable().optional(),company_name:c.string().nullable().optional(),company_name_reading:c.string().nullable().optional(),department:c.string().nullable().optional(),title:c.string().nullable().optional(),address:c.string().nullable().optional(),postal_code:c.string().nullable().optional(),email:c.string().nullable().optional(),custom_email:c.string().nullable().optional(),company_phone_number:c.string().nullable().optional(),custom_company_phone_number:c.string().nullable().optional(),company_fax_number:c.string().nullable().optional(),mobile_phone_number:c.string().nullable().optional(),custom_mobile_phone_number:c.string().nullable().optional(),url:c.string().nullable().optional(),contacted_at:c.union([c.date(),c.string()]).nullable().optional(),contacted_by:c.string().nullable().optional(),is_in_eight:c.boolean().nullable().optional(),is_contact_synced:c.boolean().nullable().optional(),is_active:c.boolean(),is_incomplete:c.boolean().nullable().optional(),created_at:c.union([c.date(),c.string()]).optional(),created_by:c.string().optional(),updated_at:c.union([c.date(),c.string()]).optional(),updated_by:c.string().optional()}),Be=c.array(ge);export{Ee as DEFAULT_LIST_LAYOUT_SPEC,Oe as DEFAULT_TREE_LAYOUT_SPEC,w as IncrementalTreeBuilder,v as StandardDepartmentParser,B as TitleBasedDepartmentParser,te as assertContactMapTreeNaming,De as buildDirectoryTree,We as calculateResponsiveThresholds,Le as defaultLogger,Ce as extractContactData,A as extractDepartmentsFromTitle,Re as formatDate,oe as formatDateTime,ke as getEmailLinkHref,ze as getHysteresisBreakpointState,xe as getPhoneDialHref,Pe as getPrimaryEmail,Se as getPrimaryPhone,Ie as getSearchQuerySpellings,M as normalizeLabel,he as normalizeSearchInput,O as normalizeString,ge as schemaContactRecord,Be as schemaContactRecords,Z as splitDepartment,_e as toDisplayValue};
@@ -1,3 +1,3 @@
1
1
  /*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
2
2
  /*! @aiquants/contact-map standalone CSS — 非 Tailwind ホスト専用。ホストの Tailwind ビルドと混在させないこと */
3
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-pan-x:initial;--tw-pan-y:initial;--tw-pinch-zoom:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-orange-300:oklch(83.7% .128 66.29);--color-orange-400:oklch(75% .183 55.934);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-950:oklch(27.9% .077 45.635);--color-yellow-200:oklch(94.5% .129 101.54);--color-lime-300:oklch(89.7% .196 126.665);--color-lime-700:oklch(53.2% .157 131.589);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-950:oklch(26.2% .051 172.552);--color-teal-200:oklch(91% .096 180.426);--color-teal-300:oklch(85.5% .138 181.071);--color-teal-400:oklch(77.7% .152 181.912);--color-teal-600:oklch(60% .118 184.704);--color-teal-700:oklch(51.1% .096 186.391);--color-cyan-200:oklch(91.7% .08 205.041);--color-cyan-300:oklch(86.5% .127 207.078);--color-cyan-400:oklch(78.9% .154 211.53);--color-cyan-600:oklch(60.9% .126 221.723);--color-cyan-700:oklch(52% .105 223.128);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-300:oklch(82.8% .111 230.318);--color-sky-400:oklch(74.6% .16 232.661);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-sky-700:oklch(50% .134 242.749);--color-sky-800:oklch(44.3% .11 240.79);--color-sky-900:oklch(39.1% .09 240.876);--color-sky-950:oklch(29.3% .066 243.157);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-300:oklch(78.5% .115 274.713);--color-indigo-400:oklch(67.3% .182 276.935);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-700:oklch(45.7% .24 277.023);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-300:oklch(81.1% .111 293.571);--color-violet-400:oklch(70.2% .183 293.541);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-700:oklch(49.1% .27 292.581);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-300:oklch(82.7% .119 306.383);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-700:oklch(49.6% .265 301.924);--color-purple-800:oklch(43.8% .218 303.724);--color-purple-900:oklch(38.1% .176 304.987);--color-fuchsia-200:oklch(90.3% .076 319.62);--color-fuchsia-300:oklch(83.3% .145 321.434);--color-fuchsia-400:oklch(74% .238 322.16);--color-fuchsia-700:oklch(51.8% .253 323.949);--color-pink-200:oklch(89.9% .061 343.231);--color-pink-300:oklch(82.3% .12 346.018);--color-pink-400:oklch(71.8% .202 349.761);--color-pink-600:oklch(59.2% .249 .584);--color-pink-700:oklch(52.5% .223 3.958);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-300:oklch(81% .117 11.638);--color-rose-400:oklch(71.2% .194 13.428);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-600:oklch(58.6% .253 17.585);--color-rose-700:oklch(51.4% .222 16.935);--color-rose-800:oklch(45.5% .188 13.697);--color-rose-900:oklch(41% .159 10.272);--color-rose-950:oklch(27.1% .105 12.094);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--radius-sm:calc(var(--radius,.5rem) - 4px);--radius-md:calc(var(--radius,.5rem) - 2px);--radius-lg:var(--radius,.5rem);--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-ring:hsl(var(--ring));--color-background:hsl(var(--background));--color-foreground:hsl(var(--foreground));--color-primary:hsl(var(--primary));--color-muted:hsl(var(--muted));--color-muted-foreground:hsl(var(--muted-foreground))}}@layer base,components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.right-0{right:calc(var(--spacing) * 0)}.bottom-0{bottom:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.z-50{z-index:50}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.mt-0{margin-top:calc(var(--spacing) * 0)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-0{margin-bottom:calc(var(--spacing) * 0)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:calc(var(--spacing) * 1)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-\[64px\]{height:64px}.h-full{height:100%}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-40{min-height:calc(var(--spacing) * 40)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-1\/3{width:33.3333%}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-28{width:calc(var(--spacing) * 28)}.w-full{width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-16{min-width:calc(var(--spacing) * 16)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-ping{animation:var(--animate-ping)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-not-allowed{cursor:not-allowed}.touch-pan-x{--tw-pan-x:pan-x;touch-action:var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)}.touch-pan-y{--tw-pan-y:pan-y;touch-action:var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)}.touch-manipulation{touch-action:manipulation}.resize{resize:both}.scrollbar-none{scrollbar-width:none}.scrollbar-thin{scrollbar-width:thin}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 1) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-1\.5{row-gap:calc(var(--spacing) * 1.5)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-lg{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-solid{--tw-border-style:solid;border-style:solid}.border-amber-200{border-color:var(--color-amber-200)}.border-amber-400{border-color:var(--color-amber-400)}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-300{border-color:var(--color-blue-300)}.border-blue-500{border-color:var(--color-blue-500)}.border-cyan-200{border-color:var(--color-cyan-200)}.border-emerald-200{border-color:var(--color-emerald-200)}.border-fuchsia-200{border-color:var(--color-fuchsia-200)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-green-200{border-color:var(--color-green-200)}.border-green-300{border-color:var(--color-green-300)}.border-indigo-200{border-color:var(--color-indigo-200)}.border-pink-200{border-color:var(--color-pink-200)}.border-purple-200{border-color:var(--color-purple-200)}.border-purple-300{border-color:var(--color-purple-300)}.border-rose-200{border-color:var(--color-rose-200)}.border-rose-300{border-color:var(--color-rose-300)}.border-sky-200{border-color:var(--color-sky-200)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.border-teal-200{border-color:var(--color-teal-200)}.border-violet-200{border-color:var(--color-violet-200)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-amber-400{background-color:var(--color-amber-400)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-200{background-color:var(--color-blue-200)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-300{background-color:var(--color-gray-300)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-muted{background-color:var(--color-muted)}.bg-orange-500{background-color:var(--color-orange-500)}.bg-primary{background-color:var(--color-primary)}.bg-primary\/20{background-color:color-mix(in srgb, hsl(var(--primary)) 20%, transparent)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, var(--color-primary) 20%, transparent)}}.bg-purple-50\/60{background-color:#faf5ff99}@supports (color:color-mix(in lab, red, red)){.bg-purple-50\/60{background-color:color-mix(in oklab, var(--color-purple-50) 60%, transparent)}}.bg-purple-100{background-color:var(--color-purple-100)}.bg-purple-500{background-color:var(--color-purple-500)}.bg-red-500{background-color:var(--color-red-500)}.bg-rose-50{background-color:var(--color-rose-50)}.bg-rose-500{background-color:var(--color-rose-500)}.bg-sky-50{background-color:var(--color-sky-50)}.bg-sky-50\/70{background-color:#f0f9ffb3}@supports (color:color-mix(in lab, red, red)){.bg-sky-50\/70{background-color:color-mix(in oklab, var(--color-sky-50) 70%, transparent)}}.bg-sky-100\/55{background-color:#dff2fe8c}@supports (color:color-mix(in lab, red, red)){.bg-sky-100\/55{background-color:color-mix(in oklab, var(--color-sky-100) 55%, transparent)}}.bg-sky-100\/70{background-color:#dff2feb3}@supports (color:color-mix(in lab, red, red)){.bg-sky-100\/70{background-color:color-mix(in oklab, var(--color-sky-100) 70%, transparent)}}.bg-sky-400{background-color:var(--color-sky-400)}.bg-sky-500{background-color:var(--color-sky-500)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-100\/70{background-color:#f1f5f9b3}@supports (color:color-mix(in lab, red, red)){.bg-slate-100\/70{background-color:color-mix(in oklab, var(--color-slate-100) 70%, transparent)}}.bg-slate-900\/50{background-color:#0f172b80}@supports (color:color-mix(in lab, red, red)){.bg-slate-900\/50{background-color:color-mix(in oklab, var(--color-slate-900) 50%, transparent)}}.bg-white{background-color:var(--color-white)}.bg-white\/40{background-color:#fff6}@supports (color:color-mix(in lab, red, red)){.bg-white\/40{background-color:color-mix(in oklab, var(--color-white) 40%, transparent)}}.bg-white\/60{background-color:#fff9}@supports (color:color-mix(in lab, red, red)){.bg-white\/60{background-color:color-mix(in oklab, var(--color-white) 60%, transparent)}}.bg-white\/70{background-color:#ffffffb3}@supports (color:color-mix(in lab, red, red)){.bg-white\/70{background-color:color-mix(in oklab, var(--color-white) 70%, transparent)}}.bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab, red, red)){.bg-white\/80{background-color:color-mix(in oklab, var(--color-white) 80%, transparent)}}.bg-yellow-200{background-color:var(--color-yellow-200)}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.pr-0\.75{padding-right:calc(var(--spacing) * .75)}.pr-1{padding-right:calc(var(--spacing) * 1)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pb-0\.5{padding-bottom:calc(var(--spacing) * .5)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pl-1{padding-left:calc(var(--spacing) * 1)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-1{--tw-leading:calc(var(--spacing) * 1);line-height:calc(var(--spacing) * 1)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-nowrap{text-wrap:nowrap}.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-cyan-600{color:var(--color-cyan-600)}.text-cyan-700{color:var(--color-cyan-700)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-fuchsia-700{color:var(--color-fuchsia-700)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-indigo-600{color:var(--color-indigo-600)}.text-indigo-700{color:var(--color-indigo-700)}.text-inherit{color:inherit}.text-lime-700{color:var(--color-lime-700)}.text-muted-foreground{color:var(--color-muted-foreground)}.text-orange-500{color:var(--color-orange-500)}.text-orange-600{color:var(--color-orange-600)}.text-pink-600{color:var(--color-pink-600)}.text-pink-700{color:var(--color-pink-700)}.text-purple-600{color:var(--color-purple-600)}.text-purple-700{color:var(--color-purple-700)}.text-red-600{color:var(--color-red-600)}.text-rose-600{color:var(--color-rose-600)}.text-rose-700{color:var(--color-rose-700)}.text-sky-500{color:var(--color-sky-500)}.text-sky-600{color:var(--color-sky-600)}.text-sky-700{color:var(--color-sky-700)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-teal-600{color:var(--color-teal-600)}.text-teal-700{color:var(--color-teal-700)}.text-violet-600{color:var(--color-violet-600)}.text-violet-700{color:var(--color-violet-700)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-blue-200{--tw-ring-color:var(--color-blue-200)}.ring-offset-background{--tw-ring-offset-color:var(--color-background)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[visibility\]{transition-property:visibility;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-transform{will-change:transform}.duration-150{animation-duration:.15s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}@media (hover:hover){.hover\:border-blue-400:hover{border-color:var(--color-blue-400)}.hover\:bg-amber-200:hover{background-color:var(--color-amber-200)}.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-blue-600:hover{background-color:var(--color-blue-600)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-green-200:hover{background-color:var(--color-green-200)}.hover\:bg-purple-200:hover{background-color:var(--color-purple-200)}.hover\:bg-red-600:hover{background-color:var(--color-red-600)}.hover\:bg-rose-100:hover{background-color:var(--color-rose-100)}.hover\:bg-slate-100:hover{background-color:var(--color-slate-100)}.hover\:bg-slate-200\/60:hover{background-color:#e2e8f099}@supports (color:color-mix(in lab, red, red)){.hover\:bg-slate-200\/60:hover{background-color:color-mix(in oklab, var(--color-slate-200) 60%, transparent)}}.hover\:text-blue-500:hover{color:var(--color-blue-500)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:text-slate-700:hover{color:var(--color-slate-700)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\:underline:focus{text-decoration-line:underline}.focus\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-blue-200:focus-visible{--tw-ring-color:var(--color-blue-200)}.focus-visible\:ring-blue-500:focus-visible{--tw-ring-color:var(--color-blue-500)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--color-ring)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--color-background)}.data-\[state\=active\]\:bg-white[data-state=active]{background-color:var(--color-white)}.data-\[state\=active\]\:text-blue-600[data-state=active]{color:var(--color-blue-600)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--color-foreground)}.data-\[state\=active\]\:shadow-2xs[data-state=active]{--tw-shadow:0 1px var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[state\=inactive\]\:hidden[data-state=inactive]{display:none}@media (min-width:640px){.sm\:ml-2{margin-left:calc(var(--spacing) * 2)}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:grid{display:grid}.sm\:hidden{display:none}.sm\:inline{display:inline}.sm\:h-3\.5{height:calc(var(--spacing) * 3.5)}.sm\:w-3\.5{width:calc(var(--spacing) * 3.5)}.sm\:min-w-12{min-width:calc(var(--spacing) * 12)}.sm\:min-w-24{min-width:calc(var(--spacing) * 24)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:p-4{padding:calc(var(--spacing) * 4)}.sm\:px-2{padding-inline:calc(var(--spacing) * 2)}.sm\:px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.sm\:py-0\.5{padding-block:calc(var(--spacing) * .5)}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.sm\:text-\[11px\]{font-size:11px}}@media (min-width:1280px){.xl\:flex{display:flex}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)_minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto}}@media (min-width:1536px){.\32 xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.dark\:border-amber-400\/60:where(.dark,.dark *){border-color:#fcbb0099}@supports (color:color-mix(in lab, red, red)){.dark\:border-amber-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-amber-400) 60%, transparent)}}.dark\:border-amber-500\/70:where(.dark,.dark *){border-color:#f99c00b3}@supports (color:color-mix(in lab, red, red)){.dark\:border-amber-500\/70:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-amber-500) 70%, transparent)}}.dark\:border-amber-800:where(.dark,.dark *){border-color:var(--color-amber-800)}.dark\:border-blue-400:where(.dark,.dark *){border-color:var(--color-blue-400)}.dark\:border-blue-400\/60:where(.dark,.dark *){border-color:#54a2ff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-blue-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-blue-400) 60%, transparent)}}.dark\:border-blue-500:where(.dark,.dark *){border-color:var(--color-blue-500)}.dark\:border-blue-500\/40:where(.dark,.dark *){border-color:#3080ff66}@supports (color:color-mix(in lab, red, red)){.dark\:border-blue-500\/40:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-blue-500) 40%, transparent)}}.dark\:border-blue-500\/50:where(.dark,.dark *){border-color:#3080ff80}@supports (color:color-mix(in lab, red, red)){.dark\:border-blue-500\/50:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-blue-500) 50%, transparent)}}.dark\:border-blue-500\/60:where(.dark,.dark *){border-color:#3080ff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-blue-500\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-blue-500) 60%, transparent)}}.dark\:border-cyan-400\/60:where(.dark,.dark *){border-color:#00d2ef99}@supports (color:color-mix(in lab, red, red)){.dark\:border-cyan-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-cyan-400) 60%, transparent)}}.dark\:border-emerald-400\/60:where(.dark,.dark *){border-color:#00d29499}@supports (color:color-mix(in lab, red, red)){.dark\:border-emerald-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-emerald-400) 60%, transparent)}}.dark\:border-emerald-800:where(.dark,.dark *){border-color:var(--color-emerald-800)}.dark\:border-fuchsia-400\/60:where(.dark,.dark *){border-color:#ec6cff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-fuchsia-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-fuchsia-400) 60%, transparent)}}.dark\:border-green-400\/60:where(.dark,.dark *){border-color:#05df7299}@supports (color:color-mix(in lab, red, red)){.dark\:border-green-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-green-400) 60%, transparent)}}.dark\:border-indigo-400\/60:where(.dark,.dark *){border-color:#7d87ff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-indigo-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-indigo-400) 60%, transparent)}}.dark\:border-indigo-500\/60:where(.dark,.dark *){border-color:#625fff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-indigo-500\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-indigo-500) 60%, transparent)}}.dark\:border-pink-400\/60:where(.dark,.dark *){border-color:#fb64b699}@supports (color:color-mix(in lab, red, red)){.dark\:border-pink-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-pink-400) 60%, transparent)}}.dark\:border-purple-400\/60:where(.dark,.dark *){border-color:#c07eff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-purple-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-purple-400) 60%, transparent)}}.dark\:border-rose-400\/60:where(.dark,.dark *){border-color:#ff667f99}@supports (color:color-mix(in lab, red, red)){.dark\:border-rose-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-rose-400) 60%, transparent)}}.dark\:border-rose-700:where(.dark,.dark *){border-color:var(--color-rose-700)}.dark\:border-rose-800:where(.dark,.dark *){border-color:var(--color-rose-800)}.dark\:border-sky-400\/60:where(.dark,.dark *){border-color:#00bcfe99}@supports (color:color-mix(in lab, red, red)){.dark\:border-sky-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-sky-400) 60%, transparent)}}.dark\:border-sky-800:where(.dark,.dark *){border-color:var(--color-sky-800)}.dark\:border-slate-600:where(.dark,.dark *){border-color:var(--color-slate-600)}.dark\:border-slate-700:where(.dark,.dark *){border-color:var(--color-slate-700)}.dark\:border-teal-400\/60:where(.dark,.dark *){border-color:#00d3bd99}@supports (color:color-mix(in lab, red, red)){.dark\:border-teal-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-teal-400) 60%, transparent)}}.dark\:border-transparent:where(.dark,.dark *){border-color:#0000}.dark\:border-violet-400\/60:where(.dark,.dark *){border-color:#a685ff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-violet-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-violet-400) 60%, transparent)}}.dark\:bg-amber-300\/20:where(.dark,.dark *){background-color:#ffd23633}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-300\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-amber-300) 20%, transparent)}}.dark\:bg-amber-950\/60:where(.dark,.dark *){background-color:#46190199}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-950\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-amber-950) 60%, transparent)}}.dark\:bg-blue-400:where(.dark,.dark *){background-color:var(--color-blue-400)}.dark\:bg-blue-500:where(.dark,.dark *){background-color:var(--color-blue-500)}.dark\:bg-blue-500\/20:where(.dark,.dark *){background-color:#3080ff33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-500\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-blue-500) 20%, transparent)}}.dark\:bg-blue-800:where(.dark,.dark *){background-color:var(--color-blue-800)}.dark\:bg-blue-900\/30:where(.dark,.dark *){background-color:#1c398e4d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-900\/30:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-blue-900) 30%, transparent)}}.dark\:bg-blue-900\/40:where(.dark,.dark *){background-color:#1c398e66}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-900\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-blue-900) 40%, transparent)}}.dark\:bg-emerald-300\/20:where(.dark,.dark *){background-color:#5ee9b533}@supports (color:color-mix(in lab, red, red)){.dark\:bg-emerald-300\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-emerald-300) 20%, transparent)}}.dark\:bg-emerald-950\/60:where(.dark,.dark *){background-color:#002c2299}@supports (color:color-mix(in lab, red, red)){.dark\:bg-emerald-950\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-emerald-950) 60%, transparent)}}.dark\:bg-green-500:where(.dark,.dark *){background-color:var(--color-green-500)}.dark\:bg-green-900\/20:where(.dark,.dark *){background-color:#0d542b33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-green-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-green-900) 20%, transparent)}}.dark\:bg-orange-500:where(.dark,.dark *){background-color:var(--color-orange-500)}.dark\:bg-purple-500:where(.dark,.dark *){background-color:var(--color-purple-500)}.dark\:bg-purple-900\/20:where(.dark,.dark *){background-color:#59168b33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-purple-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-purple-900) 20%, transparent)}}.dark\:bg-rose-900\/30:where(.dark,.dark *){background-color:#8b08364d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-rose-900\/30:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-rose-900) 30%, transparent)}}.dark\:bg-rose-900\/40:where(.dark,.dark *){background-color:#8b083666}@supports (color:color-mix(in lab, red, red)){.dark\:bg-rose-900\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-rose-900) 40%, transparent)}}.dark\:bg-rose-950:where(.dark,.dark *){background-color:var(--color-rose-950)}.dark\:bg-rose-950\/60:where(.dark,.dark *){background-color:#4d021899}@supports (color:color-mix(in lab, red, red)){.dark\:bg-rose-950\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-rose-950) 60%, transparent)}}.dark\:bg-sky-900\/40:where(.dark,.dark *){background-color:#024a7066}@supports (color:color-mix(in lab, red, red)){.dark\:bg-sky-900\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-sky-900) 40%, transparent)}}.dark\:bg-sky-900\/55:where(.dark,.dark *){background-color:#024a708c}@supports (color:color-mix(in lab, red, red)){.dark\:bg-sky-900\/55:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-sky-900) 55%, transparent)}}.dark\:bg-sky-950\/60:where(.dark,.dark *){background-color:#052f4a99}@supports (color:color-mix(in lab, red, red)){.dark\:bg-sky-950\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-sky-950) 60%, transparent)}}.dark\:bg-slate-700:where(.dark,.dark *){background-color:var(--color-slate-700)}.dark\:bg-slate-800:where(.dark,.dark *){background-color:var(--color-slate-800)}.dark\:bg-slate-800\/60:where(.dark,.dark *){background-color:#1d293d99}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-800\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-800) 60%, transparent)}}.dark\:bg-slate-800\/70:where(.dark,.dark *){background-color:#1d293db3}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-800\/70:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-800) 70%, transparent)}}.dark\:bg-slate-800\/80:where(.dark,.dark *){background-color:#1d293dcc}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-800\/80:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-800) 80%, transparent)}}.dark\:bg-slate-900:where(.dark,.dark *){background-color:var(--color-slate-900)}.dark\:bg-slate-900\/40:where(.dark,.dark *){background-color:#0f172b66}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-900\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-900) 40%, transparent)}}.dark\:bg-slate-900\/50:where(.dark,.dark *){background-color:#0f172b80}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-900\/50:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-900) 50%, transparent)}}.dark\:bg-slate-900\/60:where(.dark,.dark *){background-color:#0f172b99}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-900\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-900) 60%, transparent)}}.dark\:bg-slate-900\/70:where(.dark,.dark *){background-color:#0f172bb3}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-900\/70:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-900) 70%, transparent)}}.dark\:bg-slate-900\/80:where(.dark,.dark *){background-color:#0f172bcc}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-900\/80:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-900) 80%, transparent)}}.dark\:bg-slate-950:where(.dark,.dark *){background-color:var(--color-slate-950)}.dark\:text-amber-200:where(.dark,.dark *){color:var(--color-amber-200)}.dark\:text-amber-300:where(.dark,.dark *){color:var(--color-amber-300)}.dark\:text-blue-200:where(.dark,.dark *){color:var(--color-blue-200)}.dark\:text-blue-300:where(.dark,.dark *){color:var(--color-blue-300)}.dark\:text-cyan-300:where(.dark,.dark *){color:var(--color-cyan-300)}.dark\:text-emerald-200:where(.dark,.dark *){color:var(--color-emerald-200)}.dark\:text-emerald-300:where(.dark,.dark *){color:var(--color-emerald-300)}.dark\:text-fuchsia-300:where(.dark,.dark *){color:var(--color-fuchsia-300)}.dark\:text-green-200:where(.dark,.dark *){color:var(--color-green-200)}.dark\:text-green-300:where(.dark,.dark *){color:var(--color-green-300)}.dark\:text-indigo-300:where(.dark,.dark *){color:var(--color-indigo-300)}.dark\:text-indigo-400:where(.dark,.dark *){color:var(--color-indigo-400)}.dark\:text-lime-300:where(.dark,.dark *){color:var(--color-lime-300)}.dark\:text-orange-300:where(.dark,.dark *){color:var(--color-orange-300)}.dark\:text-orange-400:where(.dark,.dark *){color:var(--color-orange-400)}.dark\:text-pink-300:where(.dark,.dark *){color:var(--color-pink-300)}.dark\:text-purple-200:where(.dark,.dark *){color:var(--color-purple-200)}.dark\:text-purple-300:where(.dark,.dark *){color:var(--color-purple-300)}.dark\:text-red-400:where(.dark,.dark *){color:var(--color-red-400)}.dark\:text-rose-200:where(.dark,.dark *){color:var(--color-rose-200)}.dark\:text-rose-300:where(.dark,.dark *){color:var(--color-rose-300)}.dark\:text-sky-200:where(.dark,.dark *){color:var(--color-sky-200)}.dark\:text-sky-300:where(.dark,.dark *){color:var(--color-sky-300)}.dark\:text-sky-400:where(.dark,.dark *){color:var(--color-sky-400)}.dark\:text-slate-100:where(.dark,.dark *){color:var(--color-slate-100)}.dark\:text-slate-200:where(.dark,.dark *){color:var(--color-slate-200)}.dark\:text-slate-300:where(.dark,.dark *){color:var(--color-slate-300)}.dark\:text-slate-400:where(.dark,.dark *){color:var(--color-slate-400)}.dark\:text-slate-500:where(.dark,.dark *){color:var(--color-slate-500)}.dark\:text-teal-300:where(.dark,.dark *){color:var(--color-teal-300)}.dark\:text-violet-300:where(.dark,.dark *){color:var(--color-violet-300)}.dark\:text-white:where(.dark,.dark *){color:var(--color-white)}.dark\:shadow-none:where(.dark,.dark *){--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.dark\:ring-1:where(.dark,.dark *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.dark\:shadow-blue-900\/30:where(.dark,.dark *){--tw-shadow-color:#1c398e4d}@supports (color:color-mix(in lab, red, red)){.dark\:shadow-blue-900\/30:where(.dark,.dark *){--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-blue-900) 30%, transparent) var(--tw-shadow-alpha), transparent)}}.dark\:shadow-slate-950\/40:where(.dark,.dark *){--tw-shadow-color:#02061866}@supports (color:color-mix(in lab, red, red)){.dark\:shadow-slate-950\/40:where(.dark,.dark *){--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-slate-950) 40%, transparent) var(--tw-shadow-alpha), transparent)}}.dark\:ring-blue-500\/40:where(.dark,.dark *){--tw-ring-color:#3080ff66}@supports (color:color-mix(in lab, red, red)){.dark\:ring-blue-500\/40:where(.dark,.dark *){--tw-ring-color:color-mix(in oklab, var(--color-blue-500) 40%, transparent)}}.dark\:ring-white\/70:where(.dark,.dark *){--tw-ring-color:#ffffffb3}@supports (color:color-mix(in lab, red, red)){.dark\:ring-white\/70:where(.dark,.dark *){--tw-ring-color:color-mix(in oklab, var(--color-white) 70%, transparent)}}@media (hover:hover){.dark\:hover\:border-blue-400:where(.dark,.dark *):hover{border-color:var(--color-blue-400)}.dark\:hover\:bg-amber-300\/30:where(.dark,.dark *):hover{background-color:#ffd2364d}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-amber-300\/30:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-amber-300) 30%, transparent)}}.dark\:hover\:bg-blue-500\/10:where(.dark,.dark *):hover{background-color:#3080ff1a}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-blue-500\/10:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-blue-500) 10%, transparent)}}.dark\:hover\:bg-blue-600:where(.dark,.dark *):hover{background-color:var(--color-blue-600)}.dark\:hover\:bg-green-800\/30:where(.dark,.dark *):hover{background-color:#0166304d}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-green-800\/30:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-green-800) 30%, transparent)}}.dark\:hover\:bg-purple-800\/30:where(.dark,.dark *):hover{background-color:#6e11b04d}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-purple-800\/30:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-purple-800) 30%, transparent)}}.dark\:hover\:bg-red-700:where(.dark,.dark *):hover{background-color:var(--color-red-700)}.dark\:hover\:bg-rose-900:where(.dark,.dark *):hover{background-color:var(--color-rose-900)}.dark\:hover\:bg-slate-700:where(.dark,.dark *):hover{background-color:var(--color-slate-700)}.dark\:hover\:bg-slate-700\/60:where(.dark,.dark *):hover{background-color:#31415899}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-slate-700\/60:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-slate-700) 60%, transparent)}}.dark\:hover\:bg-slate-700\/70:where(.dark,.dark *):hover{background-color:#314158b3}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-slate-700\/70:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-slate-700) 70%, transparent)}}.dark\:hover\:bg-slate-800:where(.dark,.dark *):hover{background-color:var(--color-slate-800)}.dark\:hover\:bg-slate-800\/70:where(.dark,.dark *):hover{background-color:#1d293db3}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-slate-800\/70:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-slate-800) 70%, transparent)}}.dark\:hover\:text-blue-300:where(.dark,.dark *):hover{color:var(--color-blue-300)}.dark\:hover\:text-slate-100:where(.dark,.dark *):hover{color:var(--color-slate-100)}}.dark\:data-\[state\=active\]\:bg-slate-800:where(.dark,.dark *)[data-state=active]{background-color:var(--color-slate-800)}.dark\:data-\[state\=active\]\:text-sky-300:where(.dark,.dark *)[data-state=active]{color:var(--color-sky-300)}.dark\:data-\[state\=active\]\:text-slate-100:where(.dark,.dark *)[data-state=active]{color:var(--color-slate-100)}.\[\&_\.directory-tree-name\]\:text-sky-700 .directory-tree-name{color:var(--color-sky-700)}.dark\:\[\&_\.directory-tree-name\]\:text-sky-300:where(.dark,.dark *) .directory-tree-name{color:var(--color-sky-300)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0), var(--tw-enter-translate-y,0), 0) scale3d(var(--tw-enter-scale,1), var(--tw-enter-scale,1), var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0), var(--tw-exit-translate-y,0), 0) scale3d(var(--tw-exit-scale,1), var(--tw-exit-scale,1), var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-pan-x{syntax:"*";inherits:false}@property --tw-pan-y{syntax:"*";inherits:false}@property --tw-pinch-zoom{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}
3
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-pan-x:initial;--tw-pan-y:initial;--tw-pinch-zoom:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-orange-300:oklch(83.7% .128 66.29);--color-orange-400:oklch(75% .183 55.934);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-950:oklch(27.9% .077 45.635);--color-yellow-200:oklch(94.5% .129 101.54);--color-lime-300:oklch(89.7% .196 126.665);--color-lime-700:oklch(53.2% .157 131.589);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-950:oklch(26.2% .051 172.552);--color-teal-200:oklch(91% .096 180.426);--color-teal-300:oklch(85.5% .138 181.071);--color-teal-400:oklch(77.7% .152 181.912);--color-teal-600:oklch(60% .118 184.704);--color-teal-700:oklch(51.1% .096 186.391);--color-cyan-200:oklch(91.7% .08 205.041);--color-cyan-300:oklch(86.5% .127 207.078);--color-cyan-400:oklch(78.9% .154 211.53);--color-cyan-600:oklch(60.9% .126 221.723);--color-cyan-700:oklch(52% .105 223.128);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-300:oklch(82.8% .111 230.318);--color-sky-400:oklch(74.6% .16 232.661);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-sky-700:oklch(50% .134 242.749);--color-sky-800:oklch(44.3% .11 240.79);--color-sky-900:oklch(39.1% .09 240.876);--color-sky-950:oklch(29.3% .066 243.157);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-300:oklch(78.5% .115 274.713);--color-indigo-400:oklch(67.3% .182 276.935);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-700:oklch(45.7% .24 277.023);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-300:oklch(81.1% .111 293.571);--color-violet-400:oklch(70.2% .183 293.541);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-700:oklch(49.1% .27 292.581);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-300:oklch(82.7% .119 306.383);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-700:oklch(49.6% .265 301.924);--color-purple-800:oklch(43.8% .218 303.724);--color-purple-900:oklch(38.1% .176 304.987);--color-fuchsia-200:oklch(90.3% .076 319.62);--color-fuchsia-300:oklch(83.3% .145 321.434);--color-fuchsia-400:oklch(74% .238 322.16);--color-fuchsia-700:oklch(51.8% .253 323.949);--color-pink-200:oklch(89.9% .061 343.231);--color-pink-300:oklch(82.3% .12 346.018);--color-pink-400:oklch(71.8% .202 349.761);--color-pink-600:oklch(59.2% .249 .584);--color-pink-700:oklch(52.5% .223 3.958);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-300:oklch(81% .117 11.638);--color-rose-400:oklch(71.2% .194 13.428);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-600:oklch(58.6% .253 17.585);--color-rose-700:oklch(51.4% .222 16.935);--color-rose-800:oklch(45.5% .188 13.697);--color-rose-900:oklch(41% .159 10.272);--color-rose-950:oklch(27.1% .105 12.094);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--radius-sm:calc(var(--radius,.5rem) - 4px);--radius-md:calc(var(--radius,.5rem) - 2px);--radius-lg:var(--radius,.5rem);--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-ring:hsl(var(--ring));--color-background:hsl(var(--background));--color-foreground:hsl(var(--foreground));--color-primary:hsl(var(--primary));--color-muted:hsl(var(--muted));--color-muted-foreground:hsl(var(--muted-foreground))}}@layer base,components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.right-0{right:calc(var(--spacing) * 0)}.bottom-0{bottom:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.z-50{z-index:50}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.mt-0{margin-top:calc(var(--spacing) * 0)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-0{margin-bottom:calc(var(--spacing) * 0)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:calc(var(--spacing) * 1)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-\[64px\]{height:64px}.h-full{height:100%}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-40{min-height:calc(var(--spacing) * 40)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-1\/3{width:33.3333%}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-28{width:calc(var(--spacing) * 28)}.w-full{width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-16{min-width:calc(var(--spacing) * 16)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-ping{animation:var(--animate-ping)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-not-allowed{cursor:not-allowed}.touch-pan-x{--tw-pan-x:pan-x;touch-action:var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)}.touch-pan-y{--tw-pan-y:pan-y;touch-action:var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)}.touch-manipulation{touch-action:manipulation}.resize{resize:both}.scrollbar-none{scrollbar-width:none}.scrollbar-thin{scrollbar-width:thin}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 1) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-1\.5{row-gap:calc(var(--spacing) * 1.5)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-lg{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-solid{--tw-border-style:solid;border-style:solid}.border-amber-200{border-color:var(--color-amber-200)}.border-amber-400{border-color:var(--color-amber-400)}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-300{border-color:var(--color-blue-300)}.border-blue-500{border-color:var(--color-blue-500)}.border-cyan-200{border-color:var(--color-cyan-200)}.border-emerald-200{border-color:var(--color-emerald-200)}.border-fuchsia-200{border-color:var(--color-fuchsia-200)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-green-200{border-color:var(--color-green-200)}.border-green-300{border-color:var(--color-green-300)}.border-indigo-200{border-color:var(--color-indigo-200)}.border-pink-200{border-color:var(--color-pink-200)}.border-purple-200{border-color:var(--color-purple-200)}.border-purple-300{border-color:var(--color-purple-300)}.border-rose-200{border-color:var(--color-rose-200)}.border-rose-300{border-color:var(--color-rose-300)}.border-sky-200{border-color:var(--color-sky-200)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.border-teal-200{border-color:var(--color-teal-200)}.border-violet-200{border-color:var(--color-violet-200)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-amber-400{background-color:var(--color-amber-400)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-200{background-color:var(--color-blue-200)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-300{background-color:var(--color-gray-300)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-muted{background-color:var(--color-muted)}.bg-orange-500{background-color:var(--color-orange-500)}.bg-primary{background-color:var(--color-primary)}.bg-primary\/20{background-color:color-mix(in srgb, hsl(var(--primary)) 20%, transparent)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, var(--color-primary) 20%, transparent)}}.bg-purple-50\/60{background-color:#faf5ff99}@supports (color:color-mix(in lab, red, red)){.bg-purple-50\/60{background-color:color-mix(in oklab, var(--color-purple-50) 60%, transparent)}}.bg-purple-100{background-color:var(--color-purple-100)}.bg-purple-500{background-color:var(--color-purple-500)}.bg-red-500{background-color:var(--color-red-500)}.bg-rose-50{background-color:var(--color-rose-50)}.bg-rose-500{background-color:var(--color-rose-500)}.bg-sky-50{background-color:var(--color-sky-50)}.bg-sky-50\/70{background-color:#f0f9ffb3}@supports (color:color-mix(in lab, red, red)){.bg-sky-50\/70{background-color:color-mix(in oklab, var(--color-sky-50) 70%, transparent)}}.bg-sky-100\/55{background-color:#dff2fe8c}@supports (color:color-mix(in lab, red, red)){.bg-sky-100\/55{background-color:color-mix(in oklab, var(--color-sky-100) 55%, transparent)}}.bg-sky-100\/70{background-color:#dff2feb3}@supports (color:color-mix(in lab, red, red)){.bg-sky-100\/70{background-color:color-mix(in oklab, var(--color-sky-100) 70%, transparent)}}.bg-sky-400{background-color:var(--color-sky-400)}.bg-sky-500{background-color:var(--color-sky-500)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-100\/70{background-color:#f1f5f9b3}@supports (color:color-mix(in lab, red, red)){.bg-slate-100\/70{background-color:color-mix(in oklab, var(--color-slate-100) 70%, transparent)}}.bg-slate-900\/50{background-color:#0f172b80}@supports (color:color-mix(in lab, red, red)){.bg-slate-900\/50{background-color:color-mix(in oklab, var(--color-slate-900) 50%, transparent)}}.bg-white{background-color:var(--color-white)}.bg-white\/40{background-color:#fff6}@supports (color:color-mix(in lab, red, red)){.bg-white\/40{background-color:color-mix(in oklab, var(--color-white) 40%, transparent)}}.bg-white\/60{background-color:#fff9}@supports (color:color-mix(in lab, red, red)){.bg-white\/60{background-color:color-mix(in oklab, var(--color-white) 60%, transparent)}}.bg-white\/70{background-color:#ffffffb3}@supports (color:color-mix(in lab, red, red)){.bg-white\/70{background-color:color-mix(in oklab, var(--color-white) 70%, transparent)}}.bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab, red, red)){.bg-white\/80{background-color:color-mix(in oklab, var(--color-white) 80%, transparent)}}.bg-yellow-200{background-color:var(--color-yellow-200)}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.pr-0\.75{padding-right:calc(var(--spacing) * .75)}.pr-1{padding-right:calc(var(--spacing) * 1)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pb-0\.5{padding-bottom:calc(var(--spacing) * .5)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pl-1{padding-left:calc(var(--spacing) * 1)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-1{--tw-leading:calc(var(--spacing) * 1);line-height:calc(var(--spacing) * 1)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-nowrap{text-wrap:nowrap}.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-cyan-600{color:var(--color-cyan-600)}.text-cyan-700{color:var(--color-cyan-700)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-fuchsia-700{color:var(--color-fuchsia-700)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-indigo-600{color:var(--color-indigo-600)}.text-indigo-700{color:var(--color-indigo-700)}.text-inherit{color:inherit}.text-lime-700{color:var(--color-lime-700)}.text-muted-foreground{color:var(--color-muted-foreground)}.text-orange-500{color:var(--color-orange-500)}.text-orange-600{color:var(--color-orange-600)}.text-pink-600{color:var(--color-pink-600)}.text-pink-700{color:var(--color-pink-700)}.text-purple-600{color:var(--color-purple-600)}.text-purple-700{color:var(--color-purple-700)}.text-red-600{color:var(--color-red-600)}.text-rose-600{color:var(--color-rose-600)}.text-rose-700{color:var(--color-rose-700)}.text-sky-500{color:var(--color-sky-500)}.text-sky-600{color:var(--color-sky-600)}.text-sky-700{color:var(--color-sky-700)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-teal-600{color:var(--color-teal-600)}.text-teal-700{color:var(--color-teal-700)}.text-violet-600{color:var(--color-violet-600)}.text-violet-700{color:var(--color-violet-700)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-blue-200{--tw-ring-color:var(--color-blue-200)}.ring-offset-background{--tw-ring-offset-color:var(--color-background)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[visibility\]{transition-property:visibility;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-transform{will-change:transform}.duration-150{animation-duration:.15s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}@media (hover:hover){.hover\:border-blue-400:hover{border-color:var(--color-blue-400)}.hover\:bg-amber-200:hover{background-color:var(--color-amber-200)}.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-blue-600:hover{background-color:var(--color-blue-600)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-green-200:hover{background-color:var(--color-green-200)}.hover\:bg-purple-200:hover{background-color:var(--color-purple-200)}.hover\:bg-red-600:hover{background-color:var(--color-red-600)}.hover\:bg-rose-100:hover{background-color:var(--color-rose-100)}.hover\:bg-slate-100:hover{background-color:var(--color-slate-100)}.hover\:bg-slate-200\/60:hover{background-color:#e2e8f099}@supports (color:color-mix(in lab, red, red)){.hover\:bg-slate-200\/60:hover{background-color:color-mix(in oklab, var(--color-slate-200) 60%, transparent)}}.hover\:text-blue-500:hover{color:var(--color-blue-500)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:text-slate-700:hover{color:var(--color-slate-700)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\:underline:focus{text-decoration-line:underline}.focus\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-blue-200:focus-visible{--tw-ring-color:var(--color-blue-200)}.focus-visible\:ring-blue-500:focus-visible{--tw-ring-color:var(--color-blue-500)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--color-ring)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--color-background)}.data-\[state\=active\]\:bg-white[data-state=active]{background-color:var(--color-white)}.data-\[state\=active\]\:text-blue-600[data-state=active]{color:var(--color-blue-600)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--color-foreground)}.data-\[state\=active\]\:shadow-2xs[data-state=active]{--tw-shadow:0 1px var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[state\=inactive\]\:hidden[data-state=inactive]{display:none}@media (min-width:640px){.sm\:ml-2{margin-left:calc(var(--spacing) * 2)}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:grid{display:grid}.sm\:hidden{display:none}.sm\:inline{display:inline}.sm\:h-3\.5{height:calc(var(--spacing) * 3.5)}.sm\:w-3\.5{width:calc(var(--spacing) * 3.5)}.sm\:min-w-12{min-width:calc(var(--spacing) * 12)}.sm\:min-w-24{min-width:calc(var(--spacing) * 24)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:p-4{padding:calc(var(--spacing) * 4)}.sm\:px-2{padding-inline:calc(var(--spacing) * 2)}.sm\:px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.sm\:py-0\.5{padding-block:calc(var(--spacing) * .5)}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.sm\:text-\[11px\]{font-size:11px}}@media (min-width:1280px){.xl\:flex{display:flex}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)_minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto}}@media (min-width:1536px){.\32 xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.dark\:border-amber-400\/60:where(.dark,.dark *){border-color:#fcbb0099}@supports (color:color-mix(in lab, red, red)){.dark\:border-amber-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-amber-400) 60%, transparent)}}.dark\:border-amber-500\/70:where(.dark,.dark *){border-color:#f99c00b3}@supports (color:color-mix(in lab, red, red)){.dark\:border-amber-500\/70:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-amber-500) 70%, transparent)}}.dark\:border-amber-800:where(.dark,.dark *){border-color:var(--color-amber-800)}.dark\:border-blue-400:where(.dark,.dark *){border-color:var(--color-blue-400)}.dark\:border-blue-400\/60:where(.dark,.dark *){border-color:#54a2ff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-blue-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-blue-400) 60%, transparent)}}.dark\:border-blue-500:where(.dark,.dark *){border-color:var(--color-blue-500)}.dark\:border-blue-500\/40:where(.dark,.dark *){border-color:#3080ff66}@supports (color:color-mix(in lab, red, red)){.dark\:border-blue-500\/40:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-blue-500) 40%, transparent)}}.dark\:border-blue-500\/50:where(.dark,.dark *){border-color:#3080ff80}@supports (color:color-mix(in lab, red, red)){.dark\:border-blue-500\/50:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-blue-500) 50%, transparent)}}.dark\:border-blue-500\/60:where(.dark,.dark *){border-color:#3080ff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-blue-500\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-blue-500) 60%, transparent)}}.dark\:border-cyan-400\/60:where(.dark,.dark *){border-color:#00d2ef99}@supports (color:color-mix(in lab, red, red)){.dark\:border-cyan-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-cyan-400) 60%, transparent)}}.dark\:border-emerald-400\/60:where(.dark,.dark *){border-color:#00d29499}@supports (color:color-mix(in lab, red, red)){.dark\:border-emerald-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-emerald-400) 60%, transparent)}}.dark\:border-emerald-800:where(.dark,.dark *){border-color:var(--color-emerald-800)}.dark\:border-fuchsia-400\/60:where(.dark,.dark *){border-color:#ec6cff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-fuchsia-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-fuchsia-400) 60%, transparent)}}.dark\:border-green-400\/60:where(.dark,.dark *){border-color:#05df7299}@supports (color:color-mix(in lab, red, red)){.dark\:border-green-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-green-400) 60%, transparent)}}.dark\:border-indigo-400\/60:where(.dark,.dark *){border-color:#7d87ff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-indigo-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-indigo-400) 60%, transparent)}}.dark\:border-indigo-500\/60:where(.dark,.dark *){border-color:#625fff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-indigo-500\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-indigo-500) 60%, transparent)}}.dark\:border-pink-400\/60:where(.dark,.dark *){border-color:#fb64b699}@supports (color:color-mix(in lab, red, red)){.dark\:border-pink-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-pink-400) 60%, transparent)}}.dark\:border-purple-400\/60:where(.dark,.dark *){border-color:#c07eff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-purple-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-purple-400) 60%, transparent)}}.dark\:border-rose-400\/60:where(.dark,.dark *){border-color:#ff667f99}@supports (color:color-mix(in lab, red, red)){.dark\:border-rose-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-rose-400) 60%, transparent)}}.dark\:border-rose-700:where(.dark,.dark *){border-color:var(--color-rose-700)}.dark\:border-rose-800:where(.dark,.dark *){border-color:var(--color-rose-800)}.dark\:border-sky-400\/60:where(.dark,.dark *){border-color:#00bcfe99}@supports (color:color-mix(in lab, red, red)){.dark\:border-sky-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-sky-400) 60%, transparent)}}.dark\:border-sky-800:where(.dark,.dark *){border-color:var(--color-sky-800)}.dark\:border-slate-600:where(.dark,.dark *){border-color:var(--color-slate-600)}.dark\:border-slate-700:where(.dark,.dark *){border-color:var(--color-slate-700)}.dark\:border-teal-400\/60:where(.dark,.dark *){border-color:#00d3bd99}@supports (color:color-mix(in lab, red, red)){.dark\:border-teal-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-teal-400) 60%, transparent)}}.dark\:border-transparent:where(.dark,.dark *){border-color:#0000}.dark\:border-violet-400\/60:where(.dark,.dark *){border-color:#a685ff99}@supports (color:color-mix(in lab, red, red)){.dark\:border-violet-400\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-violet-400) 60%, transparent)}}.dark\:bg-amber-300\/20:where(.dark,.dark *){background-color:#ffd23633}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-300\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-amber-300) 20%, transparent)}}.dark\:bg-amber-950\/60:where(.dark,.dark *){background-color:#46190199}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-950\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-amber-950) 60%, transparent)}}.dark\:bg-blue-400:where(.dark,.dark *){background-color:var(--color-blue-400)}.dark\:bg-blue-500:where(.dark,.dark *){background-color:var(--color-blue-500)}.dark\:bg-blue-500\/20:where(.dark,.dark *){background-color:#3080ff33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-500\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-blue-500) 20%, transparent)}}.dark\:bg-blue-800:where(.dark,.dark *){background-color:var(--color-blue-800)}.dark\:bg-blue-900\/30:where(.dark,.dark *){background-color:#1c398e4d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-900\/30:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-blue-900) 30%, transparent)}}.dark\:bg-blue-900\/40:where(.dark,.dark *){background-color:#1c398e66}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-900\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-blue-900) 40%, transparent)}}.dark\:bg-emerald-300\/20:where(.dark,.dark *){background-color:#5ee9b533}@supports (color:color-mix(in lab, red, red)){.dark\:bg-emerald-300\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-emerald-300) 20%, transparent)}}.dark\:bg-emerald-950\/60:where(.dark,.dark *){background-color:#002c2299}@supports (color:color-mix(in lab, red, red)){.dark\:bg-emerald-950\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-emerald-950) 60%, transparent)}}.dark\:bg-green-500:where(.dark,.dark *){background-color:var(--color-green-500)}.dark\:bg-green-900\/20:where(.dark,.dark *){background-color:#0d542b33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-green-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-green-900) 20%, transparent)}}.dark\:bg-orange-500:where(.dark,.dark *){background-color:var(--color-orange-500)}.dark\:bg-purple-500:where(.dark,.dark *){background-color:var(--color-purple-500)}.dark\:bg-purple-900\/20:where(.dark,.dark *){background-color:#59168b33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-purple-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-purple-900) 20%, transparent)}}.dark\:bg-rose-900\/30:where(.dark,.dark *){background-color:#8b08364d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-rose-900\/30:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-rose-900) 30%, transparent)}}.dark\:bg-rose-900\/40:where(.dark,.dark *){background-color:#8b083666}@supports (color:color-mix(in lab, red, red)){.dark\:bg-rose-900\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-rose-900) 40%, transparent)}}.dark\:bg-rose-950:where(.dark,.dark *){background-color:var(--color-rose-950)}.dark\:bg-rose-950\/60:where(.dark,.dark *){background-color:#4d021899}@supports (color:color-mix(in lab, red, red)){.dark\:bg-rose-950\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-rose-950) 60%, transparent)}}.dark\:bg-sky-900\/40:where(.dark,.dark *){background-color:#024a7066}@supports (color:color-mix(in lab, red, red)){.dark\:bg-sky-900\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-sky-900) 40%, transparent)}}.dark\:bg-sky-900\/55:where(.dark,.dark *){background-color:#024a708c}@supports (color:color-mix(in lab, red, red)){.dark\:bg-sky-900\/55:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-sky-900) 55%, transparent)}}.dark\:bg-sky-950\/60:where(.dark,.dark *){background-color:#052f4a99}@supports (color:color-mix(in lab, red, red)){.dark\:bg-sky-950\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-sky-950) 60%, transparent)}}.dark\:bg-slate-700:where(.dark,.dark *){background-color:var(--color-slate-700)}.dark\:bg-slate-800:where(.dark,.dark *){background-color:var(--color-slate-800)}.dark\:bg-slate-800\/60:where(.dark,.dark *){background-color:#1d293d99}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-800\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-800) 60%, transparent)}}.dark\:bg-slate-800\/70:where(.dark,.dark *){background-color:#1d293db3}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-800\/70:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-800) 70%, transparent)}}.dark\:bg-slate-800\/80:where(.dark,.dark *){background-color:#1d293dcc}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-800\/80:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-800) 80%, transparent)}}.dark\:bg-slate-900:where(.dark,.dark *){background-color:var(--color-slate-900)}.dark\:bg-slate-900\/40:where(.dark,.dark *){background-color:#0f172b66}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-900\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-900) 40%, transparent)}}.dark\:bg-slate-900\/50:where(.dark,.dark *){background-color:#0f172b80}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-900\/50:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-900) 50%, transparent)}}.dark\:bg-slate-900\/60:where(.dark,.dark *){background-color:#0f172b99}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-900\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-900) 60%, transparent)}}.dark\:bg-slate-900\/70:where(.dark,.dark *){background-color:#0f172bb3}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-900\/70:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-900) 70%, transparent)}}.dark\:bg-slate-900\/80:where(.dark,.dark *){background-color:#0f172bcc}@supports (color:color-mix(in lab, red, red)){.dark\:bg-slate-900\/80:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-slate-900) 80%, transparent)}}.dark\:bg-slate-950:where(.dark,.dark *){background-color:var(--color-slate-950)}.dark\:text-amber-200:where(.dark,.dark *){color:var(--color-amber-200)}.dark\:text-amber-300:where(.dark,.dark *){color:var(--color-amber-300)}.dark\:text-blue-200:where(.dark,.dark *){color:var(--color-blue-200)}.dark\:text-blue-300:where(.dark,.dark *){color:var(--color-blue-300)}.dark\:text-cyan-300:where(.dark,.dark *){color:var(--color-cyan-300)}.dark\:text-emerald-200:where(.dark,.dark *){color:var(--color-emerald-200)}.dark\:text-emerald-300:where(.dark,.dark *){color:var(--color-emerald-300)}.dark\:text-fuchsia-300:where(.dark,.dark *){color:var(--color-fuchsia-300)}.dark\:text-green-200:where(.dark,.dark *){color:var(--color-green-200)}.dark\:text-green-300:where(.dark,.dark *){color:var(--color-green-300)}.dark\:text-indigo-300:where(.dark,.dark *){color:var(--color-indigo-300)}.dark\:text-indigo-400:where(.dark,.dark *){color:var(--color-indigo-400)}.dark\:text-lime-300:where(.dark,.dark *){color:var(--color-lime-300)}.dark\:text-orange-300:where(.dark,.dark *){color:var(--color-orange-300)}.dark\:text-orange-400:where(.dark,.dark *){color:var(--color-orange-400)}.dark\:text-pink-300:where(.dark,.dark *){color:var(--color-pink-300)}.dark\:text-purple-200:where(.dark,.dark *){color:var(--color-purple-200)}.dark\:text-purple-300:where(.dark,.dark *){color:var(--color-purple-300)}.dark\:text-red-400:where(.dark,.dark *){color:var(--color-red-400)}.dark\:text-rose-200:where(.dark,.dark *){color:var(--color-rose-200)}.dark\:text-rose-300:where(.dark,.dark *){color:var(--color-rose-300)}.dark\:text-sky-200:where(.dark,.dark *){color:var(--color-sky-200)}.dark\:text-sky-300:where(.dark,.dark *){color:var(--color-sky-300)}.dark\:text-sky-400:where(.dark,.dark *){color:var(--color-sky-400)}.dark\:text-slate-100:where(.dark,.dark *){color:var(--color-slate-100)}.dark\:text-slate-200:where(.dark,.dark *){color:var(--color-slate-200)}.dark\:text-slate-300:where(.dark,.dark *){color:var(--color-slate-300)}.dark\:text-slate-400:where(.dark,.dark *){color:var(--color-slate-400)}.dark\:text-slate-500:where(.dark,.dark *){color:var(--color-slate-500)}.dark\:text-teal-300:where(.dark,.dark *){color:var(--color-teal-300)}.dark\:text-violet-300:where(.dark,.dark *){color:var(--color-violet-300)}.dark\:text-white:where(.dark,.dark *){color:var(--color-white)}.dark\:shadow-none:where(.dark,.dark *){--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.dark\:ring-1:where(.dark,.dark *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.dark\:shadow-blue-900\/30:where(.dark,.dark *){--tw-shadow-color:#1c398e4d}@supports (color:color-mix(in lab, red, red)){.dark\:shadow-blue-900\/30:where(.dark,.dark *){--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-blue-900) 30%, transparent) var(--tw-shadow-alpha), transparent)}}.dark\:shadow-slate-950\/40:where(.dark,.dark *){--tw-shadow-color:#02061866}@supports (color:color-mix(in lab, red, red)){.dark\:shadow-slate-950\/40:where(.dark,.dark *){--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-slate-950) 40%, transparent) var(--tw-shadow-alpha), transparent)}}.dark\:ring-blue-500\/40:where(.dark,.dark *){--tw-ring-color:#3080ff66}@supports (color:color-mix(in lab, red, red)){.dark\:ring-blue-500\/40:where(.dark,.dark *){--tw-ring-color:color-mix(in oklab, var(--color-blue-500) 40%, transparent)}}.dark\:ring-white\/70:where(.dark,.dark *){--tw-ring-color:#ffffffb3}@supports (color:color-mix(in lab, red, red)){.dark\:ring-white\/70:where(.dark,.dark *){--tw-ring-color:color-mix(in oklab, var(--color-white) 70%, transparent)}}@media (hover:hover){.dark\:hover\:border-blue-400:where(.dark,.dark *):hover{border-color:var(--color-blue-400)}.dark\:hover\:bg-amber-300\/30:where(.dark,.dark *):hover{background-color:#ffd2364d}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-amber-300\/30:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-amber-300) 30%, transparent)}}.dark\:hover\:bg-blue-500\/10:where(.dark,.dark *):hover{background-color:#3080ff1a}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-blue-500\/10:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-blue-500) 10%, transparent)}}.dark\:hover\:bg-blue-600:where(.dark,.dark *):hover{background-color:var(--color-blue-600)}.dark\:hover\:bg-green-800\/30:where(.dark,.dark *):hover{background-color:#0166304d}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-green-800\/30:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-green-800) 30%, transparent)}}.dark\:hover\:bg-purple-800\/30:where(.dark,.dark *):hover{background-color:#6e11b04d}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-purple-800\/30:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-purple-800) 30%, transparent)}}.dark\:hover\:bg-red-700:where(.dark,.dark *):hover{background-color:var(--color-red-700)}.dark\:hover\:bg-rose-900:where(.dark,.dark *):hover{background-color:var(--color-rose-900)}.dark\:hover\:bg-slate-700:where(.dark,.dark *):hover{background-color:var(--color-slate-700)}.dark\:hover\:bg-slate-700\/60:where(.dark,.dark *):hover{background-color:#31415899}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-slate-700\/60:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-slate-700) 60%, transparent)}}.dark\:hover\:bg-slate-700\/70:where(.dark,.dark *):hover{background-color:#314158b3}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-slate-700\/70:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-slate-700) 70%, transparent)}}.dark\:hover\:bg-slate-800:where(.dark,.dark *):hover{background-color:var(--color-slate-800)}.dark\:hover\:bg-slate-800\/70:where(.dark,.dark *):hover{background-color:#1d293db3}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-slate-800\/70:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-slate-800) 70%, transparent)}}.dark\:hover\:text-blue-300:where(.dark,.dark *):hover{color:var(--color-blue-300)}.dark\:hover\:text-slate-100:where(.dark,.dark *):hover{color:var(--color-slate-100)}}.dark\:data-\[state\=active\]\:bg-slate-800:where(.dark,.dark *)[data-state=active]{background-color:var(--color-slate-800)}.dark\:data-\[state\=active\]\:text-sky-300:where(.dark,.dark *)[data-state=active]{color:var(--color-sky-300)}.dark\:data-\[state\=active\]\:text-slate-100:where(.dark,.dark *)[data-state=active]{color:var(--color-slate-100)}.\[\&_\.directory-tree-name\]\:text-sky-700 .directory-tree-name{color:var(--color-sky-700)}.dark\:\[\&_\.directory-tree-name\]\:text-sky-300:where(.dark,.dark *) .directory-tree-name{color:var(--color-sky-300)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0), var(--tw-enter-translate-y,0), 0) scale3d(var(--tw-enter-scale,1), var(--tw-enter-scale,1), var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0), var(--tw-exit-translate-y,0), 0) scale3d(var(--tw-exit-scale,1), var(--tw-exit-scale,1), var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-pan-x{syntax:"*";inherits:false}@property --tw-pan-y{syntax:"*";inherits:false}@property --tw-pinch-zoom{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}
@@ -23,6 +23,7 @@ interface ContactMapDirectoryEntry {
23
23
  absolutePath: string;
24
24
  relativePath: string;
25
25
  children?: ContactMapDirectoryEntry[];
26
+ memberCount?: number;
26
27
  personId?: number;
27
28
  title?: string;
28
29
  isPrimary?: boolean;
@@ -34,4 +35,8 @@ interface ContactRecordForTree {
34
35
  department: string | null;
35
36
  title: string | null;
36
37
  }
37
- export { type ContactMapDirectoryEntry as C, DEFAULT_LIST_LAYOUT_SPEC as D, type ResponsiveLayoutSpec as R, type ResponsiveThresholds as a, type ContactRecordForTree as b, DEFAULT_TREE_LAYOUT_SPEC as c, calculateResponsiveThresholds as d, getHysteresisBreakpointState as g };
38
+ type ContactMapTreeNaming = {
39
+ readonly uncategorizedCompany: string;
40
+ readonly unnamedPerson: string;
41
+ };
42
+ export { type ContactMapDirectoryEntry as C, DEFAULT_LIST_LAYOUT_SPEC as D, type ResponsiveLayoutSpec as R, type ResponsiveThresholds as a, type ContactRecordForTree as b, type ContactMapTreeNaming as c, DEFAULT_TREE_LAYOUT_SPEC as d, calculateResponsiveThresholds as e, getHysteresisBreakpointState as g };