@atlaskit/progress-tracker 8.0.4 → 8.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 +6 -0
- package/dist/cjs/constants.js +4 -2
- package/dist/cjs/index.js +2 -2
- package/dist/cjs/internal/bar.js +48 -0
- package/dist/cjs/internal/constants.js +38 -0
- package/dist/cjs/internal/link.js +35 -0
- package/dist/cjs/internal/marker.js +53 -0
- package/dist/cjs/{ProgressTrackerStage/index.js → internal/stage.js} +70 -95
- package/dist/cjs/internal/types.js +5 -0
- package/dist/cjs/internal/utils.js +65 -0
- package/dist/cjs/{ProgressTracker/index.js → progress-tracker.js} +44 -42
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/constants.js +6 -4
- package/dist/es2019/index.js +1 -1
- package/dist/es2019/internal/bar.js +35 -0
- package/dist/es2019/internal/constants.js +16 -0
- package/dist/es2019/internal/link.js +24 -0
- package/dist/es2019/internal/marker.js +42 -0
- package/dist/es2019/internal/stage.js +130 -0
- package/dist/es2019/internal/types.js +1 -0
- package/dist/es2019/internal/utils.js +48 -0
- package/dist/es2019/{ProgressTracker/index.js → progress-tracker.js} +47 -32
- package/dist/es2019/version.json +1 -1
- package/dist/esm/constants.js +6 -4
- package/dist/esm/index.js +1 -1
- package/dist/esm/internal/bar.js +36 -0
- package/dist/esm/internal/constants.js +16 -0
- package/dist/esm/internal/link.js +25 -0
- package/dist/esm/internal/marker.js +43 -0
- package/dist/esm/{ProgressTrackerStage/index.js → internal/stage.js} +70 -89
- package/dist/esm/internal/types.js +1 -0
- package/dist/esm/internal/utils.js +48 -0
- package/dist/esm/{ProgressTracker/index.js → progress-tracker.js} +46 -36
- package/dist/esm/version.json +1 -1
- package/dist/types/constants.d.ts +9 -2
- package/dist/types/index.d.ts +2 -2
- package/dist/types/internal/bar.d.ts +12 -0
- package/dist/types/internal/constants.d.ts +14 -0
- package/dist/types/internal/link.d.ts +10 -0
- package/dist/types/internal/marker.d.ts +11 -0
- package/dist/types/internal/stage.d.ts +17 -0
- package/dist/types/internal/types.d.ts +27 -0
- package/dist/types/internal/utils.d.ts +4 -0
- package/dist/types/{ProgressTracker/index.d.ts → progress-tracker.d.ts} +22 -13
- package/dist/types/types.d.ts +10 -4
- package/package.json +15 -6
- package/dist/cjs/ProgressTracker/styled.js +0 -20
- package/dist/cjs/ProgressTrackerLink/index.js +0 -60
- package/dist/cjs/ProgressTrackerLink/styled.js +0 -22
- package/dist/cjs/ProgressTrackerStage/styled.js +0 -133
- package/dist/es2019/ProgressTracker/styled.js +0 -13
- package/dist/es2019/ProgressTrackerLink/index.js +0 -16
- package/dist/es2019/ProgressTrackerLink/styled.js +0 -7
- package/dist/es2019/ProgressTrackerStage/index.js +0 -143
- package/dist/es2019/ProgressTrackerStage/styled.js +0 -140
- package/dist/esm/ProgressTracker/styled.js +0 -7
- package/dist/esm/ProgressTrackerLink/index.js +0 -42
- package/dist/esm/ProgressTrackerLink/styled.js +0 -8
- package/dist/esm/ProgressTrackerStage/styled.js +0 -107
- package/dist/types/ProgressTracker/styled.d.ts +0 -3
- package/dist/types/ProgressTrackerLink/index.d.ts +0 -10
- package/dist/types/ProgressTrackerLink/styled.d.ts +0 -3
- package/dist/types/ProgressTrackerStage/index.d.ts +0 -27
- package/dist/types/ProgressTrackerStage/styled.d.ts +0 -28
|
@@ -1,17 +1,30 @@
|
|
|
1
|
+
/** @jsx jsx */
|
|
1
2
|
import { PureComponent } from 'react';
|
|
2
|
-
import { LinkComponentProps, ProgressTrackerStageRenderProp, Spacing, Stages } from '
|
|
3
|
+
import type { LinkComponentProps, ProgressTrackerStageRenderProp, Spacing, Stages } from './types';
|
|
3
4
|
export interface ProgressTrackerProps {
|
|
4
|
-
/**
|
|
5
|
+
/**
|
|
6
|
+
* Ordered list of stage data
|
|
7
|
+
*/
|
|
5
8
|
items: Stages;
|
|
6
|
-
/**
|
|
9
|
+
/**
|
|
10
|
+
* Margin spacing type between steps
|
|
11
|
+
*/
|
|
7
12
|
spacing: Spacing;
|
|
8
|
-
/**
|
|
13
|
+
/**
|
|
14
|
+
* Render prop to specify custom implementations of components
|
|
15
|
+
*/
|
|
9
16
|
render: ProgressTrackerStageRenderProp;
|
|
10
|
-
/**
|
|
17
|
+
/**
|
|
18
|
+
* Turns off transition animations if set to false
|
|
19
|
+
*/
|
|
11
20
|
animated: boolean;
|
|
12
|
-
/**
|
|
21
|
+
/**
|
|
22
|
+
* A `testId` prop is provided for specified elements, which is a unique string that appears as a data attribute `data-testid` in the rendered code, serving as a hook for automated tests
|
|
23
|
+
*/
|
|
13
24
|
testId?: string;
|
|
14
|
-
/**
|
|
25
|
+
/**
|
|
26
|
+
* Text to be used as an aria-label of progress tracker
|
|
27
|
+
*/
|
|
15
28
|
label?: string;
|
|
16
29
|
}
|
|
17
30
|
interface State {
|
|
@@ -22,21 +35,17 @@ export default class ProgressTracker extends PureComponent<ProgressTrackerProps,
|
|
|
22
35
|
items: never[];
|
|
23
36
|
spacing: string;
|
|
24
37
|
render: {
|
|
25
|
-
link: (
|
|
38
|
+
link: ({ item }: LinkComponentProps) => JSX.Element;
|
|
26
39
|
};
|
|
27
40
|
animated: boolean;
|
|
28
41
|
label: string;
|
|
29
42
|
};
|
|
30
|
-
createTheme: () => {
|
|
31
|
-
spacing: Spacing;
|
|
32
|
-
columns: number;
|
|
33
|
-
};
|
|
34
43
|
state: {
|
|
35
44
|
prevStages: {
|
|
36
45
|
percentageComplete: number;
|
|
37
46
|
id: string;
|
|
38
47
|
label: string;
|
|
39
|
-
status: import("
|
|
48
|
+
status: import("./types").Status;
|
|
40
49
|
noLink?: boolean | undefined;
|
|
41
50
|
href?: string | undefined;
|
|
42
51
|
onClick?: (() => void) | undefined;
|
package/dist/types/types.d.ts
CHANGED
|
@@ -1,11 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Ideally these are exported by @atlaskit/page
|
|
3
|
+
*/
|
|
4
|
+
export type { Spacing } from './constants';
|
|
5
|
+
export declare type Status = 'unvisited' | 'visited' | 'current' | 'disabled';
|
|
6
|
+
/**
|
|
7
|
+
* @deprecated
|
|
8
|
+
*/
|
|
9
|
+
export declare type StatusType = Status;
|
|
4
10
|
export interface Stage {
|
|
5
11
|
id: string;
|
|
6
12
|
label: string;
|
|
7
13
|
percentageComplete: number;
|
|
8
|
-
status:
|
|
14
|
+
status: Status;
|
|
9
15
|
noLink?: boolean;
|
|
10
16
|
href?: string;
|
|
11
17
|
onClick?: () => void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/progress-tracker",
|
|
3
|
-
"version": "8.0
|
|
3
|
+
"version": "8.1.0",
|
|
4
4
|
"description": "A progress tracker displays the steps and progress through a journey.",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -13,10 +13,9 @@
|
|
|
13
13
|
"module:es2019": "dist/es2019/index.js",
|
|
14
14
|
"types": "dist/types/index.d.ts",
|
|
15
15
|
"sideEffects": false,
|
|
16
|
-
"atlaskit:src": "src/index.
|
|
16
|
+
"atlaskit:src": "src/index.tsx",
|
|
17
17
|
"atlassian": {
|
|
18
18
|
"team": "Design System Team",
|
|
19
|
-
"deprecatedAutoEntryPoints": true,
|
|
20
19
|
"inPublicMirror": true,
|
|
21
20
|
"releaseModel": "scheduled",
|
|
22
21
|
"website": {
|
|
@@ -24,14 +23,13 @@
|
|
|
24
23
|
}
|
|
25
24
|
},
|
|
26
25
|
"dependencies": {
|
|
27
|
-
"@atlaskit/page": "^12.0.0",
|
|
28
26
|
"@atlaskit/theme": "^12.0.0",
|
|
29
27
|
"@babel/runtime": "^7.0.0",
|
|
28
|
+
"@emotion/core": "^10.0.9",
|
|
30
29
|
"react-transition-group": "^4.4.1"
|
|
31
30
|
},
|
|
32
31
|
"peerDependencies": {
|
|
33
|
-
"react": "^16.8.0"
|
|
34
|
-
"styled-components": "^3.2.6"
|
|
32
|
+
"react": "^16.8.0"
|
|
35
33
|
},
|
|
36
34
|
"devDependencies": {
|
|
37
35
|
"@atlaskit/build-utils": "*",
|
|
@@ -52,8 +50,19 @@
|
|
|
52
50
|
"techstack": {
|
|
53
51
|
"@atlassian/frontend": {
|
|
54
52
|
"import-structure": "atlassian-conventions"
|
|
53
|
+
},
|
|
54
|
+
"@repo/internal": {
|
|
55
|
+
"design-system": "v1",
|
|
56
|
+
"styling": "emotion",
|
|
57
|
+
"analytics": "analytics-next",
|
|
58
|
+
"deprecation": "no-deprecated-imports"
|
|
55
59
|
}
|
|
56
60
|
},
|
|
61
|
+
"af:exports": {
|
|
62
|
+
"./constants": "./src/constants.tsx",
|
|
63
|
+
"./types": "./src/types.tsx",
|
|
64
|
+
".": "./src/index.tsx"
|
|
65
|
+
},
|
|
57
66
|
"homepage": "https://atlassian.design/components/progress-tracker/",
|
|
58
67
|
"prettier": "@atlassian/atlassian-frontend-prettier-config-1.0.1"
|
|
59
68
|
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = exports.ProgressTrackerContainer = void 0;
|
|
9
|
-
|
|
10
|
-
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
|
-
|
|
12
|
-
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
13
|
-
|
|
14
|
-
var _templateObject;
|
|
15
|
-
|
|
16
|
-
var ProgressTrackerContainer = _styledComponents.default.ul(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n width: 100%;\n\n && {\n margin-top: 40px;\n }\n\n list-style-type: none;\n padding: 0px;\n"])));
|
|
17
|
-
|
|
18
|
-
exports.ProgressTrackerContainer = ProgressTrackerContainer;
|
|
19
|
-
var _default = ProgressTrackerContainer;
|
|
20
|
-
exports.default = _default;
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
|
-
Object.defineProperty(exports, "__esModule", {
|
|
8
|
-
value: true
|
|
9
|
-
});
|
|
10
|
-
exports.default = void 0;
|
|
11
|
-
|
|
12
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
|
-
|
|
14
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
|
-
|
|
16
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
-
|
|
18
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
-
|
|
20
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
-
|
|
22
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
23
|
-
|
|
24
|
-
var _styled = require("./styled");
|
|
25
|
-
|
|
26
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
27
|
-
|
|
28
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
29
|
-
|
|
30
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
31
|
-
|
|
32
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
33
|
-
|
|
34
|
-
var ProgressTrackerLink = /*#__PURE__*/function (_PureComponent) {
|
|
35
|
-
(0, _inherits2.default)(ProgressTrackerLink, _PureComponent);
|
|
36
|
-
|
|
37
|
-
var _super = _createSuper(ProgressTrackerLink);
|
|
38
|
-
|
|
39
|
-
function ProgressTrackerLink() {
|
|
40
|
-
(0, _classCallCheck2.default)(this, ProgressTrackerLink);
|
|
41
|
-
return _super.apply(this, arguments);
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
(0, _createClass2.default)(ProgressTrackerLink, [{
|
|
45
|
-
key: "render",
|
|
46
|
-
value: function render() {
|
|
47
|
-
var _this$props$item = this.props.item,
|
|
48
|
-
href = _this$props$item.href,
|
|
49
|
-
onClick = _this$props$item.onClick,
|
|
50
|
-
label = _this$props$item.label;
|
|
51
|
-
return /*#__PURE__*/_react.default.createElement(_styled.Link, {
|
|
52
|
-
href: href,
|
|
53
|
-
onClick: onClick
|
|
54
|
-
}, label);
|
|
55
|
-
}
|
|
56
|
-
}]);
|
|
57
|
-
return ProgressTrackerLink;
|
|
58
|
-
}(_react.PureComponent);
|
|
59
|
-
|
|
60
|
-
exports.default = ProgressTrackerLink;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = exports.Link = void 0;
|
|
9
|
-
|
|
10
|
-
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
|
-
|
|
12
|
-
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
13
|
-
|
|
14
|
-
var _colors = require("@atlaskit/theme/colors");
|
|
15
|
-
|
|
16
|
-
var _templateObject;
|
|
17
|
-
|
|
18
|
-
var Link = _styledComponents.default.a(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n cursor: pointer;\n color: ", ";\n"])), _colors.N800);
|
|
19
|
-
|
|
20
|
-
exports.Link = Link;
|
|
21
|
-
var _default = Link;
|
|
22
|
-
exports.default = _default;
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.ProgressTrackerListItem = exports.ProgressTrackerStageTitle = exports.ProgressTrackerStageBar = exports.ProgressTrackerStageMarker = exports.ProgressTrackerStageContainer = void 0;
|
|
9
|
-
|
|
10
|
-
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
|
-
|
|
12
|
-
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
13
|
-
|
|
14
|
-
var _colors = require("@atlaskit/theme/colors");
|
|
15
|
-
|
|
16
|
-
var _constants = require("@atlaskit/theme/constants");
|
|
17
|
-
|
|
18
|
-
var _constants2 = require("../constants");
|
|
19
|
-
|
|
20
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
21
|
-
|
|
22
|
-
var halfGridSize = (0, _constants.gridSize)() / 2;
|
|
23
|
-
var progressBarHeight = (0, _constants.gridSize)();
|
|
24
|
-
var labelTopSpacing = (0, _constants.gridSize)() + 20; // Labels sit 20px from bottom of progress bar.
|
|
25
|
-
|
|
26
|
-
var ProgressTrackerStageContainer = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n position: relative;\n width: 100%;\n"])));
|
|
27
|
-
|
|
28
|
-
exports.ProgressTrackerStageContainer = ProgressTrackerStageContainer;
|
|
29
|
-
|
|
30
|
-
var ProgressTrackerStageMarker = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n left: 50%;\n transform: translate(-50%, -", "px);\n background-color: ", ";\n height: ", "px;\n width: ", "px;\n border-radius: ", "px;\n\n &.fade-appear {\n opacity: 0.01;\n }\n\n &.fade-appear.fade-appear-active {\n opacity: 1;\n transition: opacity ", "ms\n ", ";\n transition-delay: ", "ms;\n }\n\n &.fade-enter {\n background-color: ", ";\n }\n\n &.fade-enter.fade-enter-active {\n background-color: ", ";\n transition: background-color ", "ms\n ", ";\n transition-delay: ", "ms;\n }\n"])), labelTopSpacing, function (props) {
|
|
31
|
-
return props.color;
|
|
32
|
-
}, progressBarHeight, progressBarHeight, progressBarHeight, function (props) {
|
|
33
|
-
return props.transitionSpeed;
|
|
34
|
-
}, function (props) {
|
|
35
|
-
return props.transitionEasing;
|
|
36
|
-
}, function (props) {
|
|
37
|
-
return props.transitionDelay;
|
|
38
|
-
}, function (props) {
|
|
39
|
-
return props.oldMarkerColor;
|
|
40
|
-
}, function (props) {
|
|
41
|
-
return props.color;
|
|
42
|
-
}, function (props) {
|
|
43
|
-
return props.transitionSpeed;
|
|
44
|
-
}, function (props) {
|
|
45
|
-
return props.transitionEasing;
|
|
46
|
-
}, function (props) {
|
|
47
|
-
return props.transitionDelay;
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
exports.ProgressTrackerStageMarker = ProgressTrackerStageMarker;
|
|
51
|
-
|
|
52
|
-
var ProgressTrackerStageBar = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n left: 50%;\n transform: translate(0, -", "px);\n background-color: ", ";\n height: ", "px;\n width: calc(\n ", "% +\n ", " / 100 *\n ", "px\n ); /* account for spacing and radius of marker */\n border-top-right-radius: ", "px;\n border-bottom-right-radius: ", "px;\n\n &.fade-appear {\n width: calc(\n ", "% +\n ", " / 100 *\n ", "px\n ); /* account for spacing and radius of marker */\n }\n\n &.fade-appear.fade-appear-active {\n width: calc(\n ", "% +\n ", " / 100 *\n ", "px\n ); /* account for spacing and radius of marker */\n transition: width ", "ms\n ", ";\n transition-delay: ", "ms;\n }\n\n &.fade-enter {\n width: calc(\n ", "% +\n ", " / 100 *\n ", "px\n ); /* account for spacing and radius of marker */\n }\n\n &.fade-enter.fade-enter-active {\n width: calc(\n ", "% +\n ", " / 100 *\n ", "px\n ); /* account for spacing and radius of marker */\n transition: width ", "ms\n ", ";\n transition-delay: ", "ms;\n }\n"])), labelTopSpacing, _colors.B300, progressBarHeight, function (props) {
|
|
53
|
-
return props.percentageComplete;
|
|
54
|
-
}, function (props) {
|
|
55
|
-
return props.percentageComplete;
|
|
56
|
-
}, function (props) {
|
|
57
|
-
return halfGridSize + _constants2.spacing[props.theme.spacing];
|
|
58
|
-
}, _constants.gridSize, _constants.gridSize, function (props) {
|
|
59
|
-
return props.oldPercentageComplete;
|
|
60
|
-
}, function (props) {
|
|
61
|
-
return props.oldPercentageComplete;
|
|
62
|
-
}, function (props) {
|
|
63
|
-
return halfGridSize + _constants2.spacing[props.theme.spacing];
|
|
64
|
-
}, function (props) {
|
|
65
|
-
return props.percentageComplete;
|
|
66
|
-
}, function (props) {
|
|
67
|
-
return props.percentageComplete;
|
|
68
|
-
}, function (props) {
|
|
69
|
-
return halfGridSize + _constants2.spacing[props.theme.spacing];
|
|
70
|
-
}, function (props) {
|
|
71
|
-
return props.transitionSpeed;
|
|
72
|
-
}, function (props) {
|
|
73
|
-
return props.transitionEasing;
|
|
74
|
-
}, function (props) {
|
|
75
|
-
return props.transitionDelay;
|
|
76
|
-
}, function (props) {
|
|
77
|
-
return props.oldPercentageComplete;
|
|
78
|
-
}, function (props) {
|
|
79
|
-
return props.oldPercentageComplete;
|
|
80
|
-
}, function (props) {
|
|
81
|
-
return halfGridSize + _constants2.spacing[props.theme.spacing];
|
|
82
|
-
}, function (props) {
|
|
83
|
-
return props.percentageComplete;
|
|
84
|
-
}, function (props) {
|
|
85
|
-
return props.percentageComplete;
|
|
86
|
-
}, function (props) {
|
|
87
|
-
return halfGridSize + _constants2.spacing[props.theme.spacing];
|
|
88
|
-
}, function (props) {
|
|
89
|
-
return props.transitionSpeed;
|
|
90
|
-
}, function (props) {
|
|
91
|
-
return props.transitionEasing;
|
|
92
|
-
}, function (props) {
|
|
93
|
-
return props.transitionDelay;
|
|
94
|
-
});
|
|
95
|
-
|
|
96
|
-
exports.ProgressTrackerStageBar = ProgressTrackerStageBar;
|
|
97
|
-
|
|
98
|
-
var ProgressTrackerStageTitle = _styledComponents.default.div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n font-weight: ", ";\n line-height: 16px;\n color: ", ";\n text-align: center;\n font-size: ", "px;\n margin-left: auto;\n margin-right: auto;\n margin-top: ", "px;\n\n &.fade-appear {\n opacity: 0.01;\n }\n\n &.fade-appear.fade-appear-active {\n opacity: 1;\n transition: opacity ", "ms\n cubic-bezier(0.2, 0, 0, 1);\n }\n"])), function (props) {
|
|
99
|
-
return props.fontweight;
|
|
100
|
-
}, function (props) {
|
|
101
|
-
return props.color;
|
|
102
|
-
}, _constants.fontSize, labelTopSpacing, function (props) {
|
|
103
|
-
return props.transitionSpeed;
|
|
104
|
-
});
|
|
105
|
-
|
|
106
|
-
exports.ProgressTrackerStageTitle = ProgressTrackerStageTitle;
|
|
107
|
-
|
|
108
|
-
// Copied styles of GridColumn from @atlaskit/page
|
|
109
|
-
var availableColumns = function availableColumns(props) {
|
|
110
|
-
return props.theme.columns;
|
|
111
|
-
};
|
|
112
|
-
|
|
113
|
-
var columns = function columns(props) {
|
|
114
|
-
return Math.min(availableColumns(props), 2);
|
|
115
|
-
};
|
|
116
|
-
|
|
117
|
-
var gridSpacing = function gridSpacing(props) {
|
|
118
|
-
return _constants2.spacing[props.theme.spacing];
|
|
119
|
-
};
|
|
120
|
-
|
|
121
|
-
var getMaxWidthColumnRatio = function getMaxWidthColumnRatio(props) {
|
|
122
|
-
if (columns(props) >= availableColumns(props)) {
|
|
123
|
-
return '100%';
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
return "99.9999% / ".concat(availableColumns(props), " * ").concat(columns(props));
|
|
127
|
-
};
|
|
128
|
-
|
|
129
|
-
var ProgressTrackerListItem = _styledComponents.default.li(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n flex-grow: 1;\n flex-shrink: 0;\n margin: 0 ", "px;\n word-wrap: break-word;\n\n max-width: calc(", " - ", "px);\n min-width: calc(99.9999% / ", " - ", "px);\n"])), function (props) {
|
|
130
|
-
return _constants2.spacing[props.theme.spacing] / 2;
|
|
131
|
-
}, getMaxWidthColumnRatio, gridSpacing, availableColumns, gridSpacing);
|
|
132
|
-
|
|
133
|
-
exports.ProgressTrackerListItem = ProgressTrackerListItem;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import React, { PureComponent } from 'react';
|
|
2
|
-
import { Link } from './styled';
|
|
3
|
-
export default class ProgressTrackerLink extends PureComponent {
|
|
4
|
-
render() {
|
|
5
|
-
const {
|
|
6
|
-
href,
|
|
7
|
-
onClick,
|
|
8
|
-
label
|
|
9
|
-
} = this.props.item;
|
|
10
|
-
return /*#__PURE__*/React.createElement(Link, {
|
|
11
|
-
href: href,
|
|
12
|
-
onClick: onClick
|
|
13
|
-
}, label);
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
}
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
import React, { PureComponent } from 'react';
|
|
2
|
-
import { CSSTransition } from 'react-transition-group';
|
|
3
|
-
import * as colors from '@atlaskit/theme/colors';
|
|
4
|
-
import { ProgressTrackerListItem, ProgressTrackerStageBar, ProgressTrackerStageContainer, ProgressTrackerStageMarker, ProgressTrackerStageTitle } from './styled';
|
|
5
|
-
const semibold = '600';
|
|
6
|
-
const regular = '400';
|
|
7
|
-
|
|
8
|
-
const getMarkerColor = status => {
|
|
9
|
-
switch (status) {
|
|
10
|
-
case 'unvisited':
|
|
11
|
-
return colors.N70;
|
|
12
|
-
|
|
13
|
-
case 'current':
|
|
14
|
-
case 'visited':
|
|
15
|
-
case 'disabled':
|
|
16
|
-
return colors.B300;
|
|
17
|
-
|
|
18
|
-
default:
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
const getTextColor = status => {
|
|
24
|
-
switch (status) {
|
|
25
|
-
case 'unvisited':
|
|
26
|
-
return colors.N300;
|
|
27
|
-
|
|
28
|
-
case 'current':
|
|
29
|
-
return colors.B300;
|
|
30
|
-
|
|
31
|
-
case 'visited':
|
|
32
|
-
return colors.N800;
|
|
33
|
-
|
|
34
|
-
case 'disabled':
|
|
35
|
-
return colors.N70;
|
|
36
|
-
|
|
37
|
-
default:
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
const getFontWeight = status => {
|
|
43
|
-
switch (status) {
|
|
44
|
-
case 'unvisited':
|
|
45
|
-
return regular;
|
|
46
|
-
|
|
47
|
-
case 'current':
|
|
48
|
-
case 'visited':
|
|
49
|
-
case 'disabled':
|
|
50
|
-
return semibold;
|
|
51
|
-
|
|
52
|
-
default:
|
|
53
|
-
return;
|
|
54
|
-
}
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
export default class ProgressTrackerStage extends PureComponent {
|
|
58
|
-
constructor(props) {
|
|
59
|
-
super(props);
|
|
60
|
-
this.state = {
|
|
61
|
-
transitioning: false,
|
|
62
|
-
oldMarkerColor: getMarkerColor(this.props.item.status),
|
|
63
|
-
oldPercentageComplete: 0
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
UNSAFE_componentWillMount() {
|
|
68
|
-
this.setState({ ...this.state,
|
|
69
|
-
transitioning: true
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
UNSAFE_componentWillReceiveProps() {
|
|
74
|
-
this.setState({ ...this.state,
|
|
75
|
-
transitioning: true
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
shouldShowLink() {
|
|
80
|
-
return this.props.item.status === 'visited' && !this.props.item.noLink;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
render() {
|
|
84
|
-
const {
|
|
85
|
-
item,
|
|
86
|
-
render,
|
|
87
|
-
transitionDelay,
|
|
88
|
-
transitionSpeed,
|
|
89
|
-
transitionEasing
|
|
90
|
-
} = this.props;
|
|
91
|
-
|
|
92
|
-
const onEntered = () => {
|
|
93
|
-
this.setState({
|
|
94
|
-
transitioning: false,
|
|
95
|
-
oldMarkerColor: getMarkerColor(item.status),
|
|
96
|
-
oldPercentageComplete: item.percentageComplete
|
|
97
|
-
});
|
|
98
|
-
};
|
|
99
|
-
|
|
100
|
-
const ariaCurrent = item.status === 'current' ? 'step' : 'false';
|
|
101
|
-
return /*#__PURE__*/React.createElement(ProgressTrackerListItem, {
|
|
102
|
-
"aria-current": ariaCurrent
|
|
103
|
-
}, /*#__PURE__*/React.createElement(ProgressTrackerStageContainer, null, /*#__PURE__*/React.createElement(CSSTransition, {
|
|
104
|
-
appear: true,
|
|
105
|
-
in: this.state.transitioning,
|
|
106
|
-
onEntered: onEntered,
|
|
107
|
-
timeout: transitionDelay + transitionSpeed,
|
|
108
|
-
classNames: "fade"
|
|
109
|
-
}, /*#__PURE__*/React.createElement(ProgressTrackerStageMarker, {
|
|
110
|
-
oldMarkerColor: this.state.oldMarkerColor,
|
|
111
|
-
color: getMarkerColor(item.status),
|
|
112
|
-
transitionSpeed: transitionSpeed,
|
|
113
|
-
transitionDelay: transitionDelay,
|
|
114
|
-
transitionEasing: transitionEasing
|
|
115
|
-
})), /*#__PURE__*/React.createElement(CSSTransition, {
|
|
116
|
-
appear: true,
|
|
117
|
-
in: this.state.transitioning,
|
|
118
|
-
onEntered: onEntered,
|
|
119
|
-
timeout: transitionDelay + transitionSpeed,
|
|
120
|
-
classNames: "fade"
|
|
121
|
-
}, /*#__PURE__*/React.createElement(ProgressTrackerStageBar, {
|
|
122
|
-
oldPercentageComplete: this.state.oldPercentageComplete,
|
|
123
|
-
percentageComplete: item.percentageComplete,
|
|
124
|
-
transitionSpeed: transitionSpeed,
|
|
125
|
-
transitionDelay: transitionDelay,
|
|
126
|
-
transitionEasing: transitionEasing
|
|
127
|
-
})), /*#__PURE__*/React.createElement(CSSTransition, {
|
|
128
|
-
appear: true,
|
|
129
|
-
in: this.state.transitioning,
|
|
130
|
-
onEntered: onEntered,
|
|
131
|
-
timeout: transitionDelay + transitionSpeed,
|
|
132
|
-
classNames: "fade"
|
|
133
|
-
}, /*#__PURE__*/React.createElement(ProgressTrackerStageTitle, {
|
|
134
|
-
color: getTextColor(item.status),
|
|
135
|
-
fontweight: getFontWeight(item.status),
|
|
136
|
-
transitionSpeed: transitionSpeed,
|
|
137
|
-
transitionDelay: transitionDelay
|
|
138
|
-
}, this.shouldShowLink() ? render.link({
|
|
139
|
-
item
|
|
140
|
-
}) : item.label))));
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
}
|