@carlonicora/nextjs-jsonapi 6.20.6 → 6.22.0

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.
Files changed (41) hide show
  1. package/dist/{BlockNoteEditor-H5QBL25M.mjs → BlockNoteEditor-2XSIQCEB.mjs} +2 -2
  2. package/dist/{BlockNoteEditor-IRMQQGPS.js → BlockNoteEditor-HW3TK7SM.js} +9 -9
  3. package/dist/{BlockNoteEditor-IRMQQGPS.js.map → BlockNoteEditor-HW3TK7SM.js.map} +1 -1
  4. package/dist/billing/index.js +378 -378
  5. package/dist/billing/index.mjs +1 -1
  6. package/dist/{chunk-RF2PR5G3.mjs → chunk-EFQIMPCJ.mjs} +15 -9
  7. package/dist/chunk-EFQIMPCJ.mjs.map +1 -0
  8. package/dist/{chunk-EGTC75OW.js → chunk-FXRRQ7Q6.js} +15 -9
  9. package/dist/chunk-FXRRQ7Q6.js.map +1 -0
  10. package/dist/client/index.js +2 -2
  11. package/dist/client/index.mjs +1 -1
  12. package/dist/components/containers/RoundPageContainer.d.ts.map +1 -1
  13. package/dist/components/index.js +2 -2
  14. package/dist/components/index.mjs +1 -1
  15. package/dist/contexts/index.js +2 -2
  16. package/dist/contexts/index.mjs +1 -1
  17. package/dist/email-automations/index.js +78 -78
  18. package/dist/email-automations/index.mjs +1 -1
  19. package/dist/features/analytics/index.js +107 -107
  20. package/dist/features/analytics/index.mjs +1 -1
  21. package/dist/features/blog/index.js +93 -93
  22. package/dist/features/blog/index.mjs +1 -1
  23. package/dist/features/help/index.js +31 -31
  24. package/dist/features/help/index.mjs +1 -1
  25. package/dist/features/tokenusage/index.js +102 -102
  26. package/dist/features/tokenusage/index.mjs +1 -1
  27. package/dist/features/user/contexts/UserContext.d.ts.map +1 -1
  28. package/dist/shadcnui/ui/popover.d.ts +1 -1
  29. package/dist/shadcnui/ui/popover.d.ts.map +1 -1
  30. package/package.json +1 -1
  31. package/src/components/containers/RoundPageContainer.tsx +11 -2
  32. package/src/components/containers/__tests__/RoundPageContainer.padding.spec.tsx +21 -0
  33. package/src/components/forms/EditorSheet.tsx +2 -2
  34. package/src/components/forms/__tests__/EditorSheet.spec.tsx +16 -0
  35. package/src/features/oauth/components/OAuthClientDetail.tsx +1 -1
  36. package/src/features/user/contexts/UserContext.tsx +6 -2
  37. package/src/shadcnui/ui/__tests__/popover.container.spec.tsx +22 -0
  38. package/src/shadcnui/ui/popover.tsx +7 -2
  39. package/dist/chunk-EGTC75OW.js.map +0 -1
  40. package/dist/chunk-RF2PR5G3.mjs.map +0 -1
  41. /package/dist/{BlockNoteEditor-H5QBL25M.mjs.map → BlockNoteEditor-2XSIQCEB.mjs.map} +0 -0
@@ -81,7 +81,7 @@ import {
81
81
  useCurrentUserContext,
82
82
  useDataListRetriever,
83
83
  usePageUrlGenerator
84
- } from "../chunk-RF2PR5G3.mjs";
84
+ } from "../chunk-EFQIMPCJ.mjs";
85
85
  import "../chunk-VOXD3ZLY.mjs";
86
86
  import {
87
87
  getStripePublishableKey
@@ -3202,10 +3202,11 @@ function PopoverContent({
3202
3202
  side = "bottom",
3203
3203
  sideOffset = 4,
3204
3204
  anchor,
3205
+ container,
3205
3206
  ...props
3206
3207
  }) {
3207
3208
  const matchesAnchorWidth = typeof className === "string" && className.includes("--anchor-width");
3208
- return /* @__PURE__ */ jsx31(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx31(
3209
+ return /* @__PURE__ */ jsx31(PopoverPrimitive.Portal, { container, children: /* @__PURE__ */ jsx31(
3209
3210
  PopoverPrimitive.Positioner,
3210
3211
  {
3211
3212
  align,
@@ -10282,8 +10283,8 @@ function EditorSheet({
10282
10283
  render: /* @__PURE__ */ jsx88("div", {}),
10283
10284
  nativeButton: false,
10284
10285
  size: "sm",
10285
- variant: isLabelled ? "outline" : "ghost",
10286
- className: "text-muted-foreground",
10286
+ variant: isLabelled ? "default" : "ghost",
10287
+ className: isLabelled ? void 0 : "text-muted-foreground",
10287
10288
  children: [
10288
10289
  /* @__PURE__ */ jsx88(PencilIcon3, {}),
10289
10290
  isLabelled && t("ui.buttons.edit")
@@ -10867,7 +10868,7 @@ import { useRef as useRef18 } from "react";
10867
10868
  import dynamic from "next/dynamic";
10868
10869
  import React18 from "react";
10869
10870
  import { jsx as jsx91 } from "react/jsx-runtime";
10870
- var BlockNoteEditor = dynamic(() => import("./BlockNoteEditor-H5QBL25M.mjs"), {
10871
+ var BlockNoteEditor = dynamic(() => import("./BlockNoteEditor-2XSIQCEB.mjs"), {
10871
10872
  ssr: false
10872
10873
  });
10873
10874
  var BlockNoteEditorContainer = React18.memo(/* @__PURE__ */ __name(function EditorContainer(props) {
@@ -12494,6 +12495,7 @@ var UserProvider = /* @__PURE__ */ __name(({ children, dehydratedUser }) => {
12494
12495
  type: t(`entities.users`, { count: user ? 1 : 2 })
12495
12496
  };
12496
12497
  const functions = [];
12498
+ const actionBar = [];
12497
12499
  if (user) {
12498
12500
  response.element = `${user.name}${user.isDeleted ? ` (${t(`user.deleted`)})` : ""}`;
12499
12501
  if (user.isDeleted) {
@@ -12501,13 +12503,14 @@ var UserProvider = /* @__PURE__ */ __name(({ children, dehydratedUser }) => {
12501
12503
  } else {
12502
12504
  if (!user.isActivated)
12503
12505
  functions.push(/* @__PURE__ */ jsx112(UserResentInvitationEmail, { user }, `UserResentInvitationEmail`));
12504
- functions.push(/* @__PURE__ */ jsx112(UserDeleter, { user }, `UserDeleter`));
12506
+ actionBar.push(/* @__PURE__ */ jsx112(UserDeleter, { user }, `UserDeleter`));
12505
12507
  if (hasRole(getRoleId().Administrator) && isAccountDeletionEnabled())
12506
12508
  functions.push(/* @__PURE__ */ jsx112(AccountDeletionAdminTrigger, { user }, `AccountDeletionAdminTrigger`));
12507
12509
  }
12508
- functions.push(/* @__PURE__ */ jsx112(UserEditor, { user, propagateChanges: setUser }, `UserEditor`));
12510
+ actionBar.push(/* @__PURE__ */ jsx112(UserEditor, { user, propagateChanges: setUser }, `UserEditor`));
12509
12511
  }
12510
12512
  if (functions.length > 0) response.functions = functions;
12513
+ if (actionBar.length > 0) response.actionBar = actionBar;
12511
12514
  return response;
12512
12515
  }, "title");
12513
12516
  return /* @__PURE__ */ jsx112(SharedProvider, { value: { breadcrumbs: breadcrumb(), title: title() }, children: /* @__PURE__ */ jsx112(
@@ -16449,7 +16452,8 @@ function RoundPageContainer({
16449
16452
  document.documentElement.dataset.scrollMode = scroll;
16450
16453
  }, [scroll]);
16451
16454
  const isFixed = scroll === "fixed";
16452
- const shellHeight = isFixed ? `h-[calc(100svh-var(--app-header-h,3rem)-var(--app-banner-h,0px))]` : `min-h-[calc(100svh-var(--app-header-h,3rem)-var(--app-banner-h,0px))]`;
16455
+ const shellHeight = isFixed ? `h-[calc(100svh-var(--app-header-h,3rem)-var(--app-banner-h,0px)-var(--app-footer-h,0px))]` : `min-h-[calc(100svh-var(--app-header-h,3rem)-var(--app-banner-h,0px)-var(--app-footer-h,0px))]`;
16456
+ const footerSpace = isFixed ? `` : `mb-[var(--app-footer-h,0px)]`;
16453
16457
  const clip = isFixed ? `overflow-hidden` : ``;
16454
16458
  const scrollY = isFixed ? `overflow-y-auto` : ``;
16455
16459
  const mobileBarClass = isFixed ? `` : `sticky bottom-0 z-30`;
@@ -16524,6 +16528,7 @@ function RoundPageContainer({
16524
16528
  className: cn(
16525
16529
  "flex w-full flex-col",
16526
16530
  shellHeight,
16531
+ footerSpace,
16527
16532
  // Deliberately NO bottom safe-area inset, here or in
16528
16533
  // MobileNavigationBar. iOS still reports 34px of bottom inset
16529
16534
  // (measured in an installed PWA), but nothing is drawn in that strip
@@ -16561,6 +16566,7 @@ function RoundPageContainer({
16561
16566
  className: cn(
16562
16567
  `flex w-full flex-col`,
16563
16568
  shellHeight,
16569
+ footerSpace,
16564
16570
  // Deliberately NO bottom safe-area inset, here or in
16565
16571
  // MobileNavigationBar. iOS still reports 34px of bottom inset
16566
16572
  // (measured in an installed PWA), but nothing is drawn in that strip
@@ -28961,7 +28967,7 @@ function OAuthClientDetail({
28961
28967
  /* @__PURE__ */ jsx323(Separator, {}),
28962
28968
  /* @__PURE__ */ jsx323("div", { className: "flex flex-wrap gap-x-6 gap-y-2 text-sm text-muted-foreground", children: /* @__PURE__ */ jsx323("span", { children: t("oauth.ui.detail.created", { date: createdDate }) }) }),
28963
28969
  /* @__PURE__ */ jsxs197("div", { className: "flex gap-3 pt-4", children: [
28964
- onEdit && /* @__PURE__ */ jsxs197(Button, { variant: "outline", onClick: onEdit, disabled: isLoading, children: [
28970
+ onEdit && /* @__PURE__ */ jsxs197(Button, { onClick: onEdit, disabled: isLoading, children: [
28965
28971
  /* @__PURE__ */ jsx323(Pencil2, { className: "h-4 w-4 me-2" }),
28966
28972
  t("ui.buttons.edit")
28967
28973
  ] }),
@@ -30881,4 +30887,4 @@ export {
30881
30887
  useOAuthClients,
30882
30888
  useOAuthClient
30883
30889
  };
30884
- //# sourceMappingURL=chunk-RF2PR5G3.mjs.map
30890
+ //# sourceMappingURL=chunk-EFQIMPCJ.mjs.map