Skip to content

Commit 3f17e99

Browse files
committed
maint(pat-markdown): Improve registering the markdown handler for pat-inject.
Wait a tick before registering the markdown type handler for pat-inject. With that there is no need for pat-inject to be imported before pat-markdown, as long as it is imported side by side with pat-markdown.
1 parent c6dc8b0 commit 3f17e99

File tree

1 file changed

+19
-12
lines changed

1 file changed

+19
-12
lines changed

src/pat/markdown/markdown.js

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import $ from "jquery";
22
import { BasePattern } from "../../core/basepattern";
33
import dom from "../../core/dom";
44
import events from "../../core/events";
5-
import inject from "../inject/inject";
65
import logging from "../../core/logging";
76
import registry from "../../core/registry";
87
import utils from "../../core/utils";
@@ -118,17 +117,25 @@ $(document).ready(function () {
118117
);
119118
});
120119

121-
inject.registerTypeHandler("markdown", {
122-
async sources(cfgs, data) {
123-
return await Promise.all(
124-
cfgs.map(async function (cfg) {
125-
const pat = new Pattern(cfg.$target[0]);
126-
const rendered = await pat.renderForInjection(cfg, data);
127-
return rendered;
128-
})
129-
);
130-
},
131-
});
120+
async function register_external_handlers() {
121+
await utils.timeout(1);
122+
123+
const inject = registry.patterns.inject;
124+
if (inject) {
125+
inject.registerTypeHandler("markdown", {
126+
async sources(cfgs, data) {
127+
return await Promise.all(
128+
cfgs.map(async function (cfg) {
129+
const pat = new Pattern(cfg.$target[0]);
130+
const rendered = await pat.renderForInjection(cfg, data);
131+
return rendered;
132+
})
133+
);
134+
},
135+
});
136+
}
137+
}
138+
register_external_handlers();
132139

133140
registry.register(Pattern);
134141
export default Pattern;

0 commit comments

Comments
 (0)