class ParseUrl{execute(e){let r=e.url;if("string"!=typeof r){if("undefined"==typeof location||null===location)return{};r=location.href}const t={};var n=r.match(/^([^\?\#]+?)?(\?.*?)?(\#.*)?$/),e=n[1];const o=n[2];n=n[3];if(o){var l,c,s=/(.*?)\=(.*)/;for(const a of o.substr(1).split("&")){const i=a.match(s);i&&0<i.length&&(l=i[1],c=decodeURIComponent(i[2].replace(/\+/g," ")),t[l]=c)}}return{url:r,query:t,request:e,queryString:o,fragment:n}}}ParseUrl.action="gcx:wf:core::ParseUrl",ParseUrl.suite="gcx:wf:builtin";export{ParseUrl};