order3000 1.12.0 → 1.13.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.
package/dist/client.cjs CHANGED
@@ -1026,6 +1026,64 @@ class PaymentIntentsResource extends BaseResource {
1026
1026
  }
1027
1027
  }
1028
1028
 
1029
+ class PublicationsResource extends BaseResource {
1030
+ constructor(tokenManager, baseUrl) {
1031
+ super(tokenManager, baseUrl, "/publications");
1032
+ }
1033
+ /**
1034
+ * Create a publication bound to a menu (by `menuAccessor`) with column
1035
+ * defaults (A4, primary palette, all facts shown). `name` is optional —
1036
+ * set the design afterwards with `setBlocks`. Returns the new publication
1037
+ * row (its `accessor` keys every later verb).
1038
+ */
1039
+ async create(body) {
1040
+ return this.request("POST", "", body);
1041
+ }
1042
+ /**
1043
+ * Partially update a publication's design, block by block: only the
1044
+ * provided fields fold into the stored designDoc (grouped blocks — frame,
1045
+ * QR, rule, item facts — merge; `showFrame: false` / `showQr: false`
1046
+ * remove their block). Localized texts merge per locale; colour tokens
1047
+ * accept `null` to clear back to the brand default. The name + accessor
1048
+ * follow the primary-locale title — the response returns the (possibly
1049
+ * regenerated) accessor.
1050
+ */
1051
+ async setBlocks(accessor, body) {
1052
+ return this.request(
1053
+ "PATCH",
1054
+ `/${encodeURIComponent(accessor)}`,
1055
+ body
1056
+ );
1057
+ }
1058
+ /**
1059
+ * Render the publication's saved design to its print PDF (the same
1060
+ * Gotenberg path as the public download route). Returns the PDF
1061
+ * base64-encoded (`pdfBase64`) with its page count — decode with
1062
+ * `Buffer.from(result.pdfBase64, 'base64')`.
1063
+ */
1064
+ async render(accessor, body = {}) {
1065
+ return this.request(
1066
+ "POST",
1067
+ `/${encodeURIComponent(accessor)}/render`,
1068
+ body
1069
+ );
1070
+ }
1071
+ /**
1072
+ * Compose a booklet PDF from ordered sections: inline `sections`
1073
+ * (`publicationAccessor` + optional 1-based inclusive page range) for
1074
+ * ad-hoc composition, or `bookletAccessor` to compose a persisted booklet
1075
+ * publication from its stored sections. Returns the merged PDF
1076
+ * base64-encoded with its page count.
1077
+ */
1078
+ async composeBooklet(body) {
1079
+ return this.request(
1080
+ "POST",
1081
+ "/compose-booklet",
1082
+ body
1083
+ );
1084
+ }
1085
+ }
1086
+
1029
1087
  class ReservationsResource extends BaseResource {
1030
1088
  constructor(tokenManager, baseUrl) {
1031
1089
  super(tokenManager, baseUrl, "/reservations");
@@ -1735,6 +1793,7 @@ class O3KClient {
1735
1793
  __publicField(this, "menus");
1736
1794
  __publicField(this, "orders");
1737
1795
  __publicField(this, "paymentIntents");
1796
+ __publicField(this, "publications");
1738
1797
  __publicField(this, "reservations");
1739
1798
  __publicField(this, "rituals");
1740
1799
  __publicField(this, "subscriptions");
@@ -1767,6 +1826,10 @@ class O3KClient {
1767
1826
  this.tokenManager,
1768
1827
  this.baseUrl
1769
1828
  );
1829
+ this.publications = new PublicationsResource(
1830
+ this.tokenManager,
1831
+ this.baseUrl
1832
+ );
1770
1833
  this.reservations = new ReservationsResource(
1771
1834
  this.tokenManager,
1772
1835
  this.baseUrl
package/dist/client.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { ae as ListAdsOptions, af as ListAdsResponse, A as Ad, v as CreateAdRequest, w as CreateAdResponse, aA as PatchAdRequest, aB as PatchAdResponse, aR as SaveAdKeywordsRequest, aS as SaveAdKeywordsResponse, aP as SaveAdCalloutsRequest, aQ as SaveAdCalloutsResponse, aT as SaveAdNegativeKeywordsRequest, aU as SaveAdNegativeKeywordsResponse, aV as SaveAdWebsitePagesRequest, aW as SaveAdWebsitePagesResponse, a$ as SetAdBudgetRequest, b0 as SetAdBudgetResponse, W as EditMetaAdRequest, X as EditMetaAdResponse, O as DeleteAdResponse, a5 as GetAreaOptions, c as Area, a4 as GetAreaAvailabilityOptions, e as AreaAvailabilityResponse, b1 as SubmitAreaBookingRequestPayload, h as AreaBookingRequestResponse, ag as ListArticlesOptions, ah as ListArticlesResponse, m as Article, aC as PatchArticleRequest, a1 as FeatureImage, bi as UploadFeatureImageArgs, aG as PatchFeatureImageRequest, ai as ListAssetsOptions, aj as ListAssetsResponse, n as Asset, B as Basket, a as AddToBasketRequest, b as AddToBasketResponse, aN as RemoveFromBasketResponse, N as DeclaredReturn, t as BasketTotals, a2 as FetchBeverageResponse, S as EditBeverageRequest, T as EditBeverageResponse, be as UploadAssetArgs, bf as UploadAssetResponse, a7 as GetCalloutsResponse, x as CreateCalloutRequest, y as CreateCalloutResponse, ba as UpdateCalloutRequest, bb as UpdateCalloutResponse, P as DeleteCalloutResponse, a3 as FetchDishResponse, U as EditDishRequest, V as EditDishResponse, ak as ListEventsOptions, al as ListEventsResponse, E as CreateEventRequest, F as CreateEventResponse, a8 as GetEventOptions, _ as EventByAccessor, aE as PatchEventRequest, aF as PatchEventResponse, Q as DeleteEventResponse, a9 as GetEventSlotAvailabilityOptions, a0 as EventSlotAvailabilityResponse, bg as UploadEventAssetArgs, bh as UploadEventAssetResponse, aa as GetMenuOptions, ao as Menu, ar as MenuBundle, aw as MenuSubscription, ad as LatestOrder, aI as PlaceOrderRequest, aJ as PlaceOrderResponse, C as ConfirmOrderRequest, u as ConfirmOrderResponse, G as CreatePaymentIntentRequest, H as CreatePaymentIntentResponse, z as CreateDeltaPaymentIntentRequest, D as CreateDeltaPaymentIntentResponse, aL as ReduceDeltaPaymentIntentRequest, aM as ReduceDeltaPaymentIntentResponse, am as MakeReservationRequest, an as MakeReservationResponse, aO as RitualByAccessor, b2 as SubscribeRequest, b3 as SubscribeResponse, b6 as SubscriptionCreditStatus, b5 as SubscriptionCredit, r as BasketItemMetadata, bj as Venue, ac as GetWebsitePagesResponse, I as CreateWebsitePageRequest, J as CreateWebsitePageResponse, bc as UpdateWebsitePageRequest, bd as UpdateWebsitePageResponse, R as DeleteWebsitePageResponse, L as Currency, aZ as ScheduleTimeSlot, M as DayOfWeek } from './index-bbg7Ev_r.cjs';
2
- export { d as O3KAreaAsset, f as O3KAreaAvailabilityWindow, g as O3KAreaBookingMode, i as O3KAreaBookingRequestSource, j as O3KAreaBookingRequestStatus, k as O3KAreaBookingStatus, l as O3KAreaFeature, o as O3KBasketItem, p as O3KBasketItemDeposit, q as O3KBasketItemMenuItemRef, s as O3KBasketStatus, K as O3KCropArea, Y as O3KEvent, Z as O3KEventAsset, $ as O3KEventMenu, a6 as O3KGetArticleResponse, ab as O3KGetVenueResponse, ap as O3KMenuAsset, aq as O3KMenuBeverage, as as O3KMenuBundleDeposit, at as O3KMenuDish, au as O3KMenuItem, av as O3KMenuItemType, ax as O3KMenuSubscriptionPoster, ay as O3KOrderFulfillmentType, az as O3KOrderStatus, aD as O3KPatchArticleResponse, aH as O3KPaymentStatus, aK as O3KPromotion, aX as O3KSchedule, aY as O3KScheduleOverride, a_ as O3KScheduleWithTimeSlots, b4 as O3KSubscriberStatus, b7 as O3KSubscriptionPeriod, b8 as O3KTimeSlot, b9 as O3KUnit } from './index-bbg7Ev_r.cjs';
1
+ import { ai as ListAdsOptions, aj as ListAdsResponse, A as Ad, x as CreateAdRequest, y as CreateAdResponse, aE as PatchAdRequest, aF as PatchAdResponse, aX as SaveAdKeywordsRequest, aY as SaveAdKeywordsResponse, aV as SaveAdCalloutsRequest, aW as SaveAdCalloutsResponse, aZ as SaveAdNegativeKeywordsRequest, a_ as SaveAdNegativeKeywordsResponse, a$ as SaveAdWebsitePagesRequest, b0 as SaveAdWebsitePagesResponse, b5 as SetAdBudgetRequest, b6 as SetAdBudgetResponse, _ as EditMetaAdRequest, $ as EditMetaAdResponse, S as DeleteAdResponse, a9 as GetAreaOptions, c as Area, a8 as GetAreaAvailabilityOptions, e as AreaAvailabilityResponse, b9 as SubmitAreaBookingRequestPayload, h as AreaBookingRequestResponse, ak as ListArticlesOptions, al as ListArticlesResponse, m as Article, aG as PatchArticleRequest, a5 as FeatureImage, bq as UploadFeatureImageArgs, aK as PatchFeatureImageRequest, am as ListAssetsOptions, an as ListAssetsResponse, n as Asset, B as Basket, a as AddToBasketRequest, b as AddToBasketResponse, aR as RemoveFromBasketResponse, R as DeclaredReturn, t as BasketTotals, a6 as FetchBeverageResponse, W as EditBeverageRequest, X as EditBeverageResponse, bm as UploadAssetArgs, bn as UploadAssetResponse, ab as GetCalloutsResponse, z as CreateCalloutRequest, D as CreateCalloutResponse, bi as UpdateCalloutRequest, bj as UpdateCalloutResponse, T as DeleteCalloutResponse, a7 as FetchDishResponse, Y as EditDishRequest, Z as EditDishResponse, ao as ListEventsOptions, ap as ListEventsResponse, G as CreateEventRequest, H as CreateEventResponse, ac as GetEventOptions, a2 as EventByAccessor, aI as PatchEventRequest, aJ as PatchEventResponse, U as DeleteEventResponse, ad as GetEventSlotAvailabilityOptions, a4 as EventSlotAvailabilityResponse, bo as UploadEventAssetArgs, bp as UploadEventAssetResponse, ae as GetMenuOptions, as as Menu, av as MenuBundle, aA as MenuSubscription, ah as LatestOrder, aM as PlaceOrderRequest, aN as PlaceOrderResponse, v as ConfirmOrderRequest, w as ConfirmOrderResponse, K as CreatePaymentIntentRequest, L as CreatePaymentIntentResponse, E as CreateDeltaPaymentIntentRequest, F as CreateDeltaPaymentIntentResponse, aP as ReduceDeltaPaymentIntentRequest, aQ as ReduceDeltaPaymentIntentResponse, I as CreateMenuPublicationRequest, J as CreateMenuPublicationResponse, b7 as SetMenuPublicationBlocksRequest, b8 as SetMenuPublicationBlocksResponse, aS as RenderMenuPublicationPdfRequest, aT as RenderMenuPublicationPdfResponse, C as ComposeMenuPublicationBookletRequest, u as ComposeMenuPublicationBookletResponse, aq as MakeReservationRequest, ar as MakeReservationResponse, aU as RitualByAccessor, ba as SubscribeRequest, bb as SubscribeResponse, be as SubscriptionCreditStatus, bd as SubscriptionCredit, r as BasketItemMetadata, br as Venue, ag as GetWebsitePagesResponse, M as CreateWebsitePageRequest, N as CreateWebsitePageResponse, bk as UpdateWebsitePageRequest, bl as UpdateWebsitePageResponse, V as DeleteWebsitePageResponse, P as Currency, b3 as ScheduleTimeSlot, Q as DayOfWeek } from './index-CJebGltI.cjs';
2
+ export { d as O3KAreaAsset, f as O3KAreaAvailabilityWindow, g as O3KAreaBookingMode, i as O3KAreaBookingRequestSource, j as O3KAreaBookingRequestStatus, k as O3KAreaBookingStatus, l as O3KAreaFeature, o as O3KBasketItem, p as O3KBasketItemDeposit, q as O3KBasketItemMenuItemRef, s as O3KBasketStatus, O as O3KCropArea, a0 as O3KEvent, a1 as O3KEventAsset, a3 as O3KEventMenu, aa as O3KGetArticleResponse, af as O3KGetVenueResponse, at as O3KMenuAsset, au as O3KMenuBeverage, aw as O3KMenuBundleDeposit, ax as O3KMenuDish, ay as O3KMenuItem, az as O3KMenuItemType, aB as O3KMenuSubscriptionPoster, aC as O3KOrderFulfillmentType, aD as O3KOrderStatus, aH as O3KPatchArticleResponse, aL as O3KPaymentStatus, aO as O3KPromotion, b1 as O3KSchedule, b2 as O3KScheduleOverride, b4 as O3KScheduleWithTimeSlots, bc as O3KSubscriberStatus, bf as O3KSubscriptionPeriod, bg as O3KTimeSlot, bh as O3KUnit } from './index-CJebGltI.cjs';
3
3
  import { z as z$1 } from 'zod';
4
4
  import { z } from 'zod/v4';
5
5
  import { RealtimePostgresChangesPayload, RealtimeChannel, SupabaseClient } from '@supabase/supabase-js';
@@ -595,6 +595,42 @@ declare class PaymentIntentsResource extends BaseResource {
595
595
  reduceDelta(request: ReduceDeltaPaymentIntentRequest): Promise<ReduceDeltaPaymentIntentResponse>;
596
596
  }
597
597
 
598
+ declare class PublicationsResource extends BaseResource {
599
+ constructor(tokenManager: TokenManager, baseUrl: string);
600
+ /**
601
+ * Create a publication bound to a menu (by `menuAccessor`) with column
602
+ * defaults (A4, primary palette, all facts shown). `name` is optional —
603
+ * set the design afterwards with `setBlocks`. Returns the new publication
604
+ * row (its `accessor` keys every later verb).
605
+ */
606
+ create(body: Omit<CreateMenuPublicationRequest, 'venueAccessor'>): Promise<CreateMenuPublicationResponse>;
607
+ /**
608
+ * Partially update a publication's design, block by block: only the
609
+ * provided fields fold into the stored designDoc (grouped blocks — frame,
610
+ * QR, rule, item facts — merge; `showFrame: false` / `showQr: false`
611
+ * remove their block). Localized texts merge per locale; colour tokens
612
+ * accept `null` to clear back to the brand default. The name + accessor
613
+ * follow the primary-locale title — the response returns the (possibly
614
+ * regenerated) accessor.
615
+ */
616
+ setBlocks(accessor: string, body: Omit<SetMenuPublicationBlocksRequest, 'venueAccessor' | 'publicationAccessor'>): Promise<SetMenuPublicationBlocksResponse>;
617
+ /**
618
+ * Render the publication's saved design to its print PDF (the same
619
+ * Gotenberg path as the public download route). Returns the PDF
620
+ * base64-encoded (`pdfBase64`) with its page count — decode with
621
+ * `Buffer.from(result.pdfBase64, 'base64')`.
622
+ */
623
+ render(accessor: string, body?: Omit<RenderMenuPublicationPdfRequest, 'venueAccessor' | 'publicationAccessor'>): Promise<RenderMenuPublicationPdfResponse>;
624
+ /**
625
+ * Compose a booklet PDF from ordered sections: inline `sections`
626
+ * (`publicationAccessor` + optional 1-based inclusive page range) for
627
+ * ad-hoc composition, or `bookletAccessor` to compose a persisted booklet
628
+ * publication from its stored sections. Returns the merged PDF
629
+ * base64-encoded with its page count.
630
+ */
631
+ composeBooklet(body: Omit<ComposeMenuPublicationBookletRequest, 'venueAccessor'>): Promise<ComposeMenuPublicationBookletResponse>;
632
+ }
633
+
598
634
  declare class ReservationsResource extends BaseResource {
599
635
  constructor(tokenManager: TokenManager, baseUrl: string);
600
636
  /**
@@ -1421,6 +1457,7 @@ declare class O3KClient {
1421
1457
  menus: MenusResource;
1422
1458
  orders: OrdersResource;
1423
1459
  paymentIntents: PaymentIntentsResource;
1460
+ publications: PublicationsResource;
1424
1461
  reservations: ReservationsResource;
1425
1462
  rituals: RitualsResource;
1426
1463
  subscriptions: SubscriptionsResource;
package/dist/client.d.mts CHANGED
@@ -1,5 +1,5 @@
1
- import { ae as ListAdsOptions, af as ListAdsResponse, A as Ad, v as CreateAdRequest, w as CreateAdResponse, aA as PatchAdRequest, aB as PatchAdResponse, aR as SaveAdKeywordsRequest, aS as SaveAdKeywordsResponse, aP as SaveAdCalloutsRequest, aQ as SaveAdCalloutsResponse, aT as SaveAdNegativeKeywordsRequest, aU as SaveAdNegativeKeywordsResponse, aV as SaveAdWebsitePagesRequest, aW as SaveAdWebsitePagesResponse, a$ as SetAdBudgetRequest, b0 as SetAdBudgetResponse, W as EditMetaAdRequest, X as EditMetaAdResponse, O as DeleteAdResponse, a5 as GetAreaOptions, c as Area, a4 as GetAreaAvailabilityOptions, e as AreaAvailabilityResponse, b1 as SubmitAreaBookingRequestPayload, h as AreaBookingRequestResponse, ag as ListArticlesOptions, ah as ListArticlesResponse, m as Article, aC as PatchArticleRequest, a1 as FeatureImage, bi as UploadFeatureImageArgs, aG as PatchFeatureImageRequest, ai as ListAssetsOptions, aj as ListAssetsResponse, n as Asset, B as Basket, a as AddToBasketRequest, b as AddToBasketResponse, aN as RemoveFromBasketResponse, N as DeclaredReturn, t as BasketTotals, a2 as FetchBeverageResponse, S as EditBeverageRequest, T as EditBeverageResponse, be as UploadAssetArgs, bf as UploadAssetResponse, a7 as GetCalloutsResponse, x as CreateCalloutRequest, y as CreateCalloutResponse, ba as UpdateCalloutRequest, bb as UpdateCalloutResponse, P as DeleteCalloutResponse, a3 as FetchDishResponse, U as EditDishRequest, V as EditDishResponse, ak as ListEventsOptions, al as ListEventsResponse, E as CreateEventRequest, F as CreateEventResponse, a8 as GetEventOptions, _ as EventByAccessor, aE as PatchEventRequest, aF as PatchEventResponse, Q as DeleteEventResponse, a9 as GetEventSlotAvailabilityOptions, a0 as EventSlotAvailabilityResponse, bg as UploadEventAssetArgs, bh as UploadEventAssetResponse, aa as GetMenuOptions, ao as Menu, ar as MenuBundle, aw as MenuSubscription, ad as LatestOrder, aI as PlaceOrderRequest, aJ as PlaceOrderResponse, C as ConfirmOrderRequest, u as ConfirmOrderResponse, G as CreatePaymentIntentRequest, H as CreatePaymentIntentResponse, z as CreateDeltaPaymentIntentRequest, D as CreateDeltaPaymentIntentResponse, aL as ReduceDeltaPaymentIntentRequest, aM as ReduceDeltaPaymentIntentResponse, am as MakeReservationRequest, an as MakeReservationResponse, aO as RitualByAccessor, b2 as SubscribeRequest, b3 as SubscribeResponse, b6 as SubscriptionCreditStatus, b5 as SubscriptionCredit, r as BasketItemMetadata, bj as Venue, ac as GetWebsitePagesResponse, I as CreateWebsitePageRequest, J as CreateWebsitePageResponse, bc as UpdateWebsitePageRequest, bd as UpdateWebsitePageResponse, R as DeleteWebsitePageResponse, L as Currency, aZ as ScheduleTimeSlot, M as DayOfWeek } from './index-bbg7Ev_r.mjs';
2
- export { d as O3KAreaAsset, f as O3KAreaAvailabilityWindow, g as O3KAreaBookingMode, i as O3KAreaBookingRequestSource, j as O3KAreaBookingRequestStatus, k as O3KAreaBookingStatus, l as O3KAreaFeature, o as O3KBasketItem, p as O3KBasketItemDeposit, q as O3KBasketItemMenuItemRef, s as O3KBasketStatus, K as O3KCropArea, Y as O3KEvent, Z as O3KEventAsset, $ as O3KEventMenu, a6 as O3KGetArticleResponse, ab as O3KGetVenueResponse, ap as O3KMenuAsset, aq as O3KMenuBeverage, as as O3KMenuBundleDeposit, at as O3KMenuDish, au as O3KMenuItem, av as O3KMenuItemType, ax as O3KMenuSubscriptionPoster, ay as O3KOrderFulfillmentType, az as O3KOrderStatus, aD as O3KPatchArticleResponse, aH as O3KPaymentStatus, aK as O3KPromotion, aX as O3KSchedule, aY as O3KScheduleOverride, a_ as O3KScheduleWithTimeSlots, b4 as O3KSubscriberStatus, b7 as O3KSubscriptionPeriod, b8 as O3KTimeSlot, b9 as O3KUnit } from './index-bbg7Ev_r.mjs';
1
+ import { ai as ListAdsOptions, aj as ListAdsResponse, A as Ad, x as CreateAdRequest, y as CreateAdResponse, aE as PatchAdRequest, aF as PatchAdResponse, aX as SaveAdKeywordsRequest, aY as SaveAdKeywordsResponse, aV as SaveAdCalloutsRequest, aW as SaveAdCalloutsResponse, aZ as SaveAdNegativeKeywordsRequest, a_ as SaveAdNegativeKeywordsResponse, a$ as SaveAdWebsitePagesRequest, b0 as SaveAdWebsitePagesResponse, b5 as SetAdBudgetRequest, b6 as SetAdBudgetResponse, _ as EditMetaAdRequest, $ as EditMetaAdResponse, S as DeleteAdResponse, a9 as GetAreaOptions, c as Area, a8 as GetAreaAvailabilityOptions, e as AreaAvailabilityResponse, b9 as SubmitAreaBookingRequestPayload, h as AreaBookingRequestResponse, ak as ListArticlesOptions, al as ListArticlesResponse, m as Article, aG as PatchArticleRequest, a5 as FeatureImage, bq as UploadFeatureImageArgs, aK as PatchFeatureImageRequest, am as ListAssetsOptions, an as ListAssetsResponse, n as Asset, B as Basket, a as AddToBasketRequest, b as AddToBasketResponse, aR as RemoveFromBasketResponse, R as DeclaredReturn, t as BasketTotals, a6 as FetchBeverageResponse, W as EditBeverageRequest, X as EditBeverageResponse, bm as UploadAssetArgs, bn as UploadAssetResponse, ab as GetCalloutsResponse, z as CreateCalloutRequest, D as CreateCalloutResponse, bi as UpdateCalloutRequest, bj as UpdateCalloutResponse, T as DeleteCalloutResponse, a7 as FetchDishResponse, Y as EditDishRequest, Z as EditDishResponse, ao as ListEventsOptions, ap as ListEventsResponse, G as CreateEventRequest, H as CreateEventResponse, ac as GetEventOptions, a2 as EventByAccessor, aI as PatchEventRequest, aJ as PatchEventResponse, U as DeleteEventResponse, ad as GetEventSlotAvailabilityOptions, a4 as EventSlotAvailabilityResponse, bo as UploadEventAssetArgs, bp as UploadEventAssetResponse, ae as GetMenuOptions, as as Menu, av as MenuBundle, aA as MenuSubscription, ah as LatestOrder, aM as PlaceOrderRequest, aN as PlaceOrderResponse, v as ConfirmOrderRequest, w as ConfirmOrderResponse, K as CreatePaymentIntentRequest, L as CreatePaymentIntentResponse, E as CreateDeltaPaymentIntentRequest, F as CreateDeltaPaymentIntentResponse, aP as ReduceDeltaPaymentIntentRequest, aQ as ReduceDeltaPaymentIntentResponse, I as CreateMenuPublicationRequest, J as CreateMenuPublicationResponse, b7 as SetMenuPublicationBlocksRequest, b8 as SetMenuPublicationBlocksResponse, aS as RenderMenuPublicationPdfRequest, aT as RenderMenuPublicationPdfResponse, C as ComposeMenuPublicationBookletRequest, u as ComposeMenuPublicationBookletResponse, aq as MakeReservationRequest, ar as MakeReservationResponse, aU as RitualByAccessor, ba as SubscribeRequest, bb as SubscribeResponse, be as SubscriptionCreditStatus, bd as SubscriptionCredit, r as BasketItemMetadata, br as Venue, ag as GetWebsitePagesResponse, M as CreateWebsitePageRequest, N as CreateWebsitePageResponse, bk as UpdateWebsitePageRequest, bl as UpdateWebsitePageResponse, V as DeleteWebsitePageResponse, P as Currency, b3 as ScheduleTimeSlot, Q as DayOfWeek } from './index-CJebGltI.mjs';
2
+ export { d as O3KAreaAsset, f as O3KAreaAvailabilityWindow, g as O3KAreaBookingMode, i as O3KAreaBookingRequestSource, j as O3KAreaBookingRequestStatus, k as O3KAreaBookingStatus, l as O3KAreaFeature, o as O3KBasketItem, p as O3KBasketItemDeposit, q as O3KBasketItemMenuItemRef, s as O3KBasketStatus, O as O3KCropArea, a0 as O3KEvent, a1 as O3KEventAsset, a3 as O3KEventMenu, aa as O3KGetArticleResponse, af as O3KGetVenueResponse, at as O3KMenuAsset, au as O3KMenuBeverage, aw as O3KMenuBundleDeposit, ax as O3KMenuDish, ay as O3KMenuItem, az as O3KMenuItemType, aB as O3KMenuSubscriptionPoster, aC as O3KOrderFulfillmentType, aD as O3KOrderStatus, aH as O3KPatchArticleResponse, aL as O3KPaymentStatus, aO as O3KPromotion, b1 as O3KSchedule, b2 as O3KScheduleOverride, b4 as O3KScheduleWithTimeSlots, bc as O3KSubscriberStatus, bf as O3KSubscriptionPeriod, bg as O3KTimeSlot, bh as O3KUnit } from './index-CJebGltI.mjs';
3
3
  import { z as z$1 } from 'zod';
4
4
  import { z } from 'zod/v4';
5
5
  import { RealtimePostgresChangesPayload, RealtimeChannel, SupabaseClient } from '@supabase/supabase-js';
@@ -595,6 +595,42 @@ declare class PaymentIntentsResource extends BaseResource {
595
595
  reduceDelta(request: ReduceDeltaPaymentIntentRequest): Promise<ReduceDeltaPaymentIntentResponse>;
596
596
  }
597
597
 
598
+ declare class PublicationsResource extends BaseResource {
599
+ constructor(tokenManager: TokenManager, baseUrl: string);
600
+ /**
601
+ * Create a publication bound to a menu (by `menuAccessor`) with column
602
+ * defaults (A4, primary palette, all facts shown). `name` is optional —
603
+ * set the design afterwards with `setBlocks`. Returns the new publication
604
+ * row (its `accessor` keys every later verb).
605
+ */
606
+ create(body: Omit<CreateMenuPublicationRequest, 'venueAccessor'>): Promise<CreateMenuPublicationResponse>;
607
+ /**
608
+ * Partially update a publication's design, block by block: only the
609
+ * provided fields fold into the stored designDoc (grouped blocks — frame,
610
+ * QR, rule, item facts — merge; `showFrame: false` / `showQr: false`
611
+ * remove their block). Localized texts merge per locale; colour tokens
612
+ * accept `null` to clear back to the brand default. The name + accessor
613
+ * follow the primary-locale title — the response returns the (possibly
614
+ * regenerated) accessor.
615
+ */
616
+ setBlocks(accessor: string, body: Omit<SetMenuPublicationBlocksRequest, 'venueAccessor' | 'publicationAccessor'>): Promise<SetMenuPublicationBlocksResponse>;
617
+ /**
618
+ * Render the publication's saved design to its print PDF (the same
619
+ * Gotenberg path as the public download route). Returns the PDF
620
+ * base64-encoded (`pdfBase64`) with its page count — decode with
621
+ * `Buffer.from(result.pdfBase64, 'base64')`.
622
+ */
623
+ render(accessor: string, body?: Omit<RenderMenuPublicationPdfRequest, 'venueAccessor' | 'publicationAccessor'>): Promise<RenderMenuPublicationPdfResponse>;
624
+ /**
625
+ * Compose a booklet PDF from ordered sections: inline `sections`
626
+ * (`publicationAccessor` + optional 1-based inclusive page range) for
627
+ * ad-hoc composition, or `bookletAccessor` to compose a persisted booklet
628
+ * publication from its stored sections. Returns the merged PDF
629
+ * base64-encoded with its page count.
630
+ */
631
+ composeBooklet(body: Omit<ComposeMenuPublicationBookletRequest, 'venueAccessor'>): Promise<ComposeMenuPublicationBookletResponse>;
632
+ }
633
+
598
634
  declare class ReservationsResource extends BaseResource {
599
635
  constructor(tokenManager: TokenManager, baseUrl: string);
600
636
  /**
@@ -1421,6 +1457,7 @@ declare class O3KClient {
1421
1457
  menus: MenusResource;
1422
1458
  orders: OrdersResource;
1423
1459
  paymentIntents: PaymentIntentsResource;
1460
+ publications: PublicationsResource;
1424
1461
  reservations: ReservationsResource;
1425
1462
  rituals: RitualsResource;
1426
1463
  subscriptions: SubscriptionsResource;
package/dist/client.mjs CHANGED
@@ -1025,6 +1025,64 @@ class PaymentIntentsResource extends BaseResource {
1025
1025
  }
1026
1026
  }
1027
1027
 
1028
+ class PublicationsResource extends BaseResource {
1029
+ constructor(tokenManager, baseUrl) {
1030
+ super(tokenManager, baseUrl, "/publications");
1031
+ }
1032
+ /**
1033
+ * Create a publication bound to a menu (by `menuAccessor`) with column
1034
+ * defaults (A4, primary palette, all facts shown). `name` is optional —
1035
+ * set the design afterwards with `setBlocks`. Returns the new publication
1036
+ * row (its `accessor` keys every later verb).
1037
+ */
1038
+ async create(body) {
1039
+ return this.request("POST", "", body);
1040
+ }
1041
+ /**
1042
+ * Partially update a publication's design, block by block: only the
1043
+ * provided fields fold into the stored designDoc (grouped blocks — frame,
1044
+ * QR, rule, item facts — merge; `showFrame: false` / `showQr: false`
1045
+ * remove their block). Localized texts merge per locale; colour tokens
1046
+ * accept `null` to clear back to the brand default. The name + accessor
1047
+ * follow the primary-locale title — the response returns the (possibly
1048
+ * regenerated) accessor.
1049
+ */
1050
+ async setBlocks(accessor, body) {
1051
+ return this.request(
1052
+ "PATCH",
1053
+ `/${encodeURIComponent(accessor)}`,
1054
+ body
1055
+ );
1056
+ }
1057
+ /**
1058
+ * Render the publication's saved design to its print PDF (the same
1059
+ * Gotenberg path as the public download route). Returns the PDF
1060
+ * base64-encoded (`pdfBase64`) with its page count — decode with
1061
+ * `Buffer.from(result.pdfBase64, 'base64')`.
1062
+ */
1063
+ async render(accessor, body = {}) {
1064
+ return this.request(
1065
+ "POST",
1066
+ `/${encodeURIComponent(accessor)}/render`,
1067
+ body
1068
+ );
1069
+ }
1070
+ /**
1071
+ * Compose a booklet PDF from ordered sections: inline `sections`
1072
+ * (`publicationAccessor` + optional 1-based inclusive page range) for
1073
+ * ad-hoc composition, or `bookletAccessor` to compose a persisted booklet
1074
+ * publication from its stored sections. Returns the merged PDF
1075
+ * base64-encoded with its page count.
1076
+ */
1077
+ async composeBooklet(body) {
1078
+ return this.request(
1079
+ "POST",
1080
+ "/compose-booklet",
1081
+ body
1082
+ );
1083
+ }
1084
+ }
1085
+
1028
1086
  class ReservationsResource extends BaseResource {
1029
1087
  constructor(tokenManager, baseUrl) {
1030
1088
  super(tokenManager, baseUrl, "/reservations");
@@ -1734,6 +1792,7 @@ class O3KClient {
1734
1792
  __publicField(this, "menus");
1735
1793
  __publicField(this, "orders");
1736
1794
  __publicField(this, "paymentIntents");
1795
+ __publicField(this, "publications");
1737
1796
  __publicField(this, "reservations");
1738
1797
  __publicField(this, "rituals");
1739
1798
  __publicField(this, "subscriptions");
@@ -1766,6 +1825,10 @@ class O3KClient {
1766
1825
  this.tokenManager,
1767
1826
  this.baseUrl
1768
1827
  );
1828
+ this.publications = new PublicationsResource(
1829
+ this.tokenManager,
1830
+ this.baseUrl
1831
+ );
1769
1832
  this.reservations = new ReservationsResource(
1770
1833
  this.tokenManager,
1771
1834
  this.baseUrl