@json-render/react-native 0.4.3

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.
@@ -0,0 +1,406 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/catalog.ts
21
+ var catalog_exports = {};
22
+ __export(catalog_exports, {
23
+ standardActionDefinitions: () => standardActionDefinitions,
24
+ standardComponentDefinitions: () => standardComponentDefinitions
25
+ });
26
+ module.exports = __toCommonJS(catalog_exports);
27
+ var import_zod = require("zod");
28
+ var standardComponentDefinitions = {
29
+ // ==========================================================================
30
+ // Layout Components
31
+ // ==========================================================================
32
+ Container: {
33
+ props: import_zod.z.object({
34
+ padding: import_zod.z.number().nullable(),
35
+ paddingHorizontal: import_zod.z.number().nullable(),
36
+ paddingVertical: import_zod.z.number().nullable(),
37
+ margin: import_zod.z.number().nullable(),
38
+ backgroundColor: import_zod.z.string().nullable(),
39
+ borderRadius: import_zod.z.number().nullable(),
40
+ flex: import_zod.z.number().nullable()
41
+ }),
42
+ slots: ["default"],
43
+ description: "Generic container wrapper. Use for grouping elements with padding, margin, and background color."
44
+ },
45
+ Row: {
46
+ props: import_zod.z.object({
47
+ gap: import_zod.z.number().nullable(),
48
+ alignItems: import_zod.z.enum(["flex-start", "center", "flex-end", "stretch", "baseline"]).nullable(),
49
+ justifyContent: import_zod.z.enum([
50
+ "flex-start",
51
+ "center",
52
+ "flex-end",
53
+ "space-between",
54
+ "space-around",
55
+ "space-evenly"
56
+ ]).nullable(),
57
+ flexWrap: import_zod.z.enum(["wrap", "nowrap"]).nullable(),
58
+ padding: import_zod.z.number().nullable(),
59
+ flex: import_zod.z.number().nullable()
60
+ }),
61
+ slots: ["default"],
62
+ description: "Horizontal flex layout. Use for placing elements side by side."
63
+ },
64
+ Column: {
65
+ props: import_zod.z.object({
66
+ gap: import_zod.z.number().nullable(),
67
+ alignItems: import_zod.z.enum(["flex-start", "center", "flex-end", "stretch", "baseline"]).nullable(),
68
+ justifyContent: import_zod.z.enum([
69
+ "flex-start",
70
+ "center",
71
+ "flex-end",
72
+ "space-between",
73
+ "space-around",
74
+ "space-evenly"
75
+ ]).nullable(),
76
+ padding: import_zod.z.number().nullable(),
77
+ flex: import_zod.z.number().nullable()
78
+ }),
79
+ slots: ["default"],
80
+ description: "Vertical flex layout. Use for stacking elements top to bottom."
81
+ },
82
+ ScrollContainer: {
83
+ props: import_zod.z.object({
84
+ horizontal: import_zod.z.boolean().nullable(),
85
+ showsScrollIndicator: import_zod.z.boolean().nullable(),
86
+ padding: import_zod.z.number().nullable(),
87
+ backgroundColor: import_zod.z.string().nullable()
88
+ }),
89
+ slots: ["default"],
90
+ description: "Scrollable container. Use for content that may overflow the screen."
91
+ },
92
+ SafeArea: {
93
+ props: import_zod.z.object({
94
+ backgroundColor: import_zod.z.string().nullable()
95
+ }),
96
+ slots: ["default"],
97
+ description: "Safe area container that respects device notches and system bars. Use as the outermost wrapper for screens."
98
+ },
99
+ Spacer: {
100
+ props: import_zod.z.object({
101
+ size: import_zod.z.number().nullable(),
102
+ flex: import_zod.z.number().nullable()
103
+ }),
104
+ slots: [],
105
+ description: "Empty space between elements. Set size for fixed spacing or flex for flexible spacing."
106
+ },
107
+ Pressable: {
108
+ props: import_zod.z.object({}),
109
+ events: ["press", "longPress"],
110
+ slots: ["default"],
111
+ description: "Touchable wrapper that triggers events on press. Wrap any element to make it tappable. Bind on.press to setState to update state for visibility-driven UIs like tabs."
112
+ },
113
+ Divider: {
114
+ props: import_zod.z.object({
115
+ direction: import_zod.z.enum(["horizontal", "vertical"]).nullable(),
116
+ color: import_zod.z.string().nullable(),
117
+ thickness: import_zod.z.number().nullable(),
118
+ margin: import_zod.z.number().nullable()
119
+ }),
120
+ slots: [],
121
+ description: "Thin line separator between content sections."
122
+ },
123
+ // ==========================================================================
124
+ // Content Components
125
+ // ==========================================================================
126
+ Heading: {
127
+ props: import_zod.z.object({
128
+ text: import_zod.z.string(),
129
+ level: import_zod.z.enum(["h1", "h2", "h3", "h4"]).nullable(),
130
+ color: import_zod.z.string().nullable(),
131
+ align: import_zod.z.enum(["left", "center", "right"]).nullable()
132
+ }),
133
+ slots: [],
134
+ description: "Heading text at various levels. h1 is largest, h4 is smallest."
135
+ },
136
+ Paragraph: {
137
+ props: import_zod.z.object({
138
+ text: import_zod.z.string(),
139
+ color: import_zod.z.string().nullable(),
140
+ align: import_zod.z.enum(["left", "center", "right"]).nullable(),
141
+ numberOfLines: import_zod.z.number().nullable(),
142
+ fontSize: import_zod.z.number().nullable()
143
+ }),
144
+ slots: [],
145
+ description: "Body text paragraph. Use for descriptions and longer content."
146
+ },
147
+ Label: {
148
+ props: import_zod.z.object({
149
+ text: import_zod.z.string(),
150
+ color: import_zod.z.string().nullable(),
151
+ bold: import_zod.z.boolean().nullable(),
152
+ size: import_zod.z.enum(["xs", "sm", "md"]).nullable()
153
+ }),
154
+ slots: [],
155
+ description: "Small utility text. Use for captions, form labels, and secondary information."
156
+ },
157
+ Image: {
158
+ props: import_zod.z.object({
159
+ src: import_zod.z.string(),
160
+ alt: import_zod.z.string().nullable(),
161
+ width: import_zod.z.number().nullable(),
162
+ height: import_zod.z.number().nullable(),
163
+ resizeMode: import_zod.z.enum(["cover", "contain", "stretch", "center"]).nullable(),
164
+ borderRadius: import_zod.z.number().nullable()
165
+ }),
166
+ slots: [],
167
+ description: "Image display. Provide a source URL and optional dimensions."
168
+ },
169
+ Avatar: {
170
+ props: import_zod.z.object({
171
+ src: import_zod.z.string().nullable(),
172
+ initials: import_zod.z.string().nullable(),
173
+ size: import_zod.z.enum(["sm", "md", "lg", "xl"]).nullable(),
174
+ backgroundColor: import_zod.z.string().nullable()
175
+ }),
176
+ slots: [],
177
+ description: "Circular avatar showing an image or initials. Use for user profiles and contacts."
178
+ },
179
+ Badge: {
180
+ props: import_zod.z.object({
181
+ label: import_zod.z.string(),
182
+ variant: import_zod.z.enum(["default", "info", "success", "warning", "error"]).nullable()
183
+ }),
184
+ slots: [],
185
+ description: "Small colored indicator with a label. Use for status, counts, and categories."
186
+ },
187
+ Chip: {
188
+ props: import_zod.z.object({
189
+ label: import_zod.z.string(),
190
+ selected: import_zod.z.boolean().nullable(),
191
+ backgroundColor: import_zod.z.string().nullable()
192
+ }),
193
+ events: ["press", "remove"],
194
+ slots: [],
195
+ description: "Tag or filter chip. Bind on.remove for removable chips, on.press for selectable chips."
196
+ },
197
+ // ==========================================================================
198
+ // Input Components
199
+ // ==========================================================================
200
+ Button: {
201
+ props: import_zod.z.object({
202
+ label: import_zod.z.string(),
203
+ variant: import_zod.z.enum(["primary", "secondary", "danger", "outline", "ghost"]).nullable(),
204
+ size: import_zod.z.enum(["sm", "md", "lg"]).nullable(),
205
+ disabled: import_zod.z.boolean().nullable(),
206
+ loading: import_zod.z.boolean().nullable()
207
+ }),
208
+ events: ["press"],
209
+ slots: [],
210
+ description: "Pressable button with label. Set variant for styling. Bind on.press for the handler to call on press."
211
+ },
212
+ TextInput: {
213
+ props: import_zod.z.object({
214
+ placeholder: import_zod.z.string().nullable(),
215
+ value: import_zod.z.string().nullable(),
216
+ statePath: import_zod.z.string().nullable(),
217
+ secureTextEntry: import_zod.z.boolean().nullable(),
218
+ keyboardType: import_zod.z.enum(["default", "email-address", "numeric", "phone-pad", "url"]).nullable(),
219
+ multiline: import_zod.z.boolean().nullable(),
220
+ numberOfLines: import_zod.z.number().nullable(),
221
+ label: import_zod.z.string().nullable(),
222
+ flex: import_zod.z.number().nullable()
223
+ }),
224
+ events: ["submit", "focus", "blur"],
225
+ slots: [],
226
+ description: "Text input field. Use statePath to bind to the state model for two-way binding. The value typed by the user is stored at the statePath."
227
+ },
228
+ Switch: {
229
+ props: import_zod.z.object({
230
+ value: import_zod.z.boolean().nullable(),
231
+ statePath: import_zod.z.string().nullable(),
232
+ label: import_zod.z.string().nullable(),
233
+ disabled: import_zod.z.boolean().nullable()
234
+ }),
235
+ events: ["change"],
236
+ slots: [],
237
+ description: "Toggle switch. Use statePath to bind to the state model."
238
+ },
239
+ Checkbox: {
240
+ props: import_zod.z.object({
241
+ checked: import_zod.z.boolean().nullable(),
242
+ statePath: import_zod.z.string().nullable(),
243
+ label: import_zod.z.string().nullable(),
244
+ disabled: import_zod.z.boolean().nullable()
245
+ }),
246
+ events: ["change"],
247
+ slots: [],
248
+ description: "Checkbox for boolean selections. Use statePath to bind to the state model."
249
+ },
250
+ Slider: {
251
+ props: import_zod.z.object({
252
+ min: import_zod.z.number().nullable(),
253
+ max: import_zod.z.number().nullable(),
254
+ step: import_zod.z.number().nullable(),
255
+ value: import_zod.z.number().nullable(),
256
+ statePath: import_zod.z.string().nullable(),
257
+ label: import_zod.z.string().nullable(),
258
+ color: import_zod.z.string().nullable()
259
+ }),
260
+ slots: [],
261
+ description: "Range slider for numeric values. Use statePath to bind to the state model."
262
+ },
263
+ SearchBar: {
264
+ props: import_zod.z.object({
265
+ placeholder: import_zod.z.string().nullable(),
266
+ value: import_zod.z.string().nullable(),
267
+ statePath: import_zod.z.string().nullable()
268
+ }),
269
+ events: ["submit"],
270
+ slots: [],
271
+ description: "Search input with icon. Bind on.submit to trigger search on submit."
272
+ },
273
+ // ==========================================================================
274
+ // Feedback Components
275
+ // ==========================================================================
276
+ Spinner: {
277
+ props: import_zod.z.object({
278
+ size: import_zod.z.enum(["small", "large"]).nullable(),
279
+ color: import_zod.z.string().nullable()
280
+ }),
281
+ slots: [],
282
+ description: "Loading spinner indicator. Use while content is loading."
283
+ },
284
+ ProgressBar: {
285
+ props: import_zod.z.object({
286
+ progress: import_zod.z.number(),
287
+ color: import_zod.z.string().nullable(),
288
+ trackColor: import_zod.z.string().nullable(),
289
+ height: import_zod.z.number().nullable()
290
+ }),
291
+ slots: [],
292
+ description: "Horizontal progress bar. Set progress from 0 to 1."
293
+ },
294
+ // ==========================================================================
295
+ // Composite Components
296
+ // ==========================================================================
297
+ Card: {
298
+ props: import_zod.z.object({
299
+ title: import_zod.z.string().nullable(),
300
+ subtitle: import_zod.z.string().nullable(),
301
+ padding: import_zod.z.number().nullable(),
302
+ backgroundColor: import_zod.z.string().nullable(),
303
+ borderRadius: import_zod.z.number().nullable(),
304
+ elevated: import_zod.z.boolean().nullable()
305
+ }),
306
+ slots: ["default"],
307
+ description: "Elevated card container with optional title. Use for grouping related content."
308
+ },
309
+ ListItem: {
310
+ props: import_zod.z.object({
311
+ title: import_zod.z.string(),
312
+ subtitle: import_zod.z.string().nullable(),
313
+ leading: import_zod.z.string().nullable(),
314
+ trailing: import_zod.z.string().nullable(),
315
+ showChevron: import_zod.z.boolean().nullable()
316
+ }),
317
+ events: ["press"],
318
+ slots: [],
319
+ description: "List row with title, subtitle, and optional leading/trailing text. Bind on.press for the press handler."
320
+ },
321
+ Modal: {
322
+ props: import_zod.z.object({
323
+ visible: import_zod.z.boolean(),
324
+ title: import_zod.z.string().nullable(),
325
+ animationType: import_zod.z.enum(["slide", "fade", "none"]).nullable(),
326
+ statePath: import_zod.z.string().nullable()
327
+ }),
328
+ slots: ["default"],
329
+ description: "Modal overlay dialog. Use statePath to bind visibility to the state model."
330
+ }
331
+ };
332
+ var standardActionDefinitions = {
333
+ navigate: {
334
+ params: import_zod.z.object({
335
+ screen: import_zod.z.string(),
336
+ params: import_zod.z.record(import_zod.z.string(), import_zod.z.unknown()).nullable()
337
+ }),
338
+ description: "Navigate to a screen. Calls the user-provided navigation function."
339
+ },
340
+ goBack: {
341
+ params: import_zod.z.object({}),
342
+ description: "Navigate back to the previous screen."
343
+ },
344
+ showAlert: {
345
+ params: import_zod.z.object({
346
+ title: import_zod.z.string(),
347
+ message: import_zod.z.string().nullable(),
348
+ buttons: import_zod.z.array(
349
+ import_zod.z.object({
350
+ text: import_zod.z.string(),
351
+ style: import_zod.z.enum(["default", "cancel", "destructive"]).nullable(),
352
+ action: import_zod.z.string().nullable()
353
+ })
354
+ ).nullable()
355
+ }),
356
+ description: "Show a native alert dialog using Alert.alert()."
357
+ },
358
+ share: {
359
+ params: import_zod.z.object({
360
+ message: import_zod.z.string(),
361
+ url: import_zod.z.string().nullable(),
362
+ title: import_zod.z.string().nullable()
363
+ }),
364
+ description: "Open the native share sheet using Share.share()."
365
+ },
366
+ openURL: {
367
+ params: import_zod.z.object({
368
+ url: import_zod.z.string()
369
+ }),
370
+ description: "Open a URL in the default browser using Linking.openURL()."
371
+ },
372
+ setState: {
373
+ params: import_zod.z.object({
374
+ path: import_zod.z.string(),
375
+ value: import_zod.z.unknown()
376
+ }),
377
+ description: "Update a value in the state model at the given path."
378
+ },
379
+ pushState: {
380
+ params: import_zod.z.object({
381
+ path: import_zod.z.string(),
382
+ value: import_zod.z.unknown(),
383
+ clearPath: import_zod.z.string().optional()
384
+ }),
385
+ description: 'Append an item to an array in the state model. The value can contain { path: "/statePath" } references to read from current state, and "$id" to auto-generate a unique ID. Use clearPath to reset another path after pushing (e.g. clear an input field). Example: { path: "/todos", value: { id: "$id", title: { path: "/newTodoText" }, completed: false }, clearPath: "/newTodoText" }.'
386
+ },
387
+ removeState: {
388
+ params: import_zod.z.object({
389
+ path: import_zod.z.string(),
390
+ index: import_zod.z.number()
391
+ }),
392
+ description: "Remove an item from an array in the state model at the given index."
393
+ },
394
+ refresh: {
395
+ params: import_zod.z.object({
396
+ target: import_zod.z.string().nullable()
397
+ }),
398
+ description: "Trigger a data refresh. Optionally specify a target to refresh."
399
+ }
400
+ };
401
+ // Annotate the CommonJS export names for ESM import in node:
402
+ 0 && (module.exports = {
403
+ standardActionDefinitions,
404
+ standardComponentDefinitions
405
+ });
406
+ //# sourceMappingURL=catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/catalog.ts"],"sourcesContent":["import { z } from \"zod\";\n\n// =============================================================================\n// Standard Component Definitions for React Native\n// =============================================================================\n\n/**\n * Standard component definitions for React Native catalogs.\n *\n * These can be used directly or extended with custom components.\n * All components are built using React Native core primitives only.\n */\nexport const standardComponentDefinitions = {\n // ==========================================================================\n // Layout Components\n // ==========================================================================\n\n Container: {\n props: z.object({\n padding: z.number().nullable(),\n paddingHorizontal: z.number().nullable(),\n paddingVertical: z.number().nullable(),\n margin: z.number().nullable(),\n backgroundColor: z.string().nullable(),\n borderRadius: z.number().nullable(),\n flex: z.number().nullable(),\n }),\n slots: [\"default\"],\n description:\n \"Generic container wrapper. Use for grouping elements with padding, margin, and background color.\",\n },\n\n Row: {\n props: z.object({\n gap: z.number().nullable(),\n alignItems: z\n .enum([\"flex-start\", \"center\", \"flex-end\", \"stretch\", \"baseline\"])\n .nullable(),\n justifyContent: z\n .enum([\n \"flex-start\",\n \"center\",\n \"flex-end\",\n \"space-between\",\n \"space-around\",\n \"space-evenly\",\n ])\n .nullable(),\n flexWrap: z.enum([\"wrap\", \"nowrap\"]).nullable(),\n padding: z.number().nullable(),\n flex: z.number().nullable(),\n }),\n slots: [\"default\"],\n description:\n \"Horizontal flex layout. Use for placing elements side by side.\",\n },\n\n Column: {\n props: z.object({\n gap: z.number().nullable(),\n alignItems: z\n .enum([\"flex-start\", \"center\", \"flex-end\", \"stretch\", \"baseline\"])\n .nullable(),\n justifyContent: z\n .enum([\n \"flex-start\",\n \"center\",\n \"flex-end\",\n \"space-between\",\n \"space-around\",\n \"space-evenly\",\n ])\n .nullable(),\n padding: z.number().nullable(),\n flex: z.number().nullable(),\n }),\n slots: [\"default\"],\n description:\n \"Vertical flex layout. Use for stacking elements top to bottom.\",\n },\n\n ScrollContainer: {\n props: z.object({\n horizontal: z.boolean().nullable(),\n showsScrollIndicator: z.boolean().nullable(),\n padding: z.number().nullable(),\n backgroundColor: z.string().nullable(),\n }),\n slots: [\"default\"],\n description:\n \"Scrollable container. Use for content that may overflow the screen.\",\n },\n\n SafeArea: {\n props: z.object({\n backgroundColor: z.string().nullable(),\n }),\n slots: [\"default\"],\n description:\n \"Safe area container that respects device notches and system bars. Use as the outermost wrapper for screens.\",\n },\n\n Spacer: {\n props: z.object({\n size: z.number().nullable(),\n flex: z.number().nullable(),\n }),\n slots: [],\n description:\n \"Empty space between elements. Set size for fixed spacing or flex for flexible spacing.\",\n },\n\n Pressable: {\n props: z.object({}),\n events: [\"press\", \"longPress\"],\n slots: [\"default\"],\n description:\n \"Touchable wrapper that triggers events on press. Wrap any element to make it tappable. Bind on.press to setState to update state for visibility-driven UIs like tabs.\",\n },\n\n Divider: {\n props: z.object({\n direction: z.enum([\"horizontal\", \"vertical\"]).nullable(),\n color: z.string().nullable(),\n thickness: z.number().nullable(),\n margin: z.number().nullable(),\n }),\n slots: [],\n description: \"Thin line separator between content sections.\",\n },\n\n // ==========================================================================\n // Content Components\n // ==========================================================================\n\n Heading: {\n props: z.object({\n text: z.string(),\n level: z.enum([\"h1\", \"h2\", \"h3\", \"h4\"]).nullable(),\n color: z.string().nullable(),\n align: z.enum([\"left\", \"center\", \"right\"]).nullable(),\n }),\n slots: [],\n description:\n \"Heading text at various levels. h1 is largest, h4 is smallest.\",\n },\n\n Paragraph: {\n props: z.object({\n text: z.string(),\n color: z.string().nullable(),\n align: z.enum([\"left\", \"center\", \"right\"]).nullable(),\n numberOfLines: z.number().nullable(),\n fontSize: z.number().nullable(),\n }),\n slots: [],\n description:\n \"Body text paragraph. Use for descriptions and longer content.\",\n },\n\n Label: {\n props: z.object({\n text: z.string(),\n color: z.string().nullable(),\n bold: z.boolean().nullable(),\n size: z.enum([\"xs\", \"sm\", \"md\"]).nullable(),\n }),\n slots: [],\n description:\n \"Small utility text. Use for captions, form labels, and secondary information.\",\n },\n\n Image: {\n props: z.object({\n src: z.string(),\n alt: z.string().nullable(),\n width: z.number().nullable(),\n height: z.number().nullable(),\n resizeMode: z.enum([\"cover\", \"contain\", \"stretch\", \"center\"]).nullable(),\n borderRadius: z.number().nullable(),\n }),\n slots: [],\n description: \"Image display. Provide a source URL and optional dimensions.\",\n },\n\n Avatar: {\n props: z.object({\n src: z.string().nullable(),\n initials: z.string().nullable(),\n size: z.enum([\"sm\", \"md\", \"lg\", \"xl\"]).nullable(),\n backgroundColor: z.string().nullable(),\n }),\n slots: [],\n description:\n \"Circular avatar showing an image or initials. Use for user profiles and contacts.\",\n },\n\n Badge: {\n props: z.object({\n label: z.string(),\n variant: z\n .enum([\"default\", \"info\", \"success\", \"warning\", \"error\"])\n .nullable(),\n }),\n slots: [],\n description:\n \"Small colored indicator with a label. Use for status, counts, and categories.\",\n },\n\n Chip: {\n props: z.object({\n label: z.string(),\n selected: z.boolean().nullable(),\n backgroundColor: z.string().nullable(),\n }),\n events: [\"press\", \"remove\"],\n slots: [],\n description:\n \"Tag or filter chip. Bind on.remove for removable chips, on.press for selectable chips.\",\n },\n\n // ==========================================================================\n // Input Components\n // ==========================================================================\n\n Button: {\n props: z.object({\n label: z.string(),\n variant: z\n .enum([\"primary\", \"secondary\", \"danger\", \"outline\", \"ghost\"])\n .nullable(),\n size: z.enum([\"sm\", \"md\", \"lg\"]).nullable(),\n disabled: z.boolean().nullable(),\n loading: z.boolean().nullable(),\n }),\n events: [\"press\"],\n slots: [],\n description:\n \"Pressable button with label. Set variant for styling. Bind on.press for the handler to call on press.\",\n },\n\n TextInput: {\n props: z.object({\n placeholder: z.string().nullable(),\n value: z.string().nullable(),\n statePath: z.string().nullable(),\n secureTextEntry: z.boolean().nullable(),\n keyboardType: z\n .enum([\"default\", \"email-address\", \"numeric\", \"phone-pad\", \"url\"])\n .nullable(),\n multiline: z.boolean().nullable(),\n numberOfLines: z.number().nullable(),\n label: z.string().nullable(),\n flex: z.number().nullable(),\n }),\n events: [\"submit\", \"focus\", \"blur\"],\n slots: [],\n description:\n \"Text input field. Use statePath to bind to the state model for two-way binding. The value typed by the user is stored at the statePath.\",\n },\n\n Switch: {\n props: z.object({\n value: z.boolean().nullable(),\n statePath: z.string().nullable(),\n label: z.string().nullable(),\n disabled: z.boolean().nullable(),\n }),\n events: [\"change\"],\n slots: [],\n description: \"Toggle switch. Use statePath to bind to the state model.\",\n },\n\n Checkbox: {\n props: z.object({\n checked: z.boolean().nullable(),\n statePath: z.string().nullable(),\n label: z.string().nullable(),\n disabled: z.boolean().nullable(),\n }),\n events: [\"change\"],\n slots: [],\n description:\n \"Checkbox for boolean selections. Use statePath to bind to the state model.\",\n },\n\n Slider: {\n props: z.object({\n min: z.number().nullable(),\n max: z.number().nullable(),\n step: z.number().nullable(),\n value: z.number().nullable(),\n statePath: z.string().nullable(),\n label: z.string().nullable(),\n color: z.string().nullable(),\n }),\n slots: [],\n description:\n \"Range slider for numeric values. Use statePath to bind to the state model.\",\n },\n\n SearchBar: {\n props: z.object({\n placeholder: z.string().nullable(),\n value: z.string().nullable(),\n statePath: z.string().nullable(),\n }),\n events: [\"submit\"],\n slots: [],\n description:\n \"Search input with icon. Bind on.submit to trigger search on submit.\",\n },\n\n // ==========================================================================\n // Feedback Components\n // ==========================================================================\n\n Spinner: {\n props: z.object({\n size: z.enum([\"small\", \"large\"]).nullable(),\n color: z.string().nullable(),\n }),\n slots: [],\n description: \"Loading spinner indicator. Use while content is loading.\",\n },\n\n ProgressBar: {\n props: z.object({\n progress: z.number(),\n color: z.string().nullable(),\n trackColor: z.string().nullable(),\n height: z.number().nullable(),\n }),\n slots: [],\n description: \"Horizontal progress bar. Set progress from 0 to 1.\",\n },\n\n // ==========================================================================\n // Composite Components\n // ==========================================================================\n\n Card: {\n props: z.object({\n title: z.string().nullable(),\n subtitle: z.string().nullable(),\n padding: z.number().nullable(),\n backgroundColor: z.string().nullable(),\n borderRadius: z.number().nullable(),\n elevated: z.boolean().nullable(),\n }),\n slots: [\"default\"],\n description:\n \"Elevated card container with optional title. Use for grouping related content.\",\n },\n\n ListItem: {\n props: z.object({\n title: z.string(),\n subtitle: z.string().nullable(),\n leading: z.string().nullable(),\n trailing: z.string().nullable(),\n showChevron: z.boolean().nullable(),\n }),\n events: [\"press\"],\n slots: [],\n description:\n \"List row with title, subtitle, and optional leading/trailing text. Bind on.press for the press handler.\",\n },\n\n Modal: {\n props: z.object({\n visible: z.boolean(),\n title: z.string().nullable(),\n animationType: z.enum([\"slide\", \"fade\", \"none\"]).nullable(),\n statePath: z.string().nullable(),\n }),\n slots: [\"default\"],\n description:\n \"Modal overlay dialog. Use statePath to bind visibility to the state model.\",\n },\n};\n\n// =============================================================================\n// Standard Action Definitions for React Native\n// =============================================================================\n\n/**\n * Standard action definitions for React Native catalogs.\n *\n * These use React Native core APIs (Alert, Share, Linking) and\n * user-provided functions (navigate).\n */\nexport const standardActionDefinitions = {\n navigate: {\n params: z.object({\n screen: z.string(),\n params: z.record(z.string(), z.unknown()).nullable(),\n }),\n description:\n \"Navigate to a screen. Calls the user-provided navigation function.\",\n },\n\n goBack: {\n params: z.object({}),\n description: \"Navigate back to the previous screen.\",\n },\n\n showAlert: {\n params: z.object({\n title: z.string(),\n message: z.string().nullable(),\n buttons: z\n .array(\n z.object({\n text: z.string(),\n style: z.enum([\"default\", \"cancel\", \"destructive\"]).nullable(),\n action: z.string().nullable(),\n }),\n )\n .nullable(),\n }),\n description: \"Show a native alert dialog using Alert.alert().\",\n },\n\n share: {\n params: z.object({\n message: z.string(),\n url: z.string().nullable(),\n title: z.string().nullable(),\n }),\n description: \"Open the native share sheet using Share.share().\",\n },\n\n openURL: {\n params: z.object({\n url: z.string(),\n }),\n description: \"Open a URL in the default browser using Linking.openURL().\",\n },\n\n setState: {\n params: z.object({\n path: z.string(),\n value: z.unknown(),\n }),\n description: \"Update a value in the state model at the given path.\",\n },\n\n pushState: {\n params: z.object({\n path: z.string(),\n value: z.unknown(),\n clearPath: z.string().optional(),\n }),\n description:\n 'Append an item to an array in the state model. The value can contain { path: \"/statePath\" } references to read from current state, and \"$id\" to auto-generate a unique ID. Use clearPath to reset another path after pushing (e.g. clear an input field). Example: { path: \"/todos\", value: { id: \"$id\", title: { path: \"/newTodoText\" }, completed: false }, clearPath: \"/newTodoText\" }.',\n },\n\n removeState: {\n params: z.object({\n path: z.string(),\n index: z.number(),\n }),\n description:\n \"Remove an item from an array in the state model at the given index.\",\n },\n\n refresh: {\n params: z.object({\n target: z.string().nullable(),\n }),\n description:\n \"Trigger a data refresh. Optionally specify a target to refresh.\",\n },\n};\n\n// =============================================================================\n// Types\n// =============================================================================\n\n/**\n * Type for a component definition\n */\nexport type ComponentDefinition = {\n props: z.ZodType;\n slots: string[];\n events?: string[];\n description: string;\n};\n\n/**\n * Type for an action definition\n */\nexport type ActionDefinition = {\n params: z.ZodType;\n description: string;\n};\n"],"mappings":"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","names":[]}
@@ -0,0 +1,9 @@
1
+ import {
2
+ standardActionDefinitions,
3
+ standardComponentDefinitions
4
+ } from "./chunk-MP3Y6GEF.mjs";
5
+ export {
6
+ standardActionDefinitions,
7
+ standardComponentDefinitions
8
+ };
9
+ //# sourceMappingURL=catalog.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}