@atlaskit/primitives 0.0.1 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @atlaskit/primitives
2
2
 
3
+ ## 0.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`eeb8baa5d74`](https://bitbucket.org/atlassian/atlassian-frontend/commits/eeb8baa5d74) - - Create `Stack` component
8
+ - Create `Inline` component
9
+
10
+ ## 0.0.2
11
+
12
+ ### Patch Changes
13
+
14
+ - [`069494fbea6`](https://bitbucket.org/atlassian/atlassian-frontend/commits/069494fbea6) - Internal change. There is no behaviour or visual change.
15
+ - Updated dependencies
16
+
3
17
  ## 0.0.1
4
18
 
5
19
  ### Patch Changes
@@ -1,13 +1,167 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- Object.defineProperty(exports, "Inline", {
8
- enumerable: true,
9
- get: function get() {
10
- return _inline.default;
11
- }
6
+ exports.default = void 0;
7
+ var _react = require("react");
8
+ var _react2 = require("@emotion/react");
9
+ /** @jsx jsx */
10
+
11
+ var alignItemsMap = {
12
+ center: (0, _react2.css)({
13
+ alignItems: 'center'
14
+ }),
15
+ baseline: (0, _react2.css)({
16
+ alignItems: 'baseline'
17
+ }),
18
+ start: (0, _react2.css)({
19
+ alignItems: 'flex-start'
20
+ }),
21
+ end: (0, _react2.css)({
22
+ alignItems: 'flex-end'
23
+ })
24
+ };
25
+ var justifyContentMap = {
26
+ start: (0, _react2.css)({
27
+ justifyContent: 'flex-start'
28
+ }),
29
+ center: (0, _react2.css)({
30
+ justifyContent: 'center'
31
+ }),
32
+ end: (0, _react2.css)({
33
+ justifyContent: 'flex-end'
34
+ }),
35
+ 'space-between': (0, _react2.css)({
36
+ justifyContent: 'space-between'
37
+ })
38
+ };
39
+ var flexGrowMap = {
40
+ hug: (0, _react2.css)({
41
+ flexGrow: 0
42
+ }),
43
+ fill: (0, _react2.css)({
44
+ flexGrow: 1
45
+ })
46
+ };
47
+ var flexWrapStyles = (0, _react2.css)({
48
+ flexWrap: 'wrap'
49
+ });
50
+
51
+ /**
52
+ * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
53
+ * @codegen <<SignedSource::e0d436d3312290a98dbfd91d90dd6b9e>>
54
+ * @codegenId spacing
55
+ * @codegenCommand yarn codegen-styles
56
+ * @codegenParams ["space"]
57
+ * @codegenDependency ../../../tokens/src/artifacts/tokens-raw/atlassian-spacing.tsx <<SignedSource::167d3b69b159ae33e74d4ea5ab7eade6>>
58
+ */
59
+ var spaceMap = {
60
+ '0': (0, _react2.css)({
61
+ gap: "var(--ds-space-0, 0px)"
62
+ }),
63
+ '025': (0, _react2.css)({
64
+ gap: "var(--ds-space-025, 2px)"
65
+ }),
66
+ '050': (0, _react2.css)({
67
+ gap: "var(--ds-space-050, 4px)"
68
+ }),
69
+ '075': (0, _react2.css)({
70
+ gap: "var(--ds-space-075, 6px)"
71
+ }),
72
+ '100': (0, _react2.css)({
73
+ gap: "var(--ds-space-100, 8px)"
74
+ }),
75
+ '1000': (0, _react2.css)({
76
+ gap: "var(--ds-space-1000, 80px)"
77
+ }),
78
+ '150': (0, _react2.css)({
79
+ gap: "var(--ds-space-150, 12px)"
80
+ }),
81
+ '200': (0, _react2.css)({
82
+ gap: "var(--ds-space-200, 16px)"
83
+ }),
84
+ '250': (0, _react2.css)({
85
+ gap: "var(--ds-space-250, 20px)"
86
+ }),
87
+ '300': (0, _react2.css)({
88
+ gap: "var(--ds-space-300, 24px)"
89
+ }),
90
+ '400': (0, _react2.css)({
91
+ gap: "var(--ds-space-400, 32px)"
92
+ }),
93
+ '500': (0, _react2.css)({
94
+ gap: "var(--ds-space-500, 40px)"
95
+ }),
96
+ '600': (0, _react2.css)({
97
+ gap: "var(--ds-space-600, 48px)"
98
+ }),
99
+ '800': (0, _react2.css)({
100
+ gap: "var(--ds-space-800, 64px)"
101
+ })
102
+ };
103
+ /**
104
+ * @codegenEnd
105
+ */
106
+
107
+ var baseStyles = (0, _react2.css)({
108
+ display: 'flex',
109
+ boxSizing: 'border-box',
110
+ flexDirection: 'row'
111
+ });
112
+ var separatorStyles = (0, _react2.css)({
113
+ color: "var(--ds-text-subtle, #42526E)",
114
+ marginBlock: "var(--ds-space-0, 0px)",
115
+ marginInline: "-".concat("var(--ds-space-025, 2px)"),
116
+ pointerEvents: 'none',
117
+ userSelect: 'none'
12
118
  });
13
- var _inline = _interopRequireDefault(require("@atlaskit/ds-explorations/inline"));
119
+ var Separator = function Separator(_ref) {
120
+ var children = _ref.children;
121
+ return (0, _react2.jsx)("span", {
122
+ css: separatorStyles
123
+ }, children);
124
+ };
125
+
126
+ /**
127
+ * __Inline__
128
+ *
129
+ * Inline is a primitive component based on flexbox that manages the horizontal layout of direct children.
130
+ *
131
+ *
132
+ * @example
133
+ * ```tsx
134
+ * <Inline>
135
+ * <Box padding="space.100" backgroundColor="neutral"></Box>
136
+ * <Box padding="space.100" backgroundColor="neutral"></Box>
137
+ * </Inline>
138
+ * ```
139
+ *
140
+ */
141
+ var Inline = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
142
+ var alignInline = _ref2.alignInline,
143
+ alignItems = _ref2.alignBlock,
144
+ _ref2$shouldWrap = _ref2.shouldWrap,
145
+ shouldWrap = _ref2$shouldWrap === void 0 ? false : _ref2$shouldWrap,
146
+ spread = _ref2.spread,
147
+ grow = _ref2.grow,
148
+ space = _ref2.space,
149
+ separator = _ref2.separator,
150
+ testId = _ref2.testId,
151
+ rawChildren = _ref2.children;
152
+ var separatorComponent = typeof separator === 'string' ? (0, _react2.jsx)(Separator, null, separator) : separator;
153
+ var children = separatorComponent ? _react.Children.toArray(rawChildren).filter(Boolean).map(function (child, index) {
154
+ return (0, _react2.jsx)(_react.Fragment, {
155
+ key: index
156
+ }, separator && index > 0 ? separatorComponent : null, child);
157
+ }) : rawChildren;
158
+ var justifyContent = spread || alignInline;
159
+ return (0, _react2.jsx)("div", {
160
+ css: [baseStyles, space && spaceMap[space], justifyContent && justifyContentMap[justifyContent], grow && flexGrowMap[grow], alignItems && alignItemsMap[alignItems], shouldWrap && flexWrapStyles],
161
+ "data-testid": testId,
162
+ ref: ref
163
+ }, children);
164
+ }));
165
+ Inline.displayName = 'Inline';
166
+ var _default = Inline;
167
+ exports.default = _default;
@@ -271,11 +271,11 @@ var heightMap = {
271
271
 
272
272
  /**
273
273
  * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
274
- * @codegen <<SignedSource::9226f2e37dcce3e8b61fc00cc67f8893>>
274
+ * @codegen <<SignedSource::bb003484c6ad12a718912942b07dbf6e>>
275
275
  * @codegenId spacing
276
276
  * @codegenCommand yarn codegen-styles
277
277
  * @codegenParams ["padding", "paddingBlock", "paddingInline"]
278
- * @codegenDependency ../../../../tokens/src/artifacts/tokens-raw/atlassian-spacing.tsx <<SignedSource::b0b8f1a822ed84e0407ad83e6fda5a1c>>
278
+ * @codegenDependency ../../../../tokens/src/artifacts/tokens-raw/atlassian-spacing.tsx <<SignedSource::167d3b69b159ae33e74d4ea5ab7eade6>>
279
279
  */
280
280
  var paddingMap = {
281
281
  'space.0': (0, _react2.css)({
@@ -1,13 +1,138 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- Object.defineProperty(exports, "Stack", {
8
- enumerable: true,
9
- get: function get() {
10
- return _stack.default;
11
- }
6
+ exports.default = void 0;
7
+ var _react = require("react");
8
+ var _react2 = require("@emotion/react");
9
+ /** @jsx jsx */
10
+
11
+ var justifyContentMap = {
12
+ start: (0, _react2.css)({
13
+ justifyContent: 'start'
14
+ }),
15
+ center: (0, _react2.css)({
16
+ justifyContent: 'center'
17
+ }),
18
+ end: (0, _react2.css)({
19
+ justifyContent: 'end'
20
+ }),
21
+ 'space-between': (0, _react2.css)({
22
+ justifyContent: 'space-between'
23
+ })
24
+ };
25
+ var alignItemsMap = {
26
+ start: (0, _react2.css)({
27
+ alignItems: 'start'
28
+ }),
29
+ center: (0, _react2.css)({
30
+ alignItems: 'center'
31
+ }),
32
+ end: (0, _react2.css)({
33
+ alignItems: 'end'
34
+ })
35
+ };
36
+ var flexGrowMap = {
37
+ hug: (0, _react2.css)({
38
+ flexGrow: 0
39
+ }),
40
+ fill: (0, _react2.css)({
41
+ flexGrow: 1
42
+ })
43
+ };
44
+
45
+ /**
46
+ * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
47
+ * @codegen <<SignedSource::e0d436d3312290a98dbfd91d90dd6b9e>>
48
+ * @codegenId spacing
49
+ * @codegenCommand yarn codegen-styles
50
+ * @codegenParams ["space"]
51
+ * @codegenDependency ../../../tokens/src/artifacts/tokens-raw/atlassian-spacing.tsx <<SignedSource::167d3b69b159ae33e74d4ea5ab7eade6>>
52
+ */
53
+ var spaceMap = {
54
+ '0': (0, _react2.css)({
55
+ gap: "var(--ds-space-0, 0px)"
56
+ }),
57
+ '025': (0, _react2.css)({
58
+ gap: "var(--ds-space-025, 2px)"
59
+ }),
60
+ '050': (0, _react2.css)({
61
+ gap: "var(--ds-space-050, 4px)"
62
+ }),
63
+ '075': (0, _react2.css)({
64
+ gap: "var(--ds-space-075, 6px)"
65
+ }),
66
+ '100': (0, _react2.css)({
67
+ gap: "var(--ds-space-100, 8px)"
68
+ }),
69
+ '1000': (0, _react2.css)({
70
+ gap: "var(--ds-space-1000, 80px)"
71
+ }),
72
+ '150': (0, _react2.css)({
73
+ gap: "var(--ds-space-150, 12px)"
74
+ }),
75
+ '200': (0, _react2.css)({
76
+ gap: "var(--ds-space-200, 16px)"
77
+ }),
78
+ '250': (0, _react2.css)({
79
+ gap: "var(--ds-space-250, 20px)"
80
+ }),
81
+ '300': (0, _react2.css)({
82
+ gap: "var(--ds-space-300, 24px)"
83
+ }),
84
+ '400': (0, _react2.css)({
85
+ gap: "var(--ds-space-400, 32px)"
86
+ }),
87
+ '500': (0, _react2.css)({
88
+ gap: "var(--ds-space-500, 40px)"
89
+ }),
90
+ '600': (0, _react2.css)({
91
+ gap: "var(--ds-space-600, 48px)"
92
+ }),
93
+ '800': (0, _react2.css)({
94
+ gap: "var(--ds-space-800, 64px)"
95
+ })
96
+ };
97
+ /**
98
+ * @codegenEnd
99
+ */
100
+
101
+ var baseStyles = (0, _react2.css)({
102
+ display: 'flex',
103
+ boxSizing: 'border-box',
104
+ flexDirection: 'column'
12
105
  });
13
- var _stack = _interopRequireDefault(require("@atlaskit/ds-explorations/stack"));
106
+
107
+ /**
108
+ * __Stack__
109
+ *
110
+ * Stack is a primitive component based on flexbox that manages the vertical layout of direct children.
111
+ *
112
+ * @example
113
+ * ```tsx
114
+ * <Stack>
115
+ * <Box padding="space.100" backgroundColor="neutral"></Box>
116
+ * <Box padding="space.100" backgroundColor="neutral"></Box>
117
+ * </Stack>
118
+ * ```
119
+ *
120
+ */
121
+ var Stack = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
122
+ var alignItems = _ref.alignInline,
123
+ alignBlock = _ref.alignBlock,
124
+ spread = _ref.spread,
125
+ grow = _ref.grow,
126
+ space = _ref.space,
127
+ children = _ref.children,
128
+ testId = _ref.testId;
129
+ var justifyContent = spread || alignBlock;
130
+ return (0, _react2.jsx)("div", {
131
+ css: [baseStyles, space && spaceMap[space], alignItems && alignItemsMap[alignItems], grow && flexGrowMap[grow], justifyContent && justifyContentMap[justifyContent]],
132
+ "data-testid": testId,
133
+ ref: ref
134
+ }, children);
135
+ }));
136
+ Stack.displayName = 'Stack';
137
+ var _default = Stack;
138
+ exports.default = _default;
package/dist/cjs/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
@@ -12,15 +13,15 @@ Object.defineProperty(exports, "Box", {
12
13
  Object.defineProperty(exports, "Inline", {
13
14
  enumerable: true,
14
15
  get: function get() {
15
- return _inline.Inline;
16
+ return _inline.default;
16
17
  }
17
18
  });
18
19
  Object.defineProperty(exports, "Stack", {
19
20
  enumerable: true,
20
21
  get: function get() {
21
- return _stack.Stack;
22
+ return _stack.default;
22
23
  }
23
24
  });
24
- var _stack = require("./components/stack.partial");
25
+ var _stack = _interopRequireDefault(require("./components/stack.partial"));
25
26
  var _box = require("./components/box");
26
- var _inline = require("./components/inline.partial");
27
+ var _inline = _interopRequireDefault(require("./components/inline.partial"));
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@atlaskit/primitives",
3
- "version": "0.0.1",
3
+ "version": "0.1.0",
4
4
  "sideEffects": false
5
5
  }
@@ -1,2 +1,158 @@
1
- // eslint-disable-next-line @repo/internal/codegen/signed-source-integrity
2
- export { default as Inline } from '@atlaskit/ds-explorations/inline';
1
+ /** @jsx jsx */
2
+ import { Children, forwardRef, Fragment, memo } from 'react';
3
+ import { css, jsx } from '@emotion/react';
4
+ const alignItemsMap = {
5
+ center: css({
6
+ alignItems: 'center'
7
+ }),
8
+ baseline: css({
9
+ alignItems: 'baseline'
10
+ }),
11
+ start: css({
12
+ alignItems: 'flex-start'
13
+ }),
14
+ end: css({
15
+ alignItems: 'flex-end'
16
+ })
17
+ };
18
+ const justifyContentMap = {
19
+ start: css({
20
+ justifyContent: 'flex-start'
21
+ }),
22
+ center: css({
23
+ justifyContent: 'center'
24
+ }),
25
+ end: css({
26
+ justifyContent: 'flex-end'
27
+ }),
28
+ 'space-between': css({
29
+ justifyContent: 'space-between'
30
+ })
31
+ };
32
+ const flexGrowMap = {
33
+ hug: css({
34
+ flexGrow: 0
35
+ }),
36
+ fill: css({
37
+ flexGrow: 1
38
+ })
39
+ };
40
+ const flexWrapStyles = css({
41
+ flexWrap: 'wrap'
42
+ });
43
+
44
+ /**
45
+ * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
46
+ * @codegen <<SignedSource::e0d436d3312290a98dbfd91d90dd6b9e>>
47
+ * @codegenId spacing
48
+ * @codegenCommand yarn codegen-styles
49
+ * @codegenParams ["space"]
50
+ * @codegenDependency ../../../tokens/src/artifacts/tokens-raw/atlassian-spacing.tsx <<SignedSource::167d3b69b159ae33e74d4ea5ab7eade6>>
51
+ */
52
+ const spaceMap = {
53
+ '0': css({
54
+ gap: "var(--ds-space-0, 0px)"
55
+ }),
56
+ '025': css({
57
+ gap: "var(--ds-space-025, 2px)"
58
+ }),
59
+ '050': css({
60
+ gap: "var(--ds-space-050, 4px)"
61
+ }),
62
+ '075': css({
63
+ gap: "var(--ds-space-075, 6px)"
64
+ }),
65
+ '100': css({
66
+ gap: "var(--ds-space-100, 8px)"
67
+ }),
68
+ '1000': css({
69
+ gap: "var(--ds-space-1000, 80px)"
70
+ }),
71
+ '150': css({
72
+ gap: "var(--ds-space-150, 12px)"
73
+ }),
74
+ '200': css({
75
+ gap: "var(--ds-space-200, 16px)"
76
+ }),
77
+ '250': css({
78
+ gap: "var(--ds-space-250, 20px)"
79
+ }),
80
+ '300': css({
81
+ gap: "var(--ds-space-300, 24px)"
82
+ }),
83
+ '400': css({
84
+ gap: "var(--ds-space-400, 32px)"
85
+ }),
86
+ '500': css({
87
+ gap: "var(--ds-space-500, 40px)"
88
+ }),
89
+ '600': css({
90
+ gap: "var(--ds-space-600, 48px)"
91
+ }),
92
+ '800': css({
93
+ gap: "var(--ds-space-800, 64px)"
94
+ })
95
+ };
96
+ /**
97
+ * @codegenEnd
98
+ */
99
+
100
+ const baseStyles = css({
101
+ display: 'flex',
102
+ boxSizing: 'border-box',
103
+ flexDirection: 'row'
104
+ });
105
+ const separatorStyles = css({
106
+ color: "var(--ds-text-subtle, #42526E)",
107
+ marginBlock: "var(--ds-space-0, 0px)",
108
+ marginInline: `-${"var(--ds-space-025, 2px)"}`,
109
+ pointerEvents: 'none',
110
+ userSelect: 'none'
111
+ });
112
+ const Separator = ({
113
+ children
114
+ }) => jsx("span", {
115
+ css: separatorStyles
116
+ }, children);
117
+
118
+ /**
119
+ * __Inline__
120
+ *
121
+ * Inline is a primitive component based on flexbox that manages the horizontal layout of direct children.
122
+ *
123
+ *
124
+ * @example
125
+ * ```tsx
126
+ * <Inline>
127
+ * <Box padding="space.100" backgroundColor="neutral"></Box>
128
+ * <Box padding="space.100" backgroundColor="neutral"></Box>
129
+ * </Inline>
130
+ * ```
131
+ *
132
+ */
133
+ const Inline = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
134
+ alignInline,
135
+ alignBlock: alignItems,
136
+ shouldWrap = false,
137
+ spread,
138
+ grow,
139
+ space,
140
+ separator,
141
+ testId,
142
+ children: rawChildren
143
+ }, ref) => {
144
+ const separatorComponent = typeof separator === 'string' ? jsx(Separator, null, separator) : separator;
145
+ const children = separatorComponent ? Children.toArray(rawChildren).filter(Boolean).map((child, index) => {
146
+ return jsx(Fragment, {
147
+ key: index
148
+ }, separator && index > 0 ? separatorComponent : null, child);
149
+ }) : rawChildren;
150
+ const justifyContent = spread || alignInline;
151
+ return jsx("div", {
152
+ css: [baseStyles, space && spaceMap[space], justifyContent && justifyContentMap[justifyContent], grow && flexGrowMap[grow], alignItems && alignItemsMap[alignItems], shouldWrap && flexWrapStyles],
153
+ "data-testid": testId,
154
+ ref: ref
155
+ }, children);
156
+ }));
157
+ Inline.displayName = 'Inline';
158
+ export default Inline;
@@ -263,11 +263,11 @@ const heightMap = {
263
263
 
264
264
  /**
265
265
  * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
266
- * @codegen <<SignedSource::9226f2e37dcce3e8b61fc00cc67f8893>>
266
+ * @codegen <<SignedSource::bb003484c6ad12a718912942b07dbf6e>>
267
267
  * @codegenId spacing
268
268
  * @codegenCommand yarn codegen-styles
269
269
  * @codegenParams ["padding", "paddingBlock", "paddingInline"]
270
- * @codegenDependency ../../../../tokens/src/artifacts/tokens-raw/atlassian-spacing.tsx <<SignedSource::b0b8f1a822ed84e0407ad83e6fda5a1c>>
270
+ * @codegenDependency ../../../../tokens/src/artifacts/tokens-raw/atlassian-spacing.tsx <<SignedSource::167d3b69b159ae33e74d4ea5ab7eade6>>
271
271
  */
272
272
  const paddingMap = {
273
273
  'space.0': css({
@@ -1,2 +1,131 @@
1
- // eslint-disable-next-line @repo/internal/codegen/signed-source-integrity
2
- export { default as Stack } from '@atlaskit/ds-explorations/stack';
1
+ /** @jsx jsx */
2
+ import { forwardRef, memo } from 'react';
3
+ import { css, jsx } from '@emotion/react';
4
+ const justifyContentMap = {
5
+ start: css({
6
+ justifyContent: 'start'
7
+ }),
8
+ center: css({
9
+ justifyContent: 'center'
10
+ }),
11
+ end: css({
12
+ justifyContent: 'end'
13
+ }),
14
+ 'space-between': css({
15
+ justifyContent: 'space-between'
16
+ })
17
+ };
18
+ const alignItemsMap = {
19
+ start: css({
20
+ alignItems: 'start'
21
+ }),
22
+ center: css({
23
+ alignItems: 'center'
24
+ }),
25
+ end: css({
26
+ alignItems: 'end'
27
+ })
28
+ };
29
+ const flexGrowMap = {
30
+ hug: css({
31
+ flexGrow: 0
32
+ }),
33
+ fill: css({
34
+ flexGrow: 1
35
+ })
36
+ };
37
+
38
+ /**
39
+ * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
40
+ * @codegen <<SignedSource::e0d436d3312290a98dbfd91d90dd6b9e>>
41
+ * @codegenId spacing
42
+ * @codegenCommand yarn codegen-styles
43
+ * @codegenParams ["space"]
44
+ * @codegenDependency ../../../tokens/src/artifacts/tokens-raw/atlassian-spacing.tsx <<SignedSource::167d3b69b159ae33e74d4ea5ab7eade6>>
45
+ */
46
+ const spaceMap = {
47
+ '0': css({
48
+ gap: "var(--ds-space-0, 0px)"
49
+ }),
50
+ '025': css({
51
+ gap: "var(--ds-space-025, 2px)"
52
+ }),
53
+ '050': css({
54
+ gap: "var(--ds-space-050, 4px)"
55
+ }),
56
+ '075': css({
57
+ gap: "var(--ds-space-075, 6px)"
58
+ }),
59
+ '100': css({
60
+ gap: "var(--ds-space-100, 8px)"
61
+ }),
62
+ '1000': css({
63
+ gap: "var(--ds-space-1000, 80px)"
64
+ }),
65
+ '150': css({
66
+ gap: "var(--ds-space-150, 12px)"
67
+ }),
68
+ '200': css({
69
+ gap: "var(--ds-space-200, 16px)"
70
+ }),
71
+ '250': css({
72
+ gap: "var(--ds-space-250, 20px)"
73
+ }),
74
+ '300': css({
75
+ gap: "var(--ds-space-300, 24px)"
76
+ }),
77
+ '400': css({
78
+ gap: "var(--ds-space-400, 32px)"
79
+ }),
80
+ '500': css({
81
+ gap: "var(--ds-space-500, 40px)"
82
+ }),
83
+ '600': css({
84
+ gap: "var(--ds-space-600, 48px)"
85
+ }),
86
+ '800': css({
87
+ gap: "var(--ds-space-800, 64px)"
88
+ })
89
+ };
90
+ /**
91
+ * @codegenEnd
92
+ */
93
+
94
+ const baseStyles = css({
95
+ display: 'flex',
96
+ boxSizing: 'border-box',
97
+ flexDirection: 'column'
98
+ });
99
+
100
+ /**
101
+ * __Stack__
102
+ *
103
+ * Stack is a primitive component based on flexbox that manages the vertical layout of direct children.
104
+ *
105
+ * @example
106
+ * ```tsx
107
+ * <Stack>
108
+ * <Box padding="space.100" backgroundColor="neutral"></Box>
109
+ * <Box padding="space.100" backgroundColor="neutral"></Box>
110
+ * </Stack>
111
+ * ```
112
+ *
113
+ */
114
+ const Stack = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
115
+ alignInline: alignItems,
116
+ alignBlock,
117
+ spread,
118
+ grow,
119
+ space,
120
+ children,
121
+ testId
122
+ }, ref) => {
123
+ const justifyContent = spread || alignBlock;
124
+ return jsx("div", {
125
+ css: [baseStyles, space && spaceMap[space], alignItems && alignItemsMap[alignItems], grow && flexGrowMap[grow], justifyContent && justifyContentMap[justifyContent]],
126
+ "data-testid": testId,
127
+ ref: ref
128
+ }, children);
129
+ }));
130
+ Stack.displayName = 'Stack';
131
+ export default Stack;