@activepieces/piece-mistral-ai 0.1.3 → 0.2.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.
Files changed (39) hide show
  1. package/package.json +11 -22
  2. package/src/i18n/translation.json +31 -1
  3. package/src/index.d.ts +7 -1
  4. package/src/index.d.ts.map +1 -0
  5. package/src/index.js +6 -7
  6. package/src/index.js.map +1 -1
  7. package/src/lib/actions/create-chat-completion.d.ts +13 -2
  8. package/src/lib/actions/create-chat-completion.d.ts.map +1 -0
  9. package/src/lib/actions/create-chat-completion.js +5 -6
  10. package/src/lib/actions/create-chat-completion.js.map +1 -1
  11. package/src/lib/actions/create-embeddings.d.ts +7 -1
  12. package/src/lib/actions/create-embeddings.d.ts.map +1 -0
  13. package/src/lib/actions/create-embeddings.js +4 -5
  14. package/src/lib/actions/create-embeddings.js.map +1 -1
  15. package/src/lib/actions/list-models.d.ts +7 -1
  16. package/src/lib/actions/list-models.d.ts.map +1 -0
  17. package/src/lib/actions/list-models.js +4 -5
  18. package/src/lib/actions/list-models.js.map +1 -1
  19. package/src/lib/actions/run-ocr.d.ts +16 -0
  20. package/src/lib/actions/run-ocr.d.ts.map +1 -0
  21. package/src/lib/actions/run-ocr.js +202 -0
  22. package/src/lib/actions/run-ocr.js.map +1 -0
  23. package/src/lib/actions/upload-file.d.ts +7 -1
  24. package/src/lib/actions/upload-file.d.ts.map +1 -0
  25. package/src/lib/actions/upload-file.js +4 -6
  26. package/src/lib/actions/upload-file.js.map +1 -1
  27. package/src/lib/common/auth.d.ts +7 -1
  28. package/src/lib/common/auth.d.ts.map +1 -0
  29. package/src/lib/common/auth.js +66 -4
  30. package/src/lib/common/auth.js.map +1 -1
  31. package/src/lib/common/props.d.ts +7 -1
  32. package/src/lib/common/props.d.ts.map +1 -0
  33. package/src/lib/common/props.js +4 -5
  34. package/src/lib/common/props.js.map +1 -1
  35. package/src/lib/common/request.d.ts +13 -0
  36. package/src/lib/common/request.d.ts.map +1 -0
  37. package/src/lib/common/request.js +30 -0
  38. package/src/lib/common/request.js.map +1 -0
  39. package/README.md +0 -7
package/package.json CHANGED
@@ -1,28 +1,17 @@
1
1
  {
2
2
  "name": "@activepieces/piece-mistral-ai",
3
- "version": "0.1.3",
3
+ "version": "0.2.0",
4
+ "main": "./src/index.js",
5
+ "types": "./src/index.d.ts",
6
+ "scripts": {
7
+ "build": "tsc -p tsconfig.lib.json && cp package.json dist/",
8
+ "lint": "eslint 'src/**/*.ts'"
9
+ },
4
10
  "dependencies": {
5
- "@sinclair/typebox": "0.34.11",
6
- "ai": "^6.0.0",
7
- "axios": "1.13.1",
8
- "axios-retry": "4.4.1",
9
- "deepmerge-ts": "7.1.0",
11
+ "@activepieces/pieces-common": "0.12.3",
12
+ "@activepieces/pieces-framework": "0.28.1",
13
+ "@activepieces/shared": "0.68.5",
10
14
  "form-data": "4.0.4",
11
- "i18next": "23.13.0",
12
- "mime-types": "2.1.35",
13
- "nanoid": "3.3.8",
14
- "semver": "7.6.0",
15
- "socket.io-client": "4.8.1",
16
- "zod": "4.1.13",
17
- "@activepieces/pieces-common": "0.11.5",
18
- "@activepieces/pieces-framework": "0.25.2",
19
- "@activepieces/shared": "0.34.0",
20
15
  "tslib": "2.6.2"
21
- },
22
- "resolutions": {
23
- "rollup": "npm:@rollup/wasm-node"
24
- },
25
- "types": "./src/index.d.ts",
26
- "main": "./src/index.js",
27
- "type": "commonjs"
16
+ }
28
17
  }
@@ -1,9 +1,21 @@
1
1
  {
2
2
  "Mistral AI provides state-of-the-art open-weight and hosted language models for text generation, embeddings, and reasoning tasks.": "Mistral AI provides state-of-the-art open-weight and hosted language models for text generation, embeddings, and reasoning tasks.",
3
3
  "You can obtain your API key from the Mistral AI dashboard. Go to https://console.mistral.ai, generate an API key, and paste it here.": "You can obtain your API key from the Mistral AI dashboard. Go to https://console.mistral.ai, generate an API key, and paste it here.",
4
+ "Cloudflare AI Gateway": "Cloudflare AI Gateway",
5
+ "Route Mistral calls through your Cloudflare AI Gateway. Provide a Mistral API key (key-in-request mode) or leave it blank if your gateway has Mistral configured as a stored key (BYOK).": "Route Mistral calls through your Cloudflare AI Gateway. Provide a Mistral API key (key-in-request mode) or leave it blank if your gateway has Mistral configured as a stored key (BYOK).",
6
+ "Cloudflare Account ID": "Cloudflare Account ID",
7
+ "Your Cloudflare account ID (visible on the AI Gateway dashboard).": "Your Cloudflare account ID (visible on the AI Gateway dashboard).",
8
+ "Gateway ID": "Gateway ID",
9
+ "The slug of your AI Gateway (visible on the gateway settings page).": "The slug of your AI Gateway (visible on the gateway settings page).",
10
+ "Gateway Auth Token": "Gateway Auth Token",
11
+ "Optional. Required only if your gateway has authentication enabled. Sent as cf-aig-authorization.": "Optional. Required only if your gateway has authentication enabled. Sent as cf-aig-authorization.",
12
+ "Mistral API Key": "Mistral API Key",
13
+ "Optional. Provide your Mistral key for key-in-request mode. Leave blank if Cloudflare injects the key via stored credentials (BYOK).": "Optional. Provide your Mistral key for key-in-request mode. Leave blank if Cloudflare injects the key via stored credentials (BYOK).",
4
14
  "Ask Mistral": "Ask Mistral",
5
15
  "Create Embeddings": "Create Embeddings",
6
16
  "Upload File": "Upload File",
17
+ "Run OCR": "Run OCR",
18
+ "Extract text from PDFs and images using mistral-ocr-latest. To OCR a file from a previous step, run Upload File first (with purpose=ocr) and pass the returned id here.": "Extract text from PDFs and images using mistral-ocr-latest. To OCR a file from a previous step, run Upload File first (with purpose=ocr) and pass the returned id here.",
7
19
  "List Models": "List Models",
8
20
  "Custom API Call": "Custom API Call",
9
21
  "Ask Mistral anything you want!": "Ask Mistral anything you want!",
@@ -36,6 +48,24 @@
36
48
  "The input text for which to create an embedding.": "The input text for which to create an embedding.",
37
49
  "The file to upload (max 512MB).For fine tuning purspose provide .jsonl file.": "The file to upload (max 512MB).For fine tuning purspose provide .jsonl file.",
38
50
  "Purpose of the file.": "Purpose of the file.",
51
+ "Document Source": "Document Source",
52
+ "Where the document or image to OCR comes from.": "Where the document or image to OCR comes from.",
53
+ "URL": "URL",
54
+ "Mistral file ID (uploaded earlier with purpose=ocr)": "Mistral file ID (uploaded earlier with purpose=ocr)",
55
+ "Document": "Document",
56
+ "File ID": "File ID",
57
+ "A Mistral file ID returned from a prior Upload File step (purpose=ocr).": "A Mistral file ID returned from a prior Upload File step (purpose=ocr).",
58
+ "Document Type": "Document Type",
59
+ "Pick \"Image\" for PNG/JPG/WEBP, \"Document\" for PDFs.": "Pick \"Image\" for PNG/JPG/WEBP, \"Document\" for PDFs.",
60
+ "Document (PDF)": "Document (PDF)",
61
+ "Image": "Image",
62
+ "Public URL of the PDF or image to OCR.": "Public URL of the PDF or image to OCR.",
63
+ "Pages": "Pages",
64
+ "Optional zero-based page indices to process. Leave empty for all pages.": "Optional zero-based page indices to process. Leave empty for all pages.",
65
+ "Include Image Base64": "Include Image Base64",
66
+ "Return embedded images encoded as base64 alongside the Markdown.": "Return embedded images encoded as base64 alongside the Markdown.",
67
+ "mistral-ocr-latest (Recommended)": "mistral-ocr-latest (Recommended)",
68
+ "mistral-ocr-2505": "mistral-ocr-2505",
39
69
  "Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
40
70
  "Enable for files like PDFs, images, etc.": "Enable for files like PDFs, images, etc.",
41
71
  "fine-tune": "fine-tune",
@@ -51,4 +81,4 @@
51
81
  "JSON": "JSON",
52
82
  "Form Data": "Form Data",
53
83
  "Raw": "Raw"
54
- }
84
+ }
package/src/index.d.ts CHANGED
@@ -1 +1,7 @@
1
- export declare const mistralAi: import("@activepieces/pieces-framework").Piece<import("@activepieces/pieces-framework").SecretTextProperty<true>>;
1
+ export declare const mistralAi: import("@activepieces/pieces-framework").Piece<(import("@activepieces/pieces-framework").SecretTextProperty<true> | import("@activepieces/pieces-framework").CustomAuthProperty<{
2
+ accountId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ gatewayId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
4
+ gatewayAuthToken: import("@activepieces/pieces-framework").SecretTextProperty<false>;
5
+ mistralApiKey: import("@activepieces/pieces-framework").SecretTextProperty<false>;
6
+ }>)[]>;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,SAAS;;;;;MAqBpB,CAAC"}
package/src/index.js CHANGED
@@ -7,8 +7,10 @@ const shared_1 = require("@activepieces/shared");
7
7
  const create_chat_completion_1 = require("./lib/actions/create-chat-completion");
8
8
  const create_embeddings_1 = require("./lib/actions/create-embeddings");
9
9
  const upload_file_1 = require("./lib/actions/upload-file");
10
+ const run_ocr_1 = require("./lib/actions/run-ocr");
10
11
  const list_models_1 = require("./lib/actions/list-models");
11
12
  const auth_1 = require("./lib/common/auth");
13
+ const request_1 = require("./lib/common/request");
12
14
  const pieces_common_1 = require("@activepieces/pieces-common");
13
15
  exports.mistralAi = (0, pieces_framework_1.createPiece)({
14
16
  displayName: "Mistral AI",
@@ -22,16 +24,13 @@ exports.mistralAi = (0, pieces_framework_1.createPiece)({
22
24
  create_chat_completion_1.createChatCompletion,
23
25
  create_embeddings_1.createEmbeddings,
24
26
  upload_file_1.uploadFile,
27
+ run_ocr_1.runOcr,
25
28
  list_models_1.listModels,
26
29
  (0, pieces_common_1.createCustomApiCallAction)({
27
30
  auth: auth_1.mistralAuth,
28
- baseUrl: () => 'https://api.mistral.ai/v1',
29
- authMapping: (auth) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
30
- return {
31
- Authorization: `Bearer ${auth.secret_text}`
32
- };
33
- })
34
- })
31
+ baseUrl: (auth) => (auth ? request_1.mistralRequest.getConfig(auth).baseUrl : 'https://api.mistral.ai/v1'),
32
+ authMapping: (auth) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { return request_1.mistralRequest.getConfig(auth).headers; }),
33
+ }),
35
34
  ],
36
35
  triggers: [],
37
36
  });
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/pieces/community/mistral-ai/src/index.ts"],"names":[],"mappings":";;;;AAAA,qEAA6D;AAC7D,iDAAqD;AACrD,iFAA4E;AAC5E,uEAAmE;AACnE,2DAAuD;AACvD,2DAAuD;AACvD,4CAAgD;AAChD,+DAAwE;AAE3D,QAAA,SAAS,GAAG,IAAA,8BAAW,EAAC;IACnC,WAAW,EAAE,YAAY;IACzB,WAAW,EAAE,mIAAmI;IAChJ,IAAI,EAAE,kBAAW;IACjB,uBAAuB,EAAE,QAAQ;IACjC,OAAO,EAAE,oDAAoD;IAC7D,OAAO,EAAE,CAAC,WAAW,CAAC;IACtB,UAAU,EAAE,CAAC,sBAAa,CAAC,uBAAuB,CAAC;IACnD,OAAO,EAAE;QACP,6CAAoB;QACpB,oCAAgB;QAChB,wBAAU;QACV,wBAAU;QACV,IAAA,yCAAyB,EAAC;YACxB,IAAI,EAAC,kBAAW;YAChB,OAAO,EAAC,GAAE,EAAE,CAAA,2BAA2B;YACvC,WAAW,EAAC,CAAO,IAAI,EAAC,EAAE;gBACxB,OAAM;oBACJ,aAAa,EAAC,UAAU,IAAI,CAAC,WAAW,EAAE;iBAC3C,CAAA;YACH,CAAC,CAAA;SACF,CAAC;KACH;IACD,QAAQ,EAAE,EAAE;CACb,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,qEAA6D;AAC7D,iDAAqD;AACrD,iFAA4E;AAC5E,uEAAmE;AACnE,2DAAuD;AACvD,mDAA+C;AAC/C,2DAAuD;AACvD,4CAAgD;AAChD,kDAAsD;AACtD,+DAAwE;AAE3D,QAAA,SAAS,GAAG,IAAA,8BAAW,EAAC;IACnC,WAAW,EAAE,YAAY;IACzB,WAAW,EAAE,mIAAmI;IAChJ,IAAI,EAAE,kBAAW;IACjB,uBAAuB,EAAE,QAAQ;IACjC,OAAO,EAAE,oDAAoD;IAC7D,OAAO,EAAE,CAAC,WAAW,CAAC;IACtB,UAAU,EAAE,CAAC,sBAAa,CAAC,uBAAuB,CAAC;IACnD,OAAO,EAAE;QACP,6CAAoB;QACpB,oCAAgB;QAChB,wBAAU;QACV,gBAAM;QACN,wBAAU;QACV,IAAA,yCAAyB,EAAC;YACxB,IAAI,EAAE,kBAAW;YACjB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,wBAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC;YAChG,WAAW,EAAE,CAAO,IAAI,EAAE,EAAE,0DAAC,OAAA,wBAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAA,GAAA;SACpE,CAAC;KACH;IACD,QAAQ,EAAE,EAAE;CACb,CAAC,CAAC"}
@@ -1,5 +1,15 @@
1
- export declare const createChatCompletion: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
2
- model: import("@activepieces/pieces-framework").DropdownProperty<string, true, import("@activepieces/pieces-framework").SecretTextProperty<true>>;
1
+ export declare const createChatCompletion: import("@activepieces/pieces-framework").IAction<(import("@activepieces/pieces-framework").SecretTextProperty<true> | import("@activepieces/pieces-framework").CustomAuthProperty<{
2
+ accountId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ gatewayId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
4
+ gatewayAuthToken: import("@activepieces/pieces-framework").SecretTextProperty<false>;
5
+ mistralApiKey: import("@activepieces/pieces-framework").SecretTextProperty<false>;
6
+ }>)[], {
7
+ model: import("@activepieces/pieces-framework").DropdownProperty<string, true, (import("@activepieces/pieces-framework").SecretTextProperty<true> | import("@activepieces/pieces-framework").CustomAuthProperty<{
8
+ accountId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
9
+ gatewayId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
10
+ gatewayAuthToken: import("@activepieces/pieces-framework").SecretTextProperty<false>;
11
+ mistralApiKey: import("@activepieces/pieces-framework").SecretTextProperty<false>;
12
+ }>)[]>;
3
13
  prompt: import("@activepieces/pieces-framework").LongTextProperty<true>;
4
14
  temperature: import("@activepieces/pieces-framework").NumberProperty<false>;
5
15
  top_p: import("@activepieces/pieces-framework").NumberProperty<false>;
@@ -7,3 +17,4 @@ export declare const createChatCompletion: import("@activepieces/pieces-framewor
7
17
  random_seed: import("@activepieces/pieces-framework").NumberProperty<false>;
8
18
  timeout: import("@activepieces/pieces-framework").NumberProperty<false>;
9
19
  }>;
20
+ //# sourceMappingURL=create-chat-completion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-chat-completion.d.ts","sourceRoot":"","sources":["../../../../src/lib/actions/create-chat-completion.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;EA0E/B,CAAC"}
@@ -6,6 +6,7 @@ const pieces_framework_1 = require("@activepieces/pieces-framework");
6
6
  const pieces_common_1 = require("@activepieces/pieces-common");
7
7
  const auth_1 = require("../common/auth");
8
8
  const props_1 = require("../common/props");
9
+ const request_1 = require("../common/request");
9
10
  exports.createChatCompletion = (0, pieces_framework_1.createAction)({
10
11
  auth: auth_1.mistralAuth,
11
12
  name: 'create_chat_completion',
@@ -37,6 +38,7 @@ exports.createChatCompletion = (0, pieces_framework_1.createAction)({
37
38
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
38
39
  var _a;
39
40
  const { model, temperature, top_p, max_tokens, random_seed, timeout, prompt } = context.propsValue;
41
+ const { baseUrl, headers } = request_1.mistralRequest.getConfig(context.auth);
40
42
  const body = {
41
43
  model,
42
44
  messages: [
@@ -48,18 +50,15 @@ exports.createChatCompletion = (0, pieces_framework_1.createAction)({
48
50
  temperature,
49
51
  top_p,
50
52
  max_tokens,
51
- random_seed
53
+ random_seed,
52
54
  };
53
55
  let lastErr;
54
56
  for (let attempt = 0; attempt <= 3; ++attempt) {
55
57
  try {
56
58
  const response = yield pieces_common_1.httpClient.sendRequest({
57
59
  method: pieces_common_1.HttpMethod.POST,
58
- url: 'https://api.mistral.ai/v1/chat/completions',
59
- authentication: {
60
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
61
- token: context.auth.secret_text,
62
- },
60
+ url: `${baseUrl}/chat/completions`,
61
+ headers,
63
62
  body,
64
63
  timeout: timeout !== null && timeout !== void 0 ? timeout : 30000,
65
64
  });
@@ -1 +1 @@
1
- {"version":3,"file":"create-chat-completion.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/mistral-ai/src/lib/actions/create-chat-completion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-chat-completion.js","sourceRoot":"","sources":["../../../../src/lib/actions/create-chat-completion.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,10 @@
1
- export declare const createEmbeddings: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
1
+ export declare const createEmbeddings: import("@activepieces/pieces-framework").IAction<(import("@activepieces/pieces-framework").SecretTextProperty<true> | import("@activepieces/pieces-framework").CustomAuthProperty<{
2
+ accountId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ gatewayId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
4
+ gatewayAuthToken: import("@activepieces/pieces-framework").SecretTextProperty<false>;
5
+ mistralApiKey: import("@activepieces/pieces-framework").SecretTextProperty<false>;
6
+ }>)[], {
2
7
  input: import("@activepieces/pieces-framework").ArrayProperty<true>;
3
8
  timeout: import("@activepieces/pieces-framework").NumberProperty<false>;
4
9
  }>;
10
+ //# sourceMappingURL=create-embeddings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-embeddings.d.ts","sourceRoot":"","sources":["../../../../src/lib/actions/create-embeddings.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB;;;;;;;;EA2D3B,CAAC"}
@@ -6,6 +6,7 @@ const pieces_framework_1 = require("@activepieces/pieces-framework");
6
6
  const pieces_common_1 = require("@activepieces/pieces-common");
7
7
  const auth_1 = require("../common/auth");
8
8
  const props_1 = require("../common/props");
9
+ const request_1 = require("../common/request");
9
10
  exports.createEmbeddings = (0, pieces_framework_1.createAction)({
10
11
  auth: auth_1.mistralAuth,
11
12
  name: 'create_embeddings',
@@ -23,6 +24,7 @@ exports.createEmbeddings = (0, pieces_framework_1.createAction)({
23
24
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
24
25
  var _a;
25
26
  const { input, timeout } = context.propsValue;
27
+ const { baseUrl, headers } = request_1.mistralRequest.getConfig(context.auth);
26
28
  let inputArr = [];
27
29
  try {
28
30
  if (typeof input === 'string') {
@@ -47,11 +49,8 @@ exports.createEmbeddings = (0, pieces_framework_1.createAction)({
47
49
  try {
48
50
  const response = yield pieces_common_1.httpClient.sendRequest({
49
51
  method: pieces_common_1.HttpMethod.POST,
50
- url: 'https://api.mistral.ai/v1/embeddings',
51
- authentication: {
52
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
53
- token: context.auth.secret_text,
54
- },
52
+ url: `${baseUrl}/embeddings`,
53
+ headers,
55
54
  body,
56
55
  timeout: timeout !== null && timeout !== void 0 ? timeout : 30000,
57
56
  });
@@ -1 +1 @@
1
- {"version":3,"file":"create-embeddings.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/mistral-ai/src/lib/actions/create-embeddings.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAAyF;AACzF,yCAA6C;AAC7C,2CAAoD;AAEvC,QAAA,gBAAgB,GAAG,IAAA,+BAAY,EAAC;IAC5C,IAAI,EAAE,kBAAW;IACjB,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,mBAAmB;IAChC,WAAW,EAAE,sCAAsC;IACnD,KAAK,EAAE;QACN,KAAK,EAAE,2BAAQ,CAAC,KAAK,CAAC;YACrB,WAAW,EAAE,OAAO;YACpB,WAAW,EAAE,kDAAkD;YAC/D,QAAQ,EAAE,IAAI;SACd,CAAC;QACF,OAAO,EAAE,2BAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;KAC/F;IACK,GAAG,CAAC,OAAO;;;YAChB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAC9C,IAAI,QAAQ,GAAa,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACJ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC/B,IAAI,CAAC;wBACJ,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC9B,CAAC;oBAAC,WAAM,CAAC;wBACR,QAAQ,GAAG,KAAK,CAAC;oBAClB,CAAC;gBACF,CAAC;gBACD,QAAQ,GAAG,KAAiB,CAAC;YAC9B,CAAC;YAAC,WAAM,CAAC;gBACR,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;YAC1F,CAAC;YACD,MAAM,IAAI,GAAG;gBACZ,KAAK,EAAE,eAAe;gBACtB,KAAK,EAAE,QAAQ;aACf,CAAC;YACF,IAAI,OAAO,CAAC;YACZ,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC;gBAC/C,IAAI,CAAC;oBACJ,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;wBAC7C,MAAM,EAAE,0BAAU,CAAC,IAAI;wBACvB,GAAG,EAAE,sCAAsC;wBAC3C,cAAc,EAAE;4BACf,IAAI,EAAE,kCAAkB,CAAC,YAAY;4BACrC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW;yBAC/B;wBACD,IAAI;wBACJ,OAAO,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,KAAK;qBACzB,CAAC,CAAC;oBAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;gBACtB,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBACjB,OAAO,GAAG,CAAC,CAAC;oBACZ,MAAM,MAAM,GAAG,MAAA,CAAC,CAAC,QAAQ,0CAAE,MAAM,CAAC;oBAClC,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC;wBACjE,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;4BACjB,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC9D,SAAS;wBACV,CAAC;oBACF,CAAC;oBACD,MAAM,IAAI,KAAK,CAAC,IAAA,yBAAiB,EAAC,CAAC,CAAC,CAAC,CAAC;gBACvC,CAAC;YACF,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,IAAA,yBAAiB,EAAC,OAAO,CAAC,CAAC,CAAC;QAC7C,CAAC;KAAA;CACD,CAAC,CAAC"}
1
+ {"version":3,"file":"create-embeddings.js","sourceRoot":"","sources":["../../../../src/lib/actions/create-embeddings.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAAqE;AACrE,yCAA6C;AAC7C,2CAAoD;AACpD,+CAAmD;AAEtC,QAAA,gBAAgB,GAAG,IAAA,+BAAY,EAAC;IAC5C,IAAI,EAAE,kBAAW;IACjB,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,mBAAmB;IAChC,WAAW,EAAE,sCAAsC;IACnD,KAAK,EAAE;QACN,KAAK,EAAE,2BAAQ,CAAC,KAAK,CAAC;YACrB,WAAW,EAAE,OAAO;YACpB,WAAW,EAAE,kDAAkD;YAC/D,QAAQ,EAAE,IAAI;SACd,CAAC;QACF,OAAO,EAAE,2BAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;KAC/F;IACK,GAAG,CAAC,OAAO;;;YAChB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAC9C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,wBAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACpE,IAAI,QAAQ,GAAa,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACJ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC/B,IAAI,CAAC;wBACJ,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC9B,CAAC;oBAAC,WAAM,CAAC;wBACR,QAAQ,GAAG,KAAK,CAAC;oBAClB,CAAC;gBACF,CAAC;gBACD,QAAQ,GAAG,KAAiB,CAAC;YAC9B,CAAC;YAAC,WAAM,CAAC;gBACR,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;YAC1F,CAAC;YACD,MAAM,IAAI,GAAG;gBACZ,KAAK,EAAE,eAAe;gBACtB,KAAK,EAAE,QAAQ;aACf,CAAC;YACF,IAAI,OAAO,CAAC;YACZ,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC;gBAC/C,IAAI,CAAC;oBACJ,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;wBAC7C,MAAM,EAAE,0BAAU,CAAC,IAAI;wBACvB,GAAG,EAAE,GAAG,OAAO,aAAa;wBAC5B,OAAO;wBACP,IAAI;wBACJ,OAAO,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,KAAK;qBACzB,CAAC,CAAC;oBAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;gBACtB,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBACjB,OAAO,GAAG,CAAC,CAAC;oBACZ,MAAM,MAAM,GAAG,MAAA,CAAC,CAAC,QAAQ,0CAAE,MAAM,CAAC;oBAClC,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC;wBACjE,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;4BACjB,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC9D,SAAS;wBACV,CAAC;oBACF,CAAC;oBACD,MAAM,IAAI,KAAK,CAAC,IAAA,yBAAiB,EAAC,CAAC,CAAC,CAAC,CAAC;gBACvC,CAAC;YACF,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,IAAA,yBAAiB,EAAC,OAAO,CAAC,CAAC,CAAC;QAC7C,CAAC;KAAA;CACD,CAAC,CAAC"}
@@ -1 +1,7 @@
1
- export declare const listModels: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {}>;
1
+ export declare const listModels: import("@activepieces/pieces-framework").IAction<(import("@activepieces/pieces-framework").SecretTextProperty<true> | import("@activepieces/pieces-framework").CustomAuthProperty<{
2
+ accountId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ gatewayId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
4
+ gatewayAuthToken: import("@activepieces/pieces-framework").SecretTextProperty<false>;
5
+ mistralApiKey: import("@activepieces/pieces-framework").SecretTextProperty<false>;
6
+ }>)[], {}>;
7
+ //# sourceMappingURL=list-models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-models.d.ts","sourceRoot":"","sources":["../../../../src/lib/actions/list-models.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,UAAU;;;;;UAoBrB,CAAC"}
@@ -6,6 +6,7 @@ const pieces_framework_1 = require("@activepieces/pieces-framework");
6
6
  const pieces_common_1 = require("@activepieces/pieces-common");
7
7
  const auth_1 = require("../common/auth");
8
8
  const props_1 = require("../common/props");
9
+ const request_1 = require("../common/request");
9
10
  exports.listModels = (0, pieces_framework_1.createAction)({
10
11
  auth: auth_1.mistralAuth,
11
12
  name: 'list_models',
@@ -15,13 +16,11 @@ exports.listModels = (0, pieces_framework_1.createAction)({
15
16
  run(_a) {
16
17
  return tslib_1.__awaiter(this, arguments, void 0, function* ({ auth }) {
17
18
  try {
19
+ const { baseUrl, headers } = request_1.mistralRequest.getConfig(auth);
18
20
  const response = yield pieces_common_1.httpClient.sendRequest({
19
21
  method: pieces_common_1.HttpMethod.GET,
20
- url: 'https://api.mistral.ai/v1/models',
21
- authentication: {
22
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
23
- token: auth.secret_text,
24
- },
22
+ url: `${baseUrl}/models`,
23
+ headers,
25
24
  });
26
25
  return response.body;
27
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"list-models.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/mistral-ai/src/lib/actions/list-models.ts"],"names":[],"mappings":";;;;AAAA,qEAA8D;AAC9D,+DAAyF;AACzF,yCAA6C;AAC7C,2CAAoD;AAEvC,QAAA,UAAU,GAAG,IAAA,+BAAY,EAAC;IACrC,IAAI,EAAE,kBAAW;IACjB,IAAI,EAAE,aAAa;IACpB,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,kDAAkD;IAC9D,KAAK,EAAE,EAAE;IACH,GAAG;qEAAC,EAAE,IAAI,EAAE;YAChB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;oBAC5C,MAAM,EAAE,0BAAU,CAAC,GAAG;oBACtB,GAAG,EAAE,kCAAkC;oBACvC,cAAc,EAAE;wBACd,IAAI,EAAE,kCAAkB,CAAC,YAAY;wBACrC,KAAK,EAAE,IAAI,CAAC,WAAW;qBACxB;iBACF,CAAC,CAAC;gBAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,IAAA,yBAAiB,EAAC,CAAC,CAAC,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;KAAA;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"list-models.js","sourceRoot":"","sources":["../../../../src/lib/actions/list-models.ts"],"names":[],"mappings":";;;;AAAA,qEAA8D;AAC9D,+DAAqE;AACrE,yCAA6C;AAC7C,2CAAoD;AACpD,+CAAmD;AAEtC,QAAA,UAAU,GAAG,IAAA,+BAAY,EAAC;IACtC,IAAI,EAAE,kBAAW;IACjB,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,kDAAkD;IAC/D,KAAK,EAAE,EAAE;IACH,GAAG;qEAAC,EAAE,IAAI,EAAE;YACjB,IAAI,CAAC;gBACJ,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,wBAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAC5D,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;oBAC7C,MAAM,EAAE,0BAAU,CAAC,GAAG;oBACtB,GAAG,EAAE,GAAG,OAAO,SAAS;oBACxB,OAAO;iBACP,CAAC,CAAC;gBAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;YACtB,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,IAAA,yBAAiB,EAAC,CAAC,CAAC,CAAC,CAAC;YACvC,CAAC;QACF,CAAC;KAAA;CACD,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ export declare const runOcr: import("@activepieces/pieces-framework").IAction<(import("@activepieces/pieces-framework").SecretTextProperty<true> | import("@activepieces/pieces-framework").CustomAuthProperty<{
2
+ accountId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ gatewayId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
4
+ gatewayAuthToken: import("@activepieces/pieces-framework").SecretTextProperty<false>;
5
+ mistralApiKey: import("@activepieces/pieces-framework").SecretTextProperty<false>;
6
+ }>)[], {
7
+ model: import("@activepieces/pieces-framework").StaticDropdownProperty<string, true>;
8
+ documentSource: import("@activepieces/pieces-framework").StaticDropdownProperty<DocumentSource, false> | import("@activepieces/pieces-framework").StaticDropdownProperty<DocumentSource, true>;
9
+ sourceFields: import("@activepieces/pieces-framework").DynamicProperties<true, undefined>;
10
+ pages: import("@activepieces/pieces-framework").ArrayProperty<false>;
11
+ includeImageBase64: import("@activepieces/pieces-framework").CheckboxProperty<false>;
12
+ timeout: import("@activepieces/pieces-framework").NumberProperty<false>;
13
+ }>;
14
+ type DocumentSource = 'url' | 'fileId';
15
+ export {};
16
+ //# sourceMappingURL=run-ocr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-ocr.d.ts","sourceRoot":"","sources":["../../../../src/lib/actions/run-ocr.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,MAAM;;;;;;;;;;;;EA6HjB,CAAC;AA8EH,KAAK,cAAc,GAAG,KAAK,GAAG,QAAQ,CAAC"}
@@ -0,0 +1,202 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runOcr = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@activepieces/pieces-framework");
6
+ const pieces_common_1 = require("@activepieces/pieces-common");
7
+ const auth_1 = require("../common/auth");
8
+ const props_1 = require("../common/props");
9
+ const request_1 = require("../common/request");
10
+ const OCR_MODEL_OPTIONS = [
11
+ { label: 'mistral-ocr-latest (Recommended)', value: 'mistral-ocr-latest' },
12
+ { label: 'mistral-ocr-2505', value: 'mistral-ocr-2505' },
13
+ ];
14
+ exports.runOcr = (0, pieces_framework_1.createAction)({
15
+ auth: auth_1.mistralAuth,
16
+ name: 'run_ocr',
17
+ displayName: 'Run OCR',
18
+ description: 'Extract text from PDFs and images using mistral-ocr-latest. To OCR a file from a previous step, run Upload File first (with purpose=ocr) and pass the returned id here.',
19
+ props: {
20
+ model: pieces_framework_1.Property.StaticDropdown({
21
+ displayName: 'Model',
22
+ required: true,
23
+ defaultValue: 'mistral-ocr-latest',
24
+ options: { options: OCR_MODEL_OPTIONS },
25
+ }),
26
+ documentSource: pieces_framework_1.Property.StaticDropdown({
27
+ displayName: 'Document Source',
28
+ description: 'Where the document or image to OCR comes from.',
29
+ required: true,
30
+ defaultValue: 'url',
31
+ options: {
32
+ options: [
33
+ { label: 'URL', value: 'url' },
34
+ { label: 'Mistral file ID (uploaded earlier with purpose=ocr)', value: 'fileId' },
35
+ ],
36
+ },
37
+ }),
38
+ sourceFields: pieces_framework_1.Property.DynamicProperties({
39
+ displayName: 'Document',
40
+ required: true,
41
+ refreshers: ['documentSource'],
42
+ auth: pieces_framework_1.PieceAuth.None(),
43
+ props: (propsValue) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
44
+ const source = propsValue['documentSource'];
45
+ if (source === 'fileId') {
46
+ const fields = {
47
+ fileId: pieces_framework_1.Property.ShortText({
48
+ displayName: 'File ID',
49
+ description: 'A Mistral file ID returned from a prior Upload File step (purpose=ocr).',
50
+ required: true,
51
+ }),
52
+ documentType: documentTypeDropdown(),
53
+ };
54
+ return fields;
55
+ }
56
+ const fields = {
57
+ documentUrl: pieces_framework_1.Property.ShortText({
58
+ displayName: 'URL',
59
+ description: 'Public URL of the PDF or image to OCR.',
60
+ required: true,
61
+ }),
62
+ documentType: documentTypeDropdown(),
63
+ };
64
+ return fields;
65
+ }),
66
+ }),
67
+ pages: pieces_framework_1.Property.Array({
68
+ displayName: 'Pages',
69
+ description: 'Optional zero-based page indices to process. Leave empty for all pages.',
70
+ required: false,
71
+ }),
72
+ includeImageBase64: pieces_framework_1.Property.Checkbox({
73
+ displayName: 'Include Image Base64',
74
+ description: 'Return embedded images encoded as base64 alongside the Markdown.',
75
+ required: false,
76
+ defaultValue: false,
77
+ }),
78
+ timeout: pieces_framework_1.Property.Number({
79
+ displayName: 'Timeout (ms)',
80
+ required: false,
81
+ defaultValue: 120000,
82
+ }),
83
+ },
84
+ run(context) {
85
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
86
+ var _a, _b;
87
+ const { model, documentSource, sourceFields, pages, includeImageBase64, timeout } = context.propsValue;
88
+ const config = request_1.mistralRequest.getConfig(context.auth);
89
+ const document = yield resolveDocument({
90
+ source: documentSource,
91
+ fields: sourceFields,
92
+ config,
93
+ timeout: timeout !== null && timeout !== void 0 ? timeout : 120000,
94
+ });
95
+ const body = {
96
+ model,
97
+ document,
98
+ };
99
+ const pageIndices = parsePageIndices(pages);
100
+ if (pageIndices) {
101
+ body['pages'] = pageIndices;
102
+ }
103
+ if (includeImageBase64) {
104
+ body['include_image_base64'] = true;
105
+ }
106
+ let lastErr;
107
+ for (let attempt = 0; attempt <= 3; ++attempt) {
108
+ try {
109
+ const response = yield pieces_common_1.httpClient.sendRequest({
110
+ method: pieces_common_1.HttpMethod.POST,
111
+ url: `${config.baseUrl}/ocr`,
112
+ headers: Object.assign(Object.assign({}, config.headers), { 'Content-Type': 'application/json' }),
113
+ body,
114
+ timeout: timeout !== null && timeout !== void 0 ? timeout : 120000,
115
+ });
116
+ const markdown = ((_a = response.body.pages) !== null && _a !== void 0 ? _a : []).map((p) => { var _a; return (_a = p.markdown) !== null && _a !== void 0 ? _a : ''; }).join('\n\n');
117
+ return Object.assign(Object.assign({}, response.body), { markdown });
118
+ }
119
+ catch (e) {
120
+ lastErr = e;
121
+ const status = (_b = e.response) === null || _b === void 0 ? void 0 : _b.status;
122
+ if (status === 429 || (status && status >= 500 && status < 600)) {
123
+ if (attempt < 3) {
124
+ yield new Promise((r) => setTimeout(r, 1000 * (attempt + 1)));
125
+ continue;
126
+ }
127
+ }
128
+ throw new Error((0, props_1.parseMistralError)(e));
129
+ }
130
+ }
131
+ throw new Error((0, props_1.parseMistralError)(lastErr));
132
+ });
133
+ },
134
+ });
135
+ function documentTypeDropdown() {
136
+ return pieces_framework_1.Property.StaticDropdown({
137
+ displayName: 'Document Type',
138
+ description: 'Pick "Image" for PNG/JPG/WEBP, "Document" for PDFs.',
139
+ required: true,
140
+ defaultValue: 'document_url',
141
+ options: {
142
+ options: [
143
+ { label: 'Document (PDF)', value: 'document_url' },
144
+ { label: 'Image', value: 'image_url' },
145
+ ],
146
+ },
147
+ });
148
+ }
149
+ function resolveDocument(_a) {
150
+ return tslib_1.__awaiter(this, arguments, void 0, function* ({ source, fields, config, timeout, }) {
151
+ var _b, _c, _d;
152
+ const documentType = (_b = fields['documentType']) !== null && _b !== void 0 ? _b : 'document_url';
153
+ if (source === 'fileId') {
154
+ const fileId = (_c = fields['fileId']) === null || _c === void 0 ? void 0 : _c.trim();
155
+ if (!fileId) {
156
+ throw new Error('A Mistral file ID is required.');
157
+ }
158
+ const signedUrl = yield fetchSignedUrl({ fileId, config, timeout });
159
+ return buildUrlDocument({ documentType, url: signedUrl });
160
+ }
161
+ const documentUrl = (_d = fields['documentUrl']) === null || _d === void 0 ? void 0 : _d.trim();
162
+ if (!documentUrl) {
163
+ throw new Error('A document URL is required.');
164
+ }
165
+ return buildUrlDocument({ documentType, url: documentUrl });
166
+ });
167
+ }
168
+ function buildUrlDocument({ documentType, url }) {
169
+ if (documentType === 'image_url') {
170
+ return { type: 'image_url', image_url: url };
171
+ }
172
+ return { type: 'document_url', document_url: url };
173
+ }
174
+ function fetchSignedUrl(_a) {
175
+ return tslib_1.__awaiter(this, arguments, void 0, function* ({ fileId, config, timeout }) {
176
+ const response = yield pieces_common_1.httpClient.sendRequest({
177
+ method: pieces_common_1.HttpMethod.GET,
178
+ url: `${config.baseUrl}/files/${encodeURIComponent(fileId)}/url?expiry=24`,
179
+ headers: config.headers,
180
+ timeout,
181
+ });
182
+ if (!response.body.url) {
183
+ throw new Error(`Could not fetch a signed URL for file ${fileId}.`);
184
+ }
185
+ return response.body.url;
186
+ });
187
+ }
188
+ function parsePageIndices(raw) {
189
+ if (!Array.isArray(raw) || raw.length === 0) {
190
+ return null;
191
+ }
192
+ const indices = raw
193
+ .map((entry) => {
194
+ if (typeof entry === 'number')
195
+ return entry;
196
+ const parsed = Number(String(entry).trim());
197
+ return Number.isFinite(parsed) ? parsed : null;
198
+ })
199
+ .filter((entry) => entry !== null && Number.isInteger(entry) && entry >= 0);
200
+ return indices.length > 0 ? indices : null;
201
+ }
202
+ //# sourceMappingURL=run-ocr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-ocr.js","sourceRoot":"","sources":["../../../../src/lib/actions/run-ocr.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,10 @@
1
- export declare const uploadFile: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
1
+ export declare const uploadFile: import("@activepieces/pieces-framework").IAction<(import("@activepieces/pieces-framework").SecretTextProperty<true> | import("@activepieces/pieces-framework").CustomAuthProperty<{
2
+ accountId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ gatewayId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
4
+ gatewayAuthToken: import("@activepieces/pieces-framework").SecretTextProperty<false>;
5
+ mistralApiKey: import("@activepieces/pieces-framework").SecretTextProperty<false>;
6
+ }>)[], {
2
7
  file: import("@activepieces/pieces-framework").FileProperty<true>;
3
8
  purpose: import("@activepieces/pieces-framework").StaticDropdownProperty<string, true>;
4
9
  }>;
10
+ //# sourceMappingURL=upload-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-file.d.ts","sourceRoot":"","sources":["../../../../src/lib/actions/upload-file.ts"],"names":[],"mappings":"AA2BA,eAAO,MAAM,UAAU;;;;;;;;EAqDrB,CAAC"}
@@ -7,6 +7,7 @@ const pieces_common_1 = require("@activepieces/pieces-common");
7
7
  const auth_1 = require("../common/auth");
8
8
  const form_data_1 = tslib_1.__importDefault(require("form-data"));
9
9
  const props_1 = require("../common/props");
10
+ const request_1 = require("../common/request");
10
11
  const SUPPORTED_PURPOSES = ['fine-tune', 'batch', 'ocr'];
11
12
  const MAX_FILE_SIZE_BYTES = 512 * 1024 * 1024;
12
13
  const ALLOWED_EXTENSIONS = [
@@ -57,18 +58,15 @@ exports.uploadFile = (0, pieces_framework_1.createAction)({
57
58
  const ext = getFileExtension(file.filename);
58
59
  if (!ALLOWED_EXTENSIONS.includes(ext))
59
60
  throw new Error(`File extension .${ext} is not allowed`);
61
+ const { baseUrl, headers } = request_1.mistralRequest.getConfig(context.auth);
60
62
  const form = new form_data_1.default();
61
63
  form.append('file', Buffer.from(file.data), file.filename);
62
64
  form.append('purpose', purpose);
63
65
  try {
64
66
  const response = yield pieces_common_1.httpClient.sendRequest({
65
67
  method: pieces_common_1.HttpMethod.POST,
66
- url: 'https://api.mistral.ai/v1/files',
67
- authentication: {
68
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
69
- token: context.auth.secret_text,
70
- },
71
- headers: Object.assign({}, form.getHeaders()),
68
+ url: `${baseUrl}/files`,
69
+ headers: Object.assign(Object.assign({}, headers), form.getHeaders()),
72
70
  body: form,
73
71
  });
74
72
  return response.body;
@@ -1 +1 @@
1
- {"version":3,"file":"upload-file.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/mistral-ai/src/lib/actions/upload-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upload-file.js","sourceRoot":"","sources":["../../../../src/lib/actions/upload-file.ts"],"names":[],"mappings":"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"}
@@ -1 +1,7 @@
1
- export declare const mistralAuth: import("@activepieces/pieces-framework").SecretTextProperty<true>;
1
+ export declare const mistralAuth: (import("@activepieces/pieces-framework").SecretTextProperty<true> | import("@activepieces/pieces-framework").CustomAuthProperty<{
2
+ accountId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ gatewayId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
4
+ gatewayAuthToken: import("@activepieces/pieces-framework").SecretTextProperty<false>;
5
+ mistralApiKey: import("@activepieces/pieces-framework").SecretTextProperty<false>;
6
+ }>)[];
7
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../src/lib/common/auth.ts"],"names":[],"mappings":"AAsFA,eAAO,MAAM,WAAW;;;;;KAAoD,CAAC"}
@@ -4,7 +4,7 @@ exports.mistralAuth = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const pieces_framework_1 = require("@activepieces/pieces-framework");
6
6
  const pieces_common_1 = require("@activepieces/pieces-common");
7
- exports.mistralAuth = pieces_framework_1.PieceAuth.SecretText({
7
+ const mistralDirectAuth = pieces_framework_1.PieceAuth.SecretText({
8
8
  displayName: 'API Key',
9
9
  description: `You can obtain your API key from the Mistral AI dashboard. Go to https://console.mistral.ai, generate an API key, and paste it here.`,
10
10
  required: true,
@@ -14,9 +14,8 @@ exports.mistralAuth = pieces_framework_1.PieceAuth.SecretText({
14
14
  yield pieces_common_1.httpClient.sendRequest({
15
15
  method: pieces_common_1.HttpMethod.GET,
16
16
  url: 'https://api.mistral.ai/v1/models',
17
- authentication: {
18
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
19
- token: auth
17
+ headers: {
18
+ Authorization: `Bearer ${auth}`,
20
19
  },
21
20
  });
22
21
  return { valid: true };
@@ -35,4 +34,67 @@ exports.mistralAuth = pieces_framework_1.PieceAuth.SecretText({
35
34
  }
36
35
  }),
37
36
  });
37
+ const mistralCloudflareGatewayAuth = pieces_framework_1.PieceAuth.CustomAuth({
38
+ displayName: 'Cloudflare AI Gateway',
39
+ description: 'Route Mistral calls through your Cloudflare AI Gateway. Provide a Mistral API key (key-in-request mode) or leave it blank if your gateway has Mistral configured as a stored key (BYOK).',
40
+ required: true,
41
+ props: {
42
+ accountId: pieces_framework_1.Property.ShortText({
43
+ displayName: 'Cloudflare Account ID',
44
+ description: 'Your Cloudflare account ID (visible on the AI Gateway dashboard).',
45
+ required: true,
46
+ }),
47
+ gatewayId: pieces_framework_1.Property.ShortText({
48
+ displayName: 'Gateway ID',
49
+ description: 'The slug of your AI Gateway (visible on the gateway settings page).',
50
+ required: true,
51
+ }),
52
+ gatewayAuthToken: pieces_framework_1.PieceAuth.SecretText({
53
+ displayName: 'Gateway Auth Token',
54
+ description: 'Optional. Required only if your gateway has authentication enabled. Sent as cf-aig-authorization.',
55
+ required: false,
56
+ }),
57
+ mistralApiKey: pieces_framework_1.PieceAuth.SecretText({
58
+ displayName: 'Mistral API Key',
59
+ description: 'Optional. Provide your Mistral key for key-in-request mode. Leave blank if Cloudflare injects the key via stored credentials (BYOK).',
60
+ required: false,
61
+ }),
62
+ },
63
+ validate: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
64
+ var _b;
65
+ const { accountId, gatewayId, gatewayAuthToken, mistralApiKey } = auth;
66
+ try {
67
+ yield pieces_common_1.httpClient.sendRequest({
68
+ method: pieces_common_1.HttpMethod.GET,
69
+ url: `https://gateway.ai.cloudflare.com/v1/${encodeURIComponent(accountId)}/${encodeURIComponent(gatewayId)}/mistral/v1/models`,
70
+ headers: buildGatewayHeaders({ gatewayAuthToken, mistralApiKey }),
71
+ });
72
+ return { valid: true };
73
+ }
74
+ catch (e) {
75
+ const status = (_b = e.response) === null || _b === void 0 ? void 0 : _b.status;
76
+ if (status === 401 || status === 403) {
77
+ return { valid: false, error: 'Authentication rejected by the gateway. Check your Mistral key and gateway auth token.' };
78
+ }
79
+ if (status === 404) {
80
+ return { valid: false, error: 'Gateway not found. Check your account ID and gateway ID.' };
81
+ }
82
+ if (status === 429) {
83
+ return { valid: false, error: 'Rate limit exceeded at the gateway. Please wait and try again.' };
84
+ }
85
+ return { valid: false, error: 'Gateway validation failed: ' + (e.message || 'Unknown error') };
86
+ }
87
+ }),
88
+ });
89
+ exports.mistralAuth = [mistralDirectAuth, mistralCloudflareGatewayAuth];
90
+ function buildGatewayHeaders({ gatewayAuthToken, mistralApiKey }) {
91
+ const headers = {};
92
+ if (gatewayAuthToken) {
93
+ headers['cf-aig-authorization'] = `Bearer ${gatewayAuthToken}`;
94
+ }
95
+ if (mistralApiKey) {
96
+ headers['Authorization'] = `Bearer ${mistralApiKey}`;
97
+ }
98
+ return headers;
99
+ }
38
100
  //# sourceMappingURL=auth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/mistral-ai/src/lib/common/auth.ts"],"names":[],"mappings":";;;;AAAA,qEAA2D;AAC3D,+DAAyF;AAE5E,QAAA,WAAW,GAAG,4BAAS,CAAC,UAAU,CAAC;IAC/C,WAAW,EAAE,SAAS;IACtB,WAAW,EAAE,sIAAsI;IACnJ,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;;QACxB,IAAI,CAAC;YACJ,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC5B,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,GAAG,EAAE,kCAAkC;gBACvC,cAAc,EAAE;oBACf,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,IAAI;iBACX;aACD,CAAC,CAAC;YACH,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACxB,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YACjB,IAAI,CAAA,MAAA,CAAC,CAAC,QAAQ,0CAAE,MAAM,MAAK,GAAG,EAAE,CAAC;gBAChC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,2DAA2D,EAAE,CAAC;YAC7F,CAAC;YACD,IAAI,CAAA,MAAA,CAAC,CAAC,QAAQ,0CAAE,MAAM,MAAK,GAAG,EAAE,CAAC;gBAChC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAAC;YACnF,CAAC;YACD,IAAI,MAAA,CAAC,CAAC,OAAO,0CAAE,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAClD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,uDAAuD,EAAE,CAAC;YACzF,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,eAAe,CAAC,EAAE,CAAC;QAC5F,CAAC;IACF,CAAC,CAAA;CACD,CAAC,CAAC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/lib/common/auth.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,8 @@
1
- export declare const modelDropdown: import("@activepieces/pieces-framework").DropdownProperty<string, true, import("@activepieces/pieces-framework").SecretTextProperty<true>>;
1
+ export declare const modelDropdown: import("@activepieces/pieces-framework").DropdownProperty<string, true, (import("@activepieces/pieces-framework").SecretTextProperty<true> | import("@activepieces/pieces-framework").CustomAuthProperty<{
2
+ accountId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ gatewayId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
4
+ gatewayAuthToken: import("@activepieces/pieces-framework").SecretTextProperty<false>;
5
+ mistralApiKey: import("@activepieces/pieces-framework").SecretTextProperty<false>;
6
+ }>)[]>;
2
7
  export declare function parseMistralError(e: any): string;
8
+ //# sourceMappingURL=props.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../../../src/lib/common/props.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,aAAa;;;;;MA6CxB,CAAC;AAEH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAKhD"}
@@ -6,6 +6,7 @@ const tslib_1 = require("tslib");
6
6
  const pieces_framework_1 = require("@activepieces/pieces-framework");
7
7
  const pieces_common_1 = require("@activepieces/pieces-common");
8
8
  const auth_1 = require("./auth");
9
+ const request_1 = require("./request");
9
10
  exports.modelDropdown = pieces_framework_1.Property.Dropdown({
10
11
  displayName: 'Model',
11
12
  description: 'Select a Mistral model. List is fetched live from your account.',
@@ -21,13 +22,11 @@ exports.modelDropdown = pieces_framework_1.Property.Dropdown({
21
22
  };
22
23
  }
23
24
  try {
25
+ const { baseUrl, headers } = request_1.mistralRequest.getConfig(auth);
24
26
  const response = yield pieces_common_1.httpClient.sendRequest({
25
27
  method: pieces_common_1.HttpMethod.GET,
26
- url: 'https://api.mistral.ai/v1/models',
27
- authentication: {
28
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
29
- token: auth.secret_text
30
- },
28
+ url: `${baseUrl}/models`,
29
+ headers,
31
30
  });
32
31
  const models = response.body.data || [];
33
32
  const options = models.map((model) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"props.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/mistral-ai/src/lib/common/props.ts"],"names":[],"mappings":";;;AAqDA,8CAKC;;AA1DD,qEAA0E;AAC1E,+DAAyF;AACzF,iCAAqC;AAExB,QAAA,aAAa,GAAG,2BAAQ,CAAC,QAAQ,CAAC;IAC9C,WAAW,EAAE,OAAO;IACpB,WAAW,EAAE,iEAAiE;IAC9E,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,EAAE;IACd,IAAI,EAAE,kBAAW;IACjB,OAAO,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;QACvB,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,OAAO;gBACN,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,oCAAoC;gBACjD,OAAO,EAAE,EAAE;aACX,CAAC;QACH,CAAC;QACD,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAmC;gBAC/E,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,GAAG,EAAE,kCAAkC;gBACvC,cAAc,EAAE;oBACf,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,IAAI,CAAC,WAAW;iBACvB;aACD,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;YACxC,MAAM,OAAO,GAA6B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAChE,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE;gBAC7B,KAAK,EAAE,KAAK,CAAC,EAAE;aACf,CAAC,CAAC,CAAC;YACJ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO;oBACN,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE,mCAAmC;oBAChD,OAAO,EAAE,EAAE;iBACX,CAAC;YACH,CAAC;YACD,OAAO;gBACN,QAAQ,EAAE,KAAK;gBACf,OAAO;aACP,CAAC;QACH,CAAC;QAAC,WAAM,CAAC;YACR,OAAO;gBACN,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,wDAAwD;gBACrE,OAAO,EAAE,EAAE;aACX,CAAC;QACH,CAAC;IACF,CAAC,CAAA;CACD,CAAC,CAAC;AAEH,SAAgB,iBAAiB,CAAC,CAAM;;IACvC,IAAI,MAAA,MAAA,CAAC,CAAC,QAAQ,0CAAE,IAAI,0CAAE,KAAK;QAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;IAC1D,IAAI,MAAA,MAAA,CAAC,CAAC,QAAQ,0CAAE,IAAI,0CAAE,OAAO;QAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC9D,IAAI,CAAC,CAAC,OAAO;QAAE,OAAO,CAAC,CAAC,OAAO,CAAC;IAChC,OAAO,eAAe,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"props.js","sourceRoot":"","sources":["../../../../src/lib/common/props.ts"],"names":[],"mappings":";;;AAoDA,8CAKC;;AAzDD,qEAA0E;AAC1E,+DAAqE;AACrE,iCAAqC;AACrC,uCAA2C;AAE9B,QAAA,aAAa,GAAG,2BAAQ,CAAC,QAAQ,CAAC;IAC9C,WAAW,EAAE,OAAO;IACpB,WAAW,EAAE,iEAAiE;IAC9E,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,EAAE;IACd,IAAI,EAAE,kBAAW;IACjB,OAAO,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;QACvB,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,OAAO;gBACN,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,oCAAoC;gBACjD,OAAO,EAAE,EAAE;aACX,CAAC;QACH,CAAC;QACD,IAAI,CAAC;YACJ,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,wBAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAA2C;gBACvF,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,GAAG,EAAE,GAAG,OAAO,SAAS;gBACxB,OAAO;aACP,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;YACxC,MAAM,OAAO,GAA6B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAChE,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE;gBAC7B,KAAK,EAAE,KAAK,CAAC,EAAE;aACf,CAAC,CAAC,CAAC;YACJ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO;oBACN,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE,mCAAmC;oBAChD,OAAO,EAAE,EAAE;iBACX,CAAC;YACH,CAAC;YACD,OAAO;gBACN,QAAQ,EAAE,KAAK;gBACf,OAAO;aACP,CAAC;QACH,CAAC;QAAC,WAAM,CAAC;YACR,OAAO;gBACN,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,wDAAwD;gBACrE,OAAO,EAAE,EAAE;aACX,CAAC;QACH,CAAC;IACF,CAAC,CAAA;CACD,CAAC,CAAC;AAEH,SAAgB,iBAAiB,CAAC,CAAM;;IACvC,IAAI,MAAA,MAAA,CAAC,CAAC,QAAQ,0CAAE,IAAI,0CAAE,KAAK;QAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;IAC1D,IAAI,MAAA,MAAA,CAAC,CAAC,QAAQ,0CAAE,IAAI,0CAAE,OAAO;QAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC9D,IAAI,CAAC,CAAC,OAAO;QAAE,OAAO,CAAC,CAAC,OAAO,CAAC;IAChC,OAAO,eAAe,CAAC;AACxB,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { AppConnectionValueForAuthProperty } from '@activepieces/pieces-framework';
2
+ import type { mistralAuth } from './auth';
3
+ export type MistralAuthValue = AppConnectionValueForAuthProperty<typeof mistralAuth>;
4
+ declare function getConfig(auth: MistralAuthValue): MistralRequestConfig;
5
+ export declare const mistralRequest: {
6
+ getConfig: typeof getConfig;
7
+ };
8
+ export type MistralRequestConfig = {
9
+ baseUrl: string;
10
+ headers: Record<string, string>;
11
+ };
12
+ export {};
13
+ //# sourceMappingURL=request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../src/lib/common/request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,gCAAgC,CAAC;AAEnF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE1C,MAAM,MAAM,gBAAgB,GAAG,iCAAiC,CAAC,OAAO,WAAW,CAAC,CAAC;AAMrF,iBAAS,SAAS,CAAC,IAAI,EAAE,gBAAgB,GAAG,oBAAoB,CAoB/D;AAED,eAAO,MAAM,cAAc;;CAAgB,CAAC;AAmB5C,MAAM,MAAM,oBAAoB,GAAG;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC,CAAC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mistralRequest = void 0;
4
+ const shared_1 = require("@activepieces/shared");
5
+ function isGatewayAuth(auth) {
6
+ return auth.type === shared_1.AppConnectionType.CUSTOM_AUTH;
7
+ }
8
+ function getConfig(auth) {
9
+ const a = auth;
10
+ if (isGatewayAuth(a)) {
11
+ const { accountId, gatewayId, gatewayAuthToken, mistralApiKey } = a.props;
12
+ const headers = {};
13
+ if (gatewayAuthToken) {
14
+ headers['cf-aig-authorization'] = `Bearer ${gatewayAuthToken}`;
15
+ }
16
+ if (mistralApiKey) {
17
+ headers['Authorization'] = `Bearer ${mistralApiKey}`;
18
+ }
19
+ return {
20
+ baseUrl: `https://gateway.ai.cloudflare.com/v1/${encodeURIComponent(accountId)}/${encodeURIComponent(gatewayId)}/mistral/v1`,
21
+ headers,
22
+ };
23
+ }
24
+ return {
25
+ baseUrl: 'https://api.mistral.ai/v1',
26
+ headers: { Authorization: `Bearer ${a.secret_text}` },
27
+ };
28
+ }
29
+ exports.mistralRequest = { getConfig };
30
+ //# sourceMappingURL=request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../../src/lib/common/request.ts"],"names":[],"mappings":";;;AACA,iDAAyD;AAKzD,SAAS,aAAa,CAAC,IAAiB;IACvC,OAAO,IAAI,CAAC,IAAI,KAAK,0BAAiB,CAAC,WAAW,CAAC;AACpD,CAAC;AAED,SAAS,SAAS,CAAC,IAAsB;IACxC,MAAM,CAAC,GAAG,IAAmB,CAAC;IAC9B,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC;QAC1E,MAAM,OAAO,GAA2B,EAAE,CAAC;QAC3C,IAAI,gBAAgB,EAAE,CAAC;YACtB,OAAO,CAAC,sBAAsB,CAAC,GAAG,UAAU,gBAAgB,EAAE,CAAC;QAChE,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YACnB,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,aAAa,EAAE,CAAC;QACtD,CAAC;QACD,OAAO;YACN,OAAO,EAAE,wCAAwC,kBAAkB,CAAC,SAAS,CAAC,IAAI,kBAAkB,CAAC,SAAS,CAAC,aAAa;YAC5H,OAAO;SACP,CAAC;IACH,CAAC;IACD,OAAO;QACN,OAAO,EAAE,2BAA2B;QACpC,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC,WAAW,EAAE,EAAE;KACrD,CAAC;AACH,CAAC;AAEY,QAAA,cAAc,GAAG,EAAE,SAAS,EAAE,CAAC"}
package/README.md DELETED
@@ -1,7 +0,0 @@
1
- # pieces-mistral-ai
2
-
3
- This library was generated with [Nx](https://nx.dev).
4
-
5
- ## Building
6
-
7
- Run `nx build pieces-mistral-ai` to build the library.