@antlur/backstage 1.0.8 → 1.0.10

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 (225) hide show
  1. package/dist/cjs/client.js +86 -0
  2. package/dist/cjs/components/json-ld.js +8 -0
  3. package/dist/cjs/config.js +23 -0
  4. package/dist/cjs/constants/google-events.js +15 -0
  5. package/dist/cjs/endpoints/alerts.js +8 -0
  6. package/dist/cjs/endpoints/events.js +21 -0
  7. package/dist/cjs/endpoints/locations.js +24 -0
  8. package/dist/cjs/endpoints/menus.js +27 -0
  9. package/dist/cjs/endpoints/navigation.js +28 -0
  10. package/dist/cjs/endpoints/pages.js +23 -0
  11. package/dist/cjs/endpoints/press.js +8 -0
  12. package/dist/cjs/endpoints/website.js +8 -0
  13. package/dist/cjs/index.js +35 -0
  14. package/dist/cjs/types/alert.js +2 -0
  15. package/dist/cjs/types/api.js +2 -0
  16. package/dist/cjs/types/event.js +2 -0
  17. package/dist/cjs/types/index.js +29 -0
  18. package/dist/cjs/types/location.js +2 -0
  19. package/dist/cjs/types/media-item.js +2 -0
  20. package/dist/cjs/types/menu-category-item.js +2 -0
  21. package/dist/cjs/types/menu-category.js +2 -0
  22. package/dist/cjs/types/menu-item.js +2 -0
  23. package/dist/cjs/types/menu.js +2 -0
  24. package/dist/cjs/types/navigation.js +2 -0
  25. package/dist/cjs/types/page.js +2 -0
  26. package/dist/cjs/types/press.js +2 -0
  27. package/dist/cjs/types/website.js +2 -0
  28. package/dist/cjs/util/event.js +70 -0
  29. package/dist/cjs/util/gtag.js +14 -0
  30. package/dist/cjs/util/imgproxy-loader.js +14 -0
  31. package/dist/cjs/util/publishing.js +6 -0
  32. package/dist/cjs/util/special-hours.js +23 -0
  33. package/dist/{client.d.ts → esm/client.d.ts} +1 -0
  34. package/dist/esm/client.d.ts.map +1 -0
  35. package/dist/esm/components/json-ld.d.ts +7 -0
  36. package/dist/esm/components/json-ld.d.ts.map +1 -0
  37. package/dist/esm/components/json-ld.js +5 -0
  38. package/dist/{config.d.ts → esm/config.d.ts} +1 -0
  39. package/dist/esm/config.d.ts.map +1 -0
  40. package/dist/{constants → esm/constants}/google-events.d.ts +1 -0
  41. package/dist/esm/constants/google-events.d.ts.map +1 -0
  42. package/dist/{endpoints → esm/endpoints}/alerts.d.ts +1 -0
  43. package/dist/esm/endpoints/alerts.d.ts.map +1 -0
  44. package/dist/{endpoints → esm/endpoints}/events.d.ts +1 -0
  45. package/dist/esm/endpoints/events.d.ts.map +1 -0
  46. package/dist/{endpoints → esm/endpoints}/locations.d.ts +1 -0
  47. package/dist/esm/endpoints/locations.d.ts.map +1 -0
  48. package/dist/{endpoints → esm/endpoints}/menus.d.ts +1 -0
  49. package/dist/esm/endpoints/menus.d.ts.map +1 -0
  50. package/dist/{endpoints → esm/endpoints}/navigation.d.ts +1 -0
  51. package/dist/esm/endpoints/navigation.d.ts.map +1 -0
  52. package/dist/{endpoints → esm/endpoints}/pages.d.ts +1 -0
  53. package/dist/esm/endpoints/pages.d.ts.map +1 -0
  54. package/dist/{endpoints → esm/endpoints}/press.d.ts +1 -0
  55. package/dist/esm/endpoints/press.d.ts.map +1 -0
  56. package/dist/{endpoints → esm/endpoints}/website.d.ts +1 -0
  57. package/dist/esm/endpoints/website.d.ts.map +1 -0
  58. package/dist/{index.d.ts → esm/index.d.ts} +1 -0
  59. package/dist/esm/index.d.ts.map +1 -0
  60. package/dist/{types → esm/types}/alert.d.ts +1 -0
  61. package/dist/esm/types/alert.d.ts.map +1 -0
  62. package/dist/{types → esm/types}/api.d.ts +1 -0
  63. package/dist/esm/types/api.d.ts.map +1 -0
  64. package/dist/{types → esm/types}/event.d.ts +1 -0
  65. package/dist/esm/types/event.d.ts.map +1 -0
  66. package/dist/esm/types/index.d.ts +14 -0
  67. package/dist/esm/types/index.d.ts.map +1 -0
  68. package/dist/{types → esm/types}/location.d.ts +3 -0
  69. package/dist/esm/types/location.d.ts.map +1 -0
  70. package/dist/{types → esm/types}/media-item.d.ts +1 -0
  71. package/dist/esm/types/media-item.d.ts.map +1 -0
  72. package/dist/{types → esm/types}/menu-category-item.d.ts +1 -0
  73. package/dist/esm/types/menu-category-item.d.ts.map +1 -0
  74. package/dist/{types → esm/types}/menu-category.d.ts +1 -0
  75. package/dist/esm/types/menu-category.d.ts.map +1 -0
  76. package/dist/{types → esm/types}/menu-item.d.ts +1 -0
  77. package/dist/esm/types/menu-item.d.ts.map +1 -0
  78. package/dist/{types → esm/types}/menu.d.ts +1 -0
  79. package/dist/esm/types/menu.d.ts.map +1 -0
  80. package/dist/{types → esm/types}/navigation.d.ts +1 -0
  81. package/dist/esm/types/navigation.d.ts.map +1 -0
  82. package/dist/{types → esm/types}/page.d.ts +1 -0
  83. package/dist/esm/types/page.d.ts.map +1 -0
  84. package/dist/{types → esm/types}/press.d.ts +1 -0
  85. package/dist/esm/types/press.d.ts.map +1 -0
  86. package/dist/{types → esm/types}/website.d.ts +2 -0
  87. package/dist/esm/types/website.d.ts.map +1 -0
  88. package/dist/esm/util/event.d.ts +8 -0
  89. package/dist/esm/util/event.d.ts.map +1 -0
  90. package/dist/esm/util/event.js +63 -0
  91. package/dist/esm/util/gtag.d.ts +23 -0
  92. package/dist/esm/util/gtag.d.ts.map +1 -0
  93. package/dist/esm/util/gtag.js +10 -0
  94. package/dist/esm/util/imgproxy-loader.d.ts +9 -0
  95. package/dist/esm/util/imgproxy-loader.d.ts.map +1 -0
  96. package/dist/esm/util/imgproxy-loader.js +11 -0
  97. package/dist/esm/util/publishing.d.ts +2 -0
  98. package/dist/esm/util/publishing.d.ts.map +1 -0
  99. package/dist/esm/util/publishing.js +3 -0
  100. package/dist/esm/util/special-hours.d.ts +3 -0
  101. package/dist/esm/util/special-hours.d.ts.map +1 -0
  102. package/dist/esm/util/special-hours.js +20 -0
  103. package/dist/types/client.d.ts +14 -0
  104. package/dist/types/client.d.ts.map +1 -0
  105. package/dist/types/components/json-ld.d.ts +7 -0
  106. package/dist/types/components/json-ld.d.ts.map +1 -0
  107. package/dist/types/config.d.ts +10 -0
  108. package/dist/types/config.d.ts.map +1 -0
  109. package/dist/types/constants/google-events.d.ts +13 -0
  110. package/dist/types/constants/google-events.d.ts.map +1 -0
  111. package/dist/types/endpoints/alerts.d.ts +3 -0
  112. package/dist/types/endpoints/alerts.d.ts.map +1 -0
  113. package/dist/types/endpoints/events.d.ts +5 -0
  114. package/dist/types/endpoints/events.d.ts.map +1 -0
  115. package/dist/types/endpoints/locations.d.ts +4 -0
  116. package/dist/types/endpoints/locations.d.ts.map +1 -0
  117. package/dist/types/endpoints/menus.d.ts +5 -0
  118. package/dist/types/endpoints/menus.d.ts.map +1 -0
  119. package/dist/types/endpoints/navigation.d.ts +5 -0
  120. package/dist/types/endpoints/navigation.d.ts.map +1 -0
  121. package/dist/types/endpoints/pages.d.ts +6 -0
  122. package/dist/types/endpoints/pages.d.ts.map +1 -0
  123. package/dist/types/endpoints/press.d.ts +3 -0
  124. package/dist/types/endpoints/press.d.ts.map +1 -0
  125. package/dist/types/endpoints/website.d.ts +3 -0
  126. package/dist/types/endpoints/website.d.ts.map +1 -0
  127. package/dist/types/index.d.ts +12 -13
  128. package/dist/types/index.d.ts.map +1 -0
  129. package/dist/types/types/alert.d.ts +12 -0
  130. package/dist/types/types/alert.d.ts.map +1 -0
  131. package/dist/types/types/api.d.ts +12 -0
  132. package/dist/types/types/api.d.ts.map +1 -0
  133. package/dist/types/types/event.d.ts +14 -0
  134. package/dist/types/types/event.d.ts.map +1 -0
  135. package/dist/types/types/index.d.ts +14 -0
  136. package/dist/types/types/index.d.ts.map +1 -0
  137. package/dist/types/types/location.d.ts +70 -0
  138. package/dist/types/types/location.d.ts.map +1 -0
  139. package/dist/types/types/media-item.d.ts +11 -0
  140. package/dist/types/types/media-item.d.ts.map +1 -0
  141. package/dist/types/types/menu-category-item.d.ts +18 -0
  142. package/dist/types/types/menu-category-item.d.ts.map +1 -0
  143. package/dist/types/types/menu-category.d.ts +15 -0
  144. package/dist/types/types/menu-category.d.ts.map +1 -0
  145. package/dist/types/types/menu-item.d.ts +16 -0
  146. package/dist/types/types/menu-item.d.ts.map +1 -0
  147. package/dist/types/types/menu.d.ts +13 -0
  148. package/dist/types/types/menu.d.ts.map +1 -0
  149. package/dist/types/types/navigation.d.ts +17 -0
  150. package/dist/types/types/navigation.d.ts.map +1 -0
  151. package/dist/types/types/page.d.ts +22 -0
  152. package/dist/types/types/page.d.ts.map +1 -0
  153. package/dist/types/types/press.d.ts +13 -0
  154. package/dist/types/types/press.d.ts.map +1 -0
  155. package/dist/types/types/website.d.ts +69 -0
  156. package/dist/types/types/website.d.ts.map +1 -0
  157. package/dist/types/util/event.d.ts +8 -0
  158. package/dist/types/util/event.d.ts.map +1 -0
  159. package/dist/types/util/gtag.d.ts +23 -0
  160. package/dist/types/util/gtag.d.ts.map +1 -0
  161. package/dist/types/util/imgproxy-loader.d.ts +9 -0
  162. package/dist/types/util/imgproxy-loader.d.ts.map +1 -0
  163. package/dist/types/util/publishing.d.ts +2 -0
  164. package/dist/types/util/publishing.d.ts.map +1 -0
  165. package/dist/types/util/special-hours.d.ts +3 -0
  166. package/dist/types/util/special-hours.d.ts.map +1 -0
  167. package/package.json +46 -12
  168. package/src/client.ts +97 -0
  169. package/src/components/json-ld.tsx +9 -0
  170. package/src/config.ts +31 -0
  171. package/src/constants/google-events.ts +13 -0
  172. package/src/endpoints/alerts.ts +7 -0
  173. package/src/endpoints/events.ts +20 -0
  174. package/src/endpoints/locations.ts +25 -0
  175. package/src/endpoints/menus.ts +30 -0
  176. package/src/endpoints/navigation.ts +34 -0
  177. package/src/endpoints/pages.ts +23 -0
  178. package/src/endpoints/press.ts +7 -0
  179. package/src/endpoints/website.ts +7 -0
  180. package/src/index.ts +18 -0
  181. package/src/types/alert.ts +11 -0
  182. package/src/types/api.ts +12 -0
  183. package/src/types/event.ts +14 -0
  184. package/src/types/index.ts +13 -0
  185. package/src/types/location.ts +69 -0
  186. package/src/types/media-item.ts +10 -0
  187. package/src/types/menu-category-item.ts +18 -0
  188. package/src/types/menu-category.ts +15 -0
  189. package/src/types/menu-item.ts +15 -0
  190. package/src/types/menu.ts +12 -0
  191. package/src/types/navigation.ts +17 -0
  192. package/src/types/page.ts +24 -0
  193. package/src/types/press.ts +13 -0
  194. package/src/types/website.ts +76 -0
  195. package/src/util/event.ts +77 -0
  196. package/src/util/gtag.ts +40 -0
  197. package/src/util/imgproxy-loader.ts +22 -0
  198. package/src/util/publishing.ts +3 -0
  199. package/src/util/special-hours.ts +24 -0
  200. /package/dist/{client.js → esm/client.js} +0 -0
  201. /package/dist/{config.js → esm/config.js} +0 -0
  202. /package/dist/{constants → esm/constants}/google-events.js +0 -0
  203. /package/dist/{endpoints → esm/endpoints}/alerts.js +0 -0
  204. /package/dist/{endpoints → esm/endpoints}/events.js +0 -0
  205. /package/dist/{endpoints → esm/endpoints}/locations.js +0 -0
  206. /package/dist/{endpoints → esm/endpoints}/menus.js +0 -0
  207. /package/dist/{endpoints → esm/endpoints}/navigation.js +0 -0
  208. /package/dist/{endpoints → esm/endpoints}/pages.js +0 -0
  209. /package/dist/{endpoints → esm/endpoints}/press.js +0 -0
  210. /package/dist/{endpoints → esm/endpoints}/website.js +0 -0
  211. /package/dist/{index.js → esm/index.js} +0 -0
  212. /package/dist/{types → esm/types}/alert.js +0 -0
  213. /package/dist/{types → esm/types}/api.js +0 -0
  214. /package/dist/{types → esm/types}/event.js +0 -0
  215. /package/dist/{types → esm/types}/index.js +0 -0
  216. /package/dist/{types → esm/types}/location.js +0 -0
  217. /package/dist/{types → esm/types}/media-item.js +0 -0
  218. /package/dist/{types → esm/types}/menu-category-item.js +0 -0
  219. /package/dist/{types → esm/types}/menu-category.js +0 -0
  220. /package/dist/{types → esm/types}/menu-item.js +0 -0
  221. /package/dist/{types → esm/types}/menu.js +0 -0
  222. /package/dist/{types → esm/types}/navigation.js +0 -0
  223. /package/dist/{types → esm/types}/page.js +0 -0
  224. /package/dist/{types → esm/types}/press.js +0 -0
  225. /package/dist/{types → esm/types}/website.js +0 -0
@@ -0,0 +1,40 @@
1
+ import { GAEvents, GALocations } from "../constants/google-events";
2
+
3
+ // Define gtag on window
4
+ declare global {
5
+ interface Window {
6
+ gtag?: (...args: any[]) => void;
7
+ }
8
+ }
9
+
10
+ export function gtag(...args: any[]) {
11
+ if (typeof window !== "undefined" && window.gtag) {
12
+ window.gtag(...args);
13
+ }
14
+ }
15
+
16
+ interface GtagEventParams {
17
+ category?: string;
18
+ label?: string;
19
+ value?: number;
20
+ page_url?: string;
21
+
22
+ // location is one of GALocations
23
+ location?: string;
24
+
25
+ // store is the slug of the store
26
+ store?: string | null | undefined;
27
+
28
+ /** @deprecated Use category instead */
29
+ event_category?: string;
30
+ /** @deprecated Use label instead */
31
+ event_label?: string;
32
+ }
33
+
34
+ type GtagEventName = keyof typeof GAEvents | (string & {});
35
+
36
+ export function gtagEvent(name: GtagEventName, params: GtagEventParams = {}) {
37
+ if (typeof window === "undefined" || !window.gtag) return;
38
+
39
+ gtag("event", name, params);
40
+ }
@@ -0,0 +1,22 @@
1
+ interface ImgproxyLoaderProps {
2
+ src: string;
3
+ width?: number;
4
+ height?: number;
5
+ quality?: number;
6
+ }
7
+
8
+ export default function imgproxyLoader({ src, width, height, quality }: ImgproxyLoaderProps) {
9
+ const path =
10
+ `/size:${width ? width : 0}:${height ? height : 0}` +
11
+ `/resizing_type:fill` +
12
+ (quality ? `/quality:${quality}` : "") +
13
+ `/sharpen:0.5` +
14
+ `/plain/${src}` +
15
+ `@webp`;
16
+
17
+ const host = process.env.NEXT_PUBLIC_IMGPROXY_URL || "https://imgproxy.antlur.co";
18
+
19
+ const imgUrl = `${host}/insecure${path}`;
20
+
21
+ return imgUrl;
22
+ }
@@ -0,0 +1,3 @@
1
+ export function filterPublishedItems(items: any[]) {
2
+ return items.filter((item) => item.published_at !== null);
3
+ }
@@ -0,0 +1,24 @@
1
+ import type { Location } from "../types";
2
+ import { DateTime } from "luxon";
3
+
4
+ export function getSpecialHoursFromLocation(location: Location): any[] {
5
+ if (!location.special_hours) return [];
6
+
7
+ // filter out any special hours that are before today
8
+ const now = DateTime.now().startOf("day");
9
+ if (location.timezone) now.setZone(location.timezone);
10
+
11
+ const specialHours = location.special_hours.filter((specialHour) => {
12
+ const specialHourDate = DateTime.fromISO(specialHour.date);
13
+ return specialHourDate >= now;
14
+ });
15
+
16
+ // sort by date
17
+ specialHours.sort((a, b) => {
18
+ const aDate = DateTime.fromISO(a.date);
19
+ const bDate = DateTime.fromISO(b.date);
20
+ return aDate > bDate ? 1 : -1;
21
+ });
22
+
23
+ return specialHours;
24
+ }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes