Commit
·
e102b76
1
Parent(s):
1e0dc91
Added references to Inference Providers usage dashboard
Browse files- dist/distill.bundle.js +126 -126
- dist/distill.bundle.js.map +0 -0
- dist/index.html +1 -1
- dist/main.bundle.js +92 -83
- dist/main.bundle.js.map +1 -1
dist/distill.bundle.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
/******/ (() => { // webpackBootstrap
|
2 |
/******/ var __webpack_modules__ = ({
|
3 |
|
4 |
-
/***/
|
5 |
/***/ ((module, exports, __webpack_require__) => {
|
6 |
|
7 |
var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;function _wrapNativeSuper(t) { var r = "function" == typeof Map ? new Map() : void 0; return _wrapNativeSuper = function _wrapNativeSuper(t) { if (null === t || !_isNativeFunction(t)) return t; if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function"); if (void 0 !== r) { if (r.has(t)) return r.get(t); r.set(t, Wrapper); } function Wrapper() { return _construct(t, arguments, _getPrototypeOf(this).constructor); } return Wrapper.prototype = Object.create(t.prototype, { constructor: { value: Wrapper, enumerable: !1, writable: !0, configurable: !0 } }), _setPrototypeOf(Wrapper, t); }, _wrapNativeSuper(t); }
|
@@ -1446,17 +1446,17 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
1446 |
_iterator9.f();
|
1447 |
}
|
1448 |
if (frontMatter.bibliographyParsed) {
|
1449 |
-
var
|
1450 |
-
|
1451 |
try {
|
1452 |
-
for (
|
1453 |
-
var waitingCallback =
|
1454 |
waitingCallback();
|
1455 |
}
|
1456 |
} catch (err) {
|
1457 |
-
|
1458 |
} finally {
|
1459 |
-
|
1460 |
}
|
1461 |
}
|
1462 |
var footnotesList = document.querySelector("d-footnote-list");
|
@@ -1563,17 +1563,17 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
1563 |
}
|
1564 |
};
|
1565 |
// Add polyfill script tags
|
1566 |
-
var
|
1567 |
-
|
1568 |
try {
|
1569 |
-
for (
|
1570 |
-
var polyfill =
|
1571 |
addPolyfill(polyfill, polyfillLoaded);
|
1572 |
}
|
1573 |
} catch (err) {
|
1574 |
-
|
1575 |
} finally {
|
1576 |
-
|
1577 |
}
|
1578 |
}
|
1579 |
}, {
|
@@ -1657,16 +1657,16 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
1657 |
_classCallCheck(this, Article);
|
1658 |
_this5 = _callSuper(this, Article);
|
1659 |
new MutationObserver(function (mutations) {
|
1660 |
-
var
|
1661 |
-
|
1662 |
try {
|
1663 |
-
for (
|
1664 |
-
var mutation =
|
1665 |
-
var
|
1666 |
-
|
1667 |
try {
|
1668 |
-
for (
|
1669 |
-
var addedNode =
|
1670 |
switch (addedNode.nodeName) {
|
1671 |
case '#text':
|
1672 |
{
|
@@ -1684,15 +1684,15 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
1684 |
}
|
1685 |
}
|
1686 |
} catch (err) {
|
1687 |
-
|
1688 |
} finally {
|
1689 |
-
|
1690 |
}
|
1691 |
}
|
1692 |
} catch (err) {
|
1693 |
-
|
1694 |
} finally {
|
1695 |
-
|
1696 |
}
|
1697 |
}).observe(_this5, {
|
1698 |
childList: true
|
@@ -1998,11 +1998,11 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
1998 |
function parseBibtex(bibtex) {
|
1999 |
var bibliography = new Map();
|
2000 |
var parsedEntries = bibtexParse.toJSON(bibtex);
|
2001 |
-
var
|
2002 |
-
|
2003 |
try {
|
2004 |
-
for (
|
2005 |
-
var entry =
|
2006 |
// normalize tags; note entryTags is an object, not Map
|
2007 |
for (var _i = 0, _Object$entries = Object.entries(entry.entryTags); _i < _Object$entries.length; _i++) {
|
2008 |
var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
|
@@ -2015,9 +2015,9 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
2015 |
bibliography.set(entry.citationKey, entry.entryTags);
|
2016 |
}
|
2017 |
} catch (err) {
|
2018 |
-
|
2019 |
} finally {
|
2020 |
-
|
2021 |
}
|
2022 |
return bibliography;
|
2023 |
}
|
@@ -2039,19 +2039,19 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
2039 |
subtree: true
|
2040 |
};
|
2041 |
var observer = new MutationObserver(function (entries) {
|
2042 |
-
var
|
2043 |
-
|
2044 |
try {
|
2045 |
-
for (
|
2046 |
-
var entry =
|
2047 |
if (entry.target.nodeName === 'SCRIPT' || entry.type === 'characterData') {
|
2048 |
_this6.parseIfPossible();
|
2049 |
}
|
2050 |
}
|
2051 |
} catch (err) {
|
2052 |
-
|
2053 |
} finally {
|
2054 |
-
|
2055 |
}
|
2056 |
});
|
2057 |
observer.observe(_this6, options);
|
@@ -2181,12 +2181,12 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
2181 |
return _createClass(Cite, [{
|
2182 |
key: "connectedCallback",
|
2183 |
value: function connectedCallback() {
|
2184 |
-
var
|
2185 |
this.outerSpan = this.root.querySelector("#citation-");
|
2186 |
this.innerSpan = this.root.querySelector(".citation-number");
|
2187 |
this.hoverBox = this.root.querySelector("d-hover-box");
|
2188 |
window.customElements.whenDefined("d-hover-box").then(function () {
|
2189 |
-
|
2190 |
});
|
2191 |
// in case this component got connected after values were set
|
2192 |
if (this.numbers) {
|
@@ -2301,22 +2301,22 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
2301 |
list.className = 'references';
|
2302 |
element.appendChild(list);
|
2303 |
}
|
2304 |
-
var
|
2305 |
-
|
2306 |
try {
|
2307 |
-
for (
|
2308 |
-
var
|
2309 |
-
key =
|
2310 |
-
entry =
|
2311 |
var listItem = dom.createElement('li');
|
2312 |
listItem.id = key;
|
2313 |
listItem.innerHTML = bibliography_cite(entry);
|
2314 |
list.appendChild(listItem);
|
2315 |
}
|
2316 |
} catch (err) {
|
2317 |
-
|
2318 |
} finally {
|
2319 |
-
|
2320 |
}
|
2321 |
} else {
|
2322 |
element.style.display = 'none';
|
@@ -3992,17 +3992,17 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
3992 |
var T$5 = Template('d-footnote', "\n<style>\n\nd-math[block] {\n display: block;\n}\n\n:host {\n\n}\n\nsup {\n line-height: 1em;\n font-size: 0.75em;\n position: relative;\n top: -.5em;\n vertical-align: baseline;\n}\n\nspan {\n color: hsla(206, 90%, 20%, 0.7);\n cursor: default;\n}\n\n.footnote-container {\n padding: 10px;\n}\n\n</style>\n\n<d-hover-box>\n <div class=\"footnote-container\">\n <slot id=\"slot\"></slot>\n </div>\n</d-hover-box>\n\n<sup>\n <span id=\"fn-\" data-hover-ref=\"\"></span>\n</sup>\n\n");
|
3993 |
var Footnote = /*#__PURE__*/function (_T$4) {
|
3994 |
function Footnote() {
|
3995 |
-
var
|
3996 |
_classCallCheck(this, Footnote);
|
3997 |
-
|
3998 |
var options = {
|
3999 |
childList: true,
|
4000 |
characterData: true,
|
4001 |
subtree: true
|
4002 |
};
|
4003 |
-
var observer = new MutationObserver(
|
4004 |
-
observer.observe(
|
4005 |
-
return
|
4006 |
}
|
4007 |
_inherits(Footnote, _T$4);
|
4008 |
return _createClass(Footnote, [{
|
@@ -4018,14 +4018,14 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4018 |
}, {
|
4019 |
key: "connectedCallback",
|
4020 |
value: function connectedCallback() {
|
4021 |
-
var
|
4022 |
// listen and notify about changes to slotted content
|
4023 |
// const slot = this.shadowRoot.querySelector('#slot');
|
4024 |
// console.warn(slot.textContent);
|
4025 |
// slot.addEventListener('slotchange', this.notify);
|
4026 |
this.hoverBox = this.root.querySelector('d-hover-box');
|
4027 |
window.customElements.whenDefined('d-hover-box').then(function () {
|
4028 |
-
|
4029 |
});
|
4030 |
// create numeric ID
|
4031 |
Footnote.currentFootnoteId += 1;
|
@@ -4076,11 +4076,11 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4076 |
if (footnotes.length) {
|
4077 |
// ensure footnote list is visible
|
4078 |
this.root.style.display = '';
|
4079 |
-
var
|
4080 |
-
|
4081 |
try {
|
4082 |
-
for (
|
4083 |
-
var footnote =
|
4084 |
// construct and append list item to show footnote
|
4085 |
var listItem = document.createElement('li');
|
4086 |
listItem.id = footnote.id + '-listing';
|
@@ -4094,9 +4094,9 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4094 |
this.list.appendChild(listItem);
|
4095 |
}
|
4096 |
} catch (err) {
|
4097 |
-
|
4098 |
} finally {
|
4099 |
-
|
4100 |
}
|
4101 |
} else {
|
4102 |
// ensure footnote list is invisible
|
@@ -4126,14 +4126,14 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4126 |
}, {
|
4127 |
key: "bindDivEvents",
|
4128 |
value: function bindDivEvents(element) {
|
4129 |
-
var
|
4130 |
// For mice, same behavior as hovering on links
|
4131 |
element.addEventListener('mouseover', function () {
|
4132 |
-
if (!
|
4133 |
-
|
4134 |
});
|
4135 |
element.addEventListener('mouseout', function () {
|
4136 |
-
|
4137 |
});
|
4138 |
// Don't trigger body touchstart event when touching within box
|
4139 |
element.addEventListener('touchstart', function (event) {
|
@@ -4143,7 +4143,7 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4143 |
});
|
4144 |
// Close box when touching outside box
|
4145 |
document.body.addEventListener('touchstart', function () {
|
4146 |
-
|
4147 |
}, {
|
4148 |
passive: true
|
4149 |
});
|
@@ -4151,21 +4151,21 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4151 |
}, {
|
4152 |
key: "bindTriggerEvents",
|
4153 |
value: function bindTriggerEvents(node) {
|
4154 |
-
var
|
4155 |
node.addEventListener('mouseover', function () {
|
4156 |
-
if (!
|
4157 |
-
|
4158 |
}
|
4159 |
-
|
4160 |
});
|
4161 |
node.addEventListener('mouseout', function () {
|
4162 |
-
|
4163 |
});
|
4164 |
node.addEventListener('touchstart', function (event) {
|
4165 |
-
if (
|
4166 |
-
|
4167 |
} else {
|
4168 |
-
|
4169 |
}
|
4170 |
// Don't trigger body touchstart event when touching link
|
4171 |
event.stopPropagation();
|
@@ -4205,10 +4205,10 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4205 |
}, {
|
4206 |
key: "extendTimeout",
|
4207 |
value: function extendTimeout(time) {
|
4208 |
-
var
|
4209 |
this.stopTimeout();
|
4210 |
this.timeout = setTimeout(function () {
|
4211 |
-
|
4212 |
}, time);
|
4213 |
}
|
4214 |
}]);
|
@@ -4268,12 +4268,12 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4268 |
return _createClass(TOC, [{
|
4269 |
key: "connectedCallback",
|
4270 |
value: function connectedCallback() {
|
4271 |
-
var
|
4272 |
if (!this.getAttribute('prerendered')) {
|
4273 |
window.onload = function () {
|
4274 |
var article = document.querySelector('d-article');
|
4275 |
var headings = article.querySelectorAll('h2, h3');
|
4276 |
-
renderTOC(
|
4277 |
};
|
4278 |
}
|
4279 |
}
|
@@ -4286,11 +4286,11 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4286 |
}(/*#__PURE__*/_wrapNativeSuper(HTMLElement));
|
4287 |
function renderTOC(element, headings) {
|
4288 |
var ToC = "\n <style>\n\n d-toc {\n contain: layout style;\n display: block;\n }\n\n d-toc ul {\n padding-left: 0;\n }\n\n d-toc ul > ul {\n padding-left: 24px;\n }\n\n d-toc a {\n border-bottom: none;\n text-decoration: none;\n }\n\n </style>\n <nav role=\"navigation\" class=\"table-of-contents\"></nav>\n <h2>Table of contents</h2>\n <ul>";
|
4289 |
-
var
|
4290 |
-
|
4291 |
try {
|
4292 |
-
for (
|
4293 |
-
var el =
|
4294 |
// should element be included in TOC?
|
4295 |
var isInTitle = el.parentElement.tagName == 'D-TITLE';
|
4296 |
var isException = el.getAttribute('no-toc');
|
@@ -4307,9 +4307,9 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4307 |
ToC += newLine;
|
4308 |
}
|
4309 |
} catch (err) {
|
4310 |
-
|
4311 |
} finally {
|
4312 |
-
|
4313 |
}
|
4314 |
ToC += '</ul></nav>';
|
4315 |
element.innerHTML = ToC;
|
@@ -4345,14 +4345,14 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4345 |
//
|
4346 |
var Figure = /*#__PURE__*/function (_HTMLElement8) {
|
4347 |
function Figure() {
|
4348 |
-
var
|
4349 |
_classCallCheck(this, Figure);
|
4350 |
-
|
4351 |
// debugger
|
4352 |
-
|
4353 |
-
|
4354 |
-
|
4355 |
-
return
|
4356 |
}
|
4357 |
_inherits(Figure, _HTMLElement8);
|
4358 |
return _createClass(Figure, [{
|
@@ -4477,20 +4477,20 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4477 |
}, {
|
4478 |
key: "didObserveMarginIntersection",
|
4479 |
value: function didObserveMarginIntersection(entries) {
|
4480 |
-
var
|
4481 |
-
|
4482 |
try {
|
4483 |
-
for (
|
4484 |
-
var entry =
|
4485 |
var figure = entry.target;
|
4486 |
if (entry.isIntersecting && !figure._ready) {
|
4487 |
Figure.addToReadyQueue(figure);
|
4488 |
}
|
4489 |
}
|
4490 |
} catch (err) {
|
4491 |
-
|
4492 |
} finally {
|
4493 |
-
|
4494 |
}
|
4495 |
}
|
4496 |
}, {
|
@@ -4507,11 +4507,11 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4507 |
}, {
|
4508 |
key: "didObserveDirectIntersection",
|
4509 |
value: function didObserveDirectIntersection(entries) {
|
4510 |
-
var
|
4511 |
-
|
4512 |
try {
|
4513 |
-
for (
|
4514 |
-
var entry =
|
4515 |
var figure = entry.target;
|
4516 |
if (entry.isIntersecting) {
|
4517 |
figure._seenOnScreen = new Date();
|
@@ -4526,9 +4526,9 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4526 |
}
|
4527 |
}
|
4528 |
} catch (err) {
|
4529 |
-
|
4530 |
} finally {
|
4531 |
-
|
4532 |
}
|
4533 |
}
|
4534 |
}]);
|
@@ -4563,13 +4563,13 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
4563 |
return _createClass(Interstitial, [{
|
4564 |
key: "connectedCallback",
|
4565 |
value: function connectedCallback() {
|
4566 |
-
var
|
4567 |
if (this.shouldRemoveSelf()) {
|
4568 |
this.parentElement.removeChild(this);
|
4569 |
} else {
|
4570 |
var passwordInput = this.root.querySelector('#interstitial-password-input');
|
4571 |
passwordInput.oninput = function (event) {
|
4572 |
-
return
|
4573 |
};
|
4574 |
}
|
4575 |
}
|
@@ -7813,7 +7813,7 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
7813 |
return _createClass(Slider, [{
|
7814 |
key: "connectedCallback",
|
7815 |
value: function connectedCallback() {
|
7816 |
-
var
|
7817 |
this.connected = true;
|
7818 |
this.setAttribute('role', 'slider');
|
7819 |
// Makes the element tab-able.
|
@@ -7840,27 +7840,27 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
7840 |
this.ticks = this.ticks ? this.ticks : false;
|
7841 |
this.renderTicks();
|
7842 |
this.drag = drag().container(this.background).on('start', function () {
|
7843 |
-
|
7844 |
-
|
7845 |
-
|
7846 |
-
|
7847 |
}).on('drag', function () {
|
7848 |
-
|
7849 |
}).on('end', function () {
|
7850 |
-
|
7851 |
-
|
7852 |
-
|
7853 |
-
if (
|
7854 |
-
|
7855 |
});
|
7856 |
this.drag(select(this.background));
|
7857 |
this.addEventListener('focusin', function () {
|
7858 |
-
if (!
|
7859 |
-
|
7860 |
}
|
7861 |
});
|
7862 |
this.addEventListener('focusout', function () {
|
7863 |
-
|
7864 |
});
|
7865 |
this.addEventListener('keydown', this.onKeyDown);
|
7866 |
}
|
@@ -7988,7 +7988,7 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
7988 |
}, {
|
7989 |
key: "renderTicks",
|
7990 |
value: function renderTicks() {
|
7991 |
-
var
|
7992 |
var ticksContainer = this.root.querySelector('.ticks');
|
7993 |
if (this.ticks !== false) {
|
7994 |
var tickData = [];
|
@@ -8002,7 +8002,7 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
8002 |
tickData.forEach(function (d) {
|
8003 |
var tick = document.createElement('div');
|
8004 |
tick.classList.add('tick');
|
8005 |
-
tick.style.left =
|
8006 |
ticksContainer.appendChild(tick);
|
8007 |
});
|
8008 |
} else {
|
@@ -8124,18 +8124,18 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
8124 |
throw new Error("Insufficient Runlevel for adding custom elements!");
|
8125 |
}
|
8126 |
var allComponents = components.concat(distillComponents);
|
8127 |
-
var
|
8128 |
-
|
8129 |
try {
|
8130 |
-
for (
|
8131 |
-
var component =
|
8132 |
console.debug("Runlevel 2: Registering custom element: " + component.is);
|
8133 |
customElements.define(component.is, component);
|
8134 |
}
|
8135 |
} catch (err) {
|
8136 |
-
|
8137 |
} finally {
|
8138 |
-
|
8139 |
}
|
8140 |
console.debug("Runlevel 3: Distill Template finished registering custom elements.");
|
8141 |
console.debug("Runlevel 3->4.");
|
@@ -8214,7 +8214,7 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
8214 |
/******/ // startup
|
8215 |
/******/ // Load entry module and return exports
|
8216 |
/******/ // This entry module used 'module' so it can't be inlined
|
8217 |
-
/******/ var __webpack_exports__ = __webpack_require__(
|
8218 |
/******/
|
8219 |
/******/ })()
|
8220 |
;
|
|
|
1 |
/******/ (() => { // webpackBootstrap
|
2 |
/******/ var __webpack_modules__ = ({
|
3 |
|
4 |
+
/***/ 792:
|
5 |
/***/ ((module, exports, __webpack_require__) => {
|
6 |
|
7 |
var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;function _wrapNativeSuper(t) { var r = "function" == typeof Map ? new Map() : void 0; return _wrapNativeSuper = function _wrapNativeSuper(t) { if (null === t || !_isNativeFunction(t)) return t; if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function"); if (void 0 !== r) { if (r.has(t)) return r.get(t); r.set(t, Wrapper); } function Wrapper() { return _construct(t, arguments, _getPrototypeOf(this).constructor); } return Wrapper.prototype = Object.create(t.prototype, { constructor: { value: Wrapper, enumerable: !1, writable: !0, configurable: !0 } }), _setPrototypeOf(Wrapper, t); }, _wrapNativeSuper(t); }
|
|
|
1446 |
_iterator9.f();
|
1447 |
}
|
1448 |
if (frontMatter.bibliographyParsed) {
|
1449 |
+
var _iterator10 = _createForOfIteratorHelper(Controller.waitingOn.bibliography.slice()),
|
1450 |
+
_step10;
|
1451 |
try {
|
1452 |
+
for (_iterator10.s(); !(_step10 = _iterator10.n()).done;) {
|
1453 |
+
var waitingCallback = _step10.value;
|
1454 |
waitingCallback();
|
1455 |
}
|
1456 |
} catch (err) {
|
1457 |
+
_iterator10.e(err);
|
1458 |
} finally {
|
1459 |
+
_iterator10.f();
|
1460 |
}
|
1461 |
}
|
1462 |
var footnotesList = document.querySelector("d-footnote-list");
|
|
|
1563 |
}
|
1564 |
};
|
1565 |
// Add polyfill script tags
|
1566 |
+
var _iterator11 = _createForOfIteratorHelper(Polyfills.neededPolyfills),
|
1567 |
+
_step11;
|
1568 |
try {
|
1569 |
+
for (_iterator11.s(); !(_step11 = _iterator11.n()).done;) {
|
1570 |
+
var polyfill = _step11.value;
|
1571 |
addPolyfill(polyfill, polyfillLoaded);
|
1572 |
}
|
1573 |
} catch (err) {
|
1574 |
+
_iterator11.e(err);
|
1575 |
} finally {
|
1576 |
+
_iterator11.f();
|
1577 |
}
|
1578 |
}
|
1579 |
}, {
|
|
|
1657 |
_classCallCheck(this, Article);
|
1658 |
_this5 = _callSuper(this, Article);
|
1659 |
new MutationObserver(function (mutations) {
|
1660 |
+
var _iterator12 = _createForOfIteratorHelper(mutations),
|
1661 |
+
_step12;
|
1662 |
try {
|
1663 |
+
for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) {
|
1664 |
+
var mutation = _step12.value;
|
1665 |
+
var _iterator13 = _createForOfIteratorHelper(mutation.addedNodes),
|
1666 |
+
_step13;
|
1667 |
try {
|
1668 |
+
for (_iterator13.s(); !(_step13 = _iterator13.n()).done;) {
|
1669 |
+
var addedNode = _step13.value;
|
1670 |
switch (addedNode.nodeName) {
|
1671 |
case '#text':
|
1672 |
{
|
|
|
1684 |
}
|
1685 |
}
|
1686 |
} catch (err) {
|
1687 |
+
_iterator13.e(err);
|
1688 |
} finally {
|
1689 |
+
_iterator13.f();
|
1690 |
}
|
1691 |
}
|
1692 |
} catch (err) {
|
1693 |
+
_iterator12.e(err);
|
1694 |
} finally {
|
1695 |
+
_iterator12.f();
|
1696 |
}
|
1697 |
}).observe(_this5, {
|
1698 |
childList: true
|
|
|
1998 |
function parseBibtex(bibtex) {
|
1999 |
var bibliography = new Map();
|
2000 |
var parsedEntries = bibtexParse.toJSON(bibtex);
|
2001 |
+
var _iterator14 = _createForOfIteratorHelper(parsedEntries),
|
2002 |
+
_step14;
|
2003 |
try {
|
2004 |
+
for (_iterator14.s(); !(_step14 = _iterator14.n()).done;) {
|
2005 |
+
var entry = _step14.value;
|
2006 |
// normalize tags; note entryTags is an object, not Map
|
2007 |
for (var _i = 0, _Object$entries = Object.entries(entry.entryTags); _i < _Object$entries.length; _i++) {
|
2008 |
var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
|
|
|
2015 |
bibliography.set(entry.citationKey, entry.entryTags);
|
2016 |
}
|
2017 |
} catch (err) {
|
2018 |
+
_iterator14.e(err);
|
2019 |
} finally {
|
2020 |
+
_iterator14.f();
|
2021 |
}
|
2022 |
return bibliography;
|
2023 |
}
|
|
|
2039 |
subtree: true
|
2040 |
};
|
2041 |
var observer = new MutationObserver(function (entries) {
|
2042 |
+
var _iterator15 = _createForOfIteratorHelper(entries),
|
2043 |
+
_step15;
|
2044 |
try {
|
2045 |
+
for (_iterator15.s(); !(_step15 = _iterator15.n()).done;) {
|
2046 |
+
var entry = _step15.value;
|
2047 |
if (entry.target.nodeName === 'SCRIPT' || entry.type === 'characterData') {
|
2048 |
_this6.parseIfPossible();
|
2049 |
}
|
2050 |
}
|
2051 |
} catch (err) {
|
2052 |
+
_iterator15.e(err);
|
2053 |
} finally {
|
2054 |
+
_iterator15.f();
|
2055 |
}
|
2056 |
});
|
2057 |
observer.observe(_this6, options);
|
|
|
2181 |
return _createClass(Cite, [{
|
2182 |
key: "connectedCallback",
|
2183 |
value: function connectedCallback() {
|
2184 |
+
var _this10 = this;
|
2185 |
this.outerSpan = this.root.querySelector("#citation-");
|
2186 |
this.innerSpan = this.root.querySelector(".citation-number");
|
2187 |
this.hoverBox = this.root.querySelector("d-hover-box");
|
2188 |
window.customElements.whenDefined("d-hover-box").then(function () {
|
2189 |
+
_this10.hoverBox.listen(_this10);
|
2190 |
});
|
2191 |
// in case this component got connected after values were set
|
2192 |
if (this.numbers) {
|
|
|
2301 |
list.className = 'references';
|
2302 |
element.appendChild(list);
|
2303 |
}
|
2304 |
+
var _iterator16 = _createForOfIteratorHelper(entries),
|
2305 |
+
_step16;
|
2306 |
try {
|
2307 |
+
for (_iterator16.s(); !(_step16 = _iterator16.n()).done;) {
|
2308 |
+
var _step16$value = _slicedToArray(_step16.value, 2),
|
2309 |
+
key = _step16$value[0],
|
2310 |
+
entry = _step16$value[1];
|
2311 |
var listItem = dom.createElement('li');
|
2312 |
listItem.id = key;
|
2313 |
listItem.innerHTML = bibliography_cite(entry);
|
2314 |
list.appendChild(listItem);
|
2315 |
}
|
2316 |
} catch (err) {
|
2317 |
+
_iterator16.e(err);
|
2318 |
} finally {
|
2319 |
+
_iterator16.f();
|
2320 |
}
|
2321 |
} else {
|
2322 |
element.style.display = 'none';
|
|
|
3992 |
var T$5 = Template('d-footnote', "\n<style>\n\nd-math[block] {\n display: block;\n}\n\n:host {\n\n}\n\nsup {\n line-height: 1em;\n font-size: 0.75em;\n position: relative;\n top: -.5em;\n vertical-align: baseline;\n}\n\nspan {\n color: hsla(206, 90%, 20%, 0.7);\n cursor: default;\n}\n\n.footnote-container {\n padding: 10px;\n}\n\n</style>\n\n<d-hover-box>\n <div class=\"footnote-container\">\n <slot id=\"slot\"></slot>\n </div>\n</d-hover-box>\n\n<sup>\n <span id=\"fn-\" data-hover-ref=\"\"></span>\n</sup>\n\n");
|
3993 |
var Footnote = /*#__PURE__*/function (_T$4) {
|
3994 |
function Footnote() {
|
3995 |
+
var _this11;
|
3996 |
_classCallCheck(this, Footnote);
|
3997 |
+
_this11 = _callSuper(this, Footnote);
|
3998 |
var options = {
|
3999 |
childList: true,
|
4000 |
characterData: true,
|
4001 |
subtree: true
|
4002 |
};
|
4003 |
+
var observer = new MutationObserver(_this11.notify);
|
4004 |
+
observer.observe(_this11, options);
|
4005 |
+
return _this11;
|
4006 |
}
|
4007 |
_inherits(Footnote, _T$4);
|
4008 |
return _createClass(Footnote, [{
|
|
|
4018 |
}, {
|
4019 |
key: "connectedCallback",
|
4020 |
value: function connectedCallback() {
|
4021 |
+
var _this12 = this;
|
4022 |
// listen and notify about changes to slotted content
|
4023 |
// const slot = this.shadowRoot.querySelector('#slot');
|
4024 |
// console.warn(slot.textContent);
|
4025 |
// slot.addEventListener('slotchange', this.notify);
|
4026 |
this.hoverBox = this.root.querySelector('d-hover-box');
|
4027 |
window.customElements.whenDefined('d-hover-box').then(function () {
|
4028 |
+
_this12.hoverBox.listen(_this12);
|
4029 |
});
|
4030 |
// create numeric ID
|
4031 |
Footnote.currentFootnoteId += 1;
|
|
|
4076 |
if (footnotes.length) {
|
4077 |
// ensure footnote list is visible
|
4078 |
this.root.style.display = '';
|
4079 |
+
var _iterator17 = _createForOfIteratorHelper(footnotes),
|
4080 |
+
_step17;
|
4081 |
try {
|
4082 |
+
for (_iterator17.s(); !(_step17 = _iterator17.n()).done;) {
|
4083 |
+
var footnote = _step17.value;
|
4084 |
// construct and append list item to show footnote
|
4085 |
var listItem = document.createElement('li');
|
4086 |
listItem.id = footnote.id + '-listing';
|
|
|
4094 |
this.list.appendChild(listItem);
|
4095 |
}
|
4096 |
} catch (err) {
|
4097 |
+
_iterator17.e(err);
|
4098 |
} finally {
|
4099 |
+
_iterator17.f();
|
4100 |
}
|
4101 |
} else {
|
4102 |
// ensure footnote list is invisible
|
|
|
4126 |
}, {
|
4127 |
key: "bindDivEvents",
|
4128 |
value: function bindDivEvents(element) {
|
4129 |
+
var _this13 = this;
|
4130 |
// For mice, same behavior as hovering on links
|
4131 |
element.addEventListener('mouseover', function () {
|
4132 |
+
if (!_this13.visible) _this13.showAtNode(element);
|
4133 |
+
_this13.stopTimeout();
|
4134 |
});
|
4135 |
element.addEventListener('mouseout', function () {
|
4136 |
+
_this13.extendTimeout(500);
|
4137 |
});
|
4138 |
// Don't trigger body touchstart event when touching within box
|
4139 |
element.addEventListener('touchstart', function (event) {
|
|
|
4143 |
});
|
4144 |
// Close box when touching outside box
|
4145 |
document.body.addEventListener('touchstart', function () {
|
4146 |
+
_this13.hide();
|
4147 |
}, {
|
4148 |
passive: true
|
4149 |
});
|
|
|
4151 |
}, {
|
4152 |
key: "bindTriggerEvents",
|
4153 |
value: function bindTriggerEvents(node) {
|
4154 |
+
var _this14 = this;
|
4155 |
node.addEventListener('mouseover', function () {
|
4156 |
+
if (!_this14.visible) {
|
4157 |
+
_this14.showAtNode(node);
|
4158 |
}
|
4159 |
+
_this14.stopTimeout();
|
4160 |
});
|
4161 |
node.addEventListener('mouseout', function () {
|
4162 |
+
_this14.extendTimeout(300);
|
4163 |
});
|
4164 |
node.addEventListener('touchstart', function (event) {
|
4165 |
+
if (_this14.visible) {
|
4166 |
+
_this14.hide();
|
4167 |
} else {
|
4168 |
+
_this14.showAtNode(node);
|
4169 |
}
|
4170 |
// Don't trigger body touchstart event when touching link
|
4171 |
event.stopPropagation();
|
|
|
4205 |
}, {
|
4206 |
key: "extendTimeout",
|
4207 |
value: function extendTimeout(time) {
|
4208 |
+
var _this15 = this;
|
4209 |
this.stopTimeout();
|
4210 |
this.timeout = setTimeout(function () {
|
4211 |
+
_this15.hide();
|
4212 |
}, time);
|
4213 |
}
|
4214 |
}]);
|
|
|
4268 |
return _createClass(TOC, [{
|
4269 |
key: "connectedCallback",
|
4270 |
value: function connectedCallback() {
|
4271 |
+
var _this16 = this;
|
4272 |
if (!this.getAttribute('prerendered')) {
|
4273 |
window.onload = function () {
|
4274 |
var article = document.querySelector('d-article');
|
4275 |
var headings = article.querySelectorAll('h2, h3');
|
4276 |
+
renderTOC(_this16, headings);
|
4277 |
};
|
4278 |
}
|
4279 |
}
|
|
|
4286 |
}(/*#__PURE__*/_wrapNativeSuper(HTMLElement));
|
4287 |
function renderTOC(element, headings) {
|
4288 |
var ToC = "\n <style>\n\n d-toc {\n contain: layout style;\n display: block;\n }\n\n d-toc ul {\n padding-left: 0;\n }\n\n d-toc ul > ul {\n padding-left: 24px;\n }\n\n d-toc a {\n border-bottom: none;\n text-decoration: none;\n }\n\n </style>\n <nav role=\"navigation\" class=\"table-of-contents\"></nav>\n <h2>Table of contents</h2>\n <ul>";
|
4289 |
+
var _iterator18 = _createForOfIteratorHelper(headings),
|
4290 |
+
_step18;
|
4291 |
try {
|
4292 |
+
for (_iterator18.s(); !(_step18 = _iterator18.n()).done;) {
|
4293 |
+
var el = _step18.value;
|
4294 |
// should element be included in TOC?
|
4295 |
var isInTitle = el.parentElement.tagName == 'D-TITLE';
|
4296 |
var isException = el.getAttribute('no-toc');
|
|
|
4307 |
ToC += newLine;
|
4308 |
}
|
4309 |
} catch (err) {
|
4310 |
+
_iterator18.e(err);
|
4311 |
} finally {
|
4312 |
+
_iterator18.f();
|
4313 |
}
|
4314 |
ToC += '</ul></nav>';
|
4315 |
element.innerHTML = ToC;
|
|
|
4345 |
//
|
4346 |
var Figure = /*#__PURE__*/function (_HTMLElement8) {
|
4347 |
function Figure() {
|
4348 |
+
var _this17;
|
4349 |
_classCallCheck(this, Figure);
|
4350 |
+
_this17 = _callSuper(this, Figure);
|
4351 |
// debugger
|
4352 |
+
_this17._ready = false;
|
4353 |
+
_this17._onscreen = false;
|
4354 |
+
_this17._offscreen = true;
|
4355 |
+
return _this17;
|
4356 |
}
|
4357 |
_inherits(Figure, _HTMLElement8);
|
4358 |
return _createClass(Figure, [{
|
|
|
4477 |
}, {
|
4478 |
key: "didObserveMarginIntersection",
|
4479 |
value: function didObserveMarginIntersection(entries) {
|
4480 |
+
var _iterator19 = _createForOfIteratorHelper(entries),
|
4481 |
+
_step19;
|
4482 |
try {
|
4483 |
+
for (_iterator19.s(); !(_step19 = _iterator19.n()).done;) {
|
4484 |
+
var entry = _step19.value;
|
4485 |
var figure = entry.target;
|
4486 |
if (entry.isIntersecting && !figure._ready) {
|
4487 |
Figure.addToReadyQueue(figure);
|
4488 |
}
|
4489 |
}
|
4490 |
} catch (err) {
|
4491 |
+
_iterator19.e(err);
|
4492 |
} finally {
|
4493 |
+
_iterator19.f();
|
4494 |
}
|
4495 |
}
|
4496 |
}, {
|
|
|
4507 |
}, {
|
4508 |
key: "didObserveDirectIntersection",
|
4509 |
value: function didObserveDirectIntersection(entries) {
|
4510 |
+
var _iterator20 = _createForOfIteratorHelper(entries),
|
4511 |
+
_step20;
|
4512 |
try {
|
4513 |
+
for (_iterator20.s(); !(_step20 = _iterator20.n()).done;) {
|
4514 |
+
var entry = _step20.value;
|
4515 |
var figure = entry.target;
|
4516 |
if (entry.isIntersecting) {
|
4517 |
figure._seenOnScreen = new Date();
|
|
|
4526 |
}
|
4527 |
}
|
4528 |
} catch (err) {
|
4529 |
+
_iterator20.e(err);
|
4530 |
} finally {
|
4531 |
+
_iterator20.f();
|
4532 |
}
|
4533 |
}
|
4534 |
}]);
|
|
|
4563 |
return _createClass(Interstitial, [{
|
4564 |
key: "connectedCallback",
|
4565 |
value: function connectedCallback() {
|
4566 |
+
var _this18 = this;
|
4567 |
if (this.shouldRemoveSelf()) {
|
4568 |
this.parentElement.removeChild(this);
|
4569 |
} else {
|
4570 |
var passwordInput = this.root.querySelector('#interstitial-password-input');
|
4571 |
passwordInput.oninput = function (event) {
|
4572 |
+
return _this18.passwordChanged(event);
|
4573 |
};
|
4574 |
}
|
4575 |
}
|
|
|
7813 |
return _createClass(Slider, [{
|
7814 |
key: "connectedCallback",
|
7815 |
value: function connectedCallback() {
|
7816 |
+
var _this19 = this;
|
7817 |
this.connected = true;
|
7818 |
this.setAttribute('role', 'slider');
|
7819 |
// Makes the element tab-able.
|
|
|
7840 |
this.ticks = this.ticks ? this.ticks : false;
|
7841 |
this.renderTicks();
|
7842 |
this.drag = drag().container(this.background).on('start', function () {
|
7843 |
+
_this19.mouseEvent = true;
|
7844 |
+
_this19.background.classList.add('mousedown');
|
7845 |
+
_this19.changeValue = _this19.value;
|
7846 |
+
_this19.dragUpdate();
|
7847 |
}).on('drag', function () {
|
7848 |
+
_this19.dragUpdate();
|
7849 |
}).on('end', function () {
|
7850 |
+
_this19.mouseEvent = false;
|
7851 |
+
_this19.background.classList.remove('mousedown');
|
7852 |
+
_this19.dragUpdate();
|
7853 |
+
if (_this19.changeValue !== _this19.value) _this19.dispatchChange();
|
7854 |
+
_this19.changeValue = _this19.value;
|
7855 |
});
|
7856 |
this.drag(select(this.background));
|
7857 |
this.addEventListener('focusin', function () {
|
7858 |
+
if (!_this19.mouseEvent) {
|
7859 |
+
_this19.background.classList.add('focus');
|
7860 |
}
|
7861 |
});
|
7862 |
this.addEventListener('focusout', function () {
|
7863 |
+
_this19.background.classList.remove('focus');
|
7864 |
});
|
7865 |
this.addEventListener('keydown', this.onKeyDown);
|
7866 |
}
|
|
|
7988 |
}, {
|
7989 |
key: "renderTicks",
|
7990 |
value: function renderTicks() {
|
7991 |
+
var _this20 = this;
|
7992 |
var ticksContainer = this.root.querySelector('.ticks');
|
7993 |
if (this.ticks !== false) {
|
7994 |
var tickData = [];
|
|
|
8002 |
tickData.forEach(function (d) {
|
8003 |
var tick = document.createElement('div');
|
8004 |
tick.classList.add('tick');
|
8005 |
+
tick.style.left = _this20.scale(d) * 100 + '%';
|
8006 |
ticksContainer.appendChild(tick);
|
8007 |
});
|
8008 |
} else {
|
|
|
8124 |
throw new Error("Insufficient Runlevel for adding custom elements!");
|
8125 |
}
|
8126 |
var allComponents = components.concat(distillComponents);
|
8127 |
+
var _iterator21 = _createForOfIteratorHelper(allComponents),
|
8128 |
+
_step21;
|
8129 |
try {
|
8130 |
+
for (_iterator21.s(); !(_step21 = _iterator21.n()).done;) {
|
8131 |
+
var component = _step21.value;
|
8132 |
console.debug("Runlevel 2: Registering custom element: " + component.is);
|
8133 |
customElements.define(component.is, component);
|
8134 |
}
|
8135 |
} catch (err) {
|
8136 |
+
_iterator21.e(err);
|
8137 |
} finally {
|
8138 |
+
_iterator21.f();
|
8139 |
}
|
8140 |
console.debug("Runlevel 3: Distill Template finished registering custom elements.");
|
8141 |
console.debug("Runlevel 3->4.");
|
|
|
8214 |
/******/ // startup
|
8215 |
/******/ // Load entry module and return exports
|
8216 |
/******/ // This entry module used 'module' so it can't be inlined
|
8217 |
+
/******/ var __webpack_exports__ = __webpack_require__(792);
|
8218 |
/******/
|
8219 |
/******/ })()
|
8220 |
;
|
dist/distill.bundle.js.map
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
dist/index.html
CHANGED
@@ -170,7 +170,7 @@
|
|
170 |
|
171 |
<p>When upgrading their organization to Enterprise, companies provide their employees with powerful compute options to build and host AI applications.</p>
|
172 |
|
173 |
-
<p>Enterprise organization members can use <strong>Inference Providers</strong> to use and integrate some of the most popular open models into their AI applications, with serverless inference powered by Hugging Face and Inference Providers, including <a href="https://huggingface.co/models?inference_provider=together">Together AI</a>, <a href="https://huggingface.co/models?inference_provider=fal-ai">fal</a>, <a href="https://huggingface.co/models?inference_provider=novita">Novita AI</a>, <a href="https://huggingface.co/models?inference_provider=cerebras">Cerebras</a>. Enterprise organizations get $2 free credit each month toward Inference Providers
|
174 |
<aside>Learn more about <a href="https://huggingface.co/docs/inference-providers/index">Inference Providers</a>.</aside>
|
175 |
|
176 |
<p>To show what an AI model can do, AI Builders use Hugging Face <strong>Spaces</strong>. Spaces are hosted, interactive AI applications - over 1M public and private Spaces were created on Hugging Face. For companies, private Spaces is an ideal way to demo a model or application to colleagues. Enterprise organizations have access to advanced compute options for their Spaces:<br/>
|
|
|
170 |
|
171 |
<p>When upgrading their organization to Enterprise, companies provide their employees with powerful compute options to build and host AI applications.</p>
|
172 |
|
173 |
+
<p>Enterprise organization members can use <strong>Inference Providers</strong> to use and integrate some of the most popular open models into their AI applications, with serverless inference powered by Hugging Face and Inference Providers, including <a href="https://huggingface.co/models?inference_provider=together">Together AI</a>, <a href="https://huggingface.co/models?inference_provider=fal-ai">fal</a>, <a href="https://huggingface.co/models?inference_provider=novita">Novita AI</a>, <a href="https://huggingface.co/models?inference_provider=cerebras">Cerebras</a>. Enterprise organizations get $2 free credit per member each month toward Inference Providers - for instance a 1,000 member organization can use for up to $2,000 of Inference Providers for free. With Enterprise, organizations get a dashboard with daily usage and cost, per provider and per user. Admins can also set a monthly spend limit to control inference costs across all providers.</p>
|
174 |
<aside>Learn more about <a href="https://huggingface.co/docs/inference-providers/index">Inference Providers</a>.</aside>
|
175 |
|
176 |
<p>To show what an AI model can do, AI Builders use Hugging Face <strong>Spaces</strong>. Spaces are hosted, interactive AI applications - over 1M public and private Spaces were created on Hugging Face. For companies, private Spaces is an ideal way to demo a model or application to colleagues. Enterprise organizations have access to advanced compute options for their Spaces:<br/>
|
dist/main.bundle.js
CHANGED
@@ -3,8 +3,7 @@
|
|
3 |
|
4 |
;// ./src/fragmentLoader.js
|
5 |
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
6 |
-
function
|
7 |
-
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); }
|
8 |
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
9 |
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
|
10 |
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
@@ -16,10 +15,10 @@ function loadFragments() {
|
|
16 |
return _loadFragments.apply(this, arguments);
|
17 |
}
|
18 |
function _loadFragments() {
|
19 |
-
_loadFragments = _asyncToGenerator(/*#__PURE__*/
|
20 |
var fragmentElements, FetchQueue, fetchQueue, currentIndex, elements;
|
21 |
-
return
|
22 |
-
while (1) switch (_context7.
|
23 |
case 0:
|
24 |
// Find all elements with ids starting with 'fragment-'
|
25 |
fragmentElements = Array.from(document.querySelectorAll('[id^="fragment-"]'));
|
@@ -36,13 +35,16 @@ function _loadFragments() {
|
|
36 |
return _createClass(FetchQueue, [{
|
37 |
key: "sleep",
|
38 |
value: function () {
|
39 |
-
var _sleep = _asyncToGenerator(/*#__PURE__*/
|
40 |
-
return
|
41 |
-
while (1) switch (_context.
|
42 |
case 0:
|
43 |
-
return _context.
|
44 |
return setTimeout(resolve, ms);
|
45 |
}));
|
|
|
|
|
|
|
46 |
}
|
47 |
}, _callee);
|
48 |
}));
|
@@ -54,51 +56,51 @@ function _loadFragments() {
|
|
54 |
}, {
|
55 |
key: "fetchWithRetry",
|
56 |
value: function () {
|
57 |
-
var _fetchWithRetry = _asyncToGenerator(/*#__PURE__*/
|
58 |
var retryCount,
|
59 |
response,
|
60 |
delay,
|
61 |
-
_args2 = arguments
|
62 |
-
|
63 |
-
|
64 |
-
while (1) switch (_context2.n) {
|
65 |
case 0:
|
66 |
retryCount = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 0;
|
67 |
-
_context2.
|
68 |
-
_context2.
|
69 |
return fetch(fragmentPath);
|
70 |
-
case
|
71 |
-
response = _context2.
|
72 |
if (response.ok) {
|
73 |
-
_context2.
|
74 |
break;
|
75 |
}
|
76 |
throw new Error("HTTP error! status: ".concat(response.status));
|
77 |
-
case
|
78 |
-
_context2.
|
79 |
return response.text();
|
80 |
-
case
|
81 |
-
return _context2.
|
82 |
-
case
|
83 |
-
_context2.
|
84 |
-
|
85 |
if (!(retryCount < this.maxRetries)) {
|
86 |
-
_context2.
|
87 |
break;
|
88 |
}
|
89 |
// Exponential backoff: 1s, 2s, 4s
|
90 |
delay = this.baseDelay * Math.pow(2, retryCount);
|
91 |
console.warn("Retry ".concat(retryCount + 1, "/").concat(this.maxRetries, " for ").concat(fragmentPath, " after ").concat(delay, "ms"));
|
92 |
-
_context2.
|
93 |
return this.sleep(delay);
|
94 |
-
case
|
95 |
-
return _context2.
|
96 |
-
case
|
97 |
-
throw
|
98 |
-
case
|
99 |
-
|
|
|
100 |
}
|
101 |
-
}, _callee2, this, [[1,
|
102 |
}));
|
103 |
function fetchWithRetry(_x2) {
|
104 |
return _fetchWithRetry.apply(this, arguments);
|
@@ -108,31 +110,31 @@ function _loadFragments() {
|
|
108 |
}, {
|
109 |
key: "addFetch",
|
110 |
value: function () {
|
111 |
-
var _addFetch = _asyncToGenerator(/*#__PURE__*/
|
112 |
var _this = this;
|
113 |
var fragmentName, fragmentPath;
|
114 |
-
return
|
115 |
-
while (1) switch (_context5.
|
116 |
case 0:
|
117 |
fragmentName = element.id.replace('fragment-', '');
|
118 |
fragmentPath = "fragments/".concat(fragmentName, ".html");
|
119 |
-
return _context5.
|
120 |
-
var _ref = _asyncToGenerator(/*#__PURE__*/
|
121 |
var fetchPromise;
|
122 |
-
return
|
123 |
-
while (1) switch (_context4.
|
124 |
case 0:
|
125 |
try {
|
126 |
-
fetchPromise = _asyncToGenerator(/*#__PURE__*/
|
127 |
-
var html, temp, scripts
|
128 |
-
return
|
129 |
-
while (1) switch (_context3.
|
130 |
case 0:
|
131 |
-
_context3.
|
132 |
-
_context3.
|
133 |
return _this.fetchWithRetry(fragmentPath);
|
134 |
-
case
|
135 |
-
html = _context3.
|
136 |
// Process the fragment
|
137 |
temp = document.createElement('div');
|
138 |
temp.innerHTML = html;
|
@@ -151,18 +153,19 @@ function _loadFragments() {
|
|
151 |
});
|
152 |
_this.activeFetches--;
|
153 |
resolve();
|
154 |
-
_context3.
|
155 |
break;
|
156 |
-
case
|
157 |
-
_context3.
|
158 |
-
|
159 |
-
console.error("Failed to load fragment ".concat(fragmentPath, " after ").concat(_this.maxRetries, " retries:"),
|
160 |
_this.activeFetches--;
|
161 |
-
reject(
|
162 |
-
case
|
163 |
-
|
|
|
164 |
}
|
165 |
-
}, _callee3, null, [[0,
|
166 |
}))();
|
167 |
_this.queue.push(fetchPromise);
|
168 |
_this.activeFetches++;
|
@@ -170,7 +173,8 @@ function _loadFragments() {
|
|
170 |
reject(error);
|
171 |
}
|
172 |
case 1:
|
173 |
-
|
|
|
174 |
}
|
175 |
}, _callee4);
|
176 |
}));
|
@@ -178,6 +182,9 @@ function _loadFragments() {
|
|
178 |
return _ref.apply(this, arguments);
|
179 |
};
|
180 |
}()));
|
|
|
|
|
|
|
181 |
}
|
182 |
}, _callee5);
|
183 |
}));
|
@@ -189,18 +196,19 @@ function _loadFragments() {
|
|
189 |
}, {
|
190 |
key: "processNext",
|
191 |
value: function () {
|
192 |
-
var _processNext = _asyncToGenerator(/*#__PURE__*/
|
193 |
-
return
|
194 |
-
while (1) switch (_context6.
|
195 |
case 0:
|
196 |
if (!(this.activeFetches < this.maxConcurrent && element)) {
|
197 |
-
_context6.
|
198 |
break;
|
199 |
}
|
200 |
-
_context6.
|
201 |
return this.addFetch(element);
|
202 |
-
case
|
203 |
-
|
|
|
204 |
}
|
205 |
}, _callee6, this);
|
206 |
}));
|
@@ -215,41 +223,42 @@ function _loadFragments() {
|
|
215 |
currentIndex = 0;
|
216 |
elements = fragmentElements; // Assuming this is defined elsewhere
|
217 |
// Initial loading of first 3 elements
|
218 |
-
case
|
219 |
if (!(currentIndex < elements.length && currentIndex < 3)) {
|
220 |
-
_context7.
|
221 |
break;
|
222 |
}
|
223 |
-
_context7.
|
224 |
return fetchQueue.processNext(elements[currentIndex]);
|
225 |
-
case
|
226 |
currentIndex++;
|
227 |
-
_context7.
|
228 |
break;
|
229 |
-
case
|
230 |
if (!(currentIndex < elements.length)) {
|
231 |
-
_context7.
|
232 |
break;
|
233 |
}
|
234 |
-
_context7.
|
235 |
return Promise.race(fetchQueue.queue);
|
236 |
-
case
|
237 |
// Remove completed fetch from queue
|
238 |
fetchQueue.queue = fetchQueue.queue.filter(function (p) {
|
239 |
return p.status === 'pending';
|
240 |
});
|
241 |
// Add next element to queue
|
242 |
-
_context7.
|
243 |
return fetchQueue.processNext(elements[currentIndex]);
|
244 |
-
case
|
245 |
currentIndex++;
|
246 |
-
_context7.
|
247 |
break;
|
248 |
-
case
|
249 |
-
_context7.
|
250 |
return Promise.all(fetchQueue.queue);
|
251 |
-
case
|
252 |
-
|
|
|
253 |
}
|
254 |
}, _callee7);
|
255 |
}));
|
|
|
3 |
|
4 |
;// ./src/fragmentLoader.js
|
5 |
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
6 |
+
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
|
7 |
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
8 |
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
|
9 |
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
|
15 |
return _loadFragments.apply(this, arguments);
|
16 |
}
|
17 |
function _loadFragments() {
|
18 |
+
_loadFragments = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
|
19 |
var fragmentElements, FetchQueue, fetchQueue, currentIndex, elements;
|
20 |
+
return _regeneratorRuntime().wrap(function _callee7$(_context7) {
|
21 |
+
while (1) switch (_context7.prev = _context7.next) {
|
22 |
case 0:
|
23 |
// Find all elements with ids starting with 'fragment-'
|
24 |
fragmentElements = Array.from(document.querySelectorAll('[id^="fragment-"]'));
|
|
|
35 |
return _createClass(FetchQueue, [{
|
36 |
key: "sleep",
|
37 |
value: function () {
|
38 |
+
var _sleep = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(ms) {
|
39 |
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
40 |
+
while (1) switch (_context.prev = _context.next) {
|
41 |
case 0:
|
42 |
+
return _context.abrupt("return", new Promise(function (resolve) {
|
43 |
return setTimeout(resolve, ms);
|
44 |
}));
|
45 |
+
case 1:
|
46 |
+
case "end":
|
47 |
+
return _context.stop();
|
48 |
}
|
49 |
}, _callee);
|
50 |
}));
|
|
|
56 |
}, {
|
57 |
key: "fetchWithRetry",
|
58 |
value: function () {
|
59 |
+
var _fetchWithRetry = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(fragmentPath) {
|
60 |
var retryCount,
|
61 |
response,
|
62 |
delay,
|
63 |
+
_args2 = arguments;
|
64 |
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
65 |
+
while (1) switch (_context2.prev = _context2.next) {
|
|
|
66 |
case 0:
|
67 |
retryCount = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 0;
|
68 |
+
_context2.prev = 1;
|
69 |
+
_context2.next = 4;
|
70 |
return fetch(fragmentPath);
|
71 |
+
case 4:
|
72 |
+
response = _context2.sent;
|
73 |
if (response.ok) {
|
74 |
+
_context2.next = 7;
|
75 |
break;
|
76 |
}
|
77 |
throw new Error("HTTP error! status: ".concat(response.status));
|
78 |
+
case 7:
|
79 |
+
_context2.next = 9;
|
80 |
return response.text();
|
81 |
+
case 9:
|
82 |
+
return _context2.abrupt("return", _context2.sent);
|
83 |
+
case 12:
|
84 |
+
_context2.prev = 12;
|
85 |
+
_context2.t0 = _context2["catch"](1);
|
86 |
if (!(retryCount < this.maxRetries)) {
|
87 |
+
_context2.next = 20;
|
88 |
break;
|
89 |
}
|
90 |
// Exponential backoff: 1s, 2s, 4s
|
91 |
delay = this.baseDelay * Math.pow(2, retryCount);
|
92 |
console.warn("Retry ".concat(retryCount + 1, "/").concat(this.maxRetries, " for ").concat(fragmentPath, " after ").concat(delay, "ms"));
|
93 |
+
_context2.next = 19;
|
94 |
return this.sleep(delay);
|
95 |
+
case 19:
|
96 |
+
return _context2.abrupt("return", this.fetchWithRetry(fragmentPath, retryCount + 1));
|
97 |
+
case 20:
|
98 |
+
throw _context2.t0;
|
99 |
+
case 21:
|
100 |
+
case "end":
|
101 |
+
return _context2.stop();
|
102 |
}
|
103 |
+
}, _callee2, this, [[1, 12]]);
|
104 |
}));
|
105 |
function fetchWithRetry(_x2) {
|
106 |
return _fetchWithRetry.apply(this, arguments);
|
|
|
110 |
}, {
|
111 |
key: "addFetch",
|
112 |
value: function () {
|
113 |
+
var _addFetch = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee5(element) {
|
114 |
var _this = this;
|
115 |
var fragmentName, fragmentPath;
|
116 |
+
return _regeneratorRuntime().wrap(function _callee5$(_context5) {
|
117 |
+
while (1) switch (_context5.prev = _context5.next) {
|
118 |
case 0:
|
119 |
fragmentName = element.id.replace('fragment-', '');
|
120 |
fragmentPath = "fragments/".concat(fragmentName, ".html");
|
121 |
+
return _context5.abrupt("return", new Promise(/*#__PURE__*/function () {
|
122 |
+
var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee4(resolve, reject) {
|
123 |
var fetchPromise;
|
124 |
+
return _regeneratorRuntime().wrap(function _callee4$(_context4) {
|
125 |
+
while (1) switch (_context4.prev = _context4.next) {
|
126 |
case 0:
|
127 |
try {
|
128 |
+
fetchPromise = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
|
129 |
+
var html, temp, scripts;
|
130 |
+
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
131 |
+
while (1) switch (_context3.prev = _context3.next) {
|
132 |
case 0:
|
133 |
+
_context3.prev = 0;
|
134 |
+
_context3.next = 3;
|
135 |
return _this.fetchWithRetry(fragmentPath);
|
136 |
+
case 3:
|
137 |
+
html = _context3.sent;
|
138 |
// Process the fragment
|
139 |
temp = document.createElement('div');
|
140 |
temp.innerHTML = html;
|
|
|
153 |
});
|
154 |
_this.activeFetches--;
|
155 |
resolve();
|
156 |
+
_context3.next = 18;
|
157 |
break;
|
158 |
+
case 13:
|
159 |
+
_context3.prev = 13;
|
160 |
+
_context3.t0 = _context3["catch"](0);
|
161 |
+
console.error("Failed to load fragment ".concat(fragmentPath, " after ").concat(_this.maxRetries, " retries:"), _context3.t0);
|
162 |
_this.activeFetches--;
|
163 |
+
reject(_context3.t0);
|
164 |
+
case 18:
|
165 |
+
case "end":
|
166 |
+
return _context3.stop();
|
167 |
}
|
168 |
+
}, _callee3, null, [[0, 13]]);
|
169 |
}))();
|
170 |
_this.queue.push(fetchPromise);
|
171 |
_this.activeFetches++;
|
|
|
173 |
reject(error);
|
174 |
}
|
175 |
case 1:
|
176 |
+
case "end":
|
177 |
+
return _context4.stop();
|
178 |
}
|
179 |
}, _callee4);
|
180 |
}));
|
|
|
182 |
return _ref.apply(this, arguments);
|
183 |
};
|
184 |
}()));
|
185 |
+
case 3:
|
186 |
+
case "end":
|
187 |
+
return _context5.stop();
|
188 |
}
|
189 |
}, _callee5);
|
190 |
}));
|
|
|
196 |
}, {
|
197 |
key: "processNext",
|
198 |
value: function () {
|
199 |
+
var _processNext = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee6(element) {
|
200 |
+
return _regeneratorRuntime().wrap(function _callee6$(_context6) {
|
201 |
+
while (1) switch (_context6.prev = _context6.next) {
|
202 |
case 0:
|
203 |
if (!(this.activeFetches < this.maxConcurrent && element)) {
|
204 |
+
_context6.next = 3;
|
205 |
break;
|
206 |
}
|
207 |
+
_context6.next = 3;
|
208 |
return this.addFetch(element);
|
209 |
+
case 3:
|
210 |
+
case "end":
|
211 |
+
return _context6.stop();
|
212 |
}
|
213 |
}, _callee6, this);
|
214 |
}));
|
|
|
223 |
currentIndex = 0;
|
224 |
elements = fragmentElements; // Assuming this is defined elsewhere
|
225 |
// Initial loading of first 3 elements
|
226 |
+
case 5:
|
227 |
if (!(currentIndex < elements.length && currentIndex < 3)) {
|
228 |
+
_context7.next = 11;
|
229 |
break;
|
230 |
}
|
231 |
+
_context7.next = 8;
|
232 |
return fetchQueue.processNext(elements[currentIndex]);
|
233 |
+
case 8:
|
234 |
currentIndex++;
|
235 |
+
_context7.next = 5;
|
236 |
break;
|
237 |
+
case 11:
|
238 |
if (!(currentIndex < elements.length)) {
|
239 |
+
_context7.next = 20;
|
240 |
break;
|
241 |
}
|
242 |
+
_context7.next = 14;
|
243 |
return Promise.race(fetchQueue.queue);
|
244 |
+
case 14:
|
245 |
// Remove completed fetch from queue
|
246 |
fetchQueue.queue = fetchQueue.queue.filter(function (p) {
|
247 |
return p.status === 'pending';
|
248 |
});
|
249 |
// Add next element to queue
|
250 |
+
_context7.next = 17;
|
251 |
return fetchQueue.processNext(elements[currentIndex]);
|
252 |
+
case 17:
|
253 |
currentIndex++;
|
254 |
+
_context7.next = 11;
|
255 |
break;
|
256 |
+
case 20:
|
257 |
+
_context7.next = 22;
|
258 |
return Promise.all(fetchQueue.queue);
|
259 |
+
case 22:
|
260 |
+
case "end":
|
261 |
+
return _context7.stop();
|
262 |
}
|
263 |
}, _callee7);
|
264 |
}));
|
dist/main.bundle.js.map
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"version":3,"file":"main.bundle.js","mappings":"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","sources":["webpack://blogpost/./src/fragmentLoader.js","webpack://blogpost/./src/syncHFSpacesURLHash.js","webpack://blogpost/./src/index.js"],"sourcesContent":["async function loadFragments() {\n // Find all elements with ids starting with 'fragment-'\n const fragmentElements = Array.from(document.querySelectorAll('[id^=\"fragment-\"]'));\n \n class FetchQueue {\n constructor(maxConcurrent = 3) {\n this.queue = [];\n this.maxConcurrent = maxConcurrent;\n this.activeFetches = 0;\n this.maxRetries = 3; // Maximum number of retry attempts\n this.baseDelay = 1000; // Base delay in milliseconds (1 second)\n }\n\n async sleep(ms) {\n return new Promise(resolve => setTimeout(resolve, ms));\n }\n\n async fetchWithRetry(fragmentPath, retryCount = 0) {\n try {\n const response = await fetch(fragmentPath);\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n return await response.text();\n } catch (error) {\n if (retryCount < this.maxRetries) {\n // Exponential backoff: 1s, 2s, 4s\n const delay = this.baseDelay * Math.pow(2, retryCount);\n console.warn(`Retry ${retryCount + 1}/${this.maxRetries} for ${fragmentPath} after ${delay}ms`);\n await this.sleep(delay);\n return this.fetchWithRetry(fragmentPath, retryCount + 1);\n }\n throw error;\n }\n }\n\n async addFetch(element) {\n const fragmentName = element.id.replace('fragment-', '');\n const fragmentPath = `fragments/${fragmentName}.html`;\n \n return new Promise(async (resolve, reject) => {\n try {\n const fetchPromise = (async () => {\n try {\n const html = await this.fetchWithRetry(fragmentPath);\n \n // Process the fragment\n const temp = document.createElement('div');\n temp.innerHTML = html;\n element.innerHTML = temp.innerHTML;\n \n // Handle scripts\n const scripts = temp.getElementsByTagName('script');\n Array.from(scripts).forEach(oldScript => {\n const newScript = document.createElement('script');\n Array.from(oldScript.attributes).forEach(attr => {\n newScript.setAttribute(attr.name, attr.value);\n });\n newScript.textContent = oldScript.textContent;\n oldScript.parentNode.removeChild(oldScript);\n document.body.appendChild(newScript);\n });\n \n this.activeFetches--;\n resolve();\n } catch (error) {\n console.error(`Failed to load fragment ${fragmentPath} after ${this.maxRetries} retries:`, error);\n this.activeFetches--;\n reject(error);\n }\n })();\n\n this.queue.push(fetchPromise);\n this.activeFetches++;\n } catch (error) {\n reject(error);\n }\n });\n }\n\n async processNext(element) {\n if (this.activeFetches < this.maxConcurrent && element) {\n await this.addFetch(element);\n }\n }\n }\n\n // Initialize queue\n const fetchQueue = new FetchQueue(3);\n let currentIndex = 0;\n const elements = fragmentElements; // Assuming this is defined elsewhere\n\n // Initial loading of first 3 elements\n while (currentIndex < elements.length && currentIndex < 3) {\n await fetchQueue.processNext(elements[currentIndex]);\n currentIndex++;\n }\n\n // Process remaining elements as fetches complete\n while (currentIndex < elements.length) {\n // Wait for any fetch to complete\n await Promise.race(fetchQueue.queue);\n // Remove completed fetch from queue\n fetchQueue.queue = fetchQueue.queue.filter(p => p.status === 'pending');\n // Add next element to queue\n await fetchQueue.processNext(elements[currentIndex]);\n currentIndex++;\n }\n\n // Wait for remaining fetches to complete\n await Promise.all(fetchQueue.queue);\n}\n\nexport { loadFragments }","const queryArg = \"section\";\n\nfunction syncHFSpacesURLHash() {\n // Handle explicit section requests (don't update hash automatically on load)\n const hasExplicitRequest = handleExplicitSectionRequest();\n \n // Set up hash change monitoring\n updateHashBasedOnHashChange();\n \n // Always set up scroll monitoring to update hash during scrolling\n setupScrollMonitoring();\n \n // If no explicit request, we don't update the hash on initial load\n // The hash will only start updating when the user scrolls\n}\n\nfunction handleExplicitSectionRequest() {\n // Check for section parameter in URL\n const urlParams = new URLSearchParams(window.location.search);\n const sectionId = urlParams.get(queryArg);\n \n // If we have an explicit section request\n if (sectionId) {\n const targetElement = document.getElementById(sectionId);\n if (targetElement) {\n // Slight delay to ensure the browser doesn't try to do its own scrolling first\n setTimeout(() => {\n targetElement.scrollIntoView();\n history.replaceState(null, null, `#${sectionId}`);\n }, 100);\n }\n return true;\n }\n \n // No explicit section parameter found\n return false;\n}\n\nfunction setupScrollMonitoring() {\n // Variables to manage throttling\n let isScrolling = false;\n let lastKnownScrollPosition = 0;\n let initialScroll = true;\n \n // Add the scroll event listener\n window.addEventListener('scroll', function() {\n lastKnownScrollPosition = window.scrollY;\n \n if (!isScrolling) {\n window.requestAnimationFrame(function() {\n // Skip the first scroll event which might be browser's automatic scroll\n // to a hash on page load\n if (initialScroll) {\n initialScroll = false;\n } else {\n updateHashBasedOnScroll(lastKnownScrollPosition);\n }\n isScrolling = false;\n });\n }\n \n isScrolling = true;\n });\n}\n\n// Function to update the URL hash based on scroll position\nfunction updateHashBasedOnScroll(scrollPosition) {\n const closestHeading = findClosestHeading(scrollPosition);\n \n // Update the URL hash if we found a closest element\n if (closestHeading && closestHeading.id) {\n // Only update if the hash is different to avoid unnecessary operations\n if (window.location.hash !== `#${closestHeading.id}`) {\n silentlyUpdateHash(closestHeading.id);\n postMessageToHFSpaces(closestHeading.id);\n }\n }\n}\n\n// Find the closest heading to the current scroll position\nfunction findClosestHeading(scrollPosition) {\n // Get only heading elements with IDs that we want to track\n const headingsWithIds = Array.from(document.querySelectorAll('h1[id], h2[id], h3[id], h4[id], h5[id], h6[id]'));\n\n // Skip if there are no headings with IDs\n if (headingsWithIds.length === 0) return null;\n\n // Find the element closest to the middle of the viewport\n let closestHeading = null;\n let closestDistance = Infinity;\n const viewportMiddle = scrollPosition + window.innerHeight / 2;\n \n // Iterate through all headings to find the closest one\n headingsWithIds.forEach(heading => {\n const headingTop = heading.getBoundingClientRect().top + scrollPosition;\n const distance = Math.abs(headingTop - viewportMiddle);\n \n if (distance < closestDistance) {\n closestDistance = distance;\n closestHeading = heading;\n }\n });\n \n return closestHeading;\n}\n\n// Update hash without triggering scroll or other side effects\nfunction silentlyUpdateHash(id) {\n history.replaceState(null, null, `#${id}`);\n}\n\nfunction updateHashBasedOnHashChange() {\n window.addEventListener('hashchange', () => {\n const elementId = window.location.hash.slice(1);\n postMessageToHFSpaces(elementId);\n });\n}\n\nfunction postMessageToHFSpaces(elementId) {\n const parentOrigin = \"https://huggingface.co\";\n window.parent.postMessage({ queryString: `${queryArg}=${elementId}` }, parentOrigin);\n}\n\nexport { syncHFSpacesURLHash };\n","// import { plotClusters } from './clusters'\nimport { loadFragments } from './fragmentLoader'\nimport { syncHFSpacesURLHash } from './syncHFSpacesURLHash'\n\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n console.log(\"DOMContentLoaded\");\n loadFragments();\n init_memory_plot();\n syncHFSpacesURLHash();\n}, { once: true });\n"],"names":["e","t","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","enumerable","configurable","writable","_invoke","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_toPrimitive","_typeof","toPrimitive","String","Number","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","loadFragments","_loadFragments","_callee7","fragmentElements","FetchQueue","fetchQueue","currentIndex","elements","_context7","Array","from","document","querySelectorAll","maxConcurrent","undefined","queue","activeFetches","maxRetries","baseDelay","_sleep","_callee","ms","_context","setTimeout","sleep","_x","_fetchWithRetry","_callee2","fragmentPath","retryCount","response","delay","_args2","_t","_context2","fetch","ok","Error","concat","status","text","Math","pow","console","warn","fetchWithRetry","_x2","_addFetch","_callee5","element","_this","fragmentName","_context5","id","replace","_ref","_callee4","reject","fetchPromise","_context4","_callee3","html","temp","scripts","_t2","_context3","createElement","innerHTML","getElementsByTagName","forEach","oldScript","newScript","attributes","attr","setAttribute","name","textContent","parentNode","removeChild","body","appendChild","error","push","_x4","_x5","addFetch","_x3","_processNext","_callee6","_context6","processNext","_x6","race","filter","all","queryArg","syncHFSpacesURLHash","hasExplicitRequest","handleExplicitSectionRequest","updateHashBasedOnHashChange","setupScrollMonitoring","urlParams","URLSearchParams","window","location","search","sectionId","get","targetElement","getElementById","scrollIntoView","history","replaceState","isScrolling","lastKnownScrollPosition","initialScroll","addEventListener","scrollY","requestAnimationFrame","updateHashBasedOnScroll","scrollPosition","closestHeading","findClosestHeading","hash","silentlyUpdateHash","postMessageToHFSpaces","headingsWithIds","closestDistance","Infinity","viewportMiddle","innerHeight","heading","headingTop","getBoundingClientRect","top","distance","abs","elementId","slice","parentOrigin","parent","postMessage","queryString","log","init_memory_plot","once"],"sourceRoot":""}
|
|
|
1 |
+
{"version":3,"file":"main.bundle.js","mappings":"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","sources":["webpack://blogpost/./src/fragmentLoader.js","webpack://blogpost/./src/syncHFSpacesURLHash.js","webpack://blogpost/./src/index.js"],"sourcesContent":["async function loadFragments() {\n // Find all elements with ids starting with 'fragment-'\n const fragmentElements = Array.from(document.querySelectorAll('[id^=\"fragment-\"]'));\n \n class FetchQueue {\n constructor(maxConcurrent = 3) {\n this.queue = [];\n this.maxConcurrent = maxConcurrent;\n this.activeFetches = 0;\n this.maxRetries = 3; // Maximum number of retry attempts\n this.baseDelay = 1000; // Base delay in milliseconds (1 second)\n }\n\n async sleep(ms) {\n return new Promise(resolve => setTimeout(resolve, ms));\n }\n\n async fetchWithRetry(fragmentPath, retryCount = 0) {\n try {\n const response = await fetch(fragmentPath);\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n return await response.text();\n } catch (error) {\n if (retryCount < this.maxRetries) {\n // Exponential backoff: 1s, 2s, 4s\n const delay = this.baseDelay * Math.pow(2, retryCount);\n console.warn(`Retry ${retryCount + 1}/${this.maxRetries} for ${fragmentPath} after ${delay}ms`);\n await this.sleep(delay);\n return this.fetchWithRetry(fragmentPath, retryCount + 1);\n }\n throw error;\n }\n }\n\n async addFetch(element) {\n const fragmentName = element.id.replace('fragment-', '');\n const fragmentPath = `fragments/${fragmentName}.html`;\n \n return new Promise(async (resolve, reject) => {\n try {\n const fetchPromise = (async () => {\n try {\n const html = await this.fetchWithRetry(fragmentPath);\n \n // Process the fragment\n const temp = document.createElement('div');\n temp.innerHTML = html;\n element.innerHTML = temp.innerHTML;\n \n // Handle scripts\n const scripts = temp.getElementsByTagName('script');\n Array.from(scripts).forEach(oldScript => {\n const newScript = document.createElement('script');\n Array.from(oldScript.attributes).forEach(attr => {\n newScript.setAttribute(attr.name, attr.value);\n });\n newScript.textContent = oldScript.textContent;\n oldScript.parentNode.removeChild(oldScript);\n document.body.appendChild(newScript);\n });\n \n this.activeFetches--;\n resolve();\n } catch (error) {\n console.error(`Failed to load fragment ${fragmentPath} after ${this.maxRetries} retries:`, error);\n this.activeFetches--;\n reject(error);\n }\n })();\n\n this.queue.push(fetchPromise);\n this.activeFetches++;\n } catch (error) {\n reject(error);\n }\n });\n }\n\n async processNext(element) {\n if (this.activeFetches < this.maxConcurrent && element) {\n await this.addFetch(element);\n }\n }\n }\n\n // Initialize queue\n const fetchQueue = new FetchQueue(3);\n let currentIndex = 0;\n const elements = fragmentElements; // Assuming this is defined elsewhere\n\n // Initial loading of first 3 elements\n while (currentIndex < elements.length && currentIndex < 3) {\n await fetchQueue.processNext(elements[currentIndex]);\n currentIndex++;\n }\n\n // Process remaining elements as fetches complete\n while (currentIndex < elements.length) {\n // Wait for any fetch to complete\n await Promise.race(fetchQueue.queue);\n // Remove completed fetch from queue\n fetchQueue.queue = fetchQueue.queue.filter(p => p.status === 'pending');\n // Add next element to queue\n await fetchQueue.processNext(elements[currentIndex]);\n currentIndex++;\n }\n\n // Wait for remaining fetches to complete\n await Promise.all(fetchQueue.queue);\n}\n\nexport { loadFragments }","const queryArg = \"section\";\n\nfunction syncHFSpacesURLHash() {\n // Handle explicit section requests (don't update hash automatically on load)\n const hasExplicitRequest = handleExplicitSectionRequest();\n \n // Set up hash change monitoring\n updateHashBasedOnHashChange();\n \n // Always set up scroll monitoring to update hash during scrolling\n setupScrollMonitoring();\n \n // If no explicit request, we don't update the hash on initial load\n // The hash will only start updating when the user scrolls\n}\n\nfunction handleExplicitSectionRequest() {\n // Check for section parameter in URL\n const urlParams = new URLSearchParams(window.location.search);\n const sectionId = urlParams.get(queryArg);\n \n // If we have an explicit section request\n if (sectionId) {\n const targetElement = document.getElementById(sectionId);\n if (targetElement) {\n // Slight delay to ensure the browser doesn't try to do its own scrolling first\n setTimeout(() => {\n targetElement.scrollIntoView();\n history.replaceState(null, null, `#${sectionId}`);\n }, 100);\n }\n return true;\n }\n \n // No explicit section parameter found\n return false;\n}\n\nfunction setupScrollMonitoring() {\n // Variables to manage throttling\n let isScrolling = false;\n let lastKnownScrollPosition = 0;\n let initialScroll = true;\n \n // Add the scroll event listener\n window.addEventListener('scroll', function() {\n lastKnownScrollPosition = window.scrollY;\n \n if (!isScrolling) {\n window.requestAnimationFrame(function() {\n // Skip the first scroll event which might be browser's automatic scroll\n // to a hash on page load\n if (initialScroll) {\n initialScroll = false;\n } else {\n updateHashBasedOnScroll(lastKnownScrollPosition);\n }\n isScrolling = false;\n });\n }\n \n isScrolling = true;\n });\n}\n\n// Function to update the URL hash based on scroll position\nfunction updateHashBasedOnScroll(scrollPosition) {\n const closestHeading = findClosestHeading(scrollPosition);\n \n // Update the URL hash if we found a closest element\n if (closestHeading && closestHeading.id) {\n // Only update if the hash is different to avoid unnecessary operations\n if (window.location.hash !== `#${closestHeading.id}`) {\n silentlyUpdateHash(closestHeading.id);\n postMessageToHFSpaces(closestHeading.id);\n }\n }\n}\n\n// Find the closest heading to the current scroll position\nfunction findClosestHeading(scrollPosition) {\n // Get only heading elements with IDs that we want to track\n const headingsWithIds = Array.from(document.querySelectorAll('h1[id], h2[id], h3[id], h4[id], h5[id], h6[id]'));\n\n // Skip if there are no headings with IDs\n if (headingsWithIds.length === 0) return null;\n\n // Find the element closest to the middle of the viewport\n let closestHeading = null;\n let closestDistance = Infinity;\n const viewportMiddle = scrollPosition + window.innerHeight / 2;\n \n // Iterate through all headings to find the closest one\n headingsWithIds.forEach(heading => {\n const headingTop = heading.getBoundingClientRect().top + scrollPosition;\n const distance = Math.abs(headingTop - viewportMiddle);\n \n if (distance < closestDistance) {\n closestDistance = distance;\n closestHeading = heading;\n }\n });\n \n return closestHeading;\n}\n\n// Update hash without triggering scroll or other side effects\nfunction silentlyUpdateHash(id) {\n history.replaceState(null, null, `#${id}`);\n}\n\nfunction updateHashBasedOnHashChange() {\n window.addEventListener('hashchange', () => {\n const elementId = window.location.hash.slice(1);\n postMessageToHFSpaces(elementId);\n });\n}\n\nfunction postMessageToHFSpaces(elementId) {\n const parentOrigin = \"https://huggingface.co\";\n window.parent.postMessage({ queryString: `${queryArg}=${elementId}` }, parentOrigin);\n}\n\nexport { syncHFSpacesURLHash };\n","// import { plotClusters } from './clusters'\nimport { loadFragments } from './fragmentLoader'\nimport { syncHFSpacesURLHash } from './syncHFSpacesURLHash'\n\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n console.log(\"DOMContentLoaded\");\n loadFragments();\n init_memory_plot();\n syncHFSpacesURLHash();\n}, { once: true });\n"],"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_toPrimitive","toPrimitive","String","Number","asyncGeneratorStep","_asyncToGenerator","arguments","apply","_next","_throw","loadFragments","_loadFragments","_callee7","fragmentElements","FetchQueue","fetchQueue","currentIndex","elements","_callee7$","_context7","Array","from","document","querySelectorAll","maxConcurrent","undefined","queue","activeFetches","maxRetries","baseDelay","_sleep","_callee","ms","_callee$","_context","setTimeout","sleep","_x","_fetchWithRetry","_callee2","fragmentPath","retryCount","response","delay","_args2","_callee2$","_context2","fetch","ok","concat","status","text","t0","Math","pow","console","warn","fetchWithRetry","_x2","_addFetch","_callee5","element","_this","fragmentName","_callee5$","_context5","id","replace","_ref","_callee4","reject","fetchPromise","_callee4$","_context4","_callee3","html","temp","scripts","_callee3$","_context3","createElement","innerHTML","getElementsByTagName","oldScript","newScript","attributes","attr","setAttribute","textContent","parentNode","removeChild","body","appendChild","error","_x4","_x5","addFetch","_x3","_processNext","_callee6","_callee6$","_context6","processNext","_x6","race","filter","all","queryArg","syncHFSpacesURLHash","hasExplicitRequest","handleExplicitSectionRequest","updateHashBasedOnHashChange","setupScrollMonitoring","urlParams","URLSearchParams","window","location","search","sectionId","get","targetElement","getElementById","scrollIntoView","history","replaceState","isScrolling","lastKnownScrollPosition","initialScroll","addEventListener","scrollY","requestAnimationFrame","updateHashBasedOnScroll","scrollPosition","closestHeading","findClosestHeading","hash","silentlyUpdateHash","postMessageToHFSpaces","headingsWithIds","closestDistance","Infinity","viewportMiddle","innerHeight","heading","headingTop","getBoundingClientRect","top","distance","abs","elementId","parentOrigin","parent","postMessage","queryString","log","init_memory_plot","once"],"sourceRoot":""}
|