@pacem/pacem-ui 2.0.0-babbage → 2.0.0-cauchy
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/dist/browser/pacem-ui.js +57 -9
- package/dist/browser/pacem-ui.js.map +1 -1
- package/dist/browser/pacem-ui.min.js +2 -2
- package/dist/bundle/pacem-ui.min.mjs +57 -57
- package/dist/bundle/pacem-ui.mjs +56 -9
- package/dist/bundle/pacem-ui.mjs.map +2 -2
- package/dist/docs/pacem-ui.json +32 -1
- package/dist/esm/adapter.js +1 -1
- package/dist/esm/anchor.js +1 -1
- package/dist/esm/balloon.js +1 -1
- package/dist/esm/binder.js +57 -9
- package/dist/esm/blade.js +1 -1
- package/dist/esm/bottom-sheet.js +1 -1
- package/dist/esm/button.js +1 -1
- package/dist/esm/buttonset.js +1 -1
- package/dist/esm/calendar.js +1 -1
- package/dist/esm/collapse.js +1 -1
- package/dist/esm/dialog-abstractions.js +1 -1
- package/dist/esm/dialog.js +1 -1
- package/dist/esm/divider.js +1 -1
- package/dist/esm/icon.js +1 -1
- package/dist/esm/image.js +1 -1
- package/dist/esm/index-components-ui.js +1 -1
- package/dist/esm/index-components.js +1 -1
- package/dist/esm/index-iife.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/infinite-scroller.js +1 -1
- package/dist/esm/iterative.js +1 -1
- package/dist/esm/lightbox-abstractions.js +1 -1
- package/dist/esm/lightbox.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/markdown-svc.js +1 -1
- package/dist/esm/markdown.js +1 -1
- package/dist/esm/marquee.js +1 -1
- package/dist/esm/media-query.js +1 -1
- package/dist/esm/menu.js +1 -1
- package/dist/esm/pager.js +1 -1
- package/dist/esm/picture.js +1 -1
- package/dist/esm/progressbar.js +1 -1
- package/dist/esm/sidebar.js +1 -1
- package/dist/esm/slideshow.js +1 -1
- package/dist/esm/social-twitter.js +1 -1
- package/dist/esm/sticky-header.js +1 -1
- package/dist/esm/tabs.js +1 -1
- package/dist/esm/ticker.js +1 -1
- package/dist/esm/toast.js +1 -1
- package/dist/esm/toc.js +1 -1
- package/dist/esm/tuner.js +1 -1
- package/dist/esm/types.js +1 -1
- package/dist/esm/vibration.js +1 -1
- package/dist/esm/view.js +1 -1
- package/dist/esm/window.js +1 -1
- package/package.json +1 -1
- package/typings/index.d.ts +11 -1
package/dist/browser/pacem-ui.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* @pacem/pacem-ui v2.0.0-
|
|
2
|
+
* @pacem/pacem-ui v2.0.0-cauchy (https://js.pacem.it)
|
|
3
3
|
* Pacem (https://pacem.it)
|
|
4
4
|
* Licensed under Apache-2.0
|
|
5
5
|
*/
|
|
@@ -1288,6 +1288,10 @@
|
|
|
1288
1288
|
this._setPathVisibility();
|
|
1289
1289
|
}
|
|
1290
1290
|
break;
|
|
1291
|
+
case 'layer':
|
|
1292
|
+
this._hostSvg();
|
|
1293
|
+
this._draw();
|
|
1294
|
+
break;
|
|
1291
1295
|
}
|
|
1292
1296
|
}
|
|
1293
1297
|
disconnectedCallback() {
|
|
@@ -1329,27 +1333,67 @@
|
|
|
1329
1333
|
pacemCore.Utils.addClass(svg, pacemCore.PCSS + '-binder ' + this.className);
|
|
1330
1334
|
svg.style.top = '0';
|
|
1331
1335
|
svg.style.left = '0';
|
|
1332
|
-
svg.style.overflow = 'hidden';
|
|
1333
1336
|
svg.style.pointerEvents = 'none';
|
|
1334
1337
|
const path = this._path = document.createElementNS('http://www.w3.org/2000/svg', 'path');
|
|
1335
1338
|
path.setAttribute('fill', 'none');
|
|
1336
1339
|
path.setAttribute('display', 'none');
|
|
1337
1340
|
this._setPathVisibility();
|
|
1338
1341
|
svg.appendChild(path);
|
|
1339
|
-
this.
|
|
1340
|
-
document.body.appendChild(svg);
|
|
1342
|
+
this._hostSvg();
|
|
1341
1343
|
STD_EVENTS.forEach(e => {
|
|
1342
1344
|
path.addEventListener(e, this._broadcastHandler, false);
|
|
1343
1345
|
});
|
|
1344
1346
|
}
|
|
1345
1347
|
}
|
|
1346
|
-
/**
|
|
1348
|
+
/** Whether the SVG lives in a custom {@link layer} rather than in the full-page overlay. */
|
|
1349
|
+
get _layered() {
|
|
1350
|
+
const layer = this.layer;
|
|
1351
|
+
return !pacemCore.Utils.isNull(layer) && layer !== document.body;
|
|
1352
|
+
}
|
|
1353
|
+
/** Appends the SVG to its host ({@link layer} or `document.body`), adapting its overflow and size accordingly. */
|
|
1354
|
+
_hostSvg() {
|
|
1355
|
+
const svg = this._svg;
|
|
1356
|
+
if (pacemCore.Utils.isNull(svg)) {
|
|
1357
|
+
return;
|
|
1358
|
+
}
|
|
1359
|
+
const layered = this._layered;
|
|
1360
|
+
// a full-page overlay must not grow the document, a layer must not crop the curve
|
|
1361
|
+
svg.style.overflow = layered ? 'visible' : 'hidden';
|
|
1362
|
+
this.invalidateSize();
|
|
1363
|
+
const host = layered ? this.layer : document.body;
|
|
1364
|
+
if (svg.parentNode !== host) {
|
|
1365
|
+
host.appendChild(svg);
|
|
1366
|
+
}
|
|
1367
|
+
}
|
|
1368
|
+
/** Resizes the shared full-page SVG overlay to match the current document size; call after layout changes that may affect `document.body`'s scroll size. A {@link layer}-hosted SVG just fills its host. */
|
|
1347
1369
|
invalidateSize() {
|
|
1348
1370
|
const svg = this._svg;
|
|
1349
|
-
if (
|
|
1350
|
-
|
|
1351
|
-
svg.setAttribute('height', document.body.scrollHeight.toString());
|
|
1371
|
+
if (pacemCore.Utils.isNull(svg)) {
|
|
1372
|
+
return;
|
|
1352
1373
|
}
|
|
1374
|
+
if (this._layered) {
|
|
1375
|
+
svg.setAttribute('width', '100%');
|
|
1376
|
+
svg.setAttribute('height', '100%');
|
|
1377
|
+
return;
|
|
1378
|
+
}
|
|
1379
|
+
svg.setAttribute('width', document.body.scrollWidth.toString());
|
|
1380
|
+
svg.setAttribute('height', document.body.scrollHeight.toString());
|
|
1381
|
+
}
|
|
1382
|
+
/** Page coordinates of the origin the curve is drawn against: the {@link layer}'s (scrolled) padding box, or the page itself. */
|
|
1383
|
+
_getOrigin() {
|
|
1384
|
+
if (!this._layered) {
|
|
1385
|
+
return { x: 0, y: 0 };
|
|
1386
|
+
}
|
|
1387
|
+
const layer = this.layer;
|
|
1388
|
+
const offset = pacemCore.Utils.offset(layer);
|
|
1389
|
+
return {
|
|
1390
|
+
x: offset.left + layer.clientLeft - layer.scrollLeft,
|
|
1391
|
+
y: offset.top + layer.clientTop - layer.scrollTop
|
|
1392
|
+
};
|
|
1393
|
+
}
|
|
1394
|
+
/** Translates a page-based layout into the coordinates of the drawing origin. */
|
|
1395
|
+
_toLocal(size, origin) {
|
|
1396
|
+
return { ...size, left: size.left - origin.x, top: size.top - origin.y };
|
|
1353
1397
|
}
|
|
1354
1398
|
_computeAnchorPoints(target, anchor, end, ref, refAnchor, refEnd, tension) {
|
|
1355
1399
|
var p1, p2, c1, c2;
|
|
@@ -1702,7 +1746,8 @@
|
|
|
1702
1746
|
path.setAttribute('d', '');
|
|
1703
1747
|
return;
|
|
1704
1748
|
}
|
|
1705
|
-
const
|
|
1749
|
+
const origin = this._getOrigin(), size1 = this._toLocal(state1.size, origin), size2 = this._toLocal(state2.size, origin);
|
|
1750
|
+
const { points, anchors } = this._computeAnchorPoints(size1, state1.anchor, this.fromEnd, size2, state2.anchor, this.toEnd, this.tension), p0 = points[0], c0 = points[1], p1 = points[2], c1 = points[3], anchor0 = anchors[0], anchor1 = anchors[1];
|
|
1706
1751
|
const x0 = p0.x;
|
|
1707
1752
|
const y0 = p0.y;
|
|
1708
1753
|
const cx0 = c0.x;
|
|
@@ -1798,6 +1843,9 @@
|
|
|
1798
1843
|
__decorate$y([
|
|
1799
1844
|
pacemCore.Watch({ emit: false, converter: pacemCore.PropertyConverters.Boolean })
|
|
1800
1845
|
], PacemBinderElement.prototype, "interactive", void 0);
|
|
1846
|
+
__decorate$y([
|
|
1847
|
+
pacemCore.Watch({ emit: false, converter: pacemCore.PropertyConverters.Element })
|
|
1848
|
+
], PacemBinderElement.prototype, "layer", void 0);
|
|
1801
1849
|
PacemBinderElement = __decorate$y([
|
|
1802
1850
|
pacemCore.CustomElement({ tagName: pacemCore.P + '-binder' })
|
|
1803
1851
|
], PacemBinderElement);
|