@loafmarkets/ui 0.1.11 → 0.1.12

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.mjs CHANGED
@@ -1,13 +1,15 @@
1
- import * as o from 'react';
2
- import o__default, { useState, useEffect, createElement } from 'react';
1
+ import * as React5 from 'react';
2
+ import { useState, useEffect } from 'react';
3
3
  import { Slot } from '@radix-ui/react-slot';
4
4
  import { cva } from 'class-variance-authority';
5
5
  import { clsx } from 'clsx';
6
6
  import { twMerge } from 'tailwind-merge';
7
7
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
8
+ import styled6, { keyframes, css } from 'styled-components';
8
9
  import { Newspaper, BedDouble, Bath, CarFront } from 'lucide-react';
9
10
  import * as LightweightCharts from 'lightweight-charts';
10
11
 
12
+ // src/components/button.tsx
11
13
  function cn(...inputs) {
12
14
  return twMerge(clsx(inputs));
13
15
  }
@@ -45,7 +47,7 @@ var buttonVariants = cva(
45
47
  }
46
48
  }
47
49
  );
48
- var Button = o.forwardRef(
50
+ var Button = React5.forwardRef(
49
51
  ({ className, variant, size, radius, asChild = false, ...props }, ref) => {
50
52
  const Comp = asChild ? Slot : "button";
51
53
  const coercedRadius = radius ?? (variant === "onboarding" || variant === "onboardingOutline" ? "square" : void 0);
@@ -84,11 +86,11 @@ var badgeVariants = cva(
84
86
  }
85
87
  }
86
88
  );
87
- var Badge = o.forwardRef(
89
+ var Badge = React5.forwardRef(
88
90
  ({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx("span", { ref, className: cn(badgeVariants({ variant, size }), className), ...props })
89
91
  );
90
92
  Badge.displayName = "Badge";
91
- var Card = o.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
93
+ var Card = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
92
94
  "div",
93
95
  {
94
96
  ref,
@@ -100,11 +102,11 @@ var Card = o.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
100
102
  }
101
103
  ));
102
104
  Card.displayName = "Card";
103
- var CardHeader = o.forwardRef(
105
+ var CardHeader = React5.forwardRef(
104
106
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("flex flex-col space-y-1.5 p-6", className), ...props })
105
107
  );
106
108
  CardHeader.displayName = "CardHeader";
107
- var CardTitle = o.forwardRef(
109
+ var CardTitle = React5.forwardRef(
108
110
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx(
109
111
  "h3",
110
112
  {
@@ -115,15 +117,15 @@ var CardTitle = o.forwardRef(
115
117
  )
116
118
  );
117
119
  CardTitle.displayName = "CardTitle";
118
- var CardDescription = o.forwardRef(
120
+ var CardDescription = React5.forwardRef(
119
121
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx("p", { ref, className: cn("text-sm text-slate-500", className), ...props })
120
122
  );
121
123
  CardDescription.displayName = "CardDescription";
122
- var CardContent = o.forwardRef(
124
+ var CardContent = React5.forwardRef(
123
125
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("px-6 pb-6 pt-2 text-sm text-slate-600", className), ...props })
124
126
  );
125
127
  CardContent.displayName = "CardContent";
126
- var CardFooter = o.forwardRef(
128
+ var CardFooter = React5.forwardRef(
127
129
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("flex items-center border-t border-slate-100 px-6 py-4", className), ...props })
128
130
  );
129
131
  CardFooter.displayName = "CardFooter";
@@ -141,7 +143,7 @@ var defaultFormatSignedCurrency = (value) => {
141
143
  const sign = value >= 0 ? "+" : "-";
142
144
  return `${sign}${defaultFormatCurrency(Math.abs(value))}`;
143
145
  };
144
- var PortfolioSummary = o.forwardRef(
146
+ var PortfolioSummary = React5.forwardRef(
145
147
  ({
146
148
  availableCash,
147
149
  portfolioValue,
@@ -214,12 +216,12 @@ var PortfolioSummary = o.forwardRef(
214
216
  }
215
217
  );
216
218
  PortfolioSummary.displayName = "PortfolioSummary";
217
- var clamp = (v2, min, max) => Math.min(max, Math.max(min, v2));
218
- var fmt0 = (v2) => Math.abs(v2).toLocaleString(void 0, { maximumFractionDigits: 0 });
219
+ var clamp = (v, min, max) => Math.min(max, Math.max(min, v));
220
+ var fmt0 = (v) => Math.abs(v).toLocaleString(void 0, { maximumFractionDigits: 0 });
219
221
  var normalizeLevels = (levels = []) => levels.filter((level) => Number.isFinite(level.price) && level.price > 0 && Number.isFinite(level.amount) && level.amount > 0);
220
222
  var estimateMarketBuyFromUsd = (levels = [], usdAmount) => {
221
223
  if (!Number.isFinite(usdAmount) || usdAmount <= 0) return { tokens: 0, value: 0, avgPrice: null };
222
- const asks = normalizeLevels(levels).sort((a2, b2) => a2.price - b2.price);
224
+ const asks = normalizeLevels(levels).sort((a, b) => a.price - b.price);
223
225
  let remainingUsd = usdAmount;
224
226
  let tokensFilled = 0;
225
227
  let spent = 0;
@@ -240,7 +242,7 @@ var estimateMarketBuyFromUsd = (levels = [], usdAmount) => {
240
242
  };
241
243
  var estimateMarketBuyFromTokens = (levels = [], tokenAmount) => {
242
244
  if (!Number.isFinite(tokenAmount) || tokenAmount <= 0) return { tokens: 0, value: 0, avgPrice: null };
243
- const asks = normalizeLevels(levels).sort((a2, b2) => a2.price - b2.price);
245
+ const asks = normalizeLevels(levels).sort((a, b) => a.price - b.price);
244
246
  let remainingTokens = tokenAmount;
245
247
  let tokensFilled = 0;
246
248
  let spent = 0;
@@ -259,7 +261,7 @@ var estimateMarketBuyFromTokens = (levels = [], tokenAmount) => {
259
261
  };
260
262
  var estimateMarketSellFromTokens = (levels = [], tokenAmount) => {
261
263
  if (!Number.isFinite(tokenAmount) || tokenAmount <= 0) return { tokens: 0, value: 0, avgPrice: null };
262
- const bids = normalizeLevels(levels).sort((a2, b2) => b2.price - a2.price);
264
+ const bids = normalizeLevels(levels).sort((a, b) => b.price - a.price);
263
265
  let remainingTokens = tokenAmount;
264
266
  let tokensFilled = 0;
265
267
  let received = 0;
@@ -291,31 +293,31 @@ function HousePositionSlider({
291
293
  className,
292
294
  ...props
293
295
  }) {
294
- const [orderMode, setOrderMode] = o.useState("none");
295
- const [buyTrackingMode, setBuyTrackingMode] = o.useState("dollars");
296
- const [deltaDollars, setDeltaDollars] = o.useState(0);
297
- const [deltaTokensBuy, setDeltaTokensBuy] = o.useState(0);
298
- const [deltaTokensSell, setDeltaTokensSell] = o.useState(0);
299
- const [isDragging, setIsDragging] = o.useState(false);
300
- const [visualTargetPct, setVisualTargetPct] = o.useState(null);
301
- const [orderType, setOrderType] = o.useState(defaultOrderType);
302
- const [limitPrice, setLimitPrice] = o.useState(currentPrice);
303
- const [limitPriceInput, setLimitPriceInput] = o.useState(currentPrice.toFixed(2));
304
- const [limitPriceDirty, setLimitPriceDirty] = o.useState(false);
305
- const [ownershipInput, setOwnershipInput] = o.useState("");
306
- const [tokenAmountInput, setTokenAmountInput] = o.useState("");
307
- const houseRef = o.useRef(null);
296
+ const [orderMode, setOrderMode] = React5.useState("none");
297
+ const [buyTrackingMode, setBuyTrackingMode] = React5.useState("dollars");
298
+ const [deltaDollars, setDeltaDollars] = React5.useState(0);
299
+ const [deltaTokensBuy, setDeltaTokensBuy] = React5.useState(0);
300
+ const [deltaTokensSell, setDeltaTokensSell] = React5.useState(0);
301
+ const [isDragging, setIsDragging] = React5.useState(false);
302
+ const [visualTargetPct, setVisualTargetPct] = React5.useState(null);
303
+ const [orderType, setOrderType] = React5.useState(defaultOrderType);
304
+ const [limitPrice, setLimitPrice] = React5.useState(currentPrice);
305
+ const [limitPriceInput, setLimitPriceInput] = React5.useState(currentPrice.toFixed(2));
306
+ const [limitPriceDirty, setLimitPriceDirty] = React5.useState(false);
307
+ const [ownershipInput, setOwnershipInput] = React5.useState("");
308
+ const [tokenAmountInput, setTokenAmountInput] = React5.useState("");
309
+ const houseRef = React5.useRef(null);
308
310
  const asks = orderbook?.asks ?? [];
309
311
  const bids = orderbook?.bids ?? [];
310
- o.useEffect(() => {
312
+ React5.useEffect(() => {
311
313
  if (orderType !== "limit") return;
312
314
  if (limitPriceDirty) return;
313
315
  setLimitPrice(currentPrice);
314
316
  setLimitPriceInput(currentPrice.toFixed(2));
315
317
  }, [currentPrice, limitPriceDirty, orderType]);
316
318
  const effectivePrice = orderType === "limit" ? limitPrice : currentPrice;
317
- const pendingBuyValue = pendingOrders.filter((o2) => o2.type === "buy").reduce((s, o2) => s + o2.value, 0);
318
- const pendingSellTokens = pendingOrders.filter((o2) => o2.type === "sell").reduce((s, o2) => s + Math.abs(o2.tokens), 0);
319
+ const pendingBuyValue = pendingOrders.filter((o) => o.type === "buy").reduce((s, o) => s + o.value, 0);
320
+ const pendingSellTokens = pendingOrders.filter((o) => o.type === "sell").reduce((s, o) => s + Math.abs(o.tokens), 0);
319
321
  const effectiveAvailableCash = Math.max(0, availableCash - pendingBuyValue);
320
322
  const effectiveTokensHeld = Math.max(0, tokensHeld - pendingSellTokens);
321
323
  const holdingsValue = tokensHeld * effectivePrice;
@@ -382,7 +384,7 @@ function HousePositionSlider({
382
384
  const impliedDisplayTargetOwnership = clamp(targetOwnership + ownershipShift, 0, 100);
383
385
  const displayTargetOwnership = visualTargetPct ?? impliedDisplayTargetOwnership;
384
386
  const estFeeTokens = Math.abs(deltaValue) * 5e-3 / (effectivePrice || 1);
385
- const resetOrder = o.useCallback(() => {
387
+ const resetOrder = React5.useCallback(() => {
386
388
  setOrderMode("none");
387
389
  setBuyTrackingMode("dollars");
388
390
  setDeltaDollars(0);
@@ -390,7 +392,7 @@ function HousePositionSlider({
390
392
  setDeltaTokensSell(0);
391
393
  setVisualTargetPct(null);
392
394
  }, []);
393
- const updateOrderFromTargetValue = o.useCallback(
395
+ const updateOrderFromTargetValue = React5.useCallback(
394
396
  (newTargetValue) => {
395
397
  const newDeltaValue = newTargetValue - holdingsValue;
396
398
  if (newDeltaValue > 0) {
@@ -414,7 +416,7 @@ function HousePositionSlider({
414
416
  },
415
417
  [effectiveAvailableCash, effectivePrice, effectiveTokensHeld, holdingsValue, resetOrder, tokensHeld]
416
418
  );
417
- const updateOrderFromOwnership = o.useCallback(
419
+ const updateOrderFromOwnership = React5.useCallback(
418
420
  (newOwnershipPercent) => {
419
421
  const nextOwnership = clamp(newOwnershipPercent, 0, 100);
420
422
  const newTargetTokens = nextOwnership / 100 * totalTokens;
@@ -423,7 +425,7 @@ function HousePositionSlider({
423
425
  },
424
426
  [effectivePrice, totalTokens, updateOrderFromTargetValue]
425
427
  );
426
- const updateOrderFromTokenAmount = o.useCallback(
428
+ const updateOrderFromTokenAmount = React5.useCallback(
427
429
  (tokenAmountSigned) => {
428
430
  if (tokenAmountSigned > 0) {
429
431
  const maxTokens = effectiveAvailableCash / (effectivePrice || 1);
@@ -446,7 +448,7 @@ function HousePositionSlider({
446
448
  },
447
449
  [effectiveAvailableCash, effectivePrice, effectiveTokensHeld, resetOrder]
448
450
  );
449
- const updateOrderFromSlider = o.useCallback(
451
+ const updateOrderFromSlider = React5.useCallback(
450
452
  (pct) => {
451
453
  const normalized = (pct - 50) / 50;
452
454
  const magnitude = Math.min(Math.abs(normalized), 1);
@@ -490,12 +492,12 @@ function HousePositionSlider({
490
492
  },
491
493
  [effectiveAvailableCash, effectiveTokensHeld, resetOrder]
492
494
  );
493
- const handleDragAtClientY = o.useCallback(
495
+ const handleDragAtClientY = React5.useCallback(
494
496
  (clientY) => {
495
497
  if (!houseRef.current) return;
496
498
  const rect = houseRef.current.getBoundingClientRect();
497
- const y2 = clientY - rect.top;
498
- const pct = clamp(100 - y2 / rect.height * 100, 0, 100);
499
+ const y = clientY - rect.top;
500
+ const pct = clamp(100 - y / rect.height * 100, 0, 100);
499
501
  updateOrderFromSlider(pct);
500
502
  },
501
503
  [updateOrderFromSlider]
@@ -530,9 +532,9 @@ function HousePositionSlider({
530
532
  const handleCancel = () => {
531
533
  resetOrder();
532
534
  };
533
- const handleOrderTypeSelection = (next2) => {
534
- setOrderType(next2);
535
- if (next2 === "limit") {
535
+ const handleOrderTypeSelection = (next) => {
536
+ setOrderType(next);
537
+ if (next === "limit") {
536
538
  setLimitPriceDirty(false);
537
539
  setLimitPrice(currentPrice);
538
540
  setLimitPriceInput(currentPrice.toFixed(2));
@@ -788,8 +790,8 @@ function HousePositionSlider({
788
790
  ] })
789
791
  ] });
790
792
  }
791
- var clamp2 = (v2, min, max) => Math.min(max, Math.max(min, v2));
792
- var fmt02 = (v2) => Math.abs(v2).toLocaleString(void 0, { maximumFractionDigits: 0 });
793
+ var clamp2 = (v, min, max) => Math.min(max, Math.max(min, v));
794
+ var fmt02 = (v) => Math.abs(v).toLocaleString(void 0, { maximumFractionDigits: 0 });
793
795
  var styles = {
794
796
  // SliderContainer @media (max-width: 1024px)
795
797
  sliderContainer: {
@@ -1006,18 +1008,18 @@ function HousePositionSliderMobile({
1006
1008
  className,
1007
1009
  ...props
1008
1010
  }) {
1009
- const [orderMode, setOrderMode] = o.useState("none");
1010
- const [deltaDollars, setDeltaDollars] = o.useState(0);
1011
- const [deltaTokensSell, setDeltaTokensSell] = o.useState(0);
1012
- const [deltaTokensBuy, setDeltaTokensBuy] = o.useState(0);
1013
- const [buyTrackingMode, setBuyTrackingMode] = o.useState("dollars");
1014
- const [orderType, setOrderType] = o.useState(defaultOrderType);
1015
- const [limitPrice, setLimitPrice] = o.useState(currentPrice);
1016
- const [limitPriceInput, setLimitPriceInput] = o.useState(currentPrice.toFixed(2));
1017
- const [limitPriceDirty, setLimitPriceDirty] = o.useState(false);
1018
- const [tokenAmountInput, setTokenAmountInput] = o.useState("");
1019
- const houseRef = o.useRef(null);
1020
- o.useEffect(() => {
1011
+ const [orderMode, setOrderMode] = React5.useState("none");
1012
+ const [deltaDollars, setDeltaDollars] = React5.useState(0);
1013
+ const [deltaTokensSell, setDeltaTokensSell] = React5.useState(0);
1014
+ const [deltaTokensBuy, setDeltaTokensBuy] = React5.useState(0);
1015
+ const [buyTrackingMode, setBuyTrackingMode] = React5.useState("dollars");
1016
+ const [orderType, setOrderType] = React5.useState(defaultOrderType);
1017
+ const [limitPrice, setLimitPrice] = React5.useState(currentPrice);
1018
+ const [limitPriceInput, setLimitPriceInput] = React5.useState(currentPrice.toFixed(2));
1019
+ const [limitPriceDirty, setLimitPriceDirty] = React5.useState(false);
1020
+ const [tokenAmountInput, setTokenAmountInput] = React5.useState("");
1021
+ const houseRef = React5.useRef(null);
1022
+ React5.useEffect(() => {
1021
1023
  if (orderType !== "limit") return;
1022
1024
  if (limitPriceDirty) return;
1023
1025
  setLimitPrice(currentPrice);
@@ -1059,7 +1061,7 @@ function HousePositionSliderMobile({
1059
1061
  const hasChange = orderMode !== "none" && (Math.abs(deltaTokens) > 1e-3 || Math.abs(deltaValue) > 0.01);
1060
1062
  const targetOwnership = totalTokens > 0 ? targetTokens / totalTokens * 100 : 0;
1061
1063
  const estFeeTokens = effectivePrice > 0 ? Math.abs(deltaValue) * 5e-3 / effectivePrice : 0;
1062
- const updateOrderFromTargetValue = o.useCallback(
1064
+ const updateOrderFromTargetValue = React5.useCallback(
1063
1065
  (newTargetValue) => {
1064
1066
  const newDeltaValue = newTargetValue - holdingsValue;
1065
1067
  if (newDeltaValue > 0.01) {
@@ -1087,7 +1089,7 @@ function HousePositionSliderMobile({
1087
1089
  },
1088
1090
  [holdingsValue, availableCash, effectivePrice, tokensHeld]
1089
1091
  );
1090
- const updateOrderFromTokenAmount = o.useCallback(
1092
+ const updateOrderFromTokenAmount = React5.useCallback(
1091
1093
  (tokenAmount) => {
1092
1094
  if (tokenAmount > 0) {
1093
1095
  const maxTokens = effectivePrice > 0 ? availableCash / effectivePrice : 0;
@@ -1114,21 +1116,21 @@ function HousePositionSliderMobile({
1114
1116
  },
1115
1117
  [effectivePrice, availableCash, tokensHeld]
1116
1118
  );
1117
- const handleMarkerClick = o.useCallback(
1119
+ const handleMarkerClick = React5.useCallback(
1118
1120
  (pct) => {
1119
1121
  const newTargetValue = pct / 100 * totalCapacity;
1120
1122
  updateOrderFromTargetValue(newTargetValue);
1121
1123
  },
1122
1124
  [totalCapacity, updateOrderFromTargetValue]
1123
1125
  );
1124
- const onMouseDown = o.useCallback(
1126
+ const onMouseDown = React5.useCallback(
1125
1127
  (e) => {
1126
1128
  e.preventDefault();
1127
1129
  const move = (ev) => {
1128
1130
  if (!houseRef.current) return;
1129
1131
  const rect = houseRef.current.getBoundingClientRect();
1130
- const y2 = ev.clientY - rect.top;
1131
- const pct = clamp2(100 - y2 / rect.height * 100, 0, 100);
1132
+ const y = ev.clientY - rect.top;
1133
+ const pct = clamp2(100 - y / rect.height * 100, 0, 100);
1132
1134
  const newTargetValue = pct / 100 * totalCapacity;
1133
1135
  updateOrderFromTargetValue(newTargetValue);
1134
1136
  };
@@ -1141,7 +1143,7 @@ function HousePositionSliderMobile({
1141
1143
  },
1142
1144
  [totalCapacity, updateOrderFromTargetValue]
1143
1145
  );
1144
- const onTouchStart = o.useCallback(
1146
+ const onTouchStart = React5.useCallback(
1145
1147
  (e) => {
1146
1148
  e.preventDefault();
1147
1149
  e.stopPropagation();
@@ -1151,8 +1153,8 @@ function HousePositionSliderMobile({
1151
1153
  if (!houseRef.current) return;
1152
1154
  const rect = houseRef.current.getBoundingClientRect();
1153
1155
  const touch = ev.touches[0];
1154
- const y2 = touch.clientY - rect.top;
1155
- const pct = clamp2(100 - y2 / rect.height * 100, 0, 100);
1156
+ const y = touch.clientY - rect.top;
1157
+ const pct = clamp2(100 - y / rect.height * 100, 0, 100);
1156
1158
  const newTargetValue = pct / 100 * totalCapacity;
1157
1159
  updateOrderFromTargetValue(newTargetValue);
1158
1160
  };
@@ -1528,1353 +1530,9 @@ function HousePositionSliderMobile({
1528
1530
  );
1529
1531
  }
1530
1532
 
1531
- // ../../../node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.mjs
1532
- var __assign = function() {
1533
- __assign = Object.assign || function __assign2(t) {
1534
- for (var s, i = 1, n = arguments.length; i < n; i++) {
1535
- s = arguments[i];
1536
- for (var p2 in s) if (Object.prototype.hasOwnProperty.call(s, p2)) t[p2] = s[p2];
1537
- }
1538
- return t;
1539
- };
1540
- return __assign.apply(this, arguments);
1541
- };
1542
- function __spreadArray(to, from2, pack) {
1543
- if (pack || arguments.length === 2) for (var i = 0, l2 = from2.length, ar; i < l2; i++) {
1544
- if (ar || !(i in from2)) {
1545
- if (!ar) ar = Array.prototype.slice.call(from2, 0, i);
1546
- ar[i] = from2[i];
1547
- }
1548
- }
1549
- return to.concat(ar || Array.prototype.slice.call(from2));
1550
- }
1551
-
1552
- // ../../../node_modules/.pnpm/@emotion+memoize@0.9.0/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js
1553
- function memoize(fn) {
1554
- var cache = /* @__PURE__ */ Object.create(null);
1555
- return function(arg) {
1556
- if (cache[arg] === void 0) cache[arg] = fn(arg);
1557
- return cache[arg];
1558
- };
1559
- }
1560
-
1561
- // ../../../node_modules/.pnpm/@emotion+is-prop-valid@1.4.0/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js
1562
- var reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|popover|popoverTarget|popoverTargetAction|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/;
1563
- var isPropValid = /* @__PURE__ */ memoize(
1564
- function(prop) {
1565
- return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111 && prop.charCodeAt(1) === 110 && prop.charCodeAt(2) < 91;
1566
- }
1567
- /* Z+1 */
1568
- );
1569
-
1570
- // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Enum.js
1571
- var MS = "-ms-";
1572
- var MOZ = "-moz-";
1573
- var WEBKIT = "-webkit-";
1574
- var COMMENT = "comm";
1575
- var RULESET = "rule";
1576
- var DECLARATION = "decl";
1577
- var IMPORT = "@import";
1578
- var NAMESPACE = "@namespace";
1579
- var KEYFRAMES = "@keyframes";
1580
- var LAYER = "@layer";
1581
-
1582
- // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Utility.js
1583
- var abs = Math.abs;
1584
- var from = String.fromCharCode;
1585
- var assign = Object.assign;
1586
- function hash(value, length2) {
1587
- return charat(value, 0) ^ 45 ? (((length2 << 2 ^ charat(value, 0)) << 2 ^ charat(value, 1)) << 2 ^ charat(value, 2)) << 2 ^ charat(value, 3) : 0;
1588
- }
1589
- function trim(value) {
1590
- return value.trim();
1591
- }
1592
- function match(value, pattern) {
1593
- return (value = pattern.exec(value)) ? value[0] : value;
1594
- }
1595
- function replace(value, pattern, replacement) {
1596
- return value.replace(pattern, replacement);
1597
- }
1598
- function indexof(value, search, position2) {
1599
- return value.indexOf(search, position2);
1600
- }
1601
- function charat(value, index) {
1602
- return value.charCodeAt(index) | 0;
1603
- }
1604
- function substr(value, begin, end) {
1605
- return value.slice(begin, end);
1606
- }
1607
- function strlen(value) {
1608
- return value.length;
1609
- }
1610
- function sizeof(value) {
1611
- return value.length;
1612
- }
1613
- function append(value, array) {
1614
- return array.push(value), value;
1615
- }
1616
- function combine(array, callback) {
1617
- return array.map(callback).join("");
1618
- }
1619
- function filter(array, pattern) {
1620
- return array.filter(function(value) {
1621
- return !match(value, pattern);
1622
- });
1623
- }
1624
-
1625
- // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Tokenizer.js
1626
- var line = 1;
1627
- var column = 1;
1628
- var length = 0;
1629
- var position = 0;
1630
- var character = 0;
1631
- var characters = "";
1632
- function node(value, root, parent, type, props, children, length2, siblings) {
1633
- return { value, root, parent, type, props, children, line, column, length: length2, return: "", siblings };
1634
- }
1635
- function copy(root, props) {
1636
- return assign(node("", null, null, "", null, null, 0, root.siblings), root, { length: -root.length }, props);
1637
- }
1638
- function lift(root) {
1639
- while (root.root)
1640
- root = copy(root.root, { children: [root] });
1641
- append(root, root.siblings);
1642
- }
1643
- function char() {
1644
- return character;
1645
- }
1646
- function prev() {
1647
- character = position > 0 ? charat(characters, --position) : 0;
1648
- if (column--, character === 10)
1649
- column = 1, line--;
1650
- return character;
1651
- }
1652
- function next() {
1653
- character = position < length ? charat(characters, position++) : 0;
1654
- if (column++, character === 10)
1655
- column = 1, line++;
1656
- return character;
1657
- }
1658
- function peek() {
1659
- return charat(characters, position);
1660
- }
1661
- function caret() {
1662
- return position;
1663
- }
1664
- function slice(begin, end) {
1665
- return substr(characters, begin, end);
1666
- }
1667
- function token(type) {
1668
- switch (type) {
1669
- // \0 \t \n \r \s whitespace token
1670
- case 0:
1671
- case 9:
1672
- case 10:
1673
- case 13:
1674
- case 32:
1675
- return 5;
1676
- // ! + , / > @ ~ isolate token
1677
- case 33:
1678
- case 43:
1679
- case 44:
1680
- case 47:
1681
- case 62:
1682
- case 64:
1683
- case 126:
1684
- // ; { } breakpoint token
1685
- case 59:
1686
- case 123:
1687
- case 125:
1688
- return 4;
1689
- // : accompanied token
1690
- case 58:
1691
- return 3;
1692
- // " ' ( [ opening delimit token
1693
- case 34:
1694
- case 39:
1695
- case 40:
1696
- case 91:
1697
- return 2;
1698
- // ) ] closing delimit token
1699
- case 41:
1700
- case 93:
1701
- return 1;
1702
- }
1703
- return 0;
1704
- }
1705
- function alloc(value) {
1706
- return line = column = 1, length = strlen(characters = value), position = 0, [];
1707
- }
1708
- function dealloc(value) {
1709
- return characters = "", value;
1710
- }
1711
- function delimit(type) {
1712
- return trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)));
1713
- }
1714
- function whitespace(type) {
1715
- while (character = peek())
1716
- if (character < 33)
1717
- next();
1718
- else
1719
- break;
1720
- return token(type) > 2 || token(character) > 3 ? "" : " ";
1721
- }
1722
- function escaping(index, count) {
1723
- while (--count && next())
1724
- if (character < 48 || character > 102 || character > 57 && character < 65 || character > 70 && character < 97)
1725
- break;
1726
- return slice(index, caret() + (count < 6 && peek() == 32 && next() == 32));
1727
- }
1728
- function delimiter(type) {
1729
- while (next())
1730
- switch (character) {
1731
- // ] ) " '
1732
- case type:
1733
- return position;
1734
- // " '
1735
- case 34:
1736
- case 39:
1737
- if (type !== 34 && type !== 39)
1738
- delimiter(character);
1739
- break;
1740
- // (
1741
- case 40:
1742
- if (type === 41)
1743
- delimiter(type);
1744
- break;
1745
- // \
1746
- case 92:
1747
- next();
1748
- break;
1749
- }
1750
- return position;
1751
- }
1752
- function commenter(type, index) {
1753
- while (next())
1754
- if (type + character === 47 + 10)
1755
- break;
1756
- else if (type + character === 42 + 42 && peek() === 47)
1757
- break;
1758
- return "/*" + slice(index, position - 1) + "*" + from(type === 47 ? type : next());
1759
- }
1760
- function identifier(index) {
1761
- while (!token(peek()))
1762
- next();
1763
- return slice(index, position);
1764
- }
1765
-
1766
- // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Parser.js
1767
- function compile(value) {
1768
- return dealloc(parse("", null, null, null, [""], value = alloc(value), 0, [0], value));
1769
- }
1770
- function parse(value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {
1771
- var index = 0;
1772
- var offset = 0;
1773
- var length2 = pseudo;
1774
- var atrule = 0;
1775
- var property = 0;
1776
- var previous = 0;
1777
- var variable = 1;
1778
- var scanning = 1;
1779
- var ampersand = 1;
1780
- var character2 = 0;
1781
- var type = "";
1782
- var props = rules;
1783
- var children = rulesets;
1784
- var reference = rule;
1785
- var characters2 = type;
1786
- while (scanning)
1787
- switch (previous = character2, character2 = next()) {
1788
- // (
1789
- case 40:
1790
- if (previous != 108 && charat(characters2, length2 - 1) == 58) {
1791
- if (indexof(characters2 += replace(delimit(character2), "&", "&\f"), "&\f", abs(index ? points[index - 1] : 0)) != -1)
1792
- ampersand = -1;
1793
- break;
1794
- }
1795
- // " ' [
1796
- case 34:
1797
- case 39:
1798
- case 91:
1799
- characters2 += delimit(character2);
1800
- break;
1801
- // \t \n \r \s
1802
- case 9:
1803
- case 10:
1804
- case 13:
1805
- case 32:
1806
- characters2 += whitespace(previous);
1807
- break;
1808
- // \
1809
- case 92:
1810
- characters2 += escaping(caret() - 1, 7);
1811
- continue;
1812
- // /
1813
- case 47:
1814
- switch (peek()) {
1815
- case 42:
1816
- case 47:
1817
- append(comment(commenter(next(), caret()), root, parent, declarations), declarations);
1818
- if ((token(previous || 1) == 5 || token(peek() || 1) == 5) && strlen(characters2) && substr(characters2, -1, void 0) !== " ") characters2 += " ";
1819
- break;
1820
- default:
1821
- characters2 += "/";
1822
- }
1823
- break;
1824
- // {
1825
- case 123 * variable:
1826
- points[index++] = strlen(characters2) * ampersand;
1827
- // } ; \0
1828
- case 125 * variable:
1829
- case 59:
1830
- case 0:
1831
- switch (character2) {
1832
- // \0 }
1833
- case 0:
1834
- case 125:
1835
- scanning = 0;
1836
- // ;
1837
- case 59 + offset:
1838
- if (ampersand == -1) characters2 = replace(characters2, /\f/g, "");
1839
- if (property > 0 && (strlen(characters2) - length2 || variable === 0 && previous === 47))
1840
- append(property > 32 ? declaration(characters2 + ";", rule, parent, length2 - 1, declarations) : declaration(replace(characters2, " ", "") + ";", rule, parent, length2 - 2, declarations), declarations);
1841
- break;
1842
- // @ ;
1843
- case 59:
1844
- characters2 += ";";
1845
- // { rule/at-rule
1846
- default:
1847
- append(reference = ruleset(characters2, root, parent, index, offset, rules, points, type, props = [], children = [], length2, rulesets), rulesets);
1848
- if (character2 === 123)
1849
- if (offset === 0)
1850
- parse(characters2, root, reference, reference, props, rulesets, length2, points, children);
1851
- else {
1852
- switch (atrule) {
1853
- // c(ontainer)
1854
- case 99:
1855
- if (charat(characters2, 3) === 110) break;
1856
- // l(ayer)
1857
- case 108:
1858
- if (charat(characters2, 2) === 97) break;
1859
- default:
1860
- offset = 0;
1861
- // d(ocument) m(edia) s(upports)
1862
- case 100:
1863
- case 109:
1864
- case 115:
1865
- }
1866
- if (offset) parse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length2, children), children), rules, children, length2, points, rule ? props : children);
1867
- else parse(characters2, reference, reference, reference, [""], children, 0, points, children);
1868
- }
1869
- }
1870
- index = offset = property = 0, variable = ampersand = 1, type = characters2 = "", length2 = pseudo;
1871
- break;
1872
- // :
1873
- case 58:
1874
- length2 = 1 + strlen(characters2), property = previous;
1875
- default:
1876
- if (variable < 1) {
1877
- if (character2 == 123)
1878
- --variable;
1879
- else if (character2 == 125 && variable++ == 0 && prev() == 125)
1880
- continue;
1881
- }
1882
- switch (characters2 += from(character2), character2 * variable) {
1883
- // &
1884
- case 38:
1885
- ampersand = offset > 0 ? 1 : (characters2 += "\f", -1);
1886
- break;
1887
- // ,
1888
- case 44:
1889
- points[index++] = (strlen(characters2) - 1) * ampersand, ampersand = 1;
1890
- break;
1891
- // @
1892
- case 64:
1893
- if (peek() === 45)
1894
- characters2 += delimit(next());
1895
- atrule = peek(), offset = length2 = strlen(type = characters2 += identifier(caret())), character2++;
1896
- break;
1897
- // -
1898
- case 45:
1899
- if (previous === 45 && strlen(characters2) == 2)
1900
- variable = 0;
1901
- }
1902
- }
1903
- return rulesets;
1904
- }
1905
- function ruleset(value, root, parent, index, offset, rules, points, type, props, children, length2, siblings) {
1906
- var post = offset - 1;
1907
- var rule = offset === 0 ? rules : [""];
1908
- var size = sizeof(rule);
1909
- for (var i = 0, j2 = 0, k2 = 0; i < index; ++i)
1910
- for (var x2 = 0, y2 = substr(value, post + 1, post = abs(j2 = points[i])), z2 = value; x2 < size; ++x2)
1911
- if (z2 = trim(j2 > 0 ? rule[x2] + " " + y2 : replace(y2, /&\f/g, rule[x2])))
1912
- props[k2++] = z2;
1913
- return node(value, root, parent, offset === 0 ? RULESET : type, props, children, length2, siblings);
1914
- }
1915
- function comment(value, root, parent, siblings) {
1916
- return node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0, siblings);
1917
- }
1918
- function declaration(value, root, parent, length2, siblings) {
1919
- return node(value, root, parent, DECLARATION, substr(value, 0, length2), substr(value, length2 + 1, -1), length2, siblings);
1920
- }
1921
-
1922
- // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Prefixer.js
1923
- function prefix(value, length2, children) {
1924
- switch (hash(value, length2)) {
1925
- // color-adjust
1926
- case 5103:
1927
- return WEBKIT + "print-" + value + value;
1928
- // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)
1929
- case 5737:
1930
- case 4201:
1931
- case 3177:
1932
- case 3433:
1933
- case 1641:
1934
- case 4457:
1935
- case 2921:
1936
- // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break
1937
- case 5572:
1938
- case 6356:
1939
- case 5844:
1940
- case 3191:
1941
- case 6645:
1942
- case 3005:
1943
- // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)
1944
- case 4215:
1945
- case 6389:
1946
- case 5109:
1947
- case 5365:
1948
- case 5621:
1949
- case 3829:
1950
- // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position
1951
- case 6391:
1952
- case 5879:
1953
- case 5623:
1954
- case 6135:
1955
- case 4599:
1956
- return WEBKIT + value + value;
1957
- // mask-composite
1958
- case 4855:
1959
- return WEBKIT + value.replace("add", "source-over").replace("substract", "source-out").replace("intersect", "source-in").replace("exclude", "xor") + value;
1960
- // tab-size
1961
- case 4789:
1962
- return MOZ + value + value;
1963
- // appearance, user-select, transform, hyphens, text-size-adjust
1964
- case 5349:
1965
- case 4246:
1966
- case 4810:
1967
- case 6968:
1968
- case 2756:
1969
- return WEBKIT + value + MOZ + value + MS + value + value;
1970
- // writing-mode
1971
- case 5936:
1972
- switch (charat(value, length2 + 11)) {
1973
- // vertical-l(r)
1974
- case 114:
1975
- return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "tb") + value;
1976
- // vertical-r(l)
1977
- case 108:
1978
- return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "tb-rl") + value;
1979
- // horizontal(-)tb
1980
- case 45:
1981
- return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "lr") + value;
1982
- }
1983
- // flex, flex-direction, scroll-snap-type, writing-mode
1984
- case 6828:
1985
- case 4268:
1986
- case 2903:
1987
- return WEBKIT + value + MS + value + value;
1988
- // order
1989
- case 6165:
1990
- return WEBKIT + value + MS + "flex-" + value + value;
1991
- // align-items
1992
- case 5187:
1993
- return WEBKIT + value + replace(value, /(\w+).+(:[^]+)/, WEBKIT + "box-$1$2" + MS + "flex-$1$2") + value;
1994
- // align-self
1995
- case 5443:
1996
- return WEBKIT + value + MS + "flex-item-" + replace(value, /flex-|-self/g, "") + (!match(value, /flex-|baseline/) ? MS + "grid-row-" + replace(value, /flex-|-self/g, "") : "") + value;
1997
- // align-content
1998
- case 4675:
1999
- return WEBKIT + value + MS + "flex-line-pack" + replace(value, /align-content|flex-|-self/g, "") + value;
2000
- // flex-shrink
2001
- case 5548:
2002
- return WEBKIT + value + MS + replace(value, "shrink", "negative") + value;
2003
- // flex-basis
2004
- case 5292:
2005
- return WEBKIT + value + MS + replace(value, "basis", "preferred-size") + value;
2006
- // flex-grow
2007
- case 6060:
2008
- return WEBKIT + "box-" + replace(value, "-grow", "") + WEBKIT + value + MS + replace(value, "grow", "positive") + value;
2009
- // transition
2010
- case 4554:
2011
- return WEBKIT + replace(value, /([^-])(transform)/g, "$1" + WEBKIT + "$2") + value;
2012
- // cursor
2013
- case 6187:
2014
- return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + "$1"), /(image-set)/, WEBKIT + "$1"), value, "") + value;
2015
- // background, background-image
2016
- case 5495:
2017
- case 3959:
2018
- return replace(value, /(image-set\([^]*)/, WEBKIT + "$1$`$1");
2019
- // justify-content
2020
- case 4968:
2021
- return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + "box-pack:$3" + MS + "flex-pack:$3"), /space-between/, "justify") + WEBKIT + value + value;
2022
- // justify-self
2023
- case 4200:
2024
- if (!match(value, /flex-|baseline/)) return MS + "grid-column-align" + substr(value, length2) + value;
2025
- break;
2026
- // grid-template-(columns|rows)
2027
- case 2592:
2028
- case 3360:
2029
- return MS + replace(value, "template-", "") + value;
2030
- // grid-(row|column)-start
2031
- case 4384:
2032
- case 3616:
2033
- if (children && children.some(function(element, index) {
2034
- return length2 = index, match(element.props, /grid-\w+-end/);
2035
- })) {
2036
- return ~indexof(value + (children = children[length2].value), "span", 0) ? value : MS + replace(value, "-start", "") + value + MS + "grid-row-span:" + (~indexof(children, "span", 0) ? match(children, /\d+/) : +match(children, /\d+/) - +match(value, /\d+/)) + ";";
2037
- }
2038
- return MS + replace(value, "-start", "") + value;
2039
- // grid-(row|column)-end
2040
- case 4896:
2041
- case 4128:
2042
- return children && children.some(function(element) {
2043
- return match(element.props, /grid-\w+-start/);
2044
- }) ? value : MS + replace(replace(value, "-end", "-span"), "span ", "") + value;
2045
- // (margin|padding)-inline-(start|end)
2046
- case 4095:
2047
- case 3583:
2048
- case 4068:
2049
- case 2532:
2050
- return replace(value, /(.+)-inline(.+)/, WEBKIT + "$1$2") + value;
2051
- // (min|max)?(width|height|inline-size|block-size)
2052
- case 8116:
2053
- case 7059:
2054
- case 5753:
2055
- case 5535:
2056
- case 5445:
2057
- case 5701:
2058
- case 4933:
2059
- case 4677:
2060
- case 5533:
2061
- case 5789:
2062
- case 5021:
2063
- case 4765:
2064
- if (strlen(value) - 1 - length2 > 6)
2065
- switch (charat(value, length2 + 1)) {
2066
- // (m)ax-content, (m)in-content
2067
- case 109:
2068
- if (charat(value, length2 + 4) !== 45)
2069
- break;
2070
- // (f)ill-available, (f)it-content
2071
- case 102:
2072
- return replace(value, /(.+:)(.+)-([^]+)/, "$1" + WEBKIT + "$2-$3$1" + MOZ + (charat(value, length2 + 3) == 108 ? "$3" : "$2-$3")) + value;
2073
- // (s)tretch
2074
- case 115:
2075
- return ~indexof(value, "stretch", 0) ? prefix(replace(value, "stretch", "fill-available"), length2, children) + value : value;
2076
- }
2077
- break;
2078
- // grid-(column|row)
2079
- case 5152:
2080
- case 5920:
2081
- return replace(value, /(.+?):(\d+)(\s*\/\s*(span)?\s*(\d+))?(.*)/, function(_2, a2, b2, c2, d2, e, f2) {
2082
- return MS + a2 + ":" + b2 + f2 + (c2 ? MS + a2 + "-span:" + (d2 ? e : +e - +b2) + f2 : "") + value;
2083
- });
2084
- // position: sticky
2085
- case 4949:
2086
- if (charat(value, length2 + 6) === 121)
2087
- return replace(value, ":", ":" + WEBKIT) + value;
2088
- break;
2089
- // display: (flex|inline-flex|grid|inline-grid)
2090
- case 6444:
2091
- switch (charat(value, charat(value, 14) === 45 ? 18 : 11)) {
2092
- // (inline-)?fle(x)
2093
- case 120:
2094
- return replace(value, /(.+:)([^;\s!]+)(;|(\s+)?!.+)?/, "$1" + WEBKIT + (charat(value, 14) === 45 ? "inline-" : "") + "box$3$1" + WEBKIT + "$2$3$1" + MS + "$2box$3") + value;
2095
- // (inline-)?gri(d)
2096
- case 100:
2097
- return replace(value, ":", ":" + MS) + value;
2098
- }
2099
- break;
2100
- // scroll-margin, scroll-margin-(top|right|bottom|left)
2101
- case 5719:
2102
- case 2647:
2103
- case 2135:
2104
- case 3927:
2105
- case 2391:
2106
- return replace(value, "scroll-", "scroll-snap-") + value;
2107
- }
2108
- return value;
2109
- }
2110
-
2111
- // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Serializer.js
2112
- function serialize(children, callback) {
2113
- var output = "";
2114
- for (var i = 0; i < children.length; i++)
2115
- output += callback(children[i], i, children, callback) || "";
2116
- return output;
2117
- }
2118
- function stringify(element, index, children, callback) {
2119
- switch (element.type) {
2120
- case LAYER:
2121
- if (element.children.length) break;
2122
- case IMPORT:
2123
- case NAMESPACE:
2124
- case DECLARATION:
2125
- return element.return = element.return || element.value;
2126
- case COMMENT:
2127
- return "";
2128
- case KEYFRAMES:
2129
- return element.return = element.value + "{" + serialize(element.children, callback) + "}";
2130
- case RULESET:
2131
- if (!strlen(element.value = element.props.join(","))) return "";
2132
- }
2133
- return strlen(children = serialize(element.children, callback)) ? element.return = element.value + "{" + children + "}" : "";
2134
- }
2135
-
2136
- // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Middleware.js
2137
- function middleware(collection) {
2138
- var length2 = sizeof(collection);
2139
- return function(element, index, children, callback) {
2140
- var output = "";
2141
- for (var i = 0; i < length2; i++)
2142
- output += collection[i](element, index, children, callback) || "";
2143
- return output;
2144
- };
2145
- }
2146
- function rulesheet(callback) {
2147
- return function(element) {
2148
- if (!element.root) {
2149
- if (element = element.return)
2150
- callback(element);
2151
- }
2152
- };
2153
- }
2154
- function prefixer(element, index, children, callback) {
2155
- if (element.length > -1) {
2156
- if (!element.return)
2157
- switch (element.type) {
2158
- case DECLARATION:
2159
- element.return = prefix(element.value, element.length, children);
2160
- return;
2161
- case KEYFRAMES:
2162
- return serialize([copy(element, { value: replace(element.value, "@", "@" + WEBKIT) })], callback);
2163
- case RULESET:
2164
- if (element.length)
2165
- return combine(children = element.props, function(value) {
2166
- switch (match(value, callback = /(::plac\w+|:read-\w+)/)) {
2167
- // :read-(only|write)
2168
- case ":read-only":
2169
- case ":read-write":
2170
- lift(copy(element, { props: [replace(value, /:(read-\w+)/, ":" + MOZ + "$1")] }));
2171
- lift(copy(element, { props: [value] }));
2172
- assign(element, { props: filter(children, callback) });
2173
- break;
2174
- // :placeholder
2175
- case "::placeholder":
2176
- lift(copy(element, { props: [replace(value, /:(plac\w+)/, ":" + WEBKIT + "input-$1")] }));
2177
- lift(copy(element, { props: [replace(value, /:(plac\w+)/, ":" + MOZ + "$1")] }));
2178
- lift(copy(element, { props: [replace(value, /:(plac\w+)/, MS + "input-$1")] }));
2179
- lift(copy(element, { props: [value] }));
2180
- assign(element, { props: filter(children, callback) });
2181
- break;
2182
- }
2183
- return "";
2184
- });
2185
- }
2186
- }
2187
- }
2188
-
2189
- // ../../../node_modules/.pnpm/@emotion+unitless@0.10.0/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js
2190
- var unitlessKeys = {
2191
- animationIterationCount: 1,
2192
- aspectRatio: 1,
2193
- borderImageOutset: 1,
2194
- borderImageSlice: 1,
2195
- borderImageWidth: 1,
2196
- boxFlex: 1,
2197
- boxFlexGroup: 1,
2198
- boxOrdinalGroup: 1,
2199
- columnCount: 1,
2200
- columns: 1,
2201
- flex: 1,
2202
- flexGrow: 1,
2203
- flexPositive: 1,
2204
- flexShrink: 1,
2205
- flexNegative: 1,
2206
- flexOrder: 1,
2207
- gridRow: 1,
2208
- gridRowEnd: 1,
2209
- gridRowSpan: 1,
2210
- gridRowStart: 1,
2211
- gridColumn: 1,
2212
- gridColumnEnd: 1,
2213
- gridColumnSpan: 1,
2214
- gridColumnStart: 1,
2215
- msGridRow: 1,
2216
- msGridRowSpan: 1,
2217
- msGridColumn: 1,
2218
- msGridColumnSpan: 1,
2219
- fontWeight: 1,
2220
- lineHeight: 1,
2221
- opacity: 1,
2222
- order: 1,
2223
- orphans: 1,
2224
- scale: 1,
2225
- tabSize: 1,
2226
- widows: 1,
2227
- zIndex: 1,
2228
- zoom: 1,
2229
- WebkitLineClamp: 1,
2230
- // SVG-related properties
2231
- fillOpacity: 1,
2232
- floodOpacity: 1,
2233
- stopOpacity: 1,
2234
- strokeDasharray: 1,
2235
- strokeDashoffset: 1,
2236
- strokeMiterlimit: 1,
2237
- strokeOpacity: 1,
2238
- strokeWidth: 1
2239
- };
2240
-
2241
- // ../../../node_modules/.pnpm/styled-components@6.3.6_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/styled-components/dist/styled-components.esm.js
2242
- var a = "undefined" != typeof process && void 0 !== process.env && (process.env.REACT_APP_SC_ATTR || process.env.SC_ATTR) || "data-styled";
2243
- var c = "active";
2244
- var u = "data-styled-version";
2245
- var l = "6.3.6";
2246
- var p = "/*!sc*/\n";
2247
- var d = "undefined" != typeof window && "undefined" != typeof document;
2248
- var h = void 0 === o__default.createContext;
2249
- var f = Boolean("boolean" == typeof SC_DISABLE_SPEEDY ? SC_DISABLE_SPEEDY : "undefined" != typeof process && void 0 !== process.env && void 0 !== process.env.REACT_APP_SC_DISABLE_SPEEDY && "" !== process.env.REACT_APP_SC_DISABLE_SPEEDY ? "false" !== process.env.REACT_APP_SC_DISABLE_SPEEDY && process.env.REACT_APP_SC_DISABLE_SPEEDY : "undefined" != typeof process && void 0 !== process.env && void 0 !== process.env.SC_DISABLE_SPEEDY && "" !== process.env.SC_DISABLE_SPEEDY ? "false" !== process.env.SC_DISABLE_SPEEDY && process.env.SC_DISABLE_SPEEDY : "production" !== process.env.NODE_ENV);
2250
- var y = /invalid hook call/i;
2251
- var v = /* @__PURE__ */ new Set();
2252
- var g = function(t, n) {
2253
- if ("production" !== process.env.NODE_ENV) {
2254
- if (h) return;
2255
- var r2 = n ? ' with the id of "'.concat(n, '"') : "", s = "The component ".concat(t).concat(r2, " has been created dynamically.\n") + "You may see this warning because you've called styled inside another component.\nTo resolve this only create new StyledComponents outside of any render method and function component.\nSee https://styled-components.com/docs/basics#define-styled-components-outside-of-the-render-method for more info.\n", i = console.error;
2256
- try {
2257
- var a2 = true;
2258
- console.error = function(t2) {
2259
- for (var n2 = [], o2 = 1; o2 < arguments.length; o2++) n2[o2 - 1] = arguments[o2];
2260
- y.test(t2) ? (a2 = false, v.delete(s)) : i.apply(void 0, __spreadArray([t2], n2, false));
2261
- }, "function" == typeof o__default.useState && o__default.useState(null), a2 && !v.has(s) && (console.warn(s), v.add(s));
2262
- } catch (e) {
2263
- y.test(e.message) && v.delete(s);
2264
- } finally {
2265
- console.error = i;
2266
- }
2267
- }
2268
- };
2269
- var S = Object.freeze([]);
2270
- var w = Object.freeze({});
2271
- function b(e, t, n) {
2272
- return void 0 === n && (n = w), e.theme !== n.theme && e.theme || t || n.theme;
2273
- }
2274
- var C = /* @__PURE__ */ new Set(["a", "abbr", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "blockquote", "body", "button", "canvas", "caption", "cite", "code", "col", "colgroup", "data", "datalist", "dd", "del", "details", "dfn", "dialog", "div", "dl", "dt", "em", "embed", "fieldset", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "hr", "html", "i", "iframe", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "menu", "meter", "nav", "object", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "search", "section", "select", "slot", "small", "span", "strong", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "u", "ul", "var", "video", "wbr", "circle", "clipPath", "defs", "ellipse", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "filter", "foreignObject", "g", "image", "line", "linearGradient", "marker", "mask", "path", "pattern", "polygon", "polyline", "radialGradient", "rect", "stop", "svg", "switch", "symbol", "text", "textPath", "tspan", "use"]);
2275
- var E = /[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~-]+/g;
2276
- var N = /(^-|-$)/g;
2277
- function A(e) {
2278
- return e.replace(E, "-").replace(N, "");
2279
- }
2280
- var P = /(a)(d)/gi;
2281
- var _ = function(e) {
2282
- return String.fromCharCode(e + (e > 25 ? 39 : 97));
2283
- };
2284
- function I(e) {
2285
- var t, n = "";
2286
- for (t = Math.abs(e); t > 52; t = t / 52 | 0) n = _(t % 52) + n;
2287
- return (_(t % 52) + n).replace(P, "$1-$2");
2288
- }
2289
- var O;
2290
- var D = function(e, t) {
2291
- for (var n = t.length; n; ) e = 33 * e ^ t.charCodeAt(--n);
2292
- return e;
2293
- };
2294
- var T = function(e) {
2295
- return D(5381, e);
2296
- };
2297
- function x(e) {
2298
- return I(T(e) >>> 0);
2299
- }
2300
- function R(e) {
2301
- return "production" !== process.env.NODE_ENV && "string" == typeof e && e || e.displayName || e.name || "Component";
2302
- }
2303
- function j(e) {
2304
- return "string" == typeof e && ("production" === process.env.NODE_ENV || e.charAt(0) === e.charAt(0).toLowerCase());
2305
- }
2306
- var k = "function" == typeof Symbol && Symbol.for;
2307
- var M = k ? Symbol.for("react.memo") : 60115;
2308
- var V = k ? Symbol.for("react.forward_ref") : 60112;
2309
- var F = { childContextTypes: true, contextType: true, contextTypes: true, defaultProps: true, displayName: true, getDefaultProps: true, getDerivedStateFromError: true, getDerivedStateFromProps: true, mixins: true, propTypes: true, type: true };
2310
- var B = { name: true, length: true, prototype: true, caller: true, callee: true, arguments: true, arity: true };
2311
- var L = { $$typeof: true, compare: true, defaultProps: true, displayName: true, propTypes: true, type: true };
2312
- var z = ((O = {})[V] = { $$typeof: true, render: true, defaultProps: true, displayName: true, propTypes: true }, O[M] = L, O);
2313
- function G(e) {
2314
- return ("type" in (t = e) && t.type.$$typeof) === M ? L : "$$typeof" in e ? z[e.$$typeof] : F;
2315
- var t;
2316
- }
2317
- var $ = Object.defineProperty;
2318
- var Y = Object.getOwnPropertyNames;
2319
- var W = Object.getOwnPropertySymbols;
2320
- var q = Object.getOwnPropertyDescriptor;
2321
- var H = Object.getPrototypeOf;
2322
- var U = Object.prototype;
2323
- function J(e, t, n) {
2324
- if ("string" != typeof t) {
2325
- if (U) {
2326
- var o2 = H(t);
2327
- o2 && o2 !== U && J(e, o2, n);
2328
- }
2329
- var r2 = Y(t);
2330
- W && (r2 = r2.concat(W(t)));
2331
- for (var s = G(e), i = G(t), a2 = 0; a2 < r2.length; ++a2) {
2332
- var c2 = r2[a2];
2333
- if (!(c2 in B || n && n[c2] || i && c2 in i || s && c2 in s)) {
2334
- var u2 = q(t, c2);
2335
- try {
2336
- $(e, c2, u2);
2337
- } catch (e2) {
2338
- }
2339
- }
2340
- }
2341
- }
2342
- return e;
2343
- }
2344
- function X(e) {
2345
- return "function" == typeof e;
2346
- }
2347
- function Z(e) {
2348
- return "object" == typeof e && "styledComponentId" in e;
2349
- }
2350
- function K(e, t) {
2351
- return e && t ? "".concat(e, " ").concat(t) : e || t || "";
2352
- }
2353
- function Q(e, t) {
2354
- if (0 === e.length) return "";
2355
- for (var n = e[0], o2 = 1; o2 < e.length; o2++) n += e[o2];
2356
- return n;
2357
- }
2358
- function ee(e) {
2359
- return null !== e && "object" == typeof e && e.constructor.name === Object.name && !("props" in e && e.$$typeof);
2360
- }
2361
- function te(e, t, n) {
2362
- if (void 0 === n && (n = false), !n && !ee(e) && !Array.isArray(e)) return t;
2363
- if (Array.isArray(t)) for (var o2 = 0; o2 < t.length; o2++) e[o2] = te(e[o2], t[o2]);
2364
- else if (ee(t)) for (var o2 in t) e[o2] = te(e[o2], t[o2]);
2365
- return e;
2366
- }
2367
- function ne(e, t) {
2368
- Object.defineProperty(e, "toString", { value: t });
2369
- }
2370
- var oe = "production" !== process.env.NODE_ENV ? { 1: "Cannot create styled-component for component: %s.\n\n", 2: "Can't collect styles once you've consumed a `ServerStyleSheet`'s styles! `ServerStyleSheet` is a one off instance for each server-side render cycle.\n\n- Are you trying to reuse it across renders?\n- Are you accidentally calling collectStyles twice?\n\n", 3: "Streaming SSR is only supported in a Node.js environment; Please do not try to call this method in the browser.\n\n", 4: "The `StyleSheetManager` expects a valid target or sheet prop!\n\n- Does this error occur on the client and is your target falsy?\n- Does this error occur on the server and is the sheet falsy?\n\n", 5: "The clone method cannot be used on the client!\n\n- Are you running in a client-like environment on the server?\n- Are you trying to run SSR on the client?\n\n", 6: "Trying to insert a new style tag, but the given Node is unmounted!\n\n- Are you using a custom target that isn't mounted?\n- Does your document not have a valid head element?\n- Have you accidentally removed a style tag manually?\n\n", 7: 'ThemeProvider: Please return an object from your "theme" prop function, e.g.\n\n```js\ntheme={() => ({})}\n```\n\n', 8: 'ThemeProvider: Please make your "theme" prop an object.\n\n', 9: "Missing document `<head>`\n\n", 10: "Cannot find a StyleSheet instance. Usually this happens if there are multiple copies of styled-components loaded at once. Check out this issue for how to troubleshoot and fix the common cases where this situation can happen: https://github.com/styled-components/styled-components/issues/1941#issuecomment-417862021\n\n", 11: "_This error was replaced with a dev-time warning, it will be deleted for v4 final._ [createGlobalStyle] received children which will not be rendered. Please use the component without passing children elements.\n\n", 12: "It seems you are interpolating a keyframe declaration (%s) into an untagged string. This was supported in styled-components v3, but is not longer supported in v4 as keyframes are now injected on-demand. Please wrap your string in the css\\`\\` helper which ensures the styles are injected correctly. See https://www.styled-components.com/docs/api#css\n\n", 13: "%s is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.\n\n", 14: 'ThemeProvider: "theme" prop is required.\n\n', 15: "A stylis plugin has been supplied that is not named. We need a name for each plugin to be able to prevent styling collisions between different stylis configurations within the same app. Before you pass your plugin to `<StyleSheetManager stylisPlugins={[]}>`, please make sure each plugin is uniquely-named, e.g.\n\n```js\nObject.defineProperty(importedPlugin, 'name', { value: 'some-unique-name' });\n```\n\n", 16: "Reached the limit of how many styled components may be created at group %s.\nYou may only create up to 1,073,741,824 components. If you're creating components dynamically,\nas for instance in your render method then you may be running into this limitation.\n\n", 17: "CSSStyleSheet could not be found on HTMLStyleElement.\nHas styled-components' style tag been unmounted or altered by another script?\n", 18: "ThemeProvider: Please make sure your useTheme hook is within a `<ThemeProvider>`" } : {};
2371
- function re() {
2372
- for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
2373
- for (var n = e[0], o2 = [], r2 = 1, s = e.length; r2 < s; r2 += 1) o2.push(e[r2]);
2374
- return o2.forEach(function(e2) {
2375
- n = n.replace(/%[a-z]/, e2);
2376
- }), n;
2377
- }
2378
- function se(t) {
2379
- for (var n = [], o2 = 1; o2 < arguments.length; o2++) n[o2 - 1] = arguments[o2];
2380
- return "production" === process.env.NODE_ENV ? new Error("An error occurred. See https://github.com/styled-components/styled-components/blob/main/packages/styled-components/src/utils/errors.md#".concat(t, " for more information.").concat(n.length > 0 ? " Args: ".concat(n.join(", ")) : "")) : new Error(re.apply(void 0, __spreadArray([oe[t]], n, false)).trim());
2381
- }
2382
- var ie = function() {
2383
- function e(e2) {
2384
- this.groupSizes = new Uint32Array(512), this.length = 512, this.tag = e2;
2385
- }
2386
- return e.prototype.indexOfGroup = function(e2) {
2387
- for (var t = 0, n = 0; n < e2; n++) t += this.groupSizes[n];
2388
- return t;
2389
- }, e.prototype.insertRules = function(e2, t) {
2390
- if (e2 >= this.groupSizes.length) {
2391
- for (var n = this.groupSizes, o2 = n.length, r2 = o2; e2 >= r2; ) if ((r2 <<= 1) < 0) throw se(16, "".concat(e2));
2392
- this.groupSizes = new Uint32Array(r2), this.groupSizes.set(n), this.length = r2;
2393
- for (var s = o2; s < r2; s++) this.groupSizes[s] = 0;
2394
- }
2395
- for (var i = this.indexOfGroup(e2 + 1), a2 = (s = 0, t.length); s < a2; s++) this.tag.insertRule(i, t[s]) && (this.groupSizes[e2]++, i++);
2396
- }, e.prototype.clearGroup = function(e2) {
2397
- if (e2 < this.length) {
2398
- var t = this.groupSizes[e2], n = this.indexOfGroup(e2), o2 = n + t;
2399
- this.groupSizes[e2] = 0;
2400
- for (var r2 = n; r2 < o2; r2++) this.tag.deleteRule(n);
2401
- }
2402
- }, e.prototype.getGroup = function(e2) {
2403
- var t = "";
2404
- if (e2 >= this.length || 0 === this.groupSizes[e2]) return t;
2405
- for (var n = this.groupSizes[e2], o2 = this.indexOfGroup(e2), r2 = o2 + n, s = o2; s < r2; s++) t += "".concat(this.tag.getRule(s)).concat(p);
2406
- return t;
2407
- }, e;
2408
- }();
2409
- var ae = 1 << 30;
2410
- var ce = /* @__PURE__ */ new Map();
2411
- var ue = /* @__PURE__ */ new Map();
2412
- var le = 1;
2413
- var pe = function(e) {
2414
- if (ce.has(e)) return ce.get(e);
2415
- for (; ue.has(le); ) le++;
2416
- var t = le++;
2417
- if ("production" !== process.env.NODE_ENV && ((0 | t) < 0 || t > ae)) throw se(16, "".concat(t));
2418
- return ce.set(e, t), ue.set(t, e), t;
2419
- };
2420
- var de = function(e, t) {
2421
- le = t + 1, ce.set(e, t), ue.set(t, e);
2422
- };
2423
- var he = "style[".concat(a, "][").concat(u, '="').concat(l, '"]');
2424
- var fe = new RegExp("^".concat(a, '\\.g(\\d+)\\[id="([\\w\\d-]+)"\\].*?"([^"]*)'));
2425
- var me = function(e, t, n) {
2426
- for (var o2, r2 = n.split(","), s = 0, i = r2.length; s < i; s++) (o2 = r2[s]) && e.registerName(t, o2);
2427
- };
2428
- var ye = function(e, t) {
2429
- for (var n, o2 = (null !== (n = t.textContent) && void 0 !== n ? n : "").split(p), r2 = [], s = 0, i = o2.length; s < i; s++) {
2430
- var a2 = o2[s].trim();
2431
- if (a2) {
2432
- var c2 = a2.match(fe);
2433
- if (c2) {
2434
- var u2 = 0 | parseInt(c2[1], 10), l2 = c2[2];
2435
- 0 !== u2 && (de(l2, u2), me(e, l2, c2[3]), e.getTag().insertRules(u2, r2)), r2.length = 0;
2436
- } else r2.push(a2);
2437
- }
2438
- }
2439
- };
2440
- var ve = function(e) {
2441
- for (var t = document.querySelectorAll(he), n = 0, o2 = t.length; n < o2; n++) {
2442
- var r2 = t[n];
2443
- r2 && r2.getAttribute(a) !== c && (ye(e, r2), r2.parentNode && r2.parentNode.removeChild(r2));
2444
- }
2445
- };
2446
- function ge() {
2447
- return "undefined" != typeof __webpack_nonce__ ? __webpack_nonce__ : null;
2448
- }
2449
- var Se = function(e) {
2450
- var t = document.head, n = e || t, o2 = document.createElement("style"), r2 = function(e2) {
2451
- var t2 = Array.from(e2.querySelectorAll("style[".concat(a, "]")));
2452
- return t2[t2.length - 1];
2453
- }(n), s = void 0 !== r2 ? r2.nextSibling : null;
2454
- o2.setAttribute(a, c), o2.setAttribute(u, l);
2455
- var i = ge();
2456
- return i && o2.setAttribute("nonce", i), n.insertBefore(o2, s), o2;
2457
- };
2458
- var we = function() {
2459
- function e(e2) {
2460
- this.element = Se(e2), this.element.appendChild(document.createTextNode("")), this.sheet = function(e3) {
2461
- if (e3.sheet) return e3.sheet;
2462
- for (var t = document.styleSheets, n = 0, o2 = t.length; n < o2; n++) {
2463
- var r2 = t[n];
2464
- if (r2.ownerNode === e3) return r2;
2465
- }
2466
- throw se(17);
2467
- }(this.element), this.length = 0;
2468
- }
2469
- return e.prototype.insertRule = function(e2, t) {
2470
- try {
2471
- return this.sheet.insertRule(t, e2), this.length++, true;
2472
- } catch (e3) {
2473
- return false;
2474
- }
2475
- }, e.prototype.deleteRule = function(e2) {
2476
- this.sheet.deleteRule(e2), this.length--;
2477
- }, e.prototype.getRule = function(e2) {
2478
- var t = this.sheet.cssRules[e2];
2479
- return t && t.cssText ? t.cssText : "";
2480
- }, e;
2481
- }();
2482
- var be = function() {
2483
- function e(e2) {
2484
- this.element = Se(e2), this.nodes = this.element.childNodes, this.length = 0;
2485
- }
2486
- return e.prototype.insertRule = function(e2, t) {
2487
- if (e2 <= this.length && e2 >= 0) {
2488
- var n = document.createTextNode(t);
2489
- return this.element.insertBefore(n, this.nodes[e2] || null), this.length++, true;
2490
- }
2491
- return false;
2492
- }, e.prototype.deleteRule = function(e2) {
2493
- this.element.removeChild(this.nodes[e2]), this.length--;
2494
- }, e.prototype.getRule = function(e2) {
2495
- return e2 < this.length ? this.nodes[e2].textContent : "";
2496
- }, e;
2497
- }();
2498
- var Ce = function() {
2499
- function e(e2) {
2500
- this.rules = [], this.length = 0;
2501
- }
2502
- return e.prototype.insertRule = function(e2, t) {
2503
- return e2 <= this.length && (this.rules.splice(e2, 0, t), this.length++, true);
2504
- }, e.prototype.deleteRule = function(e2) {
2505
- this.rules.splice(e2, 1), this.length--;
2506
- }, e.prototype.getRule = function(e2) {
2507
- return e2 < this.length ? this.rules[e2] : "";
2508
- }, e;
2509
- }();
2510
- var Ee = d;
2511
- var Ne = { isServer: !d, useCSSOMInjection: !f };
2512
- var Ae = function() {
2513
- function e(e2, n, o2) {
2514
- void 0 === e2 && (e2 = w), void 0 === n && (n = {});
2515
- var r2 = this;
2516
- this.options = __assign(__assign({}, Ne), e2), this.gs = n, this.names = new Map(o2), this.server = !!e2.isServer, !this.server && d && Ee && (Ee = false, ve(this)), ne(this, function() {
2517
- return function(e3) {
2518
- for (var t = e3.getTag(), n2 = t.length, o3 = "", r3 = function(n3) {
2519
- var r4 = function(e4) {
2520
- return ue.get(e4);
2521
- }(n3);
2522
- if (void 0 === r4) return "continue";
2523
- var s2 = e3.names.get(r4), i = t.getGroup(n3);
2524
- if (void 0 === s2 || !s2.size || 0 === i.length) return "continue";
2525
- var c2 = "".concat(a, ".g").concat(n3, '[id="').concat(r4, '"]'), u2 = "";
2526
- void 0 !== s2 && s2.forEach(function(e4) {
2527
- e4.length > 0 && (u2 += "".concat(e4, ","));
2528
- }), o3 += "".concat(i).concat(c2, '{content:"').concat(u2, '"}').concat(p);
2529
- }, s = 0; s < n2; s++) r3(s);
2530
- return o3;
2531
- }(r2);
2532
- });
2533
- }
2534
- return e.registerId = function(e2) {
2535
- return pe(e2);
2536
- }, e.prototype.rehydrate = function() {
2537
- !this.server && d && ve(this);
2538
- }, e.prototype.reconstructWithOptions = function(n, o2) {
2539
- return void 0 === o2 && (o2 = true), new e(__assign(__assign({}, this.options), n), this.gs, o2 && this.names || void 0);
2540
- }, e.prototype.allocateGSInstance = function(e2) {
2541
- return this.gs[e2] = (this.gs[e2] || 0) + 1;
2542
- }, e.prototype.getTag = function() {
2543
- return this.tag || (this.tag = (e2 = function(e3) {
2544
- var t = e3.useCSSOMInjection, n = e3.target;
2545
- return e3.isServer ? new Ce(n) : t ? new we(n) : new be(n);
2546
- }(this.options), new ie(e2)));
2547
- var e2;
2548
- }, e.prototype.hasNameForId = function(e2, t) {
2549
- return this.names.has(e2) && this.names.get(e2).has(t);
2550
- }, e.prototype.registerName = function(e2, t) {
2551
- if (pe(e2), this.names.has(e2)) this.names.get(e2).add(t);
2552
- else {
2553
- var n = /* @__PURE__ */ new Set();
2554
- n.add(t), this.names.set(e2, n);
2555
- }
2556
- }, e.prototype.insertRules = function(e2, t, n) {
2557
- this.registerName(e2, t), this.getTag().insertRules(pe(e2), n);
2558
- }, e.prototype.clearNames = function(e2) {
2559
- this.names.has(e2) && this.names.get(e2).clear();
2560
- }, e.prototype.clearRules = function(e2) {
2561
- this.getTag().clearGroup(pe(e2)), this.clearNames(e2);
2562
- }, e.prototype.clearTag = function() {
2563
- this.tag = void 0;
2564
- }, e;
2565
- }();
2566
- var Pe = /&/g;
2567
- var _e = 47;
2568
- function Ie(e) {
2569
- if (-1 === e.indexOf("}")) return false;
2570
- for (var t = e.length, n = 0, o2 = 0, r2 = false, s = 0; s < t; s++) {
2571
- var i = e.charCodeAt(s);
2572
- if (0 !== o2 || r2 || i !== _e || 42 !== e.charCodeAt(s + 1)) if (r2) 42 === i && e.charCodeAt(s + 1) === _e && (r2 = false, s++);
2573
- else if (34 !== i && 39 !== i || 0 !== s && 92 === e.charCodeAt(s - 1)) {
2574
- if (0 === o2) {
2575
- if (123 === i) n++;
2576
- else if (125 === i && --n < 0) return true;
2577
- }
2578
- } else 0 === o2 ? o2 = i : o2 === i && (o2 = 0);
2579
- else r2 = true, s++;
2580
- }
2581
- return 0 !== n || 0 !== o2;
2582
- }
2583
- function Oe(e, t) {
2584
- return e.map(function(e2) {
2585
- return "rule" === e2.type && (e2.value = "".concat(t, " ").concat(e2.value), e2.value = e2.value.replaceAll(",", ",".concat(t, " ")), e2.props = e2.props.map(function(e3) {
2586
- return "".concat(t, " ").concat(e3);
2587
- })), Array.isArray(e2.children) && "@keyframes" !== e2.type && (e2.children = Oe(e2.children, t)), e2;
2588
- });
2589
- }
2590
- function De(e) {
2591
- var t, n, o2, r2 = w , i = r2.options, a2 = void 0 === i ? w : i, c2 = r2.plugins, u2 = void 0 === c2 ? S : c2, l2 = function(e2, o3, r3) {
2592
- return r3.startsWith(n) && r3.endsWith(n) && r3.replaceAll(n, "").length > 0 ? ".".concat(t) : e2;
2593
- }, p2 = u2.slice();
2594
- p2.push(function(e2) {
2595
- e2.type === RULESET && e2.value.includes("&") && (e2.props[0] = e2.props[0].replace(Pe, n).replace(o2, l2));
2596
- }), a2.prefix && p2.push(prefixer), p2.push(stringify);
2597
- var d2 = function(e2, r3, i2, c3) {
2598
- void 0 === r3 && (r3 = ""), void 0 === i2 && (i2 = ""), void 0 === c3 && (c3 = "&"), t = c3, n = r3, o2 = new RegExp("\\".concat(n, "\\b"), "g");
2599
- var u3 = function(e3) {
2600
- if (!Ie(e3)) return e3;
2601
- for (var t2 = e3.length, n2 = "", o3 = 0, r4 = 0, s = 0, i3 = false, a3 = 0; a3 < t2; a3++) {
2602
- var c4 = e3.charCodeAt(a3);
2603
- if (0 !== s || i3 || c4 !== _e || 42 !== e3.charCodeAt(a3 + 1)) if (i3) 42 === c4 && e3.charCodeAt(a3 + 1) === _e && (i3 = false, a3++);
2604
- else if (34 !== c4 && 39 !== c4 || 0 !== a3 && 92 === e3.charCodeAt(a3 - 1)) {
2605
- if (0 === s) if (123 === c4) r4++;
2606
- else if (125 === c4) {
2607
- if (--r4 < 0) {
2608
- for (var u4 = a3 + 1; u4 < t2; ) {
2609
- var l4 = e3.charCodeAt(u4);
2610
- if (59 === l4 || 10 === l4) break;
2611
- u4++;
2612
- }
2613
- u4 < t2 && 59 === e3.charCodeAt(u4) && u4++, r4 = 0, a3 = u4 - 1, o3 = u4;
2614
- continue;
2615
- }
2616
- 0 === r4 && (n2 += e3.substring(o3, a3 + 1), o3 = a3 + 1);
2617
- } else 59 === c4 && 0 === r4 && (n2 += e3.substring(o3, a3 + 1), o3 = a3 + 1);
2618
- } else 0 === s ? s = c4 : s === c4 && (s = 0);
2619
- else i3 = true, a3++;
2620
- }
2621
- if (o3 < t2) {
2622
- var p3 = e3.substring(o3);
2623
- Ie(p3) || (n2 += p3);
2624
- }
2625
- return n2;
2626
- }(function(e3) {
2627
- if (-1 === e3.indexOf("//")) return e3;
2628
- for (var t2 = e3.length, n2 = [], o3 = 0, r4 = 0, s = 0, i3 = 0; r4 < t2; ) {
2629
- var a3 = e3.charCodeAt(r4);
2630
- if (34 !== a3 && 39 !== a3 || 0 !== r4 && 92 === e3.charCodeAt(r4 - 1)) if (0 === s) if (40 === a3 && r4 >= 3 && 108 == (32 | e3.charCodeAt(r4 - 1)) && 114 == (32 | e3.charCodeAt(r4 - 2)) && 117 == (32 | e3.charCodeAt(r4 - 3))) i3 = 1, r4++;
2631
- else if (i3 > 0) 41 === a3 ? i3-- : 40 === a3 && i3++, r4++;
2632
- else if (a3 === _e && r4 + 1 < t2 && e3.charCodeAt(r4 + 1) === _e) {
2633
- for (r4 > o3 && n2.push(e3.substring(o3, r4)); r4 < t2 && 10 !== e3.charCodeAt(r4); ) r4++;
2634
- o3 = r4;
2635
- } else r4++;
2636
- else r4++;
2637
- else 0 === s ? s = a3 : s === a3 && (s = 0), r4++;
2638
- }
2639
- return 0 === o3 ? e3 : (o3 < t2 && n2.push(e3.substring(o3)), n2.join(""));
2640
- }(e2)), l3 = compile(i2 || r3 ? "".concat(i2, " ").concat(r3, " { ").concat(u3, " }") : u3);
2641
- a2.namespace && (l3 = Oe(l3, a2.namespace));
2642
- var d3 = [];
2643
- return serialize(l3, middleware(p2.concat(rulesheet(function(e3) {
2644
- return d3.push(e3);
2645
- })))), d3;
2646
- };
2647
- return d2.hash = u2.length ? u2.reduce(function(e2, t2) {
2648
- return t2.name || se(15), D(e2, t2.name);
2649
- }, 5381).toString() : "", d2;
2650
- }
2651
- var Te = new Ae();
2652
- var xe = De();
2653
- var Re = { shouldForwardProp: void 0, styleSheet: Te, stylis: xe };
2654
- var je = h ? { Provider: function(e) {
2655
- return e.children;
2656
- }, Consumer: function(e) {
2657
- return (0, e.children)(Re);
2658
- } } : o__default.createContext(Re);
2659
- je.Consumer;
2660
- h ? { } : o__default.createContext(void 0);
2661
- function Ve() {
2662
- return !h && o__default.useContext ? o__default.useContext(je) : Re;
2663
- }
2664
- var Be = function() {
2665
- function e(e2, t) {
2666
- var n = this;
2667
- this.inject = function(e3, t2) {
2668
- void 0 === t2 && (t2 = xe);
2669
- var o2 = n.name + t2.hash;
2670
- e3.hasNameForId(n.id, o2) || e3.insertRules(n.id, o2, t2(n.rules, o2, "@keyframes"));
2671
- }, this.name = e2, this.id = "sc-keyframes-".concat(e2), this.rules = t, ne(this, function() {
2672
- throw se(12, String(n.name));
2673
- });
2674
- }
2675
- return e.prototype.getName = function(e2) {
2676
- return void 0 === e2 && (e2 = xe), this.name + e2.hash;
2677
- }, e;
2678
- }();
2679
- function Le(e, t) {
2680
- return null == t || "boolean" == typeof t || "" === t ? "" : "number" != typeof t || 0 === t || e in unitlessKeys || e.startsWith("--") ? String(t).trim() : "".concat(t, "px");
2681
- }
2682
- var ze = function(e) {
2683
- return e >= "A" && e <= "Z";
2684
- };
2685
- function Ge(e) {
2686
- for (var t = "", n = 0; n < e.length; n++) {
2687
- var o2 = e[n];
2688
- if (1 === n && "-" === o2 && "-" === e[0]) return e;
2689
- ze(o2) ? t += "-" + o2.toLowerCase() : t += o2;
2690
- }
2691
- return t.startsWith("ms-") ? "-" + t : t;
2692
- }
2693
- var $e = function(e) {
2694
- return null == e || false === e || "" === e;
2695
- };
2696
- var Ye = function(t) {
2697
- var n = [];
2698
- for (var o2 in t) {
2699
- var r2 = t[o2];
2700
- t.hasOwnProperty(o2) && !$e(r2) && (Array.isArray(r2) && r2.isCss || X(r2) ? n.push("".concat(Ge(o2), ":"), r2, ";") : ee(r2) ? n.push.apply(n, __spreadArray(__spreadArray(["".concat(o2, " {")], Ye(r2), false), ["}"], false)) : n.push("".concat(Ge(o2), ": ").concat(Le(o2, r2), ";")));
2701
- }
2702
- return n;
2703
- };
2704
- function We(e, t, n, o2) {
2705
- if ($e(e)) return [];
2706
- if (Z(e)) return [".".concat(e.styledComponentId)];
2707
- if (X(e)) {
2708
- if (!X(s = e) || s.prototype && s.prototype.isReactComponent || !t) return [e];
2709
- var r2 = e(t);
2710
- return "production" === process.env.NODE_ENV || "object" != typeof r2 || Array.isArray(r2) || r2 instanceof Be || ee(r2) || null === r2 || console.error("".concat(R(e), " is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.")), We(r2, t, n, o2);
2711
- }
2712
- var s;
2713
- return e instanceof Be ? n ? (e.inject(n, o2), [e.getName(o2)]) : [e] : ee(e) ? Ye(e) : Array.isArray(e) ? Array.prototype.concat.apply(S, e.map(function(e2) {
2714
- return We(e2, t, n, o2);
2715
- })) : [e.toString()];
2716
- }
2717
- function qe(e) {
2718
- for (var t = 0; t < e.length; t += 1) {
2719
- var n = e[t];
2720
- if (X(n) && !Z(n)) return false;
2721
- }
2722
- return true;
2723
- }
2724
- var He = T(l);
2725
- var Ue = function() {
2726
- function e(e2, t, n) {
2727
- this.rules = e2, this.staticRulesId = "", this.isStatic = "production" === process.env.NODE_ENV && (void 0 === n || n.isStatic) && qe(e2), this.componentId = t, this.baseHash = D(He, t), this.baseStyle = n, Ae.registerId(t);
2728
- }
2729
- return e.prototype.generateAndInjectStyles = function(e2, t, n) {
2730
- var o2 = this.baseStyle ? this.baseStyle.generateAndInjectStyles(e2, t, n).className : "";
2731
- if (this.isStatic && !n.hash) if (this.staticRulesId && t.hasNameForId(this.componentId, this.staticRulesId)) o2 = K(o2, this.staticRulesId);
2732
- else {
2733
- var r2 = Q(We(this.rules, e2, t, n)), s = I(D(this.baseHash, r2) >>> 0);
2734
- if (!t.hasNameForId(this.componentId, s)) {
2735
- var i = n(r2, ".".concat(s), void 0, this.componentId);
2736
- t.insertRules(this.componentId, s, i);
2737
- }
2738
- o2 = K(o2, s), this.staticRulesId = s;
2739
- }
2740
- else {
2741
- for (var a2 = D(this.baseHash, n.hash), c2 = "", u2 = 0; u2 < this.rules.length; u2++) {
2742
- var l2 = this.rules[u2];
2743
- if ("string" == typeof l2) c2 += l2, "production" !== process.env.NODE_ENV && (a2 = D(a2, l2));
2744
- else if (l2) {
2745
- var p2 = Q(We(l2, e2, t, n));
2746
- a2 = D(a2, p2 + u2), c2 += p2;
2747
- }
2748
- }
2749
- if (c2) {
2750
- var d2 = I(a2 >>> 0);
2751
- if (!t.hasNameForId(this.componentId, d2)) {
2752
- var h2 = n(c2, ".".concat(d2), void 0, this.componentId);
2753
- t.insertRules(this.componentId, d2, h2);
2754
- }
2755
- o2 = K(o2, d2);
2756
- }
2757
- }
2758
- return { className: o2, css: "undefined" == typeof window ? t.getTag().getGroup(pe(this.componentId)) : "" };
2759
- }, e;
2760
- }();
2761
- var Je = h ? { Provider: function(e) {
2762
- return e.children;
2763
- }, Consumer: function(e) {
2764
- return (0, e.children)(void 0);
2765
- } } : o__default.createContext(void 0);
2766
- Je.Consumer;
2767
- var Qe = {};
2768
- var et = /* @__PURE__ */ new Set();
2769
- function tt(e, s, i) {
2770
- var a2 = Z(e), c2 = e, u2 = !j(e), p2 = s.attrs, d2 = void 0 === p2 ? S : p2, f2 = s.componentId, m = void 0 === f2 ? function(e2, t) {
2771
- var n = "string" != typeof e2 ? "sc" : A(e2);
2772
- Qe[n] = (Qe[n] || 0) + 1;
2773
- var o2 = "".concat(n, "-").concat(x(l + n + Qe[n]));
2774
- return t ? "".concat(t, "-").concat(o2) : o2;
2775
- }(s.displayName, s.parentComponentId) : f2, y2 = s.displayName, v2 = void 0 === y2 ? function(e2) {
2776
- return j(e2) ? "styled.".concat(e2) : "Styled(".concat(R(e2), ")");
2777
- }(e) : y2, E2 = s.displayName && s.componentId ? "".concat(A(s.displayName), "-").concat(s.componentId) : s.componentId || m, N2 = a2 && c2.attrs ? c2.attrs.concat(d2).filter(Boolean) : d2, P2 = s.shouldForwardProp;
2778
- if (a2 && c2.shouldForwardProp) {
2779
- var _2 = c2.shouldForwardProp;
2780
- if (s.shouldForwardProp) {
2781
- var I2 = s.shouldForwardProp;
2782
- P2 = function(e2, t) {
2783
- return _2(e2, t) && I2(e2, t);
2784
- };
2785
- } else P2 = _2;
2786
- }
2787
- var O2 = new Ue(i, E2, a2 ? c2.componentStyle : void 0);
2788
- function D2(e2, s2) {
2789
- return function(e3, s3, i2) {
2790
- var a3 = e3.attrs, c3 = e3.componentStyle, u3 = e3.defaultProps, l2 = e3.foldedComponentIds, p3 = e3.styledComponentId, d3 = e3.target, f3 = o__default.useContext ? o__default.useContext(Je) : void 0, m2 = Ve(), y3 = e3.shouldForwardProp || m2.shouldForwardProp;
2791
- "production" !== process.env.NODE_ENV && o__default.useDebugValue && o__default.useDebugValue(p3);
2792
- var v3 = b(s3, f3, u3) || w, g2 = function(e4, n, o2) {
2793
- for (var r2, s4 = __assign(__assign({}, n), { className: void 0, theme: o2 }), i3 = 0; i3 < e4.length; i3 += 1) {
2794
- var a4 = X(r2 = e4[i3]) ? r2(s4) : r2;
2795
- for (var c4 in a4) "className" === c4 ? s4.className = K(s4.className, a4[c4]) : "style" === c4 ? s4.style = __assign(__assign({}, s4.style), a4[c4]) : s4[c4] = a4[c4];
2796
- }
2797
- return "className" in n && "string" == typeof n.className && (s4.className = K(s4.className, n.className)), s4;
2798
- }(a3, s3, v3), S2 = g2.as || d3, E3 = {};
2799
- for (var N3 in g2) void 0 === g2[N3] || "$" === N3[0] || "as" === N3 || "theme" === N3 && g2.theme === v3 || ("forwardedAs" === N3 ? E3.as = g2.forwardedAs : y3 && !y3(N3, S2) || (E3[N3] = g2[N3], y3 || "development" !== process.env.NODE_ENV || isPropValid(N3) || et.has(N3) || !C.has(S2) || (et.add(N3), console.warn('styled-components: it looks like an unknown prop "'.concat(N3, '" is being sent through to the DOM, which will likely trigger a React console error. If you would like automatic filtering of unknown props, you can opt-into that behavior via `<StyleSheetManager shouldForwardProp={...}>` (connect an API like `@emotion/is-prop-valid`) or consider using transient props (`$` prefix for automatic filtering.)')))));
2800
- var A2 = function(e4, t) {
2801
- var n = Ve(), r2 = e4.generateAndInjectStyles(t, n.styleSheet, n.stylis);
2802
- return "production" !== process.env.NODE_ENV && o__default.useDebugValue && o__default.useDebugValue(r2.className), r2;
2803
- }(c3, g2), P3 = A2.className, _3 = A2.css;
2804
- "production" !== process.env.NODE_ENV && e3.warnTooManyClasses && e3.warnTooManyClasses(P3);
2805
- var I3 = K(l2, p3);
2806
- P3 && (I3 += " " + P3), g2.className && (I3 += " " + g2.className), E3[j(S2) && !C.has(S2) ? "class" : "className"] = I3, i2 && (E3.ref = i2);
2807
- var O3 = createElement(S2, E3);
2808
- return h && _3 ? o__default.createElement(o__default.Fragment, null, o__default.createElement("style", { precedence: "styled-components", href: "sc-".concat(p3, "-").concat(P3), children: _3 }), O3) : O3;
2809
- }(T2, e2, s2);
2810
- }
2811
- D2.displayName = v2;
2812
- var T2 = o__default.forwardRef(D2);
2813
- return T2.attrs = N2, T2.componentStyle = O2, T2.displayName = v2, T2.shouldForwardProp = P2, T2.foldedComponentIds = a2 ? K(c2.foldedComponentIds, c2.styledComponentId) : "", T2.styledComponentId = E2, T2.target = a2 ? c2.target : e, Object.defineProperty(T2, "defaultProps", { get: function() {
2814
- return this._foldedDefaultProps;
2815
- }, set: function(e2) {
2816
- this._foldedDefaultProps = a2 ? function(e3) {
2817
- for (var t = [], n = 1; n < arguments.length; n++) t[n - 1] = arguments[n];
2818
- for (var o2 = 0, r2 = t; o2 < r2.length; o2++) te(e3, r2[o2], true);
2819
- return e3;
2820
- }({}, c2.defaultProps, e2) : e2;
2821
- } }), "production" !== process.env.NODE_ENV && (g(v2, E2), T2.warnTooManyClasses = /* @__PURE__ */ function(e2, t) {
2822
- var n = {}, o2 = false;
2823
- return function(r2) {
2824
- if (!o2 && (n[r2] = true, Object.keys(n).length >= 200)) {
2825
- var s2 = t ? ' with the id of "'.concat(t, '"') : "";
2826
- console.warn("Over ".concat(200, " classes were generated for component ").concat(e2).concat(s2, ".\n") + "Consider using the attrs method, together with a style object for frequently changed styles.\nExample:\n const Component = styled.div.attrs(props => ({\n style: {\n background: props.background,\n },\n }))`width: 100%;`\n\n <Component />"), o2 = true, n = {};
2827
- }
2828
- };
2829
- }(v2, E2)), ne(T2, function() {
2830
- return ".".concat(T2.styledComponentId);
2831
- }), u2 && J(T2, e, { attrs: true, componentStyle: true, displayName: true, foldedComponentIds: true, shouldForwardProp: true, styledComponentId: true, target: true }), T2;
2832
- }
2833
- function nt(e, t) {
2834
- for (var n = [e[0]], o2 = 0, r2 = t.length; o2 < r2; o2 += 1) n.push(t[o2], e[o2 + 1]);
2835
- return n;
2836
- }
2837
- var ot = function(e) {
2838
- return Object.assign(e, { isCss: true });
2839
- };
2840
- function rt(t) {
2841
- for (var n = [], o2 = 1; o2 < arguments.length; o2++) n[o2 - 1] = arguments[o2];
2842
- if (X(t) || ee(t)) return ot(We(nt(S, __spreadArray([t], n, true))));
2843
- var r2 = t;
2844
- return 0 === n.length && 1 === r2.length && "string" == typeof r2[0] ? We(r2) : ot(We(nt(r2, n)));
2845
- }
2846
- function st(n, o2, r2) {
2847
- if (void 0 === r2 && (r2 = w), !o2) throw se(1, o2);
2848
- var s = function(t) {
2849
- for (var s2 = [], i = 1; i < arguments.length; i++) s2[i - 1] = arguments[i];
2850
- return n(o2, r2, rt.apply(void 0, __spreadArray([t], s2, false)));
2851
- };
2852
- return s.attrs = function(e) {
2853
- return st(n, o2, __assign(__assign({}, r2), { attrs: Array.prototype.concat(r2.attrs, e).filter(Boolean) }));
2854
- }, s.withConfig = function(e) {
2855
- return st(n, o2, __assign(__assign({}, r2), e));
2856
- }, s;
2857
- }
2858
- var it = function(e) {
2859
- return st(tt, e);
2860
- };
2861
- var at = it;
2862
- C.forEach(function(e) {
2863
- at[e] = it(e);
2864
- });
2865
- function lt(t) {
2866
- for (var n = [], o2 = 1; o2 < arguments.length; o2++) n[o2 - 1] = arguments[o2];
2867
- "production" !== process.env.NODE_ENV && "undefined" != typeof navigator && "ReactNative" === navigator.product && console.warn("`keyframes` cannot be used on ReactNative, only on the web. To do animation in ReactNative please use Animated.");
2868
- var r2 = Q(rt.apply(void 0, __spreadArray([t], n, false))), s = x(r2);
2869
- return new Be(s, r2);
2870
- }
2871
- "production" !== process.env.NODE_ENV && "undefined" != typeof navigator && "ReactNative" === navigator.product && console.warn("It looks like you've imported 'styled-components' on React Native.\nPerhaps you're looking to import 'styled-components/native'?\nRead more about this at https://www.styled-components.com/docs/basics#react-native");
2872
- var mt = "__sc-".concat(a, "__");
2873
- "production" !== process.env.NODE_ENV && "test" !== process.env.NODE_ENV && "undefined" != typeof window && (window[mt] || (window[mt] = 0), 1 === window[mt] && console.warn("It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.\n\nSee https://styled-components.com/docs/faqs#why-am-i-getting-a-warning-about-several-instances-of-module-on-the-page for more info."), window[mt] += 1);
2874
-
2875
1533
  // src/assets/Loaf-logo-Banner.png
2876
1534
  var Loaf_logo_Banner_default = "./Loaf-logo-Banner-DYV62HAW.png";
2877
- var pulse = lt`
1535
+ var pulse = keyframes`
2878
1536
  0%, 100% {
2879
1537
  opacity: 0.45;
2880
1538
  transform: scale(1);
@@ -2884,7 +1542,7 @@ var pulse = lt`
2884
1542
  transform: scale(1.08);
2885
1543
  }
2886
1544
  `;
2887
- var shimmer = lt`
1545
+ var shimmer = keyframes`
2888
1546
  0% {
2889
1547
  background-position: -100% 0;
2890
1548
  }
@@ -2892,7 +1550,7 @@ var shimmer = lt`
2892
1550
  background-position: 200% 0;
2893
1551
  }
2894
1552
  `;
2895
- var LogoContainer = at.span`
1553
+ var LogoContainer = styled6.span`
2896
1554
  display: inline-flex;
2897
1555
  align-items: center;
2898
1556
  gap: 0.35rem;
@@ -2911,7 +1569,7 @@ var LogoContainer = at.span`
2911
1569
  transition: all 0.3s ease;
2912
1570
  line-height: 1.4;
2913
1571
 
2914
- ${({ $isGlowing }) => $isGlowing ? rt`
1572
+ ${({ $isGlowing }) => $isGlowing ? css`
2915
1573
  border-color: rgba(240, 185, 11, 1);
2916
1574
  box-shadow:
2917
1575
  0 0 25px rgba(240, 185, 11, 0.8),
@@ -2977,7 +1635,7 @@ var LogoContainer = at.span`
2977
1635
  pointer-events: none;
2978
1636
  }
2979
1637
  `;
2980
- var IconWrapper = at.span`
1638
+ var IconWrapper = styled6.span`
2981
1639
  display: flex;
2982
1640
  align-items: center;
2983
1641
  justify-content: center;
@@ -2990,7 +1648,7 @@ var IconWrapper = at.span`
2990
1648
  height: 14px;
2991
1649
  }
2992
1650
  `;
2993
- var IconCircle = at.span`
1651
+ var IconCircle = styled6.span`
2994
1652
  position: absolute;
2995
1653
  width: ${({ size }) => size}px;
2996
1654
  height: ${({ size }) => size}px;
@@ -3001,7 +1659,7 @@ var IconCircle = at.span`
3001
1659
  transform-origin: center;
3002
1660
  will-change: transform, opacity;
3003
1661
  `;
3004
- var IconCore = at.span`
1662
+ var IconCore = styled6.span`
3005
1663
  width: 5px;
3006
1664
  height: 5px;
3007
1665
  background: linear-gradient(135deg, #0ecb81 0%, #2ecc71 100%);
@@ -3010,14 +1668,14 @@ var IconCore = at.span`
3010
1668
  position: relative;
3011
1669
  z-index: 1;
3012
1670
  `;
3013
- var LogoText = at.span`
1671
+ var LogoText = styled6.span`
3014
1672
  display: inline-flex;
3015
1673
  align-items: center;
3016
1674
  gap: 0.2rem;
3017
1675
  position: relative;
3018
1676
  z-index: 1;
3019
1677
  `;
3020
- var LoafLogoImage = at.img`
1678
+ var LoafLogoImage = styled6.img`
3021
1679
  height: 20px;
3022
1680
  position: relative;
3023
1681
  z-index: 1;
@@ -3026,7 +1684,7 @@ var LoafLogoImage = at.img`
3026
1684
  height: 18px;
3027
1685
  }
3028
1686
  `;
3029
- var LiquidityText = at.span`
1687
+ var LiquidityText = styled6.span`
3030
1688
  font-size: 0.65rem;
3031
1689
  font-weight: 400;
3032
1690
  background: linear-gradient(135deg, #f0b90b 0%, #ffd700 50%, #f0b90b 100%);
@@ -3043,7 +1701,7 @@ var LiquidityText = at.span`
3043
1701
  letter-spacing: 0.1px;
3044
1702
  }
3045
1703
  `;
3046
- var LoafLiquidityBadge = o.forwardRef(
1704
+ var LoafLiquidityBadge = React5.forwardRef(
3047
1705
  ({ className, isGlowing, onClick, children, ...props }, ref) => {
3048
1706
  return /* @__PURE__ */ jsxs(
3049
1707
  LogoContainer,
@@ -3072,8 +1730,8 @@ var LoafLiquidityBadge = o.forwardRef(
3072
1730
  );
3073
1731
  LoafLiquidityBadge.displayName = "LoafLiquidityBadge";
3074
1732
  function useViewportCompact(breakpoint) {
3075
- const [isCompact, setIsCompact] = o.useState(false);
3076
- o.useEffect(() => {
1733
+ const [isCompact, setIsCompact] = React5.useState(false);
1734
+ React5.useEffect(() => {
3077
1735
  if (typeof window === "undefined") return;
3078
1736
  const check = () => setIsCompact(window.innerWidth <= breakpoint);
3079
1737
  check();
@@ -3122,7 +1780,7 @@ var DEPTH_ROW_HEIGHT_PX = 34;
3122
1780
  var COMPACT_ROWS_VISIBLE = 5;
3123
1781
  var COMPACT_ROW_HEIGHT_PX = 30;
3124
1782
  var COMPACT_BREAKPOINT_PX = 1024;
3125
- var Orderbook = o.forwardRef(
1783
+ var Orderbook = React5.forwardRef(
3126
1784
  ({
3127
1785
  asks,
3128
1786
  bids,
@@ -3140,20 +1798,20 @@ var Orderbook = o.forwardRef(
3140
1798
  className,
3141
1799
  ...props
3142
1800
  }, ref) => {
3143
- const [tab, setTab] = o.useState(defaultTab);
3144
- const [tradeFilter, setTradeFilter] = o.useState("all");
1801
+ const [tab, setTab] = React5.useState(defaultTab);
1802
+ const [tradeFilter, setTradeFilter] = React5.useState("all");
3145
1803
  const viewportCompact = useViewportCompact(COMPACT_BREAKPOINT_PX);
3146
- o.useEffect(() => {
1804
+ React5.useEffect(() => {
3147
1805
  setTab(defaultTab);
3148
1806
  }, [defaultTab]);
3149
- const handleTab = (next2) => {
3150
- setTab(next2);
3151
- onTabChange?.(next2);
1807
+ const handleTab = (next) => {
1808
+ setTab(next);
1809
+ onTabChange?.(next);
3152
1810
  };
3153
1811
  const isCompact = variant === "compact" || variant === "auto" && viewportCompact;
3154
1812
  const sectionHeight = isCompact ? COMPACT_ROWS_VISIBLE * COMPACT_ROW_HEIGHT_PX : LEVEL_ROWS_VISIBLE * DEPTH_ROW_HEIGHT_PX;
3155
- const maxAskDepth = Math.max(1, ...asks.map((l2) => l2.depth ?? l2.amount));
3156
- const maxBidDepth = Math.max(1, ...bids.map((l2) => l2.depth ?? l2.amount));
1813
+ const maxAskDepth = Math.max(1, ...asks.map((l) => l.depth ?? l.amount));
1814
+ const maxBidDepth = Math.max(1, ...bids.map((l) => l.depth ?? l.amount));
3157
1815
  const midClass = midChangePercent == null ? "text-white" : midChangePercent >= 0 ? "text-[#0ecb81]" : "text-[#f6465d]";
3158
1816
  const tradeFiltered = trades.filter((t) => tradeFilter === "all" || t.type === tradeFilter);
3159
1817
  const layoutProps = {
@@ -3325,17 +1983,17 @@ function DesktopOrderbookLayout({
3325
1983
  {
3326
1984
  className: "divide-y divide-white/5 overflow-y-auto",
3327
1985
  style: { height: `${sectionHeight}px`, scrollbarGutter: "stable" },
3328
- children: asks.map((l2, idx) => /* @__PURE__ */ jsx(
1986
+ children: asks.map((l, idx) => /* @__PURE__ */ jsx(
3329
1987
  DepthRow,
3330
1988
  {
3331
1989
  side: "ask",
3332
- price: l2.price,
3333
- amount: l2.amount,
3334
- depthPct: (l2.depth ?? l2.amount) / maxAskDepth * 100,
1990
+ price: l.price,
1991
+ amount: l.amount,
1992
+ depthPct: (l.depth ?? l.amount) / maxAskDepth * 100,
3335
1993
  precision,
3336
1994
  amountPrecision
3337
1995
  },
3338
- `ask-${idx}-${l2.price}-${l2.amount}`
1996
+ `ask-${idx}-${l.price}-${l.amount}`
3339
1997
  ))
3340
1998
  }
3341
1999
  ),
@@ -3356,17 +2014,17 @@ function DesktopOrderbookLayout({
3356
2014
  {
3357
2015
  className: "divide-y divide-white/5 overflow-y-auto",
3358
2016
  style: { height: `${sectionHeight}px`, scrollbarGutter: "stable" },
3359
- children: bids.map((l2, idx) => /* @__PURE__ */ jsx(
2017
+ children: bids.map((l, idx) => /* @__PURE__ */ jsx(
3360
2018
  DepthRow,
3361
2019
  {
3362
2020
  side: "bid",
3363
- price: l2.price,
3364
- amount: l2.amount,
3365
- depthPct: (l2.depth ?? l2.amount) / maxBidDepth * 100,
2021
+ price: l.price,
2022
+ amount: l.amount,
2023
+ depthPct: (l.depth ?? l.amount) / maxBidDepth * 100,
3366
2024
  precision,
3367
2025
  amountPrecision
3368
2026
  },
3369
- `bid-${idx}-${l2.price}-${l2.amount}`
2027
+ `bid-${idx}-${l.price}-${l.amount}`
3370
2028
  ))
3371
2029
  }
3372
2030
  )
@@ -3394,8 +2052,8 @@ function MobileOrderbookLayout({
3394
2052
  midClass,
3395
2053
  sectionHeight
3396
2054
  }) {
3397
- const visibleAsks = o.useMemo(() => asks.slice(0, COMPACT_ROWS_VISIBLE), [asks]);
3398
- const visibleBids = o.useMemo(() => bids.slice(0, COMPACT_ROWS_VISIBLE), [bids]);
2055
+ const visibleAsks = React5.useMemo(() => asks.slice(0, COMPACT_ROWS_VISIBLE), [asks]);
2056
+ const visibleBids = React5.useMemo(() => bids.slice(0, COMPACT_ROWS_VISIBLE), [bids]);
3399
2057
  return /* @__PURE__ */ jsxs(Fragment, { children: [
3400
2058
  /* @__PURE__ */ jsx("div", { className: "px-3 pt-2", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
3401
2059
  /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
@@ -3430,18 +2088,18 @@ function MobileOrderbookLayout({
3430
2088
  }
3431
2089
  )
3432
2090
  ] }),
3433
- tab === "trades" ? /* @__PURE__ */ jsx("div", { className: "flex items-center gap-1 text-[0.6rem] text-white/70", children: ["all", "buy", "sell"].map((filter2) => /* @__PURE__ */ jsx(
2091
+ tab === "trades" ? /* @__PURE__ */ jsx("div", { className: "flex items-center gap-1 text-[0.6rem] text-white/70", children: ["all", "buy", "sell"].map((filter) => /* @__PURE__ */ jsx(
3434
2092
  "button",
3435
2093
  {
3436
2094
  type: "button",
3437
- onClick: () => setTradeFilter(filter2),
2095
+ onClick: () => setTradeFilter(filter),
3438
2096
  className: cn(
3439
2097
  "rounded-md border border-white/15 px-2 py-1",
3440
- tradeFilter === filter2 ? "bg-white/15 text-white" : "hover:bg-white/10"
2098
+ tradeFilter === filter ? "bg-white/15 text-white" : "hover:bg-white/10"
3441
2099
  ),
3442
- children: filter2 === "all" ? "All" : filter2 === "buy" ? "Buy" : "Sell"
2100
+ children: filter === "all" ? "All" : filter === "buy" ? "Buy" : "Sell"
3443
2101
  },
3444
- filter2
2102
+ filter
3445
2103
  )) }) : /* @__PURE__ */ jsx("div", { className: "hidden text-xs text-white/70 sm:flex", children: rightHeader })
3446
2104
  ] }) }),
3447
2105
  tab === "orderbook" ? /* @__PURE__ */ jsxs("div", { className: "flex flex-1 flex-col overflow-hidden px-3 pb-2", children: [
@@ -3464,17 +2122,17 @@ function MobileOrderbookLayout({
3464
2122
  ]
3465
2123
  }
3466
2124
  ),
3467
- /* @__PURE__ */ jsx("div", { style: { display: "flex", flexDirection: "column" }, children: visibleAsks.map((l2, idx) => /* @__PURE__ */ jsx(
2125
+ /* @__PURE__ */ jsx("div", { style: { display: "flex", flexDirection: "column" }, children: visibleAsks.map((l, idx) => /* @__PURE__ */ jsx(
3468
2126
  MobileDepthRow,
3469
2127
  {
3470
2128
  side: "ask",
3471
- price: l2.price,
3472
- amount: l2.amount,
3473
- depthPct: (l2.depth ?? l2.amount) / maxAskDepth * 100,
2129
+ price: l.price,
2130
+ amount: l.amount,
2131
+ depthPct: (l.depth ?? l.amount) / maxAskDepth * 100,
3474
2132
  precision,
3475
2133
  amountPrecision
3476
2134
  },
3477
- `mobile-ask-${idx}-${l2.price}-${l2.amount}`
2135
+ `mobile-ask-${idx}-${l.price}-${l.amount}`
3478
2136
  )) }),
3479
2137
  /* @__PURE__ */ jsxs(
3480
2138
  "div",
@@ -3508,17 +2166,17 @@ function MobileOrderbookLayout({
3508
2166
  ]
3509
2167
  }
3510
2168
  ),
3511
- /* @__PURE__ */ jsx("div", { style: { display: "flex", flexDirection: "column" }, children: visibleBids.map((l2, idx) => /* @__PURE__ */ jsx(
2169
+ /* @__PURE__ */ jsx("div", { style: { display: "flex", flexDirection: "column" }, children: visibleBids.map((l, idx) => /* @__PURE__ */ jsx(
3512
2170
  MobileDepthRow,
3513
2171
  {
3514
2172
  side: "bid",
3515
- price: l2.price,
3516
- amount: l2.amount,
3517
- depthPct: (l2.depth ?? l2.amount) / maxBidDepth * 100,
2173
+ price: l.price,
2174
+ amount: l.amount,
2175
+ depthPct: (l.depth ?? l.amount) / maxBidDepth * 100,
3518
2176
  precision,
3519
2177
  amountPrecision
3520
2178
  },
3521
- `mobile-bid-${idx}-${l2.price}-${l2.amount}`
2179
+ `mobile-bid-${idx}-${l.price}-${l.amount}`
3522
2180
  )) })
3523
2181
  ] }) : /* @__PURE__ */ jsxs("div", { className: "flex flex-1 flex-col overflow-hidden px-3 pb-2", children: [
3524
2182
  /* @__PURE__ */ jsxs(
@@ -3600,7 +2258,7 @@ function MobileDepthRow({
3600
2258
  }
3601
2259
  );
3602
2260
  }
3603
- var PropertyTour = o.forwardRef(
2261
+ var PropertyTour = React5.forwardRef(
3604
2262
  ({
3605
2263
  className,
3606
2264
  title,
@@ -3613,13 +2271,13 @@ var PropertyTour = o.forwardRef(
3613
2271
  playsInline = true,
3614
2272
  ...props
3615
2273
  }, ref) => {
3616
- const videoRef = o.useRef(null);
3617
- o.useEffect(() => {
2274
+ const videoRef = React5.useRef(null);
2275
+ React5.useEffect(() => {
3618
2276
  const video = videoRef.current;
3619
2277
  if (!video) return;
3620
2278
  const handleFullscreenChange = () => {
3621
- const d2 = document;
3622
- const isFullscreen = !!(d2.fullscreenElement || d2.webkitFullscreenElement || d2.mozFullScreenElement || d2.msFullscreenElement);
2279
+ const d = document;
2280
+ const isFullscreen = !!(d.fullscreenElement || d.webkitFullscreenElement || d.mozFullScreenElement || d.msFullscreenElement);
3623
2281
  if (isFullscreen) {
3624
2282
  video.style.objectFit = "contain";
3625
2283
  video.style.width = "100vw";
@@ -3737,7 +2395,7 @@ var formatDate = (value) => {
3737
2395
  year: "numeric"
3738
2396
  });
3739
2397
  };
3740
- var PropertyNewsUpdates = o.forwardRef(
2398
+ var PropertyNewsUpdates = React5.forwardRef(
3741
2399
  ({
3742
2400
  className,
3743
2401
  heading = "Property News & Headlines",
@@ -3747,14 +2405,14 @@ var PropertyNewsUpdates = o.forwardRef(
3747
2405
  highlightFirst = true,
3748
2406
  ...props
3749
2407
  }, ref) => {
3750
- const [page, setPage] = o.useState(0);
3751
- o.useEffect(() => {
2408
+ const [page, setPage] = React5.useState(0);
2409
+ React5.useEffect(() => {
3752
2410
  ensureAnimationsInjected();
3753
2411
  }, []);
3754
2412
  const hasItems = Array.isArray(items) && items.length > 0;
3755
- const totalPages = o.useMemo(() => hasItems ? Math.max(1, Math.ceil(items.length / ITEMS_PER_PAGE)) : 1, [hasItems, items.length]);
3756
- o.useEffect(() => {
3757
- setPage((prev2) => Math.min(prev2, totalPages - 1));
2413
+ const totalPages = React5.useMemo(() => hasItems ? Math.max(1, Math.ceil(items.length / ITEMS_PER_PAGE)) : 1, [hasItems, items.length]);
2414
+ React5.useEffect(() => {
2415
+ setPage((prev) => Math.min(prev, totalPages - 1));
3758
2416
  }, [totalPages]);
3759
2417
  const paginatedItems = hasItems ? items.slice(page * ITEMS_PER_PAGE, page * ITEMS_PER_PAGE + ITEMS_PER_PAGE) : [];
3760
2418
  return /* @__PURE__ */ jsxs(
@@ -3866,7 +2524,7 @@ var PropertyNewsUpdates = o.forwardRef(
3866
2524
  "button",
3867
2525
  {
3868
2526
  type: "button",
3869
- onClick: () => setPage((prev2) => Math.max(0, prev2 - 1)),
2527
+ onClick: () => setPage((prev) => Math.max(0, prev - 1)),
3870
2528
  disabled: page === 0,
3871
2529
  className: cn(
3872
2530
  "rounded-full border border-white/15 px-3 py-1 uppercase tracking-[0.2em]",
@@ -3885,7 +2543,7 @@ var PropertyNewsUpdates = o.forwardRef(
3885
2543
  "button",
3886
2544
  {
3887
2545
  type: "button",
3888
- onClick: () => setPage((prev2) => Math.min(totalPages - 1, prev2 + 1)),
2546
+ onClick: () => setPage((prev) => Math.min(totalPages - 1, prev + 1)),
3889
2547
  disabled: page >= totalPages - 1,
3890
2548
  className: cn(
3891
2549
  "rounded-full border border-white/15 px-3 py-1 uppercase tracking-[0.2em]",
@@ -3907,7 +2565,7 @@ var defaultFormat = (value) => new Intl.NumberFormat("en-US", {
3907
2565
  notation: value >= 1e5 ? "compact" : "standard",
3908
2566
  maximumFractionDigits: value >= 1e3 ? 0 : 2
3909
2567
  }).format(value);
3910
- var TradingSlider = o.forwardRef(
2568
+ var TradingSlider = React5.forwardRef(
3911
2569
  ({
3912
2570
  label = "Trade size",
3913
2571
  helperText = "Drag to pick the desired notional.",
@@ -3925,7 +2583,7 @@ var TradingSlider = o.forwardRef(
3925
2583
  ...rest
3926
2584
  }, ref) => {
3927
2585
  const isControlled = value !== void 0;
3928
- const [internalValue, setInternalValue] = o.useState(
2586
+ const [internalValue, setInternalValue] = React5.useState(
3929
2587
  defaultValue ?? (typeof min === "number" ? min : 0)
3930
2588
  );
3931
2589
  const currentValue = isControlled ? Number(value) : internalValue;
@@ -3933,11 +2591,11 @@ var TradingSlider = o.forwardRef(
3933
2591
  const parsedMax = Number(max ?? 100);
3934
2592
  const percent = (currentValue - parsedMin) / (parsedMax - parsedMin || 1) * 100;
3935
2593
  const handleChange = (event) => {
3936
- const next2 = Number(event.target.value);
2594
+ const next = Number(event.target.value);
3937
2595
  if (!isControlled) {
3938
- setInternalValue(next2);
2596
+ setInternalValue(next);
3939
2597
  }
3940
- onValueChange?.(next2, event);
2598
+ onValueChange?.(next, event);
3941
2599
  };
3942
2600
  return /* @__PURE__ */ jsxs("div", { className: cn("rounded-3xl border border-slate-200 bg-white p-6 shadow-sm", className), children: [
3943
2601
  /* @__PURE__ */ jsxs("div", { className: "flex items-end justify-between gap-4", children: [
@@ -3987,7 +2645,7 @@ var TradingSlider = o.forwardRef(
3987
2645
  }
3988
2646
  );
3989
2647
  TradingSlider.displayName = "TradingSlider";
3990
- var MobileToggleContainer = at.div`
2648
+ var MobileToggleContainer = styled6.div`
3991
2649
  display: none;
3992
2650
 
3993
2651
  @media (max-width: 1024px) {
@@ -4005,7 +2663,7 @@ var MobileToggleContainer = at.div`
4005
2663
  box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.3);
4006
2664
  }
4007
2665
  `;
4008
- var MobileToggleButton = at.button`
2666
+ var MobileToggleButton = styled6.button`
4009
2667
  flex: 1;
4010
2668
  padding: 0.75rem;
4011
2669
  background-color: ${(props) => props.active ? "var(--color-accent)" : "transparent"};
@@ -4028,7 +2686,7 @@ var MobileToggleButton = at.button`
4028
2686
  padding: 0.6rem 0.5rem;
4029
2687
  }
4030
2688
  `;
4031
- var MobileTradeNav = o.forwardRef(
2689
+ var MobileTradeNav = React5.forwardRef(
4032
2690
  ({ className, items, activeId, onChange, ...props }, ref) => {
4033
2691
  return /* @__PURE__ */ jsx(MobileToggleContainer, { ref, className: cn(className), ...props, children: items.map((item) => /* @__PURE__ */ jsxs(
4034
2692
  MobileToggleButton,
@@ -4342,7 +3000,7 @@ function TradeConfirmationModal({
4342
3000
  ] })
4343
3001
  ] }) });
4344
3002
  }
4345
- var pulse2 = lt`
3003
+ var pulse2 = keyframes`
4346
3004
  0%, 100% {
4347
3005
  opacity: 0.45;
4348
3006
  transform: scale(1);
@@ -4352,7 +3010,7 @@ var pulse2 = lt`
4352
3010
  transform: scale(1.08);
4353
3011
  }
4354
3012
  `;
4355
- var shimmer2 = lt`
3013
+ var shimmer2 = keyframes`
4356
3014
  0% {
4357
3015
  background-position: -100% 0;
4358
3016
  }
@@ -4360,7 +3018,7 @@ var shimmer2 = lt`
4360
3018
  background-position: 200% 0;
4361
3019
  }
4362
3020
  `;
4363
- var LogoContainer2 = at.span`
3021
+ var LogoContainer2 = styled6.span`
4364
3022
  display: inline-flex;
4365
3023
  align-items: center;
4366
3024
  gap: 0.35rem;
@@ -4455,7 +3113,7 @@ var LogoContainer2 = at.span`
4455
3113
  pointer-events: none;
4456
3114
  }
4457
3115
  `;
4458
- var IconWrapper2 = at.div`
3116
+ var IconWrapper2 = styled6.div`
4459
3117
  display: flex;
4460
3118
  align-items: center;
4461
3119
  justify-content: center;
@@ -4473,7 +3131,7 @@ var IconWrapper2 = at.div`
4473
3131
  height: 14px;
4474
3132
  }
4475
3133
  `;
4476
- var IconCircle2 = at.div`
3134
+ var IconCircle2 = styled6.div`
4477
3135
  position: absolute;
4478
3136
  width: ${(props) => props.$size}px;
4479
3137
  height: ${(props) => props.$size}px;
@@ -4484,7 +3142,7 @@ var IconCircle2 = at.div`
4484
3142
  transform-origin: center;
4485
3143
  will-change: transform, opacity;
4486
3144
  `;
4487
- var IconCore2 = at.div`
3145
+ var IconCore2 = styled6.div`
4488
3146
  width: 5px;
4489
3147
  height: 5px;
4490
3148
  background: linear-gradient(135deg, #0ecb81 0%, #2ecc71 100%);
@@ -4493,7 +3151,7 @@ var IconCore2 = at.div`
4493
3151
  position: relative;
4494
3152
  z-index: 1;
4495
3153
  `;
4496
- var LogoText2 = at.span`
3154
+ var LogoText2 = styled6.span`
4497
3155
  display: inline-flex;
4498
3156
  align-items: center;
4499
3157
  gap: 0.2rem;
@@ -4501,7 +3159,7 @@ var LogoText2 = at.span`
4501
3159
  z-index: 1;
4502
3160
  vertical-align: middle;
4503
3161
  `;
4504
- var LoafLogoImage2 = at.img`
3162
+ var LoafLogoImage2 = styled6.img`
4505
3163
  height: 20px;
4506
3164
  position: relative;
4507
3165
  z-index: 1;
@@ -4514,7 +3172,7 @@ var LoafLogoImage2 = at.img`
4514
3172
  height: 18px;
4515
3173
  }
4516
3174
  `;
4517
- var LiquidityText2 = at.span`
3175
+ var LiquidityText2 = styled6.span`
4518
3176
  font-size: 0.65rem;
4519
3177
  font-weight: 400;
4520
3178
  background: linear-gradient(135deg, #f0b90b 0%, #ffd700 50%, #f0b90b 100%);
@@ -4679,7 +3337,7 @@ var formatPercent = (value, fractionDigits = 2) => {
4679
3337
  if (value == null || Number.isNaN(value)) return "\u2014";
4680
3338
  return `${value.toFixed(fractionDigits)}%`;
4681
3339
  };
4682
- var YourOrders = o.forwardRef(
3340
+ var YourOrders = React5.forwardRef(
4683
3341
  ({
4684
3342
  className,
4685
3343
  title,
@@ -4691,10 +3349,10 @@ var YourOrders = o.forwardRef(
4691
3349
  renderTabContent,
4692
3350
  ...props
4693
3351
  }, ref) => {
4694
- const [internalActiveTab, setInternalActiveTab] = o.useState(tabs?.[0]?.id ?? "portfolio");
4695
- const [page, setPage] = o.useState(0);
3352
+ const [internalActiveTab, setInternalActiveTab] = React5.useState(tabs?.[0]?.id ?? "portfolio");
3353
+ const [page, setPage] = React5.useState(0);
4696
3354
  const effectiveActiveTabId = activeTabId ?? internalActiveTab;
4697
- o.useEffect(() => {
3355
+ React5.useEffect(() => {
4698
3356
  setPage(0);
4699
3357
  }, [effectiveActiveTabId]);
4700
3358
  const handleTabChange = (tabId) => {
@@ -5044,7 +3702,7 @@ var getPriceScaleOptions = (data) => {
5044
3702
  borderColor: "rgba(230, 200, 126, 0.25)",
5045
3703
  textColor: "rgba(230, 200, 126, 0.7)"
5046
3704
  };
5047
- const prices = data.flatMap((d2) => [d2.open, d2.high, d2.low, d2.close]);
3705
+ const prices = data.flatMap((d) => [d.open, d.high, d.low, d.close]);
5048
3706
  const minPrice = Math.min(...prices);
5049
3707
  const maxPrice = Math.max(...prices);
5050
3708
  const priceRange = maxPrice - minPrice;
@@ -5079,7 +3737,7 @@ function createCandlestickSeries(chart, options) {
5079
3737
  }
5080
3738
  throw new Error("Candlestick series API is not available in the current lightweight-charts version.");
5081
3739
  }
5082
- var PriceChart = o.forwardRef(
3740
+ var PriceChart = React5.forwardRef(
5083
3741
  ({
5084
3742
  className,
5085
3743
  title = "Price Chart",
@@ -5093,18 +3751,18 @@ var PriceChart = o.forwardRef(
5093
3751
  height = 301.52,
5094
3752
  ...props
5095
3753
  }, ref) => {
5096
- const containerRef = o.useRef(null);
5097
- const chartRef = o.useRef(null);
5098
- const seriesRef = o.useRef(null);
5099
- const priceLineRef = o.useRef(null);
5100
- const [hoveredRange, setHoveredRange] = o.useState(null);
5101
- const [dropdownOpen, setDropdownOpen] = o.useState(false);
5102
- const dropdownRef = o.useRef(null);
5103
- const isAutoScrollRef = o.useRef(true);
3754
+ const containerRef = React5.useRef(null);
3755
+ const chartRef = React5.useRef(null);
3756
+ const seriesRef = React5.useRef(null);
3757
+ const priceLineRef = React5.useRef(null);
3758
+ const [hoveredRange, setHoveredRange] = React5.useState(null);
3759
+ const [dropdownOpen, setDropdownOpen] = React5.useState(false);
3760
+ const dropdownRef = React5.useRef(null);
3761
+ const isAutoScrollRef = React5.useRef(true);
5104
3762
  const visibleRanges = ranges.slice(0, VISIBLE_RANGE_COUNT);
5105
3763
  const dropdownRanges = ranges.slice(VISIBLE_RANGE_COUNT);
5106
3764
  const selectedInDropdown = dropdownRanges.includes(selectedRange);
5107
- o.useEffect(() => {
3765
+ React5.useEffect(() => {
5108
3766
  const handleClickOutside = (e) => {
5109
3767
  if (dropdownRef.current && !dropdownRef.current.contains(e.target)) {
5110
3768
  setDropdownOpen(false);
@@ -5113,25 +3771,25 @@ var PriceChart = o.forwardRef(
5113
3771
  document.addEventListener("mousedown", handleClickOutside);
5114
3772
  return () => document.removeEventListener("mousedown", handleClickOutside);
5115
3773
  }, []);
5116
- const resolvedPrice = o.useMemo(() => {
3774
+ const resolvedPrice = React5.useMemo(() => {
5117
3775
  if (price != null) return price;
5118
3776
  const last = data.at(-1);
5119
3777
  return last?.close;
5120
3778
  }, [data, price]);
5121
- const inferredChangePercent = o.useMemo(() => {
3779
+ const inferredChangePercent = React5.useMemo(() => {
5122
3780
  if (changePercent != null) return changePercent;
5123
3781
  const first = data[0]?.open;
5124
3782
  const last = data.at(-1)?.close;
5125
3783
  if (first == null || last == null || first === 0) return void 0;
5126
3784
  return (last - first) / first * 100;
5127
3785
  }, [changePercent, data]);
5128
- const dollarChange = o.useMemo(() => {
3786
+ const dollarChange = React5.useMemo(() => {
5129
3787
  const first = data[0]?.open;
5130
3788
  const last = data.at(-1)?.close;
5131
3789
  if (first == null || last == null) return void 0;
5132
3790
  return last - first;
5133
3791
  }, [data]);
5134
- o.useEffect(() => {
3792
+ React5.useEffect(() => {
5135
3793
  const el = containerRef.current;
5136
3794
  if (!el) return;
5137
3795
  const chart = LightweightCharts.createChart(el, {
@@ -5163,8 +3821,8 @@ var PriceChart = o.forwardRef(
5163
3821
  seriesRef.current = series;
5164
3822
  const handleVisibleRangeChange = () => {
5165
3823
  const timeScale2 = chart.timeScale();
5166
- const position2 = timeScale2.scrollPosition();
5167
- const atRightEdge = position2 <= 0.01;
3824
+ const position = timeScale2.scrollPosition();
3825
+ const atRightEdge = position <= 0.01;
5168
3826
  isAutoScrollRef.current = atRightEdge;
5169
3827
  };
5170
3828
  const timeScale = chart.timeScale();
@@ -5176,7 +3834,7 @@ var PriceChart = o.forwardRef(
5176
3834
  chart.remove();
5177
3835
  };
5178
3836
  }, []);
5179
- o.useEffect(() => {
3837
+ React5.useEffect(() => {
5180
3838
  const chart = chartRef.current;
5181
3839
  if (!chart) return;
5182
3840
  const effectiveRange = selectedRange ?? ranges?.[0] ?? "1D";
@@ -5184,7 +3842,7 @@ var PriceChart = o.forwardRef(
5184
3842
  timeScale: getTimeScaleOptions(effectiveRange)
5185
3843
  });
5186
3844
  }, [selectedRange, ranges]);
5187
- o.useEffect(() => {
3845
+ React5.useEffect(() => {
5188
3846
  const chart = chartRef.current;
5189
3847
  const series = seriesRef.current;
5190
3848
  if (!chart || !series) return;
@@ -5242,9 +3900,9 @@ var PriceChart = o.forwardRef(
5242
3900
  /* @__PURE__ */ jsxs("div", { className: "flex w-full flex-col gap-3 md:w-auto", children: [
5243
3901
  /* @__PURE__ */ jsx(CardTitle, { className: "m-0 text-[1.1rem] font-semibold text-white", children: title }),
5244
3902
  /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [
5245
- visibleRanges.map((r2) => {
5246
- const active = r2 === selectedRange;
5247
- const hovered = hoveredRange === r2;
3903
+ visibleRanges.map((r) => {
3904
+ const active = r === selectedRange;
3905
+ const hovered = hoveredRange === r;
5248
3906
  const style = {
5249
3907
  ...btnBaseStyle,
5250
3908
  ...hovered ? btnHoverStyle : null,
@@ -5254,16 +3912,16 @@ var PriceChart = o.forwardRef(
5254
3912
  "button",
5255
3913
  {
5256
3914
  type: "button",
5257
- onClick: () => onRangeChange?.(r2),
5258
- onMouseEnter: () => setHoveredRange(r2),
5259
- onMouseLeave: () => setHoveredRange((prev2) => prev2 === r2 ? null : prev2),
3915
+ onClick: () => onRangeChange?.(r),
3916
+ onMouseEnter: () => setHoveredRange(r),
3917
+ onMouseLeave: () => setHoveredRange((prev) => prev === r ? null : prev),
5260
3918
  style,
5261
3919
  className: cn(
5262
3920
  "rounded border px-3 py-1 text-[0.85rem] font-medium transition-all duration-200"
5263
3921
  ),
5264
- children: r2
3922
+ children: r
5265
3923
  },
5266
- r2
3924
+ r
5267
3925
  );
5268
3926
  }),
5269
3927
  selectedInDropdown && selectedRange ? /* @__PURE__ */ jsx(
@@ -5286,9 +3944,9 @@ var PriceChart = o.forwardRef(
5286
3944
  "button",
5287
3945
  {
5288
3946
  type: "button",
5289
- onClick: () => setDropdownOpen((prev2) => !prev2),
3947
+ onClick: () => setDropdownOpen((prev) => !prev),
5290
3948
  onMouseEnter: () => setHoveredRange("__dropdown__"),
5291
- onMouseLeave: () => setHoveredRange((prev2) => prev2 === "__dropdown__" ? null : prev2),
3949
+ onMouseLeave: () => setHoveredRange((prev) => prev === "__dropdown__" ? null : prev),
5292
3950
  style: {
5293
3951
  ...btnBaseStyle,
5294
3952
  ...hoveredRange === "__dropdown__" ? btnHoverStyle : null
@@ -5311,23 +3969,23 @@ var PriceChart = o.forwardRef(
5311
3969
  ]
5312
3970
  }
5313
3971
  ),
5314
- dropdownOpen && /* @__PURE__ */ jsx("div", { className: "absolute left-0 top-full z-50 mt-1 min-w-[80px] rounded border border-white/10 bg-black/90 py-1 backdrop-blur-md", children: dropdownRanges.map((r2) => {
5315
- const active = r2 === selectedRange;
3972
+ dropdownOpen && /* @__PURE__ */ jsx("div", { className: "absolute left-0 top-full z-50 mt-1 min-w-[80px] rounded border border-white/10 bg-black/90 py-1 backdrop-blur-md", children: dropdownRanges.map((r) => {
3973
+ const active = r === selectedRange;
5316
3974
  return /* @__PURE__ */ jsx(
5317
3975
  "button",
5318
3976
  {
5319
3977
  type: "button",
5320
3978
  onClick: () => {
5321
- onRangeChange?.(r2);
3979
+ onRangeChange?.(r);
5322
3980
  setDropdownOpen(false);
5323
3981
  },
5324
3982
  className: cn(
5325
3983
  "block w-full px-3 py-1.5 text-left text-[0.85rem] font-medium transition-colors hover:bg-white/10",
5326
3984
  active ? "bg-[#e6c87e]/20 text-[#e6c87e]" : "text-white/70"
5327
3985
  ),
5328
- children: r2
3986
+ children: r
5329
3987
  },
5330
- r2
3988
+ r
5331
3989
  );
5332
3990
  }) })
5333
3991
  ] })
@@ -5389,7 +4047,7 @@ var formatPrice3 = (value, currencySymbol) => {
5389
4047
  maximumFractionDigits: 3
5390
4048
  })}`;
5391
4049
  };
5392
- var PropertyHeroHeader = o.forwardRef(
4050
+ var PropertyHeroHeader = React5.forwardRef(
5393
4051
  ({
5394
4052
  className,
5395
4053
  imageUrl,
@@ -5410,8 +4068,8 @@ var PropertyHeroHeader = o.forwardRef(
5410
4068
  const isPositive = changePercent == null ? void 0 : changePercent >= 0;
5411
4069
  const accentColor = "#e6c87e";
5412
4070
  const tradeHoverColor = "#f5dd9a";
5413
- const [isTradeInteracting, setIsTradeInteracting] = o.useState(false);
5414
- const [isOfferInteracting, setIsOfferInteracting] = o.useState(false);
4071
+ const [isTradeInteracting, setIsTradeInteracting] = React5.useState(false);
4072
+ const [isOfferInteracting, setIsOfferInteracting] = React5.useState(false);
5415
4073
  const hasAmenities = beds != null || baths != null || cars != null || propertyTypeLabel != null;
5416
4074
  const headingStyle = {
5417
4075
  fontSize: "clamp(1.6rem, 4vw, 2.5rem)",
@@ -5576,7 +4234,7 @@ var PropertyHeroHeader = o.forwardRef(
5576
4234
  }
5577
4235
  );
5578
4236
  PropertyHeroHeader.displayName = "PropertyHeroHeader";
5579
- var OuterWrapper = at.div`
4237
+ var OuterWrapper = styled6.div`
5580
4238
  width: 100%;
5581
4239
  max-width: 1200px;
5582
4240
  margin: 0 auto;
@@ -5584,7 +4242,7 @@ var OuterWrapper = at.div`
5584
4242
  flex-direction: column;
5585
4243
  gap: 0.5rem;
5586
4244
  `;
5587
- var HeroContainer = at.div`
4245
+ var HeroContainer = styled6.div`
5588
4246
  position: relative;
5589
4247
  width: 100%;
5590
4248
  height: 500px;
@@ -5616,7 +4274,7 @@ var HeroContainer = at.div`
5616
4274
  height: 200px;
5617
4275
  }
5618
4276
  `;
5619
- var MobileAmenities = at.div`
4277
+ var MobileAmenities = styled6.div`
5620
4278
  display: none;
5621
4279
  align-items: center;
5622
4280
  justify-content: space-between;
@@ -5633,7 +4291,7 @@ var MobileAmenities = at.div`
5633
4291
  flex-wrap: wrap;
5634
4292
  }
5635
4293
  `;
5636
- var MobileAmenity = at.span`
4294
+ var MobileAmenity = styled6.span`
5637
4295
  display: inline-flex;
5638
4296
  align-items: center;
5639
4297
  gap: 0.35rem;
@@ -5642,7 +4300,7 @@ var MobileAmenity = at.span`
5642
4300
  background: rgba(255, 255, 255, 0.08);
5643
4301
  font-weight: 500;
5644
4302
  `;
5645
- var HeroImage = at.img`
4303
+ var HeroImage = styled6.img`
5646
4304
  position: absolute;
5647
4305
  inset: 0;
5648
4306
  width: 100%;
@@ -5654,13 +4312,13 @@ var HeroImage = at.img`
5654
4312
  min-width: 110%;
5655
4313
  transition: transform 0.5s ease-out;
5656
4314
  `;
5657
- var HeroGradient = at.div`
4315
+ var HeroGradient = styled6.div`
5658
4316
  position: absolute;
5659
4317
  inset: 0;
5660
4318
  z-index: 1;
5661
4319
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.25) 45%, rgba(0, 0, 0, 0.75) 100%);
5662
4320
  `;
5663
- var ActionButtons = at.div`
4321
+ var ActionButtons = styled6.div`
5664
4322
  display: flex;
5665
4323
  flex-wrap: wrap;
5666
4324
  align-items: center;
@@ -5675,7 +4333,7 @@ var ActionButtons = at.div`
5675
4333
  display: none;
5676
4334
  }
5677
4335
  `;
5678
- var InfoCard = at.div`
4336
+ var InfoCard = styled6.div`
5679
4337
  display: inline-block;
5680
4338
  width: fit-content;
5681
4339
  max-width: 70%;
@@ -5700,7 +4358,7 @@ var InfoCard = at.div`
5700
4358
  max-width: 95%;
5701
4359
  }
5702
4360
  `;
5703
- var InfoRow = at.div`
4361
+ var InfoRow = styled6.div`
5704
4362
  display: grid;
5705
4363
  grid-template-columns: minmax(0, 1fr) auto;
5706
4364
  align-items: center;
@@ -5711,7 +4369,7 @@ var InfoRow = at.div`
5711
4369
  gap: 0.5rem;
5712
4370
  }
5713
4371
  `;
5714
- var LocationText = at.span`
4372
+ var LocationText = styled6.span`
5715
4373
  font-size: clamp(1rem, 2.6vw, 1.25rem);
5716
4374
  color: rgba(255, 255, 255, 0.9);
5717
4375
  font-weight: 500;
@@ -5719,7 +4377,7 @@ var LocationText = at.span`
5719
4377
  text-overflow: ellipsis;
5720
4378
  white-space: nowrap;
5721
4379
  `;
5722
- var PriceBlock = at.span`
4380
+ var PriceBlock = styled6.span`
5723
4381
  display: flex;
5724
4382
  align-items: center;
5725
4383
  font-size: clamp(1rem, 2.2vw, 1.25rem);
@@ -5866,8 +4524,8 @@ var Header = ({
5866
4524
  parsed.searchParams.set(authReturnParam, nextUrl);
5867
4525
  finalUrl = parsed.toString();
5868
4526
  } catch {
5869
- const delimiter2 = authLoginUrl.includes("?") ? "&" : "?";
5870
- finalUrl = `${authLoginUrl}${delimiter2}${encodeURIComponent(authReturnParam)}=${encodeURIComponent(nextUrl)}`;
4527
+ const delimiter = authLoginUrl.includes("?") ? "&" : "?";
4528
+ finalUrl = `${authLoginUrl}${delimiter}${encodeURIComponent(authReturnParam)}=${encodeURIComponent(nextUrl)}`;
5871
4529
  }
5872
4530
  }
5873
4531
  if (typeof window !== "undefined") {
@@ -6106,7 +4764,7 @@ var Header = ({
6106
4764
  ] });
6107
4765
  };
6108
4766
  Header.displayName = "Header";
6109
- var Overlay = at.div`
4767
+ var Overlay = styled6.div`
6110
4768
  display: ${(props) => props.$isOpen ? "block" : "none"};
6111
4769
  position: fixed;
6112
4770
  top: 0;
@@ -6117,7 +4775,7 @@ var Overlay = at.div`
6117
4775
  backdrop-filter: blur(3px);
6118
4776
  z-index: 999;
6119
4777
  `;
6120
- var MobileOnlyButton = at.button.attrs({ type: "button" })`
4778
+ var MobileOnlyButton = styled6.button.attrs({ type: "button" })`
6121
4779
  display: none;
6122
4780
  background-color: ${(props) => props.$isOpen ? "rgba(240, 185, 11, 0.2)" : "#f0b90b"};
6123
4781
  color: ${(props) => props.$isOpen ? "#ffffff" : "#0b0e11"};
@@ -6148,7 +4806,7 @@ var MobileOnlyButton = at.button.attrs({ type: "button" })`
6148
4806
  display: flex;
6149
4807
  }
6150
4808
  `;
6151
- var HeaderContainer = at.header`
4809
+ var HeaderContainer = styled6.header`
6152
4810
  display: flex;
6153
4811
  justify-content: space-between;
6154
4812
  align-items: center;
@@ -6168,7 +4826,7 @@ var HeaderContainer = at.header`
6168
4826
  padding: 0 1rem;
6169
4827
  }
6170
4828
  `;
6171
- var Logo = at.div`
4829
+ var Logo = styled6.div`
6172
4830
  display: flex;
6173
4831
  align-items: center;
6174
4832
  margin-right: 24px;
@@ -6189,11 +4847,11 @@ var Logo = at.div`
6189
4847
  }
6190
4848
  }
6191
4849
  `;
6192
- var LogoLink = at.a`
4850
+ var LogoLink = styled6.a`
6193
4851
  display: inline-flex;
6194
4852
  align-items: center;
6195
4853
  `;
6196
- var Nav = at.nav`
4854
+ var Nav = styled6.nav`
6197
4855
  display: flex;
6198
4856
  flex-direction: column;
6199
4857
 
@@ -6243,7 +4901,7 @@ var Nav = at.nav`
6243
4901
  }
6244
4902
  }
6245
4903
  `;
6246
- var NavLink = at.a`
4904
+ var NavLink = styled6.a`
6247
4905
  margin: 0 12px;
6248
4906
  color: #eaecef;
6249
4907
  font-weight: 500;
@@ -6302,7 +4960,7 @@ var NavLink = at.a`
6302
4960
  }
6303
4961
  }
6304
4962
  `;
6305
- var Button2 = at.button.attrs({ type: "button" })`
4963
+ var Button2 = styled6.button.attrs({ type: "button" })`
6306
4964
  padding: 0.5rem 1rem;
6307
4965
  border-radius: 6px;
6308
4966
  font-weight: 500;
@@ -6340,7 +4998,7 @@ var Button2 = at.button.attrs({ type: "button" })`
6340
4998
  margin-left: 0.5rem;
6341
4999
  }
6342
5000
  `;
6343
- var UserMenu = at.div`
5001
+ var UserMenu = styled6.div`
6344
5002
  position: relative;
6345
5003
  margin-left: 0.75rem;
6346
5004
  height: 56px;
@@ -6351,7 +5009,7 @@ var UserMenu = at.div`
6351
5009
  margin-left: auto;
6352
5010
  }
6353
5011
  `;
6354
- var UserButton = at.button.attrs({ type: "button" })`
5012
+ var UserButton = styled6.button.attrs({ type: "button" })`
6355
5013
  display: flex;
6356
5014
  align-items: center;
6357
5015
  background: transparent;
@@ -6376,7 +5034,7 @@ var UserButton = at.button.attrs({ type: "button" })`
6376
5034
  transform: ${(props) => props.isOpen ? "rotate(180deg)" : "rotate(0)"};
6377
5035
  }
6378
5036
  `;
6379
- var DropdownMenu = at.div`
5037
+ var DropdownMenu = styled6.div`
6380
5038
  position: absolute;
6381
5039
  top: 100%;
6382
5040
  left: 0;
@@ -6402,7 +5060,7 @@ var DropdownMenu = at.div`
6402
5060
  display: block;
6403
5061
  }
6404
5062
  `;
6405
- var MenuItem = at.div`
5063
+ var MenuItem = styled6.div`
6406
5064
  padding: 0.75rem 1.25rem;
6407
5065
  cursor: pointer;
6408
5066
  transition: all 0.2s ease;
@@ -6422,7 +5080,7 @@ var MenuItem = at.div`
6422
5080
  color: #f6465d;
6423
5081
  }
6424
5082
  `;
6425
- var MobileMenuHeader = at.div`
5083
+ var MobileMenuHeader = styled6.div`
6426
5084
  display: flex;
6427
5085
  justify-content: flex-end;
6428
5086
  align-items: center;
@@ -6431,7 +5089,7 @@ var MobileMenuHeader = at.div`
6431
5089
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
6432
5090
  background: rgba(0, 0, 0, 0.2);
6433
5091
  `;
6434
- var MobileMenuClose = at.button.attrs({ type: "button" })`
5092
+ var MobileMenuClose = styled6.button.attrs({ type: "button" })`
6435
5093
  background: none;
6436
5094
  border: none;
6437
5095
  color: #eaecef;
@@ -6442,7 +5100,7 @@ var MobileMenuClose = at.button.attrs({ type: "button" })`
6442
5100
  align-items: center;
6443
5101
  justify-content: center;
6444
5102
  `;
6445
- var SearchBar = at.div`
5103
+ var SearchBar = styled6.div`
6446
5104
  display: flex;
6447
5105
  align-items: center;
6448
5106
  background: rgba(255, 255, 255, 0.03);
@@ -6478,7 +5136,7 @@ var SearchBar = at.div`
6478
5136
  }
6479
5137
  }
6480
5138
  `;
6481
- var MobileNavItem = at.div`
5139
+ var MobileNavItem = styled6.div`
6482
5140
  display: flex;
6483
5141
  align-items: center;
6484
5142
  padding: 14px 20px;
@@ -6496,10 +5154,10 @@ var MobileNavItem = at.div`
6496
5154
  padding-left: 24px;
6497
5155
  }
6498
5156
  `;
6499
- var PropertySubheader = o.forwardRef(
5157
+ var PropertySubheader = React5.forwardRef(
6500
5158
  ({ className, tabs, activeTabId, onTabChange, actions, ...props }, ref) => {
6501
- const tabsContainerRef = o.useRef(null);
6502
- o.useEffect(() => {
5159
+ const tabsContainerRef = React5.useRef(null);
5160
+ React5.useEffect(() => {
6503
5161
  const container = tabsContainerRef.current;
6504
5162
  if (!container) return;
6505
5163
  const isMobile = window.innerWidth <= 768;
@@ -6689,12 +5347,11 @@ var LoginPopup = ({
6689
5347
  setLoading(false);
6690
5348
  return;
6691
5349
  }
6692
- setView("otp");
6693
- setOtp(Array(OTP_INPUT_LENGTH).fill(""));
6694
5350
  try {
6695
5351
  await onSendEmailCode({ email, isSignUp, handle: normalizedHandle ?? null });
5352
+ setView("otp");
5353
+ setOtp(Array(OTP_INPUT_LENGTH).fill(""));
6696
5354
  } catch (err) {
6697
- setView("email");
6698
5355
  setError(err instanceof Error ? err.message : "Failed to send verification code");
6699
5356
  } finally {
6700
5357
  setLoading(false);
@@ -6910,7 +5567,7 @@ var LoginPopup = ({
6910
5567
  }
6911
5568
  return null;
6912
5569
  };
6913
- var Overlay2 = at.div`
5570
+ var Overlay2 = styled6.div`
6914
5571
  position: fixed;
6915
5572
  top: 0;
6916
5573
  left: 0;
@@ -6933,7 +5590,7 @@ var Overlay2 = at.div`
6933
5590
  }
6934
5591
  }
6935
5592
  `;
6936
- var PopupContainer = at.div`
5593
+ var PopupContainer = styled6.div`
6937
5594
  background-color: var(--color-background, #0a0a0a);
6938
5595
  border: 1px solid rgba(230, 198, 86, 0.3);
6939
5596
  border-radius: var(--border-radius, 12px);
@@ -6960,7 +5617,7 @@ var PopupContainer = at.div`
6960
5617
  max-width: 90%;
6961
5618
  }
6962
5619
  `;
6963
- var CloseButton = at.button`
5620
+ var CloseButton = styled6.button`
6964
5621
  position: absolute;
6965
5622
  top: 1rem;
6966
5623
  right: 1rem;
@@ -6979,7 +5636,7 @@ var CloseButton = at.button`
6979
5636
  color: var(--color-accent, #e6c656);
6980
5637
  }
6981
5638
  `;
6982
- var Title = at.h2`
5639
+ var Title = styled6.h2`
6983
5640
  font-size: 1.75rem;
6984
5641
  font-weight: 600;
6985
5642
  color: var(--color-text, #eaecef);
@@ -6991,21 +5648,21 @@ var Title = at.h2`
6991
5648
  justify-content: center;
6992
5649
  gap: 1rem;
6993
5650
  `;
6994
- var LogoContainer3 = at.div`
5651
+ var LogoContainer3 = styled6.div`
6995
5652
  display: flex;
6996
5653
  justify-content: center;
6997
5654
  margin-bottom: 0.5rem;
6998
5655
  `;
6999
- var LogoImage = at.img`
5656
+ var LogoImage = styled6.img`
7000
5657
  height: 60px;
7001
5658
  `;
7002
- var ButtonsContainer = at.div`
5659
+ var ButtonsContainer = styled6.div`
7003
5660
  display: flex;
7004
5661
  flex-direction: column;
7005
5662
  gap: 1rem;
7006
5663
  margin-bottom: 1.5rem;
7007
5664
  `;
7008
- var LoginButton = at.button`
5665
+ var LoginButton = styled6.button`
7009
5666
  display: flex;
7010
5667
  align-items: center;
7011
5668
  justify-content: center;
@@ -7031,7 +5688,7 @@ var LoginButton = at.button`
7031
5688
  color: var(--color-accent, #e6c656);
7032
5689
  }
7033
5690
  `;
7034
- var Divider = at.div`
5691
+ var Divider = styled6.div`
7035
5692
  display: flex;
7036
5693
  align-items: center;
7037
5694
  margin: 1.5rem 0;
@@ -7044,13 +5701,13 @@ var Divider = at.div`
7044
5701
  background-color: rgba(230, 198, 86, 0.2);
7045
5702
  }
7046
5703
  `;
7047
- var InfoText = at.p`
5704
+ var InfoText = styled6.p`
7048
5705
  color: var(--color-text-secondary, #848e9c);
7049
5706
  font-size: 0.875rem;
7050
5707
  text-align: center;
7051
5708
  line-height: 1.5;
7052
5709
  `;
7053
- var AnnotationContainer = at.div`
5710
+ var AnnotationContainer = styled6.div`
7054
5711
  display: flex;
7055
5712
  flex-direction: column;
7056
5713
  gap: 0.75rem;
@@ -7058,7 +5715,7 @@ var AnnotationContainer = at.div`
7058
5715
  padding-top: 1.5rem;
7059
5716
  border-top: 1px solid rgba(230, 198, 86, 0.2);
7060
5717
  `;
7061
- var Annotation = at.div`
5718
+ var Annotation = styled6.div`
7062
5719
  display: flex;
7063
5720
  align-items: flex-start;
7064
5721
  gap: 1rem;
@@ -7073,22 +5730,22 @@ var Annotation = at.div`
7073
5730
  color: var(--color-accent, #e6c656);
7074
5731
  }
7075
5732
  `;
7076
- var AnnotationText = at.span`
5733
+ var AnnotationText = styled6.span`
7077
5734
  flex: 1;
7078
5735
  line-height: 1.4;
7079
5736
  `;
7080
- var AnnotationLabel = at.span`
5737
+ var AnnotationLabel = styled6.span`
7081
5738
  color: var(--color-text, #eaecef);
7082
5739
  font-weight: 500;
7083
5740
  margin-right: 0.25rem;
7084
5741
  `;
7085
- var EmailFormContainer = at.div`
5742
+ var EmailFormContainer = styled6.div`
7086
5743
  display: flex;
7087
5744
  flex-direction: column;
7088
5745
  gap: 1rem;
7089
5746
  margin-bottom: 1.5rem;
7090
5747
  `;
7091
- var EmailInput = at.input`
5748
+ var EmailInput = styled6.input`
7092
5749
  width: 100%;
7093
5750
  padding: 1rem 1.25rem;
7094
5751
  background-color: var(--color-background-light, #1a1a1a);
@@ -7107,12 +5764,12 @@ var EmailInput = at.input`
7107
5764
  color: var(--color-text-secondary, #848e9c);
7108
5765
  }
7109
5766
  `;
7110
- var OTPContainer = at.div`
5767
+ var OTPContainer = styled6.div`
7111
5768
  display: flex;
7112
5769
  gap: 0.5rem;
7113
5770
  justify-content: center;
7114
5771
  `;
7115
- var OTPInput = at.input`
5772
+ var OTPInput = styled6.input`
7116
5773
  width: 48px;
7117
5774
  height: 56px;
7118
5775
  text-align: center;
@@ -7130,7 +5787,7 @@ var OTPInput = at.input`
7130
5787
  box-shadow: 0 0 0 2px rgba(230, 198, 86, 0.2);
7131
5788
  }
7132
5789
  `;
7133
- var SubmitButton = at.button`
5790
+ var SubmitButton = styled6.button`
7134
5791
  width: 100%;
7135
5792
  padding: 1rem;
7136
5793
  background-color: var(--color-accent, #e6c656);
@@ -7153,7 +5810,7 @@ var SubmitButton = at.button`
7153
5810
  cursor: not-allowed;
7154
5811
  }
7155
5812
  `;
7156
- var BackButton = at.button`
5813
+ var BackButton = styled6.button`
7157
5814
  background: none;
7158
5815
  border: none;
7159
5816
  color: var(--color-text-secondary, #848e9c);
@@ -7168,7 +5825,7 @@ var BackButton = at.button`
7168
5825
  color: var(--color-accent, #e6c656);
7169
5826
  }
7170
5827
  `;
7171
- var StatusMessage = at.p`
5828
+ var StatusMessage = styled6.p`
7172
5829
  color: ${(props) => props.$error ? "#f6465d" : "#0ecb81"};
7173
5830
  font-size: 0.875rem;
7174
5831
  text-align: center;
@@ -7236,7 +5893,7 @@ var MiniLiveFeed = () => {
7236
5893
  const initial = Array.from({ length: 5 }, generatePurchase);
7237
5894
  setPurchases(initial);
7238
5895
  const interval = setInterval(() => {
7239
- setPurchases((prev2) => [generatePurchase(), ...prev2.slice(0, 5)]);
5896
+ setPurchases((prev) => [generatePurchase(), ...prev.slice(0, 5)]);
7240
5897
  }, 2e3 + Math.random() * 2e3);
7241
5898
  return () => clearInterval(interval);
7242
5899
  }, []);
@@ -7352,7 +6009,7 @@ var MiniLiveFeed = () => {
7352
6009
  );
7353
6010
  };
7354
6011
  LoginPopup.displayName = "LoginPopup";
7355
- var PropertyCompareBar = o.forwardRef(
6012
+ var PropertyCompareBar = React5.forwardRef(
7356
6013
  ({
7357
6014
  className,
7358
6015
  addresses,
@@ -7363,7 +6020,7 @@ var PropertyCompareBar = o.forwardRef(
7363
6020
  price,
7364
6021
  ...props
7365
6022
  }, ref) => {
7366
- const normalizedAddresses = o.useMemo(() => {
6023
+ const normalizedAddresses = React5.useMemo(() => {
7367
6024
  return addresses.map(
7368
6025
  (option) => typeof option === "string" ? { id: option, label: option } : option
7369
6026
  );
@@ -7371,11 +6028,11 @@ var PropertyCompareBar = o.forwardRef(
7371
6028
  const hasAddresses = normalizedAddresses.length > 0;
7372
6029
  const firstAddressId = normalizedAddresses[0]?.id;
7373
6030
  const isControlled = selectedAddressId !== void 0;
7374
- const [internalSelectedId, setInternalSelectedId] = o.useState(
6031
+ const [internalSelectedId, setInternalSelectedId] = React5.useState(
7375
6032
  () => isControlled ? void 0 : firstAddressId
7376
6033
  );
7377
6034
  const resolvedSelectedId = isControlled ? selectedAddressId : internalSelectedId;
7378
- o.useEffect(() => {
6035
+ React5.useEffect(() => {
7379
6036
  if (!isControlled) {
7380
6037
  setInternalSelectedId((current) => {
7381
6038
  if (current != null && normalizedAddresses.some((option) => option.id === current)) {
@@ -7386,9 +6043,9 @@ var PropertyCompareBar = o.forwardRef(
7386
6043
  }
7387
6044
  }, [firstAddressId, isControlled, normalizedAddresses]);
7388
6045
  const selectedOption = normalizedAddresses.find((option) => option.id === resolvedSelectedId) ?? normalizedAddresses[0];
7389
- const [isDropdownOpen, setIsDropdownOpen] = o.useState(false);
7390
- const dropdownRef = o.useRef(null);
7391
- o.useEffect(() => {
6046
+ const [isDropdownOpen, setIsDropdownOpen] = React5.useState(false);
6047
+ const dropdownRef = React5.useRef(null);
6048
+ React5.useEffect(() => {
7392
6049
  if (!isDropdownOpen) return;
7393
6050
  const handleClick = (event) => {
7394
6051
  if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {
@@ -7458,7 +6115,7 @@ var PropertyCompareBar = o.forwardRef(
7458
6115
  formattedPropertyChange ? /* @__PURE__ */ jsx(PropertyValueChange, { $isPositive: propertyValue?.change != null ? propertyValue.change >= 0 : void 0, children: formattedPropertyChange }) : null
7459
6116
  ] }) : null;
7460
6117
  return /* @__PURE__ */ jsxs(PropertySelectorContainer, { ref, className, $variant: propertyValueVariant, ...props, children: [
7461
- /* @__PURE__ */ jsxs(PropertySelector, { ref: dropdownRef, onClick: () => hasAddresses && setIsDropdownOpen((prev2) => !prev2), children: [
6118
+ /* @__PURE__ */ jsxs(PropertySelector, { ref: dropdownRef, onClick: () => hasAddresses && setIsDropdownOpen((prev) => !prev), children: [
7462
6119
  /* @__PURE__ */ jsxs(PropertyAddress, { children: [
7463
6120
  selectedOption ? selectedOption.label : hasAddresses ? "Select address" : "No addresses available",
7464
6121
  /* @__PURE__ */ jsx(
@@ -7495,7 +6152,7 @@ var PropertyCompareBar = o.forwardRef(
7495
6152
  }
7496
6153
  );
7497
6154
  PropertyCompareBar.displayName = "PropertyCompareBar";
7498
- var PropertySelectorContainer = at.div`
6155
+ var PropertySelectorContainer = styled6.div`
7499
6156
  display: flex;
7500
6157
  align-items: center;
7501
6158
  justify-content: space-between;
@@ -7522,7 +6179,7 @@ var PropertySelectorContainer = at.div`
7522
6179
  @media (max-width: 600px) {
7523
6180
  width: 100%;
7524
6181
 
7525
- ${({ $variant }) => $variant === "pill" ? rt`
6182
+ ${({ $variant }) => $variant === "pill" ? css`
7526
6183
  display: grid;
7527
6184
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr) minmax(0, 1fr);
7528
6185
  gap: 0.35rem;
@@ -7541,7 +6198,7 @@ var PropertySelectorContainer = at.div`
7541
6198
  justify-self: end;
7542
6199
  text-align: right;
7543
6200
  }
7544
- ` : rt`
6201
+ ` : css`
7545
6202
  flex-direction: row;
7546
6203
  align-items: center;
7547
6204
  justify-content: space-between;
@@ -7549,7 +6206,7 @@ var PropertySelectorContainer = at.div`
7549
6206
  `};
7550
6207
  }
7551
6208
  `;
7552
- var PropertySelector = at.div`
6209
+ var PropertySelector = styled6.div`
7553
6210
  position: relative;
7554
6211
  display: flex;
7555
6212
  align-items: center;
@@ -7563,7 +6220,7 @@ var PropertySelector = at.div`
7563
6220
  }
7564
6221
  }
7565
6222
  `;
7566
- var PropertyAddress = at.div`
6223
+ var PropertyAddress = styled6.div`
7567
6224
  font-size: 1.125rem;
7568
6225
  font-weight: 600;
7569
6226
  display: flex;
@@ -7584,7 +6241,7 @@ var PropertyAddress = at.div`
7584
6241
  white-space: normal;
7585
6242
  }
7586
6243
  `;
7587
- var PropertySelectorDropdown = at.div`
6244
+ var PropertySelectorDropdown = styled6.div`
7588
6245
  position: absolute;
7589
6246
  top: 100%;
7590
6247
  left: 0;
@@ -7597,7 +6254,7 @@ var PropertySelectorDropdown = at.div`
7597
6254
  overflow: hidden;
7598
6255
  display: ${(props) => props.$isOpen ? "block" : "none"};
7599
6256
  `;
7600
- var PropertySelectorOption = at.div`
6257
+ var PropertySelectorOption = styled6.div`
7601
6258
  padding: 0.75rem 1rem;
7602
6259
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
7603
6260
  cursor: pointer;
@@ -7611,17 +6268,17 @@ var PropertySelectorOption = at.div`
7611
6268
  border-bottom: none;
7612
6269
  }
7613
6270
  `;
7614
- var PropertySelectorName = at.div`
6271
+ var PropertySelectorName = styled6.div`
7615
6272
  font-weight: 600;
7616
6273
  `;
7617
- var PropertyValueBlock = at.div`
6274
+ var PropertyValueBlock = styled6.div`
7618
6275
  display: flex;
7619
6276
  align-items: center;
7620
6277
  gap: 0.5rem;
7621
6278
  margin-left: 1rem;
7622
6279
  white-space: nowrap;
7623
6280
 
7624
- ${({ $variant }) => $variant === "card" && rt`
6281
+ ${({ $variant }) => $variant === "card" && css`
7625
6282
  margin-left: auto;
7626
6283
  flex-direction: row;
7627
6284
  align-items: center;
@@ -7648,7 +6305,7 @@ var PropertyValueBlock = at.div`
7648
6305
  }
7649
6306
  `}
7650
6307
 
7651
- ${({ $variant }) => $variant === "pill" && rt`
6308
+ ${({ $variant }) => $variant === "pill" && css`
7652
6309
  margin-left: auto;
7653
6310
  margin-right: 1rem;
7654
6311
  background: #191919;
@@ -7682,7 +6339,7 @@ var PropertyValueBlock = at.div`
7682
6339
  white-space: normal;
7683
6340
  }
7684
6341
  `;
7685
- var PropertyValueLabel = at.span`
6342
+ var PropertyValueLabel = styled6.span`
7686
6343
  font-size: 0.7rem;
7687
6344
  color: var(--color-text-secondary, rgba(255, 255, 255, 0.6));
7688
6345
  text-transform: uppercase;
@@ -7693,7 +6350,7 @@ var PropertyValueLabel = at.span`
7693
6350
  letter-spacing: 0.4px;
7694
6351
  }
7695
6352
  `;
7696
- var PropertyValueAmount = at.span`
6353
+ var PropertyValueAmount = styled6.span`
7697
6354
  font-size: 1.1rem;
7698
6355
  font-weight: 600;
7699
6356
  color: #fff;
@@ -7702,7 +6359,7 @@ var PropertyValueAmount = at.span`
7702
6359
  font-size: 0.95rem;
7703
6360
  }
7704
6361
  `;
7705
- var PropertyValueChange = at.span`
6362
+ var PropertyValueChange = styled6.span`
7706
6363
  font-size: 0.75rem;
7707
6364
  font-weight: 500;
7708
6365
  color: ${(props) => props.$isPositive == null ? "var(--color-text-secondary, rgba(255, 255, 255, 0.6))" : props.$isPositive ? "var(--color-positive, #0ecb81)" : "var(--color-negative, #f6465d)"};
@@ -7711,10 +6368,10 @@ var PropertyValueChange = at.span`
7711
6368
  font-size: 0.65rem;
7712
6369
  }
7713
6370
  `;
7714
- var PriceBlock2 = at.div`
6371
+ var PriceBlock2 = styled6.div`
7715
6372
  display: none;
7716
6373
 
7717
- ${({ $variant }) => $variant === "pill" && rt`
6374
+ ${({ $variant }) => $variant === "pill" && css`
7718
6375
  @media (max-width: 600px) {
7719
6376
  display: flex;
7720
6377
  flex: none;
@@ -7726,13 +6383,13 @@ var PriceBlock2 = at.div`
7726
6383
  }
7727
6384
  `}
7728
6385
  `;
7729
- var PriceAmount = at.span`
6386
+ var PriceAmount = styled6.span`
7730
6387
  font-size: 1.6rem;
7731
6388
  font-weight: 600;
7732
6389
  color: #fff;
7733
6390
  letter-spacing: 0.2px;
7734
6391
  `;
7735
- var PriceChange = at.span`
6392
+ var PriceChange = styled6.span`
7736
6393
  font-size: 0.85rem;
7737
6394
  font-weight: 500;
7738
6395
  display: inline-flex;