const require_runtime = require("../../_virtual/_rolldown/runtime.js");
const require_objectSpread2 = require("../../_virtual/_@oxc-project_runtime@0.122.0/helpers/objectSpread2.js");
let dayjs = require("dayjs");
dayjs = require_runtime.__toESM(dayjs);
let _pisell_utils = require("@pisell/utils");
const defaultState = {
	amountSymbol: "$",
	apis: {
		getClients: () => {
			return [];
		},
		getServices: () => {
			return [];
		},
		getResources: () => {
			return [];
		},
		getProducts: () => {
			return [];
		},
		getPets: () => {
			return [];
		},
		getForms: () => {
			return [];
		},
		getFormData: () => {
			return [];
		},
		getContactsInfo: () => {
			return null;
		}
	},
	client: {
		showModal: false,
		clients: [],
		value: {
			id: 0,
			nickname: "Select a customer"
		}
	},
	date: {
		value: (0, dayjs.default)(),
		end_date: (0, dayjs.default)().add(1, "days")
	},
	service: {
		addModal: false,
		editModal: false,
		services: [],
		resources: [],
		value: [],
		cacheItem: null
	},
	pet: {
		showModal: false,
		pets: [],
		value: [],
		formData: null,
		originValue: null
	},
	addons: {
		showModal: false,
		value: [],
		productList: [],
		originData: []
	},
	form: {
		value: {},
		forms: []
	},
	notes: {
		orderNote: "",
		internalNotes: []
	},
	setGlobalState: () => {},
	bookingConfig: { basic: {
		service_time: {
			unit: "minute",
			value: 3
		},
		appointment_mode: "multiple_appointments_mode",
		appointment_subject: {
			type: "form",
			form_id: 247,
			form_record_id: 246
		}
	} },
	bookingDetail: null,
	action: (props) => {
		console.log(props);
	},
	bookingId: 0,
	activeCartId: [0]
};
const { Provider, Context } = (0, _pisell_utils.miniRedux)({
	namespace: "state",
	state: defaultState,
	reducers: { setState(state, payload) {
		return require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, state), payload);
	} }
});
//#endregion
exports.Context = Context;
exports.Provider = Provider;
