@zeniai/client-epic-state 5.1.95-betaAK0 → 5.1.95
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/lib/entity/invoicing/invoicingCommonPayload.d.ts +0 -9
- package/lib/entity/invoicing/invoicingCommonPayload.js +0 -7
- package/lib/esm/entity/invoicing/invoicingCommonPayload.js +0 -6
- package/lib/esm/index.js +2 -2
- package/lib/esm/view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewPayload.js +4 -16
- package/lib/esm/view/invoicing/editInvoicingSubscriptionDetailView/invoicingSubscriptionFormConfig.js +1 -34
- package/lib/esm/view/invoicing/invoicingConfigView/invoicingConfigViewReducer.js +1 -5
- package/lib/index.d.ts +3 -3
- package/lib/index.js +7 -10
- package/lib/view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewPayload.d.ts +0 -4
- package/lib/view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewPayload.js +3 -15
- package/lib/view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewState.d.ts +0 -17
- package/lib/view/invoicing/editInvoicingSubscriptionDetailView/invoicingSubscriptionFormConfig.d.ts +0 -7
- package/lib/view/invoicing/editInvoicingSubscriptionDetailView/invoicingSubscriptionFormConfig.js +2 -37
- package/lib/view/invoicing/invoicingConfigView/invoicingConfigViewPayload.d.ts +1 -2
- package/lib/view/invoicing/invoicingConfigView/invoicingConfigViewReducer.d.ts +1 -1
- package/lib/view/invoicing/invoicingConfigView/invoicingConfigViewReducer.js +0 -4
- package/lib/view/invoicing/invoicingConfigView/invoicingConfigViewState.d.ts +1 -7
- package/package.json +1 -1
|
@@ -210,15 +210,6 @@ export interface InvoicingSubscriptionEditFieldOption {
|
|
|
210
210
|
name: string;
|
|
211
211
|
}
|
|
212
212
|
export declare function toInvoicingNamedOption(option: InvoicingNamedOptionWire): InvoicingNamedOption;
|
|
213
|
-
/**
|
|
214
|
-
* A config-driven map from some key (a pricing model, a status, …) to the
|
|
215
|
-
* options allowed for it. Lets the backend widen an allowed set without a
|
|
216
|
-
* frontend release, so consumers must branch on what the map returns rather
|
|
217
|
-
* than on a hardcoded list.
|
|
218
|
-
*/
|
|
219
|
-
export type InvoicingNamedOptionsByKeyWire = Record<string, InvoicingNamedOptionWire[]>;
|
|
220
|
-
export type InvoicingNamedOptionsByKey = Record<string, InvoicingNamedOption[]>;
|
|
221
|
-
export declare function toInvoicingNamedOptionsByKey(optionsByKey: InvoicingNamedOptionsByKeyWire): InvoicingNamedOptionsByKey;
|
|
222
213
|
export declare function toInvoicingSubscriptionEditFieldOption(option: InvoicingSubscriptionEditFieldOptionWire): InvoicingSubscriptionEditFieldOption;
|
|
223
214
|
export declare function toAuditLogEntityRouteOption(option: AuditLogEntityRouteOptionWire): AuditLogEntityRouteOption;
|
|
224
215
|
/**
|
|
@@ -15,7 +15,6 @@ exports.getInvoicingQboAccountMappingId = getInvoicingQboAccountMappingId;
|
|
|
15
15
|
exports.withInvoicingQboAccountMappingId = withInvoicingQboAccountMappingId;
|
|
16
16
|
exports.toInvoicingQboAccountMappingKindOption = toInvoicingQboAccountMappingKindOption;
|
|
17
17
|
exports.toInvoicingNamedOption = toInvoicingNamedOption;
|
|
18
|
-
exports.toInvoicingNamedOptionsByKey = toInvoicingNamedOptionsByKey;
|
|
19
18
|
exports.toInvoicingSubscriptionEditFieldOption = toInvoicingSubscriptionEditFieldOption;
|
|
20
19
|
exports.toAuditLogEntityRouteOption = toAuditLogEntityRouteOption;
|
|
21
20
|
exports.buildInvoicingEntityPath = buildInvoicingEntityPath;
|
|
@@ -201,12 +200,6 @@ function toInvoicingQboAccountMappingKindOption(option) {
|
|
|
201
200
|
function toInvoicingNamedOption(option) {
|
|
202
201
|
return { code: option.code, name: option.name };
|
|
203
202
|
}
|
|
204
|
-
function toInvoicingNamedOptionsByKey(optionsByKey) {
|
|
205
|
-
return Object.fromEntries(Object.entries(optionsByKey).map(([key, options]) => [
|
|
206
|
-
key,
|
|
207
|
-
(options ?? []).map(toInvoicingNamedOption),
|
|
208
|
-
]));
|
|
209
|
-
}
|
|
210
203
|
function toInvoicingSubscriptionEditFieldOption(option) {
|
|
211
204
|
return {
|
|
212
205
|
code: option.code,
|
|
@@ -179,12 +179,6 @@ export function toInvoicingQboAccountMappingKindOption(option) {
|
|
|
179
179
|
export function toInvoicingNamedOption(option) {
|
|
180
180
|
return { code: option.code, name: option.name };
|
|
181
181
|
}
|
|
182
|
-
export function toInvoicingNamedOptionsByKey(optionsByKey) {
|
|
183
|
-
return Object.fromEntries(Object.entries(optionsByKey).map(([key, options]) => [
|
|
184
|
-
key,
|
|
185
|
-
(options ?? []).map(toInvoicingNamedOption),
|
|
186
|
-
]));
|
|
187
|
-
}
|
|
188
182
|
export function toInvoicingSubscriptionEditFieldOption(option) {
|
|
189
183
|
return {
|
|
190
184
|
code: option.code,
|
package/lib/esm/index.js
CHANGED
|
@@ -759,7 +759,7 @@ export { initializeInvoicingCustomerAddress, resetEditInvoicingCustomerDetailVie
|
|
|
759
759
|
export { INVOICING_CUSTOMER_BILLING_ADDRESS_TYPE, INVOICING_CUSTOMER_TYPE_VALUES, INVOICING_NET_TERM_DAY_VALUES, INVOICING_TAXABILITY_VALUES, entityToInvoicingCustomerFormLocalData, initialInvoicingCustomerFormLocalData, } from './view/invoicing/editInvoicingCustomerDetailView/invoicingCustomerFormConfig';
|
|
760
760
|
export { getInvoicingCustomerFormView } from './view/invoicing/editInvoicingCustomerDetailView/editInvoicingCustomerDetailViewSelector';
|
|
761
761
|
export { fetchInvoicingSubscriptionFormPage, initializeInvoicingSubscriptionAddress, resetEditInvoicingSubscriptionDetailView, submitInvoicingSubscriptionForm, updateInvoicingSubscriptionFormDraft, } from './view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewReducer';
|
|
762
|
-
export { INVOICING_SUBSCRIPTION_BILLING_FREQUENCY_VALUES, INVOICING_SUBSCRIPTION_SHIPPING_ADDRESS_TYPE, entityToInvoicingSubscriptionFormLocalData, initialInvoicingSubscriptionFormLocalData,
|
|
762
|
+
export { INVOICING_SUBSCRIPTION_BILLING_FREQUENCY_VALUES, INVOICING_SUBSCRIPTION_SHIPPING_ADDRESS_TYPE, entityToInvoicingSubscriptionFormLocalData, initialInvoicingSubscriptionFormLocalData, } from './view/invoicing/editInvoicingSubscriptionDetailView/invoicingSubscriptionFormConfig';
|
|
763
763
|
export { getEditInvoicingSubscriptionDetailViewState, getInvoicingSubscriptionFormView, } from './view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewSelector';
|
|
764
764
|
export { archiveInvoicingCatalogSubFamily, createInvoicingCatalogSubFamily, resetEditInvoicingCatalogItemDetailView, saveInvoicingCatalogItem, submitInvoicingCatalogItemForm, updateInvoicingCatalogItemFormDraft, } from './view/invoicing/editInvoicingCatalogItemDetailView/editInvoicingCatalogItemDetailViewReducer';
|
|
765
765
|
export { catalogDetailEditValuesToSavePayload, createSubFamilyFormToPayload, planToCatalogDetailEditValues, productToCreateSubFamilyFormValues, } from './view/invoicing/editInvoicingCatalogItemDetailView/catalogDetailEditPayload';
|
|
@@ -851,7 +851,7 @@ export { isStripeConnectedFromSettings } from './view/invoicing/settingsView/inv
|
|
|
851
851
|
// ── Invoicing: QBO integration ────────────────────────────────────────────────
|
|
852
852
|
export { clearInvoicingQboView, fetchInvoicingQboAccounts, fetchInvoicingQboClasses, fetchInvoicingQboConnection, fetchInvoicingQboSyncHealth, retryInvoicingQboSyncTask, startInvoicingQboBackfill, } from './view/invoicing/invoicingQboView/invoicingQboViewReducer';
|
|
853
853
|
export { getInvoicingQboView } from './view/invoicing/invoicingQboView/invoicingQboViewSelector';
|
|
854
|
-
export { INVOICING_QBO_CUSTOMER_MATCHING_MODES, getInvoicingQboAccountMappingId,
|
|
854
|
+
export { INVOICING_QBO_CUSTOMER_MATCHING_MODES, getInvoicingQboAccountMappingId, toInvoicingQboCustomerMatchingMode, withInvoicingQboAccountMappingId, } from './entity/invoicing/invoicingCommonPayload';
|
|
855
855
|
// ── Invoicing: config ─────────────────────────────────────────────────────────
|
|
856
856
|
export { acceptInvoicingTerms, clearInvoicingConfig, enableInvoicing, fetchInvoicingConfig, resetInvoicingConfigActionStates, updateInvoicingConfig, } from './view/invoicing/invoicingConfigView/invoicingConfigViewReducer';
|
|
857
857
|
export { getInvoicingConfigView } from './view/invoicing/invoicingConfigView/invoicingConfigViewSelector';
|
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
import { toAddressUpdatableInfoPayload } from '../../addressView/addressViewPayload';
|
|
2
|
-
import { billingFrequencyToPeriod
|
|
2
|
+
import { billingFrequencyToPeriod } from './invoicingSubscriptionFormConfig';
|
|
3
3
|
/**
|
|
4
4
|
* Build the create/update subscription request body from the form draft. The
|
|
5
5
|
* shipping address is sent as an object (captured via the shared Address
|
|
6
6
|
* screen); the backend persists it — same pattern as the customer save flow.
|
|
7
|
-
*
|
|
8
|
-
* `remaining_billing_cycles` is omitted when the user left the field empty, so
|
|
9
|
-
* the backend applies the plan's own `billing_cycles` (or renews forever when
|
|
10
|
-
* the plan sets no limit) rather than being pinned to a value the form invented.
|
|
11
7
|
*/
|
|
12
8
|
export const localDataToSaveInvoicingSubscriptionPayload = (localData, shippingAddress) => {
|
|
13
9
|
const frequency = billingFrequencyToPeriod(localData.billingFrequency);
|
|
@@ -15,40 +11,32 @@ export const localDataToSaveInvoicingSubscriptionPayload = (localData, shippingA
|
|
|
15
11
|
{
|
|
16
12
|
item_price_code: localData.planPriceCode,
|
|
17
13
|
item_type: 'plan',
|
|
18
|
-
quantity:
|
|
14
|
+
quantity: Math.max(1, localData.planQuantity || 1),
|
|
19
15
|
},
|
|
20
16
|
...localData.addonPriceCodes.map((priceCode) => ({
|
|
21
17
|
item_price_code: priceCode,
|
|
22
18
|
item_type: 'addon',
|
|
23
|
-
quantity:
|
|
19
|
+
quantity: 1,
|
|
24
20
|
})),
|
|
25
21
|
...localData.chargePriceCodes.map((priceCode) => ({
|
|
26
22
|
item_price_code: priceCode,
|
|
27
23
|
item_type: 'charge',
|
|
28
|
-
quantity:
|
|
24
|
+
quantity: 1,
|
|
29
25
|
})),
|
|
30
26
|
];
|
|
31
27
|
const setupFee = localData.setupFee?.amount;
|
|
32
28
|
const poNumber = localData.poNumber.trim();
|
|
33
29
|
const trialEnd = localData.trialEnd.trim();
|
|
34
|
-
const startedAt = localData.startedAt.trim();
|
|
35
|
-
const remainingBillingCycles = localData.remainingBillingCycles.trim();
|
|
36
30
|
return {
|
|
37
31
|
auto_collection: localData.autoCollection ? 'on' : 'off',
|
|
38
32
|
billing_period: frequency.period,
|
|
39
33
|
billing_period_unit: frequency.unit,
|
|
40
34
|
currency_code: localData.preferredCurrencyCode,
|
|
41
35
|
customer_id: localData.customerId,
|
|
42
|
-
started_at: startedAt !== '' ? startedAt : invoicingSubscriptionTodayIso(),
|
|
43
36
|
subscription_items: items,
|
|
44
37
|
...(setupFee != null ? { setup_fee: setupFee } : {}),
|
|
45
38
|
...(poNumber !== '' ? { po_number: poNumber } : {}),
|
|
46
39
|
...(trialEnd !== '' ? { trial_end: trialEnd } : {}),
|
|
47
|
-
...(remainingBillingCycles !== ''
|
|
48
|
-
? {
|
|
49
|
-
remaining_billing_cycles: toInvoicingSubscriptionQuantity(Number(remainingBillingCycles)),
|
|
50
|
-
}
|
|
51
|
-
: {}),
|
|
52
40
|
...(localData.couponId !== '' ? { coupon_ids: [localData.couponId] } : {}),
|
|
53
41
|
...(shippingAddress != null
|
|
54
42
|
? { shipping_address: toAddressUpdatableInfoPayload(shippingAddress) }
|
|
@@ -33,42 +33,17 @@ const subscriptionItemPriceCodes = (subscription, itemType) => subscription?.sub
|
|
|
33
33
|
?.filter((item) => item.itemType === itemType)
|
|
34
34
|
.map((item) => item.itemPriceCode)
|
|
35
35
|
.filter((code) => code != null && code !== '') ?? [];
|
|
36
|
-
const subscriptionItemQuantities = (subscription, itemType) => {
|
|
37
|
-
const quantities = {};
|
|
38
|
-
subscription?.subscriptionItems
|
|
39
|
-
?.filter((item) => item.itemType === itemType)
|
|
40
|
-
.forEach((item) => {
|
|
41
|
-
if (item.itemPriceCode != null && item.itemPriceCode !== '') {
|
|
42
|
-
quantities[item.itemPriceCode] = toInvoicingSubscriptionQuantity(item.quantity);
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
return quantities;
|
|
46
|
-
};
|
|
47
|
-
/** Today as `YYYY-MM-DD`, the default subscription start date. */
|
|
48
|
-
export const invoicingSubscriptionTodayIso = () => new Date().toISOString().slice(0, 10);
|
|
49
|
-
/**
|
|
50
|
-
* Clamp a subscription-item quantity to the minimum the API accepts. Shared by
|
|
51
|
-
* the plan, add-on and charge items so none of them can bill a 0 or a fraction.
|
|
52
|
-
*/
|
|
53
|
-
export const toInvoicingSubscriptionQuantity = (quantity) => {
|
|
54
|
-
const whole = Math.floor(Number(quantity));
|
|
55
|
-
return Number.isFinite(whole) && whole > 0 ? whole : 1;
|
|
56
|
-
};
|
|
57
36
|
export const initialInvoicingSubscriptionFormLocalData = {
|
|
58
37
|
addonPriceCodes: [],
|
|
59
|
-
addonQuantities: {},
|
|
60
38
|
autoCollection: true,
|
|
61
39
|
billingFrequency: 'monthly',
|
|
62
40
|
chargePriceCodes: [],
|
|
63
|
-
chargeQuantities: {},
|
|
64
41
|
couponId: '',
|
|
65
42
|
customerId: '',
|
|
66
43
|
planPriceCode: '',
|
|
67
44
|
planQuantity: 1,
|
|
68
45
|
poNumber: '',
|
|
69
46
|
preferredCurrencyCode: 'USD',
|
|
70
|
-
remainingBillingCycles: '',
|
|
71
|
-
startedAt: '',
|
|
72
47
|
trialEnd: '',
|
|
73
48
|
};
|
|
74
49
|
/** Seed the form draft from an existing subscription entity (edit mode). */
|
|
@@ -79,26 +54,18 @@ export const entityToInvoicingSubscriptionFormLocalData = (subscription) => {
|
|
|
79
54
|
const planItem = subscription.subscriptionItems?.find((item) => item.itemType === 'plan');
|
|
80
55
|
return {
|
|
81
56
|
addonPriceCodes: subscriptionItemPriceCodes(subscription, 'addon'),
|
|
82
|
-
addonQuantities: subscriptionItemQuantities(subscription, 'addon'),
|
|
83
57
|
autoCollection: (subscription.autoCollection ?? 'on') === 'on',
|
|
84
58
|
billingFrequency: periodToBillingFrequency(subscription.billingPeriod, subscription.billingPeriodUnit),
|
|
85
59
|
chargePriceCodes: subscriptionItemPriceCodes(subscription, 'charge'),
|
|
86
|
-
chargeQuantities: subscriptionItemQuantities(subscription, 'charge'),
|
|
87
60
|
couponId: subscription.coupons?.[0]?.couponCode ??
|
|
88
61
|
subscription.coupons?.[0]?.couponID ??
|
|
89
62
|
'',
|
|
90
63
|
customerId: subscription.customerID ?? '',
|
|
91
64
|
planPriceCode: subscriptionItemPriceCodes(subscription, 'plan')[0] ?? '',
|
|
92
|
-
planQuantity:
|
|
65
|
+
planQuantity: planItem?.quantity ?? 1,
|
|
93
66
|
poNumber: subscription.poNumber ?? '',
|
|
94
67
|
preferredCurrencyCode: subscription.currencyCode ?? 'USD',
|
|
95
|
-
remainingBillingCycles: subscription.remainingBillingCycles != null
|
|
96
|
-
? String(subscription.remainingBillingCycles)
|
|
97
|
-
: '',
|
|
98
68
|
setupFee: subscription.setupFee,
|
|
99
|
-
startedAt: subscription.startedAt != null
|
|
100
|
-
? subscription.startedAt.format('YYYY-MM-DD')
|
|
101
|
-
: '',
|
|
102
69
|
trialEnd: subscription.trialEnd != null
|
|
103
70
|
? subscription.trialEnd.format('YYYY-MM-DD')
|
|
104
71
|
: '',
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createSlice } from '@reduxjs/toolkit';
|
|
2
|
-
import { toAuditLogEntityRouteOption, toInvoicingCatalogItemLifecycleActionOption, toInvoicingCatalogProductLifecycleActionOption, toInvoicingDiscountLifecycleActionOption, toInvoicingDunningAction, toInvoicingNamedOption,
|
|
2
|
+
import { toAuditLogEntityRouteOption, toInvoicingCatalogItemLifecycleActionOption, toInvoicingCatalogProductLifecycleActionOption, toInvoicingDiscountLifecycleActionOption, toInvoicingDunningAction, toInvoicingNamedOption, toInvoicingQboAccountMappingKindOption, toInvoicingSubscriptionEditFieldOption, toInvoicingSubscriptionLifecycleActionOption, } from '../../../entity/invoicing/invoicingCommonPayload';
|
|
3
3
|
import { clearAll } from '../../../rootActions';
|
|
4
4
|
export const initialState = {
|
|
5
5
|
fetchState: 'Not-Started',
|
|
@@ -10,7 +10,6 @@ export const initialState = {
|
|
|
10
10
|
auditLogSourceLabels: [],
|
|
11
11
|
autoCollectionOptions: [],
|
|
12
12
|
billingPeriodUnitOptions: [],
|
|
13
|
-
catalogTierTypeOptionsByPricingModel: undefined,
|
|
14
13
|
catalogTrialEndActionOptions: [],
|
|
15
14
|
catalogTrialUnitOptions: [],
|
|
16
15
|
customerTypeOptions: [],
|
|
@@ -62,9 +61,6 @@ export function mapInvoicingConfigPayloadToState(payload) {
|
|
|
62
61
|
})),
|
|
63
62
|
autoCollectionOptions: (payload.auto_collection_options ?? []).map(toInvoicingNamedOption),
|
|
64
63
|
billingPeriodUnitOptions: (payload.billing_period_unit_options ?? []).map(toInvoicingNamedOption),
|
|
65
|
-
catalogTierTypeOptionsByPricingModel: payload.catalog_tier_type_options_by_pricing_model != null
|
|
66
|
-
? toInvoicingNamedOptionsByKey(payload.catalog_tier_type_options_by_pricing_model)
|
|
67
|
-
: undefined,
|
|
68
64
|
catalogTrialEndActionOptions: (payload.catalog_trial_end_action_options ?? []).map(toInvoicingNamedOption),
|
|
69
65
|
catalogTrialUnitOptions: (payload.catalog_trial_unit_options ?? []).map(toInvoicingNamedOption),
|
|
70
66
|
customerTypeOptions: (payload.customer_type_options ?? []).map(toInvoicingNamedOption),
|
package/lib/index.d.ts
CHANGED
|
@@ -1096,7 +1096,7 @@ export type { InvoicingCustomerFormView } from './view/invoicing/editInvoicingCu
|
|
|
1096
1096
|
export { fetchInvoicingSubscriptionFormPage, initializeInvoicingSubscriptionAddress, resetEditInvoicingSubscriptionDetailView, submitInvoicingSubscriptionForm, updateInvoicingSubscriptionFormDraft, } from './view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewReducer';
|
|
1097
1097
|
export type { SubmitInvoicingSubscriptionFormPayload, UpdateInvoicingSubscriptionFormDraftPayload, } from './view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewReducer';
|
|
1098
1098
|
export type { InvoicingSubscriptionFormLocalData } from './view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewState';
|
|
1099
|
-
export { INVOICING_SUBSCRIPTION_BILLING_FREQUENCY_VALUES, INVOICING_SUBSCRIPTION_SHIPPING_ADDRESS_TYPE, entityToInvoicingSubscriptionFormLocalData, initialInvoicingSubscriptionFormLocalData,
|
|
1099
|
+
export { INVOICING_SUBSCRIPTION_BILLING_FREQUENCY_VALUES, INVOICING_SUBSCRIPTION_SHIPPING_ADDRESS_TYPE, entityToInvoicingSubscriptionFormLocalData, initialInvoicingSubscriptionFormLocalData, } from './view/invoicing/editInvoicingSubscriptionDetailView/invoicingSubscriptionFormConfig';
|
|
1100
1100
|
export { getEditInvoicingSubscriptionDetailViewState, getInvoicingSubscriptionFormView, } from './view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewSelector';
|
|
1101
1101
|
export type { EditInvoicingSubscriptionDetailView, InvoicingSubscriptionFormView, } from './view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewSelector';
|
|
1102
1102
|
export { archiveInvoicingCatalogSubFamily, createInvoicingCatalogSubFamily, resetEditInvoicingCatalogItemDetailView, saveInvoicingCatalogItem, submitInvoicingCatalogItemForm, updateInvoicingCatalogItemFormDraft, } from './view/invoicing/editInvoicingCatalogItemDetailView/editInvoicingCatalogItemDetailViewReducer';
|
|
@@ -1230,8 +1230,8 @@ export { clearInvoicingQboView, fetchInvoicingQboAccounts, fetchInvoicingQboClas
|
|
|
1230
1230
|
export { getInvoicingQboView } from './view/invoicing/invoicingQboView/invoicingQboViewSelector';
|
|
1231
1231
|
export type { InvoicingQboView } from './view/invoicing/invoicingQboView/invoicingQboViewSelector';
|
|
1232
1232
|
export type { InvoicingQboAccountOption, InvoicingQboConnection, InvoicingQboFailedTask, InvoicingQboSyncHealth, } from './view/invoicing/invoicingQboView/invoicingQboViewPayload';
|
|
1233
|
-
export { INVOICING_QBO_CUSTOMER_MATCHING_MODES, getInvoicingQboAccountMappingId,
|
|
1234
|
-
export type { InvoicingNamedOption,
|
|
1233
|
+
export { INVOICING_QBO_CUSTOMER_MATCHING_MODES, getInvoicingQboAccountMappingId, toInvoicingQboCustomerMatchingMode, withInvoicingQboAccountMappingId, } from './entity/invoicing/invoicingCommonPayload';
|
|
1234
|
+
export type { InvoicingNamedOption, InvoicingQboAccountMappingKindOption, InvoicingQboAccountMappingsPayload, InvoicingQboCustomerMatchingMode, InvoicingQboSettingsPayload, } from './entity/invoicing/invoicingCommonPayload';
|
|
1235
1235
|
export { acceptInvoicingTerms, clearInvoicingConfig, enableInvoicing, fetchInvoicingConfig, resetInvoicingConfigActionStates, updateInvoicingConfig, } from './view/invoicing/invoicingConfigView/invoicingConfigViewReducer';
|
|
1236
1236
|
export { getInvoicingConfigView } from './view/invoicing/invoicingConfigView/invoicingConfigViewSelector';
|
|
1237
1237
|
export type { InvoicingConfigView } from './view/invoicing/invoicingConfigView/invoicingConfigViewSelector';
|
package/lib/index.js
CHANGED
|
@@ -79,13 +79,13 @@ exports.seedAiCardPolicyFormDraft = exports.createCardPolicyTemplates = exports.
|
|
|
79
79
|
exports.getUpdateCardPolicyFetchState = exports.getCardPolicyFormDraft = exports.getCardPolicyDetailView = exports.getCardPolicyDetailFetchState = exports.updateCardPolicyFormDraft = exports.updateCardPolicyFetchStatus = exports.updateCardPolicyDetailFetchStatus = exports.updateCardPolicy = exports.fetchCardPolicyDetail = exports.clearCardPolicyDetail = exports.getCardPolicyTemplateIds = exports.getCardPolicyListView = exports.getCardPolicyListFetchState = exports.getArchiveCardPolicyFetchState = exports.updateCardPolicyListFetchStatus = exports.updateArchiveCardPolicyFetchStatus = exports.prependCardPolicyTemplateIds = exports.fetchCardPolicyList = exports.clearCardPolicyList = exports.archiveCardPolicy = exports.toManualCardPolicyTemplateRequestFromDraft = exports.toBulkCardPolicyTemplateRequestsFromDraft = exports.toCardPolicyTemplateRequestFromDraft = exports.applyAiCardPolicyFormDraftUpdate = exports.deriveAiPolicyReviewRowsFromInputs = exports.buildManualCardPolicyFormDraftSeed = exports.buildUploadReviewRows = exports.buildEmptyLimitRows = exports.buildAiCardPolicyFormDraftSeed = exports.toVendorChipFieldValue = exports.toMccCategoryChipFieldValue = exports.buildVendorChipId = exports.buildMccCategoryChipId = exports.VENDOR_CHIP_ID_PREFIX = exports.MCC_CHIP_ID_PREFIX = exports.toMccCategoryLike = exports.CARD_POLICY_LIMIT_ROW_ID_TRANSACTION = exports.CARD_POLICY_LIMIT_ROW_ID_REQUIRE_RECEIPT = exports.getManualCardPolicyFormDraft = exports.getLastCreatedCardPolicyTemplateIds = exports.getLastCreatedCardPolicyTemplateId = exports.getLastCreateCardPolicyTemplateErrors = exports.getLastCreateCardPolicySourceChatSessionId = exports.getCreateCardPolicyTemplateRequestState = exports.getAiCardPolicyFormDraft = exports.updateManualCardPolicyFormDraft = exports.updateCreateCardPolicyTemplateRequestState = exports.updateAiCardPolicyFormDraftFromUploadPlan = exports.updateAiCardPolicyFormDraft = exports.seedManualCardPolicyFormDraft = void 0;
|
|
80
80
|
exports.clearAllInvoices = exports.mapAuditLogEntry = exports.toAuditLogEntityRouteOption = exports.isInvoicingEntityLinkable = exports.buildInvoicingEntityPath = exports.toInvoicingDiscountLifecycleActionOption = exports.toInvoicingDiscountLifecycleAction = exports.toInvoicingCatalogProductLifecycleActionOption = exports.toInvoicingCatalogItemLifecycleActionOption = exports.toInvoicingCatalogProductLifecycleAction = exports.toInvoicingCatalogItemLifecycleAction = exports.toInvoicingSubscriptionLifecycleActionOption = exports.toInvoicingSubscriptionLifecycleAction = exports.toInvoicingDunningAction = exports.INVOICING_DISCOUNT_LIFECYCLE_ACTIONS = exports.INVOICING_CATALOG_PRODUCT_LIFECYCLE_ACTIONS = exports.INVOICING_CATALOG_ITEM_LIFECYCLE_ACTIONS = exports.INVOICING_SUBSCRIPTION_LIFECYCLE_ACTIONS = exports.INVOICING_DUNNING_ACTIONS = exports.toKycProvidedDocumentTypeFromAllowed = exports.toKycProvidedDocumentType = exports.DEFAULT_SESSION_CONFIG = exports.SessionManager = exports.getTransactionActivityLogView = exports.fetchTransactionActivityLog = exports.BULK_UPLOAD_BAR_COMPLETE_HOLD_MS = exports.BULK_UPLOAD_AUTOMATCHING_TIMEOUT_MS = exports.getAutoTransferRuleHistory = exports.getAutoTransferRuleById = exports.getAutoTransferRules = exports.clearRuleUpdateLocalData = exports.updateRuleLocalData = exports.fetchAutoTransferReviewDetail = exports.fetchAutoTransferRuleHistory = exports.deleteAutoTransferRule = exports.updateAutoTransferRule = exports.createAutoTransferRule = exports.fetchAutoTransferRules = exports.getTreasuryTaxLetters = exports.fetchTreasuryTaxLetterList = exports.getTreasuryStatements = exports.fetchTreasuryStatementList = exports.getTreasuryTransferMoney = exports.clearTreasuryTransferMoney = exports.updateTreasuryTransferMoneyLocalData = exports.executeTreasuryTransferMoney = exports.getTreasuryDetail = exports.updateTreasuryTransactionListUIState = exports.fetchTreasuryTransactionList = exports.fetchTreasuryOverviewDetail = void 0;
|
|
81
81
|
exports.initializeRecordPaymentDraftFromInvoice = exports.getCreateCreditNoteView = exports.getCreateCreditNoteFormView = exports.initialCreateCreditNoteFormLocalData = exports.localDataToCreateCreditNotePayload = exports.updateCreateCreditNoteFormDraft = exports.submitCreateCreditNote = exports.resetCreateCreditNote = exports.createCreditNoteSuccess = exports.createCreditNoteFailure = exports.getIssueCreditNoteView = exports.initialIssueCreditNoteFormLocalData = exports.INVOICING_CREDIT_NOTE_REASON_CODES = exports.localDataToIssueCreditNotePayload = exports.initializeIssueCreditNoteDraftFromInvoice = exports.computeIssueCreditNoteTotal = exports.updateIssueCreditNoteFormDraft = exports.submitIssueCreditNote = exports.resetIssueCreditNote = exports.issueCreditNoteSuccess = exports.issueCreditNoteFailure = exports.initializeIssueCreditNoteDraft = exports.updateRecordPaymentFormDraft = exports.submitRecordPayment = exports.initializeRecordPaymentDraft = exports.resetRecordPayment = exports.initialInvoicingCreateInvoiceFormLocalData = exports.createInvoiceFormLocalDataToRequest = exports.blankInvoicingCreateInvoiceLineItem = exports.updateInvoicingCreateInvoiceFormDraft = exports.resetCreateInvoice = exports.fetchCreateInvoiceFormPage = exports.createInvoice = exports.getInvoiceDetail = exports.fetchInvoiceDetail = exports.clearAllInvoiceDetail = exports.getInvoiceListView = exports.INVOICING_INVOICE_TABS = exports.ALL_INVOICING_INVOICE_TAB_IDS = exports.updateInvoiceListFilters = exports.setInvoiceActiveTab = exports.fetchInvoiceListPage = exports.fetchInvoiceList = exports.fetchInvoiceKPIs = exports.fetchInvoiceCounts = exports.clearInvoiceList = exports.getInvoicesByIds = exports.getInvoiceById = exports.updateInvoices = exports.removeInvoice = void 0;
|
|
82
|
-
exports.createSubFamilyFormToPayload = exports.catalogDetailEditValuesToSavePayload = exports.updateInvoicingCatalogItemFormDraft = exports.submitInvoicingCatalogItemForm = exports.saveInvoicingCatalogItem = exports.resetEditInvoicingCatalogItemDetailView = exports.createInvoicingCatalogSubFamily = exports.archiveInvoicingCatalogSubFamily = exports.getInvoicingSubscriptionFormView = exports.getEditInvoicingSubscriptionDetailViewState = exports.
|
|
83
|
-
exports.fetchInvoicingDataImportStatus = exports.clearInvoicingDataImportView = exports.getInvoicingPaymentActionState = exports.runInvoicingPaymentAction = exports.clearInvoicingPaymentAction = exports.getInvoicingDunningActionState = exports.runInvoicingDunningAction = exports.clearInvoicingDunningAction = exports.getInvoicingSubscriptionActionState = exports.runInvoicingSubscriptionAction = exports.clearInvoicingSubscriptionAction = exports.getInvoicingDiscountActionState = exports.runInvoicingDiscountAction = exports.clearInvoicingDiscountAction = exports.getInvoicingCatalogActionState = exports.runInvoicingCatalogProductAction = exports.runInvoicingCatalogPlanAction = exports.clearInvoicingCatalogAction = exports.getInvoicingInvoiceActionState = exports.updateInvoicingInvoice = exports.runInvoicingInvoiceAction = exports.clearInvoicingInvoiceAction = exports.getInvoicingCouponFormView = exports.getEditInvoicingCouponDetailViewState = exports.initialInvoicingCouponFormLocalData = exports.entityToInvoicingCouponFormLocalData = exports.updateInvoicingCouponFormDraft = exports.submitInvoicingCouponForm = exports.saveInvoicingCoupon = exports.resetEditInvoicingCouponDetailView = exports.getSavedInvoicingCatalogItemKind = exports.getSavedInvoicingCatalogItemId = exports.getInvoicingCatalogItemFormView = exports.getInvoicingApplicableCatalogItemOptions = exports.getEditInvoicingCatalogItemDetailViewState = exports.isTieredCatalogPricingModel = exports.initialInvoicingCatalogItemFormLocalData = exports.entityToInvoicingCatalogItemFormLocalData = exports.blankInvoicingCatalogTier = exports.blankInvoicingCatalogSubFamily = exports.INVOICING_CATALOG_TYPE_VALUES = exports.INVOICING_CATALOG_TRIAL_UNIT_VALUES = exports.INVOICING_CATALOG_TRIAL_END_ACTION_VALUES = exports.INVOICING_CATALOG_TIER_TYPE_VALUES = exports.INVOICING_CATALOG_PRORATION_VALUES = exports.INVOICING_CATALOG_PRICING_MODEL_VALUES = exports.INVOICING_CATALOG_PERIOD_UNIT_VALUES = exports.INVOICING_CATALOG_APPLICABILITY_VALUES =
|
|
84
|
-
exports.clearInvoicingSubscriptionListView = exports.updateInvoicingSubscriptions = exports.removeInvoicingSubscription = exports.clearAllInvoicingSubscriptions = exports.resetPromotionalCreditAction = exports.submitAddPromotionalCredits = exports.getInvoicingSetupIntentFetchState = exports.getInvoicingSetupIntent = exports.getInvoicingSentPaymentLinkMagicUrl = exports.getInvoicingSentPaymentLinkEmail = exports.getInvoicingPlaidLinkTokenFetchState = exports.getInvoicingPlaidLinkToken = exports.getInvoicingPaymentMethodSaveState = exports.getInvoicingPaymentLinkSendState = exports.sendInvoicingPaymentLink = exports.saveInvoicingPaymentMethod = exports.resetInvoicingCustomerPaymentMethod = exports.fetchInvoicingPlaidLinkToken = exports.createInvoicingSetupIntent = exports.getInvoicingCustomerDetail = exports.fetchInvoicingCustomerDetailPage = exports.fetchInvoicingCustomerDetail = exports.clearInvoicingCustomerDetailView = exports.getInvoicingCustomerListView = exports.INVOICING_CUSTOMER_TABS = exports.INVOICING_CUSTOMER_COLUMNS = exports.ALL_INVOICING_CUSTOMER_TAB_IDS = exports.ALL_INVOICING_CUSTOMER_SORT_KEYS = exports.updateInvoicingCustomerFilters = exports.setInvoicingCustomerActiveTab = exports.fetchInvoicingCustomerListPage = exports.fetchInvoicingCustomerList = exports.fetchInvoicingCustomerCounts = exports.clearInvoicingCustomerListView = exports.updateInvoicingCustomers = exports.removeInvoicingCustomer = exports.clearAllInvoicingCustomers = exports.INVOICING_LIST_PAGE_SIZE = exports.getInvoicingDataImportActionState = exports.uploadInvoicingMigrationFiles = exports.startInvoicingMigration = exports.rollbackInvoicingMigration = exports.retryInvoicingMigration = exports.connectInvoicingChargebee = exports.clearAllInvoicingDataImportActions = exports.getInvoicingDataImportView = exports.setInvoicingActiveMigrationSessionId = exports.fetchInvoicingMigrationSessions =
|
|
85
|
-
exports.clearAllInvoicingCoupons = exports.getInvoicingCreditNoteDetail = exports.getInvoicingCreditNoteById = exports.fetchInvoicingCreditNoteDetail = exports.clearInvoicingCreditNoteDetailView = exports.getInvoicingCreditNoteListView = exports.INVOICING_CREDIT_NOTE_TABS = exports.INVOICING_CREDIT_NOTE_COLUMNS = exports.ALL_INVOICING_CREDIT_NOTE_TAB_IDS = exports.ALL_INVOICING_CREDIT_NOTE_SORT_KEYS = exports.updateInvoicingCreditNoteFilters = exports.setInvoicingCreditNoteActiveTab = exports.fetchInvoicingCreditNoteListPage = exports.fetchInvoicingCreditNoteList = exports.fetchInvoicingCreditNoteCounts = exports.clearInvoicingCreditNoteListView = exports.updateInvoicingCreditNotes = exports.removeInvoicingCreditNote = exports.clearAllInvoicingCreditNotes = exports.getInvoicingTransactionDetail = exports.getInvoicingTransactionById = exports.fetchInvoicingTransactionDetail = exports.clearInvoicingTransactionDetailView = exports.getInvoicingTransactionListView = exports.INVOICING_TRANSACTION_TABS = exports.INVOICING_TRANSACTION_COLUMNS = exports.ALL_INVOICING_TRANSACTION_TAB_IDS = exports.ALL_INVOICING_TRANSACTION_SORT_KEYS = exports.updateInvoicingTransactionFilters = exports.setInvoicingTransactionActiveTab = exports.fetchInvoicingTransactionListPage = exports.fetchInvoicingTransactionList = exports.clearInvoicingTransactionListView = exports.updateInvoicingTransactions = exports.removeInvoicingTransaction = exports.clearAllInvoicingTransactions = exports.getInvoicingSubscriptionDetail = exports.getInvoicingSubscriptionById = exports.fetchInvoicingSubscriptionDetail = exports.clearInvoicingSubscriptionDetailView = exports.getInvoicingSubscriptionListView = exports.INVOICING_SUBSCRIPTION_TABS = exports.INVOICING_SUBSCRIPTION_COLUMNS = exports.ALL_INVOICING_SUBSCRIPTION_TAB_IDS = exports.ALL_INVOICING_SUBSCRIPTION_SORT_KEYS = exports.updateInvoicingSubscriptionFilters = exports.setInvoicingSubscriptionActiveTab = exports.fetchInvoicingSubscriptionListPage =
|
|
86
|
-
exports.removeInvoicingProduct = exports.clearAllInvoicingProducts = exports.updateInvoicingPlans = exports.removeInvoicingPlan = exports.mergeInvoicingPlanSubFamily = exports.clearAllInvoicingPlans = exports.getInvoicingDunningEmailPreview = exports.getInvoicingDunningCaseDetail = exports.getInvoicingDunningCaseById = exports.invalidateInvoicingDunningEmailPreview = exports.fetchInvoicingDunningEmailPreviewPage = exports.fetchInvoicingDunningCaseDetail = exports.clearInvoicingDunningCaseDetailView = exports.getInvoicingDunningCaseListView = exports.INVOICING_DUNNING_CASE_TABS = exports.INVOICING_DUNNING_CASE_COLUMNS = exports.ALL_INVOICING_DUNNING_CASE_TAB_IDS = exports.ALL_INVOICING_DUNNING_CASE_SORT_KEYS = exports.updateInvoicingDunningCaseFilters = exports.setInvoicingDunningCaseActiveTab = exports.fetchInvoicingDunningCaseListPage = exports.fetchInvoicingDunningCaseList = exports.fetchInvoicingDunningCaseCounts = exports.clearInvoicingDunningCaseListView = exports.updateInvoicingDunningCases = exports.removeInvoicingDunningCase = exports.clearAllInvoicingDunningCases = exports.getInvoicingCouponDetail = exports.fetchInvoicingCouponDetail = exports.clearInvoicingCouponDetailView = exports.getInvoicingCouponById = exports.getInvoicingCouponListView = exports.getInvoicingCouponListNextCursor = exports.getInvoicingCouponListItems = exports.getInvoicingCouponListHasMore = exports.getInvoicingCouponListFilters = exports.getInvoicingCouponListFetchState = exports.getInvoicingCouponCounts = exports.INVOICING_COUPON_TABS = exports.INVOICING_COUPON_COLUMNS = exports.ALL_INVOICING_COUPON_TAB_IDS = exports.ALL_INVOICING_COUPON_SORT_KEYS = exports.updateInvoicingCouponFilters = exports.setInvoicingCouponActiveTab = exports.fetchInvoicingCouponListPage = exports.fetchInvoicingCouponList = exports.fetchInvoicingCouponCounts = exports.clearInvoicingCouponView =
|
|
87
|
-
exports.
|
|
88
|
-
exports.getInvoicingConfigView = exports.updateInvoicingConfig =
|
|
82
|
+
exports.productToCreateSubFamilyFormValues = exports.planToCatalogDetailEditValues = exports.createSubFamilyFormToPayload = exports.catalogDetailEditValuesToSavePayload = exports.updateInvoicingCatalogItemFormDraft = exports.submitInvoicingCatalogItemForm = exports.saveInvoicingCatalogItem = exports.resetEditInvoicingCatalogItemDetailView = exports.createInvoicingCatalogSubFamily = exports.archiveInvoicingCatalogSubFamily = exports.getInvoicingSubscriptionFormView = exports.getEditInvoicingSubscriptionDetailViewState = exports.initialInvoicingSubscriptionFormLocalData = exports.entityToInvoicingSubscriptionFormLocalData = exports.INVOICING_SUBSCRIPTION_SHIPPING_ADDRESS_TYPE = exports.INVOICING_SUBSCRIPTION_BILLING_FREQUENCY_VALUES = exports.updateInvoicingSubscriptionFormDraft = exports.submitInvoicingSubscriptionForm = exports.resetEditInvoicingSubscriptionDetailView = exports.initializeInvoicingSubscriptionAddress = exports.fetchInvoicingSubscriptionFormPage = exports.getInvoicingCustomerFormView = exports.initialInvoicingCustomerFormLocalData = exports.entityToInvoicingCustomerFormLocalData = exports.INVOICING_TAXABILITY_VALUES = exports.INVOICING_NET_TERM_DAY_VALUES = exports.INVOICING_CUSTOMER_TYPE_VALUES = exports.INVOICING_CUSTOMER_BILLING_ADDRESS_TYPE = exports.updateInvoicingCustomerFormDraft = exports.submitInvoicingCustomerFormSuccess = exports.submitInvoicingCustomerFormFailure = exports.submitInvoicingCustomerForm = exports.resetEditInvoicingCustomerDetailView = exports.initializeInvoicingCustomerAddress = exports.getRecordPaymentView = exports.getRecordPaymentInvoiceOptions = exports.getRecordPaymentFormView = exports.getCreateInvoiceFormView = exports.getInvoicingAuditView = exports.fetchInvoicingAuditLog = exports.clearInvoicingAuditView = exports.getInvoicingOverview = exports.buildPeriodOptions = exports.fetchInvoicingOverview = exports.clearInvoicingOverview = exports.initialRecordPaymentFormLocalData = exports.INVOICING_PAYMENT_METHOD_VALUES = exports.INVOICING_PAYMENT_GATEWAY_VALUES = exports.localDataToRecordPaymentPayload = exports.localDataToInvoiceRecordPaymentBody = void 0;
|
|
83
|
+
exports.fetchInvoicingMigrationSession = exports.fetchInvoicingMigrationDiagnostics = exports.fetchInvoicingDataImportStatus = exports.clearInvoicingDataImportView = exports.getInvoicingPaymentActionState = exports.runInvoicingPaymentAction = exports.clearInvoicingPaymentAction = exports.getInvoicingDunningActionState = exports.runInvoicingDunningAction = exports.clearInvoicingDunningAction = exports.getInvoicingSubscriptionActionState = exports.runInvoicingSubscriptionAction = exports.clearInvoicingSubscriptionAction = exports.getInvoicingDiscountActionState = exports.runInvoicingDiscountAction = exports.clearInvoicingDiscountAction = exports.getInvoicingCatalogActionState = exports.runInvoicingCatalogProductAction = exports.runInvoicingCatalogPlanAction = exports.clearInvoicingCatalogAction = exports.getInvoicingInvoiceActionState = exports.updateInvoicingInvoice = exports.runInvoicingInvoiceAction = exports.clearInvoicingInvoiceAction = exports.getInvoicingCouponFormView = exports.getEditInvoicingCouponDetailViewState = exports.initialInvoicingCouponFormLocalData = exports.entityToInvoicingCouponFormLocalData = exports.updateInvoicingCouponFormDraft = exports.submitInvoicingCouponForm = exports.saveInvoicingCoupon = exports.resetEditInvoicingCouponDetailView = exports.getSavedInvoicingCatalogItemKind = exports.getSavedInvoicingCatalogItemId = exports.getInvoicingCatalogItemFormView = exports.getInvoicingApplicableCatalogItemOptions = exports.getEditInvoicingCatalogItemDetailViewState = exports.isTieredCatalogPricingModel = exports.initialInvoicingCatalogItemFormLocalData = exports.entityToInvoicingCatalogItemFormLocalData = exports.blankInvoicingCatalogTier = exports.blankInvoicingCatalogSubFamily = exports.INVOICING_CATALOG_TYPE_VALUES = exports.INVOICING_CATALOG_TRIAL_UNIT_VALUES = exports.INVOICING_CATALOG_TRIAL_END_ACTION_VALUES = exports.INVOICING_CATALOG_TIER_TYPE_VALUES = exports.INVOICING_CATALOG_PRORATION_VALUES = exports.INVOICING_CATALOG_PRICING_MODEL_VALUES = exports.INVOICING_CATALOG_PERIOD_UNIT_VALUES = exports.INVOICING_CATALOG_APPLICABILITY_VALUES = void 0;
|
|
84
|
+
exports.fetchInvoicingSubscriptionList = exports.fetchInvoicingSubscriptionCounts = exports.clearInvoicingSubscriptionListView = exports.updateInvoicingSubscriptions = exports.removeInvoicingSubscription = exports.clearAllInvoicingSubscriptions = exports.resetPromotionalCreditAction = exports.submitAddPromotionalCredits = exports.getInvoicingSetupIntentFetchState = exports.getInvoicingSetupIntent = exports.getInvoicingSentPaymentLinkMagicUrl = exports.getInvoicingSentPaymentLinkEmail = exports.getInvoicingPlaidLinkTokenFetchState = exports.getInvoicingPlaidLinkToken = exports.getInvoicingPaymentMethodSaveState = exports.getInvoicingPaymentLinkSendState = exports.sendInvoicingPaymentLink = exports.saveInvoicingPaymentMethod = exports.resetInvoicingCustomerPaymentMethod = exports.fetchInvoicingPlaidLinkToken = exports.createInvoicingSetupIntent = exports.getInvoicingCustomerDetail = exports.fetchInvoicingCustomerDetailPage = exports.fetchInvoicingCustomerDetail = exports.clearInvoicingCustomerDetailView = exports.getInvoicingCustomerListView = exports.INVOICING_CUSTOMER_TABS = exports.INVOICING_CUSTOMER_COLUMNS = exports.ALL_INVOICING_CUSTOMER_TAB_IDS = exports.ALL_INVOICING_CUSTOMER_SORT_KEYS = exports.updateInvoicingCustomerFilters = exports.setInvoicingCustomerActiveTab = exports.fetchInvoicingCustomerListPage = exports.fetchInvoicingCustomerList = exports.fetchInvoicingCustomerCounts = exports.clearInvoicingCustomerListView = exports.updateInvoicingCustomers = exports.removeInvoicingCustomer = exports.clearAllInvoicingCustomers = exports.INVOICING_LIST_PAGE_SIZE = exports.getInvoicingDataImportActionState = exports.uploadInvoicingMigrationFiles = exports.startInvoicingMigration = exports.rollbackInvoicingMigration = exports.retryInvoicingMigration = exports.connectInvoicingChargebee = exports.clearAllInvoicingDataImportActions = exports.getInvoicingDataImportView = exports.setInvoicingActiveMigrationSessionId = exports.fetchInvoicingMigrationSessions = void 0;
|
|
85
|
+
exports.updateInvoicingCoupons = exports.removeInvoicingCoupon = exports.clearAllInvoicingCoupons = exports.getInvoicingCreditNoteDetail = exports.getInvoicingCreditNoteById = exports.fetchInvoicingCreditNoteDetail = exports.clearInvoicingCreditNoteDetailView = exports.getInvoicingCreditNoteListView = exports.INVOICING_CREDIT_NOTE_TABS = exports.INVOICING_CREDIT_NOTE_COLUMNS = exports.ALL_INVOICING_CREDIT_NOTE_TAB_IDS = exports.ALL_INVOICING_CREDIT_NOTE_SORT_KEYS = exports.updateInvoicingCreditNoteFilters = exports.setInvoicingCreditNoteActiveTab = exports.fetchInvoicingCreditNoteListPage = exports.fetchInvoicingCreditNoteList = exports.fetchInvoicingCreditNoteCounts = exports.clearInvoicingCreditNoteListView = exports.updateInvoicingCreditNotes = exports.removeInvoicingCreditNote = exports.clearAllInvoicingCreditNotes = exports.getInvoicingTransactionDetail = exports.getInvoicingTransactionById = exports.fetchInvoicingTransactionDetail = exports.clearInvoicingTransactionDetailView = exports.getInvoicingTransactionListView = exports.INVOICING_TRANSACTION_TABS = exports.INVOICING_TRANSACTION_COLUMNS = exports.ALL_INVOICING_TRANSACTION_TAB_IDS = exports.ALL_INVOICING_TRANSACTION_SORT_KEYS = exports.updateInvoicingTransactionFilters = exports.setInvoicingTransactionActiveTab = exports.fetchInvoicingTransactionListPage = exports.fetchInvoicingTransactionList = exports.clearInvoicingTransactionListView = exports.updateInvoicingTransactions = exports.removeInvoicingTransaction = exports.clearAllInvoicingTransactions = exports.getInvoicingSubscriptionDetail = exports.getInvoicingSubscriptionById = exports.fetchInvoicingSubscriptionDetail = exports.clearInvoicingSubscriptionDetailView = exports.getInvoicingSubscriptionListView = exports.INVOICING_SUBSCRIPTION_TABS = exports.INVOICING_SUBSCRIPTION_COLUMNS = exports.ALL_INVOICING_SUBSCRIPTION_TAB_IDS = exports.ALL_INVOICING_SUBSCRIPTION_SORT_KEYS = exports.updateInvoicingSubscriptionFilters = exports.setInvoicingSubscriptionActiveTab = exports.fetchInvoicingSubscriptionListPage = void 0;
|
|
86
|
+
exports.clearInvoicingCatalogListView = exports.updateInvoicingProducts = exports.removeInvoicingProduct = exports.clearAllInvoicingProducts = exports.updateInvoicingPlans = exports.removeInvoicingPlan = exports.mergeInvoicingPlanSubFamily = exports.clearAllInvoicingPlans = exports.getInvoicingDunningEmailPreview = exports.getInvoicingDunningCaseDetail = exports.getInvoicingDunningCaseById = exports.invalidateInvoicingDunningEmailPreview = exports.fetchInvoicingDunningEmailPreviewPage = exports.fetchInvoicingDunningCaseDetail = exports.clearInvoicingDunningCaseDetailView = exports.getInvoicingDunningCaseListView = exports.INVOICING_DUNNING_CASE_TABS = exports.INVOICING_DUNNING_CASE_COLUMNS = exports.ALL_INVOICING_DUNNING_CASE_TAB_IDS = exports.ALL_INVOICING_DUNNING_CASE_SORT_KEYS = exports.updateInvoicingDunningCaseFilters = exports.setInvoicingDunningCaseActiveTab = exports.fetchInvoicingDunningCaseListPage = exports.fetchInvoicingDunningCaseList = exports.fetchInvoicingDunningCaseCounts = exports.clearInvoicingDunningCaseListView = exports.updateInvoicingDunningCases = exports.removeInvoicingDunningCase = exports.clearAllInvoicingDunningCases = exports.getInvoicingCouponDetail = exports.fetchInvoicingCouponDetail = exports.clearInvoicingCouponDetailView = exports.getInvoicingCouponById = exports.getInvoicingCouponListView = exports.getInvoicingCouponListNextCursor = exports.getInvoicingCouponListItems = exports.getInvoicingCouponListHasMore = exports.getInvoicingCouponListFilters = exports.getInvoicingCouponListFetchState = exports.getInvoicingCouponCounts = exports.INVOICING_COUPON_TABS = exports.INVOICING_COUPON_COLUMNS = exports.ALL_INVOICING_COUPON_TAB_IDS = exports.ALL_INVOICING_COUPON_SORT_KEYS = exports.updateInvoicingCouponFilters = exports.setInvoicingCouponActiveTab = exports.fetchInvoicingCouponListPage = exports.fetchInvoicingCouponList = exports.fetchInvoicingCouponCounts = exports.clearInvoicingCouponView = void 0;
|
|
87
|
+
exports.resetInvoicingConfigActionStates = exports.fetchInvoicingConfig = exports.enableInvoicing = exports.clearInvoicingConfig = exports.acceptInvoicingTerms = exports.withInvoicingQboAccountMappingId = exports.toInvoicingQboCustomerMatchingMode = exports.getInvoicingQboAccountMappingId = exports.INVOICING_QBO_CUSTOMER_MATCHING_MODES = exports.getInvoicingQboView = exports.startInvoicingQboBackfill = exports.retryInvoicingQboSyncTask = exports.fetchInvoicingQboSyncHealth = exports.fetchInvoicingQboConnection = exports.fetchInvoicingQboClasses = exports.fetchInvoicingQboAccounts = exports.clearInvoicingQboView = exports.isStripeConnectedFromSettings = exports.initialInvoicingBrandingFormLocalData = exports.entityToInvoicingBrandingFormLocalData = exports.INVOICING_BUSINESS_ADDRESS_TYPE = exports.getInvoicingSettingsView = exports.getInvoicingSettingsHubView = exports.getInvoicingSettingsFetchState = exports.getInvoicingSettings = exports.getInvoicingBrandingFormView = exports.updateInvoicingSettings = exports.updateInvoicingBrandingFormDraft = exports.submitInvoicingBrandingForm = exports.saveInvoicingSettings = exports.resetSaveInvoicingSettings = exports.resetInvoicingBrandingFormDraft = exports.fetchInvoicingSettings = exports.disconnectInvoicingStripe = exports.connectInvoicingStripe = exports.clearInvoicingSettings = exports.getInvoicingProductById = exports.getInvoicingPlanById = exports.getInvoicingCatalogItemDetail = exports.fetchInvoicingCatalogItemDetail = exports.clearInvoicingCatalogItemDetailView = exports.getInvoicingCatalogListView = exports.INVOICING_PRODUCT_COLUMNS = exports.ALL_INVOICING_PRODUCT_SORT_KEYS = exports.updateInvoicingCatalogProductFilters = exports.updateInvoicingCatalogPlanFilters = exports.fetchInvoicingCatalogProductList = exports.fetchInvoicingCatalogPlanList = exports.fetchInvoicingCatalogListPage = exports.fetchInvoicingCatalogCounts = void 0;
|
|
88
|
+
exports.getInvoicingConfigView = exports.updateInvoicingConfig = void 0;
|
|
89
89
|
const allowedValue_1 = require("./commonStateTypes/allowedValue");
|
|
90
90
|
Object.defineProperty(exports, "isAllowedValueWithCode", { enumerable: true, get: function () { return allowedValue_1.isAllowedValueWithCode; } });
|
|
91
91
|
Object.defineProperty(exports, "isAllowedValueWithID", { enumerable: true, get: function () { return allowedValue_1.isAllowedValueWithID; } });
|
|
@@ -2837,8 +2837,6 @@ Object.defineProperty(exports, "INVOICING_SUBSCRIPTION_BILLING_FREQUENCY_VALUES"
|
|
|
2837
2837
|
Object.defineProperty(exports, "INVOICING_SUBSCRIPTION_SHIPPING_ADDRESS_TYPE", { enumerable: true, get: function () { return invoicingSubscriptionFormConfig_1.INVOICING_SUBSCRIPTION_SHIPPING_ADDRESS_TYPE; } });
|
|
2838
2838
|
Object.defineProperty(exports, "entityToInvoicingSubscriptionFormLocalData", { enumerable: true, get: function () { return invoicingSubscriptionFormConfig_1.entityToInvoicingSubscriptionFormLocalData; } });
|
|
2839
2839
|
Object.defineProperty(exports, "initialInvoicingSubscriptionFormLocalData", { enumerable: true, get: function () { return invoicingSubscriptionFormConfig_1.initialInvoicingSubscriptionFormLocalData; } });
|
|
2840
|
-
Object.defineProperty(exports, "invoicingSubscriptionTodayIso", { enumerable: true, get: function () { return invoicingSubscriptionFormConfig_1.invoicingSubscriptionTodayIso; } });
|
|
2841
|
-
Object.defineProperty(exports, "toInvoicingSubscriptionQuantity", { enumerable: true, get: function () { return invoicingSubscriptionFormConfig_1.toInvoicingSubscriptionQuantity; } });
|
|
2842
2840
|
var editInvoicingSubscriptionDetailViewSelector_1 = require("./view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewSelector");
|
|
2843
2841
|
Object.defineProperty(exports, "getEditInvoicingSubscriptionDetailViewState", { enumerable: true, get: function () { return editInvoicingSubscriptionDetailViewSelector_1.getEditInvoicingSubscriptionDetailViewState; } });
|
|
2844
2842
|
Object.defineProperty(exports, "getInvoicingSubscriptionFormView", { enumerable: true, get: function () { return editInvoicingSubscriptionDetailViewSelector_1.getInvoicingSubscriptionFormView; } });
|
|
@@ -3186,7 +3184,6 @@ Object.defineProperty(exports, "getInvoicingQboView", { enumerable: true, get: f
|
|
|
3186
3184
|
var invoicingCommonPayload_2 = require("./entity/invoicing/invoicingCommonPayload");
|
|
3187
3185
|
Object.defineProperty(exports, "INVOICING_QBO_CUSTOMER_MATCHING_MODES", { enumerable: true, get: function () { return invoicingCommonPayload_2.INVOICING_QBO_CUSTOMER_MATCHING_MODES; } });
|
|
3188
3186
|
Object.defineProperty(exports, "getInvoicingQboAccountMappingId", { enumerable: true, get: function () { return invoicingCommonPayload_2.getInvoicingQboAccountMappingId; } });
|
|
3189
|
-
Object.defineProperty(exports, "toInvoicingNamedOptionsByKey", { enumerable: true, get: function () { return invoicingCommonPayload_2.toInvoicingNamedOptionsByKey; } });
|
|
3190
3187
|
Object.defineProperty(exports, "toInvoicingQboCustomerMatchingMode", { enumerable: true, get: function () { return invoicingCommonPayload_2.toInvoicingQboCustomerMatchingMode; } });
|
|
3191
3188
|
Object.defineProperty(exports, "withInvoicingQboAccountMappingId", { enumerable: true, get: function () { return invoicingCommonPayload_2.withInvoicingQboAccountMappingId; } });
|
|
3192
3189
|
// ── Invoicing: config ─────────────────────────────────────────────────────────
|
|
@@ -7,9 +7,5 @@ export type SaveInvoicingSubscriptionResponse = ZeniAPIResponse<InvoicingSubscri
|
|
|
7
7
|
* Build the create/update subscription request body from the form draft. The
|
|
8
8
|
* shipping address is sent as an object (captured via the shared Address
|
|
9
9
|
* screen); the backend persists it — same pattern as the customer save flow.
|
|
10
|
-
*
|
|
11
|
-
* `remaining_billing_cycles` is omitted when the user left the field empty, so
|
|
12
|
-
* the backend applies the plan's own `billing_cycles` (or renews forever when
|
|
13
|
-
* the plan sets no limit) rather than being pinned to a value the form invented.
|
|
14
10
|
*/
|
|
15
11
|
export declare const localDataToSaveInvoicingSubscriptionPayload: (localData: InvoicingSubscriptionFormLocalData, shippingAddress?: AddressUpdatableInfo) => Record<string, unknown>;
|
|
@@ -7,10 +7,6 @@ const invoicingSubscriptionFormConfig_1 = require("./invoicingSubscriptionFormCo
|
|
|
7
7
|
* Build the create/update subscription request body from the form draft. The
|
|
8
8
|
* shipping address is sent as an object (captured via the shared Address
|
|
9
9
|
* screen); the backend persists it — same pattern as the customer save flow.
|
|
10
|
-
*
|
|
11
|
-
* `remaining_billing_cycles` is omitted when the user left the field empty, so
|
|
12
|
-
* the backend applies the plan's own `billing_cycles` (or renews forever when
|
|
13
|
-
* the plan sets no limit) rather than being pinned to a value the form invented.
|
|
14
10
|
*/
|
|
15
11
|
const localDataToSaveInvoicingSubscriptionPayload = (localData, shippingAddress) => {
|
|
16
12
|
const frequency = (0, invoicingSubscriptionFormConfig_1.billingFrequencyToPeriod)(localData.billingFrequency);
|
|
@@ -18,40 +14,32 @@ const localDataToSaveInvoicingSubscriptionPayload = (localData, shippingAddress)
|
|
|
18
14
|
{
|
|
19
15
|
item_price_code: localData.planPriceCode,
|
|
20
16
|
item_type: 'plan',
|
|
21
|
-
quantity: (
|
|
17
|
+
quantity: Math.max(1, localData.planQuantity || 1),
|
|
22
18
|
},
|
|
23
19
|
...localData.addonPriceCodes.map((priceCode) => ({
|
|
24
20
|
item_price_code: priceCode,
|
|
25
21
|
item_type: 'addon',
|
|
26
|
-
quantity:
|
|
22
|
+
quantity: 1,
|
|
27
23
|
})),
|
|
28
24
|
...localData.chargePriceCodes.map((priceCode) => ({
|
|
29
25
|
item_price_code: priceCode,
|
|
30
26
|
item_type: 'charge',
|
|
31
|
-
quantity:
|
|
27
|
+
quantity: 1,
|
|
32
28
|
})),
|
|
33
29
|
];
|
|
34
30
|
const setupFee = localData.setupFee?.amount;
|
|
35
31
|
const poNumber = localData.poNumber.trim();
|
|
36
32
|
const trialEnd = localData.trialEnd.trim();
|
|
37
|
-
const startedAt = localData.startedAt.trim();
|
|
38
|
-
const remainingBillingCycles = localData.remainingBillingCycles.trim();
|
|
39
33
|
return {
|
|
40
34
|
auto_collection: localData.autoCollection ? 'on' : 'off',
|
|
41
35
|
billing_period: frequency.period,
|
|
42
36
|
billing_period_unit: frequency.unit,
|
|
43
37
|
currency_code: localData.preferredCurrencyCode,
|
|
44
38
|
customer_id: localData.customerId,
|
|
45
|
-
started_at: startedAt !== '' ? startedAt : (0, invoicingSubscriptionFormConfig_1.invoicingSubscriptionTodayIso)(),
|
|
46
39
|
subscription_items: items,
|
|
47
40
|
...(setupFee != null ? { setup_fee: setupFee } : {}),
|
|
48
41
|
...(poNumber !== '' ? { po_number: poNumber } : {}),
|
|
49
42
|
...(trialEnd !== '' ? { trial_end: trialEnd } : {}),
|
|
50
|
-
...(remainingBillingCycles !== ''
|
|
51
|
-
? {
|
|
52
|
-
remaining_billing_cycles: (0, invoicingSubscriptionFormConfig_1.toInvoicingSubscriptionQuantity)(Number(remainingBillingCycles)),
|
|
53
|
-
}
|
|
54
|
-
: {}),
|
|
55
43
|
...(localData.couponId !== '' ? { coupon_ids: [localData.couponId] } : {}),
|
|
56
44
|
...(shippingAddress != null
|
|
57
45
|
? { shipping_address: (0, addressViewPayload_1.toAddressUpdatableInfoPayload)(shippingAddress) }
|
|
@@ -9,32 +9,15 @@ import { FetchedState, ID } from '../../../commonStateTypes/common';
|
|
|
9
9
|
*/
|
|
10
10
|
export interface InvoicingSubscriptionFormLocalData {
|
|
11
11
|
addonPriceCodes: string[];
|
|
12
|
-
/**
|
|
13
|
-
* Per-add-on quantity, keyed by item price code. Only the codes currently in
|
|
14
|
-
* `addonPriceCodes` are read when the save payload is built, so a code left
|
|
15
|
-
* behind by a deselect is inert; a missing key bills as 1.
|
|
16
|
-
*/
|
|
17
|
-
addonQuantities: Record<string, number>;
|
|
18
12
|
autoCollection: boolean;
|
|
19
13
|
billingFrequency: string;
|
|
20
14
|
chargePriceCodes: string[];
|
|
21
|
-
/** Per-charge quantity, keyed by item price code. See `addonQuantities`. */
|
|
22
|
-
chargeQuantities: Record<string, number>;
|
|
23
15
|
couponId: string;
|
|
24
16
|
customerId: string;
|
|
25
17
|
planPriceCode: string;
|
|
26
18
|
planQuantity: number;
|
|
27
19
|
poNumber: string;
|
|
28
20
|
preferredCurrencyCode: string;
|
|
29
|
-
/**
|
|
30
|
-
* Number of paid billing cycles including the first invoice, held as a string
|
|
31
|
-
* so an empty field stays distinguishable from a real 0. Empty means "no
|
|
32
|
-
* limit set here" — the payload omits it and the backend falls back to the
|
|
33
|
-
* plan's `billing_cycles` (renewing forever when the plan has no limit).
|
|
34
|
-
*/
|
|
35
|
-
remainingBillingCycles: string;
|
|
36
|
-
/** `YYYY-MM-DD`. Empty falls back to today when the payload is built. */
|
|
37
|
-
startedAt: string;
|
|
38
21
|
trialEnd: string;
|
|
39
22
|
/** Unset until the user enters one, so an explicit 0 stays distinguishable. */
|
|
40
23
|
setupFee?: Amount;
|
package/lib/view/invoicing/editInvoicingSubscriptionDetailView/invoicingSubscriptionFormConfig.d.ts
CHANGED
|
@@ -15,13 +15,6 @@ export declare const billingFrequencyToPeriod: (value: string) => {
|
|
|
15
15
|
};
|
|
16
16
|
/** Map an existing subscription's period/unit back to a billing-frequency value. */
|
|
17
17
|
export declare const periodToBillingFrequency: (period?: number, unit?: string) => string;
|
|
18
|
-
/** Today as `YYYY-MM-DD`, the default subscription start date. */
|
|
19
|
-
export declare const invoicingSubscriptionTodayIso: () => string;
|
|
20
|
-
/**
|
|
21
|
-
* Clamp a subscription-item quantity to the minimum the API accepts. Shared by
|
|
22
|
-
* the plan, add-on and charge items so none of them can bill a 0 or a fraction.
|
|
23
|
-
*/
|
|
24
|
-
export declare const toInvoicingSubscriptionQuantity: (quantity?: number) => number;
|
|
25
18
|
export declare const initialInvoicingSubscriptionFormLocalData: InvoicingSubscriptionFormLocalData;
|
|
26
19
|
/** Seed the form draft from an existing subscription entity (edit mode). */
|
|
27
20
|
export declare const entityToInvoicingSubscriptionFormLocalData: (subscription?: InvoicingSubscription) => InvoicingSubscriptionFormLocalData;
|
package/lib/view/invoicing/editInvoicingSubscriptionDetailView/invoicingSubscriptionFormConfig.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.entityToInvoicingSubscriptionFormLocalData = exports.initialInvoicingSubscriptionFormLocalData = exports.
|
|
3
|
+
exports.entityToInvoicingSubscriptionFormLocalData = exports.initialInvoicingSubscriptionFormLocalData = exports.periodToBillingFrequency = exports.billingFrequencyToPeriod = exports.INVOICING_SUBSCRIPTION_BILLING_FREQUENCY_VALUES = exports.INVOICING_SUBSCRIPTION_SHIPPING_ADDRESS_TYPE = void 0;
|
|
4
4
|
/** `AddressType` key used when the subscription form opens the shared Address screen. */
|
|
5
5
|
exports.INVOICING_SUBSCRIPTION_SHIPPING_ADDRESS_TYPE = 'invoicing_subscription_shipping_address';
|
|
6
6
|
/**
|
|
@@ -38,44 +38,17 @@ const subscriptionItemPriceCodes = (subscription, itemType) => subscription?.sub
|
|
|
38
38
|
?.filter((item) => item.itemType === itemType)
|
|
39
39
|
.map((item) => item.itemPriceCode)
|
|
40
40
|
.filter((code) => code != null && code !== '') ?? [];
|
|
41
|
-
const subscriptionItemQuantities = (subscription, itemType) => {
|
|
42
|
-
const quantities = {};
|
|
43
|
-
subscription?.subscriptionItems
|
|
44
|
-
?.filter((item) => item.itemType === itemType)
|
|
45
|
-
.forEach((item) => {
|
|
46
|
-
if (item.itemPriceCode != null && item.itemPriceCode !== '') {
|
|
47
|
-
quantities[item.itemPriceCode] = (0, exports.toInvoicingSubscriptionQuantity)(item.quantity);
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
return quantities;
|
|
51
|
-
};
|
|
52
|
-
/** Today as `YYYY-MM-DD`, the default subscription start date. */
|
|
53
|
-
const invoicingSubscriptionTodayIso = () => new Date().toISOString().slice(0, 10);
|
|
54
|
-
exports.invoicingSubscriptionTodayIso = invoicingSubscriptionTodayIso;
|
|
55
|
-
/**
|
|
56
|
-
* Clamp a subscription-item quantity to the minimum the API accepts. Shared by
|
|
57
|
-
* the plan, add-on and charge items so none of them can bill a 0 or a fraction.
|
|
58
|
-
*/
|
|
59
|
-
const toInvoicingSubscriptionQuantity = (quantity) => {
|
|
60
|
-
const whole = Math.floor(Number(quantity));
|
|
61
|
-
return Number.isFinite(whole) && whole > 0 ? whole : 1;
|
|
62
|
-
};
|
|
63
|
-
exports.toInvoicingSubscriptionQuantity = toInvoicingSubscriptionQuantity;
|
|
64
41
|
exports.initialInvoicingSubscriptionFormLocalData = {
|
|
65
42
|
addonPriceCodes: [],
|
|
66
|
-
addonQuantities: {},
|
|
67
43
|
autoCollection: true,
|
|
68
44
|
billingFrequency: 'monthly',
|
|
69
45
|
chargePriceCodes: [],
|
|
70
|
-
chargeQuantities: {},
|
|
71
46
|
couponId: '',
|
|
72
47
|
customerId: '',
|
|
73
48
|
planPriceCode: '',
|
|
74
49
|
planQuantity: 1,
|
|
75
50
|
poNumber: '',
|
|
76
51
|
preferredCurrencyCode: 'USD',
|
|
77
|
-
remainingBillingCycles: '',
|
|
78
|
-
startedAt: '',
|
|
79
52
|
trialEnd: '',
|
|
80
53
|
};
|
|
81
54
|
/** Seed the form draft from an existing subscription entity (edit mode). */
|
|
@@ -86,26 +59,18 @@ const entityToInvoicingSubscriptionFormLocalData = (subscription) => {
|
|
|
86
59
|
const planItem = subscription.subscriptionItems?.find((item) => item.itemType === 'plan');
|
|
87
60
|
return {
|
|
88
61
|
addonPriceCodes: subscriptionItemPriceCodes(subscription, 'addon'),
|
|
89
|
-
addonQuantities: subscriptionItemQuantities(subscription, 'addon'),
|
|
90
62
|
autoCollection: (subscription.autoCollection ?? 'on') === 'on',
|
|
91
63
|
billingFrequency: (0, exports.periodToBillingFrequency)(subscription.billingPeriod, subscription.billingPeriodUnit),
|
|
92
64
|
chargePriceCodes: subscriptionItemPriceCodes(subscription, 'charge'),
|
|
93
|
-
chargeQuantities: subscriptionItemQuantities(subscription, 'charge'),
|
|
94
65
|
couponId: subscription.coupons?.[0]?.couponCode ??
|
|
95
66
|
subscription.coupons?.[0]?.couponID ??
|
|
96
67
|
'',
|
|
97
68
|
customerId: subscription.customerID ?? '',
|
|
98
69
|
planPriceCode: subscriptionItemPriceCodes(subscription, 'plan')[0] ?? '',
|
|
99
|
-
planQuantity:
|
|
70
|
+
planQuantity: planItem?.quantity ?? 1,
|
|
100
71
|
poNumber: subscription.poNumber ?? '',
|
|
101
72
|
preferredCurrencyCode: subscription.currencyCode ?? 'USD',
|
|
102
|
-
remainingBillingCycles: subscription.remainingBillingCycles != null
|
|
103
|
-
? String(subscription.remainingBillingCycles)
|
|
104
|
-
: '',
|
|
105
73
|
setupFee: subscription.setupFee,
|
|
106
|
-
startedAt: subscription.startedAt != null
|
|
107
|
-
? subscription.startedAt.format('YYYY-MM-DD')
|
|
108
|
-
: '',
|
|
109
74
|
trialEnd: subscription.trialEnd != null
|
|
110
75
|
? subscription.trialEnd.format('YYYY-MM-DD')
|
|
111
76
|
: '',
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AuditLogEntityRouteOptionWire, AuditLogListSortFieldOptionWire, AuditLogSourceLabelOptionWire, InvoicingCatalogLifecycleActionOptionWire, InvoicingDunningActionOption, InvoicingNamedOptionWire,
|
|
1
|
+
import { AuditLogEntityRouteOptionWire, AuditLogListSortFieldOptionWire, AuditLogSourceLabelOptionWire, InvoicingCatalogLifecycleActionOptionWire, InvoicingDunningActionOption, InvoicingNamedOptionWire, InvoicingQboAccountMappingKindOptionWire, InvoicingSubscriptionEditFieldOptionWire, InvoicingSubscriptionLifecycleActionOptionWire } from '../../../entity/invoicing/invoicingCommonPayload';
|
|
2
2
|
import { ZeniAPIResponse } from '../../../responsePayload';
|
|
3
3
|
/**
|
|
4
4
|
* Wire payload of the invoicing config API (GET/PUT `/1.0/config`). Follows
|
|
@@ -23,7 +23,6 @@ export interface InvoicingConfigPayload {
|
|
|
23
23
|
subscription_metadata_edit_allowed_from_statuses: string[];
|
|
24
24
|
auto_collection_options?: InvoicingNamedOptionWire[];
|
|
25
25
|
billing_period_unit_options?: InvoicingNamedOptionWire[];
|
|
26
|
-
catalog_tier_type_options_by_pricing_model?: InvoicingNamedOptionsByKeyWire;
|
|
27
26
|
catalog_trial_end_action_options?: InvoicingNamedOptionWire[];
|
|
28
27
|
catalog_trial_unit_options?: InvoicingNamedOptionWire[];
|
|
29
28
|
created_at?: string | null;
|
|
@@ -2,7 +2,7 @@ import { ZeniAPIStatus } from '../../../responsePayload';
|
|
|
2
2
|
import { InvoicingConfigPayload } from './invoicingConfigViewPayload';
|
|
3
3
|
import { InvoicingConfigViewState } from './invoicingConfigViewState';
|
|
4
4
|
export declare const initialState: InvoicingConfigViewState;
|
|
5
|
-
export declare function mapInvoicingConfigPayloadToState(payload: InvoicingConfigPayload): Pick<InvoicingConfigViewState, 'auditLogEntityRouteOptions' | 'auditLogListSortFieldOptions' | 'auditLogSourceLabels' | 'autoCollectionOptions' | 'billingPeriodUnitOptions' | '
|
|
5
|
+
export declare function mapInvoicingConfigPayloadToState(payload: InvoicingConfigPayload): Pick<InvoicingConfigViewState, 'auditLogEntityRouteOptions' | 'auditLogListSortFieldOptions' | 'auditLogSourceLabels' | 'autoCollectionOptions' | 'billingPeriodUnitOptions' | 'catalogTrialEndActionOptions' | 'catalogTrialUnitOptions' | 'customerTypeOptions' | 'dateFormatOptions' | 'discountApplyOnOptions' | 'discountDurationTypeOptions' | 'discountTypeOptions' | 'manualPaymentMethodOptions' | 'netTermDayOptions' | 'paymentGatewayOptions' | 'taxabilityOptions' | 'createdAt' | 'updatedAt' | 'dunningScheduleActionOptions' | 'subscriptionLifecycleActionOptions' | 'subscriptionCommercialEditAllowedFromStatuses' | 'subscriptionMetadataEditAllowedFromStatuses' | 'subscriptionEditFieldOptions' | 'subscriptionCancelTimingOptions' | 'subscriptionChangeOptionOptions' | 'catalogItemLifecycleActionOptions' | 'catalogProductLifecycleActionOptions' | 'discountLifecycleActionOptions' | 'qboAccountMappingKindOptions' | 'qboCustomerMatchingOptions' | 'qboSyncStatusOptions' | 'isInvoicingEnabled' | 'isInvoicingTosAccepted' | 'invoicingTosAcceptanceIp' | 'invoicingTosAcceptanceTime' | 'invoicingTosAcceptanceUserAgent' | 'invoicingTosAcceptanceUserId' | 'isInvoicingSettingsSeeded'>;
|
|
6
6
|
export declare const fetchInvoicingConfig: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload?: {
|
|
7
7
|
cacheOverride?: boolean;
|
|
8
8
|
} | undefined], {
|
|
@@ -15,7 +15,6 @@ exports.initialState = {
|
|
|
15
15
|
auditLogSourceLabels: [],
|
|
16
16
|
autoCollectionOptions: [],
|
|
17
17
|
billingPeriodUnitOptions: [],
|
|
18
|
-
catalogTierTypeOptionsByPricingModel: undefined,
|
|
19
18
|
catalogTrialEndActionOptions: [],
|
|
20
19
|
catalogTrialUnitOptions: [],
|
|
21
20
|
customerTypeOptions: [],
|
|
@@ -67,9 +66,6 @@ function mapInvoicingConfigPayloadToState(payload) {
|
|
|
67
66
|
})),
|
|
68
67
|
autoCollectionOptions: (payload.auto_collection_options ?? []).map(invoicingCommonPayload_1.toInvoicingNamedOption),
|
|
69
68
|
billingPeriodUnitOptions: (payload.billing_period_unit_options ?? []).map(invoicingCommonPayload_1.toInvoicingNamedOption),
|
|
70
|
-
catalogTierTypeOptionsByPricingModel: payload.catalog_tier_type_options_by_pricing_model != null
|
|
71
|
-
? (0, invoicingCommonPayload_1.toInvoicingNamedOptionsByKey)(payload.catalog_tier_type_options_by_pricing_model)
|
|
72
|
-
: undefined,
|
|
73
69
|
catalogTrialEndActionOptions: (payload.catalog_trial_end_action_options ?? []).map(invoicingCommonPayload_1.toInvoicingNamedOption),
|
|
74
70
|
catalogTrialUnitOptions: (payload.catalog_trial_unit_options ?? []).map(invoicingCommonPayload_1.toInvoicingNamedOption),
|
|
75
71
|
customerTypeOptions: (payload.customer_type_options ?? []).map(invoicingCommonPayload_1.toInvoicingNamedOption),
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FetchStateAndError, FetchedState } from '../../../commonStateTypes/common';
|
|
2
|
-
import type { AuditLogEntityRouteOption, AuditLogListSortFieldOption, AuditLogSourceLabelOption, InvoicingCatalogItemLifecycleAction, InvoicingCatalogLifecycleActionOption, InvoicingCatalogProductLifecycleAction, InvoicingDiscountLifecycleActionOption, InvoicingNamedOption,
|
|
2
|
+
import type { AuditLogEntityRouteOption, AuditLogListSortFieldOption, AuditLogSourceLabelOption, InvoicingCatalogItemLifecycleAction, InvoicingCatalogLifecycleActionOption, InvoicingCatalogProductLifecycleAction, InvoicingDiscountLifecycleActionOption, InvoicingNamedOption, InvoicingQboAccountMappingKindOption, InvoicingSubscriptionEditFieldOption, InvoicingSubscriptionLifecycleActionOption } from '../../../entity/invoicing/invoicingCommonPayload';
|
|
3
3
|
import { InvoicingDunningActionOption } from '../../../entity/invoicing/invoicingCommonPayload';
|
|
4
4
|
export interface InvoicingConfigViewState extends FetchedState {
|
|
5
5
|
acceptTermsFetchState: FetchStateAndError;
|
|
@@ -33,12 +33,6 @@ export interface InvoicingConfigViewState extends FetchedState {
|
|
|
33
33
|
subscriptionLifecycleActionOptions: InvoicingSubscriptionLifecycleActionOption[];
|
|
34
34
|
subscriptionMetadataEditAllowedFromStatuses: string[];
|
|
35
35
|
taxabilityOptions: InvoicingNamedOption[];
|
|
36
|
-
/**
|
|
37
|
-
* Allowed tier `Type` options per pricing model. `undefined` means the config
|
|
38
|
-
* has not been loaded yet — consumers disable the tier editor rather than
|
|
39
|
-
* falling back to a hardcoded model-to-type map.
|
|
40
|
-
*/
|
|
41
|
-
catalogTierTypeOptionsByPricingModel?: InvoicingNamedOptionsByKey;
|
|
42
36
|
createdAt?: string;
|
|
43
37
|
invoicingTosAcceptanceIp?: string;
|
|
44
38
|
invoicingTosAcceptanceTime?: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zeniai/client-epic-state",
|
|
3
|
-
"version": "5.1.95
|
|
3
|
+
"version": "5.1.95",
|
|
4
4
|
"description": "Shared module between Web & Mobile containing required abstractions for state management, async network communication. ",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib/esm/index.js",
|