@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/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/7rOUJhO4dDKRYirBqCYzxI/48e9a5b85f0b4c6f9a3d7e2c1b8a5f4d/google-drive.svg",
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/7rOUJhO4dDKRYirBqCYzxI/48e9a5b85f0b4c6f9a3d7e2c1b8a5f4d/google-drive.svg",
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/5g0LJMwN28s2OhJbYU9CxC/71f1abfb40c89e5a6b5e3a3ad83b5a73/google-slides.svg",
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/5g0LJMwN28s2OhJbYU9CxC/71f1abfb40c89e5a6b5e3a3ad83b5a73/google-slides.svg",
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, get field definitions, query records, and create/update records. Authentication (API Token) and base URL are configured automatically. API tokens are scoped per app \u2014 combine multiple tokens with commas to access multiple 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
- ### Get Field Definitions
75437
- - GET app/form/fields.json?app={appId}
75478
+ #### Get Field Definitions
75479
+ - \`GET app/form/fields.json?app={appId}\`
75438
75480
 
75439
- ### Get Records
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", fieldName > 100
75449
- - Operators: and, or, not
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
- The business logic type for this connector is "typescript". Write handler code using the connector SDK shown below. Do NOT access credentials directly from environment variables.
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
- #### Example
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 { connection } from "@squadbase/vite-server/connectors/kintone-api-key";
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
- // Authenticated fetch (returns standard Response)
75466
- const res = await kintone.request("/k/v1/records.json?app=1&query=limit 10");
75467
- const data = await res.json();
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.request("/k/v1/record.json", {
75470
- method: "POST",
75471
- body: JSON.stringify({ app: 1, record: { title: { value: "Hello" } } }),
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
- - \`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\u691C\u7D22\u3001\u30EC\u30B3\u30FC\u30C9\u306E\u4F5C\u6210\u30FB\u66F4\u65B0\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
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
- ### \u30D5\u30A3\u30FC\u30EB\u30C9\u5B9A\u7FA9\u306E\u53D6\u5F97
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
- ### \u30EC\u30B3\u30FC\u30C9\u306E\u53D6\u5F97
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", fieldName > 100
75496
- - \u6F14\u7B97\u5B50: and, or, not
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/4PSjwCKbQvbzDhTvYpHLyq/8e61f1e09f80f4c8dca7eb9cc5c8a6d4/sentry.svg",
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/7rOUJhO4dDKRYirBqCYzxI/48e9a5b85f0b4c6f9a3d7e2c1b8a5f4d/google-drive.svg",
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/7rOUJhO4dDKRYirBqCYzxI/48e9a5b85f0b4c6f9a3d7e2c1b8a5f4d/google-drive.svg",
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/5g0LJMwN28s2OhJbYU9CxC/71f1abfb40c89e5a6b5e3a3ad83b5a73/google-slides.svg",
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/5g0LJMwN28s2OhJbYU9CxC/71f1abfb40c89e5a6b5e3a3ad83b5a73/google-slides.svg",
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, get field definitions, query records, and create/update records. Authentication (API Token) and base URL are configured automatically. API tokens are scoped per app \u2014 combine multiple tokens with commas to access multiple 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
- ### Get Field Definitions
75437
- - GET app/form/fields.json?app={appId}
75478
+ #### Get Field Definitions
75479
+ - \`GET app/form/fields.json?app={appId}\`
75438
75480
 
75439
- ### Get Records
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", fieldName > 100
75449
- - Operators: and, or, not
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
- The business logic type for this connector is "typescript". Write handler code using the connector SDK shown below. Do NOT access credentials directly from environment variables.
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
- #### Example
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 { connection } from "@squadbase/vite-server/connectors/kintone-api-key";
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
- // Authenticated fetch (returns standard Response)
75466
- const res = await kintone.request("/k/v1/records.json?app=1&query=limit 10");
75467
- const data = await res.json();
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.request("/k/v1/record.json", {
75470
- method: "POST",
75471
- body: JSON.stringify({ app: 1, record: { title: { value: "Hello" } } }),
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
- - \`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\u691C\u7D22\u3001\u30EC\u30B3\u30FC\u30C9\u306E\u4F5C\u6210\u30FB\u66F4\u65B0\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
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
- ### \u30D5\u30A3\u30FC\u30EB\u30C9\u5B9A\u7FA9\u306E\u53D6\u5F97
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
- ### \u30EC\u30B3\u30FC\u30C9\u306E\u53D6\u5F97
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", fieldName > 100
75496
- - \u6F14\u7B97\u5B50: and, or, not
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/4PSjwCKbQvbzDhTvYpHLyq/8e61f1e09f80f4c8dca7eb9cc5c8a6d4/sentry.svg",
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,