@peckadesign/pd-naja 3.0.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,7 +5,7 @@
5
5
  * @author PeckaDesign, s.r.o <support@peckadesign.cz>
6
6
  * @license MIT
7
7
  *
8
- * @version 3.0.0
8
+ * @version 3.1.0
9
9
  */
10
10
 
11
11
  let instance = null;
@@ -302,10 +302,7 @@ class AjaxModalExtension {
302
302
  naja.addEventListener('success', this.success.bind(this));
303
303
  naja.addEventListener('complete', this.clearRequest.bind(this));
304
304
  this.modal.onShow(this.showHandler.bind(this));
305
- this.modal.onHide(() => {
306
- this.removeModalSnippetsIds();
307
- this.abortControllers.get('modal')?.abort();
308
- });
305
+ this.modal.onHide(this.hideHandler.bind(this));
309
306
  this.modal.onHidden(this.hiddenHandler.bind(this));
310
307
  }
311
308
  checkExtensionEnabled(event) {
@@ -317,21 +314,22 @@ class AjaxModalExtension {
317
314
  if (!this.isPdModalRequest(options)) {
318
315
  return;
319
316
  }
320
- // `modalOptions` will be stored in state, therefore no `Element` is allowed. These options are also forwarded
321
- // to other Naja event handlers via `options`. We also store the element separately to be used there as well.
317
+ // `modalOptions` will be stored in the state; therefore, no `Element` is allowed. These options are also
318
+ // forwarded to other Naja event handlers via `options`. We also store the elements separately to be used there
319
+ // as well.
322
320
  this.modalOptions = this.modal.getOptions(element);
323
321
  options.modalOptions = this.modalOptions;
324
322
  options.modalOpener = element;
325
- // If the extension is enabled and modal is not opened, we detect and store history mode. History mode cannot
326
- // change when traversing ajax link inside modal, it stays the same until modal is hidden.
323
+ // If the extension is enabled and the modal is not opened, we detect and store history mode. History mode
324
+ // cannot change when traversing an ajax link inside modal, it stays the same until modal is hidden.
327
325
  if (!this.modal.isShown()) {
328
326
  this.historyDirection = element.getAttribute('data-naja-modal-history') === 'forwards' ? 'forwards' : 'backwards';
329
327
  }
330
328
  }
331
329
  onSnippetFetch(event) {
332
- // When snippet cache is off, this method is called to construct Naja request options. We retrieve modal
333
- // `options` from original state in history if necessary. Also, when closing the modal from `PopstateEvent`, we
334
- // don't need to make a new request, so we call `event.preventDefault()` in that case.
330
+ // When the snippet cache is off, this method is called to construct Naja request options. We retrieve modal
331
+ // `options` from the original state in history if necessary. Also, when closing the modal from `PopstateEvent`,
332
+ // we don't need to make a new request, so we call `event.preventDefault()` in that case.
335
333
  const { state } = event.detail;
336
334
  if (this.isPdModalState(state)) {
337
335
  event.detail.options.pdModal = true;
@@ -344,11 +342,11 @@ class AjaxModalExtension {
344
342
  }
345
343
  }
346
344
  removeModalSnippetsIds() {
347
- // When closing the modal, we don't want to update any snippets inside it, when other requests finishes. This
348
- // will ensure, that snippets that might be also outside modal (e.g. flash messages) will be redrawn outside the
349
- // modal. Therefore, we remove the id attributes, so no snippet is found.
345
+ // When closing the modal, we don't want to update any snippets inside it when other requests finishes. This
346
+ // will ensure that snippets that might be also outside the modal (e.g. flash messages) will be redrawn outside
347
+ // the modal. Therefore, we remove the id attributes, so no snippet is found.
350
348
  //
351
- // Some snippets are necessary for modal function
349
+ // Some snippets are necessary for a modal function
352
350
  this.modal.element.querySelectorAll('[id^="snippet-"]').forEach((snippet) => {
353
351
  if (!this.modal.reservedSnippetIds.includes(snippet.id)) {
354
352
  snippet.removeAttribute('id');
@@ -370,14 +368,14 @@ class AjaxModalExtension {
370
368
  }
371
369
  buildState(event) {
372
370
  const { operation, options, state } = event.detail;
373
- // Always add a `title` into state, so we can retrieve it when needed after closing the modal. See
371
+ // Always add a `title` into the state, so we can retrieve it when needed after closing the modal. See
374
372
  // `popstateHandler` below.
375
373
  if (!state.title) {
376
374
  state.title = document.title;
377
375
  }
378
376
  // If this is called from Naja's `replaceInitialState`, we don't change the state.
379
377
  //
380
- // This is a possible weakness, because this condition could be true even with actual user interaction, if
378
+ // This is a possible weakness because this condition could be true even with actual user interaction, if
381
379
  // Naja's first interaction is with an element with `data-naja-history="replace"`. In this case the condition
382
380
  // will also be true, but it is probably the desired behaviour to save this state as non-modal anyway, since
383
381
  // the initial state should (or could) never be opened in a modal.
@@ -388,9 +386,9 @@ class AjaxModalExtension {
388
386
  }
389
387
  return;
390
388
  }
391
- // Every time naja builds the state, and we have the modal opened, we extend the state with `pdModal` object
392
- // containing information about modal being opened and what history mode is in use. When `options.forceRedirect`
393
- // is set, modal might be open but the new state will be redirected outside of it.
389
+ // Every time naja builds the state, and we have the modal opened, we extend the state with a ` pdModal ` object
390
+ // containing information about the modal being opened and what history mode is in use. When
391
+ // `options.forceRedirect` is set, modal might be open but the new state will be redirected outside it.
394
392
  const isShown = this.isPdModalRequest(options) && !options.forceRedirect;
395
393
  if (isShown) {
396
394
  state.pdModal = {
@@ -427,7 +425,8 @@ class AjaxModalExtension {
427
425
  return;
428
426
  }
429
427
  const requestHistory = this.isRequestWithHistory(options);
430
- // If the history is disabled for current request, we will disable it for all ajax links / forms in modal as well.
428
+ // If the history is disabled for the current request, we will disable it for all ajax links / forms in modal as
429
+ // well.
431
430
  if (!requestHistory && event.target) {
432
431
  const ajaxified = this.modal.element.querySelectorAll(event.target.uiHandler?.selector);
433
432
  ajaxified.forEach((element) => {
@@ -462,12 +461,23 @@ class AjaxModalExtension {
462
461
  }
463
462
  }
464
463
  }
464
+ hideHandler(event) {
465
+ const opener = event.detail?.opener;
466
+ const abortable = opener
467
+ ? (opener.getAttribute('data-naja-abort') ??
468
+ opener.form?.getAttribute('data-naja-abort')) !== 'off'
469
+ : true;
470
+ this.removeModalSnippetsIds();
471
+ if (abortable) {
472
+ this.abortControllers.get(this.uniqueExtKey)?.abort();
473
+ }
474
+ }
465
475
  hiddenHandler() {
466
- // This method is called after modal has been hidden. It either pushes a new state into history (mode `forwards`)
467
- // or calls `history.back()` to start go-back procedure.
476
+ // This method is called after the modal has been hidden. It either pushes a new state into history (mode
477
+ // `forwards`) or calls `history.back()` to start go-back procedure.
468
478
  //
469
- // New state is pushed only if we are able to retrieve the state under the modal (which should have been stored
470
- // previously) and the modal is not being closed using forward / back buttons in browser.
479
+ // A new state is pushed only if we are able to retrieve the state under the modal (which should have been
480
+ // stored previously), and the modal is not being closed using forward / back buttons in the browser.
471
481
  if (!this.historyEnabled) {
472
482
  return;
473
483
  }
@@ -482,9 +492,9 @@ class AjaxModalExtension {
482
492
  const state = this.original.pop();
483
493
  this.original = [];
484
494
  if (state) {
485
- // When closing the modal using forward / back buttons in browser, the current state is the same as the
486
- // one stored in `this.original`. If that's the case, we don't push anything as it would duplicate the
487
- // state in history.
495
+ // When closing the modal using forward / back buttons in the browser, the current state is the same as
496
+ // the one stored in `this.original`. If that's the case, we don't push anything as it would duplicate
497
+ // the state in history.
488
498
  if (history.state === undefined || history.state.href !== state.location) {
489
499
  history.pushState(state.state, state.title, state.location);
490
500
  document.title = state.title;
@@ -507,12 +517,14 @@ class AjaxModalExtension {
507
517
  const isCurrentStatePdModal = this.isPdModalState(state);
508
518
  this.popstateFlag = true;
509
519
  this.shouldPreventSnippetFetch = false;
510
- // We don't know how many states we go back. So we go one by one until the new state is not modal state
520
+ // We don't know how many states we go back. So we go one by one until the new state is not a modal state
511
521
  // (`isPdModalState` is `false`).
512
522
  if (this.hidePopstateFlag) {
513
523
  // We don't want the naja popstate callback to be executed (or any other popstate handler).
514
524
  event.stopImmediatePropagation();
515
- if (isCurrentStatePdModal) {
525
+ // If the `state.cursor` is 0, the page has been refreshed, and we don't want to go back in history any
526
+ // more.
527
+ if (isCurrentStatePdModal && state.cursor !== 0) {
516
528
  window.history.back();
517
529
  return;
518
530
  }
@@ -523,19 +535,19 @@ class AjaxModalExtension {
523
535
  }
524
536
  this.hidePopstateFlag = false;
525
537
  }
526
- // We check if the state has `pdModal` object present on popstate. If so , we proceed to open the modal. Content
527
- // of the modal is restored by naja itself (either from cache or by new request).
538
+ // We check if the state has a ` pdModal ` object present on popstate. If so, we proceed to open the modal.
539
+ // Naja itself restores the content of the modal (either from cache or by new request).
528
540
  //
529
- // If the initial state is also detected as pdModal state, we returned to some pdModal state using reload. In
530
- // that case, we don't want to open the modal, because we might be missing some snippets. Effectively this means
531
- // that the modal will never be opened by forward / back button if there has been some other site loaded outside
532
- // the modal (e.g. some non-ajax link leading from modal).
541
+ // If the initial state is also detected as a pdModal state, we returned to some pdModal state using reload. In
542
+ // that case, we don't want to open the modal because we might be missing some snippets. Effectively this means
543
+ // that the modal will never be opened by the forward / back button if there has been some other site loaded
544
+ // outside the modal (e.g. some non-ajax links leading from modal).
533
545
  if (isCurrentStatePdModal && !this.isPdModalState(this.initialState)) {
534
546
  this.restoreExtensionPropertiesFromState(state);
535
547
  this.modal.show(this.getElementFromString(state.pdModal.opener), state.pdModal.options, event);
536
548
  // If there is some snippet cache, we might restore modal options. If not, options will be restored based on
537
549
  // options after the ajax request. The same applies to dispatching the load event - if the cache is on, we
538
- // dispatch the event immediately (after the restore has actually happened, see below), otherwise it is
550
+ // dispatch the event immediately (after the restore has actually happened, see below); otherwise it is
539
551
  // dispatched after the ajax request.
540
552
  if (state.snippets?.storage !== 'off') {
541
553
  this.modal.setOptions(state.pdModal.options);
@@ -550,20 +562,20 @@ class AjaxModalExtension {
550
562
  }
551
563
  }
552
564
  else {
553
- this.historyEnabled = false; // Hiding modal using forward / back button, we disable the history to prevent state duplication
554
- // Reload the page if the initial state has been inside modal. This prevents snippets loss e.g. during
565
+ this.historyEnabled = false; // Hiding modal using the forward / back button, we disable the history to prevent state duplication
566
+ // Reload the page if the initial state has been inside modal. This prevents snippet loss e.g. during
555
567
  // layout changes.
556
568
  if (this.isPdModalState(this.initialState)) {
557
569
  window.location.reload();
558
570
  }
559
571
  // Non-modal state and non-modal initial state → we just hide the current modal and prevent snippet fetch
560
- // (if snippet cache is off).
572
+ // (if the snippet cache is off).
561
573
  if (this.modal.isShown()) {
562
574
  this.modal.hide(event);
563
575
  this.shouldPreventSnippetFetch = true;
564
576
  }
565
577
  }
566
- // Keep track of current state. When `backwards` history mode is used, we eventually push this state into
578
+ // Keep track of the current state. When the ` backwards ` history mode is used, we eventually push this state into
567
579
  // `this.original`.
568
580
  this.lastState = {
569
581
  location: location.href,
@@ -1 +1 @@
1
- {"version":3,"file":"PdNaja.esm.js","sources":["../src/classes/ControlManager.ts","../src/utils.ts","../src/classes/Suggest.ts","../src/extensions/AjaxModalExtension.ts","../src/extensions/AjaxModalPreventRedrawExtension.ts","../src/extensions/AjaxOnceExtension.ts","../src/extensions/BtnSpinnerExtension.ts","../src/extensions/ConfirmExtension.ts","../src/extensions/FollowUpRequestExtension.ts","../src/extensions/ForceRedirectExtension.ts","../src/extensions/ForceReplaceExtension.ts","../src/extensions/ScrollToExtension.ts","../src/extensions/SingleSubmitExtension.ts","../src/extensions/SnippetFormPartExtension.ts","../src/extensions/SpinnerExtension.ts","../src/extensions/SuggestExtension.ts","../src/extensions/ToggleClassExtension.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PdNaja.esm.js","sources":["../src/classes/ControlManager.ts","../src/utils.ts","../src/classes/Suggest.ts","../src/extensions/AjaxModalExtension.ts","../src/extensions/AjaxModalPreventRedrawExtension.ts","../src/extensions/AjaxOnceExtension.ts","../src/extensions/BtnSpinnerExtension.ts","../src/extensions/ConfirmExtension.ts","../src/extensions/FollowUpRequestExtension.ts","../src/extensions/ForceRedirectExtension.ts","../src/extensions/ForceReplaceExtension.ts","../src/extensions/ScrollToExtension.ts","../src/extensions/SingleSubmitExtension.ts","../src/extensions/SnippetFormPartExtension.ts","../src/extensions/SpinnerExtension.ts","../src/extensions/SuggestExtension.ts","../src/extensions/ToggleClassExtension.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
@@ -51,6 +51,7 @@ export declare class AjaxModalExtension implements Extension {
51
51
  private before;
52
52
  private success;
53
53
  private showHandler;
54
+ private hideHandler;
54
55
  private hiddenHandler;
55
56
  private popstateHandler;
56
57
  private cleanData;
package/dist/index.esm.js CHANGED
@@ -5,7 +5,7 @@
5
5
  * @author PeckaDesign, s.r.o <support@peckadesign.cz>
6
6
  * @license MIT
7
7
  *
8
- * @version 3.0.0
8
+ * @version 3.1.0
9
9
  */
10
10
 
11
11
  let instance = null;
@@ -302,10 +302,7 @@ class AjaxModalExtension {
302
302
  naja.addEventListener('success', this.success.bind(this));
303
303
  naja.addEventListener('complete', this.clearRequest.bind(this));
304
304
  this.modal.onShow(this.showHandler.bind(this));
305
- this.modal.onHide(() => {
306
- this.removeModalSnippetsIds();
307
- this.abortControllers.get('modal')?.abort();
308
- });
305
+ this.modal.onHide(this.hideHandler.bind(this));
309
306
  this.modal.onHidden(this.hiddenHandler.bind(this));
310
307
  }
311
308
  checkExtensionEnabled(event) {
@@ -317,21 +314,22 @@ class AjaxModalExtension {
317
314
  if (!this.isPdModalRequest(options)) {
318
315
  return;
319
316
  }
320
- // `modalOptions` will be stored in state, therefore no `Element` is allowed. These options are also forwarded
321
- // to other Naja event handlers via `options`. We also store the element separately to be used there as well.
317
+ // `modalOptions` will be stored in the state; therefore, no `Element` is allowed. These options are also
318
+ // forwarded to other Naja event handlers via `options`. We also store the elements separately to be used there
319
+ // as well.
322
320
  this.modalOptions = this.modal.getOptions(element);
323
321
  options.modalOptions = this.modalOptions;
324
322
  options.modalOpener = element;
325
- // If the extension is enabled and modal is not opened, we detect and store history mode. History mode cannot
326
- // change when traversing ajax link inside modal, it stays the same until modal is hidden.
323
+ // If the extension is enabled and the modal is not opened, we detect and store history mode. History mode
324
+ // cannot change when traversing an ajax link inside modal, it stays the same until modal is hidden.
327
325
  if (!this.modal.isShown()) {
328
326
  this.historyDirection = element.getAttribute('data-naja-modal-history') === 'forwards' ? 'forwards' : 'backwards';
329
327
  }
330
328
  }
331
329
  onSnippetFetch(event) {
332
- // When snippet cache is off, this method is called to construct Naja request options. We retrieve modal
333
- // `options` from original state in history if necessary. Also, when closing the modal from `PopstateEvent`, we
334
- // don't need to make a new request, so we call `event.preventDefault()` in that case.
330
+ // When the snippet cache is off, this method is called to construct Naja request options. We retrieve modal
331
+ // `options` from the original state in history if necessary. Also, when closing the modal from `PopstateEvent`,
332
+ // we don't need to make a new request, so we call `event.preventDefault()` in that case.
335
333
  const { state } = event.detail;
336
334
  if (this.isPdModalState(state)) {
337
335
  event.detail.options.pdModal = true;
@@ -344,11 +342,11 @@ class AjaxModalExtension {
344
342
  }
345
343
  }
346
344
  removeModalSnippetsIds() {
347
- // When closing the modal, we don't want to update any snippets inside it, when other requests finishes. This
348
- // will ensure, that snippets that might be also outside modal (e.g. flash messages) will be redrawn outside the
349
- // modal. Therefore, we remove the id attributes, so no snippet is found.
345
+ // When closing the modal, we don't want to update any snippets inside it when other requests finishes. This
346
+ // will ensure that snippets that might be also outside the modal (e.g. flash messages) will be redrawn outside
347
+ // the modal. Therefore, we remove the id attributes, so no snippet is found.
350
348
  //
351
- // Some snippets are necessary for modal function
349
+ // Some snippets are necessary for a modal function
352
350
  this.modal.element.querySelectorAll('[id^="snippet-"]').forEach((snippet) => {
353
351
  if (!this.modal.reservedSnippetIds.includes(snippet.id)) {
354
352
  snippet.removeAttribute('id');
@@ -370,14 +368,14 @@ class AjaxModalExtension {
370
368
  }
371
369
  buildState(event) {
372
370
  const { operation, options, state } = event.detail;
373
- // Always add a `title` into state, so we can retrieve it when needed after closing the modal. See
371
+ // Always add a `title` into the state, so we can retrieve it when needed after closing the modal. See
374
372
  // `popstateHandler` below.
375
373
  if (!state.title) {
376
374
  state.title = document.title;
377
375
  }
378
376
  // If this is called from Naja's `replaceInitialState`, we don't change the state.
379
377
  //
380
- // This is a possible weakness, because this condition could be true even with actual user interaction, if
378
+ // This is a possible weakness because this condition could be true even with actual user interaction, if
381
379
  // Naja's first interaction is with an element with `data-naja-history="replace"`. In this case the condition
382
380
  // will also be true, but it is probably the desired behaviour to save this state as non-modal anyway, since
383
381
  // the initial state should (or could) never be opened in a modal.
@@ -388,9 +386,9 @@ class AjaxModalExtension {
388
386
  }
389
387
  return;
390
388
  }
391
- // Every time naja builds the state, and we have the modal opened, we extend the state with `pdModal` object
392
- // containing information about modal being opened and what history mode is in use. When `options.forceRedirect`
393
- // is set, modal might be open but the new state will be redirected outside of it.
389
+ // Every time naja builds the state, and we have the modal opened, we extend the state with a ` pdModal ` object
390
+ // containing information about the modal being opened and what history mode is in use. When
391
+ // `options.forceRedirect` is set, modal might be open but the new state will be redirected outside it.
394
392
  const isShown = this.isPdModalRequest(options) && !options.forceRedirect;
395
393
  if (isShown) {
396
394
  state.pdModal = {
@@ -427,7 +425,8 @@ class AjaxModalExtension {
427
425
  return;
428
426
  }
429
427
  const requestHistory = this.isRequestWithHistory(options);
430
- // If the history is disabled for current request, we will disable it for all ajax links / forms in modal as well.
428
+ // If the history is disabled for the current request, we will disable it for all ajax links / forms in modal as
429
+ // well.
431
430
  if (!requestHistory && event.target) {
432
431
  const ajaxified = this.modal.element.querySelectorAll(event.target.uiHandler?.selector);
433
432
  ajaxified.forEach((element) => {
@@ -462,12 +461,23 @@ class AjaxModalExtension {
462
461
  }
463
462
  }
464
463
  }
464
+ hideHandler(event) {
465
+ const opener = event.detail?.opener;
466
+ const abortable = opener
467
+ ? (opener.getAttribute('data-naja-abort') ??
468
+ opener.form?.getAttribute('data-naja-abort')) !== 'off'
469
+ : true;
470
+ this.removeModalSnippetsIds();
471
+ if (abortable) {
472
+ this.abortControllers.get(this.uniqueExtKey)?.abort();
473
+ }
474
+ }
465
475
  hiddenHandler() {
466
- // This method is called after modal has been hidden. It either pushes a new state into history (mode `forwards`)
467
- // or calls `history.back()` to start go-back procedure.
476
+ // This method is called after the modal has been hidden. It either pushes a new state into history (mode
477
+ // `forwards`) or calls `history.back()` to start go-back procedure.
468
478
  //
469
- // New state is pushed only if we are able to retrieve the state under the modal (which should have been stored
470
- // previously) and the modal is not being closed using forward / back buttons in browser.
479
+ // A new state is pushed only if we are able to retrieve the state under the modal (which should have been
480
+ // stored previously), and the modal is not being closed using forward / back buttons in the browser.
471
481
  if (!this.historyEnabled) {
472
482
  return;
473
483
  }
@@ -482,9 +492,9 @@ class AjaxModalExtension {
482
492
  const state = this.original.pop();
483
493
  this.original = [];
484
494
  if (state) {
485
- // When closing the modal using forward / back buttons in browser, the current state is the same as the
486
- // one stored in `this.original`. If that's the case, we don't push anything as it would duplicate the
487
- // state in history.
495
+ // When closing the modal using forward / back buttons in the browser, the current state is the same as
496
+ // the one stored in `this.original`. If that's the case, we don't push anything as it would duplicate
497
+ // the state in history.
488
498
  if (history.state === undefined || history.state.href !== state.location) {
489
499
  history.pushState(state.state, state.title, state.location);
490
500
  document.title = state.title;
@@ -507,12 +517,14 @@ class AjaxModalExtension {
507
517
  const isCurrentStatePdModal = this.isPdModalState(state);
508
518
  this.popstateFlag = true;
509
519
  this.shouldPreventSnippetFetch = false;
510
- // We don't know how many states we go back. So we go one by one until the new state is not modal state
520
+ // We don't know how many states we go back. So we go one by one until the new state is not a modal state
511
521
  // (`isPdModalState` is `false`).
512
522
  if (this.hidePopstateFlag) {
513
523
  // We don't want the naja popstate callback to be executed (or any other popstate handler).
514
524
  event.stopImmediatePropagation();
515
- if (isCurrentStatePdModal) {
525
+ // If the `state.cursor` is 0, the page has been refreshed, and we don't want to go back in history any
526
+ // more.
527
+ if (isCurrentStatePdModal && state.cursor !== 0) {
516
528
  window.history.back();
517
529
  return;
518
530
  }
@@ -523,19 +535,19 @@ class AjaxModalExtension {
523
535
  }
524
536
  this.hidePopstateFlag = false;
525
537
  }
526
- // We check if the state has `pdModal` object present on popstate. If so , we proceed to open the modal. Content
527
- // of the modal is restored by naja itself (either from cache or by new request).
538
+ // We check if the state has a ` pdModal ` object present on popstate. If so, we proceed to open the modal.
539
+ // Naja itself restores the content of the modal (either from cache or by new request).
528
540
  //
529
- // If the initial state is also detected as pdModal state, we returned to some pdModal state using reload. In
530
- // that case, we don't want to open the modal, because we might be missing some snippets. Effectively this means
531
- // that the modal will never be opened by forward / back button if there has been some other site loaded outside
532
- // the modal (e.g. some non-ajax link leading from modal).
541
+ // If the initial state is also detected as a pdModal state, we returned to some pdModal state using reload. In
542
+ // that case, we don't want to open the modal because we might be missing some snippets. Effectively this means
543
+ // that the modal will never be opened by the forward / back button if there has been some other site loaded
544
+ // outside the modal (e.g. some non-ajax links leading from modal).
533
545
  if (isCurrentStatePdModal && !this.isPdModalState(this.initialState)) {
534
546
  this.restoreExtensionPropertiesFromState(state);
535
547
  this.modal.show(this.getElementFromString(state.pdModal.opener), state.pdModal.options, event);
536
548
  // If there is some snippet cache, we might restore modal options. If not, options will be restored based on
537
549
  // options after the ajax request. The same applies to dispatching the load event - if the cache is on, we
538
- // dispatch the event immediately (after the restore has actually happened, see below), otherwise it is
550
+ // dispatch the event immediately (after the restore has actually happened, see below); otherwise it is
539
551
  // dispatched after the ajax request.
540
552
  if (state.snippets?.storage !== 'off') {
541
553
  this.modal.setOptions(state.pdModal.options);
@@ -550,20 +562,20 @@ class AjaxModalExtension {
550
562
  }
551
563
  }
552
564
  else {
553
- this.historyEnabled = false; // Hiding modal using forward / back button, we disable the history to prevent state duplication
554
- // Reload the page if the initial state has been inside modal. This prevents snippets loss e.g. during
565
+ this.historyEnabled = false; // Hiding modal using the forward / back button, we disable the history to prevent state duplication
566
+ // Reload the page if the initial state has been inside modal. This prevents snippet loss e.g. during
555
567
  // layout changes.
556
568
  if (this.isPdModalState(this.initialState)) {
557
569
  window.location.reload();
558
570
  }
559
571
  // Non-modal state and non-modal initial state → we just hide the current modal and prevent snippet fetch
560
- // (if snippet cache is off).
572
+ // (if the snippet cache is off).
561
573
  if (this.modal.isShown()) {
562
574
  this.modal.hide(event);
563
575
  this.shouldPreventSnippetFetch = true;
564
576
  }
565
577
  }
566
- // Keep track of current state. When `backwards` history mode is used, we eventually push this state into
578
+ // Keep track of the current state. When the ` backwards ` history mode is used, we eventually push this state into
567
579
  // `this.original`.
568
580
  this.lastState = {
569
581
  location: location.href,
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/classes/ControlManager.ts","../src/utils.ts","../src/classes/Suggest.ts","../src/extensions/AjaxModalExtension.ts","../src/extensions/AjaxModalPreventRedrawExtension.ts","../src/extensions/AjaxOnceExtension.ts","../src/extensions/BtnSpinnerExtension.ts","../src/extensions/ConfirmExtension.ts","../src/extensions/FollowUpRequestExtension.ts","../src/extensions/ForceRedirectExtension.ts","../src/extensions/ForceReplaceExtension.ts","../src/extensions/ScrollToExtension.ts","../src/extensions/SingleSubmitExtension.ts","../src/extensions/SnippetFormPartExtension.ts","../src/extensions/SpinnerExtension.ts","../src/extensions/SuggestExtension.ts","../src/extensions/ToggleClassExtension.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":";;;;;;;;;;AAIA,IAAI,QAAQ,GAA0B,IAAI,CAAA;MAE7B,cAAc,CAAA;AAK1B,IAAA,WAAA,CAAmB,IAAU,EAAA;QAHb,IAAa,CAAA,aAAA,GAAc,EAAE,CAAA;QAC7B,IAAa,CAAA,aAAA,GAAc,EAAE,CAAA;QAG5C,IAAI,QAAQ,KAAK,IAAI,EAAE;;YAEtB,QAAQ,GAAG,IAAI,CAAA;AACf,YAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;AAChB,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAChG,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACzF,SAAA;AACD,QAAA,OAAO,QAAQ,CAAA;KACf;AAEO,IAAA,qBAAqB,CAAC,KAAwB,EAAA;AACrD,QAAA,IACC,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM;AAC7D,YAAA,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,EAC7D;YACD,OAAM;AACN,SAAA;AAED,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;KACtD;AAEO,IAAA,eAAe,CAAC,KAAuB,EAAA;AAC9C,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;KACzD;IAEO,UAAU,CAAC,QAAmB,EAAE,OAAgB,EAAA;AACvD,QAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,KAAI;AAC5B,YAAA,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;AAC5B,SAAC,CAAC,CAAA;KACF;IAEM,OAAO,CAAC,QAAmB,EAAE,OAAgB,EAAA;AACnD,QAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,KAAI;AAC5B,YAAA,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE;AAClC,gBAAA,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;AACxB,aAAA;AACF,SAAC,CAAC,CAAA;KACF;AAEM,IAAA,gBAAgB,CAAC,OAAgB,EAAA;AACvC,QAAA,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAA;AACrC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;KAChC;AAEM,IAAA,gBAAgB,CAAC,OAAgB,EAAA;AACvC,QAAA,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAA;AACrC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;KAChC;AAEO,IAAA,uBAAuB,CAAC,OAAgB,EAAA;AAC/C,QAAA,IAAI,QAAQ,CAAC,UAAU,KAAK,SAAS,EAAE;YACtC,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;AACjG,SAAA;AAAM,aAAA;AACN,YAAA,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;AAC5B,SAAA;KACD;AACD;;SClEe,WAAW,CAAoB,MAAe,EAAE,YAAqB,MAAM,EAAA;AAC1F,IAAA,IAAI,OAAgB,CAAA;AAEpB,IAAA,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,UAAU,EAAE;QACvC,OAAO,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;AAC/F,KAAA;AAAM,SAAA;AACN,QAAA,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;AACtB,KAAA;AAED,IAAA,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IAC3B,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAA;AAEpE,IAAA,OAAO,OAAO,CAAA;AACf,CAAC;AAEK,SAAU,WAAW,CAAC,OAAgB,EAAA;AAC3C,IAAA,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAA;AACpE,IAAA,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;AACjD,CAAC;MAEY,eAAe,GAAG,CAAC,OAAgB,EAAE,WAAmB,KAAa;IACjF,MAAM,YAAY,GAAI,OAAuB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAElE,OAAO,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,OAAO,IAAI,YAAY,KAAK,KAAK,CAAA;AACxF,EAAC;MAEY,cAAc,GAAG,CAAC,OAAgB,EAAE,WAAmB,KAAa;IAChF,MAAM,YAAY,GAAI,OAAuB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;AAElE,IAAA,OAAO,YAAY,KAAK,KAAK,IAAI,YAAY,KAAK,OAAO,CAAA;AAC1D;;ACnBA,MAAa,OAAO,CAAA;AAkCnB,IAAA,WAAA,CACC,OAAoB,EACpB,IAAqB,EACrB,UAAmC,EAAE,EACrC,gBAAiD,GAAA,SAAS,EAC1D,OAAA,GAAmC,SAAS,EAC5C,kBAAkC,SAAS,EAAA;QApBpC,IAAM,CAAA,MAAA,GAAY,KAAK,CAAA;QACvB,IAAK,CAAA,KAAA,GAA8C,SAAS,CAAA;QAE5D,IAAY,CAAA,YAAA,GAAW,EAAE,CAAA;AAEhB,QAAA,IAAA,CAAA,OAAO,GAAmB;AAC1C,YAAA,SAAS,EAAE,CAAC;AACZ,YAAA,gBAAgB,EAAE,CAAC;AACnB,YAAA,OAAO,EAAE,GAAG;AACZ,YAAA,eAAe,EAAE,IAAI;AACrB,YAAA,qBAAqB,EAAE,KAAK;AAC5B,YAAA,WAAW,EAAE,IAAI;SACjB,CAAA;AAUA,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;AACtB,QAAA,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,gBAAgB,EAAE,OAAO,CAAA;QACnD,IAAI,CAAC,eAAe,GAAG,eAAe,IAAI,gBAAgB,EAAE,eAAe,CAAA;AAE3E,QAAA,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAmB,CAAI,CAAA,EAAA,OAAO,CAAC,cAAc,CAAE,CAAA,CAAC,CAAA;AACnF,QAAA,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAoB,CAAI,CAAA,EAAA,OAAO,CAAC,eAAe,CAAE,CAAA,CAAC,CAAA;AACtF,QAAA,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAc,CAAI,CAAA,EAAA,OAAO,CAAC,gBAAgB,CAAE,CAAA,CAAC,CAAA;QAElF,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE;AAClC,YAAA,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;AAC3E,SAAA;AAED,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;AAChB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;AAClB,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;AACpB,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;AAEtB,QAAA,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE,CAAA;AAE9C,QAAA,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAA;AAC/B,QAAA,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACjE,QAAA,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAEhE,QAAA,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAC1E,QAAA,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAEtE,QAAA,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;;;AAGlF,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;KACzB;IAEO,OAAO,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,KAAK,CAAC,CAAA;KAC3C;IAEO,WAAW,GAAA;AAClB,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;YAC9E,OAAM;AACN,SAAA;AAED,QAAA,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;AAClF,QAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAEjC,IAAI,KAAK,CAAC,gBAAgB,EAAE;YAC3B,OAAM;AACN,SAAA;AAED,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;AAClB,QAAA,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA,EAAG,OAAO,CAAC,gBAAgB,CAAA,OAAA,CAAS,CAAC,CAAA;KAChE;IAEO,WAAW,GAAA;AAClB,QAAA,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;AAClF,QAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAEjC,IAAI,KAAK,CAAC,gBAAgB,EAAE;YAC3B,OAAM;AACN,SAAA;AAED,QAAA,MAAM,eAAe,GAAG,CAAA,EAAG,OAAO,CAAC,aAAa,UAAU,CAAA;AAC1D,QAAA,MAAM,YAAY,GAAyC,IAAI,CAAC,OAAO,CAAC,aAAa,CACpF,CAAI,CAAA,EAAA,eAAe,CAAE,CAAA,CACrB,CAAA;AAED,QAAA,YAAY,EAAE,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;AAE/C,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;AACnB,QAAA,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA,EAAG,OAAO,CAAC,gBAAgB,CAAA,OAAA,CAAS,CAAC,CAAA;KACnE;IAEO,YAAY,GAAA;AACnB,QAAA,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA,EAAG,OAAO,CAAC,gBAAgB,CAAA,OAAA,CAAS,CAAC,CAAA;AAChE,QAAA,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAA;KAC9B;IAEM,YAAY,GAAA;AAClB,QAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;AACjF,QAAA,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA,EAAG,OAAO,CAAC,cAAc,CAAA,SAAA,CAAW,CAAC,CAAA;AAE9D,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;AACrE,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,EAAE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnE,MAAM,MAAM,GAAG,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAA;YAEjE,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,IAAmB,EAAE,MAAM,CAAC,CAAA;AACnE,SAAA;KACD;IAEM,aAAa,GAAA;AACnB,QAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;AAChF,QAAA,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA,EAAG,OAAO,CAAC,cAAc,CAAA,SAAA,CAAW,CAAC,CAAA;AAEjE,QAAA,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAG,EAAA,OAAO,CAAC,gBAAgB,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;AAEnF,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,QAAQ,CAAC,aAAa,KAAK,IAAI,CAAC,KAAK,EAAE;YAC5D,IAAI,CAAC,WAAW,EAAE,CAAA;AAClB,SAAA;AAAM,aAAA;YACN,IAAI,CAAC,WAAW,EAAE,CAAA;AAClB,SAAA;QAED,IAAI,IAAI,CAAC,cAAc,EAAE;AACxB,YAAA,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;AAChC,YAAA,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;AAC/B,SAAA;KACD;AAEO,IAAA,kBAAkB,CAAC,KAAoB,EAAA;AAC9C,QAAA,MAAM,eAAe,GAAG,CAAA,EAAG,OAAO,CAAC,aAAa,UAAU,CAAA;AAC1D,QAAA,IAAI,OAA4B,CAAA;AAChC,QAAA,IAAI,YAAkD,CAAA;AACtD,QAAA,IAAI,iBAAqC,CAAA;QAEzC,QAAQ,KAAK,CAAC,GAAG;AAChB,YAAA,KAAK,QAAQ;gBACZ,KAAK,CAAC,cAAc,EAAE,CAAA;gBAEtB,IAAI,CAAC,WAAW,EAAE,CAAA;AAClB,gBAAA,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;gBAEjB,MAAK;AAEN,YAAA,KAAK,WAAW,CAAC;AACjB,YAAA,KAAK,SAAS;gBACb,KAAK,CAAC,cAAc,EAAE,CAAA;AAEtB,gBAAA,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAoB,IAAI,OAAO,CAAC,aAAa,CAAE,CAAA,CAAC,CAAC,CAAA;AACnG,gBAAA,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAA;AACrF,gBAAA,iBAAiB,GAAG,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;AAE5E,gBAAA,YAAY,EAAE,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;AAE/C,gBAAA,IAAI,KAAK,CAAC,GAAG,KAAK,WAAW,EAAE;AAC9B,oBAAA,iBAAiB,GAAG,iBAAiB,KAAK,SAAS,GAAG,iBAAiB,GAAG,CAAC,GAAG,CAAC,CAAA;AAC/E,iBAAA;AAAM,qBAAA;AACN,oBAAA,iBAAiB,GAAG,iBAAiB,KAAK,SAAS,GAAG,iBAAiB,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;AAChG,iBAAA;gBAED,OAAO,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;AAC1D,gBAAA,OAAO,CAAC,iBAAiB,CAAC,EAAE,cAAc,CAAC;AAC1C,oBAAA,KAAK,EAAE,SAAS;AAChB,iBAAA,CAAC,CAAA;gBAEF,MAAK;AAEN,YAAA,KAAK,OAAO;gBACX,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAoB,CAAI,CAAA,EAAA,eAAe,CAAE,CAAA,CAAC,CAAA;AAEnF,gBAAA,IAAI,YAAY,EAAE;oBACjB,KAAK,CAAC,cAAc,EAAE,CAAA;oBACtB,KAAK,CAAC,eAAe,EAAE,CAAA;oBAEvB,YAAY,CAAC,KAAK,EAAE,CAAA;AACpB,iBAAA;AAAM,qBAAA,IAAI,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE;oBAC9C,KAAK,CAAC,cAAc,EAAE,CAAA;AACtB,iBAAA;gBAED,MAAK;AACN,SAAA;KACD;IAEO,gBAAgB,GAAA;AACvB,QAAA,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAExB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;QAE9B,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;YACjD,IAAI,CAAC,WAAW,EAAE,CAAA;YAClB,OAAM;AACN,SAAA;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;;;YAGjB,IAAI,KAAK,KAAK,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;gBAChE,IAAI,CAAC,YAAY,EAAE,CAAA;AACnB,aAAA;YAED,IAAI,CAAC,WAAW,EAAE,CAAA;AAClB,SAAA;;AAGD,QAAA,IAAI,KAAK,KAAK,IAAI,CAAC,YAAY,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACzE,OAAM;AACN,SAAA;AAED,QAAA,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,MAAK;AAC5B,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;AACzB,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;AACpB,SAAC,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;KACxB;AAEO,IAAA,sBAAsB,CAAC,KAAiB,EAAA;QAC/C,KAAK,CAAC,cAAc,EAAE,CAAA;AAEtB,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAA;AAC1C,QAAA,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,IAAI,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE;AAC1E,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;AACjB,SAAA;KACD;;AA5OsB,OAAS,CAAA,SAAA,GAAG,YAAH,CAAe;AACxB,OAAA,CAAA,aAAa,GAAG,CAAG,EAAA,OAAO,CAAC,SAAS,CAAA,MAAA,CAAQ,CAAA;AAC5C,OAAA,CAAA,cAAc,GAAG,CAAG,EAAA,OAAO,CAAC,SAAS,CAAA,OAAA,CAAS,CAAA;AAC9C,OAAA,CAAA,eAAe,GAAG,CAAG,EAAA,OAAO,CAAC,SAAS,CAAA,KAAA,CAAO,CAAA;AAC7C,OAAA,CAAA,gBAAgB,GAAG,CAAG,EAAA,OAAO,CAAC,SAAS,CAAA,SAAA,CAAW,CAAA;AAClD,OAAA,CAAA,aAAa,GAAG,CAAG,EAAA,OAAO,CAAC,SAAS,CAAA,MAAA,CAAQ;;MCwCvD,kBAAkB,CAAA;AAoB9B,IAAA,WAAA,CAAmB,KAAgB,EAAA;QAlBlB,IAAY,CAAA,YAAA,GAAW,OAAO,CAAA;QAEvC,IAAY,CAAA,YAAA,GAAG,KAAK,CAAA;QACpB,IAAgB,CAAA,gBAAA,GAAG,KAAK,CAAA;AAExB,QAAA,IAAA,CAAA,cAAc,GAAG,KAAK,CAAA;QACtB,IAAgB,CAAA,gBAAA,GAAqB,WAAW,CAAA;QAEhD,IAAyB,CAAA,yBAAA,GAAG,KAAK,CAAA;QAEjC,IAAY,CAAA,YAAA,GAAQ,EAAE,CAAA;AAEtB,QAAA,IAAA,CAAA,QAAQ,GAA0B,EAAE,CAAA;QACpC,IAAS,CAAA,SAAA,GAA+B,IAAI,CAAA;AAGnC,QAAA,IAAA,CAAA,gBAAgB,GAAiC,IAAI,GAAG,EAAE,CAAA;AA+BnE,QAAA,IAAA,CAAA,oBAAoB,GAAG,CAAC,OAAgB,KAAa;AAC5D,YAAA,OAAO,OAAO,CAAC,OAAO,KAAK,KAAK,CAAA;AACjC,SAAC,CAAA;AAEO,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,OAAgB,KAAmC;YAC9E,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAA;AACjE,SAAC,CAAA;AAEO,QAAA,IAAA,CAAA,cAAc,GAAG,CAAC,KAA2C,KAAkC;YACtG,OAAO,SAAS,IAAI,KAAK,CAAA;AAC1B,SAAC,CAAA;AAEO,QAAA,IAAA,CAAA,mCAAmC,GAAG,CAAC,KAA0B,KAAU;AAClF,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;YAC1B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAA;YACtD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAA;AAC1C,SAAC,CAAA;;;AA1CA,QAAA,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAEpE,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAA;KACvC;AAEM,IAAA,UAAU,CAAC,IAAU,EAAA;AAC3B,QAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAErF,QAAA,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAE9E,QAAA,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAE3E,QAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACvD,QAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACpE,QAAA,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACzD,QAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAE/D,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAC9C,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAK;YACtB,IAAI,CAAC,sBAAsB,EAAE,CAAA;YAC7B,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAA;AAC5C,SAAC,CAAC,CAAA;AACF,QAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;KAClD;AAoBO,IAAA,qBAAqB,CAAC,KAAuB,EAAA;QACpD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEzC,QAAA,OAAO,CAAC,OAAO;AACd,YAAA,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;AACpB,gBAAA,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC;AACtC,gBAAA,OAA4B,CAAC,IAAI,EAAE,YAAY,CAAC,iBAAiB,CAAC,CAAA;AAEpE,QAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE;YACpC,OAAM;AACN,SAAA;;;QAID,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;AAElD,QAAA,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;AACxC,QAAA,OAAO,CAAC,WAAW,GAAG,OAAO,CAAA;;;AAI7B,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE;AAC1B,YAAA,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,yBAAyB,CAAC,KAAK,UAAU,GAAG,UAAU,GAAG,WAAW,CAAA;AACjH,SAAA;KACD;AAEO,IAAA,cAAc,CAAC,KAAiB,EAAA;;;;AAIvC,QAAA,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAE9B,QAAA,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;YAC/B,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;AACnC,YAAA,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;AAClF,YAAA,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAA;AACzD,SAAA;QAED,IAAI,IAAI,CAAC,yBAAyB,EAAE;YACnC,KAAK,CAAC,cAAc,EAAE,CAAA;AACtB,YAAA,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAA;AACtC,SAAA;KACD;IAEO,sBAAsB,GAAA;;;;;;AAM7B,QAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,KAAI;AAC3E,YAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;AACxD,gBAAA,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;AAC7B,aAAA;AACF,SAAC,CAAC,CAAA;KACF;AAEO,IAAA,oBAAoB,CAAC,KAAiB,EAAA;QAC7C,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AACjD,QAAA,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE;AACnC,YAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,CAAA;YACrD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAAA;AAC7D,SAAA;KACD;AAEO,IAAA,YAAY,CAAC,KAAoB,EAAA;AACxC,QAAA,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAChC,QAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE;YAC5B,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;AAC/C,SAAA;KACD;AAEO,IAAA,UAAU,CAAC,KAAsB,EAAA;QACxC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;;;AAIlD,QAAA,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;AACjB,YAAA,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAA;AAC5B,SAAA;;;;;;;QAQD,IAAI,SAAS,KAAK,cAAc,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;;AAEvD,YAAA,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE;gBAClC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAA;AAC5C,aAAA;YAED,OAAM;AACN,SAAA;;;;AAKD,QAAA,MAAM,OAAO,GAAY,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAA;AAEjF,QAAA,IAAI,OAAO,EAAE;YACZ,KAAK,CAAC,OAAO,GAAG;gBACf,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;AACvC,gBAAA,MAAM,EAAG,OAAO,CAAC,WAAuB,CAAC,SAAS;gBAClD,OAAO,EAAE,IAAI,CAAC,YAAY;aAC1B,CAAA;AACD,SAAA;;;AAID,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;KAC1B;AAEO,IAAA,MAAM,CAAC,KAAkB,EAAA;QAChC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QACzC,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAA;;QAGvD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAA;QAEnG,IAAI,CAAC,gBAAgB,EAAE;;AAEtB,YAAA,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;YAE5D,OAAM;AACN,SAAA;AAED,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;KACjE;AAEO,IAAA,OAAO,CAAC,KAAmB,EAAA;QAClC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEzC,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;QACzB,IAAI,CAAC,SAAS,GAAG;YAChB,QAAQ,EAAE,QAAQ,CAAC,IAAI;YACvB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,KAAK,EAAE,QAAQ,CAAC,KAAK;SACrB,CAAA;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE;YACpC,OAAM;AACN,SAAA;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;;AAGzD,QAAA,IAAI,CAAC,cAAc,IAAI,KAAK,CAAC,MAAM,EAAE;AACpC,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAe,KAAK,CAAC,MAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;AAE9G,YAAA,SAAS,CAAC,OAAO,CAAC,CAAC,OAAoB,KAAI;AAC1C,gBAAA,OAAO,CAAC,YAAY,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAA;AACjD,aAAC,CAAC,CAAA;AACF,SAAA;QAED,IAAI,OAAO,CAAC,UAAU,EAAE;AACvB,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AACtB,SAAA;AAAM,aAAA;YACN,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;AAExC,YAAA,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;gBAC5B,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;AACjD,aAAA;AACD,SAAA;KACD;IAEO,WAAW,GAAA;QAClB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;;;AAIxC,QAAA,IAAI,IAAI,CAAC,gBAAgB,KAAK,UAAU,EAAE;AACzC,YAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,SAAS,EAAE;gBACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AAClC,aAAA;AAAM,iBAAA;AACN,gBAAA,MAAM,KAAK,GAAwB;oBAClC,QAAQ,EAAE,QAAQ,CAAC,IAAI;oBACvB,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,KAAK,EAAE,QAAQ,CAAC,KAAK;iBACrB,CAAA;AACD,gBAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AACzB,aAAA;AACD,SAAA;KACD;IAEO,aAAa,GAAA;;;;;;AAMpB,QAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACzB,OAAM;AACN,SAAA;AAED,QAAA,IAAI,IAAI,CAAC,gBAAgB,KAAK,WAAW,EAAE;;;AAG1C,YAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;YAC5B,IAAI,CAAC,SAAS,EAAE,CAAA;AAChB,YAAA,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;AACrB,SAAA;AAAM,aAAA,IAAI,IAAI,CAAC,gBAAgB,KAAK,UAAU,EAAE;YAChD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;AACjC,YAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;AAElB,YAAA,IAAI,KAAK,EAAE;;;;AAIV,gBAAA,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,QAAQ,EAAE;AACzE,oBAAA,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;AAC3D,oBAAA,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;AAE5B,oBAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;oBACzB,IAAI,CAAC,SAAS,GAAG;wBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;wBACxB,KAAK,EAAE,KAAK,CAAC,KAAK;wBAClB,KAAK,EAAE,KAAK,CAAC,KAAK;qBAClB,CAAA;AACD,iBAAA;AACD,aAAA;YAED,IAAI,CAAC,SAAS,EAAE,CAAA;AAChB,SAAA;KACD;AAEO,IAAA,eAAe,CAAC,KAAoB,EAAA;QAC3C,MAAM,KAAK,GAAiB,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAA;QAE5D,IAAI,OAAO,KAAK,KAAK,WAAW,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YAChD,OAAM;AACN,SAAA;QAED,MAAM,qBAAqB,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;AACxD,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;AACxB,QAAA,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAA;;;QAItC,IAAI,IAAI,CAAC,gBAAgB,EAAE;;YAE1B,KAAK,CAAC,wBAAwB,EAAE,CAAA;AAEhC,YAAA,IAAI,qBAAqB,EAAE;AAC1B,gBAAA,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;gBAErB,OAAM;AACN,aAAA;AAAM,iBAAA;gBACN,IAAI,KAAK,CAAC,KAAK,EAAE;AAChB,oBAAA,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;AAC5B,iBAAA;AACD,aAAA;AAED,YAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAA;AAC7B,SAAA;;;;;;;;QASD,IAAI,qBAAqB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;AACrE,YAAA,IAAI,CAAC,mCAAmC,CAAC,KAAK,CAAC,CAAA;YAE/C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;;;;;AAM9F,YAAA,IAAI,KAAK,CAAC,QAAQ,EAAE,OAAO,KAAK,KAAK,EAAE;gBACtC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;;;;gBAK5C,UAAU,CAAC,MAAK;AACf,oBAAA,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;wBAC5B,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;AACjD,qBAAA;iBACD,EAAE,CAAC,CAAC,CAAA;AACL,aAAA;AACD,SAAA;AAAM,aAAA;AACN,YAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAA;;;YAI3B,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;AAC3C,gBAAA,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAA;AACxB,aAAA;;;AAID,YAAA,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE;AACzB,gBAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AACtB,gBAAA,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAA;AACrC,aAAA;AACD,SAAA;;;QAID,IAAI,CAAC,SAAS,GAAG;YAChB,QAAQ,EAAE,QAAQ,CAAC,IAAI;AACvB,YAAA,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,QAAQ,CAAC,KAAK;SACrB,CAAA;KACD;IAEO,SAAS,GAAA;AAChB,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAA;AAC3B,QAAA,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAA;AACnC,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;KACxB;AAEO,IAAA,oBAAoB,CAAC,aAAqB,EAAA;AACjD,QAAA,OAAO,IAAI,SAAS,EAAE,CAAC,eAAe,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,iBAA4B,CAAA;KACpG;AACD;;MCzbY,+BAA+B,CAAA;AACpC,IAAA,UAAU,CAAC,IAAU,EAAA;AAC3B,QAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACjF,QAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;KAC7D;AAEO,IAAA,iBAAiB,CAAC,KAAuB,EAAA;QAChD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEzC,QAAA,IAAI,OAAO,CAAC,YAAY,CAAC,gCAAgC,CAAC,EAAE;AAC3D,YAAA,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAA;AACnC,SAAA;KACD;AAEO,IAAA,YAAY,CAAC,KAAkB,EAAA;QACtC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QAEzC,IAAI,OAAO,CAAC,oBAAoB,EAAE;AACjC,YAAA,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;AAC5D,SAAA;KACD;AACD;;MCpBY,iBAAiB,CAAA;AACtB,IAAA,UAAU,CAAC,IAAU,EAAA;AAC3B,QAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAC7E,QAAA,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;KACzD;AAEO,IAAA,aAAa,CAAC,KAAuB,EAAA;QAC5C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEzC,QAAA,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE;YAC1C,OAAM;AACN,SAAA;AAED,QAAA,IAAI,eAAe,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE;YAC3C,KAAK,CAAC,cAAc,EAAE,CAAA;YACtB,OAAM;AACN,SAAA;AAED,QAAA,OAAO,CAAC,iBAAiB,GAAG,OAAmC,CAAA;KAC/D;AAEO,IAAA,OAAO,CAAC,KAAmB,EAAA;AAClC,QAAA,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEhC,QAAA,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE;YAC/B,OAAM;AACN,SAAA;QAED,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAA;KACrD;AACD;;MC5BY,mBAAmB,CAAA;AAO/B,IAAA,WAAA,CAAmB,OAAoB,EAAE,eAAA,GAAkC,SAAS,EAAE,OAAO,GAAG,KAAK,EAAA;AACpG,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;AACtB,QAAA,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;AACtC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;;QAGtB,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,KAAkB,KAAI;AAC1D,YAAA,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAA;AACzB,YAAA,MAAM,MAAM,GAAG,IAAI,GAAI,IAAwB,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAA;;;AAI3E,YAAA,IACC,EAAE,IAAI,YAAY,eAAe,CAAC;AAClC,gBAAA,CAAC,MAAM;iBACN,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACzG,gBAAA,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC;AACpC,gBAAA,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC,EACtC;AACD,gBAAA,OAAO,IAAI,CAAA;AACX,aAAA;YAED,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAE9C,IAAI,CAAC,OAAO,CAAC,iBAAiB,GAAG,MAAM,CACtC,UAAU,CAAC,MAAK;gBACf,WAAW,CAAC,OAAO,CAAC,CAAA;AACpB,gBAAA,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAA;AACtC,aAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAChB,CAAA;AACF,SAAC,CAAC,CAAA;KACF;AAEM,IAAA,UAAU,CAAC,IAAU,EAAA;QAC3B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAA;;AAG/C,QAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAErF,QAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAChE,QAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;;;QAItE,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,KAAK,KAAK,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAA;KAC7G;AAEO,IAAA,qBAAqB,CAAC,KAAuB,EAAA;AACpD,QAAA,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEhC,QAAA,IAAI,eAAe,CAAC,OAAO,EAAE,gBAAgB,CAAC,IAAK,OAAuB,CAAC,OAAO,CAAC,WAAW,KAAK,KAAK,EAAE;YACzG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAAA;AAClD,SAAA;KACD;AAEO,IAAA,gBAAgB,CAAC,KAAiB,EAAA;AACzC,QAAA,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEhC,QAAA,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;YACjC,OAAM;AACN,SAAA;AAED,QAAA,OAAO,CAAC,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAA;KACxE;AAEO,IAAA,mBAAmB,CAAC,KAAoB,EAAA;QAC/C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEzC,QAAA,IAAI,OAAO,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,EAAE,QAAQ,EAAE;YACtE,OAAM;AACN,SAAA;AAED,QAAA,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;KAC/B;AACD;;MC1FY,gBAAgB,CAAA;AACrB,IAAA,UAAU,CAAC,IAAU,EAAA;QAC3B,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,KAAuB,KAAI;AAC1E,YAAA,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;YAEhC,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;YAEpD,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;gBACxC,KAAK,CAAC,cAAc,EAAE,CAAA;AACtB,aAAA;AACF,SAAC,CAAC,CAAA;KACF;AACD;;MCPY,wBAAwB,CAAA;AAC7B,IAAA,UAAU,CAAC,IAAU,EAAA;QAC3B,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAmB,KAAI;AACxD,YAAA,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;YAEhC,IAAI,OAAO,CAAC,WAAW,EAAE;AACxB,gBAAA,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;AACtE,aAAA;AACF,SAAC,CAAC,CAAA;KACF;AACD;;MCVY,sBAAsB,CAAA;AAG3B,IAAA,UAAU,CAAC,IAAU,EAAA;AAC3B,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;AAEhB,QAAA,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAChE,QAAA,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;KACrE;AAEO,IAAA,cAAc,CAAC,KAAmB,EAAA;QACzC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QAEzC,IAAI,OAAO,CAAC,aAAa,EAAE;AAC1B,YAAA,OAAO,CAAC,aAAa,GAAG,IAAI,CAAA;AAC5B,SAAA;KACD;AAEO,IAAA,mBAAmB,CAAC,KAAmB,EAAA;AAC9C,QAAA,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QAEhC,IAAI,OAAO,CAAC,aAAa,EAAE;AAC1B,YAAA,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;YACpE,KAAK,CAAC,wBAAwB,EAAE,CAAA;AAChC,SAAA;KACD;AACD;;MCvBY,qBAAqB,CAAA;AAG1B,IAAA,UAAU,CAAC,IAAU,EAAA;AAC3B,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;AAEhB,QAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACjF,QAAA,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;KACxF;AAEO,IAAA,iBAAiB,CAAC,KAAuB,EAAA;QAChD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QAEzC,OAAO,CAAC,YAAY,GAAG,eAAe,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAA;KAC1E;AAEO,IAAA,kBAAkB,CAAC,KAAwB,EAAA;QAClD,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEjD,QAAA,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,YAAY,EAAE;YACtC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;AACpD,SAAA;KACD;AACD;;MCrBY,iBAAiB,CAAA;AAG7B,IAAA,WAAA,CAAmB,oBAAwC,EAAA;QAFpD,IAAoB,CAAA,oBAAA,GAAsB,QAAQ,CAAA;AAGxD,QAAA,IAAI,oBAAoB,EAAE;AACzB,YAAA,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAA;AAChD,SAAA;KACD;AAEM,IAAA,UAAU,CAAC,IAAU,EAAA;AAC3B,QAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACrF,QAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAC5D,QAAA,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;KAC7D;AAEO,IAAA,qBAAqB,CAAC,KAAuB,EAAA;QACpD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAA;AAE5D,QAAA,IAAI,QAAQ,EAAE;YACb,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,2BAA2B,CAAkC,CAAA;YAChG,MAAM,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,6BAA6B,CAAC,CAAA;AAEzE,YAAA,OAAO,CAAC,gBAAgB,GAAG,QAAQ,CAAA;AACnC,YAAA,OAAO,CAAC,eAAe,GAAG,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,SAAS,CAAA;YAC/E,OAAO,CAAC,aAAa,GAAG,KAAK,IAAI,IAAI,CAAC,oBAAoB,CAAA;AAC1D,SAAA;KACD;AAEO,IAAA,WAAW,CAAC,KAAiC,EAAA;AACpD,QAAA,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QAEhC,IAAI,OAAO,CAAC,gBAAgB,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,aAAa,EAAE;YACrE,MAAM,eAAe,GAAG,QAAQ,CAAC,aAAa,CAAc,OAAO,CAAC,gBAAgB,CAAC,CAAA;AACrF,YAAA,eAAe,EAAE,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;AACxD,SAAA;KACD;AACD;;MCtCY,qBAAqB,CAAA;IAKjC,WAAmB,CAAA,mBAA4B,EAAE,OAAA,GAAkB,KAAK,EAAA;QAJjE,IAAO,CAAA,OAAA,GAAW,KAAK,CAAA;QAEb,IAAc,CAAA,cAAA,GAAG,4DAA4D,CAAA;AAG7F,QAAA,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAA;AAC9C,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;;QAGtB,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,KAAkB,KAAI;AAC1D,YAAA,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAA;AAEzB,YAAA,IAAI,EAAE,IAAI,YAAY,eAAe,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE;AACzE,gBAAA,OAAO,IAAI,CAAA;AACX,aAAA;AAED,YAAA,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;YAClC,IAAI,CAAC,OAAO,CAAC,mBAAmB,GAAG,MAAM,CACxC,UAAU,CAAC,MAAK;AACf,gBAAA,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAA;AAClC,aAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAChB,CAAA;AACF,SAAC,CAAC,CAAA;KACF;AAEM,IAAA,UAAU,CAAC,IAAU,EAAA;AAC3B,QAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAErF,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAiB,KAAI;AACpD,YAAA,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE;AAC1C,gBAAA,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAA;AACzE,aAAA;AACF,SAAC,CAAC,CAAA;QAEF,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,KAAoB,KAAI;AAC1D,YAAA,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE;gBAC1C,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;AAClE,aAAA;AACF,SAAC,CAAC,CAAA;KACF;AAEO,IAAA,qBAAqB,CAAC,KAAuB,EAAA;QACpD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QAEzC,MAAM,YAAY,GAAG,OAA2B,CAAA;AAEhD,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;YACtE,OAAM;AACN,SAAA;AAED,QAAA,OAAO,CAAC,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAA;KAC5C;AAEO,IAAA,mBAAmB,CAAC,IAAqB,EAAA;AAChD,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAkC,CAAA;AAEzE,QAAA,OAAO,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,EAAE,kBAAkB,CAAC,KAAK,cAAc,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAA;KACzG;AAEO,IAAA,iBAAiB,CAAC,KAAkB,EAAA;QAC3C,KAAK,CAAC,cAAc,EAAE,CAAA;KACtB;AAEO,IAAA,uBAAuB,CAAC,IAAqB,EAAE,MAAA,GAAkB,KAAK,EAAA;;QAE7E,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAA;AACtD,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAA;QAEvC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAA;;;;;AAMvD,QAAA,IAAI,MAAM,EAAE;AACX,YAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;AAC5B,SAAA;AAAM,aAAA;AACN,YAAA,UAAU,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;AACjD,SAAA;KACD;AAEO,IAAA,sBAAsB,CAAC,IAAqB,EAAA;;QAEnD,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAA;AACtD,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAA;QAEvC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAA;;AAG1D,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;KAC3B;AAEO,IAAA,iBAAiB,CAAC,IAAqB,EAAA;AAC9C,QAAA,IAAI,CAAC,gBAAgB,CAAoB,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,KAAI;AAChF,YAAA,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;AAClC,SAAC,CAAC,CAAA;KACF;AAEO,IAAA,oBAAoB,CAAC,MAAyB,EAAA;;QAErD,IAAI,MAAM,CAAC,QAAQ,EAAE;YACpB,OAAM;AACN,SAAA;AAED,QAAA,MAAM,CAAC,OAAO,CAAC,6BAA6B,GAAG,MAAM,CAAA;AACrD,QAAA,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAA;QAEtB,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC7B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;AAC9C,SAAA;KACD;AAEO,IAAA,gBAAgB,CAAC,IAAqB,EAAA;AAC7C,QAAA,IAAI,CAAC,gBAAgB,CAAoB,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,KAAI;AAChF,YAAA,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAA;AACjC,SAAC,CAAC,CAAA;KACF;AAEO,IAAA,mBAAmB,CAAC,MAAyB,EAAA;;AAEpD,QAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,6BAA6B,EAAE;YAClD,OAAM;AACN,SAAA;AAED,QAAA,OAAO,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAA;AACnD,QAAA,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAA;QAEvB,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC7B,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;AACjD,SAAA;KACD;AACD;;MC7IY,wBAAwB,CAAA;AAG7B,IAAA,UAAU,CAAC,IAAU,EAAA;AAC3B,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,IAAK,MAAc,CAAC,KAAK,CAAA;AAEvE,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACrB,OAAM;AACN,SAAA;AAED,QAAA,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;KACzF;AAEO,IAAA,oBAAoB,CAAC,KAAuB,EAAA;AACnD,QAAA,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QAEhC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;AAE3C,QAAA,IAAI,WAAW,EAAE;AAChB,YAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;AACrC,SAAA;KACD;AACD;;MCCY,gBAAgB,CAAA;IAO5B,WACC,CAAA,OAAoB,EACpB,eAAA,GAAkC,SAAS,EAC3C,uBAAuB,GAAG,YAAY,EACtC,8BAA8B,GAAG,eAAe,EAAA;AAEhD,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;AACtB,QAAA,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;AAEtC,QAAA,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAA;AACtD,QAAA,IAAI,CAAC,yBAAyB,GAAG,8BAA8B,CAAA;KAC/D;AAEM,IAAA,UAAU,CAAC,IAAU,EAAA;AAC3B,QAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAEnF,QAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAC5D,QAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;;;QAI/D,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,KAAK,KAAK,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;KAC1G;AAEO,IAAA,mBAAmB,CAAC,KAAuB,EAAA;AAClD,QAAA,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAA;KAC5D;AAEO,IAAA,YAAY,CAAC,KAAiB,EAAA;AACrC,QAAA,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEhC,QAAA,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;YAC9B,OAAM;AACN,SAAA;AAED,QAAA,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAA;QACjD,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAA;AAEtD,QAAA,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,OAAM;AACN,SAAA;AAAM,aAAA;YACN,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAA;AAEjD,YAAA,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,KAAI;;AAEpC,gBAAA,OAAO,CAAC,YAAa,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAA;AAClF,aAAC,CAAC,CAAA;AACF,SAAA;KACD;AAEO,IAAA,YAAY,CAAC,KAAoB,EAAA;QACxC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEzC,QAAA,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,EAAE,QAAQ,EAAE;YAC/C,OAAM;AACN,SAAA;AAED,QAAA,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,OAAgB,KAAK,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;KACzE;AAEO,IAAA,UAAU,CAAC,OAAgB,EAAA;QAClC,IAAI,CAAC,OAAO,EAAE;AACb,YAAA,OAAO,EAAE,CAAA;AACT,SAAA;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,IAAI,IAAI,CAAA;QACjE,IAAI,YAAY,GAAc,EAAE,CAAA;QAEhC,IAAI,OAAO,KAAK,KAAK,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,KAAK,EAAE;AAClE,YAAA,OAAO,EAAE,CAAA;AACT,SAAA;AAED,QAAA,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAA;AAEtD,QAAA,OAAO,YAAY,CAAC,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;KACzE;AAEO,IAAA,yBAAyB,CAAC,QAAuB,EAAA;AACxD,QAAA,OAAO,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAA;KACtE;AAEM,IAAA,eAAe,CAAC,OAAgB,EAAA;QACtC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QAE1D,IAAI,IAAI,KAAK,IAAI,EAAE;AAClB,YAAA,OAAO,EAAE,CAAA;AACT,SAAA;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;AAE1E,QAAA,OAAO,YAAY,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;KAC9D;AACD;;MChHY,gBAAgB,CAAA;AAO5B,IAAA,WAAA,CACC,mBAAiD,SAAS,EAC1D,UAAmC,SAAS,EAC5C,kBAAkC,SAAS,EAAA;AATpC,QAAA,IAAA,CAAA,YAAY,GAAiB,IAAI,GAAG,EAAE,CAAA;AAW7C,QAAA,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;AACxC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;AACtB,QAAA,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;AAEtC,QAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;KACrB;AAEM,IAAA,UAAU,CAAC,IAAU,EAAA;QAC3B,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,KAAuB,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;AAEnH,QAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAErF,QAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACrD,QAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;KAC3D;AAEO,IAAA,MAAM,CAAC,OAA2B,EAAA;AACzC,QAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAc,CAAI,CAAA,EAAA,OAAO,CAAC,SAAS,CAAE,CAAA,CAAC,CAAA;AAE/E,QAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,KAAI;AAC5B,YAAA,MAAM,IAAI,GACT,OAAO,YAAY,eAAe;AACjC,kBAAE,OAAO;kBACP,OAAO,CAAC,aAAa,CAAkB,CAAI,CAAA,EAAA,OAAO,CAAC,aAAa,CAAE,CAAA,CAAC,CAAA;;YAGvE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;gBACzC,OAAM;AACN,aAAA;AAED,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAA4B,CAAA;YAEtF,IAAI,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAA;AAC/F,SAAC,CAAC,CAAA;KACF;AAEO,IAAA,qBAAqB,CAAC,KAAuB,EAAA;QACpD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QAEzC,MAAM,aAAa,GAAG,OAA4B,CAAA;AAClD,QAAA,IAAI,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE;YAC9F,OAAO,CAAC,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAA;AAC7C,SAAA;KACD;AAEO,IAAA,KAAK,CAAC,KAAiB,EAAA;QAC9B,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QAEzC,IAAI,OAAO,CAAC,OAAO,EAAE;AACpB,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAC9B,YAAA,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,CAAA;AAC9B,SAAA;KACD;AAEO,IAAA,QAAQ,CAAC,KAAoB,EAAA;QACpC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEzC,QAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACrB,OAAM;AACN,SAAA;AAED,QAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;AAEjC,QAAA,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE;AACjC,YAAA,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,CAAA;AAC/B,SAAA;KACD;AACD;;AC5ED,MAAa,oBAAoB,CAAA;AAIzB,IAAA,UAAU,CAAC,IAAU,EAAA;AAC3B,QAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACrF,QAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACrD,QAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;KAC3D;AAEO,IAAA,qBAAqB,CAAC,KAAuB,EAAA;QACpD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AACzC,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,wBAAwB,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;AAE9F,QAAA,IAAI,WAAW,EAAE;YAChB,OAAO,CAAC,kBAAkB,GAAG;AAC5B,gBAAA,OAAO,EAAE,OAAsB;gBAC/B,WAAW;aACX,CAAA;AACD,SAAA;KACD;AAEO,IAAA,KAAK,CAAC,KAAiB,EAAA;AAC9B,QAAA,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;QAEhC,IAAI,OAAO,CAAC,kBAAkB,EAAE;AAC/B,YAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAA;AACjD,SAAA;KACD;AAEO,IAAA,QAAQ,CAAC,KAAoB,EAAA;QACpC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;AAEvC,QAAA,IAAI,KAAK,IAAI,OAAO,CAAC,kBAAkB,EAAE;AACxC,YAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAA;AACjD,SAAA;KACD;AAEO,IAAA,gBAAgB,CAAC,kBAAsC,EAAA;AAC9D,QAAA,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,EAAE;AACpF,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;AAE5E,YAAA,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,KAAI;gBAC1B,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;AACjF,aAAC,CAAC,CAAA;AACF,SAAA;KACD;IAEO,iBAAiB,CAAC,OAAoB,EAAE,QAAgB,EAAA;QAC/D,MAAM,QAAQ,GAAkB,EAAE,CAAA;QAElC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,KAAI;AAC9C,YAAA,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,+BAA+B,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;AACvF,SAAC,CAAC,CAAA;AAEF,QAAA,OAAO,QAAQ,CAAA;KACf;IAEO,+BAA+B,CAAC,OAAoB,EAAE,QAAgB,EAAA;QAC7E,IAAI,WAAW,GAAY,OAAO,CAAA;AAElC,QAAA,IAAI,QAAQ,KAAK,oBAAoB,CAAC,YAAY,EAAE;YACnD,OAAO,CAAC,OAAO,CAAC,CAAA;AAChB,SAAA;AAED,QAAA,OAAO,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC,cAAc,CAAC,IAAI,WAAW,CAAC,aAAa,EAAE;AAC7F,YAAA,WAAW,GAAG,WAAW,CAAC,aAAa,CAAA;AACvC,YAAA,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AACzE,SAAA;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAA;KACzD;;AAtEc,oBAAY,CAAA,YAAA,GAAG,OAAO,CAAA;AACtB,oBAAc,CAAA,cAAA,GAAG,SAAS;;;;"}
1
+ {"version":3,"file":"index.esm.js","sources":["../src/classes/ControlManager.ts","../src/utils.ts","../src/classes/Suggest.ts","../src/extensions/AjaxModalExtension.ts","../src/extensions/AjaxModalPreventRedrawExtension.ts","../src/extensions/AjaxOnceExtension.ts","../src/extensions/BtnSpinnerExtension.ts","../src/extensions/ConfirmExtension.ts","../src/extensions/FollowUpRequestExtension.ts","../src/extensions/ForceRedirectExtension.ts","../src/extensions/ForceReplaceExtension.ts","../src/extensions/ScrollToExtension.ts","../src/extensions/SingleSubmitExtension.ts","../src/extensions/SnippetFormPartExtension.ts","../src/extensions/SpinnerExtension.ts","../src/extensions/SuggestExtension.ts","../src/extensions/ToggleClassExtension.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@peckadesign/pd-naja",
3
3
  "title": "PD Naja utils & extensions",
4
- "version": "3.0.0",
4
+ "version": "3.1.0",
5
5
  "private": false,
6
6
  "description": "Utilities and extensions created for use with Naja library.",
7
7
  "main": "dist/PdNaja.esm.js",
@@ -103,10 +103,7 @@ export class AjaxModalExtension implements Extension {
103
103
  naja.addEventListener('complete', this.clearRequest.bind(this))
104
104
 
105
105
  this.modal.onShow(this.showHandler.bind(this))
106
- this.modal.onHide(() => {
107
- this.removeModalSnippetsIds()
108
- this.abortControllers.get('modal')?.abort()
109
- })
106
+ this.modal.onHide(this.hideHandler.bind(this))
110
107
  this.modal.onHidden(this.hiddenHandler.bind(this))
111
108
  }
112
109
 
@@ -140,24 +137,25 @@ export class AjaxModalExtension implements Extension {
140
137
  return
141
138
  }
142
139
 
143
- // `modalOptions` will be stored in state, therefore no `Element` is allowed. These options are also forwarded
144
- // to other Naja event handlers via `options`. We also store the element separately to be used there as well.
140
+ // `modalOptions` will be stored in the state; therefore, no `Element` is allowed. These options are also
141
+ // forwarded to other Naja event handlers via `options`. We also store the elements separately to be used there
142
+ // as well.
145
143
  this.modalOptions = this.modal.getOptions(element)
146
144
 
147
145
  options.modalOptions = this.modalOptions
148
146
  options.modalOpener = element
149
147
 
150
- // If the extension is enabled and modal is not opened, we detect and store history mode. History mode cannot
151
- // change when traversing ajax link inside modal, it stays the same until modal is hidden.
148
+ // If the extension is enabled and the modal is not opened, we detect and store history mode. History mode
149
+ // cannot change when traversing an ajax link inside modal, it stays the same until modal is hidden.
152
150
  if (!this.modal.isShown()) {
153
151
  this.historyDirection = element.getAttribute('data-naja-modal-history') === 'forwards' ? 'forwards' : 'backwards'
154
152
  }
155
153
  }
156
154
 
157
155
  private onSnippetFetch(event: FetchEvent): void {
158
- // When snippet cache is off, this method is called to construct Naja request options. We retrieve modal
159
- // `options` from original state in history if necessary. Also, when closing the modal from `PopstateEvent`, we
160
- // don't need to make a new request, so we call `event.preventDefault()` in that case.
156
+ // When the snippet cache is off, this method is called to construct Naja request options. We retrieve modal
157
+ // `options` from the original state in history if necessary. Also, when closing the modal from `PopstateEvent`,
158
+ // we don't need to make a new request, so we call `event.preventDefault()` in that case.
161
159
  const { state } = event.detail
162
160
 
163
161
  if (this.isPdModalState(state)) {
@@ -173,11 +171,11 @@ export class AjaxModalExtension implements Extension {
173
171
  }
174
172
 
175
173
  private removeModalSnippetsIds(): void {
176
- // When closing the modal, we don't want to update any snippets inside it, when other requests finishes. This
177
- // will ensure, that snippets that might be also outside modal (e.g. flash messages) will be redrawn outside the
178
- // modal. Therefore, we remove the id attributes, so no snippet is found.
174
+ // When closing the modal, we don't want to update any snippets inside it when other requests finishes. This
175
+ // will ensure that snippets that might be also outside the modal (e.g. flash messages) will be redrawn outside
176
+ // the modal. Therefore, we remove the id attributes, so no snippet is found.
179
177
  //
180
- // Some snippets are necessary for modal function
178
+ // Some snippets are necessary for a modal function
181
179
  this.modal.element.querySelectorAll('[id^="snippet-"]').forEach((snippet) => {
182
180
  if (!this.modal.reservedSnippetIds.includes(snippet.id)) {
183
181
  snippet.removeAttribute('id')
@@ -203,7 +201,7 @@ export class AjaxModalExtension implements Extension {
203
201
  private buildState(event: BuildStateEvent): void {
204
202
  const { operation, options, state } = event.detail
205
203
 
206
- // Always add a `title` into state, so we can retrieve it when needed after closing the modal. See
204
+ // Always add a `title` into the state, so we can retrieve it when needed after closing the modal. See
207
205
  // `popstateHandler` below.
208
206
  if (!state.title) {
209
207
  state.title = document.title
@@ -211,7 +209,7 @@ export class AjaxModalExtension implements Extension {
211
209
 
212
210
  // If this is called from Naja's `replaceInitialState`, we don't change the state.
213
211
  //
214
- // This is a possible weakness, because this condition could be true even with actual user interaction, if
212
+ // This is a possible weakness because this condition could be true even with actual user interaction, if
215
213
  // Naja's first interaction is with an element with `data-naja-history="replace"`. In this case the condition
216
214
  // will also be true, but it is probably the desired behaviour to save this state as non-modal anyway, since
217
215
  // the initial state should (or could) never be opened in a modal.
@@ -224,9 +222,9 @@ export class AjaxModalExtension implements Extension {
224
222
  return
225
223
  }
226
224
 
227
- // Every time naja builds the state, and we have the modal opened, we extend the state with `pdModal` object
228
- // containing information about modal being opened and what history mode is in use. When `options.forceRedirect`
229
- // is set, modal might be open but the new state will be redirected outside of it.
225
+ // Every time naja builds the state, and we have the modal opened, we extend the state with a ` pdModal ` object
226
+ // containing information about the modal being opened and what history mode is in use. When
227
+ // `options.forceRedirect` is set, modal might be open but the new state will be redirected outside it.
230
228
  const isShown: boolean = this.isPdModalRequest(options) && !options.forceRedirect
231
229
 
232
230
  if (isShown) {
@@ -275,7 +273,8 @@ export class AjaxModalExtension implements Extension {
275
273
 
276
274
  const requestHistory = this.isRequestWithHistory(options)
277
275
 
278
- // If the history is disabled for current request, we will disable it for all ajax links / forms in modal as well.
276
+ // If the history is disabled for the current request, we will disable it for all ajax links / forms in modal as
277
+ // well.
279
278
  if (!requestHistory && event.target) {
280
279
  const ajaxified = this.modal.element.querySelectorAll<HTMLElement>((event.target as Naja).uiHandler?.selector)
281
280
 
@@ -314,12 +313,26 @@ export class AjaxModalExtension implements Extension {
314
313
  }
315
314
  }
316
315
 
317
- private hiddenHandler() {
318
- // This method is called after modal has been hidden. It either pushes a new state into history (mode `forwards`)
319
- // or calls `history.back()` to start go-back procedure.
316
+ private hideHandler(event: Event): void {
317
+ const opener = (event as CustomEvent).detail?.opener as Element | undefined
318
+ const abortable = opener
319
+ ? (opener.getAttribute('data-naja-abort') ??
320
+ (opener as HTMLInputElement).form?.getAttribute('data-naja-abort')) !== 'off'
321
+ : true
322
+
323
+ this.removeModalSnippetsIds()
324
+
325
+ if (abortable) {
326
+ this.abortControllers.get(this.uniqueExtKey)?.abort()
327
+ }
328
+ }
329
+
330
+ private hiddenHandler(): void {
331
+ // This method is called after the modal has been hidden. It either pushes a new state into history (mode
332
+ // `forwards`) or calls `history.back()` to start go-back procedure.
320
333
  //
321
- // New state is pushed only if we are able to retrieve the state under the modal (which should have been stored
322
- // previously) and the modal is not being closed using forward / back buttons in browser.
334
+ // A new state is pushed only if we are able to retrieve the state under the modal (which should have been
335
+ // stored previously), and the modal is not being closed using forward / back buttons in the browser.
323
336
  if (!this.historyEnabled) {
324
337
  return
325
338
  }
@@ -335,9 +348,9 @@ export class AjaxModalExtension implements Extension {
335
348
  this.original = []
336
349
 
337
350
  if (state) {
338
- // When closing the modal using forward / back buttons in browser, the current state is the same as the
339
- // one stored in `this.original`. If that's the case, we don't push anything as it would duplicate the
340
- // state in history.
351
+ // When closing the modal using forward / back buttons in the browser, the current state is the same as
352
+ // the one stored in `this.original`. If that's the case, we don't push anything as it would duplicate
353
+ // the state in history.
341
354
  if (history.state === undefined || history.state.href !== state.location) {
342
355
  history.pushState(state.state, state.title, state.location)
343
356
  document.title = state.title
@@ -366,13 +379,15 @@ export class AjaxModalExtension implements Extension {
366
379
  this.popstateFlag = true
367
380
  this.shouldPreventSnippetFetch = false
368
381
 
369
- // We don't know how many states we go back. So we go one by one until the new state is not modal state
382
+ // We don't know how many states we go back. So we go one by one until the new state is not a modal state
370
383
  // (`isPdModalState` is `false`).
371
384
  if (this.hidePopstateFlag) {
372
385
  // We don't want the naja popstate callback to be executed (or any other popstate handler).
373
386
  event.stopImmediatePropagation()
374
387
 
375
- if (isCurrentStatePdModal) {
388
+ // If the `state.cursor` is 0, the page has been refreshed, and we don't want to go back in history any
389
+ // more.
390
+ if (isCurrentStatePdModal && state.cursor !== 0) {
376
391
  window.history.back()
377
392
 
378
393
  return
@@ -385,13 +400,13 @@ export class AjaxModalExtension implements Extension {
385
400
  this.hidePopstateFlag = false
386
401
  }
387
402
 
388
- // We check if the state has `pdModal` object present on popstate. If so , we proceed to open the modal. Content
389
- // of the modal is restored by naja itself (either from cache or by new request).
403
+ // We check if the state has a ` pdModal ` object present on popstate. If so, we proceed to open the modal.
404
+ // Naja itself restores the content of the modal (either from cache or by new request).
390
405
  //
391
- // If the initial state is also detected as pdModal state, we returned to some pdModal state using reload. In
392
- // that case, we don't want to open the modal, because we might be missing some snippets. Effectively this means
393
- // that the modal will never be opened by forward / back button if there has been some other site loaded outside
394
- // the modal (e.g. some non-ajax link leading from modal).
406
+ // If the initial state is also detected as a pdModal state, we returned to some pdModal state using reload. In
407
+ // that case, we don't want to open the modal because we might be missing some snippets. Effectively this means
408
+ // that the modal will never be opened by the forward / back button if there has been some other site loaded
409
+ // outside the modal (e.g. some non-ajax links leading from modal).
395
410
  if (isCurrentStatePdModal && !this.isPdModalState(this.initialState)) {
396
411
  this.restoreExtensionPropertiesFromState(state)
397
412
 
@@ -399,7 +414,7 @@ export class AjaxModalExtension implements Extension {
399
414
 
400
415
  // If there is some snippet cache, we might restore modal options. If not, options will be restored based on
401
416
  // options after the ajax request. The same applies to dispatching the load event - if the cache is on, we
402
- // dispatch the event immediately (after the restore has actually happened, see below), otherwise it is
417
+ // dispatch the event immediately (after the restore has actually happened, see below); otherwise it is
403
418
  // dispatched after the ajax request.
404
419
  if (state.snippets?.storage !== 'off') {
405
420
  this.modal.setOptions(state.pdModal.options)
@@ -414,23 +429,23 @@ export class AjaxModalExtension implements Extension {
414
429
  }, 0)
415
430
  }
416
431
  } else {
417
- this.historyEnabled = false // Hiding modal using forward / back button, we disable the history to prevent state duplication
432
+ this.historyEnabled = false // Hiding modal using the forward / back button, we disable the history to prevent state duplication
418
433
 
419
- // Reload the page if the initial state has been inside modal. This prevents snippets loss e.g. during
434
+ // Reload the page if the initial state has been inside modal. This prevents snippet loss e.g. during
420
435
  // layout changes.
421
436
  if (this.isPdModalState(this.initialState)) {
422
437
  window.location.reload()
423
438
  }
424
439
 
425
440
  // Non-modal state and non-modal initial state → we just hide the current modal and prevent snippet fetch
426
- // (if snippet cache is off).
441
+ // (if the snippet cache is off).
427
442
  if (this.modal.isShown()) {
428
443
  this.modal.hide(event)
429
444
  this.shouldPreventSnippetFetch = true
430
445
  }
431
446
  }
432
447
 
433
- // Keep track of current state. When `backwards` history mode is used, we eventually push this state into
448
+ // Keep track of the current state. When the ` backwards ` history mode is used, we eventually push this state into
434
449
  // `this.original`.
435
450
  this.lastState = {
436
451
  location: location.href,