@verifiedinc-public/shared-ui-elements 3.18.1 → 3.18.2-beta.1

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.
@@ -4,7 +4,7 @@ interface ChartDataPoint {
4
4
  date: number;
5
5
  value: number;
6
6
  }
7
- interface SeriesChartData {
7
+ export interface SeriesChartData {
8
8
  integrationType: string;
9
9
  uuid: string;
10
10
  name: string;
@@ -0,0 +1 @@
1
+ export * from './one-click-time-series';
@@ -0,0 +1,26 @@
1
+ import { SeriesChartData } from '../../../SeriesChart';
2
+ import { default as React } from 'react';
3
+ import { BrandFilter } from '../OneClickTimeSeriesDataMapper';
4
+ interface OneClickOverTimeChartProps {
5
+ data: SeriesChartData[];
6
+ isLoading: boolean;
7
+ isFetching: boolean;
8
+ onRefresh: () => void;
9
+ lastUpdated: number;
10
+ filter: {
11
+ timezone: string;
12
+ brands: BrandFilter[];
13
+ };
14
+ LoadingComponent?: React.ComponentType;
15
+ EmptyStateComponent?: React.ComponentType;
16
+ LastUpdatedComponent?: React.ComponentType<{
17
+ lastUpdated: number;
18
+ }>;
19
+ ContentLoaderComponent?: React.ComponentType<{
20
+ isLoading: boolean;
21
+ children: React.ReactNode;
22
+ }>;
23
+ RefreshIconComponent?: React.ComponentType;
24
+ }
25
+ export declare function OneClickOverTimeChart({ data, isLoading, isFetching, onRefresh, lastUpdated, filter, LoadingComponent, EmptyStateComponent, LastUpdatedComponent, ContentLoaderComponent, RefreshIconComponent, }: Readonly<OneClickOverTimeChartProps>): React.ReactNode;
26
+ export {};
@@ -0,0 +1 @@
1
+ export declare function useStyle(): Record<string, any>;
@@ -0,0 +1,2 @@
1
+ export * from './OneClickOverTimeChart';
2
+ export * from './OneClickOverTimeChart.style';
@@ -0,0 +1,50 @@
1
+ export interface Brand {
2
+ brandUuid: string;
3
+ brandName: string;
4
+ integrationType: string;
5
+ additionalData?: {
6
+ primaryColor?: string;
7
+ };
8
+ }
9
+ export interface BrandFilter {
10
+ value: string;
11
+ _raw: Brand;
12
+ }
13
+ export interface TimeSeriesDataPoint {
14
+ date: number;
15
+ value: number;
16
+ }
17
+ export interface TimeSeriesChartData {
18
+ uuid: string;
19
+ name: string;
20
+ color: string;
21
+ integrationType: string;
22
+ chartData: TimeSeriesDataPoint[];
23
+ }
24
+ export interface MapTimeSeriesDataOptions {
25
+ brands: BrandFilter[];
26
+ data: Array<{
27
+ interval?: Array<{
28
+ oneClickCreated: number;
29
+ oneClickSuccess: number;
30
+ date: number;
31
+ totalCost: string;
32
+ [key: string]: any;
33
+ }>;
34
+ brandUuid: string;
35
+ brandName: string;
36
+ overall: {
37
+ oneClickCreated: number;
38
+ oneClickSuccess: number;
39
+ totalCost: string;
40
+ };
41
+ }>;
42
+ keyValue: string;
43
+ defaultColor?: string;
44
+ }
45
+ /**
46
+ * Maps raw time series data into a format suitable for charting
47
+ * @param options Configuration options for mapping the data
48
+ * @returns Array of formatted time series data ready for charting
49
+ */
50
+ export declare function mapTimeSeriesData(options: MapTimeSeriesDataOptions): TimeSeriesChartData[];
@@ -0,0 +1,2 @@
1
+ export * from './OneClickOverTimeChart';
2
+ export * from './OneClickTimeSeriesDataMapper';
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- "use strict";import{A as e,c as t,l as r,B as o,m as n,C as i,D as m,f as u,E as l,j as c,F as d,I as p,b as h,L as S,O as g,h as f,e as k,P,Q as y,R as C,S as D,d as b,k as B,T as I,g as T,a as w,V as N,i as R,n as v,o as Y,q as x,r as A,p as G,s as L,v as M}from"./shared/index-C_0INAsR.mjs";import{a as O,b as W,P as E,S as F}from"./shared/PageSectionHeader-DdpDhBZG.mjs";import{C as U,W as V,u as j}from"./shared/index-KVVTzcea.mjs";import{b as z,d as Q,a as q,j as H,u as $,e as Z,c as _,f as J,g as K,h as X,i as aa}from"./shared/useIntersectionObserver-CbpWuEs0.mjs";import{u as sa}from"./shared/useCopyToClipboard-BALOSYVW.mjs";import{a as ea,u as ta}from"./shared/useOnClickOutside-P5GTcgh8.mjs";import{u as ra}from"./shared/useCounter-BV32zXDQ.mjs";import{u as oa}from"./shared/usePrevious-DyvR1iCQ.mjs";import{b as na,a as ia,v as ma,e as ua,d as la,p as ca,u as da,h as pa,j as ha,g as Sa,o as ga,s as fa,m as ka,c as Pa,l as ya,n as Ca,q as Da,f as ba,i as Ba,r as Ia,z as Ta,t as wa,x as Na,k as Ra,w as va,y as Ya}from"./shared/shadows-Dhd7FrwF.mjs";import{f as xa,b as Aa,a as Ga,c as La}from"./shared/date-Cq0LS2Mr.mjs";import{masks as Ma}from"./utils/masks/index.mjs";import{M as Oa,S as Wa,U as Ea,d as Fa,e as Ua,f as Va,g as ja,a as za,s as Qa}from"./shared/unix.schema-CMYTtXco.mjs";import{p as qa}from"./shared/phone.schema-XBbyizhq.mjs";import{SnackbarProvider as Ha}from"notistack";async function $a(a){try{return[await a,null]}catch(s){return[null,s]}}const Za=a=>a.replace(/(\d{3})-?(\d{2})-?(\d{4})/,"\u2022\u2022\u2022-\u2022\u2022-$3");export{e as AcceptTermsNotice,t as Alert,r as Backdrop,o as Banner,n as Button,i as CredentialRequestsEditor,U as CustomAlertComponent,m as DateInput,u as DateRangeInput,l as EmailInput,c as ExactBirthdayBanner,d as FullWidthAlert,p as Image,h as LegalLink,S as LinkButton,Oa as MaskedAndUnmaskedSSNSchema,g as OTPInput,f as OneClickForm,O as PageHeader,W as PageSectionHeader,E as Paragraph,k as PhoneInput,P as PrivacyPolicyNotice,y as QRCodeDisplay,C as ResendPhoneBanner,D as SSNInput,Wa as SSNSchema,F as SectionHeader,b as SelectInput,Ha as SnackbarProvider,B as TestPhoneNumbersBanner,I as TextButton,T as TimezoneInput,w as Typography,Ea as USDateSchema,N as VerifiedImage,R as VerifiedIncLogo,V as When,na as black,ia as blue,ma as colors,v as countries,ua as darkBlue,la as darkGreen,ca as darkGrey,da as darkGreyContrast,pa as darkRed,ha as darkYellow,Fa as descriptionSchema,Ua as emailSchema,Va as fieldSchema,xa as formatDateMMDDYYYY,Aa as formatDateMMYY,Ga as formatDateToTimestamp,La as formatExtendedDate,ja as getDateSchemaWithPastValidation,Y as getPhoneData,x as getPhoneDataByFieldName,za as getUnixSchema,Sa as green,ga as grey,fa as greyContrast,ka as infoContrast,Pa as lightBlue,ya as lightGreen,Ca as lightGrey,Da as lightGreyContrast,ba as lightRed,Ba as lightYellow,Ma as masks,A as omitProperties,G as parseToPhoneNational,qa as phoneSchema,Ia as red,Ta as shadows,L as sortByCountryName,Za as ssnFormatter,Qa as stateSchema,wa as textDisabled,Na as theme,z as useCallbackRef,sa as useCopyToClipboard,ra as useCounter,Q as useDebounceValue,q as useDisclosure,H as useIntersectionObserver,$ as useLocalStorage,ea as useOnClickOutside,oa as usePrevious,ta as useQRCode,Z as useScript,_ as useSearchParams,j as useSnackbar,J as useThrottle,K as useToggle,X as useWindowScroll,aa as useWindowSize,M as validatePhone,Ra as warningContrast,va as white,$a as wrapPromise,Ya as yellow};
1
+ "use strict";import{A as l,c as u,l as c,B as d,m as p,C as h,D as g,f as S,E as f,j as C,F as P,I as k,b as y,L as b,O as D,h as T,e as B,P as I,Q as w,R as v,S as N,d as R,k as Y,T as x,g as $,a as A,V as G,i as L,n as M,o as O,q as W,r as z,p as E,s as F,v as V}from"./shared/index-C_0INAsR.mjs";import{a as H,b as U,P as j,S as q}from"./shared/PageSectionHeader-DdpDhBZG.mjs";import{C as Q,W as K,u as X}from"./shared/index-KVVTzcea.mjs";import{b as _,d as J,a as Z,j as aa,u as sa,e as ea,c as ta,f as ra,g as oa,h as na,i as ia}from"./shared/useIntersectionObserver-CbpWuEs0.mjs";import{u as ma}from"./shared/useCopyToClipboard-BALOSYVW.mjs";import{a as la,u as ua}from"./shared/useOnClickOutside-P5GTcgh8.mjs";import{u as ca}from"./shared/useCounter-BV32zXDQ.mjs";import{u as da}from"./shared/usePrevious-DyvR1iCQ.mjs";import{b as pa,a as ha,v as ga,e as Sa,d as fa,p as Ca,u as Pa,h as ka,j as ya,g as ba,o as Da,s as Ta,m as Ba,c as Ia,l as wa,n as va,q as Na,f as Ra,i as Ya,r as xa,z as $a,t as Aa,x as Ga,k as La,w as Ma,y as Oa}from"./shared/shadows-Dhd7FrwF.mjs";import{f as Wa,b as za,a as Ea,c as Fa}from"./shared/date-Cq0LS2Mr.mjs";import{masks as Va}from"./utils/masks/index.mjs";import{kebabCaseToPretty as Ha,toCapitalize as Ua,toSentenceCase as ja}from"./utils/string/index.mjs";import{M as qa,S as Qa,U as Ka,d as Xa,e as _a,f as Ja,g as Za,a as as,s as ss}from"./shared/unix.schema-CMYTtXco.mjs";import{p as es}from"./shared/phone.schema-XBbyizhq.mjs";import{SnackbarProvider as ts}from"notistack";async function rs(e){try{return[await e,null]}catch(r){return[null,r]}}const os=e=>e.replace(/(\d{3})-?(\d{2})-?(\d{4})/,"\u2022\u2022\u2022-\u2022\u2022-$3"),ns=e=>{var r;const o=((r=e.replace(/-/g,"").match(/.{1,2}/g))==null?void 0:r.map(a=>parseInt(a,16)))??[],n=o.reduce((a,t)=>(a+t)%256,0),i=o.slice(1).reduce((a,t)=>(a+t)%256,0),m=o.slice(2).reduce((a,t)=>(a+t)%256,0),s=a=>a.toString(16).padStart(2,"0");return console.log(`#${s(n)}${s(i)}${s(m)}`),`#${s(n)}${s(i)}${s(m)}`};export{l as AcceptTermsNotice,u as Alert,c as Backdrop,d as Banner,p as Button,h as CredentialRequestsEditor,Q as CustomAlertComponent,g as DateInput,S as DateRangeInput,f as EmailInput,C as ExactBirthdayBanner,P as FullWidthAlert,k as Image,y as LegalLink,b as LinkButton,qa as MaskedAndUnmaskedSSNSchema,D as OTPInput,T as OneClickForm,H as PageHeader,U as PageSectionHeader,j as Paragraph,B as PhoneInput,I as PrivacyPolicyNotice,w as QRCodeDisplay,v as ResendPhoneBanner,N as SSNInput,Qa as SSNSchema,q as SectionHeader,R as SelectInput,ts as SnackbarProvider,Y as TestPhoneNumbersBanner,x as TextButton,$ as TimezoneInput,A as Typography,Ka as USDateSchema,G as VerifiedImage,L as VerifiedIncLogo,K as When,pa as black,ha as blue,ga as colors,M as countries,Sa as darkBlue,fa as darkGreen,Ca as darkGrey,Pa as darkGreyContrast,ka as darkRed,ya as darkYellow,Xa as descriptionSchema,_a as emailSchema,Ja as fieldSchema,Wa as formatDateMMDDYYYY,za as formatDateMMYY,Ea as formatDateToTimestamp,Fa as formatExtendedDate,Za as getDateSchemaWithPastValidation,O as getPhoneData,W as getPhoneDataByFieldName,as as getUnixSchema,ba as green,Da as grey,Ta as greyContrast,Ba as infoContrast,Ha as kebabCaseToPretty,Ia as lightBlue,wa as lightGreen,va as lightGrey,Na as lightGreyContrast,Ra as lightRed,Ya as lightYellow,Va as masks,z as omitProperties,E as parseToPhoneNational,es as phoneSchema,xa as red,$a as shadows,F as sortByCountryName,os as ssnFormatter,ss as stateSchema,Aa as textDisabled,Ga as theme,Ua as toCapitalize,ja as toSentenceCase,_ as useCallbackRef,ma as useCopyToClipboard,ca as useCounter,J as useDebounceValue,Z as useDisclosure,aa as useIntersectionObserver,sa as useLocalStorage,la as useOnClickOutside,da as usePrevious,ua as useQRCode,ea as useScript,ta as useSearchParams,X as useSnackbar,ra as useThrottle,oa as useToggle,na as useWindowScroll,ia as useWindowSize,ns as uuidToHashedColor,V as validatePhone,La as warningContrast,Ma as white,rs as wrapPromise,Oa as yellow};
@@ -4,3 +4,5 @@ export * from './phone';
4
4
  export * from './masks/index';
5
5
  export * from './omitProperty';
6
6
  export * from './ssn';
7
+ export * from './uuidColor';
8
+ export * from './string';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Converts a kebab-case string to a pretty format with proper capitalization
3
+ * Example: "one-click-auth" becomes "One Click Auth"
4
+ */
5
+ export declare const kebabCaseToPretty: (str: string) => string;
@@ -1,2 +1,3 @@
1
1
  export * from './toCapitalize';
2
2
  export * from './toSentenceCase';
3
+ export * from './formatKebabToPretty';
@@ -1 +1 @@
1
- "use strict";function a(e){return e.split(" ").map(t=>`${t.charAt(0).toUpperCase()}${t.slice(1).toLowerCase()}`).join(" ")}function o(e){return`${e.charAt(0).toUpperCase()}${e.slice(1).toLowerCase()}`}export{a as toCapitalize,o as toSentenceCase};
1
+ "use strict";function a(e){return e.split(" ").map(t=>`${t.charAt(0).toUpperCase()}${t.slice(1).toLowerCase()}`).join(" ")}function o(e){return`${e.charAt(0).toUpperCase()}${e.slice(1).toLowerCase()}`}const s=e=>e?e.split("-").map(t=>t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join(" "):"";export{s as kebabCaseToPretty,a as toCapitalize,o as toSentenceCase};
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Converts a UUID to a HEX color using a more distributed hash approach
3
+ * @param uuid - UUID string
4
+ * @returns HEX color string (e.g., #ff0000)
5
+ */
6
+ export declare const uuidToHashedColor: (uuid: string) => string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@verifiedinc-public/shared-ui-elements",
3
- "version": "3.18.1",
3
+ "version": "3.18.2-beta.1",
4
4
  "description": "A set of UI components, utilities that is shareable with the core apps.",
5
5
  "private": false,
6
6
  "keywords": [],