@xuda.io/xuda-plugin-stripe-core
Version:
Xuda Stripe Connect Library
133 lines (116 loc) • 4.3 kB
JavaScript
export async function stripe_charge(fields, params) {
if (!fields.stripe_card_id && !fields.stripe_customer_id) {
return params.report_error(
' error: "Card Id" or "Customer Id" must be set with value'
);
}
fields.method = params.method;
const response = await params.call_plugin_api(params.plugin_name, fields);
await params.set_SYS_GLOBAL_OBJ_WIDGET_INFO({
stripe_charge_id: response.data.id,
stripe_card_id: response.data.payment_method,
stripe_charge_status: response.data.status,
stripe_customer_id: response.data.customer,
stripe_charge_obj: response.data,
});
params.run_widgetCallbackEvent();
return response;
}
export async function stripe_refund(fields, params) {
fields.method = params.method;
const response = await params.call_plugin_api(params.plugin_name, fields);
await params.set_SYS_GLOBAL_OBJ_WIDGET_INFO({
stripe_refund_id: response.data.id,
stripe_refund_status: response.data.status,
stripe_refund_obj: response.data,
});
params.run_widgetCallbackEvent();
return response;
}
export async function stripe_capture_charge(fields, params) {
fields.method = params.method;
const response = await params.call_plugin_api(params.plugin_name, fields);
await params.set_SYS_GLOBAL_OBJ_WIDGET_INFO({});
params.run_widgetCallbackEvent();
return response;
}
export async function stripe_remove_card(fields, params) {
fields.method = params.method;
const response = await params.call_plugin_api(params.plugin_name, fields);
await params.set_SYS_GLOBAL_OBJ_WIDGET_INFO({
stripe_card_id: response.data,
});
params.run_widgetCallbackEvent();
return response;
}
export async function stripe_get_cards(fields, params) {
if (fields.stripe_limit > 100) {
return params.report_error(' error: "Limit" max value is 100');
}
fields.method = params.method;
const response = await params.call_plugin_api(params.plugin_name, fields);
await params.set_SYS_GLOBAL_OBJ_WIDGET_INFO({
stripe_cards_data: response.data.data,
});
params.run_widgetCallbackEvent();
}
export async function stripe_get_charges(fields, params) {
if (fields.stripe_limit > 100) {
return params.report_error(' error: "Limit" max value is 100');
}
fields.method = params.method;
const response = await params.call_plugin_api(params.plugin_name, fields);
await params.set_SYS_GLOBAL_OBJ_WIDGET_INFO({
stripe_charges_data: response.data,
});
params.run_widgetCallbackEvent();
}
export async function stripe_set_default_card(fields, params) {
fields.method = params.method;
const response = await params.call_plugin_api(params.plugin_name, fields);
await params.set_SYS_GLOBAL_OBJ_WIDGET_INFO({
stripe_card_id: response.data,
});
params.run_widgetCallbackEvent();
return response;
}
export async function stripe_create_customer(fields, params) {
fields.method = params.method;
const response = await params.call_plugin_api(params.plugin_name, fields);
await params.set_SYS_GLOBAL_OBJ_WIDGET_INFO({
stripe_customer_id: response.data.id,
});
params.run_widgetCallbackEvent();
return response;
}
export async function stripe_update_customer(fields, params) {
fields.method = params.method;
const response = await params.call_plugin_api(params.plugin_name, fields);
await params.set_SYS_GLOBAL_OBJ_WIDGET_INFO({
stripe_customer_id: response.data.id,
});
params.run_widgetCallbackEvent();
return response;
}
export async function stripe_create_portal(fields, params) {
fields.method = params.method;
const response = await params.call_plugin_api(params.plugin_name, fields);
await params.set_SYS_GLOBAL_OBJ_WIDGET_INFO({
stripe_session_url: response.data.url,
});
params.run_widgetCallbackEvent();
return response;
}
export async function stripe_add_card(fields, params) {
fields.method = params.method;
const response = await params.call_plugin_api(params.plugin_name, fields);
await params.set_SYS_GLOBAL_OBJ_WIDGET_INFO({
stripe_card_id: response.data.id,
stripe_card_brand: response.data.brand,
stripe_card_last4: response.data.last4,
stripe_card_exp_month: response.data.exp_month,
stripe_card_exp_year: response.data.exp_year,
});
params.run_widgetCallbackEvent();
return response;
}