@fluid-app/portal-sdk 0.1.301 → 0.1.303

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 (118) hide show
  1. package/dist/{AlertWidget-BilCRyau.mjs → AlertWidget-mF7t6q9V.mjs} +3 -3
  2. package/dist/{AlertWidget-BilCRyau.mjs.map → AlertWidget-mF7t6q9V.mjs.map} +1 -1
  3. package/dist/{AppDownloadScreen-DtU2S2qh.mjs → AppDownloadScreen-9zlj742F.mjs} +2 -2
  4. package/dist/{AppDownloadScreen-DtU2S2qh.mjs.map → AppDownloadScreen-9zlj742F.mjs.map} +1 -1
  5. package/dist/{BulletListWidget-CFPYT5ut.mjs → BulletListWidget-BA7nyDC4.mjs} +2 -2
  6. package/dist/{BulletListWidget-CFPYT5ut.mjs.map → BulletListWidget-BA7nyDC4.mjs.map} +1 -1
  7. package/dist/{CalendarWidget-BQP9CfCI.mjs → CalendarWidget-CHpM_XnL.mjs} +2 -2
  8. package/dist/{CalendarWidget-BQP9CfCI.mjs.map → CalendarWidget-CHpM_XnL.mjs.map} +1 -1
  9. package/dist/{CardWidget-DfY3Lrm_.mjs → CardWidget-BQdWR7m3.mjs} +2 -2
  10. package/dist/{CardWidget-DfY3Lrm_.mjs.map → CardWidget-BQdWR7m3.mjs.map} +1 -1
  11. package/dist/{CarouselWidget-BOWNV3rj.mjs → CarouselWidget-BLQcyVWj.mjs} +2 -2
  12. package/dist/{CarouselWidget-BOWNV3rj.mjs.map → CarouselWidget-BLQcyVWj.mjs.map} +1 -1
  13. package/dist/{CatchUpWidget-BtEH9EHQ.mjs → CatchUpWidget-sy6oJqiu.mjs} +2 -2
  14. package/dist/{CatchUpWidget-BtEH9EHQ.mjs.map → CatchUpWidget-sy6oJqiu.mjs.map} +1 -1
  15. package/dist/{ChartWidget-rCUOwT7v.mjs → ChartWidget-DE0JNmKi.mjs} +2 -2
  16. package/dist/{ChartWidget-rCUOwT7v.mjs.map → ChartWidget-DE0JNmKi.mjs.map} +1 -1
  17. package/dist/{ContactsScreen-Cj2okxTE.mjs → ContactsScreen-suw0tqGW.mjs} +2 -2
  18. package/dist/{ContactsScreen-Cj2okxTE.mjs.map → ContactsScreen-suw0tqGW.mjs.map} +1 -1
  19. package/dist/{ContainerWidget-DBRBSg15.mjs → ContainerWidget-CjZOp201.mjs} +3 -3
  20. package/dist/{ContainerWidget-DBRBSg15.mjs.map → ContainerWidget-CjZOp201.mjs.map} +1 -1
  21. package/dist/{CustomersScreen-DsRK0m2L.mjs → CustomersScreen-DdSXRmyl.mjs} +2 -2
  22. package/dist/{CustomersScreen-DsRK0m2L.mjs.map → CustomersScreen-DdSXRmyl.mjs.map} +1 -1
  23. package/dist/{EmbedWidget-BO6P4QHc.mjs → EmbedWidget-ok8UkJdY.mjs} +2 -2
  24. package/dist/{EmbedWidget-BO6P4QHc.mjs.map → EmbedWidget-ok8UkJdY.mjs.map} +1 -1
  25. package/dist/{FluidProvider-CBuTpv9I.cjs → FluidProvider-BAg3B4eD.cjs} +2 -2
  26. package/dist/{FluidProvider-CBuTpv9I.cjs.map → FluidProvider-BAg3B4eD.cjs.map} +1 -1
  27. package/dist/{FluidProvider-BBxURUBq.mjs → FluidProvider-C00Px_ej.mjs} +52 -52
  28. package/dist/{FluidProvider-BBxURUBq.mjs.map → FluidProvider-C00Px_ej.mjs.map} +1 -1
  29. package/dist/{ImageWidget-DGABEW2_.mjs → ImageWidget-j9pAlihf.mjs} +2 -2
  30. package/dist/{ImageWidget-DGABEW2_.mjs.map → ImageWidget-j9pAlihf.mjs.map} +1 -1
  31. package/dist/{LayoutWidget-DYekGAi3.mjs → LayoutWidget-Bvc_oJT-.mjs} +2 -2
  32. package/dist/{LayoutWidget-DYekGAi3.mjs.map → LayoutWidget-Bvc_oJT-.mjs.map} +1 -1
  33. package/dist/{LinkWidget-DtuO2cmy.mjs → LinkWidget-CBJjxBOU.mjs} +2 -2
  34. package/dist/{LinkWidget-DtuO2cmy.mjs.map → LinkWidget-CBJjxBOU.mjs.map} +1 -1
  35. package/dist/{ListWidget-DRN6ZCp1.mjs → ListWidget-Dw2qxriL.mjs} +2 -2
  36. package/dist/{ListWidget-DRN6ZCp1.mjs.map → ListWidget-Dw2qxriL.mjs.map} +1 -1
  37. package/dist/{MessagingScreen-CwzSY_G8.mjs → MessagingScreen-0iAzXjtW.mjs} +4 -4
  38. package/dist/{MessagingScreen-CwzSY_G8.mjs.map → MessagingScreen-0iAzXjtW.mjs.map} +1 -1
  39. package/dist/{MessagingScreen-2M2ETWXp.cjs → MessagingScreen-CJ0Rj-M7.cjs} +2 -2
  40. package/dist/{MessagingScreen-2M2ETWXp.cjs.map → MessagingScreen-CJ0Rj-M7.cjs.map} +1 -1
  41. package/dist/{MessagingScreen-BI4AufwC.cjs → MessagingScreen-D_feiKUj.cjs} +2 -2
  42. package/dist/MessagingScreen-aMC3a8cQ.mjs +47 -0
  43. package/dist/{MySiteScreen-Bx81S9gD.mjs → MySiteScreen-C37AawN3.mjs} +2 -2
  44. package/dist/{MySiteScreen-Bx81S9gD.mjs.map → MySiteScreen-C37AawN3.mjs.map} +1 -1
  45. package/dist/{MySiteWidget-D8UtttYC.mjs → MySiteWidget-C37LOc4h.mjs} +2 -2
  46. package/dist/{MySiteWidget-D8UtttYC.mjs.map → MySiteWidget-C37LOc4h.mjs.map} +1 -1
  47. package/dist/{NestedWidget-BeOYIuWY.mjs → NestedWidget-DYCR6oXP.mjs} +2 -2
  48. package/dist/{NestedWidget-BeOYIuWY.mjs.map → NestedWidget-DYCR6oXP.mjs.map} +1 -1
  49. package/dist/OrdersScreen-B-uk9a0i.mjs +45 -0
  50. package/dist/{OrdersScreen-B-Nfx1pU.cjs → OrdersScreen-ChbkUQG1.cjs} +2 -2
  51. package/dist/{OrdersScreen-E0HjjKxj.mjs → OrdersScreen-D1AAopLt.mjs} +2 -2
  52. package/dist/{OrdersScreen-E0HjjKxj.mjs.map → OrdersScreen-D1AAopLt.mjs.map} +1 -1
  53. package/dist/{OrdersScreen-CtAlBgys.cjs → OrdersScreen-DrrOttdy.cjs} +2 -2
  54. package/dist/{OrdersScreen-CtAlBgys.cjs.map → OrdersScreen-DrrOttdy.cjs.map} +1 -1
  55. package/dist/{PointsWidget-4tTrD6UA.mjs → PointsWidget-D0TPHzoh.mjs} +2 -2
  56. package/dist/{PointsWidget-4tTrD6UA.mjs.map → PointsWidget-D0TPHzoh.mjs.map} +1 -1
  57. package/dist/{ProfileScreen-fIQkeFTu.mjs → ProfileScreen-8hi-vFLY.mjs} +2 -2
  58. package/dist/{ProfileScreen-fIQkeFTu.mjs.map → ProfileScreen-8hi-vFLY.mjs.map} +1 -1
  59. package/dist/{ProfileScreen-CPzuS8kI.cjs → ProfileScreen-BD51dMvj.cjs} +2 -2
  60. package/dist/{ProfileScreen-CPzuS8kI.cjs.map → ProfileScreen-BD51dMvj.cjs.map} +1 -1
  61. package/dist/{ProfileScreen-CL8xD-q8.cjs → ProfileScreen-CHYWGYjZ.cjs} +2 -2
  62. package/dist/ProfileScreen-HckHOA3z.mjs +47 -0
  63. package/dist/{QuickLinksWidget-IlrkEORt.mjs → QuickLinksWidget-CQ5u9y6u.mjs} +2 -2
  64. package/dist/{QuickLinksWidget-IlrkEORt.mjs.map → QuickLinksWidget-CQ5u9y6u.mjs.map} +1 -1
  65. package/dist/{QuickShareWidget-Bzvh9Yvj.mjs → QuickShareWidget-BIYP_Vju.mjs} +2 -2
  66. package/dist/{QuickShareWidget-Bzvh9Yvj.mjs.map → QuickShareWidget-BIYP_Vju.mjs.map} +1 -1
  67. package/dist/{RecentActivityWidget-C9fWPsVD.mjs → RecentActivityWidget-4hDg_4vP.mjs} +2 -2
  68. package/dist/{RecentActivityWidget-C9fWPsVD.mjs.map → RecentActivityWidget-4hDg_4vP.mjs.map} +1 -1
  69. package/dist/{SeparatorWidget-CTke2MBj.mjs → SeparatorWidget-N1L4KRZJ.mjs} +2 -2
  70. package/dist/{SeparatorWidget-CTke2MBj.mjs.map → SeparatorWidget-N1L4KRZJ.mjs.map} +1 -1
  71. package/dist/{ShareablesScreen-WUM3kwwU.cjs → ShareablesScreen-BmMtSpT8.cjs} +37 -26
  72. package/dist/ShareablesScreen-BmMtSpT8.cjs.map +1 -0
  73. package/dist/{ShareablesScreen-DE2k5f6X.mjs → ShareablesScreen-Bx4dJ3uu.mjs} +38 -27
  74. package/dist/ShareablesScreen-Bx4dJ3uu.mjs.map +1 -0
  75. package/dist/{ShareablesScreen-Cg10X417.mjs → ShareablesScreen-C2Sj5Jvp.mjs} +2 -2
  76. package/dist/{ShareablesScreen-BevKtLpN.cjs → ShareablesScreen-D6MjCFu_.cjs} +1 -1
  77. package/dist/ShopScreen-CIHEblgo.mjs +46 -0
  78. package/dist/{ShopScreen-CZdXE7dM.cjs → ShopScreen-CnfBzMUM.cjs} +2 -2
  79. package/dist/{ShopScreen-CZdXE7dM.cjs.map → ShopScreen-CnfBzMUM.cjs.map} +1 -1
  80. package/dist/{ShopScreen-DdAmK5yn.mjs → ShopScreen-F8cg64iD.mjs} +2 -2
  81. package/dist/{ShopScreen-DdAmK5yn.mjs.map → ShopScreen-F8cg64iD.mjs.map} +1 -1
  82. package/dist/{ShopScreen-xfPTLG5b.cjs → ShopScreen-VkI0tl3J.cjs} +2 -2
  83. package/dist/{SpacerWidget-D3yx57vH.mjs → SpacerWidget-C-Kpjntb.mjs} +2 -2
  84. package/dist/{SpacerWidget-D3yx57vH.mjs.map → SpacerWidget-C-Kpjntb.mjs.map} +1 -1
  85. package/dist/{SubscriptionsScreen-YL-1_nFd.cjs → SubscriptionsScreen-BxnLHm31.cjs} +81 -38
  86. package/dist/SubscriptionsScreen-BxnLHm31.cjs.map +1 -0
  87. package/dist/{SubscriptionsScreen-D8XUHV0b.mjs → SubscriptionsScreen-CwtJ0PHm.mjs} +83 -40
  88. package/dist/SubscriptionsScreen-CwtJ0PHm.mjs.map +1 -0
  89. package/dist/{SubscriptionsScreen-6Xp62ubF.cjs → SubscriptionsScreen-Dr0MVIPC.cjs} +1 -1
  90. package/dist/{TableWidget-DCZDRb0V.mjs → TableWidget-CSB_j9wx.mjs} +2 -2
  91. package/dist/{TableWidget-DCZDRb0V.mjs.map → TableWidget-CSB_j9wx.mjs.map} +1 -1
  92. package/dist/{TextWidget-CmuHRU-g.mjs → TextWidget-CPucLu4s.mjs} +2 -2
  93. package/dist/{TextWidget-CmuHRU-g.mjs.map → TextWidget-CPucLu4s.mjs.map} +1 -1
  94. package/dist/{ToDoWidget-CXhlO0BY.mjs → ToDoWidget-Czmpoimp.mjs} +2 -2
  95. package/dist/{ToDoWidget-CXhlO0BY.mjs.map → ToDoWidget-Czmpoimp.mjs.map} +1 -1
  96. package/dist/{UpgradeScreen-DZ6uZpeX.mjs → UpgradeScreen-u3UxUd3B.mjs} +2 -2
  97. package/dist/{UpgradeScreen-DZ6uZpeX.mjs.map → UpgradeScreen-u3UxUd3B.mjs.map} +1 -1
  98. package/dist/{VideoWidget-DlnwYXlo.mjs → VideoWidget-DNhWLnbP.mjs} +2 -2
  99. package/dist/{VideoWidget-DlnwYXlo.mjs.map → VideoWidget-DNhWLnbP.mjs.map} +1 -1
  100. package/dist/{es-XDcP51O8.mjs → es-i72IyPYD.mjs} +2 -2
  101. package/dist/{es-XDcP51O8.mjs.map → es-i72IyPYD.mjs.map} +1 -1
  102. package/dist/index.cjs +19 -19
  103. package/dist/index.mjs +60 -60
  104. package/dist/{portal_tenant_content-C1R1xxDP.cjs → portal_tenant_content-BnrwKhyK.cjs} +9 -7
  105. package/dist/portal_tenant_content-BnrwKhyK.cjs.map +1 -0
  106. package/dist/{portal_tenant_content-DPLnrtOG.mjs → portal_tenant_content-CcKZMB9E.mjs} +9 -7
  107. package/dist/portal_tenant_content-CcKZMB9E.mjs.map +1 -0
  108. package/package.json +14 -14
  109. package/dist/MessagingScreen-B4vUvkRg.mjs +0 -47
  110. package/dist/OrdersScreen-BR1WDP_v.mjs +0 -45
  111. package/dist/ProfileScreen-COZw57uK.mjs +0 -47
  112. package/dist/ShareablesScreen-DE2k5f6X.mjs.map +0 -1
  113. package/dist/ShareablesScreen-WUM3kwwU.cjs.map +0 -1
  114. package/dist/ShopScreen-BKMR1rdM.mjs +0 -46
  115. package/dist/SubscriptionsScreen-D8XUHV0b.mjs.map +0 -1
  116. package/dist/SubscriptionsScreen-YL-1_nFd.cjs.map +0 -1
  117. package/dist/portal_tenant_content-C1R1xxDP.cjs.map +0 -1
  118. package/dist/portal_tenant_content-DPLnrtOG.mjs.map +0 -1
@@ -2754,6 +2754,8 @@ const subscriptionsDomain = require_static_dict_adapter.createDomainTranslations
2754
2754
  no_image: "No image",
2755
2755
  quantity_label: "Quantity",
2756
2756
  quantity_aria: "Quantity",
2757
+ decrease_quantity_aria: "Decrease quantity",
2758
+ increase_quantity_aria: "Increase quantity",
2757
2759
  subtotal: "Subtotal",
2758
2760
  discount: "Discount",
2759
2761
  total_label: "Total",
@@ -4209,7 +4211,7 @@ function SubscriptionDetailSkeleton() {
4209
4211
  })]
4210
4212
  });
4211
4213
  }
4212
- function QuantityInput({ inputId, quantity, isUpdatingQuantity, onQuantityChange, quantityAriaLabel }) {
4214
+ function QuantityInput({ inputId, quantity, maxQuantity, isUpdatingQuantity, onQuantityChange, quantityAriaLabel, decrementAriaLabel, incrementAriaLabel }) {
4213
4215
  const inputRef = (0, react.useRef)(null);
4214
4216
  const [inputValue, setInputValue] = (0, react.useState)(String(quantity));
4215
4217
  const focusEntryQuantityRef = (0, react.useRef)(quantity);
@@ -4232,41 +4234,79 @@ function QuantityInput({ inputId, quantity, isUpdatingQuantity, onQuantityChange
4232
4234
  focusEntryQuantityRef.current = next;
4233
4235
  }, 500);
4234
4236
  };
4235
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_src.Input, {
4236
- ref: inputRef,
4237
- id: inputId,
4238
- type: "number",
4239
- min: 1,
4240
- step: 1,
4241
- value: inputValue,
4242
- onFocus: () => {
4243
- focusEntryQuantityRef.current = quantity;
4244
- },
4245
- onChange: (e) => {
4246
- const raw = e.target.value;
4247
- setInputValue(raw);
4248
- if (raw === "") {
4249
- if (commitTimerRef.current) clearTimeout(commitTimerRef.current);
4250
- return;
4251
- }
4252
- const next = parseInt(raw, 10);
4253
- if (Number.isFinite(next) && next > 0) scheduleCommit(next);
4254
- },
4255
- onBlur: () => {
4256
- if (commitTimerRef.current) clearTimeout(commitTimerRef.current);
4257
- const parsed = parseInt(inputValue, 10);
4258
- if (Number.isFinite(parsed) && parsed > 0) {
4259
- if (parsed !== quantity) onQuantityChange(parsed);
4260
- focusEntryQuantityRef.current = parsed;
4261
- } else {
4262
- const restore = focusEntryQuantityRef.current;
4263
- setInputValue(String(restore));
4264
- if (restore !== quantity) onQuantityChange(restore);
4265
- }
4266
- },
4267
- readOnly: isUpdatingQuantity,
4268
- className: require_src.cn("border-border bg-background h-10 w-16 border text-center", isUpdatingQuantity && "opacity-60"),
4269
- "aria-label": quantityAriaLabel
4237
+ const parsedInput = parseInt(inputValue, 10);
4238
+ const currentValue = Number.isFinite(parsedInput) && parsedInput > 0 ? parsedInput : quantity;
4239
+ const decrementDisabled = isUpdatingQuantity || currentValue <= 1;
4240
+ const incrementDisabled = isUpdatingQuantity || maxQuantity != null && currentValue >= maxQuantity;
4241
+ const clampToBounds = (n) => maxQuantity != null ? Math.min(maxQuantity, Math.max(1, n)) : Math.max(1, n);
4242
+ const stepBy = (delta) => {
4243
+ const clamped = clampToBounds(currentValue + delta);
4244
+ if (clamped === currentValue) return;
4245
+ setInputValue(String(clamped));
4246
+ scheduleCommit(clamped);
4247
+ };
4248
+ const stepperButtonClass = require_src.cn("text-muted-foreground hover:text-foreground hover:bg-muted flex h-7 w-7 shrink-0 items-center justify-center rounded-full shadow-xs disabled:cursor-not-allowed");
4249
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
4250
+ className: require_src.cn("border-border bg-background focus-within:border-ring focus-within:ring-ring/50 flex h-7.5 items-center justify-between rounded-2xl border focus-within:ring-[3px]", isUpdatingQuantity && "opacity-60"),
4251
+ children: [
4252
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
4253
+ type: "button",
4254
+ onClick: () => stepBy(-1),
4255
+ disabled: decrementDisabled,
4256
+ "aria-label": decrementAriaLabel,
4257
+ "aria-controls": inputId,
4258
+ className: require_src.cn(stepperButtonClass, decrementDisabled && "opacity-40"),
4259
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.Minus, { className: "h-3 w-3" })
4260
+ }),
4261
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_src.Input, {
4262
+ ref: inputRef,
4263
+ id: inputId,
4264
+ type: "number",
4265
+ min: 1,
4266
+ max: maxQuantity ?? void 0,
4267
+ step: 1,
4268
+ value: inputValue,
4269
+ onFocus: () => {
4270
+ focusEntryQuantityRef.current = currentValue;
4271
+ },
4272
+ onChange: (e) => {
4273
+ const raw = e.target.value;
4274
+ setInputValue(raw);
4275
+ if (raw === "") {
4276
+ if (commitTimerRef.current) clearTimeout(commitTimerRef.current);
4277
+ return;
4278
+ }
4279
+ const next = parseInt(raw, 10);
4280
+ if (Number.isFinite(next) && next > 0) scheduleCommit(clampToBounds(next));
4281
+ },
4282
+ onBlur: () => {
4283
+ if (commitTimerRef.current) clearTimeout(commitTimerRef.current);
4284
+ const parsed = parseInt(inputValue, 10);
4285
+ if (Number.isFinite(parsed) && parsed > 0) {
4286
+ const clamped = clampToBounds(parsed);
4287
+ if (clamped !== parsed) setInputValue(String(clamped));
4288
+ if (clamped !== quantity) onQuantityChange(clamped);
4289
+ focusEntryQuantityRef.current = clamped;
4290
+ } else {
4291
+ const restore = focusEntryQuantityRef.current;
4292
+ setInputValue(String(restore));
4293
+ if (restore !== quantity) onQuantityChange(restore);
4294
+ }
4295
+ },
4296
+ readOnly: isUpdatingQuantity,
4297
+ className: "text-foreground h-7 w-10 rounded-none border-0 bg-transparent px-0 text-center text-xs font-semibold shadow-none [-moz-appearance:textfield] focus-visible:border-0 focus-visible:ring-0 md:text-xs [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none",
4298
+ "aria-label": quantityAriaLabel
4299
+ }),
4300
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
4301
+ type: "button",
4302
+ onClick: () => stepBy(1),
4303
+ disabled: incrementDisabled,
4304
+ "aria-label": incrementAriaLabel,
4305
+ "aria-controls": inputId,
4306
+ className: require_src.cn(stepperButtonClass, incrementDisabled && "opacity-40"),
4307
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.Plus, { className: "h-3 w-3" })
4308
+ })
4309
+ ]
4270
4310
  });
4271
4311
  }
4272
4312
  function SubscriptionItemsSection({ subscription, displayQuantity, displayNextBillDate, canEditQuantity = false, onQuantityChange, isUpdatingQuantity = false }) {
@@ -4375,9 +4415,12 @@ function SubscriptionItemsSection({ subscription, displayQuantity, displayNextBi
4375
4415
  }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(QuantityInput, {
4376
4416
  inputId: quantityInputId,
4377
4417
  quantity,
4418
+ maxQuantity: subscription.subscription_plan.max_quantity,
4378
4419
  isUpdatingQuantity,
4379
4420
  onQuantityChange,
4380
- quantityAriaLabel: t("quantity_aria")
4421
+ quantityAriaLabel: t("quantity_aria"),
4422
+ decrementAriaLabel: t("decrease_quantity_aria"),
4423
+ incrementAriaLabel: t("increase_quantity_aria")
4381
4424
  })]
4382
4425
  })]
4383
4426
  })
@@ -5767,4 +5810,4 @@ Object.defineProperty(exports, "subscriptionsScreenPropertySchema", {
5767
5810
  }
5768
5811
  });
5769
5812
 
5770
- //# sourceMappingURL=SubscriptionsScreen-YL-1_nFd.cjs.map
5813
+ //# sourceMappingURL=SubscriptionsScreen-BxnLHm31.cjs.map