@zappie/foundations 0.1.12 → 0.2.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.
- package/CHANGELOG.md +20 -0
- package/dist/fulfilment/schedule.js +13 -5
- package/dist/fulfilment/schedule.js.map +1 -1
- package/dist/index.d.ts +35 -5
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/status/contact.js +19 -0
- package/dist/status/contact.js.map +6 -0
- package/dist/status/hours.js +12 -3
- package/dist/status/hours.js.map +1 -1
- package/dist/status/open-status.js +4 -1
- package/dist/status/open-status.js.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,25 @@
|
|
|
1
1
|
# @zappie/foundations
|
|
2
2
|
|
|
3
|
+
## 0.2.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 61e4029: A branch whose hours close at 23:59 stays open until midnight, as the API counts it. `getOpenStatus`, `OpenStatus`, `scheduleSlots` and `Schedule` no longer show such a branch as closed in its last minute, so a shopper can still order as soon as possible then.
|
|
8
|
+
|
|
9
|
+
## 0.2.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- 20160ee: `contactLinks(branch)` in `@zappie/foundations` lists the ways a shopper can reach a branch: a call to its phone and its messaging link. The kit's account page takes `branch` and `version` and shows a "Contact support" row with those links and a "Version" row. The starter's account page shows the branch's contact links.
|
|
14
|
+
- 6bcf696: A closed branch that takes orders ahead can take an order for a later slot. `canOrderAhead(branch)` in `@zappie/foundations` says whether a branch takes orders ahead, and `getOpenStatus` and `OpenStatus` return it as `canOrderAhead`, with `data-order-ahead` on the span. `scheduleSlots` and `Schedule` reach as far as the branch's `orderAheadDays`, or a pre-order menu's own limit, and offer no later slots when the branch takes orders only while open. `maxDays` still caps the horizon when you pass it. The SDK's test fixtures and the starter's mock API send `order_ahead_days`, as the API does.
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- Updated dependencies [6bcf696]
|
|
19
|
+
- Updated dependencies [7e108d9]
|
|
20
|
+
- Updated dependencies [ffdfc91]
|
|
21
|
+
- @zappie/sdk@0.2.1
|
|
22
|
+
|
|
3
23
|
## 0.1.12
|
|
4
24
|
|
|
5
25
|
### Patch Changes
|
|
@@ -5,10 +5,15 @@ import { useMenu, useStore } from "@zappie/sdk/react";
|
|
|
5
5
|
import { forwardRef, useEffect, useMemo, useState } from "react";
|
|
6
6
|
import { part } from "../internal/slot.js";
|
|
7
7
|
import { useControllableState } from "../internal/use-controllable-state.js";
|
|
8
|
-
import {
|
|
8
|
+
import {
|
|
9
|
+
canOrderAhead,
|
|
10
|
+
getOpenStatus,
|
|
11
|
+
localParts,
|
|
12
|
+
openingIntervals
|
|
13
|
+
} from "../status/hours.js";
|
|
9
14
|
function scheduleSlots(branch, timezone, now, {
|
|
10
15
|
intervalMinutes = 30,
|
|
11
|
-
maxDays =
|
|
16
|
+
maxDays = 90,
|
|
12
17
|
noticeMinutes = 0,
|
|
13
18
|
menuSchedule
|
|
14
19
|
} = {}) {
|
|
@@ -17,11 +22,14 @@ function scheduleSlots(branch, timezone, now, {
|
|
|
17
22
|
"Schedule requires a positive interval, 1\u201390 days and a non-negative notice"
|
|
18
23
|
);
|
|
19
24
|
}
|
|
20
|
-
|
|
25
|
+
const preorder = menuSchedule?.preorder ? menuSchedule : void 0;
|
|
26
|
+
if (!branch.fulfilment.scheduling || !preorder && !canOrderAhead(branch)) {
|
|
21
27
|
return [];
|
|
22
28
|
}
|
|
23
|
-
const
|
|
24
|
-
|
|
29
|
+
const days = Math.min(
|
|
30
|
+
maxDays,
|
|
31
|
+
preorder?.preorderMaxDays && preorder.preorderMaxDays > 0 ? preorder.preorderMaxDays : branch.orderAheadDays ?? 14
|
|
32
|
+
);
|
|
25
33
|
const earliest = now.getTime() + Math.max(noticeMinutes, (preorder?.preorderNoticeHours ?? 0) * 60) * 6e4;
|
|
26
34
|
const latest = now.getTime() + days * 864e5;
|
|
27
35
|
const menuIntervals = menuSchedule?.openingTimes.length ? openingIntervals(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/fulfilment/schedule.tsx"],
|
|
4
|
-
"mappings": ";;;AAEA,SAAS,SAAS,gBAAgB;AAClC,SAAS,YAAY,WAAW,SAAS,gBAAgB;AACzD,SAAS,YAA4B;AACrC,SAAS,4BAA4B;AACrC,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["Schedule"]
|
|
6
6
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -491,7 +491,9 @@ type ScheduleState = {
|
|
|
491
491
|
};
|
|
492
492
|
/**
|
|
493
493
|
* Generate scheduling slots within branch hours and any supplied menu hours and preorder limits.
|
|
494
|
-
*
|
|
494
|
+
* Slots reach as far as the branch's `orderAheadDays`, or a pre-order menu's own limit, and never
|
|
495
|
+
* past `maxDays` when you pass it. A closed branch still gets its later slots. Returns no slots
|
|
496
|
+
* when the branch doesn't take orders ahead (`canOrderAhead`), unless the menu is a pre-order menu.
|
|
495
497
|
*
|
|
496
498
|
* @param branch - The branch whose hours and scheduling capability apply.
|
|
497
499
|
* @param timezone - The time zone used to interpret opening hours and label slots.
|
|
@@ -943,6 +945,21 @@ declare const Search: {
|
|
|
943
945
|
} & react.RefAttributes<HTMLElement>>;
|
|
944
946
|
};
|
|
945
947
|
|
|
948
|
+
/** A way to reach a branch, as a link a shopper can open. */
|
|
949
|
+
type ContactLink = {
|
|
950
|
+
type: "phone" | "message";
|
|
951
|
+
label: string;
|
|
952
|
+
href: string;
|
|
953
|
+
};
|
|
954
|
+
/**
|
|
955
|
+
* The ways a shopper can reach a branch for support: a call to its phone and its messaging link,
|
|
956
|
+
* when the branch has them. The links come from the branch's `phone` and its `whatsapp` social link.
|
|
957
|
+
*
|
|
958
|
+
* @param branch - The branch whose phone and social links apply.
|
|
959
|
+
* @returns The contact links in that order, or none.
|
|
960
|
+
*/
|
|
961
|
+
declare function contactLinks(branch: Pick<Branch$1, "phone" | "socialLinks">): ContactLink[];
|
|
962
|
+
|
|
946
963
|
/**
|
|
947
964
|
* Parse a zero-padded HH:mm or HH:mm:ss wall-clock value without applying a time zone.
|
|
948
965
|
*
|
|
@@ -979,24 +996,37 @@ declare function formatOpeningHours(times: OpeningTime[]): {
|
|
|
979
996
|
dayLabel: string;
|
|
980
997
|
hoursLabel: string;
|
|
981
998
|
}[];
|
|
999
|
+
/**
|
|
1000
|
+
* Whether a branch takes orders for a later slot, so a shopper can still order while it is closed.
|
|
1001
|
+
* It needs scheduling and a positive `orderAheadDays`. A branch from a source that doesn't send
|
|
1002
|
+
* `orderAheadDays` follows its scheduling capability alone.
|
|
1003
|
+
*
|
|
1004
|
+
* @param branch - The branch whose scheduling and order-ahead days apply.
|
|
1005
|
+
*/
|
|
1006
|
+
declare function canOrderAhead(branch: Branch$1): boolean;
|
|
982
1007
|
type OpenStatusState = {
|
|
983
1008
|
isOpen: boolean;
|
|
1009
|
+
/** Whether the branch takes orders for a later slot. A closed branch can still take an order when true. */
|
|
1010
|
+
canOrderAhead: boolean;
|
|
984
1011
|
label: string;
|
|
985
1012
|
nextChange?: Date;
|
|
986
1013
|
};
|
|
987
1014
|
/**
|
|
988
1015
|
* Calculate whether a branch is open and provide its next opening or closing label.
|
|
989
1016
|
* Accounts for weekly hours, special hours, overnight intervals and closedUntil.
|
|
1017
|
+
* A day that closes at 23:59 stays open until midnight, as the API counts it.
|
|
990
1018
|
*
|
|
991
1019
|
* @param branch - The branch whose opening rules apply.
|
|
992
1020
|
* @param timezone - The time zone used to interpret and display its hours.
|
|
993
1021
|
* @param now - The instant to check. Defaults to the current time.
|
|
994
|
-
* @returns Open state, a display label and the next boundary found in the opening-hours window.
|
|
1022
|
+
* @returns Open state, whether it takes orders ahead, a display label and the next boundary found in the opening-hours window.
|
|
995
1023
|
*/
|
|
996
1024
|
declare function getOpenStatus(branch: Branch$1, timezone: string, now?: Date): OpenStatusState;
|
|
997
1025
|
|
|
998
1026
|
/**
|
|
999
|
-
* Expose a branch opening label
|
|
1027
|
+
* Expose a branch opening label, open/closed state and whether it takes orders ahead in a span or
|
|
1028
|
+
* your render function. The span carries `data-order-ahead` when a closed branch can still take an
|
|
1029
|
+
* order for a later slot.
|
|
1000
1030
|
* Uses your time zone override, then the branch, store or UTC, and refreshes at boundaries and window focus.
|
|
1001
1031
|
*/
|
|
1002
1032
|
declare const OpenStatus: react.ForwardRefExoticComponent<Omit<react.AllHTMLAttributes<HTMLElement>, PartOwnedAttributes> & {
|
|
@@ -1010,5 +1040,5 @@ declare const OpenStatus: react.ForwardRefExoticComponent<Omit<react.AllHTMLAttr
|
|
|
1010
1040
|
/** The installed @zappie/foundations version. */
|
|
1011
1041
|
declare const FOUNDATIONS_VERSION: string;
|
|
1012
1042
|
|
|
1013
|
-
export { Account, AccountNotConfiguredError, Address, Branch, BranchMap, Cart, Choice, DeliveryMap, FOUNDATIONS_VERSION, Fulfilment, Image, ItemForm, Money, OpenStatus, OptionGroup, Otp, Overlay, PartProps, PaymentMethods, Quantity, Schedule, Search, Totals, createSearchIndex, deferred, formatOpeningHours, formatWallClock, getOpenStatus, parseWallClock, scheduleSlots, useControllableState, useIntentPreload, useOverlay };
|
|
1014
|
-
export type { ActiveGroup, AddressState, AddressSuggestion, BranchMapLoadErrorState, BranchMapProps, Customer, Deferred, DeferredIdleOptions, DeferredProps, DeliveryMapProps, ImageProps, IntentPreloadHandlers, ItemFormContext, ItemFormInvalidGroup, ItemFormProps, MapLoadErrorState, PaymentMethod, QuantityProps, QuantityState, ScheduleSlot, ScheduleState, SearchResult, SearchSource, SearchState, SignInOptions, TotalsState };
|
|
1043
|
+
export { Account, AccountNotConfiguredError, Address, Branch, BranchMap, Cart, Choice, DeliveryMap, FOUNDATIONS_VERSION, Fulfilment, Image, ItemForm, Money, OpenStatus, OptionGroup, Otp, Overlay, PartProps, PaymentMethods, Quantity, Schedule, Search, Totals, canOrderAhead, contactLinks, createSearchIndex, deferred, formatOpeningHours, formatWallClock, getOpenStatus, parseWallClock, scheduleSlots, useControllableState, useIntentPreload, useOverlay };
|
|
1044
|
+
export type { ActiveGroup, AddressState, AddressSuggestion, BranchMapLoadErrorState, BranchMapProps, ContactLink, Customer, Deferred, DeferredIdleOptions, DeferredProps, DeliveryMapProps, ImageProps, IntentPreloadHandlers, ItemFormContext, ItemFormInvalidGroup, ItemFormProps, MapLoadErrorState, PaymentMethod, QuantityProps, QuantityState, ScheduleSlot, ScheduleState, SearchResult, SearchSource, SearchState, SignInOptions, TotalsState };
|
package/dist/index.js
CHANGED
|
@@ -18,7 +18,9 @@ import { Otp } from "./otp/input.js";
|
|
|
18
18
|
import { Overlay, useOverlay } from "./overlay/react.js";
|
|
19
19
|
import { PaymentMethods } from "./payment/methods.js";
|
|
20
20
|
import { createSearchIndex, Search } from "./search/index.js";
|
|
21
|
+
import { contactLinks } from "./status/contact.js";
|
|
21
22
|
import {
|
|
23
|
+
canOrderAhead,
|
|
22
24
|
formatOpeningHours,
|
|
23
25
|
formatWallClock,
|
|
24
26
|
getOpenStatus,
|
|
@@ -45,6 +47,8 @@ export {
|
|
|
45
47
|
Schedule,
|
|
46
48
|
Search,
|
|
47
49
|
Totals,
|
|
50
|
+
canOrderAhead,
|
|
51
|
+
contactLinks,
|
|
48
52
|
createSearchIndex,
|
|
49
53
|
deferred,
|
|
50
54
|
formatOpeningHours,
|
package/dist/index.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts"],
|
|
4
|
-
"mappings": ";;;AACA,SAAS,uBAAuB;AAIhC,SAAS,SAAS,iCAAiC;AAEnD,SAAS,WAAW,mBAAmB;AAOvC,SAAS,MAAM,cAAc;AAE7B,SAAS,UAAU,wBAAwB;AAO3C,SAAS,eAAe;AAKxB,SAAS,cAAc;AACvB,SAAS,UAAU,qBAAqB;AAExC,SAAS,kBAAkB;AAE3B,SAAS,4BAA4B;AACrC,cAAc;AACd,SAAS,aAAa;AAEtB,SAAS,aAAa;AACtB,SAAS,WAAW;AACpB,SAAS,SAAS,kBAAkB;AACpC,SAAS,sBAAsB;AAE/B,SAAS,mBAAmB,cAAc;AAE1C;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,kBAAkB;
|
|
4
|
+
"mappings": ";;;AACA,SAAS,uBAAuB;AAIhC,SAAS,SAAS,iCAAiC;AAEnD,SAAS,WAAW,mBAAmB;AAOvC,SAAS,MAAM,cAAc;AAE7B,SAAS,UAAU,wBAAwB;AAO3C,SAAS,eAAe;AAKxB,SAAS,cAAc;AACvB,SAAS,UAAU,qBAAqB;AAExC,SAAS,kBAAkB;AAE3B,SAAS,4BAA4B;AACrC,cAAc;AACd,SAAS,aAAa;AAEtB,SAAS,aAAa;AACtB,SAAS,WAAW;AACpB,SAAS,SAAS,kBAAkB;AACpC,SAAS,sBAAsB;AAE/B,SAAS,mBAAmB,cAAc;AAE1C,SAAS,oBAAoB;AAE7B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,kBAAkB;AAjDpB,IAAM,sBAA8B;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// src/status/contact.ts
|
|
2
|
+
function contactLinks(branch) {
|
|
3
|
+
const links = [];
|
|
4
|
+
const phone = branch.phone?.replace(/[^\d+]/g, "");
|
|
5
|
+
if (phone && /\d/.test(phone)) {
|
|
6
|
+
links.push({ type: "phone", label: "Call", href: `tel:${phone}` });
|
|
7
|
+
}
|
|
8
|
+
const message = branch.socialLinks?.find(
|
|
9
|
+
(link) => link.type.toLowerCase() === "whatsapp"
|
|
10
|
+
);
|
|
11
|
+
if (message) {
|
|
12
|
+
links.push({ type: "message", label: "Send a message", href: message.url });
|
|
13
|
+
}
|
|
14
|
+
return links;
|
|
15
|
+
}
|
|
16
|
+
export {
|
|
17
|
+
contactLinks
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=contact.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/status/contact.ts"],
|
|
4
|
+
"mappings": ";AAcO,SAAS,aACd,QACe;AACf,QAAM,QAAuB,CAAC;AAC9B,QAAM,QAAQ,OAAO,OAAO,QAAQ,WAAW,EAAE;AACjD,MAAI,SAAS,KAAK,KAAK,KAAK,GAAG;AAC7B,UAAM,KAAK,EAAE,MAAM,SAAS,OAAO,QAAQ,MAAM,OAAO,KAAK,GAAG,CAAC;AAAA,EACnE;AACA,QAAM,UAAU,OAAO,aAAa;AAAA,IAClC,CAAC,SAAS,KAAK,KAAK,YAAY,MAAM;AAAA,EACxC;AACA,MAAI,SAAS;AACX,UAAM,KAAK,EAAE,MAAM,WAAW,OAAO,kBAAkB,MAAM,QAAQ,IAAI,CAAC;AAAA,EAC5E;AACA,SAAO;AACT;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
package/dist/status/hours.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// src/status/hours.ts
|
|
2
2
|
var DAY = 864e5;
|
|
3
|
+
var END_OF_DAY = ["23:59", "23:59:59"];
|
|
3
4
|
var formatters = /* @__PURE__ */ new Map();
|
|
4
5
|
function formatter(timezone) {
|
|
5
6
|
let value = formatters.get(timezone);
|
|
@@ -114,9 +115,11 @@ function openingIntervals(branch, timezone, now, days = 8) {
|
|
|
114
115
|
);
|
|
115
116
|
for (const hours of times) {
|
|
116
117
|
const starts = wallInstants(date, hours.opens, timezone);
|
|
117
|
-
const
|
|
118
|
+
const toMidnight = END_OF_DAY.includes(hours.closes) && hours.closes > hours.opens;
|
|
119
|
+
const overnight = !toMidnight && hours.closes <= hours.opens;
|
|
118
120
|
const endDate = overnight ? dateOffset(date, 1) : date;
|
|
119
|
-
const
|
|
121
|
+
const midnight = toMidnight ? wallInstants(dateOffset(date, 1), "00:00", timezone) : [];
|
|
122
|
+
const ends = midnight.length ? midnight : wallInstants(endDate, hours.closes, timezone);
|
|
120
123
|
const start = starts[0];
|
|
121
124
|
let end = ends[ends.length - 1];
|
|
122
125
|
if (overnight && branch.specialHours?.some(
|
|
@@ -142,14 +145,18 @@ function openingIntervals(branch, timezone, now, days = 8) {
|
|
|
142
145
|
}
|
|
143
146
|
return merged;
|
|
144
147
|
}
|
|
148
|
+
function canOrderAhead(branch) {
|
|
149
|
+
return branch.fulfilment.scheduling && (branch.orderAheadDays === void 0 || branch.orderAheadDays > 0);
|
|
150
|
+
}
|
|
145
151
|
function getOpenStatus(branch, timezone, now = /* @__PURE__ */ new Date()) {
|
|
146
152
|
const intervals = openingIntervals(branch, timezone, now);
|
|
147
153
|
const current = intervals.find(
|
|
148
154
|
({ start, end }) => start <= now.getTime() && end > now.getTime()
|
|
149
155
|
);
|
|
150
156
|
const next = current?.end ?? intervals.find(({ start }) => start > now.getTime())?.start;
|
|
157
|
+
const ahead = canOrderAhead(branch);
|
|
151
158
|
if (next === void 0) {
|
|
152
|
-
return { isOpen: false, label: "Closed" };
|
|
159
|
+
return { isOpen: false, canOrderAhead: ahead, label: "Closed" };
|
|
153
160
|
}
|
|
154
161
|
const nextChange = new Date(next);
|
|
155
162
|
const local = localParts(nextChange, timezone);
|
|
@@ -160,11 +167,13 @@ function getOpenStatus(branch, timezone, now = /* @__PURE__ */ new Date()) {
|
|
|
160
167
|
const suffix = local.date === today ? "" : local.date === dateOffset(today, 1) ? " tomorrow" : ` ${new Intl.DateTimeFormat("en", { timeZone: timezone, weekday: "long" }).format(nextChange)}`;
|
|
161
168
|
return {
|
|
162
169
|
isOpen: Boolean(current),
|
|
170
|
+
canOrderAhead: ahead,
|
|
163
171
|
label: current ? `Open until ${clock}` : `Opens ${clock}${suffix}`,
|
|
164
172
|
nextChange
|
|
165
173
|
};
|
|
166
174
|
}
|
|
167
175
|
export {
|
|
176
|
+
canOrderAhead,
|
|
168
177
|
dateOffset,
|
|
169
178
|
formatOpeningHours,
|
|
170
179
|
formatWallClock,
|
package/dist/status/hours.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/status/hours.ts"],
|
|
4
|
-
"mappings": "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
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["hours"]
|
|
6
6
|
}
|
|
@@ -34,7 +34,10 @@ var OpenStatus = forwardRef(function OpenStatus2({ branch, timezone, ...props },
|
|
|
34
34
|
"span",
|
|
35
35
|
props,
|
|
36
36
|
state,
|
|
37
|
-
{
|
|
37
|
+
{
|
|
38
|
+
"data-state": state.isOpen ? "open" : "closed",
|
|
39
|
+
"data-order-ahead": state.canOrderAhead ? "" : void 0
|
|
40
|
+
},
|
|
38
41
|
ref
|
|
39
42
|
);
|
|
40
43
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/status/open-status.tsx"],
|
|
4
|
-
"mappings": ";;;AAEA,SAAS,gBAAgB;AACzB,SAAS,YAAY,WAAW,gBAAgB;AAChD,SAAS,YAA4B;AACrC,SAAS,qBAA2C;AAC7C,SAAS,cAAc,QAAgB,UAAkB;AAC9D,QAAM,CAAC,KAAK,MAAM,IAAI,SAAS,MAAM,oBAAI,KAAK,CAAC;AAC/C,QAAM,QAAQ,cAAc,QAAQ,UAAU,GAAG;AACjD,QAAM,WAAW,MAAM,YAAY,QAAQ;AAC3C,YAAU,MAAM;AAEd,UAAM,QAAQ,aAAa,SAAY,WAAW,KAAK,IAAI,IAAI;AAC/D,UAAM,UAAU;AAAA,MACd,MAAM,OAAO,oBAAI,KAAK,CAAC;AAAA,MACvB,KAAK,IAAI,GAAG,KAAK,IAAI,YAAY,KAAK,CAAC;AAAA,IACzC;AACA,UAAM,UAAU,MAAM,OAAO,oBAAI,KAAK,CAAC;AACvC,WAAO,iBAAiB,SAAS,OAAO;AACxC,WAAO,MAAM;AACX,mBAAa,OAAO;AACpB,aAAO,oBAAoB,SAAS,OAAO;AAAA,IAC7C;AAAA,EACF,GAAG,CAAC,QAAQ,UAAU,QAAQ,CAAC;AAC/B,SAAO;AACT;
|
|
4
|
+
"mappings": ";;;AAEA,SAAS,gBAAgB;AACzB,SAAS,YAAY,WAAW,gBAAgB;AAChD,SAAS,YAA4B;AACrC,SAAS,qBAA2C;AAC7C,SAAS,cAAc,QAAgB,UAAkB;AAC9D,QAAM,CAAC,KAAK,MAAM,IAAI,SAAS,MAAM,oBAAI,KAAK,CAAC;AAC/C,QAAM,QAAQ,cAAc,QAAQ,UAAU,GAAG;AACjD,QAAM,WAAW,MAAM,YAAY,QAAQ;AAC3C,YAAU,MAAM;AAEd,UAAM,QAAQ,aAAa,SAAY,WAAW,KAAK,IAAI,IAAI;AAC/D,UAAM,UAAU;AAAA,MACd,MAAM,OAAO,oBAAI,KAAK,CAAC;AAAA,MACvB,KAAK,IAAI,GAAG,KAAK,IAAI,YAAY,KAAK,CAAC;AAAA,IACzC;AACA,UAAM,UAAU,MAAM,OAAO,oBAAI,KAAK,CAAC;AACvC,WAAO,iBAAiB,SAAS,OAAO;AACxC,WAAO,MAAM;AACX,mBAAa,OAAO;AACpB,aAAO,oBAAoB,SAAS,OAAO;AAAA,IAC7C;AAAA,EACF,GAAG,CAAC,QAAQ,UAAU,QAAQ,CAAC;AAC/B,SAAO;AACT;AAOO,IAAM,aAAa,WAGxB,SAASA,YAAW,EAAE,QAAQ,UAAU,GAAG,MAAM,GAAG,KAAK;AACzD,QAAM,QAAQ,SAAS;AACvB,QAAM,QAAQ;AAAA,IACZ;AAAA,IACA,YAAY,OAAO,YAAY,MAAM,MAAM,YAAY;AAAA,EACzD;AACA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MACE,cAAc,MAAM,SAAS,SAAS;AAAA,MACtC,oBAAoB,MAAM,gBAAgB,KAAK;AAAA,IACjD;AAAA,IACA;AAAA,EACF;AACF,CAAC;",
|
|
5
5
|
"names": ["OpenStatus"]
|
|
6
6
|
}
|
package/dist/version.js
CHANGED
package/dist/version.js.map
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zappie/foundations",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "UI-less React primitives for Zappie storefronts: behaviour, state and accessibility without styles.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"@base-ui/react": "^1.9.0",
|
|
35
35
|
"@googlemaps/markerclusterer": "^2.6.2",
|
|
36
|
-
"@zappie/sdk": "^0.2.
|
|
36
|
+
"@zappie/sdk": "^0.2.1"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
39
|
"react": "^18.2.0 || ^19.0.0",
|