@vivoa/plugin-sdk 0.6.2 → 0.6.3

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.d.mts CHANGED
@@ -473,6 +473,13 @@ interface PaymentResult {
473
473
  redirectUrl?: string;
474
474
  rawResponse?: unknown;
475
475
  }
476
+ /**
477
+ * How the host should render the payment step for this gateway.
478
+ * - `card-in` host-owned card form, charged via `processPayment` (default).
479
+ * - `offsite-redirect` host sends the shopper to `redirectUrl`.
480
+ * - `embed` gateway-owned iframe initialised via `createPaymentSession`.
481
+ */
482
+ type PaymentRenderMode = 'card-in' | 'offsite-redirect' | 'embed';
476
483
  interface GatewayStaticConfig {
477
484
  code: PaymentGatewayCode;
478
485
  displayName: string;
@@ -480,6 +487,53 @@ interface GatewayStaticConfig {
480
487
  environment: GatewayEnvironment;
481
488
  supportedMethods: string[];
482
489
  requiredEnvVars: string[];
490
+ /**
491
+ * OPTIONAL render mode. Absent ⇒ host treats the gateway as `'card-in'`.
492
+ * Back-compat: existing card-in plugins (Wompi/Serfinsa) omit this field.
493
+ */
494
+ renderMode?: PaymentRenderMode;
495
+ }
496
+ /**
497
+ * Cardless payload for creating a gateway-hosted payment session (INV-1).
498
+ * Used by `embed` / `offsite-redirect` gateways where the host never touches
499
+ * card data — the shopper enters it inside the gateway's own surface.
500
+ */
501
+ interface PaymentSessionPayload {
502
+ /**
503
+ * Charge amount in DECIMAL major units, 2 decimal places (e.g. `12.34`).
504
+ * Matches Boxful `@boxful/contracts` `getTwoDecimals` / `toFixed(2)`.
505
+ */
506
+ amount: number;
507
+ currency: string;
508
+ orderId: string;
509
+ customer: PaymentCustomer;
510
+ /** Optional display/reconciliation hints shown on the gateway surface. */
511
+ orderSummary?: {
512
+ description?: string;
513
+ merchant?: string;
514
+ reference?: string;
515
+ };
516
+ }
517
+ /**
518
+ * Everything the host needs to mount a gateway-owned payment iframe.
519
+ * `sessionToken` is OPAQUE to the host; the amount is sealed server-side by the
520
+ * gateway, so the host cannot tamper with it.
521
+ */
522
+ interface EmbedInit {
523
+ sessionToken: string;
524
+ iframeUrl: string;
525
+ allowedOrigins: string[];
526
+ /** Expiry as epoch SECONDS. Owner TTL guidance: 15 minutes. */
527
+ expiresAt?: number;
528
+ }
529
+ /**
530
+ * Result of `createPaymentSession`. `embedInit` is present iff
531
+ * `renderMode === 'embed'`; `redirectUrl` iff `renderMode === 'offsite-redirect'`.
532
+ */
533
+ interface PaymentSessionResult {
534
+ renderMode: PaymentRenderMode;
535
+ embedInit?: EmbedInit;
536
+ redirectUrl?: string;
483
537
  }
484
538
  interface PaymentPluginConfig {
485
539
  configSchema: PluginConfigField[];
@@ -505,6 +559,13 @@ interface IPaymentPlugin extends IPlugin {
505
559
  queryTransaction?(ref: {
506
560
  transactionId: string;
507
561
  }, ctx: DispatchContext): Promise<PaymentResult>;
562
+ /**
563
+ * Create a gateway-hosted payment session for `embed` / `offsite-redirect`
564
+ * render modes. OPTIONAL — `card-in` plugins never implement it and charge
565
+ * via `processPayment` instead. STATELESS: gateway credentials arrive per
566
+ * call via `ctx.config` (INV-4); no card data is ever passed here (INV-1).
567
+ */
568
+ createPaymentSession?(payload: PaymentSessionPayload, ctx: DispatchContext): Promise<PaymentSessionResult>;
508
569
  }
509
570
 
510
571
  declare enum ShippingFeature {
@@ -1171,7 +1232,7 @@ declare function checkPermissions(required: string[], grantedRaw: string[]): Per
1171
1232
  * - MINOR: additive (new optional fields, new tokens) — backwards compatible.
1172
1233
  * - PATCH: docs/fixes with zero shape changes.
1173
1234
  */
1174
- declare const SDK_VERSION = "0.6.2";
1235
+ declare const SDK_VERSION = "0.6.3";
1175
1236
  /**
1176
1237
  * True when a plugin built against `pluginSdkVersion` can run on a host that
1177
1238
  * ships `hostSdkVersion`. Rule: same major, host minor >= plugin minor.
@@ -1180,4 +1241,4 @@ declare const SDK_VERSION = "0.6.2";
1180
1241
  */
1181
1242
  declare function isSdkCompatible(pluginSdkVersion: string, hostSdkVersion: string): boolean;
1182
1243
 
1183
- export { ANALYTICS_PLUGIN_TOKEN, type AccordionBlock, type AccordionSection, type ActionBlock, ActionVariant, type AnalyticsActionSource, type AnalyticsConsent, type AnalyticsEvent, type AnalyticsEventName, AnalyticsFeature, type AnalyticsItem, type AnalyticsMoney, type AnalyticsPluginConfig, type AnalyticsStaticConfig, type AnalyticsUserData, type AnalyticsUtm, type BannerBlock, type Block, type BlockBase, BlockType, type CalloutBlock, type Capability, CapabilityKind, type CardBlock, type CodConfig, type CodFeeConfig, CodFeeType, type ConditionalBlock, type ConditionalEquals, type ConditionalWhen, ConfigScope, type ConfigurablePlugin, type CopyFieldBlock, type CreateShipmentParams, type DispatchContext, type DividerBlock, type DomainEventHandler, type DomainEventName, type FieldBlock, type FieldDefinition, type FieldDependsOn, type FieldMap, type FieldOption, FieldType, FieldVariant, GatewayEnvironment, type GatewayStaticConfig, type GroupBlock, type HostApi, type HttpClient, type HttpRequest, type HttpResponse, type IAnalyticsPlugin, type IPaymentPlugin, type IPlugin, type IShippingPlugin, type ISuppliersPlugin, type InlineRowBlock, type KeyValueBlock, type KeyValueRow, LayoutMode, type Logger, type MarkdownBlock, MessageVariant, PAYMENT_PLUGIN_TOKEN, type PaymentCard, type PaymentCustomer, type PaymentGatewayCode, type PaymentPayload, type PaymentPluginConfig, type PaymentResult, type PaymentVerifyPayload, type Permission, type PermissionCheck, type PlaceSupplierOrderInput, type Plugin, type PluginActionContext, type PluginActionResult, type PluginConfigField, type PluginConfigFieldDependency, type PluginConfigResult, type PluginConfigValidation, type PluginFactory, type PluginManifest, PluginType, type RepeaterBlock, RepeaterSource, SDK_VERSION, SHIPPING_PLUGIN_TOKEN, SUPPLIERS_PLUGIN_TOKEN, type SecretStore, type SelectOption, type SequenceStore, type SetupAction, type SetupLayout, type SetupLayoutValidation, type SetupStep, type ShipmentAddress, type ShipmentParcel, type ShipmentResult, type ShippingDefaultConfig, ShippingFeature, type ShippingPluginConfig, type ShippingQuote, type ShippingQuoteParams, type ShippingStaticConfig, StepStatusFrom, type StepStatusFromAction, type StepStatusFromFields, type StepStatusSource, type StorageBroker, type SupplierCatalogQuery, type SupplierFulfillmentEvent, type SupplierListing, type SupplierListingAttribute, type SupplierListingPage, type SupplierListingVariant, type SupplierMoney, type SupplierOrderAddressLevel, type SupplierOrderCustomer, type SupplierOrderLine, type SupplierOrderResult, type SupplierOrderStatus, type SupplierShipTo, type SupplierStock, type SuppliersDefaultConfig, SuppliersFeature, type SuppliersPluginConfig, type SuppliersStaticConfig, type TabItem, type TabsBlock, type ToggleBlock, type TrackingEvent, TransactionStatus, type WebhookSignatureResult, analyticsCapability, capability, checkPermissions, createPluginConfig, crossValidateSetupLayout, definePlugin, field, isConfigurablePlugin, isPermissionGranted, isPluginFactory, isSdkCompatible, parsePermission, paymentCapability, shippingCapability, suppliersCapability, validateSetupLayout };
1244
+ export { ANALYTICS_PLUGIN_TOKEN, type AccordionBlock, type AccordionSection, type ActionBlock, ActionVariant, type AnalyticsActionSource, type AnalyticsConsent, type AnalyticsEvent, type AnalyticsEventName, AnalyticsFeature, type AnalyticsItem, type AnalyticsMoney, type AnalyticsPluginConfig, type AnalyticsStaticConfig, type AnalyticsUserData, type AnalyticsUtm, type BannerBlock, type Block, type BlockBase, BlockType, type CalloutBlock, type Capability, CapabilityKind, type CardBlock, type CodConfig, type CodFeeConfig, CodFeeType, type ConditionalBlock, type ConditionalEquals, type ConditionalWhen, ConfigScope, type ConfigurablePlugin, type CopyFieldBlock, type CreateShipmentParams, type DispatchContext, type DividerBlock, type DomainEventHandler, type DomainEventName, type EmbedInit, type FieldBlock, type FieldDefinition, type FieldDependsOn, type FieldMap, type FieldOption, FieldType, FieldVariant, GatewayEnvironment, type GatewayStaticConfig, type GroupBlock, type HostApi, type HttpClient, type HttpRequest, type HttpResponse, type IAnalyticsPlugin, type IPaymentPlugin, type IPlugin, type IShippingPlugin, type ISuppliersPlugin, type InlineRowBlock, type KeyValueBlock, type KeyValueRow, LayoutMode, type Logger, type MarkdownBlock, MessageVariant, PAYMENT_PLUGIN_TOKEN, type PaymentCard, type PaymentCustomer, type PaymentGatewayCode, type PaymentPayload, type PaymentPluginConfig, type PaymentRenderMode, type PaymentResult, type PaymentSessionPayload, type PaymentSessionResult, type PaymentVerifyPayload, type Permission, type PermissionCheck, type PlaceSupplierOrderInput, type Plugin, type PluginActionContext, type PluginActionResult, type PluginConfigField, type PluginConfigFieldDependency, type PluginConfigResult, type PluginConfigValidation, type PluginFactory, type PluginManifest, PluginType, type RepeaterBlock, RepeaterSource, SDK_VERSION, SHIPPING_PLUGIN_TOKEN, SUPPLIERS_PLUGIN_TOKEN, type SecretStore, type SelectOption, type SequenceStore, type SetupAction, type SetupLayout, type SetupLayoutValidation, type SetupStep, type ShipmentAddress, type ShipmentParcel, type ShipmentResult, type ShippingDefaultConfig, ShippingFeature, type ShippingPluginConfig, type ShippingQuote, type ShippingQuoteParams, type ShippingStaticConfig, StepStatusFrom, type StepStatusFromAction, type StepStatusFromFields, type StepStatusSource, type StorageBroker, type SupplierCatalogQuery, type SupplierFulfillmentEvent, type SupplierListing, type SupplierListingAttribute, type SupplierListingPage, type SupplierListingVariant, type SupplierMoney, type SupplierOrderAddressLevel, type SupplierOrderCustomer, type SupplierOrderLine, type SupplierOrderResult, type SupplierOrderStatus, type SupplierShipTo, type SupplierStock, type SuppliersDefaultConfig, SuppliersFeature, type SuppliersPluginConfig, type SuppliersStaticConfig, type TabItem, type TabsBlock, type ToggleBlock, type TrackingEvent, TransactionStatus, type WebhookSignatureResult, analyticsCapability, capability, checkPermissions, createPluginConfig, crossValidateSetupLayout, definePlugin, field, isConfigurablePlugin, isPermissionGranted, isPluginFactory, isSdkCompatible, parsePermission, paymentCapability, shippingCapability, suppliersCapability, validateSetupLayout };
package/dist/index.d.ts CHANGED
@@ -473,6 +473,13 @@ interface PaymentResult {
473
473
  redirectUrl?: string;
474
474
  rawResponse?: unknown;
475
475
  }
476
+ /**
477
+ * How the host should render the payment step for this gateway.
478
+ * - `card-in` host-owned card form, charged via `processPayment` (default).
479
+ * - `offsite-redirect` host sends the shopper to `redirectUrl`.
480
+ * - `embed` gateway-owned iframe initialised via `createPaymentSession`.
481
+ */
482
+ type PaymentRenderMode = 'card-in' | 'offsite-redirect' | 'embed';
476
483
  interface GatewayStaticConfig {
477
484
  code: PaymentGatewayCode;
478
485
  displayName: string;
@@ -480,6 +487,53 @@ interface GatewayStaticConfig {
480
487
  environment: GatewayEnvironment;
481
488
  supportedMethods: string[];
482
489
  requiredEnvVars: string[];
490
+ /**
491
+ * OPTIONAL render mode. Absent ⇒ host treats the gateway as `'card-in'`.
492
+ * Back-compat: existing card-in plugins (Wompi/Serfinsa) omit this field.
493
+ */
494
+ renderMode?: PaymentRenderMode;
495
+ }
496
+ /**
497
+ * Cardless payload for creating a gateway-hosted payment session (INV-1).
498
+ * Used by `embed` / `offsite-redirect` gateways where the host never touches
499
+ * card data — the shopper enters it inside the gateway's own surface.
500
+ */
501
+ interface PaymentSessionPayload {
502
+ /**
503
+ * Charge amount in DECIMAL major units, 2 decimal places (e.g. `12.34`).
504
+ * Matches Boxful `@boxful/contracts` `getTwoDecimals` / `toFixed(2)`.
505
+ */
506
+ amount: number;
507
+ currency: string;
508
+ orderId: string;
509
+ customer: PaymentCustomer;
510
+ /** Optional display/reconciliation hints shown on the gateway surface. */
511
+ orderSummary?: {
512
+ description?: string;
513
+ merchant?: string;
514
+ reference?: string;
515
+ };
516
+ }
517
+ /**
518
+ * Everything the host needs to mount a gateway-owned payment iframe.
519
+ * `sessionToken` is OPAQUE to the host; the amount is sealed server-side by the
520
+ * gateway, so the host cannot tamper with it.
521
+ */
522
+ interface EmbedInit {
523
+ sessionToken: string;
524
+ iframeUrl: string;
525
+ allowedOrigins: string[];
526
+ /** Expiry as epoch SECONDS. Owner TTL guidance: 15 minutes. */
527
+ expiresAt?: number;
528
+ }
529
+ /**
530
+ * Result of `createPaymentSession`. `embedInit` is present iff
531
+ * `renderMode === 'embed'`; `redirectUrl` iff `renderMode === 'offsite-redirect'`.
532
+ */
533
+ interface PaymentSessionResult {
534
+ renderMode: PaymentRenderMode;
535
+ embedInit?: EmbedInit;
536
+ redirectUrl?: string;
483
537
  }
484
538
  interface PaymentPluginConfig {
485
539
  configSchema: PluginConfigField[];
@@ -505,6 +559,13 @@ interface IPaymentPlugin extends IPlugin {
505
559
  queryTransaction?(ref: {
506
560
  transactionId: string;
507
561
  }, ctx: DispatchContext): Promise<PaymentResult>;
562
+ /**
563
+ * Create a gateway-hosted payment session for `embed` / `offsite-redirect`
564
+ * render modes. OPTIONAL — `card-in` plugins never implement it and charge
565
+ * via `processPayment` instead. STATELESS: gateway credentials arrive per
566
+ * call via `ctx.config` (INV-4); no card data is ever passed here (INV-1).
567
+ */
568
+ createPaymentSession?(payload: PaymentSessionPayload, ctx: DispatchContext): Promise<PaymentSessionResult>;
508
569
  }
509
570
 
510
571
  declare enum ShippingFeature {
@@ -1171,7 +1232,7 @@ declare function checkPermissions(required: string[], grantedRaw: string[]): Per
1171
1232
  * - MINOR: additive (new optional fields, new tokens) — backwards compatible.
1172
1233
  * - PATCH: docs/fixes with zero shape changes.
1173
1234
  */
1174
- declare const SDK_VERSION = "0.6.2";
1235
+ declare const SDK_VERSION = "0.6.3";
1175
1236
  /**
1176
1237
  * True when a plugin built against `pluginSdkVersion` can run on a host that
1177
1238
  * ships `hostSdkVersion`. Rule: same major, host minor >= plugin minor.
@@ -1180,4 +1241,4 @@ declare const SDK_VERSION = "0.6.2";
1180
1241
  */
1181
1242
  declare function isSdkCompatible(pluginSdkVersion: string, hostSdkVersion: string): boolean;
1182
1243
 
1183
- export { ANALYTICS_PLUGIN_TOKEN, type AccordionBlock, type AccordionSection, type ActionBlock, ActionVariant, type AnalyticsActionSource, type AnalyticsConsent, type AnalyticsEvent, type AnalyticsEventName, AnalyticsFeature, type AnalyticsItem, type AnalyticsMoney, type AnalyticsPluginConfig, type AnalyticsStaticConfig, type AnalyticsUserData, type AnalyticsUtm, type BannerBlock, type Block, type BlockBase, BlockType, type CalloutBlock, type Capability, CapabilityKind, type CardBlock, type CodConfig, type CodFeeConfig, CodFeeType, type ConditionalBlock, type ConditionalEquals, type ConditionalWhen, ConfigScope, type ConfigurablePlugin, type CopyFieldBlock, type CreateShipmentParams, type DispatchContext, type DividerBlock, type DomainEventHandler, type DomainEventName, type FieldBlock, type FieldDefinition, type FieldDependsOn, type FieldMap, type FieldOption, FieldType, FieldVariant, GatewayEnvironment, type GatewayStaticConfig, type GroupBlock, type HostApi, type HttpClient, type HttpRequest, type HttpResponse, type IAnalyticsPlugin, type IPaymentPlugin, type IPlugin, type IShippingPlugin, type ISuppliersPlugin, type InlineRowBlock, type KeyValueBlock, type KeyValueRow, LayoutMode, type Logger, type MarkdownBlock, MessageVariant, PAYMENT_PLUGIN_TOKEN, type PaymentCard, type PaymentCustomer, type PaymentGatewayCode, type PaymentPayload, type PaymentPluginConfig, type PaymentResult, type PaymentVerifyPayload, type Permission, type PermissionCheck, type PlaceSupplierOrderInput, type Plugin, type PluginActionContext, type PluginActionResult, type PluginConfigField, type PluginConfigFieldDependency, type PluginConfigResult, type PluginConfigValidation, type PluginFactory, type PluginManifest, PluginType, type RepeaterBlock, RepeaterSource, SDK_VERSION, SHIPPING_PLUGIN_TOKEN, SUPPLIERS_PLUGIN_TOKEN, type SecretStore, type SelectOption, type SequenceStore, type SetupAction, type SetupLayout, type SetupLayoutValidation, type SetupStep, type ShipmentAddress, type ShipmentParcel, type ShipmentResult, type ShippingDefaultConfig, ShippingFeature, type ShippingPluginConfig, type ShippingQuote, type ShippingQuoteParams, type ShippingStaticConfig, StepStatusFrom, type StepStatusFromAction, type StepStatusFromFields, type StepStatusSource, type StorageBroker, type SupplierCatalogQuery, type SupplierFulfillmentEvent, type SupplierListing, type SupplierListingAttribute, type SupplierListingPage, type SupplierListingVariant, type SupplierMoney, type SupplierOrderAddressLevel, type SupplierOrderCustomer, type SupplierOrderLine, type SupplierOrderResult, type SupplierOrderStatus, type SupplierShipTo, type SupplierStock, type SuppliersDefaultConfig, SuppliersFeature, type SuppliersPluginConfig, type SuppliersStaticConfig, type TabItem, type TabsBlock, type ToggleBlock, type TrackingEvent, TransactionStatus, type WebhookSignatureResult, analyticsCapability, capability, checkPermissions, createPluginConfig, crossValidateSetupLayout, definePlugin, field, isConfigurablePlugin, isPermissionGranted, isPluginFactory, isSdkCompatible, parsePermission, paymentCapability, shippingCapability, suppliersCapability, validateSetupLayout };
1244
+ export { ANALYTICS_PLUGIN_TOKEN, type AccordionBlock, type AccordionSection, type ActionBlock, ActionVariant, type AnalyticsActionSource, type AnalyticsConsent, type AnalyticsEvent, type AnalyticsEventName, AnalyticsFeature, type AnalyticsItem, type AnalyticsMoney, type AnalyticsPluginConfig, type AnalyticsStaticConfig, type AnalyticsUserData, type AnalyticsUtm, type BannerBlock, type Block, type BlockBase, BlockType, type CalloutBlock, type Capability, CapabilityKind, type CardBlock, type CodConfig, type CodFeeConfig, CodFeeType, type ConditionalBlock, type ConditionalEquals, type ConditionalWhen, ConfigScope, type ConfigurablePlugin, type CopyFieldBlock, type CreateShipmentParams, type DispatchContext, type DividerBlock, type DomainEventHandler, type DomainEventName, type EmbedInit, type FieldBlock, type FieldDefinition, type FieldDependsOn, type FieldMap, type FieldOption, FieldType, FieldVariant, GatewayEnvironment, type GatewayStaticConfig, type GroupBlock, type HostApi, type HttpClient, type HttpRequest, type HttpResponse, type IAnalyticsPlugin, type IPaymentPlugin, type IPlugin, type IShippingPlugin, type ISuppliersPlugin, type InlineRowBlock, type KeyValueBlock, type KeyValueRow, LayoutMode, type Logger, type MarkdownBlock, MessageVariant, PAYMENT_PLUGIN_TOKEN, type PaymentCard, type PaymentCustomer, type PaymentGatewayCode, type PaymentPayload, type PaymentPluginConfig, type PaymentRenderMode, type PaymentResult, type PaymentSessionPayload, type PaymentSessionResult, type PaymentVerifyPayload, type Permission, type PermissionCheck, type PlaceSupplierOrderInput, type Plugin, type PluginActionContext, type PluginActionResult, type PluginConfigField, type PluginConfigFieldDependency, type PluginConfigResult, type PluginConfigValidation, type PluginFactory, type PluginManifest, PluginType, type RepeaterBlock, RepeaterSource, SDK_VERSION, SHIPPING_PLUGIN_TOKEN, SUPPLIERS_PLUGIN_TOKEN, type SecretStore, type SelectOption, type SequenceStore, type SetupAction, type SetupLayout, type SetupLayoutValidation, type SetupStep, type ShipmentAddress, type ShipmentParcel, type ShipmentResult, type ShippingDefaultConfig, ShippingFeature, type ShippingPluginConfig, type ShippingQuote, type ShippingQuoteParams, type ShippingStaticConfig, StepStatusFrom, type StepStatusFromAction, type StepStatusFromFields, type StepStatusSource, type StorageBroker, type SupplierCatalogQuery, type SupplierFulfillmentEvent, type SupplierListing, type SupplierListingAttribute, type SupplierListingPage, type SupplierListingVariant, type SupplierMoney, type SupplierOrderAddressLevel, type SupplierOrderCustomer, type SupplierOrderLine, type SupplierOrderResult, type SupplierOrderStatus, type SupplierShipTo, type SupplierStock, type SuppliersDefaultConfig, SuppliersFeature, type SuppliersPluginConfig, type SuppliersStaticConfig, type TabItem, type TabsBlock, type ToggleBlock, type TrackingEvent, TransactionStatus, type WebhookSignatureResult, analyticsCapability, capability, checkPermissions, createPluginConfig, crossValidateSetupLayout, definePlugin, field, isConfigurablePlugin, isPermissionGranted, isPluginFactory, isSdkCompatible, parsePermission, paymentCapability, shippingCapability, suppliersCapability, validateSetupLayout };
package/dist/index.js CHANGED
@@ -544,7 +544,7 @@ function checkPermissions(required, grantedRaw) {
544
544
  }
545
545
 
546
546
  // src/version.ts
547
- var SDK_VERSION = "0.6.2";
547
+ var SDK_VERSION = "0.6.3";
548
548
  function isSdkCompatible(pluginSdkVersion, hostSdkVersion) {
549
549
  const parse = (v) => {
550
550
  const m = /^(\d+)\.(\d+)\.(\d+)/.exec(v);
package/dist/index.mjs CHANGED
@@ -502,7 +502,7 @@ function checkPermissions(required, grantedRaw) {
502
502
  }
503
503
 
504
504
  // src/version.ts
505
- var SDK_VERSION = "0.6.2";
505
+ var SDK_VERSION = "0.6.3";
506
506
  function isSdkCompatible(pluginSdkVersion, hostSdkVersion) {
507
507
  const parse = (v) => {
508
508
  const m = /^(\d+)\.(\d+)\.(\d+)/.exec(v);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vivoa/plugin-sdk",
3
- "version": "0.6.2",
3
+ "version": "0.6.3",
4
4
  "description": "Public contracts for Vivoa plugins (types, DI tokens, config + setup-layout validators)",
5
5
  "license": "MIT",
6
6
  "author": "Vivoa",