@peckadesign/pd-naja 1.1.0 → 1.3.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.
package/README.md CHANGED
@@ -40,7 +40,10 @@ This package provides easy ways to add JS components reactive to Naja ajax event
40
40
 
41
41
  2. The instantiated class is then added to ControlManager either by `addControlOnLoad` or `addControlOnLive`. This ensures, that on `DOMContentLoaded` the `initialize` function of class is called. This method should implement initialization of the control dependent on fully loaded DOM. The `context` argument is equal to `document` in this call.
42
42
 
43
- 3. In case of `addControlOnLive` used, the `initialize` method is also called for each success ajax request. The `context` argument is equal to modified nette snippet.
43
+ 3. In the case of using `addControlOnLive`, two methods are called after each successful Ajax request:
44
+ 1. **Optional:** Just before the snippet update, the optional `destroy` method is called. It will only be called if the [snippet update operation](https://naja.js.org/#/snippets?id=snippet-update-operation) is `replace`.
45
+
46
+ 2. The `initialize` method is called for each snippet. It is called immediately after the snippet has been updated. The `context` argument is equal to the modified nette snippet.
44
47
 
45
48
 
46
49
  ## Extensions
@@ -71,6 +74,25 @@ naja.registerExtension(
71
74
  | `getOptions(opener: Element): any` | If you need to change some modal settings based on opener element, you can do that in this function. Return value of this function is stored in `localStorage` (or wherever is Naja configured to store states) and also in `HistoryState`. Bear in mind that this introduces some limitations of what can be returned (e.g. no `Element` is allowed). |
72
75
  | `setOptions(options: any): void` | Counterpart of `getOptions` method, you can use this method to restore modal settings based on `options`. |
73
76
 
77
+ ### `AjaxModalPreventRedrawExtension`
78
+ Occasionally we may have an ajax request invoked inside the modal window, but this request is not related to the modal window itself. However, because it is invoked from within the modal window, the HTTP header `Pd-Modal-Opened` is set. If enabled, this extension adds another header to the request, namely `Pd-Modal-Prevent-Redraw`. The extension can be enabled by adding the `data-naja-modal-prevent-redraw` data attribute to the interacted element, or by adding `pdModalPreventRedraw` to options.
79
+
80
+
81
+ ### `AjaxOnceExtension`
82
+ This extension allows you to specify for a given element that the request will only be made on the first interaction. For example, for collapsible boxes, it is possible to make the request only once, when they are expanded for the first time. It is enabled by setting `data-naja-once` on the interacted element and allows the same element to control the collapsible box and make a request at the same time, without creating multiple unnecessary requests.
83
+
84
+ ### `ConfirmExtension`
85
+ Simple extension that uses `window.confirm` before making the request, allowing the user to prevent the request from being made. It is enabled by setting the data attribute `data-confirm`. The value of the attribute is used as a parameter for the `window.confirm` call.
86
+
87
+ ### `FollowUpRequestExtension`
88
+ This extension allows you to chain multiple requests. This is useful, for example, within modals, where after redrawing the modal, you may need to redraw the page below it as well. This page may be from a different presenter, so you need to redraw with a different request. When used, this extension checks for the presence of `followUpUrl` in the payload. This is the URL to which the follow up request will be made.
89
+
90
+ ### `ForceRedirectExtension`
91
+ This extension allows you to force redirect the page to a specific URL. When imported, it checks for the presence of `forceRedirect` in the payload and then redirects to it.
92
+
93
+ ### `ForceReplaceExtension`
94
+ If you are using content prepending or appending on snippets, you may need to force replace their content when certain elements have been interacted with. For example, if you have an infinite pager with new items appended, you may need to clear the snippet when some sort of filtering request has been made. This extension changes the snippet operation to `replace` when enabled by using the `data-naja-snippet-force-replace attribute` on the interacted element. See [Snippet update operation](https://naja.js.org/#/snippets?id=snippet-update-operation) in the Naja docs for more information about update operations.
95
+
74
96
  ### `SpinnerExtension`
75
97
 
76
98
  This extension allows you to add configurable loading indicator to ajax request. Constructor recieves following 4 parameters:
@@ -5,7 +5,7 @@
5
5
  * @author PeckaDesign, s.r.o <support@peckadesign.cz>
6
6
  * @license MIT
7
7
  *
8
- * @version 1.1.0
8
+ * @version 1.3.0
9
9
  */
10
10
 
11
11
  import naja from 'naja';
@@ -18,6 +18,7 @@ class ControlManager {
18
18
  if (instance === null) {
19
19
  // eslint-disable-next-line @typescript-eslint/no-this-alias
20
20
  instance = this;
21
+ naja.snippetHandler.addEventListener('beforeUpdate', this.onBeforeSnippetUpdate.bind(this));
21
22
  naja.snippetHandler.addEventListener('afterUpdate', this.onSnippetUpdate.bind(this));
22
23
  }
23
24
  return instance;
@@ -26,6 +27,13 @@ class ControlManager {
26
27
  this.initialize(this.onLoadControl);
27
28
  this.initialize(this.onLiveControl);
28
29
  }
30
+ onBeforeSnippetUpdate(event) {
31
+ if (event.detail.operation === naja.snippetHandler.op.append ||
32
+ event.detail.operation === naja.snippetHandler.op.prepend) {
33
+ return;
34
+ }
35
+ this.destroy(this.onLiveControl, event.detail.snippet);
36
+ }
29
37
  onSnippetUpdate(event) {
30
38
  this.initialize(this.onLiveControl, event.detail.snippet);
31
39
  }
@@ -34,6 +42,13 @@ class ControlManager {
34
42
  control.initialize(snippet || document);
35
43
  });
36
44
  }
45
+ destroy(controls, snippet) {
46
+ controls.forEach((control) => {
47
+ if (control.destroy !== undefined) {
48
+ control.destroy(snippet);
49
+ }
50
+ });
51
+ }
37
52
  addControlOnLoad(control) {
38
53
  this.onLoadControl.push(control);
39
54
  }
@@ -339,6 +354,117 @@ class AjaxModalExtension {
339
354
  }
340
355
  }
341
356
 
357
+ class AjaxModalPreventRedrawExtension {
358
+ initialize(naja) {
359
+ naja.uiHandler.addEventListener('interaction', this.handleInteraction.bind(this));
360
+ naja.addEventListener('before', this.handleBefore.bind(this));
361
+ }
362
+ handleInteraction(event) {
363
+ const { element, options } = event.detail;
364
+ if (element.hasAttribute('data-naja-modal-prevent-redraw')) {
365
+ options.pdModalPreventRedraw = true;
366
+ }
367
+ }
368
+ handleBefore(event) {
369
+ const { options, request } = event.detail;
370
+ if (options.pdModalPreventRedraw) {
371
+ request.headers.append('Pd-Modal-Prevent-Redraw', String(1));
372
+ }
373
+ }
374
+ }
375
+
376
+ const isDatasetTruthy = (element, datasetName) => {
377
+ const datasetValue = element.dataset[datasetName];
378
+ return datasetValue !== undefined && datasetValue !== 'false';
379
+ };
380
+
381
+ class AjaxOnceExtension {
382
+ initialize(naja) {
383
+ naja.uiHandler.addEventListener('interaction', this.checkAjaxOnce.bind(this));
384
+ naja.addEventListener('success', this.success.bind(this));
385
+ }
386
+ checkAjaxOnce(event) {
387
+ const { element, options } = event.detail;
388
+ if (!isDatasetTruthy(element, 'najaOnce')) {
389
+ return;
390
+ }
391
+ if (isDatasetTruthy(element, 'najaLoaded')) {
392
+ event.preventDefault();
393
+ return;
394
+ }
395
+ options.ajaxOnceInitiator = element;
396
+ }
397
+ success(event) {
398
+ const { options } = event.detail;
399
+ if (!options.ajaxOnceInitiator) {
400
+ return;
401
+ }
402
+ options.ajaxOnceInitiator.dataset.najaLoaded = 'true';
403
+ }
404
+ }
405
+
406
+ class ConfirmExtension {
407
+ initialize(naja) {
408
+ naja.uiHandler.addEventListener('interaction', (event) => {
409
+ const { element } = event.detail;
410
+ const confirm = element.getAttribute('data-confirm');
411
+ if (confirm && !window.confirm(confirm)) {
412
+ event.preventDefault();
413
+ }
414
+ });
415
+ }
416
+ }
417
+
418
+ class FollowUpRequestExtension {
419
+ initialize(naja) {
420
+ naja.addEventListener('success', (event) => {
421
+ const { payload } = event.detail;
422
+ if (payload.followUpUrl) {
423
+ naja.makeRequest('get', payload.followUpUrl, null, { history: false });
424
+ }
425
+ });
426
+ }
427
+ }
428
+
429
+ class ForceRedirectExtension {
430
+ initialize(naja) {
431
+ this.naja = naja;
432
+ naja.addEventListener('payload', this.prepareOptions.bind(this));
433
+ naja.addEventListener('success', this.handleForceRedirect.bind(this));
434
+ }
435
+ prepareOptions(event) {
436
+ const { payload, options } = event.detail;
437
+ if (payload.forceRedirect) {
438
+ options.forceRedirect = true;
439
+ }
440
+ }
441
+ handleForceRedirect(event) {
442
+ const { payload } = event.detail;
443
+ if (payload.forceRedirect) {
444
+ this.naja?.redirectHandler.makeRedirect(payload.forceRedirect, true);
445
+ event.stopImmediatePropagation();
446
+ }
447
+ }
448
+ }
449
+
450
+ class ForceReplaceExtension {
451
+ initialize(naja) {
452
+ this.naja = naja;
453
+ naja.uiHandler.addEventListener('interaction', this.checkForceReplace.bind(this));
454
+ naja.snippetHandler.addEventListener('beforeUpdate', this.handleForceReplace.bind(this));
455
+ }
456
+ checkForceReplace(event) {
457
+ const { element, options } = event.detail;
458
+ options.forceReplace = isDatasetTruthy(element, 'najaSnippetForceReplace');
459
+ }
460
+ handleForceReplace(event) {
461
+ const { changeOperation, options } = event.detail;
462
+ if (this.naja && options.forceReplace) {
463
+ changeOperation(this.naja.snippetHandler.op.replace);
464
+ }
465
+ }
466
+ }
467
+
342
468
  class SpinnerExtension {
343
469
  constructor(spinner, getSpinnerProps = undefined, ajaxSpinnerWrapSelector = '.ajax-wrap', ajaxSpinnerPlaceholderSelector = '.ajax-spinner') {
344
470
  this.spinner = spinner;
@@ -417,5 +543,5 @@ class SpinnerExtension {
417
543
 
418
544
  const controlManager = new ControlManager();
419
545
 
420
- export { AjaxModalExtension, SpinnerExtension, controlManager };
546
+ export { AjaxModalExtension, AjaxModalPreventRedrawExtension, AjaxOnceExtension, ConfirmExtension, FollowUpRequestExtension, ForceRedirectExtension, ForceReplaceExtension, SpinnerExtension, controlManager };
421
547
  //# sourceMappingURL=PdNaja.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PdNaja.esm.js","sources":["../src/utils/ControlManager.ts","../src/extensions/AjaxModalExtension.ts","../src/extensions/SpinnerExtension.ts","../src/index.esm.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PdNaja.esm.js","sources":["../src/utils/ControlManager.ts","../src/extensions/AjaxModalExtension.ts","../src/extensions/AjaxModalPreventRedrawExtension.ts","../src/utils.ts","../src/extensions/AjaxOnceExtension.ts","../src/extensions/ConfirmExtension.ts","../src/extensions/FollowUpRequestExtension.ts","../src/extensions/ForceRedirectExtension.ts","../src/extensions/ForceReplaceExtension.ts","../src/extensions/SpinnerExtension.ts","../src/index.esm.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { Extension, Naja } from 'naja/dist/Naja';
2
+ declare module 'naja/dist/Naja' {
3
+ interface Options {
4
+ pdModalPreventRedraw?: boolean;
5
+ }
6
+ }
7
+ export declare class AjaxModalPreventRedrawExtension implements Extension {
8
+ initialize(naja: Naja): void;
9
+ private handleInteraction;
10
+ private handleBefore;
11
+ }
@@ -0,0 +1,11 @@
1
+ import { Extension, Naja } from 'naja/dist/Naja';
2
+ declare module 'naja/dist/Naja' {
3
+ interface Options {
4
+ ajaxOnceInitiator?: HTMLElement | SVGElement;
5
+ }
6
+ }
7
+ export declare class AjaxOnceExtension implements Extension {
8
+ initialize(naja: Naja): void;
9
+ private checkAjaxOnce;
10
+ private success;
11
+ }
@@ -0,0 +1,4 @@
1
+ import { Extension, Naja } from 'naja/dist/Naja';
2
+ export declare class ConfirmExtension implements Extension {
3
+ initialize(naja: Naja): void;
4
+ }
@@ -0,0 +1,9 @@
1
+ import { Extension, Naja } from 'naja/dist/Naja';
2
+ declare module 'naja/dist/Naja' {
3
+ interface Payload {
4
+ followUpUrl?: string;
5
+ }
6
+ }
7
+ export declare class FollowUpRequestExtension implements Extension {
8
+ initialize(naja: Naja): void;
9
+ }
@@ -0,0 +1,12 @@
1
+ import { Extension, Naja } from 'naja/dist/Naja';
2
+ declare module 'naja/dist/Naja' {
3
+ interface Payload {
4
+ forceRedirect?: string;
5
+ }
6
+ }
7
+ export declare class ForceRedirectExtension implements Extension {
8
+ private naja;
9
+ initialize(naja: Naja): void;
10
+ private prepareOptions;
11
+ private handleForceRedirect;
12
+ }
@@ -0,0 +1,12 @@
1
+ import { Extension, Naja } from 'naja/dist/Naja';
2
+ declare module 'naja/dist/Naja' {
3
+ interface Options {
4
+ forceReplace?: boolean;
5
+ }
6
+ }
7
+ export declare class ForceReplaceExtension implements Extension {
8
+ private naja;
9
+ initialize(naja: Naja): void;
10
+ private checkForceReplace;
11
+ private handleForceReplace;
12
+ }
@@ -1,4 +1,10 @@
1
1
  import ControlManager from './utils/ControlManager';
2
2
  export { AjaxModalExtension } from './extensions/AjaxModalExtension';
3
+ export { AjaxModalPreventRedrawExtension } from './extensions/AjaxModalPreventRedrawExtension';
4
+ export { AjaxOnceExtension } from './extensions/AjaxOnceExtension';
5
+ export { ConfirmExtension } from './extensions/ConfirmExtension';
6
+ export { FollowUpRequestExtension } from './extensions/FollowUpRequestExtension';
7
+ export { ForceRedirectExtension } from './extensions/ForceRedirectExtension';
8
+ export { ForceReplaceExtension } from './extensions/ForceReplaceExtension';
3
9
  export { SpinnerExtension } from './extensions/SpinnerExtension';
4
10
  export declare const controlManager: ControlManager;
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 1.1.0
8
+ * @version 1.3.0
9
9
  */
10
10
 
11
11
  import naja from 'naja';
@@ -18,6 +18,7 @@ class ControlManager {
18
18
  if (instance === null) {
19
19
  // eslint-disable-next-line @typescript-eslint/no-this-alias
20
20
  instance = this;
21
+ naja.snippetHandler.addEventListener('beforeUpdate', this.onBeforeSnippetUpdate.bind(this));
21
22
  naja.snippetHandler.addEventListener('afterUpdate', this.onSnippetUpdate.bind(this));
22
23
  }
23
24
  return instance;
@@ -26,6 +27,13 @@ class ControlManager {
26
27
  this.initialize(this.onLoadControl);
27
28
  this.initialize(this.onLiveControl);
28
29
  }
30
+ onBeforeSnippetUpdate(event) {
31
+ if (event.detail.operation === naja.snippetHandler.op.append ||
32
+ event.detail.operation === naja.snippetHandler.op.prepend) {
33
+ return;
34
+ }
35
+ this.destroy(this.onLiveControl, event.detail.snippet);
36
+ }
29
37
  onSnippetUpdate(event) {
30
38
  this.initialize(this.onLiveControl, event.detail.snippet);
31
39
  }
@@ -34,6 +42,13 @@ class ControlManager {
34
42
  control.initialize(snippet || document);
35
43
  });
36
44
  }
45
+ destroy(controls, snippet) {
46
+ controls.forEach((control) => {
47
+ if (control.destroy !== undefined) {
48
+ control.destroy(snippet);
49
+ }
50
+ });
51
+ }
37
52
  addControlOnLoad(control) {
38
53
  this.onLoadControl.push(control);
39
54
  }
@@ -339,6 +354,117 @@ class AjaxModalExtension {
339
354
  }
340
355
  }
341
356
 
357
+ class AjaxModalPreventRedrawExtension {
358
+ initialize(naja) {
359
+ naja.uiHandler.addEventListener('interaction', this.handleInteraction.bind(this));
360
+ naja.addEventListener('before', this.handleBefore.bind(this));
361
+ }
362
+ handleInteraction(event) {
363
+ const { element, options } = event.detail;
364
+ if (element.hasAttribute('data-naja-modal-prevent-redraw')) {
365
+ options.pdModalPreventRedraw = true;
366
+ }
367
+ }
368
+ handleBefore(event) {
369
+ const { options, request } = event.detail;
370
+ if (options.pdModalPreventRedraw) {
371
+ request.headers.append('Pd-Modal-Prevent-Redraw', String(1));
372
+ }
373
+ }
374
+ }
375
+
376
+ const isDatasetTruthy = (element, datasetName) => {
377
+ const datasetValue = element.dataset[datasetName];
378
+ return datasetValue !== undefined && datasetValue !== 'false';
379
+ };
380
+
381
+ class AjaxOnceExtension {
382
+ initialize(naja) {
383
+ naja.uiHandler.addEventListener('interaction', this.checkAjaxOnce.bind(this));
384
+ naja.addEventListener('success', this.success.bind(this));
385
+ }
386
+ checkAjaxOnce(event) {
387
+ const { element, options } = event.detail;
388
+ if (!isDatasetTruthy(element, 'najaOnce')) {
389
+ return;
390
+ }
391
+ if (isDatasetTruthy(element, 'najaLoaded')) {
392
+ event.preventDefault();
393
+ return;
394
+ }
395
+ options.ajaxOnceInitiator = element;
396
+ }
397
+ success(event) {
398
+ const { options } = event.detail;
399
+ if (!options.ajaxOnceInitiator) {
400
+ return;
401
+ }
402
+ options.ajaxOnceInitiator.dataset.najaLoaded = 'true';
403
+ }
404
+ }
405
+
406
+ class ConfirmExtension {
407
+ initialize(naja) {
408
+ naja.uiHandler.addEventListener('interaction', (event) => {
409
+ const { element } = event.detail;
410
+ const confirm = element.getAttribute('data-confirm');
411
+ if (confirm && !window.confirm(confirm)) {
412
+ event.preventDefault();
413
+ }
414
+ });
415
+ }
416
+ }
417
+
418
+ class FollowUpRequestExtension {
419
+ initialize(naja) {
420
+ naja.addEventListener('success', (event) => {
421
+ const { payload } = event.detail;
422
+ if (payload.followUpUrl) {
423
+ naja.makeRequest('get', payload.followUpUrl, null, { history: false });
424
+ }
425
+ });
426
+ }
427
+ }
428
+
429
+ class ForceRedirectExtension {
430
+ initialize(naja) {
431
+ this.naja = naja;
432
+ naja.addEventListener('payload', this.prepareOptions.bind(this));
433
+ naja.addEventListener('success', this.handleForceRedirect.bind(this));
434
+ }
435
+ prepareOptions(event) {
436
+ const { payload, options } = event.detail;
437
+ if (payload.forceRedirect) {
438
+ options.forceRedirect = true;
439
+ }
440
+ }
441
+ handleForceRedirect(event) {
442
+ const { payload } = event.detail;
443
+ if (payload.forceRedirect) {
444
+ this.naja?.redirectHandler.makeRedirect(payload.forceRedirect, true);
445
+ event.stopImmediatePropagation();
446
+ }
447
+ }
448
+ }
449
+
450
+ class ForceReplaceExtension {
451
+ initialize(naja) {
452
+ this.naja = naja;
453
+ naja.uiHandler.addEventListener('interaction', this.checkForceReplace.bind(this));
454
+ naja.snippetHandler.addEventListener('beforeUpdate', this.handleForceReplace.bind(this));
455
+ }
456
+ checkForceReplace(event) {
457
+ const { element, options } = event.detail;
458
+ options.forceReplace = isDatasetTruthy(element, 'najaSnippetForceReplace');
459
+ }
460
+ handleForceReplace(event) {
461
+ const { changeOperation, options } = event.detail;
462
+ if (this.naja && options.forceReplace) {
463
+ changeOperation(this.naja.snippetHandler.op.replace);
464
+ }
465
+ }
466
+ }
467
+
342
468
  class SpinnerExtension {
343
469
  constructor(spinner, getSpinnerProps = undefined, ajaxSpinnerWrapSelector = '.ajax-wrap', ajaxSpinnerPlaceholderSelector = '.ajax-spinner') {
344
470
  this.spinner = spinner;
@@ -417,5 +543,5 @@ class SpinnerExtension {
417
543
 
418
544
  const controlManager = new ControlManager();
419
545
 
420
- export { AjaxModalExtension, SpinnerExtension, controlManager };
546
+ export { AjaxModalExtension, AjaxModalPreventRedrawExtension, AjaxOnceExtension, ConfirmExtension, FollowUpRequestExtension, ForceRedirectExtension, ForceReplaceExtension, SpinnerExtension, controlManager };
421
547
  //# sourceMappingURL=index.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/utils/ControlManager.ts","../src/extensions/AjaxModalExtension.ts","../src/extensions/SpinnerExtension.ts","../src/index.esm.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.js","sources":["../src/utils/ControlManager.ts","../src/extensions/AjaxModalExtension.ts","../src/extensions/AjaxModalPreventRedrawExtension.ts","../src/utils.ts","../src/extensions/AjaxOnceExtension.ts","../src/extensions/ConfirmExtension.ts","../src/extensions/FollowUpRequestExtension.ts","../src/extensions/ForceRedirectExtension.ts","../src/extensions/ForceReplaceExtension.ts","../src/extensions/SpinnerExtension.ts","../src/index.esm.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export default interface Control {
2
2
  initialize(context: Element | Document): void;
3
+ destroy?(context: Element): void;
3
4
  }
@@ -4,8 +4,10 @@ export default class ControlManager {
4
4
  private onLiveControl;
5
5
  constructor();
6
6
  onLoad(): void;
7
+ private onBeforeSnippetUpdate;
7
8
  private onSnippetUpdate;
8
9
  private initialize;
10
+ private destroy;
9
11
  addControlOnLoad(control: Control): void;
10
12
  addControlOnLive(control: Control): void;
11
13
  }
@@ -0,0 +1 @@
1
+ export declare const isDatasetTruthy: (element: Element, datasetName: string) => boolean;
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": "1.1.0",
4
+ "version": "1.3.0",
5
5
  "private": false,
6
6
  "description": "Utilities and extensions created for use with Naja library.",
7
7
  "main": "dist/PdNaja.esm.js",
@@ -35,6 +35,7 @@
35
35
  "build": "NODE_ENV=production rollup -c --bundleConfigAsCjs",
36
36
  "lint": "NODE_ENV=development eslint src --ext .ts --max-warnings=0"
37
37
  },
38
+ "sideEffects": false,
38
39
  "devDependencies": {
39
40
  "@rollup/plugin-babel": "^6.0.3",
40
41
  "@rollup/plugin-commonjs": "^24.1.0",
@@ -0,0 +1,31 @@
1
+ import { BeforeEvent, Extension, Naja } from 'naja/dist/Naja'
2
+ import { InteractionEvent } from 'naja/dist/core/UIHandler'
3
+
4
+ declare module 'naja/dist/Naja' {
5
+ interface Options {
6
+ pdModalPreventRedraw?: boolean
7
+ }
8
+ }
9
+
10
+ export class AjaxModalPreventRedrawExtension implements Extension {
11
+ public initialize(naja: Naja): void {
12
+ naja.uiHandler.addEventListener('interaction', this.handleInteraction.bind(this))
13
+ naja.addEventListener('before', this.handleBefore.bind(this))
14
+ }
15
+
16
+ private handleInteraction(event: InteractionEvent): void {
17
+ const { element, options } = event.detail
18
+
19
+ if (element.hasAttribute('data-naja-modal-prevent-redraw')) {
20
+ options.pdModalPreventRedraw = true
21
+ }
22
+ }
23
+
24
+ private handleBefore(event: BeforeEvent): void {
25
+ const { options, request } = event.detail
26
+
27
+ if (options.pdModalPreventRedraw) {
28
+ request.headers.append('Pd-Modal-Prevent-Redraw', String(1))
29
+ }
30
+ }
31
+ }
@@ -0,0 +1,41 @@
1
+ import { InteractionEvent } from 'naja/dist/core/UIHandler'
2
+ import { Extension, Naja, SuccessEvent } from 'naja/dist/Naja'
3
+ import { isDatasetTruthy } from '../utils'
4
+
5
+ declare module 'naja/dist/Naja' {
6
+ interface Options {
7
+ ajaxOnceInitiator?: HTMLElement | SVGElement
8
+ }
9
+ }
10
+
11
+ export class AjaxOnceExtension implements Extension {
12
+ public initialize(naja: Naja): void {
13
+ naja.uiHandler.addEventListener('interaction', this.checkAjaxOnce.bind(this))
14
+ naja.addEventListener('success', this.success.bind(this))
15
+ }
16
+
17
+ private checkAjaxOnce(event: InteractionEvent): void {
18
+ const { element, options } = event.detail
19
+
20
+ if (!isDatasetTruthy(element, 'najaOnce')) {
21
+ return
22
+ }
23
+
24
+ if (isDatasetTruthy(element, 'najaLoaded')) {
25
+ event.preventDefault()
26
+ return
27
+ }
28
+
29
+ options.ajaxOnceInitiator = element as HTMLElement | SVGElement
30
+ }
31
+
32
+ private success(event: SuccessEvent): void {
33
+ const { options } = event.detail
34
+
35
+ if (!options.ajaxOnceInitiator) {
36
+ return
37
+ }
38
+
39
+ options.ajaxOnceInitiator.dataset.najaLoaded = 'true'
40
+ }
41
+ }
@@ -0,0 +1,16 @@
1
+ import { Extension, Naja } from 'naja/dist/Naja'
2
+ import { InteractionEvent } from 'naja/dist/core/UIHandler'
3
+
4
+ export class ConfirmExtension implements Extension {
5
+ public initialize(naja: Naja): void {
6
+ naja.uiHandler.addEventListener('interaction', (event: InteractionEvent) => {
7
+ const { element } = event.detail
8
+
9
+ const confirm = element.getAttribute('data-confirm')
10
+
11
+ if (confirm && !window.confirm(confirm)) {
12
+ event.preventDefault()
13
+ }
14
+ })
15
+ }
16
+ }
@@ -0,0 +1,19 @@
1
+ import { Extension, Naja, SuccessEvent } from 'naja/dist/Naja'
2
+
3
+ declare module 'naja/dist/Naja' {
4
+ interface Payload {
5
+ followUpUrl?: string
6
+ }
7
+ }
8
+
9
+ export class FollowUpRequestExtension implements Extension {
10
+ public initialize(naja: Naja): void {
11
+ naja.addEventListener('success', (event: SuccessEvent) => {
12
+ const { payload } = event.detail
13
+
14
+ if (payload.followUpUrl) {
15
+ naja.makeRequest('get', payload.followUpUrl, null, { history: false })
16
+ }
17
+ })
18
+ }
19
+ }
@@ -0,0 +1,35 @@
1
+ import { Extension, Naja, PayloadEvent, SuccessEvent } from 'naja/dist/Naja'
2
+
3
+ declare module 'naja/dist/Naja' {
4
+ interface Payload {
5
+ forceRedirect?: string
6
+ }
7
+ }
8
+
9
+ export class ForceRedirectExtension implements Extension {
10
+ private naja: Naja | undefined
11
+
12
+ public initialize(naja: Naja): void {
13
+ this.naja = naja
14
+
15
+ naja.addEventListener('payload', this.prepareOptions.bind(this))
16
+ naja.addEventListener('success', this.handleForceRedirect.bind(this))
17
+ }
18
+
19
+ private prepareOptions(event: PayloadEvent): void {
20
+ const { payload, options } = event.detail
21
+
22
+ if (payload.forceRedirect) {
23
+ options.forceRedirect = true
24
+ }
25
+ }
26
+
27
+ private handleForceRedirect(event: SuccessEvent): void {
28
+ const { payload } = event.detail
29
+
30
+ if (payload.forceRedirect) {
31
+ this.naja?.redirectHandler.makeRedirect(payload.forceRedirect, true)
32
+ event.stopImmediatePropagation()
33
+ }
34
+ }
35
+ }
@@ -0,0 +1,35 @@
1
+ import { Extension, Naja } from 'naja/dist/Naja'
2
+ import { BeforeUpdateEvent } from 'naja/dist/core/SnippetHandler'
3
+ import { InteractionEvent } from 'naja/dist/core/UIHandler'
4
+ import { isDatasetTruthy } from '../utils'
5
+
6
+ declare module 'naja/dist/Naja' {
7
+ interface Options {
8
+ forceReplace?: boolean
9
+ }
10
+ }
11
+
12
+ export class ForceReplaceExtension implements Extension {
13
+ private naja: Naja | undefined
14
+
15
+ public initialize(naja: Naja): void {
16
+ this.naja = naja
17
+
18
+ naja.uiHandler.addEventListener('interaction', this.checkForceReplace.bind(this))
19
+ naja.snippetHandler.addEventListener('beforeUpdate', this.handleForceReplace.bind(this))
20
+ }
21
+
22
+ private checkForceReplace(event: InteractionEvent) {
23
+ const { element, options } = event.detail
24
+
25
+ options.forceReplace = isDatasetTruthy(element, 'najaSnippetForceReplace')
26
+ }
27
+
28
+ private handleForceReplace(event: BeforeUpdateEvent): void {
29
+ const { changeOperation, options } = event.detail
30
+
31
+ if (this.naja && options.forceReplace) {
32
+ changeOperation(this.naja.snippetHandler.op.replace)
33
+ }
34
+ }
35
+ }
package/src/index.esm.ts CHANGED
@@ -1,6 +1,12 @@
1
1
  import ControlManager from './utils/ControlManager'
2
2
 
3
3
  export { AjaxModalExtension } from './extensions/AjaxModalExtension'
4
+ export { AjaxModalPreventRedrawExtension } from './extensions/AjaxModalPreventRedrawExtension'
5
+ export { AjaxOnceExtension } from './extensions/AjaxOnceExtension'
6
+ export { ConfirmExtension } from './extensions/ConfirmExtension'
7
+ export { FollowUpRequestExtension } from './extensions/FollowUpRequestExtension'
8
+ export { ForceRedirectExtension } from './extensions/ForceRedirectExtension'
9
+ export { ForceReplaceExtension } from './extensions/ForceReplaceExtension'
4
10
  export { SpinnerExtension } from './extensions/SpinnerExtension'
5
11
 
6
12
  export const controlManager = new ControlManager()
@@ -4,15 +4,21 @@
4
4
  //
5
5
  // 1. `constructor` is called immediately and is also called only once. This is the ideal place for e.g. adding common
6
6
  // event handlers to the `body`, or modifying necessary DOM properties on elements not affected by ajax.
7
-
7
+ //
8
8
  // 2. The instantiated class is then added to ControlManager either by `addControlOnLoad` or `addControlOnLive`. This
9
9
  // ensures, that on `DOMContentLoaded` the `initialize` function of class is called. This method should implement
10
- // initialization of the control dependent on fully loaded DOM. The `context` argument is equal to `document` in this
11
- // call.
10
+ // initialization of the control dependent on fully loaded DOM. The `context` argument is equal to `document` in this call.
11
+ //
12
+ // 3. In the case of using `addControlOnLive`, two methods are called after each successful Ajax request:
12
13
  //
13
- // 3. In case of `addControlOnLive` used, the `initialize` method is also called for each success ajax request. The
14
- // `context` argument is equal to modified nette snippet.
14
+ // 1. Optional: Just before the snippet update, the optional `destroy` method is called. It will only be called
15
+ // if the [snippet update operation](https://naja.js.org/#/snippets?id=snippet-update-operation) is `replace`.
15
16
  //
17
+ // 2. The `initialize` method is called for each snippet. It is called immediately after the snippet has been
18
+ // updated. The `context` argument is equal to the modified nette snippet.
19
+
16
20
  export default interface Control {
17
21
  initialize(context: Element | Document): void
22
+
23
+ destroy?(context: Element): void
18
24
  }
@@ -1,5 +1,5 @@
1
1
  import naja from 'naja'
2
- import { AfterUpdateEvent } from 'naja/dist/core/SnippetHandler'
2
+ import { AfterUpdateEvent, BeforeUpdateEvent } from 'naja/dist/core/SnippetHandler'
3
3
  import Control from './Control'
4
4
 
5
5
  let instance: ControlManager | null = null
@@ -12,6 +12,7 @@ export default class ControlManager {
12
12
  if (instance === null) {
13
13
  // eslint-disable-next-line @typescript-eslint/no-this-alias
14
14
  instance = this
15
+ naja.snippetHandler.addEventListener('beforeUpdate', this.onBeforeSnippetUpdate.bind(this))
15
16
  naja.snippetHandler.addEventListener('afterUpdate', this.onSnippetUpdate.bind(this))
16
17
  }
17
18
  return instance
@@ -22,6 +23,17 @@ export default class ControlManager {
22
23
  this.initialize(this.onLiveControl)
23
24
  }
24
25
 
26
+ private onBeforeSnippetUpdate(event: BeforeUpdateEvent): void {
27
+ if (
28
+ event.detail.operation === naja.snippetHandler.op.append ||
29
+ event.detail.operation === naja.snippetHandler.op.prepend
30
+ ) {
31
+ return
32
+ }
33
+
34
+ this.destroy(this.onLiveControl, event.detail.snippet)
35
+ }
36
+
25
37
  private onSnippetUpdate(event: AfterUpdateEvent): void {
26
38
  this.initialize(this.onLiveControl, event.detail.snippet)
27
39
  }
@@ -32,6 +44,14 @@ export default class ControlManager {
32
44
  })
33
45
  }
34
46
 
47
+ private destroy(controls: Control[], snippet: Element): void {
48
+ controls.forEach((control) => {
49
+ if (control.destroy !== undefined) {
50
+ control.destroy(snippet)
51
+ }
52
+ })
53
+ }
54
+
35
55
  public addControlOnLoad(control: Control): void {
36
56
  this.onLoadControl.push(control)
37
57
  }
package/src/utils.ts ADDED
@@ -0,0 +1,5 @@
1
+ export const isDatasetTruthy = (element: Element, datasetName: string): boolean => {
2
+ const datasetValue = (element as HTMLElement).dataset[datasetName]
3
+
4
+ return datasetValue !== undefined && datasetValue !== 'false'
5
+ }