@antlur/backstage 1.0.9 → 1.1.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 (139) hide show
  1. package/dist/cjs/client.js +18 -5
  2. package/dist/cjs/components/json-ld.js +8 -0
  3. package/dist/cjs/config.js +2 -3
  4. package/dist/cjs/endpoints/alerts.js +8 -6
  5. package/dist/cjs/endpoints/base.js +9 -0
  6. package/dist/cjs/endpoints/events.js +16 -19
  7. package/dist/cjs/endpoints/locations.js +21 -20
  8. package/dist/cjs/endpoints/menus.js +23 -23
  9. package/dist/cjs/endpoints/navigation.js +26 -26
  10. package/dist/cjs/endpoints/pages.js +20 -21
  11. package/dist/cjs/endpoints/press.js +8 -6
  12. package/dist/cjs/endpoints/website.js +8 -6
  13. package/dist/cjs/util/event.js +70 -0
  14. package/dist/cjs/util/gtag.js +14 -0
  15. package/dist/cjs/util/imgproxy-loader.js +14 -0
  16. package/dist/cjs/util/publishing.js +6 -0
  17. package/dist/cjs/util/special-hours.js +23 -0
  18. package/dist/esm/client.d.ts +16 -1
  19. package/dist/esm/client.d.ts.map +1 -1
  20. package/dist/esm/client.js +17 -3
  21. package/dist/esm/components/json-ld.d.ts +7 -0
  22. package/dist/esm/components/json-ld.d.ts.map +1 -0
  23. package/dist/esm/components/json-ld.js +5 -0
  24. package/dist/esm/endpoints/alerts.d.ts +4 -1
  25. package/dist/esm/endpoints/alerts.d.ts.map +1 -1
  26. package/dist/esm/endpoints/alerts.js +6 -4
  27. package/dist/esm/endpoints/base.d.ts +6 -0
  28. package/dist/esm/endpoints/base.d.ts.map +1 -0
  29. package/dist/esm/endpoints/base.js +5 -0
  30. package/dist/esm/endpoints/events.d.ts +6 -3
  31. package/dist/esm/endpoints/events.d.ts.map +1 -1
  32. package/dist/esm/endpoints/events.js +14 -15
  33. package/dist/esm/endpoints/locations.d.ts +5 -2
  34. package/dist/esm/endpoints/locations.d.ts.map +1 -1
  35. package/dist/esm/endpoints/locations.js +19 -17
  36. package/dist/esm/endpoints/menus.d.ts +6 -3
  37. package/dist/esm/endpoints/menus.d.ts.map +1 -1
  38. package/dist/esm/endpoints/menus.js +21 -19
  39. package/dist/esm/endpoints/navigation.d.ts +6 -3
  40. package/dist/esm/endpoints/navigation.d.ts.map +1 -1
  41. package/dist/esm/endpoints/navigation.js +24 -22
  42. package/dist/esm/endpoints/pages.d.ts +8 -5
  43. package/dist/esm/endpoints/pages.d.ts.map +1 -1
  44. package/dist/esm/endpoints/pages.js +18 -16
  45. package/dist/esm/endpoints/press.d.ts +4 -1
  46. package/dist/esm/endpoints/press.d.ts.map +1 -1
  47. package/dist/esm/endpoints/press.js +6 -4
  48. package/dist/esm/endpoints/website.d.ts +4 -1
  49. package/dist/esm/endpoints/website.d.ts.map +1 -1
  50. package/dist/esm/endpoints/website.js +6 -4
  51. package/dist/esm/types/location.d.ts +2 -0
  52. package/dist/esm/types/location.d.ts.map +1 -1
  53. package/dist/esm/types/website.d.ts +1 -0
  54. package/dist/esm/types/website.d.ts.map +1 -1
  55. package/dist/esm/util/event.d.ts +8 -0
  56. package/dist/esm/util/event.d.ts.map +1 -0
  57. package/dist/esm/util/event.js +63 -0
  58. package/dist/esm/util/gtag.d.ts +23 -0
  59. package/dist/esm/util/gtag.d.ts.map +1 -0
  60. package/dist/esm/util/gtag.js +10 -0
  61. package/dist/esm/util/imgproxy-loader.d.ts +9 -0
  62. package/dist/esm/util/imgproxy-loader.d.ts.map +1 -0
  63. package/dist/esm/util/imgproxy-loader.js +11 -0
  64. package/dist/esm/util/publishing.d.ts +2 -0
  65. package/dist/esm/util/publishing.d.ts.map +1 -0
  66. package/dist/esm/util/publishing.js +3 -0
  67. package/dist/esm/util/special-hours.d.ts +3 -0
  68. package/dist/esm/util/special-hours.d.ts.map +1 -0
  69. package/dist/esm/util/special-hours.js +20 -0
  70. package/dist/types/client.d.ts +16 -1
  71. package/dist/types/client.d.ts.map +1 -1
  72. package/dist/types/components/json-ld.d.ts +7 -0
  73. package/dist/types/components/json-ld.d.ts.map +1 -0
  74. package/dist/types/endpoints/alerts.d.ts +4 -1
  75. package/dist/types/endpoints/alerts.d.ts.map +1 -1
  76. package/dist/types/endpoints/base.d.ts +6 -0
  77. package/dist/types/endpoints/base.d.ts.map +1 -0
  78. package/dist/types/endpoints/events.d.ts +6 -3
  79. package/dist/types/endpoints/events.d.ts.map +1 -1
  80. package/dist/types/endpoints/locations.d.ts +5 -2
  81. package/dist/types/endpoints/locations.d.ts.map +1 -1
  82. package/dist/types/endpoints/menus.d.ts +6 -3
  83. package/dist/types/endpoints/menus.d.ts.map +1 -1
  84. package/dist/types/endpoints/navigation.d.ts +6 -3
  85. package/dist/types/endpoints/navigation.d.ts.map +1 -1
  86. package/dist/types/endpoints/pages.d.ts +8 -5
  87. package/dist/types/endpoints/pages.d.ts.map +1 -1
  88. package/dist/types/endpoints/press.d.ts +4 -1
  89. package/dist/types/endpoints/press.d.ts.map +1 -1
  90. package/dist/types/endpoints/website.d.ts +4 -1
  91. package/dist/types/endpoints/website.d.ts.map +1 -1
  92. package/dist/types/types/location.d.ts +2 -0
  93. package/dist/types/types/location.d.ts.map +1 -1
  94. package/dist/types/types/website.d.ts +1 -0
  95. package/dist/types/types/website.d.ts.map +1 -1
  96. package/dist/types/util/event.d.ts +8 -0
  97. package/dist/types/util/event.d.ts.map +1 -0
  98. package/dist/types/util/gtag.d.ts +23 -0
  99. package/dist/types/util/gtag.d.ts.map +1 -0
  100. package/dist/types/util/imgproxy-loader.d.ts +9 -0
  101. package/dist/types/util/imgproxy-loader.d.ts.map +1 -0
  102. package/dist/types/util/publishing.d.ts +2 -0
  103. package/dist/types/util/publishing.d.ts.map +1 -0
  104. package/dist/types/util/special-hours.d.ts +3 -0
  105. package/dist/types/util/special-hours.d.ts.map +1 -0
  106. package/package.json +31 -4
  107. package/src/client.ts +121 -0
  108. package/src/components/json-ld.tsx +9 -0
  109. package/src/config.ts +31 -0
  110. package/src/constants/google-events.ts +13 -0
  111. package/src/endpoints/alerts.ts +9 -0
  112. package/src/endpoints/base.ts +5 -0
  113. package/src/endpoints/events.ts +19 -0
  114. package/src/endpoints/locations.ts +27 -0
  115. package/src/endpoints/menus.ts +34 -0
  116. package/src/endpoints/navigation.ts +36 -0
  117. package/src/endpoints/pages.ts +24 -0
  118. package/src/endpoints/press.ts +9 -0
  119. package/src/endpoints/website.ts +9 -0
  120. package/src/index.ts +18 -0
  121. package/src/types/alert.ts +11 -0
  122. package/src/types/api.ts +12 -0
  123. package/src/types/event.ts +14 -0
  124. package/src/types/index.ts +13 -0
  125. package/src/types/location.ts +69 -0
  126. package/src/types/media-item.ts +10 -0
  127. package/src/types/menu-category-item.ts +18 -0
  128. package/src/types/menu-category.ts +15 -0
  129. package/src/types/menu-item.ts +15 -0
  130. package/src/types/menu.ts +12 -0
  131. package/src/types/navigation.ts +17 -0
  132. package/src/types/page.ts +24 -0
  133. package/src/types/press.ts +13 -0
  134. package/src/types/website.ts +76 -0
  135. package/src/util/event.ts +77 -0
  136. package/src/util/gtag.ts +40 -0
  137. package/src/util/imgproxy-loader.ts +22 -0
  138. package/src/util/publishing.ts +3 -0
  139. package/src/util/special-hours.ts +24 -0
@@ -1,7 +1,23 @@
1
1
  import { AxiosInstance, AxiosRequestConfig } from "axios";
2
2
  import { BackstageUserConfig } from "./config";
3
+ import { AlertService } from "./endpoints/alerts";
4
+ import { EventService } from "./endpoints/events";
5
+ import { LocationService } from "./endpoints/locations";
6
+ import { MenuService } from "./endpoints/menus";
7
+ import { NavigationService } from "./endpoints/navigation";
8
+ import { PageService } from "./endpoints/pages";
9
+ import { PressService } from "./endpoints/press";
10
+ import { WebsiteService } from "./endpoints/website";
3
11
  export declare class BackstageClient {
4
12
  private instance;
13
+ readonly alerts: AlertService;
14
+ readonly events: EventService;
15
+ readonly locations: LocationService;
16
+ readonly menus: MenuService;
17
+ readonly navigation: NavigationService;
18
+ readonly pages: PageService;
19
+ readonly press: PressService;
20
+ readonly website: WebsiteService;
5
21
  constructor(config?: BackstageUserConfig);
6
22
  get<T = unknown>(url: string, config?: AxiosRequestConfig): Promise<T>;
7
23
  post<T = unknown>(url: string, data?: unknown, config?: AxiosRequestConfig): Promise<T>;
@@ -10,5 +26,4 @@ export declare class BackstageClient {
10
26
  delete<T = unknown>(url: string, config?: AxiosRequestConfig): Promise<T>;
11
27
  getAxiosInstance(): AxiosInstance;
12
28
  }
13
- export declare const client: (config?: BackstageUserConfig) => BackstageClient;
14
29
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAE,kBAAkB,EAA6B,MAAM,OAAO,CAAC;AAC5F,OAAO,EAAmB,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEhE,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAgB;gBAEpB,MAAM,CAAC,EAAE,mBAAmB;IA0D3B,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAKtE,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAKvF,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAKtF,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAKxF,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAK/E,gBAAgB,IAAI,aAAa;CAGzC;AAED,eAAO,MAAM,MAAM,YAAsB,mBAAmB,KAAG,eAE9D,CAAC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAE,kBAAkB,EAA6B,MAAM,OAAO,CAAC;AAC5F,OAAO,EAAmB,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAgB;IAGhC,SAAgB,MAAM,EAAE,YAAY,CAAC;IACrC,SAAgB,MAAM,EAAE,YAAY,CAAC;IACrC,SAAgB,SAAS,EAAE,eAAe,CAAC;IAC3C,SAAgB,KAAK,EAAE,WAAW,CAAC;IACnC,SAAgB,UAAU,EAAE,iBAAiB,CAAC;IAC9C,SAAgB,KAAK,EAAE,WAAW,CAAC;IACnC,SAAgB,KAAK,EAAE,YAAY,CAAC;IACpC,SAAgB,OAAO,EAAE,cAAc,CAAC;gBAE5B,MAAM,CAAC,EAAE,mBAAmB;IAoE3B,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAKtE,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAKvF,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAKtF,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAKxF,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAK/E,gBAAgB,IAAI,aAAa;CAGzC"}
@@ -0,0 +1,7 @@
1
+ interface JsonLdProps {
2
+ schema: any;
3
+ id: string;
4
+ }
5
+ export declare function JsonLd({ schema, id }: JsonLdProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
7
+ //# sourceMappingURL=json-ld.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-ld.d.ts","sourceRoot":"","sources":["../../../src/components/json-ld.tsx"],"names":[],"mappings":"AAAA,UAAU,WAAW;IACnB,MAAM,EAAE,GAAG,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,wBAAgB,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,WAAW,2CAGjD"}
@@ -1,3 +1,6 @@
1
1
  import { Alert } from "../types";
2
- export declare function getAlerts(): Promise<Alert[]>;
2
+ import { BaseService } from "./base";
3
+ export declare class AlertService extends BaseService {
4
+ getAlerts(): Promise<Alert[]>;
5
+ }
3
6
  //# sourceMappingURL=alerts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"alerts.d.ts","sourceRoot":"","sources":["../../../src/endpoints/alerts.ts"],"names":[],"mappings":"AACA,OAAO,EAAyB,KAAK,EAAE,MAAM,UAAU,CAAC;AAExD,wBAAsB,SAAS,qBAG9B"}
1
+ {"version":3,"file":"alerts.d.ts","sourceRoot":"","sources":["../../../src/endpoints/alerts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,qBAAa,YAAa,SAAQ,WAAW;IACrC,SAAS,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;CAIpC"}
@@ -0,0 +1,6 @@
1
+ import { BackstageClient } from "../client";
2
+ export declare class BaseService {
3
+ protected client: BackstageClient;
4
+ constructor(client: BackstageClient);
5
+ }
6
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/endpoints/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,qBAAa,WAAW;IACV,SAAS,CAAC,MAAM,EAAE,eAAe;gBAAvB,MAAM,EAAE,eAAe;CAC9C"}
@@ -1,5 +1,8 @@
1
1
  import { Event } from "../types";
2
- export declare function getEvents(): Promise<Event[]>;
3
- export declare function getEvent(id: string): Promise<Event>;
4
- export declare function getEventBySlug(slug: string): Promise<Event>;
2
+ import { BaseService } from "./base";
3
+ export declare class EventService extends BaseService {
4
+ getEvents(): Promise<Event[]>;
5
+ getEvent(id: string): Promise<Event>;
6
+ getEventBySlug(slug: string): Promise<Event>;
7
+ }
5
8
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/endpoints/events.ts"],"names":[],"mappings":"AACA,OAAO,EAAyB,KAAK,EAAE,MAAM,UAAU,CAAC;AAExD,wBAAsB,SAAS,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAIlD;AAED,wBAAsB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAIzD;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAIjE"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/endpoints/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,qBAAa,YAAa,SAAQ,WAAW;IACrC,SAAS,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;IAK7B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAKpC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;CAInD"}
@@ -1,4 +1,7 @@
1
1
  import { Location } from "../types";
2
- export declare function getLocations(): Promise<Location[]>;
3
- export declare function getLocationBySlug(slug: string): Promise<Location | Location[]>;
2
+ import { BaseService } from "./base";
3
+ export declare class LocationService extends BaseService {
4
+ getLocations(): Promise<Location[]>;
5
+ getLocationBySlug(slug: string): Promise<Location | Location[]>;
6
+ }
4
7
  //# sourceMappingURL=locations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"locations.d.ts","sourceRoot":"","sources":["../../../src/endpoints/locations.ts"],"names":[],"mappings":"AACA,OAAO,EAAyB,QAAQ,EAAE,MAAM,UAAU,CAAC;AAE3D,wBAAsB,YAAY,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAUxD;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,kCASnD"}
1
+ {"version":3,"file":"locations.d.ts","sourceRoot":"","sources":["../../../src/endpoints/locations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,qBAAa,eAAgB,SAAQ,WAAW;IACxC,YAAY,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAYnC,iBAAiB,CAAC,IAAI,EAAE,MAAM;CAUrC"}
@@ -1,5 +1,8 @@
1
1
  import { Menu } from "../types";
2
- export declare function getMenus(): Promise<Menu[]>;
3
- export declare function getMenu(id: string): Promise<Menu | Menu[]>;
4
- export declare function getMenuBySlug(slug: string): Promise<Menu | Menu[]>;
2
+ import { BaseService } from "./base";
3
+ export declare class MenuService extends BaseService {
4
+ getMenus(): Promise<Menu[]>;
5
+ getMenu(id: string): Promise<Menu | Menu[]>;
6
+ getMenuBySlug(slug: string): Promise<Menu | Menu[]>;
7
+ }
5
8
  //# sourceMappingURL=menus.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"menus.d.ts","sourceRoot":"","sources":["../../../src/endpoints/menus.ts"],"names":[],"mappings":"AACA,OAAO,EAAyB,IAAI,EAAE,MAAM,UAAU,CAAC;AAEvD,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAIhD;AAED,wBAAsB,OAAO,CAAC,EAAE,EAAE,MAAM,0BASvC;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,0BAS/C"}
1
+ {"version":3,"file":"menus.d.ts","sourceRoot":"","sources":["../../../src/endpoints/menus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,IAAI,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,qBAAa,WAAY,SAAQ,WAAW;IACpC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAM3B,OAAO,CAAC,EAAE,EAAE,MAAM;IAWlB,aAAa,CAAC,IAAI,EAAE,MAAM;CAYjC"}
@@ -1,5 +1,8 @@
1
1
  import { Navigation } from "../types";
2
- export declare function getDefaultNavigation(): Promise<Navigation>;
3
- export declare function getNavigations(): Promise<Navigation[]>;
4
- export declare function getNavigation(id: string): Promise<Navigation>;
2
+ import { BaseService } from "./base";
3
+ export declare class NavigationService extends BaseService {
4
+ getNavigations(): Promise<Navigation[]>;
5
+ getDefaultNavigation(): Promise<Navigation>;
6
+ getNavigation(id: string): Promise<Navigation>;
7
+ }
5
8
  //# sourceMappingURL=navigation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../../src/endpoints/navigation.ts"],"names":[],"mappings":"AACA,OAAO,EAA4C,UAAU,EAAE,MAAM,UAAU,CAAC;AAEhF,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,UAAU,CAAC,CAGhE;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAU5D;AAED,wBAAsB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAanE"}
1
+ {"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../../src/endpoints/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,UAAU,EAAE,MAAM,UAAU,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,qBAAa,iBAAkB,SAAQ,WAAW;IAC1C,cAAc,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAYvC,oBAAoB,IAAI,OAAO,CAAC,UAAU,CAAC;IAK3C,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;CAcrD"}
@@ -1,6 +1,9 @@
1
- import { Page } from "../types/page";
2
- export declare function getPage(slug: string): Promise<Page>;
3
- export declare function getPages(): Promise<Page[]>;
4
- export declare function getHomePage(): Promise<Page>;
5
- export declare function getPageBySlug(slug: string): Promise<Page>;
1
+ import { Page } from "../types";
2
+ import { BaseService } from "./base";
3
+ export declare class PageService extends BaseService {
4
+ getPages(): Promise<Page[]>;
5
+ getPage(id: string): Promise<Page>;
6
+ getPageBySlug(slug: string): Promise<Page>;
7
+ getHomePage(): Promise<Page>;
8
+ }
6
9
  //# sourceMappingURL=pages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../../../src/endpoints/pages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAGrC,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGzD;AAED,wBAAsB,QAAQ,oBAG7B;AAED,wBAAsB,WAAW,kBAGhC;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,iBAG/C"}
1
+ {"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../../../src/endpoints/pages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,IAAI,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,qBAAa,WAAY,SAAQ,WAAW;IACpC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAK3B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1C,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CAInC"}
@@ -1,3 +1,6 @@
1
1
  import { Press } from "../types";
2
- export declare function getPress(): Promise<Press[]>;
2
+ import { BaseService } from "./base";
3
+ export declare class PressService extends BaseService {
4
+ getPress(): Promise<Press[]>;
5
+ }
3
6
  //# sourceMappingURL=press.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"press.d.ts","sourceRoot":"","sources":["../../../src/endpoints/press.ts"],"names":[],"mappings":"AACA,OAAO,EAAyB,KAAK,EAAE,MAAM,UAAU,CAAC;AAExD,wBAAsB,QAAQ,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAGjD"}
1
+ {"version":3,"file":"press.d.ts","sourceRoot":"","sources":["../../../src/endpoints/press.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,qBAAa,YAAa,SAAQ,WAAW;IACrC,QAAQ,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;CAInC"}
@@ -1,3 +1,6 @@
1
1
  import { Website } from "../types";
2
- export declare function getWebsite(): Promise<Website>;
2
+ import { BaseService } from "./base";
3
+ export declare class WebsiteService extends BaseService {
4
+ getWebsite(): Promise<Website>;
5
+ }
3
6
  //# sourceMappingURL=website.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"website.d.ts","sourceRoot":"","sources":["../../../src/endpoints/website.ts"],"names":[],"mappings":"AACA,OAAO,EAAyB,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1D,wBAAsB,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAGnD"}
1
+ {"version":3,"file":"website.d.ts","sourceRoot":"","sources":["../../../src/endpoints/website.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,qBAAa,cAAe,SAAQ,WAAW;IACvC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;CAIrC"}
@@ -64,5 +64,7 @@ export interface Location {
64
64
  height: number;
65
65
  alt: string;
66
66
  };
67
+ status: string;
68
+ status_text: string;
67
69
  }
68
70
  //# sourceMappingURL=location.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"location.d.ts","sourceRoot":"","sources":["../../../src/types/location.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE;QACL,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,OAAO,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,aAAa,EAAE;QACb,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,OAAO,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,cAAc,EAAE;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;KACb,EAAE,CAAC;IACJ,cAAc,EAAE;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;KACb,EAAE,CAAC;IACJ,iBAAiB,EAAE;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;KACb,EAAE,CAAC;IACJ,cAAc,EAAE;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;KACb,EAAE,CAAC;IACJ,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE;QACd,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;QACZ,aAAa,EAAE,MAAM,CAAC;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;CACH"}
1
+ {"version":3,"file":"location.d.ts","sourceRoot":"","sources":["../../../src/types/location.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE;QACL,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,OAAO,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,aAAa,EAAE;QACb,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,OAAO,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,cAAc,EAAE;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;KACb,EAAE,CAAC;IACJ,cAAc,EAAE;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;KACb,EAAE,CAAC;IACJ,iBAAiB,EAAE;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;KACb,EAAE,CAAC;IACJ,cAAc,EAAE;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;KACb,EAAE,CAAC;IACJ,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE;QACd,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;QACZ,aAAa,EAAE,MAAM,CAAC;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB"}
@@ -64,5 +64,6 @@ export interface Website {
64
64
  social_links: SocialLink[];
65
65
  home_cta_text: string | null;
66
66
  home_cta_url: string | null;
67
+ has_accessibility_widget: boolean;
67
68
  }
68
69
  //# sourceMappingURL=website.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"website.d.ts","sourceRoot":"","sources":["../../../src/types/website.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wBAAwB,EAAE,MAAM,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,IAAI;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,SAAS,CAAC;IACtB,KAAK,EAAE,KAAK,CAAC;IACb,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC3B,aAAa,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IACnC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B"}
1
+ {"version":3,"file":"website.d.ts","sourceRoot":"","sources":["../../../src/types/website.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wBAAwB,EAAE,MAAM,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,IAAI;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,SAAS,CAAC;IACtB,KAAK,EAAE,KAAK,CAAC;IACb,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC3B,aAAa,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IACnC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,wBAAwB,EAAE,OAAO,CAAC;CACnC"}
@@ -0,0 +1,8 @@
1
+ import type { Event, Location, Website } from "../types";
2
+ import { Event as SchemaEvent, WithContext } from "schema-dts";
3
+ export declare function isMultipleDays(start: Date, end: Date): boolean;
4
+ export declare function dateString(event: Event): string;
5
+ export declare function timeString(event: Event): string;
6
+ export declare function shortDescription(event: Event): string;
7
+ export declare function makeEventSchema(website: Website, event: Event, locations: Location[]): WithContext<SchemaEvent>;
8
+ //# sourceMappingURL=event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../../src/util/event.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE/D,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,WAEpD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,UAkBtC;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,UAQtC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,UAQ5C;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC,WAAW,CAAC,CA6B/G"}
@@ -0,0 +1,23 @@
1
+ import { GAEvents } from "../constants/google-events";
2
+ declare global {
3
+ interface Window {
4
+ gtag?: (...args: any[]) => void;
5
+ }
6
+ }
7
+ export declare function gtag(...args: any[]): void;
8
+ interface GtagEventParams {
9
+ category?: string;
10
+ label?: string;
11
+ value?: number;
12
+ page_url?: string;
13
+ location?: string;
14
+ store?: string | null | undefined;
15
+ /** @deprecated Use category instead */
16
+ event_category?: string;
17
+ /** @deprecated Use label instead */
18
+ event_label?: string;
19
+ }
20
+ type GtagEventName = keyof typeof GAEvents | (string & {});
21
+ export declare function gtagEvent(name: GtagEventName, params?: GtagEventParams): void;
22
+ export {};
23
+ //# sourceMappingURL=gtag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gtag.d.ts","sourceRoot":"","sources":["../../../src/util/gtag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAe,MAAM,4BAA4B,CAAC;AAGnE,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;KACjC;CACF;AAED,wBAAgB,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,QAIlC;AAED,UAAU,eAAe;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAElC,uCAAuC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,KAAK,aAAa,GAAG,MAAM,OAAO,QAAQ,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAE3D,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,GAAE,eAAoB,QAI1E"}
@@ -0,0 +1,9 @@
1
+ interface ImgproxyLoaderProps {
2
+ src: string;
3
+ width?: number;
4
+ height?: number;
5
+ quality?: number;
6
+ }
7
+ export default function imgproxyLoader({ src, width, height, quality }: ImgproxyLoaderProps): string;
8
+ export {};
9
+ //# sourceMappingURL=imgproxy-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imgproxy-loader.d.ts","sourceRoot":"","sources":["../../../src/util/imgproxy-loader.ts"],"names":[],"mappings":"AAAA,UAAU,mBAAmB;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,mBAAmB,UAc1F"}
@@ -0,0 +1,2 @@
1
+ export declare function filterPublishedItems(items: any[]): any[];
2
+ //# sourceMappingURL=publishing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publishing.d.ts","sourceRoot":"","sources":["../../../src/util/publishing.ts"],"names":[],"mappings":"AAAA,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,GAAG,EAAE,SAEhD"}
@@ -0,0 +1,3 @@
1
+ import type { Location } from "../types";
2
+ export declare function getSpecialHoursFromLocation(location: Location): any[];
3
+ //# sourceMappingURL=special-hours.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"special-hours.d.ts","sourceRoot":"","sources":["../../../src/util/special-hours.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,QAAQ,GAAG,GAAG,EAAE,CAoBrE"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@antlur/backstage",
3
3
  "author": "Anthony Holmes",
4
- "version": "1.0.9",
4
+ "version": "1.1.0",
5
5
  "description": "A simple client for Backstage CMS",
6
6
  "main": "./dist/cjs/index.js",
7
7
  "module": "./dist/esm/index.js",
@@ -11,6 +11,16 @@
11
11
  "require": "./dist/cjs/index.js",
12
12
  "import": "./dist/esm/index.js",
13
13
  "types": "./dist/types/index.d.ts"
14
+ },
15
+ "./types": {
16
+ "require": "./dist/cjs/types/index.js",
17
+ "import": "./dist/esm/types/index.js",
18
+ "types": "./dist/types/types/*.d.ts"
19
+ },
20
+ "./*": {
21
+ "require": "./dist/cjs/*.js",
22
+ "import": "./dist/esm/*.js",
23
+ "types": "./dist/types/*.d.ts"
14
24
  }
15
25
  },
16
26
  "scripts": {
@@ -19,16 +29,33 @@
19
29
  "build:cjs": "tsc --project tsconfig.cjs.json",
20
30
  "build:esm": "tsc --project tsconfig.esm.json",
21
31
  "prepublishOnly": "npm run build && npm test",
32
+ "watch": "npm run watch:cjs & npm run watch:esm",
33
+ "watch:cjs": "tsc --project tsconfig.cjs.json --watch",
34
+ "watch:esm": "tsc --project tsconfig.esm.json --watch",
22
35
  "test": "echo \"No tests yet\" && exit 0"
23
36
  },
37
+ "peerDependencies": {
38
+ "luxon": "^3.5.0",
39
+ "react": "^18.0.0 || ^19.0.0",
40
+ "react-dom": "^18.0.0 || ^19.0.0"
41
+ },
24
42
  "dependencies": {
25
- "axios": "^1.3.0"
43
+ "axios": "^1.7.9",
44
+ "schema-dts": "^1.1.2"
26
45
  },
27
46
  "devDependencies": {
47
+ "@types/luxon": "^3.4.2",
28
48
  "@types/node": "^22.10.5",
29
- "typescript": "^4.8.0"
49
+ "@types/react": "^19.0.2",
50
+ "@types/react-dom": "^19.0.2",
51
+ "luxon": "^3.5.0",
52
+ "react": "^19.0.0",
53
+ "react-dom": "^19.0.0",
54
+ "typescript": "^5.7.2"
30
55
  },
31
56
  "files": [
32
- "dist"
57
+ "dist",
58
+ "src",
59
+ "readme.md"
33
60
  ]
34
61
  }
package/src/client.ts ADDED
@@ -0,0 +1,121 @@
1
+ import axios, { AxiosInstance, AxiosRequestConfig, AxiosResponse, AxiosError } from "axios";
2
+ import { getGlobalConfig, BackstageUserConfig } from "./config";
3
+ import { AlertService } from "./endpoints/alerts";
4
+ import { EventService } from "./endpoints/events";
5
+ import { LocationService } from "./endpoints/locations";
6
+ import { MenuService } from "./endpoints/menus";
7
+ import { NavigationService } from "./endpoints/navigation";
8
+ import { PageService } from "./endpoints/pages";
9
+ import { PressService } from "./endpoints/press";
10
+ import { WebsiteService } from "./endpoints/website";
11
+
12
+ export class BackstageClient {
13
+ private instance: AxiosInstance;
14
+
15
+ // Service Instances
16
+ public readonly alerts: AlertService;
17
+ public readonly events: EventService;
18
+ public readonly locations: LocationService;
19
+ public readonly menus: MenuService;
20
+ public readonly navigation: NavigationService;
21
+ public readonly pages: PageService;
22
+ public readonly press: PressService;
23
+ public readonly website: WebsiteService;
24
+
25
+ constructor(config?: BackstageUserConfig) {
26
+ // If no config is passed, try to get from the global config
27
+ const globalConfig = getGlobalConfig();
28
+ const finalConfig = config || globalConfig;
29
+
30
+ if (!finalConfig) {
31
+ throw new Error("No Backstage config found. Please call defineConfig() or pass config to BackstageClient.");
32
+ }
33
+
34
+ // check for token and accountId in the config
35
+ if (!finalConfig.token) {
36
+ throw new Error("No token found in the Backstage config. Please provide a token.");
37
+ }
38
+
39
+ if (!finalConfig.accountId) {
40
+ throw new Error("No accountId found in the Backstage config. Please provide an accountId.");
41
+ }
42
+
43
+ const { baseURL, token, onError } = finalConfig;
44
+
45
+ this.instance = axios.create({
46
+ baseURL,
47
+ headers: {
48
+ Authorization: `Bearer ${token}`,
49
+ "X-Account-ID": finalConfig.accountId,
50
+ Accept: "application/json",
51
+ "Content-Type": "application/json",
52
+ },
53
+ });
54
+
55
+ // Add request interceptor for debugging
56
+ this.instance.interceptors.request.use((requestConfig) => {
57
+ // console.log("Request:", {
58
+ // method: requestConfig.method,
59
+ // url: requestConfig.url,
60
+ // headers: requestConfig.headers,
61
+ // data: requestConfig.data,
62
+ // });
63
+ return requestConfig;
64
+ });
65
+
66
+ // Add response interceptor for debugging
67
+ this.instance.interceptors.response.use(
68
+ (response) => response,
69
+ (error) => {
70
+ // console.error("API Error:", {
71
+ // status: error.response?.status,
72
+ // method: error.config?.method,
73
+ // url: error.config?.url,
74
+ // headers: error.config?.headers,
75
+ // data: error.response?.data,
76
+ // });
77
+ if (onError) onError(error);
78
+ return Promise.reject(error);
79
+ }
80
+ );
81
+
82
+ // Initialize service instances
83
+ this.alerts = new AlertService(this);
84
+ this.events = new EventService(this);
85
+ this.locations = new LocationService(this);
86
+ this.menus = new MenuService(this);
87
+ this.navigation = new NavigationService(this);
88
+ this.pages = new PageService(this);
89
+ this.press = new PressService(this);
90
+ this.website = new WebsiteService(this);
91
+ }
92
+
93
+ public async get<T = unknown>(url: string, config?: AxiosRequestConfig): Promise<T> {
94
+ const response = await this.instance.get<T>(url, config);
95
+ return response.data;
96
+ }
97
+
98
+ public async post<T = unknown>(url: string, data?: unknown, config?: AxiosRequestConfig): Promise<T> {
99
+ const response = await this.instance.post<T>(url, data, config);
100
+ return response.data;
101
+ }
102
+
103
+ public async put<T = unknown>(url: string, data?: unknown, config?: AxiosRequestConfig): Promise<T> {
104
+ const response = await this.instance.put<T>(url, data, config);
105
+ return response.data;
106
+ }
107
+
108
+ public async patch<T = unknown>(url: string, data?: unknown, config?: AxiosRequestConfig): Promise<T> {
109
+ const response = await this.instance.patch<T>(url, data, config);
110
+ return response.data;
111
+ }
112
+
113
+ public async delete<T = unknown>(url: string, config?: AxiosRequestConfig): Promise<T> {
114
+ const response = await this.instance.delete<T>(url, config);
115
+ return response.data;
116
+ }
117
+
118
+ public getAxiosInstance(): AxiosInstance {
119
+ return this.instance;
120
+ }
121
+ }
@@ -0,0 +1,9 @@
1
+ interface JsonLdProps {
2
+ schema: any;
3
+ id: string;
4
+ }
5
+
6
+ export function JsonLd({ schema, id }: JsonLdProps) {
7
+ const schemaString = JSON.stringify(schema);
8
+ return <script id={id} type="application/ld+json" dangerouslySetInnerHTML={{ __html: schemaString }}></script>;
9
+ }
package/src/config.ts ADDED
@@ -0,0 +1,31 @@
1
+ import { AxiosError } from "axios";
2
+
3
+ const ROOT = process.cwd();
4
+ const CONFIG_PATH = process.env.BACKSTAGE_CONFIG_PATH || "./backstage.config";
5
+ const DEFAULT_BASE_URL = "https://bckstg.app/api";
6
+
7
+ export interface BackstageUserConfig {
8
+ accountId?: string | undefined;
9
+ token?: string | undefined;
10
+ baseURL?: string;
11
+ onError?: (error: AxiosError) => void;
12
+ }
13
+
14
+ let globalConfig: BackstageUserConfig = {
15
+ baseURL: process.env.BACKSTAGE_API_URL ?? DEFAULT_BASE_URL,
16
+ token: process.env.BACKSTAGE_API_KEY ?? undefined,
17
+ accountId: process.env.BACKSTAGE_ACCOUNT_ID ?? undefined,
18
+ };
19
+
20
+ export function defineConfig(config: BackstageUserConfig): BackstageUserConfig {
21
+ globalConfig = {
22
+ ...globalConfig,
23
+ ...config,
24
+ };
25
+ return globalConfig;
26
+ }
27
+
28
+ export function getGlobalConfig(): BackstageUserConfig {
29
+ // read the config from the project root
30
+ return globalConfig;
31
+ }
@@ -0,0 +1,13 @@
1
+ export const GAEvents = {
2
+ CLICK_TO_MAP: "click_to_map",
3
+ CLICK_TO_CALL: "click_to_call",
4
+ CLICK_TO_SOCIAL: "click_to_social",
5
+ CLICK_TO_WAITLIST: "click_to_waitlist",
6
+ FIND_LOCATION: "find_location",
7
+ CLICK_TO_ORDER: "click_to_order",
8
+ };
9
+
10
+ export const GALocations = {
11
+ LOCATION_CARD: "location_card",
12
+ TOPBAR: "topbar",
13
+ };
@@ -0,0 +1,9 @@
1
+ import { ApiCollectionResponse, Alert } from "../types";
2
+ import { BaseService } from "./base";
3
+
4
+ export class AlertService extends BaseService {
5
+ async getAlerts(): Promise<Alert[]> {
6
+ const { data } = await this.client.get<ApiCollectionResponse<Alert>>("/alerts");
7
+ return data;
8
+ }
9
+ }
@@ -0,0 +1,5 @@
1
+ import { BackstageClient } from "../client";
2
+
3
+ export class BaseService {
4
+ constructor(protected client: BackstageClient) {}
5
+ }
@@ -0,0 +1,19 @@
1
+ import { ApiCollectionResponse, Event } from "../types";
2
+ import { BaseService } from "./base";
3
+
4
+ export class EventService extends BaseService {
5
+ async getEvents(): Promise<Event[]> {
6
+ const { data } = await this.client.get<ApiCollectionResponse<Event>>("/events");
7
+ return data;
8
+ }
9
+
10
+ async getEvent(id: string): Promise<Event> {
11
+ const { data } = await this.client.get<ApiCollectionResponse<Event>>("/events" + "?filter[id]=" + id);
12
+ return data?.[0];
13
+ }
14
+
15
+ async getEventBySlug(slug: string): Promise<Event> {
16
+ const { data } = await this.client.get<ApiCollectionResponse<Event>>("/events" + "?filter[slug]=" + slug);
17
+ return data?.[0];
18
+ }
19
+ }
@@ -0,0 +1,27 @@
1
+ import { ApiCollectionResponse, Location } from "../types";
2
+ import { BaseService } from "./base";
3
+
4
+ export class LocationService extends BaseService {
5
+ async getLocations(): Promise<Location[]> {
6
+ const res = await this.client.get<ApiCollectionResponse<Location>>("/locations");
7
+ let locations = res.data;
8
+ locations = locations.sort((a: any, b: any) => {
9
+ if (a.name < b.name) {
10
+ return -1;
11
+ }
12
+ return 1;
13
+ });
14
+ return locations;
15
+ }
16
+
17
+ async getLocationBySlug(slug: string) {
18
+ const res = await this.client.get<ApiCollectionResponse<Location>>(`/locations?filter[slug]=${slug}`);
19
+ const data = res.data;
20
+
21
+ if (Array.isArray(data) && data.length > 0) {
22
+ return data[0];
23
+ }
24
+
25
+ return data;
26
+ }
27
+ }