akeneo-design-system 1.0.1 → 1.0.3

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.
@@ -12,11 +12,12 @@ type TreeProps<T = string> = {
12
12
  onClose?: (value: T) => void;
13
13
  onChange?: (value: T, checked: boolean, event: SyntheticEvent) => void;
14
14
  onClick?: (value: T) => void;
15
+ defaultOpen?: boolean;
15
16
  _isRoot?: boolean;
16
17
  children?: ReactNode;
17
18
  };
18
19
  declare const Tree: {
19
- <T>({ label, value, children, isLeaf, selected, isLoading, selectable, readOnly, onChange, onOpen, onClose, onClick, _isRoot, ...rest }: React.PropsWithChildren<TreeProps<T>>): React.JSX.Element;
20
+ <T>({ label, value, children, isLeaf, selected, isLoading, selectable, readOnly, onChange, onOpen, onClose, onClick, defaultOpen, _isRoot, ...rest }: React.PropsWithChildren<TreeProps<T>>): React.JSX.Element;
20
21
  displayName: string;
21
22
  };
22
23
  export { Tree };
@@ -91,7 +91,7 @@ var TreeIcon = function (_a) {
91
91
  return selected ? react_1.default.createElement(TreeFolderSelectedIcon, { size: 24 }) : react_1.default.createElement(TreeFolderNotSelectedIcon, { size: 24 });
92
92
  };
93
93
  var Tree = function (_a) {
94
- var label = _a.label, value = _a.value, children = _a.children, _b = _a.isLeaf, isLeaf = _b === void 0 ? false : _b, _c = _a.selected, selected = _c === void 0 ? false : _c, _d = _a.isLoading, isLoading = _d === void 0 ? false : _d, _e = _a.selectable, selectable = _e === void 0 ? false : _e, _f = _a.readOnly, readOnly = _f === void 0 ? false : _f, onChange = _a.onChange, onOpen = _a.onOpen, onClose = _a.onClose, onClick = _a.onClick, _g = _a._isRoot, _isRoot = _g === void 0 ? true : _g, rest = __rest(_a, ["label", "value", "children", "isLeaf", "selected", "isLoading", "selectable", "readOnly", "onChange", "onOpen", "onClose", "onClick", "_isRoot"]);
94
+ var label = _a.label, value = _a.value, children = _a.children, _b = _a.isLeaf, isLeaf = _b === void 0 ? false : _b, _c = _a.selected, selected = _c === void 0 ? false : _c, _d = _a.isLoading, isLoading = _d === void 0 ? false : _d, _e = _a.selectable, selectable = _e === void 0 ? false : _e, _f = _a.readOnly, readOnly = _f === void 0 ? false : _f, onChange = _a.onChange, onOpen = _a.onOpen, onClose = _a.onClose, onClick = _a.onClick, _g = _a.defaultOpen, defaultOpen = _g === void 0 ? false : _g, _h = _a._isRoot, _isRoot = _h === void 0 ? true : _h, rest = __rest(_a, ["label", "value", "children", "isLeaf", "selected", "isLoading", "selectable", "readOnly", "onChange", "onOpen", "onClose", "onClick", "defaultOpen", "_isRoot"]);
95
95
  var subTrees = [];
96
96
  react_1.default.Children.forEach(children, function (child) {
97
97
  if (!(0, react_1.isValidElement)(child)) {
@@ -108,7 +108,7 @@ var Tree = function (_a) {
108
108
  selected = 'mixed';
109
109
  }
110
110
  }
111
- var _h = react_1.default.useState(_isRoot ? subTrees.length > 0 : false), isOpen = _h[0], setOpen = _h[1];
111
+ var _j = react_1.default.useState(_isRoot || defaultOpen ? subTrees.length > 0 : false), isOpen = _j[0], setOpen = _j[1];
112
112
  var handleOpen = react_1.default.useCallback(function () {
113
113
  setOpen(true);
114
114
  if (onOpen) {
@@ -150,6 +150,7 @@ var Tree = function (_a) {
150
150
  isOpen && !isLeaf && subTrees.length > 0 && (react_1.default.createElement(SubTreesContainer, { role: "group" }, subTrees.map(function (subTree) {
151
151
  return react_1.default.cloneElement(subTree, {
152
152
  key: JSON.stringify(subTree.props.value),
153
+ defaultOpen: defaultOpen,
153
154
  _isRoot: false,
154
155
  });
155
156
  })))));
@@ -1 +1 @@
1
- {"version":3,"file":"Tree.js","sourceRoot":"","sources":["../../../src/components/Tree/Tree.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tree.js","sourceRoot":"","sources":["../../../src/components/Tree/Tree.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "akeneo-design-system",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "Akeneo design system",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -13,7 +13,7 @@
13
13
  "test:visual:update": "npm run storybook:extract && jest --config ./jest.visual.config.js -u",
14
14
  "lint:fix": "prettier --config .prettierrc.json --parser typescript --write \"./{src,generator}/**/*.{ts,tsx}\" && npx eslint --config .eslintrc.json --quiet \"./src/**/*.{ts,tsx}\" --fix",
15
15
  "lint:check": "npx prettier --config .prettierrc.json --parser typescript --check \"./{src,generator}/**/*.{ts,tsx}\" && npx eslint --config .eslintrc.json --quiet \"./src/**/*.{ts,tsx}\"",
16
- "storybook:start": "npm run storybook:copy-public && NODE_OPTIONS=--openssl-legacy-provider npm run start-storybook -p 6006 -s ./public",
16
+ "storybook:start": "npm run storybook:copy-public && NODE_OPTIONS=--openssl-legacy-provider npx start-storybook -p 6006 -s ./public",
17
17
  "storybook:build": "npm run storybook:copy-public && NODE_OPTIONS=--openssl-legacy-provider npx build-storybook -s ./public && npx sb extract",
18
18
  "storybook:ci:start": "NODE_OPTIONS=--openssl-legacy-provider npm run start-storybook -p 6006 --ci",
19
19
  "storybook:copy-public": "cp ./src/__image_snapshots__/*standard-correctly-1-snap.png ./public/",
@@ -38,6 +38,9 @@ import {Tree} from './Tree.tsx';
38
38
  onClick:{
39
39
  description: 'Triggered when the user clicks on a node. If not specified, a click opens or closes the node.'
40
40
  },
41
+ defaultOpen:{
42
+ description: 'Allow to open automatically children when present.'
43
+ },
41
44
  _isRoot:{
42
45
  table:{
43
46
  disable: true
@@ -171,15 +174,42 @@ The Tree component uses its value to trigger onOpen, onClose and other events. B
171
174
  return (
172
175
  <>
173
176
  <Tree {...args} label='Indeterminate' selectable={true}>
174
- <Tree {...args} label='Child1' selectable={true} selected={true} />
175
- <Tree {...args} label='Child2' selectable={true} />
177
+ <Tree {...args} label='Child1' isLeaf={true} selectable={true} selected={true} />
178
+ <Tree {...args} label='Child2' isLeaf={true} selectable={true} />
176
179
  </Tree>
177
180
  <Tree {...args} label='All Checked' selectable={true}>
178
- <Tree {...args} label='Child1' selectable={true} selected={true} />
179
- <Tree {...args} label='Child2' selectable={true} selected={true}/>
181
+ <Tree {...args} label='Child1' isLeaf={true} selectable={true} selected={true} />
182
+ <Tree {...args} label='Child2' isLeaf={true} selectable={true} selected={true}/>
180
183
  </Tree>
181
184
  </>
182
185
  );
183
186
  }}
184
187
  </Story>
185
188
  </Canvas>
189
+
190
+ ## Variation with open children when present
191
+
192
+ <Canvas>
193
+ <Story name="defaultOpen">
194
+ {args => {
195
+ return (
196
+ <>
197
+ <Tree {...args} label='Parent1' defaultOpen={true}>
198
+ <Tree {...args} label='Child1'>
199
+ <Tree {...args} label='Child1 Sub1' isLeaf={true} />
200
+ <Tree {...args} label='Child1 Sub2' isLeaf={true} />
201
+ </Tree>
202
+ <Tree {...args} label='Child2' isLeaf={true} />
203
+ </Tree>
204
+ <Tree {...args} label='Parent 2' defaultOpen={true}>
205
+ <Tree {...args} label='Child1' isLeaf={true} />
206
+ <Tree {...args} label='Child2'>
207
+ <Tree {...args} label='Child2 Sub1' isLeaf={true} />
208
+ <Tree {...args} label='Child2 Sub2' isLeaf={true} />
209
+ </Tree>
210
+ </Tree>
211
+ </>
212
+ );
213
+ }}
214
+ </Story>
215
+ </Canvas>
@@ -141,6 +141,7 @@ type TreeProps<T = string> = {
141
141
  onClose?: (value: T) => void;
142
142
  onChange?: (value: T, checked: boolean, event: SyntheticEvent) => void;
143
143
  onClick?: (value: T) => void;
144
+ defaultOpen?: boolean;
144
145
  _isRoot?: boolean;
145
146
  children?: ReactNode;
146
147
  };
@@ -158,6 +159,7 @@ const Tree = <T,>({
158
159
  onOpen,
159
160
  onClose,
160
161
  onClick,
162
+ defaultOpen = false,
161
163
  _isRoot = true,
162
164
  ...rest
163
165
  }: PropsWithChildren<TreeProps<T>>) => {
@@ -180,7 +182,7 @@ const Tree = <T,>({
180
182
  }
181
183
  }
182
184
 
183
- const [isOpen, setOpen] = React.useState<boolean>(_isRoot ? subTrees.length > 0 : false);
185
+ const [isOpen, setOpen] = React.useState<boolean>(_isRoot || defaultOpen ? subTrees.length > 0 : false);
184
186
 
185
187
  const handleOpen = React.useCallback(() => {
186
188
  setOpen(true);
@@ -241,6 +243,7 @@ const Tree = <T,>({
241
243
  {subTrees.map(subTree =>
242
244
  React.cloneElement(subTree, {
243
245
  key: JSON.stringify(subTree.props.value),
246
+ defaultOpen: defaultOpen,
244
247
  _isRoot: false,
245
248
  })
246
249
  )}