Merge pull request #13 from xtr-dev/dev

fix: resolve module resolution errors by replacing path aliases with …
This commit is contained in:
Bas
2025-09-18 20:51:35 +02:00
committed by GitHub
19 changed files with 61 additions and 62 deletions

View File

@@ -1,6 +1,6 @@
{ {
"name": "@xtr-dev/payload-billing", "name": "@xtr-dev/payload-billing",
"version": "0.1.4", "version": "0.1.5",
"description": "PayloadCMS plugin for billing and payment provider integrations with tracking and local testing", "description": "PayloadCMS plugin for billing and payment provider integrations with tracking and local testing",
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
@@ -106,7 +106,7 @@
"vitest": "^3.1.2" "vitest": "^3.1.2"
}, },
"peerDependencies": { "peerDependencies": {
"@mollie/api-client": "^3.7.0", "@mollie/api-client": "^3.7.0 || ^4.0.0",
"payload": "^3.37.0", "payload": "^3.37.0",
"stripe": "^18.5.0" "stripe": "^18.5.0"
}, },

View File

@@ -1,6 +1,6 @@
import type { Payment } from '@/plugin/types' import type { Payment } from '../plugin/types/index.js'
import type { Payload } from 'payload' import type { Payload } from 'payload'
import { useBillingPlugin } from '@/plugin' import { useBillingPlugin } from '../plugin/index.js'
export const initProviderPayment = (payload: Payload, payment: Partial<Payment>) => { export const initProviderPayment = (payload: Payload, payment: Partial<Payment>) => {
const billing = useBillingPlugin(payload) const billing = useBillingPlugin(payload)

View File

@@ -1,3 +1,3 @@
export { createInvoicesCollection } from './invoices' export { createInvoicesCollection } from './invoices.js'
export { createPaymentsCollection } from './payments' export { createPaymentsCollection } from './payments.js'
export { createRefundsCollection } from './refunds' export { createRefundsCollection } from './refunds.js'

View File

@@ -5,10 +5,10 @@ import {
CollectionBeforeValidateHook, CollectionBeforeValidateHook,
CollectionConfig, Field, CollectionConfig, Field,
} from 'payload' } from 'payload'
import type { BillingPluginConfig} from '@/plugin/config'; import type { BillingPluginConfig} from '../plugin/config.js';
import { defaults } from '@/plugin/config' import { defaults } from '../plugin/config.js'
import { extractSlug } from '@/plugin/utils' import { extractSlug } from '../plugin/utils.js'
import type { Invoice } from '@/plugin/types/invoices' import type { Invoice } from '../plugin/types/invoices.js'
export function createInvoicesCollection(pluginConfig: BillingPluginConfig): CollectionConfig { export function createInvoicesCollection(pluginConfig: BillingPluginConfig): CollectionConfig {
const {customerRelationSlug, customerInfoExtractor} = pluginConfig const {customerRelationSlug, customerInfoExtractor} = pluginConfig

View File

@@ -1,9 +1,9 @@
import type { AccessArgs, CollectionBeforeChangeHook, CollectionConfig, Field } from 'payload' import type { AccessArgs, CollectionBeforeChangeHook, CollectionConfig, Field } from 'payload'
import type { BillingPluginConfig} from '@/plugin/config'; import type { BillingPluginConfig} from '../plugin/config.js';
import { defaults } from '@/plugin/config' import { defaults } from '../plugin/config.js'
import { extractSlug } from '@/plugin/utils' import { extractSlug } from '../plugin/utils.js'
import type { Payment } from '@/plugin/types/payments' import type { Payment } from '../plugin/types/payments.js'
import { initProviderPayment } from '@/collections/hooks' import { initProviderPayment } from './hooks.js'
export function createPaymentsCollection(pluginConfig: BillingPluginConfig): CollectionConfig { export function createPaymentsCollection(pluginConfig: BillingPluginConfig): CollectionConfig {
const overrides = typeof pluginConfig.collections?.payments === 'object' ? pluginConfig.collections?.payments : {} const overrides = typeof pluginConfig.collections?.payments === 'object' ? pluginConfig.collections?.payments : {}

View File

@@ -1,7 +1,7 @@
import type { AccessArgs, CollectionConfig } from 'payload' import type { AccessArgs, CollectionConfig } from 'payload'
import { BillingPluginConfig, defaults } from '@/plugin/config' import { BillingPluginConfig, defaults } from '../plugin/config.js'
import { extractSlug } from '@/plugin/utils' import { extractSlug } from '../plugin/utils.js'
import { Payment } from '@/plugin/types' import { Payment } from '../plugin/types/index.js'
export function createRefundsCollection(pluginConfig: BillingPluginConfig): CollectionConfig { export function createRefundsCollection(pluginConfig: BillingPluginConfig): CollectionConfig {
// TODO: finish collection overrides // TODO: finish collection overrides

View File

@@ -1,4 +1,4 @@
export { billingPlugin } from './plugin' export { billingPlugin } from './plugin/index.js'
export type { BillingPluginConfig, CustomerInfoExtractor } from './plugin/config' export type { BillingPluginConfig, CustomerInfoExtractor } from './plugin/config.js'
export type { Invoice, Payment, Refund } from './plugin/types' export type { Invoice, Payment, Refund } from './plugin/types/index.js'

View File

@@ -1,6 +1,6 @@
import { CollectionConfig } from 'payload' import { CollectionConfig } from 'payload'
import { FieldsOverride } from '@/plugin/utils' import { FieldsOverride } from './utils.js'
import { PaymentProvider } from '@/plugin/types' import { PaymentProvider } from './types/index.js'
export const defaults = { export const defaults = {
paymentsCollection: 'payments', paymentsCollection: 'payments',

View File

@@ -1,8 +1,8 @@
import { createInvoicesCollection, createPaymentsCollection, createRefundsCollection } from '@/collections' import { createInvoicesCollection, createPaymentsCollection, createRefundsCollection } from '../collections/index.js'
import type { BillingPluginConfig } from '@/plugin/config' import type { BillingPluginConfig } from './config.js'
import type { Config, Payload } from 'payload' import type { Config, Payload } from 'payload'
import { createSingleton } from '@/plugin/singleton' import { createSingleton } from './singleton.js'
import type { PaymentProvider } from '@/providers' import type { PaymentProvider } from '../providers/index.js'
const singleton = createSingleton(Symbol('billingPlugin')) const singleton = createSingleton(Symbol('billingPlugin'))

View File

@@ -1,5 +1,5 @@
export * from './id' export * from './id.js'
export * from './invoices' export * from './invoices.js'
export * from './payments' export * from './payments.js'
export * from './refunds' export * from './refunds.js'
export * from '../../providers/types' export * from '../../providers/types.js'

View File

@@ -1,6 +1,5 @@
import { Payment } from '@/plugin/types/payments' import { Payment } from './payments.js'
import { Id } from './id.js'
import { Id } from '@/plugin/types/id'
export interface Invoice<TCustomer = unknown> { export interface Invoice<TCustomer = unknown> {
id: Id; id: Id;

View File

@@ -1,6 +1,6 @@
import { Refund } from '@/plugin/types/refunds' import { Refund } from './refunds.js'
import { Invoice } from '@/plugin/types/invoices' import { Invoice } from './invoices.js'
import { Id } from '@/plugin/types/id' import { Id } from './id.js'
export interface Payment { export interface Payment {
id: Id; id: Id;

View File

@@ -1,4 +1,4 @@
import { Payment } from '@/plugin/types/payments' import { Payment } from './payments.js'
export interface Refund { export interface Refund {
id: number; id: number;

View File

@@ -1,5 +1,5 @@
import type { CollectionConfig, CollectionSlug, Field } from 'payload' import type { CollectionConfig, CollectionSlug, Field } from 'payload'
import type { Id } from '@/plugin/types' import type { Id } from './types/index.js'
export type FieldsOverride = (args: { defaultFields: Field[] }) => Field[] export type FieldsOverride = (args: { defaultFields: Field[] }) => Field[]

View File

@@ -1,4 +1,4 @@
export * from './mollie' export * from './mollie.js'
export * from './stripe' export * from './stripe.js'
export * from './types' export * from './types.js'
export * from './currency' export * from './currency.js'

View File

@@ -1,7 +1,7 @@
import type { Payment } from '@/plugin/types/payments' import type { Payment } from '../plugin/types/payments.js'
import type { PaymentProvider } from '@/plugin/types' import type { PaymentProvider } from '../plugin/types/index.js'
import type { Payload } from 'payload' import type { Payload } from 'payload'
import { createSingleton } from '@/plugin/singleton' import { createSingleton } from '../plugin/singleton.js'
import type { createMollieClient, MollieClient } from '@mollie/api-client' import type { createMollieClient, MollieClient } from '@mollie/api-client'
import { import {
webhookResponses, webhookResponses,
@@ -10,8 +10,8 @@ import {
updateInvoiceOnPaymentSuccess, updateInvoiceOnPaymentSuccess,
handleWebhookError, handleWebhookError,
validateProductionUrl validateProductionUrl
} from './utils' } from './utils.js'
import { formatAmountForProvider, isValidAmount, isValidCurrencyCode } from './currency' import { formatAmountForProvider, isValidAmount, isValidCurrencyCode } from './currency.js'
const symbol = Symbol('mollie') const symbol = Symbol('mollie')
export type MollieProviderConfig = Parameters<typeof createMollieClient>[0] export type MollieProviderConfig = Parameters<typeof createMollieClient>[0]

View File

@@ -1,7 +1,7 @@
import type { Payment } from '@/plugin/types/payments' import type { Payment } from '../plugin/types/payments.js'
import type { PaymentProvider, ProviderData } from '@/plugin/types' import type { PaymentProvider, ProviderData } from '../plugin/types/index.js'
import type { Payload } from 'payload' import type { Payload } from 'payload'
import { createSingleton } from '@/plugin/singleton' import { createSingleton } from '../plugin/singleton.js'
import type Stripe from 'stripe' import type Stripe from 'stripe'
import { import {
webhookResponses, webhookResponses,
@@ -10,8 +10,8 @@ import {
updateInvoiceOnPaymentSuccess, updateInvoiceOnPaymentSuccess,
handleWebhookError, handleWebhookError,
logWebhookEvent logWebhookEvent
} from './utils' } from './utils.js'
import { isValidAmount, isValidCurrencyCode } from './currency' import { isValidAmount, isValidCurrencyCode } from './currency.js'
const symbol = Symbol('stripe') const symbol = Symbol('stripe')

View File

@@ -1,6 +1,6 @@
import type { Payment } from '@/plugin/types/payments' import type { Payment } from '../plugin/types/payments.js'
import type { Config, Payload } from 'payload' import type { Config, Payload } from 'payload'
import type { BillingPluginConfig } from '@/plugin/config' import type { BillingPluginConfig } from '../plugin/config.js'
export type InitPayment = (payload: Payload, payment: Partial<Payment>) => Promise<Partial<Payment>> export type InitPayment = (payload: Payload, payment: Partial<Payment>) => Promise<Partial<Payment>>

View File

@@ -1,9 +1,9 @@
import type { Payload } from 'payload' import type { Payload } from 'payload'
import type { Payment } from '@/plugin/types/payments' import type { Payment } from '../plugin/types/payments.js'
import type { BillingPluginConfig } from '@/plugin/config' import type { BillingPluginConfig } from '../plugin/config.js'
import type { ProviderData } from './types' import type { ProviderData } from './types.js'
import { defaults } from '@/plugin/config' import { defaults } from '../plugin/config.js'
import { extractSlug, toPayloadId } from '@/plugin/utils' import { extractSlug, toPayloadId } from '../plugin/utils.js'
/** /**
* Common webhook response utilities * Common webhook response utilities