@objectstack/plugin-webhooks 7.3.0 → 7.4.1
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/.turbo/turbo-build.log +30 -26
- package/CHANGELOG.md +115 -0
- package/dist/chunk-7HS5DLU2.js +319 -0
- package/dist/chunk-7HS5DLU2.js.map +1 -0
- package/dist/{chunk-FA66GQEO.cjs → chunk-HF7CCDPB.cjs} +3 -3
- package/dist/{chunk-FA66GQEO.cjs.map → chunk-HF7CCDPB.cjs.map} +1 -1
- package/dist/{chunk-BS2QTZH3.js → chunk-KNGLLSSP.js} +2 -2
- package/dist/{chunk-MJZGD37S.cjs → chunk-TDSI7UHY.cjs} +138 -3
- package/dist/chunk-TDSI7UHY.cjs.map +1 -0
- package/dist/index.cjs +43 -14
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +33 -4
- package/dist/index.js.map +1 -1
- package/dist/schema.cjs +4 -2
- package/dist/schema.cjs.map +1 -1
- package/dist/schema.d.cts +3002 -137
- package/dist/schema.d.ts +3002 -137
- package/dist/schema.js +3 -1
- package/dist/sql-outbox.cjs +3 -3
- package/dist/sql-outbox.js +2 -2
- package/dist/translations-AV47AVPV.js +727 -0
- package/dist/translations-AV47AVPV.js.map +1 -0
- package/dist/translations-OAKKANSP.cjs +727 -0
- package/dist/translations-OAKKANSP.cjs.map +1 -0
- package/package.json +6 -6
- package/scripts/i18n-extract.config.ts +32 -0
- package/src/schema.ts +7 -3
- package/src/sys-webhook.object.ts +177 -0
- package/src/translations/en.objects.generated.ts +187 -0
- package/src/translations/es-ES.objects.generated.ts +187 -0
- package/src/translations/index.ts +23 -0
- package/src/translations/ja-JP.objects.generated.ts +187 -0
- package/src/translations/zh-CN.objects.generated.ts +187 -0
- package/src/webhook-outbox-plugin.ts +38 -7
- package/dist/chunk-33LYZT7O.js +0 -184
- package/dist/chunk-33LYZT7O.js.map +0 -1
- package/dist/chunk-MJZGD37S.cjs.map +0 -1
- /package/dist/{chunk-BS2QTZH3.js.map → chunk-KNGLLSSP.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/translations/en.objects.generated.ts","../src/translations/zh-CN.objects.generated.ts","../src/translations/ja-JP.objects.generated.ts","../src/translations/es-ES.objects.generated.ts","../src/translations/index.ts"],"sourcesContent":["// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\n/**\n * Auto-generated by 'os i18n extract' for locale 'en'.\n * Edit translations in place; re-run extract (with --merge) to fill new gaps.\n * Do not hand-edit the structure — only the leaf string values.\n */\n\nimport type { TranslationData } from '@objectstack/spec/system';\n\nexport const enObjects: NonNullable<TranslationData['objects']> = {\n sys_webhook: {\n label: \"Webhook\",\n pluralLabel: \"Webhooks\",\n description: \"Outbound HTTP webhook subscription. Authored via defineWebhook() in code or the Studio editor; executed by the HTTP connector plugin.\",\n fields: {\n id: {\n label: \"Webhook ID\"\n },\n name: {\n label: \"Name\",\n help: \"Unique snake_case name — referenced in logs and audit\"\n },\n label: {\n label: \"Display Label\"\n },\n object_name: {\n label: \"Object\",\n help: \"Short object name whose events fire this webhook (blank = manual / API-triggered)\"\n },\n triggers: {\n label: \"Triggers\",\n help: \"Comma-separated event list: create,update,delete,undelete,api\"\n },\n url: {\n label: \"Target URL\",\n help: \"External endpoint that receives the POST\"\n },\n method: {\n label: \"HTTP Method\",\n help: \"GET / POST / PUT / PATCH / DELETE\"\n },\n description: {\n label: \"Description\"\n },\n active: {\n label: \"Active\",\n help: \"Inactive webhooks are skipped by the dispatcher\"\n },\n definition_json: {\n label: \"Definition\",\n help: \"Serialised Webhook JSON (see @objectstack/spec/automation/webhook) — full headers/auth/retry/payload config\"\n },\n created_at: {\n label: \"Created At\"\n },\n updated_at: {\n label: \"Updated At\"\n }\n },\n _views: {\n active: {\n label: \"Active\"\n },\n inactive: {\n label: \"Inactive\"\n },\n by_object: {\n label: \"By Object\"\n },\n all_webhooks: {\n label: \"All\"\n }\n }\n },\n sys_webhook_delivery: {\n label: \"Webhook Delivery\",\n pluralLabel: \"Webhook Deliveries\",\n description: \"Durable outbox row for one webhook attempt. Managed by @objectstack/plugin-webhooks; do not write directly.\",\n fields: {\n id: {\n label: \"Delivery ID\",\n help: \"UUID — also doubles as the receiver-side idempotency key\"\n },\n webhook_id: {\n label: \"Webhook ID\",\n help: \"FK to sys_webhook.id (loosely coupled — denormalised URL/secret on row)\"\n },\n event_id: {\n label: \"Event ID\",\n help: \"Source event id; UNIQUE(event_id, webhook_id) for dedup\"\n },\n event_type: {\n label: \"Event Type\",\n help: \"e.g. data.record.created\"\n },\n url: {\n label: \"Target URL\",\n help: \"Snapshotted at enqueue so config edits do not rewrite live rows\"\n },\n method: {\n label: \"Method\"\n },\n headers_json: {\n label: \"Headers JSON\"\n },\n secret: {\n label: \"HMAC Secret\"\n },\n timeout_ms: {\n label: \"Timeout (ms)\"\n },\n payload_json: {\n label: \"Payload JSON\"\n },\n partition_key: {\n label: \"Partition\",\n help: \"hash(webhook_id) mod partitionCount — precomputed for cheap WHERE\"\n },\n status: {\n label: \"Status\",\n help: \"pending | in_flight | success | failed | dead\"\n },\n attempts: {\n label: \"Attempts\",\n help: \"Number of POST attempts made so far\"\n },\n claimed_by: {\n label: \"Claimed By\"\n },\n claimed_at: {\n label: \"Claimed At (ms)\"\n },\n next_retry_at: {\n label: \"Next Retry At (ms)\"\n },\n last_attempted_at: {\n label: \"Last Attempted At (ms)\"\n },\n response_code: {\n label: \"HTTP Status\"\n },\n response_body: {\n label: \"Response Body (capped)\"\n },\n error: {\n label: \"Error\"\n },\n created_at: {\n label: \"Created At (ms)\"\n },\n updated_at: {\n label: \"Updated At (ms)\"\n }\n },\n _views: {\n recent: {\n label: \"Recent\"\n },\n failures: {\n label: \"Failures\"\n },\n in_flight: {\n label: \"In Flight\"\n },\n pending: {\n label: \"Pending\"\n },\n by_status: {\n label: \"By Status\"\n },\n by_webhook: {\n label: \"By Webhook\"\n },\n all_deliveries: {\n label: \"All\"\n }\n },\n _actions: {\n redeliver: {\n label: \"Redeliver\",\n confirmText: \"Replay this delivery? The receiver will get the original payload again — they must be idempotent on the X-Objectstack-Delivery header.\",\n successMessage: \"Queued for redelivery\"\n }\n }\n }\n};\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\n/**\n * Auto-generated by 'os i18n extract' for locale 'zh-CN'.\n * Edit translations in place; re-run extract (with --merge) to fill new gaps.\n * Do not hand-edit the structure — only the leaf string values.\n */\n\nimport type { TranslationData } from '@objectstack/spec/system';\n\nexport const zhCNObjects: NonNullable<TranslationData['objects']> = {\n sys_webhook: {\n label: \"Webhook\",\n pluralLabel: \"Webhook\",\n description: \"外发 HTTP Webhook 订阅。可在代码中通过 defineWebhook() 编写,或在 Studio 编辑器中维护;由 HTTP 连接器插件执行。\",\n fields: {\n id: {\n label: \"Webhook ID\"\n },\n name: {\n label: \"名称\",\n help: \"唯一的 snake_case 名称——用于日志和审计引用\"\n },\n label: {\n label: \"显示标签\"\n },\n object_name: {\n label: \"对象\",\n help: \"触发该 Webhook 的短对象名(留空 = 手动 / API 触发)\"\n },\n triggers: {\n label: \"触发器\",\n help: \"以逗号分隔的事件列表:create,update,delete,undelete,api\"\n },\n url: {\n label: \"目标 URL\",\n help: \"接收 POST 请求的外部端点\"\n },\n method: {\n label: \"HTTP 方法\",\n help: \"GET / POST / PUT / PATCH / DELETE\"\n },\n description: {\n label: \"描述\"\n },\n active: {\n label: \"启用\",\n help: \"停用的 Webhook 会被调度器跳过\"\n },\n definition_json: {\n label: \"定义\",\n help: \"序列化的 Webhook JSON(参见 @objectstack/spec/automation/webhook)——包含完整的 headers/auth/retry/payload 配置\"\n },\n created_at: {\n label: \"创建时间\"\n },\n updated_at: {\n label: \"更新时间\"\n }\n },\n _views: {\n active: {\n label: \"启用\"\n },\n inactive: {\n label: \"停用\"\n },\n by_object: {\n label: \"按对象\"\n },\n all_webhooks: {\n label: \"全部\"\n }\n }\n },\n sys_webhook_delivery: {\n label: \"Webhook Delivery\",\n pluralLabel: \"Webhook Deliveries\",\n description: \"Durable outbox row for one webhook attempt. Managed by @objectstack/plugin-webhooks; do not write directly.\",\n fields: {\n id: {\n label: \"Delivery ID\",\n help: \"UUID — also doubles as the receiver-side idempotency key\"\n },\n webhook_id: {\n label: \"Webhook ID\",\n help: \"FK to sys_webhook.id (loosely coupled — denormalised URL/secret on row)\"\n },\n event_id: {\n label: \"Event ID\",\n help: \"Source event id; UNIQUE(event_id, webhook_id) for dedup\"\n },\n event_type: {\n label: \"Event Type\",\n help: \"e.g. data.record.created\"\n },\n url: {\n label: \"Target URL\",\n help: \"Snapshotted at enqueue so config edits do not rewrite live rows\"\n },\n method: {\n label: \"Method\"\n },\n headers_json: {\n label: \"Headers JSON\"\n },\n secret: {\n label: \"HMAC Secret\"\n },\n timeout_ms: {\n label: \"Timeout (ms)\"\n },\n payload_json: {\n label: \"Payload JSON\"\n },\n partition_key: {\n label: \"Partition\",\n help: \"hash(webhook_id) mod partitionCount — precomputed for cheap WHERE\"\n },\n status: {\n label: \"Status\",\n help: \"pending | in_flight | success | failed | dead\"\n },\n attempts: {\n label: \"Attempts\",\n help: \"Number of POST attempts made so far\"\n },\n claimed_by: {\n label: \"Claimed By\"\n },\n claimed_at: {\n label: \"Claimed At (ms)\"\n },\n next_retry_at: {\n label: \"Next Retry At (ms)\"\n },\n last_attempted_at: {\n label: \"Last Attempted At (ms)\"\n },\n response_code: {\n label: \"HTTP Status\"\n },\n response_body: {\n label: \"Response Body (capped)\"\n },\n error: {\n label: \"Error\"\n },\n created_at: {\n label: \"Created At (ms)\"\n },\n updated_at: {\n label: \"Updated At (ms)\"\n }\n },\n _views: {\n recent: {\n label: \"Recent\"\n },\n failures: {\n label: \"Failures\"\n },\n in_flight: {\n label: \"In Flight\"\n },\n pending: {\n label: \"Pending\"\n },\n by_status: {\n label: \"By Status\"\n },\n by_webhook: {\n label: \"By Webhook\"\n },\n all_deliveries: {\n label: \"All\"\n }\n },\n _actions: {\n redeliver: {\n label: \"Redeliver\",\n confirmText: \"Replay this delivery? The receiver will get the original payload again — they must be idempotent on the X-Objectstack-Delivery header.\",\n successMessage: \"Queued for redelivery\"\n }\n }\n }\n};\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\n/**\n * Auto-generated by 'os i18n extract' for locale 'ja-JP'.\n * Edit translations in place; re-run extract (with --merge) to fill new gaps.\n * Do not hand-edit the structure — only the leaf string values.\n */\n\nimport type { TranslationData } from '@objectstack/spec/system';\n\nexport const jaJPObjects: NonNullable<TranslationData['objects']> = {\n sys_webhook: {\n label: \"Webhook\",\n pluralLabel: \"Webhook\",\n description: \"送信 HTTP Webhook サブスクリプション。defineWebhook() またはスタジオエディタで作成し、HTTP コネクタプラグインが実行します。\",\n fields: {\n id: {\n label: \"Webhook ID\"\n },\n name: {\n label: \"名前\",\n help: \"一意の snake_case 名 — ログおよび監査で参照\"\n },\n label: {\n label: \"表示名\"\n },\n object_name: {\n label: \"オブジェクト\",\n help: \"このウェブフックを発火するイベントのオブジェクト短縮名(空白 = 手動 / API トリガー)\"\n },\n triggers: {\n label: \"トリガー\",\n help: \"カンマ区切りのイベントリスト: create,update,delete,undelete,api\"\n },\n url: {\n label: \"ターゲット URL\",\n help: \"POST を受信する外部エンドポイント\"\n },\n method: {\n label: \"HTTP メソッド\",\n help: \"GET / POST / PUT / PATCH / DELETE\"\n },\n description: {\n label: \"説明\"\n },\n active: {\n label: \"有効\",\n help: \"無効にするとディスパッチャにスキップされます\"\n },\n definition_json: {\n label: \"定義\",\n help: \"シリアライズされた Webhook JSON(@objectstack/spec/automation/webhook 参照)— ヘッダー/認証/リトライ/ペイロード設定を含む\"\n },\n created_at: {\n label: \"作成日時\"\n },\n updated_at: {\n label: \"更新日時\"\n }\n },\n _views: {\n active: {\n label: \"有効\"\n },\n inactive: {\n label: \"無効\"\n },\n by_object: {\n label: \"オブジェクト別\"\n },\n all_webhooks: {\n label: \"すべて\"\n }\n }\n },\n sys_webhook_delivery: {\n label: \"Webhook Delivery\",\n pluralLabel: \"Webhook Deliveries\",\n description: \"Durable outbox row for one webhook attempt. Managed by @objectstack/plugin-webhooks; do not write directly.\",\n fields: {\n id: {\n label: \"Delivery ID\",\n help: \"UUID — also doubles as the receiver-side idempotency key\"\n },\n webhook_id: {\n label: \"Webhook ID\",\n help: \"FK to sys_webhook.id (loosely coupled — denormalised URL/secret on row)\"\n },\n event_id: {\n label: \"Event ID\",\n help: \"Source event id; UNIQUE(event_id, webhook_id) for dedup\"\n },\n event_type: {\n label: \"Event Type\",\n help: \"e.g. data.record.created\"\n },\n url: {\n label: \"Target URL\",\n help: \"Snapshotted at enqueue so config edits do not rewrite live rows\"\n },\n method: {\n label: \"Method\"\n },\n headers_json: {\n label: \"Headers JSON\"\n },\n secret: {\n label: \"HMAC Secret\"\n },\n timeout_ms: {\n label: \"Timeout (ms)\"\n },\n payload_json: {\n label: \"Payload JSON\"\n },\n partition_key: {\n label: \"Partition\",\n help: \"hash(webhook_id) mod partitionCount — precomputed for cheap WHERE\"\n },\n status: {\n label: \"Status\",\n help: \"pending | in_flight | success | failed | dead\"\n },\n attempts: {\n label: \"Attempts\",\n help: \"Number of POST attempts made so far\"\n },\n claimed_by: {\n label: \"Claimed By\"\n },\n claimed_at: {\n label: \"Claimed At (ms)\"\n },\n next_retry_at: {\n label: \"Next Retry At (ms)\"\n },\n last_attempted_at: {\n label: \"Last Attempted At (ms)\"\n },\n response_code: {\n label: \"HTTP Status\"\n },\n response_body: {\n label: \"Response Body (capped)\"\n },\n error: {\n label: \"Error\"\n },\n created_at: {\n label: \"Created At (ms)\"\n },\n updated_at: {\n label: \"Updated At (ms)\"\n }\n },\n _views: {\n recent: {\n label: \"Recent\"\n },\n failures: {\n label: \"Failures\"\n },\n in_flight: {\n label: \"In Flight\"\n },\n pending: {\n label: \"Pending\"\n },\n by_status: {\n label: \"By Status\"\n },\n by_webhook: {\n label: \"By Webhook\"\n },\n all_deliveries: {\n label: \"All\"\n }\n },\n _actions: {\n redeliver: {\n label: \"Redeliver\",\n confirmText: \"Replay this delivery? The receiver will get the original payload again — they must be idempotent on the X-Objectstack-Delivery header.\",\n successMessage: \"Queued for redelivery\"\n }\n }\n }\n};\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\n/**\n * Auto-generated by 'os i18n extract' for locale 'es-ES'.\n * Edit translations in place; re-run extract (with --merge) to fill new gaps.\n * Do not hand-edit the structure — only the leaf string values.\n */\n\nimport type { TranslationData } from '@objectstack/spec/system';\n\nexport const esESObjects: NonNullable<TranslationData['objects']> = {\n sys_webhook: {\n label: \"Webhook\",\n pluralLabel: \"Webhooks\",\n description: \"Suscripción saliente de Webhook HTTP. Se crea mediante defineWebhook() en código o con el editor de Studio; la ejecuta el plugin del conector HTTP.\",\n fields: {\n id: {\n label: \"ID de webhook\"\n },\n name: {\n label: \"Nombre\",\n help: \"Nombre snake_case único; se usa en los registros y en la auditoría.\"\n },\n label: {\n label: \"Nombre visible\"\n },\n object_name: {\n label: \"Objeto\",\n help: \"Nombre corto del objeto cuyos eventos activan este Webhook (vacío = activación manual / API).\"\n },\n triggers: {\n label: \"Desencadenantes\",\n help: \"Lista de eventos separada por comas: create,update,delete,undelete,api.\"\n },\n url: {\n label: \"URL de destino\",\n help: \"Endpoint externo que recibe el POST.\"\n },\n method: {\n label: \"Método HTTP\",\n help: \"GET / POST / PUT / PATCH / DELETE\"\n },\n description: {\n label: \"Descripción\"\n },\n active: {\n label: \"Activo\",\n help: \"Los Webhooks inactivos se omiten en el despachador.\"\n },\n definition_json: {\n label: \"Definición\",\n help: \"JSON serializado de Webhook (consulte @objectstack/spec/automation/webhook): configuración completa de cabeceras/auth/reintentos/payload.\"\n },\n created_at: {\n label: \"Creado el\"\n },\n updated_at: {\n label: \"Actualizado el\"\n }\n },\n _views: {\n active: {\n label: \"Activo\"\n },\n inactive: {\n label: \"Inactivo\"\n },\n by_object: {\n label: \"Por objeto\"\n },\n all_webhooks: {\n label: \"Todos\"\n }\n }\n },\n sys_webhook_delivery: {\n label: \"Webhook Delivery\",\n pluralLabel: \"Webhook Deliveries\",\n description: \"Durable outbox row for one webhook attempt. Managed by @objectstack/plugin-webhooks; do not write directly.\",\n fields: {\n id: {\n label: \"Delivery ID\",\n help: \"UUID — also doubles as the receiver-side idempotency key\"\n },\n webhook_id: {\n label: \"Webhook ID\",\n help: \"FK to sys_webhook.id (loosely coupled — denormalised URL/secret on row)\"\n },\n event_id: {\n label: \"Event ID\",\n help: \"Source event id; UNIQUE(event_id, webhook_id) for dedup\"\n },\n event_type: {\n label: \"Event Type\",\n help: \"e.g. data.record.created\"\n },\n url: {\n label: \"Target URL\",\n help: \"Snapshotted at enqueue so config edits do not rewrite live rows\"\n },\n method: {\n label: \"Method\"\n },\n headers_json: {\n label: \"Headers JSON\"\n },\n secret: {\n label: \"HMAC Secret\"\n },\n timeout_ms: {\n label: \"Timeout (ms)\"\n },\n payload_json: {\n label: \"Payload JSON\"\n },\n partition_key: {\n label: \"Partition\",\n help: \"hash(webhook_id) mod partitionCount — precomputed for cheap WHERE\"\n },\n status: {\n label: \"Status\",\n help: \"pending | in_flight | success | failed | dead\"\n },\n attempts: {\n label: \"Attempts\",\n help: \"Number of POST attempts made so far\"\n },\n claimed_by: {\n label: \"Claimed By\"\n },\n claimed_at: {\n label: \"Claimed At (ms)\"\n },\n next_retry_at: {\n label: \"Next Retry At (ms)\"\n },\n last_attempted_at: {\n label: \"Last Attempted At (ms)\"\n },\n response_code: {\n label: \"HTTP Status\"\n },\n response_body: {\n label: \"Response Body (capped)\"\n },\n error: {\n label: \"Error\"\n },\n created_at: {\n label: \"Created At (ms)\"\n },\n updated_at: {\n label: \"Updated At (ms)\"\n }\n },\n _views: {\n recent: {\n label: \"Recent\"\n },\n failures: {\n label: \"Failures\"\n },\n in_flight: {\n label: \"In Flight\"\n },\n pending: {\n label: \"Pending\"\n },\n by_status: {\n label: \"By Status\"\n },\n by_webhook: {\n label: \"By Webhook\"\n },\n all_deliveries: {\n label: \"All\"\n }\n },\n _actions: {\n redeliver: {\n label: \"Redeliver\",\n confirmText: \"Replay this delivery? The receiver will get the original payload again — they must be idempotent on the X-Objectstack-Delivery header.\",\n successMessage: \"Queued for redelivery\"\n }\n }\n }\n};\n","// Copyright (c) 2026 ObjectStack. Licensed under the Apache-2.0 license.\n\n/**\n * WebhooksTranslations — i18n bundle owned by this plugin (ADR-0029 D8).\n *\n * Object label/field/view/action translations for the sys_* objects this\n * plugin owns. Loaded at runtime via the plugin's `kernel:ready` hook\n * (`i18n.loadTranslations`). Regenerate with `os i18n extract` against\n * `scripts/i18n-extract.config.ts`.\n */\n\nimport type { TranslationBundle } from '@objectstack/spec/system';\nimport { enObjects } from './en.objects.generated.js';\nimport { zhCNObjects } from './zh-CN.objects.generated.js';\nimport { jaJPObjects } from './ja-JP.objects.generated.js';\nimport { esESObjects } from './es-ES.objects.generated.js';\n\nexport const WebhooksTranslations: TranslationBundle = {\n en: { objects: enObjects },\n 'zh-CN': { objects: zhCNObjects },\n 'ja-JP': { objects: jaJPObjects },\n 'es-ES': { objects: esESObjects },\n};\n"],"mappings":"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","names":[]}
|