@malloydata/render 0.0.224-dev241217161218 → 0.0.224-dev241217171758

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.
@@ -4357,7 +4357,7 @@ const axe = {
4357
4357
  T: ["string", "number", "date", "timestamp", "boolean", "json"]
4358
4358
  },
4359
4359
  takes: { value: { dimension: { generic: "T" } } },
4360
- returns: { measure: "string" },
4360
+ returns: { measure: { sql_native: "hyperloglog" } },
4361
4361
  isSymmetric: !0,
4362
4362
  impl: {
4363
4363
  function: "APPROX_SET"
@@ -4368,7 +4368,7 @@ const axe = {
4368
4368
  T: ["string", "number", "date", "timestamp", "boolean", "json"]
4369
4369
  },
4370
4370
  takes: { value: { dimension: { generic: "T" } }, accuracy: "number" },
4371
- returns: { measure: "string" },
4371
+ returns: { measure: { sql_native: "hyperloglog" } },
4372
4372
  isSymmetric: !0,
4373
4373
  impl: {
4374
4374
  function: "APPROX_SET"
@@ -4376,30 +4376,30 @@ const axe = {
4376
4376
  }
4377
4377
  }, yxe = {
4378
4378
  takes: {
4379
- value: "string"
4379
+ value: { sql_native: "hyperloglog" }
4380
4380
  },
4381
- returns: { measure: "string" },
4381
+ returns: { measure: { sql_native: "hyperloglog" } },
4382
4382
  impl: { function: "MERGE" },
4383
4383
  isSymmetric: !0
4384
4384
  }, Exe = {
4385
4385
  takes: {
4386
- value: "string"
4386
+ value: { sql_native: "hyperloglog" }
4387
4387
  },
4388
4388
  returns: { dimension: "number" },
4389
4389
  impl: { function: "CARDINALITY" }
4390
4390
  }, Axe = {
4391
4391
  takes: {
4392
- value: "string"
4392
+ value: { sql_native: "hyperloglog" }
4393
4393
  },
4394
- returns: { dimension: "string" },
4394
+ returns: { dimension: { sql_native: "varbinary" } },
4395
4395
  impl: {
4396
4396
  sql: "CAST(${value} AS VARBINARY)"
4397
4397
  }
4398
4398
  }, vxe = {
4399
4399
  takes: {
4400
- value: "string"
4400
+ value: { sql_native: "varbinary" }
4401
4401
  },
4402
- returns: { dimension: "string" },
4402
+ returns: { dimension: { sql_native: "hyperloglog" } },
4403
4403
  impl: {
4404
4404
  sql: "CAST(${value} AS HyperLogLog)"
4405
4405
  }
@@ -75,7 +75,7 @@ ${(0,txe.indent)(n)}
75
75
  EXTRACT('epoch_${i}', ${r.sql}) - EXTRACT('epoch_${i}', ${n.sql}),
76
76
  '1970-01-01 00:00:00'::TIMESTAMP_NTZ
77
77
  )
78
- )`}sqlRegexpMatch(e){return`REGEXP_INSTR(${e.kids.expr.sql}, ${e.kids.regex.sql}) != 0`}sqlSampleTable(e,n){if(n!==void 0){if((0,es.isSamplingEnable)(n)&&n.enable&&(n=this.defaultSampling),(0,es.isSamplingRows)(n))return`(SELECT * FROM ${e} TABLESAMPLE (${n.rows} ROWS))`;if((0,es.isSamplingPercent)(n))return`(SELECT * FROM ${e} TABLESAMPLE (${n.percent}))`}return e}sqlOrderBy(e){return`ORDER BY ${e.map(n=>`${n} NULLS LAST`).join(",")}`}sqlLiteralString(e){return"'"+e.replace(/\\/g,"\\\\").replace(/'/g,"\\'")+"'"}sqlLiteralRegexp(e){return"'"+e.replace(/\\/g,"\\\\").replace(/'/g,"\\'")+"'"}getDialectFunctionOverrides(){return(0,kk.expandOverrideMap)(rxe.SNOWFLAKE_MALLOY_STANDARD_OVERLOADS)}getDialectFunctions(){return(0,kk.expandBlueprintMap)(nxe.SNOWFLAKE_DIALECT_FUNCTIONS)}malloyTypeToSQLType(e){if(e.type==="string")return"VARCHAR";if(e.type==="number")return e.numberType==="integer"?"INTEGER":"DOUBLE";if(e.type==="record"||(0,es.isRepeatedRecord)(e)){const r=`OBJECT(${e.fields.reduce((i,s)=>{var o;if((0,es.isAtomic)(s)){const u=(o=s.as)!==null&&o!==void 0?o:s.name,a=`${this.sqlMaybeQuoteIdentifier(u)} ${this.malloyTypeToSQLType(s)}`;i.push(a)}return i},[]).join(",")})`;return e.type==="record"?r:`ARRAY(${r})`}else if((0,es.isScalarArray)(e))return`ARRAY(${this.malloyTypeToSQLType(e.elementTypeDef)})`;return e.type}sqlTypeToMalloyType(e){var n,r;const i=(r=(n=e.match(/^([\w\s]+)/))===null||n===void 0?void 0:n.at(0))!==null&&r!==void 0?r:e;return sxe[i.trim().toLowerCase()]||{type:"sql native",rawType:e}}castToString(e){return`TO_VARCHAR(${e})`}concat(...e){return e.join(" || ")}validateTypeName(e){return e.match(/^[A-Za-z\s(),[\]0-9]*$/)!==null}sqlLiteralRecord(e){var n,r;const i=[];for(const s of e.typeDef.fields){const o=(n=s.as)!==null&&n!==void 0?n:s.name,u=`'${o}'`,a=(r=e.kids[o].sql)!==null&&r!==void 0?r:"internal-error-record-literal";i.push(`${u},${a}`)}return`OBJECT_CONSTRUCT_KEEP_NULL(${i.join(",")})`}sqlLiteralArray(e){return`[${e.kids.values.map(i=>i.sql).join(",")}]`}}AE.SnowflakeDialect=oxe,function(t){var e=T&&T.__createBinding||(Object.create?function(r,i,s,o){o===void 0&&(o=s);var u=Object.getOwnPropertyDescriptor(i,s);(!u||("get"in u?!i.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return i[s]}}),Object.defineProperty(r,o,u)}:function(r,i,s,o){o===void 0&&(o=s),r[o]=i[s]}),n=T&&T.__exportStar||function(r,i){for(var s in r)s!=="default"&&!Object.prototype.hasOwnProperty.call(i,s)&&e(i,r,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(AE,t)}(_6);var S6={},nd={},CE={};Object.defineProperty(CE,"__esModule",{value:!0}),CE.TRINO_DIALECT_FUNCTIONS=void 0;const uxe={takes:{value:"number",percentage:"number"},returns:{measure:"number"},impl:{function:"APPROX_PERCENTILE"}},axe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}}},returns:{measure:{generic:"T"}},impl:{function:"ARBITRARY"}},lxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_OR_AGG"}},cxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_AND_AGG"}},fxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_XOR_AGG"}},xxe={takes:{value:{dimension:"boolean"}},returns:{measure:"boolean"},impl:{function:"BOOL_AND"}},dxe={takes:{value:{dimension:"boolean"}},returns:{measure:"boolean"},impl:{function:"BOOL_OR"}},hxe={takes:{y:{dimension:"number"},x:{dimension:"number"}},returns:{measure:"number"},impl:{sql:"CORR(${y}, ${x})"}},pxe={takes:{value:{dimension:"any"}},returns:{measure:"number"},impl:{function:"APPROX_DISTINCT"},isSymmetric:!0},gxe={default:{generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}}},returns:{measure:"string"},isSymmetric:!0,impl:{function:"APPROX_SET"}},with_percent:{generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},accuracy:"number"},returns:{measure:"string"},isSymmetric:!0,impl:{function:"APPROX_SET"}}},mxe={takes:{value:"string"},returns:{measure:"string"},impl:{function:"MERGE"},isSymmetric:!0},yxe={takes:{value:"string"},returns:{dimension:"number"},impl:{function:"CARDINALITY"}},Exe={takes:{value:"string"},returns:{dimension:"string"},impl:{sql:"CAST(${value} AS VARBINARY)"}},Axe={takes:{value:"string"},returns:{dimension:"string"},impl:{sql:"CAST(${value} AS HyperLogLog)"}},_xe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},order_by_val:{dimension:"any"}},returns:{measure:{generic:"T"}},impl:{function:"MAX_BY"},isSymmetric:!0},vxe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},order_by_val:{dimension:"any"}},returns:{measure:{generic:"T"}},impl:{function:"MIN_BY"},isSymmetric:!0},C6={default_separator:{takes:{value:{dimension:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(${value} ${order_by:}), ',')"}},with_separator:{takes:{value:{dimension:"string"},separator:{literal:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(${value} ${order_by:}), ${separator})"}}},Sxe={default_separator:{...C6.default_separator,isSymmetric:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(DISTINCT ${value} ${order_by:}), ',')"}},with_separator:{...C6.with_separator,isSymmetric:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(DISTINCT ${value} ${order_by:}), ${separator})"}}},Cxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"VARIANCE"}},bxe={takes:{val1:"number",val2:"number"},returns:"number",impl:{function:"BITWISE_AND"}},Txe={takes:{val1:"number",val2:"number"},returns:"number",impl:{function:"BITWISE_OR"}},Rxe={takes:{ts_val:"timestamp",format:"string"},returns:"string",impl:{function:"DATE_FORMAT"}},Oxe={takes:{ts_string:"string",format:"string"},returns:"timestamp",impl:{sql:"DATE_PARSE(${ts_string}, ${format})"}},Dxe={takes:{unixtime:"number"},returns:"timestamp",impl:{function:"FROM_UNIXTIME"}},wxe={takes:{json_val:"string",json_path:"string"},returns:"string",impl:{function:"JSON_EXTRACT_SCALAR"}},Fxe={takes:{str:"string",pattern:["string","regular expression"]},returns:"boolean",impl:{function:"REGEXP_LIKE"}},Nxe={remove_matches:{takes:{input_val:"string",regexp_pattern:["string","regular expression"]},returns:"string",impl:{function:"REGEXP_REPLACE"}},replace_matches:{takes:{input_val:"string",regexp_pattern:["string","regular expression"],replacement:"string"},returns:"string",impl:{function:"REGEXP_REPLACE"}}},Lxe={takes:{ts_val:"timestamp"},returns:"number",impl:{function:"TO_UNIXTIME"}},Ixe={takes:{},returns:{calculation:"number"},impl:{function:"PERCENT_RANK",needsWindowOrderBy:!0}},Bxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_FRAGMENT"}},$xe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_HOST"}},kxe={takes:{url:"string",parameter:"string"},returns:"string",impl:{function:"URL_EXTRACT_PARAMETER"}},Pxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_PATH"}},Mxe={takes:{url:"string"},returns:"number",impl:{function:"URL_EXTRACT_PORT"}},jxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_PROTOCOL"}},Uxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_QUERY"}},qxe={takes:{src:"string",splitChar:"string"},returns:{array:"string"},impl:{function:"SPLIT"}};CE.TRINO_DIALECT_FUNCTIONS={approx_percentile:uxe,arbitrary:axe,bitwise_and_agg:lxe,bitwise_or_agg:cxe,bitwise_xor_agg:fxe,bool_and:xxe,bool_or:dxe,corr:hxe,count_approx:pxe,hll_accumulate:gxe,hll_combine:mxe,max_by:_xe,min_by:vxe,string_agg:C6,string_agg_distinct:Sxe,variance:Cxe,bitwise_and:bxe,bitwise_or:Txe,date_format:Rxe,date_parse:Oxe,from_unixtime:Dxe,hll_estimate:yxe,hll_export:Exe,hll_import:Axe,json_extract_scalar:wxe,regexp_like:Fxe,regexp_replace:Nxe,to_unixtime:Lxe,url_extract_fragment:Bxe,url_extract_host:$xe,url_extract_parameter:kxe,url_extract_path:Pxe,url_extract_port:Mxe,url_extract_protocol:jxe,url_extract_query:Uxe,percent_rank:Ixe,split:qxe};var bE={};Object.defineProperty(bE,"__esModule",{value:!0}),bE.TRINO_MALLOY_STANDARD_OVERLOADS=void 0;const b6=at;bE.TRINO_MALLOY_STANDARD_OVERLOADS={byte_length:{sql:"(LENGTH(CAST(${value} AS VARBINARY)))"},chr:{sql:"CASE WHEN ${value} = 0 THEN '' ELSE CHR(${value}) END"},ascii:{sql:"CODEPOINT(NULLIF(CAST(${value} as VARCHAR(1)),''))"},unicode:{sql:"CODEPOINT(NULLIF(CAST(${value} as VARCHAR(1)),''))"},concat:{variadic:{expr:(0,b6.sql)`CONCAT(${(0,b6.spread)((0,b6.arg)("values"),"CAST(","AS VARCHAR)")})`}},div:{sql:"FLOOR(${dividend} / ${divisor})"},ifnull:{sql:"COALESCE(${value}, ${default})"},is_inf:{sql:"COALESCE(IS_INFINITE(${value}), false)"},log:{sql:"(LN(${value}) / LN(${base}))"},repeat:{sql:"ARRAY_JOIN(REPEAT(${value}, CASE WHEN ${value} IS NOT NULL THEN ${count} END),'')"},reverse:{sql:"REVERSE(CAST(${value} AS VARCHAR))"},starts_with:{sql:"COALESCE(STARTS_WITH(${value}, ${prefix}), false)"},ends_with:{sql:"COALESCE(STARTS_WITH(REVERSE(CAST(${value} AS VARCHAR)), REVERSE(CAST(${suffix} AS VARCHAR))), false)"},trunc:{to_integer:{sql:"CASE WHEN ${value} < 0 THEN CEIL(${value}) ELSE FLOOR(${value}) END"},to_precision:{sql:"CASE WHEN ${value} < 0 THEN CEIL(${value} * POW(10, ${precision})) / POW(10, ${precision}) ELSE FLOOR(${value} * POW(10, ${precision})) / POW(10, ${precision}) END"}}},Object.defineProperty(nd,"__esModule",{value:!0}),nd.PrestoDialect=nd.TrinoDialect=void 0;const Pk=Nt,iu=Ke,Mk=ql,Hxe=jl,jk=hE,zxe=CE,Qxe=bE;function Gxe(t){return["microsecond","millisecond","second","minute","hour","day"].includes(t)}function T6(t){const e=t.queryTimezone;if(e&&e!=="UTC")return e}const Wxe={string:"VARCHAR",number:"DOUBLE"},Vxe={varchar:{type:"string"},integer:{type:"number",numberType:"integer"},bigint:{type:"number",numberType:"integer"},smallint:{type:"number",numberType:"integer"},tinyint:{type:"number",numberType:"integer"},double:{type:"number",numberType:"float"},decimal:{type:"number",numberType:"float"},string:{type:"string"},date:{type:"date"},timestamp:{type:"timestamp"},boolean:{type:"boolean"}};class Hl extends jk.PostgresBase{constructor(){super(...arguments),this.name="trino",this.experimental=!1,this.defaultNumberType="DOUBLE",this.defaultDecimalType="DECIMAL",this.udfPrefix="__udf",this.hasFinalStage=!1,this.divisionIsInteger=!0,this.supportsSumDistinctFunction=!0,this.unnestWithNumbers=!1,this.defaultSampling={enable:!1},this.supportUnnestArrayAgg=!1,this.supportsAggDistinct=!1,this.supportsCTEinCoorelatedSubQueries=!1,this.dontUnionIndex=!0,this.supportsQualify=!0,this.supportsSafeCast=!0,this.supportsNesting=!0,this.cantPartitionWindowFunctionsOnExpressions=!1,this.orderByClause="output_name",this.nullMatchesFunctionSignature=!1,this.supportsSelectReplace=!1,this.supportsComplexFilteredSources=!1,this.supportsTempTables=!1,this.supportsCountApprox=!0,this.supportsHyperLogLog=!0,this.keywords=`
78
+ )`}sqlRegexpMatch(e){return`REGEXP_INSTR(${e.kids.expr.sql}, ${e.kids.regex.sql}) != 0`}sqlSampleTable(e,n){if(n!==void 0){if((0,es.isSamplingEnable)(n)&&n.enable&&(n=this.defaultSampling),(0,es.isSamplingRows)(n))return`(SELECT * FROM ${e} TABLESAMPLE (${n.rows} ROWS))`;if((0,es.isSamplingPercent)(n))return`(SELECT * FROM ${e} TABLESAMPLE (${n.percent}))`}return e}sqlOrderBy(e){return`ORDER BY ${e.map(n=>`${n} NULLS LAST`).join(",")}`}sqlLiteralString(e){return"'"+e.replace(/\\/g,"\\\\").replace(/'/g,"\\'")+"'"}sqlLiteralRegexp(e){return"'"+e.replace(/\\/g,"\\\\").replace(/'/g,"\\'")+"'"}getDialectFunctionOverrides(){return(0,kk.expandOverrideMap)(rxe.SNOWFLAKE_MALLOY_STANDARD_OVERLOADS)}getDialectFunctions(){return(0,kk.expandBlueprintMap)(nxe.SNOWFLAKE_DIALECT_FUNCTIONS)}malloyTypeToSQLType(e){if(e.type==="string")return"VARCHAR";if(e.type==="number")return e.numberType==="integer"?"INTEGER":"DOUBLE";if(e.type==="record"||(0,es.isRepeatedRecord)(e)){const r=`OBJECT(${e.fields.reduce((i,s)=>{var o;if((0,es.isAtomic)(s)){const u=(o=s.as)!==null&&o!==void 0?o:s.name,a=`${this.sqlMaybeQuoteIdentifier(u)} ${this.malloyTypeToSQLType(s)}`;i.push(a)}return i},[]).join(",")})`;return e.type==="record"?r:`ARRAY(${r})`}else if((0,es.isScalarArray)(e))return`ARRAY(${this.malloyTypeToSQLType(e.elementTypeDef)})`;return e.type}sqlTypeToMalloyType(e){var n,r;const i=(r=(n=e.match(/^([\w\s]+)/))===null||n===void 0?void 0:n.at(0))!==null&&r!==void 0?r:e;return sxe[i.trim().toLowerCase()]||{type:"sql native",rawType:e}}castToString(e){return`TO_VARCHAR(${e})`}concat(...e){return e.join(" || ")}validateTypeName(e){return e.match(/^[A-Za-z\s(),[\]0-9]*$/)!==null}sqlLiteralRecord(e){var n,r;const i=[];for(const s of e.typeDef.fields){const o=(n=s.as)!==null&&n!==void 0?n:s.name,u=`'${o}'`,a=(r=e.kids[o].sql)!==null&&r!==void 0?r:"internal-error-record-literal";i.push(`${u},${a}`)}return`OBJECT_CONSTRUCT_KEEP_NULL(${i.join(",")})`}sqlLiteralArray(e){return`[${e.kids.values.map(i=>i.sql).join(",")}]`}}AE.SnowflakeDialect=oxe,function(t){var e=T&&T.__createBinding||(Object.create?function(r,i,s,o){o===void 0&&(o=s);var u=Object.getOwnPropertyDescriptor(i,s);(!u||("get"in u?!i.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return i[s]}}),Object.defineProperty(r,o,u)}:function(r,i,s,o){o===void 0&&(o=s),r[o]=i[s]}),n=T&&T.__exportStar||function(r,i){for(var s in r)s!=="default"&&!Object.prototype.hasOwnProperty.call(i,s)&&e(i,r,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(AE,t)}(_6);var S6={},nd={},CE={};Object.defineProperty(CE,"__esModule",{value:!0}),CE.TRINO_DIALECT_FUNCTIONS=void 0;const uxe={takes:{value:"number",percentage:"number"},returns:{measure:"number"},impl:{function:"APPROX_PERCENTILE"}},axe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}}},returns:{measure:{generic:"T"}},impl:{function:"ARBITRARY"}},lxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_OR_AGG"}},cxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_AND_AGG"}},fxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_XOR_AGG"}},xxe={takes:{value:{dimension:"boolean"}},returns:{measure:"boolean"},impl:{function:"BOOL_AND"}},dxe={takes:{value:{dimension:"boolean"}},returns:{measure:"boolean"},impl:{function:"BOOL_OR"}},hxe={takes:{y:{dimension:"number"},x:{dimension:"number"}},returns:{measure:"number"},impl:{sql:"CORR(${y}, ${x})"}},pxe={takes:{value:{dimension:"any"}},returns:{measure:"number"},impl:{function:"APPROX_DISTINCT"},isSymmetric:!0},gxe={default:{generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}}},returns:{measure:{sql_native:"hyperloglog"}},isSymmetric:!0,impl:{function:"APPROX_SET"}},with_percent:{generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},accuracy:"number"},returns:{measure:{sql_native:"hyperloglog"}},isSymmetric:!0,impl:{function:"APPROX_SET"}}},mxe={takes:{value:{sql_native:"hyperloglog"}},returns:{measure:{sql_native:"hyperloglog"}},impl:{function:"MERGE"},isSymmetric:!0},yxe={takes:{value:{sql_native:"hyperloglog"}},returns:{dimension:"number"},impl:{function:"CARDINALITY"}},Exe={takes:{value:{sql_native:"hyperloglog"}},returns:{dimension:{sql_native:"varbinary"}},impl:{sql:"CAST(${value} AS VARBINARY)"}},Axe={takes:{value:{sql_native:"varbinary"}},returns:{dimension:{sql_native:"hyperloglog"}},impl:{sql:"CAST(${value} AS HyperLogLog)"}},_xe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},order_by_val:{dimension:"any"}},returns:{measure:{generic:"T"}},impl:{function:"MAX_BY"},isSymmetric:!0},vxe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},order_by_val:{dimension:"any"}},returns:{measure:{generic:"T"}},impl:{function:"MIN_BY"},isSymmetric:!0},C6={default_separator:{takes:{value:{dimension:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(${value} ${order_by:}), ',')"}},with_separator:{takes:{value:{dimension:"string"},separator:{literal:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(${value} ${order_by:}), ${separator})"}}},Sxe={default_separator:{...C6.default_separator,isSymmetric:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(DISTINCT ${value} ${order_by:}), ',')"}},with_separator:{...C6.with_separator,isSymmetric:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(DISTINCT ${value} ${order_by:}), ${separator})"}}},Cxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"VARIANCE"}},bxe={takes:{val1:"number",val2:"number"},returns:"number",impl:{function:"BITWISE_AND"}},Txe={takes:{val1:"number",val2:"number"},returns:"number",impl:{function:"BITWISE_OR"}},Rxe={takes:{ts_val:"timestamp",format:"string"},returns:"string",impl:{function:"DATE_FORMAT"}},Oxe={takes:{ts_string:"string",format:"string"},returns:"timestamp",impl:{sql:"DATE_PARSE(${ts_string}, ${format})"}},Dxe={takes:{unixtime:"number"},returns:"timestamp",impl:{function:"FROM_UNIXTIME"}},wxe={takes:{json_val:"string",json_path:"string"},returns:"string",impl:{function:"JSON_EXTRACT_SCALAR"}},Fxe={takes:{str:"string",pattern:["string","regular expression"]},returns:"boolean",impl:{function:"REGEXP_LIKE"}},Nxe={remove_matches:{takes:{input_val:"string",regexp_pattern:["string","regular expression"]},returns:"string",impl:{function:"REGEXP_REPLACE"}},replace_matches:{takes:{input_val:"string",regexp_pattern:["string","regular expression"],replacement:"string"},returns:"string",impl:{function:"REGEXP_REPLACE"}}},Lxe={takes:{ts_val:"timestamp"},returns:"number",impl:{function:"TO_UNIXTIME"}},Ixe={takes:{},returns:{calculation:"number"},impl:{function:"PERCENT_RANK",needsWindowOrderBy:!0}},Bxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_FRAGMENT"}},$xe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_HOST"}},kxe={takes:{url:"string",parameter:"string"},returns:"string",impl:{function:"URL_EXTRACT_PARAMETER"}},Pxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_PATH"}},Mxe={takes:{url:"string"},returns:"number",impl:{function:"URL_EXTRACT_PORT"}},jxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_PROTOCOL"}},Uxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_QUERY"}},qxe={takes:{src:"string",splitChar:"string"},returns:{array:"string"},impl:{function:"SPLIT"}};CE.TRINO_DIALECT_FUNCTIONS={approx_percentile:uxe,arbitrary:axe,bitwise_and_agg:lxe,bitwise_or_agg:cxe,bitwise_xor_agg:fxe,bool_and:xxe,bool_or:dxe,corr:hxe,count_approx:pxe,hll_accumulate:gxe,hll_combine:mxe,max_by:_xe,min_by:vxe,string_agg:C6,string_agg_distinct:Sxe,variance:Cxe,bitwise_and:bxe,bitwise_or:Txe,date_format:Rxe,date_parse:Oxe,from_unixtime:Dxe,hll_estimate:yxe,hll_export:Exe,hll_import:Axe,json_extract_scalar:wxe,regexp_like:Fxe,regexp_replace:Nxe,to_unixtime:Lxe,url_extract_fragment:Bxe,url_extract_host:$xe,url_extract_parameter:kxe,url_extract_path:Pxe,url_extract_port:Mxe,url_extract_protocol:jxe,url_extract_query:Uxe,percent_rank:Ixe,split:qxe};var bE={};Object.defineProperty(bE,"__esModule",{value:!0}),bE.TRINO_MALLOY_STANDARD_OVERLOADS=void 0;const b6=at;bE.TRINO_MALLOY_STANDARD_OVERLOADS={byte_length:{sql:"(LENGTH(CAST(${value} AS VARBINARY)))"},chr:{sql:"CASE WHEN ${value} = 0 THEN '' ELSE CHR(${value}) END"},ascii:{sql:"CODEPOINT(NULLIF(CAST(${value} as VARCHAR(1)),''))"},unicode:{sql:"CODEPOINT(NULLIF(CAST(${value} as VARCHAR(1)),''))"},concat:{variadic:{expr:(0,b6.sql)`CONCAT(${(0,b6.spread)((0,b6.arg)("values"),"CAST(","AS VARCHAR)")})`}},div:{sql:"FLOOR(${dividend} / ${divisor})"},ifnull:{sql:"COALESCE(${value}, ${default})"},is_inf:{sql:"COALESCE(IS_INFINITE(${value}), false)"},log:{sql:"(LN(${value}) / LN(${base}))"},repeat:{sql:"ARRAY_JOIN(REPEAT(${value}, CASE WHEN ${value} IS NOT NULL THEN ${count} END),'')"},reverse:{sql:"REVERSE(CAST(${value} AS VARCHAR))"},starts_with:{sql:"COALESCE(STARTS_WITH(${value}, ${prefix}), false)"},ends_with:{sql:"COALESCE(STARTS_WITH(REVERSE(CAST(${value} AS VARCHAR)), REVERSE(CAST(${suffix} AS VARCHAR))), false)"},trunc:{to_integer:{sql:"CASE WHEN ${value} < 0 THEN CEIL(${value}) ELSE FLOOR(${value}) END"},to_precision:{sql:"CASE WHEN ${value} < 0 THEN CEIL(${value} * POW(10, ${precision})) / POW(10, ${precision}) ELSE FLOOR(${value} * POW(10, ${precision})) / POW(10, ${precision}) END"}}},Object.defineProperty(nd,"__esModule",{value:!0}),nd.PrestoDialect=nd.TrinoDialect=void 0;const Pk=Nt,iu=Ke,Mk=ql,Hxe=jl,jk=hE,zxe=CE,Qxe=bE;function Gxe(t){return["microsecond","millisecond","second","minute","hour","day"].includes(t)}function T6(t){const e=t.queryTimezone;if(e&&e!=="UTC")return e}const Wxe={string:"VARCHAR",number:"DOUBLE"},Vxe={varchar:{type:"string"},integer:{type:"number",numberType:"integer"},bigint:{type:"number",numberType:"integer"},smallint:{type:"number",numberType:"integer"},tinyint:{type:"number",numberType:"integer"},double:{type:"number",numberType:"float"},decimal:{type:"number",numberType:"float"},string:{type:"string"},date:{type:"date"},timestamp:{type:"timestamp"},boolean:{type:"boolean"}};class Hl extends jk.PostgresBase{constructor(){super(...arguments),this.name="trino",this.experimental=!1,this.defaultNumberType="DOUBLE",this.defaultDecimalType="DECIMAL",this.udfPrefix="__udf",this.hasFinalStage=!1,this.divisionIsInteger=!0,this.supportsSumDistinctFunction=!0,this.unnestWithNumbers=!1,this.defaultSampling={enable:!1},this.supportUnnestArrayAgg=!1,this.supportsAggDistinct=!1,this.supportsCTEinCoorelatedSubQueries=!1,this.dontUnionIndex=!0,this.supportsQualify=!0,this.supportsSafeCast=!0,this.supportsNesting=!0,this.cantPartitionWindowFunctionsOnExpressions=!1,this.orderByClause="output_name",this.nullMatchesFunctionSignature=!1,this.supportsSelectReplace=!1,this.supportsComplexFilteredSources=!1,this.supportsTempTables=!1,this.supportsCountApprox=!0,this.supportsHyperLogLog=!0,this.keywords=`
79
79
  ALL
80
80
  AND
81
81
  ANY
@@ -4357,7 +4357,7 @@ const axe = {
4357
4357
  T: ["string", "number", "date", "timestamp", "boolean", "json"]
4358
4358
  },
4359
4359
  takes: { value: { dimension: { generic: "T" } } },
4360
- returns: { measure: "string" },
4360
+ returns: { measure: { sql_native: "hyperloglog" } },
4361
4361
  isSymmetric: !0,
4362
4362
  impl: {
4363
4363
  function: "APPROX_SET"
@@ -4368,7 +4368,7 @@ const axe = {
4368
4368
  T: ["string", "number", "date", "timestamp", "boolean", "json"]
4369
4369
  },
4370
4370
  takes: { value: { dimension: { generic: "T" } }, accuracy: "number" },
4371
- returns: { measure: "string" },
4371
+ returns: { measure: { sql_native: "hyperloglog" } },
4372
4372
  isSymmetric: !0,
4373
4373
  impl: {
4374
4374
  function: "APPROX_SET"
@@ -4376,30 +4376,30 @@ const axe = {
4376
4376
  }
4377
4377
  }, yxe = {
4378
4378
  takes: {
4379
- value: "string"
4379
+ value: { sql_native: "hyperloglog" }
4380
4380
  },
4381
- returns: { measure: "string" },
4381
+ returns: { measure: { sql_native: "hyperloglog" } },
4382
4382
  impl: { function: "MERGE" },
4383
4383
  isSymmetric: !0
4384
4384
  }, Exe = {
4385
4385
  takes: {
4386
- value: "string"
4386
+ value: { sql_native: "hyperloglog" }
4387
4387
  },
4388
4388
  returns: { dimension: "number" },
4389
4389
  impl: { function: "CARDINALITY" }
4390
4390
  }, Axe = {
4391
4391
  takes: {
4392
- value: "string"
4392
+ value: { sql_native: "hyperloglog" }
4393
4393
  },
4394
- returns: { dimension: "string" },
4394
+ returns: { dimension: { sql_native: "varbinary" } },
4395
4395
  impl: {
4396
4396
  sql: "CAST(${value} AS VARBINARY)"
4397
4397
  }
4398
4398
  }, vxe = {
4399
4399
  takes: {
4400
- value: "string"
4400
+ value: { sql_native: "varbinary" }
4401
4401
  },
4402
- returns: { dimension: "string" },
4402
+ returns: { dimension: { sql_native: "hyperloglog" } },
4403
4403
  impl: {
4404
4404
  sql: "CAST(${value} AS HyperLogLog)"
4405
4405
  }
@@ -75,7 +75,7 @@ ${(0,txe.indent)(n)}
75
75
  EXTRACT('epoch_${i}', ${r.sql}) - EXTRACT('epoch_${i}', ${n.sql}),
76
76
  '1970-01-01 00:00:00'::TIMESTAMP_NTZ
77
77
  )
78
- )`}sqlRegexpMatch(e){return`REGEXP_INSTR(${e.kids.expr.sql}, ${e.kids.regex.sql}) != 0`}sqlSampleTable(e,n){if(n!==void 0){if((0,es.isSamplingEnable)(n)&&n.enable&&(n=this.defaultSampling),(0,es.isSamplingRows)(n))return`(SELECT * FROM ${e} TABLESAMPLE (${n.rows} ROWS))`;if((0,es.isSamplingPercent)(n))return`(SELECT * FROM ${e} TABLESAMPLE (${n.percent}))`}return e}sqlOrderBy(e){return`ORDER BY ${e.map(n=>`${n} NULLS LAST`).join(",")}`}sqlLiteralString(e){return"'"+e.replace(/\\/g,"\\\\").replace(/'/g,"\\'")+"'"}sqlLiteralRegexp(e){return"'"+e.replace(/\\/g,"\\\\").replace(/'/g,"\\'")+"'"}getDialectFunctionOverrides(){return(0,$k.expandOverrideMap)(rxe.SNOWFLAKE_MALLOY_STANDARD_OVERLOADS)}getDialectFunctions(){return(0,$k.expandBlueprintMap)(nxe.SNOWFLAKE_DIALECT_FUNCTIONS)}malloyTypeToSQLType(e){if(e.type==="string")return"VARCHAR";if(e.type==="number")return e.numberType==="integer"?"INTEGER":"DOUBLE";if(e.type==="record"||(0,es.isRepeatedRecord)(e)){const r=`OBJECT(${e.fields.reduce((i,s)=>{var o;if((0,es.isAtomic)(s)){const u=(o=s.as)!==null&&o!==void 0?o:s.name,a=`${this.sqlMaybeQuoteIdentifier(u)} ${this.malloyTypeToSQLType(s)}`;i.push(a)}return i},[]).join(",")})`;return e.type==="record"?r:`ARRAY(${r})`}else if((0,es.isScalarArray)(e))return`ARRAY(${this.malloyTypeToSQLType(e.elementTypeDef)})`;return e.type}sqlTypeToMalloyType(e){var n,r;const i=(r=(n=e.match(/^([\w\s]+)/))===null||n===void 0?void 0:n.at(0))!==null&&r!==void 0?r:e;return sxe[i.trim().toLowerCase()]||{type:"sql native",rawType:e}}castToString(e){return`TO_VARCHAR(${e})`}concat(...e){return e.join(" || ")}validateTypeName(e){return e.match(/^[A-Za-z\s(),[\]0-9]*$/)!==null}sqlLiteralRecord(e){var n,r;const i=[];for(const s of e.typeDef.fields){const o=(n=s.as)!==null&&n!==void 0?n:s.name,u=`'${o}'`,a=(r=e.kids[o].sql)!==null&&r!==void 0?r:"internal-error-record-literal";i.push(`${u},${a}`)}return`OBJECT_CONSTRUCT_KEEP_NULL(${i.join(",")})`}sqlLiteralArray(e){return`[${e.kids.values.map(i=>i.sql).join(",")}]`}}EE.SnowflakeDialect=oxe,function(t){var e=T&&T.__createBinding||(Object.create?function(r,i,s,o){o===void 0&&(o=s);var u=Object.getOwnPropertyDescriptor(i,s);(!u||("get"in u?!i.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return i[s]}}),Object.defineProperty(r,o,u)}:function(r,i,s,o){o===void 0&&(o=s),r[o]=i[s]}),n=T&&T.__exportStar||function(r,i){for(var s in r)s!=="default"&&!Object.prototype.hasOwnProperty.call(i,s)&&e(i,r,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(EE,t)}(A6);var v6={},nd={},SE={};Object.defineProperty(SE,"__esModule",{value:!0}),SE.TRINO_DIALECT_FUNCTIONS=void 0;const uxe={takes:{value:"number",percentage:"number"},returns:{measure:"number"},impl:{function:"APPROX_PERCENTILE"}},axe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}}},returns:{measure:{generic:"T"}},impl:{function:"ARBITRARY"}},lxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_OR_AGG"}},cxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_AND_AGG"}},fxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_XOR_AGG"}},xxe={takes:{value:{dimension:"boolean"}},returns:{measure:"boolean"},impl:{function:"BOOL_AND"}},dxe={takes:{value:{dimension:"boolean"}},returns:{measure:"boolean"},impl:{function:"BOOL_OR"}},hxe={takes:{y:{dimension:"number"},x:{dimension:"number"}},returns:{measure:"number"},impl:{sql:"CORR(${y}, ${x})"}},pxe={takes:{value:{dimension:"any"}},returns:{measure:"number"},impl:{function:"APPROX_DISTINCT"},isSymmetric:!0},gxe={default:{generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}}},returns:{measure:"string"},isSymmetric:!0,impl:{function:"APPROX_SET"}},with_percent:{generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},accuracy:"number"},returns:{measure:"string"},isSymmetric:!0,impl:{function:"APPROX_SET"}}},mxe={takes:{value:"string"},returns:{measure:"string"},impl:{function:"MERGE"},isSymmetric:!0},yxe={takes:{value:"string"},returns:{dimension:"number"},impl:{function:"CARDINALITY"}},Exe={takes:{value:"string"},returns:{dimension:"string"},impl:{sql:"CAST(${value} AS VARBINARY)"}},Axe={takes:{value:"string"},returns:{dimension:"string"},impl:{sql:"CAST(${value} AS HyperLogLog)"}},_xe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},order_by_val:{dimension:"any"}},returns:{measure:{generic:"T"}},impl:{function:"MAX_BY"},isSymmetric:!0},vxe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},order_by_val:{dimension:"any"}},returns:{measure:{generic:"T"}},impl:{function:"MIN_BY"},isSymmetric:!0},S6={default_separator:{takes:{value:{dimension:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(${value} ${order_by:}), ',')"}},with_separator:{takes:{value:{dimension:"string"},separator:{literal:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(${value} ${order_by:}), ${separator})"}}},Sxe={default_separator:{...S6.default_separator,isSymmetric:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(DISTINCT ${value} ${order_by:}), ',')"}},with_separator:{...S6.with_separator,isSymmetric:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(DISTINCT ${value} ${order_by:}), ${separator})"}}},Cxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"VARIANCE"}},bxe={takes:{val1:"number",val2:"number"},returns:"number",impl:{function:"BITWISE_AND"}},Txe={takes:{val1:"number",val2:"number"},returns:"number",impl:{function:"BITWISE_OR"}},Rxe={takes:{ts_val:"timestamp",format:"string"},returns:"string",impl:{function:"DATE_FORMAT"}},Oxe={takes:{ts_string:"string",format:"string"},returns:"timestamp",impl:{sql:"DATE_PARSE(${ts_string}, ${format})"}},Dxe={takes:{unixtime:"number"},returns:"timestamp",impl:{function:"FROM_UNIXTIME"}},wxe={takes:{json_val:"string",json_path:"string"},returns:"string",impl:{function:"JSON_EXTRACT_SCALAR"}},Fxe={takes:{str:"string",pattern:["string","regular expression"]},returns:"boolean",impl:{function:"REGEXP_LIKE"}},Nxe={remove_matches:{takes:{input_val:"string",regexp_pattern:["string","regular expression"]},returns:"string",impl:{function:"REGEXP_REPLACE"}},replace_matches:{takes:{input_val:"string",regexp_pattern:["string","regular expression"],replacement:"string"},returns:"string",impl:{function:"REGEXP_REPLACE"}}},Lxe={takes:{ts_val:"timestamp"},returns:"number",impl:{function:"TO_UNIXTIME"}},Ixe={takes:{},returns:{calculation:"number"},impl:{function:"PERCENT_RANK",needsWindowOrderBy:!0}},Bxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_FRAGMENT"}},$xe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_HOST"}},kxe={takes:{url:"string",parameter:"string"},returns:"string",impl:{function:"URL_EXTRACT_PARAMETER"}},Pxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_PATH"}},Mxe={takes:{url:"string"},returns:"number",impl:{function:"URL_EXTRACT_PORT"}},jxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_PROTOCOL"}},Uxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_QUERY"}},qxe={takes:{src:"string",splitChar:"string"},returns:{array:"string"},impl:{function:"SPLIT"}};SE.TRINO_DIALECT_FUNCTIONS={approx_percentile:uxe,arbitrary:axe,bitwise_and_agg:lxe,bitwise_or_agg:cxe,bitwise_xor_agg:fxe,bool_and:xxe,bool_or:dxe,corr:hxe,count_approx:pxe,hll_accumulate:gxe,hll_combine:mxe,max_by:_xe,min_by:vxe,string_agg:S6,string_agg_distinct:Sxe,variance:Cxe,bitwise_and:bxe,bitwise_or:Txe,date_format:Rxe,date_parse:Oxe,from_unixtime:Dxe,hll_estimate:yxe,hll_export:Exe,hll_import:Axe,json_extract_scalar:wxe,regexp_like:Fxe,regexp_replace:Nxe,to_unixtime:Lxe,url_extract_fragment:Bxe,url_extract_host:$xe,url_extract_parameter:kxe,url_extract_path:Pxe,url_extract_port:Mxe,url_extract_protocol:jxe,url_extract_query:Uxe,percent_rank:Ixe,split:qxe};var CE={};Object.defineProperty(CE,"__esModule",{value:!0}),CE.TRINO_MALLOY_STANDARD_OVERLOADS=void 0;const C6=at;CE.TRINO_MALLOY_STANDARD_OVERLOADS={byte_length:{sql:"(LENGTH(CAST(${value} AS VARBINARY)))"},chr:{sql:"CASE WHEN ${value} = 0 THEN '' ELSE CHR(${value}) END"},ascii:{sql:"CODEPOINT(NULLIF(CAST(${value} as VARCHAR(1)),''))"},unicode:{sql:"CODEPOINT(NULLIF(CAST(${value} as VARCHAR(1)),''))"},concat:{variadic:{expr:(0,C6.sql)`CONCAT(${(0,C6.spread)((0,C6.arg)("values"),"CAST(","AS VARCHAR)")})`}},div:{sql:"FLOOR(${dividend} / ${divisor})"},ifnull:{sql:"COALESCE(${value}, ${default})"},is_inf:{sql:"COALESCE(IS_INFINITE(${value}), false)"},log:{sql:"(LN(${value}) / LN(${base}))"},repeat:{sql:"ARRAY_JOIN(REPEAT(${value}, CASE WHEN ${value} IS NOT NULL THEN ${count} END),'')"},reverse:{sql:"REVERSE(CAST(${value} AS VARCHAR))"},starts_with:{sql:"COALESCE(STARTS_WITH(${value}, ${prefix}), false)"},ends_with:{sql:"COALESCE(STARTS_WITH(REVERSE(CAST(${value} AS VARCHAR)), REVERSE(CAST(${suffix} AS VARCHAR))), false)"},trunc:{to_integer:{sql:"CASE WHEN ${value} < 0 THEN CEIL(${value}) ELSE FLOOR(${value}) END"},to_precision:{sql:"CASE WHEN ${value} < 0 THEN CEIL(${value} * POW(10, ${precision})) / POW(10, ${precision}) ELSE FLOOR(${value} * POW(10, ${precision})) / POW(10, ${precision}) END"}}},Object.defineProperty(nd,"__esModule",{value:!0}),nd.PrestoDialect=nd.TrinoDialect=void 0;const kk=Nt,iu=Ke,Pk=ql,Hxe=jl,Mk=dE,zxe=SE,Qxe=CE;function Gxe(t){return["microsecond","millisecond","second","minute","hour","day"].includes(t)}function b6(t){const e=t.queryTimezone;if(e&&e!=="UTC")return e}const Wxe={string:"VARCHAR",number:"DOUBLE"},Vxe={varchar:{type:"string"},integer:{type:"number",numberType:"integer"},bigint:{type:"number",numberType:"integer"},smallint:{type:"number",numberType:"integer"},tinyint:{type:"number",numberType:"integer"},double:{type:"number",numberType:"float"},decimal:{type:"number",numberType:"float"},string:{type:"string"},date:{type:"date"},timestamp:{type:"timestamp"},boolean:{type:"boolean"}};class Hl extends Mk.PostgresBase{constructor(){super(...arguments),this.name="trino",this.experimental=!1,this.defaultNumberType="DOUBLE",this.defaultDecimalType="DECIMAL",this.udfPrefix="__udf",this.hasFinalStage=!1,this.divisionIsInteger=!0,this.supportsSumDistinctFunction=!0,this.unnestWithNumbers=!1,this.defaultSampling={enable:!1},this.supportUnnestArrayAgg=!1,this.supportsAggDistinct=!1,this.supportsCTEinCoorelatedSubQueries=!1,this.dontUnionIndex=!0,this.supportsQualify=!0,this.supportsSafeCast=!0,this.supportsNesting=!0,this.cantPartitionWindowFunctionsOnExpressions=!1,this.orderByClause="output_name",this.nullMatchesFunctionSignature=!1,this.supportsSelectReplace=!1,this.supportsComplexFilteredSources=!1,this.supportsTempTables=!1,this.supportsCountApprox=!0,this.supportsHyperLogLog=!0,this.keywords=`
78
+ )`}sqlRegexpMatch(e){return`REGEXP_INSTR(${e.kids.expr.sql}, ${e.kids.regex.sql}) != 0`}sqlSampleTable(e,n){if(n!==void 0){if((0,es.isSamplingEnable)(n)&&n.enable&&(n=this.defaultSampling),(0,es.isSamplingRows)(n))return`(SELECT * FROM ${e} TABLESAMPLE (${n.rows} ROWS))`;if((0,es.isSamplingPercent)(n))return`(SELECT * FROM ${e} TABLESAMPLE (${n.percent}))`}return e}sqlOrderBy(e){return`ORDER BY ${e.map(n=>`${n} NULLS LAST`).join(",")}`}sqlLiteralString(e){return"'"+e.replace(/\\/g,"\\\\").replace(/'/g,"\\'")+"'"}sqlLiteralRegexp(e){return"'"+e.replace(/\\/g,"\\\\").replace(/'/g,"\\'")+"'"}getDialectFunctionOverrides(){return(0,$k.expandOverrideMap)(rxe.SNOWFLAKE_MALLOY_STANDARD_OVERLOADS)}getDialectFunctions(){return(0,$k.expandBlueprintMap)(nxe.SNOWFLAKE_DIALECT_FUNCTIONS)}malloyTypeToSQLType(e){if(e.type==="string")return"VARCHAR";if(e.type==="number")return e.numberType==="integer"?"INTEGER":"DOUBLE";if(e.type==="record"||(0,es.isRepeatedRecord)(e)){const r=`OBJECT(${e.fields.reduce((i,s)=>{var o;if((0,es.isAtomic)(s)){const u=(o=s.as)!==null&&o!==void 0?o:s.name,a=`${this.sqlMaybeQuoteIdentifier(u)} ${this.malloyTypeToSQLType(s)}`;i.push(a)}return i},[]).join(",")})`;return e.type==="record"?r:`ARRAY(${r})`}else if((0,es.isScalarArray)(e))return`ARRAY(${this.malloyTypeToSQLType(e.elementTypeDef)})`;return e.type}sqlTypeToMalloyType(e){var n,r;const i=(r=(n=e.match(/^([\w\s]+)/))===null||n===void 0?void 0:n.at(0))!==null&&r!==void 0?r:e;return sxe[i.trim().toLowerCase()]||{type:"sql native",rawType:e}}castToString(e){return`TO_VARCHAR(${e})`}concat(...e){return e.join(" || ")}validateTypeName(e){return e.match(/^[A-Za-z\s(),[\]0-9]*$/)!==null}sqlLiteralRecord(e){var n,r;const i=[];for(const s of e.typeDef.fields){const o=(n=s.as)!==null&&n!==void 0?n:s.name,u=`'${o}'`,a=(r=e.kids[o].sql)!==null&&r!==void 0?r:"internal-error-record-literal";i.push(`${u},${a}`)}return`OBJECT_CONSTRUCT_KEEP_NULL(${i.join(",")})`}sqlLiteralArray(e){return`[${e.kids.values.map(i=>i.sql).join(",")}]`}}EE.SnowflakeDialect=oxe,function(t){var e=T&&T.__createBinding||(Object.create?function(r,i,s,o){o===void 0&&(o=s);var u=Object.getOwnPropertyDescriptor(i,s);(!u||("get"in u?!i.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return i[s]}}),Object.defineProperty(r,o,u)}:function(r,i,s,o){o===void 0&&(o=s),r[o]=i[s]}),n=T&&T.__exportStar||function(r,i){for(var s in r)s!=="default"&&!Object.prototype.hasOwnProperty.call(i,s)&&e(i,r,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(EE,t)}(A6);var v6={},nd={},SE={};Object.defineProperty(SE,"__esModule",{value:!0}),SE.TRINO_DIALECT_FUNCTIONS=void 0;const uxe={takes:{value:"number",percentage:"number"},returns:{measure:"number"},impl:{function:"APPROX_PERCENTILE"}},axe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}}},returns:{measure:{generic:"T"}},impl:{function:"ARBITRARY"}},lxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_OR_AGG"}},cxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_AND_AGG"}},fxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"BITWISE_XOR_AGG"}},xxe={takes:{value:{dimension:"boolean"}},returns:{measure:"boolean"},impl:{function:"BOOL_AND"}},dxe={takes:{value:{dimension:"boolean"}},returns:{measure:"boolean"},impl:{function:"BOOL_OR"}},hxe={takes:{y:{dimension:"number"},x:{dimension:"number"}},returns:{measure:"number"},impl:{sql:"CORR(${y}, ${x})"}},pxe={takes:{value:{dimension:"any"}},returns:{measure:"number"},impl:{function:"APPROX_DISTINCT"},isSymmetric:!0},gxe={default:{generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}}},returns:{measure:{sql_native:"hyperloglog"}},isSymmetric:!0,impl:{function:"APPROX_SET"}},with_percent:{generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},accuracy:"number"},returns:{measure:{sql_native:"hyperloglog"}},isSymmetric:!0,impl:{function:"APPROX_SET"}}},mxe={takes:{value:{sql_native:"hyperloglog"}},returns:{measure:{sql_native:"hyperloglog"}},impl:{function:"MERGE"},isSymmetric:!0},yxe={takes:{value:{sql_native:"hyperloglog"}},returns:{dimension:"number"},impl:{function:"CARDINALITY"}},Exe={takes:{value:{sql_native:"hyperloglog"}},returns:{dimension:{sql_native:"varbinary"}},impl:{sql:"CAST(${value} AS VARBINARY)"}},Axe={takes:{value:{sql_native:"varbinary"}},returns:{dimension:{sql_native:"hyperloglog"}},impl:{sql:"CAST(${value} AS HyperLogLog)"}},_xe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},order_by_val:{dimension:"any"}},returns:{measure:{generic:"T"}},impl:{function:"MAX_BY"},isSymmetric:!0},vxe={generic:{T:["string","number","date","timestamp","boolean","json"]},takes:{value:{dimension:{generic:"T"}},order_by_val:{dimension:"any"}},returns:{measure:{generic:"T"}},impl:{function:"MIN_BY"},isSymmetric:!0},S6={default_separator:{takes:{value:{dimension:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(${value} ${order_by:}), ',')"}},with_separator:{takes:{value:{dimension:"string"},separator:{literal:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(${value} ${order_by:}), ${separator})"}}},Sxe={default_separator:{...S6.default_separator,isSymmetric:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(DISTINCT ${value} ${order_by:}), ',')"}},with_separator:{...S6.with_separator,isSymmetric:!0,impl:{sql:"ARRAY_JOIN(ARRAY_AGG(DISTINCT ${value} ${order_by:}), ${separator})"}}},Cxe={takes:{value:{dimension:"number"}},returns:{measure:"number"},impl:{function:"VARIANCE"}},bxe={takes:{val1:"number",val2:"number"},returns:"number",impl:{function:"BITWISE_AND"}},Txe={takes:{val1:"number",val2:"number"},returns:"number",impl:{function:"BITWISE_OR"}},Rxe={takes:{ts_val:"timestamp",format:"string"},returns:"string",impl:{function:"DATE_FORMAT"}},Oxe={takes:{ts_string:"string",format:"string"},returns:"timestamp",impl:{sql:"DATE_PARSE(${ts_string}, ${format})"}},Dxe={takes:{unixtime:"number"},returns:"timestamp",impl:{function:"FROM_UNIXTIME"}},wxe={takes:{json_val:"string",json_path:"string"},returns:"string",impl:{function:"JSON_EXTRACT_SCALAR"}},Fxe={takes:{str:"string",pattern:["string","regular expression"]},returns:"boolean",impl:{function:"REGEXP_LIKE"}},Nxe={remove_matches:{takes:{input_val:"string",regexp_pattern:["string","regular expression"]},returns:"string",impl:{function:"REGEXP_REPLACE"}},replace_matches:{takes:{input_val:"string",regexp_pattern:["string","regular expression"],replacement:"string"},returns:"string",impl:{function:"REGEXP_REPLACE"}}},Lxe={takes:{ts_val:"timestamp"},returns:"number",impl:{function:"TO_UNIXTIME"}},Ixe={takes:{},returns:{calculation:"number"},impl:{function:"PERCENT_RANK",needsWindowOrderBy:!0}},Bxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_FRAGMENT"}},$xe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_HOST"}},kxe={takes:{url:"string",parameter:"string"},returns:"string",impl:{function:"URL_EXTRACT_PARAMETER"}},Pxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_PATH"}},Mxe={takes:{url:"string"},returns:"number",impl:{function:"URL_EXTRACT_PORT"}},jxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_PROTOCOL"}},Uxe={takes:{url:"string"},returns:"string",impl:{function:"URL_EXTRACT_QUERY"}},qxe={takes:{src:"string",splitChar:"string"},returns:{array:"string"},impl:{function:"SPLIT"}};SE.TRINO_DIALECT_FUNCTIONS={approx_percentile:uxe,arbitrary:axe,bitwise_and_agg:lxe,bitwise_or_agg:cxe,bitwise_xor_agg:fxe,bool_and:xxe,bool_or:dxe,corr:hxe,count_approx:pxe,hll_accumulate:gxe,hll_combine:mxe,max_by:_xe,min_by:vxe,string_agg:S6,string_agg_distinct:Sxe,variance:Cxe,bitwise_and:bxe,bitwise_or:Txe,date_format:Rxe,date_parse:Oxe,from_unixtime:Dxe,hll_estimate:yxe,hll_export:Exe,hll_import:Axe,json_extract_scalar:wxe,regexp_like:Fxe,regexp_replace:Nxe,to_unixtime:Lxe,url_extract_fragment:Bxe,url_extract_host:$xe,url_extract_parameter:kxe,url_extract_path:Pxe,url_extract_port:Mxe,url_extract_protocol:jxe,url_extract_query:Uxe,percent_rank:Ixe,split:qxe};var CE={};Object.defineProperty(CE,"__esModule",{value:!0}),CE.TRINO_MALLOY_STANDARD_OVERLOADS=void 0;const C6=at;CE.TRINO_MALLOY_STANDARD_OVERLOADS={byte_length:{sql:"(LENGTH(CAST(${value} AS VARBINARY)))"},chr:{sql:"CASE WHEN ${value} = 0 THEN '' ELSE CHR(${value}) END"},ascii:{sql:"CODEPOINT(NULLIF(CAST(${value} as VARCHAR(1)),''))"},unicode:{sql:"CODEPOINT(NULLIF(CAST(${value} as VARCHAR(1)),''))"},concat:{variadic:{expr:(0,C6.sql)`CONCAT(${(0,C6.spread)((0,C6.arg)("values"),"CAST(","AS VARCHAR)")})`}},div:{sql:"FLOOR(${dividend} / ${divisor})"},ifnull:{sql:"COALESCE(${value}, ${default})"},is_inf:{sql:"COALESCE(IS_INFINITE(${value}), false)"},log:{sql:"(LN(${value}) / LN(${base}))"},repeat:{sql:"ARRAY_JOIN(REPEAT(${value}, CASE WHEN ${value} IS NOT NULL THEN ${count} END),'')"},reverse:{sql:"REVERSE(CAST(${value} AS VARCHAR))"},starts_with:{sql:"COALESCE(STARTS_WITH(${value}, ${prefix}), false)"},ends_with:{sql:"COALESCE(STARTS_WITH(REVERSE(CAST(${value} AS VARCHAR)), REVERSE(CAST(${suffix} AS VARCHAR))), false)"},trunc:{to_integer:{sql:"CASE WHEN ${value} < 0 THEN CEIL(${value}) ELSE FLOOR(${value}) END"},to_precision:{sql:"CASE WHEN ${value} < 0 THEN CEIL(${value} * POW(10, ${precision})) / POW(10, ${precision}) ELSE FLOOR(${value} * POW(10, ${precision})) / POW(10, ${precision}) END"}}},Object.defineProperty(nd,"__esModule",{value:!0}),nd.PrestoDialect=nd.TrinoDialect=void 0;const kk=Nt,iu=Ke,Pk=ql,Hxe=jl,Mk=dE,zxe=SE,Qxe=CE;function Gxe(t){return["microsecond","millisecond","second","minute","hour","day"].includes(t)}function b6(t){const e=t.queryTimezone;if(e&&e!=="UTC")return e}const Wxe={string:"VARCHAR",number:"DOUBLE"},Vxe={varchar:{type:"string"},integer:{type:"number",numberType:"integer"},bigint:{type:"number",numberType:"integer"},smallint:{type:"number",numberType:"integer"},tinyint:{type:"number",numberType:"integer"},double:{type:"number",numberType:"float"},decimal:{type:"number",numberType:"float"},string:{type:"string"},date:{type:"date"},timestamp:{type:"timestamp"},boolean:{type:"boolean"}};class Hl extends Mk.PostgresBase{constructor(){super(...arguments),this.name="trino",this.experimental=!1,this.defaultNumberType="DOUBLE",this.defaultDecimalType="DECIMAL",this.udfPrefix="__udf",this.hasFinalStage=!1,this.divisionIsInteger=!0,this.supportsSumDistinctFunction=!0,this.unnestWithNumbers=!1,this.defaultSampling={enable:!1},this.supportUnnestArrayAgg=!1,this.supportsAggDistinct=!1,this.supportsCTEinCoorelatedSubQueries=!1,this.dontUnionIndex=!0,this.supportsQualify=!0,this.supportsSafeCast=!0,this.supportsNesting=!0,this.cantPartitionWindowFunctionsOnExpressions=!1,this.orderByClause="output_name",this.nullMatchesFunctionSignature=!1,this.supportsSelectReplace=!1,this.supportsComplexFilteredSources=!1,this.supportsTempTables=!1,this.supportsCountApprox=!0,this.supportsHyperLogLog=!0,this.keywords=`
79
79
  ALL
80
80
  AND
81
81
  ANY
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@malloydata/render",
3
- "version": "0.0.224-dev241217161218",
3
+ "version": "0.0.224-dev241217171758",
4
4
  "license": "MIT",
5
5
  "main": "dist/module/index.umd.js",
6
6
  "types": "dist/index.d.ts",
@@ -30,7 +30,7 @@
30
30
  "build-types": "tsc --build --declaration --emitDeclarationOnly"
31
31
  },
32
32
  "dependencies": {
33
- "@malloydata/malloy": "^0.0.224-dev241217161218",
33
+ "@malloydata/malloy": "^0.0.224-dev241217171758",
34
34
  "@tanstack/solid-virtual": "^3.10.4",
35
35
  "component-register": "^0.8.6",
36
36
  "lodash": "^4.17.20",