Congratulations, {{ doc.customer or 'Customer' }}!
68 |Use the following code to redeem your gift card:
69 |Valid Upto: {{ doc.valid_upto if doc.valid_upto else 'Not specified' }}
72 |├── .gitignore ├── .gitlab-ci.yml ├── MANIFEST.in ├── README.md ├── getpos-react ├── .eslintrc.cjs ├── .gitignore ├── README.md ├── eslint.config.js ├── index.html ├── package.json ├── proxyOptions.js ├── public │ ├── favicon.ico │ ├── logo192.png │ ├── logo512.png │ ├── manifest.json │ └── robots.txt ├── server.js ├── src │ ├── App.css │ ├── App.jsx │ ├── App.test.jsx │ ├── api │ │ └── index.jsx │ ├── assets │ │ └── images │ │ │ ├── Booking.png │ │ │ ├── Credit.png │ │ │ ├── Delete.png │ │ │ ├── Logo2.png │ │ │ ├── Search-icon.png │ │ │ ├── btn-cross.png │ │ │ ├── btn-tick.png │ │ │ ├── calc-close.png │ │ │ ├── card.png │ │ │ ├── cash.png │ │ │ ├── cross.png │ │ │ ├── drop-arrow.png │ │ │ ├── email.png │ │ │ ├── empty-cart.png │ │ │ ├── icon-card.png │ │ │ ├── icon-cash.png │ │ │ ├── icon-changePwd.svg │ │ │ ├── icon-customer.svg │ │ │ ├── icon-edit.png │ │ │ ├── icon-finance.svg │ │ │ ├── icon-home.svg │ │ │ ├── icon-logout.svg │ │ │ ├── icon-order.svg │ │ │ ├── icon-profile.svg │ │ │ ├── icon-rightArrow.png │ │ │ ├── icon-search.png │ │ │ ├── logo.png │ │ │ ├── logout.png │ │ │ ├── no-img.png │ │ │ ├── no-profile-img.png │ │ │ ├── oldlogo.svg │ │ │ ├── print.png │ │ │ ├── profile-image.png │ │ │ └── white_logo.png │ ├── axiosInstance.jsx │ ├── common │ │ └── CartContext.jsx │ ├── components │ │ ├── Addcustomer.jsx │ │ ├── BasicInfo.jsx │ │ ├── Cart.jsx │ │ ├── CashPaymentPopup.jsx │ │ ├── ChangePassword.jsx │ │ ├── CloseShiftScreen.jsx │ │ ├── Finance.jsx │ │ ├── Footer.jsx │ │ ├── Header.jsx │ │ ├── LandingPage.jsx │ │ ├── Layout.jsx │ │ ├── LoginScreen.jsx │ │ ├── MainScreen.jsx │ │ ├── OpenShiftContext.jsx │ │ ├── OpenShiftScreen.jsx │ │ ├── OrderBox.jsx │ │ ├── OrderDetailModal.jsx │ │ ├── PrintFormateOfOrder.jsx │ │ ├── PrivateRoute.jsx │ │ ├── ProductCard.jsx │ │ ├── ProductCatalog.jsx │ │ ├── ProductPopup.jsx │ │ ├── PromoCodePopup.jsx │ │ ├── ReservationPopup.jsx │ │ ├── Sidebar.jsx │ │ ├── TableAvailability.jsx │ │ ├── ThemeSettingContext.jsx │ │ ├── barcode.jsx │ │ ├── debounce.jsx │ │ ├── getLocation.jsx │ │ ├── pagination.jsx │ │ └── style.css │ ├── hooks │ │ └── useIsSmallScreen.jsx │ ├── index.css │ ├── logo.svg │ ├── main.jsx │ ├── modules │ │ └── LandingPage │ │ │ └── index.jsx │ ├── pages │ │ ├── CustomerPage.jsx │ │ ├── HomePage.jsx │ │ ├── LoginPage.jsx │ │ ├── OrderPage.jsx │ │ └── ProfilePage.jsx │ ├── reportWebVitals.jsx │ ├── routes.jsx │ ├── setupTests.jsx │ └── utils │ │ └── imageUtils.jsx ├── vite.config.js └── yarn.lock ├── license.txt ├── nbpos ├── Customization │ ├── assignUser.py │ └── custom_header.py ├── __init__.py ├── config │ ├── __init__.py │ ├── desktop.py │ └── docs.py ├── controllers.py ├── custom_api │ └── v1 │ │ ├── cost_center.py │ │ ├── coupon_and_giftcard.py │ │ ├── customer.py │ │ ├── demo_data.py │ │ ├── getpos_login.py │ │ ├── hub_manager.py │ │ ├── item.py │ │ ├── location.py │ │ ├── master.py │ │ ├── payment.py │ │ ├── pos_profile.py │ │ ├── sales_invoice.py │ │ ├── sales_order.py │ │ ├── status_updater.py │ │ ├── warehouse.py │ │ └── workspace.py ├── fixtures │ ├── custom_docperm.json │ ├── custom_field.json │ ├── print_format.json │ ├── role.json │ └── web_page.json ├── hooks.py ├── modules.txt ├── nbpos │ ├── __init__.py │ ├── after_migrate.py │ ├── custom │ │ ├── account.json │ │ ├── cost_center.json │ │ ├── customer.json │ │ ├── email_template.json │ │ ├── item.json │ │ ├── item_barcode.json │ │ ├── item_group.json │ │ ├── item_tax.json │ │ ├── packed_item.json │ │ ├── party_account.json │ │ ├── pricing_rule.json │ │ ├── sales_invoice.json │ │ ├── sales_invoice_item.json │ │ ├── sales_order.json │ │ ├── sales_order_item.json │ │ └── warehouse.json │ ├── doctype │ │ ├── __init__.py │ │ ├── allergens │ │ │ ├── __init__.py │ │ │ ├── allergens.js │ │ │ ├── allergens.json │ │ │ ├── allergens.py │ │ │ └── test_allergens.py │ │ ├── attribute_items │ │ │ ├── __init__.py │ │ │ ├── attribute_items.json │ │ │ └── attribute_items.py │ │ ├── attributes │ │ │ ├── __init__.py │ │ │ ├── attributes.js │ │ │ ├── attributes.json │ │ │ ├── attributes.py │ │ │ └── test_attributes.py │ │ ├── combo │ │ │ ├── __init__.py │ │ │ ├── combo.js │ │ │ ├── combo.json │ │ │ ├── combo.py │ │ │ └── test_combo.py │ │ ├── combo_item │ │ │ ├── __init__.py │ │ │ ├── combo_item.json │ │ │ └── combo_item.py │ │ ├── gift_card │ │ │ ├── __init__.py │ │ │ ├── gift_card.js │ │ │ ├── gift_card.json │ │ │ ├── gift_card.py │ │ │ └── test_gift_card.py │ │ ├── hub_manager │ │ │ ├── __init__.py │ │ │ ├── hub_manager.js │ │ │ ├── hub_manager.json │ │ │ ├── hub_manager.py │ │ │ └── test_hub_manager.py │ │ ├── hub_manager_detail │ │ │ ├── __init__.py │ │ │ ├── hub_manager_detail.json │ │ │ └── hub_manager_detail.py │ │ ├── item_allergens │ │ │ ├── __init__.py │ │ │ ├── item_allergens.json │ │ │ └── item_allergens.py │ │ ├── item_group_multiselect │ │ │ ├── __init__.py │ │ │ ├── item_group_multiselect.js │ │ │ ├── item_group_multiselect.json │ │ │ ├── item_group_multiselect.py │ │ │ └── test_item_group_multiselect.py │ │ ├── item_type │ │ │ ├── __init__.py │ │ │ ├── item_type.js │ │ │ ├── item_type.json │ │ │ ├── item_type.py │ │ │ └── test_item_type.py │ │ ├── kitchen_kds │ │ │ ├── __init__.py │ │ │ ├── kitchen_kds.js │ │ │ ├── kitchen_kds.json │ │ │ ├── kitchen_kds.py │ │ │ └── test_kitchen_kds.py │ │ ├── nbpos_setting │ │ │ ├── __init__.py │ │ │ ├── nbpos_setting.js │ │ │ ├── nbpos_setting.json │ │ │ ├── nbpos_setting.py │ │ │ └── test_nbpos_setting.py │ │ ├── platform_settings │ │ │ ├── __init__.py │ │ │ ├── platform_settings.js │ │ │ ├── platform_settings.json │ │ │ ├── platform_settings.py │ │ │ └── test_platform_settings.py │ │ ├── pos_closing_shift │ │ │ ├── __init__.py │ │ │ ├── closing_shift_details.html │ │ │ ├── pos_closing_shift.js │ │ │ ├── pos_closing_shift.json │ │ │ ├── pos_closing_shift.py │ │ │ └── test_pos_closing_shift.py │ │ ├── pos_closing_shift_detail │ │ │ ├── __init__.py │ │ │ ├── pos_closing_shift_detail.json │ │ │ └── pos_closing_shift_detail.py │ │ ├── pos_closing_shift_taxes │ │ │ ├── __init__.py │ │ │ ├── pos_closing_shift_taxes.json │ │ │ └── pos_closing_shift_taxes.py │ │ ├── pos_opening_shift │ │ │ ├── __init__.py │ │ │ ├── pos_opening_shift.js │ │ │ ├── pos_opening_shift.json │ │ │ ├── pos_opening_shift.py │ │ │ ├── pos_opening_shift_list.js │ │ │ └── test_pos_opening_shift.py │ │ ├── pos_opening_shift_detail │ │ │ ├── __init__.py │ │ │ ├── pos_opening_shift_detail.json │ │ │ └── pos_opening_shift_detail.py │ │ ├── pos_terminal │ │ │ ├── __init__.py │ │ │ ├── pos_terminal.js │ │ │ ├── pos_terminal.json │ │ │ ├── pos_terminal.py │ │ │ └── test_pos_terminal.py │ │ ├── privacy_policy │ │ │ ├── __init__.py │ │ │ ├── privacy_policy.js │ │ │ ├── privacy_policy.json │ │ │ ├── privacy_policy.py │ │ │ └── test_privacy_policy.py │ │ ├── privacy_policy_and_terms │ │ │ ├── __init__.py │ │ │ ├── privacy_policy_and_terms.js │ │ │ ├── privacy_policy_and_terms.json │ │ │ ├── privacy_policy_and_terms.py │ │ │ └── test_privacy_policy_and_terms.py │ │ ├── related_item │ │ │ ├── __init__.py │ │ │ ├── related_item.json │ │ │ └── related_item.py │ │ ├── sales_invoice_reference │ │ │ ├── __init__.py │ │ │ ├── sales_invoice_reference.json │ │ │ └── sales_invoice_reference.py │ │ ├── sync_register │ │ │ ├── __init__.py │ │ │ ├── sync_register.js │ │ │ ├── sync_register.json │ │ │ ├── sync_register.py │ │ │ └── test_sync_register.py │ │ ├── theme_settings │ │ │ ├── __init__.py │ │ │ ├── test_theme_settings.py │ │ │ ├── theme_settings.js │ │ │ ├── theme_settings.json │ │ │ └── theme_settings.py │ │ ├── ward │ │ │ ├── __init__.py │ │ │ ├── test_ward.py │ │ │ ├── ward.js │ │ │ ├── ward.json │ │ │ └── ward.py │ │ ├── ward_detail │ │ │ ├── __init__.py │ │ │ ├── ward_detail.json │ │ │ └── ward_detail.py │ │ └── web_theme_settings │ │ │ ├── __init__.py │ │ │ ├── test_web_theme_settings.py │ │ │ ├── web_theme_settings.js │ │ │ ├── web_theme_settings.json │ │ │ └── web_theme_settings.py │ ├── hooks │ │ ├── __init__.py │ │ ├── cost_center.py │ │ ├── customer.py │ │ ├── global_defaults.py │ │ ├── item.py │ │ ├── item_group.py │ │ ├── item_price.py │ │ ├── pricing_rule.py │ │ ├── sales_invoice.py │ │ ├── sales_order.py │ │ ├── version.py │ │ └── warehouse.py │ ├── report │ │ ├── __init__.py │ │ └── x_and_z_report │ │ │ ├── __init__.py │ │ │ ├── x_and_z_report.js │ │ │ ├── x_and_z_report.json │ │ │ └── x_and_z_report.py │ ├── schedulers │ │ ├── expired_gift_card_settlement.py │ │ └── opencart_integration.py │ └── workspace │ │ └── getpos │ │ └── getpos.json ├── overrides │ ├── get_delivery_note.py │ ├── sales_invoice.py │ └── verification.py ├── patches.txt ├── patches │ ├── delete_fields.py │ └── setup_dummy_data.py ├── public │ ├── getpos-react │ │ ├── assets │ │ │ ├── empty-cart-4sut5lKX.png │ │ │ ├── favicon-Cp4CXsEh.ico │ │ │ ├── index-DrXFW2WB.js │ │ │ ├── index-SwKm2W5L.css │ │ │ ├── logo-B5zZg7br.png │ │ │ └── no-img-jQRv5CPY.png │ │ ├── favicon.ico │ │ ├── index.html │ │ ├── logo192.png │ │ ├── logo512.png │ │ ├── manifest.json │ │ └── robots.txt │ ├── images │ │ ├── Group 282.svg │ │ ├── Group 283.svg │ │ ├── Group 786.svg │ │ ├── Group 796.svg │ │ ├── Icon awesome-users.png │ │ ├── Path 6183.png │ │ ├── User Circle.svg │ │ ├── app_icon.ico │ │ ├── bootle.jpeg │ │ ├── done.svg │ │ ├── icons8-done.svg │ │ ├── logo1.png │ │ └── no_image.png │ ├── js │ │ ├── doctype_js │ │ │ ├── account.js │ │ │ ├── cost_center.js │ │ │ ├── customer.js │ │ │ ├── email_template.js │ │ │ ├── item.js │ │ │ ├── pricing_rule.js │ │ │ ├── sales_order.js │ │ │ └── warehouse.js │ │ └── nbpos.js │ └── node_modules ├── setupWiz.py ├── templates │ ├── __init__.py │ ├── includes │ │ └── login │ │ │ └── login.js │ └── pages │ │ ├── __init__.py │ │ ├── credit_note_email.html │ │ ├── gift_card_template.html │ │ └── sales_invoice_email.html └── www │ ├── __init__.py │ └── getpos-react.html ├── node_modules ├── .vite │ └── deps │ │ ├── _metadata.json │ │ └── package.json └── .yarn-integrity ├── package.json ├── requirements.txt ├── setup.py └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | *.pyc 3 | *.egg-info 4 | *.swp 5 | tags 6 | agribora/docs/current -------------------------------------------------------------------------------- /.gitlab-ci.yml: -------------------------------------------------------------------------------- 1 | # You can override the included template(s) by including variable overrides 2 | # SAST customization: https://docs.gitlab.com/ee/user/application_security/sast/#customizing-the-sast-settings 3 | # Secret Detection customization: https://docs.gitlab.com/ee/user/application_security/secret_detection/#customizing-settings 4 | # Dependency Scanning customization: https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#customizing-the-dependency-scanning-settings 5 | # Note that environment variables can be set in several places 6 | # See https://docs.gitlab.com/ee/ci/variables/#cicd-variable-precedence 7 | stages: 8 | - test 9 | sast: 10 | stage: test 11 | include: 12 | - template: Security/SAST.gitlab-ci.yml 13 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include MANIFEST.in 2 | include requirements.txt 3 | include *.json 4 | include *.md 5 | include *.py 6 | include *.txt 7 | recursive-include nbpos *.css 8 | recursive-include nbpos *.csv 9 | recursive-include nbpos *.html 10 | recursive-include nbpos *.ico 11 | recursive-include nbpos *.js 12 | recursive-include nbpos *.json 13 | recursive-include nbpos *.md 14 | recursive-include nbpos *.png 15 | recursive-include nbpos *.py 16 | recursive-include nbpos *.svg 17 | recursive-include nbpos *.txt 18 | recursive-exclude nbpos *.pyc 19 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |
{error}
60 | ) : ( 61 |Hub Manager
64 | {/*{profileInfo.hub_manager}
65 |{profileInfo.mobile_no || "N/A"}
*/} 66 |{profileInfo.email}
67 |{error}
35 | ) : ( 36 |{profileInfo.balance}
39 |No products available
67 | )} 68 |Use the following code to redeem your gift card:
69 |Valid Upto: {{ doc.valid_upto if doc.valid_upto else 'Not specified' }}
72 |