@positronic/gen-ui-components 0.0.53

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 (40) hide show
  1. package/dist/src/components/Button.js +30 -0
  2. package/dist/src/components/Checkbox.js +26 -0
  3. package/dist/src/components/Container.js +46 -0
  4. package/dist/src/components/Form.js +17 -0
  5. package/dist/src/components/Heading.js +29 -0
  6. package/dist/src/components/HiddenInput.js +18 -0
  7. package/dist/src/components/Input.js +36 -0
  8. package/dist/src/components/MultiTextInput.js +42 -0
  9. package/dist/src/components/Select.js +38 -0
  10. package/dist/src/components/Text.js +25 -0
  11. package/dist/src/components/TextArea.js +31 -0
  12. package/dist/src/components/index.js +11 -0
  13. package/dist/src/index.js +41 -0
  14. package/dist/types/components/Button.d.ts +19 -0
  15. package/dist/types/components/Button.d.ts.map +1 -0
  16. package/dist/types/components/Checkbox.d.ts +22 -0
  17. package/dist/types/components/Checkbox.d.ts.map +1 -0
  18. package/dist/types/components/Container.d.ts +22 -0
  19. package/dist/types/components/Container.d.ts.map +1 -0
  20. package/dist/types/components/Form.d.ts +16 -0
  21. package/dist/types/components/Form.d.ts.map +1 -0
  22. package/dist/types/components/Heading.d.ts +18 -0
  23. package/dist/types/components/Heading.d.ts.map +1 -0
  24. package/dist/types/components/HiddenInput.d.ts +16 -0
  25. package/dist/types/components/HiddenInput.d.ts.map +1 -0
  26. package/dist/types/components/Input.d.ts +28 -0
  27. package/dist/types/components/Input.d.ts.map +1 -0
  28. package/dist/types/components/MultiTextInput.d.ts +22 -0
  29. package/dist/types/components/MultiTextInput.d.ts.map +1 -0
  30. package/dist/types/components/Select.d.ts +40 -0
  31. package/dist/types/components/Select.d.ts.map +1 -0
  32. package/dist/types/components/Text.d.ts +16 -0
  33. package/dist/types/components/Text.d.ts.map +1 -0
  34. package/dist/types/components/TextArea.d.ts +28 -0
  35. package/dist/types/components/TextArea.d.ts.map +1 -0
  36. package/dist/types/components/index.d.ts +23 -0
  37. package/dist/types/components/index.d.ts.map +1 -0
  38. package/dist/types/index.d.ts +86 -0
  39. package/dist/types/index.d.ts.map +1 -0
  40. package/package.json +31 -0
@@ -0,0 +1,30 @@
1
+ import { z } from 'zod';
2
+ var ButtonPropsSchema = z.object({
3
+ label: z.string().describe('Text displayed on the button'),
4
+ type: z.enum([
5
+ 'submit',
6
+ 'button'
7
+ ]).optional().describe('Button type - submit for form submission, button for other actions'),
8
+ variant: z.enum([
9
+ 'primary',
10
+ 'secondary',
11
+ 'danger'
12
+ ]).optional().describe('Visual style - primary (main action), secondary (alternative), danger (destructive)')
13
+ });
14
+ var variantClasses = {
15
+ primary: 'bg-blue-500 text-white hover:bg-blue-600',
16
+ secondary: 'bg-gray-200 text-gray-700 hover:bg-gray-300',
17
+ danger: 'bg-red-500 text-white hover:bg-red-600'
18
+ };
19
+ var ButtonComponent = function(param) {
20
+ var label = param.label, _param_type = param.type, type = _param_type === void 0 ? 'button' : _param_type, _param_variant = param.variant, variant = _param_variant === void 0 ? 'primary' : _param_variant;
21
+ return /*#__PURE__*/ React.createElement("button", {
22
+ type: type,
23
+ className: "px-4 py-2 font-medium rounded-md transition-colors ".concat(variantClasses[variant])
24
+ }, label);
25
+ };
26
+ export var Button = {
27
+ component: ButtonComponent,
28
+ description: 'A clickable button. Use type="submit" for form submission buttons. Use variants to indicate importance: primary for main actions, secondary for alternatives, danger for destructive actions.',
29
+ propsSchema: ButtonPropsSchema
30
+ };
@@ -0,0 +1,26 @@
1
+ import { z } from 'zod';
2
+ var CheckboxPropsSchema = z.object({
3
+ name: z.string().describe('Form field name, used as key in submitted data'),
4
+ label: z.string().describe('Label displayed next to checkbox'),
5
+ value: z.string().optional().describe('Value submitted when checked. Use with Lists to identify which items are selected (e.g., item ID)'),
6
+ defaultChecked: z.boolean().optional().describe('Whether checkbox is checked by default')
7
+ });
8
+ var CheckboxComponent = function(param) {
9
+ var name = param.name, label = param.label, value = param.value, defaultChecked = param.defaultChecked;
10
+ return /*#__PURE__*/ React.createElement("div", {
11
+ className: "flex items-center gap-2"
12
+ }, /*#__PURE__*/ React.createElement("label", {
13
+ className: "flex items-center gap-2 text-sm text-gray-700 cursor-pointer"
14
+ }, /*#__PURE__*/ React.createElement("input", {
15
+ type: "checkbox",
16
+ name: name,
17
+ value: value,
18
+ defaultChecked: defaultChecked,
19
+ className: "w-4 h-4 rounded border-gray-300 text-blue-500 focus:ring-blue-500"
20
+ }), label));
21
+ };
22
+ export var Checkbox = {
23
+ component: CheckboxComponent,
24
+ description: "A checkbox for selecting items. When used in a List, set value to the item's ID so the form returns an array of selected IDs. For simple boolean toggles, omit value.",
25
+ propsSchema: CheckboxPropsSchema
26
+ };
@@ -0,0 +1,46 @@
1
+ import { z } from 'zod';
2
+ var ContainerPropsSchema = z.object({
3
+ direction: z.enum([
4
+ 'row',
5
+ 'column'
6
+ ]).optional().describe('Layout direction - row (horizontal) or column (vertical, default)'),
7
+ gap: z.enum([
8
+ 'none',
9
+ 'small',
10
+ 'medium',
11
+ 'large'
12
+ ]).optional().describe('Spacing between children, defaults to medium'),
13
+ padding: z.enum([
14
+ 'none',
15
+ 'small',
16
+ 'medium',
17
+ 'large'
18
+ ]).optional().describe('Inner padding, defaults to none')
19
+ });
20
+ var directionClasses = {
21
+ row: 'flex-row',
22
+ column: 'flex-col'
23
+ };
24
+ var gapClasses = {
25
+ none: 'gap-0',
26
+ small: 'gap-2',
27
+ medium: 'gap-4',
28
+ large: 'gap-6'
29
+ };
30
+ var paddingClasses = {
31
+ none: 'p-0',
32
+ small: 'p-2',
33
+ medium: 'p-4',
34
+ large: 'p-6'
35
+ };
36
+ var ContainerComponent = function(param) {
37
+ var children = param.children, _param_direction = param.direction, direction = _param_direction === void 0 ? 'column' : _param_direction, _param_gap = param.gap, gap = _param_gap === void 0 ? 'medium' : _param_gap, _param_padding = param.padding, padding = _param_padding === void 0 ? 'none' : _param_padding;
38
+ return /*#__PURE__*/ React.createElement("div", {
39
+ className: "flex ".concat(directionClasses[direction], " ").concat(gapClasses[gap], " ").concat(paddingClasses[padding])
40
+ }, children);
41
+ };
42
+ export var Container = {
43
+ component: ContainerComponent,
44
+ description: "A layout container that groups child components. Use to organize page sections, create visual hierarchy, add spacing. Children are placed inside this container.",
45
+ propsSchema: ContainerPropsSchema
46
+ };
@@ -0,0 +1,17 @@
1
+ import { z } from 'zod';
2
+ var FormPropsSchema = z.object({
3
+ action: z.string().optional().describe('Form submission URL')
4
+ });
5
+ var FormComponent = function(param) {
6
+ var children = param.children, action = param.action;
7
+ return /*#__PURE__*/ React.createElement("form", {
8
+ className: "flex flex-col gap-6",
9
+ method: "POST",
10
+ action: action
11
+ }, children);
12
+ };
13
+ export var Form = {
14
+ component: FormComponent,
15
+ description: 'A form container that wraps form fields. Place Input, TextArea, Checkbox, Select, and Button components inside. Always include a Button with type="submit" for form submission.',
16
+ propsSchema: FormPropsSchema
17
+ };
@@ -0,0 +1,29 @@
1
+ import { z } from 'zod';
2
+ var HeadingPropsSchema = z.object({
3
+ content: z.string().describe('The heading text'),
4
+ level: z.enum([
5
+ '1',
6
+ '2',
7
+ '3',
8
+ '4'
9
+ ]).optional().describe('Heading level (1-4), defaults to 2. Use 1 for page title.')
10
+ });
11
+ var levelClasses = {
12
+ 1: 'text-3xl',
13
+ 2: 'text-2xl',
14
+ 3: 'text-xl',
15
+ 4: 'text-lg'
16
+ };
17
+ var HeadingComponent = function(param) {
18
+ var content = param.content, _param_level = param.level, level = _param_level === void 0 ? '2' : _param_level;
19
+ var numLevel = typeof level === 'string' ? parseInt(level, 10) : level;
20
+ var Tag = "h".concat(numLevel);
21
+ return /*#__PURE__*/ React.createElement(Tag, {
22
+ className: "font-semibold text-gray-900 ".concat(levelClasses[numLevel])
23
+ }, content);
24
+ };
25
+ export var Heading = {
26
+ component: HeadingComponent,
27
+ description: "A heading/title for sections of the page. Use level 1 for page title, level 2 for major sections, level 3-4 for subsections.",
28
+ propsSchema: HeadingPropsSchema
29
+ };
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ var HiddenInputPropsSchema = z.object({
3
+ name: z.string().describe('Form field name, used as key in submitted data'),
4
+ value: z.string().describe('The value to submit with the form')
5
+ });
6
+ var HiddenInputComponent = function(param) {
7
+ var name = param.name, value = param.value;
8
+ return /*#__PURE__*/ React.createElement("input", {
9
+ type: "hidden",
10
+ name: name,
11
+ value: value
12
+ });
13
+ };
14
+ export var HiddenInput = {
15
+ component: HiddenInputComponent,
16
+ description: "A hidden form field for passing data that shouldn't be visible to users. Use to include IDs, tokens, or other metadata in form submissions.",
17
+ propsSchema: HiddenInputPropsSchema
18
+ };
@@ -0,0 +1,36 @@
1
+ import { z } from 'zod';
2
+ var InputPropsSchema = z.object({
3
+ name: z.string().describe('Form field name, used as key in submitted data'),
4
+ label: z.string().describe('Label displayed above the input'),
5
+ placeholder: z.string().optional().describe('Placeholder text when empty'),
6
+ required: z.boolean().optional().describe('Whether field is required'),
7
+ type: z.enum([
8
+ 'text',
9
+ 'email',
10
+ 'number',
11
+ 'password'
12
+ ]).optional().describe('Input type, defaults to text'),
13
+ defaultValue: z.string().optional().describe('Default value for the input')
14
+ });
15
+ var InputComponent = function(param) {
16
+ var name = param.name, label = param.label, placeholder = param.placeholder, required = param.required, _param_type = param.type, type = _param_type === void 0 ? 'text' : _param_type, defaultValue = param.defaultValue;
17
+ return /*#__PURE__*/ React.createElement("div", {
18
+ className: "flex flex-col gap-1.5"
19
+ }, /*#__PURE__*/ React.createElement("label", {
20
+ htmlFor: name,
21
+ className: "text-sm font-medium text-gray-700"
22
+ }, label), /*#__PURE__*/ React.createElement("input", {
23
+ id: name,
24
+ name: name,
25
+ type: type,
26
+ placeholder: placeholder,
27
+ required: required,
28
+ defaultValue: defaultValue,
29
+ className: "px-3 py-2 border border-gray-300 rounded-md text-base w-full focus:outline-none focus:border-blue-500 focus:ring-1 focus:ring-blue-500"
30
+ }));
31
+ };
32
+ export var Input = {
33
+ component: InputComponent,
34
+ description: "A single-line text input field. Use for short text like names, emails, titles. For longer text, use TextArea instead.",
35
+ propsSchema: InputPropsSchema
36
+ };
@@ -0,0 +1,42 @@
1
+ import { z } from 'zod';
2
+ var MultiTextInputPropsSchema = z.object({
3
+ name: z.string().describe('Form field name, used as key in submitted data (will be an array)'),
4
+ label: z.string().describe('Label displayed above the input list'),
5
+ placeholder: z.string().optional().describe('Placeholder text for each input'),
6
+ defaultValues: z.array(z.string()).optional().describe('Initial list of values')
7
+ });
8
+ var MultiTextInputComponent = function(param) {
9
+ var name = param.name, label = param.label, placeholder = param.placeholder, _param_defaultValues = param.defaultValues, defaultValues = _param_defaultValues === void 0 ? [] : _param_defaultValues;
10
+ return /*#__PURE__*/ React.createElement("div", {
11
+ className: "flex flex-col gap-1.5",
12
+ "data-name": name,
13
+ "data-default": JSON.stringify(defaultValues)
14
+ }, /*#__PURE__*/ React.createElement("label", {
15
+ className: "text-sm font-medium text-gray-700"
16
+ }, label), /*#__PURE__*/ React.createElement("div", {
17
+ className: "flex flex-col gap-2"
18
+ }, defaultValues.map(function(value, index) {
19
+ return /*#__PURE__*/ React.createElement("div", {
20
+ key: index,
21
+ className: "flex gap-2 items-center"
22
+ }, /*#__PURE__*/ React.createElement("input", {
23
+ type: "text",
24
+ name: "".concat(name, "[]"),
25
+ defaultValue: value,
26
+ placeholder: placeholder,
27
+ className: "flex-1 px-3 py-2 border border-gray-300 rounded-md text-base focus:outline-none focus:border-blue-500 focus:ring-1 focus:ring-blue-500"
28
+ }), /*#__PURE__*/ React.createElement("button", {
29
+ type: "button",
30
+ className: "text-xs text-red-500 hover:text-red-700"
31
+ }, "Remove"));
32
+ })), /*#__PURE__*/ React.createElement("button", {
33
+ type: "button",
34
+ className: "mt-2 text-sm text-blue-500 hover:text-blue-700",
35
+ "data-placeholder": placeholder
36
+ }, "Add item"));
37
+ };
38
+ export var MultiTextInput = {
39
+ component: MultiTextInputComponent,
40
+ description: "A dynamic list of text inputs where users can add or remove items. Use for collecting multiple values like tags, email addresses, or list items. Returns an array of strings.",
41
+ propsSchema: MultiTextInputPropsSchema
42
+ };
@@ -0,0 +1,38 @@
1
+ import { z } from 'zod';
2
+ var SelectPropsSchema = z.object({
3
+ name: z.string().describe('Form field name, used as key in submitted data'),
4
+ label: z.string().describe('Label displayed above the select'),
5
+ options: z.array(z.object({
6
+ value: z.string().describe('The value submitted when this option is selected'),
7
+ label: z.string().describe('The text displayed for this option')
8
+ })).describe('List of options to choose from'),
9
+ required: z.boolean().optional().describe('Whether a selection is required'),
10
+ defaultValue: z.string().optional().describe('Value of the initially selected option')
11
+ });
12
+ var SelectComponent = function(param) {
13
+ var name = param.name, label = param.label, options = param.options, required = param.required, defaultValue = param.defaultValue;
14
+ return /*#__PURE__*/ React.createElement("div", {
15
+ className: "flex flex-col gap-1.5"
16
+ }, /*#__PURE__*/ React.createElement("label", {
17
+ htmlFor: name,
18
+ className: "text-sm font-medium text-gray-700"
19
+ }, label), /*#__PURE__*/ React.createElement("select", {
20
+ id: name,
21
+ name: name,
22
+ required: required,
23
+ defaultValue: defaultValue,
24
+ className: "px-3 py-2 border border-gray-300 rounded-md text-base w-full bg-white focus:outline-none focus:border-blue-500 focus:ring-1 focus:ring-blue-500"
25
+ }, /*#__PURE__*/ React.createElement("option", {
26
+ value: ""
27
+ }, "Select..."), options.map(function(opt) {
28
+ return /*#__PURE__*/ React.createElement("option", {
29
+ key: opt.value,
30
+ value: opt.value
31
+ }, opt.label);
32
+ })));
33
+ };
34
+ export var Select = {
35
+ component: SelectComponent,
36
+ description: "A dropdown select menu for choosing one option from a list. Use for mutually exclusive choices like categories, statuses, or types.",
37
+ propsSchema: SelectPropsSchema
38
+ };
@@ -0,0 +1,25 @@
1
+ import { z } from 'zod';
2
+ var TextPropsSchema = z.object({
3
+ content: z.string().describe('The text content to display'),
4
+ variant: z.enum([
5
+ 'body',
6
+ 'small',
7
+ 'muted'
8
+ ]).optional().describe('Text style - body (normal), small (smaller), muted (less prominent)')
9
+ });
10
+ var variantClasses = {
11
+ body: 'text-base text-gray-700',
12
+ small: 'text-sm text-gray-600',
13
+ muted: 'text-sm text-gray-500'
14
+ };
15
+ var TextComponent = function(param) {
16
+ var content = param.content, _param_variant = param.variant, variant = _param_variant === void 0 ? 'body' : _param_variant;
17
+ return /*#__PURE__*/ React.createElement("p", {
18
+ className: variantClasses[variant]
19
+ }, content);
20
+ };
21
+ export var Text = {
22
+ component: TextComponent,
23
+ description: "A paragraph of text for displaying information. Use for descriptions, instructions, or any body text. Not a form input - just displays content.",
24
+ propsSchema: TextPropsSchema
25
+ };
@@ -0,0 +1,31 @@
1
+ import { z } from 'zod';
2
+ var TextAreaPropsSchema = z.object({
3
+ name: z.string().describe('Form field name, used as key in submitted data'),
4
+ label: z.string().describe('Label displayed above the textarea'),
5
+ placeholder: z.string().optional().describe('Placeholder text when empty'),
6
+ required: z.boolean().optional().describe('Whether field is required'),
7
+ rows: z.number().optional().describe('Number of visible text rows, defaults to 4'),
8
+ defaultValue: z.string().optional().describe('Default value for the textarea')
9
+ });
10
+ var TextAreaComponent = function(param) {
11
+ var name = param.name, label = param.label, placeholder = param.placeholder, required = param.required, _param_rows = param.rows, rows = _param_rows === void 0 ? 4 : _param_rows, defaultValue = param.defaultValue;
12
+ return /*#__PURE__*/ React.createElement("div", {
13
+ className: "flex flex-col gap-1.5"
14
+ }, /*#__PURE__*/ React.createElement("label", {
15
+ htmlFor: name,
16
+ className: "text-sm font-medium text-gray-700"
17
+ }, label), /*#__PURE__*/ React.createElement("textarea", {
18
+ id: name,
19
+ name: name,
20
+ placeholder: placeholder,
21
+ required: required,
22
+ rows: rows,
23
+ defaultValue: defaultValue,
24
+ className: "px-3 py-2 border border-gray-300 rounded-md text-base w-full focus:outline-none focus:border-blue-500 focus:ring-1 focus:ring-blue-500"
25
+ }));
26
+ };
27
+ export var TextArea = {
28
+ component: TextAreaComponent,
29
+ description: "A multi-line text input field. Use for longer text like descriptions, comments, messages. For short single-line text, use Input instead.",
30
+ propsSchema: TextAreaPropsSchema
31
+ };
@@ -0,0 +1,11 @@
1
+ export { Input } from './Input.js';
2
+ export { TextArea } from './TextArea.js';
3
+ export { Checkbox } from './Checkbox.js';
4
+ export { Select } from './Select.js';
5
+ export { MultiTextInput } from './MultiTextInput.js';
6
+ export { Button } from './Button.js';
7
+ export { Text } from './Text.js';
8
+ export { Heading } from './Heading.js';
9
+ export { Container } from './Container.js';
10
+ export { Form } from './Form.js';
11
+ export { HiddenInput } from './HiddenInput.js';
@@ -0,0 +1,41 @@
1
+ import { Input } from './components/Input.js';
2
+ import { TextArea } from './components/TextArea.js';
3
+ import { Checkbox } from './components/Checkbox.js';
4
+ import { Select } from './components/Select.js';
5
+ import { MultiTextInput } from './components/MultiTextInput.js';
6
+ import { Button } from './components/Button.js';
7
+ import { Text } from './components/Text.js';
8
+ import { Heading } from './components/Heading.js';
9
+ import { Container } from './components/Container.js';
10
+ import { Form } from './components/Form.js';
11
+ import { HiddenInput } from './components/HiddenInput.js';
12
+ /**
13
+ * Default UI components for Positronic generative UI.
14
+ * Pass these to your Brain via .withComponents() to enable UI generation.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * import { components } from '@positronic/gen-ui-components';
19
+ *
20
+ * const myBrain = brain('example')
21
+ * .withComponents(components)
22
+ * .uiStep('Show Form', ...);
23
+ *
24
+ * // Adding custom components
25
+ * .withComponents({ ...components, MyCustomButton });
26
+ * ```
27
+ */ export var components = {
28
+ Input: Input,
29
+ TextArea: TextArea,
30
+ Checkbox: Checkbox,
31
+ Select: Select,
32
+ MultiTextInput: MultiTextInput,
33
+ Button: Button,
34
+ Text: Text,
35
+ Heading: Heading,
36
+ Container: Container,
37
+ Form: Form,
38
+ HiddenInput: HiddenInput
39
+ };
40
+ // Re-export individual components for custom composition
41
+ export { Input, TextArea, Checkbox, Select, MultiTextInput, Button, Text, Heading, Container, Form, HiddenInput };
@@ -0,0 +1,19 @@
1
+ import type { UIComponent } from '@positronic/core';
2
+ import { z } from 'zod';
3
+ declare const ButtonPropsSchema: z.ZodObject<{
4
+ label: z.ZodString;
5
+ type: z.ZodOptional<z.ZodEnum<["submit", "button"]>>;
6
+ variant: z.ZodOptional<z.ZodEnum<["primary", "secondary", "danger"]>>;
7
+ }, "strip", z.ZodTypeAny, {
8
+ label: string;
9
+ type?: "button" | "submit" | undefined;
10
+ variant?: "primary" | "secondary" | "danger" | undefined;
11
+ }, {
12
+ label: string;
13
+ type?: "button" | "submit" | undefined;
14
+ variant?: "primary" | "secondary" | "danger" | undefined;
15
+ }>;
16
+ export type ButtonProps = z.infer<typeof ButtonPropsSchema>;
17
+ export declare const Button: UIComponent<ButtonProps>;
18
+ export {};
19
+ //# sourceMappingURL=Button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,iBAAiB;;;;;;;;;;;;EAUrB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAkB5D,eAAO,MAAM,MAAM,EAAE,WAAW,CAAC,WAAW,CAI3C,CAAC"}
@@ -0,0 +1,22 @@
1
+ import type { UIComponent } from '@positronic/core';
2
+ import { z } from 'zod';
3
+ declare const CheckboxPropsSchema: z.ZodObject<{
4
+ name: z.ZodString;
5
+ label: z.ZodString;
6
+ value: z.ZodOptional<z.ZodString>;
7
+ defaultChecked: z.ZodOptional<z.ZodBoolean>;
8
+ }, "strip", z.ZodTypeAny, {
9
+ name: string;
10
+ label: string;
11
+ value?: string | undefined;
12
+ defaultChecked?: boolean | undefined;
13
+ }, {
14
+ name: string;
15
+ label: string;
16
+ value?: string | undefined;
17
+ defaultChecked?: boolean | undefined;
18
+ }>;
19
+ export type CheckboxProps = z.infer<typeof CheckboxPropsSchema>;
20
+ export declare const Checkbox: UIComponent<CheckboxProps>;
21
+ export {};
22
+ //# sourceMappingURL=Checkbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;EAKvB,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAiBhE,eAAO,MAAM,QAAQ,EAAE,WAAW,CAAC,aAAa,CAI/C,CAAC"}
@@ -0,0 +1,22 @@
1
+ import type { UIComponent } from '@positronic/core';
2
+ import type { ReactNode } from 'react';
3
+ import { z } from 'zod';
4
+ declare const ContainerPropsSchema: z.ZodObject<{
5
+ direction: z.ZodOptional<z.ZodEnum<["row", "column"]>>;
6
+ gap: z.ZodOptional<z.ZodEnum<["none", "small", "medium", "large"]>>;
7
+ padding: z.ZodOptional<z.ZodEnum<["none", "small", "medium", "large"]>>;
8
+ }, "strip", z.ZodTypeAny, {
9
+ direction?: "row" | "column" | undefined;
10
+ gap?: "small" | "none" | "medium" | "large" | undefined;
11
+ padding?: "small" | "none" | "medium" | "large" | undefined;
12
+ }, {
13
+ direction?: "row" | "column" | undefined;
14
+ gap?: "small" | "none" | "medium" | "large" | undefined;
15
+ padding?: "small" | "none" | "medium" | "large" | undefined;
16
+ }>;
17
+ export type ContainerProps = z.infer<typeof ContainerPropsSchema> & {
18
+ children?: ReactNode;
19
+ };
20
+ export declare const Container: UIComponent<ContainerProps>;
21
+ export {};
22
+ //# sourceMappingURL=Container.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../../src/components/Container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,oBAAoB;;;;;;;;;;;;EAaxB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,GAAG;IAClE,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAgCF,eAAO,MAAM,SAAS,EAAE,WAAW,CAAC,cAAc,CAIjD,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { UIComponent } from '@positronic/core';
2
+ import type { ReactNode } from 'react';
3
+ import { z } from 'zod';
4
+ declare const FormPropsSchema: z.ZodObject<{
5
+ action: z.ZodOptional<z.ZodString>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ action?: string | undefined;
8
+ }, {
9
+ action?: string | undefined;
10
+ }>;
11
+ export type FormProps = z.infer<typeof FormPropsSchema> & {
12
+ children?: ReactNode;
13
+ };
14
+ export declare const Form: UIComponent<FormProps>;
15
+ export {};
16
+ //# sourceMappingURL=Form.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["../../../src/components/Form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,eAAe;;;;;;EAEnB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,GAAG;IACxD,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAQF,eAAO,MAAM,IAAI,EAAE,WAAW,CAAC,SAAS,CAIvC,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { UIComponent } from '@positronic/core';
2
+ import { z } from 'zod';
3
+ declare const HeadingPropsSchema: z.ZodObject<{
4
+ content: z.ZodString;
5
+ level: z.ZodOptional<z.ZodEnum<["1", "2", "3", "4"]>>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ content: string;
8
+ level?: "1" | "2" | "3" | "4" | undefined;
9
+ }, {
10
+ content: string;
11
+ level?: "1" | "2" | "3" | "4" | undefined;
12
+ }>;
13
+ export type HeadingProps = z.infer<typeof HeadingPropsSchema> & {
14
+ level?: '1' | '2' | '3' | '4' | 1 | 2 | 3 | 4;
15
+ };
16
+ export declare const Heading: UIComponent<HeadingProps>;
17
+ export {};
18
+ //# sourceMappingURL=Heading.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Heading.d.ts","sourceRoot":"","sources":["../../../src/components/Heading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,kBAAkB;;;;;;;;;EAMtB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,GAAG;IAE9D,KAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CAC/C,CAAC;AAeF,eAAO,MAAM,OAAO,EAAE,WAAW,CAAC,YAAY,CAI7C,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { UIComponent } from '@positronic/core';
2
+ import { z } from 'zod';
3
+ declare const HiddenInputPropsSchema: z.ZodObject<{
4
+ name: z.ZodString;
5
+ value: z.ZodString;
6
+ }, "strip", z.ZodTypeAny, {
7
+ name: string;
8
+ value: string;
9
+ }, {
10
+ name: string;
11
+ value: string;
12
+ }>;
13
+ export type HiddenInputProps = z.infer<typeof HiddenInputPropsSchema>;
14
+ export declare const HiddenInput: UIComponent<HiddenInputProps>;
15
+ export {};
16
+ //# sourceMappingURL=HiddenInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HiddenInput.d.ts","sourceRoot":"","sources":["../../../src/components/HiddenInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,sBAAsB;;;;;;;;;EAG1B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAMtE,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,gBAAgB,CAIrD,CAAC"}
@@ -0,0 +1,28 @@
1
+ import type { UIComponent } from '@positronic/core';
2
+ import { z } from 'zod';
3
+ declare const InputPropsSchema: z.ZodObject<{
4
+ name: z.ZodString;
5
+ label: z.ZodString;
6
+ placeholder: z.ZodOptional<z.ZodString>;
7
+ required: z.ZodOptional<z.ZodBoolean>;
8
+ type: z.ZodOptional<z.ZodEnum<["text", "email", "number", "password"]>>;
9
+ defaultValue: z.ZodOptional<z.ZodString>;
10
+ }, "strip", z.ZodTypeAny, {
11
+ name: string;
12
+ label: string;
13
+ placeholder?: string | undefined;
14
+ required?: boolean | undefined;
15
+ type?: "number" | "text" | "email" | "password" | undefined;
16
+ defaultValue?: string | undefined;
17
+ }, {
18
+ name: string;
19
+ label: string;
20
+ placeholder?: string | undefined;
21
+ required?: boolean | undefined;
22
+ type?: "number" | "text" | "email" | "password" | undefined;
23
+ defaultValue?: string | undefined;
24
+ }>;
25
+ export type InputProps = z.infer<typeof InputPropsSchema>;
26
+ export declare const Input: UIComponent<InputProps>;
27
+ export {};
28
+ //# sourceMappingURL=Input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/components/Input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;EAUpB,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAwB1D,eAAO,MAAM,KAAK,EAAE,WAAW,CAAC,UAAU,CAIzC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import type { UIComponent } from '@positronic/core';
2
+ import { z } from 'zod';
3
+ declare const MultiTextInputPropsSchema: z.ZodObject<{
4
+ name: z.ZodString;
5
+ label: z.ZodString;
6
+ placeholder: z.ZodOptional<z.ZodString>;
7
+ defaultValues: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
8
+ }, "strip", z.ZodTypeAny, {
9
+ name: string;
10
+ label: string;
11
+ placeholder?: string | undefined;
12
+ defaultValues?: string[] | undefined;
13
+ }, {
14
+ name: string;
15
+ label: string;
16
+ placeholder?: string | undefined;
17
+ defaultValues?: string[] | undefined;
18
+ }>;
19
+ export type MultiTextInputProps = z.infer<typeof MultiTextInputPropsSchema>;
20
+ export declare const MultiTextInput: UIComponent<MultiTextInputProps>;
21
+ export {};
22
+ //# sourceMappingURL=MultiTextInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiTextInput.d.ts","sourceRoot":"","sources":["../../../src/components/MultiTextInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,yBAAyB;;;;;;;;;;;;;;;EAK7B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AA8B5E,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,mBAAmB,CAI3D,CAAC"}
@@ -0,0 +1,40 @@
1
+ import type { UIComponent } from '@positronic/core';
2
+ import { z } from 'zod';
3
+ declare const SelectPropsSchema: z.ZodObject<{
4
+ name: z.ZodString;
5
+ label: z.ZodString;
6
+ options: z.ZodArray<z.ZodObject<{
7
+ value: z.ZodString;
8
+ label: z.ZodString;
9
+ }, "strip", z.ZodTypeAny, {
10
+ label: string;
11
+ value: string;
12
+ }, {
13
+ label: string;
14
+ value: string;
15
+ }>, "many">;
16
+ required: z.ZodOptional<z.ZodBoolean>;
17
+ defaultValue: z.ZodOptional<z.ZodString>;
18
+ }, "strip", z.ZodTypeAny, {
19
+ name: string;
20
+ label: string;
21
+ options: {
22
+ label: string;
23
+ value: string;
24
+ }[];
25
+ required?: boolean | undefined;
26
+ defaultValue?: string | undefined;
27
+ }, {
28
+ name: string;
29
+ label: string;
30
+ options: {
31
+ label: string;
32
+ value: string;
33
+ }[];
34
+ required?: boolean | undefined;
35
+ defaultValue?: string | undefined;
36
+ }>;
37
+ export type SelectProps = z.infer<typeof SelectPropsSchema>;
38
+ export declare const Select: UIComponent<SelectProps>;
39
+ export {};
40
+ //# sourceMappingURL=Select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAarB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAsB5D,eAAO,MAAM,MAAM,EAAE,WAAW,CAAC,WAAW,CAI3C,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { UIComponent } from '@positronic/core';
2
+ import { z } from 'zod';
3
+ declare const TextPropsSchema: z.ZodObject<{
4
+ content: z.ZodString;
5
+ variant: z.ZodOptional<z.ZodEnum<["body", "small", "muted"]>>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ content: string;
8
+ variant?: "small" | "body" | "muted" | undefined;
9
+ }, {
10
+ content: string;
11
+ variant?: "small" | "body" | "muted" | undefined;
12
+ }>;
13
+ export type TextProps = z.infer<typeof TextPropsSchema>;
14
+ export declare const Text: UIComponent<TextProps>;
15
+ export {};
16
+ //# sourceMappingURL=Text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../../src/components/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,eAAe;;;;;;;;;EAMnB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAYxD,eAAO,MAAM,IAAI,EAAE,WAAW,CAAC,SAAS,CAIvC,CAAC"}
@@ -0,0 +1,28 @@
1
+ import type { UIComponent } from '@positronic/core';
2
+ import { z } from 'zod';
3
+ declare const TextAreaPropsSchema: z.ZodObject<{
4
+ name: z.ZodString;
5
+ label: z.ZodString;
6
+ placeholder: z.ZodOptional<z.ZodString>;
7
+ required: z.ZodOptional<z.ZodBoolean>;
8
+ rows: z.ZodOptional<z.ZodNumber>;
9
+ defaultValue: z.ZodOptional<z.ZodString>;
10
+ }, "strip", z.ZodTypeAny, {
11
+ name: string;
12
+ label: string;
13
+ placeholder?: string | undefined;
14
+ required?: boolean | undefined;
15
+ defaultValue?: string | undefined;
16
+ rows?: number | undefined;
17
+ }, {
18
+ name: string;
19
+ label: string;
20
+ placeholder?: string | undefined;
21
+ required?: boolean | undefined;
22
+ defaultValue?: string | undefined;
23
+ rows?: number | undefined;
24
+ }>;
25
+ export type TextAreaProps = z.infer<typeof TextAreaPropsSchema>;
26
+ export declare const TextArea: UIComponent<TextAreaProps>;
27
+ export {};
28
+ //# sourceMappingURL=TextArea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextArea.d.ts","sourceRoot":"","sources":["../../../src/components/TextArea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAOvB,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAwBhE,eAAO,MAAM,QAAQ,EAAE,WAAW,CAAC,aAAa,CAI/C,CAAC"}
@@ -0,0 +1,23 @@
1
+ export { Input } from './Input.js';
2
+ export type { InputProps } from './Input.js';
3
+ export { TextArea } from './TextArea.js';
4
+ export type { TextAreaProps } from './TextArea.js';
5
+ export { Checkbox } from './Checkbox.js';
6
+ export type { CheckboxProps } from './Checkbox.js';
7
+ export { Select } from './Select.js';
8
+ export type { SelectProps } from './Select.js';
9
+ export { MultiTextInput } from './MultiTextInput.js';
10
+ export type { MultiTextInputProps } from './MultiTextInput.js';
11
+ export { Button } from './Button.js';
12
+ export type { ButtonProps } from './Button.js';
13
+ export { Text } from './Text.js';
14
+ export type { TextProps } from './Text.js';
15
+ export { Heading } from './Heading.js';
16
+ export type { HeadingProps } from './Heading.js';
17
+ export { Container } from './Container.js';
18
+ export type { ContainerProps } from './Container.js';
19
+ export { Form } from './Form.js';
20
+ export type { FormProps } from './Form.js';
21
+ export { HiddenInput } from './HiddenInput.js';
22
+ export type { HiddenInputProps } from './HiddenInput.js';
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,86 @@
1
+ import { Input } from './components/Input.js';
2
+ import { TextArea } from './components/TextArea.js';
3
+ import { Checkbox } from './components/Checkbox.js';
4
+ import { Select } from './components/Select.js';
5
+ import { MultiTextInput } from './components/MultiTextInput.js';
6
+ import { Button } from './components/Button.js';
7
+ import { Text } from './components/Text.js';
8
+ import { Heading } from './components/Heading.js';
9
+ import { Container } from './components/Container.js';
10
+ import { Form } from './components/Form.js';
11
+ import { HiddenInput } from './components/HiddenInput.js';
12
+ /**
13
+ * Default UI components for Positronic generative UI.
14
+ * Pass these to your Brain via .withComponents() to enable UI generation.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * import { components } from '@positronic/gen-ui-components';
19
+ *
20
+ * const myBrain = brain('example')
21
+ * .withComponents(components)
22
+ * .uiStep('Show Form', ...);
23
+ *
24
+ * // Adding custom components
25
+ * .withComponents({ ...components, MyCustomButton });
26
+ * ```
27
+ */
28
+ export declare const components: {
29
+ Input: import("@positronic/core").UIComponent<{
30
+ name: string;
31
+ label: string;
32
+ placeholder?: string | undefined;
33
+ required?: boolean | undefined;
34
+ type?: "number" | "text" | "email" | "password" | undefined;
35
+ defaultValue?: string | undefined;
36
+ }>;
37
+ TextArea: import("@positronic/core").UIComponent<{
38
+ name: string;
39
+ label: string;
40
+ placeholder?: string | undefined;
41
+ required?: boolean | undefined;
42
+ defaultValue?: string | undefined;
43
+ rows?: number | undefined;
44
+ }>;
45
+ Checkbox: import("@positronic/core").UIComponent<{
46
+ name: string;
47
+ label: string;
48
+ value?: string | undefined;
49
+ defaultChecked?: boolean | undefined;
50
+ }>;
51
+ Select: import("@positronic/core").UIComponent<{
52
+ name: string;
53
+ label: string;
54
+ options: {
55
+ label: string;
56
+ value: string;
57
+ }[];
58
+ required?: boolean | undefined;
59
+ defaultValue?: string | undefined;
60
+ }>;
61
+ MultiTextInput: import("@positronic/core").UIComponent<{
62
+ name: string;
63
+ label: string;
64
+ placeholder?: string | undefined;
65
+ defaultValues?: string[] | undefined;
66
+ }>;
67
+ Button: import("@positronic/core").UIComponent<{
68
+ label: string;
69
+ type?: "button" | "submit" | undefined;
70
+ variant?: "primary" | "secondary" | "danger" | undefined;
71
+ }>;
72
+ Text: import("@positronic/core").UIComponent<{
73
+ content: string;
74
+ variant?: "small" | "body" | "muted" | undefined;
75
+ }>;
76
+ Heading: import("@positronic/core").UIComponent<import("./components/Heading.js").HeadingProps>;
77
+ Container: import("@positronic/core").UIComponent<import("./components/Container.js").ContainerProps>;
78
+ Form: import("@positronic/core").UIComponent<import("./components/Form.js").FormProps>;
79
+ HiddenInput: import("@positronic/core").UIComponent<{
80
+ name: string;
81
+ value: string;
82
+ }>;
83
+ };
84
+ export { Input, TextArea, Checkbox, Select, MultiTextInput, Button, Text, Heading, Container, Form, HiddenInput, };
85
+ export type { InputProps, TextAreaProps, CheckboxProps, SelectProps, MultiTextInputProps, ButtonProps, TextProps, HeadingProps, ContainerProps, FormProps, HiddenInputProps, } from './components/index.js';
86
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYtB,CAAC;AAGF,OAAO,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,cAAc,EACd,MAAM,EACN,IAAI,EACJ,OAAO,EACP,SAAS,EACT,IAAI,EACJ,WAAW,GACZ,CAAC;AAGF,YAAY,EACV,UAAU,EACV,aAAa,EACb,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,YAAY,EACZ,cAAc,EACd,SAAS,EACT,gBAAgB,GACjB,MAAM,uBAAuB,CAAC"}
package/package.json ADDED
@@ -0,0 +1,31 @@
1
+ {
2
+ "name": "@positronic/gen-ui-components",
3
+ "version": "0.0.53",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
7
+ "description": "Default UI components for Positronic generative UI",
8
+ "type": "module",
9
+ "main": "dist/src/index.js",
10
+ "types": "dist/types/index.d.ts",
11
+ "license": "MIT",
12
+ "files": [
13
+ "dist",
14
+ "package.json"
15
+ ],
16
+ "scripts": {
17
+ "tsc": "tsc --project tsconfig.json",
18
+ "swc": "swc src -d dist/src --strip-leading-paths",
19
+ "build": "npm run tsc && npm run swc",
20
+ "clean": "rm -rf tsconfig.tsbuildinfo dist node_modules"
21
+ },
22
+ "dependencies": {
23
+ "@positronic/core": "^0.0.53",
24
+ "zod": "^3.24.1"
25
+ },
26
+ "devDependencies": {
27
+ "react": "^18.2.0",
28
+ "react-dom": "^18.2.0",
29
+ "@types/react": "^18.2.0"
30
+ }
31
+ }