@fctc/interface-logic 4.7.7 → 4.7.9

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/hooks.d.mts CHANGED
@@ -821,6 +821,10 @@ declare const useCreateOrder: () => _tanstack_react_query.UseMutationResult<[num
821
821
  partner_id: number | boolean;
822
822
  }, unknown>;
823
823
 
824
+ declare const useAddCategory: () => _tanstack_react_query.UseMutationResult<[number, string][] | null, Error, {
825
+ name: string;
826
+ }, unknown>;
827
+
824
828
  declare const useAddProductToOrder: () => _tanstack_react_query.UseMutationResult<[number][] | null, Error, {
825
829
  order_id: number;
826
830
  product_id: number;
@@ -866,4 +870,21 @@ declare const useDeleteOrderLine: () => _tanstack_react_query.UseMutationResult<
866
870
  line_id: number;
867
871
  }, unknown>;
868
872
 
869
- export { useAddEntity, useAddFloor, useAddProductToOrder, useAddTable, useButton, useChangeOrderPreparationState, useChangeStatus, useCheckPayment, useCompleteCurrentStage, useCreateEInvoice, useCreateEntity, useCreateOrder, useCreatePosConfig, useCreateSession, useDelete, useDeleteComment, useDeleteEntity, useDeleteFloor, useDeleteOrder, useDeleteOrderLine, useDeleteTable, useDuplicateRecord, useExecuteImport, useExportExcel, useForgotPassword, useForgotPasswordSSO, useGenSerialNumber, useGeneratePaymentQrInfo, useGet2FAMethods, useGetASession, useGetAccessByCode, useGetActionDetail, useGetAll, useGetCalendar, useGetCity, useGetComment, useGetCompanyInfo, useGetConversionRate, useGetCountry, useGetCurrency, useGetCurrentCompany, useGetCurrentUser, useGetDataChart, useGetDetail, useGetExternalTabs, useGetFieldExport, useGetFieldOnChange, useGetFileExcel, useGetFormView, useGetGroups, useGetImage, useGetList, useGetListCompany, useGetListData, useGetListMyBankAccount, useGetMenu, useGetNotifications, useGetOrderLine, useGetPartnerTitle, useGetPinCode, useGetPos, useGetPreparationDisplayData, useGetPrintReport, useGetProGressBar, useGetProductImage, useGetProfile, useGetProvider, useGetResequence, useGetSelection, useGetTenantMapping, useGetThreadData, useGetThreadMessages, useGetToken, useGetUser, useGetVersion, useGetView, useGetWard, useGrantAccess, useHandleCloseSession, useHandleClosingDetailSession, useHandleClosingSession, useIsValidToken, useLoadAction, useLoadDataPosSession, useLoadMessage, useLoginCredential, useLoginSocial, useLoginSupa, useLogout, useManageOnChange, useManageSession, useModel, useOdooDataTransform, useOnChangeForm, useParsePreview, usePrint, useProcessOrder, useReadGroup, useRemoveRow, useRemoveTotpSetup, useRequestSetupTotp, useResetPassword, useResetPasswordSSO, useRunAction, useSave, useSavePinCode, useSearchJournal, useSendComment, useSettingsWebRead2fa, useSignInSSO, useSwitchLocale, useUpdateClosedSession, useUpdateEntity, useUpdateFloor, useUpdateOrder, useUpdateOrderLine, useUpdateOrderStatus, useUpdateOrderTotalAmount, useUpdatePassword, useUpdateTable, useUploadFile, useUploadFileExcel, useUploadIdFile, useUploadImage, useValidateActionToken, useVerify2FA, useVerifyTotp };
873
+ declare const useAddProduct: () => _tanstack_react_query.UseMutationResult<[number, string][] | null, Error, {
874
+ name: string;
875
+ product_tmpl_id?: number;
876
+ product_template_variant_value_ids?: number[];
877
+ combo_ids?: number[];
878
+ categ_id?: number;
879
+ pos_categ_ids?: number[];
880
+ display_name?: string;
881
+ default_code?: string;
882
+ description_sale?: string;
883
+ lst_price?: number;
884
+ standard_price?: number;
885
+ barcode?: string;
886
+ image_url?: string;
887
+ active?: boolean;
888
+ }, unknown>;
889
+
890
+ export { useAddCategory, useAddEntity, useAddFloor, useAddProduct, useAddProductToOrder, useAddTable, useButton, useChangeOrderPreparationState, useChangeStatus, useCheckPayment, useCompleteCurrentStage, useCreateEInvoice, useCreateEntity, useCreateOrder, useCreatePosConfig, useCreateSession, useDelete, useDeleteComment, useDeleteEntity, useDeleteFloor, useDeleteOrder, useDeleteOrderLine, useDeleteTable, useDuplicateRecord, useExecuteImport, useExportExcel, useForgotPassword, useForgotPasswordSSO, useGenSerialNumber, useGeneratePaymentQrInfo, useGet2FAMethods, useGetASession, useGetAccessByCode, useGetActionDetail, useGetAll, useGetCalendar, useGetCity, useGetComment, useGetCompanyInfo, useGetConversionRate, useGetCountry, useGetCurrency, useGetCurrentCompany, useGetCurrentUser, useGetDataChart, useGetDetail, useGetExternalTabs, useGetFieldExport, useGetFieldOnChange, useGetFileExcel, useGetFormView, useGetGroups, useGetImage, useGetList, useGetListCompany, useGetListData, useGetListMyBankAccount, useGetMenu, useGetNotifications, useGetOrderLine, useGetPartnerTitle, useGetPinCode, useGetPos, useGetPreparationDisplayData, useGetPrintReport, useGetProGressBar, useGetProductImage, useGetProfile, useGetProvider, useGetResequence, useGetSelection, useGetTenantMapping, useGetThreadData, useGetThreadMessages, useGetToken, useGetUser, useGetVersion, useGetView, useGetWard, useGrantAccess, useHandleCloseSession, useHandleClosingDetailSession, useHandleClosingSession, useIsValidToken, useLoadAction, useLoadDataPosSession, useLoadMessage, useLoginCredential, useLoginSocial, useLoginSupa, useLogout, useManageOnChange, useManageSession, useModel, useOdooDataTransform, useOnChangeForm, useParsePreview, usePrint, useProcessOrder, useReadGroup, useRemoveRow, useRemoveTotpSetup, useRequestSetupTotp, useResetPassword, useResetPasswordSSO, useRunAction, useSave, useSavePinCode, useSearchJournal, useSendComment, useSettingsWebRead2fa, useSignInSSO, useSwitchLocale, useUpdateClosedSession, useUpdateEntity, useUpdateFloor, useUpdateOrder, useUpdateOrderLine, useUpdateOrderStatus, useUpdateOrderTotalAmount, useUpdatePassword, useUpdateTable, useUploadFile, useUploadFileExcel, useUploadIdFile, useUploadImage, useValidateActionToken, useVerify2FA, useVerifyTotp };
package/dist/hooks.d.ts CHANGED
@@ -821,6 +821,10 @@ declare const useCreateOrder: () => _tanstack_react_query.UseMutationResult<[num
821
821
  partner_id: number | boolean;
822
822
  }, unknown>;
823
823
 
824
+ declare const useAddCategory: () => _tanstack_react_query.UseMutationResult<[number, string][] | null, Error, {
825
+ name: string;
826
+ }, unknown>;
827
+
824
828
  declare const useAddProductToOrder: () => _tanstack_react_query.UseMutationResult<[number][] | null, Error, {
825
829
  order_id: number;
826
830
  product_id: number;
@@ -866,4 +870,21 @@ declare const useDeleteOrderLine: () => _tanstack_react_query.UseMutationResult<
866
870
  line_id: number;
867
871
  }, unknown>;
868
872
 
869
- export { useAddEntity, useAddFloor, useAddProductToOrder, useAddTable, useButton, useChangeOrderPreparationState, useChangeStatus, useCheckPayment, useCompleteCurrentStage, useCreateEInvoice, useCreateEntity, useCreateOrder, useCreatePosConfig, useCreateSession, useDelete, useDeleteComment, useDeleteEntity, useDeleteFloor, useDeleteOrder, useDeleteOrderLine, useDeleteTable, useDuplicateRecord, useExecuteImport, useExportExcel, useForgotPassword, useForgotPasswordSSO, useGenSerialNumber, useGeneratePaymentQrInfo, useGet2FAMethods, useGetASession, useGetAccessByCode, useGetActionDetail, useGetAll, useGetCalendar, useGetCity, useGetComment, useGetCompanyInfo, useGetConversionRate, useGetCountry, useGetCurrency, useGetCurrentCompany, useGetCurrentUser, useGetDataChart, useGetDetail, useGetExternalTabs, useGetFieldExport, useGetFieldOnChange, useGetFileExcel, useGetFormView, useGetGroups, useGetImage, useGetList, useGetListCompany, useGetListData, useGetListMyBankAccount, useGetMenu, useGetNotifications, useGetOrderLine, useGetPartnerTitle, useGetPinCode, useGetPos, useGetPreparationDisplayData, useGetPrintReport, useGetProGressBar, useGetProductImage, useGetProfile, useGetProvider, useGetResequence, useGetSelection, useGetTenantMapping, useGetThreadData, useGetThreadMessages, useGetToken, useGetUser, useGetVersion, useGetView, useGetWard, useGrantAccess, useHandleCloseSession, useHandleClosingDetailSession, useHandleClosingSession, useIsValidToken, useLoadAction, useLoadDataPosSession, useLoadMessage, useLoginCredential, useLoginSocial, useLoginSupa, useLogout, useManageOnChange, useManageSession, useModel, useOdooDataTransform, useOnChangeForm, useParsePreview, usePrint, useProcessOrder, useReadGroup, useRemoveRow, useRemoveTotpSetup, useRequestSetupTotp, useResetPassword, useResetPasswordSSO, useRunAction, useSave, useSavePinCode, useSearchJournal, useSendComment, useSettingsWebRead2fa, useSignInSSO, useSwitchLocale, useUpdateClosedSession, useUpdateEntity, useUpdateFloor, useUpdateOrder, useUpdateOrderLine, useUpdateOrderStatus, useUpdateOrderTotalAmount, useUpdatePassword, useUpdateTable, useUploadFile, useUploadFileExcel, useUploadIdFile, useUploadImage, useValidateActionToken, useVerify2FA, useVerifyTotp };
873
+ declare const useAddProduct: () => _tanstack_react_query.UseMutationResult<[number, string][] | null, Error, {
874
+ name: string;
875
+ product_tmpl_id?: number;
876
+ product_template_variant_value_ids?: number[];
877
+ combo_ids?: number[];
878
+ categ_id?: number;
879
+ pos_categ_ids?: number[];
880
+ display_name?: string;
881
+ default_code?: string;
882
+ description_sale?: string;
883
+ lst_price?: number;
884
+ standard_price?: number;
885
+ barcode?: string;
886
+ image_url?: string;
887
+ active?: boolean;
888
+ }, unknown>;
889
+
890
+ export { useAddCategory, useAddEntity, useAddFloor, useAddProduct, useAddProductToOrder, useAddTable, useButton, useChangeOrderPreparationState, useChangeStatus, useCheckPayment, useCompleteCurrentStage, useCreateEInvoice, useCreateEntity, useCreateOrder, useCreatePosConfig, useCreateSession, useDelete, useDeleteComment, useDeleteEntity, useDeleteFloor, useDeleteOrder, useDeleteOrderLine, useDeleteTable, useDuplicateRecord, useExecuteImport, useExportExcel, useForgotPassword, useForgotPasswordSSO, useGenSerialNumber, useGeneratePaymentQrInfo, useGet2FAMethods, useGetASession, useGetAccessByCode, useGetActionDetail, useGetAll, useGetCalendar, useGetCity, useGetComment, useGetCompanyInfo, useGetConversionRate, useGetCountry, useGetCurrency, useGetCurrentCompany, useGetCurrentUser, useGetDataChart, useGetDetail, useGetExternalTabs, useGetFieldExport, useGetFieldOnChange, useGetFileExcel, useGetFormView, useGetGroups, useGetImage, useGetList, useGetListCompany, useGetListData, useGetListMyBankAccount, useGetMenu, useGetNotifications, useGetOrderLine, useGetPartnerTitle, useGetPinCode, useGetPos, useGetPreparationDisplayData, useGetPrintReport, useGetProGressBar, useGetProductImage, useGetProfile, useGetProvider, useGetResequence, useGetSelection, useGetTenantMapping, useGetThreadData, useGetThreadMessages, useGetToken, useGetUser, useGetVersion, useGetView, useGetWard, useGrantAccess, useHandleCloseSession, useHandleClosingDetailSession, useHandleClosingSession, useIsValidToken, useLoadAction, useLoadDataPosSession, useLoadMessage, useLoginCredential, useLoginSocial, useLoginSupa, useLogout, useManageOnChange, useManageSession, useModel, useOdooDataTransform, useOnChangeForm, useParsePreview, usePrint, useProcessOrder, useReadGroup, useRemoveRow, useRemoveTotpSetup, useRequestSetupTotp, useResetPassword, useResetPasswordSSO, useRunAction, useSave, useSavePinCode, useSearchJournal, useSendComment, useSettingsWebRead2fa, useSignInSSO, useSwitchLocale, useUpdateClosedSession, useUpdateEntity, useUpdateFloor, useUpdateOrder, useUpdateOrderLine, useUpdateOrderStatus, useUpdateOrderTotalAmount, useUpdatePassword, useUpdateTable, useUploadFile, useUploadFileExcel, useUploadIdFile, useUploadImage, useValidateActionToken, useVerify2FA, useVerifyTotp };
package/dist/hooks.js CHANGED
@@ -30,8 +30,10 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
30
30
  // src/hooks.ts
31
31
  var hooks_exports = {};
32
32
  __export(hooks_exports, {
33
+ useAddCategory: () => use_add_category_default,
33
34
  useAddEntity: () => use_add_entity_default,
34
35
  useAddFloor: () => use_add_floor_default,
36
+ useAddProduct: () => use_add_product_default,
35
37
  useAddProductToOrder: () => use_add_product_to_order_default,
36
38
  useAddTable: () => use_add_table_default,
37
39
  useButton: () => use_button_default,
@@ -6895,6 +6897,84 @@ var deleteOrderLineSupabaseService = () => {
6895
6897
  };
6896
6898
  };
6897
6899
 
6900
+ // src/services/pos-service/supabase/add-category.ts
6901
+ var import_react61 = require("react");
6902
+ var addCategorySupabaseService = () => {
6903
+ const supabase = useSupabaseOptional();
6904
+ const addCategorySupabase = (0, import_react61.useCallback)(
6905
+ async (values) => {
6906
+ if (!supabase) {
6907
+ console.error("Supabase client not initialized");
6908
+ return null;
6909
+ }
6910
+ try {
6911
+ const { data, error } = await supabase.from("pos_categories" /* POS_CATEGORIES */).insert({
6912
+ name: values.name
6913
+ }).select("id, name").single();
6914
+ if (error) {
6915
+ console.error("Error adding Category:", error);
6916
+ return null;
6917
+ }
6918
+ return [[data.id, data.name]];
6919
+ } catch (error) {
6920
+ console.error("Error adding Category:", error);
6921
+ return null;
6922
+ }
6923
+ },
6924
+ [supabase]
6925
+ );
6926
+ return {
6927
+ addCategorySupabase
6928
+ };
6929
+ };
6930
+
6931
+ // src/services/pos-service/supabase/add-product.ts
6932
+ var import_react62 = require("react");
6933
+ var addProductSupabaseService = () => {
6934
+ const supabase = useSupabaseOptional();
6935
+ const addProductSupabase = (0, import_react62.useCallback)(
6936
+ async (values) => {
6937
+ if (!supabase) {
6938
+ console.error("Supabase client not initialized");
6939
+ return null;
6940
+ }
6941
+ const insertData = Object.fromEntries(
6942
+ Object.entries({
6943
+ name: values.name,
6944
+ product_tmpl_id: values.product_tmpl_id,
6945
+ product_template_variant_value_ids: values.product_template_variant_value_ids ?? [],
6946
+ combo_ids: values.combo_ids ?? [],
6947
+ categ_id: values.categ_id,
6948
+ pos_categ_ids: values.pos_categ_ids ?? [],
6949
+ display_name: values.display_name || values.name,
6950
+ default_code: values.default_code ?? "",
6951
+ description_sale: values.description_sale ?? "",
6952
+ lst_price: values.lst_price ?? 0,
6953
+ standard_price: values.standard_price ?? 0,
6954
+ barcode: values.barcode ?? "",
6955
+ image_url: values.image_url ?? "",
6956
+ active: values.active ?? true
6957
+ }).filter(([_, v]) => v !== void 0)
6958
+ );
6959
+ try {
6960
+ const { data, error } = await supabase.from("products" /* PRODUCTS */).insert(insertData).select("id, name").single();
6961
+ if (error) {
6962
+ console.error("Error adding product:", error);
6963
+ return null;
6964
+ }
6965
+ return [[data.id, data.name]];
6966
+ } catch (error) {
6967
+ console.error("Error adding product:", error);
6968
+ return null;
6969
+ }
6970
+ },
6971
+ [supabase]
6972
+ );
6973
+ return {
6974
+ addProductSupabase
6975
+ };
6976
+ };
6977
+
6898
6978
  // src/services/pos-service/index.ts
6899
6979
  var serviceFactories = [
6900
6980
  addEntityService,
@@ -6933,13 +7013,15 @@ var serviceFactories = [
6933
7013
  updateTableSupabaseService,
6934
7014
  deleteFloorSupabaseService,
6935
7015
  deleteTableSupabaseService,
7016
+ addCategorySupabaseService,
6936
7017
  createOrderSupabaseService,
6937
7018
  addProductToOrderSupabaseService,
6938
7019
  updateOrderTotalAmountSupabaseService,
6939
7020
  updateOrderLineSupabaseService,
6940
7021
  updateOrderSupabaseService,
6941
7022
  deleteOrderSupabaseService,
6942
- deleteOrderLineSupabaseService
7023
+ deleteOrderLineSupabaseService,
7024
+ addProductSupabaseService
6943
7025
  ];
6944
7026
  var usePosService = () => {
6945
7027
  const { env } = useEnv();
@@ -7835,9 +7917,9 @@ var BaseModel = class {
7835
7917
  };
7836
7918
 
7837
7919
  // src/hooks/model/use-model.ts
7838
- var import_react61 = require("react");
7920
+ var import_react63 = require("react");
7839
7921
  var useModel = () => {
7840
- const initModel = (0, import_react61.useCallback)((modelData) => {
7922
+ const initModel = (0, import_react63.useCallback)((modelData) => {
7841
7923
  switch (modelData?.name) {
7842
7924
  default:
7843
7925
  return new BaseModel(modelData);
@@ -9021,69 +9103,91 @@ var useCreateOrder = () => {
9021
9103
  };
9022
9104
  var use_create_order_default = useCreateOrder;
9023
9105
 
9024
- // src/hooks/pos/supabase/use-add-product-to-order.ts
9106
+ // src/hooks/pos/supabase/use-add-category.ts
9025
9107
  var import_react_query122 = require("@tanstack/react-query");
9108
+ var useAddCategory = () => {
9109
+ const { addCategorySupabase } = addCategorySupabaseService();
9110
+ return (0, import_react_query122.useMutation)({
9111
+ mutationFn: addCategorySupabase
9112
+ });
9113
+ };
9114
+ var use_add_category_default = useAddCategory;
9115
+
9116
+ // src/hooks/pos/supabase/use-add-product-to-order.ts
9117
+ var import_react_query123 = require("@tanstack/react-query");
9026
9118
  var useAddProductToOrder = () => {
9027
9119
  const { addProductToOrderSupabase } = addProductToOrderSupabaseService();
9028
- return (0, import_react_query122.useMutation)({
9120
+ return (0, import_react_query123.useMutation)({
9029
9121
  mutationFn: addProductToOrderSupabase
9030
9122
  });
9031
9123
  };
9032
9124
  var use_add_product_to_order_default = useAddProductToOrder;
9033
9125
 
9034
9126
  // src/hooks/pos/supabase/use-update-order-total-amount.ts
9035
- var import_react_query123 = require("@tanstack/react-query");
9127
+ var import_react_query124 = require("@tanstack/react-query");
9036
9128
  var useUpdateOrderTotalAmount = () => {
9037
9129
  const { updateOrderTotalAmountSupabase } = updateOrderTotalAmountSupabaseService();
9038
- return (0, import_react_query123.useMutation)({
9130
+ return (0, import_react_query124.useMutation)({
9039
9131
  mutationFn: updateOrderTotalAmountSupabase
9040
9132
  });
9041
9133
  };
9042
9134
  var use_update_order_total_amount_default = useUpdateOrderTotalAmount;
9043
9135
 
9044
9136
  // src/hooks/pos/supabase/use-update-order-line.ts
9045
- var import_react_query124 = require("@tanstack/react-query");
9137
+ var import_react_query125 = require("@tanstack/react-query");
9046
9138
  var useUpdateOrderLine = () => {
9047
9139
  const { updateOrderLineSupabase } = updateOrderLineSupabaseService();
9048
- return (0, import_react_query124.useMutation)({
9140
+ return (0, import_react_query125.useMutation)({
9049
9141
  mutationFn: updateOrderLineSupabase
9050
9142
  });
9051
9143
  };
9052
9144
  var use_update_order_line_default = useUpdateOrderLine;
9053
9145
 
9054
9146
  // src/hooks/pos/supabase/use-update-order.ts
9055
- var import_react_query125 = require("@tanstack/react-query");
9147
+ var import_react_query126 = require("@tanstack/react-query");
9056
9148
  var useUpdateOrder = () => {
9057
9149
  const { updateOrderSupabase } = updateOrderSupabaseService();
9058
- return (0, import_react_query125.useMutation)({
9150
+ return (0, import_react_query126.useMutation)({
9059
9151
  mutationFn: updateOrderSupabase
9060
9152
  });
9061
9153
  };
9062
9154
  var use_update_order_default = useUpdateOrder;
9063
9155
 
9064
9156
  // src/hooks/pos/supabase/use-delete-order.ts
9065
- var import_react_query126 = require("@tanstack/react-query");
9157
+ var import_react_query127 = require("@tanstack/react-query");
9066
9158
  var useDeleteOrder = () => {
9067
9159
  const { deleteOrderSupabase } = deleteOrderSupabaseService();
9068
- return (0, import_react_query126.useMutation)({
9160
+ return (0, import_react_query127.useMutation)({
9069
9161
  mutationFn: deleteOrderSupabase
9070
9162
  });
9071
9163
  };
9072
9164
  var use_delete_order_default = useDeleteOrder;
9073
9165
 
9074
9166
  // src/hooks/pos/supabase/use-delete-order-line.ts
9075
- var import_react_query127 = require("@tanstack/react-query");
9167
+ var import_react_query128 = require("@tanstack/react-query");
9076
9168
  var useDeleteOrderLine = () => {
9077
9169
  const { deleteOrderLineSupabase } = deleteOrderLineSupabaseService();
9078
- return (0, import_react_query127.useMutation)({
9170
+ return (0, import_react_query128.useMutation)({
9079
9171
  mutationFn: deleteOrderLineSupabase
9080
9172
  });
9081
9173
  };
9082
9174
  var use_delete_order_line_default = useDeleteOrderLine;
9175
+
9176
+ // src/hooks/pos/supabase/use-add-product.ts
9177
+ var import_react_query129 = require("@tanstack/react-query");
9178
+ var useAddProduct = () => {
9179
+ const { addProductSupabase } = addProductSupabaseService();
9180
+ return (0, import_react_query129.useMutation)({
9181
+ mutationFn: addProductSupabase
9182
+ });
9183
+ };
9184
+ var use_add_product_default = useAddProduct;
9083
9185
  // Annotate the CommonJS export names for ESM import in node:
9084
9186
  0 && (module.exports = {
9187
+ useAddCategory,
9085
9188
  useAddEntity,
9086
9189
  useAddFloor,
9190
+ useAddProduct,
9087
9191
  useAddProductToOrder,
9088
9192
  useAddTable,
9089
9193
  useButton,
package/dist/hooks.mjs CHANGED
@@ -6733,6 +6733,84 @@ var deleteOrderLineSupabaseService = () => {
6733
6733
  };
6734
6734
  };
6735
6735
 
6736
+ // src/services/pos-service/supabase/add-category.ts
6737
+ import { useCallback as useCallback55 } from "react";
6738
+ var addCategorySupabaseService = () => {
6739
+ const supabase = useSupabaseOptional();
6740
+ const addCategorySupabase = useCallback55(
6741
+ async (values) => {
6742
+ if (!supabase) {
6743
+ console.error("Supabase client not initialized");
6744
+ return null;
6745
+ }
6746
+ try {
6747
+ const { data, error } = await supabase.from("pos_categories" /* POS_CATEGORIES */).insert({
6748
+ name: values.name
6749
+ }).select("id, name").single();
6750
+ if (error) {
6751
+ console.error("Error adding Category:", error);
6752
+ return null;
6753
+ }
6754
+ return [[data.id, data.name]];
6755
+ } catch (error) {
6756
+ console.error("Error adding Category:", error);
6757
+ return null;
6758
+ }
6759
+ },
6760
+ [supabase]
6761
+ );
6762
+ return {
6763
+ addCategorySupabase
6764
+ };
6765
+ };
6766
+
6767
+ // src/services/pos-service/supabase/add-product.ts
6768
+ import { useCallback as useCallback56 } from "react";
6769
+ var addProductSupabaseService = () => {
6770
+ const supabase = useSupabaseOptional();
6771
+ const addProductSupabase = useCallback56(
6772
+ async (values) => {
6773
+ if (!supabase) {
6774
+ console.error("Supabase client not initialized");
6775
+ return null;
6776
+ }
6777
+ const insertData = Object.fromEntries(
6778
+ Object.entries({
6779
+ name: values.name,
6780
+ product_tmpl_id: values.product_tmpl_id,
6781
+ product_template_variant_value_ids: values.product_template_variant_value_ids ?? [],
6782
+ combo_ids: values.combo_ids ?? [],
6783
+ categ_id: values.categ_id,
6784
+ pos_categ_ids: values.pos_categ_ids ?? [],
6785
+ display_name: values.display_name || values.name,
6786
+ default_code: values.default_code ?? "",
6787
+ description_sale: values.description_sale ?? "",
6788
+ lst_price: values.lst_price ?? 0,
6789
+ standard_price: values.standard_price ?? 0,
6790
+ barcode: values.barcode ?? "",
6791
+ image_url: values.image_url ?? "",
6792
+ active: values.active ?? true
6793
+ }).filter(([_, v]) => v !== void 0)
6794
+ );
6795
+ try {
6796
+ const { data, error } = await supabase.from("products" /* PRODUCTS */).insert(insertData).select("id, name").single();
6797
+ if (error) {
6798
+ console.error("Error adding product:", error);
6799
+ return null;
6800
+ }
6801
+ return [[data.id, data.name]];
6802
+ } catch (error) {
6803
+ console.error("Error adding product:", error);
6804
+ return null;
6805
+ }
6806
+ },
6807
+ [supabase]
6808
+ );
6809
+ return {
6810
+ addProductSupabase
6811
+ };
6812
+ };
6813
+
6736
6814
  // src/services/pos-service/index.ts
6737
6815
  var serviceFactories = [
6738
6816
  addEntityService,
@@ -6771,13 +6849,15 @@ var serviceFactories = [
6771
6849
  updateTableSupabaseService,
6772
6850
  deleteFloorSupabaseService,
6773
6851
  deleteTableSupabaseService,
6852
+ addCategorySupabaseService,
6774
6853
  createOrderSupabaseService,
6775
6854
  addProductToOrderSupabaseService,
6776
6855
  updateOrderTotalAmountSupabaseService,
6777
6856
  updateOrderLineSupabaseService,
6778
6857
  updateOrderSupabaseService,
6779
6858
  deleteOrderSupabaseService,
6780
- deleteOrderLineSupabaseService
6859
+ deleteOrderLineSupabaseService,
6860
+ addProductSupabaseService
6781
6861
  ];
6782
6862
  var usePosService = () => {
6783
6863
  const { env } = useEnv();
@@ -7673,9 +7753,9 @@ var BaseModel = class {
7673
7753
  };
7674
7754
 
7675
7755
  // src/hooks/model/use-model.ts
7676
- import { useCallback as useCallback55 } from "react";
7756
+ import { useCallback as useCallback57 } from "react";
7677
7757
  var useModel = () => {
7678
- const initModel = useCallback55((modelData) => {
7758
+ const initModel = useCallback57((modelData) => {
7679
7759
  switch (modelData?.name) {
7680
7760
  default:
7681
7761
  return new BaseModel(modelData);
@@ -8859,68 +8939,90 @@ var useCreateOrder = () => {
8859
8939
  };
8860
8940
  var use_create_order_default = useCreateOrder;
8861
8941
 
8862
- // src/hooks/pos/supabase/use-add-product-to-order.ts
8942
+ // src/hooks/pos/supabase/use-add-category.ts
8863
8943
  import { useMutation as useMutation95 } from "@tanstack/react-query";
8944
+ var useAddCategory = () => {
8945
+ const { addCategorySupabase } = addCategorySupabaseService();
8946
+ return useMutation95({
8947
+ mutationFn: addCategorySupabase
8948
+ });
8949
+ };
8950
+ var use_add_category_default = useAddCategory;
8951
+
8952
+ // src/hooks/pos/supabase/use-add-product-to-order.ts
8953
+ import { useMutation as useMutation96 } from "@tanstack/react-query";
8864
8954
  var useAddProductToOrder = () => {
8865
8955
  const { addProductToOrderSupabase } = addProductToOrderSupabaseService();
8866
- return useMutation95({
8956
+ return useMutation96({
8867
8957
  mutationFn: addProductToOrderSupabase
8868
8958
  });
8869
8959
  };
8870
8960
  var use_add_product_to_order_default = useAddProductToOrder;
8871
8961
 
8872
8962
  // src/hooks/pos/supabase/use-update-order-total-amount.ts
8873
- import { useMutation as useMutation96 } from "@tanstack/react-query";
8963
+ import { useMutation as useMutation97 } from "@tanstack/react-query";
8874
8964
  var useUpdateOrderTotalAmount = () => {
8875
8965
  const { updateOrderTotalAmountSupabase } = updateOrderTotalAmountSupabaseService();
8876
- return useMutation96({
8966
+ return useMutation97({
8877
8967
  mutationFn: updateOrderTotalAmountSupabase
8878
8968
  });
8879
8969
  };
8880
8970
  var use_update_order_total_amount_default = useUpdateOrderTotalAmount;
8881
8971
 
8882
8972
  // src/hooks/pos/supabase/use-update-order-line.ts
8883
- import { useMutation as useMutation97 } from "@tanstack/react-query";
8973
+ import { useMutation as useMutation98 } from "@tanstack/react-query";
8884
8974
  var useUpdateOrderLine = () => {
8885
8975
  const { updateOrderLineSupabase } = updateOrderLineSupabaseService();
8886
- return useMutation97({
8976
+ return useMutation98({
8887
8977
  mutationFn: updateOrderLineSupabase
8888
8978
  });
8889
8979
  };
8890
8980
  var use_update_order_line_default = useUpdateOrderLine;
8891
8981
 
8892
8982
  // src/hooks/pos/supabase/use-update-order.ts
8893
- import { useMutation as useMutation98 } from "@tanstack/react-query";
8983
+ import { useMutation as useMutation99 } from "@tanstack/react-query";
8894
8984
  var useUpdateOrder = () => {
8895
8985
  const { updateOrderSupabase } = updateOrderSupabaseService();
8896
- return useMutation98({
8986
+ return useMutation99({
8897
8987
  mutationFn: updateOrderSupabase
8898
8988
  });
8899
8989
  };
8900
8990
  var use_update_order_default = useUpdateOrder;
8901
8991
 
8902
8992
  // src/hooks/pos/supabase/use-delete-order.ts
8903
- import { useMutation as useMutation99 } from "@tanstack/react-query";
8993
+ import { useMutation as useMutation100 } from "@tanstack/react-query";
8904
8994
  var useDeleteOrder = () => {
8905
8995
  const { deleteOrderSupabase } = deleteOrderSupabaseService();
8906
- return useMutation99({
8996
+ return useMutation100({
8907
8997
  mutationFn: deleteOrderSupabase
8908
8998
  });
8909
8999
  };
8910
9000
  var use_delete_order_default = useDeleteOrder;
8911
9001
 
8912
9002
  // src/hooks/pos/supabase/use-delete-order-line.ts
8913
- import { useMutation as useMutation100 } from "@tanstack/react-query";
9003
+ import { useMutation as useMutation101 } from "@tanstack/react-query";
8914
9004
  var useDeleteOrderLine = () => {
8915
9005
  const { deleteOrderLineSupabase } = deleteOrderLineSupabaseService();
8916
- return useMutation100({
9006
+ return useMutation101({
8917
9007
  mutationFn: deleteOrderLineSupabase
8918
9008
  });
8919
9009
  };
8920
9010
  var use_delete_order_line_default = useDeleteOrderLine;
9011
+
9012
+ // src/hooks/pos/supabase/use-add-product.ts
9013
+ import { useMutation as useMutation102 } from "@tanstack/react-query";
9014
+ var useAddProduct = () => {
9015
+ const { addProductSupabase } = addProductSupabaseService();
9016
+ return useMutation102({
9017
+ mutationFn: addProductSupabase
9018
+ });
9019
+ };
9020
+ var use_add_product_default = useAddProduct;
8921
9021
  export {
9022
+ use_add_category_default as useAddCategory,
8922
9023
  use_add_entity_default as useAddEntity,
8923
9024
  use_add_floor_default as useAddFloor,
9025
+ use_add_product_default as useAddProduct,
8924
9026
  use_add_product_to_order_default as useAddProductToOrder,
8925
9027
  use_add_table_default as useAddTable,
8926
9028
  use_button_default as useButton,
@@ -1,7 +1,7 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import React$1, { ReactNode } from 'react';
3
3
  import { L as LocalStorageUtilsType } from './local-storage-BPvoMGYJ.mjs';
4
- import { useForgotPassword, useForgotPasswordSSO, useGetProvider, useIsValidToken, useLoginCredential, useLoginSocial, useResetPassword, useResetPasswordSSO, useUpdatePassword, useLogout, useGetAccessByCode, useValidateActionToken, useGetCompanyInfo, useGetCurrentCompany, useGetListCompany, useExecuteImport, useExportExcel, useGetFieldExport, useGetFileExcel, useParsePreview, useUploadFileExcel, useUploadIdFile, useChangeStatus, useDeleteComment, useGetComment, useGetFormView, useGetImage, useSendComment, useUploadImage, useDelete, useGetAll, useGetConversionRate, useGetCurrency, useGetDetail, useGetFieldOnChange, useGetListMyBankAccount, useModel, useOdooDataTransform, useOnChangeForm, useSave, useGetProfile, useGetUser, useSwitchLocale, useButton, useDuplicateRecord, useGet2FAMethods, useGetActionDetail, useGetCalendar, useGetGroups, useGetListData, useGetMenu, useGetPrintReport, useGetProGressBar, useGetResequence, useGetSelection, useGetView, useLoadAction, useLoadMessage, usePrint, useRemoveRow, useRunAction, useSignInSSO, useVerify2FA, useGrantAccess, useRemoveTotpSetup, useRequestSetupTotp, useSettingsWebRead2fa, useVerifyTotp, useUploadFile, useCreateEntity, useGetASession, useCreateSession, useDeleteEntity, useGetList, useGetPos, useHandleClosingSession, useManageSession, useUpdateClosedSession, useUpdateEntity, useLoadDataPosSession, useManageOnChange, useGenSerialNumber, useGetOrderLine, useGetProductImage, useAddEntity, useCheckPayment, useHandleCloseSession, useHandleClosingDetailSession, useCreatePosConfig, useSearchJournal, useGetTenantMapping, useGetToken, useGetPreparationDisplayData, useUpdateOrderStatus, useGetThreadData, useGetThreadMessages, useGetExternalTabs, useProcessOrder, useGeneratePaymentQrInfo, useSavePinCode, useGetPinCode, useReadGroup, useGetNotifications, useGetDataChart, useGetVersion, useCreateEInvoice, useGetCurrentUser, useGetWard, useGetCity, useGetCountry, useGetPartnerTitle, useChangeOrderPreparationState, useCompleteCurrentStage, useLoginSupa, useAddFloor, useAddTable, useDeleteFloor, useDeleteTable, useUpdateFloor, useUpdateTable, useCreateOrder, useAddProductToOrder, useUpdateOrderTotalAmount, useUpdateOrderLine, useUpdateOrder, useDeleteOrder, useDeleteOrderLine } from './hooks.mjs';
4
+ import { useForgotPassword, useForgotPasswordSSO, useGetProvider, useIsValidToken, useLoginCredential, useLoginSocial, useResetPassword, useResetPasswordSSO, useUpdatePassword, useLogout, useGetAccessByCode, useValidateActionToken, useGetCompanyInfo, useGetCurrentCompany, useGetListCompany, useExecuteImport, useExportExcel, useGetFieldExport, useGetFileExcel, useParsePreview, useUploadFileExcel, useUploadIdFile, useChangeStatus, useDeleteComment, useGetComment, useGetFormView, useGetImage, useSendComment, useUploadImage, useDelete, useGetAll, useGetConversionRate, useGetCurrency, useGetDetail, useGetFieldOnChange, useGetListMyBankAccount, useModel, useOdooDataTransform, useOnChangeForm, useSave, useGetProfile, useGetUser, useSwitchLocale, useButton, useDuplicateRecord, useGet2FAMethods, useGetActionDetail, useGetCalendar, useGetGroups, useGetListData, useGetMenu, useGetPrintReport, useGetProGressBar, useGetResequence, useGetSelection, useGetView, useLoadAction, useLoadMessage, usePrint, useRemoveRow, useRunAction, useSignInSSO, useVerify2FA, useGrantAccess, useRemoveTotpSetup, useRequestSetupTotp, useSettingsWebRead2fa, useVerifyTotp, useUploadFile, useCreateEntity, useGetASession, useCreateSession, useDeleteEntity, useGetList, useGetPos, useHandleClosingSession, useManageSession, useUpdateClosedSession, useUpdateEntity, useLoadDataPosSession, useManageOnChange, useGenSerialNumber, useGetOrderLine, useGetProductImage, useAddEntity, useCheckPayment, useHandleCloseSession, useHandleClosingDetailSession, useCreatePosConfig, useSearchJournal, useGetTenantMapping, useGetToken, useGetPreparationDisplayData, useUpdateOrderStatus, useGetThreadData, useGetThreadMessages, useGetExternalTabs, useProcessOrder, useGeneratePaymentQrInfo, useSavePinCode, useGetPinCode, useReadGroup, useGetNotifications, useGetDataChart, useGetVersion, useCreateEInvoice, useGetCurrentUser, useGetWard, useGetCity, useGetCountry, useGetPartnerTitle, useChangeOrderPreparationState, useCompleteCurrentStage, useLoginSupa, useAddFloor, useAddTable, useDeleteFloor, useDeleteTable, useUpdateFloor, useUpdateTable, useCreateOrder, useAddCategory, useAddProductToOrder, useUpdateOrderTotalAmount, useUpdateOrderLine, useUpdateOrder, useDeleteOrder, useDeleteOrderLine, useAddProduct } from './hooks.mjs';
5
5
  import { SupabaseClient } from '@supabase/supabase-js';
6
6
  import '@tanstack/react-query';
7
7
  import './view-type-CfcWWR0w.mjs';
@@ -191,12 +191,14 @@ interface ServiceContextType {
191
191
  useUpdateFloor: typeof useUpdateFloor;
192
192
  useUpdateTable: typeof useUpdateTable;
193
193
  useCreateOrder: typeof useCreateOrder;
194
+ useAddCategory: typeof useAddCategory;
194
195
  useAddProductToOrder: typeof useAddProductToOrder;
195
196
  useUpdateOrderTotalAmount: typeof useUpdateOrderTotalAmount;
196
197
  useUpdateOrderLine: typeof useUpdateOrderLine;
197
198
  useUpdateOrder: typeof useUpdateOrder;
198
199
  useDeleteOrder: typeof useDeleteOrder;
199
200
  useDeleteOrderLine: typeof useDeleteOrderLine;
201
+ useAddProduct: typeof useAddProduct;
200
202
  }
201
203
  declare const ServiceProvider: ({ children, }: {
202
204
  children: React.ReactNode;
@@ -1,7 +1,7 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import React$1, { ReactNode } from 'react';
3
3
  import { L as LocalStorageUtilsType } from './local-storage-BPvoMGYJ.js';
4
- import { useForgotPassword, useForgotPasswordSSO, useGetProvider, useIsValidToken, useLoginCredential, useLoginSocial, useResetPassword, useResetPasswordSSO, useUpdatePassword, useLogout, useGetAccessByCode, useValidateActionToken, useGetCompanyInfo, useGetCurrentCompany, useGetListCompany, useExecuteImport, useExportExcel, useGetFieldExport, useGetFileExcel, useParsePreview, useUploadFileExcel, useUploadIdFile, useChangeStatus, useDeleteComment, useGetComment, useGetFormView, useGetImage, useSendComment, useUploadImage, useDelete, useGetAll, useGetConversionRate, useGetCurrency, useGetDetail, useGetFieldOnChange, useGetListMyBankAccount, useModel, useOdooDataTransform, useOnChangeForm, useSave, useGetProfile, useGetUser, useSwitchLocale, useButton, useDuplicateRecord, useGet2FAMethods, useGetActionDetail, useGetCalendar, useGetGroups, useGetListData, useGetMenu, useGetPrintReport, useGetProGressBar, useGetResequence, useGetSelection, useGetView, useLoadAction, useLoadMessage, usePrint, useRemoveRow, useRunAction, useSignInSSO, useVerify2FA, useGrantAccess, useRemoveTotpSetup, useRequestSetupTotp, useSettingsWebRead2fa, useVerifyTotp, useUploadFile, useCreateEntity, useGetASession, useCreateSession, useDeleteEntity, useGetList, useGetPos, useHandleClosingSession, useManageSession, useUpdateClosedSession, useUpdateEntity, useLoadDataPosSession, useManageOnChange, useGenSerialNumber, useGetOrderLine, useGetProductImage, useAddEntity, useCheckPayment, useHandleCloseSession, useHandleClosingDetailSession, useCreatePosConfig, useSearchJournal, useGetTenantMapping, useGetToken, useGetPreparationDisplayData, useUpdateOrderStatus, useGetThreadData, useGetThreadMessages, useGetExternalTabs, useProcessOrder, useGeneratePaymentQrInfo, useSavePinCode, useGetPinCode, useReadGroup, useGetNotifications, useGetDataChart, useGetVersion, useCreateEInvoice, useGetCurrentUser, useGetWard, useGetCity, useGetCountry, useGetPartnerTitle, useChangeOrderPreparationState, useCompleteCurrentStage, useLoginSupa, useAddFloor, useAddTable, useDeleteFloor, useDeleteTable, useUpdateFloor, useUpdateTable, useCreateOrder, useAddProductToOrder, useUpdateOrderTotalAmount, useUpdateOrderLine, useUpdateOrder, useDeleteOrder, useDeleteOrderLine } from './hooks.js';
4
+ import { useForgotPassword, useForgotPasswordSSO, useGetProvider, useIsValidToken, useLoginCredential, useLoginSocial, useResetPassword, useResetPasswordSSO, useUpdatePassword, useLogout, useGetAccessByCode, useValidateActionToken, useGetCompanyInfo, useGetCurrentCompany, useGetListCompany, useExecuteImport, useExportExcel, useGetFieldExport, useGetFileExcel, useParsePreview, useUploadFileExcel, useUploadIdFile, useChangeStatus, useDeleteComment, useGetComment, useGetFormView, useGetImage, useSendComment, useUploadImage, useDelete, useGetAll, useGetConversionRate, useGetCurrency, useGetDetail, useGetFieldOnChange, useGetListMyBankAccount, useModel, useOdooDataTransform, useOnChangeForm, useSave, useGetProfile, useGetUser, useSwitchLocale, useButton, useDuplicateRecord, useGet2FAMethods, useGetActionDetail, useGetCalendar, useGetGroups, useGetListData, useGetMenu, useGetPrintReport, useGetProGressBar, useGetResequence, useGetSelection, useGetView, useLoadAction, useLoadMessage, usePrint, useRemoveRow, useRunAction, useSignInSSO, useVerify2FA, useGrantAccess, useRemoveTotpSetup, useRequestSetupTotp, useSettingsWebRead2fa, useVerifyTotp, useUploadFile, useCreateEntity, useGetASession, useCreateSession, useDeleteEntity, useGetList, useGetPos, useHandleClosingSession, useManageSession, useUpdateClosedSession, useUpdateEntity, useLoadDataPosSession, useManageOnChange, useGenSerialNumber, useGetOrderLine, useGetProductImage, useAddEntity, useCheckPayment, useHandleCloseSession, useHandleClosingDetailSession, useCreatePosConfig, useSearchJournal, useGetTenantMapping, useGetToken, useGetPreparationDisplayData, useUpdateOrderStatus, useGetThreadData, useGetThreadMessages, useGetExternalTabs, useProcessOrder, useGeneratePaymentQrInfo, useSavePinCode, useGetPinCode, useReadGroup, useGetNotifications, useGetDataChart, useGetVersion, useCreateEInvoice, useGetCurrentUser, useGetWard, useGetCity, useGetCountry, useGetPartnerTitle, useChangeOrderPreparationState, useCompleteCurrentStage, useLoginSupa, useAddFloor, useAddTable, useDeleteFloor, useDeleteTable, useUpdateFloor, useUpdateTable, useCreateOrder, useAddCategory, useAddProductToOrder, useUpdateOrderTotalAmount, useUpdateOrderLine, useUpdateOrder, useDeleteOrder, useDeleteOrderLine, useAddProduct } from './hooks.js';
5
5
  import { SupabaseClient } from '@supabase/supabase-js';
6
6
  import '@tanstack/react-query';
7
7
  import './view-type-CfcWWR0w.js';
@@ -191,12 +191,14 @@ interface ServiceContextType {
191
191
  useUpdateFloor: typeof useUpdateFloor;
192
192
  useUpdateTable: typeof useUpdateTable;
193
193
  useCreateOrder: typeof useCreateOrder;
194
+ useAddCategory: typeof useAddCategory;
194
195
  useAddProductToOrder: typeof useAddProductToOrder;
195
196
  useUpdateOrderTotalAmount: typeof useUpdateOrderTotalAmount;
196
197
  useUpdateOrderLine: typeof useUpdateOrderLine;
197
198
  useUpdateOrder: typeof useUpdateOrder;
198
199
  useDeleteOrder: typeof useDeleteOrder;
199
200
  useDeleteOrderLine: typeof useDeleteOrderLine;
201
+ useAddProduct: typeof useAddProduct;
200
202
  }
201
203
  declare const ServiceProvider: ({ children, }: {
202
204
  children: React.ReactNode;