qwc2 2025.7.23 → 2025.7.29

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.
Files changed (45) hide show
  1. package/actions/theme.js +1 -1
  2. package/components/ExportSelection.js +7 -0
  3. package/components/map3d/Map3D.js +7 -6
  4. package/components/map3d/MapExport3D.js +4 -5
  5. package/components/map3d/Settings3D.js +7 -0
  6. package/components/map3d/TopBar3D.js +1 -1
  7. package/components/map3d/layers/GeoTIFFLayer3D.js +7 -0
  8. package/components/map3d/layers/index.js +1 -1
  9. package/components/map3d/style/Map3D.css +1 -0
  10. package/components/map3d/style/Settings3D.css +11 -0
  11. package/components/style/ExportSelection.css +103 -0
  12. package/components/widgets/Input.js +1 -1
  13. package/package.json +1 -1
  14. package/plugins/MapInfoTooltip.js +1 -1
  15. package/plugins/View3D.js +1 -1
  16. package/reducers/layers.js +1 -2
  17. package/static/translations/bg-BG.json +4 -0
  18. package/static/translations/ca-ES.json +4 -0
  19. package/static/translations/cs-CZ.json +4 -0
  20. package/static/translations/de-CH.json +4 -0
  21. package/static/translations/de-DE.json +4 -0
  22. package/static/translations/en-US.json +4 -0
  23. package/static/translations/es-ES.json +4 -0
  24. package/static/translations/fi-FI.json +4 -0
  25. package/static/translations/fr-FR.json +4 -0
  26. package/static/translations/hu-HU.json +4 -0
  27. package/static/translations/it-IT.json +4 -0
  28. package/static/translations/ja-JP.json +4 -0
  29. package/static/translations/nl-NL.json +4 -0
  30. package/static/translations/no-NO.json +4 -0
  31. package/static/translations/pl-PL.json +4 -0
  32. package/static/translations/pt-BR.json +4 -0
  33. package/static/translations/pt-PT.json +4 -0
  34. package/static/translations/ro-RO.json +4 -0
  35. package/static/translations/ru-RU.json +4 -0
  36. package/static/translations/sv-SE.json +4 -0
  37. package/static/translations/tr-TR.json +4 -0
  38. package/static/translations/tsconfig.json +2 -0
  39. package/utils/ElevationInterface.js +1 -1
  40. package/utils/LayerUtils.js +5 -4
  41. package/utils/ServiceLayerUtils.js +1 -1
  42. package/utils/ThemeUtils.js +2 -2
  43. package/utils/expr_grammar/grammar.js +1 -1
  44. package/utils/expr_grammar/grammar.ne +34 -8
  45. package/components/map3d/style/MapExport3D.css +0 -25
@@ -4,9 +4,9 @@ function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof
4
4
  *
5
5
  * This source code is licensed under the BSD-style license found in the
6
6
  * LICENSE file in the root directory of this source tree.
7
- */import{remove as removeDiacritics}from"diacritics";import isEmpty from"lodash.isempty";import url from"url";import{v4 as uuidv4}from"uuid";import{LayerRole}from"../actions/layers";import{NotificationType,showNotification}from"../actions/windows";import{SearchResultType}from"../utils/SearchProviders";import ConfigUtils from"./ConfigUtils";import LayerUtils from"./LayerUtils";import LocaleUtils from"./LocaleUtils";var ThemeUtils={getThemeById:function getThemeById(themes,id){for(var i=0,n=themes.items.length;i<n;++i){if(themes.items[i].id===id){return themes.items[i]}}for(var _i=0,_n=themes.subdirs.length;_i<_n;++_i){var theme=this.getThemeById(themes.subdirs[_i],id);if(theme){return theme}}return null},createThemeBackgroundLayers:function createThemeBackgroundLayers(theme,themes,visibleLayer,externalLayers,dispatch,initialTheme){var bgLayers=[];var visibleIdx=-1;var defaultVisibleIdx=-1;var _iterator=_createForOfIteratorHelper(theme.backgroundLayers||[]),_step;try{var _loop=function _loop(){var entry=_step.value;if(!entry.name){return 1;// continue
7
+ */import{remove as removeDiacritics}from"diacritics";import isEmpty from"lodash.isempty";import url from"url";import{v4 as uuidv4}from"uuid";import{LayerRole}from"../actions/layers";import{NotificationType,showNotification}from"../actions/windows";import{SearchResultType}from"../utils/SearchProviders";import ConfigUtils from"./ConfigUtils";import LayerUtils from"./LayerUtils";import LocaleUtils from"./LocaleUtils";var ThemeUtils={getThemeById:function getThemeById(themes,id){for(var i=0,n=themes.items.length;i<n;++i){if(themes.items[i].id===id){return themes.items[i]}}for(var _i=0,_n=themes.subdirs.length;_i<_n;++_i){var theme=this.getThemeById(themes.subdirs[_i],id);if(theme){return theme}}return null},createThemeBackgroundLayers:function createThemeBackgroundLayers(backgroundLayers,themes,visibleLayer,externalLayers){var bgLayers=[];var visibleIdx=-1;var defaultVisibleIdx=-1;var _iterator=_createForOfIteratorHelper(backgroundLayers),_step;try{var _loop=function _loop(){var entry=_step.value;if(!entry.name){return 1;// continue
8
8
  }var bgLayer=themes.backgroundLayers.find(function(lyr){return lyr.name===entry.name});if(bgLayer){if(entry.visibility===true){defaultVisibleIdx=bgLayers.length}if(bgLayer.name===visibleLayer){visibleIdx=bgLayers.length}bgLayer=_objectSpread(_objectSpread({},bgLayer),{},{role:LayerRole.BACKGROUND,thumbnail:bgLayer.thumbnail||"img/mapthumbs/default.jpg",visibility:false,opacity:bgLayer.opacity!==undefined?bgLayer.opacity:255});if(bgLayer.resource){bgLayer.id=uuidv4();bgLayer.type="placeholder";var params=LayerUtils.splitLayerUrlParam(bgLayer.resource);params.id=bgLayer.id;var key=params.type+":"+params.url;(externalLayers[key]=externalLayers[key]||[]).push(params);delete bgLayer.resource}else if(bgLayer.type==="wms"){bgLayer.version=bgLayer.params.VERSION||bgLayer.version||themes.defaultWMSVersion||"1.3.0"}else if(bgLayer.type==="group"){bgLayer.items=bgLayer.items.map(function(item){if(item.ref){var sublayer=themes.backgroundLayers.find(function(l){return l.name===item.ref});if(sublayer){item=_objectSpread(_objectSpread(_objectSpread({},item),sublayer),LayerUtils.buildWMSLayerParams(sublayer));if(item.type==="wms"){item.version=item.params.VERSION||item.version||themes.defaultWMSVersion||"1.3.0"}delete item.ref}else{item=null}}return item}).filter(function(x){return x})}bgLayers.push(bgLayer)}else{// eslint-disable-next-line
9
- console.warn("Could not find background layer "+entry.name)}};for(_iterator.s();!(_step=_iterator.n()).done;){if(_loop())continue}}catch(err){_iterator.e(err)}finally{_iterator.f()}if(visibleIdx>=0){bgLayers[visibleIdx].visibility=true}else if(defaultVisibleIdx>=0&&visibleLayer!==""){bgLayers[defaultVisibleIdx].visibility=true}if(initialTheme&&visibleIdx===-1&&visibleLayer){dispatch(showNotification("missingbglayer",LocaleUtils.tr("app.missingbg",visibleLayer),NotificationType.WARN,true))}return bgLayers},createThemeLayer:function createThemeLayer(theme,themes){var role=arguments.length>2&&arguments[2]!==undefined?arguments[2]:LayerRole.THEME;var subLayers=arguments.length>3&&arguments[3]!==undefined?arguments[3]:null;var urlParts=url.parse(theme.url,true);// Resolve relative urls
9
+ console.warn("Could not find background layer "+entry.name)}};for(_iterator.s();!(_step=_iterator.n()).done;){if(_loop())continue}}catch(err){_iterator.e(err)}finally{_iterator.f()}if(visibleIdx>=0){bgLayers[visibleIdx].visibility=true}else if(defaultVisibleIdx>=0&&visibleLayer!==""){bgLayers[defaultVisibleIdx].visibility=true}return bgLayers},createThemeLayer:function createThemeLayer(theme,themes){var role=arguments.length>2&&arguments[2]!==undefined?arguments[2]:LayerRole.THEME;var subLayers=arguments.length>3&&arguments[3]!==undefined?arguments[3]:null;var urlParts=url.parse(theme.url,true);// Resolve relative urls
10
10
  if(!urlParts.host){var locationParts=url.parse(window.location.href);urlParts.protocol=locationParts.protocol;urlParts.host=locationParts.host}var sublayerNames=LayerUtils.getSublayerNames({sublayers:subLayers!==null&&subLayers!==void 0?subLayers:theme.sublayers});var baseParams=urlParts.query;var layer={type:"wms",id:theme.id,url:url.format(urlParts),version:theme.version||themes.defaultWMSVersion||"1.3.0",visibility:true,expanded:theme.expanded,name:theme.name,title:theme.title,bbox:theme.bbox,sublayers:subLayers!==null&&subLayers!==void 0?subLayers:theme.sublayers,tiled:theme.tiled,tileSize:theme.tileSize,ratio:!theme.tiled?1:undefined,serverType:"qgis",format:theme.format,rev:+new Date,role:role,attribution:theme.attribution,legendUrl:ThemeUtils.inheritBaseUrlParams(theme.legendUrl,theme.url,baseParams),printUrl:ThemeUtils.inheritBaseUrlParams(theme.printUrl,theme.url,baseParams),featureInfoUrl:ThemeUtils.inheritBaseUrlParams(theme.featureInfoUrl,theme.url,baseParams),infoFormats:theme.infoFormats,mapFormats:theme.availableFormats,layerTreeHiddenSublayers:theme.layerTreeHiddenSublayers,predefinedFilters:(theme.predefinedFilters||[]).filter(function(entry){return Object.keys(entry.filter).find(function(name){return sublayerNames.includes(name)})}),externalLayerMap:_objectSpread(_objectSpread({},theme.externalLayerMap),(theme.externalLayers||[]).reduce(function(res,cur){res[cur.internalLayer]=_objectSpread({},themes.externalLayers.find(function(entry){return entry.name===cur.name}));LayerUtils.completeExternalLayer(res[cur.internalLayer],LayerUtils.searchSubLayer(theme,"name",cur.internalLayer));return res},{}))};layer=LayerUtils.recomputeLayerBBox(layer);// Drawing order only makes sense if layer reordering is disabled
11
11
  if(ConfigUtils.getConfigProp("allowReorderingLayers",theme)!==true){layer.drawingOrder=theme.drawingOrder}return layer},inheritBaseUrlParams:function inheritBaseUrlParams(capabilityUrl,baseUrl,baseParams){if(!capabilityUrl){return baseUrl}if(capabilityUrl.split("?")[0]===baseUrl.split("?")[0]){var parts=url.parse(capabilityUrl,true);parts.query=_objectSpread(_objectSpread({},baseParams),parts.query);return url.format(parts)}return capabilityUrl},searchThemes:function searchThemes(themes,searchtext){var filter=new RegExp(removeDiacritics(searchtext).replace(/[-[\]/{}()*+?.\\^$|]/g,"\\$&"),"i");var matches=[];var _searchThemeGroup=function searchThemeGroup(themeGroup){(themeGroup.subdirs||[]).forEach(function(subdir){return _searchThemeGroup(subdir,filter)});matches.push.apply(matches,_toConsumableArray((themeGroup.items||[]).filter(function(item){return removeDiacritics(item.title).match(filter)||removeDiacritics(item.keywords||"").match(filter)||removeDiacritics(item["abstract"]||"").match(filter)})))};_searchThemeGroup(themes,filter);return isEmpty(matches)?[]:[{id:"themes",titlemsgid:"search.themes",type:SearchResultType.THEME,items:matches.map(function(theme){return{id:theme.id,text:theme.title,theme:theme,layer:ThemeUtils.createThemeLayer(theme,themes),thumbnail:ConfigUtils.getAssetsPath()+"/"+theme.thumbnail}})}]},searchThemeLayers:function searchThemeLayers(themes,searchtext){var filter=new RegExp(removeDiacritics(searchtext).replace(/[-[\]/{}()*+?.\\^$|]/g,"\\$&"),"i");var matches=[];var _searchLayer=function searchLayer(theme,layer){var path=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];(layer.sublayers||[]).forEach(function(sublayer,idx){var subpath=[].concat(_toConsumableArray(path),[idx]);if(removeDiacritics(sublayer.name).match(filter)||removeDiacritics(sublayer.title).match(filter)){// Clone theme, ensuring path to layer is visible
12
12
  var newtheme=_objectSpread({},theme);var cur=newtheme;var _loop2=function _loop2(i){var isMutuallyExclusive=cur.mutuallyExclusive;cur.sublayers=cur.sublayers.map(function(entry,j){return _objectSpread(_objectSpread({},entry),{},{visibility:j===subpath[i]||entry.visibility&&!isMutuallyExclusive})});cur=cur.sublayers[subpath[i]]};for(var i=0;i<subpath.length;++i){_loop2(i)}matches.push({theme:newtheme,layer:ThemeUtils.createThemeLayer(newtheme,themes,LayerRole.USERLAYER,[cur])})}_searchLayer(theme,sublayer,subpath)})};var _searchThemeGroup2=function searchThemeGroup(themeGroup){(themeGroup.subdirs||[]).forEach(function(subdir){return _searchThemeGroup2(subdir,filter)});(themeGroup.items||[]).forEach(function(item){return _searchLayer(item,item)})};_searchThemeGroup2(themes,filter);return isEmpty(matches)?[]:[{id:"themelayers",titlemsgid:"search.themelayers",type:SearchResultType.THEMELAYER,items:matches.map(function(result){return{id:result.layer.id+":"+result.layer.sublayers[0].name,text:result.layer.title+": "+result.layer.sublayers[0].title,layer:result.layer,theme:result.theme}})}]},getThemeNames:function getThemeNames(themes){var names=(themes.items||[]).reduce(function(res,theme){return _objectSpread(_objectSpread({},res),{},_defineProperty({},theme.id,theme.title))},{});(themes.subdirs||[]).forEach(function(group){Object.assign(names,ThemeUtils.getThemeNames(group))});return names},themeFlagsAllowed:function themeFlagsAllowed(theme,flagWhitelist,flagBlacklist){var themeFlags=(theme===null||theme===void 0?void 0:theme.flags)||[];if(flagBlacklist&&flagBlacklist.find(function(flag){return themeFlags.includes(flag)})!==undefined){return false}if(flagWhitelist&&flagWhitelist.find(function(flag){return themeFlags.includes(flag)})===undefined){return false}return true}};export default ThemeUtils;
@@ -1,3 +1,3 @@
1
1
  function _toConsumableArray(r){return _arrayWithoutHoles(r)||_iterableToArray(r)||_unsupportedIterableToArray(r)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0}}function _iterableToArray(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r)}function _arrayWithoutHoles(r){if(Array.isArray(r))return _arrayLikeToArray(r)}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n}function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},_typeof(o)}// Generated automatically by nearley, version 2.20.1
2
2
  // http://github.com/Hardmath123/nearley
3
- (function(){function id(x){return x[0]}if(typeof window==="undefined"){window=global}function asFilter(d){return window.qwc2ExpressionParserContext.asFilter&&["string","object"].includes(_typeof(d[0]))}function generateUUID(){var d=new Date().getTime();var d2=typeof performance!=="undefined"&&performance.now&&performance.now()*1000||0;var result="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(c){var r=Math.random()*16;if(d>0){r=(d+r)%16|0;d=Math.floor(d/16)}else{r=(d2+r)%16|0;d2=Math.floor(d2/16)}return(c==="x"?r:r&3|8).toString(16)});return"{"+result+"}"}var grammar={Lexer:undefined,ParserRules:[{"name":"dqstring$ebnf$1","symbols":[]},{"name":"dqstring$ebnf$1","symbols":["dqstring$ebnf$1","dstrchar"],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"dqstring","symbols":[{"literal":"\""},"dqstring$ebnf$1",{"literal":"\""}],"postprocess":function postprocess(d){return d[1].join("")}},{"name":"sqstring$ebnf$1","symbols":[]},{"name":"sqstring$ebnf$1","symbols":["sqstring$ebnf$1","sstrchar"],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"sqstring","symbols":[{"literal":"'"},"sqstring$ebnf$1",{"literal":"'"}],"postprocess":function postprocess(d){return d[1].join("")}},{"name":"btstring$ebnf$1","symbols":[]},{"name":"btstring$ebnf$1","symbols":["btstring$ebnf$1",/[^`]/],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"btstring","symbols":[{"literal":"`"},"btstring$ebnf$1",{"literal":"`"}],"postprocess":function postprocess(d){return d[1].join("")}},{"name":"dstrchar","symbols":[/[^\\"\n]/],"postprocess":id},{"name":"dstrchar","symbols":[{"literal":"\\"},"strescape"],"postprocess":function postprocess(d){return JSON.parse("\""+d.join("")+"\"")}},{"name":"sstrchar","symbols":[/[^\\'\n]/],"postprocess":id},{"name":"sstrchar","symbols":[{"literal":"\\"},"strescape"],"postprocess":function postprocess(d){return JSON.parse("\""+d.join("")+"\"")}},{"name":"sstrchar$string$1","symbols":[{"literal":"\\"},{"literal":"'"}],"postprocess":function joiner(d){return d.join("")}},{"name":"sstrchar","symbols":["sstrchar$string$1"],"postprocess":function postprocess(d){return"'"}},{"name":"strescape","symbols":[/["\\/bfnrt]/],"postprocess":id},{"name":"strescape","symbols":[{"literal":"u"},/[a-fA-F0-9]/,/[a-fA-F0-9]/,/[a-fA-F0-9]/,/[a-fA-F0-9]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"main","symbols":["_","P0","_"],"postprocess":function postprocess(d){return d[1]}},{"name":"P0$subexpression$1","symbols":[/[oO]/,/[rR]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"P0","symbols":["P0","_","P0$subexpression$1","_","P1"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]||d[4]}},{"name":"P0","symbols":["P1"],"postprocess":id},{"name":"P1$subexpression$1","symbols":[/[aA]/,/[nN]/,/[dD]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"P1","symbols":["P1","_","P1$subexpression$1","_","P2"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]&&d[4]}},{"name":"P1","symbols":["P2"],"postprocess":id},{"name":"P2","symbols":["P2","_",{"literal":"<"},"_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]<d[4]}},{"name":"P2","symbols":["P2","_",{"literal":">"},"_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]>d[4]}},{"name":"P2$string$1","symbols":[{"literal":">"},{"literal":"="}],"postprocess":function joiner(d){return d.join("")}},{"name":"P2","symbols":["P2","_","P2$string$1","_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]>=d[4]}},{"name":"P2$string$2","symbols":[{"literal":"<"},{"literal":"="}],"postprocess":function joiner(d){return d.join("")}},{"name":"P2","symbols":["P2","_","P2$string$2","_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]<=d[4]}},{"name":"P2","symbols":["P2","_",{"literal":"="},"_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]==d[4]}},{"name":"P2$string$3","symbols":[{"literal":"<"},{"literal":">"}],"postprocess":function joiner(d){return d.join("")}},{"name":"P2","symbols":["P2","_","P2$string$3","_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],"!=",d[4]]:d[0]!=d[4]}},{"name":"P2","symbols":["P3"],"postprocess":id},{"name":"P3","symbols":["P3","_",{"literal":"+"},"_","P4"],"postprocess":function postprocess(d){return d[0]+d[4]}},{"name":"P3","symbols":["P3","_",{"literal":"-"},"_","P4"],"postprocess":function postprocess(d){return d[0]-d[4]}},{"name":"P3$string$1","symbols":[{"literal":"|"},{"literal":"|"}],"postprocess":function joiner(d){return d.join("")}},{"name":"P3","symbols":["P3","_","P3$string$1","_","P4"],"postprocess":function postprocess(d){return d[0]+d[4]}},{"name":"P3","symbols":["P4"],"postprocess":id},{"name":"P4","symbols":["P4","_",{"literal":"*"},"_","P5"],"postprocess":function postprocess(d){return d[0]*d[4]}},{"name":"P4","symbols":["P4","_",{"literal":"/"},"_","P5"],"postprocess":function postprocess(d){return d[0]/d[4]}},{"name":"P4","symbols":["P5"],"postprocess":id},{"name":"P5","symbols":["P6","_",{"literal":"^"},"_","P5"],"postprocess":function postprocess(d){return Math.pow(d[0],d[4])}},{"name":"P5$subexpression$1","symbols":[/[iI]/,/[sS]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"P5","symbols":["P5","__","P5$subexpression$1","__","P6"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],"=",d[4]]:d[0]===d[4]}},{"name":"P5$subexpression$2","symbols":[/[iI]/,/[sS]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"P5$subexpression$3","symbols":[/[nN]/,/[oO]/,/[tT]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"P5","symbols":["P5","__","P5$subexpression$2","__","P5$subexpression$3","__","P6"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],"!=",d[6]]:d[0]!==d[6]}},{"name":"P5","symbols":["P6"],"postprocess":id},{"name":"P6","symbols":[{"literal":"-"},"_","P6"],"postprocess":function postprocess(d){return-d[2]}},{"name":"P6","symbols":[{"literal":"+"},"_","P6"],"postprocess":function postprocess(d){return d[2]}},{"name":"P6","symbols":[{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[2]}},{"name":"P6","symbols":["N"],"postprocess":id},{"name":"N","symbols":["float"],"postprocess":id},{"name":"N","symbols":["sqstring"],"postprocess":id},{"name":"N","symbols":["dqstring"],"postprocess":function postprocess(d){var _window$qwc2Expressio,_window$qwc2Expressio2;return asFilter(d)?d[0]:(_window$qwc2Expressio=(_window$qwc2Expressio2=window.qwc2ExpressionParserContext.feature.properties)===null||_window$qwc2Expressio2===void 0?void 0:_window$qwc2Expressio2[d[0]])!==null&&_window$qwc2Expressio!==void 0?_window$qwc2Expressio:null}},{"name":"N$string$1","symbols":[{"literal":"u"},{"literal":"u"},{"literal":"i"},{"literal":"d"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$1","_",{"literal":"("},"_",{"literal":")"}],"postprocess":function postprocess(d){return generateUUID()}},{"name":"N$string$2","symbols":[{"literal":"n"},{"literal":"o"},{"literal":"w"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$2","_",{"literal":"("},"_",{"literal":")"}],"postprocess":function postprocess(d){return new Date().toISOString()}},{"name":"N$string$3","symbols":[{"literal":"s"},{"literal":"i"},{"literal":"n"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$3","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.sin(d[4])}},{"name":"N$string$4","symbols":[{"literal":"c"},{"literal":"o"},{"literal":"s"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$4","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.cos(d[4])}},{"name":"N$string$5","symbols":[{"literal":"t"},{"literal":"a"},{"literal":"n"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$5","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.tan(d[4])}},{"name":"N$string$6","symbols":[{"literal":"a"},{"literal":"s"},{"literal":"i"},{"literal":"n"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$6","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.asin(d[4])}},{"name":"N$string$7","symbols":[{"literal":"a"},{"literal":"c"},{"literal":"o"},{"literal":"s"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$7","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.acos(d[4])}},{"name":"N$string$8","symbols":[{"literal":"a"},{"literal":"t"},{"literal":"a"},{"literal":"n"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$8","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.atan(d[4])}},{"name":"N$string$9","symbols":[{"literal":"s"},{"literal":"q"},{"literal":"r"},{"literal":"t"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$9","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.sqrt(d[4])}},{"name":"N$string$10","symbols":[{"literal":"l"},{"literal":"n"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$10","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.log(d[4])}},{"name":"N$string$11","symbols":[{"literal":"a"},{"literal":"t"},{"literal":"a"},{"literal":"n"},{"literal":"2"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$11","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.atan2(d[4],d[8])}},{"name":"N$string$12","symbols":[{"literal":"p"},{"literal":"o"},{"literal":"w"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$12","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.pow(d[4],d[8])}},{"name":"N$string$13","symbols":[{"literal":"C"},{"literal":"A"},{"literal":"S"},{"literal":"E"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N$string$14","symbols":[{"literal":"E"},{"literal":"L"},{"literal":"S"},{"literal":"E"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N$string$15","symbols":[{"literal":"E"},{"literal":"N"},{"literal":"D"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$13","_","when_args","_","N$string$14","_","P0","_","N$string$15"],"postprocess":function postprocess(d){return d[2]!==undefined?d[2]:d[6]}},{"name":"N$string$16","symbols":[{"literal":"c"},{"literal":"o"},{"literal":"a"},{"literal":"l"},{"literal":"e"},{"literal":"s"},{"literal":"c"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$16","_",{"literal":"("},"_","var_args","_",{"literal":")"}],"postprocess":function postprocess(d){var _d$4$find;return(_d$4$find=d[4].find(function(x){return x!==null}))!==null&&_d$4$find!==void 0?_d$4$find:null}},{"name":"N$string$17","symbols":[{"literal":"i"},{"literal":"f"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$17","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[4]?d[8]:d[12]}},{"name":"N$string$18","symbols":[{"literal":"n"},{"literal":"u"},{"literal":"l"},{"literal":"l"},{"literal":"i"},{"literal":"f"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$18","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[4]===d[8]?null:d[4]}},{"name":"N$string$19","symbols":[{"literal":"r"},{"literal":"e"},{"literal":"g"},{"literal":"e"},{"literal":"x"},{"literal":"p"},{"literal":"_"},{"literal":"m"},{"literal":"a"},{"literal":"t"},{"literal":"c"},{"literal":"h"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$19","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[4].search(new RegExp(d[8]))+1}},{"name":"N$string$20","symbols":[{"literal":"a"},{"literal":"t"},{"literal":"t"},{"literal":"r"},{"literal":"i"},{"literal":"b"},{"literal":"u"},{"literal":"t"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$20","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){var _window$qwc2Expressio3,_window$qwc2Expressio4;return(_window$qwc2Expressio3=(_window$qwc2Expressio4=window.qwc2ExpressionParserContext.feature.properties)===null||_window$qwc2Expressio4===void 0?void 0:_window$qwc2Expressio4[d[4]])!==null&&_window$qwc2Expressio3!==void 0?_window$qwc2Expressio3:null}},{"name":"N$string$21","symbols":[{"literal":"c"},{"literal":"u"},{"literal":"r"},{"literal":"r"},{"literal":"e"},{"literal":"n"},{"literal":"t"},{"literal":"_"},{"literal":"v"},{"literal":"a"},{"literal":"l"},{"literal":"u"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$21","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){var _window$qwc2Expressio5,_window$qwc2Expressio6;return(_window$qwc2Expressio5=(_window$qwc2Expressio6=window.qwc2ExpressionParserContext.feature.properties)===null||_window$qwc2Expressio6===void 0?void 0:_window$qwc2Expressio6[d[4]])!==null&&_window$qwc2Expressio5!==void 0?_window$qwc2Expressio5:null}},{"name":"N$string$22","symbols":[{"literal":"a"},{"literal":"t"},{"literal":"t"},{"literal":"r"},{"literal":"i"},{"literal":"b"},{"literal":"u"},{"literal":"t"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$22","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){var _d$4$properties$d$,_d$;return(_d$4$properties$d$=(_d$=d[4])===null||_d$===void 0||(_d$=_d$.properties)===null||_d$===void 0?void 0:_d$[d[8]])!==null&&_d$4$properties$d$!==void 0?_d$4$properties$d$:null}},{"name":"N$string$23","symbols":[{"literal":"g"},{"literal":"e"},{"literal":"t"},{"literal":"_"},{"literal":"f"},{"literal":"e"},{"literal":"a"},{"literal":"t"},{"literal":"u"},{"literal":"r"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$23","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.getFeature(d[4],d[8],d[12])}},{"name":"N$string$24","symbols":[{"literal":"g"},{"literal":"e"},{"literal":"t"},{"literal":"_"},{"literal":"f"},{"literal":"e"},{"literal":"a"},{"literal":"t"},{"literal":"u"},{"literal":"r"},{"literal":"e"},{"literal":"_"},{"literal":"b"},{"literal":"y"},{"literal":"_"},{"literal":"i"},{"literal":"d"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$24","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.getFeature(d[4],"id",d[8])}},{"name":"N$string$25","symbols":[{"literal":"r"},{"literal":"e"},{"literal":"p"},{"literal":"r"},{"literal":"e"},{"literal":"s"},{"literal":"e"},{"literal":"n"},{"literal":"t"},{"literal":"_"},{"literal":"v"},{"literal":"a"},{"literal":"l"},{"literal":"u"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$25","_",{"literal":"("},"_","dqstring","_",{"literal":")"}],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.representValue(d[4])}},{"name":"N$subexpression$1","symbols":[/[pP]/,/[iI]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"N","symbols":["N$subexpression$1"],"postprocess":function postprocess(d){return Math.PI}},{"name":"N$subexpression$2","symbols":[/[eE]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"N","symbols":["N$subexpression$2"],"postprocess":function postprocess(d){return Math.E}},{"name":"N$subexpression$3","symbols":[/[nN]/,/[uU]/,/[lL]/,/[lL]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"N","symbols":["N$subexpression$3"],"postprocess":function postprocess(d){return null}},{"name":"N$subexpression$4","symbols":[/[fF]/,/[aA]/,/[lL]/,/[sS]/,/[eE]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"N","symbols":["N$subexpression$4"],"postprocess":function postprocess(d){return false}},{"name":"N$subexpression$5","symbols":[/[tT]/,/[rR]/,/[uU]/,/[eE]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"N","symbols":["N$subexpression$5"],"postprocess":function postprocess(d){return true}},{"name":"N$string$26","symbols":[{"literal":"@"},{"literal":"f"},{"literal":"e"},{"literal":"a"},{"literal":"t"},{"literal":"u"},{"literal":"r"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$26"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.feature}},{"name":"N$string$27","symbols":[{"literal":"@"},{"literal":"g"},{"literal":"e"},{"literal":"o"},{"literal":"m"},{"literal":"e"},{"literal":"t"},{"literal":"r"},{"literal":"y"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$27"],"postprocess":function postprocess(d){var _window$qwc2Expressio7;return(_window$qwc2Expressio7=window.qwc2ExpressionParserContext.feature)===null||_window$qwc2Expressio7===void 0?void 0:_window$qwc2Expressio7.geometry}},{"name":"N$string$28","symbols":[{"literal":"@"},{"literal":"i"},{"literal":"d"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$28"],"postprocess":function postprocess(d){var _window$qwc2Expressio8;return(_window$qwc2Expressio8=window.qwc2ExpressionParserContext.feature)===null||_window$qwc2Expressio8===void 0?void 0:_window$qwc2Expressio8.id}},{"name":"N$string$29","symbols":[{"literal":"@"},{"literal":"l"},{"literal":"a"},{"literal":"y"},{"literal":"e"},{"literal":"r"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$29"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.layer}},{"name":"N$string$30","symbols":[{"literal":"@"},{"literal":"l"},{"literal":"a"},{"literal":"y"},{"literal":"e"},{"literal":"r"},{"literal":"_"},{"literal":"n"},{"literal":"a"},{"literal":"m"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$30"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.layer}},{"name":"N$string$31","symbols":[{"literal":"@"},{"literal":"l"},{"literal":"a"},{"literal":"y"},{"literal":"e"},{"literal":"r"},{"literal":"_"},{"literal":"c"},{"literal":"r"},{"literal":"s"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$31"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.projection}},{"name":"N$string$32","symbols":[{"literal":"@"},{"literal":"p"},{"literal":"r"},{"literal":"o"},{"literal":"j"},{"literal":"e"},{"literal":"c"},{"literal":"t"},{"literal":"_"},{"literal":"b"},{"literal":"a"},{"literal":"s"},{"literal":"e"},{"literal":"n"},{"literal":"a"},{"literal":"m"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$32"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.mapPrefix}},{"name":"N$string$33","symbols":[{"literal":"@"},{"literal":"p"},{"literal":"r"},{"literal":"o"},{"literal":"j"},{"literal":"e"},{"literal":"c"},{"literal":"t"},{"literal":"_"},{"literal":"c"},{"literal":"r"},{"literal":"s"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$33"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.projection}},{"name":"N$string$34","symbols":[{"literal":"@"},{"literal":"q"},{"literal":"g"},{"literal":"i"},{"literal":"s"},{"literal":"_"},{"literal":"l"},{"literal":"o"},{"literal":"c"},{"literal":"a"},{"literal":"l"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$34"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.lang}},{"name":"N$string$35","symbols":[{"literal":"@"},{"literal":"u"},{"literal":"s"},{"literal":"e"},{"literal":"r"},{"literal":"_"},{"literal":"a"},{"literal":"c"},{"literal":"c"},{"literal":"o"},{"literal":"u"},{"literal":"n"},{"literal":"t"},{"literal":"_"},{"literal":"n"},{"literal":"a"},{"literal":"m"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$35"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.username}},{"name":"N$string$36","symbols":[{"literal":"@"},{"literal":"c"},{"literal":"l"},{"literal":"o"},{"literal":"u"},{"literal":"d"},{"literal":"_"},{"literal":"u"},{"literal":"s"},{"literal":"e"},{"literal":"r"},{"literal":"n"},{"literal":"a"},{"literal":"m"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$36"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.username}},{"name":"var_args","symbols":["P0"],"postprocess":function postprocess(d){return[d[0]]}},{"name":"var_args","symbols":["var_args","_",{"literal":","},"_","P0"],"postprocess":function postprocess(d){return[].concat(_toConsumableArray(d[0]),[d[4]])}},{"name":"when_args$string$1","symbols":[{"literal":"W"},{"literal":"H"},{"literal":"E"},{"literal":"N"}],"postprocess":function joiner(d){return d.join("")}},{"name":"when_args$string$2","symbols":[{"literal":"T"},{"literal":"H"},{"literal":"E"},{"literal":"N"}],"postprocess":function joiner(d){return d.join("")}},{"name":"when_args","symbols":["when_args$string$1","_","P0","_","when_args$string$2","_","P0"],"postprocess":function postprocess(d){return d[2]?d[6]:undefined}},{"name":"when_args$string$3","symbols":[{"literal":"W"},{"literal":"H"},{"literal":"E"},{"literal":"N"}],"postprocess":function joiner(d){return d.join("")}},{"name":"when_args$string$4","symbols":[{"literal":"T"},{"literal":"H"},{"literal":"E"},{"literal":"N"}],"postprocess":function joiner(d){return d.join("")}},{"name":"when_args","symbols":["when_args","_","when_args$string$3","_","P0","_","when_args$string$4","_","P0"],"postprocess":function postprocess(d){return d[0]!==undefined?d[0]:d[4]?d[8]:undefined}},{"name":"float","symbols":["int",{"literal":"."},"int"],"postprocess":function postprocess(d){return parseFloat(d[0]+d[1]+d[2])}},{"name":"float","symbols":["int"],"postprocess":function postprocess(d){return parseInt(d[0])}},{"name":"int$ebnf$1","symbols":[/[0-9]/]},{"name":"int$ebnf$1","symbols":["int$ebnf$1",/[0-9]/],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"int","symbols":["int$ebnf$1"],"postprocess":function postprocess(d){return d[0].join("")}},{"name":"_$ebnf$1","symbols":[]},{"name":"_$ebnf$1","symbols":["_$ebnf$1",/[\s]/],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"_","symbols":["_$ebnf$1"],"postprocess":function postprocess(d){return null}},{"name":"__$ebnf$1","symbols":[/[\s]/]},{"name":"__$ebnf$1","symbols":["__$ebnf$1",/[\s]/],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"__","symbols":["__$ebnf$1"],"postprocess":function postprocess(d){return null}}],ParserStart:"main"};if(typeof module!=="undefined"&&typeof module.exports!=="undefined"){module.exports=grammar}else{window.grammar=grammar}})();
3
+ (function(){function id(x){return x[0]}if(typeof window==="undefined"){window=global}function asFilter(d){return window.qwc2ExpressionParserContext.asFilter&&["string","object"].includes(_typeof(d[0]))}function generateUUID(){var d=new Date().getTime();var d2=typeof performance!=="undefined"&&performance.now&&performance.now()*1000||0;var result="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(c){var r=Math.random()*16;if(d>0){r=(d+r)%16|0;d=Math.floor(d/16)}else{r=(d2+r)%16|0;d2=Math.floor(d2/16)}return(c==="x"?r:r&3|8).toString(16)});return"{"+result+"}"}function replaceWildcards(str){return"^"+str.replace(/(?<!\\)%/g,".*").replace(/(?<!\\)_/g,".{1}")+"$"}var grammar={Lexer:undefined,ParserRules:[{"name":"dqstring$ebnf$1","symbols":[]},{"name":"dqstring$ebnf$1","symbols":["dqstring$ebnf$1","dstrchar"],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"dqstring","symbols":[{"literal":"\""},"dqstring$ebnf$1",{"literal":"\""}],"postprocess":function postprocess(d){return d[1].join("")}},{"name":"sqstring$ebnf$1","symbols":[]},{"name":"sqstring$ebnf$1","symbols":["sqstring$ebnf$1","sstrchar"],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"sqstring","symbols":[{"literal":"'"},"sqstring$ebnf$1",{"literal":"'"}],"postprocess":function postprocess(d){return d[1].join("")}},{"name":"btstring$ebnf$1","symbols":[]},{"name":"btstring$ebnf$1","symbols":["btstring$ebnf$1",/[^`]/],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"btstring","symbols":[{"literal":"`"},"btstring$ebnf$1",{"literal":"`"}],"postprocess":function postprocess(d){return d[1].join("")}},{"name":"dstrchar","symbols":[/[^\\"\n]/],"postprocess":id},{"name":"dstrchar","symbols":[{"literal":"\\"},"strescape"],"postprocess":function postprocess(d){return JSON.parse("\""+d.join("")+"\"")}},{"name":"sstrchar","symbols":[/[^\\'\n]/],"postprocess":id},{"name":"sstrchar","symbols":[{"literal":"\\"},"strescape"],"postprocess":function postprocess(d){return JSON.parse("\""+d.join("")+"\"")}},{"name":"sstrchar$string$1","symbols":[{"literal":"\\"},{"literal":"'"}],"postprocess":function joiner(d){return d.join("")}},{"name":"sstrchar","symbols":["sstrchar$string$1"],"postprocess":function postprocess(d){return"'"}},{"name":"strescape","symbols":[/["\\/bfnrt]/],"postprocess":id},{"name":"strescape","symbols":[{"literal":"u"},/[a-fA-F0-9]/,/[a-fA-F0-9]/,/[a-fA-F0-9]/,/[a-fA-F0-9]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"main","symbols":["_","P0","_"],"postprocess":function postprocess(d){return d[1]}},{"name":"P0$subexpression$1","symbols":[/[oO]/,/[rR]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"P0","symbols":["P0","_","P0$subexpression$1","_","P1"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]||d[4]}},{"name":"P0","symbols":["P1"],"postprocess":id},{"name":"P1$subexpression$1","symbols":[/[aA]/,/[nN]/,/[dD]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"P1","symbols":["P1","_","P1$subexpression$1","_","P2"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]&&d[4]}},{"name":"P1","symbols":["P2"],"postprocess":id},{"name":"P2","symbols":["P2","_",{"literal":"<"},"_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]<d[4]}},{"name":"P2","symbols":["P2","_",{"literal":">"},"_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]>d[4]}},{"name":"P2$string$1","symbols":[{"literal":">"},{"literal":"="}],"postprocess":function joiner(d){return d.join("")}},{"name":"P2","symbols":["P2","_","P2$string$1","_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]>=d[4]}},{"name":"P2$string$2","symbols":[{"literal":"<"},{"literal":"="}],"postprocess":function joiner(d){return d.join("")}},{"name":"P2","symbols":["P2","_","P2$string$2","_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]<=d[4]}},{"name":"P2","symbols":["P2","_",{"literal":"="},"_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],d[2],d[4]]:d[0]==d[4]}},{"name":"P2$string$3","symbols":[{"literal":"<"},{"literal":">"}],"postprocess":function joiner(d){return d.join("")}},{"name":"P2","symbols":["P2","_","P2$string$3","_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],"!=",d[4]]:d[0]!=d[4]}},{"name":"P2$subexpression$1","symbols":[/[iI]/,/[sS]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"P2","symbols":["P2","_","P2$subexpression$1","_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],"=",d[4]]:d[0]===d[4]}},{"name":"P2$subexpression$2","symbols":[/[iI]/,/[sS]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"P2$subexpression$3","symbols":[/[nN]/,/[oO]/,/[tT]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"P2","symbols":["P2","_","P2$subexpression$2","_","P2$subexpression$3","_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],"!=",d[6]]:d[0]!==d[6]}},{"name":"P2","symbols":["P2","_",{"literal":"~"},"_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],"~",d[4]]:new RegExp(d[4]).exec(d[0])!==null}},{"name":"P2$string$4","symbols":[{"literal":"L"},{"literal":"I"},{"literal":"K"},{"literal":"E"}],"postprocess":function joiner(d){return d.join("")}},{"name":"P2","symbols":["P2","_","P2$string$4","_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],"LIKE",d[4]]:new RegExp(replaceWildcards(d[4])).exec(d[0])!==null}},{"name":"P2$string$5","symbols":[{"literal":"I"},{"literal":"L"},{"literal":"I"},{"literal":"K"},{"literal":"E"}],"postprocess":function joiner(d){return d.join("")}},{"name":"P2","symbols":["P2","_","P2$string$5","_","P3"],"postprocess":function postprocess(d){return asFilter(d)?[d[0],"ILIKE",d[4]]:new RegExp(replaceWildcards(d[4]),"i").exec(d[0])!==null}},{"name":"P2","symbols":["P3"],"postprocess":id},{"name":"P3","symbols":["P3","_",{"literal":"+"},"_","P4"],"postprocess":function postprocess(d){return d[0]+d[4]}},{"name":"P3","symbols":["P3","_",{"literal":"-"},"_","P4"],"postprocess":function postprocess(d){return d[0]-d[4]}},{"name":"P3$string$1","symbols":[{"literal":"|"},{"literal":"|"}],"postprocess":function joiner(d){return d.join("")}},{"name":"P3","symbols":["P3","_","P3$string$1","_","P4"],"postprocess":function postprocess(d){return d[0]+d[4]}},{"name":"P3","symbols":["P4"],"postprocess":id},{"name":"P4","symbols":["P4","_",{"literal":"*"},"_","P5"],"postprocess":function postprocess(d){return d[0]*d[4]}},{"name":"P4","symbols":["P4","_",{"literal":"/"},"_","P5"],"postprocess":function postprocess(d){return d[0]/d[4]}},{"name":"P4$string$1","symbols":[{"literal":"/"},{"literal":"/"}],"postprocess":function joiner(d){return d.join("")}},{"name":"P4","symbols":["P4","_","P4$string$1","_","P5"],"postprocess":function postprocess(d){return Maht.floor(d[0]/d[4])}},{"name":"P4","symbols":["P4","_",{"literal":"%"},"_","P5"],"postprocess":function postprocess(d){return d[0]%d[4]}},{"name":"P4","symbols":["P5"],"postprocess":id},{"name":"P5","symbols":["P6","_",{"literal":"^"},"_","P5"],"postprocess":function postprocess(d){return Math.pow(d[0],d[4])}},{"name":"P5","symbols":["P6"],"postprocess":id},{"name":"P6","symbols":[{"literal":"-"},"_","P6"],"postprocess":function postprocess(d){return-d[2]}},{"name":"P6","symbols":[{"literal":"+"},"_","P6"],"postprocess":function postprocess(d){return d[2]}},{"name":"P6","symbols":[{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[2]}},{"name":"P6","symbols":["N"],"postprocess":id},{"name":"N","symbols":["float"],"postprocess":id},{"name":"N","symbols":["sqstring"],"postprocess":id},{"name":"N","symbols":["dqstring"],"postprocess":function postprocess(d){var _window$qwc2Expressio,_window$qwc2Expressio2;return asFilter(d)?d[0]:(_window$qwc2Expressio=(_window$qwc2Expressio2=window.qwc2ExpressionParserContext.feature.properties)===null||_window$qwc2Expressio2===void 0?void 0:_window$qwc2Expressio2[d[0]])!==null&&_window$qwc2Expressio!==void 0?_window$qwc2Expressio:null}},{"name":"N$string$1","symbols":[{"literal":"u"},{"literal":"u"},{"literal":"i"},{"literal":"d"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$1","_",{"literal":"("},"_",{"literal":")"}],"postprocess":function postprocess(d){return generateUUID()}},{"name":"N$string$2","symbols":[{"literal":"n"},{"literal":"o"},{"literal":"w"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$2","_",{"literal":"("},"_",{"literal":")"}],"postprocess":function postprocess(d){return new Date().toISOString()}},{"name":"N$string$3","symbols":[{"literal":"a"},{"literal":"b"},{"literal":"s"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$3","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.abs(d[4])}},{"name":"N$string$4","symbols":[{"literal":"a"},{"literal":"c"},{"literal":"o"},{"literal":"s"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$4","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.acos(d[4])}},{"name":"N$string$5","symbols":[{"literal":"a"},{"literal":"s"},{"literal":"i"},{"literal":"n"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$5","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.asin(d[4])}},{"name":"N$string$6","symbols":[{"literal":"a"},{"literal":"t"},{"literal":"a"},{"literal":"n"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$6","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.atan(d[4])}},{"name":"N$string$7","symbols":[{"literal":"a"},{"literal":"t"},{"literal":"a"},{"literal":"n"},{"literal":"2"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$7","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.atan2(d[4],d[8])}},{"name":"N$string$8","symbols":[{"literal":"c"},{"literal":"e"},{"literal":"i"},{"literal":"l"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$8","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.ceil(d[4])}},{"name":"N$string$9","symbols":[{"literal":"c"},{"literal":"l"},{"literal":"a"},{"literal":"m"},{"literal":"p"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$9","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.min(Math.max(d[4],d[8]),d[12])}},{"name":"N$string$10","symbols":[{"literal":"c"},{"literal":"o"},{"literal":"s"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$10","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.cos(d[4])}},{"name":"N$string$11","symbols":[{"literal":"d"},{"literal":"e"},{"literal":"g"},{"literal":"r"},{"literal":"e"},{"literal":"e"},{"literal":"s"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$11","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[4]/Math.PI*180}},{"name":"N$string$12","symbols":[{"literal":"e"},{"literal":"x"},{"literal":"p"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$12","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.exp(d[4])}},{"name":"N$string$13","symbols":[{"literal":"f"},{"literal":"l"},{"literal":"o"},{"literal":"o"},{"literal":"r"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$13","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.floor(d[4])}},{"name":"N$string$14","symbols":[{"literal":"l"},{"literal":"n"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$14","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.log(d[4])}},{"name":"N$string$15","symbols":[{"literal":"l"},{"literal":"o"},{"literal":"g"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$15","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.log(d[8])/Math.log(d[4])}},{"name":"N$string$16","symbols":[{"literal":"l"},{"literal":"o"},{"literal":"g"},{"literal":"1"},{"literal":"0"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$16","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.log10(d[4])}},{"name":"N$string$17","symbols":[{"literal":"m"},{"literal":"a"},{"literal":"x"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$17","_",{"literal":"("},"_","var_args","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.max.apply(Math,_toConsumableArray(d[4].filter(function(x){return x!==null})))}},{"name":"N$string$18","symbols":[{"literal":"m"},{"literal":"i"},{"literal":"n"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$18","_",{"literal":"("},"_","var_args","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.min.apply(Math,_toConsumableArray(d[4].filter(function(x){return x!==null})))}},{"name":"N$string$19","symbols":[{"literal":"p"},{"literal":"i"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$19","_",{"literal":"("},"_",{"literal":")"}],"postprocess":function postprocess(d){return Math.PI}},{"name":"N$string$20","symbols":[{"literal":"p"},{"literal":"o"},{"literal":"w"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$20","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.pow(d[4],d[8])}},{"name":"N$string$21","symbols":[{"literal":"r"},{"literal":"a"},{"literal":"d"},{"literal":"i"},{"literal":"a"},{"literal":"n"},{"literal":"s"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$21","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[4]*Math.PI/180}},{"name":"N$string$22","symbols":[{"literal":"r"},{"literal":"a"},{"literal":"n"},{"literal":"d"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$22","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[4]+Math.round(Math.random()*(d[8]-d[4]))}},{"name":"N$string$23","symbols":[{"literal":"r"},{"literal":"a"},{"literal":"n"},{"literal":"d"},{"literal":"f"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$23","_",{"literal":"("},"_",{"literal":")"}],"postprocess":function postprocess(d){return Math.random()}},{"name":"N$string$24","symbols":[{"literal":"r"},{"literal":"a"},{"literal":"n"},{"literal":"d"},{"literal":"f"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$24","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[4]+Math.random()*(1-d[4])}},{"name":"N$string$25","symbols":[{"literal":"r"},{"literal":"a"},{"literal":"n"},{"literal":"d"},{"literal":"f"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$25","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[4]+Math.random()*(d[8]-d[4])}},{"name":"N$string$26","symbols":[{"literal":"r"},{"literal":"o"},{"literal":"u"},{"literal":"n"},{"literal":"d"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$26","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.round(d[4])}},{"name":"N$string$27","symbols":[{"literal":"r"},{"literal":"o"},{"literal":"u"},{"literal":"n"},{"literal":"d"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$27","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Number(Math.round(d[4]+"e"+d[8])+"e-"+d[8])}},{"name":"N$string$28","symbols":[{"literal":"s"},{"literal":"i"},{"literal":"n"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$28","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.sin(d[4])}},{"name":"N$string$29","symbols":[{"literal":"s"},{"literal":"q"},{"literal":"r"},{"literal":"t"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$29","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.sqrt(d[4])}},{"name":"N$string$30","symbols":[{"literal":"t"},{"literal":"a"},{"literal":"n"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$30","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return Math.tan(d[4])}},{"name":"N$string$31","symbols":[{"literal":"C"},{"literal":"A"},{"literal":"S"},{"literal":"E"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N$string$32","symbols":[{"literal":"E"},{"literal":"L"},{"literal":"S"},{"literal":"E"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N$string$33","symbols":[{"literal":"E"},{"literal":"N"},{"literal":"D"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$31","_","when_args","_","N$string$32","_","P0","_","N$string$33"],"postprocess":function postprocess(d){return d[2]!==undefined?d[2]:d[6]}},{"name":"N$string$34","symbols":[{"literal":"c"},{"literal":"o"},{"literal":"a"},{"literal":"l"},{"literal":"e"},{"literal":"s"},{"literal":"c"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$34","_",{"literal":"("},"_","var_args","_",{"literal":")"}],"postprocess":function postprocess(d){var _d$4$find;return(_d$4$find=d[4].find(function(x){return x!==null}))!==null&&_d$4$find!==void 0?_d$4$find:null}},{"name":"N$string$35","symbols":[{"literal":"i"},{"literal":"f"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$35","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[4]?d[8]:d[12]}},{"name":"N$string$36","symbols":[{"literal":"n"},{"literal":"u"},{"literal":"l"},{"literal":"l"},{"literal":"i"},{"literal":"f"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$36","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[4]===d[8]?null:d[4]}},{"name":"N$string$37","symbols":[{"literal":"r"},{"literal":"e"},{"literal":"g"},{"literal":"e"},{"literal":"x"},{"literal":"p"},{"literal":"_"},{"literal":"m"},{"literal":"a"},{"literal":"t"},{"literal":"c"},{"literal":"h"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$37","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return d[4].search(new RegExp(d[8]))+1}},{"name":"N$string$38","symbols":[{"literal":"a"},{"literal":"t"},{"literal":"t"},{"literal":"r"},{"literal":"i"},{"literal":"b"},{"literal":"u"},{"literal":"t"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$38","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){var _window$qwc2Expressio3,_window$qwc2Expressio4;return(_window$qwc2Expressio3=(_window$qwc2Expressio4=window.qwc2ExpressionParserContext.feature.properties)===null||_window$qwc2Expressio4===void 0?void 0:_window$qwc2Expressio4[d[4]])!==null&&_window$qwc2Expressio3!==void 0?_window$qwc2Expressio3:null}},{"name":"N$string$39","symbols":[{"literal":"c"},{"literal":"u"},{"literal":"r"},{"literal":"r"},{"literal":"e"},{"literal":"n"},{"literal":"t"},{"literal":"_"},{"literal":"v"},{"literal":"a"},{"literal":"l"},{"literal":"u"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$39","_",{"literal":"("},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){var _window$qwc2Expressio5,_window$qwc2Expressio6;return(_window$qwc2Expressio5=(_window$qwc2Expressio6=window.qwc2ExpressionParserContext.feature.properties)===null||_window$qwc2Expressio6===void 0?void 0:_window$qwc2Expressio6[d[4]])!==null&&_window$qwc2Expressio5!==void 0?_window$qwc2Expressio5:null}},{"name":"N$string$40","symbols":[{"literal":"a"},{"literal":"t"},{"literal":"t"},{"literal":"r"},{"literal":"i"},{"literal":"b"},{"literal":"u"},{"literal":"t"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$40","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){var _d$4$properties$d$,_d$;return(_d$4$properties$d$=(_d$=d[4])===null||_d$===void 0||(_d$=_d$.properties)===null||_d$===void 0?void 0:_d$[d[8]])!==null&&_d$4$properties$d$!==void 0?_d$4$properties$d$:null}},{"name":"N$string$41","symbols":[{"literal":"g"},{"literal":"e"},{"literal":"t"},{"literal":"_"},{"literal":"f"},{"literal":"e"},{"literal":"a"},{"literal":"t"},{"literal":"u"},{"literal":"r"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$41","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.getFeature(d[4],d[8],d[12])}},{"name":"N$string$42","symbols":[{"literal":"g"},{"literal":"e"},{"literal":"t"},{"literal":"_"},{"literal":"f"},{"literal":"e"},{"literal":"a"},{"literal":"t"},{"literal":"u"},{"literal":"r"},{"literal":"e"},{"literal":"_"},{"literal":"b"},{"literal":"y"},{"literal":"_"},{"literal":"i"},{"literal":"d"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$42","_",{"literal":"("},"_","P0","_",{"literal":","},"_","P0","_",{"literal":")"}],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.getFeature(d[4],"id",d[8])}},{"name":"N$string$43","symbols":[{"literal":"r"},{"literal":"e"},{"literal":"p"},{"literal":"r"},{"literal":"e"},{"literal":"s"},{"literal":"e"},{"literal":"n"},{"literal":"t"},{"literal":"_"},{"literal":"v"},{"literal":"a"},{"literal":"l"},{"literal":"u"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$43","_",{"literal":"("},"_","dqstring","_",{"literal":")"}],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.representValue(d[4])}},{"name":"N$subexpression$1","symbols":[/[pP]/,/[iI]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"N","symbols":["N$subexpression$1"],"postprocess":function postprocess(d){return Math.PI}},{"name":"N$subexpression$2","symbols":[/[eE]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"N","symbols":["N$subexpression$2"],"postprocess":function postprocess(d){return Math.E}},{"name":"N$subexpression$3","symbols":[/[nN]/,/[uU]/,/[lL]/,/[lL]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"N","symbols":["N$subexpression$3"],"postprocess":function postprocess(d){return null}},{"name":"N$subexpression$4","symbols":[/[fF]/,/[aA]/,/[lL]/,/[sS]/,/[eE]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"N","symbols":["N$subexpression$4"],"postprocess":function postprocess(d){return false}},{"name":"N$subexpression$5","symbols":[/[tT]/,/[rR]/,/[uU]/,/[eE]/],"postprocess":function postprocess(d){return d.join("")}},{"name":"N","symbols":["N$subexpression$5"],"postprocess":function postprocess(d){return true}},{"name":"N$string$44","symbols":[{"literal":"@"},{"literal":"f"},{"literal":"e"},{"literal":"a"},{"literal":"t"},{"literal":"u"},{"literal":"r"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$44"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.feature}},{"name":"N$string$45","symbols":[{"literal":"@"},{"literal":"g"},{"literal":"e"},{"literal":"o"},{"literal":"m"},{"literal":"e"},{"literal":"t"},{"literal":"r"},{"literal":"y"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$45"],"postprocess":function postprocess(d){var _window$qwc2Expressio7;return(_window$qwc2Expressio7=window.qwc2ExpressionParserContext.feature)===null||_window$qwc2Expressio7===void 0?void 0:_window$qwc2Expressio7.geometry}},{"name":"N$string$46","symbols":[{"literal":"@"},{"literal":"i"},{"literal":"d"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$46"],"postprocess":function postprocess(d){var _window$qwc2Expressio8;return(_window$qwc2Expressio8=window.qwc2ExpressionParserContext.feature)===null||_window$qwc2Expressio8===void 0?void 0:_window$qwc2Expressio8.id}},{"name":"N$string$47","symbols":[{"literal":"@"},{"literal":"l"},{"literal":"a"},{"literal":"y"},{"literal":"e"},{"literal":"r"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$47"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.layer}},{"name":"N$string$48","symbols":[{"literal":"@"},{"literal":"l"},{"literal":"a"},{"literal":"y"},{"literal":"e"},{"literal":"r"},{"literal":"_"},{"literal":"n"},{"literal":"a"},{"literal":"m"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$48"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.layer}},{"name":"N$string$49","symbols":[{"literal":"@"},{"literal":"l"},{"literal":"a"},{"literal":"y"},{"literal":"e"},{"literal":"r"},{"literal":"_"},{"literal":"c"},{"literal":"r"},{"literal":"s"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$49"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.projection}},{"name":"N$string$50","symbols":[{"literal":"@"},{"literal":"p"},{"literal":"r"},{"literal":"o"},{"literal":"j"},{"literal":"e"},{"literal":"c"},{"literal":"t"},{"literal":"_"},{"literal":"b"},{"literal":"a"},{"literal":"s"},{"literal":"e"},{"literal":"n"},{"literal":"a"},{"literal":"m"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$50"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.mapPrefix}},{"name":"N$string$51","symbols":[{"literal":"@"},{"literal":"p"},{"literal":"r"},{"literal":"o"},{"literal":"j"},{"literal":"e"},{"literal":"c"},{"literal":"t"},{"literal":"_"},{"literal":"c"},{"literal":"r"},{"literal":"s"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$51"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.projection}},{"name":"N$string$52","symbols":[{"literal":"@"},{"literal":"q"},{"literal":"g"},{"literal":"i"},{"literal":"s"},{"literal":"_"},{"literal":"l"},{"literal":"o"},{"literal":"c"},{"literal":"a"},{"literal":"l"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$52"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.lang}},{"name":"N$string$53","symbols":[{"literal":"@"},{"literal":"u"},{"literal":"s"},{"literal":"e"},{"literal":"r"},{"literal":"_"},{"literal":"a"},{"literal":"c"},{"literal":"c"},{"literal":"o"},{"literal":"u"},{"literal":"n"},{"literal":"t"},{"literal":"_"},{"literal":"n"},{"literal":"a"},{"literal":"m"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$53"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.username}},{"name":"N$string$54","symbols":[{"literal":"@"},{"literal":"c"},{"literal":"l"},{"literal":"o"},{"literal":"u"},{"literal":"d"},{"literal":"_"},{"literal":"u"},{"literal":"s"},{"literal":"e"},{"literal":"r"},{"literal":"n"},{"literal":"a"},{"literal":"m"},{"literal":"e"}],"postprocess":function joiner(d){return d.join("")}},{"name":"N","symbols":["N$string$54"],"postprocess":function postprocess(d){return window.qwc2ExpressionParserContext.username}},{"name":"var_args","symbols":["P0"],"postprocess":function postprocess(d){return[d[0]]}},{"name":"var_args","symbols":["var_args","_",{"literal":","},"_","P0"],"postprocess":function postprocess(d){return[].concat(_toConsumableArray(d[0]),[d[4]])}},{"name":"when_args$string$1","symbols":[{"literal":"W"},{"literal":"H"},{"literal":"E"},{"literal":"N"}],"postprocess":function joiner(d){return d.join("")}},{"name":"when_args$string$2","symbols":[{"literal":"T"},{"literal":"H"},{"literal":"E"},{"literal":"N"}],"postprocess":function joiner(d){return d.join("")}},{"name":"when_args","symbols":["when_args$string$1","_","P0","_","when_args$string$2","_","P0"],"postprocess":function postprocess(d){return d[2]?d[6]:undefined}},{"name":"when_args$string$3","symbols":[{"literal":"W"},{"literal":"H"},{"literal":"E"},{"literal":"N"}],"postprocess":function joiner(d){return d.join("")}},{"name":"when_args$string$4","symbols":[{"literal":"T"},{"literal":"H"},{"literal":"E"},{"literal":"N"}],"postprocess":function joiner(d){return d.join("")}},{"name":"when_args","symbols":["when_args","_","when_args$string$3","_","P0","_","when_args$string$4","_","P0"],"postprocess":function postprocess(d){return d[0]!==undefined?d[0]:d[4]?d[8]:undefined}},{"name":"float","symbols":["int",{"literal":"."},"int"],"postprocess":function postprocess(d){return parseFloat(d[0]+d[1]+d[2])}},{"name":"float","symbols":["int"],"postprocess":function postprocess(d){return parseInt(d[0])}},{"name":"int$ebnf$1","symbols":[/[0-9]/]},{"name":"int$ebnf$1","symbols":["int$ebnf$1",/[0-9]/],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"int","symbols":["int$ebnf$1"],"postprocess":function postprocess(d){return d[0].join("")}},{"name":"_$ebnf$1","symbols":[]},{"name":"_$ebnf$1","symbols":["_$ebnf$1",/[\s]/],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"_","symbols":["_$ebnf$1"],"postprocess":function postprocess(d){return null}},{"name":"__$ebnf$1","symbols":[/[\s]/]},{"name":"__$ebnf$1","symbols":["__$ebnf$1",/[\s]/],"postprocess":function arrpush(d){return d[0].concat([d[1]])}},{"name":"__","symbols":["__$ebnf$1"],"postprocess":function postprocess(d){return null}}],ParserStart:"main"};if(typeof module!=="undefined"&&typeof module.exports!=="undefined"){module.exports=grammar}else{window.grammar=grammar}})();
@@ -24,6 +24,9 @@ function generateUUID() {
24
24
  });
25
25
  return '{' + result + '}';
26
26
  }
27
+ function replaceWildcards(str) {
28
+ return "^" + str.replace(/(?<!\\)%/g, '.*').replace(/(?<!\\)_/g, '.{1}') + "$";
29
+ }
27
30
  %}
28
31
 
29
32
  main -> _ P0 _ {% function(d) {return d[1]; } %}
@@ -43,6 +46,11 @@ P2 -> P2 _ "<" _ P3 {% function(d) { return asFilter(d) ? [d[0],
43
46
  | P2 _ "<=" _ P3 {% function(d) { return asFilter(d) ? [d[0], d[2], d[4]] : (d[0] <= d[4]); } %}
44
47
  | P2 _ "=" _ P3 {% function(d) { return asFilter(d) ? [d[0], d[2], d[4]] : (d[0] == d[4]); } %}
45
48
  | P2 _ "<>" _ P3 {% function(d) { return asFilter(d) ? [d[0], "!=", d[4]] : (d[0] != d[4]); } %}
49
+ | P2 _ "IS"i _ P3 {% function(d) { return asFilter(d) ? [d[0], "=", d[4]] : d[0] === d[4]; } %}
50
+ | P2 _ "IS"i _ "NOT"i _ P3 {% function(d) { return asFilter(d) ? [d[0], "!=", d[6]] : d[0] !== d[6]; } %}
51
+ | P2 _ "~" _ P3 {% function(d) { return asFilter(d) ? [d[0], "~", d[4]] : new RegExp(d[4]).exec(d[0]) !== null; } %}
52
+ | P2 _ "LIKE" _ P3 {% function(d) { return asFilter(d) ? [d[0], "LIKE", d[4]] : new RegExp(replaceWildcards(d[4])).exec(d[0]) !== null; } %}
53
+ | P2 _ "ILIKE" _ P3 {% function(d) { return asFilter(d) ? [d[0], "ILIKE", d[4]] : new RegExp(replaceWildcards(d[4]), 'i').exec(d[0]) !== null; } %}
46
54
  | P3 {% id %}
47
55
 
48
56
  # Priority-3 operators (addition, subtraction, concatenation)
@@ -54,12 +62,12 @@ P3 -> P3 _ "+" _ P4 {% function(d) { return d[0] + d[4]; } %}
54
62
  # Priority-4 operators (multiplication, division)
55
63
  P4 -> P4 _ "*" _ P5 {% function(d) { return d[0] * d[4]; } %}
56
64
  | P4 _ "/" _ P5 {% function(d) { return d[0] / d[4]; } %}
65
+ | P4 _ "//" _ P5 {% function(d) { return Maht.floor(d[0] / d[4]); } %}
66
+ | P4 _ "%" _ P5 {% function(d) { return d[0] % d[4]; } %}
57
67
  | P5 {% id %}
58
68
 
59
69
  # Priority-5 operators (exponent, IS, IS NOT)
60
70
  P5 -> P6 _ "^" _ P5 {% function(d) { return Math.pow(d[0], d[4]); } %}
61
- | P5 __ "IS"i __ P6 {% function(d) { return asFilter(d) ? [d[0], "=", d[4]] : d[0] === d[4]; } %}
62
- | P5 __ "IS"i __ "NOT"i __ P6 {% function(d) { return asFilter(d) ? [d[0], "!=", d[6]] : d[0] !== d[6]; } %}
63
71
  | P6 {% id %}
64
72
 
65
73
  # Priority-6 operators (parenthesis, number, unary operators)
@@ -74,16 +82,34 @@ N -> float {% id %}
74
82
  | dqstring {% function(d) { return asFilter(d) ? d[0] : window.qwc2ExpressionParserContext.feature.properties?.[d[0]] ?? null; } %}
75
83
  | "uuid" _ "(" _ ")" {% function(d) { return generateUUID(); } %}
76
84
  | "now" _ "(" _ ")" {% function(d) { return (new Date()).toISOString(); } %}
77
- | "sin" _ "(" _ P0 _ ")" {% function(d) { return Math.sin(d[4]); } %}
78
- | "cos" _ "(" _ P0 _ ")" {% function(d) { return Math.cos(d[4]); } %}
79
- | "tan" _ "(" _ P0 _ ")" {% function(d) { return Math.tan(d[4]); } %}
80
- | "asin" _ "(" _ P0 _ ")" {% function(d) { return Math.asin(d[4]); } %}
85
+ | "abs" _ "(" _ P0 _ ")" {% function(d) { return Math.abs(d[4]); } %}
81
86
  | "acos" _ "(" _ P0 _ ")" {% function(d) { return Math.acos(d[4]); } %}
87
+ | "asin" _ "(" _ P0 _ ")" {% function(d) { return Math.asin(d[4]); } %}
82
88
  | "atan" _ "(" _ P0 _ ")" {% function(d) { return Math.atan(d[4]); } %}
83
- | "sqrt" _ "(" _ P0 _ ")" {% function(d) { return Math.sqrt(d[4]); } %}
89
+ | "atan2" _ "(" _ P0 _ "," _ P0 _ ")" {% function(d) { return Math.atan2(d[4], d[8]); } %}
90
+ | "ceil" _ "(" _ P0 _ ")" {% function(d) { return Math.ceil(d[4]); } %}
91
+ | "clamp" _ "(" _ P0 _ "," _ P0 _ "," _ P0 _ ")" {% function(d) { return Math.min(Math.max(d[4], d[8]), d[12]); } %}
92
+ | "cos" _ "(" _ P0 _ ")" {% function(d) { return Math.cos(d[4]); } %}
93
+ | "degrees" _ "(" _ P0 _ ")" {% function(d) { return d[4] / Math.PI * 180; } %}
94
+ | "exp" _ "(" _ P0 _ ")" {% function(d) { return Math.exp(d[4]); } %}
95
+ | "floor" _ "(" _ P0 _ ")" {% function(d) { return Math.floor(d[4]); } %}
84
96
  | "ln" _ "(" _ P0 _ ")" {% function(d) { return Math.log(d[4]); } %}
85
- | "atan2" _ "(" _ P0 _ "," _ P0 _ ")" {% function(d) { return Math.atan2(d[4], d[8]); } %}
97
+ | "log" _ "(" _ P0 _ "," _ P0 _ ")" {% function(d) { return Math.log(d[8]) / Math.log(d[4]); } %}
98
+ | "log10" _ "(" _ P0 _ ")" {% function(d) { return Math.log10(d[4]); } %}
99
+ | "max" _ "(" _ var_args _ ")" {% function(d) { return Math.max(...d[4].filter(x => x !== null)); } %}
100
+ | "min" _ "(" _ var_args _ ")" {% function(d) { return Math.min(...d[4].filter(x => x !== null)); } %}
101
+ | "pi" _ "(" _ ")" {% function(d) { return Math.PI; } %}
86
102
  | "pow" _ "(" _ P0 _ "," _ P0 _ ")" {% function(d) { return Math.pow(d[4], d[8]); } %}
103
+ | "radians" _ "(" _ P0 _ ")" {% function(d) { return d[4] * Math.PI / 180; } %}
104
+ | "rand" _ "(" _ P0 _ "," _ P0 _ ")" {% function(d) { return d[4] + Math.round(Math.random() * (d[8] - d[4])); } %}
105
+ | "randf" _ "(" _ ")" {% function(d) { return Math.random(); } %}
106
+ | "randf" _ "(" _ P0 _ ")" {% function(d) { return d[4] + Math.random() * (1 - d[4]); } %}
107
+ | "randf" _ "(" _ P0 _ "," _ P0 _ ")" {% function(d) { return d[4] + Math.random() * (d[8] - d[4]); } %}
108
+ | "round" _ "(" _ P0 _ ")" {% function(d) { return Math.round(d[4]); } %}
109
+ | "round" _ "(" _ P0 _ "," _ P0 _ ")" {% function(d) { return Number(Math.round(d[4] + 'e' + d[8]) + 'e-' + d[8]); } %}
110
+ | "sin" _ "(" _ P0 _ ")" {% function(d) { return Math.sin(d[4]); } %}
111
+ | "sqrt" _ "(" _ P0 _ ")" {% function(d) { return Math.sqrt(d[4]); } %}
112
+ | "tan" _ "(" _ P0 _ ")" {% function(d) { return Math.tan(d[4]); } %}
87
113
  | "CASE" _ when_args _ "ELSE" _ P0 _ "END" {% function(d) { return d[2] !== undefined ? d[2] : d[6]; } %}
88
114
  | "coalesce" _ "(" _ var_args _ ")" {% function(d) { return d[4].find(x => x !== null) ?? null; } %}
89
115
  | "if" _ "(" _ P0 _ "," _ P0 _ "," _ P0 _ ")" {% function(d) { return d[4] ? d[8] : d[12]; } %}
@@ -1,25 +0,0 @@
1
- div.mapexport3d-event-container {
2
- z-index: 2;
3
- position: absolute;
4
- left: 0;
5
- top: 0;
6
- right: 0;
7
- bottom: 0;
8
- }
9
-
10
- div.mapexport3d-frame {
11
- position: absolute;
12
- box-shadow: rgba(0, 0, 0, 0.5) 0 0 0 30000px;
13
- white-space: nowrap;
14
- display: flex;
15
- align-items: center;
16
- justify-content: center;
17
- font-size: small;
18
- overflow: hidden;
19
- user-select: none;
20
- }
21
-
22
- span.mapexport3d-frame-label {
23
- padding: 0.25em;
24
- background: rgba(255, 255, 255, 0.5);
25
- }