myoperator-ui 0.0.229 → 0.0.231
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +104 -83
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -12012,80 +12012,88 @@ const PlanDetailModal = React.forwardRef(
|
|
|
12012
12012
|
<DialogContent
|
|
12013
12013
|
size="lg"
|
|
12014
12014
|
hideCloseButton
|
|
12015
|
-
className=
|
|
12015
|
+
className={cn(
|
|
12016
|
+
"flex max-h-[min(90vh,calc(100dvh-2rem))] min-w-0 flex-col gap-0 overflow-hidden rounded-xl",
|
|
12017
|
+
"w-full max-w-[min(42rem,calc(100vw-2rem))] p-3 sm:p-4 md:p-6"
|
|
12018
|
+
)}
|
|
12016
12019
|
>
|
|
12020
|
+
<DialogDescription className="sr-only">
|
|
12021
|
+
Plan features, free allowances, and rates for this subscription.
|
|
12022
|
+
</DialogDescription>
|
|
12017
12023
|
<div
|
|
12018
12024
|
ref={ref}
|
|
12019
|
-
className={cn("flex flex-col", className)}
|
|
12025
|
+
className={cn("flex min-h-0 flex-1 flex-col", className)}
|
|
12020
12026
|
{...props}
|
|
12021
12027
|
>
|
|
12022
|
-
{/* Header */}
|
|
12023
|
-
<div className="flex items-
|
|
12024
|
-
<DialogTitle className="text-
|
|
12028
|
+
{/* Header \u2014 matches other custom modals (e.g. plan-upgrade-summary) */}
|
|
12029
|
+
<div className="flex shrink-0 items-start justify-between gap-3 border-b border-solid border-semantic-border-layout pb-3 sm:gap-4 sm:pb-4">
|
|
12030
|
+
<DialogTitle className="m-0 min-w-0 flex-1 pr-2 text-base font-semibold leading-normal text-semantic-text-primary sm:text-lg">
|
|
12025
12031
|
{title}
|
|
12026
12032
|
</DialogTitle>
|
|
12027
12033
|
<button
|
|
12028
12034
|
type="button"
|
|
12029
12035
|
onClick={handleClose}
|
|
12030
12036
|
aria-label="Close"
|
|
12031
|
-
className="
|
|
12037
|
+
className="shrink-0 text-semantic-text-muted transition-colors hover:text-semantic-text-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-semantic-border-focus focus-visible:ring-offset-2"
|
|
12032
12038
|
>
|
|
12033
|
-
<X className="size-
|
|
12039
|
+
<X className="size-6" aria-hidden="true" />
|
|
12034
12040
|
</button>
|
|
12035
12041
|
</div>
|
|
12036
12042
|
|
|
12037
|
-
{/*
|
|
12038
|
-
<
|
|
12039
|
-
<
|
|
12040
|
-
|
|
12041
|
-
|
|
12042
|
-
|
|
12043
|
-
<
|
|
12044
|
-
<
|
|
12045
|
-
<
|
|
12046
|
-
<
|
|
12047
|
-
|
|
12048
|
-
|
|
12049
|
-
|
|
12050
|
-
|
|
12051
|
-
|
|
12052
|
-
|
|
12053
|
-
|
|
12054
|
-
|
|
12055
|
-
|
|
12043
|
+
{/* Features label fixed; only the table region scrolls */}
|
|
12044
|
+
<div className="flex min-h-0 flex-1 flex-col gap-2 pt-3 sm:gap-2.5 sm:pt-4">
|
|
12045
|
+
<p className="m-0 shrink-0 text-sm font-semibold leading-none text-semantic-text-primary sm:text-base">
|
|
12046
|
+
Features
|
|
12047
|
+
</p>
|
|
12048
|
+
<div className="min-h-0 flex-1 overflow-y-auto overflow-x-auto rounded border border-solid border-semantic-border-layout">
|
|
12049
|
+
<table className="w-full min-w-0 border-collapse text-sm">
|
|
12050
|
+
<thead>
|
|
12051
|
+
<tr className="bg-semantic-bg-ui">
|
|
12052
|
+
<th className="w-[40%] px-2 py-2 text-left text-xs font-semibold text-semantic-text-primary border-b border-solid border-semantic-border-layout sm:w-[44%] sm:px-3 sm:py-[11px] sm:text-sm">
|
|
12053
|
+
Feature
|
|
12054
|
+
</th>
|
|
12055
|
+
<th className="w-[30%] px-2 py-2 text-left text-xs font-semibold text-semantic-text-primary border-b border-solid border-semantic-border-layout sm:w-[28%] sm:px-3 sm:py-[11px] sm:text-sm">
|
|
12056
|
+
Free
|
|
12057
|
+
</th>
|
|
12058
|
+
<th className="w-[30%] px-2 py-2 text-left text-xs font-semibold text-semantic-text-primary border-b border-solid border-semantic-border-layout sm:w-[28%] sm:px-3 sm:py-[11px] sm:text-sm">
|
|
12059
|
+
Rate
|
|
12060
|
+
</th>
|
|
12061
|
+
</tr>
|
|
12062
|
+
</thead>
|
|
12063
|
+
<tbody>
|
|
12064
|
+
{features.map((feature, index) => (
|
|
12065
|
+
<tr
|
|
12066
|
+
key={feature.name}
|
|
12067
|
+
className={cn(
|
|
12068
|
+
index % 2 === 0
|
|
12069
|
+
? "bg-semantic-bg-primary"
|
|
12070
|
+
: "bg-semantic-bg-ui"
|
|
12071
|
+
)}
|
|
12072
|
+
>
|
|
12073
|
+
<td className="px-2 py-2 text-xs text-semantic-text-secondary border-b border-solid border-semantic-border-layout sm:px-3 sm:py-[11px] sm:text-sm">
|
|
12074
|
+
<p className="m-0 leading-snug sm:leading-none">{feature.name}</p>
|
|
12075
|
+
</td>
|
|
12076
|
+
<td className="px-2 py-2 text-xs text-semantic-text-secondary border-b border-solid border-semantic-border-layout sm:px-3 sm:py-[11px] sm:text-sm">
|
|
12077
|
+
<p className="m-0 leading-snug sm:leading-none">{feature.free}</p>
|
|
12078
|
+
</td>
|
|
12079
|
+
<td className="px-2 py-2 text-xs text-semantic-text-secondary border-b border-solid border-semantic-border-layout sm:px-3 sm:py-[11px] sm:text-sm">
|
|
12080
|
+
<p className="m-0 leading-snug sm:leading-none">{feature.rate}</p>
|
|
12081
|
+
</td>
|
|
12056
12082
|
</tr>
|
|
12057
|
-
|
|
12058
|
-
|
|
12059
|
-
|
|
12060
|
-
<tr
|
|
12061
|
-
key={feature.name}
|
|
12062
|
-
className={cn(
|
|
12063
|
-
index % 2 === 0
|
|
12064
|
-
? "bg-semantic-bg-primary"
|
|
12065
|
-
: "bg-semantic-bg-ui"
|
|
12066
|
-
)}
|
|
12067
|
-
>
|
|
12068
|
-
<td className="px-3 py-[11px] text-semantic-text-secondary border-b border-solid border-semantic-border-layout">
|
|
12069
|
-
<p className="m-0 leading-none">{feature.name}</p>
|
|
12070
|
-
</td>
|
|
12071
|
-
<td className="px-3 py-[11px] text-semantic-text-secondary border-b border-solid border-semantic-border-layout">
|
|
12072
|
-
<p className="m-0 leading-none">{feature.free}</p>
|
|
12073
|
-
</td>
|
|
12074
|
-
<td className="px-3 py-[11px] text-semantic-text-secondary border-b border-solid border-semantic-border-layout">
|
|
12075
|
-
<p className="m-0 leading-none">{feature.rate}</p>
|
|
12076
|
-
</td>
|
|
12077
|
-
</tr>
|
|
12078
|
-
))}
|
|
12079
|
-
</tbody>
|
|
12080
|
-
</table>
|
|
12081
|
-
</div>
|
|
12083
|
+
))}
|
|
12084
|
+
</tbody>
|
|
12085
|
+
</table>
|
|
12082
12086
|
</div>
|
|
12083
|
-
</
|
|
12087
|
+
</div>
|
|
12084
12088
|
|
|
12085
12089
|
{/* Footer */}
|
|
12086
12090
|
{planPrice && (
|
|
12087
|
-
<div
|
|
12088
|
-
|
|
12091
|
+
<div
|
|
12092
|
+
className={cn(
|
|
12093
|
+
"flex shrink-0 items-center border-t border-solid border-semantic-border-layout pt-3 sm:pt-4"
|
|
12094
|
+
)}
|
|
12095
|
+
>
|
|
12096
|
+
<p className="m-0 text-sm text-semantic-text-primary sm:text-base">
|
|
12089
12097
|
<span className="font-semibold">Plan price </span>
|
|
12090
12098
|
<span className="font-normal">{planPrice}</span>
|
|
12091
12099
|
</p>
|
|
@@ -12172,11 +12180,11 @@ import { Dialog, DialogContent, DialogDescription, DialogTitle } from "../dialog
|
|
|
12172
12180
|
import type { BillingCycleOption, PlanUpgradeModalProps } from "./types";
|
|
12173
12181
|
|
|
12174
12182
|
const modalRootVariants = cva(
|
|
12175
|
-
"flex flex-col gap-
|
|
12183
|
+
"flex min-h-0 max-h-[min(90vh,calc(100dvh-2rem))] flex-col gap-4 overflow-y-auto overflow-x-hidden rounded-lg border border-solid border-semantic-border-layout bg-semantic-bg-primary p-3 pt-4 pb-[calc(1rem+env(safe-area-inset-bottom,0px))] sm:gap-6 sm:p-6 sm:pb-[calc(1.5rem+env(safe-area-inset-bottom,0px))] md:gap-8 md:p-9 md:pb-[calc(2.25rem+env(safe-area-inset-bottom,0px))]"
|
|
12176
12184
|
);
|
|
12177
12185
|
|
|
12178
12186
|
const billingCycleOptionVariants = cva(
|
|
12179
|
-
"flex w-full items-center gap-2.5 rounded-lg border border-solid bg-semantic-bg-primary p-3 text-left transition-colors",
|
|
12187
|
+
"flex w-full min-h-[44px] items-center gap-2.5 rounded-lg border border-solid bg-semantic-bg-primary p-3 text-left transition-colors sm:min-h-0",
|
|
12180
12188
|
{
|
|
12181
12189
|
variants: {
|
|
12182
12190
|
selected: {
|
|
@@ -12266,12 +12274,12 @@ const PlanUpgradeModal = React.forwardRef(
|
|
|
12266
12274
|
<DialogContent
|
|
12267
12275
|
size="default"
|
|
12268
12276
|
hideCloseButton
|
|
12269
|
-
className="w-full max-w-[
|
|
12277
|
+
className="min-w-0 w-full max-w-[min(30rem,calc(100vw-1rem-env(safe-area-inset-left,0px)-env(safe-area-inset-right,0px)))] border-none bg-transparent p-0 shadow-none sm:max-w-[min(30rem,calc(100vw-2rem-env(safe-area-inset-left,0px)-env(safe-area-inset-right,0px)))]"
|
|
12270
12278
|
>
|
|
12271
12279
|
<div ref={ref} className={cn(modalRootVariants(), className)} {...props}>
|
|
12272
|
-
<div className="flex items-start justify-between gap-4">
|
|
12273
|
-
<div className="flex flex-col gap-2">
|
|
12274
|
-
<DialogTitle className="m-0 text-
|
|
12280
|
+
<div className="flex items-start justify-between gap-3 sm:gap-4">
|
|
12281
|
+
<div className="flex min-w-0 flex-1 flex-col gap-2">
|
|
12282
|
+
<DialogTitle className="m-0 break-words text-base font-semibold leading-normal text-semantic-text-primary sm:text-lg">
|
|
12275
12283
|
{title}
|
|
12276
12284
|
</DialogTitle>
|
|
12277
12285
|
<DialogDescription className="m-0 text-sm tracking-[0.035px] text-semantic-text-muted">
|
|
@@ -12281,10 +12289,10 @@ const PlanUpgradeModal = React.forwardRef(
|
|
|
12281
12289
|
<button
|
|
12282
12290
|
type="button"
|
|
12283
12291
|
onClick={handleClose}
|
|
12284
|
-
className="shrink-0 text-semantic-text-muted transition-colors hover:text-semantic-text-primary"
|
|
12292
|
+
className="shrink-0 text-semantic-text-muted transition-colors hover:text-semantic-text-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-semantic-border-focus focus-visible:ring-offset-2"
|
|
12285
12293
|
aria-label="Close plan upgrade modal"
|
|
12286
12294
|
>
|
|
12287
|
-
<X className="size-
|
|
12295
|
+
<X className="size-6" aria-hidden="true" />
|
|
12288
12296
|
</button>
|
|
12289
12297
|
</div>
|
|
12290
12298
|
|
|
@@ -12300,7 +12308,7 @@ const PlanUpgradeModal = React.forwardRef(
|
|
|
12300
12308
|
aria-pressed={isSelected}
|
|
12301
12309
|
>
|
|
12302
12310
|
<span className={iconContainerVariants()}>{renderOptionIcon(option.icon)}</span>
|
|
12303
|
-
<span className="text-sm leading-normal tracking-[0.035px] text-semantic-text-primary">
|
|
12311
|
+
<span className="min-w-0 flex-1 text-left text-sm leading-normal tracking-[0.035px] text-semantic-text-primary">
|
|
12304
12312
|
{option.label}
|
|
12305
12313
|
</span>
|
|
12306
12314
|
</button>
|
|
@@ -12308,13 +12316,13 @@ const PlanUpgradeModal = React.forwardRef(
|
|
|
12308
12316
|
})}
|
|
12309
12317
|
</div>
|
|
12310
12318
|
|
|
12311
|
-
<div className="flex justify-end">
|
|
12319
|
+
<div className="flex justify-stretch sm:justify-end">
|
|
12312
12320
|
<Button
|
|
12313
12321
|
variant="default"
|
|
12314
12322
|
onClick={handleNext}
|
|
12315
12323
|
disabled={!activeOptionId}
|
|
12316
12324
|
loading={loading}
|
|
12317
|
-
className="min-w-[95px]"
|
|
12325
|
+
className="w-full min-w-0 sm:w-auto sm:min-w-[95px]"
|
|
12318
12326
|
>
|
|
12319
12327
|
{nextLabel}
|
|
12320
12328
|
</Button>
|
|
@@ -12421,11 +12429,11 @@ import type {
|
|
|
12421
12429
|
} from "./types";
|
|
12422
12430
|
|
|
12423
12431
|
const modalRootVariants = cva(
|
|
12424
|
-
"flex flex-col gap-
|
|
12432
|
+
"flex max-h-[min(90vh,calc(100dvh-2rem))] flex-col gap-4 overflow-y-auto rounded-lg border border-solid border-semantic-border-layout bg-semantic-bg-primary p-4 sm:gap-6 sm:p-6 md:gap-8 md:p-9"
|
|
12425
12433
|
);
|
|
12426
12434
|
|
|
12427
12435
|
const summaryPanelVariants = cva(
|
|
12428
|
-
"flex flex-col gap-
|
|
12436
|
+
"flex flex-col gap-4 rounded border border-solid border-semantic-border-layout bg-semantic-bg-ui p-3 sm:gap-5 sm:p-4"
|
|
12429
12437
|
);
|
|
12430
12438
|
|
|
12431
12439
|
const statusTitleVariants = cva("m-0 text-sm font-semibold leading-5 tracking-[0.014px]", {
|
|
@@ -12553,12 +12561,12 @@ const PlanUpgradeSummaryModal = React.forwardRef(
|
|
|
12553
12561
|
<DialogContent
|
|
12554
12562
|
size="default"
|
|
12555
12563
|
hideCloseButton
|
|
12556
|
-
className="w-full max-w-[
|
|
12564
|
+
className="min-w-0 w-full max-w-[min(41.25rem,calc(100vw-2rem))] border-none bg-transparent p-0 shadow-none"
|
|
12557
12565
|
>
|
|
12558
12566
|
<div ref={ref} className={cn(modalRootVariants(), className)} {...props}>
|
|
12559
|
-
<div className="flex items-start justify-between gap-4">
|
|
12560
|
-
<div className="flex flex-col gap-2">
|
|
12561
|
-
<DialogTitle className="m-0 text-
|
|
12567
|
+
<div className="flex items-start justify-between gap-3 sm:gap-4">
|
|
12568
|
+
<div className="flex min-w-0 flex-1 flex-col gap-2">
|
|
12569
|
+
<DialogTitle className="m-0 text-base font-semibold leading-normal text-semantic-text-primary sm:text-lg">
|
|
12562
12570
|
{resolvedTitle}
|
|
12563
12571
|
</DialogTitle>
|
|
12564
12572
|
<DialogDescription className="m-0 text-sm tracking-[0.035px] text-semantic-text-muted">
|
|
@@ -12568,7 +12576,7 @@ const PlanUpgradeSummaryModal = React.forwardRef(
|
|
|
12568
12576
|
<button
|
|
12569
12577
|
type="button"
|
|
12570
12578
|
onClick={handleClose}
|
|
12571
|
-
className="shrink-0 text-semantic-text-muted transition-colors hover:text-semantic-text-primary"
|
|
12579
|
+
className="shrink-0 text-semantic-text-muted transition-colors hover:text-semantic-text-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-semantic-border-focus focus-visible:ring-offset-2"
|
|
12572
12580
|
aria-label={closeAriaLabel}
|
|
12573
12581
|
>
|
|
12574
12582
|
<X className="size-6" />
|
|
@@ -12576,9 +12584,9 @@ const PlanUpgradeSummaryModal = React.forwardRef(
|
|
|
12576
12584
|
</div>
|
|
12577
12585
|
|
|
12578
12586
|
<div className={summaryPanelVariants()}>
|
|
12579
|
-
<div className="flex items-start gap-4">
|
|
12587
|
+
<div className="flex flex-col gap-3 sm:flex-row sm:items-start sm:gap-4">
|
|
12580
12588
|
<span className="shrink-0">{getStatusIcon(resolvedTone)}</span>
|
|
12581
|
-
<div className="flex flex-col gap-1">
|
|
12589
|
+
<div className="flex min-w-0 flex-col gap-1">
|
|
12582
12590
|
<p className={statusTitleVariants({ tone: resolvedTone })}>
|
|
12583
12591
|
{resolvedStatus.title}
|
|
12584
12592
|
</p>
|
|
@@ -12594,33 +12602,43 @@ const PlanUpgradeSummaryModal = React.forwardRef(
|
|
|
12594
12602
|
{resolvedRows.map((row) => (
|
|
12595
12603
|
<div
|
|
12596
12604
|
key={\`\${row.label}-\${row.value}\`}
|
|
12597
|
-
className="flex items-center justify-between gap-6"
|
|
12605
|
+
className="flex flex-col gap-1 sm:flex-row sm:items-center sm:justify-between sm:gap-6"
|
|
12598
12606
|
>
|
|
12599
|
-
<span className="text-sm tracking-[0.035px] text-semantic-text-secondary">
|
|
12607
|
+
<span className="min-w-0 text-sm tracking-[0.035px] text-semantic-text-secondary">
|
|
12600
12608
|
{row.label}
|
|
12601
12609
|
</span>
|
|
12602
|
-
<span className="text-sm tracking-[0.035px] text-semantic-text-primary">
|
|
12610
|
+
<span className="min-w-0 shrink-0 text-left text-sm tracking-[0.035px] text-semantic-text-primary sm:text-right">
|
|
12603
12611
|
{row.value}
|
|
12604
12612
|
</span>
|
|
12605
12613
|
</div>
|
|
12606
12614
|
))}
|
|
12607
12615
|
</div>
|
|
12608
12616
|
|
|
12609
|
-
<div className="flex
|
|
12617
|
+
<div className="flex flex-col gap-1 border-t border-solid border-semantic-border-layout pt-3 sm:flex-row sm:items-center sm:justify-between sm:gap-6">
|
|
12610
12618
|
<span className="text-sm font-semibold tracking-[0.014px] text-semantic-text-secondary">
|
|
12611
12619
|
{totalLabel}
|
|
12612
12620
|
</span>
|
|
12613
|
-
<span className="text-sm font-semibold tracking-[0.014px] text-semantic-text-primary">
|
|
12621
|
+
<span className="text-sm font-semibold tracking-[0.014px] text-semantic-text-primary sm:text-right">
|
|
12614
12622
|
{resolvedTotalValue}
|
|
12615
12623
|
</span>
|
|
12616
12624
|
</div>
|
|
12617
12625
|
</div>
|
|
12618
12626
|
|
|
12619
|
-
<div className="flex justify-end gap-2.5">
|
|
12620
|
-
<Button
|
|
12627
|
+
<div className="flex flex-col-reverse gap-2 sm:flex-row sm:justify-end sm:gap-2.5">
|
|
12628
|
+
<Button
|
|
12629
|
+
variant="outline"
|
|
12630
|
+
onClick={handleCancel}
|
|
12631
|
+
className="w-full sm:w-auto"
|
|
12632
|
+
>
|
|
12621
12633
|
{cancelLabel}
|
|
12622
12634
|
</Button>
|
|
12623
|
-
<Button
|
|
12635
|
+
<Button
|
|
12636
|
+
variant="primary"
|
|
12637
|
+
onClick={onPrimaryAction}
|
|
12638
|
+
loading={loading}
|
|
12639
|
+
disabled={disabled}
|
|
12640
|
+
className="w-full sm:w-auto"
|
|
12641
|
+
>
|
|
12624
12642
|
{resolvedPrimaryActionLabel}
|
|
12625
12643
|
</Button>
|
|
12626
12644
|
</div>
|
|
@@ -29629,7 +29647,10 @@ var getTailwindConfig = (prefix = "tw-", hasBootstrap = false) => `/** @type {im
|
|
|
29629
29647
|
export default {
|
|
29630
29648
|
darkMode: ["class"],
|
|
29631
29649
|
prefix: "${prefix}",${hasBootstrap ? `
|
|
29632
|
-
important: true, // Required to override Bootstrap styles
|
|
29650
|
+
important: true, // Required to override Bootstrap styles
|
|
29651
|
+
corePlugins: {
|
|
29652
|
+
preflight: false, // Disable Tailwind's CSS reset - Bootstrap handles base styles
|
|
29653
|
+
},` : ""}
|
|
29633
29654
|
content: [
|
|
29634
29655
|
"./src/components/ui/**/*.{js,ts,jsx,tsx}",
|
|
29635
29656
|
"./src/components/custom/**/*.{js,ts,jsx,tsx}",
|