PageSourceSearch

https://www.koenigssee.de/_assets/1798f66a72c0609b2ee5b404d10475ff…/Atoms/Loader.fc5e2d5640a2ce819a77.js

js koenigssee.de collected 2026-10-02 10:16:23 UTC 1,948 bytes, 69 lines download raw bytes

1/******/ (() => { // webpackBootstrap
2/******/ 	"use strict";
3// This entry need to be wrapped in an IIFE because it need to be isolated against other entry modules.
4(() => {
5// extracted by mini-css-extract-plugin
6
7})();
8
9// This entry need to be wrapped in an IIFE because it need to be isolated against other entry modules.
10(() => {
11
12
13class FormLoaderHandler {
14  constructor(loader) {
15    const form = loader.closest('form');
16    if (!form) return;
17    form.addEventListener('submit', () => this.handleSubmit(form, loader));
18  }
19  handleSubmit(form, loader) {
20    const formAction = form.action || window.location.href;
21    const formData = new FormData(form);
22    const params = new URLSearchParams(formData).toString();
23    const {
24      base,
25      query,
26      hash
27    } = this.splitUrl(formAction);
28    let targetUrl = base;
29    if (query) {
30      targetUrl += query;
31      if (params) targetUrl += '&' + params;
32    } else if (params) {
33      targetUrl += '?' + params;
34    }
35    targetUrl += hash;
36    // only if the url changed or we have no hash, show the loading indicator. Otherwise the browser only scrolls to
37    // the hash target
38    if (targetUrl !== window.location.href || window.location.hash.length === 0) {
39      loader.classList.add('loader--active');
40    }
41  }
42  splitUrl(url) {
43    const hashIndex = url.indexOf('#');
44    const queryIndex = url.indexOf('?');
45    let base = url;
46    let query = '';
47    let hash = '';
48    if (hashIndex !== -1) {
49      hash = url.substring(hashIndex);
50      base = url.substring(0, hashIndex);
51    }
52    if (queryIndex !== -1 && (hashIndex === -1 || queryIndex < hashIndex)) {
53      query = url.substring(queryIndex, hashIndex !== -1 ? hashIndex : undefined);
54      base = url.substring(0, queryIndex);
55    }
56    return {
57      base,
58      query,
59      hash
60    };
61  }
62}
63document.querySelectorAll('.loader').forEach(loader => {
64  new FormLoaderHandler(loader);
65});
66})();
67
68/******/ })()
69;

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.