@malloydata/render 0.0.196-dev241008013446 → 0.0.196
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.
package/dist/module/index.mjs
CHANGED
|
@@ -3836,7 +3836,9 @@ q4.MYSQL_MALLOY_STANDARD_OVERLOADS = {
|
|
|
3836
3836
|
}
|
|
3837
3837
|
},
|
|
3838
3838
|
byte_length: { sql: "(LENGTH(CAST(${value} AS VARBINARY)))" },
|
|
3839
|
-
chr: {
|
|
3839
|
+
chr: {
|
|
3840
|
+
sql: "CASE WHEN ${value} = 0 THEN '' ELSE CHAR(${value} USING latin1) END"
|
|
3841
|
+
}
|
|
3840
3842
|
};
|
|
3841
3843
|
Object.defineProperty(j4, "__esModule", { value: !0 });
|
|
3842
3844
|
j4.MySQLDialect = void 0;
|
|
@@ -3879,7 +3881,7 @@ const QT = oe, yce = Rt, i2 = u0, j$ = a0, Ece = U4, Ace = q4, vce = {
|
|
|
3879
3881
|
};
|
|
3880
3882
|
class Cce extends i2.Dialect {
|
|
3881
3883
|
constructor() {
|
|
3882
|
-
super(...arguments), this.name = "mysql", this.defaultNumberType = "DOUBLE PRECISION", this.defaultDecimalType = "DECIMAL", this.udfPrefix = "ms_temp.__udf", this.hasFinalStage = !1, this.stringTypeName = "VARCHAR(255)", this.divisionIsInteger = !0, this.supportsSumDistinctFunction = !0, this.unnestWithNumbers = !1, this.defaultSampling = { rows: 5e4 }, this.supportUnnestArrayAgg = !0, this.supportsAggDistinct = !0, this.supportsCTEinCoorelatedSubQueries = !0, this.supportsSafeCast = !1, this.dontUnionIndex = !1, this.supportsQualify = !1, this.supportsNesting = !0, this.experimental = !0, this.nativeBoolean = !1, this.supportsFullJoin = !1, this.supportsPipelinesInViews = !1, this.readsNestedData = !1, this.supportsComplexFilteredSources = !1;
|
|
3884
|
+
super(...arguments), this.name = "mysql", this.defaultNumberType = "DOUBLE PRECISION", this.defaultDecimalType = "DECIMAL", this.udfPrefix = "ms_temp.__udf", this.hasFinalStage = !1, this.stringTypeName = "VARCHAR(255)", this.divisionIsInteger = !0, this.supportsSumDistinctFunction = !0, this.unnestWithNumbers = !1, this.defaultSampling = { rows: 5e4 }, this.supportUnnestArrayAgg = !0, this.supportsAggDistinct = !0, this.supportsCTEinCoorelatedSubQueries = !0, this.supportsSafeCast = !1, this.dontUnionIndex = !1, this.supportsQualify = !1, this.supportsNesting = !0, this.experimental = !0, this.nativeBoolean = !1, this.supportsFullJoin = !1, this.supportsPipelinesInViews = !1, this.readsNestedData = !1, this.supportsComplexFilteredSources = !1, this.supportsArraysInData = !1;
|
|
3883
3885
|
}
|
|
3884
3886
|
malloyTypeToSQLType(e) {
|
|
3885
3887
|
return e.type === "number" ? e.numberType === "integer" ? "BIGINT" : "DOUBLE" : e.type;
|
|
@@ -3914,7 +3916,7 @@ class Cce extends i2.Dialect {
|
|
|
3914
3916
|
${r}
|
|
3915
3917
|
SEPARATOR '${s}'
|
|
3916
3918
|
)`;
|
|
3917
|
-
return i && (o = `SUBSTRING_INDEX(${o}, '${s}', ${i})`, o = `REPLACE(${o},'${s}',',')`), o = `JSON_EXTRACT(CONCAT('[',${o},']'),'$')`, o;
|
|
3919
|
+
return i && (o = `SUBSTRING_INDEX(${o}, '${s}', ${i})`, o = `REPLACE(${o},'${s}',',')`), o = `COALESCE(JSON_EXTRACT(CONCAT('[',${o},']'),'$'),JSON_ARRAY())`, o;
|
|
3918
3920
|
}
|
|
3919
3921
|
sqlAnyValueTurtle(e, n) {
|
|
3920
3922
|
const r = this.mapFieldsForJsonObject(n);
|
|
@@ -3928,7 +3930,7 @@ class Cce extends i2.Dialect {
|
|
|
3928
3930
|
return `COALESCE(MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END),JSON_OBJECT(${i}))`;
|
|
3929
3931
|
}
|
|
3930
3932
|
malloyToSQL(e) {
|
|
3931
|
-
return e === "number" ? "DOUBLE" : e === "string" ? "TEXT" : e === "struct" ? "JSON" : e;
|
|
3933
|
+
return e === "number" ? "DOUBLE" : e === "string" ? "TEXT" : e === "struct" || e === "array" || e === "record" ? "JSON" : e;
|
|
3932
3934
|
}
|
|
3933
3935
|
unnestColumns(e) {
|
|
3934
3936
|
const n = [];
|
package/dist/module/index.umd.js
CHANGED
|
@@ -282,14 +282,14 @@ ${(0,lB.indent)(n)}
|
|
|
282
282
|
CROSS JOIN UNNEST(COALESCE(${e},ARRAY[NULL])) WITH ORDINALITY as ${n}(value, __row_id_almost_${n})
|
|
283
283
|
CROSS JOIN UNNEST(ARRAY[CASE WHEN ${e} IS NOT NULL THEN __row_id_almost_${n} END]) as ${n}_ignore(__row_id_from_${n})`:`CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) as ${n}(value) `:i?`-- Simulate a left join
|
|
284
284
|
CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) WITH ORDINALITY as ${n}_outer(${n}, __row_id_almost_${n})
|
|
285
|
-
CROSS JOIN UNNEST(ARRAY[CASE WHEN ${e} IS NOT NULL THEN __row_id_almost_${n} END]) as ${n}_ignore(__row_id_from_${n})`:`CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) as ${n}_outer(${n})`}}lx.PrestoDialect=mce,function(t){var e=D&&D.__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=D&&D.__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(lx,t)}(sb);var cb={},uy={},ay={};Object.defineProperty(ay,"__esModule",{value:!0}),ay.MYSQL_DIALECT_FUNCTIONS=void 0;const fb={default_separator:{takes:{value:{dimension:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:})"}},with_separator:{takes:{value:{dimension:"string"},separator:{literal:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:} SEPARATOR ${separator})"}}},yce={default_separator:{...fb.default_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:})",defaultOrderByArgIndex:0}},with_separator:{...fb.with_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:} SEPARATOR ${separator})",defaultOrderByArgIndex:0}}};ay.MYSQL_DIALECT_FUNCTIONS={string_agg:fb,string_agg_distinct:yce};var ly={};Object.defineProperty(ly,"__esModule",{value:!0}),ly.MYSQL_MALLOY_STANDARD_OVERLOADS=void 0,ly.MYSQL_MALLOY_STANDARD_OVERLOADS={regexp_extract:{function:"REGEXP_SUBSTR"},replace:{regular_expression:{sql:"REGEXP_REPLACE(${value}, ${pattern}, ${replacement}, 1,0)"}},trunc:{to_integer:{sql:"(FLOOR(${value}) + IF(${value} < 0,1,0))"},to_precision:{sql:"(ABS(FLOOR(${value} * POW(10,${precision}))/POW(10,${precision}))*IF(${value} < 0, -1, 1))"}},log:{sql:"log(${base},${value})"},div:{sql:"FLOOR(${dividend} / ${divisor})"},strpos:{sql:"LOCATE(${search_string},${test_string})"},starts_with:{sql:"COALESCE(${value} LIKE CONCAT(${prefix}, '%'),0)"},ends_with:{sql:"COALESCE(${value} LIKE CONCAT('%',${suffix}),0)"},trim:{characters:{sql:"TRIM(BOTH ${trim_characters} FROM ${value})"}},ltrim:{characters:{sql:"TRIM(LEADING ${trim_characters} FROM ${value})"}},rtrim:{characters:{sql:"TRIM(TRAILING ${trim_characters} FROM ${value})"}},byte_length:{sql:"(LENGTH(CAST(${value} AS VARBINARY)))"},chr:{sql:"CASE WHEN ${value} = 0 THEN '' ELSE
|
|
285
|
+
CROSS JOIN UNNEST(ARRAY[CASE WHEN ${e} IS NOT NULL THEN __row_id_almost_${n} END]) as ${n}_ignore(__row_id_from_${n})`:`CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) as ${n}_outer(${n})`}}lx.PrestoDialect=mce,function(t){var e=D&&D.__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=D&&D.__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(lx,t)}(sb);var cb={},uy={},ay={};Object.defineProperty(ay,"__esModule",{value:!0}),ay.MYSQL_DIALECT_FUNCTIONS=void 0;const fb={default_separator:{takes:{value:{dimension:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:})"}},with_separator:{takes:{value:{dimension:"string"},separator:{literal:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:} SEPARATOR ${separator})"}}},yce={default_separator:{...fb.default_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:})",defaultOrderByArgIndex:0}},with_separator:{...fb.with_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:} SEPARATOR ${separator})",defaultOrderByArgIndex:0}}};ay.MYSQL_DIALECT_FUNCTIONS={string_agg:fb,string_agg_distinct:yce};var ly={};Object.defineProperty(ly,"__esModule",{value:!0}),ly.MYSQL_MALLOY_STANDARD_OVERLOADS=void 0,ly.MYSQL_MALLOY_STANDARD_OVERLOADS={regexp_extract:{function:"REGEXP_SUBSTR"},replace:{regular_expression:{sql:"REGEXP_REPLACE(${value}, ${pattern}, ${replacement}, 1,0)"}},trunc:{to_integer:{sql:"(FLOOR(${value}) + IF(${value} < 0,1,0))"},to_precision:{sql:"(ABS(FLOOR(${value} * POW(10,${precision}))/POW(10,${precision}))*IF(${value} < 0, -1, 1))"}},log:{sql:"log(${base},${value})"},div:{sql:"FLOOR(${dividend} / ${divisor})"},strpos:{sql:"LOCATE(${search_string},${test_string})"},starts_with:{sql:"COALESCE(${value} LIKE CONCAT(${prefix}, '%'),0)"},ends_with:{sql:"COALESCE(${value} LIKE CONCAT('%',${suffix}),0)"},trim:{characters:{sql:"TRIM(BOTH ${trim_characters} FROM ${value})"}},ltrim:{characters:{sql:"TRIM(LEADING ${trim_characters} FROM ${value})"}},rtrim:{characters:{sql:"TRIM(TRAILING ${trim_characters} FROM ${value})"}},byte_length:{sql:"(LENGTH(CAST(${value} AS VARBINARY)))"},chr:{sql:"CASE WHEN ${value} = 0 THEN '' ELSE CHAR(${value} USING latin1) END"}},Object.defineProperty(uy,"__esModule",{value:!0}),uy.MySQLDialect=void 0;const xb=oe,Ece=Rt,s2=sl,xB=ul,Ace=ay,vce=ly,Sce={number:"double precision",string:"varchar(255)"},_ce={day_of_week:"DAYOFWEEK",day_of_year:"DAYOFYEAR"},dB={second:1,minute:60,hour:3600,day:24*3600,week:7*24*3600},Cce={tinyint:{type:"boolean"},smallint:{type:"number",numberType:"integer"},mediumint:{type:"number",numberType:"integer"},int:{type:"number",numberType:"integer"},bigint:{type:"number",numberType:"integer"},"tinyint unsigned":{type:"number",numberType:"integer"},"smallint unsigned":{type:"number",numberType:"integer"},"mediumint unsigned":{type:"number",numberType:"integer"},"int unsigned":{type:"number",numberType:"integer"},"bigint unsigned":{type:"number",numberType:"integer"},double:{type:"number",numberType:"float"},varchar:{type:"string"},varbinary:{type:"string"},char:{type:"string"},text:{type:"string"},date:{type:"date"},datetime:{type:"timestamp"},timestamp:{type:"timestamp"},time:{type:"string"},decimal:{type:"number",numberType:"float"},"tinyint(1)":{type:"boolean"}};class Tce extends s2.Dialect{constructor(){super(...arguments),this.name="mysql",this.defaultNumberType="DOUBLE PRECISION",this.defaultDecimalType="DECIMAL",this.udfPrefix="ms_temp.__udf",this.hasFinalStage=!1,this.stringTypeName="VARCHAR(255)",this.divisionIsInteger=!0,this.supportsSumDistinctFunction=!0,this.unnestWithNumbers=!1,this.defaultSampling={rows:5e4},this.supportUnnestArrayAgg=!0,this.supportsAggDistinct=!0,this.supportsCTEinCoorelatedSubQueries=!0,this.supportsSafeCast=!1,this.dontUnionIndex=!1,this.supportsQualify=!1,this.supportsNesting=!0,this.experimental=!0,this.nativeBoolean=!1,this.supportsFullJoin=!1,this.supportsPipelinesInViews=!1,this.readsNestedData=!1,this.supportsComplexFilteredSources=!1,this.supportsArraysInData=!1}malloyTypeToSQLType(e){return e.type==="number"?e.numberType==="integer"?"BIGINT":"DOUBLE":e.type}sqlTypeToMalloyType(e){var n,r;const i=(r=(n=e.match(/^(\w+)/))===null||n===void 0?void 0:n.at(0))!==null&&r!==void 0?r:e;return Cce[i.toLowerCase()]||{type:"sql native",rawType:i}}quoteTablePath(e){return e.split(".").map(n=>`\`${n}\``).join(".")}sqlGroupSetTable(e){return`CROSS JOIN (select number - 1 as group_set from JSON_TABLE(cast(concat("[1", repeat(",1", ${e}), "]") as JSON),"$[*]" COLUMNS(number FOR ORDINALITY)) group_set) as group_set`}sqlAnyValue(e,n){return`MAX(${n})`}mapFields(e){return e.map(n=>`"${n.rawName}", ${n.sqlExpression}`).join(", ")}sqlAggregateTurtle(e,n,r,i){const s=i?",xrmmex":",";let o=`GROUP_CONCAT(
|
|
286
286
|
IF(group_set=${e},
|
|
287
287
|
JSON_OBJECT(${this.mapFields(n)})
|
|
288
288
|
, null
|
|
289
289
|
)
|
|
290
290
|
${r}
|
|
291
291
|
SEPARATOR '${s}'
|
|
292
|
-
)`;return i&&(o=`SUBSTRING_INDEX(${o}, '${s}', ${i})`,o=`REPLACE(${o},'${s}',',')`),o=`JSON_EXTRACT(CONCAT('[',${o},']'),'$')`,o}sqlAnyValueTurtle(e,n){const r=this.mapFieldsForJsonObject(n);return`MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END)`}sqlAnyValueLastTurtle(e,n,r){return`MAX(CASE WHEN group_set=${n} AND ${e} IS NOT NULL THEN ${e} END) as ${r}`}sqlCoaleseMeasuresInline(e,n){const r=this.mapFieldsForJsonObject(n),i=this.mapFieldsForJsonObject(n,!0);return`COALESCE(MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END),JSON_OBJECT(${i}))`}malloyToSQL(e){return e==="number"?"DOUBLE":e==="string"?"TEXT":e==="struct"?"JSON":e}unnestColumns(e){const n=[];for(const r of e)n.push(`${this.sqlMaybeQuoteIdentifier(r.sqlOutputName)} ${this.malloyToSQL(r.type)} PATH "$.${r.rawName}"`);return n.join(`,
|
|
292
|
+
)`;return i&&(o=`SUBSTRING_INDEX(${o}, '${s}', ${i})`,o=`REPLACE(${o},'${s}',',')`),o=`COALESCE(JSON_EXTRACT(CONCAT('[',${o},']'),'$'),JSON_ARRAY())`,o}sqlAnyValueTurtle(e,n){const r=this.mapFieldsForJsonObject(n);return`MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END)`}sqlAnyValueLastTurtle(e,n,r){return`MAX(CASE WHEN group_set=${n} AND ${e} IS NOT NULL THEN ${e} END) as ${r}`}sqlCoaleseMeasuresInline(e,n){const r=this.mapFieldsForJsonObject(n),i=this.mapFieldsForJsonObject(n,!0);return`COALESCE(MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END),JSON_OBJECT(${i}))`}malloyToSQL(e){return e==="number"?"DOUBLE":e==="string"?"TEXT":e==="struct"||e==="array"||e==="record"?"JSON":e}unnestColumns(e){const n=[];for(const r of e)n.push(`${this.sqlMaybeQuoteIdentifier(r.sqlOutputName)} ${this.malloyToSQL(r.type)} PATH "$.${r.rawName}"`);return n.join(`,
|
|
293
293
|
`)}jsonTable(e,n){return`JSON_TABLE(${e}, '$[*]'
|
|
294
294
|
COLUMNS (
|
|
295
295
|
__row_id FOR ORDINALITY,
|
|
@@ -4759,7 +4759,9 @@ p4.MYSQL_MALLOY_STANDARD_OVERLOADS = {
|
|
|
4759
4759
|
}
|
|
4760
4760
|
},
|
|
4761
4761
|
byte_length: { sql: "(LENGTH(CAST(${value} AS VARBINARY)))" },
|
|
4762
|
-
chr: {
|
|
4762
|
+
chr: {
|
|
4763
|
+
sql: "CASE WHEN ${value} = 0 THEN '' ELSE CHAR(${value} USING latin1) END"
|
|
4764
|
+
}
|
|
4763
4765
|
};
|
|
4764
4766
|
Object.defineProperty(d4, "__esModule", { value: !0 });
|
|
4765
4767
|
d4.MySQLDialect = void 0;
|
|
@@ -4802,7 +4804,7 @@ const _T = ce, sxe = Nt, k2 = T0, gB = R0, oxe = h4, uxe = p4, axe = {
|
|
|
4802
4804
|
};
|
|
4803
4805
|
class fxe extends k2.Dialect {
|
|
4804
4806
|
constructor() {
|
|
4805
|
-
super(...arguments), this.name = "mysql", this.defaultNumberType = "DOUBLE PRECISION", this.defaultDecimalType = "DECIMAL", this.udfPrefix = "ms_temp.__udf", this.hasFinalStage = !1, this.stringTypeName = "VARCHAR(255)", this.divisionIsInteger = !0, this.supportsSumDistinctFunction = !0, this.unnestWithNumbers = !1, this.defaultSampling = { rows: 5e4 }, this.supportUnnestArrayAgg = !0, this.supportsAggDistinct = !0, this.supportsCTEinCoorelatedSubQueries = !0, this.supportsSafeCast = !1, this.dontUnionIndex = !1, this.supportsQualify = !1, this.supportsNesting = !0, this.experimental = !0, this.nativeBoolean = !1, this.supportsFullJoin = !1, this.supportsPipelinesInViews = !1, this.readsNestedData = !1, this.supportsComplexFilteredSources = !1;
|
|
4807
|
+
super(...arguments), this.name = "mysql", this.defaultNumberType = "DOUBLE PRECISION", this.defaultDecimalType = "DECIMAL", this.udfPrefix = "ms_temp.__udf", this.hasFinalStage = !1, this.stringTypeName = "VARCHAR(255)", this.divisionIsInteger = !0, this.supportsSumDistinctFunction = !0, this.unnestWithNumbers = !1, this.defaultSampling = { rows: 5e4 }, this.supportUnnestArrayAgg = !0, this.supportsAggDistinct = !0, this.supportsCTEinCoorelatedSubQueries = !0, this.supportsSafeCast = !1, this.dontUnionIndex = !1, this.supportsQualify = !1, this.supportsNesting = !0, this.experimental = !0, this.nativeBoolean = !1, this.supportsFullJoin = !1, this.supportsPipelinesInViews = !1, this.readsNestedData = !1, this.supportsComplexFilteredSources = !1, this.supportsArraysInData = !1;
|
|
4806
4808
|
}
|
|
4807
4809
|
malloyTypeToSQLType(e) {
|
|
4808
4810
|
return e.type === "number" ? e.numberType === "integer" ? "BIGINT" : "DOUBLE" : e.type;
|
|
@@ -4837,7 +4839,7 @@ class fxe extends k2.Dialect {
|
|
|
4837
4839
|
${r}
|
|
4838
4840
|
SEPARATOR '${s}'
|
|
4839
4841
|
)`;
|
|
4840
|
-
return i && (o = `SUBSTRING_INDEX(${o}, '${s}', ${i})`, o = `REPLACE(${o},'${s}',',')`), o = `JSON_EXTRACT(CONCAT('[',${o},']'),'$')`, o;
|
|
4842
|
+
return i && (o = `SUBSTRING_INDEX(${o}, '${s}', ${i})`, o = `REPLACE(${o},'${s}',',')`), o = `COALESCE(JSON_EXTRACT(CONCAT('[',${o},']'),'$'),JSON_ARRAY())`, o;
|
|
4841
4843
|
}
|
|
4842
4844
|
sqlAnyValueTurtle(e, n) {
|
|
4843
4845
|
const r = this.mapFieldsForJsonObject(n);
|
|
@@ -4851,7 +4853,7 @@ class fxe extends k2.Dialect {
|
|
|
4851
4853
|
return `COALESCE(MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END),JSON_OBJECT(${i}))`;
|
|
4852
4854
|
}
|
|
4853
4855
|
malloyToSQL(e) {
|
|
4854
|
-
return e === "number" ? "DOUBLE" : e === "string" ? "TEXT" : e === "struct" ? "JSON" : e;
|
|
4856
|
+
return e === "number" ? "DOUBLE" : e === "string" ? "TEXT" : e === "struct" || e === "array" || e === "record" ? "JSON" : e;
|
|
4855
4857
|
}
|
|
4856
4858
|
unnestColumns(e) {
|
|
4857
4859
|
const n = [];
|
|
@@ -282,14 +282,14 @@ ${(0,JB.indent)(n)}
|
|
|
282
282
|
CROSS JOIN UNNEST(COALESCE(${e},ARRAY[NULL])) WITH ORDINALITY as ${n}(value, __row_id_almost_${n})
|
|
283
283
|
CROSS JOIN UNNEST(ARRAY[CASE WHEN ${e} IS NOT NULL THEN __row_id_almost_${n} END]) as ${n}_ignore(__row_id_from_${n})`:`CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) as ${n}(value) `:i?`-- Simulate a left join
|
|
284
284
|
CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) WITH ORDINALITY as ${n}_outer(${n}, __row_id_almost_${n})
|
|
285
|
-
CROSS JOIN UNNEST(ARRAY[CASE WHEN ${e} IS NOT NULL THEN __row_id_almost_${n} END]) as ${n}_ignore(__row_id_from_${n})`:`CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) as ${n}_outer(${n})`}}Ix.PrestoDialect=nxe,function(t){var e=D&&D.__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=D&&D.__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(Ix,t)}(QT);var XT={},Jy={},Ky={};Object.defineProperty(Ky,"__esModule",{value:!0}),Ky.MYSQL_DIALECT_FUNCTIONS=void 0;const JT={default_separator:{takes:{value:{dimension:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:})"}},with_separator:{takes:{value:{dimension:"string"},separator:{literal:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:} SEPARATOR ${separator})"}}},rxe={default_separator:{...JT.default_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:})",defaultOrderByArgIndex:0}},with_separator:{...JT.with_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:} SEPARATOR ${separator})",defaultOrderByArgIndex:0}}};Ky.MYSQL_DIALECT_FUNCTIONS={string_agg:JT,string_agg_distinct:rxe};var Zy={};Object.defineProperty(Zy,"__esModule",{value:!0}),Zy.MYSQL_MALLOY_STANDARD_OVERLOADS=void 0,Zy.MYSQL_MALLOY_STANDARD_OVERLOADS={regexp_extract:{function:"REGEXP_SUBSTR"},replace:{regular_expression:{sql:"REGEXP_REPLACE(${value}, ${pattern}, ${replacement}, 1,0)"}},trunc:{to_integer:{sql:"(FLOOR(${value}) + IF(${value} < 0,1,0))"},to_precision:{sql:"(ABS(FLOOR(${value} * POW(10,${precision}))/POW(10,${precision}))*IF(${value} < 0, -1, 1))"}},log:{sql:"log(${base},${value})"},div:{sql:"FLOOR(${dividend} / ${divisor})"},strpos:{sql:"LOCATE(${search_string},${test_string})"},starts_with:{sql:"COALESCE(${value} LIKE CONCAT(${prefix}, '%'),0)"},ends_with:{sql:"COALESCE(${value} LIKE CONCAT('%',${suffix}),0)"},trim:{characters:{sql:"TRIM(BOTH ${trim_characters} FROM ${value})"}},ltrim:{characters:{sql:"TRIM(LEADING ${trim_characters} FROM ${value})"}},rtrim:{characters:{sql:"TRIM(TRAILING ${trim_characters} FROM ${value})"}},byte_length:{sql:"(LENGTH(CAST(${value} AS VARBINARY)))"},chr:{sql:"CASE WHEN ${value} = 0 THEN '' ELSE
|
|
285
|
+
CROSS JOIN UNNEST(ARRAY[CASE WHEN ${e} IS NOT NULL THEN __row_id_almost_${n} END]) as ${n}_ignore(__row_id_from_${n})`:`CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) as ${n}_outer(${n})`}}Ix.PrestoDialect=nxe,function(t){var e=D&&D.__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=D&&D.__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(Ix,t)}(QT);var XT={},Jy={},Ky={};Object.defineProperty(Ky,"__esModule",{value:!0}),Ky.MYSQL_DIALECT_FUNCTIONS=void 0;const JT={default_separator:{takes:{value:{dimension:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:})"}},with_separator:{takes:{value:{dimension:"string"},separator:{literal:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:} SEPARATOR ${separator})"}}},rxe={default_separator:{...JT.default_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:})",defaultOrderByArgIndex:0}},with_separator:{...JT.with_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:} SEPARATOR ${separator})",defaultOrderByArgIndex:0}}};Ky.MYSQL_DIALECT_FUNCTIONS={string_agg:JT,string_agg_distinct:rxe};var Zy={};Object.defineProperty(Zy,"__esModule",{value:!0}),Zy.MYSQL_MALLOY_STANDARD_OVERLOADS=void 0,Zy.MYSQL_MALLOY_STANDARD_OVERLOADS={regexp_extract:{function:"REGEXP_SUBSTR"},replace:{regular_expression:{sql:"REGEXP_REPLACE(${value}, ${pattern}, ${replacement}, 1,0)"}},trunc:{to_integer:{sql:"(FLOOR(${value}) + IF(${value} < 0,1,0))"},to_precision:{sql:"(ABS(FLOOR(${value} * POW(10,${precision}))/POW(10,${precision}))*IF(${value} < 0, -1, 1))"}},log:{sql:"log(${base},${value})"},div:{sql:"FLOOR(${dividend} / ${divisor})"},strpos:{sql:"LOCATE(${search_string},${test_string})"},starts_with:{sql:"COALESCE(${value} LIKE CONCAT(${prefix}, '%'),0)"},ends_with:{sql:"COALESCE(${value} LIKE CONCAT('%',${suffix}),0)"},trim:{characters:{sql:"TRIM(BOTH ${trim_characters} FROM ${value})"}},ltrim:{characters:{sql:"TRIM(LEADING ${trim_characters} FROM ${value})"}},rtrim:{characters:{sql:"TRIM(TRAILING ${trim_characters} FROM ${value})"}},byte_length:{sql:"(LENGTH(CAST(${value} AS VARBINARY)))"},chr:{sql:"CASE WHEN ${value} = 0 THEN '' ELSE CHAR(${value} USING latin1) END"}},Object.defineProperty(Jy,"__esModule",{value:!0}),Jy.MySQLDialect=void 0;const KT=ce,ixe=Nt,j2=_l,ek=bl,sxe=Ky,oxe=Zy,uxe={number:"double precision",string:"varchar(255)"},axe={day_of_week:"DAYOFWEEK",day_of_year:"DAYOFYEAR"},tk={second:1,minute:60,hour:3600,day:24*3600,week:7*24*3600},lxe={tinyint:{type:"boolean"},smallint:{type:"number",numberType:"integer"},mediumint:{type:"number",numberType:"integer"},int:{type:"number",numberType:"integer"},bigint:{type:"number",numberType:"integer"},"tinyint unsigned":{type:"number",numberType:"integer"},"smallint unsigned":{type:"number",numberType:"integer"},"mediumint unsigned":{type:"number",numberType:"integer"},"int unsigned":{type:"number",numberType:"integer"},"bigint unsigned":{type:"number",numberType:"integer"},double:{type:"number",numberType:"float"},varchar:{type:"string"},varbinary:{type:"string"},char:{type:"string"},text:{type:"string"},date:{type:"date"},datetime:{type:"timestamp"},timestamp:{type:"timestamp"},time:{type:"string"},decimal:{type:"number",numberType:"float"},"tinyint(1)":{type:"boolean"}};class cxe extends j2.Dialect{constructor(){super(...arguments),this.name="mysql",this.defaultNumberType="DOUBLE PRECISION",this.defaultDecimalType="DECIMAL",this.udfPrefix="ms_temp.__udf",this.hasFinalStage=!1,this.stringTypeName="VARCHAR(255)",this.divisionIsInteger=!0,this.supportsSumDistinctFunction=!0,this.unnestWithNumbers=!1,this.defaultSampling={rows:5e4},this.supportUnnestArrayAgg=!0,this.supportsAggDistinct=!0,this.supportsCTEinCoorelatedSubQueries=!0,this.supportsSafeCast=!1,this.dontUnionIndex=!1,this.supportsQualify=!1,this.supportsNesting=!0,this.experimental=!0,this.nativeBoolean=!1,this.supportsFullJoin=!1,this.supportsPipelinesInViews=!1,this.readsNestedData=!1,this.supportsComplexFilteredSources=!1,this.supportsArraysInData=!1}malloyTypeToSQLType(e){return e.type==="number"?e.numberType==="integer"?"BIGINT":"DOUBLE":e.type}sqlTypeToMalloyType(e){var n,r;const i=(r=(n=e.match(/^(\w+)/))===null||n===void 0?void 0:n.at(0))!==null&&r!==void 0?r:e;return lxe[i.toLowerCase()]||{type:"sql native",rawType:i}}quoteTablePath(e){return e.split(".").map(n=>`\`${n}\``).join(".")}sqlGroupSetTable(e){return`CROSS JOIN (select number - 1 as group_set from JSON_TABLE(cast(concat("[1", repeat(",1", ${e}), "]") as JSON),"$[*]" COLUMNS(number FOR ORDINALITY)) group_set) as group_set`}sqlAnyValue(e,n){return`MAX(${n})`}mapFields(e){return e.map(n=>`"${n.rawName}", ${n.sqlExpression}`).join(", ")}sqlAggregateTurtle(e,n,r,i){const s=i?",xrmmex":",";let o=`GROUP_CONCAT(
|
|
286
286
|
IF(group_set=${e},
|
|
287
287
|
JSON_OBJECT(${this.mapFields(n)})
|
|
288
288
|
, null
|
|
289
289
|
)
|
|
290
290
|
${r}
|
|
291
291
|
SEPARATOR '${s}'
|
|
292
|
-
)`;return i&&(o=`SUBSTRING_INDEX(${o}, '${s}', ${i})`,o=`REPLACE(${o},'${s}',',')`),o=`JSON_EXTRACT(CONCAT('[',${o},']'),'$')`,o}sqlAnyValueTurtle(e,n){const r=this.mapFieldsForJsonObject(n);return`MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END)`}sqlAnyValueLastTurtle(e,n,r){return`MAX(CASE WHEN group_set=${n} AND ${e} IS NOT NULL THEN ${e} END) as ${r}`}sqlCoaleseMeasuresInline(e,n){const r=this.mapFieldsForJsonObject(n),i=this.mapFieldsForJsonObject(n,!0);return`COALESCE(MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END),JSON_OBJECT(${i}))`}malloyToSQL(e){return e==="number"?"DOUBLE":e==="string"?"TEXT":e==="struct"?"JSON":e}unnestColumns(e){const n=[];for(const r of e)n.push(`${this.sqlMaybeQuoteIdentifier(r.sqlOutputName)} ${this.malloyToSQL(r.type)} PATH "$.${r.rawName}"`);return n.join(`,
|
|
292
|
+
)`;return i&&(o=`SUBSTRING_INDEX(${o}, '${s}', ${i})`,o=`REPLACE(${o},'${s}',',')`),o=`COALESCE(JSON_EXTRACT(CONCAT('[',${o},']'),'$'),JSON_ARRAY())`,o}sqlAnyValueTurtle(e,n){const r=this.mapFieldsForJsonObject(n);return`MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END)`}sqlAnyValueLastTurtle(e,n,r){return`MAX(CASE WHEN group_set=${n} AND ${e} IS NOT NULL THEN ${e} END) as ${r}`}sqlCoaleseMeasuresInline(e,n){const r=this.mapFieldsForJsonObject(n),i=this.mapFieldsForJsonObject(n,!0);return`COALESCE(MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END),JSON_OBJECT(${i}))`}malloyToSQL(e){return e==="number"?"DOUBLE":e==="string"?"TEXT":e==="struct"||e==="array"||e==="record"?"JSON":e}unnestColumns(e){const n=[];for(const r of e)n.push(`${this.sqlMaybeQuoteIdentifier(r.sqlOutputName)} ${this.malloyToSQL(r.type)} PATH "$.${r.rawName}"`);return n.join(`,
|
|
293
293
|
`)}jsonTable(e,n){return`JSON_TABLE(${e}, '$[*]'
|
|
294
294
|
COLUMNS (
|
|
295
295
|
__row_id FOR ORDINALITY,
|
|
@@ -4759,7 +4759,9 @@ p4.MYSQL_MALLOY_STANDARD_OVERLOADS = {
|
|
|
4759
4759
|
}
|
|
4760
4760
|
},
|
|
4761
4761
|
byte_length: { sql: "(LENGTH(CAST(${value} AS VARBINARY)))" },
|
|
4762
|
-
chr: {
|
|
4762
|
+
chr: {
|
|
4763
|
+
sql: "CASE WHEN ${value} = 0 THEN '' ELSE CHAR(${value} USING latin1) END"
|
|
4764
|
+
}
|
|
4763
4765
|
};
|
|
4764
4766
|
Object.defineProperty(d4, "__esModule", { value: !0 });
|
|
4765
4767
|
d4.MySQLDialect = void 0;
|
|
@@ -4802,7 +4804,7 @@ const _T = ce, sxe = Nt, k2 = T0, gB = R0, oxe = h4, uxe = p4, axe = {
|
|
|
4802
4804
|
};
|
|
4803
4805
|
class fxe extends k2.Dialect {
|
|
4804
4806
|
constructor() {
|
|
4805
|
-
super(...arguments), this.name = "mysql", this.defaultNumberType = "DOUBLE PRECISION", this.defaultDecimalType = "DECIMAL", this.udfPrefix = "ms_temp.__udf", this.hasFinalStage = !1, this.stringTypeName = "VARCHAR(255)", this.divisionIsInteger = !0, this.supportsSumDistinctFunction = !0, this.unnestWithNumbers = !1, this.defaultSampling = { rows: 5e4 }, this.supportUnnestArrayAgg = !0, this.supportsAggDistinct = !0, this.supportsCTEinCoorelatedSubQueries = !0, this.supportsSafeCast = !1, this.dontUnionIndex = !1, this.supportsQualify = !1, this.supportsNesting = !0, this.experimental = !0, this.nativeBoolean = !1, this.supportsFullJoin = !1, this.supportsPipelinesInViews = !1, this.readsNestedData = !1, this.supportsComplexFilteredSources = !1;
|
|
4807
|
+
super(...arguments), this.name = "mysql", this.defaultNumberType = "DOUBLE PRECISION", this.defaultDecimalType = "DECIMAL", this.udfPrefix = "ms_temp.__udf", this.hasFinalStage = !1, this.stringTypeName = "VARCHAR(255)", this.divisionIsInteger = !0, this.supportsSumDistinctFunction = !0, this.unnestWithNumbers = !1, this.defaultSampling = { rows: 5e4 }, this.supportUnnestArrayAgg = !0, this.supportsAggDistinct = !0, this.supportsCTEinCoorelatedSubQueries = !0, this.supportsSafeCast = !1, this.dontUnionIndex = !1, this.supportsQualify = !1, this.supportsNesting = !0, this.experimental = !0, this.nativeBoolean = !1, this.supportsFullJoin = !1, this.supportsPipelinesInViews = !1, this.readsNestedData = !1, this.supportsComplexFilteredSources = !1, this.supportsArraysInData = !1;
|
|
4806
4808
|
}
|
|
4807
4809
|
malloyTypeToSQLType(e) {
|
|
4808
4810
|
return e.type === "number" ? e.numberType === "integer" ? "BIGINT" : "DOUBLE" : e.type;
|
|
@@ -4837,7 +4839,7 @@ class fxe extends k2.Dialect {
|
|
|
4837
4839
|
${r}
|
|
4838
4840
|
SEPARATOR '${s}'
|
|
4839
4841
|
)`;
|
|
4840
|
-
return i && (o = `SUBSTRING_INDEX(${o}, '${s}', ${i})`, o = `REPLACE(${o},'${s}',',')`), o = `JSON_EXTRACT(CONCAT('[',${o},']'),'$')`, o;
|
|
4842
|
+
return i && (o = `SUBSTRING_INDEX(${o}, '${s}', ${i})`, o = `REPLACE(${o},'${s}',',')`), o = `COALESCE(JSON_EXTRACT(CONCAT('[',${o},']'),'$'),JSON_ARRAY())`, o;
|
|
4841
4843
|
}
|
|
4842
4844
|
sqlAnyValueTurtle(e, n) {
|
|
4843
4845
|
const r = this.mapFieldsForJsonObject(n);
|
|
@@ -4851,7 +4853,7 @@ class fxe extends k2.Dialect {
|
|
|
4851
4853
|
return `COALESCE(MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END),JSON_OBJECT(${i}))`;
|
|
4852
4854
|
}
|
|
4853
4855
|
malloyToSQL(e) {
|
|
4854
|
-
return e === "number" ? "DOUBLE" : e === "string" ? "TEXT" : e === "struct" ? "JSON" : e;
|
|
4856
|
+
return e === "number" ? "DOUBLE" : e === "string" ? "TEXT" : e === "struct" || e === "array" || e === "record" ? "JSON" : e;
|
|
4855
4857
|
}
|
|
4856
4858
|
unnestColumns(e) {
|
|
4857
4859
|
const n = [];
|
|
@@ -282,14 +282,14 @@ ${(0,XB.indent)(n)}
|
|
|
282
282
|
CROSS JOIN UNNEST(COALESCE(${e},ARRAY[NULL])) WITH ORDINALITY as ${n}(value, __row_id_almost_${n})
|
|
283
283
|
CROSS JOIN UNNEST(ARRAY[CASE WHEN ${e} IS NOT NULL THEN __row_id_almost_${n} END]) as ${n}_ignore(__row_id_from_${n})`:`CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) as ${n}(value) `:i?`-- Simulate a left join
|
|
284
284
|
CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) WITH ORDINALITY as ${n}_outer(${n}, __row_id_almost_${n})
|
|
285
|
-
CROSS JOIN UNNEST(ARRAY[CASE WHEN ${e} IS NOT NULL THEN __row_id_almost_${n} END]) as ${n}_ignore(__row_id_from_${n})`:`CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) as ${n}_outer(${n})`}}Ix.PrestoDialect=nxe,function(t){var e=D&&D.__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=D&&D.__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(Ix,t)}(HT);var YT={},Xy={},Jy={};Object.defineProperty(Jy,"__esModule",{value:!0}),Jy.MYSQL_DIALECT_FUNCTIONS=void 0;const XT={default_separator:{takes:{value:{dimension:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:})"}},with_separator:{takes:{value:{dimension:"string"},separator:{literal:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:} SEPARATOR ${separator})"}}},rxe={default_separator:{...XT.default_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:})",defaultOrderByArgIndex:0}},with_separator:{...XT.with_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:} SEPARATOR ${separator})",defaultOrderByArgIndex:0}}};Jy.MYSQL_DIALECT_FUNCTIONS={string_agg:XT,string_agg_distinct:rxe};var Ky={};Object.defineProperty(Ky,"__esModule",{value:!0}),Ky.MYSQL_MALLOY_STANDARD_OVERLOADS=void 0,Ky.MYSQL_MALLOY_STANDARD_OVERLOADS={regexp_extract:{function:"REGEXP_SUBSTR"},replace:{regular_expression:{sql:"REGEXP_REPLACE(${value}, ${pattern}, ${replacement}, 1,0)"}},trunc:{to_integer:{sql:"(FLOOR(${value}) + IF(${value} < 0,1,0))"},to_precision:{sql:"(ABS(FLOOR(${value} * POW(10,${precision}))/POW(10,${precision}))*IF(${value} < 0, -1, 1))"}},log:{sql:"log(${base},${value})"},div:{sql:"FLOOR(${dividend} / ${divisor})"},strpos:{sql:"LOCATE(${search_string},${test_string})"},starts_with:{sql:"COALESCE(${value} LIKE CONCAT(${prefix}, '%'),0)"},ends_with:{sql:"COALESCE(${value} LIKE CONCAT('%',${suffix}),0)"},trim:{characters:{sql:"TRIM(BOTH ${trim_characters} FROM ${value})"}},ltrim:{characters:{sql:"TRIM(LEADING ${trim_characters} FROM ${value})"}},rtrim:{characters:{sql:"TRIM(TRAILING ${trim_characters} FROM ${value})"}},byte_length:{sql:"(LENGTH(CAST(${value} AS VARBINARY)))"},chr:{sql:"CASE WHEN ${value} = 0 THEN '' ELSE
|
|
285
|
+
CROSS JOIN UNNEST(ARRAY[CASE WHEN ${e} IS NOT NULL THEN __row_id_almost_${n} END]) as ${n}_ignore(__row_id_from_${n})`:`CROSS JOIN UNNEST(COALESCE(${e}, ARRAY[NULL])) as ${n}_outer(${n})`}}Ix.PrestoDialect=nxe,function(t){var e=D&&D.__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=D&&D.__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(Ix,t)}(HT);var YT={},Xy={},Jy={};Object.defineProperty(Jy,"__esModule",{value:!0}),Jy.MYSQL_DIALECT_FUNCTIONS=void 0;const XT={default_separator:{takes:{value:{dimension:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:})"}},with_separator:{takes:{value:{dimension:"string"},separator:{literal:"string"}},returns:{measure:"string"},supportsOrderBy:!0,impl:{sql:"GROUP_CONCAT(${value} ${order_by:} SEPARATOR ${separator})"}}},rxe={default_separator:{...XT.default_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:})",defaultOrderByArgIndex:0}},with_separator:{...XT.with_separator,isSymmetric:!0,supportsOrderBy:"only_default",impl:{sql:"GROUP_CONCAT(DISTINCT ${value} ${order_by:} SEPARATOR ${separator})",defaultOrderByArgIndex:0}}};Jy.MYSQL_DIALECT_FUNCTIONS={string_agg:XT,string_agg_distinct:rxe};var Ky={};Object.defineProperty(Ky,"__esModule",{value:!0}),Ky.MYSQL_MALLOY_STANDARD_OVERLOADS=void 0,Ky.MYSQL_MALLOY_STANDARD_OVERLOADS={regexp_extract:{function:"REGEXP_SUBSTR"},replace:{regular_expression:{sql:"REGEXP_REPLACE(${value}, ${pattern}, ${replacement}, 1,0)"}},trunc:{to_integer:{sql:"(FLOOR(${value}) + IF(${value} < 0,1,0))"},to_precision:{sql:"(ABS(FLOOR(${value} * POW(10,${precision}))/POW(10,${precision}))*IF(${value} < 0, -1, 1))"}},log:{sql:"log(${base},${value})"},div:{sql:"FLOOR(${dividend} / ${divisor})"},strpos:{sql:"LOCATE(${search_string},${test_string})"},starts_with:{sql:"COALESCE(${value} LIKE CONCAT(${prefix}, '%'),0)"},ends_with:{sql:"COALESCE(${value} LIKE CONCAT('%',${suffix}),0)"},trim:{characters:{sql:"TRIM(BOTH ${trim_characters} FROM ${value})"}},ltrim:{characters:{sql:"TRIM(LEADING ${trim_characters} FROM ${value})"}},rtrim:{characters:{sql:"TRIM(TRAILING ${trim_characters} FROM ${value})"}},byte_length:{sql:"(LENGTH(CAST(${value} AS VARBINARY)))"},chr:{sql:"CASE WHEN ${value} = 0 THEN '' ELSE CHAR(${value} USING latin1) END"}},Object.defineProperty(Xy,"__esModule",{value:!0}),Xy.MySQLDialect=void 0;const JT=ce,ixe=Nt,M2=_l,ZB=bl,sxe=Jy,oxe=Ky,uxe={number:"double precision",string:"varchar(255)"},axe={day_of_week:"DAYOFWEEK",day_of_year:"DAYOFYEAR"},ek={second:1,minute:60,hour:3600,day:24*3600,week:7*24*3600},lxe={tinyint:{type:"boolean"},smallint:{type:"number",numberType:"integer"},mediumint:{type:"number",numberType:"integer"},int:{type:"number",numberType:"integer"},bigint:{type:"number",numberType:"integer"},"tinyint unsigned":{type:"number",numberType:"integer"},"smallint unsigned":{type:"number",numberType:"integer"},"mediumint unsigned":{type:"number",numberType:"integer"},"int unsigned":{type:"number",numberType:"integer"},"bigint unsigned":{type:"number",numberType:"integer"},double:{type:"number",numberType:"float"},varchar:{type:"string"},varbinary:{type:"string"},char:{type:"string"},text:{type:"string"},date:{type:"date"},datetime:{type:"timestamp"},timestamp:{type:"timestamp"},time:{type:"string"},decimal:{type:"number",numberType:"float"},"tinyint(1)":{type:"boolean"}};class cxe extends M2.Dialect{constructor(){super(...arguments),this.name="mysql",this.defaultNumberType="DOUBLE PRECISION",this.defaultDecimalType="DECIMAL",this.udfPrefix="ms_temp.__udf",this.hasFinalStage=!1,this.stringTypeName="VARCHAR(255)",this.divisionIsInteger=!0,this.supportsSumDistinctFunction=!0,this.unnestWithNumbers=!1,this.defaultSampling={rows:5e4},this.supportUnnestArrayAgg=!0,this.supportsAggDistinct=!0,this.supportsCTEinCoorelatedSubQueries=!0,this.supportsSafeCast=!1,this.dontUnionIndex=!1,this.supportsQualify=!1,this.supportsNesting=!0,this.experimental=!0,this.nativeBoolean=!1,this.supportsFullJoin=!1,this.supportsPipelinesInViews=!1,this.readsNestedData=!1,this.supportsComplexFilteredSources=!1,this.supportsArraysInData=!1}malloyTypeToSQLType(e){return e.type==="number"?e.numberType==="integer"?"BIGINT":"DOUBLE":e.type}sqlTypeToMalloyType(e){var n,r;const i=(r=(n=e.match(/^(\w+)/))===null||n===void 0?void 0:n.at(0))!==null&&r!==void 0?r:e;return lxe[i.toLowerCase()]||{type:"sql native",rawType:i}}quoteTablePath(e){return e.split(".").map(n=>`\`${n}\``).join(".")}sqlGroupSetTable(e){return`CROSS JOIN (select number - 1 as group_set from JSON_TABLE(cast(concat("[1", repeat(",1", ${e}), "]") as JSON),"$[*]" COLUMNS(number FOR ORDINALITY)) group_set) as group_set`}sqlAnyValue(e,n){return`MAX(${n})`}mapFields(e){return e.map(n=>`"${n.rawName}", ${n.sqlExpression}`).join(", ")}sqlAggregateTurtle(e,n,r,i){const s=i?",xrmmex":",";let o=`GROUP_CONCAT(
|
|
286
286
|
IF(group_set=${e},
|
|
287
287
|
JSON_OBJECT(${this.mapFields(n)})
|
|
288
288
|
, null
|
|
289
289
|
)
|
|
290
290
|
${r}
|
|
291
291
|
SEPARATOR '${s}'
|
|
292
|
-
)`;return i&&(o=`SUBSTRING_INDEX(${o}, '${s}', ${i})`,o=`REPLACE(${o},'${s}',',')`),o=`JSON_EXTRACT(CONCAT('[',${o},']'),'$')`,o}sqlAnyValueTurtle(e,n){const r=this.mapFieldsForJsonObject(n);return`MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END)`}sqlAnyValueLastTurtle(e,n,r){return`MAX(CASE WHEN group_set=${n} AND ${e} IS NOT NULL THEN ${e} END) as ${r}`}sqlCoaleseMeasuresInline(e,n){const r=this.mapFieldsForJsonObject(n),i=this.mapFieldsForJsonObject(n,!0);return`COALESCE(MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END),JSON_OBJECT(${i}))`}malloyToSQL(e){return e==="number"?"DOUBLE":e==="string"?"TEXT":e==="struct"?"JSON":e}unnestColumns(e){const n=[];for(const r of e)n.push(`${this.sqlMaybeQuoteIdentifier(r.sqlOutputName)} ${this.malloyToSQL(r.type)} PATH "$.${r.rawName}"`);return n.join(`,
|
|
292
|
+
)`;return i&&(o=`SUBSTRING_INDEX(${o}, '${s}', ${i})`,o=`REPLACE(${o},'${s}',',')`),o=`COALESCE(JSON_EXTRACT(CONCAT('[',${o},']'),'$'),JSON_ARRAY())`,o}sqlAnyValueTurtle(e,n){const r=this.mapFieldsForJsonObject(n);return`MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END)`}sqlAnyValueLastTurtle(e,n,r){return`MAX(CASE WHEN group_set=${n} AND ${e} IS NOT NULL THEN ${e} END) as ${r}`}sqlCoaleseMeasuresInline(e,n){const r=this.mapFieldsForJsonObject(n),i=this.mapFieldsForJsonObject(n,!0);return`COALESCE(MAX(CASE WHEN group_set=${e} THEN JSON_OBJECT(${r}) END),JSON_OBJECT(${i}))`}malloyToSQL(e){return e==="number"?"DOUBLE":e==="string"?"TEXT":e==="struct"||e==="array"||e==="record"?"JSON":e}unnestColumns(e){const n=[];for(const r of e)n.push(`${this.sqlMaybeQuoteIdentifier(r.sqlOutputName)} ${this.malloyToSQL(r.type)} PATH "$.${r.rawName}"`);return n.join(`,
|
|
293
293
|
`)}jsonTable(e,n){return`JSON_TABLE(${e}, '$[*]'
|
|
294
294
|
COLUMNS (
|
|
295
295
|
__row_id FOR ORDINALITY,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@malloydata/render",
|
|
3
|
-
"version": "0.0.196
|
|
3
|
+
"version": "0.0.196",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/module/index.umd.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"build-types": "tsc --build --declaration --emitDeclarationOnly"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@malloydata/malloy": "^0.0.196
|
|
35
|
+
"@malloydata/malloy": "^0.0.196",
|
|
36
36
|
"@tanstack/solid-virtual": "^3.10.4",
|
|
37
37
|
"component-register": "^0.8.6",
|
|
38
38
|
"lodash": "^4.17.20",
|