@atlaskit/link-picker 0.9.0 → 1.0.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 +18 -0
- package/dist/cjs/ui/link-picker.js +60 -39
- package/dist/cjs/ui/{LinkSearchList.js → link-search-list/index.js} +15 -25
- package/dist/cjs/ui/link-search-list/styled.js +21 -0
- package/dist/cjs/ui/{LinkSearchListItem.js → list-item/index.js} +26 -24
- package/dist/cjs/ui/list-item/styled.js +59 -0
- package/dist/cjs/ui/styled.js +32 -0
- package/dist/cjs/ui/{PanelTextInput.js → text-input/index.js} +14 -17
- package/dist/cjs/ui/text-input/styled.js +25 -0
- package/dist/cjs/utils.js +1 -14
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/ui/link-picker.js +24 -13
- package/dist/es2019/ui/{LinkSearchList.js → link-search-list/index.js} +14 -19
- package/dist/es2019/ui/link-search-list/styled.js +13 -0
- package/dist/es2019/ui/list-item/index.js +88 -0
- package/dist/es2019/ui/list-item/styled.js +65 -0
- package/dist/es2019/ui/styled.js +28 -0
- package/dist/es2019/ui/{PanelTextInput.js → text-input/index.js} +15 -9
- package/dist/es2019/ui/text-input/styled.js +15 -0
- package/dist/es2019/utils.js +0 -11
- package/dist/es2019/version.json +1 -1
- package/dist/esm/ui/link-picker.js +47 -26
- package/dist/esm/ui/{LinkSearchList.js → link-search-list/index.js} +14 -13
- package/dist/esm/ui/link-search-list/styled.js +8 -0
- package/dist/esm/ui/{LinkSearchListItem.js → list-item/index.js} +25 -23
- package/dist/esm/ui/list-item/styled.js +37 -0
- package/dist/esm/ui/styled.js +16 -0
- package/dist/esm/ui/{PanelTextInput.js → text-input/index.js} +15 -9
- package/dist/esm/ui/text-input/styled.js +10 -0
- package/dist/esm/utils.js +0 -11
- package/dist/esm/version.json +1 -1
- package/dist/types/types.d.ts +4 -1
- package/dist/types/ui/{LinkSearchList.d.ts → link-search-list/index.d.ts} +4 -4
- package/dist/types/ui/link-search-list/styled.d.ts +3 -0
- package/dist/types/ui/{LinkSearchListItem.d.ts → list-item/index.d.ts} +1 -1
- package/dist/types/ui/list-item/styled.d.ts +7 -0
- package/dist/types/ui/styled.d.ts +4 -0
- package/dist/types/ui/{PanelTextInput.d.ts → text-input/index.d.ts} +2 -2
- package/dist/types/ui/text-input/styled.d.ts +2 -0
- package/dist/types/utils.d.ts +0 -1
- package/example-helpers/mock-data.ts +4 -0
- package/package.json +6 -5
- package/dist/cjs/styles.js +0 -90
- package/dist/es2019/styles.js +0 -93
- package/dist/es2019/ui/LinkSearchListItem.js +0 -88
- package/dist/esm/styles.js +0 -46
- package/dist/types/styles.d.ts +0 -18
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
/** @jsx jsx */
|
|
2
|
-
import { Fragment } from 'react';
|
|
3
|
-
import { jsx } from '@emotion/core';
|
|
4
|
-
import { injectIntl } from 'react-intl-next';
|
|
5
|
-
import { transformTimeStamp } from '../transformTimeStamp';
|
|
6
|
-
import { ItemNameWrapper, ItemIconWrapper, ListItemContext, ListItemName, ListItemWrapper, ImgStyles } from '../styles';
|
|
7
|
-
|
|
8
|
-
const LinkSearchListItem = ({
|
|
9
|
-
item,
|
|
10
|
-
selected,
|
|
11
|
-
active,
|
|
12
|
-
id,
|
|
13
|
-
role,
|
|
14
|
-
intl,
|
|
15
|
-
onSelect,
|
|
16
|
-
onMouseEnter,
|
|
17
|
-
onMouseLeave
|
|
18
|
-
}) => {
|
|
19
|
-
const handleSelect = () => onSelect(item.objectId);
|
|
20
|
-
|
|
21
|
-
const handleMouseEnter = () => onMouseEnter(item.objectId);
|
|
22
|
-
|
|
23
|
-
const handleMouseLeave = () => onMouseLeave(item.objectId);
|
|
24
|
-
|
|
25
|
-
return jsx(ListItemWrapper, {
|
|
26
|
-
role: role,
|
|
27
|
-
id: id,
|
|
28
|
-
"aria-selected": selected,
|
|
29
|
-
"data-testid": "link-search-list-item",
|
|
30
|
-
selected: selected,
|
|
31
|
-
active: active,
|
|
32
|
-
onMouseEnter: handleMouseEnter,
|
|
33
|
-
onMouseLeave: handleMouseLeave,
|
|
34
|
-
onClick: handleSelect
|
|
35
|
-
}, jsx(ListItemIcon, {
|
|
36
|
-
item: item,
|
|
37
|
-
intl: intl
|
|
38
|
-
}), jsx(ItemNameWrapper, null, jsx(ListItemName, null, item.name), jsx(ListItemContext, null, item.container && jsx(Fragment, null, item.container, "\xA0 \u2022"), jsx(ItemTimeStamp, {
|
|
39
|
-
date: transformTimeStamp(intl, item.lastViewedDate, item.lastUpdatedDate)
|
|
40
|
-
}))));
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
export default injectIntl(LinkSearchListItem);
|
|
44
|
-
|
|
45
|
-
const ItemTimeStamp = props => {
|
|
46
|
-
const {
|
|
47
|
-
date
|
|
48
|
-
} = props;
|
|
49
|
-
|
|
50
|
-
if (!date) {
|
|
51
|
-
return null;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
return jsx(Fragment, null, jsx("span", {
|
|
55
|
-
className: "link-search-timestamp",
|
|
56
|
-
"data-test-id": "link-search-timestamp"
|
|
57
|
-
}, "\xA0 ", date.pageAction, " ", date.dateString, " ", date.timeSince || ''));
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
const ListItemIcon = props => {
|
|
61
|
-
const {
|
|
62
|
-
item,
|
|
63
|
-
intl
|
|
64
|
-
} = props;
|
|
65
|
-
const {
|
|
66
|
-
icon,
|
|
67
|
-
iconAlt
|
|
68
|
-
} = item;
|
|
69
|
-
|
|
70
|
-
if (!icon) {
|
|
71
|
-
return null;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
const alt = typeof iconAlt === 'string' ? iconAlt : intl.formatMessage(iconAlt);
|
|
75
|
-
|
|
76
|
-
if (typeof icon !== 'string') {
|
|
77
|
-
const Glyph = icon;
|
|
78
|
-
return jsx(ItemIconWrapper, null, jsx(Glyph, {
|
|
79
|
-
alt: alt
|
|
80
|
-
}));
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
return jsx(ItemIconWrapper, null, jsx("img", {
|
|
84
|
-
src: icon,
|
|
85
|
-
alt: alt,
|
|
86
|
-
css: ImgStyles
|
|
87
|
-
}));
|
|
88
|
-
};
|
package/dist/esm/styles.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
|
|
2
|
-
|
|
3
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
|
|
4
|
-
|
|
5
|
-
import styled from 'styled-components';
|
|
6
|
-
import { token } from '@atlaskit/tokens';
|
|
7
|
-
import { css } from '@emotion/core';
|
|
8
|
-
import { N500, B50, N300, N800, N20, B400 } from '@atlaskit/theme/colors';
|
|
9
|
-
import { gridSize } from '@atlaskit/theme/constants';
|
|
10
|
-
import { relativeFontSizeToBase16 } from './utils'; // AFP-2532 TODO: Fix automatic suppressions below
|
|
11
|
-
// eslint-disable-next-line @atlassian/tangerine/import/entry-points
|
|
12
|
-
|
|
13
|
-
import { fontSizeSmall, fontSize, typography } from '@atlaskit/theme';
|
|
14
|
-
var LINK_PICKER_WIDTH_IN_PX = 342;
|
|
15
|
-
export var recentListStyles = css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: ", "px;\n"])), LINK_PICKER_WIDTH_IN_PX);
|
|
16
|
-
export var Container = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n padding: ", "px;\n width: 100%;\n overflow: hidden;\n line-height: initial;\n box-sizing: border-box;\n"])), gridSize() * 2);
|
|
17
|
-
export var ClearText = styled.button(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n padding: 0;\n margin-right: ", "px;\n color: ", ";\n background: transparent;\n border: none;\n cursor: pointer;\n"])), gridSize() / 2, token('color.icon.subtle', N500));
|
|
18
|
-
export var FieldWrapper = styled.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n margin-bottom: ", "px;\n"])), gridSize() * 2);
|
|
19
|
-
export var SearchIconWrapper = styled.span(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n margin-left: ", "px;\n color: ", ";\n cursor: default;\n"])), gridSize() / 2, token('color.icon', N500));
|
|
20
|
-
export var ListTitleStyles = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n ", "\n text-transform: uppercase;\n margin-bottom: ", "px;\n"])), typography.h100(), gridSize() / 2);
|
|
21
|
-
export var ListItemWrapper = styled.li(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n display: flex;\n padding: ", "px ", "px;\n margin: 0 -", "px;\n cursor: pointer;\n background-color: ", ";\n box-shadow: inset 2px 0px 0px\n ", ";\n"])), gridSize(), gridSize() * 2, gridSize() * 2, function (props) {
|
|
22
|
-
switch (true) {
|
|
23
|
-
case props.selected:
|
|
24
|
-
return token('color.background.selected', B50);
|
|
25
|
-
|
|
26
|
-
case props.active:
|
|
27
|
-
return token('color.background.neutral.subtle.hovered', N20);
|
|
28
|
-
|
|
29
|
-
default:
|
|
30
|
-
return 'transparent';
|
|
31
|
-
}
|
|
32
|
-
}, function (props) {
|
|
33
|
-
switch (true) {
|
|
34
|
-
case props.active:
|
|
35
|
-
case props.selected:
|
|
36
|
-
return token('color.border.selected', B400);
|
|
37
|
-
|
|
38
|
-
default:
|
|
39
|
-
return 'transparent';
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
export var ItemNameWrapper = styled.span(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n overflow: hidden;\n"])));
|
|
43
|
-
export var ListItemName = styled.div(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n color: ", ";\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n line-height: 20px;\n"])), token('color.text', N800));
|
|
44
|
-
export var ListItemContext = styled.div(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n color: ", ";\n font-size: ", ";\n line-height: ", "px;\n"])), token('color.text', N300), relativeFontSizeToBase16(fontSizeSmall()), fontSize());
|
|
45
|
-
export var ItemIconWrapper = styled.span(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\n min-width: ", "px;\n margin-top: 3px;\n margin-right: 12px;\n"])), gridSize() * 2);
|
|
46
|
-
export var ImgStyles = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["\n max-width: ", "px;\n"])), gridSize() * 2);
|
package/dist/types/styles.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
export declare const recentListStyles: import("@emotion/utils").SerializedStyles;
|
|
3
|
-
export declare const Container: import("styled-components").StyledComponentClass<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, any, import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>>;
|
|
4
|
-
export declare const ClearText: import("styled-components").StyledComponentClass<import("react").ClassAttributes<HTMLButtonElement> & import("react").ButtonHTMLAttributes<HTMLButtonElement>, any, import("react").ClassAttributes<HTMLButtonElement> & import("react").ButtonHTMLAttributes<HTMLButtonElement>>;
|
|
5
|
-
export declare const FieldWrapper: import("styled-components").StyledComponentClass<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, any, import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>>;
|
|
6
|
-
export declare const SearchIconWrapper: import("styled-components").StyledComponentClass<import("react").ClassAttributes<HTMLSpanElement> & import("react").HTMLAttributes<HTMLSpanElement>, any, import("react").ClassAttributes<HTMLSpanElement> & import("react").HTMLAttributes<HTMLSpanElement>>;
|
|
7
|
-
export declare const ListTitleStyles: import("@emotion/utils").SerializedStyles;
|
|
8
|
-
interface ListItemProps {
|
|
9
|
-
active: boolean;
|
|
10
|
-
selected: boolean;
|
|
11
|
-
}
|
|
12
|
-
export declare const ListItemWrapper: import("styled-components").StyledComponentClass<import("react").ClassAttributes<HTMLLIElement> & import("react").LiHTMLAttributes<HTMLLIElement> & ListItemProps, any, import("react").ClassAttributes<HTMLLIElement> & import("react").LiHTMLAttributes<HTMLLIElement> & ListItemProps>;
|
|
13
|
-
export declare const ItemNameWrapper: import("styled-components").StyledComponentClass<import("react").ClassAttributes<HTMLSpanElement> & import("react").HTMLAttributes<HTMLSpanElement>, any, import("react").ClassAttributes<HTMLSpanElement> & import("react").HTMLAttributes<HTMLSpanElement>>;
|
|
14
|
-
export declare const ListItemName: import("styled-components").StyledComponentClass<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, any, import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>>;
|
|
15
|
-
export declare const ListItemContext: import("styled-components").StyledComponentClass<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, any, import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>>;
|
|
16
|
-
export declare const ItemIconWrapper: import("styled-components").StyledComponentClass<import("react").ClassAttributes<HTMLSpanElement> & import("react").HTMLAttributes<HTMLSpanElement>, any, import("react").ClassAttributes<HTMLSpanElement> & import("react").HTMLAttributes<HTMLSpanElement>>;
|
|
17
|
-
export declare const ImgStyles: import("@emotion/utils").SerializedStyles;
|
|
18
|
-
export {};
|