@atlaskit/node-data-provider 6.3.0 → 6.3.1
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,13 @@
|
|
|
1
1
|
# @atlaskit/node-data-provider
|
|
2
2
|
|
|
3
|
+
## 6.3.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`57fe2d0a5cd09`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/57fe2d0a5cd09) -
|
|
8
|
+
[https://product-fabric.atlassian.net/browse/ED-29399](ED-29399) - add early exit from
|
|
9
|
+
`prefetchNodeDataProvidersData` if timeout is 0
|
|
10
|
+
|
|
3
11
|
## 6.3.0
|
|
4
12
|
|
|
5
13
|
### Minor Changes
|
|
@@ -85,12 +85,26 @@ function _prefetchNodeDataProvidersData() {
|
|
|
85
85
|
while (1) switch (_context2.prev = _context2.next) {
|
|
86
86
|
case 0:
|
|
87
87
|
providers = _ref.providers, doc = _ref.doc, timeout = _ref.timeout, _ref$maxNodesToVisit = _ref.maxNodesToVisit, maxNodesToVisit = _ref$maxNodesToVisit === void 0 ? Infinity : _ref$maxNodesToVisit;
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
88
|
+
if (!(timeout <= 0)) {
|
|
89
|
+
_context2.next = 3;
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
92
|
+
return _context2.abrupt("return", providers.reduce(function (acc, _ref2) {
|
|
93
|
+
var provider = _ref2.provider;
|
|
94
|
+
acc[provider.name] = {
|
|
95
|
+
data: {},
|
|
96
|
+
success: false,
|
|
97
|
+
duration: 0
|
|
98
|
+
};
|
|
99
|
+
return acc;
|
|
100
|
+
}, {}));
|
|
101
|
+
case 3:
|
|
102
|
+
providersWithDefaults = providers.map(function (_ref3) {
|
|
103
|
+
var provider = _ref3.provider,
|
|
104
|
+
_ref3$maxNodesToPrefe = _ref3.maxNodesToPrefetch,
|
|
105
|
+
maxNodesToPrefetch = _ref3$maxNodesToPrefe === void 0 ? Infinity : _ref3$maxNodesToPrefe,
|
|
106
|
+
_ref3$timeout = _ref3.timeout,
|
|
107
|
+
providerTimeout = _ref3$timeout === void 0 ? Infinity : _ref3$timeout;
|
|
94
108
|
return {
|
|
95
109
|
provider: provider,
|
|
96
110
|
maxNodesToPrefetch: maxNodesToPrefetch,
|
|
@@ -98,15 +112,15 @@ function _prefetchNodeDataProvidersData() {
|
|
|
98
112
|
timeout: Math.min(providerTimeout, timeout)
|
|
99
113
|
};
|
|
100
114
|
});
|
|
101
|
-
providerTimeouts = providersWithDefaults.reduce(function (acc,
|
|
102
|
-
var provider =
|
|
103
|
-
timeout =
|
|
115
|
+
providerTimeouts = providersWithDefaults.reduce(function (acc, _ref4) {
|
|
116
|
+
var provider = _ref4.provider,
|
|
117
|
+
timeout = _ref4.timeout;
|
|
104
118
|
acc[provider.name] = timeout;
|
|
105
119
|
return acc;
|
|
106
120
|
}, {});
|
|
107
|
-
nodesWithProviders = (0, _findNodesToPrefetch.findNodesToPrefetch)(doc, providersWithDefaults, maxNodesToVisit).map(function (
|
|
108
|
-
var provider =
|
|
109
|
-
nodes =
|
|
121
|
+
nodesWithProviders = (0, _findNodesToPrefetch.findNodesToPrefetch)(doc, providersWithDefaults, maxNodesToVisit).map(function (_ref5) {
|
|
122
|
+
var provider = _ref5.provider,
|
|
123
|
+
nodes = _ref5.nodes;
|
|
110
124
|
return {
|
|
111
125
|
provider: provider,
|
|
112
126
|
nodes: nodes,
|
|
@@ -114,7 +128,7 @@ function _prefetchNodeDataProvidersData() {
|
|
|
114
128
|
};
|
|
115
129
|
});
|
|
116
130
|
promises = nodesWithProviders.map( /*#__PURE__*/function () {
|
|
117
|
-
var
|
|
131
|
+
var _ref7 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_ref6) {
|
|
118
132
|
var nodes, provider, timeout, start, getDurationFromStart, timeoutPromise, data;
|
|
119
133
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
120
134
|
while (1) switch (_context.prev = _context.next) {
|
|
@@ -122,17 +136,29 @@ function _prefetchNodeDataProvidersData() {
|
|
|
122
136
|
getDurationFromStart = function _getDurationFromStart() {
|
|
123
137
|
return Math.min(performance.now() - start, timeout);
|
|
124
138
|
};
|
|
125
|
-
nodes =
|
|
139
|
+
nodes = _ref6.nodes, provider = _ref6.provider, timeout = _ref6.timeout;
|
|
140
|
+
if (!(timeout <= 0)) {
|
|
141
|
+
_context.next = 4;
|
|
142
|
+
break;
|
|
143
|
+
}
|
|
144
|
+
return _context.abrupt("return", {
|
|
145
|
+
provider: provider,
|
|
146
|
+
success: false,
|
|
147
|
+
duration: 0,
|
|
148
|
+
nodes: nodes,
|
|
149
|
+
data: []
|
|
150
|
+
});
|
|
151
|
+
case 4:
|
|
126
152
|
start = performance.now();
|
|
127
|
-
_context.prev =
|
|
153
|
+
_context.prev = 5;
|
|
128
154
|
timeoutPromise = new Promise(function (_, reject) {
|
|
129
155
|
setTimeout(function () {
|
|
130
156
|
reject();
|
|
131
157
|
}, timeout);
|
|
132
158
|
});
|
|
133
|
-
_context.next =
|
|
159
|
+
_context.next = 9;
|
|
134
160
|
return Promise.race([provider.fetchNodesData(nodes), timeoutPromise]);
|
|
135
|
-
case
|
|
161
|
+
case 9:
|
|
136
162
|
data = _context.sent;
|
|
137
163
|
return _context.abrupt("return", {
|
|
138
164
|
provider: provider,
|
|
@@ -141,9 +167,9 @@ function _prefetchNodeDataProvidersData() {
|
|
|
141
167
|
nodes: nodes,
|
|
142
168
|
data: data
|
|
143
169
|
});
|
|
144
|
-
case
|
|
145
|
-
_context.prev =
|
|
146
|
-
_context.t0 = _context["catch"](
|
|
170
|
+
case 13:
|
|
171
|
+
_context.prev = 13;
|
|
172
|
+
_context.t0 = _context["catch"](5);
|
|
147
173
|
return _context.abrupt("return", {
|
|
148
174
|
provider: provider,
|
|
149
175
|
success: false,
|
|
@@ -151,26 +177,26 @@ function _prefetchNodeDataProvidersData() {
|
|
|
151
177
|
nodes: nodes,
|
|
152
178
|
data: []
|
|
153
179
|
});
|
|
154
|
-
case
|
|
180
|
+
case 16:
|
|
155
181
|
case "end":
|
|
156
182
|
return _context.stop();
|
|
157
183
|
}
|
|
158
|
-
}, _callee, null, [[
|
|
184
|
+
}, _callee, null, [[5, 13]]);
|
|
159
185
|
}));
|
|
160
186
|
return function (_x2) {
|
|
161
|
-
return
|
|
187
|
+
return _ref7.apply(this, arguments);
|
|
162
188
|
};
|
|
163
189
|
}());
|
|
164
|
-
_context2.next =
|
|
190
|
+
_context2.next = 9;
|
|
165
191
|
return Promise.all(promises);
|
|
166
|
-
case
|
|
192
|
+
case 9:
|
|
167
193
|
results = _context2.sent;
|
|
168
|
-
return _context2.abrupt("return", results.reduce(function (acc,
|
|
169
|
-
var provider =
|
|
170
|
-
success =
|
|
171
|
-
duration =
|
|
172
|
-
nodes =
|
|
173
|
-
data =
|
|
194
|
+
return _context2.abrupt("return", results.reduce(function (acc, _ref8) {
|
|
195
|
+
var provider = _ref8.provider,
|
|
196
|
+
success = _ref8.success,
|
|
197
|
+
duration = _ref8.duration,
|
|
198
|
+
nodes = _ref8.nodes,
|
|
199
|
+
data = _ref8.data;
|
|
174
200
|
var ssrData = data.reduce(function (providerSsrData, nodeData, nodeIndex) {
|
|
175
201
|
var node = nodes[nodeIndex];
|
|
176
202
|
var nodeDataKey = provider.nodeDataKey(node);
|
|
@@ -184,7 +210,7 @@ function _prefetchNodeDataProvidersData() {
|
|
|
184
210
|
};
|
|
185
211
|
return acc;
|
|
186
212
|
}, {}));
|
|
187
|
-
case
|
|
213
|
+
case 11:
|
|
188
214
|
case "end":
|
|
189
215
|
return _context2.stop();
|
|
190
216
|
}
|
|
@@ -75,6 +75,19 @@ export async function prefetchNodeDataProvidersData({
|
|
|
75
75
|
timeout,
|
|
76
76
|
maxNodesToVisit = Infinity
|
|
77
77
|
}) {
|
|
78
|
+
if (timeout <= 0) {
|
|
79
|
+
// If the global timeout is 0 or negative, skip fetching entirely.
|
|
80
|
+
return providers.reduce((acc, {
|
|
81
|
+
provider
|
|
82
|
+
}) => {
|
|
83
|
+
acc[provider.name] = {
|
|
84
|
+
data: {},
|
|
85
|
+
success: false,
|
|
86
|
+
duration: 0
|
|
87
|
+
};
|
|
88
|
+
return acc;
|
|
89
|
+
}, {});
|
|
90
|
+
}
|
|
78
91
|
const providersWithDefaults = providers.map(({
|
|
79
92
|
provider,
|
|
80
93
|
maxNodesToPrefetch = Infinity,
|
|
@@ -105,6 +118,15 @@ export async function prefetchNodeDataProvidersData({
|
|
|
105
118
|
provider,
|
|
106
119
|
timeout
|
|
107
120
|
}) => {
|
|
121
|
+
if (timeout <= 0) {
|
|
122
|
+
return {
|
|
123
|
+
provider,
|
|
124
|
+
success: false,
|
|
125
|
+
duration: 0,
|
|
126
|
+
nodes,
|
|
127
|
+
data: []
|
|
128
|
+
};
|
|
129
|
+
}
|
|
108
130
|
const start = performance.now();
|
|
109
131
|
function getDurationFromStart() {
|
|
110
132
|
return Math.min(performance.now() - start, timeout);
|
|
@@ -81,12 +81,26 @@ function _prefetchNodeDataProvidersData() {
|
|
|
81
81
|
while (1) switch (_context2.prev = _context2.next) {
|
|
82
82
|
case 0:
|
|
83
83
|
providers = _ref.providers, doc = _ref.doc, timeout = _ref.timeout, _ref$maxNodesToVisit = _ref.maxNodesToVisit, maxNodesToVisit = _ref$maxNodesToVisit === void 0 ? Infinity : _ref$maxNodesToVisit;
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
84
|
+
if (!(timeout <= 0)) {
|
|
85
|
+
_context2.next = 3;
|
|
86
|
+
break;
|
|
87
|
+
}
|
|
88
|
+
return _context2.abrupt("return", providers.reduce(function (acc, _ref2) {
|
|
89
|
+
var provider = _ref2.provider;
|
|
90
|
+
acc[provider.name] = {
|
|
91
|
+
data: {},
|
|
92
|
+
success: false,
|
|
93
|
+
duration: 0
|
|
94
|
+
};
|
|
95
|
+
return acc;
|
|
96
|
+
}, {}));
|
|
97
|
+
case 3:
|
|
98
|
+
providersWithDefaults = providers.map(function (_ref3) {
|
|
99
|
+
var provider = _ref3.provider,
|
|
100
|
+
_ref3$maxNodesToPrefe = _ref3.maxNodesToPrefetch,
|
|
101
|
+
maxNodesToPrefetch = _ref3$maxNodesToPrefe === void 0 ? Infinity : _ref3$maxNodesToPrefe,
|
|
102
|
+
_ref3$timeout = _ref3.timeout,
|
|
103
|
+
providerTimeout = _ref3$timeout === void 0 ? Infinity : _ref3$timeout;
|
|
90
104
|
return {
|
|
91
105
|
provider: provider,
|
|
92
106
|
maxNodesToPrefetch: maxNodesToPrefetch,
|
|
@@ -94,15 +108,15 @@ function _prefetchNodeDataProvidersData() {
|
|
|
94
108
|
timeout: Math.min(providerTimeout, timeout)
|
|
95
109
|
};
|
|
96
110
|
});
|
|
97
|
-
providerTimeouts = providersWithDefaults.reduce(function (acc,
|
|
98
|
-
var provider =
|
|
99
|
-
timeout =
|
|
111
|
+
providerTimeouts = providersWithDefaults.reduce(function (acc, _ref4) {
|
|
112
|
+
var provider = _ref4.provider,
|
|
113
|
+
timeout = _ref4.timeout;
|
|
100
114
|
acc[provider.name] = timeout;
|
|
101
115
|
return acc;
|
|
102
116
|
}, {});
|
|
103
|
-
nodesWithProviders = findNodesToPrefetch(doc, providersWithDefaults, maxNodesToVisit).map(function (
|
|
104
|
-
var provider =
|
|
105
|
-
nodes =
|
|
117
|
+
nodesWithProviders = findNodesToPrefetch(doc, providersWithDefaults, maxNodesToVisit).map(function (_ref5) {
|
|
118
|
+
var provider = _ref5.provider,
|
|
119
|
+
nodes = _ref5.nodes;
|
|
106
120
|
return {
|
|
107
121
|
provider: provider,
|
|
108
122
|
nodes: nodes,
|
|
@@ -110,7 +124,7 @@ function _prefetchNodeDataProvidersData() {
|
|
|
110
124
|
};
|
|
111
125
|
});
|
|
112
126
|
promises = nodesWithProviders.map( /*#__PURE__*/function () {
|
|
113
|
-
var
|
|
127
|
+
var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref6) {
|
|
114
128
|
var nodes, provider, timeout, start, getDurationFromStart, timeoutPromise, data;
|
|
115
129
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
116
130
|
while (1) switch (_context.prev = _context.next) {
|
|
@@ -118,17 +132,29 @@ function _prefetchNodeDataProvidersData() {
|
|
|
118
132
|
getDurationFromStart = function _getDurationFromStart() {
|
|
119
133
|
return Math.min(performance.now() - start, timeout);
|
|
120
134
|
};
|
|
121
|
-
nodes =
|
|
135
|
+
nodes = _ref6.nodes, provider = _ref6.provider, timeout = _ref6.timeout;
|
|
136
|
+
if (!(timeout <= 0)) {
|
|
137
|
+
_context.next = 4;
|
|
138
|
+
break;
|
|
139
|
+
}
|
|
140
|
+
return _context.abrupt("return", {
|
|
141
|
+
provider: provider,
|
|
142
|
+
success: false,
|
|
143
|
+
duration: 0,
|
|
144
|
+
nodes: nodes,
|
|
145
|
+
data: []
|
|
146
|
+
});
|
|
147
|
+
case 4:
|
|
122
148
|
start = performance.now();
|
|
123
|
-
_context.prev =
|
|
149
|
+
_context.prev = 5;
|
|
124
150
|
timeoutPromise = new Promise(function (_, reject) {
|
|
125
151
|
setTimeout(function () {
|
|
126
152
|
reject();
|
|
127
153
|
}, timeout);
|
|
128
154
|
});
|
|
129
|
-
_context.next =
|
|
155
|
+
_context.next = 9;
|
|
130
156
|
return Promise.race([provider.fetchNodesData(nodes), timeoutPromise]);
|
|
131
|
-
case
|
|
157
|
+
case 9:
|
|
132
158
|
data = _context.sent;
|
|
133
159
|
return _context.abrupt("return", {
|
|
134
160
|
provider: provider,
|
|
@@ -137,9 +163,9 @@ function _prefetchNodeDataProvidersData() {
|
|
|
137
163
|
nodes: nodes,
|
|
138
164
|
data: data
|
|
139
165
|
});
|
|
140
|
-
case
|
|
141
|
-
_context.prev =
|
|
142
|
-
_context.t0 = _context["catch"](
|
|
166
|
+
case 13:
|
|
167
|
+
_context.prev = 13;
|
|
168
|
+
_context.t0 = _context["catch"](5);
|
|
143
169
|
return _context.abrupt("return", {
|
|
144
170
|
provider: provider,
|
|
145
171
|
success: false,
|
|
@@ -147,26 +173,26 @@ function _prefetchNodeDataProvidersData() {
|
|
|
147
173
|
nodes: nodes,
|
|
148
174
|
data: []
|
|
149
175
|
});
|
|
150
|
-
case
|
|
176
|
+
case 16:
|
|
151
177
|
case "end":
|
|
152
178
|
return _context.stop();
|
|
153
179
|
}
|
|
154
|
-
}, _callee, null, [[
|
|
180
|
+
}, _callee, null, [[5, 13]]);
|
|
155
181
|
}));
|
|
156
182
|
return function (_x2) {
|
|
157
|
-
return
|
|
183
|
+
return _ref7.apply(this, arguments);
|
|
158
184
|
};
|
|
159
185
|
}());
|
|
160
|
-
_context2.next =
|
|
186
|
+
_context2.next = 9;
|
|
161
187
|
return Promise.all(promises);
|
|
162
|
-
case
|
|
188
|
+
case 9:
|
|
163
189
|
results = _context2.sent;
|
|
164
|
-
return _context2.abrupt("return", results.reduce(function (acc,
|
|
165
|
-
var provider =
|
|
166
|
-
success =
|
|
167
|
-
duration =
|
|
168
|
-
nodes =
|
|
169
|
-
data =
|
|
190
|
+
return _context2.abrupt("return", results.reduce(function (acc, _ref8) {
|
|
191
|
+
var provider = _ref8.provider,
|
|
192
|
+
success = _ref8.success,
|
|
193
|
+
duration = _ref8.duration,
|
|
194
|
+
nodes = _ref8.nodes,
|
|
195
|
+
data = _ref8.data;
|
|
170
196
|
var ssrData = data.reduce(function (providerSsrData, nodeData, nodeIndex) {
|
|
171
197
|
var node = nodes[nodeIndex];
|
|
172
198
|
var nodeDataKey = provider.nodeDataKey(node);
|
|
@@ -180,7 +206,7 @@ function _prefetchNodeDataProvidersData() {
|
|
|
180
206
|
};
|
|
181
207
|
return acc;
|
|
182
208
|
}, {}));
|
|
183
|
-
case
|
|
209
|
+
case 11:
|
|
184
210
|
case "end":
|
|
185
211
|
return _context2.stop();
|
|
186
212
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/node-data-provider",
|
|
3
|
-
"version": "6.3.
|
|
3
|
+
"version": "6.3.1",
|
|
4
4
|
"description": "Node data provider for @atlaskit/editor-core plugins and @atlaskit/renderer",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"@babel/runtime": "^7.0.0"
|
|
27
27
|
},
|
|
28
28
|
"peerDependencies": {
|
|
29
|
-
"@atlaskit/editor-common": "^109.
|
|
29
|
+
"@atlaskit/editor-common": "^109.11.0"
|
|
30
30
|
},
|
|
31
31
|
"techstack": {
|
|
32
32
|
"@atlassian/frontend": {
|