@workday/canvas-kit-popup-stack 8.0.0 → 8.0.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PopupStack.d.ts","sourceRoot":"","sources":["../../../lib/PopupStack.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,OAAO,EAAE,WAAW,CAAC;IACrB;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AASD;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAO9D;
|
|
1
|
+
{"version":3,"file":"PopupStack.d.ts","sourceRoot":"","sources":["../../../lib/PopupStack.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,OAAO,EAAE,WAAW,CAAC;IACrB;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AASD;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAO9D;AA2CD,UAAU,KAAK;IACb,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,WAAW,CAAC;IAC9B,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,OAAO,QAAQ,CAAC;KAC3B,CAAC;IACF,QAAQ,EAAE,OAAO,CAAC,OAAO,UAAU,CAAC,CAAC;CACtC;AAwFD,eAAO,MAAM,UAAU;IACrB;;;;;OAKG;uBACgB,WAAW;IAS9B;;;;;OAKG;cACO,cAAc,GAAG,IAAI;IAY/B;;;;;;OAMG;oBACa,WAAW,GAAG,IAAI;IAelC;;;;OAIG;uBACgB,WAAW,GAAG,OAAO;IAaxC;;;;OAIG;oDACiC,WAAW,EAAE;IAQjD;;;;;;;;;;;OAWG;wBACiB,WAAW,GAAG,IAAI;IA6BtC;;;;;;;;;;OAUG;sBACe,WAAW,eAAe,WAAW,GAAG,OAAO;IA2BjE;;;;;;OAMG;gCACyB,WAAW,GAAG,IAAI;IAoB9C;;;;OAIG;+BACwB,WAAW,GAAG,IAAI;IAY7C;;;;;;;;;;;;;;OAcG;mCAC4B,cAAc,GAAG,IAAI;CAqBrD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,UAAU,SAEzB;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,YAAa,QAAQ,iBAAiB,CAAC,SAEhE,CAAC"}
|
|
@@ -32,16 +32,6 @@ function getValue(index, length) {
|
|
|
32
32
|
return Math.max(min, max - (length - index) + 1);
|
|
33
33
|
}
|
|
34
34
|
exports.getValue = getValue;
|
|
35
|
-
// IE11 doesn't support Array.prototype.find, so we'll polyfill here
|
|
36
|
-
function find(items, predicate) {
|
|
37
|
-
var length = items.length;
|
|
38
|
-
for (var i = 0; i < length; i++) {
|
|
39
|
-
if (predicate(items[i], i, items)) {
|
|
40
|
-
return items[i];
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
35
|
/**
|
|
46
36
|
* Sets the z-index value of all elements in the stack according to the `getValue` function. This
|
|
47
37
|
* will be run any time the stack changes.
|
|
@@ -59,7 +49,7 @@ function setZIndexOfElements(elements) {
|
|
|
59
49
|
function getOwnerPopup(element, items) {
|
|
60
50
|
var parentEl = element;
|
|
61
51
|
do {
|
|
62
|
-
var owner = find(
|
|
52
|
+
var owner = items.find(function (el) { return el.element === parentEl; });
|
|
63
53
|
if (owner) {
|
|
64
54
|
return owner.element;
|
|
65
55
|
}
|
|
@@ -201,7 +191,7 @@ exports.PopupStack = {
|
|
|
201
191
|
remove: function (element) {
|
|
202
192
|
var _a, _b;
|
|
203
193
|
// Find the stack the popup belongs to.
|
|
204
|
-
var stack = find(
|
|
194
|
+
var stack = stacks.find(function (stack) { return !!exports.PopupStack.getElements(stack).find(function (el) { return el === element; }); });
|
|
205
195
|
if (stack) {
|
|
206
196
|
if ((_a = stack._adapter) === null || _a === void 0 ? void 0 : _a.remove) {
|
|
207
197
|
stack._adapter.remove(element);
|
|
@@ -261,7 +251,7 @@ exports.PopupStack = {
|
|
|
261
251
|
stack._adapter.bringToTop(element);
|
|
262
252
|
return;
|
|
263
253
|
}
|
|
264
|
-
var item =
|
|
254
|
+
var item = stack.items.find(function (i) { return i.element === element; });
|
|
265
255
|
if (item) {
|
|
266
256
|
stack.items = __spreadArrays(stack.items.filter(function (i) { return i !== item; }), [item]);
|
|
267
257
|
// Also bring children to top. There are a few cases where stacking might break otherwise:
|
|
@@ -298,7 +288,7 @@ exports.PopupStack = {
|
|
|
298
288
|
if ((_a = stack._adapter) === null || _a === void 0 ? void 0 : _a.contains) {
|
|
299
289
|
return stack._adapter.contains(element, eventTarget);
|
|
300
290
|
}
|
|
301
|
-
var item =
|
|
291
|
+
var item = stack.items.find(function (i) { return i.element === element; });
|
|
302
292
|
var containsOwnerOfAnotherPopupTargeted = stack.items.some(function (currentItem) {
|
|
303
293
|
var _a;
|
|
304
294
|
return ((item === null || item === void 0 ? void 0 : item.element.contains(currentItem.owner || null)) &&
|
|
@@ -373,13 +363,13 @@ exports.PopupStack = {
|
|
|
373
363
|
if ((_a = stack._adapter) === null || _a === void 0 ? void 0 : _a.transferToCurrentContext) {
|
|
374
364
|
return stack._adapter.transferToCurrentContext(item);
|
|
375
365
|
}
|
|
376
|
-
if (
|
|
366
|
+
if (stack.items.find(function (i) { return i.element === item.element; })) {
|
|
377
367
|
// The element is already in the stack, don't do anything
|
|
378
368
|
return;
|
|
379
369
|
}
|
|
380
370
|
// Try to find the element in existing stacks. If it exists, we need to first remove from that
|
|
381
371
|
// stack context
|
|
382
|
-
var oldStack = find(
|
|
372
|
+
var oldStack = stacks.find(function (stack) { return !!stack.items.find(function (i) { return i.element === item.element; }); });
|
|
383
373
|
if (oldStack) {
|
|
384
374
|
exports.PopupStack.remove(item.element);
|
|
385
375
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PopupStack.d.ts","sourceRoot":"","sources":["../../../lib/PopupStack.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,OAAO,EAAE,WAAW,CAAC;IACrB;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AASD;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAO9D;
|
|
1
|
+
{"version":3,"file":"PopupStack.d.ts","sourceRoot":"","sources":["../../../lib/PopupStack.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,OAAO,EAAE,WAAW,CAAC;IACrB;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AASD;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAO9D;AA2CD,UAAU,KAAK;IACb,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,WAAW,CAAC;IAC9B,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,OAAO,QAAQ,CAAC;KAC3B,CAAC;IACF,QAAQ,EAAE,OAAO,CAAC,OAAO,UAAU,CAAC,CAAC;CACtC;AAwFD,eAAO,MAAM,UAAU;IACrB;;;;;OAKG;uBACgB,WAAW;IAS9B;;;;;OAKG;cACO,cAAc,GAAG,IAAI;IAY/B;;;;;;OAMG;oBACa,WAAW,GAAG,IAAI;IAelC;;;;OAIG;uBACgB,WAAW,GAAG,OAAO;IAaxC;;;;OAIG;oDACiC,WAAW,EAAE;IAQjD;;;;;;;;;;;OAWG;wBACiB,WAAW,GAAG,IAAI;IA6BtC;;;;;;;;;;OAUG;sBACe,WAAW,eAAe,WAAW,GAAG,OAAO;IA2BjE;;;;;;OAMG;gCACyB,WAAW,GAAG,IAAI;IAoB9C;;;;OAIG;+BACwB,WAAW,GAAG,IAAI;IAY7C;;;;;;;;;;;;;;OAcG;mCAC4B,cAAc,GAAG,IAAI;CAqBrD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,UAAU,SAEzB;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,YAAa,QAAQ,iBAAiB,CAAC,SAEhE,CAAC"}
|
|
@@ -25,16 +25,6 @@ export function getValue(index, length) {
|
|
|
25
25
|
}
|
|
26
26
|
return Math.max(min, max - (length - index) + 1);
|
|
27
27
|
}
|
|
28
|
-
// IE11 doesn't support Array.prototype.find, so we'll polyfill here
|
|
29
|
-
function find(items, predicate) {
|
|
30
|
-
var length = items.length;
|
|
31
|
-
for (var i = 0; i < length; i++) {
|
|
32
|
-
if (predicate(items[i], i, items)) {
|
|
33
|
-
return items[i];
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
28
|
/**
|
|
39
29
|
* Sets the z-index value of all elements in the stack according to the `getValue` function. This
|
|
40
30
|
* will be run any time the stack changes.
|
|
@@ -52,7 +42,7 @@ function setZIndexOfElements(elements) {
|
|
|
52
42
|
function getOwnerPopup(element, items) {
|
|
53
43
|
var parentEl = element;
|
|
54
44
|
do {
|
|
55
|
-
var owner = find(
|
|
45
|
+
var owner = items.find(function (el) { return el.element === parentEl; });
|
|
56
46
|
if (owner) {
|
|
57
47
|
return owner.element;
|
|
58
48
|
}
|
|
@@ -194,7 +184,7 @@ export var PopupStack = {
|
|
|
194
184
|
remove: function (element) {
|
|
195
185
|
var _a, _b;
|
|
196
186
|
// Find the stack the popup belongs to.
|
|
197
|
-
var stack = find(
|
|
187
|
+
var stack = stacks.find(function (stack) { return !!PopupStack.getElements(stack).find(function (el) { return el === element; }); });
|
|
198
188
|
if (stack) {
|
|
199
189
|
if ((_a = stack._adapter) === null || _a === void 0 ? void 0 : _a.remove) {
|
|
200
190
|
stack._adapter.remove(element);
|
|
@@ -254,7 +244,7 @@ export var PopupStack = {
|
|
|
254
244
|
stack._adapter.bringToTop(element);
|
|
255
245
|
return;
|
|
256
246
|
}
|
|
257
|
-
var item =
|
|
247
|
+
var item = stack.items.find(function (i) { return i.element === element; });
|
|
258
248
|
if (item) {
|
|
259
249
|
stack.items = __spreadArrays(stack.items.filter(function (i) { return i !== item; }), [item]);
|
|
260
250
|
// Also bring children to top. There are a few cases where stacking might break otherwise:
|
|
@@ -291,7 +281,7 @@ export var PopupStack = {
|
|
|
291
281
|
if ((_a = stack._adapter) === null || _a === void 0 ? void 0 : _a.contains) {
|
|
292
282
|
return stack._adapter.contains(element, eventTarget);
|
|
293
283
|
}
|
|
294
|
-
var item =
|
|
284
|
+
var item = stack.items.find(function (i) { return i.element === element; });
|
|
295
285
|
var containsOwnerOfAnotherPopupTargeted = stack.items.some(function (currentItem) {
|
|
296
286
|
var _a;
|
|
297
287
|
return ((item === null || item === void 0 ? void 0 : item.element.contains(currentItem.owner || null)) &&
|
|
@@ -366,13 +356,13 @@ export var PopupStack = {
|
|
|
366
356
|
if ((_a = stack._adapter) === null || _a === void 0 ? void 0 : _a.transferToCurrentContext) {
|
|
367
357
|
return stack._adapter.transferToCurrentContext(item);
|
|
368
358
|
}
|
|
369
|
-
if (
|
|
359
|
+
if (stack.items.find(function (i) { return i.element === item.element; })) {
|
|
370
360
|
// The element is already in the stack, don't do anything
|
|
371
361
|
return;
|
|
372
362
|
}
|
|
373
363
|
// Try to find the element in existing stacks. If it exists, we need to first remove from that
|
|
374
364
|
// stack context
|
|
375
|
-
var oldStack = find(
|
|
365
|
+
var oldStack = stacks.find(function (stack) { return !!stack.items.find(function (i) { return i.element === item.element; }); });
|
|
376
366
|
if (oldStack) {
|
|
377
367
|
PopupStack.remove(item.element);
|
|
378
368
|
}
|
package/lib/PopupStack.ts
CHANGED
|
@@ -50,20 +50,6 @@ export function getValue(index: number, length: number): number {
|
|
|
50
50
|
return Math.max(min, max - (length - index) + 1);
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
// IE11 doesn't support Array.prototype.find, so we'll polyfill here
|
|
54
|
-
function find<T>(
|
|
55
|
-
items: T[],
|
|
56
|
-
predicate: (value: T, index: number, obj: T[]) => boolean
|
|
57
|
-
): T | undefined {
|
|
58
|
-
const length = items.length;
|
|
59
|
-
for (let i = 0; i < length; i++) {
|
|
60
|
-
if (predicate(items[i], i, items)) {
|
|
61
|
-
return items[i];
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
53
|
/**
|
|
68
54
|
* Sets the z-index value of all elements in the stack according to the `getValue` function. This
|
|
69
55
|
* will be run any time the stack changes.
|
|
@@ -82,7 +68,7 @@ function setZIndexOfElements(elements: HTMLElement[]): void {
|
|
|
82
68
|
function getOwnerPopup(element: HTMLElement, items: PopupStackItem[]): HTMLElement | undefined {
|
|
83
69
|
let parentEl: HTMLElement | null = element;
|
|
84
70
|
do {
|
|
85
|
-
const owner = find(
|
|
71
|
+
const owner = items.find(el => el.element === parentEl);
|
|
86
72
|
if (owner) {
|
|
87
73
|
return owner.element;
|
|
88
74
|
}
|
|
@@ -245,10 +231,7 @@ export const PopupStack = {
|
|
|
245
231
|
*/
|
|
246
232
|
remove(element: HTMLElement): void {
|
|
247
233
|
// Find the stack the popup belongs to.
|
|
248
|
-
const stack = find(
|
|
249
|
-
stacks,
|
|
250
|
-
stack => !!find(PopupStack.getElements(stack), el => el === element)
|
|
251
|
-
);
|
|
234
|
+
const stack = stacks.find(stack => !!PopupStack.getElements(stack).find(el => el === element));
|
|
252
235
|
if (stack) {
|
|
253
236
|
if (stack._adapter?.remove) {
|
|
254
237
|
stack._adapter.remove(element);
|
|
@@ -310,7 +293,7 @@ export const PopupStack = {
|
|
|
310
293
|
stack._adapter.bringToTop(element);
|
|
311
294
|
return;
|
|
312
295
|
}
|
|
313
|
-
const item =
|
|
296
|
+
const item = stack.items.find(i => i.element === element);
|
|
314
297
|
|
|
315
298
|
if (item) {
|
|
316
299
|
stack.items = [...stack.items.filter(i => i !== item), item];
|
|
@@ -349,7 +332,7 @@ export const PopupStack = {
|
|
|
349
332
|
if (stack._adapter?.contains) {
|
|
350
333
|
return stack._adapter.contains(element, eventTarget);
|
|
351
334
|
}
|
|
352
|
-
const item =
|
|
335
|
+
const item = stack.items.find(i => i.element === element);
|
|
353
336
|
|
|
354
337
|
const containsOwnerOfAnotherPopupTargeted = stack.items.some(currentItem => {
|
|
355
338
|
return (
|
|
@@ -437,14 +420,14 @@ export const PopupStack = {
|
|
|
437
420
|
return stack._adapter.transferToCurrentContext(item);
|
|
438
421
|
}
|
|
439
422
|
|
|
440
|
-
if (
|
|
423
|
+
if (stack.items.find(i => i.element === item.element)) {
|
|
441
424
|
// The element is already in the stack, don't do anything
|
|
442
425
|
return;
|
|
443
426
|
}
|
|
444
427
|
|
|
445
428
|
// Try to find the element in existing stacks. If it exists, we need to first remove from that
|
|
446
429
|
// stack context
|
|
447
|
-
const oldStack = find(
|
|
430
|
+
const oldStack = stacks.find(stack => !!stack.items.find(i => i.element === item.element));
|
|
448
431
|
if (oldStack) {
|
|
449
432
|
PopupStack.remove(item.element);
|
|
450
433
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@workday/canvas-kit-popup-stack",
|
|
3
|
-
"version": "8.0.
|
|
3
|
+
"version": "8.0.1",
|
|
4
4
|
"description": "Stack for managing popup UIs to coordinate global concerns like escape key handling and rendering order",
|
|
5
5
|
"author": "Workday, Inc. (https://www.workday.com)",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -37,5 +37,5 @@
|
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"screenfull": "^5.2.0"
|
|
39
39
|
},
|
|
40
|
-
"gitHead": "
|
|
40
|
+
"gitHead": "9a2467e289759e1aab0cbc7f1c37cd4739d0f071"
|
|
41
41
|
}
|