@activepieces/piece-metabase 0.0.3 → 0.1.0

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/package.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "@activepieces/piece-metabase",
3
- "version": "0.0.3",
3
+ "version": "0.1.0",
4
4
  "dependencies": {
5
5
  "@sinclair/typebox": "0.26.8",
6
- "axios": "^1.6.3",
6
+ "axios": "1.6.7",
7
7
  "dayjs": "1.11.9",
8
8
  "is-base64": "1.1.0",
9
9
  "lodash": "4.17.21",
10
10
  "nanoid": "3.3.6",
11
11
  "semver": "7.6.0",
12
- "@activepieces/pieces-common": "0.2.9",
13
- "@activepieces/pieces-framework": "0.7.24",
14
- "@activepieces/shared": "0.10.93",
12
+ "@activepieces/pieces-common": "0.2.12",
13
+ "@activepieces/pieces-framework": "0.7.30",
14
+ "@activepieces/shared": "0.10.104",
15
15
  "tslib": "1.14.1"
16
16
  },
17
17
  "main": "./src/index.js",
package/src/index.d.ts CHANGED
@@ -1,12 +1,8 @@
1
1
  export declare const metabaseAuth: import("@activepieces/pieces-framework").CustomAuthProperty<{
2
- username: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
- password: import("@activepieces/pieces-framework").SecretTextProperty<true>;
4
2
  baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
5
- encryptionKey: import("@activepieces/pieces-framework").SecretTextProperty<true>;
3
+ apiKey: import("@activepieces/pieces-framework").SecretTextProperty<true>;
6
4
  }>;
7
5
  export declare const metabase: import("@activepieces/pieces-framework").Piece<import("@activepieces/pieces-framework").CustomAuthProperty<{
8
- username: import("@activepieces/pieces-framework").ShortTextProperty<true>;
9
- password: import("@activepieces/pieces-framework").SecretTextProperty<true>;
10
6
  baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
11
- encryptionKey: import("@activepieces/pieces-framework").SecretTextProperty<true>;
7
+ apiKey: import("@activepieces/pieces-framework").SecretTextProperty<true>;
12
8
  }>>;
package/src/index.js CHANGED
@@ -5,31 +5,27 @@ const tslib_1 = require("tslib");
5
5
  const pieces_framework_1 = require("@activepieces/pieces-framework");
6
6
  const get_question_1 = require("./lib/actions/get-question");
7
7
  const common_1 = require("./lib/common");
8
+ const pieces_common_1 = require("@activepieces/pieces-common");
8
9
  exports.metabaseAuth = pieces_framework_1.PieceAuth.CustomAuth({
9
10
  description: 'Metabase authentication requires a username and password.',
10
11
  required: true,
11
12
  props: {
12
- username: pieces_framework_1.Property.ShortText({
13
- displayName: 'User email',
14
- required: true,
15
- }),
16
- password: pieces_framework_1.PieceAuth.SecretText({
17
- displayName: 'Password',
18
- required: true,
19
- }),
20
13
  baseUrl: pieces_framework_1.Property.ShortText({
21
14
  displayName: 'Metabase API base URL',
22
15
  required: true,
23
16
  }),
24
- encryptionKey: pieces_framework_1.PieceAuth.SecretText({
25
- displayName: 'Encryption key (for the session token)',
26
- description: 'Generate one with `openssl rand -hex 16`',
17
+ apiKey: pieces_framework_1.PieceAuth.SecretText({
18
+ displayName: 'API key',
19
+ description: 'Generate one on your Metabase instance (settings -> authentication -> API keys)',
27
20
  required: true,
28
21
  }),
29
22
  },
30
23
  validate: ({ auth }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
31
24
  try {
32
- yield (0, common_1.refreshSessionToken)(auth);
25
+ yield (0, common_1.queryMetabaseApi)({
26
+ endpoint: 'login-history/current',
27
+ method: pieces_common_1.HttpMethod.GET,
28
+ }, auth);
33
29
  return {
34
30
  valid: true,
35
31
  };
@@ -37,7 +33,7 @@ exports.metabaseAuth = pieces_framework_1.PieceAuth.CustomAuth({
37
33
  catch (e) {
38
34
  return {
39
35
  valid: false,
40
- error: 'Invalid API Key or Token',
36
+ error: 'Invalid API Key or base URL',
41
37
  };
42
38
  }
43
39
  }),
@@ -48,7 +44,7 @@ exports.metabase = (0, pieces_framework_1.createPiece)({
48
44
  auth: exports.metabaseAuth,
49
45
  minimumSupportedRelease: '0.9.0',
50
46
  logoUrl: 'https://cdn.activepieces.com/pieces/metabase.png',
51
- authors: ["AdamSelene", "abuaboud"],
47
+ authors: ['AdamSelene', 'abuaboud'],
52
48
  actions: [get_question_1.getQuestion],
53
49
  triggers: [],
54
50
  });
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/pieces/community/metabase/src/index.ts"],"names":[],"mappings":";;;;AAAA,qEAIwC;AACxC,6DAAyD;AACzD,yCAAmD;AAEtC,QAAA,YAAY,GAAG,4BAAS,CAAC,UAAU,CAAC;IAC/C,WAAW,EAAE,2DAA2D;IACxE,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE;QACL,QAAQ,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC3B,WAAW,EAAE,YAAY;YACzB,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,QAAQ,EAAE,4BAAS,CAAC,UAAU,CAAC;YAC7B,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,OAAO,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC1B,WAAW,EAAE,uBAAuB;YACpC,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,aAAa,EAAE,4BAAS,CAAC,UAAU,CAAC;YAClC,WAAW,EAAE,wCAAwC;YACrD,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,IAAI;SACf,CAAC;KACH;IAED,QAAQ,EAAE,CAAO,EAAE,IAAI,EAAE,EAAE,EAAE;QAC3B,IAAI;YACF,MAAM,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;YAChC,OAAO;gBACL,KAAK,EAAE,IAAI;aACZ,CAAC;SACH;QAAC,OAAO,CAAC,EAAE;YACV,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,0BAA0B;aAClC,CAAC;SACH;IACH,CAAC,CAAA;CACF,CAAC,CAAC;AACU,QAAA,QAAQ,GAAG,IAAA,8BAAW,EAAC;IAClC,WAAW,EAAE,UAAU;IACvB,WAAW,EAAE,uDAAuD;IAEpE,IAAI,EAAE,oBAAY;IAClB,uBAAuB,EAAE,OAAO;IAChC,OAAO,EAAE,kDAAkD;IAC3D,OAAO,EAAE,CAAC,YAAY,EAAC,UAAU,CAAC;IAClC,OAAO,EAAE,CAAC,0BAAW,CAAC;IACtB,QAAQ,EAAE,EAAE;CACb,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/pieces/community/metabase/src/index.ts"],"names":[],"mappings":";;;;AAAA,qEAIwC;AACxC,6DAAyD;AACzD,yCAAgD;AAChD,+DAAyD;AAE5C,QAAA,YAAY,GAAG,4BAAS,CAAC,UAAU,CAAC;IAC/C,WAAW,EAAE,2DAA2D;IACxE,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE;QACL,OAAO,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC1B,WAAW,EAAE,uBAAuB;YACpC,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,MAAM,EAAE,4BAAS,CAAC,UAAU,CAAC;YAC3B,WAAW,EAAE,SAAS;YACtB,WAAW,EACT,iFAAiF;YACnF,QAAQ,EAAE,IAAI;SACf,CAAC;KACH;IAED,QAAQ,EAAE,CAAO,EAAE,IAAI,EAAE,EAAE,EAAE;QAC3B,IAAI,CAAC;YACH,MAAM,IAAA,yBAAgB,EACpB;gBACE,QAAQ,EAAE,uBAAuB;gBACjC,MAAM,EAAE,0BAAU,CAAC,GAAG;aACvB,EACD,IAAI,CACL,CAAC;YACF,OAAO;gBACL,KAAK,EAAE,IAAI;aACZ,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,6BAA6B;aACrC,CAAC;QACJ,CAAC;IACH,CAAC,CAAA;CACF,CAAC,CAAC;AACU,QAAA,QAAQ,GAAG,IAAA,8BAAW,EAAC;IAClC,WAAW,EAAE,UAAU;IACvB,WAAW,EAAE,uDAAuD;IAEpE,IAAI,EAAE,oBAAY;IAClB,uBAAuB,EAAE,OAAO;IAChC,OAAO,EAAE,kDAAkD;IAC3D,OAAO,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;IACnC,OAAO,EAAE,CAAC,0BAAW,CAAC;IACtB,QAAQ,EAAE,EAAE;CACb,CAAC,CAAC"}
@@ -1,8 +1,6 @@
1
1
  export declare const getQuestion: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").CustomAuthProperty<{
2
- username: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
- password: import("@activepieces/pieces-framework").SecretTextProperty<true>;
4
2
  baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
5
- encryptionKey: import("@activepieces/pieces-framework").SecretTextProperty<true>;
3
+ apiKey: import("@activepieces/pieces-framework").SecretTextProperty<true>;
6
4
  }>, {
7
5
  questionId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
8
6
  parameters: import("@activepieces/pieces-framework").ObjectProperty<false>;
@@ -22,11 +22,11 @@ exports.getQuestion = (0, pieces_framework_1.createAction)({
22
22
  required: false,
23
23
  }),
24
24
  },
25
- run({ auth, store, propsValue }) {
25
+ run({ auth, propsValue }) {
26
26
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
27
- const card = yield (0, common_1.queryApiAndHandleRefresh)({ endpoint: `card/${propsValue.questionId}`, method: pieces_common_1.HttpMethod.GET }, auth, store);
27
+ const card = yield (0, common_1.queryMetabaseApi)({ endpoint: `card/${propsValue.questionId}`, method: pieces_common_1.HttpMethod.GET }, auth);
28
28
  const parameters = card['parameters'];
29
- return (0, common_1.queryApiAndHandleRefresh)({
29
+ return (0, common_1.queryMetabaseApi)({
30
30
  endpoint: `card/${propsValue.questionId}/query`,
31
31
  method: pieces_common_1.HttpMethod.POST,
32
32
  body: {
@@ -44,7 +44,7 @@ exports.getQuestion = (0, pieces_framework_1.createAction)({
44
44
  };
45
45
  }),
46
46
  },
47
- }, auth, store);
47
+ }, auth);
48
48
  });
49
49
  },
50
50
  });
@@ -1 +1 @@
1
- {"version":3,"file":"get-question.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/metabase/src/lib/actions/get-question.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,sCAAqD;AACrD,6BAAqC;AACrC,+DAAyD;AAS5C,QAAA,WAAW,GAAG,IAAA,+BAAY,EAAC;IACtC,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE,gBAAY;IAClB,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,cAAc;IAC3B,WAAW,EAAE,0CAA0C;IACvD,KAAK,EAAE;QACL,UAAU,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC7B,WAAW,EAAE,sBAAsB;YACnC,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,UAAU,EAAE,2BAAQ,CAAC,MAAM,CAAC;YAC1B,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH;IACK,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE;;YACnC,MAAM,IAAI,GAAG,MAAM,IAAA,iCAAwB,EACzC,EAAE,QAAQ,EAAE,QAAQ,UAAU,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,0BAAU,CAAC,GAAG,EAAE,EACrE,IAAI,EACJ,KAAK,CACN,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAoB,CAAC;YAEzD,OAAO,IAAA,iCAAwB,EAC7B;gBACE,QAAQ,EAAE,QAAQ,UAAU,CAAC,UAAU,QAAQ;gBAC/C,MAAM,EAAE,0BAAU,CAAC,IAAI;gBACvB,IAAI,EAAE;oBACJ,kBAAkB,EAAE,KAAK;oBACzB,YAAY,EAAE,KAAK;oBACnB,UAAU,EAAE,UAAU;yBACnB,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,UAAU,CAAC,UAAU;wBACrB,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAClD;yBACA,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;wBACb,OAAO;4BACL,EAAE,EAAE,KAAK,CAAC,EAAE;4BACZ,MAAM,EAAE,KAAK,CAAC,MAAM;4BACpB,IAAI,EAAE,KAAK,CAAC,IAAI;4BAChB,KAAK,EACH,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;yBAC7D,CAAC;oBACJ,CAAC,CAAC;iBACL;aACF,EACD,IAAI,EACJ,KAAK,CACN,CAAC;QACJ,CAAC;KAAA;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"get-question.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/metabase/src/lib/actions/get-question.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,sCAA6C;AAC7C,6BAAqC;AACrC,+DAAyD;AAS5C,QAAA,WAAW,GAAG,IAAA,+BAAY,EAAC;IACtC,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE,gBAAY;IAClB,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,cAAc;IAC3B,WAAW,EAAE,0CAA0C;IACvD,KAAK,EAAE;QACL,UAAU,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC7B,WAAW,EAAE,sBAAsB;YACnC,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,UAAU,EAAE,2BAAQ,CAAC,MAAM,CAAC;YAC1B,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH;IACK,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE;;YAC5B,MAAM,IAAI,GAAG,MAAM,IAAA,yBAAgB,EACjC,EAAE,QAAQ,EAAE,QAAQ,UAAU,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,0BAAU,CAAC,GAAG,EAAE,EACrE,IAAI,CACL,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAoB,CAAC;YAEzD,OAAO,IAAA,yBAAgB,EACrB;gBACE,QAAQ,EAAE,QAAQ,UAAU,CAAC,UAAU,QAAQ;gBAC/C,MAAM,EAAE,0BAAU,CAAC,IAAI;gBACvB,IAAI,EAAE;oBACJ,kBAAkB,EAAE,KAAK;oBACzB,YAAY,EAAE,KAAK;oBACnB,UAAU,EAAE,UAAU;yBACnB,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,UAAU,CAAC,UAAU;wBACrB,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAClD;yBACA,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;wBACb,OAAO;4BACL,EAAE,EAAE,KAAK,CAAC,EAAE;4BACZ,MAAM,EAAE,KAAK,CAAC,MAAM;4BACpB,IAAI,EAAE,KAAK,CAAC,IAAI;4BAChB,KAAK,EACH,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;yBAC7D,CAAC;oBACJ,CAAC,CAAC;iBACL;aACF,EACD,IAAI,CACL,CAAC;QACJ,CAAC;KAAA;CACF,CAAC,CAAC"}
@@ -1,10 +1,9 @@
1
1
  import { HttpHeaders, HttpMethod, QueryParams } from '@activepieces/pieces-common';
2
- import { CustomAuthProps, StaticPropsValue, Store } from '@activepieces/pieces-framework';
3
- export declare function refreshSessionToken(auth: StaticPropsValue<CustomAuthProps>): Promise<any>;
4
- export declare function queryApiAndHandleRefresh(params: {
2
+ import { CustomAuthProps, StaticPropsValue } from '@activepieces/pieces-framework';
3
+ export declare function queryMetabaseApi(params: {
5
4
  endpoint: string;
6
5
  method: HttpMethod;
7
6
  queryParams?: QueryParams;
8
7
  headers?: HttpHeaders;
9
8
  body?: object;
10
- }, auth: StaticPropsValue<CustomAuthProps>, store: Store): Promise<any>;
9
+ }, auth: StaticPropsValue<CustomAuthProps>): Promise<any>;
package/src/lib/common.js CHANGED
@@ -1,91 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.queryApiAndHandleRefresh = exports.refreshSessionToken = void 0;
3
+ exports.queryMetabaseApi = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const crypto_1 = tslib_1.__importDefault(require("crypto"));
6
5
  const pieces_common_1 = require("@activepieces/pieces-common");
7
- const pieces_framework_1 = require("@activepieces/pieces-framework");
8
- const shared_1 = require("@activepieces/shared");
9
- const algorithm = 'aes-256-cbc';
10
- const ivLength = 16;
11
- const SESSION_TOKEN_KEY = '_session_token';
12
- function encryptString(inputString, key) {
13
- const iv = crypto_1.default.randomBytes(ivLength); // Generate a random initialization vector
14
- const cipher = crypto_1.default.createCipheriv(algorithm, Buffer.from(key, 'binary'), iv); // Create a cipher with the key and initialization vector
15
- let encrypted = cipher.update(inputString, 'utf8', 'hex');
16
- encrypted += cipher.final('hex');
17
- return {
18
- iv: iv.toString('hex'),
19
- data: encrypted,
20
- };
21
- }
22
- function decryptString(encryptedObject, key) {
23
- const iv = Buffer.from(encryptedObject.iv, 'hex');
24
- const decipher = crypto_1.default.createDecipheriv(algorithm, Buffer.from(key, 'binary'), iv);
25
- let decrypted = decipher.update(encryptedObject.data, 'hex', 'utf8');
26
- decrypted += decipher.final('utf8');
27
- return decrypted;
28
- }
29
- function refreshSessionToken(auth) {
30
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
31
- const { username, password, baseUrl } = auth;
32
- const request = {
33
- method: pieces_common_1.HttpMethod.POST,
34
- url: `${baseUrl}/api/session`,
35
- headers: {
36
- 'Content-Type': 'application/json',
37
- },
38
- body: JSON.stringify({ username, password }),
39
- };
40
- const tokenResponse = yield pieces_common_1.httpClient.sendRequest(request);
41
- return tokenResponse.body['id'];
42
- });
43
- }
44
- exports.refreshSessionToken = refreshSessionToken;
45
- function storeSessionToken(sessionToken, encryptionKey, store) {
46
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
47
- return store.put(SESSION_TOKEN_KEY, encryptString(sessionToken, encryptionKey), pieces_framework_1.StoreScope.FLOW);
48
- });
49
- }
50
- function queryApiAndHandleRefresh(params, auth, store) {
6
+ function queryMetabaseApi(params, auth) {
51
7
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
52
- const { baseUrl, encryptionKey } = auth;
53
- let sessionToken;
54
- const encryptedToken = yield store.get(SESSION_TOKEN_KEY, pieces_framework_1.StoreScope.FLOW);
55
- if ((0, shared_1.isNil)(encryptedToken)) {
56
- sessionToken = yield refreshSessionToken(auth);
57
- yield storeSessionToken(sessionToken, encryptionKey, store);
58
- }
59
- else {
60
- try {
61
- sessionToken = decryptString(encryptedToken, encryptionKey);
62
- }
63
- catch (e) {
64
- // This can happen when e.g. the connection / encryption key has changed
65
- sessionToken = yield refreshSessionToken(auth);
66
- yield storeSessionToken(sessionToken, encryptionKey, store);
67
- }
68
- }
69
8
  const request = {
70
9
  method: params.method,
71
- url: `${baseUrl}/api/${params.endpoint}`,
10
+ url: `${auth.baseUrl}/api/${params.endpoint}`,
72
11
  queryParams: params.queryParams,
73
- headers: Object.assign(Object.assign({}, params.headers), { 'Content-Type': 'application/json', 'X-Metabase-Session': sessionToken }),
12
+ headers: Object.assign(Object.assign({}, params.headers), { 'Content-Type': 'application/json', 'X-API-KEY': auth.apiKey }),
74
13
  body: JSON.stringify(params.body),
75
14
  };
76
- try {
77
- return (yield pieces_common_1.httpClient.sendRequest(request)).body;
78
- }
79
- catch (error) {
80
- const httpError = error;
81
- if (httpError.response.status === 401) {
82
- const sessionToken = yield refreshSessionToken(auth);
83
- yield storeSessionToken(sessionToken, encryptionKey, store);
84
- return (yield pieces_common_1.httpClient.sendRequest(request)).body;
85
- }
86
- throw error;
87
- }
15
+ const response = yield pieces_common_1.httpClient.sendRequest(request);
16
+ return response.body;
88
17
  });
89
18
  }
90
- exports.queryApiAndHandleRefresh = queryApiAndHandleRefresh;
19
+ exports.queryMetabaseApi = queryMetabaseApi;
91
20
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../../../../packages/pieces/community/metabase/src/lib/common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../../../../packages/pieces/community/metabase/src/lib/common.ts"],"names":[],"mappings":";;;;AAAA,+DAMqC;AAMrC,SAAsB,gBAAgB,CACpC,MAMC,EACD,IAAuC;;QAEvC,MAAM,OAAO,GAAgB;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,QAAQ,MAAM,CAAC,QAAQ,EAAE;YAC7C,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,OAAO,kCACF,MAAM,CAAC,OAAO,KACjB,cAAc,EAAE,kBAAkB,EAClC,WAAW,EAAE,IAAI,CAAC,MAAgB,GACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;SAClC,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;CAAA;AAvBD,4CAuBC"}