@esri/calcite-components 1.0.0-next.311 → 1.0.0-next.312

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 (84) hide show
  1. package/dist/calcite/assets/calcite-icon/checkSquareF16.json +1 -0
  2. package/dist/calcite/assets/calcite-icon/checkSquareF24.json +1 -0
  3. package/dist/calcite/assets/calcite-icon/checkSquareF32.json +1 -0
  4. package/dist/calcite/assets/calcite-icon/lineSolid4.json +1 -0
  5. package/dist/calcite/assets/calcite-icon/squareF16.json +1 -0
  6. package/dist/calcite/assets/calcite-icon/squareF24.json +1 -0
  7. package/dist/calcite/assets/calcite-icon/squareF32.json +1 -0
  8. package/dist/calcite/assets/calcite-icon/xHexagon16.json +1 -0
  9. package/dist/calcite/assets/calcite-icon/xHexagon24.json +1 -0
  10. package/dist/calcite/assets/calcite-icon/xHexagon32.json +1 -0
  11. package/dist/calcite/assets/calcite-icon/xHexagonF16.json +1 -0
  12. package/dist/calcite/assets/calcite-icon/xHexagonF24.json +1 -0
  13. package/dist/calcite/assets/calcite-icon/xHexagonF32.json +1 -0
  14. package/dist/calcite/assets/calcite-icon/xOctagonF16.json +1 -0
  15. package/dist/calcite/assets/calcite-icon/xOctagonF24.json +1 -0
  16. package/dist/calcite/assets/calcite-icon/xOctagonF32.json +1 -0
  17. package/dist/calcite/calcite.esm.js +1 -1
  18. package/dist/calcite/p-0229a408.js +5 -0
  19. package/dist/calcite/{p-54394dfe.system.entry.js → p-0d807182.system.entry.js} +1 -1
  20. package/dist/calcite/{p-b1351c3e.system.entry.js → p-21290fba.system.entry.js} +1 -1
  21. package/dist/calcite/{p-3a592bf3.system.entry.js → p-34038a94.system.entry.js} +1 -1
  22. package/dist/calcite/{p-d550ee4d.entry.js → p-34e89de8.entry.js} +1 -1
  23. package/dist/calcite/p-35a5c74c.system.js +5 -0
  24. package/dist/calcite/{p-688f06b9.entry.js → p-3b29e94a.entry.js} +1 -1
  25. package/dist/calcite/{p-fc643963.entry.js → p-45b4443f.entry.js} +1 -1
  26. package/dist/calcite/{p-dd464e44.system.entry.js → p-55a5535b.system.entry.js} +1 -1
  27. package/dist/calcite/p-8e252799.system.js +1 -1
  28. package/dist/calcite/{p-502ea583.entry.js → p-9a3bed69.entry.js} +1 -1
  29. package/dist/calcite/{p-109049e6.system.entry.js → p-aaec0d11.system.entry.js} +1 -1
  30. package/dist/calcite/{p-75264173.entry.js → p-bab99544.entry.js} +1 -1
  31. package/dist/calcite/{p-968ea270.entry.js → p-bdb92546.entry.js} +1 -1
  32. package/dist/calcite/{p-ca6025ab.system.entry.js → p-cbbfa133.system.entry.js} +1 -1
  33. package/dist/cjs/calcite-combobox_3.cjs.entry.js +1 -1
  34. package/dist/cjs/calcite-dropdown_3.cjs.entry.js +1 -1
  35. package/dist/cjs/calcite-input-date-picker.cjs.entry.js +1 -1
  36. package/dist/cjs/calcite-popover_2.cjs.entry.js +1 -1
  37. package/dist/cjs/calcite-shell_3.cjs.entry.js +1 -1
  38. package/dist/cjs/calcite-tooltip_2.cjs.entry.js +1 -1
  39. package/dist/cjs/{popper-87bf13e6.js → popper-a7580aca.js} +90 -64
  40. package/dist/collection/components/calcite-icon/assets/calcite-icon/checkSquareF16.json +1 -0
  41. package/dist/collection/components/calcite-icon/assets/calcite-icon/checkSquareF24.json +1 -0
  42. package/dist/collection/components/calcite-icon/assets/calcite-icon/checkSquareF32.json +1 -0
  43. package/dist/collection/components/calcite-icon/assets/calcite-icon/lineSolid4.json +1 -0
  44. package/dist/collection/components/calcite-icon/assets/calcite-icon/squareF16.json +1 -0
  45. package/dist/collection/components/calcite-icon/assets/calcite-icon/squareF24.json +1 -0
  46. package/dist/collection/components/calcite-icon/assets/calcite-icon/squareF32.json +1 -0
  47. package/dist/collection/components/calcite-icon/assets/calcite-icon/xHexagon16.json +1 -0
  48. package/dist/collection/components/calcite-icon/assets/calcite-icon/xHexagon24.json +1 -0
  49. package/dist/collection/components/calcite-icon/assets/calcite-icon/xHexagon32.json +1 -0
  50. package/dist/collection/components/calcite-icon/assets/calcite-icon/xHexagonF16.json +1 -0
  51. package/dist/collection/components/calcite-icon/assets/calcite-icon/xHexagonF24.json +1 -0
  52. package/dist/collection/components/calcite-icon/assets/calcite-icon/xHexagonF32.json +1 -0
  53. package/dist/collection/components/calcite-icon/assets/calcite-icon/xOctagonF16.json +1 -0
  54. package/dist/collection/components/calcite-icon/assets/calcite-icon/xOctagonF24.json +1 -0
  55. package/dist/collection/components/calcite-icon/assets/calcite-icon/xOctagonF32.json +1 -0
  56. package/dist/collection/components/calcite-label/interfaces.js +1 -0
  57. package/dist/collection/components/calcite-shell-panel/calcite-shell-panel.css +1 -0
  58. package/dist/collection/demos/_assets/demo-spacer.js +17 -0
  59. package/dist/collection/demos/_assets/demo-template.js +13 -0
  60. package/dist/collection/demos/_assets/head.js +45 -0
  61. package/dist/components/calcite-shell-panel.js +1 -1
  62. package/dist/components/popper.js +90 -64
  63. package/dist/custom-elements/index.js +91 -65
  64. package/dist/esm/calcite-combobox_3.entry.js +1 -1
  65. package/dist/esm/calcite-dropdown_3.entry.js +1 -1
  66. package/dist/esm/calcite-input-date-picker.entry.js +1 -1
  67. package/dist/esm/calcite-popover_2.entry.js +1 -1
  68. package/dist/esm/calcite-shell_3.entry.js +1 -1
  69. package/dist/esm/calcite-tooltip_2.entry.js +1 -1
  70. package/dist/esm/{popper-dc4b45cf.js → popper-f5caedc4.js} +90 -64
  71. package/dist/esm-es5/calcite-combobox_3.entry.js +1 -1
  72. package/dist/esm-es5/calcite-dropdown_3.entry.js +1 -1
  73. package/dist/esm-es5/calcite-input-date-picker.entry.js +1 -1
  74. package/dist/esm-es5/calcite-popover_2.entry.js +1 -1
  75. package/dist/esm-es5/calcite-shell_3.entry.js +1 -1
  76. package/dist/esm-es5/calcite-tooltip_2.entry.js +1 -1
  77. package/dist/esm-es5/popper-f5caedc4.js +5 -0
  78. package/dist/extras/docs-json.json +1 -1
  79. package/hydrate/index.js +91 -65
  80. package/package.json +7 -7
  81. package/readme.md +2 -2
  82. package/dist/calcite/p-b1f88d45.system.js +0 -5
  83. package/dist/calcite/p-d53cc958.js +0 -5
  84. package/dist/esm-es5/popper-dc4b45cf.js +0 -5
@@ -160,29 +160,32 @@ function getBasePlacement(placement) {
160
160
  return placement.split('-')[0];
161
161
  }
162
162
 
163
- // import { isHTMLElement } from './instanceOf';
164
- function getBoundingClientRect(element, // eslint-disable-next-line unused-imports/no-unused-vars
165
- includeScale) {
163
+ var max = Math.max;
164
+ var min = Math.min;
165
+ var round = Math.round;
166
+
167
+ function getBoundingClientRect(element, includeScale) {
168
+ if (includeScale === void 0) {
169
+ includeScale = false;
170
+ }
166
171
 
167
172
  var rect = element.getBoundingClientRect();
168
173
  var scaleX = 1;
169
- var scaleY = 1; // FIXME:
170
- // `offsetWidth` returns an integer while `getBoundingClientRect`
171
- // returns a float. This results in `scaleX` or `scaleY` being
172
- // non-1 when it should be for elements that aren't a full pixel in
173
- // width or height.
174
- // if (isHTMLElement(element) && includeScale) {
175
- // const offsetHeight = element.offsetHeight;
176
- // const offsetWidth = element.offsetWidth;
177
- // // Do not attempt to divide by 0, otherwise we get `Infinity` as scale
178
- // // Fallback to 1 in case both values are `0`
179
- // if (offsetWidth > 0) {
180
- // scaleX = rect.width / offsetWidth || 1;
181
- // }
182
- // if (offsetHeight > 0) {
183
- // scaleY = rect.height / offsetHeight || 1;
184
- // }
185
- // }
174
+ var scaleY = 1;
175
+
176
+ if (isHTMLElement(element) && includeScale) {
177
+ var offsetHeight = element.offsetHeight;
178
+ var offsetWidth = element.offsetWidth; // Do not attempt to divide by 0, otherwise we get `Infinity` as scale
179
+ // Fallback to 1 in case both values are `0`
180
+
181
+ if (offsetWidth > 0) {
182
+ scaleX = round(rect.width) / offsetWidth || 1;
183
+ }
184
+
185
+ if (offsetHeight > 0) {
186
+ scaleY = round(rect.height) / offsetHeight || 1;
187
+ }
188
+ }
186
189
 
187
190
  return {
188
191
  width: rect.width / scaleX,
@@ -337,13 +340,13 @@ function getMainAxisFromPlacement(placement) {
337
340
  return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';
338
341
  }
339
342
 
340
- var max = Math.max;
341
- var min = Math.min;
342
- var round = Math.round;
343
-
344
343
  function within(min$1, value, max$1) {
345
344
  return max(min$1, min(value, max$1));
346
345
  }
346
+ function withinMaxClamp(min, value, max) {
347
+ var v = within(min, value, max);
348
+ return v > max ? max : v;
349
+ }
347
350
 
348
351
  function getFreshSideObject() {
349
352
  return {
@@ -466,8 +469,8 @@ function roundOffsetsByDPR(_ref) {
466
469
  var win = window;
467
470
  var dpr = win.devicePixelRatio || 1;
468
471
  return {
469
- x: round(round(x * dpr) / dpr) || 0,
470
- y: round(round(y * dpr) / dpr) || 0
472
+ x: round(x * dpr) / dpr || 0,
473
+ y: round(y * dpr) / dpr || 0
471
474
  };
472
475
  }
473
476
 
@@ -482,7 +485,8 @@ function mapToStyles(_ref2) {
482
485
  position = _ref2.position,
483
486
  gpuAcceleration = _ref2.gpuAcceleration,
484
487
  adaptive = _ref2.adaptive,
485
- roundOffsets = _ref2.roundOffsets;
488
+ roundOffsets = _ref2.roundOffsets,
489
+ isFixed = _ref2.isFixed;
486
490
 
487
491
  var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,
488
492
  _ref3$x = _ref3.x,
@@ -514,16 +518,18 @@ function mapToStyles(_ref2) {
514
518
  offsetParent = offsetParent;
515
519
 
516
520
  if (placement === top || (placement === left || placement === right) && variation === end) {
517
- sideY = bottom; // $FlowFixMe[prop-missing]
518
-
519
- y -= offsetParent[heightProp] - popperRect.height;
521
+ sideY = bottom;
522
+ var offsetY = isFixed && win.visualViewport ? win.visualViewport.height : // $FlowFixMe[prop-missing]
523
+ offsetParent[heightProp];
524
+ y -= offsetY - popperRect.height;
520
525
  y *= gpuAcceleration ? 1 : -1;
521
526
  }
522
527
 
523
528
  if (placement === left || (placement === top || placement === bottom) && variation === end) {
524
- sideX = right; // $FlowFixMe[prop-missing]
525
-
526
- x -= offsetParent[widthProp] - popperRect.width;
529
+ sideX = right;
530
+ var offsetX = isFixed && win.visualViewport ? win.visualViewport.width : // $FlowFixMe[prop-missing]
531
+ offsetParent[widthProp];
532
+ x -= offsetX - popperRect.width;
527
533
  x *= gpuAcceleration ? 1 : -1;
528
534
  }
529
535
  }
@@ -556,7 +562,8 @@ function computeStyles(_ref4) {
556
562
  variation: getVariation(state.placement),
557
563
  popper: state.elements.popper,
558
564
  popperRect: state.rects.popper,
559
- gpuAcceleration: gpuAcceleration
565
+ gpuAcceleration: gpuAcceleration,
566
+ isFixed: state.options.strategy === 'fixed'
560
567
  };
561
568
 
562
569
  if (state.modifiersData.popperOffsets != null) {
@@ -814,7 +821,7 @@ function getInnerBoundingClientRect(element) {
814
821
  }
815
822
 
816
823
  function getClientRectFromMixedType(element, clippingParent) {
817
- return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));
824
+ return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));
818
825
  } // A "clipping parent" is an overflowable container with the characteristic of
819
826
  // clipping (or hiding) overflowing elements with a position different from
820
827
  // `initial`
@@ -831,7 +838,7 @@ function getClippingParents(element) {
831
838
 
832
839
 
833
840
  return clippingParents.filter(function (clippingParent) {
834
- return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';
841
+ return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body' && (canEscapeClipping ? getComputedStyle(clippingParent).position !== 'static' : true);
835
842
  });
836
843
  } // Gets the maximum area that the element is visible in due to any number of
837
844
  // clipping parents
@@ -1327,6 +1334,14 @@ function preventOverflow(_ref) {
1327
1334
  var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {
1328
1335
  placement: state.placement
1329
1336
  })) : tetherOffset;
1337
+ var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {
1338
+ mainAxis: tetherOffsetValue,
1339
+ altAxis: tetherOffsetValue
1340
+ } : Object.assign({
1341
+ mainAxis: 0,
1342
+ altAxis: 0
1343
+ }, tetherOffsetValue);
1344
+ var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;
1330
1345
  var data = {
1331
1346
  x: 0,
1332
1347
  y: 0
@@ -1336,13 +1351,15 @@ function preventOverflow(_ref) {
1336
1351
  return;
1337
1352
  }
1338
1353
 
1339
- if (checkMainAxis || checkAltAxis) {
1354
+ if (checkMainAxis) {
1355
+ var _offsetModifierState$;
1356
+
1340
1357
  var mainSide = mainAxis === 'y' ? top : left;
1341
1358
  var altSide = mainAxis === 'y' ? bottom : right;
1342
1359
  var len = mainAxis === 'y' ? 'height' : 'width';
1343
1360
  var offset = popperOffsets[mainAxis];
1344
- var min$1 = popperOffsets[mainAxis] + overflow[mainSide];
1345
- var max$1 = popperOffsets[mainAxis] - overflow[altSide];
1361
+ var min$1 = offset + overflow[mainSide];
1362
+ var max$1 = offset - overflow[altSide];
1346
1363
  var additive = tether ? -popperRect[len] / 2 : 0;
1347
1364
  var minLen = variation === start ? referenceRect[len] : popperRect[len];
1348
1365
  var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go
@@ -1362,36 +1379,45 @@ function preventOverflow(_ref) {
1362
1379
  // width or height)
1363
1380
 
1364
1381
  var arrowLen = within(0, referenceRect[len], arrowRect[len]);
1365
- var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;
1366
- var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;
1382
+ var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;
1383
+ var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;
1367
1384
  var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);
1368
1385
  var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;
1369
- var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;
1370
- var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;
1371
- var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;
1386
+ var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;
1387
+ var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;
1388
+ var tetherMax = offset + maxOffset - offsetModifierValue;
1389
+ var preventedOffset = within(tether ? min(min$1, tetherMin) : min$1, offset, tether ? max(max$1, tetherMax) : max$1);
1390
+ popperOffsets[mainAxis] = preventedOffset;
1391
+ data[mainAxis] = preventedOffset - offset;
1392
+ }
1372
1393
 
1373
- if (checkMainAxis) {
1374
- var preventedOffset = within(tether ? min(min$1, tetherMin) : min$1, offset, tether ? max(max$1, tetherMax) : max$1);
1375
- popperOffsets[mainAxis] = preventedOffset;
1376
- data[mainAxis] = preventedOffset - offset;
1377
- }
1394
+ if (checkAltAxis) {
1395
+ var _offsetModifierState$2;
1378
1396
 
1379
- if (checkAltAxis) {
1380
- var _mainSide = mainAxis === 'x' ? top : left;
1397
+ var _mainSide = mainAxis === 'x' ? top : left;
1381
1398
 
1382
- var _altSide = mainAxis === 'x' ? bottom : right;
1399
+ var _altSide = mainAxis === 'x' ? bottom : right;
1383
1400
 
1384
- var _offset = popperOffsets[altAxis];
1401
+ var _offset = popperOffsets[altAxis];
1385
1402
 
1386
- var _min = _offset + overflow[_mainSide];
1403
+ var _len = altAxis === 'y' ? 'height' : 'width';
1387
1404
 
1388
- var _max = _offset - overflow[_altSide];
1405
+ var _min = _offset + overflow[_mainSide];
1389
1406
 
1390
- var _preventedOffset = within(tether ? min(_min, tetherMin) : _min, _offset, tether ? max(_max, tetherMax) : _max);
1407
+ var _max = _offset - overflow[_altSide];
1391
1408
 
1392
- popperOffsets[altAxis] = _preventedOffset;
1393
- data[altAxis] = _preventedOffset - _offset;
1394
- }
1409
+ var isOriginSide = [top, left].indexOf(basePlacement) !== -1;
1410
+
1411
+ var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;
1412
+
1413
+ var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;
1414
+
1415
+ var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;
1416
+
1417
+ var _preventedOffset = tether && isOriginSide ? withinMaxClamp(_tetherMin, _offset, _tetherMax) : within(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);
1418
+
1419
+ popperOffsets[altAxis] = _preventedOffset;
1420
+ data[altAxis] = _preventedOffset - _offset;
1395
1421
  }
1396
1422
 
1397
1423
  state.modifiersData[name] = data;
@@ -1423,8 +1449,8 @@ function getNodeScroll(node) {
1423
1449
 
1424
1450
  function isElementScaled(element) {
1425
1451
  var rect = element.getBoundingClientRect();
1426
- var scaleX = rect.width / element.offsetWidth || 1;
1427
- var scaleY = rect.height / element.offsetHeight || 1;
1452
+ var scaleX = round(rect.width) / element.offsetWidth || 1;
1453
+ var scaleY = round(rect.height) / element.offsetHeight || 1;
1428
1454
  return scaleX !== 1 || scaleY !== 1;
1429
1455
  } // Returns the composite rect of an element relative to its offsetParent.
1430
1456
  // Composite means it takes into account transforms as well as layout.
@@ -1436,9 +1462,9 @@ function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {
1436
1462
  }
1437
1463
 
1438
1464
  var isOffsetParentAnElement = isHTMLElement(offsetParent);
1439
- isHTMLElement(offsetParent) && isElementScaled(offsetParent);
1465
+ var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);
1440
1466
  var documentElement = getDocumentElement(offsetParent);
1441
- var rect = getBoundingClientRect(elementOrVirtualElement);
1467
+ var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled);
1442
1468
  var scroll = {
1443
1469
  scrollLeft: 0,
1444
1470
  scrollTop: 0
@@ -1455,7 +1481,7 @@ function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {
1455
1481
  }
1456
1482
 
1457
1483
  if (isHTMLElement(offsetParent)) {
1458
- offsets = getBoundingClientRect(offsetParent);
1484
+ offsets = getBoundingClientRect(offsetParent, true);
1459
1485
  offsets.x += offsetParent.clientLeft;
1460
1486
  offsets.y += offsetParent.clientTop;
1461
1487
  } else if (documentElement) {
@@ -7471,29 +7471,32 @@ function getBasePlacement(placement) {
7471
7471
  return placement.split('-')[0];
7472
7472
  }
7473
7473
 
7474
- // import { isHTMLElement } from './instanceOf';
7475
- function getBoundingClientRect(element, // eslint-disable-next-line unused-imports/no-unused-vars
7476
- includeScale) {
7474
+ var max = Math.max;
7475
+ var min = Math.min;
7476
+ var round = Math.round;
7477
+
7478
+ function getBoundingClientRect(element, includeScale) {
7479
+ if (includeScale === void 0) {
7480
+ includeScale = false;
7481
+ }
7477
7482
 
7478
7483
  var rect = element.getBoundingClientRect();
7479
7484
  var scaleX = 1;
7480
- var scaleY = 1; // FIXME:
7481
- // `offsetWidth` returns an integer while `getBoundingClientRect`
7482
- // returns a float. This results in `scaleX` or `scaleY` being
7483
- // non-1 when it should be for elements that aren't a full pixel in
7484
- // width or height.
7485
- // if (isHTMLElement(element) && includeScale) {
7486
- // const offsetHeight = element.offsetHeight;
7487
- // const offsetWidth = element.offsetWidth;
7488
- // // Do not attempt to divide by 0, otherwise we get `Infinity` as scale
7489
- // // Fallback to 1 in case both values are `0`
7490
- // if (offsetWidth > 0) {
7491
- // scaleX = rect.width / offsetWidth || 1;
7492
- // }
7493
- // if (offsetHeight > 0) {
7494
- // scaleY = rect.height / offsetHeight || 1;
7495
- // }
7496
- // }
7485
+ var scaleY = 1;
7486
+
7487
+ if (isHTMLElement(element) && includeScale) {
7488
+ var offsetHeight = element.offsetHeight;
7489
+ var offsetWidth = element.offsetWidth; // Do not attempt to divide by 0, otherwise we get `Infinity` as scale
7490
+ // Fallback to 1 in case both values are `0`
7491
+
7492
+ if (offsetWidth > 0) {
7493
+ scaleX = round(rect.width) / offsetWidth || 1;
7494
+ }
7495
+
7496
+ if (offsetHeight > 0) {
7497
+ scaleY = round(rect.height) / offsetHeight || 1;
7498
+ }
7499
+ }
7497
7500
 
7498
7501
  return {
7499
7502
  width: rect.width / scaleX,
@@ -7648,13 +7651,13 @@ function getMainAxisFromPlacement(placement) {
7648
7651
  return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';
7649
7652
  }
7650
7653
 
7651
- var max = Math.max;
7652
- var min = Math.min;
7653
- var round = Math.round;
7654
-
7655
7654
  function within(min$1, value, max$1) {
7656
7655
  return max(min$1, min(value, max$1));
7657
7656
  }
7657
+ function withinMaxClamp(min, value, max) {
7658
+ var v = within(min, value, max);
7659
+ return v > max ? max : v;
7660
+ }
7658
7661
 
7659
7662
  function getFreshSideObject() {
7660
7663
  return {
@@ -7777,8 +7780,8 @@ function roundOffsetsByDPR(_ref) {
7777
7780
  var win = window;
7778
7781
  var dpr = win.devicePixelRatio || 1;
7779
7782
  return {
7780
- x: round(round(x * dpr) / dpr) || 0,
7781
- y: round(round(y * dpr) / dpr) || 0
7783
+ x: round(x * dpr) / dpr || 0,
7784
+ y: round(y * dpr) / dpr || 0
7782
7785
  };
7783
7786
  }
7784
7787
 
@@ -7793,7 +7796,8 @@ function mapToStyles(_ref2) {
7793
7796
  position = _ref2.position,
7794
7797
  gpuAcceleration = _ref2.gpuAcceleration,
7795
7798
  adaptive = _ref2.adaptive,
7796
- roundOffsets = _ref2.roundOffsets;
7799
+ roundOffsets = _ref2.roundOffsets,
7800
+ isFixed = _ref2.isFixed;
7797
7801
 
7798
7802
  var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,
7799
7803
  _ref3$x = _ref3.x,
@@ -7825,16 +7829,18 @@ function mapToStyles(_ref2) {
7825
7829
  offsetParent = offsetParent;
7826
7830
 
7827
7831
  if (placement === top || (placement === left || placement === right) && variation === end) {
7828
- sideY = bottom; // $FlowFixMe[prop-missing]
7829
-
7830
- y -= offsetParent[heightProp] - popperRect.height;
7832
+ sideY = bottom;
7833
+ var offsetY = isFixed && win.visualViewport ? win.visualViewport.height : // $FlowFixMe[prop-missing]
7834
+ offsetParent[heightProp];
7835
+ y -= offsetY - popperRect.height;
7831
7836
  y *= gpuAcceleration ? 1 : -1;
7832
7837
  }
7833
7838
 
7834
7839
  if (placement === left || (placement === top || placement === bottom) && variation === end) {
7835
- sideX = right; // $FlowFixMe[prop-missing]
7836
-
7837
- x -= offsetParent[widthProp] - popperRect.width;
7840
+ sideX = right;
7841
+ var offsetX = isFixed && win.visualViewport ? win.visualViewport.width : // $FlowFixMe[prop-missing]
7842
+ offsetParent[widthProp];
7843
+ x -= offsetX - popperRect.width;
7838
7844
  x *= gpuAcceleration ? 1 : -1;
7839
7845
  }
7840
7846
  }
@@ -7867,7 +7873,8 @@ function computeStyles(_ref4) {
7867
7873
  variation: getVariation(state.placement),
7868
7874
  popper: state.elements.popper,
7869
7875
  popperRect: state.rects.popper,
7870
- gpuAcceleration: gpuAcceleration
7876
+ gpuAcceleration: gpuAcceleration,
7877
+ isFixed: state.options.strategy === 'fixed'
7871
7878
  };
7872
7879
 
7873
7880
  if (state.modifiersData.popperOffsets != null) {
@@ -8125,7 +8132,7 @@ function getInnerBoundingClientRect(element) {
8125
8132
  }
8126
8133
 
8127
8134
  function getClientRectFromMixedType(element, clippingParent) {
8128
- return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));
8135
+ return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));
8129
8136
  } // A "clipping parent" is an overflowable container with the characteristic of
8130
8137
  // clipping (or hiding) overflowing elements with a position different from
8131
8138
  // `initial`
@@ -8142,7 +8149,7 @@ function getClippingParents(element) {
8142
8149
 
8143
8150
 
8144
8151
  return clippingParents.filter(function (clippingParent) {
8145
- return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';
8152
+ return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body' && (canEscapeClipping ? getComputedStyle$1(clippingParent).position !== 'static' : true);
8146
8153
  });
8147
8154
  } // Gets the maximum area that the element is visible in due to any number of
8148
8155
  // clipping parents
@@ -8638,6 +8645,14 @@ function preventOverflow(_ref) {
8638
8645
  var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {
8639
8646
  placement: state.placement
8640
8647
  })) : tetherOffset;
8648
+ var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {
8649
+ mainAxis: tetherOffsetValue,
8650
+ altAxis: tetherOffsetValue
8651
+ } : Object.assign({
8652
+ mainAxis: 0,
8653
+ altAxis: 0
8654
+ }, tetherOffsetValue);
8655
+ var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;
8641
8656
  var data = {
8642
8657
  x: 0,
8643
8658
  y: 0
@@ -8647,13 +8662,15 @@ function preventOverflow(_ref) {
8647
8662
  return;
8648
8663
  }
8649
8664
 
8650
- if (checkMainAxis || checkAltAxis) {
8665
+ if (checkMainAxis) {
8666
+ var _offsetModifierState$;
8667
+
8651
8668
  var mainSide = mainAxis === 'y' ? top : left;
8652
8669
  var altSide = mainAxis === 'y' ? bottom : right;
8653
8670
  var len = mainAxis === 'y' ? 'height' : 'width';
8654
8671
  var offset = popperOffsets[mainAxis];
8655
- var min$1 = popperOffsets[mainAxis] + overflow[mainSide];
8656
- var max$1 = popperOffsets[mainAxis] - overflow[altSide];
8672
+ var min$1 = offset + overflow[mainSide];
8673
+ var max$1 = offset - overflow[altSide];
8657
8674
  var additive = tether ? -popperRect[len] / 2 : 0;
8658
8675
  var minLen = variation === start ? referenceRect[len] : popperRect[len];
8659
8676
  var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go
@@ -8673,36 +8690,45 @@ function preventOverflow(_ref) {
8673
8690
  // width or height)
8674
8691
 
8675
8692
  var arrowLen = within(0, referenceRect[len], arrowRect[len]);
8676
- var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;
8677
- var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;
8693
+ var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;
8694
+ var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;
8678
8695
  var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);
8679
8696
  var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;
8680
- var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;
8681
- var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;
8682
- var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;
8697
+ var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;
8698
+ var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;
8699
+ var tetherMax = offset + maxOffset - offsetModifierValue;
8700
+ var preventedOffset = within(tether ? min(min$1, tetherMin) : min$1, offset, tether ? max(max$1, tetherMax) : max$1);
8701
+ popperOffsets[mainAxis] = preventedOffset;
8702
+ data[mainAxis] = preventedOffset - offset;
8703
+ }
8683
8704
 
8684
- if (checkMainAxis) {
8685
- var preventedOffset = within(tether ? min(min$1, tetherMin) : min$1, offset, tether ? max(max$1, tetherMax) : max$1);
8686
- popperOffsets[mainAxis] = preventedOffset;
8687
- data[mainAxis] = preventedOffset - offset;
8688
- }
8705
+ if (checkAltAxis) {
8706
+ var _offsetModifierState$2;
8689
8707
 
8690
- if (checkAltAxis) {
8691
- var _mainSide = mainAxis === 'x' ? top : left;
8708
+ var _mainSide = mainAxis === 'x' ? top : left;
8692
8709
 
8693
- var _altSide = mainAxis === 'x' ? bottom : right;
8710
+ var _altSide = mainAxis === 'x' ? bottom : right;
8694
8711
 
8695
- var _offset = popperOffsets[altAxis];
8712
+ var _offset = popperOffsets[altAxis];
8696
8713
 
8697
- var _min = _offset + overflow[_mainSide];
8714
+ var _len = altAxis === 'y' ? 'height' : 'width';
8698
8715
 
8699
- var _max = _offset - overflow[_altSide];
8716
+ var _min = _offset + overflow[_mainSide];
8700
8717
 
8701
- var _preventedOffset = within(tether ? min(_min, tetherMin) : _min, _offset, tether ? max(_max, tetherMax) : _max);
8718
+ var _max = _offset - overflow[_altSide];
8702
8719
 
8703
- popperOffsets[altAxis] = _preventedOffset;
8704
- data[altAxis] = _preventedOffset - _offset;
8705
- }
8720
+ var isOriginSide = [top, left].indexOf(basePlacement) !== -1;
8721
+
8722
+ var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;
8723
+
8724
+ var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;
8725
+
8726
+ var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;
8727
+
8728
+ var _preventedOffset = tether && isOriginSide ? withinMaxClamp(_tetherMin, _offset, _tetherMax) : within(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);
8729
+
8730
+ popperOffsets[altAxis] = _preventedOffset;
8731
+ data[altAxis] = _preventedOffset - _offset;
8706
8732
  }
8707
8733
 
8708
8734
  state.modifiersData[name] = data;
@@ -8734,8 +8760,8 @@ function getNodeScroll(node) {
8734
8760
 
8735
8761
  function isElementScaled(element) {
8736
8762
  var rect = element.getBoundingClientRect();
8737
- var scaleX = rect.width / element.offsetWidth || 1;
8738
- var scaleY = rect.height / element.offsetHeight || 1;
8763
+ var scaleX = round(rect.width) / element.offsetWidth || 1;
8764
+ var scaleY = round(rect.height) / element.offsetHeight || 1;
8739
8765
  return scaleX !== 1 || scaleY !== 1;
8740
8766
  } // Returns the composite rect of an element relative to its offsetParent.
8741
8767
  // Composite means it takes into account transforms as well as layout.
@@ -8747,9 +8773,9 @@ function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {
8747
8773
  }
8748
8774
 
8749
8775
  var isOffsetParentAnElement = isHTMLElement(offsetParent);
8750
- isHTMLElement(offsetParent) && isElementScaled(offsetParent);
8776
+ var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);
8751
8777
  var documentElement = getDocumentElement(offsetParent);
8752
- var rect = getBoundingClientRect(elementOrVirtualElement);
8778
+ var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled);
8753
8779
  var scroll = {
8754
8780
  scrollLeft: 0,
8755
8781
  scrollTop: 0
@@ -8766,7 +8792,7 @@ function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {
8766
8792
  }
8767
8793
 
8768
8794
  if (isHTMLElement(offsetParent)) {
8769
- offsets = getBoundingClientRect(offsetParent);
8795
+ offsets = getBoundingClientRect(offsetParent, true);
8770
8796
  offsets.x += offsetParent.clientLeft;
8771
8797
  offsets.y += offsetParent.clientTop;
8772
8798
  } else if (documentElement) {
@@ -17450,7 +17476,7 @@ const TEXT$3 = {
17450
17476
  resize: "Resize"
17451
17477
  };
17452
17478
 
17453
- const calciteShellPanelCss = "@-webkit-keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}@keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:300ms}.calcite-animate{opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--calcite-animation-timing);animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{-webkit-animation-name:in;animation-name:in}.calcite-animate__in-down{-webkit-animation-name:in-down;animation-name:in-down}.calcite-animate__in-up{-webkit-animation-name:in-up;animation-name:in-up}.calcite-animate__in-scale{-webkit-animation-name:in-scale;animation-name:in-scale}:root{--calcite-popper-transition:150ms ease-in-out}:host([hidden]){display:none}:host{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;-ms-flex:0 1 auto;flex:0 1 auto;--calcite-shell-panel-detached-max-height:unset}.container{-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;background-color:transparent;-ms-flex:1 1 auto;flex:1 1 auto;pointer-events:none;color:var(--calcite-ui-text-2);font-size:var(--calcite-font-size--1)}.container *{-webkit-box-sizing:border-box;box-sizing:border-box}:host(:hover) .separator:not(:hover):not(:focus),:host(:focus-within) .separator:not(:hover):not(:focus){opacity:1;background-color:var(--calcite-ui-border-3)}.separator{position:absolute;background-color:transparent;bottom:0;display:-ms-flexbox;display:flex;height:100%;opacity:0;pointer-events:auto;top:0;-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:150ms;transition-duration:150ms;-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s;width:0.125rem;z-index:10;cursor:col-resize;outline:none}.separator:hover{opacity:1;background-color:var(--calcite-ui-border-2)}.separator:focus{background-color:var(--calcite-ui-brand);opacity:1}:host([position=start]) .separator{inset-inline-end:-2px}:host([position=end]) .separator{inset-inline-start:-2px}::slotted(calcite-panel),::slotted(calcite-flow){-ms-flex:1 1 auto;flex:1 1 auto;height:100%;width:100%;max-height:unset;max-width:unset}::slotted(.calcite-match-height){display:-ms-flexbox;display:flex;-ms-flex:1 1 auto;flex:1 1 auto;overflow:hidden}.content{-ms-flex-align:stretch;align-items:stretch;-ms-flex-item-align:stretch;align-self:stretch;background-color:var(--calcite-ui-background);display:-ms-flexbox;display:flex;padding:0;pointer-events:auto;-ms-flex-direction:column;flex-direction:column;-ms-flex-wrap:nowrap;flex-wrap:nowrap;width:var(--calcite-shell-panel-width);max-width:var(--calcite-shell-panel-max-width);min-width:var(--calcite-shell-panel-min-width);-webkit-transition:max-height 150ms ease-in-out, max-width 150ms ease-in-out;transition:max-height 150ms ease-in-out, max-width 150ms ease-in-out}.content__header{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:0 1 auto;flex:0 1 auto;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-align:stretch;align-items:stretch}.content__body{display:-ms-flexbox;display:flex;-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-direction:column;flex-direction:column;overflow:hidden}:host([width-scale=s]) .content{--calcite-shell-panel-width:calc(var(--calcite-panel-width-multiplier) * 12vw);--calcite-shell-panel-max-width:calc(var(--calcite-panel-width-multiplier) * 300px);--calcite-shell-panel-min-width:calc(var(--calcite-panel-width-multiplier) * 150px)}:host([width-scale=m]) .content{--calcite-shell-panel-width:calc(var(--calcite-panel-width-multiplier) * 20vw);--calcite-shell-panel-max-width:calc(var(--calcite-panel-width-multiplier) * 420px);--calcite-shell-panel-min-width:calc(var(--calcite-panel-width-multiplier) * 240px)}:host([width-scale=l]) .content{--calcite-shell-panel-width:calc(var(--calcite-panel-width-multiplier) * 45vw);--calcite-shell-panel-max-width:calc(var(--calcite-panel-width-multiplier) * 680px);--calcite-shell-panel-min-width:calc(var(--calcite-panel-width-multiplier) * 340px)}:host([detached-height-scale=s]) .content--detached{--calcite-shell-panel-detached-max-height:40vh}:host([detached-height-scale=m]) .content--detached{--calcite-shell-panel-detached-max-height:60vh}:host([detached-height-scale=l]) .content--detached{--calcite-shell-panel-detached-max-height:80vh}.content--detached{border-radius:0.25rem;-webkit-box-shadow:0 4px 8px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -1px rgba(0, 0, 0, 0.04);box-shadow:0 4px 8px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -1px rgba(0, 0, 0, 0.04);height:auto;overflow:hidden;margin-top:0.5rem;margin-bottom:auto;margin-left:0.5rem;margin-right:0.5rem;max-height:var(--calcite-shell-panel-detached-max-height)}.content--detached ::slotted(calcite-panel),.content--detached ::slotted(calcite-flow){max-height:unset}:host([position=start]) .content--detached ::slotted(calcite-panel),:host([position=start]) .content--detached ::slotted(calcite-flow),:host([position=end]) .content--detached ::slotted(calcite-panel),:host([position=end]) .content--detached ::slotted(calcite-flow){border-style:none}.content[hidden]{display:none}slot[name=action-bar]::slotted(calcite-action-bar),.content ::slotted(calcite-flow),.content ::slotted(calcite-panel){border-width:1px;border-color:var(--calcite-ui-border-3);border-style:solid}:host([position=start]) slot[name=action-bar]::slotted(calcite-action-bar),:host([position=start]) .content ::slotted(calcite-flow),:host([position=start]) .content ::slotted(calcite-panel){-webkit-border-start:none;border-inline-start:none}:host([position=end]) slot[name=action-bar]::slotted(calcite-action-bar),:host([position=end]) .content ::slotted(calcite-flow),:host([position=end]) .content ::slotted(calcite-panel){-webkit-border-end:none;border-inline-end:none}";
17479
+ const calciteShellPanelCss = "@-webkit-keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}@keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:300ms}.calcite-animate{opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--calcite-animation-timing);animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{-webkit-animation-name:in;animation-name:in}.calcite-animate__in-down{-webkit-animation-name:in-down;animation-name:in-down}.calcite-animate__in-up{-webkit-animation-name:in-up;animation-name:in-up}.calcite-animate__in-scale{-webkit-animation-name:in-scale;animation-name:in-scale}:root{--calcite-popper-transition:150ms ease-in-out}:host([hidden]){display:none}:host{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;-ms-flex:0 1 auto;flex:0 1 auto;pointer-events:none;--calcite-shell-panel-detached-max-height:unset}.container{-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;background-color:transparent;-ms-flex:1 1 auto;flex:1 1 auto;pointer-events:none;color:var(--calcite-ui-text-2);font-size:var(--calcite-font-size--1)}.container *{-webkit-box-sizing:border-box;box-sizing:border-box}:host(:hover) .separator:not(:hover):not(:focus),:host(:focus-within) .separator:not(:hover):not(:focus){opacity:1;background-color:var(--calcite-ui-border-3)}.separator{position:absolute;background-color:transparent;bottom:0;display:-ms-flexbox;display:flex;height:100%;opacity:0;pointer-events:auto;top:0;-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:150ms;transition-duration:150ms;-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s;width:0.125rem;z-index:10;cursor:col-resize;outline:none}.separator:hover{opacity:1;background-color:var(--calcite-ui-border-2)}.separator:focus{background-color:var(--calcite-ui-brand);opacity:1}:host([position=start]) .separator{inset-inline-end:-2px}:host([position=end]) .separator{inset-inline-start:-2px}::slotted(calcite-panel),::slotted(calcite-flow){-ms-flex:1 1 auto;flex:1 1 auto;height:100%;width:100%;max-height:unset;max-width:unset}::slotted(.calcite-match-height){display:-ms-flexbox;display:flex;-ms-flex:1 1 auto;flex:1 1 auto;overflow:hidden}.content{-ms-flex-align:stretch;align-items:stretch;-ms-flex-item-align:stretch;align-self:stretch;background-color:var(--calcite-ui-background);display:-ms-flexbox;display:flex;padding:0;pointer-events:auto;-ms-flex-direction:column;flex-direction:column;-ms-flex-wrap:nowrap;flex-wrap:nowrap;width:var(--calcite-shell-panel-width);max-width:var(--calcite-shell-panel-max-width);min-width:var(--calcite-shell-panel-min-width);-webkit-transition:max-height 150ms ease-in-out, max-width 150ms ease-in-out;transition:max-height 150ms ease-in-out, max-width 150ms ease-in-out}.content__header{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:0 1 auto;flex:0 1 auto;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-align:stretch;align-items:stretch}.content__body{display:-ms-flexbox;display:flex;-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-direction:column;flex-direction:column;overflow:hidden}:host([width-scale=s]) .content{--calcite-shell-panel-width:calc(var(--calcite-panel-width-multiplier) * 12vw);--calcite-shell-panel-max-width:calc(var(--calcite-panel-width-multiplier) * 300px);--calcite-shell-panel-min-width:calc(var(--calcite-panel-width-multiplier) * 150px)}:host([width-scale=m]) .content{--calcite-shell-panel-width:calc(var(--calcite-panel-width-multiplier) * 20vw);--calcite-shell-panel-max-width:calc(var(--calcite-panel-width-multiplier) * 420px);--calcite-shell-panel-min-width:calc(var(--calcite-panel-width-multiplier) * 240px)}:host([width-scale=l]) .content{--calcite-shell-panel-width:calc(var(--calcite-panel-width-multiplier) * 45vw);--calcite-shell-panel-max-width:calc(var(--calcite-panel-width-multiplier) * 680px);--calcite-shell-panel-min-width:calc(var(--calcite-panel-width-multiplier) * 340px)}:host([detached-height-scale=s]) .content--detached{--calcite-shell-panel-detached-max-height:40vh}:host([detached-height-scale=m]) .content--detached{--calcite-shell-panel-detached-max-height:60vh}:host([detached-height-scale=l]) .content--detached{--calcite-shell-panel-detached-max-height:80vh}.content--detached{border-radius:0.25rem;-webkit-box-shadow:0 4px 8px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -1px rgba(0, 0, 0, 0.04);box-shadow:0 4px 8px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -1px rgba(0, 0, 0, 0.04);height:auto;overflow:hidden;margin-top:0.5rem;margin-bottom:auto;margin-left:0.5rem;margin-right:0.5rem;max-height:var(--calcite-shell-panel-detached-max-height)}.content--detached ::slotted(calcite-panel),.content--detached ::slotted(calcite-flow){max-height:unset}:host([position=start]) .content--detached ::slotted(calcite-panel),:host([position=start]) .content--detached ::slotted(calcite-flow),:host([position=end]) .content--detached ::slotted(calcite-panel),:host([position=end]) .content--detached ::slotted(calcite-flow){border-style:none}.content[hidden]{display:none}slot[name=action-bar]::slotted(calcite-action-bar),.content ::slotted(calcite-flow),.content ::slotted(calcite-panel){border-width:1px;border-color:var(--calcite-ui-border-3);border-style:solid}:host([position=start]) slot[name=action-bar]::slotted(calcite-action-bar),:host([position=start]) .content ::slotted(calcite-flow),:host([position=start]) .content ::slotted(calcite-panel){-webkit-border-start:none;border-inline-start:none}:host([position=end]) slot[name=action-bar]::slotted(calcite-action-bar),:host([position=end]) .content ::slotted(calcite-flow),:host([position=end]) .content ::slotted(calcite-panel){-webkit-border-end:none;border-inline-end:none}";
17454
17480
 
17455
17481
  let CalciteShellPanel$1 = class extends HTMLElement$1 {
17456
17482
  constructor() {
@@ -7,7 +7,7 @@ import { a as isSymbol, S as Symbol, d as debounce } from './debounce-79648d42.j
7
7
  import { i as isArray, f as forIn } from './forIn-48d8fb84.js';
8
8
  import { n as nodeListToArray, a as getElementDir, d as getElementProp, C as CSS_UTILITY } from './dom-f24e866c.js';
9
9
  import { g as getKey } from './key-69001a68.js';
10
- import { u as updatePopper, c as createPopper, C as CSS$2 } from './popper-dc4b45cf.js';
10
+ import { u as updatePopper, c as createPopper, C as CSS$2 } from './popper-f5caedc4.js';
11
11
  import { g as guid } from './guid-196bd5ea.js';
12
12
  import { c as connectLabel, d as disconnectLabel, g as getLabelText } from './label-5559055d.js';
13
13
  import { c as connectForm, a as afterConnectDefaultValueSet, d as disconnectForm, H as HiddenFormInputSlot } from './form-160b0fb5.js';
@@ -5,7 +5,7 @@
5
5
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-9de00868.js';
6
6
  import { g as getKey } from './key-69001a68.js';
7
7
  import { a as getElementDir, C as CSS_UTILITY, f as focusElement, d as getElementProp } from './dom-f24e866c.js';
8
- import { C as CSS$2, u as updatePopper, c as createPopper } from './popper-dc4b45cf.js';
8
+ import { C as CSS$2, u as updatePopper, c as createPopper } from './popper-f5caedc4.js';
9
9
  import { c as createObserver } from './observers-8f0bc419.js';
10
10
  import './guid-196bd5ea.js';
11
11
 
@@ -8,7 +8,7 @@ import { a as getElementDir } from './dom-f24e866c.js';
8
8
  import { g as getKey } from './key-69001a68.js';
9
9
  import { c as connectLabel, d as disconnectLabel, g as getLabelText } from './label-5559055d.js';
10
10
  import { c as connectForm, d as disconnectForm, H as HiddenFormInputSlot } from './form-160b0fb5.js';
11
- import { u as updatePopper, C as CSS, c as createPopper } from './popper-dc4b45cf.js';
11
+ import { u as updatePopper, C as CSS, c as createPopper } from './popper-f5caedc4.js';
12
12
  import './locale-6c1b85c7.js';
13
13
  import './number-e7393766.js';
14
14
  import './guid-196bd5ea.js';
@@ -3,7 +3,7 @@
3
3
  * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
4
4
  */
5
5
  import { r as registerInstance, c as createEvent, f as forceUpdate, h, H as Host, g as getElement } from './index-9de00868.js';
6
- import { d as defaultOffsetDistance, u as updatePopper, c as createPopper, C as CSS$1 } from './popper-dc4b45cf.js';
6
+ import { d as defaultOffsetDistance, u as updatePopper, c as createPopper, C as CSS$1 } from './popper-f5caedc4.js';
7
7
  import { g as guid } from './guid-196bd5ea.js';
8
8
  import { q as queryElementRoots, a as getElementDir, C as CSS_UTILITY, h as queryElementsRoots } from './dom-f24e866c.js';
9
9
  import { C as CalciteHeading } from './CalciteHeading-1d6cd311.js';