@cubejs-backend/snowflake-driver 1.6.38 → 1.6.40

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.
@@ -1 +1 @@
1
- {"version":3,"file":"SnowflakeDriver.d.ts","sourceRoot":"","sources":["../../src/SnowflakeDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SnowflakeDriver.d.ts","sourceRoot":"","sources":["../../src/SnowflakeDriver.ts"],"names":[],"mappings":"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"}
@@ -12,61 +12,11 @@ exports.SnowflakeDriver = void 0;
12
12
  const shared_1 = require("@cubejs-backend/shared");
13
13
  const snowflake_sdk_1 = __importDefault(require("snowflake-sdk"));
14
14
  const base_driver_1 = require("@cubejs-backend/base-driver");
15
- const date_fns_timezone_1 = require("date-fns-timezone");
16
15
  const promises_1 = __importDefault(require("fs/promises"));
17
16
  const crypto_1 = __importDefault(require("crypto"));
18
17
  const HydrationStream_1 = require("./HydrationStream");
18
+ const type_parsers_1 = require("./type-parsers");
19
19
  const SUPPORTED_BUCKET_TYPES = ['s3', 'gcs', 'azure'];
20
- // It's not possible to declare own map converters by passing config to snowflake-sdk
21
- const hydrators = [
22
- {
23
- types: ['fixed', 'real'],
24
- toValue: (column) => {
25
- if (column.isNullable()) {
26
- return (value) => {
27
- // We use numbers as strings by fetchAsString
28
- if (value === 'NULL') {
29
- return null;
30
- }
31
- return value;
32
- };
33
- }
34
- // Nothing to fix, let's skip this field
35
- return null;
36
- },
37
- },
38
- {
39
- // The TIMESTAMP_* variation associated with TIMESTAMP, default to TIMESTAMP_NTZ
40
- types: [
41
- 'date',
42
- // TIMESTAMP_LTZ internally stores UTC time with a specified precision.
43
- 'timestamp_ltz',
44
- // TIMESTAMP_NTZ internally stores “wallclock” time with a specified precision.
45
- // All operations are performed without taking any time zone into account.
46
- 'timestamp_ntz',
47
- // TIMESTAMP_TZ internally stores UTC time together with an associated time zone offset.
48
- // When a time zone is not provided, the session time zone offset is used.
49
- 'timestamp_tz'
50
- ],
51
- toValue: () => (value) => {
52
- if (!value) {
53
- return null;
54
- }
55
- return (0, date_fns_timezone_1.formatToTimeZone)(value, 'YYYY-MM-DDTHH:mm:ss.SSS', {
56
- timeZone: 'UTC'
57
- });
58
- },
59
- },
60
- {
61
- types: ['object'],
62
- toValue: () => (value) => {
63
- if (!value) {
64
- return null;
65
- }
66
- return JSON.stringify(value);
67
- },
68
- }
69
- ];
70
20
  const SnowflakeToGenericType = {
71
21
  // It's a limitation for now, because anyway we don't work with JSON objects in Cube Store.
72
22
  object: 'HLL_SNOWFLAKE',
@@ -443,7 +393,12 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
443
393
  return new Promise((resolve, reject) => connection.execute({
444
394
  sqlText: `${sql} LIMIT 0`,
445
395
  binds: params,
446
- fetchAsString: ['Number'],
396
+ fetchAsString: [
397
+ // It's not possible to store big numbers in Number, It's a common way how to handle it in Cube
398
+ 'Number',
399
+ // VARIANT, OBJECT, ARRAY are mapped to JSON type in Snowflake SDK
400
+ 'JSON'
401
+ ],
447
402
  complete: (err, stmt) => {
448
403
  if (err) {
449
404
  reject(err);
@@ -605,13 +560,18 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
605
560
  return new Promise((resolve, reject) => connection.execute({
606
561
  sqlText: query,
607
562
  binds: values,
608
- fetchAsString: ['Number'],
563
+ fetchAsString: [
564
+ // It's not possible to store big numbers in Number, It's a common way how to handle it in Cube
565
+ 'Number',
566
+ // VARIANT, OBJECT, ARRAY are mapped to JSON type in Snowflake SDK
567
+ 'JSON'
568
+ ],
609
569
  complete: (err, stmt, rows) => {
610
570
  if (err) {
611
571
  reject(err);
612
572
  return;
613
573
  }
614
- const hydrationMap = this.generateHydrationMap(stmt.getColumns());
574
+ const hydrationMap = this.generateHydrationMap(stmt.getColumns() ?? []);
615
575
  const types = this.getTypes(stmt);
616
576
  if (rows?.length && Object.keys(hydrationMap).length) {
617
577
  for (const row of rows) {
@@ -636,7 +596,7 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
636
596
  sqlText: query,
637
597
  binds: values,
638
598
  fetchAsString: [
639
- // It's not possible to store big numbers in Number, It's a common way how to handle it in Cube.js
599
+ // It's not possible to store big numbers in Number, It's a common way how to handle it in Cube
640
600
  'Number',
641
601
  // VARIANT, OBJECT, ARRAY are mapped to JSON type in Snowflake SDK
642
602
  'JSON'
@@ -651,7 +611,7 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
651
611
  }
652
612
  }));
653
613
  const types = this.getTypes(stmt);
654
- const hydrationMap = this.generateHydrationMap(stmt.getColumns());
614
+ const hydrationMap = this.generateHydrationMap(stmt.getColumns() ?? []);
655
615
  if (Object.keys(hydrationMap).length) {
656
616
  const rowStream = new HydrationStream_1.HydrationStream(hydrationMap);
657
617
  stmt.streamRows().pipe(rowStream);
@@ -672,7 +632,7 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
672
632
  };
673
633
  }
674
634
  getTypes(stmt) {
675
- return stmt.getColumns().map((column) => {
635
+ return (stmt.getColumns() ?? []).map((column) => {
676
636
  const type = {
677
637
  name: column.getName().toLowerCase(),
678
638
  type: '',
@@ -696,12 +656,13 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
696
656
  generateHydrationMap(columns) {
697
657
  const hydrationMap = {};
698
658
  for (const column of columns) {
699
- for (const hydrator of hydrators) {
659
+ for (const hydrator of type_parsers_1.hydrators) {
700
660
  if (hydrator.types.includes(column.getType())) {
701
661
  const fnOrNull = hydrator.toValue(column);
702
662
  if (fnOrNull) {
703
663
  hydrationMap[column.getName()] = fnOrNull;
704
664
  }
665
+ break;
705
666
  }
706
667
  }
707
668
  }
@@ -711,14 +672,19 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
711
672
  return new Promise((resolve, reject) => connection.execute({
712
673
  sqlText: query,
713
674
  binds: values,
714
- fetchAsString: ['Number'],
675
+ fetchAsString: [
676
+ // It's not possible to store big numbers in Number, It's a common way how to handle it in Cube
677
+ 'Number',
678
+ // VARIANT, OBJECT, ARRAY are mapped to JSON type in Snowflake SDK
679
+ 'JSON'
680
+ ],
715
681
  complete: (err, stmt, rows) => {
716
682
  if (err) {
717
683
  reject(err);
718
684
  return;
719
685
  }
720
686
  if (rehydrate && rows?.length) {
721
- const hydrationMap = this.generateHydrationMap(stmt.getColumns());
687
+ const hydrationMap = this.generateHydrationMap(stmt.getColumns() ?? []);
722
688
  if (Object.keys(hydrationMap).length) {
723
689
  for (const row of rows) {
724
690
  for (const [field, toValue] of Object.entries(hydrationMap)) {
@@ -1 +1 @@
1
- {"version":3,"file":"SnowflakeDriver.js","sourceRoot":"","sources":["../../src/SnowflakeDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SnowflakeDriver.js","sourceRoot":"","sources":["../../src/SnowflakeDriver.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;AAEH,mDAAkE;AAClE,kEAA4E;AAC5E,6DAaqC;AACrC,2DAA6B;AAC7B,oDAA4B;AAE5B,uDAAkE;AAClE,iDAA2C;AAE3C,MAAM,sBAAsB,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AAOtD,MAAM,sBAAsB,GAAwC;IAClE,2FAA2F;IAC3F,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,SAAS;IACjB,wFAAwF;IACxF,6FAA6F;IAC7F,KAAK,EAAE,SAAS;IAChB,aAAa,EAAE,WAAW;CAC3B,CAAC;AAyEF;;;;;;GAMG;AACH,MAAa,eAAgB,SAAQ,wBAAU;IAC7C;;OAEG;IACI,MAAM,CAAC,qBAAqB;QACjC,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,kBAAkB;QAC9B,OAAO;YACL,gBAAgB;YAChB,gBAAgB;YAChB,gBAAgB;YAChB,6BAA6B;YAC7B,4BAA4B;YAC5B,+BAA+B;YAC/B,0BAA0B;YAC1B,+CAA+C;YAC/C,mCAAmC;YACnC,iCAAiC;YACjC,sCAAsC;YACtC,0BAA0B;YAC1B,iCAAiC;YACjC,sCAAsC;YACtC,sCAAsC;YACtC,oDAAoD;SACrD,CAAC;IACJ,CAAC;IAES,UAAU,GAA+B,IAAI,CAAC;IAErC,MAAM,CAAyB;IAElD;;OAEG;IACH,YACE,SAqBI,EAAE;QAEN,KAAK,CAAC;YACJ,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;SACpD,CAAC,CAAC;QAEH,MAAM,UAAU,GACd,MAAM,CAAC,UAAU;YACjB,IAAA,yBAAgB,EAAC,SAAS,CAAC,CAAC;QAC9B,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,KAAK,CAAC;QAExD,IAAI,UAAU,GAAG,IAAA,eAAM,EAAC,qBAAqB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;QAEhF,IAAI,UAAU,EAAE;YACd,4EAA4E;YAC5E,iBAAiB;YACjB,IAAI,UAAU,CAAC,QAAQ,CAAC,6BAA6B,CAAC,EAAE;gBACtD,MAAM,SAAS,GAAG,IAAA,eAAM,EAAC,yBAAyB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;gBAErF,IAAI,CAAC,SAAS,EAAE;oBACd,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;iBACH;gBAED,MAAM,gBAAgB,GAAG,gBAAM,CAAC,gBAAgB,CAAC;oBAC/C,GAAG,EAAE,UAAU;oBACf,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,SAAS;iBACtB,CAAC,CAAC;gBAEH,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC;oBACnC,MAAM,EAAE,KAAK;oBACb,IAAI,EAAE,OAAO;iBACd,CAAC,CAAC;aACJ;SACF;QAED,uBAAS,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAEzC,IAAI,CAAC,MAAM,GAAG;YACZ,QAAQ,EAAE,KAAK;YACf,IAAI,EAAE,IAAA,eAAM,EAAC,eAAe,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAC9D,OAAO,EAAE,IAAA,eAAM,EAAC,kBAAkB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YACpE,MAAM,EAAE,IAAA,eAAM,EAAC,iBAAiB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAClE,SAAS,EAAE,IAAA,eAAM,EAAC,oBAAoB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YACxE,IAAI,EAAE,IAAA,eAAM,EAAC,eAAe,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAC9D,sBAAsB,EAAE,IAAA,eAAM,EAAC,2BAA2B,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAC5F,QAAQ,EAAE,IAAA,eAAM,EAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAC3D,QAAQ,EAAE,IAAA,eAAM,EAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAC3D,QAAQ,EAAE,IAAA,eAAM,EAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAC3D,aAAa,EAAE,IAAA,eAAM,EAAC,wBAAwB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAChF,UAAU,EAAE,IAAA,eAAM,EAAC,qBAAqB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAC1E,cAAc,EAAE,IAAA,eAAM,EAAC,yBAAyB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAClF,cAAc,EAAE,IAAA,eAAM,EAAC,yBAAyB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAClF,cAAc,EAAE,IAAA,eAAM,EAAC,yBAAyB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAClF,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,eAAe,CAAC;YAC/D,cAAc,EAAE,CAAC;YACjB,gBAAgB,EAAE,IAAA,eAAM,EAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAC3E,eAAe,EAAE,IAAA,eAAM,EAAC,gCAAgC,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YAC1F,2BAA2B,EAAE,IAAA,eAAM,EAAC,+BAA+B,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;YACrG,WAAW,EAAE,cAAc;YAC3B,GAAG,MAAM;SACV,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,QAAQ;QACb,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,YAAY;QACjB,OAAO;YACL,sBAAsB,EAAE,IAAI;YAC5B,wBAAwB,EAAE,IAAI;SAC/B,CAAC;IACJ,CAAC;IAES,kBAAkB,CAC1B,UAAkB,EAClB,UAAkB,EAClB,eAAyB;QAEzB,IAAI,UAAU,KAAK,IAAI,EAAE;YACvB,qCAAqC;YACrC,MAAM,eAAe,GAAG,IAAA,eAAM,EAAC,qBAAqB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;YACvF,8DAA8D;YAC9D,MAAM,KAAK,GAAG,IAAA,eAAM,EAAC,sBAAsB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;YAC9E,MAAM,SAAS,GAAG,IAAA,eAAM,EAAC,yBAAyB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;YAErF,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE,IAAA,eAAM,EAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;gBACrE,MAAM,EAAE,IAAA,eAAM,EAAC,yBAAyB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;gBAC1E,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,CAAC;gBACzD,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC;gBACrC,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;aAC9C,CAAC;SACH;QAED,IAAI,UAAU,KAAK,KAAK,EAAE;YACxB,4EAA4E;YAC5E,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE,IAAA,eAAM,EAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;gBACrE,eAAe,EAAE,IAAA,eAAM,EAAC,qBAAqB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;gBAC/E,WAAW,EAAE,IAAA,eAAM,EAAC,wBAAwB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;aAC/E,CAAC;SACH;QAED,IAAI,UAAU,KAAK,OAAO,EAAE;YAC1B,wCAAwC;YACxC,MAAM,eAAe,GAAG,IAAA,eAAM,EAAC,qBAAqB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;YACvF,gEAAgE;YAChE,MAAM,QAAQ,GAAG,IAAA,eAAM,EAAC,uBAAuB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;YAElF,IAAI,CAAC,eAAe,IAAI,CAAC,QAAQ,EAAE;gBACjC,MAAM,IAAI,KAAK,CACb,uFAAuF,CACxF,CAAC;aACH;YAED,2DAA2D;YAC3D,MAAM,QAAQ,GAAG,IAAA,eAAM,EAAC,wBAAwB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;YAEnF,yEAAyE;YACzE,8CAA8C;YAC9C,MAAM,QAAQ,GAAG,IAAA,eAAM,EAAC,6BAA6B,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;YACxF,MAAM,QAAQ,GAAG,IAAA,eAAM,EAAC,6BAA6B,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;YACxF,MAAM,aAAa,GAAG,IAAA,eAAM,EAAC,kCAAkC,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;YAElG,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE,IAAA,eAAM,EAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;gBACrE,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,CAAC;gBACzD,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;gBAC3C,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;gBAC3C,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;gBAC3C,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;gBAC3C,GAAG,CAAC,aAAa,KAAK,SAAS,IAAI,EAAE,aAAa,EAAE,CAAC;aACtD,CAAC;SACH;QAED,MAAM,IAAI,KAAK,CACb,8CAA8C,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACjF,CAAC;IACJ,CAAC;IAEO,2BAA2B,CACjC,YAAyC,EACzC,SAAmB;QAEnB,IAAI,YAAY,CAAC,UAAU,KAAK,IAAI,EAAE;YACpC,MAAM,QAAQ,GAAG,YAAwC,CAAC;YAC1D,IAAI,QAAQ,CAAC,eAAe,EAAE;gBAC5B,OAAO,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,WAAW,CAAC,CAAC;aACxE;SACF;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAES,eAAe,CACvB,UAAkB,EAClB,eAAyB;QAEzB,MAAM,UAAU,GAAG,IAAA,eAAM,EAAC,oBAAoB,EAAE;YAC9C,UAAU;YACV,eAAe;YACf,SAAS,EAAE,sBAAsB;SAClC,CAAC,CAAC;QACH,IAAI,UAAU,EAAE;YACd,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAC1C,UAAU,EACV,UAAU,EACV,eAAe,CAChB,CAAC;YAEF,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;iBACxC,MAAM,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,YAAY,CAAoC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;YAC/F,MAAM,cAAc,GAAG,IAAI,CAAC,2BAA2B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;YAEjF,IAAI,cAAc,CAAC,MAAM,EAAE;gBACzB,MAAM,IAAI,KAAK,CACb,8EAA8E,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACzG,CAAC;aACH;YAED,OAAO,YAAY,CAAC;SACrB;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,cAAc;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,0BAA0B,CAAC;QAE3E,IAAI;YACF,MAAM,kBAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SAC5B;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,QAAQ,SAAS,mEAAmE,CAAC,CAAC;SACvG;QAED,MAAM,KAAK,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACnD,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IAEO,KAAK,CAAC,qBAAqB;QACjC,MAAM,MAAM,GAAwB;YAClC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;YAC5B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAC1B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YACpC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACxC,sBAAsB,EAAE,IAAI,CAAC,MAAM,CAAC,sBAAsB;YAC1D,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;SAC3C,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;YACxB,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;SACxC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,EAAE,KAAK,OAAO,EAAE;YACxD,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;SACtE;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,EAAE,KAAK,eAAe,EAAE;YACvE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;YACvC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;YAC3C,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;YACnD,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;SACpD;aAAM;YACL,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;YACvC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;SACxC;QAED,OAAO,MAAqC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAElD,OAAO,uBAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,cAAc;QACzB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAEjD,MAAM,IAAI,OAAO,CACf,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAC5F,CAAC;QACF,6DAA6D;QAC7D,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,4CAA4C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACrF;QACD,MAAM,IAAI,OAAO,CACf,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAC5F,CAAC;IACJ,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,cAAc;QAC5B,IAAI;YACF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAEjD,MAAM,IAAI,OAAO,CACf,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAC5F,CAAC;YAEF,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,sCAAsC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;YAClF,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,oDAAoD,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;YAC9H,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,sDAAsD,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;YAC/H,OAAO,UAAU,CAAC;SACnB;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YAEvB,MAAM,CAAC,CAAC;SACT;IACH,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,aAAa;QAC3B,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;YAEzC,+CAA+C;YAC/C,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE;gBACrB,OAAO,UAAU,CAAC;aACnB;SACF;QAED,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,KAAK,CAAc,KAAa,EAAE,MAAkB;QAC/D,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAI,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/F,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,iBAAiB;QAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC;IAChD,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM,CACjB,SAAiB,EACjB,OAAsB;QAEtB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;SACrD;QACD,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAoB,CAAC,EAAE;YACnF,MAAM,IAAI,KAAK,CAAC,mCACd,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAC3B,EAAE,CAAC,CAAC;SACL;QAED,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,KAAK;YAC5C,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC;YAC9C,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACnD,4EAA4E;QAC5E,sFAAsF;QACtF,uBAAuB;QACvB,MAAM,OAAO,GAAG,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAE3E,OAAO;YACL,2BAA2B,EAAE,IAAI,CAAC,MAAM,CAAC,2BAA2B;YACpE,OAAO;YACP,KAAK;YACL,WAAW,EAAE,IAAI;SAClB,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,SAAiB;QACtC,MAAM,EAAE,UAAU,EAAE,GAAiC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAE9E,IAAI,UAAkB,CAAC;QACvB,IAAI,YAAoB,CAAC;QACzB,IAAI,IAAY,CAAC;QAEjB,IAAI,UAAU,KAAK,OAAO,EAAE;YAC1B,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,YAAa,CAAC,UAAU,CAAC,CAAC,CAAC;YACnF,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAChC,UAAU,GAAG,GAAG,UAAU,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;SAC9F;aAAM;YACL,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,YAAa,CAAC,UAAU,CAAC,CAAC,CAAC;YACnF,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;SAC1D;QAED,OAAO,GAAG,UAAU,MAAM,UAAU,IAAI,YAAY,GAAG,CAAC;IAC1D,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa,CACzB,SAAiB,EACjB,OAAsB;QAEtB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC5C;aAAM;YACL,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACnF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;YAEjD,MAAM,SAAS,GAAG;qBACH,SAAS;gBACd,OAAO,CAAC,KAAK,CAAC,GAAG;UACvB,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAC/B,UAAU,EACV,SAAS,EACT,OAAO,CAAC,KAAK,CAAC,MAAM,EACpB,KAAK,CACN,CAAC;YACF,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;aACtD;YACD,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE,CAAC;SACxE;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,gBAAgB,CAAC,GAAW,EAAE,MAAiB;QAC1D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YACzD,OAAO,EAAE,GAAG,GAAG,UAAU;YACzB,KAAK,EAAwB,MAAM;YACnC,aAAa,EAAE;gBACb,+FAA+F;gBAC/F,QAAQ;gBACR,kEAAkE;gBAClE,MAAM;aACP;YACD,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAI,GAAG,EAAE;oBACP,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,OAAO;iBACR;gBACD,MAAM,KAAK,GACT,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACtB,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC;SACF,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAC3B,SAAiB,EACjB,OAAsB;QAEtB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAEjD,MAAM,SAAS,GAAG;mBACH,SAAS;aACf,SAAS;QACd,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAC/B,UAAU,EACV,SAAS,EACT,EAAE,EACF,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;SACtD;QAED,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE,CAAC;IACzE,CAAC;IAED;;OAEG;IACa,KAAK,CAAC,gBAAgB,CAAC,KAAa;QAClD,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAM9B;;;;;;;;;;;;uBAYiB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;yBACX,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gCACN,EAC1B,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAC3C,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACvB,IAAI,EAAE,CAAC,CAAC,WAAW;YACnB,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,aAAa,CAAC;SAC5E,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,OAAsB;QAChD,MAAM,EAAE,UAAU,EAAE,GACY,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QACzD,MAAM,eAAe,GAA2B;YAC9C,MAAM,EAAE,OAAO;YACf,gBAAgB,EAAE,MAAM;YACxB,aAAa,EAAE,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE;YAC5D,WAAW,EAAE,GAAG;gBACd,cAAc;gBACd,sBAAsB;gBACtB,gCAAgC;gBAChC,6DAA6D;gBAC7D,sCAAsC;gBACtC,GAAG;SACN,CAAC;QACF,IAAI,UAAU,KAAK,IAAI,EAAE;YACvB,MAAM,IAAI,GAA8B,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;YAEjE,qFAAqF;YACrF,IAAI,IAAI,CAAC,eAAe,EAAE;gBACxB,eAAe,CAAC,mBAAmB,GAAG,IAAI,CAAC,eAAe,CAAC;aAC5D;iBAAM,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE;gBACvC,eAAe,CAAC,WAAW,GAAG,kBAAkB,IAAI,CAAC,KAAK,uBAAuB,IAAI,CAAC,SAAS,IAAI,CAAC;aACrG;SACF;aAAM,IAAI,UAAU,KAAK,KAAK,EAAE;YAC/B,eAAe,CAAC,mBAAmB,GACN,IAAI,CAAC,MAAM,CAAC,YACxC,CAAC,eAAe,CAAC;SACnB;aAAM,IAAI,UAAU,KAAK,OAAO,EAAE;YACjC,0EAA0E;YAC1E,kEAAkE;YAClE,MAAM,IAAI,GAAgC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;YAEnE,qFAAqF;YACrF,IAAI,IAAI,CAAC,eAAe,EAAE;gBACxB,eAAe,CAAC,mBAAmB,GAAG,IAAI,CAAC,eAAe,CAAC;aAC5D;iBAAM;gBACL,eAAe,CAAC,WAAW,GAAG,uBAAuB,IAAI,CAAC,QAAQ,IAAI,CAAC;aACxE;SACF;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;SACpD;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC;aAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,KAAK,EAAE,CAAC;aAC1C,IAAI,CAAC,GAAG,CAAC,CAAC;QACb,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW,CAAC,SAAiB;QACzC,MAAM,EAAE,UAAU,EAAE,GACY,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAEzD,IAAI,UAAU,KAAK,IAAI,EAAE;YACvB,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,GAA8B,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;YAEzF,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,YAAa,CAAC,UAAU,CAAC,CAAC;YACvF,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAE/D,MAAM,QAAQ,GAAmB,EAAE,MAAM,EAAE,CAAC;YAC5C,IAAI,KAAK,IAAI,SAAS,EAAE;gBACtB,iEAAiE;gBACjE,yFAAyF;gBACzF,QAAQ,CAAC,WAAW,GAAG;oBACrB,WAAW,EAAE,KAAK;oBAClB,eAAe,EAAE,SAAS;iBAC3B,CAAC;aACH;YAED,OAAO,IAAI,CAAC,0BAA0B,CACpC,QAAQ,EACR,UAAU,EACV,YAAY,CACb,CAAC;SACH;aAAM,IAAI,UAAU,KAAK,KAAK,EAAE;YAC/B,MAAM,EAAE,WAAW,EAAE,GACQ,IAAI,CAAC,MAAM,CAAC,YACxC,CAAC;YAEF,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,YAAa,CAAC,UAAU,CAAC,CAAC;YACvF,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAE/D,OAAO,IAAI,CAAC,mBAAmB,CAAC,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;SAC5E;aAAM,IAAI,UAAU,KAAK,OAAO,EAAE;YACjC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,GAChC,IAAI,CAAC,MAAM,CAAC,YAC1C,CAAC;YAEF,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,YAAa,CAAC,UAAU,CAAC,CAAC;YACvF,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAChC,MAAM,eAAe,GAAG,GAAG,UAAU,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAEtD,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAEnG,OAAO,IAAI,CAAC,qBAAqB,CAC/B,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EACzD,eAAe,EACf,YAAY,CACb,CAAC;SACH;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,mCAAmC,UAAU,EAAE,CAAC,CAAC;SAClE;IACH,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,oBAAoB,CAC/B,KAAa,EACb,MAAiB,EACjB,OAAoC;QAEpC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;YACzB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;SACnC;aAAM;YACL,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;SAC5C;IACH,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM,CACjB,KAAa,EACb,MAAiB;QAEjB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YACzD,OAAO,EAAE,KAAK;YACd,KAAK,EAAwB,MAAM;YACnC,aAAa,EAAE;gBACb,+FAA+F;gBAC/F,QAAQ;gBACR,kEAAkE;gBAClE,MAAM;aACP;YACD,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;gBAC5B,IAAI,GAAG,EAAE;oBACP,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,OAAO;iBACR;gBAED,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxE,MAAM,KAAK,GACT,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACtB,IAAI,IAAI,EAAE,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE;oBACpD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;wBACtB,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;4BAC3D,IAAI,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;gCAC7B,GAAG,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;6BAClC;yBACF;qBACF;iBACF;gBACD,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;YACvC,CAAC;SACF,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM,CACjB,KAAa,EACb,MAAiB,EACjB,QAAuB;QAEvB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YACnF,OAAO,EAAE,KAAK;YACd,KAAK,EAAwB,MAAM;YACnC,aAAa,EAAE;gBACb,+FAA+F;gBAC/F,QAAQ;gBACR,kEAAkE;gBAClE,MAAM;aACP;YACD,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;gBAC3B,IAAI,GAAG,EAAE;oBACP,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,OAAO;iBACR;gBAED,OAAO,CAAC,SAAS,CAAC,CAAC;YACrB,CAAC;SACF,CAAC,CAAC,CAAC;QACJ,MAAM,KAAK,GACT,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtB,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QACxE,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE;YACpC,MAAM,SAAS,GAAG,IAAI,iCAAe,CAAC,YAAY,CAAC,CAAC;YACpD,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAClC,OAAO;gBACL,SAAS;gBACT,KAAK;gBACL,OAAO,EAAE,KAAK,IAAI,EAAE;oBAClB,EAAE;gBACJ,CAAC;aACF,CAAC;SACH;QACD,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE;YAC5B,KAAK;YACL,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,EAAE;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;IAEO,QAAQ,CAAC,IAAkB;QACjC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC9C,MAAM,IAAI,GAAG;gBACX,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE;gBACpC,IAAI,EAAE,EAAE;aACT,CAAC;YACF,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE;gBACrB,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;gBACxC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;gBAEhC,IAAI,KAAK,KAAK,CAAC,EAAE;oBACf,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;iBACnB;qBAAM;oBACL,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;iBACpE;aACF;iBAAM;gBACL,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;aAClD;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAES,oBAAoB,CAAC,OAAiB;QAC9C,MAAM,YAAY,GAAwB,EAAE,CAAC;QAE7C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,KAAK,MAAM,QAAQ,IAAI,wBAAS,EAAE;gBAChC,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE;oBAC7C,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;oBAC1C,IAAI,QAAQ,EAAE;wBACZ,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC;qBAC3C;oBAED,MAAM;iBACP;aACF;SACF;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,KAAK,CAAC,OAAO,CACrB,UAAsB,EACtB,KAAa,EACb,MAAkB,EAClB,YAAqB,IAAI;QAEzB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YACzD,OAAO,EAAE,KAAK;YACd,KAAK,EAAwB,MAAM;YACnC,aAAa,EAAE;gBACb,+FAA+F;gBAC/F,QAAQ;gBACR,kEAAkE;gBAClE,MAAM;aACP;YACD,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;gBAC5B,IAAI,GAAG,EAAE;oBACP,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,OAAO;iBACR;gBAED,IAAI,SAAS,IAAI,IAAI,EAAE,MAAM,EAAE;oBAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;oBACxE,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE;wBACpC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;4BACtB,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;gCAC3D,IAAI,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;oCAC7B,GAAG,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;iCAClC;6BACF;yBACF;qBACF;iBACF;gBAED,OAAO,CAAM,IAAI,CAAC,CAAC;YACrB,CAAC;SACF,CAAC,CAAC,CAAC;IACN,CAAC;IAEM,sBAAsB;QAC3B,OAAO;;;;;;;MAOL,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAC9C,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAClF,CAAC,CAAC;SACJ;IACH,CAAC;IAEkB,aAAa,CAAC,UAAkB,EAAE,SAAyB,EAAE,KAAqB;QACnG,MAAM,WAAW,GAAG,sBAAsB,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAExG,IAAI,WAAW,KAAK,SAAS,IAAI,SAAS,IAAI,KAAK,IAAI,IAAA,eAAM,EAAC,2BAA2B,CAAC,EAAE;YAC1F,OAAO,WAAW,SAAS,KAAK,KAAK,GAAG,CAAC;SAC1C;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,UAAkB;QAC5C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;QACpE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;CACF;AA33BD,0CA23BC"}
@@ -0,0 +1,8 @@
1
+ import type { Column } from 'snowflake-sdk';
2
+ export type HydrationConfiguration = {
3
+ types: string[];
4
+ toValue: (column: Column) => ((value: any) => any) | null;
5
+ };
6
+ export declare function formatUtcTimestamp(value: Date): string;
7
+ export declare const hydrators: HydrationConfiguration[];
8
+ //# sourceMappingURL=type-parsers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type-parsers.d.ts","sourceRoot":"","sources":["../../src/type-parsers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAG5C,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;CAC3E,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,CAStD;AAGD,eAAO,MAAM,SAAS,EAAE,sBAAsB,EA8C7C,CAAC"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hydrators = exports.formatUtcTimestamp = void 0;
4
+ const shared_1 = require("@cubejs-backend/shared");
5
+ function formatUtcTimestamp(value) {
6
+ const y = (0, shared_1.pad4)(value.getUTCFullYear());
7
+ const mo = (0, shared_1.pad2)(value.getUTCMonth() + 1);
8
+ const d = (0, shared_1.pad2)(value.getUTCDate());
9
+ const h = (0, shared_1.pad2)(value.getUTCHours());
10
+ const mi = (0, shared_1.pad2)(value.getUTCMinutes());
11
+ const s = (0, shared_1.pad2)(value.getUTCSeconds());
12
+ const ms = (0, shared_1.pad3)(value.getUTCMilliseconds());
13
+ return `${y}-${mo}-${d}T${h}:${mi}:${s}.${ms}`;
14
+ }
15
+ exports.formatUtcTimestamp = formatUtcTimestamp;
16
+ // It's not possible to declare own map converters by passing config to snowflake-sdk
17
+ exports.hydrators = [
18
+ {
19
+ types: ['fixed', 'real'],
20
+ toValue: (column) => {
21
+ if (column.isNullable()) {
22
+ return (value) => {
23
+ // We use numbers as strings by fetchAsString
24
+ if (value === 'NULL') {
25
+ return null;
26
+ }
27
+ return value;
28
+ };
29
+ }
30
+ // Nothing to fix, let's skip this field
31
+ return null;
32
+ },
33
+ },
34
+ {
35
+ // The TIMESTAMP_* variation associated with TIMESTAMP, default to TIMESTAMP_NTZ.
36
+ // DATE values arrive as Dates pinned to UTC midnight — same formatter, output
37
+ // stays compatible with the prior formatToTimeZone behavior.
38
+ types: [
39
+ 'date',
40
+ // TIMESTAMP_LTZ internally stores UTC time with a specified precision.
41
+ 'timestamp_ltz',
42
+ // TIMESTAMP_NTZ internally stores “wallclock” time with a specified precision.
43
+ // All operations are performed without taking any time zone into account.
44
+ 'timestamp_ntz',
45
+ // TIMESTAMP_TZ internally stores UTC time together with an associated time zone offset.
46
+ // When a time zone is not provided, the session time zone offset is used.
47
+ 'timestamp_tz',
48
+ ],
49
+ toValue: () => (value) => (value ? formatUtcTimestamp(value) : null),
50
+ },
51
+ {
52
+ types: ['object'],
53
+ toValue: () => (value) => {
54
+ if (!value) {
55
+ return null;
56
+ }
57
+ return JSON.stringify(value);
58
+ },
59
+ }
60
+ ];
61
+ //# sourceMappingURL=type-parsers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type-parsers.js","sourceRoot":"","sources":["../../src/type-parsers.ts"],"names":[],"mappings":";;;AACA,mDAA0D;AAM1D,SAAgB,kBAAkB,CAAC,KAAW;IAC5C,MAAM,CAAC,GAAG,IAAA,aAAI,EAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IACvC,MAAM,EAAE,GAAG,IAAA,aAAI,EAAC,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IACzC,MAAM,CAAC,GAAG,IAAA,aAAI,EAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;IACnC,MAAM,CAAC,GAAG,IAAA,aAAI,EAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IACpC,MAAM,EAAE,GAAG,IAAA,aAAI,EAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,GAAG,IAAA,aAAI,EAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,GAAG,IAAA,aAAI,EAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAC5C,OAAO,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;AACjD,CAAC;AATD,gDASC;AAED,qFAAqF;AACxE,QAAA,SAAS,GAA6B;IACjD;QACE,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;QACxB,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;YAClB,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE;gBACvB,OAAO,CAAC,KAAK,EAAE,EAAE;oBACf,6CAA6C;oBAC7C,IAAI,KAAK,KAAK,MAAM,EAAE;wBACpB,OAAO,IAAI,CAAC;qBACb;oBAED,OAAO,KAAK,CAAC;gBACf,CAAC,CAAC;aACH;YAED,wCAAwC;YACxC,OAAO,IAAI,CAAC;QACd,CAAC;KACF;IACD;QACE,iFAAiF;QACjF,8EAA8E;QAC9E,6DAA6D;QAC7D,KAAK,EAAE;YACL,MAAM;YACN,uEAAuE;YACvE,eAAe;YACf,+EAA+E;YAC/E,0EAA0E;YAC1E,eAAe;YACf,wFAAwF;YACxF,0EAA0E;YAC1E,cAAc;SACf;QACD,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;KACrE;IACD;QACE,KAAK,EAAE,CAAC,QAAQ,CAAC;QACjB,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE;YACvB,IAAI,CAAC,KAAK,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YAED,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;KACF;CACF,CAAC"}
package/package.json CHANGED
@@ -2,14 +2,14 @@
2
2
  "name": "@cubejs-backend/snowflake-driver",
3
3
  "description": "Cube.js Snowflake database driver",
4
4
  "author": "Cube Dev, Inc.",
5
- "version": "1.6.38",
5
+ "version": "1.6.40",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "https://github.com/cube-js/cube.git",
9
9
  "directory": "packages/cubejs-snowflake-driver"
10
10
  },
11
11
  "engines": {
12
- "node": "^14.0.0 || ^16.0.0 || >=17.0.0"
12
+ "node": ">=20.0.0"
13
13
  },
14
14
  "files": [
15
15
  "dist/src",
@@ -21,15 +21,16 @@
21
21
  "build": "rm -rf dist && npm run tsc",
22
22
  "tsc": "tsc",
23
23
  "watch": "tsc -w",
24
+ "integration": "vitest run",
25
+ "integration:snowflake": "vitest run",
24
26
  "lint": "eslint src/* --ext .ts",
25
27
  "lint:fix": "eslint --fix src/* --ext .ts"
26
28
  },
27
29
  "dependencies": {
28
30
  "@aws-sdk/client-s3": "^3.726.0",
29
- "@cubejs-backend/base-driver": "1.6.38",
30
- "@cubejs-backend/shared": "1.6.38",
31
- "date-fns-timezone": "^0.1.4",
32
- "snowflake-sdk": "^2.2.0"
31
+ "@cubejs-backend/base-driver": "1.6.40",
32
+ "@cubejs-backend/shared": "1.6.40",
33
+ "snowflake-sdk": "^2.4.0"
33
34
  },
34
35
  "license": "Apache-2.0",
35
36
  "publishConfig": {
@@ -39,8 +40,9 @@
39
40
  "extends": "../cubejs-linter"
40
41
  },
41
42
  "devDependencies": {
42
- "@cubejs-backend/linter": "1.6.38",
43
- "typescript": "~5.2.2"
43
+ "@cubejs-backend/linter": "1.6.40",
44
+ "typescript": "~5.2.2",
45
+ "vitest": "^4"
44
46
  },
45
- "gitHead": "7f1ec2ec0b59a9a0e4749b8edff17326b0423ebb"
47
+ "gitHead": "ca686109d640b6b9e8ba0f4dc484f6de266d5860"
46
48
  }