@carlonicora/nextjs-jsonapi 1.137.5 → 1.138.1

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.
@@ -3097,19 +3097,10 @@ __name(PopoverDescription, "PopoverDescription");
3097
3097
  import { Progress as ProgressPrimitive } from "@base-ui/react/progress";
3098
3098
  import { jsx as jsx31, jsxs as jsxs17 } from "react/jsx-runtime";
3099
3099
  function Progress({ className, children, value, ...props }) {
3100
- return /* @__PURE__ */ jsxs17(
3101
- ProgressPrimitive.Root,
3102
- {
3103
- value,
3104
- "data-slot": "progress",
3105
- className: cn("flex flex-wrap gap-3", className),
3106
- ...props,
3107
- children: [
3108
- children,
3109
- /* @__PURE__ */ jsx31(ProgressTrack, { children: /* @__PURE__ */ jsx31(ProgressIndicator, {}) })
3110
- ]
3111
- }
3112
- );
3100
+ return /* @__PURE__ */ jsxs17(ProgressPrimitive.Root, { value, "data-slot": "progress", className: "flex flex-wrap gap-3", ...props, children: [
3101
+ children,
3102
+ /* @__PURE__ */ jsx31(ProgressTrack, { className, children: /* @__PURE__ */ jsx31(ProgressIndicator, {}) })
3103
+ ] });
3113
3104
  }
3114
3105
  __name(Progress, "Progress");
3115
3106
  function ProgressTrack({ className, ...props }) {
@@ -10117,7 +10108,7 @@ import { useRef as useRef17 } from "react";
10117
10108
  import dynamic from "next/dynamic";
10118
10109
  import React17 from "react";
10119
10110
  import { jsx as jsx86 } from "react/jsx-runtime";
10120
- var BlockNoteEditor = dynamic(() => import("./BlockNoteEditor-K7FBEMSV.mjs"), {
10111
+ var BlockNoteEditor = dynamic(() => import("./BlockNoteEditor-E6ULBTZD.mjs"), {
10121
10112
  ssr: false
10122
10113
  });
10123
10114
  var BlockNoteEditorContainer = React17.memo(/* @__PURE__ */ __name(function EditorContainer(props) {
@@ -10918,7 +10909,7 @@ function FormPlaceAutocomplete({
10918
10909
  }, "fetchPlaceDetails");
10919
10910
  const handleInputChange = /* @__PURE__ */ __name((value) => {
10920
10911
  setInputValue(value);
10921
- form.setValue(id, value);
10912
+ form.setValue(id, value, { shouldValidate: true });
10922
10913
  if (debounceRef.current) {
10923
10914
  clearTimeout(debounceRef.current);
10924
10915
  }
@@ -10934,7 +10925,7 @@ function FormPlaceAutocomplete({
10934
10925
  }, "handleInputChange");
10935
10926
  const handleSuggestionSelect = /* @__PURE__ */ __name(async (suggestion) => {
10936
10927
  setInputValue(suggestion.description);
10937
- form.setValue(id, suggestion.description);
10928
+ form.setValue(id, suggestion.description, { shouldValidate: true });
10938
10929
  setShowSuggestions(false);
10939
10930
  setSuggestions([]);
10940
10931
  const addressComponents = await fetchPlaceDetails(suggestion.place_id);
@@ -16581,7 +16572,7 @@ registerTableGenerator("companies", useCompanyTableStructure);
16581
16572
 
16582
16573
  // src/components/tables/ContentListTable.tsx
16583
16574
  import { flexRender, getCoreRowModel, getExpandedRowModel, useReactTable } from "@tanstack/react-table";
16584
- import { ChevronLeft, ChevronRight } from "lucide-react";
16575
+ import { ChevronLeft, ChevronRight, Loader2 as Loader23 } from "lucide-react";
16585
16576
  import { useTranslations as useTranslations58 } from "next-intl";
16586
16577
  import React30, { memo, useMemo as useMemo30, useState as useState60 } from "react";
16587
16578
 
@@ -16697,6 +16688,10 @@ var ContentListTable = memo(/* @__PURE__ */ __name(function ContentListTable2(pr
16697
16688
  const [expanded, setExpanded] = useState60(
16698
16689
  props.defaultExpanded === true ? true : typeof props.defaultExpanded === "object" ? props.defaultExpanded : {}
16699
16690
  );
16691
+ const [pendingDirection, setPendingDirection] = useState60(null);
16692
+ React30.useEffect(() => {
16693
+ if (data.isLoaded) setPendingDirection(null);
16694
+ }, [data.isLoaded]);
16700
16695
  const { data: tableData, columns: tableColumns } = useTableGenerator(props.tableGeneratorType, {
16701
16696
  data: data?.data ?? EMPTY_ARRAY,
16702
16697
  fields,
@@ -16836,10 +16831,11 @@ var ContentListTable = memo(/* @__PURE__ */ __name(function ContentListTable2(pr
16836
16831
  size: "sm",
16837
16832
  onClick: (e) => {
16838
16833
  e.preventDefault();
16834
+ setPendingDirection("prev");
16839
16835
  data.previous?.(true);
16840
16836
  },
16841
- disabled: !data.previous,
16842
- children: /* @__PURE__ */ jsx180(ChevronLeft, { className: "h-4 w-4" })
16837
+ disabled: !data.previous || pendingDirection !== null,
16838
+ children: pendingDirection === "prev" ? /* @__PURE__ */ jsx180(Loader23, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsx180(ChevronLeft, { className: "h-4 w-4" })
16843
16839
  }
16844
16840
  ),
16845
16841
  data.pageInfo && /* @__PURE__ */ jsx180("span", { className: "text-muted-foreground text-xs", children: `${data.pageInfo.startItem}-${data.pageInfo.endItem}${data.total ? ` of ${data.total}` : ""}` }),
@@ -16850,10 +16846,11 @@ var ContentListTable = memo(/* @__PURE__ */ __name(function ContentListTable2(pr
16850
16846
  size: "sm",
16851
16847
  onClick: (e) => {
16852
16848
  e.preventDefault();
16849
+ setPendingDirection("next");
16853
16850
  data.next?.(true);
16854
16851
  },
16855
- disabled: !data.next,
16856
- children: /* @__PURE__ */ jsx180(ChevronRight, { className: "h-4 w-4" })
16852
+ disabled: !data.next || pendingDirection !== null,
16853
+ children: pendingDirection === "next" ? /* @__PURE__ */ jsx180(Loader23, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsx180(ChevronRight, { className: "h-4 w-4" })
16857
16854
  }
16858
16855
  )
16859
16856
  ] }) }) }) })
@@ -17115,7 +17112,7 @@ import { createContext as createContext23, useContext as useContext24, useMemo a
17115
17112
 
17116
17113
  // src/features/auth/components/forms/Register.tsx
17117
17114
  import { zodResolver as zodResolver5 } from "@hookform/resolvers/zod";
17118
- import { Loader2 as Loader23 } from "lucide-react";
17115
+ import { Loader2 as Loader24 } from "lucide-react";
17119
17116
  import { useTranslations as useTranslations61 } from "next-intl";
17120
17117
  import Image7 from "next/image";
17121
17118
  import { useSearchParams as useSearchParams2 } from "next/navigation";
@@ -17282,7 +17279,7 @@ function Register() {
17282
17279
  t("waitlist.invite.validating_title")
17283
17280
  ] }) }),
17284
17281
  /* @__PURE__ */ jsxs109(CardContent, { className: "flex flex-col items-center justify-center space-y-4 py-8", children: [
17285
- /* @__PURE__ */ jsx189(Loader23, { className: "h-8 w-8 animate-spin text-primary" }),
17282
+ /* @__PURE__ */ jsx189(Loader24, { className: "h-8 w-8 animate-spin text-primary" }),
17286
17283
  /* @__PURE__ */ jsx189("p", { className: "text-muted-foreground", children: t("waitlist.invite.validating_description") })
17287
17284
  ] })
17288
17285
  ] });
@@ -20445,13 +20442,13 @@ __name(MessageList, "MessageList");
20445
20442
 
20446
20443
  // src/features/assistant/components/parts/AssistantStatusLine.tsx
20447
20444
  import { useTranslations as useTranslations96 } from "next-intl";
20448
- import { Loader2 as Loader24 } from "lucide-react";
20445
+ import { Loader2 as Loader25 } from "lucide-react";
20449
20446
  import { jsx as jsx237, jsxs as jsxs142 } from "react/jsx-runtime";
20450
20447
  function AssistantStatusLine({ status }) {
20451
20448
  const t = useTranslations96();
20452
20449
  const text = status ?? t("features.assistant.thinking");
20453
20450
  return /* @__PURE__ */ jsxs142("div", { className: "text-muted-foreground flex items-center gap-2 px-4 py-2 text-sm", children: [
20454
- /* @__PURE__ */ jsx237(Loader24, { className: "h-4 w-4 animate-spin" }),
20451
+ /* @__PURE__ */ jsx237(Loader25, { className: "h-4 w-4 animate-spin" }),
20455
20452
  /* @__PURE__ */ jsx237("span", { children: text })
20456
20453
  ] });
20457
20454
  }
@@ -20878,7 +20875,7 @@ function ReferralCodeCapture() {
20878
20875
  __name(ReferralCodeCapture, "ReferralCodeCapture");
20879
20876
 
20880
20877
  // src/features/referral/components/ReferralWidget.tsx
20881
- import { Copy as Copy2, Loader2 as Loader25, Mail, Users } from "lucide-react";
20878
+ import { Copy as Copy2, Loader2 as Loader26, Mail, Users } from "lucide-react";
20882
20879
  import { useCallback as useCallback41, useRef as useRef38, useState as useState91 } from "react";
20883
20880
 
20884
20881
  // src/features/referral/hooks/useReferralInvite.ts
@@ -21031,9 +21028,9 @@ function ReferralWidget({
21031
21028
  );
21032
21029
  if (loading) {
21033
21030
  if (isDialog) {
21034
- return /* @__PURE__ */ jsx245("div", { className: "flex items-center justify-center py-4", children: /* @__PURE__ */ jsx245(Loader25, { className: "text-muted-foreground h-6 w-6 animate-spin" }) });
21031
+ return /* @__PURE__ */ jsx245("div", { className: "flex items-center justify-center py-4", children: /* @__PURE__ */ jsx245(Loader26, { className: "text-muted-foreground h-6 w-6 animate-spin" }) });
21035
21032
  }
21036
- return /* @__PURE__ */ jsx245(Card, { className: `p-6 ${className ?? ""}`, children: /* @__PURE__ */ jsx245("div", { className: "flex items-center justify-center py-4", children: /* @__PURE__ */ jsx245(Loader25, { className: "text-muted-foreground h-6 w-6 animate-spin" }) }) });
21033
+ return /* @__PURE__ */ jsx245(Card, { className: `p-6 ${className ?? ""}`, children: /* @__PURE__ */ jsx245("div", { className: "flex items-center justify-center py-4", children: /* @__PURE__ */ jsx245(Loader26, { className: "text-muted-foreground h-6 w-6 animate-spin" }) }) });
21037
21034
  }
21038
21035
  if (error) {
21039
21036
  const errorMessage = error instanceof Error ? error.message : "Failed to load referral data";
@@ -21092,7 +21089,7 @@ function ReferralWidget({
21092
21089
  onClick: handleSendInvite,
21093
21090
  disabled: sending || !email,
21094
21091
  "aria-label": sending ? t.sendingButton : t.sendButton,
21095
- children: sending ? /* @__PURE__ */ jsx245(Loader25, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsx245(Mail, { className: "h-4 w-4" })
21092
+ children: sending ? /* @__PURE__ */ jsx245(Loader26, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsx245(Mail, { className: "h-4 w-4" })
21096
21093
  }
21097
21094
  )
21098
21095
  ] })
@@ -22144,7 +22141,7 @@ function OAuthConsentActions({ onApprove, onDeny, isLoading = false }) {
22144
22141
  __name(OAuthConsentActions, "OAuthConsentActions");
22145
22142
 
22146
22143
  // src/features/oauth/components/consent/OAuthConsentScreen.tsx
22147
- import { ExternalLink as ExternalLink2, AlertTriangle as AlertTriangle2, Loader2 as Loader26 } from "lucide-react";
22144
+ import { ExternalLink as ExternalLink2, AlertTriangle as AlertTriangle2, Loader2 as Loader27 } from "lucide-react";
22148
22145
  import { jsx as jsx264, jsxs as jsxs165 } from "react/jsx-runtime";
22149
22146
  function OAuthConsentScreen({
22150
22147
  params,
@@ -22156,7 +22153,7 @@ function OAuthConsentScreen({
22156
22153
  const { clientInfo, isLoading, error, approve, deny, isSubmitting } = useOAuthConsent(params);
22157
22154
  if (isLoading) {
22158
22155
  return /* @__PURE__ */ jsx264("div", { className: "min-h-dvh flex items-center justify-center p-4", children: /* @__PURE__ */ jsx264(Card, { className: "w-full max-w-md", children: /* @__PURE__ */ jsxs165(CardContent, { className: "flex flex-col items-center justify-center py-12", children: [
22159
- /* @__PURE__ */ jsx264(Loader26, { className: "h-8 w-8 animate-spin text-muted-foreground" }),
22156
+ /* @__PURE__ */ jsx264(Loader27, { className: "h-8 w-8 animate-spin text-muted-foreground" }),
22160
22157
  /* @__PURE__ */ jsx264("p", { className: "mt-4 text-muted-foreground", children: "Loading authorization request..." })
22161
22158
  ] }) }) });
22162
22159
  }
@@ -22479,7 +22476,7 @@ function WaitlistSuccessState() {
22479
22476
  __name(WaitlistSuccessState, "WaitlistSuccessState");
22480
22477
 
22481
22478
  // src/features/waitlist/components/sections/WaitlistConfirmation.tsx
22482
- import { CheckCircle as CheckCircle4, Loader2 as Loader27, XCircle as XCircle2 } from "lucide-react";
22479
+ import { CheckCircle as CheckCircle4, Loader2 as Loader28, XCircle as XCircle2 } from "lucide-react";
22483
22480
  import { useTranslations as useTranslations108 } from "next-intl";
22484
22481
  import { useEffect as useEffect71, useState as useState98 } from "react";
22485
22482
  import { jsx as jsx269, jsxs as jsxs170 } from "react/jsx-runtime";
@@ -22502,7 +22499,7 @@ function WaitlistConfirmation({ code }) {
22502
22499
  }, [code, t]);
22503
22500
  if (state === "loading") {
22504
22501
  return /* @__PURE__ */ jsxs170("div", { className: "flex flex-col items-center justify-center space-y-4 py-16 text-center", children: [
22505
- /* @__PURE__ */ jsx269(Loader27, { className: "text-primary h-12 w-12 animate-spin" }),
22502
+ /* @__PURE__ */ jsx269(Loader28, { className: "text-primary h-12 w-12 animate-spin" }),
22506
22503
  /* @__PURE__ */ jsx269("p", { className: "text-muted-foreground", children: t("waitlist.confirmation.loading") })
22507
22504
  ] });
22508
22505
  }
@@ -23885,4 +23882,4 @@ export {
23885
23882
  useOAuthClients,
23886
23883
  useOAuthClient
23887
23884
  };
23888
- //# sourceMappingURL=chunk-K6HCBBAP.mjs.map
23885
+ //# sourceMappingURL=chunk-L5CPWDCM.mjs.map