@dxos/react-ui-form 0.9.1-staging.ee54ba693a → 0.11.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.
Files changed (182) hide show
  1. package/dist/lib/index.mjs +4064 -0
  2. package/dist/lib/index.mjs.map +1 -0
  3. package/dist/lib/translations.mjs +77 -0
  4. package/dist/lib/translations.mjs.map +1 -0
  5. package/dist/lib/types.mjs +0 -0
  6. package/dist/types/src/components/FieldEditor/FieldEditor.stories.d.ts +1 -0
  7. package/dist/types/src/components/FieldEditor/FieldEditor.stories.d.ts.map +1 -1
  8. package/dist/types/src/components/Form/Card.stories.d.ts +88 -0
  9. package/dist/types/src/components/Form/Card.stories.d.ts.map +1 -0
  10. package/dist/types/src/components/Form/Form.d.ts +7 -7
  11. package/dist/types/src/components/Form/Form.stories.d.ts +21 -0
  12. package/dist/types/src/components/Form/Form.stories.d.ts.map +1 -1
  13. package/dist/types/src/components/Form/Form.theme.d.ts +6 -0
  14. package/dist/types/src/components/Form/Form.theme.d.ts.map +1 -1
  15. package/dist/types/src/components/Form/FormControls.d.ts +7 -7
  16. package/dist/types/src/components/Form/FormControls.d.ts.map +1 -1
  17. package/dist/types/src/components/Form/FormField/FormField.d.ts +1 -1
  18. package/dist/types/src/components/Form/FormField/FormField.d.ts.map +1 -1
  19. package/dist/types/src/components/Form/FormField/FormRow.d.ts +17 -3
  20. package/dist/types/src/components/Form/FormField/FormRow.d.ts.map +1 -1
  21. package/dist/types/src/components/Form/FormField/fields/ArrayField/ArrayField.d.ts +0 -6
  22. package/dist/types/src/components/Form/FormField/fields/ArrayField/ArrayField.d.ts.map +1 -1
  23. package/dist/types/src/components/Form/FormField/fields/ArrayField/ArrayField.stories.d.ts +1 -0
  24. package/dist/types/src/components/Form/FormField/fields/ArrayField/ArrayField.stories.d.ts.map +1 -1
  25. package/dist/types/src/components/Form/FormField/fields/ArrayField/default-value.d.ts +7 -0
  26. package/dist/types/src/components/Form/FormField/fields/ArrayField/default-value.d.ts.map +1 -0
  27. package/dist/types/src/components/Form/FormField/fields/ArrayField/index.d.ts +1 -0
  28. package/dist/types/src/components/Form/FormField/fields/ArrayField/index.d.ts.map +1 -1
  29. package/dist/types/src/components/Form/FormField/fields/BooleanField/BooleanField.stories.d.ts +1 -0
  30. package/dist/types/src/components/Form/FormField/fields/BooleanField/BooleanField.stories.d.ts.map +1 -1
  31. package/dist/types/src/components/Form/FormField/fields/DateField/DateField.d.ts.map +1 -1
  32. package/dist/types/src/components/Form/FormField/fields/DateField/DateField.stories.d.ts +1 -0
  33. package/dist/types/src/components/Form/FormField/fields/DateField/DateField.stories.d.ts.map +1 -1
  34. package/dist/types/src/components/Form/FormField/fields/GeoPointField/GeoPointField.stories.d.ts +1 -0
  35. package/dist/types/src/components/Form/FormField/fields/GeoPointField/GeoPointField.stories.d.ts.map +1 -1
  36. package/dist/types/src/components/Form/FormField/fields/MarkdownField/MarkdownField.d.ts.map +1 -1
  37. package/dist/types/src/components/Form/FormField/fields/MarkdownField/MarkdownField.stories.d.ts +1 -0
  38. package/dist/types/src/components/Form/FormField/fields/MarkdownField/MarkdownField.stories.d.ts.map +1 -1
  39. package/dist/types/src/components/Form/FormField/fields/NumberField/NumberField.d.ts +0 -11
  40. package/dist/types/src/components/Form/FormField/fields/NumberField/NumberField.d.ts.map +1 -1
  41. package/dist/types/src/components/Form/FormField/fields/NumberField/NumberField.stories.d.ts +1 -0
  42. package/dist/types/src/components/Form/FormField/fields/NumberField/NumberField.stories.d.ts.map +1 -1
  43. package/dist/types/src/components/Form/FormField/fields/NumberField/index.d.ts +1 -0
  44. package/dist/types/src/components/Form/FormField/fields/NumberField/index.d.ts.map +1 -1
  45. package/dist/types/src/components/Form/FormField/fields/NumberField/numeric-constraints.d.ts +12 -0
  46. package/dist/types/src/components/Form/FormField/fields/NumberField/numeric-constraints.d.ts.map +1 -0
  47. package/dist/types/src/components/Form/FormField/fields/PasswordField/PasswordField.d.ts.map +1 -1
  48. package/dist/types/src/components/Form/FormField/fields/PasswordField/PasswordField.stories.d.ts +1 -0
  49. package/dist/types/src/components/Form/FormField/fields/PasswordField/PasswordField.stories.d.ts.map +1 -1
  50. package/dist/types/src/components/Form/FormField/fields/RefField/RefField.d.ts +1 -11
  51. package/dist/types/src/components/Form/FormField/fields/RefField/RefField.d.ts.map +1 -1
  52. package/dist/types/src/components/Form/FormField/fields/RefField/RefField.stories.d.ts +1 -0
  53. package/dist/types/src/components/Form/FormField/fields/RefField/RefField.stories.d.ts.map +1 -1
  54. package/dist/types/src/components/Form/FormField/fields/RefField/find-ref-option.d.ts +13 -0
  55. package/dist/types/src/components/Form/FormField/fields/RefField/find-ref-option.d.ts.map +1 -0
  56. package/dist/types/src/components/Form/FormField/fields/RefField/index.d.ts +1 -0
  57. package/dist/types/src/components/Form/FormField/fields/RefField/index.d.ts.map +1 -1
  58. package/dist/types/src/components/Form/FormField/fields/SelectField/SelectField.d.ts +1 -13
  59. package/dist/types/src/components/Form/FormField/fields/SelectField/SelectField.d.ts.map +1 -1
  60. package/dist/types/src/components/Form/FormField/fields/SelectField/SelectField.stories.d.ts +1 -0
  61. package/dist/types/src/components/Form/FormField/fields/SelectField/SelectField.stories.d.ts.map +1 -1
  62. package/dist/types/src/components/Form/FormField/fields/SelectField/create-select-field.d.ts +15 -0
  63. package/dist/types/src/components/Form/FormField/fields/SelectField/create-select-field.d.ts.map +1 -0
  64. package/dist/types/src/components/Form/FormField/fields/SelectField/index.d.ts +1 -0
  65. package/dist/types/src/components/Form/FormField/fields/SelectField/index.d.ts.map +1 -1
  66. package/dist/types/src/components/Form/FormField/fields/SelectOptionField/SelectOptionField.d.ts.map +1 -1
  67. package/dist/types/src/components/Form/FormField/fields/SelectOptionField/SelectOptionField.stories.d.ts +1 -0
  68. package/dist/types/src/components/Form/FormField/fields/SelectOptionField/SelectOptionField.stories.d.ts.map +1 -1
  69. package/dist/types/src/components/Form/FormField/fields/TextAreaField/TextAreaField.stories.d.ts +1 -0
  70. package/dist/types/src/components/Form/FormField/fields/TextAreaField/TextAreaField.stories.d.ts.map +1 -1
  71. package/dist/types/src/components/Form/FormField/fields/TextField/TextField.stories.d.ts +1 -0
  72. package/dist/types/src/components/Form/FormField/fields/TextField/TextField.stories.d.ts.map +1 -1
  73. package/dist/types/src/components/Form/FormField/fields/TupleField/TupleField.stories.d.ts +1 -0
  74. package/dist/types/src/components/Form/FormField/fields/TupleField/TupleField.stories.d.ts.map +1 -1
  75. package/dist/types/src/components/Form/FormFieldSet/FormFieldSetContainer.d.ts +1 -1
  76. package/dist/types/src/components/Form/FormFieldSet/FormFieldSetContainer.d.ts.map +1 -1
  77. package/dist/types/src/components/Form/FormLayout/FormLayout.d.ts +0 -27
  78. package/dist/types/src/components/Form/FormLayout/FormLayout.d.ts.map +1 -1
  79. package/dist/types/src/components/Form/FormLayout/FormLayout.stories.d.ts +1 -0
  80. package/dist/types/src/components/Form/FormLayout/FormLayout.stories.d.ts.map +1 -1
  81. package/dist/types/src/components/Form/FormLayout/index.d.ts +1 -0
  82. package/dist/types/src/components/Form/FormLayout/index.d.ts.map +1 -1
  83. package/dist/types/src/components/Form/FormLayout/resolve-layout-field.d.ts +29 -0
  84. package/dist/types/src/components/Form/FormLayout/resolve-layout-field.d.ts.map +1 -0
  85. package/dist/types/src/components/ObjectForm/ObjectForm.d.ts +10 -1
  86. package/dist/types/src/components/ObjectForm/ObjectForm.d.ts.map +1 -1
  87. package/dist/types/src/components/ObjectForm/ObjectForm.stories.d.ts +2 -0
  88. package/dist/types/src/components/ObjectForm/ObjectForm.stories.d.ts.map +1 -1
  89. package/dist/types/src/components/ObjectPicker/ObjectPicker.d.ts +8 -23
  90. package/dist/types/src/components/ObjectPicker/ObjectPicker.d.ts.map +1 -1
  91. package/dist/types/src/components/ObjectPicker/ObjectPicker.stories.d.ts +1 -0
  92. package/dist/types/src/components/ObjectPicker/ObjectPicker.stories.d.ts.map +1 -1
  93. package/dist/types/src/components/ObjectProperties/ObjectProperties.d.ts +1 -1
  94. package/dist/types/src/components/ObjectProperties/ObjectProperties.d.ts.map +1 -1
  95. package/dist/types/src/components/ObjectProperties/ObjectProperties.stories.d.ts +1 -0
  96. package/dist/types/src/components/ObjectProperties/ObjectProperties.stories.d.ts.map +1 -1
  97. package/dist/types/src/components/ObjectTree/ObjectTree.stories.d.ts +1 -0
  98. package/dist/types/src/components/ObjectTree/ObjectTree.stories.d.ts.map +1 -1
  99. package/dist/types/src/components/RefEditor/RefEditor.d.ts.map +1 -1
  100. package/dist/types/src/components/RefEditor/RefEditor.stories.d.ts +2 -0
  101. package/dist/types/src/components/RefEditor/RefEditor.stories.d.ts.map +1 -1
  102. package/dist/types/src/components/RefEditor/ref-editor-extension.d.ts +9 -8
  103. package/dist/types/src/components/RefEditor/ref-editor-extension.d.ts.map +1 -1
  104. package/dist/types/src/components/ViewEditor/ViewEditor.stories.d.ts +1 -0
  105. package/dist/types/src/components/ViewEditor/ViewEditor.stories.d.ts.map +1 -1
  106. package/dist/types/src/hooks/useFormHandler.d.ts +6 -2
  107. package/dist/types/src/hooks/useFormHandler.d.ts.map +1 -1
  108. package/dist/types/src/hooks/useFormHandler.test.d.ts +2 -0
  109. package/dist/types/src/hooks/useFormHandler.test.d.ts.map +1 -0
  110. package/dist/types/src/testing/TestLayout.d.ts +1 -1
  111. package/dist/types/src/testing/TestLayout.d.ts.map +1 -1
  112. package/dist/types/src/translations.d.ts +1 -0
  113. package/dist/types/src/translations.d.ts.map +1 -1
  114. package/dist/types/src/types.d.ts +5 -0
  115. package/dist/types/src/types.d.ts.map +1 -1
  116. package/dist/types/src/util/index.d.ts +0 -1
  117. package/dist/types/src/util/index.d.ts.map +1 -1
  118. package/dist/types/tsconfig.tsbuildinfo +1 -1
  119. package/package.json +39 -42
  120. package/src/components/Form/Card.stories.tsx +93 -0
  121. package/src/components/Form/Form.stories.tsx +95 -3
  122. package/src/components/Form/Form.theme.ts +14 -8
  123. package/src/components/Form/Form.tsx +2 -2
  124. package/src/components/Form/FormControls.tsx +32 -13
  125. package/src/components/Form/FormField/FormField.tsx +11 -3
  126. package/src/components/Form/FormField/FormRow.tsx +20 -1
  127. package/src/components/Form/FormField/fields/ArrayField/ArrayField.tsx +3 -46
  128. package/src/components/Form/FormField/fields/ArrayField/default-value.ts +49 -0
  129. package/src/components/Form/FormField/fields/ArrayField/index.ts +2 -0
  130. package/src/components/Form/FormField/fields/ComboboxField/ComboboxField.tsx +12 -2
  131. package/src/components/Form/FormField/fields/DateField/DateField.tsx +10 -3
  132. package/src/components/Form/FormField/fields/MarkdownField/MarkdownField.stories.tsx +1 -1
  133. package/src/components/Form/FormField/fields/MarkdownField/MarkdownField.tsx +2 -12
  134. package/src/components/Form/FormField/fields/NumberField/NumberField.test.ts +1 -1
  135. package/src/components/Form/FormField/fields/NumberField/NumberField.tsx +1 -36
  136. package/src/components/Form/FormField/fields/NumberField/index.ts +2 -0
  137. package/src/components/Form/FormField/fields/NumberField/numeric-constraints.ts +43 -0
  138. package/src/components/Form/FormField/fields/PasswordField/PasswordField.tsx +1 -0
  139. package/src/components/Form/FormField/fields/RefField/InlineRefField.tsx +2 -2
  140. package/src/components/Form/FormField/fields/RefField/RefField.test.ts +1 -1
  141. package/src/components/Form/FormField/fields/RefField/RefField.tsx +3 -45
  142. package/src/components/Form/FormField/fields/RefField/find-ref-option.ts +56 -0
  143. package/src/components/Form/FormField/fields/RefField/index.ts +2 -0
  144. package/src/components/Form/FormField/fields/SelectField/SelectField.tsx +2 -67
  145. package/src/components/Form/FormField/fields/SelectField/create-select-field.tsx +80 -0
  146. package/src/components/Form/FormField/fields/SelectField/index.ts +2 -0
  147. package/src/components/Form/FormField/fields/SelectOptionField/SelectOptionField.tsx +2 -1
  148. package/src/components/Form/FormFieldSet/FormFieldSetContainer.tsx +11 -9
  149. package/src/components/Form/FormLayout/FormLayout.test.ts +1 -1
  150. package/src/components/Form/FormLayout/FormLayout.tsx +1 -86
  151. package/src/components/Form/FormLayout/index.ts +2 -0
  152. package/src/components/Form/FormLayout/resolve-layout-field.ts +98 -0
  153. package/src/components/ObjectForm/ObjectForm.stories.tsx +93 -3
  154. package/src/components/ObjectForm/ObjectForm.tsx +22 -4
  155. package/src/components/ObjectPicker/ObjectPicker.stories.tsx +1 -1
  156. package/src/components/ObjectPicker/ObjectPicker.tsx +3 -3
  157. package/src/components/ObjectProperties/ObjectProperties.stories.tsx +1 -1
  158. package/src/components/ObjectProperties/ObjectProperties.tsx +7 -1
  159. package/src/components/ObjectTree/ObjectTree.stories.tsx +1 -1
  160. package/src/components/RefEditor/RefEditor.stories.tsx +9 -1
  161. package/src/components/RefEditor/RefEditor.tsx +42 -6
  162. package/src/components/RefEditor/ref-editor-extension.ts +168 -91
  163. package/src/components/ViewEditor/ViewEditor.stories.tsx +1 -1
  164. package/src/components/ViewEditor/ViewEditor.tsx +9 -9
  165. package/src/hooks/useFormHandler.test.ts +85 -0
  166. package/src/hooks/useFormHandler.ts +118 -31
  167. package/src/translations.ts +1 -0
  168. package/src/types.ts +5 -0
  169. package/src/util/index.ts +0 -1
  170. package/dist/lib/browser/index.mjs +0 -4675
  171. package/dist/lib/browser/index.mjs.map +0 -7
  172. package/dist/lib/browser/meta.json +0 -1
  173. package/dist/lib/browser/translations.mjs +0 -87
  174. package/dist/lib/browser/translations.mjs.map +0 -7
  175. package/dist/lib/node-esm/index.mjs +0 -4677
  176. package/dist/lib/node-esm/index.mjs.map +0 -7
  177. package/dist/lib/node-esm/meta.json +0 -1
  178. package/dist/lib/node-esm/translations.mjs +0 -89
  179. package/dist/lib/node-esm/translations.mjs.map +0 -7
  180. package/dist/types/src/util/formatting.d.ts +0 -15
  181. package/dist/types/src/util/formatting.d.ts.map +0 -1
  182. package/src/util/formatting.ts +0 -171
@@ -52,6 +52,7 @@ declare const meta: {
52
52
  readonly 'format.json.label': 'JSON';
53
53
  readonly 'format.lnglat.label': 'Geopoint';
54
54
  readonly 'format.markdown.label': 'Markdown';
55
+ readonly 'format.password.label': 'Password';
55
56
  readonly 'format.percent.label': 'Percent';
56
57
  readonly 'format.ref.label': 'Reference';
57
58
  readonly 'format.regex.label': 'RegExp';
@@ -1 +1 @@
1
- {"version":3,"file":"MarkdownField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/MarkdownField/MarkdownField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AA4GjE,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOM,CAAC;eAEF,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,YAAY,EAAE,KAE1B,CAAC;AAMF,eAAO,MAAM,sBAAsB,EAAE,KA+CpC,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAY1B,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAStB,CAAC"}
1
+ {"version":3,"file":"MarkdownField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/MarkdownField/MarkdownField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AA4GjE,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOM,CAAC;eAEF,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,YAAY,EAAE,KAE1B,CAAC;AAMF,eAAO,MAAM,sBAAsB,EAAE,KA+CpC,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAY1B,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAStB,CAAC"}
@@ -1,15 +1,4 @@
1
- import * as SchemaAST from 'effect/SchemaAST';
2
1
  import React from 'react';
3
2
  import { type FormFieldRendererProps } from '#types';
4
- /**
5
- * Extracts numeric constraints (`minimum`/`maximum` bounds and whether the value must be an integer)
6
- * by walking the chain of Refinement ASTs and reading each one's JSON schema annotation (e.g. produced
7
- * by `Schema.between` / `Schema.int`). Returns empty constraints when none are declared.
8
- */
9
- export declare const getNumericConstraints: (ast: SchemaAST.AST) => {
10
- min?: number;
11
- max?: number;
12
- integer: boolean;
13
- };
14
3
  export declare const NumberField: ({ type, readonly, placeholder, getValue, onValueChange, onBlur, ...props }: FormFieldRendererProps<number>) => React.JSX.Element;
15
4
  //# sourceMappingURL=NumberField.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NumberField.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/NumberField/NumberField.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAA2C,MAAM,OAAO,CAAC;AAKhE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAIrD;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,QAAS,SAAS,CAAC,GAAG,KAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CA2BxG,CAAC;AAEF,eAAO,MAAM,WAAW,+EAQrB,sBAAsB,CAAC,MAAM,CAAC,sBAkFhC,CAAC"}
1
+ {"version":3,"file":"NumberField.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/NumberField/NumberField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAKhE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAKrD,eAAO,MAAM,WAAW,+EAQrB,sBAAsB,CAAC,MAAM,CAAC,sBAkFhC,CAAC"}
@@ -54,6 +54,7 @@ declare const meta: {
54
54
  readonly 'format.json.label': 'JSON';
55
55
  readonly 'format.lnglat.label': 'Geopoint';
56
56
  readonly 'format.markdown.label': 'Markdown';
57
+ readonly 'format.password.label': 'Password';
57
58
  readonly 'format.percent.label': 'Percent';
58
59
  readonly 'format.ref.label': 'Reference';
59
60
  readonly 'format.regex.label': 'RegExp';
@@ -1 +1 @@
1
- {"version":3,"file":"NumberField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/NumberField/NumberField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAkCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
1
+ {"version":3,"file":"NumberField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/NumberField/NumberField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAkCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
@@ -1,2 +1,3 @@
1
+ export * from './numeric-constraints';
1
2
  export * from './NumberField';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/NumberField/index.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/NumberField/index.ts"],"names":[],"mappings":"AAIA,cAAc,uBAAuB,CAAC;AAEtC,cAAc,eAAe,CAAC"}
@@ -0,0 +1,12 @@
1
+ import * as SchemaAST from 'effect/SchemaAST';
2
+ /**
3
+ * Extracts numeric constraints (`minimum`/`maximum` bounds and whether the value must be an integer)
4
+ * by walking the chain of Refinement ASTs and reading each one's JSON schema annotation (e.g. produced
5
+ * by `Schema.between` / `Schema.int`). Returns empty constraints when none are declared.
6
+ */
7
+ export declare const getNumericConstraints: (ast: SchemaAST.AST) => {
8
+ min?: number;
9
+ max?: number;
10
+ integer: boolean;
11
+ };
12
+ //# sourceMappingURL=numeric-constraints.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numeric-constraints.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/NumberField/numeric-constraints.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAK9C;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,QAAS,SAAS,CAAC,GAAG,KAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CA2BxG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordField.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/PasswordField/PasswordField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAI3C,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAIrD,eAAO,MAAM,aAAa,qEAOvB,sBAAsB,CAAC,MAAM,CAAC,sBAqBhC,CAAC"}
1
+ {"version":3,"file":"PasswordField.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/PasswordField/PasswordField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAI3C,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAIrD,eAAO,MAAM,aAAa,qEAOvB,sBAAsB,CAAC,MAAM,CAAC,sBAsBhC,CAAC"}
@@ -54,6 +54,7 @@ declare const meta: {
54
54
  readonly 'format.json.label': 'JSON';
55
55
  readonly 'format.lnglat.label': 'Geopoint';
56
56
  readonly 'format.markdown.label': 'Markdown';
57
+ readonly 'format.password.label': 'Password';
57
58
  readonly 'format.percent.label': 'Percent';
58
59
  readonly 'format.ref.label': 'Reference';
59
60
  readonly 'format.regex.label': 'RegExp';
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/PasswordField/PasswordField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAmCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
1
+ {"version":3,"file":"PasswordField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/PasswordField/PasswordField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAmCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
@@ -1,16 +1,6 @@
1
1
  import React from 'react';
2
2
  import '@dxos/lit-ui/dx-tag-picker.pcss';
3
- import { type CreateOptions, type FormFieldRendererProps, type RefFieldDataProps, type RefOption } from '#types';
4
- /**
5
- * Find the option a ref-like form value points at. Matches on the local (entity-id) form so a bare local EID
6
- * (`echo:/<id>`, produced by `Ref.make`) still resolves against an option keyed by the entity's qualified
7
- * self URI (`echo://<space>/<id>`). Returns `undefined` when the value is not a ref or no option matches.
8
- *
9
- * Comparing by entity id is only sound within one space (ids are unique there, not globally). Two EIDs that
10
- * both carry a space authority must therefore agree on it: a qualified value and a qualified option from
11
- * different spaces never match, even when their entity ids coincide.
12
- */
13
- export declare const findRefOption: (value: unknown, options: RefOption[]) => RefOption | undefined;
3
+ import { type CreateOptions, type FormFieldRendererProps, type RefFieldDataProps } from '#types';
14
4
  export type RefFieldProps = FormFieldRendererProps & RefFieldDataProps & CreateOptions;
15
5
  export declare const RefField: (props: RefFieldProps) => React.JSX.Element | null;
16
6
  //# sourceMappingURL=RefField.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RefField.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/RefField/RefField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAE9D,OAAO,iCAAiC,CAAC;AAWzC,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,sBAAsB,EAAE,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AAYjH;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,UAAW,OAAO,WAAW,SAAS,EAAE,KAAG,SAAS,GAAG,SA6BhF,CAAC;AAiCF,MAAM,MAAM,aAAa,GAAG,sBAAsB,GAAG,iBAAiB,GAAG,aAAa,CAAC;AAEvF,eAAO,MAAM,QAAQ,UAAW,aAAa,6BA2K5C,CAAC"}
1
+ {"version":3,"file":"RefField.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/RefField/RefField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAE9D,OAAO,iCAAiC,CAAC;AAWzC,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,sBAAsB,EAAE,KAAK,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAyCjG,MAAM,MAAM,aAAa,GAAG,sBAAsB,GAAG,iBAAiB,GAAG,aAAa,CAAC;AAEvF,eAAO,MAAM,QAAQ,UAAW,aAAa,6BA2K5C,CAAC"}
@@ -57,6 +57,7 @@ declare const meta: {
57
57
  readonly 'format.json.label': 'JSON';
58
58
  readonly 'format.lnglat.label': 'Geopoint';
59
59
  readonly 'format.markdown.label': 'Markdown';
60
+ readonly 'format.password.label': 'Password';
60
61
  readonly 'format.percent.label': 'Percent';
61
62
  readonly 'format.ref.label': 'Reference';
62
63
  readonly 'format.regex.label': 'RegExp';
@@ -1 +1 @@
1
- {"version":3,"file":"RefField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/RefField/RefField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAmB,MAAM,OAAO,CAAC;AAqDxC,QAAA,MAAM,IAAI;;yBA5BoB;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;KAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiD3B,CAAC;eAEnB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAIrB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,KAIpB,CAAC"}
1
+ {"version":3,"file":"RefField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/RefField/RefField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAmB,MAAM,OAAO,CAAC;AAqDxC,QAAA,MAAM,IAAI;;yBA5BoB;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;KAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiD3B,CAAC;eAEnB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAIrB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,KAIpB,CAAC"}
@@ -0,0 +1,13 @@
1
+ import '@dxos/lit-ui/dx-tag-picker.pcss';
2
+ import { type RefOption } from '#types';
3
+ /**
4
+ * Find the option a ref-like form value points at. Matches on the local (entity-id) form so a bare local EID
5
+ * (`echo:/<id>`, produced by `Ref.make`) still resolves against an option keyed by the entity's qualified
6
+ * self URI (`echo://<space>/<id>`). Returns `undefined` when the value is not a ref or no option matches.
7
+ *
8
+ * Comparing by entity id is only sound within one space (ids are unique there, not globally). Two EIDs that
9
+ * both carry a space authority must therefore agree on it: a qualified value and a qualified option from
10
+ * different spaces never match, even when their entity ids coincide.
11
+ */
12
+ export declare const findRefOption: (value: unknown, options: RefOption[]) => RefOption | undefined;
13
+ //# sourceMappingURL=find-ref-option.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-ref-option.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/RefField/find-ref-option.ts"],"names":[],"mappings":"AAIA,OAAO,iCAAiC,CAAC;AAIzC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AASxC;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,UAAW,OAAO,WAAW,SAAS,EAAE,KAAG,SAAS,GAAG,SA6BhF,CAAC"}
@@ -1,3 +1,4 @@
1
+ export * from './find-ref-option';
1
2
  export * from './RefField';
2
3
  export * from './InlineRefField';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/RefField/index.ts"],"names":[],"mappings":"AAIA,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/RefField/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAElC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { type FormFieldRenderer, type FormFieldRendererProps } from '#types';
2
+ import { type FormFieldRendererProps } from '#types';
3
3
  export type SelectFieldOptions = FormFieldRendererProps & {
4
4
  options?: Array<{
5
5
  value: string | number;
@@ -14,16 +14,4 @@ export type SelectFieldOption = {
14
14
  value: string;
15
15
  label?: string;
16
16
  };
17
- export type CreateSelectFieldOptions = {
18
- /** Options to display. Strings are used as both value and label. */
19
- options: ReadonlyArray<string | SelectFieldOption>;
20
- /** Label for the sentinel option that maps to `undefined`. Defaults to `'Default'`. Pass `null` to omit. */
21
- defaultLabel?: string | null;
22
- };
23
- /**
24
- * Factory for a `fieldMap` entry (keyed by JSON path) that renders a Select over a fixed list of
25
- * options, with an optional sentinel mapping to `undefined`. Use for fields whose choices come from a
26
- * runtime list rather than the schema (e.g. available model ids).
27
- */
28
- export declare const createSelectField: ({ options, defaultLabel, }: CreateSelectFieldOptions) => FormFieldRenderer;
29
17
  //# sourceMappingURL=SelectField.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectField.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/SelectField/SelectField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAM3C,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAI7E,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GAAG;IACxD,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvH,CAAC;AAEF,eAAO,MAAM,WAAW,sEAAuE,kBAAkB,sBA0ChH,CAAC;AAQF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,oEAAoE;IACpE,OAAO,EAAE,aAAa,CAAC,MAAM,GAAG,iBAAiB,CAAC,CAAC;IACnD,4GAA4G;IAC5G,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,+BAG3B,wBAAwB,KAAG,iBA+C7B,CAAC"}
1
+ {"version":3,"file":"SelectField.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/SelectField/SelectField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAK3C,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAIrD,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GAAG;IACxD,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvH,CAAC;AAEF,eAAO,MAAM,WAAW,sEAAuE,kBAAkB,sBA0ChH,CAAC;AAQF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC"}
@@ -54,6 +54,7 @@ declare const meta: {
54
54
  readonly 'format.json.label': 'JSON';
55
55
  readonly 'format.lnglat.label': 'Geopoint';
56
56
  readonly 'format.markdown.label': 'Markdown';
57
+ readonly 'format.password.label': 'Password';
57
58
  readonly 'format.percent.label': 'Percent';
58
59
  readonly 'format.ref.label': 'Reference';
59
60
  readonly 'format.regex.label': 'RegExp';
@@ -1 +1 @@
1
- {"version":3,"file":"SelectField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/SelectField/SelectField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAmCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
1
+ {"version":3,"file":"SelectField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/SelectField/SelectField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAmCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { type FormFieldRenderer } from '#types';
2
+ import { type SelectFieldOption } from './SelectField';
3
+ export type CreateSelectFieldOptions = {
4
+ /** Options to display. Strings are used as both value and label. */
5
+ options: ReadonlyArray<string | SelectFieldOption>;
6
+ /** Label for the sentinel option that maps to `undefined`. Defaults to `'Default'`. Pass `null` to omit. */
7
+ defaultLabel?: string | null;
8
+ };
9
+ /**
10
+ * Factory for a `fieldMap` entry (keyed by JSON path) that renders a Select over a fixed list of
11
+ * options, with an optional sentinel mapping to `undefined`. Use for fields whose choices come from a
12
+ * runtime list rather than the schema (e.g. available model ids).
13
+ */
14
+ export declare const createSelectField: ({ options, defaultLabel, }: CreateSelectFieldOptions) => FormFieldRenderer;
15
+ //# sourceMappingURL=create-select-field.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-select-field.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/SelectField/create-select-field.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,iBAAiB,EAA+B,MAAM,QAAQ,CAAC;AAG7E,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAKvD,MAAM,MAAM,wBAAwB,GAAG;IACrC,oEAAoE;IACpE,OAAO,EAAE,aAAa,CAAC,MAAM,GAAG,iBAAiB,CAAC,CAAC;IACnD,4GAA4G;IAC5G,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,+BAG3B,wBAAwB,KAAG,iBA+C7B,CAAC"}
@@ -1,2 +1,3 @@
1
+ export * from './create-select-field';
1
2
  export * from './SelectField';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/SelectField/index.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/SelectField/index.ts"],"names":[],"mappings":"AAIA,cAAc,uBAAuB,CAAC;AAEtC,cAAc,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SelectOptionField.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/SelectOptionField/SelectOptionField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAyF,MAAM,OAAO,CAAC;AAE9G,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAQtD,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAIrD,eAAO,MAAM,iBAAiB,6EAQ3B,sBAAsB,CAAC,YAAY,EAAE,GAAG,SAAS,CAAC,sBA6KpD,CAAC"}
1
+ {"version":3,"file":"SelectOptionField.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/SelectOptionField/SelectOptionField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAyF,MAAM,OAAO,CAAC;AAE9G,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAStD,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAIrD,eAAO,MAAM,iBAAiB,6EAQ3B,sBAAsB,CAAC,YAAY,EAAE,GAAG,SAAS,CAAC,sBA6KpD,CAAC"}
@@ -55,6 +55,7 @@ declare const meta: {
55
55
  readonly 'format.json.label': 'JSON';
56
56
  readonly 'format.lnglat.label': 'Geopoint';
57
57
  readonly 'format.markdown.label': 'Markdown';
58
+ readonly 'format.password.label': 'Password';
58
59
  readonly 'format.percent.label': 'Percent';
59
60
  readonly 'format.ref.label': 'Reference';
60
61
  readonly 'format.regex.label': 'RegExp';
@@ -1 +1 @@
1
- {"version":3,"file":"SelectOptionField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/SelectOptionField/SelectOptionField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AA4CxC,QAAA,MAAM,IAAI;;eAEwB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOA,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
1
+ {"version":3,"file":"SelectOptionField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/SelectOptionField/SelectOptionField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AA4CxC,QAAA,MAAM,IAAI;;eAEwB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOA,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
@@ -54,6 +54,7 @@ declare const meta: {
54
54
  readonly 'format.json.label': 'JSON';
55
55
  readonly 'format.lnglat.label': 'Geopoint';
56
56
  readonly 'format.markdown.label': 'Markdown';
57
+ readonly 'format.password.label': 'Password';
57
58
  readonly 'format.percent.label': 'Percent';
58
59
  readonly 'format.ref.label': 'Reference';
59
60
  readonly 'format.regex.label': 'RegExp';
@@ -1 +1 @@
1
- {"version":3,"file":"TextAreaField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/TextAreaField/TextAreaField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAmCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
1
+ {"version":3,"file":"TextAreaField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/TextAreaField/TextAreaField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAmCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
@@ -54,6 +54,7 @@ declare const meta: {
54
54
  readonly 'format.json.label': 'JSON';
55
55
  readonly 'format.lnglat.label': 'Geopoint';
56
56
  readonly 'format.markdown.label': 'Markdown';
57
+ readonly 'format.password.label': 'Password';
57
58
  readonly 'format.percent.label': 'Percent';
58
59
  readonly 'format.ref.label': 'Reference';
59
60
  readonly 'format.regex.label': 'RegExp';
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/TextField/TextField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAkCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
1
+ {"version":3,"file":"TextField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/TextField/TextField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAkCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
@@ -54,6 +54,7 @@ declare const meta: {
54
54
  readonly 'format.json.label': 'JSON';
55
55
  readonly 'format.lnglat.label': 'Geopoint';
56
56
  readonly 'format.markdown.label': 'Markdown';
57
+ readonly 'format.password.label': 'Password';
57
58
  readonly 'format.percent.label': 'Percent';
58
59
  readonly 'format.ref.label': 'Reference';
59
60
  readonly 'format.regex.label': 'RegExp';
@@ -1 +1 @@
1
- {"version":3,"file":"TupleField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/TupleField/TupleField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAqCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
1
+ {"version":3,"file":"TupleField.stories.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/Form/FormField/fields/TupleField/TupleField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAqCxC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import React, { type PropsWithChildren } from 'react';
2
2
  import { type ThemedClassName } from '@dxos/react-ui';
3
- import { type FormFieldPresentation } from '../FormField/presentation';
3
+ import { type FormFieldPresentation } from '../FormField';
4
4
  export type FormFieldSetContainerProps = ThemedClassName<PropsWithChildren<{
5
5
  label?: string;
6
6
  /** JSON path of the group, forwarded to the label as field metadata. */
@@ -1 +1 @@
1
- {"version":3,"file":"FormFieldSetContainer.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Form/FormFieldSet/FormFieldSetContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAAY,MAAM,OAAO,CAAC;AAEhE,OAAO,EAAE,KAAK,eAAe,EAAoC,MAAM,gBAAgB,CAAC;AAOxF,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAIvE,MAAM,MAAM,0BAA0B,GAAG,eAAe,CACtD,iBAAiB,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,qBAAqB,CAAC;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC,CACH,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,gFAQ/B,0BAA0B,sBA+C5B,CAAC"}
1
+ {"version":3,"file":"FormFieldSetContainer.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Form/FormFieldSet/FormFieldSetContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAY,KAAK,iBAAiB,EAAY,MAAM,OAAO,CAAC;AAE1E,OAAO,EAAE,KAAK,eAAe,EAAoC,MAAM,gBAAgB,CAAC;AAMxF,OAAO,EAAmB,KAAK,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAI3E,MAAM,MAAM,0BAA0B,GAAG,eAAe,CACtD,iBAAiB,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,qBAAqB,CAAC;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC,CACH,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,gFAQ/B,0BAA0B,sBAkD5B,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import * as Schema from 'effect/Schema';
2
- import * as SchemaAST from 'effect/SchemaAST';
3
2
  import React from 'react';
4
3
  import { type AnyProperties } from '@dxos/echo/internal';
5
4
  import { type FormFieldProps } from '../FormField';
@@ -23,30 +22,4 @@ export declare function FormLayout({ schema, template, name, path, readonly, lay
23
22
  export declare namespace FormLayout {
24
23
  var displayName: string;
25
24
  }
26
- export type ResolvedLayoutField = {
27
- /** Resolved leaf AST node for the field. */
28
- type: SchemaAST.AST;
29
- /** Path segments (dotted names split on `.`). */
30
- segments: string[];
31
- /** Last path segment; used to derive the field label when there is no `title` annotation. */
32
- leafName: string;
33
- /** Resolved `title` annotation for the field, if any. */
34
- title?: string;
35
- /**
36
- * Set when the field resolves to a nested struct carrying a `LabelAnnotation` —
37
- * the type literal whose computed label should render in place of the struct's
38
- * sub-fields. Undefined for ordinary (non-auto-labelled) fields.
39
- */
40
- labelType?: SchemaAST.AST;
41
- /** Whether the resolved property is required (non-optional). */
42
- required: boolean;
43
- };
44
- /**
45
- * Resolves a (possibly dotted) layout field name against a schema.
46
- * - `origin.code` drills through nested structs to the leaf field.
47
- * - A name resolving to a nested struct with a `LabelAnnotation` is flagged via
48
- * `labelType` so the layout can auto-convert it to a single read-only label.
49
- * Returns `undefined` when the name does not resolve to a property.
50
- */
51
- export declare const resolveLayoutField: (schema: Schema.Schema<any>, name: string) => ResolvedLayoutField | undefined;
52
25
  //# sourceMappingURL=FormLayout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormLayout.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Form/FormLayout/FormLayout.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAE9C,OAAO,KAA4B,MAAM,OAAO,CAAC;AAGjD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAQzD,OAAO,EAAqD,KAAK,cAAc,EAAmB,MAAM,cAAc,CAAC;AAKvH,MAAM,MAAM,eAAe,GAAG;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,eAAe,CAAC,CAAC;AAEtH,KAAK,kBAAkB,GAAG,IAAI,CAC5B,cAAc,EACd,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,eAAe,CAC7E,GAAG;IACF,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;CACtC,CAAC;mCAcyB,EACzB,MAAM,EACN,QAAQ,EACR,IAAqC,EACrC,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,UAAU,EACV,GAAG,KAAK,EACT,EAAE,eAAe;;;;AAyElB,MAAM,MAAM,mBAAmB,GAAG;IAChC,4CAA4C;IAC5C,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC;IACpB,iDAAiD;IACjD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,6FAA6F;IAC7F,QAAQ,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC;IAC1B,gEAAgE;IAChE,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AA4BF;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,WAAY,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,MAAM,KAAG,mBAAmB,GAAG,SA+BnG,CAAC"}
1
+ {"version":3,"file":"FormLayout.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Form/FormLayout/FormLayout.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAA4B,MAAM,OAAO,CAAC;AAGjD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAQzD,OAAO,EAAqD,KAAK,cAAc,EAAmB,MAAM,cAAc,CAAC;AAMvH,MAAM,MAAM,eAAe,GAAG;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,eAAe,CAAC,CAAC;AAEtH,KAAK,kBAAkB,GAAG,IAAI,CAC5B,cAAc,EACd,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,eAAe,CAC7E,GAAG;IACF,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;CACtC,CAAC;mCAcyB,EACzB,MAAM,EACN,QAAQ,EACR,IAAqC,EACrC,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,UAAU,EACV,GAAG,KAAK,EACT,EAAE,eAAe"}
@@ -77,6 +77,7 @@ declare const meta: {
77
77
  readonly 'format.json.label': 'JSON';
78
78
  readonly 'format.lnglat.label': 'Geopoint';
79
79
  readonly 'format.markdown.label': 'Markdown';
80
+ readonly 'format.password.label': 'Password';
80
81
  readonly 'format.percent.label': 'Percent';
81
82
  readonly 'format.ref.label': 'Reference';
82
83
  readonly 'format.regex.label': 'RegExp';
@@ -1 +1 @@
1
- {"version":3,"file":"FormLayout.stories.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Form/FormLayout/FormLayout.stories.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAoD,MAAM,OAAO,CAAC;AAEzE,OAAO,EAA2B,IAAI,EAAE,MAAM,YAAY,CAAC;AAiB3D;;;;;GAKG;AACH,QAAA,MAAM,MAAM;;;;;;;;;MAS0D,CAAC;AAEvE,MAAM,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,MAAM,CAAC,CAAC;AAoFtD,KAAK,SAAS,GAAG;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAwBF,QAAA,MAAM,IAAI;;mCAtBkC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkC1B,CAAC;eAEb,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;AAEjC,mGAAmG;AACnG,eAAO,MAAM,MAAM,EAAE,KAIpB,CAAC;AAEF,uFAAuF;AACvF,eAAO,MAAM,YAAY,EAAE,KAK1B,CAAC;AAEF,yFAAyF;AACzF,eAAO,MAAM,gBAAgB,EAAE,KAI9B,CAAC;AAwCF,eAAO,MAAM,eAAe,EAAE,KAE7B,CAAC;AAqCF,eAAO,MAAM,WAAW,EAAE,KAEzB,CAAC;AAEF,4FAA4F;AAC5F,eAAO,MAAM,iBAAiB,EAAE,KAE/B,CAAC;AA0IF,eAAO,MAAM,cAAc,EAAE,KAE5B,CAAC;AAEF,oFAAoF;AACpF,eAAO,MAAM,cAAc,EAAE,KAE5B,CAAC"}
1
+ {"version":3,"file":"FormLayout.stories.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Form/FormLayout/FormLayout.stories.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAoD,MAAM,OAAO,CAAC;AAEzE,OAAO,EAA2B,IAAI,EAAE,MAAM,YAAY,CAAC;AAiB3D;;;;;GAKG;AACH,QAAA,MAAM,MAAM;;;;;;;;;MAS0D,CAAC;AAEvE,MAAM,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,MAAM,CAAC,CAAC;AAoFtD,KAAK,SAAS,GAAG;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAwBF,QAAA,MAAM,IAAI;;mCAtBkC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkC1B,CAAC;eAEb,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;AAEjC,mGAAmG;AACnG,eAAO,MAAM,MAAM,EAAE,KAIpB,CAAC;AAEF,uFAAuF;AACvF,eAAO,MAAM,YAAY,EAAE,KAK1B,CAAC;AAEF,yFAAyF;AACzF,eAAO,MAAM,gBAAgB,EAAE,KAI9B,CAAC;AAwCF,eAAO,MAAM,eAAe,EAAE,KAE7B,CAAC;AAqCF,eAAO,MAAM,WAAW,EAAE,KAEzB,CAAC;AAEF,4FAA4F;AAC5F,eAAO,MAAM,iBAAiB,EAAE,KAE/B,CAAC;AA0IF,eAAO,MAAM,cAAc,EAAE,KAE5B,CAAC;AAEF,oFAAoF;AACpF,eAAO,MAAM,cAAc,EAAE,KAE5B,CAAC"}
@@ -1,3 +1,4 @@
1
+ export { type ResolvedLayoutField, resolveLayoutField } from './resolve-layout-field';
1
2
  export { FormLayout, type FormLayoutProps } from './FormLayout';
2
3
  export { type LayoutNode, LayoutParseError, parseLayout } from './parser';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Form/FormLayout/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,KAAK,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Form/FormLayout/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEtF,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,KAAK,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,29 @@
1
+ import * as Schema from 'effect/Schema';
2
+ import * as SchemaAST from 'effect/SchemaAST';
3
+ export type ResolvedLayoutField = {
4
+ /** Resolved leaf AST node for the field. */
5
+ type: SchemaAST.AST;
6
+ /** Path segments (dotted names split on `.`). */
7
+ segments: string[];
8
+ /** Last path segment; used to derive the field label when there is no `title` annotation. */
9
+ leafName: string;
10
+ /** Resolved `title` annotation for the field, if any. */
11
+ title?: string;
12
+ /**
13
+ * Set when the field resolves to a nested struct carrying a `LabelAnnotation` —
14
+ * the type literal whose computed label should render in place of the struct's
15
+ * sub-fields. Undefined for ordinary (non-auto-labelled) fields.
16
+ */
17
+ labelType?: SchemaAST.AST;
18
+ /** Whether the resolved property is required (non-optional). */
19
+ required: boolean;
20
+ };
21
+ /**
22
+ * Resolves a (possibly dotted) layout field name against a schema.
23
+ * - `origin.code` drills through nested structs to the leaf field.
24
+ * - A name resolving to a nested struct with a `LabelAnnotation` is flagged via
25
+ * `labelType` so the layout can auto-convert it to a single read-only label.
26
+ * Returns `undefined` when the name does not resolve to a property.
27
+ */
28
+ export declare const resolveLayoutField: (schema: Schema.Schema<any>, name: string) => ResolvedLayoutField | undefined;
29
+ //# sourceMappingURL=resolve-layout-field.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-layout-field.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Form/FormLayout/resolve-layout-field.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAQ9C,MAAM,MAAM,mBAAmB,GAAG;IAChC,4CAA4C;IAC5C,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC;IACpB,iDAAiD;IACjD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,6FAA6F;IAC7F,QAAQ,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC;IAC1B,gEAAgE;IAChE,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AA4BF;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,WAAY,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,MAAM,KAAG,mBAAmB,GAAG,SA+BnG,CAAC"}
@@ -1,8 +1,17 @@
1
+ import * as Schema from 'effect/Schema';
1
2
  import React from 'react';
2
3
  import { Obj, Type } from '@dxos/echo';
3
4
  export type ObjectFormProps = {
4
5
  type: Type.AnyEntity;
5
6
  object: Obj.Unknown;
7
+ /**
8
+ * Optional schema override for the rendered fields, e.g. a projection of `type`'s schema
9
+ * (`Type.getSchema(T).pipe(Schema.pick(...))`). Values are still read from and written back to
10
+ * `object` by path, so the picked fields must be paths on `object`. Defaults to `type`'s schema.
11
+ */
12
+ schema?: Schema.Schema.AnyNoContext;
13
+ /** Render the meta-tags field. Defaults to `true`. */
14
+ showTags?: boolean;
6
15
  };
7
- export declare const ObjectForm: ({ object, type }: ObjectFormProps) => React.JSX.Element;
16
+ export declare const ObjectForm: ({ object, type, schema, showTags }: ObjectFormProps) => React.JSX.Element;
8
17
  //# sourceMappingURL=ObjectForm.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectForm.d.ts","sourceRoot":"","sources":["../../../../../src/components/ObjectForm/ObjectForm.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,GAAG,EAAY,IAAI,EAAE,MAAM,YAAY,CAAC;AAUjD,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;IACrB,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,UAAU,qBAAsB,eAAe,sBA6E3D,CAAC"}
1
+ {"version":3,"file":"ObjectForm.d.ts","sourceRoot":"","sources":["../../../../../src/components/ObjectForm/ObjectForm.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,GAAG,EAAY,IAAI,EAAE,MAAM,YAAY,CAAC;AAYjD,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;IACrB,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC;IACpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACpC,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,UAAU,uCAA+C,eAAe,sBAoFpF,CAAC"}
@@ -53,6 +53,7 @@ declare const meta: {
53
53
  readonly 'format.json.label': 'JSON';
54
54
  readonly 'format.lnglat.label': 'Geopoint';
55
55
  readonly 'format.markdown.label': 'Markdown';
56
+ readonly 'format.password.label': 'Password';
56
57
  readonly 'format.percent.label': 'Percent';
57
58
  readonly 'format.ref.label': 'Reference';
58
59
  readonly 'format.regex.label': 'RegExp';
@@ -84,4 +85,5 @@ declare const meta: {
84
85
  export default meta;
85
86
  type Story = StoryObj<typeof meta>;
86
87
  export declare const Default: Story;
88
+ export declare const Reactive: Story;
87
89
  //# sourceMappingURL=ObjectForm.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectForm.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/ObjectForm/ObjectForm.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAsB1B,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4B2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
1
+ {"version":3,"file":"ObjectForm.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/ObjectForm/ObjectForm.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAA2C,MAAM,OAAO,CAAC;AAgChE,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4B2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAiEjC,eAAO,MAAM,QAAQ,EAAE,KAetB,CAAC"}
@@ -17,35 +17,20 @@ export type ObjectPickerContentProps = ThemedClassName<CreateOptions & {
17
17
  onSelect?: (id: string) => void;
18
18
  }>;
19
19
  export declare const ObjectPicker: {
20
- Root: ({ children, modal, modalId: modalIdProp, open: openProp, defaultOpen, onOpenChange: propsOnOpenChange, value: valueProp, defaultValue, onValueChange: propsOnValueChange, placeholder, }: import("@dxos/react-ui-list").ComboboxRootProps) => React.JSX.Element;
20
+ Root: ({ children, modal, modalId: modalIdProp, open: openProp, defaultOpen, onOpenChange: propsOnOpenChange, value: valueProp, defaultValue, displayValue, onValueChange: propsOnValueChange, placeholder, }: import("@dxos/react-ui-list").ComboboxRootProps) => React.JSX.Element;
21
21
  Portal: {
22
- (props: import("@dxos/react-ui").PopoverPortalProps & {
23
- __scopePopover?: import("@radix-ui/react-context").Scope;
24
- }): React.JSX.Element;
22
+ (props: import("@dxos/react-ui").PopoverScopedProps<import("@dxos/react-ui").PopoverPortalProps>): React.JSX.Element;
25
23
  displayName: string;
26
24
  };
27
- Trigger: React.ForwardRefExoticComponent<Omit<import("@dxos/react-ui").ButtonProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
25
+ Trigger: React.ForwardRefExoticComponent<Omit<import("@dxos/react-ui").ButtonProps, "className"> & {
26
+ classNames?: import("@dxos/ui-types").ClassNameValue;
27
+ } & Pick<React.HTMLAttributes<Element>, "children" | "role" | "style"> & React.RefAttributes<HTMLButtonElement>>;
28
28
  VirtualTrigger: {
29
- (props: import("@dxos/react-ui").PopoverVirtualTriggerProps & {
30
- __scopePopover?: import("@radix-ui/react-context").Scope;
31
- }): React.JSX.Element;
29
+ (props: import("@dxos/react-ui").PopoverScopedProps<import("@dxos/react-ui").PopoverVirtualTriggerProps>): React.JSX.Element;
32
30
  displayName: string;
33
31
  };
34
- Content: React.ForwardRefExoticComponent<Omit<CreateOptions & {
35
- options: RefOption[];
36
- selectedIds?: string[];
37
- createSchema?: Schema.Schema.AnyNoContext;
38
- /**
39
- * Persist a newly-created object given the form values. May be async (e.g.
40
- * to write to a database). The Promise is awaited before the inline create
41
- * form is collapsed back to the picker list, so consumers can complete
42
- * follow-up work (assign the new ref to a parent slot, close the popover)
43
- * before the picker UI re-renders.
44
- */
45
- onCreate?: (values: any) => unknown | Promise<unknown>;
46
- onSelect?: (id: string) => void;
47
- }, "className"> & {
32
+ Content: React.ForwardRefExoticComponent<Omit<ObjectPickerContentProps, "className"> & {
48
33
  classNames?: import("@dxos/ui-types").ClassNameValue;
49
- } & React.RefAttributes<HTMLDivElement>>;
34
+ } & Pick<React.HTMLAttributes<Element>, "children" | "role" | "style"> & React.RefAttributes<HTMLDivElement>>;
50
35
  };
51
36
  //# sourceMappingURL=ObjectPicker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectPicker.d.ts","sourceRoot":"","sources":["../../../../../src/components/ObjectPicker/ObjectPicker.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAgE,MAAM,OAAO,CAAC;AAErF,OAAO,EAAW,KAAK,eAAe,EAAkB,MAAM,gBAAgB,CAAC;AAK/E,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AAI5D,MAAM,MAAM,wBAAwB,GAAG,eAAe,CACpD,aAAa,GAAG;IACd,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IAC1C;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvD,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC,CACF,CAAC;AA6JF,eAAO,MAAM,YAAY;IACvB,IAAI;IACJ,MAAM;;;;;;IACN,OAAO;IACP,cAAc;;;;;;IACd,OAAO;iBA/KI,SAAS,EAAE;sBACN,MAAM,EAAE;uBACP,MAAM,CAAC,MAAM,CAAC,YAAY;QACzC;;;;;;WAMG;mBACQ,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;mBAC3C,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI;;;;CAqKlC,CAAC"}
1
+ {"version":3,"file":"ObjectPicker.d.ts","sourceRoot":"","sources":["../../../../../src/components/ObjectPicker/ObjectPicker.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAoD,MAAM,OAAO,CAAC;AAEzE,OAAO,EAAW,KAAK,eAAe,EAA8B,MAAM,gBAAgB,CAAC;AAK3F,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AAI5D,MAAM,MAAM,wBAAwB,GAAG,eAAe,CACpD,aAAa,GAAG;IACd,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IAC1C;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvD,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC,CACF,CAAC;AA6JF,eAAO,MAAM,YAAY;IACvB,IAAI;IACJ,MAAM;;;;IACN,OAAO;;;IACP,cAAc;;;;IACd,OAAO;;;CACR,CAAC"}
@@ -57,6 +57,7 @@ declare const meta: {
57
57
  readonly 'format.json.label': 'JSON';
58
58
  readonly 'format.lnglat.label': 'Geopoint';
59
59
  readonly 'format.markdown.label': 'Markdown';
60
+ readonly 'format.password.label': 'Password';
60
61
  readonly 'format.percent.label': 'Percent';
61
62
  readonly 'format.ref.label': 'Reference';
62
63
  readonly 'format.regex.label': 'RegExp';
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectPicker.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/ObjectPicker/ObjectPicker.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAoD,MAAM,OAAO,CAAC;AA8FzE,QAAA,MAAM,IAAI;;;;;;;YAaM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGc,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,QAAQ,EAAE,KAuFtB,CAAC"}
1
+ {"version":3,"file":"ObjectPicker.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/ObjectPicker/ObjectPicker.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAoD,MAAM,OAAO,CAAC;AA8FzE,QAAA,MAAM,IAAI;;;;;;;YAaM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGc,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,QAAQ,EAAE,KAuFtB,CAAC"}
@@ -6,5 +6,5 @@ export type ObjectPropertiesProps = PropsWithChildren<{
6
6
  } & Pick<RefFieldDataProps, 'getCreateDefaults' | 'resolveCreateEntry'>>;
7
7
  export declare const ObjectProperties: React.ForwardRefExoticComponent<Omit<ObjectPropertiesProps, "className"> & {
8
8
  classNames?: import("@dxos/ui-types").ClassNameValue;
9
- } & Pick<React.HTMLAttributes<Element>, "children" | "className" | "role" | "style"> & React.RefAttributes<HTMLDivElement>>;
9
+ } & Pick<React.HTMLAttributes<Element>, "children" | "role" | "style"> & React.RefAttributes<HTMLDivElement>>;
10
10
  //# sourceMappingURL=ObjectProperties.d.ts.map