@atlaskit/link-datasource 4.3.0 → 4.4.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.
Files changed (49) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/cjs/ui/assets-modal/search-container/object-schema-select/index.js +27 -2
  3. package/dist/cjs/ui/common/error-state/loading-error.compiled.css +3 -1
  4. package/dist/cjs/ui/common/error-state/loading-error.js +40 -7
  5. package/dist/cjs/ui/common/error-state/messages.js +17 -2
  6. package/dist/cjs/ui/common/modal/display-view-dropdown/display-view-drop-down.compiled.css +3 -1
  7. package/dist/cjs/ui/common/modal/display-view-dropdown/display-view-drop-down.js +35 -8
  8. package/dist/cjs/ui/common/modal/display-view-dropdown/messages.js +10 -0
  9. package/dist/cjs/ui/common/modal/popup-select/control.js +5 -2
  10. package/dist/cjs/ui/common/modal/site-selector/index.compiled.css +2 -4
  11. package/dist/cjs/ui/common/modal/site-selector/index.js +51 -15
  12. package/dist/cjs/ui/common/modal/site-selector/messages.js +5 -0
  13. package/dist/cjs/ui/datasource-table-view/datasourceTableView.js +7 -3
  14. package/dist/cjs/ui/issue-like-table/column-picker/index.js +1 -1
  15. package/dist/es2019/ui/assets-modal/search-container/object-schema-select/index.js +25 -2
  16. package/dist/es2019/ui/common/error-state/loading-error.compiled.css +3 -1
  17. package/dist/es2019/ui/common/error-state/loading-error.js +35 -8
  18. package/dist/es2019/ui/common/error-state/messages.js +17 -2
  19. package/dist/es2019/ui/common/modal/display-view-dropdown/display-view-drop-down.compiled.css +3 -1
  20. package/dist/es2019/ui/common/modal/display-view-dropdown/display-view-drop-down.js +35 -8
  21. package/dist/es2019/ui/common/modal/display-view-dropdown/messages.js +10 -0
  22. package/dist/es2019/ui/common/modal/popup-select/control.js +5 -2
  23. package/dist/es2019/ui/common/modal/site-selector/index.compiled.css +2 -4
  24. package/dist/es2019/ui/common/modal/site-selector/index.js +40 -7
  25. package/dist/es2019/ui/common/modal/site-selector/messages.js +5 -0
  26. package/dist/es2019/ui/datasource-table-view/datasourceTableView.js +7 -3
  27. package/dist/es2019/ui/issue-like-table/column-picker/index.js +2 -2
  28. package/dist/esm/ui/assets-modal/search-container/object-schema-select/index.js +28 -3
  29. package/dist/esm/ui/common/error-state/loading-error.compiled.css +3 -1
  30. package/dist/esm/ui/common/error-state/loading-error.js +41 -8
  31. package/dist/esm/ui/common/error-state/messages.js +17 -2
  32. package/dist/esm/ui/common/modal/display-view-dropdown/display-view-drop-down.compiled.css +3 -1
  33. package/dist/esm/ui/common/modal/display-view-dropdown/display-view-drop-down.js +35 -8
  34. package/dist/esm/ui/common/modal/display-view-dropdown/messages.js +10 -0
  35. package/dist/esm/ui/common/modal/popup-select/control.js +5 -2
  36. package/dist/esm/ui/common/modal/site-selector/index.compiled.css +2 -4
  37. package/dist/esm/ui/common/modal/site-selector/index.js +51 -15
  38. package/dist/esm/ui/common/modal/site-selector/messages.js +5 -0
  39. package/dist/esm/ui/datasource-table-view/datasourceTableView.js +7 -3
  40. package/dist/esm/ui/issue-like-table/column-picker/index.js +2 -2
  41. package/dist/types/ui/common/error-state/loading-error.d.ts +2 -1
  42. package/dist/types/ui/common/error-state/messages.d.ts +16 -1
  43. package/dist/types/ui/common/modal/display-view-dropdown/messages.d.ts +10 -0
  44. package/dist/types/ui/common/modal/site-selector/messages.d.ts +5 -0
  45. package/dist/types-ts4.5/ui/common/error-state/loading-error.d.ts +2 -1
  46. package/dist/types-ts4.5/ui/common/error-state/messages.d.ts +16 -1
  47. package/dist/types-ts4.5/ui/common/modal/display-view-dropdown/messages.d.ts +10 -0
  48. package/dist/types-ts4.5/ui/common/modal/site-selector/messages.d.ts +5 -0
  49. package/package.json +9 -8
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # @atlaskit/link-datasource
2
2
 
3
+ ## 4.4.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#143100](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/143100)
8
+ [`bc885672e7886`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/bc885672e7886) -
9
+ [ux] Behind fg `platform-linking-visual-refresh-sllv` - Updates styles for modal header
10
+
11
+ ## 4.3.1
12
+
13
+ ### Patch Changes
14
+
15
+ - [#141028](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/141028)
16
+ [`f8e53e5484efd`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/f8e53e5484efd) -
17
+ [ux] Update error views on datasource table to have links to confluence and jira
18
+
3
19
  ## 4.3.0
4
20
 
5
21
  ### Minor Changes
@@ -18,7 +18,10 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
18
18
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
19
19
  var _debouncePromise = _interopRequireDefault(require("debounce-promise"));
20
20
  var _reactIntlNext = require("react-intl-next");
21
+ var _new = _interopRequireDefault(require("@atlaskit/button/new"));
21
22
  var _form = require("@atlaskit/form");
23
+ var _chevronDown = _interopRequireDefault(require("@atlaskit/icon/utility/migration/chevron-down"));
24
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
22
25
  var _select = require("@atlaskit/select");
23
26
  var _constants = require("@atlaskit/theme/constants");
24
27
  var _useObjectSchemas2 = require("../../../../hooks/useObjectSchemas");
@@ -26,7 +29,8 @@ var _types = require("../../../../types/assets/types");
26
29
  var _messages = require("./messages");
27
30
  var _utils = require("./utils");
28
31
  var _excluded = ["as", "style"],
29
- _excluded2 = ["onChange", "onFocus"];
32
+ _excluded2 = ["onChange", "onFocus"],
33
+ _excluded3 = ["isOpen"];
30
34
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
31
35
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
32
36
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -119,7 +123,28 @@ var AssetsObjectSchemaSelect = exports.AssetsObjectSchemaSelect = function Asset
119
123
  _onChange = _ref4$fieldProps.onChange,
120
124
  onFocus = _ref4$fieldProps.onFocus,
121
125
  restFieldProps = (0, _objectWithoutProperties2.default)(_ref4$fieldProps, _excluded2);
122
- return /*#__PURE__*/React.createElement(_select.AsyncSelect, (0, _extends2.default)({
126
+ return (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? /*#__PURE__*/React.createElement(_select.PopupSelect, (0, _extends2.default)({
127
+ autoFocus: true,
128
+ maxMenuWidth: 300,
129
+ minMenuWidth: 300,
130
+ isLoading: objectSchemasLoading,
131
+ options: mapObjectSchemasToOptions(initialObjectSchemas),
132
+ placeholder: formatMessage(_messages.objectSchemaSelectMessages.placeholder),
133
+ onChange: function onChange(newOption) {
134
+ return newOption && _onChange(newOption);
135
+ }
136
+ }, restFieldProps, {
137
+ label: formatMessage(_messages.objectSchemaSelectMessages.placeholder),
138
+ target: function target(_ref5) {
139
+ var _restFieldProps$value;
140
+ var isOpen = _ref5.isOpen,
141
+ triggerProps = (0, _objectWithoutProperties2.default)(_ref5, _excluded3);
142
+ return /*#__PURE__*/React.createElement(_new.default, (0, _extends2.default)({}, triggerProps, {
143
+ isSelected: isOpen,
144
+ iconAfter: _chevronDown.default
145
+ }), ((_restFieldProps$value = restFieldProps.value) === null || _restFieldProps$value === void 0 ? void 0 : _restFieldProps$value.label) || formatMessage(_messages.objectSchemaSelectMessages.placeholder));
146
+ }
147
+ })) : /*#__PURE__*/React.createElement(_select.AsyncSelect, (0, _extends2.default)({
123
148
  autoFocus: true,
124
149
  classNamePrefix: classNamePrefix,
125
150
  isLoading: objectSchemasLoading,
@@ -5,4 +5,6 @@
5
5
  ._1e0c11p5{display:grid}
6
6
  ._1wpz1h6o{align-self:center}
7
7
  ._4cvr1h6o{align-items:center}
8
- ._6a6z1h6o{justify-items:center}
8
+ ._6a6z1h6o{justify-items:center}
9
+ ._p12fko4j{max-width:19pc}
10
+ ._y3gn1h6o{text-align:center}
@@ -11,8 +11,10 @@ require("./loading-error.compiled.css");
11
11
  var _react = _interopRequireWildcard(require("react"));
12
12
  var React = _react;
13
13
  var _runtime = require("@compiled/react/runtime");
14
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
14
15
  var _reactIntlNext = require("react-intl-next");
15
16
  var _standardButton = _interopRequireDefault(require("@atlaskit/button/standard-button"));
17
+ var _link = _interopRequireDefault(require("@atlaskit/link"));
16
18
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
17
19
  var _compiled = require("@atlaskit/primitives/compiled");
18
20
  var _typography = require("@atlaskit/theme/typography");
@@ -23,12 +25,20 @@ var _messages = require("./messages");
23
25
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
24
26
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
25
27
  var styles = {
26
- errorContainerStyles: "_zulppxbi _4cvr1h6o _6a6z1h6o _1wpz1h6o _10fp1h6o _1e0c11p5",
28
+ errorContainerStylesOld: "_zulppxbi _4cvr1h6o _6a6z1h6o _1wpz1h6o _10fp1h6o _1e0c11p5",
29
+ errorContainerStylesNew: "_zulppxbi _4cvr1h6o _6a6z1h6o _1wpz1h6o _10fp1h6o _1e0c11p5 _p12fko4j _y3gn1h6o",
27
30
  errorMessageContainerStyles: "_zulpu2gc _4cvr1h6o _6a6z1h6o _1e0c11p5",
28
31
  errorMessageStyles: "_11c8nbxd"
29
32
  };
33
+ var isConfluenceSearch = function isConfluenceSearch(url) {
34
+ return !!url.match(/https:\/\/.*\/wiki\/search/);
35
+ };
36
+ var isJiraIssuesList = function isJiraIssuesList(url) {
37
+ return !!url.match(/https:\/\/.*\/issues\/?\?jql=/);
38
+ };
30
39
  var LoadingError = exports.LoadingError = function LoadingError(_ref) {
31
- var onRefresh = _ref.onRefresh;
40
+ var onRefresh = _ref.onRefresh,
41
+ url = _ref.url;
32
42
  var _useDatasourceAnalyti = (0, _analytics.useDatasourceAnalyticsEvents)(),
33
43
  fireEvent = _useDatasourceAnalyti.fireEvent;
34
44
  (0, _react.useEffect)(function () {
@@ -36,8 +46,22 @@ var LoadingError = exports.LoadingError = function LoadingError(_ref) {
36
46
  reason: 'network'
37
47
  });
38
48
  }, [fireEvent]);
39
- return /*#__PURE__*/React.createElement(_compiled.Box, {
40
- xcss: styles.errorContainerStyles,
49
+ var connectionErrorMessage = _messages.loadingErrorMessages.checkConnection;
50
+ if ((0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv')) {
51
+ if (url && isConfluenceSearch(url)) {
52
+ connectionErrorMessage = _messages.loadingErrorMessages.checkConnectionConfluence;
53
+ }
54
+ if (url && isJiraIssuesList(url)) {
55
+ connectionErrorMessage = _messages.loadingErrorMessages.checkConnectionJira;
56
+ }
57
+ }
58
+
59
+ // TODO: Move it to inline when cleaning platform-linking-visual-refresh-sllv
60
+ var FGWrapper = (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? 'div' : _react.Fragment;
61
+ return /*#__PURE__*/React.createElement(FGWrapper, (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') && {
62
+ contentEditable: false
63
+ }, /*#__PURE__*/React.createElement(_compiled.Box, {
64
+ xcss: (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? styles.errorContainerStylesNew : styles.errorContainerStylesOld,
41
65
  testId: "datasource--loading-error"
42
66
  }, (0, _platformFeatureFlags.fg)('bandicoots-update-sllv-icons') ? /*#__PURE__*/React.createElement(_search.SpotErrorSearch, {
43
67
  size: 'xlarge',
@@ -47,10 +71,19 @@ var LoadingError = exports.LoadingError = function LoadingError(_ref) {
47
71
  }, /*#__PURE__*/React.createElement(_compiled.Inline, {
48
72
  as: "span",
49
73
  xcss: styles.errorMessageStyles
50
- }, /*#__PURE__*/React.createElement(_reactIntlNext.FormattedMessage, _messages.loadingErrorMessages.unableToLoadItems)), /*#__PURE__*/React.createElement(_compiled.Text, {
74
+ }, (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? /*#__PURE__*/React.createElement(_reactIntlNext.FormattedMessage, _messages.loadingErrorMessages.unableToLoadResultsVisualRefreshSllv) : /*#__PURE__*/React.createElement(_reactIntlNext.FormattedMessage, _messages.loadingErrorMessages.unableToLoadItemsOld)), /*#__PURE__*/React.createElement(_compiled.Text, {
51
75
  as: "p"
52
- }, /*#__PURE__*/React.createElement(_reactIntlNext.FormattedMessage, _messages.loadingErrorMessages.checkConnection)), onRefresh && /*#__PURE__*/React.createElement(_standardButton.default, {
76
+ }, /*#__PURE__*/React.createElement(_reactIntlNext.FormattedMessage, (0, _extends2.default)({}, connectionErrorMessage, (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') && {
77
+ values: {
78
+ a: function a(chunks) {
79
+ return /*#__PURE__*/React.createElement(_link.default, {
80
+ href: url || '',
81
+ target: "blank"
82
+ }, chunks);
83
+ }
84
+ }
85
+ }))), onRefresh && /*#__PURE__*/React.createElement(_standardButton.default, {
53
86
  appearance: "primary",
54
87
  onClick: onRefresh
55
- }, /*#__PURE__*/React.createElement(_reactIntlNext.FormattedMessage, _messages.loadingErrorMessages.refresh))));
88
+ }, /*#__PURE__*/React.createElement(_reactIntlNext.FormattedMessage, _messages.loadingErrorMessages.refresh)))));
56
89
  };
@@ -44,6 +44,16 @@ var loadingErrorMessages = exports.loadingErrorMessages = (0, _reactIntlNext.def
44
44
  description: 'Instructions to let the user know how to resolve the network error that occurred or to try again at a different time',
45
45
  defaultMessage: 'Check your connection and refresh, or try again later.'
46
46
  },
47
+ checkConnectionConfluence: {
48
+ id: 'linkDataSource.jira-issues.checkConnection.confluence',
49
+ description: 'Instructions to let the user know how to resolve the network error that occurred or to try again at a different time',
50
+ defaultMessage: 'Check your connection and refresh, or <a>open this search in Confluence</a> to review.'
51
+ },
52
+ checkConnectionJira: {
53
+ id: 'linkDataSource.jira-issues.checkConnection.jira',
54
+ description: 'Instructions to let the user know how to resolve the network error that occurred or to try again at a different time',
55
+ defaultMessage: 'Check your connection and refresh, or <a>open this search in Jira</a> to review. '
56
+ },
47
57
  //delete and remove duplicate from title above
48
58
  checkConnection: {
49
59
  id: 'linkDataSource.jira-issues.checkConnection',
@@ -77,8 +87,8 @@ var loadingErrorMessages = exports.loadingErrorMessages = (0, _reactIntlNext.def
77
87
  description: 'Error state message letting the user know we were unable the load the requested list of items',
78
88
  defaultMessage: 'Unable to load items'
79
89
  },
80
- //delete and remove duplicate from title above
81
- unableToLoadItems: {
90
+ // TODO Delete when cleaning platform-linking-visual-refresh-sllv
91
+ unableToLoadItemsOld: {
82
92
  id: 'linkDataSource.jira-issues.unableToLoadItems',
83
93
  description: 'Error state message letting the user know we were unable the load the requested list of items',
84
94
  defaultMessage: 'Unable to load items'
@@ -94,6 +104,11 @@ var loadingErrorMessages = exports.loadingErrorMessages = (0, _reactIntlNext.def
94
104
  description: 'Error state message letting the user know we were unable the load the requested list of results',
95
105
  defaultMessage: 'Unable to load results'
96
106
  },
107
+ unableToLoadResultsVisualRefreshSllv: {
108
+ id: 'linkDataSource.jira-issues.unableToLoadResults.visual-refresh-sllv',
109
+ description: 'Error state message letting the user know we were unable the load the requested list of results',
110
+ defaultMessage: 'We ran into an issue trying to fetch results'
111
+ },
97
112
  // delete once EDM-9407 is merged
98
113
  noAccessToJiraSitesTitle: {
99
114
  id: 'linkDataSource.jira-issues.no.jira.sites.access.title',
@@ -1,5 +1,7 @@
1
1
 
2
- ._2rkoglpi{border-radius:var(--ds-border-radius,4px)}._1bsbnklw{width:20pc}
2
+ ._2rkoglpi{border-radius:var(--ds-border-radius,4px)}._1bsb1pna{width:420px}
3
+ ._1bsbnklw{width:20pc}
3
4
  ._4t3i11ux{height:140px}
5
+ ._4t3i7iqz{height:87pt}
4
6
  ._ca0q1b66{padding-top:var(--ds-space-050,4px)}
5
7
  ._n3td1b66{padding-bottom:var(--ds-space-050,4px)}
@@ -10,16 +10,19 @@ exports.DisplayViewDropDown = void 0;
10
10
  require("./display-view-drop-down.compiled.css");
11
11
  var _runtime = require("@compiled/react/runtime");
12
12
  var _react = _interopRequireDefault(require("react"));
13
+ var _react2 = require("@compiled/react");
13
14
  var _reactIntlNext = require("react-intl-next");
14
15
  var _dropdownMenu = _interopRequireWildcard(require("@atlaskit/dropdown-menu"));
16
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
15
17
  var _compiled = require("@atlaskit/primitives/compiled");
16
18
  var _messages = require("./messages");
17
19
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
20
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
21
  var styles = {
20
- dropDownItemGroupStyles: "_2rkoglpi _1bsbnklw _4t3i11ux _ca0q1b66 _n3td1b66"
22
+ dropDownItemGroupStylesOld: "_2rkoglpi _1bsbnklw _4t3i11ux _ca0q1b66 _n3td1b66",
23
+ dropDownItemGroupStyles: "_2rkoglpi _1bsb1pna _4t3i7iqz"
21
24
  };
22
- var InlineIcon = /*#__PURE__*/_react.default.createElement("svg", {
25
+ var InlineIconOld = /*#__PURE__*/_react.default.createElement("svg", {
23
26
  xmlns: "http://www.w3.org/2000/svg",
24
27
  width: "24",
25
28
  height: "24",
@@ -31,7 +34,19 @@ var InlineIcon = /*#__PURE__*/_react.default.createElement("svg", {
31
34
  d: "M4 9C2.89543 9 2 9.67155 2 10.5V13.5C2 14.3285 2.89543 15 4 15H20C21.1046 15 22 14.3285 22 13.5V10.5C22 9.67155 21.1046 9 20 9H4ZM4.22222 11.25C4.22222 10.5 4.22222 10.5 5 10.5H7C7.55556 10.5 7.55556 10.5 7.55556 11.25V13C7.55556 13.5 7.55556 13.5 7 13.5H5C4.22222 13.5 4.22222 13.5 4.22222 13V11.25ZM9 12C9 11.7929 9.2239 11.625 9.5 11.625H19.5C19.7761 11.625 20 11.7929 20 12C20 12.2071 19.7761 12.375 19.5 12.375H9.5C9.2239 12.375 9 12.2071 9 12Z",
32
35
  fill: 'currentColor'
33
36
  }));
34
- var ListIcon = /*#__PURE__*/_react.default.createElement("svg", {
37
+ var InlineIcon = /*#__PURE__*/_react.default.createElement("svg", {
38
+ xmlns: "http://www.w3.org/2000/svg",
39
+ width: "24",
40
+ height: "24",
41
+ fill: "none",
42
+ viewBox: "0 0 24 24"
43
+ }, /*#__PURE__*/_react.default.createElement("path", {
44
+ fill: "currentColor",
45
+ fillRule: "evenodd",
46
+ d: "M6 10.5a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 .5.5h2.5v-3H6Zm4 0v3h8a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-8ZM4 11a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2Z",
47
+ clipRule: "evenodd"
48
+ }));
49
+ var ListIconOld = /*#__PURE__*/_react.default.createElement("svg", {
35
50
  xmlns: "http://www.w3.org/2000/svg",
36
51
  width: "24",
37
52
  height: "24",
@@ -43,6 +58,18 @@ var ListIcon = /*#__PURE__*/_react.default.createElement("svg", {
43
58
  d: "M0 2C0 0.89543 0.895431 0 2 0H13C14.1046 0 15 0.895431 15 2V13C15 14.1046 14.1046 15 13 15H2C0.89543 15 0 14.1046 0 13V2ZM5 6C5 5.44772 5.44772 5 6 5L12 5C12.5523 5 13 5.44772 13 6C13 6.55229 12.5523 7 12 7L6 7C5.44772 7 5 6.55228 5 6ZM6 8C5.44772 8 5 8.44771 5 9C5 9.55228 5.44772 10 6 10L12 10C12.5523 10 13 9.55229 13 9C13 8.44772 12.5523 8 12 8L6 8ZM5 12C5 11.4477 5.44772 11 6 11L12 11C12.5523 11 13 11.4477 13 12C13 12.5523 12.5523 13 12 13L6 13C5.44772 13 5 12.5523 5 12ZM3 7C3.55228 7 4 6.55228 4 6C4 5.44772 3.55228 5 3 5C2.44772 5 2 5.44772 2 6C2 6.55228 2.44772 7 3 7ZM5 3C5 2.44772 5.44772 2 6 2L12 2C12.5523 2 13 2.44772 13 3C13 3.55229 12.5523 4 12 4L6 4C5.44772 4 5 3.55228 5 3ZM3 4C3.55228 4 4 3.55228 4 3C4 2.44772 3.55228 2 3 2C2.44772 2 2 2.44772 2 3C2 3.55228 2.44772 4 3 4ZM4 9C4 9.55229 3.55228 10 3 10C2.44772 10 2 9.55229 2 9C2 8.44771 2.44772 8 3 8C3.55228 8 4 8.44771 4 9ZM3 13C3.55228 13 4 12.5523 4 12C4 11.4477 3.55228 11 3 11C2.44772 11 2 11.4477 2 12C2 12.5523 2.44772 13 3 13Z",
44
59
  fill: 'currentColor'
45
60
  }));
61
+ var ListIcon = /*#__PURE__*/_react.default.createElement("svg", {
62
+ xmlns: "http://www.w3.org/2000/svg",
63
+ width: "24",
64
+ height: "24",
65
+ fill: "none",
66
+ viewBox: "0 0 24 24"
67
+ }, /*#__PURE__*/_react.default.createElement("path", {
68
+ fill: "currentColor",
69
+ fillRule: "evenodd",
70
+ d: "M5 7a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V7Zm2-.5a.5.5 0 0 0-.5.5v10a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5V7a.5.5 0 0 0-.5-.5H7Zm2.5 3H8V8h1.5v1.5Zm6.5 0h-5V8h5v1.5Zm-6.5 3.25H8v-1.5h1.5v1.5Zm6.5 0h-5v-1.5h5v1.5ZM9.5 16H8v-1.5h1.5V16Zm6.5 0h-5v-1.5h5V16Z",
71
+ clipRule: "evenodd"
72
+ }));
46
73
  var DisplayViewDropDown = exports.DisplayViewDropDown = function DisplayViewDropDown(_ref) {
47
74
  var onViewModeChange = _ref.onViewModeChange,
48
75
  viewMode = _ref.viewMode;
@@ -54,22 +81,22 @@ var DisplayViewDropDown = exports.DisplayViewDropDown = function DisplayViewDrop
54
81
  trigger: triggerText,
55
82
  testId: "datasource-modal--view-drop-down"
56
83
  }, /*#__PURE__*/_react.default.createElement(_compiled.Box, {
57
- xcss: styles.dropDownItemGroupStyles
84
+ xcss: (0, _react2.cx)((0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? styles.dropDownItemGroupStyles : styles.dropDownItemGroupStylesOld)
58
85
  }, /*#__PURE__*/_react.default.createElement(_dropdownMenu.DropdownItemGroup, null, /*#__PURE__*/_react.default.createElement(_dropdownMenu.DropdownItem, {
59
86
  testId: "dropdown-item-table",
60
87
  onClick: function onClick() {
61
88
  return onViewModeChange('table');
62
89
  },
63
90
  isSelected: isTable,
64
- description: formatMessage(_messages.displayViewDropDownMessages.viewModeListDescription),
65
- elemBefore: ListIcon
91
+ description: formatMessage((0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? _messages.displayViewDropDownMessages.viewModeListDescription : _messages.displayViewDropDownMessages.viewModeListDescriptionOld),
92
+ elemBefore: (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? ListIcon : ListIconOld
66
93
  }, /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.displayViewDropDownMessages.viewModeListLabel)), /*#__PURE__*/_react.default.createElement(_dropdownMenu.DropdownItem, {
67
94
  testId: "dropdown-item-inline-link",
68
95
  onClick: function onClick() {
69
96
  return onViewModeChange('inline');
70
97
  },
71
98
  isSelected: !isTable,
72
- description: formatMessage(_messages.displayViewDropDownMessages.viewModeInlineLinkDescription),
73
- elemBefore: InlineIcon
99
+ description: formatMessage((0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? _messages.displayViewDropDownMessages.viewModeInlineLinkDescription : _messages.displayViewDropDownMessages.viewModeInlineLinkDescriptionOld),
100
+ elemBefore: (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? InlineIcon : InlineIconOld
74
101
  }, /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.displayViewDropDownMessages.viewModeInlineLinkLabel)))));
75
102
  };
@@ -14,6 +14,11 @@ var displayViewDropDownMessages = exports.displayViewDropDownMessages = (0, _rea
14
14
  viewModeListDescription: {
15
15
  id: 'linkDataSource.jira-issues.configmodal.viewModeListDescription',
16
16
  description: 'Description for list view mode',
17
+ defaultMessage: 'Display the number of search results as a list'
18
+ },
19
+ viewModeListDescriptionOld: {
20
+ id: 'linkDataSource.jira-issues.configmodal.viewModeListDescriptionOld',
21
+ description: 'Description for list view mode',
17
22
  defaultMessage: 'Display search results as a list'
18
23
  },
19
24
  viewModeInlineLinkLabel: {
@@ -24,6 +29,11 @@ var displayViewDropDownMessages = exports.displayViewDropDownMessages = (0, _rea
24
29
  viewModeInlineLinkDescription: {
25
30
  id: 'linkDataSource.jira-issues.configmodal.viewModeInlineLinkDescription',
26
31
  description: 'Description for inline link view mode',
32
+ defaultMessage: 'Display the number of search results or as an inline Smart Link'
33
+ },
34
+ viewModeInlineLinkDescriptionOld: {
35
+ id: 'linkDataSource.jira-issues.configmodal.viewModeInlineLinkDescriptionOld',
36
+ description: 'Description for inline link view mode',
27
37
  defaultMessage: 'Display the number of search results as an inline Smart Link'
28
38
  }
29
39
  });
@@ -15,14 +15,17 @@ var popupCustomControlStyles = function popupCustomControlStyles() {
15
15
  return {
16
16
  display: 'flex',
17
17
  padding: "var(--ds-space-050, 4px)",
18
- borderBottom: "solid 1px ".concat("var(--ds-border, ".concat(_colors.N40, ")"))
18
+ border: 'none',
19
+ borderBottom: "solid 1px ".concat("var(--ds-border, ".concat(_colors.N40, ")")),
20
+ minHeight: 'auto'
19
21
  };
20
22
  };
21
23
  var CustomControl = exports.CustomControl = function CustomControl(_ref) {
22
24
  var children = _ref.children,
23
25
  innerProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
24
26
  return /*#__PURE__*/_react.default.createElement(_select.components.Control, (0, _extends2.default)({}, innerProps, {
25
- getStyles: popupCustomControlStyles
27
+ getStyles: popupCustomControlStyles,
28
+ appearance: "none"
26
29
  }), children);
27
30
  };
28
31
  var _default = exports.default = CustomControl;
@@ -1,6 +1,4 @@
1
- ._11c82smr{font:var(--ds-font-body,normal 400 14px/20px ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,"Helvetica Neue",sans-serif)}
2
- ._zulpu2gc{gap:var(--ds-space-100,8px)}
3
- ._1e0c1txw{display:flex}
4
- ._1pbyibnn{z-index:11}
1
+
2
+ ._zulpu2gc{gap:var(--ds-space-100,8px)}._1e0c1txw{display:flex}
5
3
  ._1tke1ylp{min-height:40px}
6
4
  ._4cvr1h6o{align-items:center}
@@ -12,13 +12,19 @@ var _react = _interopRequireWildcard(require("react"));
12
12
  var React = _react;
13
13
  var _runtime = require("@compiled/react/runtime");
14
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
16
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
16
17
  var _reactIntlNext = require("react-intl-next");
18
+ var _new = _interopRequireDefault(require("@atlaskit/button/new"));
19
+ var _heading = _interopRequireDefault(require("@atlaskit/heading"));
20
+ var _chevronDown = _interopRequireDefault(require("@atlaskit/icon/utility/migration/chevron-down"));
21
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
17
22
  var _compiled = require("@atlaskit/primitives/compiled");
18
- var _select = _interopRequireDefault(require("@atlaskit/select"));
23
+ var _select = _interopRequireWildcard(require("@atlaskit/select"));
19
24
  var _messages = require("./messages");
20
- var _excluded = ["width"],
21
- _excluded2 = ["width"];
25
+ var _excluded = ["isOpen"],
26
+ _excluded2 = ["width"],
27
+ _excluded3 = ["width"];
22
28
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
23
29
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
30
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -26,7 +32,6 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
26
32
  var styles = {
27
33
  dropdownContainerStyles: "_zulpu2gc _1e0c1txw _4cvr1h6o _1tke1ylp"
28
34
  };
29
- var selectStyles = null;
30
35
  var SiteSelector = exports.SiteSelector = function SiteSelector(props) {
31
36
  var availableSites = props.availableSites,
32
37
  onSiteSelection = props.onSiteSelection,
@@ -57,20 +62,52 @@ var SiteSelector = exports.SiteSelector = function SiteSelector(props) {
57
62
  };
58
63
  return /*#__PURE__*/React.createElement(_compiled.Box, {
59
64
  xcss: styles.dropdownContainerStyles
60
- }, formatMessage(label), availableSites && availableSites.length > 1 && /*#__PURE__*/React.createElement("span", {
65
+ }, (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? /*#__PURE__*/React.createElement(_heading.default, {
66
+ size: "medium",
67
+ as: "h1"
68
+ }, formatMessage(label)) : formatMessage(label), availableSites && availableSites.length > 1 && /*#__PURE__*/React.createElement("span", {
61
69
  "data-testid": "".concat(testId, "--trigger")
62
- }, /*#__PURE__*/React.createElement(_select.default, {
63
- classNamePrefix: testId,
70
+ }, (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? /*#__PURE__*/React.createElement(_select.PopupSelect, {
71
+ searchThreshold: 10,
72
+ maxMenuWidth: 300,
73
+ minMenuWidth: 300,
64
74
  isLoading: !availableSites,
75
+ testId: testId,
65
76
  onChange: onChange,
77
+ value: selectedSiteOption,
78
+ label: formatMessage(_messages.siteSelectorMessages.chooseSite),
66
79
  options: availableSitesOptions,
67
80
  placeholder: formatMessage(_messages.siteSelectorMessages.chooseSite),
81
+ target: function target(_ref) {
82
+ var isOpen = _ref.isOpen,
83
+ triggerProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
84
+ return /*#__PURE__*/React.createElement(_new.default, (0, _extends2.default)({}, triggerProps, {
85
+ isSelected: isOpen,
86
+ iconAfter: _chevronDown.default,
87
+ testId: "".concat(testId, "__control")
88
+ }), (selectedSiteOption === null || selectedSiteOption === void 0 ? void 0 : selectedSiteOption.label) || formatMessage(_messages.siteSelectorMessages.chooseSite));
89
+ }
90
+ }) : /*#__PURE__*/React.createElement(_select.default, {
91
+ classNamePrefix: testId,
92
+ isLoading: !availableSites,
93
+ onChange: onChange,
94
+ options: availableSitesOptions,
95
+ placeholder: formatMessage(_messages.siteSelectorMessages.chooseSiteOld)
96
+ // eslint-disable-next-line @atlaskit/design-system/no-unsafe-style-overrides
97
+ ,
68
98
  styles: {
99
+ container: function container(css) {
100
+ return _objectSpread(_objectSpread({}, css), {}, {
101
+ font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
102
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
103
+ zIndex: 11
104
+ });
105
+ },
69
106
  // prevents the popup menu with available sites from being too narrow
70
107
  // if the selected site is much shorter than the other options
71
- menu: function menu(_ref) {
72
- var width = _ref.width,
73
- css = (0, _objectWithoutProperties2.default)(_ref, _excluded);
108
+ menu: function menu(_ref2) {
109
+ var width = _ref2.width,
110
+ css = (0, _objectWithoutProperties2.default)(_ref2, _excluded2);
74
111
  return _objectSpread(_objectSpread({}, css), {}, {
75
112
  minWidth: '100%',
76
113
  width: 'max-content',
@@ -78,9 +115,9 @@ var SiteSelector = exports.SiteSelector = function SiteSelector(props) {
78
115
  fontWeight: "var(--ds-font-weight-medium, 500)"
79
116
  });
80
117
  },
81
- valueContainer: function valueContainer(_ref2) {
82
- var width = _ref2.width,
83
- css = (0, _objectWithoutProperties2.default)(_ref2, _excluded2);
118
+ valueContainer: function valueContainer(_ref3) {
119
+ var width = _ref3.width,
120
+ css = (0, _objectWithoutProperties2.default)(_ref3, _excluded3);
84
121
  return _objectSpread(_objectSpread({}, css), {}, {
85
122
  // font-weight has to be overridden here so that it gets applied after the font styles in teh css element above
86
123
  fontWeight: "var(--ds-font-weight-medium, 500)"
@@ -89,7 +126,6 @@ var SiteSelector = exports.SiteSelector = function SiteSelector(props) {
89
126
  },
90
127
  testId: testId,
91
128
  value: selectedSiteOption,
92
- label: formatMessage(_messages.siteSelectorMessages.chooseSite),
93
- className: (0, _runtime.ax)(["_11c82smr _1pbyibnn"])
129
+ label: formatMessage(_messages.siteSelectorMessages.chooseSiteOld)
94
130
  })));
95
131
  };
@@ -15,6 +15,11 @@ var siteSelectorMessages = exports.siteSelectorMessages = (0, _reactIntlNext.def
15
15
  chooseSite: {
16
16
  id: 'linkDataSource.jira-issues.configmodal.chooseSite',
17
17
  description: 'Label for input letting user know they have to choose a site',
18
+ defaultMessage: 'Select a site'
19
+ },
20
+ chooseSiteOld: {
21
+ id: 'linkDataSource.jira-issues.configmodal.chooseSiteOld',
22
+ description: 'Label for input letting user know they have to choose a site',
18
23
  defaultMessage: 'Choose site'
19
24
  }
20
25
  });
@@ -11,8 +11,10 @@ require("./datasourceTableView.compiled.css");
11
11
  var _react = _interopRequireWildcard(require("react"));
12
12
  var React = _react;
13
13
  var _runtime = require("@compiled/react/runtime");
14
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
14
15
  var _analyticsNext = require("@atlaskit/analytics-next");
15
16
  var _intlMessagesProvider = require("@atlaskit/intl-messages-provider");
17
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
16
18
  var _analytics = require("../../analytics");
17
19
  var _constants = require("../../analytics/constants");
18
20
  var _ufoExperiences = require("../../analytics/ufoExperiences");
@@ -135,7 +137,7 @@ var DatasourceTableViewWithoutAnalytics = function DatasourceTableViewWithoutAna
135
137
  });
136
138
  }, [reset]);
137
139
  if (status === 'resolved' && !responseItems.length || status === 'forbidden') {
138
- return /*#__PURE__*/React.createElement(_noResults.NoResults, {
140
+ return /*#__PURE__*/React.createElement(_noResults.NoResults, !(0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') && {
139
141
  onRefresh: handleErrorRefresh
140
142
  });
141
143
  }
@@ -152,9 +154,11 @@ var DatasourceTableViewWithoutAnalytics = function DatasourceTableViewWithoutAna
152
154
  });
153
155
  }
154
156
  if (status === 'rejected') {
155
- return /*#__PURE__*/React.createElement(_loadingError.LoadingError, {
157
+ return /*#__PURE__*/React.createElement(_loadingError.LoadingError, (0, _extends2.default)({
156
158
  onRefresh: handleErrorRefresh
157
- });
159
+ }, (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') && {
160
+ url: url
161
+ }));
158
162
  }
159
163
  return /*#__PURE__*/React.createElement(_intlMessagesProvider.IntlMessagesProvider, {
160
164
  defaultMessages: _en.default,
@@ -162,7 +162,7 @@ var ColumnPicker = exports.ColumnPicker = function ColumnPicker(_ref) {
162
162
  return /*#__PURE__*/_react.default.createElement(_new.default, (0, _extends2.default)({}, tooltipProps, triggerProps, {
163
163
  isSelected: isOpen,
164
164
  spacing: "compact",
165
- appearance: (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? "default" : "subtle",
165
+ appearance: (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-sllv') ? 'default' : 'subtle',
166
166
  testId: "column-picker-trigger-button",
167
167
  iconBefore: function iconBefore() {
168
168
  return /*#__PURE__*/_react.default.createElement(_compiled.Box, {
@@ -6,8 +6,11 @@ import * as React from 'react';
6
6
  import { ax, ix } from "@compiled/react/runtime";
7
7
  import debounce from 'debounce-promise';
8
8
  import { useIntl } from 'react-intl-next';
9
+ import Button from '@atlaskit/button/new';
9
10
  import { Field } from '@atlaskit/form';
10
- import { AsyncSelect } from '@atlaskit/select';
11
+ import ChevronDownIcon from '@atlaskit/icon/utility/migration/chevron-down';
12
+ import { fg } from '@atlaskit/platform-feature-flags';
13
+ import { AsyncSelect, PopupSelect } from '@atlaskit/select';
11
14
  import { layers } from '@atlaskit/theme/constants';
12
15
  import { useObjectSchemas } from '../../../../hooks/useObjectSchemas';
13
16
  import { objectSchemaKey } from '../../../../types/assets/types';
@@ -84,7 +87,27 @@ export const AssetsObjectSchemaSelect = ({
84
87
  onFocus,
85
88
  ...restFieldProps
86
89
  }
87
- }) => /*#__PURE__*/React.createElement(AsyncSelect, _extends({
90
+ }) => fg('platform-linking-visual-refresh-sllv') ? /*#__PURE__*/React.createElement(PopupSelect, _extends({
91
+ autoFocus: true,
92
+ maxMenuWidth: 300,
93
+ minMenuWidth: 300,
94
+ isLoading: objectSchemasLoading,
95
+ options: mapObjectSchemasToOptions(initialObjectSchemas),
96
+ placeholder: formatMessage(objectSchemaSelectMessages.placeholder),
97
+ onChange: newOption => newOption && onChange(newOption)
98
+ }, restFieldProps, {
99
+ label: formatMessage(objectSchemaSelectMessages.placeholder),
100
+ target: ({
101
+ isOpen,
102
+ ...triggerProps
103
+ }) => {
104
+ var _restFieldProps$value;
105
+ return /*#__PURE__*/React.createElement(Button, _extends({}, triggerProps, {
106
+ isSelected: isOpen,
107
+ iconAfter: ChevronDownIcon
108
+ }), ((_restFieldProps$value = restFieldProps.value) === null || _restFieldProps$value === void 0 ? void 0 : _restFieldProps$value.label) || formatMessage(objectSchemaSelectMessages.placeholder));
109
+ }
110
+ })) : /*#__PURE__*/React.createElement(AsyncSelect, _extends({
88
111
  autoFocus: true,
89
112
  classNamePrefix: classNamePrefix,
90
113
  isLoading: objectSchemasLoading,
@@ -5,4 +5,6 @@
5
5
  ._1e0c11p5{display:grid}
6
6
  ._1wpz1h6o{align-self:center}
7
7
  ._4cvr1h6o{align-items:center}
8
- ._6a6z1h6o{justify-items:center}
8
+ ._6a6z1h6o{justify-items:center}
9
+ ._p12fko4j{max-width:19pc}
10
+ ._y3gn1h6o{text-align:center}