From 404d25384f67980df3bcda5c7b7db2325e9500d0 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 21 Nov 2025 13:14:14 +0000 Subject: [PATCH 1/2] feat(api): adiciona endpoint de ingest de eventos --- .stats.yml | 8 +- api.md | 2 + src/client.ts | 4 + src/resources/index.ts | 2 + src/resources/triggers.ts | 127 +++++++-- tests/api-resources/triggers.test.ts | 388 ++++++++++++++------------- 6 files changed, 329 insertions(+), 202 deletions(-) diff --git a/.stats.yml b/.stats.yml index a34b176..59f9012 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ -configured_endpoints: 30 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/triglit%2Ftriglit-6adb2ace136bf74d9f70057816548b5dc9b3ced7a625862aefbc787ef731aad5.yml -openapi_spec_hash: 6afd1e92070452bb08999602775c6135 -config_hash: 2b1cd9cfb3a07b42ea16d763355e61ea +configured_endpoints: 31 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/triglit%2Ftriglit-a764b362cc7f0cc0e27f4288a948ae5f7495c073e0b05bf68fe7cff70bd4fd91.yml +openapi_spec_hash: fff16017770be5b1798130820585c72e +config_hash: a9236c7ca77fbb3b03a51c6f84b2c3a1 diff --git a/api.md b/api.md index 1f56631..52ab965 100644 --- a/api.md +++ b/api.md @@ -4,6 +4,7 @@ Types: - Trigger - TriggerList +- TriggerIngestResponse - TriggerTriggerByEventResponse - TriggerTriggerWebhookResponse @@ -14,6 +15,7 @@ Methods: - client.triggers.update(triggerID, { ...params }) -> Trigger - client.triggers.list({ ...params }) -> TriggersPageBased - client.triggers.delete(triggerID) -> void +- client.triggers.ingest({ ...params }) -> TriggerIngestResponse - client.triggers.listByWorkflowVersion(workflowVersionID, { ...params }) -> TriggersPageBased - client.triggers.resumeExecution({ ...params }) -> void - client.triggers.triggerByEvent({ ...params }) -> TriggerTriggerByEventResponse diff --git a/src/client.ts b/src/client.ts index 45be553..a1e150d 100644 --- a/src/client.ts +++ b/src/client.ts @@ -33,6 +33,8 @@ import { import { Trigger, TriggerCreateParams, + TriggerIngestParams, + TriggerIngestResponse, TriggerList, TriggerListByWorkflowVersionParams, TriggerListParams, @@ -790,12 +792,14 @@ export declare namespace Triglit { Triggers as Triggers, type Trigger as Trigger, type TriggerList as TriggerList, + type TriggerIngestResponse as TriggerIngestResponse, type TriggerTriggerByEventResponse as TriggerTriggerByEventResponse, type TriggerTriggerWebhookResponse as TriggerTriggerWebhookResponse, type TriggersPageBased as TriggersPageBased, type TriggerCreateParams as TriggerCreateParams, type TriggerUpdateParams as TriggerUpdateParams, type TriggerListParams as TriggerListParams, + type TriggerIngestParams as TriggerIngestParams, type TriggerListByWorkflowVersionParams as TriggerListByWorkflowVersionParams, type TriggerResumeExecutionParams as TriggerResumeExecutionParams, type TriggerTriggerByEventParams as TriggerTriggerByEventParams, diff --git a/src/resources/index.ts b/src/resources/index.ts index 755ee06..8a19e38 100644 --- a/src/resources/index.ts +++ b/src/resources/index.ts @@ -16,11 +16,13 @@ export { Triggers, type Trigger, type TriggerList, + type TriggerIngestResponse, type TriggerTriggerByEventResponse, type TriggerTriggerWebhookResponse, type TriggerCreateParams, type TriggerUpdateParams, type TriggerListParams, + type TriggerIngestParams, type TriggerListByWorkflowVersionParams, type TriggerResumeExecutionParams, type TriggerTriggerByEventParams, diff --git a/src/resources/triggers.ts b/src/resources/triggers.ts index 61cf0bb..0395c13 100644 --- a/src/resources/triggers.ts +++ b/src/resources/triggers.ts @@ -51,21 +51,31 @@ export class Triggers extends APIResource { }); } - /** - * Retrieves a paginated list of triggers for a specific workflow version. Accepts - * both public and secret keys. - */ - listByWorkflowVersion( - workflowVersionID: string, - query: TriggerListByWorkflowVersionParams | null | undefined = {}, - options?: RequestOptions, - ): PagePromise { - return this._client.getAPIList( - path`/v1/gateway/triggers/workflow-version/${workflowVersionID}`, - PageBased, - { query, ...options }, - ); - } + /** + * Intelligently resumes paused executions for the same entityId and event, or + * triggers new workflows if no paused executions exist. This endpoint simplifies + * integration by automatically handling the decision between resuming and + * triggering. + */ + ingest(body: TriggerIngestParams, options?: RequestOptions): APIPromise { + return this._client.post('/v1/gateway/triggers/ingest', { body, ...options }); + } + + /** + * Retrieves a paginated list of triggers for a specific workflow version. Accepts + * both public and secret keys. + */ + listByWorkflowVersion( + workflowVersionID: string, + query: TriggerListByWorkflowVersionParams | null | undefined = {}, + options?: RequestOptions, + ): PagePromise { + return this._client.getAPIList( + path`/v1/gateway/triggers/workflow-version/${workflowVersionID}`, + PageBased, + { query, ...options }, + ); + } /** * Resumes a paused workflow execution with input data. Requires secret key @@ -174,6 +184,71 @@ export interface TriggerList { page: number; } +export interface TriggerIngestResponse { + /** + * List of resumed executions + */ + resumed: Array; + + /** + * List of skipped executions + */ + skipped: Array; + + /** + * List of newly triggered workflows + */ + triggered: Array; +} + +export namespace TriggerIngestResponse { + export interface Resumed { + /** + * Entity ID + */ + entityId: string; + + /** + * Run identifier that was resumed + */ + runId: string; + + /** + * Workflow version identifier + */ + workflowVersionId: string; + } + + export interface Skipped { + /** + * Reason why the execution was skipped + */ + reason: 'expired' | 'not_paused' | 'wrong_event' | 'filtered_out'; + + /** + * Run identifier (if applicable) + */ + runId?: string; + } + + export interface Triggered { + /** + * Deduplication key + */ + dedupeKey: string; + + /** + * Trigger identifier + */ + triggerId: string; + + /** + * Run identifier (if workflow was started) + */ + runId?: string; + } +} + export interface TriggerTriggerByEventResponse { /** * Total number of triggers found and triggered @@ -331,6 +406,26 @@ export interface TriggerListParams extends PageBasedParams { workflowVersionId?: string; } +export interface TriggerIngestParams { + event: string; + + eventData?: { [key: string]: unknown }; + + resumeOptions?: TriggerIngestParams.ResumeOptions; + + subTenantId?: string; +} + +export namespace TriggerIngestParams { + export interface ResumeOptions { + resumeAll?: boolean; + + runIds?: Array; + + workflowVersionIds?: Array; + } +} + export interface TriggerListByWorkflowVersionParams extends PageBasedParams {} export interface TriggerResumeExecutionParams { @@ -357,12 +452,14 @@ export declare namespace Triggers { export { type Trigger as Trigger, type TriggerList as TriggerList, + type TriggerIngestResponse as TriggerIngestResponse, type TriggerTriggerByEventResponse as TriggerTriggerByEventResponse, type TriggerTriggerWebhookResponse as TriggerTriggerWebhookResponse, type TriggersPageBased as TriggersPageBased, type TriggerCreateParams as TriggerCreateParams, type TriggerUpdateParams as TriggerUpdateParams, type TriggerListParams as TriggerListParams, + type TriggerIngestParams as TriggerIngestParams, type TriggerListByWorkflowVersionParams as TriggerListByWorkflowVersionParams, type TriggerResumeExecutionParams as TriggerResumeExecutionParams, type TriggerTriggerByEventParams as TriggerTriggerByEventParams, diff --git a/tests/api-resources/triggers.test.ts b/tests/api-resources/triggers.test.ts index b3e0ae5..4b778d6 100644 --- a/tests/api-resources/triggers.test.ts +++ b/tests/api-resources/triggers.test.ts @@ -1,183 +1,205 @@ -// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -import Triglit from 'triglit'; - -const client = new Triglit({ - apiKey: 'My API Key', - baseURL: process.env['TEST_API_BASE_URL'] ?? 'http://127.0.0.1:4010', -}); - -describe('resource triggers', () => { - // Prism tests are disabled - test.skip('create: only required params', async () => { - const responsePromise = client.triggers.create({ - config: {}, - name: 'x', - type: 'schedule', - workflowVersionId: 'x', - }); - const rawResponse = await responsePromise.asResponse(); - expect(rawResponse).toBeInstanceOf(Response); - const response = await responsePromise; - expect(response).not.toBeInstanceOf(Response); - const dataAndResponse = await responsePromise.withResponse(); - expect(dataAndResponse.data).toBe(response); - expect(dataAndResponse.response).toBe(rawResponse); - }); - - // Prism tests are disabled - test.skip('create: required and optional params', async () => { - const response = await client.triggers.create({ - config: { - rateLimit: { maxRequests: 1, windowMs: 1000 }, - retryPolicy: { backoffMs: 100, maxBackoffMs: 1000, maxRetries: 0 }, - scheduleConfig: { cron: 'cron', intervalMs: 60000, timezone: 'timezone' }, - timeoutMs: 1000, - webhookConfig: { event: 'event' }, - }, - name: 'x', - type: 'schedule', - workflowVersionId: 'x', - }); - }); - - // Prism tests are disabled - test.skip('retrieve', async () => { - const responsePromise = client.triggers.retrieve('trg_abc123def456'); - const rawResponse = await responsePromise.asResponse(); - expect(rawResponse).toBeInstanceOf(Response); - const response = await responsePromise; - expect(response).not.toBeInstanceOf(Response); - const dataAndResponse = await responsePromise.withResponse(); - expect(dataAndResponse.data).toBe(response); - expect(dataAndResponse.response).toBe(rawResponse); - }); - - // Prism tests are disabled - test.skip('update', async () => { - const responsePromise = client.triggers.update('trg_abc123def456', {}); - const rawResponse = await responsePromise.asResponse(); - expect(rawResponse).toBeInstanceOf(Response); - const response = await responsePromise; - expect(response).not.toBeInstanceOf(Response); - const dataAndResponse = await responsePromise.withResponse(); - expect(dataAndResponse.data).toBe(response); - expect(dataAndResponse.response).toBe(rawResponse); - }); - - // Prism tests are disabled - test.skip('list', async () => { - const responsePromise = client.triggers.list(); - const rawResponse = await responsePromise.asResponse(); - expect(rawResponse).toBeInstanceOf(Response); - const response = await responsePromise; - expect(response).not.toBeInstanceOf(Response); - const dataAndResponse = await responsePromise.withResponse(); - expect(dataAndResponse.data).toBe(response); - expect(dataAndResponse.response).toBe(rawResponse); - }); - - // Prism tests are disabled - test.skip('list: request options and params are passed correctly', async () => { - // ensure the request options are being passed correctly by passing an invalid HTTP method in order to cause an error - await expect( - client.triggers.list( - { - isActive: true, - page: 0, - pageSize: 20, - search: 'search', - type: 'schedule', - workflowVersionId: 'workflowVersionId', - }, - { path: '/_stainless_unknown_path' }, - ), - ).rejects.toThrow(Triglit.NotFoundError); - }); - - // Prism tests are disabled - test.skip('delete', async () => { - const responsePromise = client.triggers.delete('trg_abc123def456'); - const rawResponse = await responsePromise.asResponse(); - expect(rawResponse).toBeInstanceOf(Response); - const response = await responsePromise; - expect(response).not.toBeInstanceOf(Response); - const dataAndResponse = await responsePromise.withResponse(); - expect(dataAndResponse.data).toBe(response); - expect(dataAndResponse.response).toBe(rawResponse); - }); - - // Prism tests are disabled - test.skip('listByWorkflowVersion', async () => { - const responsePromise = client.triggers.listByWorkflowVersion('wfv_abc123def456'); - const rawResponse = await responsePromise.asResponse(); - expect(rawResponse).toBeInstanceOf(Response); - const response = await responsePromise; - expect(response).not.toBeInstanceOf(Response); - const dataAndResponse = await responsePromise.withResponse(); - expect(dataAndResponse.data).toBe(response); - expect(dataAndResponse.response).toBe(rawResponse); - }); - - // Prism tests are disabled - test.skip('listByWorkflowVersion: request options and params are passed correctly', async () => { - // ensure the request options are being passed correctly by passing an invalid HTTP method in order to cause an error - await expect( - client.triggers.listByWorkflowVersion( - 'wfv_abc123def456', - { page: 0, pageSize: 20 }, - { path: '/_stainless_unknown_path' }, - ), - ).rejects.toThrow(Triglit.NotFoundError); - }); - - // Prism tests are disabled - test.skip('resumeExecution: only required params', async () => { - const responsePromise = client.triggers.resumeExecution({ resumeToken: 'x', runId: 'x' }); - const rawResponse = await responsePromise.asResponse(); - expect(rawResponse).toBeInstanceOf(Response); - const response = await responsePromise; - expect(response).not.toBeInstanceOf(Response); - const dataAndResponse = await responsePromise.withResponse(); - expect(dataAndResponse.data).toBe(response); - expect(dataAndResponse.response).toBe(rawResponse); - }); - - // Prism tests are disabled - test.skip('resumeExecution: required and optional params', async () => { - const response = await client.triggers.resumeExecution({ resumeToken: 'x', runId: 'x', input: {} }); - }); - - // Prism tests are disabled - test.skip('triggerByEvent: only required params', async () => { - const responsePromise = client.triggers.triggerByEvent({ event: 'x' }); - const rawResponse = await responsePromise.asResponse(); - expect(rawResponse).toBeInstanceOf(Response); - const response = await responsePromise; - expect(response).not.toBeInstanceOf(Response); - const dataAndResponse = await responsePromise.withResponse(); - expect(dataAndResponse.data).toBe(response); - expect(dataAndResponse.response).toBe(rawResponse); - }); - - // Prism tests are disabled - test.skip('triggerByEvent: required and optional params', async () => { - const response = await client.triggers.triggerByEvent({ - event: 'x', - eventData: { foo: 'bar' }, - subTenantId: 'subTenantId', - }); - }); - - // Prism tests are disabled - test.skip('triggerWebhook', async () => { - const responsePromise = client.triggers.triggerWebhook('trg_abc123def456', {}); - const rawResponse = await responsePromise.asResponse(); - expect(rawResponse).toBeInstanceOf(Response); - const response = await responsePromise; - expect(response).not.toBeInstanceOf(Response); - const dataAndResponse = await responsePromise.withResponse(); - expect(dataAndResponse.data).toBe(response); - expect(dataAndResponse.response).toBe(rawResponse); - }); -}); +// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. + +import Triglit from 'triglit'; + +const client = new Triglit({ + apiKey: 'My API Key', + baseURL: process.env['TEST_API_BASE_URL'] ?? 'http://127.0.0.1:4010', +}); + +describe('resource triggers', () => { + // Prism tests are disabled + test.skip('create: only required params', async () => { + const responsePromise = client.triggers.create({ + config: {}, + name: 'x', + type: 'schedule', + workflowVersionId: 'x', + }); + const rawResponse = await responsePromise.asResponse(); + expect(rawResponse).toBeInstanceOf(Response); + const response = await responsePromise; + expect(response).not.toBeInstanceOf(Response); + const dataAndResponse = await responsePromise.withResponse(); + expect(dataAndResponse.data).toBe(response); + expect(dataAndResponse.response).toBe(rawResponse); + }); + + // Prism tests are disabled + test.skip('create: required and optional params', async () => { + const response = await client.triggers.create({ + config: { + rateLimit: { maxRequests: 1, windowMs: 1000 }, + retryPolicy: { backoffMs: 100, maxBackoffMs: 1000, maxRetries: 0 }, + scheduleConfig: { cron: 'cron', intervalMs: 60000, timezone: 'timezone' }, + timeoutMs: 1000, + webhookConfig: { event: 'event' }, + }, + name: 'x', + type: 'schedule', + workflowVersionId: 'x', + }); + }); + + // Prism tests are disabled + test.skip('retrieve', async () => { + const responsePromise = client.triggers.retrieve('trg_abc123def456'); + const rawResponse = await responsePromise.asResponse(); + expect(rawResponse).toBeInstanceOf(Response); + const response = await responsePromise; + expect(response).not.toBeInstanceOf(Response); + const dataAndResponse = await responsePromise.withResponse(); + expect(dataAndResponse.data).toBe(response); + expect(dataAndResponse.response).toBe(rawResponse); + }); + + // Prism tests are disabled + test.skip('update', async () => { + const responsePromise = client.triggers.update('trg_abc123def456', {}); + const rawResponse = await responsePromise.asResponse(); + expect(rawResponse).toBeInstanceOf(Response); + const response = await responsePromise; + expect(response).not.toBeInstanceOf(Response); + const dataAndResponse = await responsePromise.withResponse(); + expect(dataAndResponse.data).toBe(response); + expect(dataAndResponse.response).toBe(rawResponse); + }); + + // Prism tests are disabled + test.skip('list', async () => { + const responsePromise = client.triggers.list(); + const rawResponse = await responsePromise.asResponse(); + expect(rawResponse).toBeInstanceOf(Response); + const response = await responsePromise; + expect(response).not.toBeInstanceOf(Response); + const dataAndResponse = await responsePromise.withResponse(); + expect(dataAndResponse.data).toBe(response); + expect(dataAndResponse.response).toBe(rawResponse); + }); + + // Prism tests are disabled + test.skip('list: request options and params are passed correctly', async () => { + // ensure the request options are being passed correctly by passing an invalid HTTP method in order to cause an error + await expect( + client.triggers.list( + { + isActive: true, + page: 0, + pageSize: 20, + search: 'search', + type: 'schedule', + workflowVersionId: 'workflowVersionId', + }, + { path: '/_stainless_unknown_path' }, + ), + ).rejects.toThrow(Triglit.NotFoundError); + }); + + // Prism tests are disabled + test.skip('delete', async () => { + const responsePromise = client.triggers.delete('trg_abc123def456'); + const rawResponse = await responsePromise.asResponse(); + expect(rawResponse).toBeInstanceOf(Response); + const response = await responsePromise; + expect(response).not.toBeInstanceOf(Response); + const dataAndResponse = await responsePromise.withResponse(); + expect(dataAndResponse.data).toBe(response); + expect(dataAndResponse.response).toBe(rawResponse); + }); + + // Prism tests are disabled + test.skip('ingest: only required params', async () => { + const responsePromise = client.triggers.ingest({ event: 'x' }); + const rawResponse = await responsePromise.asResponse(); + expect(rawResponse).toBeInstanceOf(Response); + const response = await responsePromise; + expect(response).not.toBeInstanceOf(Response); + const dataAndResponse = await responsePromise.withResponse(); + expect(dataAndResponse.data).toBe(response); + expect(dataAndResponse.response).toBe(rawResponse); + }); + + // Prism tests are disabled + test.skip('ingest: required and optional params', async () => { + const response = await client.triggers.ingest({ + event: 'x', + eventData: { foo: 'bar' }, + resumeOptions: { resumeAll: true, runIds: ['string'], workflowVersionIds: ['string'] }, + subTenantId: 'subTenantId', + }); + }); + + // Prism tests are disabled + test.skip('listByWorkflowVersion', async () => { + const responsePromise = client.triggers.listByWorkflowVersion('wfv_abc123def456'); + const rawResponse = await responsePromise.asResponse(); + expect(rawResponse).toBeInstanceOf(Response); + const response = await responsePromise; + expect(response).not.toBeInstanceOf(Response); + const dataAndResponse = await responsePromise.withResponse(); + expect(dataAndResponse.data).toBe(response); + expect(dataAndResponse.response).toBe(rawResponse); + }); + + // Prism tests are disabled + test.skip('listByWorkflowVersion: request options and params are passed correctly', async () => { + // ensure the request options are being passed correctly by passing an invalid HTTP method in order to cause an error + await expect( + client.triggers.listByWorkflowVersion( + 'wfv_abc123def456', + { page: 0, pageSize: 20 }, + { path: '/_stainless_unknown_path' }, + ), + ).rejects.toThrow(Triglit.NotFoundError); + }); + + // Prism tests are disabled + test.skip('resumeExecution: only required params', async () => { + const responsePromise = client.triggers.resumeExecution({ resumeToken: 'x', runId: 'x' }); + const rawResponse = await responsePromise.asResponse(); + expect(rawResponse).toBeInstanceOf(Response); + const response = await responsePromise; + expect(response).not.toBeInstanceOf(Response); + const dataAndResponse = await responsePromise.withResponse(); + expect(dataAndResponse.data).toBe(response); + expect(dataAndResponse.response).toBe(rawResponse); + }); + + // Prism tests are disabled + test.skip('resumeExecution: required and optional params', async () => { + const response = await client.triggers.resumeExecution({ resumeToken: 'x', runId: 'x', input: {} }); + }); + + // Prism tests are disabled + test.skip('triggerByEvent: only required params', async () => { + const responsePromise = client.triggers.triggerByEvent({ event: 'x' }); + const rawResponse = await responsePromise.asResponse(); + expect(rawResponse).toBeInstanceOf(Response); + const response = await responsePromise; + expect(response).not.toBeInstanceOf(Response); + const dataAndResponse = await responsePromise.withResponse(); + expect(dataAndResponse.data).toBe(response); + expect(dataAndResponse.response).toBe(rawResponse); + }); + + // Prism tests are disabled + test.skip('triggerByEvent: required and optional params', async () => { + const response = await client.triggers.triggerByEvent({ + event: 'x', + eventData: { foo: 'bar' }, + subTenantId: 'subTenantId', + }); + }); + + // Prism tests are disabled + test.skip('triggerWebhook', async () => { + const responsePromise = client.triggers.triggerWebhook('trg_abc123def456', {}); + const rawResponse = await responsePromise.asResponse(); + expect(rawResponse).toBeInstanceOf(Response); + const response = await responsePromise; + expect(response).not.toBeInstanceOf(Response); + const dataAndResponse = await responsePromise.withResponse(); + expect(dataAndResponse.data).toBe(response); + expect(dataAndResponse.response).toBe(rawResponse); + }); +}); From 9b9a158edda3efd87f45e167a5c85726e6b1a922 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 21 Nov 2025 13:14:31 +0000 Subject: [PATCH 2/2] release: 0.5.0 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 8 ++++++++ package.json | 2 +- src/version.ts | 2 +- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index a3cf436..f1c1e58 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.4.5" + ".": "0.5.0" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 1b688fa..f78289f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 0.5.0 (2025-11-21) + +Full Changelog: [v0.4.5...v0.5.0](https://github.com/Triglit/typescript-sdk/compare/v0.4.5...v0.5.0) + +### Features + +* **api:** adiciona endpoint de ingest de eventos ([404d253](https://github.com/Triglit/typescript-sdk/commit/404d25384f67980df3bcda5c7b7db2325e9500d0)) + ## 0.4.5 (2025-11-18) Full Changelog: [v0.4.4...v0.4.5](https://github.com/Triglit/typescript-sdk/compare/v0.4.4...v0.4.5) diff --git a/package.json b/package.json index f5aa956..7958f53 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "triglit", - "version": "0.4.5", + "version": "0.5.0", "description": "The official TypeScript library for the Triglit API", "author": "Triglit ", "types": "dist/index.d.ts", diff --git a/src/version.ts b/src/version.ts index 848cae9..1f5d158 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1 +1 @@ -export const VERSION = '0.4.5'; // x-release-please-version +export const VERSION = '0.5.0'; // x-release-please-version