aboutsummaryrefslogtreecommitdiff
path: root/static/js/ext/path-params.js
diff options
context:
space:
mode:
Diffstat (limited to 'static/js/ext/path-params.js')
-rw-r--r--static/js/ext/path-params.js15
1 files changed, 15 insertions, 0 deletions
diff --git a/static/js/ext/path-params.js b/static/js/ext/path-params.js
new file mode 100644
index 0000000..462be0a
--- /dev/null
+++ b/static/js/ext/path-params.js
@@ -0,0 +1,15 @@
+if (htmx.version && !htmx.version.startsWith("1.")) {
+ console.warn("WARNING: You are using an htmx 1 extension with htmx " + htmx.version +
+ ". It is recommended that you move to the version of this extension found on https://htmx.org/extensions")
+}
+htmx.defineExtension('path-params', {
+ onEvent: function(name, evt) {
+ if (name === "htmx:configRequest") {
+ evt.detail.path = evt.detail.path.replace(/{([^}]+)}/g, function (_, param) {
+ var val = evt.detail.parameters[param];
+ delete evt.detail.parameters[param];
+ return val === undefined ? "{" + param + "}" : encodeURIComponent(val);
+ })
+ }
+ }
+});