@verifiedinc-public/shared-ui-elements 11.0.2 → 11.0.3-beta.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.
@@ -1 +1 @@
1
- "use strict";import{TableContainer as U,Paper as L,Table as P,TableHead as D,TableRow as m,TableCell as n,TableBody as N,TableSortLabel as E}from"@mui/material";import{useState as j,useEffect as F,useMemo as y,Fragment as I}from"react";import{EmptyChartSection as M}from"../EmptyChartSection.mjs";import{LoadingChartSection as O}from"../LoadingChartSection.mjs";import{BillableProduct as R,BILLABLE_PRODUCTS as A}from"./BillableEventsTable.types.mjs";import{BrandDetailsPanel as H}from"./BrandDetailsPanel.mjs";import{useBillableSort as K}from"./useBillableSort.hook.mjs";import{white as W}from"../../../styles/colors.mjs";import{jsx as e,jsxs as c}from"react/jsx-runtime";const _=["customerName","brand","integrationType"],q=({data:l,isLoading:S,isFetching:C,visibleProducts:f,onSortedDataChange:h,columnSlots:a,topLevelColumns:i=[],showCustomerColumn:d=!0})=>{const{sortKey:k,sortDir:T,handleSort:v,sortedData:u}=K(l,_,"brand"),[x,B]=j(null);F(()=>{h?.(u)},[u,h]);const p=y(()=>{const r=f??Object.values(R);return A.filter(t=>r.includes(t.product))},[f]),b=y(()=>new Set(i.map(r=>r.key)),[i]),g=y(()=>p.flatMap(r=>r.columns).filter(r=>!b.has(r.key)),[p,b]),w=2+(d?1:0)+i.length+g.length,s=(r,t,o="left")=>e(E,{active:k===r,direction:k===r?T:"asc",onClick:()=>v(r),sx:o==="right"?{flexDirection:"row"}:void 0,children:t});return!(l!=null&&l.length)&&S?e(O,{}):l!=null&&l.length?e(U,{component:L,sx:{opacity:C?.4:1},children:c(P,{sx:{backgroundColor:W},children:[c(D,{children:[c(m,{children:[d&&e(n,{rowSpan:2,children:s("customerName","Customer Name")}),e(n,{rowSpan:2,children:s("brand","Brand Name")}),e(n,{rowSpan:2,children:s("integrationType","Integration Type")}),i.map(r=>e(n,{rowSpan:2,children:s(r.key,r.label)},r.key)),p.map(r=>{const t=r.columns.filter(o=>!b.has(o.key)).length;return t===0?null:e(n,{colSpan:t,align:"center",sx:{fontWeight:"bold",borderBottom:"none"},children:r.label},r.product)})]}),e(m,{children:g.map(r=>e(n,{align:"right",children:s(r.key,r.label,"right")},r.key))})]}),e(N,{children:u.map(r=>{const t=x===r.brandUuid;return c(I,{children:[c(m,{hover:!0,onClick:()=>B(t?null:r.brandUuid),sx:{cursor:"pointer","& > td":{borderBottom:t?"none":void 0}},children:[d&&e(n,{children:r.customerName??"\u2014"}),e(n,{children:r.brand}),e(n,{children:r.integrationType}),i.map(o=>e(n,{children:a!=null&&a[o.key]?a[o.key](r):r.metrics[o.key]??0},o.key)),g.map(o=>e(n,{align:"right",children:a!=null&&a[o.key]?a[o.key](r):r.metrics[o.key]??0},o.key))]}),t&&e(m,{children:e(n,{colSpan:w,sx:{py:0,px:0,borderTop:"none",bgcolor:"grey.50"},children:e(H,{brandUuid:r.brandUuid,customerUuid:d?r.customerUuid:void 0,challengePrompts:r.challengePrompts,providers:r.providers})})})]},r.brandUuid)})})]})}):e(M,{})};export{q as BillableEventsTable};
1
+ "use strict";import{TableContainer as E,Paper as F,Table as I,TableHead as O,TableRow as h,TableCell as l,TableBody as W,TableSortLabel as $}from"@mui/material";import{useState as A,useEffect as H,useMemo as m,Fragment as x}from"react";import{EmptyChartSection as K}from"../EmptyChartSection.mjs";import{LoadingChartSection as R}from"../LoadingChartSection.mjs";import{BillableProduct as _,BILLABLE_PRODUCTS as q}from"./BillableEventsTable.types.mjs";import{BrandDetailsPanel as z}from"./BrandDetailsPanel.mjs";import{useBillableSort as G}from"./useBillableSort.hook.mjs";import{white as J}from"../../../styles/colors.mjs";import{jsx as r,jsxs as i}from"react/jsx-runtime";const Q=["customerName","brand","integrationType"],V=({data:c,isLoading:v,isFetching:w,visibleProducts:f,onSortedDataChange:p,columnSlots:t,topLevelColumns:s=[],leadingColumns:a=[],showCustomerColumn:u=!0})=>{const{sortKey:S,sortDir:B,handleSort:U,sortedData:g}=G(c,Q,"brand"),[L,N]=A(null);H(()=>{p?.(g)},[g,p]);const b=m(()=>{const e=f??Object.values(_);return q.filter(o=>e.includes(o.product))},[f]),y=m(()=>new Set(s.map(e=>e.key)),[s]),k=m(()=>b.flatMap(e=>e.columns).filter(e=>!y.has(e.key)),[b,y]),P=m(()=>a.flatMap(e=>e.type==="column"?[e.column]:e.columns),[a]),D=m(()=>a.flatMap(e=>e.type==="group"?e.columns:[]),[a]),C=(e,o)=>t!=null&&t[e.key]?t[e.key](o):o.metrics[e.key]??"\u2014",M=2+(u?1:0)+P.length+s.length+k.length,d=(e,o,n="left")=>r($,{active:S===e,direction:S===e?B:"asc",onClick:()=>U(e),sx:n==="right"?{flexDirection:"row"}:void 0,children:o});return!(c!=null&&c.length)&&v?r(R,{}):c!=null&&c.length?r(E,{component:F,sx:{opacity:w?.4:1},children:i(I,{sx:{backgroundColor:J},children:[i(O,{children:[i(h,{children:[u&&r(l,{rowSpan:2,children:d("customerName","Customer Name")}),a.map((e,o)=>e.type==="column"?r(l,{rowSpan:2,children:e.column.label},e.column.key):r(l,{colSpan:e.columns.length,align:"center",sx:{fontWeight:"bold",borderBottom:"none"},children:e.label},`leading-group-${o}`)),r(l,{rowSpan:2,children:d("brand","Brand Name")}),r(l,{rowSpan:2,children:d("integrationType","Integration Type")}),s.map(e=>r(l,{rowSpan:2,children:d(e.key,e.label)},e.key)),b.map(e=>{const o=e.columns.filter(n=>!y.has(n.key)).length;return o===0?null:r(l,{colSpan:o,align:"center",sx:{fontWeight:"bold",borderBottom:"none"},children:e.label},e.product)})]}),i(h,{children:[D.map(e=>r(l,{children:e.label},e.key)),k.map(e=>r(l,{align:"right",children:d(e.key,e.label,"right")},e.key))]})]}),r(W,{children:g.map(e=>{const o=L===e.brandUuid;return i(x,{children:[i(h,{hover:!0,onClick:()=>N(o?null:e.brandUuid),sx:{cursor:"pointer","& > td":{borderBottom:o?"none":void 0}},children:[u&&r(l,{children:e.customerName??"\u2014"}),a.map((n,j)=>n.type==="column"?r(l,{children:C(n.column,e)},n.column.key):r(x,{children:n.columns.map(T=>r(l,{children:C(T,e)},T.key))},`leading-group-${j}`)),r(l,{children:e.brand}),r(l,{children:e.integrationType}),s.map(n=>r(l,{children:t!=null&&t[n.key]?t[n.key](e):e.metrics[n.key]??0},n.key)),k.map(n=>r(l,{align:"right",children:t!=null&&t[n.key]?t[n.key](e):e.metrics[n.key]??0},n.key))]}),o&&r(h,{children:r(l,{colSpan:M,sx:{py:0,px:0,borderTop:"none",bgcolor:"grey.50"},children:r(z,{brandUuid:e.brandUuid,customerUuid:u?e.customerUuid:void 0,challengePrompts:e.challengePrompts,providers:e.providers,billingNotes:e.billingNotes})})})]},e.brandUuid)})})]})}):r(K,{})};export{V as BillableEventsTable};
@@ -20,6 +20,19 @@ export type BillableEventColumn = {
20
20
  label: string;
21
21
  metricKey: string;
22
22
  };
23
+ /**
24
+ * An ordered leading column rendered between Customer Name and Brand Name. Either a single column
25
+ * or a labelled group with a parent header spanning its child columns.
26
+ * Cells render via `columnSlots[column.key]` (falling back to `metrics`).
27
+ */
28
+ export type BillableLeadingColumn = {
29
+ type: 'column';
30
+ column: BillableEventColumn;
31
+ } | {
32
+ type: 'group';
33
+ label: string;
34
+ columns: BillableEventColumn[];
35
+ };
23
36
  export type BillableProductConfig = {
24
37
  product: BillableProduct;
25
38
  label: string;
@@ -36,6 +49,11 @@ export type BillableEventsTableRow = {
36
49
  raw: ChartData;
37
50
  challengePrompts?: ChallengePrompt[];
38
51
  providers?: BrandProviders;
52
+ dealName?: string | null;
53
+ dealCurrentStage?: string | null;
54
+ dealFurthestStage?: string | null;
55
+ billable?: boolean | null;
56
+ billingNotes?: string | null;
39
57
  };
40
58
  export type BillableEventsTableProps = {
41
59
  data: BillableEventsTableRow[];
@@ -45,6 +63,11 @@ export type BillableEventsTableProps = {
45
63
  onSortedDataChange?: (sortedData: BillableEventsTableRow[]) => void;
46
64
  columnSlots?: Record<string, (row: BillableEventsTableRow) => React.ReactNode>;
47
65
  topLevelColumns?: BillableEventColumn[];
66
+ /**
67
+ * Ordered columns/groups rendered between Customer Name and Brand Name.
68
+ * Opt-in, omitted ⇒ unchanged layout.
69
+ */
70
+ leadingColumns?: BillableLeadingColumn[];
48
71
  /**
49
72
  * Show the leading Customer Name column. Defaults to `true`. Set `false`
50
73
  * for views scoped to a single customer where the column would be redundant.
@@ -4,6 +4,7 @@ interface BrandDetailsPanelProps {
4
4
  customerUuid?: string;
5
5
  challengePrompts?: ChallengePrompt[];
6
6
  providers?: BrandProviders;
7
+ billingNotes?: string | null;
7
8
  }
8
- export declare function BrandDetailsPanel({ brandUuid, customerUuid, challengePrompts, providers, }: Readonly<BrandDetailsPanelProps>): JSX.Element;
9
+ export declare function BrandDetailsPanel({ brandUuid, customerUuid, challengePrompts, providers, billingNotes, }: Readonly<BrandDetailsPanelProps>): JSX.Element;
9
10
  export {};
@@ -1 +1 @@
1
- "use strict";import{Box as l,Stack as d,Typography as i}from"@mui/material";import{CopyableUuid as v}from"../../CopyableUuid/index.mjs";import{formatChallengeInput as P,formatPromptForChallenge as y,formatHealthDataProviderMode as b}from"./format.mjs";import{jsx as e,jsxs as o}from"react/jsx-runtime";const h={fontSize:11,fontWeight:700,letterSpacing:.6,textTransform:"uppercase",color:"text.primary",mb:1.5},p={fontSize:14,fontWeight:700,color:"text.primary",mb:1},c={fontSize:12,fontWeight:600,color:"text.secondary",mb:.5},m={m:0,pl:3,"& li":{mb:.25},"& li::marker":{color:"text.secondary",fontWeight:500}},u={fontSize:12,color:"text.secondary",mr:.75};function S({brandUuid:n,customerUuid:r,challengePrompts:a,providers:t}){const s=!!(t!=null&&t.allowedProviders&&t.allowedProviders.length>0),f=!!(t&&(t.healthDataProviders&&t.healthDataProviders.length>0||t.healthDataProviderMode));return e(l,{sx:{p:2},children:o(d,{spacing:3,children:[e(D,{brandUuid:n,customerUuid:r}),e(U,{challengePrompts:a,providers:t,hasSignupProviders:s,hasHealth:f})]})})}function D({brandUuid:n,customerUuid:r}){return o(l,{children:[e(i,{sx:h,children:"Identifiers"}),o(d,{direction:{xs:"column",sm:"column"},spacing:{xs:.5,sm:.5},children:[e(g,{label:"Brand UUID",value:n}),r&&e(g,{label:"Customer UUID",value:r})]})]})}function g({label:n,value:r}){return o(d,{direction:"row",alignItems:"center",children:[o(i,{component:"span",sx:u,children:[n,":"]}),e(v,{uuid:r,label:n,variant:"button",head:36,mono:!0,typographyProps:{fontWeight:800},iconSx:{fontSize:14,p:.125}})]})}function U({challengePrompts:n,providers:r,hasSignupProviders:a,hasHealth:t}){return o(l,{children:[e(i,{sx:h,children:"Settings"}),o(d,{direction:{xs:"column",md:"row"},spacing:4,alignItems:"flex-start",children:[e(l,{sx:{flex:1,minWidth:0},children:e(C,{challengePrompts:n,allowedProviders:r?.allowedProviders,hasSignupProviders:a})}),t&&r&&e(l,{sx:{flex:1,minWidth:0},children:e(w,{providers:r})})]})]})}function C({challengePrompts:n,allowedProviders:r,hasSignupProviders:a}){return o(l,{children:[e(i,{sx:p,children:"1-Click Signup"}),o(d,{spacing:1.5,children:[e(I,{prompts:n}),a&&r&&e(x,{providers:r,ordered:!0})]})]})}function w({providers:n}){const r=n.healthDataProviders??[],a=n.healthDataProviderMode==="parallel";return o(l,{children:[e(i,{sx:p,children:"1-Click Health"}),e(x,{providers:r,mode:n.healthDataProviderMode,ordered:!a})]})}function I({prompts:n}){return o(l,{children:[e(i,{sx:c,children:"Challenges"}),n&&n.length>0?e(l,{component:"ol",sx:m,children:n.map((r,a)=>o(i,{component:"li",variant:"body2",children:[P(r.type)," (",y(r.promptForChallenge),")"]},`${r.type}-${a}`))}):e(i,{variant:"body2",color:"text.secondary",fontStyle:"italic",sx:{pl:1},children:"None configured"})]})}function x({providers:n,mode:r,ordered:a}){return n.length===0?o(l,{children:[e(i,{sx:c,children:"Data Providers"}),e(i,{variant:"body2",color:"text.secondary",fontStyle:"italic",sx:{pl:1},children:"None configured"})]}):o(l,{children:[e(i,{sx:c,children:"Data Providers"}),r&&o(d,{direction:"row",alignItems:"baseline",spacing:.5,sx:{mb:.5},children:[e(i,{component:"span",sx:u,children:"Mode:"}),e(i,{component:"span",variant:"body2",fontWeight:600,children:b(r)})]}),e(l,{component:a?"ol":"ul",sx:m,children:n.map((t,s)=>e(i,{component:"li",variant:"body2",children:t},`${t}-${s}`))})]})}export{S as BrandDetailsPanel};
1
+ "use strict";import{Box as t,Stack as d,Typography as o}from"@mui/material";import{CopyableUuid as b}from"../../CopyableUuid/index.mjs";import{formatChallengeInput as y,formatPromptForChallenge as S,formatHealthDataProviderMode as D}from"./format.mjs";import{jsx as e,jsxs as i}from"react/jsx-runtime";const c={fontSize:11,fontWeight:700,letterSpacing:.6,textTransform:"uppercase",color:"text.primary",mb:1.5},m={fontSize:14,fontWeight:700,color:"text.primary",mb:1},h={fontSize:12,fontWeight:600,color:"text.secondary",mb:.5},u={m:0,pl:3,"& li":{mb:.25},"& li::marker":{color:"text.secondary",fontWeight:500}},g={fontSize:12,color:"text.secondary",mr:.75};function U({brandUuid:r,customerUuid:n,challengePrompts:a,providers:l,billingNotes:s}){var p;const v=!!(l!=null&&l.allowedProviders&&l.allowedProviders.length>0),P=!!(l&&((p=l.healthDataProviders)!=null&&p.length||l.healthDataProviderMode));return e(t,{sx:{p:2},children:i(d,{spacing:3,children:[e(C,{brandUuid:r,customerUuid:n}),s!=null&&s.trim()!==""&&e(w,{billingNotes:s}),e(W,{challengePrompts:a,providers:l,hasSignupProviders:v,hasHealth:P})]})})}function w({billingNotes:r}){return i(t,{children:[e(o,{sx:c,children:"Billing Notes"}),e(o,{variant:"body2",sx:{whiteSpace:"pre-wrap"},children:r})]})}function C({brandUuid:r,customerUuid:n}){return i(t,{children:[e(o,{sx:c,children:"Identifiers"}),i(d,{direction:{xs:"column",sm:"column"},spacing:{xs:.5,sm:.5},children:[e(x,{label:"Brand UUID",value:r}),n&&e(x,{label:"Customer UUID",value:n})]})]})}function x({label:r,value:n}){return i(d,{direction:"row",alignItems:"center",children:[i(o,{component:"span",sx:g,children:[r,":"]}),e(b,{uuid:n,label:r,variant:"button",head:36,mono:!0,typographyProps:{fontWeight:800},iconSx:{fontSize:14,p:.125}})]})}function W({challengePrompts:r,providers:n,hasSignupProviders:a,hasHealth:l}){return i(t,{children:[e(o,{sx:c,children:"Settings"}),i(d,{direction:{xs:"column",md:"row"},spacing:4,alignItems:"flex-start",children:[e(t,{sx:{flex:1,minWidth:0},children:e(I,{challengePrompts:r,allowedProviders:n?.allowedProviders,hasSignupProviders:a})}),l&&n&&e(t,{sx:{flex:1,minWidth:0},children:e(N,{providers:n})})]})]})}function I({challengePrompts:r,allowedProviders:n,hasSignupProviders:a}){return i(t,{children:[e(o,{sx:m,children:"1-Click Signup"}),i(d,{spacing:1.5,children:[e(z,{prompts:r}),a&&n&&e(f,{providers:n,ordered:!0})]})]})}function N({providers:r}){const n=r.healthDataProviders??[],a=r.healthDataProviderMode==="parallel";return i(t,{children:[e(o,{sx:m,children:"1-Click Health"}),e(f,{providers:n,mode:r.healthDataProviderMode,ordered:!a})]})}function z({prompts:r}){return i(t,{children:[e(o,{sx:h,children:"Challenges"}),r&&r.length>0?e(t,{component:"ol",sx:u,children:r.map((n,a)=>i(o,{component:"li",variant:"body2",children:[y(n.type)," (",S(n.promptForChallenge),")"]},`${n.type}-${a}`))}):e(o,{variant:"body2",color:"text.secondary",fontStyle:"italic",sx:{pl:1},children:"None configured"})]})}function f({providers:r,mode:n,ordered:a}){return r.length===0?i(t,{children:[e(o,{sx:h,children:"Data Providers"}),e(o,{variant:"body2",color:"text.secondary",fontStyle:"italic",sx:{pl:1},children:"None configured"})]}):i(t,{children:[e(o,{sx:h,children:"Data Providers"}),n&&i(d,{direction:"row",alignItems:"baseline",spacing:.5,sx:{mb:.5},children:[e(o,{component:"span",sx:g,children:"Mode:"}),e(o,{component:"span",variant:"body2",fontWeight:600,children:D(n)})]}),e(t,{component:a?"ol":"ul",sx:u,children:r.map((l,s)=>e(o,{component:"li",variant:"body2",children:l},`${l}-${s}`))})]})}export{U as BrandDetailsPanel};
@@ -1,9 +1,11 @@
1
- import { BillableProduct, BillableEventColumn, BillableEventsTableRow } from './BillableEventsTable.types';
1
+ import { BillableProduct, BillableEventColumn, BillableEventsTableRow, BillableLeadingColumn } from './BillableEventsTable.types';
2
2
  interface ExportBillableEventsToCsvOptions {
3
3
  data: BillableEventsTableRow[];
4
4
  visibleProducts?: BillableProduct[];
5
5
  filename?: string;
6
6
  topLevelColumns?: BillableEventColumn[];
7
+ /** Leading columns/groups (between Customer and Brand), matches the table's `leadingColumns`. */
8
+ leadingColumns?: BillableLeadingColumn[];
7
9
  columnFormatters?: Record<string, (value: number, row: BillableEventsTableRow) => string>;
8
10
  /**
9
11
  * Include the `Customer Name` and `Customer UUID` columns. Defaults to
@@ -11,5 +13,5 @@ interface ExportBillableEventsToCsvOptions {
11
13
  */
12
14
  showCustomerColumn?: boolean;
13
15
  }
14
- export declare function exportBillableEventsToCsv({ data, visibleProducts, filename, topLevelColumns, columnFormatters, showCustomerColumn, }: ExportBillableEventsToCsvOptions): void;
16
+ export declare function exportBillableEventsToCsv({ data, visibleProducts, filename, topLevelColumns, leadingColumns, columnFormatters, showCustomerColumn, }: ExportBillableEventsToCsvOptions): void;
15
17
  export {};
@@ -1,3 +1,3 @@
1
- "use strict";import{BillableProduct as B,BILLABLE_PRODUCTS as C}from"./BillableEventsTable.types.mjs";function o(u){const n=String(u);return n.includes(",")||n.includes('"')||n.includes(`
2
- `)?`"${n.replace(/"/g,'""')}"`:n}function w({data:u,visibleProducts:n,filename:U="billable-events",topLevelColumns:c=[],columnFormatters:a,showCustomerColumn:f=!0}){const k=n??Object.values(B),h=C.filter(e=>k.includes(e.product)),b=new Set(c.map(e=>e.key)),v=h.flatMap(e=>e.columns).filter(e=>!b.has(e.key)),i=[],L=(f?2:0)+3,m=[...new Array(L).fill(""),...c.map(()=>"")];for(const e of h){const s=e.columns.filter(t=>!b.has(t.key)).length;if(s!==0){m.push(o(e.label));for(let t=1;t<s;t++)m.push("")}}i.push(m.join(","));const p=[...f?["Customer Name","Customer UUID"]:[],"Brand Name","Brand UUID","Integration Type"];for(const e of c)p.push(o(e.label));for(const e of v)p.push(o(e.label));i.push(p.join(","));for(const e of u){const s=[...f?[o(e.customerName??""),o(e.customerUuid??"")]:[],o(e.brand),o(e.brandUuid),o(e.integrationType)];for(const t of c){const r=e.metrics[t.key]??0,l=a?.[t.key];s.push(l?o(l(r,e)):String(r))}for(const t of v){const r=e.metrics[t.key]??0,l=a?.[t.key];s.push(l?o(l(r,e)):String(r))}i.push(s.join(","))}const g=i.join(`
3
- `),j=new Blob([g],{type:"text/csv;charset=utf-8;"}),y=URL.createObjectURL(j),d=document.createElement("a");d.href=y,d.download=`${U}.csv`,d.click(),URL.revokeObjectURL(y)}export{w as exportBillableEventsToCsv};
1
+ "use strict";import{BillableProduct as C,BILLABLE_PRODUCTS as j}from"./BillableEventsTable.types.mjs";function c(s){const o=String(s);return o.includes(",")||o.includes('"')||o.includes(`
2
+ `)?`"${o.replace(/"/g,'""')}"`:o}function k({data:s,visibleProducts:o,filename:v="billable-events",topLevelColumns:i=[],leadingColumns:d=[],columnFormatters:b,showCustomerColumn:f=!0}){const h=o??Object.values(C),L=j.filter(e=>h.includes(e.product)),U=new Set(i.map(e=>e.key)),n=e=>l=>{const u=l.metrics[e.key]??0,p=b?.[e.key];return p?p(u,l):String(u)},a=[];f&&a.push({label:"Customer Name",value:e=>e.customerName??""},{label:"Customer UUID",value:e=>e.customerUuid??""});for(const e of d)e.type==="column"?a.push({label:e.column.label,value:n(e.column)}):e.columns.forEach((l,u)=>{a.push({label:l.label,groupLabel:u===0?e.label:void 0,value:n(l)})});a.push({label:"Brand Name",value:e=>e.brand},{label:"Brand UUID",value:e=>e.brandUuid},{label:"Integration Type",value:e=>e.integrationType});for(const e of i)a.push({label:e.label,value:n(e)});for(const e of L)e.columns.filter(l=>!U.has(l.key)).forEach((l,u)=>{a.push({label:l.label,groupLabel:u===0?e.label:void 0,value:n(l)})});const t=[];t.push(a.map(e=>e.groupLabel?c(e.groupLabel):"").join(",")),t.push(a.map(e=>c(e.label)).join(","));for(const e of s)t.push(a.map(l=>c(l.value(e))).join(","));const g=t.join(`
3
+ `),y=new Blob([g],{type:"text/csv;charset=utf-8;"}),m=URL.createObjectURL(y),r=document.createElement("a");r.href=m,r.download=`${v}.csv`,r.click(),URL.revokeObjectURL(m)}export{k as exportBillableEventsToCsv};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@verifiedinc-public/shared-ui-elements",
3
- "version": "11.0.2",
3
+ "version": "11.0.3-beta.0",
4
4
  "description": "A set of UI components, utilities that is shareable with the core apps.",
5
5
  "private": false,
6
6
  "sideEffects": false,