@atlaskit/smart-card 18.0.22 → 19.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.
Files changed (137) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/dist/cjs/client/index.js +6 -379
  3. package/dist/cjs/extractors/embed/index.js +2 -2
  4. package/dist/cjs/index.js +7 -13
  5. package/dist/cjs/state/actions/constants.js +1 -13
  6. package/dist/cjs/state/actions/index.js +20 -22
  7. package/dist/cjs/state/analytics/useSmartLinkAnalytics.js +2 -2
  8. package/dist/cjs/state/config/index.js +2 -2
  9. package/dist/cjs/state/helpers.js +1 -9
  10. package/dist/cjs/state/hooks/usePrefetch.js +2 -2
  11. package/dist/cjs/state/index.js +4 -4
  12. package/dist/cjs/state/renderers/index.js +2 -2
  13. package/dist/cjs/state/store/index.js +5 -5
  14. package/dist/cjs/utils/mocks.js +2 -2
  15. package/dist/cjs/utils/test-utils.js +2 -2
  16. package/dist/cjs/version.json +1 -1
  17. package/dist/es2019/client/index.js +1 -214
  18. package/dist/es2019/extractors/embed/index.js +1 -1
  19. package/dist/es2019/index.js +4 -4
  20. package/dist/es2019/state/actions/constants.js +0 -6
  21. package/dist/es2019/state/actions/index.js +4 -4
  22. package/dist/es2019/state/analytics/useSmartLinkAnalytics.js +1 -1
  23. package/dist/es2019/state/config/index.js +1 -1
  24. package/dist/es2019/state/helpers.js +0 -5
  25. package/dist/es2019/state/hooks/usePrefetch.js +1 -1
  26. package/dist/es2019/state/index.js +1 -1
  27. package/dist/es2019/state/renderers/index.js +1 -1
  28. package/dist/es2019/state/store/index.js +2 -2
  29. package/dist/es2019/utils/mocks.js +1 -1
  30. package/dist/es2019/utils/test-utils.js +1 -1
  31. package/dist/es2019/version.json +1 -1
  32. package/dist/esm/client/index.js +1 -360
  33. package/dist/esm/extractors/embed/index.js +1 -1
  34. package/dist/esm/index.js +4 -4
  35. package/dist/esm/state/actions/constants.js +0 -6
  36. package/dist/esm/state/actions/index.js +4 -4
  37. package/dist/esm/state/analytics/useSmartLinkAnalytics.js +1 -1
  38. package/dist/esm/state/config/index.js +1 -1
  39. package/dist/esm/state/helpers.js +0 -5
  40. package/dist/esm/state/hooks/usePrefetch.js +1 -1
  41. package/dist/esm/state/index.js +1 -1
  42. package/dist/esm/state/renderers/index.js +1 -1
  43. package/dist/esm/state/store/index.js +2 -2
  44. package/dist/esm/utils/mocks.js +1 -1
  45. package/dist/esm/utils/test-utils.js +1 -1
  46. package/dist/esm/version.json +1 -1
  47. package/dist/types/__tests_external__/page-objects/BaseCard.d.ts +1 -2
  48. package/dist/types/client/index.d.ts +1 -18
  49. package/dist/types/extractors/block/index.d.ts +1 -1
  50. package/dist/types/extractors/common/title-prefix/extractTitlePrefix.d.ts +1 -1
  51. package/dist/types/extractors/flexible/icon/extract-icon-renderer.d.ts +1 -1
  52. package/dist/types/extractors/flexible/icon/index.d.ts +1 -1
  53. package/dist/types/extractors/flexible/index.d.ts +1 -1
  54. package/dist/types/extractors/inline/index.d.ts +1 -1
  55. package/dist/types/index.d.ts +6 -6
  56. package/dist/types/model/invoke-opts.d.ts +1 -14
  57. package/dist/types/state/actions/constants.d.ts +0 -6
  58. package/dist/types/state/actions/types.d.ts +2 -13
  59. package/dist/types/state/analytics/useSmartLinkAnalytics.d.ts +1 -2
  60. package/dist/types/state/config/index.d.ts +1 -1
  61. package/dist/types/state/helpers.d.ts +1 -3
  62. package/dist/types/state/hooks/useSmartLink.d.ts +6 -6
  63. package/dist/types/state/index.d.ts +3 -3
  64. package/dist/types/state/reducers/types.d.ts +1 -1
  65. package/dist/types/state/renderers/index.d.ts +1 -1
  66. package/dist/types/state/store/index.d.ts +2 -2
  67. package/dist/types/state/types.d.ts +1 -1
  68. package/dist/types/types.d.ts +2 -2
  69. package/dist/types/utils/analytics/analytics.d.ts +1 -1
  70. package/dist/types/utils/analytics/index.d.ts +1 -2
  71. package/dist/types/utils/performance.d.ts +1 -1
  72. package/dist/types/view/BlockCard/types.d.ts +1 -1
  73. package/dist/types/view/Card/types.d.ts +2 -3
  74. package/dist/types/view/FlexibleCard/types.d.ts +2 -2
  75. package/dist/types/view/FlexibleCard/utils.d.ts +1 -1
  76. package/dist/types/view/InlineCard/types.d.ts +1 -1
  77. package/package.json +3 -9
  78. package/dist/cjs/client/api.js +0 -119
  79. package/dist/cjs/client/errors.js +0 -55
  80. package/dist/cjs/client/types/index.js +0 -5
  81. package/dist/cjs/client/types/requests.js +0 -5
  82. package/dist/cjs/client/types/responses.js +0 -31
  83. package/dist/cjs/client/utils/environments.js +0 -47
  84. package/dist/cjs/providers/editor/index.js +0 -283
  85. package/dist/cjs/providers/editor/transformer.js +0 -84
  86. package/dist/cjs/providers/editor/types.js +0 -5
  87. package/dist/cjs/state/actions/helpers.js +0 -18
  88. package/dist/cjs/state/context/index.js +0 -34
  89. package/dist/cjs/state/context/provider.js +0 -74
  90. package/dist/cjs/state/context/types.js +0 -5
  91. package/dist/cjs/state/reducers/index.js +0 -89
  92. package/dist/cjs/state/store/types.js +0 -5
  93. package/dist/es2019/client/api.js +0 -38
  94. package/dist/es2019/client/errors.js +0 -19
  95. package/dist/es2019/client/types/index.js +0 -1
  96. package/dist/es2019/client/types/requests.js +0 -1
  97. package/dist/es2019/client/types/responses.js +0 -19
  98. package/dist/es2019/client/utils/environments.js +0 -33
  99. package/dist/es2019/providers/editor/index.js +0 -82
  100. package/dist/es2019/providers/editor/transformer.js +0 -53
  101. package/dist/es2019/providers/editor/types.js +0 -1
  102. package/dist/es2019/state/actions/helpers.js +0 -8
  103. package/dist/es2019/state/context/index.js +0 -14
  104. package/dist/es2019/state/context/provider.js +0 -51
  105. package/dist/es2019/state/context/types.js +0 -1
  106. package/dist/es2019/state/reducers/index.js +0 -74
  107. package/dist/es2019/state/store/types.js +0 -1
  108. package/dist/esm/client/api.js +0 -98
  109. package/dist/esm/client/errors.js +0 -40
  110. package/dist/esm/client/types/index.js +0 -1
  111. package/dist/esm/client/types/requests.js +0 -1
  112. package/dist/esm/client/types/responses.js +0 -19
  113. package/dist/esm/client/utils/environments.js +0 -33
  114. package/dist/esm/providers/editor/index.js +0 -257
  115. package/dist/esm/providers/editor/transformer.js +0 -73
  116. package/dist/esm/providers/editor/types.js +0 -1
  117. package/dist/esm/state/actions/helpers.js +0 -9
  118. package/dist/esm/state/context/index.js +0 -14
  119. package/dist/esm/state/context/provider.js +0 -50
  120. package/dist/esm/state/context/types.js +0 -1
  121. package/dist/esm/state/reducers/index.js +0 -69
  122. package/dist/esm/state/store/types.js +0 -1
  123. package/dist/types/client/api.d.ts +0 -5
  124. package/dist/types/client/errors.d.ts +0 -9
  125. package/dist/types/client/types/index.d.ts +0 -13
  126. package/dist/types/client/types/requests.d.ts +0 -9
  127. package/dist/types/client/types/responses.d.ts +0 -19
  128. package/dist/types/client/utils/environments.d.ts +0 -12
  129. package/dist/types/providers/editor/index.d.ts +0 -22
  130. package/dist/types/providers/editor/transformer.d.ts +0 -8
  131. package/dist/types/providers/editor/types.d.ts +0 -19
  132. package/dist/types/state/actions/helpers.d.ts +0 -2
  133. package/dist/types/state/context/index.d.ts +0 -8
  134. package/dist/types/state/context/provider.d.ts +0 -5
  135. package/dist/types/state/context/types.d.ts +0 -39
  136. package/dist/types/state/reducers/index.d.ts +0 -4
  137. package/dist/types/state/store/types.d.ts +0 -18
@@ -1,283 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.editorCardProvider = exports.EditorCardProvider = void 0;
11
-
12
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
-
14
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
-
16
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
17
-
18
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
19
-
20
- require("setimmediate");
21
-
22
- var _dataloader = _interopRequireDefault(require("dataloader"));
23
-
24
- var _transformer = require("./transformer");
25
-
26
- var _environments = require("../../client/utils/environments");
27
-
28
- var api = _interopRequireWildcard(require("../../client/api"));
29
-
30
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
31
-
32
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
33
-
34
- // import setimmediate to temporary fix dataloader 2.0.0 bug
35
- // @see https://github.com/graphql/dataloader/issues/249
36
- var BATCH_WAIT_TIME = 50;
37
-
38
- var EditorCardProvider = /*#__PURE__*/function () {
39
- function EditorCardProvider(envKey) {
40
- var _this = this;
41
-
42
- (0, _classCallCheck2.default)(this, EditorCardProvider);
43
- this.baseUrl = (0, _environments.getBaseUrl)(envKey);
44
- this.resolverUrl = (0, _environments.getResolverUrl)(envKey);
45
- this.transformer = new _transformer.Transformer();
46
- this.requestHeaders = {
47
- Origin: this.baseUrl
48
- };
49
- this.patternLoader = new _dataloader.default(function (keys) {
50
- return _this.batchPatterns(keys);
51
- }, {
52
- batchScheduleFn: function batchScheduleFn(callback) {
53
- return setTimeout(callback, BATCH_WAIT_TIME);
54
- }
55
- });
56
- }
57
-
58
- (0, _createClass2.default)(EditorCardProvider, [{
59
- key: "batchPatterns",
60
- value: function () {
61
- var _batchPatterns = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(keys) {
62
- var patterns;
63
- return _regenerator.default.wrap(function _callee$(_context) {
64
- while (1) {
65
- switch (_context.prev = _context.next) {
66
- case 0:
67
- _context.next = 2;
68
- return this.fetchPatterns();
69
-
70
- case 2:
71
- patterns = _context.sent;
72
- return _context.abrupt("return", keys.map(function () {
73
- return patterns;
74
- }));
75
-
76
- case 4:
77
- case "end":
78
- return _context.stop();
79
- }
80
- }
81
- }, _callee, this);
82
- }));
83
-
84
- function batchPatterns(_x) {
85
- return _batchPatterns.apply(this, arguments);
86
- }
87
-
88
- return batchPatterns;
89
- }()
90
- }, {
91
- key: "check",
92
- value: function () {
93
- var _check = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(resourceUrl) {
94
- var endpoint, response;
95
- return _regenerator.default.wrap(function _callee2$(_context2) {
96
- while (1) {
97
- switch (_context2.prev = _context2.next) {
98
- case 0:
99
- _context2.prev = 0;
100
- endpoint = "".concat(this.resolverUrl, "/check");
101
- _context2.next = 4;
102
- return api.request('post', endpoint, {
103
- resourceUrl: resourceUrl
104
- }, this.requestHeaders);
105
-
106
- case 4:
107
- response = _context2.sent;
108
- return _context2.abrupt("return", response.isSupported);
109
-
110
- case 8:
111
- _context2.prev = 8;
112
- _context2.t0 = _context2["catch"](0);
113
- // eslint-disable-next-line
114
- console.error('failed to fetch /check', _context2.t0);
115
- return _context2.abrupt("return", undefined);
116
-
117
- case 12:
118
- case "end":
119
- return _context2.stop();
120
- }
121
- }
122
- }, _callee2, this, [[0, 8]]);
123
- }));
124
-
125
- function check(_x2) {
126
- return _check.apply(this, arguments);
127
- }
128
-
129
- return check;
130
- }()
131
- }, {
132
- key: "fetchPatterns",
133
- value: function () {
134
- var _fetchPatterns = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
135
- var endpoint, response;
136
- return _regenerator.default.wrap(function _callee3$(_context3) {
137
- while (1) {
138
- switch (_context3.prev = _context3.next) {
139
- case 0:
140
- _context3.prev = 0;
141
- endpoint = "".concat(this.resolverUrl, "/providers");
142
- _context3.next = 4;
143
- return api.request('post', endpoint, undefined, this.requestHeaders);
144
-
145
- case 4:
146
- response = _context3.sent;
147
- return _context3.abrupt("return", response.providers.reduce(function (allSources, provider) {
148
- var providerSources = provider.patterns.map(function (pattern) {
149
- return pattern.source;
150
- });
151
- return allSources.concat(providerSources);
152
- }, []));
153
-
154
- case 8:
155
- _context3.prev = 8;
156
- _context3.t0 = _context3["catch"](0);
157
- // eslint-disable-next-line
158
- console.error('failed to fetch /providers', _context3.t0);
159
- return _context3.abrupt("return", undefined);
160
-
161
- case 12:
162
- case "end":
163
- return _context3.stop();
164
- }
165
- }
166
- }, _callee3, this, [[0, 8]]);
167
- }));
168
-
169
- function fetchPatterns() {
170
- return _fetchPatterns.apply(this, arguments);
171
- }
172
-
173
- return fetchPatterns;
174
- }()
175
- }, {
176
- key: "findPattern",
177
- value: function () {
178
- var _findPattern = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(url) {
179
- return _regenerator.default.wrap(function _callee4$(_context4) {
180
- while (1) {
181
- switch (_context4.prev = _context4.next) {
182
- case 0:
183
- if (this.patterns) {
184
- _context4.next = 4;
185
- break;
186
- }
187
-
188
- _context4.next = 3;
189
- return this.patternLoader.load('providers');
190
-
191
- case 3:
192
- this.patterns = _context4.sent;
193
-
194
- case 4:
195
- return _context4.abrupt("return", this.patterns ? this.patterns.some(function (pattern) {
196
- return url.match(pattern);
197
- }) : false);
198
-
199
- case 5:
200
- case "end":
201
- return _context4.stop();
202
- }
203
- }
204
- }, _callee4, this);
205
- }));
206
-
207
- function findPattern(_x3) {
208
- return _findPattern.apply(this, arguments);
209
- }
210
-
211
- return findPattern;
212
- }()
213
- }, {
214
- key: "resolve",
215
- value: function () {
216
- var _resolve = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(url, appearance) {
217
- var isSupported;
218
- return _regenerator.default.wrap(function _callee5$(_context5) {
219
- while (1) {
220
- switch (_context5.prev = _context5.next) {
221
- case 0:
222
- _context5.prev = 0;
223
- _context5.next = 3;
224
- return this.findPattern(url);
225
-
226
- case 3:
227
- _context5.t0 = _context5.sent;
228
-
229
- if (_context5.t0) {
230
- _context5.next = 8;
231
- break;
232
- }
233
-
234
- _context5.next = 7;
235
- return this.check(url);
236
-
237
- case 7:
238
- _context5.t0 = _context5.sent;
239
-
240
- case 8:
241
- isSupported = _context5.t0;
242
-
243
- if (!isSupported) {
244
- _context5.next = 11;
245
- break;
246
- }
247
-
248
- return _context5.abrupt("return", this.transformer.toAdf(url, appearance));
249
-
250
- case 11:
251
- _context5.next = 16;
252
- break;
253
-
254
- case 13:
255
- _context5.prev = 13;
256
- _context5.t1 = _context5["catch"](0);
257
- // eslint-disable-next-line
258
- console.warn("Error when trying to check Smart Card url \"".concat(url, " - ").concat(_context5.t1.prototype.name, " ").concat(_context5.t1.message), _context5.t1);
259
-
260
- case 16:
261
- return _context5.abrupt("return", Promise.reject(undefined));
262
-
263
- case 17:
264
- case "end":
265
- return _context5.stop();
266
- }
267
- }
268
- }, _callee5, this, [[0, 13]]);
269
- }));
270
-
271
- function resolve(_x4, _x5) {
272
- return _resolve.apply(this, arguments);
273
- }
274
-
275
- return resolve;
276
- }()
277
- }]);
278
- return EditorCardProvider;
279
- }();
280
-
281
- exports.EditorCardProvider = EditorCardProvider;
282
- var editorCardProvider = new EditorCardProvider();
283
- exports.editorCardProvider = editorCardProvider;
@@ -1,84 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.Transformer = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var isJiraRoadMap = function isJiraRoadMap(url) {
15
- return url.match(/^https:\/\/.*?\/jira\/software\/(c\/)?projects\/[^\/]+?\/boards\/.*?\/roadmap\/?/);
16
- };
17
-
18
- var isPolarisView = function isPolarisView(url) {
19
- return url.match(/^https:\/\/.*?\/jira\/polaris\/projects\/[^\/]+?\/ideas\/view\/\d+$|^https:\/\/.*?\/secure\/JiraProductDiscoveryAnonymous\.jspa\?hash=\w+|^https:\/\/.*?\/jira\/polaris\/share\/\w+/);
20
- };
21
-
22
- var isJwmView = function isJwmView(url) {
23
- return url.match(/^https:\/\/.*?\/jira\/core\/projects\/[^\/]+?\/(timeline|calendar|list|board)\/?/);
24
- };
25
-
26
- var Transformer = /*#__PURE__*/function () {
27
- function Transformer() {
28
- (0, _classCallCheck2.default)(this, Transformer);
29
- }
30
-
31
- (0, _createClass2.default)(Transformer, [{
32
- key: "buildInlineAdf",
33
- value: function buildInlineAdf(url) {
34
- return {
35
- type: 'inlineCard',
36
- attrs: {
37
- url: url
38
- }
39
- };
40
- }
41
- }, {
42
- key: "buildBlockAdf",
43
- value: function buildBlockAdf(url) {
44
- return {
45
- type: 'blockCard',
46
- attrs: {
47
- url: url
48
- }
49
- };
50
- }
51
- }, {
52
- key: "buildEmbedAdf",
53
- value: function buildEmbedAdf(url) {
54
- return {
55
- type: 'embedCard',
56
- attrs: {
57
- url: url,
58
- layout: 'wide'
59
- }
60
- };
61
- }
62
- }, {
63
- key: "toAdf",
64
- value: function toAdf(url, appearance) {
65
- if (isJiraRoadMap(url) || isPolarisView(url) || isJwmView(url)) {
66
- return this.buildEmbedAdf(url);
67
- } else {
68
- switch (appearance) {
69
- case 'inline':
70
- return this.buildInlineAdf(url);
71
-
72
- case 'block':
73
- return this.buildBlockAdf(url);
74
-
75
- case 'embed':
76
- return this.buildEmbedAdf(url);
77
- }
78
- }
79
- }
80
- }]);
81
- return Transformer;
82
- }();
83
-
84
- exports.Transformer = Transformer;
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
@@ -1,18 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.cardAction = void 0;
7
-
8
- var cardAction = function cardAction(type, _ref, payload, error) {
9
- var url = _ref.url;
10
- return {
11
- type: type,
12
- url: url,
13
- payload: payload,
14
- error: error
15
- };
16
- };
17
-
18
- exports.cardAction = cardAction;
@@ -1,34 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.SmartCardContext = void 0;
7
- Object.defineProperty(exports, "SmartCardProvider", {
8
- enumerable: true,
9
- get: function get() {
10
- return _provider.SmartCardProvider;
11
- }
12
- });
13
- exports.default = void 0;
14
- exports.useSmartLinkContext = useSmartLinkContext;
15
-
16
- var _react = require("react");
17
-
18
- var _provider = require("./provider");
19
-
20
- var SmartCardContext = /*#__PURE__*/(0, _react.createContext)(undefined);
21
- exports.SmartCardContext = SmartCardContext;
22
-
23
- function useSmartLinkContext() {
24
- var context = (0, _react.useContext)(SmartCardContext);
25
-
26
- if (!context) {
27
- throw Error('useSmartCard() must be wrapped in <SmartCardProvider>');
28
- }
29
-
30
- return context;
31
- }
32
-
33
- var _default = SmartCardContext;
34
- exports.default = _default;
@@ -1,74 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.SmartCardProvider = SmartCardProvider;
11
- exports.default = void 0;
12
-
13
- var _react = _interopRequireWildcard(require("react"));
14
-
15
- var _redux = require("redux");
16
-
17
- var _reducers = require("../reducers");
18
-
19
- var _ = require(".");
20
-
21
- var _client = _interopRequireDefault(require("../../client"));
22
-
23
- var _preview = require("../../extractors/common/preview");
24
-
25
- var _helpers = require("../helpers");
26
-
27
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
28
-
29
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
30
-
31
- function SmartCardProvider(_ref) {
32
- var storeOptions = _ref.storeOptions,
33
- customClient = _ref.client,
34
- customAuthFlow = _ref.authFlow,
35
- children = _ref.children,
36
- renderers = _ref.renderers;
37
- var parentContext = (0, _react.useContext)(_.SmartCardContext);
38
- var providerValue = (0, _react.useMemo)(function () {
39
- var _ref2 = storeOptions || {
40
- initialState: {}
41
- },
42
- initialState = _ref2.initialState;
43
-
44
- var client = customClient || new _client.default();
45
- var store = (0, _redux.createStore)(_reducers.cardReducer, initialState);
46
- var authFlow = customAuthFlow || 'oauth2';
47
-
48
- var getPreview = function getPreview(url, platform) {
49
- var cardState = (0, _helpers.getUrl)(store, url);
50
- return cardState.details ? (0, _preview.extractPreview)(cardState.details.data, platform) : undefined;
51
- };
52
-
53
- return {
54
- renderers: renderers,
55
- store: store,
56
- prefetchStore: {},
57
- connections: {
58
- client: client
59
- },
60
- config: {
61
- authFlow: authFlow
62
- },
63
- extractors: {
64
- getPreview: getPreview
65
- }
66
- };
67
- }, [customClient, customAuthFlow, storeOptions, renderers]);
68
- return /*#__PURE__*/_react.default.createElement(_.SmartCardContext.Provider, {
69
- value: parentContext || providerValue
70
- }, children);
71
- }
72
-
73
- var _default = SmartCardProvider;
74
- exports.default = _default;
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
@@ -1,89 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.cardReducer = void 0;
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- var actions = _interopRequireWildcard(require("../actions/constants"));
15
-
16
- var _helpers = require("../helpers");
17
-
18
- var _cardReducerMap;
19
-
20
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
-
22
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
-
24
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
25
-
26
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
27
-
28
- var cardReducerMap = (_cardReducerMap = {}, (0, _defineProperty2.default)(_cardReducerMap, actions.ACTION_PENDING, function (_state, _ref) {
29
- var type = _ref.type;
30
- return {
31
- status: type
32
- };
33
- }), (0, _defineProperty2.default)(_cardReducerMap, actions.ACTION_RESOLVING, function (state, _ref2) {
34
- var type = _ref2.type;
35
- return _objectSpread(_objectSpread({}, state), {}, {
36
- status: type
37
- });
38
- }), (0, _defineProperty2.default)(_cardReducerMap, actions.ACTION_RESOLVED, function (state, _ref3) {
39
- var type = _ref3.type,
40
- payload = _ref3.payload;
41
- var nextDetails = payload;
42
-
43
- var nextState = _objectSpread({}, state);
44
-
45
- if (nextDetails) {
46
- nextState.status = (0, _helpers.getStatus)(nextDetails);
47
- nextState.details = nextDetails;
48
- } else {
49
- // Keep the pre-existing data in the store. If there
50
- // is no data, the UI should handle this gracefully.
51
- nextState.status = type;
52
- }
53
-
54
- return nextState;
55
- }), (0, _defineProperty2.default)(_cardReducerMap, actions.ACTION_ERROR, function (state, _ref4) {
56
- var type = _ref4.type,
57
- error = _ref4.error;
58
- return _objectSpread(_objectSpread({}, state), {}, {
59
- status: type,
60
- error: error
61
- });
62
- }), (0, _defineProperty2.default)(_cardReducerMap, actions.ACTION_ERROR_FALLBACK, function (state, _ref5) {
63
- var type = _ref5.type,
64
- error = _ref5.error;
65
- return _objectSpread(_objectSpread({}, state), {}, {
66
- status: type,
67
- error: error
68
- });
69
- }), _cardReducerMap);
70
-
71
- var cardReducer = function cardReducer(state, action) {
72
- if (cardReducerMap[action.type]) {
73
- var cardState = state[action.url]; // Card may have reached the same state on account of multiple of the same
74
- // URL being present in an editor session. E.g. page with N links to one resource.
75
-
76
- var hasSameStatus = cardState && cardState.status === action.type;
77
-
78
- if (hasSameStatus) {
79
- return state;
80
- } else {
81
- var nextState = cardReducerMap[action.type](cardState, action);
82
- return _objectSpread(_objectSpread({}, state), {}, (0, _defineProperty2.default)({}, action.url, nextState));
83
- }
84
- }
85
-
86
- return state;
87
- };
88
-
89
- exports.cardReducer = cardReducer;
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
@@ -1,38 +0,0 @@
1
- const ALLOWED_RESPONSE_STATUS_CODES = [200, 401, 404];
2
- export class NetworkError extends Error {
3
- constructor(error) {
4
- super(error);
5
- }
6
-
7
- }
8
- export async function request(method, url, data, headers) {
9
- const requestConfig = {
10
- method,
11
- credentials: 'include',
12
- headers: {
13
- Accept: 'application/json',
14
- 'Cache-Control': 'no-cache',
15
- 'Content-Type': 'application/json',
16
- ...headers
17
- },
18
- ...(data ? {
19
- body: JSON.stringify(data)
20
- } : {})
21
- };
22
-
23
- try {
24
- const response = await fetch(url, requestConfig);
25
-
26
- if (response.ok || ALLOWED_RESPONSE_STATUS_CODES.includes(response.status)) {
27
- return await response.json();
28
- }
29
-
30
- throw response;
31
- } catch (error) {
32
- if (typeof error === 'string' || error instanceof TypeError) {
33
- throw new NetworkError(error);
34
- }
35
-
36
- throw error;
37
- }
38
- }
@@ -1,19 +0,0 @@
1
- export class APIError extends Error {
2
- constructor(kind, hostname, message, type) {
3
- super(`${kind}: ${message}`);
4
- this.kind = kind;
5
- this.hostname = hostname;
6
- this.message = message;
7
- this.type = type;
8
- this.name = 'APIError'; // The error type received from the server.
9
-
10
- this.type = type; // The kind mapped to on the client.
11
-
12
- this.kind = kind; // The message received from the server.
13
-
14
- this.message = message; // The hostname of the URL which failed - do NOT log this (contains PII/UGC).
15
-
16
- this.hostname = hostname;
17
- }
18
-
19
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};