@dub/utils 0.1.49 → 0.1.51
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/chunk-2GGVV475.mjs +1 -0
- package/dist/chunk-53NZHOEL.mjs +1 -0
- package/dist/chunk-6P7TFBVI.mjs +1 -0
- package/dist/chunk-7Z2LSJXU.mjs +1 -0
- package/dist/chunk-AEBY4CZY.mjs +1 -0
- package/dist/chunk-C3D2Z37W.mjs +1 -0
- package/dist/chunk-D2EWHUD3.mjs +1 -0
- package/dist/chunk-LNXAG74J.mjs +1 -0
- package/dist/chunk-M5TLBZAD.mjs +1 -0
- package/dist/chunk-NI27TPGK.mjs +1 -0
- package/dist/chunk-PCR57VI4.mjs +1 -0
- package/dist/chunk-PI27NCT6.mjs +1 -0
- package/dist/chunk-PMMSULS6.mjs +1 -0
- package/dist/chunk-RDJCURTU.mjs +1 -0
- package/dist/chunk-RMFSUWEK.mjs +1 -0
- package/dist/chunk-RPKGWQQS.mjs +1 -0
- package/dist/chunk-SCVAM5HO.mjs +1 -0
- package/dist/chunk-SRVDGD5N.mjs +1 -0
- package/dist/chunk-T3OLVKAN.mjs +1 -0
- package/dist/chunk-TED7ASOQ.mjs +1 -0
- package/dist/chunk-VYWT6EBV.mjs +1 -0
- package/dist/chunk-WDEHOGZV.mjs +1 -0
- package/dist/chunk-WQV764AR.mjs +1 -0
- package/dist/chunk-YUUIEL6H.mjs +1 -0
- package/dist/chunk-ZPMWDZVB.mjs +1 -0
- package/dist/constants/dub-domains.mjs +1 -1
- package/dist/constants/index.mjs +1 -1
- package/dist/constants/pricing/pricing-plan-main-features.mjs +1 -1
- package/dist/constants/stablecoin-supported-countries.d.ts +3 -0
- package/dist/constants/stablecoin-supported-countries.mjs +1 -0
- package/dist/functions/datetime/format-period.mjs +1 -1
- package/dist/functions/datetime/index.mjs +1 -1
- package/dist/functions/domains.mjs +1 -1
- package/dist/functions/index.d.ts +2 -1
- package/dist/functions/index.mjs +1 -1
- package/dist/functions/link-constructor.mjs +1 -1
- package/dist/functions/parse-filter-value.d.ts +32 -0
- package/dist/functions/parse-filter-value.mjs +1 -0
- package/dist/functions/urls.d.ts +4 -1
- package/dist/functions/urls.mjs +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.mjs +1 -1
- package/dist/parse-filter-value-64a91fd5.d.ts +32 -0
- package/dist/pricing-plan-compare-features-1d5af5a9.d.ts +111 -0
- package/package.json +1 -1
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
type FilterOperator = "IS" | "IS_NOT" | "IS_ONE_OF" | "IS_NOT_ONE_OF";
|
|
2
|
+
type SQLOperator = "IN" | "NOT IN";
|
|
3
|
+
interface ParsedFilter {
|
|
4
|
+
operator: FilterOperator;
|
|
5
|
+
sqlOperator: SQLOperator;
|
|
6
|
+
values: string[];
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Parse filter value from URL format to structured filter
|
|
10
|
+
*
|
|
11
|
+
* Formats supported:
|
|
12
|
+
* - "US" → IS, values: ["US"], SQL: IN
|
|
13
|
+
* - "US,BR,FR" → IS_ONE_OF, values: ["US", "BR", "FR"], SQL: IN
|
|
14
|
+
* - "-US" → IS_NOT, values: ["US"], SQL: NOT IN
|
|
15
|
+
* - "-US,BR" → IS_NOT_ONE_OF, values: ["US", "BR"], SQL: NOT IN
|
|
16
|
+
*
|
|
17
|
+
* Note: All filters now use IN/NOT IN operators for consistency,
|
|
18
|
+
* even for single values. This simplifies SQL query generation.
|
|
19
|
+
*
|
|
20
|
+
* @param value - The filter value string (can include "-" prefix for negation)
|
|
21
|
+
* @returns Parsed filter with operator and values array
|
|
22
|
+
*/
|
|
23
|
+
declare function parseFilterValue(value: string | string[] | undefined): ParsedFilter | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Build filter value string from parsed filter
|
|
26
|
+
*
|
|
27
|
+
* @param parsed - The parsed filter object
|
|
28
|
+
* @returns URL-formatted filter string
|
|
29
|
+
*/
|
|
30
|
+
declare function buildFilterValue(parsed: ParsedFilter): string;
|
|
31
|
+
|
|
32
|
+
export { FilterOperator, ParsedFilter, SQLOperator, buildFilterValue, parseFilterValue };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a,b}from"../chunk-T3OLVKAN.mjs";export{b as buildFilterValue,a as parseFilterValue};
|
package/dist/functions/urls.d.ts
CHANGED
|
@@ -12,6 +12,9 @@ declare const paramsMetadata: {
|
|
|
12
12
|
key: string;
|
|
13
13
|
examples: string;
|
|
14
14
|
}[];
|
|
15
|
+
declare const getUTMParamsFromURL: (url: string) => {
|
|
16
|
+
[k: string]: string;
|
|
17
|
+
};
|
|
15
18
|
declare const getUrlWithoutUTMParams: (url: string) => string;
|
|
16
19
|
declare const getPrettyUrl: (url?: string | null) => string;
|
|
17
20
|
declare const createHref: (href: string, domain: string, utmParams?: Partial<Record<(typeof UTMTags)[number], string>>) => string;
|
|
@@ -20,4 +23,4 @@ declare const normalizeUrl: (url: string) => string;
|
|
|
20
23
|
declare function buildUrl(baseUrl: string, params?: Record<string, string | number | boolean | null | undefined>): string;
|
|
21
24
|
declare const getFileExtension: (url: string) => string | null;
|
|
22
25
|
|
|
23
|
-
export { UTMTags, buildUrl, constructURLFromUTMParams, createHref, getFileExtension, getParamsFromURL, getPathnameFromUrl, getPrettyUrl, getSearchParams, getSearchParamsWithArray, getUrlFromString, getUrlFromStringIfValid, getUrlObjFromString, getUrlWithoutUTMParams, isValidUrl, normalizeUrl, paramsMetadata };
|
|
26
|
+
export { UTMTags, buildUrl, constructURLFromUTMParams, createHref, getFileExtension, getParamsFromURL, getPathnameFromUrl, getPrettyUrl, getSearchParams, getSearchParamsWithArray, getUTMParamsFromURL, getUrlFromString, getUrlFromStringIfValid, getUrlObjFromString, getUrlWithoutUTMParams, isValidUrl, normalizeUrl, paramsMetadata };
|
package/dist/functions/urls.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q}from"../chunk-
|
|
1
|
+
import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r}from"../chunk-D2EWHUD3.mjs";export{h as UTMTags,q as buildUrl,i as constructURLFromUTMParams,n as createHref,r as getFileExtension,g as getParamsFromURL,o as getPathnameFromUrl,m as getPrettyUrl,e as getSearchParams,f as getSearchParamsWithArray,k as getUTMParamsFromURL,b as getUrlFromString,d as getUrlFromStringIfValid,c as getUrlObjFromString,l as getUrlWithoutUTMParams,a as isValidUrl,p as normalizeUrl,j as paramsMetadata};
|
package/dist/index.d.ts
CHANGED
|
@@ -54,6 +54,7 @@ export { log } from './functions/log.js';
|
|
|
54
54
|
export { nanoid } from './functions/nanoid.js';
|
|
55
55
|
export { nFormatter } from './functions/nformatter.js';
|
|
56
56
|
export { normalizeString } from './functions/normalize-string.js';
|
|
57
|
+
export { FilterOperator, ParsedFilter, SQLOperator, buildFilterValue, parseFilterValue } from './functions/parse-filter-value.js';
|
|
57
58
|
export { pick } from './functions/pick.js';
|
|
58
59
|
export { pluralize } from './functions/pluralize.js';
|
|
59
60
|
export { prettyPrint } from './functions/pretty-print.js';
|
|
@@ -68,7 +69,7 @@ export { textFetcher } from './functions/text-fetcher.js';
|
|
|
68
69
|
export { timeAgo } from './functions/time-ago.js';
|
|
69
70
|
export { trim } from './functions/trim.js';
|
|
70
71
|
export { truncate } from './functions/truncate.js';
|
|
71
|
-
export { UTMTags, buildUrl, constructURLFromUTMParams, createHref, getFileExtension, getParamsFromURL, getPathnameFromUrl, getPrettyUrl, getSearchParams, getSearchParamsWithArray, getUrlFromString, getUrlFromStringIfValid, getUrlObjFromString, getUrlWithoutUTMParams, isValidUrl, normalizeUrl, paramsMetadata } from './functions/urls.js';
|
|
72
|
+
export { UTMTags, buildUrl, constructURLFromUTMParams, createHref, getFileExtension, getParamsFromURL, getPathnameFromUrl, getPrettyUrl, getSearchParams, getSearchParamsWithArray, getUTMParamsFromURL, getUrlFromString, getUrlFromStringIfValid, getUrlObjFromString, getUrlWithoutUTMParams, isValidUrl, normalizeUrl, paramsMetadata } from './functions/urls.js';
|
|
72
73
|
import 'react';
|
|
73
74
|
import 'clsx';
|
|
74
75
|
import 'next';
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as
|
|
1
|
+
import{A as $b,a as ja,b as Aa,c as Ya,d as Za,e as _a,f as $a,g as ab,h as bb,i as cb,j as ob,k as pb,l as Mb,m as Nb,n as Ob,o as Pb,p as Qb,q as Rb,r as Sb,s as Tb,t as Ub,u as Vb,v as Wb,w as Xb,x as Yb,y as Zb,z as _b}from"./chunk-RPKGWQQS.mjs";import{a as Da}from"./chunk-HR4YFT2T.mjs";import{a as Ea}from"./chunk-AQPTJK67.mjs";import{a as ta,b as ua,c as va}from"./chunk-KIDNKMJ2.mjs";import{a as xa}from"./chunk-STMJW3HF.mjs";import{a as wa}from"./chunk-CP4WO7MM.mjs";import{a as za}from"./chunk-2XEQCQCO.mjs";import{a as ya}from"./chunk-53SZZ2QK.mjs";import{a as Ba}from"./chunk-UWXN5NEH.mjs";import{a as Ca}from"./chunk-WOURDH2J.mjs";import{a as Ib}from"./chunk-NQP6WK7A.mjs";import{a as Jb}from"./chunk-BWEJXFI3.mjs";import{a as Kb}from"./chunk-PZ5KH242.mjs";import{a as Lb}from"./chunk-E3EM6ARH.mjs";import{a as Ga,b as Ha,c as Ia,d as Ja,e as Ka,f as La,g as Ma,h as Na,i as Oa,j as Pa,k as Qa,l as Ra,m as Sa,n as Ta,o as Ua,p as Va,q as Wa,r as Xa}from"./chunk-D2EWHUD3.mjs";import{a as ac}from"./chunk-MJT4YMEY.mjs";import{a as wb}from"./chunk-EHUYHMHD.mjs";import{a as xb}from"./chunk-NFQB22EC.mjs";import{a as yb,b as zb,c as Ab}from"./chunk-LPWMMOGV.mjs";import{a as Bb,b as Cb}from"./chunk-IHX4EDUF.mjs";import{a as Db}from"./chunk-RONJDARA.mjs";import{a as Eb}from"./chunk-3Q25XO3O.mjs";import{a as Fb}from"./chunk-Y37NQHZ4.mjs";import{a as Hb}from"./chunk-PPEZOXLP.mjs";import{a as Gb}from"./chunk-FKLXONKR.mjs";import{a as lb,b as mb,c as nb}from"./chunk-WKSJXYEU.mjs";import{a as qb}from"./chunk-RFDM4NES.mjs";import{a as rb}from"./chunk-OWYWG4M6.mjs";import{a as ia}from"./chunk-NWFCCRLG.mjs";import{a as sb}from"./chunk-GRNEXX4Q.mjs";import{a as tb,b as ub}from"./chunk-T3OLVKAN.mjs";import{a as vb}from"./chunk-N5E6WGFW.mjs";import{a as eb}from"./chunk-EMO4MGOU.mjs";import{a as fb}from"./chunk-VQH3G3BC.mjs";import{a as gb}from"./chunk-ZTPDEOIY.mjs";import{a as hb}from"./chunk-XN7WAYOX.mjs";import{a as ib}from"./chunk-F4P6WJV7.mjs";import{a as jb}from"./chunk-JKFE3UP3.mjs";import{a as kb}from"./chunk-NZ4UYKAT.mjs";import{a as oa}from"./chunk-NEIHTFSW.mjs";import{a as pa}from"./chunk-HJD7AJT4.mjs";import{a as qa}from"./chunk-VZT64RAP.mjs";import{a as sa}from"./chunk-KDMJUM2I.mjs";import{a as ra}from"./chunk-FJFDTHKA.mjs";import{a as Fa}from"./chunk-ZECUYKGD.mjs";import{a as db}from"./chunk-UCO6SXQA.mjs";import{a as ca,b as da}from"./chunk-2N7XAD3K.mjs";import{a as ea,b as fa}from"./chunk-KQ4NF54J.mjs";import{a as ga}from"./chunk-W27XWZBS.mjs";import{a as ha}from"./chunk-6MXH6P2P.mjs";import{a as ka}from"./chunk-52NREKQ5.mjs";import{a as la}from"./chunk-ORB6LTBV.mjs";import{a as ma}from"./chunk-PMOQSSOL.mjs";import{a as na}from"./chunk-2OJAP233.mjs";import{a as I,b as J,c as K}from"./chunk-VYWT6EBV.mjs";import{a as L,b as M,c as N,d as O,e as P,f as Q}from"./chunk-2MOTUFXD.mjs";import{a as R}from"./chunk-PYD75RYX.mjs";import{a as S,b as T}from"./chunk-2OGPCKQX.mjs";import{a as m,b as n,c as o,d as p,e as q,f as r,g as s,h as t,i as u,j as v,k as w,l as x,m as y,n as z,o as A,p as B,q as C,r as D,s as E,t as F,u as G,v as H}from"./chunk-C5CCX7UU.mjs";import{a as U,b as V,c as W}from"./chunk-DEIZ6NOQ.mjs";import{a as X,b as Y,c as Z,d as _,e as $,f as aa,g as ba}from"./chunk-2YQGBO42.mjs";import{a}from"./chunk-YUMUNL66.mjs";import{a as b}from"./chunk-JO76EBDG.mjs";import{a as c,b as d,c as e}from"./chunk-RRVBMEYA.mjs";import{a as f,b as g,c as h}from"./chunk-6YGW3G46.mjs";import{a as i}from"./chunk-6OQAYXTQ.mjs";import{a as j}from"./chunk-CELI6EJU.mjs";import{a as k,b as l}from"./chunk-SYT2IXG6.mjs";export{E as ACME_PROGRAM_ID,D as ACME_WORKSPACE_ID,t as ADMIN_HOSTNAMES,Rb as ADVANCED_PLAN,R as ALL_TOOLS,s as API_DOMAIN,r as API_HOSTNAMES,p as APP_DOMAIN,q as APP_DOMAIN_WITH_NGROK,o as APP_HOSTNAMES,m as APP_NAME,Qb as BUSINESS_PLAN,b as CONNECT_SUPPORTED_COUNTRIES,c as CONTINENTS,d as CONTINENT_CODES,f as COUNTRIES,e as COUNTRIES_TO_CONTINENTS,g as COUNTRY_CODES,i as COUNTRY_CURRENCY_CODES,j as COUNTRY_PHONE_CODES,X as DEFAULT_LINK_PROPS,_ as DEFAULT_PAGINATION_LIMIT,U as DEFAULT_REDIRECTS,K as DUB_DEMO_LINKS,I as DUB_DOMAINS,J as DUB_DOMAINS_ARRAY,aa as DUB_FOUNDING_DATE,V as DUB_HEADERS,x as DUB_LOGO,y as DUB_LOGO_SQUARE,z as DUB_QR_LOGO,B as DUB_THUMBNAIL,A as DUB_WORDMARK,C as DUB_WORKSPACE_ID,Sb as ENTERPRISE_PLAN,h as EU_COUNTRY_CODES,Ob as FREE_PLAN,Ub as FREE_WORKSPACES_LIMIT,Y as GOOGLE_FAVICON_URL,Q as HUBSPOT_INTEGRATION_ID,ba as INFINITY_NUMBER,G as LEGAL_USER_ID,F as LEGAL_WORKSPACE_ID,S as LOCALHOST_GEO_DATA,T as LOCALHOST_IP,Mb as NEW_BUSINESS_PRICE_IDS,Z as OG_AVATAR_URL,v as PARTNERS_DOMAIN,w as PARTNERS_DOMAIN_WITH_NGROK,u as PARTNERS_HOSTNAMES,da as PAYPAL_SUPPORTED_COUNTRIES,ca as PAYPAL_SUPPORTED_COUNTRIES_FULL,Nb as PLANS,ja as PRICING_PLAN_COMPARE_FEATURES,$b as PRICING_PLAN_MAIN_FEATURES,ac as PRICING_PLAN_TAGLINES,Pb as PRO_PLAN,H as R2_URL,W as REDIRECTION_QUERY_PARAM,ea as REGIONS,fa as REGION_CODES,ga as RESERVED_SLUGS,ha as SAML_PROVIDERS,k as SECOND_LEVEL_DOMAINS,N as SEGMENT_INTEGRATION_ID,Tb as SELF_SERVE_PAID_PLANS,P as SHOPIFY_INTEGRATION_ID,n as SHORT_DOMAIN,L as SLACK_INTEGRATION_ID,l as SPECIAL_APEX_DOMAINS,M as STRIPE_INTEGRATION_ID,$ as TWO_WEEKS_IN_SECONDS,Na as UTMTags,O as ZAPIER_INTEGRATION_ID,ka as arrayEqual,ub as buildFilterValue,Wa as buildUrl,ma as capitalize,a as ccTLDs,na as chunk,oa as cn,pa as combineWords,qa as constructMetadata,Oa as constructURLFromUTMParams,Ta as createHref,sa as currencyFormatter,Fa as deepEqual,db as fetchWithRetry,eb as fetchWithTimeout,fb as fetcher,wa as formatDate,xa as formatDateSmart,ya as formatDateTime,za as formatDateTimeSmart,gb as formatFileSize,Aa as formatPeriod,Ya as generateDomainFromName,ua as getAdjustedBillingCycleStart,ab as getApexDomain,va as getBillingStartDate,Ba as getDateTimeLocal,Ca as getDaysDifference,bb as getDomainWithoutWWW,Xa as getFileExtension,Da as getFirstAndLastDay,ta as getLastDayOfMonth,Xb as getNextPlan,Ma as getParamsFromURL,Ua as getPathnameFromUrl,Vb as getPlanAndTierFromPriceId,Wb as getPlanDetails,Sa as getPrettyUrl,Ka as getSearchParams,La as getSearchParamsWithArray,$a as getSubdomain,Zb as getSuggestedPlan,Qa as getUTMParamsFromURL,Ha as getUrlFromString,Ja as getUrlFromStringIfValid,Ia as getUrlObjFromString,Ra as getUrlWithoutUTMParams,hb as groupBy,ib as hashStringSHA256,jb as isClickOnInteractiveChild,Yb as isDowngradePlan,cb as isDubDomain,yb as isFulfilled,kb as isIframeable,_b as isLegacyBusinessPlan,zb as isRejected,nb as isReservedKeyGlobal,mb as isUnsupportedKey,Ga as isValidUrl,ra as isZeroDecimalCurrency,ob as linkConstructor,pb as linkConstructorSimple,qb as log,Ab as logPromiseResults,ia as nFormatter,rb as nanoid,sb as normalizeString,Va as normalizeUrl,Pa as paramsMetadata,Ea as parseDateTime,tb as parseFilterValue,vb as pick,wb as pluralize,xb as prettyPrint,Cb as punyEncode,Bb as punycode,Db as randomValue,Eb as regexEscape,Fb as resizeImage,Hb as smartTruncate,Ib as stableSort,Jb as textFetcher,Kb as timeAgo,la as toCamelCase,Lb as trim,Gb as truncate,Za as validDomainRegex,lb as validKeyRegex,_a as validSlugRegex};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
type FilterOperator = "IS" | "IS_NOT" | "IS_ONE_OF" | "IS_NOT_ONE_OF";
|
|
2
|
+
type SQLOperator = "IN" | "NOT IN";
|
|
3
|
+
interface ParsedFilter {
|
|
4
|
+
operator: FilterOperator;
|
|
5
|
+
sqlOperator: SQLOperator;
|
|
6
|
+
values: string[];
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Parse filter value from URL format to structured filter
|
|
10
|
+
*
|
|
11
|
+
* Formats supported:
|
|
12
|
+
* - "US" → IS, values: ["US"], SQL: IN
|
|
13
|
+
* - "US,BR,FR" → IS_ONE_OF, values: ["US", "BR", "FR"], SQL: IN
|
|
14
|
+
* - "-US" → IS_NOT, values: ["US"], SQL: NOT IN
|
|
15
|
+
* - "-US,BR" → IS_NOT_ONE_OF, values: ["US", "BR"], SQL: NOT IN
|
|
16
|
+
*
|
|
17
|
+
* Note: All filters now use IN/NOT IN operators for consistency,
|
|
18
|
+
* even for single values. This simplifies SQL query generation.
|
|
19
|
+
*
|
|
20
|
+
* @param value - The filter value string (can include "-" prefix for negation)
|
|
21
|
+
* @returns Parsed filter with operator and values array
|
|
22
|
+
*/
|
|
23
|
+
declare function parseFilterValue(value: string | string[] | undefined): ParsedFilter | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Build filter value string from parsed filter
|
|
26
|
+
*
|
|
27
|
+
* @param parsed - The parsed filter object
|
|
28
|
+
* @returns URL-formatted filter string
|
|
29
|
+
*/
|
|
30
|
+
declare function buildFilterValue(parsed: ParsedFilter): string;
|
|
31
|
+
|
|
32
|
+
export { FilterOperator as F, ParsedFilter as P, SQLOperator as S, buildFilterValue as b, parseFilterValue as p };
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
|
|
3
|
+
declare const STABLECOIN_SUPPORTED_COUNTRIES: string[];
|
|
4
|
+
|
|
5
|
+
type PlanFeature = {
|
|
6
|
+
id?: string;
|
|
7
|
+
text: string;
|
|
8
|
+
tooltip?: {
|
|
9
|
+
title: string;
|
|
10
|
+
cta: string;
|
|
11
|
+
href: string;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
type PlanDetails = {
|
|
15
|
+
name: string;
|
|
16
|
+
price: {
|
|
17
|
+
monthly: number | null;
|
|
18
|
+
yearly: number | null;
|
|
19
|
+
ids?: string[];
|
|
20
|
+
};
|
|
21
|
+
limits: {
|
|
22
|
+
links: number;
|
|
23
|
+
clicks: number;
|
|
24
|
+
payouts: number;
|
|
25
|
+
domains: number;
|
|
26
|
+
tags: number;
|
|
27
|
+
folders: number;
|
|
28
|
+
groups: number;
|
|
29
|
+
networkInvites: number;
|
|
30
|
+
users: number;
|
|
31
|
+
ai: number;
|
|
32
|
+
api: number;
|
|
33
|
+
analyticsApi: number;
|
|
34
|
+
retention: string;
|
|
35
|
+
};
|
|
36
|
+
tiers?: {
|
|
37
|
+
[key: number]: {
|
|
38
|
+
price: {
|
|
39
|
+
monthly: number | null;
|
|
40
|
+
yearly: number | null;
|
|
41
|
+
ids: string[];
|
|
42
|
+
};
|
|
43
|
+
limits: {
|
|
44
|
+
links: number;
|
|
45
|
+
clicks: number;
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
featureTitle?: string;
|
|
50
|
+
features?: PlanFeature[];
|
|
51
|
+
};
|
|
52
|
+
declare const NEW_BUSINESS_PRICE_IDS: string[];
|
|
53
|
+
declare const PLANS: PlanDetails[];
|
|
54
|
+
declare const FREE_PLAN: PlanDetails;
|
|
55
|
+
declare const PRO_PLAN: PlanDetails;
|
|
56
|
+
declare const BUSINESS_PLAN: PlanDetails;
|
|
57
|
+
declare const ADVANCED_PLAN: PlanDetails;
|
|
58
|
+
declare const ENTERPRISE_PLAN: PlanDetails;
|
|
59
|
+
declare const SELF_SERVE_PAID_PLANS: PlanDetails[];
|
|
60
|
+
declare const FREE_WORKSPACES_LIMIT = 2;
|
|
61
|
+
declare const getPlanAndTierFromPriceId: ({ priceId, }: {
|
|
62
|
+
priceId: string;
|
|
63
|
+
}) => {
|
|
64
|
+
plan: PlanDetails | null;
|
|
65
|
+
planTier: number;
|
|
66
|
+
};
|
|
67
|
+
declare const getPlanDetails: ({ plan, planTier, }: {
|
|
68
|
+
plan: string;
|
|
69
|
+
planTier?: number | undefined;
|
|
70
|
+
}) => PlanDetails;
|
|
71
|
+
declare const getNextPlan: (plan?: string | null) => PlanDetails;
|
|
72
|
+
declare const isDowngradePlan: ({ currentPlan, newPlan, currentTier, newTier, }: {
|
|
73
|
+
currentPlan: string;
|
|
74
|
+
newPlan: string;
|
|
75
|
+
currentTier?: number | undefined;
|
|
76
|
+
newTier?: number | undefined;
|
|
77
|
+
}) => boolean;
|
|
78
|
+
declare const getSuggestedPlan: ({ events, links, suggestFree, }: {
|
|
79
|
+
events?: number | undefined;
|
|
80
|
+
links?: number | undefined;
|
|
81
|
+
suggestFree?: boolean | undefined;
|
|
82
|
+
}) => {
|
|
83
|
+
plan: PlanDetails;
|
|
84
|
+
planTier: number;
|
|
85
|
+
};
|
|
86
|
+
declare const isLegacyBusinessPlan: ({ plan, payoutsLimit, }: {
|
|
87
|
+
plan?: string | undefined;
|
|
88
|
+
payoutsLimit?: number | undefined;
|
|
89
|
+
}) => boolean;
|
|
90
|
+
|
|
91
|
+
declare const PRICING_PLAN_COMPARE_FEATURES: {
|
|
92
|
+
category: string;
|
|
93
|
+
href: string;
|
|
94
|
+
features: {
|
|
95
|
+
text: string | ((d: {
|
|
96
|
+
id: string;
|
|
97
|
+
plan: (typeof PLANS)[number];
|
|
98
|
+
}) => ReactNode);
|
|
99
|
+
href?: string;
|
|
100
|
+
check?: boolean | {
|
|
101
|
+
default?: boolean;
|
|
102
|
+
free?: boolean;
|
|
103
|
+
pro?: boolean;
|
|
104
|
+
business?: boolean;
|
|
105
|
+
advanced?: boolean;
|
|
106
|
+
enterprise?: boolean;
|
|
107
|
+
};
|
|
108
|
+
}[];
|
|
109
|
+
}[];
|
|
110
|
+
|
|
111
|
+
export { ADVANCED_PLAN as A, BUSINESS_PLAN as B, ENTERPRISE_PLAN as E, FREE_PLAN as F, NEW_BUSINESS_PRICE_IDS as N, PRICING_PLAN_COMPARE_FEATURES as P, STABLECOIN_SUPPORTED_COUNTRIES as S, PlanFeature as a, PlanDetails as b, PLANS as c, PRO_PLAN as d, SELF_SERVE_PAID_PLANS as e, FREE_WORKSPACES_LIMIT as f, getPlanAndTierFromPriceId as g, getPlanDetails as h, getNextPlan as i, isDowngradePlan as j, getSuggestedPlan as k, isLegacyBusinessPlan as l };
|