@retinalabsllc/zairusjs 0.9.5 → 0.9.7

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.d.mts CHANGED
@@ -906,6 +906,7 @@ interface UniversalDeveloperSettingsProps {
906
906
  initialPublicKey: string;
907
907
  initialWebhookUrl: string;
908
908
  isReadOnly?: boolean;
909
+ isLoading?: boolean;
909
910
  onGenerateKeys: () => Promise<{
910
911
  success: boolean;
911
912
  data?: {
package/dist/index.d.ts CHANGED
@@ -906,6 +906,7 @@ interface UniversalDeveloperSettingsProps {
906
906
  initialPublicKey: string;
907
907
  initialWebhookUrl: string;
908
908
  isReadOnly?: boolean;
909
+ isLoading?: boolean;
909
910
  onGenerateKeys: () => Promise<{
910
911
  success: boolean;
911
912
  data?: {
package/dist/index.js CHANGED
@@ -547,7 +547,7 @@ function AuthFormInner({
547
547
  ))))), /* @__PURE__ */ import_react5.default.createElement("div", { className: "flex flex-col items-center gap-1.5 animate-in slide-in-from-bottom-3 duration-500 delay-100" }, /* @__PURE__ */ import_react5.default.createElement("div", { className: "flex items-center gap-2.5 px-3 py-1.5 bg-white rounded-full" }, /* @__PURE__ */ import_react5.default.createElement("div", { className: "w-5 h-5 bg-neutral-100 rounded-full flex items-center justify-center shrink-0 overflow-hidden relative" }, /* @__PURE__ */ import_react5.default.createElement(
548
548
  "img",
549
549
  {
550
- src: "https://retinalabs.company/assets/images/retina.avif",
550
+ src: "https://retinalabs.company/assets/images/retina_.avif",
551
551
  alt: "Retina Labs Logo",
552
552
  className: "w-full h-full object-cover rounded-full",
553
553
  onError: (e) => {
@@ -903,9 +903,9 @@ var FeatureScroll = ({ tagline, headline, features }) => {
903
903
  }
904
904
  };
905
905
  const bgImages = [
906
- "/assets/images/bg_7.avif",
907
- "/assets/images/bg_6.avif",
908
- "/assets/images/bg_1.avif"
906
+ "https://retinalabs.company/assets/images/bg_7.avif",
907
+ "https://retinalabs.company/assets/images/bg_6.avif",
908
+ "https://retinalabs.company/assets/images/bg_1.avif"
909
909
  ];
910
910
  return /* @__PURE__ */ import_react12.default.createElement("section", { className: "py-24 w-full flex justify-center relative z-10 overflow-hidden" }, /* @__PURE__ */ import_react12.default.createElement("div", { className: "max-w-6xl w-full flex flex-col px-4 md:px-8" }, /* @__PURE__ */ import_react12.default.createElement("div", { className: "flex flex-col md:flex-row md:items-end justify-between gap-6 mb-12" }, /* @__PURE__ */ import_react12.default.createElement("div", { className: "relative z-10 text-left" }, /* @__PURE__ */ import_react12.default.createElement("span", { className: "text-[10px] tracking-[0.4em] text-neutral-500 block mb-4" }, tagline), /* @__PURE__ */ import_react12.default.createElement("h2", { className: " text-3xl tracking-tight text-black leading-[1.05]" }, headline)), /* @__PURE__ */ import_react12.default.createElement("div", { className: "hidden md:flex items-center gap-3" }, /* @__PURE__ */ import_react12.default.createElement(
911
911
  "button",
@@ -3829,10 +3829,12 @@ var import_react_hot_toast8 = require("react-hot-toast");
3829
3829
  var import_react70 = require("@hugeicons/react");
3830
3830
  var import_core_free_icons24 = require("@hugeicons/core-free-icons");
3831
3831
  var ButtonSpinner5 = () => /* @__PURE__ */ import_react69.default.createElement(import_react70.HugeiconsIcon, { icon: import_core_free_icons24.Loading03Icon, size: 16, className: "animate-spin text-current" });
3832
+ var PageSpinner5 = () => /* @__PURE__ */ import_react69.default.createElement("div", { className: "flex justify-center items-center py-12 w-full" }, /* @__PURE__ */ import_react69.default.createElement(import_react70.HugeiconsIcon, { icon: import_core_free_icons24.Loading03Icon, size: 32, className: "animate-spin text-black" }));
3832
3833
  var UniversalDeveloperSettings = ({
3833
3834
  initialPublicKey,
3834
3835
  initialWebhookUrl,
3835
3836
  isReadOnly = false,
3837
+ isLoading = false,
3836
3838
  onGenerateKeys,
3837
3839
  onSaveWebhook
3838
3840
  }) => {
@@ -3901,7 +3903,7 @@ AUDDITUR_SECRET_KEY="${secKey}"
3901
3903
  };
3902
3904
  const hasWebhookChanges = webhookUrl !== initialWebhookUrl;
3903
3905
  const isWebhookSaveDisabled = isSavingWebhook || isReadOnly || !hasWebhookChanges;
3904
- return /* @__PURE__ */ import_react69.default.createElement("div", { className: "flex flex-col max-w-3xl rounded-2xl p-6 bg-white gap-8 animate-in fade-in duration-300 min-h-full" }, /* @__PURE__ */ import_react69.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react69.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-3 sm:gap-4" }, /* @__PURE__ */ import_react69.default.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ import_react69.default.createElement("h1", { className: " text-xl text-black mb-1 truncate tracking-tight" }, "Developer Settings"), /* @__PURE__ */ import_react69.default.createElement("p", { className: "text-xs text-neutral-500 truncate" }, "Manage your API credentials and webhook integrations.")), isReadOnly && /* @__PURE__ */ import_react69.default.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-50 text-neutral-500 rounded-full " }, /* @__PURE__ */ import_react69.default.createElement(import_react70.HugeiconsIcon, { icon: import_core_free_icons24.CircleLock02Icon, size: 18, className: "text-current" }))), /* @__PURE__ */ import_react69.default.createElement("div", { className: "w-full max-w-2xl flex flex-col gap-12" }, /* @__PURE__ */ import_react69.default.createElement("div", { className: "flex flex-col gap-6" }, /* @__PURE__ */ import_react69.default.createElement("div", { className: "space-y-2 min-w-0" }, /* @__PURE__ */ import_react69.default.createElement(
3906
+ return /* @__PURE__ */ import_react69.default.createElement("div", { className: "flex flex-col max-w-3xl rounded-2xl p-6 bg-white gap-8 animate-in fade-in duration-300 min-h-full" }, /* @__PURE__ */ import_react69.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react69.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-3 sm:gap-4" }, /* @__PURE__ */ import_react69.default.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ import_react69.default.createElement("h1", { className: " text-xl text-black mb-1 truncate tracking-tight" }, "Developer Settings"), /* @__PURE__ */ import_react69.default.createElement("p", { className: "text-xs text-neutral-500 truncate" }, "Manage your API credentials and webhook integrations.")), isReadOnly && /* @__PURE__ */ import_react69.default.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-50 text-neutral-500 rounded-full flex items-center justify-center shrink-0" }, /* @__PURE__ */ import_react69.default.createElement(import_react70.HugeiconsIcon, { icon: import_core_free_icons24.CircleLock02Icon, size: 18, className: "text-current" }))), isLoading ? /* @__PURE__ */ import_react69.default.createElement(PageSpinner5, null) : /* @__PURE__ */ import_react69.default.createElement("div", { className: "w-full max-w-2xl flex flex-col gap-12" }, /* @__PURE__ */ import_react69.default.createElement("div", { className: "flex flex-col gap-6" }, /* @__PURE__ */ import_react69.default.createElement("div", { className: "space-y-2 min-w-0" }, /* @__PURE__ */ import_react69.default.createElement(
3905
3907
  TextInput,
3906
3908
  {
3907
3909
  label: "Public Key",
@@ -3949,12 +3951,12 @@ AUDDITUR_SECRET_KEY="${secKey}"
3949
3951
  className: "min-w-32 w-full sm:w-auto"
3950
3952
  },
3951
3953
  "Save Webhook"
3952
- ))))), isRollModalOpen && !isReadOnly && /* @__PURE__ */ import_react69.default.createElement("div", { className: "fixed inset-0 z-110 flex items-center justify-center p-4" }, /* @__PURE__ */ import_react69.default.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => !isGenerating && setIsRollModalOpen(false) }), /* @__PURE__ */ import_react69.default.createElement("div", { className: "relative w-72 bg-white shadow-2xl rounded-2xl flex flex-col items-center overflow-hidden animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react69.default.createElement("div", { className: "p-6 text-center w-full" }, /* @__PURE__ */ import_react69.default.createElement("h3", { className: " text-[17px] text-black tracking-tight mb-1" }, "Roll API Keys"), /* @__PURE__ */ import_react69.default.createElement("p", { className: "text-[12px] text-neutral-500 leading-snug mt-2" }, "Are you sure you want to roll your keys? This will permanently invalidate your current secret key and active MCP tokens.")), /* @__PURE__ */ import_react69.default.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ import_react69.default.createElement(
3954
+ ))))), isRollModalOpen && !isReadOnly && /* @__PURE__ */ import_react69.default.createElement("div", { className: "fixed inset-0 z-110 flex items-center justify-center p-4" }, /* @__PURE__ */ import_react69.default.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => !isGenerating && setIsRollModalOpen(false) }), /* @__PURE__ */ import_react69.default.createElement("div", { className: "relative w-72 bg-white shadow-2xl rounded-2xl flex flex-col items-center overflow-hidden animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react69.default.createElement("div", { className: "p-6 text-center w-full" }, /* @__PURE__ */ import_react69.default.createElement("h3", { className: " text-[17px] text-black tracking-tight mb-1" }, "Roll API Keys"), /* @__PURE__ */ import_react69.default.createElement("p", { className: "text-[12px] text-neutral-500 leading-snug mt-2" }, "Are you sure you want to roll your keys? This will permanently invalidate your current secret key and active MCP tokens.")), /* @__PURE__ */ import_react69.default.createElement("div", { className: "w-full flex border-t border-neutral-100" }, /* @__PURE__ */ import_react69.default.createElement(
3953
3955
  "button",
3954
3956
  {
3955
3957
  onClick: () => setIsRollModalOpen(false),
3956
3958
  disabled: isGenerating,
3957
- className: "flex-1 py-2 text-[13px] text-neutral-600 hover:bg-neutral-50 transition-colors disabled:opacity-50 outline-none"
3959
+ className: "flex-1 py-3 text-[13px] text-neutral-600 hover:bg-neutral-50 transition-colors disabled:opacity-50 outline-none border-r border-neutral-100"
3958
3960
  },
3959
3961
  "Cancel"
3960
3962
  ), /* @__PURE__ */ import_react69.default.createElement(
@@ -3962,7 +3964,7 @@ AUDDITUR_SECRET_KEY="${secKey}"
3962
3964
  {
3963
3965
  onClick: handleGenerateKeys,
3964
3966
  disabled: isGenerating,
3965
- className: "flex-1 py-2 text-[13px] text-red-600 hover:bg-neutral-50 transition-colors disabled:opacity-50 flex justify-center outline-none"
3967
+ className: "flex-1 py-3 text-[13px] text-red-600 hover:bg-neutral-50 transition-colors disabled:opacity-50 flex justify-center items-center outline-none"
3966
3968
  },
3967
3969
  isGenerating ? /* @__PURE__ */ import_react69.default.createElement(ButtonSpinner5, null) : "Roll Keys"
3968
3970
  )))));
package/dist/index.mjs CHANGED
@@ -467,7 +467,7 @@ function AuthFormInner({
467
467
  ))))), /* @__PURE__ */ React4.createElement("div", { className: "flex flex-col items-center gap-1.5 animate-in slide-in-from-bottom-3 duration-500 delay-100" }, /* @__PURE__ */ React4.createElement("div", { className: "flex items-center gap-2.5 px-3 py-1.5 bg-white rounded-full" }, /* @__PURE__ */ React4.createElement("div", { className: "w-5 h-5 bg-neutral-100 rounded-full flex items-center justify-center shrink-0 overflow-hidden relative" }, /* @__PURE__ */ React4.createElement(
468
468
  "img",
469
469
  {
470
- src: "https://retinalabs.company/assets/images/retina.avif",
470
+ src: "https://retinalabs.company/assets/images/retina_.avif",
471
471
  alt: "Retina Labs Logo",
472
472
  className: "w-full h-full object-cover rounded-full",
473
473
  onError: (e) => {
@@ -823,9 +823,9 @@ var FeatureScroll = ({ tagline, headline, features }) => {
823
823
  }
824
824
  };
825
825
  const bgImages = [
826
- "/assets/images/bg_7.avif",
827
- "/assets/images/bg_6.avif",
828
- "/assets/images/bg_1.avif"
826
+ "https://retinalabs.company/assets/images/bg_7.avif",
827
+ "https://retinalabs.company/assets/images/bg_6.avif",
828
+ "https://retinalabs.company/assets/images/bg_1.avif"
829
829
  ];
830
830
  return /* @__PURE__ */ React9.createElement("section", { className: "py-24 w-full flex justify-center relative z-10 overflow-hidden" }, /* @__PURE__ */ React9.createElement("div", { className: "max-w-6xl w-full flex flex-col px-4 md:px-8" }, /* @__PURE__ */ React9.createElement("div", { className: "flex flex-col md:flex-row md:items-end justify-between gap-6 mb-12" }, /* @__PURE__ */ React9.createElement("div", { className: "relative z-10 text-left" }, /* @__PURE__ */ React9.createElement("span", { className: "text-[10px] tracking-[0.4em] text-neutral-500 block mb-4" }, tagline), /* @__PURE__ */ React9.createElement("h2", { className: " text-3xl tracking-tight text-black leading-[1.05]" }, headline)), /* @__PURE__ */ React9.createElement("div", { className: "hidden md:flex items-center gap-3" }, /* @__PURE__ */ React9.createElement(
831
831
  "button",
@@ -3791,10 +3791,12 @@ import { toast as toast7 } from "react-hot-toast";
3791
3791
  import { HugeiconsIcon as HugeiconsIcon28 } from "@hugeicons/react";
3792
3792
  import { Loading03Icon as Loading03Icon13, CircleLock02Icon as CircleLock02Icon5 } from "@hugeicons/core-free-icons";
3793
3793
  var ButtonSpinner5 = () => /* @__PURE__ */ React42.createElement(HugeiconsIcon28, { icon: Loading03Icon13, size: 16, className: "animate-spin text-current" });
3794
+ var PageSpinner5 = () => /* @__PURE__ */ React42.createElement("div", { className: "flex justify-center items-center py-12 w-full" }, /* @__PURE__ */ React42.createElement(HugeiconsIcon28, { icon: Loading03Icon13, size: 32, className: "animate-spin text-black" }));
3794
3795
  var UniversalDeveloperSettings = ({
3795
3796
  initialPublicKey,
3796
3797
  initialWebhookUrl,
3797
3798
  isReadOnly = false,
3799
+ isLoading = false,
3798
3800
  onGenerateKeys,
3799
3801
  onSaveWebhook
3800
3802
  }) => {
@@ -3863,7 +3865,7 @@ AUDDITUR_SECRET_KEY="${secKey}"
3863
3865
  };
3864
3866
  const hasWebhookChanges = webhookUrl !== initialWebhookUrl;
3865
3867
  const isWebhookSaveDisabled = isSavingWebhook || isReadOnly || !hasWebhookChanges;
3866
- return /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col max-w-3xl rounded-2xl p-6 bg-white gap-8 animate-in fade-in duration-300 min-h-full" }, /* @__PURE__ */ React42.createElement(ManagedToaster, null), /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-3 sm:gap-4" }, /* @__PURE__ */ React42.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ React42.createElement("h1", { className: " text-xl text-black mb-1 truncate tracking-tight" }, "Developer Settings"), /* @__PURE__ */ React42.createElement("p", { className: "text-xs text-neutral-500 truncate" }, "Manage your API credentials and webhook integrations.")), isReadOnly && /* @__PURE__ */ React42.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-50 text-neutral-500 rounded-full " }, /* @__PURE__ */ React42.createElement(HugeiconsIcon28, { icon: CircleLock02Icon5, size: 18, className: "text-current" }))), /* @__PURE__ */ React42.createElement("div", { className: "w-full max-w-2xl flex flex-col gap-12" }, /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col gap-6" }, /* @__PURE__ */ React42.createElement("div", { className: "space-y-2 min-w-0" }, /* @__PURE__ */ React42.createElement(
3868
+ return /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col max-w-3xl rounded-2xl p-6 bg-white gap-8 animate-in fade-in duration-300 min-h-full" }, /* @__PURE__ */ React42.createElement(ManagedToaster, null), /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-3 sm:gap-4" }, /* @__PURE__ */ React42.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ React42.createElement("h1", { className: " text-xl text-black mb-1 truncate tracking-tight" }, "Developer Settings"), /* @__PURE__ */ React42.createElement("p", { className: "text-xs text-neutral-500 truncate" }, "Manage your API credentials and webhook integrations.")), isReadOnly && /* @__PURE__ */ React42.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-50 text-neutral-500 rounded-full flex items-center justify-center shrink-0" }, /* @__PURE__ */ React42.createElement(HugeiconsIcon28, { icon: CircleLock02Icon5, size: 18, className: "text-current" }))), isLoading ? /* @__PURE__ */ React42.createElement(PageSpinner5, null) : /* @__PURE__ */ React42.createElement("div", { className: "w-full max-w-2xl flex flex-col gap-12" }, /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col gap-6" }, /* @__PURE__ */ React42.createElement("div", { className: "space-y-2 min-w-0" }, /* @__PURE__ */ React42.createElement(
3867
3869
  TextInput,
3868
3870
  {
3869
3871
  label: "Public Key",
@@ -3911,12 +3913,12 @@ AUDDITUR_SECRET_KEY="${secKey}"
3911
3913
  className: "min-w-32 w-full sm:w-auto"
3912
3914
  },
3913
3915
  "Save Webhook"
3914
- ))))), isRollModalOpen && !isReadOnly && /* @__PURE__ */ React42.createElement("div", { className: "fixed inset-0 z-110 flex items-center justify-center p-4" }, /* @__PURE__ */ React42.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => !isGenerating && setIsRollModalOpen(false) }), /* @__PURE__ */ React42.createElement("div", { className: "relative w-72 bg-white shadow-2xl rounded-2xl flex flex-col items-center overflow-hidden animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ React42.createElement("div", { className: "p-6 text-center w-full" }, /* @__PURE__ */ React42.createElement("h3", { className: " text-[17px] text-black tracking-tight mb-1" }, "Roll API Keys"), /* @__PURE__ */ React42.createElement("p", { className: "text-[12px] text-neutral-500 leading-snug mt-2" }, "Are you sure you want to roll your keys? This will permanently invalidate your current secret key and active MCP tokens.")), /* @__PURE__ */ React42.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ React42.createElement(
3916
+ ))))), isRollModalOpen && !isReadOnly && /* @__PURE__ */ React42.createElement("div", { className: "fixed inset-0 z-110 flex items-center justify-center p-4" }, /* @__PURE__ */ React42.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => !isGenerating && setIsRollModalOpen(false) }), /* @__PURE__ */ React42.createElement("div", { className: "relative w-72 bg-white shadow-2xl rounded-2xl flex flex-col items-center overflow-hidden animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ React42.createElement("div", { className: "p-6 text-center w-full" }, /* @__PURE__ */ React42.createElement("h3", { className: " text-[17px] text-black tracking-tight mb-1" }, "Roll API Keys"), /* @__PURE__ */ React42.createElement("p", { className: "text-[12px] text-neutral-500 leading-snug mt-2" }, "Are you sure you want to roll your keys? This will permanently invalidate your current secret key and active MCP tokens.")), /* @__PURE__ */ React42.createElement("div", { className: "w-full flex border-t border-neutral-100" }, /* @__PURE__ */ React42.createElement(
3915
3917
  "button",
3916
3918
  {
3917
3919
  onClick: () => setIsRollModalOpen(false),
3918
3920
  disabled: isGenerating,
3919
- className: "flex-1 py-2 text-[13px] text-neutral-600 hover:bg-neutral-50 transition-colors disabled:opacity-50 outline-none"
3921
+ className: "flex-1 py-3 text-[13px] text-neutral-600 hover:bg-neutral-50 transition-colors disabled:opacity-50 outline-none border-r border-neutral-100"
3920
3922
  },
3921
3923
  "Cancel"
3922
3924
  ), /* @__PURE__ */ React42.createElement(
@@ -3924,7 +3926,7 @@ AUDDITUR_SECRET_KEY="${secKey}"
3924
3926
  {
3925
3927
  onClick: handleGenerateKeys,
3926
3928
  disabled: isGenerating,
3927
- className: "flex-1 py-2 text-[13px] text-red-600 hover:bg-neutral-50 transition-colors disabled:opacity-50 flex justify-center outline-none"
3929
+ className: "flex-1 py-3 text-[13px] text-red-600 hover:bg-neutral-50 transition-colors disabled:opacity-50 flex justify-center items-center outline-none"
3928
3930
  },
3929
3931
  isGenerating ? /* @__PURE__ */ React42.createElement(ButtonSpinner5, null) : "Roll Keys"
3930
3932
  )))));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@retinalabsllc/zairusjs",
3
- "version": "0.9.5",
3
+ "version": "0.9.7",
4
4
  "description": "A perceptive, Ai data driven Next.js UI component library.",
5
5
  "author": "Retina Labs Company",
6
6
  "license": "MIT",