@instructure/ui-form-field 10.12.0 → 10.12.1-snapshot-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 (84) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/es/FormField/index.js +0 -1
  3. package/es/FormFieldGroup/__new-tests__/FormFieldGroup.test.js +4 -4
  4. package/es/FormFieldGroup/index.js +18 -4
  5. package/es/FormFieldLayout/__new-tests__/FormFieldLayout.test.js +10 -8
  6. package/es/FormFieldLayout/index.js +73 -54
  7. package/es/FormFieldLayout/styles.js +109 -10
  8. package/es/FormFieldLayout/theme.js +28 -2
  9. package/es/FormFieldMessages/props.js +3 -2
  10. package/es/FormFieldMessages/styles.js +5 -3
  11. package/es/FormPropTypes.js +6 -0
  12. package/es/index.js +0 -1
  13. package/lib/FormField/index.js +0 -1
  14. package/lib/FormFieldGroup/__new-tests__/FormFieldGroup.test.js +4 -4
  15. package/lib/FormFieldGroup/index.js +18 -4
  16. package/lib/FormFieldLayout/__new-tests__/FormFieldLayout.test.js +9 -7
  17. package/lib/FormFieldLayout/index.js +72 -54
  18. package/lib/FormFieldLayout/styles.js +109 -10
  19. package/lib/FormFieldLayout/theme.js +28 -2
  20. package/lib/FormFieldMessages/props.js +3 -2
  21. package/lib/FormFieldMessages/styles.js +5 -3
  22. package/lib/FormPropTypes.js +6 -0
  23. package/lib/index.js +0 -7
  24. package/package.json +15 -15
  25. package/src/FormField/README.md +31 -3
  26. package/src/FormField/index.tsx +0 -1
  27. package/src/FormFieldGroup/__new-tests__/FormFieldGroup.test.tsx +4 -6
  28. package/src/FormFieldGroup/index.tsx +41 -6
  29. package/src/FormFieldLayout/__new-tests__/FormFieldLayout.test.tsx +6 -8
  30. package/src/FormFieldLayout/index.tsx +78 -92
  31. package/src/FormFieldLayout/props.ts +28 -2
  32. package/src/FormFieldLayout/styles.ts +128 -14
  33. package/src/FormFieldLayout/theme.ts +30 -4
  34. package/src/FormFieldMessages/props.ts +8 -2
  35. package/src/FormFieldMessages/styles.ts +5 -4
  36. package/src/FormPropTypes.ts +4 -0
  37. package/src/index.ts +0 -2
  38. package/tsconfig.build.tsbuildinfo +1 -1
  39. package/types/FormField/index.d.ts.map +1 -1
  40. package/types/FormFieldGroup/index.d.ts +1 -0
  41. package/types/FormFieldGroup/index.d.ts.map +1 -1
  42. package/types/FormFieldLayout/index.d.ts +8 -7
  43. package/types/FormFieldLayout/index.d.ts.map +1 -1
  44. package/types/FormFieldLayout/props.d.ts +27 -3
  45. package/types/FormFieldLayout/props.d.ts.map +1 -1
  46. package/types/FormFieldLayout/styles.d.ts +4 -3
  47. package/types/FormFieldLayout/styles.d.ts.map +1 -1
  48. package/types/FormFieldLayout/theme.d.ts +7 -1
  49. package/types/FormFieldLayout/theme.d.ts.map +1 -1
  50. package/types/FormFieldMessages/index.d.ts +8 -2
  51. package/types/FormFieldMessages/index.d.ts.map +1 -1
  52. package/types/FormFieldMessages/props.d.ts +5 -0
  53. package/types/FormFieldMessages/props.d.ts.map +1 -1
  54. package/types/FormFieldMessages/styles.d.ts +2 -3
  55. package/types/FormFieldMessages/styles.d.ts.map +1 -1
  56. package/types/FormPropTypes.d.ts +3 -0
  57. package/types/FormPropTypes.d.ts.map +1 -1
  58. package/types/index.d.ts +0 -2
  59. package/types/index.d.ts.map +1 -1
  60. package/es/FormFieldLabel/__new-tests__/FormFieldLabel.test.js +0 -66
  61. package/es/FormFieldLabel/index.js +0 -79
  62. package/es/FormFieldLabel/props.js +0 -31
  63. package/es/FormFieldLabel/styles.js +0 -62
  64. package/es/FormFieldLabel/theme.js +0 -52
  65. package/lib/FormFieldLabel/__new-tests__/FormFieldLabel.test.js +0 -68
  66. package/lib/FormFieldLabel/index.js +0 -85
  67. package/lib/FormFieldLabel/props.js +0 -37
  68. package/lib/FormFieldLabel/styles.js +0 -68
  69. package/lib/FormFieldLabel/theme.js +0 -58
  70. package/src/FormFieldLabel/__new-tests__/FormFieldLabel.test.tsx +0 -79
  71. package/src/FormFieldLabel/index.tsx +0 -95
  72. package/src/FormFieldLabel/props.ts +0 -58
  73. package/src/FormFieldLabel/styles.ts +0 -74
  74. package/src/FormFieldLabel/theme.ts +0 -56
  75. package/types/FormFieldLabel/__new-tests__/FormFieldLabel.test.d.ts +0 -2
  76. package/types/FormFieldLabel/__new-tests__/FormFieldLabel.test.d.ts.map +0 -1
  77. package/types/FormFieldLabel/index.d.ts +0 -42
  78. package/types/FormFieldLabel/index.d.ts.map +0 -1
  79. package/types/FormFieldLabel/props.d.ts +0 -15
  80. package/types/FormFieldLabel/props.d.ts.map +0 -1
  81. package/types/FormFieldLabel/styles.d.ts +0 -15
  82. package/types/FormFieldLabel/styles.d.ts.map +0 -1
  83. package/types/FormFieldLabel/theme.d.ts +0 -10
  84. package/types/FormFieldLabel/theme.d.ts.map +0 -1
@@ -42,6 +42,11 @@ type FormFieldMessagesOwnProps = {
42
42
  * }`
43
43
  */
44
44
  messages?: FormMessage[]
45
+ /**
46
+ * Specifies the size and location if inside a CSS grid, see
47
+ * https://developer.mozilla.org/en-US/docs/Web/CSS/grid-area
48
+ */
49
+ gridArea?: string
45
50
  }
46
51
 
47
52
  type PropKeys = keyof FormFieldMessagesOwnProps
@@ -55,10 +60,11 @@ type FormFieldMessagesProps = FormFieldMessagesOwnProps &
55
60
  type FormFieldMessagesStyle = ComponentStyle<'formFieldMessages' | 'message'>
56
61
 
57
62
  const propTypes: PropValidators<PropKeys> = {
58
- messages: PropTypes.arrayOf(FormPropTypes.message)
63
+ messages: PropTypes.arrayOf(FormPropTypes.message),
64
+ gridArea: PropTypes.string
59
65
  }
60
66
 
61
- const allowedProps: AllowedPropKeys = ['messages']
67
+ const allowedProps: AllowedPropKeys = ['messages', 'gridArea']
62
68
 
63
69
  export type { FormFieldMessagesProps, FormFieldMessagesStyle }
64
70
  export { propTypes, allowedProps }
@@ -23,7 +23,7 @@
23
23
  */
24
24
 
25
25
  import type { FormFieldMessagesTheme } from '@instructure/shared-types'
26
- import type { FormFieldMessagesStyle } from './props'
26
+ import type { FormFieldMessagesProps, FormFieldMessagesStyle } from './props'
27
27
 
28
28
  /**
29
29
  * ---
@@ -32,18 +32,19 @@ import type { FormFieldMessagesStyle } from './props'
32
32
  * Generates the style object from the theme and provided additional information
33
33
  * @param {Object} componentTheme The theme variable object.
34
34
  * @param {Object} props the props of the component, the style is applied to
35
- * @param {Object} state the state of the component, the style is applied to
36
35
  * @return {Object} The final style object, which will be used in the component
37
36
  */
38
37
  const generateStyle = (
39
- componentTheme: FormFieldMessagesTheme
38
+ componentTheme: FormFieldMessagesTheme,
39
+ props: FormFieldMessagesProps
40
40
  ): FormFieldMessagesStyle => {
41
41
  return {
42
42
  formFieldMessages: {
43
43
  label: 'formFieldMessages',
44
44
  padding: 0,
45
45
  display: 'block',
46
- margin: `calc(-1 * ${componentTheme.topMargin}) 0 0 0`
46
+ margin: `calc(-${componentTheme.topMargin}) 0 0 0`,
47
+ ...(props.gridArea && { gridArea: props.gridArea })
47
48
  },
48
49
  message: {
49
50
  label: 'formFieldMessages__message',
@@ -40,6 +40,10 @@ type FormMessageType =
40
40
  | 'hint'
41
41
  | 'success'
42
42
  | 'screenreader-only'
43
+ // TODO it will be easier if this would be just a string
44
+ /**
45
+ * The text to display in the form message
46
+ */
43
47
  type FormMessageChild = React.ReactNode
44
48
 
45
49
  /**
package/src/index.ts CHANGED
@@ -23,7 +23,6 @@
23
23
  */
24
24
 
25
25
  export { FormField } from './FormField'
26
- export { FormFieldLabel } from './FormFieldLabel'
27
26
  export { FormFieldMessage } from './FormFieldMessage'
28
27
  export { FormFieldMessages } from './FormFieldMessages'
29
28
  export { FormFieldLayout } from './FormFieldLayout'
@@ -33,7 +32,6 @@ export { FormPropTypes } from './FormPropTypes'
33
32
  export type { FormMessageType, FormMessage } from './FormPropTypes'
34
33
 
35
34
  export type { FormFieldOwnProps, FormFieldProps } from './FormField/props'
36
- export type { FormFieldLabelProps } from './FormFieldLabel/props'
37
35
  export type { FormFieldMessageProps } from './FormFieldMessage/props'
38
36
  export type { FormFieldMessagesProps } from './FormFieldMessages/props'
39
37
  export type { FormFieldLayoutProps } from './FormFieldLayout/props'