@atlaskit/link-datasource 6.1.3 → 6.1.5

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 CHANGED
@@ -1,5 +1,18 @@
1
1
  # @atlaskit/link-datasource
2
2
 
3
+ ## 6.1.5
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies
8
+
9
+ ## 6.1.4
10
+
11
+ ### Patch Changes
12
+
13
+ - [`5a653f46eff1d`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/5a653f46eff1d) -
14
+ Partially Reverting a change made in 368271 PR
15
+
3
16
  ## 6.1.3
4
17
 
5
18
  ### Patch Changes
@@ -9,11 +9,8 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
9
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
11
  var _react = require("react");
12
- var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
13
- var _assetsWorkspaceHost = require("@atlassian/assets-workspace-host");
14
12
  var _analytics = require("../analytics");
15
13
  var _cmdbService = require("../services/cmdbService");
16
- var _getMeta2 = require("../services/getMeta");
17
14
  var handleAssetsClientErrors = function handleAssetsClientErrors(errorSetter, error) {
18
15
  if (error instanceof Error) {
19
16
  errorSetter(error);
@@ -22,7 +19,6 @@ var handleAssetsClientErrors = function handleAssetsClientErrors(errorSetter, er
22
19
  }
23
20
  };
24
21
  var useAssetsClient = exports.useAssetsClient = function useAssetsClient(initialParameters) {
25
- var _getMeta;
26
22
  var _useState = (0, _react.useState)(false),
27
23
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
28
24
  loading = _useState2[0],
@@ -58,100 +54,74 @@ var useAssetsClient = exports.useAssetsClient = function useAssetsClient(initial
58
54
  var _useDatasourceAnalyti = (0, _analytics.useDatasourceAnalyticsEvents)(),
59
55
  fireEvent = _useDatasourceAnalyti.fireEvent;
60
56
 
61
- // cloudId resolved from <meta name="ajs-cloud-id"> rendered by the host page.
62
- var cloudId = (_getMeta = (0, _getMeta2.getMeta)('ajs-cloud-id')) !== null && _getMeta !== void 0 ? _getMeta : '';
63
- var isResolverGateOn = (0, _platformFeatureFlags.fg)('astral_units_workspace_host_resolver');
64
- var _useAssetsWorkspaceHo = (0, _assetsWorkspaceHost.useAssetsWorkspaceHost)({
65
- cloudId: cloudId,
66
- productContext: 'confluence',
67
- skip: !cloudId || !isResolverGateOn
68
- }),
69
- resolvedWorkspaceId = _useAssetsWorkspaceHo.resolvedWorkspaceId,
70
- isResolverPending = _useAssetsWorkspaceHo.isPending,
71
- isResolverIdle = _useAssetsWorkspaceHo.isIdle;
72
- var isResolverPendingOrIdle = isResolverIdle || isResolverPending;
73
57
  /*
74
58
  * We wrap this in nested try/catch blocks because we want to handle
75
59
  * workspaceError/existingObjectSchemaError/objectSchemasError differently
76
60
  * if we need to implement more initial data fetching/errors we should look at a store
77
61
  */
78
62
  (0, _react.useEffect)(function () {
79
- if (isResolverPendingOrIdle && isResolverGateOn) {
80
- setLoading(true);
81
- return;
82
- }
83
63
  (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
84
- var effectiveWorkspaceId, fetchedObjectSchema, fetchedObjectSchemasResponse, _t, _t2, _t3, _t4;
64
+ var _workspaceId, fetchedObjectSchema, fetchedObjectSchemasResponse, _t, _t2, _t3;
85
65
  return _regenerator.default.wrap(function (_context) {
86
66
  while (1) switch (_context.prev = _context.next) {
87
67
  case 0:
88
68
  setLoading(true);
89
69
  setWorkspaceError(undefined);
90
70
  _context.prev = 1;
91
- if (!(resolvedWorkspaceId && isResolverGateOn)) {
92
- _context.next = 2;
93
- break;
94
- }
95
- _t = resolvedWorkspaceId;
96
- _context.next = 4;
97
- break;
98
- case 2:
99
- _context.next = 3;
71
+ _context.next = 2;
100
72
  return (0, _cmdbService.getWorkspaceId)(fireEvent);
101
- case 3:
102
- _t = _context.sent;
103
- case 4:
104
- effectiveWorkspaceId = _t;
105
- setWorkspaceId(effectiveWorkspaceId);
73
+ case 2:
74
+ _workspaceId = _context.sent;
75
+ setWorkspaceId(_workspaceId);
106
76
  // Check schema from initial parameters still exists and fetch name/permissions for schema select
107
77
  if (!(initialParameters !== null && initialParameters !== void 0 && initialParameters.schemaId)) {
108
- _context.next = 8;
78
+ _context.next = 6;
109
79
  break;
110
80
  }
111
- _context.prev = 5;
112
- _context.next = 6;
113
- return (0, _cmdbService.fetchObjectSchema)(effectiveWorkspaceId, initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.schemaId, fireEvent);
114
- case 6:
81
+ _context.prev = 3;
82
+ _context.next = 4;
83
+ return (0, _cmdbService.fetchObjectSchema)(_workspaceId, initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.schemaId, fireEvent);
84
+ case 4:
115
85
  fetchedObjectSchema = _context.sent;
116
86
  setExistingObjectSchema(fetchedObjectSchema);
117
- _context.next = 8;
87
+ _context.next = 6;
118
88
  break;
89
+ case 5:
90
+ _context.prev = 5;
91
+ _t = _context["catch"](3);
92
+ handleAssetsClientErrors(setExistingObjectSchemaError, _t);
93
+ case 6:
94
+ _context.prev = 6;
95
+ _context.next = 7;
96
+ return (0, _cmdbService.fetchObjectSchemas)(_workspaceId, undefined, fireEvent);
119
97
  case 7:
120
- _context.prev = 7;
121
- _t2 = _context["catch"](5);
122
- handleAssetsClientErrors(setExistingObjectSchemaError, _t2);
123
- case 8:
124
- _context.prev = 8;
125
- _context.next = 9;
126
- return (0, _cmdbService.fetchObjectSchemas)(effectiveWorkspaceId, undefined, fireEvent);
127
- case 9:
128
98
  fetchedObjectSchemasResponse = _context.sent;
129
99
  setObjectSchemas(fetchedObjectSchemasResponse.values);
130
100
  setTotalObjectSchemas(fetchedObjectSchemasResponse.total);
101
+ _context.next = 9;
102
+ break;
103
+ case 8:
104
+ _context.prev = 8;
105
+ _t2 = _context["catch"](6);
106
+ handleAssetsClientErrors(setObjectSchemasError, _t2);
107
+ case 9:
131
108
  _context.next = 11;
132
109
  break;
133
110
  case 10:
134
111
  _context.prev = 10;
135
- _t3 = _context["catch"](8);
136
- handleAssetsClientErrors(setObjectSchemasError, _t3);
112
+ _t3 = _context["catch"](1);
113
+ handleAssetsClientErrors(setWorkspaceError, _t3);
137
114
  case 11:
138
- _context.next = 13;
139
- break;
140
- case 12:
141
- _context.prev = 12;
142
- _t4 = _context["catch"](1);
143
- handleAssetsClientErrors(setWorkspaceError, _t4);
144
- case 13:
145
- _context.prev = 13;
115
+ _context.prev = 11;
146
116
  setLoading(false);
147
- return _context.finish(13);
148
- case 14:
117
+ return _context.finish(11);
118
+ case 12:
149
119
  case "end":
150
120
  return _context.stop();
151
121
  }
152
- }, _callee, null, [[1, 12, 13, 14], [5, 7], [8, 10]]);
122
+ }, _callee, null, [[1, 10, 11, 12], [3, 5], [6, 8]]);
153
123
  }))();
154
- }, [initialParameters, fireEvent, resolvedWorkspaceId, isResolverPendingOrIdle, isResolverGateOn]);
124
+ }, [initialParameters, fireEvent]);
155
125
  return {
156
126
  workspaceId: workspaceId,
157
127
  workspaceError: workspaceError,
@@ -7,14 +7,10 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.default = exports.LINK_TYPE_TEST_ID = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
- var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
11
10
  var _smartCard = require("@atlaskit/smart-card");
12
11
  var _hoverCard = require("@atlaskit/smart-card/hover-card");
13
12
  var _linkUrl = _interopRequireDefault(require("@atlaskit/smart-card/link-url"));
14
- var _assetsWorkspaceHost = require("@atlassian/assets-workspace-host");
15
- var _getMeta2 = require("../../../../services/getMeta");
16
13
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
17
- var ASSETS_URL_PREFIX = '/jira/servicedesk/assets/';
18
14
  var linkStyles = {
19
15
  key: {
20
16
  fontWeight: "var(--ds-font-weight-semibold, 600)",
@@ -25,7 +21,6 @@ var linkStyles = {
25
21
  };
26
22
  var LINK_TYPE_TEST_ID = exports.LINK_TYPE_TEST_ID = 'link-datasource-render-type--link';
27
23
  var LinkRenderType = function LinkRenderType(_ref) {
28
- var _getMeta;
29
24
  var style = _ref.style,
30
25
  url = _ref.url,
31
26
  text = _ref.text,
@@ -34,27 +29,11 @@ var LinkRenderType = function LinkRenderType(_ref) {
34
29
  var linkStyle = (0, _react.useMemo)(function () {
35
30
  return (style === null || style === void 0 ? void 0 : style.appearance) && linkStyles[style.appearance] || {};
36
31
  }, [style]);
37
- var cloudId = (_getMeta = (0, _getMeta2.getMeta)('ajs-cloud-id')) !== null && _getMeta !== void 0 ? _getMeta : '';
38
- var isResolverGateOn = (0, _platformFeatureFlags.fg)('astral_units_workspace_host_resolver');
39
- var isAssetsUrl = typeof url === 'string' && url.startsWith(ASSETS_URL_PREFIX);
40
- var skipWorkspaceHostResolver = !cloudId || !isAssetsUrl || !isResolverGateOn;
41
- var _useAssetsWorkspaceHo = (0, _assetsWorkspaceHost.useAssetsWorkspaceHost)({
42
- cloudId: cloudId,
43
- productContext: 'confluence',
44
- skip: skipWorkspaceHostResolver
45
- }),
46
- resolverData = _useAssetsWorkspaceHo.data;
47
- var rewrittenUrl = (0, _react.useMemo)(function () {
48
- if (!url || !(resolverData !== null && resolverData !== void 0 && resolverData.host) || skipWorkspaceHostResolver) {
49
- return url;
50
- }
51
- return "".concat(resolverData.host).concat(url);
52
- }, [url, skipWorkspaceHostResolver, resolverData === null || resolverData === void 0 ? void 0 : resolverData.host]);
53
32
  var anchor = (0, _react.useMemo)(function () {
54
33
  return /*#__PURE__*/_react.default.createElement(_hoverCard.HoverCard, {
55
- url: rewrittenUrl
34
+ url: url
56
35
  }, /*#__PURE__*/_react.default.createElement(_linkUrl.default, {
57
- href: rewrittenUrl
36
+ href: url
58
37
  // NOTE: This will no longer apply styles to `@atlaskit/link`.
59
38
  // Wrap `@atlaskit/link` in a Text component to provide font styles to Link
60
39
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop, @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
@@ -62,17 +41,17 @@ var LinkRenderType = function LinkRenderType(_ref) {
62
41
  style: linkStyle,
63
42
  "data-testid": testId,
64
43
  target: "_blank"
65
- }, text || rewrittenUrl));
66
- }, [linkStyle, rewrittenUrl, text, testId]);
44
+ }, text || url));
45
+ }, [linkStyle, url, text, testId]);
67
46
  var SmartCard = function SmartCard() {
68
47
  var handleClick = function handleClick(e) {
69
48
  e.preventDefault();
70
- window.open(rewrittenUrl, '_blank', 'noopener, noreferrer');
49
+ window.open(url, '_blank', 'noopener, noreferrer');
71
50
  };
72
51
  return /*#__PURE__*/_react.default.createElement(_smartCard.Card, {
73
52
  appearance: "inline",
74
53
  onClick: handleClick,
75
- url: rewrittenUrl,
54
+ url: url,
76
55
  testId: testId,
77
56
  fallbackComponent: function fallbackComponent() {
78
57
  return anchor;
@@ -1,9 +1,6 @@
1
1
  import { useEffect, useState } from 'react';
2
- import { fg } from '@atlaskit/platform-feature-flags';
3
- import { useAssetsWorkspaceHost } from '@atlassian/assets-workspace-host';
4
2
  import { useDatasourceAnalyticsEvents } from '../analytics';
5
3
  import { fetchObjectSchema, fetchObjectSchemas, getWorkspaceId } from '../services/cmdbService';
6
- import { getMeta } from '../services/getMeta';
7
4
  const handleAssetsClientErrors = (errorSetter, error) => {
8
5
  if (error instanceof Error) {
9
6
  errorSetter(error);
@@ -12,7 +9,6 @@ const handleAssetsClientErrors = (errorSetter, error) => {
12
9
  }
13
10
  };
14
11
  export const useAssetsClient = initialParameters => {
15
- var _getMeta;
16
12
  const [loading, setLoading] = useState(false);
17
13
  const [workspaceId, setWorkspaceId] = useState();
18
14
  const [workspaceError, setWorkspaceError] = useState();
@@ -25,46 +21,29 @@ export const useAssetsClient = initialParameters => {
25
21
  fireEvent
26
22
  } = useDatasourceAnalyticsEvents();
27
23
 
28
- // cloudId resolved from <meta name="ajs-cloud-id"> rendered by the host page.
29
- const cloudId = (_getMeta = getMeta('ajs-cloud-id')) !== null && _getMeta !== void 0 ? _getMeta : '';
30
- const isResolverGateOn = fg('astral_units_workspace_host_resolver');
31
- const {
32
- resolvedWorkspaceId,
33
- isPending: isResolverPending,
34
- isIdle: isResolverIdle
35
- } = useAssetsWorkspaceHost({
36
- cloudId,
37
- productContext: 'confluence',
38
- skip: !cloudId || !isResolverGateOn
39
- });
40
- const isResolverPendingOrIdle = isResolverIdle || isResolverPending;
41
24
  /*
42
25
  * We wrap this in nested try/catch blocks because we want to handle
43
26
  * workspaceError/existingObjectSchemaError/objectSchemasError differently
44
27
  * if we need to implement more initial data fetching/errors we should look at a store
45
28
  */
46
29
  useEffect(() => {
47
- if (isResolverPendingOrIdle && isResolverGateOn) {
48
- setLoading(true);
49
- return;
50
- }
51
30
  (async () => {
52
31
  setLoading(true);
53
32
  setWorkspaceError(undefined);
54
33
  try {
55
- const effectiveWorkspaceId = resolvedWorkspaceId && isResolverGateOn ? resolvedWorkspaceId : await getWorkspaceId(fireEvent);
56
- setWorkspaceId(effectiveWorkspaceId);
34
+ const workspaceId = await getWorkspaceId(fireEvent);
35
+ setWorkspaceId(workspaceId);
57
36
  // Check schema from initial parameters still exists and fetch name/permissions for schema select
58
37
  if (initialParameters !== null && initialParameters !== void 0 && initialParameters.schemaId) {
59
38
  try {
60
- const fetchedObjectSchema = await fetchObjectSchema(effectiveWorkspaceId, initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.schemaId, fireEvent);
39
+ const fetchedObjectSchema = await fetchObjectSchema(workspaceId, initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.schemaId, fireEvent);
61
40
  setExistingObjectSchema(fetchedObjectSchema);
62
41
  } catch (fetchObjectSchemaError) {
63
42
  handleAssetsClientErrors(setExistingObjectSchemaError, fetchObjectSchemaError);
64
43
  }
65
44
  }
66
45
  try {
67
- const fetchedObjectSchemasResponse = await fetchObjectSchemas(effectiveWorkspaceId, undefined, fireEvent);
46
+ const fetchedObjectSchemasResponse = await fetchObjectSchemas(workspaceId, undefined, fireEvent);
68
47
  setObjectSchemas(fetchedObjectSchemasResponse.values);
69
48
  setTotalObjectSchemas(fetchedObjectSchemasResponse.total);
70
49
  } catch (fetchObjectSchemasError) {
@@ -76,7 +55,7 @@ export const useAssetsClient = initialParameters => {
76
55
  setLoading(false);
77
56
  }
78
57
  })();
79
- }, [initialParameters, fireEvent, resolvedWorkspaceId, isResolverPendingOrIdle, isResolverGateOn]);
58
+ }, [initialParameters, fireEvent]);
80
59
  return {
81
60
  workspaceId,
82
61
  workspaceError,
@@ -1,11 +1,7 @@
1
1
  import React, { useMemo } from 'react';
2
- import { fg } from '@atlaskit/platform-feature-flags';
3
2
  import { Card } from '@atlaskit/smart-card';
4
3
  import { HoverCard } from '@atlaskit/smart-card/hover-card';
5
4
  import LinkUrl from '@atlaskit/smart-card/link-url';
6
- import { useAssetsWorkspaceHost } from '@atlassian/assets-workspace-host';
7
- import { getMeta } from '../../../../services/getMeta';
8
- const ASSETS_URL_PREFIX = '/jira/servicedesk/assets/';
9
5
  const linkStyles = {
10
6
  key: {
11
7
  fontWeight: "var(--ds-font-weight-semibold, 600)",
@@ -21,31 +17,13 @@ const LinkRenderType = ({
21
17
  text,
22
18
  testId = LINK_TYPE_TEST_ID
23
19
  }) => {
24
- var _getMeta;
25
20
  const linkStyle = useMemo(() => {
26
21
  return (style === null || style === void 0 ? void 0 : style.appearance) && linkStyles[style.appearance] || {};
27
22
  }, [style]);
28
- const cloudId = (_getMeta = getMeta('ajs-cloud-id')) !== null && _getMeta !== void 0 ? _getMeta : '';
29
- const isResolverGateOn = fg('astral_units_workspace_host_resolver');
30
- const isAssetsUrl = typeof url === 'string' && url.startsWith(ASSETS_URL_PREFIX);
31
- const skipWorkspaceHostResolver = !cloudId || !isAssetsUrl || !isResolverGateOn;
32
- const {
33
- data: resolverData
34
- } = useAssetsWorkspaceHost({
35
- cloudId,
36
- productContext: 'confluence',
37
- skip: skipWorkspaceHostResolver
38
- });
39
- const rewrittenUrl = useMemo(() => {
40
- if (!url || !(resolverData !== null && resolverData !== void 0 && resolverData.host) || skipWorkspaceHostResolver) {
41
- return url;
42
- }
43
- return `${resolverData.host}${url}`;
44
- }, [url, skipWorkspaceHostResolver, resolverData === null || resolverData === void 0 ? void 0 : resolverData.host]);
45
23
  const anchor = useMemo(() => /*#__PURE__*/React.createElement(HoverCard, {
46
- url: rewrittenUrl
24
+ url: url
47
25
  }, /*#__PURE__*/React.createElement(LinkUrl, {
48
- href: rewrittenUrl
26
+ href: url
49
27
  // NOTE: This will no longer apply styles to `@atlaskit/link`.
50
28
  // Wrap `@atlaskit/link` in a Text component to provide font styles to Link
51
29
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop, @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
@@ -53,16 +31,16 @@ const LinkRenderType = ({
53
31
  style: linkStyle,
54
32
  "data-testid": testId,
55
33
  target: "_blank"
56
- }, text || rewrittenUrl)), [linkStyle, rewrittenUrl, text, testId]);
34
+ }, text || url)), [linkStyle, url, text, testId]);
57
35
  const SmartCard = () => {
58
36
  const handleClick = e => {
59
37
  e.preventDefault();
60
- window.open(rewrittenUrl, '_blank', 'noopener, noreferrer');
38
+ window.open(url, '_blank', 'noopener, noreferrer');
61
39
  };
62
40
  return /*#__PURE__*/React.createElement(Card, {
63
41
  appearance: "inline",
64
42
  onClick: handleClick,
65
- url: rewrittenUrl,
43
+ url: url,
66
44
  testId: testId,
67
45
  fallbackComponent: () => anchor
68
46
  });
@@ -2,11 +2,8 @@ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _regeneratorRuntime from "@babel/runtime/regenerator";
4
4
  import { useEffect, useState } from 'react';
5
- import { fg } from '@atlaskit/platform-feature-flags';
6
- import { useAssetsWorkspaceHost } from '@atlassian/assets-workspace-host';
7
5
  import { useDatasourceAnalyticsEvents } from '../analytics';
8
6
  import { fetchObjectSchema, fetchObjectSchemas, getWorkspaceId } from '../services/cmdbService';
9
- import { getMeta } from '../services/getMeta';
10
7
  var handleAssetsClientErrors = function handleAssetsClientErrors(errorSetter, error) {
11
8
  if (error instanceof Error) {
12
9
  errorSetter(error);
@@ -15,7 +12,6 @@ var handleAssetsClientErrors = function handleAssetsClientErrors(errorSetter, er
15
12
  }
16
13
  };
17
14
  export var useAssetsClient = function useAssetsClient(initialParameters) {
18
- var _getMeta;
19
15
  var _useState = useState(false),
20
16
  _useState2 = _slicedToArray(_useState, 2),
21
17
  loading = _useState2[0],
@@ -51,100 +47,74 @@ export var useAssetsClient = function useAssetsClient(initialParameters) {
51
47
  var _useDatasourceAnalyti = useDatasourceAnalyticsEvents(),
52
48
  fireEvent = _useDatasourceAnalyti.fireEvent;
53
49
 
54
- // cloudId resolved from <meta name="ajs-cloud-id"> rendered by the host page.
55
- var cloudId = (_getMeta = getMeta('ajs-cloud-id')) !== null && _getMeta !== void 0 ? _getMeta : '';
56
- var isResolverGateOn = fg('astral_units_workspace_host_resolver');
57
- var _useAssetsWorkspaceHo = useAssetsWorkspaceHost({
58
- cloudId: cloudId,
59
- productContext: 'confluence',
60
- skip: !cloudId || !isResolverGateOn
61
- }),
62
- resolvedWorkspaceId = _useAssetsWorkspaceHo.resolvedWorkspaceId,
63
- isResolverPending = _useAssetsWorkspaceHo.isPending,
64
- isResolverIdle = _useAssetsWorkspaceHo.isIdle;
65
- var isResolverPendingOrIdle = isResolverIdle || isResolverPending;
66
50
  /*
67
51
  * We wrap this in nested try/catch blocks because we want to handle
68
52
  * workspaceError/existingObjectSchemaError/objectSchemasError differently
69
53
  * if we need to implement more initial data fetching/errors we should look at a store
70
54
  */
71
55
  useEffect(function () {
72
- if (isResolverPendingOrIdle && isResolverGateOn) {
73
- setLoading(true);
74
- return;
75
- }
76
56
  _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
77
- var effectiveWorkspaceId, fetchedObjectSchema, fetchedObjectSchemasResponse, _t, _t2, _t3, _t4;
57
+ var _workspaceId, fetchedObjectSchema, fetchedObjectSchemasResponse, _t, _t2, _t3;
78
58
  return _regeneratorRuntime.wrap(function (_context) {
79
59
  while (1) switch (_context.prev = _context.next) {
80
60
  case 0:
81
61
  setLoading(true);
82
62
  setWorkspaceError(undefined);
83
63
  _context.prev = 1;
84
- if (!(resolvedWorkspaceId && isResolverGateOn)) {
85
- _context.next = 2;
86
- break;
87
- }
88
- _t = resolvedWorkspaceId;
89
- _context.next = 4;
90
- break;
91
- case 2:
92
- _context.next = 3;
64
+ _context.next = 2;
93
65
  return getWorkspaceId(fireEvent);
94
- case 3:
95
- _t = _context.sent;
96
- case 4:
97
- effectiveWorkspaceId = _t;
98
- setWorkspaceId(effectiveWorkspaceId);
66
+ case 2:
67
+ _workspaceId = _context.sent;
68
+ setWorkspaceId(_workspaceId);
99
69
  // Check schema from initial parameters still exists and fetch name/permissions for schema select
100
70
  if (!(initialParameters !== null && initialParameters !== void 0 && initialParameters.schemaId)) {
101
- _context.next = 8;
71
+ _context.next = 6;
102
72
  break;
103
73
  }
104
- _context.prev = 5;
105
- _context.next = 6;
106
- return fetchObjectSchema(effectiveWorkspaceId, initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.schemaId, fireEvent);
107
- case 6:
74
+ _context.prev = 3;
75
+ _context.next = 4;
76
+ return fetchObjectSchema(_workspaceId, initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.schemaId, fireEvent);
77
+ case 4:
108
78
  fetchedObjectSchema = _context.sent;
109
79
  setExistingObjectSchema(fetchedObjectSchema);
110
- _context.next = 8;
80
+ _context.next = 6;
111
81
  break;
82
+ case 5:
83
+ _context.prev = 5;
84
+ _t = _context["catch"](3);
85
+ handleAssetsClientErrors(setExistingObjectSchemaError, _t);
86
+ case 6:
87
+ _context.prev = 6;
88
+ _context.next = 7;
89
+ return fetchObjectSchemas(_workspaceId, undefined, fireEvent);
112
90
  case 7:
113
- _context.prev = 7;
114
- _t2 = _context["catch"](5);
115
- handleAssetsClientErrors(setExistingObjectSchemaError, _t2);
116
- case 8:
117
- _context.prev = 8;
118
- _context.next = 9;
119
- return fetchObjectSchemas(effectiveWorkspaceId, undefined, fireEvent);
120
- case 9:
121
91
  fetchedObjectSchemasResponse = _context.sent;
122
92
  setObjectSchemas(fetchedObjectSchemasResponse.values);
123
93
  setTotalObjectSchemas(fetchedObjectSchemasResponse.total);
94
+ _context.next = 9;
95
+ break;
96
+ case 8:
97
+ _context.prev = 8;
98
+ _t2 = _context["catch"](6);
99
+ handleAssetsClientErrors(setObjectSchemasError, _t2);
100
+ case 9:
124
101
  _context.next = 11;
125
102
  break;
126
103
  case 10:
127
104
  _context.prev = 10;
128
- _t3 = _context["catch"](8);
129
- handleAssetsClientErrors(setObjectSchemasError, _t3);
105
+ _t3 = _context["catch"](1);
106
+ handleAssetsClientErrors(setWorkspaceError, _t3);
130
107
  case 11:
131
- _context.next = 13;
132
- break;
133
- case 12:
134
- _context.prev = 12;
135
- _t4 = _context["catch"](1);
136
- handleAssetsClientErrors(setWorkspaceError, _t4);
137
- case 13:
138
- _context.prev = 13;
108
+ _context.prev = 11;
139
109
  setLoading(false);
140
- return _context.finish(13);
141
- case 14:
110
+ return _context.finish(11);
111
+ case 12:
142
112
  case "end":
143
113
  return _context.stop();
144
114
  }
145
- }, _callee, null, [[1, 12, 13, 14], [5, 7], [8, 10]]);
115
+ }, _callee, null, [[1, 10, 11, 12], [3, 5], [6, 8]]);
146
116
  }))();
147
- }, [initialParameters, fireEvent, resolvedWorkspaceId, isResolverPendingOrIdle, isResolverGateOn]);
117
+ }, [initialParameters, fireEvent]);
148
118
  return {
149
119
  workspaceId: workspaceId,
150
120
  workspaceError: workspaceError,
@@ -1,11 +1,7 @@
1
1
  import React, { useMemo } from 'react';
2
- import { fg } from '@atlaskit/platform-feature-flags';
3
2
  import { Card } from '@atlaskit/smart-card';
4
3
  import { HoverCard } from '@atlaskit/smart-card/hover-card';
5
4
  import LinkUrl from '@atlaskit/smart-card/link-url';
6
- import { useAssetsWorkspaceHost } from '@atlassian/assets-workspace-host';
7
- import { getMeta } from '../../../../services/getMeta';
8
- var ASSETS_URL_PREFIX = '/jira/servicedesk/assets/';
9
5
  var linkStyles = {
10
6
  key: {
11
7
  fontWeight: "var(--ds-font-weight-semibold, 600)",
@@ -16,7 +12,6 @@ var linkStyles = {
16
12
  };
17
13
  export var LINK_TYPE_TEST_ID = 'link-datasource-render-type--link';
18
14
  var LinkRenderType = function LinkRenderType(_ref) {
19
- var _getMeta;
20
15
  var style = _ref.style,
21
16
  url = _ref.url,
22
17
  text = _ref.text,
@@ -25,27 +20,11 @@ var LinkRenderType = function LinkRenderType(_ref) {
25
20
  var linkStyle = useMemo(function () {
26
21
  return (style === null || style === void 0 ? void 0 : style.appearance) && linkStyles[style.appearance] || {};
27
22
  }, [style]);
28
- var cloudId = (_getMeta = getMeta('ajs-cloud-id')) !== null && _getMeta !== void 0 ? _getMeta : '';
29
- var isResolverGateOn = fg('astral_units_workspace_host_resolver');
30
- var isAssetsUrl = typeof url === 'string' && url.startsWith(ASSETS_URL_PREFIX);
31
- var skipWorkspaceHostResolver = !cloudId || !isAssetsUrl || !isResolverGateOn;
32
- var _useAssetsWorkspaceHo = useAssetsWorkspaceHost({
33
- cloudId: cloudId,
34
- productContext: 'confluence',
35
- skip: skipWorkspaceHostResolver
36
- }),
37
- resolverData = _useAssetsWorkspaceHo.data;
38
- var rewrittenUrl = useMemo(function () {
39
- if (!url || !(resolverData !== null && resolverData !== void 0 && resolverData.host) || skipWorkspaceHostResolver) {
40
- return url;
41
- }
42
- return "".concat(resolverData.host).concat(url);
43
- }, [url, skipWorkspaceHostResolver, resolverData === null || resolverData === void 0 ? void 0 : resolverData.host]);
44
23
  var anchor = useMemo(function () {
45
24
  return /*#__PURE__*/React.createElement(HoverCard, {
46
- url: rewrittenUrl
25
+ url: url
47
26
  }, /*#__PURE__*/React.createElement(LinkUrl, {
48
- href: rewrittenUrl
27
+ href: url
49
28
  // NOTE: This will no longer apply styles to `@atlaskit/link`.
50
29
  // Wrap `@atlaskit/link` in a Text component to provide font styles to Link
51
30
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop, @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
@@ -53,17 +32,17 @@ var LinkRenderType = function LinkRenderType(_ref) {
53
32
  style: linkStyle,
54
33
  "data-testid": testId,
55
34
  target: "_blank"
56
- }, text || rewrittenUrl));
57
- }, [linkStyle, rewrittenUrl, text, testId]);
35
+ }, text || url));
36
+ }, [linkStyle, url, text, testId]);
58
37
  var SmartCard = function SmartCard() {
59
38
  var handleClick = function handleClick(e) {
60
39
  e.preventDefault();
61
- window.open(rewrittenUrl, '_blank', 'noopener, noreferrer');
40
+ window.open(url, '_blank', 'noopener, noreferrer');
62
41
  };
63
42
  return /*#__PURE__*/React.createElement(Card, {
64
43
  appearance: "inline",
65
44
  onClick: handleClick,
66
- url: rewrittenUrl,
45
+ url: url,
67
46
  testId: testId,
68
47
  fallbackComponent: function fallbackComponent() {
69
48
  return anchor;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/link-datasource",
3
- "version": "6.1.3",
3
+ "version": "6.1.5",
4
4
  "description": "UI Components to support linking platform dataset feature",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -35,9 +35,9 @@
35
35
  "ak-postbuild": "ls -d dist/* | xargs -n 1 copyfiles -u 1 -V src/**/*.{svg,png}"
36
36
  },
37
37
  "dependencies": {
38
- "@atlaskit/adf-schema": "^56.0.0",
38
+ "@atlaskit/adf-schema": "^56.1.0",
39
39
  "@atlaskit/afm-i18n-platform-linking-platform-link-datasource": "2.7.0",
40
- "@atlaskit/analytics-next": "^12.1.0",
40
+ "@atlaskit/analytics-next": "^12.2.0",
41
41
  "@atlaskit/atlassian-context": "^1.0.0",
42
42
  "@atlaskit/avatar": "^26.1.0",
43
43
  "@atlaskit/avatar-group": "^13.1.0",
@@ -51,8 +51,8 @@
51
51
  "@atlaskit/feature-gate-js-client": "^6.0.0",
52
52
  "@atlaskit/flag": "^18.1.0",
53
53
  "@atlaskit/form": "^16.1.0",
54
- "@atlaskit/heading": "^6.1.0",
55
- "@atlaskit/icon": "^36.1.0",
54
+ "@atlaskit/heading": "^6.2.0",
55
+ "@atlaskit/icon": "^37.0.0",
56
56
  "@atlaskit/image": "^4.1.0",
57
57
  "@atlaskit/inline-edit": "^16.2.0",
58
58
  "@atlaskit/intl-messages-provider": "^4.1.0",
@@ -62,13 +62,13 @@
62
62
  "@atlaskit/layering": "^4.1.0",
63
63
  "@atlaskit/link": "^4.1.0",
64
64
  "@atlaskit/link-client-extension": "^7.1.0",
65
- "@atlaskit/link-provider": "^5.1.0",
65
+ "@atlaskit/link-provider": "^5.2.0",
66
66
  "@atlaskit/linking-common": "^11.0.0",
67
67
  "@atlaskit/linking-types": "^15.0.0",
68
- "@atlaskit/logo": "^21.3.0",
68
+ "@atlaskit/logo": "^21.4.0",
69
69
  "@atlaskit/lozenge": "^14.1.0",
70
70
  "@atlaskit/modal-dialog": "^16.1.0",
71
- "@atlaskit/object": "^2.1.0",
71
+ "@atlaskit/object": "^2.2.0",
72
72
  "@atlaskit/outbound-auth-flow-client": "^4.0.0",
73
73
  "@atlaskit/platform-feature-flags": "^2.0.0",
74
74
  "@atlaskit/popup": "^5.1.0",
@@ -76,22 +76,21 @@
76
76
  "@atlaskit/pragmatic-drag-and-drop-hitbox": "^2.0.0",
77
77
  "@atlaskit/pragmatic-drag-and-drop-react-beautiful-dnd-autoscroll": "^3.0.0",
78
78
  "@atlaskit/pragmatic-drag-and-drop-react-drop-indicator": "^4.1.0",
79
- "@atlaskit/primitives": "^20.3.0",
79
+ "@atlaskit/primitives": "^20.5.0",
80
80
  "@atlaskit/react-compiler-gating": "^0.2.0",
81
- "@atlaskit/react-select": "^4.2.0",
82
- "@atlaskit/select": "^22.3.0",
83
- "@atlaskit/smart-card": "^45.6.0",
81
+ "@atlaskit/react-select": "^4.5.0",
82
+ "@atlaskit/select": "^22.5.0",
83
+ "@atlaskit/smart-card": "^45.8.0",
84
84
  "@atlaskit/smart-user-picker": "^11.0.0",
85
85
  "@atlaskit/spinner": "^20.1.0",
86
- "@atlaskit/tag": "^15.1.0",
86
+ "@atlaskit/tag": "^15.2.0",
87
87
  "@atlaskit/textfield": "^9.1.0",
88
88
  "@atlaskit/theme": "^26.1.0",
89
- "@atlaskit/tokens": "^15.3.0",
89
+ "@atlaskit/tokens": "^15.5.0",
90
90
  "@atlaskit/tooltip": "^23.1.0",
91
91
  "@atlaskit/ufo": "^1.0.0",
92
92
  "@atlaskit/visually-hidden": "^4.1.0",
93
- "@atlaskit/width-detector": "^6.1.0",
94
- "@atlassian/assets-workspace-host": "^0.7.0",
93
+ "@atlaskit/width-detector": "^6.2.0",
95
94
  "@babel/runtime": "^7.0.0",
96
95
  "@compiled/react": "^0.20.0",
97
96
  "@types/dompurify": "^2.2.3",
@@ -117,7 +116,7 @@
117
116
  "@atlaskit/ssr": "workspace:^",
118
117
  "@atlassian/a11y-jest-testing": "^0.13.0",
119
118
  "@atlassian/a11y-playwright-testing": "^0.10.0",
120
- "@atlassian/feature-flags-test-utils": "^1.1.0",
119
+ "@atlassian/feature-flags-test-utils": "^1.2.0",
121
120
  "@atlassian/structured-docs-types": "workspace:^",
122
121
  "@faker-js/faker": "^7.5.0",
123
122
  "@testing-library/dom": "^10.1.0",
@@ -192,9 +191,6 @@
192
191
  "linking_platform_link_datasource_unit_compliant": {
193
192
  "type": "boolean"
194
193
  },
195
- "astral_units_workspace_host_resolver": {
196
- "type": "boolean"
197
- },
198
194
  "platform_lp_sllv_richtext_margin_reset": {
199
195
  "type": "boolean"
200
196
  },
@@ -1,41 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getMeta = exports.__clearMetaCacheForTests = void 0;
7
- /**
8
- * Synchronously read the value of a `<meta name="...">` tag from the current
9
- * document, with per-name in-process caching to avoid repeated DOM lookups.
10
- *
11
- * Mirrors the convention used by `@atlassian/eoc-fetch`'s `getMeta` helper:
12
- * Atlassian product pages (Confluence, Jira, etc.) render a stable set of
13
- * meta tags (e.g. `<meta name="ajs-cloud-id" content="...">`) at SSR time,
14
- * which client code can read directly from the DOM without any provider,
15
- * network call, or host migration.
16
- *
17
- * Browser-only. Returns `undefined` under SSR or when the tag is absent.
18
- */
19
- var cache = new Map();
20
- var getMeta = exports.getMeta = function getMeta(name) {
21
- var _document$querySelect, _document$querySelect2;
22
- if (typeof document === 'undefined') {
23
- return undefined;
24
- }
25
- if (cache.has(name)) {
26
- return cache.get(name);
27
- }
28
-
29
- // `name` is interpolated into a CSS attribute selector
30
- var escapedName = typeof CSS !== 'undefined' && CSS.escape ? CSS.escape(name) : name;
31
- var value = (_document$querySelect = (_document$querySelect2 = document.querySelector("meta[name=\"".concat(escapedName, "\"]"))) === null || _document$querySelect2 === void 0 ? void 0 : _document$querySelect2.getAttribute('content')) !== null && _document$querySelect !== void 0 ? _document$querySelect : undefined;
32
- cache.set(name, value);
33
- return value;
34
- };
35
-
36
- /**
37
- * Test-only: clear the cache so each test starts with a clean slate.
38
- */
39
- var __clearMetaCacheForTests = exports.__clearMetaCacheForTests = function __clearMetaCacheForTests() {
40
- cache.clear();
41
- };
@@ -1,35 +0,0 @@
1
- /**
2
- * Synchronously read the value of a `<meta name="...">` tag from the current
3
- * document, with per-name in-process caching to avoid repeated DOM lookups.
4
- *
5
- * Mirrors the convention used by `@atlassian/eoc-fetch`'s `getMeta` helper:
6
- * Atlassian product pages (Confluence, Jira, etc.) render a stable set of
7
- * meta tags (e.g. `<meta name="ajs-cloud-id" content="...">`) at SSR time,
8
- * which client code can read directly from the DOM without any provider,
9
- * network call, or host migration.
10
- *
11
- * Browser-only. Returns `undefined` under SSR or when the tag is absent.
12
- */
13
- const cache = new Map();
14
- export const getMeta = name => {
15
- var _document$querySelect, _document$querySelect2;
16
- if (typeof document === 'undefined') {
17
- return undefined;
18
- }
19
- if (cache.has(name)) {
20
- return cache.get(name);
21
- }
22
-
23
- // `name` is interpolated into a CSS attribute selector
24
- const escapedName = typeof CSS !== 'undefined' && CSS.escape ? CSS.escape(name) : name;
25
- const value = (_document$querySelect = (_document$querySelect2 = document.querySelector(`meta[name="${escapedName}"]`)) === null || _document$querySelect2 === void 0 ? void 0 : _document$querySelect2.getAttribute('content')) !== null && _document$querySelect !== void 0 ? _document$querySelect : undefined;
26
- cache.set(name, value);
27
- return value;
28
- };
29
-
30
- /**
31
- * Test-only: clear the cache so each test starts with a clean slate.
32
- */
33
- export const __clearMetaCacheForTests = () => {
34
- cache.clear();
35
- };
@@ -1,35 +0,0 @@
1
- /**
2
- * Synchronously read the value of a `<meta name="...">` tag from the current
3
- * document, with per-name in-process caching to avoid repeated DOM lookups.
4
- *
5
- * Mirrors the convention used by `@atlassian/eoc-fetch`'s `getMeta` helper:
6
- * Atlassian product pages (Confluence, Jira, etc.) render a stable set of
7
- * meta tags (e.g. `<meta name="ajs-cloud-id" content="...">`) at SSR time,
8
- * which client code can read directly from the DOM without any provider,
9
- * network call, or host migration.
10
- *
11
- * Browser-only. Returns `undefined` under SSR or when the tag is absent.
12
- */
13
- var cache = new Map();
14
- export var getMeta = function getMeta(name) {
15
- var _document$querySelect, _document$querySelect2;
16
- if (typeof document === 'undefined') {
17
- return undefined;
18
- }
19
- if (cache.has(name)) {
20
- return cache.get(name);
21
- }
22
-
23
- // `name` is interpolated into a CSS attribute selector
24
- var escapedName = typeof CSS !== 'undefined' && CSS.escape ? CSS.escape(name) : name;
25
- var value = (_document$querySelect = (_document$querySelect2 = document.querySelector("meta[name=\"".concat(escapedName, "\"]"))) === null || _document$querySelect2 === void 0 ? void 0 : _document$querySelect2.getAttribute('content')) !== null && _document$querySelect !== void 0 ? _document$querySelect : undefined;
26
- cache.set(name, value);
27
- return value;
28
- };
29
-
30
- /**
31
- * Test-only: clear the cache so each test starts with a clean slate.
32
- */
33
- export var __clearMetaCacheForTests = function __clearMetaCacheForTests() {
34
- cache.clear();
35
- };
@@ -1,5 +0,0 @@
1
- export declare const getMeta: (name: string) => string | undefined;
2
- /**
3
- * Test-only: clear the cache so each test starts with a clean slate.
4
- */
5
- export declare const __clearMetaCacheForTests: () => void;