Skip to content

Commit 7b26f26

Browse files
committed
Minor pat-inject code cleanup.
1 parent e9a6d61 commit 7b26f26

File tree

1 file changed

+17
-19
lines changed

1 file changed

+17
-19
lines changed

src/pat/inject/inject.js

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -716,10 +716,23 @@ const inject = {
716716
}
717717
}
718718

719-
$el.on(
720-
"pat-ajax-success.pat-inject",
721-
this._onInjectSuccess.bind(this, $el, cfgs)
722-
);
719+
$el.on("pat-ajax-success.pat-inject", async (e) => {
720+
this._onInjectSuccess($el, cfgs, e);
721+
722+
// Wait for the next tick to ensure that the close-panel listener
723+
// is called before this one, even for non-async local injects.
724+
await utils.timeout(1);
725+
// Remove the close-panel event listener.
726+
events.remove_event_listener($el[0], "pat-inject--close-panel");
727+
// Only close the panel if a close-panel event was catched previously.
728+
if (do_close_panel) {
729+
do_close_panel = false;
730+
// Re-trigger close-panel event if it was caught while injection was in progress.
731+
$el[0].dispatchEvent(
732+
new Event("close-panel", { bubbles: true, cancelable: true })
733+
);
734+
}
735+
});
723736
$el.on("pat-ajax-error.pat-inject", this._onInjectError.bind(this, $el, cfgs));
724737
$el.on("pat-ajax-success.pat-inject pat-ajax-error.pat-inject", () =>
725738
$el.removeData("pat-inject-triggered")
@@ -737,21 +750,6 @@ const inject = {
737750
do_close_panel = true;
738751
}
739752
);
740-
$el.on("pat-ajax-success.pat-inject", async () => {
741-
// Wait for the next tick to ensure that the close-panel listener
742-
// is called before this one, even for non-async local injects.
743-
await utils.timeout(1);
744-
// Remove the close-panel event listener.
745-
events.remove_event_listener($el[0], "pat-inject--close-panel");
746-
// Only close the panel if a close-panel event was catched previously.
747-
if (do_close_panel) {
748-
do_close_panel = false;
749-
// Re-trigger close-panel event if it was caught while injection was in progress.
750-
$el[0].dispatchEvent(
751-
new Event("close-panel", { bubbles: true, cancelable: true })
752-
);
753-
}
754-
});
755753

756754
if (cfgs[0].url.length) {
757755
ajax.request($el, {

0 commit comments

Comments
 (0)