@dhis2-ui/node 9.11.0 → 9.11.1-beta.1
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/build/cjs/features/accepts_children/index.js +0 -1
- package/build/cjs/features/accepts_component/index.js +0 -1
- package/build/cjs/features/accepts_icon/index.js +0 -1
- package/build/cjs/features/can_be_closed/index.js +1 -2
- package/build/cjs/features/can_be_opened/index.js +1 -2
- package/build/cjs/index.js +0 -1
- package/build/cjs/leaves.js +1 -8
- package/build/cjs/node.e2e.stories.js +43 -0
- package/build/cjs/node.js +6 -18
- package/build/cjs/{node.stories.js → node.prod.stories.js} +9 -28
- package/build/cjs/spacer.js +1 -6
- package/build/cjs/toggle.js +2 -11
- package/build/es/features/can_be_closed/index.js +1 -1
- package/build/es/features/can_be_opened/index.js +1 -1
- package/build/es/{node.stories.e2e.js → node.e2e.stories.js} +15 -8
- package/build/es/node.js +5 -7
- package/build/es/{node.stories.js → node.prod.stories.js} +7 -9
- package/build/es/toggle.js +1 -3
- package/package.json +6 -6
- package/build/cjs/node.stories.e2e.js +0 -30
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
|
|
4
|
-
|
|
5
4
|
(0, _cypressCucumberPreprocessor.Given)('a closed Node with children is rendered', () => {
|
|
6
5
|
cy.visitStory('Node', 'Closed with children');
|
|
7
6
|
cy.get('[data-test="dhis2-uicore-node"]').should('be.visible');
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
|
|
4
|
-
|
|
5
4
|
(0, _cypressCucumberPreprocessor.Given)('a Node with component prop is rendered', () => {
|
|
6
5
|
cy.visitStory('Node', 'With component');
|
|
7
6
|
cy.get('[data-test="dhis2-uicore-node"]').should('be.visible');
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
|
|
4
|
-
|
|
5
4
|
(0, _cypressCucumberPreprocessor.Given)('a Node with icon prop is rendered', () => {
|
|
6
5
|
cy.visitStory('Node', 'With icon');
|
|
7
6
|
cy.get('[data-test="dhis2-uicore-node"]').should('be.visible');
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
|
|
4
|
-
|
|
5
4
|
(0, _cypressCucumberPreprocessor.Given)('an open Node with an onClose handler is rendered', () => {
|
|
6
|
-
cy.visitStory('Node', 'Open with
|
|
5
|
+
cy.visitStory('Node', 'Open with on close');
|
|
7
6
|
});
|
|
8
7
|
(0, _cypressCucumberPreprocessor.When)('the arrow is clicked', () => {
|
|
9
8
|
cy.get('[data-test="dhis2-uicore-node-toggle"]').click();
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
|
|
4
|
-
|
|
5
4
|
(0, _cypressCucumberPreprocessor.Given)('a closed Node with an onOpen handler is rendered', () => {
|
|
6
|
-
cy.visitStory('Node', 'Closed with
|
|
5
|
+
cy.visitStory('Node', 'Closed with on open');
|
|
7
6
|
});
|
|
8
7
|
(0, _cypressCucumberPreprocessor.When)('the arrow is clicked', () => {
|
|
9
8
|
cy.get('[data-test="dhis2-uicore-node-toggle"]').click();
|
package/build/cjs/index.js
CHANGED
package/build/cjs/leaves.js
CHANGED
|
@@ -4,17 +4,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.Leaves = void 0;
|
|
7
|
-
|
|
8
7
|
var _style = _interopRequireDefault(require("styled-jsx/style"));
|
|
9
|
-
|
|
10
8
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
-
|
|
12
9
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
-
|
|
14
10
|
var _react = _interopRequireDefault(require("react"));
|
|
15
|
-
|
|
16
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
-
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
12
|
const Leaves = _ref => {
|
|
19
13
|
let {
|
|
20
14
|
children,
|
|
@@ -30,7 +24,6 @@ const Leaves = _ref => {
|
|
|
30
24
|
id: "3677374542"
|
|
31
25
|
}, ["div.jsx-3677374542{height:0;overflow:hidden;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}", ".open.jsx-3677374542{height:auto;}"]));
|
|
32
26
|
};
|
|
33
|
-
|
|
34
27
|
exports.Leaves = Leaves;
|
|
35
28
|
Leaves.propTypes = {
|
|
36
29
|
children: _propTypes.default.node,
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.WithIcon = exports.WithComponent = exports.OpenWithOnClose = exports.OpenWithChildren = exports.ClosedWithOnOpen = exports.ClosedWithChildren = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _node = require("./node.js");
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
window.onClose = window.Cypress && window.Cypress.cy.stub();
|
|
11
|
+
window.onOpen = window.Cypress && window.Cypress.cy.stub();
|
|
12
|
+
var _default = exports.default = {
|
|
13
|
+
title: 'Node'
|
|
14
|
+
};
|
|
15
|
+
const OpenWithOnClose = () => /*#__PURE__*/_react.default.createElement(_node.Node, {
|
|
16
|
+
open: true,
|
|
17
|
+
onClose: window.onClose,
|
|
18
|
+
component: /*#__PURE__*/_react.default.createElement("div", null, "Component")
|
|
19
|
+
}, "Children");
|
|
20
|
+
exports.OpenWithOnClose = OpenWithOnClose;
|
|
21
|
+
const ClosedWithOnOpen = () => /*#__PURE__*/_react.default.createElement(_node.Node, {
|
|
22
|
+
onOpen: window.onOpen,
|
|
23
|
+
component: /*#__PURE__*/_react.default.createElement("div", null, "Component")
|
|
24
|
+
}, "Children");
|
|
25
|
+
exports.ClosedWithOnOpen = ClosedWithOnOpen;
|
|
26
|
+
const ClosedWithChildren = () => /*#__PURE__*/_react.default.createElement(_node.Node, {
|
|
27
|
+
component: /*#__PURE__*/_react.default.createElement("div", null, "Component")
|
|
28
|
+
}, "I am a child");
|
|
29
|
+
exports.ClosedWithChildren = ClosedWithChildren;
|
|
30
|
+
const OpenWithChildren = () => /*#__PURE__*/_react.default.createElement(_node.Node, {
|
|
31
|
+
open: true,
|
|
32
|
+
component: /*#__PURE__*/_react.default.createElement("div", null, "Component")
|
|
33
|
+
}, "I am a child");
|
|
34
|
+
exports.OpenWithChildren = OpenWithChildren;
|
|
35
|
+
const WithComponent = () => /*#__PURE__*/_react.default.createElement(_node.Node, {
|
|
36
|
+
component: /*#__PURE__*/_react.default.createElement("div", null, "I am a component")
|
|
37
|
+
}, "Children");
|
|
38
|
+
exports.WithComponent = WithComponent;
|
|
39
|
+
const WithIcon = () => /*#__PURE__*/_react.default.createElement(_node.Node, {
|
|
40
|
+
component: /*#__PURE__*/_react.default.createElement("div", null, "Component"),
|
|
41
|
+
icon: /*#__PURE__*/_react.default.createElement("div", null, "Icon")
|
|
42
|
+
}, "Children");
|
|
43
|
+
exports.WithIcon = WithIcon;
|
package/build/cjs/node.js
CHANGED
|
@@ -4,23 +4,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.Node = void 0;
|
|
7
|
-
|
|
8
7
|
var _style = _interopRequireDefault(require("styled-jsx/style"));
|
|
9
|
-
|
|
10
8
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
-
|
|
12
9
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
-
|
|
14
10
|
var _react = _interopRequireDefault(require("react"));
|
|
15
|
-
|
|
16
11
|
var _leaves = require("./leaves.js");
|
|
17
|
-
|
|
18
12
|
var _spacer = require("./spacer.js");
|
|
19
|
-
|
|
20
13
|
var _toggle = require("./toggle.js");
|
|
21
|
-
|
|
22
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
|
-
|
|
14
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
24
15
|
const Node = _ref => {
|
|
25
16
|
let {
|
|
26
17
|
open,
|
|
@@ -39,27 +30,26 @@ const Node = _ref => {
|
|
|
39
30
|
"data-test": dataTest,
|
|
40
31
|
className: "jsx-1433072554" + " " + ((0, _classnames.default)('node', className) || "")
|
|
41
32
|
}, icon && /*#__PURE__*/_react.default.createElement("div", {
|
|
42
|
-
"data-test":
|
|
33
|
+
"data-test": `${dataTest}-icon`,
|
|
43
34
|
className: "jsx-1433072554"
|
|
44
35
|
}, icon), showArrow && /*#__PURE__*/_react.default.createElement(_toggle.Toggle, {
|
|
45
36
|
open: open,
|
|
46
37
|
onOpen: onOpen,
|
|
47
38
|
onClose: onClose,
|
|
48
|
-
dataTest:
|
|
39
|
+
dataTest: `${dataTest}-toggle`
|
|
49
40
|
}), showSpacer && /*#__PURE__*/_react.default.createElement(_spacer.Spacer, null), /*#__PURE__*/_react.default.createElement("div", {
|
|
50
|
-
"data-test":
|
|
41
|
+
"data-test": `${dataTest}-content`,
|
|
51
42
|
className: "jsx-1433072554"
|
|
52
43
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
53
|
-
"data-test":
|
|
44
|
+
"data-test": `${dataTest}-label`,
|
|
54
45
|
className: "jsx-1433072554"
|
|
55
46
|
}, label), /*#__PURE__*/_react.default.createElement(_leaves.Leaves, {
|
|
56
47
|
open: open,
|
|
57
|
-
dataTest:
|
|
48
|
+
dataTest: `${dataTest}-leaves`
|
|
58
49
|
}, children)), /*#__PURE__*/_react.default.createElement(_style.default, {
|
|
59
50
|
id: "1433072554"
|
|
60
51
|
}, [".node.jsx-1433072554{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}"]));
|
|
61
52
|
};
|
|
62
|
-
|
|
63
53
|
exports.Node = Node;
|
|
64
54
|
Node.defaultProps = {
|
|
65
55
|
dataTest: 'dhis2-uicore-node'
|
|
@@ -68,11 +58,9 @@ Node.propTypes = {
|
|
|
68
58
|
/** Content below this level of the hierarchy; children are revealed when this leaf is 'open' */
|
|
69
59
|
children: _propTypes.default.node,
|
|
70
60
|
className: _propTypes.default.string,
|
|
71
|
-
|
|
72
61
|
/** Content/label for this leaf, for example a checkbox */
|
|
73
62
|
component: _propTypes.default.element,
|
|
74
63
|
dataTest: _propTypes.default.string,
|
|
75
|
-
|
|
76
64
|
/** A custom icon to use instead of a toggle arrow */
|
|
77
65
|
icon: _propTypes.default.node,
|
|
78
66
|
open: _propTypes.default.bool,
|
|
@@ -4,44 +4,36 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = exports._2LevelsOpen = exports.TextLeaves = exports.RTL = exports.MultipleRoots = exports.CustomIcon = void 0;
|
|
7
|
-
|
|
8
7
|
var _style = _interopRequireDefault(require("styled-jsx/style"));
|
|
9
|
-
|
|
10
8
|
var _checkbox = require("@dhis2-ui/checkbox");
|
|
11
|
-
|
|
12
9
|
var _loader = require("@dhis2-ui/loader");
|
|
13
|
-
|
|
14
10
|
var _react = _interopRequireDefault(require("react"));
|
|
15
|
-
|
|
16
11
|
var _node = require("./node.js");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
14
|
+
const description = `
|
|
15
|
+
A tool for creating hierarchical, multi-level selectors. Applied in the Organisation Unit Tree component, for example.
|
|
17
16
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const description = "\nA tool for creating hierarchical, multi-level selectors. Applied in the Organisation Unit Tree component, for example.\n\n```js\nimport { Node } from '@dhis2/ui'\n```\n";
|
|
23
|
-
|
|
17
|
+
\`\`\`js
|
|
18
|
+
import { Node } from '@dhis2/ui'
|
|
19
|
+
\`\`\`
|
|
20
|
+
`;
|
|
24
21
|
const say = something => () => alert(something);
|
|
25
|
-
|
|
26
22
|
window.onOpen = (payload, event) => {
|
|
27
23
|
console.log('onOpen payload', payload);
|
|
28
24
|
console.log('onOpen event', event);
|
|
29
25
|
};
|
|
30
|
-
|
|
31
26
|
window.onClose = (payload, event) => {
|
|
32
27
|
console.log('onClose payload', payload);
|
|
33
28
|
console.log('onClose event', event);
|
|
34
29
|
};
|
|
35
|
-
|
|
36
30
|
const onOpen = function () {
|
|
37
31
|
return window.onOpen(...arguments);
|
|
38
32
|
};
|
|
39
|
-
|
|
40
33
|
const onClose = function () {
|
|
41
34
|
return window.onClose(...arguments);
|
|
42
35
|
};
|
|
43
|
-
|
|
44
|
-
var _default = {
|
|
36
|
+
var _default = exports.default = {
|
|
45
37
|
title: 'Node',
|
|
46
38
|
component: _node.Node,
|
|
47
39
|
parameters: {
|
|
@@ -52,10 +44,7 @@ var _default = {
|
|
|
52
44
|
}
|
|
53
45
|
}
|
|
54
46
|
};
|
|
55
|
-
exports.default = _default;
|
|
56
|
-
|
|
57
47
|
const CustomIcon = args => /*#__PURE__*/_react.default.createElement(_node.Node, args);
|
|
58
|
-
|
|
59
48
|
exports.CustomIcon = CustomIcon;
|
|
60
49
|
CustomIcon.args = {
|
|
61
50
|
icon: /*#__PURE__*/_react.default.createElement(_loader.CircularLoader, {
|
|
@@ -73,7 +62,6 @@ CustomIcon.args = {
|
|
|
73
62
|
})
|
|
74
63
|
};
|
|
75
64
|
CustomIcon.storyName = 'Custom icon';
|
|
76
|
-
|
|
77
65
|
const MultipleRoots = args => /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_node.Node, _extends({}, args, {
|
|
78
66
|
component: /*#__PURE__*/_react.default.createElement(_checkbox.Checkbox, {
|
|
79
67
|
label: "Node label 1.1",
|
|
@@ -91,7 +79,6 @@ const MultipleRoots = args => /*#__PURE__*/_react.default.createElement("div", n
|
|
|
91
79
|
checked: false
|
|
92
80
|
})
|
|
93
81
|
}), /*#__PURE__*/_react.default.createElement("span", null, "Placeholder content")));
|
|
94
|
-
|
|
95
82
|
exports.MultipleRoots = MultipleRoots;
|
|
96
83
|
MultipleRoots.args = {
|
|
97
84
|
open: false,
|
|
@@ -99,7 +86,6 @@ MultipleRoots.args = {
|
|
|
99
86
|
onClose
|
|
100
87
|
};
|
|
101
88
|
MultipleRoots.storyName = 'Multiple roots';
|
|
102
|
-
|
|
103
89
|
const _2LevelsOpen = () => /*#__PURE__*/_react.default.createElement(_node.Node, {
|
|
104
90
|
open: true,
|
|
105
91
|
onOpen: onOpen,
|
|
@@ -226,10 +212,8 @@ const _2LevelsOpen = () => /*#__PURE__*/_react.default.createElement(_node.Node,
|
|
|
226
212
|
checked: false
|
|
227
213
|
})
|
|
228
214
|
}, false && 'Foo'));
|
|
229
|
-
|
|
230
215
|
exports._2LevelsOpen = _2LevelsOpen;
|
|
231
216
|
_2LevelsOpen.storyName = '2 Levels open';
|
|
232
|
-
|
|
233
217
|
const TextLeaves = () => /*#__PURE__*/_react.default.createElement("div", {
|
|
234
218
|
className: "jsx-3948139656"
|
|
235
219
|
}, /*#__PURE__*/_react.default.createElement(_node.Node, {
|
|
@@ -296,12 +280,9 @@ const TextLeaves = () => /*#__PURE__*/_react.default.createElement("div", {
|
|
|
296
280
|
}, "Dummy content")))), /*#__PURE__*/_react.default.createElement(_style.default, {
|
|
297
281
|
id: "3948139656"
|
|
298
282
|
}, ["div.jsx-3948139656{font-size:16px;line-height:24px;}", "h2.jsx-3948139656{font-size:24px;line-height:32px;margin:0 0 10px;}", ".sub-tree.jsx-3948139656{margin-top:10px;}", ".sub-tree--open.jsx-3948139656{margin-bottom:20px;}", "div.jsx-3948139656 .tree__arrow > span{padding-top:4px;}", "div.jsx-3948139656 .tree__arrow.open:after{top:17px;height:calc(100% - 28px);}"]));
|
|
299
|
-
|
|
300
283
|
exports.TextLeaves = TextLeaves;
|
|
301
284
|
TextLeaves.storyName = 'Text leaves';
|
|
302
|
-
|
|
303
285
|
const RTL = args => /*#__PURE__*/_react.default.createElement("div", {
|
|
304
286
|
dir: "rtl"
|
|
305
287
|
}, /*#__PURE__*/_react.default.createElement(MultipleRoots, args));
|
|
306
|
-
|
|
307
288
|
exports.RTL = RTL;
|
package/build/cjs/spacer.js
CHANGED
|
@@ -4,17 +4,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.Spacer = void 0;
|
|
7
|
-
|
|
8
7
|
var _style = _interopRequireDefault(require("styled-jsx/style"));
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
10
|
const Spacer = () => /*#__PURE__*/_react.default.createElement("div", {
|
|
15
11
|
className: "jsx-2503342345"
|
|
16
12
|
}, /*#__PURE__*/_react.default.createElement(_style.default, {
|
|
17
13
|
id: "2503342345"
|
|
18
14
|
}, ["div.jsx-2503342345{width:24px;}"]));
|
|
19
|
-
|
|
20
15
|
exports.Spacer = Spacer;
|
package/build/cjs/toggle.js
CHANGED
|
@@ -4,19 +4,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.Toggle = void 0;
|
|
7
|
-
|
|
8
7
|
var _style = _interopRequireDefault(require("styled-jsx/style"));
|
|
9
|
-
|
|
10
8
|
var _uiConstants = require("@dhis2/ui-constants");
|
|
11
|
-
|
|
12
9
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
|
-
|
|
14
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
|
-
|
|
16
11
|
var _react = _interopRequireDefault(require("react"));
|
|
17
|
-
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
20
13
|
const ArrowDown = () => /*#__PURE__*/_react.default.createElement("div", {
|
|
21
14
|
className: "nodeArrow"
|
|
22
15
|
}, /*#__PURE__*/_react.default.createElement("svg", {
|
|
@@ -29,7 +22,6 @@ const ArrowDown = () => /*#__PURE__*/_react.default.createElement("div", {
|
|
|
29
22
|
}), /*#__PURE__*/_react.default.createElement(_style.default, {
|
|
30
23
|
id: "4098137027"
|
|
31
24
|
}, ["svg.jsx-4098137027{fill:inherit;height:24px;width:24px;vertical-align:middle;pointer-events:none;}"])));
|
|
32
|
-
|
|
33
25
|
const Toggle = _ref => {
|
|
34
26
|
let {
|
|
35
27
|
open,
|
|
@@ -51,9 +43,8 @@ const Toggle = _ref => {
|
|
|
51
43
|
}, /*#__PURE__*/_react.default.createElement(ArrowDown, null)), /*#__PURE__*/_react.default.createElement(_style.default, {
|
|
52
44
|
id: "375729792",
|
|
53
45
|
dynamic: [_uiConstants.colors.grey400, _uiConstants.colors.grey900, _uiConstants.colors.grey100]
|
|
54
|
-
}, ["div.__jsx-style-dynamic-selector{width:24px;position:relative;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;}",
|
|
46
|
+
}, ["div.__jsx-style-dynamic-selector{width:24px;position:relative;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;}", `div.__jsx-style-dynamic-selector:after{background:${_uiConstants.colors.grey400};height:calc(100% - 24px);inset-inline-start:12px;position:absolute;top:15px;width:1px;z-index:1;}`, ".open.__jsx-style-dynamic-selector:after{content:'';}", `span.__jsx-style-dynamic-selector{display:block;position:relative;z-index:2;fill:${_uiConstants.colors.grey900};}`, "div.__jsx-style-dynamic-selector .nodeArrow{vertical-align:top;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);-webkit-transition:-webkit-transform 0.1s ease-out;-webkit-transition:transform 0.1s ease-out;transition:transform 0.1s ease-out;}", "div.__jsx-style-dynamic-selector .nodeArrow:dir(rtl){-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);}", ".open.__jsx-style-dynamic-selector .nodeArrow{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);}", ".open.__jsx-style-dynamic-selector .nodeArrow:dir(rtl){-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);}", `div.__jsx-style-dynamic-selector:hover{cursor:pointer;border-radius:3px;background:${_uiConstants.colors.grey100};}`, "div.__jsx-style-dynamic-selector:hover.__jsx-style-dynamic-selector:after{background:#bcc8d4;}"]));
|
|
55
47
|
};
|
|
56
|
-
|
|
57
48
|
exports.Toggle = Toggle;
|
|
58
49
|
Toggle.propTypes = {
|
|
59
50
|
dataTest: _propTypes.default.string.isRequired,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Given, When, Then } from '@badeball/cypress-cucumber-preprocessor';
|
|
2
2
|
Given('an open Node with an onClose handler is rendered', () => {
|
|
3
|
-
cy.visitStory('Node', 'Open with
|
|
3
|
+
cy.visitStory('Node', 'Open with on close');
|
|
4
4
|
});
|
|
5
5
|
When('the arrow is clicked', () => {
|
|
6
6
|
cy.get('[data-test="dhis2-uicore-node-toggle"]').click();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Given, When, Then } from '@badeball/cypress-cucumber-preprocessor';
|
|
2
2
|
Given('a closed Node with an onOpen handler is rendered', () => {
|
|
3
|
-
cy.visitStory('Node', 'Closed with
|
|
3
|
+
cy.visitStory('Node', 'Closed with on open');
|
|
4
4
|
});
|
|
5
5
|
When('the arrow is clicked', () => {
|
|
6
6
|
cy.get('[data-test="dhis2-uicore-node-toggle"]').click();
|
|
@@ -1,23 +1,30 @@
|
|
|
1
|
-
import { storiesOf } from '@storybook/react';
|
|
2
1
|
import React from 'react';
|
|
3
2
|
import { Node } from './node.js';
|
|
4
3
|
window.onClose = window.Cypress && window.Cypress.cy.stub();
|
|
5
4
|
window.onOpen = window.Cypress && window.Cypress.cy.stub();
|
|
6
|
-
|
|
5
|
+
export default {
|
|
6
|
+
title: 'Node'
|
|
7
|
+
};
|
|
8
|
+
export const OpenWithOnClose = () => /*#__PURE__*/React.createElement(Node, {
|
|
7
9
|
open: true,
|
|
8
10
|
onClose: window.onClose,
|
|
9
11
|
component: /*#__PURE__*/React.createElement("div", null, "Component")
|
|
10
|
-
}, "Children")
|
|
12
|
+
}, "Children");
|
|
13
|
+
export const ClosedWithOnOpen = () => /*#__PURE__*/React.createElement(Node, {
|
|
11
14
|
onOpen: window.onOpen,
|
|
12
15
|
component: /*#__PURE__*/React.createElement("div", null, "Component")
|
|
13
|
-
}, "Children")
|
|
16
|
+
}, "Children");
|
|
17
|
+
export const ClosedWithChildren = () => /*#__PURE__*/React.createElement(Node, {
|
|
14
18
|
component: /*#__PURE__*/React.createElement("div", null, "Component")
|
|
15
|
-
}, "I am a child")
|
|
19
|
+
}, "I am a child");
|
|
20
|
+
export const OpenWithChildren = () => /*#__PURE__*/React.createElement(Node, {
|
|
16
21
|
open: true,
|
|
17
22
|
component: /*#__PURE__*/React.createElement("div", null, "Component")
|
|
18
|
-
}, "I am a child")
|
|
23
|
+
}, "I am a child");
|
|
24
|
+
export const WithComponent = () => /*#__PURE__*/React.createElement(Node, {
|
|
19
25
|
component: /*#__PURE__*/React.createElement("div", null, "I am a component")
|
|
20
|
-
}, "Children")
|
|
26
|
+
}, "Children");
|
|
27
|
+
export const WithIcon = () => /*#__PURE__*/React.createElement(Node, {
|
|
21
28
|
component: /*#__PURE__*/React.createElement("div", null, "Component"),
|
|
22
29
|
icon: /*#__PURE__*/React.createElement("div", null, "Icon")
|
|
23
|
-
}, "Children")
|
|
30
|
+
}, "Children");
|
package/build/es/node.js
CHANGED
|
@@ -23,22 +23,22 @@ export const Node = _ref => {
|
|
|
23
23
|
"data-test": dataTest,
|
|
24
24
|
className: "jsx-1433072554" + " " + (cx('node', className) || "")
|
|
25
25
|
}, icon && /*#__PURE__*/React.createElement("div", {
|
|
26
|
-
"data-test":
|
|
26
|
+
"data-test": `${dataTest}-icon`,
|
|
27
27
|
className: "jsx-1433072554"
|
|
28
28
|
}, icon), showArrow && /*#__PURE__*/React.createElement(Toggle, {
|
|
29
29
|
open: open,
|
|
30
30
|
onOpen: onOpen,
|
|
31
31
|
onClose: onClose,
|
|
32
|
-
dataTest:
|
|
32
|
+
dataTest: `${dataTest}-toggle`
|
|
33
33
|
}), showSpacer && /*#__PURE__*/React.createElement(Spacer, null), /*#__PURE__*/React.createElement("div", {
|
|
34
|
-
"data-test":
|
|
34
|
+
"data-test": `${dataTest}-content`,
|
|
35
35
|
className: "jsx-1433072554"
|
|
36
36
|
}, /*#__PURE__*/React.createElement("div", {
|
|
37
|
-
"data-test":
|
|
37
|
+
"data-test": `${dataTest}-label`,
|
|
38
38
|
className: "jsx-1433072554"
|
|
39
39
|
}, label), /*#__PURE__*/React.createElement(Leaves, {
|
|
40
40
|
open: open,
|
|
41
|
-
dataTest:
|
|
41
|
+
dataTest: `${dataTest}-leaves`
|
|
42
42
|
}, children)), /*#__PURE__*/React.createElement(_JSXStyle, {
|
|
43
43
|
id: "1433072554"
|
|
44
44
|
}, [".node.jsx-1433072554{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}"]));
|
|
@@ -50,11 +50,9 @@ Node.propTypes = {
|
|
|
50
50
|
/** Content below this level of the hierarchy; children are revealed when this leaf is 'open' */
|
|
51
51
|
children: PropTypes.node,
|
|
52
52
|
className: PropTypes.string,
|
|
53
|
-
|
|
54
53
|
/** Content/label for this leaf, for example a checkbox */
|
|
55
54
|
component: PropTypes.element,
|
|
56
55
|
dataTest: PropTypes.string,
|
|
57
|
-
|
|
58
56
|
/** A custom icon to use instead of a toggle arrow */
|
|
59
57
|
icon: PropTypes.node,
|
|
60
58
|
open: PropTypes.bool,
|
|
@@ -1,33 +1,31 @@
|
|
|
1
1
|
import _JSXStyle from "styled-jsx/style";
|
|
2
|
-
|
|
3
|
-
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
4
|
-
|
|
2
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
5
3
|
import { Checkbox } from '@dhis2-ui/checkbox';
|
|
6
4
|
import { CircularLoader } from '@dhis2-ui/loader';
|
|
7
5
|
import React from 'react';
|
|
8
6
|
import { Node } from './node.js';
|
|
9
|
-
const description =
|
|
7
|
+
const description = `
|
|
8
|
+
A tool for creating hierarchical, multi-level selectors. Applied in the Organisation Unit Tree component, for example.
|
|
10
9
|
|
|
10
|
+
\`\`\`js
|
|
11
|
+
import { Node } from '@dhis2/ui'
|
|
12
|
+
\`\`\`
|
|
13
|
+
`;
|
|
11
14
|
const say = something => () => alert(something);
|
|
12
|
-
|
|
13
15
|
window.onOpen = (payload, event) => {
|
|
14
16
|
console.log('onOpen payload', payload);
|
|
15
17
|
console.log('onOpen event', event);
|
|
16
18
|
};
|
|
17
|
-
|
|
18
19
|
window.onClose = (payload, event) => {
|
|
19
20
|
console.log('onClose payload', payload);
|
|
20
21
|
console.log('onClose event', event);
|
|
21
22
|
};
|
|
22
|
-
|
|
23
23
|
const onOpen = function () {
|
|
24
24
|
return window.onOpen(...arguments);
|
|
25
25
|
};
|
|
26
|
-
|
|
27
26
|
const onClose = function () {
|
|
28
27
|
return window.onClose(...arguments);
|
|
29
28
|
};
|
|
30
|
-
|
|
31
29
|
export default {
|
|
32
30
|
title: 'Node',
|
|
33
31
|
component: Node,
|
package/build/es/toggle.js
CHANGED
|
@@ -3,7 +3,6 @@ import { colors } from '@dhis2/ui-constants';
|
|
|
3
3
|
import cx from 'classnames';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
5
|
import React from 'react';
|
|
6
|
-
|
|
7
6
|
const ArrowDown = () => /*#__PURE__*/React.createElement("div", {
|
|
8
7
|
className: "nodeArrow"
|
|
9
8
|
}, /*#__PURE__*/React.createElement("svg", {
|
|
@@ -16,7 +15,6 @@ const ArrowDown = () => /*#__PURE__*/React.createElement("div", {
|
|
|
16
15
|
}), /*#__PURE__*/React.createElement(_JSXStyle, {
|
|
17
16
|
id: "4098137027"
|
|
18
17
|
}, ["svg.jsx-4098137027{fill:inherit;height:24px;width:24px;vertical-align:middle;pointer-events:none;}"])));
|
|
19
|
-
|
|
20
18
|
export const Toggle = _ref => {
|
|
21
19
|
let {
|
|
22
20
|
open,
|
|
@@ -38,7 +36,7 @@ export const Toggle = _ref => {
|
|
|
38
36
|
}, /*#__PURE__*/React.createElement(ArrowDown, null)), /*#__PURE__*/React.createElement(_JSXStyle, {
|
|
39
37
|
id: "375729792",
|
|
40
38
|
dynamic: [colors.grey400, colors.grey900, colors.grey100]
|
|
41
|
-
}, ["div.__jsx-style-dynamic-selector{width:24px;position:relative;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;}",
|
|
39
|
+
}, ["div.__jsx-style-dynamic-selector{width:24px;position:relative;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;}", `div.__jsx-style-dynamic-selector:after{background:${colors.grey400};height:calc(100% - 24px);inset-inline-start:12px;position:absolute;top:15px;width:1px;z-index:1;}`, ".open.__jsx-style-dynamic-selector:after{content:'';}", `span.__jsx-style-dynamic-selector{display:block;position:relative;z-index:2;fill:${colors.grey900};}`, "div.__jsx-style-dynamic-selector .nodeArrow{vertical-align:top;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);-webkit-transition:-webkit-transform 0.1s ease-out;-webkit-transition:transform 0.1s ease-out;transition:transform 0.1s ease-out;}", "div.__jsx-style-dynamic-selector .nodeArrow:dir(rtl){-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);}", ".open.__jsx-style-dynamic-selector .nodeArrow{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);}", ".open.__jsx-style-dynamic-selector .nodeArrow:dir(rtl){-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);}", `div.__jsx-style-dynamic-selector:hover{cursor:pointer;border-radius:3px;background:${colors.grey100};}`, "div.__jsx-style-dynamic-selector:hover.__jsx-style-dynamic-selector:after{background:#bcc8d4;}"]));
|
|
42
40
|
};
|
|
43
41
|
Toggle.propTypes = {
|
|
44
42
|
dataTest: PropTypes.string.isRequired,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dhis2-ui/node",
|
|
3
|
-
"version": "9.11.
|
|
3
|
+
"version": "9.11.1-beta.1",
|
|
4
4
|
"description": "UI Node",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -22,19 +22,19 @@
|
|
|
22
22
|
"access": "public"
|
|
23
23
|
},
|
|
24
24
|
"scripts": {
|
|
25
|
-
"start": "
|
|
25
|
+
"start": "storybook dev -c ../../storybook/config --port 5000",
|
|
26
26
|
"build": "d2-app-scripts build",
|
|
27
27
|
"test": "d2-app-scripts test --jestConfig ../../jest.config.shared.js"
|
|
28
28
|
},
|
|
29
29
|
"peerDependencies": {
|
|
30
|
-
"react": "^16.
|
|
31
|
-
"react-dom": "^16.
|
|
30
|
+
"react": "^16.13",
|
|
31
|
+
"react-dom": "^16.13",
|
|
32
32
|
"styled-jsx": "^4"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"@dhis2/prop-types": "^3.1.2",
|
|
36
|
-
"@dhis2-ui/loader": "9.11.
|
|
37
|
-
"@dhis2/ui-constants": "9.11.
|
|
36
|
+
"@dhis2-ui/loader": "9.11.1-beta.1",
|
|
37
|
+
"@dhis2/ui-constants": "9.11.1-beta.1",
|
|
38
38
|
"classnames": "^2.3.1",
|
|
39
39
|
"prop-types": "^15.7.2"
|
|
40
40
|
},
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _react = require("@storybook/react");
|
|
4
|
-
|
|
5
|
-
var _react2 = _interopRequireDefault(require("react"));
|
|
6
|
-
|
|
7
|
-
var _node = require("./node.js");
|
|
8
|
-
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
|
|
11
|
-
window.onClose = window.Cypress && window.Cypress.cy.stub();
|
|
12
|
-
window.onOpen = window.Cypress && window.Cypress.cy.stub();
|
|
13
|
-
(0, _react.storiesOf)('Node', module).add('Open with onClose', () => /*#__PURE__*/_react2.default.createElement(_node.Node, {
|
|
14
|
-
open: true,
|
|
15
|
-
onClose: window.onClose,
|
|
16
|
-
component: /*#__PURE__*/_react2.default.createElement("div", null, "Component")
|
|
17
|
-
}, "Children")).add('Closed with onOpen', () => /*#__PURE__*/_react2.default.createElement(_node.Node, {
|
|
18
|
-
onOpen: window.onOpen,
|
|
19
|
-
component: /*#__PURE__*/_react2.default.createElement("div", null, "Component")
|
|
20
|
-
}, "Children")).add('Closed with children', () => /*#__PURE__*/_react2.default.createElement(_node.Node, {
|
|
21
|
-
component: /*#__PURE__*/_react2.default.createElement("div", null, "Component")
|
|
22
|
-
}, "I am a child")).add('Open with children', () => /*#__PURE__*/_react2.default.createElement(_node.Node, {
|
|
23
|
-
open: true,
|
|
24
|
-
component: /*#__PURE__*/_react2.default.createElement("div", null, "Component")
|
|
25
|
-
}, "I am a child")).add('With component', () => /*#__PURE__*/_react2.default.createElement(_node.Node, {
|
|
26
|
-
component: /*#__PURE__*/_react2.default.createElement("div", null, "I am a component")
|
|
27
|
-
}, "Children")).add('With icon', () => /*#__PURE__*/_react2.default.createElement(_node.Node, {
|
|
28
|
-
component: /*#__PURE__*/_react2.default.createElement("div", null, "Component"),
|
|
29
|
-
icon: /*#__PURE__*/_react2.default.createElement("div", null, "Icon")
|
|
30
|
-
}, "Children"));
|