unpoly-rails 3.1.0 → 3.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/assets/unpoly/unpoly-migrate.js +120 -25
- data/assets/unpoly/unpoly-migrate.min.js +1 -1
- data/assets/unpoly/unpoly.es6.js +413 -364
- data/assets/unpoly/unpoly.es6.min.js +1 -1
- data/assets/unpoly/unpoly.js +407 -358
- data/assets/unpoly/unpoly.min.js +1 -1
- data/lib/unpoly/rails/version.rb +1 -1
- metadata +2 -2
data/assets/unpoly/unpoly.js
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
/***/ (() => {
|
6
6
|
|
7
7
|
window.up = {
|
8
|
-
version: '3.
|
8
|
+
version: '3.2.0'
|
9
9
|
};
|
10
10
|
|
11
11
|
|
@@ -194,6 +194,9 @@ up.util = (function () {
|
|
194
194
|
function isRegExp(object) {
|
195
195
|
return object instanceof RegExp;
|
196
196
|
}
|
197
|
+
function isError(object) {
|
198
|
+
return object instanceof Error;
|
199
|
+
}
|
197
200
|
function isJQuery(object) {
|
198
201
|
return up.browser.canJQuery() && object instanceof jQuery;
|
199
202
|
}
|
@@ -389,8 +392,8 @@ up.util = (function () {
|
|
389
392
|
function queueMicrotask(task) {
|
390
393
|
return Promise.resolve().then(task);
|
391
394
|
}
|
392
|
-
function last(
|
393
|
-
return
|
395
|
+
function last(value) {
|
396
|
+
return value[value.length - 1];
|
394
397
|
}
|
395
398
|
function contains(value, subValue) {
|
396
399
|
return value.indexOf(subValue) >= 0;
|
@@ -615,14 +618,20 @@ up.util = (function () {
|
|
615
618
|
});
|
616
619
|
}
|
617
620
|
}
|
618
|
-
function stringifyArg(arg) {
|
621
|
+
function stringifyArg(arg, placeholder = '%o') {
|
619
622
|
let string;
|
620
623
|
const maxLength = 200;
|
621
|
-
|
624
|
+
if (placeholder === '%c') {
|
625
|
+
return '';
|
626
|
+
}
|
627
|
+
if (placeholder === '%s' && isGiven(arg)) {
|
628
|
+
arg = arg.toString();
|
629
|
+
}
|
622
630
|
if (isString(arg)) {
|
623
|
-
string = arg.replace(/[\n\r\t ]+/g, ' ');
|
624
|
-
|
625
|
-
|
631
|
+
string = arg.trim().replace(/[\n\r\t ]+/g, ' ');
|
632
|
+
if (placeholder === '%o') {
|
633
|
+
string = JSON.stringify(string);
|
634
|
+
}
|
626
635
|
}
|
627
636
|
else if (isUndefined(arg)) {
|
628
637
|
string = 'undefined';
|
@@ -632,24 +641,21 @@ up.util = (function () {
|
|
632
641
|
}
|
633
642
|
else if (isArray(arg)) {
|
634
643
|
string = `[${map(arg, stringifyArg).join(', ')}]`;
|
635
|
-
closer = ']';
|
636
644
|
}
|
637
645
|
else if (isJQuery(arg)) {
|
638
646
|
string = `$(${map(arg, stringifyArg).join(', ')})`;
|
639
|
-
closer = ')';
|
640
647
|
}
|
641
648
|
else if (isElement(arg)) {
|
642
649
|
string = `<${arg.tagName.toLowerCase()}`;
|
643
|
-
for (let attr of ['id', 'name', 'class']) {
|
650
|
+
for (let attr of ['id', 'up-id', 'name', 'class']) {
|
644
651
|
let value = arg.getAttribute(attr);
|
645
652
|
if (value) {
|
646
653
|
string += ` ${attr}="${value}"`;
|
647
654
|
}
|
648
655
|
}
|
649
656
|
string += ">";
|
650
|
-
closer = '>';
|
651
657
|
}
|
652
|
-
else if (isRegExp(arg)) {
|
658
|
+
else if (isRegExp(arg) || isError(arg)) {
|
653
659
|
string = arg.toString();
|
654
660
|
}
|
655
661
|
else {
|
@@ -666,14 +672,13 @@ up.util = (function () {
|
|
666
672
|
}
|
667
673
|
}
|
668
674
|
if (string.length > maxLength) {
|
669
|
-
string = `${string.substr(0, maxLength)}
|
670
|
-
string += closer;
|
675
|
+
string = `${string.substr(0, maxLength)}…${last(string)}`;
|
671
676
|
}
|
672
677
|
return string;
|
673
678
|
}
|
674
|
-
const SPRINTF_PLACEHOLDERS = /%[
|
679
|
+
const SPRINTF_PLACEHOLDERS = /%[oOdisfc]/g;
|
675
680
|
function sprintf(message, ...args) {
|
676
|
-
return message.replace(SPRINTF_PLACEHOLDERS, () => stringifyArg(args.shift()));
|
681
|
+
return message.replace(SPRINTF_PLACEHOLDERS, (placeholder) => stringifyArg(args.shift(), placeholder));
|
677
682
|
}
|
678
683
|
function negate(fn) {
|
679
684
|
return function (...args) {
|
@@ -716,6 +721,11 @@ up.util = (function () {
|
|
716
721
|
let unicodeEscape = (char) => "\\u" + char.charCodeAt(0).toString(16).padStart(4, '0');
|
717
722
|
return string.replace(/[^\x00-\x7F]/g, unicodeEscape);
|
718
723
|
}
|
724
|
+
function variant(source, changes = {}) {
|
725
|
+
let variant = Object.create(source);
|
726
|
+
Object.assign(variant, changes);
|
727
|
+
return variant;
|
728
|
+
}
|
719
729
|
return {
|
720
730
|
parseURL,
|
721
731
|
normalizeURL,
|
@@ -813,6 +823,7 @@ up.util = (function () {
|
|
813
823
|
negate,
|
814
824
|
memoizeMethod,
|
815
825
|
safeStringifyJSON,
|
826
|
+
variant,
|
816
827
|
};
|
817
828
|
})();
|
818
829
|
|
@@ -1581,10 +1592,7 @@ up.Record = class Record {
|
|
1581
1592
|
return u.pick(source, this.keys());
|
1582
1593
|
}
|
1583
1594
|
[u.copy.key]() {
|
1584
|
-
return
|
1585
|
-
}
|
1586
|
-
variant(changes = {}) {
|
1587
|
-
return new this.constructor(u.merge(this.attributes(), changes));
|
1595
|
+
return u.variant(this);
|
1588
1596
|
}
|
1589
1597
|
[u.isEqual.key](other) {
|
1590
1598
|
return (this.constructor === other.constructor) && u.isEqual(this.attributes(), other.attributes());
|
@@ -1756,9 +1764,6 @@ up.Change = class Change {
|
|
1756
1764
|
constructor(options) {
|
1757
1765
|
this.options = options;
|
1758
1766
|
}
|
1759
|
-
cannotMatch(reason) {
|
1760
|
-
throw new up.CannotMatch(reason);
|
1761
|
-
}
|
1762
1767
|
execute() {
|
1763
1768
|
throw new up.NotImplemented();
|
1764
1769
|
}
|
@@ -1773,6 +1778,9 @@ up.Change = class Change {
|
|
1773
1778
|
return newValue;
|
1774
1779
|
}
|
1775
1780
|
}
|
1781
|
+
deriveFailOptions() {
|
1782
|
+
return up.RenderOptions.deriveFailOptions(this.options);
|
1783
|
+
}
|
1776
1784
|
};
|
1777
1785
|
|
1778
1786
|
|
@@ -1789,33 +1797,34 @@ up.Change.Addition = class Addition extends up.Change {
|
|
1789
1797
|
this.acceptLayer = options.acceptLayer;
|
1790
1798
|
this.dismissLayer = options.dismissLayer;
|
1791
1799
|
this.eventPlans = options.eventPlans || [];
|
1800
|
+
this.response = options.meta?.response;
|
1792
1801
|
}
|
1793
1802
|
handleLayerChangeRequests() {
|
1794
1803
|
if (this.layer.isOverlay()) {
|
1795
1804
|
this.tryAcceptLayerFromServer();
|
1796
1805
|
this.abortWhenLayerClosed();
|
1797
|
-
this.layer.tryAcceptForLocation();
|
1806
|
+
this.layer.tryAcceptForLocation(this.responseOption());
|
1798
1807
|
this.abortWhenLayerClosed();
|
1799
1808
|
this.tryDismissLayerFromServer();
|
1800
1809
|
this.abortWhenLayerClosed();
|
1801
|
-
this.layer.tryDismissForLocation();
|
1810
|
+
this.layer.tryDismissForLocation(this.responseOption());
|
1802
1811
|
this.abortWhenLayerClosed();
|
1803
1812
|
}
|
1804
1813
|
this.layer.asCurrent(() => {
|
1805
1814
|
for (let eventPlan of this.eventPlans) {
|
1806
|
-
up.emit(eventPlan);
|
1815
|
+
up.emit({ ...eventPlan, ...this.responseOption() });
|
1807
1816
|
this.abortWhenLayerClosed();
|
1808
1817
|
}
|
1809
1818
|
});
|
1810
1819
|
}
|
1811
1820
|
tryAcceptLayerFromServer() {
|
1812
1821
|
if (u.isDefined(this.acceptLayer) && this.layer.isOverlay()) {
|
1813
|
-
this.layer.accept(this.acceptLayer);
|
1822
|
+
this.layer.accept(this.acceptLayer, this.responseOption());
|
1814
1823
|
}
|
1815
1824
|
}
|
1816
1825
|
tryDismissLayerFromServer() {
|
1817
1826
|
if (u.isDefined(this.dismissLayer) && this.layer.isOverlay()) {
|
1818
|
-
this.layer.dismiss(this.dismissLayer);
|
1827
|
+
this.layer.dismiss(this.dismissLayer, this.responseOption());
|
1819
1828
|
}
|
1820
1829
|
}
|
1821
1830
|
abortWhenLayerClosed() {
|
@@ -1842,6 +1851,9 @@ up.Change.Addition = class Addition extends up.Change {
|
|
1842
1851
|
this.setTime(options);
|
1843
1852
|
this.setETag(options);
|
1844
1853
|
}
|
1854
|
+
responseOption() {
|
1855
|
+
return { response: this.response };
|
1856
|
+
}
|
1845
1857
|
};
|
1846
1858
|
|
1847
1859
|
|
@@ -1898,6 +1910,10 @@ up.RenderJob = (_a = class RenderJob {
|
|
1898
1910
|
let onRequest = (request) => this.handleAbortOption(request);
|
1899
1911
|
this.change = new up.Change.FromURL({ ...this.options, onRequest });
|
1900
1912
|
}
|
1913
|
+
else if (this.options.response) {
|
1914
|
+
this.change = new up.Change.FromResponse(this.options);
|
1915
|
+
this.handleAbortOption(null);
|
1916
|
+
}
|
1901
1917
|
else {
|
1902
1918
|
this.change = new up.Change.FromContent(this.options);
|
1903
1919
|
this.handleAbortOption(null);
|
@@ -2031,7 +2047,7 @@ up.Change.OpenLayer = class OpenLayer extends up.Change.Addition {
|
|
2031
2047
|
this.content = responseDoc.select(this.target);
|
2032
2048
|
}
|
2033
2049
|
if (!this.content || this.baseLayer.isClosed()) {
|
2034
|
-
throw
|
2050
|
+
throw new up.CannotMatch();
|
2035
2051
|
}
|
2036
2052
|
onApplicable();
|
2037
2053
|
up.puts('up.render()', `Opening element "${this.target}" in new overlay`);
|
@@ -2347,7 +2363,7 @@ up.Change.UpdateLayer = (_a = class UpdateLayer extends up.Change.Addition {
|
|
2347
2363
|
return true;
|
2348
2364
|
}
|
2349
2365
|
else if (!step.maybe) {
|
2350
|
-
throw
|
2366
|
+
throw new up.CannotMatch();
|
2351
2367
|
}
|
2352
2368
|
});
|
2353
2369
|
this.resolveOldNesting();
|
@@ -2363,7 +2379,7 @@ up.Change.UpdateLayer = (_a = class UpdateLayer extends up.Change.Addition {
|
|
2363
2379
|
return true;
|
2364
2380
|
}
|
2365
2381
|
else if (!step.maybe) {
|
2366
|
-
throw
|
2382
|
+
throw new up.CannotMatch();
|
2367
2383
|
}
|
2368
2384
|
});
|
2369
2385
|
this.resolveOldNesting();
|
@@ -2466,6 +2482,7 @@ up.Change.CloseLayer = class CloseLayer extends up.Change.Removal {
|
|
2466
2482
|
this.origin = options.origin;
|
2467
2483
|
this.value = options.value;
|
2468
2484
|
this.preventable = options.preventable ?? true;
|
2485
|
+
this.response = options.response;
|
2469
2486
|
}
|
2470
2487
|
execute() {
|
2471
2488
|
if (!this.layer.isOpen()) {
|
@@ -2507,7 +2524,8 @@ up.Change.CloseLayer = class CloseLayer extends up.Change.Removal {
|
|
2507
2524
|
return up.event.build(name, {
|
2508
2525
|
layer: this.layer,
|
2509
2526
|
value: this.value,
|
2510
|
-
origin: this.origin
|
2527
|
+
origin: this.origin,
|
2528
|
+
response: this.response,
|
2511
2529
|
});
|
2512
2530
|
}
|
2513
2531
|
handleFocus(formerParent) {
|
@@ -2523,142 +2541,6 @@ up.Change.CloseLayer = class CloseLayer extends up.Change.Removal {
|
|
2523
2541
|
/* 31 */
|
2524
2542
|
/***/ (() => {
|
2525
2543
|
|
2526
|
-
var _a;
|
2527
|
-
const u = up.util;
|
2528
|
-
up.Change.FromContent = (_a = class FromContent extends up.Change {
|
2529
|
-
constructor(options) {
|
2530
|
-
super(options);
|
2531
|
-
this.layers = u.filter(up.layer.getAll(this.options), this.isRenderableLayer);
|
2532
|
-
this.origin = this.options.origin;
|
2533
|
-
this.preview = this.options.preview;
|
2534
|
-
this.mode = this.options.mode;
|
2535
|
-
if (this.origin) {
|
2536
|
-
this.originLayer = up.layer.get(this.origin);
|
2537
|
-
}
|
2538
|
-
}
|
2539
|
-
isRenderableLayer(layer) {
|
2540
|
-
return (layer === 'new') || layer.isOpen();
|
2541
|
-
}
|
2542
|
-
getPlans() {
|
2543
|
-
var _a;
|
2544
|
-
let plans = [];
|
2545
|
-
if (this.options.fragment) {
|
2546
|
-
(_a = this.options).target || (_a.target = this.getResponseDoc().rootSelector());
|
2547
|
-
}
|
2548
|
-
this.expandIntoPlans(plans, this.layers, this.options.target);
|
2549
|
-
this.expandIntoPlans(plans, this.layers, this.options.fallback);
|
2550
|
-
return plans;
|
2551
|
-
}
|
2552
|
-
expandIntoPlans(plans, layers, targets) {
|
2553
|
-
for (let layer of layers) {
|
2554
|
-
for (let target of this.expandTargets(targets, layer)) {
|
2555
|
-
const props = { ...this.options, target, layer, defaultPlacement: this.defaultPlacement() };
|
2556
|
-
const change = layer === 'new' ? new up.Change.OpenLayer(props) : new up.Change.UpdateLayer(props);
|
2557
|
-
plans.push(change);
|
2558
|
-
}
|
2559
|
-
}
|
2560
|
-
}
|
2561
|
-
expandTargets(targets, layer) {
|
2562
|
-
return up.fragment.expandTargets(targets, { layer, mode: this.mode, origin: this.origin });
|
2563
|
-
}
|
2564
|
-
execute() {
|
2565
|
-
if (this.options.preload) {
|
2566
|
-
return Promise.resolve();
|
2567
|
-
}
|
2568
|
-
return this.seekPlan(this.executePlan.bind(this)) || this.cannotMatchPostflightTarget();
|
2569
|
-
}
|
2570
|
-
executePlan(matchedPlan) {
|
2571
|
-
let result = matchedPlan.execute(this.getResponseDoc(), this.onPlanApplicable.bind(this, matchedPlan));
|
2572
|
-
result.options = this.options;
|
2573
|
-
return result;
|
2574
|
-
}
|
2575
|
-
onPlanApplicable(plan) {
|
2576
|
-
let primaryPlan = this.getPlans()[0];
|
2577
|
-
if (plan !== primaryPlan) {
|
2578
|
-
up.puts('up.render()', 'Could not match primary target "%s". Updating a fallback target "%s".', primaryPlan.target, plan.target);
|
2579
|
-
}
|
2580
|
-
}
|
2581
|
-
getResponseDoc() {
|
2582
|
-
if (this.preview)
|
2583
|
-
return;
|
2584
|
-
const docOptions = u.pick(this.options, [
|
2585
|
-
'target',
|
2586
|
-
'content',
|
2587
|
-
'fragment',
|
2588
|
-
'document',
|
2589
|
-
'html',
|
2590
|
-
'cspNonces',
|
2591
|
-
'origin',
|
2592
|
-
]);
|
2593
|
-
up.migrate.handleResponseDocOptions?.(docOptions);
|
2594
|
-
if (this.defaultPlacement() === 'content') {
|
2595
|
-
docOptions.target = this.firstExpandedTarget(docOptions.target);
|
2596
|
-
}
|
2597
|
-
return new up.ResponseDoc(docOptions);
|
2598
|
-
}
|
2599
|
-
defaultPlacement() {
|
2600
|
-
if (!this.options.document && !this.options.fragment) {
|
2601
|
-
return 'content';
|
2602
|
-
}
|
2603
|
-
}
|
2604
|
-
firstExpandedTarget(target) {
|
2605
|
-
return this.expandTargets(target || ':main', this.layers[0])[0];
|
2606
|
-
}
|
2607
|
-
getPreflightProps(opts = {}) {
|
2608
|
-
const getPlanProps = plan => plan.getPreflightProps();
|
2609
|
-
return this.seekPlan(getPlanProps) || opts.optional || this.cannotMatchPreflightTarget();
|
2610
|
-
}
|
2611
|
-
cannotMatchPreflightTarget() {
|
2612
|
-
this.cannotMatchTarget('Could not find target in current page');
|
2613
|
-
}
|
2614
|
-
cannotMatchPostflightTarget() {
|
2615
|
-
this.cannotMatchTarget('Could not find common target in current page and response');
|
2616
|
-
}
|
2617
|
-
cannotMatchTarget(reason) {
|
2618
|
-
if (this.getPlans().length) {
|
2619
|
-
const planTargets = u.uniq(u.map(this.getPlans(), 'target'));
|
2620
|
-
const humanizedLayerOption = up.layer.optionToString(this.options.layer);
|
2621
|
-
up.fail(reason + " (tried selectors %o in %s)", planTargets, humanizedLayerOption);
|
2622
|
-
}
|
2623
|
-
else if (this.layers.length) {
|
2624
|
-
if (this.options.failPrefixForced) {
|
2625
|
-
up.fail('No target selector given for failed responses (https://unpoly.com/failed-responses)');
|
2626
|
-
}
|
2627
|
-
else {
|
2628
|
-
up.fail('No target selector given');
|
2629
|
-
}
|
2630
|
-
}
|
2631
|
-
else {
|
2632
|
-
up.fail('Layer %o does not exist', this.options.layer);
|
2633
|
-
}
|
2634
|
-
}
|
2635
|
-
seekPlan(fn) {
|
2636
|
-
for (let plan of this.getPlans()) {
|
2637
|
-
try {
|
2638
|
-
return fn(plan);
|
2639
|
-
}
|
2640
|
-
catch (error) {
|
2641
|
-
if (!(error instanceof up.CannotMatch)) {
|
2642
|
-
throw error;
|
2643
|
-
}
|
2644
|
-
}
|
2645
|
-
}
|
2646
|
-
}
|
2647
|
-
},
|
2648
|
-
(() => {
|
2649
|
-
u.memoizeMethod(_a.prototype, [
|
2650
|
-
'getPlans',
|
2651
|
-
'getResponseDoc',
|
2652
|
-
'getPreflightProps',
|
2653
|
-
]);
|
2654
|
-
})(),
|
2655
|
-
_a);
|
2656
|
-
|
2657
|
-
|
2658
|
-
/***/ }),
|
2659
|
-
/* 32 */
|
2660
|
-
/***/ (() => {
|
2661
|
-
|
2662
2544
|
var _a;
|
2663
2545
|
const u = up.util;
|
2664
2546
|
up.Change.FromURL = (_a = class FromURL extends up.Change {
|
@@ -2683,9 +2565,6 @@ up.Change.FromURL = (_a = class FromURL extends up.Change {
|
|
2683
2565
|
}
|
2684
2566
|
return u.always(this.request, responseOrError => this.onRequestSettled(responseOrError));
|
2685
2567
|
}
|
2686
|
-
deriveFailOptions() {
|
2687
|
-
return up.RenderOptions.deriveFailOptions(this.options);
|
2688
|
-
}
|
2689
2568
|
newPageReason() {
|
2690
2569
|
if (u.isCrossOrigin(this.options.url)) {
|
2691
2570
|
return 'Loading cross-origin content in new page';
|
@@ -2719,7 +2598,41 @@ up.Change.FromURL = (_a = class FromURL extends up.Change {
|
|
2719
2598
|
}
|
2720
2599
|
}
|
2721
2600
|
onRequestSettledWithResponse(response) {
|
2722
|
-
this.response
|
2601
|
+
return new up.Change.FromResponse({ ...this.options, response }).execute();
|
2602
|
+
}
|
2603
|
+
onRequestSettledWithError(error) {
|
2604
|
+
if (error instanceof up.Offline) {
|
2605
|
+
this.request.emit('up:fragment:offline', {
|
2606
|
+
callback: this.options.onOffline,
|
2607
|
+
renderOptions: this.options,
|
2608
|
+
retry: (retryOptions) => up.render({ ...this.options, ...retryOptions }),
|
2609
|
+
log: ['Cannot load fragment from %s: %s', this.request.description, error.reason],
|
2610
|
+
});
|
2611
|
+
}
|
2612
|
+
throw error;
|
2613
|
+
}
|
2614
|
+
},
|
2615
|
+
(() => {
|
2616
|
+
u.memoizeMethod(_a.prototype, [
|
2617
|
+
'getRequestAttrs',
|
2618
|
+
]);
|
2619
|
+
})(),
|
2620
|
+
_a);
|
2621
|
+
|
2622
|
+
|
2623
|
+
/***/ }),
|
2624
|
+
/* 32 */
|
2625
|
+
/***/ (() => {
|
2626
|
+
|
2627
|
+
var _a;
|
2628
|
+
const u = up.util;
|
2629
|
+
up.Change.FromResponse = (_a = class FromResponse extends up.Change {
|
2630
|
+
constructor(options) {
|
2631
|
+
super(options);
|
2632
|
+
this.response = options.response;
|
2633
|
+
this.request = this.response.request;
|
2634
|
+
}
|
2635
|
+
execute() {
|
2723
2636
|
if (up.fragment.config.skipResponse(this.loadedEventProps())) {
|
2724
2637
|
this.skip();
|
2725
2638
|
}
|
@@ -2731,40 +2644,12 @@ up.Change.FromURL = (_a = class FromURL extends up.Change {
|
|
2731
2644
|
skip: () => this.skip()
|
2732
2645
|
});
|
2733
2646
|
}
|
2734
|
-
let fail = u.evalOption(this.options.fail, this.response) ?? !response.ok;
|
2647
|
+
let fail = u.evalOption(this.options.fail, this.response) ?? !this.response.ok;
|
2735
2648
|
if (fail) {
|
2736
2649
|
throw this.updateContentFromResponse(this.deriveFailOptions());
|
2737
2650
|
}
|
2738
2651
|
return this.updateContentFromResponse(this.options);
|
2739
2652
|
}
|
2740
|
-
compilerPassMeta() {
|
2741
|
-
return u.pick(this.loadedEventProps(), [
|
2742
|
-
'revalidating',
|
2743
|
-
'response'
|
2744
|
-
]);
|
2745
|
-
}
|
2746
|
-
loadedEventProps() {
|
2747
|
-
const { expiredResponse } = this.options;
|
2748
|
-
return {
|
2749
|
-
request: this.request,
|
2750
|
-
response: this.response,
|
2751
|
-
renderOptions: this.options,
|
2752
|
-
revalidating: !!expiredResponse,
|
2753
|
-
expiredResponse,
|
2754
|
-
};
|
2755
|
-
}
|
2756
|
-
onRequestSettledWithError(error) {
|
2757
|
-
if (error instanceof up.Offline) {
|
2758
|
-
this.request.emit('up:fragment:offline', {
|
2759
|
-
callback: this.options.onOffline,
|
2760
|
-
response: this.response,
|
2761
|
-
renderOptions: this.options,
|
2762
|
-
retry: (retryOptions) => up.render({ ...this.options, ...retryOptions }),
|
2763
|
-
log: ['Cannot load fragment from %s: %s', this.request.description, error.reason],
|
2764
|
-
});
|
2765
|
-
}
|
2766
|
-
throw error;
|
2767
|
-
}
|
2768
2653
|
skip() {
|
2769
2654
|
up.puts('up.render()', 'Skipping ' + this.response.description);
|
2770
2655
|
this.options.target = ':none';
|
@@ -2813,52 +2698,205 @@ up.Change.FromURL = (_a = class FromURL extends up.Change {
|
|
2813
2698
|
}
|
2814
2699
|
return renderResult;
|
2815
2700
|
}
|
2816
|
-
|
2817
|
-
const
|
2818
|
-
|
2819
|
-
|
2820
|
-
|
2821
|
-
renderOptions.
|
2822
|
-
|
2701
|
+
loadedEventProps() {
|
2702
|
+
const { expiredResponse } = this.options;
|
2703
|
+
return {
|
2704
|
+
request: this.request,
|
2705
|
+
response: this.response,
|
2706
|
+
renderOptions: this.options,
|
2707
|
+
revalidating: !!expiredResponse,
|
2708
|
+
expiredResponse,
|
2709
|
+
};
|
2710
|
+
}
|
2711
|
+
compilerPassMeta() {
|
2712
|
+
return u.pick(this.loadedEventProps(), [
|
2713
|
+
'revalidating',
|
2714
|
+
'response'
|
2715
|
+
]);
|
2716
|
+
}
|
2717
|
+
augmentOptionsFromResponse(renderOptions) {
|
2718
|
+
const responseURL = this.response.url;
|
2719
|
+
let serverLocation = responseURL;
|
2720
|
+
let hash = this.request.hash;
|
2721
|
+
if (hash) {
|
2722
|
+
renderOptions.hash = hash;
|
2723
|
+
serverLocation += hash;
|
2724
|
+
}
|
2725
|
+
const isReloadable = (this.response.method === 'GET');
|
2726
|
+
if (isReloadable) {
|
2727
|
+
renderOptions.source = this.improveHistoryValue(renderOptions.source, responseURL);
|
2728
|
+
}
|
2729
|
+
else {
|
2730
|
+
renderOptions.source = this.improveHistoryValue(renderOptions.source, 'keep');
|
2731
|
+
renderOptions.history = !!renderOptions.location;
|
2732
|
+
}
|
2733
|
+
renderOptions.location = this.improveHistoryValue(renderOptions.location, serverLocation);
|
2734
|
+
renderOptions.title = this.improveHistoryValue(renderOptions.title, this.response.title);
|
2735
|
+
renderOptions.eventPlans = this.response.eventPlans;
|
2736
|
+
let serverTarget = this.response.target;
|
2737
|
+
if (serverTarget) {
|
2738
|
+
renderOptions.target = serverTarget;
|
2739
|
+
}
|
2740
|
+
renderOptions.acceptLayer = this.response.acceptLayer;
|
2741
|
+
renderOptions.dismissLayer = this.response.dismissLayer;
|
2742
|
+
renderOptions.document = this.response.text;
|
2743
|
+
if (this.response.none) {
|
2744
|
+
renderOptions.target = ':none';
|
2745
|
+
}
|
2746
|
+
renderOptions.context = u.merge(renderOptions.context, this.response.context);
|
2747
|
+
renderOptions.cspNonces = this.response.cspNonces;
|
2748
|
+
renderOptions.time ?? (renderOptions.time = this.response.lastModified);
|
2749
|
+
renderOptions.etag ?? (renderOptions.etag = this.response.etag);
|
2750
|
+
}
|
2751
|
+
},
|
2752
|
+
(() => {
|
2753
|
+
u.memoizeMethod(_a.prototype, [
|
2754
|
+
'loadedEventProps',
|
2755
|
+
]);
|
2756
|
+
})(),
|
2757
|
+
_a);
|
2758
|
+
|
2759
|
+
|
2760
|
+
/***/ }),
|
2761
|
+
/* 33 */
|
2762
|
+
/***/ (() => {
|
2763
|
+
|
2764
|
+
var _a;
|
2765
|
+
const u = up.util;
|
2766
|
+
up.Change.FromContent = (_a = class FromContent extends up.Change {
|
2767
|
+
constructor(options) {
|
2768
|
+
super(options);
|
2769
|
+
this.layers = u.filter(up.layer.getAll(this.options), this.isRenderableLayer);
|
2770
|
+
this.origin = this.options.origin;
|
2771
|
+
this.preview = this.options.preview;
|
2772
|
+
this.mode = this.options.mode;
|
2773
|
+
if (this.origin) {
|
2774
|
+
this.originLayer = up.layer.get(this.origin);
|
2775
|
+
}
|
2776
|
+
}
|
2777
|
+
isRenderableLayer(layer) {
|
2778
|
+
return (layer === 'new') || layer.isOpen();
|
2779
|
+
}
|
2780
|
+
getPlans() {
|
2781
|
+
var _a;
|
2782
|
+
let plans = [];
|
2783
|
+
if (this.options.fragment) {
|
2784
|
+
(_a = this.options).target || (_a.target = this.getResponseDoc().rootSelector());
|
2785
|
+
}
|
2786
|
+
this.expandIntoPlans(plans, this.layers, this.options.target);
|
2787
|
+
this.expandIntoPlans(plans, this.layers, this.options.fallback);
|
2788
|
+
return plans;
|
2789
|
+
}
|
2790
|
+
expandIntoPlans(plans, layers, targets) {
|
2791
|
+
for (let layer of layers) {
|
2792
|
+
for (let target of this.expandTargets(targets, layer)) {
|
2793
|
+
const props = { ...this.options, target, layer, defaultPlacement: this.defaultPlacement() };
|
2794
|
+
const change = layer === 'new' ? new up.Change.OpenLayer(props) : new up.Change.UpdateLayer(props);
|
2795
|
+
plans.push(change);
|
2796
|
+
}
|
2797
|
+
}
|
2798
|
+
}
|
2799
|
+
expandTargets(targets, layer) {
|
2800
|
+
return up.fragment.expandTargets(targets, { layer, mode: this.mode, origin: this.origin });
|
2801
|
+
}
|
2802
|
+
execute() {
|
2803
|
+
if (this.options.preload) {
|
2804
|
+
return Promise.resolve();
|
2805
|
+
}
|
2806
|
+
return this.seekPlan(this.executePlan.bind(this)) || this.cannotMatchPostflightTarget();
|
2807
|
+
}
|
2808
|
+
executePlan(matchedPlan) {
|
2809
|
+
let result = matchedPlan.execute(this.getResponseDoc(), this.onPlanApplicable.bind(this, matchedPlan));
|
2810
|
+
result.options = this.options;
|
2811
|
+
return result;
|
2812
|
+
}
|
2813
|
+
onPlanApplicable(plan) {
|
2814
|
+
let primaryPlan = this.getPlans()[0];
|
2815
|
+
if (plan !== primaryPlan) {
|
2816
|
+
up.puts('up.render()', 'Could not match primary target "%s". Updating a fallback target "%s".', primaryPlan.target, plan.target);
|
2817
|
+
}
|
2818
|
+
}
|
2819
|
+
getResponseDoc() {
|
2820
|
+
if (this.preview)
|
2821
|
+
return;
|
2822
|
+
const docOptions = u.pick(this.options, [
|
2823
|
+
'target',
|
2824
|
+
'content',
|
2825
|
+
'fragment',
|
2826
|
+
'document',
|
2827
|
+
'html',
|
2828
|
+
'cspNonces',
|
2829
|
+
'origin',
|
2830
|
+
]);
|
2831
|
+
up.migrate.handleResponseDocOptions?.(docOptions);
|
2832
|
+
if (this.defaultPlacement() === 'content') {
|
2833
|
+
docOptions.target = this.firstExpandedTarget(docOptions.target);
|
2834
|
+
}
|
2835
|
+
return new up.ResponseDoc(docOptions);
|
2836
|
+
}
|
2837
|
+
defaultPlacement() {
|
2838
|
+
if (!this.options.document && !this.options.fragment) {
|
2839
|
+
return 'content';
|
2840
|
+
}
|
2841
|
+
}
|
2842
|
+
firstExpandedTarget(target) {
|
2843
|
+
return this.expandTargets(target || ':main', this.layers[0])[0];
|
2844
|
+
}
|
2845
|
+
getPreflightProps(opts = {}) {
|
2846
|
+
const getPlanProps = plan => plan.getPreflightProps();
|
2847
|
+
return this.seekPlan(getPlanProps) || opts.optional || this.cannotMatchPreflightTarget();
|
2848
|
+
}
|
2849
|
+
cannotMatchPreflightTarget() {
|
2850
|
+
this.cannotMatchTarget('Could not find target in current page');
|
2851
|
+
}
|
2852
|
+
cannotMatchPostflightTarget() {
|
2853
|
+
this.cannotMatchTarget('Could not find common target in current page and response');
|
2854
|
+
}
|
2855
|
+
cannotMatchTarget(reason) {
|
2856
|
+
let message;
|
2857
|
+
if (this.getPlans().length) {
|
2858
|
+
const planTargets = u.uniq(u.map(this.getPlans(), 'target'));
|
2859
|
+
const humanizedLayerOption = up.layer.optionToString(this.options.layer);
|
2860
|
+
message = [reason + " (tried selectors %o in %s)", planTargets, humanizedLayerOption];
|
2823
2861
|
}
|
2824
|
-
|
2825
|
-
|
2826
|
-
|
2862
|
+
else if (this.layers.length) {
|
2863
|
+
if (this.options.failPrefixForced) {
|
2864
|
+
message = 'No target selector given for failed responses (https://unpoly.com/failed-responses)';
|
2865
|
+
}
|
2866
|
+
else {
|
2867
|
+
message = 'No target selector given';
|
2868
|
+
}
|
2827
2869
|
}
|
2828
2870
|
else {
|
2829
|
-
|
2830
|
-
renderOptions.history = !!renderOptions.location;
|
2831
|
-
}
|
2832
|
-
renderOptions.location = this.improveHistoryValue(renderOptions.location, serverLocation);
|
2833
|
-
renderOptions.title = this.improveHistoryValue(renderOptions.title, this.response.title);
|
2834
|
-
renderOptions.eventPlans = this.response.eventPlans;
|
2835
|
-
let serverTarget = this.response.target;
|
2836
|
-
if (serverTarget) {
|
2837
|
-
renderOptions.target = serverTarget;
|
2871
|
+
message = 'Could not find a layer to render in. You may have passed a non-existing layer reference, or a detached element.';
|
2838
2872
|
}
|
2839
|
-
|
2840
|
-
|
2841
|
-
|
2842
|
-
|
2843
|
-
|
2873
|
+
throw new up.CannotMatch(message);
|
2874
|
+
}
|
2875
|
+
seekPlan(fn) {
|
2876
|
+
for (let plan of this.getPlans()) {
|
2877
|
+
try {
|
2878
|
+
return fn(plan);
|
2879
|
+
}
|
2880
|
+
catch (error) {
|
2881
|
+
if (!(error instanceof up.CannotMatch)) {
|
2882
|
+
throw error;
|
2883
|
+
}
|
2884
|
+
}
|
2844
2885
|
}
|
2845
|
-
renderOptions.context = u.merge(renderOptions.context, this.response.context);
|
2846
|
-
renderOptions.cspNonces = this.response.cspNonces;
|
2847
|
-
renderOptions.time ?? (renderOptions.time = this.response.lastModified);
|
2848
|
-
renderOptions.etag ?? (renderOptions.etag = this.response.etag);
|
2849
2886
|
}
|
2850
2887
|
},
|
2851
2888
|
(() => {
|
2852
2889
|
u.memoizeMethod(_a.prototype, [
|
2853
|
-
'
|
2854
|
-
'
|
2890
|
+
'getPlans',
|
2891
|
+
'getResponseDoc',
|
2892
|
+
'getPreflightProps',
|
2855
2893
|
]);
|
2856
2894
|
})(),
|
2857
2895
|
_a);
|
2858
2896
|
|
2859
2897
|
|
2860
2898
|
/***/ }),
|
2861
|
-
/*
|
2899
|
+
/* 34 */
|
2862
2900
|
/***/ (() => {
|
2863
2901
|
|
2864
2902
|
const u = up.util;
|
@@ -2969,7 +3007,7 @@ up.CompilerPass = class CompilerPass {
|
|
2969
3007
|
|
2970
3008
|
|
2971
3009
|
/***/ }),
|
2972
|
-
/*
|
3010
|
+
/* 35 */
|
2973
3011
|
/***/ (() => {
|
2974
3012
|
|
2975
3013
|
const u = up.util;
|
@@ -3080,7 +3118,7 @@ up.CSSTransition = class CSSTransition {
|
|
3080
3118
|
|
3081
3119
|
|
3082
3120
|
/***/ }),
|
3083
|
-
/*
|
3121
|
+
/* 36 */
|
3084
3122
|
/***/ (() => {
|
3085
3123
|
|
3086
3124
|
const u = up.util;
|
@@ -3122,7 +3160,7 @@ up.DestructorPass = class DestructorPass {
|
|
3122
3160
|
|
3123
3161
|
|
3124
3162
|
/***/ }),
|
3125
|
-
/*
|
3163
|
+
/* 37 */
|
3126
3164
|
/***/ (() => {
|
3127
3165
|
|
3128
3166
|
const u = up.util;
|
@@ -3221,7 +3259,7 @@ up.EventEmitter = class EventEmitter extends up.Record {
|
|
3221
3259
|
|
3222
3260
|
|
3223
3261
|
/***/ }),
|
3224
|
-
/*
|
3262
|
+
/* 38 */
|
3225
3263
|
/***/ (() => {
|
3226
3264
|
|
3227
3265
|
const u = up.util;
|
@@ -3323,7 +3361,7 @@ up.EventListener = class EventListener extends up.Record {
|
|
3323
3361
|
|
3324
3362
|
|
3325
3363
|
/***/ }),
|
3326
|
-
/*
|
3364
|
+
/* 39 */
|
3327
3365
|
/***/ (() => {
|
3328
3366
|
|
3329
3367
|
const u = up.util;
|
@@ -3395,7 +3433,7 @@ up.EventListenerGroup = class EventListenerGroup extends up.Record {
|
|
3395
3433
|
|
3396
3434
|
|
3397
3435
|
/***/ }),
|
3398
|
-
/*
|
3436
|
+
/* 40 */
|
3399
3437
|
/***/ (() => {
|
3400
3438
|
|
3401
3439
|
const u = up.util;
|
@@ -3511,7 +3549,7 @@ up.FieldWatcher = class FieldWatcher {
|
|
3511
3549
|
|
3512
3550
|
|
3513
3551
|
/***/ }),
|
3514
|
-
/*
|
3552
|
+
/* 41 */
|
3515
3553
|
/***/ (() => {
|
3516
3554
|
|
3517
3555
|
const u = up.util;
|
@@ -3685,7 +3723,7 @@ up.FormValidator = class FormValidator {
|
|
3685
3723
|
|
3686
3724
|
|
3687
3725
|
/***/ }),
|
3688
|
-
/*
|
3726
|
+
/* 42 */
|
3689
3727
|
/***/ (() => {
|
3690
3728
|
|
3691
3729
|
up.FocusCapsule = class FocusCapsule {
|
@@ -3715,7 +3753,7 @@ up.FocusCapsule = class FocusCapsule {
|
|
3715
3753
|
|
3716
3754
|
|
3717
3755
|
/***/ }),
|
3718
|
-
/*
|
3756
|
+
/* 43 */
|
3719
3757
|
/***/ (() => {
|
3720
3758
|
|
3721
3759
|
const u = up.util;
|
@@ -3779,7 +3817,7 @@ up.FragmentProcessor = class FragmentProcessor extends up.Record {
|
|
3779
3817
|
|
3780
3818
|
|
3781
3819
|
/***/ }),
|
3782
|
-
/*
|
3820
|
+
/* 44 */
|
3783
3821
|
/***/ (() => {
|
3784
3822
|
|
3785
3823
|
const DESCENDANT_SELECTOR = /^([^ >+(]+) (.+)$/;
|
@@ -3822,7 +3860,7 @@ up.FragmentFinder = class FragmentFinder {
|
|
3822
3860
|
|
3823
3861
|
|
3824
3862
|
/***/ }),
|
3825
|
-
/*
|
3863
|
+
/* 45 */
|
3826
3864
|
/***/ (() => {
|
3827
3865
|
|
3828
3866
|
const u = up.util;
|
@@ -3906,7 +3944,7 @@ up.FragmentFocus = class FragmentFocus extends up.FragmentProcessor {
|
|
3906
3944
|
|
3907
3945
|
|
3908
3946
|
/***/ }),
|
3909
|
-
/*
|
3947
|
+
/* 46 */
|
3910
3948
|
/***/ (() => {
|
3911
3949
|
|
3912
3950
|
const e = up.element;
|
@@ -4013,7 +4051,7 @@ up.FragmentPolling = class FragmentPolling {
|
|
4013
4051
|
|
4014
4052
|
|
4015
4053
|
/***/ }),
|
4016
|
-
/*
|
4054
|
+
/* 47 */
|
4017
4055
|
/***/ (() => {
|
4018
4056
|
|
4019
4057
|
const u = up.util;
|
@@ -4077,7 +4115,7 @@ up.FragmentScrolling = class FragmentScrolling extends up.FragmentProcessor {
|
|
4077
4115
|
|
4078
4116
|
|
4079
4117
|
/***/ }),
|
4080
|
-
/*
|
4118
|
+
/* 48 */
|
4081
4119
|
/***/ (() => {
|
4082
4120
|
|
4083
4121
|
const e = up.element;
|
@@ -4300,7 +4338,7 @@ up.Layer = class Layer extends up.Record {
|
|
4300
4338
|
|
4301
4339
|
|
4302
4340
|
/***/ }),
|
4303
|
-
/*
|
4341
|
+
/* 49 */
|
4304
4342
|
/***/ (() => {
|
4305
4343
|
|
4306
4344
|
const e = up.element;
|
@@ -4491,20 +4529,20 @@ up.Layer.Overlay = class Overlay extends up.Layer {
|
|
4491
4529
|
}
|
4492
4530
|
return this.on(eventTypes, event => {
|
4493
4531
|
event.preventDefault();
|
4494
|
-
closeFn.call(this, event);
|
4532
|
+
closeFn.call(this, event, { response: event.response });
|
4495
4533
|
});
|
4496
4534
|
}
|
4497
|
-
tryAcceptForLocation() {
|
4498
|
-
this.tryCloseForLocation(this.acceptLocation, this.accept);
|
4535
|
+
tryAcceptForLocation(options) {
|
4536
|
+
this.tryCloseForLocation(this.acceptLocation, this.accept, options);
|
4499
4537
|
}
|
4500
|
-
tryDismissForLocation() {
|
4501
|
-
this.tryCloseForLocation(this.dismissLocation, this.dismiss);
|
4538
|
+
tryDismissForLocation(options) {
|
4539
|
+
this.tryCloseForLocation(this.dismissLocation, this.dismiss, options);
|
4502
4540
|
}
|
4503
|
-
tryCloseForLocation(urlPattern, closeFn) {
|
4541
|
+
tryCloseForLocation(urlPattern, closeFn, options) {
|
4504
4542
|
let location, resolution;
|
4505
4543
|
if (urlPattern && (location = this.location) && (resolution = urlPattern.recognize(location))) {
|
4506
4544
|
const closeValue = { ...resolution, location };
|
4507
|
-
closeFn.call(this, closeValue);
|
4545
|
+
closeFn.call(this, closeValue, options);
|
4508
4546
|
}
|
4509
4547
|
}
|
4510
4548
|
teardownHandlers() {
|
@@ -4575,7 +4613,7 @@ up.Layer.Overlay = class Overlay extends up.Layer {
|
|
4575
4613
|
|
4576
4614
|
|
4577
4615
|
/***/ }),
|
4578
|
-
/*
|
4616
|
+
/* 50 */
|
4579
4617
|
/***/ (() => {
|
4580
4618
|
|
4581
4619
|
up.Layer.OverlayWithTether = class OverlayWithTether extends up.Layer.Overlay {
|
@@ -4612,7 +4650,7 @@ up.Layer.OverlayWithTether = class OverlayWithTether extends up.Layer.Overlay {
|
|
4612
4650
|
|
4613
4651
|
|
4614
4652
|
/***/ }),
|
4615
|
-
/*
|
4653
|
+
/* 51 */
|
4616
4654
|
/***/ (() => {
|
4617
4655
|
|
4618
4656
|
var _a;
|
@@ -4650,19 +4688,19 @@ up.Layer.OverlayWithViewport = (_a = class OverlayWithViewport extends up.Layer.
|
|
4650
4688
|
|
4651
4689
|
|
4652
4690
|
/***/ }),
|
4653
|
-
/*
|
4691
|
+
/* 52 */
|
4654
4692
|
/***/ (() => {
|
4655
4693
|
|
4656
4694
|
var _a;
|
4657
4695
|
const e = up.element;
|
4658
4696
|
up.Layer.Root = (_a = class Root extends up.Layer {
|
4659
|
-
get element() {
|
4660
|
-
return e.root;
|
4661
|
-
}
|
4662
4697
|
constructor(options) {
|
4663
4698
|
super(options);
|
4664
4699
|
this.setupHandlers();
|
4665
4700
|
}
|
4701
|
+
get element() {
|
4702
|
+
return e.root;
|
4703
|
+
}
|
4666
4704
|
getFirstSwappableElement() {
|
4667
4705
|
return document.body;
|
4668
4706
|
}
|
@@ -4696,7 +4734,7 @@ up.Layer.Root = (_a = class Root extends up.Layer {
|
|
4696
4734
|
|
4697
4735
|
|
4698
4736
|
/***/ }),
|
4699
|
-
/*
|
4737
|
+
/* 53 */
|
4700
4738
|
/***/ (() => {
|
4701
4739
|
|
4702
4740
|
var _a;
|
@@ -4707,7 +4745,7 @@ up.Layer.Modal = (_a = class Modal extends up.Layer.OverlayWithViewport {
|
|
4707
4745
|
|
4708
4746
|
|
4709
4747
|
/***/ }),
|
4710
|
-
/*
|
4748
|
+
/* 54 */
|
4711
4749
|
/***/ (() => {
|
4712
4750
|
|
4713
4751
|
var _a;
|
@@ -4718,7 +4756,7 @@ up.Layer.Popup = (_a = class Popup extends up.Layer.OverlayWithTether {
|
|
4718
4756
|
|
4719
4757
|
|
4720
4758
|
/***/ }),
|
4721
|
-
/*
|
4759
|
+
/* 55 */
|
4722
4760
|
/***/ (() => {
|
4723
4761
|
|
4724
4762
|
var _a;
|
@@ -4729,7 +4767,7 @@ up.Layer.Drawer = (_a = class Drawer extends up.Layer.OverlayWithViewport {
|
|
4729
4767
|
|
4730
4768
|
|
4731
4769
|
/***/ }),
|
4732
|
-
/*
|
4770
|
+
/* 56 */
|
4733
4771
|
/***/ (() => {
|
4734
4772
|
|
4735
4773
|
var _a;
|
@@ -4740,7 +4778,7 @@ up.Layer.Cover = (_a = class Cover extends up.Layer.OverlayWithViewport {
|
|
4740
4778
|
|
4741
4779
|
|
4742
4780
|
/***/ }),
|
4743
|
-
/*
|
4781
|
+
/* 57 */
|
4744
4782
|
/***/ (() => {
|
4745
4783
|
|
4746
4784
|
const u = up.util;
|
@@ -4830,7 +4868,7 @@ up.LayerLookup = class LayerLookup {
|
|
4830
4868
|
|
4831
4869
|
|
4832
4870
|
/***/ }),
|
4833
|
-
/*
|
4871
|
+
/* 58 */
|
4834
4872
|
/***/ (() => {
|
4835
4873
|
|
4836
4874
|
const u = up.util;
|
@@ -4943,7 +4981,7 @@ up.LayerStack = class LayerStack extends Array {
|
|
4943
4981
|
|
4944
4982
|
|
4945
4983
|
/***/ }),
|
4946
|
-
/*
|
4984
|
+
/* 59 */
|
4947
4985
|
/***/ (() => {
|
4948
4986
|
|
4949
4987
|
up.LinkFeedbackURLs = class LinkFeedbackURLs {
|
@@ -4974,7 +5012,7 @@ up.LinkFeedbackURLs = class LinkFeedbackURLs {
|
|
4974
5012
|
|
4975
5013
|
|
4976
5014
|
/***/ }),
|
4977
|
-
/*
|
5015
|
+
/* 60 */
|
4978
5016
|
/***/ (() => {
|
4979
5017
|
|
4980
5018
|
const u = up.util;
|
@@ -5042,7 +5080,7 @@ up.LinkPreloader = class LinkPreloader {
|
|
5042
5080
|
|
5043
5081
|
|
5044
5082
|
/***/ }),
|
5045
|
-
/*
|
5083
|
+
/* 61 */
|
5046
5084
|
/***/ (() => {
|
5047
5085
|
|
5048
5086
|
const u = up.util;
|
@@ -5138,7 +5176,7 @@ up.MotionController = class MotionController {
|
|
5138
5176
|
|
5139
5177
|
|
5140
5178
|
/***/ }),
|
5141
|
-
/*
|
5179
|
+
/* 62 */
|
5142
5180
|
/***/ (() => {
|
5143
5181
|
|
5144
5182
|
const u = up.util;
|
@@ -5230,7 +5268,7 @@ up.NonceableCallback = class NonceableCallback {
|
|
5230
5268
|
|
5231
5269
|
|
5232
5270
|
/***/ }),
|
5233
|
-
/*
|
5271
|
+
/* 63 */
|
5234
5272
|
/***/ (() => {
|
5235
5273
|
|
5236
5274
|
const u = up.util;
|
@@ -5307,7 +5345,7 @@ up.OptionsParser = class OptionsParser {
|
|
5307
5345
|
|
5308
5346
|
|
5309
5347
|
/***/ }),
|
5310
|
-
/*
|
5348
|
+
/* 64 */
|
5311
5349
|
/***/ (() => {
|
5312
5350
|
|
5313
5351
|
const e = up.element;
|
@@ -5375,7 +5413,7 @@ up.OverlayFocus = class OverlayFocus {
|
|
5375
5413
|
|
5376
5414
|
|
5377
5415
|
/***/ }),
|
5378
|
-
/*
|
5416
|
+
/* 65 */
|
5379
5417
|
/***/ (() => {
|
5380
5418
|
|
5381
5419
|
const u = up.util;
|
@@ -5606,7 +5644,7 @@ up.Params = class Params {
|
|
5606
5644
|
|
5607
5645
|
|
5608
5646
|
/***/ }),
|
5609
|
-
/*
|
5647
|
+
/* 66 */
|
5610
5648
|
/***/ (() => {
|
5611
5649
|
|
5612
5650
|
const e = up.element;
|
@@ -5656,7 +5694,7 @@ up.ProgressBar = class ProgressBar {
|
|
5656
5694
|
|
5657
5695
|
|
5658
5696
|
/***/ }),
|
5659
|
-
/*
|
5697
|
+
/* 67 */
|
5660
5698
|
/***/ (() => {
|
5661
5699
|
|
5662
5700
|
const u = up.util;
|
@@ -5705,14 +5743,15 @@ up.RenderOptions = (function () {
|
|
5705
5743
|
]);
|
5706
5744
|
const CONTENT_KEYS = [
|
5707
5745
|
'url',
|
5746
|
+
'response',
|
5708
5747
|
'content',
|
5709
5748
|
'fragment',
|
5710
|
-
'document'
|
5749
|
+
'document',
|
5711
5750
|
];
|
5712
5751
|
const LATE_KEYS = [
|
5713
5752
|
'history',
|
5714
5753
|
'focus',
|
5715
|
-
'scroll'
|
5754
|
+
'scroll',
|
5716
5755
|
];
|
5717
5756
|
function navigateDefaults(options) {
|
5718
5757
|
if (options.navigate) {
|
@@ -5779,7 +5818,7 @@ up.RenderOptions = (function () {
|
|
5779
5818
|
|
5780
5819
|
|
5781
5820
|
/***/ }),
|
5782
|
-
/*
|
5821
|
+
/* 68 */
|
5783
5822
|
/***/ (() => {
|
5784
5823
|
|
5785
5824
|
up.RenderResult = class RenderResult extends up.Record {
|
@@ -5807,12 +5846,32 @@ up.RenderResult = class RenderResult extends up.Record {
|
|
5807
5846
|
|
5808
5847
|
|
5809
5848
|
/***/ }),
|
5810
|
-
/*
|
5849
|
+
/* 69 */
|
5811
5850
|
/***/ (() => {
|
5812
5851
|
|
5813
5852
|
var _a;
|
5814
5853
|
const u = up.util;
|
5815
5854
|
up.Request = (_a = class Request extends up.Record {
|
5855
|
+
constructor(options) {
|
5856
|
+
super(options);
|
5857
|
+
this.params = new up.Params(this.params);
|
5858
|
+
if (this.wrapMethod == null) {
|
5859
|
+
this.wrapMethod = up.network.config.wrapMethod;
|
5860
|
+
}
|
5861
|
+
this.normalize();
|
5862
|
+
if ((this.target || this.layer || this.origin) && !options.basic) {
|
5863
|
+
const layerLookupOptions = { origin: this.origin };
|
5864
|
+
this.layer = up.layer.get(this.layer, layerLookupOptions);
|
5865
|
+
this.failLayer = up.layer.get(this.failLayer || this.layer, layerLookupOptions);
|
5866
|
+
this.context || (this.context = this.layer.context || {});
|
5867
|
+
this.failContext || (this.failContext = this.failLayer.context || {});
|
5868
|
+
this.mode || (this.mode = this.layer.mode);
|
5869
|
+
this.failMode || (this.failMode = this.failLayer.mode);
|
5870
|
+
}
|
5871
|
+
this.deferred = u.newDeferred();
|
5872
|
+
this.badResponseTime ?? (this.badResponseTime = u.evalOption(up.network.config.badResponseTime, this));
|
5873
|
+
this.addAutoHeaders();
|
5874
|
+
}
|
5816
5875
|
keys() {
|
5817
5876
|
return [
|
5818
5877
|
'method',
|
@@ -5855,37 +5914,19 @@ up.Request = (_a = class Request extends up.Record {
|
|
5855
5914
|
builtAt: new Date(),
|
5856
5915
|
};
|
5857
5916
|
}
|
5858
|
-
constructor(options) {
|
5859
|
-
super(options);
|
5860
|
-
this.params = new up.Params(this.params);
|
5861
|
-
if (this.wrapMethod == null) {
|
5862
|
-
this.wrapMethod = up.network.config.wrapMethod;
|
5863
|
-
}
|
5864
|
-
this.normalize();
|
5865
|
-
if ((this.target || this.layer || this.origin) && !options.basic) {
|
5866
|
-
const layerLookupOptions = { origin: this.origin };
|
5867
|
-
this.layer = up.layer.get(this.layer, layerLookupOptions);
|
5868
|
-
this.failLayer = up.layer.get(this.failLayer || this.layer, layerLookupOptions);
|
5869
|
-
this.context || (this.context = this.layer.context || {});
|
5870
|
-
this.failContext || (this.failContext = this.failLayer.context || {});
|
5871
|
-
this.mode || (this.mode = this.layer.mode);
|
5872
|
-
this.failMode || (this.failMode = this.failLayer.mode);
|
5873
|
-
}
|
5874
|
-
this.deferred = u.newDeferred();
|
5875
|
-
this.badResponseTime ?? (this.badResponseTime = u.evalOption(up.network.config.badResponseTime, this));
|
5876
|
-
this.addAutoHeaders();
|
5877
|
-
}
|
5878
5917
|
get xhr() {
|
5879
5918
|
return this._xhr ?? (this._xhr = new XMLHttpRequest());
|
5880
5919
|
}
|
5881
5920
|
get fragments() {
|
5882
|
-
if (
|
5921
|
+
if (this._fragments) {
|
5922
|
+
return this._fragments;
|
5923
|
+
}
|
5924
|
+
else if (this.target) {
|
5883
5925
|
let steps = up.fragment.parseTargetSteps(this.target);
|
5884
5926
|
let selectors = u.map(steps, 'selector');
|
5885
5927
|
let lookupOpts = { origin: this.origin, layer: this.layer };
|
5886
|
-
|
5928
|
+
return u.compact(u.map(selectors, (selector) => up.fragment.get(selector, lookupOpts)));
|
5887
5929
|
}
|
5888
|
-
return this._fragments;
|
5889
5930
|
}
|
5890
5931
|
set fragments(value) {
|
5891
5932
|
this._fragments = value;
|
@@ -6142,7 +6183,7 @@ up.Request = (_a = class Request extends up.Record {
|
|
6142
6183
|
|
6143
6184
|
|
6144
6185
|
/***/ }),
|
6145
|
-
/*
|
6186
|
+
/* 70 */
|
6146
6187
|
/***/ (() => {
|
6147
6188
|
|
6148
6189
|
const u = up.util;
|
@@ -6232,6 +6273,7 @@ up.Request.Cache = class Cache {
|
|
6232
6273
|
if (value instanceof up.Response) {
|
6233
6274
|
if (options.force || this.isCacheCompatible(existingRequest, newRequest)) {
|
6234
6275
|
newRequest.fromCache = true;
|
6276
|
+
value = u.variant(value, { request: newRequest });
|
6235
6277
|
newRequest.respondWith(value);
|
6236
6278
|
u.delegate(newRequest, ['expired', 'state'], () => existingRequest);
|
6237
6279
|
}
|
@@ -6281,7 +6323,7 @@ up.Request.Cache = class Cache {
|
|
6281
6323
|
|
6282
6324
|
|
6283
6325
|
/***/ }),
|
6284
|
-
/*
|
6326
|
+
/* 71 */
|
6285
6327
|
/***/ (() => {
|
6286
6328
|
|
6287
6329
|
const u = up.util;
|
@@ -6389,7 +6431,7 @@ up.Request.Queue = class Queue {
|
|
6389
6431
|
|
6390
6432
|
|
6391
6433
|
/***/ }),
|
6392
|
-
/*
|
6434
|
+
/* 72 */
|
6393
6435
|
/***/ (() => {
|
6394
6436
|
|
6395
6437
|
const u = up.util;
|
@@ -6428,7 +6470,7 @@ up.Request.FormRenderer = class FormRenderer {
|
|
6428
6470
|
|
6429
6471
|
|
6430
6472
|
/***/ }),
|
6431
|
-
/*
|
6473
|
+
/* 73 */
|
6432
6474
|
/***/ (() => {
|
6433
6475
|
|
6434
6476
|
var _a;
|
@@ -6500,7 +6542,7 @@ up.Request.XHRRenderer = (_a = class XHRRenderer {
|
|
6500
6542
|
|
6501
6543
|
|
6502
6544
|
/***/ }),
|
6503
|
-
/*
|
6545
|
+
/* 74 */
|
6504
6546
|
/***/ (() => {
|
6505
6547
|
|
6506
6548
|
const u = up.util;
|
@@ -6535,6 +6577,12 @@ up.Response = class Response extends up.Record {
|
|
6535
6577
|
get ok() {
|
6536
6578
|
return !u.evalOption(this.fail ?? up.network.config.fail, this);
|
6537
6579
|
}
|
6580
|
+
get none() {
|
6581
|
+
return !this.text;
|
6582
|
+
}
|
6583
|
+
isCacheable() {
|
6584
|
+
return this.ok && !this.none;
|
6585
|
+
}
|
6538
6586
|
header(name) {
|
6539
6587
|
return this.headers[name] || this.xhr?.getResponseHeader(name);
|
6540
6588
|
}
|
@@ -6575,7 +6623,7 @@ up.Response = class Response extends up.Record {
|
|
6575
6623
|
|
6576
6624
|
|
6577
6625
|
/***/ }),
|
6578
|
-
/*
|
6626
|
+
/* 75 */
|
6579
6627
|
/***/ (() => {
|
6580
6628
|
|
6581
6629
|
var _a;
|
@@ -6655,7 +6703,7 @@ up.ResponseDoc = (_a = class ResponseDoc {
|
|
6655
6703
|
|
6656
6704
|
|
6657
6705
|
/***/ }),
|
6658
|
-
/*
|
6706
|
+
/* 76 */
|
6659
6707
|
/***/ (() => {
|
6660
6708
|
|
6661
6709
|
const e = up.element;
|
@@ -6749,7 +6797,7 @@ up.RevealMotion = class RevealMotion {
|
|
6749
6797
|
|
6750
6798
|
|
6751
6799
|
/***/ }),
|
6752
|
-
/*
|
6800
|
+
/* 77 */
|
6753
6801
|
/***/ (() => {
|
6754
6802
|
|
6755
6803
|
const u = up.util;
|
@@ -6790,7 +6838,7 @@ up.Selector = class Selector {
|
|
6790
6838
|
|
6791
6839
|
|
6792
6840
|
/***/ }),
|
6793
|
-
/*
|
6841
|
+
/* 78 */
|
6794
6842
|
/***/ (() => {
|
6795
6843
|
|
6796
6844
|
const u = up.util;
|
@@ -6910,7 +6958,7 @@ up.Tether = class Tether {
|
|
6910
6958
|
|
6911
6959
|
|
6912
6960
|
/***/ }),
|
6913
|
-
/*
|
6961
|
+
/* 79 */
|
6914
6962
|
/***/ (() => {
|
6915
6963
|
|
6916
6964
|
const u = up.util;
|
@@ -6990,7 +7038,7 @@ up.URLPattern = class URLPattern {
|
|
6990
7038
|
|
6991
7039
|
|
6992
7040
|
/***/ }),
|
6993
|
-
/*
|
7041
|
+
/* 80 */
|
6994
7042
|
/***/ (() => {
|
6995
7043
|
|
6996
7044
|
up.framework = (function () {
|
@@ -7074,7 +7122,7 @@ up.boot = up.framework.boot;
|
|
7074
7122
|
|
7075
7123
|
|
7076
7124
|
/***/ }),
|
7077
|
-
/*
|
7125
|
+
/* 81 */
|
7078
7126
|
/***/ (() => {
|
7079
7127
|
|
7080
7128
|
up.event = (function () {
|
@@ -7177,7 +7225,7 @@ up.emit = up.event.emit;
|
|
7177
7225
|
|
7178
7226
|
|
7179
7227
|
/***/ }),
|
7180
|
-
/*
|
7228
|
+
/* 82 */
|
7181
7229
|
/***/ (() => {
|
7182
7230
|
|
7183
7231
|
up.protocol = (function () {
|
@@ -7318,10 +7366,11 @@ up.protocol = (function () {
|
|
7318
7366
|
|
7319
7367
|
|
7320
7368
|
/***/ }),
|
7321
|
-
/*
|
7369
|
+
/* 83 */
|
7322
7370
|
/***/ (() => {
|
7323
7371
|
|
7324
7372
|
up.log = (function () {
|
7373
|
+
const u = up.util;
|
7325
7374
|
const config = new up.LogConfig();
|
7326
7375
|
function reset() {
|
7327
7376
|
config.reset();
|
@@ -7339,13 +7388,11 @@ up.log = (function () {
|
|
7339
7388
|
function printToStreamStyled(stream, trace, customStyles, message, ...args) {
|
7340
7389
|
if (message) {
|
7341
7390
|
if (config.format) {
|
7342
|
-
|
7343
|
-
message = `%c${trace}%c ${message}`;
|
7391
|
+
console[stream](`%c${trace}%c ${message}`, 'color: #666666; padding: 1px 3px; border: 1px solid #bbbbbb; border-radius: 2px; font-size: 90%; display: inline-block;' + customStyles, '', ...args);
|
7344
7392
|
}
|
7345
7393
|
else {
|
7346
|
-
|
7394
|
+
console[stream](`[${trace}] ${u.sprintf(message, ...args)}`);
|
7347
7395
|
}
|
7348
|
-
console[stream](message, ...args);
|
7349
7396
|
}
|
7350
7397
|
}
|
7351
7398
|
function printUserEvent(event) {
|
@@ -7404,7 +7451,7 @@ up.warn = up.log.warn;
|
|
7404
7451
|
|
7405
7452
|
|
7406
7453
|
/***/ }),
|
7407
|
-
/*
|
7454
|
+
/* 84 */
|
7408
7455
|
/***/ (() => {
|
7409
7456
|
|
7410
7457
|
up.syntax = (function () {
|
@@ -7554,7 +7601,7 @@ up.hello = up.syntax.hello;
|
|
7554
7601
|
|
7555
7602
|
|
7556
7603
|
/***/ }),
|
7557
|
-
/*
|
7604
|
+
/* 85 */
|
7558
7605
|
/***/ (() => {
|
7559
7606
|
|
7560
7607
|
up.history = (function () {
|
@@ -7690,10 +7737,10 @@ up.history = (function () {
|
|
7690
7737
|
|
7691
7738
|
|
7692
7739
|
/***/ }),
|
7693
|
-
/*
|
7740
|
+
/* 86 */
|
7694
7741
|
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
7695
7742
|
|
7696
|
-
__webpack_require__(
|
7743
|
+
__webpack_require__(87);
|
7697
7744
|
const u = up.util;
|
7698
7745
|
const e = up.element;
|
7699
7746
|
up.fragment = (function () {
|
@@ -8220,7 +8267,7 @@ u.delegate(up, ['context'], () => up.layer.current);
|
|
8220
8267
|
|
8221
8268
|
|
8222
8269
|
/***/ }),
|
8223
|
-
/*
|
8270
|
+
/* 87 */
|
8224
8271
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
8225
8272
|
|
8226
8273
|
"use strict";
|
@@ -8229,10 +8276,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
8229
8276
|
|
8230
8277
|
|
8231
8278
|
/***/ }),
|
8232
|
-
/*
|
8279
|
+
/* 88 */
|
8233
8280
|
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
8234
8281
|
|
8235
|
-
__webpack_require__(
|
8282
|
+
__webpack_require__(89);
|
8236
8283
|
up.viewport = (function () {
|
8237
8284
|
const u = up.util;
|
8238
8285
|
const e = up.element;
|
@@ -8552,7 +8599,7 @@ up.reveal = up.viewport.reveal;
|
|
8552
8599
|
|
8553
8600
|
|
8554
8601
|
/***/ }),
|
8555
|
-
/*
|
8602
|
+
/* 89 */
|
8556
8603
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
8557
8604
|
|
8558
8605
|
"use strict";
|
@@ -8561,7 +8608,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
8561
8608
|
|
8562
8609
|
|
8563
8610
|
/***/ }),
|
8564
|
-
/*
|
8611
|
+
/* 90 */
|
8565
8612
|
/***/ (() => {
|
8566
8613
|
|
8567
8614
|
up.motion = (function () {
|
@@ -8816,10 +8863,10 @@ up.animate = up.motion.animate;
|
|
8816
8863
|
|
8817
8864
|
|
8818
8865
|
/***/ }),
|
8819
|
-
/*
|
8866
|
+
/* 91 */
|
8820
8867
|
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
8821
8868
|
|
8822
|
-
__webpack_require__(
|
8869
|
+
__webpack_require__(92);
|
8823
8870
|
const u = up.util;
|
8824
8871
|
up.network = (function () {
|
8825
8872
|
const config = new up.Config(() => ({
|
@@ -8887,19 +8934,19 @@ up.network = (function () {
|
|
8887
8934
|
cache.put(request);
|
8888
8935
|
request.onLoading = () => cache.put(request);
|
8889
8936
|
}
|
8890
|
-
u.always(request, function (
|
8891
|
-
let expireCache =
|
8937
|
+
u.always(request, function (responseOrError) {
|
8938
|
+
let expireCache = responseOrError.expireCache ?? request.expireCache ?? u.evalOption(config.expireCache, request, responseOrError);
|
8892
8939
|
if (expireCache) {
|
8893
8940
|
cache.expire(expireCache, { except: request });
|
8894
8941
|
}
|
8895
|
-
let evictCache =
|
8942
|
+
let evictCache = responseOrError.evictCache ?? request.evictCache ?? u.evalOption(config.evictCache, request, responseOrError);
|
8896
8943
|
if (evictCache) {
|
8897
8944
|
cache.evict(evictCache, { except: request });
|
8898
8945
|
}
|
8899
8946
|
if (cache.get(request)) {
|
8900
8947
|
cache.put(request);
|
8901
8948
|
}
|
8902
|
-
if (!
|
8949
|
+
if (!responseOrError.isCacheable?.()) {
|
8903
8950
|
cache.evict(request);
|
8904
8951
|
}
|
8905
8952
|
});
|
@@ -8923,7 +8970,7 @@ up.network = (function () {
|
|
8923
8970
|
}
|
8924
8971
|
function registerAliasForRedirect(request, response) {
|
8925
8972
|
if (request.cache && response.url && request.url !== response.url) {
|
8926
|
-
const newRequest =
|
8973
|
+
const newRequest = u.variant(request, {
|
8927
8974
|
method: response.method,
|
8928
8975
|
url: response.url
|
8929
8976
|
});
|
@@ -8962,7 +9009,7 @@ up.cache = up.network.cache;
|
|
8962
9009
|
|
8963
9010
|
|
8964
9011
|
/***/ }),
|
8965
|
-
/*
|
9012
|
+
/* 92 */
|
8966
9013
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
8967
9014
|
|
8968
9015
|
"use strict";
|
@@ -8971,10 +9018,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
8971
9018
|
|
8972
9019
|
|
8973
9020
|
/***/ }),
|
8974
|
-
/*
|
9021
|
+
/* 93 */
|
8975
9022
|
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
8976
9023
|
|
8977
|
-
__webpack_require__(
|
9024
|
+
__webpack_require__(94);
|
8978
9025
|
const u = up.util;
|
8979
9026
|
const e = up.element;
|
8980
9027
|
up.layer = (function () {
|
@@ -9118,7 +9165,7 @@ up.layer = (function () {
|
|
9118
9165
|
return e.callbackAttr(link, attr, { exposedKeys: ['layer'] });
|
9119
9166
|
}
|
9120
9167
|
function closeCallbackAttr(link, attr) {
|
9121
|
-
return e.callbackAttr(link, attr, { exposedKeys: ['layer', 'value'] });
|
9168
|
+
return e.callbackAttr(link, attr, { exposedKeys: ['layer', 'value', 'response'] });
|
9122
9169
|
}
|
9123
9170
|
function reset() {
|
9124
9171
|
config.reset();
|
@@ -9215,7 +9262,7 @@ up.layer = (function () {
|
|
9215
9262
|
|
9216
9263
|
|
9217
9264
|
/***/ }),
|
9218
|
-
/*
|
9265
|
+
/* 94 */
|
9219
9266
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
9220
9267
|
|
9221
9268
|
"use strict";
|
@@ -9224,10 +9271,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
9224
9271
|
|
9225
9272
|
|
9226
9273
|
/***/ }),
|
9227
|
-
/*
|
9274
|
+
/* 95 */
|
9228
9275
|
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
9229
9276
|
|
9230
|
-
__webpack_require__(
|
9277
|
+
__webpack_require__(96);
|
9231
9278
|
up.link = (function () {
|
9232
9279
|
const u = up.util;
|
9233
9280
|
const e = up.element;
|
@@ -9235,7 +9282,7 @@ up.link = (function () {
|
|
9235
9282
|
let lastMousedownTarget = null;
|
9236
9283
|
const LINKS_WITH_LOCAL_HTML = ['a[up-content]', 'a[up-fragment]', 'a[up-document]'];
|
9237
9284
|
const LINKS_WITH_REMOTE_HTML = ['a[href]', '[up-href]'];
|
9238
|
-
const ATTRIBUTES_SUGGESTING_FOLLOW = ['[up-follow]', '[up-target]', '[up-layer]', '[up-transition]', '[up-preload]', '[up-instant]'];
|
9285
|
+
const ATTRIBUTES_SUGGESTING_FOLLOW = ['[up-follow]', '[up-target]', '[up-layer]', '[up-transition]', '[up-preload]', '[up-instant]', '[up-href]'];
|
9239
9286
|
function combineFollowableSelectors(elementSelectors, attributeSelectors) {
|
9240
9287
|
return u.flatMap(elementSelectors, elementSelector => attributeSelectors.map(attrSelector => elementSelector + attrSelector));
|
9241
9288
|
}
|
@@ -9367,7 +9414,6 @@ up.link = (function () {
|
|
9367
9414
|
parser.booleanOrString('transition');
|
9368
9415
|
parser.string('easing');
|
9369
9416
|
parser.number('duration');
|
9370
|
-
up.migrate.parseFollowOptions?.(parser);
|
9371
9417
|
if (!options.guardEvent) {
|
9372
9418
|
options.guardEvent = up.event.build('up:link:follow', { log: 'Following link' });
|
9373
9419
|
}
|
@@ -9515,14 +9561,15 @@ up.link = (function () {
|
|
9515
9561
|
convertClicks,
|
9516
9562
|
config,
|
9517
9563
|
combineFollowableSelectors,
|
9518
|
-
preloadSelector: fullPreloadSelector
|
9564
|
+
preloadSelector: fullPreloadSelector,
|
9565
|
+
followSelector: fullFollowSelector,
|
9519
9566
|
};
|
9520
9567
|
})();
|
9521
9568
|
up.follow = up.link.follow;
|
9522
9569
|
|
9523
9570
|
|
9524
9571
|
/***/ }),
|
9525
|
-
/*
|
9572
|
+
/* 96 */
|
9526
9573
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
9527
9574
|
|
9528
9575
|
"use strict";
|
@@ -9531,7 +9578,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
9531
9578
|
|
9532
9579
|
|
9533
9580
|
/***/ }),
|
9534
|
-
/*
|
9581
|
+
/* 97 */
|
9535
9582
|
/***/ (() => {
|
9536
9583
|
|
9537
9584
|
up.form = (function () {
|
@@ -9546,7 +9593,7 @@ up.form = (function () {
|
|
9546
9593
|
submitButtonSelectors: ['input[type=submit]', 'input[type=image]', 'button[type=submit]', 'button:not([type])'],
|
9547
9594
|
watchInputEvents: ['input', 'change'],
|
9548
9595
|
watchInputDelay: 0,
|
9549
|
-
watchChangeEvents:
|
9596
|
+
watchChangeEvents: ['change'],
|
9550
9597
|
}));
|
9551
9598
|
function fullSubmitSelector() {
|
9552
9599
|
return config.submitSelectors.join(',');
|
@@ -9914,6 +9961,7 @@ up.form = (function () {
|
|
9914
9961
|
disable: disableContainer,
|
9915
9962
|
group: findGroup,
|
9916
9963
|
groupSolution: findGroupSolution,
|
9964
|
+
groupSelectors: getGroupSelectors,
|
9917
9965
|
get: getForm,
|
9918
9966
|
};
|
9919
9967
|
})();
|
@@ -9924,7 +9972,7 @@ up.validate = up.form.validate;
|
|
9924
9972
|
|
9925
9973
|
|
9926
9974
|
/***/ }),
|
9927
|
-
/*
|
9975
|
+
/* 98 */
|
9928
9976
|
/***/ (() => {
|
9929
9977
|
|
9930
9978
|
up.feedback = (function () {
|
@@ -10041,7 +10089,7 @@ up.feedback = (function () {
|
|
10041
10089
|
|
10042
10090
|
|
10043
10091
|
/***/ }),
|
10044
|
-
/*
|
10092
|
+
/* 99 */
|
10045
10093
|
/***/ (() => {
|
10046
10094
|
|
10047
10095
|
up.radio = (function () {
|
@@ -10118,7 +10166,7 @@ up.radio = (function () {
|
|
10118
10166
|
|
10119
10167
|
|
10120
10168
|
/***/ }),
|
10121
|
-
/*
|
10169
|
+
/* 100 */
|
10122
10170
|
/***/ (() => {
|
10123
10171
|
|
10124
10172
|
(function () {
|
@@ -10267,15 +10315,16 @@ __webpack_require__(82);
|
|
10267
10315
|
__webpack_require__(83);
|
10268
10316
|
__webpack_require__(84);
|
10269
10317
|
__webpack_require__(85);
|
10270
|
-
__webpack_require__(
|
10271
|
-
__webpack_require__(
|
10318
|
+
__webpack_require__(86);
|
10319
|
+
__webpack_require__(88);
|
10272
10320
|
__webpack_require__(90);
|
10273
|
-
__webpack_require__(
|
10274
|
-
__webpack_require__(
|
10275
|
-
__webpack_require__(
|
10321
|
+
__webpack_require__(91);
|
10322
|
+
__webpack_require__(93);
|
10323
|
+
__webpack_require__(95);
|
10276
10324
|
__webpack_require__(97);
|
10277
10325
|
__webpack_require__(98);
|
10278
10326
|
__webpack_require__(99);
|
10327
|
+
__webpack_require__(100);
|
10279
10328
|
up.framework.onEvaled();
|
10280
10329
|
|
10281
10330
|
})();
|