@dnb/eufemia 10.62.3 → 10.62.4

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 (180) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/cjs/components/card/Card.js +2 -1
  3. package/cjs/components/card/Card.js.map +1 -1
  4. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.css +0 -10
  5. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  6. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.scss +1 -12
  7. package/cjs/extensions/forms/Form/data-context/useValidation.d.ts +2 -1
  8. package/cjs/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  9. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js +2 -1
  10. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  11. package/cjs/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +2 -0
  12. package/cjs/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -1
  13. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +2 -1
  14. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  15. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js +3 -2
  16. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  17. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -3
  18. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  19. package/cjs/extensions/forms/Iterate/style/dnb-iterate.css +16 -0
  20. package/cjs/extensions/forms/Iterate/style/dnb-iterate.min.css +1 -1
  21. package/cjs/extensions/forms/Iterate/style/dnb-iterate.scss +25 -2
  22. package/cjs/extensions/forms/style/dnb-forms.css +16 -10
  23. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  24. package/cjs/shared/Eufemia.d.ts +1 -1
  25. package/cjs/shared/Eufemia.js +2 -2
  26. package/cjs/shared/Eufemia.js.map +1 -1
  27. package/cjs/style/core/scopes.scss +1 -1
  28. package/cjs/style/dnb-ui-basis.css +1 -1
  29. package/cjs/style/dnb-ui-basis.min.css +1 -1
  30. package/cjs/style/dnb-ui-body.css +1 -1
  31. package/cjs/style/dnb-ui-body.min.css +1 -1
  32. package/cjs/style/dnb-ui-components.css +16 -10
  33. package/cjs/style/dnb-ui-components.min.css +1 -1
  34. package/cjs/style/dnb-ui-core.css +1 -1
  35. package/cjs/style/dnb-ui-core.min.css +1 -1
  36. package/cjs/style/dnb-ui-extensions.css +16 -10
  37. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  38. package/cjs/style/dnb-ui-forms.css +16 -10
  39. package/cjs/style/dnb-ui-forms.min.css +1 -1
  40. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +32 -20
  41. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  42. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +16 -10
  43. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  44. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +16 -10
  45. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  46. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +32 -20
  47. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  48. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +16 -10
  49. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  50. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +16 -10
  51. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  52. package/cjs/style/themes/theme-ui/ui-theme-components.css +32 -20
  53. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  54. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +16 -10
  55. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  56. package/cjs/style/themes/theme-ui/ui-theme-forms.css +16 -10
  57. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  58. package/components/card/Card.js +2 -1
  59. package/components/card/Card.js.map +1 -1
  60. package/es/components/card/Card.js +2 -1
  61. package/es/components/card/Card.js.map +1 -1
  62. package/es/extensions/forms/Form/Section/style/dnb-form-section.css +0 -10
  63. package/es/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  64. package/es/extensions/forms/Form/Section/style/dnb-form-section.scss +1 -12
  65. package/es/extensions/forms/Form/data-context/useValidation.d.ts +2 -1
  66. package/es/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  67. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js +2 -1
  68. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  69. package/es/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +2 -0
  70. package/es/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -1
  71. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +2 -1
  72. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  73. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js +3 -2
  74. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  75. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -3
  76. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  77. package/es/extensions/forms/Iterate/style/dnb-iterate.css +16 -0
  78. package/es/extensions/forms/Iterate/style/dnb-iterate.min.css +1 -1
  79. package/es/extensions/forms/Iterate/style/dnb-iterate.scss +25 -2
  80. package/es/extensions/forms/style/dnb-forms.css +16 -10
  81. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  82. package/es/shared/Eufemia.d.ts +1 -1
  83. package/es/shared/Eufemia.js +2 -2
  84. package/es/shared/Eufemia.js.map +1 -1
  85. package/es/style/core/scopes.scss +1 -1
  86. package/es/style/dnb-ui-basis.css +1 -1
  87. package/es/style/dnb-ui-basis.min.css +1 -1
  88. package/es/style/dnb-ui-body.css +1 -1
  89. package/es/style/dnb-ui-body.min.css +1 -1
  90. package/es/style/dnb-ui-components.css +16 -10
  91. package/es/style/dnb-ui-components.min.css +1 -1
  92. package/es/style/dnb-ui-core.css +1 -1
  93. package/es/style/dnb-ui-core.min.css +1 -1
  94. package/es/style/dnb-ui-extensions.css +16 -10
  95. package/es/style/dnb-ui-extensions.min.css +1 -1
  96. package/es/style/dnb-ui-forms.css +16 -10
  97. package/es/style/dnb-ui-forms.min.css +1 -1
  98. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +32 -20
  99. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  100. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +16 -10
  101. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  102. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +16 -10
  103. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  104. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +32 -20
  105. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  106. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +16 -10
  107. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  108. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +16 -10
  109. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  110. package/es/style/themes/theme-ui/ui-theme-components.css +32 -20
  111. package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  112. package/es/style/themes/theme-ui/ui-theme-extensions.css +16 -10
  113. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  114. package/es/style/themes/theme-ui/ui-theme-forms.css +16 -10
  115. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  116. package/esm/dnb-ui-basis.min.mjs +1 -1
  117. package/esm/dnb-ui-components.min.mjs +1 -1
  118. package/esm/dnb-ui-elements.min.mjs +1 -1
  119. package/esm/dnb-ui-extensions.min.mjs +2 -2
  120. package/esm/dnb-ui-lib.min.mjs +1 -1
  121. package/extensions/forms/Form/Section/style/dnb-form-section.css +0 -10
  122. package/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  123. package/extensions/forms/Form/Section/style/dnb-form-section.scss +1 -12
  124. package/extensions/forms/Form/data-context/useValidation.d.ts +2 -1
  125. package/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  126. package/extensions/forms/Iterate/Array/ArrayItemArea.js +2 -1
  127. package/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  128. package/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +2 -0
  129. package/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -1
  130. package/extensions/forms/Iterate/PushContainer/PushContainer.js +2 -1
  131. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  132. package/extensions/forms/Iterate/Toolbar/Toolbar.js +3 -2
  133. package/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  134. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -3
  135. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  136. package/extensions/forms/Iterate/style/dnb-iterate.css +16 -0
  137. package/extensions/forms/Iterate/style/dnb-iterate.min.css +1 -1
  138. package/extensions/forms/Iterate/style/dnb-iterate.scss +25 -2
  139. package/extensions/forms/style/dnb-forms.css +16 -10
  140. package/extensions/forms/style/dnb-forms.min.css +1 -1
  141. package/package.json +1 -1
  142. package/shared/Eufemia.d.ts +1 -1
  143. package/shared/Eufemia.js +2 -2
  144. package/shared/Eufemia.js.map +1 -1
  145. package/style/core/scopes.scss +1 -1
  146. package/style/dnb-ui-basis.css +1 -1
  147. package/style/dnb-ui-basis.min.css +1 -1
  148. package/style/dnb-ui-body.css +1 -1
  149. package/style/dnb-ui-body.min.css +1 -1
  150. package/style/dnb-ui-components.css +16 -10
  151. package/style/dnb-ui-components.min.css +1 -1
  152. package/style/dnb-ui-core.css +1 -1
  153. package/style/dnb-ui-core.min.css +1 -1
  154. package/style/dnb-ui-extensions.css +16 -10
  155. package/style/dnb-ui-extensions.min.css +1 -1
  156. package/style/dnb-ui-forms.css +16 -10
  157. package/style/dnb-ui-forms.min.css +1 -1
  158. package/style/themes/theme-eiendom/eiendom-theme-components.css +32 -20
  159. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  160. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +16 -10
  161. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  162. package/style/themes/theme-eiendom/eiendom-theme-forms.css +16 -10
  163. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  164. package/style/themes/theme-sbanken/sbanken-theme-components.css +32 -20
  165. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  166. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +16 -10
  167. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  168. package/style/themes/theme-sbanken/sbanken-theme-forms.css +16 -10
  169. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  170. package/style/themes/theme-ui/ui-theme-components.css +32 -20
  171. package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  172. package/style/themes/theme-ui/ui-theme-extensions.css +16 -10
  173. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  174. package/style/themes/theme-ui/ui-theme-forms.css +16 -10
  175. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  176. package/umd/dnb-ui-basis.min.js +1 -1
  177. package/umd/dnb-ui-components.min.js +1 -1
  178. package/umd/dnb-ui-elements.min.js +1 -1
  179. package/umd/dnb-ui-extensions.min.js +1 -1
  180. package/umd/dnb-ui-lib.min.js +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,15 @@
3
3
  All notable changes to @dnb/eufemia will be documented in this file. See
4
4
  [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [10.62.4](https://github.com/dnbexperience/eufemia/compare/v10.62.3...v10.62.4) (2025-01-08)
7
+
8
+
9
+ ### :bug: Bug Fixes
10
+
11
+ * **Card:** prioritize `gap` property over `stack` spacing ([#4437](https://github.com/dnbexperience/eufemia/issues/4437)) ([18e7391](https://github.com/dnbexperience/eufemia/commit/18e7391f08fb1383ac8631784533f24e52f3a6a7))
12
+ * **Forms:** ensure `setFormError` from Form.useValidation accepts undefined or null as a value ([#4438](https://github.com/dnbexperience/eufemia/issues/4438)) ([a06b0ed](https://github.com/dnbexperience/eufemia/commit/a06b0ede447423d9ca0a9968a77f69a41840a9ad))
13
+ * **Iterate:** display divider line when `divider="line"` ([#4422](https://github.com/dnbexperience/eufemia/issues/4422)) ([9227a36](https://github.com/dnbexperience/eufemia/commit/9227a3633ad9039f38c7fa83deadc404f6798afa))
14
+
6
15
  ## [10.62.3](https://github.com/dnbexperience/eufemia/compare/v10.62.2...v10.62.3) (2025-01-07)
7
16
 
8
17
 
@@ -26,6 +26,7 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
26
26
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
27
27
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
28
28
  function Card(props) {
29
+ var _ref;
29
30
  const nestedContext = (0, _react.useContext)(_CardContext.default);
30
31
  const {
31
32
  className,
@@ -93,7 +94,7 @@ function Card(props) {
93
94
  alignSelf: alignSelf,
94
95
  align: stack ? 'stretch' : align,
95
96
  wrap: !stack,
96
- gap: stack ? 'medium' : (gap !== null && gap !== void 0 ? gap : spacing) || false,
97
+ gap: (_ref = gap !== null && gap !== void 0 ? gap : spacing) !== null && _ref !== void 0 ? _ref : stack ? 'medium' : false,
97
98
  rowGap: rowGap || false
98
99
  }, title && _react.default.createElement(_Space.default, {
99
100
  id: titleId,
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Flex","_Section","_componentHelper","_CardContext","_Space","_useId","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Card","props","nestedContext","useContext","CardContext","className","stack","direction","gap","spacing","innerSpace","alignSelf","align","divider","rowGap","responsive","isNested","filled","outset","title","children","rest","titleId","useId","falseWhenSmall","small","medium","large","trueWhenSmall","basisSpace","top","right","bottom","left","smallSpace","params","SectionParams","classnames","breakout","roundedCorner","outline","combineLabelledBy","createElement","Item","element","Provider","Container","wrap","id","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/card/Card.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport Flex from '../flex/Flex'\nimport { SectionParams, SectionProps } from '../section/Section'\nimport { combineLabelledBy } from '../../shared/component-helper'\nimport CardContext from './CardContext'\nimport Space from '../Space'\nimport useId from '../../shared/helpers/useId'\n\nimport type { BasicProps as FlexContainerProps } from '../flex/Container'\nimport type { BasicProps as FlexItemProps } from '../flex/Item'\nimport type { SpaceTypeMedia } from '../../shared/types'\nimport type { SpaceProps } from '../Space'\n\nexport type Props = {\n /**\n * Define a title that appears on top of the Card\n */\n title?: React.ReactNode\n\n /**\n * Define if the Card should behave responsive. Defaults to `true`\n */\n responsive?: boolean\n\n /**\n * Define if the Card should get the same background color as the outline border\n */\n filled?: boolean\n} & FlexContainerProps &\n Pick<SectionProps, 'outset'> &\n FlexItemProps & {\n stack?: boolean\n } & SpaceProps &\n Omit<React.HTMLProps<HTMLElement>, 'ref' | 'wrap' | 'size' | 'title'>\n\nfunction Card(props: Props) {\n const nestedContext = useContext(CardContext)\n\n const {\n className,\n stack,\n direction,\n gap,\n spacing,\n innerSpace,\n alignSelf = 'stretch',\n align,\n divider = 'space',\n rowGap,\n responsive = !nestedContext?.isNested,\n filled,\n outset,\n title,\n children,\n ...rest\n } = props\n\n const titleId = useId()\n const falseWhenSmall = { small: false, medium: true, large: true }\n const trueWhenSmall = { small: true, medium: false, large: false }\n const basisSpace = {\n top: 'medium',\n right: 'medium',\n bottom: 'large',\n left: 'medium',\n }\n const smallSpace = responsive\n ? {\n ...basisSpace,\n right: 0,\n left: 0,\n }\n : basisSpace\n\n const params = SectionParams({\n className: classnames(\n 'dnb-card',\n className,\n responsive && 'dnb-card--responsive',\n filled && 'dnb-card--filled'\n ),\n breakout: responsive ? trueWhenSmall : false,\n outset: nestedContext?.isNested\n ? false\n : outset === true\n ? falseWhenSmall\n : outset,\n roundedCorner: responsive ? falseWhenSmall : true,\n outline: '--outline-card-color',\n innerSpace:\n innerSpace ??\n ({\n small: smallSpace,\n medium: basisSpace,\n large: basisSpace,\n } as SpaceTypeMedia),\n ...(rest as SectionProps),\n 'aria-labelledby': combineLabelledBy(rest, title && titleId),\n })\n\n return (\n <Flex.Item alignSelf={alignSelf} element=\"section\" {...params}>\n <CardContext.Provider value={{ isNested: true }}>\n <Flex.Container\n direction={direction ?? 'vertical'}\n divider={divider}\n alignSelf={alignSelf}\n align={stack ? 'stretch' : align}\n wrap={!stack}\n gap={stack ? 'medium' : (gap ?? spacing) || false}\n rowGap={rowGap || false}\n >\n {title && (\n <Space id={titleId} className=\"dnb-card__title\">\n {title}\n </Space>\n )}\n {children}\n </Flex.Container>\n </CardContext.Provider>\n </Flex.Item>\n )\n}\n\nCard._supportsSpacingProps = true\n\nexport default Card\n"],"mappings":"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"}
1
+ {"version":3,"file":"Card.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Flex","_Section","_componentHelper","_CardContext","_Space","_useId","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Card","props","_ref","nestedContext","useContext","CardContext","className","stack","direction","gap","spacing","innerSpace","alignSelf","align","divider","rowGap","responsive","isNested","filled","outset","title","children","rest","titleId","useId","falseWhenSmall","small","medium","large","trueWhenSmall","basisSpace","top","right","bottom","left","smallSpace","params","SectionParams","classnames","breakout","roundedCorner","outline","combineLabelledBy","createElement","Item","element","Provider","Container","wrap","id","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/card/Card.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport Flex from '../flex/Flex'\nimport { SectionParams, SectionProps } from '../section/Section'\nimport { combineLabelledBy } from '../../shared/component-helper'\nimport CardContext from './CardContext'\nimport Space from '../Space'\nimport useId from '../../shared/helpers/useId'\n\nimport type { BasicProps as FlexContainerProps } from '../flex/Container'\nimport type { BasicProps as FlexItemProps } from '../flex/Item'\nimport type { SpaceTypeMedia } from '../../shared/types'\nimport type { SpaceProps } from '../Space'\n\nexport type Props = {\n /**\n * Define a title that appears on top of the Card\n */\n title?: React.ReactNode\n\n /**\n * Define if the Card should behave responsive. Defaults to `true`\n */\n responsive?: boolean\n\n /**\n * Define if the Card should get the same background color as the outline border\n */\n filled?: boolean\n} & FlexContainerProps &\n Pick<SectionProps, 'outset'> &\n FlexItemProps & {\n stack?: boolean\n } & SpaceProps &\n Omit<React.HTMLProps<HTMLElement>, 'ref' | 'wrap' | 'size' | 'title'>\n\nfunction Card(props: Props) {\n const nestedContext = useContext(CardContext)\n\n const {\n className,\n stack,\n direction,\n gap,\n spacing,\n innerSpace,\n alignSelf = 'stretch',\n align,\n divider = 'space',\n rowGap,\n responsive = !nestedContext?.isNested,\n filled,\n outset,\n title,\n children,\n ...rest\n } = props\n\n const titleId = useId()\n const falseWhenSmall = { small: false, medium: true, large: true }\n const trueWhenSmall = { small: true, medium: false, large: false }\n const basisSpace = {\n top: 'medium',\n right: 'medium',\n bottom: 'large',\n left: 'medium',\n }\n const smallSpace = responsive\n ? {\n ...basisSpace,\n right: 0,\n left: 0,\n }\n : basisSpace\n\n const params = SectionParams({\n className: classnames(\n 'dnb-card',\n className,\n responsive && 'dnb-card--responsive',\n filled && 'dnb-card--filled'\n ),\n breakout: responsive ? trueWhenSmall : false,\n outset: nestedContext?.isNested\n ? false\n : outset === true\n ? falseWhenSmall\n : outset,\n roundedCorner: responsive ? falseWhenSmall : true,\n outline: '--outline-card-color',\n innerSpace:\n innerSpace ??\n ({\n small: smallSpace,\n medium: basisSpace,\n large: basisSpace,\n } as SpaceTypeMedia),\n ...(rest as SectionProps),\n 'aria-labelledby': combineLabelledBy(rest, title && titleId),\n })\n\n return (\n <Flex.Item alignSelf={alignSelf} element=\"section\" {...params}>\n <CardContext.Provider value={{ isNested: true }}>\n <Flex.Container\n direction={direction ?? 'vertical'}\n divider={divider}\n alignSelf={alignSelf}\n align={stack ? 'stretch' : align}\n wrap={!stack}\n gap={gap ?? spacing ?? (stack ? 'medium' : false)}\n rowGap={rowGap || false}\n >\n {title && (\n <Space id={titleId} className=\"dnb-card__title\">\n {title}\n </Space>\n )}\n {children}\n </Flex.Container>\n </CardContext.Provider>\n </Flex.Item>\n )\n}\n\nCard._supportsSpacingProps = true\n\nexport default Card\n"],"mappings":"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"}
@@ -11,19 +11,9 @@
11
11
  .dnb-forms-section-block__inner {
12
12
  flex: 1;
13
13
  outline: none;
14
- margin-bottom: var(--space);
15
14
  transition: transform 400ms var(--easing-default) 50ms, box-shadow 0.8s var(--easing-default);
16
15
  transform: translateY(-2.5rem);
17
16
  }
18
- .dnb-forms-section-block__inner:has(.dnb-flex-container--spacing-small) {
19
- --space: var(--spacing-small);
20
- }
21
- .dnb-forms-section-block__inner:has(.dnb-flex-container--spacing-medium) {
22
- --space: var(--spacing-medium);
23
- }
24
- .dnb-forms-section-block__inner:has(.dnb-flex-container--spacing-large) {
25
- --space: var(--spacing-large);
26
- }
27
17
  .dnb-forms-section-block__inner .dnb-dl .dnb-dd {
28
18
  margin-bottom: 0;
29
19
  }
@@ -1 +1 @@
1
- .dnb-forms-section-block{--block-outline-color:var(--outline-color,var(--color-lavender))}.dnb-forms-section-block--error:has(.dnb-form-status--error){--block-outline-color:var(--color-fire-red)}.dnb-forms-section-block:not(.dnb-height-animation--hidden){display:flex;flex-direction:column}.dnb-forms-section-block__inner{flex:1;margin-bottom:var(--space);outline:none;transform:translateY(-2.5rem);transition:transform .4s var(--easing-default) 50ms,box-shadow .8s var(--easing-default)}.dnb-forms-section-block__inner:has(.dnb-flex-container--spacing-small){--space:var(--spacing-small)}.dnb-forms-section-block__inner:has(.dnb-flex-container--spacing-medium){--space:var(--spacing-medium)}.dnb-forms-section-block__inner:has(.dnb-flex-container--spacing-large){--space:var(--spacing-large)}.dnb-forms-section-block__inner .dnb-dl .dnb-dd{margin-bottom:0}.dnb-forms-section-block--variant-basic{--border-color:transparent}.dnb-card .dnb-forms-section-block--variant-basic .dnb-card,.dnb-forms-section-block--variant-basic .dnb-card{--card-outline-color:transparent}.dnb-forms-section-block--variant-filled .dnb-forms-section-block__inner{--space:var(--spacing-small);background-color:var(--color-lavender)}.dnb-forms-section-block--no-animation .dnb-forms-section-block__inner{transform:translateY(0)}.dnb-forms-section-block.dnb-height-animation--is-visible .dnb-forms-section-block__inner{transform:translateY(-.5rem)}.dnb-forms-section-block.dnb-height-animation--parallax .dnb-forms-section-block__inner{transform:translateY(0)}
1
+ .dnb-forms-section-block{--block-outline-color:var(--outline-color,var(--color-lavender))}.dnb-forms-section-block--error:has(.dnb-form-status--error){--block-outline-color:var(--color-fire-red)}.dnb-forms-section-block:not(.dnb-height-animation--hidden){display:flex;flex-direction:column}.dnb-forms-section-block__inner{flex:1;outline:none;transform:translateY(-2.5rem);transition:transform .4s var(--easing-default) 50ms,box-shadow .8s var(--easing-default)}.dnb-forms-section-block__inner .dnb-dl .dnb-dd{margin-bottom:0}.dnb-forms-section-block--variant-basic{--border-color:transparent}.dnb-card .dnb-forms-section-block--variant-basic .dnb-card,.dnb-forms-section-block--variant-basic .dnb-card{--card-outline-color:transparent}.dnb-forms-section-block--variant-filled .dnb-forms-section-block__inner{--space:var(--spacing-small);background-color:var(--color-lavender)}.dnb-forms-section-block--no-animation .dnb-forms-section-block__inner{transform:translateY(0)}.dnb-forms-section-block.dnb-height-animation--is-visible .dnb-forms-section-block__inner{transform:translateY(-.5rem)}.dnb-forms-section-block.dnb-height-animation--parallax .dnb-forms-section-block__inner{transform:translateY(0)}
@@ -13,18 +13,7 @@
13
13
 
14
14
  &__inner {
15
15
  flex: 1;
16
- outline: none; // for JavaSCript focus
17
-
18
- margin-bottom: var(--space);
19
- &:has(.dnb-flex-container--spacing-small) {
20
- --space: var(--spacing-small);
21
- }
22
- &:has(.dnb-flex-container--spacing-medium) {
23
- --space: var(--spacing-medium);
24
- }
25
- &:has(.dnb-flex-container--spacing-large) {
26
- --space: var(--spacing-large);
27
- }
16
+ outline: none; // Because of JavaScript focus management (tabIndex)
28
17
 
29
18
  transition:
30
19
  transform 400ms var(--easing-default) 50ms,
@@ -1,10 +1,11 @@
1
1
  import { SharedStateId } from '../../../../shared/helpers/useSharedState';
2
2
  import { ContextState } from '../../DataContext/Context';
3
3
  import { EventStateObject, Path } from '../../types';
4
+ import { FormError } from '../../utils';
4
5
  type UseDataReturn = {
5
6
  hasErrors: ContextState['hasErrors'];
6
7
  hasFieldError: ContextState['hasFieldError'];
7
- setFormError: (error: Error) => void;
8
+ setFormError: (error: Error | FormError | undefined | null) => void;
8
9
  setFieldStatus: (path: Path, status: EventStateObject) => void;
9
10
  };
10
11
  export default function useValidation(id?: SharedStateId): UseDataReturn;
@@ -1 +1 @@
1
- {"version":3,"file":"useValidation.js","names":["_react","require","_useSharedState","_Context","_interopRequireDefault","obj","__esModule","default","useValidation","id","arguments","length","undefined","data","useSharedState","createReferenceKey","fallback","useCallback","context","useContext","DataContext","hasErrors","hasFieldError","setSubmitState","setFormError","error","getFieldConnections","useConnections","setFieldStatus","path","status","_connections$path","_connections$path$set","connections","setEventResult","call","useMemo","get","dataContext","fieldConnectionsRef","attachments","current"],"sources":["../../../../../../src/extensions/forms/Form/data-context/useValidation.tsx"],"sourcesContent":["import { useCallback, useContext, useMemo } from 'react'\nimport {\n SharedStateId,\n createReferenceKey,\n useSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport DataContext, { ContextState } from '../../DataContext/Context'\nimport { SharedAttachments } from '../../DataContext/Provider'\nimport { EventStateObject, Path } from '../../types'\n\ntype UseDataReturn = {\n hasErrors: ContextState['hasErrors']\n hasFieldError: ContextState['hasFieldError']\n setFormError: (error: Error) => void\n setFieldStatus: (path: Path, status: EventStateObject) => void\n}\n\nexport default function useValidation(\n id: SharedStateId = undefined\n): UseDataReturn {\n const { data } = useSharedState<\n UseDataReturn & SharedAttachments<unknown>\n >(createReferenceKey(id, 'attachments'))\n\n const fallback = useCallback(() => false, [])\n\n // If no id is provided, use the context version\n const context = useContext(DataContext)\n const hasErrors =\n data?.hasErrors || (!id && context?.hasErrors) || fallback\n const hasFieldError =\n data?.hasFieldError || (!id && context?.hasFieldError) || fallback\n\n // Error handling\n const setSubmitState =\n data?.setSubmitState || (!id && context?.setSubmitState) || fallback\n const setFormError = useCallback(\n (error: Error) => {\n setSubmitState?.({ error })\n },\n [setSubmitState]\n )\n\n // Field status\n const { getFieldConnections } = useConnections(id)\n const setFieldStatus = useCallback(\n (path: Path, status: EventStateObject) => {\n const connections = getFieldConnections()\n connections?.[path]?.setEventResult?.(status)\n },\n [getFieldConnections]\n )\n\n return useMemo(\n () => ({ hasErrors, hasFieldError, setFormError, setFieldStatus }),\n [hasErrors, hasFieldError, setFormError, setFieldStatus]\n )\n}\n\ntype UseConnectionsSharedState = {\n fieldConnectionsRef: ContextState['fieldConnectionsRef']\n}\n\nfunction useConnections(id: SharedStateId = undefined) {\n const { get } = useSharedState<UseConnectionsSharedState>(\n createReferenceKey(id, 'attachments')\n )\n\n const dataContext = useContext(DataContext)\n const { fieldConnectionsRef } = dataContext || {}\n\n const getFieldConnections = useCallback(() => {\n const attachments = get()\n const connections =\n attachments?.fieldConnectionsRef || (!id && fieldConnectionsRef)\n\n return connections.current\n }, [fieldConnectionsRef, get, id])\n\n return useMemo(() => ({ getFieldConnections }), [getFieldConnections])\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useValidation.js","names":["_react","require","_useSharedState","_Context","_interopRequireDefault","obj","__esModule","default","useValidation","id","arguments","length","undefined","data","useSharedState","createReferenceKey","fallback","useCallback","context","useContext","DataContext","hasErrors","hasFieldError","setSubmitState","setFormError","error","getFieldConnections","useConnections","setFieldStatus","path","status","_connections$path","_connections$path$set","connections","setEventResult","call","useMemo","get","dataContext","fieldConnectionsRef","attachments","current"],"sources":["../../../../../../src/extensions/forms/Form/data-context/useValidation.tsx"],"sourcesContent":["import { useCallback, useContext, useMemo } from 'react'\nimport {\n SharedStateId,\n createReferenceKey,\n useSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport DataContext, { ContextState } from '../../DataContext/Context'\nimport { SharedAttachments } from '../../DataContext/Provider'\nimport { EventStateObject, Path } from '../../types'\nimport { FormError } from '../../utils'\n\ntype UseDataReturn = {\n hasErrors: ContextState['hasErrors']\n hasFieldError: ContextState['hasFieldError']\n setFormError: (error: Error | FormError | undefined | null) => void\n setFieldStatus: (path: Path, status: EventStateObject) => void\n}\n\nexport default function useValidation(\n id: SharedStateId = undefined\n): UseDataReturn {\n const { data } = useSharedState<\n UseDataReturn & SharedAttachments<unknown>\n >(createReferenceKey(id, 'attachments'))\n\n const fallback = useCallback(() => false, [])\n\n // If no id is provided, use the context version\n const context = useContext(DataContext)\n const hasErrors =\n data?.hasErrors || (!id && context?.hasErrors) || fallback\n const hasFieldError =\n data?.hasFieldError || (!id && context?.hasFieldError) || fallback\n\n // Error handling\n const setSubmitState =\n data?.setSubmitState || (!id && context?.setSubmitState) || fallback\n const setFormError = useCallback(\n (error: Error) => {\n setSubmitState?.({ error })\n },\n [setSubmitState]\n )\n\n // Field status\n const { getFieldConnections } = useConnections(id)\n const setFieldStatus = useCallback(\n (path: Path, status: EventStateObject) => {\n const connections = getFieldConnections()\n connections?.[path]?.setEventResult?.(status)\n },\n [getFieldConnections]\n )\n\n return useMemo(\n () => ({ hasErrors, hasFieldError, setFormError, setFieldStatus }),\n [hasErrors, hasFieldError, setFormError, setFieldStatus]\n )\n}\n\ntype UseConnectionsSharedState = {\n fieldConnectionsRef: ContextState['fieldConnectionsRef']\n}\n\nfunction useConnections(id: SharedStateId = undefined) {\n const { get } = useSharedState<UseConnectionsSharedState>(\n createReferenceKey(id, 'attachments')\n )\n\n const dataContext = useContext(DataContext)\n const { fieldConnectionsRef } = dataContext || {}\n\n const getFieldConnections = useCallback(() => {\n const attachments = get()\n const connections =\n attachments?.fieldConnectionsRef || (!id && fieldConnectionsRef)\n\n return connections.current\n }, [fieldConnectionsRef, get, id])\n\n return useMemo(() => ({ getFieldConnections }), [getFieldConnections])\n}\n"],"mappings":"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"}
@@ -142,7 +142,8 @@ function ArrayItemArea(props) {
142
142
  value: {
143
143
  handleRemoveItem,
144
144
  variant,
145
- toolbarVariant
145
+ toolbarVariant,
146
+ divider: restProps.divider
146
147
  }
147
148
  }, _react.default.createElement(_components.HeightAnimation, {
148
149
  className: (0, _classnames.default)('dnb-forms-section-block', className, variant && `dnb-forms-section-block--variant-${variant}`, isNew && 'dnb-forms-section-block--new', hasSubmitError && 'dnb-forms-section-block--error'),
@@ -1 +1 @@
1
- {"version":3,"file":"ArrayItemArea.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_IterateItemContext","_ArrayItemAreaContext","_FieldBoundaryContext","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","useLayoutEffect","window","React","useEffect","ArrayItemArea","props","forceUpdate","useReducer","mode","open","ariaLabel","onAnimationEnd","className","children","openDelay","variant","toolbarVariant","restProps","localContextRef","useRef","hasError","hasSubmitError","useContext","FieldBoundaryContext","current","IterateItemContext","nextFocusElementRef","isNew","determineMode","useCallback","value","initialContainerMode","containerMode","modeOptions","omitFocusManagement","editMode","switchContainerMode","preventUpdate","handleRemove","index","previousContainerMode","openRef","isRemoving","setOpenState","setTimeout","setFocus","state","_localContextRef$curr","_localContextRef$curr2","_localContextRef$curr3","_localContextRef$curr4","elementRef","focus","_nextFocusElementRef$","_nextFocusElementRef$2","handleAnimationEnd","_localContextRef$curr5","_localContextRef$curr6","fulfillRemove","handleRemoveItem","Array","from","parentElement","childNodes","at","e","keepItems","createElement","Provider","HeightAnimation","classnames","duration","keepInDOM","Card","stack","filled","innerSpace","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Iterate/Array/ArrayItemArea.tsx"],"sourcesContent":["import React, { useCallback, useContext, useReducer, useRef } from 'react'\nimport classnames from 'classnames'\nimport { Card, HeightAnimation } from '../../../../components'\nimport IterateItemContext, {\n IterateItemContextState,\n} from '../IterateItemContext'\nimport ArrayItemAreaContext from './ArrayItemAreaContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { Props as FlexContainerProps } from '../../../../components/flex/Container'\nimport { ContainerMode } from './types'\n\n// SSR warning fix: https://gist.github.com/gaearon/e7d97cdf38a2907924ea12e4ebdf3c85\nconst useLayoutEffect =\n typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect\n\nexport type ArrayItemAreaProps = {\n /**\n * Defines the variant of the ViewContainer, EditContainer or PushContainer. Can be `outline`, `filled` or `basic`.\n * Defaults to `outline`.\n */\n variant?: 'outline' | 'basic' | 'filled'\n toolbarVariant?: 'minimumOneItem' | 'custom'\n}\n\nexport type Props = {\n mode: ContainerMode\n open?: boolean | undefined\n ariaLabel?: string\n openDelay?: number\n} & ArrayItemAreaProps\n\nfunction ArrayItemArea(props: Props & FlexContainerProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n\n const {\n mode,\n open,\n ariaLabel,\n onAnimationEnd,\n className,\n children,\n openDelay = 100,\n variant = 'outline',\n toolbarVariant,\n ...restProps\n } = props\n\n const localContextRef = useRef<IterateItemContextState>()\n const { hasError, hasSubmitError } =\n useContext(FieldBoundaryContext) || {}\n localContextRef.current = useContext(IterateItemContext) || {}\n const nextFocusElementRef = useRef<HTMLElement>()\n const { isNew } = localContextRef.current\n\n const determineMode = useCallback(() => {\n const { value, initialContainerMode } = localContextRef.current\n if (initialContainerMode === 'auto') {\n // - Set the container mode to \"edit\" if we have an error\n if (\n hasSubmitError ||\n hasError ||\n !value ||\n (typeof value === 'object' && Object.keys(value).length === 0)\n ) {\n return 'edit'\n }\n }\n }, [hasError, hasSubmitError])\n\n if (determineMode() === 'edit') {\n localContextRef.current.containerMode = 'edit'\n if (!localContextRef.current.modeOptions) {\n localContextRef.current.modeOptions = {}\n }\n localContextRef.current.modeOptions.omitFocusManagement = true\n }\n if (localContextRef.current.containerMode === 'auto') {\n localContextRef.current.containerMode = 'view'\n }\n\n useLayoutEffect(() => {\n if (mode === 'edit') {\n const editMode = determineMode()\n if (editMode) {\n const { switchContainerMode } = localContextRef.current\n switchContainerMode?.(editMode, {\n omitFocusManagement: true,\n preventUpdate: true,\n })\n }\n }\n }, [determineMode, mode])\n\n const { handleRemove, index, previousContainerMode, containerMode } =\n localContextRef.current\n\n const openRef = useRef(open ?? (containerMode === mode && !isNew))\n const isRemoving = useRef(false)\n\n const setOpenState = useCallback((open: boolean) => {\n openRef.current = open\n forceUpdate()\n }, [])\n\n useLayoutEffect(() => {\n if (!isRemoving.current) {\n // - Set the open state, if it's controlled\n if (typeof open !== 'undefined') {\n setOpenState(open)\n } else {\n // - Open the block with animation, if it's in the right mode\n if (openRef.current !== (containerMode === mode)) {\n if (isNew) {\n setTimeout(() => {\n setOpenState(containerMode === mode)\n }, openDelay) // in order to apply the animation\n } else {\n setOpenState(containerMode === mode)\n }\n }\n }\n }\n }, [containerMode, isNew, mode, open, openDelay, setOpenState])\n\n const setFocus = useCallback(\n (state) => {\n if (\n localContextRef.current.modeOptions?.omitFocusManagement !==\n true &&\n !hasSubmitError &&\n containerMode === mode && // ensure we match the correct mode\n containerMode !== previousContainerMode // ensure we have a new mode\n ) {\n if (state === 'opened') {\n localContextRef.current.elementRef?.current?.focus?.()\n } else if (state === 'closed') {\n nextFocusElementRef.current?.focus?.()\n }\n }\n },\n [containerMode, hasSubmitError, mode, previousContainerMode]\n )\n\n // - Remove the block with animation, if it's in the right mode\n const handleAnimationEnd = useCallback(\n (state) => {\n if (!openRef.current && isRemoving.current) {\n isRemoving.current = false\n localContextRef.current.fulfillRemove?.()\n }\n\n setFocus(state)\n onAnimationEnd?.(state)\n },\n [onAnimationEnd, setFocus]\n )\n\n const handleRemoveItem = useCallback(() => {\n try {\n // Because \"previousElementSibling\" did not work in Jest/JSDOM\n nextFocusElementRef.current = Array.from(\n localContextRef.current.elementRef.current.parentElement.childNodes\n ).at(index - 1) as HTMLElement\n } catch (e) {\n //\n }\n isRemoving.current = true\n setOpenState(false)\n handleRemove?.({ keepItems: true })\n }, [handleRemove, index, setOpenState])\n\n return (\n <ArrayItemAreaContext.Provider\n value={{ handleRemoveItem, variant, toolbarVariant }}\n >\n <HeightAnimation\n className={classnames(\n 'dnb-forms-section-block',\n variant && `dnb-forms-section-block--variant-${variant}`,\n isNew && 'dnb-forms-section-block--new',\n hasSubmitError && 'dnb-forms-section-block--error',\n className\n )}\n open={openRef.current}\n onAnimationEnd={handleAnimationEnd}\n duration={450}\n keepInDOM // Ensure fields get mounted so they will sync with the data context\n >\n <Card\n stack\n filled={variant === 'filled'}\n innerSpace={variant === 'basic' ? false : 'small'}\n className=\"dnb-forms-section-block__inner\"\n {...restProps}\n aria-label={ariaLabel}\n >\n {children}\n </Card>\n </HeightAnimation>\n </ArrayItemAreaContext.Provider>\n )\n}\n\nArrayItemArea._supportsSpacingProps = true\nexport default ArrayItemArea\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,mBAAA,GAAAF,sBAAA,CAAAF,OAAA;AAGA,IAAAK,qBAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,qBAAA,GAAAJ,sBAAA,CAAAF,OAAA;AAAuF,MAAAO,SAAA;AAAA,SAAAL,uBAAAM,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAb,wBAAAS,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAW,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAV,GAAA,IAAAa,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAb,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,gBAAAS,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAH,SAAA;AAAA,SAAAI,yBAAAF,MAAA,EAAAG,QAAA,QAAAH,MAAA,yBAAAJ,MAAA,GAAAQ,6BAAA,CAAAJ,MAAA,EAAAG,QAAA,OAAAhB,GAAA,EAAAU,CAAA,MAAAb,MAAA,CAAAqB,qBAAA,QAAAC,gBAAA,GAAAtB,MAAA,CAAAqB,qBAAA,CAAAL,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAAS,gBAAA,CAAAP,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAAmB,gBAAA,CAAAT,CAAA,OAAAM,QAAA,CAAAI,OAAA,CAAApB,GAAA,uBAAAH,MAAA,CAAAI,SAAA,CAAAoB,oBAAA,CAAAlB,IAAA,CAAAU,MAAA,EAAAb,GAAA,aAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,cAAAS,MAAA;AAAA,SAAAQ,8BAAAJ,MAAA,EAAAG,QAAA,QAAAH,MAAA,yBAAAJ,MAAA,WAAAa,UAAA,GAAAzB,MAAA,CAAA0B,IAAA,CAAAV,MAAA,OAAAb,GAAA,EAAAU,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAY,UAAA,CAAAV,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAAsB,UAAA,CAAAZ,CAAA,OAAAM,QAAA,CAAAI,OAAA,CAAApB,GAAA,kBAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,YAAAS,MAAA;AAKvF,MAAMe,eAAe,GACnB,OAAOC,MAAM,KAAK,WAAW,GAAGC,cAAK,CAACC,SAAS,GAAGD,cAAK,CAACF,eAAe;AAkBzE,SAASI,aAAaA,CAACC,KAAiC,EAAE;EACxD,MAAM,GAAGC,WAAW,CAAC,GAAG,IAAAC,iBAAU,EAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;EAElD,MAAM;MACJC,IAAI;MACJC,IAAI;MACJC,SAAS;MACTC,cAAc;MACdC,SAAS;MACTC,QAAQ;MACRC,SAAS,GAAG,GAAG;MACfC,OAAO,GAAG,SAAS;MACnBC;IAEF,CAAC,GAAGX,KAAK;IADJY,SAAS,GAAA1B,wBAAA,CACVc,KAAK,EAAA9C,SAAA;EAET,MAAM2D,eAAe,GAAG,IAAAC,aAAM,EAA0B,CAAC;EACzD,MAAM;IAAEC,QAAQ;IAAEC;EAAe,CAAC,GAChC,IAAAC,iBAAU,EAACC,6BAAoB,CAAC,IAAI,CAAC,CAAC;EACxCL,eAAe,CAACM,OAAO,GAAG,IAAAF,iBAAU,EAACG,2BAAkB,CAAC,IAAI,CAAC,CAAC;EAC9D,MAAMC,mBAAmB,GAAG,IAAAP,aAAM,EAAc,CAAC;EACjD,MAAM;IAAEQ;EAAM,CAAC,GAAGT,eAAe,CAACM,OAAO;EAEzC,MAAMI,aAAa,GAAG,IAAAC,kBAAW,EAAC,MAAM;IACtC,MAAM;MAAEC,KAAK;MAAEC;IAAqB,CAAC,GAAGb,eAAe,CAACM,OAAO;IAC/D,IAAIO,oBAAoB,KAAK,MAAM,EAAE;MAEnC,IACEV,cAAc,IACdD,QAAQ,IACR,CAACU,KAAK,IACL,OAAOA,KAAK,KAAK,QAAQ,IAAIzD,MAAM,CAAC0B,IAAI,CAAC+B,KAAK,CAAC,CAAC1C,MAAM,KAAK,CAAE,EAC9D;QACA,OAAO,MAAM;MACf;IACF;EACF,CAAC,EAAE,CAACgC,QAAQ,EAAEC,cAAc,CAAC,CAAC;EAE9B,IAAIO,aAAa,CAAC,CAAC,KAAK,MAAM,EAAE;IAC9BV,eAAe,CAACM,OAAO,CAACQ,aAAa,GAAG,MAAM;IAC9C,IAAI,CAACd,eAAe,CAACM,OAAO,CAACS,WAAW,EAAE;MACxCf,eAAe,CAACM,OAAO,CAACS,WAAW,GAAG,CAAC,CAAC;IAC1C;IACAf,eAAe,CAACM,OAAO,CAACS,WAAW,CAACC,mBAAmB,GAAG,IAAI;EAChE;EACA,IAAIhB,eAAe,CAACM,OAAO,CAACQ,aAAa,KAAK,MAAM,EAAE;IACpDd,eAAe,CAACM,OAAO,CAACQ,aAAa,GAAG,MAAM;EAChD;EAEAhC,eAAe,CAAC,MAAM;IACpB,IAAIQ,IAAI,KAAK,MAAM,EAAE;MACnB,MAAM2B,QAAQ,GAAGP,aAAa,CAAC,CAAC;MAChC,IAAIO,QAAQ,EAAE;QACZ,MAAM;UAAEC;QAAoB,CAAC,GAAGlB,eAAe,CAACM,OAAO;QACvDY,mBAAmB,aAAnBA,mBAAmB,uBAAnBA,mBAAmB,CAAGD,QAAQ,EAAE;UAC9BD,mBAAmB,EAAE,IAAI;UACzBG,aAAa,EAAE;QACjB,CAAC,CAAC;MACJ;IACF;EACF,CAAC,EAAE,CAACT,aAAa,EAAEpB,IAAI,CAAC,CAAC;EAEzB,MAAM;IAAE8B,YAAY;IAAEC,KAAK;IAAEC,qBAAqB;IAAER;EAAc,CAAC,GACjEd,eAAe,CAACM,OAAO;EAEzB,MAAMiB,OAAO,GAAG,IAAAtB,aAAM,EAACV,IAAI,aAAJA,IAAI,cAAJA,IAAI,GAAKuB,aAAa,KAAKxB,IAAI,IAAI,CAACmB,KAAM,CAAC;EAClE,MAAMe,UAAU,GAAG,IAAAvB,aAAM,EAAC,KAAK,CAAC;EAEhC,MAAMwB,YAAY,GAAG,IAAAd,kBAAW,EAAEpB,IAAa,IAAK;IAClDgC,OAAO,CAACjB,OAAO,GAAGf,IAAI;IACtBH,WAAW,CAAC,CAAC;EACf,CAAC,EAAE,EAAE,CAAC;EAENN,eAAe,CAAC,MAAM;IACpB,IAAI,CAAC0C,UAAU,CAAClB,OAAO,EAAE;MAEvB,IAAI,OAAOf,IAAI,KAAK,WAAW,EAAE;QAC/BkC,YAAY,CAAClC,IAAI,CAAC;MACpB,CAAC,MAAM;QAEL,IAAIgC,OAAO,CAACjB,OAAO,MAAMQ,aAAa,KAAKxB,IAAI,CAAC,EAAE;UAChD,IAAImB,KAAK,EAAE;YACTiB,UAAU,CAAC,MAAM;cACfD,YAAY,CAACX,aAAa,KAAKxB,IAAI,CAAC;YACtC,CAAC,EAAEM,SAAS,CAAC;UACf,CAAC,MAAM;YACL6B,YAAY,CAACX,aAAa,KAAKxB,IAAI,CAAC;UACtC;QACF;MACF;IACF;EACF,CAAC,EAAE,CAACwB,aAAa,EAAEL,KAAK,EAAEnB,IAAI,EAAEC,IAAI,EAAEK,SAAS,EAAE6B,YAAY,CAAC,CAAC;EAE/D,MAAME,QAAQ,GAAG,IAAAhB,kBAAW,EACzBiB,KAAK,IAAK;IAAA,IAAAC,qBAAA;IACT,IACE,EAAAA,qBAAA,GAAA7B,eAAe,CAACM,OAAO,CAACS,WAAW,cAAAc,qBAAA,uBAAnCA,qBAAA,CAAqCb,mBAAmB,MACtD,IAAI,IACN,CAACb,cAAc,IACfW,aAAa,KAAKxB,IAAI,IACtBwB,aAAa,KAAKQ,qBAAqB,EACvC;MACA,IAAIM,KAAK,KAAK,QAAQ,EAAE;QAAA,IAAAE,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA;QACtB,CAAAF,sBAAA,GAAA9B,eAAe,CAACM,OAAO,CAAC2B,UAAU,cAAAH,sBAAA,wBAAAC,sBAAA,GAAlCD,sBAAA,CAAoCxB,OAAO,cAAAyB,sBAAA,wBAAAC,sBAAA,GAA3CD,sBAAA,CAA6CG,KAAK,cAAAF,sBAAA,uBAAlDA,sBAAA,CAAAvE,IAAA,CAAAsE,sBAAqD,CAAC;MACxD,CAAC,MAAM,IAAIH,KAAK,KAAK,QAAQ,EAAE;QAAA,IAAAO,qBAAA,EAAAC,sBAAA;QAC7B,CAAAD,qBAAA,GAAA3B,mBAAmB,CAACF,OAAO,cAAA6B,qBAAA,wBAAAC,sBAAA,GAA3BD,qBAAA,CAA6BD,KAAK,cAAAE,sBAAA,uBAAlCA,sBAAA,CAAA3E,IAAA,CAAA0E,qBAAqC,CAAC;MACxC;IACF;EACF,CAAC,EACD,CAACrB,aAAa,EAAEX,cAAc,EAAEb,IAAI,EAAEgC,qBAAqB,CAC7D,CAAC;EAGD,MAAMe,kBAAkB,GAAG,IAAA1B,kBAAW,EACnCiB,KAAK,IAAK;IACT,IAAI,CAACL,OAAO,CAACjB,OAAO,IAAIkB,UAAU,CAAClB,OAAO,EAAE;MAAA,IAAAgC,sBAAA,EAAAC,sBAAA;MAC1Cf,UAAU,CAAClB,OAAO,GAAG,KAAK;MAC1B,CAAAgC,sBAAA,IAAAC,sBAAA,GAAAvC,eAAe,CAACM,OAAO,EAACkC,aAAa,cAAAF,sBAAA,uBAArCA,sBAAA,CAAA7E,IAAA,CAAA8E,sBAAwC,CAAC;IAC3C;IAEAZ,QAAQ,CAACC,KAAK,CAAC;IACfnC,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAGmC,KAAK,CAAC;EACzB,CAAC,EACD,CAACnC,cAAc,EAAEkC,QAAQ,CAC3B,CAAC;EAED,MAAMc,gBAAgB,GAAG,IAAA9B,kBAAW,EAAC,MAAM;IACzC,IAAI;MAEFH,mBAAmB,CAACF,OAAO,GAAGoC,KAAK,CAACC,IAAI,CACtC3C,eAAe,CAACM,OAAO,CAAC2B,UAAU,CAAC3B,OAAO,CAACsC,aAAa,CAACC,UAC3D,CAAC,CAACC,EAAE,CAACzB,KAAK,GAAG,CAAC,CAAgB;IAChC,CAAC,CAAC,OAAO0B,CAAC,EAAE,CAEZ;IACAvB,UAAU,CAAClB,OAAO,GAAG,IAAI;IACzBmB,YAAY,CAAC,KAAK,CAAC;IACnBL,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAG;MAAE4B,SAAS,EAAE;IAAK,CAAC,CAAC;EACrC,CAAC,EAAE,CAAC5B,YAAY,EAAEC,KAAK,EAAEI,YAAY,CAAC,CAAC;EAEvC,OACE7F,MAAA,CAAAY,OAAA,CAAAyG,aAAA,CAAC9G,qBAAA,CAAAK,OAAoB,CAAC0G,QAAQ;IAC5BtC,KAAK,EAAE;MAAE6B,gBAAgB;MAAE5C,OAAO;MAAEC;IAAe;EAAE,GAErDlE,MAAA,CAAAY,OAAA,CAAAyG,aAAA,CAAChH,WAAA,CAAAkH,eAAe;IACdzD,SAAS,EAAE,IAAA0D,mBAAU,EACnB,yBAAyB,EAIzB1D,SAAS,EAHTG,OAAO,IAAK,oCAAmCA,OAAQ,EAAC,EACxDY,KAAK,IAAI,8BAA8B,EACvCN,cAAc,IAAI,gCAEpB,CAAE;IACFZ,IAAI,EAAEgC,OAAO,CAACjB,OAAQ;IACtBb,cAAc,EAAE4C,kBAAmB;IACnCgB,QAAQ,EAAE,GAAI;IACdC,SAAS;EAAA,GAET1H,MAAA,CAAAY,OAAA,CAAAyG,aAAA,CAAChH,WAAA,CAAAsH,IAAI,EAAA3F,QAAA;IACH4F,KAAK;IACLC,MAAM,EAAE5D,OAAO,KAAK,QAAS;IAC7B6D,UAAU,EAAE7D,OAAO,KAAK,OAAO,GAAG,KAAK,GAAG,OAAQ;IAClDH,SAAS,EAAC;EAAgC,GACtCK,SAAS;IACb,cAAYP;EAAU,IAErBG,QACG,CACS,CACY,CAAC;AAEpC;AAEAT,aAAa,CAACyE,qBAAqB,GAAG,IAAI;AAAA,IAAAC,QAAA,GAC3B1E,aAAa;AAAA2E,OAAA,CAAArH,OAAA,GAAAoH,QAAA"}
1
+ {"version":3,"file":"ArrayItemArea.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_IterateItemContext","_ArrayItemAreaContext","_FieldBoundaryContext","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","useLayoutEffect","window","React","useEffect","ArrayItemArea","props","forceUpdate","useReducer","mode","open","ariaLabel","onAnimationEnd","className","children","openDelay","variant","toolbarVariant","restProps","localContextRef","useRef","hasError","hasSubmitError","useContext","FieldBoundaryContext","current","IterateItemContext","nextFocusElementRef","isNew","determineMode","useCallback","value","initialContainerMode","containerMode","modeOptions","omitFocusManagement","editMode","switchContainerMode","preventUpdate","handleRemove","index","previousContainerMode","openRef","isRemoving","setOpenState","setTimeout","setFocus","state","_localContextRef$curr","_localContextRef$curr2","_localContextRef$curr3","_localContextRef$curr4","elementRef","focus","_nextFocusElementRef$","_nextFocusElementRef$2","handleAnimationEnd","_localContextRef$curr5","_localContextRef$curr6","fulfillRemove","handleRemoveItem","Array","from","parentElement","childNodes","at","e","keepItems","createElement","Provider","divider","HeightAnimation","classnames","duration","keepInDOM","Card","stack","filled","innerSpace","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Iterate/Array/ArrayItemArea.tsx"],"sourcesContent":["import React, { useCallback, useContext, useReducer, useRef } from 'react'\nimport classnames from 'classnames'\nimport { Card, HeightAnimation } from '../../../../components'\nimport IterateItemContext, {\n IterateItemContextState,\n} from '../IterateItemContext'\nimport ArrayItemAreaContext from './ArrayItemAreaContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { Props as FlexContainerProps } from '../../../../components/flex/Container'\nimport { ContainerMode } from './types'\n\n// SSR warning fix: https://gist.github.com/gaearon/e7d97cdf38a2907924ea12e4ebdf3c85\nconst useLayoutEffect =\n typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect\n\nexport type ArrayItemAreaProps = {\n /**\n * Defines the variant of the ViewContainer, EditContainer or PushContainer. Can be `outline`, `filled` or `basic`.\n * Defaults to `outline`.\n */\n variant?: 'outline' | 'basic' | 'filled'\n toolbarVariant?: 'minimumOneItem' | 'custom'\n}\n\nexport type Props = {\n mode: ContainerMode\n open?: boolean | undefined\n ariaLabel?: string\n openDelay?: number\n} & ArrayItemAreaProps\n\nfunction ArrayItemArea(props: Props & FlexContainerProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n\n const {\n mode,\n open,\n ariaLabel,\n onAnimationEnd,\n className,\n children,\n openDelay = 100,\n variant = 'outline',\n toolbarVariant,\n ...restProps\n } = props\n\n const localContextRef = useRef<IterateItemContextState>()\n const { hasError, hasSubmitError } =\n useContext(FieldBoundaryContext) || {}\n localContextRef.current = useContext(IterateItemContext) || {}\n const nextFocusElementRef = useRef<HTMLElement>()\n const { isNew } = localContextRef.current\n\n const determineMode = useCallback(() => {\n const { value, initialContainerMode } = localContextRef.current\n if (initialContainerMode === 'auto') {\n // - Set the container mode to \"edit\" if we have an error\n if (\n hasSubmitError ||\n hasError ||\n !value ||\n (typeof value === 'object' && Object.keys(value).length === 0)\n ) {\n return 'edit'\n }\n }\n }, [hasError, hasSubmitError])\n\n if (determineMode() === 'edit') {\n localContextRef.current.containerMode = 'edit'\n if (!localContextRef.current.modeOptions) {\n localContextRef.current.modeOptions = {}\n }\n localContextRef.current.modeOptions.omitFocusManagement = true\n }\n if (localContextRef.current.containerMode === 'auto') {\n localContextRef.current.containerMode = 'view'\n }\n\n useLayoutEffect(() => {\n if (mode === 'edit') {\n const editMode = determineMode()\n if (editMode) {\n const { switchContainerMode } = localContextRef.current\n switchContainerMode?.(editMode, {\n omitFocusManagement: true,\n preventUpdate: true,\n })\n }\n }\n }, [determineMode, mode])\n\n const { handleRemove, index, previousContainerMode, containerMode } =\n localContextRef.current\n\n const openRef = useRef(open ?? (containerMode === mode && !isNew))\n const isRemoving = useRef(false)\n\n const setOpenState = useCallback((open: boolean) => {\n openRef.current = open\n forceUpdate()\n }, [])\n\n useLayoutEffect(() => {\n if (!isRemoving.current) {\n // - Set the open state, if it's controlled\n if (typeof open !== 'undefined') {\n setOpenState(open)\n } else {\n // - Open the block with animation, if it's in the right mode\n if (openRef.current !== (containerMode === mode)) {\n if (isNew) {\n setTimeout(() => {\n setOpenState(containerMode === mode)\n }, openDelay) // in order to apply the animation\n } else {\n setOpenState(containerMode === mode)\n }\n }\n }\n }\n }, [containerMode, isNew, mode, open, openDelay, setOpenState])\n\n const setFocus = useCallback(\n (state) => {\n if (\n localContextRef.current.modeOptions?.omitFocusManagement !==\n true &&\n !hasSubmitError &&\n containerMode === mode && // ensure we match the correct mode\n containerMode !== previousContainerMode // ensure we have a new mode\n ) {\n if (state === 'opened') {\n localContextRef.current.elementRef?.current?.focus?.()\n } else if (state === 'closed') {\n nextFocusElementRef.current?.focus?.()\n }\n }\n },\n [containerMode, hasSubmitError, mode, previousContainerMode]\n )\n\n // - Remove the block with animation, if it's in the right mode\n const handleAnimationEnd = useCallback(\n (state) => {\n if (!openRef.current && isRemoving.current) {\n isRemoving.current = false\n localContextRef.current.fulfillRemove?.()\n }\n\n setFocus(state)\n onAnimationEnd?.(state)\n },\n [onAnimationEnd, setFocus]\n )\n\n const handleRemoveItem = useCallback(() => {\n try {\n // Because \"previousElementSibling\" did not work in Jest/JSDOM\n nextFocusElementRef.current = Array.from(\n localContextRef.current.elementRef.current.parentElement.childNodes\n ).at(index - 1) as HTMLElement\n } catch (e) {\n //\n }\n isRemoving.current = true\n setOpenState(false)\n handleRemove?.({ keepItems: true })\n }, [handleRemove, index, setOpenState])\n\n return (\n <ArrayItemAreaContext.Provider\n value={{\n handleRemoveItem,\n variant,\n toolbarVariant,\n divider: restProps.divider,\n }}\n >\n <HeightAnimation\n className={classnames(\n 'dnb-forms-section-block',\n variant && `dnb-forms-section-block--variant-${variant}`,\n isNew && 'dnb-forms-section-block--new',\n hasSubmitError && 'dnb-forms-section-block--error',\n className\n )}\n open={openRef.current}\n onAnimationEnd={handleAnimationEnd}\n duration={450}\n keepInDOM // Ensure fields get mounted so they will sync with the data context\n >\n <Card\n stack\n filled={variant === 'filled'}\n innerSpace={variant === 'basic' ? false : 'small'}\n className=\"dnb-forms-section-block__inner\"\n {...restProps}\n aria-label={ariaLabel}\n >\n {children}\n </Card>\n </HeightAnimation>\n </ArrayItemAreaContext.Provider>\n )\n}\n\nArrayItemArea._supportsSpacingProps = true\nexport default ArrayItemArea\n"],"mappings":"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"}
@@ -1,9 +1,11 @@
1
1
  /// <reference types="react" />
2
2
  import { ArrayItemAreaProps } from './ArrayItemArea';
3
+ import { BasicProps } from '../../../../components/flex/Container';
3
4
  type ArrayItemAreaContext = {
4
5
  handleRemoveItem?: () => void;
5
6
  variant?: ArrayItemAreaProps['variant'];
6
7
  toolbarVariant?: ArrayItemAreaProps['toolbarVariant'];
8
+ divider?: BasicProps['divider'];
7
9
  };
8
10
  declare const ArrayItemAreaContext: import("react").Context<ArrayItemAreaContext>;
9
11
  export default ArrayItemAreaContext;
@@ -1 +1 @@
1
- {"version":3,"file":"ArrayItemAreaContext.js","names":["_react","require","ArrayItemAreaContext","createContext","_default","exports","default"],"sources":["../../../../../../src/extensions/forms/Iterate/Array/ArrayItemAreaContext.ts"],"sourcesContent":["import { createContext } from 'react'\nimport { ArrayItemAreaProps } from './ArrayItemArea'\n\ntype ArrayItemAreaContext = {\n handleRemoveItem?: () => void\n variant?: ArrayItemAreaProps['variant']\n toolbarVariant?: ArrayItemAreaProps['toolbarVariant']\n}\n\nconst ArrayItemAreaContext = createContext<ArrayItemAreaContext>(null)\n\nexport default ArrayItemAreaContext\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AASA,MAAMC,oBAAoB,GAAG,IAAAC,oBAAa,EAAuB,IAAI,CAAC;AAAA,IAAAC,QAAA,GAEvDF,oBAAoB;AAAAG,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
1
+ {"version":3,"file":"ArrayItemAreaContext.js","names":["_react","require","ArrayItemAreaContext","createContext","_default","exports","default"],"sources":["../../../../../../src/extensions/forms/Iterate/Array/ArrayItemAreaContext.ts"],"sourcesContent":["import { createContext } from 'react'\nimport { ArrayItemAreaProps } from './ArrayItemArea'\nimport { BasicProps } from '../../../../components/flex/Container'\n\ntype ArrayItemAreaContext = {\n handleRemoveItem?: () => void\n variant?: ArrayItemAreaProps['variant']\n toolbarVariant?: ArrayItemAreaProps['toolbarVariant']\n divider?: BasicProps['divider']\n}\n\nconst ArrayItemAreaContext = createContext<ArrayItemAreaContext>(null)\n\nexport default ArrayItemAreaContext\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAWA,MAAMC,oBAAoB,GAAG,IAAAC,oBAAa,EAAuB,IAAI,CAAC;AAAA,IAAAC,QAAA,GAEvDF,oBAAoB;AAAAG,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
@@ -132,7 +132,8 @@ function PushContainer(props) {
132
132
  value: newItemContextProps
133
133
  }, _react.default.createElement(_Array.default, {
134
134
  path: "/pushContainerItems",
135
- containerMode: showOpenButton ? 'view' : 'edit'
135
+ containerMode: showOpenButton ? 'view' : 'edit',
136
+ withoutFlex: true
136
137
  }, _react.default.createElement(NewContainer, _extends({
137
138
  title: title,
138
139
  openButton: openButton,
@@ -1 +1 @@
1
- {"version":3,"file":"PushContainer.js","names":["_react","_interopRequireWildcard","require","_Isolation","_interopRequireDefault","_PushContainerContext","_IterateItemContext","_Context","_useDataValue","_EditContainer","_Array","_OpenButton","_components","_hooks","_Toolbar","_hooks2","_Provider","_excluded","_excluded2","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","PushContainer","props","data","dataProp","defaultData","defaultDataProp","isolatedData","bubbleValidation","path","title","children","openButton","showOpenButtonWhen","onCommit","rest","commitHandleRef","useRef","switchContainerModeRef","entries","moveValueToPath","useDataValue","setNextContainerMode","useSwitchContainerMode","hasReachedLimit","setShowStatus","useArrayLimit","cancelHandler","useCallback","showOpenButton","newItemContextProps","switchContainerMode","current","useMemo","pushContainerItems","clearedData","emptyData","_data$pushContainerIt","firstItem","createElement","transformOnCommit","_ref","options","clearData","preventCommit","_switchContainerModeR","Provider","containerMode","NewContainer","_ref2","_DoneButton","_CancelButton","useContext","IterateItemContext","createButton","useTranslation","IteratePushContainer","DataContext","restoreOriginalValue","toolbar","Consumer","context","Flex","Horizontal","gap","DoneButton","text","CancelButton","onClick","Fragment","open","HeightAnimation","OpenButton","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainer.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo, useRef } from 'react'\nimport Isolation from '../../Form/Isolation'\nimport PushContainerContext from './PushContainerContext'\nimport IterateItemContext from '../IterateItemContext'\nimport DataContext from '../../DataContext/Context'\nimport useDataValue from '../../hooks/useDataValue'\nimport EditContainer, { CancelButton, DoneButton } from '../EditContainer'\nimport IterateArray, { ContainerMode } from '../Array'\nimport OpenButton from './OpenButton'\nimport { Flex, HeightAnimation } from '../../../../components'\nimport { OnCommit, Path } from '../../types'\nimport { SpacingProps } from '../../../../shared/types'\nimport { useArrayLimit, useSwitchContainerMode } from '../hooks'\nimport Toolbar from '../Toolbar'\nimport { useTranslation } from '../../hooks'\nimport { ArrayItemAreaProps } from '../Array/ArrayItemArea'\nimport { clearedData } from '../../DataContext/Provider'\n\nexport type Props = {\n /**\n * The path to the array to add the new item to.\n */\n path: Path\n\n /**\n * The title of the container.\n */\n title?: React.ReactNode\n\n /**\n * The button to open container.\n */\n openButton?: React.ReactNode\n\n /**\n * Define when the \"open button\" should be shown.\n * Should be a function that returns a boolean.\n */\n showOpenButtonWhen?: (list: unknown[]) => boolean\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n data?: unknown | Record<string, unknown>\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n defaultData?: unknown | Record<string, unknown>\n\n /**\n * Provide additional data that will be put into the root of the isolated data context (parallel to \"/pushContainerItems/0\").\n */\n isolatedData?: Record<string, unknown>\n\n /**\n * Prevent the form from being submitted when there are fields with errors inside the PushContainer.\n */\n bubbleValidation?: boolean\n\n /**\n * A custom toolbar to be shown below the container.\n */\n toolbar?: React.ReactNode\n\n /**\n * Will be called when the user clicks on the \"Done\" button.\n */\n onCommit?: OnCommit\n\n /**\n * The container contents.\n */\n children: React.ReactNode\n}\n\nexport type AllProps = Props & SpacingProps & ArrayItemAreaProps\n\nfunction PushContainer(props: AllProps) {\n const {\n data: dataProp,\n defaultData: defaultDataProp,\n isolatedData,\n bubbleValidation,\n path,\n title,\n children,\n openButton,\n showOpenButtonWhen,\n onCommit,\n ...rest\n } = props\n\n const commitHandleRef = useRef<() => void>()\n const switchContainerModeRef = useRef<(mode: ContainerMode) => void>()\n const { value: entries = [], moveValueToPath } = useDataValue<\n Array<unknown>\n >({ path })\n\n const { setNextContainerMode } = useSwitchContainerMode({ path })\n const { hasReachedLimit, setShowStatus } = useArrayLimit({\n path,\n })\n const cancelHandler = useCallback(() => {\n if (hasReachedLimit) {\n setShowStatus(false)\n }\n }, [hasReachedLimit, setShowStatus])\n\n const showOpenButton = showOpenButtonWhen?.(entries)\n const newItemContextProps: PushContainerContext = {\n path,\n entries,\n commitHandleRef,\n switchContainerMode: switchContainerModeRef.current,\n }\n\n const data = useMemo(() => {\n if (defaultDataProp) {\n return // don't return a fallback, because we want to use the defaultData\n }\n return {\n ...isolatedData,\n pushContainerItems: [dataProp ?? clearedData],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n const defaultData = useMemo(() => {\n return {\n ...(!dataProp ? isolatedData : null),\n pushContainerItems: [defaultDataProp ?? clearedData],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n const emptyData = useCallback(\n (data: { pushContainerItems: unknown[] }) => {\n const firstItem = data.pushContainerItems?.[0]\n if (firstItem === null || typeof firstItem !== 'object') {\n return {\n ...isolatedData,\n pushContainerItems: [null],\n }\n }\n return defaultData\n },\n [defaultData, isolatedData]\n )\n\n return (\n <Isolation\n data={data}\n defaultData={defaultData}\n emptyData={emptyData}\n bubbleValidation={bubbleValidation}\n commitHandleRef={commitHandleRef}\n transformOnCommit={({ pushContainerItems }) => {\n return moveValueToPath(path, [...entries, ...pushContainerItems])\n }}\n onCommit={(data, options) => {\n const { clearData, preventCommit } = options\n if (hasReachedLimit) {\n preventCommit()\n setShowStatus(true)\n } else {\n setNextContainerMode('view')\n switchContainerModeRef.current?.('view')\n clearData()\n }\n onCommit?.(data, options)\n }}\n >\n <PushContainerContext.Provider value={newItemContextProps}>\n <IterateArray\n path=\"/pushContainerItems\"\n containerMode={showOpenButton ? 'view' : 'edit'}\n >\n <NewContainer\n title={title}\n openButton={openButton}\n switchContainerModeRef={switchContainerModeRef}\n showOpenButton={showOpenButton}\n cancelHandler={cancelHandler}\n {...rest}\n >\n {children}\n </NewContainer>\n </IterateArray>\n </PushContainerContext.Provider>\n </Isolation>\n )\n}\n\nfunction NewContainer({\n title,\n openButton,\n showOpenButton,\n switchContainerModeRef,\n cancelHandler,\n children,\n ...rest\n}) {\n const { containerMode, switchContainerMode } =\n useContext(IterateItemContext) || {}\n switchContainerModeRef.current = switchContainerMode\n const { createButton } = useTranslation().IteratePushContainer\n const { clearData } = useContext(DataContext) || {}\n const restoreOriginalValue = useCallback(() => {\n clearData?.()\n }, [clearData])\n\n const toolbar = (\n <Toolbar>\n <IterateItemContext.Consumer>\n {(context) => {\n const newItemContextProps = {\n ...context,\n restoreOriginalValue,\n }\n return (\n <IterateItemContext.Provider value={newItemContextProps}>\n <Flex.Horizontal gap=\"large\">\n <DoneButton text={createButton} />\n {showOpenButton && (\n <CancelButton onClick={cancelHandler} />\n )}\n </Flex.Horizontal>\n </IterateItemContext.Provider>\n )\n }}\n </IterateItemContext.Consumer>\n </Toolbar>\n )\n\n return (\n <>\n <EditContainer\n open={!showOpenButton || containerMode === 'edit'}\n title={title}\n toolbar={toolbar}\n {...rest}\n >\n {children}\n </EditContainer>\n\n {openButton && typeof showOpenButton === 'boolean' && (\n <HeightAnimation open={showOpenButton && containerMode === 'view'}>\n {openButton}\n </HeightAnimation>\n )}\n </>\n )\n}\n\nPushContainer.OpenButton = OpenButton\nPushContainer._supportsSpacingProps = true\n\nexport default PushContainer\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,qBAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,mBAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,QAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,aAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,cAAA,GAAAR,uBAAA,CAAAC,OAAA;AACA,IAAAQ,MAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,WAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,WAAA,GAAAV,OAAA;AAGA,IAAAW,MAAA,GAAAX,OAAA;AACA,IAAAY,QAAA,GAAAV,sBAAA,CAAAF,OAAA;AACA,IAAAa,OAAA,GAAAb,OAAA;AAEA,IAAAc,SAAA,GAAAd,OAAA;AAAwD,MAAAe,SAAA;EAAAC,UAAA;AAAA,SAAAd,uBAAAe,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAtB,wBAAAkB,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAW,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAV,GAAA,IAAAa,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAb,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,gBAAAS,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAH,SAAA;AAAA,SAAAI,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAArB,MAAA,CAAAqB,IAAA,CAAAF,MAAA,OAAAnB,MAAA,CAAAsB,qBAAA,QAAAC,OAAA,GAAAvB,MAAA,CAAAsB,qBAAA,CAAAH,MAAA,GAAAC,cAAA,KAAAG,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAzB,MAAA,CAAAE,wBAAA,CAAAiB,MAAA,EAAAM,GAAA,EAAAC,UAAA,OAAAL,IAAA,CAAAM,IAAA,CAAAV,KAAA,CAAAI,IAAA,EAAAE,OAAA,YAAAF,IAAA;AAAA,SAAAO,cAAAhB,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAK,OAAA,CAAAlB,MAAA,CAAAgB,MAAA,OAAAa,OAAA,WAAA1B,GAAA,IAAA2B,eAAA,CAAAlB,MAAA,EAAAT,GAAA,EAAAa,MAAA,CAAAb,GAAA,SAAAH,MAAA,CAAA+B,yBAAA,GAAA/B,MAAA,CAAAgC,gBAAA,CAAApB,MAAA,EAAAZ,MAAA,CAAA+B,yBAAA,CAAAf,MAAA,KAAAE,OAAA,CAAAlB,MAAA,CAAAgB,MAAA,GAAAa,OAAA,WAAA1B,GAAA,IAAAH,MAAA,CAAAC,cAAA,CAAAW,MAAA,EAAAT,GAAA,EAAAH,MAAA,CAAAE,wBAAA,CAAAc,MAAA,EAAAb,GAAA,iBAAAS,MAAA;AAAA,SAAAkB,gBAAA3C,GAAA,EAAAgB,GAAA,EAAA8B,KAAA,IAAA9B,GAAA,GAAA+B,cAAA,CAAA/B,GAAA,OAAAA,GAAA,IAAAhB,GAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAd,GAAA,EAAAgB,GAAA,IAAA8B,KAAA,EAAAA,KAAA,EAAAP,UAAA,QAAAS,YAAA,QAAAC,QAAA,oBAAAjD,GAAA,CAAAgB,GAAA,IAAA8B,KAAA,WAAA9C,GAAA;AAAA,SAAA+C,eAAAG,GAAA,QAAAlC,GAAA,GAAAmC,YAAA,CAAAD,GAAA,2BAAAlC,GAAA,gBAAAA,GAAA,GAAAoC,MAAA,CAAApC,GAAA;AAAA,SAAAmC,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAApC,IAAA,CAAAkC,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA;AAAA,SAAAS,yBAAAjC,MAAA,EAAAkC,QAAA,QAAAlC,MAAA,yBAAAJ,MAAA,GAAAuC,6BAAA,CAAAnC,MAAA,EAAAkC,QAAA,OAAA/C,GAAA,EAAAU,CAAA,MAAAb,MAAA,CAAAsB,qBAAA,QAAA8B,gBAAA,GAAApD,MAAA,CAAAsB,qBAAA,CAAAN,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAAuC,gBAAA,CAAArC,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAAiD,gBAAA,CAAAvC,CAAA,OAAAqC,QAAA,CAAAG,OAAA,CAAAlD,GAAA,uBAAAH,MAAA,CAAAI,SAAA,CAAAkD,oBAAA,CAAAhD,IAAA,CAAAU,MAAA,EAAAb,GAAA,aAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,cAAAS,MAAA;AAAA,SAAAuC,8BAAAnC,MAAA,EAAAkC,QAAA,QAAAlC,MAAA,yBAAAJ,MAAA,WAAA2C,UAAA,GAAAvD,MAAA,CAAAqB,IAAA,CAAAL,MAAA,OAAAb,GAAA,EAAAU,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAA0C,UAAA,CAAAxC,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAAoD,UAAA,CAAA1C,CAAA,OAAAqC,QAAA,CAAAG,OAAA,CAAAlD,GAAA,kBAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,YAAAS,MAAA;AA8DxD,SAAS4C,aAAaA,CAACC,KAAe,EAAE;EACtC,MAAM;MACJC,IAAI,EAAEC,QAAQ;MACdC,WAAW,EAAEC,eAAe;MAC5BC,YAAY;MACZC,gBAAgB;MAChBC,IAAI;MACJC,KAAK;MACLC,QAAQ;MACRC,UAAU;MACVC,kBAAkB;MAClBC;IAEF,CAAC,GAAGZ,KAAK;IADJa,IAAI,GAAArB,wBAAA,CACLQ,KAAK,EAAAxE,SAAA;EAET,MAAMsF,eAAe,GAAG,IAAAC,aAAM,EAAa,CAAC;EAC5C,MAAMC,sBAAsB,GAAG,IAAAD,aAAM,EAAgC,CAAC;EACtE,MAAM;IAAEvC,KAAK,EAAEyC,OAAO,GAAG,EAAE;IAAEC;EAAgB,CAAC,GAAG,IAAAC,qBAAY,EAE3D;IAAEZ;EAAK,CAAC,CAAC;EAEX,MAAM;IAAEa;EAAqB,CAAC,GAAG,IAAAC,6BAAsB,EAAC;IAAEd;EAAK,CAAC,CAAC;EACjE,MAAM;IAAEe,eAAe;IAAEC;EAAc,CAAC,GAAG,IAAAC,oBAAa,EAAC;IACvDjB;EACF,CAAC,CAAC;EACF,MAAMkB,aAAa,GAAG,IAAAC,kBAAW,EAAC,MAAM;IACtC,IAAIJ,eAAe,EAAE;MACnBC,aAAa,CAAC,KAAK,CAAC;IACtB;EACF,CAAC,EAAE,CAACD,eAAe,EAAEC,aAAa,CAAC,CAAC;EAEpC,MAAMI,cAAc,GAAGhB,kBAAkB,aAAlBA,kBAAkB,uBAAlBA,kBAAkB,CAAGM,OAAO,CAAC;EACpD,MAAMW,mBAAyC,GAAG;IAChDrB,IAAI;IACJU,OAAO;IACPH,eAAe;IACfe,mBAAmB,EAAEb,sBAAsB,CAACc;EAC9C,CAAC;EAED,MAAM7B,IAAI,GAAG,IAAA8B,cAAO,EAAC,MAAM;IACzB,IAAI3B,eAAe,EAAE;MACnB;IACF;IACA,OAAAjC,aAAA,CAAAA,aAAA,KACKkC,YAAY;MACf2B,kBAAkB,EAAE,CAAC9B,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAI+B,qBAAW;IAAC;EAEjD,CAAC,EAAE,CAAC/B,QAAQ,EAAEE,eAAe,EAAEC,YAAY,CAAC,CAAC;EAE7C,MAAMF,WAAW,GAAG,IAAA4B,cAAO,EAAC,MAAM;IAChC,OAAA5D,aAAA,CAAAA,aAAA,KACM,CAAC+B,QAAQ,GAAGG,YAAY,GAAG,IAAI;MACnC2B,kBAAkB,EAAE,CAAC5B,eAAe,aAAfA,eAAe,cAAfA,eAAe,GAAI6B,qBAAW;IAAC;EAExD,CAAC,EAAE,CAAC/B,QAAQ,EAAEE,eAAe,EAAEC,YAAY,CAAC,CAAC;EAE7C,MAAM6B,SAAS,GAAG,IAAAR,kBAAW,EAC1BzB,IAAuC,IAAK;IAAA,IAAAkC,qBAAA;IAC3C,MAAMC,SAAS,IAAAD,qBAAA,GAAGlC,IAAI,CAAC+B,kBAAkB,cAAAG,qBAAA,uBAAvBA,qBAAA,CAA0B,CAAC,CAAC;IAC9C,IAAIC,SAAS,KAAK,IAAI,IAAI,OAAOA,SAAS,KAAK,QAAQ,EAAE;MACvD,OAAAjE,aAAA,CAAAA,aAAA,KACKkC,YAAY;QACf2B,kBAAkB,EAAE,CAAC,IAAI;MAAC;IAE9B;IACA,OAAO7B,WAAW;EACpB,CAAC,EACD,CAACA,WAAW,EAAEE,YAAY,CAC5B,CAAC;EAED,OACE9F,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAAC3H,UAAA,CAAAkB,OAAS;IACRqE,IAAI,EAAEA,IAAK;IACXE,WAAW,EAAEA,WAAY;IACzB+B,SAAS,EAAEA,SAAU;IACrB5B,gBAAgB,EAAEA,gBAAiB;IACnCQ,eAAe,EAAEA,eAAgB;IACjCwB,iBAAiB,EAAEC,IAAA,IAA4B;MAAA,IAA3B;QAAEP;MAAmB,CAAC,GAAAO,IAAA;MACxC,OAAOrB,eAAe,CAACX,IAAI,EAAE,CAAC,GAAGU,OAAO,EAAE,GAAGe,kBAAkB,CAAC,CAAC;IACnE,CAAE;IACFpB,QAAQ,EAAEA,CAACX,IAAI,EAAEuC,OAAO,KAAK;MAC3B,MAAM;QAAEC,SAAS;QAAEC;MAAc,CAAC,GAAGF,OAAO;MAC5C,IAAIlB,eAAe,EAAE;QACnBoB,aAAa,CAAC,CAAC;QACfnB,aAAa,CAAC,IAAI,CAAC;MACrB,CAAC,MAAM;QAAA,IAAAoB,qBAAA;QACLvB,oBAAoB,CAAC,MAAM,CAAC;QAC5B,CAAAuB,qBAAA,GAAA3B,sBAAsB,CAACc,OAAO,cAAAa,qBAAA,uBAA9BA,qBAAA,CAAA9F,IAAA,CAAAmE,sBAAsB,EAAW,MAAM,CAAC;QACxCyB,SAAS,CAAC,CAAC;MACb;MACA7B,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAGX,IAAI,EAAEuC,OAAO,CAAC;IAC3B;EAAE,GAEFjI,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAACzH,qBAAA,CAAAgB,OAAoB,CAACgH,QAAQ;IAACpE,KAAK,EAAEoD;EAAoB,GACxDrH,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAACpH,MAAA,CAAAW,OAAY;IACX2E,IAAI,EAAC,qBAAqB;IAC1BsC,aAAa,EAAElB,cAAc,GAAG,MAAM,GAAG;EAAO,GAEhDpH,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAACS,YAAY,EAAA9F,QAAA;IACXwD,KAAK,EAAEA,KAAM;IACbE,UAAU,EAAEA,UAAW;IACvBM,sBAAsB,EAAEA,sBAAuB;IAC/CW,cAAc,EAAEA,cAAe;IAC/BF,aAAa,EAAEA;EAAc,GACzBZ,IAAI,GAEPJ,QACW,CACF,CACe,CACtB,CAAC;AAEhB;AAEA,SAASqC,YAAYA,CAAAC,KAAA,EAQlB;EAAA,IAAAC,WAAA,EAAAC,aAAA;EAAA,IARmB;MACpBzC,KAAK;MACLE,UAAU;MACViB,cAAc;MACdX,sBAAsB;MACtBS,aAAa;MACbhB;IAEF,CAAC,GAAAsC,KAAA;IADIlC,IAAI,GAAArB,wBAAA,CAAAuD,KAAA,EAAAtH,UAAA;EAEP,MAAM;IAAEoH,aAAa;IAAEhB;EAAoB,CAAC,GAC1C,IAAAqB,iBAAU,EAACC,2BAAkB,CAAC,IAAI,CAAC,CAAC;EACtCnC,sBAAsB,CAACc,OAAO,GAAGD,mBAAmB;EACpD,MAAM;IAAEuB;EAAa,CAAC,GAAG,IAAAC,sBAAc,EAAC,CAAC,CAACC,oBAAoB;EAC9D,MAAM;IAAEb;EAAU,CAAC,GAAG,IAAAS,iBAAU,EAACK,gBAAW,CAAC,IAAI,CAAC,CAAC;EACnD,MAAMC,oBAAoB,GAAG,IAAA9B,kBAAW,EAAC,MAAM;IAC7Ce,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAG,CAAC;EACf,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EAEf,MAAMgB,OAAO,GACXlJ,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAAChH,QAAA,CAAAO,OAAO,QACNrB,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAACxH,mBAAA,CAAAe,OAAkB,CAAC8H,QAAQ,QACxBC,OAAO,IAAK;IACZ,MAAM/B,mBAAmB,GAAAzD,aAAA,CAAAA,aAAA,KACpBwF,OAAO;MACVH;IAAoB,EACrB;IACD,OACEjJ,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAACxH,mBAAA,CAAAe,OAAkB,CAACgH,QAAQ;MAACpE,KAAK,EAAEoD;IAAoB,GACtDrH,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAAClH,WAAA,CAAAyI,IAAI,CAACC,UAAU;MAACC,GAAG,EAAC;IAAO,GAAAd,WAAA,KAAAA,WAAA,GAC1BzI,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAACrH,cAAA,CAAA+I,UAAU;MAACC,IAAI,EAAEZ;IAAa,CAAE,CAAC,GACjCzB,cAAc,KAAAsB,aAAA,KAAAA,aAAA,GACb1I,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAACrH,cAAA,CAAAiJ,YAAY;MAACC,OAAO,EAAEzC;IAAc,CAAE,CAAC,EAE3B,CACU,CAAC;EAElC,CAC2B,CACtB,CACV;EAED,OACElH,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAAA9H,MAAA,CAAAqB,OAAA,CAAAuI,QAAA,QACE5J,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAACrH,cAAA,CAAAY,OAAa,EAAAoB,QAAA;IACZoH,IAAI,EAAE,CAACzC,cAAc,IAAIkB,aAAa,KAAK,MAAO;IAClDrC,KAAK,EAAEA,KAAM;IACbiD,OAAO,EAAEA;EAAQ,GACb5C,IAAI,GAEPJ,QACY,CAAC,EAEfC,UAAU,IAAI,OAAOiB,cAAc,KAAK,SAAS,IAChDpH,MAAA,CAAAqB,OAAA,CAAAyG,aAAA,CAAClH,WAAA,CAAAkJ,eAAe;IAACD,IAAI,EAAEzC,cAAc,IAAIkB,aAAa,KAAK;EAAO,GAC/DnC,UACc,CAEnB,CAAC;AAEP;AAEAX,aAAa,CAACuE,UAAU,GAAGA,mBAAU;AACrCvE,aAAa,CAACwE,qBAAqB,GAAG,IAAI;AAAA,IAAAC,QAAA,GAE3BzE,aAAa;AAAA0E,OAAA,CAAA7I,OAAA,GAAA4I,QAAA"}
1
+ {"version":3,"file":"PushContainer.js","names":["_react","_interopRequireWildcard","require","_Isolation","_interopRequireDefault","_PushContainerContext","_IterateItemContext","_Context","_useDataValue","_EditContainer","_Array","_OpenButton","_components","_hooks","_Toolbar","_hooks2","_Provider","_excluded","_excluded2","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","PushContainer","props","data","dataProp","defaultData","defaultDataProp","isolatedData","bubbleValidation","path","title","children","openButton","showOpenButtonWhen","onCommit","rest","commitHandleRef","useRef","switchContainerModeRef","entries","moveValueToPath","useDataValue","setNextContainerMode","useSwitchContainerMode","hasReachedLimit","setShowStatus","useArrayLimit","cancelHandler","useCallback","showOpenButton","newItemContextProps","switchContainerMode","current","useMemo","pushContainerItems","clearedData","emptyData","_data$pushContainerIt","firstItem","createElement","transformOnCommit","_ref","options","clearData","preventCommit","_switchContainerModeR","Provider","containerMode","withoutFlex","NewContainer","_ref2","_DoneButton","_CancelButton","useContext","IterateItemContext","createButton","useTranslation","IteratePushContainer","DataContext","restoreOriginalValue","toolbar","Consumer","context","Flex","Horizontal","gap","DoneButton","text","CancelButton","onClick","Fragment","open","HeightAnimation","OpenButton","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainer.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo, useRef } from 'react'\nimport Isolation from '../../Form/Isolation'\nimport PushContainerContext from './PushContainerContext'\nimport IterateItemContext from '../IterateItemContext'\nimport DataContext from '../../DataContext/Context'\nimport useDataValue from '../../hooks/useDataValue'\nimport EditContainer, { CancelButton, DoneButton } from '../EditContainer'\nimport IterateArray, { ContainerMode } from '../Array'\nimport OpenButton from './OpenButton'\nimport { Flex, HeightAnimation } from '../../../../components'\nimport { OnCommit, Path } from '../../types'\nimport { SpacingProps } from '../../../../shared/types'\nimport { useArrayLimit, useSwitchContainerMode } from '../hooks'\nimport Toolbar from '../Toolbar'\nimport { useTranslation } from '../../hooks'\nimport { ArrayItemAreaProps } from '../Array/ArrayItemArea'\nimport { clearedData } from '../../DataContext/Provider'\n\nexport type Props = {\n /**\n * The path to the array to add the new item to.\n */\n path: Path\n\n /**\n * The title of the container.\n */\n title?: React.ReactNode\n\n /**\n * The button to open container.\n */\n openButton?: React.ReactNode\n\n /**\n * Define when the \"open button\" should be shown.\n * Should be a function that returns a boolean.\n */\n showOpenButtonWhen?: (list: unknown[]) => boolean\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n data?: unknown | Record<string, unknown>\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n defaultData?: unknown | Record<string, unknown>\n\n /**\n * Provide additional data that will be put into the root of the isolated data context (parallel to \"/pushContainerItems/0\").\n */\n isolatedData?: Record<string, unknown>\n\n /**\n * Prevent the form from being submitted when there are fields with errors inside the PushContainer.\n */\n bubbleValidation?: boolean\n\n /**\n * A custom toolbar to be shown below the container.\n */\n toolbar?: React.ReactNode\n\n /**\n * Will be called when the user clicks on the \"Done\" button.\n */\n onCommit?: OnCommit\n\n /**\n * The container contents.\n */\n children: React.ReactNode\n}\n\nexport type AllProps = Props & SpacingProps & ArrayItemAreaProps\n\nfunction PushContainer(props: AllProps) {\n const {\n data: dataProp,\n defaultData: defaultDataProp,\n isolatedData,\n bubbleValidation,\n path,\n title,\n children,\n openButton,\n showOpenButtonWhen,\n onCommit,\n ...rest\n } = props\n\n const commitHandleRef = useRef<() => void>()\n const switchContainerModeRef = useRef<(mode: ContainerMode) => void>()\n const { value: entries = [], moveValueToPath } = useDataValue<\n Array<unknown>\n >({ path })\n\n const { setNextContainerMode } = useSwitchContainerMode({ path })\n const { hasReachedLimit, setShowStatus } = useArrayLimit({\n path,\n })\n const cancelHandler = useCallback(() => {\n if (hasReachedLimit) {\n setShowStatus(false)\n }\n }, [hasReachedLimit, setShowStatus])\n\n const showOpenButton = showOpenButtonWhen?.(entries)\n const newItemContextProps: PushContainerContext = {\n path,\n entries,\n commitHandleRef,\n switchContainerMode: switchContainerModeRef.current,\n }\n\n const data = useMemo(() => {\n if (defaultDataProp) {\n return // don't return a fallback, because we want to use the defaultData\n }\n return {\n ...isolatedData,\n pushContainerItems: [dataProp ?? clearedData],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n const defaultData = useMemo(() => {\n return {\n ...(!dataProp ? isolatedData : null),\n pushContainerItems: [defaultDataProp ?? clearedData],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n const emptyData = useCallback(\n (data: { pushContainerItems: unknown[] }) => {\n const firstItem = data.pushContainerItems?.[0]\n if (firstItem === null || typeof firstItem !== 'object') {\n return {\n ...isolatedData,\n pushContainerItems: [null],\n }\n }\n return defaultData\n },\n [defaultData, isolatedData]\n )\n\n return (\n <Isolation\n data={data}\n defaultData={defaultData}\n emptyData={emptyData}\n bubbleValidation={bubbleValidation}\n commitHandleRef={commitHandleRef}\n transformOnCommit={({ pushContainerItems }) => {\n return moveValueToPath(path, [...entries, ...pushContainerItems])\n }}\n onCommit={(data, options) => {\n const { clearData, preventCommit } = options\n if (hasReachedLimit) {\n preventCommit()\n setShowStatus(true)\n } else {\n setNextContainerMode('view')\n switchContainerModeRef.current?.('view')\n clearData()\n }\n onCommit?.(data, options)\n }}\n >\n <PushContainerContext.Provider value={newItemContextProps}>\n <IterateArray\n path=\"/pushContainerItems\"\n containerMode={showOpenButton ? 'view' : 'edit'}\n withoutFlex\n >\n <NewContainer\n title={title}\n openButton={openButton}\n switchContainerModeRef={switchContainerModeRef}\n showOpenButton={showOpenButton}\n cancelHandler={cancelHandler}\n {...rest}\n >\n {children}\n </NewContainer>\n </IterateArray>\n </PushContainerContext.Provider>\n </Isolation>\n )\n}\n\nfunction NewContainer({\n title,\n openButton,\n showOpenButton,\n switchContainerModeRef,\n cancelHandler,\n children,\n ...rest\n}) {\n const { containerMode, switchContainerMode } =\n useContext(IterateItemContext) || {}\n switchContainerModeRef.current = switchContainerMode\n const { createButton } = useTranslation().IteratePushContainer\n const { clearData } = useContext(DataContext) || {}\n const restoreOriginalValue = useCallback(() => {\n clearData?.()\n }, [clearData])\n\n const toolbar = (\n <Toolbar>\n <IterateItemContext.Consumer>\n {(context) => {\n const newItemContextProps = {\n ...context,\n restoreOriginalValue,\n }\n return (\n <IterateItemContext.Provider value={newItemContextProps}>\n <Flex.Horizontal gap=\"large\">\n <DoneButton text={createButton} />\n {showOpenButton && (\n <CancelButton onClick={cancelHandler} />\n )}\n </Flex.Horizontal>\n </IterateItemContext.Provider>\n )\n }}\n </IterateItemContext.Consumer>\n </Toolbar>\n )\n\n return (\n <>\n <EditContainer\n open={!showOpenButton || containerMode === 'edit'}\n title={title}\n toolbar={toolbar}\n {...rest}\n >\n {children}\n </EditContainer>\n\n {openButton && typeof showOpenButton === 'boolean' && (\n <HeightAnimation open={showOpenButton && containerMode === 'view'}>\n {openButton}\n </HeightAnimation>\n )}\n </>\n )\n}\n\nPushContainer.OpenButton = OpenButton\nPushContainer._supportsSpacingProps = true\n\nexport default PushContainer\n"],"mappings":"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"}
@@ -35,7 +35,8 @@ function Toolbar() {
35
35
  arrayValue: items
36
36
  } = (0, _react.useContext)(_IterateItemContext.default) || {};
37
37
  const {
38
- toolbarVariant
38
+ toolbarVariant,
39
+ divider
39
40
  } = (0, _react.useContext)(_ArrayItemAreaContext.default) || {};
40
41
  const {
41
42
  errorInContainer
@@ -64,7 +65,7 @@ function Toolbar() {
64
65
  return _react.default.createElement(_components.Space, _extends({
65
66
  top: toolbarVariant === 'custom' ? false : 'medium',
66
67
  className: (0, _classnames.default)('dnb-forms-iterate-toolbar', className)
67
- }, rest), toolbarVariant !== 'custom' && (_Hr || (_Hr = _react.default.createElement(_elements.Hr, {
68
+ }, rest), toolbarVariant !== 'custom' && divider !== 'line' && (_Hr || (_Hr = _react.default.createElement(_elements.Hr, {
68
69
  space: 0
69
70
  }))), _react.default.createElement(_ToolbarContext.default.Provider, {
70
71
  value: {
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbar.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_elements","_components","_IterateItemContext","_ToolbarContext","_FieldBoundaryContext","_ArrayItemAreaContext","_hooks","_Hr","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Toolbar","_ref","undefined","children","className","rest","index","value","arrayValue","items","useContext","IterateItemContext","toolbarVariant","ArrayItemAreaContext","errorInContainer","useTranslation","IterateEditContainer","hasError","hasVisibleError","FieldBoundaryContext","showError","setShowError","useState","useEffect","_children","React","Children","count","createElement","Fragment","Space","top","classnames","Hr","space","Provider","Flex","Horizontal","gap","FormStatus","show","shellSpace","no_animation","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/Toolbar/Toolbar.tsx"],"sourcesContent":["import React, { useContext, useEffect, useState } from 'react'\nimport classnames from 'classnames'\nimport { Hr } from '../../../../elements'\nimport { Flex, FormStatus, Space } from '../../../../components'\nimport { SpaceAllProps } from '../../../../components/Space'\nimport IterateItemContext from '../IterateItemContext'\nimport ToolbarContext from './ToolbarContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport ArrayItemAreaContext from '../Array/ArrayItemAreaContext'\nimport { useTranslation } from '../../hooks'\n\nexport type ToolbarParams = {\n index: number\n items: Array<unknown>\n value: unknown\n}\nexport type Props = Omit<SpaceAllProps, 'children'> & {\n children?: React.ReactNode | ((params: ToolbarParams) => React.ReactNode)\n}\n\nexport default function Toolbar({\n children,\n className,\n ...rest\n}: Props = {}) {\n const {\n index,\n value,\n arrayValue: items,\n } = useContext(IterateItemContext) || {}\n const { toolbarVariant } = useContext(ArrayItemAreaContext) || {}\n const { errorInContainer } = useTranslation().IterateEditContainer\n const { hasError, hasVisibleError } =\n useContext(FieldBoundaryContext) || {}\n const [showError, setShowError] = useState(false)\n\n useEffect(() => {\n if (showError && !hasError) {\n setShowError(false)\n }\n }, [hasError, showError])\n\n if (typeof children === 'function') {\n children = children?.({ index, items, value })\n }\n\n if (React.Children.count(children) === 0) {\n return <></>\n }\n\n return (\n <Space\n top={toolbarVariant === 'custom' ? false : 'medium'}\n className={classnames('dnb-forms-iterate-toolbar', className)}\n {...rest}\n >\n {toolbarVariant !== 'custom' && <Hr space={0} />}\n\n <ToolbarContext.Provider value={{ setShowError }}>\n <Flex.Horizontal\n top={toolbarVariant === 'custom' ? false : 'x-small'}\n gap=\"large\"\n >\n {children}\n </Flex.Horizontal>\n </ToolbarContext.Provider>\n\n <FormStatus\n show={showError && hasVisibleError}\n shellSpace={{ top: 'x-small' }}\n no_animation={false}\n >\n {errorInContainer}\n </FormStatus>\n </Space>\n )\n}\n\nToolbar._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"Toolbar.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_elements","_components","_IterateItemContext","_ToolbarContext","_FieldBoundaryContext","_ArrayItemAreaContext","_hooks","_Hr","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Toolbar","_ref","undefined","children","className","rest","index","value","arrayValue","items","useContext","IterateItemContext","toolbarVariant","divider","ArrayItemAreaContext","errorInContainer","useTranslation","IterateEditContainer","hasError","hasVisibleError","FieldBoundaryContext","showError","setShowError","useState","useEffect","_children","React","Children","count","createElement","Fragment","Space","top","classnames","Hr","space","Provider","Flex","Horizontal","gap","FormStatus","show","shellSpace","no_animation","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/Toolbar/Toolbar.tsx"],"sourcesContent":["import React, { useContext, useEffect, useState } from 'react'\nimport classnames from 'classnames'\nimport { Hr } from '../../../../elements'\nimport { Flex, FormStatus, Space } from '../../../../components'\nimport { SpaceAllProps } from '../../../../components/Space'\nimport IterateItemContext from '../IterateItemContext'\nimport ToolbarContext from './ToolbarContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport ArrayItemAreaContext from '../Array/ArrayItemAreaContext'\nimport { useTranslation } from '../../hooks'\n\nexport type ToolbarParams = {\n index: number\n items: Array<unknown>\n value: unknown\n}\nexport type Props = Omit<SpaceAllProps, 'children'> & {\n children?: React.ReactNode | ((params: ToolbarParams) => React.ReactNode)\n}\n\nexport default function Toolbar({\n children,\n className,\n ...rest\n}: Props = {}) {\n const {\n index,\n value,\n arrayValue: items,\n } = useContext(IterateItemContext) || {}\n const { toolbarVariant, divider } =\n useContext(ArrayItemAreaContext) || {}\n const { errorInContainer } = useTranslation().IterateEditContainer\n const { hasError, hasVisibleError } =\n useContext(FieldBoundaryContext) || {}\n const [showError, setShowError] = useState(false)\n\n useEffect(() => {\n if (showError && !hasError) {\n setShowError(false)\n }\n }, [hasError, showError])\n\n if (typeof children === 'function') {\n children = children?.({ index, items, value })\n }\n\n if (React.Children.count(children) === 0) {\n return <></>\n }\n\n return (\n <Space\n top={toolbarVariant === 'custom' ? false : 'medium'}\n className={classnames('dnb-forms-iterate-toolbar', className)}\n {...rest}\n >\n {toolbarVariant !== 'custom' && divider !== 'line' && (\n <Hr space={0} />\n )}\n\n <ToolbarContext.Provider value={{ setShowError }}>\n <Flex.Horizontal\n top={toolbarVariant === 'custom' ? false : 'x-small'}\n gap=\"large\"\n >\n {children}\n </Flex.Horizontal>\n </ToolbarContext.Provider>\n\n <FormStatus\n show={showError && hasVisibleError}\n shellSpace={{ top: 'x-small' }}\n no_animation={false}\n >\n {errorInContainer}\n </FormStatus>\n </Space>\n )\n}\n\nToolbar._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -8,7 +8,6 @@ exports.default = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _classnames = _interopRequireDefault(require("classnames"));
10
10
  var _componentHelper = require("../../../../shared/component-helper");
11
- var _components = require("../../../../components");
12
11
  var _elements = require("../../../../elements");
13
12
  var _ArrayItemArea = _interopRequireDefault(require("../Array/ArrayItemArea"));
14
13
  var _IterateItemContext = _interopRequireDefault(require("../IterateItemContext"));
@@ -54,9 +53,9 @@ function ViewContainer(props) {
54
53
  ariaLabel: (0, _componentHelper.convertJsxToString)(itemTitle),
55
54
  className: (0, _classnames.default)('dnb-forms-section-view-block', className),
56
55
  toolbarVariant: toolbarVariant
57
- }, restProps), _react.default.createElement(_components.Flex.Stack, null, itemTitle && _react.default.createElement(_elements.Lead, {
56
+ }, restProps), itemTitle && _react.default.createElement(_elements.Lead, {
58
57
  size: "basis"
59
- }, itemTitle), children, hasToolbar ? null : (_toolbarElement = toolbarElement) !== null && _toolbarElement !== void 0 ? _toolbarElement : toolbarVariant !== 'custom' && (_Toolbar2 || (_Toolbar2 = _react.default.createElement(_Toolbar3.default, null, _react.default.createElement(_EditButton.default, null), _react.default.createElement(_RemoveButton.default, null))))));
58
+ }, itemTitle), children, hasToolbar ? null : (_toolbarElement = toolbarElement) !== null && _toolbarElement !== void 0 ? _toolbarElement : toolbarVariant !== 'custom' && (_Toolbar2 || (_Toolbar2 = _react.default.createElement(_Toolbar3.default, null, _react.default.createElement(_EditButton.default, null), _react.default.createElement(_RemoveButton.default, null)))));
60
59
  }
61
60
  ViewContainer.EditButton = _EditButton.default;
62
61
  ViewContainer.RemoveButton = _RemoveButton.default;
@@ -1 +1 @@
1
- {"version":3,"file":"ViewContainer.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_componentHelper","_components","_elements","_ArrayItemArea","_IterateItemContext","_Toolbar3","_EditButton","_RemoveButton","_ItemNo","_Toolbar","_Toolbar2","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ViewContainer","props","_toolbarElement","_ref","children","className","title","toolbar","toolbarVariant","restProps","index","arrayValue","useContext","IterateItemContext","itemTitle","useMemo","replaceItemNo","toolbarElement","createElement","hasToolbar","React","Children","toArray","some","child","Toolbar","mode","ariaLabel","convertJsxToString","classnames","Flex","Stack","Lead","size","EditButton","RemoveButton","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Iterate/ViewContainer/ViewContainer.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport classnames from 'classnames'\nimport { convertJsxToString } from '../../../../shared/component-helper'\nimport { Flex } from '../../../../components'\nimport { Props as FlexContainerProps } from '../../../../components/flex/Container'\nimport { Lead } from '../../../../elements'\nimport ArrayItemArea, { ArrayItemAreaProps } from '../Array/ArrayItemArea'\nimport IterateItemContext from '../IterateItemContext'\nimport Toolbar from '../Toolbar'\nimport EditButton from './EditButton'\nimport RemoveButton from './RemoveButton'\nimport { replaceItemNo } from '../ItemNo'\n\nexport type Props = {\n /**\n * The title of the ViewContainer.\n */\n title?: React.ReactNode\n\n /**\n * An alternative toolbar to be shown in the ViewContainer.\n */\n toolbar?: React.ReactNode\n\n /**\n * The variant of the toolbar.\n */\n toolbarVariant?: ArrayItemAreaProps['toolbarVariant']\n}\n\nexport type AllProps = Props & FlexContainerProps & ArrayItemAreaProps\n\nfunction ViewContainer(props: AllProps) {\n const {\n children,\n className,\n title,\n toolbar,\n toolbarVariant,\n ...restProps\n } = props || {}\n const { index, arrayValue } = useContext(IterateItemContext)\n const itemTitle = useMemo(() => {\n return replaceItemNo(title, index)\n }, [index, title])\n\n let toolbarElement = toolbar\n if (toolbarVariant === 'minimumOneItem' && arrayValue.length <= 1) {\n toolbarElement = (\n <Toolbar>\n <EditButton />\n </Toolbar>\n )\n }\n\n const hasToolbar =\n !toolbarElement &&\n React.Children.toArray(children).some((child) => {\n return child?.['type'] === Toolbar\n })\n\n return (\n <ArrayItemArea\n mode=\"view\"\n ariaLabel={convertJsxToString(itemTitle)}\n className={classnames('dnb-forms-section-view-block', className)}\n toolbarVariant={toolbarVariant}\n {...restProps}\n >\n <Flex.Stack>\n {itemTitle && <Lead size=\"basis\">{itemTitle}</Lead>}\n {children}\n {hasToolbar\n ? null\n : toolbarElement ??\n (toolbarVariant !== 'custom' && (\n <Toolbar>\n <EditButton />\n <RemoveButton />\n </Toolbar>\n ))}\n </Flex.Stack>\n </ArrayItemArea>\n )\n}\n\nViewContainer.EditButton = EditButton\nViewContainer.RemoveButton = RemoveButton\n\nViewContainer._supportsSpacingProps = true\nexport default ViewContainer\n"],"mappings":"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"}
1
+ {"version":3,"file":"ViewContainer.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_componentHelper","_elements","_ArrayItemArea","_IterateItemContext","_Toolbar3","_EditButton","_RemoveButton","_ItemNo","_Toolbar","_Toolbar2","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ViewContainer","props","_toolbarElement","_ref","children","className","title","toolbar","toolbarVariant","restProps","index","arrayValue","useContext","IterateItemContext","itemTitle","useMemo","replaceItemNo","toolbarElement","createElement","hasToolbar","React","Children","toArray","some","child","Toolbar","mode","ariaLabel","convertJsxToString","classnames","Lead","size","EditButton","RemoveButton","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Iterate/ViewContainer/ViewContainer.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport classnames from 'classnames'\nimport { convertJsxToString } from '../../../../shared/component-helper'\nimport { Props as FlexContainerProps } from '../../../../components/flex/Container'\nimport { Lead } from '../../../../elements'\nimport ArrayItemArea, { ArrayItemAreaProps } from '../Array/ArrayItemArea'\nimport IterateItemContext from '../IterateItemContext'\nimport Toolbar from '../Toolbar'\nimport EditButton from './EditButton'\nimport RemoveButton from './RemoveButton'\nimport { replaceItemNo } from '../ItemNo'\n\nexport type Props = {\n /**\n * The title of the ViewContainer.\n */\n title?: React.ReactNode\n\n /**\n * An alternative toolbar to be shown in the ViewContainer.\n */\n toolbar?: React.ReactNode\n\n /**\n * The variant of the toolbar.\n */\n toolbarVariant?: ArrayItemAreaProps['toolbarVariant']\n}\n\nexport type AllProps = Props & FlexContainerProps & ArrayItemAreaProps\n\nfunction ViewContainer(props: AllProps) {\n const {\n children,\n className,\n title,\n toolbar,\n toolbarVariant,\n ...restProps\n } = props || {}\n const { index, arrayValue } = useContext(IterateItemContext)\n const itemTitle = useMemo(() => {\n return replaceItemNo(title, index)\n }, [index, title])\n\n let toolbarElement = toolbar\n if (toolbarVariant === 'minimumOneItem' && arrayValue.length <= 1) {\n toolbarElement = (\n <Toolbar>\n <EditButton />\n </Toolbar>\n )\n }\n\n const hasToolbar =\n !toolbarElement &&\n React.Children.toArray(children).some((child) => {\n return child?.['type'] === Toolbar\n })\n\n return (\n <ArrayItemArea\n mode=\"view\"\n ariaLabel={convertJsxToString(itemTitle)}\n className={classnames('dnb-forms-section-view-block', className)}\n toolbarVariant={toolbarVariant}\n {...restProps}\n >\n {itemTitle && <Lead size=\"basis\">{itemTitle}</Lead>}\n {children}\n {hasToolbar\n ? null\n : toolbarElement ??\n (toolbarVariant !== 'custom' && (\n <Toolbar>\n <EditButton />\n <RemoveButton />\n </Toolbar>\n ))}\n </ArrayItemArea>\n )\n}\n\nViewContainer.EditButton = EditButton\nViewContainer.RemoveButton = RemoveButton\n\nViewContainer._supportsSpacingProps = true\nexport default ViewContainer\n"],"mappings":"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"}
@@ -1,6 +1,22 @@
1
1
  .dnb-forms-iterate__element {
2
2
  outline: none;
3
3
  }
4
+ .dnb-forms-iterate:has(.dnb-forms-iterate__element.dnb-space__top--small) {
5
+ --block-gap: var(--spacing-small);
6
+ }
7
+ .dnb-forms-iterate:has(.dnb-forms-iterate__element.dnb-space__top--medium) {
8
+ --block-gap: var(--spacing-medium);
9
+ }
10
+ .dnb-forms-iterate:has(.dnb-forms-iterate__element.dnb-space__top--large) {
11
+ --block-gap: var(--spacing-large);
12
+ }
4
13
  .dnb-forms-iterate > .dnb-forms-iterate__element:has(> .dnb-forms-section-block) {
5
14
  margin-top: 0;
15
+ }
16
+ .dnb-forms-iterate > .dnb-forms-iterate__element:has(> .dnb-forms-section-block) .dnb-forms-section-block__inner {
17
+ margin-bottom: var(--block-gap, var(--spacing-large));
18
+ }
19
+ .dnb-forms-iterate > .dnb-forms-iterate__element:has(> .dnb-forms-section-block):has(~ .dnb-forms-iterate__element) ~ .dnb-hr {
20
+ margin-top: 0;
21
+ margin-bottom: var(--block-gap);
6
22
  }