kaleido-ui 0.1.14 → 0.1.15

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.
@@ -5207,7 +5207,8 @@ function DepositGeneratedView({
5207
5207
  setAddress,
5208
5208
  setRecipientId,
5209
5209
  setAmount,
5210
- setInvoiceStatus
5210
+ setInvoiceStatus,
5211
+ onRegenerate
5211
5212
  }) {
5212
5213
  return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "space-y-3 animate-in fade-in zoom-in-95 duration-300", children: [
5213
5214
  (network === "lightning" || network === "arkade" && arkSubMode === "ark") && isBtc && /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "flex flex-col gap-1.5 rounded-xl border border-white/8 bg-white/3 p-2.5", children: [
@@ -5279,7 +5280,10 @@ function DepositGeneratedView({
5279
5280
  }
5280
5281
  ),
5281
5282
  /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(QrCode, { value: address, size: 188 }),
5282
- isInvoicePaid && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(PaidOverlay, {})
5283
+ isInvoicePaid && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(PaidOverlay, {}),
5284
+ loading && !isInvoicePaid && // Loading scrim — sits over the QR while a fresh address/invoice
5285
+ // is being fetched (e.g. after the New Address button).
5286
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "absolute inset-0 flex items-center justify-center rounded-2xl bg-white/80 backdrop-blur-sm", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "material-symbols-outlined animate-spin text-icon-3xl text-network-bitcoin", children: "progress_activity" }) })
5283
5287
  ]
5284
5288
  }
5285
5289
  ),
@@ -5352,22 +5356,31 @@ function DepositGeneratedView({
5352
5356
  ]
5353
5357
  }
5354
5358
  ),
5355
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "flex justify-center pt-1", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(
5359
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "flex justify-center pt-1", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
5356
5360
  "button",
5357
5361
  {
5358
5362
  type: "button",
5363
+ "aria-label": `New ${network === "lightning" ? "invoice" : "address"}`,
5364
+ title: `New ${network === "lightning" ? "invoice" : "address"}`,
5365
+ disabled: loading,
5359
5366
  onClick: () => {
5367
+ if (onRegenerate) {
5368
+ void onRegenerate();
5369
+ return;
5370
+ }
5360
5371
  setAddress("");
5361
5372
  setRecipientId("");
5362
5373
  setAmount("");
5363
5374
  setInvoiceStatus(null);
5364
5375
  },
5365
- className: "flex items-center justify-center gap-1.5 rounded-xl bg-primary/15 px-5 py-3 text-xs font-bold text-primary transition-all hover:bg-primary/25 active:scale-[0.98]",
5366
- children: [
5367
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "material-symbols-outlined text-icon-sm", children: "refresh" }),
5368
- "New ",
5369
- network === "lightning" ? "Invoice" : "Address"
5370
- ]
5376
+ className: "flex size-10 items-center justify-center rounded-full bg-primary/15 text-primary transition-all hover:bg-primary/25 active:scale-[0.98] disabled:opacity-50",
5377
+ children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
5378
+ "span",
5379
+ {
5380
+ className: cn("material-symbols-outlined text-icon-md", loading && "animate-spin"),
5381
+ children: "refresh"
5382
+ }
5383
+ )
5371
5384
  }
5372
5385
  ) })
5373
5386
  ] });
@@ -1142,8 +1142,15 @@ interface DepositGeneratedViewProps {
1142
1142
  * compatibility — it is no longer invoked.
1143
1143
  */
1144
1144
  handleDone?: () => void;
1145
+ /**
1146
+ * Optional regenerate callback. When provided, the "New Address" button
1147
+ * calls it directly (instead of just clearing local state via the
1148
+ * setters above). Required for flows whose auto-generation effect does
1149
+ * not refire on cleared state — e.g. RGB on-chain.
1150
+ */
1151
+ onRegenerate?: () => Promise<void> | void;
1145
1152
  }
1146
- declare function DepositGeneratedView({ network, net, isBtc, address, addressLabel, recipientId, arkSubMode, invoiceStatus, isInvoicePending, isInvoicePaid, isInvoiceFailedOrExpired, amount, handleAmountChange, loading, copied, copyToClipboard, getUnitLabel, selectedAsset, maxDepositAmount, setAddress, setRecipientId, setAmount, setInvoiceStatus, }: DepositGeneratedViewProps): react_jsx_runtime.JSX.Element;
1153
+ declare function DepositGeneratedView({ network, net, isBtc, address, addressLabel, recipientId, arkSubMode, invoiceStatus, isInvoicePending, isInvoicePaid, isInvoiceFailedOrExpired, amount, handleAmountChange, loading, copied, copyToClipboard, getUnitLabel, selectedAsset, maxDepositAmount, setAddress, setRecipientId, setAmount, setInvoiceStatus, onRegenerate, }: DepositGeneratedViewProps): react_jsx_runtime.JSX.Element;
1147
1154
 
1148
1155
  interface DepositPreGenerationAsset {
1149
1156
  ticker?: string;
@@ -1142,8 +1142,15 @@ interface DepositGeneratedViewProps {
1142
1142
  * compatibility — it is no longer invoked.
1143
1143
  */
1144
1144
  handleDone?: () => void;
1145
+ /**
1146
+ * Optional regenerate callback. When provided, the "New Address" button
1147
+ * calls it directly (instead of just clearing local state via the
1148
+ * setters above). Required for flows whose auto-generation effect does
1149
+ * not refire on cleared state — e.g. RGB on-chain.
1150
+ */
1151
+ onRegenerate?: () => Promise<void> | void;
1145
1152
  }
1146
- declare function DepositGeneratedView({ network, net, isBtc, address, addressLabel, recipientId, arkSubMode, invoiceStatus, isInvoicePending, isInvoicePaid, isInvoiceFailedOrExpired, amount, handleAmountChange, loading, copied, copyToClipboard, getUnitLabel, selectedAsset, maxDepositAmount, setAddress, setRecipientId, setAmount, setInvoiceStatus, }: DepositGeneratedViewProps): react_jsx_runtime.JSX.Element;
1153
+ declare function DepositGeneratedView({ network, net, isBtc, address, addressLabel, recipientId, arkSubMode, invoiceStatus, isInvoicePending, isInvoicePaid, isInvoiceFailedOrExpired, amount, handleAmountChange, loading, copied, copyToClipboard, getUnitLabel, selectedAsset, maxDepositAmount, setAddress, setRecipientId, setAmount, setInvoiceStatus, onRegenerate, }: DepositGeneratedViewProps): react_jsx_runtime.JSX.Element;
1147
1154
 
1148
1155
  interface DepositPreGenerationAsset {
1149
1156
  ticker?: string;
package/dist/web/index.js CHANGED
@@ -5052,7 +5052,8 @@ function DepositGeneratedView({
5052
5052
  setAddress,
5053
5053
  setRecipientId,
5054
5054
  setAmount,
5055
- setInvoiceStatus
5055
+ setInvoiceStatus,
5056
+ onRegenerate
5056
5057
  }) {
5057
5058
  return /* @__PURE__ */ jsxs43("div", { className: "space-y-3 animate-in fade-in zoom-in-95 duration-300", children: [
5058
5059
  (network === "lightning" || network === "arkade" && arkSubMode === "ark") && isBtc && /* @__PURE__ */ jsxs43("div", { className: "flex flex-col gap-1.5 rounded-xl border border-white/8 bg-white/3 p-2.5", children: [
@@ -5124,7 +5125,10 @@ function DepositGeneratedView({
5124
5125
  }
5125
5126
  ),
5126
5127
  /* @__PURE__ */ jsx56(QrCode, { value: address, size: 188 }),
5127
- isInvoicePaid && /* @__PURE__ */ jsx56(PaidOverlay, {})
5128
+ isInvoicePaid && /* @__PURE__ */ jsx56(PaidOverlay, {}),
5129
+ loading && !isInvoicePaid && // Loading scrim — sits over the QR while a fresh address/invoice
5130
+ // is being fetched (e.g. after the New Address button).
5131
+ /* @__PURE__ */ jsx56("div", { className: "absolute inset-0 flex items-center justify-center rounded-2xl bg-white/80 backdrop-blur-sm", children: /* @__PURE__ */ jsx56("span", { className: "material-symbols-outlined animate-spin text-icon-3xl text-network-bitcoin", children: "progress_activity" }) })
5128
5132
  ]
5129
5133
  }
5130
5134
  ),
@@ -5197,22 +5201,31 @@ function DepositGeneratedView({
5197
5201
  ]
5198
5202
  }
5199
5203
  ),
5200
- /* @__PURE__ */ jsx56("div", { className: "flex justify-center pt-1", children: /* @__PURE__ */ jsxs43(
5204
+ /* @__PURE__ */ jsx56("div", { className: "flex justify-center pt-1", children: /* @__PURE__ */ jsx56(
5201
5205
  "button",
5202
5206
  {
5203
5207
  type: "button",
5208
+ "aria-label": `New ${network === "lightning" ? "invoice" : "address"}`,
5209
+ title: `New ${network === "lightning" ? "invoice" : "address"}`,
5210
+ disabled: loading,
5204
5211
  onClick: () => {
5212
+ if (onRegenerate) {
5213
+ void onRegenerate();
5214
+ return;
5215
+ }
5205
5216
  setAddress("");
5206
5217
  setRecipientId("");
5207
5218
  setAmount("");
5208
5219
  setInvoiceStatus(null);
5209
5220
  },
5210
- className: "flex items-center justify-center gap-1.5 rounded-xl bg-primary/15 px-5 py-3 text-xs font-bold text-primary transition-all hover:bg-primary/25 active:scale-[0.98]",
5211
- children: [
5212
- /* @__PURE__ */ jsx56("span", { className: "material-symbols-outlined text-icon-sm", children: "refresh" }),
5213
- "New ",
5214
- network === "lightning" ? "Invoice" : "Address"
5215
- ]
5221
+ className: "flex size-10 items-center justify-center rounded-full bg-primary/15 text-primary transition-all hover:bg-primary/25 active:scale-[0.98] disabled:opacity-50",
5222
+ children: /* @__PURE__ */ jsx56(
5223
+ "span",
5224
+ {
5225
+ className: cn("material-symbols-outlined text-icon-md", loading && "animate-spin"),
5226
+ children: "refresh"
5227
+ }
5228
+ )
5216
5229
  }
5217
5230
  ) })
5218
5231
  ] });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kaleido-ui",
3
- "version": "0.1.14",
3
+ "version": "0.1.15",
4
4
  "description": "KaleidoSwap shared UI library — design tokens, web components (Tailwind + Radix), and React Native components extending WDK UI Kit",
5
5
  "license": "MIT",
6
6
  "type": "module",