@contember/react-form 2.0.0-alpha.2 → 2.0.0-alpha.21

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 (151) hide show
  1. package/api-extractor.json +3 -0
  2. package/dist/development/index.cjs +10 -10
  3. package/dist/development/index.js +10 -10
  4. package/dist/development/{components → src/components}/FormCheckbox.cjs +3 -3
  5. package/dist/development/src/components/FormCheckbox.cjs.map +1 -0
  6. package/dist/development/{components → src/components}/FormCheckbox.js +3 -3
  7. package/dist/development/src/components/FormCheckbox.js.map +1 -0
  8. package/dist/development/{components → src/components}/FormError.cjs +1 -1
  9. package/dist/development/src/components/FormError.cjs.map +1 -0
  10. package/dist/development/{components → src/components}/FormError.js +1 -1
  11. package/dist/development/src/components/FormError.js.map +1 -0
  12. package/dist/development/{components → src/components}/FormFieldScope.cjs +2 -2
  13. package/dist/development/src/components/FormFieldScope.cjs.map +1 -0
  14. package/dist/development/{components → src/components}/FormFieldScope.js +2 -2
  15. package/dist/development/src/components/FormFieldScope.js.map +1 -0
  16. package/dist/development/{components → src/components}/FormHasManyRelationScope.cjs +2 -2
  17. package/dist/development/src/components/FormHasManyRelationScope.cjs.map +1 -0
  18. package/dist/development/{components → src/components}/FormHasManyRelationScope.js +2 -2
  19. package/dist/development/src/components/FormHasManyRelationScope.js.map +1 -0
  20. package/dist/development/{components → src/components}/FormHasOneRelationScope.cjs +2 -2
  21. package/dist/development/src/components/FormHasOneRelationScope.cjs.map +1 -0
  22. package/dist/development/{components → src/components}/FormHasOneRelationScope.js +2 -2
  23. package/dist/development/src/components/FormHasOneRelationScope.js.map +1 -0
  24. package/dist/development/{components → src/components}/FormInput.cjs +2 -2
  25. package/dist/development/src/components/FormInput.cjs.map +1 -0
  26. package/dist/development/{components → src/components}/FormInput.js +2 -2
  27. package/dist/development/src/components/FormInput.js.map +1 -0
  28. package/dist/development/{components → src/components}/FormLabel.cjs +1 -1
  29. package/dist/development/src/components/FormLabel.cjs.map +1 -0
  30. package/dist/development/{components → src/components}/FormLabel.js +1 -1
  31. package/dist/development/src/components/FormLabel.js.map +1 -0
  32. package/dist/development/{components → src/components}/FormRadioInput.cjs +11 -10
  33. package/dist/development/src/components/FormRadioInput.cjs.map +1 -0
  34. package/dist/development/{components → src/components}/FormRadioInput.js +11 -10
  35. package/dist/development/src/components/FormRadioInput.js.map +1 -0
  36. package/dist/development/src/contexts.cjs.map +1 -0
  37. package/dist/development/src/contexts.js.map +1 -0
  38. package/dist/{production → development/src}/hooks/useFormInputValidationHandler.cjs +12 -3
  39. package/dist/development/src/hooks/useFormInputValidationHandler.cjs.map +1 -0
  40. package/dist/{production → development/src}/hooks/useFormInputValidationHandler.js +12 -3
  41. package/dist/development/src/hooks/useFormInputValidationHandler.js.map +1 -0
  42. package/dist/development/src/internal/useFormInputHandler.cjs.map +1 -0
  43. package/dist/development/src/internal/useFormInputHandler.js.map +1 -0
  44. package/dist/production/index.cjs +10 -10
  45. package/dist/production/index.js +10 -10
  46. package/dist/production/src/components/FormCheckbox.cjs.map +1 -0
  47. package/dist/production/src/components/FormCheckbox.js.map +1 -0
  48. package/dist/production/{components → src/components}/FormError.cjs +1 -1
  49. package/dist/production/src/components/FormError.cjs.map +1 -0
  50. package/dist/production/{components → src/components}/FormError.js +1 -1
  51. package/dist/production/src/components/FormError.js.map +1 -0
  52. package/dist/production/src/components/FormFieldScope.cjs.map +1 -0
  53. package/dist/production/src/components/FormFieldScope.js.map +1 -0
  54. package/dist/production/src/components/FormHasManyRelationScope.cjs.map +1 -0
  55. package/dist/production/src/components/FormHasManyRelationScope.js.map +1 -0
  56. package/dist/production/src/components/FormHasOneRelationScope.cjs.map +1 -0
  57. package/dist/production/src/components/FormHasOneRelationScope.js.map +1 -0
  58. package/dist/production/src/components/FormInput.cjs.map +1 -0
  59. package/dist/production/src/components/FormInput.js.map +1 -0
  60. package/dist/production/src/components/FormLabel.cjs.map +1 -0
  61. package/dist/production/src/components/FormLabel.js.map +1 -0
  62. package/dist/production/{components → src/components}/FormRadioInput.cjs +7 -6
  63. package/dist/production/src/components/FormRadioInput.cjs.map +1 -0
  64. package/dist/production/{components → src/components}/FormRadioInput.js +7 -6
  65. package/dist/production/src/components/FormRadioInput.js.map +1 -0
  66. package/dist/production/src/contexts.cjs.map +1 -0
  67. package/dist/production/src/contexts.js.map +1 -0
  68. package/dist/{development → production/src}/hooks/useFormInputValidationHandler.cjs +12 -3
  69. package/dist/production/src/hooks/useFormInputValidationHandler.cjs.map +1 -0
  70. package/dist/{development → production/src}/hooks/useFormInputValidationHandler.js +12 -3
  71. package/dist/production/src/hooks/useFormInputValidationHandler.js.map +1 -0
  72. package/dist/production/src/internal/useFormInputHandler.cjs.map +1 -0
  73. package/dist/production/src/internal/useFormInputHandler.js.map +1 -0
  74. package/dist/types/components/FormError.d.ts.map +1 -1
  75. package/dist/types/components/FormLabel.d.ts.map +1 -1
  76. package/dist/types/components/FormRadioInput.d.ts +1 -1
  77. package/dist/types/components/FormRadioInput.d.ts.map +1 -1
  78. package/dist/types/hooks/useFormInputValidationHandler.d.ts.map +1 -1
  79. package/dist/types/internal/useFormInputHandler.d.ts.map +1 -1
  80. package/dist/types/tsconfig.tsbuildinfo +1 -1
  81. package/package.json +8 -16
  82. package/src/components/FormCheckbox.tsx +17 -17
  83. package/src/components/FormError.tsx +1 -1
  84. package/src/components/FormRadioInput.tsx +11 -9
  85. package/src/hooks/useFormInputValidationHandler.tsx +13 -3
  86. package/tsconfig.json +7 -0
  87. package/tsdoc.json +6 -0
  88. package/dist/development/components/FormCheckbox.cjs.map +0 -1
  89. package/dist/development/components/FormCheckbox.js.map +0 -1
  90. package/dist/development/components/FormError.cjs.map +0 -1
  91. package/dist/development/components/FormError.js.map +0 -1
  92. package/dist/development/components/FormFieldScope.cjs.map +0 -1
  93. package/dist/development/components/FormFieldScope.js.map +0 -1
  94. package/dist/development/components/FormHasManyRelationScope.cjs.map +0 -1
  95. package/dist/development/components/FormHasManyRelationScope.js.map +0 -1
  96. package/dist/development/components/FormHasOneRelationScope.cjs.map +0 -1
  97. package/dist/development/components/FormHasOneRelationScope.js.map +0 -1
  98. package/dist/development/components/FormInput.cjs.map +0 -1
  99. package/dist/development/components/FormInput.js.map +0 -1
  100. package/dist/development/components/FormLabel.cjs.map +0 -1
  101. package/dist/development/components/FormLabel.js.map +0 -1
  102. package/dist/development/components/FormRadioInput.cjs.map +0 -1
  103. package/dist/development/components/FormRadioInput.js.map +0 -1
  104. package/dist/development/contexts.cjs.map +0 -1
  105. package/dist/development/contexts.js.map +0 -1
  106. package/dist/development/hooks/useFormInputValidationHandler.cjs.map +0 -1
  107. package/dist/development/hooks/useFormInputValidationHandler.js.map +0 -1
  108. package/dist/development/internal/useFormInputHandler.cjs.map +0 -1
  109. package/dist/development/internal/useFormInputHandler.js.map +0 -1
  110. package/dist/production/components/FormCheckbox.cjs.map +0 -1
  111. package/dist/production/components/FormCheckbox.js.map +0 -1
  112. package/dist/production/components/FormError.cjs.map +0 -1
  113. package/dist/production/components/FormError.js.map +0 -1
  114. package/dist/production/components/FormFieldScope.cjs.map +0 -1
  115. package/dist/production/components/FormFieldScope.js.map +0 -1
  116. package/dist/production/components/FormHasManyRelationScope.cjs.map +0 -1
  117. package/dist/production/components/FormHasManyRelationScope.js.map +0 -1
  118. package/dist/production/components/FormHasOneRelationScope.cjs.map +0 -1
  119. package/dist/production/components/FormHasOneRelationScope.js.map +0 -1
  120. package/dist/production/components/FormInput.cjs.map +0 -1
  121. package/dist/production/components/FormInput.js.map +0 -1
  122. package/dist/production/components/FormLabel.cjs.map +0 -1
  123. package/dist/production/components/FormLabel.js.map +0 -1
  124. package/dist/production/components/FormRadioInput.cjs.map +0 -1
  125. package/dist/production/components/FormRadioInput.js.map +0 -1
  126. package/dist/production/contexts.cjs.map +0 -1
  127. package/dist/production/contexts.js.map +0 -1
  128. package/dist/production/hooks/useFormInputValidationHandler.cjs.map +0 -1
  129. package/dist/production/hooks/useFormInputValidationHandler.js.map +0 -1
  130. package/dist/production/internal/useFormInputHandler.cjs.map +0 -1
  131. package/dist/production/internal/useFormInputHandler.js.map +0 -1
  132. /package/dist/development/{contexts.cjs → src/contexts.cjs} +0 -0
  133. /package/dist/development/{contexts.js → src/contexts.js} +0 -0
  134. /package/dist/development/{internal → src/internal}/useFormInputHandler.cjs +0 -0
  135. /package/dist/development/{internal → src/internal}/useFormInputHandler.js +0 -0
  136. /package/dist/production/{components → src/components}/FormCheckbox.cjs +0 -0
  137. /package/dist/production/{components → src/components}/FormCheckbox.js +0 -0
  138. /package/dist/production/{components → src/components}/FormFieldScope.cjs +0 -0
  139. /package/dist/production/{components → src/components}/FormFieldScope.js +0 -0
  140. /package/dist/production/{components → src/components}/FormHasManyRelationScope.cjs +0 -0
  141. /package/dist/production/{components → src/components}/FormHasManyRelationScope.js +0 -0
  142. /package/dist/production/{components → src/components}/FormHasOneRelationScope.cjs +0 -0
  143. /package/dist/production/{components → src/components}/FormHasOneRelationScope.js +0 -0
  144. /package/dist/production/{components → src/components}/FormInput.cjs +0 -0
  145. /package/dist/production/{components → src/components}/FormInput.js +0 -0
  146. /package/dist/production/{components → src/components}/FormLabel.cjs +0 -0
  147. /package/dist/production/{components → src/components}/FormLabel.js +0 -0
  148. /package/dist/production/{contexts.cjs → src/contexts.cjs} +0 -0
  149. /package/dist/production/{contexts.js → src/contexts.js} +0 -0
  150. /package/dist/production/{internal → src/internal}/useFormInputHandler.cjs +0 -0
  151. /package/dist/production/{internal → src/internal}/useFormInputHandler.js +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"useFormInputHandler.cjs","sources":["../../../src/internal/useFormInputHandler.ts"],"sourcesContent":["import { FieldAccessor, SchemaColumn, SchemaKnownColumnType } from '@contember/react-binding'\nimport { useMemo } from 'react'\nimport { FormInputHandler } from '../types'\n\nexport const useFormInputHandler = (field: FieldAccessor, { formatValue, parseValue }: Partial<FormInputHandler>): FormInputHandler => {\n\treturn useMemo(() => {\n\t\tconst schema = field.schema\n\t\tconst columnType = schema.type\n\t\tconst handlerFactory = ColumnTypeHandlerFactories[columnType as SchemaKnownColumnType] ?? defaultHandlerFactory\n\t\tconst handler = handlerFactory(schema, field.getAccessor)\n\t\treturn {\n\t\t\tdefaultInputProps: handler.defaultInputProps,\n\t\t\tformatValue: formatValue ?? handler.formatValue,\n\t\t\tparseValue: parseValue ?? handler.parseValue,\n\t\t}\n\t}, [field.getAccessor, field.schema, formatValue, parseValue])\n}\n\ntype ColumnTypeHandlerFactory = (column: SchemaColumn, getAccessor: FieldAccessor.GetFieldAccessor) => FormInputHandler\n\nconst defaultHandlerFactory: ColumnTypeHandlerFactory = (schema, field) => ({\n\tparseValue: (value: string) => {\n\t\tif (value === '' && schema.nullable && field().valueOnServer === null) {\n\t\t\treturn null\n\t\t}\n\t\treturn value\n\t},\n\tformatValue: (value: string | null) => value ?? '',\n})\n\nconst ColumnTypeHandlerFactories: Record<SchemaKnownColumnType, ColumnTypeHandlerFactory | undefined> = {\n\tString: defaultHandlerFactory,\n\tInteger: () => ({\n\t\tparseValue: (value: string) => {\n\t\t\tif (value === '') {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\tconst parsed = parseInt(value, 10)\n\t\t\treturn isNaN(parsed) ? null : parsed\n\t\t},\n\t\tformatValue: (value: number | null) => {\n\t\t\treturn value === null ? '' : value.toString(10)\n\t\t},\n\t\tdefaultInputProps: {\n\t\t\ttype: 'number',\n\t\t},\n\t}),\n\tDouble: () => ({\n\t\tparseValue: (value: string) => {\n\t\t\tif (value === '') {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\tconst parsed = parseFloat(value)\n\t\t\treturn isNaN(parsed) ? null : parsed\n\t\t},\n\t\tformatValue: (value: number | null) => {\n\t\t\treturn value === null ? '' : value.toString(10)\n\t\t},\n\t\tdefaultInputProps: {\n\t\t\ttype: 'number',\n\t\t},\n\t}),\n\n\tDate: () => ({\n\t\tparseValue: (value: string) => {\n\t\t\tif (value === '') {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\tconst parsed = Date.parse(value)\n\t\t\treturn isNaN(parsed) ? null : (new Date(parsed)).toISOString().split('T')[0]\n\t\t},\n\t\tformatValue: (value: string | null) => {\n\t\t\tconst parsed = value ? Date.parse(value) : null\n\t\t\treturn !parsed || isNaN(parsed) ? '' : new Date(parsed).toISOString().split('T')[0]\n\t\t},\n\t\tdefaultInputProps: {\n\t\t\ttype: 'date',\n\t\t},\n\t}),\n\tDateTime: () => ({\n\t\tparseValue: (value: string) => {\n\t\t\tif (value === '') {\n\t\t\t\treturn null\n\t\t\t}\n\n\t\t\tconst parsed = Date.parse(value)\n\t\t\treturn isNaN(parsed) ? null : (new Date(parsed)).toISOString()\n\t\t},\n\t\tformatValue: (value: string | null) => {\n\t\t\tconst parsed = value ? Date.parse(value) : null\n\t\t\treturn !parsed || isNaN(parsed) ? '' : toLocalDate(new Date(parsed))\n\t\t},\n\t\tdefaultInputProps: {\n\t\t\ttype: 'datetime-local',\n\t\t},\n\t}),\n\tBool: undefined,\n\tEnum: undefined,\n\tUuid: undefined,\n}\n\nconst toLocalDate = (date: Date) => {\n\tconst pad = (num: number, length: number = 2) => {\n\t\tconst str = num.toString()\n\t\treturn '0'.repeat(Math.max(0, length - str.length)) + str\n\t}\n\n\treturn pad(date.getFullYear(), 4) +\n\t\t'-' + pad(date.getMonth() + 1) +\n\t\t'-' + pad(date.getDate()) +\n\t\t'T' + pad(date.getHours()) +\n\t\t':' + pad(date.getMinutes()) +\n\t\t':' + pad(date.getSeconds())\n}\n"],"names":["useMemo"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useFormInputHandler.js","sources":["../../../src/internal/useFormInputHandler.ts"],"sourcesContent":["import { FieldAccessor, SchemaColumn, SchemaKnownColumnType } from '@contember/react-binding'\nimport { useMemo } from 'react'\nimport { FormInputHandler } from '../types'\n\nexport const useFormInputHandler = (field: FieldAccessor, { formatValue, parseValue }: Partial<FormInputHandler>): FormInputHandler => {\n\treturn useMemo(() => {\n\t\tconst schema = field.schema\n\t\tconst columnType = schema.type\n\t\tconst handlerFactory = ColumnTypeHandlerFactories[columnType as SchemaKnownColumnType] ?? defaultHandlerFactory\n\t\tconst handler = handlerFactory(schema, field.getAccessor)\n\t\treturn {\n\t\t\tdefaultInputProps: handler.defaultInputProps,\n\t\t\tformatValue: formatValue ?? handler.formatValue,\n\t\t\tparseValue: parseValue ?? handler.parseValue,\n\t\t}\n\t}, [field.getAccessor, field.schema, formatValue, parseValue])\n}\n\ntype ColumnTypeHandlerFactory = (column: SchemaColumn, getAccessor: FieldAccessor.GetFieldAccessor) => FormInputHandler\n\nconst defaultHandlerFactory: ColumnTypeHandlerFactory = (schema, field) => ({\n\tparseValue: (value: string) => {\n\t\tif (value === '' && schema.nullable && field().valueOnServer === null) {\n\t\t\treturn null\n\t\t}\n\t\treturn value\n\t},\n\tformatValue: (value: string | null) => value ?? '',\n})\n\nconst ColumnTypeHandlerFactories: Record<SchemaKnownColumnType, ColumnTypeHandlerFactory | undefined> = {\n\tString: defaultHandlerFactory,\n\tInteger: () => ({\n\t\tparseValue: (value: string) => {\n\t\t\tif (value === '') {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\tconst parsed = parseInt(value, 10)\n\t\t\treturn isNaN(parsed) ? null : parsed\n\t\t},\n\t\tformatValue: (value: number | null) => {\n\t\t\treturn value === null ? '' : value.toString(10)\n\t\t},\n\t\tdefaultInputProps: {\n\t\t\ttype: 'number',\n\t\t},\n\t}),\n\tDouble: () => ({\n\t\tparseValue: (value: string) => {\n\t\t\tif (value === '') {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\tconst parsed = parseFloat(value)\n\t\t\treturn isNaN(parsed) ? null : parsed\n\t\t},\n\t\tformatValue: (value: number | null) => {\n\t\t\treturn value === null ? '' : value.toString(10)\n\t\t},\n\t\tdefaultInputProps: {\n\t\t\ttype: 'number',\n\t\t},\n\t}),\n\n\tDate: () => ({\n\t\tparseValue: (value: string) => {\n\t\t\tif (value === '') {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\tconst parsed = Date.parse(value)\n\t\t\treturn isNaN(parsed) ? null : (new Date(parsed)).toISOString().split('T')[0]\n\t\t},\n\t\tformatValue: (value: string | null) => {\n\t\t\tconst parsed = value ? Date.parse(value) : null\n\t\t\treturn !parsed || isNaN(parsed) ? '' : new Date(parsed).toISOString().split('T')[0]\n\t\t},\n\t\tdefaultInputProps: {\n\t\t\ttype: 'date',\n\t\t},\n\t}),\n\tDateTime: () => ({\n\t\tparseValue: (value: string) => {\n\t\t\tif (value === '') {\n\t\t\t\treturn null\n\t\t\t}\n\n\t\t\tconst parsed = Date.parse(value)\n\t\t\treturn isNaN(parsed) ? null : (new Date(parsed)).toISOString()\n\t\t},\n\t\tformatValue: (value: string | null) => {\n\t\t\tconst parsed = value ? Date.parse(value) : null\n\t\t\treturn !parsed || isNaN(parsed) ? '' : toLocalDate(new Date(parsed))\n\t\t},\n\t\tdefaultInputProps: {\n\t\t\ttype: 'datetime-local',\n\t\t},\n\t}),\n\tBool: undefined,\n\tEnum: undefined,\n\tUuid: undefined,\n}\n\nconst toLocalDate = (date: Date) => {\n\tconst pad = (num: number, length: number = 2) => {\n\t\tconst str = num.toString()\n\t\treturn '0'.repeat(Math.max(0, length - str.length)) + str\n\t}\n\n\treturn pad(date.getFullYear(), 4) +\n\t\t'-' + pad(date.getMonth() + 1) +\n\t\t'-' + pad(date.getDate()) +\n\t\t'T' + pad(date.getHours()) +\n\t\t':' + pad(date.getMinutes()) +\n\t\t':' + pad(date.getSeconds())\n}\n"],"names":[],"mappings":"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"}