@bunnyapp/components 1.6.0-beta.14 → 1.6.0-beta.15.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.
Files changed (191) hide show
  1. package/README.md +42 -0
  2. package/dist/cjs/index.js +6859 -6187
  3. package/dist/cjs/types/src/components/BunnyProvider.d.ts +0 -2
  4. package/dist/cjs/types/src/components/Checkout/Checkout.d.ts +1 -1
  5. package/dist/cjs/types/src/components/Checkout/QuoteCheckout.d.ts +4 -4
  6. package/dist/cjs/types/src/components/Quote/Quote.d.ts +5 -1
  7. package/dist/cjs/types/src/components/QuoteProvider/fragments/quoteFieldsFragment.d.ts +65 -0
  8. package/dist/cjs/types/src/components/QuoteProvider/fragments/quoteFragment.d.ts +16 -112
  9. package/dist/cjs/types/src/components/QuoteProvider/hooks/useFeatureQuantities.d.ts +12 -0
  10. package/dist/cjs/types/src/components/QuoteProvider/hooks/useQuoteQuantities.d.ts +0 -5
  11. package/dist/cjs/types/src/components/QuoteProvider/mutations/quoteChangeUpdate.d.ts +16 -0
  12. package/dist/cjs/types/src/components/QuoteProvider/utils/getQuantityFromQuoteChange.d.ts +11 -0
  13. package/dist/cjs/types/src/components/QuoteProvider/utils/quoteChangeCanBeEdited.d.ts +4 -0
  14. package/dist/cjs/types/src/components/Subscriptions/Subscriptions.d.ts +1 -5
  15. package/dist/cjs/types/src/components/Subscriptions/SubscriptionsListContainer.d.ts +0 -4
  16. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/PlanPicker.d.ts +1 -2
  17. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/PriceListGrid.d.ts +1 -1
  18. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/checkoutBar/CheckoutPrice.d.ts +1 -1
  19. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/checkoutBar/PlanPickerCheckoutBar.d.ts +19 -0
  20. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/BillingPeriodSelector.d.ts +3 -3
  21. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/PriceListGridDesktop.d.ts +2 -2
  22. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/featureAddons/FeatureAddonRow.d.ts +33 -0
  23. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/featureAddons/FeatureAddons.d.ts +12 -3
  24. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/featureAddons/FeatureAddonsList.d.ts +26 -4
  25. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/planManagerUtils.d.ts +5 -2
  26. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/PriceListCardDesktop.d.ts +41 -4
  27. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/addonPlans/AddonPlans.d.ts +10 -0
  28. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/addonPlans/components/AddonPlanModal.d.ts +19 -0
  29. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/addonPlans/components/AddonPlanRow.d.ts +24 -0
  30. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/addonPlans/fragments/AddonPlans_PlanFragment.d.ts +18 -0
  31. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/addonPlans/queries/getAddonPlans.d.ts +13 -0
  32. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerMobile/PriceListCardMobile.d.ts +19 -2
  33. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceDescription/PriceListCardPriceDescription.d.ts +20 -3
  34. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceDescription/utils/hasMultipleRecurringCharges.d.ts +12 -2
  35. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceListCard.d.ts +21 -4
  36. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceListCardButton.d.ts +16 -3
  37. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceListCardFeature.d.ts +1 -1
  38. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceListCardPrice.d.ts +12 -3
  39. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceListCardTitle.d.ts +2 -3
  40. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/priceListCardUtils.d.ts +1 -1
  41. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PreviewModeAdvisary.d.ts +1 -1
  42. package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/QuantityChangeGridRow.d.ts +1 -5
  43. package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/QuantityDrawer.d.ts +1 -4
  44. package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/QuoteChangeSummarySection.d.ts +11 -6
  45. package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/context/quoteIdContext.d.ts +5 -0
  46. package/dist/{esm/types/src/components/Subscriptions/quantityChangeDrawer/fragments/QuantityDrawerQuoteFragment.d.ts → cjs/types/src/components/Subscriptions/quantityChangeDrawer/fragments/QuantityDrawer_QuoteFragment.d.ts} +4 -0
  47. package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/hooks/useQuoteQueryData.d.ts +3 -3
  48. package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/hooks/useSetQuoteQueryData.d.ts +2 -2
  49. package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/quantityChangeDrawerDesktop/QuantityChangeDrawerDesktop.d.ts +1 -6
  50. package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/{QuantityInput.d.ts → quantityInput/QuantityInput.d.ts} +2 -9
  51. package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/quantityInput/fragments/QuantityInput_QuoteFragment.d.ts +27 -0
  52. package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/utils/utils.d.ts +3 -2
  53. package/dist/cjs/types/src/components/Subscriptions/subscriptionsList/SubscriptionChargeTotal.d.ts +3 -3
  54. package/dist/cjs/types/src/components/Subscriptions/subscriptionsList/subscriptionCardHeader/components/SubscriptionCardActions.d.ts +21 -0
  55. package/dist/cjs/types/src/components/Subscriptions/subscriptionsList/subscriptionCardHeader/queries/getPriceListChangeOptions.d.ts +9 -0
  56. package/dist/cjs/types/src/components/Subscriptions/subscriptionsList/utils/filterSubscriptionCharges.d.ts +2 -0
  57. package/dist/cjs/types/src/components/Subscriptions/subscriptionsList/utils/sortSubscriptionCharges.d.ts +2 -0
  58. package/dist/cjs/types/src/components/Transactions/Transactions.d.ts +1 -1
  59. package/dist/cjs/types/src/components/priceListPricing/PricingTooltip.d.ts +18 -16
  60. package/dist/cjs/types/src/components/priceListPricing/utils/hasPriceTiers.d.ts +12 -8
  61. package/dist/cjs/types/src/components/priceListPricing/utils/priceListChargeUtil.ts/chargeHasPriceTiers.d.ts +12 -0
  62. package/dist/cjs/types/src/contexts/BrandContext.d.ts +11 -2
  63. package/dist/cjs/types/src/graphql/queries/getBranding.d.ts +7 -2
  64. package/dist/cjs/types/src/graphql/queries/getPriceListChangeOptions.d.ts +4 -4
  65. package/dist/cjs/types/src/hooks/quotes/useSendAcceptQuote.d.ts +2 -1
  66. package/dist/cjs/types/src/hooks/useAllErrorFormats.d.ts +1 -0
  67. package/dist/cjs/types/src/hooks/useCreateQueryClient.d.ts +2 -0
  68. package/dist/cjs/types/src/hooks/useToggleAddonQuoteChange.d.ts +1 -1
  69. package/dist/cjs/types/src/types/SubscriptionCharge.d.ts +39 -0
  70. package/dist/cjs/types/src/utils/QueryKeyFactory.d.ts +95 -0
  71. package/dist/cjs/types/src/utils/addonPlanUtils/addonPlanUtils.d.ts +5 -0
  72. package/dist/cjs/types/src/utils/addonPlanUtils/getAddonsForBillingPeriod.d.ts +8 -0
  73. package/dist/cjs/types/src/utils/addonPlanUtils/hasUnpurchasedAddonPricelists.d.ts +15 -0
  74. package/dist/cjs/types/src/utils/chargeUtils.d.ts +5 -2
  75. package/dist/cjs/types/src/utils/createStateContext.d.ts +11 -0
  76. package/dist/cjs/types/src/utils/createValueContext.d.ts +14 -0
  77. package/dist/{esm/types/src/utils → cjs/types/src/utils/featureAddonUtils}/featureAddonUtils.d.ts +2 -3
  78. package/dist/cjs/types/src/utils/featureAddonUtils/isAddonPurchased.d.ts +24 -0
  79. package/dist/cjs/types/src/utils/priceListUtils/doesPriceListHaveFlatFeeCharges.d.ts +11 -6
  80. package/dist/cjs/types/src/utils/priceListUtils/getPrice.d.ts +11 -5
  81. package/dist/cjs/types/src/utils/priceListUtils/priceDescription.d.ts +3 -3
  82. package/dist/cjs/types/src/utils/priceListUtils/priceListPriceText.d.ts +17 -10
  83. package/dist/cjs/types/src/utils/pricePickerUtils.d.ts +2 -2
  84. package/dist/esm/index.js +7890 -7218
  85. package/dist/esm/types/src/components/BunnyProvider.d.ts +0 -2
  86. package/dist/esm/types/src/components/Checkout/Checkout.d.ts +1 -1
  87. package/dist/esm/types/src/components/Checkout/QuoteCheckout.d.ts +4 -4
  88. package/dist/esm/types/src/components/Quote/Quote.d.ts +5 -1
  89. package/dist/esm/types/src/components/QuoteProvider/fragments/quoteFieldsFragment.d.ts +65 -0
  90. package/dist/esm/types/src/components/QuoteProvider/fragments/quoteFragment.d.ts +16 -112
  91. package/dist/esm/types/src/components/QuoteProvider/hooks/useFeatureQuantities.d.ts +12 -0
  92. package/dist/esm/types/src/components/QuoteProvider/hooks/useQuoteQuantities.d.ts +0 -5
  93. package/dist/esm/types/src/components/QuoteProvider/mutations/quoteChangeUpdate.d.ts +16 -0
  94. package/dist/esm/types/src/components/QuoteProvider/utils/getQuantityFromQuoteChange.d.ts +11 -0
  95. package/dist/esm/types/src/components/QuoteProvider/utils/quoteChangeCanBeEdited.d.ts +4 -0
  96. package/dist/esm/types/src/components/Subscriptions/Subscriptions.d.ts +1 -5
  97. package/dist/esm/types/src/components/Subscriptions/SubscriptionsListContainer.d.ts +0 -4
  98. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/PlanPicker.d.ts +1 -2
  99. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/PriceListGrid.d.ts +1 -1
  100. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/checkoutBar/CheckoutPrice.d.ts +1 -1
  101. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/checkoutBar/PlanPickerCheckoutBar.d.ts +19 -0
  102. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/BillingPeriodSelector.d.ts +3 -3
  103. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/PriceListGridDesktop.d.ts +2 -2
  104. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/featureAddons/FeatureAddonRow.d.ts +33 -0
  105. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/featureAddons/FeatureAddons.d.ts +12 -3
  106. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/featureAddons/FeatureAddonsList.d.ts +26 -4
  107. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/planManagerUtils.d.ts +5 -2
  108. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/PriceListCardDesktop.d.ts +41 -4
  109. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/addonPlans/AddonPlans.d.ts +10 -0
  110. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/addonPlans/components/AddonPlanModal.d.ts +19 -0
  111. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/addonPlans/components/AddonPlanRow.d.ts +24 -0
  112. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/addonPlans/fragments/AddonPlans_PlanFragment.d.ts +18 -0
  113. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/priceListCardDesktop/addonPlans/queries/getAddonPlans.d.ts +13 -0
  114. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerMobile/PriceListCardMobile.d.ts +19 -2
  115. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceDescription/PriceListCardPriceDescription.d.ts +20 -3
  116. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceDescription/utils/hasMultipleRecurringCharges.d.ts +12 -2
  117. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceListCard.d.ts +21 -4
  118. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceListCardButton.d.ts +16 -3
  119. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceListCardFeature.d.ts +1 -1
  120. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceListCardPrice.d.ts +12 -3
  121. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/PriceListCardTitle.d.ts +2 -3
  122. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/priceListCard/priceListCardUtils.d.ts +1 -1
  123. package/dist/esm/types/src/components/Subscriptions/Upgrade/PreviewModeAdvisary.d.ts +1 -1
  124. package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/QuantityChangeGridRow.d.ts +1 -5
  125. package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/QuantityDrawer.d.ts +1 -4
  126. package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/QuoteChangeSummarySection.d.ts +11 -6
  127. package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/context/quoteIdContext.d.ts +5 -0
  128. package/dist/{cjs/types/src/components/Subscriptions/quantityChangeDrawer/fragments/QuantityDrawerQuoteFragment.d.ts → esm/types/src/components/Subscriptions/quantityChangeDrawer/fragments/QuantityDrawer_QuoteFragment.d.ts} +4 -0
  129. package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/hooks/useQuoteQueryData.d.ts +3 -3
  130. package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/hooks/useSetQuoteQueryData.d.ts +2 -2
  131. package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/quantityChangeDrawerDesktop/QuantityChangeDrawerDesktop.d.ts +1 -6
  132. package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/{QuantityInput.d.ts → quantityInput/QuantityInput.d.ts} +2 -9
  133. package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/quantityInput/fragments/QuantityInput_QuoteFragment.d.ts +27 -0
  134. package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/utils/utils.d.ts +3 -2
  135. package/dist/esm/types/src/components/Subscriptions/subscriptionsList/SubscriptionChargeTotal.d.ts +3 -3
  136. package/dist/esm/types/src/components/Subscriptions/subscriptionsList/subscriptionCardHeader/components/SubscriptionCardActions.d.ts +21 -0
  137. package/dist/esm/types/src/components/Subscriptions/subscriptionsList/subscriptionCardHeader/queries/getPriceListChangeOptions.d.ts +9 -0
  138. package/dist/esm/types/src/components/Subscriptions/subscriptionsList/utils/filterSubscriptionCharges.d.ts +2 -0
  139. package/dist/esm/types/src/components/Subscriptions/subscriptionsList/utils/sortSubscriptionCharges.d.ts +2 -0
  140. package/dist/esm/types/src/components/Transactions/Transactions.d.ts +1 -1
  141. package/dist/esm/types/src/components/priceListPricing/PricingTooltip.d.ts +18 -16
  142. package/dist/esm/types/src/components/priceListPricing/utils/hasPriceTiers.d.ts +12 -8
  143. package/dist/esm/types/src/components/priceListPricing/utils/priceListChargeUtil.ts/chargeHasPriceTiers.d.ts +12 -0
  144. package/dist/esm/types/src/contexts/BrandContext.d.ts +11 -2
  145. package/dist/esm/types/src/graphql/queries/getBranding.d.ts +7 -2
  146. package/dist/esm/types/src/graphql/queries/getPriceListChangeOptions.d.ts +4 -4
  147. package/dist/esm/types/src/hooks/quotes/useSendAcceptQuote.d.ts +2 -1
  148. package/dist/esm/types/src/hooks/useAllErrorFormats.d.ts +1 -0
  149. package/dist/esm/types/src/hooks/useCreateQueryClient.d.ts +2 -0
  150. package/dist/esm/types/src/hooks/useToggleAddonQuoteChange.d.ts +1 -1
  151. package/dist/esm/types/src/types/SubscriptionCharge.d.ts +39 -0
  152. package/dist/esm/types/src/utils/QueryKeyFactory.d.ts +95 -0
  153. package/dist/esm/types/src/utils/addonPlanUtils/addonPlanUtils.d.ts +5 -0
  154. package/dist/esm/types/src/utils/addonPlanUtils/getAddonsForBillingPeriod.d.ts +8 -0
  155. package/dist/esm/types/src/utils/addonPlanUtils/hasUnpurchasedAddonPricelists.d.ts +15 -0
  156. package/dist/esm/types/src/utils/chargeUtils.d.ts +5 -2
  157. package/dist/esm/types/src/utils/createStateContext.d.ts +11 -0
  158. package/dist/esm/types/src/utils/createValueContext.d.ts +14 -0
  159. package/dist/{cjs/types/src/utils → esm/types/src/utils/featureAddonUtils}/featureAddonUtils.d.ts +2 -3
  160. package/dist/esm/types/src/utils/featureAddonUtils/isAddonPurchased.d.ts +24 -0
  161. package/dist/esm/types/src/utils/priceListUtils/doesPriceListHaveFlatFeeCharges.d.ts +11 -6
  162. package/dist/esm/types/src/utils/priceListUtils/getPrice.d.ts +11 -5
  163. package/dist/esm/types/src/utils/priceListUtils/priceDescription.d.ts +3 -3
  164. package/dist/esm/types/src/utils/priceListUtils/priceListPriceText.d.ts +17 -10
  165. package/dist/esm/types/src/utils/pricePickerUtils.d.ts +2 -2
  166. package/dist/index.d.ts +4 -1
  167. package/package.json +1 -1
  168. package/dist/cjs/types/src/components/QuoteProvider/mutations/quoteChargeUpdate.d.ts +0 -23
  169. package/dist/cjs/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/PlanAddonsCard.d.ts +0 -11
  170. package/dist/cjs/types/src/components/Subscriptions/subscriptionsList/SubscriptionCardActions.d.ts +0 -9
  171. package/dist/cjs/types/src/graphql/queries/getAddonPlans.d.ts +0 -37
  172. package/dist/cjs/types/src/graphql/queries/getFeatureUsage.d.ts +0 -7
  173. package/dist/cjs/types/src/hooks/usePriceListChangeOptions.d.ts +0 -9
  174. package/dist/cjs/types/src/utils/GraphQLClient.d.ts +0 -2
  175. package/dist/cjs/types/src/utils/addonPlanUtils.d.ts +0 -8
  176. package/dist/esm/types/src/components/QuoteProvider/mutations/quoteChargeUpdate.d.ts +0 -23
  177. package/dist/esm/types/src/components/Subscriptions/Upgrade/PlanPicker/planPickerDesktop/PlanAddonsCard.d.ts +0 -11
  178. package/dist/esm/types/src/components/Subscriptions/subscriptionsList/SubscriptionCardActions.d.ts +0 -9
  179. package/dist/esm/types/src/graphql/queries/getAddonPlans.d.ts +0 -37
  180. package/dist/esm/types/src/graphql/queries/getFeatureUsage.d.ts +0 -7
  181. package/dist/esm/types/src/hooks/usePriceListChangeOptions.d.ts +0 -9
  182. package/dist/esm/types/src/utils/GraphQLClient.d.ts +0 -2
  183. package/dist/esm/types/src/utils/addonPlanUtils.d.ts +0 -8
  184. /package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/{queries → mutations}/quoteChargeCreate.d.ts +0 -0
  185. /package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/{queries → mutations}/quoteChargeUpdate.d.ts +0 -0
  186. /package/dist/cjs/types/src/components/Subscriptions/quantityChangeDrawer/{queries → mutations}/quoteSubscriptionUpdate.d.ts +0 -0
  187. /package/dist/cjs/types/src/components/Subscriptions/subscriptionsList/{SubscriptionCardHeader.d.ts → subscriptionCardHeader/SubscriptionCardHeader.d.ts} +0 -0
  188. /package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/{queries → mutations}/quoteChargeCreate.d.ts +0 -0
  189. /package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/{queries → mutations}/quoteChargeUpdate.d.ts +0 -0
  190. /package/dist/esm/types/src/components/Subscriptions/quantityChangeDrawer/{queries → mutations}/quoteSubscriptionUpdate.d.ts +0 -0
  191. /package/dist/esm/types/src/components/Subscriptions/subscriptionsList/{SubscriptionCardHeader.d.ts → subscriptionCardHeader/SubscriptionCardHeader.d.ts} +0 -0
package/README.md CHANGED
@@ -104,6 +104,48 @@ npm run codegen
104
104
  npx gql-tada doctor
105
105
  ```
106
106
 
107
+ ### Development best practices
108
+
109
+ **Updating the React Query cache with typed data**
110
+
111
+ Sometimes you want to update the React Query cache directly instead of running another query.
112
+ To keep this safe, you should make sure the data you write into the cache is **strongly typed** and matches what your components expect.
113
+ One simple pattern is to create small hooks that accept a GraphQL fragment, and use that fragment to type the data you store in the cache.
114
+
115
+ Below is a minimal, generic example using a `FruitFragment` and a `useSetFruitQueryData` hook:
116
+
117
+ ```typescript
118
+ const FruitFragment = graphql(`
119
+ fragment FruitFragment on Fruit {
120
+ id
121
+ name
122
+ }
123
+ `);
124
+
125
+ export const useSetFruitQueryData = () => {
126
+ const queryClient = useQueryClient();
127
+
128
+ const setFruitQueryData = (
129
+ fruitId: string,
130
+ maskedFruit: FragmentOf<typeof FruitFragment> | null
131
+ ) => {
132
+ queryClient.setQueryData(['fruit', fruitId], maskedFruit);
133
+ };
134
+
135
+ return { setFruitQueryData };
136
+ };
137
+ ```
138
+
139
+ Using this hook, the data you write to the cache is constrained by the `FragmentOf<typeof FruitFragment>` type:
140
+
141
+ ```typescript
142
+ const { setFruitQueryData } = useSetFruitQueryData();
143
+
144
+ setFruitQueryData('123', { id: '123', name: 'Apple' });
145
+ ```
146
+
147
+ For a more complete example in the codebase, see the `useSetQuoteQueryData` hook in the `quantityChangeDrawer` module.
148
+
107
149
  ### Deprecating @bunnyapp/common
108
150
 
109
151
  We are gradually deprecating `@bunnyapp/common` and moving types and enums locally to this repository. When something is moved from `@bunnyapp/common`, follow this pattern: