@peektravel/app-utilities 0.5.3 → 0.6.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/README.md +4 -0
- package/dist/index.cjs +18 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +26 -1
- package/dist/index.d.ts +26 -1
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -1
- package/dist/ui/index.cjs +366 -30
- package/dist/ui/index.cjs.map +1 -1
- package/dist/ui/index.d.cts +97 -9
- package/dist/ui/index.d.ts +97 -9
- package/dist/ui/index.js +366 -30
- package/dist/ui/index.js.map +1 -1
- package/docs/ui.md +30 -7
- package/llms.txt +5 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -349,6 +349,10 @@ property would otherwise cause. Two things worth knowing:
|
|
|
349
349
|
internal state (`isOpen`, `isVisible`) ignore writes — drive them through the
|
|
350
350
|
imperative methods on a `ref` (`ref.current.openPopover()`, `.show()`) and read
|
|
351
351
|
them back through the component's `CustomEvent`s, not by setting the prop.
|
|
352
|
+
- **Dynamic children reconcile correctly.** Slotting components (`ody-card`,
|
|
353
|
+
`ody-alert`, `ody-section`, …) forward child mutations to their internal slot,
|
|
354
|
+
so conditional, keyed, `.map()`-ed, or reordered **direct** children work
|
|
355
|
+
without a `NotFoundError` — no need to wrap dynamic children in a stable `<div>`.
|
|
352
356
|
|
|
353
357
|
TypeScript still types these accessors as read-only, so a direct
|
|
354
358
|
`el.isOpen = true` in TS is flagged — the setters are a runtime safety net for
|
package/dist/index.cjs
CHANGED
|
@@ -2876,6 +2876,13 @@ function toPricingMoney(raw) {
|
|
|
2876
2876
|
|
|
2877
2877
|
// src/internal/peek/products/product-converter.ts
|
|
2878
2878
|
var ADD_ON_COLOR = "#FFFFFF";
|
|
2879
|
+
function toMeetingLocation(activity) {
|
|
2880
|
+
const summary = activity.infoMeetingLocation ?? null;
|
|
2881
|
+
const address = activity.meetingLocationFormattedAddress ?? null;
|
|
2882
|
+
const url = activity.meetingLocationUrl ?? null;
|
|
2883
|
+
if (summary === null && address === null && url === null) return null;
|
|
2884
|
+
return { summary, address, url };
|
|
2885
|
+
}
|
|
2879
2886
|
function fromActivities(activities) {
|
|
2880
2887
|
return activities.map(fromActivity);
|
|
2881
2888
|
}
|
|
@@ -2887,6 +2894,9 @@ function fromActivity(activity) {
|
|
|
2887
2894
|
type: activity.type,
|
|
2888
2895
|
color: activity.colorHex || "",
|
|
2889
2896
|
currency: activity.currency || "",
|
|
2897
|
+
imageUrl: activity.imageUrl ?? null,
|
|
2898
|
+
description: activity.description ?? null,
|
|
2899
|
+
meetingLocation: toMeetingLocation(activity),
|
|
2890
2900
|
tickets: (activity.resourceOptions ?? []).map((option) => ({
|
|
2891
2901
|
id: option.id,
|
|
2892
2902
|
name: option.name,
|
|
@@ -2908,6 +2918,9 @@ function fromItemOptionNodes(nodes) {
|
|
|
2908
2918
|
type: ADD_ON_PRODUCT_TYPE,
|
|
2909
2919
|
color: ADD_ON_COLOR,
|
|
2910
2920
|
currency: "",
|
|
2921
|
+
imageUrl: null,
|
|
2922
|
+
description: null,
|
|
2923
|
+
meetingLocation: null,
|
|
2911
2924
|
tickets: []
|
|
2912
2925
|
};
|
|
2913
2926
|
grouped.set(itemId, product);
|
|
@@ -2933,6 +2946,11 @@ var PRODUCTS_QUERY = `
|
|
|
2933
2946
|
type
|
|
2934
2947
|
colorHex
|
|
2935
2948
|
currency
|
|
2949
|
+
imageUrl
|
|
2950
|
+
description
|
|
2951
|
+
meetingLocationFormattedAddress
|
|
2952
|
+
meetingLocationUrl
|
|
2953
|
+
infoMeetingLocation
|
|
2936
2954
|
resourceOptions {
|
|
2937
2955
|
id
|
|
2938
2956
|
name
|