@objectstack/console 9.3.0 → 9.4.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.
Files changed (100) hide show
  1. package/dist/assets/AdapterProvider-BNNEwHx0.js +1 -0
  2. package/dist/assets/{AiPendingActionsPage-Y9r83gqj.js → AiPendingActionsPage-DOSHy962.js} +1 -1
  3. package/dist/assets/ApiConsolePage-CruwU0Up.js +1 -0
  4. package/dist/assets/{AppManagementPage-0JEALVYK.js → AppManagementPage-BohnYqad.js} +1 -1
  5. package/dist/assets/ApprovalsInboxPage-BGmv2uNL.js +1 -0
  6. package/dist/assets/{AuditLogPage-CXhNSVOU.js → AuditLogPage-KrpMMNiw.js} +1 -1
  7. package/dist/assets/{ComponentNavView-BI4O_zkC.js → ComponentNavView-JMyYlvFq.js} +1 -1
  8. package/dist/assets/ConsoleFloatingChatbot-C7wdj16w.js +1 -0
  9. package/dist/assets/DashboardView-DUqOAEyx.js +1 -0
  10. package/dist/assets/DashboardWidgetInspector-Dhe9hv9A.js +1 -0
  11. package/dist/assets/{DeveloperHubPage-D-UigRUA.js → DeveloperHubPage-D4ErhCeD.js} +1 -1
  12. package/dist/assets/ExpressionProvider-Cj6XEnZF.js +1 -0
  13. package/dist/assets/FlowRunsPage-CJsr4xgF.js +1 -0
  14. package/dist/assets/{IntegrationsPage-DsWyxKR6.js → IntegrationsPage-zbcGFqxM.js} +2 -2
  15. package/dist/assets/InterfaceListPage-BJRTel_h.js +1 -0
  16. package/dist/assets/ManagedByBadge-DOMbPlbf.js +1 -0
  17. package/dist/assets/MarketplaceInstalledPage-CSgqJuot.js +1 -0
  18. package/dist/assets/MarketplacePackagePage-0TU_eJIx.js +4 -0
  19. package/dist/assets/MarketplacePage-YO75QMEO.js +1 -0
  20. package/dist/assets/MetadataInspector-CamKLf7x.js +1 -0
  21. package/dist/assets/MetadataProvider-Bxendsnd.js +1 -0
  22. package/dist/assets/PageView-z1PfFaQS.js +1 -0
  23. package/dist/assets/ProfilePage-5QuBSV4z.js +1 -0
  24. package/dist/assets/PublicFormsPage-CMTz6MfD.js +1 -0
  25. package/dist/assets/{RecentItemsProvider-DiJIrHwK.js → RecentItemsProvider-gLV-GFpQ.js} +1 -1
  26. package/dist/assets/RecordDetailView-DOcGflPY.js +1 -0
  27. package/dist/assets/RecordFormPage-C1M3jdnG.js +1 -0
  28. package/dist/assets/ReportDefaultInspector-DDBJTAYx.js +1 -0
  29. package/dist/assets/ReportView-CItKDFSn.js +2 -0
  30. package/dist/assets/RuntimeDraftBar-QF3pF8K2.js +1 -0
  31. package/dist/assets/SearchResultsPage-Mdphx8Ca.js +1 -0
  32. package/dist/assets/{SettingsHub-B4oSx4ed.js → SettingsHub-CtfOIqOJ.js} +1 -1
  33. package/dist/assets/SettingsView-One2JiPG.js +1 -0
  34. package/dist/assets/{SystemHubPage-Di6eqozE.js → SystemHubPage-Dzi5_s3T.js} +1 -1
  35. package/dist/assets/appRoute-D5vwtoc_.js +1 -0
  36. package/dist/assets/data-adapter-Dl2IvbPC.js +1 -0
  37. package/dist/assets/{framework-crD8qZlm.js → framework-D7UWfRl4.js} +10 -10
  38. package/dist/assets/{highlighted-body-OFNGDK62-B3OlR_Nx.js → highlighted-body-OFNGDK62-Dgcl8-h_.js} +1 -1
  39. package/dist/assets/index-BjfDho4T.js +4 -0
  40. package/dist/assets/index-CJFqfWpW.css +2 -0
  41. package/dist/assets/infrastructure-ckitl7Ev.js +3 -0
  42. package/dist/assets/marketplaceApi-Do90JxGv.js +1 -0
  43. package/dist/assets/mergeServerFields-Co1NIO7_.js +7 -0
  44. package/dist/assets/mermaid-GHXKKRXX-BY4z2Mh6.js +1 -0
  45. package/dist/assets/metadata-admin-B-99o4dC.js +19 -0
  46. package/dist/assets/plugin-calendar-DSvXqOQV.js +1 -0
  47. package/dist/assets/plugin-charts-EoSn84Ag.js +7 -0
  48. package/dist/assets/plugin-chatbot-D6s22V14.js +120 -0
  49. package/dist/assets/plugin-dashboard-PEMuLOVn.js +5 -0
  50. package/dist/assets/plugin-form-MXrWd_1Z.js +1 -0
  51. package/dist/assets/plugin-gantt-CB1bbY8J.js +23 -0
  52. package/dist/assets/plugin-grid-D9HjQh3d.js +6 -0
  53. package/dist/assets/plugin-kanban-BxxI6fit.js +1 -0
  54. package/dist/assets/{plugin-map-C8Jxhxs1.js → plugin-map-B-TiJAz8.js} +1 -1
  55. package/dist/assets/plugin-markdown-BUIHw2kZ.js +113 -0
  56. package/dist/assets/plugin-report-jQPIUbaf.js +59 -0
  57. package/dist/assets/plugin-timeline-BNRp2sKQ.js +1 -0
  58. package/dist/assets/plugin-view-BeiRMGis.js +1 -0
  59. package/dist/assets/plugins-views-D0zS0yz2.js +4 -0
  60. package/dist/assets/resolveActionParams-eRBdMG9b.js +9 -0
  61. package/dist/assets/skeletons-DNzeXHI1.js +1 -0
  62. package/dist/assets/{src-Tw2eleSi.js → src-LBsSMdO2.js} +1 -1
  63. package/dist/assets/{types-BkFEpiv3.js → types-D2P-aXxM.js} +1 -1
  64. package/dist/assets/ui-components-Clv7N77v.js +42 -0
  65. package/dist/assets/{ui-layout-KICrO2Oe.js → ui-layout-DYMEUX5t.js} +1 -1
  66. package/dist/assets/useActionModal-VGsmP3uO.js +1 -0
  67. package/dist/assets/usePackageL10n-shLsxEAx.js +1 -0
  68. package/dist/assets/utils-bipVuqQL.js +1 -0
  69. package/dist/assets/vendor-markdown-BXE1apAC.js +46 -0
  70. package/dist/index.html +4 -4
  71. package/package.json +1 -1
  72. package/dist/assets/ApiConsolePage-Dwbms0Zh.js +0 -1
  73. package/dist/assets/ApprovalsInboxPage-B-drSsxQ.js +0 -1
  74. package/dist/assets/ConsoleFloatingChatbot-CiODZIcp.js +0 -1
  75. package/dist/assets/FlowRunsPage-_UeeNdBc.js +0 -1
  76. package/dist/assets/ProfilePage-T27zVrMO.js +0 -1
  77. package/dist/assets/PublicFormsPage-Pd453sW6.js +0 -1
  78. package/dist/assets/SettingsView-CkQEI5DW.js +0 -1
  79. package/dist/assets/assistantBus-B-xBT6j1.js +0 -1
  80. package/dist/assets/data-adapter-3AJO7A2o.js +0 -1
  81. package/dist/assets/index-Cf7NsvAk.css +0 -2
  82. package/dist/assets/index-CiI7zDDo.js +0 -32
  83. package/dist/assets/infrastructure-CxityHZF.js +0 -3
  84. package/dist/assets/mergeServerFields-DUkbynPg.js +0 -7
  85. package/dist/assets/mermaid-GHXKKRXX-CBocchJ2.js +0 -1
  86. package/dist/assets/plugin-calendar-ed7RoEFF.js +0 -1
  87. package/dist/assets/plugin-charts-QabQJ_NJ.js +0 -7
  88. package/dist/assets/plugin-chatbot-Cy3tiXkg.js +0 -120
  89. package/dist/assets/plugin-dashboard-PA0xf59v.js +0 -5
  90. package/dist/assets/plugin-form-BABEMaum.js +0 -1
  91. package/dist/assets/plugin-gantt-BNjfLkTR.js +0 -1
  92. package/dist/assets/plugin-grid-BxyuFeJP.js +0 -6
  93. package/dist/assets/plugin-kanban-D4yCkUn_.js +0 -1
  94. package/dist/assets/plugin-markdown-CR5TpghH.js +0 -7
  95. package/dist/assets/plugin-report-rz8HUIsi.js +0 -59
  96. package/dist/assets/plugin-timeline-DQHQwtdw.js +0 -1
  97. package/dist/assets/plugin-view-BykLknWa.js +0 -1
  98. package/dist/assets/plugins-views-CBO5qxO-.js +0 -4
  99. package/dist/assets/ui-components-BrY5joKQ.js +0 -42
  100. package/dist/assets/vendor-markdown-C9mPywRm.js +0 -38
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-CMxvf4Kt.js";import{_ as t,l as n,r,t as i}from"./vendor-react-DR370ovB.js";import{$a as a,$r as o,Ct as s,Hi as c,Hn as l,Lt as u,St as d,Ui as f,Un as p,Vn as m,Y as h,Zn as g,_t as _,bt as v,gt as y,hs as b,ht as x,rc as S,vo as C,wt as w,xt as T,yt as E}from"./ui-components-BrY5joKQ.js";import{_ as D,c as O,d as k,g as A,h as j,n as M,o as N,p as P,s as F,t as I,u as L}from"./vendor-dndkit-DMFEUxSy.js";var R=e(t(),1),z=i();function B(e){let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(!t)return null;let n=parseInt(t[1],16)/255,r=parseInt(t[2],16)/255,i=parseInt(t[3],16)/255,a=Math.max(n,r,i),o=Math.min(n,r,i),s=0,c=0,l=(a+o)/2;if(a!==o){let e=a-o;switch(c=l>.5?e/(2-a-o):e/(a+o),a){case n:s=((r-i)/e+(r<i?6:0))/6;break;case r:s=((i-n)/e+2)/6;break;case i:s=((n-r)/e+4)/6;break}}return{h:s*360,s:c*100,l:l*100}}function V(e){let t=B(e);return t?`${Math.round(t.h)} ${Math.round(t.s)}% ${Math.round(t.l)}%`:null}function H(e){let t=B(e);if(!t)return null;let n=Math.max(t.l,65),r=t.s>80?Math.max(t.s-10,70):t.s;return`${Math.round(t.h)} ${Math.round(r)}% ${Math.round(n)}%`}function U(e){let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(!t)return`0 0% 100%`;let n=e=>{let t=e/255;return t<=.03928?t/12.92:((t+.055)/1.055)**2.4},r=n(parseInt(t[1],16)),i=n(parseInt(t[2],16)),a=n(parseInt(t[3],16));return .2126*r+.7152*i+.0722*a>.6?`222 47% 11%`:`0 0% 100%`}function W(e,t){(0,R.useEffect)(()=>{let n=document.documentElement,r=()=>n.classList.contains(`dark`),i=()=>{if(e?.primaryColor){let t=V(e.primaryColor),i=H(e.primaryColor),a=r()&&i||t;a&&(n.style.setProperty(`--brand-primary`,e.primaryColor),n.style.setProperty(`--brand-primary-hsl`,t||a),n.style.setProperty(`--primary`,a),n.style.setProperty(`--primary-foreground`,r()?`222 47% 11%`:U(e.primaryColor)),n.style.setProperty(`--ring`,a),n.style.setProperty(`--sidebar-primary`,a),n.style.setProperty(`--sidebar-ring`,a))}else n.style.removeProperty(`--brand-primary`),n.style.removeProperty(`--brand-primary-hsl`),n.style.removeProperty(`--primary`),n.style.removeProperty(`--primary-foreground`),n.style.removeProperty(`--ring`),n.style.removeProperty(`--sidebar-primary`),n.style.removeProperty(`--sidebar-ring`);if(e?.accentColor){let t=V(e.accentColor),i=H(e.accentColor),a=r()&&i||t;a&&(n.style.setProperty(`--brand-accent`,e.accentColor),n.style.setProperty(`--brand-accent-hsl`,t||a),n.style.setProperty(`--accent`,a),n.style.setProperty(`--accent-foreground`,r()?`222 47% 11%`:U(e.accentColor)))}else n.style.removeProperty(`--brand-accent`),n.style.removeProperty(`--brand-accent-hsl`),n.style.removeProperty(`--accent`),n.style.removeProperty(`--accent-foreground`)};i();let a=new MutationObserver(e=>{for(let t of e)if(t.type===`attributes`&&t.attributeName===`class`){i();break}});if(a.observe(n,{attributes:!0,attributeFilter:[`class`]}),e?.favicon){let t=document.querySelector(`#favicon`)||document.querySelector(`link[rel="icon"]`);t&&(t.href=e.favicon)}return t&&(document.title=t),()=>{a.disconnect(),n.style.removeProperty(`--brand-primary`),n.style.removeProperty(`--brand-primary-hsl`),n.style.removeProperty(`--brand-accent`),n.style.removeProperty(`--brand-accent-hsl`),n.style.removeProperty(`--primary`),n.style.removeProperty(`--primary-foreground`),n.style.removeProperty(`--ring`),n.style.removeProperty(`--sidebar-primary`),n.style.removeProperty(`--sidebar-ring`),n.style.removeProperty(`--accent`),n.style.removeProperty(`--accent-foreground`)}},[e?.primaryColor,e?.accentColor,e?.favicon,t])}function G({sidebar:e,navbar:t,children:n,className:r,defaultOpen:i=!0,branding:a}){return W(a,a?.title),(0,z.jsxs)(w,{defaultOpen:i,className:`!flex-col h-svh overflow-hidden`,children:[(0,z.jsx)(`header`,{className:`sticky top-0 z-30 flex h-14 w-full shrink-0 items-center gap-2 border-b bg-background px-2 sm:px-4`,children:t}),(0,z.jsxs)(`div`,{className:`flex flex-1 min-h-0 w-full`,children:[e,(0,z.jsx)(E,{className:`min-w-0`,children:(0,z.jsx)(`main`,{className:S(`flex-1 min-w-0 overflow-auto p-3 sm:p-4 md:p-6 pb-20 sm:pb-4 md:pb-6`,r),children:n})})]})]})}function K(e){return e?h(e):C}function q(e,t){if(typeof e==`string`)return e;if(t){let n=t(e.key,{defaultValue:e.defaultValue,...e.params});if(n&&n!==e.key)return n}return e.defaultValue||e.key}function J(e,t,n,r,i,a,o){let s=q(e.label,n);if(typeof e.label!=`string`)return s;if(e.type===`object`&&e.objectName){if(e.viewName)return a?a(e.objectName,e.viewName,s):s;if(t)return t(e.objectName,s)}return r&&e.type===`dashboard`&&e.dashboardName?r(e.dashboardName,s):i&&e.type===`group`&&e.id?i(e.id,s):o&&e.id?o(e.id,s):s}var ee=e=>!(e===!1||e===`false`),Y=()=>!0,X=()=>!0,te=/\{(current_user_id|current_org_id|[a-z][a-z0-9_]*)\}/g;function Z(e,t){if(!e.includes(`{`))return e;let n=!1,r=e.replace(te,(e,r)=>{let i;return i=r===`current_user_id`?t?.currentUserId:r===`current_org_id`?t?.currentOrgId:t?.contextValues?.[r],i||(n=!0,``)});return n?null:r}function Q(e,t,n){switch(e.type){case`object`:{let r=`${t}/${e.objectName??``}`,i=e.recordId;if(i){let t=Z(i,n);if(t){let n=`${r}/record/${encodeURIComponent(t)}`;return{href:e.recordMode===`edit`?`${n}/edit`:n,external:!1}}}return{href:e.viewName?`${r}/view/${e.viewName}`:r,external:!1}}case`dashboard`:return{href:e.dashboardName?`${t}/dashboard/${e.dashboardName}`:`#`,external:!1};case`page`:{if(!e.pageName)return{href:`#`,external:!1};let r=e.params,i=`${t}/page/${e.pageName}`;if(r&&typeof r==`object`){let e=new URLSearchParams;for(let[t,i]of Object.entries(r))if(i!=null)if(typeof i==`string`){let r=Z(i,n);r!==null&&e.set(t,r)}else e.set(t,JSON.stringify(i));let t=e.toString();t&&(i+=`?${t}`)}return{href:i,external:!1}}case`report`:return{href:e.reportName?`${t}/report/${e.reportName}`:`#`,external:!1};case`url`:return{href:e.url??`#`,external:e.target===`_blank`};case`component`:{let r=e.componentRef;if(!r)return{href:`#`,external:!1};let i=r.split(`:`).filter(Boolean);if(i.length===0)return{href:`#`,external:!1};let a=e.params;if(i[0]===`metadata`){let e=i[1],r=a&&typeof a.type==`string`?a.type:void 0,o=a&&typeof a.name==`string`?a.name:void 0,s=``;if(a&&typeof a==`object`){let e=new URLSearchParams;for(let[t,r]of Object.entries(a))if(!(t===`type`||t===`name`)&&r!=null)if(typeof r==`string`){let i=Z(r,n);i&&e.set(t,i)}else e.set(t,JSON.stringify(r));let t=e.toString();t&&(s=`?${t}`)}return e===`directory`||!e?{href:`${t}/metadata${s}`,external:!1}:e===`resource`&&r?{href:`${t}/metadata${o?`/${encodeURIComponent(r)}/${encodeURIComponent(o)}`:`/${encodeURIComponent(r)}`}${s}`,external:!1}:{href:`${t}/metadata${s}`,external:!1}}let o=`${t}/component/${i.join(`/`)}`;if(a&&typeof a==`object`){let e=new URLSearchParams;for(let[t,n]of Object.entries(a))n!=null&&e.set(t,typeof n==`string`?n:JSON.stringify(n));let t=e.toString();t&&(o+=`?${t}`)}return{href:o,external:!1}}default:return{href:`#`,external:!1}}}function ne(e,t,n){if(t===`#`)return!1;if(n===t)return!0;let r=e.componentRef;return r&&r.split(`:`)[1]===`directory`?!1:e.type===`object`&&e.objectName?!(e.viewName||!n.startsWith(`${t}/`)||n.slice(t.length+1).startsWith(`view/`)):n.startsWith(`${t}/`)}function re(e,t){if(!t.trim())return e;let n=t.toLowerCase().trim();return e.reduce((e,r)=>{if(r.type===`separator`)return e;if(r.type===`group`&&r.children?.length){let n=re(r.children,t);return n.length>0&&e.push({...r,children:n}),e}return q(r.label).toLowerCase().includes(n)&&e.push(r),e},[])}var ie=5;function ae({item:e,basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,enablePinning:o,onPinToggle:s,enableReorder:c,resolveObjectLabel:l,resolveDashboardLabel:u,resolveGroupLabel:d,resolveViewLabel:f,resolveItemLabel:p,t:m,templateContext:h}){let{attributes:g,listeners:_,setNodeRef:v,transform:y,transition:b,isDragging:x}=N({id:e.id,disabled:!c});return(0,z.jsx)(`div`,{ref:v,style:{transform:D.Transform.toString(y),transition:b,opacity:x?.5:void 0,zIndex:x?10:void 0},...g,children:(0,z.jsx)($,{item:e,basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,enablePinning:o,onPinToggle:s,dragListeners:c?_:void 0,resolveObjectLabel:l,resolveDashboardLabel:u,resolveGroupLabel:d,resolveViewLabel:f,resolveItemLabel:p,t:m,templateContext:h})})}function $({item:e,basePath:t,evalVis:i,checkPerm:o,checkCap:h,onAction:S,enablePinning:C,onPinToggle:w,dragListeners:E,resolveObjectLabel:D,resolveDashboardLabel:O,resolveGroupLabel:k,resolveViewLabel:A,resolveItemLabel:j,t:M,templateContext:N}){let P=n(),F=(()=>{let t=e.expanded;if(typeof t==`boolean`)return t;if(typeof e.defaultOpen==`boolean`)return e.defaultOpen})(),I=e.type===`group`?e.children?.length??0:0,[L,B]=(0,R.useState)(R.useMemo(()=>{if(e.type!==`group`)return!1;let n=e=>{if(!e)return!1;for(let r of e){if(r.type===`group`){if(n(r.children))return!0;continue}let{href:e}=Q(r,t,N);if(ne(r,e,P.pathname))return!0}return!1};return n(e.children)},[e,t,P.pathname])?!0:F??!(I>=8));if(!i(e.visible)||e.requiredPermissions?.length&&!o(e.requiredPermissions))return null;let V=e.requiresObject,H=e.requiresService;if(V&&!h(`object`,V)||H&&!h(`service`,H))return null;if(e.type===`separator`)return(0,z.jsx)(u,{className:`my-2`});if(e.type===`group`){let n=(e.children??[]).slice().sort((e,t)=>(e.order??0)-(t.order??0));return(0,z.jsx)(m,{open:L,onOpenChange:B,children:(0,z.jsxs)(x,{children:[(0,z.jsx)(_,{asChild:!0,children:(0,z.jsxs)(p,{className:`flex w-full items-center justify-between`,children:[J(e,D,M,O,k,A,j),(0,z.jsx)(b,{className:`ml-auto h-4 w-4 transition-transform ${L?`rotate-90`:``}`})]})}),(0,z.jsx)(l,{children:(0,z.jsx)(y,{children:(0,z.jsx)(v,{children:n.map(e=>(0,z.jsx)($,{item:e,basePath:t,evalVis:i,checkPerm:o,checkCap:h,onAction:S,enablePinning:C,onPinToggle:w,resolveObjectLabel:D,resolveDashboardLabel:O,resolveGroupLabel:k,resolveViewLabel:A,resolveItemLabel:j,t:M,templateContext:N},e.id))})})})]})})}if(e.type===`action`){let n=K(e.icon),r=q(e.label,M);return(0,z.jsxs)(s,{children:[E&&(0,z.jsx)(`span`,{className:`absolute left-0.5 top-1/2 -translate-y-1/2 cursor-grab text-muted-foreground`,"aria-label":M?M(`console.nav.dragToReorder`,{defaultValue:`Drag to reorder`}):`Drag to reorder`,...E,children:(0,z.jsx)(a,{className:`h-3.5 w-3.5`})}),(0,z.jsxs)(d,{tooltip:r,onClick:()=>S?.(e),children:[(0,z.jsx)(n,{className:`h-4 w-4`}),(0,z.jsx)(`span`,{children:r}),e.badge!=null&&(0,z.jsx)(g,{variant:e.badgeVariant??`default`,className:`ml-auto text-[10px] px-1.5 py-0`,children:e.badge})]}),C&&w&&(0,z.jsx)(T,{showOnHover:!0,onClick:()=>w(e.id,!e.pinned,e,t),"aria-label":M?M(e.pinned?`console.nav.unpinItem`:`console.nav.pinItem`,{defaultValue:e.pinned?`Unpin ${r}`:`Pin ${r}`,name:r}):e.pinned?`Unpin ${r}`:`Pin ${r}`,children:e.pinned?(0,z.jsx)(c,{className:`h-3.5 w-3.5`}):(0,z.jsx)(f,{className:`h-3.5 w-3.5`})})]})}let U=K(e.icon),{href:W,external:G}=Q(e,t,N),ee=ne(e,W,P.pathname),Y=J(e,D,M,O,k,A,j),X=(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(U,{className:`h-4 w-4`}),(0,z.jsx)(`span`,{children:Y}),e.badge!=null&&(0,z.jsx)(g,{variant:e.badgeVariant??`default`,className:`ml-auto text-[10px] px-1.5 py-0`,children:e.badge})]});return(0,z.jsxs)(s,{children:[E&&(0,z.jsx)(`span`,{className:`absolute left-0.5 top-1/2 -translate-y-1/2 cursor-grab text-muted-foreground`,"aria-label":M?M(`console.nav.dragToReorder`,{defaultValue:`Drag to reorder`}):`Drag to reorder`,...E,children:(0,z.jsx)(a,{className:`h-3.5 w-3.5`})}),(0,z.jsx)(d,{asChild:!0,isActive:ee,tooltip:Y,children:G?(0,z.jsx)(`a`,{href:W,target:`_blank`,rel:`noopener noreferrer`,children:X}):(0,z.jsx)(r,{to:W,children:X})}),C&&w&&(0,z.jsx)(T,{showOnHover:!0,onClick:()=>w(e.id,!e.pinned,e,t),"aria-label":M?M(e.pinned?`console.nav.unpinItem`:`console.nav.pinItem`,{defaultValue:e.pinned?`Unpin ${Y}`:`Pin ${Y}`,name:Y}):e.pinned?`Unpin ${Y}`:`Pin ${Y}`,children:e.pinned?(0,z.jsx)(c,{className:`h-3.5 w-3.5`}):(0,z.jsx)(f,{className:`h-3.5 w-3.5`})})]})}function oe({items:e,basePath:t=``,evaluateVisibility:n=ee,checkPermission:r=Y,checkCapability:i=X,onAction:a,searchQuery:s,enablePinning:c,onPinToggle:l,enableReorder:u,onReorder:d,resolveObjectLabel:f,resolveDashboardLabel:p,resolveGroupLabel:m,resolveViewLabel:h,resolveItemLabel:g,t:b,templateContext:S}){let C=(0,R.useMemo)(()=>s?re(e,s):e,[e,s]),w=(0,R.useMemo)(()=>se(C),[C]),T=C.slice().sort((e,t)=>(e.order??0)-(t.order??0)),E=A(j(k,{activationConstraint:{distance:ie}}),j(L)),D=e=>{let{active:t,over:n}=e;if(!n||t.id===n.id||!d)return;let r=T.findIndex(e=>e.id===t.id),i=T.findIndex(e=>e.id===n.id);r===-1||i===-1||d(M(T,r,i).map((e,t)=>({...e,order:t})))},N={basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,enablePinning:c,onPinToggle:l,resolveObjectLabel:f,resolveDashboardLabel:p,resolveGroupLabel:m,resolveViewLabel:h,resolveItemLabel:g,t:b,templateContext:S},B=T.some(e=>e.type===`group`),V=w.length>0&&c?(0,z.jsxs)(x,{children:[(0,z.jsxs)(_,{className:`flex items-center gap-1.5`,children:[(0,z.jsx)(o,{className:`h-3.5 w-3.5`}),b?b(`console.nav.favorites`,{defaultValue:`Favorites`}):`Favorites`]}),(0,z.jsx)(y,{children:(0,z.jsx)(v,{children:w.map(e=>(0,z.jsx)($,{item:e,...N},`fav-${e.id}`))})})]}):null;if(!B){let e=T.filter(e=>e.type!==`group`).map(e=>e.id);return(0,z.jsxs)(z.Fragment,{children:[V,(0,z.jsx)(x,{children:(0,z.jsx)(y,{children:u?(0,z.jsx)(O,{sensors:E,collisionDetection:P,onDragEnd:D,children:(0,z.jsx)(I,{items:e,strategy:F,children:(0,z.jsx)(v,{children:T.map(e=>(0,z.jsx)(ae,{item:e,enableReorder:u,...N},e.id))})})}):(0,z.jsx)(v,{children:T.map(e=>(0,z.jsx)($,{item:e,...N},e.id))})})})]})}let H=[],U=[],W=e=>{if(U.length===0)return;let t=U;U=[],H.push((0,z.jsx)(x,{children:(0,z.jsx)(y,{children:(0,z.jsx)(v,{children:t.map(e=>(0,z.jsx)($,{item:e,...N},e.id))})})},e))};return T.forEach((e,t)=>{e.type===`group`?(W(`leaf-${t}`),H.push((0,z.jsx)($,{item:e,...N},e.id))):U.push(e)}),W(`leaf-end`),(0,z.jsxs)(z.Fragment,{children:[V,H]})}function se(e){let t=[];for(let n of e)n.pinned&&n.type!==`group`&&n.type!==`separator`&&t.push(n),n.children?.length&&t.push(...se(n.children));return t}export{Q as n,G as r,oe as t};
1
+ import{o as e}from"./rolldown-runtime-CMxvf4Kt.js";import{_ as t,l as n,r,t as i}from"./vendor-react-DR370ovB.js";import{$n as a,Ct as o,Et as s,Gi as c,Gn as l,Ki as u,So as d,St as f,Tt as p,Un as m,Wn as h,Z as g,_t as _,lc as v,ni as y,ro as b,vt as x,wt as S,xs as C,xt as w,yt as T,zt as E}from"./ui-components-Clv7N77v.js";import{_ as D,c as O,d as k,g as A,h as j,n as M,o as N,p as P,s as F,t as I,u as L}from"./vendor-dndkit-DMFEUxSy.js";var R=e(t(),1),z=i();function B(e){let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(!t)return null;let n=parseInt(t[1],16)/255,r=parseInt(t[2],16)/255,i=parseInt(t[3],16)/255,a=Math.max(n,r,i),o=Math.min(n,r,i),s=0,c=0,l=(a+o)/2;if(a!==o){let e=a-o;switch(c=l>.5?e/(2-a-o):e/(a+o),a){case n:s=((r-i)/e+(r<i?6:0))/6;break;case r:s=((i-n)/e+2)/6;break;case i:s=((n-r)/e+4)/6;break}}return{h:s*360,s:c*100,l:l*100}}function V(e){let t=B(e);return t?`${Math.round(t.h)} ${Math.round(t.s)}% ${Math.round(t.l)}%`:null}function H(e){let t=B(e);if(!t)return null;let n=Math.max(t.l,65),r=t.s>80?Math.max(t.s-10,70):t.s;return`${Math.round(t.h)} ${Math.round(r)}% ${Math.round(n)}%`}function U(e){let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(!t)return`0 0% 100%`;let n=e=>{let t=e/255;return t<=.03928?t/12.92:((t+.055)/1.055)**2.4},r=n(parseInt(t[1],16)),i=n(parseInt(t[2],16)),a=n(parseInt(t[3],16));return .2126*r+.7152*i+.0722*a>.6?`222 47% 11%`:`0 0% 100%`}function W(e,t){(0,R.useEffect)(()=>{let n=document.documentElement,r=()=>n.classList.contains(`dark`),i=()=>{if(e?.primaryColor){let t=V(e.primaryColor),i=H(e.primaryColor),a=r()&&i||t;a&&(n.style.setProperty(`--brand-primary`,e.primaryColor),n.style.setProperty(`--brand-primary-hsl`,t||a),n.style.setProperty(`--primary`,a),n.style.setProperty(`--primary-foreground`,r()?`222 47% 11%`:U(e.primaryColor)),n.style.setProperty(`--ring`,a),n.style.setProperty(`--sidebar-primary`,a),n.style.setProperty(`--sidebar-ring`,a))}else n.style.removeProperty(`--brand-primary`),n.style.removeProperty(`--brand-primary-hsl`),n.style.removeProperty(`--primary`),n.style.removeProperty(`--primary-foreground`),n.style.removeProperty(`--ring`),n.style.removeProperty(`--sidebar-primary`),n.style.removeProperty(`--sidebar-ring`);if(e?.accentColor){let t=V(e.accentColor),i=H(e.accentColor),a=r()&&i||t;a&&(n.style.setProperty(`--brand-accent`,e.accentColor),n.style.setProperty(`--brand-accent-hsl`,t||a),n.style.setProperty(`--accent`,a),n.style.setProperty(`--accent-foreground`,r()?`222 47% 11%`:U(e.accentColor)))}else n.style.removeProperty(`--brand-accent`),n.style.removeProperty(`--brand-accent-hsl`),n.style.removeProperty(`--accent`),n.style.removeProperty(`--accent-foreground`)};i();let a=new MutationObserver(e=>{for(let t of e)if(t.type===`attributes`&&t.attributeName===`class`){i();break}});if(a.observe(n,{attributes:!0,attributeFilter:[`class`]}),e?.favicon){let t=document.querySelector(`#favicon`)||document.querySelector(`link[rel="icon"]`);t&&(t.href=e.favicon)}return t&&(document.title=t),()=>{a.disconnect(),n.style.removeProperty(`--brand-primary`),n.style.removeProperty(`--brand-primary-hsl`),n.style.removeProperty(`--brand-accent`),n.style.removeProperty(`--brand-accent-hsl`),n.style.removeProperty(`--primary`),n.style.removeProperty(`--primary-foreground`),n.style.removeProperty(`--ring`),n.style.removeProperty(`--sidebar-primary`),n.style.removeProperty(`--sidebar-ring`),n.style.removeProperty(`--accent`),n.style.removeProperty(`--accent-foreground`)}},[e?.primaryColor,e?.accentColor,e?.favicon,t])}function G({sidebar:e,navbar:t,children:n,className:r,defaultOpen:i=!0,branding:a}){return W(a,a?.title),(0,z.jsxs)(s,{defaultOpen:i,className:`!flex-col h-svh overflow-hidden`,children:[(0,z.jsx)(`header`,{className:`sticky top-0 z-30 flex h-14 w-full shrink-0 items-center gap-2 border-b bg-background px-2 sm:px-4`,children:t}),(0,z.jsxs)(`div`,{className:`flex flex-1 min-h-0 w-full`,children:[e,(0,z.jsx)(w,{className:`min-w-0`,children:(0,z.jsx)(`main`,{className:v(`flex-1 min-w-0 overflow-auto p-3 sm:p-4 md:p-6 pb-20 sm:pb-4 md:pb-6`,r),children:n})})]})]})}function K(e){return e?g(e):d}function q(e,t){if(typeof e==`string`)return e;if(t){let n=t(e.key,{defaultValue:e.defaultValue,...e.params});if(n&&n!==e.key)return n}return e.defaultValue||e.key}function J(e,t,n,r,i,a,o){let s=q(e.label,n);if(typeof e.label!=`string`)return s;if(e.type===`object`&&e.objectName){if(e.viewName)return a?a(e.objectName,e.viewName,s):s;if(t)return t(e.objectName,s)}return r&&e.type===`dashboard`&&e.dashboardName?r(e.dashboardName,s):i&&e.type===`group`&&e.id?i(e.id,s):o&&e.id?o(e.id,s):s}var ee=e=>!(e===!1||e===`false`),Y=()=>!0,X=()=>!0,te=/\{(current_user_id|current_org_id|[a-z][a-z0-9_]*)\}/g;function Z(e,t){if(!e.includes(`{`))return e;let n=!1,r=e.replace(te,(e,r)=>{let i;return i=r===`current_user_id`?t?.currentUserId:r===`current_org_id`?t?.currentOrgId:t?.contextValues?.[r],i||(n=!0,``)});return n?null:r}function Q(e,t,n){switch(e.type){case`object`:{let r=`${t}/${e.objectName??``}`,i=e.recordId;if(i){let t=Z(i,n);if(t){let n=`${r}/record/${encodeURIComponent(t)}`;return{href:e.recordMode===`edit`?`${n}/edit`:n,external:!1}}}return{href:e.viewName?`${r}/view/${e.viewName}`:r,external:!1}}case`dashboard`:return{href:e.dashboardName?`${t}/dashboard/${e.dashboardName}`:`#`,external:!1};case`page`:{if(!e.pageName)return{href:`#`,external:!1};let r=e.params,i=`${t}/page/${e.pageName}`;if(r&&typeof r==`object`){let e=new URLSearchParams;for(let[t,i]of Object.entries(r))if(i!=null)if(typeof i==`string`){let r=Z(i,n);r!==null&&e.set(t,r)}else e.set(t,JSON.stringify(i));let t=e.toString();t&&(i+=`?${t}`)}return{href:i,external:!1}}case`report`:return{href:e.reportName?`${t}/report/${e.reportName}`:`#`,external:!1};case`url`:return{href:e.url??`#`,external:e.target===`_blank`};case`component`:{let r=e.componentRef;if(!r)return{href:`#`,external:!1};let i=r.split(`:`).filter(Boolean);if(i.length===0)return{href:`#`,external:!1};let a=e.params;if(i[0]===`metadata`){let e=i[1],r=a&&typeof a.type==`string`?a.type:void 0,o=a&&typeof a.name==`string`?a.name:void 0,s=``;if(a&&typeof a==`object`){let e=new URLSearchParams;for(let[t,r]of Object.entries(a))if(!(t===`type`||t===`name`)&&r!=null)if(typeof r==`string`){let i=Z(r,n);i&&e.set(t,i)}else e.set(t,JSON.stringify(r));let t=e.toString();t&&(s=`?${t}`)}return e===`directory`||!e?{href:`${t}/metadata${s}`,external:!1}:e===`resource`&&r?{href:`${t}/metadata${o?`/${encodeURIComponent(r)}/${encodeURIComponent(o)}`:`/${encodeURIComponent(r)}`}${s}`,external:!1}:{href:`${t}/metadata${s}`,external:!1}}let o=`${t}/component/${i.join(`/`)}`;if(a&&typeof a==`object`){let e=new URLSearchParams;for(let[t,n]of Object.entries(a))n!=null&&e.set(t,typeof n==`string`?n:JSON.stringify(n));let t=e.toString();t&&(o+=`?${t}`)}return{href:o,external:!1}}default:return{href:`#`,external:!1}}}function ne(e,t,n){if(t===`#`)return!1;if(n===t)return!0;let r=e.componentRef;return r&&r.split(`:`)[1]===`directory`?!1:e.type===`object`&&e.objectName?!(e.viewName||!n.startsWith(`${t}/`)||n.slice(t.length+1).startsWith(`view/`)):n.startsWith(`${t}/`)}function re(e,t){if(!t.trim())return e;let n=t.toLowerCase().trim();return e.reduce((e,r)=>{if(r.type===`separator`)return e;if(r.type===`group`&&r.children?.length){let n=re(r.children,t);return n.length>0&&e.push({...r,children:n}),e}return q(r.label).toLowerCase().includes(n)&&e.push(r),e},[])}var ie=5;function ae({item:e,basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,enablePinning:o,onPinToggle:s,enableReorder:c,resolveObjectLabel:l,resolveDashboardLabel:u,resolveGroupLabel:d,resolveViewLabel:f,resolveItemLabel:p,t:m,templateContext:h}){let{attributes:g,listeners:_,setNodeRef:v,transform:y,transition:b,isDragging:x}=N({id:e.id,disabled:!c});return(0,z.jsx)(`div`,{ref:v,style:{transform:D.Transform.toString(y),transition:b,opacity:x?.5:void 0,zIndex:x?10:void 0},...g,children:(0,z.jsx)($,{item:e,basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,enablePinning:o,onPinToggle:s,dragListeners:c?_:void 0,resolveObjectLabel:l,resolveDashboardLabel:u,resolveGroupLabel:d,resolveViewLabel:f,resolveItemLabel:p,t:m,templateContext:h})})}function $({item:e,basePath:t,evalVis:i,checkPerm:s,checkCap:d,onAction:g,enablePinning:v,onPinToggle:y,dragListeners:w,resolveObjectLabel:D,resolveDashboardLabel:O,resolveGroupLabel:k,resolveViewLabel:A,resolveItemLabel:j,t:M,templateContext:N}){let P=n(),F=(()=>{let t=e.expanded;if(typeof t==`boolean`)return t;if(typeof e.defaultOpen==`boolean`)return e.defaultOpen})(),I=e.type===`group`?e.children?.length??0:0,[L,B]=(0,R.useState)(R.useMemo(()=>{if(e.type!==`group`)return!1;let n=e=>{if(!e)return!1;for(let r of e){if(r.type===`group`){if(n(r.children))return!0;continue}let{href:e}=Q(r,t,N);if(ne(r,e,P.pathname))return!0}return!1};return n(e.children)},[e,t,P.pathname])?!0:F??!(I>=8));if(!i(e.visible)||e.requiredPermissions?.length&&!s(e.requiredPermissions))return null;let V=e.requiresObject,H=e.requiresService;if(V&&!d(`object`,V)||H&&!d(`service`,H))return null;if(e.type===`separator`)return(0,z.jsx)(E,{className:`my-2`});if(e.type===`group`){let n=(e.children??[]).slice().sort((e,t)=>(e.order??0)-(t.order??0));return(0,z.jsx)(m,{open:L,onOpenChange:B,children:(0,z.jsxs)(_,{children:[(0,z.jsx)(T,{asChild:!0,children:(0,z.jsxs)(l,{className:`flex w-full items-center justify-between`,children:[J(e,D,M,O,k,A,j),(0,z.jsx)(C,{className:`ml-auto h-4 w-4 transition-transform ${L?`rotate-90`:``}`})]})}),(0,z.jsx)(h,{children:(0,z.jsx)(x,{children:(0,z.jsx)(f,{children:n.map(e=>(0,z.jsx)($,{item:e,basePath:t,evalVis:i,checkPerm:s,checkCap:d,onAction:g,enablePinning:v,onPinToggle:y,resolveObjectLabel:D,resolveDashboardLabel:O,resolveGroupLabel:k,resolveViewLabel:A,resolveItemLabel:j,t:M,templateContext:N},e.id))})})})]})})}if(e.type===`action`){let n=K(e.icon),r=q(e.label,M);return(0,z.jsxs)(p,{children:[w&&(0,z.jsx)(`span`,{className:`absolute left-0.5 top-1/2 -translate-y-1/2 cursor-grab text-muted-foreground`,"aria-label":M?M(`console.nav.dragToReorder`,{defaultValue:`Drag to reorder`}):`Drag to reorder`,...w,children:(0,z.jsx)(b,{className:`h-3.5 w-3.5`})}),(0,z.jsxs)(S,{tooltip:r,onClick:()=>g?.(e),children:[(0,z.jsx)(n,{className:`h-4 w-4`}),(0,z.jsx)(`span`,{children:r}),e.badge!=null&&(0,z.jsx)(a,{variant:e.badgeVariant??`default`,className:`ml-auto text-[10px] px-1.5 py-0`,children:e.badge})]}),v&&y&&(0,z.jsx)(o,{showOnHover:!0,onClick:()=>y(e.id,!e.pinned,e,t),"aria-label":M?M(e.pinned?`console.nav.unpinItem`:`console.nav.pinItem`,{defaultValue:e.pinned?`Unpin ${r}`:`Pin ${r}`,name:r}):e.pinned?`Unpin ${r}`:`Pin ${r}`,children:e.pinned?(0,z.jsx)(c,{className:`h-3.5 w-3.5`}):(0,z.jsx)(u,{className:`h-3.5 w-3.5`})})]})}let U=K(e.icon),{href:W,external:G}=Q(e,t,N),ee=ne(e,W,P.pathname),Y=J(e,D,M,O,k,A,j),X=(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(U,{className:`h-4 w-4`}),(0,z.jsx)(`span`,{children:Y}),e.badge!=null&&(0,z.jsx)(a,{variant:e.badgeVariant??`default`,className:`ml-auto text-[10px] px-1.5 py-0`,children:e.badge})]});return(0,z.jsxs)(p,{children:[w&&(0,z.jsx)(`span`,{className:`absolute left-0.5 top-1/2 -translate-y-1/2 cursor-grab text-muted-foreground`,"aria-label":M?M(`console.nav.dragToReorder`,{defaultValue:`Drag to reorder`}):`Drag to reorder`,...w,children:(0,z.jsx)(b,{className:`h-3.5 w-3.5`})}),(0,z.jsx)(S,{asChild:!0,isActive:ee,tooltip:Y,children:G?(0,z.jsx)(`a`,{href:W,target:`_blank`,rel:`noopener noreferrer`,children:X}):(0,z.jsx)(r,{to:W,children:X})}),v&&y&&(0,z.jsx)(o,{showOnHover:!0,onClick:()=>y(e.id,!e.pinned,e,t),"aria-label":M?M(e.pinned?`console.nav.unpinItem`:`console.nav.pinItem`,{defaultValue:e.pinned?`Unpin ${Y}`:`Pin ${Y}`,name:Y}):e.pinned?`Unpin ${Y}`:`Pin ${Y}`,children:e.pinned?(0,z.jsx)(c,{className:`h-3.5 w-3.5`}):(0,z.jsx)(u,{className:`h-3.5 w-3.5`})})]})}function oe({items:e,basePath:t=``,evaluateVisibility:n=ee,checkPermission:r=Y,checkCapability:i=X,onAction:a,searchQuery:o,enablePinning:s,onPinToggle:c,enableReorder:l,onReorder:u,resolveObjectLabel:d,resolveDashboardLabel:p,resolveGroupLabel:m,resolveViewLabel:h,resolveItemLabel:g,t:v,templateContext:b}){let S=(0,R.useMemo)(()=>o?re(e,o):e,[e,o]),C=(0,R.useMemo)(()=>se(S),[S]),w=S.slice().sort((e,t)=>(e.order??0)-(t.order??0)),E=A(j(k,{activationConstraint:{distance:ie}}),j(L)),D=e=>{let{active:t,over:n}=e;if(!n||t.id===n.id||!u)return;let r=w.findIndex(e=>e.id===t.id),i=w.findIndex(e=>e.id===n.id);r===-1||i===-1||u(M(w,r,i).map((e,t)=>({...e,order:t})))},N={basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,enablePinning:s,onPinToggle:c,resolveObjectLabel:d,resolveDashboardLabel:p,resolveGroupLabel:m,resolveViewLabel:h,resolveItemLabel:g,t:v,templateContext:b},B=w.some(e=>e.type===`group`),V=C.length>0&&s?(0,z.jsxs)(_,{children:[(0,z.jsxs)(T,{className:`flex items-center gap-1.5`,children:[(0,z.jsx)(y,{className:`h-3.5 w-3.5`}),v?v(`console.nav.favorites`,{defaultValue:`Favorites`}):`Favorites`]}),(0,z.jsx)(x,{children:(0,z.jsx)(f,{children:C.map(e=>(0,z.jsx)($,{item:e,...N},`fav-${e.id}`))})})]}):null;if(!B){let e=w.filter(e=>e.type!==`group`).map(e=>e.id);return(0,z.jsxs)(z.Fragment,{children:[V,(0,z.jsx)(_,{children:(0,z.jsx)(x,{children:l?(0,z.jsx)(O,{sensors:E,collisionDetection:P,onDragEnd:D,children:(0,z.jsx)(I,{items:e,strategy:F,children:(0,z.jsx)(f,{children:w.map(e=>(0,z.jsx)(ae,{item:e,enableReorder:l,...N},e.id))})})}):(0,z.jsx)(f,{children:w.map(e=>(0,z.jsx)($,{item:e,...N},e.id))})})})]})}let H=[],U=[],W=e=>{if(U.length===0)return;let t=U;U=[],H.push((0,z.jsx)(_,{children:(0,z.jsx)(x,{children:(0,z.jsx)(f,{children:t.map(e=>(0,z.jsx)($,{item:e,...N},e.id))})})},e))};return w.forEach((e,t)=>{e.type===`group`?(W(`leaf-${t}`),H.push((0,z.jsx)($,{item:e,...N},e.id))):U.push(e)}),W(`leaf-end`),(0,z.jsxs)(z.Fragment,{children:[V,H]})}function se(e){let t=[];for(let n of e)n.pinned&&n.type!==`group`&&n.type!==`separator`&&t.push(n),n.children?.length&&t.push(...se(n.children));return t}export{Q as n,G as r,oe as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-CMxvf4Kt.js";import{_ as t,t as n}from"./vendor-react-DR370ovB.js";import{f as r}from"./infrastructure-ckitl7Ev.js";import{B as i}from"./framework-D7UWfRl4.js";import{Ft as a,Hn as o,It as s,Ln as c,Lt as l,Pt as u,Rn as d,Rt as f,Vn as p,_n as m,bn as h,hr as g,lc as _,vn as v,xn as y,yn as b,zn as x}from"./ui-components-Clv7N77v.js";import{n as S}from"./plugin-form-MXrWd_1Z.js";import{a as C,c as w,i as T,s as E}from"./RecentItemsProvider-gLV-GFpQ.js";var D=e(t(),1),O=n(),k=`objectui-favorites`,A=`objectui-nav-pins`,j=20,M=20;function N(e){let t=0,n=0,r=!1;for(let i of e)i.type===`nav`?(n++,n>M&&(r=!0)):(t++,t>j&&(r=!0));if(!r)return e;let i=[],a=0,o=0;for(let t of e)t.type===`nav`?o<M&&(i.push(t),o++):a<j&&(i.push(t),a++);return i}function P(e){try{let t=localStorage.getItem(C(k,e));return t?JSON.parse(t):[]}catch{return[]}}function F(e,t){try{localStorage.setItem(C(k,t),JSON.stringify(e))}catch{}}function I(e){let t;try{t=localStorage.getItem(A)}catch{return{migrated:e,didMigrate:!1}}if(!t)return{migrated:e,didMigrate:!1};let n=[];try{let e=JSON.parse(t);Array.isArray(e)&&(n=e.filter(e=>typeof e==`string`))}catch{}try{localStorage.removeItem(A)}catch{}if(n.length===0)return{migrated:e,didMigrate:!1};let r=new Set(e.filter(e=>e.type===`nav`&&e.navId).map(e=>e.navId)),i=new Date().toISOString(),a=[];for(let e of n)r.has(e)||a.push({id:`nav:${e}`,label:e,href:``,type:`nav`,navId:e,pinned:!0,favoritedAt:i});return a.length===0?{migrated:e,didMigrate:!0}:{migrated:[...e,...a],didMigrate:!0}}var L=(0,D.createContext)(null);function R({children:e}){let{user:t}=r(),n=t?.id??null,i=w(`favorites`),[a,o]=(0,D.useState)(()=>P(n));(0,D.useEffect)(()=>{o(P(n))},[n]),E(C(k,n),e=>{o(Array.isArray(e)?N(e.filter(e=>e&&typeof e.id==`string`)):[])});let s=(0,D.useRef)(0);(0,D.useEffect)(()=>{if(!i)return;let e=++s.current,t=!1;return(async()=>{try{let r=await i.load();if(t||e!==s.current)return;let a=N((Array.isArray(r)?r:[]).filter(e=>e&&typeof e.id==`string`)),l=P(n),u=new Set(a.filter(e=>e.type===`nav`&&e.navId).map(e=>e.navId)),d=l.filter(e=>e.type===`nav`&&e.navId&&!u.has(e.navId)),f=a,p=!1;d.length>0&&(f=N([...a,...d]),p=!0);let{migrated:m,didMigrate:h}=I(f);h&&(f=N(m),p=!0),o(f),F(f,n),p&&c.schedule(f)}catch{}})(),()=>{t=!0}},[i,n]),(0,D.useEffect)(()=>{i||o(e=>{let{migrated:t,didMigrate:r}=I(e);if(!r)return e;let i=N(t);return F(i,n),i})},[i,n]);let c=(0,D.useMemo)(()=>T(async e=>{i&&await i.save(e)},500),[i]);(0,D.useEffect)(()=>()=>{c.flush()},[c]);let l=(0,D.useCallback)(e=>{F(e,n),i&&c.schedule(e)},[n,i,c]),u=(0,D.useCallback)(e=>{o(t=>{if(t.some(t=>t.id===e.id))return t;let n=N([{...e,favoritedAt:new Date().toISOString()},...t]);return l(n),n})},[l]),d=(0,D.useCallback)(e=>{o(t=>{let n=t.filter(t=>t.id!==e);return l(n),n})},[l]),f=(0,D.useCallback)(e=>{o(t=>{let n=t.some(t=>t.id===e.id)?t.filter(t=>t.id!==e.id):N([{...e,favoritedAt:new Date().toISOString()},...t]);return l(n),n})},[l]),p=(0,D.useCallback)(()=>{o([]),l([])},[l]),m=(0,D.useCallback)((e,t)=>{!e||!t||o(n=>{let r=!1,i=n.map(n=>n.id===e&&n.label!==t?(r=!0,{...n,label:t}):n);return r?(l(i),i):n})},[l]),h=(0,D.useCallback)((e,t)=>{o(n=>{let r=!1,i=n.map(n=>n.id!==e||!!n.pinned===t?n:(r=!0,{...n,pinned:t}));return r?(l(i),i):n})},[l]),g=(0,D.useMemo)(()=>{let e=new Set;for(let t of a)t.pinned&&t.type===`nav`&&t.navId&&e.add(t.navId);return{favorites:a,addFavorite:u,removeFavorite:d,toggleFavorite:f,isFavorite:e=>a.some(t=>t.id===e),clearFavorites:p,refreshLabel:m,setPinned:h,isPinned:e=>a.some(t=>t.id===e&&!!t.pinned),pinnedNavIds:e}},[a,u,d,f,p,m,h]);return(0,O.jsx)(L.Provider,{value:g,children:e})}function z(){return(0,D.useContext)(L)||{favorites:[],addFavorite:()=>{},removeFavorite:()=>{},toggleFavorite:()=>{},isFavorite:()=>!1,clearFavorites:()=>{},refreshLabel:()=>{},setPinned:()=>{},isPinned:()=>!1,pinnedNavIds:new Set}}function B(){return`${``.replace(/\/$/,``)}/api/v1`}async function V(e,t){let n=await fetch(`${B()}${e}`,{credentials:`include`,headers:{"Content-Type":`application/json`,...t?.headers||{}},...t}),r=null;try{r=await n.json()}catch{}if(!n.ok){let e=Error(r?.error||`HTTP ${n.status}`);throw e.code=r?.code??`HTTP_${n.status}`,e.status=n.status,e}return r}function H(e,t,n){let[r,i]=(0,D.useState)(!1),[a,o]=(0,D.useState)(!0),[s,c]=(0,D.useState)([]),l=(0,D.useRef)(!1),u=(0,D.useCallback)(async()=>{if(!(!e||!t)&&!l.current){i(!0);try{c((await V(`/approvals/requests?object=${encodeURIComponent(e)}&recordId=${encodeURIComponent(t)}`))?.data??[]),o(!0)}catch(e){(e?.status===404||e?.status===501)&&(l.current=!0,o(!1))}finally{i(!1)}}},[e,t]);(0,D.useEffect)(()=>{if(!e||!t){c([]);return}u()},[e,t,u]);let d=(0,D.useMemo)(()=>s.find(e=>e.status===`pending`)??null,[s]),f=(0,D.useMemo)(()=>s.length===0?null:[...s].sort((e,t)=>{let n=e.submitted_at||e.completed_at||``;return(t.submitted_at||t.completed_at||``).localeCompare(n)})[0]??null,[s]),p=!!d&&!!n&&(d.pending_approvers??[]).includes(n),m=(0,D.useCallback)(async(e,t)=>{if(!d)throw Error(`No pending request`);let r=await V(`/approvals/requests/${encodeURIComponent(d.id)}/${e}`,{method:`POST`,body:JSON.stringify({...n?{actorId:n}:{},...t?.comment?{comment:t.comment}:{}})});return await u(),r?.request},[d,n,u]);return{loading:r,available:a,pendingRequest:d,latestRequest:f,canDecide:p,approve:(0,D.useCallback)(e=>m(`approve`,e),[m]),reject:(0,D.useCallback)(e=>m(`reject`,e),[m]),refresh:u}}var U={sm:`sm:max-w-sm`,default:`sm:max-w-lg`,lg:`sm:max-w-2xl`,xl:`sm:max-w-5xl`,full:`sm:max-w-[95vw] sm:w-full`},W={lg:`sm:max-w-2xl`,xl:`sm:max-w-3xl`,full:`sm:max-w-[95vw]`};function G(e){if(typeof e==`string`){let t=e.match(/^(create|new|add|edit|update)_(.+)$/);return t?{objectName:t[2],mode:t[1]===`edit`||t[1]===`update`?`edit`:`create`}:{objectName:e,mode:`create`}}return e&&typeof e==`object`?e.type&&!e.content&&!e.objectName&&!e.placement?{content:e}:e:{}}function K(e){let[t,n]=(0,D.useState)(null),r=(0,D.useCallback)(e=>{n(t=>(t?.resolve(e),null))},[]),C=(0,D.useCallback)(e=>new Promise(t=>{n({d:G(e),resolve:t})}),[]),w=null;if(t){let n=t.d,C=e=>{e||r({success:!1})};if(n.objectName&&!n.content)w=(0,O.jsx)(S,{schema:{type:`object-form`,formType:`modal`,objectName:n.objectName,mode:n.mode||`create`,recordId:n.recordId,title:n.title,description:n.description,fields:n.fields,modalSize:n.size,open:!0,onOpenChange:C,onSuccess:e=>r({success:!0,reload:!0,data:e}),onCancel:()=>r({success:!1}),showSubmit:!0,showCancel:!0},dataSource:e});else{let e=n.placement||`center`,t=n.content?(0,O.jsx)(i,{schema:n.content}):n.description?(0,O.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:n.description}):null;w=e===`side`?(0,O.jsx)(u,{open:!0,onOpenChange:C,children:(0,O.jsxs)(a,{side:n.side||`right`,className:_(`w-full overflow-y-auto`,W[n.size||`default`]),children:[n.title&&(0,O.jsxs)(l,{children:[(0,O.jsx)(f,{children:n.title}),n.description&&(0,O.jsx)(s,{children:n.description})]}),(0,O.jsx)(`div`,{className:`py-3`,children:t})]})}):e===`bottom`?(0,O.jsx)(m,{open:!0,onOpenChange:C,children:(0,O.jsxs)(v,{children:[n.title&&(0,O.jsxs)(h,{children:[(0,O.jsx)(y,{children:n.title}),n.description&&(0,O.jsx)(b,{children:n.description})]}),(0,O.jsx)(`div`,{className:`max-h-[75vh] overflow-y-auto px-4 pb-6`,children:t})]})}):(0,O.jsx)(c,{open:!0,onOpenChange:C,children:(0,O.jsxs)(d,{className:_(e===`fullscreen`?`h-[95vh] w-full max-w-[98vw] overflow-y-auto`:U[n.size||`default`]),children:[n.title&&(0,O.jsxs)(p,{children:[(0,O.jsx)(o,{children:n.title}),n.description&&(0,O.jsx)(x,{children:n.description})]}),(0,O.jsx)(`div`,{children:t}),!n.content&&(0,O.jsx)(`div`,{className:`flex justify-end`,children:(0,O.jsx)(g,{onClick:()=>r({success:!0}),children:`OK`})})]})})}}return{modalHandler:C,modalElement:w,closeModal:r}}export{z as i,H as n,R as r,K as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-CMxvf4Kt.js";import{_ as t,t as n}from"./vendor-react-DR370ovB.js";var r=e(t(),1),i=n();function a({iconUrl:e,displayName:t,manifestId:n,className:a=`h-10 w-10`,initialClassName:o=`text-base font-semibold`}){let[s,c]=(0,r.useState)(!1),l=((t??n??`?`).trim()[0]??`?`).toUpperCase(),u=!!e&&!s;return(0,i.jsx)(`div`,{className:`flex shrink-0 items-center justify-center rounded-lg bg-primary/10 text-primary overflow-hidden ${a}`,children:u?(0,i.jsx)(`img`,{src:e,alt:``,className:`${a} object-cover`,onError:()=>c(!0),loading:`lazy`}):(0,i.jsx)(`span`,{className:o,children:l})})}var o=`en`;function s(e){let t=e.indexOf(`-`);return t===-1?e:e.slice(0,t)}function c(e){let t=new Set,n=[];for(let r of e)!r||t.has(r)||(t.add(r),n.push(r));return n}function l(e,t,n){if(!e)return;let r=s(t),i=c([t,r,...Object.keys(e).filter(e=>e===r||e.startsWith(`${r}-`)),o]);for(let t of i){let r=e[t];if(!r)continue;let i=r[n];if(typeof i==`string`&&i.length>0)return i}}function u(e,t){let n=e[{displayName:`display_name`,description:`description`,readme:`readme`,tagline:`tagline`,screenshotCaptions:`screenshotCaptions`}[t]]??e[t];return typeof n==`string`&&n.length>0?n:void 0}function d(e,t){let n=t||o;return{displayName:l(e.translations??void 0,n,`displayName`)??u(e,`displayName`)??e.manifest_id,description:l(e.translations??void 0,n,`description`)??u(e,`description`),readme:l(e.translations??void 0,n,`readme`)??u(e,`readme`),tagline:l(e.translations??void 0,n,`tagline`)??u(e,`tagline`)}}export{a as n,d as t};
@@ -0,0 +1 @@
1
+ function e(e){let{objectDef:t,baseUrl:n,record:r}=e;if(!t?.name||t.editMode!==`page`)return{kind:`modal`};let i=r?.id??r?._id;if(r&&i!=null&&i!==``){let e=encodeURIComponent(String(i));return{kind:`page`,url:`${n}/${t.name}/record/${e}/edit`}}return{kind:`page`,url:`${n}/${t.name}/new`}}function t(e){let{action:t,context:n={},defaultBaseUrl:r}=e,i=t.params?.objectName??t.objectName??n.objectName,a=n.baseUrl??r;return i?{success:!0,url:`${a}/${i}/new`}:{success:!1,error:`navigate_create: objectName is required`}}function n(e){let{action:t,context:n={},defaultBaseUrl:r}=e,i=t.params?.objectName??t.objectName??n.objectName,a=t.params?.recordId??t.recordId,o=n.baseUrl??r;return!i||a==null||a===``?{success:!1,error:`navigate_edit: objectName and recordId are required`}:{success:!0,url:`${o}/${i}/record/${encodeURIComponent(String(a))}/edit`}}var r=new Set([`created_by`,`updated_by`,`owner_id`]);function i(e){return e?Array.isArray(e)?e.filter(e=>e&&e.name!=null).map(e=>[String(e.name),e]):Object.entries(e):[]}function a(e,t){if(!e?.name||!Array.isArray(t)||t.length===0)return[];let n=e.name,a=[],o=[],s=new Set;for(let e of t)if(!(!e?.name||e.name===n))for(let[t,c]of i(e.fields)){if(!c)continue;let i=c.type;if(i!==`lookup`&&i!==`master_detail`||(c.reference_to||c.reference)!==n||r.has(t)||c.relatedList===!1||s.has(e.name))continue;s.add(e.name);let l={childObject:e.name,childLabel:e.label||e.name,referenceField:t,isOwned:i===`master_detail`,...typeof c.relatedListTitle==`string`&&c.relatedListTitle?{title:c.relatedListTitle}:{},...Array.isArray(c.relatedListColumns)&&c.relatedListColumns.length>0?{columns:c.relatedListColumns}:{}};(l.isOwned?a:o).push(l);break}return[...a,...o]}function o(e,t){if(e!=null){if(typeof e==`string`)return e;if(t){let n=t(e.key,{defaultValue:e.defaultValue,...e.params});if(n&&n!==e.key)return n}return e.defaultValue||e.key}}function s(e){return e&&e.charAt(0).toUpperCase()+e.slice(1)}var c=`\0`,l=`[-\\u2013\\u2014|/·,:]`;function u(e,t){let n=typeof e==`string`?e:e&&typeof e==`object`&&typeof e.source==`string`?e.source:void 0;if(!n||!t)return t?.id||t?._id||`Record`;let r=!1,i=n.replace(/\{([^{}]+)\}/g,(e,n)=>{let i=String(n).trim().split(`.`),a=t;for(let e of i){if(a==null)break;a=a[e]}if(a&&typeof a==`object`){let e=a,t=e.name??e.full_name??e.display_name??e.label??e.title??e.subject??null;(t==null||typeof t==`string`&&!t.trim())&&(t=[e.salutation,e.first_name,e.last_name].filter(e=>typeof e==`string`&&e.trim()).map(e=>e.trim()).join(` `)||(typeof e.email==`string`&&e.email.trim()?e.email.trim():null)),a=t}return a==null||a===``?c:(r=!0,String(a))});if(!r)return``;let a=RegExp(`\\s*${l}\\s*${c}`,`g`),o=RegExp(`${c}\\s*${l}\\s*`,`g`);return i=i.replace(a,``).replace(o,``).replace(new RegExp(c,`g`),``).replace(/\s+/g,` `).trim(),i}function d(e,t){if(e?.titleFormat){let n=u(e.titleFormat,t);if(n)return n}return t?.name||t?.full_name||t?.fullName||t?.title||t?.label||t?.subject||t?.id||t?._id||`Untitled`}export{t as a,a as i,d as n,n as o,o as r,e as s,s as t};