@squadbase/vite-server 0.1.3-dev.14 → 0.1.3-dev.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/index.js +108 -66
- package/dist/connectors/google-drive-oauth.js +1 -1
- package/dist/connectors/google-drive.js +1 -1
- package/dist/connectors/google-slides-oauth.js +1 -1
- package/dist/connectors/google-slides.js +1 -1
- package/dist/connectors/kintone-api-token.js +137 -63
- package/dist/connectors/sentry.js +1 -1
- package/dist/index.js +108 -66
- package/dist/main.js +108 -66
- package/dist/vite-plugin.js +108 -66
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -72048,7 +72048,7 @@ var googleDriveConnector = new ConnectorPlugin({
|
|
|
72048
72048
|
authType: AUTH_TYPES.SERVICE_ACCOUNT,
|
|
72049
72049
|
name: "Google Drive",
|
|
72050
72050
|
description: "Connect to Google Drive for file management, sharing, and collaboration using a service account.",
|
|
72051
|
-
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/
|
|
72051
|
+
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/4GJX5yQTogUgar1buWxXbv/4b43a65353319c508111489f834d22c4/google_drive.png",
|
|
72052
72052
|
parameters: parameters16,
|
|
72053
72053
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
72054
72054
|
onboarding: googleDriveOnboarding,
|
|
@@ -72298,7 +72298,7 @@ var googleDriveOauthConnector = new ConnectorPlugin({
|
|
|
72298
72298
|
authType: AUTH_TYPES.OAUTH,
|
|
72299
72299
|
name: "Google Drive",
|
|
72300
72300
|
description: "Connect to Google Drive for file management, sharing, and collaboration using OAuth.",
|
|
72301
|
-
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/
|
|
72301
|
+
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/4GJX5yQTogUgar1buWxXbv/4b43a65353319c508111489f834d22c4/google_drive.png",
|
|
72302
72302
|
parameters: parameters17,
|
|
72303
72303
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
72304
72304
|
onboarding: googleDriveOnboarding2,
|
|
@@ -73356,7 +73356,7 @@ var googleSlidesConnector = new ConnectorPlugin({
|
|
|
73356
73356
|
authType: AUTH_TYPES.SERVICE_ACCOUNT,
|
|
73357
73357
|
name: "Google Slides",
|
|
73358
73358
|
description: "Connect to Google Slides for presentation data access and creation using a service account.",
|
|
73359
|
-
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/
|
|
73359
|
+
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/4oyF4yTRpemMA43X49masx/e1582d25e3b4c9a63ba83df2147c1968/google_slide.png",
|
|
73360
73360
|
parameters: parameters20,
|
|
73361
73361
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
73362
73362
|
onboarding: googleSlidesOnboarding,
|
|
@@ -73648,7 +73648,7 @@ var googleSlidesOauthConnector = new ConnectorPlugin({
|
|
|
73648
73648
|
authType: AUTH_TYPES.OAUTH,
|
|
73649
73649
|
name: "Google Slides",
|
|
73650
73650
|
description: "Connect to Google Slides for presentation data access and creation using OAuth.",
|
|
73651
|
-
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/
|
|
73651
|
+
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/4oyF4yTRpemMA43X49masx/e1582d25e3b4c9a63ba83df2147c1968/google_slide.png",
|
|
73652
73652
|
parameters: parameters21,
|
|
73653
73653
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
73654
73654
|
onboarding: googleSlidesOnboarding2,
|
|
@@ -75426,98 +75426,140 @@ var kintoneApiTokenConnector = new ConnectorPlugin({
|
|
|
75426
75426
|
systemPrompt: {
|
|
75427
75427
|
en: `### Tools
|
|
75428
75428
|
|
|
75429
|
-
- \`kintone-api-key_request\`: The only way to call the kintone REST API. Use it to list apps,
|
|
75429
|
+
- \`kintone-api-key_request\`: The only way to call the kintone REST API. Use it to list apps, fetch field definitions, and read/write records. Authentication (API Token) and the base URL are configured automatically. API tokens are scoped per app \u2014 combine multiple tokens with commas to access multiple apps. See the kintone REST API Reference below for endpoints and the kintone query syntax.
|
|
75430
|
+
|
|
75431
|
+
### Business Logic
|
|
75432
|
+
|
|
75433
|
+
The business logic type for this connector is "typescript". Use the connector SDK in your handler. Do NOT read credentials from environment variables.
|
|
75434
|
+
|
|
75435
|
+
SDK methods (client created via \`connection(connectionId)\`):
|
|
75436
|
+
- \`client.request(path, init?)\` \u2014 low-level authenticated fetch
|
|
75437
|
+
- \`client.getRecords(appId, options?)\` \u2014 fetch records with query/fields/totalCount (uses @kintone/rest-api-client)
|
|
75438
|
+
- \`client.getRecord(appId, recordId)\` \u2014 fetch a single record
|
|
75439
|
+
|
|
75440
|
+
Note: app listing (\`/k/v1/apps.json\`) requires user-level auth and is not available via API token.
|
|
75441
|
+
|
|
75442
|
+
\`\`\`ts
|
|
75443
|
+
import type { Context } from "hono";
|
|
75444
|
+
import { connection } from "@squadbase/vite-server/connectors/kintone-api-token";
|
|
75445
|
+
|
|
75446
|
+
const kintone = connection("<connectionId>");
|
|
75447
|
+
|
|
75448
|
+
export default async function handler(c: Context) {
|
|
75449
|
+
const { appId, status = "Active" } = await c.req.json<{
|
|
75450
|
+
appId: number;
|
|
75451
|
+
status?: string;
|
|
75452
|
+
}>();
|
|
75453
|
+
|
|
75454
|
+
const { records, totalCount } = await kintone.getRecords(appId, {
|
|
75455
|
+
query: \`status = "\${status}" order by updatedTime desc limit 100\`,
|
|
75456
|
+
fields: ["$id", "name", "email", "status", "updatedTime"],
|
|
75457
|
+
totalCount: true,
|
|
75458
|
+
});
|
|
75459
|
+
|
|
75460
|
+
return c.json({
|
|
75461
|
+
totalCount,
|
|
75462
|
+
rows: records.map((r) => ({
|
|
75463
|
+
id: r.$id.value,
|
|
75464
|
+
name: r.name?.value,
|
|
75465
|
+
email: r.email?.value,
|
|
75466
|
+
status: r.status?.value,
|
|
75467
|
+
updatedTime: r.updatedTime?.value,
|
|
75468
|
+
})),
|
|
75469
|
+
});
|
|
75470
|
+
}
|
|
75471
|
+
\`\`\`
|
|
75430
75472
|
|
|
75431
75473
|
### kintone REST API Reference
|
|
75432
75474
|
|
|
75433
75475
|
#### List Apps
|
|
75434
|
-
- GET apps.json
|
|
75476
|
+
- \`GET apps.json\`
|
|
75435
75477
|
|
|
75436
|
-
|
|
75437
|
-
- GET app/form/fields.json?app={appId}
|
|
75478
|
+
#### Get Field Definitions
|
|
75479
|
+
- \`GET app/form/fields.json?app={appId}\`
|
|
75438
75480
|
|
|
75439
|
-
|
|
75440
|
-
- GET records.json?app={appId}&query={query}
|
|
75441
|
-
- Query example: records.json?app=1&query=updatedTime > "2024-01-01" order by recordNumber asc limit 100
|
|
75481
|
+
#### Get Records
|
|
75482
|
+
- \`GET records.json?app={appId}&query={query}\`
|
|
75483
|
+
- Query example: \`records.json?app=1&query=updatedTime > "2024-01-01" order by recordNumber asc limit 100\`
|
|
75442
75484
|
|
|
75443
75485
|
#### Add Record
|
|
75444
|
-
- POST record.json
|
|
75445
|
-
- Body: { "app": 1, "record": { "fieldName": { "value": "value" } } }
|
|
75486
|
+
- \`POST record.json\`
|
|
75487
|
+
- Body: \`{ "app": 1, "record": { "fieldName": { "value": "value" } } }\`
|
|
75446
75488
|
|
|
75447
75489
|
#### kintone Query Syntax
|
|
75448
|
-
- Comparison: fieldName = "value"
|
|
75449
|
-
- Operators: and
|
|
75450
|
-
- Sort: order by fieldName asc/desc
|
|
75451
|
-
- Limit: limit 100 offset 0
|
|
75452
|
-
- String: like "partial match"
|
|
75490
|
+
- Comparison: \`fieldName = "value"\`, \`fieldName > 100\`
|
|
75491
|
+
- Operators: \`and\`, \`or\`, \`not\`
|
|
75492
|
+
- Sort: \`order by fieldName asc/desc\`
|
|
75493
|
+
- Limit: \`limit 100 offset 0\`
|
|
75494
|
+
- String: \`like "partial match"\``,
|
|
75495
|
+
ja: `### \u30C4\u30FC\u30EB
|
|
75496
|
+
|
|
75497
|
+
- \`kintone-api-key_request\`: kintone REST API\u3092\u547C\u3073\u51FA\u3059\u552F\u4E00\u306E\u624B\u6BB5\u3067\u3059\u3002\u30A2\u30D7\u30EA\u4E00\u89A7\u306E\u53D6\u5F97\u3001\u30D5\u30A3\u30FC\u30EB\u30C9\u5B9A\u7FA9\u306E\u53D6\u5F97\u3001\u30EC\u30B3\u30FC\u30C9\u306E\u8AAD\u307F\u66F8\u304D\u306B\u4F7F\u7528\u3057\u307E\u3059\u3002\u8A8D\u8A3C\uFF08API\u30C8\u30FC\u30AF\u30F3\uFF09\u3068\u30D9\u30FC\u30B9URL\u306F\u81EA\u52D5\u7684\u306B\u8A2D\u5B9A\u3055\u308C\u307E\u3059\u3002API\u30C8\u30FC\u30AF\u30F3\u306F\u30A2\u30D7\u30EA\u3054\u3068\u306B\u30B9\u30B3\u30FC\u30D7\u3055\u308C\u3066\u3044\u307E\u3059 \u2014 \u8907\u6570\u306E\u30A2\u30D7\u30EA\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u5834\u5408\u306F\u30AB\u30F3\u30DE\u533A\u5207\u308A\u3067\u30C8\u30FC\u30AF\u30F3\u3092\u7D44\u307F\u5408\u308F\u305B\u3066\u304F\u3060\u3055\u3044\u3002\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8\u304A\u3088\u3073kintone\u30AF\u30A8\u30EA\u69CB\u6587\u306F\u4E0B\u90E8\u306E\u300Ckintone REST API \u30EA\u30D5\u30A1\u30EC\u30F3\u30B9\u300D\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\u3002
|
|
75453
75498
|
|
|
75454
75499
|
### Business Logic
|
|
75455
75500
|
|
|
75456
|
-
|
|
75501
|
+
\u3053\u306E\u30B3\u30CD\u30AF\u30BF\u306E\u30D3\u30B8\u30CD\u30B9\u30ED\u30B8\u30C3\u30AF\u30BF\u30A4\u30D7\u306F "typescript" \u3067\u3059\u3002\u30CF\u30F3\u30C9\u30E9\u5185\u3067\u306F\u30B3\u30CD\u30AF\u30BFSDK\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u74B0\u5883\u5909\u6570\u304B\u3089\u8A8D\u8A3C\u60C5\u5831\u3092\u8AAD\u307F\u53D6\u3089\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002
|
|
75457
75502
|
|
|
75458
|
-
|
|
75503
|
+
SDK\u30E1\u30BD\u30C3\u30C9 (\`connection(connectionId)\` \u3067\u4F5C\u6210\u3057\u305F\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8):
|
|
75504
|
+
- \`client.request(path, init?)\` \u2014 \u4F4E\u30EC\u30D9\u30EB\u306E\u8A8D\u8A3C\u4ED8\u304Dfetch
|
|
75505
|
+
- \`client.getRecords(appId, options?)\` \u2014 query/fields/totalCount\u4ED8\u304D\u3067\u30EC\u30B3\u30FC\u30C9\u53D6\u5F97 (@kintone/rest-api-client \u4F7F\u7528)
|
|
75506
|
+
- \`client.getRecord(appId, recordId)\` \u2014 \u5358\u4E00\u30EC\u30B3\u30FC\u30C9\u3092\u53D6\u5F97
|
|
75507
|
+
|
|
75508
|
+
\u6CE8: \u30A2\u30D7\u30EA\u4E00\u89A7 (\`/k/v1/apps.json\`) \u306F\u30E6\u30FC\u30B6\u30FC\u8A8D\u8A3C\u304C\u5FC5\u8981\u306A\u305F\u3081\u3001API \u30C8\u30FC\u30AF\u30F3\u8A8D\u8A3C\u3067\u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002
|
|
75459
75509
|
|
|
75460
75510
|
\`\`\`ts
|
|
75461
|
-
import {
|
|
75511
|
+
import type { Context } from "hono";
|
|
75512
|
+
import { connection } from "@squadbase/vite-server/connectors/kintone-api-token";
|
|
75462
75513
|
|
|
75463
75514
|
const kintone = connection("<connectionId>");
|
|
75464
75515
|
|
|
75465
|
-
|
|
75466
|
-
const
|
|
75467
|
-
|
|
75516
|
+
export default async function handler(c: Context) {
|
|
75517
|
+
const { appId, status = "Active" } = await c.req.json<{
|
|
75518
|
+
appId: number;
|
|
75519
|
+
status?: string;
|
|
75520
|
+
}>();
|
|
75468
75521
|
|
|
75469
|
-
await kintone.
|
|
75470
|
-
|
|
75471
|
-
|
|
75472
|
-
|
|
75473
|
-
|
|
75474
|
-
ja: `### \u30C4\u30FC\u30EB
|
|
75522
|
+
const { records, totalCount } = await kintone.getRecords(appId, {
|
|
75523
|
+
query: \`status = "\${status}" order by updatedTime desc limit 100\`,
|
|
75524
|
+
fields: ["$id", "name", "email", "status", "updatedTime"],
|
|
75525
|
+
totalCount: true,
|
|
75526
|
+
});
|
|
75475
75527
|
|
|
75476
|
-
|
|
75528
|
+
return c.json({
|
|
75529
|
+
totalCount,
|
|
75530
|
+
rows: records.map((r) => ({
|
|
75531
|
+
id: r.$id.value,
|
|
75532
|
+
name: r.name?.value,
|
|
75533
|
+
email: r.email?.value,
|
|
75534
|
+
status: r.status?.value,
|
|
75535
|
+
updatedTime: r.updatedTime?.value,
|
|
75536
|
+
})),
|
|
75537
|
+
});
|
|
75538
|
+
}
|
|
75539
|
+
\`\`\`
|
|
75477
75540
|
|
|
75478
75541
|
### kintone REST API \u30EA\u30D5\u30A1\u30EC\u30F3\u30B9
|
|
75479
75542
|
|
|
75480
75543
|
#### \u30A2\u30D7\u30EA\u4E00\u89A7\u306E\u53D6\u5F97
|
|
75481
|
-
- GET apps.json
|
|
75544
|
+
- \`GET apps.json\`
|
|
75482
75545
|
|
|
75483
|
-
|
|
75484
|
-
- GET app/form/fields.json?app={appId}
|
|
75546
|
+
#### \u30D5\u30A3\u30FC\u30EB\u30C9\u5B9A\u7FA9\u306E\u53D6\u5F97
|
|
75547
|
+
- \`GET app/form/fields.json?app={appId}\`
|
|
75485
75548
|
|
|
75486
|
-
|
|
75487
|
-
- GET records.json?app={appId}&query={query}
|
|
75488
|
-
- \u30AF\u30A8\u30EA\u4F8B: records.json?app=1&query=updatedTime > "2024-01-01" order by recordNumber asc limit 100
|
|
75549
|
+
#### \u30EC\u30B3\u30FC\u30C9\u306E\u53D6\u5F97
|
|
75550
|
+
- \`GET records.json?app={appId}&query={query}\`
|
|
75551
|
+
- \u30AF\u30A8\u30EA\u4F8B: \`records.json?app=1&query=updatedTime > "2024-01-01" order by recordNumber asc limit 100\`
|
|
75489
75552
|
|
|
75490
75553
|
#### \u30EC\u30B3\u30FC\u30C9\u306E\u8FFD\u52A0
|
|
75491
|
-
- POST record.json
|
|
75492
|
-
- Body: { "app": 1, "record": { "fieldName": { "value": "value" } } }
|
|
75554
|
+
- \`POST record.json\`
|
|
75555
|
+
- Body: \`{ "app": 1, "record": { "fieldName": { "value": "value" } } }\`
|
|
75493
75556
|
|
|
75494
75557
|
#### kintone \u30AF\u30A8\u30EA\u69CB\u6587
|
|
75495
|
-
- \u6BD4\u8F03: fieldName = "value"
|
|
75496
|
-
- \u6F14\u7B97\u5B50: and
|
|
75497
|
-
- \u30BD\u30FC\u30C8: order by fieldName asc/desc
|
|
75498
|
-
- \u5236\u9650: limit 100 offset 0
|
|
75499
|
-
- \u6587\u5B57\u5217: like "\u90E8\u5206\u4E00\u81F4"
|
|
75500
|
-
|
|
75501
|
-
### Business Logic
|
|
75502
|
-
|
|
75503
|
-
\u3053\u306E\u30B3\u30CD\u30AF\u30BF\u306E\u30D3\u30B8\u30CD\u30B9\u30ED\u30B8\u30C3\u30AF\u30BF\u30A4\u30D7\u306F "typescript" \u3067\u3059\u3002\u4EE5\u4E0B\u306B\u793A\u3059\u30B3\u30CD\u30AF\u30BFSDK\u3092\u4F7F\u7528\u3057\u3066\u30CF\u30F3\u30C9\u30E9\u30B3\u30FC\u30C9\u3092\u8A18\u8FF0\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u74B0\u5883\u5909\u6570\u304B\u3089\u76F4\u63A5\u8A8D\u8A3C\u60C5\u5831\u306B\u30A2\u30AF\u30BB\u30B9\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002
|
|
75504
|
-
|
|
75505
|
-
#### Example
|
|
75506
|
-
|
|
75507
|
-
\`\`\`ts
|
|
75508
|
-
import { connection } from "@squadbase/vite-server/connectors/kintone-api-key";
|
|
75509
|
-
|
|
75510
|
-
const kintone = connection("<connectionId>");
|
|
75511
|
-
|
|
75512
|
-
// Authenticated fetch (returns standard Response)
|
|
75513
|
-
const res = await kintone.request("/k/v1/records.json?app=1&query=limit 10");
|
|
75514
|
-
const data = await res.json();
|
|
75515
|
-
|
|
75516
|
-
await kintone.request("/k/v1/record.json", {
|
|
75517
|
-
method: "POST",
|
|
75518
|
-
body: JSON.stringify({ app: 1, record: { title: { value: "Hello" } } }),
|
|
75519
|
-
});
|
|
75520
|
-
\`\`\``
|
|
75558
|
+
- \u6BD4\u8F03: \`fieldName = "value"\`, \`fieldName > 100\`
|
|
75559
|
+
- \u6F14\u7B97\u5B50: \`and\`, \`or\`, \`not\`
|
|
75560
|
+
- \u30BD\u30FC\u30C8: \`order by fieldName asc/desc\`
|
|
75561
|
+
- \u5236\u9650: \`limit 100 offset 0\`
|
|
75562
|
+
- \u6587\u5B57\u5217: \`like "\u90E8\u5206\u4E00\u81F4"\``
|
|
75521
75563
|
},
|
|
75522
75564
|
tools: tools27
|
|
75523
75565
|
});
|
|
@@ -86245,7 +86287,7 @@ var sentryConnector = new ConnectorPlugin({
|
|
|
86245
86287
|
authType: AUTH_TYPES.API_KEY,
|
|
86246
86288
|
name: "Sentry",
|
|
86247
86289
|
description: "Connect to Sentry for error tracking and performance monitoring data.",
|
|
86248
|
-
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/
|
|
86290
|
+
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/4B8ZEGFGjTeMWNnXQb1dAL/ac10f813f02353f5b0cbe64fb5c06d8f/sentry.svg",
|
|
86249
86291
|
parameters: parameters63,
|
|
86250
86292
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
86251
86293
|
onboarding: sentryOnboarding,
|
package/dist/main.js
CHANGED
|
@@ -72048,7 +72048,7 @@ var googleDriveConnector = new ConnectorPlugin({
|
|
|
72048
72048
|
authType: AUTH_TYPES.SERVICE_ACCOUNT,
|
|
72049
72049
|
name: "Google Drive",
|
|
72050
72050
|
description: "Connect to Google Drive for file management, sharing, and collaboration using a service account.",
|
|
72051
|
-
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/
|
|
72051
|
+
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/4GJX5yQTogUgar1buWxXbv/4b43a65353319c508111489f834d22c4/google_drive.png",
|
|
72052
72052
|
parameters: parameters16,
|
|
72053
72053
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
72054
72054
|
onboarding: googleDriveOnboarding,
|
|
@@ -72298,7 +72298,7 @@ var googleDriveOauthConnector = new ConnectorPlugin({
|
|
|
72298
72298
|
authType: AUTH_TYPES.OAUTH,
|
|
72299
72299
|
name: "Google Drive",
|
|
72300
72300
|
description: "Connect to Google Drive for file management, sharing, and collaboration using OAuth.",
|
|
72301
|
-
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/
|
|
72301
|
+
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/4GJX5yQTogUgar1buWxXbv/4b43a65353319c508111489f834d22c4/google_drive.png",
|
|
72302
72302
|
parameters: parameters17,
|
|
72303
72303
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
72304
72304
|
onboarding: googleDriveOnboarding2,
|
|
@@ -73356,7 +73356,7 @@ var googleSlidesConnector = new ConnectorPlugin({
|
|
|
73356
73356
|
authType: AUTH_TYPES.SERVICE_ACCOUNT,
|
|
73357
73357
|
name: "Google Slides",
|
|
73358
73358
|
description: "Connect to Google Slides for presentation data access and creation using a service account.",
|
|
73359
|
-
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/
|
|
73359
|
+
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/4oyF4yTRpemMA43X49masx/e1582d25e3b4c9a63ba83df2147c1968/google_slide.png",
|
|
73360
73360
|
parameters: parameters20,
|
|
73361
73361
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
73362
73362
|
onboarding: googleSlidesOnboarding,
|
|
@@ -73648,7 +73648,7 @@ var googleSlidesOauthConnector = new ConnectorPlugin({
|
|
|
73648
73648
|
authType: AUTH_TYPES.OAUTH,
|
|
73649
73649
|
name: "Google Slides",
|
|
73650
73650
|
description: "Connect to Google Slides for presentation data access and creation using OAuth.",
|
|
73651
|
-
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/
|
|
73651
|
+
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/4oyF4yTRpemMA43X49masx/e1582d25e3b4c9a63ba83df2147c1968/google_slide.png",
|
|
73652
73652
|
parameters: parameters21,
|
|
73653
73653
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
73654
73654
|
onboarding: googleSlidesOnboarding2,
|
|
@@ -75426,98 +75426,140 @@ var kintoneApiTokenConnector = new ConnectorPlugin({
|
|
|
75426
75426
|
systemPrompt: {
|
|
75427
75427
|
en: `### Tools
|
|
75428
75428
|
|
|
75429
|
-
- \`kintone-api-key_request\`: The only way to call the kintone REST API. Use it to list apps,
|
|
75429
|
+
- \`kintone-api-key_request\`: The only way to call the kintone REST API. Use it to list apps, fetch field definitions, and read/write records. Authentication (API Token) and the base URL are configured automatically. API tokens are scoped per app \u2014 combine multiple tokens with commas to access multiple apps. See the kintone REST API Reference below for endpoints and the kintone query syntax.
|
|
75430
|
+
|
|
75431
|
+
### Business Logic
|
|
75432
|
+
|
|
75433
|
+
The business logic type for this connector is "typescript". Use the connector SDK in your handler. Do NOT read credentials from environment variables.
|
|
75434
|
+
|
|
75435
|
+
SDK methods (client created via \`connection(connectionId)\`):
|
|
75436
|
+
- \`client.request(path, init?)\` \u2014 low-level authenticated fetch
|
|
75437
|
+
- \`client.getRecords(appId, options?)\` \u2014 fetch records with query/fields/totalCount (uses @kintone/rest-api-client)
|
|
75438
|
+
- \`client.getRecord(appId, recordId)\` \u2014 fetch a single record
|
|
75439
|
+
|
|
75440
|
+
Note: app listing (\`/k/v1/apps.json\`) requires user-level auth and is not available via API token.
|
|
75441
|
+
|
|
75442
|
+
\`\`\`ts
|
|
75443
|
+
import type { Context } from "hono";
|
|
75444
|
+
import { connection } from "@squadbase/vite-server/connectors/kintone-api-token";
|
|
75445
|
+
|
|
75446
|
+
const kintone = connection("<connectionId>");
|
|
75447
|
+
|
|
75448
|
+
export default async function handler(c: Context) {
|
|
75449
|
+
const { appId, status = "Active" } = await c.req.json<{
|
|
75450
|
+
appId: number;
|
|
75451
|
+
status?: string;
|
|
75452
|
+
}>();
|
|
75453
|
+
|
|
75454
|
+
const { records, totalCount } = await kintone.getRecords(appId, {
|
|
75455
|
+
query: \`status = "\${status}" order by updatedTime desc limit 100\`,
|
|
75456
|
+
fields: ["$id", "name", "email", "status", "updatedTime"],
|
|
75457
|
+
totalCount: true,
|
|
75458
|
+
});
|
|
75459
|
+
|
|
75460
|
+
return c.json({
|
|
75461
|
+
totalCount,
|
|
75462
|
+
rows: records.map((r) => ({
|
|
75463
|
+
id: r.$id.value,
|
|
75464
|
+
name: r.name?.value,
|
|
75465
|
+
email: r.email?.value,
|
|
75466
|
+
status: r.status?.value,
|
|
75467
|
+
updatedTime: r.updatedTime?.value,
|
|
75468
|
+
})),
|
|
75469
|
+
});
|
|
75470
|
+
}
|
|
75471
|
+
\`\`\`
|
|
75430
75472
|
|
|
75431
75473
|
### kintone REST API Reference
|
|
75432
75474
|
|
|
75433
75475
|
#### List Apps
|
|
75434
|
-
- GET apps.json
|
|
75476
|
+
- \`GET apps.json\`
|
|
75435
75477
|
|
|
75436
|
-
|
|
75437
|
-
- GET app/form/fields.json?app={appId}
|
|
75478
|
+
#### Get Field Definitions
|
|
75479
|
+
- \`GET app/form/fields.json?app={appId}\`
|
|
75438
75480
|
|
|
75439
|
-
|
|
75440
|
-
- GET records.json?app={appId}&query={query}
|
|
75441
|
-
- Query example: records.json?app=1&query=updatedTime > "2024-01-01" order by recordNumber asc limit 100
|
|
75481
|
+
#### Get Records
|
|
75482
|
+
- \`GET records.json?app={appId}&query={query}\`
|
|
75483
|
+
- Query example: \`records.json?app=1&query=updatedTime > "2024-01-01" order by recordNumber asc limit 100\`
|
|
75442
75484
|
|
|
75443
75485
|
#### Add Record
|
|
75444
|
-
- POST record.json
|
|
75445
|
-
- Body: { "app": 1, "record": { "fieldName": { "value": "value" } } }
|
|
75486
|
+
- \`POST record.json\`
|
|
75487
|
+
- Body: \`{ "app": 1, "record": { "fieldName": { "value": "value" } } }\`
|
|
75446
75488
|
|
|
75447
75489
|
#### kintone Query Syntax
|
|
75448
|
-
- Comparison: fieldName = "value"
|
|
75449
|
-
- Operators: and
|
|
75450
|
-
- Sort: order by fieldName asc/desc
|
|
75451
|
-
- Limit: limit 100 offset 0
|
|
75452
|
-
- String: like "partial match"
|
|
75490
|
+
- Comparison: \`fieldName = "value"\`, \`fieldName > 100\`
|
|
75491
|
+
- Operators: \`and\`, \`or\`, \`not\`
|
|
75492
|
+
- Sort: \`order by fieldName asc/desc\`
|
|
75493
|
+
- Limit: \`limit 100 offset 0\`
|
|
75494
|
+
- String: \`like "partial match"\``,
|
|
75495
|
+
ja: `### \u30C4\u30FC\u30EB
|
|
75496
|
+
|
|
75497
|
+
- \`kintone-api-key_request\`: kintone REST API\u3092\u547C\u3073\u51FA\u3059\u552F\u4E00\u306E\u624B\u6BB5\u3067\u3059\u3002\u30A2\u30D7\u30EA\u4E00\u89A7\u306E\u53D6\u5F97\u3001\u30D5\u30A3\u30FC\u30EB\u30C9\u5B9A\u7FA9\u306E\u53D6\u5F97\u3001\u30EC\u30B3\u30FC\u30C9\u306E\u8AAD\u307F\u66F8\u304D\u306B\u4F7F\u7528\u3057\u307E\u3059\u3002\u8A8D\u8A3C\uFF08API\u30C8\u30FC\u30AF\u30F3\uFF09\u3068\u30D9\u30FC\u30B9URL\u306F\u81EA\u52D5\u7684\u306B\u8A2D\u5B9A\u3055\u308C\u307E\u3059\u3002API\u30C8\u30FC\u30AF\u30F3\u306F\u30A2\u30D7\u30EA\u3054\u3068\u306B\u30B9\u30B3\u30FC\u30D7\u3055\u308C\u3066\u3044\u307E\u3059 \u2014 \u8907\u6570\u306E\u30A2\u30D7\u30EA\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u5834\u5408\u306F\u30AB\u30F3\u30DE\u533A\u5207\u308A\u3067\u30C8\u30FC\u30AF\u30F3\u3092\u7D44\u307F\u5408\u308F\u305B\u3066\u304F\u3060\u3055\u3044\u3002\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8\u304A\u3088\u3073kintone\u30AF\u30A8\u30EA\u69CB\u6587\u306F\u4E0B\u90E8\u306E\u300Ckintone REST API \u30EA\u30D5\u30A1\u30EC\u30F3\u30B9\u300D\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\u3002
|
|
75453
75498
|
|
|
75454
75499
|
### Business Logic
|
|
75455
75500
|
|
|
75456
|
-
|
|
75501
|
+
\u3053\u306E\u30B3\u30CD\u30AF\u30BF\u306E\u30D3\u30B8\u30CD\u30B9\u30ED\u30B8\u30C3\u30AF\u30BF\u30A4\u30D7\u306F "typescript" \u3067\u3059\u3002\u30CF\u30F3\u30C9\u30E9\u5185\u3067\u306F\u30B3\u30CD\u30AF\u30BFSDK\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u74B0\u5883\u5909\u6570\u304B\u3089\u8A8D\u8A3C\u60C5\u5831\u3092\u8AAD\u307F\u53D6\u3089\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002
|
|
75457
75502
|
|
|
75458
|
-
|
|
75503
|
+
SDK\u30E1\u30BD\u30C3\u30C9 (\`connection(connectionId)\` \u3067\u4F5C\u6210\u3057\u305F\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8):
|
|
75504
|
+
- \`client.request(path, init?)\` \u2014 \u4F4E\u30EC\u30D9\u30EB\u306E\u8A8D\u8A3C\u4ED8\u304Dfetch
|
|
75505
|
+
- \`client.getRecords(appId, options?)\` \u2014 query/fields/totalCount\u4ED8\u304D\u3067\u30EC\u30B3\u30FC\u30C9\u53D6\u5F97 (@kintone/rest-api-client \u4F7F\u7528)
|
|
75506
|
+
- \`client.getRecord(appId, recordId)\` \u2014 \u5358\u4E00\u30EC\u30B3\u30FC\u30C9\u3092\u53D6\u5F97
|
|
75507
|
+
|
|
75508
|
+
\u6CE8: \u30A2\u30D7\u30EA\u4E00\u89A7 (\`/k/v1/apps.json\`) \u306F\u30E6\u30FC\u30B6\u30FC\u8A8D\u8A3C\u304C\u5FC5\u8981\u306A\u305F\u3081\u3001API \u30C8\u30FC\u30AF\u30F3\u8A8D\u8A3C\u3067\u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002
|
|
75459
75509
|
|
|
75460
75510
|
\`\`\`ts
|
|
75461
|
-
import {
|
|
75511
|
+
import type { Context } from "hono";
|
|
75512
|
+
import { connection } from "@squadbase/vite-server/connectors/kintone-api-token";
|
|
75462
75513
|
|
|
75463
75514
|
const kintone = connection("<connectionId>");
|
|
75464
75515
|
|
|
75465
|
-
|
|
75466
|
-
const
|
|
75467
|
-
|
|
75516
|
+
export default async function handler(c: Context) {
|
|
75517
|
+
const { appId, status = "Active" } = await c.req.json<{
|
|
75518
|
+
appId: number;
|
|
75519
|
+
status?: string;
|
|
75520
|
+
}>();
|
|
75468
75521
|
|
|
75469
|
-
await kintone.
|
|
75470
|
-
|
|
75471
|
-
|
|
75472
|
-
|
|
75473
|
-
|
|
75474
|
-
ja: `### \u30C4\u30FC\u30EB
|
|
75522
|
+
const { records, totalCount } = await kintone.getRecords(appId, {
|
|
75523
|
+
query: \`status = "\${status}" order by updatedTime desc limit 100\`,
|
|
75524
|
+
fields: ["$id", "name", "email", "status", "updatedTime"],
|
|
75525
|
+
totalCount: true,
|
|
75526
|
+
});
|
|
75475
75527
|
|
|
75476
|
-
|
|
75528
|
+
return c.json({
|
|
75529
|
+
totalCount,
|
|
75530
|
+
rows: records.map((r) => ({
|
|
75531
|
+
id: r.$id.value,
|
|
75532
|
+
name: r.name?.value,
|
|
75533
|
+
email: r.email?.value,
|
|
75534
|
+
status: r.status?.value,
|
|
75535
|
+
updatedTime: r.updatedTime?.value,
|
|
75536
|
+
})),
|
|
75537
|
+
});
|
|
75538
|
+
}
|
|
75539
|
+
\`\`\`
|
|
75477
75540
|
|
|
75478
75541
|
### kintone REST API \u30EA\u30D5\u30A1\u30EC\u30F3\u30B9
|
|
75479
75542
|
|
|
75480
75543
|
#### \u30A2\u30D7\u30EA\u4E00\u89A7\u306E\u53D6\u5F97
|
|
75481
|
-
- GET apps.json
|
|
75544
|
+
- \`GET apps.json\`
|
|
75482
75545
|
|
|
75483
|
-
|
|
75484
|
-
- GET app/form/fields.json?app={appId}
|
|
75546
|
+
#### \u30D5\u30A3\u30FC\u30EB\u30C9\u5B9A\u7FA9\u306E\u53D6\u5F97
|
|
75547
|
+
- \`GET app/form/fields.json?app={appId}\`
|
|
75485
75548
|
|
|
75486
|
-
|
|
75487
|
-
- GET records.json?app={appId}&query={query}
|
|
75488
|
-
- \u30AF\u30A8\u30EA\u4F8B: records.json?app=1&query=updatedTime > "2024-01-01" order by recordNumber asc limit 100
|
|
75549
|
+
#### \u30EC\u30B3\u30FC\u30C9\u306E\u53D6\u5F97
|
|
75550
|
+
- \`GET records.json?app={appId}&query={query}\`
|
|
75551
|
+
- \u30AF\u30A8\u30EA\u4F8B: \`records.json?app=1&query=updatedTime > "2024-01-01" order by recordNumber asc limit 100\`
|
|
75489
75552
|
|
|
75490
75553
|
#### \u30EC\u30B3\u30FC\u30C9\u306E\u8FFD\u52A0
|
|
75491
|
-
- POST record.json
|
|
75492
|
-
- Body: { "app": 1, "record": { "fieldName": { "value": "value" } } }
|
|
75554
|
+
- \`POST record.json\`
|
|
75555
|
+
- Body: \`{ "app": 1, "record": { "fieldName": { "value": "value" } } }\`
|
|
75493
75556
|
|
|
75494
75557
|
#### kintone \u30AF\u30A8\u30EA\u69CB\u6587
|
|
75495
|
-
- \u6BD4\u8F03: fieldName = "value"
|
|
75496
|
-
- \u6F14\u7B97\u5B50: and
|
|
75497
|
-
- \u30BD\u30FC\u30C8: order by fieldName asc/desc
|
|
75498
|
-
- \u5236\u9650: limit 100 offset 0
|
|
75499
|
-
- \u6587\u5B57\u5217: like "\u90E8\u5206\u4E00\u81F4"
|
|
75500
|
-
|
|
75501
|
-
### Business Logic
|
|
75502
|
-
|
|
75503
|
-
\u3053\u306E\u30B3\u30CD\u30AF\u30BF\u306E\u30D3\u30B8\u30CD\u30B9\u30ED\u30B8\u30C3\u30AF\u30BF\u30A4\u30D7\u306F "typescript" \u3067\u3059\u3002\u4EE5\u4E0B\u306B\u793A\u3059\u30B3\u30CD\u30AF\u30BFSDK\u3092\u4F7F\u7528\u3057\u3066\u30CF\u30F3\u30C9\u30E9\u30B3\u30FC\u30C9\u3092\u8A18\u8FF0\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u74B0\u5883\u5909\u6570\u304B\u3089\u76F4\u63A5\u8A8D\u8A3C\u60C5\u5831\u306B\u30A2\u30AF\u30BB\u30B9\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002
|
|
75504
|
-
|
|
75505
|
-
#### Example
|
|
75506
|
-
|
|
75507
|
-
\`\`\`ts
|
|
75508
|
-
import { connection } from "@squadbase/vite-server/connectors/kintone-api-key";
|
|
75509
|
-
|
|
75510
|
-
const kintone = connection("<connectionId>");
|
|
75511
|
-
|
|
75512
|
-
// Authenticated fetch (returns standard Response)
|
|
75513
|
-
const res = await kintone.request("/k/v1/records.json?app=1&query=limit 10");
|
|
75514
|
-
const data = await res.json();
|
|
75515
|
-
|
|
75516
|
-
await kintone.request("/k/v1/record.json", {
|
|
75517
|
-
method: "POST",
|
|
75518
|
-
body: JSON.stringify({ app: 1, record: { title: { value: "Hello" } } }),
|
|
75519
|
-
});
|
|
75520
|
-
\`\`\``
|
|
75558
|
+
- \u6BD4\u8F03: \`fieldName = "value"\`, \`fieldName > 100\`
|
|
75559
|
+
- \u6F14\u7B97\u5B50: \`and\`, \`or\`, \`not\`
|
|
75560
|
+
- \u30BD\u30FC\u30C8: \`order by fieldName asc/desc\`
|
|
75561
|
+
- \u5236\u9650: \`limit 100 offset 0\`
|
|
75562
|
+
- \u6587\u5B57\u5217: \`like "\u90E8\u5206\u4E00\u81F4"\``
|
|
75521
75563
|
},
|
|
75522
75564
|
tools: tools27
|
|
75523
75565
|
});
|
|
@@ -86245,7 +86287,7 @@ var sentryConnector = new ConnectorPlugin({
|
|
|
86245
86287
|
authType: AUTH_TYPES.API_KEY,
|
|
86246
86288
|
name: "Sentry",
|
|
86247
86289
|
description: "Connect to Sentry for error tracking and performance monitoring data.",
|
|
86248
|
-
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/
|
|
86290
|
+
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/4B8ZEGFGjTeMWNnXQb1dAL/ac10f813f02353f5b0cbe64fb5c06d8f/sentry.svg",
|
|
86249
86291
|
parameters: parameters63,
|
|
86250
86292
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
86251
86293
|
onboarding: sentryOnboarding,
|