diff --git a/src/components/SelectOperatingCountriesModal.vue b/src/components/SelectOperatingCountriesModal.vue new file mode 100644 index 0000000..5f5e249 --- /dev/null +++ b/src/components/SelectOperatingCountriesModal.vue @@ -0,0 +1,65 @@ + + + + + \ No newline at end of file diff --git a/src/locales/en.json b/src/locales/en.json index 598f678..f8e6a84 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -1,24 +1,109 @@ { + "Add": "Add", + "Add configurations": "Add configurations", "App": "App", + "Approval": "Approval", + "Approve on import": "Approve on import", + "Auto approve orders": "Auto approve orders", + "Auto cancellations days": "Auto cancellations days", + "Auto order cancellation": "Auto order cancellation", + "Brokering": "Brokering", "Built:": "Built: {builtTime}", + "Cancel": "Cancel", + "Cancel order before fulfillment": "Cancel order before fulfillment", + "Cancellations": "Cancellations", "Change": "Change", + "Choosing a product identifier allows you to view products with your preferred identifiers.": "Choosing a product identifier allows you to view products with your preferred identifiers.", "Click the backdrop to dismiss.": "Click the backdrop to dismiss.", + "Company name": "Company name", + "Configurations": "Configurations", + "Configure cancellation threshold for unfulfilled orders based on a specified number of days.": "Configure cancellation threshold for unfulfilled orders based on a specified number of days.", + "Configure inventory computation for pre-sell items based on inventory channels and pre-sell queues.": "Configure inventory computation for pre-sell items based on inventory channels and pre-sell queues.", + "Configure when no further order information is needed prior to order approval.": "Configure when no further order information is needed prior to order approval.", + "Confirm": "Confirm", + "Control what your customers are allowed to edit on their own when they are editing their order on Re-route Fulfillment.": "Control what your customers are allowed to edit on their own when they are editing their order on Re-route Fulfillment.", + "Create a new product store": "Create a new product store", + "Create deadline days": "Create deadline days", + "Create new product store": "Create new product store", + "Create new tag": "Create new tag", + "Create product store": "Create product store", + "Delivery address": "Delivery address", + "Delivery method": "Delivery method", + "Display current physical quantity expected at locations while inventory counting.": "Display current physical quantity expected at locations while inventory counting.", + "Edit": "Edit", "Fetching time zones": "Fetching time zones", + "Fulfillment": "Fulfillment", + "Global identifier": "Global identifier", "Go to OMS": "Go to OMS", + "Hold pre-order physical inventory": "Hold pre-order physical inventory", + "ID": "ID", + "Id prefix": "Id prefix", + "Identifier": "Identifier", + "Import": "Import", + "Inventory": "Inventory", + "Inventory reservation": "Inventory reservation", + "Inventory view": "Inventory view", "Login": "Login", "Logging in...": "Logging in...", "Logout": "Logout", + "Manage configurations": "Manage configurations", + "Minimum shipment threshold": "Minimum shipment threshold", + "Name": "Name", + "No product store found.": "No product store found.", "No time zone found": "No time zone found", + "Notifications": "Nofifications", "OMS": "OMS", "OMS instance": "OMS instance", + "Operating countries": "Operating countries", + "Operating in": "Operating in", + "Order": "Order", + "Order brokering": "Order brokering", + "Order edit permissions": "Order edit permissions", + "Order splitting": "Order splitting", + "Orders tagged with this tag will undergo line item check for fulfillment facility selection.": "Orders tagged with this tag will undergo line item check for fulfillment facility selection.", + "Partial order rejection": "Partial order rejection", "Password": "Password", + "Pick up location": "Pick up location", + "Pre-order computation": "Pre-order computation", + "Pre-order group": "Pre-order group", + "Preferred identifier": "Preferred identifier", + "Preselected facility tag": "Preselected facility tag", + "Primary identifier": "Primary identifier", + "Product": "Product", + "Product Identifier": "Product Identifier", + "Product store": "Product store", + "Product store name": "Product store name", + "Product store represents a brand in OMS": "Product store represents a brand in OMS", + "Returns": "Returns", + "Re-route fulfillment": "Re-route fulfillment", + "Routing": "Routing", + "Save billing information": "Save billing information", + "Search country": "Search country", "Search time zones": "Search time zones", + "Seat Allocation": "Seat Allocation", + "Secondary identifier": "Secondary identifier", + "Select operating countries": "Select operating countries", "Select time zone": "Select time zone", + "Send notification to Shopify": "Send notification to Shopify", "Settings": "Settings", + "Setup product store": "Setup product store", + "Shipment method": "Shipment method", + "Shipping facility tag": "Shipping facility tag", + "Show systemic inventory": "Show systemic inventory", + "Specify any preferred prefix to be added to internal order IDs.": "Specify any preferred prefix to be added to internal order IDs.", + "Specify the number of days permitted for creating returns for in-store.": "Specify the number of days permitted for creating returns for in-store.", + "Specify whether you reject a BOPIS order partially when any order item inventory is insufficient at the store.": "Specify whether you reject a BOPIS order partially when any order item inventory is insufficient at the store.", + "Split orders into multiple groups and fulfill them from different fulfillment centers.": "Split orders into multiple groups and fulfill them from different fulfillment centers.", + "Store billing information associated with orders in OMS.": "Store billing information associated with orders in OMS.", + "Store pickup": "Store pickup", + "Tag will hold the preselected fulfillment facility value.": "Tag will hold the preselected fulfillment facility value.", + "The identifier used globally throughout the business operations.": "The identifier used globally throughout the business operations.", + "The name of the parent organization that owns all brands deployed on the OMS": "The name of the parent organization that owns all brands deployed on the OMS", "The timezone you select is used to ensure automations you schedule are always accurate to the time you select.": "The timezone you select is used to ensure automations you schedule are always accurate to the time you select.", "This is the name of the OMS you are connected to right now. Make sure that you are connected to the right instance before proceeding.": "This is the name of the OMS you are connected to right now. Make sure that you are connected to the right instance before proceeding.", "Time zone updated successfully": "Time zone updated successfully", "Timezone": "Timezone", + "Update tracking information upon order shipment in Shopify.": "Update tracking information upon order shipment in Shopify.", "Username": "Username", "Version:": "Version: {appVersion}" } \ No newline at end of file diff --git a/src/router/index.ts b/src/router/index.ts index 7a2c434..320631c 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -3,6 +3,9 @@ import { RouteRecordRaw } from "vue-router"; import Login from "@/views/Login.vue" import store from "@/store" import Tabs from "@/views/Tabs.vue" +import CreateProductStore from "@/views/CreateProductStore.vue"; +import AddConfigurations from "@/views/AddConfigurations.vue"; +import ProductStoreDetails from "@/views/ProductStoreDetails.vue"; const authGuard = (to: any, from: any, next: any) => { if (store.getters["user/isAuthenticated"]) { @@ -31,15 +34,37 @@ const routes: Array = [ children: [ { path: "", - redirect: "/settings" + redirect: "/product-store" + }, + { + path: "product-store", + name: "ProductStore", + component: () => import("@/views/ProductStore.vue") }, { path: "settings", + name: "Settings", component: () => import("@/views/Settings.vue") } ], beforeEnter: authGuard }, + { + path: "/create-product-store", + name: "CreateProductStore", + component: CreateProductStore + }, + { + path: "/add-configurations", + name: "AddConfigurations", + component: AddConfigurations + }, + { + path: "/product-store-details/:productStoreId", + name: "ProductStoreDetails", + component: ProductStoreDetails, + props: true + }, { path: "/login", name: "Login", diff --git a/src/theme/variables.css b/src/theme/variables.css index c4dafed..3a60b78 100644 --- a/src/theme/variables.css +++ b/src/theme/variables.css @@ -245,6 +245,11 @@ http://ionicframework.com/docs/theming/ */ } } +body { + /** Border variable **/ + --border-medium: 1px solid var(--ion-color-medium); +} + .empty-state { max-width: 100%; display: flex; diff --git a/src/views/AddConfigurations.vue b/src/views/AddConfigurations.vue new file mode 100644 index 0000000..6272da0 --- /dev/null +++ b/src/views/AddConfigurations.vue @@ -0,0 +1,73 @@ + + + + + \ No newline at end of file diff --git a/src/views/CreateProductStore.vue b/src/views/CreateProductStore.vue new file mode 100644 index 0000000..834bf25 --- /dev/null +++ b/src/views/CreateProductStore.vue @@ -0,0 +1,80 @@ + + + + + \ No newline at end of file diff --git a/src/views/ProductStore.vue b/src/views/ProductStore.vue new file mode 100644 index 0000000..7bbc8d6 --- /dev/null +++ b/src/views/ProductStore.vue @@ -0,0 +1,71 @@ + + + + + \ No newline at end of file diff --git a/src/views/ProductStoreDetails.vue b/src/views/ProductStoreDetails.vue new file mode 100644 index 0000000..0cfd279 --- /dev/null +++ b/src/views/ProductStoreDetails.vue @@ -0,0 +1,410 @@ + + + + + diff --git a/src/views/Tabs.vue b/src/views/Tabs.vue index 95e568e..cbbdb82 100644 --- a/src/views/Tabs.vue +++ b/src/views/Tabs.vue @@ -3,6 +3,10 @@ + + + {{ translate("Product store") }} + {{ translate("Settings") }} @@ -15,13 +19,13 @@