@wix/himalaya-cli 0.1631.0 → 0.1632.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/cli.mjs +131 -88
- package/package.json +2 -2
package/dist/cli.mjs
CHANGED
|
@@ -17887,6 +17887,14 @@ function nativeRequiredFindings(descriptor) {
|
|
|
17887
17887
|
const reportKind = (ref, value2, path2, from) => {
|
|
17888
17888
|
const cls = bareNestedClass(ref);
|
|
17889
17889
|
const got = kindOf(value2);
|
|
17890
|
+
if (cls === "String") {
|
|
17891
|
+
const want = ref.startsWith("list:") ? `an array of strings ("Expected JsonArray")` : ref.startsWith("map:") ? `an object of strings ("Expected JsonObject")` : `a string ("Expected JsonPrimitive")`;
|
|
17892
|
+
out2.push({
|
|
17893
|
+
path: path2,
|
|
17894
|
+
message: `${want} is what the native decoder expects here, but the descriptor has ${got}. Native decode rejects it and drops the WHOLE screen from the seed, while web renders it fine; move any structured value to an *args / JsonElement carrier (reached from ${from})`
|
|
17895
|
+
});
|
|
17896
|
+
return;
|
|
17897
|
+
}
|
|
17890
17898
|
const expected = ref.startsWith("list:") ? "Expected JsonArray" : `Expected JsonObject for type with serial name 'io.himalaya.core.${cls}'`;
|
|
17891
17899
|
out2.push({
|
|
17892
17900
|
path: path2,
|
|
@@ -17894,12 +17902,16 @@ function nativeRequiredFindings(descriptor) {
|
|
|
17894
17902
|
});
|
|
17895
17903
|
};
|
|
17896
17904
|
const checkNested = (value2, cls, path2, from) => {
|
|
17905
|
+
if (value2 === null && cls.endsWith("!")) {
|
|
17906
|
+
reportKind(cls, value2, path2, from);
|
|
17907
|
+
return;
|
|
17908
|
+
}
|
|
17897
17909
|
if (cls.startsWith("map:")) {
|
|
17898
17910
|
if (!value2 || typeof value2 !== "object" || Array.isArray(value2)) {
|
|
17899
17911
|
reportKind(cls, value2, path2, from);
|
|
17900
17912
|
return;
|
|
17901
17913
|
}
|
|
17902
|
-
const of2 = cls.slice("map:".length);
|
|
17914
|
+
const of2 = cls.slice("map:".length).replace(/!$/, "");
|
|
17903
17915
|
for (const [key3, v2] of Object.entries(value2)) {
|
|
17904
17916
|
checkNested(v2, of2, `${path2}.${key3}`, from);
|
|
17905
17917
|
}
|
|
@@ -17910,10 +17922,22 @@ function nativeRequiredFindings(descriptor) {
|
|
|
17910
17922
|
reportKind(cls, value2, path2, from);
|
|
17911
17923
|
return;
|
|
17912
17924
|
}
|
|
17913
|
-
const of2 = cls.slice("list:".length);
|
|
17914
|
-
|
|
17925
|
+
const of2 = cls.slice("list:".length).replace(/!$/, "");
|
|
17926
|
+
for (let index = 0; index < value2.length; index++) {
|
|
17927
|
+
if (bareNestedClass(of2) === "String" && (!(index in value2) || value2[index] === void 0)) {
|
|
17928
|
+
reportKind("String", value2[index], `${path2}[${index}]`, from);
|
|
17929
|
+
} else {
|
|
17930
|
+
checkNested(value2[index], of2, `${path2}[${index}]`, from);
|
|
17931
|
+
}
|
|
17932
|
+
}
|
|
17933
|
+
return;
|
|
17934
|
+
}
|
|
17935
|
+
if (cls === "String" || cls === "String!") {
|
|
17936
|
+
if (value2 === void 0 && cls === "String" || typeof value2 === "string") return;
|
|
17937
|
+
reportKind("String", value2, path2, from);
|
|
17915
17938
|
return;
|
|
17916
17939
|
}
|
|
17940
|
+
cls = cls.replace(/!$/, "");
|
|
17917
17941
|
const rule = own4(NATIVE_NESTED_CLASSES, cls);
|
|
17918
17942
|
if (!rule) return;
|
|
17919
17943
|
if (Array.isArray(value2) || !value2 || typeof value2 !== "object") {
|
|
@@ -17940,35 +17964,7 @@ function nativeRequiredFindings(descriptor) {
|
|
|
17940
17964
|
}
|
|
17941
17965
|
for (const [name, sub] of Object.entries(rule.nested)) {
|
|
17942
17966
|
const inner = own4(bag, name);
|
|
17943
|
-
if (inner !== void 0 && inner !== null) checkNested(inner, sub, `${path2}.${name}`, from);
|
|
17944
|
-
}
|
|
17945
|
-
if (cls === "TextRun") {
|
|
17946
|
-
const color = own4(bag, "color");
|
|
17947
|
-
if (color !== void 0 && color !== null && typeof color !== "string") {
|
|
17948
|
-
out2.push({
|
|
17949
|
-
path: `${path2}.color`,
|
|
17950
|
-
message: `TextRun.color must be a string or null, but the descriptor has ${kindOf(color)}. Native decode rejects it and drops the whole screen (reached from ${from})`
|
|
17951
|
-
});
|
|
17952
|
-
}
|
|
17953
|
-
}
|
|
17954
|
-
if (cls === "Action") checkActionParams(own4(bag, "params"), `${path2}.params`, from);
|
|
17955
|
-
};
|
|
17956
|
-
const checkActionParams = (params, path2, from) => {
|
|
17957
|
-
if (params === void 0 || params === null) return;
|
|
17958
|
-
const cost = "Native decode rejects it and drops the WHOLE screen from the seed, while web renders it fine";
|
|
17959
|
-
if (typeof params !== "object" || Array.isArray(params)) {
|
|
17960
|
-
out2.push({
|
|
17961
|
-
path: path2,
|
|
17962
|
-
message: `Action.params must be an object of strings, but the descriptor has ${kindOf(params)} ("Expected JsonObject"). ${cost} (reached from ${from})`
|
|
17963
|
-
});
|
|
17964
|
-
return;
|
|
17965
|
-
}
|
|
17966
|
-
for (const [key3, value2] of Object.entries(params)) {
|
|
17967
|
-
if (typeof value2 === "string" || value2 === void 0) continue;
|
|
17968
|
-
out2.push({
|
|
17969
|
-
path: `${path2}.${key3}`,
|
|
17970
|
-
message: `Action.params values must be strings, but params.${key3} is ${kindOf(value2)} ("Expected JsonPrimitive at ${key3}" on Android, typeMismatch on iOS). ${cost}. Flatten it into string keys of params, or move structured data to Action.args (reached from ${from})`
|
|
17971
|
-
});
|
|
17967
|
+
if (inner !== void 0 && (inner !== null || sub.endsWith("!"))) checkNested(inner, sub, `${path2}.${name}`, from);
|
|
17972
17968
|
}
|
|
17973
17969
|
};
|
|
17974
17970
|
const walk2 = (node2, at2) => {
|
|
@@ -17994,7 +17990,7 @@ function nativeRequiredFindings(descriptor) {
|
|
|
17994
17990
|
}
|
|
17995
17991
|
for (const [prop2, cls] of Object.entries(own4(NATIVE_NESTED_PROPS, type2) ?? {})) {
|
|
17996
17992
|
const value2 = own4(bag, prop2);
|
|
17997
|
-
if (value2 === void 0 || value2 === null) continue;
|
|
17993
|
+
if (value2 === void 0 || value2 === null && !cls.endsWith("!")) continue;
|
|
17998
17994
|
checkNested(value2, cls, `${base}.${prop2}`, `${type2}.${prop2}`);
|
|
17999
17995
|
}
|
|
18000
17996
|
}
|
|
@@ -18015,7 +18011,7 @@ function nativeRequiredFindings(descriptor) {
|
|
|
18015
18011
|
const root = descriptor;
|
|
18016
18012
|
for (const [field, cls] of Object.entries(NATIVE_DESCRIPTOR_NESTED)) {
|
|
18017
18013
|
const value2 = own4(root, field);
|
|
18018
|
-
if (value2 === void 0 || value2 === null) continue;
|
|
18014
|
+
if (value2 === void 0 || value2 === null && !cls.endsWith("!")) continue;
|
|
18019
18015
|
checkNested(value2, cls, field, `${NATIVE_DESCRIPTOR_CLASS}.${field}`);
|
|
18020
18016
|
}
|
|
18021
18017
|
}
|
|
@@ -18068,12 +18064,12 @@ function componentPropFindings(descriptor) {
|
|
|
18068
18064
|
const bag = props2;
|
|
18069
18065
|
const base = at2 ? `${at2}.body.props` : "body.props";
|
|
18070
18066
|
if ((type2 === "Picker" || type2 === "WheelPicker") && Array.isArray(bag.options)) {
|
|
18071
|
-
const optionKinds = { swatch: "string", imageUrl: "string", icon: "string", disabled: "boolean" };
|
|
18067
|
+
const optionKinds = { id: "string", label: "string", swatch: "string", imageUrl: "string", icon: "string", disabled: "boolean" };
|
|
18072
18068
|
for (const [index, option] of bag.options.entries()) {
|
|
18073
18069
|
if (!option || typeof option !== "object" || Array.isArray(option)) continue;
|
|
18074
18070
|
for (const [key3, expected] of Object.entries(optionKinds)) {
|
|
18075
18071
|
const value2 = own4(option, key3);
|
|
18076
|
-
if (value2
|
|
18072
|
+
if (value2 === void 0 || value2 === null || wireKind(value2) === expected) continue;
|
|
18077
18073
|
out2.push({
|
|
18078
18074
|
path: `${base}.options.${index}.${key3}`,
|
|
18079
18075
|
kind: "decode",
|
|
@@ -18215,6 +18211,15 @@ function componentPropFindings(descriptor) {
|
|
|
18215
18211
|
kind: "decode",
|
|
18216
18212
|
message: `modifiers.${key3} is declared an INTEGER but this descriptor carries ${value2} \u2014 a fraction is not representable in the native \`Int\` field, so decode REJECTS the document and the WHOLE screen leaves the seed. Round it. At ${jsonPointer(where)}`
|
|
18217
18213
|
});
|
|
18214
|
+
} else if (key3 === "accessibilityTraits" && !schemaOwnsUnknownKeys && Array.isArray(value2)) {
|
|
18215
|
+
for (const [index, trait] of value2.entries()) {
|
|
18216
|
+
if (typeof trait === "string") continue;
|
|
18217
|
+
out2.push({
|
|
18218
|
+
path: `${where}[${index}]`,
|
|
18219
|
+
kind: "decode",
|
|
18220
|
+
message: `modifiers.accessibilityTraits[${index}] must be a string; native decoding rejects ${JSON.stringify(trait)} and drops the whole screen.`
|
|
18221
|
+
});
|
|
18222
|
+
}
|
|
18218
18223
|
}
|
|
18219
18224
|
continue;
|
|
18220
18225
|
}
|
|
@@ -20662,24 +20667,41 @@ var init_validate_descriptor_core = __esm({
|
|
|
20662
20667
|
Tabs: ["selectedId"],
|
|
20663
20668
|
WorkerSubtree: ["treeJsonPath", "policy", "fallback"]
|
|
20664
20669
|
};
|
|
20665
|
-
bareNestedClass = (ref) => ref.replace(/^(?:list:|map:)+/, "");
|
|
20670
|
+
bareNestedClass = (ref) => ref.replace(/^(?:list:|map:)+/, "").replace(/!$/, "");
|
|
20666
20671
|
NATIVE_NESTED_CLASSES = {
|
|
20667
|
-
Action: { required: ["actionId"], nested: {} },
|
|
20668
|
-
AlertButton: { required: ["id", "label"], nested: { action: "Action" } },
|
|
20672
|
+
Action: { required: ["actionId"], nested: { actionId: "String", params: "map:String" } },
|
|
20673
|
+
AlertButton: { required: ["id", "label"], nested: { id: "String", label: "String", role: "String", action: "Action" } },
|
|
20674
|
+
AmbientMotion: { required: [], nested: { kind: "String" } },
|
|
20675
|
+
Avatar: { required: [], nested: { imageUrl: "String", initials: "String" } },
|
|
20669
20676
|
Border: { required: ["width", "color"], nested: { color: "TokenRef" } },
|
|
20670
20677
|
CacheControl: { required: ["maxAge"], nested: {} },
|
|
20671
|
-
CalendarEvent: { required: [], nested: { onTap: "Action" } },
|
|
20678
|
+
CalendarEvent: { required: [], nested: { id: "String", title: "String", subtitle: "String", start: "String", end: "String", colorToken: "String", icon: "String", status: "String", onTap: "Action", extra: "map:String", resourceId: "String" } },
|
|
20679
|
+
ChartSeries: { required: [], nested: { label: "String", valuesPath: "String", kind: "String", stroke: "String", color: "String" } },
|
|
20672
20680
|
CornerRadii: { required: [], nested: {} },
|
|
20673
|
-
|
|
20674
|
-
|
|
20675
|
-
|
|
20676
|
-
|
|
20677
|
-
|
|
20678
|
-
|
|
20679
|
-
|
|
20680
|
-
|
|
20681
|
-
|
|
20682
|
-
|
|
20681
|
+
DataTableColumn: { required: [], nested: { key: "String", title: "String", align: "String" } },
|
|
20682
|
+
DataTableRow: { required: [], nested: { id: "String", cells: "list:String" } },
|
|
20683
|
+
DayDecoration: { required: [], nested: { date: "String", dotColorToken: "String", badge: "String" } },
|
|
20684
|
+
DonutSlice: { required: [], nested: { label: "String", color: "String" } },
|
|
20685
|
+
EmptyStateProps: { required: ["title"], nested: { title: "String", subtitle: "String", icon: "String", action: "Action", actionLabel: "String", titleStyle: "String", subtitleStyle: "String", actionStyle: "String", actionSize: "String" } },
|
|
20686
|
+
FilterChip: { required: ["id", "label"], nested: { id: "String", label: "String", leadingIcon: "String" } },
|
|
20687
|
+
FloatingBackButtonConfig: { required: [], nested: { backgroundColor: "String", tintColor: "String", backgroundCssVar: "String", tintCssVar: "String" } },
|
|
20688
|
+
FragmentSlotCase: { required: ["id", "content"], nested: { id: "String", accessibilityAnnouncement: "String" } },
|
|
20689
|
+
GaugeRing: { required: [], nested: { valuePath: "String", tint: "String" } },
|
|
20690
|
+
Gradient: { required: [], nested: { kind: "String", stops: "list:GradientStop!", start: "String", end: "String" } },
|
|
20691
|
+
GradientStop: { required: ["token"], nested: { token: "String" } },
|
|
20692
|
+
InterpolatedText: { required: ["template"], nested: { template: "String", params: "map:String" } },
|
|
20693
|
+
LegendItem: { required: [], nested: { label: "String", value: "String", marker: "String", color: "String" } },
|
|
20694
|
+
LiveRegion: { required: [], nested: { politeness: "String", text: "String", trigger: "String" } },
|
|
20695
|
+
LogicBundleRef: { required: ["url", "integrity"], nested: { url: "String", integrity: "String", contentType: "String", declaredCapabilities: "list:String!", minBinaryVersion: "String", bundleVersion: "String", signature: "String", keyId: "String", refresh: "RefreshConfig" } },
|
|
20696
|
+
MapMarker: { required: ["latitude", "longitude"], nested: { label: "String", id: "String", tint: "String", icon: "String" } },
|
|
20697
|
+
MapShape: { required: [], nested: { id: "String", kind: "String", points: "list:MapMarker", stroke: "String", fill: "String" } },
|
|
20698
|
+
MapTileSource: { required: [], nested: { urlTemplate: "String", attribution: "String" } },
|
|
20699
|
+
Measure: { required: [], nested: { heightPath: "String", widthPath: "String" } },
|
|
20700
|
+
MediaChapter: { required: [], nested: { id: "String", title: "String", artworkUrl: "String" } },
|
|
20701
|
+
MediaItem: { required: [], nested: { id: "String", kind: "String", url: "String", provider: "String", providerId: "String", mimeType: "String", streamType: "String", title: "String", artist: "String", album: "String", artworkUrl: "String", chapters: "list:MediaChapter", textTracks: "list:MediaTextTrack" } },
|
|
20702
|
+
MediaPlayerAppearance: { required: [], nested: { accentColor: "String", backgroundColor: "String", foregroundColor: "String", secondaryColor: "String", progressColor: "String", bufferedColor: "String", controlSize: "String", cornerStyle: "String" } },
|
|
20703
|
+
MediaTextTrack: { required: [], nested: { id: "String", label: "String", language: "String", kind: "String", url: "String" } },
|
|
20704
|
+
MenuItem: { required: ["id", "label"], nested: { id: "String", label: "String", icon: "String", action: "Action" } },
|
|
20683
20705
|
Modifiers: {
|
|
20684
20706
|
required: [],
|
|
20685
20707
|
nested: {
|
|
@@ -20691,6 +20713,7 @@ var init_validate_descriptor_core = __esm({
|
|
|
20691
20713
|
theme: "ThemeOverrides",
|
|
20692
20714
|
shadow: "TokenRef",
|
|
20693
20715
|
backgroundGradient: "TokenRef",
|
|
20716
|
+
onMeasure: "Measure",
|
|
20694
20717
|
gradient: "Gradient",
|
|
20695
20718
|
mask: "Gradient",
|
|
20696
20719
|
border: "Border",
|
|
@@ -20700,37 +20723,40 @@ var init_validate_descriptor_core = __esm({
|
|
|
20700
20723
|
pressMotion: "TokenRef",
|
|
20701
20724
|
swipeDismiss: "SwipeDismiss",
|
|
20702
20725
|
boxShadow: "Shadow",
|
|
20726
|
+
announce: "LiveRegion",
|
|
20727
|
+
ambientMotion: "AmbientMotion",
|
|
20703
20728
|
clipCornerRadii: "CornerRadii"
|
|
20704
20729
|
}
|
|
20705
20730
|
},
|
|
20706
|
-
|
|
20731
|
+
NavBadge: { required: [], nested: { kind: "String", valuePath: "String" } },
|
|
20732
|
+
Pagination: { required: ["onLoadMore"], nested: { cursor: "String", onLoadMore: "Action" } },
|
|
20707
20733
|
PickerOption: { required: ["id", "label"], nested: {} },
|
|
20708
|
-
|
|
20709
|
-
|
|
20734
|
+
PrefetchConfig: { required: [], nested: { targets: "map:list:String" } },
|
|
20735
|
+
RefreshConfig: { required: ["intervalMs", "action"], nested: { action: "String" } },
|
|
20736
|
+
Shadow: { required: ["color", "radius"], nested: { color: "String" } },
|
|
20710
20737
|
ShapeStroke: { required: [], nested: { color: "TokenRef" } },
|
|
20711
|
-
StatefulErrorProps: { required: ["title"], nested: { retry: "Action" } },
|
|
20712
|
-
SwipeAction: { required: ["label", "action"], nested: { action: "Action" } },
|
|
20738
|
+
StatefulErrorProps: { required: ["title"], nested: { title: "String", subtitle: "String", retry: "Action", retryLabel: "String" } },
|
|
20739
|
+
SwipeAction: { required: ["label", "action"], nested: { label: "String", icon: "String", action: "Action" } },
|
|
20713
20740
|
SwipeActionSet: { required: [], nested: { leading: "list:SwipeAction", trailing: "list:SwipeAction" } },
|
|
20714
|
-
SwipeDismiss: { required: ["action"], nested: { action: "Action" } },
|
|
20715
|
-
TabItem: { required: ["id", "label"], nested: {} },
|
|
20716
|
-
|
|
20717
|
-
|
|
20718
|
-
|
|
20719
|
-
|
|
20720
|
-
|
|
20721
|
-
|
|
20722
|
-
|
|
20723
|
-
|
|
20724
|
-
|
|
20725
|
-
|
|
20726
|
-
|
|
20727
|
-
|
|
20728
|
-
|
|
20729
|
-
|
|
20730
|
-
WidgetTimeRef: { required: ["at"], nested: {} },
|
|
20741
|
+
SwipeDismiss: { required: ["action"], nested: { action: "Action", direction: "String" } },
|
|
20742
|
+
TabItem: { required: ["id", "label"], nested: { id: "String", label: "String", badge: "String" } },
|
|
20743
|
+
TableRow: { required: [], nested: { cells: "list:String!" } },
|
|
20744
|
+
TextRun: { required: ["text"], nested: { text: "String", marks: "list:String", style: "String", color: "String", linkAction: "Action" } },
|
|
20745
|
+
ThemeOverrides: { required: [], nested: { colors: "map:String", typography: "map:TypographyToken", material: "String", variant: "String", density: "String", motion: "String" } },
|
|
20746
|
+
TimeGridResource: { required: [], nested: { id: "String", title: "String", subtitle: "String", colorToken: "String" } },
|
|
20747
|
+
TimelineEntry: { required: [], nested: { title: "String", subtitle: "String", time: "String", icon: "String" } },
|
|
20748
|
+
TokenRef: { required: ["token"], nested: { token: "String" } },
|
|
20749
|
+
TopBarAction: { required: [], nested: { id: "String!", icon: "String", label: "String", accessibilityLabel: "String", onTap: "Action", badge: "NavBadge", hiddenPath: "String", labelPath: "String", iconPath: "String" } },
|
|
20750
|
+
TopBarConfig: { required: [], nested: { actions: "list:TopBarAction!", leading: "String", style: "String" } },
|
|
20751
|
+
TranscriptScroll: { required: ["sendPath"], nested: { sendPath: "String", anchorPath: "String", jumpLabel: "String" } },
|
|
20752
|
+
Transition: { required: [], nested: { enter: "String", exit: "String", direction: "String", motion: "TokenRef" } },
|
|
20753
|
+
TypographyToken: { required: ["size", "weight", "line"], nested: { family: "String" } },
|
|
20754
|
+
ValidationRule: { required: [], nested: { regex: "String", type: "String", message: "String", mode: "String" } },
|
|
20755
|
+
WebViewConfig: { required: [], nested: { allowedOrigins: "list:String", headers: "map:String", userAgent: "String", loadingText: "String", errorTitle: "String", injectJsDocumentStart: "String", injectJsDocumentEnd: "String", floatingBackButton: "FloatingBackButtonConfig", prefetch: "PrefetchConfig", coverBandColor: "String", hostedSiteAdapter: "String" } },
|
|
20756
|
+
WidgetTimeRef: { required: ["at"], nested: { style: "String" } },
|
|
20731
20757
|
WorkerSubtreePolicy: {
|
|
20732
20758
|
required: ["allowedTypes", "allowedActionIds", "maxEncodedBytes", "maxNodes", "maxDepth", "maxHeight"],
|
|
20733
|
-
nested: {}
|
|
20759
|
+
nested: { allowedTypes: "list:String", allowedActionIds: "list:String" }
|
|
20734
20760
|
}
|
|
20735
20761
|
};
|
|
20736
20762
|
NATIVE_MODIFIERS_CLASS = "Modifiers";
|
|
@@ -20743,29 +20769,39 @@ var init_validate_descriptor_core = __esm({
|
|
|
20743
20769
|
cacheControl: "CacheControl",
|
|
20744
20770
|
logicBundle: "LogicBundleRef",
|
|
20745
20771
|
topBar: "TopBarConfig",
|
|
20746
|
-
transcriptScroll: "TranscriptScroll"
|
|
20772
|
+
transcriptScroll: "TranscriptScroll",
|
|
20773
|
+
// `webViewConfig` joined once #3063 made `WebViewConfig` a scored class (it had only String
|
|
20774
|
+
// leaves before, so the derivation dropped it). The descriptor's OWN String fields (`screenId`,
|
|
20775
|
+
// `title`, `url`, …) stay OUT — the envelope is Pass 1's business; only its nested CLASS
|
|
20776
|
+
// references carry the String scoring inward.
|
|
20777
|
+
webViewConfig: "WebViewConfig"
|
|
20747
20778
|
};
|
|
20748
20779
|
NATIVE_NESTED_PROPS = {
|
|
20749
20780
|
Agenda: { events: "list:CalendarEvent", onSelectEvent: "Action", onVisibleDateChange: "Action" },
|
|
20750
|
-
AlertDialog: { confirmAction: "Action", cancelAction: "Action", buttons: "list:AlertButton" },
|
|
20751
|
-
AvatarStrip: { onTap: "Action" },
|
|
20781
|
+
AlertDialog: { confirmAction: "Action!", cancelAction: "Action", buttons: "list:AlertButton" },
|
|
20782
|
+
AvatarStrip: { avatars: "list:Avatar!", onTap: "Action" },
|
|
20752
20783
|
Banner: { action: "Action" },
|
|
20753
20784
|
BottomSheet: { onDismiss: "Action" },
|
|
20754
20785
|
Button: { action: "Action" },
|
|
20755
20786
|
Carousel: { onChange: "Action" },
|
|
20787
|
+
Chart: { series: "list:ChartSeries" },
|
|
20756
20788
|
Chip: { onTap: "Action", onRemove: "Action" },
|
|
20757
20789
|
ChipsInput: { onAdd: "Action", onRemove: "Action" },
|
|
20758
20790
|
ColorPicker: { onChange: "Action" },
|
|
20791
|
+
DataTable: { columns: "list:DataTableColumn", rows: "list:DataTableRow", totals: "DataTableRow" },
|
|
20759
20792
|
DatePicker: { onChange: "Action" },
|
|
20760
20793
|
DisclosureGroup: { onToggle: "Action" },
|
|
20794
|
+
DonutChart: { slices: "list:DonutSlice" },
|
|
20761
20795
|
EmptyState: { action: "Action" },
|
|
20762
20796
|
ErrorState: { cta: "Action" },
|
|
20763
20797
|
Fab: { action: "Action" },
|
|
20764
|
-
FilterChips: { chips: "list:FilterChip", onChange: "Action" },
|
|
20798
|
+
FilterChips: { chips: "list:FilterChip!", onChange: "Action" },
|
|
20765
20799
|
Form: { onSubmit: "Action" },
|
|
20766
|
-
FragmentSlot: { cases: "list:FragmentSlotCase" },
|
|
20800
|
+
FragmentSlot: { cases: "list:FragmentSlotCase!" },
|
|
20801
|
+
Gauge: { rings: "list:GaugeRing" },
|
|
20767
20802
|
Grid: { onPullToRefresh: "Action", pagination: "Pagination" },
|
|
20768
|
-
LazyList: { onPullToRefresh: "Action",
|
|
20803
|
+
LazyList: { onPullToRefresh: "Action", pagination: "Pagination", rowSwipeActions: "SwipeActionSet", onTopItemChange: "Action" },
|
|
20804
|
+
Legend: { items: "list:LegendItem" },
|
|
20769
20805
|
ListItem: { onTap: "Action" },
|
|
20770
20806
|
Map: {
|
|
20771
20807
|
markers: "list:MapMarker",
|
|
@@ -20774,9 +20810,12 @@ var init_validate_descriptor_core = __esm({
|
|
|
20774
20810
|
onMarkerTap: "Action",
|
|
20775
20811
|
onRegionChange: "Action",
|
|
20776
20812
|
shapes: "list:MapShape",
|
|
20777
|
-
onShapeTap: "Action"
|
|
20813
|
+
onShapeTap: "Action",
|
|
20814
|
+
tileSource: "MapTileSource"
|
|
20778
20815
|
},
|
|
20779
20816
|
MediaPlayer: {
|
|
20817
|
+
items: "list:MediaItem",
|
|
20818
|
+
appearance: "MediaPlayerAppearance",
|
|
20780
20819
|
onReady: "Action",
|
|
20781
20820
|
onPlay: "Action",
|
|
20782
20821
|
onPause: "Action",
|
|
@@ -20787,39 +20826,43 @@ var init_validate_descriptor_core = __esm({
|
|
|
20787
20826
|
onItemChange: "Action"
|
|
20788
20827
|
},
|
|
20789
20828
|
Menu: { items: "list:MenuItem" },
|
|
20790
|
-
MonthCalendar: { onSelectDate: "Action", onMonthChange: "Action", onSelectRange: "Action", onDisplayModeChange: "Action", onVisibleRangeChange: "Action" },
|
|
20829
|
+
MonthCalendar: { decorations: "list:DayDecoration", onSelectDate: "Action", onMonthChange: "Action", onSelectRange: "Action", onDisplayModeChange: "Action", onVisibleRangeChange: "Action" },
|
|
20791
20830
|
OtpInput: { onChange: "Action", onComplete: "Action" },
|
|
20792
20831
|
PageControl: { onChange: "Action" },
|
|
20793
20832
|
Pager: { onChange: "Action" },
|
|
20794
|
-
Picker: { options: "list:PickerOption", onChange: "Action" },
|
|
20833
|
+
Picker: { options: "list:PickerOption!", onChange: "Action" },
|
|
20795
20834
|
Popover: { onDismiss: "Action" },
|
|
20796
20835
|
Rating: { onChange: "Action" },
|
|
20797
20836
|
RichContent: { onLink: "Action" },
|
|
20798
20837
|
RichContentEditor: { onChange: "Action" },
|
|
20799
|
-
RichText: { runs: "list:TextRun" },
|
|
20800
|
-
Shape: { cornerRadii: "CornerRadii", fill: "TokenRef", fillGradient: "Gradient", stroke: "ShapeStroke" },
|
|
20838
|
+
RichText: { runs: "list:TextRun!" },
|
|
20801
20839
|
RichTextField: { onChange: "Action", onSubmit: "Action" },
|
|
20802
20840
|
SearchField: { onChange: "Action", onSubmit: "Action" },
|
|
20803
|
-
SegmentedControl: { options: "list:TabItem", onChange: "Action" },
|
|
20841
|
+
SegmentedControl: { options: "list:TabItem!", onChange: "Action" },
|
|
20804
20842
|
SelectionControl: { onChange: "Action" },
|
|
20843
|
+
Shape: { cornerRadii: "CornerRadii", fill: "TokenRef", fillGradient: "Gradient", stroke: "ShapeStroke" },
|
|
20805
20844
|
Slider: { onChange: "Action" },
|
|
20806
20845
|
Snackbar: { action: "Action" },
|
|
20807
20846
|
StatefulSection: { empty: "EmptyStateProps", error: "StatefulErrorProps" },
|
|
20808
20847
|
Stepper: { onChange: "Action" },
|
|
20809
|
-
|
|
20848
|
+
Table: { rows: "list:TableRow" },
|
|
20849
|
+
Tabs: { tabs: "list:TabItem!", onChange: "Action" },
|
|
20810
20850
|
Text: { template: "InterpolatedText", timeRef: "WidgetTimeRef" },
|
|
20811
|
-
TextField: { onChange: "Action", onSubmit: "Action" },
|
|
20851
|
+
TextField: { onChange: "Action", onSubmit: "Action", validation: "ValidationRule" },
|
|
20812
20852
|
TimeGrid: {
|
|
20813
20853
|
events: "list:CalendarEvent",
|
|
20814
20854
|
onSelectEvent: "Action",
|
|
20815
20855
|
onRangeChange: "Action",
|
|
20856
|
+
resources: "list:TimeGridResource",
|
|
20816
20857
|
onEventChange: "Action",
|
|
20817
20858
|
onCreate: "Action"
|
|
20818
20859
|
},
|
|
20860
|
+
Timeline: { entries: "list:TimelineEntry" },
|
|
20819
20861
|
Toggle: { onChange: "Action" },
|
|
20820
20862
|
Tooltip: { onDismiss: "Action" },
|
|
20821
20863
|
VoiceNote: { onPlay: "Action", onPause: "Action", onSeek: "Action", onRateChange: "Action", onRetry: "Action" },
|
|
20822
|
-
|
|
20864
|
+
WebView: { config: "WebViewConfig" },
|
|
20865
|
+
WheelPicker: { options: "list:PickerOption!", onChange: "Action" },
|
|
20823
20866
|
WorkerSubtree: { policy: "WorkerSubtreePolicy" }
|
|
20824
20867
|
};
|
|
20825
20868
|
LENIENT_TOP_BAR_BLOCKS = /* @__PURE__ */ new Set(["items", "titleMenu", "logo", "background"]);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wix/himalaya-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.1632.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "himi — the Himalaya authoring CLI. Build a Tier-5 content package on your own machine, push it to the production serve as a draft, preview it on web + Himi Player, and read worker logs back — the remote dev loop. Wraps @himalaya/serve-cli for transport.",
|
|
6
6
|
"keywords": [
|
|
@@ -72,5 +72,5 @@
|
|
|
72
72
|
"artifactId": "himalaya-cli"
|
|
73
73
|
}
|
|
74
74
|
},
|
|
75
|
-
"falconPackageHash": "
|
|
75
|
+
"falconPackageHash": "1c969f8119c5dbbac0710e70c4bac2f5cc71b9e2d65a7261868e6255"
|
|
76
76
|
}
|