module NSWTopo::ArcGIS::Query
def base_query(**options)
def base_query(**options) case when @unique raise UniqueFieldError when @geometry raise "polgyon geometry required" unless @geometry.polygon? options[:geometry] = { rings: @geometry.reproject_to(projection).coordinates.map(&:reverse) }.to_json options[:geometryType] = "esriGeometryPolygon" options[:where] = join_clauses(*@where) if @where when @where options[:where] = join_clauses(*@where) else oid_field = @layer["fields"].find do |field| field["type"] == "esriFieldTypeOID" end&.fetch("name") options[:where] = oid_field ? "#{oid_field} IS NOT NULL" : "1=1" end options end