pxengine 0.1.60 → 0.1.62

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.
@@ -121,6 +121,10 @@ module.exports = {
121
121
  interactionBg: "var(--interaction-bg)",
122
122
  purpleLight: "var(--purpleLight)",
123
123
  purpleText2: "var(--purple-text-2)",
124
+ gold: "var(--gold)",
125
+ cardSurface: "var(--cardSurface)",
126
+ cardText: "var(--cardText)",
127
+ cardBorder: "var(--cardBorder)",
124
128
  green100: "#dcfce7",
125
129
  // Landing page colors
126
130
  landingDarkestBlue: "var(--landing-darkest-blue)",
package/dist/index.cjs CHANGED
@@ -34330,19 +34330,19 @@ var EditableField = import_react54.default.memo(
34330
34330
  "div",
34331
34331
  {
34332
34332
  className: cn(
34333
- "relative z-10 group flex flex-col gap-2 p-3 bg-paperBackground rounded-md mb-8",
34333
+ "relative z-10 group flex flex-col gap-1.5 p-2.5 bg-black border border-cardBorder rounded-lg mb-4",
34334
34334
  className
34335
34335
  ),
34336
34336
  children: [
34337
- /* @__PURE__ */ (0, import_jsx_runtime94.jsx)("div", { className: "flex justify-between items-start mb-2", children: /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)("div", { className: "w-full flex justify-between items-center flex-wrap gap-2", children: [
34337
+ /* @__PURE__ */ (0, import_jsx_runtime94.jsx)("div", { className: "flex justify-between items-start mb-1.5", children: /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)("div", { className: "w-full flex justify-between items-center flex-wrap gap-1.5", children: [
34338
34338
  /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
34339
34339
  "h4",
34340
34340
  {
34341
- className: "px-[6px] py-[2px] tracking-widest bg-purple200 hover:bg-purple200 text-purpleText text-xs font-normal rounded-[4px]",
34341
+ className: "px-1.5 py-px tracking-widest border border-cardBorder text-gold text-[9px] font-medium uppercase rounded-[3px]",
34342
34342
  children: label
34343
34343
  }
34344
34344
  ),
34345
- isEditingProp ? /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)("div", { className: "flex items-center gap-3", children: [
34345
+ isEditingProp ? /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)("div", { className: "flex items-center gap-2", children: [
34346
34346
  /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
34347
34347
  "button",
34348
34348
  {
@@ -34353,7 +34353,7 @@ var EditableField = import_react54.default.memo(
34353
34353
  className: "text-gray-500 hover:text-gray-700 transition-colors",
34354
34354
  disabled: isSaving,
34355
34355
  title: "Cancel",
34356
- children: /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(X, { className: "h-5 w-5" })
34356
+ children: /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(X, { className: "h-4 w-4" })
34357
34357
  }
34358
34358
  ),
34359
34359
  /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
@@ -34366,37 +34366,31 @@ var EditableField = import_react54.default.memo(
34366
34366
  className: "text-gray600 hover:text-gray600 transition-colors",
34367
34367
  disabled: isSaving,
34368
34368
  title: "Save",
34369
- children: isSaving ? /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(LoaderCircle, { className: "h-5 w-5 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Save, { className: "h-5 w-5" })
34369
+ children: isSaving ? /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(LoaderCircle, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Save, { className: "h-4 w-4" })
34370
34370
  }
34371
34371
  )
34372
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)("span", { className: cn(
34373
- "inline-flex items-center gap-1.5 text-[0.75rem] font-medium px-2 py-0.5 rounded-full",
34374
- isChanged ? "bg-yellow100 text-warningcolor" : "text-green-600 dark:text-green-500 bg-green-500/5"
34375
- ), children: [
34376
- isChanged ? "Changed by you" : "Suggested by an Agent",
34377
- isLatestMessage && /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
34378
- "span",
34379
- {
34380
- className: "flex items-center gap-1 cursor-pointer text-foreground hover:text-green-700 transition-colors ml-1 pl-1.5 ",
34381
- onClick: (e) => {
34382
- if (shouldStopPropagation !== false) {
34383
- e.stopPropagation();
34384
- }
34385
- onEdit?.();
34386
- },
34387
- children: /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(SquarePen, { className: "h-5 w-5" })
34388
- }
34389
- )
34390
- ] })
34372
+ ] }) : isLatestMessage ? /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
34373
+ "button",
34374
+ {
34375
+ className: "p-1 rounded-md text-muted-foreground hover:text-foreground hover:bg-gray300 transition-colors",
34376
+ onClick: (e) => {
34377
+ if (shouldStopPropagation !== false) {
34378
+ e.stopPropagation();
34379
+ }
34380
+ onEdit?.();
34381
+ },
34382
+ title: "Edit",
34383
+ children: /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(SquarePen, { className: "h-3.5 w-3.5" })
34384
+ }
34385
+ ) : null
34391
34386
  ] }) }),
34392
34387
  isEditingProp ? /* @__PURE__ */ (0, import_jsx_runtime94.jsx)("div", { className: "flex flex-col gap-3", children: renderInput() }) : /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
34393
34388
  "div",
34394
34389
  {
34395
34390
  className: cn(
34396
- "relative flex items-start justify-between rounded-lg px-3 py-2",
34397
- "text-base text-foreground/90 font-medium leading-relaxed"
34391
+ "relative flex items-start justify-between rounded-md px-2 py-1.5",
34392
+ "text-sm text-cardText font-medium leading-relaxed"
34398
34393
  ),
34399
- style: { fontFamily: "Noto Sans, sans-serif" },
34400
34394
  children: /* @__PURE__ */ (0, import_jsx_runtime94.jsx)("div", { className: "flex-1", children: formattedValue() })
34401
34395
  }
34402
34396
  )
@@ -34607,7 +34601,7 @@ var FormCard = import_react56.default.memo(
34607
34601
  "div",
34608
34602
  {
34609
34603
  className: cn(
34610
- "relative w-full rounded-[20px] bg-paperBackground dark:bg-gray100 border border-gray400 shadow-lg overflow-hidden mb-6 font-noto",
34604
+ "relative w-full rounded-lg bg-cardSurface border border-gray400 shadow-sm overflow-hidden mb-4",
34611
34605
  className
34612
34606
  ),
34613
34607
  children: [
@@ -34620,18 +34614,18 @@ var FormCard = import_react56.default.memo(
34620
34614
  children: copied ? /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(Check, { className: "h-4 w-4 text-green-500" }) : /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(Copy, { className: "h-4 w-4" })
34621
34615
  }
34622
34616
  ),
34623
- /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)("div", { className: "p-6 relative", children: [
34617
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)("div", { className: "p-4 relative", children: [
34624
34618
  !hideTitle && title && /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(
34625
34619
  "h3",
34626
34620
  {
34627
- className: "text-gray900 dark:text-white mb-12 text-[1rem] font-bold",
34621
+ className: "text-cardText mb-6 text-sm font-semibold",
34628
34622
  children: title
34629
34623
  }
34630
34624
  ),
34631
34625
  showTimeline && /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(
34632
34626
  "div",
34633
34627
  {
34634
- className: "absolute z-0 left-[60px] top-[100px] bottom-[60px] w-[3px]",
34628
+ className: "absolute z-0 left-[48px] top-[70px] bottom-[40px] w-[2px]",
34635
34629
  style: {
34636
34630
  background: `
34637
34631
  radial-gradient(circle closest-side, #3C3D3E 98%, transparent) 50%/2px 5px repeat-y,
@@ -34664,7 +34658,7 @@ var FormCard = import_react56.default.memo(
34664
34658
  field.key
34665
34659
  ))
34666
34660
  ] }),
34667
- isLatestMessage && onProceed && proceedLabel ? /* @__PURE__ */ (0, import_jsx_runtime96.jsx)("div", { className: "my-6 flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)(
34661
+ isLatestMessage && onProceed && proceedLabel ? /* @__PURE__ */ (0, import_jsx_runtime96.jsx)("div", { className: "my-4 flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(
34668
34662
  "button",
34669
34663
  {
34670
34664
  onClick: () => {
@@ -34673,14 +34667,10 @@ var FormCard = import_react56.default.memo(
34673
34667
  }
34674
34668
  },
34675
34669
  className: cn(
34676
- "px-6 py-2.5 border rounded-full transition-colors text-sm font-medium flex items-center gap-2",
34677
- "bg-purpleLight dark:bg-purple200 text-purpleText2 dark:text-purpleText border-purpleText1 dark:border-purple100",
34678
- "hover:bg-purpleText1 dark:hover:bg-purple100 dark:hover:text-white"
34670
+ "px-4 py-1.5 border rounded-lg transition-colors text-xs font-medium",
34671
+ "bg-cardSurface hover:bg-cardSurface/80 text-gold border-cardBorder"
34679
34672
  ),
34680
- children: [
34681
- proceedLabel,
34682
- /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(ChevronRight, { className: "w-4 h-4" })
34683
- ]
34673
+ children: proceedLabel
34684
34674
  }
34685
34675
  ) }) : !isLatestMessage && footer ? /* @__PURE__ */ (0, import_jsx_runtime96.jsx)("div", { className: "flex justify-end items-center pb-4 pr-4 gap-1 text-green-600 text-sm font-medium", children: footer }) : null
34686
34676
  ]
@@ -37119,7 +37109,7 @@ var CountrySelectEdit = ({
37119
37109
  inputValue.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { className: "flex flex-wrap gap-1.5", children: inputValue.map((countryCode) => /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)(
37120
37110
  Badge2,
37121
37111
  {
37122
- className: "flex items-center gap-1 px-2 py-1 bg-grayPill border border-foreground rounded-md text-white text-sm font-grotesk font-medium",
37112
+ className: "flex items-center gap-1 px-2 py-0.5 bg-grayPill border border-gray400 rounded-md text-white text-xs font-medium",
37123
37113
  children: [
37124
37114
  countryCode,
37125
37115
  /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)(
@@ -37155,7 +37145,7 @@ var CountrySelectDisplay = ({ value }) => {
37155
37145
  return /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(
37156
37146
  "div",
37157
37147
  {
37158
- className: "flex items-center gap-2 px-3 py-1 bg-grayPill border border-foreground rounded-md text-foreground text-sm font-grotesk font-medium",
37148
+ className: "flex items-center gap-1.5 px-2 py-0.5 bg-grayPill border border-gray400 rounded-md text-foreground text-xs font-medium",
37159
37149
  children: country ? country.name : item
37160
37150
  },
37161
37151
  item
@@ -37204,7 +37194,7 @@ var KeywordBundlesEdit = ({
37204
37194
  /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { className: "flex flex-wrap gap-1.5", children: Array.isArray(bundle.keywords) && bundle.keywords.map((keyword, kIndex) => /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)(
37205
37195
  "div",
37206
37196
  {
37207
- className: "flex items-center gap-2 px-3 py-1 bg-grayPill border border-white rounded-md text-white text-sm font-medium hover:bg-red-900/40 hover:border-red-500 transition-all cursor-pointer group",
37197
+ className: "flex items-center gap-1.5 px-2 py-0.5 bg-grayPill border border-gray400 rounded-md text-white text-xs font-medium hover:bg-red-900/40 hover:border-red-500 transition-all cursor-pointer group",
37208
37198
  onClick: () => {
37209
37199
  const updatedBundles = [...bundles];
37210
37200
  const currentKeywords = parseKeywords(updatedBundles[bundleIndex].keywords);
@@ -37303,7 +37293,7 @@ var KeywordBundlesDisplay = ({ value }) => {
37303
37293
  /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { className: "flex flex-wrap gap-2 pt-1", children: deduped.map((keyword) => /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(
37304
37294
  "div",
37305
37295
  {
37306
- className: "flex items-center gap-2 px-3 py-1 bg-grayPill border border-white rounded-md text-white text-sm font-medium",
37296
+ className: "flex items-center gap-1.5 px-2 py-0.5 bg-grayPill border border-gray400 rounded-md text-white text-xs font-medium",
37307
37297
  children: keyword
37308
37298
  },
37309
37299
  keyword
@@ -37374,7 +37364,7 @@ var PlatformSelectDisplay = ({ value }) => {
37374
37364
  return /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { className: "flex flex-wrap gap-2 pt-1", children: displayValues.map((platform) => /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(
37375
37365
  "div",
37376
37366
  {
37377
- className: "flex items-center gap-2 px-3 py-1 bg-grayPill border border-foreground rounded-md text-foreground text-sm font-grotesk font-medium",
37367
+ className: "flex items-center gap-1.5 px-2 py-0.5 bg-grayPill border border-gray400 rounded-md text-foreground text-xs font-medium",
37378
37368
  children: platform
37379
37369
  },
37380
37370
  platform
@@ -37399,7 +37389,7 @@ var StringArrayDisplay = ({ value }) => {
37399
37389
  return /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("div", { className: "flex flex-wrap gap-2 pt-1", children: value.map((item) => /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
37400
37390
  "div",
37401
37391
  {
37402
- className: "flex items-center gap-2 px-3 py-1 bg-grayPill border border-foreground rounded-md text-foreground text-sm font-grotesk font-medium",
37392
+ className: "flex items-center gap-1.5 px-2 py-0.5 bg-grayPill border border-gray400 rounded-md text-foreground text-xs font-medium",
37403
37393
  children: item
37404
37394
  },
37405
37395
  item
@@ -37558,9 +37548,9 @@ var CampaignSeedCard = import_react64.default.memo(
37558
37548
  onProceed: handleProceed,
37559
37549
  showTimeline: true,
37560
37550
  isLatestMessage: effectiveIsLatest,
37561
- className: cn("font-noto", className),
37562
- footer: !effectiveIsLatest && selectionStatus ? /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("div", { className: "flex justify-end items-center gap-1.5 text-green-600 text-[10px] font-semibold py-4 pr-6", children: [
37563
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(CircleCheck, { className: "h-3.5 w-3.5" }),
37551
+ className,
37552
+ footer: !effectiveIsLatest && selectionStatus ? /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("div", { className: "flex justify-end items-center gap-1 text-green-600 text-[10px] font-semibold py-2 pr-4", children: [
37553
+ /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(CircleCheck, { className: "h-3 w-3" }),
37564
37554
  /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("span", { children: selectionStatus === "agent" ? "Suggested by Agent" : "Selected by you" })
37565
37555
  ] }) : formCardProps.footer
37566
37556
  }
@@ -37725,8 +37715,8 @@ var SearchSpecCard = import_react65.default.memo(
37725
37715
  onProceed: handleProceed,
37726
37716
  isLatestMessage: effectiveIsLatest,
37727
37717
  className,
37728
- footer: !effectiveIsLatest && selectionStatus ? /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)("div", { className: "flex justify-end items-center gap-1.5 text-green-600 text-xs font-semibold py-1", children: [
37729
- /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(CircleCheck, { className: "h-4 w-4" }),
37718
+ footer: !effectiveIsLatest && selectionStatus ? /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)("div", { className: "flex justify-end items-center gap-1 text-green-600 text-[10px] font-semibold py-1", children: [
37719
+ /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(CircleCheck, { className: "h-3 w-3" }),
37730
37720
  /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("span", { children: selectionStatus === "agent" ? "Selected by Agent" : "Selected by User" })
37731
37721
  ] }) : formCardProps.footer
37732
37722
  }
@@ -37739,6 +37729,31 @@ SearchSpecCard.displayName = "SearchSpecCard";
37739
37729
  var import_react66 = __toESM(require("react"), 1);
37740
37730
 
37741
37731
  // src/molecules/creator-discovery/MCQCard/defaultFetchers.ts
37732
+ function getBackendOrigin() {
37733
+ if (typeof window === "undefined") return null;
37734
+ return window.__NEXT_DATA__?.runtimeConfig?.NEXT_PUBLIC_AGENT_BACKEND ?? (typeof process !== "undefined" ? process.env?.NEXT_PUBLIC_AGENT_BACKEND : void 0) ?? null;
37735
+ }
37736
+ function getBaseUrl() {
37737
+ const backend = getBackendOrigin();
37738
+ if (backend) return `${backend}/api/custom-agents`;
37739
+ return "/api/agents-proxy/custom-agents";
37740
+ }
37741
+ function getAuthToken() {
37742
+ if (typeof document === "undefined") return null;
37743
+ for (const name of ["adminTokenBuilder", "adminToken", "token"]) {
37744
+ const match2 = document.cookie.match(new RegExp(`(?:^|;\\s*)${name}=([^;]*)`));
37745
+ if (match2?.[1]) return match2[1];
37746
+ }
37747
+ return null;
37748
+ }
37749
+ function buildHeaders() {
37750
+ const headers = { "Content-Type": "application/json" };
37751
+ if (getBackendOrigin()) {
37752
+ const token = getAuthToken();
37753
+ if (token) headers["Authorization"] = `Bearer ${token}`;
37754
+ }
37755
+ return headers;
37756
+ }
37742
37757
  var STORAGE_KEY = (sessionId) => `mcq_selections_${sessionId}`;
37743
37758
  function getLocalSelections(sessionId) {
37744
37759
  try {
@@ -37761,10 +37776,10 @@ async function defaultFetchSelections(sessionId) {
37761
37776
  if (Object.keys(local).length > 0) return local;
37762
37777
  try {
37763
37778
  const res = await fetch(
37764
- `/api/agents-proxy/custom-agents/sessions/${sessionId}/mcq-selections/get`,
37779
+ `${getBaseUrl()}/sessions/${sessionId}/mcq-selections/get`,
37765
37780
  {
37766
37781
  method: "POST",
37767
- headers: { "Content-Type": "application/json" },
37782
+ headers: buildHeaders(),
37768
37783
  body: "{}"
37769
37784
  }
37770
37785
  );
@@ -37786,10 +37801,10 @@ async function defaultPersistSelection(sessionId, questionKey, value) {
37786
37801
  setLocalSelection(sessionId, questionKey, value);
37787
37802
  try {
37788
37803
  await fetch(
37789
- `/api/agents-proxy/custom-agents/sessions/${sessionId}/mcq-selections`,
37804
+ `${getBaseUrl()}/sessions/${sessionId}/mcq-selections`,
37790
37805
  {
37791
37806
  method: "PATCH",
37792
- headers: { "Content-Type": "application/json" },
37807
+ headers: buildHeaders(),
37793
37808
  body: JSON.stringify({ question_key: questionKey, value })
37794
37809
  }
37795
37810
  );
@@ -37884,75 +37899,61 @@ var MCQCard = import_react66.default.memo(
37884
37899
  "div",
37885
37900
  {
37886
37901
  className: cn(
37887
- "p-6 rounded-[20px] border border-gray400 bg-background dark:bg-gray200 font-noto w-full",
37902
+ "p-4 rounded-lg border border-gray400 bg-cardSurface w-full",
37888
37903
  className
37889
37904
  ),
37890
37905
  children: [
37891
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "mb-4", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("h4", { className: "font-medium text-foreground px-3 py-1 rounded-md inline-block mb-2", children: question }) }),
37892
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "mb-6", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "space-y-4", children: optionsEntries.map(([key, label]) => {
37906
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "mb-4", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("p", { className: "text-sm text-cardText", children: question }) }),
37907
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "space-y-2.5 mb-4", children: optionsEntries.map(([key, label]) => {
37893
37908
  const isSelected = selectedOption === key;
37894
37909
  const isRecommended = key === recommended;
37895
- return /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(
37910
+ return /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
37896
37911
  "div",
37897
37912
  {
37898
37913
  onClick: (e) => handleOptionClick(key, e),
37899
37914
  className: cn(
37900
- "cursor-pointer rounded-xl p-3 transition-colors relative",
37901
- "border border-transparent bg-paperBackground",
37915
+ "cursor-pointer rounded-lg p-3 transition-colors",
37916
+ "border bg-black",
37917
+ isSelected ? "border-cardBorder" : "border-gray400",
37902
37918
  !selectedOption && !isOptionsDisabled && "hover:border-gray500",
37903
37919
  (isLoading || isOptionsDisabled) && "opacity-50 cursor-not-allowed"
37904
37920
  ),
37905
- children: [
37906
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "absolute top-1/2 left-4 transform -translate-y-1/2", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
37921
+ children: /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex items-start gap-3", children: [
37922
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "mt-0.5 flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
37907
37923
  "div",
37908
37924
  {
37909
37925
  className: cn(
37910
- "w-5 h-5 rounded-full border flex items-center justify-center transition-colors",
37911
- isSelected ? "border-purple100 bg-gray300" : cn(
37912
- "border-gray300 bg-background",
37913
- !selectedOption && !isOptionsDisabled && "hover:border-purple100"
37926
+ "w-4 h-4 rounded-full border-2 flex items-center justify-center transition-colors",
37927
+ isSelected ? "border-gold" : cn(
37928
+ "border-gray500",
37929
+ !selectedOption && !isOptionsDisabled && "hover:border-gold"
37914
37930
  )
37915
37931
  ),
37916
- children: isSelected && /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "w-2.5 h-2.5 rounded-full bg-purple100" })
37932
+ children: isSelected && /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "w-2 h-2 rounded-full bg-gold" })
37917
37933
  }
37918
37934
  ) }),
37919
- /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "pl-12", children: [
37920
- (isRecommended || isSelected) && /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex gap-2 mb-2 flex-wrap", children: [
37921
- isRecommended && /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "flex text-xs font-semibold", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("p", { className: "bg-greenBackground text-greenText px-2 py-1 rounded-[20px]", children: "Recommended" }) }),
37922
- isSelected && /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "flex text-xs font-semibold", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
37923
- "p",
37924
- {
37925
- className: cn(
37926
- "px-2 py-1 rounded-[20px]",
37927
- selectedOption === recommended ? "bg-purpleLight text-purpleText2 dark:bg-primary/20 dark:text-primary" : "bg-paperBackground text-primaryDark2 dark:bg-primary/20 dark:text-primary"
37928
- ),
37929
- children: "Selected by you"
37930
- }
37931
- ) })
37932
- ] }),
37933
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "text-base font-medium text-txtColor", children: label })
37935
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex-1 min-w-0", children: [
37936
+ isRecommended && /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("p", { className: "text-xs font-semibold text-gold mb-1", children: "Recommended" }),
37937
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("p", { className: "text-sm text-cardText", children: label })
37934
37938
  ] })
37935
- ]
37939
+ ] })
37936
37940
  },
37937
37941
  key
37938
37942
  );
37939
- }) }) }),
37940
- /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex justify-between items-center", children: [
37941
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "flex-1" }),
37942
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
37943
- "button",
37944
- {
37945
- onClick: handleProceed,
37946
- disabled: isContinueDisabled || isLoading || !selectedOption && !recommended,
37947
- className: cn(
37948
- "flex-3 px-4 py-2 border rounded-full text-sm disabled:opacity-50 disabled:cursor-not-allowed transition-colors",
37949
- "bg-purpleLight dark:bg-purple200 hover:bg-purpleText1 dark:hover:bg-purple100 text-purpleText2 dark:text-purpleText border-purpleText1 dark:border-purple-border dark:hover:text-white"
37950
- ),
37951
- children: isLoading ? "Sending..." : "Continue"
37952
- }
37953
- ),
37954
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "flex-1" })
37955
- ] })
37943
+ }) }),
37944
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "flex justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
37945
+ "button",
37946
+ {
37947
+ onClick: handleProceed,
37948
+ disabled: isContinueDisabled || isLoading || !selectedOption && !recommended,
37949
+ className: cn(
37950
+ "px-4 py-1.5 border rounded-lg text-xs font-medium transition-colors",
37951
+ "disabled:opacity-50 disabled:cursor-not-allowed",
37952
+ "bg-cardSurface hover:bg-cardSurface/80 text-gold border-cardBorder"
37953
+ ),
37954
+ children: isLoading ? "Sending..." : "Continue"
37955
+ }
37956
+ ) })
37956
37957
  ]
37957
37958
  }
37958
37959
  );
@@ -38613,9 +38614,9 @@ var CampaignConceptCard = import_react68.default.memo(
38613
38614
  idx + 1,
38614
38615
  "."
38615
38616
  ] }),
38616
- /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "inline-flex items-center bg-grayPill border border-foreground px-2 py-1 text-foreground text-sm font-grotesk font-medium rounded-md", children: String(label) }),
38617
- /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-foreground", children: "=" }),
38618
- /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "inline-flex items-center bg-grayPill border border-foreground px-2 py-1 text-foreground text-sm rounded-md font-grotesk font-medium", children: formatVal(value) })
38617
+ /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "inline-flex items-center bg-black border border-cardBorder px-2 py-0.5 text-cardText text-xs font-medium rounded-md", children: String(label) }),
38618
+ /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-cardText", children: "=" }),
38619
+ /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "inline-flex items-center bg-black border border-cardBorder px-2 py-1 text-cardText text-sm rounded-md font-grotesk font-medium", children: formatVal(value) })
38619
38620
  ] }, idx);
38620
38621
  }) });
38621
38622
  }
@@ -38628,9 +38629,9 @@ var CampaignConceptCard = import_react68.default.memo(
38628
38629
  idx + 1,
38629
38630
  "."
38630
38631
  ] }),
38631
- /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "inline-flex items-center bg-grayPill border border-foreground px-2 py-1 text-foreground text-sm font-grotesk font-medium rounded-md", children: formatKey(k) }),
38632
- /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-foreground", children: "=" }),
38633
- /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "inline-flex items-center bg-grayPill border border-foreground px-2 py-1 text-foreground text-sm rounded-md font-grotesk font-medium", children: formatVal(v) })
38632
+ /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "inline-flex items-center bg-black border border-cardBorder px-2 py-0.5 text-cardText text-xs font-medium rounded-md", children: formatKey(k) }),
38633
+ /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-cardText", children: "=" }),
38634
+ /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "inline-flex items-center bg-black border border-cardBorder px-2 py-1 text-cardText text-sm rounded-md font-grotesk font-medium", children: formatVal(v) })
38634
38635
  ] }, k)) });
38635
38636
  }
38636
38637
  return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-muted-foreground text-sm", children: String(val) });
@@ -38672,7 +38673,7 @@ var CampaignConceptCard = import_react68.default.memo(
38672
38673
  if (!val)
38673
38674
  return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-muted-foreground text-sm", children: "-" });
38674
38675
  const displayValue = typeof val === "object" && !Array.isArray(val) ? `${val.min ?? 0}-${val.max ?? 0}` : String(val);
38675
- return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-foreground text-sm", children: displayValue });
38676
+ return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-cardText text-sm", children: displayValue });
38676
38677
  },
38677
38678
  renderEdit: (v, onChange) => /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
38678
38679
  Input,
@@ -38697,7 +38698,7 @@ var CampaignConceptCard = import_react68.default.memo(
38697
38698
  return {
38698
38699
  ...field,
38699
38700
  label: field.label || "Primary KPI",
38700
- renderDisplay: (val) => /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-foreground text-sm", children: val ? String(val) : "-" }),
38701
+ renderDisplay: (val) => /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-cardText text-sm", children: val ? String(val) : "-" }),
38701
38702
  renderEdit: (v, onChange) => /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
38702
38703
  Input,
38703
38704
  {
@@ -38715,7 +38716,7 @@ var CampaignConceptCard = import_react68.default.memo(
38715
38716
  label: field.label || "Secondary KPIs",
38716
38717
  renderDisplay: (val) => {
38717
38718
  const display = Array.isArray(val) ? val.map(String).join(", ") : val ? String(val) : "-";
38718
- return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-foreground text-sm", children: display });
38719
+ return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-cardText text-sm", children: display });
38719
38720
  },
38720
38721
  renderEdit: (v, onChange) => /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
38721
38722
  Textarea,
@@ -38742,7 +38743,7 @@ var CampaignConceptCard = import_react68.default.memo(
38742
38743
  return {
38743
38744
  ...field,
38744
38745
  type: "textarea",
38745
- renderDisplay: (val) => /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-foreground text-sm leading-relaxed", children: val ? String(val) : "-" })
38746
+ renderDisplay: (val) => /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-cardText text-sm leading-relaxed", children: val ? String(val) : "-" })
38746
38747
  };
38747
38748
  }
38748
38749
  return {
@@ -38756,7 +38757,7 @@ var CampaignConceptCard = import_react68.default.memo(
38756
38757
  return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
38757
38758
  "span",
38758
38759
  {
38759
- className: "inline-flex items-center bg-grayPill border border-foreground px-3 py-1 text-foreground text-sm font-grotesk font-medium rounded-md",
38760
+ className: "inline-flex items-center bg-black border border-cardBorder px-2 py-0.5 text-cardText text-xs font-medium rounded-md",
38760
38761
  children: label
38761
38762
  },
38762
38763
  idx
@@ -38766,7 +38767,7 @@ var CampaignConceptCard = import_react68.default.memo(
38766
38767
  if (typeof val === "object" && val !== null) {
38767
38768
  return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("div", { className: "text-muted-foreground text-xs font-mono bg-paperBackground p-2 rounded mt-1 overflow-auto max-h-24", children: Object.entries(val).map(([k, v]) => `${k.replace(/_/g, " ")}: ${v}`).join("\n") });
38768
38769
  }
38769
- return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-foreground text-sm", children: val !== void 0 && val !== null ? String(val) : "-" });
38770
+ return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-cardText text-sm", children: val !== void 0 && val !== null ? String(val) : "-" });
38770
38771
  }
38771
38772
  };
38772
38773
  });
@@ -38775,19 +38776,19 @@ var CampaignConceptCard = import_react68.default.memo(
38775
38776
  "div",
38776
38777
  {
38777
38778
  className: cn(
38778
- "w-full rounded-xl border bg-background dark:bg-gray100 relative transition-all duration-300",
38779
- isSelected || isRecommended ? "border-2 border-green500" : "border-gray400",
38779
+ "w-full rounded-lg border bg-cardSurface relative transition-all duration-300",
38780
+ isSelected || isRecommended ? "border-2 border-cardBorder" : "border-gray400",
38780
38781
  className
38781
38782
  ),
38782
38783
  children: [
38783
38784
  /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)(
38784
38785
  "div",
38785
38786
  {
38786
- className: "px-5 py-4 relative flex items-start justify-between cursor-pointer select-none",
38787
+ className: "px-4 py-2.5 relative flex items-center justify-between cursor-pointer select-none",
38787
38788
  onClick: handleToggle,
38788
38789
  children: [
38789
38790
  /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)("div", { className: "flex-1", children: [
38790
- /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)("h3", { className: "mb-1 py-1 text-txtColor font-bold text-lg", children: [
38791
+ /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)("h3", { className: "text-cardText font-semibold text-sm", children: [
38791
38792
  "Concept ",
38792
38793
  index !== void 0 ? index : "",
38793
38794
  " :",
@@ -38795,8 +38796,8 @@ var CampaignConceptCard = import_react68.default.memo(
38795
38796
  typeof cardTitle === "object" ? JSON.stringify(cardTitle) : String(cardTitle)
38796
38797
  ] }),
38797
38798
  /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)("div", { className: "flex flex-wrap gap-2", children: [
38798
- isRecommended && /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("div", { className: "inline-flex text-[10px] font-bold uppercase tracking-widest", children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "bg-green-600/20 text-green-600 px-2 py-1 rounded-[20px]", children: "Recommended" }) }),
38799
- !effectiveIsLatest && selectionStatus && /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("div", { className: "inline-flex text-[10px] font-bold uppercase tracking-widest text-[#3B82F6]", children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "bg-[#3B82F6]/10 px-2 py-0.5 rounded border border-[#3B82F6]/20", children: selectionStatus === "agent" ? "Selected by Agent" : "Selected by You" }) })
38799
+ isRecommended && /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-[10px] font-semibold uppercase tracking-widest text-gold", children: "Recommended" }),
38800
+ !effectiveIsLatest && selectionStatus && /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { className: "text-[10px] font-semibold uppercase tracking-widest text-gold", children: selectionStatus === "agent" ? "Selected by Agent" : "Selected by You" })
38800
38801
  ] })
38801
38802
  ] }),
38802
38803
  /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
@@ -38812,7 +38813,7 @@ var CampaignConceptCard = import_react68.default.memo(
38812
38813
  e.stopPropagation();
38813
38814
  handleToggle();
38814
38815
  },
38815
- className: "p-2 bg-background hover:bg-gray200 dark:hover:bg-gray200 text-foreground rounded-lg shadow-lg",
38816
+ className: "p-2 bg-cardSurface hover:bg-gray200 text-cardText rounded-lg",
38816
38817
  "aria-label": isOpen ? "Collapse" : "Expand",
38817
38818
  title: isOpen ? "Collapse" : "Expand",
38818
38819
  children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
@@ -38836,11 +38837,11 @@ var CampaignConceptCard = import_react68.default.memo(
38836
38837
  exit: { height: 0, opacity: 0 },
38837
38838
  transition: { duration: 0.2, ease: "easeIn" },
38838
38839
  className: "overflow-hidden",
38839
- children: /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)("div", { className: "px-4 py-3 w-full relative", children: [
38840
+ children: /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)("div", { className: "px-3 py-2 w-full relative", children: [
38840
38841
  /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
38841
38842
  "div",
38842
38843
  {
38843
- className: "absolute left-[60px] top-[100px] bottom-[60px] w-[3px]",
38844
+ className: "absolute left-[48px] top-[70px] bottom-[40px] w-[2px]",
38844
38845
  style: {
38845
38846
  background: `radial-gradient(circle closest-side, #3C3D3E 98%, transparent) 50%/2px 5px repeat-y, linear-gradient(#3C3D3E 50%, transparent 0) 50%/2px 10px repeat-y`
38846
38847
  }
@@ -38860,7 +38861,7 @@ var CampaignConceptCard = import_react68.default.memo(
38860
38861
  hideTitle: true,
38861
38862
  hideCopyButton: true,
38862
38863
  className: "bg-transparent border-none shadow-none mb-0 p-0",
38863
- footer: !effectiveIsLatest && selectionStatus ? /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)("div", { className: "flex justify-end items-center gap-1.5 text-green-600 text-[10px] font-semibold py-4 pr-6", children: [
38864
+ footer: !effectiveIsLatest && selectionStatus ? /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)("div", { className: "flex justify-end items-center gap-1 text-green-600 text-[10px] font-semibold py-2 pr-4", children: [
38864
38865
  /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(CircleCheck, { className: "h-3.5 w-3.5" }),
38865
38866
  /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { children: selectionStatus === "agent" ? "Selected by Agent" : "Selected by You" })
38866
38867
  ] }) : formCardProps.footer