@atlaskit/link-datasource 0.14.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.
- package/CHANGELOG.md +233 -0
- package/README.md +3 -0
- package/dist/cjs/hooks/useDatasourceTableState.js +133 -0
- package/dist/cjs/index.js +19 -0
- package/dist/cjs/services/getAvailableJiraSites.js +65 -0
- package/dist/cjs/services/makeGetJqlAutocompleteData.js +66 -0
- package/dist/cjs/services/makeGetJqlSuggestionsData.js +55 -0
- package/dist/cjs/ui/issue-like-table/column-picker/index.js +93 -0
- package/dist/cjs/ui/issue-like-table/column-picker/types.js +5 -0
- package/dist/cjs/ui/issue-like-table/draggable-table-heading.js +182 -0
- package/dist/cjs/ui/issue-like-table/empty-state/index.js +127 -0
- package/dist/cjs/ui/issue-like-table/empty-state/priority.js +28 -0
- package/dist/cjs/ui/issue-like-table/empty-state/type.js +51 -0
- package/dist/cjs/ui/issue-like-table/empty-state/types.js +5 -0
- package/dist/cjs/ui/issue-like-table/index.js +300 -0
- package/dist/cjs/ui/issue-like-table/render-type/boolean/index.js +30 -0
- package/dist/cjs/ui/issue-like-table/render-type/boolean/messages.js +20 -0
- package/dist/cjs/ui/issue-like-table/render-type/date-time/index.js +47 -0
- package/dist/cjs/ui/issue-like-table/render-type/icon/index.js +34 -0
- package/dist/cjs/ui/issue-like-table/render-type/index.js +63 -0
- package/dist/cjs/ui/issue-like-table/render-type/link/index.js +56 -0
- package/dist/cjs/ui/issue-like-table/render-type/number/index.js +24 -0
- package/dist/cjs/ui/issue-like-table/render-type/status/index.js +28 -0
- package/dist/cjs/ui/issue-like-table/render-type/tag/index.js +27 -0
- package/dist/cjs/ui/issue-like-table/render-type/text/index.js +23 -0
- package/dist/cjs/ui/issue-like-table/render-type/user/index.js +36 -0
- package/dist/cjs/ui/issue-like-table/render-type/user/messages.js +15 -0
- package/dist/cjs/ui/issue-like-table/styled.js +12 -0
- package/dist/cjs/ui/issue-like-table/types.js +5 -0
- package/dist/cjs/ui/issue-like-table/useIsOnScreen.js +32 -0
- package/dist/cjs/ui/jira-issues/modal/basic-search-input/index.js +52 -0
- package/dist/cjs/ui/jira-issues/modal/basic-search-input/messages.js +15 -0
- package/dist/cjs/ui/jira-issues/modal/index.js +267 -0
- package/dist/cjs/ui/jira-issues/modal/jira-search-container/buildJQL.js +27 -0
- package/dist/cjs/ui/jira-issues/modal/jira-search-container/index.js +116 -0
- package/dist/cjs/ui/jira-issues/modal/jira-search-container/messages.js +15 -0
- package/dist/cjs/ui/jira-issues/modal/jql-editor/index.js +41 -0
- package/dist/cjs/ui/jira-issues/modal/messages.js +45 -0
- package/dist/cjs/ui/jira-issues/modal/mode-switcher/index.js +97 -0
- package/dist/cjs/ui/jira-issues/modal/site-selector/index.js +55 -0
- package/dist/cjs/ui/jira-issues/modal/site-selector/messages.js +20 -0
- package/dist/cjs/ui/jira-issues/table-footer/index.js +68 -0
- package/dist/cjs/ui/jira-issues/table-footer/messages.js +25 -0
- package/dist/cjs/ui/jira-issues/table-footer/sync-info/index.js +79 -0
- package/dist/cjs/ui/jira-issues/table-footer/sync-info/messages.js +20 -0
- package/dist/cjs/ui/jira-issues/tableView.js +64 -0
- package/dist/cjs/ui/jira-issues/types.js +5 -0
- package/dist/cjs/version.json +5 -0
- package/dist/es2019/hooks/useDatasourceTableState.js +77 -0
- package/dist/es2019/index.js +2 -0
- package/dist/es2019/services/getAvailableJiraSites.js +20 -0
- package/dist/es2019/services/makeGetJqlAutocompleteData.js +19 -0
- package/dist/es2019/services/makeGetJqlSuggestionsData.js +11 -0
- package/dist/es2019/ui/issue-like-table/column-picker/index.js +77 -0
- package/dist/es2019/ui/issue-like-table/column-picker/types.js +1 -0
- package/dist/es2019/ui/issue-like-table/draggable-table-heading.js +166 -0
- package/dist/es2019/ui/issue-like-table/empty-state/index.js +113 -0
- package/dist/es2019/ui/issue-like-table/empty-state/priority.js +32 -0
- package/dist/es2019/ui/issue-like-table/empty-state/type.js +46 -0
- package/dist/es2019/ui/issue-like-table/empty-state/types.js +1 -0
- package/dist/es2019/ui/issue-like-table/index.js +259 -0
- package/dist/es2019/ui/issue-like-table/render-type/boolean/index.js +21 -0
- package/dist/es2019/ui/issue-like-table/render-type/boolean/messages.js +13 -0
- package/dist/es2019/ui/issue-like-table/render-type/date-time/index.js +37 -0
- package/dist/es2019/ui/issue-like-table/render-type/icon/index.js +27 -0
- package/dist/es2019/ui/issue-like-table/render-type/index.js +55 -0
- package/dist/es2019/ui/issue-like-table/render-type/link/index.js +38 -0
- package/dist/es2019/ui/issue-like-table/render-type/number/index.js +15 -0
- package/dist/es2019/ui/issue-like-table/render-type/status/index.js +19 -0
- package/dist/es2019/ui/issue-like-table/render-type/tag/index.js +18 -0
- package/dist/es2019/ui/issue-like-table/render-type/text/index.js +14 -0
- package/dist/es2019/ui/issue-like-table/render-type/user/index.js +29 -0
- package/dist/es2019/ui/issue-like-table/render-type/user/messages.js +8 -0
- package/dist/es2019/ui/issue-like-table/styled.js +6 -0
- package/dist/es2019/ui/issue-like-table/types.js +1 -0
- package/dist/es2019/ui/issue-like-table/useIsOnScreen.js +17 -0
- package/dist/es2019/ui/jira-issues/modal/basic-search-input/index.js +42 -0
- package/dist/es2019/ui/jira-issues/modal/basic-search-input/messages.js +8 -0
- package/dist/es2019/ui/jira-issues/modal/index.js +227 -0
- package/dist/es2019/ui/jira-issues/modal/jira-search-container/buildJQL.js +20 -0
- package/dist/es2019/ui/jira-issues/modal/jira-search-container/index.js +90 -0
- package/dist/es2019/ui/jira-issues/modal/jira-search-container/messages.js +8 -0
- package/dist/es2019/ui/jira-issues/modal/jql-editor/index.js +33 -0
- package/dist/es2019/ui/jira-issues/modal/messages.js +38 -0
- package/dist/es2019/ui/jira-issues/modal/mode-switcher/index.js +90 -0
- package/dist/es2019/ui/jira-issues/modal/site-selector/index.js +43 -0
- package/dist/es2019/ui/jira-issues/modal/site-selector/messages.js +13 -0
- package/dist/es2019/ui/jira-issues/table-footer/index.js +78 -0
- package/dist/es2019/ui/jira-issues/table-footer/messages.js +18 -0
- package/dist/es2019/ui/jira-issues/table-footer/sync-info/index.js +59 -0
- package/dist/es2019/ui/jira-issues/table-footer/sync-info/messages.js +13 -0
- package/dist/es2019/ui/jira-issues/tableView.js +57 -0
- package/dist/es2019/ui/jira-issues/types.js +1 -0
- package/dist/es2019/version.json +5 -0
- package/dist/esm/hooks/useDatasourceTableState.js +125 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/services/getAvailableJiraSites.js +57 -0
- package/dist/esm/services/makeGetJqlAutocompleteData.js +58 -0
- package/dist/esm/services/makeGetJqlSuggestionsData.js +47 -0
- package/dist/esm/ui/issue-like-table/column-picker/index.js +85 -0
- package/dist/esm/ui/issue-like-table/column-picker/types.js +1 -0
- package/dist/esm/ui/issue-like-table/draggable-table-heading.js +173 -0
- package/dist/esm/ui/issue-like-table/empty-state/index.js +118 -0
- package/dist/esm/ui/issue-like-table/empty-state/priority.js +20 -0
- package/dist/esm/ui/issue-like-table/empty-state/type.js +43 -0
- package/dist/esm/ui/issue-like-table/empty-state/types.js +1 -0
- package/dist/esm/ui/issue-like-table/index.js +292 -0
- package/dist/esm/ui/issue-like-table/render-type/boolean/index.js +21 -0
- package/dist/esm/ui/issue-like-table/render-type/boolean/messages.js +13 -0
- package/dist/esm/ui/issue-like-table/render-type/date-time/index.js +38 -0
- package/dist/esm/ui/issue-like-table/render-type/icon/index.js +25 -0
- package/dist/esm/ui/issue-like-table/render-type/index.js +55 -0
- package/dist/esm/ui/issue-like-table/render-type/link/index.js +44 -0
- package/dist/esm/ui/issue-like-table/render-type/number/index.js +15 -0
- package/dist/esm/ui/issue-like-table/render-type/status/index.js +19 -0
- package/dist/esm/ui/issue-like-table/render-type/tag/index.js +18 -0
- package/dist/esm/ui/issue-like-table/render-type/text/index.js +14 -0
- package/dist/esm/ui/issue-like-table/render-type/user/index.js +27 -0
- package/dist/esm/ui/issue-like-table/render-type/user/messages.js +8 -0
- package/dist/esm/ui/issue-like-table/styled.js +4 -0
- package/dist/esm/ui/issue-like-table/types.js +1 -0
- package/dist/esm/ui/issue-like-table/useIsOnScreen.js +25 -0
- package/dist/esm/ui/jira-issues/modal/basic-search-input/index.js +43 -0
- package/dist/esm/ui/jira-issues/modal/basic-search-input/messages.js +8 -0
- package/dist/esm/ui/jira-issues/modal/index.js +255 -0
- package/dist/esm/ui/jira-issues/modal/jira-search-container/buildJQL.js +20 -0
- package/dist/esm/ui/jira-issues/modal/jira-search-container/index.js +104 -0
- package/dist/esm/ui/jira-issues/modal/jira-search-container/messages.js +8 -0
- package/dist/esm/ui/jira-issues/modal/jql-editor/index.js +31 -0
- package/dist/esm/ui/jira-issues/modal/messages.js +38 -0
- package/dist/esm/ui/jira-issues/modal/mode-switcher/index.js +88 -0
- package/dist/esm/ui/jira-issues/modal/site-selector/index.js +44 -0
- package/dist/esm/ui/jira-issues/modal/site-selector/messages.js +13 -0
- package/dist/esm/ui/jira-issues/table-footer/index.js +60 -0
- package/dist/esm/ui/jira-issues/table-footer/messages.js +18 -0
- package/dist/esm/ui/jira-issues/table-footer/sync-info/index.js +68 -0
- package/dist/esm/ui/jira-issues/table-footer/sync-info/messages.js +13 -0
- package/dist/esm/ui/jira-issues/tableView.js +55 -0
- package/dist/esm/ui/jira-issues/types.js +1 -0
- package/dist/esm/version.json +5 -0
- package/dist/types/hooks/useDatasourceTableState.d.ts +13 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/services/getAvailableJiraSites.d.ts +6 -0
- package/dist/types/services/makeGetJqlAutocompleteData.d.ts +6 -0
- package/dist/types/services/makeGetJqlSuggestionsData.d.ts +5 -0
- package/dist/types/ui/issue-like-table/column-picker/index.d.ts +3 -0
- package/dist/types/ui/issue-like-table/column-picker/types.d.ts +6 -0
- package/dist/types/ui/issue-like-table/draggable-table-heading.d.ts +12 -0
- package/dist/types/ui/issue-like-table/empty-state/index.d.ts +6 -0
- package/dist/types/ui/issue-like-table/empty-state/priority.d.ts +6 -0
- package/dist/types/ui/issue-like-table/empty-state/type.d.ts +6 -0
- package/dist/types/ui/issue-like-table/empty-state/types.d.ts +2 -0
- package/dist/types/ui/issue-like-table/index.d.ts +15 -0
- package/dist/types/ui/issue-like-table/render-type/boolean/index.d.ts +8 -0
- package/dist/types/ui/issue-like-table/render-type/boolean/messages.d.ts +12 -0
- package/dist/types/ui/issue-like-table/render-type/date-time/index.d.ts +10 -0
- package/dist/types/ui/issue-like-table/render-type/icon/index.d.ts +8 -0
- package/dist/types/ui/issue-like-table/render-type/index.d.ts +2 -0
- package/dist/types/ui/issue-like-table/render-type/link/index.d.ts +8 -0
- package/dist/types/ui/issue-like-table/render-type/number/index.d.ts +8 -0
- package/dist/types/ui/issue-like-table/render-type/status/index.d.ts +8 -0
- package/dist/types/ui/issue-like-table/render-type/tag/index.d.ts +9 -0
- package/dist/types/ui/issue-like-table/render-type/text/index.d.ts +8 -0
- package/dist/types/ui/issue-like-table/render-type/user/index.d.ts +11 -0
- package/dist/types/ui/issue-like-table/render-type/user/messages.d.ts +7 -0
- package/dist/types/ui/issue-like-table/styled.d.ts +5 -0
- package/dist/types/ui/issue-like-table/types.d.ts +38 -0
- package/dist/types/ui/issue-like-table/useIsOnScreen.d.ts +1 -0
- package/dist/types/ui/jira-issues/modal/basic-search-input/index.d.ts +12 -0
- package/dist/types/ui/jira-issues/modal/basic-search-input/messages.d.ts +7 -0
- package/dist/types/ui/jira-issues/modal/index.d.ts +13 -0
- package/dist/types/ui/jira-issues/modal/jira-search-container/buildJQL.d.ts +7 -0
- package/dist/types/ui/jira-issues/modal/jira-search-container/index.d.ts +7 -0
- package/dist/types/ui/jira-issues/modal/jira-search-container/messages.d.ts +7 -0
- package/dist/types/ui/jira-issues/modal/jql-editor/index.d.ts +8 -0
- package/dist/types/ui/jira-issues/modal/messages.d.ts +37 -0
- package/dist/types/ui/jira-issues/modal/mode-switcher/index.d.ts +12 -0
- package/dist/types/ui/jira-issues/modal/site-selector/index.d.ts +10 -0
- package/dist/types/ui/jira-issues/modal/site-selector/messages.d.ts +12 -0
- package/dist/types/ui/jira-issues/table-footer/index.d.ts +7 -0
- package/dist/types/ui/jira-issues/table-footer/messages.d.ts +17 -0
- package/dist/types/ui/jira-issues/table-footer/sync-info/index.d.ts +4 -0
- package/dist/types/ui/jira-issues/table-footer/sync-info/messages.d.ts +12 -0
- package/dist/types/ui/jira-issues/tableView.d.ts +3 -0
- package/dist/types/ui/jira-issues/types.d.ts +14 -0
- package/dist/types-ts4.5/hooks/useDatasourceTableState.d.ts +13 -0
- package/dist/types-ts4.5/index.d.ts +2 -0
- package/dist/types-ts4.5/services/getAvailableJiraSites.d.ts +6 -0
- package/dist/types-ts4.5/services/makeGetJqlAutocompleteData.d.ts +6 -0
- package/dist/types-ts4.5/services/makeGetJqlSuggestionsData.d.ts +5 -0
- package/dist/types-ts4.5/ui/issue-like-table/column-picker/index.d.ts +3 -0
- package/dist/types-ts4.5/ui/issue-like-table/column-picker/types.d.ts +6 -0
- package/dist/types-ts4.5/ui/issue-like-table/draggable-table-heading.d.ts +12 -0
- package/dist/types-ts4.5/ui/issue-like-table/empty-state/index.d.ts +6 -0
- package/dist/types-ts4.5/ui/issue-like-table/empty-state/priority.d.ts +6 -0
- package/dist/types-ts4.5/ui/issue-like-table/empty-state/type.d.ts +6 -0
- package/dist/types-ts4.5/ui/issue-like-table/empty-state/types.d.ts +2 -0
- package/dist/types-ts4.5/ui/issue-like-table/index.d.ts +15 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/boolean/index.d.ts +8 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/boolean/messages.d.ts +12 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/date-time/index.d.ts +10 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/icon/index.d.ts +8 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/index.d.ts +2 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/link/index.d.ts +8 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/number/index.d.ts +8 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/status/index.d.ts +8 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/tag/index.d.ts +9 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/text/index.d.ts +8 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/user/index.d.ts +11 -0
- package/dist/types-ts4.5/ui/issue-like-table/render-type/user/messages.d.ts +7 -0
- package/dist/types-ts4.5/ui/issue-like-table/styled.d.ts +5 -0
- package/dist/types-ts4.5/ui/issue-like-table/types.d.ts +38 -0
- package/dist/types-ts4.5/ui/issue-like-table/useIsOnScreen.d.ts +1 -0
- package/dist/types-ts4.5/ui/jira-issues/modal/basic-search-input/index.d.ts +12 -0
- package/dist/types-ts4.5/ui/jira-issues/modal/basic-search-input/messages.d.ts +7 -0
- package/dist/types-ts4.5/ui/jira-issues/modal/index.d.ts +13 -0
- package/dist/types-ts4.5/ui/jira-issues/modal/jira-search-container/buildJQL.d.ts +7 -0
- package/dist/types-ts4.5/ui/jira-issues/modal/jira-search-container/index.d.ts +7 -0
- package/dist/types-ts4.5/ui/jira-issues/modal/jira-search-container/messages.d.ts +7 -0
- package/dist/types-ts4.5/ui/jira-issues/modal/jql-editor/index.d.ts +8 -0
- package/dist/types-ts4.5/ui/jira-issues/modal/messages.d.ts +37 -0
- package/dist/types-ts4.5/ui/jira-issues/modal/mode-switcher/index.d.ts +12 -0
- package/dist/types-ts4.5/ui/jira-issues/modal/site-selector/index.d.ts +10 -0
- package/dist/types-ts4.5/ui/jira-issues/modal/site-selector/messages.d.ts +12 -0
- package/dist/types-ts4.5/ui/jira-issues/table-footer/index.d.ts +7 -0
- package/dist/types-ts4.5/ui/jira-issues/table-footer/messages.d.ts +17 -0
- package/dist/types-ts4.5/ui/jira-issues/table-footer/sync-info/index.d.ts +4 -0
- package/dist/types-ts4.5/ui/jira-issues/table-footer/sync-info/messages.d.ts +12 -0
- package/dist/types-ts4.5/ui/jira-issues/tableView.d.ts +3 -0
- package/dist/types-ts4.5/ui/jira-issues/types.d.ts +14 -0
- package/examples-helpers/buildIssueLikeTable.tsx +88 -0
- package/examples-helpers/buildJiraIssuesTable.tsx +31 -0
- package/examples-helpers/images.json +4 -0
- package/examples-helpers/mockAutocompleteData.ts +54 -0
- package/examples-helpers/mockJiraAvailableSites.ts +27 -0
- package/examples-helpers/mockJiraData.ts +546 -0
- package/examples-helpers/mockJqlSmartLinkData.ts +72 -0
- package/examples-helpers/mockSmartLinkData.ts +67 -0
- package/examples-helpers/mockSuggestionData.ts +17 -0
- package/examples-helpers/setupDatasourcesMocks.ts +199 -0
- package/examples-helpers/setupModalExampleMocks.ts +32 -0
- package/examples-helpers/smartLinkCustomClient.ts +26 -0
- package/package.json +118 -0
- package/report.api.md +98 -0
- package/tmp/api-report-tmp.d.ts +64 -0
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.DraggableTableHeading = void 0;
|
|
8
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
9
|
+
var _react = require("react");
|
|
10
|
+
var _react2 = require("@emotion/react");
|
|
11
|
+
var _tinyInvariant = _interopRequireDefault(require("tiny-invariant"));
|
|
12
|
+
var _dragHandler = _interopRequireDefault(require("@atlaskit/icon/glyph/drag-handler"));
|
|
13
|
+
var _closestEdge = require("@atlaskit/pragmatic-drag-and-drop-hitbox/addon/closest-edge");
|
|
14
|
+
var _box = require("@atlaskit/pragmatic-drag-and-drop-react-indicator/box");
|
|
15
|
+
var _element = require("@atlaskit/pragmatic-drag-and-drop/adapter/element");
|
|
16
|
+
var _combine = require("@atlaskit/pragmatic-drag-and-drop/util/combine");
|
|
17
|
+
var _styled = require("./styled");
|
|
18
|
+
/** @jsx jsx */
|
|
19
|
+
|
|
20
|
+
var tableHeadingStyles = (0, _react2.css)({
|
|
21
|
+
cursor: 'grab'
|
|
22
|
+
});
|
|
23
|
+
var tableHeadingStatusStyles = {
|
|
24
|
+
idle: (0, _react2.css)({
|
|
25
|
+
':hover': {
|
|
26
|
+
background: "var(--ds-surface-hovered, #091E4224)"
|
|
27
|
+
}
|
|
28
|
+
}),
|
|
29
|
+
dragging: (0, _react2.css)({
|
|
30
|
+
background: "var(--ds-background-disabled, #091E4224)",
|
|
31
|
+
color: "var(--ds-text-disabled, #091E424F)"
|
|
32
|
+
})
|
|
33
|
+
};
|
|
34
|
+
var verticallyAlignedStyles = (0, _react2.css)({
|
|
35
|
+
display: 'flex',
|
|
36
|
+
alignItems: 'center',
|
|
37
|
+
whiteSpace: 'nowrap'
|
|
38
|
+
});
|
|
39
|
+
var dragHandleStyles = (0, _react2.css)({
|
|
40
|
+
position: 'relative',
|
|
41
|
+
display: 'flex',
|
|
42
|
+
alignItems: 'center'
|
|
43
|
+
});
|
|
44
|
+
var dropTargetStyles = (0, _react2.css)({
|
|
45
|
+
position: 'absolute',
|
|
46
|
+
top: 0,
|
|
47
|
+
left: 0,
|
|
48
|
+
width: '100%'
|
|
49
|
+
});
|
|
50
|
+
var noPointerEventsStyles = (0, _react2.css)({
|
|
51
|
+
pointerEvents: 'none'
|
|
52
|
+
});
|
|
53
|
+
var DraggableTableHeading = function DraggableTableHeading(_ref) {
|
|
54
|
+
var children = _ref.children,
|
|
55
|
+
id = _ref.id,
|
|
56
|
+
index = _ref.index,
|
|
57
|
+
tableId = _ref.tableId,
|
|
58
|
+
dndPreviewHeight = _ref.dndPreviewHeight,
|
|
59
|
+
onDragPreviewStart = _ref.onDragPreviewStart,
|
|
60
|
+
onDragPreviewEnd = _ref.onDragPreviewEnd;
|
|
61
|
+
var ref = (0, _react.useRef)(null);
|
|
62
|
+
var _useState = (0, _react.useState)('idle'),
|
|
63
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
64
|
+
status = _useState2[0],
|
|
65
|
+
setStatus = _useState2[1];
|
|
66
|
+
var _useState3 = (0, _react.useState)(false),
|
|
67
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
68
|
+
isDraggingAnyColumn = _useState4[0],
|
|
69
|
+
setIsDraggingAnyColumn = _useState4[1];
|
|
70
|
+
var _useState5 = (0, _react.useState)(null),
|
|
71
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
72
|
+
closestEdge = _useState6[0],
|
|
73
|
+
setClosestEdge = _useState6[1];
|
|
74
|
+
var dropTargetRef = (0, _react.useRef)(null);
|
|
75
|
+
(0, _react.useEffect)(function () {
|
|
76
|
+
var cell = ref.current;
|
|
77
|
+
(0, _tinyInvariant.default)(cell);
|
|
78
|
+
return (0, _combine.combine)((0, _element.draggable)({
|
|
79
|
+
element: cell,
|
|
80
|
+
getInitialData: function getInitialData() {
|
|
81
|
+
return {
|
|
82
|
+
type: 'table-header',
|
|
83
|
+
id: id,
|
|
84
|
+
index: index,
|
|
85
|
+
tableId: tableId
|
|
86
|
+
};
|
|
87
|
+
},
|
|
88
|
+
onGenerateDragPreview: function onGenerateDragPreview() {
|
|
89
|
+
setStatus('preview');
|
|
90
|
+
onDragPreviewStart();
|
|
91
|
+
},
|
|
92
|
+
onDragStart: function onDragStart() {
|
|
93
|
+
setStatus('dragging');
|
|
94
|
+
onDragPreviewEnd();
|
|
95
|
+
},
|
|
96
|
+
onDrop: function onDrop() {
|
|
97
|
+
setStatus('idle');
|
|
98
|
+
}
|
|
99
|
+
}));
|
|
100
|
+
}, [id, index, onDragPreviewEnd, onDragPreviewStart, tableId]);
|
|
101
|
+
|
|
102
|
+
// Here we handle drop target, that in our case is absolutely positioned div that covers full width and height
|
|
103
|
+
// of this column (has height of whole table). It sits on top of everything, but has `pointerEvents: 'none'` by default
|
|
104
|
+
(0, _react.useEffect)(function () {
|
|
105
|
+
var dropTarget = dropTargetRef.current;
|
|
106
|
+
(0, _tinyInvariant.default)(dropTarget);
|
|
107
|
+
return (0, _element.dropTargetForElements)({
|
|
108
|
+
element: dropTarget,
|
|
109
|
+
getIsSticky: function getIsSticky() {
|
|
110
|
+
return true;
|
|
111
|
+
},
|
|
112
|
+
getData: function getData(_ref2) {
|
|
113
|
+
var input = _ref2.input,
|
|
114
|
+
element = _ref2.element;
|
|
115
|
+
var data = {
|
|
116
|
+
id: id,
|
|
117
|
+
index: index
|
|
118
|
+
};
|
|
119
|
+
return (0, _closestEdge.attachClosestEdge)(data, {
|
|
120
|
+
input: input,
|
|
121
|
+
element: element,
|
|
122
|
+
allowedEdges: ['left', 'right']
|
|
123
|
+
});
|
|
124
|
+
},
|
|
125
|
+
canDrop: function canDrop(args) {
|
|
126
|
+
return args.source.data.type === 'table-header' && args.source.data.tableId === tableId;
|
|
127
|
+
},
|
|
128
|
+
onDrag: function onDrag(args) {
|
|
129
|
+
if (args.source.data.id !== id) {
|
|
130
|
+
setClosestEdge((0, _closestEdge.extractClosestEdge)(args.self.data));
|
|
131
|
+
}
|
|
132
|
+
},
|
|
133
|
+
onDragLeave: function onDragLeave() {
|
|
134
|
+
setClosestEdge(null);
|
|
135
|
+
},
|
|
136
|
+
onDrop: function onDrop() {
|
|
137
|
+
setClosestEdge(null);
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
}, [id, index, tableId]);
|
|
141
|
+
|
|
142
|
+
// During dragging anywhere we want to remove `pointerEvents: 'none'` from all the drop targets
|
|
143
|
+
(0, _react.useEffect)(function () {
|
|
144
|
+
return (0, _element.monitorForElements)({
|
|
145
|
+
canMonitor: function canMonitor(_ref3) {
|
|
146
|
+
var source = _ref3.source;
|
|
147
|
+
return source.data.type === 'table-header' && source.data.tableId === tableId;
|
|
148
|
+
},
|
|
149
|
+
onDragStart: function onDragStart() {
|
|
150
|
+
/**
|
|
151
|
+
* Should cause a synchronous re-render.
|
|
152
|
+
*/
|
|
153
|
+
setIsDraggingAnyColumn(true);
|
|
154
|
+
},
|
|
155
|
+
onDrop: function onDrop() {
|
|
156
|
+
setIsDraggingAnyColumn(false);
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
}, [tableId]);
|
|
160
|
+
return (0, _react2.jsx)(_styled.TableHeading, {
|
|
161
|
+
ref: ref,
|
|
162
|
+
css: [tableHeadingStyles, tableHeadingStatusStyles[status]],
|
|
163
|
+
"data-testid": "".concat(id, "-column-heading")
|
|
164
|
+
}, (0, _react2.jsx)("div", {
|
|
165
|
+
ref: dropTargetRef,
|
|
166
|
+
css: [dropTargetStyles, isDraggingAnyColumn ? null : noPointerEventsStyles],
|
|
167
|
+
style: {
|
|
168
|
+
height: "".concat(dndPreviewHeight, "px")
|
|
169
|
+
},
|
|
170
|
+
"data-testid": 'column-drop-target'
|
|
171
|
+
}, closestEdge && (0, _react2.jsx)(_box.DropIndicator, {
|
|
172
|
+
edge: closestEdge
|
|
173
|
+
})), (0, _react2.jsx)("div", {
|
|
174
|
+
css: verticallyAlignedStyles
|
|
175
|
+
}, (0, _react2.jsx)("div", {
|
|
176
|
+
css: dragHandleStyles
|
|
177
|
+
}, (0, _react2.jsx)(_dragHandler.default, {
|
|
178
|
+
label: "".concat(id, "-drag-icon"),
|
|
179
|
+
size: "medium"
|
|
180
|
+
})), children));
|
|
181
|
+
};
|
|
182
|
+
exports.DraggableTableHeading = DraggableTableHeading;
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
var _react2 = require("@emotion/react");
|
|
10
|
+
var _linkingCommon = require("@atlaskit/linking-common");
|
|
11
|
+
var _user = _interopRequireDefault(require("../render-type/user"));
|
|
12
|
+
var _styled = require("../styled");
|
|
13
|
+
var _priority = _interopRequireDefault(require("./priority"));
|
|
14
|
+
var _type = _interopRequireDefault(require("./type"));
|
|
15
|
+
/** @jsx jsx */
|
|
16
|
+
|
|
17
|
+
var columns = [{
|
|
18
|
+
key: 'type',
|
|
19
|
+
title: 'Type'
|
|
20
|
+
}, {
|
|
21
|
+
key: 'issue',
|
|
22
|
+
title: 'Key',
|
|
23
|
+
width: 50
|
|
24
|
+
}, {
|
|
25
|
+
key: 'summary',
|
|
26
|
+
title: 'Summary'
|
|
27
|
+
}, {
|
|
28
|
+
key: 'assignee',
|
|
29
|
+
title: 'Assignee',
|
|
30
|
+
width: 100
|
|
31
|
+
}, {
|
|
32
|
+
key: 'priority',
|
|
33
|
+
title: 'P'
|
|
34
|
+
}, {
|
|
35
|
+
key: 'status',
|
|
36
|
+
title: 'Status'
|
|
37
|
+
}, {
|
|
38
|
+
key: 'resolution',
|
|
39
|
+
title: 'Resolution'
|
|
40
|
+
}, {
|
|
41
|
+
key: 'created',
|
|
42
|
+
title: 'Created'
|
|
43
|
+
}, {
|
|
44
|
+
key: 'due',
|
|
45
|
+
title: 'Updated'
|
|
46
|
+
}];
|
|
47
|
+
var priorities = ['low', 'medium', 'high', 'medium', 'low', 'blocker', 'medium', 'blocker', 'high', 'low'];
|
|
48
|
+
var types = ['task', 'story', 'commit', 'epic', 'bug', 'task', 'story', 'commit', 'issue', 'epic'];
|
|
49
|
+
var summaryColumnWidths = [141, 208, 186, 212, 212, 151, 212, 182, 180, 147];
|
|
50
|
+
var statusColumnWidths = [75, 54, 66, 73, 52, 73, 55, 80, 66, 59];
|
|
51
|
+
var rows = new Array(10).fill(null).map(function (_, index) {
|
|
52
|
+
return {
|
|
53
|
+
id: index,
|
|
54
|
+
priority: priorities[index],
|
|
55
|
+
type: types[index],
|
|
56
|
+
summaryWidth: summaryColumnWidths[index],
|
|
57
|
+
statusWidth: statusColumnWidths[index]
|
|
58
|
+
};
|
|
59
|
+
});
|
|
60
|
+
var _default = function _default(props) {
|
|
61
|
+
var renderItem = (0, _react.useCallback)(function (_ref, _ref2) {
|
|
62
|
+
var key = _ref.key,
|
|
63
|
+
width = _ref.width;
|
|
64
|
+
var priority = _ref2.priority,
|
|
65
|
+
type = _ref2.type,
|
|
66
|
+
summaryWidth = _ref2.summaryWidth,
|
|
67
|
+
statusWidth = _ref2.statusWidth;
|
|
68
|
+
switch (key) {
|
|
69
|
+
case 'assignee':
|
|
70
|
+
return (0, _react2.jsx)(_user.default, null, (0, _react2.jsx)(_linkingCommon.Skeleton, {
|
|
71
|
+
width: width,
|
|
72
|
+
height: 13,
|
|
73
|
+
borderRadius: 8
|
|
74
|
+
}));
|
|
75
|
+
case 'priority':
|
|
76
|
+
return (0, _react2.jsx)(_priority.default, {
|
|
77
|
+
priority: priority
|
|
78
|
+
});
|
|
79
|
+
case 'type':
|
|
80
|
+
return (0, _react2.jsx)(_type.default, {
|
|
81
|
+
type: type
|
|
82
|
+
});
|
|
83
|
+
case 'summary':
|
|
84
|
+
return (0, _react2.jsx)(_linkingCommon.Skeleton, {
|
|
85
|
+
appearance: "blue",
|
|
86
|
+
width: summaryWidth,
|
|
87
|
+
borderRadius: 10,
|
|
88
|
+
height: 13
|
|
89
|
+
});
|
|
90
|
+
case 'status':
|
|
91
|
+
return (0, _react2.jsx)(_linkingCommon.Skeleton, {
|
|
92
|
+
appearance: "blue",
|
|
93
|
+
width: statusWidth,
|
|
94
|
+
height: 16,
|
|
95
|
+
borderRadius: 3
|
|
96
|
+
});
|
|
97
|
+
default:
|
|
98
|
+
return (0, _react2.jsx)(_linkingCommon.Skeleton, {
|
|
99
|
+
width: width,
|
|
100
|
+
height: 13,
|
|
101
|
+
borderRadius: 8
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
}, []);
|
|
105
|
+
return (0, _react2.jsx)("table", {
|
|
106
|
+
"data-testid": props.testId
|
|
107
|
+
}, (0, _react2.jsx)("thead", null, (0, _react2.jsx)("tr", null, columns.map(function (_ref3) {
|
|
108
|
+
var title = _ref3.title,
|
|
109
|
+
key = _ref3.key,
|
|
110
|
+
width = _ref3.width;
|
|
111
|
+
return (0, _react2.jsx)(_styled.TableHeading, {
|
|
112
|
+
key: key,
|
|
113
|
+
style: {
|
|
114
|
+
width: width
|
|
115
|
+
}
|
|
116
|
+
}, title);
|
|
117
|
+
}))), (0, _react2.jsx)("tbody", null, rows.map(function (row) {
|
|
118
|
+
return (0, _react2.jsx)("tr", {
|
|
119
|
+
key: row.id
|
|
120
|
+
}, columns.map(function (column) {
|
|
121
|
+
return (0, _react2.jsx)("td", {
|
|
122
|
+
key: column.key
|
|
123
|
+
}, renderItem(column, row));
|
|
124
|
+
}));
|
|
125
|
+
})));
|
|
126
|
+
};
|
|
127
|
+
exports.default = _default;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _colors = require("@atlaskit/theme/colors");
|
|
10
|
+
var _icon = _interopRequireDefault(require("../render-type/icon"));
|
|
11
|
+
// https://stackoverflow.com/questions/61099149/svg-fill-color-not-working-with-hex-colors
|
|
12
|
+
var replaceHashInHex = function replaceHashInHex(hex) {
|
|
13
|
+
return hex.replace('#', '%23');
|
|
14
|
+
};
|
|
15
|
+
var priorityToSVGPathMap = {
|
|
16
|
+
low: " <path\n d=\"M12.5 6.1c.5-.3 1.1-.1 1.4.4.3.5.1 1.1-.3 1.3l-5 3c-.3.2-.7.2-1 0l-5-3c-.6-.2-.7-.9-.4-1.3.2-.5.9-.7 1.3-.4L8 8.8l4.5-2.7z\"\n fill=\"".concat(replaceHashInHex(_colors.B300), "\"\n/>"),
|
|
17
|
+
medium: "<path\n fill=\"".concat(replaceHashInHex(_colors.Y300), "\"\n d=\"M3,4h10c0.6,0,1,0.4,1,1s-0.4,1-1,1H3C2.4,6,2,5.6,2,5S2.4,4,3,4z M3,10h10c0.6,0,1,0.4,1,1s-0.4,1-1,1H3\n c-0.6,0-1-0.4-1-1S2.4,10,3,10z\"\n/>"),
|
|
18
|
+
high: "<path\n d=\"M3.5 9.9c-.5.3-1.1.1-1.4-.3s-.1-1.1.4-1.4l5-3c.3-.2.7-.2 1 0l5 3c.5.3.6.9.3 1.4-.3.5-.9.6-1.4.3L8 7.2 3.5 9.9z\"\n fill=\"".concat(replaceHashInHex(_colors.R300), "\"\n/>"),
|
|
19
|
+
blocker: "<path\n d=\"M8 15c-3.9 0-7-3.1-7-7s3.1-7 7-7 7 3.1 7 7-3.1 7-7 7zM4 7c-.6 0-1 .4-1 1s.4 1 1 1h8c.6 0 1-.4 1-1s-.4-1-1-1H4z\"\n fill=\"".concat(replaceHashInHex(_colors.R300), "\"\n/>")
|
|
20
|
+
};
|
|
21
|
+
var _default = function _default(_ref) {
|
|
22
|
+
var priority = _ref.priority;
|
|
23
|
+
var image = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\">".concat(priorityToSVGPathMap[priority], "</svg>");
|
|
24
|
+
return /*#__PURE__*/_react.default.createElement(_icon.default, {
|
|
25
|
+
source: "data:image/svg+xml;utf8,".concat(image)
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
exports.default = _default;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
11
|
+
var _ = _interopRequireDefault(require("@atlaskit/icon-object/glyph/bug/16"));
|
|
12
|
+
var _2 = _interopRequireDefault(require("@atlaskit/icon-object/glyph/commit/16"));
|
|
13
|
+
var _3 = _interopRequireDefault(require("@atlaskit/icon-object/glyph/epic/16"));
|
|
14
|
+
var _4 = _interopRequireDefault(require("@atlaskit/icon-object/glyph/issue/16"));
|
|
15
|
+
var _5 = _interopRequireDefault(require("@atlaskit/icon-object/glyph/story/16"));
|
|
16
|
+
var _6 = _interopRequireDefault(require("@atlaskit/icon-object/glyph/task/16"));
|
|
17
|
+
var _templateObject;
|
|
18
|
+
var IconWrapper = _styled.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n align-items: center;\n justify-content: center;\n"])));
|
|
19
|
+
var _default = function _default(_ref) {
|
|
20
|
+
var type = _ref.type;
|
|
21
|
+
var TypeIcon = function TypeIcon() {
|
|
22
|
+
switch (type) {
|
|
23
|
+
case 'issue':
|
|
24
|
+
return /*#__PURE__*/_react.default.createElement(_4.default, {
|
|
25
|
+
label: 'issue'
|
|
26
|
+
});
|
|
27
|
+
case 'commit':
|
|
28
|
+
return /*#__PURE__*/_react.default.createElement(_2.default, {
|
|
29
|
+
label: 'commit'
|
|
30
|
+
});
|
|
31
|
+
case 'story':
|
|
32
|
+
return /*#__PURE__*/_react.default.createElement(_5.default, {
|
|
33
|
+
label: 'story'
|
|
34
|
+
});
|
|
35
|
+
case 'epic':
|
|
36
|
+
return /*#__PURE__*/_react.default.createElement(_3.default, {
|
|
37
|
+
label: 'epic'
|
|
38
|
+
});
|
|
39
|
+
case 'bug':
|
|
40
|
+
return /*#__PURE__*/_react.default.createElement(_.default, {
|
|
41
|
+
label: 'bug'
|
|
42
|
+
});
|
|
43
|
+
case 'task':
|
|
44
|
+
return /*#__PURE__*/_react.default.createElement(_6.default, {
|
|
45
|
+
label: 'task'
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
return /*#__PURE__*/_react.default.createElement(IconWrapper, null, /*#__PURE__*/_react.default.createElement(TypeIcon, null));
|
|
50
|
+
};
|
|
51
|
+
exports.default = _default;
|